@okam/stack-ui 1.25.3 → 1.25.4

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 (382) hide show
  1. package/components/Accordion/components/AccordionItem.d.ts +3 -0
  2. package/components/Accordion/components/AriaAccordionItem.d.ts +3 -0
  3. package/components/Accordion/hooks/useAccordionState.d.ts +10 -0
  4. package/components/Accordion/index.d.ts +3 -0
  5. package/{src/components/Accordion/interface.ts → components/Accordion/interface.d.ts} +17 -23
  6. package/components/Alerts/components/AlertsCloseButton.d.ts +4 -0
  7. package/components/Alerts/components/AlertsItem.d.ts +3 -0
  8. package/components/Alerts/components/AlertsNavigationButton.d.ts +8 -0
  9. package/components/Alerts/components/AlertsSwiper.d.ts +3 -0
  10. package/components/Alerts/components/pagination/AlertsPagination.d.ts +3 -0
  11. package/components/Alerts/components/pagination/AlertsPaginationBullet.d.ts +3 -0
  12. package/components/Alerts/index.d.ts +3 -0
  13. package/components/Alerts/interface.d.ts +41 -0
  14. package/components/Box/index.d.ts +5 -0
  15. package/components/Box/interface.d.ts +11 -0
  16. package/components/Button/index.d.ts +6 -0
  17. package/components/Button/interface.d.ts +20 -0
  18. package/components/Calendar/RangeCalendar.d.ts +3 -0
  19. package/components/Calendar/components/CalendarCell.d.ts +3 -0
  20. package/components/Calendar/components/CalendarGrid.d.ts +3 -0
  21. package/components/Calendar/index.d.ts +3 -0
  22. package/components/Calendar/interface.d.ts +32 -0
  23. package/components/Carousel/index.d.ts +3 -0
  24. package/components/Carousel/interface.d.ts +24 -0
  25. package/components/Date/index.d.ts +3 -0
  26. package/components/Date/interface.d.ts +6 -0
  27. package/components/Dialog/index.d.ts +2 -0
  28. package/components/Dialog/interface.d.ts +6 -0
  29. package/components/DirectusImg/index.d.ts +3 -0
  30. package/components/DirectusImg/interface.d.ts +17 -0
  31. package/components/Icon/index.d.ts +3 -0
  32. package/components/Icon/interface.d.ts +7 -0
  33. package/components/Img/index.d.ts +3 -0
  34. package/components/Img/interface.d.ts +6 -0
  35. package/components/Lightbox/index.d.ts +3 -0
  36. package/components/Lightbox/interface.d.ts +25 -0
  37. package/components/Menu/Menu.d.ts +3 -0
  38. package/components/Menu/MenuSidePanel.d.ts +3 -0
  39. package/components/Menu/components/InnerContent.d.ts +3 -0
  40. package/components/Menu/components/MenuItems.d.ts +3 -0
  41. package/components/Menu/components/TabContainer.d.ts +3 -0
  42. package/components/Menu/interface.d.ts +31 -0
  43. package/components/Modal/components/ModalDialog.d.ts +3 -0
  44. package/components/Modal/components/ModalOverlay.d.ts +3 -0
  45. package/components/Modal/index.d.ts +3 -0
  46. package/{src/components/Modal/interface.ts → components/Modal/interface.d.ts} +11 -14
  47. package/components/Popover/index.d.ts +3 -0
  48. package/components/Popover/interface.d.ts +21 -0
  49. package/components/ShareButton/index.d.ts +4 -0
  50. package/components/ShareButton/interface.d.ts +26 -0
  51. package/components/ShareButton/utils/generateUtmTags.d.ts +2 -0
  52. package/components/ShareButton/utils/useFacebookShareUrl.d.ts +2 -0
  53. package/components/ShareButton/utils/useMailToShareUrl.d.ts +2 -0
  54. package/components/ShareButton/utils/useTwitterShareUrl.d.ts +2 -0
  55. package/components/ShareButton/utils/useWindow.d.ts +5 -0
  56. package/components/SidePanel/index.d.ts +4 -0
  57. package/components/SidePanel/interface.d.ts +12 -0
  58. package/components/TabList/components/TabPanel/TabPanel.d.ts +4 -0
  59. package/components/TabList/interface.d.ts +18 -0
  60. package/components/Typography/index.d.ts +5 -0
  61. package/components/Typography/interface.d.ts +10 -0
  62. package/components/WysiwygBlock/index.d.ts +3 -0
  63. package/components/WysiwygBlock/interface.d.ts +5 -0
  64. package/components/fields/Checkbox/Checkbox.interface.d.ts +18 -0
  65. package/components/fields/Checkbox/index.d.ts +3 -0
  66. package/components/fields/CheckboxGroup/components/CheckboxGroupItem/index.d.ts +3 -0
  67. package/components/fields/CheckboxGroup/index.d.ts +3 -0
  68. package/components/fields/CheckboxGroup/interface.d.ts +13 -0
  69. package/components/fields/DatePicker/DateRangePicker.d.ts +3 -0
  70. package/components/fields/DatePicker/components/CalendarPopover.d.ts +2 -0
  71. package/components/fields/DatePicker/components/DateField.d.ts +4 -0
  72. package/components/fields/DatePicker/index.d.ts +3 -0
  73. package/components/fields/DatePicker/interface.d.ts +37 -0
  74. package/components/fields/Radio/Radio.interface.d.ts +26 -0
  75. package/components/fields/Radio/index.d.ts +4 -0
  76. package/components/fields/RadioGroup/index.d.ts +3 -0
  77. package/components/fields/RadioGroup/interface.d.ts +9 -0
  78. package/components/fields/SearchField/index.d.ts +3 -0
  79. package/components/fields/SearchField/interface.d.ts +9 -0
  80. package/components/fields/Select/Select.d.ts +4 -0
  81. package/components/fields/Select/Select.interface.d.ts +26 -0
  82. package/components/fields/Select/components/Listbox.d.ts +4 -0
  83. package/{src/components/fields/Select/components/Listbox.interface.ts → components/fields/Select/components/Listbox.interface.d.ts} +8 -11
  84. package/components/fields/Select/components/Popover.d.ts +3 -0
  85. package/components/fields/Select/components/Popover.interface.d.ts +13 -0
  86. package/components/fields/SelectItem/SelectItem.d.ts +3 -0
  87. package/{src/components/fields/SelectItem/SelectItem.interface.ts → components/fields/SelectItem/SelectItem.interface.d.ts} +3 -4
  88. package/components/fields/TextArea/index.d.ts +4 -0
  89. package/components/fields/TextInputField/index.d.ts +4 -0
  90. package/components/fields/TextInputField/interface.d.ts +24 -0
  91. package/components/icons/ArrowDown.d.ts +3 -0
  92. package/components/icons/ArrowLeft.d.ts +3 -0
  93. package/components/icons/ArrowRight.d.ts +3 -0
  94. package/components/icons/Check.d.ts +3 -0
  95. package/components/icons/ChevronLeft.d.ts +3 -0
  96. package/components/icons/ChevronRight.d.ts +3 -0
  97. package/components/icons/CloseBtn.d.ts +3 -0
  98. package/components/icons/Facebook.d.ts +3 -0
  99. package/components/icons/FacebookColored.d.ts +3 -0
  100. package/components/icons/FacebookRounded.d.ts +3 -0
  101. package/components/icons/Globe.d.ts +3 -0
  102. package/components/icons/IconFallback.d.ts +3 -0
  103. package/components/icons/Instagram.d.ts +3 -0
  104. package/components/icons/InstagramColored.d.ts +3 -0
  105. package/components/icons/Link.d.ts +3 -0
  106. package/components/icons/LinkedIn.d.ts +3 -0
  107. package/components/icons/Mail.d.ts +3 -0
  108. package/components/icons/Plus.d.ts +3 -0
  109. package/components/icons/Search.d.ts +3 -0
  110. package/components/icons/Share.d.ts +3 -0
  111. package/components/icons/Twitter.d.ts +3 -0
  112. package/components/icons/TwitterColored.d.ts +3 -0
  113. package/components/icons/Upload.d.ts +3 -0
  114. package/components/icons/X.d.ts +3 -0
  115. package/components/icons/YouTube.d.ts +3 -0
  116. package/components/icons/YouTubeColored.d.ts +3 -0
  117. package/components/icons/index.d.ts +24 -0
  118. package/{src/index.ts → index.d.ts} +57 -72
  119. package/index.js +110 -0
  120. package/index.mjs +12755 -0
  121. package/package.json +1 -1
  122. package/providers/Accordion/index.d.ts +4 -0
  123. package/providers/Accordion/interface.d.ts +12 -0
  124. package/providers/Alerts/index.d.ts +4 -0
  125. package/providers/Alerts/interface.d.ts +9 -0
  126. package/providers/CheckboxGroup/index.d.ts +5 -0
  127. package/{src/providers/CheckboxGroup/interface.ts → providers/CheckboxGroup/interface.d.ts} +4 -5
  128. package/providers/Client/index.d.ts +4 -0
  129. package/providers/Client/interface.d.ts +10 -0
  130. package/providers/Menu/index.d.ts +4 -0
  131. package/providers/Menu/interface.d.ts +28 -0
  132. package/providers/RadioGroup/RadioGroup.d.ts +5 -0
  133. package/providers/RadioGroup/RadioGroup.interface.d.ts +7 -0
  134. package/providers/SidePanel/index.d.ts +4 -0
  135. package/providers/SidePanel/interface.d.ts +23 -0
  136. package/providers/Theme/hooks.d.ts +3 -0
  137. package/providers/Theme/index.d.ts +10 -0
  138. package/providers/Theme/interface.d.ts +24 -0
  139. package/providers/Theme/utils.d.ts +2 -0
  140. package/providers/UserSearchQuery/index.d.ts +4 -0
  141. package/providers/UserSearchQuery/interface.d.ts +10 -0
  142. package/style.css +1 -0
  143. package/theme/Accordion/index.d.ts +274 -0
  144. package/theme/Alerts/index.d.ts +1167 -0
  145. package/theme/Box/index.d.ts +214 -0
  146. package/theme/Button/index.d.ts +121 -0
  147. package/theme/Calendar/index.d.ts +366 -0
  148. package/theme/Carousel/index.d.ts +9 -0
  149. package/theme/Checkbox/index.d.ts +159 -0
  150. package/theme/CheckboxGroup/index.d.ts +30 -0
  151. package/theme/DatePicker/index.d.ts +43 -0
  152. package/theme/Image/index.d.ts +3 -0
  153. package/theme/LightBox/index.d.ts +455 -0
  154. package/theme/Radio/index.d.ts +108 -0
  155. package/theme/RadioGroup/index.d.ts +30 -0
  156. package/theme/Search/index.d.ts +30 -0
  157. package/theme/ShareButton/index.d.ts +174 -0
  158. package/theme/SidePanel/index.d.ts +3 -0
  159. package/theme/TextArea/index.d.ts +29 -0
  160. package/theme/Typography/index.d.ts +233 -0
  161. package/theme/index.d.ts +5 -0
  162. package/transitions/AccordionTransition.d.ts +4 -0
  163. package/transitions/ModalTransition.d.ts +7 -0
  164. package/transitions/RenderWithOpacity.d.ts +4 -0
  165. package/transitions/RenderWithSlide.d.ts +7 -0
  166. package/transitions/SidePanelTransition.d.ts +7 -0
  167. package/types/components.d.ts +28 -0
  168. package/.eslintrc.js +0 -32
  169. package/.storybook/.eslintrc.js +0 -29
  170. package/.storybook/main.ts +0 -33
  171. package/.storybook/preview.js +0 -56
  172. package/.storybook/tsconfig.json +0 -17
  173. package/CHANGELOG.md +0 -574
  174. package/README.md +0 -8
  175. package/postcss.config.js +0 -15
  176. package/project.json +0 -77
  177. package/src/_stories/icons/code-brackets.svg +0 -1
  178. package/src/_stories/icons/colors.svg +0 -1
  179. package/src/_stories/icons/comments.svg +0 -1
  180. package/src/_stories/icons/direction.svg +0 -1
  181. package/src/_stories/icons/flow.svg +0 -1
  182. package/src/_stories/icons/plugin.svg +0 -1
  183. package/src/_stories/icons/repo.svg +0 -1
  184. package/src/_stories/icons/stackalt.svg +0 -1
  185. package/src/components/Accordion/accordion.stories.mdx +0 -240
  186. package/src/components/Accordion/components/AccordionItem.tsx +0 -53
  187. package/src/components/Accordion/components/AriaAccordionItem.tsx +0 -76
  188. package/src/components/Accordion/hooks/useAccordionState.ts +0 -46
  189. package/src/components/Accordion/index.tsx +0 -38
  190. package/src/components/Alerts/alerts.stories.mdx +0 -282
  191. package/src/components/Alerts/components/AlertsCloseButton.tsx +0 -20
  192. package/src/components/Alerts/components/AlertsItem.tsx +0 -39
  193. package/src/components/Alerts/components/AlertsNavigationButton.tsx +0 -71
  194. package/src/components/Alerts/components/AlertsSwiper.tsx +0 -125
  195. package/src/components/Alerts/components/pagination/AlertsPagination.tsx +0 -32
  196. package/src/components/Alerts/components/pagination/AlertsPaginationBullet.tsx +0 -61
  197. package/src/components/Alerts/index.tsx +0 -54
  198. package/src/components/Alerts/interface.ts +0 -51
  199. package/src/components/Box/box.stories.mdx +0 -27
  200. package/src/components/Box/index.tsx +0 -36
  201. package/src/components/Box/interface.ts +0 -10
  202. package/src/components/Button/button.stories.mdx +0 -99
  203. package/src/components/Button/index.tsx +0 -92
  204. package/src/components/Button/interface.ts +0 -22
  205. package/src/components/Calendar/RangeCalendar.tsx +0 -61
  206. package/src/components/Calendar/calendar.stories.mdx +0 -28
  207. package/src/components/Calendar/components/CalendarCell.tsx +0 -60
  208. package/src/components/Calendar/components/CalendarGrid.tsx +0 -44
  209. package/src/components/Calendar/index.tsx +0 -63
  210. package/src/components/Calendar/interface.ts +0 -37
  211. package/src/components/Carousel/carousel.stories.mdx +0 -182
  212. package/src/components/Carousel/index.tsx +0 -99
  213. package/src/components/Carousel/interface.ts +0 -26
  214. package/src/components/Date/date.stories.mdx +0 -122
  215. package/src/components/Date/index.tsx +0 -35
  216. package/src/components/Date/interface.ts +0 -7
  217. package/src/components/Dialog/index.tsx +0 -14
  218. package/src/components/Dialog/interface.ts +0 -6
  219. package/src/components/DirectusImg/index.tsx +0 -59
  220. package/src/components/DirectusImg/interface.ts +0 -19
  221. package/src/components/Icon/index.tsx +0 -40
  222. package/src/components/Icon/interface.ts +0 -8
  223. package/src/components/Img/img.stories.mdx +0 -28
  224. package/src/components/Img/index.tsx +0 -30
  225. package/src/components/Img/interface.ts +0 -9
  226. package/src/components/Lightbox/hooks/overlay/index.tsx +0 -36
  227. package/src/components/Lightbox/index.tsx +0 -82
  228. package/src/components/Lightbox/interface.ts +0 -28
  229. package/src/components/Lightbox/lightbox.stories.mdx +0 -79
  230. package/src/components/Menu/Menu.tsx +0 -43
  231. package/src/components/Menu/MenuSidePanel.tsx +0 -41
  232. package/src/components/Menu/components/InnerContent.tsx +0 -26
  233. package/src/components/Menu/components/MenuItems.tsx +0 -133
  234. package/src/components/Menu/components/TabContainer.tsx +0 -13
  235. package/src/components/Menu/interface.ts +0 -41
  236. package/src/components/Menu/menu.stories.mdx +0 -23
  237. package/src/components/Modal/components/ModalDialog.tsx +0 -31
  238. package/src/components/Modal/components/ModalOverlay.tsx +0 -21
  239. package/src/components/Modal/index.tsx +0 -32
  240. package/src/components/Popover/index.tsx +0 -138
  241. package/src/components/Popover/interface.ts +0 -25
  242. package/src/components/Popover/popover.stories.mdx +0 -66
  243. package/src/components/ShareButton/index.tsx +0 -172
  244. package/src/components/ShareButton/interface.ts +0 -29
  245. package/src/components/ShareButton/share-button.stories.mdx +0 -48
  246. package/src/components/ShareButton/utils/generateUtmTags.ts +0 -4
  247. package/src/components/ShareButton/utils/useFacebookShareUrl.ts +0 -15
  248. package/src/components/ShareButton/utils/useMailToShareUrl.ts +0 -15
  249. package/src/components/ShareButton/utils/useTwitterShareUrl.ts +0 -15
  250. package/src/components/ShareButton/utils/useWindow.ts +0 -17
  251. package/src/components/SidePanel/index.tsx +0 -43
  252. package/src/components/SidePanel/interface.ts +0 -16
  253. package/src/components/SidePanel/side-panel.stories.mdx +0 -44
  254. package/src/components/TabList/components/Tab/Tab.tsx +0 -19
  255. package/src/components/TabList/components/TabPanel/TabPanel.tsx +0 -27
  256. package/src/components/TabList/index.tsx +0 -44
  257. package/src/components/TabList/interface.ts +0 -23
  258. package/src/components/Typography/index.tsx +0 -35
  259. package/src/components/Typography/interface.ts +0 -9
  260. package/src/components/Typography/typo.stories.mdx +0 -157
  261. package/src/components/WysiwygBlock/index.tsx +0 -20
  262. package/src/components/WysiwygBlock/interface.ts +0 -7
  263. package/src/components/WysiwygBlock/wysiwyg.stories.mdx +0 -53
  264. package/src/components/fields/Checkbox/Checkbox.interface.ts +0 -21
  265. package/src/components/fields/Checkbox/Checkbox.stories.mdx +0 -127
  266. package/src/components/fields/Checkbox/index.tsx +0 -62
  267. package/src/components/fields/CheckboxGroup/checkbox-group.stories.mdx +0 -59
  268. package/src/components/fields/CheckboxGroup/components/CheckboxGroupItem/index.tsx +0 -66
  269. package/src/components/fields/CheckboxGroup/index.tsx +0 -49
  270. package/src/components/fields/CheckboxGroup/interface.ts +0 -17
  271. package/src/components/fields/DatePicker/DateRangePicker.tsx +0 -73
  272. package/src/components/fields/DatePicker/components/CalendarPopover.tsx +0 -31
  273. package/src/components/fields/DatePicker/components/DateField.tsx +0 -61
  274. package/src/components/fields/DatePicker/date-picker.stories.mdx +0 -55
  275. package/src/components/fields/DatePicker/index.tsx +0 -71
  276. package/src/components/fields/DatePicker/interface.ts +0 -69
  277. package/src/components/fields/Radio/Radio.interface.ts +0 -30
  278. package/src/components/fields/Radio/index.tsx +0 -63
  279. package/src/components/fields/RadioGroup/index.tsx +0 -33
  280. package/src/components/fields/RadioGroup/interface.ts +0 -10
  281. package/src/components/fields/RadioGroup/radio-group.stories.mdx +0 -56
  282. package/src/components/fields/SearchField/index.tsx +0 -59
  283. package/src/components/fields/SearchField/interface.ts +0 -10
  284. package/src/components/fields/SearchField/search.stories.mdx +0 -91
  285. package/src/components/fields/Select/Select.interface.ts +0 -24
  286. package/src/components/fields/Select/Select.stories.mdx +0 -53
  287. package/src/components/fields/Select/Select.tsx +0 -108
  288. package/src/components/fields/Select/components/Listbox.tsx +0 -40
  289. package/src/components/fields/Select/components/Popover.interface.ts +0 -14
  290. package/src/components/fields/Select/components/Popover.tsx +0 -32
  291. package/src/components/fields/SelectItem/SelectItem.tsx +0 -10
  292. package/src/components/fields/TextArea/index.tsx +0 -105
  293. package/src/components/fields/TextArea/textArea.stories.mdx +0 -60
  294. package/src/components/fields/TextInputField/index.tsx +0 -107
  295. package/src/components/fields/TextInputField/interface.ts +0 -30
  296. package/src/components/fields/TextInputField/text-input-field.stories.mdx +0 -64
  297. package/src/components/icons/ArrowDown.tsx +0 -11
  298. package/src/components/icons/ArrowLeft.tsx +0 -18
  299. package/src/components/icons/ArrowRight.tsx +0 -18
  300. package/src/components/icons/Check.tsx +0 -11
  301. package/src/components/icons/ChevronLeft.tsx +0 -11
  302. package/src/components/icons/ChevronRight.tsx +0 -11
  303. package/src/components/icons/CloseBtn.tsx +0 -11
  304. package/src/components/icons/Facebook.tsx +0 -14
  305. package/src/components/icons/FacebookColored.tsx +0 -16
  306. package/src/components/icons/FacebookRounded.tsx +0 -16
  307. package/src/components/icons/Globe.tsx +0 -38
  308. package/src/components/icons/IconFallback.tsx +0 -8
  309. package/src/components/icons/Instagram.tsx +0 -14
  310. package/src/components/icons/InstagramColored.tsx +0 -59
  311. package/src/components/icons/Link.tsx +0 -14
  312. package/src/components/icons/LinkedIn.tsx +0 -16
  313. package/src/components/icons/Mail.tsx +0 -16
  314. package/src/components/icons/Plus.tsx +0 -18
  315. package/src/components/icons/Search.tsx +0 -19
  316. package/src/components/icons/Share.tsx +0 -16
  317. package/src/components/icons/Twitter.tsx +0 -16
  318. package/src/components/icons/TwitterColored.tsx +0 -16
  319. package/src/components/icons/Upload.tsx +0 -14
  320. package/src/components/icons/X.tsx +0 -14
  321. package/src/components/icons/YouTube.tsx +0 -16
  322. package/src/components/icons/YouTubeColored.tsx +0 -17
  323. package/src/components/icons/index.ts +0 -24
  324. package/src/examples/PageLayout/index.tsx +0 -61
  325. package/src/examples/PageLayout/layout.stories.mdx +0 -35
  326. package/src/message.tsx +0 -8
  327. package/src/providers/Accordion/index.tsx +0 -15
  328. package/src/providers/Accordion/interface.ts +0 -14
  329. package/src/providers/Alerts/index.tsx +0 -15
  330. package/src/providers/Alerts/interface.ts +0 -11
  331. package/src/providers/CheckboxGroup/index.tsx +0 -22
  332. package/src/providers/Client/index.tsx +0 -21
  333. package/src/providers/Client/interface.ts +0 -13
  334. package/src/providers/Menu/index.tsx +0 -43
  335. package/src/providers/Menu/interface.ts +0 -32
  336. package/src/providers/RadioGroup/RadioGroup.interface.ts +0 -8
  337. package/src/providers/RadioGroup/RadioGroup.tsx +0 -25
  338. package/src/providers/SidePanel/index.tsx +0 -55
  339. package/src/providers/SidePanel/interface.ts +0 -26
  340. package/src/providers/Theme/hooks.ts +0 -25
  341. package/src/providers/Theme/index.tsx +0 -40
  342. package/src/providers/Theme/interface.ts +0 -28
  343. package/src/providers/Theme/utils.ts +0 -3
  344. package/src/providers/UserSearchQuery/index.tsx +0 -20
  345. package/src/providers/UserSearchQuery/interface.ts +0 -12
  346. package/src/storybook/Lightbox/LightboxControlledState.tsx +0 -28
  347. package/src/storybook/Menu/Menu.tsx +0 -177
  348. package/src/storybook/Menu/NestedMenu.tsx +0 -24
  349. package/src/storybook/Menu/mock.tsx +0 -84
  350. package/src/storybook/SelectField/index.tsx +0 -57
  351. package/src/storybook/ShareButtonExample/index.tsx +0 -66
  352. package/src/tailwind.css +0 -3
  353. package/src/theme/Accordion/index.tsx +0 -101
  354. package/src/theme/Alerts/index.ts +0 -97
  355. package/src/theme/Box/index.ts +0 -45
  356. package/src/theme/Button/index.tsx +0 -72
  357. package/src/theme/Calendar/index.tsx +0 -167
  358. package/src/theme/Carousel/index.ts +0 -36
  359. package/src/theme/Checkbox/index.ts +0 -49
  360. package/src/theme/CheckboxGroup/index.ts +0 -14
  361. package/src/theme/DatePicker/index.tsx +0 -42
  362. package/src/theme/Image/index.ts +0 -8
  363. package/src/theme/LightBox/index.ts +0 -56
  364. package/src/theme/Radio/index.ts +0 -31
  365. package/src/theme/RadioGroup/index.ts +0 -14
  366. package/src/theme/Search/index.ts +0 -20
  367. package/src/theme/ShareButton/index.tsx +0 -76
  368. package/src/theme/SidePanel/index.ts +0 -9
  369. package/src/theme/TextArea/index.ts +0 -25
  370. package/src/theme/Typography/index.tsx +0 -44
  371. package/src/theme/index.tsx +0 -178
  372. package/src/transitions/AccordionTransition.tsx +0 -26
  373. package/src/transitions/ModalTransition.tsx +0 -38
  374. package/src/transitions/RenderWithOpacity.tsx +0 -25
  375. package/src/transitions/RenderWithSlide.tsx +0 -21
  376. package/src/transitions/SidePanelTransition.tsx +0 -30
  377. package/src/types/components.ts +0 -34
  378. package/static/images/image.png +0 -0
  379. package/tailwind.config.js +0 -14
  380. package/tsconfig.json +0 -20
  381. package/tsconfig.lib.json +0 -25
  382. package/vite.config.ts +0 -58
