react-miui 0.28.3 → 0.30.0

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 (949) hide show
  1. package/.storybook/main.ts +14 -14
  2. package/.storybook/preview.tsx +17 -14
  3. package/CHANGELOG.md +27 -0
  4. package/README.md +1 -1
  5. package/assets/tailspin.svg +32 -0
  6. package/dist/components/form/Checkbox.d.ts +8 -5
  7. package/dist/components/form/Checkbox.d.ts.map +1 -1
  8. package/dist/components/form/Checkbox.js +10 -4
  9. package/dist/components/form/Checkbox.js.map +1 -1
  10. package/dist/components/form/Checkbox.styled.js +1 -1
  11. package/dist/components/form/Checkbox.styled.js.map +1 -1
  12. package/dist/components/form/ColorPicker.d.ts +5 -3
  13. package/dist/components/form/ColorPicker.d.ts.map +1 -1
  14. package/dist/components/form/ColorPicker.js +8 -4
  15. package/dist/components/form/ColorPicker.js.map +1 -1
  16. package/dist/components/form/ColorPicker.styled.js +1 -1
  17. package/dist/components/form/ColorPicker.styled.js.map +1 -1
  18. package/dist/components/form/Label.d.ts +97 -6
  19. package/dist/components/form/Label.d.ts.map +1 -1
  20. package/dist/components/form/Label.js +42 -8
  21. package/dist/components/form/Label.js.map +1 -1
  22. package/dist/components/form/Select.d.ts +5 -1
  23. package/dist/components/form/Select.d.ts.map +1 -1
  24. package/dist/components/form/Select.js +1 -1
  25. package/dist/components/form/Select.js.map +1 -1
  26. package/dist/components/form/Toggle.d.ts +100 -5
  27. package/dist/components/form/Toggle.d.ts.map +1 -1
  28. package/dist/components/form/Toggle.js +8 -4
  29. package/dist/components/form/Toggle.js.map +1 -1
  30. package/dist/components/form/choice/Choice.d.ts +5 -4
  31. package/dist/components/form/choice/Choice.d.ts.map +1 -1
  32. package/dist/components/form/choice/Choice.js +42 -8
  33. package/dist/components/form/choice/Choice.js.map +1 -1
  34. package/dist/components/form/choice/ChoiceItem.d.ts +5 -1
  35. package/dist/components/form/choice/ChoiceItem.d.ts.map +1 -1
  36. package/dist/components/form/choice/ChoiceItem.js +3 -1
  37. package/dist/components/form/choice/ChoiceItem.js.map +1 -1
  38. package/dist/components/form/choice/ChoiceItem.styled.d.ts +85 -0
  39. package/dist/components/form/choice/ChoiceItem.styled.d.ts.map +1 -0
  40. package/dist/components/form/choice/ChoiceItem.styled.js +9 -0
  41. package/dist/components/form/choice/ChoiceItem.styled.js.map +1 -0
  42. package/dist/components/form/input/Input.css.d.ts +16 -16
  43. package/dist/components/form/input/Input.css.d.ts.map +1 -1
  44. package/dist/components/form/input/Input.css.js.map +1 -1
  45. package/dist/components/form/input/Input.d.ts +1 -1
  46. package/dist/components/form/input/Input.d.ts.map +1 -1
  47. package/dist/components/form/input/Input.js.map +1 -1
  48. package/dist/components/form/textarea/TextArea.d.ts +4 -2
  49. package/dist/components/form/textarea/TextArea.d.ts.map +1 -1
  50. package/dist/components/form/textarea/TextArea.js +5 -3
  51. package/dist/components/form/textarea/TextArea.js.map +1 -1
  52. package/dist/components/icons/Battery.js +2 -2
  53. package/dist/components/icons/Battery.js.map +1 -1
  54. package/dist/components/icons/Checkmark.js +1 -1
  55. package/dist/components/icons/Checkmark.js.map +1 -1
  56. package/dist/components/icons/Config.js +1 -1
  57. package/dist/components/icons/Config.js.map +1 -1
  58. package/dist/components/icons/Dots.js +1 -1
  59. package/dist/components/icons/Dots.js.map +1 -1
  60. package/dist/components/icons/Heart.js +1 -1
  61. package/dist/components/icons/Heart.js.map +1 -1
  62. package/dist/components/icons/Trash.js +1 -1
  63. package/dist/components/icons/Trash.js.map +1 -1
  64. package/dist/components/layout/card/Card.d.ts +5 -9
  65. package/dist/components/layout/card/Card.d.ts.map +1 -1
  66. package/dist/components/layout/card/Card.js +2 -15
  67. package/dist/components/layout/card/Card.js.map +1 -1
  68. package/dist/components/layout/card/Card.styled.d.ts +87 -0
  69. package/dist/components/layout/card/Card.styled.d.ts.map +1 -0
  70. package/dist/components/layout/card/Card.styled.js +23 -0
  71. package/dist/components/layout/card/Card.styled.js.map +1 -0
  72. package/dist/components/layout/header/Header.d.ts +7 -5
  73. package/dist/components/layout/header/Header.d.ts.map +1 -1
  74. package/dist/components/layout/header/Header.js +41 -10
  75. package/dist/components/layout/header/Header.js.map +1 -1
  76. package/dist/components/layout/header/HeaderIconAction.d.ts.map +1 -1
  77. package/dist/components/layout/header/HeaderIconAction.js.map +1 -1
  78. package/dist/components/layout/header/HeaderIconAction.styled.js +1 -1
  79. package/dist/components/layout/header/HeaderIconAction.styled.js.map +1 -1
  80. package/dist/components/layout/header/StickyHeader.d.ts +1 -0
  81. package/dist/components/layout/header/StickyHeader.d.ts.map +1 -1
  82. package/dist/components/layout/header/StickyHeader.js +1 -1
  83. package/dist/components/layout/header/StickyHeader.js.map +1 -1
  84. package/dist/components/layout/section/SearchContainer.d.ts +83 -6
  85. package/dist/components/layout/section/SearchContainer.d.ts.map +1 -1
  86. package/dist/components/layout/section/SearchContainer.js +2 -9
  87. package/dist/components/layout/section/SearchContainer.js.map +1 -1
  88. package/dist/components/layout/section/Section.d.ts +86 -7
  89. package/dist/components/layout/section/Section.d.ts.map +1 -1
  90. package/dist/components/layout/section/Section.js +4 -2
  91. package/dist/components/layout/section/Section.js.map +1 -1
  92. package/dist/components/native/index.d.ts.map +1 -1
  93. package/dist/components/native/index.js +3 -1
  94. package/dist/components/native/index.js.map +1 -1
  95. package/dist/components/ui/action/Action.js.map +1 -1
  96. package/dist/components/ui/action/EqualActions.d.ts +4 -3
  97. package/dist/components/ui/action/EqualActions.d.ts.map +1 -1
  98. package/dist/components/ui/action/EqualActions.js +41 -10
  99. package/dist/components/ui/action/EqualActions.js.map +1 -1
  100. package/dist/components/ui/action/EqualActions.styled.d.ts +87 -0
  101. package/dist/components/ui/action/EqualActions.styled.d.ts.map +1 -0
  102. package/dist/components/ui/action/EqualActions.styled.js +20 -0
  103. package/dist/components/ui/action/EqualActions.styled.js.map +1 -0
  104. package/dist/components/ui/directionPad/Button.d.ts +6 -4
  105. package/dist/components/ui/directionPad/Button.d.ts.map +1 -1
  106. package/dist/components/ui/directionPad/Button.js +44 -10
  107. package/dist/components/ui/directionPad/Button.js.map +1 -1
  108. package/dist/components/ui/directionPad/Button.styled.d.ts +168 -0
  109. package/dist/components/ui/directionPad/Button.styled.d.ts.map +1 -0
  110. package/dist/components/ui/directionPad/Button.styled.js +24 -0
  111. package/dist/components/ui/directionPad/Button.styled.js.map +1 -0
  112. package/dist/components/ui/directionPad/Middle.d.ts +4 -3
  113. package/dist/components/ui/directionPad/Middle.d.ts.map +1 -1
  114. package/dist/components/ui/directionPad/Middle.js +40 -8
  115. package/dist/components/ui/directionPad/Middle.js.map +1 -1
  116. package/dist/components/ui/directionPad/Middle.styled.d.ts +85 -0
  117. package/dist/components/ui/directionPad/Middle.styled.d.ts.map +1 -0
  118. package/dist/components/ui/directionPad/Middle.styled.js +19 -0
  119. package/dist/components/ui/directionPad/Middle.styled.js.map +1 -0
  120. package/dist/components/ui/directionPad/Pad.d.ts +9 -4
  121. package/dist/components/ui/directionPad/Pad.d.ts.map +1 -1
  122. package/dist/components/ui/directionPad/Pad.js +51 -13
  123. package/dist/components/ui/directionPad/Pad.js.map +1 -1
  124. package/dist/components/ui/directionPad/Pad.styled.d.ts +168 -0
  125. package/dist/components/ui/directionPad/Pad.styled.d.ts.map +1 -0
  126. package/dist/components/ui/directionPad/Pad.styled.js +21 -0
  127. package/dist/components/ui/directionPad/Pad.styled.js.map +1 -0
  128. package/dist/components/ui/drawer/Drawer.d.ts +7 -18
  129. package/dist/components/ui/drawer/Drawer.d.ts.map +1 -1
  130. package/dist/components/ui/drawer/Drawer.js +38 -56
  131. package/dist/components/ui/drawer/Drawer.js.map +1 -1
  132. package/dist/components/ui/drawer/Drawer.styled.d.ts +168 -0
  133. package/dist/components/ui/drawer/Drawer.styled.d.ts.map +1 -0
  134. package/dist/components/ui/drawer/Drawer.styled.js +21 -0
  135. package/dist/components/ui/drawer/Drawer.styled.js.map +1 -0
  136. package/dist/components/ui/keyValue/KeyValue.d.ts +10 -4
  137. package/dist/components/ui/keyValue/KeyValue.d.ts.map +1 -1
  138. package/dist/components/ui/keyValue/KeyValue.js +64 -22
  139. package/dist/components/ui/keyValue/KeyValue.js.map +1 -1
  140. package/dist/components/ui/keyValue/KeyValue.styled.d.ts +503 -0
  141. package/dist/components/ui/keyValue/KeyValue.styled.d.ts.map +1 -0
  142. package/dist/components/ui/keyValue/KeyValue.styled.js +63 -0
  143. package/dist/components/ui/keyValue/KeyValue.styled.js.map +1 -0
  144. package/dist/components/ui/loader/CoveringLoader.d.ts +7 -6
  145. package/dist/components/ui/loader/CoveringLoader.d.ts.map +1 -1
  146. package/dist/components/ui/loader/CoveringLoader.js +97 -39
  147. package/dist/components/ui/loader/CoveringLoader.js.map +1 -1
  148. package/dist/components/ui/loader/FullLoader.d.ts +2 -3
  149. package/dist/components/ui/loader/FullLoader.d.ts.map +1 -1
  150. package/dist/components/ui/loader/FullLoader.js.map +1 -1
  151. package/dist/components/ui/loader/Loader.d.ts +1 -1
  152. package/dist/components/ui/loader/Loader.d.ts.map +1 -1
  153. package/dist/components/ui/loader/Loader.js +8 -47
  154. package/dist/components/ui/loader/Loader.js.map +1 -1
  155. package/dist/components/ui/loader/PopLoader.js +2 -2
  156. package/dist/components/ui/loader/PopLoader.js.map +1 -1
  157. package/dist/components/ui/modal/ModalButtons.styled.d.ts +87 -89
  158. package/dist/components/ui/modal/ModalButtons.styled.d.ts.map +1 -1
  159. package/dist/components/ui/modal/ModalButtons.styled.js +4 -2
  160. package/dist/components/ui/modal/ModalButtons.styled.js.map +1 -1
  161. package/dist/components/ui/pop/OnButtonClick.js +1 -1
  162. package/dist/components/ui/pop/OnButtonClick.js.map +1 -1
  163. package/dist/components/ui/pop/Pop.d.ts.map +1 -1
  164. package/dist/components/ui/pop/Pop.js +4 -0
  165. package/dist/components/ui/pop/Pop.js.map +1 -1
  166. package/dist/components/ui/pop/Pop.styled.js +1 -1
  167. package/dist/components/ui/pop/Pop.styled.js.map +1 -1
  168. package/dist/components/ui/progress/Progress.d.ts +6 -4
  169. package/dist/components/ui/progress/Progress.d.ts.map +1 -1
  170. package/dist/components/ui/progress/Progress.js +45 -8
  171. package/dist/components/ui/progress/Progress.js.map +1 -1
  172. package/dist/components/ui/stats/Stats.d.ts +14 -8
  173. package/dist/components/ui/stats/Stats.d.ts.map +1 -1
  174. package/dist/components/ui/stats/Stats.js +64 -16
  175. package/dist/components/ui/stats/Stats.js.map +1 -1
  176. package/dist/components/ui/stats/Stats.styled.d.ts +419 -0
  177. package/dist/components/ui/stats/Stats.styled.d.ts.map +1 -0
  178. package/dist/components/ui/stats/Stats.styled.js +56 -0
  179. package/dist/components/ui/stats/Stats.styled.js.map +1 -0
  180. package/dist/components/ui/tabs/Item.d.ts +8 -4
  181. package/dist/components/ui/tabs/Item.d.ts.map +1 -1
  182. package/dist/components/ui/tabs/Item.js +5 -10
  183. package/dist/components/ui/tabs/Item.js.map +1 -1
  184. package/dist/components/ui/tabs/Item.styled.d.ts +4 -0
  185. package/dist/components/ui/tabs/Item.styled.d.ts.map +1 -0
  186. package/dist/components/ui/tabs/Item.styled.js +20 -0
  187. package/dist/components/ui/tabs/Item.styled.js.map +1 -0
  188. package/dist/components/ui/tabs/Selector.d.ts +7 -5
  189. package/dist/components/ui/tabs/Selector.d.ts.map +1 -1
  190. package/dist/components/ui/tabs/Selector.js +11 -11
  191. package/dist/components/ui/tabs/Selector.js.map +1 -1
  192. package/dist/components/ui/tabs/Selector.styled.d.ts +2 -0
  193. package/dist/components/ui/tabs/Selector.styled.d.ts.map +1 -0
  194. package/dist/components/ui/tabs/Selector.styled.js +14 -0
  195. package/dist/components/ui/tabs/Selector.styled.js.map +1 -0
  196. package/dist/components/ui/toaster/Toaster.d.ts.map +1 -1
  197. package/dist/components/ui/toaster/Toaster.js +1 -0
  198. package/dist/components/ui/toaster/Toaster.js.map +1 -1
  199. package/dist/components/utils/Gap.d.ts +87 -0
  200. package/dist/components/utils/Gap.d.ts.map +1 -0
  201. package/dist/components/utils/Gap.js +18 -0
  202. package/dist/components/utils/Gap.js.map +1 -0
  203. package/dist/index.d.ts +2 -0
  204. package/dist/index.d.ts.map +1 -1
  205. package/dist/index.js +4 -1
  206. package/dist/index.js.map +1 -1
  207. package/dist/scrollbars.css.d.ts.map +1 -1
  208. package/dist/scrollbars.css.js +2 -2
  209. package/dist/scrollbars.css.js.map +1 -1
  210. package/dist/theme.css-global.d.ts +3 -0
  211. package/dist/theme.css-global.d.ts.map +1 -0
  212. package/dist/theme.css-global.js +19 -0
  213. package/dist/theme.css-global.js.map +1 -0
  214. package/dist/theme.css-reset.d.ts.map +1 -1
  215. package/dist/theme.css-reset.js +2 -4
  216. package/dist/theme.css-reset.js.map +1 -1
  217. package/dist/theme.d.ts +2 -2
  218. package/dist/utils/index.d.ts +1 -1
  219. package/dist/utils/index.d.ts.map +1 -1
  220. package/dist/utils/index.js +1 -1
  221. package/dist/utils/index.js.map +1 -1
  222. package/dist/utils/useTailSpin.d.ts +8 -0
  223. package/dist/utils/useTailSpin.d.ts.map +1 -0
  224. package/dist/utils/useTailSpin.js +20 -0
  225. package/dist/utils/useTailSpin.js.map +1 -0
  226. package/docs/assets/hierarchy.js +1 -0
  227. package/docs/assets/highlight.css +21 -0
  228. package/docs/assets/icons.js +18 -0
  229. package/docs/assets/icons.svg +1 -0
  230. package/docs/assets/main.js +5 -3
  231. package/docs/assets/navigation.js +1 -0
  232. package/docs/assets/search.js +1 -1
  233. package/docs/assets/style.css +1467 -1136
  234. package/docs/classes/index.Pop.html +123 -0
  235. package/docs/classes/index.ToasterProvider.html +120 -0
  236. package/docs/documents/Test.html +2 -0
  237. package/docs/enums/index.ICON.html +10 -0
  238. package/docs/functions/index.Action.html +31 -0
  239. package/docs/functions/index.Button.html +16 -0
  240. package/docs/functions/index.Card.html +15 -0
  241. package/docs/functions/index.Checkbox.html +11 -0
  242. package/docs/functions/index.Choice.html +10 -0
  243. package/docs/functions/index.ColorPicker.html +11 -0
  244. package/docs/functions/index.CoveringLoader.html +21 -0
  245. package/docs/functions/index.DirectionPad.html +10 -0
  246. package/docs/functions/index.Drawer.html +10 -0
  247. package/docs/functions/index.EqualActions.html +10 -0
  248. package/docs/functions/index.FullLoader.html +30 -0
  249. package/docs/functions/index.Gap.html +15 -0
  250. package/docs/functions/index.HandleEsc.html +29 -0
  251. package/docs/functions/index.Header.html +14 -0
  252. package/docs/functions/index.HeaderIconAction.html +31 -0
  253. package/docs/functions/index.Icon-1.html +29 -0
  254. package/docs/functions/index.If.html +29 -0
  255. package/docs/functions/index.Input.html +1 -0
  256. package/docs/functions/index.KeyValue.html +10 -0
  257. package/docs/functions/index.Label.html +10 -0
  258. package/docs/functions/index.Line.html +16 -0
  259. package/docs/functions/index.List.html +40 -0
  260. package/docs/functions/index.Loader.html +32 -0
  261. package/docs/functions/index.Loading.html +34 -0
  262. package/docs/functions/index.Message.html +16 -0
  263. package/docs/functions/index.Modal.html +30 -0
  264. package/docs/functions/index.ModalButtons.html +16 -0
  265. package/docs/functions/index.PopLoader.html +32 -0
  266. package/docs/functions/index.PopOption.html +29 -0
  267. package/docs/functions/index.Progress.html +11 -0
  268. package/docs/functions/index.SearchContainer.html +15 -0
  269. package/docs/functions/index.Section.html +19 -0
  270. package/docs/functions/index.Select.html +15 -0
  271. package/docs/functions/index.Selector.html +10 -0
  272. package/docs/functions/index.Spacer.html +15 -0
  273. package/docs/functions/index.Stats.html +10 -0
  274. package/docs/functions/index.StickyHeader.html +15 -0
  275. package/docs/functions/index.Table.html +15 -0
  276. package/docs/functions/index.TextArea.html +10 -0
  277. package/docs/functions/index.Toggle.html +13 -0
  278. package/docs/functions/index.ToolButton.html +16 -0
  279. package/docs/functions/index.borderPxToRem.html +1 -0
  280. package/docs/functions/index.createTheme.html +1 -0
  281. package/docs/functions/index.css.html +1 -0
  282. package/docs/functions/index.dimensionsPxToRem.html +1 -0
  283. package/docs/functions/index.fontPxToRem.html +1 -0
  284. package/docs/functions/index.getCssText.html +1 -0
  285. package/docs/functions/index.globalCss.html +3 -0
  286. package/docs/functions/index.injectGlobalStyles.html +1 -0
  287. package/docs/functions/index.keyframes.html +1 -0
  288. package/docs/functions/index.pxToRem.html +1 -0
  289. package/docs/functions/index.styled.html +1 -0
  290. package/docs/functions/index.useToaster.html +1 -0
  291. package/docs/index.html +6 -120
  292. package/docs/interfaces/index.IconProps.html +3 -0
  293. package/docs/interfaces/index.InputCustomProps.html +7 -0
  294. package/docs/interfaces/index.LoaderProps.html +9 -0
  295. package/docs/interfaces/index.StickyHeaderProps.html +9 -0
  296. package/docs/modules/index.html +1 -0
  297. package/docs/modules.html +1 -213
  298. package/docs/types/index.ActionProps.html +1 -0
  299. package/docs/types/index.CardProps.html +1 -0
  300. package/docs/types/index.CheckboxProps.html +2 -0
  301. package/docs/types/index.ChoiceProps.html +1 -0
  302. package/docs/types/index.ColorPickerProps.html +1 -0
  303. package/docs/types/index.DirectionPadProps.html +1 -0
  304. package/docs/types/index.DrawerProps.html +1 -0
  305. package/docs/types/index.EqualActionsProps.html +1 -0
  306. package/docs/types/index.HeaderProps.html +1 -0
  307. package/docs/types/index.InputProps.html +1 -0
  308. package/docs/types/index.KeyValueProps.html +1 -0
  309. package/docs/types/index.LabelProps.html +1 -0
  310. package/docs/types/index.OverwriteProps.html +1 -0
  311. package/docs/types/index.ProgressProps.html +5 -0
  312. package/docs/types/index.SelectProps.html +1 -0
  313. package/docs/types/index.SelectorProps.html +1 -0
  314. package/docs/types/index.Stat.html +1 -0
  315. package/docs/types/index.StatsProps.html +1 -0
  316. package/docs/types/index.TextAreaProps.html +1 -0
  317. package/docs/types/index.ThemeCSS.html +1 -0
  318. package/docs/types/index.ToggleProps.html +4 -0
  319. package/docs/variables/index.CheckboxCheckmarkWrapperSelector.html +1 -0
  320. package/docs/variables/index.CheckboxTextLabelSelector.html +1 -0
  321. package/docs/variables/index.ChoiceItemSelector.html +1 -0
  322. package/docs/variables/index.ColorPickerColorDisplaySelector.html +1 -0
  323. package/docs/variables/index.DirectionPadButtonDotSelector.html +1 -0
  324. package/docs/variables/index.DirectionPadButtonSelector.html +1 -0
  325. package/docs/variables/index.DirectionPadLineSelector.html +1 -0
  326. package/docs/variables/index.DirectionPadMiddleSelector.html +1 -0
  327. package/docs/variables/index.DrawerContentSelector.html +1 -0
  328. package/docs/variables/index.HeaderAfterSelector.html +1 -0
  329. package/docs/variables/index.HeaderBeforeSelector.html +1 -0
  330. package/docs/variables/index.HeaderContentsSelector.html +1 -0
  331. package/docs/variables/index.KeyValueIconSelector.html +1 -0
  332. package/docs/variables/index.KeyValueItemSelector.html +1 -0
  333. package/docs/variables/index.KeyValueKeySelector.html +1 -0
  334. package/docs/variables/index.KeyValuePairSelector.html +1 -0
  335. package/docs/variables/index.KeyValueValueSelector.html +1 -0
  336. package/docs/variables/index.LabelTextSelector.html +1 -0
  337. package/docs/variables/index.ProgressBackgroundSelector.html +1 -0
  338. package/docs/variables/index.ProgressValueSelector.html +1 -0
  339. package/docs/variables/index.SelectorItemSelector.html +1 -0
  340. package/docs/variables/index.StatsItemSelector.html +1 -0
  341. package/docs/variables/index.StatsLabelSelector.html +1 -0
  342. package/docs/variables/index.StatsSeparatorSelector.html +1 -0
  343. package/docs/variables/index.StatsValueSelector.html +1 -0
  344. package/docs/variables/index.ToggleStyledToggleSelector.html +1 -0
  345. package/docs/variables/index.config.html +1 -0
  346. package/docs/variables/index.cssReset.html +2 -0
  347. package/docs/variables/index.miuiScrollbars.html +1 -0
  348. package/docs/variables/index.theme.html +1 -0
  349. package/esm/components/form/Checkbox.d.ts +8 -5
  350. package/esm/components/form/Checkbox.d.ts.map +1 -1
  351. package/esm/components/form/Checkbox.js +9 -5
  352. package/esm/components/form/Checkbox.js.map +1 -1
  353. package/esm/components/form/Checkbox.stories.d.ts +1 -1
  354. package/esm/components/form/Checkbox.stories.d.ts.map +1 -1
  355. package/esm/components/form/Checkbox.styled.js +1 -1
  356. package/esm/components/form/Checkbox.styled.js.map +1 -1
  357. package/esm/components/form/ColorPicker.d.ts +5 -3
  358. package/esm/components/form/ColorPicker.d.ts.map +1 -1
  359. package/esm/components/form/ColorPicker.js +8 -5
  360. package/esm/components/form/ColorPicker.js.map +1 -1
  361. package/esm/components/form/ColorPicker.stories.d.ts +1 -1
  362. package/esm/components/form/ColorPicker.stories.d.ts.map +1 -1
  363. package/esm/components/form/ColorPicker.styled.js +1 -1
  364. package/esm/components/form/ColorPicker.styled.js.map +1 -1
  365. package/esm/components/form/Label.d.ts +97 -6
  366. package/esm/components/form/Label.d.ts.map +1 -1
  367. package/esm/components/form/Label.js +8 -5
  368. package/esm/components/form/Label.js.map +1 -1
  369. package/esm/components/form/Label.stories.d.ts +1 -1
  370. package/esm/components/form/Label.stories.d.ts.map +1 -1
  371. package/esm/components/form/Select.d.ts +5 -1
  372. package/esm/components/form/Select.d.ts.map +1 -1
  373. package/esm/components/form/Select.js +2 -1
  374. package/esm/components/form/Select.js.map +1 -1
  375. package/esm/components/form/Select.stories.d.ts +1 -1
  376. package/esm/components/form/Select.stories.d.ts.map +1 -1
  377. package/esm/components/form/Toggle.d.ts +100 -5
  378. package/esm/components/form/Toggle.d.ts.map +1 -1
  379. package/esm/components/form/Toggle.js +8 -5
  380. package/esm/components/form/Toggle.js.map +1 -1
  381. package/esm/components/form/Toggle.stories.d.ts +1 -1
  382. package/esm/components/form/Toggle.stories.d.ts.map +1 -1
  383. package/esm/components/form/choice/Choice.d.ts +5 -4
  384. package/esm/components/form/choice/Choice.d.ts.map +1 -1
  385. package/esm/components/form/choice/Choice.js +8 -5
  386. package/esm/components/form/choice/Choice.js.map +1 -1
  387. package/esm/components/form/choice/Choice.stories.d.ts +1 -1
  388. package/esm/components/form/choice/Choice.stories.d.ts.map +1 -1
  389. package/esm/components/form/choice/ChoiceItem.d.ts +5 -1
  390. package/esm/components/form/choice/ChoiceItem.d.ts.map +1 -1
  391. package/esm/components/form/choice/ChoiceItem.js +3 -1
  392. package/esm/components/form/choice/ChoiceItem.js.map +1 -1
  393. package/esm/components/form/choice/ChoiceItem.styled.d.ts +85 -0
  394. package/esm/components/form/choice/ChoiceItem.styled.d.ts.map +1 -0
  395. package/esm/components/form/choice/ChoiceItem.styled.js +6 -0
  396. package/esm/components/form/choice/ChoiceItem.styled.js.map +1 -0
  397. package/esm/components/form/input/Input.css.d.ts +16 -16
  398. package/esm/components/form/input/Input.css.d.ts.map +1 -1
  399. package/esm/components/form/input/Input.css.js.map +1 -1
  400. package/esm/components/form/input/Input.d.ts +1 -1
  401. package/esm/components/form/input/Input.d.ts.map +1 -1
  402. package/esm/components/form/input/Input.js.map +1 -1
  403. package/esm/components/form/input/Input.stories.d.ts +1 -1
  404. package/esm/components/form/input/Input.stories.d.ts.map +1 -1
  405. package/esm/components/form/input/Input.stories.js +3 -2
  406. package/esm/components/form/input/Input.stories.js.map +1 -1
  407. package/esm/components/form/textarea/TextArea.d.ts +4 -2
  408. package/esm/components/form/textarea/TextArea.d.ts.map +1 -1
  409. package/esm/components/form/textarea/TextArea.js +7 -5
  410. package/esm/components/form/textarea/TextArea.js.map +1 -1
  411. package/esm/components/form/textarea/TextArea.stories.d.ts +1 -1
  412. package/esm/components/form/textarea/TextArea.stories.d.ts.map +1 -1
  413. package/esm/components/icons/Battery.js +2 -2
  414. package/esm/components/icons/Battery.js.map +1 -1
  415. package/esm/components/icons/Checkmark.js +1 -1
  416. package/esm/components/icons/Checkmark.js.map +1 -1
  417. package/esm/components/icons/Config.js +1 -1
  418. package/esm/components/icons/Config.js.map +1 -1
  419. package/esm/components/icons/Dots.js +1 -1
  420. package/esm/components/icons/Dots.js.map +1 -1
  421. package/esm/components/icons/Heart.js +1 -1
  422. package/esm/components/icons/Heart.js.map +1 -1
  423. package/esm/components/icons/Icon.stories.d.ts +10 -0
  424. package/esm/components/icons/Icon.stories.d.ts.map +1 -0
  425. package/esm/components/icons/Icon.stories.js +49 -0
  426. package/esm/components/icons/Icon.stories.js.map +1 -0
  427. package/esm/components/icons/Trash.js +1 -1
  428. package/esm/components/icons/Trash.js.map +1 -1
  429. package/esm/components/layout/card/Card.d.ts +5 -9
  430. package/esm/components/layout/card/Card.d.ts.map +1 -1
  431. package/esm/components/layout/card/Card.js +2 -12
  432. package/esm/components/layout/card/Card.js.map +1 -1
  433. package/esm/components/layout/card/Card.stories.d.ts +11 -0
  434. package/esm/components/layout/card/Card.stories.d.ts.map +1 -0
  435. package/esm/components/layout/card/Card.stories.js +39 -0
  436. package/esm/components/layout/card/Card.stories.js.map +1 -0
  437. package/esm/components/layout/card/Card.styled.d.ts +87 -0
  438. package/esm/components/layout/card/Card.styled.d.ts.map +1 -0
  439. package/esm/components/layout/card/Card.styled.js +20 -0
  440. package/esm/components/layout/card/Card.styled.js.map +1 -0
  441. package/esm/components/layout/header/Header.d.ts +7 -5
  442. package/esm/components/layout/header/Header.d.ts.map +1 -1
  443. package/esm/components/layout/header/Header.js +8 -7
  444. package/esm/components/layout/header/Header.js.map +1 -1
  445. package/esm/components/layout/header/Header.stories.d.ts +1 -1
  446. package/esm/components/layout/header/Header.stories.d.ts.map +1 -1
  447. package/esm/components/layout/header/HeaderIconAction.d.ts.map +1 -1
  448. package/esm/components/layout/header/HeaderIconAction.js.map +1 -1
  449. package/esm/components/layout/header/HeaderIconAction.stories.d.ts +1 -1
  450. package/esm/components/layout/header/HeaderIconAction.stories.d.ts.map +1 -1
  451. package/esm/components/layout/header/HeaderIconAction.styled.js +2 -2
  452. package/esm/components/layout/header/HeaderIconAction.styled.js.map +1 -1
  453. package/esm/components/layout/header/StickyHeader.d.ts +1 -0
  454. package/esm/components/layout/header/StickyHeader.d.ts.map +1 -1
  455. package/esm/components/layout/header/StickyHeader.js +1 -1
  456. package/esm/components/layout/header/StickyHeader.js.map +1 -1
  457. package/esm/components/layout/header/StickyHeader.stories.d.ts +1 -1
  458. package/esm/components/layout/header/StickyHeader.stories.d.ts.map +1 -1
  459. package/esm/components/layout/list/Header.stories.d.ts +1 -1
  460. package/esm/components/layout/list/Header.stories.d.ts.map +1 -1
  461. package/esm/components/layout/list/Item.stories.d.ts +1 -1
  462. package/esm/components/layout/list/Item.stories.d.ts.map +1 -1
  463. package/esm/components/layout/list/Item.stories.js +0 -2
  464. package/esm/components/layout/list/Item.stories.js.map +1 -1
  465. package/esm/components/layout/list/Label.stories.d.ts +1 -1
  466. package/esm/components/layout/list/Label.stories.d.ts.map +1 -1
  467. package/esm/components/layout/list/List.stories.d.ts +1 -1
  468. package/esm/components/layout/list/List.stories.d.ts.map +1 -1
  469. package/esm/components/layout/list/Value.stories.d.ts +1 -1
  470. package/esm/components/layout/list/Value.stories.d.ts.map +1 -1
  471. package/esm/components/layout/section/SearchContainer.d.ts +83 -6
  472. package/esm/components/layout/section/SearchContainer.d.ts.map +1 -1
  473. package/esm/components/layout/section/SearchContainer.js +2 -6
  474. package/esm/components/layout/section/SearchContainer.js.map +1 -1
  475. package/esm/components/layout/section/Section.d.ts +86 -7
  476. package/esm/components/layout/section/Section.d.ts.map +1 -1
  477. package/esm/components/layout/section/Section.js +4 -2
  478. package/esm/components/layout/section/Section.js.map +1 -1
  479. package/esm/components/layout/section/Section.stories.d.ts +1 -1
  480. package/esm/components/layout/section/Section.stories.d.ts.map +1 -1
  481. package/esm/components/layout/table/Table.stories.d.ts +1 -1
  482. package/esm/components/layout/table/Table.stories.d.ts.map +1 -1
  483. package/esm/components/native/index.d.ts.map +1 -1
  484. package/esm/components/native/index.js +3 -1
  485. package/esm/components/native/index.js.map +1 -1
  486. package/esm/components/ui/action/Action.js.map +1 -1
  487. package/esm/components/ui/action/Action.stories.d.ts +1 -1
  488. package/esm/components/ui/action/Action.stories.d.ts.map +1 -1
  489. package/esm/components/ui/action/EqualActions.d.ts +4 -3
  490. package/esm/components/ui/action/EqualActions.d.ts.map +1 -1
  491. package/esm/components/ui/action/EqualActions.js +8 -7
  492. package/esm/components/ui/action/EqualActions.js.map +1 -1
  493. package/esm/components/ui/action/EqualActions.stories.d.ts +10 -0
  494. package/esm/components/ui/action/EqualActions.stories.d.ts.map +1 -0
  495. package/esm/components/ui/action/EqualActions.stories.js +38 -0
  496. package/esm/components/ui/action/EqualActions.stories.js.map +1 -0
  497. package/esm/components/ui/action/EqualActions.styled.d.ts +87 -0
  498. package/esm/components/ui/action/EqualActions.styled.d.ts.map +1 -0
  499. package/esm/components/ui/action/EqualActions.styled.js +17 -0
  500. package/esm/components/ui/action/EqualActions.styled.js.map +1 -0
  501. package/esm/components/ui/button/Button.stories.d.ts +1 -1
  502. package/esm/components/ui/button/Button.stories.d.ts.map +1 -1
  503. package/esm/components/ui/directionPad/Button.d.ts +6 -4
  504. package/esm/components/ui/directionPad/Button.d.ts.map +1 -1
  505. package/esm/components/ui/directionPad/Button.js +10 -7
  506. package/esm/components/ui/directionPad/Button.js.map +1 -1
  507. package/esm/components/ui/directionPad/Button.styled.d.ts +168 -0
  508. package/esm/components/ui/directionPad/Button.styled.d.ts.map +1 -0
  509. package/esm/components/ui/directionPad/Button.styled.js +20 -0
  510. package/esm/components/ui/directionPad/Button.styled.js.map +1 -0
  511. package/esm/components/ui/directionPad/Middle.d.ts +4 -3
  512. package/esm/components/ui/directionPad/Middle.d.ts.map +1 -1
  513. package/esm/components/ui/directionPad/Middle.js +7 -5
  514. package/esm/components/ui/directionPad/Middle.js.map +1 -1
  515. package/esm/components/ui/directionPad/Middle.styled.d.ts +85 -0
  516. package/esm/components/ui/directionPad/Middle.styled.d.ts.map +1 -0
  517. package/esm/components/ui/directionPad/Middle.styled.js +16 -0
  518. package/esm/components/ui/directionPad/Middle.styled.js.map +1 -0
  519. package/esm/components/ui/directionPad/Pad.d.ts +9 -4
  520. package/esm/components/ui/directionPad/Pad.d.ts.map +1 -1
  521. package/esm/components/ui/directionPad/Pad.js +15 -11
  522. package/esm/components/ui/directionPad/Pad.js.map +1 -1
  523. package/esm/components/ui/directionPad/Pad.stories.d.ts +10 -0
  524. package/esm/components/ui/directionPad/Pad.stories.d.ts.map +1 -0
  525. package/esm/components/ui/directionPad/Pad.stories.js +79 -0
  526. package/esm/components/ui/directionPad/Pad.stories.js.map +1 -0
  527. package/esm/components/ui/directionPad/Pad.styled.d.ts +168 -0
  528. package/esm/components/ui/directionPad/Pad.styled.d.ts.map +1 -0
  529. package/esm/components/ui/directionPad/Pad.styled.js +17 -0
  530. package/esm/components/ui/directionPad/Pad.styled.js.map +1 -0
  531. package/esm/components/ui/drawer/Drawer.d.ts +7 -18
  532. package/esm/components/ui/drawer/Drawer.d.ts.map +1 -1
  533. package/esm/components/ui/drawer/Drawer.js +38 -54
  534. package/esm/components/ui/drawer/Drawer.js.map +1 -1
  535. package/esm/components/ui/drawer/Drawer.stories.d.ts +11 -0
  536. package/esm/components/ui/drawer/Drawer.stories.d.ts.map +1 -0
  537. package/esm/components/ui/drawer/Drawer.stories.js +101 -0
  538. package/esm/components/ui/drawer/Drawer.stories.js.map +1 -0
  539. package/esm/components/ui/drawer/Drawer.styled.d.ts +168 -0
  540. package/esm/components/ui/drawer/Drawer.styled.d.ts.map +1 -0
  541. package/esm/components/ui/drawer/Drawer.styled.js +17 -0
  542. package/esm/components/ui/drawer/Drawer.styled.js.map +1 -0
  543. package/esm/components/ui/keyValue/KeyValue.d.ts +10 -4
  544. package/esm/components/ui/keyValue/KeyValue.d.ts.map +1 -1
  545. package/esm/components/ui/keyValue/KeyValue.js +26 -19
  546. package/esm/components/ui/keyValue/KeyValue.js.map +1 -1
  547. package/esm/components/ui/keyValue/KeyValue.stories.d.ts +11 -0
  548. package/esm/components/ui/keyValue/KeyValue.stories.d.ts.map +1 -0
  549. package/esm/components/ui/keyValue/KeyValue.stories.js +98 -0
  550. package/esm/components/ui/keyValue/KeyValue.stories.js.map +1 -0
  551. package/esm/components/ui/keyValue/KeyValue.styled.d.ts +503 -0
  552. package/esm/components/ui/keyValue/KeyValue.styled.d.ts.map +1 -0
  553. package/esm/components/ui/keyValue/KeyValue.styled.js +55 -0
  554. package/esm/components/ui/keyValue/KeyValue.styled.js.map +1 -0
  555. package/esm/components/ui/line/Line.stories.d.ts +1 -1
  556. package/esm/components/ui/line/Line.stories.d.ts.map +1 -1
  557. package/esm/components/ui/loader/CoveringLoader.d.ts +7 -6
  558. package/esm/components/ui/loader/CoveringLoader.d.ts.map +1 -1
  559. package/esm/components/ui/loader/CoveringLoader.js +97 -24
  560. package/esm/components/ui/loader/CoveringLoader.js.map +1 -1
  561. package/esm/components/ui/loader/CoveringLoader.stories.d.ts +1 -1
  562. package/esm/components/ui/loader/CoveringLoader.stories.d.ts.map +1 -1
  563. package/esm/components/ui/loader/CoveringLoader.stories.js +36 -11
  564. package/esm/components/ui/loader/CoveringLoader.stories.js.map +1 -1
  565. package/esm/components/ui/loader/FullLoader.d.ts +2 -3
  566. package/esm/components/ui/loader/FullLoader.d.ts.map +1 -1
  567. package/esm/components/ui/loader/FullLoader.js.map +1 -1
  568. package/esm/components/ui/loader/FullLoader.stories.d.ts +1 -1
  569. package/esm/components/ui/loader/FullLoader.stories.d.ts.map +1 -1
  570. package/esm/components/ui/loader/Loader.d.ts +1 -1
  571. package/esm/components/ui/loader/Loader.d.ts.map +1 -1
  572. package/esm/components/ui/loader/Loader.js +5 -14
  573. package/esm/components/ui/loader/Loader.js.map +1 -1
  574. package/esm/components/ui/loader/Loader.stories.d.ts +1 -1
  575. package/esm/components/ui/loader/Loader.stories.d.ts.map +1 -1
  576. package/esm/components/ui/loader/Loader.stories.js +1 -1
  577. package/esm/components/ui/loader/Loader.stories.js.map +1 -1
  578. package/esm/components/ui/loader/Loading.stories.d.ts +1 -1
  579. package/esm/components/ui/loader/Loading.stories.d.ts.map +1 -1
  580. package/esm/components/ui/loader/PopLoader.js +2 -2
  581. package/esm/components/ui/loader/PopLoader.js.map +1 -1
  582. package/esm/components/ui/loader/PopLoader.stories.d.ts +1 -1
  583. package/esm/components/ui/loader/PopLoader.stories.d.ts.map +1 -1
  584. package/esm/components/ui/message/Message.stories.d.ts +1 -1
  585. package/esm/components/ui/message/Message.stories.d.ts.map +1 -1
  586. package/esm/components/ui/modal/Modal.stories.d.ts +1 -1
  587. package/esm/components/ui/modal/Modal.stories.d.ts.map +1 -1
  588. package/esm/components/ui/modal/ModalButtons.stories.d.ts +1 -1
  589. package/esm/components/ui/modal/ModalButtons.stories.d.ts.map +1 -1
  590. package/esm/components/ui/modal/ModalButtons.styled.d.ts +87 -89
  591. package/esm/components/ui/modal/ModalButtons.styled.d.ts.map +1 -1
  592. package/esm/components/ui/modal/ModalButtons.styled.js +4 -2
  593. package/esm/components/ui/modal/ModalButtons.styled.js.map +1 -1
  594. package/esm/components/ui/pop/OnButtonClick.js +1 -1
  595. package/esm/components/ui/pop/OnButtonClick.js.map +1 -1
  596. package/esm/components/ui/pop/Pop.d.ts.map +1 -1
  597. package/esm/components/ui/pop/Pop.js +4 -0
  598. package/esm/components/ui/pop/Pop.js.map +1 -1
  599. package/esm/components/ui/pop/Pop.stories.d.ts +1 -1
  600. package/esm/components/ui/pop/Pop.stories.d.ts.map +1 -1
  601. package/esm/components/ui/pop/Pop.styled.js +1 -1
  602. package/esm/components/ui/pop/Pop.styled.js.map +1 -1
  603. package/esm/components/ui/progress/Progress.d.ts +6 -4
  604. package/esm/components/ui/progress/Progress.d.ts.map +1 -1
  605. package/esm/components/ui/progress/Progress.js +10 -5
  606. package/esm/components/ui/progress/Progress.js.map +1 -1
  607. package/esm/components/ui/progress/Progress.stories.d.ts +1 -1
  608. package/esm/components/ui/progress/Progress.stories.d.ts.map +1 -1
  609. package/esm/components/ui/progress/Progress.stories.js.map +1 -1
  610. package/esm/components/ui/stats/Stats.d.ts +14 -8
  611. package/esm/components/ui/stats/Stats.d.ts.map +1 -1
  612. package/esm/components/ui/stats/Stats.js +16 -14
  613. package/esm/components/ui/stats/Stats.js.map +1 -1
  614. package/esm/components/ui/stats/Stats.stories.d.ts +11 -0
  615. package/esm/components/ui/stats/Stats.stories.d.ts.map +1 -0
  616. package/esm/components/ui/stats/Stats.stories.js +104 -0
  617. package/esm/components/ui/stats/Stats.stories.js.map +1 -0
  618. package/esm/components/ui/stats/Stats.styled.d.ts +419 -0
  619. package/esm/components/ui/stats/Stats.styled.d.ts.map +1 -0
  620. package/esm/components/ui/stats/Stats.styled.js +49 -0
  621. package/esm/components/ui/stats/Stats.styled.js.map +1 -0
  622. package/esm/components/ui/tabs/Item.d.ts +8 -4
  623. package/esm/components/ui/tabs/Item.d.ts.map +1 -1
  624. package/esm/components/ui/tabs/Item.js +5 -7
  625. package/esm/components/ui/tabs/Item.js.map +1 -1
  626. package/esm/components/ui/tabs/Item.styled.d.ts +4 -0
  627. package/esm/components/ui/tabs/Item.styled.d.ts.map +1 -0
  628. package/esm/components/ui/tabs/Item.styled.js +17 -0
  629. package/esm/components/ui/tabs/Item.styled.js.map +1 -0
  630. package/esm/components/ui/tabs/Selector.d.ts +7 -5
  631. package/esm/components/ui/tabs/Selector.d.ts.map +1 -1
  632. package/esm/components/ui/tabs/Selector.js +9 -7
  633. package/esm/components/ui/tabs/Selector.js.map +1 -1
  634. package/esm/components/ui/tabs/Selector.stories.d.ts +10 -0
  635. package/esm/components/ui/tabs/Selector.stories.d.ts.map +1 -0
  636. package/esm/components/ui/tabs/Selector.stories.js +72 -0
  637. package/esm/components/ui/tabs/Selector.stories.js.map +1 -0
  638. package/esm/components/ui/tabs/Selector.styled.d.ts +2 -0
  639. package/esm/components/ui/tabs/Selector.styled.d.ts.map +1 -0
  640. package/esm/components/ui/tabs/Selector.styled.js +11 -0
  641. package/esm/components/ui/tabs/Selector.styled.js.map +1 -0
  642. package/esm/components/ui/toaster/Toaster.d.ts.map +1 -1
  643. package/esm/components/ui/toaster/Toaster.js +1 -0
  644. package/esm/components/ui/toaster/Toaster.js.map +1 -1
  645. package/esm/components/ui/toaster/Toaster.stories.d.ts +1 -1
  646. package/esm/components/ui/toaster/Toaster.stories.d.ts.map +1 -1
  647. package/esm/components/ui/toolButton/ToolButton.stories.d.ts +1 -1
  648. package/esm/components/ui/toolButton/ToolButton.stories.d.ts.map +1 -1
  649. package/esm/components/utils/Gap.d.ts +87 -0
  650. package/esm/components/utils/Gap.d.ts.map +1 -0
  651. package/esm/components/utils/Gap.js +15 -0
  652. package/esm/components/utils/Gap.js.map +1 -0
  653. package/esm/index.d.ts +2 -0
  654. package/esm/index.d.ts.map +1 -1
  655. package/esm/index.js +2 -0
  656. package/esm/index.js.map +1 -1
  657. package/esm/scrollbars.css.d.ts.map +1 -1
  658. package/esm/scrollbars.css.js +2 -2
  659. package/esm/scrollbars.css.js.map +1 -1
  660. package/esm/theme.css-global.d.ts +3 -0
  661. package/esm/theme.css-global.d.ts.map +1 -0
  662. package/esm/theme.css-global.js +16 -0
  663. package/esm/theme.css-global.js.map +1 -0
  664. package/esm/theme.css-reset.d.ts.map +1 -1
  665. package/esm/theme.css-reset.js +2 -4
  666. package/esm/theme.css-reset.js.map +1 -1
  667. package/esm/theme.d.ts +2 -2
  668. package/esm/utils/index.d.ts +1 -1
  669. package/esm/utils/index.d.ts.map +1 -1
  670. package/esm/utils/index.js +1 -1
  671. package/esm/utils/index.js.map +1 -1
  672. package/esm/utils/useTailSpin.d.ts +8 -0
  673. package/esm/utils/useTailSpin.d.ts.map +1 -0
  674. package/esm/utils/useTailSpin.js +17 -0
  675. package/esm/utils/useTailSpin.js.map +1 -0
  676. package/package.json +14 -34
  677. package/src/components/form/Checkbox.stories.tsx +1 -1
  678. package/src/components/form/Checkbox.styled.ts +1 -1
  679. package/src/components/form/Checkbox.tsx +23 -14
  680. package/src/components/form/ColorPicker.stories.tsx +1 -1
  681. package/src/components/form/ColorPicker.styled.ts +1 -1
  682. package/src/components/form/ColorPicker.tsx +21 -14
  683. package/src/components/form/Label.stories.tsx +1 -1
  684. package/src/components/form/Label.tsx +13 -11
  685. package/src/components/form/Select.stories.tsx +1 -1
  686. package/src/components/form/Select.tsx +8 -1
  687. package/src/components/form/Toggle.stories.tsx +1 -1
  688. package/src/components/form/Toggle.tsx +12 -9
  689. package/src/components/form/choice/Choice.stories.tsx +1 -1
  690. package/src/components/form/choice/Choice.tsx +13 -8
  691. package/src/components/form/choice/ChoiceItem.styled.ts +9 -0
  692. package/src/components/form/choice/ChoiceItem.tsx +8 -2
  693. package/src/components/form/input/Input.css.ts +3 -5
  694. package/src/components/form/input/Input.stories.tsx +5 -4
  695. package/src/components/form/input/Input.tsx +3 -2
  696. package/src/components/form/textarea/TextArea.stories.tsx +1 -1
  697. package/src/components/form/textarea/TextArea.tsx +12 -7
  698. package/src/components/icons/Battery.tsx +2 -2
  699. package/src/components/icons/Checkmark.tsx +1 -1
  700. package/src/components/icons/Config.tsx +1 -1
  701. package/src/components/icons/Dots.tsx +1 -1
  702. package/src/components/icons/Heart.tsx +1 -1
  703. package/src/components/icons/Icon.stories.tsx +82 -0
  704. package/src/components/icons/Trash.tsx +1 -1
  705. package/src/components/layout/card/Card.stories.tsx +93 -0
  706. package/src/components/layout/card/Card.styled.ts +25 -0
  707. package/src/components/layout/card/Card.tsx +5 -27
  708. package/src/components/layout/header/Header.stories.tsx +2 -2
  709. package/src/components/layout/header/Header.tsx +11 -9
  710. package/src/components/layout/header/HeaderIconAction.stories.tsx +1 -1
  711. package/src/components/layout/header/HeaderIconAction.styled.ts +2 -2
  712. package/src/components/layout/header/HeaderIconAction.tsx +1 -0
  713. package/src/components/layout/header/StickyHeader.stories.tsx +2 -2
  714. package/src/components/layout/header/StickyHeader.tsx +10 -2
  715. package/src/components/layout/list/Header.stories.tsx +1 -1
  716. package/src/components/layout/list/Item.stories.tsx +1 -4
  717. package/src/components/layout/list/Label.stories.tsx +1 -1
  718. package/src/components/layout/list/List.stories.tsx +1 -1
  719. package/src/components/layout/list/Value.stories.tsx +1 -1
  720. package/src/components/layout/section/SearchContainer.tsx +2 -15
  721. package/src/components/layout/section/Section.stories.tsx +1 -1
  722. package/src/components/layout/section/Section.tsx +4 -7
  723. package/src/components/layout/table/Table.stories.tsx +1 -1
  724. package/src/components/native/index.ts +3 -1
  725. package/src/components/ui/action/Action.stories.tsx +1 -1
  726. package/src/components/ui/action/Action.tsx +2 -2
  727. package/src/components/ui/action/EqualActions.stories.tsx +72 -0
  728. package/src/components/ui/action/EqualActions.styled.ts +21 -0
  729. package/src/components/ui/action/EqualActions.tsx +21 -14
  730. package/src/components/ui/button/Button.stories.tsx +1 -1
  731. package/src/components/ui/directionPad/Button.styled.ts +25 -0
  732. package/src/components/ui/directionPad/Button.tsx +16 -8
  733. package/src/components/ui/directionPad/Middle.styled.ts +19 -0
  734. package/src/components/ui/directionPad/Middle.tsx +13 -7
  735. package/src/components/ui/directionPad/Pad.stories.tsx +143 -0
  736. package/src/components/ui/directionPad/Pad.styled.ts +22 -0
  737. package/src/components/ui/directionPad/Pad.tsx +30 -19
  738. package/src/components/ui/drawer/Drawer.stories.tsx +167 -0
  739. package/src/components/ui/drawer/Drawer.styled.ts +22 -0
  740. package/src/components/ui/drawer/Drawer.tsx +44 -67
  741. package/src/components/ui/keyValue/KeyValue.stories.tsx +143 -0
  742. package/src/components/ui/keyValue/KeyValue.styled.ts +70 -0
  743. package/src/components/ui/keyValue/KeyValue.tsx +49 -24
  744. package/src/components/ui/line/Line.stories.tsx +1 -1
  745. package/src/components/ui/loader/CoveringLoader.stories.tsx +39 -12
  746. package/src/components/ui/loader/CoveringLoader.tsx +132 -41
  747. package/src/components/ui/loader/FullLoader.stories.tsx +1 -1
  748. package/src/components/ui/loader/FullLoader.tsx +3 -3
  749. package/src/components/ui/loader/Loader.stories.tsx +2 -2
  750. package/src/components/ui/loader/Loader.tsx +8 -50
  751. package/src/components/ui/loader/Loading.stories.tsx +1 -1
  752. package/src/components/ui/loader/PopLoader.stories.tsx +1 -1
  753. package/src/components/ui/loader/PopLoader.tsx +2 -2
  754. package/src/components/ui/message/Message.stories.tsx +1 -1
  755. package/src/components/ui/message/Message.tsx +1 -1
  756. package/src/components/ui/modal/Modal.stories.tsx +1 -1
  757. package/src/components/ui/modal/ModalButtons.stories.tsx +1 -1
  758. package/src/components/ui/modal/ModalButtons.styled.ts +4 -4
  759. package/src/components/ui/pop/OnButtonClick.tsx +1 -1
  760. package/src/components/ui/pop/Pop.stories.tsx +1 -1
  761. package/src/components/ui/pop/Pop.styled.ts +1 -1
  762. package/src/components/ui/pop/Pop.tsx +5 -1
  763. package/src/components/ui/progress/Progress.stories.tsx +2 -1
  764. package/src/components/ui/progress/Progress.tsx +25 -7
  765. package/src/components/ui/stats/Stats.stories.tsx +167 -0
  766. package/src/components/ui/stats/Stats.styled.ts +62 -0
  767. package/src/components/ui/stats/Stats.tsx +35 -25
  768. package/src/components/ui/tabs/Item.styled.ts +19 -0
  769. package/src/components/ui/tabs/Item.tsx +14 -13
  770. package/src/components/ui/tabs/Selector.stories.tsx +108 -0
  771. package/src/components/ui/tabs/Selector.styled.ts +13 -0
  772. package/src/components/ui/tabs/Selector.tsx +16 -13
  773. package/src/components/ui/toaster/Toaster.stories.tsx +1 -1
  774. package/src/components/ui/toaster/Toaster.tsx +1 -0
  775. package/src/components/ui/toolButton/ToolButton.stories.tsx +1 -1
  776. package/src/components/utils/Gap.tsx +19 -0
  777. package/src/index.ts +2 -0
  778. package/src/scrollbars.css.ts +3 -3
  779. package/src/theme.css-global.ts +19 -0
  780. package/src/theme.css-reset.ts +2 -4
  781. package/src/types/fnWithProps.ts +1 -1
  782. package/src/utils/index.ts +1 -1
  783. package/src/utils/useTailSpin.ts +38 -0
  784. package/.prettierignore +0 -3
  785. package/.prettierrc.json +0 -1
  786. package/dist/components/layout/card/Card.module.scss +0 -15
  787. package/dist/components/layout/section/SearchContainer.module.scss +0 -3
  788. package/dist/components/ui/action/EqualActions.module.scss +0 -11
  789. package/dist/components/ui/directionPad/Pad.module.scss +0 -45
  790. package/dist/components/ui/drawer/Drawer.module.scss +0 -15
  791. package/dist/components/ui/keyValue/KeyValue.module.scss +0 -57
  792. package/dist/components/ui/message/Message.module.scss +0 -31
  793. package/dist/components/ui/modal/ModalButton.d.ts +0 -8
  794. package/dist/components/ui/modal/ModalButton.d.ts.map +0 -1
  795. package/dist/components/ui/modal/ModalButton.js +0 -31
  796. package/dist/components/ui/modal/ModalButton.js.map +0 -1
  797. package/dist/components/ui/stats/Stats.module.scss +0 -48
  798. package/dist/components/ui/tabs/Item.module.scss +0 -11
  799. package/dist/components/ui/tabs/Selector.module.scss +0 -6
  800. package/dist/global.scss +0 -95
  801. package/dist/scrollbars.scss +0 -22
  802. package/dist/utils/makeVariants.d.ts +0 -3
  803. package/dist/utils/makeVariants.d.ts.map +0 -1
  804. package/dist/utils/makeVariants.js +0 -14
  805. package/dist/utils/makeVariants.js.map +0 -1
  806. package/docs/assets/pages.css +0 -14
  807. package/docs/classes/Drawer.html +0 -550
  808. package/docs/classes/Pop.html +0 -581
  809. package/docs/classes/ToasterProvider.html +0 -569
  810. package/docs/enums/ICON.html +0 -124
  811. package/docs/functions/Action.html +0 -139
  812. package/docs/functions/Button.html +0 -165
  813. package/docs/functions/Card.html +0 -136
  814. package/docs/functions/Checkbox.html +0 -138
  815. package/docs/functions/Choice.html +0 -136
  816. package/docs/functions/ColorPicker.html +0 -138
  817. package/docs/functions/CoveringLoader.html +0 -139
  818. package/docs/functions/DirectionPad.html +0 -136
  819. package/docs/functions/EqualActions.html +0 -136
  820. package/docs/functions/FullLoader.html +0 -138
  821. package/docs/functions/HandleEsc.html +0 -136
  822. package/docs/functions/Header-1.html +0 -141
  823. package/docs/functions/Header.toString.html +0 -56
  824. package/docs/functions/HeaderAfterSelector.html +0 -125
  825. package/docs/functions/HeaderBeforeSelector.html +0 -125
  826. package/docs/functions/HeaderContentsSelector.html +0 -125
  827. package/docs/functions/HeaderIconAction.html +0 -139
  828. package/docs/functions/Icon-1.html +0 -136
  829. package/docs/functions/If.html +0 -136
  830. package/docs/functions/Input.html +0 -135
  831. package/docs/functions/KeyValue.html +0 -136
  832. package/docs/functions/Label.html +0 -136
  833. package/docs/functions/Line.html +0 -165
  834. package/docs/functions/List-1.html +0 -146
  835. package/docs/functions/Loader.html +0 -140
  836. package/docs/functions/Loading.html +0 -142
  837. package/docs/functions/Message.html +0 -165
  838. package/docs/functions/Modal-1.html +0 -136
  839. package/docs/functions/ModalButtons.html +0 -159
  840. package/docs/functions/PopLoader.html +0 -140
  841. package/docs/functions/PopOption.html +0 -136
  842. package/docs/functions/Progress.html +0 -139
  843. package/docs/functions/SearchContainer.html +0 -136
  844. package/docs/functions/Section.html +0 -171
  845. package/docs/functions/Select.html +0 -159
  846. package/docs/functions/Selector.html +0 -135
  847. package/docs/functions/Spacer.html +0 -159
  848. package/docs/functions/Stats.html +0 -136
  849. package/docs/functions/StickyHeader.html +0 -130
  850. package/docs/functions/Table.html +0 -159
  851. package/docs/functions/TextArea.html +0 -136
  852. package/docs/functions/Toggle.html +0 -136
  853. package/docs/functions/ToolButton.html +0 -165
  854. package/docs/functions/borderPxToRem.html +0 -130
  855. package/docs/functions/createTheme.html +0 -139
  856. package/docs/functions/css.html +0 -137
  857. package/docs/functions/dimensionsPxToRem.html +0 -130
  858. package/docs/functions/fontPxToRem.html +0 -130
  859. package/docs/functions/getCssText.html +0 -125
  860. package/docs/functions/globalCss.html +0 -141
  861. package/docs/functions/keyframes.html +0 -141
  862. package/docs/functions/pxToRem.html +0 -130
  863. package/docs/functions/styled.html +0 -141
  864. package/docs/functions/useToaster.html +0 -125
  865. package/docs/interfaces/IconProps.html +0 -79
  866. package/docs/interfaces/InputCustomProps.html +0 -127
  867. package/docs/interfaces/LabelProps.html +0 -104
  868. package/docs/interfaces/StickyHeaderProps.html +0 -100
  869. package/docs/interfaces/ToggleProps.html +0 -136
  870. package/docs/modules/Header.html +0 -58
  871. package/docs/modules/List.html +0 -61
  872. package/docs/modules/Modal.html +0 -58
  873. package/docs/pages/tutorials/Test.html +0 -120
  874. package/docs/types/ActionProps.html +0 -121
  875. package/docs/types/ChoiceProps.html +0 -121
  876. package/docs/types/InputProps.html +0 -126
  877. package/docs/types/OverwriteProps.html +0 -136
  878. package/docs/types/ThemeCSS.html +0 -121
  879. package/docs/variables/List.Header.html +0 -53
  880. package/docs/variables/List.Item.html +0 -53
  881. package/docs/variables/Modal.RemovePadding.html +0 -52
  882. package/docs/variables/config.html +0 -135
  883. package/docs/variables/cssReset.html +0 -123
  884. package/docs/variables/miuiScrollbars.html +0 -121
  885. package/docs/variables/theme.html +0 -121
  886. package/esm/components/layout/card/Card.module.scss +0 -15
  887. package/esm/components/layout/section/SearchContainer.module.scss +0 -3
  888. package/esm/components/ui/action/EqualActions.module.scss +0 -11
  889. package/esm/components/ui/directionPad/Pad.module.scss +0 -45
  890. package/esm/components/ui/drawer/Drawer.module.scss +0 -15
  891. package/esm/components/ui/keyValue/KeyValue.module.scss +0 -57
  892. package/esm/components/ui/message/Message.module.scss +0 -31
  893. package/esm/components/ui/modal/ModalButton.d.ts +0 -8
  894. package/esm/components/ui/modal/ModalButton.d.ts.map +0 -1
  895. package/esm/components/ui/modal/ModalButton.js +0 -13
  896. package/esm/components/ui/modal/ModalButton.js.map +0 -1
  897. package/esm/components/ui/stats/Stats.module.scss +0 -48
  898. package/esm/components/ui/tabs/Item.module.scss +0 -11
  899. package/esm/components/ui/tabs/Selector.module.scss +0 -6
  900. package/esm/global.scss +0 -95
  901. package/esm/scrollbars.scss +0 -22
  902. package/esm/utils/makeVariants.d.ts +0 -3
  903. package/esm/utils/makeVariants.d.ts.map +0 -1
  904. package/esm/utils/makeVariants.js +0 -11
  905. package/esm/utils/makeVariants.js.map +0 -1
  906. package/next.config.js +0 -6
  907. package/src/components/layout/card/Card.module.scss +0 -15
  908. package/src/components/layout/section/SearchContainer.module.scss +0 -3
  909. package/src/components/ui/action/EqualActions.module.scss +0 -11
  910. package/src/components/ui/directionPad/Pad.module.scss +0 -45
  911. package/src/components/ui/drawer/Drawer.module.scss +0 -15
  912. package/src/components/ui/keyValue/KeyValue.module.scss +0 -57
  913. package/src/components/ui/message/Message.module.scss +0 -31
  914. package/src/components/ui/modal/ModalButton.tsx +0 -27
  915. package/src/components/ui/stats/Stats.module.scss +0 -48
  916. package/src/components/ui/tabs/Item.module.scss +0 -11
  917. package/src/components/ui/tabs/Selector.module.scss +0 -6
  918. package/src/demo/Demo.module.scss +0 -4
  919. package/src/demo/Demo.tsx +0 -25
  920. package/src/demo/Main.module.scss +0 -38
  921. package/src/demo/Main.tsx +0 -84
  922. package/src/demo/Menu.module.scss +0 -42
  923. package/src/demo/Menu.tsx +0 -43
  924. package/src/demo/NextLink.tsx +0 -11
  925. package/src/demo/components/form/Form.tsx +0 -31
  926. package/src/demo/components/form/Search.tsx +0 -33
  927. package/src/demo/components/form/TextArea.tsx +0 -13
  928. package/src/demo/components/layout/card/Card.tsx +0 -21
  929. package/src/demo/components/ui/action/Action.tsx +0 -109
  930. package/src/demo/components/ui/action/ActionDemo.module.scss +0 -3
  931. package/src/demo/components/ui/directionPad/Pad.tsx +0 -41
  932. package/src/demo/components/ui/drawer/Drawer.tsx +0 -29
  933. package/src/demo/components/ui/icons/Icons.tsx +0 -24
  934. package/src/demo/components/ui/keyValue/KeyValue.tsx +0 -49
  935. package/src/demo/components/ui/stats/Stats.module.scss +0 -29
  936. package/src/demo/components/ui/stats/Stats.tsx +0 -60
  937. package/src/demo/components/ui/tabs/Tabs.tsx +0 -15
  938. package/src/demo/componentsMap.ts +0 -107
  939. package/src/demo/utils/safeUseHash.ts +0 -15
  940. package/src/demo-global.scss +0 -9
  941. package/src/global.scss +0 -95
  942. package/src/pages/_app.tsx +0 -24
  943. package/src/pages/index.tsx +0 -10
  944. package/src/pages/react-miui.tsx +0 -13
  945. package/src/scrollbars.scss +0 -22
  946. package/src/utils/makeVariants.ts +0 -13
  947. package/typedoc.cjs +0 -5
  948. package/typedoc.mjs +0 -49
  949. /package/src/demo/{components/form/countries.const.ts → countries.const.ts} +0 -0
