@shipfox/react-ui 0.14.0 → 0.16.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 (562) hide show
  1. package/dist/components/avatar/avatar.js +1 -1
  2. package/dist/components/button-group/button-group.d.ts +17 -0
  3. package/dist/components/button-group/button-group.js +74 -0
  4. package/dist/components/button-group/button-group.stories.js +644 -0
  5. package/dist/components/button-group/index.d.ts +2 -0
  6. package/dist/components/button-group/index.js +3 -0
  7. package/dist/components/code-block/code-block-footer.js +4 -2
  8. package/dist/components/command/command.d.ts +28 -0
  9. package/dist/components/command/command.js +190 -0
  10. package/dist/components/command/command.stories.js +228 -0
  11. package/dist/components/command/index.d.ts +2 -0
  12. package/dist/components/command/index.js +3 -0
  13. package/dist/components/dashboard/components/animated-logo.d.ts +4 -0
  14. package/dist/components/dashboard/components/animated-logo.js +23 -0
  15. package/dist/components/dashboard/components/charts/bar-chart.d.ts +39 -0
  16. package/dist/components/dashboard/components/charts/bar-chart.js +104 -0
  17. package/dist/components/dashboard/components/charts/chart-tooltip.d.ts +14 -0
  18. package/dist/components/dashboard/components/charts/chart-tooltip.js +45 -0
  19. package/dist/components/dashboard/components/charts/colors.d.ts +11 -0
  20. package/dist/components/dashboard/components/charts/colors.js +17 -0
  21. package/dist/components/dashboard/components/charts/index.d.ts +5 -0
  22. package/dist/components/dashboard/components/charts/index.js +6 -0
  23. package/dist/components/dashboard/components/charts/line-chart.d.ts +37 -0
  24. package/dist/components/dashboard/components/charts/line-chart.js +128 -0
  25. package/dist/components/dashboard/components/complete-setup-button.d.ts +4 -0
  26. package/dist/components/dashboard/components/complete-setup-button.js +28 -0
  27. package/dist/components/dashboard/components/dashboard-alert.d.ts +8 -0
  28. package/dist/components/dashboard/components/dashboard-alert.js +24 -0
  29. package/dist/components/dashboard/components/kpi-card.d.ts +15 -0
  30. package/dist/components/dashboard/components/kpi-card.js +77 -0
  31. package/dist/components/dashboard/components/mobile-menu.d.ts +2 -0
  32. package/dist/components/dashboard/components/mobile-menu.js +65 -0
  33. package/dist/components/dashboard/components/mobile-sidebar.d.ts +19 -0
  34. package/dist/components/dashboard/components/mobile-sidebar.js +50 -0
  35. package/dist/components/dashboard/components/organization-selector.d.ts +25 -0
  36. package/dist/components/dashboard/components/organization-selector.js +115 -0
  37. package/dist/components/dashboard/components/sidebar.d.ts +24 -0
  38. package/dist/components/dashboard/components/sidebar.js +218 -0
  39. package/dist/components/dashboard/components/top-menu.d.ts +5 -0
  40. package/dist/components/dashboard/components/top-menu.js +31 -0
  41. package/dist/components/dashboard/components/topbar-button.d.ts +7 -0
  42. package/dist/components/dashboard/components/topbar-button.js +18 -0
  43. package/dist/components/dashboard/components/topbar.d.ts +4 -0
  44. package/dist/components/dashboard/components/topbar.js +62 -0
  45. package/dist/components/dashboard/components/user-profile.d.ts +2 -0
  46. package/dist/components/dashboard/components/user-profile.js +146 -0
  47. package/dist/components/dashboard/context/dashboard-context.d.ts +70 -0
  48. package/dist/components/dashboard/context/dashboard-context.js +175 -0
  49. package/dist/components/dashboard/context/index.d.ts +8 -0
  50. package/dist/components/dashboard/context/index.js +6 -0
  51. package/dist/components/dashboard/context/types.d.ts +50 -0
  52. package/dist/components/dashboard/context/types.js +7 -0
  53. package/dist/components/dashboard/context/utils.d.ts +28 -0
  54. package/dist/components/dashboard/context/utils.js +53 -0
  55. package/dist/components/dashboard/dashboard.d.ts +28 -0
  56. package/dist/components/dashboard/dashboard.js +110 -0
  57. package/dist/components/dashboard/dashboard.stories.js +23 -0
  58. package/dist/components/dashboard/filters/expression-filter-bar.d.ts +42 -0
  59. package/dist/components/dashboard/filters/expression-filter-bar.js +80 -0
  60. package/dist/components/dashboard/filters/index.d.ts +6 -0
  61. package/dist/components/dashboard/filters/index.js +5 -0
  62. package/dist/components/dashboard/index.d.ts +26 -0
  63. package/dist/components/dashboard/index.js +24 -0
  64. package/dist/components/dashboard/pages/analytics-page.d.ts +20 -0
  65. package/dist/components/dashboard/pages/analytics-page.js +258 -0
  66. package/dist/components/dashboard/pages/index.d.ts +6 -0
  67. package/dist/components/dashboard/pages/index.js +6 -0
  68. package/dist/components/dashboard/pages/jobs-page.d.ts +20 -0
  69. package/dist/components/dashboard/pages/jobs-page.js +56 -0
  70. package/dist/components/dashboard/table/index.d.ts +6 -0
  71. package/dist/components/dashboard/table/index.js +5 -0
  72. package/dist/components/dashboard/table/table-wrapper.d.ts +104 -0
  73. package/dist/components/dashboard/table/table-wrapper.js +93 -0
  74. package/dist/components/dashboard/toolbar/filter-button.d.ts +12 -0
  75. package/dist/components/dashboard/toolbar/filter-button.js +124 -0
  76. package/dist/components/dashboard/toolbar/index.d.ts +13 -0
  77. package/dist/components/dashboard/toolbar/index.js +10 -0
  78. package/dist/components/dashboard/toolbar/page-toolbar.d.ts +75 -0
  79. package/dist/components/dashboard/toolbar/page-toolbar.js +208 -0
  80. package/dist/components/dashboard/toolbar/toolbar-actions.d.ts +52 -0
  81. package/dist/components/dashboard/toolbar/toolbar-actions.js +51 -0
  82. package/dist/components/dashboard/toolbar/toolbar-search.d.ts +21 -0
  83. package/dist/components/dashboard/toolbar/toolbar-search.js +123 -0
  84. package/dist/components/dashboard/toolbar/view-dropdown.d.ts +11 -0
  85. package/dist/components/dashboard/toolbar/view-dropdown.js +113 -0
  86. package/dist/components/form/form.stories.js +6 -1
  87. package/dist/components/index.d.ts +8 -0
  88. package/dist/components/index.js +8 -0
  89. package/dist/components/kbd/index.d.ts +2 -0
  90. package/dist/components/kbd/index.js +3 -0
  91. package/dist/components/kbd/kbd.d.ts +7 -0
  92. package/dist/components/kbd/kbd.js +18 -0
  93. package/dist/components/kbd/kbd.stories.js +119 -0
  94. package/dist/components/modal/modal.js +3 -3
  95. package/dist/components/search/index.d.ts +7 -0
  96. package/dist/components/search/index.js +8 -0
  97. package/dist/components/search/search-context.d.ts +11 -0
  98. package/dist/components/search/search-context.js +56 -0
  99. package/dist/components/search/search-inline.d.ts +9 -0
  100. package/dist/components/search/search-inline.js +85 -0
  101. package/dist/components/search/search-modal.d.ts +25 -0
  102. package/dist/components/search/search-modal.js +168 -0
  103. package/dist/components/search/search-trigger.d.ts +9 -0
  104. package/dist/components/search/search-trigger.js +37 -0
  105. package/dist/components/search/search-variants.d.ts +14 -0
  106. package/dist/components/search/search-variants.js +90 -0
  107. package/dist/components/search/search.d.ts +11 -0
  108. package/dist/components/search/search.js +35 -0
  109. package/dist/components/search/search.stories.js +630 -0
  110. package/dist/components/select/index.d.ts +2 -0
  111. package/dist/components/select/index.js +3 -0
  112. package/dist/components/select/select.d.ts +27 -0
  113. package/dist/components/select/select.js +154 -0
  114. package/dist/components/select/select.stories.js +393 -0
  115. package/dist/components/sheet/index.d.ts +2 -0
  116. package/dist/components/sheet/index.js +3 -0
  117. package/dist/components/sheet/sheet.d.ts +33 -0
  118. package/dist/components/sheet/sheet.js +163 -0
  119. package/dist/components/sheet/sheet.stories.js +368 -0
  120. package/dist/components/skeleton/index.d.ts +2 -0
  121. package/dist/components/skeleton/index.js +3 -0
  122. package/dist/components/skeleton/skeleton.d.ts +5 -0
  123. package/dist/components/skeleton/skeleton.js +11 -0
  124. package/dist/components/skeleton/skeleton.stories.js +345 -0
  125. package/dist/components/table/data-table.d.ts +83 -0
  126. package/dist/components/table/data-table.js +164 -0
  127. package/dist/components/table/index.d.ts +6 -0
  128. package/dist/components/table/index.js +6 -0
  129. package/dist/components/table/table-column-header.d.ts +79 -0
  130. package/dist/components/table/table-column-header.js +99 -0
  131. package/dist/components/table/table-pagination.d.ts +53 -0
  132. package/dist/components/table/table-pagination.js +139 -0
  133. package/dist/components/table/table.d.ts +11 -0
  134. package/dist/components/table/table.js +64 -0
  135. package/dist/components/table/table.stories.columns.d.ts +24 -0
  136. package/dist/components/table/table.stories.columns.js +310 -0
  137. package/dist/components/table/table.stories.components.d.ts +14 -0
  138. package/dist/components/table/table.stories.components.js +107 -0
  139. package/dist/components/table/table.stories.data.d.ts +54 -0
  140. package/dist/components/table/table.stories.data.js +122 -0
  141. package/dist/components/table/table.stories.js +302 -0
  142. package/dist/styles.css +1 -1
  143. package/package.json +14 -5
  144. package/.storybook/main.ts +0 -35
  145. package/.storybook/preview.tsx +0 -59
  146. package/.storybook/vitest.setup.ts +0 -4
  147. package/.turbo/turbo-build.log +0 -19
  148. package/.turbo/turbo-check.log +0 -6
  149. package/.turbo/turbo-type.log +0 -5
  150. package/CHANGELOG.md +0 -104
  151. package/argos.config.ts +0 -33
  152. package/dist/build-css-entry.js.map +0 -1
  153. package/dist/colors.stories.conts.d.ts.map +0 -1
  154. package/dist/colors.stories.conts.js.map +0 -1
  155. package/dist/colors.stories.js.map +0 -1
  156. package/dist/components/alert/alert.d.ts.map +0 -1
  157. package/dist/components/alert/alert.js.map +0 -1
  158. package/dist/components/alert/alert.stories.js.map +0 -1
  159. package/dist/components/alert/index.d.ts.map +0 -1
  160. package/dist/components/alert/index.js.map +0 -1
  161. package/dist/components/avatar/avatar-group.d.ts.map +0 -1
  162. package/dist/components/avatar/avatar-group.js.map +0 -1
  163. package/dist/components/avatar/avatar.d.ts.map +0 -1
  164. package/dist/components/avatar/avatar.js.map +0 -1
  165. package/dist/components/avatar/avatar.stories.js.map +0 -1
  166. package/dist/components/avatar/index.d.ts.map +0 -1
  167. package/dist/components/avatar/index.js.map +0 -1
  168. package/dist/components/badge/badge.d.ts.map +0 -1
  169. package/dist/components/badge/badge.js.map +0 -1
  170. package/dist/components/badge/badge.stories.js.map +0 -1
  171. package/dist/components/badge/icon-badge.d.ts.map +0 -1
  172. package/dist/components/badge/icon-badge.js.map +0 -1
  173. package/dist/components/badge/index.d.ts.map +0 -1
  174. package/dist/components/badge/index.js.map +0 -1
  175. package/dist/components/badge/status-badge.d.ts.map +0 -1
  176. package/dist/components/badge/status-badge.js.map +0 -1
  177. package/dist/components/badge/user-badge.d.ts.map +0 -1
  178. package/dist/components/badge/user-badge.js.map +0 -1
  179. package/dist/components/button/button-link.d.ts.map +0 -1
  180. package/dist/components/button/button-link.js.map +0 -1
  181. package/dist/components/button/button-link.stories.js.map +0 -1
  182. package/dist/components/button/button.d.ts.map +0 -1
  183. package/dist/components/button/button.js.map +0 -1
  184. package/dist/components/button/button.stories.js.map +0 -1
  185. package/dist/components/button/icon-button.d.ts.map +0 -1
  186. package/dist/components/button/icon-button.js.map +0 -1
  187. package/dist/components/button/icon-button.stories.js.map +0 -1
  188. package/dist/components/button/index.d.ts.map +0 -1
  189. package/dist/components/button/index.js.map +0 -1
  190. package/dist/components/calendar/calendar.d.ts.map +0 -1
  191. package/dist/components/calendar/calendar.js.map +0 -1
  192. package/dist/components/calendar/index.d.ts.map +0 -1
  193. package/dist/components/calendar/index.js.map +0 -1
  194. package/dist/components/checkbox/checkbox-label.d.ts.map +0 -1
  195. package/dist/components/checkbox/checkbox-label.js.map +0 -1
  196. package/dist/components/checkbox/checkbox-links.d.ts.map +0 -1
  197. package/dist/components/checkbox/checkbox-links.js.map +0 -1
  198. package/dist/components/checkbox/checkbox.d.ts.map +0 -1
  199. package/dist/components/checkbox/checkbox.js.map +0 -1
  200. package/dist/components/checkbox/checkbox.stories.js.map +0 -1
  201. package/dist/components/checkbox/index.d.ts.map +0 -1
  202. package/dist/components/checkbox/index.js.map +0 -1
  203. package/dist/components/code-block/code-block-footer.d.ts.map +0 -1
  204. package/dist/components/code-block/code-block-footer.js.map +0 -1
  205. package/dist/components/code-block/code-block.d.ts.map +0 -1
  206. package/dist/components/code-block/code-block.js.map +0 -1
  207. package/dist/components/code-block/code-block.stories.js.map +0 -1
  208. package/dist/components/code-block/code-content.d.ts.map +0 -1
  209. package/dist/components/code-block/code-content.js.map +0 -1
  210. package/dist/components/code-block/code-copy-button.d.ts.map +0 -1
  211. package/dist/components/code-block/code-copy-button.js.map +0 -1
  212. package/dist/components/code-block/code-tabs.d.ts.map +0 -1
  213. package/dist/components/code-block/code-tabs.js.map +0 -1
  214. package/dist/components/code-block/index.d.ts.map +0 -1
  215. package/dist/components/code-block/index.js.map +0 -1
  216. package/dist/components/confetti/confetti.d.ts.map +0 -1
  217. package/dist/components/confetti/confetti.js.map +0 -1
  218. package/dist/components/confetti/confetti.stories.js.map +0 -1
  219. package/dist/components/confetti/index.d.ts.map +0 -1
  220. package/dist/components/confetti/index.js.map +0 -1
  221. package/dist/components/date-picker/date-picker.d.ts.map +0 -1
  222. package/dist/components/date-picker/date-picker.js.map +0 -1
  223. package/dist/components/date-picker/date-picker.stories.js.map +0 -1
  224. package/dist/components/date-picker/index.d.ts.map +0 -1
  225. package/dist/components/date-picker/index.js.map +0 -1
  226. package/dist/components/date-time-range-picker/date-time-range-picker.d.ts.map +0 -1
  227. package/dist/components/date-time-range-picker/date-time-range-picker.js.map +0 -1
  228. package/dist/components/date-time-range-picker/index.d.ts.map +0 -1
  229. package/dist/components/date-time-range-picker/index.js.map +0 -1
  230. package/dist/components/dot-grid/dot-grid.d.ts.map +0 -1
  231. package/dist/components/dot-grid/dot-grid.js.map +0 -1
  232. package/dist/components/dot-grid/index.d.ts.map +0 -1
  233. package/dist/components/dot-grid/index.js.map +0 -1
  234. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +0 -1
  235. package/dist/components/dropdown-menu/dropdown-menu.js.map +0 -1
  236. package/dist/components/dropdown-menu/dropdown-menu.stories.js.map +0 -1
  237. package/dist/components/dropdown-menu/index.d.ts.map +0 -1
  238. package/dist/components/dropdown-menu/index.js.map +0 -1
  239. package/dist/components/dynamic-item/dynamic-item.d.ts.map +0 -1
  240. package/dist/components/dynamic-item/dynamic-item.js.map +0 -1
  241. package/dist/components/dynamic-item/dynamic-item.stories.js.map +0 -1
  242. package/dist/components/dynamic-item/index.d.ts.map +0 -1
  243. package/dist/components/dynamic-item/index.js.map +0 -1
  244. package/dist/components/form/form.d.ts.map +0 -1
  245. package/dist/components/form/form.js.map +0 -1
  246. package/dist/components/form/form.stories.js.map +0 -1
  247. package/dist/components/form/index.d.ts.map +0 -1
  248. package/dist/components/form/index.js.map +0 -1
  249. package/dist/components/icon/custom/badge.d.ts.map +0 -1
  250. package/dist/components/icon/custom/badge.js.map +0 -1
  251. package/dist/components/icon/custom/check-circle-solid.d.ts.map +0 -1
  252. package/dist/components/icon/custom/check-circle-solid.js.map +0 -1
  253. package/dist/components/icon/custom/circle-dotted-line.d.ts.map +0 -1
  254. package/dist/components/icon/custom/circle-dotted-line.js.map +0 -1
  255. package/dist/components/icon/custom/component-fill.d.ts.map +0 -1
  256. package/dist/components/icon/custom/component-fill.js.map +0 -1
  257. package/dist/components/icon/custom/component-line.d.ts.map +0 -1
  258. package/dist/components/icon/custom/component-line.js.map +0 -1
  259. package/dist/components/icon/custom/ellipse-mini-solid.d.ts.map +0 -1
  260. package/dist/components/icon/custom/ellipse-mini-solid.js.map +0 -1
  261. package/dist/components/icon/custom/index.d.ts.map +0 -1
  262. package/dist/components/icon/custom/index.js.map +0 -1
  263. package/dist/components/icon/custom/info-tooltip-fill.d.ts.map +0 -1
  264. package/dist/components/icon/custom/info-tooltip-fill.js.map +0 -1
  265. package/dist/components/icon/custom/resize.d.ts.map +0 -1
  266. package/dist/components/icon/custom/resize.js.map +0 -1
  267. package/dist/components/icon/custom/shipfox-logo.d.ts.map +0 -1
  268. package/dist/components/icon/custom/shipfox-logo.js.map +0 -1
  269. package/dist/components/icon/custom/slack-logo.d.ts.map +0 -1
  270. package/dist/components/icon/custom/slack-logo.js.map +0 -1
  271. package/dist/components/icon/custom/spinner.d.ts.map +0 -1
  272. package/dist/components/icon/custom/spinner.js.map +0 -1
  273. package/dist/components/icon/custom/stripe-logo.d.ts.map +0 -1
  274. package/dist/components/icon/custom/stripe-logo.js.map +0 -1
  275. package/dist/components/icon/custom/thunder.d.ts.map +0 -1
  276. package/dist/components/icon/custom/thunder.js.map +0 -1
  277. package/dist/components/icon/custom/x-circle-solid.d.ts.map +0 -1
  278. package/dist/components/icon/custom/x-circle-solid.js.map +0 -1
  279. package/dist/components/icon/icon.d.ts.map +0 -1
  280. package/dist/components/icon/icon.js.map +0 -1
  281. package/dist/components/icon/icon.stories.js.map +0 -1
  282. package/dist/components/icon/index.d.ts.map +0 -1
  283. package/dist/components/icon/index.js.map +0 -1
  284. package/dist/components/icon/remixicon-registry.d.ts.map +0 -1
  285. package/dist/components/icon/remixicon-registry.js.map +0 -1
  286. package/dist/components/index.d.ts.map +0 -1
  287. package/dist/components/index.js.map +0 -1
  288. package/dist/components/inline-tips/index.d.ts.map +0 -1
  289. package/dist/components/inline-tips/index.js.map +0 -1
  290. package/dist/components/inline-tips/inline-tips.d.ts.map +0 -1
  291. package/dist/components/inline-tips/inline-tips.js.map +0 -1
  292. package/dist/components/inline-tips/inline-tips.stories.js.map +0 -1
  293. package/dist/components/input/index.d.ts.map +0 -1
  294. package/dist/components/input/index.js.map +0 -1
  295. package/dist/components/input/input.d.ts.map +0 -1
  296. package/dist/components/input/input.js.map +0 -1
  297. package/dist/components/input/input.stories.js.map +0 -1
  298. package/dist/components/item/index.d.ts.map +0 -1
  299. package/dist/components/item/index.js.map +0 -1
  300. package/dist/components/item/item.d.ts.map +0 -1
  301. package/dist/components/item/item.js.map +0 -1
  302. package/dist/components/item/item.stories.js.map +0 -1
  303. package/dist/components/label/index.d.ts.map +0 -1
  304. package/dist/components/label/index.js.map +0 -1
  305. package/dist/components/label/label.d.ts.map +0 -1
  306. package/dist/components/label/label.js.map +0 -1
  307. package/dist/components/label/label.stories.js.map +0 -1
  308. package/dist/components/modal/index.d.ts.map +0 -1
  309. package/dist/components/modal/index.js.map +0 -1
  310. package/dist/components/modal/modal.d.ts.map +0 -1
  311. package/dist/components/modal/modal.js.map +0 -1
  312. package/dist/components/modal/modal.stories.js.map +0 -1
  313. package/dist/components/moving-border/index.d.ts.map +0 -1
  314. package/dist/components/moving-border/index.js.map +0 -1
  315. package/dist/components/moving-border/moving-border.d.ts.map +0 -1
  316. package/dist/components/moving-border/moving-border.js.map +0 -1
  317. package/dist/components/popover/index.d.ts.map +0 -1
  318. package/dist/components/popover/index.js.map +0 -1
  319. package/dist/components/popover/popover.d.ts.map +0 -1
  320. package/dist/components/popover/popover.js.map +0 -1
  321. package/dist/components/shiny-text/index.d.ts.map +0 -1
  322. package/dist/components/shiny-text/index.js.map +0 -1
  323. package/dist/components/shiny-text/shiny-text.d.ts.map +0 -1
  324. package/dist/components/shiny-text/shiny-text.js.map +0 -1
  325. package/dist/components/tabs/index.d.ts.map +0 -1
  326. package/dist/components/tabs/index.js.map +0 -1
  327. package/dist/components/tabs/tabs.d.ts.map +0 -1
  328. package/dist/components/tabs/tabs.js.map +0 -1
  329. package/dist/components/tabs/tabs.stories.js.map +0 -1
  330. package/dist/components/textarea/index.d.ts.map +0 -1
  331. package/dist/components/textarea/index.js.map +0 -1
  332. package/dist/components/textarea/textarea.d.ts.map +0 -1
  333. package/dist/components/textarea/textarea.js.map +0 -1
  334. package/dist/components/textarea/textarea.stories.js.map +0 -1
  335. package/dist/components/theme/index.d.ts.map +0 -1
  336. package/dist/components/theme/index.js.map +0 -1
  337. package/dist/components/theme/theme-provider.d.ts.map +0 -1
  338. package/dist/components/theme/theme-provider.js.map +0 -1
  339. package/dist/components/toast/index.d.ts.map +0 -1
  340. package/dist/components/toast/index.js.map +0 -1
  341. package/dist/components/toast/toast-custom.d.ts.map +0 -1
  342. package/dist/components/toast/toast-custom.js.map +0 -1
  343. package/dist/components/toast/toast.d.ts.map +0 -1
  344. package/dist/components/toast/toast.js.map +0 -1
  345. package/dist/components/toast/toast.stories.js.map +0 -1
  346. package/dist/components/tooltip/index.d.ts.map +0 -1
  347. package/dist/components/tooltip/index.js.map +0 -1
  348. package/dist/components/tooltip/tooltip.d.ts.map +0 -1
  349. package/dist/components/tooltip/tooltip.js.map +0 -1
  350. package/dist/components/tooltip/tooltip.stories.js.map +0 -1
  351. package/dist/components/typography/code.d.ts.map +0 -1
  352. package/dist/components/typography/code.js.map +0 -1
  353. package/dist/components/typography/code.stories.js.map +0 -1
  354. package/dist/components/typography/header.d.ts.map +0 -1
  355. package/dist/components/typography/header.js.map +0 -1
  356. package/dist/components/typography/header.stories.js.map +0 -1
  357. package/dist/components/typography/index.d.ts.map +0 -1
  358. package/dist/components/typography/index.js.map +0 -1
  359. package/dist/components/typography/text.d.ts.map +0 -1
  360. package/dist/components/typography/text.js.map +0 -1
  361. package/dist/components/typography/text.stories.js.map +0 -1
  362. package/dist/hooks/index.d.ts.map +0 -1
  363. package/dist/hooks/index.js.map +0 -1
  364. package/dist/hooks/useCopy.d.ts.map +0 -1
  365. package/dist/hooks/useCopy.js.map +0 -1
  366. package/dist/hooks/useCopyToClipboard.d.ts.map +0 -1
  367. package/dist/hooks/useCopyToClipboard.js.map +0 -1
  368. package/dist/hooks/useMediaQuery.d.ts.map +0 -1
  369. package/dist/hooks/useMediaQuery.js.map +0 -1
  370. package/dist/hooks/useResolvedTheme.d.ts.map +0 -1
  371. package/dist/hooks/useResolvedTheme.js.map +0 -1
  372. package/dist/hooks/useShikiHighlight.d.ts.map +0 -1
  373. package/dist/hooks/useShikiHighlight.js.map +0 -1
  374. package/dist/hooks/useShikiStyleInjection.d.ts.map +0 -1
  375. package/dist/hooks/useShikiStyleInjection.js.map +0 -1
  376. package/dist/hooks/useTheme.d.ts.map +0 -1
  377. package/dist/hooks/useTheme.js.map +0 -1
  378. package/dist/index.d.ts.map +0 -1
  379. package/dist/index.js.map +0 -1
  380. package/dist/onboarding/sign-in.stories.js.map +0 -1
  381. package/dist/state/theme.d.ts.map +0 -1
  382. package/dist/state/theme.js.map +0 -1
  383. package/dist/utils/avatar.d.ts.map +0 -1
  384. package/dist/utils/avatar.js.map +0 -1
  385. package/dist/utils/clipboard.d.ts.map +0 -1
  386. package/dist/utils/clipboard.js.map +0 -1
  387. package/dist/utils/cn.d.ts.map +0 -1
  388. package/dist/utils/cn.js.map +0 -1
  389. package/dist/utils/date.d.ts.map +0 -1
  390. package/dist/utils/date.js.map +0 -1
  391. package/dist/utils/debounce.d.ts.map +0 -1
  392. package/dist/utils/debounce.js.map +0 -1
  393. package/dist/utils/format/chart.d.ts.map +0 -1
  394. package/dist/utils/format/chart.js.map +0 -1
  395. package/dist/utils/format/date.d.ts.map +0 -1
  396. package/dist/utils/format/date.js.map +0 -1
  397. package/dist/utils/format/duration.d.ts.map +0 -1
  398. package/dist/utils/format/duration.js.map +0 -1
  399. package/dist/utils/format/index.d.ts.map +0 -1
  400. package/dist/utils/format/index.js.map +0 -1
  401. package/dist/utils/format/number.d.ts.map +0 -1
  402. package/dist/utils/format/number.js.map +0 -1
  403. package/dist/utils/index.d.ts.map +0 -1
  404. package/dist/utils/index.js.map +0 -1
  405. package/index.css +0 -970
  406. package/src/assets/illustration-1.svg +0 -92
  407. package/src/assets/illustration-2.svg +0 -14
  408. package/src/assets/illustration-gradient.svg +0 -7049
  409. package/src/build-css-entry.ts +0 -3
  410. package/src/colors.stories.conts.ts +0 -164
  411. package/src/colors.stories.tsx +0 -66
  412. package/src/components/alert/alert.stories.tsx +0 -178
  413. package/src/components/alert/alert.tsx +0 -291
  414. package/src/components/alert/index.ts +0 -1
  415. package/src/components/avatar/avatar-group.tsx +0 -186
  416. package/src/components/avatar/avatar.stories.tsx +0 -179
  417. package/src/components/avatar/avatar.tsx +0 -219
  418. package/src/components/avatar/index.ts +0 -2
  419. package/src/components/badge/badge.stories.tsx +0 -468
  420. package/src/components/badge/badge.tsx +0 -147
  421. package/src/components/badge/icon-badge.tsx +0 -43
  422. package/src/components/badge/index.ts +0 -4
  423. package/src/components/badge/status-badge.tsx +0 -43
  424. package/src/components/badge/user-badge.tsx +0 -34
  425. package/src/components/button/button-link.stories.tsx +0 -86
  426. package/src/components/button/button-link.tsx +0 -76
  427. package/src/components/button/button.stories.tsx +0 -138
  428. package/src/components/button/button.tsx +0 -91
  429. package/src/components/button/icon-button.stories.tsx +0 -228
  430. package/src/components/button/icon-button.tsx +0 -95
  431. package/src/components/button/index.ts +0 -3
  432. package/src/components/calendar/calendar.tsx +0 -90
  433. package/src/components/calendar/index.ts +0 -1
  434. package/src/components/checkbox/checkbox-label.tsx +0 -125
  435. package/src/components/checkbox/checkbox-links.tsx +0 -92
  436. package/src/components/checkbox/checkbox.stories.tsx +0 -391
  437. package/src/components/checkbox/checkbox.tsx +0 -71
  438. package/src/components/checkbox/index.ts +0 -3
  439. package/src/components/code-block/code-block-footer.tsx +0 -190
  440. package/src/components/code-block/code-block.stories.tsx +0 -323
  441. package/src/components/code-block/code-block.tsx +0 -283
  442. package/src/components/code-block/code-content.tsx +0 -63
  443. package/src/components/code-block/code-copy-button.tsx +0 -73
  444. package/src/components/code-block/code-tabs.tsx +0 -170
  445. package/src/components/code-block/index.ts +0 -3
  446. package/src/components/confetti/confetti.stories.tsx +0 -38
  447. package/src/components/confetti/confetti.tsx +0 -140
  448. package/src/components/confetti/index.ts +0 -1
  449. package/src/components/date-picker/date-picker.stories.tsx +0 -230
  450. package/src/components/date-picker/date-picker.tsx +0 -179
  451. package/src/components/date-picker/index.ts +0 -1
  452. package/src/components/date-time-range-picker/date-time-range-picker.tsx +0 -211
  453. package/src/components/date-time-range-picker/index.ts +0 -1
  454. package/src/components/dot-grid/dot-grid.tsx +0 -325
  455. package/src/components/dot-grid/index.ts +0 -1
  456. package/src/components/dropdown-menu/dropdown-menu.stories.tsx +0 -384
  457. package/src/components/dropdown-menu/dropdown-menu.tsx +0 -416
  458. package/src/components/dropdown-menu/index.ts +0 -1
  459. package/src/components/dynamic-item/dynamic-item.stories.tsx +0 -266
  460. package/src/components/dynamic-item/dynamic-item.tsx +0 -74
  461. package/src/components/dynamic-item/index.ts +0 -1
  462. package/src/components/form/form.stories.tsx +0 -500
  463. package/src/components/form/form.tsx +0 -154
  464. package/src/components/form/index.ts +0 -1
  465. package/src/components/icon/custom/badge.tsx +0 -17
  466. package/src/components/icon/custom/check-circle-solid.tsx +0 -24
  467. package/src/components/icon/custom/circle-dotted-line.tsx +0 -17
  468. package/src/components/icon/custom/component-fill.tsx +0 -17
  469. package/src/components/icon/custom/component-line.tsx +0 -17
  470. package/src/components/icon/custom/ellipse-mini-solid.tsx +0 -17
  471. package/src/components/icon/custom/index.ts +0 -14
  472. package/src/components/icon/custom/info-tooltip-fill.tsx +0 -21
  473. package/src/components/icon/custom/resize.tsx +0 -17
  474. package/src/components/icon/custom/shipfox-logo.tsx +0 -20
  475. package/src/components/icon/custom/slack-logo.tsx +0 -35
  476. package/src/components/icon/custom/spinner.tsx +0 -144
  477. package/src/components/icon/custom/stripe-logo.tsx +0 -27
  478. package/src/components/icon/custom/thunder.tsx +0 -17
  479. package/src/components/icon/custom/x-circle-solid.tsx +0 -24
  480. package/src/components/icon/icon.stories.tsx +0 -31
  481. package/src/components/icon/icon.tsx +0 -90
  482. package/src/components/icon/index.ts +0 -1
  483. package/src/components/icon/remixicon-registry.ts +0 -24
  484. package/src/components/index.ts +0 -29
  485. package/src/components/inline-tips/index.ts +0 -1
  486. package/src/components/inline-tips/inline-tips.stories.tsx +0 -131
  487. package/src/components/inline-tips/inline-tips.tsx +0 -132
  488. package/src/components/input/index.ts +0 -1
  489. package/src/components/input/input.stories.tsx +0 -138
  490. package/src/components/input/input.tsx +0 -43
  491. package/src/components/item/index.ts +0 -1
  492. package/src/components/item/item.stories.tsx +0 -159
  493. package/src/components/item/item.tsx +0 -182
  494. package/src/components/label/index.ts +0 -1
  495. package/src/components/label/label.stories.tsx +0 -67
  496. package/src/components/label/label.tsx +0 -15
  497. package/src/components/modal/index.ts +0 -1
  498. package/src/components/modal/modal.stories.tsx +0 -448
  499. package/src/components/modal/modal.tsx +0 -311
  500. package/src/components/moving-border/index.ts +0 -1
  501. package/src/components/moving-border/moving-border.tsx +0 -67
  502. package/src/components/popover/index.ts +0 -1
  503. package/src/components/popover/popover.tsx +0 -60
  504. package/src/components/renovate.json +0 -23
  505. package/src/components/shiny-text/index.ts +0 -1
  506. package/src/components/shiny-text/shiny-text.tsx +0 -21
  507. package/src/components/tabs/index.ts +0 -1
  508. package/src/components/tabs/tabs.stories.tsx +0 -100
  509. package/src/components/tabs/tabs.tsx +0 -380
  510. package/src/components/textarea/index.ts +0 -1
  511. package/src/components/textarea/textarea.stories.tsx +0 -196
  512. package/src/components/textarea/textarea.tsx +0 -42
  513. package/src/components/theme/index.ts +0 -1
  514. package/src/components/theme/theme-provider.tsx +0 -50
  515. package/src/components/toast/index.ts +0 -2
  516. package/src/components/toast/toast-custom.tsx +0 -154
  517. package/src/components/toast/toast.stories.tsx +0 -369
  518. package/src/components/toast/toast.tsx +0 -41
  519. package/src/components/tooltip/index.ts +0 -1
  520. package/src/components/tooltip/tooltip.stories.tsx +0 -284
  521. package/src/components/tooltip/tooltip.tsx +0 -121
  522. package/src/components/typography/code.stories.tsx +0 -36
  523. package/src/components/typography/code.tsx +0 -38
  524. package/src/components/typography/header.stories.tsx +0 -27
  525. package/src/components/typography/header.tsx +0 -41
  526. package/src/components/typography/index.ts +0 -3
  527. package/src/components/typography/text.stories.tsx +0 -67
  528. package/src/components/typography/text.tsx +0 -50
  529. package/src/hooks/index.ts +0 -6
  530. package/src/hooks/useCopy.ts +0 -0
  531. package/src/hooks/useCopyToClipboard.ts +0 -20
  532. package/src/hooks/useMediaQuery.ts +0 -87
  533. package/src/hooks/useResolvedTheme.ts +0 -34
  534. package/src/hooks/useShikiHighlight.ts +0 -140
  535. package/src/hooks/useShikiStyleInjection.ts +0 -34
  536. package/src/hooks/useTheme.ts +0 -10
  537. package/src/index.ts +0 -4
  538. package/src/onboarding/sign-in.stories.tsx +0 -85
  539. package/src/state/theme.ts +0 -15
  540. package/src/utils/avatar.ts +0 -27
  541. package/src/utils/clipboard.ts +0 -4
  542. package/src/utils/cn.ts +0 -6
  543. package/src/utils/date.test.ts +0 -119
  544. package/src/utils/date.ts +0 -99
  545. package/src/utils/debounce.ts +0 -15
  546. package/src/utils/format/chart.ts +0 -16
  547. package/src/utils/format/date.test.ts +0 -65
  548. package/src/utils/format/date.ts +0 -75
  549. package/src/utils/format/duration.test.ts +0 -58
  550. package/src/utils/format/duration.ts +0 -82
  551. package/src/utils/format/index.ts +0 -4
  552. package/src/utils/format/number.test.ts +0 -38
  553. package/src/utils/format/number.ts +0 -33
  554. package/src/utils/index.ts +0 -6
  555. package/test/global.ts +0 -3
  556. package/test/setup.ts +0 -9
  557. package/tsconfig.build.json +0 -19
  558. package/tsconfig.json +0 -11
  559. package/tsconfig.test.json +0 -12
  560. package/vercel.json +0 -8
  561. package/vite.css.config.ts +0 -30
  562. package/vitest.config.ts +0 -44
