{
  "name": "@affine/monorepo",
  "version": "0.18.0",
  "private": true,
  "author": "toeverything",
  "license": "MIT",
  "workspaces": [
    ".",
    "packages/*/*",
    "packages/frontend/apps/*",
    "tools/*",
    "docs/reference",
    "tools/@types/*",
    "tests/*",
    "tests/affine-legacy/*"
  ],
  "engines": {
    "node": "<21.0.0"
  },
  "scripts": {
    "dev": "yarn workspace @affine/cli dev",
    "build": "yarn workspace @affine/cli bundle",
    "dev:electron": "yarn workspace @affine/electron dev",
    "build:electron": "yarn nx build @affine/electron",
    "build:server-native": "yarn nx run-many -t build -p @affine/server-native",
    "start:web-static": "yarn workspace @affine/web static-server",
    "serve:test-static": "yarn exec serve tests/fixtures --cors -p 8081",
    "lint:eslint": "cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" eslint . --ext .js,mjs,.ts,.tsx --cache",
    "lint:eslint:fix": "yarn lint:eslint --fix",
    "lint:prettier": "prettier --ignore-unknown --cache --check .",
    "lint:prettier:fix": "prettier --ignore-unknown --cache --write .",
    "lint:ox": "oxlint -c oxlint.json --deny-warnings",
    "lint": "yarn lint:eslint && yarn lint:prettier",
    "lint:fix": "yarn lint:eslint:fix && yarn lint:prettier:fix",
    "test": "vitest --run",
    "test:ui": "vitest --ui",
    "test:coverage": "vitest run --coverage",
    "typecheck": "tsc -b tsconfig.json",
    "postinstall": "node ./scripts/check-version.mjs && yarn workspace @affine/i18n i18n-codegen gen && yarn husky install",
    "prepare": "husky"
  },
  "lint-staged": {
    "*": "prettier --write --ignore-unknown --cache",
    "*.{ts,tsx,mjs,js,jsx}": [
      "prettier --ignore-unknown --write",
      "cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" eslint --cache --fix"
    ],
    "*.toml": [
      "taplo format"
    ],
    "*.rs": [
      "cargo fmt --"
    ]
  },
  "devDependencies": {
    "@affine/cli": "workspace:*",
    "@capacitor/cli": "^6.1.2",
    "@faker-js/faker": "^9.0.0",
    "@istanbuljs/schema": "^0.1.3",
    "@magic-works/i18n-codegen": "^0.6.0",
    "@playwright/test": "=1.49.0",
    "@swc/core": "^1.9.1",
    "@taplo/cli": "^0.7.0",
    "@toeverything/infra": "workspace:*",
    "@types/affine__env": "workspace:*",
    "@types/eslint": "^9.0.0",
    "@types/node": "^20.12.7",
    "@typescript-eslint/eslint-plugin": "^7.6.0",
    "@typescript-eslint/parser": "^7.6.0",
    "@vanilla-extract/vite-plugin": "^4.0.7",
    "@vitest/coverage-istanbul": "2.1.6",
    "@vitest/ui": "2.1.6",
    "cross-env": "^7.0.3",
    "electron": "^33.0.0",
    "eslint": "^8.57.0",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-import-x": "^0.5.0",
    "eslint-plugin-react": "^7.34.1",
    "eslint-plugin-react-hooks": "^4.6.0",
    "eslint-plugin-rxjs": "^5.0.3",
    "eslint-plugin-simple-import-sort": "^12.0.0",
    "eslint-plugin-sonarjs": "^0.25.1",
    "eslint-plugin-unicorn": "^52.0.0",
    "eslint-plugin-unused-imports": "^3.1.0",
    "happy-dom": "^15.0.0",
    "husky": "^9.0.11",
    "lint-staged": "^15.2.2",
    "msw": "^2.3.0",
    "nx": "^20.0.3",
    "nx-cloud": "^19.1.0",
    "oxlint": "0.14.0",
    "prettier": "^3.3.3",
    "semver": "^7.6.0",
    "serve": "^14.2.1",
    "typescript": "^5.6.3",
    "unplugin-swc": "^1.4.5",
    "vite": "^6.0.1",
    "vitest": "2.1.6"
  },
  "packageManager": "yarn@4.5.3",
  "resolutions": {
    "array-buffer-byte-length": "npm:@nolyfill/array-buffer-byte-length@latest",
    "array-includes": "npm:@nolyfill/array-includes@latest",
    "array.prototype.flat": "npm:@nolyfill/array.prototype.flat@latest",
    "array.prototype.flatmap": "npm:@nolyfill/array.prototype.flatmap@latest",
    "array.prototype.tosorted": "npm:@nolyfill/array.prototype.tosorted@latest",
    "arraybuffer.prototype.slice": "npm:@nolyfill/arraybuffer.prototype.slice@latest",
    "asynciterator.prototype": "npm:@nolyfill/asynciterator.prototype@latest",
    "available-typed-arrays": "npm:@nolyfill/available-typed-arrays@latest",
    "deep-equal": "npm:@nolyfill/deep-equal@latest",
    "define-properties": "npm:@nolyfill/define-properties@latest",
    "es-iterator-helpers": "npm:@nolyfill/es-iterator-helpers@latest",
    "es-set-tostringtag": "npm:@nolyfill/es-set-tostringtag@latest",
    "function-bind": "npm:@nolyfill/function-bind@latest",
    "function.prototype.name": "npm:@nolyfill/function.prototype.name@latest",
    "get-symbol-description": "npm:@nolyfill/get-symbol-description@latest",
    "globalthis": "npm:@nolyfill/globalthis@latest",
    "gopd": "npm:@nolyfill/gopd@latest",
    "has": "npm:@nolyfill/has@latest",
    "has-property-descriptors": "npm:@nolyfill/has-property-descriptors@latest",
    "has-proto": "npm:@nolyfill/has-proto@latest",
    "has-symbols": "npm:@nolyfill/has-symbols@latest",
    "has-tostringtag": "npm:@nolyfill/has-tostringtag@latest",
    "is-arguments": "npm:@nolyfill/is-arguments@latest",
    "is-array-buffer": "npm:@nolyfill/is-array-buffer@latest",
    "is-date-object": "npm:@nolyfill/is-date-object@latest",
    "is-generator-function": "npm:@nolyfill/is-generator-function@latest",
    "is-regex": "npm:@nolyfill/is-regex@latest",
    "is-shared-array-buffer": "npm:@nolyfill/is-shared-array-buffer@latest",
    "is-string": "npm:@nolyfill/is-string@latest",
    "is-symbol": "npm:@nolyfill/is-symbol@latest",
    "is-weakref": "npm:@nolyfill/is-weakref@latest",
    "iterator.prototype": "npm:@nolyfill/iterator.prototype@latest",
    "object-is": "npm:@nolyfill/object-is@latest",
    "object-keys": "npm:@nolyfill/object-keys@latest",
    "object.assign": "npm:@nolyfill/object.assign@latest",
    "object.entries": "npm:@nolyfill/object.entries@latest",
    "object.fromentries": "npm:@nolyfill/object.fromentries@latest",
    "object.hasown": "npm:@nolyfill/object.hasown@latest",
    "object.values": "npm:@nolyfill/object.values@latest",
    "reflect.getprototypeof": "npm:@nolyfill/reflect.getprototypeof@latest",
    "regexp.prototype.flags": "npm:@nolyfill/regexp.prototype.flags@latest",
    "safe-array-concat": "npm:@nolyfill/safe-array-concat@latest",
    "safe-regex-test": "npm:@nolyfill/safe-regex-test@latest",
    "side-channel": "npm:@nolyfill/side-channel@latest",
    "string.prototype.matchall": "npm:@nolyfill/string.prototype.matchall@latest",
    "string.prototype.trim": "npm:@nolyfill/string.prototype.trim@latest",
    "string.prototype.trimend": "npm:@nolyfill/string.prototype.trimend@latest",
    "string.prototype.trimstart": "npm:@nolyfill/string.prototype.trimstart@latest",
    "typed-array-buffer": "npm:@nolyfill/typed-array-buffer@latest",
    "typed-array-byte-length": "npm:@nolyfill/typed-array-byte-length@latest",
    "typed-array-byte-offset": "npm:@nolyfill/typed-array-byte-offset@latest",
    "typed-array-length": "npm:@nolyfill/typed-array-length@latest",
    "unbox-primitive": "npm:@nolyfill/unbox-primitive@latest",
    "which-boxed-primitive": "npm:@nolyfill/which-boxed-primitive@latest",
    "which-typed-array": "npm:@nolyfill/which-typed-array@latest",
    "macos-alias": "npm:@napi-rs/macos-alias@0.0.4",
    "fs-xattr": "npm:@napi-rs/xattr@latest",
    "vite": "6.0.1",
    "decode-named-character-reference@npm:^1.0.0": "patch:decode-named-character-reference@npm%3A1.0.2#~/.yarn/patches/decode-named-character-reference-npm-1.0.2-db17a755fd.patch"
  }
}