@koine/react 2.0.0-beta.14 → 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
package/sc/index.d.ts CHANGED
@@ -1,30 +1,30 @@
1
- export * from "../shared";
2
- export * from "../Alert";
3
- export * from "../Animations";
4
- export * from "../Autocomplete";
5
- export * from "../Bg";
6
- export * from "../Breadcrumbs";
7
- export * from "../Buttons";
8
- export * from "../Carousel";
9
- export * from "../Collapsable";
10
- export * from "../Debug";
11
- export { KoineDialog, type KoineDialogProps } from "../Dialog/sc/bare";
12
- export { KoineForm, type KoineFormProps } from "../Form/sc/bare";
13
- export * from "../Forms";
14
- export * from "../Grid";
15
- export * from "../Hamburger";
16
- export * from "../Header";
17
- export * from "../Hidden";
18
- export * from "../Img";
19
- export * from "../Link";
20
- export * from "../MenuItem";
21
- export * from "../Pagination";
22
- export * from "../Pill";
23
- export * from "../Progress";
24
- export * from "../Rating";
25
- export * from "../Sidebar";
26
- export * from "../Spacing";
27
- export * from "../Sticky";
28
- export * from "../styles";
29
- export * from "../Tabs";
30
- export * from "../Typography";
1
+ export * from "../shared/index.js";
2
+ export * from "../Alert/index.js";
3
+ export * from "../Animations/index.js";
4
+ export * from "../Autocomplete/index.js";
5
+ export * from "../Bg/index.js";
6
+ export * from "../Breadcrumbs/index.js";
7
+ export * from "../Buttons/index.js";
8
+ export * from "../Carousel/index.js";
9
+ export * from "../Collapsable/index.js";
10
+ export * from "../Debug/index.js";
11
+ export { KoineDialog, type KoineDialogProps } from "../Dialog/sc/bare.js";
12
+ export { KoineForm, type KoineFormProps } from "../Form/sc/bare.js";
13
+ export * from "../Forms/index.js";
14
+ export * from "../Grid/index.js";
15
+ export * from "../Hamburger/index.js";
16
+ export * from "../Header/index.js";
17
+ export * from "../Hidden/index.js";
18
+ export * from "../Img/index.js";
19
+ export * from "../Link/index.js";
20
+ export * from "../MenuItem/index.js";
21
+ export * from "../Pagination/index.js";
22
+ export * from "../Pill/index.js";
23
+ export * from "../Progress/index.js";
24
+ export * from "../Rating/index.js";
25
+ export * from "../Sidebar/index.js";
26
+ export * from "../Spacing/index.js";
27
+ export * from "../Sticky/index.js";
28
+ export * from "../styles/index.js";
29
+ export * from "../Tabs/index.js";
30
+ export * from "../Typography/index.js";
package/sc/index.js ADDED
@@ -0,0 +1,30 @@
1
+ export * from "../shared/index.js";
2
+ export * from "../Alert/index.js";
3
+ export * from "../Animations/index.js";
4
+ export * from "../Autocomplete/index.js";
5
+ export * from "../Bg/index.js";
6
+ export * from "../Breadcrumbs/index.js";
7
+ export * from "../Buttons/index.js";
8
+ export * from "../Carousel/index.js";
9
+ export * from "../Collapsable/index.js";
10
+ export * from "../Debug/index.js";
11
+ export { KoineDialog } from "../Dialog/sc/bare.js";
12
+ export { KoineForm } from "../Form/sc/bare.js";
13
+ export * from "../Forms/index.js";
14
+ export * from "../Grid/index.js";
15
+ export * from "../Hamburger/index.js";
16
+ export * from "../Header/index.js";
17
+ export * from "../Hidden/index.js";
18
+ export * from "../Img/index.js";
19
+ export * from "../Link/index.js";
20
+ export * from "../MenuItem/index.js";
21
+ export * from "../Pagination/index.js";
22
+ export * from "../Pill/index.js";
23
+ export * from "../Progress/index.js";
24
+ export * from "../Rating/index.js";
25
+ export * from "../Sidebar/index.js";
26
+ export * from "../Spacing/index.js";
27
+ export * from "../Sticky/index.js";
28
+ export * from "../styles/index.js";
29
+ export * from "../Tabs/index.js";
30
+ export * from "../Typography/index.js";
package/scm/index.d.ts CHANGED
@@ -1,29 +1,29 @@
1
- export * from "../shared";
2
- export * from "../Alert";
3
- export * from "../Animations";
4
- export * from "../Autocomplete";
5
- export * from "../Bg";
6
- export * from "../Breadcrumbs";
7
- export * from "../Buttons";
8
- export * from "../Carousel";
9
- export * from "../Collapsable";
10
- export * from "../Debug";
11
- export { KoineDialog, type KoineDialogProps } from "../Dialog/sc/framer";
12
- export * from "../Forms";
13
- export * from "../Grid";
14
- export * from "../Hamburger";
15
- export * from "../Header";
16
- export * from "../Hidden";
17
- export * from "../Img";
18
- export * from "../Link";
19
- export * from "../MenuItem";
20
- export * from "../Pagination";
21
- export * from "../Pill";
22
- export * from "../Progress";
23
- export * from "../Rating";
24
- export * from "../Sidebar";
25
- export * from "../Spacing";
26
- export * from "../Sticky";
27
- export * from "../styles";
28
- export * from "../Tabs";
29
- export * from "../Typography";
1
+ export * from "../shared/index.js";
2
+ export * from "../Alert/index.js";
3
+ export * from "../Animations/index.js";
4
+ export * from "../Autocomplete/index.js";
5
+ export * from "../Bg/index.js";
6
+ export * from "../Breadcrumbs/index.js";
7
+ export * from "../Buttons/index.js";
8
+ export * from "../Carousel/index.js";
9
+ export * from "../Collapsable/index.js";
10
+ export * from "../Debug/index.js";
11
+ export { KoineDialog, type KoineDialogProps } from "../Dialog/sc/framer.js";
12
+ export * from "../Forms/index.js";
13
+ export * from "../Grid/index.js";
14
+ export * from "../Hamburger/index.js";
15
+ export * from "../Header/index.js";
16
+ export * from "../Hidden/index.js";
17
+ export * from "../Img/index.js";
18
+ export * from "../Link/index.js";
19
+ export * from "../MenuItem/index.js";
20
+ export * from "../Pagination/index.js";
21
+ export * from "../Pill/index.js";
22
+ export * from "../Progress/index.js";
23
+ export * from "../Rating/index.js";
24
+ export * from "../Sidebar/index.js";
25
+ export * from "../Spacing/index.js";
26
+ export * from "../Sticky/index.js";
27
+ export * from "../styles/index.js";
28
+ export * from "../Tabs/index.js";
29
+ export * from "../Typography/index.js";
package/scm/index.js ADDED
@@ -0,0 +1,29 @@
1
+ export * from "../shared/index.js";
2
+ export * from "../Alert/index.js";
3
+ export * from "../Animations/index.js";
4
+ export * from "../Autocomplete/index.js";
5
+ export * from "../Bg/index.js";
6
+ export * from "../Breadcrumbs/index.js";
7
+ export * from "../Buttons/index.js";
8
+ export * from "../Carousel/index.js";
9
+ export * from "../Collapsable/index.js";
10
+ export * from "../Debug/index.js";
11
+ export { KoineDialog } from "../Dialog/sc/framer.js";
12
+ export * from "../Forms/index.js";
13
+ export * from "../Grid/index.js";
14
+ export * from "../Hamburger/index.js";
15
+ export * from "../Header/index.js";
16
+ export * from "../Hidden/index.js";
17
+ export * from "../Img/index.js";
18
+ export * from "../Link/index.js";
19
+ export * from "../MenuItem/index.js";
20
+ export * from "../Pagination/index.js";
21
+ export * from "../Pill/index.js";
22
+ export * from "../Progress/index.js";
23
+ export * from "../Rating/index.js";
24
+ export * from "../Sidebar/index.js";
25
+ export * from "../Spacing/index.js";
26
+ export * from "../Sticky/index.js";
27
+ export * from "../styles/index.js";
28
+ export * from "../Tabs/index.js";
29
+ export * from "../Typography/index.js";
package/shared/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- export * from "../Calendar";
2
- export * from "../Dialog";
3
- export * from "../FaviconTags";
4
- export * from "../helpers";
5
- export * from "../hooks";
6
- export * from "../Meta";
7
- export * from "../NoJs";
8
- export * from "../types";
1
+ export * from "../Calendar/index.js";
2
+ export * from "../Dialog/index.js";
3
+ export * from "../FaviconTags.js";
4
+ export * from "../helpers/index.js";
5
+ export * from "../hooks/index.js";
6
+ export * from "../Meta/index.js";
7
+ export * from "../NoJs/index.js";
8
+ export * from "../types.js";
@@ -0,0 +1,8 @@
1
+ export * from "../Calendar/index.js";
2
+ export * from "../Dialog/index.js";
3
+ export * from "../FaviconTags.js";
4
+ export * from "../helpers/index.js";
5
+ export * from "../hooks/index.js";
6
+ export * from "../Meta/index.js";
7
+ export * from "../NoJs/index.js";
8
+ export * from "../types.js";
package/styles/Body.d.ts CHANGED
@@ -1,10 +1,2 @@
1
1
  export declare const BodyRoot: any;
