UNPKG

mutative

Version:

A JavaScript library for efficient immutable updates

163 lines (162 loc) 5.75 kB
{ "name": "mutative", "version": "1.2.0", "description": "A JavaScript library for efficient immutable updates", "main": "dist/index.js", "module": "dist/mutative.esm.js", "umd:main": "dist/mutative.umd.production.min.js", "unpkg": "dist/mutative.umd.production.min.js", "jsdelivr": "dist/mutative.umd.production.min.js", "jsnext:main": "dist/mutative.esm.js", "react-native": "dist/mutative.esm.js", "source": "src/index.ts", "types": "dist/index.d.ts", "exports": { ".": { "import": "./dist/mutative.esm.mjs", "require": "./dist/index.js", "types": "./dist/index.d.ts" }, "./*": "./*" }, "files": [ "dist", "src" ], "scripts": { "test": "jest", "type-check": "tsc --noEmit", "clean": "rimraf dist", "test:coverage": "jest --coverage && coveralls < coverage/lcov.info", "benchmark": "yarn build && yarn benchmark:base && yarn benchmark:object && yarn benchmark:array && yarn benchmark:class", "all-benchmark": "yarn build && NODE_ENV='production' ts-node test/benchmark/index.ts", "benchmark:reducer": "NODE_ENV='production' ts-node test/performance/benchmark-reducer.ts", "benchmark:base": "NODE_ENV='production' ts-node test/performance/benchmark.ts", "benchmark:object": "NODE_ENV='production' ts-node test/performance/benchmark-object.ts", "benchmark:array": "NODE_ENV='production' ts-node test/performance/benchmark-array.ts", "benchmark:class": "NODE_ENV='production' ts-node test/performance/benchmark-class.ts", "performance:read-only": "yarn build && NODE_ENV='production' ts-node test/performance/read-draft/index.ts", "performance:immer": "cd test/__immer_performance_tests__ && NODE_ENV='production' ts-node add-data.ts && NODE_ENV='production' ts-node todo.ts && NODE_ENV='production' ts-node incremental.ts", "performance:basic": "cd test/performance && NODE_ENV='production' ts-node index.ts", "performance:set-map": "cd test/performance && NODE_ENV='production' ts-node set-map.ts", "performance:big-object": "cd test/performance && NODE_ENV='production' ts-node big-object.ts", "performance:sample": "cd test/performance && NODE_ENV='production' ts-node sample.ts", "performance:array-object": "cd test/performance && NODE_ENV='production' ts-node array-object.ts", "performance": "yarn build && yarn performance:immer && yarn performance:basic && yarn performance:set-map && yarn performance:big-object && yarn performance:sample && yarn performance:array-object", "build": "yarn clean && rollup --config --bundleConfigAsCjs", "build:doc": "rimraf docs && typedoc --plugin typedoc-plugin-markdown --out docs src/index.ts --readme none", "commit": "yarn git-cz", "size": "size-limit", "analyze": "size-limit --why", "prettier": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", "publish:docs": "yarn clean && cd website && GIT_USER=unadlib USE_SSH=true yarn run deploy", "start:docs": "cd website && yarn run start" }, "size-limit": [ { "path": "dist/mutative.cjs.production.min.js", "limit": "5 KB" }, { "path": "dist/mutative.esm.js", "limit": "5 KB" } ], "repository": { "type": "git", "url": "git+https://github.com/unadlib/mutative.git" }, "author": "unadlib", "keywords": [ "immutable", "mutable", "copy-on-write", "mutative", "immutability", "mutation" ], "license": "MIT", "engines": { "node": ">=14.0" }, "bugs": { "url": "https://github.com/unadlib/mutative/issues" }, "homepage": "https://mutative.js.org/", "devDependencies": { "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-replace": "^5.0.5", "@rollup/plugin-terser": "^0.4.4", "@rollup/plugin-typescript": "^12.1.1", "@size-limit/esbuild": "^11.1.6", "@size-limit/esbuild-why": "^8.2.6", "@size-limit/preset-small-lib": "^11.1.6", "@size-limit/webpack": "^11.1.6", "@size-limit/webpack-why": "^11.1.6", "@types/jest": "^29.5.13", "@types/node": "^22.7.4", "@typescript-eslint/eslint-plugin": "^8.15.0", "@typescript-eslint/parser": "^8.15.0", "benchmark": "^2.1.4", "commitizen": "^4.3.0", "coveralls": "^3.1.1", "deep-freeze": "^0.0.1", "eslint": "^9.11.1", "eslint-config-airbnb": "^19.0.4", "eslint-config-prettier": "^9.1.0", "eslint-plugin-import": "^2.30.0", "eslint-plugin-jsx-a11y": "^6.10.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.37.0", "fast-json-patch": "^3.1.1", "immer": "^10.1.1", "immutable": "^4.0.0", "jest": "^29.7.0", "jsdoc-tests": "^1.1.0", "json2csv": "^5.0.7", "lodash": "^4.17.21", "lodash.clonedeep": "^4.5.0", "prettier": "^3.3.3", "quickchart-js": "^3.1.2", "redux": "^5.0.1", "rimraf": "^3.0.2", "rollup": "^4.9.0", "seamless-immutable": "^7.1.4", "size-limit": "^11.1.6", "ts-jest": "^29.2.5", "ts-node": "^10.9.2", "tslib": "^2.8.1", "typedoc": "^0.28.4", "typedoc-plugin-markdown": "^4.6.3", "typescript": "^5.8.3", "yargs": "^17.7.2" }, "config": { "commitizen": { "path": "cz-conventional-changelog" } }, "jest": { "preset": "ts-jest", "coveragePathIgnorePatterns": [ "<rootDir>/test/" ], "transform": { "\\.[jt]sx?$": [ "ts-jest", { "tsconfig": { "noImplicitReturns": false, "noFallthroughCasesInSwitch": false, "noUnusedLocals": false, "noUnusedParameters": false } } ] }, "globals": { "__DEV__": true } } }