{ "name": "jotai", "private": true, "version": "1.5.3", "description": "👻 Next gen state management that will spook you", "main": "./index.js", "types": "./index.d.ts", "typesVersions": { "<4.0": { "esm/*": [ "ts3.4/*" ], "*": [ "ts3.4/*" ] } }, "exports": { "./package.json": "./package.json", ".": { "types": "./index.d.ts", "module": "./esm/index.js", "import": "./esm/index.mjs", "default": "./index.js" }, "./utils": { "types": "./utils.d.ts", "module": "./esm/utils.js", "import": "./esm/utils.mjs", "default": "./utils.js" }, "./devtools": { "types": "./devtools.d.ts", "module": "./esm/devtools.js", "import": "./esm/devtools.mjs", "default": "./devtools.js" }, "./immer": { "types": "./immer.d.ts", "module": "./esm/immer.js", "import": "./esm/immer.mjs", "default": "./immer.js" }, "./optics": { "types": "./optics.d.ts", "module": "./esm/optics.js", "import": "./esm/optics.mjs", "default": "./optics.js" }, "./query": { "types": "./query.d.ts", "module": "./esm/query.js", "import": "./esm/query.mjs", "default": "./query.js" }, "./xstate": { "types": "./xstate.d.ts", "module": "./esm/xstate.js", "import": "./esm/xstate.mjs", "default": "./xstate.js" }, "./valtio": { "types": "./valtio.d.ts", "module": "./esm/valtio.js", "import": "./esm/valtio.mjs", "default": "./valtio.js" }, "./zustand": { "types": "./zustand.d.ts", "module": "./esm/zustand.js", "import": "./esm/zustand.mjs", "default": "./zustand.js" }, "./redux": { "types": "./redux.d.ts", "module": "./esm/redux.js", "import": "./esm/redux.mjs", "default": "./redux.js" }, "./urql": { "types": "./urql.d.ts", "module": "./esm/urql.js", "import": "./esm/urql.mjs", "default": "./urql.js" }, "./babel/plugin-debug-label": { "types": "./babel/plugin-debug-label.d.ts", "module": "./esm/babel/plugin-debug-label.js", "import": "./esm/babel/plugin-debug-label.mjs", "default": "./babel/plugin-debug-label.js" }, "./babel/plugin-react-refresh": { "types": "./babel/plugin-react-refresh.d.ts", "module": "./esm/babel/plugin-react-refresh.js", "import": "./esm/babel/plugin-react-refresh.mjs", "default": "./babel/plugin-react-refresh.js" }, "./babel/preset": { "types": "./babel/preset.d.ts", "module": "./esm/babel/preset.js", "import": "./esm/babel/preset.mjs", "default": "./babel/preset.js" } }, "files": [ "**" ], "sideEffects": false, "scripts": { "prebuild": "shx rm -rf dist", "build": "concurrently 'yarn:build:*'", "build-watch": "concurrently -n watch: 'yarn:build:* --watch'", "build:base": "rollup -c", "build:utils": "rollup -c --config-utils", "build:devtools": "rollup -c --config-devtools", "build:immer": "rollup -c --config-immer", "build:optics": "rollup -c --config-optics", "build:query": "rollup -c --config-query", "build:xstate": "rollup -c --config-xstate", "build:valtio": "rollup -c --config-valtio", "build:zustand": "rollup -c --config-zustand", "build:redux": "rollup -c --config-redux", "build:urql": "rollup -c --config-urql", "build:babel:plugin-debug-label": "rollup -c --config-babel_plugin-debug-label", "build:babel:plugin-react-refresh": "rollup -c --config-babel_plugin-react-refresh", "build:babel:preset": "rollup -c --config-babel_preset", "postbuild": "yarn copy", "eslint": "eslint --fix '*.{js,json}' '{src,tests,benchmarks}/**/*.{ts,tsx}'", "eslint:ci": "eslint '*.{js,json}' '{src,tests,benchmarks}/**/*.{ts,tsx}'", "pretest": "tsc --noEmit", "test": "jest && jest --setupFiles ./tests/setProviderLessMode.ts && jest --setupFiles ./tests/setVersionedWriteMode.ts", "test:ci": "jest", "test:dev": "jest --watch --no-coverage", "test:coverage:watch": "jest --watch", "copy": "shx cp -r dist/src/* dist/esm && shx cp -r dist/src/* dist && shx rm -rf dist/src && shx rm -rf dist/{src,tests} && downlevel-dts dist dist/ts3.4 && shx cp package.json readme.md LICENSE dist && json -I -f dist/package.json -e \"this.private=false; this.devDependencies=undefined; this.optionalDependencies=undefined; this.scripts=undefined; this.prettier=undefined; this.jest=undefined; this['lint-staged']=undefined;\"" }, "engines": { "node": ">=12.7.0" }, "prettier": { "semi": false, "trailingComma": "es5", "singleQuote": true, "bracketSameLine": true, "tabWidth": 2, "printWidth": 80 }, "lint-staged": { "*.{js,ts,tsx,md}": [ "prettier --write" ] }, "repository": { "type": "git", "url": "git+https://github.com/pmndrs/jotai.git" }, "keywords": [ "react", "state", "manager", "management", "recoil", "store" ], "author": "Daishi Kato", "contributors": [], "license": "MIT", "bugs": { "url": "https://github.com/pmndrs/jotai/issues" }, "homepage": "https://github.com/pmndrs/jotai", "jest": { "rootDir": ".", "testEnvironment": "jsdom", "transform": { "^.+\\.(t|j)sx?$": [ "@swc/jest" ] }, "moduleNameMapper": { "^jotai$": "<rootDir>/src/index.ts", "^jotai/(.*)$": "<rootDir>/src/$1.ts" }, "modulePathIgnorePatterns": [ "dist" ], "testRegex": "test.(js|ts|tsx)$", "coverageDirectory": "./coverage/", "collectCoverage": true, "coverageReporters": [ "json", "html", "text", "text-summary" ], "collectCoverageFrom": [ "src/**/*.{js,ts,tsx}", "tests/**/*.{js,ts,tsx}" ] }, "devDependencies": { "@babel/core": "^7.16.7", "@babel/plugin-transform-react-jsx": "^7.16.7", "@babel/plugin-transform-typescript": "^7.16.8", "@babel/preset-env": "^7.16.8", "@babel/template": "^7.16.7", "@babel/types": "^7.16.8", "@rollup/plugin-babel": "^5.3.0", "@rollup/plugin-node-resolve": "^13.1.3", "@rollup/plugin-typescript": "^8.3.0", "@swc/core": "^1.2.130", "@swc/jest": "^0.2.17", "@testing-library/react": "^12.1.2", "@types/jest": "^27.4.0", "@types/react": "^17.0.38", "@types/react-dom": "^17.0.11", "@typescript-eslint/eslint-plugin": "^5.10.0", "@typescript-eslint/parser": "^5.10.0", "@urql/core": "^2.3.6", "benny": "^3.7.1", "concurrently": "^7.0.0", "downlevel-dts": "^0.8.0", "esbuild": "^0.14.11", "eslint": "^8.7.0", "eslint-config-prettier": "^8.3.0", "eslint-import-resolver-alias": "^1.1.2", "eslint-plugin-import": "^2.25.4", "eslint-plugin-jest": "^25.7.0", "eslint-plugin-prettier": "^4.0.0", "eslint-plugin-react": "^7.28.0", "eslint-plugin-react-hooks": "^4.3.0", "graphql": "^16.2.0", "husky": "^7.0.4", "immer": "^9.0.12", "jest": "^27.4.7", "json": "^11.0.0", "lint-staged": "^12.1.7", "optics-ts": "^2.3.0", "postinstall-postinstall": "^2.1.0", "prettier": "^2.5.1", "react": "^17.0.2", "react-dom": "^17.0.2", "react-query": "^3.34.8", "redux": "^4.1.2", "rollup": "^2.64.0", "rollup-plugin-esbuild": "^4.8.2", "rxjs": "^7.5.2", "shx": "^0.3.4", "ts-expect": "^1.3.0", "ts-node": "^10.4.0", "tslib": "^2.3.1", "typescript": "^4.5.4", "valtio": "^1.2.9", "wonka": "^4.0.15", "xstate": "^4.27.0", "zustand": "^3.6.9" }, "peerDependencies": { "@babel/core": "*", "@babel/template": "*", "@urql/core": "*", "immer": "*", "optics-ts": "*", "react": ">=16.8", "react-query": "*", "valtio": "*", "wonka": "*", "xstate": "*" }, "peerDependenciesMeta": { "@babel/core": { "optional": true }, "@babel/template": { "optional": true }, "@urql/core": { "optional": true }, "immer": { "optional": true }, "optics-ts": { "optional": true }, "react-query": { "optional": true }, "valtio": { "optional": true }, "wonka": { "optional": true }, "xstate": { "optional": true } }}