2
- /**
3
- * If you have background graphics to overlap you might need to add:
4
- *
5
- * ```css
6
- * z-index: 1;
7
- * position: relative;
8
- * ```
9
- */
10
2
  export declare const BodyMain: any;
package/styles/Body.js ADDED
@@ -0,0 +1,5 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import styled from "styled-components";
3
+ export var BodyRoot = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n"], ["\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n"])));
4
+ export var BodyMain = styled.main(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n flex: 1;\n"], ["\n flex: 1;\n"])));
5
+ var templateObject_1, templateObject_2;
@@ -1,15 +1,2 @@
1
- /**
2
- * App global style
3
- *
4
- * For examples of what to do here take a look at [Bootstrap's reset](https://github.com/twbs/bootstrap/blob/main/scss/_reboot.scss)
5
- * and similar.
6
- *
7
- * What we do here:
8
- * - set the base font family on all possible elements including placeholders prevent Chrome showing a standard font when using the autofill feature
9
- * - @see https://stackoverflow.com/a/60987373/1938970
10
- * - set the base font size on all possible elements to prevent weird zooming on input fields on iPhone iOS devices.
11
- * - @see https://www.warrenchandler.com/2019/04/02/stop-iphones-from-zooming-in-on-form-fields/
12
- * - @see https://css-tricks.com/16px-or-larger-text-prevents-ios-form-zoom/
13
- */
14
1
  export declare const stylesGlobal = "\n body {\n margin: 0;\n padding: 0;\n overflow-x: hidden;\n overflow-y: scroll;\n }\n\n body,\n button,\n input,\n textarea,\n select,\n select:-webkit-autofill::first-line,\n input:-webkit-autofill::first-line {\n font-family: var(--font), -apple-system, BlinkMacSystemFont, \"Segoe UI\",\n Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\",\n sans-serif;\n font-size: var(--fontSize);\n }\n\n html {\n box-sizing: border-box;\n @media (prefers-reduced-motion: no-preference) {\n scroll-behavior: smooth;\n }\n }\n\n *,\n *:before,\n *:after {\n box-sizing: inherit;\n -webkit-tap-highlight-color: transparent;\n }\n";
15
2
  export declare const StylesGlobal: import("styled-components").GlobalStyleComponent<{}, import("styled-components").DefaultTheme>;
@@ -0,0 +1,5 @@
1
+ import { __makeTemplateObject } from "tslib";
2
+ import { createGlobalStyle } from "styled-components";
3
+ export var stylesGlobal = "\n body {\n margin: 0;\n padding: 0;\n overflow-x: hidden;\n overflow-y: scroll;\n }\n\n body,\n button,\n input,\n textarea,\n select,\n select:-webkit-autofill::first-line,\n input:-webkit-autofill::first-line {\n font-family: var(--font), -apple-system, BlinkMacSystemFont, \"Segoe UI\",\n Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\",\n sans-serif;\n font-size: var(--fontSize);\n }\n\n html {\n box-sizing: border-box;\n @media (prefers-reduced-motion: no-preference) {\n scroll-behavior: smooth;\n }\n }\n\n *,\n *:before,\n *:after {\n box-sizing: inherit;\n -webkit-tap-highlight-color: transparent;\n }\n";
4
+ export var StylesGlobal = createGlobalStyle(templateObject_1 || (templateObject_1 = __makeTemplateObject(["", ""], ["", ""])), stylesGlobal);
5
+ var templateObject_1;
package/styles/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- export { BodyMain, BodyRoot } from "./Body";
2
- export { StylesGlobal, stylesGlobal } from "./Global";
3
- export { MediaDirection, MediaQuery, MediaQueryFunction, between, down, generateMediaQueries, max, min, only, up, useMedia, } from "./media";
4
- export { SpacingArgs, SpacingDevices, SpacingDirection, SpacingDirectionAxis, SpacingFactor, SpacingProperty, SpacingSize, spacing, spacingBottom, spacingTop, spacingVertical, } from "./spacing";
5
- export { colStretch, centered, ellipsis, inset0, invisible, overlay, stateFocus, } from "./styled";
6
- export { breakpoints, createTheme, useTheme, type Breakpoint, type Breakpoints, type Theme, type ThemeOptions, } from "./theme";
7
- export { THEME_DEFAULT, THEME_KEY, type ThemeCookie, ThemeVanillaContext, type ThemeVanillaContextType, ThemeVanillaProvider, type ThemeVanillaProviderProps, type ThemeVanillaValue, getInitialThemeFromClient, } from "./theme--vanilla";
1
+ export { BodyMain, BodyRoot } from "./Body.js";
2
+ export { StylesGlobal, stylesGlobal } from "./Global.js";
3
+ export { MediaDirection, MediaQuery, MediaQueryFunction, between, down, generateMediaQueries, max, min, only, up, useMedia, } from "./media.js";
4
+ export { SpacingArgs, SpacingDevices, SpacingDirection, SpacingDirectionAxis, SpacingFactor, SpacingProperty, SpacingSize, spacing, spacingBottom, spacingTop, spacingVertical, } from "./spacing.js";
5
+ export { colStretch, centered, ellipsis, inset0, invisible, overlay, stateFocus, } from "./styled.js";
6
+ export { breakpoints, createTheme, useTheme, type Breakpoint, type Breakpoints, type Theme, type ThemeOptions, } from "./theme.js";
7
+ export { THEME_DEFAULT, THEME_KEY, type ThemeCookie, ThemeVanillaContext, type ThemeVanillaContextType, ThemeVanillaProvider, type ThemeVanillaProviderProps, type ThemeVanillaValue, getInitialThemeFromClient, } from "./theme--vanilla.js";
@@ -0,0 +1,7 @@
1
+ export { BodyMain, BodyRoot } from "./Body.js";
2
+ export { StylesGlobal, stylesGlobal } from "./Global.js";
3
+ export { between, down, generateMediaQueries, max, min, only, up, useMedia, } from "./media.js";
4
+ export { spacing, spacingBottom, spacingTop, spacingVertical, } from "./spacing.js";
5
+ export { colStretch, centered, ellipsis, inset0, invisible, overlay, stateFocus, } from "./styled.js";
6
+ export { breakpoints, createTheme, useTheme, } from "./theme.js";
7
+ export { THEME_DEFAULT, THEME_KEY, ThemeVanillaContext, ThemeVanillaProvider, getInitialThemeFromClient, } from "./theme--vanilla.js";
package/styles/media.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Breakpoint, Breakpoints } from "./theme";
1
+ import { Breakpoint, Breakpoints } from "./theme.js";
2
2
  export declare const min: MediaQueryFunction, max: MediaQueryFunction, up: MediaQueryFunction, down: (br: Breakpoint) => string, between: (br1: Breakpoint, br2: Breakpoint) => string, only: (br: Breakpoint) => string;