@@ -1,14 +0,0 @@
1
- import isEqual from 'lodash.isequal'
2
- import React, { memo } from 'react'
3
-
4
- const SvgComponent = (props: React.SVGProps<SVGSVGElement>) => (
5
- <svg xmlns="http://www.w3.org/2000/svg" width={24} height={25} viewBox="0 0 24 25" fill="none" {...props}>
6
- <path
7
- d="M14.119 11.7052L20.4486 4.5H18.9492L13.4509 10.7549L9.0626 4.5H4L10.6374 13.9594L4 21.5142H5.4994L11.3021 14.9074L15.9374 21.5142H21M6.04057 5.60727H8.34407L18.9481 20.4613H16.644"
8
- fill="currentColor"
9
- />
10
- </svg>
11
- )
12
-
13
- const X = memo(SvgComponent, isEqual)
14
- export default X
@@ -1,16 +0,0 @@
1
- import isEqual from 'lodash.isequal'
2
- import React, { memo } from 'react'
3
-
4
- const SvgComponent = (props: React.SVGProps<SVGSVGElement>) => (
5
- <svg width={24} height={24} xmlns="http://www.w3.org/2000/svg" xmlSpace="preserve" viewBox="0 0 256 256" {...props}>
6
- <path
7
- fill="currentColor"
8
- strokeMiterlimit="10"
9
- strokeWidth="0"
10
- d="M249 67c-3-11-11-19-22-22-20-6-99-6-99-6s-79 0-99 6C18 48 10 56 7 67c-6 20-6 61-6 61s0 41 6 61c3 11 11 19 22 22 20 5 99 5 99 5s79 0 99-5c11-3 19-11 22-22 5-20 5-61 5-61s0-41-5-61zm-146 99V90l65 38-65 38z"
11
- />
12
- </svg>
13
- )
14
-
15
- const YouTube = memo(SvgComponent, isEqual)
16
- export default YouTube
@@ -1,17 +0,0 @@
1
- import isEqual from 'lodash.isequal'
2
- import React, { memo } from 'react'
3
-
4
- const SvgComponent = (props: React.SVGProps<SVGSVGElement>) => (
5
- <svg width={24} height={24} xmlns="http://www.w3.org/2000/svg" xmlSpace="preserve" viewBox="0 0 256 256" {...props}>
6
- <g fill="currentColor" strokeMiterlimit="10" strokeWidth="0">
7
- <path
8
- fill="red"
9
- d="M249.02 66.99a31.68 31.68 0 0 0-22.36-22.36c-19.72-5.29-98.8-5.29-98.8-5.29s-79.09 0-98.8 5.29A31.68 31.68 0 0 0 6.68 66.99c-5.28 19.72-5.28 60.87-5.28 60.87s0 41.15 5.28 60.87a31.68 31.68 0 0 0 22.36 22.36c19.72 5.28 98.8 5.28 98.8 5.28s79.1 0 98.81-5.28a31.68 31.68 0 0 0 22.36-22.36c5.29-19.72 5.29-60.87 5.29-60.87s0-41.15-5.29-60.87z"
10
- />
11
- <path fill="#fff" d="m102.57 165.8 65.7-37.94-65.7-37.94z" />
12
- </g>
13
- </svg>
14
- )
15
-
16
- const YouTubeColored = memo(SvgComponent, isEqual)
17
- export default YouTubeColored
@@ -1,24 +0,0 @@
1
- export { default as ArrowDown } from './ArrowDown'
2
- export { default as ArrowLeft } from './ArrowLeft'
3
- export { default as ArrowRight } from './ArrowRight'
4
- export { default as Check } from './Check'
5
- export { default as ChevronLeft } from './ChevronLeft'
6
- export { default as ChevronRight } from './ChevronRight'
7
- export { default as CloseBtn } from './CloseBtn'
8
- export { default as Facebook } from './Facebook'
9
- export { default as FacebookColored } from './FacebookColored'
10
- export { default as FacebookRounded } from './FacebookRounded'
11
- export { default as Globe } from './Globe'
12
- export { default as Instagram } from './Instagram'
13
- export { default as InstagramColored } from './InstagramColored'
14
- export { default as Link } from './Link'
15
- export { default as LinkedIn } from './LinkedIn'
16
- export { default as Mail } from './Mail'
17
- export { default as Plus } from './Plus'
18
- export { default as Share } from './Share'
19
- export { default as Twitter } from './Twitter'
20
- export { default as TwitterColored } from './TwitterColored'
21
- export { default as Upload } from './Upload'
22
- export { default as X } from './X'
23
- export { default as YouTube } from './YouTube'
24
- export { default as YouTubeColored } from './YouTubeColored'
@@ -1,61 +0,0 @@
1
- import Box from '../../components/Box'
2
- import type { TBoxProps } from '../../components/Box/interface'
3
- import Typography from '../../components/Typography'
4
-
5
- const Main = ({ children }: TBoxProps) => {
6
- return (
7
- <Box as="main" themeName="main">
8
- {children}
9
- </Box>
10
- )
11
- }
12
-
13
- const Container = ({ children, ...props }: TBoxProps) => {
14
- return (
15
- <Box themeName="container" {...props}>
16
- {children}
17
- </Box>
18
- )
19
- }
20
-
21
- const Grid = ({ children, ...props }: TBoxProps) => {
22
- return (
23
- <Box themeName="grid" {...props}>
24
- {children}
25
- </Box>
26
- )
27
- }
28
-
29
- const GridItem = ({ children, ...props }: TBoxProps) => {
30
- return (
31
- <Box as="li" themeName="gridItem" {...props}>
32
- {children}
33
- </Box>
34
- )
35
- }
36
-
37
- const PageLayoutExample = () => (
38
- <Main>
39
- <Container tokens={{ spacing: 'small' }}>
40
- <Typography as="h1" tokens={{ size: 'h1', align: 'center' }}>
41
- Hello world
42
- </Typography>
43
- </Container>
44
- <Container tokens={{ spacing: 'large' }}>
45
- <Grid as="ul">
46
- <GridItem tokens={{ size: 'medium' }}>1</GridItem>
47
- <GridItem>2</GridItem>
48
- <GridItem>3</GridItem>
49
- <GridItem>4</GridItem>
50
- <GridItem>5</GridItem>
51
- </Grid>
52
- </Container>
53
- <Container tokens={{ fullWidth: true, className: 'bg-red-200 py-8' }}>
54
- <Grid as="ul">
55
- <GridItem tokens={{ size: 'large', className: 'h-96' }}>Large</GridItem>
56
- </Grid>
57
- </Container>
58
- </Main>
59
- )
60
-
61
- export default PageLayoutExample
@@ -1,35 +0,0 @@
1
- {/* layout.stories.mdx */}
2
-
3
- import { Canvas, Meta, Story } from '@storybook/addon-docs'
4
- import PageLayoutExample from './index'
5
-
6
- <Meta title="LAYOUT EXAMPLE/Simple" component={PageLayoutExample} />
7
-
8
- export const Template = (args) => (
9
- <>
10
- <style>
11
- {`
12
- #storybook-root {
13
- width: 100%;
14
- padding: 0! important;
15
- }
16
- `}
17
- </style>
18
- <PageLayoutExample {...args} />
19
- </>
20
- )
21
-
22
- # Box
23
-
24
- Box component. Generic wrapper for your website or app.
25
-
26
- <Canvas layout="fullscreen">
27
- <Story
28
- name="Box"
29
- args={{
30
- as: 'div',
31
- }}
32
- >
33
- {Template.bind({})}
34
- </Story>
35
- </Canvas>
package/src/message.tsx DELETED
@@ -1,8 +0,0 @@
1
- import type { FC } from 'react'
2
-
3
- type Props = {
4
- message: string
5
- children?: never
6
- }
7
-
8
- export const Message: FC<Props> = ({ message }) => <span>{message}</span>
@@ -1,15 +0,0 @@
1
- 'use client'
2
-
3
- import { createCtxNullable } from '@okam/core-lib'
4
- import { useMemo } from 'react'
5
- import type { TAccordionContext, TAccordionProviderProps } from './interface'
6
-
7
- export const [useAccordionCtx, AccordionProvider] = createCtxNullable<TAccordionContext>()
8
-
9
- export function AccordionContextProvider(props: TAccordionProviderProps) {
10
- const { state, children, TransitionAnimation } = props
11
-
12
- const value = useMemo<TAccordionContext>(() => ({ state, TransitionAnimation }), [state, TransitionAnimation])
13
-
14
- return <AccordionProvider value={value}>{children}</AccordionProvider>
15
- }
@@ -1,14 +0,0 @@
1
- import type { ReactNode } from 'react'
2
- import type { TreeState } from 'react-stately'
3
- import type { TAccordionItemProps, TAccordionProps } from '../../components/Accordion/interface'
4
-
5
- type TAccordion = NonNullable<Pick<TAccordionProps, 'TransitionAnimation'>>
6
-
7
- export interface TAccordionProviderProps extends TAccordion {
8
- children: ReactNode
9
- state: TreeState<TAccordionItemProps>
10
- }
11
-
12
- export type TAccordionContext = TAccordion & {
13
- state: TreeState<TAccordionItemProps>
14
- }
@@ -1,15 +0,0 @@
1
- 'use client'
2
-
3
- import { createCtxNullable } from '@okam/core-lib'
4
- import { useMemo } from 'react'
5
- import type { TAlertsControllerContext, TAlertsControllerProviderProps } from './interface'
6
-
7
- export const [useAlertsController, AlertsControllerProvider] = createCtxNullable<TAlertsControllerContext>()
8
-
9
- export function AlertsControllerContextProvider(props: TAlertsControllerProviderProps) {
10
- const { controller, children } = props
11
-
12
- const value = useMemo<TAlertsControllerContext>(() => ({ controller }), [controller])
13
-
14
- return <AlertsControllerProvider value={value}>{children}</AlertsControllerProvider>
15
- }
@@ -1,11 +0,0 @@
1
- import type { ReactNode } from 'react'
2
- import type { SwiperClass } from 'swiper/react'
3
-
4
- export interface TAlertsControllerProviderProps {
5
- children: ReactNode
6
- controller: SwiperClass | undefined
7
- }
8
-
9
- export type TAlertsControllerContext = {
10
- controller: SwiperClass | undefined
11
- }
@@ -1,22 +0,0 @@
1
- 'use client'
2
-
3
- import type { CheckboxGroupState } from '@react-stately/checkbox'
4
- import { createContext, useContext } from 'react'
5
- import type { TCheckboxGroupContext } from './interface'
6
-
7
- const CheckboxGroupContext = createContext<CheckboxGroupState | null>(null)
8
-
9
- const CheckboxGroupProvider = (props: TCheckboxGroupContext) => {
10
- const { children, state } = props
11
-
12
- return <CheckboxGroupContext.Provider value={state}>{children}</CheckboxGroupContext.Provider>
13
- }
14
-
15
- function useCheckboxGroupCtx() {
16
- const context = useContext(CheckboxGroupContext)
17
-
18
- if (!context) return null
19
- return context
20
- }
21
-
22
- export { CheckboxGroupProvider, useCheckboxGroupCtx }
@@ -1,21 +0,0 @@
1
- 'use client'
2
-
3
- import { createCtx } from '@okam/core-lib'
4
- import { useEffect, useMemo, useState } from 'react'
5
- import type { TClientContext, TClientProps, TClientProviderProps } from './interface'
6
-
7
- const [useIsClient, IsClientProvider] = createCtx<TClientProps>()
8
-
9
- export { useIsClient }
10
-
11
- export function IsClientContextProvider({ children }: TClientProviderProps) {
12
- const [isClient, setIsClient] = useState(false)
13
-
14
- useEffect(() => {
15
- setIsClient(true)
16
- }, [])
17
-
18
- const value = useMemo<TClientContext>(() => ({ isClient }), [isClient])
19
-
20
- return <IsClientProvider value={value}>{children}</IsClientProvider>
21
- }
@@ -1,13 +0,0 @@
1
- import type React from 'react'
2
-
3
- export type TClientProviderProps = {
4
- children: React.ReactNode
5
- }
6
-
7
- export type TClientProps = {
8
- isClient: boolean
9
- }
10
-
11
- export type TClientContext = {
12
- isClient: boolean
13
- }
@@ -1,43 +0,0 @@
1
- 'use client'
2
-
3
- import { createCtxNullable } from '@okam/core-lib'
4
- import { useMemo } from 'react'
5
- import { useTabListState } from 'react-stately'
6
- import { SidePanelContextProvider } from '../SidePanel'
7
- import type { IMenuProviderProps, TMenuContext } from './interface'
8
-
9
- export const [useMenu, MenuProvider] = createCtxNullable<TMenuContext>()
10
-
11
- export function MenuContextProvider({
12
- children,
13
- defaultSelectedKey,
14
- defaultIsOpen,
15
- onCloseCallback,
16
- onOpenCallback,
17
- tabs,
18
- openBtn,
19
- closeBtn,
20
- ...rest
21
- }: IMenuProviderProps) {
22
- const tabState = useTabListState({ ...rest, children: tabs, defaultSelectedKey })
23
- const value = useMemo<TMenuContext>(
24
- () => ({ openBtn, closeBtn, tabState, defaultSelectedKey }),
25
- [openBtn, closeBtn, tabState, defaultSelectedKey],
26
- )
27
-
28
- return (
29
- <MenuProvider value={value}>
30
- <SidePanelContextProvider
31
- onCloseCallback={() => {
32
- onCloseCallback?.()
33
- tabState?.setSelectedKey?.(defaultSelectedKey)
34
- }}
35
- onOpenCallback={onOpenCallback}
36
- defaultIsOpen={defaultIsOpen}
37
- defaultSelectedKey={defaultSelectedKey.toString()}
38
- >
39
- {children}
40
- </SidePanelContextProvider>
41
- </MenuProvider>
42
- )
43
- }
@@ -1,32 +0,0 @@
1
- import type { CollectionChildren } from '@react-types/shared'
2
- import type React from 'react'
3
- import type { AriaTabListProps } from 'react-aria'
4
- import type { TabListState } from 'react-stately'
5
-
6
- export type TMenuProviderProps = {
7
- children: React.ReactNode
8
- tabs?: CollectionChildren<object>
9
- defaultSelectedKey: string
10
- defaultIsOpen?: boolean
11
- onCloseCallback?: () => void
12
- onOpenCallback?: () => void
13
- openBtn?: () => JSX.Element
14
- closeBtn?: () => JSX.Element
15
- secondaryOpenBtn?: () => JSX.Element
16
- }
17
-
18
- export type IMenuProviderProps = AriaTabListProps<TMenuProviderProps> & TMenuProviderProps
19
-
20
- export type TMenuContext = {
21
- openBtn?: () => JSX.Element
22
- closeBtn?: () => JSX.Element
23
- secondaryOpenBtn?: () => JSX.Element
24
- tabState: TabListState<object>
25
- defaultSelectedKey: string
26
- }
27
-
28
- export type TMenuProps = {
29
- openBtn?: () => JSX.Element
30
- closeBtn?: () => JSX.Element
31
- secondaryOpenBtn?: () => JSX.Element
32
- }
@@ -1,8 +0,0 @@
1
- import type { RadioGroupProps } from '@react-types/radio'
2
- import type { ReactNode } from 'react'
3
- import type { RadioGroupState } from 'react-stately'
4
-
5
- export interface TRadioGroupContext extends RadioGroupProps {
6
- children: ReactNode
7
- state: RadioGroupState
8
- }
@@ -1,25 +0,0 @@
1
- 'use client'
2
-
3
- import type { RadioGroupState } from '@react-stately/radio'
4
- import { createContext, useContext } from 'react'
5
- import type { TRadioGroupContext } from './RadioGroup.interface'
6
-
7
- const RadioGroupContext = createContext<RadioGroupState | null>(null)
8
-
9
- const RadioGroupProvider = (props: TRadioGroupContext) => {
10
- const { children, state } = props
11
-
12
- return <RadioGroupContext.Provider value={state}>{children}</RadioGroupContext.Provider>
13
- }
14
-
15
- function useRadioGroupCtx() {
16
- const context = useContext(RadioGroupContext)
17
-
18
- if (context !== null) {
19
- return context
20
- }
21
-
22
- return null
23
- }
24
-
25
- export { RadioGroupProvider, useRadioGroupCtx }
@@ -1,55 +0,0 @@
1
- 'use client'
2
-
3
- import { createCtx } from '@okam/core-lib'
4
- import { useMemo, useRef } from 'react'
5
- import { useOverlayTriggerState } from 'react-stately'
6
- import useOverlayHook from '../../components/Lightbox/hooks/overlay'
7
- import type { TSidePanelContext, TSidePanelProviderProps } from './interface'
8
-
9
- const [useSidePanel, SidePanelProvider] = createCtx<TSidePanelContext>()
10
-
11
- export { useSidePanel }
12
-
13
- export function SidePanelContextProvider(props: TSidePanelProviderProps) {
14
- const {
15
- children,
16
- defaultSelectedKey,
17
- onOpenCallback,
18
- onCloseCallback,
19
- defaultIsOpen = false,
20
- type = 'dialog',
21
- } = props
22
-
23
- const openButtonRef = useRef(null)
24
- const closeButtonRef = useRef(null)
25
-
26
- const overlayState = useOverlayTriggerState({
27
- defaultOpen: defaultIsOpen,
28
- onOpenChange(isOpen) {
29
- if (!isOpen) {
30
- onCloseCallback?.()
31
- return
32
- }
33
- onOpenCallback?.()
34
- },
35
- })
36
-
37
- const { triggerProps, overlayProps } = useOverlayHook({ type }, overlayState)
38
-
39
- const value = useMemo<TSidePanelContext>(
40
- () => ({
41
- overlayProps,
42
- defaultSelectedKey,
43
- overlayState,
44
- buttonProps: {
45
- closeButtonProps: triggerProps,
46
- closeButtonRef,
47
- openButtonProps: triggerProps,
48
- openButtonRef,
49
- },
50
- }),
51
- [overlayState, defaultSelectedKey, triggerProps, overlayProps],
52
- )
53
-
54
- return <SidePanelProvider value={value}>{children}</SidePanelProvider>
55
- }
@@ -1,26 +0,0 @@
1
- import type { OverlayTriggerState } from '@react-stately/overlays'
2
- import type { DOMProps } from '@react-types/shared'
3
- import type React from 'react'
4
- import type { OverlayTriggerProps } from 'react-aria'
5
-
6
- export type TSidePanelProviderProps = Partial<OverlayTriggerProps> & {
7
- children: React.ReactNode
8
- defaultSelectedKey: string
9
- defaultIsOpen?: boolean
10
- onOpenCallback?: () => void
11
- onCloseCallback?: () => void
12
- }
13
-
14
- export type TButtonProps = {
15
- closeButtonProps: React.ButtonHTMLAttributes<HTMLButtonElement>
16
- closeButtonRef: React.MutableRefObject<null>
17
- openButtonProps: React.HTMLAttributes<HTMLDivElement>
18
- openButtonRef: React.MutableRefObject<null>
19
- }
20
-
21
- export type TSidePanelContext = {
22
- defaultSelectedKey: string
23
- overlayState: OverlayTriggerState
24
- buttonProps: TButtonProps
25
- overlayProps: DOMProps
26
- }
@@ -1,25 +0,0 @@
1
- 'use client'
2
-
3
- import { get } from 'radash'
4
- import type { TCustomTheme, TToken } from './interface'
5
- import { useTheme } from './index'
6
-
7
- const useThemeContext = (func?: string | null, props: TToken = {}, customTheme: TCustomTheme = null) => {
8
- const theme = useTheme()
9
- if (theme != null && func != null) {
10
- const { brandTheme } = theme
11
- const themeFunc = get(brandTheme, func)
12
- if (typeof themeFunc === 'function') {
13
- const returnValue = themeFunc?.(props)
14
- if (typeof returnValue === 'string') {
15
- return returnValue
16
- }
17
- }
18
- }
19
- if (!customTheme) {
20
- return undefined
21
- }
22
- return customTheme
23
- }
24
-
25
- export default useThemeContext
@@ -1,40 +0,0 @@
1
- 'use client'
2
-
3
- import React, { useMemo } from 'react'
4
- import type { TThemeProviderProps, TThemePanelContext, TDefaultTheme, TTheme } from './interface'
5
-
6
- export function createCtxNullable<A extends Record<string, unknown> | null>() {
7
- const ctx = React.createContext<A | undefined>(undefined)
8
- function useCtx() {
9
- const c = React.useContext(ctx)
10
-
11
- if (c === undefined) {
12
- return null
13
- }
14
-
15
- return c
16
- }
17
- return [useCtx, ctx.Provider] as const // 'as const' makes TypeScript infer a tuple
18
- }
19
-
20
- const defaultTheme: TDefaultTheme = {
21
- typography: () => '',
22
- }
23
-
24
- const [useTheme, ThemeProvider] = createCtxNullable<TThemePanelContext<TTheme>>()
25
-
26
- export function ThemeContextProvider({ children, brandTheme = defaultTheme }: TThemeProviderProps) {
27
- const value = useMemo<TThemePanelContext>(() => ({ brandTheme }), [brandTheme])
28
- return <ThemeProvider value={value}>{children}</ThemeProvider>
29
- }
30
-
31
- export const createThemeProvider = (brandTheme: TTheme) => {
32
- const ThemeProviderContext = ({ children }: { children: React.ReactNode }) => (
33
- <ThemeContextProvider brandTheme={brandTheme}>{children}</ThemeContextProvider>
34
- )
35
- return ThemeProviderContext
36
- }
37
-
38
- export { useTheme }
39
-
40
- export { makeTheme } from './utils'
@@ -1,28 +0,0 @@
1
- import type React from 'react'
2
-
3
- export type TStyleValue = false | string
4
- export type TToken = Record<string, string | boolean>
5
- export type TFunc = (props: TToken) => TStyleValue[] | string
6
- export type TTheme = { [key: string]: TFunc | TTheme }
7
-
8
- export type TStyle = Record<string, TStyleValue>
9
- export type TCustomTheme = TStyleValue | null | undefined
10
- export type TStyleCollection = Record<string, TStyle>
11
-
12
- export type TDefaultTheme = {
13
- typography: (props: TToken) => TStyleValue[] | string
14
- }
15
-
16
- export type TThemeProviderProps<T = TTheme> = {
17
- children: React.ReactNode
18
- brandTheme?: T
19
- }
20
-
21
- export type TThemePanelContext<T = TTheme> = {
22
- brandTheme: T
23
- }
24
-
25
- export interface ITheme {
26
- defaultTokens: TToken
27
- styles: TStyleCollection
28
- }
@@ -1,3 +0,0 @@
1
- import type { TTheme } from './interface'
2
-
3
- export const makeTheme = (theme: TTheme) => theme
@@ -1,20 +0,0 @@
1
- 'use client'
2
-
3
- import { createCtx } from '@okam/core-lib'
4
- import { useMemo, useState } from 'react'
5
- import type { TSearchListingContext, TSearchProviderProps } from './interface'
6
-
7
- export const [useUserQueryValHook, SearchProvider] = createCtx<TSearchListingContext>()
8
-
9
- export function SearchBarProvider(props: TSearchProviderProps) {
10
- const { userQuery, children } = props
11
-
12
- const [userVal, setUserVal] = useState(userQuery)
13
-
14
- const value = useMemo<TSearchListingContext>(
15
- () => ({ userSearchQuery: userVal, setUserSearchQuery: setUserVal }),
16
- [userVal, setUserVal],
17
- )
18
-
19
- return <SearchProvider value={value}>{children}</SearchProvider>
20
- }
@@ -1,12 +0,0 @@
1
- import type { Dispatch, SetStateAction } from 'react'
2
- import type React from 'react'
3
-
4
- export type TSearchListingContext = {
5
- userSearchQuery: string
6
- setUserSearchQuery: Dispatch<SetStateAction<string>>
7
- }
8
-
9
- export interface TSearchProviderProps {
10
- children: React.ReactNode
11
- userQuery: string
12
- }
@@ -1,28 +0,0 @@
1
- import { useState } from 'react'
2
- import Button from '../../components/Button'
3
- import type { TButtonProps } from '../../components/Button/interface'
4
- import Lightbox from '../../components/Lightbox'
5
- import type { TLightboxProps } from '../../components/Lightbox/interface'
6
-
7
- const LightboxControlledState = (props: TLightboxProps) => {
8
- const { children, ...rest } = props
9
-
10
- const [isOpen, setOpen] = useState(false)
11
-
12
- const closeButtonRender = (buttonProps: TButtonProps) => (
13
- <Button {...buttonProps} handlePress={() => setOpen(!isOpen)}>
14
- Close lightbox
15
- </Button>
16
- )
17
-
18
- return (
19
- <>
20
- <Button handlePress={() => setOpen(!isOpen)}>Open lightbox</Button>
21
- <Lightbox {...rest} isOpen={isOpen} setOpen={setOpen} closeButton={closeButtonRender}>
22
- {children}
23
- </Lightbox>
24
- </>
25
- )
26
- }
27
-
28
- export default LightboxControlledState