icode-hooks 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/README.md +65 -0
  2. package/dist/icode-hooks.js +1 -0
  3. package/es/createUpdateEffect/index.d.ts +4 -0
  4. package/es/createUpdateEffect/index.js +22 -0
  5. package/es/index.d.ts +9 -0
  6. package/es/index.js +9 -0
  7. package/es/useBoolean/index.d.ts +8 -0
  8. package/es/useBoolean/index.js +27 -0
  9. package/es/useCreation/index.d.ts +2 -0
  10. package/es/useCreation/index.js +21 -0
  11. package/es/useLatest/index.d.ts +3 -0
  12. package/es/useLatest/index.js +7 -0
  13. package/es/useMemoizedFn/index.d.ts +3 -0
  14. package/es/useMemoizedFn/index.js +31 -0
  15. package/es/useMount/index.d.ts +2 -0
  16. package/es/useMount/index.js +15 -0
  17. package/es/usePrescription/api.d.ts +7 -0
  18. package/es/usePrescription/api.js +17 -0
  19. package/es/usePrescription/index.d.ts +36 -0
  20. package/es/usePrescription/index.js +119 -0
  21. package/es/usePrescription/types.d.ts +15 -0
  22. package/es/usePrescription/types.js +1 -0
  23. package/es/useRequest/index.d.ts +4 -0
  24. package/es/useRequest/index.js +4 -0
  25. package/es/useRequest/routes-doc/use-request/demos/basic/cancel.d.ts +3 -0
  26. package/es/useRequest/routes-doc/use-request/demos/basic/cancel.js +56 -0
  27. package/es/useRequest/routes-doc/use-request/demos/basic/default.d.ts +6 -0
  28. package/es/useRequest/routes-doc/use-request/demos/basic/default.js +30 -0
  29. package/es/useRequest/routes-doc/use-request/demos/basic/lifeCycle.d.ts +3 -0
  30. package/es/useRequest/routes-doc/use-request/demos/basic/lifeCycle.js +55 -0
  31. package/es/useRequest/routes-doc/use-request/demos/basic/manualRun.d.ts +7 -0
  32. package/es/useRequest/routes-doc/use-request/demos/basic/manualRun.js +53 -0
  33. package/es/useRequest/routes-doc/use-request/demos/basic/manualRunAsync.d.ts +7 -0
  34. package/es/useRequest/routes-doc/use-request/demos/basic/manualRunAsync.js +67 -0
  35. package/es/useRequest/routes-doc/use-request/demos/basic/mutate.d.ts +6 -0
  36. package/es/useRequest/routes-doc/use-request/demos/basic/mutate.js +68 -0
  37. package/es/useRequest/routes-doc/use-request/demos/basic/params.d.ts +3 -0
  38. package/es/useRequest/routes-doc/use-request/demos/basic/params.js +44 -0
  39. package/es/useRequest/routes-doc/use-request/demos/basic/refresh.d.ts +6 -0
  40. package/es/useRequest/routes-doc/use-request/demos/basic/refresh.js +35 -0
  41. package/es/useRequest/routes-doc/use-request/demos/cache/cacheKey.d.ts +3 -0
  42. package/es/useRequest/routes-doc/use-request/demos/cache/cacheKey.js +41 -0
  43. package/es/useRequest/routes-doc/use-request/demos/cache/clearCache.d.ts +3 -0
  44. package/es/useRequest/routes-doc/use-request/demos/cache/clearCache.js +80 -0
  45. package/es/useRequest/routes-doc/use-request/demos/cache/params.d.ts +3 -0
  46. package/es/useRequest/routes-doc/use-request/demos/cache/params.js +65 -0
  47. package/es/useRequest/routes-doc/use-request/demos/cache/setCache.d.ts +3 -0
  48. package/es/useRequest/routes-doc/use-request/demos/cache/setCache.js +48 -0
  49. package/es/useRequest/routes-doc/use-request/demos/cache/share.d.ts +3 -0
  50. package/es/useRequest/routes-doc/use-request/demos/cache/share.js +37 -0
  51. package/es/useRequest/routes-doc/use-request/demos/cache/staleTime.d.ts +3 -0
  52. package/es/useRequest/routes-doc/use-request/demos/cache/staleTime.js +43 -0
  53. package/es/useRequest/routes-doc/use-request/demos/debounce/debounce.d.ts +3 -0
  54. package/es/useRequest/routes-doc/use-request/demos/debounce/debounce.js +41 -0
  55. package/es/useRequest/routes-doc/use-request/demos/index/default.d.ts +3 -0
  56. package/es/useRequest/routes-doc/use-request/demos/index/default.js +23 -0
  57. package/es/useRequest/routes-doc/use-request/demos/index/manual.d.ts +7 -0
  58. package/es/useRequest/routes-doc/use-request/demos/index/manual.js +50 -0
  59. package/es/useRequest/routes-doc/use-request/demos/loadingDelay/loadingDelay.d.ts +3 -0
  60. package/es/useRequest/routes-doc/use-request/demos/loadingDelay/loadingDelay.js +29 -0
  61. package/es/useRequest/routes-doc/use-request/demos/polling/polling.d.ts +3 -0
  62. package/es/useRequest/routes-doc/use-request/demos/polling/polling.js +31 -0
  63. package/es/useRequest/routes-doc/use-request/demos/polling/pollingError.d.ts +3 -0
  64. package/es/useRequest/routes-doc/use-request/demos/polling/pollingError.js +37 -0
  65. package/es/useRequest/routes-doc/use-request/demos/ready/manualReady.d.ts +3 -0
  66. package/es/useRequest/routes-doc/use-request/demos/ready/manualReady.js +36 -0
  67. package/es/useRequest/routes-doc/use-request/demos/ready/ready.d.ts +3 -0
  68. package/es/useRequest/routes-doc/use-request/demos/ready/ready.js +28 -0
  69. package/es/useRequest/routes-doc/use-request/demos/refresh/refreshDeps.d.ts +3 -0
  70. package/es/useRequest/routes-doc/use-request/demos/refresh/refreshDeps.js +60 -0
  71. package/es/useRequest/routes-doc/use-request/demos/refreshOnWindowFocus/refreshOnWindowFocus.d.ts +3 -0
  72. package/es/useRequest/routes-doc/use-request/demos/refreshOnWindowFocus/refreshOnWindowFocus.js +18 -0
  73. package/es/useRequest/routes-doc/use-request/demos/retry/retry.d.ts +3 -0
  74. package/es/useRequest/routes-doc/use-request/demos/retry/retry.js +42 -0
  75. package/es/useRequest/routes-doc/use-request/demos/throttle/throttle.d.ts +3 -0
  76. package/es/useRequest/routes-doc/use-request/demos/throttle/throttle.js +41 -0
  77. package/es/useRequest/src/Fetch.d.ts +20 -0
  78. package/es/useRequest/src/Fetch.js +161 -0
  79. package/es/useRequest/src/plugins/useAutoRunPlugin.d.ts +3 -0
  80. package/es/useRequest/src/plugins/useAutoRunPlugin.js +56 -0
  81. package/es/useRequest/src/plugins/useCachePlugin.d.ts +3 -0
  82. package/es/useRequest/src/plugins/useCachePlugin.js +143 -0
  83. package/es/useRequest/src/plugins/useDebouncePlugin.d.ts +3 -0
  84. package/es/useRequest/src/plugins/useDebouncePlugin.js +61 -0
  85. package/es/useRequest/src/plugins/useLoadingDelayPlugin.d.ts +3 -0
  86. package/es/useRequest/src/plugins/useLoadingDelayPlugin.js +40 -0
  87. package/es/useRequest/src/plugins/usePollingPlugin.d.ts +3 -0
  88. package/es/useRequest/src/plugins/usePollingPlugin.js +65 -0
  89. package/es/useRequest/src/plugins/useRefreshOnWindowFocusPlugin.d.ts +3 -0
  90. package/es/useRequest/src/plugins/useRefreshOnWindowFocusPlugin.js +30 -0
  91. package/es/useRequest/src/plugins/useRetryPlugin.d.ts +3 -0
  92. package/es/useRequest/src/plugins/useRetryPlugin.js +45 -0
  93. package/es/useRequest/src/plugins/useThrottlePlugin.d.ts +3 -0
  94. package/es/useRequest/src/plugins/useThrottlePlugin.js +53 -0
  95. package/es/useRequest/src/types.d.ts +73 -0
  96. package/es/useRequest/src/types.js +1 -0
  97. package/es/useRequest/src/useRequest.d.ts +3 -0
  98. package/es/useRequest/src/useRequest.js +14 -0
  99. package/es/useRequest/src/useRequestImplement.d.ts +5 -0
  100. package/es/useRequest/src/useRequestImplement.js +72 -0
  101. package/es/useRequest/src/utils/cache.d.ts +14 -0
  102. package/es/useRequest/src/utils/cache.js +32 -0
  103. package/es/useRequest/src/utils/cachePromise.d.ts +4 -0
  104. package/es/useRequest/src/utils/cachePromise.js +17 -0
  105. package/es/useRequest/src/utils/cacheSubscribe.d.ts +4 -0
  106. package/es/useRequest/src/utils/cacheSubscribe.js +19 -0
  107. package/es/useRequest/src/utils/isDocumentVisible.d.ts +1 -0
  108. package/es/useRequest/src/utils/isDocumentVisible.js +7 -0
  109. package/es/useRequest/src/utils/isOnline.d.ts +1 -0
  110. package/es/useRequest/src/utils/isOnline.js +7 -0
  111. package/es/useRequest/src/utils/limit.d.ts +1 -0
  112. package/es/useRequest/src/utils/limit.js +17 -0
  113. package/es/useRequest/src/utils/subscribeFocus.d.ts +3 -0
  114. package/es/useRequest/src/utils/subscribeFocus.js +27 -0
  115. package/es/useRequest/src/utils/subscribeReVisible.d.ts +3 -0
  116. package/es/useRequest/src/utils/subscribeReVisible.js +21 -0
  117. package/es/useToggle/index.d.ts +10 -0
  118. package/es/useToggle/index.js +41 -0
  119. package/es/useUnmount/index.d.ts +2 -0
  120. package/es/useUnmount/index.js +17 -0
  121. package/es/useUpdate/index.d.ts +2 -0
  122. package/es/useUpdate/index.js +10 -0
  123. package/es/useUpdateEffect/index.d.ts +3 -0
  124. package/es/useUpdateEffect/index.js +3 -0
  125. package/es/utils/createEffectWithTarget.d.ts +4 -0
  126. package/es/utils/createEffectWithTarget.js +48 -0
  127. package/es/utils/depsAreSame.d.ts +2 -0
  128. package/es/utils/depsAreSame.js +8 -0
  129. package/es/utils/depsEqual.d.ts +2 -0
  130. package/es/utils/depsEqual.js +11 -0
  131. package/es/utils/domTarget.d.ts +6 -0
  132. package/es/utils/domTarget.js +20 -0
  133. package/es/utils/getDocumentOrShadow.d.ts +3 -0
  134. package/es/utils/getDocumentOrShadow.js +28 -0
  135. package/es/utils/index.d.ts +6 -0
  136. package/es/utils/index.js +18 -0
  137. package/es/utils/isAppleDevice.d.ts +2 -0
  138. package/es/utils/isAppleDevice.js +3 -0
  139. package/es/utils/isBrowser.d.ts +2 -0
  140. package/es/utils/isBrowser.js +2 -0
  141. package/es/utils/isDev.d.ts +2 -0
  142. package/es/utils/isDev.js +3 -0
  143. package/es/utils/lodash-polyfill.d.ts +2 -0
  144. package/es/utils/lodash-polyfill.js +11 -0
  145. package/es/utils/testingHelpers.d.ts +2 -0
  146. package/es/utils/testingHelpers.js +19 -0
  147. package/es/utils/tests.d.ts +4 -0
  148. package/es/utils/tests.js +12 -0
  149. package/es/utils/useDeepCompareWithTarget.d.ts +4 -0
  150. package/es/utils/useDeepCompareWithTarget.js +14 -0
  151. package/es/utils/useEffectWithTarget.d.ts +2 -0
  152. package/es/utils/useEffectWithTarget.js +5 -0
  153. package/es/utils/useIsomorphicLayoutEffectWithTarget.d.ts +2 -0
  154. package/es/utils/useIsomorphicLayoutEffectWithTarget.js +5 -0
  155. package/es/utils/useLayoutEffectWithTarget.d.ts +2 -0
  156. package/es/utils/useLayoutEffectWithTarget.js +4 -0
  157. package/lib/createUpdateEffect/index.d.ts +4 -0
  158. package/lib/createUpdateEffect/index.js +28 -0
  159. package/lib/index.d.ts +9 -0
  160. package/lib/index.js +69 -0
  161. package/lib/useBoolean/index.d.ts +8 -0
  162. package/lib/useBoolean/index.js +33 -0
  163. package/lib/useCreation/index.d.ts +2 -0
  164. package/lib/useCreation/index.js +28 -0
  165. package/lib/useLatest/index.d.ts +3 -0
  166. package/lib/useLatest/index.js +13 -0
  167. package/lib/useMemoizedFn/index.d.ts +3 -0
  168. package/lib/useMemoizedFn/index.js +40 -0
  169. package/lib/useMount/index.d.ts +2 -0
  170. package/lib/useMount/index.js +23 -0
  171. package/lib/usePrescription/api.d.ts +7 -0
  172. package/lib/usePrescription/api.js +23 -0
  173. package/lib/usePrescription/index.d.ts +36 -0
  174. package/lib/usePrescription/index.js +127 -0
  175. package/lib/usePrescription/types.d.ts +15 -0
  176. package/lib/usePrescription/types.js +5 -0
  177. package/lib/useRequest/index.d.ts +4 -0
  178. package/lib/useRequest/index.js +16 -0
  179. package/lib/useRequest/routes-doc/use-request/demos/basic/cancel.d.ts +3 -0
  180. package/lib/useRequest/routes-doc/use-request/demos/basic/cancel.js +65 -0
  181. package/lib/useRequest/routes-doc/use-request/demos/basic/default.d.ts +6 -0
  182. package/lib/useRequest/routes-doc/use-request/demos/basic/default.js +38 -0
  183. package/lib/useRequest/routes-doc/use-request/demos/basic/lifeCycle.d.ts +3 -0
  184. package/lib/useRequest/routes-doc/use-request/demos/basic/lifeCycle.js +64 -0
  185. package/lib/useRequest/routes-doc/use-request/demos/basic/manualRun.d.ts +7 -0
  186. package/lib/useRequest/routes-doc/use-request/demos/basic/manualRun.js +63 -0
  187. package/lib/useRequest/routes-doc/use-request/demos/basic/manualRunAsync.d.ts +7 -0
  188. package/lib/useRequest/routes-doc/use-request/demos/basic/manualRunAsync.js +77 -0
  189. package/lib/useRequest/routes-doc/use-request/demos/basic/mutate.d.ts +6 -0
  190. package/lib/useRequest/routes-doc/use-request/demos/basic/mutate.js +78 -0
  191. package/lib/useRequest/routes-doc/use-request/demos/basic/params.d.ts +3 -0
  192. package/lib/useRequest/routes-doc/use-request/demos/basic/params.js +53 -0
  193. package/lib/useRequest/routes-doc/use-request/demos/basic/refresh.d.ts +6 -0
  194. package/lib/useRequest/routes-doc/use-request/demos/basic/refresh.js +45 -0
  195. package/lib/useRequest/routes-doc/use-request/demos/cache/cacheKey.d.ts +3 -0
  196. package/lib/useRequest/routes-doc/use-request/demos/cache/cacheKey.js +48 -0
  197. package/lib/useRequest/routes-doc/use-request/demos/cache/clearCache.d.ts +3 -0
  198. package/lib/useRequest/routes-doc/use-request/demos/cache/clearCache.js +87 -0
  199. package/lib/useRequest/routes-doc/use-request/demos/cache/params.d.ts +3 -0
  200. package/lib/useRequest/routes-doc/use-request/demos/cache/params.js +74 -0
  201. package/lib/useRequest/routes-doc/use-request/demos/cache/setCache.d.ts +3 -0
  202. package/lib/useRequest/routes-doc/use-request/demos/cache/setCache.js +55 -0
  203. package/lib/useRequest/routes-doc/use-request/demos/cache/share.d.ts +3 -0
  204. package/lib/useRequest/routes-doc/use-request/demos/cache/share.js +44 -0
  205. package/lib/useRequest/routes-doc/use-request/demos/cache/staleTime.d.ts +3 -0
  206. package/lib/useRequest/routes-doc/use-request/demos/cache/staleTime.js +50 -0
  207. package/lib/useRequest/routes-doc/use-request/demos/debounce/debounce.d.ts +3 -0
  208. package/lib/useRequest/routes-doc/use-request/demos/debounce/debounce.js +48 -0
  209. package/lib/useRequest/routes-doc/use-request/demos/index/default.d.ts +3 -0
  210. package/lib/useRequest/routes-doc/use-request/demos/index/default.js +30 -0
  211. package/lib/useRequest/routes-doc/use-request/demos/index/manual.d.ts +7 -0
  212. package/lib/useRequest/routes-doc/use-request/demos/index/manual.js +60 -0
  213. package/lib/useRequest/routes-doc/use-request/demos/loadingDelay/loadingDelay.d.ts +3 -0
  214. package/lib/useRequest/routes-doc/use-request/demos/loadingDelay/loadingDelay.js +36 -0
  215. package/lib/useRequest/routes-doc/use-request/demos/polling/polling.d.ts +3 -0
  216. package/lib/useRequest/routes-doc/use-request/demos/polling/polling.js +38 -0
  217. package/lib/useRequest/routes-doc/use-request/demos/polling/pollingError.d.ts +3 -0
  218. package/lib/useRequest/routes-doc/use-request/demos/polling/pollingError.js +44 -0
  219. package/lib/useRequest/routes-doc/use-request/demos/ready/manualReady.d.ts +3 -0
  220. package/lib/useRequest/routes-doc/use-request/demos/ready/manualReady.js +43 -0
  221. package/lib/useRequest/routes-doc/use-request/demos/ready/ready.d.ts +3 -0
  222. package/lib/useRequest/routes-doc/use-request/demos/ready/ready.js +35 -0
  223. package/lib/useRequest/routes-doc/use-request/demos/refresh/refreshDeps.d.ts +3 -0
  224. package/lib/useRequest/routes-doc/use-request/demos/refresh/refreshDeps.js +69 -0
  225. package/lib/useRequest/routes-doc/use-request/demos/refreshOnWindowFocus/refreshOnWindowFocus.d.ts +3 -0
  226. package/lib/useRequest/routes-doc/use-request/demos/refreshOnWindowFocus/refreshOnWindowFocus.js +25 -0
  227. package/lib/useRequest/routes-doc/use-request/demos/retry/retry.d.ts +3 -0
  228. package/lib/useRequest/routes-doc/use-request/demos/retry/retry.js +51 -0
  229. package/lib/useRequest/routes-doc/use-request/demos/throttle/throttle.d.ts +3 -0
  230. package/lib/useRequest/routes-doc/use-request/demos/throttle/throttle.js +48 -0
  231. package/lib/useRequest/src/Fetch.d.ts +20 -0
  232. package/lib/useRequest/src/Fetch.js +168 -0
  233. package/lib/useRequest/src/plugins/useAutoRunPlugin.d.ts +3 -0
  234. package/lib/useRequest/src/plugins/useAutoRunPlugin.js +63 -0
  235. package/lib/useRequest/src/plugins/useCachePlugin.d.ts +3 -0
  236. package/lib/useRequest/src/plugins/useCachePlugin.js +150 -0
  237. package/lib/useRequest/src/plugins/useDebouncePlugin.d.ts +3 -0
  238. package/lib/useRequest/src/plugins/useDebouncePlugin.js +67 -0
  239. package/lib/useRequest/src/plugins/useLoadingDelayPlugin.d.ts +3 -0
  240. package/lib/useRequest/src/plugins/useLoadingDelayPlugin.js +46 -0
  241. package/lib/useRequest/src/plugins/usePollingPlugin.d.ts +3 -0
  242. package/lib/useRequest/src/plugins/usePollingPlugin.js +72 -0
  243. package/lib/useRequest/src/plugins/useRefreshOnWindowFocusPlugin.d.ts +3 -0
  244. package/lib/useRequest/src/plugins/useRefreshOnWindowFocusPlugin.js +37 -0
  245. package/lib/useRequest/src/plugins/useRetryPlugin.d.ts +3 -0
  246. package/lib/useRequest/src/plugins/useRetryPlugin.js +51 -0
  247. package/lib/useRequest/src/plugins/useThrottlePlugin.d.ts +3 -0
  248. package/lib/useRequest/src/plugins/useThrottlePlugin.js +59 -0
  249. package/lib/useRequest/src/types.d.ts +73 -0
  250. package/lib/useRequest/src/types.js +5 -0
  251. package/lib/useRequest/src/useRequest.d.ts +3 -0
  252. package/lib/useRequest/src/useRequest.js +21 -0
  253. package/lib/useRequest/src/useRequestImplement.d.ts +5 -0
  254. package/lib/useRequest/src/useRequestImplement.js +80 -0
  255. package/lib/useRequest/src/utils/cache.d.ts +14 -0
  256. package/lib/useRequest/src/utils/cache.js +37 -0
  257. package/lib/useRequest/src/utils/cachePromise.d.ts +4 -0
  258. package/lib/useRequest/src/utils/cachePromise.js +22 -0
  259. package/lib/useRequest/src/utils/cacheSubscribe.d.ts +4 -0
  260. package/lib/useRequest/src/utils/cacheSubscribe.js +24 -0
  261. package/lib/useRequest/src/utils/isDocumentVisible.d.ts +1 -0
  262. package/lib/useRequest/src/utils/isDocumentVisible.js +14 -0
  263. package/lib/useRequest/src/utils/isOnline.d.ts +1 -0
  264. package/lib/useRequest/src/utils/isOnline.js +14 -0
  265. package/lib/useRequest/src/utils/limit.d.ts +1 -0
  266. package/lib/useRequest/src/utils/limit.js +23 -0
  267. package/lib/useRequest/src/utils/subscribeFocus.d.ts +3 -0
  268. package/lib/useRequest/src/utils/subscribeFocus.js +35 -0
  269. package/lib/useRequest/src/utils/subscribeReVisible.d.ts +3 -0
  270. package/lib/useRequest/src/utils/subscribeReVisible.js +28 -0
  271. package/lib/useToggle/index.d.ts +10 -0
  272. package/lib/useToggle/index.js +47 -0
  273. package/lib/useUnmount/index.d.ts +2 -0
  274. package/lib/useUnmount/index.js +25 -0
  275. package/lib/useUpdate/index.d.ts +2 -0
  276. package/lib/useUpdate/index.js +16 -0
  277. package/lib/useUpdateEffect/index.d.ts +3 -0
  278. package/lib/useUpdateEffect/index.js +9 -0
  279. package/lib/utils/createEffectWithTarget.d.ts +4 -0
  280. package/lib/utils/createEffectWithTarget.js +55 -0
  281. package/lib/utils/depsAreSame.d.ts +2 -0
  282. package/lib/utils/depsAreSame.js +14 -0
  283. package/lib/utils/depsEqual.d.ts +2 -0
  284. package/lib/utils/depsEqual.js +17 -0
  285. package/lib/utils/domTarget.d.ts +6 -0
  286. package/lib/utils/domTarget.js +27 -0
  287. package/lib/utils/getDocumentOrShadow.d.ts +3 -0
  288. package/lib/utils/getDocumentOrShadow.js +34 -0
  289. package/lib/utils/index.d.ts +6 -0
  290. package/lib/utils/index.js +26 -0
  291. package/lib/utils/isAppleDevice.d.ts +2 -0
  292. package/lib/utils/isAppleDevice.js +9 -0
  293. package/lib/utils/isBrowser.d.ts +2 -0
  294. package/lib/utils/isBrowser.js +8 -0
  295. package/lib/utils/isDev.d.ts +2 -0
  296. package/lib/utils/isDev.js +9 -0
  297. package/lib/utils/lodash-polyfill.d.ts +2 -0
  298. package/lib/utils/lodash-polyfill.js +23 -0
  299. package/lib/utils/testingHelpers.d.ts +2 -0
  300. package/lib/utils/testingHelpers.js +26 -0
  301. package/lib/utils/tests.d.ts +4 -0
  302. package/lib/utils/tests.js +30 -0
  303. package/lib/utils/useDeepCompareWithTarget.d.ts +4 -0
  304. package/lib/utils/useDeepCompareWithTarget.js +21 -0
  305. package/lib/utils/useEffectWithTarget.d.ts +2 -0
  306. package/lib/utils/useEffectWithTarget.js +12 -0
  307. package/lib/utils/useIsomorphicLayoutEffectWithTarget.d.ts +2 -0
  308. package/lib/utils/useIsomorphicLayoutEffectWithTarget.js +12 -0
  309. package/lib/utils/useLayoutEffectWithTarget.d.ts +2 -0
  310. package/lib/utils/useLayoutEffectWithTarget.js +11 -0
  311. package/package.json +28 -0
