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

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 (590) 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 +16 -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 +124 -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 +60 -66
  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 +9 -11
  82. package/Dialog/DialogMui.js +39 -0
  83. package/Dialog/css/bare.d.ts +9 -10
  84. package/Dialog/css/bare.js +21 -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 +4 -14
  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 +3 -4
  98. package/Dialog/sc/material.js +21 -0
  99. package/Dialog/tw/bare.d.ts +7 -22
  100. package/Dialog/tw/bare.js +29 -0
  101. package/Dialog/tw/elegant.d.ts +6 -7
  102. package/Dialog/tw/elegant.js +21 -0
  103. package/Dialog/tw/framer.d.ts +3 -4
  104. package/Dialog/tw/framer.js +16 -0
  105. package/Dialog/tw/framerMaterial.d.ts +2 -2
  106. package/Dialog/tw/framerMaterial.js +16 -0
  107. package/Dialog/tw/material.d.ts +6 -7
  108. package/Dialog/tw/material.js +21 -0
  109. package/Editor/Editor--tiptap.js +26 -0
  110. package/Editor/components.js +10 -0
  111. package/Editor/index.d.ts +1 -1
  112. package/Editor/index.js +1 -0
  113. package/FaviconTags.d.ts +0 -10
  114. package/FaviconTags.js +6 -0
  115. package/Form/Form.d.ts +1 -14
  116. package/Form/Form.js +60 -0
  117. package/Form/index.d.ts +1 -1
  118. package/Form/index.js +1 -0
  119. package/Form/sc/bare.d.ts +1 -2
  120. package/Form/sc/bare.js +20 -0
  121. package/Forms/Checkbox/Checkbox.d.ts +1 -5
  122. package/Forms/Checkbox/Checkbox.js +15 -0
  123. package/Forms/Checkbox/index.d.ts +1 -1
  124. package/Forms/Checkbox/index.js +1 -0
  125. package/Forms/Feedback/Feedback.js +9 -0
  126. package/Forms/Feedback/index.d.ts +1 -1
  127. package/Forms/Feedback/index.js +1 -0
  128. package/Forms/Field/Field.d.ts +1 -19
  129. package/Forms/Field/Field.js +25 -0
  130. package/Forms/Field/FieldControl.d.ts +2 -14
  131. package/Forms/Field/FieldControl.js +35 -0
  132. package/Forms/Field/FieldHint.js +4 -0
  133. package/Forms/Field/index.d.ts +2 -2
  134. package/Forms/Field/index.js +2 -0
  135. package/Forms/Input/Input.d.ts +1 -2
  136. package/Forms/Input/Input.js +16 -0
  137. package/Forms/Input/index.d.ts +1 -1
  138. package/Forms/Input/index.js +1 -0
  139. package/Forms/InputGroup/InputGroup.d.ts +1 -2
  140. package/Forms/InputGroup/InputGroup.js +15 -0
  141. package/Forms/InputGroup/index.d.ts +1 -1
  142. package/Forms/InputGroup/index.js +1 -0
  143. package/Forms/Label/Label.js +6 -0
  144. package/Forms/Label/index.d.ts +1 -1
  145. package/Forms/Label/index.js +1 -0
  146. package/Forms/Password/Password.d.ts +1 -2
  147. package/Forms/Password/Password.js +17 -0
  148. package/Forms/Password/index.d.ts +1 -1
  149. package/Forms/Password/index.js +1 -0
  150. package/Forms/Radio/Radio.d.ts +1 -2
  151. package/Forms/Radio/Radio.js +25 -0
  152. package/Forms/Radio/index.d.ts +1 -1
  153. package/Forms/Radio/index.js +1 -0
  154. package/Forms/Switch/Switch.d.ts +1 -5
  155. package/Forms/Switch/Switch.js +17 -0
  156. package/Forms/Switch/index.d.ts +1 -1
  157. package/Forms/Switch/index.js +1 -0
  158. package/Forms/Textarea/Textarea.d.ts +1 -2
  159. package/Forms/Textarea/Textarea.js +12 -0
  160. package/Forms/Textarea/TextareaRich.d.ts +1 -2
  161. package/Forms/Textarea/TextareaRich.js +26 -0
  162. package/Forms/Textarea/index.d.ts +2 -2
  163. package/Forms/Textarea/index.js +2 -0
  164. package/Forms/Toggle/Toggle-tailwind.js +1 -0
  165. package/Forms/Toggle/Toggle.d.ts +0 -1
  166. package/Forms/Toggle/Toggle.js +25 -0
  167. package/Forms/Toggle/index.d.ts +1 -1
  168. package/Forms/Toggle/index.js +1 -0
  169. package/Forms/Toggle/useToggle-tailwind.js +1 -0
  170. package/Forms/Toggle/useToggle.d.ts +1 -31
  171. package/Forms/Toggle/useToggle.js +85 -0
  172. package/Forms/antispam.d.ts +0 -20
  173. package/Forms/antispam.js +29 -0
  174. package/Forms/helpers.d.ts +0 -8
  175. package/Forms/helpers.js +35 -0
  176. package/Forms/index.d.ts +15 -15
  177. package/Forms/index.js +15 -0
  178. package/Forms/styles.d.ts +0 -6
  179. package/Forms/styles.js +19 -0
  180. package/Gauge/Gauge.d.ts +0 -1
  181. package/Gauge/Gauge.js +1 -0
  182. package/Grid/Grid.d.ts +1 -10
  183. package/Grid/Grid.js +52 -0
  184. package/Grid/index.d.ts +1 -1
  185. package/Grid/index.js +1 -0
  186. package/Hamburger/Hamburger.d.ts +0 -1
  187. package/Hamburger/Hamburger.js +47 -0
  188. package/Hamburger/index.d.ts +1 -1
  189. package/Hamburger/index.js +1 -0
  190. package/Header/index.d.ts +1 -1
  191. package/Header/index.js +1 -0
  192. package/Header/useHeader.d.ts +0 -4
  193. package/Header/useHeader.js +31 -0
  194. package/Hidden/Hidden.d.ts +1 -1
  195. package/Hidden/Hidden.js +10 -0
  196. package/Hidden/index.d.ts +1 -1
  197. package/Hidden/index.js +1 -0
  198. package/Img/index.d.ts +1 -1
  199. package/Img/index.js +1 -0
  200. package/Img/sc/bare.js +4 -0
  201. package/Img/types.js +1 -0
  202. package/Link/Link.js +4 -0
  203. package/Link/LinkBlank.js +15 -0
  204. package/Link/index.d.ts +2 -2
  205. package/Link/index.js +2 -0
  206. package/Menu/Menu.js +4 -0
  207. package/Menu/MenuMui.js +1 -0
  208. package/Menu/index.d.ts +1 -1
  209. package/Menu/index.js +1 -0
  210. package/MenuItem/MenuItem.js +4 -0
  211. package/MenuItem/MenuItemMui.js +1 -0
  212. package/MenuItem/index.d.ts +1 -1
  213. package/MenuItem/index.js +1 -0
  214. package/MenuItem/useMenuItem.js +42 -0
  215. package/Meta.d.ts +5 -0
  216. package/Meta.js +6 -0
  217. package/NoJs.js +7 -0
  218. package/Pagination/PaginationNav.d.ts +1 -9
  219. package/Pagination/PaginationNav.js +48 -0
  220. package/Pagination/PaginationResults.js +11 -0
  221. package/Pagination/index.d.ts +2 -2
  222. package/Pagination/index.js +2 -0
  223. package/Pill/Pill.js +7 -0
  224. package/Pill/index.d.ts +1 -1
  225. package/Pill/index.js +1 -0
  226. package/Progress/ProgressCircular.d.ts +1 -7
  227. package/Progress/ProgressCircular.js +12 -0
  228. package/Progress/ProgressLinear.d.ts +1 -8
  229. package/Progress/ProgressLinear.js +21 -0
  230. package/Progress/ProgressOverlay.js +23 -0
  231. package/Progress/index.d.ts +3 -3
  232. package/Progress/index.js +3 -0
  233. package/Rating/Rating.d.ts +0 -8
  234. package/Rating/Rating.js +43 -0
  235. package/Rating/index.d.ts +1 -4
  236. package/Rating/index.js +45 -0
  237. package/Select/SelectDownshift.d.ts +1 -1
  238. package/Select/SelectDownshift.js +1 -0
  239. package/Select/components.js +12 -0
  240. package/Select/index.d.ts +2 -2
  241. package/Select/index.js +1 -0
  242. package/Sidebar/Sidebar.js +23 -0
  243. package/Sidebar/index.d.ts +1 -1
  244. package/Sidebar/index.js +1 -0
  245. package/Spacing/Spacing.d.ts +1 -14
  246. package/Spacing/Spacing.js +32 -0
  247. package/Spacing/index.d.ts +1 -1
  248. package/Spacing/index.js +1 -0
  249. package/Sticky/Sticky.js +1 -0
  250. package/Sticky/StickyCss.js +6 -0
  251. package/Sticky/index.d.ts +1 -1
  252. package/Sticky/index.js +1 -0
  253. package/Tabs/TabsMui.d.ts +6 -7
  254. package/Tabs/TabsMui.js +30 -0
  255. package/Tabs/index.d.ts +1 -1
  256. package/Tabs/index.js +1 -0
  257. package/Tabs/sc/bare.d.ts +0 -5
  258. package/Tabs/sc/bare.js +1 -0
  259. package/Tabs/tw/bare.d.ts +5 -6
  260. package/Tabs/tw/bare.js +17 -0
  261. package/Tabs/tw/material.d.ts +2 -3
  262. package/Tabs/tw/material.js +19 -0
  263. package/Tabs/useTabs.d.ts +0 -22
  264. package/Tabs/useTabs.js +43 -0
  265. package/Typography/CopyPasteVisible.js +4 -0
  266. package/Typography/Native.js +14 -0
  267. package/Typography/ReadMore.d.ts +0 -2
  268. package/Typography/ReadMore.js +42 -0
  269. package/Typography/TextLoop.js +45 -0
  270. package/Typography/TypeStairs.js +42 -0
  271. package/Typography/index.d.ts +5 -5
  272. package/Typography/index.js +5 -0
  273. package/classed.d.ts +8 -0
  274. package/classed.js +43 -0
  275. package/{helpers/createUseMediaQueryWidth.d.ts → createUseMediaQueryWidth.d.ts} +1 -7
  276. package/createUseMediaQueryWidth.js +38 -0
  277. package/css/index.d.ts +1 -2
  278. package/css/index.js +1 -0
  279. package/{helpers/extend-component.d.ts → extendComponent.d.ts} +0 -11
  280. package/extendComponent.js +9 -0
  281. package/index.d.ts +25 -1
  282. package/index.js +24 -0
  283. package/m/MotionProvider.d.ts +0 -32
  284. package/m/MotionProvider.js +7 -0
  285. package/m/index.d.ts +1 -6
  286. package/m/index.js +1 -0
  287. package/{helpers/mergeRefs.mjs → mergeRefs.js} +4 -3
  288. package/package.json +609 -22
  289. package/sc/index.d.ts +29 -30
  290. package/sc/index.js +29 -0
  291. package/scm/index.d.ts +28 -29
  292. package/scm/index.js +28 -0
  293. package/shared/index.d.ts +7 -8
  294. package/shared/index.js +7 -0
  295. package/styles/Body.d.ts +0 -8
  296. package/styles/Body.js +5 -0
  297. package/styles/Global.d.ts +0 -13
  298. package/styles/Global.js +5 -0
  299. package/styles/index.d.ts +7 -7
  300. package/styles/index.js +7 -0
  301. package/styles/media.d.ts +1 -50
  302. package/styles/media.js +74 -0
  303. package/styles/spacing.d.ts +1 -2
  304. package/styles/spacing.js +45 -0
  305. package/styles/styled.d.ts +0 -4
  306. package/styles/styled.js +9 -0
  307. package/styles/theme--vanilla.js +46 -0
  308. package/styles/theme.d.ts +0 -29
  309. package/styles/theme.js +30 -0
  310. package/tw/index.d.ts +1 -2
  311. package/tw/index.js +1 -0
  312. package/twm/index.d.ts +1 -2
  313. package/twm/index.js +1 -0
  314. package/types.d.ts +3 -2
  315. package/types.js +1 -0
  316. package/{hooks/useAsyncFn.d.ts → useAsyncFn.d.ts} +1 -4
  317. package/useAsyncFn.js +33 -0
  318. package/useDateLocale.d.ts +2 -0
  319. package/useDateLocale.js +28 -0
  320. package/useFirstMountState.d.ts +2 -0
  321. package/useFirstMountState.js +10 -0
  322. package/useFixedOffset.d.ts +3 -0
  323. package/useFixedOffset.js +42 -0
  324. package/{hooks/useFocus.d.ts → useFocus.d.ts} +0 -3
  325. package/useFocus.js +9 -0
  326. package/useInterval.d.ts +2 -0
  327. package/useInterval.js +22 -0
  328. package/useIsomorphicLayoutEffect.d.ts +3 -0
  329. package/useIsomorphicLayoutEffect.js +6 -0
  330. package/useKeyUp.js +18 -0
  331. package/{hooks/useMeasure.d.ts → useMeasure.d.ts} +0 -5
  332. package/useMeasure.js +130 -0
  333. package/useMountedState.d.ts +2 -0
  334. package/useMountedState.js +13 -0
  335. package/useNavigateAway.d.ts +3 -0
  336. package/useNavigateAway.js +25 -0
  337. package/usePrevious.d.ts +2 -0
  338. package/usePrevious.js +9 -0
  339. package/{hooks/usePreviousRef.mjs → usePreviousRef.js} +2 -2
  340. package/{hooks/useScrollPosition.d.ts → useScrollPosition.d.ts} +0 -7
  341. package/useScrollPosition.js +61 -0
  342. package/useScrollThreshold.js +26 -0
  343. package/useScrollTo.js +22 -0
  344. package/{hooks/useSmoothScroll.d.ts → useSmoothScroll.d.ts} +0 -6
  345. package/useSmoothScroll.js +32 -0
  346. package/useSpinDelay.d.ts +2 -0
  347. package/useSpinDelay.js +38 -0
  348. package/{hooks/useTraceUpdate.d.ts → useTraceUpdate.d.ts} +0 -3
  349. package/useTraceUpdate.js +18 -0
  350. package/{hooks/useUpdateEffect.d.ts → useUpdateEffect.d.ts} +0 -3
  351. package/useUpdateEffect.js +11 -0
  352. package/useWindowSize.d.ts +3 -0
  353. package/useWindowSize.js +19 -0
  354. package/Alert/Alert.mjs +0 -22
  355. package/Alert/Alert.stories.mjs +0 -18
  356. package/Alert/index.mjs +0 -1
  357. package/Animations/Reveal.mjs +0 -43
  358. package/Animations/Underline.mjs +0 -15
  359. package/Animations/index.mjs +0 -3
  360. package/Animations/useReveal.mjs +0 -73
  361. package/Autocomplete/AutocompleteDownshift.mjs +0 -157
  362. package/Autocomplete/AutocompleteDownshiftMultiselect.mjs +0 -352
  363. package/Autocomplete/AutocompleteMui.mjs +0 -219
  364. package/Autocomplete/AutocompleteReach.mjs +0 -111
  365. package/Autocomplete/components.mjs +0 -87
  366. package/Autocomplete/helpers.mjs +0 -35
  367. package/Autocomplete/index.mjs +0 -4
  368. package/Bg/BgColor.mjs +0 -42
  369. package/Bg/BgPhoto.mjs +0 -71
  370. package/Bg/BgSvg.mjs +0 -22
  371. package/Bg/index.mjs +0 -3
  372. package/Breadcrumbs/Breadcrumbs.mjs +0 -91
  373. package/Breadcrumbs/index.mjs +0 -1
  374. package/Buttons/Button.mjs +0 -78
  375. package/Buttons/ButtonComposite.mjs +0 -105
  376. package/Buttons/ButtonFab.mjs +0 -8
  377. package/Buttons/ButtonLink.mjs +0 -18
  378. package/Buttons/IconButton.mjs +0 -19
  379. package/Buttons/index.mjs +0 -5
  380. package/Calendar/CalendarDaygridCell.mjs +0 -95
  381. package/Calendar/CalendarDaygridNav.mjs +0 -52
  382. package/Calendar/CalendarDaygridTable.mjs +0 -115
  383. package/Calendar/CalendarLegend.mjs +0 -29
  384. package/Calendar/calendar-api-google.mjs +0 -99
  385. package/Calendar/index.mjs +0 -6
  386. package/Calendar/types.mjs +0 -1
  387. package/Calendar/useCalendar.mjs +0 -225
  388. package/Calendar/utils.mjs +0 -209
  389. package/Carousel/Carousel.mjs +0 -377
  390. package/Carousel/CarouselCss.mjs +0 -44
  391. package/Carousel/index.mjs +0 -1
  392. package/Collapsable/Collapsable.mjs +0 -1
  393. package/Collapsable/CollapsableReach.mjs +0 -250
  394. package/Collapsable/index.mjs +0 -1
  395. package/Debug/Debug.mjs +0 -23
  396. package/Debug/index.mjs +0 -1
  397. package/Details/Details.mjs +0 -90
  398. package/Details/Details.stories.mjs +0 -21
  399. package/Details/index.mjs +0 -1
  400. package/Dialog/DialogMui.mjs +0 -105
  401. package/Dialog/DialogMui.stories.mjs +0 -20
  402. package/Dialog/css/bare.mjs +0 -19
  403. package/Dialog/css/index.stories.mjs +0 -75
  404. package/Dialog/index.mjs +0 -1
  405. package/Dialog/m/bare.mjs +0 -115
  406. package/Dialog/m/basic.mjs +0 -31
  407. package/Dialog/m/index.mjs +0 -4
  408. package/Dialog/sc/bare.mjs +0 -54
  409. package/Dialog/sc/framer.mjs +0 -16
  410. package/Dialog/sc/framerMaterial.mjs +0 -16
  411. package/Dialog/sc/index.stories.mjs +0 -48
  412. package/Dialog/sc/material.mjs +0 -41
  413. package/Dialog/tw/bare.mjs +0 -29
  414. package/Dialog/tw/elegant.mjs +0 -18
  415. package/Dialog/tw/framer.mjs +0 -16
  416. package/Dialog/tw/framerMaterial.mjs +0 -16
  417. package/Dialog/tw/index.stories.mjs +0 -83
  418. package/Dialog/tw/material.mjs +0 -18
  419. package/Editor/Editor--tiptap.mjs +0 -53
  420. package/Editor/components.mjs +0 -28
  421. package/Editor/index.mjs +0 -1
  422. package/FaviconTags.mjs +0 -64
  423. package/Form/Form.mjs +0 -95
  424. package/Form/index.mjs +0 -1
  425. package/Form/sc/bare.mjs +0 -29
  426. package/Forms/Checkbox/Checkbox.mjs +0 -36
  427. package/Forms/Checkbox/index.mjs +0 -1
  428. package/Forms/Feedback/Feedback.mjs +0 -14
  429. package/Forms/Feedback/index.mjs +0 -1
  430. package/Forms/Field/Field.mjs +0 -50
  431. package/Forms/Field/FieldControl.mjs +0 -67
  432. package/Forms/Field/FieldHint.mjs +0 -6
  433. package/Forms/Field/index.mjs +0 -2
  434. package/Forms/Input/Input.mjs +0 -36
  435. package/Forms/Input/index.mjs +0 -1
  436. package/Forms/InputGroup/InputGroup.mjs +0 -57
  437. package/Forms/InputGroup/index.mjs +0 -1
  438. package/Forms/Label/Label.mjs +0 -24
  439. package/Forms/Label/index.mjs +0 -1
  440. package/Forms/Password/Password.mjs +0 -53
  441. package/Forms/Password/index.mjs +0 -1
  442. package/Forms/Radio/Radio.mjs +0 -57
  443. package/Forms/Radio/index.mjs +0 -1
  444. package/Forms/Switch/Switch.mjs +0 -60
  445. package/Forms/Switch/index.mjs +0 -1
  446. package/Forms/Textarea/Textarea.mjs +0 -26
  447. package/Forms/Textarea/TextareaRich.mjs +0 -48
  448. package/Forms/Textarea/index.mjs +0 -2
  449. package/Forms/Toggle/Toggle-tailwind.mjs +0 -98
  450. package/Forms/Toggle/Toggle.mjs +0 -123
  451. package/Forms/Toggle/index.mjs +0 -1
  452. package/Forms/Toggle/useToggle-tailwind.mjs +0 -201
  453. package/Forms/Toggle/useToggle.mjs +0 -163
  454. package/Forms/antispam.mjs +0 -58
  455. package/Forms/helpers.mjs +0 -52
  456. package/Forms/index.mjs +0 -16
  457. package/Forms/styles.mjs +0 -61
  458. package/Gauge/Gauge.mjs +0 -101
  459. package/Grid/Grid.mjs +0 -75
  460. package/Grid/index.mjs +0 -1
  461. package/Hamburger/Hamburger.mjs +0 -79
  462. package/Hamburger/index.mjs +0 -1
  463. package/Header/index.mjs +0 -1
  464. package/Header/useHeader.mjs +0 -36
  465. package/Hidden/Hidden.mjs +0 -10
  466. package/Hidden/index.mjs +0 -1
  467. package/Img/index.mjs +0 -1
  468. package/Img/sc/bare.mjs +0 -36
  469. package/Img/types.mjs +0 -1
  470. package/Link/Link.mjs +0 -2
  471. package/Link/LinkBlank.mjs +0 -32
  472. package/Link/index.mjs +0 -2
  473. package/Menu/Menu.mjs +0 -11
  474. package/Menu/MenuMui.mjs +0 -164
  475. package/Menu/index.mjs +0 -1
  476. package/MenuItem/MenuItem.mjs +0 -20
  477. package/MenuItem/MenuItemMui.mjs +0 -31
  478. package/MenuItem/index.mjs +0 -1
  479. package/MenuItem/useMenuItem.mjs +0 -78
  480. package/Meta/Meta.d.ts +0 -15
  481. package/Meta/Meta.mjs +0 -8
  482. package/Meta/index.d.ts +0 -2
  483. package/Meta/index.mjs +0 -2
  484. package/NoJs/NoJs.mjs +0 -10
  485. package/NoJs/index.d.ts +0 -2
  486. package/NoJs/index.mjs +0 -2
  487. package/Pagination/PaginationNav.mjs +0 -122
  488. package/Pagination/PaginationResults.mjs +0 -34
  489. package/Pagination/index.mjs +0 -2
  490. package/Pill/Pill.mjs +0 -37
  491. package/Pill/index.mjs +0 -1
  492. package/Progress/ProgressCircular.mjs +0 -53
  493. package/Progress/ProgressLinear.mjs +0 -44
  494. package/Progress/ProgressOverlay.mjs +0 -64
  495. package/Progress/index.mjs +0 -3
  496. package/README.md +0 -1
  497. package/Rating/Rating.mjs +0 -154
  498. package/Rating/index.mjs +0 -62
  499. package/Select/SelectDownshift.mjs +0 -37
  500. package/Select/components.mjs +0 -25
  501. package/Select/index.mjs +0 -2
  502. package/Sidebar/Sidebar.mjs +0 -63
  503. package/Sidebar/index.mjs +0 -1
  504. package/Spacing/Spacing.mjs +0 -55
  505. package/Spacing/index.mjs +0 -1
  506. package/Sticky/Sticky.mjs +0 -218
  507. package/Sticky/StickyCss.mjs +0 -10
  508. package/Sticky/index.mjs +0 -1
  509. package/Tabs/TabsMui.mjs +0 -61
  510. package/Tabs/TabsMui.stories.mjs +0 -20
  511. package/Tabs/index.mjs +0 -1
  512. package/Tabs/sc/bare.mjs +0 -85
  513. package/Tabs/sc/index.stories.mjs +0 -0
  514. package/Tabs/tw/bare.mjs +0 -15
  515. package/Tabs/tw/index.stories.mjs +0 -25
  516. package/Tabs/tw/material.mjs +0 -14
  517. package/Tabs/useTabs.mjs +0 -46
  518. package/Typography/CopyPasteVisible.mjs +0 -6
  519. package/Typography/Native.mjs +0 -47
  520. package/Typography/ReadMore.mjs +0 -114
  521. package/Typography/TextLoop.mjs +0 -90
  522. package/Typography/TypeStairs.mjs +0 -61
  523. package/Typography/index.mjs +0 -5
  524. package/css/index.mjs +0 -30
  525. package/helpers/classed.d.ts +0 -27
  526. package/helpers/classed.mjs +0 -65
  527. package/helpers/classed.stories.mjs +0 -121
  528. package/helpers/createUseMediaQueryWidth.mjs +0 -178
  529. package/helpers/extend-component.mjs +0 -13
  530. package/helpers/index.d.ts +0 -4
  531. package/helpers/index.mjs +0 -4
  532. package/hooks/index.d.ts +0 -20
  533. package/hooks/index.mjs +0 -21
  534. package/hooks/types.d.ts +0 -8
  535. package/hooks/types.mjs +0 -3
  536. package/hooks/useAsyncFn.mjs +0 -39
  537. package/hooks/useDateLocale.d.ts +0 -8
  538. package/hooks/useDateLocale.mjs +0 -37
  539. package/hooks/useFirstMountState.d.ts +0 -5
  540. package/hooks/useFirstMountState.mjs +0 -12
  541. package/hooks/useFixedOffset.d.ts +0 -12
  542. package/hooks/useFixedOffset.mjs +0 -56
  543. package/hooks/useFocus.mjs +0 -14
  544. package/hooks/useInterval.d.ts +0 -7
  545. package/hooks/useInterval.mjs +0 -29
  546. package/hooks/useIsomorphicLayoutEffect.d.ts +0 -6
  547. package/hooks/useIsomorphicLayoutEffect.mjs +0 -6
  548. package/hooks/useKeyUp.mjs +0 -21
  549. package/hooks/useMeasure.mjs +0 -174
  550. package/hooks/useMountedState.d.ts +0 -5
  551. package/hooks/useMountedState.mjs +0 -15
  552. package/hooks/useNavigateAway.d.ts +0 -32
  553. package/hooks/useNavigateAway.mjs +0 -69
  554. package/hooks/usePrevious.d.ts +0 -5
  555. package/hooks/usePrevious.mjs +0 -17
  556. package/hooks/useScrollPosition.mjs +0 -70
  557. package/hooks/useScrollThreshold.mjs +0 -33
  558. package/hooks/useScrollTo.mjs +0 -20
  559. package/hooks/useSmoothScroll.mjs +0 -35
  560. package/hooks/useSpinDelay.d.ts +0 -14
  561. package/hooks/useSpinDelay.mjs +0 -52
  562. package/hooks/useTraceUpdate.mjs +0 -23
  563. package/hooks/useUpdateEffect.mjs +0 -14
  564. package/hooks/useWindowSize.d.ts +0 -12
  565. package/hooks/useWindowSize.mjs +0 -32
  566. package/index.mjs +0 -4
  567. package/m/MotionProvider.mjs +0 -40
  568. package/m/index.mjs +0 -5
  569. package/sc/index.mjs +0 -31
  570. package/scm/index.mjs +0 -31
  571. package/shared/index.mjs +0 -43
  572. package/styles/Body.mjs +0 -16
  573. package/styles/Global.mjs +0 -49
  574. package/styles/index.mjs +0 -7
  575. package/styles/media.mjs +0 -151
  576. package/styles/spacing.mjs +0 -46
  577. package/styles/styled.mjs +0 -26
  578. package/styles/theme--vanilla.mjs +0 -65
  579. package/styles/theme.mjs +0 -38
  580. package/tw/index.mjs +0 -30
  581. package/twm/index.mjs +0 -30
  582. package/types.mjs +0 -1
  583. /package/{NoJs/NoJs.d.ts → NoJs.d.ts} +0 -0
  584. /package/m/{lite.mjs → lite.js} +0 -0
  585. /package/m/{max.mjs → max.js} +0 -0
  586. /package/{helpers/mergeRefs.d.ts → mergeRefs.d.ts} +0 -0
  587. /package/{hooks/useKeyUp.d.ts → useKeyUp.d.ts} +0 -0
  588. /package/{hooks/usePreviousRef.d.ts → usePreviousRef.d.ts} +0 -0
  589. /package/{hooks/useScrollThreshold.d.ts → useScrollThreshold.d.ts} +0 -0
  590. /package/{hooks/useScrollTo.d.ts → useScrollTo.d.ts} +0 -0
