@ainias42/react-bootstrap-mobile 1.0.1 → 1.0.3

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 (412) hide show
  1. package/.ctirc +114 -0
  2. package/.prettierrc +1 -5
  3. package/.storybook/main.ts +31 -0
  4. package/.storybook/preview.ts +36 -0
  5. package/bin/release.sh +1 -37
  6. package/bin/updatePackages.sh +3 -0
  7. package/dist/{src/Components → Components}/ActionSheet/ActionSheet.d.ts +5 -5
  8. package/dist/Components/ActionSheet/ActionSheet.stories.d.ts +9 -0
  9. package/dist/Components/Card/Card.d.ts +12 -0
  10. package/dist/Components/Card/Card.stories.d.ts +16 -0
  11. package/dist/{src/Components → Components}/Clickable/Clickable.d.ts +3 -3
  12. package/dist/Components/Colors.stories.d.ts +5 -0
  13. package/dist/Components/Dialog/AlertDialog.d.ts +8 -0
  14. package/dist/Components/Dialog/AlertDialog.stories.d.ts +14 -0
  15. package/dist/{src/Components → Components}/Dialog/ButtonDialog.d.ts +3 -3
  16. package/dist/Components/Dialog/ConfirmDialog.d.ts +9 -0
  17. package/dist/Components/Dialog/ConfirmDialog.stories.d.ts +15 -0
  18. package/dist/{src/Components → Components}/Dialog/Dialog.d.ts +2 -2
  19. package/dist/{src/Components → Components}/Dialog/DialogBackground.d.ts +2 -2
  20. package/dist/{src/Components → Components}/Dialog/DialogContainer.d.ts +3 -3
  21. package/dist/{src/Components → Components}/Dialog/DialogContext.d.ts +3 -2
  22. package/dist/{src/Components → Components}/DragAndDrop/DragItem.d.ts +2 -2
  23. package/dist/{src/Components → Components}/DragAndDrop/DropArea.d.ts +2 -2
  24. package/dist/{src/Components → Components}/FormElements/Button/Button.d.ts +8 -8
  25. package/dist/Components/FormElements/Button/Button.stories.d.ts +43 -0
  26. package/dist/Components/FormElements/CheckBox/Checkbox.d.ts +12 -0
  27. package/dist/Components/FormElements/CheckBox/Checkbox.stories.d.ts +17 -0
  28. package/dist/{src/Components → Components}/FormElements/ColorInput/ColorInput.d.ts +3 -5
  29. package/dist/Components/FormElements/ColorInput/ColorInput.stories.d.ts +8 -0
  30. package/dist/{src/Components → Components}/FormElements/Controller/ColorInputController.d.ts +1 -1
  31. package/dist/{src/Components → Components}/FormElements/Controller/FileInputController.d.ts +4 -4
  32. package/dist/Components/FormElements/Controller/HookForm.d.ts +15 -0
  33. package/dist/{src/Components → Components}/FormElements/Controller/InputController.d.ts +1 -1
  34. package/dist/{src/Components → Components}/FormElements/Controller/MultipleFileInputController.d.ts +1 -1
  35. package/dist/{src/Components → Components}/FormElements/Controller/PasswordInputController.d.ts +1 -1
  36. package/dist/{src/Components → Components}/FormElements/Controller/SelectController.d.ts +1 -1
  37. package/dist/Components/FormElements/Controller/SliderController.d.ts +5 -0
  38. package/dist/{src/Components → Components}/FormElements/Controller/SwitchController.d.ts +1 -1
  39. package/dist/{src/Components → Components}/FormElements/Controller/TextareaController.d.ts +1 -1
  40. package/dist/{src/Components → Components}/FormElements/Controller/useYupResolver.d.ts +1 -1
  41. package/dist/{src/Components → Components}/FormElements/Controller/withHookController.d.ts +3 -2
  42. package/dist/Components/FormElements/Error/FormError.d.ts +6 -0
  43. package/dist/Components/FormElements/Error/FormError.stories.d.ts +7 -0
  44. package/dist/Components/FormElements/Form.stories.d.ts +7 -0
  45. package/dist/Components/FormElements/Input/FileInput/FileInput.d.ts +13 -0
  46. package/dist/{src/Components → Components}/FormElements/Input/FileInput/MultipleFileInput.d.ts +6 -6
  47. package/dist/Components/FormElements/Input/HiddenInput.d.ts +6 -0
  48. package/dist/Components/FormElements/Input/HiddenInput.stories.d.ts +9 -0
  49. package/dist/{src/Components → Components}/FormElements/Input/Input.d.ts +4 -4
  50. package/dist/Components/FormElements/Input/Input.stories.d.ts +18 -0
  51. package/dist/{src/Components → Components}/FormElements/Input/PasswordInput/PasswordInput.d.ts +5 -4
  52. package/dist/Components/FormElements/Input/PasswordInput/PasswordInput.stories.d.ts +8 -0
  53. package/dist/{src/Components → Components}/FormElements/SearchSelectInput/SearchSelectInput.d.ts +4 -4
  54. package/dist/Components/FormElements/SearchSelectInput/SearchSelectInput.stories.d.ts +9 -0
  55. package/dist/{src/Components → Components}/FormElements/Select/Select.d.ts +4 -4
  56. package/dist/Components/FormElements/Select/Select.stories.d.ts +8 -0
  57. package/dist/{src/Components → Components}/FormElements/Slider/Slider.d.ts +4 -4
  58. package/dist/Components/FormElements/Slider/Slider.stories.d.ts +7 -0
  59. package/dist/{src/Components → Components}/FormElements/Switch/Switch.d.ts +5 -5
  60. package/dist/Components/FormElements/Switch/Switch.stories.d.ts +11 -0
  61. package/dist/{src/Components → Components}/FormElements/Textarea/Textarea.d.ts +4 -4
  62. package/dist/Components/FormElements/Textarea/Textarea.stories.d.ts +9 -0
  63. package/dist/{src/Components → Components}/FormElements/hooks/useOnChangeDone.d.ts +1 -1
  64. package/dist/{src/Components → Components}/FullScreen/FullScreen.d.ts +4 -4
  65. package/dist/{src/Components → Components}/Hooks/useClientLayoutEffect.d.ts +1 -1
  66. package/dist/{src/Components → Components}/Hooks/useComposedRef.d.ts +1 -1
  67. package/dist/{src/Components → Components}/Hooks/useDelayedState.d.ts +1 -1
  68. package/dist/{src/Components → Components}/Hooks/useInViewport.d.ts +1 -1
  69. package/dist/{src/Components → Components}/Icon/DoubleIcon.d.ts +1 -1
  70. package/dist/Components/Icon/DoubleIcon.stories.d.ts +23 -0
  71. package/dist/{src/Components → Components}/Icon/Icon.d.ts +5 -5
  72. package/dist/Components/Icon/Icon.stories.d.ts +17 -0
  73. package/dist/Components/Image/Image.d.ts +10 -0
  74. package/dist/Components/Image/Image.stories.d.ts +7 -0
  75. package/dist/{src/Components → Components}/InViewport/InViewport.d.ts +1 -1
  76. package/dist/{src/Components → Components}/Layout/Block.d.ts +4 -4
  77. package/dist/{src/Components → Components}/Layout/Container.d.ts +1 -1
  78. package/dist/{src/Components → Components}/Layout/Flex.d.ts +3 -3
  79. package/dist/{src/Components → Components}/Layout/Grid/Grid.d.ts +3 -3
  80. package/dist/{src/Components → Components}/Layout/Grid/GridItem.d.ts +1 -1
  81. package/dist/Components/Layout/Grow.d.ts +10 -0
  82. package/dist/{src/Components → Components}/Layout/Inline.d.ts +3 -3
  83. package/dist/{src/Components → Components}/Layout/InlineBlock.d.ts +3 -3
  84. package/dist/{src/Components → Components}/Layout/View.d.ts +4 -4
  85. package/dist/{src/Components → Components}/Layout/ViewWithoutListeners.d.ts +3 -3
  86. package/dist/Components/LoadingArea/LoadingArea.d.ts +9 -0
  87. package/dist/Components/LoadingArea/LoadingArea.stories.d.ts +9 -0
  88. package/dist/Components/LoadingCircle/LoadingCircle.d.ts +7 -0
  89. package/dist/Components/LoadingCircle/LoadingCircle.stories.d.ts +26 -0
  90. package/dist/{src/Components → Components}/Menu/HoverMenu.d.ts +3 -3
  91. package/dist/Components/Menu/HoverMenu.stories.d.ts +16 -0
  92. package/dist/{src/Components → Components}/Menu/Menu.d.ts +2 -2
  93. package/dist/Components/Menu/Menu.stories.d.ts +14 -0
  94. package/dist/{src/Components → Components}/Menu/MenuCloseContext.d.ts +1 -1
  95. package/dist/{src/Components → Components}/Menu/MenuDivider.d.ts +1 -1
  96. package/dist/{src/Components → Components}/Menu/MenuItem.d.ts +4 -3
  97. package/dist/Components/Menu/MenuItem.stories.d.ts +21 -0
  98. package/dist/{src/Components → Components}/Menu/Submenu.d.ts +3 -3
  99. package/dist/Components/Menu/Submenu.stories.d.ts +10 -0
  100. package/dist/{src/Components → Components}/Menu/useMenu.d.ts +2 -2
  101. package/dist/{src/Components → Components}/RbmComponentProps.d.ts +4 -4
  102. package/dist/{src/Components → Components}/SizeCalculator/SizeCalculator.d.ts +1 -1
  103. package/dist/Components/SpoilerList/Spoiler/Spoiler.d.ts +16 -0
  104. package/dist/Components/SpoilerList/Spoiler/Spoiler.stories.d.ts +7 -0
  105. package/dist/{src/Components → Components}/SpoilerList/SpoilerList.d.ts +3 -5
  106. package/dist/{src/Components → Components}/TabBar/TabBar.d.ts +4 -6
  107. package/dist/Components/TabBar/TabBar.stories.d.ts +10 -0
  108. package/dist/Components/TabBar/TabBarButton.d.ts +7 -0
  109. package/dist/{src/Components → Components}/Table/Table.d.ts +3 -3
  110. package/dist/{src/Components → Components}/Text/Heading.d.ts +2 -2
  111. package/dist/{src/Components → Components}/Text/Text.d.ts +3 -3
  112. package/dist/Components/Text/Text.stories.d.ts +35 -0
  113. package/dist/Components/Toast/Toast.d.ts +12 -0
  114. package/dist/Components/Toast/Toast.stories.d.ts +8 -0
  115. package/dist/{src/Components → Components}/Toast/ToastContainer.d.ts +2 -2
  116. package/dist/Components/TopBar/MoreButton.d.ts +7 -0
  117. package/dist/{src/Components → Components}/TopBar/TopBar.d.ts +4 -6
  118. package/dist/Components/TopBar/TopBar.stories.d.ts +7 -0
  119. package/dist/Components/TopBar/TopBarButton.d.ts +7 -0
  120. package/dist/helper/useDeepShallow.d.ts +1 -0
  121. package/dist/helper/withMemo.d.ts +3 -0
  122. package/dist/{src/helper → helper}/withRenderBrowserOnly.d.ts +1 -1
  123. package/dist/helper/withRestrictedChildren.d.ts +7 -0
  124. package/dist/index.css +36 -0
  125. package/dist/index.css.map +1 -0
  126. package/dist/index.d.ts +116 -0
  127. package/dist/index.js +5357 -0
  128. package/dist/index.js.map +1 -0
  129. package/dist/treeshakeTest.d.ts +1 -0
  130. package/eslint.config.js +17 -0
  131. package/package.json +41 -90
  132. package/react-bootstrap-mobile.scss +6 -6
  133. package/src/Components/ActionSheet/ActionSheet.stories.tsx +55 -0
  134. package/src/Components/ActionSheet/ActionSheet.tsx +37 -24
  135. package/src/Components/ActionSheet/actionSheet.module.scss +198 -0
  136. package/src/Components/Card/Card.stories.tsx +41 -0
  137. package/src/Components/Card/Card.tsx +6 -9
  138. package/src/Components/Card/card.module.scss +74 -0
  139. package/src/Components/Clickable/Clickable.tsx +73 -63
  140. package/src/Components/Clickable/clickable.module.scss +14 -0
  141. package/src/Components/Colors.stories.tsx +77 -0
  142. package/src/Components/Dialog/AlertDialog.stories.tsx +28 -0
  143. package/src/Components/Dialog/AlertDialog.tsx +10 -9
  144. package/src/Components/Dialog/ButtonDialog.tsx +15 -13
  145. package/src/Components/Dialog/ConfirmDialog.stories.tsx +29 -0
  146. package/src/Components/Dialog/ConfirmDialog.tsx +11 -9
  147. package/src/Components/Dialog/Dialog.tsx +10 -10
  148. package/src/Components/Dialog/DialogBackground.tsx +32 -21
  149. package/src/Components/Dialog/DialogContainer.tsx +23 -18
  150. package/src/Components/Dialog/DialogContext.ts +7 -6
  151. package/src/Components/Dialog/{buttonDialog.scss → buttonDialog.module.scss} +29 -21
  152. package/src/Components/Dialog/dialog.module.scss +30 -0
  153. package/src/Components/Dialog/dialogBackground.module.scss +17 -0
  154. package/src/Components/Dialog/useAlertDialog.ts +3 -3
  155. package/src/Components/Dialog/useConfirmDialog.ts +3 -3
  156. package/src/Components/DragAndDrop/DragItem.tsx +7 -6
  157. package/src/Components/DragAndDrop/DropArea.tsx +5 -4
  158. package/src/Components/Flavor.ts +4 -4
  159. package/src/Components/FormElements/Button/Button.stories.tsx +79 -0
  160. package/src/Components/FormElements/Button/Button.tsx +49 -36
  161. package/src/Components/FormElements/Button/ButtonType.ts +2 -2
  162. package/src/Components/FormElements/Button/button.module.scss +87 -0
  163. package/src/Components/FormElements/CheckBox/Checkbox.stories.tsx +50 -0
  164. package/src/Components/FormElements/CheckBox/Checkbox.tsx +13 -14
  165. package/src/Components/FormElements/CheckBox/{checkbox.scss → checkbox.module.scss} +30 -11
  166. package/src/Components/FormElements/ColorInput/ColorInput.stories.tsx +24 -0
  167. package/src/Components/FormElements/ColorInput/ColorInput.tsx +55 -59
  168. package/src/Components/FormElements/ColorInput/{colorInput.scss → colorInput.module.scss} +17 -19
  169. package/src/Components/FormElements/ColorInput/sharedSelectedColor.ts +19 -10
  170. package/src/Components/FormElements/Controller/ColorInputController.ts +3 -3
  171. package/src/Components/FormElements/Controller/FileInputController.tsx +29 -20
  172. package/src/Components/FormElements/Controller/HookForm.tsx +128 -24
  173. package/src/Components/FormElements/Controller/InputController.ts +3 -3
  174. package/src/Components/FormElements/Controller/MultipleFileInputController.ts +2 -3
  175. package/src/Components/FormElements/Controller/PasswordInputController.ts +3 -3
  176. package/src/Components/FormElements/Controller/SelectController.ts +3 -3
  177. package/src/Components/FormElements/Controller/SendFormContext.ts +3 -3
  178. package/src/Components/FormElements/Controller/SliderController.ts +4 -0
  179. package/src/Components/FormElements/Controller/SwitchController.ts +3 -3
  180. package/src/Components/FormElements/Controller/TextareaController.ts +2 -2
  181. package/src/Components/FormElements/Controller/useYupResolver.ts +10 -8
  182. package/src/Components/FormElements/Controller/withHookController.tsx +21 -18
  183. package/src/Components/FormElements/Error/FormError.stories.tsx +16 -0
  184. package/src/Components/FormElements/Error/FormError.tsx +42 -0
  185. package/src/Components/FormElements/Error/formError.module.scss +9 -0
  186. package/src/Components/FormElements/Form.stories.tsx +16 -0
  187. package/src/Components/FormElements/Input/FileInput/FileInput.tsx +52 -32
  188. package/src/Components/FormElements/Input/FileInput/MultipleFileInput.tsx +234 -231
  189. package/src/Components/FormElements/Input/FileInput/{fileInput.scss → fileInput.module.scss} +10 -12
  190. package/src/Components/FormElements/Input/HiddenInput.stories.tsx +44 -0
  191. package/src/Components/FormElements/Input/HiddenInput.tsx +6 -8
  192. package/src/Components/FormElements/Input/Input.stories.tsx +59 -0
  193. package/src/Components/FormElements/Input/Input.tsx +173 -172
  194. package/src/Components/FormElements/Input/PasswordInput/PasswordInput.stories.tsx +31 -0
  195. package/src/Components/FormElements/Input/PasswordInput/PasswordInput.tsx +20 -16
  196. package/src/Components/FormElements/Input/input.module.scss +95 -0
  197. package/src/Components/FormElements/SearchSelectInput/SearchSelectInput.stories.tsx +49 -0
  198. package/src/Components/FormElements/SearchSelectInput/SearchSelectInput.tsx +178 -166
  199. package/src/Components/FormElements/SearchSelectInput/seachSelectInput.module.scss +112 -0
  200. package/src/Components/FormElements/Select/Select.stories.tsx +49 -0
  201. package/src/Components/FormElements/Select/Select.tsx +34 -24
  202. package/src/Components/FormElements/Select/select.module.scss +63 -0
  203. package/src/Components/FormElements/Slider/Slider.stories.tsx +15 -0
  204. package/src/Components/FormElements/Slider/Slider.tsx +29 -20
  205. package/src/Components/FormElements/Slider/slider.module.scss +93 -0
  206. package/src/Components/FormElements/Switch/Switch.stories.tsx +65 -0
  207. package/src/Components/FormElements/Switch/Switch.tsx +72 -63
  208. package/src/Components/FormElements/Switch/switch.module.scss +157 -0
  209. package/src/Components/FormElements/Textarea/Textarea.stories.tsx +37 -0
  210. package/src/Components/FormElements/Textarea/Textarea.tsx +46 -45
  211. package/src/Components/FormElements/Textarea/textarea.module.scss +34 -0
  212. package/src/Components/FormElements/hooks/useOnChangeDone.ts +6 -2
  213. package/src/Components/FullScreen/FullScreen.tsx +16 -16
  214. package/src/Components/Hooks/useBreakpoint.ts +13 -7
  215. package/src/Components/Hooks/useClientLayoutEffect.ts +1 -1
  216. package/src/Components/Hooks/useComposedRef.ts +2 -1
  217. package/src/Components/Hooks/useDebounced.ts +2 -2
  218. package/src/Components/Hooks/useDelayed.ts +2 -3
  219. package/src/Components/Hooks/useDelayedEffect.ts +3 -3
  220. package/src/Components/Hooks/useDelayedState.ts +18 -10
  221. package/src/Components/Hooks/useInViewport.ts +3 -2
  222. package/src/Components/Hooks/useKeyListener.ts +9 -6
  223. package/src/Components/Hooks/useListener.ts +4 -4
  224. package/src/Components/Hooks/useMousePosition.ts +2 -2
  225. package/src/Components/Hooks/useRerender.ts +17 -14
  226. package/src/Components/Hooks/useWindowDimensions.ts +11 -12
  227. package/src/Components/Icon/DoubleIcon.stories.tsx +38 -0
  228. package/src/Components/Icon/DoubleIcon.tsx +22 -17
  229. package/src/Components/Icon/Icon.stories.tsx +37 -0
  230. package/src/Components/Icon/Icon.tsx +39 -17
  231. package/src/Components/Icon/{icon.scss → icon.module.scss} +2 -0
  232. package/src/Components/Image/Image.stories.tsx +17 -0
  233. package/src/Components/Image/Image.tsx +7 -12
  234. package/src/Components/InViewport/InViewport.tsx +5 -6
  235. package/src/Components/Layout/Block.tsx +18 -12
  236. package/src/Components/Layout/Container.tsx +5 -6
  237. package/src/Components/Layout/Flex.tsx +17 -9
  238. package/src/Components/Layout/Grid/Grid.tsx +20 -10
  239. package/src/Components/Layout/Grid/GridItem.tsx +5 -6
  240. package/src/Components/Layout/Grid/{grid.scss → grid.module.scss} +19 -26
  241. package/src/Components/Layout/Grow.tsx +18 -8
  242. package/src/Components/Layout/Inline.tsx +15 -12
  243. package/src/Components/Layout/InlineBlock.tsx +17 -12
  244. package/src/Components/Layout/View.tsx +20 -9
  245. package/src/Components/Layout/ViewWithoutListeners.tsx +24 -15
  246. package/src/Components/Layout/container.module.scss +54 -0
  247. package/src/Components/LoadingArea/LoadingArea.stories.tsx +35 -0
  248. package/src/Components/LoadingArea/LoadingArea.tsx +10 -15
  249. package/src/Components/LoadingArea/{loadingArea.scss → loadingArea.module.scss} +8 -5
  250. package/src/Components/LoadingCircle/LoadingCircle.stories.tsx +58 -0
  251. package/src/Components/LoadingCircle/LoadingCircle.tsx +26 -13
  252. package/src/Components/LoadingCircle/{loadingCircle.scss → loadingCircle.module.scss} +14 -5
  253. package/src/Components/Menu/HoverMenu.stories.tsx +32 -0
  254. package/src/Components/Menu/HoverMenu.tsx +61 -45
  255. package/src/Components/Menu/Menu.stories.tsx +69 -0
  256. package/src/Components/Menu/Menu.tsx +67 -58
  257. package/src/Components/Menu/MenuCloseContext.ts +1 -1
  258. package/src/Components/Menu/MenuDivider.tsx +6 -6
  259. package/src/Components/Menu/MenuItem.stories.tsx +35 -0
  260. package/src/Components/Menu/MenuItem.tsx +66 -55
  261. package/src/Components/Menu/Submenu.stories.tsx +37 -0
  262. package/src/Components/Menu/Submenu.tsx +72 -58
  263. package/src/Components/Menu/{menu.scss → menu.module.scss} +23 -11
  264. package/src/Components/Menu/useMenu.ts +4 -3
  265. package/src/Components/RbmComponentProps.ts +6 -7
  266. package/src/Components/SizeCalculator/SizeCalculator.tsx +3 -3
  267. package/src/Components/SpoilerList/Spoiler/Spoiler.stories.tsx +21 -0
  268. package/src/Components/SpoilerList/Spoiler/Spoiler.tsx +49 -48
  269. package/src/Components/SpoilerList/Spoiler/{spoiler.scss → spoiler.module.scss} +46 -30
  270. package/src/Components/SpoilerList/SpoilerList.tsx +8 -12
  271. package/src/Components/SpoilerList/useSpoilerGroup.ts +2 -2
  272. package/src/Components/TabBar/TabBar.stories.tsx +32 -0
  273. package/src/Components/TabBar/TabBar.tsx +16 -18
  274. package/src/Components/TabBar/TabBarButton.tsx +13 -10
  275. package/src/Components/TabBar/tabBar.module.scss +128 -0
  276. package/src/Components/Table/Table.tsx +16 -15
  277. package/src/Components/Text/Heading.tsx +6 -7
  278. package/src/Components/Text/Text.stories.tsx +121 -0
  279. package/src/Components/Text/Text.tsx +19 -10
  280. package/src/Components/Text/{text.scss → text.module.scss} +3 -8
  281. package/src/Components/Toast/Toast.stories.tsx +25 -0
  282. package/src/Components/Toast/Toast.tsx +15 -17
  283. package/src/Components/Toast/ToastContainer.tsx +72 -54
  284. package/src/Components/Toast/ToastContext.ts +9 -3
  285. package/src/Components/Toast/toast.module.scss +65 -0
  286. package/src/Components/TopBar/MoreButton.tsx +9 -11
  287. package/src/Components/TopBar/TopBar.stories.tsx +63 -0
  288. package/src/Components/TopBar/TopBar.tsx +49 -40
  289. package/src/Components/TopBar/TopBarButton.tsx +20 -10
  290. package/src/Components/TopBar/{topBar.scss → topBar.module.scss} +40 -23
  291. package/src/Size.ts +1 -2
  292. package/src/WrongChildError.ts +1 -1
  293. package/src/helper/EmptyProps.ts +1 -1
  294. package/src/helper/nonEmptyString.ts +1 -1
  295. package/src/helper/useDeepShallow.ts +10 -0
  296. package/src/helper/withMemo.ts +7 -8
  297. package/src/helper/withRenderBrowserOnly.tsx +2 -1
  298. package/src/helper/withRestrictedChildren.tsx +11 -14
  299. package/src/index.ts +116 -0
  300. package/src/scss/_colors.scss +32 -19
  301. package/src/scss/_default.scss +5 -5
  302. package/src/scss/_flavorMixin.scss +3 -0
  303. package/src/scss/_variables.scss +19 -19
  304. package/src/scss/_vars.scss +12 -0
  305. package/src/scss/baseClasses.module.scss +23 -0
  306. package/src/scss/breakpoints.scss +79 -0
  307. package/src/treeshakeTest.ts +3 -0
  308. package/src/types/{react-table-config.d.ts → reactTableConfig.d.ts} +2 -43
  309. package/stylelint.config.mjs +4 -0
  310. package/tsconfig.build.json +7 -0
  311. package/tsconfig.json +16 -48
  312. package/webpack.config.ts +6 -0
  313. package/.eslintrc.json +0 -191
  314. package/.npnignore +0 -5
  315. package/LICENSE +0 -21
  316. package/README.md +0 -1
  317. package/babel.config.js +0 -22
  318. package/bin/build.js +0 -60
  319. package/bin/updateCopies.js +0 -94
  320. package/bootstrapReactMobile.ts +0 -119
  321. package/dist/bootstrapReactMobile.d.ts +0 -119
  322. package/dist/bootstrapReactMobile.js +0 -14043
  323. package/dist/bootstrapReactMobile.js.map +0 -1
  324. package/dist/src/Components/Card/Card.d.ts +0 -14
  325. package/dist/src/Components/Dialog/AlertDialog.d.ts +0 -10
  326. package/dist/src/Components/Dialog/ConfirmDialog.d.ts +0 -11
  327. package/dist/src/Components/FormElements/CheckBox/Checkbox.d.ts +0 -14
  328. package/dist/src/Components/FormElements/Controller/HookForm.d.ts +0 -8
  329. package/dist/src/Components/FormElements/FormError.d.ts +0 -5
  330. package/dist/src/Components/FormElements/Input/FileInput/FileInput.d.ts +0 -13
  331. package/dist/src/Components/FormElements/Input/HiddenInput.d.ts +0 -8
  332. package/dist/src/Components/Image/Image.d.ts +0 -12
  333. package/dist/src/Components/Layout/Grow.d.ts +0 -9
  334. package/dist/src/Components/List/BulletList/BulletList.d.ts +0 -8
  335. package/dist/src/Components/List/BulletList/ListItem.d.ts +0 -7
  336. package/dist/src/Components/List/InfiniteList.d.ts +0 -7
  337. package/dist/src/Components/List/List.d.ts +0 -15
  338. package/dist/src/Components/LoadingArea/LoadingArea.d.ts +0 -12
  339. package/dist/src/Components/LoadingCircle/LoadingCircle.d.ts +0 -8
  340. package/dist/src/Components/SpoilerList/Spoiler/Spoiler.d.ts +0 -18
  341. package/dist/src/Components/TabBar/TabBarButton.d.ts +0 -9
  342. package/dist/src/Components/Toast/Toast.d.ts +0 -13
  343. package/dist/src/Components/TopBar/MoreButton.d.ts +0 -9
  344. package/dist/src/Components/TopBar/TopBarButton.d.ts +0 -9
  345. package/dist/src/ListRow/ListRow.d.ts +0 -1
  346. package/dist/src/StyleProvider.d.ts +0 -2
  347. package/dist/src/helper/withMemo.d.ts +0 -3
  348. package/dist/src/helper/withRestrictedChildren.d.ts +0 -6
  349. package/scripts/getPackageJson.js +0 -25
  350. package/src/Components/ActionSheet/actionSheet.scss +0 -153
  351. package/src/Components/Card/card.scss +0 -76
  352. package/src/Components/Clickable/clickable.scss +0 -8
  353. package/src/Components/Dialog/dialog.scss +0 -30
  354. package/src/Components/Dialog/dialogBackground.scss +0 -11
  355. package/src/Components/FormElements/Button/button.scss +0 -73
  356. package/src/Components/FormElements/FormError.tsx +0 -29
  357. package/src/Components/FormElements/Input/input.scss +0 -83
  358. package/src/Components/FormElements/SearchSelectInput/seachSelectInput.scss +0 -97
  359. package/src/Components/FormElements/Select/select.scss +0 -61
  360. package/src/Components/FormElements/Slider/slider.scss +0 -92
  361. package/src/Components/FormElements/Switch/switch.scss +0 -152
  362. package/src/Components/FormElements/Textarea/textarea.scss +0 -31
  363. package/src/Components/FormElements/formError.scss +0 -4
  364. package/src/Components/Layout/container.scss +0 -12
  365. package/src/Components/List/BulletList/BulletList.tsx +0 -33
  366. package/src/Components/List/BulletList/ListItem.tsx +0 -34
  367. package/src/Components/List/InfiniteList.tsx +0 -56
  368. package/src/Components/List/List.tsx +0 -95
  369. package/src/Components/List/list.scss +0 -30
  370. package/src/Components/TabBar/tabBar.scss +0 -108
  371. package/src/Components/Toast/toast.scss +0 -55
  372. package/src/ListRow/ListRow.tsx +0 -20
  373. package/src/StyleProvider.ts +0 -4
  374. package/src/scss/_baseClasses.scss +0 -23
  375. package/src/types/isomorphic-style-loader.d.ts +0 -3
  376. package/webpack.config.js +0 -95
  377. /package/dist/{src/Components → Components}/Dialog/useAlertDialog.d.ts +0 -0
  378. /package/dist/{src/Components → Components}/Dialog/useConfirmDialog.d.ts +0 -0
  379. /package/dist/{src/Components → Components}/DragAndDrop/useStrictEnabled.d.ts +0 -0
  380. /package/dist/{src/Components → Components}/Flavor.d.ts +0 -0
  381. /package/dist/{src/Components → Components}/FormElements/Button/ButtonType.d.ts +0 -0
  382. /package/dist/{src/Components → Components}/FormElements/ColorInput/sharedSelectedColor.d.ts +0 -0
  383. /package/dist/{src/Components → Components}/FormElements/Controller/SendFormContext.d.ts +0 -0
  384. /package/dist/{src/Components → Components}/FormElements/Input/FileInput/FileType.d.ts +0 -0
  385. /package/dist/{src/Components → Components}/Hooks/useBreakpoint.d.ts +0 -0
  386. /package/dist/{src/Components → Components}/Hooks/useDebounced.d.ts +0 -0
  387. /package/dist/{src/Components → Components}/Hooks/useDelayed.d.ts +0 -0
  388. /package/dist/{src/Components → Components}/Hooks/useDelayedEffect.d.ts +0 -0
  389. /package/dist/{src/Components → Components}/Hooks/useKeyListener.d.ts +0 -0
  390. /package/dist/{src/Components → Components}/Hooks/useListener.d.ts +0 -0
  391. /package/dist/{src/Components → Components}/Hooks/useMousePosition.d.ts +0 -0
  392. /package/dist/{src/Components → Components}/Hooks/useOnMount.d.ts +0 -0
  393. /package/dist/{src/Components → Components}/Hooks/useOnce.d.ts +0 -0
  394. /package/dist/{src/Components → Components}/Hooks/useRerender.d.ts +0 -0
  395. /package/dist/{src/Components → Components}/Hooks/useWindowDimensions.d.ts +0 -0
  396. /package/dist/{src/Components → Components}/SpoilerList/useSpoilerGroup.d.ts +0 -0
  397. /package/dist/{src/Components → Components}/Toast/ToastContext.d.ts +0 -0
  398. /package/dist/{src/Size.d.ts → Size.d.ts} +0 -0
  399. /package/dist/{src/TypeHelpers.d.ts → TypeHelpers.d.ts} +0 -0
  400. /package/dist/{src/WindowContext → WindowContext}/WindowContext.d.ts +0 -0
  401. /package/dist/{src/WrongChildError.d.ts → WrongChildError.d.ts} +0 -0
  402. /package/dist/{src/helper → helper}/Characters.d.ts +0 -0
  403. /package/dist/{src/helper → helper}/DistributiveOmit.d.ts +0 -0
  404. /package/dist/{src/helper → helper}/EmptyProps.d.ts +0 -0
  405. /package/dist/{src/helper → helper}/memoComparator.d.ts +0 -0
  406. /package/dist/{src/helper → helper}/nonEmptyString.d.ts +0 -0
  407. /package/src/Components/FormElements/Input/PasswordInput/{passwordInput.scss → passwordInput.module.scss} +0 -0
  408. /package/src/Components/Image/{image.scss → image.module.scss} +0 -0
  409. /package/src/Components/InViewport/{inViewport.scss → inViewport.module.scss} +0 -0
  410. /package/src/Components/Layout/{layout.scss → layout.module.scss} +0 -0
  411. /package/src/Components/Text/{heading.scss → heading.module.scss} +0 -0
  412. /package/src/types/{scss-module.d.ts → scss.d.ts} +0 -0