@@ -0,0 +1,55 @@
1
+ import { __read } from "tslib";
2
+ import { message } from 'antd';
3
+ import React, { useState } from 'react';
4
+ import useRequest from '../../../../index';
5
+ function editUsername(username) {
6
+ return new Promise(function (resolve, reject) {
7
+ setTimeout(function () {
8
+ if (Math.random() > 0.5) {
9
+ resolve();
10
+ } else {
11
+ reject(new Error('Failed to modify username'));
12
+ }
13
+ }, 1000);
14
+ });
15
+ }
16
+ export default (function () {
17
+ var _a = __read(useState(''), 2),
18
+ state = _a[0],
19
+ setState = _a[1];
20
+ var _b = useRequest(editUsername, {
21
+ manual: true,
22
+ onBefore: function (params) {
23
+ message.info("Start Request: ".concat(params[0]));
24
+ },
25
+ onSuccess: function (result, params) {
26
+ setState('');
27
+ message.success("The username was changed to \"".concat(params[0], "\" !"));
28
+ },
29
+ onError: function (error) {
30
+ message.error(error.message);
31
+ },
32
+ onFinally: function (params, result, error) {
33
+ message.info("Request finish");
34
+ }
35
+ }),
36
+ loading = _b.loading,
37
+ run = _b.run;
38
+ return React.createElement("div", null, React.createElement("input", {
39
+ onChange: function (e) {
40
+ return setState(e.target.value);
41
+ },
42
+ value: state,
43
+ placeholder: "Please enter username",
44
+ style: {
45
+ width: 240,
46
+ marginRight: 16
47
+ }
48
+ }), React.createElement("button", {
49
+ disabled: loading,
50
+ type: "button",
51
+ onClick: function () {
52
+ return run(state);
53
+ }
54
+ }, loading ? 'Loading' : 'Edit'));
55
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * title: 修改用户名
3
+ * desc: 在这个例子中,我们通过 `run(username)` 来修改用户名,通过 `onSuccess` 和 `onError` 来处理成功和失败。
4
+ */
5
+ import React from 'react';
6
+ declare const _default: () => React.JSX.Element;
7
+ export default _default;
@@ -0,0 +1,53 @@
1
+ /**
2
+ * title: 修改用户名
3
+ * desc: 在这个例子中,我们通过 `run(username)` 来修改用户名,通过 `onSuccess` 和 `onError` 来处理成功和失败。
4
+ */
5
+ import { __read } from "tslib";
6
+ import { message } from 'antd';
7
+ import React, { useState } from 'react';
8
+ import useRequest from '../../../../index';
9
+ function editUsername(username) {
10
+ return new Promise(function (resolve, reject) {
11
+ setTimeout(function () {
12
+ if (Math.random() > 0.5) {
13
+ resolve();
14
+ } else {
15
+ reject(new Error('Failed to modify username'));
16
+ }
17
+ }, 1000);
18
+ });
19
+ }
20
+ export default (function () {
21
+ var _a = __read(useState(''), 2),
22
+ state = _a[0],
23
+ setState = _a[1];
24
+ var _b = useRequest(editUsername, {
25
+ manual: true,
26
+ onSuccess: function (result, params) {
27
+ setState('');
28
+ message.success("The username was changed to \"".concat(params[0], "\" !"));
29
+ },
30
+ onError: function (error) {
31
+ message.error(error.message);
32
+ }
33
+ }),
34
+ loading = _b.loading,
35
+ run = _b.run;
36
+ return React.createElement("div", null, React.createElement("input", {
37
+ onChange: function (e) {
38
+ return setState(e.target.value);
39
+ },
40
+ value: state,
41
+ placeholder: "Please enter username",
42
+ style: {
43
+ width: 240,
44
+ marginRight: 16
45
+ }
46
+ }), React.createElement("button", {
47
+ disabled: loading,
48
+ type: "button",
49
+ onClick: function () {
50
+ return run(state);
51
+ }
52
+ }, loading ? 'Loading' : 'Edit'));
53
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * title: 修改用户名
3
+ * desc: 在这个例子中,我们通过 `runAsync(username)` 来修改用户名,此时必须通过 catch 来自行处理异常。
4
+ */
5
+ import React from 'react';
6
+ declare const _default: () => React.JSX.Element;
7
+ export default _default;
@@ -0,0 +1,67 @@
1
+ /**
2
+ * title: 修改用户名
3
+ * desc: 在这个例子中,我们通过 `runAsync(username)` 来修改用户名,此时必须通过 catch 来自行处理异常。
4
+ */
5
+ import { __awaiter, __generator, __read } from "tslib";
6
+ import { message } from 'antd';
7
+ import React, { useState } from 'react';
8
+ import useRequest from '../../../../index';
9
+ function editUsername(username) {
10
+ return new Promise(function (resolve, reject) {
11
+ setTimeout(function () {
12
+ if (Math.random() > 0.5) {
13
+ resolve();
14
+ } else {
15
+ reject(new Error('Failed to modify username'));
16
+ }
17
+ }, 1000);
18
+ });
19
+ }
20
+ export default (function () {
21
+ var _a = __read(useState(''), 2),
22
+ state = _a[0],
23
+ setState = _a[1];
24
+ var _b = useRequest(editUsername, {
25
+ manual: true
26
+ }),
27
+ loading = _b.loading,
28
+ runAsync = _b.runAsync;
29
+ var onClick = function () {
30
+ return __awaiter(void 0, void 0, void 0, function () {
31
+ var error_1;
32
+ return __generator(this, function (_a) {
33
+ switch (_a.label) {
34
+ case 0:
35
+ _a.trys.push([0, 2,, 3]);
36
+ return [4 /*yield*/, runAsync(state)];
37
+ case 1:
38
+ _a.sent();
39
+ setState('');
40
+ message.success("The username was changed to \"".concat(state, "\" !"));
41
+ return [3 /*break*/, 3];
42
+ case 2:
43
+ error_1 = _a.sent();
44
+ message.error(error_1.message);
45
+ return [3 /*break*/, 3];
46
+ case 3:
47
+ return [2 /*return*/];
48
+ }
49
+ });
50
+ });
51
+ };
52
+ return React.createElement("div", null, React.createElement("input", {
53
+ onChange: function (e) {
54
+ return setState(e.target.value);
55
+ },
56
+ value: state,
57
+ placeholder: "Please enter username",
58
+ style: {
59
+ width: 240,
60
+ marginRight: 16
61
+ }
62
+ }), React.createElement("button", {
63
+ disabled: loading,
64
+ type: "button",
65
+ onClick: onClick
66
+ }, loading ? 'Loading' : 'Edit'));
67
+ });
@@ -0,0 +1,6 @@
1
+ /**
2
+ * title: 修改用户名
3
+ */
4
+ import React from 'react';
5
+ declare const _default: () => React.JSX.Element;
6
+ export default _default;
@@ -0,0 +1,68 @@
1
+ /**
2
+ * title: 修改用户名
3
+ */
4
+ import { __read } from "tslib";
5
+ import { message } from 'antd';
6
+ import React, { useState, useRef } from 'react';
7
+ import useRequest from '../../../../index';
8
+ import Mock from 'mockjs';
9
+ function getUsername() {
10
+ return new Promise(function (resolve) {
11
+ setTimeout(function () {
12
+ resolve(Mock.mock('@name'));
13
+ }, 1000);
14
+ });
15
+ }
16
+ function editUsername(username) {
17
+ return new Promise(function (resolve, reject) {
18
+ setTimeout(function () {
19
+ if (Math.random() > 0.5) {
20
+ resolve();
21
+ } else {
22
+ reject(new Error('Failed to modify username'));
23
+ }
24
+ }, 1000);
25
+ });
26
+ }
27
+ export default (function () {
28
+ // store last username
29
+ var lastRef = useRef();
30
+ var _a = __read(useState(''), 2),
31
+ state = _a[0],
32
+ setState = _a[1];
33
+ // get username
34
+ var _b = useRequest(getUsername),
35
+ username = _b.data,
36
+ mutate = _b.mutate;
37
+ // edit username
38
+ var edit = useRequest(editUsername, {
39
+ manual: true,
40
+ onSuccess: function (result, params) {
41
+ setState('');
42
+ message.success("The username was changed to \"".concat(params[0], "\" !"));
43
+ },
44
+ onError: function (error) {
45
+ message.error(error.message);
46
+ mutate(lastRef.current);
47
+ }
48
+ }).run;
49
+ var onChange = function () {
50
+ lastRef.current = username;
51
+ mutate(state);
52
+ edit(state);
53
+ };
54
+ return React.createElement("div", null, React.createElement("p", null, "Username: ", username), React.createElement("input", {
55
+ onChange: function (e) {
56
+ return setState(e.target.value);
57
+ },
58
+ value: state,
59
+ placeholder: "Please enter username",
60
+ style: {
61
+ width: 240,
62
+ marginRight: 16
63
+ }
64
+ }), React.createElement("button", {
65
+ type: "button",
66
+ onClick: onChange
67
+ }, "Edit"));
68
+ });
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;
@@ -0,0 +1,44 @@
1
+ import { __read } from "tslib";
2
+ import useRequest from '../../../../index';
3
+ import Mock from 'mockjs';
4
+ import React, { useState } from 'react';
5
+ function getUsername(id) {
6
+ return new Promise(function (resolve) {
7
+ setTimeout(function () {
8
+ resolve(Mock.mock('@name'));
9
+ }, 1000);
10
+ });
11
+ }
12
+ export default (function () {
13
+ var _a = __read(useState(''), 2),
14
+ state = _a[0],
15
+ setState = _a[1];
16
+ // get username
17
+ var _b = useRequest(getUsername, {
18
+ defaultParams: ['1']
19
+ }),
20
+ username = _b.data,
21
+ run = _b.run,
22
+ params = _b.params;
23
+ var onChange = function () {
24
+ run(state);
25
+ };
26
+ return React.createElement("div", null, React.createElement("input", {
27
+ onChange: function (e) {
28
+ return setState(e.target.value);
29
+ },
30
+ value: state,
31
+ placeholder: "Please enter userId",
32
+ style: {
33
+ width: 240,
34
+ marginRight: 16
35
+ }
36
+ }), React.createElement("button", {
37
+ type: "button",
38
+ onClick: onChange
39
+ }, "GetUserName"), React.createElement("p", {
40
+ style: {
41
+ marginTop: 8
42
+ }
43
+ }, "UserId: ", params[0]), React.createElement("p", null, "Username: ", username));
44
+ });
@@ -0,0 +1,6 @@
1
+ /**
2
+ * title: 刷新用户名称
3
+ */
4
+ import React from 'react';
5
+ declare const _default: () => React.JSX.Element;
6
+ export default _default;
@@ -0,0 +1,35 @@
1
+ /**
2
+ * title: 刷新用户名称
3
+ */
4
+ import useRequest from '../../../../index';
5
+ import Mock from 'mockjs';
6
+ import React, { useEffect } from 'react';
7
+ function getUsername(id) {
8
+ console.log('use-request-refresh-id', id);
9
+ return new Promise(function (resolve) {
10
+ setTimeout(function () {
11
+ resolve(Mock.mock('@name'));
12
+ }, 1000);
13
+ });
14
+ }
15
+ export default (function () {
16
+ var _a = useRequest(function (id) {
17
+ return getUsername(id);
18
+ }, {
19
+ manual: true
20
+ }),
21
+ data = _a.data,
22
+ loading = _a.loading,
23
+ run = _a.run,
24
+ refresh = _a.refresh;
25
+ useEffect(function () {
26
+ run(1);
27
+ }, []);
28
+ if (loading) {
29
+ return React.createElement("div", null, "loading...");
30
+ }
31
+ return React.createElement("div", null, React.createElement("p", null, "Username: ", data), React.createElement("button", {
32
+ onClick: refresh,
33
+ type: "button"
34
+ }, "Refresh"));
35
+ });
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;
@@ -0,0 +1,41 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import useBoolean from '../../../../../useBoolean';
3
+ import Mock from 'mockjs';
4
+ import React from 'react';
5
+ import useRequest from '../../../../index';
6
+ function getArticle() {
7
+ return __awaiter(this, void 0, void 0, function () {
8
+ return __generator(this, function (_a) {
9
+ return [2 /*return*/, new Promise(function (resolve) {
10
+ setTimeout(function () {
11
+ resolve({
12
+ data: Mock.mock('@paragraph'),
13
+ time: new Date().getTime()
14
+ });
15
+ }, 1000);
16
+ })];
17
+ });
18
+ });
19
+ }
20
+ var Article = function () {
21
+ var _a = useRequest(getArticle, {
22
+ cacheKey: 'cacheKey-demo'
23
+ }),
24
+ data = _a.data,
25
+ loading = _a.loading;
26
+ if (!data && loading) {
27
+ return React.createElement("p", null, "Loading");
28
+ }
29
+ return React.createElement(React.Fragment, null, React.createElement("p", null, "Background loading: ", loading ? 'true' : 'false'), React.createElement("p", null, "Latest request time: ", data === null || data === void 0 ? void 0 : data.time), React.createElement("p", null, data === null || data === void 0 ? void 0 : data.data));
30
+ };
31
+ export default (function () {
32
+ var _a = useBoolean(),
33
+ state = _a.state,
34
+ toggle = _a.toggle;
35
+ return React.createElement("div", null, React.createElement("button", {
36
+ type: "button",
37
+ onClick: function () {
38
+ return toggle();
39
+ }
40
+ }, "show/hidden"), state && React.createElement(Article, null));
41
+ });
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;
@@ -0,0 +1,80 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import Mock from 'mockjs';
3
+ import React from 'react';
4
+ import useRequest from '../../../../index';
5
+ import { clearCache } from '../../../../src/utils/cache';
6
+ import useBoolean from '../../../../../useBoolean';
7
+ import { message } from 'antd';
8
+ function getArticle() {
9
+ return __awaiter(this, void 0, void 0, function () {
10
+ return __generator(this, function (_a) {
11
+ return [2 /*return*/, new Promise(function (resolve) {
12
+ setTimeout(function () {
13
+ resolve({
14
+ data: Mock.mock('@paragraph'),
15
+ time: new Date().getTime()
16
+ });
17
+ }, 3000);
18
+ })];
19
+ });
20
+ });
21
+ }
22
+ var Article = function (_a) {
23
+ var cacheKey = _a.cacheKey;
24
+ var _b = useRequest(getArticle, {
25
+ cacheKey: cacheKey
26
+ }),
27
+ data = _b.data,
28
+ loading = _b.loading;
29
+ if (!data && loading) {
30
+ return React.createElement("p", null, "Loading");
31
+ }
32
+ return React.createElement(React.Fragment, null, React.createElement("p", null, "Background loading: ", loading ? 'true' : 'false'), React.createElement("p", null, "Latest request time: ", data === null || data === void 0 ? void 0 : data.time), React.createElement("p", null, data === null || data === void 0 ? void 0 : data.data));
33
+ };
34
+ var clear = function (cacheKey) {
35
+ clearCache(cacheKey);
36
+ var tips = Array.isArray(cacheKey) ? cacheKey.join('、') : cacheKey;
37
+ message.success("Clear ".concat(tips !== null && tips !== void 0 ? tips : 'All', " finished"));
38
+ };
39
+ export default (function () {
40
+ var _a = useBoolean(),
41
+ state = _a.state,
42
+ toggle = _a.toggle;
43
+ return React.createElement("div", null, React.createElement("p", null, React.createElement("button", {
44
+ type: "button",
45
+ onClick: function () {
46
+ return toggle();
47
+ }
48
+ }, "show/hidden")), React.createElement("p", null, React.createElement("button", {
49
+ style: {
50
+ marginRight: 8
51
+ },
52
+ onClick: function () {
53
+ return clear('Article1');
54
+ }
55
+ }, "Clear Article1"), React.createElement("button", {
56
+ style: {
57
+ marginRight: 8
58
+ },
59
+ onClick: function () {
60
+ return clear('Article2');
61
+ }
62
+ }, "Clear Article2"), React.createElement("button", {
63
+ style: {
64
+ marginRight: 8
65
+ },
66
+ onClick: function () {
67
+ return clear(['Article2', 'Article3']);
68
+ }
69
+ }, "Clear Article2 and Article3"), React.createElement("button", {
70
+ onClick: function () {
71
+ return clear();
72
+ }
73
+ }, "Clear All")), React.createElement("h2", null, "Article 1"), state && React.createElement(Article, {
74
+ cacheKey: "Article1"
75
+ }), React.createElement("h2", null, "Article 2"), state && React.createElement(Article, {
76
+ cacheKey: "Article2"
77
+ }), React.createElement("h2", null, "Article 3"), state && React.createElement(Article, {
78
+ cacheKey: "Article3"
79
+ }));
80
+ });
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;
@@ -0,0 +1,65 @@
1
+ import { __awaiter, __generator, __read } from "tslib";
2
+ import useBoolean from '../../../../../useBoolean';
3
+ import useRequest from '../../../../index';
4
+ import Mock from 'mockjs';
5
+ import React, { useState } from 'react';
6
+ function getArticle(keyword) {
7
+ return __awaiter(this, void 0, void 0, function () {
8
+ return __generator(this, function (_a) {
9
+ console.log('cacheKey', keyword);
10
+ return [2 /*return*/, new Promise(function (resolve) {
11
+ setTimeout(function () {
12
+ resolve({
13
+ data: Mock.mock('@paragraph'),
14
+ time: new Date().getTime()
15
+ });
16
+ }, 1000);
17
+ })];
18
+ });
19
+ });
20
+ }
21
+ var Article = function () {
22
+ var _a = useRequest(getArticle, {
23
+ cacheKey: 'cacheKey-demo'
24
+ }),
25
+ data = _a.data,
26
+ params = _a.params,
27
+ loading = _a.loading,
28
+ run = _a.run;
29
+ var _b = __read(useState(params[0] || ''), 2),
30
+ keyword = _b[0],
31
+ setKeyword = _b[1];
32
+ if (!data && loading) {
33
+ return React.createElement("p", null, "Loading");
34
+ }
35
+ return React.createElement(React.Fragment, null, React.createElement("div", null, React.createElement("input", {
36
+ style: {
37
+ width: 300
38
+ },
39
+ value: keyword,
40
+ onChange: function (e) {
41
+ return setKeyword(e.target.value);
42
+ }
43
+ }), React.createElement("button", {
44
+ style: {
45
+ marginLeft: 8
46
+ },
47
+ onClick: function () {
48
+ run(keyword);
49
+ }
50
+ }, "Get")), React.createElement("p", null, "Background loading: ", loading ? 'true' : 'false'), React.createElement("p", null, "Latest request time: ", data === null || data === void 0 ? void 0 : data.time), React.createElement("p", null, "Keyword: ", keyword), React.createElement("p", null, data === null || data === void 0 ? void 0 : data.data));
51
+ };
52
+ export default (function () {
53
+ var _a = useBoolean(),
54
+ state = _a.state,
55
+ toggle = _a.toggle;
56
+ return React.createElement("div", null, React.createElement("button", {
57
+ type: "button",
58
+ onClick: function () {
59
+ return toggle();
60
+ },
61
+ style: {
62
+ marginBottom: 16
63
+ }
64
+ }, "show/hidden"), state && React.createElement(Article, null));
65
+ });
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;
@@ -0,0 +1,48 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import useBoolean from '../../../../../useBoolean';
3
+ import Mock from 'mockjs';
4
+ import React from 'react';
5
+ import useRequest from '../../../../index';
6
+ function getArticle() {
7
+ return __awaiter(this, void 0, void 0, function () {
8
+ return __generator(this, function (_a) {
9
+ return [2 /*return*/, new Promise(function (resolve) {
10
+ setTimeout(function () {
11
+ resolve({
12
+ data: Mock.mock('@paragraph'),
13
+ time: new Date().getTime()
14
+ });
15
+ }, 1000);
16
+ })];
17
+ });
18
+ });
19
+ }
20
+ var cacheKey = 'setCache-demo';
21
+ var Article = function () {
22
+ var _a = useRequest(getArticle, {
23
+ cacheKey: cacheKey,
24
+ setCache: function (data) {
25
+ return localStorage.setItem(cacheKey, JSON.stringify(data));
26
+ },
27
+ getCache: function () {
28
+ return JSON.parse(localStorage.getItem(cacheKey) || '{}');
29
+ }
30
+ }),
31
+ data = _a.data,
32
+ loading = _a.loading;
33
+ if (!data && loading) {
34
+ return React.createElement("p", null, "Loading");
35
+ }
36
+ return React.createElement(React.Fragment, null, React.createElement("p", null, "Background loading: ", loading ? 'true' : 'false'), React.createElement("p", null, "Latest request time: ", data === null || data === void 0 ? void 0 : data.time), React.createElement("p", null, data === null || data === void 0 ? void 0 : data.data));
37
+ };
38
+ export default (function () {
39
+ var _a = useBoolean(),
40
+ state = _a.state,
41
+ toggle = _a.toggle;
42
+ return React.createElement("div", null, React.createElement("button", {
43
+ type: "button",
44
+ onClick: function () {
45
+ return toggle();
46
+ }
47
+ }, "show/hidden"), state && React.createElement(Article, null));
48
+ });
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;
@@ -0,0 +1,37 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import Mock from 'mockjs';
3
+ import React from 'react';
4
+ import useRequest from '../../../../index';
5
+ function getArticle() {
6
+ return __awaiter(this, void 0, void 0, function () {
7
+ return __generator(this, function (_a) {
8
+ console.log('cacheKey-share');
9
+ return [2 /*return*/, new Promise(function (resolve) {
10
+ setTimeout(function () {
11
+ resolve({
12
+ data: Mock.mock('@paragraph'),
13
+ time: new Date().getTime()
14
+ });
15
+ }, 3000);
16
+ })];
17
+ });
18
+ });
19
+ }
20
+ var Article = function () {
21
+ var _a = useRequest(getArticle, {
22
+ cacheKey: 'cacheKey-share'
23
+ }),
24
+ data = _a.data,
25
+ loading = _a.loading,
26
+ refresh = _a.refresh;
27
+ if (!data && loading) {
28
+ return React.createElement("p", null, "Loading");
29
+ }
30
+ return React.createElement(React.Fragment, null, React.createElement("p", null, "Background loading: ", loading ? 'true' : 'false'), React.createElement("p", null, React.createElement("button", {
31
+ onClick: refresh,
32
+ type: "button"
33
+ }, "\u66F4\u65B0")), React.createElement("p", null, "Latest request time: ", data === null || data === void 0 ? void 0 : data.time), React.createElement("p", null, data === null || data === void 0 ? void 0 : data.data));
34
+ };
35
+ export default (function () {
36
+ return React.createElement("div", null, React.createElement("h2", null, "Article 1"), React.createElement(Article, null), React.createElement("h2", null, "Article 2"), React.createElement(Article, null));
37
+ });
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;