{
  "name": "@logto/core",
  "version": "1.15.0",
  "description": "The open source identity solution.",
  "main": "build/index.js",
  "author": "Silverhand Inc. <contact@silverhand.io>",
  "license": "MPL-2.0",
  "type": "module",
  "private": true,
  "imports": {
    "#src/*": "./build/*"
  },
  "scripts": {
    "precommit": "lint-staged",
    "copy:apidocs": "rsync -a -m --include '*/' --include '*.openapi.json' --exclude '*' src/routes/ build/routes/",
    "build": "rm -rf build/ && tsc -p tsconfig.build.json && pnpm run copy:apidocs",
    "build:test": "rm -rf build/ && tsc -p tsconfig.test.json --sourcemap && pnpm run copy:apidocs",
    "lint": "eslint --ext .ts --ext .json src",
    "lint:report": "pnpm lint --format json --output-file report.json",
    "dev": "rm -rf build/ && nodemon",
    "start": "NODE_ENV=production node .",
    "test:only": "NODE_OPTIONS=\"--experimental-vm-modules --max_old_space_size=4096\" jest --logHeapUsage",
    "test": "pnpm build:test && pnpm test:only",
    "test:ci": "pnpm test:only --coverage --silent",
    "test:report": "codecov -F core"
  },
  "dependencies": {
    "@authenio/samlify-node-xmllint": "^2.0.0",
    "@aws-sdk/client-s3": "^3.556.0",
    "@azure/storage-blob": "^12.17.0",
    "@google-cloud/storage": "^7.10.0",
    "@koa/cors": "^5.0.0",
    "@logto/affiliate": "^0.1.0",
    "@logto/app-insights": "workspace:^1.4.0",
    "@logto/cli": "workspace:^1.15.0",
    "@logto/connector-kit": "workspace:^3.0.0",
    "@logto/console": "workspace:*",
    "@logto/core-kit": "workspace:^2.4.0",
    "@logto/demo-app": "workspace:*",
    "@logto/experience": "workspace:*",
    "@logto/language-kit": "workspace:^1.1.0",
    "@logto/phrases": "workspace:^1.10.0",
    "@logto/phrases-experience": "workspace:^1.6.1",
    "@logto/schemas": "workspace:^1.15.0",
    "@logto/shared": "workspace:^3.1.0",
    "@silverhand/essentials": "^2.9.0",
    "@silverhand/slonik": "31.0.0-beta.2",
    "@simplewebauthn/server": "^9.0.0",
    "@withtyped/client": "^0.8.4",
    "camelcase": "^8.0.0",
    "camelcase-keys": "^9.0.0",
    "chalk": "^5.0.0",
    "clean-deep": "^3.4.0",
    "date-fns": "^2.29.3",
    "decamelize": "^6.0.0",
    "deepmerge": "^4.2.2",
    "dotenv": "^16.0.0",
    "etag": "^1.8.1",
    "fast-xml-parser": "^4.3.6",
    "find-up": "^7.0.0",
    "got": "^14.0.0",
    "hash-wasm": "^4.9.0",
    "helmet": "^7.0.0",
    "i18next": "^22.4.15",
    "iconv-lite": "0.6.3",
    "jose": "^5.0.0",
    "koa": "^2.13.1",
    "koa-body": "^6.0.1",
    "koa-compose": "^4.1.0",
    "koa-compress": "^5.1.0",
    "koa-logger": "^3.2.1",
    "koa-mount": "^4.0.0",
    "koa-proxies": "^0.12.4",
    "koa-router": "^12.0.0",
    "koa-send": "^5.0.1",
    "ky": "^1.2.3",
    "lru-cache": "^10.0.0",
    "nanoid": "^5.0.1",
    "oidc-provider": "^8.4.6",
    "openapi-types": "^12.1.3",
    "otplib": "^12.0.1",
    "p-retry": "^6.0.0",
    "pg-protocol": "^1.6.0",
    "pluralize": "^8.0.0",
    "qrcode": "^1.5.3",
    "redis": "^4.6.5",
    "roarr": "^7.11.0",
    "samlify": "2.8.11",
    "semver": "^7.3.8",
    "snake-case": "^4.0.0",
    "snakecase-keys": "^8.0.0",
    "zod": "^3.22.4"
  },
  "devDependencies": {
    "@logto/cloud": "0.2.5-e5d8200",
    "@silverhand/eslint-config": "6.0.1",
    "@silverhand/ts-config": "6.0.0",
    "@types/debug": "^4.1.7",
    "@types/etag": "^1.8.1",
    "@types/jest": "^29.4.0",
    "@types/koa": "^2.13.3",
    "@types/koa-compose": "^3.2.5",
    "@types/koa-compress": "^4.0.3",
    "@types/koa-logger": "^3.1.1",
    "@types/koa-mount": "^4.0.0",
    "@types/koa-send": "^4.1.3",
    "@types/koa__cors": "^5.0.0",
    "@types/node": "^20.9.5",
    "@types/oidc-provider": "^8.4.4",
    "@types/pluralize": "^0.0.33",
    "@types/qrcode": "^1.5.2",
    "@types/semver": "^7.3.12",
    "@types/sinon": "^17.0.0",
    "@types/supertest": "^6.0.2",
    "eslint": "^8.56.0",
    "jest": "^29.7.0",
    "jest-matcher-specific-error": "^1.0.0",
    "jsonc-eslint-parser": "^2.4.0",
    "lint-staged": "^15.0.0",
    "nock": "^14.0.0-beta.5",
    "node-mocks-http": "^1.12.1",
    "nodemon": "^3.0.0",
    "prettier": "^3.0.0",
    "sinon": "^17.0.0",
    "supertest": "^6.3.4",
    "typescript": "^5.3.3"
  },
  "engines": {
    "node": "^20.9.0"
  },
  "eslintConfig": {
    "extends": "@silverhand",
    "rules": {
      "no-console": "error",
      "import/no-unused-modules": [
        "error",
        {
          "unusedExports": true
        }
      ]
    },
    "overrides": [
      {
        "files": [
          "*.d.ts"
        ],
        "rules": {
          "import/no-unused-modules": "off"
        }
      },
      {
        "files": [
          "*.openapi.json"
        ],
        "rules": {
          "max-lines": "off"
        }
      },
      {
        "files": [
          "src/include.d/oidc-provider/**/*"
        ],
        "rules": {
          "unicorn/filename-case": "off"
        }
      },
      {
        "files": [
          "*.json",
          "*.json5",
          "*.jsonc"
        ],
        "parser": "jsonc-eslint-parser"
      }
    ]
  },
  "prettier": "@silverhand/eslint-config/.prettierrc"
}