@@ -0,0 +1,157 @@
1
+ @use "../../../scss/variables" as variables;
2
+ @use "../../../scss/designMixin" as mixin;
3
+
4
+ @include mixin.design(variables.$material) {
5
+ --switch-handle-offset: 0px;
6
+ --switch-handle-checked-offset: 18px;
7
+ --switch-background: var(--border-light);
8
+ --switch-handle-color: var(--foreground-secondary);
9
+ --switch-handle-box-shadow-color: var(--box-shadow-color);
10
+ --switch-active-handle-color: var(--flavor-accent);
11
+ --switch-active-handle-box-shadow-color: var(--box-shadow-color);
12
+ }
13
+
14
+ @include mixin.design(variables.$flat) {
15
+ --switch-handle-offset: 2px;
16
+ --switch-handle-checked-offset: 19px;
17
+ --switch-background: var(--foreground-primary);
18
+ --switch-box-shadow-color: var(--box-shadow-color);
19
+ --switch-handle-color: var(--foreground-primary);
20
+ --switch-handle-box-shadow-color: rgb(0 0 0 / 25%);
21
+ --switch-active-background-color: var(--flavor-accent);
22
+ --switch-active-box-shadow-color: var(--flavor-accent);
23
+ --switch-active-handle-color: var(--foreground-primary);
24
+ --switch-active-handle-box-shadow-color: var(--box-shadow-color);
25
+ }
26
+
27
+ .switch {
28
+ cursor: pointer;
29
+ position: relative;
30
+ display: inline-block;
31
+
32
+ > label {
33
+ display: flex;
34
+ cursor: pointer;
35
+ align-items: center;
36
+ }
37
+
38
+ .label {
39
+ &:not(:empty) {
40
+ margin-left: 0.2rem;
41
+ margin-right: 0.2rem;
42
+ }
43
+ }
44
+
45
+ input {
46
+ display: none;
47
+ }
48
+
49
+ .toggle {
50
+ flex-shrink: 0;
51
+ width: 40px;
52
+ display: inline-block;
53
+ position: relative;
54
+ transition-property: all;
55
+ transition-duration: 0.35s;
56
+ transition-timing-function: ease-out;
57
+ border-radius: 30px;
58
+
59
+ .handle {
60
+ left: var(--switch-handle-offset);
61
+ transition-property: all;
62
+ transition-duration: 0.35s;
63
+ transition-timing-function: cubic-bezier(.59, .01, .5, .99);
64
+ border-radius: 100%;
65
+ background-clip: padding-box;
66
+ position: absolute;
67
+ content: '';
68
+ }
69
+ }
70
+
71
+ %dual-toggle-flat {
72
+ background-color: var(--switch-active-background-color);
73
+ box-shadow: inset 0 0 0 2px var(--switch-active-box-shadow-color);
74
+ }
75
+
76
+ %dual-handle-material {
77
+ background-color: var(--switch-active-handle-color);
78
+ box-shadow: 0 4px 5px 0 var(--switch-active-handle-box-shadow-color), 0 1px 10px 0 var(--switch-active-handle-box-shadow-color), 0 2px 4px -1px var(--switch-active-handle-box-shadow-color);
79
+ }
80
+
81
+ %dual-handle-flat {
82
+ top: 2px;
83
+ background-color: var(--switch-active-handle-color);
84
+ box-shadow: 0 3px 2px var(--switch-active-handle-box-shadow-color);
85
+ }
86
+
87
+ @include mixin.design(variables.$material) {
88
+ input:checked + .toggle {
89
+ --switch-handle-offset: var(--switch-handle-checked-offset);
90
+
91
+ .handle {
92
+ @extend %dual-handle-material;
93
+ }
94
+ }
95
+
96
+ .toggle {
97
+ background-color: var(--switch-background);
98
+ margin-top: 4px;
99
+ height: 15px;
100
+
101
+ .handle {
102
+ margin-top: -4px;
103
+ width: 22px;
104
+ height: 22px;
105
+ background-color: var(--switch-handle-color);
106
+ box-shadow: 0 4px 5px 0 var(--switch-handle-box-shadow-color), 0 1px 10px 0 var(--switch-handle-box-shadow-color), 0 2px 4px -1px var(--switch-handle-box-shadow-color);
107
+ }
108
+ }
109
+ }
110
+
111
+ @include mixin.design(variables.$flat) {
112
+ input:checked + .toggle {
113
+ @extend %dual-toggle-flat;
114
+
115
+ --switch-handle-offset: var(--switch-handle-checked-offset);
116
+
117
+ .handle {
118
+ @extend %dual-handle-flat;
119
+ }
120
+
121
+ }
122
+
123
+ .toggle {
124
+ height: 23px;
125
+ background-color: var(--switch-background);
126
+ box-shadow: inset 0 0 0 2px var(--switch-box-shadow-color);
127
+
128
+ .handle {
129
+ height: 19px;
130
+ width: 19px;
131
+ background-color: var(--switch-handle-color);
132
+ top: 2px;
133
+ box-shadow: 0 0 1px 0 var(--switch-handle-box-shadow-color), 0 3px 2px var(--switch-handle-box-shadow-color);
134
+ }
135
+ }
136
+ }
137
+
138
+ &.dual {
139
+ @include mixin.design(variables.$material) {
140
+ .toggle {
141
+ .handle {
142
+ @extend %dual-handle-material;
143
+ }
144
+ }
145
+ }
146
+
147
+ @include mixin.design(variables.$flat) {
148
+ .toggle {
149
+ @extend %dual-toggle-flat;
150
+
151
+ .handle {
152
+ @extend %dual-handle-flat;
153
+ }
154
+ }
155
+ }
156
+ }
157
+ }
@@ -0,0 +1,37 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+
3
+ import { Textarea } from '@/Components/FormElements/Textarea/Textarea';
4
+
5
+ const meta = {
6
+ component: Textarea,
7
+ } satisfies Meta<typeof Textarea>;
8
+
9
+ export default meta;
10
+
11
+ type Story = StoryObj<typeof meta>;
12
+
13
+ export const Default: Story = {
14
+ args: {
15
+ label: 'Label',
16
+ placeholder: 'Placeholder',
17
+ defaultValue: '',
18
+ error: '',
19
+ },
20
+ };
21
+
22
+ export const Error: Story = {
23
+ args: {
24
+ label: 'Label',
25
+ placeholder: 'Placeholder',
26
+ error: 'Wrong Value',
27
+ },
28
+ };
29
+
30
+ export const WithText: Story = {
31
+ args: {
32
+ label: 'Label',
33
+ placeholder: 'Placeholder',
34
+ defaultValue: 'Mein geschriebener Text',
35
+ error: '',
36
+ },
37
+ };
@@ -1,21 +1,16 @@
1
1
  import * as React from 'react';
