@clickhouse/click-ui 0.0.3 → 0.0.5

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 (427) hide show
  1. package/dist/{index.js → click-ui.es.js} +4553 -5052
  2. package/dist/click-ui.umd.js +442 -0
  3. package/package.json +14 -6
  4. package/.eslintrc.cjs +0 -33
  5. package/.github/workflows/deployment.yml +0 -34
  6. package/.prettierrc +0 -14
  7. package/.storybook/main.ts +0 -19
  8. package/.storybook/manager.ts +0 -11
  9. package/.storybook/preview-head.html +0 -2
  10. package/.storybook/preview.tsx +0 -76
  11. package/.storybook/theme.ts +0 -16
  12. package/build-tokens.js +0 -131
  13. package/dist/App.d.ts +0 -2
  14. package/dist/assets/RightArrow/RightArrow.d.ts +0 -1
  15. package/dist/assets/S3Logo/S3Logo.d.ts +0 -1
  16. package/dist/components/Accordion/Accordion.d.ts +0 -27
  17. package/dist/components/Accordion/Accordion.stories.d.ts +0 -21
  18. package/dist/components/Accordion/Accordion.test.d.ts +0 -1
  19. package/dist/components/Alert/Alert.d.ts +0 -16
  20. package/dist/components/Alert/Alert.stories.d.ts +0 -12
  21. package/dist/components/Alert/Alert.test.d.ts +0 -1
  22. package/dist/components/Avatar/Avatar.d.ts +0 -7
  23. package/dist/components/Avatar/Avatar.stories.d.ts +0 -11
  24. package/dist/components/Badge/Badge.d.ts +0 -16
  25. package/dist/components/Badge/Badge.stories.d.ts +0 -34
  26. package/dist/components/Badge/Badge.test.d.ts +0 -1
  27. package/dist/components/BigStat/BigStat.d.ts +0 -10
  28. package/dist/components/BigStat/BigStat.stories.d.ts +0 -20
  29. package/dist/components/Button/Button.d.ts +0 -23
  30. package/dist/components/Button/Button.stories.d.ts +0 -28
  31. package/dist/components/Button/Button.test.d.ts +0 -1
  32. package/dist/components/ButtonGroup/ButtonGroup.d.ts +0 -6
  33. package/dist/components/ButtonGroup/ButtonGroup.stories.d.ts +0 -12
  34. package/dist/components/Card/Card.d.ts +0 -10
  35. package/dist/components/Card/Card.stories.d.ts +0 -16
  36. package/dist/components/Checkbox/Checkbox.d.ts +0 -5
  37. package/dist/components/Checkbox/Checkbox.stories.d.ts +0 -29
  38. package/dist/components/Checkbox/Checkbox.test.d.ts +0 -1
  39. package/dist/components/ContextMenu/ContextMenu.d.ts +0 -38
  40. package/dist/components/ContextMenu/ContextMenu.stories.d.ts +0 -30
  41. package/dist/components/ContextMenu/ContextMenu.test.d.ts +0 -1
  42. package/dist/components/Dropdown/Dropdown.d.ts +0 -38
  43. package/dist/components/Dropdown/Dropdown.stories.d.ts +0 -36
  44. package/dist/components/Dropdown/Dropdown.test.d.ts +0 -1
  45. package/dist/components/FormField/Label.d.ts +0 -7
  46. package/dist/components/FormField/Label.stories.d.ts +0 -28
  47. package/dist/components/FormField/Select.d.ts +0 -43
  48. package/dist/components/FormField/Select.stories.d.ts +0 -54
  49. package/dist/components/FormField/Select.test.d.ts +0 -0
  50. package/dist/components/FormField/SelectContext.d.ts +0 -24
  51. package/dist/components/FormField/commonElement.d.ts +0 -1100
  52. package/dist/components/GenericMenu.d.ts +0 -764
  53. package/dist/components/HoverCard/HoverCard.d.ts +0 -20
  54. package/dist/components/HoverCard/HoverCard.stories.d.ts +0 -36
  55. package/dist/components/HoverCard/HoverCard.test.d.ts +0 -0
  56. package/dist/components/Icon/Icon.d.ts +0 -571
  57. package/dist/components/Icon/Icon.stories.d.ts +0 -495
  58. package/dist/components/Icon/types.d.ts +0 -8
  59. package/dist/components/IconButton/IconButton.d.ts +0 -15
  60. package/dist/components/IconButton/IconButton.stories.d.ts +0 -30
  61. package/dist/components/IconButton/IconButton.test.d.ts +0 -1
  62. package/dist/components/Panel/Panel.d.ts +0 -11
  63. package/dist/components/Panel/Panel.stories.d.ts +0 -23
  64. package/dist/components/Popover/Popover.d.ts +0 -23
  65. package/dist/components/Popover/Popover.stories.d.ts +0 -43
  66. package/dist/components/Popover/Popover.test.d.ts +0 -1
  67. package/dist/components/RadioGroup/RadioGroup.d.ts +0 -17
  68. package/dist/components/RadioGroup/RadioGroup.stories.d.ts +0 -39
  69. package/dist/components/RadioGroup/RadioGroup.test.d.ts +0 -1
  70. package/dist/components/Separator/Separator.d.ts +0 -6
  71. package/dist/components/SidebarNavigationItem/SidebarNavigationItem.d.ts +0 -17
  72. package/dist/components/SidebarNavigationItem/SidebarNavigationItem.stories.d.ts +0 -20
  73. package/dist/components/Spacer/Spacer.d.ts +0 -4
  74. package/dist/components/Spacer/Spacer.stories.d.ts +0 -19
  75. package/dist/components/Switch/Switch.d.ts +0 -7
  76. package/dist/components/Switch/Switch.stories.d.ts +0 -13
  77. package/dist/components/Table/Table.d.ts +0 -568
  78. package/dist/components/Table/Table.stories.d.ts +0 -575
  79. package/dist/components/Tabs/Tabs.d.ts +0 -848
  80. package/dist/components/Tabs/Tabs.stories.d.ts +0 -845
  81. package/dist/components/Tabs/Tabs.test.d.ts +0 -1
  82. package/dist/components/Tooltip/Tooltip.d.ts +0 -17
  83. package/dist/components/Tooltip/Tooltip.stories.d.ts +0 -45
  84. package/dist/components/Tooltip/Tooltip.test.d.ts +0 -1
  85. package/dist/components/Typography/Text/Text.d.ts +0 -12
  86. package/dist/components/Typography/Text/Text.stories.d.ts +0 -22
  87. package/dist/components/Typography/Text/Text.test.d.ts +0 -1
  88. package/dist/components/Typography/Title/Title.d.ts +0 -14
  89. package/dist/components/Typography/Title/Title.stories.d.ts +0 -35
  90. package/dist/components/Typography/Title/Title.test.d.ts +0 -1
  91. package/dist/components/icons/Activity.d.ts +0 -3
  92. package/dist/components/icons/ArrowDown.d.ts +0 -3
  93. package/dist/components/icons/ArrowRight.d.ts +0 -3
  94. package/dist/components/icons/ArrowTriangle.d.ts +0 -3
  95. package/dist/components/icons/ArrowUp.d.ts +0 -3
  96. package/dist/components/icons/Backups.d.ts +0 -3
  97. package/dist/components/icons/Blog.d.ts +0 -3
  98. package/dist/components/icons/Book.d.ts +0 -3
  99. package/dist/components/icons/Brackets.d.ts +0 -3
  100. package/dist/components/icons/Briefcase.d.ts +0 -3
  101. package/dist/components/icons/Building.d.ts +0 -3
  102. package/dist/components/icons/BurgerMenu.d.ts +0 -3
  103. package/dist/components/icons/Cards.d.ts +0 -3
  104. package/dist/components/icons/CellTower.d.ts +0 -3
  105. package/dist/components/icons/ChatIcon.d.ts +0 -3
  106. package/dist/components/icons/CheckIcon.d.ts +0 -3
  107. package/dist/components/icons/CheckInCircle.d.ts +0 -3
  108. package/dist/components/icons/ChevronDown.d.ts +0 -2
  109. package/dist/components/icons/ChevronLeft.d.ts +0 -3
  110. package/dist/components/icons/ChevronRight.d.ts +0 -2
  111. package/dist/components/icons/ChevronUp.d.ts +0 -3
  112. package/dist/components/icons/Clock.d.ts +0 -3
  113. package/dist/components/icons/Cloud.d.ts +0 -3
  114. package/dist/components/icons/Code.d.ts +0 -3
  115. package/dist/components/icons/CodeInSquare.d.ts +0 -3
  116. package/dist/components/icons/Connect.d.ts +0 -3
  117. package/dist/components/icons/ConnectAlt.d.ts +0 -3
  118. package/dist/components/icons/Console.d.ts +0 -3
  119. package/dist/components/icons/Copy.d.ts +0 -3
  120. package/dist/components/icons/CrossIcon.d.ts +0 -3
  121. package/dist/components/icons/Data.d.ts +0 -3
  122. package/dist/components/icons/DatabaseIcon.d.ts +0 -3
  123. package/dist/components/icons/Disk.d.ts +0 -3
  124. package/dist/components/icons/Display.d.ts +0 -3
  125. package/dist/components/icons/Document.d.ts +0 -3
  126. package/dist/components/icons/DotsHorizontal.d.ts +0 -3
  127. package/dist/components/icons/DotsVertical.d.ts +0 -3
  128. package/dist/components/icons/Email.d.ts +0 -3
  129. package/dist/components/icons/Empty.d.ts +0 -3
  130. package/dist/components/icons/FilterIcon.d.ts +0 -3
  131. package/dist/components/icons/Fire.d.ts +0 -3
  132. package/dist/components/icons/Flags/EuropeanUnion.d.ts +0 -3
  133. package/dist/components/icons/Flags/Germany.d.ts +0 -3
  134. package/dist/components/icons/Flags/India.d.ts +0 -3
  135. package/dist/components/icons/Flags/Ireland.d.ts +0 -3
  136. package/dist/components/icons/Flags/Netherlands.d.ts +0 -3
  137. package/dist/components/icons/Flags/Singapore.d.ts +0 -2
  138. package/dist/components/icons/Flags/UnitedKingdom.d.ts +0 -3
  139. package/dist/components/icons/Flags/UnitedStates.d.ts +0 -3
  140. package/dist/components/icons/Flags/index.d.ts +0 -6
  141. package/dist/components/icons/Folder.d.ts +0 -3
  142. package/dist/components/icons/Gift.d.ts +0 -3
  143. package/dist/components/icons/HistoryIcon.d.ts +0 -3
  144. package/dist/components/icons/Home.d.ts +0 -3
  145. package/dist/components/icons/Http.d.ts +0 -3
  146. package/dist/components/icons/InfoInCircleIcon.d.ts +0 -3
  147. package/dist/components/icons/InformationIcon.d.ts +0 -3
  148. package/dist/components/icons/InsertRowIcon.d.ts +0 -3
  149. package/dist/components/icons/Integrations.d.ts +0 -3
  150. package/dist/components/icons/LightBulb.d.ts +0 -3
  151. package/dist/components/icons/Lightening.d.ts +0 -3
  152. package/dist/components/icons/Loading.d.ts +0 -3
  153. package/dist/components/icons/Metrics.d.ts +0 -3
  154. package/dist/components/icons/MetricsAlt.d.ts +0 -3
  155. package/dist/components/icons/Payment.d.ts +0 -3
  156. package/dist/components/icons/Payments/Amex.d.ts +0 -3
  157. package/dist/components/icons/Payments/MasterCard.d.ts +0 -3
  158. package/dist/components/icons/Payments/Paypal.d.ts +0 -3
  159. package/dist/components/icons/Payments/Visa.d.ts +0 -3
  160. package/dist/components/icons/Payments/index.d.ts +0 -6
  161. package/dist/components/icons/Pencil.d.ts +0 -3
  162. package/dist/components/icons/PieChart.d.ts +0 -3
  163. package/dist/components/icons/Play.d.ts +0 -3
  164. package/dist/components/icons/Plus.d.ts +0 -3
  165. package/dist/components/icons/Popout.d.ts +0 -3
  166. package/dist/components/icons/PopoverArrow.d.ts +0 -3
  167. package/dist/components/icons/Question.d.ts +0 -3
  168. package/dist/components/icons/Refresh.d.ts +0 -3
  169. package/dist/components/icons/Search.d.ts +0 -3
  170. package/dist/components/icons/Secure.d.ts +0 -3
  171. package/dist/components/icons/Services.d.ts +0 -3
  172. package/dist/components/icons/Settings.d.ts +0 -3
  173. package/dist/components/icons/Share.d.ts +0 -3
  174. package/dist/components/icons/SlideIn.d.ts +0 -3
  175. package/dist/components/icons/SlideOut.d.ts +0 -3
  176. package/dist/components/icons/SortAltIcon.d.ts +0 -3
  177. package/dist/components/icons/SortIcon.d.ts +0 -3
  178. package/dist/components/icons/Sparkle.d.ts +0 -3
  179. package/dist/components/icons/Speaker.d.ts +0 -3
  180. package/dist/components/icons/Speed.d.ts +0 -3
  181. package/dist/components/icons/Star.d.ts +0 -3
  182. package/dist/components/icons/Support.d.ts +0 -3
  183. package/dist/components/icons/Table.d.ts +0 -3
  184. package/dist/components/icons/Taxi.d.ts +0 -3
  185. package/dist/components/icons/Trash.d.ts +0 -3
  186. package/dist/components/icons/Upload.d.ts +0 -3
  187. package/dist/components/icons/Url.d.ts +0 -3
  188. package/dist/components/icons/UserIcon.d.ts +0 -2
  189. package/dist/components/icons/UsersIcon.d.ts +0 -2
  190. package/dist/components/icons/WarningIcon.d.ts +0 -3
  191. package/dist/components/index.d.ts +0 -24
  192. package/dist/components/types.d.ts +0 -1
  193. package/dist/index.cjs +0 -442
  194. package/dist/index.d.ts +0 -2
  195. package/dist/main.d.ts +0 -0
  196. package/dist/styles/types.d.ts +0 -2087
  197. package/dist/styles/variables.classic.json.d.ts +0 -204
  198. package/dist/styles/variables.dark.json.d.ts +0 -896
  199. package/dist/styles/variables.json.d.ts +0 -2089
  200. package/dist/styles/variables.light.json.d.ts +0 -951
  201. package/dist/theme/index.d.ts +0 -10
  202. package/dist/theme/theme.d.ts +0 -6
  203. package/index.html +0 -17
  204. package/jest.config.ts +0 -11
  205. package/public/favicon.ico +0 -0
  206. package/public/logo.svg +0 -17
  207. package/public/vite.svg +0 -1
  208. package/src/App.css +0 -1
  209. package/src/App.module.css +0 -235
  210. package/src/App.tsx +0 -217
  211. package/src/assets/RightArrow/RightArrow.tsx +0 -17
  212. package/src/assets/S3Logo/S3Logo.tsx +0 -31
  213. package/src/assets/react.svg +0 -1
  214. package/src/components/Accordion/Accordion.stories.tsx +0 -28
  215. package/src/components/Accordion/Accordion.test.tsx +0 -46
  216. package/src/components/Accordion/Accordion.tsx +0 -119
  217. package/src/components/Alert/Alert.stories.tsx +0 -14
  218. package/src/components/Alert/Alert.test.tsx +0 -27
  219. package/src/components/Alert/Alert.tsx +0 -130
  220. package/src/components/Avatar/Avatar.stories.tsx +0 -13
  221. package/src/components/Avatar/Avatar.tsx +0 -64
  222. package/src/components/Badge/Badge.stories.ts +0 -30
  223. package/src/components/Badge/Badge.test.tsx +0 -16
  224. package/src/components/Badge/Badge.tsx +0 -78
  225. package/src/components/BigStat/BigStat.stories.ts +0 -20
  226. package/src/components/BigStat/BigStat.tsx +0 -49
  227. package/src/components/Button/Button.stories.ts +0 -26
  228. package/src/components/Button/Button.test.tsx +0 -32
  229. package/src/components/Button/Button.tsx +0 -115
  230. package/src/components/ButtonGroup/ButtonGroup.stories.ts +0 -14
  231. package/src/components/ButtonGroup/ButtonGroup.tsx +0 -78
  232. package/src/components/Card/Card.stories.ts +0 -19
  233. package/src/components/Card/Card.tsx +0 -107
  234. package/src/components/Checkbox/Checkbox.stories.tsx +0 -35
  235. package/src/components/Checkbox/Checkbox.test.tsx +0 -41
  236. package/src/components/Checkbox/Checkbox.tsx +0 -89
  237. package/src/components/ContextMenu/ContextMenu.stories.tsx +0 -73
  238. package/src/components/ContextMenu/ContextMenu.test.tsx +0 -152
  239. package/src/components/ContextMenu/ContextMenu.tsx +0 -155
  240. package/src/components/Dropdown/Dropdown.stories.tsx +0 -64
  241. package/src/components/Dropdown/Dropdown.test.tsx +0 -141
  242. package/src/components/Dropdown/Dropdown.tsx +0 -149
  243. package/src/components/FormField/Label.stories.tsx +0 -39
  244. package/src/components/FormField/Label.tsx +0 -47
  245. package/src/components/FormField/Select.stories.tsx +0 -48
  246. package/src/components/FormField/Select.test.tsx +0 -216
  247. package/src/components/FormField/Select.tsx +0 -574
  248. package/src/components/FormField/SelectContext.tsx +0 -101
  249. package/src/components/FormField/commonElement.tsx +0 -42
  250. package/src/components/GenericMenu.tsx +0 -114
  251. package/src/components/HoverCard/HoverCard.stories.tsx +0 -64
  252. package/src/components/HoverCard/HoverCard.test.tsx +0 -85
  253. package/src/components/HoverCard/HoverCard.tsx +0 -65
  254. package/src/components/Icon/Icon.stories.ts +0 -15
  255. package/src/components/Icon/Icon.tsx +0 -238
  256. package/src/components/Icon/types.ts +0 -95
  257. package/src/components/IconButton/IconButton.stories.ts +0 -34
  258. package/src/components/IconButton/IconButton.test.tsx +0 -32
  259. package/src/components/IconButton/IconButton.tsx +0 -83
  260. package/src/components/Panel/Panel.stories.tsx +0 -25
  261. package/src/components/Panel/Panel.tsx +0 -33
  262. package/src/components/Popover/Popover.stories.tsx +0 -67
  263. package/src/components/Popover/Popover.test.tsx +0 -46
  264. package/src/components/Popover/Popover.tsx +0 -115
  265. package/src/components/RadioGroup/RadioGroup.stories.tsx +0 -43
  266. package/src/components/RadioGroup/RadioGroup.test.tsx +0 -59
  267. package/src/components/RadioGroup/RadioGroup.tsx +0 -149
  268. package/src/components/Separator/Separator.stories.tsx +0 -24
  269. package/src/components/Separator/Separator.tsx +0 -29
  270. package/src/components/SidebarNavigationItem/SidebarNavigationItem.stories.tsx +0 -28
  271. package/src/components/SidebarNavigationItem/SidebarNavigationItem.tsx +0 -112
  272. package/src/components/Spacer/Spacer.stories.tsx +0 -20
  273. package/src/components/Spacer/Spacer.tsx +0 -15
  274. package/src/components/Switch/Switch.stories.ts +0 -14
  275. package/src/components/Switch/Switch.tsx +0 -107
  276. package/src/components/Table/Table.stories.tsx +0 -29
  277. package/src/components/Table/Table.tsx +0 -109
  278. package/src/components/Tabs/Tabs.stories.tsx +0 -36
  279. package/src/components/Tabs/Tabs.test.tsx +0 -86
  280. package/src/components/Tabs/Tabs.tsx +0 -82
  281. package/src/components/Tooltip/Tooltip.stories.tsx +0 -68
  282. package/src/components/Tooltip/Tooltip.test.tsx +0 -44
  283. package/src/components/Tooltip/Tooltip.tsx +0 -67
  284. package/src/components/Typography/Text/Text.stories.tsx +0 -22
  285. package/src/components/Typography/Text/Text.test.tsx +0 -16
  286. package/src/components/Typography/Text/Text.tsx +0 -30
  287. package/src/components/Typography/Title/Title.stories.tsx +0 -31
  288. package/src/components/Typography/Title/Title.test.tsx +0 -16
  289. package/src/components/Typography/Title/Title.tsx +0 -36
  290. package/src/components/icons/Activity.tsx +0 -30
  291. package/src/components/icons/ArrowDown.tsx +0 -22
  292. package/src/components/icons/ArrowRight.tsx +0 -22
  293. package/src/components/icons/ArrowTriangle.tsx +0 -36
  294. package/src/components/icons/ArrowUp.tsx +0 -22
  295. package/src/components/icons/Backups.tsx +0 -29
  296. package/src/components/icons/Blog.tsx +0 -38
  297. package/src/components/icons/Book.tsx +0 -30
  298. package/src/components/icons/Brackets.tsx +0 -22
  299. package/src/components/icons/Briefcase.tsx +0 -30
  300. package/src/components/icons/Building.tsx +0 -30
  301. package/src/components/icons/BurgerMenu.tsx +0 -22
  302. package/src/components/icons/Cards.tsx +0 -30
  303. package/src/components/icons/CellTower.tsx +0 -21
  304. package/src/components/icons/ChatIcon.tsx +0 -22
  305. package/src/components/icons/CheckIcon.tsx +0 -21
  306. package/src/components/icons/CheckInCircle.tsx +0 -39
  307. package/src/components/icons/ChevronDown.tsx +0 -20
  308. package/src/components/icons/ChevronLeft.tsx +0 -22
  309. package/src/components/icons/ChevronRight.tsx +0 -20
  310. package/src/components/icons/ChevronUp.tsx +0 -22
  311. package/src/components/icons/Clock.tsx +0 -37
  312. package/src/components/icons/Cloud.tsx +0 -23
  313. package/src/components/icons/Code.tsx +0 -22
  314. package/src/components/icons/CodeInSquare.tsx +0 -30
  315. package/src/components/icons/Connect.tsx +0 -22
  316. package/src/components/icons/ConnectAlt.tsx +0 -30
  317. package/src/components/icons/Console.tsx +0 -30
  318. package/src/components/icons/Copy.tsx +0 -33
  319. package/src/components/icons/CrossIcon.tsx +0 -29
  320. package/src/components/icons/Data.tsx +0 -36
  321. package/src/components/icons/DatabaseIcon.tsx +0 -31
  322. package/src/components/icons/Disk.tsx +0 -30
  323. package/src/components/icons/Display.tsx +0 -30
  324. package/src/components/icons/Document.tsx +0 -30
  325. package/src/components/icons/DotsHorizontal.tsx +0 -36
  326. package/src/components/icons/DotsVertical.tsx +0 -33
  327. package/src/components/icons/Email.tsx +0 -33
  328. package/src/components/icons/Empty.tsx +0 -14
  329. package/src/components/icons/FilterIcon.tsx +0 -37
  330. package/src/components/icons/Fire.tsx +0 -23
  331. package/src/components/icons/Flags/EuropeanUnion.tsx +0 -174
  332. package/src/components/icons/Flags/Germany.tsx +0 -25
  333. package/src/components/icons/Flags/India.tsx +0 -48
  334. package/src/components/icons/Flags/Ireland.tsx +0 -32
  335. package/src/components/icons/Flags/Netherlands.tsx +0 -29
  336. package/src/components/icons/Flags/Singapore.tsx +0 -43
  337. package/src/components/icons/Flags/UnitedKingdom.tsx +0 -32
  338. package/src/components/icons/Flags/UnitedStates.tsx +0 -26
  339. package/src/components/icons/Flags/index.tsx +0 -46
  340. package/src/components/icons/Folder.tsx +0 -20
  341. package/src/components/icons/Gift.tsx +0 -21
  342. package/src/components/icons/HistoryIcon.tsx +0 -28
  343. package/src/components/icons/Home.tsx +0 -29
  344. package/src/components/icons/Http.tsx +0 -22
  345. package/src/components/icons/Icons.mdx +0 -39
  346. package/src/components/icons/InfoInCircleIcon.tsx +0 -37
  347. package/src/components/icons/InformationIcon.tsx +0 -34
  348. package/src/components/icons/InsertRowIcon.tsx +0 -34
  349. package/src/components/icons/Integrations.tsx +0 -29
  350. package/src/components/icons/LightBulb.tsx +0 -40
  351. package/src/components/icons/Lightening.tsx +0 -30
  352. package/src/components/icons/Loading.tsx +0 -57
  353. package/src/components/icons/Metrics.tsx +0 -38
  354. package/src/components/icons/MetricsAlt.tsx +0 -30
  355. package/src/components/icons/Payment.tsx +0 -23
  356. package/src/components/icons/Payments/Amex.tsx +0 -44
  357. package/src/components/icons/Payments/MasterCard.tsx +0 -48
  358. package/src/components/icons/Payments/Paypal.tsx +0 -41
  359. package/src/components/icons/Payments/Visa.tsx +0 -36
  360. package/src/components/icons/Payments/index.tsx +0 -30
  361. package/src/components/icons/Pencil.tsx +0 -30
  362. package/src/components/icons/PieChart.tsx +0 -30
  363. package/src/components/icons/Play.tsx +0 -30
  364. package/src/components/icons/Plus.tsx +0 -22
  365. package/src/components/icons/Popout.tsx +0 -22
  366. package/src/components/icons/PopoverArrow.tsx +0 -22
  367. package/src/components/icons/Question.tsx +0 -30
  368. package/src/components/icons/Refresh.tsx +0 -29
  369. package/src/components/icons/Search.tsx +0 -22
  370. package/src/components/icons/Secure.tsx +0 -30
  371. package/src/components/icons/Services.tsx +0 -23
  372. package/src/components/icons/Settings.tsx +0 -22
  373. package/src/components/icons/Share.tsx +0 -29
  374. package/src/components/icons/SlideIn.tsx +0 -28
  375. package/src/components/icons/SlideOut.tsx +0 -28
  376. package/src/components/icons/SortAltIcon.tsx +0 -22
  377. package/src/components/icons/SortIcon.tsx +0 -24
  378. package/src/components/icons/Sparkle.tsx +0 -23
  379. package/src/components/icons/Speaker.tsx +0 -30
  380. package/src/components/icons/Speed.tsx +0 -29
  381. package/src/components/icons/Star.tsx +0 -23
  382. package/src/components/icons/Support.tsx +0 -37
  383. package/src/components/icons/Table.tsx +0 -30
  384. package/src/components/icons/Taxi.tsx +0 -120
  385. package/src/components/icons/Trash.tsx +0 -22
  386. package/src/components/icons/Upload.tsx +0 -29
  387. package/src/components/icons/Url.tsx +0 -22
  388. package/src/components/icons/UserIcon.tsx +0 -17
  389. package/src/components/icons/UsersIcon.tsx +0 -43
  390. package/src/components/icons/WarningIcon.tsx +0 -30
  391. package/src/components/index.ts +0 -35
  392. package/src/components/types.ts +0 -1
  393. package/src/index.css +0 -9
  394. package/src/index.ts +0 -2
  395. package/src/main.tsx +0 -11
  396. package/src/stories/assets/code-brackets.svg +0 -1
  397. package/src/stories/assets/colors.svg +0 -1
  398. package/src/stories/assets/comments.svg +0 -1
  399. package/src/stories/assets/direction.svg +0 -1
  400. package/src/stories/assets/flow.svg +0 -1
  401. package/src/stories/assets/plugin.svg +0 -1
  402. package/src/stories/assets/repo.svg +0 -1
  403. package/src/stories/assets/stackalt.svg +0 -1
  404. package/src/styles/Home.module.css +0 -235
  405. package/src/styles/globals.css +0 -111
  406. package/src/styles/types.ts +0 -2089
  407. package/src/styles/variables.classic.css +0 -16
  408. package/src/styles/variables.classic.json +0 -202
  409. package/src/styles/variables.css +0 -763
  410. package/src/styles/variables.dark.css +0 -135
  411. package/src/styles/variables.dark.json +0 -894
  412. package/src/styles/variables.json +0 -2087
  413. package/src/styles/variables.light.css +0 -203
  414. package/src/styles/variables.light.json +0 -949
  415. package/src/theme/index.ts +0 -22
  416. package/src/theme/theme.tsx +0 -28
  417. package/src/vite-env.d.ts +0 -1
  418. package/tokens/themes/$metadata.json +0 -9
  419. package/tokens/themes/$themes.json +0 -3657
  420. package/tokens/themes/classic.json +0 -550
  421. package/tokens/themes/component.json +0 -2252
  422. package/tokens/themes/dark.json +0 -2563
  423. package/tokens/themes/light.json +0 -2645
  424. package/tokens/themes/primitives.json +0 -947
  425. package/tsconfig.json +0 -27
  426. package/tsconfig.node.json +0 -10
  427. package/vite.config.ts +0 -40
