{
  "name": "cross-state",
  "version": "1.9.6",
  "description": "(React) state library",
  "license": "ISC",
  "repository": "schummar/cross-state",
  "author": {
    "name": "Marco Schumacher",
    "email": "marco@schumacher.dev"
  },
  "type": "module",
  "sideEffects": [
    "dist/react/register.js",
    "dist/react/register.cjs",
    "dist/mutative/register.js",
    "dist/mutative/register.cjs",
    "dist/patches/register.js",
    "dist/patches/register.cjs",
    "dist/persist/register.js",
    "dist/persist/register.cjs"
  ],
  "files": [
    "dist"
  ],
  "main": "./dist/index.cjs",
  "module": "./dist/index.js",
  "types": "./dist/index.d.cts",
  "exports": {
    ".": {
      "require": "./dist/index.cjs",
      "import": "./dist/index.js"
    },
    "./mutative": {
      "require": "./dist/mutative/index.cjs",
      "import": "./dist/mutative/index.js"
    },
    "./mutative/register": {
      "require": "./dist/mutative/register.cjs",
      "import": "./dist/mutative/register.js"
    },
    "./patches": {
      "require": "./dist/patches/index.cjs",
      "import": "./dist/patches/index.js"
    },
    "./patches/register": {
      "require": "./dist/patches/register.cjs",
      "import": "./dist/patches/register.js"
    },
    "./persist/register": {
      "require": "./dist/persist/register.cjs",
      "import": "./dist/persist/register.js"
    },
    "./react": {
      "require": "./dist/react/index.cjs",
      "import": "./dist/react/index.js"
    },
    "./react/register": {
      "require": "./dist/react/register.cjs",
      "import": "./dist/react/register.js"
    },
    "./package.json": "./package.json"
  },
  "peerDependencies": {
    "mutative": ">=1.0.3",
    "react": ">=18.0.0"
  },
  "peerDependenciesMeta": {
    "mutative": {
      "optional": true
    },
    "react": {
      "optional": true
    }
  },
  "devDependencies": {
    "@emotion/styled": "11.14.1",
    "@mantine/core": "8.3.10",
    "@mantine/hooks": "^8.3.10",
    "@mui/material": "7.3.6",
    "@nx/js": "^22.2.0",
    "@schummar/prettier-config": "github:schummar/prettier-config",
    "@schummar/runp": "2.2.4",
    "@size-limit/preset-small-lib": "12.0.0",
    "@testing-library/react": "16.3.0",
    "@types/react": "19.2.7",
    "@types/react-dom": "19.2.3",
    "@types/seedrandom": "3.0.8",
    "@types/ws": "8.18.1",
    "@typescript/native-preview": "7.0.0-dev.20251210.1",
    "@vitejs/plugin-react": "5.1.2",
    "@vitest/coverage-v8": "4.0.15",
    "@vitest/ui": "^4.0.15",
    "esbuild": "0.27.1",
    "happy-dom": "20.0.11",
    "jsdom": "27.3.0",
    "mutative": "^1.3.0",
    "nx": "^22.2.0",
    "oxlint": "^1.32.0",
    "prettier": "3.7.4",
    "publint": "0.3.16",
    "react": "^19.2.1",
    "react-dom": "^19.2.1",
    "rimraf": "6.1.2",
    "seedrandom": "3.0.5",
    "size-limit": "12.0.0",
    "swc-node": "^1.0.0",
    "tsdown": "^0.17.2",
    "typescript": "^5.9.3",
    "vite": "^7.2.7",
    "vite-tsconfig-paths": "5.1.4",
    "vitest": "4.0.15"
  },
  "volta": {
    "node": "24.11.1",
    "pnpm": "10.25.0",
    "npm": "11.7.0"
  },
  "prettier": "@schummar/prettier-config",
  "size-limit": [
    {
      "name": "core",
      "path": "dist/index.js",
      "limit": "9 KB"
    },
    {
      "name": "core: Store",
      "path": "dist/index.js",
      "import": "{createStore}",
      "limit": "5 KB"
    },
    {
      "name": "core: Cache",
      "path": "dist/index.js",
      "import": "{createCache}",
      "limit": "6 KB"
    },
    {
      "name": "core: Persist",
      "path": "dist/index.js",
      "import": "{persist}",
      "limit": "4 KB"
    },
    {
      "name": "core: InstanceCache",
      "path": "dist/index.js",
      "import": "{InstanceCache}",
      "limit": "610 B"
    },
    {
      "name": "core: calcDuration",
      "path": "dist/index.js",
      "import": "{calcDuration}",
      "limit": "600 B"
    },
    {
      "name": "react",
      "path": "dist/react/index.js",
      "limit": "12 KB"
    },
    {
      "name": "react: useStore",
      "path": "dist/react/index.js",
      "import": "{useStore}",
      "limit": "6 KB"
    },
    {
      "name": "react: useCache",
      "path": "dist/react/index.js",
      "import": "{useCache}",
      "limit": "6 KB"
    },
    {
      "name": "react: urlStore",
      "path": "dist/react/index.js",
      "import": "{createUrlParam}",
      "limit": "6 KB"
    },
    {
      "name": "/mutative",
      "path": "dist/mutative/index.js",
      "limit": "250 B"
    },
    {
      "name": "/patches",
      "path": "dist/patches/index.js",
      "limit": "2 KB"
    },
    {
      "name": "empty",
      "path": "dist/index.js",
      "import": "{}",
      "limit": "0"
    }
  ],
  "scripts": {
    "start": "tsdown --watch",
    "build": "tsdown",
    "lint": "runp -i lint:*",
    "lint:prettier": "prettier -l src",
    "lint:oxlint": "oxlint --max-warnings 0",
    "lint:ts": "tsgo --noEmit --emitDeclarationOnly false",
    "size": "size-limit",
    "publint": "publint",
    "test": "vitest run --coverage",
    "test:watch": "vitest",
    "test:ui": "vitest --ui",
    "test:export": "pnpm test:watch run --coverage --reporter=verbose --reporter=junit --outputFile=test/testResults.xml"
  }
}