2
- import { RbmComponentProps } from '../../RbmComponentProps';
3
- import { Override } from '../../../TypeHelpers';
4
- import {
5
- TextareaHTMLAttributes,
6
- useCallback,
7
- KeyboardEvent,
8
- ChangeEvent,
9
- CSSProperties, useRef, ForwardedRef
10
- } from 'react';
11
- import { OptionalListener, useListenerWithExtractedProps } from '../../Hooks/useListener';
12
- import styles from './textarea.scss';
2
+ import { FormError } from '@/Components/FormElements/Error/FormError';
3
+ import { useCallback, useRef } from 'react';
4
+ import { useComposedRef } from '@/Components/Hooks/useComposedRef';
5
+ import { useListenerWithExtractedProps } from '@/Components/Hooks/useListener';
6
+ import { useOnChangeDone } from '@/Components/FormElements/hooks/useOnChangeDone';
7
+ import { withMemo } from '@/helper/withMemo';
13
8
  import classNames from 'classnames';
14
- import { useOnChangeDone } from "../hooks/useOnChangeDone";
15
- import { useComposedRef } from "../../Hooks/useComposedRef";
16
- import { InlineBlock } from "../../Layout/InlineBlock";
17
- import { Text } from "../../Text/Text";
18
- import { withMemo } from "../../../helper/withMemo";
9
+ import styles from '@/Components/FormElements/Textarea/textarea.module.scss';
10
+ import type { CSSProperties, ChangeEvent, ForwardedRef, KeyboardEvent, TextareaHTMLAttributes } from 'react';
11
+ import type { OptionalListener } from '@/Components/Hooks/useListener';
12
+ import type { Override } from '@/TypeHelpers';
13
+ import type { RbmComponentProps } from '@/Components/RbmComponentProps';
19
14
 
