{"_id":"@alicloud/react-hook-controllable","_rev":"5-48e27229d0cf3796400dea5e4e7e4a30","name":"@alicloud/react-hook-controllable","dist-tags":{"latest":"1.2.0"},"versions":{"1.0.0":{"name":"@alicloud/react-hook-controllable","version":"1.0.0","description":"React Hook - 优雅受控","license":"MIT","sideEffects":false,"main":"build/cjs/index.js","module":"build/es/index.js","types":"build/types/index.d.ts","homepage":"https://github.com/aliyun/alibabacloud-console-base/tree/master/packages-hook/react-hook-controllable","author":{"name":"Jianchun Wang","email":"justnewbee@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/aliyun/alibabacloud-console-base.git"},"publishConfig":{"access":"public"},"keywords":["useControllable","useControllableWithDefault","useControllableSoftTrim"],"devDependencies":{"@alicloud/console-toolkit-cli":"^1.2.30","@alicloud/console-toolkit-preset-component":"^1.2.61","@alicloud/ts-config":"^1.1.1","@types/react":"^17.0.48","react":"^17.0.2","typescript":"^4.9.4"},"peerDependencies":{"react":">=16.8"},"scripts":{"start":"breezr start-storybook","test":"breezr test:unit","build:esm":"breezr build --engine babel --es-module","build:cjs":"breezr build --engine babel","build:bundle":"breezr build --engine webpack","build:typings":"tsc --outDir build/types --declaration --emitDeclarationOnly","build":"yarn build:esm && yarn build:cjs && yarn build:typings","clean":"rm -rf build","prepublishOnly":"yarn clean && yarn build"},"gitHead":"949d95efffd058fa53f6b9a29958a9190c21003d","bugs":{"url":"https://github.com/aliyun/alibabacloud-console-base/issues"},"_id":"@alicloud/react-hook-controllable@1.0.0","_nodeVersion":"18.11.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-8dxfe4qNqzmSbsx7PIB2VsTJFb0inQTM/fJnGEKYhA6UaTKr0aRXMXzF1SgQFA99ZQ6BKHgNAC9k3gcvvfW+Vw==","shasum":"5e164c6e4915215b574f00834c901c7acd9b158f","tarball":"https://registry.npmjs.org/@alicloud/react-hook-controllable/-/react-hook-controllable-1.0.0.tgz","fileCount":33,"unpackedSize":16949,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGJ3tMY9rA4IAxaChYMnkzn0MJsq8B5mT8jc0dV1CbDXAiEAnz9SdXyvyrMKxdLQF7u274LTnrAOQvJCa9oGVgAnR1Y="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjyLkVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2FA/+OYI2C4J24+JbAxIRE8j6kV/KtM8HEboBFbAb+GtuC4x6Z0WD\r\noxlYDlVSwLL6Ecnwle3ylPWzX2fI0wC+0OGE0YGWIWDelbvndOIFIPEXnbYS\r\n3mDGnaTJAct5zVVQPDYYlHOF9dekWAag2kTOhzzSiOnJilBn0Xbjvf3Is+/f\r\nE6KOWXrnvcYbivWPxbcRgsxGbZv1oMVMC7QoqFB1G1gF6lEvAu/YVdVdrUWk\r\nBrQEV57KDPff8Kpq8o0H7u2adiCsLCRQ/tGr9CfUEm2lKNuytudpHbU3DmmT\r\n5a7tSFbb2XokpBVdyVdPXXZMUEnJe4C5Tax6QBU8lcV00qskbvIzSi6F8+Ox\r\nOuq/udeU0yegwqSWCZItnbFCKEu3y1kRFU5it+ZqqKPR5VBH0hI1hyrm9zM7\r\nnIP0+jjiXSgiDSMvhDxRxvJi1DcyhyLj0+ymZyadqT0Se2w+phvYOjeOa7R9\r\nL9GaL2lzazHMoWEX/O8+zzkny+ChLt7Qbc9UCPN/VIzZjMUwPzKSqTbRpmhG\r\n5SDvyXbduSLhnZfdoWOnYY+dyaOD2cR81sV/9tlntik/65PIYrO8YHUY6KXN\r\nLt5JuoSldIkw6l1NGFmMQKs8HA+bzdXCXA4q4vzrspWqf1KfKkge4wYn10he\r\nGz7G3ASgCKKGfiZbOVU6j3Y4ECQDqkuurhA=\r\n=YuKB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"console-fe","email":"console-fe@alibabacloud.com"},"directories":{},"maintainers":[{"name":"jacksontian","email":"shyvo1987@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"pagecao","email":"cpj1106@gmail.com"},{"name":"aliyunsdkteam","email":"sdk-team@alibabacloud.com"},{"name":"console-fe","email":"console-fe@alibabacloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-hook-controllable_1.0.0_1674098964859_0.35847753548396"},"_hasShrinkwrap":false},"1.0.1":{"name":"@alicloud/react-hook-controllable","version":"1.0.1","description":"React Hook - 优雅受控","license":"MIT","sideEffects":false,"main":"build/cjs/index.js","module":"build/es/index.js","types":"build/types/index.d.ts","homepage":"https://github.com/aliyun/alibabacloud-console-base/tree/master/packages-hook/react-hook-controllable","author":{"name":"Jianchun Wang","email":"justnewbee@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/aliyun/alibabacloud-console-base.git"},"publishConfig":{"access":"public"},"keywords":["useControllable","useControllableWithDefault","useControllableSoftTrim"],"devDependencies":{"@alicloud/console-toolkit-cli":"^1.2.30","@alicloud/console-toolkit-preset-component":"^1.2.61","@alicloud/ts-config":"^1.1.1","@types/react":"^17.0.48","react":"^17.0.2","typescript":"^4.9.4"},"peerDependencies":{"react":">=16.8"},"scripts":{"start":"breezr start-storybook","test":"breezr test:unit","build:esm":"breezr build --engine babel --es-module","build:cjs":"breezr build --engine babel","build:bundle":"breezr build --engine webpack","build:typings":"tsc --outDir build/types --declaration --emitDeclarationOnly","build":"yarn build:esm && yarn build:cjs && yarn build:typings","clean":"rm -rf build","prepublishOnly":"yarn clean && yarn build"},"gitHead":"949d95efffd058fa53f6b9a29958a9190c21003d","bugs":{"url":"https://github.com/aliyun/alibabacloud-console-base/issues"},"_id":"@alicloud/react-hook-controllable@1.0.1","_nodeVersion":"18.11.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-zCaLXV9ehrwldHkAPGfI3LlHR56fm4/l6zG+JGB9gfGs2KkZPCLlx5WrV0iX4JoxvTzKm1STUiRYEipWkunvJQ==","shasum":"444ccf8436e5339b74c0b369f09180d69a9c1997","tarball":"https://registry.npmjs.org/@alicloud/react-hook-controllable/-/react-hook-controllable-1.0.1.tgz","fileCount":33,"unpackedSize":17070,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAYVOrVh5318bfMe3eix5fp9hjkERzZs7j7XYH+zPav4AiBVdqzx+knx1XyUCD5Ru/35v748B2NEP9Yc2SQFC65Kgg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjyOLMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqGNQ/+L2z5Bgz77DBOQWz3yXg3gnFCsGblBY98K5sbP0G5RC66Eo0B\r\nwTxw1ZEBip5yITJw29OleJYKCY9RaIbC6FMi2LUlv1RwveU3EiS2na3LCr0e\r\nPoElI1+L0qw9GgZS5tMfm5pqIJZxUFy58kUO6yw2i7nGNlirlTTuhcZhRnbI\r\n19wSYKwxWNLc/1hFjL+UXtUEzFys5GQZmWgq/knttzbTcR3Fl1DYYkczA3of\r\n2oxYlO9ln38Sjs3xiRkswuhjp6PIpdEpwP8/e1uuJDpf3BALhYZV8EV416s3\r\ncx2uoVVU2hcLQv816MXPBfS4xjwk/9zszY/x/jwk+d0RXMOPkqFQy2BLNDT1\r\nrUqH/aouO8kgdvJBjpYf+TZoTUSNqdE80vXpGEBtG2Zs/oCrcDYBlROhwnTM\r\nkK8LLz/1CBBWn73z28rF7kY9xk6UbDdj0+9SJC7QTpJ1WoQXja05ClgweJSN\r\nOf4e4bl12SV32JBFHswzDmn4I2TP/xki22jv1VskmY1bPLlRGFWD/xxGi/WJ\r\nduYbj7RQw+hurqa2AaZAnjcnOIdNlDOw4amgkGx6V/3YDuXWGtkJFol9pIUN\r\nXyUAVg01CSwZVBO36Sxd3Y7JtCxafbG0KWnzDhul1Od+CzCPxOvzCpMNA7sJ\r\nPeYQZ8XxKNGKRHTY5ffOHB5kIVrIvC+NNmc=\r\n=gpQo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"console-fe","email":"console-fe@alibabacloud.com"},"directories":{},"maintainers":[{"name":"jacksontian","email":"shyvo1987@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"pagecao","email":"cpj1106@gmail.com"},{"name":"aliyunsdkteam","email":"sdk-team@alibabacloud.com"},{"name":"console-fe","email":"console-fe@alibabacloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-hook-controllable_1.0.1_1674109643851_0.10716735752180417"},"_hasShrinkwrap":false},"1.0.2":{"name":"@alicloud/react-hook-controllable","version":"1.0.2","description":"React Hook - 优雅受控","license":"MIT","sideEffects":false,"main":"build/cjs/index.js","module":"build/es/index.js","types":"build/types/index.d.ts","homepage":"https://github.com/aliyun/alibabacloud-console-base/tree/master/packages-hook/react-hook-controllable","author":{"name":"Jianchun Wang","email":"justnewbee@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/aliyun/alibabacloud-console-base.git"},"publishConfig":{"access":"public"},"keywords":["useControllable","useControllableWithDefault","useControllableSoftTrim"],"devDependencies":{"@alicloud/console-toolkit-cli":"^1.2.30","@alicloud/console-toolkit-preset-component":"^1.2.61","@alicloud/ts-config":"^1.1.1","@types/react":"^17.0.48","react":"^17.0.2","typescript":"^4.9.4"},"peerDependencies":{"react":">=16.8"},"scripts":{"start":"breezr start-storybook","test":"breezr test:unit","build:esm":"breezr build --engine babel --es-module","build:cjs":"breezr build --engine babel","build:bundle":"breezr build --engine webpack","build:typings":"tsc --outDir build/types --declaration --emitDeclarationOnly","build":"yarn build:esm && yarn build:cjs && yarn build:typings","clean":"rm -rf build","prepublishOnly":"yarn clean && yarn build"},"gitHead":"97c30e1d77fdd1ea054bd11d30555658f4752223","bugs":{"url":"https://github.com/aliyun/alibabacloud-console-base/issues"},"_id":"@alicloud/react-hook-controllable@1.0.2","_nodeVersion":"18.11.0","_npmVersion":"lerna/6.4.1/node@v18.11.0+arm64 (darwin)","dist":{"integrity":"sha512-UvvQjAQJEApJNa06/RK53sycTR4q+lb29twGJxa1yYod8gZMP6QD0At5XTBigos5iBXHgJU8VncaBEzlmeuT2A==","shasum":"8f0243cb3c96bea79d8ad5eb0866598367b364fe","tarball":"https://registry.npmjs.org/@alicloud/react-hook-controllable/-/react-hook-controllable-1.0.2.tgz","fileCount":34,"unpackedSize":18140,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA8tdm4KEmG8oJ08eVSWsVXhvUZ/zo2gHVLkyQBQ2B3AAiA0ZDea/iZIGL2e35BcrDJBP4D+YN6CMhufWeNJawna8A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjyQfXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqL+w/7B7hQt59x++VK2g/g+rA8g28rjFMlsZ53GGaDtwi8hTi5XgpQ\r\nRQYWrJL1oQ1/Gmzw5Jn9rBTjhMwFsVklcv7E0bNit5EoXd9eNTxRnHFyZKh2\r\n6C0gXODTMJFleiZj61qsgzQSjTw15EOO9KB6RzYWvBTbE8Qy6yUnoWaHMcie\r\nwJ27bhqazcuLV4k/vY8QYFCC8iJRcYURvZrAi6nUmdzn/SSl7XE6FjstqSkr\r\naUXg8Nba+X8xIeJPyN+pZWxYVWhViQBZfKq8TnbjM14GVpbNl9I8MproAIgk\r\nene/6w2E9gbPeM0RnZYjntkr/bQa2+JhdU1w/xfC0rg+uT+tFu6pJr1yqzVY\r\n50AQTAe0Ipvh32qvaMwJFaDsx/EywSn2bdiHc2h5LG5Dh7sNMhu1AwQBn8aB\r\njFd/fsxI2Vz/6UrmAh/j/DrtaN6AUgb2TrQUWhW0oWaltdnzo6y2PPJQzfnm\r\n48j2k7VUj08PsnDz6t/N4xOfrcRVM9aYuJW1/3GIqRf1oRZkgrXuSmQU1hEW\r\nIj1zrY+w0tSXmp/xZT0Gx8SDCQE3S8kfDHpLWvGq5b39me65Yj2aRYEK8EuM\r\nLgrg4v1meHwa+tAY6p9llTDtz3d34oWFYHqpLnwfT4MjjeEMtIo6f5xhRaPa\r\n2WVpjobLWsJuKtrA1TE2VBl5ekfjceLUg9g=\r\n=jHxC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"console-fe","email":"console-fe@alibabacloud.com"},"directories":{},"maintainers":[{"name":"jacksontian","email":"shyvo1987@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"pagecao","email":"cpj1106@gmail.com"},{"name":"aliyunsdkteam","email":"sdk-team@alibabacloud.com"},{"name":"console-fe","email":"console-fe@alibabacloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-hook-controllable_1.0.2_1674119127702_0.5217533845470506"},"_hasShrinkwrap":false},"1.0.3":{"name":"@alicloud/react-hook-controllable","version":"1.0.3","description":"React Hook - 优雅受控","license":"MIT","sideEffects":false,"main":"build/cjs/index.js","module":"build/es/index.js","types":"build/types/index.d.ts","homepage":"https://github.com/aliyun/alibabacloud-console-base/tree/master/packages-hook/react-hook-controllable","author":{"name":"Jianchun Wang","email":"justnewbee@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/aliyun/alibabacloud-console-base.git"},"publishConfig":{"access":"public"},"keywords":["useControllable","useControllableWithDefault","useControllableSoftTrim"],"devDependencies":{"@alicloud/console-toolkit-cli":"^1.2.30","@alicloud/console-toolkit-preset-component":"^1.2.61","@alicloud/ts-config":"^1.1.3","@types/react":"^17.0.48","react":"^17.0.2","typescript":"^4.9.5"},"peerDependencies":{"react":">=16.8"},"scripts":{"start":"breezr start-storybook","test":"breezr test:unit","build:esm":"breezr build --engine babel --es-module","build:cjs":"breezr build --engine babel","build:bundle":"breezr build --engine webpack","build:typings":"tsc --outDir build/types --declaration --emitDeclarationOnly","build":"yarn build:esm && yarn build:cjs && yarn build:typings","clean":"rm -rf build","prepublishOnly":"yarn clean && yarn build"},"gitHead":"056768173dd99b5af268df646c8a09eb08648920","bugs":{"url":"https://github.com/aliyun/alibabacloud-console-base/issues"},"_id":"@alicloud/react-hook-controllable@1.0.3","_nodeVersion":"18.11.0","_npmVersion":"lerna/6.6.0/node@v18.11.0+arm64 (darwin)","dist":{"integrity":"sha512-NoDhvLcfYLyO1TxDjssBhISgPgxMT7vJhkldXiowBed+lV/idcy8Mmy/HvvvMw/ERLdljiNqUQdrAQuIfCRwWQ==","shasum":"a126781d94c58c0f41da9042e255de57efff1fcd","tarball":"https://registry.npmjs.org/@alicloud/react-hook-controllable/-/react-hook-controllable-1.0.3.tgz","fileCount":34,"unpackedSize":18140,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDouAogYjVUzIZTGyVsWbaweXk7UmBdlvXjGKK5/AnBPQIhAMq7dWzi5sqUqHR1YevFl8hGa6RQAIaI34XEDBMfo0Dz"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkHWsXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoHfRAAk1fWIbxAjYCbXTas0MLpTB7P6ucjqNVDZ3na46mTsykswJuK\r\nCVTZS6baqkubdF6/dvPXAg5ZDx9bAFNTOS/NJASIM+6mDjct1F3uY5gtuwQ5\r\nQ7IGNeBnYnwXLR12mHvhzqNdFMLLNyV/29zMBWjvMWqhwtPCjTIFyNBISAKR\r\nEkr6j97YtG2UERN7G+bWaWb/qNJXTkp+6zUl+/J0/MNYlH9zMdO891Iqa65e\r\n3kg+9ukqayyqLGi3H0G0MwafX7khT1ssEnROYEkUFe93mKe1ov1jIL4IqlWG\r\n0rpxpit+wzK74RuNGuUMHFXxNBM/2XmAyx4cqqht5DqwBMKSigjT3zlMhZ4S\r\naxgkhL0p/46Ge6F3tFw1d7h2MuMyVGAmn4mc5mdKTj+IYbncOPOcOEFtlrQg\r\nhj0muz0XSTAfXvwWlUjgHdg5RdzhfDZ3gVes3P8tarOcFEpYaI9vzC0Ya3Qk\r\nH3uYmFAL/1onXSmTTBaZJc7Da6jMFFkB5u6ZaS0AwkyEZkZgVNjdmZpveCE3\r\n+fBMEPG9SbciRnk/0IXHW1qW3Qn8+reJ0bbkk1x9w991xeX1m3V+h1UxQ8TX\r\n5z7xWVZJUufEmG3fMgKme4rcHFB+iIQ6bIt/OzV93y5lIPV2XfFN6uWWueNZ\r\na1pnsqqEKtC1zl0W6S+CU31DoT1T8CIsT3U=\r\n=aYrU\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"console-fe","email":"console-fe@alibabacloud.com"},"directories":{},"maintainers":[{"name":"jacksontian","email":"shyvo1987@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"pagecao","email":"cpj1106@gmail.com"},{"name":"aliyunsdkteam","email":"sdk-team@alibabacloud.com"},{"name":"console-fe","email":"console-fe@alibabacloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-hook-controllable_1.0.3_1679649559700_0.7469860735860838"},"_hasShrinkwrap":false},"1.1.0":{"name":"@alicloud/react-hook-controllable","version":"1.1.0","description":"React Hook - 优雅受控","license":"MIT","sideEffects":false,"main":"build/cjs/index.js","module":"build/es/index.js","types":"build/types/index.d.ts","homepage":"https://github.com/aliyun/alibabacloud-console-base/tree/master/packages-hook/react-hook-controllable","author":{"name":"Jianchun Wang","email":"justnewbee@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/aliyun/alibabacloud-console-base.git"},"publishConfig":{"access":"public"},"keywords":["useControllable","useControllableWithDefault","useControllableSoftTrim"],"devDependencies":{"@alicloud/console-toolkit-cli":"^1.2.30","@alicloud/console-toolkit-preset-component":"^1.2.61","@alicloud/ts-config":"^1.1.3","@types/react":"^17.0.48","react":"^17.0.2","typescript":"^4.9.5"},"peerDependencies":{"react":">=16.8"},"scripts":{"start":"breezr start-storybook","test":"breezr test:unit","build:esm":"breezr build --engine babel --es-module","build:cjs":"breezr build --engine babel","build:bundle":"breezr build --engine webpack","build:typings":"tsc --outDir build/types --declaration --emitDeclarationOnly","build":"yarn build:esm && yarn build:cjs && yarn build:typings","clean":"rm -rf build","prepublishOnly":"yarn clean && yarn build"},"gitHead":"949d95efffd058fa53f6b9a29958a9190c21003d","bugs":{"url":"https://github.com/aliyun/alibabacloud-console-base/issues"},"_id":"@alicloud/react-hook-controllable@1.1.0","_nodeVersion":"18.11.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-y7Wkw5zWAj2TIMrFeEpTCV8v4z11ZQA4TSZUqdXzaDFJhmmGuVyx8udWVDSfRJjWhBkA/YM2zJ9eR6uISRLddA==","shasum":"f8a72cd3c482765f233db3427bc34e54fde00328","tarball":"https://registry.npmjs.org/@alicloud/react-hook-controllable/-/react-hook-controllable-1.1.0.tgz","fileCount":33,"unpackedSize":17849,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6ZQW6piFG8wz+QQ19EGxRcXPR8QjX32cF78/Y4DkMhwIgaYWB288UY4VX0oinjXJLuGHcJHVMUlqLjY0jcKbd2uw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkI/ZaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq92g/+OYVy4IeGfP33RIezLaEGqfV+Btl3hZ9qSa7WZBKBowaaefrH\r\nuMw5ntp2bc7iodammaCXz9ACrqeYcuueYCxm9z4dARCh90U8StQelg/VipAP\r\nhhoLXFFmzYC6Nq5vUdu5aYQPFaDzLHKmDqGxmEElKUqOci2fUq+jyF4OMoln\r\nBBlY52Wdmrtr+QOWlvXmM+WwhmKKFGLSv5QXp4aWd2Tj47lCNK8YXkEJYSjk\r\nclswqPcinjTbbsf6ExJXdm+fLwbRSQAtqqZf8PifcPChEGSV242WZpIWKsUI\r\nGF8H7CBP5K7qF9TCkN4wdQpxzEZMowHLU+3tdI6UgK6V28acTRceqSd9UAKK\r\nd8QN2xP7EAzJSFzN0CWOTbn0ZF/BuDQ+iQ5ESCLCL2GL/hoME35pe4rea7Sa\r\n39c9o3gXyiLkhwgvP1uKE2sEQV9hba03i6QWZHN2O5i7E9LYVgSAqVTvkQJ+\r\n1JPEcYIbBijhl8f8CEe7n6x+EKmJz4TquEt5kDEc4391pkOdydDkgi6fEGMf\r\nnlt/R3EWcvlUr5TqfjG8JRD+xA/blzcFWq+JYXJpt9ncQp5KxSvNHuONXyOh\r\nGJ5wiG4w5H6J2+5Aq0nYapBewTy5s7C14xSqhTOUTgQXQ862MRURX4dC+3iY\r\ntDBzDbu18ZjQ8YUSOK+IwEN7H2KXo0pTuKQ=\r\n=xjAV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"console-fe","email":"console-fe@alibabacloud.com"},"directories":{},"maintainers":[{"name":"jacksontian","email":"shyvo1987@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"pagecao","email":"cpj1106@gmail.com"},{"name":"aliyunsdkteam","email":"sdk-team@alibabacloud.com"},{"name":"console-fe","email":"console-fe@alibabacloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-hook-controllable_1.1.0_1680078426547_0.7548606888474911"},"_hasShrinkwrap":false},"1.2.0":{"name":"@alicloud/react-hook-controllable","version":"1.2.0","description":"React Hook - 优雅受控","license":"MIT","sideEffects":false,"main":"build/cjs/index.js","module":"build/es/index.js","types":"build/types/index.d.ts","homepage":"https://github.com/aliyun/alibabacloud-console-base/tree/master/packages-hook/react-hook-controllable","author":{"name":"Jianchun Wang","email":"justnewbee@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/aliyun/alibabacloud-console-base.git"},"publishConfig":{"access":"public"},"keywords":["useControllable","useControllableWithDefault","useControllableSoftTrim"],"devDependencies":{"@alicloud/console-toolkit-cli":"^1.2.30","@alicloud/console-toolkit-preset-component":"^1.2.61","@alicloud/ts-config":"^1.1.3","@types/react":"^17.0.48","react":"^17.0.2","typescript":"^4.9.5"},"peerDependencies":{"react":">=16.8"},"scripts":{"start":"breezr start-storybook","test":"breezr test:unit","build:esm":"breezr build --engine babel --es-module","build:cjs":"breezr build --engine babel","build:bundle":"breezr build --engine webpack","build:typings":"tsc --outDir build/types --declaration --emitDeclarationOnly","build":"yarn build:esm && yarn build:cjs && yarn build:typings","clean":"rm -rf build","prepublishOnly":"yarn clean && yarn build"},"gitHead":"949d95efffd058fa53f6b9a29958a9190c21003d","bugs":{"url":"https://github.com/aliyun/alibabacloud-console-base/issues"},"_id":"@alicloud/react-hook-controllable@1.2.0","_nodeVersion":"18.11.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-QCpE+UqICu7vwiMc4U39XGBQwznPJsUllHHVZXU8UiXxdN5766AI85gtYZJnmAG+Y1W8XzuYA+WQ8hRUr1IWug==","shasum":"685f3ffd65e994107036ee672411e5bce1860247","tarball":"https://registry.npmjs.org/@alicloud/react-hook-controllable/-/react-hook-controllable-1.2.0.tgz","fileCount":33,"unpackedSize":18576,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHTNC6qN2sS1h/u5KK6SYTkti6MUo3YkrNdbJJhCi8THAiAWb2J4aa+zOANdexjKhxv6rqKh9s/BPqY0fhdaBjhCww=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJRZuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqpkw//WSwXEfijBXvFm7XoIt8YzM7nVF1kKvGcaPakQzF8ol2kWYMf\r\nNmQYzLIBSJjYbTPo67jU6wngwS6f1SGGSBdyTT8VdNscsHLrFHYL/mayr5xw\r\nygGYXj+qcPu7Kq9+qxYxwk2az0upP5xDOtKq2MAGgofYehJr6Gb3zaa9YSCQ\r\nZY542osZSuKIweLLKjtbcMRk5/P4c9iA87XfFJNVCZDY6M7bpD49KYjmuEWV\r\n0mqUd6L193QMge4OPUGcRSydWZfBbwXbfxPztwg6OF88T36kDaQlSCeULfru\r\nGBd/l/R5Pvd8yTzmmOf+aFNY309hTC0+Y64oQWAfG0j9/gznyMjWAVGE62gY\r\nvUu1IPIr1fWG0vl0ppHTTy3rAhEEI59/vVCLL0JJIhbAKXZHlp5Fxgcz6a01\r\ngXp8dvflXYQuDFmVETR4QAJUmBcSQfulUGzxaC0qM741cfL+74h9bhY2CjOz\r\n/X1I5mlCOS+it6SRNt56rPGADs+yHMUWETBe39Bi7ukT8JLIteTs6oRWvTGa\r\nU3os2e9mHt5PeuXzTqvS50LDi3kP5wDJh7yUBgvhfp9WUR6YUxIvY6mMJ/pr\r\nsINvWCzoBHMEMXEbwl2HkDOd3yiZ+FK/9z0aqFI4/Ar+Q7s64NdikON9v2Cq\r\nQ4h+g2qsaHgRxoRYP9RSB3ocxWTRO4t4o5E=\r\n=UkNy\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"console-fe","email":"console-fe@alibabacloud.com"},"directories":{},"maintainers":[{"name":"jacksontian","email":"shyvo1987@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"pagecao","email":"cpj1106@gmail.com"},{"name":"aliyunsdkteam","email":"sdk-team@alibabacloud.com"},{"name":"console-fe","email":"console-fe@alibabacloud.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-hook-controllable_1.2.0_1680152174642_0.20480512774905524"},"_hasShrinkwrap":false}},"time":{"created":"2023-01-19T03:29:24.802Z","1.0.0":"2023-01-19T03:29:25.053Z","modified":"2023-03-30T04:56:15.032Z","1.0.1":"2023-01-19T06:27:24.053Z","1.0.2":"2023-01-19T09:05:27.868Z","1.0.3":"2023-03-24T09:19:19.864Z","1.1.0":"2023-03-29T08:27:06.716Z","1.2.0":"2023-03-30T04:56:14.887Z"},"maintainers":[{"name":"jacksontian","email":"shyvo1987@gmail.com"},{"name":"fengmk2","email":"fengmk2@gmail.com"},{"name":"pagecao","email":"cpj1106@gmail.com"},{"name":"aliyunsdkteam","email":"sdk-team@alibabacloud.com"},{"name":"console-fe","email":"console-fe@alibabacloud.com"}],"description":"React Hook - 优雅受控","homepage":"https://github.com/aliyun/alibabacloud-console-base/tree/master/packages-hook/react-hook-controllable","keywords":["useControllable","useControllableWithDefault","useControllableSoftTrim"],"repository":{"type":"git","url":"git+https://github.com/aliyun/alibabacloud-console-base.git"},"author":{"name":"Jianchun Wang","email":"justnewbee@gmail.com"},"bugs":{"url":"https://github.com/aliyun/alibabacloud-console-base/issues"},"license":"MIT","readme":"# @alicloud/react-hook-controllable\n\n「可受控」组件 HOOK，跟值及回调在组件的 props 中的名称没有关系。\n\n```typescript\nimport {\n  useControllable,\n  useControllableSoftTrim,\n  useControllableUnprotected\n} from '@alicloud/react-hook-controllable';\n```\n\n* `useControllable` 受控组件 hook，适用任何类型，一般不会得到 `undefined` 值\n* `useControllableSoftTrim` 受控且软 trim 组件 hook，仅针对 `string` 类型\n* `useControllableSoftTrim` 受控组件 hook，适用任何类型，得到的值有可能是 `undefined`\n\n## Why\n\n往往我们在实现受控组件的时候，需要考虑的量有：\n\n* `state.xx`\n* `props.xx`\n* `props.defaulXx`\n* `props.onXxChange`\n\nHook `useControllable` 可以把这些变数进行优雅整合，避免写可受控组件的场景下遇到的不可受控（比如 `props` 变化未反应到界面的问题）和代码冗余问题。\n\n注意：Hook `useControllable` 跟需要受控的值在 props 中的名称无关，也可以实现 `visible` 的受控：\n\n* `state.visible`\n* `props.visible`\n* `props.defaulVisible`\n* `props.onVisibleChange`\n\n另外，对于字符串类型的输入，在输入的时候直接 `trim` 是非常不好的体验，因为那会让用户输入不了任何形式的空白字符，所以这里提供了 `useControllableSoftTrim` 来解决此类问题。\n\n## 利用 `useControllable` 实现一个「可受控」Input 组件\n\n```typescript tsx\nimport React, {\n  InputHTMLAttributes,\n  ChangeEvent,\n  useCallback\n} from 'react';\n\nimport {\n  useControllable\n} from '@alicloud/react-hook-controllable';\n\ninterface IInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'onChange'> {\n  value?: string;\n  defaultValue?: string;\n  onChange?(value: string, e: ChangeEvent<HTMLInputElement>): void;\n}\n\nfunction Input({\n  value,\n  defaultValue,\n  onChange,\n  ...props\n}: IInputProps): JSX.Element {\n  const [controllableValue, setControllableValue] = useControllable('FINAL_DEFAULT', value, defaultValue, onChange);\n  const handleOnChange = useCallback((e: ChangeEvent<HTMLInputElement>) => {\n    setControllableValue(e.target.value, e);\n  }, [setControllableValue]);\n  \n  return <input {...{\n    ...props,\n    type: 'text',\n    value: controllableValue,\n    onChange: handleOnChange\n  }} />;\n}\n```\n\n## 利用 `useControllableSoftTrim` 实现软 trim\n\n```typescript tsx\nimport React, {\n  InputHTMLAttributes,\n  ChangeEvent,\n  useCallback\n} from 'react';\n\nimport {\n  useControllableSoftTrim\n} from '@alicloud/react-hook-controllable';\n\ninterface IInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'onChange'> {\n  trim?: boolean;\n  value?: string;\n  defaultValue?: string;\n  onChange?(value: string, e: ChangeEvent<HTMLInputElement>): void;\n}\n\nfunction Input({\n  trim,\n  value,\n  defaultValue,\n  onChange,\n  ...props\n}: IInputProps): JSX.Element {\n  const [controllableValue, setControllableValue] = useControllableSoftTrim(trim, value, defaultValue, onChange);\n  const handleOnChange = useCallback((e: ChangeEvent<HTMLInputElement>) => {\n    setControllableValue(e.target.value, e);\n  }, [setControllableValue]);\n  \n  return <input {...{\n    ...props,\n    type: 'text',\n    value: controllableValue,\n    onChange: handleOnChange\n  }} />;\n}\n```\n\n这样，在敲空格的时候，是不会触发 `onChange` 的。\n","readmeFilename":"README.md"}