{"_id":"@airma/react-hooks-core","_rev":"10-3963acac52e7922da33fd1e8c854db08","name":"@airma/react-hooks-core","dist-tags":{"latest":"18.6.0"},"versions":{"18.0.0":{"name":"@airma/react-hooks-core","version":"18.0.0","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.0.0","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"e9a9c2b3d3b15742bc0c3575cd30ec2df2f2d9c1","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.0.0.tgz","fileCount":4,"integrity":"sha512-sq9a4HikI+cYwvQEMymPkpn15JkFQepzr6/VxcpVxtYXcevB8+8teqgpi1HELtCKvhTVOcdilqzjiXpRpYn+mw==","signatures":[{"sig":"MEUCICtgPn5gXfQGNawKFo07PFw4u32nn1meoR+7IhlkNJFSAiEA7OSS5qmc9sXqwdo23DjJyFz5K+kX6dRyHanp7dhqsVU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10401},"main":"dist/index.js","gitHead":"a46a3ebab26444813a9d5554acfdc159913f8d00","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.0.0_1693707522737_0.8328953733099504","host":"s3://npm-registry-packages"}},"18.3.0-alpha.7":{"name":"@airma/react-hooks-core","version":"18.3.0-alpha.7","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.3.0-alpha.7","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"1d0872abdf34452585d315e51c78812b03a326d6","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.3.0-alpha.7.tgz","fileCount":4,"integrity":"sha512-fUOyd76BFhPJK62dUpBFffcO2aJ+c4ArXaVt2HT/+9KIoxiDsbFfT0LpUGy6Yr20SkPW7AmshhYuZSyfcDa+tg==","signatures":[{"sig":"MEUCIQCz4FRYsm4EFZPB4lmGvmLYvYBkJeZIzJckIGwPf2KXgwIgIok4KzaHQjAauE9ixHpEFZ5C73bLMlbbpUn+AmVzhMI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11908},"main":"dist/index.js","gitHead":"7bb45e156e2335884324c7a1009aad14ccc36f9e","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.3.0-alpha.7_1703314780341_0.07485022800963215","host":"s3://npm-registry-packages"}},"18.3.0-alpha.8":{"name":"@airma/react-hooks-core","version":"18.3.0-alpha.8","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.3.0-alpha.8","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"f6644f7050a4620f378a2e67a58c7ef008238195","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.3.0-alpha.8.tgz","fileCount":4,"integrity":"sha512-erA+RpIDlsBqQ7rdGg2cFm+2vvaSHWACvNi5NgoMThAkWpVRfppvMzO2MqB4A/v9dXBccx3tl0GmuoKkD4cIHg==","signatures":[{"sig":"MEQCIFb4OGIKujHgBPNj8Ptok9ZZamV+2ktVQrAigvkING8iAiBQKZftmdVgTTEKmP72jUmHWxXea/4bKj2U+kcrmgAtXQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11908},"main":"dist/index.js","gitHead":"ebc2c225db27091dd2329b36b358bea1308281af","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.3.0-alpha.8_1703561391047_0.4650613616193353","host":"s3://npm-registry-packages"}},"18.3.0-alpha.9":{"name":"@airma/react-hooks-core","version":"18.3.0-alpha.9","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.3.0-alpha.9","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"1e33abb1b51d5ee172e609ce433949253589b04a","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.3.0-alpha.9.tgz","fileCount":4,"integrity":"sha512-i8wxtb9Zs6GKy+35o4Mz9QeVVoppI3ks7MzWK5bnEKsJ897SVlC9PdkRU72nIq+fKekiltRKCMZs/Yj4uJSuAg==","signatures":[{"sig":"MEQCIA5mutAOIG5EwrRJBfwTXSgH9PbJCjWJBXMgDf2i9i6CAiBLrMaTCYPC1bWjnJPqUryl1DZYdZ/v2VVQw6epffezYQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11908},"main":"dist/index.js","gitHead":"942507c8beea4e4b2b04dc48e2ba4fbe434b704e","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.3.0-alpha.9_1703571229537_0.7872537616761681","host":"s3://npm-registry-packages"}},"18.3.0-alpha.10":{"name":"@airma/react-hooks-core","version":"18.3.0-alpha.10","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.3.0-alpha.10","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"60e2f980fa8a481643667f98738fe7f921352bbd","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.3.0-alpha.10.tgz","fileCount":4,"integrity":"sha512-bhnl1GAJ4521FGUXKaDnk4ecuyyKT70HMbZXoZortLzvHpcfwXNQTzHUolm7gg1SAK8ddSfKkoHiPiAwIoh8BA==","signatures":[{"sig":"MEUCIQDCCQA7AWfAPJzDnTFquQ21hD8RcfUbCXzFWDwhTJfoJwIgXGFWOxTcR7wfRffzMuVyCD/XNDbWAwRn5wVAW50fbV4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11909},"main":"dist/index.js","gitHead":"81ade95d25599f5e2dacc47386c8a1e392c5ff6a","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.3.0-alpha.10_1706681772121_0.4292270581428783","host":"s3://npm-registry-packages"}},"18.3.0-alpha.11":{"name":"@airma/react-hooks-core","version":"18.3.0-alpha.11","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.3.0-alpha.11","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"543f80715f6ef48b766ebf4783e42be4650ee5f6","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.3.0-alpha.11.tgz","fileCount":4,"integrity":"sha512-uY2P9opDGs0lSnbmJ6n9j6a2BoACff5p4QhlMIAODNCM16b+tn0mlWEMGdvjfbweWvBYyNMyU1uQv7f+3VZUtA==","signatures":[{"sig":"MEUCIFzGfu1Fpnlb5dG69K3/h19iFRc8PpzYdbDsD+0GAOo4AiEA9C+DXMi+1Z3lXN9NK5eYYEsxaOb9nQg7mjHHtJY02xs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11909},"main":"dist/index.js","gitHead":"acc820807819a8870f303bb23caa6d2d73b205f9","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.3.0-alpha.11_1708221733146_0.41383225048354033","host":"s3://npm-registry-packages"}},"18.3.0-alpha.12":{"name":"@airma/react-hooks-core","version":"18.3.0-alpha.12","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.3.0-alpha.12","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"3643d14d9026e3f41270c481976ab19c6ea9efe4","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.3.0-alpha.12.tgz","fileCount":4,"integrity":"sha512-f+2Bcb3SxSEJXS8vPKqc8aDLxMeikC9iAgadF9R1bwve9/MLz2e0SgPmxtwLVYscKLCUt4eJqJ0a8F2zTL7xwA==","signatures":[{"sig":"MEYCIQDpg9LptEZPDH1uJW5ad0SdkXsjRetuKj2MJgDvV4o9PAIhAJ/+OlTcz5SRGeKegpC/8UHlV7Ym//8FEEYzAnpiWIsU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11909},"main":"dist/index.js","gitHead":"ea41b4115f3b5077642c9dedb59947d458bca496","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.3.0-alpha.12_1708249042107_0.5409588752512235","host":"s3://npm-registry-packages"}},"18.3.0":{"name":"@airma/react-hooks-core","version":"18.3.0","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.3.0","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"bf8cba8acd9af9c44822a79095ba1d86bc163dfd","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.3.0.tgz","fileCount":4,"integrity":"sha512-2vO9bhyB0ZfGtrXLvs6Y8QbFdhr7ESYJ5So0sOVMEsILRhmRHaukk3Zo4iisGIPKpO3eKedPQjqdwu75WlTvfQ==","signatures":[{"sig":"MEYCIQDqUgbrkTpuZxSexXgmxseVCJ+oe7HUt9TsY0M4N1y3BQIhAOpbNxBCIgsWQlUlOjfFo21XXFkTjgTOagjXewY3JpKA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11900},"main":"dist/index.js","gitHead":"b4d33878260082c9d375691466f0245a7a364809","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"7.24.0","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.10.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.4","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.3.0_1709186710851_0.18203210786113666","host":"s3://npm-registry-packages"}},"18.4.0":{"name":"@airma/react-hooks-core","version":"18.4.0","keywords":["async","async-state","browser","closures","hook","react","side-effects","state","state-management","typescript"],"author":{"name":"Jimmy.Harding"},"license":"MIT","_id":"@airma/react-hooks-core@18.4.0","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"homepage":"https://github.com/filefoxper/airma","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"dist":{"shasum":"9adae91efaa82711e741142f693fdb217131e6a5","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.4.0.tgz","fileCount":4,"integrity":"sha512-i7jrVZ8j2M+F06rfgpuz74S1NYpHysu/wH+NjzgbGjycoxGWS6WfH0paus3K1sv+BmF8SvAOl6Be4INf3NwO5g==","signatures":[{"sig":"MEQCICd5ZSae1/UECHBAz0+tc78Z0SxAU9oL0hfyP4PqS88EAiAyYF30EgPcFYX7txdVdLiJo6fngb2V3RH3LWXkwXayyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11927},"main":"dist/index.js","gitHead":"e41ba280644cc5657ecbfb9a965554e1affb5e66","private":false,"scripts":{"docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","test":"jest --coverage","build":"webpack","analyze":"webpack --config webpack.analyze.js","lint-init":"eslint --init"},"typings":"index.d.ts","_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"repository":{"url":"git+https://github.com/filefoxper/airma.git","type":"git"},"_npmVersion":"8.3.1","description":"This is a common react hook package","directories":{},"_nodeVersion":"16.14.0","dependencies":{"react":">=16.8.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"29.3.1","husky":"^7.0.1","eslint":"^8.27.0","rewire":"5.0.0","esbuild":"^0.16.6","prettier":"2.3.2","pre-commit":"^1.2.2","typescript":"4.9.5","prettier-eslint":"^12.0.0","prettier-eslint-cli":"^5.0.1","regenerator-runtime":"0.13.5","eslint-config-airbnb":"^19.0.4","eslint-plugin-import":"^2.26.0","eslint-config-prettier":"^8.5.0","eslint-import-resolver-typescript":"^3.5.2"},"_npmOperationalInternal":{"tmp":"tmp/react-hooks-core_18.4.0_1740477037979_0.6654945455644345","host":"s3://npm-registry-packages-npm-production"}},"18.6.0":{"private":false,"name":"@airma/react-hooks-core","version":"18.6.0","description":"This is a common react hook package","license":"MIT","author":{"name":"Jimmy.Harding"},"homepage":"https://github.com/filefoxper/airma","repository":{"type":"git","url":"git+https://github.com/filefoxper/airma.git"},"main":"dist/index.js","scripts":{"build":"node ./build.js","docs":"docsify serve ./docs","lint":"eslint src --fix --ext .ts,.tsx ","lint-init":"eslint --init"},"typings":"index.d.ts","dependencies":{"react":">=16.8.0"},"devDependencies":{"esbuild":"^0.25.0","esbuild-plugin-es5":"2.1.1","eslint":"^8.49.0","eslint-config-airbnb":"^19.0.4","eslint-config-prettier":"^9.0.0","eslint-import-resolver-typescript":"^3.6.0","eslint-plugin-import":"^2.28.1","jest":"29.7.0","prettier":"^3.0.3","prettier-eslint":"^15.0.1","prettier-eslint-cli":"^7.1.0","regenerator-runtime":"0.13.5","rewire":"5.0.0","typescript":"4.9.5"},"keywords":["hook","react","typescript"],"gitHead":"f6bda6a83d949d47b059a679aaf93286471df95e","bugs":{"url":"https://github.com/filefoxper/airma/issues"},"_id":"@airma/react-hooks-core@18.6.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-ocAIQou/Bw1pn+9QCVAooYoU+QUqHdhe6krUAhsZ3yHhr2y8QT09MXt0JjK5fIo6wIwMsBjXlqA5B4Aqw3AmlA==","shasum":"ffabfd8d5be56cae1c38d031b3fa38e2b95b4a83","tarball":"https://registry.npmjs.org/@airma/react-hooks-core/-/react-hooks-core-18.6.0.tgz","fileCount":4,"unpackedSize":15846,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQChEClmGBUV6rV/LASUgVybKfuJNt5FJF9batzWyGghugIgSy3yXHTqmxSPtpVfMDo5gn9RLIeBof1E0uuzCTuGc9g="}]},"_npmUser":{"name":"sibar-root","email":"filefoxper@163.com"},"directories":{},"maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react-hooks-core_18.6.0_1768110646283_0.14028689748320855"},"_hasShrinkwrap":false}},"time":{"created":"2023-09-03T02:18:42.669Z","modified":"2026-01-11T05:50:46.677Z","18.0.0":"2023-09-03T02:18:42.882Z","18.3.0-alpha.7":"2023-12-23T06:59:40.517Z","18.3.0-alpha.8":"2023-12-26T03:29:51.233Z","18.3.0-alpha.9":"2023-12-26T06:13:49.696Z","18.3.0-alpha.10":"2024-01-31T06:16:12.254Z","18.3.0-alpha.11":"2024-02-18T02:02:13.286Z","18.3.0-alpha.12":"2024-02-18T09:37:22.264Z","18.3.0":"2024-02-29T06:05:11.045Z","18.4.0":"2025-02-25T09:50:38.121Z","18.6.0":"2026-01-11T05:50:46.441Z"},"bugs":{"url":"https://github.com/filefoxper/airma/issues"},"author":{"name":"Jimmy.Harding"},"license":"MIT","homepage":"https://github.com/filefoxper/airma","keywords":["hook","react","typescript"],"repository":{"type":"git","url":"git+https://github.com/filefoxper/airma.git"},"description":"This is a common react hook package","maintainers":[{"name":"sibar-root","email":"filefoxper@163.com"}],"readme":"[![npm][npm-image]][npm-url]\n[![NPM downloads][npm-downloads-image]][npm-url]\n[![standard][standard-image]][standard-url]\n\n[npm-image]: https://img.shields.io/npm/v/%40airma/react-hooks-core.svg?style=flat-square\n[npm-url]: https://www.npmjs.com/package/%40airma/react-hooks-core\n[standard-image]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square\n[standard-url]: http://npm.im/standard\n[npm-downloads-image]: https://img.shields.io/npm/dm/%40airma/react-hooks-core.svg?style=flat-square\n\n# @airma/react-hooks-core\n\nIt is a simple tool for providing some simple and useful react hooks for `@airma/react-*` tools. You can use it directly.\n\n## API\n\n### usePersistFn\n\n```ts\nexport declare function usePersistFn<T extends (...args: any[]) => any>(\n  callback: T\n): T;\n```\n\nThis hook is created for replacing `useCallback`, if you want to create a persist callback.\n\n```ts\nimport {memo} from 'react';\nimport {usePersistFn} from '@airma/react-hooks-core';\n\nconst App = memo((props: {onChange: (value:string)=>void})=>{\n    return ...;\n});\n\nconst Layout = ()=>{\n    const call = usePersistFn((v: string)=>{});\n\n    return <App onChange={call}/>\n}\n```\n\n### useMount\n\n```ts\nexport declare function useMount(callback: () => (() => void) | void): void;\n```\n\nThis hook is created for listen the mount effect of functional component.\n\n### useUpdate\n\n```ts\nexport declare function useUpdate<T extends any[]>(\n  callback: (prevDeps: typeof deps) => (() => void) | void,\n  deps?: T\n): void;\n```\n\nThis hook is created for listen the update effect of functional component.\n\n```ts\nimport {memo, useState} from 'react';\nimport {useUpdate} from '@airma/react-hooks-core';\n\nconst App = memo((props: {value:number})=>{\n\n    const [count, setCount] = useState(props.value);\n\n    useUpdate((prev)=>{\n        if(!prev){\n            return;\n        }\n        const [prevValue] = prev;\n        console.log(prevValue)\n    }, [props.value]);\n\n    return ...;\n});\n```\n\n### useRefresh\n\n```ts\nexport declare function useRefresh<T extends (...args: any[]) => any>(\n  method: T,\n  params:\n    | Parameters<T>\n    | {\n        refreshDeps?: any[];\n        variables: Parameters<T>;\n      }\n): void;\n```\n\nThis hook helps you call a `function` when the parameters have been changed.\n\n```ts\nimport {useEffect, useState} from 'react';\nimport {useRefresh} from '@airma/react-hooks-core';\n\nfunction useIntervalCountDown() {\n    const [count, setCount] = useState(60);\n    const [s, setS] = useState(count);\n    useEffect(()=>{\n        const id = window.setInterval(()=>{\n            setCount(c=>c-1);\n        },1000);\n        return ()=> {\n            window.clearInterval(id);\n        }\n    },[]);\n    \n    useRefresh((seconds)=>setS(seconds<0?0:seconds), [count]);\n    \n    return s+'s';\n}\n```\n\n### useUnmount\n\n```ts\nexport declare function useUnmount(destroy: () => void): void;\n```\n\nThis hook is created for listen the unmount effect of functional component.\n\n## Recommends\n\nWe recommend you use these packages for a better experience.\n\n1. [@airma/react-hooks](https://www.npmjs.com/package/@airma/react-hooks): It provides simple APIs: `usePersistFn`, `useMount`, `useUpdate` for usage.\n2. [@airma/react-state](https://www.npmjs.com/package/@airma/react-state): It provides a model hook usage for manage react states.\n3. [@airma/react-effect](https://www.npmjs.com/package/@airma/react-effect): It provides asynchronous state manage hooks for easy usage.\n\n## Examples\n\n### @airma/react-hooks\n\n```ts\nimport { useUpdate } from '@airma/react-hooks';\nimport type { User } from './type';\n\nexport function useUserUpdateReload(user: User){\n    const { orders, messages } = user;\n    useUpdate(([prevOrders, prevMessages])=>{\n        if (\n            orders.length !== prevOrders.length ||\n            messages.length !== prevMessages.length\n        ) {\n            window.location.reload();\n        }\n    }, [orders, messages]);\n}\n```\n\n### @airma/react-state\n\n```ts\nimport {memo} from 'react';\nimport {useModel} from '@airma/react-state';\n\nconst Layout = memo(({interval}:{interval: number})=>{\n    const instance = useModel((state: number)=>{\n        return {\n            value: state,\n            isNegative: state < 0,\n            increase(): number{\n                return state + interval;\n            },\n            decrease(): number{\n                return state - interval;\n            }\n        }\n    }, 0);\n    \n    const {\n        value,\n        isNegative,\n        increase,\n        decrease\n    } = instance;\n\n    return ......;\n});\n```\n\n### @airma/react-effect\n\n```ts\nimport {memo} from 'react';\nimport {useQuery} from '@airma/react-effect';\nimport {fetchUser} from './session';\n\nconst App = memo(({userId}:{userId: number})=>{\n    const [\n        {\n            data: user,\n            isFetching,\n            loaded,\n            error\n        },\n        trigger\n    ] = useQuery(fetchUser, [ userId ]);\n    \n    const refetch = ()=>{\n        trigger(userId);\n    };\n    \n    return ...;\n});\n```","readmeFilename":"README.md"}