{"_id":"@pihanga2/core","_rev":"40-064da2db0743745e7f01a767bc278642","name":"@pihanga2/core","dist-tags":{"latest":"0.3.40"},"versions":{"0.2.0":{"name":"@pihanga2/core","version":"0.2.0","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.2.0","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"65055b48a8cedabdea538965a60047a2203a19bc","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.2.0.tgz","fileCount":81,"integrity":"sha512-vh+PlSIUlOehHiytRKij6nufVXdJsbOtYUyvl1OrJoK1aLC9jufLn4ClBLS/gnaETgo/xCQfZFYQWLPcJ91Guw==","signatures":[{"sig":"MEQCIDGsazVRNQPY4SjpKcLmAkoOV7RSOs+Hko/y2q2JfmXuAiAOTEc/bYdp7tpFpCDI3+sGV848VpeEONLZnRj0Flxjig==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173762},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"history":"^5.3.0","deep-equal":"^2.2.3"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","tslog":"^4.9.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.25.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","stacktrace-js":"^2.0.2","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@reduxjs/toolkit":"^1.8.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.2.0_1720499678376_0.9207745030070493","host":"s3://npm-registry-packages"}},"0.2.1":{"name":"@pihanga2/core","version":"0.2.1","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.2.1","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"277ebf1658a618c71a5791cd7a69cf265051c90e","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.2.1.tgz","fileCount":81,"integrity":"sha512-IYgksrUehNd0OjhJHuSFw14PE2PKEMgp7K0bXAoKqDLqa5+Grok1J4wY8OdDtKxHz26OgRN0VhHigMerrndJvw==","signatures":[{"sig":"MEUCIQDPINmlOl/H4TQ6JS28J1Sldn5krqxfnzqkGaVABJQ9ZQIgHO1ceWPpzQ+74W910zmK7ponvRaFm/TMBWrlp35aR8E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173903},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.25.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.2.1_1720936371994_0.3138500128693007","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"@pihanga2/core","version":"0.3.0","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.0","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"be20aa5ef5be7ae50fc35d4bea515a0e826851f4","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.0.tgz","fileCount":91,"integrity":"sha512-9bJnyedVzBGyPtQFI9DDTVQBJgQdw2Q1bNvpV6uEdxOn9zLLf4lr9HFKfcBoK0qhkVmkccJ/Eqcz13+I78MyoA==","signatures":[{"sig":"MEUCIQD3PYdGEzv67mliOjY8WLsMDhueT2gEYkNCqEqs4nU66gIgdd2KFlNSRqjVoVV/y0/gQmWz3BAme+PK68G5spRXrfU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186658},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.0_1722908211478_0.05058286377669874","host":"s3://npm-registry-packages"}},"0.3.1":{"name":"@pihanga2/core","version":"0.3.1","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.1","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"14f3596a99beaa490ecede4135f005a120ecdb82","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.1.tgz","fileCount":91,"integrity":"sha512-9F2wRkMHj/KhJYnq6KNbiW7xgHeZpo1GBQUpAoTjWXlqO/UUe+b68Z0GMdPO6KWluDQw62g4oT7QMv+TTWZarA==","signatures":[{"sig":"MEYCIQDvs7iB/WyZS1wr1zVeDdUa46ze0zaJcMrvQL4AYG4VPAIhAK2NwnpCbMcs9aGDDNxMqNv1zp6vXRRkrXGRoK1NTKOh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":188314},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.1_1725498590300_0.0711103994052229","host":"s3://npm-registry-packages"}},"0.3.2":{"name":"@pihanga2/core","version":"0.3.2","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.2","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"5e3b583f1a66c956b0ca3ca2e6f63718167691c7","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.2.tgz","fileCount":92,"integrity":"sha512-S2M4Ea020K07vi+Th7UmLJVQsBW6Jy9465Z6Jm5R97wfOVxgSUUkDSzi+rZNNb3MTBKyFnhTnrCMkG5kxW7s3w==","signatures":[{"sig":"MEUCICYwr7DN5oMoHUe+qgOOmNhXOmUcPv7vUNHGq5c3mQsUAiEAyIbYHHf//FuuwtEequlRh0ZjBcA5woK2VFkwR44wZL4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":193120},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.2_1731370842035_0.8287531125606808","host":"s3://npm-registry-packages"}},"0.3.3":{"name":"@pihanga2/core","version":"0.3.3","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.3","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"24b28bf6d05f85e6e0b61fe1293b4de798328d18","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.3.tgz","fileCount":92,"integrity":"sha512-pM+pFPlbluNFGeZq24At5TwVU3RUJFu1e3ME1NVTi3p2lB4a3P+6KnkLshSAGrqrmJb1NjNbXdUGhtVsuDfsHA==","signatures":[{"sig":"MEQCIBOdBIrgzOx1vhCKOl3kjHJoXBRALqILwAsBR9a/LeRtAiBdiNUHEMK/Aj2I3p9nNWKmxlu5+1F3wsUea6JrhIdWQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":193886},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.3_1755822898199_0.24693267632372629","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@pihanga2/core","version":"0.3.4","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.4","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"efacdcc5a8c45eb875e1669d75ec1811e2eaed36","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.4.tgz","fileCount":92,"integrity":"sha512-9XV3CkQouC2dWi3ZfMYBeSg8HkFovdLGo2EuczwfZl2yMvkKsXvbrD0c0mEpiaVRVuPeYQE0JmWPRb7fduBeNw==","signatures":[{"sig":"MEQCIHtgKH2KasOT1t602D6CjnnUYHSaEz2SvGYg+l0Kwzt1AiBWivNu5X6lJ+t3HZSWHIOImXOEhqXyYFQFT8MfPYuOHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198984},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.4_1760232983644_0.47582043461049683","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@pihanga2/core","version":"0.3.5","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.5","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"36d664e25253093b8a83e49d093562a6add00c70","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.5.tgz","fileCount":92,"integrity":"sha512-HlIhio7mj816tuTtzrD0epwRuKoOhjpQyxRcp9vNVrW+UcXYg7GOVtwlUtHGrHQvUoBIImLLX4cerwTD5UZlUw==","signatures":[{"sig":"MEUCIQCJeJfnPERwZSxgQULZXnmyAspWQ979tueMIJq2arVTHAIgcpghWn8DrPEvoJlNbUsK66g3wNGOU3nz+YaBaAYcas4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206450},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"0b06b87e6b27423d9f24ea5206e16ff19afc66f4","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"10.5.0","directories":{},"_nodeVersion":"20.12.2","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","stacktrace-js":"^2.0.2","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.5_1768260475590_0.11566313909791637","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@pihanga2/core","version":"0.3.6","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.6","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"47a804f6a2f53c9b22bbd1aa6f11633f9380f28d","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.6.tgz","fileCount":97,"integrity":"sha512-BRTQJiPH8zkutOLd5HujemeW/WekOty0qx0pBXTsoExBTw73sctIUoOl9E6T2w8Vhu10zJVurfEqVB5pS1wXTw==","signatures":[{"sig":"MEYCIQCFYO3SWGIj7nyEbZopXLds7LmIDXJ2nRRQTHVZS5jhawIhALLJo93FlSEuFMhrYrkfJ37NQw0iPCySIbnegjo59zSu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":207110},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.6_1768711659638_0.8373319526185738","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@pihanga2/core","version":"0.3.7","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.7","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"23141379d54ba34be62f5dabe2aa38ba74deec1b","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.7.tgz","fileCount":97,"integrity":"sha512-9wXTC9eoL3FEUeh3PGTZpqmoO82nUizJlY9P6XTrne90p53Yh+QxWdADrnxvWIMHM4uYnVItRaY2Nk8vwnohyQ==","signatures":[{"sig":"MEYCIQDZGXzxY+fiz2S7I+kf2YasluBJMUm3PAk4UEzqLj8a4AIhALEd4uTuEzEO84/QXFCclVCn3gsZ2Pdkdr34TzZNfM+C","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209373},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.7_1771285954291_0.7301721574562186","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"@pihanga2/core","version":"0.3.8","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.8","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"978c6ef1f2395923755a31ba30acf307c235c1f9","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.8.tgz","fileCount":98,"integrity":"sha512-Kg8NNIl/pyGfjRBAIPOLtK2nJrxuPOsxME54P7gBxYRDUUY3JS4JY8UU5i9X3zfae0W7efUFEO74V23Xi1d8Nw==","signatures":[{"sig":"MEUCIBQz1WAQriNz3hw8d57YT/u6oCERgZ2jCktbffOznj3mAiEAuaS46NJUJHdDKX21nOrztNP0uQ8JdvIyLgITVO6GhKA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":226471},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.8_1773202061772_0.7793049002553665","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"@pihanga2/core","version":"0.3.9","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.9","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"5c232c88e6a3d65845ffb81292e4cb504048c2d5","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.9.tgz","fileCount":98,"integrity":"sha512-xQc8USxp0SrALBwjmxa49xaLyV4tJmEPsbN9ckt1buSCLRRHW0jDPhA1EsQIsBSZAmXeVEQ0NlFstKtTBctGmA==","signatures":[{"sig":"MEQCIFG3k5adVoKgydzYBncLkQ2wufgP1ReiBPnHevq4hadEAiBXbLY9uzV366b1U/IuoG03CZO+eAPesLy8XMmqhfJKLw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":237782},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.9_1775611168857_0.6144905901198416","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"@pihanga2/core","version":"0.3.10","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.10","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"6ff178a1d713a0f2b149f849a07c6339cca831aa","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.10.tgz","fileCount":98,"integrity":"sha512-tblawMvMiAIrlnBsGV/Sk0nZIdLnkQRMnMb7Xv7rWk/c5nWL2QesYessrUPkOtmrSWm+EfWJMrNXPaGMuvRgQw==","signatures":[{"sig":"MEYCIQCPFWDMmfG7RAYCA4va9iwA/1Ap+HfpMBrKkhgtOYI4OgIhAOduZeZjan8w7JWvRGg40AnAPacDP4zzP1MtwvP9i65Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":237750},"main":"./dist/index.js","type":"module","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.10_1775612330561_0.8847275338906673","host":"s3://npm-registry-packages-npm-production"}},"0.3.11":{"name":"@pihanga2/core","version":"0.3.11","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.11","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"6b169d8f98bc6b290b0d53e40225718300375a3e","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.11.tgz","fileCount":98,"integrity":"sha512-Me9Kz4K1LQUjcrlaZ9OAoIC5ejo4Z9vUAf+ejYZ2bIvD6xY6JGxCmZpScCjs9/55up7EKmJ93OKtsq8CSGALJg==","signatures":[{"sig":"MEUCIQDrdD/lII8QK3mwocKp00ag7vZRLgJjC4m7RT3+Nif/swIgd4swYJ71zOZLQEC6DYOZIbDsBH2tXQvxGUmHyeeMcmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":237931},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.11_1775614326820_0.6349470544785842","host":"s3://npm-registry-packages-npm-production"}},"0.3.12":{"name":"@pihanga2/core","version":"0.3.12","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.12","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"e493f4c098f7ec7376c59e7f59281867303f0f85","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.12.tgz","fileCount":98,"integrity":"sha512-+oHGFsJBEs7yGHzQHtvhI2Lx3C35YlXcHw+aLZAuRuCfXunl89l5q5O+gfbUwzoN+WOwbF9H83fLeNKuHiXr7w==","signatures":[{"sig":"MEUCIF6jmdJhV1aL6vBod19mF0Dn0J1cimtEuSGq3ltbiGk8AiEAlAjGdk9rt5jffF+PGJJHrCY9VogSbAKeiJeRsQLFgMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":239196},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.12_1775615359499_0.011247314532045971","host":"s3://npm-registry-packages-npm-production"}},"0.3.13":{"name":"@pihanga2/core","version":"0.3.13","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.13","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"6fa2b83475bca92dea9cefefa1f8aa37bcee9cc0","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.13.tgz","fileCount":103,"integrity":"sha512-5sxIfGcTaQXPu3+XrrWP5a0m37MmQcVKSEIRop9++GKc4Hhuo5zyClph93hyfZe3mDFwm8EdMUPpVn3AqQ4cBQ==","signatures":[{"sig":"MEUCIBbhNBOssJ7Efk0NPwxcR6lbbwRBNKuSvPy+o3Bd26PTAiEA2904OqhEJ6mLwAzExXpvK8Ldcot64r2jKbcUQSLfoOw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":253906},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.13_1775776709775_0.5759679612363167","host":"s3://npm-registry-packages-npm-production"}},"0.3.14":{"name":"@pihanga2/core","version":"0.3.14","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.14","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"9a523d63cf68f93265b59fb8c46cb77483939a23","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.14.tgz","fileCount":103,"integrity":"sha512-jc6r/1mRm8XPQBkBFEo0R6ejM29+XMiUeY2Lrw0K2CHp0d3iL++QLpAyPbCbanqmArKcxXoP6IrLalorRKX/tQ==","signatures":[{"sig":"MEQCIBE28Mf4I9Ed1kcE0HLMCBr5ouD7XxFsqJmklCDKpPPnAiBTbu2M6tOT9ICeoHcg/qtsEhKcH4KtYeDurI/dK9o7yQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":254583},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.14_1776994454084_0.6183140743574822","host":"s3://npm-registry-packages-npm-production"}},"0.3.15":{"name":"@pihanga2/core","version":"0.3.15","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.15","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"277add10acb914c7c627f3403444daf1ebcf9a05","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.15.tgz","fileCount":98,"integrity":"sha512-0sq5K4xzWB0g8kYefMUJRYYST5n9WSYVdib3r3b0S9uvQpDyZ4/Kr6K6dqMAN+IkpaLCchuAVycMOW7EfbCvQg==","signatures":[{"sig":"MEQCIGMgsEaPii+If2bYNkwj+z4/QfCJxU+VC/ipM6X4FIASAiAbckKdA31mMEvaBmirf/KrA1FVnnBZf6nDGm2jUn6Xxg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":255244},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"479641ee4cd33029b1d1430c2f9fdb04645cbbf6","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","publish":"npm publish --access public","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","stacktrace-js":"^2.0.2","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.15_1777966944841_0.41819289242431035","host":"s3://npm-registry-packages-npm-production"}},"0.3.16":{"name":"@pihanga2/core","version":"0.3.16","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.16","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"2da6d9fab3e6cc8f1c78532de496cf6085387c2e","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.16.tgz","fileCount":98,"integrity":"sha512-2BdzZrqoFKeccHZ5rYffvZhp0rOBpWm7oX7/AmaTEBaYGRYWpP9nqAfkoW6y3qQglEd8JQcKGB3tRauiqiJkxw==","signatures":[{"sig":"MEUCIDMVl3l+HpSfqbih013xL3gAvQm8wKoLUKFUASgMmUSUAiEA9LwuNCYAoWO+kOadl6ZdQQhm8JolMDQ1CBL2s6lxVNQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":255244},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"479641ee4cd33029b1d1430c2f9fdb04645cbbf6","private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","publish":"npm publish --access public","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","stacktrace-js":"^2.0.2","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.16_1777966990536_0.5542844629323216","host":"s3://npm-registry-packages-npm-production"}},"0.3.17":{"name":"@pihanga2/core","version":"0.3.17","keywords":["pihanga","module","library"],"author":{"name":"max.ott@data61.csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.17","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"60c1f6505a07a15fed795197c020f3665fbddd5d","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.17.tgz","fileCount":103,"integrity":"sha512-JTW1MUOVO7Vgrd4b/7/5l22kxJpz2k+tB7AHV0v7kBIrJm6cH9zcgTk99i754AfAwEiABk0nDzK0Q4NoqwwmsQ==","signatures":[{"sig":"MEUCIQCNFzkNio4VNaUXp8o6VTBC+gsE7N/G4QPzCgp+GEx+WAIgSSDMRa8S9/4t4m7WrxEW/DuSGyDRQp5F3vHG3jJZ3qo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":255833},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"private":false,"scripts":{"docs":"yarn typedoc","build":"tsc --build && typedoc","prettier":"prettier --write .","test:run":"vitest run","test:watch":"vitest","build:watch":"tsc --build --watch && typedoc","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.11.3","vite":"^5.0.4","jsdom":"^21.1.0","tslib":"^2.6.2","eslint":"^8.0.0","vitest":"^0.34.6","typedoc":"^0.26.4","prettier":"^2.7.1","typescript":"^5.0.2","@types/node":"^17.0.35","react-redux":"^8.0.1","@types/luxon":"^2.3.2","@types/react":"^18.0.15","vite-plugin-dts":"^3.6.4","@microsoft/tsdoc":"^0.14.1","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","prettier-config-nick":"^1.0.2","vite-plugin-progress":"^0.0.7","@testing-library/react":"^14.0.0","eslint-plugin-prettier":"^4.2.1","eslint-config-react-app":"^7.0.1","rollup-plugin-visualizer":"^5.10.0","@rollup/plugin-typescript":"^11.1.5","@testing-library/jest-dom":"^5.11.4","@testing-library/user-event":"^14.2.5","rollup-plugin-typescript-paths":"^1.4.0","@types/testing-library__jest-dom":"^5.14.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.17_1778456325825_0.3628187376184624","host":"s3://npm-registry-packages-npm-production"}},"0.3.19":{"name":"@pihanga2/core","version":"0.3.19","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.19","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"d960978a05925ec394cf2243f884de98d6d80aff","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.19.tgz","fileCount":221,"integrity":"sha512-Z0WFE+gqbVPu5uYUGZkz18raKD4QQmwqgyvEzrLUazDbVK8wiCQ5VpjCVyGSTrXiH/P38bZtQdP0Wu8vXAcGqw==","signatures":[{"sig":"MEUCIE9NnVfMRtTh0J2mZl3iAqcSGVxDBdcztlMuv5pS/GhuAiEAoNNr0pehOg7ro9ie50YA0zkW/l8wipL8PAvcPsuN+CA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1481072},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"e0adffcf21af7c68504bcf21df376c07eeac8b06","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^21.1.0","react":"^18.2.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.26.4","prettier":"^3.0.0","react-dom":"^18.2.0","@eslint/js":"^9.25.0","typescript":"^5.5.0","@types/node":"^20.0.0","react-redux":"^9.1.0","@types/react":"^18.0.15","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^14.0.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.19_1782872838379_0.8860801065139288","host":"s3://npm-registry-packages-npm-production"}},"0.3.20":{"name":"@pihanga2/core","version":"0.3.20","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.20","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"76f71f3caa32cb89216f2d4838a7b8a5c3a22cd7","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.20.tgz","fileCount":223,"integrity":"sha512-zPrhKA66RNbLE+74BnxCDnKKtDYOXfPOVL+i4pC9GjdLlrX7xMIiSvvKtLWuhAJf3oJlaHOYFQkSqJG7iCyS0w==","signatures":[{"sig":"MEUCIFtpCCo87ub3YBvUhlIMEKNc2FUqzwXnoUaQXSKj4qkyAiEA23TZaTWvqDgZRmBQzLv2yIoHgOYck4QWWpFXne5prik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1684980},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"7ff90be1b4cca10c252ed1780681c39fb2cd0369","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^21.1.0","react":"^18.2.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^18.2.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.1.0","@types/react":"^18.0.15","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^14.0.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.20_1783146335838_0.12242409543822252","host":"s3://npm-registry-packages-npm-production"}},"0.3.21":{"name":"@pihanga2/core","version":"0.3.21","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.21","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"1a0394432f17a15a74f8709e184d39172062c91a","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.21.tgz","fileCount":226,"integrity":"sha512-BPq20naO8K07oHSLU39/8SN0o6n6NVtKip/kjD15ub8aP3Sk9bxWSMN6AQ6g6OhBSEX7cWZ/HOibuAnv7b+jhQ==","signatures":[{"sig":"MEUCIQCt46wSwKCpYxcPcn6DY7mjq+oljvICi75W0ws3+WlRcQIgZrd4E+v1qgOeU88tIcC5MMkjP0BmUQrB7xPX6mNV4K4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1747715},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"87b44d8e705b3e06c9cd6c90e43bd6bc7f71808b","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","deep-equal":"^2.2.3","stacktrace-js":"^2.0.2","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^21.1.0","react":"^18.2.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^18.2.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.1.0","@types/react":"^18.0.15","@types/react-dom":"^18.0.6","@types/deep-equal":"^1.0.4","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^9.2.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^14.0.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","react-redux":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.21_1783577175803_0.24971756553831725","host":"s3://npm-registry-packages-npm-production"}},"0.3.23":{"name":"@pihanga2/core","version":"0.3.23","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.23","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"f64ea4a8d999e779029d6e099b0b1b076536d95c","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.23.tgz","fileCount":223,"integrity":"sha512-robBxt4uHv/XZGazyFVzk+1VFsEKcdpBw25FSwwD26q2BU16imD2Yh/y+nxfEArPGgzgTwHtLmpfr4nsoOCAHg==","signatures":[{"sig":"MEYCIQCKu+5arKw4pKI2XCnM4L21vF0vR9oU+U+lju8QgRp80AIhAPf3Dgq1MjjL4SIYmZMgmmvQjvqUSSrpb3h0wa1w6obv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1951658},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"21632d6252cf82197c5b19f6f19871b6d69b4290","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.23_1784174344159_0.011211958651683673","host":"s3://npm-registry-packages-npm-production"}},"0.3.24":{"name":"@pihanga2/core","version":"0.3.24","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.24","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"7d8cf9b679b536454ff3aa5bbeba604f4e09e5c2","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.24.tgz","fileCount":225,"integrity":"sha512-/6AMjpDL3AHcZAfuXEKnnO5ZEucPzON+Pzz9eHZ5JM2EJ5E0ys36Ru1scl6/f1NVUVPT+VRzEvANFuJO3Puq/A==","signatures":[{"sig":"MEQCIHDXzdNHfY+i6VGuX9KvF7QG76HqSTJ+AbtAp4+yoWAUAiB/EFQL8V8NVAZdMKKka9ERTicCw6gQwzQukIWJzZ4u+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1992218},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"7dcd03e797ad073bd6f5166c08449a3952c8a978","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.24_1784526834331_0.948985974050403","host":"s3://npm-registry-packages-npm-production"}},"0.3.25":{"name":"@pihanga2/core","version":"0.3.25","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.25","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"69350293b619e18dcfe58830eaa726b536736399","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.25.tgz","fileCount":230,"integrity":"sha512-y5wdMq8nhnPprTJwWp20OztqGSg+gfdmGmQ8HIn3VskYfARnxIzS+EQL+Sm3gsIWyvLX7v+sUn9bPfnV/Tcldw==","signatures":[{"sig":"MEUCIFeaGkeNbblGloWxCgfK28XoErRPZbxnQGbe/GvwXwy/AiEA20Y2KvdiAaTV+eQUr7DbMiB9TPO8A8CzQHH9NoimffM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2063891},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"7afcb04b506b975138a349272e2005106714ebc9","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.25_1784856566271_0.2574351492111293","host":"s3://npm-registry-packages-npm-production"}},"0.3.26":{"name":"@pihanga2/core","version":"0.3.26","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.26","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"529aafdbcc9b1d4bf61dbf79c9184067a6963bb7","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.26.tgz","fileCount":230,"integrity":"sha512-2m6QhmRJZj5hoY7JCSjP08nW9SLvmLc0hIGZ2Ltto5PsbK+U6WXl2ZdLIpb57Ge7JdN/aRGQrUtbykZ0j1bFVA==","signatures":[{"sig":"MEUCIDubbsQOB9R+aIJ5j2ifpn30WS/T5IBKE2kOAHJ0fy1HAiEAo3y6GhC6OQlpr/WKOlGWx9SnGpFZ9/BEeBsDKM5K3ak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2065040},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"f7b50cb13b38829047dc4edeb2bfeac0928de01a","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.26_1785045985351_0.3497997160863451","host":"s3://npm-registry-packages-npm-production"}},"0.3.27":{"name":"@pihanga2/core","version":"0.3.27","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.27","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"954fcc0a6778c1fdb90b87b9541a694792dbd153","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.27.tgz","fileCount":231,"integrity":"sha512-Q1E+f9wFwAGDjNoC6uM4qLoSv3Kh5BOr/hpNirWDu7XgzwBO6ToJOzBl4i/kAq3xVWI28GLnjp/kHjv8EgBL5A==","signatures":[{"sig":"MEUCIH2qPA3UroYNHyFlqeNAhmxiXwK3mbw6hd7rbXk8YB+ZAiEAupkOOyz3WjTHlTkSofMEKqtgZrxX4x/8/ptHnt31M00=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2089799},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"1cca34ff293db0aeb4f8461ce47d84da420d156b","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.27_1785234680953_0.47815509737161754","host":"s3://npm-registry-packages-npm-production"}},"0.3.28":{"name":"@pihanga2/core","version":"0.3.28","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.28","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"06dad11d0224a1bef711120557355d2bea3f7bfe","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.28.tgz","fileCount":238,"integrity":"sha512-RFSPK1x9GGs6Ww9HsRvdVfgMHC2IfqJQmu0P6sazkEcO2sIvscsRY9Kvgh4RG3PDXK0EaLmkDUHGZqdHrnCk6A==","signatures":[{"sig":"MEQCIDLK1WSdCZN4IGq1LUvuWlCjaXCB7K3FanuShd66YlCsAiAFrobAYjQaNPegO9dOLrF01aroNLLadcHrYUlMWZi3/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2115615},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"7c6bbbc3fc6ee0cbcaf27378019ced536635e2f3","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.28_1785385195679_0.8948986655981275","host":"s3://npm-registry-packages-npm-production"}},"0.3.29":{"name":"@pihanga2/core","version":"0.3.29","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.29","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"fab7fd596a12a901feb38d6fa4c27689a4b96331","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.29.tgz","fileCount":238,"integrity":"sha512-4FWL1dBDre7ox1hlJWTXFwLIXgbhuNYJfGWlDaPtBfHUI0s6vvz+AZ+jFTSKnI0fUC02J9QM/I58brJgqfTtdQ==","signatures":[{"sig":"MEUCIQCiZOY835s2qroJ9Lu/HZmUEbWjYAqAVBr9RFA7GR2LcgIgEpaKJwUMSSHjRaaDGfZJanu+SkVmgsg+54bOz3qQoQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2137556},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"386fe95c493a01589d58fad3c3a6778015633e9e","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.29_1785387432190_0.6660292675867838","host":"s3://npm-registry-packages-npm-production"}},"0.3.30":{"name":"@pihanga2/core","version":"0.3.30","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.30","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"df864a0103e06fa863da5f6dd4e1e88511f7fe7f","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.30.tgz","fileCount":238,"integrity":"sha512-fZjGGtuoxoiCh4bXb5SiBxVBJrJfkbvtpETQWrQpAUvqna7+uJk+ukWIzPD5hZVHvBHtp+52G+FAy//QQ2GMGw==","signatures":[{"sig":"MEQCIF0gWXzEmNaQ3yGRDRyQ2zVlhtk2fnjwMuImyXjB9u5FAiAiAxvV4goU58nIv9zmiIWKHHnPL+ZmI+Fz8SP9tSC2eA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2149803},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"a4ffde8071226692c0838bb10a3d705368440f6f","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.30_1785748357370_0.7289211924809844","host":"s3://npm-registry-packages-npm-production"}},"0.3.31":{"name":"@pihanga2/core","version":"0.3.31","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.31","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"4eaf225f4df67abac1520afbaa40be1dcd014512","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.31.tgz","fileCount":238,"integrity":"sha512-wrptws5ZJK4mAZ/N3sgEhVFLE+s4IQqws0EpjjFWI8R3Y4cr11eF30+z0xMFjwv8ZyiSG1m1b29jhVVBgsu2hQ==","signatures":[{"sig":"MEUCIQD3fYKw/jswSl/2hZW8mTJZhBroE9dvSCaxzcX0X5jGtQIgUcpb1Tu1zVLj4eQpBA4xBZyNxmKOPUEcOKXE+m01/p0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2149803},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"dde43aff9bea953c5293b58137ec16b3deacc003","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.31_1785750135225_0.5939084023767605","host":"s3://npm-registry-packages-npm-production"}},"0.3.32":{"name":"@pihanga2/core","version":"0.3.32","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.32","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"ed3853d9c2218ce97d40a18d1818d7b34b9a0995","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.32.tgz","fileCount":240,"integrity":"sha512-qgtWaEmZBsviudFyJA+s0Dz9NqZO1IRcAb4nrN6w+eJuBPj2sJff/Fx2yTJxfNUYxkNtOKFll/QVcFoYcOP5Ww==","signatures":[{"sig":"MEYCIQC06eMWKo74VOb7GH9MDnrUX3iHW821+MmaF2U/6D7blgIhAJMTv27GOz4BvnNyp1KN862LaA0VBmv3XoJV0SUeunsK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2219372},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"85e4396590ca04e09e7232851ec0a1fd69b5b8d1","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.32_1785986053235_0.011991275158143688","host":"s3://npm-registry-packages-npm-production"}},"0.3.34":{"name":"@pihanga2/core","version":"0.3.34","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.34","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"d8874c718f3ba86138622d3eadcfe5c416d2f818","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.34.tgz","fileCount":241,"integrity":"sha512-9wSQLl/lzpjo4bpfxm2fsvySiO8DBP/xz21Ez9EAOhKTTmTefEbMvlmhkcLIftV0UB+5vQ9pxb8SQnzX+REF5A==","signatures":[{"sig":"MEYCIQCWW1rwnHqoDjnBP3wV25ANG7pEGfdgVUjeX7JYhsETvwIhAJUFz8Oad0U1aYanyt2lOwuPDfh8GqWJnW50skjFxnBQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2235267},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"90f2cd6e6b0326e30ce2c5b422af02a917a95d8f","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.34_1786056839225_0.3489237561237679","host":"s3://npm-registry-packages-npm-production"}},"0.3.35":{"name":"@pihanga2/core","version":"0.3.35","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.35","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"f27e32dd17f2d31c7022340a77fdcbe272e421ee","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.35.tgz","fileCount":244,"integrity":"sha512-NHmir/FC1a2kmONzjtbRbEb05147TixWTcROY1Ru49BUO8SO9VOTpsg5hG0vxdLU4HD/d9hwKU6TvDhBpMrVUQ==","signatures":[{"sig":"MEUCIQCgeQQoLuGDSOaaUcIwULcI1oHbyVFal3cGVQW9K+QXCgIge9g705nI6nH2LXmRQVTvXXU5QgicVVv9FboHF5zTj3M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2278561},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"d8c72f1563f60ed5a2a5629f895c84125a1fd478","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.35_1786344752882_0.37464755909155434","host":"s3://npm-registry-packages-npm-production"}},"0.3.36":{"name":"@pihanga2/core","version":"0.3.36","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.36","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"8ce8a4cbb15581e338835361fb3d2845adf50765","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.36.tgz","fileCount":244,"integrity":"sha512-ZG8tB/Z47tfsXrlIZiltcDSlaBh5VEUtaR7h74Hgdo8lu5mcg/+YOpOtlKAYduZXVNqfHYh4omckgKW2Rp503g==","signatures":[{"sig":"MEUCIAOwmdlxu1GjcCmUmqHSkh+DRRRkuFNQ+V7S/on7AHMwAiEA2QXr9miHEQ8USuGalSCo6DfrUn9VdxF2sQvVpARWfZs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2278865},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"gitHead":"67fe94e82cba9544f1b05ff07ae0fff66cf78c8d","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"tsc --build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"tsc --build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.36_1786345966011_0.46346236249232264","host":"s3://npm-registry-packages-npm-production"}},"0.3.37":{"name":"@pihanga2/core","version":"0.3.37","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.37","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"3c48c68f1d4adb7cbe5efb9c444535fffdf29959","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.37.tgz","fileCount":245,"integrity":"sha512-B5vF8+1L2iAbC1BJExMQymRcudJXrcxz5bHlmqDQ0YCF5K19SqakeA4yvP2C2SZGN5CNjtQgXgPS2fl87rxuHQ==","signatures":[{"sig":"MEUCIQD4ps7SA8bJJuj1TZgVNTTqMdWwQH3MUgwmNCuyz5Sn5AIgQ+PO8IlxZoe7NpOZedI2UAGPmrBNfXAtOoTXaHpeMss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2237035},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"},"./rest/mock":{"types":"./dist/rest/mock.d.ts","default":"./dist/rest/mock.js"}},"gitHead":"2b62cb3ca554a80cef050a457b20475263c85ffb","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"vite build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"vite build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","vite-plugin-dts":"^4","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@vitejs/plugin-react":"^4","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.37_1786926744015_0.46861239027820667","host":"s3://npm-registry-packages-npm-production"}},"0.3.38":{"name":"@pihanga2/core","version":"0.3.38","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.38","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"da422989491c3e7dde1c63eb622f8d77db66ff45","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.38.tgz","fileCount":246,"integrity":"sha512-ee70nVF+qwcoM+ATWiGH1VW1q1RvMASClyizYUFQU6ZY9JLEe5c+UlLm6W/aYPg775Z49Vm8HKqRv4gwB32/Zg==","signatures":[{"sig":"MEQCIEJh0S3DA87mc/Rd2HFKCqltS7N7OEatz54vOdqPoOWHAiAS3vfRKQbcewttcW+0k6DrKb+Vc2TErow8Rk0d1chw7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2271501},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"},"./rest/mock":{"types":"./dist/rest/mock.d.ts","default":"./dist/rest/mock.js"}},"gitHead":"b79c30b2b9b27798d70c25ee4cf7d9748507940f","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"vite build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"vite build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","vite-plugin-dts":"^4","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@vitejs/plugin-react":"^4","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.38_1787727022540_0.3085742918212693","host":"s3://npm-registry-packages-npm-production"}},"0.3.39":{"name":"@pihanga2/core","version":"0.3.39","keywords":["pihanga","module","library"],"author":{"name":"max.ott@csiro.au"},"license":"MIT","_id":"@pihanga2/core@0.3.39","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"dist":{"shasum":"1caefaf43c7097a282a0a25057f29da0305265a9","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.39.tgz","fileCount":246,"integrity":"sha512-BJhGF7ErMHn1XWC1fmqwDsX+vdEaOX3/+L+WKDG/qykCoqmEq5BukVQ8P5QMArW1v5H/j1TOy/nYiO/YFxfr3A==","signatures":[{"sig":"MEQCIFI8kXs1cEHo3BSxfQiIoldY8/fgOyzpoADf7hfUOx1zAiBCWRksngQt2u1iyebtkWWEFA27dE63vMJ3CMBDPtscsA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2283508},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"},"./rest/mock":{"types":"./dist/rest/mock.d.ts","default":"./dist/rest/mock.js"}},"gitHead":"65e7e9b72b024753a6d4eebba61a8ef105e425fa","private":false,"scripts":{"docs":"yarn typedoc","lint":"eslint src","build":"vite build && typedoc","lint:fix":"eslint src --fix","prettier":"prettier --write .","test:run":"vitest run --passWithNoTests","test:watch":"vitest","type-check":"tsc --noEmit","build:watch":"vite build --watch","test:coverage":"vitest run --coverage","prepublishOnly":"yarn build"},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"_npmVersion":"11.6.2","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"immer":"^10.1.1","tslog":"^4.9.3","history":"^5.3.0","stacktrace-js":"^2.0.2","fast-deep-equal":"^3.1.3","@reduxjs/toolkit":"^2.2.6"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"rest":["dist/rest/index.d.ts"],"types":["dist/types.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.1.0","react":"^19.1.0","tslib":"^2.6.2","eslint":"^9.25.0","vitest":"^1.0.0","globals":"^16.0.0","typedoc":"^0.28.0","prettier":"^3.0.0","react-dom":"^19.1.0","@eslint/js":"^9.25.0","typescript":"^5.9.0","@types/node":"^20.0.0","react-redux":"^9.2.0","@types/react":"^19.1.0","vite-plugin-dts":"^4","@types/react-dom":"^19.1.0","typescript-eslint":"^8.30.1","@vitest/coverage-v8":"^1.0.1","@testing-library/dom":"^10.4.0","@types/stacktrace-js":"^2.0.3","@vitejs/plugin-react":"^4","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.0.0","@testing-library/user-event":"^14.2.5"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"_npmOperationalInternal":{"tmp":"tmp/core_0.3.39_1788336008633_0.831008355572499","host":"s3://npm-registry-packages-npm-production"}},"0.3.40":{"name":"@pihanga2/core","version":"0.3.40","private":false,"type":"module","license":"MIT","author":{"name":"max.ott@csiro.au"},"publishConfig":{"access":"public"},"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","default":"./dist/types.js"},"./rest":{"types":"./dist/rest/index.d.ts","default":"./dist/rest/index.js"},"./rest/mock":{"types":"./dist/rest/mock.d.ts","default":"./dist/rest/mock.js"},"./rest/*":{"types":"./dist/rest/*.d.ts","default":"./dist/rest/*.js"}},"typesVersions":{"*":{"types":["dist/types.d.ts"],"rest":["dist/rest/index.d.ts"],"rest/*":["dist/rest/*.d.ts"]}},"keywords":["pihanga","module","library"],"scripts":{"docs":"yarn typedoc","build":"vite build && typedoc","build:watch":"vite build --watch","prepublishOnly":"yarn build","lint":"eslint src","lint:fix":"eslint src --fix","type-check":"tsc --noEmit","prettier":"prettier --write .","test:coverage":"vitest run --coverage","test:run":"vitest run --passWithNoTests","test:watch":"vitest"},"dependencies":{"@reduxjs/toolkit":"^2.2.6","fast-deep-equal":"^3.1.3","history":"^5.3.0","immer":"^10.1.1","stacktrace-js":"^2.0.2","tslog":"^4.9.3"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","react-redux":"^9.2.0"},"devDependencies":{"@eslint/js":"^9.25.0","@testing-library/dom":"^10.4.0","@testing-library/jest-dom":"^6.0.0","@testing-library/react":"^16.3.0","@testing-library/user-event":"^14.2.5","@types/node":"^20.0.0","@types/react":"^19.1.0","@types/react-dom":"^19.1.0","@types/stacktrace-js":"^2.0.3","@vitejs/plugin-react":"^4","@vitest/coverage-v8":"^1.0.1","eslint":"^9.25.0","globals":"^16.0.0","jsdom":"^24.1.0","prettier":"^3.0.0","react":"^19.1.0","react-dom":"^19.1.0","react-redux":"^9.2.0","tslib":"^2.6.2","typedoc":"^0.28.0","typescript":"^5.9.0","typescript-eslint":"^8.30.1","vite-plugin-dts":"^4","vitest":"^1.0.0"},"gitHead":"13e2439de98accd3a59e30c0d9815fd0df0dc916","_id":"@pihanga2/core@0.3.40","description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-4biPSkhB5XPhZkE4BHsE3voLlNzPs6+aMAqh1YYnovX+6B51V0LB2KBO18nHVjQ7HUp8iOSCynAIq7Iaa7sAUg==","shasum":"03bc1f950d0859c5595ca8215dd04cf56978b3c8","tarball":"https://registry.npmjs.org/@pihanga2/core/-/core-0.3.40.tgz","fileCount":246,"unpackedSize":2287038,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCKDxaAuxstQGiSmUAXZCQF98DkZjhQCUgacc7c5V3FlgIgMMpXrM9v0cHfg5A0RV52GbQchdIC2eA1s2FNBdkUYo8="}]},"_npmUser":{"name":"maxott","email":"max@winlab.rutgers.edu"},"directories":{},"maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core_0.3.40_1788383743347_0.06193101931380052"},"_hasShrinkwrap":false}},"time":{"created":"2024-07-09T04:34:38.237Z","modified":"2026-09-02T21:15:43.671Z","0.2.0":"2024-07-09T04:34:38.548Z","0.2.1":"2024-07-14T05:52:52.200Z","0.3.0":"2024-08-06T01:36:51.711Z","0.3.1":"2024-09-05T01:09:50.497Z","0.3.2":"2024-11-12T00:20:42.281Z","0.3.3":"2025-08-22T00:34:58.406Z","0.3.4":"2025-10-12T01:36:23.820Z","0.3.5":"2026-01-12T23:27:55.772Z","0.3.6":"2026-01-18T04:47:39.771Z","0.3.7":"2026-02-16T23:52:34.444Z","0.3.8":"2026-03-11T04:07:41.908Z","0.3.9":"2026-04-08T01:19:29.014Z","0.3.10":"2026-04-08T01:38:50.730Z","0.3.11":"2026-04-08T02:12:06.998Z","0.3.12":"2026-04-08T02:29:19.640Z","0.3.13":"2026-04-09T23:18:29.917Z","0.3.14":"2026-04-24T01:34:14.261Z","0.3.15":"2026-05-05T07:42:24.990Z","0.3.16":"2026-05-05T07:43:10.677Z","0.3.17":"2026-05-10T23:38:46.004Z","0.3.19":"2026-07-01T02:27:18.582Z","0.3.20":"2026-07-04T06:25:36.010Z","0.3.21":"2026-07-09T06:06:16.001Z","0.3.23":"2026-07-16T03:59:04.331Z","0.3.24":"2026-07-20T05:53:54.508Z","0.3.25":"2026-07-24T01:29:26.496Z","0.3.26":"2026-07-26T06:06:25.518Z","0.3.27":"2026-07-28T10:31:21.108Z","0.3.28":"2026-07-30T04:19:55.824Z","0.3.29":"2026-07-30T04:57:12.360Z","0.3.30":"2026-08-03T09:12:37.556Z","0.3.31":"2026-08-03T09:42:15.387Z","0.3.32":"2026-08-06T03:14:13.398Z","0.3.34":"2026-08-06T22:53:59.598Z","0.3.35":"2026-08-10T06:52:33.056Z","0.3.36":"2026-08-10T07:12:46.179Z","0.3.37":"2026-08-17T00:32:24.166Z","0.3.38":"2026-08-26T06:50:22.752Z","0.3.39":"2026-09-02T08:00:08.797Z","0.3.40":"2026-09-02T21:15:43.508Z"},"author":{"name":"max.ott@csiro.au"},"license":"MIT","keywords":["pihanga","module","library"],"description":"> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3) > (noun) window, sliding slab of the traditional window of a wharenui.","maintainers":[{"name":"maxott","email":"max@winlab.rutgers.edu"}],"readme":"# Pihanga - Framework for dynamically extendible React apps\n\n> [pihanga](https://s3.amazonaws.com/media.tewhanake.maori.nz/dictionary/38608.mp3)\n> (noun) window, sliding slab of the traditional window of a wharenui.\n\n## Motivation\n\nMost of the web frontends we are usually building are for a rather small user base to better use or maintain rather complex backends. Many of those systems start out small but over time expand in various directions by different teams using different technologies. Most likely a common scenario for many business support services.\n\nWe use micro services and similar technologies to avoid any unnecessary dependencies in the backend, but our users, understandably want a unified UX on the frontend.\n\nThis project is an attempt to achieve that while supporting the independent development of the various parts and components surfacing specific backend capabilites. In other words, we want to minimize the amount of code changes when adding new functionality while still supporting an integrated UX experience.\n\nLet me explain that with a trivial example. Let us assume we just delivered an internal car booking service for a company. After a successful launch a different part of the business in charge of managing the truck fleet wants to add their service to it, as well. Their backend is very different and the original frontend team has already been dissolved. We want to make it easy for the \"truck\" team to independently develop the truck specific UX components as well as extension points to existing generic functionality, such as search, without needing to modify the car components. Frontend integration should be as simple as adding an additional script link to the index page.\n\n## Approach\n\nWe have found the React/Redux approach to be extremely useful in managing dependencies between UX components and cleanly separating state synchronisation between front- and backend. In addition, a purely functional approach to component design not only leads to much cleaner code, but also simplifies testing considerably. We can visualize this as:\n\n![Standard Redux](docs/assets/standard-redux.png)\n\nWith the positive lessons learned from defining a web page as pure functions over a single state structure, we wanted to see if we can push this further and essentially derive the above function _ui()_ itself as the result of another function over the _UX_ state object.\n\nIn order to do that, we need to define a _construction_ model for a web page. In _Pihanga_, like in other frameworks, a page is composed of hierarchically nested **cards**. Or, in other words, a _tree of cards_ with the root of the tree being the entire page frame. Each card can contain normal web components as well as other cards. Current practice will not only select the card\nto be embedded in another card, but also declare all it's properties. For instance:\n\n```\nexport const FooCard = (props) ==> {\n  ...\n  return {\n    <>\n      ...\n      <BooCard p1={...} p2={...} ... />\n      ...\n    </>\n  }\n}\n```\n\nAnd that's where _Pihanga_ departs from current practice. Instead of a declaring the exact card to embed, we employ a _late binding_ approach, where the embedded card is only identified by a locally unique identifier. The same code\nsegment as above in _Pihanga_ looks like:\n\n```\nexport const FooCard = (props) ==> {\n  ...\n  return {\n    <>\n      ...\n      <Card cardName=\"Boo\" />\n      ...\n    </>\n  }\n}\n```\n\nwhere `Card` is essentially a placeholder for a _Pihanga component_ defined separately.\n\nThe _Pihanga_ state structure, different to the _Redux state tree_, is a map between the `cardName` of a card and it's associated property list. In addition, the values in that property list can be queries (currently functions) over the entire _Pihanga_ state (all other cards) as well as the _Redux_ state.\n\nLet's demonstrate that on a simple app consisting of a frame-filling `page` card which will show one of two listing cards depending on the `showList` property in the Redux state which is expected to either contain `cars` or `trucks`.\n\nThe _Pihanga_ state structure is defined as follows:\n\n```javascript\nexport default {\n  page: AppPage({\n    title: 'Transportation Service',\n    subTitle: (_, ref) => ref('.', 'contentCard', 'title'),\n    contentCard: (state) => state.showList,\n    //...\n  }),\n  cars: Table({\n    title: 'Cars',\n    //...\n  }),\n  trucks: Table({\n    title: 'Trucks',\n    //...\n  }),\n}\n```\n\nand the `AppPage` card is implemented as follows:\n\n```javascript\nimport { Card } from '@pihanga/core';\n\nexport const AppPageCard = ({\n  title,\n  subTitle,\n  contentCard,\n  //...\n}) => {\n  return (\n    <div>\n      ...\n      <Card cardName={contentCard} />\n      ...\n    </div>\n  );\n};\n```\n\nIn this simple example the mapping between `<Card cardName={contentCard} />` and the actual card embedded is determined by the\nvalue bound to the `contentCard` property of of the _Pihanga state_ of the card (`page`) embedding it. That value can either be a\nconstant (`title: 'Cars'`), a reference to the property value of another card (`... => ref('.', 'contentCard', 'title')`), or a function on the current _Redux_ state (`... => state.showList`).\n\nSimply changing the value of `showList` to a different value, will not only change what card is being embedded inside `AppPageCard`, but also the `subTitle` that card is displaying. Beside the dynamic nature of this approach, we can now also\ndevelop 'template' cards which can dynamically be adapted to various different uses **without** having to change their internals.\n\n---\n\n# @pihanga2/core\n\nThe **core runtime library** for the [Pihanga](https://github.com/ivcap-works/pihanga) declarative, card-based UI framework for React.\n\nPihanga lets you build UIs by _registering_ self-contained **cards** — independently typed UI units with props, events, and Redux-backed state management — rather than composing a monolithic component tree. `@pihanga2/core` provides the registration engine, Redux store bootstrap, routing, and a typed REST-API helper.\n\n## Stack\n\n- **Language**: [TypeScript](https://www.typescriptlang.org/) ^5.0\n- **UI Runtime**: [React](https://react.dev/) ^18 or ^19 (peer)\n- **State**: [Redux Toolkit](https://redux-toolkit.js.org/) ^2\n- **Routing**: [history](https://github.com/remix-run/history) ^5\n- **Logging**: [tslog](https://tslog.js.org/) ^4\n- **Build**: `tsc` + [TypeDoc](https://typedoc.org/)\n- **Testing**: [Vitest](https://vitest.dev/) + [Testing Library](https://testing-library.com/)\n- **Linting**: [ESLint](https://eslint.org/) v9 (flat config) + typescript-eslint\n\n## Quick Start\n\n```bash\n# Install dependencies\nyarn install\n\n# Build (compile + generate docs)\nmake build\n\n# Run all checks: lint + type-check + tests (CI)\nmake check\n\n# Run tests in watch mode\nmake test\n\n# Publish to npm (builds first)\nmake publish\n```\n\n## Installation (as a library consumer)\n\n```bash\nyarn add @pihanga2/core react react-dom react-redux\n```\n\n## Core API\n\n### `start(initialState, inits?, props?)`\n\nBootstrap the Pihanga framework. Creates the Redux store, sets up routing, mounts the React root, and runs all registered initialisation callbacks.\n\n```ts\nimport { start } from \"@pihanga2/core\";\n\nstart(\n  { myDomain: { items: [] } },   // initial Redux state\n  [myCardsInit, myRestInit],     // array of (register) => void callbacks\n);\n```\n\n### `register(callback)`\n\nEnqueue a registration callback. If the framework is already running the callback is called immediately; otherwise it is buffered and flushed on `start()`.\n\n```ts\nimport { register } from \"@pihanga2/core\";\n\nregister((r) => {\n  r.card(\"page/main\", { cardType: \"shad/flex-grid\", ... });\n});\n```\n\n### `registerCard(name, parameters)`\n\nConvenience wrapper for `register((r) => r.card(name, parameters))`.\n\n### `registerCardComponent(declaration)`\n\nRegister a React component as a Pihanga card type.\n\n```ts\nimport { registerCardComponent, createCardDeclaration } from \"@pihanga2/core\";\n\nexport const MY_CARD = \"my/card\";\n\nregisterCardComponent({\n  name: MY_CARD,\n  component: MyCardComponent,\n  events: actionTypesToEvents(MY_CARD_ACTIONS),\n});\n```\n\n### `createCardDeclaration<Props, Events>(cardId)`\n\nType-safe factory that returns a helper function for declaring card instances:\n\n```ts\nconst MyCard = createCardDeclaration<MyCardProps, MyCardEvents>(\"my/card\");\n\nregister((r) => {\n  r.card(\"my-instance\", MyCard({ title: \"Hello\" }));\n});\n```\n\n### REST helpers — `register.GET | POST | PUT | PATCH | DELETE`\n\nSee the [REST Usage guide](docs/docs/guides/rest-usage.md) for full documentation.\n\n```ts\nregister((r) => {\n  r.GET<AppState, FetchAction, ResponseType>({\n    name: \"fetchItems\",\n    trigger: \"FETCH_ITEMS\",\n    url: \"/api/items/:id\",\n    reply: (state, content, dispatch) => {\n      dispatch({ type: \"ITEMS_LOADED\", items: content });\n    },\n  });\n});\n```\n\n### Routing\n\n```ts\nimport { showPage, onShowPage, onInit } from \"@pihanga2/core\";\n\n// Navigate\nshowPage(dispatch, [\"dashboard\"]);          // C4: correct signature — (dispatch, path[])\n\n// React to page change\n// C4: onShowPage(register, handler) — no path arg; receives full state on every navigation\nonShowPage(register, (state, action, dispatch) => { ... });\n\n// Run once on framework init\nonInit((action, state, dispatch) => { ... });\n```\n\n### Logging\n\n```ts\nimport { getLogger } from \"@pihanga2/core\";\n\nconst logger = getLogger(\"my-module\");\nlogger.info(\"Hello\", { key: \"value\" });\n```\n\n## Project Structure\n\n```\nsrc/\n├── index.ts          # Public API surface & PiRegister interface\n├── types.ts          # Core TypeScript types (PiCardDef, ReduxState, …)\n├── card.tsx          # <Card> component, usePiReducer hook, cls_f helper\n├── register_cards.ts # addCard, addCardComponent, registerMetacard, resolveCardType\n├── reducer.ts        # createReducer — Pihanga's Redux reducer factory\n├── redux.ts          # registerActions, actionTypesToEvents, createOnAction\n├── root.tsx          # RootComponent factory (Provider + Card tree)\n├── router.ts         # Hash/history-based routing (showPage, onShowPage, …)\n├── logger.ts         # tslog wrapper (getLogger)\n├── uuid.ts           # uuidv7 generator\n└── rest/\n    ├── index.ts      # Re-exports + registerGET/POST/PUT/PATCH/DELETE\n    ├── types.ts      # REST TypeScript types\n    ├── enums.ts      # ErrorKind, RestContentType\n    ├── get.ts        # registerGET implementation\n    ├── postPutPatch.ts # registerPOST/PUT/PATCH implementation\n    ├── delete.ts     # registerDELETE implementation\n    └── utils.ts      # URL template engine, fetch helpers\n```\n\n## Available `make` Targets\n\n```\nmake help            # Show all targets\nmake install         # Install yarn dependencies\nmake build           # Compile TypeScript + generate TypeDoc\nmake docs            # Generate TypeDoc only\nmake check           # lint + type-check + tests (CI gate)\nmake lint            # Run ESLint\nmake lint-fix        # Run ESLint with auto-fix\nmake type-check      # tsc --noEmit\nmake test            # Vitest watch mode\nmake test-run        # Vitest one-shot (CI)\nmake test-coverage   # Vitest with coverage report\nmake publish         # Build + npm publish\nmake clean           # Remove dist/, coverage/, docs/\n```\n\n## GitHub Actions\n\n| Workflow | Trigger | What it does |\n|---|---|---|\n| **CI** | push / PR → `main` | `make check` (lint + type-check + tests) |\n| **Publish** | push tag `v*` | `make check` → build → `npm publish` |\n\nSet the `NPM_TOKEN` repository secret to enable publishing.\n\n## REST API\n\nSee the [REST Usage guide](docs/docs/guides/rest-usage.md) for a complete guide to registering GET, POST, PUT, PATCH, and DELETE handlers, URL templates, auth context, error handling, and debugging internals.\n\n## License\n\nMIT © [CSIRO Data61](https://data61.csiro.au/)\n","readmeFilename":"README.md"}