@@ -1,36 +1,43 @@
1
- import React from "react";
1
+ import React, { forwardRef } from "react";
2
2
 
3
- import classnames from "classnames";
3
+ import type { ThemeCSS } from "../../../theme";
4
4
 
5
5
  import { Action } from "./Action";
6
+ import { StyledEqualActions } from "./EqualActions.styled";
6
7
 
7
- import styles from "./EqualActions.module.scss";
8
-
9
- interface Props {
8
+ type EqualActionsProps = {
10
9
  className?: string;
11
10
  mode?: "horizontal" | "vertical";
12
11
  children: React.ReactNode;
13
- }
12
+ };
14
13
 
15
- const EqualActions: React.FC<Props> = (props) => {
14
+ const EqualActions = forwardRef<HTMLDivElement, EqualActionsProps>((props, ref) => {
16
15
  React.Children.forEach(props.children, (child) => {
17
16
  if (!child || typeof child !== "object" || !("type" in child) || child.type !== Action) {
18
17
  throw new TypeError("Every child of EqualActions must be an Action component");
19
18
  }
20
19
  });
21
20
 
22
- // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
23
- const style = {
21
+ const style: ThemeCSS = {
24
22
  "--actions-count": React.Children.count(props.children),
25
- } as React.CSSProperties;
23
+ };
26
24
 
27
- const cls = classnames(styles.actions, props.className, { [styles.vertical as string]: props.mode === "vertical" });
25
+ const isVertical = props.mode === "vertical";
28
26
 
29
27
  return (
30
- <div className={cls} style={style}>
28
+ <StyledEqualActions
29
+ className={props.className}
30
+ vertical={isVertical}
31
+ css={style}
32
+ ref={ref}
33
+ >
31
34
  {props.children}
32
- </div>
35
+ </StyledEqualActions>
33
36
  );
34
- };
37
+ });
38
+
39
+ EqualActions.displayName = "EqualActions";
40
+ EqualActions.toString = () => StyledEqualActions.toString();
35
41
 