@@ -1,468 +0,0 @@
1
- import type {Meta, StoryObj} from '@storybook/react';
2
- import {Code} from 'components/typography';
3
- import React from 'react';
4
- import {Badge, IconBadge, StatusBadge, UserBadge} from '.';
5
-
6
- const meta = {
7
- title: 'Components/Badge',
8
- component: Badge,
9
- parameters: {
10
- layout: 'centered',
11
- },
12
- tags: ['autodocs'],
13
- } satisfies Meta<typeof Badge>;
14
-
15
- export default meta;
16
- type Story = StoryObj<typeof meta>;
17
-
18
- export const AllVariants: Story = {
19
- render: () => (
20
- <div className="flex flex-col gap-32">
21
- {/* STATUS BADGE */}
22
- <div>
23
- <Code variant="label" className="mb-16">
24
- Status Badge
25
- </Code>
26
- <div className="flex gap-16">
27
- <StatusBadge variant="neutral">Badge</StatusBadge>
28
- <StatusBadge variant="info">Badge</StatusBadge>
29
- <StatusBadge variant="feature">Badge</StatusBadge>
30
- <StatusBadge variant="success" dotClassName="size-5 rounded-full">
31
- Badge
32
- </StatusBadge>
33
- <StatusBadge variant="warning">Badge</StatusBadge>
34
- <StatusBadge variant="error">Badge</StatusBadge>
35
- </div>
36
- </div>
37
-
38
- {/* USER BADGE */}
39
- <div>
40
- <Code variant="label" className="mb-16">
41
- User Badge
42
- </Code>
43
- <div className="flex gap-16">
44
- <UserBadge
45
- name="Thierry Abalea"
46
- avatarSrc="https://avatars.githubusercontent.com/u/1290899?v=4"
47
- />
48
- <UserBadge
49
- name="Kyle Nguyen"
50
- avatarSrc="https://avatars.githubusercontent.com/u/89263955?v=4"
51
- />
52
- <UserBadge
53
- name="Noe Charmet"
54
- avatarSrc="https://avatars.githubusercontent.com/u/59678972?v=4"
55
- />
56
- </div>
57
- </div>
58
-
59
- {/* ICON BADGE */}
60
- <div>
61
- <Code variant="label" className="mb-16">
62
- Icon Badge
63
- </Code>
64
- <div className="flex gap-16">
65
- <IconBadge variant="neutral" name="homeSmile" />
66
- <IconBadge variant="info" name="homeSmile" />
67
- <IconBadge variant="feature" name="homeSmile" />
68
- <IconBadge variant="success" name="homeSmile" />
69
- <IconBadge variant="primary" name="homeSmile" />
70
- <IconBadge variant="error" name="homeSmile" />
71
- </div>
72
- </div>
73
-
74
- {/* BADGE - 2XS SIZE */}
75
- <div>
76
- <Code variant="label" className="mb-16">
77
- Badge - 2XS Size
78
- </Code>
79
- <div className="flex flex-col gap-16">
80
- {/* Base */}
81
- <div className="flex gap-16">
82
- <Badge variant="neutral" size="2xs">
83
- Badge
84
- </Badge>
85
- <Badge variant="info" size="2xs">
86
- Badge
87
- </Badge>
88
- <Badge variant="feature" size="2xs">
89
- Badge
90
- </Badge>
91
- <Badge variant="success" size="2xs">
92
- Badge
93
- </Badge>
94
- <Badge variant="warning" size="2xs">
95
- Badge
96
- </Badge>
97
- <Badge variant="error" size="2xs">
98
- Badge
99
- </Badge>
100
- </div>
101
-
102
- {/* With Right Icon */}
103
- <div className="flex gap-16">
104
- <Badge variant="neutral" size="2xs" iconRight="close">
105
- Badge
106
- </Badge>
107
- <Badge variant="info" size="2xs" iconRight="close">
108
- Badge
109
- </Badge>
110
- <Badge variant="feature" size="2xs" iconRight="close">
111
- Badge
112
- </Badge>
113
- <Badge variant="success" size="2xs" iconRight="close">
114
- Badge
115
- </Badge>
116
- <Badge variant="warning" size="2xs" iconRight="close">
117
- Badge
118
- </Badge>
119
- <Badge variant="error" size="2xs" iconRight="close">
120
- Badge
121
- </Badge>
122
- </div>
123
-
124
- {/* With Left Icon */}
125
- <div className="flex gap-16">
126
- <Badge variant="neutral" size="2xs" iconLeft="close">
127
- Badge
128
- </Badge>
129
- <Badge variant="info" size="2xs" iconLeft="close">
130
- Badge
131
- </Badge>
132
- <Badge variant="feature" size="2xs" iconLeft="close">
133
- Badge
134
- </Badge>
135
- <Badge variant="success" size="2xs" iconLeft="close">
136
- Badge
137
- </Badge>
138
- <Badge variant="warning" size="2xs" iconLeft="close">
139
- Badge
140
- </Badge>
141
- <Badge variant="error" size="2xs" iconLeft="close">
142
- Badge
143
- </Badge>
144
- </div>
145
- </div>
146
- </div>
147
-
148
- {/* BADGE - XS SIZE */}
149
- <div>
150
- <Code variant="label" className="mb-16">
151
- Badge - XS Size
152
- </Code>
153
- <div className="flex flex-col gap-16">
154
- {/* Base */}
155
- <div className="flex gap-16">
156
- <Badge variant="neutral" size="xs">
157
- Badge
158
- </Badge>
159
- <Badge variant="info" size="xs">
160
- Badge
161
- </Badge>
162
- <Badge variant="feature" size="xs">
163
- Badge
164
- </Badge>
165
- <Badge variant="success" size="xs">
166
- Badge
167
- </Badge>
168
- <Badge variant="warning" size="xs">
169
- Badge
170
- </Badge>
171
- <Badge variant="error" size="xs">
172
- Badge
173
- </Badge>
174
- </div>
175
-
176
- {/* With Right Icon */}
177
- <div className="flex gap-16">
178
- <Badge variant="neutral" size="xs" iconRight="close">
179
- Badge
180
- </Badge>
181
- <Badge variant="info" size="xs" iconRight="close">
182
- Badge
183
- </Badge>
184
- <Badge variant="feature" size="xs" iconRight="close">
185
- Badge
186
- </Badge>
187
- <Badge variant="success" size="xs" iconRight="close">
188
- Badge
189
- </Badge>
190
- <Badge variant="warning" size="xs" iconRight="close">
191
- Badge
192
- </Badge>
193
- <Badge variant="error" size="xs" iconRight="close">
194
- Badge
195
- </Badge>
196
- </div>
197
-
198
- {/* With Left Icon */}
199
- <div className="flex gap-16">
200
- <Badge variant="neutral" size="xs" iconLeft="close">
201
- Badge
202
- </Badge>
203
- <Badge variant="info" size="xs" iconLeft="close">
204
- Badge
205
- </Badge>
206
- <Badge variant="feature" size="xs" iconLeft="close">
207
- Badge
208
- </Badge>
209
- <Badge variant="success" size="xs" iconLeft="close">
210
- Badge
211
- </Badge>
212
- <Badge variant="warning" size="xs" iconLeft="close">
213
- Badge
214
- </Badge>
215
- <Badge variant="error" size="xs" iconLeft="close">
216
- Badge
217
- </Badge>
218
- </div>
219
- </div>
220
- </div>
221
-
222
- {/* BADGE - ROUNDED */}
223
- <div>
224
- <Code variant="label" className="mb-16">
225
- Badge - Rounded
226
- </Code>
227
- <div className="flex flex-col gap-16">
228
- {/* Base - 2XS */}
229
- <div className="flex gap-16">
230
- <Badge variant="neutral" size="2xs" radius="rounded">
231
- Badge
232
- </Badge>
233
- <Badge variant="info" size="2xs" radius="rounded">
234
- Badge
235
- </Badge>
236
- <Badge variant="feature" size="2xs" radius="rounded">
237
- Badge
238
- </Badge>
239
- <Badge variant="success" size="2xs" radius="rounded">
240
- Badge
241
- </Badge>
242
- <Badge variant="warning" size="2xs" radius="rounded">
243
- Badge
244
- </Badge>
245
- <Badge variant="error" size="2xs" radius="rounded">
246
- Badge
247
- </Badge>
248
- </div>
249
-
250
- {/* Base - XS */}
251
- <div className="flex gap-16">
252
- <Badge variant="neutral" size="xs" radius="rounded">
253
- Badge
254
- </Badge>
255
- <Badge variant="info" size="xs" radius="rounded">
256
- Badge
257
- </Badge>
258
- <Badge variant="feature" size="xs" radius="rounded">
259
- Badge
260
- </Badge>
261
- <Badge variant="success" size="xs" radius="rounded">
262
- Badge
263
- </Badge>
264
- <Badge variant="warning" size="xs" radius="rounded">
265
- Badge
266
- </Badge>
267
- <Badge variant="error" size="xs" radius="rounded">
268
- Badge
269
- </Badge>
270
- </div>
271
-
272
- {/* With Right Icon - 2XS */}
273
- <div className="flex gap-16">
274
- <Badge variant="neutral" size="2xs" radius="rounded" iconRight="close">
275
- Badge
276
- </Badge>
277
- <Badge variant="info" size="2xs" radius="rounded" iconRight="close">
278
- Badge
279
- </Badge>
280
- <Badge variant="feature" size="2xs" radius="rounded" iconRight="close">
281
- Badge
282
- </Badge>
283
- <Badge variant="success" size="2xs" radius="rounded" iconRight="close">
284
- Badge
285
- </Badge>
286
- <Badge variant="warning" size="2xs" radius="rounded" iconRight="close">
287
- Badge
288
- </Badge>
289
- <Badge variant="error" size="2xs" radius="rounded" iconRight="close">
290
- Badge
291
- </Badge>
292
- </div>
293
-
294
- {/* With Right Icon - XS */}
295
- <div className="flex gap-16">
296
- <Badge variant="neutral" size="xs" radius="rounded" iconRight="close">
297
- Badge
298
- </Badge>
299
- <Badge variant="info" size="xs" radius="rounded" iconRight="close">
300
- Badge
301
- </Badge>
302
- <Badge variant="feature" size="xs" radius="rounded" iconRight="close">
303
- Badge
304
- </Badge>
305
- <Badge variant="success" size="xs" radius="rounded" iconRight="close">
306
- Badge
307
- </Badge>
308
- <Badge variant="warning" size="xs" radius="rounded" iconRight="close">
309
- Badge
310
- </Badge>
311
- <Badge variant="error" size="xs" radius="rounded" iconRight="close">
312
- Badge
313
- </Badge>
314
- </div>
315
-
316
- {/* With Left Icon - 2XS */}
317
- <div className="flex gap-16">
318
- <Badge variant="neutral" size="2xs" radius="rounded" iconLeft="close">
319
- Badge
320
- </Badge>
321
- <Badge variant="info" size="2xs" radius="rounded" iconLeft="close">
322
- Badge
323
- </Badge>
324
- <Badge variant="feature" size="2xs" radius="rounded" iconLeft="close">
325
- Badge
326
- </Badge>
327
- <Badge variant="success" size="2xs" radius="rounded" iconLeft="close">
328
- Badge
329
- </Badge>
330
- <Badge variant="warning" size="2xs" radius="rounded" iconLeft="close">
331
- Badge
332
- </Badge>
333
- <Badge variant="error" size="2xs" radius="rounded" iconLeft="close">
334
- Badge
335
- </Badge>
336
- </div>
337
-
338
- {/* With Left Icon - XS */}
339
- <div className="flex gap-16">
340
- <Badge variant="neutral" size="xs" radius="rounded" iconLeft="close">
341
- Badge
342
- </Badge>
343
- <Badge variant="info" size="xs" radius="rounded" iconLeft="close">
344
- Badge
345
- </Badge>
346
- <Badge variant="feature" size="xs" radius="rounded" iconLeft="close">
347
- Badge
348
- </Badge>
349
- <Badge variant="success" size="xs" radius="rounded" iconLeft="close">
350
- Badge
351
- </Badge>
352
- <Badge variant="warning" size="xs" radius="rounded" iconLeft="close">
353
- Badge
354
- </Badge>
355
- <Badge variant="error" size="xs" radius="rounded" iconLeft="close">
356
- Badge
357
- </Badge>
358
- </div>
359
- </div>
360
- </div>
361
-
362
- {/* BETA BADGE */}
363
- <div>
364
- <Code variant="label" className="mb-16">
365
- Beta Badge
366
- </Code>
367
- <div className="flex gap-16">
368
- <Badge variant="info" size="2xs" radius="rounded">
369
- Beta
370
- </Badge>
371
- </div>
372
- </div>
373
- </div>
374
- ),
375
- };
376
-
377
- // Interactive badges with click handlers
378
- function InteractiveBadgesComponent() {
379
- const [tags, setTags] = React.useState(['React', 'TypeScript', 'Next.js', 'Tailwind']);
380
-
381
- const removeTag = (tagToRemove: string) => {
382
- setTags(tags.filter((tag) => tag !== tagToRemove));
383
- };
384
-
385
- return (
386
- <div className="flex flex-col gap-32">
387
- {/* Removable tags */}
388
- <div>
389
- <Code variant="label" className="mb-16">
390
- Interactive Badges - Removable Tags
391
- </Code>
392
- <div className="flex flex-wrap gap-8">
393
- {tags.map((tag) => (
394
- <Badge
395
- key={tag}
396
- variant="neutral"
397
- size="xs"
398
- radius="rounded"
399
- iconRight="close"
400
- onIconRightClick={() => removeTag(tag)}
401
- iconRightAriaLabel={`Remove ${tag} tag`}
402
- >
403
- {tag}
404
- </Badge>
405
- ))}
406
- </div>
407
- </div>
408
-
409
- {/* Different variants with interactive icons */}
410
- <div>
411
- <Code variant="label" className="mb-16">
412
- Interactive Badges - Different Variants
413
- </Code>
414
- <div className="flex flex-wrap gap-8">
415
- <Badge
416
- variant="success"
417
- size="xs"
418
- iconRight="close"
419
- onIconRightClick={() => alert('Success badge clicked!')}
420
- iconRightAriaLabel="Remove success badge"
421
- >
422
- Completed
423
- </Badge>
424
- <Badge
425
- variant="warning"
426
- size="xs"
427
- iconRight="close"
428
- onIconRightClick={() => alert('Warning badge clicked!')}
429
- iconRightAriaLabel="Remove warning badge"
430
- >
431
- Pending
432
- </Badge>
433
- <Badge
434
- variant="error"
435
- size="xs"
436
- iconRight="close"
437
- onIconRightClick={() => alert('Error badge clicked!')}
438
- iconRightAriaLabel="Remove error badge"
439
- >
440
- Failed
441
- </Badge>
442
- </div>
443
- </div>
444
-
445
- {/* Non-interactive icons (static) */}
446
- <div>
447
- <Code variant="label" className="mb-16">
448
- Static Icons (Non-interactive)
449
- </Code>
450
- <div className="flex flex-wrap gap-8">
451
- <Badge variant="info" size="xs" iconLeft="info">
452
- Information
453
- </Badge>
454
- <Badge variant="success" size="xs" iconLeft="check">
455
- Verified
456
- </Badge>
457
- <Badge variant="feature" size="xs" iconLeft="money">
458
- Premium
459
- </Badge>
460
- </div>
461
- </div>
462
- </div>
463
- );
464
- }
465
-
466
- export const InteractiveBadges: Story = {
467
- render: () => <InteractiveBadgesComponent />,
468
- };
@@ -1,147 +0,0 @@
1
- import {Slot} from '@radix-ui/react-slot';
2
- import {cva, type VariantProps} from 'class-variance-authority';
3
- import {Icon, type IconName} from 'components/icon';
4
- import type {ComponentProps} from 'react';
5
- import {cn} from 'utils/cn';
6
-
7
- export const badgeVariants = cva(
8
- 'inline-flex select-none items-center justify-center font-medium transition-colors shrink-0 leading-20',
9
- {
10
- variants: {
11
- variant: {
12
- neutral:
13
- 'bg-tag-neutral-bg text-tag-neutral-text border border-tag-neutral-border hover:bg-tag-neutral-bg-hover',
14
- info: 'bg-tag-blue-bg text-tag-blue-text border border-tag-blue-border hover:bg-tag-blue-bg-hover',
15
- feature:
16
- 'bg-tag-purple-bg text-tag-purple-text border border-tag-purple-border hover:bg-tag-purple-bg-hover',
17
- success:
18
- 'bg-tag-success-bg text-tag-success-text border border-tag-success-border hover:bg-tag-success-bg-hover',
19
- warning:
20
- 'bg-tag-warning-bg text-tag-warning-text border border-tag-warning-border hover:bg-tag-warning-bg-hover',
21
- error:
22
- 'bg-tag-error-bg text-tag-error-text border border-tag-error-border hover:bg-tag-error-bg-hover',
23
- },
24
- size: {
25
- '2xs': 'h-20 px-6 text-xs gap-4',
26
- xs: 'h-24 px-8 text-xs gap-6',
27
- },
28
- radius: {
29
- default: 'rounded-6',
30
- rounded: 'rounded-full',
31
- },
32
- },
33
- defaultVariants: {
34
- variant: 'neutral',
35
- size: '2xs',
36
- radius: 'default',
37
- },
38
- },
39
- );
40
-
41
- export type BadgeVariant = VariantProps<typeof badgeVariants>['variant'];
42
-
43
- type BaseBadgeProps = ComponentProps<'span'> &
44
- VariantProps<typeof badgeVariants> & {
45
- asChild?: boolean;
46
- };
47
-
48
- type BadgePropsWithLeftClick = BaseBadgeProps & {
49
- iconLeft: IconName;
50
- onIconLeftClick: (e: React.MouseEvent<HTMLButtonElement>) => void;
51
- iconLeftAriaLabel: string;
52
- iconRight?: IconName;
53
- onIconRightClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
54
- iconRightAriaLabel?: string;
55
- };
56
-
57
- type BadgePropsWithRightClick = BaseBadgeProps & {
58
- iconRight: IconName;
59
- onIconRightClick: (e: React.MouseEvent<HTMLButtonElement>) => void;
60
- iconRightAriaLabel: string;
61
- iconLeft?: IconName;
62
- onIconLeftClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
63
- iconLeftAriaLabel?: string;
64
- };
65
-
66
- type BadgePropsWithBothClicks = BaseBadgeProps & {
67
- iconLeft: IconName;
68
- onIconLeftClick: (e: React.MouseEvent<HTMLButtonElement>) => void;
69
- iconLeftAriaLabel: string;
70
- iconRight: IconName;
71
- onIconRightClick: (e: React.MouseEvent<HTMLButtonElement>) => void;
72
- iconRightAriaLabel: string;
73
- };
74
-
75
- type BadgePropsWithoutClicks = BaseBadgeProps & {
76
- iconLeft?: IconName;
77
- iconRight?: IconName;
78
- onIconLeftClick?: never;
79
- onIconRightClick?: never;
80
- iconLeftAriaLabel?: never;
81
- iconRightAriaLabel?: never;
82
- };
83
-
84
- export type BadgeProps =
85
- | BadgePropsWithLeftClick
86
- | BadgePropsWithRightClick
87
- | BadgePropsWithBothClicks
88
- | BadgePropsWithoutClicks;
89
-
90
- export function Badge({
91
- className,
92
- variant,
93
- size,
94
- radius,
95
- asChild = false,
96
- children,
97
- iconLeft,
98
- iconRight,
99
- onIconLeftClick,
100
- onIconRightClick,
101
- iconLeftAriaLabel,
102
- iconRightAriaLabel,
103
- ...props
104
- }: BadgeProps) {
105
- const Comp = asChild ? Slot : 'span';
106
-
107
- const renderIcon = (
108
- iconName: IconName,
109
- position: 'left' | 'right',
110
- onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void,
111
- ariaLabel?: string,
112
- ) => {
113
- const isInteractive = Boolean(onClick);
114
-
115
- if (isInteractive) {
116
- if (!ariaLabel) {
117
- // biome-ignore lint/suspicious/noConsole: Development warning for accessibility
118
- console.warn(
119
- `Badge: Missing aria-label for interactive ${position} icon. Please provide icon${position === 'left' ? 'Left' : 'Right'}AriaLabel prop.`,
120
- );
121
-
122
- return null;
123
- }
124
-
125
- return (
126
- <button
127
- type="button"
128
- onClick={onClick}
129
- className="inline-flex items-center justify-center transition-colors shrink-0 hover:opacity-70 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-blue-500"
130
- aria-label={ariaLabel}
131
- >
132
- <Icon name={iconName} className="size-12" />
133
- </button>
134
- );
135
- }
136
-
137
- return <Icon name={iconName} className="size-12" />;
138
- };
139
-
140
- return (
141
- <Comp className={cn(badgeVariants({variant, size, radius}), className)} {...props}>
142
- {iconLeft && renderIcon(iconLeft, 'left', onIconLeftClick, iconLeftAriaLabel)}
143
- {children}
144
- {iconRight && renderIcon(iconRight, 'right', onIconRightClick, iconRightAriaLabel)}
145
- </Comp>
146
- );
147
- }
@@ -1,43 +0,0 @@
1
- import {Icon, type IconName} from 'components/icon';
2
- import type {ComponentProps} from 'react';
3
- import {cn} from 'utils/cn';
4
-
5
- export type IconBadgeVariant = 'neutral' | 'info' | 'feature' | 'success' | 'primary' | 'error';
6
-
7
- export type IconBadgeProps = ComponentProps<'span'> & {
8
- variant?: IconBadgeVariant;
9
- name?: IconName;
10
- };
11
-
12
- const variantStyles: Record<IconBadgeVariant, string> = {
13
- neutral: 'bg-tag-neutral-bg border-tag-neutral-border',
14
- info: 'bg-tag-blue-bg border-tag-blue-border',
15
- feature: 'bg-tag-purple-bg border-tag-purple-border',
16
- success: 'bg-tag-success-bg border-tag-success-border',
17
- primary: 'bg-tag-warning-bg border-tag-warning-border',
18
- error: 'bg-tag-error-bg border-tag-error-border',
19
- };
20
-
21
- const iconColorStyles: Record<IconBadgeVariant, string> = {
22
- neutral: 'text-tag-neutral-icon',
23
- info: 'text-tag-blue-icon',
24
- feature: 'text-tag-purple-icon',
25
- success: 'text-tag-success-icon',
26
- primary: 'text-tag-warning-icon',
27
- error: 'text-tag-error-icon',
28
- };
29
-
30
- export function IconBadge({className, variant = 'neutral', name, ...props}: IconBadgeProps) {
31
- return (
32
- <span
33
- className={cn(
34
- 'inline-flex size-20 items-center justify-center rounded-6 border',
35
- variantStyles[variant],
36
- className,
37
- )}
38
- {...props}
39
- >
40
- {name && <Icon name={name} className={cn('shrink-0', iconColorStyles[variant])} size={12} />}
41
- </span>
42
- );
43
- }
@@ -1,4 +0,0 @@
1
- export * from './badge';
2
- export * from './icon-badge';
3
- export * from './status-badge';
4
- export * from './user-badge';