@ekz/react-utils 1.0.0 → 1.0.1

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 (182) hide show
  1. package/README.md +22 -0
  2. package/package.json +19 -7
  3. package/lib/cjs/browser/index.d.ts +0 -1
  4. package/lib/cjs/browser/index.js +0 -6
  5. package/lib/cjs/browser/index.js.map +0 -1
  6. package/lib/cjs/browser/useWindowFocusDetection.d.ts +0 -1
  7. package/lib/cjs/browser/useWindowFocusDetection.js +0 -17
  8. package/lib/cjs/browser/useWindowFocusDetection.js.map +0 -1
  9. package/lib/cjs/effects/index.d.ts +0 -3
  10. package/lib/cjs/effects/index.js +0 -11
  11. package/lib/cjs/effects/index.js.map +0 -1
  12. package/lib/cjs/effects/useDebouncedEffect.d.ts +0 -2
  13. package/lib/cjs/effects/useDebouncedEffect.js +0 -13
  14. package/lib/cjs/effects/useDebouncedEffect.js.map +0 -1
  15. package/lib/cjs/effects/useEffectOnUpdate.d.ts +0 -2
  16. package/lib/cjs/effects/useEffectOnUpdate.js +0 -16
  17. package/lib/cjs/effects/useEffectOnUpdate.js.map +0 -1
  18. package/lib/cjs/effects/useRefresh.d.ts +0 -3
  19. package/lib/cjs/effects/useRefresh.js +0 -11
  20. package/lib/cjs/effects/useRefresh.js.map +0 -1
  21. package/lib/cjs/hooks/index.d.ts +0 -1
  22. package/lib/cjs/hooks/index.js +0 -6
  23. package/lib/cjs/hooks/index.js.map +0 -1
  24. package/lib/cjs/hooks/useToggle.d.ts +0 -9
  25. package/lib/cjs/hooks/useToggle.js +0 -13
  26. package/lib/cjs/hooks/useToggle.js.map +0 -1
  27. package/lib/cjs/index.d.ts +0 -7
  28. package/lib/cjs/index.js +0 -11
  29. package/lib/cjs/index.js.map +0 -1
  30. package/lib/cjs/storage/backends.d.ts +0 -20
  31. package/lib/cjs/storage/backends.js +0 -33
  32. package/lib/cjs/storage/backends.js.map +0 -1
  33. package/lib/cjs/storage/index.d.ts +0 -18
  34. package/lib/cjs/storage/index.js +0 -37
  35. package/lib/cjs/storage/index.js.map +0 -1
  36. package/lib/cjs/storage/services.d.ts +0 -20
  37. package/lib/cjs/storage/services.js +0 -71
  38. package/lib/cjs/storage/services.js.map +0 -1
  39. package/lib/cjs/time/datetime.d.ts +0 -9
  40. package/lib/cjs/time/datetime.js +0 -19
  41. package/lib/cjs/time/datetime.js.map +0 -1
  42. package/lib/cjs/time/index.d.ts +0 -2
  43. package/lib/cjs/time/index.js +0 -8
  44. package/lib/cjs/time/index.js.map +0 -1
  45. package/lib/cjs/time/useClock.d.ts +0 -11
  46. package/lib/cjs/time/useClock.js +0 -23
  47. package/lib/cjs/time/useClock.js.map +0 -1
  48. package/lib/cjs/timers/index.d.ts +0 -2
  49. package/lib/cjs/timers/index.js +0 -10
  50. package/lib/cjs/timers/index.js.map +0 -1
  51. package/lib/cjs/timers/useDebounce.d.ts +0 -1
  52. package/lib/cjs/timers/useDebounce.js +0 -16
  53. package/lib/cjs/timers/useDebounce.js.map +0 -1
  54. package/lib/cjs/timers/useTimer.d.ts +0 -13
  55. package/lib/cjs/timers/useTimer.js +0 -44
  56. package/lib/cjs/timers/useTimer.js.map +0 -1
  57. package/lib/cjs/ts/index.d.ts +0 -1
  58. package/lib/cjs/ts/index.js +0 -6
  59. package/lib/cjs/ts/index.js.map +0 -1
  60. package/lib/cjs/ts/unreachable.d.ts +0 -1
  61. package/lib/cjs/ts/unreachable.js +0 -7
  62. package/lib/cjs/ts/unreachable.js.map +0 -1
  63. package/lib/esm/browser/index.d.ts +0 -1
  64. package/lib/esm/browser/index.js +0 -2
  65. package/lib/esm/browser/index.js.map +0 -1
  66. package/lib/esm/browser/useWindowFocusDetection.d.ts +0 -1
  67. package/lib/esm/browser/useWindowFocusDetection.js +0 -13
  68. package/lib/esm/browser/useWindowFocusDetection.js.map +0 -1
  69. package/lib/esm/effects/index.d.ts +0 -3
  70. package/lib/esm/effects/index.js +0 -4
  71. package/lib/esm/effects/index.js.map +0 -1
  72. package/lib/esm/effects/useDebouncedEffect.d.ts +0 -2
  73. package/lib/esm/effects/useDebouncedEffect.js +0 -9
  74. package/lib/esm/effects/useDebouncedEffect.js.map +0 -1
  75. package/lib/esm/effects/useEffectOnUpdate.d.ts +0 -2
  76. package/lib/esm/effects/useEffectOnUpdate.js +0 -12
  77. package/lib/esm/effects/useEffectOnUpdate.js.map +0 -1
  78. package/lib/esm/effects/useRefresh.d.ts +0 -3
  79. package/lib/esm/effects/useRefresh.js +0 -7
  80. package/lib/esm/effects/useRefresh.js.map +0 -1
  81. package/lib/esm/hooks/index.d.ts +0 -1
  82. package/lib/esm/hooks/index.js +0 -2
  83. package/lib/esm/hooks/index.js.map +0 -1
  84. package/lib/esm/hooks/useToggle.d.ts +0 -9
  85. package/lib/esm/hooks/useToggle.js +0 -9
  86. package/lib/esm/hooks/useToggle.js.map +0 -1
  87. package/lib/esm/index.d.ts +0 -7
  88. package/lib/esm/index.js +0 -8
  89. package/lib/esm/index.js.map +0 -1
  90. package/lib/esm/storage/backends.d.ts +0 -20
  91. package/lib/esm/storage/backends.js +0 -28
  92. package/lib/esm/storage/backends.js.map +0 -1
  93. package/lib/esm/storage/index.d.ts +0 -18
  94. package/lib/esm/storage/index.js +0 -30
  95. package/lib/esm/storage/index.js.map +0 -1
  96. package/lib/esm/storage/services.d.ts +0 -20
  97. package/lib/esm/storage/services.js +0 -65
  98. package/lib/esm/storage/services.js.map +0 -1
  99. package/lib/esm/time/datetime.d.ts +0 -9
  100. package/lib/esm/time/datetime.js +0 -16
  101. package/lib/esm/time/datetime.js.map +0 -1
  102. package/lib/esm/time/index.d.ts +0 -2
  103. package/lib/esm/time/index.js +0 -3
  104. package/lib/esm/time/index.js.map +0 -1
  105. package/lib/esm/time/useClock.d.ts +0 -11
  106. package/lib/esm/time/useClock.js +0 -18
  107. package/lib/esm/time/useClock.js.map +0 -1
  108. package/lib/esm/timers/index.d.ts +0 -2
  109. package/lib/esm/timers/index.js +0 -3
  110. package/lib/esm/timers/index.js.map +0 -1
  111. package/lib/esm/timers/useDebounce.d.ts +0 -1
  112. package/lib/esm/timers/useDebounce.js +0 -12
  113. package/lib/esm/timers/useDebounce.js.map +0 -1
  114. package/lib/esm/timers/useTimer.d.ts +0 -13
  115. package/lib/esm/timers/useTimer.js +0 -38
  116. package/lib/esm/timers/useTimer.js.map +0 -1
  117. package/lib/esm/ts/index.d.ts +0 -1
  118. package/lib/esm/ts/index.js +0 -2
  119. package/lib/esm/ts/index.js.map +0 -1
  120. package/lib/esm/ts/unreachable.d.ts +0 -1
  121. package/lib/esm/ts/unreachable.js +0 -4
  122. package/lib/esm/ts/unreachable.js.map +0 -1
  123. package/lib/esnext/browser/index.d.ts +0 -1
  124. package/lib/esnext/browser/index.js +0 -2
  125. package/lib/esnext/browser/index.js.map +0 -1
  126. package/lib/esnext/browser/useWindowFocusDetection.d.ts +0 -1
  127. package/lib/esnext/browser/useWindowFocusDetection.js +0 -13
  128. package/lib/esnext/browser/useWindowFocusDetection.js.map +0 -1
  129. package/lib/esnext/effects/index.d.ts +0 -3
  130. package/lib/esnext/effects/index.js +0 -4
  131. package/lib/esnext/effects/index.js.map +0 -1
  132. package/lib/esnext/effects/useDebouncedEffect.d.ts +0 -2
  133. package/lib/esnext/effects/useDebouncedEffect.js +0 -9
  134. package/lib/esnext/effects/useDebouncedEffect.js.map +0 -1
  135. package/lib/esnext/effects/useEffectOnUpdate.d.ts +0 -2
  136. package/lib/esnext/effects/useEffectOnUpdate.js +0 -12
  137. package/lib/esnext/effects/useEffectOnUpdate.js.map +0 -1
  138. package/lib/esnext/effects/useRefresh.d.ts +0 -3
  139. package/lib/esnext/effects/useRefresh.js +0 -7
  140. package/lib/esnext/effects/useRefresh.js.map +0 -1
  141. package/lib/esnext/hooks/index.d.ts +0 -1
  142. package/lib/esnext/hooks/index.js +0 -2
  143. package/lib/esnext/hooks/index.js.map +0 -1
  144. package/lib/esnext/hooks/useToggle.d.ts +0 -9
  145. package/lib/esnext/hooks/useToggle.js +0 -9
  146. package/lib/esnext/hooks/useToggle.js.map +0 -1
  147. package/lib/esnext/index.d.ts +0 -7
  148. package/lib/esnext/index.js +0 -8
  149. package/lib/esnext/index.js.map +0 -1
  150. package/lib/esnext/storage/backends.d.ts +0 -20
  151. package/lib/esnext/storage/backends.js +0 -23
  152. package/lib/esnext/storage/backends.js.map +0 -1
  153. package/lib/esnext/storage/index.d.ts +0 -18
  154. package/lib/esnext/storage/index.js +0 -30
  155. package/lib/esnext/storage/index.js.map +0 -1
  156. package/lib/esnext/storage/services.d.ts +0 -20
  157. package/lib/esnext/storage/services.js +0 -69
  158. package/lib/esnext/storage/services.js.map +0 -1
  159. package/lib/esnext/time/datetime.d.ts +0 -9
  160. package/lib/esnext/time/datetime.js +0 -16
  161. package/lib/esnext/time/datetime.js.map +0 -1
  162. package/lib/esnext/time/index.d.ts +0 -2
  163. package/lib/esnext/time/index.js +0 -3
  164. package/lib/esnext/time/index.js.map +0 -1
  165. package/lib/esnext/time/useClock.d.ts +0 -11
  166. package/lib/esnext/time/useClock.js +0 -18
  167. package/lib/esnext/time/useClock.js.map +0 -1
  168. package/lib/esnext/timers/index.d.ts +0 -2
  169. package/lib/esnext/timers/index.js +0 -3
  170. package/lib/esnext/timers/index.js.map +0 -1
  171. package/lib/esnext/timers/useDebounce.d.ts +0 -1
  172. package/lib/esnext/timers/useDebounce.js +0 -12
  173. package/lib/esnext/timers/useDebounce.js.map +0 -1
  174. package/lib/esnext/timers/useTimer.d.ts +0 -13
  175. package/lib/esnext/timers/useTimer.js +0 -38
  176. package/lib/esnext/timers/useTimer.js.map +0 -1
  177. package/lib/esnext/ts/index.d.ts +0 -1
  178. package/lib/esnext/ts/index.js +0 -2
  179. package/lib/esnext/ts/index.js.map +0 -1
  180. package/lib/esnext/ts/unreachable.d.ts +0 -1
  181. package/lib/esnext/ts/unreachable.js +0 -4
  182. package/lib/esnext/ts/unreachable.js.map +0 -1
