@koine/react 2.0.0-beta.12 → 2.0.0-beta.15

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 (576) hide show
  1. package/Alert/Alert.js +10 -0
  2. package/Alert/index.d.ts +1 -1
  3. package/Alert/index.js +1 -0
  4. package/Animations/Reveal.d.ts +1 -2
  5. package/Animations/Reveal.js +16 -0
  6. package/Animations/Underline.js +5 -0
  7. package/Animations/index.d.ts +3 -3
  8. package/Animations/index.js +3 -0
  9. package/Animations/useReveal.d.ts +0 -21
  10. package/Animations/useReveal.js +42 -0
  11. package/Autocomplete/AutocompleteDownshift.js +1 -0
  12. package/Autocomplete/AutocompleteDownshiftMultiselect.js +1 -0
  13. package/Autocomplete/AutocompleteMui.d.ts +2 -27
  14. package/Autocomplete/AutocompleteMui.js +93 -0
  15. package/Autocomplete/AutocompleteReach.js +1 -0
  16. package/Autocomplete/components.d.ts +0 -5
  17. package/Autocomplete/components.js +26 -0
  18. package/Autocomplete/helpers.d.ts +1 -1
  19. package/Autocomplete/helpers.js +17 -0
  20. package/Autocomplete/index.d.ts +2 -2
  21. package/Autocomplete/index.js +1 -0
  22. package/Bg/BgColor.d.ts +1 -20
  23. package/Bg/BgColor.js +16 -0
  24. package/Bg/BgPhoto.d.ts +1 -6
  25. package/Bg/BgPhoto.js +16 -0
  26. package/Bg/BgSvg.d.ts +0 -3
  27. package/Bg/BgSvg.js +9 -0
  28. package/Bg/index.d.ts +3 -3
  29. package/Bg/index.js +3 -0
  30. package/Breadcrumbs/Breadcrumbs.d.ts +1 -1
  31. package/Breadcrumbs/Breadcrumbs.js +27 -0
  32. package/Breadcrumbs/index.d.ts +1 -1
  33. package/Breadcrumbs/index.js +1 -0
  34. package/Buttons/Button.d.ts +0 -4
  35. package/Buttons/Button.js +10 -0
  36. package/Buttons/ButtonComposite.d.ts +3 -4
  37. package/Buttons/ButtonComposite.js +28 -0
  38. package/Buttons/ButtonFab.d.ts +1 -2
  39. package/Buttons/ButtonFab.js +6 -0
  40. package/Buttons/ButtonLink.d.ts +3 -3
  41. package/Buttons/ButtonLink.js +11 -0
  42. package/Buttons/IconButton.d.ts +1 -2
  43. package/Buttons/IconButton.js +7 -0
  44. package/Buttons/index.d.ts +5 -5
  45. package/Buttons/index.js +5 -0
  46. package/Calendar/CalendarDaygridCell.d.ts +3 -4
  47. package/Calendar/CalendarDaygridCell.js +46 -0
  48. package/Calendar/CalendarDaygridNav.d.ts +2 -2
  49. package/Calendar/CalendarDaygridNav.js +23 -0
  50. package/Calendar/CalendarDaygridTable.d.ts +3 -3
  51. package/Calendar/CalendarDaygridTable.js +45 -0
  52. package/Calendar/CalendarLegend.d.ts +2 -3
  53. package/Calendar/CalendarLegend.js +8 -0
  54. package/Calendar/calendar-api-google.d.ts +1 -9
  55. package/Calendar/calendar-api-google.js +126 -0
  56. package/Calendar/index.d.ts +6 -6
  57. package/Calendar/index.js +6 -0
  58. package/Calendar/types.d.ts +0 -19
  59. package/Calendar/types.js +1 -0
  60. package/Calendar/useCalendar.d.ts +4 -19
  61. package/Calendar/useCalendar.js +176 -0
  62. package/Calendar/utils.d.ts +1 -1
  63. package/Calendar/utils.js +185 -0
  64. package/Carousel/Carousel.js +1 -0
  65. package/Carousel/CarouselCss.d.ts +1 -23
  66. package/Carousel/CarouselCss.js +19 -0
  67. package/Carousel/index.d.ts +1 -1
  68. package/Carousel/index.js +1 -0
  69. package/Collapsable/Collapsable.js +1 -0
  70. package/Collapsable/CollapsableReach.d.ts +0 -6
  71. package/Collapsable/CollapsableReach.js +1 -0
  72. package/Collapsable/index.d.ts +1 -1
  73. package/Collapsable/index.js +1 -0
  74. package/Debug/Debug.js +9 -0
  75. package/Debug/index.d.ts +1 -1
  76. package/Debug/index.js +1 -0
  77. package/Details/Details.d.ts +0 -6
  78. package/Details/Details.js +52 -0
  79. package/Details/index.d.ts +1 -1
  80. package/Details/index.js +1 -0
  81. package/Dialog/DialogMui.d.ts +1 -3
  82. package/Dialog/DialogMui.js +39 -0
  83. package/Dialog/css/bare.d.ts +1 -2
  84. package/Dialog/css/bare.js +20 -0
  85. package/Dialog/index.d.ts +2 -2
  86. package/Dialog/index.js +1 -0
  87. package/Dialog/m/bare.js +3 -0
  88. package/Dialog/m/basic.d.ts +1 -1
  89. package/Dialog/m/basic.js +28 -0
  90. package/Dialog/m/index.d.ts +1 -2
  91. package/Dialog/m/index.js +4 -0
  92. package/Dialog/sc/bare.d.ts +2 -12
  93. package/Dialog/sc/bare.js +31 -0
  94. package/Dialog/sc/framer.d.ts +1 -2
  95. package/Dialog/sc/framer.js +16 -0
  96. package/Dialog/sc/framerMaterial.js +16 -0
  97. package/Dialog/sc/material.d.ts +1 -2
  98. package/Dialog/sc/material.js +21 -0
  99. package/Dialog/tw/bare.d.ts +2 -17
  100. package/Dialog/tw/bare.js +28 -0
  101. package/Dialog/tw/elegant.d.ts +1 -2
  102. package/Dialog/tw/elegant.js +20 -0
  103. package/Dialog/tw/framer.d.ts +1 -2
  104. package/Dialog/tw/framer.js +16 -0
  105. package/Dialog/tw/framerMaterial.js +16 -0
  106. package/Dialog/tw/material.d.ts +1 -2
  107. package/Dialog/tw/material.js +20 -0
  108. package/Editor/Editor--tiptap.js +26 -0
  109. package/Editor/components.js +10 -0
  110. package/Editor/index.d.ts +1 -1
  111. package/Editor/index.js +1 -0
  112. package/FaviconTags.d.ts +0 -10
  113. package/FaviconTags.js +6 -0
  114. package/Form/Form.d.ts +1 -14
  115. package/Form/Form.js +60 -0
  116. package/Form/index.d.ts +1 -1
  117. package/Form/index.js +1 -0
  118. package/Form/sc/bare.d.ts +1 -2
  119. package/Form/sc/bare.js +20 -0
  120. package/Forms/Checkbox/Checkbox.d.ts +1 -5
  121. package/Forms/Checkbox/Checkbox.js +15 -0
  122. package/Forms/Checkbox/index.d.ts +1 -1
  123. package/Forms/Checkbox/index.js +1 -0
  124. package/Forms/Feedback/Feedback.js +9 -0
  125. package/Forms/Feedback/index.d.ts +1 -1
  126. package/Forms/Feedback/index.js +1 -0
  127. package/Forms/Field/Field.d.ts +1 -19
  128. package/Forms/Field/Field.js +25 -0
  129. package/Forms/Field/FieldControl.d.ts +2 -14
  130. package/Forms/Field/FieldControl.js +35 -0
  131. package/Forms/Field/FieldHint.js +4 -0
  132. package/Forms/Field/index.d.ts +2 -2
  133. package/Forms/Field/index.js +2 -0
  134. package/Forms/Input/Input.d.ts +1 -2
  135. package/Forms/Input/Input.js +16 -0
  136. package/Forms/Input/index.d.ts +1 -1
  137. package/Forms/Input/index.js +1 -0
  138. package/Forms/InputGroup/InputGroup.d.ts +1 -2
  139. package/Forms/InputGroup/InputGroup.js +15 -0
  140. package/Forms/InputGroup/index.d.ts +1 -1
  141. package/Forms/InputGroup/index.js +1 -0
  142. package/Forms/Label/Label.js +6 -0
  143. package/Forms/Label/index.d.ts +1 -1
  144. package/Forms/Label/index.js +1 -0
  145. package/Forms/Password/Password.d.ts +1 -2
  146. package/Forms/Password/Password.js +17 -0
  147. package/Forms/Password/index.d.ts +1 -1
  148. package/Forms/Password/index.js +1 -0
  149. package/Forms/Radio/Radio.d.ts +1 -2
  150. package/Forms/Radio/Radio.js +25 -0
  151. package/Forms/Radio/index.d.ts +1 -1
  152. package/Forms/Radio/index.js +1 -0
  153. package/Forms/Switch/Switch.d.ts +1 -5
  154. package/Forms/Switch/Switch.js +17 -0
  155. package/Forms/Switch/index.d.ts +1 -1
  156. package/Forms/Switch/index.js +1 -0
  157. package/Forms/Textarea/Textarea.d.ts +1 -2
  158. package/Forms/Textarea/Textarea.js +12 -0
  159. package/Forms/Textarea/TextareaRich.d.ts +1 -2
  160. package/Forms/Textarea/TextareaRich.js +26 -0
  161. package/Forms/Textarea/index.d.ts +2 -2
  162. package/Forms/Textarea/index.js +2 -0
  163. package/Forms/Toggle/Toggle-tailwind.js +1 -0
  164. package/Forms/Toggle/Toggle.d.ts +0 -1
  165. package/Forms/Toggle/Toggle.js +25 -0
  166. package/Forms/Toggle/index.d.ts +1 -1
  167. package/Forms/Toggle/index.js +1 -0
  168. package/Forms/Toggle/useToggle-tailwind.js +1 -0
  169. package/Forms/Toggle/useToggle.d.ts +1 -31
  170. package/Forms/Toggle/useToggle.js +85 -0
  171. package/Forms/antispam.d.ts +0 -20
  172. package/Forms/antispam.js +31 -0
  173. package/Forms/helpers.d.ts +0 -8
  174. package/Forms/helpers.js +36 -0
  175. package/Forms/index.d.ts +15 -15
  176. package/Forms/index.js +15 -0
  177. package/Forms/styles.d.ts +0 -6
  178. package/Forms/styles.js +19 -0
  179. package/Gauge/Gauge.d.ts +0 -1
  180. package/Gauge/Gauge.js +1 -0
  181. package/Grid/Grid.d.ts +1 -10
  182. package/Grid/Grid.js +52 -0
  183. package/Grid/index.d.ts +1 -1
  184. package/Grid/index.js +1 -0
  185. package/Hamburger/Hamburger.d.ts +0 -1
  186. package/Hamburger/Hamburger.js +47 -0
  187. package/Hamburger/index.d.ts +1 -1
  188. package/Hamburger/index.js +1 -0
  189. package/Header/index.d.ts +1 -1
  190. package/Header/index.js +1 -0
  191. package/Header/useHeader.d.ts +0 -4
  192. package/Header/useHeader.js +31 -0
  193. package/Hidden/Hidden.d.ts +1 -1
  194. package/Hidden/Hidden.js +10 -0
  195. package/Hidden/index.d.ts +1 -1
  196. package/Hidden/index.js +1 -0
  197. package/Img/index.d.ts +1 -1
  198. package/Img/index.js +1 -0
  199. package/Img/sc/bare.js +4 -0
  200. package/Img/types.js +1 -0
  201. package/Link/Link.js +4 -0
  202. package/Link/LinkBlank.js +15 -0
  203. package/Link/index.d.ts +2 -2
  204. package/Link/index.js +2 -0
  205. package/Menu/Menu.js +4 -0
  206. package/Menu/MenuMui.js +1 -0
  207. package/Menu/index.d.ts +1 -1
  208. package/Menu/index.js +1 -0
  209. package/MenuItem/MenuItem.js +4 -0
  210. package/MenuItem/MenuItemMui.js +1 -0
  211. package/MenuItem/index.d.ts +1 -1
  212. package/MenuItem/index.js +1 -0
  213. package/MenuItem/useMenuItem.js +42 -0
  214. package/Meta/Meta.d.ts +0 -10
  215. package/Meta/Meta.js +6 -0
  216. package/Meta/index.d.ts +2 -2
  217. package/Meta/index.js +2 -0
  218. package/NoJs/NoJs.js +7 -0
  219. package/NoJs/index.d.ts +2 -2
  220. package/NoJs/index.js +2 -0
  221. package/Pagination/PaginationNav.d.ts +1 -9
  222. package/Pagination/PaginationNav.js +48 -0
  223. package/Pagination/PaginationResults.js +11 -0
  224. package/Pagination/index.d.ts +2 -2
  225. package/Pagination/index.js +2 -0
  226. package/Pill/Pill.js +7 -0
  227. package/Pill/index.d.ts +1 -1
  228. package/Pill/index.js +1 -0
  229. package/Progress/ProgressCircular.d.ts +1 -7
  230. package/Progress/ProgressCircular.js +12 -0
  231. package/Progress/ProgressLinear.d.ts +1 -8
  232. package/Progress/ProgressLinear.js +21 -0
  233. package/Progress/ProgressOverlay.js +23 -0
  234. package/Progress/index.d.ts +3 -3
  235. package/Progress/index.js +3 -0
  236. package/Rating/Rating.d.ts +0 -8
  237. package/Rating/Rating.js +43 -0
  238. package/Rating/index.d.ts +1 -4
  239. package/Rating/index.js +45 -0
  240. package/Select/SelectDownshift.d.ts +1 -1
  241. package/Select/SelectDownshift.js +1 -0
  242. package/Select/components.js +12 -0
  243. package/Select/index.d.ts +2 -2
  244. package/Select/index.js +1 -0
  245. package/Sidebar/Sidebar.js +23 -0
  246. package/Sidebar/index.d.ts +1 -1
  247. package/Sidebar/index.js +1 -0
  248. package/Spacing/Spacing.d.ts +1 -14
  249. package/Spacing/Spacing.js +32 -0
  250. package/Spacing/index.d.ts +1 -1
  251. package/Spacing/index.js +1 -0
  252. package/Sticky/Sticky.js +1 -0
  253. package/Sticky/StickyCss.js +6 -0
  254. package/Sticky/index.d.ts +1 -1
  255. package/Sticky/index.js +1 -0
  256. package/Tabs/TabsMui.d.ts +2 -3
  257. package/Tabs/TabsMui.js +30 -0
  258. package/Tabs/index.d.ts +1 -1
  259. package/Tabs/index.js +1 -0
  260. package/Tabs/sc/bare.d.ts +0 -5
  261. package/Tabs/sc/bare.js +1 -0
  262. package/Tabs/tw/bare.d.ts +1 -2
  263. package/Tabs/tw/bare.js +16 -0
  264. package/Tabs/tw/material.d.ts +1 -2
  265. package/Tabs/tw/material.js +18 -0
  266. package/Tabs/useTabs.d.ts +0 -22
  267. package/Tabs/useTabs.js +43 -0
  268. package/Typography/CopyPasteVisible.js +4 -0
  269. package/Typography/Native.js +14 -0
  270. package/Typography/ReadMore.d.ts +0 -2
  271. package/Typography/ReadMore.js +42 -0
  272. package/Typography/TextLoop.js +45 -0
  273. package/Typography/TypeStairs.js +42 -0
  274. package/Typography/index.d.ts +5 -5
  275. package/Typography/index.js +5 -0
  276. package/css/index.d.ts +2 -2
  277. package/css/index.js +2 -0
  278. package/helpers/classed.d.ts +0 -19
  279. package/helpers/classed.js +43 -0
  280. package/helpers/createUseMediaQueryWidth.d.ts +0 -6
  281. package/helpers/createUseMediaQueryWidth.js +39 -0
  282. package/helpers/extend-component.d.ts +0 -11
  283. package/helpers/extend-component.js +9 -0
  284. package/helpers/index.d.ts +4 -4
  285. package/helpers/index.js +4 -0
  286. package/helpers/{mergeRefs.mjs → mergeRefs.js} +4 -3
  287. package/hooks/index.d.ts +20 -20
  288. package/hooks/index.js +20 -0
  289. package/hooks/types.d.ts +0 -6
  290. package/hooks/types.js +1 -0
  291. package/hooks/useAsyncFn.d.ts +1 -4
  292. package/hooks/useAsyncFn.js +33 -0
  293. package/hooks/useDateLocale.d.ts +0 -6
  294. package/hooks/useDateLocale.js +28 -0
  295. package/hooks/useFirstMountState.d.ts +0 -3
  296. package/hooks/useFirstMountState.js +10 -0
  297. package/hooks/useFixedOffset.d.ts +0 -9
  298. package/hooks/useFixedOffset.js +45 -0
  299. package/hooks/useFocus.d.ts +0 -3
  300. package/hooks/useFocus.js +9 -0
  301. package/hooks/useInterval.d.ts +0 -5
  302. package/hooks/useInterval.js +22 -0
  303. package/hooks/useIsomorphicLayoutEffect.d.ts +0 -3
  304. package/hooks/useIsomorphicLayoutEffect.js +6 -0
  305. package/hooks/useKeyUp.js +18 -0
  306. package/hooks/useMeasure.d.ts +0 -5
  307. package/hooks/useMeasure.js +134 -0
  308. package/hooks/useMountedState.d.ts +0 -3
  309. package/hooks/useMountedState.js +13 -0
  310. package/hooks/useNavigateAway.d.ts +0 -29
  311. package/hooks/useNavigateAway.js +25 -0
  312. package/hooks/usePrevious.d.ts +0 -3
  313. package/hooks/usePrevious.js +9 -0
  314. package/hooks/{usePreviousRef.mjs → usePreviousRef.js} +2 -2
  315. package/hooks/useScrollPosition.d.ts +0 -7
  316. package/hooks/useScrollPosition.js +61 -0
  317. package/hooks/useScrollThreshold.js +26 -0
  318. package/hooks/useScrollTo.js +22 -0
  319. package/hooks/useSmoothScroll.d.ts +0 -6
  320. package/hooks/useSmoothScroll.js +33 -0
  321. package/hooks/useSpinDelay.d.ts +0 -12
  322. package/hooks/useSpinDelay.js +38 -0
  323. package/hooks/useTraceUpdate.d.ts +0 -3
  324. package/hooks/useTraceUpdate.js +18 -0
  325. package/hooks/useUpdateEffect.d.ts +0 -3
  326. package/hooks/useUpdateEffect.js +11 -0
  327. package/hooks/useWindowSize.d.ts +0 -9
  328. package/hooks/useWindowSize.js +20 -0
  329. package/index.d.ts +1 -1
  330. package/index.js +1 -0
  331. package/m/MotionProvider.d.ts +0 -32
  332. package/m/MotionProvider.js +7 -0
  333. package/m/index.d.ts +1 -6
  334. package/m/index.js +1 -0
  335. package/package.json +624 -22
  336. package/sc/index.d.ts +30 -30
  337. package/sc/index.js +30 -0
  338. package/scm/index.d.ts +29 -29
  339. package/scm/index.js +29 -0
  340. package/shared/index.d.ts +8 -8
  341. package/shared/index.js +8 -0
  342. package/styles/Body.d.ts +0 -8
  343. package/styles/Body.js +5 -0
  344. package/styles/Global.d.ts +0 -13
  345. package/styles/Global.js +5 -0
  346. package/styles/index.d.ts +7 -7
  347. package/styles/index.js +7 -0
  348. package/styles/media.d.ts +1 -50
  349. package/styles/media.js +74 -0
  350. package/styles/spacing.d.ts +1 -2
  351. package/styles/spacing.js +45 -0
  352. package/styles/styled.d.ts +0 -4
  353. package/styles/styled.js +9 -0
  354. package/styles/theme--vanilla.js +46 -0
  355. package/styles/theme.d.ts +0 -29
  356. package/styles/theme.js +30 -0
  357. package/tw/index.d.ts +2 -2
  358. package/tw/index.js +2 -0
  359. package/twm/index.d.ts +2 -2
  360. package/twm/index.js +2 -0
  361. package/types.d.ts +1 -2
  362. package/types.js +1 -0
  363. package/Alert/Alert.mjs +0 -22
  364. package/Alert/Alert.stories.mjs +0 -18
  365. package/Alert/index.mjs +0 -1
  366. package/Animations/Reveal.mjs +0 -43
  367. package/Animations/Underline.mjs +0 -15
  368. package/Animations/index.mjs +0 -3
  369. package/Animations/useReveal.mjs +0 -73
  370. package/Autocomplete/AutocompleteDownshift.mjs +0 -157
  371. package/Autocomplete/AutocompleteDownshiftMultiselect.mjs +0 -352
  372. package/Autocomplete/AutocompleteMui.mjs +0 -219
  373. package/Autocomplete/AutocompleteReach.mjs +0 -111
  374. package/Autocomplete/components.mjs +0 -87
  375. package/Autocomplete/helpers.mjs +0 -35
  376. package/Autocomplete/index.mjs +0 -4
  377. package/Bg/BgColor.mjs +0 -42
  378. package/Bg/BgPhoto.mjs +0 -71
  379. package/Bg/BgSvg.mjs +0 -22
  380. package/Bg/index.mjs +0 -3
  381. package/Breadcrumbs/Breadcrumbs.mjs +0 -91
  382. package/Breadcrumbs/index.mjs +0 -1
  383. package/Buttons/Button.mjs +0 -78
  384. package/Buttons/ButtonComposite.mjs +0 -105
  385. package/Buttons/ButtonFab.mjs +0 -8
  386. package/Buttons/ButtonLink.mjs +0 -18
  387. package/Buttons/IconButton.mjs +0 -19
  388. package/Buttons/index.mjs +0 -5
  389. package/Calendar/CalendarDaygridCell.mjs +0 -95
  390. package/Calendar/CalendarDaygridNav.mjs +0 -52
  391. package/Calendar/CalendarDaygridTable.mjs +0 -115
  392. package/Calendar/CalendarLegend.mjs +0 -29
  393. package/Calendar/calendar-api-google.mjs +0 -99
  394. package/Calendar/index.mjs +0 -6
  395. package/Calendar/types.mjs +0 -1
  396. package/Calendar/useCalendar.mjs +0 -225
  397. package/Calendar/utils.mjs +0 -209
  398. package/Carousel/Carousel.mjs +0 -377
  399. package/Carousel/CarouselCss.mjs +0 -44
  400. package/Carousel/index.mjs +0 -1
  401. package/Collapsable/Collapsable.mjs +0 -1
  402. package/Collapsable/CollapsableReach.mjs +0 -250
  403. package/Collapsable/index.mjs +0 -1
  404. package/Debug/Debug.mjs +0 -23
  405. package/Debug/index.mjs +0 -1
  406. package/Details/Details.mjs +0 -90
  407. package/Details/Details.stories.mjs +0 -21
  408. package/Details/index.mjs +0 -1
  409. package/Dialog/DialogMui.mjs +0 -105
  410. package/Dialog/DialogMui.stories.mjs +0 -20
  411. package/Dialog/css/bare.mjs +0 -19
  412. package/Dialog/css/index.stories.mjs +0 -75
  413. package/Dialog/index.mjs +0 -1
  414. package/Dialog/m/bare.mjs +0 -115
  415. package/Dialog/m/basic.mjs +0 -31
  416. package/Dialog/m/index.mjs +0 -4
  417. package/Dialog/sc/bare.mjs +0 -54
  418. package/Dialog/sc/framer.mjs +0 -16
  419. package/Dialog/sc/framerMaterial.mjs +0 -16
  420. package/Dialog/sc/index.stories.mjs +0 -48
  421. package/Dialog/sc/material.mjs +0 -41
  422. package/Dialog/tw/bare.mjs +0 -29
  423. package/Dialog/tw/elegant.mjs +0 -18
  424. package/Dialog/tw/framer.mjs +0 -16
  425. package/Dialog/tw/framerMaterial.mjs +0 -16
  426. package/Dialog/tw/index.stories.mjs +0 -83
  427. package/Dialog/tw/material.mjs +0 -18
  428. package/Editor/Editor--tiptap.mjs +0 -53
  429. package/Editor/components.mjs +0 -28
  430. package/Editor/index.mjs +0 -1
  431. package/FaviconTags.mjs +0 -64
  432. package/Form/Form.mjs +0 -95
  433. package/Form/index.mjs +0 -1
  434. package/Form/sc/bare.mjs +0 -29
  435. package/Forms/Checkbox/Checkbox.mjs +0 -36
  436. package/Forms/Checkbox/index.mjs +0 -1
  437. package/Forms/Feedback/Feedback.mjs +0 -14
  438. package/Forms/Feedback/index.mjs +0 -1
  439. package/Forms/Field/Field.mjs +0 -50
  440. package/Forms/Field/FieldControl.mjs +0 -67
  441. package/Forms/Field/FieldHint.mjs +0 -6
  442. package/Forms/Field/index.mjs +0 -2
  443. package/Forms/Input/Input.mjs +0 -36
  444. package/Forms/Input/index.mjs +0 -1
  445. package/Forms/InputGroup/InputGroup.mjs +0 -57
  446. package/Forms/InputGroup/index.mjs +0 -1
  447. package/Forms/Label/Label.mjs +0 -24
  448. package/Forms/Label/index.mjs +0 -1
  449. package/Forms/Password/Password.mjs +0 -53
  450. package/Forms/Password/index.mjs +0 -1
  451. package/Forms/Radio/Radio.mjs +0 -57
  452. package/Forms/Radio/index.mjs +0 -1
  453. package/Forms/Switch/Switch.mjs +0 -60
  454. package/Forms/Switch/index.mjs +0 -1
  455. package/Forms/Textarea/Textarea.mjs +0 -26
  456. package/Forms/Textarea/TextareaRich.mjs +0 -48
  457. package/Forms/Textarea/index.mjs +0 -2
  458. package/Forms/Toggle/Toggle-tailwind.mjs +0 -98
  459. package/Forms/Toggle/Toggle.mjs +0 -123
  460. package/Forms/Toggle/index.mjs +0 -1
  461. package/Forms/Toggle/useToggle-tailwind.mjs +0 -201
  462. package/Forms/Toggle/useToggle.mjs +0 -163
  463. package/Forms/antispam.mjs +0 -58
  464. package/Forms/helpers.mjs +0 -52
  465. package/Forms/index.mjs +0 -16
  466. package/Forms/styles.mjs +0 -61
  467. package/Gauge/Gauge.mjs +0 -101
  468. package/Grid/Grid.mjs +0 -75
  469. package/Grid/index.mjs +0 -1
  470. package/Hamburger/Hamburger.mjs +0 -79
  471. package/Hamburger/index.mjs +0 -1
  472. package/Header/index.mjs +0 -1
  473. package/Header/useHeader.mjs +0 -36
  474. package/Hidden/Hidden.mjs +0 -10
  475. package/Hidden/index.mjs +0 -1
  476. package/Img/index.mjs +0 -1
  477. package/Img/sc/bare.mjs +0 -36
  478. package/Img/types.mjs +0 -1
  479. package/Link/Link.mjs +0 -2
  480. package/Link/LinkBlank.mjs +0 -32
  481. package/Link/index.mjs +0 -2
  482. package/Menu/Menu.mjs +0 -11
  483. package/Menu/MenuMui.mjs +0 -164
  484. package/Menu/index.mjs +0 -1
  485. package/MenuItem/MenuItem.mjs +0 -20
  486. package/MenuItem/MenuItemMui.mjs +0 -31
  487. package/MenuItem/index.mjs +0 -1
  488. package/MenuItem/useMenuItem.mjs +0 -78
  489. package/Meta/Meta.mjs +0 -8
  490. package/Meta/index.mjs +0 -2
  491. package/NoJs/NoJs.mjs +0 -10
  492. package/NoJs/index.mjs +0 -2
  493. package/Pagination/PaginationNav.mjs +0 -122
  494. package/Pagination/PaginationResults.mjs +0 -34
  495. package/Pagination/index.mjs +0 -2
  496. package/Pill/Pill.mjs +0 -37
  497. package/Pill/index.mjs +0 -1
  498. package/Progress/ProgressCircular.mjs +0 -53
  499. package/Progress/ProgressLinear.mjs +0 -44
  500. package/Progress/ProgressOverlay.mjs +0 -64
  501. package/Progress/index.mjs +0 -3
  502. package/README.md +0 -1
  503. package/Rating/Rating.mjs +0 -154
  504. package/Rating/index.mjs +0 -62
  505. package/Select/SelectDownshift.mjs +0 -37
  506. package/Select/components.mjs +0 -25
  507. package/Select/index.mjs +0 -2
  508. package/Sidebar/Sidebar.mjs +0 -63
  509. package/Sidebar/index.mjs +0 -1
  510. package/Spacing/Spacing.mjs +0 -55
  511. package/Spacing/index.mjs +0 -1
  512. package/Sticky/Sticky.mjs +0 -218
  513. package/Sticky/StickyCss.mjs +0 -10
  514. package/Sticky/index.mjs +0 -1
  515. package/Tabs/TabsMui.mjs +0 -61
  516. package/Tabs/TabsMui.stories.mjs +0 -20
  517. package/Tabs/index.mjs +0 -1
  518. package/Tabs/sc/bare.mjs +0 -85
  519. package/Tabs/sc/index.stories.mjs +0 -0
  520. package/Tabs/tw/bare.mjs +0 -15
  521. package/Tabs/tw/index.stories.mjs +0 -25
  522. package/Tabs/tw/material.mjs +0 -14
  523. package/Tabs/useTabs.mjs +0 -46
  524. package/Typography/CopyPasteVisible.mjs +0 -6
  525. package/Typography/Native.mjs +0 -47
  526. package/Typography/ReadMore.mjs +0 -114
  527. package/Typography/TextLoop.mjs +0 -90
  528. package/Typography/TypeStairs.mjs +0 -61
  529. package/Typography/index.mjs +0 -5
  530. package/css/index.mjs +0 -30
  531. package/helpers/classed.mjs +0 -65
  532. package/helpers/classed.stories.mjs +0 -121
  533. package/helpers/createUseMediaQueryWidth.mjs +0 -178
  534. package/helpers/extend-component.mjs +0 -13
  535. package/helpers/index.mjs +0 -4
  536. package/hooks/index.mjs +0 -21
  537. package/hooks/types.mjs +0 -3
  538. package/hooks/useAsyncFn.mjs +0 -39
  539. package/hooks/useDateLocale.mjs +0 -37
  540. package/hooks/useFirstMountState.mjs +0 -12
  541. package/hooks/useFixedOffset.mjs +0 -56
  542. package/hooks/useFocus.mjs +0 -14
  543. package/hooks/useInterval.mjs +0 -29
  544. package/hooks/useIsomorphicLayoutEffect.mjs +0 -6
  545. package/hooks/useKeyUp.mjs +0 -21
  546. package/hooks/useMeasure.mjs +0 -174
  547. package/hooks/useMountedState.mjs +0 -15
  548. package/hooks/useNavigateAway.mjs +0 -69
  549. package/hooks/usePrevious.mjs +0 -17
  550. package/hooks/useScrollPosition.mjs +0 -70
  551. package/hooks/useScrollThreshold.mjs +0 -33
  552. package/hooks/useScrollTo.mjs +0 -20
  553. package/hooks/useSmoothScroll.mjs +0 -35
  554. package/hooks/useSpinDelay.mjs +0 -52
  555. package/hooks/useTraceUpdate.mjs +0 -23
  556. package/hooks/useUpdateEffect.mjs +0 -14
  557. package/hooks/useWindowSize.mjs +0 -32
  558. package/index.mjs +0 -4
  559. package/m/MotionProvider.mjs +0 -40
  560. package/m/index.mjs +0 -5
  561. package/sc/index.mjs +0 -31
  562. package/scm/index.mjs +0 -31
  563. package/shared/index.mjs +0 -43
  564. package/styles/Body.mjs +0 -16
  565. package/styles/Global.mjs +0 -49
  566. package/styles/index.mjs +0 -7
  567. package/styles/media.mjs +0 -151
  568. package/styles/spacing.mjs +0 -46
  569. package/styles/styled.mjs +0 -26
  570. package/styles/theme--vanilla.mjs +0 -65
  571. package/styles/theme.mjs +0 -38
  572. package/tw/index.mjs +0 -30
  573. package/twm/index.mjs +0 -30
  574. package/types.mjs +0 -1
  575. /package/m/{lite.mjs → lite.js} +0 -0
  576. /package/m/{max.mjs → max.js} +0 -0
