@koine/react 2.0.0-beta.14 → 2.0.0-beta.141

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 (643) hide show
  1. package/FaviconTags.cjs.d.ts +2 -0
  2. package/FaviconTags.cjs.default.js +1 -0
  3. package/FaviconTags.cjs.js +10 -0
  4. package/FaviconTags.cjs.mjs +2 -0
  5. package/FaviconTags.d.ts +1 -1
  6. package/FaviconTags.esm.d.ts +2 -0
  7. package/FaviconTags.esm.js +5 -0
  8. package/Meta.cjs.d.ts +2 -0
  9. package/Meta.cjs.default.js +1 -0
  10. package/Meta.cjs.js +10 -0
  11. package/Meta.cjs.mjs +2 -0
  12. package/{Meta/Meta.d.ts → Meta.d.ts} +1 -1
  13. package/Meta.esm.d.ts +2 -0
  14. package/Meta.esm.js +5 -0
  15. package/NoJs.cjs.d.ts +2 -0
  16. package/NoJs.cjs.default.js +1 -0
  17. package/NoJs.cjs.js +10 -0
  18. package/NoJs.cjs.mjs +2 -0
  19. package/NoJs.d.ts +3 -0
  20. package/NoJs.esm.d.ts +2 -0
  21. package/NoJs.esm.js +5 -0
  22. package/Polymorphic.cjs.d.ts +1 -0
  23. package/Polymorphic.cjs.default.js +1 -0
  24. package/Polymorphic.cjs.js +2 -0
  25. package/Polymorphic.cjs.mjs +2 -0
  26. package/Polymorphic.d.ts +39 -0
  27. package/Polymorphic.esm.d.ts +1 -0
  28. package/Polymorphic.esm.js +1 -0
  29. package/calendar/CalendarDaygridCell.cjs.js +9 -0
  30. package/{Calendar → calendar}/CalendarDaygridCell.d.ts +2 -3
  31. package/calendar/CalendarDaygridCell.esm.js +7 -0
  32. package/calendar/CalendarDaygridNav.cjs.js +9 -0
  33. package/{Calendar → calendar}/CalendarDaygridNav.d.ts +1 -1
  34. package/calendar/CalendarDaygridNav.esm.js +7 -0
  35. package/calendar/CalendarDaygridTable.cjs.js +13 -0
  36. package/{Calendar → calendar}/CalendarDaygridTable.d.ts +2 -2
  37. package/calendar/CalendarDaygridTable.esm.js +11 -0
  38. package/calendar/CalendarLegend.cjs.js +7 -0
  39. package/{Calendar → calendar}/CalendarLegend.d.ts +1 -2
  40. package/calendar/CalendarLegend.esm.js +5 -0
  41. package/calendar/calendar-api-google.cjs.js +10 -0
  42. package/{Calendar → calendar}/calendar-api-google.d.ts +1 -1
  43. package/calendar/calendar-api-google.esm.js +8 -0
  44. package/{Calendar → calendar}/types.d.ts +0 -0
  45. package/calendar/useCalendar.cjs.js +9 -0
  46. package/{Calendar → calendar}/useCalendar.d.ts +1 -2
  47. package/calendar/useCalendar.esm.js +7 -0
  48. package/calendar/useDateLocale.cjs.js +7 -0
  49. package/{hooks → calendar}/useDateLocale.d.ts +2 -2
  50. package/calendar/useDateLocale.esm.js +5 -0
  51. package/calendar/utils.cjs.js +23 -0
  52. package/calendar/utils.d.ts +11 -0
  53. package/calendar/utils.esm.js +13 -0
  54. package/calendar.cjs.d.ts +1 -0
  55. package/calendar.cjs.default.js +1 -0
  56. package/calendar.cjs.js +17 -0
  57. package/calendar.cjs.mjs +2 -0
  58. package/calendar.d.ts +7 -0
  59. package/calendar.esm.d.ts +1 -0
  60. package/calendar.esm.js +6 -0
  61. package/classed.cjs.d.ts +2 -0
  62. package/classed.cjs.default.js +1 -0
  63. package/classed.cjs.js +10 -0
  64. package/classed.cjs.mjs +2 -0
  65. package/{helpers/classed.d.ts → classed.d.ts} +1 -1
  66. package/classed.esm.d.ts +2 -0
  67. package/classed.esm.js +5 -0
  68. package/createUseMediaQueryWidth.cjs.d.ts +2 -0
  69. package/createUseMediaQueryWidth.cjs.default.js +1 -0
  70. package/createUseMediaQueryWidth.cjs.js +12 -0
  71. package/createUseMediaQueryWidth.cjs.mjs +2 -0
  72. package/{helpers/createUseMediaQueryWidth.d.ts → createUseMediaQueryWidth.d.ts} +2 -2
  73. package/createUseMediaQueryWidth.esm.d.ts +2 -0
  74. package/createUseMediaQueryWidth.esm.js +7 -0
  75. package/extendComponent.cjs.d.ts +2 -0
  76. package/extendComponent.cjs.default.js +1 -0
  77. package/extendComponent.cjs.js +10 -0
  78. package/extendComponent.cjs.mjs +2 -0
  79. package/{helpers/extend-component.d.ts → extendComponent.d.ts} +1 -2
  80. package/extendComponent.esm.d.ts +2 -0
  81. package/extendComponent.esm.js +5 -0
  82. package/forms/antispam.cjs.js +9 -0
  83. package/{Forms → forms}/antispam.d.ts +8 -8
  84. package/forms/antispam.esm.js +6 -0
  85. package/forms.cjs.d.ts +1 -0
  86. package/forms.cjs.default.js +1 -0
  87. package/forms.cjs.js +8 -0
  88. package/forms.cjs.mjs +2 -0
  89. package/forms.d.ts +1 -0
  90. package/forms.esm.d.ts +1 -0
  91. package/forms.esm.js +1 -0
  92. package/index.cjs.d.ts +1 -0
  93. package/index.cjs.default.js +1 -0
  94. package/index.cjs.js +57 -0
  95. package/index.cjs.mjs +2 -0
  96. package/index.d.ts +28 -1
  97. package/index.esm.d.ts +1 -0
  98. package/index.esm.js +26 -0
  99. package/mergeRefs.cjs.d.ts +2 -0
  100. package/mergeRefs.cjs.default.js +1 -0
  101. package/mergeRefs.cjs.js +8 -0
  102. package/mergeRefs.cjs.mjs +2 -0
  103. package/mergeRefs.d.ts +2 -0
  104. package/mergeRefs.esm.d.ts +2 -0
  105. package/mergeRefs.esm.js +3 -0
  106. package/package.json +202 -47
  107. package/{Img/index.d.ts → types.cjs.d.ts} +0 -0
  108. package/types.cjs.default.js +1 -0
  109. package/types.cjs.js +2 -0
  110. package/types.cjs.mjs +2 -0
  111. package/types.d.ts +0 -8
  112. package/{Img/index.mjs → types.esm.d.ts} +0 -0
  113. package/types.esm.js +1 -0
  114. package/useAsyncFn.cjs.d.ts +2 -0
  115. package/useAsyncFn.cjs.default.js +1 -0
  116. package/useAsyncFn.cjs.js +11 -0
  117. package/useAsyncFn.cjs.mjs +2 -0
  118. package/{hooks/useAsyncFn.d.ts → useAsyncFn.d.ts} +3 -2
  119. package/useAsyncFn.esm.d.ts +2 -0
  120. package/useAsyncFn.esm.js +6 -0
  121. package/useFirstMountState.cjs.d.ts +2 -0
  122. package/useFirstMountState.cjs.default.js +1 -0
  123. package/useFirstMountState.cjs.js +10 -0
  124. package/useFirstMountState.cjs.mjs +2 -0
  125. package/{hooks/useFirstMountState.d.ts → useFirstMountState.d.ts} +1 -1
  126. package/useFirstMountState.esm.d.ts +2 -0
  127. package/useFirstMountState.esm.js +5 -0
  128. package/useFixedOffset.cjs.d.ts +2 -0
  129. package/useFixedOffset.cjs.default.js +1 -0
  130. package/useFixedOffset.cjs.js +13 -0
  131. package/useFixedOffset.cjs.mjs +2 -0
  132. package/{hooks/useFixedOffset.d.ts → useFixedOffset.d.ts} +1 -2
  133. package/useFixedOffset.esm.d.ts +2 -0
  134. package/useFixedOffset.esm.js +8 -0
  135. package/useFocus.cjs.d.ts +2 -0
  136. package/useFocus.cjs.default.js +1 -0
  137. package/useFocus.cjs.js +10 -0
  138. package/useFocus.cjs.mjs +2 -0
  139. package/useFocus.d.ts +5 -0
  140. package/useFocus.esm.d.ts +2 -0
  141. package/useFocus.esm.js +5 -0
  142. package/useInterval.cjs.d.ts +2 -0
  143. package/useInterval.cjs.default.js +1 -0
  144. package/useInterval.cjs.js +11 -0
  145. package/useInterval.cjs.mjs +2 -0
  146. package/{hooks/useInterval.d.ts → useInterval.d.ts} +1 -1
  147. package/useInterval.esm.d.ts +2 -0
  148. package/useInterval.esm.js +6 -0
  149. package/useIsomorphicLayoutEffect.cjs.d.ts +2 -0
  150. package/useIsomorphicLayoutEffect.cjs.default.js +1 -0
  151. package/useIsomorphicLayoutEffect.cjs.js +11 -0
  152. package/useIsomorphicLayoutEffect.cjs.mjs +2 -0
  153. package/{hooks/useIsomorphicLayoutEffect.d.ts → useIsomorphicLayoutEffect.d.ts} +2 -2
  154. package/useIsomorphicLayoutEffect.esm.d.ts +2 -0
  155. package/useIsomorphicLayoutEffect.esm.js +6 -0
  156. package/useKeyUp.cjs.d.ts +2 -0
  157. package/useKeyUp.cjs.default.js +1 -0
  158. package/useKeyUp.cjs.js +11 -0
  159. package/useKeyUp.cjs.mjs +2 -0
  160. package/useKeyUp.d.ts +2 -0
  161. package/useKeyUp.esm.d.ts +2 -0
  162. package/useKeyUp.esm.js +6 -0
  163. package/useMeasure.cjs.d.ts +2 -0
  164. package/useMeasure.cjs.default.js +1 -0
  165. package/useMeasure.cjs.js +12 -0
  166. package/useMeasure.cjs.mjs +2 -0
  167. package/{hooks/useMeasure.d.ts → useMeasure.d.ts} +1 -1
  168. package/useMeasure.esm.d.ts +2 -0
  169. package/useMeasure.esm.js +7 -0
  170. package/useMountedState.cjs.d.ts +2 -0
  171. package/useMountedState.cjs.default.js +1 -0
  172. package/useMountedState.cjs.js +10 -0
  173. package/useMountedState.cjs.mjs +2 -0
  174. package/{hooks/useMountedState.d.ts → useMountedState.d.ts} +1 -1
  175. package/useMountedState.esm.d.ts +2 -0
  176. package/useMountedState.esm.js +5 -0
  177. package/useNavigateAway.cjs.d.ts +2 -0
  178. package/useNavigateAway.cjs.default.js +1 -0
  179. package/useNavigateAway.cjs.js +11 -0
  180. package/useNavigateAway.cjs.mjs +2 -0
  181. package/{hooks/useNavigateAway.d.ts → useNavigateAway.d.ts} +1 -1
  182. package/useNavigateAway.esm.d.ts +2 -0
  183. package/useNavigateAway.esm.js +6 -0
  184. package/usePrevious.cjs.d.ts +2 -0
  185. package/usePrevious.cjs.default.js +1 -0
  186. package/usePrevious.cjs.js +10 -0
  187. package/usePrevious.cjs.mjs +2 -0
  188. package/{hooks/usePrevious.d.ts → usePrevious.d.ts} +1 -1
  189. package/usePrevious.esm.d.ts +2 -0
  190. package/usePrevious.esm.js +5 -0
  191. package/usePreviousRef.cjs.d.ts +2 -0
  192. package/usePreviousRef.cjs.default.js +1 -0
  193. package/usePreviousRef.cjs.js +10 -0
  194. package/usePreviousRef.cjs.mjs +2 -0
  195. package/usePreviousRef.d.ts +2 -0
  196. package/usePreviousRef.esm.d.ts +2 -0
  197. package/usePreviousRef.esm.js +5 -0
  198. package/{Animations/useReveal.d.ts → useReveal.d.ts} +2 -2
  199. package/useScrollPosition.cjs.d.ts +2 -0
  200. package/useScrollPosition.cjs.default.js +1 -0
  201. package/useScrollPosition.cjs.js +13 -0
  202. package/useScrollPosition.cjs.mjs +2 -0
  203. package/{hooks/useScrollPosition.d.ts → useScrollPosition.d.ts} +1 -2
  204. package/useScrollPosition.esm.d.ts +2 -0
  205. package/useScrollPosition.esm.js +8 -0
  206. package/useScrollThreshold.cjs.d.ts +2 -0
  207. package/useScrollThreshold.cjs.default.js +1 -0
  208. package/useScrollThreshold.cjs.js +12 -0
  209. package/useScrollThreshold.cjs.mjs +2 -0
  210. package/useScrollThreshold.d.ts +2 -0
  211. package/useScrollThreshold.esm.d.ts +2 -0
  212. package/useScrollThreshold.esm.js +7 -0
  213. package/useScrollTo.cjs.d.ts +2 -0
  214. package/useScrollTo.cjs.default.js +1 -0
  215. package/useScrollTo.cjs.js +10 -0
  216. package/useScrollTo.cjs.mjs +2 -0
  217. package/useScrollTo.d.ts +2 -0
  218. package/useScrollTo.esm.d.ts +2 -0
  219. package/useScrollTo.esm.js +5 -0
  220. package/useSmoothScroll.cjs.d.ts +2 -0
  221. package/useSmoothScroll.cjs.default.js +1 -0
  222. package/useSmoothScroll.cjs.js +13 -0
  223. package/useSmoothScroll.cjs.mjs +2 -0
  224. package/useSmoothScroll.d.ts +8 -0
  225. package/useSmoothScroll.esm.d.ts +2 -0
  226. package/useSmoothScroll.esm.js +8 -0
  227. package/useSpinDelay.cjs.d.ts +2 -0
  228. package/useSpinDelay.cjs.default.js +1 -0
  229. package/useSpinDelay.cjs.js +10 -0
  230. package/useSpinDelay.cjs.mjs +2 -0
  231. package/{hooks/useSpinDelay.d.ts → useSpinDelay.d.ts} +1 -1
  232. package/useSpinDelay.esm.d.ts +2 -0
  233. package/useSpinDelay.esm.js +5 -0
  234. package/useTraceUpdate.cjs.d.ts +2 -0
  235. package/useTraceUpdate.cjs.default.js +1 -0
  236. package/useTraceUpdate.cjs.js +10 -0
  237. package/useTraceUpdate.cjs.mjs +2 -0
  238. package/{hooks/useTraceUpdate.d.ts → useTraceUpdate.d.ts} +1 -1
  239. package/useTraceUpdate.esm.d.ts +2 -0
  240. package/useTraceUpdate.esm.js +5 -0
  241. package/useUpdateEffect.cjs.d.ts +2 -0
  242. package/useUpdateEffect.cjs.default.js +1 -0
  243. package/useUpdateEffect.cjs.js +11 -0
  244. package/useUpdateEffect.cjs.mjs +2 -0
  245. package/{hooks/useUpdateEffect.d.ts → useUpdateEffect.d.ts} +1 -1
  246. package/useUpdateEffect.esm.d.ts +2 -0
  247. package/useUpdateEffect.esm.js +6 -0
  248. package/useWindowSize.cjs.d.ts +2 -0
  249. package/useWindowSize.cjs.default.js +1 -0
  250. package/useWindowSize.cjs.js +11 -0
  251. package/useWindowSize.cjs.mjs +2 -0
  252. package/useWindowSize.d.ts +12 -0
  253. package/useWindowSize.esm.d.ts +2 -0
  254. package/useWindowSize.esm.js +6 -0
  255. package/Alert/Alert.d.ts +0 -5
  256. package/Alert/Alert.mjs +0 -22
  257. package/Alert/Alert.stories.mjs +0 -18
  258. package/Alert/index.d.ts +0 -1
  259. package/Alert/index.mjs +0 -1
  260. package/Animations/Reveal.d.ts +0 -4
  261. package/Animations/Reveal.mjs +0 -43
  262. package/Animations/Underline.d.ts +0 -1
  263. package/Animations/Underline.mjs +0 -15
  264. package/Animations/index.d.ts +0 -3
  265. package/Animations/index.mjs +0 -3
  266. package/Animations/useReveal.mjs +0 -73
  267. package/Autocomplete/AutocompleteDownshift.d.ts +0 -1
  268. package/Autocomplete/AutocompleteDownshift.mjs +0 -157
  269. package/Autocomplete/AutocompleteDownshiftMultiselect.d.ts +0 -1
  270. package/Autocomplete/AutocompleteDownshiftMultiselect.mjs +0 -352
  271. package/Autocomplete/AutocompleteMui.d.ts +0 -47
  272. package/Autocomplete/AutocompleteMui.mjs +0 -219
  273. package/Autocomplete/AutocompleteReach.d.ts +0 -1
  274. package/Autocomplete/AutocompleteReach.mjs +0 -111
  275. package/Autocomplete/components.d.ts +0 -17
  276. package/Autocomplete/components.mjs +0 -87
  277. package/Autocomplete/helpers.d.ts +0 -3
  278. package/Autocomplete/helpers.mjs +0 -35
  279. package/Autocomplete/index.d.ts +0 -2
  280. package/Autocomplete/index.mjs +0 -4
  281. package/Bg/BgColor.d.ts +0 -31
  282. package/Bg/BgColor.mjs +0 -42
  283. package/Bg/BgPhoto.d.ts +0 -13
  284. package/Bg/BgPhoto.mjs +0 -71
  285. package/Bg/BgSvg.d.ts +0 -7
  286. package/Bg/BgSvg.mjs +0 -22
  287. package/Bg/index.d.ts +0 -3
  288. package/Bg/index.mjs +0 -3
  289. package/Breadcrumbs/Breadcrumbs.d.ts +0 -13
  290. package/Breadcrumbs/Breadcrumbs.mjs +0 -91
  291. package/Breadcrumbs/index.d.ts +0 -1
  292. package/Breadcrumbs/index.mjs +0 -1
  293. package/Buttons/Button.d.ts +0 -18
  294. package/Buttons/Button.mjs +0 -78
  295. package/Buttons/ButtonComposite.d.ts +0 -23
  296. package/Buttons/ButtonComposite.mjs +0 -105
  297. package/Buttons/ButtonFab.d.ts +0 -5
  298. package/Buttons/ButtonFab.mjs +0 -8
  299. package/Buttons/ButtonLink.d.ts +0 -8
  300. package/Buttons/ButtonLink.mjs +0 -18
  301. package/Buttons/IconButton.d.ts +0 -9
  302. package/Buttons/IconButton.mjs +0 -19
  303. package/Buttons/index.d.ts +0 -5
  304. package/Buttons/index.mjs +0 -5
  305. package/Calendar/CalendarDaygridCell.mjs +0 -95
  306. package/Calendar/CalendarDaygridNav.mjs +0 -52
  307. package/Calendar/CalendarDaygridTable.mjs +0 -115
  308. package/Calendar/CalendarLegend.mjs +0 -29
  309. package/Calendar/calendar-api-google.mjs +0 -99
  310. package/Calendar/index.d.ts +0 -6
  311. package/Calendar/index.mjs +0 -6
  312. package/Calendar/types.mjs +0 -1
  313. package/Calendar/useCalendar.mjs +0 -225
  314. package/Calendar/utils.d.ts +0 -11
  315. package/Calendar/utils.mjs +0 -209
  316. package/Carousel/Carousel.d.ts +0 -1
  317. package/Carousel/Carousel.mjs +0 -377
  318. package/Carousel/CarouselCss.d.ts +0 -35
  319. package/Carousel/CarouselCss.mjs +0 -44
  320. package/Carousel/index.d.ts +0 -1
  321. package/Carousel/index.mjs +0 -1
  322. package/Collapsable/Collapsable.d.ts +0 -1
  323. package/Collapsable/Collapsable.mjs +0 -1
  324. package/Collapsable/CollapsableReach.d.ts +0 -6
  325. package/Collapsable/CollapsableReach.mjs +0 -250
  326. package/Collapsable/index.d.ts +0 -1
  327. package/Collapsable/index.mjs +0 -1
  328. package/Debug/Debug.d.ts +0 -4
  329. package/Debug/Debug.mjs +0 -23
  330. package/Debug/index.d.ts +0 -1
  331. package/Debug/index.mjs +0 -1
  332. package/Details/Details.d.ts +0 -404
  333. package/Details/Details.mjs +0 -90
  334. package/Details/Details.stories.mjs +0 -21
  335. package/Details/index.d.ts +0 -1
  336. package/Details/index.mjs +0 -1
  337. package/Dialog/DialogMui.d.ts +0 -167
  338. package/Dialog/DialogMui.mjs +0 -105
  339. package/Dialog/DialogMui.stories.mjs +0 -20
  340. package/Dialog/css/bare.d.ts +0 -172
  341. package/Dialog/css/bare.mjs +0 -19
  342. package/Dialog/css/index.stories.mjs +0 -75
  343. package/Dialog/index.d.ts +0 -2
  344. package/Dialog/index.mjs +0 -1
  345. package/Dialog/m/bare.d.ts +0 -4
  346. package/Dialog/m/bare.mjs +0 -115
  347. package/Dialog/m/basic.d.ts +0 -4
  348. package/Dialog/m/basic.mjs +0 -31
  349. package/Dialog/m/index.d.ts +0 -3
  350. package/Dialog/m/index.mjs +0 -4
  351. package/Dialog/sc/bare.d.ts +0 -71
  352. package/Dialog/sc/bare.mjs +0 -54
  353. package/Dialog/sc/framer.d.ts +0 -25
  354. package/Dialog/sc/framer.mjs +0 -16
  355. package/Dialog/sc/framerMaterial.d.ts +0 -24
  356. package/Dialog/sc/framerMaterial.mjs +0 -16
  357. package/Dialog/sc/index.stories.mjs +0 -48
  358. package/Dialog/sc/material.d.ts +0 -61
  359. package/Dialog/sc/material.mjs +0 -41
  360. package/Dialog/tw/bare.d.ts +0 -223
  361. package/Dialog/tw/bare.mjs +0 -29
  362. package/Dialog/tw/elegant.d.ts +0 -271
  363. package/Dialog/tw/elegant.mjs +0 -18
  364. package/Dialog/tw/framer.d.ts +0 -109
  365. package/Dialog/tw/framer.mjs +0 -16
  366. package/Dialog/tw/framerMaterial.d.ts +0 -164
  367. package/Dialog/tw/framerMaterial.mjs +0 -16
  368. package/Dialog/tw/index.stories.mjs +0 -83
  369. package/Dialog/tw/material.d.ts +0 -271
  370. package/Dialog/tw/material.mjs +0 -18
  371. package/Editor/Editor--tiptap.d.ts +0 -9
  372. package/Editor/Editor--tiptap.mjs +0 -53
  373. package/Editor/components.d.ts +0 -5
  374. package/Editor/components.mjs +0 -28
  375. package/Editor/index.d.ts +0 -1
  376. package/Editor/index.mjs +0 -1
  377. package/FaviconTags.mjs +0 -64
  378. package/Form/Form.d.ts +0 -138
  379. package/Form/Form.mjs +0 -95
  380. package/Form/index.d.ts +0 -1
  381. package/Form/index.mjs +0 -1
  382. package/Form/sc/bare.d.ts +0 -58
  383. package/Form/sc/bare.mjs +0 -29
  384. package/Forms/Checkbox/Checkbox.d.ts +0 -11
  385. package/Forms/Checkbox/Checkbox.mjs +0 -36
  386. package/Forms/Checkbox/index.d.ts +0 -1
  387. package/Forms/Checkbox/index.mjs +0 -1
  388. package/Forms/Feedback/Feedback.d.ts +0 -5
  389. package/Forms/Feedback/Feedback.mjs +0 -14
  390. package/Forms/Feedback/index.d.ts +0 -1
  391. package/Forms/Feedback/index.mjs +0 -1
  392. package/Forms/Field/Field.d.ts +0 -36
  393. package/Forms/Field/Field.mjs +0 -50
  394. package/Forms/Field/FieldControl.d.ts +0 -26
  395. package/Forms/Field/FieldControl.mjs +0 -67
  396. package/Forms/Field/FieldHint.d.ts +0 -1
  397. package/Forms/Field/FieldHint.mjs +0 -6
  398. package/Forms/Field/index.d.ts +0 -2
  399. package/Forms/Field/index.mjs +0 -2
  400. package/Forms/Input/Input.d.ts +0 -9
  401. package/Forms/Input/Input.mjs +0 -36
  402. package/Forms/Input/index.d.ts +0 -1
  403. package/Forms/Input/index.mjs +0 -1
  404. package/Forms/InputGroup/InputGroup.d.ts +0 -13
  405. package/Forms/InputGroup/InputGroup.mjs +0 -57
  406. package/Forms/InputGroup/index.d.ts +0 -1
  407. package/Forms/InputGroup/index.mjs +0 -1
  408. package/Forms/Label/Label.d.ts +0 -3
  409. package/Forms/Label/Label.mjs +0 -24
  410. package/Forms/Label/index.d.ts +0 -1
  411. package/Forms/Label/index.mjs +0 -1
  412. package/Forms/Password/Password.d.ts +0 -5
  413. package/Forms/Password/Password.mjs +0 -53
  414. package/Forms/Password/index.d.ts +0 -1
  415. package/Forms/Password/index.mjs +0 -1
  416. package/Forms/Radio/Radio.d.ts +0 -12
  417. package/Forms/Radio/Radio.mjs +0 -57
  418. package/Forms/Radio/index.d.ts +0 -1
  419. package/Forms/Radio/index.mjs +0 -1
  420. package/Forms/Switch/Switch.d.ts +0 -9
  421. package/Forms/Switch/Switch.mjs +0 -60
  422. package/Forms/Switch/index.d.ts +0 -1
  423. package/Forms/Switch/index.mjs +0 -1
  424. package/Forms/Textarea/Textarea.d.ts +0 -5
  425. package/Forms/Textarea/Textarea.mjs +0 -26
  426. package/Forms/Textarea/TextareaRich.d.ts +0 -6
  427. package/Forms/Textarea/TextareaRich.mjs +0 -48
  428. package/Forms/Textarea/index.d.ts +0 -2
  429. package/Forms/Textarea/index.mjs +0 -2
  430. package/Forms/Toggle/Toggle-tailwind.d.ts +0 -0
  431. package/Forms/Toggle/Toggle-tailwind.mjs +0 -98
  432. package/Forms/Toggle/Toggle.d.ts +0 -19
  433. package/Forms/Toggle/Toggle.mjs +0 -123
  434. package/Forms/Toggle/index.d.ts +0 -1
  435. package/Forms/Toggle/index.mjs +0 -1
  436. package/Forms/Toggle/useToggle-tailwind.d.ts +0 -0
  437. package/Forms/Toggle/useToggle-tailwind.mjs +0 -201
  438. package/Forms/Toggle/useToggle.d.ts +0 -46
  439. package/Forms/Toggle/useToggle.mjs +0 -163
  440. package/Forms/antispam.mjs +0 -58
  441. package/Forms/helpers.d.ts +0 -26
  442. package/Forms/helpers.mjs +0 -52
  443. package/Forms/index.d.ts +0 -15
  444. package/Forms/index.mjs +0 -16
  445. package/Forms/styles.d.ts +0 -15
  446. package/Forms/styles.mjs +0 -61
  447. package/Gauge/Gauge.d.ts +0 -5
  448. package/Gauge/Gauge.mjs +0 -101
  449. package/Grid/Grid.d.ts +0 -41
  450. package/Grid/Grid.mjs +0 -75
  451. package/Grid/index.d.ts +0 -1
  452. package/Grid/index.mjs +0 -1
  453. package/Hamburger/Hamburger.d.ts +0 -6
  454. package/Hamburger/Hamburger.mjs +0 -79
  455. package/Hamburger/index.d.ts +0 -1
  456. package/Hamburger/index.mjs +0 -1
  457. package/Header/index.d.ts +0 -1
  458. package/Header/index.mjs +0 -1
  459. package/Header/useHeader.d.ts +0 -24
  460. package/Header/useHeader.mjs +0 -36
  461. package/Hidden/Hidden.d.ts +0 -6
  462. package/Hidden/Hidden.mjs +0 -10
  463. package/Hidden/index.d.ts +0 -1
  464. package/Hidden/index.mjs +0 -1
  465. package/Img/sc/bare.d.ts +0 -2
  466. package/Img/sc/bare.mjs +0 -36
  467. package/Img/types.d.ts +0 -9
  468. package/Img/types.mjs +0 -1
  469. package/Link/Link.d.ts +0 -3
  470. package/Link/Link.mjs +0 -2
  471. package/Link/LinkBlank.d.ts +0 -5
  472. package/Link/LinkBlank.mjs +0 -32
  473. package/Link/index.d.ts +0 -2
  474. package/Link/index.mjs +0 -2
  475. package/Menu/Menu.d.ts +0 -1
  476. package/Menu/Menu.mjs +0 -11
  477. package/Menu/MenuMui.d.ts +0 -0
  478. package/Menu/MenuMui.mjs +0 -164
  479. package/Menu/index.d.ts +0 -1
  480. package/Menu/index.mjs +0 -1
  481. package/MenuItem/MenuItem.d.ts +0 -1
  482. package/MenuItem/MenuItem.mjs +0 -20
  483. package/MenuItem/MenuItemMui.d.ts +0 -0
  484. package/MenuItem/MenuItemMui.mjs +0 -31
  485. package/MenuItem/index.d.ts +0 -1
  486. package/MenuItem/index.mjs +0 -1
  487. package/MenuItem/useMenuItem.d.ts +0 -9
  488. package/MenuItem/useMenuItem.mjs +0 -78
  489. package/Meta/Meta.mjs +0 -8
  490. package/Meta/index.d.ts +0 -2
  491. package/Meta/index.mjs +0 -2
  492. package/NoJs/NoJs.d.ts +0 -3
  493. package/NoJs/NoJs.mjs +0 -10
  494. package/NoJs/index.d.ts +0 -2
  495. package/NoJs/index.mjs +0 -2
  496. package/Pagination/PaginationNav.d.ts +0 -22
  497. package/Pagination/PaginationNav.mjs +0 -122
  498. package/Pagination/PaginationResults.d.ts +0 -3
  499. package/Pagination/PaginationResults.mjs +0 -34
  500. package/Pagination/index.d.ts +0 -2
  501. package/Pagination/index.mjs +0 -2
  502. package/Pill/Pill.d.ts +0 -5
  503. package/Pill/Pill.mjs +0 -37
  504. package/Pill/index.d.ts +0 -1
  505. package/Pill/index.mjs +0 -1
  506. package/Progress/ProgressCircular.d.ts +0 -19
  507. package/Progress/ProgressCircular.mjs +0 -53
  508. package/Progress/ProgressLinear.d.ts +0 -22
  509. package/Progress/ProgressLinear.mjs +0 -44
  510. package/Progress/ProgressOverlay.d.ts +0 -4
  511. package/Progress/ProgressOverlay.mjs +0 -64
  512. package/Progress/index.d.ts +0 -3
  513. package/Progress/index.mjs +0 -3
  514. package/Rating/Rating.d.ts +0 -35
  515. package/Rating/Rating.mjs +0 -154
  516. package/Rating/index.d.ts +0 -11
  517. package/Rating/index.mjs +0 -62
  518. package/Select/SelectDownshift.d.ts +0 -5
  519. package/Select/SelectDownshift.mjs +0 -37
  520. package/Select/components.d.ts +0 -6
  521. package/Select/components.mjs +0 -25
  522. package/Select/index.d.ts +0 -2
  523. package/Select/index.mjs +0 -2
  524. package/Sidebar/Sidebar.d.ts +0 -3
  525. package/Sidebar/Sidebar.mjs +0 -63
  526. package/Sidebar/index.d.ts +0 -1
  527. package/Sidebar/index.mjs +0 -1
  528. package/Spacing/Spacing.d.ts +0 -30
  529. package/Spacing/Spacing.mjs +0 -55
  530. package/Spacing/index.d.ts +0 -1
  531. package/Spacing/index.mjs +0 -1
  532. package/Sticky/Sticky.d.ts +0 -2
  533. package/Sticky/Sticky.mjs +0 -218
  534. package/Sticky/StickyCss.d.ts +0 -5
  535. package/Sticky/StickyCss.mjs +0 -10
  536. package/Sticky/index.d.ts +0 -1
  537. package/Sticky/index.mjs +0 -1
  538. package/Tabs/TabsMui.d.ts +0 -85
  539. package/Tabs/TabsMui.mjs +0 -61
  540. package/Tabs/TabsMui.stories.mjs +0 -20
  541. package/Tabs/index.d.ts +0 -1
  542. package/Tabs/index.mjs +0 -1
  543. package/Tabs/sc/bare.d.ts +0 -5
  544. package/Tabs/sc/bare.mjs +0 -85
  545. package/Tabs/sc/index.stories.mjs +0 -0
  546. package/Tabs/tw/bare.d.ts +0 -86
  547. package/Tabs/tw/bare.mjs +0 -15
  548. package/Tabs/tw/index.stories.mjs +0 -25
  549. package/Tabs/tw/material.d.ts +0 -119
  550. package/Tabs/tw/material.mjs +0 -14
  551. package/Tabs/useTabs.d.ts +0 -43
  552. package/Tabs/useTabs.mjs +0 -46
  553. package/Typography/CopyPasteVisible.d.ts +0 -1
  554. package/Typography/CopyPasteVisible.mjs +0 -6
  555. package/Typography/Native.d.ts +0 -10
  556. package/Typography/Native.mjs +0 -47
  557. package/Typography/ReadMore.d.ts +0 -12
  558. package/Typography/ReadMore.mjs +0 -114
  559. package/Typography/TextLoop.d.ts +0 -16
  560. package/Typography/TextLoop.mjs +0 -90
  561. package/Typography/TypeStairs.d.ts +0 -6
  562. package/Typography/TypeStairs.mjs +0 -61
  563. package/Typography/index.d.ts +0 -5
  564. package/Typography/index.mjs +0 -5
  565. package/css/index.d.ts +0 -2
  566. package/css/index.mjs +0 -30
  567. package/helpers/classed.mjs +0 -65
  568. package/helpers/classed.stories.mjs +0 -121
  569. package/helpers/createUseMediaQueryWidth.mjs +0 -178
  570. package/helpers/extend-component.mjs +0 -13
  571. package/helpers/index.d.ts +0 -4
  572. package/helpers/index.mjs +0 -4
  573. package/helpers/mergeRefs.d.ts +0 -3
  574. package/helpers/mergeRefs.mjs +0 -12
  575. package/hooks/index.d.ts +0 -20
  576. package/hooks/index.mjs +0 -21
  577. package/hooks/types.d.ts +0 -8
  578. package/hooks/types.mjs +0 -3
  579. package/hooks/useAsyncFn.mjs +0 -39
  580. package/hooks/useDateLocale.mjs +0 -37
  581. package/hooks/useFirstMountState.mjs +0 -12
  582. package/hooks/useFixedOffset.mjs +0 -56
  583. package/hooks/useFocus.d.ts +0 -6
  584. package/hooks/useFocus.mjs +0 -14
  585. package/hooks/useInterval.mjs +0 -29
  586. package/hooks/useIsomorphicLayoutEffect.mjs +0 -6
  587. package/hooks/useKeyUp.d.ts +0 -2
  588. package/hooks/useKeyUp.mjs +0 -21
  589. package/hooks/useMeasure.mjs +0 -174
  590. package/hooks/useMountedState.mjs +0 -15
  591. package/hooks/useNavigateAway.mjs +0 -69
  592. package/hooks/usePrevious.mjs +0 -17
  593. package/hooks/usePreviousRef.d.ts +0 -2
  594. package/hooks/usePreviousRef.mjs +0 -9
  595. package/hooks/useScrollPosition.mjs +0 -70
  596. package/hooks/useScrollThreshold.d.ts +0 -2
  597. package/hooks/useScrollThreshold.mjs +0 -33
  598. package/hooks/useScrollTo.d.ts +0 -2
  599. package/hooks/useScrollTo.mjs +0 -20
  600. package/hooks/useSmoothScroll.d.ts +0 -8
  601. package/hooks/useSmoothScroll.mjs +0 -35
  602. package/hooks/useSpinDelay.mjs +0 -52
  603. package/hooks/useTraceUpdate.mjs +0 -23
  604. package/hooks/useUpdateEffect.mjs +0 -14
  605. package/hooks/useWindowSize.d.ts +0 -12
  606. package/hooks/useWindowSize.mjs +0 -32
  607. package/index.mjs +0 -4
  608. package/m/MotionProvider.d.ts +0 -38
  609. package/m/MotionProvider.mjs +0 -40
  610. package/m/index.d.ts +0 -6
  611. package/m/index.mjs +0 -5
  612. package/m/lite.d.ts +0 -2
  613. package/m/lite.mjs +0 -2
  614. package/m/max.d.ts +0 -2
  615. package/m/max.mjs +0 -2
  616. package/sc/index.d.ts +0 -30
  617. package/sc/index.mjs +0 -31
  618. package/scm/index.d.ts +0 -29
  619. package/scm/index.mjs +0 -31
  620. package/shared/index.d.ts +0 -8
  621. package/shared/index.mjs +0 -43
  622. package/styles/Body.d.ts +0 -10
  623. package/styles/Body.mjs +0 -16
  624. package/styles/Global.d.ts +0 -15
  625. package/styles/Global.mjs +0 -49
  626. package/styles/index.d.ts +0 -7
  627. package/styles/index.mjs +0 -7
  628. package/styles/media.d.ts +0 -67
  629. package/styles/media.mjs +0 -151
  630. package/styles/spacing.d.ts +0 -13
  631. package/styles/spacing.mjs +0 -46
  632. package/styles/styled.d.ts +0 -12
  633. package/styles/styled.mjs +0 -26
  634. package/styles/theme--vanilla.d.ts +0 -17
  635. package/styles/theme--vanilla.mjs +0 -65
  636. package/styles/theme.d.ts +0 -82
  637. package/styles/theme.mjs +0 -38
  638. package/tw/index.d.ts +0 -2
  639. package/tw/index.mjs +0 -30
  640. package/twm/index.d.ts +0 -2
  641. package/twm/index.mjs +0 -30
  642. package/types.mjs +0 -1
  643. package/typings.d.ts +0 -99