3
3
  export type MediaDirection = "min" | "max";
4
4
  export type MediaQuery = `${MediaDirection}:${Breakpoint}`;
@@ -8,55 +8,6 @@ export type MediaQueryFunction = {
8
8
  (breakpoint: Breakpoint): string;
9
9
  };
10
10
  export declare function useMedia(media: MediaQuery): boolean;
11
- /**
12
- * Generate media queries helpers
13
- *
14
- * Usage:
15
- * ```jsx
16
- * import { generateMediaQueries } from "@koine/react";
17
- *
18
- * export const breakpoints = {
19
- * xs: 0,
20
- * sm: 440,
21
- * md: 768,
22
- * lg: 1024,
23
- * xl: 1368,
24
- * xxl: 1690,
25
- * } as const;
26
- *
27
- * export const { min, max, up, down, between, only } = generateMediaQueries(breakpoints);
28
- * ```
29
- *
30
- * Consider the following syntaxes, using normal CSS is just slightly
31
- * longer but it aovid js imports, reduce the js overhead and improve CSS
32
- * highlighting in the editor.
33
- *
34
- * Even if we would reduce the function signature to the bare minimum the advantage
35
- * in terms of typing would not be much, also loosing in readability.
36
- *
37
- * ```css
38
- * // but unfortunately this does not work
39
- * @media (min-width: var(--b-sm)) {}
40
- * @media (min-width: 480px) {}
41
- *
42
- * ${media("min", "sm")} {}
43
- * ${mediaMin("sm")} {}
44
- * ${min.sm} {}
45
- * ${p => p.theme.min.sm}``
46
- * ```
47
- *
48
- * Related projects:
49
- * @see https://github.com/mg901/styled-breakpoints
50
- * @see https://github.com/morajabi/styled-media-query
51
- *
52
- * @see https://www.w3.org/TR/mediaqueries-5/#custom-mq The spec would allow for
53
- * something like this syntax
54
- *
55
- * ```css
56
- * @custom-media --narrow-window (max-width: 30em);
57
- * @media (--narrow-window) {}
58
- * ```
59
- */
60
11
  export declare function generateMediaQueries(breakpoints: Breakpoints): {
61
12
  min: MediaQueryFunction;
62
13
  max: MediaQueryFunction;
@@ -0,0 +1,74 @@
1
+ var _a;
2
+ import { useEffect, useState } from "react";
3
+ import { breakpoints, useTheme } from "./theme.js";
4
+ export var min = (_a = generateMediaQueries(breakpoints), _a.min), max = _a.max, up = _a.up, down = _a.down, between = _a.between, only = _a.only;
5
+ export function useMedia(media) {
6
+ var breakpoints = useTheme().breakpoints;
7
+ var _a = useState(false), matches = _a[0], setMatches = _a[1];
8
+ var _b = media.split(":"), _c = _b[0], direction = _c === void 0 ? "min" : _c, breakpoint = _b[1];
9
+ var px = breakpoints[breakpoint];
10
+ if (direction === "max") {
11
+ px = px - 0.02;
12
+ }
13
+ var query = "(".concat(direction, "-width: ").concat(px, "px)");
14
+ useEffect(function () {
15
+ var mq = window.matchMedia(query);
16
+ var handleChange = function (event) {
17
+ setMatches(event.matches);
18
+ };
19
+ setMatches(mq.matches);
20
+ if (!mq.addEventListener) {
21
+ mq.addListener(handleChange);
22
+ return function () {
23
+ mq.removeListener(handleChange);
24
+ };
25
+ }
26
+ mq.addEventListener("change", handleChange);
27
+ return function () {
28
+ mq.removeEventListener("change", handleChange);
29
+ };
30
+ }, [query]);
31
+ return matches;
32
+ }
33
+ export function generateMediaQueries(breakpoints) {
34
+ var temp = Object.keys(breakpoints).map(function (key) {
35
+ var br = key;
36
+ return [br, breakpoints[br]];
37
+ });
38
+ var sortedKeys = temp.sort(function (a, b) { return a[1] - b[1]; }).map(function (item) { return item[0]; });
39
+ var getNext = function (breakpoint) {
40
+ var index = sortedKeys.indexOf(breakpoint);
41
+ return sortedKeys[index + 1];
42
+ };
43
+ var min = function (br) {
44
+ return "@media (min-width: ".concat(breakpoints[br], "px)");
45
+ };
46
+ var max = function (br) {
47
+ return "@media (max-width: ".concat(breakpoints[br] - 0.02, "px)");
48
+ };
49
+ for (var br in breakpoints) {
50
+ var _br = br;
51
+ min[_br] = "@media (min-width: ".concat(breakpoints[_br], "px)");
52
+ max[_br] = "@media (max-width: ".concat(breakpoints[_br] - 0.02, "px)");
53
+ }
54
+ var up = min;
55
+ var down = function (br) {
56
+ var brNext = getNext(br);
57
+ return brNext && "@media (max-width: ".concat(breakpoints[brNext] - 0.02, "px)");
58
+ };
59
+ var between = function (br1, br2) {
60
+ return "@media (min-width: ".concat(breakpoints[br1], "px) and (max-width: ").concat(breakpoints[br2] - 0.02, "px)");
61
+ };
62
+ var only = function (br) {
63
+ var brNext = getNext(br);
64
+ return brNext ? between(br, brNext) : min(br);
65
+ };
66
+ return {
67
+ min: min,
68
+ max: max,
69
+ up: up,
70
+ down: down,
71
+ between: between,
72
+ only: only,
73
+ };
74
+ }
@@ -1,7 +1,6 @@
1
- import type { Theme } from "./theme";
1
+ import type { Theme } from "./theme.js";
2
2
  export type SpacingSize = "sm" | "md" | "lg";
3
3
  export type SpacingProperty = "padding" | "margin";
4
- /** @default 1 */
5
4
  export type SpacingFactor = number;
6
5
  export type SpacingDirection = "top" | "bottom";
7
6
  export type SpacingDirectionAxis = "vertical" | SpacingDirection;
@@ -0,0 +1,45 @@
1
+ function _spacing(theme, size, factor, property, direction, devices) {
2
+ if (size === void 0) { size = "md"; }
3
+ if (factor === void 0) { factor = 1; }
4
+ if (property === void 0) { property = "padding"; }
5
+ if (direction === void 0) { direction = "top"; }
6
+ if (devices === void 0) { devices = ["mobile", "tablet", "desktop"]; }
7
+ var breakpoints = theme.breakpoints, DEVICES = theme.devices, SPACES = theme.spaces;
8
+ var css = "";
9
+ var prop = "".concat(property, "-").concat(direction);
10
+ if (!devices.length || devices[0] === "mobile") {
11
+ css += "@media(max-width: ".concat(breakpoints[DEVICES.mobile], "px){\n ").concat(prop, ": ").concat(SPACES["mobile"][size] * factor, "px;\n }");
12
+ }
13
+ else {
14
+ for (var index = 0; index < devices.length; index++) {
15
+ var device = devices[index];
16
+ if (device === "mobile") {
17
+ css += "".concat(prop, ": ").concat(SPACES[device][size] * factor, "px;");
18
+ }
19
+ else if (device === "tablet") {
20
+ css += "@media(min-width: ".concat(breakpoints[DEVICES.tablet], "px){\n ").concat(prop, ": ").concat(SPACES["tablet"][size] * factor, "px;\n }");
21
+ }
22
+ else if (device === "desktop") {
23
+ css += "@media(min-width: ".concat(breakpoints[DEVICES.desktop], "px){\n ").concat(prop, ": ").concat(SPACES["desktop"][size] * factor, "px;\n }");
24
+ }
25
+ }
26
+ }
27
+ return css;
28
+ }
29
+ export function spacing(size, factor, property, direction, devices) {
30
+ if (direction === "vertical") {
31
+ return (_spacing(this, size, factor, property, "top", devices) +
32
+ _spacing(this, size, factor, property, "bottom", devices));
33
+ }
34
+ return _spacing(this, size, factor, property, direction, devices);
35
+ }
36
+ export function spacingTop(size, factor, property, devices) {
37
+ return _spacing(this, size, factor, property, "top", devices);
38
+ }
39
+ export function spacingBottom(size, factor, property, devices) {
40
+ return _spacing(this, size, factor, property, "bottom", devices);
41
+ }
42
+ export function spacingVertical(size, factor, property, devices) {
43
+ return (_spacing(this, size, factor, property, "top", devices) +
44
+ _spacing(this, size, factor, property, "bottom", devices));
45
+ }
@@ -1,12 +1,8 @@
1
1
  import React from "react";
2
2
  export declare const colStretch: (direction: "left" | "right", bg: React.CSSProperties["background"]) => string;
3
- /** @see https://caniuse.com/?search=inset */
4
3
  export declare const inset0 = "top:0;left:0;right:0;bottom:0;";
5
4
  export declare const overlay: string;
6
5
  export declare const centered = "display: flex;align-items: center;justify-content: center;";
7
6
  export declare const ellipsis = "overflow: hidden;text-overflow: ellipsis;white-space: nowrap;";
8
- /**
9
- * @see import("@mui/utils").visuallyHidden https://github.com/mui-org/material-ui/blob/master/packages/mui-utils/src/visuallyHidden.ts
10
- */
11
7
  export declare const invisible = "border: 0;clip: rect(0 0 0 0);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;white-space: nowrap;width: 1px;";
12
8
  export declare const stateFocus = "outline: 0px;box-shadow: 0 0 0 0.2rem rgba(200, 200, 200, 0.25);";
@@ -0,0 +1,9 @@
1
+ export var colStretch = function (direction, bg) {
2
+ return "\n background: ".concat(bg, ";\n position: relative;\n\n &:before{\n z-index: -1;\n content: '';\n position: absolute;\n right: ").concat(direction === "left" ? "100%" : "-100vw", ";\n left: ").concat(direction === "right" ? "100%" : "-100vw", ";\n top: 0;\n bottom: 0;\n background: ").concat(bg, ";\n }\n ");
3
+ };
4
+ export var inset0 = "top:0;left:0;right:0;bottom:0;";
5
+ export var overlay = "position: absolute;".concat(inset0);
6
+ export var centered = "display: flex;align-items: center;justify-content: center;";
7
+ export var ellipsis = "overflow: hidden;text-overflow: ellipsis;white-space: nowrap;";
8
+ export var invisible = "border: 0;clip: rect(0 0 0 0);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;white-space: nowrap;width: 1px;";
9
+ export var stateFocus = "outline: 0px;box-shadow: 0 0 0 0.2rem rgba(200, 200, 200, 0.25);";
@@ -0,0 +1,46 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createContext, useEffect, useState } from "react";
3
+ import isBrowser from "@koine/utils/isBrowser";
4
+ import useUpdateEffect from "../hooks/useUpdateEffect.js";
5
+ export var THEME_KEY = "theme";
6
+ export var THEME_DEFAULT = "light";
7
+ export var getInitialThemeFromClient = function () {
8
+ if (typeof window !== "undefined" && window.localStorage) {
9
+ var storedPrefs = window.localStorage.getItem(THEME_KEY);
10
+ if (typeof storedPrefs === "string") {
11
+ return storedPrefs;
12
+ }
13
+ var userMedia = window.matchMedia("(prefers-color-scheme: dark)");
14
+ if (userMedia.matches) {
15
+ return "dark";
16
+ }
17
+ }
18
+ return THEME_DEFAULT;
19
+ };
20
+ export var ThemeVanillaContext = createContext({
21
+ theme: "light",
22
+ setTheme: undefined,
23
+ });
24
+ export var ThemeVanillaProvider = function (_a) {
25
+ var initialTheme = _a.initialTheme, children = _a.children;
26
+ var _b = useState(initialTheme), theme = _b[0], setTheme = _b[1];
27
+ var rawSetTheme = function (rawTheme) {
28
+ if (!rawTheme || !isBrowser) {
29
+ return;
30
+ }
31
+ var root = window.document.documentElement;
32
+ var isDark = rawTheme === "dark";
33
+ root.classList.remove(isDark ? "light" : "dark");
34
+ root.classList.add(rawTheme);
35
+ localStorage.setItem(THEME_KEY, rawTheme);
36
+ };
37
+ useEffect(function () {
38
+ var theme = getInitialThemeFromClient();
39
+ setTheme(theme);
40
+ rawSetTheme(theme);
41
+ }, []);
42
+ useUpdateEffect(function () {
43
+ rawSetTheme(theme);
44
+ }, [theme]);
45
+ return (_jsx(ThemeVanillaContext.Provider, { value: { theme: theme, setTheme: setTheme }, children: children }));
46
+ };
package/styles/theme.d.ts CHANGED
@@ -1,16 +1,5 @@
1
1
  export type Breakpoint = "xs" | "sm" | "md" | "lg" | "xl" | "xxl";