@@ -1,5 +1,4 @@
1
- /// <reference types="react" />
2
- export type { KoineTabsProps } from "./bare";
1
+ export type { KoineTabsProps } from "./bare.js";
3
2
  export declare const Root: import("react").ForwardRefExoticComponent<Omit<{
4
3
  className?: string | undefined;
5
4
  ref?: import("react").Ref<any> | undefined;
@@ -0,0 +1,18 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import { classed, extendComponent } from "../../helpers/index.js";
3
+ import { KoineTabs as _ } from "./bare.js";
4
+ export var Root = classed(_.Root)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["< class=\""], ["< class=\""])));
5
+ export var List = classed(_.List)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["< class=\"border-b-gray-200 border-b border-solid"], ["< class=\"border-b-gray-200 border-b border-solid"])));
6
+ export var Tab = classed(_.Tab)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["< class=\"flex-col relative py-3 px-4 uppercase"], ["< class=\"flex-col relative py-3 px-4 uppercase"])));
7
+ export var Indicator = classed(_.Indicator)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["< class=\"absolute bottom-0 w-full h-[2px] ", ""], ["< class=\"absolute bottom-0 w-full h-[2px] ", ""])), function (p) {
8
+ return p.selected ? "bg-current" : "";
9
+ });
10
+ export var Panel = classed(_.Panel)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["< class=\"tabsPanel"], ["< class=\"tabsPanel"])));
11
+ export var KoineTabs = extendComponent(_, {
12
+ Root: Root,
13
+ List: List,
14
+ Tab: Tab,
15
+ Indicator: Indicator,
16
+ Panel: Panel,
17
+ });
18
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
package/Tabs/useTabs.d.ts CHANGED
@@ -1,32 +1,10 @@
1
1
  import React from "react";