package/hooks/types.d.ts DELETED
@@ -1,8 +0,0 @@
1
- /**
2
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/misc/types.ts)
3
- */
4
- export type PromiseType<P extends Promise<any>> = P extends Promise<infer T> ? T : never;
5
- /**
6
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/misc/types.ts)
7
- */
8
- export type FunctionReturningPromise = (...args: any[]) => Promise<any>;
package/hooks/types.mjs DELETED
@@ -1,3 +0,0 @@
1
- /**
2
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/misc/types.ts)
3
- */ export { };
@@ -1,39 +0,0 @@
1
- import React, { useCallback, useRef, useState } from "react";
2
- import { useMountedState } from "./useMountedState";
3
- /**
4
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/useAsyncFn.ts)
5
- */ export function useAsyncFn(fn, deps = [], initialState = {
6
- loading: false
7
- }) {
8
- const lastCallId = useRef(0);
9
- const isMounted = useMountedState();
10
- const [state, set] = useState(initialState);
11
- const callback = useCallback((...args)=>{
12
- const callId = ++lastCallId.current;
13
- if (!state.loading) {
14
- set((prevState)=>({
15
- ...prevState,
16
- loading: true
17
- }));
18
- }
19
- return fn(...args).then((value)=>{
20
- isMounted() && callId === lastCallId.current && set({
21
- value,
22
- loading: false
23
- });
24
- return value;
25
- }, (error)=>{
26
- isMounted() && callId === lastCallId.current && set({
27
- error,
28
- loading: false
29
- });
30
- return error;
31
- });
32
- // eslint-disable-next-line react-hooks/exhaustive-deps
33
- }, deps);
34
- return [
35
- state,
36
- callback
37
- ];
38
- }
39
- export default useAsyncFn;
@@ -1,37 +0,0 @@
1
- import { useEffect, useState } from "react";
2
- /**
3
- * Dynamically import the date-fns correct locale
4
- *
5
- * Inspired by:
6
- * @see https://robertmarshall.dev/blog/dynamically-import-datefns-locale-mui-datepicker-localization/
7
- */ export function useDateLocale(locale, defaultLocale = "en") {
8
- const [data, setData] = useState();
9
- const [current, setCurrent] = useState(defaultLocale);
10
- // const [ready, setReady] = useState(false);
11
- // If the user changes the locale listen to the change and import the locale that is now required.
12
- useEffect(()=>{
13
- const importLocaleFile = async ()=>{
14
- // This webpack option stops all of the date-fns files being imported and chunked.
15
- // NB: this makes unnecessary numerous webpack chunks in applications
16
- // that do not even use this hook, so we comment out the webpack dynamic
17
- // import and its magic comment
18
- // const localeToSet = await import(
19
- // /FIXME: * webpackMode: "lazy", webpackChunkName: "df-[index]", webpackExclude: /_lib/ */
20
- // `date-fns/locale/${locale}/index.js`,
21
- // );
22
- const localeToSet = await import(`date-fns/locale/en-US/index.js`);
23
- setCurrent(locale || current);
24
- setData(localeToSet.default);
25
- // setReady(true);
26
- };
27
- // If the locale has not yet been loaded.
28
- if (locale !== current) {
29
- importLocaleFile();
30
- }
31
- }, [
32
- locale,
33
- current
34
- ]);
35
- return data;
36
- }
37
- export default useDateLocale;
@@ -1,12 +0,0 @@
1
- import { useRef } from "react";
2
- /**
3
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/useFirstMountState.ts)
4
- */ export function useFirstMountState() {
5
- const isFirst = useRef(true);
6
- if (isFirst.current) {
7
- isFirst.current = false;
8
- return true;
9
- }
10
- return isFirst.current;
11
- }
12
- export default useFirstMountState;
@@ -1,56 +0,0 @@
1
- import { useRef } from "react";
2
- import debounce from "@koine/utils/debounce";
3
- import $each from "@koine/dom/$each";
4
- import calculateFixedOffset from "@koine/dom/calculateFixedOffset";
5
- import injectCss from "@koine/dom/injectCss";
6
- import listenResizeDebounced from "@koine/dom/listenResizeDebounced";
7
- import useIsomorphicLayoutEffect from "./useIsomorphicLayoutEffect";
8
- const inject = (value)=>{
9
- injectCss("useFixedOffset", `html{scroll-padding-top: ${value}px}`);
10
- };
11
- /**
12
- * # Use fixed offset
13
- *
14
- * Maybe use [ResizeObserver polyfill](https://github.com/juggle/resize-observer)
15
- *
16
- * @see https://web.dev/resize-observer/
17
- *
18
- * @param selector By default `[data-fixed]`: anyhting with the data attribute `data-fixed`
19
- */ export function useFixedOffset(selector) {
20
- const fixedOffset = useRef(0);
21
- useIsomorphicLayoutEffect(()=>{
22
- const update = ()=>{
23
- const newFixedOffset = calculateFixedOffset();
24
- fixedOffset.current = newFixedOffset;
25
- // inject this CSS make the hashed deeplinks position the scroll at the
26
- // right offset
27
- inject(newFixedOffset);
28
- };
29
- update();
30
- if (ResizeObserver) {
31
- // const elements = $$("[data-fixed]");
32
- const observer = new ResizeObserver((entries)=>{
33
- let newFixedOffset = 0;
34
- entries.forEach((entry)=>{
35
- newFixedOffset += entry.contentRect.height;
36
- });
37
- fixedOffset.current = newFixedOffset;
38
- const updateOnResize = debounce(()=>inject(newFixedOffset), 400, true);
39
- updateOnResize();
40
- });
41
- $each(selector || "[data-fixed]", ($el)=>{
42
- if (observer) observer.observe($el);
43
- });
44
- return ()=>{
45
- observer?.disconnect();
46
- };
47
- } else {
48
- const listener = listenResizeDebounced(0, update);
49
- return listener;
50
- }
51
- }, [
52
- selector
53
- ]);
54
- return fixedOffset;
55
- }
56
- export default useFixedOffset;
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- /**
3
- * @see https://stackoverflow.com/a/54159564/1938970
4
- */
5
- export declare const useFocus: () => (import("react").RefObject<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement> | (() => void))[];
6
- export default useFocus;
@@ -1,14 +0,0 @@
1
- import { useRef } from "react";
2
- /**
3
- * @see https://stackoverflow.com/a/54159564/1938970
4
- */ export const useFocus = ()=>{
5
- const elementRef = useRef(null);
6
- const setFocus = ()=>{
7
- elementRef.current && elementRef.current.focus();
8
- };
9
- return [
10
- elementRef,
11
- setFocus
12
- ];
13
- };
14
- export default useFocus;
@@ -1,29 +0,0 @@
1
- import { useEffect, useRef } from "react";
2
- import noop from "@koine/utils/noop";
3
- /**
4
- * @borrows [dan abramov](https://overreacted.io/making-setinterval-declarative-with-react-hooks/)
5
- *
6
- * We just add `deps` array argument and typescript support
7
- */ export function useInterval(callback, delay, deps = []) {
8
- const savedCallback = useRef();
9
- useEffect(()=>{
10
- savedCallback.current = callback;
11
- // eslint-disable-next-line react-hooks/exhaustive-deps
12
- }, [
13
- callback,
14
- ...deps
15
- ]);
16
- useEffect(()=>{
17
- function tick() {
18
- if (savedCallback.current) savedCallback.current();
19
- }
20
- if (delay !== null) {
21
- const id = setInterval(tick, delay);
22
- return ()=>clearInterval(id);
23
- }
24
- return noop;
25
- }, [
26
- delay
27
- ]);
28
- }
29
- export default useInterval;
@@ -1,6 +0,0 @@
1
- import { useEffect, useLayoutEffect } from "react";
2
- import isBrowser from "@koine/utils/isBrowser";
3
- /**
4
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/useIsomorphicLayoutEffect.ts)
5
- */ export const useIsomorphicLayoutEffect = isBrowser ? useLayoutEffect : useEffect;
6
- export default useIsomorphicLayoutEffect;
@@ -1,2 +0,0 @@
1
- export declare function useKeyUp(callback: (event: KeyboardEvent) => void, deps?: unknown[]): void;
2
- export default useKeyUp;
@@ -1,21 +0,0 @@
1
- import { useEffect } from "react";
2
- import on from "@koine/dom/on";
3
- export function useKeyUp(callback, deps = []) {
4
- useEffect(()=>{
5
- const listener = on(window, "keyup", (event)=>{
6
- // const { key } = event;
7
- // be sure we do not intercept keys combinations maybe used for other
8
- // actions like native browser navigation shortcuts
9
- // @see https://stackoverflow.com/a/37559790/1938970
10
- if (!event.ctrlKey && !event.altKey && !event.shiftKey && !event.metaKey) {
11
- callback(event);
12
- }
13
- });
14
- return listener;
15
- // eslint-disable-next-line react-hooks/exhaustive-deps
16
- }, [
17
- callback,
18
- ...deps
19
- ]);
20
- }
21
- export default useKeyUp;
@@ -1,174 +0,0 @@
1
- import { useEffect, useMemo, useRef, useState } from "react";
2
- import debounce from "@koine/utils/debounce";
3
- import noop from "@koine/utils/noop";
4
- import listenResizeDebounced from "@koine/dom/listenResizeDebounced";
5
- import listenScrollDebounced from "@koine/dom/listenScrollDebounced";
6
- import off from "@koine/dom/off";
7
- import on from "@koine/dom/on";
8
- let observer;
9
- // Returns a list of scroll offsets
10
- function findScrollContainers(element) {
11
- const result = [];
12
- if (!element || element === document.body) return result;
13
- const { overflow, overflowX, overflowY } = window.getComputedStyle(element);
14
- if ([
15
- overflow,
16
- overflowX,
17
- overflowY
18
- ].some((prop)=>prop === "auto" || prop === "scroll")) result.push(element);
19
- return [
20
- ...result,
21
- ...findScrollContainers(element.parentElement)
22
- ];
23
- }
24
- const keys = [
25
- "x",
26
- "y",
27
- "top",
28
- "bottom",
29
- "left",
30
- "right",
31
- "width",
32
- "height"
33
- ];
34
- const areBoundsEqual = (a, b)=>keys.every((key)=>a[key] === b[key]);
35
- /**
36
- * Use measure hook
37
- *
38
- * @borrows [pmndrs/react-use-measure](https://github.com/pmndrs/react-use-measure)
39
- */ export function useMeasure(options) {
40
- const { scroll = false } = options || {};
41
- const [bounds, setBounds] = useState({
42
- left: 0,
43
- top: 0,
44
- width: 0,
45
- height: 0,
46
- bottom: 0,
47
- right: 0,
48
- x: 0,
49
- y: 0
50
- });
51
- // keep all state in a ref
52
- const state = useRef([
53
- // element
54
- null,
55
- // scrollContainers
56
- null,
57
- // resizeObserver
58
- null,
59
- // lastBounds
60
- bounds
61
- ]);
62
- // make sure to update state only as long as the component is truly mounted
63
- const mounted = useRef(false);
64
- useEffect(()=>{
65
- mounted.current = true;
66
- return ()=>void (mounted.current = false);
67
- }, []);
68
- // memoize handlers, so event-listeners know when they should update
69
- const [forceRefresh /* resizeChange */ , , scrollChange] = useMemo(()=>{
70
- const callback = (..._args)=>{
71
- const [element, , , lastBounds] = state.current;
72
- if (!element) return;
73
- const size = element.getBoundingClientRect();
74
- // if (element instanceof HTMLElement && offsetSize) {
75
- // size.height = element.offsetHeight;
76
- // size.width = element.offsetWidth;
77
- // }
78
- Object.freeze(size);
79
- if (mounted.current && !areBoundsEqual(lastBounds, size)) {
80
- state.current[3] = size;
81
- setBounds(size);
82
- }
83
- };
84
- const debouncedCallback = debounce(callback);
85
- return [
86
- callback,
87
- debouncedCallback,
88
- debouncedCallback
89
- ];
90
- }, [
91
- setBounds /* , offsetSize */
92
- ]);
93
- // cleanup current scroll-listeners / observers
94
- function removeListeners() {
95
- const [, scrollContainers, resizeObserver] = state.current;
96
- if (scrollContainers) {
97
- scrollContainers.forEach((element)=>off(element, "scroll", scrollChange));
98
- state.current[1] = null;
99
- }
100
- if (resizeObserver) {
101
- resizeObserver.disconnect();
102
- state.current[2] = null;
103
- }
104
- }
105
- // add scroll-listeners / observers
106
- function addListeners() {
107
- const [element, scrollContainers] = state.current;
108
- if (!element) return;
109
- if (!observer && ResizeObserver) {
110
- observer = new ResizeObserver(scrollChange);
111
- state.current[2] = observer;
112
- observer.observe(element);
113
- if (scroll && scrollContainers) {
114
- scrollContainers.forEach((scrollContainer)=>on(scrollContainer, "scroll", scrollChange, {
115
- capture: true,
116
- passive: true
117
- }));
118
- }
119
- }
120
- }
121
- // the ref we expose to the user
122
- const ref = (node)=>{
123
- if (!node || node === state.current[0]) return;
124
- removeListeners();
125
- state.current[0] = node;
126
- state.current[1] = findScrollContainers(node);
127
- addListeners();
128
- };
129
- // add general event listeners
130
- // useOnWindowScroll(forceRefresh, Boolean(scroll));
131
- // useOnWindowResize(() => {
132
- // debugger;
133
- // forceRefresh();
134
- // });
135
- useEffect(()=>{
136
- if (scroll) {
137
- const listener = listenScrollDebounced(0, forceRefresh, 100);
138
- return listener;
139
- }
140
- return noop;
141
- }, [
142
- scroll,
143
- forceRefresh
144
- ]);
145
- useEffect(()=>{
146
- // const listener = listenResizeDebounced(onWindowResize);
147
- // return listener;
148
- const listener = listenResizeDebounced(0, forceRefresh, 100);
149
- return listener;
150
- }, [
151
- forceRefresh
152
- ]);
153
- // respond to changes that are relevant for the listeners
154
- useEffect(()=>{
155
- removeListeners();
156
- addListeners();
157
- // eslint-disable-next-line react-hooks/exhaustive-deps
158
- }, [
159
- scroll /* , scrollChange, resizeChange */
160
- ]);
161
- useEffect(()=>{
162
- // operate on mount, @kuus on the original version there is no call on mount?
163
- forceRefresh();
164
- // remove all listeners when the components unmounts
165
- return removeListeners;
166
- // eslint-disable-next-line react-hooks/exhaustive-deps
167
- }, []);
168
- return [
169
- ref,
170
- bounds,
171
- forceRefresh
172
- ];
173
- }
174
- export default useMeasure;
@@ -1,15 +0,0 @@
1
- import { useCallback, useEffect, useRef } from "react";
2
- /**
3
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/useMountedState.ts)
4
- */ export function useMountedState() {
5
- const mountedRef = useRef(false);
6
- const get = useCallback(()=>mountedRef.current, []);
7
- useEffect(()=>{
8
- mountedRef.current = true;
9
- return ()=>{
10
- mountedRef.current = false;
11
- };
12
- }, []);
13
- return get;
14
- }
15
- export default useMountedState;
@@ -1,69 +0,0 @@
1
- import { useEffect, useRef } from "react";
2
- import on from "@koine/dom/on";
3
- // type UseNavigateAwayPagehideHandler = (event: PageTransitionEvent) => unknown;
4
- /**
5
- * @resources
6
- *
7
- * About browser's specs see:
8
- * - https://developer.mozilla.org/en-US/docs/Web/API/Window/pagehide_event
9
- * - https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html#//apple_ref/doc/uid/TP40006511-SW5
10
- * - https://stackoverflow.com/questions/58009424/pagehide-event-on-google-chrome
11
- *
12
- * About react see:
13
- * - https://github.com/jacobbuck/react-beforeunload
14
- * - https://github.com/dioscarey/react-beforeunload-component
15
- *
16
- * About next.js see:
17
- * - https://github.com/vercel/next.js/issues/2476
18
- * - https://github.com/vercel/next.js/issues/2694
19
- *
20
- * For the callback technique see:
21
- * - https://stackoverflow.com/a/11835394/1938970
22
- */ export const useNavigateAway = (handler)=>{
23
- const beforeUnloadHandlerRef = useRef();
24
- // const pagehideHandlerRef = useRef<UseNavigateAwayPagehideHandler | undefined>();
25
- useEffect(()=>{
26
- beforeUnloadHandlerRef.current = (event)=>{
27
- const customMessageOrCondition = handler(event);
28
- if (customMessageOrCondition) {
29
- event.preventDefault();
30
- }
31
- // Handle legacy `event.returnValue` property
32
- // https://developer.mozilla.org/en-US/docs/Web/API/Window/beforeunload_event
33
- if (typeof customMessageOrCondition === "string") {
34
- return event.returnValue = customMessageOrCondition;
35
- }
36
- // Chrome doesn't support `event.preventDefault()` on `BeforeUnloadEvent`,
37
- // instead it requires `event.returnValue` to be set
38
- // https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload#browser_compatibility
39
- if (event.defaultPrevented) {
40
- return event.returnValue = "";
41
- }
42
- return;
43
- };
44
- // pagehideHandlerRef.current = (event) => {
45
- // const returnValue = handler?.(event);
46
- // if (event.persisted) {
47
- // // If the event's persisted property is `true` the page is about
48
- // // to enter the Back-Forward Cache, which is also in the frozen state.
49
- // } else {
50
- // // If the event's persisted property is not `true` the page is
51
- // // about to be unloaded.
52
- // }
53
- // };
54
- }, [
55
- handler
56
- ]);
57
- useEffect(()=>{
58
- const listenerBeforeunload = on(window, "beforeunload", (event)=>beforeUnloadHandlerRef.current?.(event));
59
- // const listenerPagehide = on(window, "pagehide", (event) =>
60
- // pagehideHandlerRef.current?.(event)
61
- // );
62
- return listenerBeforeunload;
63
- // return () => {
64
- // listenerBeforeunload();
65
- // // listenerPagehide();
66
- // };
67
- }, []);
68
- };
69
- export default useNavigateAway;
@@ -1,17 +0,0 @@
1
- import { useState } from "react";
2
- /**
3
- * @borrows [samselikoff/animated-carousel](https://github.com/samselikoff/2022-06-02-animated-carousel/blob/main/pages/final.jsx)
4
- */ export function usePrevious(state, defaulValue) {
5
- const [tuple, setTuple] = useState([
6
- state,
7
- defaulValue
8
- ]);
9
- if (tuple[1] !== state) {
10
- setTuple([
11
- tuple[1],
12
- state
13
- ]);
14
- }
15
- return tuple[0];
16
- }
17
- export default usePrevious;
@@ -1,2 +0,0 @@
1
- export declare function usePreviousRef<T>(value: T): T | undefined;
2
- export default usePreviousRef;
@@ -1,9 +0,0 @@
1
- import { useEffect, useRef } from "react";
2
- export function usePreviousRef(value) {
3
- const ref = useRef();
4
- useEffect(()=>{
5
- ref.current = value;
6
- });
7
- return ref.current;
8
- }
9
- export default usePreviousRef;
@@ -1,70 +0,0 @@
1
- import { useRef } from "react";
2
- import isBrowser from "@koine/utils/isBrowser";
3
- import listenScroll from "@koine/dom/listenScroll";
4
- import useIsomorphicLayoutEffect from "./useIsomorphicLayoutEffect";
5
- const zeroPosition = {
6
- x: 0,
7
- y: 0
8
- };
9
- const getClientRect = (element)=>element?.getBoundingClientRect();
10
- const getScrollPosition = (element, boundingElement)=>{
11
- if (!isBrowser) {
12
- return zeroPosition;
13
- }
14
- if (!boundingElement) {
15
- return {
16
- x: window.scrollX,
17
- y: window.scrollY
18
- };
19
- }
20
- const targetPosition = getClientRect(element?.current || document.body);
21
- const containerPosition = getClientRect(boundingElement.current);
22
- if (!targetPosition) {
23
- return zeroPosition;
24
- }
25
- return containerPosition ? {
26
- x: (containerPosition.x || 0) - (targetPosition.x || 0),
27
- y: (containerPosition.y || 0) - (targetPosition.y || 0)
28
- } : {
29
- x: targetPosition.left,
30
- y: targetPosition.top
31
- };
32
- };
33
- /**
34
- * @borrows [@n8tb1t/use-scroll-position@2.0.3](https://github.com/n8tb1t/use-scroll-position) by `n8tb1t <n8tb1t@gmail.com>`
35
- *
36
- * We've just:
37
- * - reused internal helper functions
38
- * - compacted object arguments in functions as plain argument list to improve compression
39
- */ export const useScrollPosition = (effect, deps = [], element, boundingElement, wait)=>{
40
- const position = useRef(getScrollPosition(null, boundingElement));
41
- let throttleTimeout = null;
42
- const callBack = ()=>{
43
- const current = getScrollPosition(element, boundingElement);
44
- effect(current, position.current);
45
- position.current = current;
46
- throttleTimeout = null;
47
- };
48
- useIsomorphicLayoutEffect(()=>{
49
- if (!isBrowser) {
50
- return undefined;
51
- }
52
- const handleScroll = ()=>{
53
- if (wait) {
54
- if (throttleTimeout === null) {
55
- throttleTimeout = window.setTimeout(callBack, wait);
56
- }
57
- } else {
58
- callBack();
59
- }
60
- };
61
- const listener = listenScroll(handleScroll, boundingElement?.current);
62
- return ()=>{
63
- listener();
64
- if (throttleTimeout) {
65
- clearTimeout(throttleTimeout);
66
- }
67
- };
68
- }, deps);
69
- };
70
- 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,33 +0,0 @@
1
- import { useCallback, useEffect, useState } from "react";
2
- import noop from "@koine/utils/noop";
3
- import listenScroll from "@koine/dom/listenScroll";
4
- export const useScrollThreshold = (threshold, callback)=>{
5
- const [isBelow, setIsBelow] = useState(false);
6
- const handler = useCallback(()=>{
7
- if (threshold) {
8
- const posY = window.scrollY; // * -1;
9
- const isAbove = posY < threshold;
10
- const isBelow = posY > threshold;
11
- // console.log("useScrollThreshold setIsBelow", isBelow, posY, threshold);
12
- setIsBelow(isBelow);
13
- if (callback) callback(isAbove, isBelow);
14
- }
15
- }, [
16
- threshold,
17
- callback
18
- ]);
19
- useEffect(()=>{
20
- if (threshold) {
21
- // const listener = listenScrollThrottled(0, handler, 50);
22
- const listener = listenScroll(handler);
23
- handler();
24
- return listener;
25
- }
26
- return noop;
27
- }, [
28
- threshold,
29
- handler
30
- ]);
31
- return isBelow;
32
- };
33
- export default useScrollThreshold;
@@ -1,2 +0,0 @@
1
- export declare function useScrollTo(id?: string, offset?: number): void;
2
- export default useScrollTo;