2
2
  export type Breakpoints = Record<Breakpoint, number>;
3
- /**
4
- * You can override the default breakpoints through the .env variable
5
- *
6
- * FIXME: find a better way to configure it, the problem is that we use the media
7
- * queries within this pre-compiled library and thrught it was better to avoid
8
- * using theming props for a more ergonomic usage.
9
- *
10
- * ```.env
11
- * BREAKPOINTS=xs:0,sm:440,md:768,lg:1024,xl:1368,xxl:1690
12
- * ```
13
- */
14
3
  export declare const breakpoints: Breakpoints;
15
4
  export declare const createTheme: (options: ThemeOptions) => Theme;
16
5
  export declare const useTheme: () => Theme;
@@ -20,56 +9,38 @@ export type Theme = {
20
9
  quarter: number;
21
10
  third: number;
22
11
  half: number;
23
- /** @default 60 */
24
12
  normal: number;
25
13
  double: number;
26
14
  triple: number;
27
15
  };
28
16
  breakpoints: Breakpoints;
29
17
  devices: {
30
- /** @default "sm" */
31
18
  mobile: keyof Breakpoints;
32
- /** @default "md" */
33
19
  tablet: keyof Breakpoints;
34
- /** @default "lg" */
35
20
  desktop: keyof Breakpoints;
36
21
  };