2
2
  export interface UseTabsProps {
3
- /**
4
- * The value of the currently selected `Tab`.
5
- * If you don't want any selected `Tab`, you can set this prop to `false`.
6
- */
7
3
  value?: string | number | false;
8
- /**
9
- * The default value. Use when the component is not controlled.
10
- */
11
4
  defaultValue?: string | number | false;
12
- /**
13
- * The component orientation (layout flow direction).
14
- * @default 'horizontal'
15
- */
16
5
  orientation?: "horizontal" | "vertical";
17
- /**
18
- * The direction of the text.
19
- * @default 'ltr'
20
- */
21
6
  direction?: "ltr" | "rtl";
22
- /**
23
- * Callback invoked when new value is being set.
24
- */
25
7
  onChange?: (event: React.SyntheticEvent, value: number | string) => void;
26
- /**
27
- * If `true` the selected tab changes on focus. Otherwise it only
28
- * changes on activation.
29
- */
30
8
  selectionFollowsFocus?: boolean;
31
9
  }
32
10
  export declare const useTabs: (props: UseTabsProps) => {
@@ -0,0 +1,43 @@
1
+ import useControlled from "@mui/utils/useControlled";
2
+ import { useCallback, useId, useMemo } from "react";
3
+ export var useTabs = function (props) {
4
+ var valueProp = props.value, defaultValue = props.defaultValue, onChange = props.onChange, orientation = props.orientation, direction = props.direction, selectionFollowsFocus = props.selectionFollowsFocus;
5
+ var _a = useControlled({
6
+ controlled: valueProp,
7
+ default: defaultValue,
8
+ name: "Tabs",
9
+ state: "value",
10
+ }), value = _a[0], setValue = _a[1];
11
+ var idPrefix = useId();
12
+ var onSelected = useCallback(function (e, newValue) {
13
+ setValue(newValue);
14
+ if (onChange) {
15
+ onChange(e, newValue);
16
+ }
17
+ }, [onChange, setValue]);
18
+ var getRootProps = function () {
19
+ return {};
20
+ };
21
+ var tabsContextValue = useMemo(function () {
22
+ return {
23
+ idPrefix: idPrefix,
24
+ value: value,
25
+ onSelected: onSelected,
26
+ orientation: orientation,
27
+ direction: direction,
28
+ selectionFollowsFocus: selectionFollowsFocus,
29
+ };
30
+ }, [
31
+ idPrefix,
32
+ value,
33
+ onSelected,
34
+ orientation,
35
+ direction,
36
+ selectionFollowsFocus,
37
+ ]);
38
+ return {
39
+ getRootProps: getRootProps,
40
+ tabsContextValue: tabsContextValue,
41
+ };
42
+ };
43
+ export default useTabs;
@@ -0,0 +1,4 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import styled from "styled-components";
3
+ export var CopyPasteVisible = styled.span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n color: transparent;\n opacity: 0;\n font-size: 0;\n"], ["\n color: transparent;\n opacity: 0;\n font-size: 0;\n"])));
4
+ var templateObject_1;
@@ -0,0 +1,14 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import styled from "styled-components";
3
+ import { min } from "../styles/media.js";
4
+ export var p = "\n margin: 0 0 1em 0;\n";
5
+ export var h1 = "\n margin: 0 0 10px 0;\n font-size: 30px;\n font-weight: 800;\n line-height: var(--headingsLineHeight);\n ".concat(min.md, " {\n font-size: 50px;\n }\n");
6
+ export var h2 = "\n margin: 0 0 1em 0;\n font-size: 24px;\n font-weight: 800;\n line-height: var(--headingsLineHeight);\n";
7
+ export var h3 = "\n margin: 0 0 1em 0;\n font-size: 20px;\n font-weight: 600;\n line-height: var(--headingsLineHeight);\n";
8
+ export var h4 = "\n margin: 0 0 1em 0;\n font-size: 13px;\n font-weight: 600;\n line-height: var(--headingsLineHeight);\n";
9
+ export var P = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), p);
10
+ export var H1 = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), h1);
11
+ export var H2 = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), h2);
12
+ export var H3 = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), h3);
13
+ export var H4 = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), h4);
14
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
@@ -4,9 +4,7 @@ export type ReadMoreProps = React.ComponentPropsWithoutRef<"div"> & {
4
4
  lineHeight?: number;
5
5
  fontSize?: number;
6
6
  bg?: React.CSSProperties["background"];
7
- /** @default "Expand" */
8
7
  expand?: string;
9
- /** @default "Collapse" */
10
8
  collapse?: string;
11
9
  };
