@koine/react 2.0.0-beta.38 → 2.0.0-beta.39

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 (470) hide show
  1. package/README.md +1 -0
  2. package/calendar/CalendarDaygridCell.d.ts +4 -4
  3. package/calendar/CalendarDaygridNav.d.ts +3 -3
  4. package/calendar/CalendarDaygridTable.d.ts +4 -4
  5. package/calendar/CalendarLegend.d.ts +3 -3
  6. package/calendar/calendar-api-google.d.ts +2 -2
  7. package/calendar/useCalendar.d.ts +5 -5
  8. package/calendar/useDateLocale.d.ts +2 -0
  9. package/calendar/utils.d.ts +11 -11
  10. package/calendar.cjs.d.ts +1 -0
  11. package/calendar.cjs.default.js +1 -0
  12. package/calendar.cjs.js +62 -0
  13. package/calendar.cjs.mjs +2 -0
  14. package/calendar.d.ts +7 -0
  15. package/calendar.esm.js +35 -0
  16. package/components/FaviconTags.d.ts +8 -0
  17. package/components/Meta.d.ts +4 -0
  18. package/components/NoJs.d.ts +2 -0
  19. package/forms/antispam.d.ts +6 -6
  20. package/forms.cjs.d.ts +1 -0
  21. package/forms.cjs.default.js +1 -0
  22. package/forms.cjs.js +11 -0
  23. package/forms.cjs.mjs +2 -0
  24. package/forms.d.ts +1 -0
  25. package/forms.esm.js +6 -0
  26. package/hooks/index.d.ts +19 -0
  27. package/{useAsyncFn.d.ts → hooks/useAsyncFn.d.ts} +3 -3
  28. package/hooks/useFirstMountState.d.ts +1 -0
  29. package/hooks/useFixedOffset.d.ts +1 -0
  30. package/hooks/useFocus.d.ts +1 -0
  31. package/hooks/useInterval.d.ts +1 -0
  32. package/hooks/useIsomorphicLayoutEffect.d.ts +2 -0
  33. package/hooks/useKeyUp.d.ts +1 -0
  34. package/{useMeasure.d.ts → hooks/useMeasure.d.ts} +2 -2
  35. package/hooks/useMountedState.d.ts +1 -0
  36. package/hooks/useNavigateAway.d.ts +2 -0
  37. package/hooks/usePrevious.d.ts +1 -0
  38. package/hooks/usePreviousRef.d.ts +1 -0
  39. package/{useReveal.d.ts → hooks/useReveal.d.ts} +1 -1
  40. package/hooks/useScrollPosition.d.ts +7 -0
  41. package/hooks/useScrollThreshold.d.ts +1 -0
  42. package/hooks/useScrollTo.d.ts +1 -0
  43. package/hooks/useSmoothScroll.d.ts +1 -0
  44. package/hooks/useSpinDelay.d.ts +1 -0
  45. package/hooks/useTraceUpdate.d.ts +1 -0
  46. package/hooks/useUpdateEffect.d.ts +2 -0
  47. package/hooks/useWindowSize.d.ts +2 -0
  48. package/index.cjs.d.ts +1 -0
  49. package/index.cjs.default.js +1 -0
  50. package/index.cjs.js +77 -0
  51. package/index.cjs.mjs +2 -0
  52. package/index.d.ts +3 -26
  53. package/index.esm.js +51 -0
  54. package/package.json +21 -639
  55. package/utils/classed.d.ts +8 -0
  56. package/{createUseMediaQueryWidth.d.ts → utils/createUseMediaQueryWidth.d.ts} +2 -2
  57. package/{extendComponent.d.ts → utils/extendComponent.d.ts} +2 -3
  58. package/utils/index.d.ts +5 -0
  59. package/utils/mergeRefs.d.ts +1 -0
  60. package/Alert/Alert.d.ts +0 -5
  61. package/Alert/Alert.js +0 -10
  62. package/Alert/index.d.ts +0 -1
  63. package/Alert/index.js +0 -1
  64. package/Animations/Reveal.d.ts +0 -3
  65. package/Animations/Reveal.js +0 -16
  66. package/Animations/Underline.d.ts +0 -1
  67. package/Animations/Underline.js +0 -5
  68. package/Animations/index.d.ts +0 -3
  69. package/Animations/index.js +0 -3
  70. package/Animations/useReveal.d.ts +0 -13
  71. package/Animations/useReveal.js +0 -43
  72. package/Autocomplete/AutocompleteDownshift.d.ts +0 -1
  73. package/Autocomplete/AutocompleteDownshift.js +0 -1
  74. package/Autocomplete/AutocompleteDownshiftMultiselect.d.ts +0 -1
  75. package/Autocomplete/AutocompleteDownshiftMultiselect.js +0 -1
  76. package/Autocomplete/AutocompleteMui.d.ts +0 -22
  77. package/Autocomplete/AutocompleteMui.js +0 -93
  78. package/Autocomplete/AutocompleteReach.d.ts +0 -1
  79. package/Autocomplete/AutocompleteReach.js +0 -1
  80. package/Autocomplete/components.d.ts +0 -12
  81. package/Autocomplete/components.js +0 -26
  82. package/Autocomplete/helpers.d.ts +0 -3
  83. package/Autocomplete/helpers.js +0 -16
  84. package/Autocomplete/index.d.ts +0 -2
  85. package/Autocomplete/index.js +0 -1
  86. package/Bg/BgColor.d.ts +0 -12
  87. package/Bg/BgColor.js +0 -16
  88. package/Bg/BgPhoto.d.ts +0 -8
  89. package/Bg/BgPhoto.js +0 -16
  90. package/Bg/BgSvg.d.ts +0 -4
  91. package/Bg/BgSvg.js +0 -9
  92. package/Bg/index.d.ts +0 -3
  93. package/Bg/index.js +0 -3
  94. package/Breadcrumbs/Breadcrumbs.d.ts +0 -13
  95. package/Breadcrumbs/Breadcrumbs.js +0 -27
  96. package/Breadcrumbs/index.d.ts +0 -1
  97. package/Breadcrumbs/index.js +0 -1
  98. package/Buttons/Button.d.ts +0 -14
  99. package/Buttons/Button.js +0 -10
  100. package/Buttons/ButtonComposite.d.ts +0 -22
  101. package/Buttons/ButtonComposite.js +0 -28
  102. package/Buttons/ButtonFab.d.ts +0 -4
  103. package/Buttons/ButtonFab.js +0 -6
  104. package/Buttons/ButtonLink.d.ts +0 -8
  105. package/Buttons/ButtonLink.js +0 -11
  106. package/Buttons/IconButton.d.ts +0 -8
  107. package/Buttons/IconButton.js +0 -7
  108. package/Buttons/index.d.ts +0 -5
  109. package/Buttons/index.js +0 -5
  110. package/Calendar/CalendarDaygridCell.d.ts +0 -35
  111. package/Calendar/CalendarDaygridCell.js +0 -46
  112. package/Calendar/CalendarDaygridNav.d.ts +0 -27
  113. package/Calendar/CalendarDaygridNav.js +0 -24
  114. package/Calendar/CalendarDaygridTable.d.ts +0 -25
  115. package/Calendar/CalendarDaygridTable.js +0 -45
  116. package/Calendar/CalendarLegend.d.ts +0 -18
  117. package/Calendar/CalendarLegend.js +0 -9
  118. package/Calendar/calendar-api-google.d.ts +0 -10
  119. package/Calendar/calendar-api-google.js +0 -124
  120. package/Calendar/index.d.ts +0 -6
  121. package/Calendar/index.js +0 -6
  122. package/Calendar/types.d.ts +0 -62
  123. package/Calendar/types.js +0 -1
  124. package/Calendar/useCalendar.d.ts +0 -35
  125. package/Calendar/useCalendar.js +0 -176
  126. package/Calendar/utils.d.ts +0 -11
  127. package/Calendar/utils.js +0 -185
  128. package/Carousel/Carousel.d.ts +0 -1
  129. package/Carousel/Carousel.js +0 -1
  130. package/Carousel/CarouselCss.d.ts +0 -13
  131. package/Carousel/CarouselCss.js +0 -19
  132. package/Carousel/index.d.ts +0 -1
  133. package/Carousel/index.js +0 -1
  134. package/Collapsable/Collapsable.d.ts +0 -1
  135. package/Collapsable/Collapsable.js +0 -1
  136. package/Collapsable/CollapsableReach.d.ts +0 -0
  137. package/Collapsable/CollapsableReach.js +0 -1
  138. package/Collapsable/index.d.ts +0 -1
  139. package/Collapsable/index.js +0 -1
  140. package/Debug/Debug.d.ts +0 -4
  141. package/Debug/Debug.js +0 -9
  142. package/Debug/index.d.ts +0 -1
  143. package/Debug/index.js +0 -1
  144. package/Details/Details.d.ts +0 -398
  145. package/Details/Details.js +0 -52
  146. package/Details/index.d.ts +0 -1
  147. package/Details/index.js +0 -1
  148. package/Dialog/DialogMui.d.ts +0 -165
  149. package/Dialog/DialogMui.js +0 -39
  150. package/Dialog/css/bare.d.ts +0 -171
  151. package/Dialog/css/bare.js +0 -21
  152. package/Dialog/index.d.ts +0 -2
  153. package/Dialog/index.js +0 -1
  154. package/Dialog/m/bare.d.ts +0 -4
  155. package/Dialog/m/bare.js +0 -3
  156. package/Dialog/m/basic.d.ts +0 -4
  157. package/Dialog/m/basic.js +0 -28
  158. package/Dialog/m/index.d.ts +0 -2
  159. package/Dialog/m/index.js +0 -4
  160. package/Dialog/sc/bare.d.ts +0 -61
  161. package/Dialog/sc/bare.js +0 -31
  162. package/Dialog/sc/framer.d.ts +0 -24
  163. package/Dialog/sc/framer.js +0 -16
  164. package/Dialog/sc/framerMaterial.d.ts +0 -24
  165. package/Dialog/sc/framerMaterial.js +0 -16
  166. package/Dialog/sc/material.d.ts +0 -60
  167. package/Dialog/sc/material.js +0 -21
  168. package/Dialog/tw/bare.d.ts +0 -208
  169. package/Dialog/tw/bare.js +0 -29
  170. package/Dialog/tw/elegant.d.ts +0 -270
  171. package/Dialog/tw/elegant.js +0 -21
  172. package/Dialog/tw/framer.d.ts +0 -108
  173. package/Dialog/tw/framer.js +0 -16
  174. package/Dialog/tw/framerMaterial.d.ts +0 -164
  175. package/Dialog/tw/framerMaterial.js +0 -16
  176. package/Dialog/tw/material.d.ts +0 -270
  177. package/Dialog/tw/material.js +0 -21
  178. package/Editor/Editor--tiptap.d.ts +0 -9
  179. package/Editor/Editor--tiptap.js +0 -26
  180. package/Editor/components.d.ts +0 -5
  181. package/Editor/components.js +0 -10
  182. package/Editor/index.d.ts +0 -1
  183. package/Editor/index.js +0 -1
  184. package/FaviconTags.d.ts +0 -9
  185. package/FaviconTags.js +0 -6
  186. package/Form/Form.d.ts +0 -125
  187. package/Form/Form.js +0 -60
  188. package/Form/index.d.ts +0 -1
  189. package/Form/index.js +0 -1
  190. package/Form/sc/bare.d.ts +0 -57
  191. package/Form/sc/bare.js +0 -20
  192. package/Forms/Checkbox/Checkbox.d.ts +0 -7
  193. package/Forms/Checkbox/Checkbox.js +0 -15
  194. package/Forms/Checkbox/index.d.ts +0 -1
  195. package/Forms/Checkbox/index.js +0 -1
  196. package/Forms/Feedback/Feedback.d.ts +0 -5
  197. package/Forms/Feedback/Feedback.js +0 -9
  198. package/Forms/Feedback/index.d.ts +0 -1
  199. package/Forms/Feedback/index.js +0 -1
  200. package/Forms/Field/Field.d.ts +0 -18
  201. package/Forms/Field/Field.js +0 -25
  202. package/Forms/Field/FieldControl.d.ts +0 -14
  203. package/Forms/Field/FieldControl.js +0 -35
  204. package/Forms/Field/FieldHint.d.ts +0 -1
  205. package/Forms/Field/FieldHint.js +0 -4
  206. package/Forms/Field/index.d.ts +0 -2
  207. package/Forms/Field/index.js +0 -2
  208. package/Forms/Input/Input.d.ts +0 -8
  209. package/Forms/Input/Input.js +0 -16
  210. package/Forms/Input/index.d.ts +0 -1
  211. package/Forms/Input/index.js +0 -1
  212. package/Forms/InputGroup/InputGroup.d.ts +0 -12
  213. package/Forms/InputGroup/InputGroup.js +0 -15
  214. package/Forms/InputGroup/index.d.ts +0 -1
  215. package/Forms/InputGroup/index.js +0 -1
  216. package/Forms/Label/Label.d.ts +0 -3
  217. package/Forms/Label/Label.js +0 -6
  218. package/Forms/Label/index.d.ts +0 -1
  219. package/Forms/Label/index.js +0 -1
  220. package/Forms/Password/Password.d.ts +0 -4
  221. package/Forms/Password/Password.js +0 -17
  222. package/Forms/Password/index.d.ts +0 -1
  223. package/Forms/Password/index.js +0 -1
  224. package/Forms/Radio/Radio.d.ts +0 -11
  225. package/Forms/Radio/Radio.js +0 -25
  226. package/Forms/Radio/index.d.ts +0 -1
  227. package/Forms/Radio/index.js +0 -1
  228. package/Forms/Switch/Switch.d.ts +0 -5
  229. package/Forms/Switch/Switch.js +0 -17
  230. package/Forms/Switch/index.d.ts +0 -1
  231. package/Forms/Switch/index.js +0 -1
  232. package/Forms/Textarea/Textarea.d.ts +0 -4
  233. package/Forms/Textarea/Textarea.js +0 -12
  234. package/Forms/Textarea/TextareaRich.d.ts +0 -5
  235. package/Forms/Textarea/TextareaRich.js +0 -26
  236. package/Forms/Textarea/index.d.ts +0 -2
  237. package/Forms/Textarea/index.js +0 -2
  238. package/Forms/Toggle/Toggle-tailwind.d.ts +0 -0
  239. package/Forms/Toggle/Toggle-tailwind.js +0 -1
  240. package/Forms/Toggle/Toggle.d.ts +0 -18
  241. package/Forms/Toggle/Toggle.js +0 -25
  242. package/Forms/Toggle/index.d.ts +0 -1
  243. package/Forms/Toggle/index.js +0 -1
  244. package/Forms/Toggle/useToggle-tailwind.d.ts +0 -0
  245. package/Forms/Toggle/useToggle-tailwind.js +0 -1
  246. package/Forms/Toggle/useToggle.d.ts +0 -16
  247. package/Forms/Toggle/useToggle.js +0 -85
  248. package/Forms/antispam.d.ts +0 -27
  249. package/Forms/antispam.js +0 -29
  250. package/Forms/helpers.d.ts +0 -18
  251. package/Forms/helpers.js +0 -35
  252. package/Forms/index.d.ts +0 -15
  253. package/Forms/index.js +0 -15
  254. package/Forms/styles.d.ts +0 -9
  255. package/Forms/styles.js +0 -19
  256. package/Gauge/Gauge.d.ts +0 -4
  257. package/Gauge/Gauge.js +0 -1
  258. package/Grid/Grid.d.ts +0 -32
  259. package/Grid/Grid.js +0 -52
  260. package/Grid/index.d.ts +0 -1
  261. package/Grid/index.js +0 -1
  262. package/Hamburger/Hamburger.d.ts +0 -5
  263. package/Hamburger/Hamburger.js +0 -47
  264. package/Hamburger/index.d.ts +0 -1
  265. package/Hamburger/index.js +0 -1
  266. package/Header/index.d.ts +0 -1
  267. package/Header/index.js +0 -1
  268. package/Header/useHeader.d.ts +0 -20
  269. package/Header/useHeader.js +0 -32
  270. package/Hidden/Hidden.d.ts +0 -6
  271. package/Hidden/Hidden.js +0 -10
  272. package/Hidden/index.d.ts +0 -1
  273. package/Hidden/index.js +0 -1
  274. package/Img/index.d.ts +0 -1
  275. package/Img/index.js +0 -1
  276. package/Img/sc/bare.d.ts +0 -2
  277. package/Img/sc/bare.js +0 -4
  278. package/Img/types.d.ts +0 -9
  279. package/Img/types.js +0 -1
  280. package/Link/Link.d.ts +0 -3
  281. package/Link/Link.js +0 -4
  282. package/Link/LinkBlank.d.ts +0 -5
  283. package/Link/LinkBlank.js +0 -15
  284. package/Link/index.d.ts +0 -2
  285. package/Link/index.js +0 -2
  286. package/Menu/Menu.d.ts +0 -1
  287. package/Menu/Menu.js +0 -4
  288. package/Menu/MenuMui.d.ts +0 -0
  289. package/Menu/MenuMui.js +0 -1
  290. package/Menu/index.d.ts +0 -1
  291. package/Menu/index.js +0 -1
  292. package/MenuItem/MenuItem.d.ts +0 -1
  293. package/MenuItem/MenuItem.js +0 -4
  294. package/MenuItem/MenuItemMui.d.ts +0 -0
  295. package/MenuItem/MenuItemMui.js +0 -1
  296. package/MenuItem/index.d.ts +0 -1
  297. package/MenuItem/index.js +0 -1
  298. package/MenuItem/useMenuItem.d.ts +0 -9
  299. package/MenuItem/useMenuItem.js +0 -42
  300. package/Meta.d.ts +0 -5
  301. package/Meta.js +0 -6
  302. package/NoJs.d.ts +0 -3
  303. package/NoJs.js +0 -7
  304. package/Pagination/PaginationNav.d.ts +0 -14
  305. package/Pagination/PaginationNav.js +0 -48
  306. package/Pagination/PaginationResults.d.ts +0 -3
  307. package/Pagination/PaginationResults.js +0 -11
  308. package/Pagination/index.d.ts +0 -2
  309. package/Pagination/index.js +0 -2
  310. package/Pill/Pill.d.ts +0 -5
  311. package/Pill/Pill.js +0 -7
  312. package/Pill/index.d.ts +0 -1
  313. package/Pill/index.js +0 -1
  314. package/Polymorphic.js +0 -1
  315. package/Progress/ProgressCircular.d.ts +0 -13
  316. package/Progress/ProgressCircular.js +0 -12
  317. package/Progress/ProgressLinear.d.ts +0 -15
  318. package/Progress/ProgressLinear.js +0 -21
  319. package/Progress/ProgressOverlay.d.ts +0 -4
  320. package/Progress/ProgressOverlay.js +0 -23
  321. package/Progress/index.d.ts +0 -3
  322. package/Progress/index.js +0 -3
  323. package/Rating/Rating.d.ts +0 -27
  324. package/Rating/Rating.js +0 -43
  325. package/Rating/index.d.ts +0 -8
  326. package/Rating/index.js +0 -45
  327. package/Select/SelectDownshift.d.ts +0 -5
  328. package/Select/SelectDownshift.js +0 -1
  329. package/Select/components.d.ts +0 -6
  330. package/Select/components.js +0 -12
  331. package/Select/index.d.ts +0 -2
  332. package/Select/index.js +0 -1
  333. package/Sidebar/Sidebar.d.ts +0 -3
  334. package/Sidebar/Sidebar.js +0 -23
  335. package/Sidebar/index.d.ts +0 -1
  336. package/Sidebar/index.js +0 -1
  337. package/Spacing/Spacing.d.ts +0 -17
  338. package/Spacing/Spacing.js +0 -32
  339. package/Spacing/index.d.ts +0 -1
  340. package/Spacing/index.js +0 -1
  341. package/Sticky/Sticky.d.ts +0 -2
  342. package/Sticky/Sticky.js +0 -1
  343. package/Sticky/StickyCss.d.ts +0 -5
  344. package/Sticky/StickyCss.js +0 -6
  345. package/Sticky/index.d.ts +0 -1
  346. package/Sticky/index.js +0 -1
  347. package/Tabs/TabsMui.d.ts +0 -84
  348. package/Tabs/TabsMui.js +0 -30
  349. package/Tabs/index.d.ts +0 -1
  350. package/Tabs/index.js +0 -1
  351. package/Tabs/sc/bare.d.ts +0 -0
  352. package/Tabs/sc/bare.js +0 -1
  353. package/Tabs/tw/bare.d.ts +0 -85
  354. package/Tabs/tw/bare.js +0 -17
  355. package/Tabs/tw/material.d.ts +0 -118
  356. package/Tabs/tw/material.js +0 -19
  357. package/Tabs/useTabs.d.ts +0 -21
  358. package/Tabs/useTabs.js +0 -44
  359. package/Typography/CopyPasteVisible.d.ts +0 -1
  360. package/Typography/CopyPasteVisible.js +0 -4
  361. package/Typography/Native.d.ts +0 -10
  362. package/Typography/Native.js +0 -14
  363. package/Typography/ReadMore.d.ts +0 -10
  364. package/Typography/ReadMore.js +0 -42
  365. package/Typography/TextLoop.d.ts +0 -16
  366. package/Typography/TextLoop.js +0 -45
  367. package/Typography/TypeStairs.d.ts +0 -6
  368. package/Typography/TypeStairs.js +0 -42
  369. package/Typography/index.d.ts +0 -5
  370. package/Typography/index.js +0 -5
  371. package/calendar/CalendarDaygridCell.js +0 -48
  372. package/calendar/CalendarDaygridNav.js +0 -24
  373. package/calendar/CalendarDaygridTable.js +0 -45
  374. package/calendar/CalendarLegend.js +0 -9
  375. package/calendar/calendar-api-google.js +0 -124
  376. package/calendar/index.d.ts +0 -6
  377. package/calendar/index.js +0 -6
  378. package/calendar/types.js +0 -1
  379. package/calendar/useCalendar.js +0 -176
  380. package/calendar/utils.js +0 -185
  381. package/classed.d.ts +0 -8
  382. package/classed.js +0 -43
  383. package/createUseMediaQueryWidth.js +0 -39
  384. package/css/index.d.ts +0 -1
  385. package/css/index.js +0 -1
  386. package/extendComponent.js +0 -9
  387. package/forms/antispam.js +0 -29
  388. package/forms/index.d.ts +0 -1
  389. package/forms/index.js +0 -1
  390. package/index.js +0 -24
  391. package/m/MotionProvider.d.ts +0 -6
  392. package/m/MotionProvider.js +0 -7
  393. package/m/index.d.ts +0 -1
  394. package/m/index.js +0 -1
  395. package/m/lite.d.ts +0 -2
  396. package/m/lite.js +0 -2
  397. package/m/max.d.ts +0 -2
  398. package/m/max.js +0 -2
  399. package/mergeRefs.d.ts +0 -2
  400. package/mergeRefs.js +0 -13
  401. package/sc/index.d.ts +0 -29
  402. package/sc/index.js +0 -29
  403. package/scm/index.d.ts +0 -28
  404. package/scm/index.js +0 -28
  405. package/shared/index.d.ts +0 -7
  406. package/shared/index.js +0 -7
  407. package/styles/Body.d.ts +0 -2
  408. package/styles/Body.js +0 -5
  409. package/styles/Global.d.ts +0 -2
  410. package/styles/Global.js +0 -5
  411. package/styles/index.d.ts +0 -7
  412. package/styles/index.js +0 -7
  413. package/styles/media.d.ts +0 -18
  414. package/styles/media.js +0 -75
  415. package/styles/spacing.d.ts +0 -12
  416. package/styles/spacing.js +0 -45
  417. package/styles/styled.d.ts +0 -8
  418. package/styles/styled.js +0 -9
  419. package/styles/theme--vanilla.d.ts +0 -17
  420. package/styles/theme--vanilla.js +0 -47
  421. package/styles/theme.d.ts +0 -53
  422. package/styles/theme.js +0 -30
  423. package/tw/index.d.ts +0 -1
  424. package/tw/index.js +0 -1
  425. package/twm/index.d.ts +0 -1
  426. package/twm/index.js +0 -1
  427. package/types.js +0 -1
  428. package/typings.d.ts +0 -6
  429. package/useAsyncFn.js +0 -33
  430. package/useDateLocale.d.ts +0 -3
  431. package/useDateLocale.js +0 -28
  432. package/useFirstMountState.d.ts +0 -2
  433. package/useFirstMountState.js +0 -10
  434. package/useFixedOffset.d.ts +0 -2
  435. package/useFixedOffset.js +0 -42
  436. package/useFocus.d.ts +0 -2
  437. package/useFocus.js +0 -9
  438. package/useInterval.d.ts +0 -2
  439. package/useInterval.js +0 -22
  440. package/useIsomorphicLayoutEffect.d.ts +0 -3
  441. package/useIsomorphicLayoutEffect.js +0 -6
  442. package/useKeyUp.d.ts +0 -2
  443. package/useKeyUp.js +0 -18
  444. package/useMeasure.js +0 -130
  445. package/useMountedState.d.ts +0 -2
  446. package/useMountedState.js +0 -13
  447. package/useNavigateAway.d.ts +0 -3
  448. package/useNavigateAway.js +0 -25
  449. package/usePrevious.d.ts +0 -2
  450. package/usePrevious.js +0 -10
  451. package/usePreviousRef.d.ts +0 -2
  452. package/usePreviousRef.js +0 -9
  453. package/useReveal.js +0 -43
  454. package/useScrollPosition.d.ts +0 -7
  455. package/useScrollPosition.js +0 -61
  456. package/useScrollThreshold.d.ts +0 -2
  457. package/useScrollThreshold.js +0 -27
  458. package/useScrollTo.d.ts +0 -2
  459. package/useScrollTo.js +0 -20
  460. package/useSmoothScroll.d.ts +0 -2
  461. package/useSmoothScroll.js +0 -32
  462. package/useSpinDelay.d.ts +0 -2
  463. package/useSpinDelay.js +0 -39
  464. package/useTraceUpdate.d.ts +0 -2
  465. package/useTraceUpdate.js +0 -19
  466. package/useUpdateEffect.d.ts +0 -3
  467. package/useUpdateEffect.js +0 -11
  468. package/useWindowSize.d.ts +0 -3
  469. package/useWindowSize.js +0 -20
  470. /package/{Polymorphic.d.ts → utils/Polymorphic.d.ts} +0 -0