36
42
  export { EqualActions };
43
+ export type { EqualActionsProps };
@@ -1,6 +1,6 @@
1
1
  import React, { useCallback } from "react";
2
2
 
3
- import type { StoryObj, Meta } from "@storybook/react";
3
+ import type { StoryObj, Meta } from "@storybook/react-vite";
4
4
 
5
5
  import { styled } from "../../../theme";
6
6
 
@@ -0,0 +1,25 @@
1
+ import { styled } from "../../../theme";
2
+
3
+ const StyledButton = styled("button", {
4
+ height: "50px",
5
+ width: "50px",
6
+ margin: "0",
7
+ borderRadius: "666px",
8
+ border: "none",
9
+ display: "block",
10
+ background: "none",
11
+ });
12
+
13
+ const StyledDot = styled("span", {
14
+ display: "block",
15
+ width: "4px",
16
+ height: "4px",
17
+ borderRadius: "666px",
18
+ background: "black",
19
+ margin: "auto",
20
+ });
21
+
22
+ export {
23
+ StyledButton,
24
+ StyledDot,
25
+ };
@@ -1,15 +1,23 @@
1
- import React from "react";
1
+ import React, { forwardRef } from "react";
2
2
 
3
- import styles from "./Pad.module.scss";
3
+ import { StyledButton, StyledDot } from "./Button.styled";
4
4
 