20
15
  export type TextareaProps<OnChangeData, OnChangeDoneData> = RbmComponentProps<
21
16
  Override<
@@ -25,29 +20,29 @@ export type TextareaProps<OnChangeData, OnChangeDoneData> = RbmComponentProps<
25
20
  onChangeText?: (newText: string) => void;
26
21
  onEnter?: (newText: string) => void;
27
22
  onEscape?: (newText: string) => void;
28
- textareaStyles?: CSSProperties & Record<`--${string}`, string | number | undefined>,
29
- containerRef?: ForwardedRef<HTMLLabelElement>
30
- ref?: ForwardedRef<HTMLTextAreaElement>
31
- error?: string,
32
- } & OptionalListener<'onChange', OnChangeData>
33
- & OptionalListener<'onChangeDone', OnChangeDoneData>
23
+ textareaStyles?: CSSProperties & Record<`--${string}`, string | number | undefined>;
24
+ containerRef?: ForwardedRef<HTMLLabelElement>;
25
+ ref?: ForwardedRef<HTMLTextAreaElement>;
26
+ error?: string;
27
+ } & OptionalListener<'onChange', OnChangeData> &
28
+ OptionalListener<'onChangeDone', OnChangeDoneData>
34
29
  >
35
30
  >;
36
31
 
