{
    "name": "@unraid/api",
    "version": "4.4.1",
    "main": "src/cli/index.ts",
    "type": "module",
    "corepack": {
        "enabled": true
    },
    "repository": "git@github.com:unraid/api.git",
    "author": "Lime Technology, Inc. <unraid.net>",
    "license": "GPL-2.0-only",
    "engines": {
        "pnpm": ">=8.0.0"
    },
    "scripts": {
        "// Development": "",
        "start": "node dist/main.js",
        "dev": "vite",
        "command": "pnpm run build && clear && ./dist/cli.js",
        "// Build and Deploy": "",
        "build": "vite build --mode=production",
        "postbuild": "chmod +x dist/main.js && chmod +x dist/cli.js",
        "build:watch": "nodemon --watch src --ext ts,js,json --exec 'tsx ./scripts/build.ts'",
        "build:docker": "./scripts/dc.sh run --rm builder",
        "build:release": "tsx ./scripts/build.ts",
        "preunraid:deploy": "pnpm build",
        "unraid:deploy": "./scripts/deploy-dev.sh",
        "// GraphQL Codegen": "",
        "codegen": "MOTHERSHIP_GRAPHQL_LINK='https://staging.mothership.unraid.net/ws' graphql-codegen --config codegen.ts -r dotenv/config './.env.staging'",
        "codegen:watch": "DOTENV_CONFIG_PATH='./.env.staging' graphql-codegen --config codegen.ts --watch -r dotenv/config",
        "codegen:local": "NODE_TLS_REJECT_UNAUTHORIZED=0  MOTHERSHIP_GRAPHQL_LINK='https://mothership.localhost/ws' graphql-codegen --config codegen.ts --watch",
        "// Code Quality": "",
        "lint": "eslint --config .eslintrc.ts src/",
        "lint:fix": "eslint --fix --config .eslintrc.ts src/",
        "type-check": "tsc --noEmit",
        "// Testing": "",
        "test": "NODE_ENV=test vitest run",
        "test:watch": "NODE_ENV=test vitest --ui",
        "coverage": "NODE_ENV=test vitest run --coverage",
        "// Docker": "",
        "container:build": "./scripts/dc.sh build dev",
        "container:start": "pnpm run container:stop && ./scripts/dc.sh run --rm --service-ports dev",
        "container:stop": "./scripts/dc.sh stop dev",
        "container:test": "./scripts/dc.sh run --rm builder pnpm run test",
        "container:enter": "./scripts/dc.sh exec dev /bin/bash"
    },
    "bin": {
        "unraid-api": "dist/cli.js"
    },
    "dependencies": {
        "@apollo/client": "^3.11.8",
        "@apollo/server": "^4.11.2",
        "@as-integrations/fastify": "^2.1.1",
        "@fastify/cookie": "^11.0.2",
        "@fastify/helmet": "^13.0.1",
        "@graphql-codegen/client-preset": "^4.5.0",
        "@graphql-tools/load-files": "^7.0.0",
        "@graphql-tools/merge": "^9.0.8",
        "@graphql-tools/schema": "^10.0.7",
        "@graphql-tools/utils": "^10.5.5",
        "@jsonforms/core": "^3.5.1",
        "@nestjs/apollo": "^13.0.3",
        "@nestjs/common": "^11.0.11",
        "@nestjs/core": "^11.0.11",
        "@nestjs/graphql": "^13.0.3",
        "@nestjs/passport": "^11.0.0",
        "@nestjs/platform-fastify": "^11.0.11",
        "@nestjs/schedule": "^5.0.0",
        "@nestjs/throttler": "^6.2.1",
        "@reduxjs/toolkit": "^2.3.0",
        "@runonflux/nat-upnp": "^1.0.2",
        "@types/diff": "^7.0.1",
        "@unraid/libvirt": "^1.1.3",
        "accesscontrol": "^2.2.1",
        "bycontract": "^2.0.11",
        "bytes": "^3.1.2",
        "cacheable-lookup": "^7.0.0",
        "camelcase-keys": "^9.1.3",
        "casbin": "^5.32.0",
        "chokidar": "^4.0.1",
        "cli-table": "^0.3.11",
        "command-exists": "^1.2.9",
        "convert": "^5.8.0",
        "cookie": "^1.0.2",
        "cron": "3.5.0",
        "cross-fetch": "^4.0.0",
        "diff": "^7.0.0",
        "docker-event-emitter": "^0.3.0",
        "dockerode": "^3.3.5",
        "dotenv": "^16.4.5",
        "execa": "^9.5.1",
        "exit-hook": "^4.0.0",
        "fastify": "^5.2.1",
        "filenamify": "^6.0.0",
        "fs-extra": "^11.2.0",
        "glob": "^11.0.1",
        "global-agent": "^3.0.0",
        "got": "^14.4.6",
        "graphql": "^16.9.0",
        "graphql-fields": "^2.0.3",
        "graphql-scalars": "^1.23.0",
        "graphql-subscriptions": "^3.0.0",
        "graphql-tag": "^2.12.6",
        "graphql-type-json": "^0.3.2",
        "graphql-type-uuid": "^0.2.0",
        "graphql-ws": "^6.0.0",
        "ini": "^5.0.0",
        "ip": "^2.0.1",
        "jose": "^6.0.0",
        "lodash-es": "^4.17.21",
        "multi-ini": "^2.3.2",
        "mustache": "^4.2.0",
        "nest-authz": "^2.14.0",
        "nest-commander": "^3.15.0",
        "nestjs-pino": "^4.1.0",
        "node-cache": "^5.1.2",
        "node-window-polyfill": "^1.0.2",
        "p-retry": "^6.2.0",
        "passport-custom": "^1.1.1",
        "passport-http-header-strategy": "^1.1.0",
        "path-type": "^6.0.0",
        "pino": "^9.5.0",
        "pino-http": "^10.3.0",
        "pino-pretty": "^13.0.0",
        "pm2": "^6.0.0",
        "reflect-metadata": "^0.1.14",
        "request": "^2.88.2",
        "rxjs": "^7.8.2",
        "semver": "^7.6.3",
        "strftime": "^0.10.3",
        "systeminformation": "^5.25.11",
        "uuid": "^11.0.2",
        "ws": "^8.18.0",
        "zen-observable-ts": "^1.1.0",
        "zod": "^3.23.8"
    },
    "devDependencies": {
        "@eslint/js": "^9.21.0",
        "@graphql-codegen/add": "^5.0.3",
        "@graphql-codegen/cli": "^5.0.3",
        "@graphql-codegen/fragment-matcher": "^5.0.2",
        "@graphql-codegen/import-types-preset": "^3.0.0",
        "@graphql-codegen/typed-document-node": "^5.0.11",
        "@graphql-codegen/typescript": "^4.1.1",
        "@graphql-codegen/typescript-operations": "^4.3.1",
        "@graphql-codegen/typescript-resolvers": "4.4.4",
        "@graphql-typed-document-node/core": "^3.2.0",
        "@ianvs/prettier-plugin-sort-imports": "^4.4.0",
        "@nestjs/testing": "^11.0.11",
        "@originjs/vite-plugin-commonjs": "^1.0.3",
        "@rollup/plugin-node-resolve": "^16.0.0",
        "@swc/core": "^1.10.1",
        "@types/async-exit-hook": "^2.0.2",
        "@types/bytes": "^3.1.4",
        "@types/cli-table": "^0.3.4",
        "@types/command-exists": "^1.2.3",
        "@types/cors": "^2.8.17",
        "@types/dockerode": "^3.3.31",
        "@types/graphql-fields": "^1.3.9",
        "@types/graphql-type-uuid": "^0.2.6",
        "@types/ini": "^4.1.1",
        "@types/ip": "^1.1.3",
        "@types/lodash": "^4.17.13",
        "@types/mustache": "^4.2.5",
        "@types/node": "^22.13.4",
        "@types/pify": "^6.0.0",
        "@types/semver": "^7.5.8",
        "@types/sendmail": "^1.4.7",
        "@types/stoppable": "^1.1.3",
        "@types/strftime": "^0.9.8",
        "@types/uuid": "^10.0.0",
        "@types/ws": "^8.5.13",
        "@types/wtfnode": "^0.7.3",
        "@vitest/coverage-v8": "^3.0.5",
        "@vitest/ui": "^3.0.5",
        "cz-conventional-changelog": "3.3.0",
        "eslint": "^9.20.1",
        "eslint-plugin-import": "^2.31.0",
        "eslint-plugin-n": "^17.0.0",
        "eslint-plugin-no-relative-import-paths": "^1.6.1",
        "eslint-plugin-prettier": "^5.2.3",
        "graphql-codegen-typescript-validation-schema": "^0.17.0",
        "jiti": "^2.4.0",
        "nodemon": "^3.1.7",
        "prettier": "^3.5.2",
        "rollup-plugin-node-externals": "^8.0.0",
        "standard-version": "^9.5.0",
        "tsx": "^4.19.2",
        "typescript": "^5.6.3",
        "typescript-eslint": "^8.13.0",
        "unplugin-swc": "^1.5.1",
        "vite": "^6.0.0",
        "vite-plugin-node": "^4.0.0",
        "vite-tsconfig-paths": "^5.1.0",
        "vitest": "^3.0.5",
        "zx": "^8.3.2"
    },
    "overrides": {
        "eslint": {
            "jiti": "2"
        }
    },
    "private": true,
    "packageManager": "pnpm@10.6.5"
}