12
10
  export declare const ReadMore: ({ lines, lineHeight, fontSize, bg, expand, collapse, ...props }: ReadMoreProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,42 @@
1
+ import { __assign, __makeTemplateObject, __rest } from "tslib";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { m, useSpring } from "framer-motion";
4
+ import { useMemo, useRef, useState } from "react";
5
+ import styled from "styled-components";
6
+ import { useIsomorphicLayoutEffect } from "../hooks/index.js";
7
+ var Root = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject([""], [""])));
8
+ var Content = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n & p:first-child {\n margin-top: 0;\n }\n"], ["\n & p:first-child {\n margin-top: 0;\n }\n"])));
9
+ var BtnWrap = styled.span(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: flex;\n justify-content: flex-end;\n transition: transform 0.18s ease-in-out;\n text-align: right;\n transform: translateY(", ");\n opacity: ", ";\n"], ["\n display: flex;\n justify-content: flex-end;\n transition: transform 0.18s ease-in-out;\n text-align: right;\n transform: translateY(", ");\n opacity: ", ";\n"])), function (p) { return (p.$expanded ? "0" : "-100%"); }, function (p) { return (p.$expanded ? 0 : 1); });
10
+ var BtnFader = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n width: 30%;\n transition: transform 0.18s ease-in-out;\n background: linear-gradient(45deg, transparent 50%, ", " 70%);\n"], ["\n width: 30%;\n transition: transform 0.18s ease-in-out;\n background: linear-gradient(45deg, transparent 50%, ", " 70%);\n"])), function (p) { return p.$bg; });
11
+ var Btn = styled.span(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n padding: 0 10px 0 10px;\n line-height: ", ";\n background: var(--bodyBg);\n color: var(--grey600);\n white-space: nowrap;\n font-size: ", "px;\n cursor: pointer;\n"], ["\n padding: 0 10px 0 10px;\n line-height: ", ";\n background: var(--bodyBg);\n color: var(--grey600);\n white-space: nowrap;\n font-size: ", "px;\n cursor: pointer;\n"])), function (p) { return (p.$lineHeight ? p.$lineHeight : "inherit"); }, function (p) { return p.$fontSize; });
12
+ var BtnIcon = styled.span(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: inline-block;\n margin: 0 0 0 4px;\n transition: transform 0.18s ease-in-out;\n ", ";\n font-size: ", "px;\n"], ["\n display: inline-block;\n margin: 0 0 0 4px;\n transition: transform 0.18s ease-in-out;\n ", ";\n font-size: ", "px;\n"])), function (p) { return (p.$expanded ? "transform: rotate(180deg);" : ""); }, function (p) { return p.$fontSize; });
13
+ export var ReadMore = function (_a) {
14
+ var _b = _a.lines, lines = _b === void 0 ? 3 : _b, _c = _a.lineHeight, lineHeight = _c === void 0 ? 1.6 : _c, _d = _a.fontSize, fontSize = _d === void 0 ? 14 : _d, _e = _a.bg, bg = _e === void 0 ? "var(--bodyBg)" : _e, _f = _a.expand, expand = _f === void 0 ? "Expand" : _f, _g = _a.collapse, collapse = _g === void 0 ? "Collapse" : _g, props = __rest(_a, ["lines", "lineHeight", "fontSize", "bg", "expand", "collapse"]);
15
+ var defaultMaxHeight = lines * (lineHeight * fontSize);
16
+ var _h = useState(false), expanded = _h[0], setExpanded = _h[1];
17
+ var _j = useState(defaultMaxHeight), maxHeight = _j[0], setMaxHeight = _j[1];
18
+ var _k = useState(0), fullHeight = _k[0], setFullHeight = _k[1];
19
+ var _l = useState(false), exceeds = _l[0], setExceeds = _l[1];
20
+ var content = useRef(null);
21
+ var height = useSpring(defaultMaxHeight);
22
+ var styles = useMemo(function () { return (exceeds ? { height: height, overflow: "hidden" } : {}); }, [exceeds, height]);
23
+ var handleExpandClick = function () {
24
+ setExpanded(function (prevExpanded) { return !prevExpanded; });
25
+ };
26
+ useIsomorphicLayoutEffect(function () {
27
+ if (content.current) {
28
+ var elementHeight = content.current.offsetHeight;
29
+ var newExceeds = elementHeight > maxHeight;
30
+ if (!newExceeds) {
31
+ setMaxHeight(elementHeight);
32
+ }
33
+ setExceeds(newExceeds);
34
+ setFullHeight(elementHeight);
35
+ }
36
+ }, [content, maxHeight]);
37
+ useIsomorphicLayoutEffect(function () {
38
+ height.set(expanded ? fullHeight : maxHeight);
39
+ }, [expanded, height, fullHeight, maxHeight]);
40
+ return (_jsxs(Root, { children: [_jsx(m.div, { style: styles, children: _jsx(Content, __assign({ ref: content }, props)) }), exceeds && (_jsxs(BtnWrap, { "$expanded": expanded, children: [_jsx(BtnFader, { "$bg": bg }), _jsxs(Btn, { "$fontSize": fontSize, "$lineHeight": lineHeight, onClick: handleExpandClick, "aria-expanded": expanded, "aria-label": expanded ? collapse : expand, children: [expanded ? collapse : expand, _jsx(BtnIcon, { "$expanded": expanded })] })] }))] }));
41
+ };
42
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
@@ -0,0 +1,45 @@
1
+ import { __assign, __rest } from "tslib";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { AnimatePresence, m } from "framer-motion";
4
+ import { useEffect, useRef, useState } from "react";
5
+ export var TextLoopPiece = function (_a) {
6
+ var _b = _a.text, text = _b === void 0 ? "" : _b, _c = _a.style, style = _c === void 0 ? {} : _c, _d = _a.className, className = _d === void 0 ? "" : _d, _e = _a.direction, direction = _e === void 0 ? "up" : _e, _f = _a.inline, inline = _f === void 0 ? true : _f, _g = _a.noOverflow, noOverflow = _g === void 0 ? true : _g, _h = _a.delay, delay = _h === void 0 ? 400 : _h;
7
+ var placeholderRef = useRef(null);
8
+ var _j = useState({ data: "", key: "" }), content = _j[0], setContent = _j[1];
9
+ var _k = useState(inline ? 0 : "auto"), width = _k[0], setWidth = _k[1];
10
+ useEffect(function () {
11
+ var timeoutId = setTimeout(function () {
12
+ if (!placeholderRef.current)
13
+ return;
14
+ placeholderRef.current.innerHTML = text + "";
15
+ if (inline)
16
+ setWidth(placeholderRef.current.offsetWidth);
17
+ setContent({ data: text + "", key: new Date() + "" });
18
+ }, delay);
19
+ return function () { return clearTimeout(timeoutId); };
20
+ }, [text, delay, inline]);
21
+ return (_jsxs("div", { className: className, style: __assign(__assign({}, style), { position: "relative", display: inline ? "inline-block" : "block", width: width, whiteSpace: inline ? "nowrap" : "normal" }), children: [_jsx("span", { ref: placeholderRef, style: { visibility: "hidden" } }), _jsx("div", { style: {
22
+ overflow: noOverflow ? "hidden" : "visible",
23
+ display: "block",
24
+ position: "absolute",
25
+ top: 0,
26
+ left: 0,
27
+ height: "100%",
28
+ width: "100%",
29
+ }, children: _jsx(AnimatePresence, { children: _jsx(m.div, { style: { position: "absolute" }, initial: {
30
+ opacity: 0,
31
+ y: direction === "down" ? "-100%" : "100%",
32
+ }, animate: { opacity: 1, y: 0 }, exit: {
33
+ opacity: 0,
34
+ y: direction === "down" ? "100%" : "-100%",
35
+ }, children: content.data }, content.key) }) })] }));
36
+ };
37
+ export var TextLoop = function (_a) {
38
+ var texts = _a.texts, _b = _a.interval, interval = _b === void 0 ? 3000 : _b, props = __rest(_a, ["texts", "interval"]);
39
+ var _c = useState(0), index = _c[0], setIndex = _c[1];
40
+ useEffect(function () {
41
+ var intervalId = setInterval(function () { return setIndex(function (index) { return index + 1; }); }, interval);
42
+ return function () { return clearTimeout(intervalId); };
43
+ }, [interval]);
44
+ return _jsx(TextLoopPiece, __assign({}, props, { text: texts[index % texts.length] }));
45
+ };
@@ -0,0 +1,42 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { forwardRef } from "react";
3
+ export var TypeStairs = forwardRef(function (_a, ref) {
4
+ var children = _a.children, limit = _a.limit;
5
+ var rows = limit ? splitTextIntoRows(children, limit) : [children];
6
+ return rows.length > 1 ? (_jsx(_Fragment, { children: rows.map(function (row, rowIndex) {
7
+ return (_jsxs("span", { children: [renderRow(row, rowIndex, ref), rowIndex !== rows.length - 1 && _jsx("br", {})] }, "row-".concat(rowIndex)));
8
+ }) })) : (renderRow(rows[0], 0, ref));
9
+ });
10
+ function splitTextIntoRows(input, limit) {
11
+ if (input === void 0) { input = ""; }
12
+ if (limit === void 0) { limit = 18; }
13
+ var rows = [];
14
+ var arr = input.split(" ");
15
+ var currow = arr[0];
16
+ var rowlen = currow.length;
17
+ for (var i = 1; i < arr.length; i++) {
18
+ var word = arr[i];
19
+ rowlen += word.length + 1;
20
+ if (rowlen <= limit) {
21
+ currow += " " + word;
22
+ }
23
+ else {
24
+ rows.push(currow);
25
+ currow = word;
26
+ rowlen = word.length;
27
+ }
28
+ }
29
+ rows.push(currow);
30
+ return rows;
31
+ }
32
+ function renderRow(row, rowIndex, ref) {
33
+ var letters = row.split("");
34
+ var fontWeightIdx = 1;
35
+ return (_jsx(_Fragment, { children: letters.map(function (letter, letterIndex) {
36
+ var fontWeight = Math.min(fontWeightIdx * 100, 800);
37
+ if (letter !== " ") {
38
+ fontWeightIdx++;
39
+ }
40
+ return (_jsx("span", { style: { fontWeight: fontWeight }, ref: ref, children: letter }, "letter-".concat(rowIndex, "-").concat(letterIndex)));
41
+ }) }));
42
+ }
@@ -1,5 +1,5 @@
1
- export * from "./CopyPasteVisible";
2
- export * from "./Native";
3
- export * from "./ReadMore";
4
- export * from "./TextLoop";
5
- export * from "./TypeStairs";
1
+ export * from "./CopyPasteVisible.js";
2
+ export * from "./Native.js";
3
+ export * from "./ReadMore.js";
4
+ export * from "./TextLoop.js";
5
+ export * from "./TypeStairs.js";
@@ -0,0 +1,5 @@
1
+ export * from "./CopyPasteVisible.js";
2
+ export * from "./Native.js";
3
+ export * from "./ReadMore.js";
4
+ export * from "./TextLoop.js";
5
+ export * from "./TypeStairs.js";
package/css/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export * from "../shared";
2
- export { KoineDialog } from "../Dialog/css/bare";
1
+ export * from "../shared/index.js";
2
+ export { KoineDialog } from "../Dialog/css/bare.js";
package/css/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export * from "../shared/index.js";
2
+ export { KoineDialog } from "../Dialog/css/bare.js";
@@ -4,24 +4,5 @@ type ClassedAugmentedProps<Props> = Props & {
4
4
  ref?: React.Ref<any>;
5
5
  };
6
6
  type ClassedFinalProps<Props, Component> = Component extends React.ReactHTML ? React.HTMLProps<Component> & ClassedAugmentedProps<Props> : ClassedAugmentedProps<Props>;
7
- /**
8
- * This utility allows to extend a component a là `styled-components` but for
9
- * a className based styling solution like Tailwind,
10
- *
11
- * It also plays nicely with tailwind intellisense:
12
- * - https://github.com/tailwindlabs/tailwindcss-intellisense#tailwindcssclassattributes
13
- *
14
- * For references about tagged functions:
15
- * - https://javascript.plainenglish.io/how-css-in-js-libraries-work-da4145b1b6c7
16
- * - https://makersden.io/blog/reverse-engineering-styled-components
17
- * - https://typesafe.blog/article/the-logic-behind-javascript-tag-functions
18
- * - https://flaming.codes/posts/typescript-and-javascript-tagged-template-strings
19
- *
20
- * Similar projects:
21
- * - https://reactjsexample.com/style-radix-ui-components-with-tailwindcss/
22
- *
23
- * Discussions and Q/A:
24
- * - https://stackoverflow.com/q/73055695/1938970
25
- */
26
7
  export declare function classed<Props, Component extends React.ElementType = any>(component: Component): (strings: TemplateStringsArray, ...args: string[] | ((props: Props) => string)[]) => React.ForwardRefExoticComponent<React.PropsWithoutRef<ClassedFinalProps<Props, Component>> & React.RefAttributes<Component>>;
27
8
  export default classed;
@@ -0,0 +1,43 @@
1
+ import { __assign } from "tslib";
2
+ import { createElement, forwardRef } from "react";
3
+ export function classed(component) {
4
+ var type = component.type || component;
5
+ return function (strings) {
6
+ var args = [];
7
+ for (var _i = 1; _i < arguments.length; _i++) {
8
+ args[_i - 1] = arguments[_i];
9
+ }
10
+ var WrappedComponent = forwardRef(function (props, ref) {
11
+ var _a;
12
+ var argResolved = args
13
+ .map(function (arg, index) {
14
+ var result = "";
15
+ if (typeof arg === "function") {
16
+ result = arg(props);
17
+ }
18
+ else if (typeof arg !== "undefined") {
19
+ result = arg.toString();
20
+ }
21
+ return strings[index] + result;
22
+ })
23
+ .join("");
24
+ var isNativeHtmlElement = typeof type === "string";
25
+ var propsToForward = isNativeHtmlElement
26
+ ? {}
27
+ : props;
28
+ if (isNativeHtmlElement) {
29
+ for (var key in props) {
30
+ if (!key.startsWith("$")) {
31
+ propsToForward[key] = props[key];
32
+ }
33
+ }
34
+ }
35
+ var className = argResolved || strings[0];
36
+ className = ((_a = className.match(/class="([^"]*)/)) === null || _a === void 0 ? void 0 : _a[1]) || className;
37
+ className += (props === null || props === void 0 ? void 0 : props.className) ? " " + (props === null || props === void 0 ? void 0 : props.className) : "";
38
+ return createElement(type, __assign(__assign({}, propsToForward), { className: className || undefined, ref: ref }));
39
+ });
40
+ return WrappedComponent;
41
+ };
42
+ }
43
+ export default classed;
@@ -2,11 +2,5 @@ import { type GetMediaQueryWidthResolversBreakpoints } from "@koine/utils/getMed
2
2
  type _MediaQuerWidthDefExplicit<TBreakpoint extends string> = `min-${TBreakpoint}` | `max-${TBreakpoint}` | `up-${TBreakpoint}` | `down-${TBreakpoint}` | `between-${TBreakpoint}_${TBreakpoint}` | `only-${TBreakpoint}`;
3
3
  export type MediaQuerWidthDef<TBreakpoint extends string> = `${TBreakpoint}` | _MediaQuerWidthDefExplicit<TBreakpoint>;
4
4
  export type MediaQueryWidth<TBreakpoint extends string> = `@${MediaQuerWidthDef<TBreakpoint>}`;
5
- /**
6
- * Use `null` instead of `false` as default value, @see https://observablehq.com/@werehamster/avoiding-hydration-mismatch-when-using-react-hooks
7
- *
8
- * @param customBreakpoints
9
- * @returns
10
- */
11
5
  export declare function createUseMediaQueryWidth<TBreakpointsConfig extends GetMediaQueryWidthResolversBreakpoints>(customBreakpoints: TBreakpointsConfig): <TBreakpoints extends Extract<keyof TBreakpointsConfig, string>>(media: `@${TBreakpoints}` | `@min-${TBreakpoints}` | `@max-${TBreakpoints}` | `@up-${TBreakpoints}` | `@down-${TBreakpoints}` | `@between-${TBreakpoints}_${TBreakpoints}` | `@only-${TBreakpoints}`, serverValue?: null | boolean) => boolean | null;
12
6
  export default createUseMediaQueryWidth;
@@ -0,0 +1,39 @@
1
+ import { useState } from "react";
2
+ import getMediaQueryWidthResolvers from "@koine/utils/getMediaQueryWidthResolvers";
3
+ import isUndefined from "@koine/utils/isUndefined";
4
+ import useIsomorphicLayoutEffect from "../hooks/useIsomorphicLayoutEffect.js";
5
+ export function createUseMediaQueryWidth(customBreakpoints) {
6
+ var queryResolvers = getMediaQueryWidthResolvers(customBreakpoints);
7
+ return function useMediaQueryWidth(media, serverValue) {
8
+ var definition = media.substring(1);
9
+ var _a = definition.split("-"), rule = _a[0], ruleBreakpoint = _a[1];
10
+ if (isUndefined(ruleBreakpoint)) {
11
+ ruleBreakpoint = rule;
12
+ }
13
+ if (isUndefined(rule)) {
14
+ rule = "min";
15
+ }
16
+ var _b = ruleBreakpoint.split("_"), br1 = _b[0], br2 = _b[1];
17
+ var query = queryResolvers[rule](br1, br2);
18
+ var _c = useState(isUndefined(serverValue) ? null : serverValue), matches = _c[0], setMatches = _c[1];
19
+ useIsomorphicLayoutEffect(function () {
20
+ var mq = window.matchMedia(query);
21
+ var handleChange = function (event) {
22
+ setMatches(event.matches);
23
+ };
24
+ setMatches(mq.matches);
25
+ if (!mq.addEventListener) {
26
+ mq.addListener(handleChange);
27
+ return function () {
28
+ mq.removeListener(handleChange);
29
+ };
30
+ }
31
+ mq.addEventListener("change", handleChange);
32
+ return function () {
33
+ mq.removeEventListener("change", handleChange);
34
+ };
35
+ }, [query]);
36
+ return matches;
37
+ };
38
+ }
39
+ export default createUseMediaQueryWidth;
@@ -10,17 +10,6 @@ export interface OverridableComponents {
10
10
  motionable?: boolean;
11
11
  };
12
12
  }