@@ -1,38 +0,0 @@
1
- import * as React from 'react';
2
- export default function useTimer(defaultTimeoutDurationMs = 0, timerFunction = setTimeout) {
3
- const timeoutId = React.useRef(undefined);
4
- const callbackCleanup = React.useRef(undefined);
5
- const clear = React.useCallback(() => {
6
- if (timeoutId.current != null) {
7
- if (timerFunction === setTimeout) {
8
- clearTimeout(timeoutId.current);
9
- }
10
- else {
11
- clearInterval(timeoutId.current);
12
- }
13
- }
14
- if (callbackCleanup.current != null) {
15
- callbackCleanup.current();
16
- callbackCleanup.current = undefined;
17
- }
18
- }, [timerFunction]);
19
- React.useEffect(() => clear, [clear]);
20
- return React.useMemo(() => {
21
- const runTimeout = (timeoutHandler, timeoutDurationMs = defaultTimeoutDurationMs) => {
22
- clear();
23
- timeoutId.current = timerFunction(() => {
24
- callbackCleanup.current = timeoutHandler();
25
- }, timeoutDurationMs);
26
- return clear;
27
- };
28
- runTimeout.cancel = clear;
29
- return runTimeout;
30
- }, [clear, timerFunction, defaultTimeoutDurationMs]);
31
- }
32
- export function useTimeout(defaultTimeoutDurationMs = 0) {
33
- return useTimer(defaultTimeoutDurationMs, setTimeout);
34
- }
35
- export function useInterval(defaultTimeoutDurationMs = 0) {
36
- return useTimer(defaultTimeoutDurationMs, setInterval);
37
- }
38
- //# sourceMappingURL=useTimer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTimer.js","sourceRoot":"","sources":["../../../src/main/web/timers/useTimer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC5B,wBAAwB,GAAG,CAAC,EAC5B,gBAA+B,UAAU;IAEzC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAiB,SAAS,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAe,SAAS,CAAC,CAAC;IAE9D,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACjC,IAAI,SAAS,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAC5B,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;gBAC/B,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACJ,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QAED,IAAI,eAAe,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAClC,eAAe,CAAC,OAAO,EAAE,CAAC;YAC1B,eAAe,CAAC,OAAO,GAAG,SAAS,CAAC;QACxC,CAAC;IACL,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEtC,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACtB,MAAM,UAAU,GAAG,CACf,cAAmC,EACnC,iBAAiB,GAAG,wBAAwB,EAChC,EAAE;YACd,KAAK,EAAE,CAAC;YACR,SAAS,CAAC,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE;gBACnC,eAAe,CAAC,OAAO,GAAG,cAAc,EAAE,CAAC;YAC/C,CAAC,EAAE,iBAAiB,CAAC,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC;QAEF,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;QAE1B,OAAO,UAAU,CAAC;IACtB,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,wBAAwB,CAAC,CAAC,CAAC;AACzD,CAAC;AAID,MAAM,UAAU,UAAU,CAAC,wBAAwB,GAAG,CAAC;IACnD,OAAO,QAAQ,CAAC,wBAAwB,EAAE,UAAU,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,wBAAwB,GAAG,CAAC;IACpD,OAAO,QAAQ,CAAC,wBAAwB,EAAE,WAAW,CAAC,CAAC;AAC3D,CAAC"}
@@ -1 +0,0 @@
1
- export { unreachable } from './unreachable';
@@ -1,2 +0,0 @@
1
- export { unreachable } from './unreachable';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/main/web/ts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
@@ -1 +0,0 @@
1
- export declare function unreachable(value: never): never;
@@ -1,4 +0,0 @@
1
- export function unreachable(value) {
2
- throw new TypeError(`Unexpected unreachable value [${value}]`);
3
- }
4
- //# sourceMappingURL=unreachable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unreachable.js","sourceRoot":"","sources":["../../../src/main/web/ts/unreachable.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,WAAW,CAAC,KAAY;IACpC,MAAM,IAAI,SAAS,CAAC,iCAAiC,KAAK,GAAG,CAAC,CAAC;AACnE,CAAC"}