package/useDateLocale.js DELETED
@@ -1,28 +0,0 @@
1
- import { __awaiter, __generator, __read } from "tslib";
2
- import { useEffect, useState } from "react";
3
- export function useDateLocale(locale, defaultLocale) {
4
- var _this = this;
5
- if (defaultLocale === void 0) { defaultLocale = "en"; }
6
- var _a = __read(useState(), 2), data = _a[0], setData = _a[1];
7
- var _b = __read(useState(defaultLocale), 2), current = _b[0], setCurrent = _b[1];
8
- useEffect(function () {
9
- var importLocaleFile = function () { return __awaiter(_this, void 0, void 0, function () {
10
- var localeToSet;
11
- return __generator(this, function (_a) {
12
- switch (_a.label) {
13
- case 0: return [4, import("date-fns/locale/en-US")];
14
- case 1:
15
- localeToSet = _a.sent();
16
- setCurrent(locale || current);
17
- setData(localeToSet.enUS);
18
- return [2];
19
- }
20
- });
21
- }); };
22
- if (locale !== current) {
23
- importLocaleFile();
24
- }
25
- }, [locale, current]);
26
- return data;
27
- }
28
- export default useDateLocale;
@@ -1,2 +0,0 @@
1
- export declare function useFirstMountState(): boolean;
2
- export default useFirstMountState;
@@ -1,10 +0,0 @@
1
- import { useRef } from "react";
2
- export function useFirstMountState() {
3
- var isFirst = useRef(true);
4
- if (isFirst.current) {
5
- isFirst.current = false;
6
- return true;
7
- }
8
- return isFirst.current;
9
- }
10
- export default useFirstMountState;
@@ -1,2 +0,0 @@
1
- export declare function useFixedOffset(selector?: string): import("react").MutableRefObject<number>;
2
- export default useFixedOffset;
package/useFixedOffset.js DELETED
@@ -1,42 +0,0 @@
1
- import { useRef } from "react";
2
- import { debounce } from "@koine/utils";
3
- import { $each, calculateFixedOffset, injectCss, listenResizeDebounced, } from "@koine/dom";
4
- import useIsomorphicLayoutEffect from "./useIsomorphicLayoutEffect.js";
5
- var inject = function (value) {
6
- injectCss("useFixedOffset", "html{scroll-padding-top: ".concat(value, "px}"));
7
- };
8
- export function useFixedOffset(selector) {
9
- var fixedOffset = useRef(0);
10
- useIsomorphicLayoutEffect(function () {
11
- var update = function () {
12
- var newFixedOffset = calculateFixedOffset();
13
- fixedOffset.current = newFixedOffset;
14
- inject(newFixedOffset);
15
- };
16
- update();
17
- if (ResizeObserver) {
18
- var observer_1 = new ResizeObserver(function (entries) {
19
- var newFixedOffset = 0;
20
- entries.forEach(function (entry) {
21
- newFixedOffset += entry.contentRect.height;
22
- });
23
- fixedOffset.current = newFixedOffset;
24
- var updateOnResize = debounce(function () { return inject(newFixedOffset); }, 400, true);
25
- updateOnResize();
26
- });
27
- $each(selector || "[data-fixed]", function ($el) {
28
- if (observer_1)
29
- observer_1.observe($el);
30
- });
31
- return function () {
32
- observer_1 === null || observer_1 === void 0 ? void 0 : observer_1.disconnect();
33
- };
34
- }
35
- else {
36
- var listener = listenResizeDebounced(0, update);
37
- return listener;
38
- }
39
- }, [selector]);
40
- return fixedOffset;
41
- }
42
- export default useFixedOffset;
package/useFocus.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare const useFocus: () => (import("react").RefObject<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement> | (() => void))[];
2
- export default useFocus;
package/useFocus.js DELETED
@@ -1,9 +0,0 @@
1
- import { useRef } from "react";
2
- export var useFocus = function () {
3
- var elementRef = useRef(null);
4
- var setFocus = function () {
5
- elementRef.current && elementRef.current.focus();
6
- };
7
- return [elementRef, setFocus];
8
- };
9
- export default useFocus;
package/useInterval.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function useInterval<T extends () => unknown>(callback: T, delay: number, deps?: unknown[]): void;
2
- export default useInterval;
package/useInterval.js DELETED
@@ -1,22 +0,0 @@
1
- import { __read, __spreadArray } from "tslib";
2
- import { useEffect, useRef } from "react";
3
- import { noop } from "@koine/utils";
4
- export function useInterval(callback, delay, deps) {
5
- if (deps === void 0) { deps = []; }
6
- var savedCallback = useRef();
7
- useEffect(function () {
8
- savedCallback.current = callback;
9
- }, __spreadArray([callback], __read(deps), false));
10
- useEffect(function () {
11
- function tick() {
12
- if (savedCallback.current)
13
- savedCallback.current();
14
- }
15
- if (delay !== null) {
16
- var id_1 = setInterval(tick, delay);
17
- return function () { return clearInterval(id_1); };
18
- }
19
- return noop;
20
- }, [delay]);
21
- }
22
- export default useInterval;
@@ -1,3 +0,0 @@
1
- import { useLayoutEffect } from "react";
2
- export declare const useIsomorphicLayoutEffect: typeof useLayoutEffect;
3
- export default useIsomorphicLayoutEffect;
@@ -1,6 +0,0 @@
1
- import { useEffect, useLayoutEffect } from "react";
2
- import { isBrowser } from "@koine/utils";
3
- export var useIsomorphicLayoutEffect = isBrowser
4
- ? useLayoutEffect
5
- : useEffect;
6
- export default useIsomorphicLayoutEffect;
package/useKeyUp.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function useKeyUp(callback: (event: KeyboardEvent) => void, deps?: unknown[]): void;
2
- export default useKeyUp;
package/useKeyUp.js DELETED
@@ -1,18 +0,0 @@
1
- import { __read, __spreadArray } from "tslib";
2
- import { useEffect } from "react";
3
- import { on } from "@koine/dom";
4
- export function useKeyUp(callback, deps) {
5
- if (deps === void 0) { deps = []; }
6
- useEffect(function () {
7
- var listener = on(window, "keyup", function (event) {
8
- if (!event.ctrlKey &&
9
- !event.altKey &&
10
- !event.shiftKey &&
11
- !event.metaKey) {
12
- callback(event);
13
- }
14
- });
15
- return listener;
16
- }, __spreadArray([callback], __read(deps), false));
17
- }
18
- export default useKeyUp;
package/useMeasure.js DELETED
@@ -1,130 +0,0 @@
1
- import { __read, __spreadArray } from "tslib";
2
- import { useEffect, useMemo, useRef, useState } from "react";
3
- import { debounce, noop } from "@koine/utils";
4
- import { listenResizeDebounced, listenScrollDebounced, off, on, } from "@koine/dom";
5
- var observer;
6
- function findScrollContainers(element) {
7
- var result = [];
8
- if (!element || element === document.body)
9
- return result;
10
- var _a = window.getComputedStyle(element), overflow = _a.overflow, overflowX = _a.overflowX, overflowY = _a.overflowY;
11
- if ([overflow, overflowX, overflowY].some(function (prop) { return prop === "auto" || prop === "scroll"; }))
12
- result.push(element);
13
- return __spreadArray(__spreadArray([], __read(result), false), __read(findScrollContainers(element.parentElement)), false);
14
- }
15
- var keys = [
16
- "x",
17
- "y",
18
- "top",
19
- "bottom",
20
- "left",
21
- "right",
22
- "width",
23
- "height",
24
- ];
25
- var areBoundsEqual = function (a, b) {
26
- return keys.every(function (key) { return a[key] === b[key]; });
27
- };
28
- export function useMeasure(options) {
29
- var _a = (options || {}).scroll, scroll = _a === void 0 ? false : _a;
30
- var _b = __read(useState({
31
- left: 0,
32
- top: 0,
33
- width: 0,
34
- height: 0,
35
- bottom: 0,
36
- right: 0,
37
- x: 0,
38
- y: 0,
39
- }), 2), bounds = _b[0], setBounds = _b[1];
40
- var state = useRef([
41
- null,
42
- null,
43
- null,
44
- bounds,
45
- ]);
46
- var mounted = useRef(false);
47
- useEffect(function () {
48
- mounted.current = true;
49
- return function () { return void (mounted.current = false); };
50
- }, []);
51
- var _c = __read(useMemo(function () {
52
- var callback = function () {
53
- var _args = [];
54
- for (var _i = 0; _i < arguments.length; _i++) {
55
- _args[_i] = arguments[_i];
56
- }
57
- var _a = __read(state.current, 4), element = _a[0], lastBounds = _a[3];
58
- if (!element)
59
- return;
60
- var size = element.getBoundingClientRect();
61
- Object.freeze(size);
62
- if (mounted.current && !areBoundsEqual(lastBounds, size)) {
63
- state.current[3] = size;
64
- setBounds(size);
65
- }
66
- };
67
- var debouncedCallback = debounce(callback);
68
- return [callback, debouncedCallback, debouncedCallback];
69
- }, [setBounds]), 3), forceRefresh = _c[0], scrollChange = _c[2];
70
- function removeListeners() {
71
- var _a = __read(state.current, 3), scrollContainers = _a[1], resizeObserver = _a[2];
72
- if (scrollContainers) {
73
- scrollContainers.forEach(function (element) {
74
- return off(element, "scroll", scrollChange);
75
- });
76
- state.current[1] = null;
77
- }
78
- if (resizeObserver) {
79
- resizeObserver.disconnect();
80
- state.current[2] = null;
81
- }
82
- }
83
- function addListeners() {
84
- var _a = __read(state.current, 2), element = _a[0], scrollContainers = _a[1];
85
- if (!element)
86
- return;
87
- if (!observer && ResizeObserver) {
88
- observer = new ResizeObserver(scrollChange);
89
- state.current[2] = observer;
90
- observer.observe(element);
91
- if (scroll && scrollContainers) {
92
- scrollContainers.forEach(function (scrollContainer) {
93
- return on(scrollContainer, "scroll", scrollChange, {
94
- capture: true,
95
- passive: true,
96
- });
97
- });
98
- }
99
- }
100
- }
101
- var ref = function (node) {
102
- if (!node || node === state.current[0])
103
- return;
104
- removeListeners();
105
- state.current[0] = node;
106
- state.current[1] = findScrollContainers(node);
107
- addListeners();
108
- };
109
- useEffect(function () {
110
- if (scroll) {
111
- var listener = listenScrollDebounced(0, forceRefresh, 100);
112
- return listener;
113
- }
114
- return noop;
115
- }, [scroll, forceRefresh]);
116
- useEffect(function () {
117
- var listener = listenResizeDebounced(0, forceRefresh, 100);
118
- return listener;
119
- }, [forceRefresh]);
120
- useEffect(function () {
121
- removeListeners();
122
- addListeners();
123
- }, [scroll]);
124
- useEffect(function () {
125
- forceRefresh();
126
- return removeListeners;
127
- }, []);
128
- return [ref, bounds, forceRefresh];
129
- }
130
- export default useMeasure;
@@ -1,2 +0,0 @@
1
- export declare function useMountedState(): () => boolean;
2
- export default useMountedState;
@@ -1,13 +0,0 @@
1
- import { useCallback, useEffect, useRef } from "react";
2
- export function useMountedState() {
3
- var mountedRef = useRef(false);
4
- var get = useCallback(function () { return mountedRef.current; }, []);
5
- useEffect(function () {
6
- mountedRef.current = true;
7
- return function () {
8
- mountedRef.current = false;
9
- };
10
- }, []);
11
- return get;
12
- }
13
- export default useMountedState;
@@ -1,3 +0,0 @@
1
- export type UseNavigateAwayHandler = (event: BeforeUnloadEvent) => string | boolean;
2
- export declare const useNavigateAway: (handler: UseNavigateAwayHandler) => void;
3
- export default useNavigateAway;
@@ -1,25 +0,0 @@
1
- import { useEffect, useRef } from "react";
2
- import { on } from "@koine/dom";
3
- export var useNavigateAway = function (handler) {
4
- var beforeUnloadHandlerRef = useRef();
5
- useEffect(function () {
6
- beforeUnloadHandlerRef.current = function (event) {
7
- var customMessageOrCondition = handler(event);
8
- if (customMessageOrCondition) {
9
- event.preventDefault();
10
- }
11
- if (typeof customMessageOrCondition === "string") {
12
- return (event.returnValue = customMessageOrCondition);
13
- }
14
- if (event.defaultPrevented) {
15
- return (event.returnValue = "");
16
- }
17
- return;
18
- };
19
- }, [handler]);
20
- useEffect(function () {
21
- var listenerBeforeunload = on(window, "beforeunload", function (event) { var _a; return (_a = beforeUnloadHandlerRef.current) === null || _a === void 0 ? void 0 : _a.call(beforeUnloadHandlerRef, event); });
22
- return listenerBeforeunload;
23
- }, []);
24
- };
25
- export default useNavigateAway;
package/usePrevious.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function usePrevious<T>(state: T, defaulValue: T): T;
2
- export default usePrevious;
package/usePrevious.js DELETED
@@ -1,10 +0,0 @@
1
- import { __read } from "tslib";
2
- import { useState } from "react";
3
- export function usePrevious(state, defaulValue) {
4
- var _a = __read(useState([state, defaulValue]), 2), tuple = _a[0], setTuple = _a[1];
5
- if (tuple[1] !== state) {
6
- setTuple([tuple[1], state]);
7
- }
8
- return tuple[0];
9
- }
10
- export default usePrevious;
@@ -1,2 +0,0 @@
1
- export declare function usePreviousRef<T>(value: T): T | undefined;
2
- export default usePreviousRef;
package/usePreviousRef.js DELETED
@@ -1,9 +0,0 @@
1
- import { useEffect, useRef } from "react";
2
- export function usePreviousRef(value) {
3
- var ref = useRef();
4
- useEffect(function () {
5
- ref.current = value;
6
- });
7
- return ref.current;
8
- }
9
- export default usePreviousRef;
package/useReveal.js DELETED
@@ -1,43 +0,0 @@
1
- import { __read } from "tslib";
2
- import { useEffect, useRef, useState } from "react";
3
- export function useReveal(_a) {
4
- var _b = _a.direction, direction = _b === void 0 ? "left" : _b, _c = _a.offsetStartY, offsetStartY = _c === void 0 ? -2 : _c, _d = _a.offsetEndY, offsetEndY = _d === void 0 ? 0 : _d, _e = _a.offsetStartX, offsetStartX = _e === void 0 ? "all" : _e;
5
- var ref = useRef(null);
6
- var _f = __read(useState(0), 2), startY = _f[0], setStartY = _f[1];
7
- var _g = __read(useState(0), 2), endY = _g[0], setEndY = _g[1];
8
- var _h = __read(useState(0), 2), startX = _h[0], setStartX = _h[1];
9
- useEffect(function () {
10
- if (!ref.current) {
11
- return;
12
- }
13
- var rect = ref.current.getBoundingClientRect();
14
- var scrollTop = window.scrollY || document.documentElement.scrollTop;
15
- var elementHeight = rect.height;
16
- var elementTop = rect.top;
17
- var distanceTop = elementTop + scrollTop;
18
- var offsetTop = offsetStartY ? elementHeight * offsetStartY : 0;
19
- var offsetBottom = offsetEndY ? elementHeight * offsetEndY : offsetTop;
20
- var startY = (distanceTop + offsetTop) / document.body.clientHeight;
21
- var endY = (distanceTop + elementHeight + offsetBottom) / document.body.clientHeight;
22
- var startX;
23
- if (offsetStartX === "all") {
24
- startX = direction === "left" ? -rect.right : rect.left;
25
- }
26
- else {
27
- startX = rect.width * offsetStartX;
28
- startX = direction === "left" ? -startX : startX;
29
- }
30
- setStartY(startY);
31
- setEndY(endY);
32
- setStartX(startX);
33
- }, [
34
- setStartY,
35
- setEndY,
36
- setStartX,
37
- offsetStartY,
38
- offsetEndY,
39
- offsetStartX,
40
- direction,
41
- ]);
42
- return { ref: ref, startY: startY, endY: endY, startX: startX };
43
- }
@@ -1,7 +0,0 @@
1
- type Position = {
2
- x: number;
3
- y: number;
4
- };
5
- type ElementRef = React.MutableRefObject<HTMLElement | undefined>;
6
- export declare const useScrollPosition: (effect: (currentPosition: Position, prevPosition: Position) => void, deps?: import("react").DependencyList, element?: ElementRef, boundingElement?: ElementRef, wait?: number) => void;
7
- export default useScrollPosition;
@@ -1,61 +0,0 @@
1
- import { useRef } from "react";
2
- import { isBrowser } from "@koine/utils";
3
- import { listenScroll } from "@koine/dom";
4
- import useIsomorphicLayoutEffect from "./useIsomorphicLayoutEffect.js";
5
- var zeroPosition = { x: 0, y: 0 };
6
- var getClientRect = function (element) {
7
- return element === null || element === void 0 ? void 0 : element.getBoundingClientRect();
8
- };
9
- var getScrollPosition = function (element, boundingElement) {
10
- if (!isBrowser) {
11
- return zeroPosition;
12
- }
13
- if (!boundingElement) {
14
- return { x: window.scrollX, y: window.scrollY };
15
- }
16
- var targetPosition = getClientRect((element === null || element === void 0 ? void 0 : element.current) || document.body);
17
- var containerPosition = getClientRect(boundingElement.current);
18
- if (!targetPosition) {
19
- return zeroPosition;
20
- }
21
- return containerPosition
22
- ? {
23
- x: (containerPosition.x || 0) - (targetPosition.x || 0),
24
- y: (containerPosition.y || 0) - (targetPosition.y || 0),
25
- }
26
- : { x: targetPosition.left, y: targetPosition.top };
27
- };
28
- export var useScrollPosition = function (effect, deps, element, boundingElement, wait) {
29
- if (deps === void 0) { deps = []; }
30
- var position = useRef(getScrollPosition(null, boundingElement));
31
- var throttleTimeout = null;
32
- var callBack = function () {
33
- var current = getScrollPosition(element, boundingElement);
34
- effect(current, position.current);
35
- position.current = current;
36
- throttleTimeout = null;
37
- };
38
- useIsomorphicLayoutEffect(function () {
39
- if (!isBrowser) {
40
- return undefined;
41
- }
42
- var handleScroll = function () {
43
- if (wait) {
44
- if (throttleTimeout === null) {
45
- throttleTimeout = window.setTimeout(callBack, wait);
46
- }
47
- }
48
- else {
49
- callBack();
50
- }
51
- };
52
- var listener = listenScroll(handleScroll, boundingElement === null || boundingElement === void 0 ? void 0 : boundingElement.current);
53
- return function () {
54
- listener();
55
- if (throttleTimeout) {
56
- clearTimeout(throttleTimeout);
57
- }
58
- };
59
- }, deps);
60
- };
61
- export default useScrollPosition;
@@ -1,2 +0,0 @@
1
- export declare const useScrollThreshold: (threshold?: number, callback?: ((isAbove: boolean, isBelow: boolean) => void) | undefined) => boolean;
2
- export default useScrollThreshold;
@@ -1,27 +0,0 @@
1
- import { __read } from "tslib";
2
- import { useCallback, useEffect, useState } from "react";
3
- import { noop } from "@koine/utils";
4
- import { listenScroll } from "@koine/dom";
5
- export var useScrollThreshold = function (threshold, callback) {
6
- var _a = __read(useState(false), 2), isBelow = _a[0], setIsBelow = _a[1];
7
- var handler = useCallback(function () {
8
- if (threshold) {
9
- var posY = window.scrollY;
10
- var isAbove = posY < threshold;
11
- var isBelow_1 = posY > threshold;
12
- setIsBelow(isBelow_1);
13
- if (callback)
14
- callback(isAbove, isBelow_1);
15
- }
16
- }, [threshold, callback]);
17
- useEffect(function () {
18
- if (threshold) {
19
- var listener = listenScroll(handler);
20
- handler();
21
- return listener;
22
- }
23
- return noop;
24
- }, [threshold, handler]);
25
- return isBelow;
26
- };
27
- export default useScrollThreshold;
package/useScrollTo.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function useScrollTo(id?: string, offset?: number): void;
2
- export default useScrollTo;
package/useScrollTo.js DELETED
@@ -1,20 +0,0 @@
1
- import { isBrowser } from "@koine/utils";
2
- export function useScrollTo(id, offset) {
3
- if (id === void 0) { id = ""; }
4
- if (offset === void 0) { offset = 0; }
5
- if (!isBrowser) {
6
- return;
7
- }
8
- var headerOffset = 0;
9
- var element = document.getElementById(id);
10
- var top = 0;
11
- if (element && element.offsetParent) {
12
- do {
13
- top += element.offsetTop;
14
- } while ((element = element.offsetParent));
15
- }
16
- top -= offset;
17
- top -= headerOffset;
18
- window.scroll(0, top);
19
- }
20
- export default useScrollTo;
@@ -1,2 +0,0 @@
1
- export declare function useSmoothScroll(disregardAutomaticFixedOffset?: boolean): (to?: number | string, customOffset?: number, callback?: () => void, fallbackTimeout?: number, behavior?: ScrollBehavior) => void;
2
- export default useSmoothScroll;
@@ -1,32 +0,0 @@
1
- import { useCallback } from "react";
2
- import { isNumber } from "@koine/utils";
3
- import { getOffsetTopSlim, scrollTo } from "@koine/dom";
4
- import useFixedOffset from "./useFixedOffset.js";
5
- export function useSmoothScroll(disregardAutomaticFixedOffset) {
6
- var fixedOffset = useFixedOffset();
7
- var scroll = useCallback(function (to, customOffset, callback, fallbackTimeout, behavior) {
8
- var top = undefined;
9
- var toIsElement = false;
10
- if (isNumber(to)) {
11
- top = to;
12
- }
13
- else if (to) {
14
- var el = document.getElementById(to);
15
- if (el) {
16
- top = getOffsetTopSlim(el) - fixedOffset.current;
17
- toIsElement = true;
18
- }
19
- }
20
- if (isNumber(top)) {
21
- top =
22
- top +
23
- (customOffset || 0) +
24
- (disregardAutomaticFixedOffset || toIsElement
25
- ? 0
26
- : fixedOffset.current);
27
- scrollTo(top, callback, fallbackTimeout, behavior);
28
- }
29
- }, [disregardAutomaticFixedOffset, fixedOffset]);
30
- return scroll;
31
- }
32
- export default useSmoothScroll;
package/useSpinDelay.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function useSpinDelay(loading: boolean, delay?: number, minDuration?: number): boolean;
2
- export default useSpinDelay;
package/useSpinDelay.js DELETED
@@ -1,39 +0,0 @@
1
- import { __read } from "tslib";
2
- import { useEffect, useRef, useState } from "react";
3
- var State;
4
- (function (State) {
5
- State[State["IDLE"] = 0] = "IDLE";
6
- State[State["DELAY"] = 1] = "DELAY";
7
- State[State["DISPLAY"] = 2] = "DISPLAY";
8
- State[State["EXPIRE"] = 3] = "EXPIRE";
9
- })(State || (State = {}));
10
- export function useSpinDelay(loading, delay, minDuration) {
11
- if (delay === void 0) { delay = 500; }
12
- if (minDuration === void 0) { minDuration = 200; }
13
- var _a = __read(useState(State.IDLE), 2), state = _a[0], setState = _a[1];
14
- var timeout = useRef();
15
- useEffect(function () {
16
- if (loading && state === State.IDLE) {
17
- clearTimeout(timeout.current);
18
- timeout.current = setTimeout(function () {
19
- if (!loading) {
20
- return setState(State.IDLE);
21
- }
22
- timeout.current = setTimeout(function () {
23
- setState(State.EXPIRE);
24
- }, minDuration);
25
- setState(State.DISPLAY);
26
- }, delay);
27
- setState(State.DELAY);
28
- }
29
- if (!loading && state !== State.DISPLAY) {
30
- clearTimeout(timeout.current);
31
- setState(State.IDLE);
32
- }
33
- }, [loading, state, delay, minDuration]);
34
- useEffect(function () {
35
- return function () { return clearTimeout(timeout.current); };
36
- }, []);
37
- return state === State.DISPLAY || state === State.EXPIRE;
38
- }
39
- export default useSpinDelay;
@@ -1,2 +0,0 @@
1
- export declare function useTraceUpdate(props: any): void;
2
- export default useTraceUpdate;
package/useTraceUpdate.js DELETED
@@ -1,19 +0,0 @@
1
- import { __read } from "tslib";
2
- import { useEffect, useRef } from "react";
3
- export function useTraceUpdate(props) {
4
- var prev = useRef(props);
5
- useEffect(function () {
6
- var changedProps = Object.entries(props).reduce(function (ps, _a) {
7
- var _b = __read(_a, 2), k = _b[0], v = _b[1];
8
- if (prev.current[k] !== v) {
9
- ps[k] = [prev.current[k], v];
10
- }
11
- return ps;
12
- }, {});
13
- if (Object.keys(changedProps).length > 0) {
14
- console.info("[@koine/react:useTraceUpdate] changed props:", changedProps);
15
- }
16
- prev.current = props;
17
- });
18
- }
19
- export default useTraceUpdate;