{
  "name": "iobroker.roborock",
  "version": "0.7.3",
  "description": "roborock",
  "author": {
    "name": "copystring",
    "email": "copystring@gmail.com"
  },
  "homepage": "https://github.com/copystring/ioBroker.roborock",
  "license": "MIT",
  "keywords": [
    "ioBroker",
    "template",
    "Smart Home",
    "home automation",
    "roborock"
  ],
  "repository": {
    "type": "git",
    "url": "https://github.com/copystring/ioBroker.roborock"
  },
  "engines": {
    "node": ">= 22"
  },
  "dependencies": {
    "@iobroker/adapter-core": "^3.3.2",
    "@iobroker/types": "^7.1.2",
    "@napi-rs/canvas": "^1.0.0",
    "axios": "^1.16.1",
    "binary-parser": "^2.3.0",
    "chokidar": "^5.0.0",
    "crc-32": "^1.2.2",
    "d3": "^7.9.0",
    "go2rtc-static": "^1.2.0",
    "jszip": "^3.10.1",
    "mqtt": "^5.15.1",
    "node-forge": "^1.4.0",
    "p-queue": "^9.2.0",
    "ping": "^1.0.0",
    "protobufjs": "^8.0.3",
    "uuid": "^14.0.0",
    "zod": "^4.4.3"
  },
  "devDependencies": {
    "@alcalzone/release-script": "^5.2.0",
    "@alcalzone/release-script-plugin-iobroker": "^5.2.0",
    "@alcalzone/release-script-plugin-license": "^5.2.0",
    "@alcalzone/release-script-plugin-manual-review": "^5.2.0",
    "@eslint/eslintrc": "^3.3.5",
    "@eslint/js": "^10.0.0",
    "@iobroker/adapter-dev": "^1.5.0",
    "@iobroker/eslint-config": "^2.3.4",
    "@iobroker/testing": "^5.2.2",
    "@tsconfig/node22": "^22.0.5",
    "@types/d3": "^7.4.3",
    "@types/node": "^25.8.0",
    "@types/node-forge": "^1.3.14",
    "@types/ping": "^0.4.4",
    "@types/proxyquire": "^1.3.31",
    "@typescript-eslint/eslint-plugin": "^8.59.3",
    "@typescript-eslint/parser": "^8.59.2",
    "@vitest/coverage-v8": "^4.1.6",
    "ajv": "^8.20.0",
    "esbuild": "^0.28.0",
    "eslint": "^10.3.0",
    "eslint-config-prettier": "^10.1.8",
    "eslint-plugin-import": "^2.30.0",
    "eslint-plugin-jsdoc": "^62.9.0",
    "eslint-plugin-prettier": "^5.5.4",
    "eslint-plugin-react": "^7.37.5",
    "eslint-plugin-react-hooks": "^7.1.1",
    "eslint-plugin-sonarjs": "^4.0.3",
    "eslint-plugin-unicorn": "^64.0.0",
    "globals": "^17.6.0",
    "prettier": "^3.8.3",
    "proxyquire": "^2.1.3",
    "rimraf": "^6.1.3",
    "shx": "^0.4.0",
    "strip-json-comments": "^5.0.3",
    "typescript": "^6.0.3",
    "typescript-eslint": "^8.59.3",
    "vitest": "^4.1.6",
    "yaml-lint": "^1.7.0"
  },
  "overrides": {
    "@alcalzone/esbuild-register": {
      "esbuild": "^0.25.12"
    },
    "@alcalzone/esbuild-register@2.5.1-1": {
      "esbuild": "^0.25.12"
    },
    "mocha": {
      "diff": "^8.0.4",
      "serialize-javascript": "^7.0.5"
    },
    "mocha@11.7.5": {
      "diff": "^8.0.4",
      "serialize-javascript": "^7.0.5"
    }
  },
  "main": "src/main.ts",
  "files": [
    "src/",
    "admin{,/!(src)/**}/!(tsconfig|tsconfig.*|.eslintrc).json",
    "admin{,/!(src)/**}/*.{html,css,png,svg,jpg,js}",
    "www/",
    "lib/protocols/",
    "io-package.json",
    "LICENSE"
  ],
  "scripts": {
    "clean": "shx rm -rf www/*.d.ts www/*.tsbuildinfo",
    "build": "npm run clean && npm run build:www && npm run lint && npm run typecheck && npm run docs",
    "build:www": "esbuild src/www/map.ts --bundle --minify --sourcemap --outfile=www/app.js --format=esm",
    "precommit": "npm run build:www && git add www/app.js www/app.js.map && node scripts/updateCommitInfo.js --force-current-date && git add src/lib/commitInfo.ts",
    "watch": "npm run clean && npm run watch:www",
    "watch:www": "esbuild src/www/map.ts --bundle --sourcemap --outfile=www/app.js --format=esm --watch",
    "test:unit": "vitest run",
    "test": "npm run test:unit && npm run test:integration && npm run test:package",
    "test:watch": "vitest",
    "test:coverage": "vitest run --coverage",
    "test:integration": "mocha test/integration.js --exit",
    "test:package": "mocha test/package.js --exit",
    "lint": "node scripts/check-eslint-peer-deps.js && eslint . --fix && eslint . --max-warnings 0 && npm run lint:yaml",
    "lint:yaml": "npx yaml-lint \"**/*.yml\" \"**/*.yaml\" --ignore \"node_modules\" --ignore \".git\"",
    "typecheck": "tsc --noEmit",
    "verify": "npm run lint && npm run typecheck && npm run test",
    "ci:check": "npm run lint && npm run typecheck && npm run test:unit",
    "ci:check:full": "npm ci && npm run lint && npm run typecheck && npm run test:unit",
    "translate": "translate-adapter",
    "watch:all": "node scripts/watch-build.js",
    "docs": "node scripts/generate-docs.js",
    "appplugins:convert": "node scripts/appplugins.js convert bundle",
    "appplugins:extract": "node scripts/appplugins.js extract translations",
    "prepare:appplugin-bundles": "node scripts/prepare_appplugin_bundles.js",
    "extract:appplugin-translations": "node scripts/extract_appplugin_translations.js",
    "copy:protocols": "shx mkdir -p build/lib/protocols && shx cp lib/protocols/*.json build/lib/protocols/",
    "build:git": "npm run clean && npm run copy:protocols && tsc -b tsconfig.json && npm run build:www",
    "release": "release-script"
  },
  "bugs": {
    "url": "https://github.com/copystring/ioBroker.roborock/issues"
  },
  "readmeFilename": "README.md"
}