37
32
  export const Textarea = withMemo(function Textarea<OnChangeData, OnChangeDoneData>({
38
- label,
39
- className,
40
- style,
41
- onKeyUp,
42
- onChangeText,
43
- onEnter,
44
- onEscape,
45
- textareaStyles,
46
- containerRef,
47
- ref,
48
- error,
49
- ...otherProps
50
- }: TextareaProps<OnChangeData, OnChangeDoneData>) {
33
+ label,
34
+ className,
35
+ style,
36
+ onKeyUp,
37
+ onChangeText,
38
+ onEnter,
39
+ onEscape,
40
+ textareaStyles,
41
+ containerRef,
42
+ ref,
43
+ error,
44
+ ...otherProps
45
+ }: TextareaProps<OnChangeData, OnChangeDoneData>) {
51
46
  // Refs
52
47
  const innerRef = useRef<HTMLTextAreaElement>(null);
53
48
  const refSetter = useComposedRef(ref, innerRef);
@@ -59,11 +54,11 @@ export const Textarea = withMemo(function Textarea<OnChangeData, OnChangeDoneDat
59
54
  // Callbacks
60
55
  const [onChangeWithData, otherPropsWithoutOnchange] = useListenerWithExtractedProps<'onChange', OnChangeData>(
61
56
  'onChange',
62
- otherProps
57
+ otherProps,
63
58
  );
64
59
  const [onChangeDone, otherPropsWithoutData] = useListenerWithExtractedProps<'onChangeDone', OnChangeDoneData>(
65
60
  'onChangeDone',
66
- otherPropsWithoutOnchange
61
+ otherPropsWithoutOnchange,
67
62
  );
68
63
 
69
64
  const onChange = useCallback(
@@ -73,7 +68,7 @@ export const Textarea = withMemo(function Textarea<OnChangeData, OnChangeDoneDat
73
68
  }
74
69
  onChangeWithData(e);
75
70
  },
76
- [onChangeWithData, onChangeText]
71
+ [onChangeWithData, onChangeText],
77
72
  );
78
73
 
79
74
  const realOnKeyPress = useCallback(
@@ -88,24 +83,30 @@ export const Textarea = withMemo(function Textarea<OnChangeData, OnChangeDoneDat
88
83
  onEscape((e.target as HTMLTextAreaElement).value);
89
84
  }
90
85
  },
91
- [onEnter, onEscape, onKeyUp]
86
+ [onEnter, onEscape, onKeyUp],
92
87
  );