5
- interface Props {
5
+ type PadButtonProps = {
6
6
  onClick?: (() => void) | undefined;
7
- }
7
+ };
8
8
 
9
- const PadButton: React.FC<Props> = (props) => {
9
+ const PadButton = forwardRef<HTMLButtonElement, PadButtonProps>((props, ref) => {
10
10
  return (
11
- <button {...props} className={styles.pad__button}><span className={styles.pad__dot} /></button>
11
+ <StyledButton {...props} ref={ref}>
12
+ <StyledDot />
13
+ </StyledButton>
12
14
  );
13
- };
15
+ });
16
+
17
+ PadButton.displayName = "PadButton";
18
+ PadButton.toString = () => StyledButton.toString();
19
+
20
+ const PadButtonDotSelector = StyledDot.toString();
14
21
 
15
- export { PadButton };
22
+ export { PadButton, PadButtonDotSelector };
23
+ export type { PadButtonProps };
@@ -0,0 +1,19 @@
1
+ import { styled } from "../../../theme";
2
+
3
+ const StyledMiddle = styled("button", {
4
+ display: "flex",
5
+ alignItems: "center",
6
+ justifyContent: "center",
7
+ margin: "0",
8
+ height: "50px",
9
+ width: "50px",
10
+ border: "1px solid #999",
11
+ boxSizing: "border-box",
12
+ borderRadius: "666px",
13
+ background: "none",
14
+ textAlign: "center",
15
+ });
16
+
17
+ export {
18
+ StyledMiddle,
19
+ };
@@ -1,16 +1,22 @@
1
- import React from "react";
1
+ import React, { forwardRef } from "react";
2
2
 
