{
  "name": "@optimizely/optimizely-sdk",
  "version": "6.3.1",
  "description": "JavaScript SDK for Optimizely Feature Experimentation, Optimizely Full Stack (legacy), and Optimizely Rollouts",
  "main": "./dist/index.node.min.js",
  "browser": "./dist/index.browser.es.min.js",
  "react-native": "./dist/index.react_native.min.js",
  "types": "./dist/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "node": {
        "import": "./dist/index.node.es.min.mjs",
        "require": "./dist/index.node.min.js"
      },
      "react-native": {
        "import": "./dist/index.react_native.es.min.js",
        "require": "./dist/index.react_native.min.js"
      },
      "browser": {
        "import": "./dist/index.browser.es.min.js",
        "require": "./dist/index.browser.min.js"
      },
      "default": {
        "import": "./dist/index.node.es.min.mjs",
        "require": "./dist/index.node.min.js"
      }
    },
    "./node": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.node.es.min.mjs",
      "require": "./dist/index.node.min.js"
    },
    "./browser": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.browser.es.min.js",
      "require": "./dist/index.browser.min.js"
    },
    "./react_native": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.react_native.es.min.js",
      "require": "./dist/index.react_native.min.js",
      "default": "./dist/index.react_native.min.js"
    },
    "./universal": {
      "types": "./dist/index.universal.d.ts",
      "import": "./dist/index.universal.es.min.js",
      "require": "./dist/index.universal.min.js"
    },
    "./ua_parser": {
      "types": "./dist/odp/ua_parser/ua_parser.d.ts",
      "import": "./dist/ua_parser.es.min.js",
      "require": "./dist/ua_parser.min.js"
    }
  },
  "scripts": {
    "clean": "rm -rf dist .build",
    "clean:win": "(if exist dist rd /s/q dist) && (if exist .build rd /s/q .build)",
    "lint": "tsc --noEmit && eslint 'lib/**/*.js' 'lib/**/*.ts'",
    "validate-platform-isolation": "./scripts/platform-validator.js --validate",
    "fix-platform-export": "./scripts/platform-validator.js --fix-export",
    "test-isolation-rules": "./scripts/test-validator.js",
    "test-vitest": "vitest run",
    "test-browser": "node ./scripts/run-browser-tests.js",
    "test-browser-local": "USE_LOCAL_BROWSER=true node ./scripts/run-browser-tests.js",
    "test-browser-browserstack": "USE_LOCAL_BROWSER=false node ./scripts/run-browser-tests.js",
    "test-umd": "node ./scripts/run-umd-tests.js",
    "test-umd-local": "USE_LOCAL_BROWSER=true node ./scripts/run-umd-tests.js",
    "test-umd-browserstack": "USE_LOCAL_BROWSER=false node ./scripts/run-umd-tests.js",
    "test-mocha": "TS_NODE_COMPILER_OPTIONS='{\"module\": \"commonjs\" }' mocha -r ts-node/register -r tsconfig-paths/register -r lib/tests/exit_on_unhandled_rejection.js 'lib/**/*.tests.ts' 'lib/**/*.tests.js'",
    "test": "npm run test-mocha && npm run test-vitest",
    "posttest": "npm run lint",
    "test-ci": "npm run test-xbrowser && npm run test-umdbrowser",
    "test-xbrowser": "karma start karma.bs.conf.js --single-run",
    "test-umdbrowser": "npm run build-browser-umd && karma start karma.umd.conf.js --single-run",
    "test-karma-local": "karma start karma.local_chrome.bs.conf.js && npm run build-browser-umd && karma start karma.local_chrome.umd.conf.js",
    "prebuild": "npm run clean",
    "build": "npm run validate-platform-isolation && npm run genmsg && tsc && rollup -c rollup.config.mjs && cp dist/index.browser.d.ts dist/index.d.ts",
    "build:win": "npm run validate-platform-isolation && npm run genmsg && tsc && rollup -c rollup.config.mjs && copy dist\\index.browser.d.ts dist\\index.d.ts",
    "build-browser-umd": "tsc && rollup -c rollup.config.mjs --config-umd",
    "coveralls": "nyc --reporter=lcov npm test",
    "prepare": "npm run build",
    "prepublishOnly": "npm test",
    "genmsg": "jiti message_generator ./lib/message/error_message.ts ./lib/message/log_message.ts",
    "test-typescript": "node ./scripts/run-ts-example.js"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/optimizely/javascript-sdk.git"
  },
  "license": "Apache-2.0",
  "engines": {
    "node": ">=18.0.0"
  },
  "keywords": [
    "optimizely"
  ],
  "bugs": {
    "url": "https://github.com/optimizely/javascript-sdk/issues"
  },
  "homepage": "https://github.com/optimizely/javascript-sdk",
  "dependencies": {
    "decompress-response": "^7.0.0",
    "json-schema": "^0.4.0",
    "murmurhash": "^2.0.1",
    "uuid": "^10.0.0"
  },
  "devDependencies": {
    "@react-native-async-storage/async-storage": "^2",
    "@react-native-community/netinfo": "^11.3.2",
    "@rollup/plugin-alias": "^6.0.0",
    "@rollup/plugin-commonjs": "^29.0.0",
    "@rollup/plugin-node-resolve": "^16.0.3",
    "@rollup/plugin-terser": "^0.4.4",
    "@types/chai": "^4.2.11",
    "@types/mocha": "^5.2.7",
    "@types/nise": "^1.4.0",
    "@types/node": "^18.7.18",
    "@types/ua-parser-js": "^0.7.36",
    "@types/uuid": "^10.0.0",
    "@typescript-eslint/eslint-plugin": "^5.33.0",
    "@typescript-eslint/parser": "^5.33.0",
    "@vitest/browser": "3.2.4",
    "chai": "^4.2.0",
    "coveralls-next": "^5.0.0",
    "eslint": "^8.21.0",
    "eslint-config-prettier": "^6.10.0",
    "eslint-plugin-local-rules": "^3.0.2",
    "eslint-plugin-prettier": "^3.1.2",
    "happy-dom": "^20.0.11",
    "jiti": "^2.4.1",
    "karma": "^6.4.0",
    "karma-browserstack-launcher": "^1.5.1",
    "karma-chai": "^0.1.0",
    "karma-chrome-launcher": "^2.1.1",
    "karma-mocha": "^2.0.1",
    "karma-webpack": "^5.0.1",
    "lodash": "^4.17.11",
    "minimatch": "^9.0.5",
    "mocha": "^10.2.0",
    "mocha-lcov-reporter": "^1.3.0",
    "nise": "^6.1.1",
    "nock": "11.9.1",
    "nyc": "^15.0.1",
    "prettier": "^1.19.1",
    "promise-polyfill": "8.1.0",
    "rollup": "^4.55.1",
    "sinon": "^2.3.1",
    "ts-loader": "^9.3.1",
    "ts-node": "^8.10.2",
    "tsconfig-paths": "^4.2.0",
    "tslib": "^2.8.1",
    "typescript": "^4.7.4",
    "vite": "^6.4.1",
    "vitest": "^3.2.4",
    "webdriverio": "^9.21.0",
    "webpack": "^5.94.0"
  },
  "peerDependencies": {
    "@react-native-async-storage/async-storage": ">=1.0.0 <3.0.0",
    "@react-native-community/netinfo": ">=5.0.0 <12.0.0",
    "fast-text-encoding": "^1.0.6",
    "react-native-get-random-values": "^1.11.0",
    "ua-parser-js": "^1.0.38"
  },
  "peerDependenciesMeta": {
    "@react-native-async-storage/async-storage": {
      "optional": true
    },
    "@react-native-community/netinfo": {
      "optional": true
    },
    "react-native-get-random-values": {
      "optional": true
    },
    "fast-text-encoding": {
      "optional": true
    },
    "ua-parser-js": {
      "optional": true
    }
  },
  "publishConfig": {
    "access": "public"
  },
  "files": [
    "dist/"
  ],
  "nyc": {
    "temp-dir": "coverage/raw"
  }
}