93
88
 
94
89
  // Effects
95
90
  useOnChangeDone(onChangeDone, innerRef);
96
91
 
97
-
98
92
  // Other
99
93
 
100
94
  // Render Functions
101
95
 
102
96
  return (
97
+ // The label has a text-area-element. This is okay
98
+ // eslint-disable-next-line jsx-a11y/label-has-associated-control
103
99
  <label className={classNames(styles.container, className)} style={style} ref={containerRef}>
104
100
  {label ? <span className={styles.label}>{label}</span> : null}
105
- <textarea {...otherPropsWithoutData} style={textareaStyles} onKeyUp={realOnKeyPress}
106
- className={styles.textarea} onChange={onChange} ref={refSetter}/>
107
- {error && <InlineBlock className={styles.error}><Text>{error}</Text></InlineBlock>}
101
+ <textarea
102
+ {...otherPropsWithoutData}
103
+ style={textareaStyles}
104
+ onKeyUp={realOnKeyPress}
105
+ className={styles.textarea}
106
+ onChange={onChange}
107
+ ref={refSetter}
108
+ />
109
+ <FormError error={error} />
108
110
  </label>
109
111
  );
110
- }, styles);
111
-
112
+ });
@@ -0,0 +1,34 @@
1
+ @use "../../../scss/vars" as *;
2
+
3
+ @include vars {
4
+ --textarea-background-color: var(--foreground-secondary);
5
+ --textarea-border-color: var(--border-light);
6
+ --textarea-text-color: var(--text-primary);
7
+ }
8
+
9
+ .container {
10
+ width: 100%;
11
+ min-height: 10rem;
12
+ height: 100%;
13
+ display: flex;
14
+ flex-direction: column;
15
+
16
+ .label {
17
+ display: block;
18
+ }
19
+
20
+ textarea {
21
+ flex: 1;
22
+ background-color: var(--textarea-background-color);
23
+ color: var(--textarea-text-color);
24
+ box-shadow: none;
25
+ appearance: none;
26
+ width: 100%;
27
+ height: 100%;
28
+ resize: none;
29
+ outline: none;
30
+ padding: 5px;
31
+ border-radius: 4px;
32
+ border: 1px solid var(--textarea-border-color);
33
+ }
34
+ }
@@ -1,6 +1,10 @@
1
- import { MutableRefObject, useEffect, useRef } from 'react';
1
+ import { useEffect, useRef } from 'react';
2
+ import type { MutableRefObject } from 'react';
2
3
 