@@ -13,7 +13,6 @@ export type ToggleIndicatorProps = unknown;
13
13
  export type ToggleIndicatorSquaredProps = ToggleIndicatorProps;
14
14
  export declare const ToggleIndicatorSquared: (props: ToggleIndicatorSquaredProps) => import("react/jsx-runtime").JSX.Element;
15
15
  export type ToggleIndicatorRoundedProps = ToggleIndicatorProps & {
16
- /** @default 6 */
17
16
  r?: number;
18
17
  };
19
18
  export declare const ToggleIndicatorRounded: ({ r, }: ToggleIndicatorRoundedProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,25 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId } from "react";
4
+ import styled from "styled-components";
5
+ import { stateFocus } from "../../styles/styled.js";
6
+ export var toggleBase = "\n border: 1px solid var(--forms-border-color);\n";
7
+ export var toggleIndicatorBg = "\n display: inline-block;\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n";
8
+ export var toggleIndicatorBgShape = "\n ".concat(toggleIndicatorBg, "\n fill: none;\n stroke-width: 2px;\n stroke: var(--forms-border-color);\n");
9
+ export var toggleIndicatorFg = "\n position: absolute;\n left: 0;\n width: 100%;\n height: 100%;\n fill: currentcolor;\n";
10
+ export var Toggle = styled.span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"], ["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"])));
11
+ export var ToggleLabel = styled.span(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n margin-left: 0.6em; /* rtl */\n"], ["\n margin-left: 0.6em; /* rtl */\n"])));
12
+ export var ToggleLabelSub = styled.small(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n opacity: 0.7;\n font-size: 0.7em;\n"], ["\n opacity: 0.7;\n font-size: 0.7em;\n"])));
13
+ export var ToggleIndicatorHolder = styled.span(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"], ["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"])), stateFocus);
14
+ export var ToggleIndicatorBgSquare = styled.svg(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), toggleIndicatorBgShape);
15
+ export var ToggleIndicatorBgCircle = styled.svg(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), toggleIndicatorBgShape);
16
+ export var ToggleIndicatorFg = styled.svg(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"], ["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"])), toggleIndicatorFg, ToggleIndicatorHolder);
17
+ export var ToggleIndicatorSquared = function (props) {
18
+ return (_jsxs(ToggleIndicatorHolder, { children: [_jsx(ToggleIndicatorBgSquare, { viewBox: "0 0 24 24", children: _jsx("rect", { width: "24", height: "24" }) }), _jsx(ToggleIndicatorFg, { viewBox: "0 0 24 24", children: _jsx("path", { d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }) })] }));
19
+ };
20
+ export var ToggleIndicatorRounded = function (_a) {
21
+ var _b = _a.r, r = _b === void 0 ? 6 : _b;
22
+ var id = useId();
23
+ return (_jsxs(ToggleIndicatorHolder, { children: [_jsxs(ToggleIndicatorBgCircle, { viewBox: "0 0 24 24", children: [_jsx("circle", { cy: "12", cx: "12", r: "12", id: "r_".concat(id), clipPath: "url(#c_".concat(id, ")") }), _jsx("clipPath", { id: "c_".concat(id), children: _jsx("use", { xlinkHref: "#r_".concat(id) }) })] }), _jsx(ToggleIndicatorFg, { viewBox: "0 0 24 24", children: _jsx("circle", { r: r, cx: "12", cy: "12" }) })] }));
24
+ };
25
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
@@ -1 +1 @@
1
- export * from "./Toggle";
1
+ export * from "./Toggle.js";
@@ -0,0 +1 @@
1
+ export * from "./Toggle.js";
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1,5 +1,4 @@
1
- /// <reference types="react" />
2
- import type { Option } from "../../types";
1
+ import type { Option } from "../../types.js";
3
2
  import { FormControl } from "../helpers";
4
3
  export type UseToggleProps = Omit<FormControl, "value"> & {
5
4
  value?: boolean;
@@ -7,35 +6,6 @@ export type UseToggleProps = Omit<FormControl, "value"> & {
7
6
  valueFalse?: string;
8
7
  options?: Option[];
9
8
  };
10
- /**
11
- * This hook is meant to power Checkboxes, Switches and checkbox-like Radios
12
- * components, it works in fact in two modes:
13
- *
14
- * 1: behaviour as standard checkbox
15
- * yup validation would simply look like:
16
- *
17
- * ```ts
18
- * privacy: boolean().required(),
19
- * // add `.nullable()` if you do not provide a boolean `defaultValue`
20
- * ```
21
- *
22
- * 2: beahviour as two radio for checkbox with custom true/false values as
23
- * strings yup validation would look like:
24
- *
25
- * ```ts
26
- * newsletter: string().oneOf(["yes", "no"]).required(),
27
- * // add `.nullable()` if you do not provide a string `defaultValue`
28
- *
29
- * // to do not make it required and avoid triggering an error when the input is
30
- * // untouched you need to set the default value of the input in the form
31
- * // initialization's `defaultValues` as such:
32
- *
33
- * useForm({ defaultValues: { newsletter: "no" }})
34
- * ```
35
- *
36
- * To enable this mode either pass the props `valueTrue` and `valueFalse` or
37
- * an array of options with the shape of `Option`
38
- */
39
9
  export declare function useToggle(props: UseToggleProps, ref: React.ForwardedRef<HTMLInputElement>): {
40
10
  Inputs: import("react/jsx-runtime").JSX.Element;
41
11
  rootProps: {
@@ -0,0 +1,85 @@
1
+ import { __assign, __rest } from "tslib";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useCallback, useMemo } from "react";
4
+ import { useWatch } from "react-hook-form";
5
+ import { InputInvisible } from "../styles.js";
6
+ export function useToggle(props, ref) {
7
+ var name = props.name, control = props.control, register = props.register, label = props.label, options = props.options, propValue = props.value, restProps = __rest(props, ["name", "control", "register", "label", "options", "value"]);
8
+ var id = restProps.id, valueTrue = restProps.valueTrue, valueFalse = restProps.valueFalse, remainingInputProps = __rest(restProps, ["id", "valueTrue", "valueFalse"]);
9
+ if (options) {
10
+ valueTrue = options
11
+ .filter(function (opt) { return opt.value === "true"; })[0]
12
+ .label.toString();
13
+ valueFalse = options
14
+ .filter(function (opt) { return opt.value === "false"; })[0]
15
+ .label.toString();
16
+ }
17
+ id = "switch-".concat(name);
18
+ var idTrue = "".concat(id, "-true");
19
+ var idFalse = "".concat(id, "-false");
20
+ var isRadio = !!(valueTrue && valueFalse);
21
+ var value = useWatch({
22
+ name: name,
23
+ control: control,
24
+ });
25
+ if (propValue) {
26
+ value = propValue;
27
+ }
28
+ var inputProps = useMemo(function () {
29
+ return register
30
+ ? register(name)
31
+ : control
32
+ ? control.register(name)
33
+ : {
34
+ name: name,
35
+ ref: ref,
36
+ };
37
+ }, [register, control, name, ref]);
38
+ var handleKeyDown = useCallback(function (event) {
39
+ if (event.key === " ") {
40
+ event.preventDefault();
41
+ event.stopPropagation();
42
+ var firstInput = event.target;
43
+ var next = firstInput.nextElementSibling;
44
+ var prev = firstInput.previousElementSibling;
45
+ var secondInput = (next === null || next === void 0 ? void 0 : next.tagName) === "INPUT" ? next : prev;
46
+ var target = firstInput;
47
+ if (firstInput.checked) {
48
+ target = secondInput;
49
+ }
50
+ else {
51
+ if (!secondInput.checked) {
52
+ target =
53
+ firstInput.value === valueTrue ? firstInput : secondInput;
54
+ }
55
+ }
56
+ if (target)
57
+ target.click();
58
+ }
59
+ }, [valueTrue]);
60
+ var valueDependentProps = useMemo(function () { return ({
61
+ rootProps: {
62
+ htmlFor: isRadio
63
+ ? !value || value === valueFalse
64
+ ? idTrue
65
+ : idFalse
66
+ : id,
67
+ },
68
+ label: label ? label : value,
69
+ value: value,
70
+ }); }, [value, valueFalse, isRadio, id, idTrue, idFalse, label]);
71
+ var Inputs = useMemo(function () {
72
+ return isRadio ? (_jsxs(_Fragment, { children: [_jsx(InputInvisible, __assign({ id: idFalse }, inputProps, remainingInputProps, { onKeyDown: handleKeyDown, type: "radio", value: valueFalse })), _jsx(InputInvisible, __assign({ id: idTrue }, inputProps, remainingInputProps, { onKeyDown: handleKeyDown, type: "radio", value: valueTrue }))] })) : (_jsx(InputInvisible, __assign({ id: id, type: "checkbox" }, inputProps, remainingInputProps)));
73
+ }, [
74
+ inputProps,
75
+ remainingInputProps,
76
+ handleKeyDown,
77
+ isRadio,
78
+ idFalse,
79
+ idTrue,
80
+ valueFalse,
81
+ valueTrue,
82
+ id,
83
+ ]);
84
+ return __assign(__assign({}, valueDependentProps), { Inputs: Inputs });
85
+ }
@@ -1,15 +1,4 @@
1
1
  import { type ObjectShape } from "@kuus/yup";
2
- /**
3
- * Encode form
4
- *
5
- * Takes a record of yup validations and outputs a `yup` schema with encoded
6
- * names (antispam technique) and a record of the encoded/decoded input `name`s.
7
- *
8
- * We skip the names prefixed wth an underscore which are considered programmatic
9
- * form data not created by user input.
10
- *
11
- * FIXME: types https://github.com/jquense/yup/issues/1700
12
- */
13
2
  export declare function encodeForm<T extends ObjectShape = {}>(validationRules: T): {
14
3
  encodedSchema: import("@kuus/yup").ObjectSchema<{
15
4
  [x: string]: T[keyof T] extends import("@kuus/yup").ISchema<any, any, any, any> ? T[keyof T]["__outputType"] : T[keyof T] extends {
@@ -35,13 +24,4 @@ export declare function encodeForm<T extends ObjectShape = {}>(validationRules:
35
24
  }, "">;
36
25
  encodedNames: Record<keyof T, string>;
37
26
  };
38
- /**
39
- * Decode form data
40
- *
41
- * This function is meant to be used inside an api endpoint to gather an encoded
42
- * form submit data and transform it to the decoded desired json data.
43
- *
44
- * Here too we skip encoding/decoding process for names prefixed wth an underscore
45
- * which are considered programmatic form data not created by user input.
46
- */
47
27
  export declare function decodeForm<ReturnAs extends Record<string, unknown> = {}, FormData extends Record<string, unknown> = {}>(formData: FormData): ReturnAs;
@@ -0,0 +1,29 @@
1
+ import { object } from "@kuus/yup";
2
+ import { decode, encode, isUndefined } from "@koine/utils";
3
+ export function encodeForm(validationRules) {
4
+ var encoded = {};
5
+ var encodedNames = {};
6
+ for (var name_1 in validationRules) {
7
+ if (!name_1.startsWith("_")) {
8
+ var encodedName = encode(name_1);
9
+ encoded[encodedName] = validationRules[name_1];
10
+ encodedNames[name_1] = encodedName;
11
+ }
12
+ }
13
+ var encodedSchema = object(encoded).required();
14
+ return { encodedSchema: encodedSchema, encodedNames: encodedNames };
15
+ }
16
+ export function decodeForm(formData) {
17
+ var json = {};
18
+ for (var encodedName in formData) {
19
+ var decodedName = decode(encodedName);
20
+ if (encodedName.startsWith("_")) {
21
+ json[encodedName.substring(1)] = formData[encodedName];
22
+ }
23
+ else if (!isUndefined(formData[encodedName]) &&
24
+ formData[decodedName] === "") {
25
+ json[decodedName] = formData[encodedName];
26
+ }
27
+ }
28
+ return json;
29
+ }
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { Control, UseFormRegister, UseFormSetValue } from "react-hook-form";
3
2
  import type { Option } from "../types";
4
3
  type FormControlNativeType = "input" | "select" | "textarea";
@@ -14,13 +13,6 @@ export type FormControlProps<T extends FormControlFieldValues = any> = {
14
13
  export type FormControl<TControlType extends FormControlNativeType = "input", TFieldValues extends FormControlFieldValues = any> = FormControlNative<TControlType> & FormControlProps<TFieldValues>;
15
14
  export declare const normaliseOptions: (options?: (string | Option)[]) => Option[];
16
15
  export declare function defaultOptionsFilterFn(options: Option[], inputValue?: string): Option[];
17
- /**
18
- * We are faking the native input `onChange` event
19
- */
20
16
  export declare function triggerOnChange<T extends HTMLElement = HTMLInputElement>(onChange?: React.ChangeEventHandler<T>, name?: string, value?: any): void;
21
- /**
22
- * @see https://hustle.bizongo.in/simulate-react-on-change-on-controlled-components-baa336920e04
23
- * @deprecated
24
- */
25
17
  export declare function triggerChange(input: HTMLInputElement, value?: string): void;
26
18
  export {};
@@ -0,0 +1,35 @@
1
+ import { isString, matchSorter } from "@koine/utils";
2
+ export var normaliseOptions = function (options) {
3
+ if (options === void 0) { options = []; }
4
+ return options.map(function (option) {
5
+ return isString(option)
6
+ ? {
7
+ label: option,
8
+ value: option,
9
+ }
10
+ : option;
11
+ });
12
+ };
13
+ export function defaultOptionsFilterFn(options, inputValue) {
14
+ if (!inputValue) {
15
+ return options;
16
+ }
17
+ return matchSorter(options, inputValue, { keys: ["value", "label"] });
18
+ }
19
+ export function triggerOnChange(onChange, name, value) {
20
+ if (onChange)
21
+ onChange({ target: { name: name, value: value } });
22
+ }
23
+ export function triggerChange(input, value) {
24
+ var obj = window.Object;
25
+ if (!obj) {
26
+ if (process.env["NODE_ENV"] !== "production") {
27
+ console.warn("[@koine/react:Forms:triggerChange] window.Object does not exists, bailing.");
28
+ }
29
+ return;
30
+ }
31
+ var nativeInputValueSetter = obj.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, "value").set;
32
+ nativeInputValueSetter.call(input, value);
33
+ var inputEvent = new Event("input", { bubbles: true });
34
+ input.dispatchEvent(inputEvent);
35
+ }
package/Forms/index.d.ts CHANGED
@@ -1,15 +1,15 @@
1
- export * from "./antispam";
2
- export * from "./Checkbox";
3
- export * from "./Input";
4
- export * from "./InputGroup";
5
- export * from "./Feedback";
6
- export * from "./Field";
7
- export * from "./InputGroup";
8
- export * from "./Label";
9
- export * from "./Password";
10
- export * from "./Radio";
11
- export * from "./Switch";
12
- export * from "./Textarea";
13
- export * from "./Toggle";
14
- export * from "./helpers";
15
- export * from "./styles";
1
+ export * from "./antispam.js";
2
+ export * from "./Checkbox/index.js";
3
+ export * from "./Input/index.js";
4
+ export * from "./InputGroup/index.js";
5
+ export * from "./Feedback/index.js";
6
+ export * from "./Field/index.js";
7
+ export * from "./InputGroup/index.js";
8
+ export * from "./Label/index.js";
9
+ export * from "./Password/index.js";
10
+ export * from "./Radio/index.js";
11
+ export * from "./Switch/index.js";
12
+ export * from "./Textarea/index.js";
13
+ export * from "./Toggle/index.js";
14
+ export * from "./helpers.js";
15
+ export * from "./styles.js";
package/Forms/index.js ADDED
@@ -0,0 +1,15 @@
1
+ export * from "./antispam.js";
2
+ export * from "./Checkbox/index.js";
3
+ export * from "./Input/index.js";
4
+ export * from "./InputGroup/index.js";
5
+ export * from "./Feedback/index.js";
6
+ export * from "./Field/index.js";
7
+ export * from "./InputGroup/index.js";
8
+ export * from "./Label/index.js";
9
+ export * from "./Password/index.js";
10
+ export * from "./Radio/index.js";
11
+ export * from "./Switch/index.js";
12
+ export * from "./Textarea/index.js";
13
+ export * from "./Toggle/index.js";
14
+ export * from "./helpers.js";
15
+ export * from "./styles.js";
package/Forms/styles.d.ts CHANGED
@@ -1,12 +1,6 @@
1
1
  export declare const InputInvisible: any;
2
2
  export declare const InputHoneypot: any;
3
3
  export declare const InputProgress: any;
4
- /**
5
- * Remove the default light blue background on autofilled inputs. To be used as
6
- * a function that outputs a CSS string.
7
- *
8
- * @see https://stackoverflow.com/a/62624824/1938970
9
- */
10
4
  export declare const inputResetAutofill = "\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus,\n &:-webkit-autofill:active {\n -webkit-background-clip: text;\n }\n";
11
5
  export declare const inputBorder = "\n border: 1px solid var(--forms-border-color);\n";
12
6
  export declare const inputPadding = "\n padding: var(--forms-gutter-y) var(--forms-gutter-x);\n";
@@ -0,0 +1,19 @@
1
+ import { __assign, __makeTemplateObject } from "tslib";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import styled from "styled-components";
4
+ import { ProgressLinear } from "../Progress/ProgressLinear.js";
5
+ import { invisible, stateFocus } from "../styles/styled.js";
6
+ export var InputInvisible = styled.input(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), invisible);
7
+ export var InputHoneypot = styled(InputInvisible).attrs({
8
+ type: "text",
9
+ autoComplete: "new-password",
10
+ tabIndex: -1,
11
+ })(templateObject_2 || (templateObject_2 = __makeTemplateObject([""], [""])));
12
+ export var InputProgress = styled(function (p) { return (_jsx(ProgressLinear, __assign({ fg: "var(--accent300)", bg: "var(--accent400)" }, p))); })(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n"], ["\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n"])));
13
+ export var inputResetAutofill = "\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus,\n &:-webkit-autofill:active {\n -webkit-background-clip: text;\n }\n";
14
+ export var inputBorder = "\n border: 1px solid var(--forms-border-color);\n";
15
+ export var inputPadding = "\n padding: var(--forms-gutter-y) var(--forms-gutter-x);\n";
16
+ export var inputReset = "\n width: 100%;\n min-height: 44px;\n ".concat(inputBorder, "\n ").concat(inputPadding, "\n");
17
+ export var inputBase = "\n ".concat(inputReset, "\n ").concat(inputResetAutofill, "\n background: transparent;\n");
18
+ export var inputFocus = "\n &:focus {\n outline: 0px;\n appearance: none;\n ".concat(stateFocus, "\n }\n");
19
+ var templateObject_1, templateObject_2, templateObject_3;
package/Gauge/Gauge.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  export type GaugeProps = {
2
- /** In percentage */
3
2
  value: number;
4
3
  };
5
4
  export declare const Gauge: (_props: GaugeProps) => null;
package/Gauge/Gauge.js ADDED
@@ -0,0 +1 @@
1
+ export var Gauge = function (_props) { return null; };
package/Grid/Grid.d.ts CHANGED
@@ -1,12 +1,8 @@
1
- /// <reference types="react" />
2
1
  import { CSSProperties } from "styled-components";
3
- import type { Breakpoint, Theme } from "../styles/theme";
2
+ import type { Breakpoint, Theme } from "../styles/theme.js";
4
3
  export declare const GRID_COLUMNS = 12;
5
4
  export declare const GRID_GUTTER_DEFAULT: keyof Theme["gutter"];
6
5
  export type GridProps = {
7
- /**
8
- * @default "half"
9
- */
10
6
  $gutter?: keyof Theme["gutter"];
11
7
  };
12
8
  export type ContainerProps = React.PropsWithChildren<GridProps & {
@@ -22,11 +18,6 @@ type Direction = "min" | "max";
22
18
  export type RowProps = GridProps & {
23
19
  $valign?: CSSProperties["alignItems"];
24
20
  $reverse?: `${Direction}:${Breakpoint}`;
25
- /**
26
- * It forces child columns to be on one line overflowing the content when it does not fit,
27
- * it is suggested to use with children having a minimum width not in percentage,
28
- * for things like sliders and carousels
29
- */
30
21
  $noWrap?: boolean;
31
22
  };
32
23
  export declare const Row: any;
package/Grid/Grid.js ADDED
@@ -0,0 +1,52 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import styled from "styled-components";
3
+ export var GRID_COLUMNS = 12;
4
+ export var GRID_GUTTER_DEFAULT = "half";
5
+ export var Container = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n max-width: ", "px;\n margin: 0 auto;\n padding: 0 ", "px;\n ", "\n"], ["\n max-width: ", "px;\n margin: 0 auto;\n padding: 0 ", "px;\n ", "\n"])), function (p) { return p.theme.breakpoints[p.size]; }, function (p) { return p.theme.gutter[p.$gutter || GRID_GUTTER_DEFAULT]; }, function (p) { return (p.clamp ? "overflow: hidden;" : ""); });
6
+ export var ContainerFluid = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding: 0 ", "px;\n"], ["\n padding: 0 ", "px;\n"])), function (p) { return p.theme.gutter[p.$gutter || GRID_GUTTER_DEFAULT]; });
7
+ export var Row = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n margin: 0 -", "px;\n display: flex;\n ", "\n ", ";\n ", "\n"], ["\n margin: 0 -", "px;\n display: flex;\n ", "\n ", ";\n ", "\n"])), function (p) { return p.theme.gutter[p.$gutter || GRID_GUTTER_DEFAULT]; }, function (p) { return (p.$noWrap ? "overflow: auto;" : "flex-wrap: wrap;"); }, function (p) { return (p.$valign ? "align-items: ".concat(p.$valign) : ""); }, function (p) {
8
+ return p.$reverse &&
9
+ "@media (".concat(p.$reverse.split(":")[0], "-width: ").concat(p.$reverse.split(":")[1], "px) {\n flex-direction: row-reverse;\n }");
10
+ });
11
+ export var Col = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n padding: 0 ", "px;\n display: ", ";\n ", ";\n ", ";\n"], ["\n padding: 0 ", "px;\n display: ", ";\n ", ";\n ", ";\n"])), function (p) { return p.theme.gutter[p.$gutter || GRID_GUTTER_DEFAULT]; }, function (p) { return (p.$flex ? "flex" : "block"); }, function (p) { return (p.$valign ? "align-items: " + p.$valign : ""); }, function (p) { return getColCss(p); });
12
+ function getColWidth(breakpoints, breakpoint, value) {
13
+ var breakpointValue = breakpoints[breakpoint] + "px";
14
+ var width = (value * 100) / GRID_COLUMNS;
15
+ var cssValue = "\n min-width: ".concat(width, "%;\n flex: 0 0 ").concat(width, "%;\n");
16
+ if (breakpoint === Object.keys(breakpoints)[0]) {
17
+ return cssValue;
18
+ }
19
+ return "\n @media (min-width: ".concat(breakpointValue, "){\n ").concat(cssValue, "\n }");
20
+ }
21
+ function getColCss(props) {
22
+ var $auto = props.$auto, $offset = props.$offset, $width = props.$width;
23
+ var breakpoints = props.theme.breakpoints;
24
+ var css = "";
25
+ if ($offset) {
26
+ var offsets = $offset.split(",");
27
+ for (var i = 0; i <= offsets.length; i++) {
28
+ if (offsets[i]) {
29
+ var _a = offsets[i].split(":"), offsetBreakpoint = _a[0], offsetSize = _a[1];
30
+ css += " \n @media(min-width: ".concat(breakpoints[offsetBreakpoint], "px){\n margin-left: ").concat((100 * offsetSize) / GRID_COLUMNS, "%;\n }\n ");
31
+ }
32
+ }
33
+ }
34
+ if ($width) {
35
+ }
36
+ else if ($auto) {
37
+ css += "flex: 0 0 auto; width: auto; max-width: none;";
38
+ }
39
+ else {
40
+ for (var breakpoint in breakpoints) {
41
+ var value = props[breakpoint];
42
+ if (typeof value !== "undefined") {
43
+ css += getColWidth(breakpoints, breakpoint, value);
44
+ }
45
+ else if (breakpoint === "xs") {
46
+ css += getColWidth(breakpoints, breakpoint, 12);
47
+ }
48
+ }
49
+ }
50
+ return css;
51
+ }
52
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
package/Grid/index.d.ts CHANGED
@@ -1 +1 @@
1
- export * from "./Grid";
1
+ export * from "./Grid.js";
package/Grid/index.js ADDED
@@ -0,0 +1 @@
1
+ export * from "./Grid.js";
@@ -1,6 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  export type HamburgerProps = React.ComponentProps<"div"> & {
3
- /** A way to provide your own state value. Can be used together with a state action (the `toggle` prop). */
4
3
  toggled?: boolean;
5
4
  };
6
5
  export declare const Hamburger: ({ toggled, ...props }: HamburgerProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,47 @@
1
+ import { __assign, __makeTemplateObject, __rest } from "tslib";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import styled from "styled-components";
4
+ var HamburgerLabel = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n top: 30px;\n font-size: ", ";\n text-transform: uppercase;\n left: 7px;\n letter-spacing: 3px;\n"], ["\n position: absolute;\n top: 30px;\n font-size: ", ";\n text-transform: uppercase;\n left: 7px;\n letter-spacing: 3px;\n"])), function (_a) {
5
+ var $toggled = _a.$toggled;
6
+ return ($toggled ? "0" : "9px");
7
+ });
8
+ var area = 48;
9
+ var lines = 3;
10
+ var width = 32;
11
+ var room = Math.round((area - width) / 2);
12
+ var barHeightRaw = width / 12;
13
+ var barHeight = Math.round(barHeightRaw);
14
+ var space = 0.5;
15
+ var marginRaw = width / (lines * (space + (lines === 3 ? 1 : 1.25)));
16
+ var margin = Math.round(marginRaw);
17
+ var height = barHeight * lines + margin * (lines - 1);
18
+ var topOffset = Math.round((area - height) / 2);
19
+ var translate = 4.6325;
20
+ var deviation = (barHeightRaw - barHeight + (marginRaw - margin)) / (lines === 3 ? 1 : 2);
21
+ var move = parseFloat((width / translate - deviation / (4 / 3)).toFixed(2));
22
+ var time = 0.4;
23
+ var easing = "cubic-bezier(0, 0, 0, 1)";
24
+ var transition = "".concat(time, "s ").concat(easing);
25
+ var burgerStyles = {
26
+ marginRight: "-8px",
27
+ position: "relative",
28
+ width: "".concat(area, "px"),
29
+ height: "".concat(area, "px"),
30
+ userSelect: "none",
31
+ outline: "0px",
32
+ cursor: "pointer",
33
+ transition: transition,
34
+ };
35
+ var barStyles = {
36
+ position: "absolute",
37
+ width: "".concat(width, "px"),
38
+ height: "".concat(barHeight, "px"),
39
+ left: "".concat(room, "px"),
40
+ background: "currentColor",
41
+ transition: transition,
42
+ };
43
+ export var Hamburger = function (_a) {
44
+ var toggled = _a.toggled, props = __rest(_a, ["toggled"]);
45
+ return (_jsxs("div", __assign({ style: __assign(__assign({}, burgerStyles), { transform: "".concat(toggled ? "rotate(90deg)" : "none") }), tabIndex: 0 }, props, { children: [_jsx("div", { style: __assign(__assign({}, barStyles), { top: "".concat(topOffset, "px"), transform: "".concat(toggled ? "rotate(-45deg) translate(0px, ".concat(move, "px)") : "none") }) }), _jsx("div", { style: __assign(__assign({}, barStyles), { top: "".concat(topOffset + barHeight + margin, "px"), transform: "".concat(toggled ? "rotate(45deg) translate(0, -".concat(move, "px)") : "none") }) }), _jsx(HamburgerLabel, { "$toggled": toggled, children: "Menu" })] })));
46
+ };
47
+ var templateObject_1;
@@ -1 +1 @@
1
- export * from "./Hamburger";
1
+ export * from "./Hamburger.js";
@@ -0,0 +1 @@
1
+ export * from "./Hamburger.js";
package/Header/index.d.ts CHANGED
@@ -1 +1 @@
1
- export * from "./useHeader";
1
+ export * from "./useHeader.js";
@@ -0,0 +1 @@
1
+ export * from "./useHeader.js";
@@ -1,16 +1,12 @@
1
- /** @type {boolean} */
2
1
  type isSticky = boolean & {
3
2
  _branded: true;
4
3
  };
5
- /** @type {number} */
6
4
  type placeholderHeight = number & {
7
5
  _branded: true;
8
6
  };
9
- /** @type {number} */
10
7
  type headerHeight = number & {
11
8
  _branded: true;
12
9
  };
13
- /** @type {number} */
14
10
  type logoWidth = number & {
15
11
  _branded: true;
16
12
  };
@@ -0,0 +1,31 @@
1
+ import { useEffect, useState } from "react";
2
+ import { useMedia } from "../styles/media.js";
3
+ import { useTheme } from "../styles/theme.js";
4
+ import { useScrollPosition } from "../useScrollPosition.js";
5
+ export var useHeader = function () {
6
+ var _a = useState(false), isSticky = _a[0], setIsSticky = _a[1];
7
+ var themed = useTheme().header;
8
+ var isDesktopLayout = useMedia("min:".concat(themed.breakpoint));
9
+ var valueIdx = isDesktopLayout ? 1 : 0;
10
+ var _b = useState(themed.height[valueIdx]), headerHeight = _b[0], setHeaderHeight = _b[1];
11
+ var _c = useState(themed.height[valueIdx]), placeholderHeight = _c[0], setPlaceholderHeight = _c[1];
12
+ var _d = useState(themed.logoWidth[valueIdx]), logoWidth = _d[0], setLogoWidth = _d[1];
13
+ useScrollPosition(function (currentPosition) {
14
+ var isPastThreshold = currentPosition.y * -1 > 40;
15
+ if (isSticky !== isPastThreshold)
16
+ setIsSticky(isPastThreshold);
17
+ }, [isSticky]);
18
+ useEffect(function () {
19
+ var valueIdx = isDesktopLayout ? 1 : 0;
20
+ setPlaceholderHeight(themed.height[valueIdx]);
21
+ setHeaderHeight(isSticky ? themed.heightSticky[valueIdx] : themed.height[valueIdx]);
22
+ setLogoWidth(isSticky ? themed.logoWidthSticky[valueIdx] : themed.logoWidth[valueIdx]);
23
+ }, [themed, isSticky, isDesktopLayout]);
24
+ return [
25
+ isSticky,
26
+ placeholderHeight,
27
+ headerHeight,
28
+ logoWidth,
29
+ ];
30
+ };
31
+ export default useHeader;
@@ -1,4 +1,4 @@
1
- import { Breakpoint } from "../styles/theme";
1
+ import { Breakpoint } from "../styles/theme.js";
2
2
  export type HiddenProps = {
3
3
  $min?: Breakpoint;
4
4
  $max?: Breakpoint;
@@ -0,0 +1,10 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import styled from "styled-components";
3
+ export var Hidden = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (p) {
4
+ return "".concat(p.$min
5
+ ? "\n @media (min-width: ".concat(p.theme.breakpoints[p.$min], "px) {\n display: none;\n }")
6
+ : "", " ").concat(p.$max
7
+ ? "\n @media (max-width: ".concat(p.theme.breakpoints[p.$max], "px) {\n display: none;\n }")
8
+ : "");
9
+ });
10
+ var templateObject_1;
package/Hidden/index.d.ts CHANGED
@@ -1 +1 @@
1
- export * from "./Hidden";
1
+ export * from "./Hidden.js";
@@ -0,0 +1 @@
1
+ export * from "./Hidden.js";
package/Img/index.d.ts CHANGED
@@ -1 +1 @@
1
- export * from "./types";
1
+ export * from "./types.js";
package/Img/index.js ADDED
@@ -0,0 +1 @@
1
+ export * from "./types.js";
package/Img/sc/bare.js ADDED
@@ -0,0 +1,4 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import styled from "styled-components";
3
+ export var KoineImg = styled.img(templateObject_1 || (templateObject_1 = __makeTemplateObject([""], [""])));
4
+ var templateObject_1;