37
22
  spaces: {
38
23
  mobile: {
39
- /** @default 10 */
40
24
  sm: number;
41
- /** @default 20 */
42
25
  md: number;
43
- /** @default 40 */
44
26
  lg: number;
45
27
  };
46
28
  tablet: {
47
- /** @default 15 */
48
29
  sm: number;
49
- /** @default 30 */
50
30
  md: number;
51
- /** @default 60 */
52
31
  lg: number;
53
32
  };
54
33
  desktop: {
55
- /** @default 20 */
56
34
  sm: number;
57
- /** @default 40 */
58
35
  md: number;
59
- /** @default 80 */
60
36
  lg: number;
61
37
  };
62
38
  };
63
39
  header: {
64
- /** @default "lg" */
65
40
  breakpoint: keyof Breakpoints;
66
- /** @default [82, 134] */
67
41
  height: [number, number];
68
- /** @default [60, 90] */
69
42
  heightSticky: [number, number];
70
- /** @default [76, 76] */
71
43
  logoWidth: [number, number];
72
- /** @default [70, 70] */
73
44
  logoWidthSticky: [number, number];
74
45
  };
75
46
  };
@@ -0,0 +1,30 @@
1
+ import { __assign } from "tslib";
2
+ import { useTheme as _useTheme } from "styled-components";
3
+ var DEFAULT_BREAKPOINTS = {
4
+ xs: 0,
5
+ sm: 440,
6
+ md: 768,
7
+ lg: 1024,
8
+ xl: 1368,
9
+ xxl: 1690,
10
+ };
11
+ export var breakpoints = process.env["BREAKPOINTS"]
12
+ ? process.env["BREAKPOINTS"].split(",").reduce(function (map, pair) {
13
+ var _a = pair.split(":"), key = _a[0], value = _a[1];
14
+ map[key] = parseFloat(value);
15
+ return map;
16
+ }, {})
17
+ : DEFAULT_BREAKPOINTS;
18
+ var themeDefault = {
19
+ maxWidth: breakpoints.xxl,
20
+ breakpoints: breakpoints,
21
+ devices: {
22
+ mobile: "sm",
23
+ tablet: "md",
24
+ desktop: "lg",
25
+ },
26
+ };
27
+ export var createTheme = function (options) {
28
+ return (__assign(__assign({}, themeDefault), options));
29
+ };
30
+ export var useTheme = _useTheme;