3
- export function useOnChangeDone(onChangeDone: (ev: any) => void, ref?: MutableRefObject<HTMLInputElement| HTMLTextAreaElement | null>) {
4
+ export function useOnChangeDone(
5
+ onChangeDone: (ev: any) => void,
6
+ ref?: MutableRefObject<HTMLInputElement | HTMLTextAreaElement | null>,
7
+ ) {
4
8
  const innerRef = useRef<HTMLInputElement>(null);
5
9
  const usedRef = ref ?? innerRef;
6
10
 
@@ -1,10 +1,11 @@
1
1
  import * as React from 'react';
2
- import { ComponentPropsWithoutRef, useCallback, useEffect, useMemo, useRef } from 'react';
3
- import { Override } from '../../TypeHelpers';
4
- import { withMemo } from '../../helper/withMemo';
5
- import { useWindow } from '../../WindowContext/WindowContext';
6
- import { RbmComponentProps } from '../RbmComponentProps';
7
- import { JSX } from "react/jsx-runtime";
2
+ import { JSX } from 'react/jsx-runtime';
3
+ import { useCallback, useEffect, useMemo, useRef } from 'react';
4
+ import { useWindow } from '@/WindowContext/WindowContext';
5
+ import { withMemo } from '@/helper/withMemo';
6
+ import type { ComponentPropsWithoutRef } from 'react';
7
+ import type { Override } from '@/TypeHelpers';
8
+ import type { RbmComponentProps } from '@/Components/RbmComponentProps';
8
9
  import IntrinsicElements = JSX.IntrinsicElements;
9
10
 
10
11
  export type FullScreenProps<AsType extends keyof IntrinsicElements> = RbmComponentProps<
@@ -15,13 +16,13 @@ export type FullScreenProps<AsType extends keyof IntrinsicElements> = RbmCompone
15
16
  >;
16
17
 
17
18
  export const FullScreen = withMemo(function FullScreen<AsTag extends keyof JSX.IntrinsicElements = 'span'>({
18
- children,
19
- as,
20
- fullscreenKey,
21
- onEnterFullscreen,
22
- onLeaveFullscreen,
23
- ...otherProps
24
- }: FullScreenProps<AsTag>) {
19
+ children,
20
+ as,
21
+ fullscreenKey,
22
+ onEnterFullscreen,
23
+ onLeaveFullscreen,
24
+ ...otherProps
25
+ }: FullScreenProps<AsTag>) {
25
26
  // Variables
26
27
 
27
28
  // Refs
@@ -44,7 +45,7 @@ export const FullScreen = withMemo(function FullScreen<AsTag extends keyof JSX.I
44
45
  // @ts-expect-error this is not in the types but it exists
45
46
  document.webkitCancelFullScreen();
46
47
  }
47
- return;
48
+ return;
48
49
  }
49
50
 
50
51
  if ('webkitRequestFullscreen' in document.body) {
@@ -97,9 +98,8 @@ export const FullScreen = withMemo(function FullScreen<AsTag extends keyof JSX.I
97
98
 
98
99
  // Render Functions
99
100
  const element = as ?? 'span';
100
- const props = useMemo(() => ({...otherProps, ref: containerRef}), [otherProps]);
101
+ const props = useMemo(() => ({ ...otherProps, ref: containerRef }), [otherProps]);
101
102
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
102
103
  // @ts-ignore
103
104
  return React.createElement(element, props, children);
104
105
  });
105
-
@@ -1,5 +1,5 @@
1
1
  import { useEffect, useState } from 'react';
2
- import { useWindow } from '../../WindowContext/WindowContext';
2
+ import { useWindow } from '@/WindowContext/WindowContext';
3
3
 
4
4
  export const BreakpointNames = ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'];
5
5
 
@@ -50,17 +50,23 @@ export function useBreakpointSelect<T1, T2, T3, T4, T5, T6>(breakpointValues: [T
50
50
  const size = useBreakpoint();
51
51
 
52
52
  switch (size) {
53
- case Breakpoints.XS:
53
+ case Breakpoints.XS: {
54
54
  return breakpointValues[0];
55
- case Breakpoints.SM:
55
+ }
56
+ case Breakpoints.SM: {
56
57
  return breakpointValues[1];
57
- case Breakpoints.MD:
58
+ }
59
+ case Breakpoints.MD: {
58
60
  return breakpointValues[2];
59
- case Breakpoints.LG:
61
+ }
62
+ case Breakpoints.LG: {
60
63
  return breakpointValues[3];
61
- case Breakpoints.XL:
64
+ }
65
+ case Breakpoints.XL: {
62
66
  return breakpointValues[4];
63
- default:
67
+ }
68
+ default: {
64
69
  return breakpointValues[5];
70
+ }
65
71
  }
66
72
  }
@@ -1,4 +1,4 @@
1
- import React from "react";
1
+ import React from 'react';
2
2
 
3
3
  export function useClientLayoutEffect(...params: Parameters<typeof React.useLayoutEffect>) {
4
4
  if (typeof window !== 'undefined') {
@@ -1,4 +1,5 @@
1
- import { ForwardedRef, useCallback } from 'react';
1
+ import { useCallback } from 'react';
2
+ import type { ForwardedRef } from 'react';
2
3
 
3
4
  export function useComposedRef<RefVal>(...refs: (ForwardedRef<RefVal> | undefined)[]) {
4
5
  return useCallback((val: RefVal | null) => {
@@ -3,7 +3,7 @@ import { useCallback, useState } from 'react';
3
3
  export function useDebounced<Args extends any[]>(
4
4
  callback: (...args: Args) => void | Promise<void>,
5
5
  dependencies: any[],
6
- delay = 100
6
+ delay = 100,
7
7
  ) {
8
8
  const [shared] = useState({ timeout: undefined as undefined | any });
9
9
 
@@ -17,6 +17,6 @@ export function useDebounced<Args extends any[]>(
17
17
  shared.timeout = setTimeout(() => (shared.timeout = undefined), delay);
18
18
  }
19
19
  },
20
- [delay, realCB, shared]
20
+ [delay, realCB, shared],
21
21
  );
22
22
  }
@@ -4,14 +4,13 @@ export function useDelayed<Args extends any[]>(
4
4
  callback: (...args: Args) => void | Promise<void>,
5
5
  dependencies: any[],
6
6
  delay = 100,
7
- maxDelay: number|undefined = undefined
7
+ maxDelay: number | undefined = undefined,
8
8
  ) {
9
9
  const argsRef = useRef<Args | undefined>(undefined);
10
10
  const timeoutRef = useRef<any>(undefined);
11
11
  const mayDelayTimeoutRef = useRef<any>(undefined);
12
12
  const maxDelayTimeout = useRef<any>(undefined);
13
13
 
14
-
15
14
  // eslint-disable-next-line react-hooks/exhaustive-deps
16
15
  const realCB = useCallback(callback, dependencies);
17
16
  const func = useCallback(
@@ -40,7 +39,7 @@ export function useDelayed<Args extends any[]>(
40
39
  }, maxDelay);
41
40
  }
42
41
  },
43
- [delay, maxDelay, realCB]
42
+ [delay, maxDelay, realCB],
44
43
  );
45
44
 
46
45
  return func;
@@ -1,8 +1,8 @@
1
- import { useEffect } from "react";
1
+ import { useEffect } from 'react';
2
2
 
3
- export function useDelayedEffect(effect: () => void|(() => void), dependencies: any[], delay = 100){
3
+ export function useDelayedEffect(effect: () => void | (() => void), dependencies: any[], delay = 100) {
4
4
  useEffect(() => {
5
- let cleanup: (() => void)|void | undefined;
5
+ let cleanup: (() => void) | void | undefined;
6
6
  const timeout = setTimeout(() => {
7
7
  cleanup = effect();
8
8
  }, delay);
@@ -1,18 +1,26 @@
1
- import { useCallback, useState } from "react";
2
- import { useDelayed } from "./useDelayed";
1
+ import { useCallback, useState } from 'react';
2
+ import { useDelayed } from '@/Components/Hooks/useDelayed';
3
3
 
4
4
  export function useDelayedState<T>(initialState: T | (() => T), delay = 100, maxDelay: number | undefined = undefined) {
5
5
  const [immediateState, setImmediateState] = useState(initialState);
6
6
  const [state, setState] = useState(immediateState);
7
7
 
8
- const setDelayedState = useDelayed((newState: (T)) => {
9
- setState(newState);
10
- }, [], delay, maxDelay);
8
+ const setDelayedState = useDelayed(
9
+ (newState: T) => {
10
+ setState(newState);
11
+ },
12
+ [],
13
+ delay,
14
+ maxDelay,
15
+ );
11
16
 
12
- const setValue = useCallback((newValue: (T)) => {
13
- setImmediateState(newValue);
14
- setDelayedState(newValue);
15
- }, [setDelayedState]);
17
+ const setValue = useCallback(
18
+ (newValue: T) => {
19
+ setImmediateState(newValue);
20
+ setDelayedState(newValue);
21
+ },
22
+ [setDelayedState],
23
+ );
16
24
 
17
- return {state, immediateState, setState: setValue};
25
+ return { state, immediateState, setState: setValue };
18
26
  }
@@ -1,4 +1,5 @@
1
- import { MutableRefObject, useEffect, useState } from 'react';
1
+ import { useEffect, useState } from 'react';
2
+ import type { MutableRefObject } from 'react';
2
3
 
3
4
  export const useInViewport = (element: MutableRefObject<Element | null>, rootMargin = '0px') => {
4
5
  const [isVisible, setState] = useState(false);
@@ -13,7 +14,7 @@ export const useInViewport = (element: MutableRefObject<Element | null>, rootMar
13
14
  ([entry]) => {
14
15
  setState(entry.isIntersecting);
15
16
  },
16
- { rootMargin }
17
+ { rootMargin },
17
18
  );
18
19
  observer.observe(savedElement);
19
20
  return () => observer.unobserve(savedElement);
@@ -1,5 +1,5 @@
1
1
  import { useEffect, useState } from 'react';
2
- import { useWindow } from '../../WindowContext/WindowContext';
2
+ import { useWindow } from '@/WindowContext/WindowContext';
3
3
 
4
4
  function isFormElement(element: EventTarget | null) {
5
5
  return (
@@ -13,7 +13,7 @@ export function useKeyListener(
13
13
  key: KeyboardEvent['key'],
14
14
  listener: (e: KeyboardEvent) => void,
15
15
  dependencies: any[] = [],
16
- ignoreFormElements = true
16
+ ignoreFormElements = true,
17
17
  ) {
18
18
  const window = useWindow();
19
19
 
@@ -34,12 +34,15 @@ export function useKeyUpListener(
34
34
  key: KeyboardEvent['key'],
35
35
  listener: (e: KeyboardEvent) => void,
36
36
  dependencies: any[] = [],
37
- ignoreFormElements = true
37
+ ignoreFormElements = true,
38
38
  ) {
39
39
  useEffect(() => {
40
40
  const lowercaseKey = key.toLowerCase();
41
41
  const keyListener = (e: KeyboardEvent) => {
42
- if ((e.key === "Meta" || e.key.toLowerCase() === lowercaseKey) && (!ignoreFormElements || !isFormElement(e.target))) {
42
+ if (
43
+ (e.key === 'Meta' || e.key.toLowerCase() === lowercaseKey) &&
44
+ (!ignoreFormElements || !isFormElement(e.target))
45
+ ) {
43
46
  listener(e);
44
47
  }
45
48
  };
@@ -60,7 +63,7 @@ export function useKeyPressed(key: KeyboardEvent['key'], ignoreFormElements = tr
60
63
  }
61
64
  },
62
65
  [isPressed],
63
- ignoreFormElements
66
+ ignoreFormElements,
64
67
  );
65
68
  useKeyUpListener(
66
69
  key,
@@ -71,7 +74,7 @@ export function useKeyPressed(key: KeyboardEvent['key'], ignoreFormElements = tr
71
74
  }
72
75
  },
73
76
  [],
74
- false
77
+ false,
75
78
  );
76
79
  return isPressed;
77
80
  }