3
- import styles from "./Pad.module.scss";
3
+ import { StyledMiddle } from "./Middle.styled";
4
4
 
5
- interface Props {
5
+ type PadMiddleProps = {
6
6
  label?: string | undefined;
7
7
  onClick?: (() => void) | undefined;
8
- }
8
+ };
9
9
 
10
- const PadMiddle: React.FC<Props> = (props) => {
10
+ const PadMiddle = forwardRef<HTMLButtonElement, PadMiddleProps>((props, ref) => {
11
11
  return (
12
- <button onClick={props.onClick} className={styles.pad__middle}>{props.label}</button>
12
+ <StyledMiddle onClick={props.onClick} ref={ref}>
13
+ {props.label}
14
+ </StyledMiddle>
13
15
  );
14
- };
16
+ });
17
+
18
+ PadMiddle.displayName = "PadMiddle";
19
+ PadMiddle.toString = () => StyledMiddle.toString();
15
20
 
16
21
  export { PadMiddle };
22
+ export type { PadMiddleProps };
@@ -0,0 +1,143 @@
1
+ import React, { useState, useCallback } from "react";
2
+
3
+ import type { Meta, StoryObj } from "@storybook/react-vite";
4
+
5
+ import { DirectionPad } from "./Pad";
6
+
7
+ const meta: Meta<typeof DirectionPad> = {
8
+ title: "UI/DirectionPad",
9
+ component: DirectionPad,
10
+ tags: ["autodocs"],
11
+ };
12
+
13
+ type Story = StoryObj<typeof DirectionPad>;
14
+
15
+ /**
16
+ * Basic usage of the DirectionPad component with all direction buttons and a middle button.
17
+ * This example shows which button was last clicked.
18
+ */
19
+ const Default: Story = {
20
+ render: () => {
21
+ const [lastClick, setLastClick] = useState("<none>");
22
+
23
+ const handleLeftClick = useCallback(() => {
24
+ setLastClick("left");
25
+ }, []);
26
+
27
+ const handleRightClick = useCallback(() => {
28
+ setLastClick("right");
29
+ }, []);
30
+
31
+ const handleUpClick = useCallback(() => {
32
+ setLastClick("up");
33
+ }, []);
34
+
35
+ const handleDownClick = useCallback(() => {
36
+ setLastClick("down");
37
+ }, []);
38
+
39
+ const handleMiddleClick = useCallback(() => {
40
+ setLastClick("res");
41
+ }, []);
42
+
43
+ return (
44
+ <>
45
+ <DirectionPad
46
+ onLeftPress={handleLeftClick}
47
+ onRightPress={handleRightClick}
48
+ onUpPress={handleUpClick}
49
+ onDownPress={handleDownClick}
50
+ onMiddlePress={handleMiddleClick}
51
+ middleLabel={"RES"}
52
+ />
53
+ <div style={{ marginTop: "20px", textAlign: "center" }}>
54
+ Last clicked button: {lastClick}
55
+ </div>
56
+ </>
57
+ );
58
+ },
59
+ };
60
+
61
+ /**
62
+ * A simplified version of the DirectionPad with only horizontal controls (left/right).
63
+ */
64
+ const HorizontalOnly: Story = {
65
+ render: () => {
66
+ const [lastClick, setLastClick] = useState("<none>");
67
+
68
+ const handleLeftClick = useCallback(() => {
69
+ setLastClick("left");
70
+ }, []);
71
+
72
+ const handleRightClick = useCallback(() => {
73
+ setLastClick("right");
74
+ }, []);
75
+
76
+ const handleMiddleClick = useCallback(() => {
77
+ setLastClick("middle");
78
+ }, []);
79
+
80
+ return (
81
+ <>
82
+ <DirectionPad
83
+ onLeftPress={handleLeftClick}
84
+ onRightPress={handleRightClick}
85
+ onMiddlePress={handleMiddleClick}
86
+ middleLabel={"OK"}
87
+ />
88
+ <div style={{ marginTop: "20px", textAlign: "center" }}>
89
+ Last clicked button: {lastClick}
90
+ </div>
91
+ </>
92
+ );
93
+ },
94
+ };
95
+
96
+ /**
97
+ * Custom styled variant of DirectionPad with a different background color.
98
+ */
99
+ const CustomStyled: Story = {
100
+ render: () => {
101
+ const [lastClick, setLastClick] = useState("<none>");
102
+
103
+ const handleLeftClick = useCallback(() => {
104
+ setLastClick("left");
105
+ }, []);
106
+
107
+ const handleRightClick = useCallback(() => {
108
+ setLastClick("right");
109
+ }, []);
110
+
111
+ const handleUpClick = useCallback(() => {
112
+ setLastClick("up");
113
+ }, []);
114
+
115
+ const handleDownClick = useCallback(() => {
116
+ setLastClick("down");
117
+ }, []);
118
+
119
+ const handleMiddleClick = useCallback(() => {
120
+ setLastClick("middle");
121
+ }, []);
122
+
123
+ return (
124
+ <div style={{ backgroundColor: "#f5f5f5", padding: "20px", borderRadius: "8px" }}>
125
+ <DirectionPad
126
+ onLeftPress={handleLeftClick}
127
+ onRightPress={handleRightClick}
128
+ onUpPress={handleUpClick}
129
+ onDownPress={handleDownClick}
130
+ onMiddlePress={handleMiddleClick}
131
+ middleLabel={"OK"}
132
+ className={"custom-pad"}
133
+ />
134
+ <div style={{ marginTop: "20px", textAlign: "center" }}>
135
+ Last clicked button: {lastClick}
136
+ </div>
137
+ </div>
138
+ );
139
+ },
140
+ };
141
+
142
+ export { Default, HorizontalOnly, CustomStyled };
143
+ export default meta;
@@ -0,0 +1,22 @@
1
+ import { styled } from "../../../theme";
2
+
3
+ const StyledPad = styled("div", {
4
+ display: "flex",
5
+ flexDirection: "column",
6
+ alignItems: "center",
7
+ justifyContent: "center",
8
+ height: "150px",
9
+ borderRadius: "666px",
10
+ width: "150px",
11
+ border: "1px solid #aaa",
12
+ background: "white",
13
+ });
14
+
15
+ const StyledLine = styled("div", {
16
+ display: "flex",
17
+ });
18
+
19
+ export {
20
+ StyledPad,
21
+ StyledLine,
22
+ };
@@ -1,13 +1,10 @@
1
- import React from "react";
1
+ import React, { forwardRef } from "react";
2
2
 