@@ -1,574 +0,0 @@
1
- import {
2
- Children,
3
- HTMLAttributes,
4
- MouseEvent,
5
- ReactElement,
6
- ReactNode,
7
- forwardRef,
8
- useId,
9
- useRef,
10
- useState,
11
- } from "react";
12
- import * as RadixPopover from "@radix-ui/react-popover";
13
- import { Command, useCommandState } from "cmdk";
14
- import { Icon } from "../Icon/Icon";
15
- import { Error, FormRoot } from "./commonElement";
16
- import styled from "styled-components";
17
- import { Label } from "./Label";
18
- import { SelectContextProvider, useSelect } from "./SelectContext";
19
- import Separator from "../Separator/Separator";
20
-
21
- interface Props extends Omit<HTMLAttributes<HTMLDivElement>, "onChange"> {
22
- placeholder?: string;
23
- label: ReactNode;
24
- children: ReactNode;
25
- error?: ReactNode;
26
- showSearch?: boolean;
27
- disabled?: boolean;
28
- defaultValue?: string;
29
- onChange?: (value: string) => void;
30
- name?: string;
31
- required?: boolean;
32
- isFormControl?: boolean;
33
- value?: string;
34
- }
35
-
36
- declare type DivProps = HTMLAttributes<HTMLDivElement>;
37
- export type SelectProps = RadixPopover.PopoverProps & Props;
38
-
39
- const SelectPopoverRoot = styled(RadixPopover.Root)`
40
- width: 100%;
41
- `;
42
-
43
- const SelectTrigger = styled(RadixPopover.Trigger)<{ $error: boolean }>`
44
- width: 100%;
45
- display: flex;
46
- align-items: center;
47
- justify-content: space-between;
48
- align-items: center;
49
- cursor: pointer;
50
-
51
- span:first-of-type {
52
- max-width: 100%;
53
- overflow: hidden;
54
- white-space: nowrap;
55
- text-overflow: ellipsis;
56
- }
57
-
58
- ${({ theme, $error }) => `
59
- border-radius: ${theme.click.field.radii.all};
60
- padding: ${theme.click.field.space.y} ${theme.click.field.space.x};
61
- gap: ${theme.click.field.space.gap};
62
- font: ${theme.click.field.typography.fieldText.default};
63
- color: ${theme.click.field.color.text.default};
64
- border: 1px solid ${theme.click.field.color.stroke.default};
65
- background: ${theme.click.field.color.background.default};
66
- &:hover {
67
- border: 1px solid ${theme.click.field.color.stroke.hover};
68
- background: ${theme.click.field.color.background.hover};
69
- color: ${theme.click.field.color.text.hover};
70
- }
71
- ${
72
- $error
73
- ? `
74
- font: ${theme.click.field.typography.fieldText.error};
75
- border: 1px solid ${theme.click.field.color.stroke.error};
76
- background: ${theme.click.field.color.background.active};
77
- color: ${theme.click.field.color.text.error};
78
- &:hover {
79
- border: 1px solid ${theme.click.field.color.stroke.error};
80
- color: ${theme.click.field.color.text.error};
81
- }
82
- `
83
- : `
84
- &:focus,
85
- &[data-state="open"] {
86
- font: ${theme.click.field.typography.fieldText.active};
87
- border: 1px solid ${theme.click.field.color.stroke.active};
88
- background: ${theme.click.field.color.background.active};
89
- color: ${theme.click.field.color.text.active};
90
- & ~ label {
91
- color: ${theme.click.field.color.label.active};
92
- font: ${theme.click.field.typography.label.active};;
93
- }
94
- }
95
- `
96
- };
97
- &:disabled {
98
- font: ${theme.click.field.typography.fieldText.disabled};
99
- border: 1px solid ${theme.click.field.color.stroke.disabled};
100
- background: ${theme.click.field.color.background.disabled};
101
- color: ${theme.click.field.color.text.disabled};
102
- }
103
- `}
104
- `;
105
- const SelectContent = styled(RadixPopover.Content)`
106
- width: var(--radix-popover-trigger-width);
107
- max-height: var(--radix-popover-content-available-height);
108
- border-radius: 0.25rem;
109
-
110
- ${({ theme }) => `
111
- border: 1px solid ${theme.click.genericMenu.item.color.stroke.default};
112
- background: ${theme.click.genericMenu.item.color.background.default};
113
- box-shadow: 0px 1px 3px 0px rgba(16, 24, 40, 0.1),
114
- 0px 1px 2px 0px rgba(16, 24, 40, 0.06);
115
- border-radius: 0.25rem;
116
- `}
117
-
118
- overflow: hidden;
119
- display: flex;
120
- padding: 0.5rem 0rem;
121
- align-items: flex-start;
122
- gap: 0.625rem;
123
- [cmdk-root] {
124
- width: 100%;
125
- }
126
- `;
127
-
128
- const SearchBarContainer = styled.div<{ $showSearch: boolean }>`
129
- width: fill-available;
130
- display: grid;
131
- grid-template-columns: 1fr auto;
132
- ${({ theme }) => `
133
- border-bottom: 1px solid ${theme.click.genericMenu.button.color.stroke.default};
134
- padding: ${theme.click.genericMenu.item.space.y} ${theme.click.genericMenu.item.space.x};
135
- color: ${theme.click.genericMenu.autocomplete.color.searchTerm.default};
136
- font: ${theme.click.genericMenu.autocomplete.typography.search.term.default};
137
- `}
138
- ${({ $showSearch }) =>
139
- $showSearch
140
- ? undefined
141
- : `
142
- border: none;
143
- height: 0;
144
- padding:0;
145
- `}
146
- `;
147
-
148
- const SearchBar = styled(Command.Input)<{ $showSearch: boolean }>`
149
- background: transparent;
150
- border: none;
151
- width: 100%;
152
- outline: none;
153
- ${({ theme, $showSearch }) => `
154
- min-height: ${$showSearch ? "21px" : "0"};
155
- gap: ${theme.click.genericMenu.item.space.gap};
156
- font: ${theme.click.genericMenu.item.typography.label};
157
- border-bottom: 1px solid ${theme.click.genericMenu.button.color.stroke.default};
158
- color: inherit;
159
- font: inherit;
160
- &::placeholder {
161
- color: ${theme.click.genericMenu.autocomplete.color.placeholder.default};
162
- font: ${theme.click.genericMenu.autocomplete.typography.search.placeholder.default};
163
- }
164
- ${
165
- $showSearch
166
- ? undefined
167
- : `
168
- height: 0;
169
- opacity: 0;
170
- `
171
- }
172
- `}
173
- `;
174
-
175
- const SearchClose = styled.button`
176
- background: transparent;
177
- border: none;
178
- padding: 0;
179
- outline: none;
180
- cursor: pointer;
181
- color: inherit;
182
- `;
183
-
184
- const NoDataContainer = styled.button<{ clickable: boolean }>`
185
- border: none;
186
- display: flex;
187
- justify-content: flex-start;
188
- width: 100%;
189
- ${({ theme, clickable }) => `
190
- font: ${theme.click.genericMenu.button.typography.label.default}
191
- padding: ${theme.click.genericMenu.button.space.y} ${
192
- theme.click.genericMenu.item.space.x
193
- };
194
- background: ${theme.click.genericMenu.button.color.background.default};
195
- color: ${theme.click.genericMenu.button.color.label.default};
196
- &:hover {
197
- font: ${theme.click.genericMenu.button.typography.label.hover};
198
- }
199
- cursor: ${clickable ? "pointer" : "default"}
200
- `}
201
- `;
202
- declare type State = {
203
- search: string;
204
- value: string;
205
- filtered: {
206
- count: number;
207
- items: Map<string, number>;
208
- groups: Set<string>;
209
- };
210
- };
211
-
212
- interface SelectRootProps {
213
- open?: boolean;
214
- id: string;
215
- placeholder: string;
216
- disabled?: boolean;
217
- children: ReactNode;
218
- hasError: boolean;
219
- showSearch?: boolean;
220
- }
221
-
222
- const SelectRoot = ({
223
- open,
224
- id,
225
- placeholder,
226
- disabled,
227
- children,
228
- hasError,
229
- showSearch = false,
230
- }: SelectRootProps) => {
231
- const { valueNode, popperOpen, onOpenChange } = useSelect();
232
- const inputRef = useRef<HTMLInputElement>(null);
233
- const [search, setSearch] = useState("");
234
- const onFocus = () => {
235
- inputRef.current?.focus();
236
- };
237
-
238
- const clearSearch = () => {
239
- setSearch("");
240
- };
241
-
242
- return (
243
- <SelectPopoverRoot
244
- open={open ?? popperOpen}
245
- onOpenChange={onOpenChange}
246
- >
247
- <SelectTrigger
248
- id={id}
249
- $error={hasError}
250
- disabled={disabled}
251
- >
252
- {valueNode ?? placeholder}
253
- <Icon
254
- name="sort"
255
- size="small"
256
- />
257
- </SelectTrigger>
258
- <RadixPopover.Portal>
259
- <SelectContent
260
- sideOffset={5}
261
- onFocus={onFocus}
262
- >
263
- <Command
264
- onValueChange={setSearch}
265
- loop
266
- >
267
- <SearchBarContainer $showSearch={showSearch}>
268
- <SearchBar
269
- ref={inputRef}
270
- value={search}
271
- onValueChange={setSearch}
272
- $showSearch={showSearch}
273
- data-testid="select-search-input"
274
- />
275
- {search.length > 0 && (
276
- <SearchClose
277
- onClick={clearSearch}
278
- data-testid="select-search-close"
279
- >
280
- <Icon
281
- name="cross"
282
- size="small"
283
- />
284
- </SearchClose>
285
- )}
286
- </SearchBarContainer>
287
- <Command.List>{children}</Command.List>
288
- </Command>
289
- </SelectContent>
290
- </RadixPopover.Portal>
291
- </SelectPopoverRoot>
292
- );
293
- };
294
-
295
- const findChildWithSpecificProp =
296
- (children: ReactNode): ((value?: string) => ReactElement | null) =>
297
- (value?: string): ReactElement | null => {
298
- if (!value) {
299
- return null;
300
- }
301
-
302
- let foundChild: ReactNode | null = null;
303
-
304
- Children.forEach(children, (child: ReactNode) => {
305
- const childProps =
306
- child && typeof child === "object" && "props" in child ? child.props : null;
307
- if (childProps?.value === value) {
308
- foundChild = child;
309
- return; // Break the loop if the child is found
310
- }
311
-
312
- if (childProps?.children) {
313
- const nestedChild = findChildWithSpecificProp(childProps.children)(value);
314
- if (nestedChild) {
315
- foundChild = nestedChild;
316
- return; // Break the loop if the nested child is found
317
- }
318
- }
319
- });
320
-
321
- return foundChild;
322
- };
323
-
324
- export const Select = ({
325
- placeholder = "Select an option",
326
- label,
327
- children,
328
- disabled,
329
- id,
330
- error,
331
- value,
332
- defaultValue,
333
- onChange,
334
- open,
335
- defaultOpen,
336
- onOpenChange,
337
- name,
338
- required,
339
- isFormControl,
340
- showSearch = false,
341
- ...props
342
- }: SelectProps) => {
343
- const defaultId = useId();
344
- return (
345
- <FormRoot {...props}>
346
- {error && <Error>{error}</Error>}
347
- {isFormControl && (
348
- <input
349
- type="hidden"
350
- name={name}
351
- required={required}
352
- />
353
- )}
354
- <SelectContextProvider
355
- value={value}
356
- defaultValue={defaultValue}
357
- updateValueNode={findChildWithSpecificProp(children)}
358
- defaultOpen={defaultOpen}
359
- onOpenChange={onOpenChange}
360
- onChange={onChange}
361
- >
362
- <SelectRoot
363
- hasError={typeof error !== "undefined"}
364
- open={open}
365
- id={id ?? defaultId}
366
- placeholder={placeholder}
367
- disabled={disabled}
368
- showSearch={showSearch}
369
- >
370
- {children}
371
- </SelectRoot>
372
- </SelectContextProvider>
373
- {label && (
374
- <Label
375
- htmlFor={id ?? defaultId}
376
- disabled={disabled}
377
- error={typeof error !== "undefined"}
378
- >
379
- {label}
380
- </Label>
381
- )}
382
- </FormRoot>
383
- );
384
- };
385
- interface GroupProps extends Omit<DivProps, "value" | "heading"> {
386
- heading?: ReactNode;
387
- value?: string;
388
- }
389
-
390
- const SelectGroup = styled(Command.Group)`
391
- display: flex;
392
- flex-direction: column;
393
- align-items: flex-start;
394
- justify-content: center;
395
- width: var(--radix-popover-trigger-width);
396
- padding: 0;
397
- gap: 0.5rem;
398
- &[aria-selected] {
399
- outline: none;
400
- }
401
-
402
- ${({ theme }) => `
403
- font: ${theme.click.genericMenu.item.typography.label.default};
404
- background: ${theme.click.genericMenu.item.color.background.default};
405
- color: ${theme.click.genericMenu.item.color.text.default};
406
- &[data-highlighted] {
407
- font: ${theme.click.genericMenu.item.typography.label.hover};
408
- background: ${theme.click.genericMenu.item.color.background.hover};
409
- color:${theme.click.genericMenu.item.color.text.hover};
410
- }
411
- &[data-state="checked"] {
412
- background:${theme.click.genericMenu.item.color.background.active};
413
- color:${theme.click.genericMenu.item.color.text.active};
414
- font: ${theme.click.genericMenu.item.typography.label.active};
415
- }
416
- &[data-disabled] {
417
- background:${theme.click.genericMenu.item.color.background.disabled};
418
- color:${theme.click.genericMenu.item.color.text.disabled};
419
- font: ${theme.click.genericMenu.item.typography.label.disabled};
420
- pointer-events: none;
421
- }
422
- `};
423
- [cmdk-group-heading] {
424
- display: flex;
425
- width: 100%;
426
- flex-direction: column;
427
- max-width: calc(var(--radix-popover-trigger-width) - 24px);
428
- overflow: hidden;
429
- white-space: nowrap;
430
- text-overflow: ellipsis;
431
- ${({ theme }) => `
432
- font: ${theme.click.genericMenu.item.typography.sectionHeader.default};
433
- color: ${theme.click.genericMenu.item.color.text.muted};
434
- padding: ${theme.click.genericMenu.item.space.y} ${theme.click.genericMenu.item.space.x};
435
- gap: ${theme.click.genericMenu.item.space.gap};
436
- border-bottom: 1px solid ${theme.click.genericMenu.item.color.stroke.default};
437
- `}
438
- }
439
- [cmdk-group-items] {
440
- width: 100%;
441
- }
442
- &[hidden] {
443
- display: none;
444
- [cmdk-group-heading] {
445
- display: none;
446
- }
447
- }
448
- `;
449
-
450
- const Group = forwardRef<HTMLDivElement, GroupProps>(
451
- ({ children, ...props }, forwardedRef) => {
452
- return (
453
- <SelectGroup
454
- {...props}
455
- ref={forwardedRef}
456
- >
457
- {children}
458
- </SelectGroup>
459
- );
460
- }
461
- );
462
- Group.displayName = "Select.Group";
463
-
464
- const SelectItem = styled(Command.Item)`
465
- display: flex;
466
- width: 100%;
467
- align-items: center;
468
- cursor: default;
469
- max-width: calc(var(--radix-popover-trigger-width) - 24px);
470
- overflow: hidden;
471
- white-space: nowrap;
472
- text-overflow: ellipsis;
473
- &[aria-selected] {
474
- outline: none;
475
- }
476
-
477
- ${({ theme }) => `
478
- padding: ${theme.click.genericMenu.item.space.y} ${theme.click.genericMenu.item.space.x};
479
- gap: ${theme.click.genericMenu.item.space.gap};
480
- font: ${theme.click.genericMenu.item.typography.label.default};
481
- background: ${theme.click.genericMenu.item.color.background.default};
482
- color: ${theme.click.genericMenu.item.color.text.default};
483
- &[data-selected="true"] {
484
- font: ${theme.click.genericMenu.item.typography.label.hover};
485
- background: ${theme.click.genericMenu.item.color.background.hover};
486
- color:${theme.click.genericMenu.item.color.text.hover};
487
- cursor: pointer;
488
- }
489
- &[data-state="checked"] {
490
- background:${theme.click.genericMenu.item.color.background.active};
491
- color:${theme.click.genericMenu.item.color.text.active};
492
- font: ${theme.click.genericMenu.item.typography.label.active};
493
- }
494
- &[data-disabled] {
495
- background:${theme.click.genericMenu.item.color.background.disabled};
496
- color:${theme.click.genericMenu.item.color.text.disabled};
497
- font: ${theme.click.genericMenu.item.typography.label.disabled};
498
- pointer-events: none;
499
- }
500
- `};
501
- `;
502
-
503
- interface ItemProps extends Omit<DivProps, "disabled" | "onSelect" | "value"> {
504
- separator?: boolean;
505
- disabled?: boolean;
506
- onSelect?: (value: string) => void;
507
- value?: string;
508
- }
509
-
510
- const Item = forwardRef<HTMLDivElement, ItemProps>(
511
- (
512
- { children, separator, onSelect: onSelectProp, value = "", ...props },
513
- forwardedRef
514
- ) => {
515
- const { selectedValue, onSelect } = useSelect();
516
- const onSelectValue = () => {
517
- onSelect(value);
518
- if (typeof onSelectProp == "function") {
519
- onSelectProp(value);
520
- }
521
- };
522
- return (
523
- <>
524
- <SelectItem
525
- {...props}
526
- onSelect={onSelectValue}
527
- ref={forwardedRef}
528
- data-state={selectedValue == value ? "checked" : "unchecked"}
529
- >
530
- {children}
531
- </SelectItem>
532
- {separator && <Separator size="sm" />}
533
- </>
534
- );
535
- }
536
- );
537
- Item.displayName = "Select.Item";
538
-
539
- Select.Group = Group;
540
- Select.Item = Item;
541
-
542
- type SelectNoDataProps = Omit<HTMLAttributes<HTMLButtonElement>, "children"> & {
543
- children?: (props: { search: string }) => ReactNode;
544
- };
545
- const SelectNoData = ({ children, onClick, ...props }: SelectNoDataProps): ReactNode => {
546
- const clickable = typeof onClick === "function";
547
- const search = useCommandState((state: State) => state.search);
548
- const { onOpenChange } = useSelect();
549
- const onSelect = (e: MouseEvent<HTMLButtonElement>) => {
550
- e.preventDefault();
551
- if (clickable) {
552
- onClick(e);
553
- onOpenChange(false);
554
- }
555
- };
556
- return (
557
- <Command.Empty>
558
- <NoDataContainer
559
- onClick={onSelect}
560
- clickable={clickable}
561
- {...props}
562
- >
563
- {typeof children === "function"
564
- ? children({ search })
565
- : `
566
- No Options found${search.length > 0 ? ` for "${search}" ` : ""}
567
- `}
568
- </NoDataContainer>
569
- </Command.Empty>
570
- );
571
- };
572
-
573
- SelectNoData.displayName = "SelectNoData";
574
- Select.NoData = SelectNoData;
@@ -1,101 +0,0 @@
1
- import {
2
- createContext,
3
- HTMLAttributes,
4
- ReactElement,
5
- ReactNode,
6
- useContext,
7
- useEffect,
8
- useState,
9
- } from "react";
10
-
11
- const SelectValue = (props: HTMLAttributes<HTMLDivElement>) => <div {...props} />;
12
-
13
- type ContextProps = {
14
- selectedValue?: string | null;
15
- onSelect: (value: string) => void;
16
- popperOpen: boolean;
17
- valueNode: ReactNode | null;
18
- onOpenChange: (value: boolean) => void;
19
- };
20
-
21
- const SelectContext = createContext<ContextProps>({
22
- selectedValue: undefined,
23
- onSelect: () => null,
24
- popperOpen: false,
25
- valueNode: null,
26
- onOpenChange: () => null,
27
- });
28
-
29
- type Props = {
30
- children: ReactNode;
31
- value?: string;
32
- defaultValue?: string;
33
- updateValueNode: (value?: string) => ReactElement | null;
34
- defaultOpen?: boolean;
35
- onOpenChange?: (value: boolean) => void;
36
- onChange?: (value: string) => void;
37
- };
38
-
39
- export const SelectProvider = ({
40
- value,
41
- children,
42
- }: {
43
- children: ReactNode;
44
- value: ContextProps;
45
- }) => {
46
- return <SelectContext.Provider value={value}>{children}</SelectContext.Provider>;
47
- };
48
-
49
- export const SelectContextProvider = ({
50
- children,
51
- value,
52
- defaultValue,
53
- updateValueNode,
54
- defaultOpen = false,
55
- onOpenChange: onOpenChangeProp,
56
- onChange,
57
- }: Props) => {
58
- const [popperOpen, setPopperOpen] = useState<boolean>(defaultOpen);
59
- const [valueNode, setValueNode] = useState<JSX.Element | null>(null);
60
- const [selectedValue, setSelectedValue] = useState<string | undefined>(
61
- value ?? defaultValue
62
- );
63
-
64
- const onSelect = (value: string) => {
65
- setSelectedValue(value);
66
- onOpenChange(false);
67
- if (typeof onChange === "function") {
68
- onChange(value);
69
- }
70
- };
71
-
72
- const onOpenChange = (open: boolean) => {
73
- setPopperOpen(open);
74
- if (typeof onOpenChangeProp === "function") {
75
- onOpenChangeProp(open);
76
- }
77
- };
78
-
79
- const selectValue = {
80
- selectedValue,
81
- valueNode,
82
- onSelect,
83
- popperOpen,
84
- onOpenChange,
85
- };
86
-
87
- useEffect(() => {
88
- const element = updateValueNode(selectedValue);
89
- setValueNode(element ? <SelectValue {...element.props} /> : null);
90
- }, [selectedValue, updateValueNode]);
91
-
92
- return <SelectProvider value={selectValue}>{children}</SelectProvider>;
93
- };
94
-
95
- export const useSelect = () => {
96
- const result = useContext(SelectContext);
97
- if (!result) {
98
- throw new Error("Context used outside of its Provider!");
99
- }
100
- return result;
101
- };
@@ -1,42 +0,0 @@
1
- import styled, { css } from "styled-components";
2
-
3
- export const FormRoot = styled.div`
4
- display: flex;
5
- flex-direction: column-reverse;
6
- width: fill-available;
7
- align-items: flex-start;
8
- gap: 0.5rem;
9
- * {
10
- box-shadow: none;
11
- outline: none;
12
- }
13
- `;
14
-
15
- export const Error = styled.div`
16
- ${({ theme }) => `
17
- font: ${theme.click.field.typography.label.error};
18
- color: ${theme.click.field.color.label.error};
19
- `};
20
- `;
21
-
22
- export const ItemSeparator = css`
23
- height: 1px;
24
- background-color: ${({ theme }) => theme.click.genericMenu.item.color.stroke.default};
25
- `;
26
-
27
- export const EmptyButton = styled.button`
28
- background: transparent;
29
- border: none;
30
- cursor: pointer;
31
- outline: none;
32
- &:disabled {
33
- cursor: not-allowed;
34
- }
35
- `;
36
-
37
- export const GridCenter = styled.div`
38
- display: grid;
39
- place-items: center;
40
- width: 100%;
41
- height: 100%;
42
- `;