13
- /**
14
- * Type to define a component that has overridable components.
15
- *
16
- * Each of them can define its:
17
- * - `type`: either as a native HTMLElement (the props for that element will be
18
- * automatically inferred) or as a custom React component
19
- * - `props`: any additional custom props
20
- * - `motionable`: if that component has a possible implementation with `framer-motion`,
21
- * in that case we remove some HTMLAttributes props which collides with
22
- * `MotionProps` from framer.
23
- */
24
13
  export type WithComponents<Props, Components extends OverridableComponents> = Props & {
25
14
  [Name in keyof Components]: NonNullable<Components[Name]["type"] extends keyof JSX.IntrinsicElements ? React.ElementType<Components[Name]["motionable"] extends true ? Omit<React.ComponentPropsWithoutRef<Components[Name]["type"]>, HtmlAttributesCollidingWithMotionProps> & Components[Name]["props"] : React.ComponentPropsWithoutRef<Components[Name]["type"]> & Components[Name]["props"]> : Components[Name]["type"]>;
26
15
  };
@@ -0,0 +1,9 @@
1
+ import { __assign } from "tslib";
2
+ import { createElement } from "react";
3
+ export var extendComponent = function (component, defaultProps) {
4
+ var NewComponent = function (props) {
5
+ return createElement(component, props);
6
+ };
7
+ return Object.assign(NewComponent, __assign(__assign({}, defaultProps), { defaultProps: defaultProps }));
8
+ };
9
+ export default extendComponent;
@@ -1,4 +1,4 @@
1
- export * from "./classed";
2
- export * from "./createUseMediaQueryWidth";
3
- export * from "./extend-component";
4
- export * from "./mergeRefs";
1
+ export * from "./classed.js";
2
+ export * from "./createUseMediaQueryWidth.js";
3
+ export * from "./extend-component.js";
4
+ export * from "./mergeRefs.js";
@@ -0,0 +1,4 @@
1
+ export * from "./classed.js";
2
+ export * from "./createUseMediaQueryWidth.js";
3
+ export * from "./extend-component.js";
4
+ export * from "./mergeRefs.js";
@@ -1,9 +1,10 @@
1
1
  export function mergeRefs(refs) {
2
- return (value)=>{
3
- refs.forEach((ref)=>{
2
+ return function (value) {
3
+ refs.forEach(function (ref) {
4
4
  if (typeof ref === "function") {
5
5
  ref(value);
6
- } else if (ref != null) {
6
+ }
7
+ else if (ref != null) {
7
8
  ref.current = value;
8
9
  }
9
10
  });
package/hooks/index.d.ts CHANGED
@@ -1,20 +1,20 @@
1
- export { useAsyncFn, type UseAsyncFnReturn, type UseAsyncState, } from "./useAsyncFn";
2
- export { useDateLocale } from "./useDateLocale";
3
- export { useFirstMountState } from "./useFirstMountState";
4
- export { useFixedOffset } from "./useFixedOffset";
5
- export { useFocus } from "./useFocus";
6
- export { useInterval } from "./useInterval";
7
- export { useIsomorphicLayoutEffect } from "./useIsomorphicLayoutEffect";
8
- export { useKeyUp } from "./useKeyUp";
9
- export { useMeasure, type UseMeasureOptions, type UseMeasureReturn, } from "./useMeasure";
10
- export { useMountedState } from "./useMountedState";
11
- export { useNavigateAway, type UseNavigateAwayHandler, } from "./useNavigateAway";
12
- export { usePrevious } from "./usePrevious";
13
- export { usePreviousRef } from "./usePreviousRef";
14
- export { useScrollPosition } from "./useScrollPosition";
15
- export { useScrollThreshold } from "./useScrollThreshold";
16
- export { useSmoothScroll } from "./useSmoothScroll";
17
- export { useSpinDelay } from "./useSpinDelay";
18
- export { useTraceUpdate } from "./useTraceUpdate";
19
- export { useUpdateEffect } from "./useUpdateEffect";
20
- export { useWindowSize } from "./useWindowSize";
1
+ export { useAsyncFn, type UseAsyncFnReturn, type UseAsyncState, } from "./useAsyncFn.js";
2
+ export { useDateLocale } from "./useDateLocale.js";
3
+ export { useFirstMountState } from "./useFirstMountState.js";
4
+ export { useFixedOffset } from "./useFixedOffset.js";
5
+ export { useFocus } from "./useFocus.js";
6
+ export { useInterval } from "./useInterval.js";
7
+ export { useIsomorphicLayoutEffect } from "./useIsomorphicLayoutEffect.js";
8
+ export { useKeyUp } from "./useKeyUp.js";
9
+ export { useMeasure, type UseMeasureOptions, type UseMeasureReturn, } from "./useMeasure.js";
10
+ export { useMountedState } from "./useMountedState.js";
11
+ export { useNavigateAway, type UseNavigateAwayHandler, } from "./useNavigateAway.js";
12
+ export { usePrevious } from "./usePrevious.js";
13
+ export { usePreviousRef } from "./usePreviousRef.js";
14
+ export { useScrollPosition } from "./useScrollPosition.js";
15
+ export { useScrollThreshold } from "./useScrollThreshold.js";
16
+ export { useSmoothScroll } from "./useSmoothScroll.js";
17
+ export { useSpinDelay } from "./useSpinDelay.js";
18
+ export { useTraceUpdate } from "./useTraceUpdate.js";
19
+ export { useUpdateEffect } from "./useUpdateEffect.js";
20
+ export { useWindowSize } from "./useWindowSize.js";
package/hooks/index.js ADDED
@@ -0,0 +1,20 @@
1
+ export { useAsyncFn, } from "./useAsyncFn.js";
2
+ export { useDateLocale } from "./useDateLocale.js";
3
+ export { useFirstMountState } from "./useFirstMountState.js";
4
+ export { useFixedOffset } from "./useFixedOffset.js";
5
+ export { useFocus } from "./useFocus.js";
6
+ export { useInterval } from "./useInterval.js";
7
+ export { useIsomorphicLayoutEffect } from "./useIsomorphicLayoutEffect.js";
8
+ export { useKeyUp } from "./useKeyUp.js";
9
+ export { useMeasure, } from "./useMeasure.js";
10
+ export { useMountedState } from "./useMountedState.js";
11
+ export { useNavigateAway, } from "./useNavigateAway.js";
12
+ export { usePrevious } from "./usePrevious.js";
13
+ export { usePreviousRef } from "./usePreviousRef.js";
14
+ export { useScrollPosition } from "./useScrollPosition.js";
15
+ export { useScrollThreshold } from "./useScrollThreshold.js";
16
+ export { useSmoothScroll } from "./useSmoothScroll.js";
17
+ export { useSpinDelay } from "./useSpinDelay.js";
18
+ export { useTraceUpdate } from "./useTraceUpdate.js";
19
+ export { useUpdateEffect } from "./useUpdateEffect.js";
20
+ export { useWindowSize } from "./useWindowSize.js";
package/hooks/types.d.ts CHANGED
@@ -1,8 +1,2 @@
1
- /**
2
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/misc/types.ts)
3
- */
4
1
  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
2
  export type FunctionReturningPromise = (...args: any[]) => Promise<any>;
package/hooks/types.js ADDED
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import type { FunctionReturningPromise, PromiseType } from "./types";
2
+ import type { FunctionReturningPromise, PromiseType } from "./types.js";
3
3
  export type UseAsyncState<T> = {
4
4
  loading: boolean;
5
5
  error?: undefined;
@@ -19,8 +19,5 @@ export type UseAsyncState<T> = {
19
19
  };
20
20
  type StateFromFunctionReturningPromise<T extends FunctionReturningPromise> = UseAsyncState<PromiseType<ReturnType<T>>>;
21
21
  export type UseAsyncFnReturn<T extends FunctionReturningPromise = FunctionReturningPromise> = [StateFromFunctionReturningPromise<T>, T];
22
- /**
23
- * @borrows [streamich/react-use](https://github.com/streamich/react-use/blob/master/src/useAsyncFn.ts)
24
- */
25
22
  export declare function useAsyncFn<T extends FunctionReturningPromise>(fn: T, deps?: React.DependencyList, initialState?: StateFromFunctionReturningPromise<T>): UseAsyncFnReturn<T>;
26
23
  export default useAsyncFn;
@@ -0,0 +1,33 @@
1
+ import { __assign } from "tslib";
2
+ import { useCallback, useRef, useState } from "react";
3
+ import { useMountedState } from "./useMountedState.js";
4
+ export function useAsyncFn(fn, deps, initialState) {
5
+ if (deps === void 0) { deps = []; }
6
+ if (initialState === void 0) { initialState = { loading: false }; }
7
+ var lastCallId = useRef(0);
8
+ var isMounted = useMountedState();
9
+ var _a = useState(initialState), state = _a[0], set = _a[1];
10
+ var callback = useCallback(function () {
11
+ var args = [];
12
+ for (var _i = 0; _i < arguments.length; _i++) {
13
+ args[_i] = arguments[_i];
14
+ }
15
+ var callId = ++lastCallId.current;
16
+ if (!state.loading) {
17
+ set(function (prevState) { return (__assign(__assign({}, prevState), { loading: true })); });
18
+ }
19
+ return fn.apply(void 0, args).then(function (value) {
20
+ isMounted() &&
21
+ callId === lastCallId.current &&
22
+ set({ value: value, loading: false });
23
+ return value;
24
+ }, function (error) {
25
+ isMounted() &&
26
+ callId === lastCallId.current &&
27
+ set({ error: error, loading: false });
28
+ return error;
29
+ });
30
+ }, deps);
31
+ return [state, callback];
32
+ }
33
+ export default useAsyncFn;
@@ -1,8 +1,2 @@
1
- /**
2
- * Dynamically import the date-fns correct locale
3
- *
4
- * Inspired by:
5
- * @see https://robertmarshall.dev/blog/dynamically-import-datefns-locale-mui-datepicker-localization/
6
- */
7
1
  export declare function useDateLocale(locale?: string, defaultLocale?: string): globalThis.Locale | undefined;
8
2
  export default useDateLocale;