3
- import classnames from "classnames";
4
-
5
- import { PadButton as Button } from "./Button";
3
+ import { PadButton as Button, PadButtonDotSelector } from "./Button";
6
4
  import { PadMiddle as Middle } from "./Middle";
5
+ import { StyledPad, StyledLine } from "./Pad.styled";
7
6
 
8
- import styles from "./Pad.module.scss";
9
-
10
- interface Props {
7
+ type DirectionPadProps = {
11
8
  onUpPress?: () => void;
12
9
  onDownPress?: () => void;
13
10
  onLeftPress?: () => void;
@@ -15,24 +12,38 @@ interface Props {
15
12
  onMiddlePress?: () => void;
16
13
  middleLabel?: string;
17
14
  className?: string;
18
- }
15
+ };
19
16
 
20
- const Pad: React.FC<Props> = (props) => {
17
+ const Pad = forwardRef<HTMLDivElement, DirectionPadProps>((props, ref) => {
21
18
  return (
22
- <div className={classnames(props.className, styles.pad)}>
23
- <div className={styles.pad__line}>
19
+ <StyledPad className={props.className} ref={ref}>
20
+ <StyledLine>
24
21
  <Button onClick={props.onUpPress} />
25
- </div>
26
- <div className={styles.pad__line}>
22
+ </StyledLine>
23
+ <StyledLine>
27
24
  <Button onClick={props.onLeftPress} />
28
25
  <Middle onClick={props.onMiddlePress} label={props.middleLabel} />
29
26
  <Button onClick={props.onRightPress} />
30
- </div>
31
- <div className={styles.pad__line}>
27
+ </StyledLine>
28
+ <StyledLine>
32
29
  <Button onClick={props.onDownPress} />
33
- </div>
34
- </div>
30
+ </StyledLine>
31
+ </StyledPad>
35
32
  );
36
- };
33
+ });
37
34
 
38
- export { Pad as DirectionPad };
35
+ Pad.displayName = "DirectionPad";
36
+ Pad.toString = () => StyledPad.toString();
37
+
38
+ const DirectionPadLineSelector = StyledLine.toString();
39
+ const DirectionPadButtonSelector = Button.toString();
40
+ const DirectionPadMiddleSelector = Middle.toString();
41
+
42
+ export {
43
+ Pad as DirectionPad,
44
+ DirectionPadLineSelector,
45
+ DirectionPadButtonSelector,
46
+ DirectionPadMiddleSelector,
47
+ PadButtonDotSelector as DirectionPadButtonDotSelector,
48
+ };
49
+ export type { DirectionPadProps };
@@ -0,0 +1,167 @@
1
+ import React, { useState, useCallback } from "react";
2
+
3
+ import type { Meta, StoryObj } from "@storybook/react-vite";
4
+
5
+ import { styled } from "../../../theme";
6
+ import { Section } from "../../layout/section/Section";
7
+ import { Button } from "../button/Button";
8
+
9
+ import { Drawer } from "./Drawer";
10
+
11
+ const meta: Meta<typeof Drawer> = {
12
+ title: "UI/Drawer",
13
+ component: Drawer,
14
+ parameters: {
15
+ layout: "fullscreen",
16
+ },
17
+ tags: ["autodocs"],
18
+ };
19
+
20
+ type Story = StoryObj<typeof Drawer>;
21
+
22
+ /**
23
+ * Basic implementation of the Drawer component with a toggle button.
24
+ */
25
+ const Default: Story = {
26
+ render: () => {
27
+ const [isOpen, setisOpen] = useState(false);
28
+
29
+ const handleToggleOpen = useCallback(() => {
30
+ setisOpen((prev) => !prev);
31
+ }, []);
32
+
33
+ const handleClose = useCallback(() => {
34
+ setisOpen(false);
35
+ }, []);
36
+
37
+ return (
38
+ <div style={{ padding: "20px" }}>
39
+ <Drawer isOpen={isOpen} onClose={handleClose}>
40
+ <div style={{ padding: "20px" }}>
41
+ <h2>Drawer Content</h2>
42
+ <p>This is the content inside the drawer.</p>
43
+ <p>Press ESC to close.</p>
44
+ </div>
45
+ </Drawer>
46
+ <Button onClick={handleToggleOpen}>
47
+ {isOpen ? "Close Drawer" : "Open Drawer"}
48
+ </Button>
49
+ </div>
50
+ );
51
+ },
52
+ };
53
+
54
+ /**
55
+ * Drawer with custom close behavior where ESC key doesn't close the drawer.
56
+ */
57
+ const NoEscClose: Story = {
58
+ render: () => {
59
+ // eslint-disable-next-line @typescript-eslint/no-shadow
60
+ const [open, setOpen] = useState(false);
61
+
62
+ const handleToggleOpen = useCallback(() => {
63
+ setOpen((prev) => !prev);
64
+ }, []);
65
+
66
+ const handleClose = useCallback(() => {
67
+ setOpen(false);
68
+ }, []);
69
+
70
+ return (
71
+ <div style={{ padding: "20px" }}>
72
+ <Drawer isOpen={open} onClose={handleClose} closeOnEsc={false}>
73
+ <div style={{ padding: "20px" }}>
74
+ <h2>Drawer Without ESC Close</h2>
75
+ <p>This drawer will not close when you press ESC.</p>
76
+ <p>Use the button below to close it.</p>
77
+ <Button onClick={handleClose}>Close Drawer</Button>
78
+ </div>
79
+ </Drawer>
80
+ <Button onClick={handleToggleOpen}>
81
+ {open ? "Close Drawer" : "Open Drawer (No ESC Close)"}
82
+ </Button>
83
+ </div>
84
+ );
85
+ },
86
+ };
87
+
88
+ /**
89
+ * Drawer with content that demonstrates scrolling behavior.
90
+ */
91
+ const WithLongContent: Story = {
92
+ render: () => {
93
+ const [isOpen, setIsOpen] = useState(false);
94
+
95
+ const handleToggleOpen = useCallback(() => {
96
+ setIsOpen(prev => !prev);
97
+ }, []);
98
+
99
+ const handleClose = useCallback(() => {
100
+ setIsOpen(false);
101
+ }, []);
102
+
103
+ return (
104
+ <div style={{ padding: "20px" }}>
105
+ <Drawer isOpen={isOpen} onClose={handleClose}>
106
+ <div style={{ padding: "20px" }}>
107
+ <h2>Drawer with Long Content</h2>
108
+ <p>This drawer has enough content to demonstrate scrolling behavior.</p>
109
+ {Array(20).fill(0).map((_, i) => (
110
+ <Section key={String(`${i}`)} vertical={true} horizontal={true}>
111
+ <h3>Section {i + 1}</h3>
112
+ <p>This is content section {i + 1} in the scrollable drawer.</p>
113
+ </Section>
114
+ ))}
115
+ </div>
116
+ </Drawer>
117
+ <Button onClick={handleToggleOpen}>
118
+ {isOpen ? "Close Drawer" : "Open Drawer with Long Content"}
119
+ </Button>
120
+ </div>
121
+ );
122
+ },
123
+ };
124
+
125
+ /**
126
+ * Custom styled Drawer with a different background color and border radius.
127
+ */
128
+ const CustomStyledDrawer = styled(Drawer, {
129
+ "&&": {
130
+ background: "linear-gradient(to bottom, #c5f7fa, #63cfe2)",
131
+ },
132
+ });
133
+
134
+ /**
135
+ * A custom styled version of the Drawer component with a gradient background and rounded top corners.
136
+ */
137
+ const CustomStyled: Story = {
138
+ render: () => {
139
+ const [isOpen, setIsOpen] = useState(false);
140
+
141
+ const handleToggleOpen = useCallback(() => {
142
+ setIsOpen(prev => !prev);
143
+ }, []);
144
+
145
+ const handleClose = useCallback(() => {
146
+ setIsOpen(false);
147
+ }, []);
148
+
149
+ return (
150
+ <div style={{ padding: "20px" }}>
151
+ <CustomStyledDrawer isOpen={isOpen} onClose={handleClose}>
152
+ <div style={{ padding: "20px" }}>
153
+ <h2>Custom Styled Drawer</h2>
154
+ <p>This drawer has custom styling with a gradient background</p>
155
+ <Button onClick={handleClose}>Close Drawer</Button>
156
+ </div>
157
+ </CustomStyledDrawer>
158
+ <Button onClick={handleToggleOpen}>
159
+ {isOpen ? "Close Custom Drawer" : "Open Custom Drawer"}
160
+ </Button>
161
+ </div>
162
+ );
163
+ },
164
+ };
165
+
166
+ export { Default, NoEscClose, WithLongContent, CustomStyled };
167
+ export default meta;
@@ -0,0 +1,22 @@
1
+ import { styled } from "../../../theme";
2
+
3
+ const StyledDrawer = styled("div", {
4
+ position: "fixed",
5
+ top: 0,
6
+ left: 0,
7
+ right: 0,
8
+ bottom: 0,
9
+ background: "white",
10
+ zIndex: 1,
11
+ transition: "transform 300ms",
12
+ overflow: "auto",
13
+ });
14
+
15
+ const Content = styled("div", {
16
+ height: "100%",
17
+ });
18
+
19
+ export {
20
+ StyledDrawer,
21
+ Content,
22
+ };