{
    "name": "@xenon-device-management/xenon",
    "version": "1.20.5",
    "description": "Xenon - Intelligent Mobile Infrastructure. A self-healing device orchestration platform for Appium.",
    "main": "./lib/src/index.js",
    "exports": {
        ".": "./lib/src/index.js",
        "./schema.json": "./schema.json",
        "./package.json": "./package.json"
    },
    "scripts": {
        "postinstall": "node scripts/generate-prisma.js",
        "build": "node scripts/generate-prisma.js && tsc -b && npm run build:copy",
        "build:all": "npm run build:xenon && npm run build",
        "build:copy": "rm -rf lib/public && mkdir -p lib/src && cp -R src/public lib/ && cp -R src/generated lib/src/ && cp schema.json lib/ && mkdir -p lib/src/device-managers/android/vendor && cp src/device-managers/android/vendor/*.jar lib/src/device-managers/android/vendor/",
        "build:schema": "node scripts/generate-types-from-schema.js",
        "build:xenon": "sh scripts/build-xenon.sh",
        "dev": "npm run db:migrate && npm run build && npm run plugin:reinstall && npm run server",
        "server": "export APPIUM_HOME=/tmp/xenon-home && npx appium server -ka 800 --use-plugins=xenon -pa /wd/hub --plugin-xenon-platform=both --plugin-xenon-enable-dashboard",
        "plugin:install": "appium plugin install --source=local $(pwd)",
        "plugin:reinstall": "export APPIUM_HOME=/tmp/xenon-home && (appium plugin uninstall xenon || exit 0) && npm run plugin:install",
        "test": "mocha",
        "test:all": "NODE_ENV=test mocha \"test/unit/**/*.{spec,test}.{ts,js}\" --plugin-xenon-platform=both",
        "test:e2e": "mocha \"test/e2e/plugin.spec.*\" --timeout 300000",
        "test:e2e:hub": "mocha \"test/e2e/hubnode/*.spec.ts\" --plugin-xenon-platform=both --timeout 300000",
        "test:android": "mocha \"test/integration/androidDevices.spec.ts\"",
        "test:ios": "mocha \"test/integration/ios/*.spec.ts\"",
        "test:coverage": "nyc npm run test",
        "lint": "eslint . --ext .ts,.tsx --fix",
        "format": "prettier --write \"{src,web,test}/**/*.{ts,tsx,json,md}\" --single-quote",
        "db:migrate": "path-exists lib/src/scripts/initialize-database.js && node lib/src/scripts/initialize-database.js || ts-node src/scripts/initialize-database.ts",
        "db:generate": "ts-node src/scripts/generate-database-migration.ts",
        "prepare": "node scripts/generate-prisma.js",
        "prepublishOnly": "npm run build:all"
    },
    "repository": {
        "type": "git",
        "url": "https://github.com/Rabindra184/xenon"
    },
    "contributors": [
        {
            "name": "Rabindra Biswal",
            "email": "rabindrabiswal1@gmail.com"
        }
    ],
    "license": "ISC",
    "bugs": {
        "url": "https://github.com/Rabindra184/xenon/issues"
    },
    "homepage": "https://github.com/Rabindra184/xenon#readme",
    "dependencies": {
        "@anthropic-ai/sdk": "^0.72.1",
        "@appium/base-plugin": "^2.2.22",
        "@appium/types": "^0.14.1",
        "@devicefarmer/adbkit": "^3.2.5",
        "@ffmpeg-installer/ffmpeg": "^1.1.0",
        "@fortawesome/fontawesome-svg-core": "^7.1.0",
        "@fortawesome/free-brands-svg-icons": "^7.1.0",
        "@fortawesome/react-fontawesome": "^3.1.1",
        "@google/generative-ai": "^0.24.1",
        "@opentelemetry/api": "^1.9.0",
        "@opentelemetry/api-logs": "^0.211.0",
        "@opentelemetry/exporter-logs-otlp-http": "^0.211.0",
        "@opentelemetry/exporter-metrics-otlp-http": "^0.211.0",
        "@opentelemetry/exporter-trace-otlp-http": "^0.211.0",
        "@opentelemetry/resources": "^2.5.0",
        "@opentelemetry/sdk-logs": "^0.211.0",
        "@opentelemetry/sdk-metrics": "^2.0.0",
        "@opentelemetry/sdk-node": "^0.211.0",
        "@opentelemetry/semantic-conventions": "^1.39.0",
        "@prisma/client": "^5.4.1",
        "@types/appium-adb": "^9.10.4",
        "@types/express-fileupload": "^1.5.1",
        "@types/node-persist": "^3.1.5",
        "@xmldom/xmldom": "^0.8.10",
        "appium-adb": "^11.0.3",
        "appium-chromedriver": "^5.6.19",
        "appium-ios-device": "^2.7.6",
        "async-lock": "^1.2.8",
        "async-wait-until": "^2.0.12",
        "axios": "^0.27.2",
        "bcrypt": "^5.1.1",
        "cors": "^2.8.5",
        "download": "^8.0.0",
        "express": "^4.17.3",
        "express-fileupload": "^1.5.2",
        "fast-xml-parser": "^5.3.4",
        "fs-extra": "^11.1.1",
        "get-port": "^5.1.1",
        "http-mitm-proxy": "^1.1.0",
        "http-proxy-agent": "7.0.0",
        "http-proxy-middleware": "^3.0.0-beta.1",
        "https-proxy-agent": "7.0.2",
        "ip": "^1.1.8",
        "jose": "^5.10.0",
        "jsonschema": "1.4.1",
        "lodash": "^4.17.21",
        "lokijs": "^1.5.12",
        "mjpeg-proxy": "^0.3.0",
        "node-abort-controller": "^3.1.1",
        "node-cache": "^5.1.2",
        "node-forge": "^1.4.0",
        "node-persist": "^3.1.3",
        "node-schedule": "^2.1.1",
        "node-simctl": "^7.3.13",
        "nodemailer": "^6.10.1",
        "normalize-url": "6.1.0",
        "nyc": "^15.1.0",
        "openai": "^6.17.0",
        "ora": "5.4.1",
        "path-exists-cli": "^2.0.0",
        "prisma": "^5.4.1",
        "ramda": "^0.28.0",
        "reflect-metadata": "^0.1.13",
        "resiliotree": "^1.1.3",
        "semver": "^7.5.4",
        "sharp": "^0.34.5",
        "socket.io": "^4.8.3",
        "socket.io-client": "^4.8.3",
        "swagger-jsdoc": "^6.2.8",
        "swagger-ui-express": "^5.0.1",
        "tcp-port-used": "^1.0.2",
        "tesseract.js": "^7.0.0",
        "typedi": "^0.10.0",
        "unzipper": "^0.12.3",
        "usbmux": "^0.1.0",
        "uuid": "^8.3.2",
        "ws": "^8.21.1",
        "xpath": "^0.0.34",
        "yargs": "^17.7.2",
        "zod": "^4.3.6"
    },
    "overrides": {
        "unzipper": "^0.12.3",
        "usbmux": {
            "plist": {
                "xmldom": "npm:@xmldom/xmldom@^0.8.10"
            }
        }
    },
    "peerDependencies": {
        "appium": "^3.1.1"
    },
    "devDependencies": {
        "@appium/docutils": "^0.4.11",
        "@appium/fake-driver": "^6.0.1",
        "@appium/plugin-test-support": "^1.0.3",
        "@babel/core": "^7.23.9",
        "@babel/eslint-parser": "^7.23.3",
        "@babel/plugin-transform-class-properties": "^7.23.3",
        "@types/async-lock": "1.4.2",
        "@types/bcrypt": "^5.0.2",
        "@types/bluebird": "^3.5.42",
        "@types/chai": "4.3.10",
        "@types/chai-as-promised": "^7.1.8",
        "@types/express": "4.17.21",
        "@types/fs-extra": "^11.0.0",
        "@types/ip": "^1.1.2",
        "@types/js-yaml": "^4.0.9",
        "@types/lodash": "^4.14.202",
        "@types/lokijs": "1.5.14",
        "@types/mocha": "9.1.1",
        "@types/node-forge": "^1.3.14",
        "@types/node-schedule": "1.3.2",
        "@types/nodemailer": "^6.4.23",
        "@types/sinon": "^17.0.2",
        "@types/sinon-chai": "^3.2.12",
        "@types/supertest": "^7.2.0",
        "@types/swagger-jsdoc": "^6.0.4",
        "@types/swagger-ui-express": "^4.1.8",
        "@types/tcp-port-used": "^1.0.4",
        "@types/unzipper": "^0.10.11",
        "@types/uuid": "8.3.4",
        "@types/ws": "^8.18.1",
        "@types/yargs": "17.0.32",
        "@typescript-eslint/eslint-plugin": "5.62.0",
        "@typescript-eslint/parser": "5.62.0",
        "@wdio/types": "^8.24.2",
        "appium": "^3.1.1",
        "appium-uiautomator2-driver": "^5.0.3",
        "appium-xcuitest-driver": "^10.1.2",
        "chai": "^4.3.10",
        "chai-as-promised": "^7.1.1",
        "chai-exclude": "^2.1.0",
        "dotenv": "^16.3.1",
        "eslint": "^8.57.0",
        "eslint-config-prettier": "^9.0.0",
        "eslint-plugin-import": "^2.29.1",
        "eslint-plugin-prettier": "^5.0.0",
        "husky": "7.0.4",
        "js-yaml": "^4.1.0",
        "json-schema-to-typescript": "^15.0.4",
        "lint-staged": "15.0.2",
        "mocha": "^10.2.0",
        "prettier": "^3.0.3",
        "ramda": "^0.29.1",
        "sinon": "^17.0.0",
        "sinon-chai": "^3.7.0",
        "supertest": "^7.2.2",
        "ts-node": "^10.9.1",
        "typescript": "^5.5.4",
        "vite": "^4.5.0",
        "webdriverio": "^8.20.4"
    },
    "appium": {
        "pluginName": "xenon",
        "mainClass": "XenonPlugin",
        "schema": "schema.json"
    },
    "engines": {
        "node": "^14.17.0 || ^16.13.0 || >=18.0.0",
        "npm": ">=8"
    },
    "lint-staged": {
        "src/*.{js,jsx,ts,tsx,json,css,scss,md}": [
            "npm run prettier",
            "git add"
        ]
    },
    "husky": {
        "hooks": {
            "pre-commit": "lint-staged",
            "pre-push": "npm run test"
        }
    },
    "files": [
        "lib",
        "scripts",
        "prisma",
        "schema.json"
    ],
    "typedoc": {
        "entryPoint": "lib/src/index.js"
    }
}
