@shipfox/react-ui 0.15.0 → 0.17.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 (641) hide show
  1. package/dist/components/button-group/button-group.stories.js +4 -4
  2. package/dist/components/card/card.d.ts +24 -0
  3. package/dist/components/card/card.js +56 -0
  4. package/dist/components/card/card.stories.js +216 -0
  5. package/dist/components/card/index.d.ts +2 -0
  6. package/dist/components/card/index.js +3 -0
  7. package/dist/components/dashboard/components/charts/bar-chart.d.ts +30 -0
  8. package/dist/components/dashboard/components/charts/bar-chart.js +150 -0
  9. package/dist/components/dashboard/components/charts/bar-chart.stories.js +287 -0
  10. package/dist/components/dashboard/components/charts/chart-tooltip.d.ts +14 -0
  11. package/dist/components/dashboard/components/charts/chart-tooltip.js +46 -0
  12. package/dist/components/dashboard/components/charts/colors.d.ts +12 -0
  13. package/dist/components/dashboard/components/charts/colors.js +20 -0
  14. package/dist/components/dashboard/components/charts/index.d.ts +6 -0
  15. package/dist/components/dashboard/components/charts/index.js +7 -0
  16. package/dist/components/dashboard/components/charts/line-chart.d.ts +28 -0
  17. package/dist/components/dashboard/components/charts/line-chart.js +152 -0
  18. package/dist/components/dashboard/components/charts/line-chart.stories.js +257 -0
  19. package/dist/components/dashboard/components/charts/utils.d.ts +13 -0
  20. package/dist/components/dashboard/components/charts/utils.js +18 -0
  21. package/dist/components/dashboard/components/dashboard-alert.d.ts +8 -0
  22. package/dist/components/dashboard/components/dashboard-alert.js +24 -0
  23. package/dist/components/dashboard/components/kpi-card.d.ts +15 -0
  24. package/dist/components/dashboard/components/kpi-card.js +77 -0
  25. package/dist/components/dashboard/components/mobile-sidebar.d.ts +19 -0
  26. package/dist/components/dashboard/components/mobile-sidebar.js +50 -0
  27. package/dist/components/dashboard/components/organization-selector.d.ts +24 -1
  28. package/dist/components/dashboard/components/organization-selector.js +93 -70
  29. package/dist/components/dashboard/components/sidebar.d.ts +24 -0
  30. package/dist/components/dashboard/components/sidebar.js +218 -0
  31. package/dist/components/dashboard/context/dashboard-context.d.ts +70 -0
  32. package/dist/components/dashboard/context/dashboard-context.js +175 -0
  33. package/dist/components/dashboard/context/index.d.ts +8 -0
  34. package/dist/components/dashboard/context/index.js +6 -0
  35. package/dist/components/dashboard/context/types.d.ts +50 -0
  36. package/dist/components/dashboard/context/types.js +7 -0
  37. package/dist/components/dashboard/context/utils.d.ts +28 -0
  38. package/dist/components/dashboard/context/utils.js +53 -0
  39. package/dist/components/dashboard/dashboard.d.ts +27 -1
  40. package/dist/components/dashboard/dashboard.js +76 -36
  41. package/dist/components/dashboard/filters/expression-filter-bar.d.ts +42 -0
  42. package/dist/components/dashboard/filters/expression-filter-bar.js +80 -0
  43. package/dist/components/dashboard/filters/index.d.ts +6 -0
  44. package/dist/components/dashboard/filters/index.js +5 -0
  45. package/dist/components/dashboard/index.d.ts +25 -1
  46. package/dist/components/dashboard/index.js +22 -1
  47. package/dist/components/dashboard/pages/analytics-page.d.ts +20 -0
  48. package/dist/components/dashboard/pages/analytics-page.js +258 -0
  49. package/dist/components/dashboard/pages/index.d.ts +6 -0
  50. package/dist/components/dashboard/pages/index.js +6 -0
  51. package/dist/components/dashboard/pages/jobs-page.d.ts +20 -0
  52. package/dist/components/dashboard/pages/jobs-page.js +56 -0
  53. package/dist/components/dashboard/table/index.d.ts +6 -0
  54. package/dist/components/dashboard/table/index.js +5 -0
  55. package/dist/components/dashboard/table/table-wrapper.d.ts +104 -0
  56. package/dist/components/dashboard/table/table-wrapper.js +93 -0
  57. package/dist/components/dashboard/toolbar/filter-button.d.ts +12 -0
  58. package/dist/components/dashboard/toolbar/filter-button.js +124 -0
  59. package/dist/components/dashboard/toolbar/index.d.ts +13 -0
  60. package/dist/components/dashboard/toolbar/index.js +10 -0
  61. package/dist/components/dashboard/toolbar/page-toolbar.d.ts +75 -0
  62. package/dist/components/dashboard/toolbar/page-toolbar.js +208 -0
  63. package/dist/components/dashboard/toolbar/toolbar-actions.d.ts +52 -0
  64. package/dist/components/dashboard/toolbar/toolbar-actions.js +51 -0
  65. package/dist/components/dashboard/toolbar/toolbar-search.d.ts +21 -0
  66. package/dist/components/dashboard/toolbar/toolbar-search.js +123 -0
  67. package/dist/components/dashboard/toolbar/view-dropdown.d.ts +11 -0
  68. package/dist/components/dashboard/toolbar/view-dropdown.js +113 -0
  69. package/dist/components/empty-state/empty-state.d.ts +10 -0
  70. package/dist/components/empty-state/empty-state.js +40 -0
  71. package/dist/components/empty-state/empty-state.stories.js +74 -0
  72. package/dist/components/empty-state/index.d.ts +2 -0
  73. package/dist/components/empty-state/index.js +3 -0
  74. package/dist/components/index.d.ts +4 -0
  75. package/dist/components/index.js +4 -0
  76. package/dist/components/modal/modal.js +3 -3
  77. package/dist/components/search/search-inline.js +1 -1
  78. package/dist/components/search/search-modal.js +13 -7
  79. package/dist/components/select/select.d.ts +3 -1
  80. package/dist/components/select/select.js +2 -1
  81. package/dist/components/sheet/index.d.ts +2 -0
  82. package/dist/components/sheet/index.js +3 -0
  83. package/dist/components/sheet/sheet.d.ts +33 -0
  84. package/dist/components/sheet/sheet.js +163 -0
  85. package/dist/components/sheet/sheet.stories.js +368 -0
  86. package/dist/components/table/data-table.d.ts +19 -2
  87. package/dist/components/table/data-table.js +89 -72
  88. package/dist/components/table/table.js +1 -1
  89. package/dist/components/table/table.stories.components.js +6 -28
  90. package/dist/styles.css +1 -1
  91. package/package.json +12 -4
  92. package/.storybook/main.ts +0 -35
  93. package/.storybook/preview.tsx +0 -66
  94. package/.storybook/vitest.setup.ts +0 -4
  95. package/.turbo/turbo-build.log +0 -19
  96. package/.turbo/turbo-check.log +0 -6
  97. package/.turbo/turbo-type.log +0 -5
  98. package/CHANGELOG.md +0 -114
  99. package/argos.config.ts +0 -33
  100. package/dist/build-css-entry.js.map +0 -1
  101. package/dist/colors.stories.conts.d.ts.map +0 -1
  102. package/dist/colors.stories.conts.js.map +0 -1
  103. package/dist/colors.stories.js.map +0 -1
  104. package/dist/components/alert/alert.d.ts.map +0 -1
  105. package/dist/components/alert/alert.js.map +0 -1
  106. package/dist/components/alert/alert.stories.js.map +0 -1
  107. package/dist/components/alert/index.d.ts.map +0 -1
  108. package/dist/components/alert/index.js.map +0 -1
  109. package/dist/components/avatar/avatar-group.d.ts.map +0 -1
  110. package/dist/components/avatar/avatar-group.js.map +0 -1
  111. package/dist/components/avatar/avatar.d.ts.map +0 -1
  112. package/dist/components/avatar/avatar.js.map +0 -1
  113. package/dist/components/avatar/avatar.stories.js.map +0 -1
  114. package/dist/components/avatar/index.d.ts.map +0 -1
  115. package/dist/components/avatar/index.js.map +0 -1
  116. package/dist/components/badge/badge.d.ts.map +0 -1
  117. package/dist/components/badge/badge.js.map +0 -1
  118. package/dist/components/badge/badge.stories.js.map +0 -1
  119. package/dist/components/badge/icon-badge.d.ts.map +0 -1
  120. package/dist/components/badge/icon-badge.js.map +0 -1
  121. package/dist/components/badge/index.d.ts.map +0 -1
  122. package/dist/components/badge/index.js.map +0 -1
  123. package/dist/components/badge/status-badge.d.ts.map +0 -1
  124. package/dist/components/badge/status-badge.js.map +0 -1
  125. package/dist/components/badge/user-badge.d.ts.map +0 -1
  126. package/dist/components/badge/user-badge.js.map +0 -1
  127. package/dist/components/button/button-link.d.ts.map +0 -1
  128. package/dist/components/button/button-link.js.map +0 -1
  129. package/dist/components/button/button-link.stories.js.map +0 -1
  130. package/dist/components/button/button.d.ts.map +0 -1
  131. package/dist/components/button/button.js.map +0 -1
  132. package/dist/components/button/button.stories.js.map +0 -1
  133. package/dist/components/button/icon-button.d.ts.map +0 -1
  134. package/dist/components/button/icon-button.js.map +0 -1
  135. package/dist/components/button/icon-button.stories.js.map +0 -1
  136. package/dist/components/button/index.d.ts.map +0 -1
  137. package/dist/components/button/index.js.map +0 -1
  138. package/dist/components/button-group/button-group.d.ts.map +0 -1
  139. package/dist/components/button-group/button-group.js.map +0 -1
  140. package/dist/components/button-group/button-group.stories.js.map +0 -1
  141. package/dist/components/button-group/index.d.ts.map +0 -1
  142. package/dist/components/button-group/index.js.map +0 -1
  143. package/dist/components/calendar/calendar.d.ts.map +0 -1
  144. package/dist/components/calendar/calendar.js.map +0 -1
  145. package/dist/components/calendar/index.d.ts.map +0 -1
  146. package/dist/components/calendar/index.js.map +0 -1
  147. package/dist/components/checkbox/checkbox-label.d.ts.map +0 -1
  148. package/dist/components/checkbox/checkbox-label.js.map +0 -1
  149. package/dist/components/checkbox/checkbox-links.d.ts.map +0 -1
  150. package/dist/components/checkbox/checkbox-links.js.map +0 -1
  151. package/dist/components/checkbox/checkbox.d.ts.map +0 -1
  152. package/dist/components/checkbox/checkbox.js.map +0 -1
  153. package/dist/components/checkbox/checkbox.stories.js.map +0 -1
  154. package/dist/components/checkbox/index.d.ts.map +0 -1
  155. package/dist/components/checkbox/index.js.map +0 -1
  156. package/dist/components/code-block/code-block-footer.d.ts.map +0 -1
  157. package/dist/components/code-block/code-block-footer.js.map +0 -1
  158. package/dist/components/code-block/code-block.d.ts.map +0 -1
  159. package/dist/components/code-block/code-block.js.map +0 -1
  160. package/dist/components/code-block/code-block.stories.js.map +0 -1
  161. package/dist/components/code-block/code-content.d.ts.map +0 -1
  162. package/dist/components/code-block/code-content.js.map +0 -1
  163. package/dist/components/code-block/code-copy-button.d.ts.map +0 -1
  164. package/dist/components/code-block/code-copy-button.js.map +0 -1
  165. package/dist/components/code-block/code-tabs.d.ts.map +0 -1
  166. package/dist/components/code-block/code-tabs.js.map +0 -1
  167. package/dist/components/code-block/index.d.ts.map +0 -1
  168. package/dist/components/code-block/index.js.map +0 -1
  169. package/dist/components/command/command.d.ts.map +0 -1
  170. package/dist/components/command/command.js.map +0 -1
  171. package/dist/components/command/command.stories.js.map +0 -1
  172. package/dist/components/command/index.d.ts.map +0 -1
  173. package/dist/components/command/index.js.map +0 -1
  174. package/dist/components/confetti/confetti.d.ts.map +0 -1
  175. package/dist/components/confetti/confetti.js.map +0 -1
  176. package/dist/components/confetti/confetti.stories.js.map +0 -1
  177. package/dist/components/confetti/index.d.ts.map +0 -1
  178. package/dist/components/confetti/index.js.map +0 -1
  179. package/dist/components/dashboard/components/analytics-content.d.ts +0 -2
  180. package/dist/components/dashboard/components/analytics-content.d.ts.map +0 -1
  181. package/dist/components/dashboard/components/analytics-content.js +0 -180
  182. package/dist/components/dashboard/components/analytics-content.js.map +0 -1
  183. package/dist/components/dashboard/components/animated-logo.d.ts.map +0 -1
  184. package/dist/components/dashboard/components/animated-logo.js.map +0 -1
  185. package/dist/components/dashboard/components/complete-setup-button.d.ts.map +0 -1
  186. package/dist/components/dashboard/components/complete-setup-button.js.map +0 -1
  187. package/dist/components/dashboard/components/jobs-content.d.ts +0 -2
  188. package/dist/components/dashboard/components/jobs-content.d.ts.map +0 -1
  189. package/dist/components/dashboard/components/jobs-content.js +0 -69
  190. package/dist/components/dashboard/components/jobs-content.js.map +0 -1
  191. package/dist/components/dashboard/components/mobile-menu.d.ts.map +0 -1
  192. package/dist/components/dashboard/components/mobile-menu.js.map +0 -1
  193. package/dist/components/dashboard/components/organization-selector.d.ts.map +0 -1
  194. package/dist/components/dashboard/components/organization-selector.js.map +0 -1
  195. package/dist/components/dashboard/components/top-menu.d.ts.map +0 -1
  196. package/dist/components/dashboard/components/top-menu.js.map +0 -1
  197. package/dist/components/dashboard/components/topbar-button.d.ts.map +0 -1
  198. package/dist/components/dashboard/components/topbar-button.js.map +0 -1
  199. package/dist/components/dashboard/components/topbar.d.ts.map +0 -1
  200. package/dist/components/dashboard/components/topbar.js.map +0 -1
  201. package/dist/components/dashboard/components/user-profile.d.ts.map +0 -1
  202. package/dist/components/dashboard/components/user-profile.js.map +0 -1
  203. package/dist/components/dashboard/dashboard.d.ts.map +0 -1
  204. package/dist/components/dashboard/dashboard.js.map +0 -1
  205. package/dist/components/dashboard/dashboard.stories.js.map +0 -1
  206. package/dist/components/dashboard/index.d.ts.map +0 -1
  207. package/dist/components/dashboard/index.js.map +0 -1
  208. package/dist/components/date-picker/date-picker.d.ts.map +0 -1
  209. package/dist/components/date-picker/date-picker.js.map +0 -1
  210. package/dist/components/date-picker/date-picker.stories.js.map +0 -1
  211. package/dist/components/date-picker/index.d.ts.map +0 -1
  212. package/dist/components/date-picker/index.js.map +0 -1
  213. package/dist/components/date-time-range-picker/date-time-range-picker.d.ts.map +0 -1
  214. package/dist/components/date-time-range-picker/date-time-range-picker.js.map +0 -1
  215. package/dist/components/date-time-range-picker/index.d.ts.map +0 -1
  216. package/dist/components/date-time-range-picker/index.js.map +0 -1
  217. package/dist/components/dot-grid/dot-grid.d.ts.map +0 -1
  218. package/dist/components/dot-grid/dot-grid.js.map +0 -1
  219. package/dist/components/dot-grid/index.d.ts.map +0 -1
  220. package/dist/components/dot-grid/index.js.map +0 -1
  221. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +0 -1
  222. package/dist/components/dropdown-menu/dropdown-menu.js.map +0 -1
  223. package/dist/components/dropdown-menu/dropdown-menu.stories.js.map +0 -1
  224. package/dist/components/dropdown-menu/index.d.ts.map +0 -1
  225. package/dist/components/dropdown-menu/index.js.map +0 -1
  226. package/dist/components/dynamic-item/dynamic-item.d.ts.map +0 -1
  227. package/dist/components/dynamic-item/dynamic-item.js.map +0 -1
  228. package/dist/components/dynamic-item/dynamic-item.stories.js.map +0 -1
  229. package/dist/components/dynamic-item/index.d.ts.map +0 -1
  230. package/dist/components/dynamic-item/index.js.map +0 -1
  231. package/dist/components/form/form.d.ts.map +0 -1
  232. package/dist/components/form/form.js.map +0 -1
  233. package/dist/components/form/form.stories.js.map +0 -1
  234. package/dist/components/form/index.d.ts.map +0 -1
  235. package/dist/components/form/index.js.map +0 -1
  236. package/dist/components/icon/custom/badge.d.ts.map +0 -1
  237. package/dist/components/icon/custom/badge.js.map +0 -1
  238. package/dist/components/icon/custom/check-circle-solid.d.ts.map +0 -1
  239. package/dist/components/icon/custom/check-circle-solid.js.map +0 -1
  240. package/dist/components/icon/custom/circle-dotted-line.d.ts.map +0 -1
  241. package/dist/components/icon/custom/circle-dotted-line.js.map +0 -1
  242. package/dist/components/icon/custom/component-fill.d.ts.map +0 -1
  243. package/dist/components/icon/custom/component-fill.js.map +0 -1
  244. package/dist/components/icon/custom/component-line.d.ts.map +0 -1
  245. package/dist/components/icon/custom/component-line.js.map +0 -1
  246. package/dist/components/icon/custom/ellipse-mini-solid.d.ts.map +0 -1
  247. package/dist/components/icon/custom/ellipse-mini-solid.js.map +0 -1
  248. package/dist/components/icon/custom/index.d.ts.map +0 -1
  249. package/dist/components/icon/custom/index.js.map +0 -1
  250. package/dist/components/icon/custom/info-tooltip-fill.d.ts.map +0 -1
  251. package/dist/components/icon/custom/info-tooltip-fill.js.map +0 -1
  252. package/dist/components/icon/custom/resize.d.ts.map +0 -1
  253. package/dist/components/icon/custom/resize.js.map +0 -1
  254. package/dist/components/icon/custom/shipfox-logo.d.ts.map +0 -1
  255. package/dist/components/icon/custom/shipfox-logo.js.map +0 -1
  256. package/dist/components/icon/custom/slack-logo.d.ts.map +0 -1
  257. package/dist/components/icon/custom/slack-logo.js.map +0 -1
  258. package/dist/components/icon/custom/spinner.d.ts.map +0 -1
  259. package/dist/components/icon/custom/spinner.js.map +0 -1
  260. package/dist/components/icon/custom/stripe-logo.d.ts.map +0 -1
  261. package/dist/components/icon/custom/stripe-logo.js.map +0 -1
  262. package/dist/components/icon/custom/thunder.d.ts.map +0 -1
  263. package/dist/components/icon/custom/thunder.js.map +0 -1
  264. package/dist/components/icon/custom/x-circle-solid.d.ts.map +0 -1
  265. package/dist/components/icon/custom/x-circle-solid.js.map +0 -1
  266. package/dist/components/icon/icon.d.ts.map +0 -1
  267. package/dist/components/icon/icon.js.map +0 -1
  268. package/dist/components/icon/icon.stories.js.map +0 -1
  269. package/dist/components/icon/index.d.ts.map +0 -1
  270. package/dist/components/icon/index.js.map +0 -1
  271. package/dist/components/icon/remixicon-registry.d.ts.map +0 -1
  272. package/dist/components/icon/remixicon-registry.js.map +0 -1
  273. package/dist/components/index.d.ts.map +0 -1
  274. package/dist/components/index.js.map +0 -1
  275. package/dist/components/inline-tips/index.d.ts.map +0 -1
  276. package/dist/components/inline-tips/index.js.map +0 -1
  277. package/dist/components/inline-tips/inline-tips.d.ts.map +0 -1
  278. package/dist/components/inline-tips/inline-tips.js.map +0 -1
  279. package/dist/components/inline-tips/inline-tips.stories.js.map +0 -1
  280. package/dist/components/input/index.d.ts.map +0 -1
  281. package/dist/components/input/index.js.map +0 -1
  282. package/dist/components/input/input.d.ts.map +0 -1
  283. package/dist/components/input/input.js.map +0 -1
  284. package/dist/components/input/input.stories.js.map +0 -1
  285. package/dist/components/item/index.d.ts.map +0 -1
  286. package/dist/components/item/index.js.map +0 -1
  287. package/dist/components/item/item.d.ts.map +0 -1
  288. package/dist/components/item/item.js.map +0 -1
  289. package/dist/components/item/item.stories.js.map +0 -1
  290. package/dist/components/kbd/index.d.ts.map +0 -1
  291. package/dist/components/kbd/index.js.map +0 -1
  292. package/dist/components/kbd/kbd.d.ts.map +0 -1
  293. package/dist/components/kbd/kbd.js.map +0 -1
  294. package/dist/components/kbd/kbd.stories.js.map +0 -1
  295. package/dist/components/label/index.d.ts.map +0 -1
  296. package/dist/components/label/index.js.map +0 -1
  297. package/dist/components/label/label.d.ts.map +0 -1
  298. package/dist/components/label/label.js.map +0 -1
  299. package/dist/components/label/label.stories.js.map +0 -1
  300. package/dist/components/modal/index.d.ts.map +0 -1
  301. package/dist/components/modal/index.js.map +0 -1
  302. package/dist/components/modal/modal.d.ts.map +0 -1
  303. package/dist/components/modal/modal.js.map +0 -1
  304. package/dist/components/modal/modal.stories.js.map +0 -1
  305. package/dist/components/moving-border/index.d.ts.map +0 -1
  306. package/dist/components/moving-border/index.js.map +0 -1
  307. package/dist/components/moving-border/moving-border.d.ts.map +0 -1
  308. package/dist/components/moving-border/moving-border.js.map +0 -1
  309. package/dist/components/popover/index.d.ts.map +0 -1
  310. package/dist/components/popover/index.js.map +0 -1
  311. package/dist/components/popover/popover.d.ts.map +0 -1
  312. package/dist/components/popover/popover.js.map +0 -1
  313. package/dist/components/search/index.d.ts.map +0 -1
  314. package/dist/components/search/index.js.map +0 -1
  315. package/dist/components/search/search-context.d.ts.map +0 -1
  316. package/dist/components/search/search-context.js.map +0 -1
  317. package/dist/components/search/search-inline.d.ts.map +0 -1
  318. package/dist/components/search/search-inline.js.map +0 -1
  319. package/dist/components/search/search-modal.d.ts.map +0 -1
  320. package/dist/components/search/search-modal.js.map +0 -1
  321. package/dist/components/search/search-trigger.d.ts.map +0 -1
  322. package/dist/components/search/search-trigger.js.map +0 -1
  323. package/dist/components/search/search-variants.d.ts.map +0 -1
  324. package/dist/components/search/search-variants.js.map +0 -1
  325. package/dist/components/search/search.d.ts.map +0 -1
  326. package/dist/components/search/search.js.map +0 -1
  327. package/dist/components/search/search.stories.js.map +0 -1
  328. package/dist/components/select/index.d.ts.map +0 -1
  329. package/dist/components/select/index.js.map +0 -1
  330. package/dist/components/select/select.d.ts.map +0 -1
  331. package/dist/components/select/select.js.map +0 -1
  332. package/dist/components/select/select.stories.js.map +0 -1
  333. package/dist/components/shiny-text/index.d.ts.map +0 -1
  334. package/dist/components/shiny-text/index.js.map +0 -1
  335. package/dist/components/shiny-text/shiny-text.d.ts.map +0 -1
  336. package/dist/components/shiny-text/shiny-text.js.map +0 -1
  337. package/dist/components/skeleton/index.d.ts.map +0 -1
  338. package/dist/components/skeleton/index.js.map +0 -1
  339. package/dist/components/skeleton/skeleton.d.ts.map +0 -1
  340. package/dist/components/skeleton/skeleton.js.map +0 -1
  341. package/dist/components/skeleton/skeleton.stories.js.map +0 -1
  342. package/dist/components/table/data-table.d.ts.map +0 -1
  343. package/dist/components/table/data-table.js.map +0 -1
  344. package/dist/components/table/index.d.ts.map +0 -1
  345. package/dist/components/table/index.js.map +0 -1
  346. package/dist/components/table/table-column-header.d.ts.map +0 -1
  347. package/dist/components/table/table-column-header.js.map +0 -1
  348. package/dist/components/table/table-pagination.d.ts.map +0 -1
  349. package/dist/components/table/table-pagination.js.map +0 -1
  350. package/dist/components/table/table.d.ts.map +0 -1
  351. package/dist/components/table/table.js.map +0 -1
  352. package/dist/components/table/table.stories.columns.d.ts.map +0 -1
  353. package/dist/components/table/table.stories.columns.js.map +0 -1
  354. package/dist/components/table/table.stories.components.d.ts.map +0 -1
  355. package/dist/components/table/table.stories.components.js.map +0 -1
  356. package/dist/components/table/table.stories.data.d.ts.map +0 -1
  357. package/dist/components/table/table.stories.data.js.map +0 -1
  358. package/dist/components/table/table.stories.js.map +0 -1
  359. package/dist/components/tabs/index.d.ts.map +0 -1
  360. package/dist/components/tabs/index.js.map +0 -1
  361. package/dist/components/tabs/tabs.d.ts.map +0 -1
  362. package/dist/components/tabs/tabs.js.map +0 -1
  363. package/dist/components/tabs/tabs.stories.js.map +0 -1
  364. package/dist/components/textarea/index.d.ts.map +0 -1
  365. package/dist/components/textarea/index.js.map +0 -1
  366. package/dist/components/textarea/textarea.d.ts.map +0 -1
  367. package/dist/components/textarea/textarea.js.map +0 -1
  368. package/dist/components/textarea/textarea.stories.js.map +0 -1
  369. package/dist/components/theme/index.d.ts.map +0 -1
  370. package/dist/components/theme/index.js.map +0 -1
  371. package/dist/components/theme/theme-provider.d.ts.map +0 -1
  372. package/dist/components/theme/theme-provider.js.map +0 -1
  373. package/dist/components/toast/index.d.ts.map +0 -1
  374. package/dist/components/toast/index.js.map +0 -1
  375. package/dist/components/toast/toast-custom.d.ts.map +0 -1
  376. package/dist/components/toast/toast-custom.js.map +0 -1
  377. package/dist/components/toast/toast.d.ts.map +0 -1
  378. package/dist/components/toast/toast.js.map +0 -1
  379. package/dist/components/toast/toast.stories.js.map +0 -1
  380. package/dist/components/tooltip/index.d.ts.map +0 -1
  381. package/dist/components/tooltip/index.js.map +0 -1
  382. package/dist/components/tooltip/tooltip.d.ts.map +0 -1
  383. package/dist/components/tooltip/tooltip.js.map +0 -1
  384. package/dist/components/tooltip/tooltip.stories.js.map +0 -1
  385. package/dist/components/typography/code.d.ts.map +0 -1
  386. package/dist/components/typography/code.js.map +0 -1
  387. package/dist/components/typography/code.stories.js.map +0 -1
  388. package/dist/components/typography/header.d.ts.map +0 -1
  389. package/dist/components/typography/header.js.map +0 -1
  390. package/dist/components/typography/header.stories.js.map +0 -1
  391. package/dist/components/typography/index.d.ts.map +0 -1
  392. package/dist/components/typography/index.js.map +0 -1
  393. package/dist/components/typography/text.d.ts.map +0 -1
  394. package/dist/components/typography/text.js.map +0 -1
  395. package/dist/components/typography/text.stories.js.map +0 -1
  396. package/dist/hooks/index.d.ts.map +0 -1
  397. package/dist/hooks/index.js.map +0 -1
  398. package/dist/hooks/useCopy.d.ts.map +0 -1
  399. package/dist/hooks/useCopy.js.map +0 -1
  400. package/dist/hooks/useCopyToClipboard.d.ts.map +0 -1
  401. package/dist/hooks/useCopyToClipboard.js.map +0 -1
  402. package/dist/hooks/useMediaQuery.d.ts.map +0 -1
  403. package/dist/hooks/useMediaQuery.js.map +0 -1
  404. package/dist/hooks/useResolvedTheme.d.ts.map +0 -1
  405. package/dist/hooks/useResolvedTheme.js.map +0 -1
  406. package/dist/hooks/useShikiHighlight.d.ts.map +0 -1
  407. package/dist/hooks/useShikiHighlight.js.map +0 -1
  408. package/dist/hooks/useShikiStyleInjection.d.ts.map +0 -1
  409. package/dist/hooks/useShikiStyleInjection.js.map +0 -1
  410. package/dist/hooks/useTheme.d.ts.map +0 -1
  411. package/dist/hooks/useTheme.js.map +0 -1
  412. package/dist/index.d.ts.map +0 -1
  413. package/dist/index.js.map +0 -1
  414. package/dist/onboarding/sign-in.stories.js.map +0 -1
  415. package/dist/state/theme.d.ts.map +0 -1
  416. package/dist/state/theme.js.map +0 -1
  417. package/dist/utils/avatar.d.ts.map +0 -1
  418. package/dist/utils/avatar.js.map +0 -1
  419. package/dist/utils/clipboard.d.ts.map +0 -1
  420. package/dist/utils/clipboard.js.map +0 -1
  421. package/dist/utils/cn.d.ts.map +0 -1
  422. package/dist/utils/cn.js.map +0 -1
  423. package/dist/utils/date.d.ts.map +0 -1
  424. package/dist/utils/date.js.map +0 -1
  425. package/dist/utils/debounce.d.ts.map +0 -1
  426. package/dist/utils/debounce.js.map +0 -1
  427. package/dist/utils/format/chart.d.ts.map +0 -1
  428. package/dist/utils/format/chart.js.map +0 -1
  429. package/dist/utils/format/date.d.ts.map +0 -1
  430. package/dist/utils/format/date.js.map +0 -1
  431. package/dist/utils/format/duration.d.ts.map +0 -1
  432. package/dist/utils/format/duration.js.map +0 -1
  433. package/dist/utils/format/index.d.ts.map +0 -1
  434. package/dist/utils/format/index.js.map +0 -1
  435. package/dist/utils/format/number.d.ts.map +0 -1
  436. package/dist/utils/format/number.js.map +0 -1
  437. package/dist/utils/index.d.ts.map +0 -1
  438. package/dist/utils/index.js.map +0 -1
  439. package/index.css +0 -1018
  440. package/src/assets/illustration-1.svg +0 -92
  441. package/src/assets/illustration-2.svg +0 -14
  442. package/src/assets/illustration-gradient.svg +0 -7049
  443. package/src/build-css-entry.ts +0 -3
  444. package/src/colors.stories.conts.ts +0 -164
  445. package/src/colors.stories.tsx +0 -66
  446. package/src/components/alert/alert.stories.tsx +0 -178
  447. package/src/components/alert/alert.tsx +0 -291
  448. package/src/components/alert/index.ts +0 -1
  449. package/src/components/avatar/avatar-group.tsx +0 -186
  450. package/src/components/avatar/avatar.stories.tsx +0 -179
  451. package/src/components/avatar/avatar.tsx +0 -219
  452. package/src/components/avatar/index.ts +0 -2
  453. package/src/components/badge/badge.stories.tsx +0 -468
  454. package/src/components/badge/badge.tsx +0 -147
  455. package/src/components/badge/icon-badge.tsx +0 -43
  456. package/src/components/badge/index.ts +0 -4
  457. package/src/components/badge/status-badge.tsx +0 -43
  458. package/src/components/badge/user-badge.tsx +0 -34
  459. package/src/components/button/button-link.stories.tsx +0 -86
  460. package/src/components/button/button-link.tsx +0 -76
  461. package/src/components/button/button.stories.tsx +0 -138
  462. package/src/components/button/button.tsx +0 -91
  463. package/src/components/button/icon-button.stories.tsx +0 -228
  464. package/src/components/button/icon-button.tsx +0 -95
  465. package/src/components/button/index.ts +0 -3
  466. package/src/components/button-group/button-group.stories.tsx +0 -361
  467. package/src/components/button-group/button-group.tsx +0 -111
  468. package/src/components/button-group/index.ts +0 -1
  469. package/src/components/calendar/calendar.tsx +0 -90
  470. package/src/components/calendar/index.ts +0 -1
  471. package/src/components/checkbox/checkbox-label.tsx +0 -125
  472. package/src/components/checkbox/checkbox-links.tsx +0 -92
  473. package/src/components/checkbox/checkbox.stories.tsx +0 -391
  474. package/src/components/checkbox/checkbox.tsx +0 -71
  475. package/src/components/checkbox/index.ts +0 -3
  476. package/src/components/code-block/code-block-footer.tsx +0 -197
  477. package/src/components/code-block/code-block.stories.tsx +0 -323
  478. package/src/components/code-block/code-block.tsx +0 -283
  479. package/src/components/code-block/code-content.tsx +0 -63
  480. package/src/components/code-block/code-copy-button.tsx +0 -73
  481. package/src/components/code-block/code-tabs.tsx +0 -170
  482. package/src/components/code-block/index.ts +0 -3
  483. package/src/components/command/command.stories.tsx +0 -133
  484. package/src/components/command/command.tsx +0 -265
  485. package/src/components/command/index.ts +0 -1
  486. package/src/components/confetti/confetti.stories.tsx +0 -38
  487. package/src/components/confetti/confetti.tsx +0 -140
  488. package/src/components/confetti/index.ts +0 -1
  489. package/src/components/dashboard/components/analytics-content.tsx +0 -102
  490. package/src/components/dashboard/components/animated-logo.tsx +0 -25
  491. package/src/components/dashboard/components/complete-setup-button.tsx +0 -30
  492. package/src/components/dashboard/components/jobs-content.tsx +0 -51
  493. package/src/components/dashboard/components/mobile-menu.tsx +0 -50
  494. package/src/components/dashboard/components/organization-selector.tsx +0 -51
  495. package/src/components/dashboard/components/top-menu.tsx +0 -26
  496. package/src/components/dashboard/components/topbar-button.tsx +0 -27
  497. package/src/components/dashboard/components/topbar.tsx +0 -40
  498. package/src/components/dashboard/components/user-profile.tsx +0 -90
  499. package/src/components/dashboard/dashboard.stories.tsx +0 -25
  500. package/src/components/dashboard/dashboard.tsx +0 -61
  501. package/src/components/dashboard/index.ts +0 -1
  502. package/src/components/date-picker/date-picker.stories.tsx +0 -230
  503. package/src/components/date-picker/date-picker.tsx +0 -179
  504. package/src/components/date-picker/index.ts +0 -1
  505. package/src/components/date-time-range-picker/date-time-range-picker.tsx +0 -211
  506. package/src/components/date-time-range-picker/index.ts +0 -1
  507. package/src/components/dot-grid/dot-grid.tsx +0 -325
  508. package/src/components/dot-grid/index.ts +0 -1
  509. package/src/components/dropdown-menu/dropdown-menu.stories.tsx +0 -384
  510. package/src/components/dropdown-menu/dropdown-menu.tsx +0 -416
  511. package/src/components/dropdown-menu/index.ts +0 -1
  512. package/src/components/dynamic-item/dynamic-item.stories.tsx +0 -266
  513. package/src/components/dynamic-item/dynamic-item.tsx +0 -74
  514. package/src/components/dynamic-item/index.ts +0 -1
  515. package/src/components/form/form.stories.tsx +0 -505
  516. package/src/components/form/form.tsx +0 -154
  517. package/src/components/form/index.ts +0 -1
  518. package/src/components/icon/custom/badge.tsx +0 -17
  519. package/src/components/icon/custom/check-circle-solid.tsx +0 -24
  520. package/src/components/icon/custom/circle-dotted-line.tsx +0 -17
  521. package/src/components/icon/custom/component-fill.tsx +0 -17
  522. package/src/components/icon/custom/component-line.tsx +0 -17
  523. package/src/components/icon/custom/ellipse-mini-solid.tsx +0 -17
  524. package/src/components/icon/custom/index.ts +0 -14
  525. package/src/components/icon/custom/info-tooltip-fill.tsx +0 -21
  526. package/src/components/icon/custom/resize.tsx +0 -17
  527. package/src/components/icon/custom/shipfox-logo.tsx +0 -20
  528. package/src/components/icon/custom/slack-logo.tsx +0 -35
  529. package/src/components/icon/custom/spinner.tsx +0 -144
  530. package/src/components/icon/custom/stripe-logo.tsx +0 -27
  531. package/src/components/icon/custom/thunder.tsx +0 -17
  532. package/src/components/icon/custom/x-circle-solid.tsx +0 -24
  533. package/src/components/icon/icon.stories.tsx +0 -31
  534. package/src/components/icon/icon.tsx +0 -90
  535. package/src/components/icon/index.ts +0 -1
  536. package/src/components/icon/remixicon-registry.ts +0 -24
  537. package/src/components/index.ts +0 -36
  538. package/src/components/inline-tips/index.ts +0 -1
  539. package/src/components/inline-tips/inline-tips.stories.tsx +0 -131
  540. package/src/components/inline-tips/inline-tips.tsx +0 -132
  541. package/src/components/input/index.ts +0 -1
  542. package/src/components/input/input.stories.tsx +0 -138
  543. package/src/components/input/input.tsx +0 -43
  544. package/src/components/item/index.ts +0 -1
  545. package/src/components/item/item.stories.tsx +0 -159
  546. package/src/components/item/item.tsx +0 -182
  547. package/src/components/kbd/index.ts +0 -1
  548. package/src/components/kbd/kbd.stories.tsx +0 -64
  549. package/src/components/kbd/kbd.tsx +0 -32
  550. package/src/components/label/index.ts +0 -1
  551. package/src/components/label/label.stories.tsx +0 -67
  552. package/src/components/label/label.tsx +0 -15
  553. package/src/components/modal/index.ts +0 -1
  554. package/src/components/modal/modal.stories.tsx +0 -448
  555. package/src/components/modal/modal.tsx +0 -311
  556. package/src/components/moving-border/index.ts +0 -1
  557. package/src/components/moving-border/moving-border.tsx +0 -67
  558. package/src/components/popover/index.ts +0 -1
  559. package/src/components/popover/popover.tsx +0 -60
  560. package/src/components/renovate.json +0 -23
  561. package/src/components/search/index.ts +0 -28
  562. package/src/components/search/search-context.tsx +0 -78
  563. package/src/components/search/search-inline.tsx +0 -107
  564. package/src/components/search/search-modal.tsx +0 -198
  565. package/src/components/search/search-trigger.tsx +0 -47
  566. package/src/components/search/search-variants.ts +0 -88
  567. package/src/components/search/search.stories.tsx +0 -392
  568. package/src/components/search/search.tsx +0 -47
  569. package/src/components/select/index.ts +0 -1
  570. package/src/components/select/select.stories.tsx +0 -207
  571. package/src/components/select/select.tsx +0 -220
  572. package/src/components/shiny-text/index.ts +0 -1
  573. package/src/components/shiny-text/shiny-text.tsx +0 -21
  574. package/src/components/skeleton/index.ts +0 -1
  575. package/src/components/skeleton/skeleton.stories.tsx +0 -178
  576. package/src/components/skeleton/skeleton.tsx +0 -14
  577. package/src/components/table/data-table.tsx +0 -254
  578. package/src/components/table/index.ts +0 -5
  579. package/src/components/table/table-column-header.tsx +0 -141
  580. package/src/components/table/table-pagination.tsx +0 -161
  581. package/src/components/table/table.stories.columns.tsx +0 -198
  582. package/src/components/table/table.stories.components.tsx +0 -104
  583. package/src/components/table/table.stories.data.ts +0 -117
  584. package/src/components/table/table.stories.tsx +0 -256
  585. package/src/components/table/table.tsx +0 -95
  586. package/src/components/tabs/index.ts +0 -1
  587. package/src/components/tabs/tabs.stories.tsx +0 -100
  588. package/src/components/tabs/tabs.tsx +0 -380
  589. package/src/components/textarea/index.ts +0 -1
  590. package/src/components/textarea/textarea.stories.tsx +0 -196
  591. package/src/components/textarea/textarea.tsx +0 -42
  592. package/src/components/theme/index.ts +0 -1
  593. package/src/components/theme/theme-provider.tsx +0 -50
  594. package/src/components/toast/index.ts +0 -2
  595. package/src/components/toast/toast-custom.tsx +0 -154
  596. package/src/components/toast/toast.stories.tsx +0 -369
  597. package/src/components/toast/toast.tsx +0 -41
  598. package/src/components/tooltip/index.ts +0 -1
  599. package/src/components/tooltip/tooltip.stories.tsx +0 -284
  600. package/src/components/tooltip/tooltip.tsx +0 -121
  601. package/src/components/typography/code.stories.tsx +0 -36
  602. package/src/components/typography/code.tsx +0 -38
  603. package/src/components/typography/header.stories.tsx +0 -27
  604. package/src/components/typography/header.tsx +0 -41
  605. package/src/components/typography/index.ts +0 -3
  606. package/src/components/typography/text.stories.tsx +0 -67
  607. package/src/components/typography/text.tsx +0 -50
  608. package/src/hooks/index.ts +0 -6
  609. package/src/hooks/useCopy.ts +0 -0
  610. package/src/hooks/useCopyToClipboard.ts +0 -20
  611. package/src/hooks/useMediaQuery.ts +0 -87
  612. package/src/hooks/useResolvedTheme.ts +0 -34
  613. package/src/hooks/useShikiHighlight.ts +0 -140
  614. package/src/hooks/useShikiStyleInjection.ts +0 -34
  615. package/src/hooks/useTheme.ts +0 -10
  616. package/src/index.ts +0 -4
  617. package/src/onboarding/sign-in.stories.tsx +0 -85
  618. package/src/state/theme.ts +0 -15
  619. package/src/utils/avatar.ts +0 -27
  620. package/src/utils/clipboard.ts +0 -4
  621. package/src/utils/cn.ts +0 -6
  622. package/src/utils/date.test.ts +0 -119
  623. package/src/utils/date.ts +0 -99
  624. package/src/utils/debounce.ts +0 -15
  625. package/src/utils/format/chart.ts +0 -16
  626. package/src/utils/format/date.test.ts +0 -65
  627. package/src/utils/format/date.ts +0 -75
  628. package/src/utils/format/duration.test.ts +0 -58
  629. package/src/utils/format/duration.ts +0 -82
  630. package/src/utils/format/index.ts +0 -4
  631. package/src/utils/format/number.test.ts +0 -38
  632. package/src/utils/format/number.ts +0 -33
  633. package/src/utils/index.ts +0 -6
  634. package/test/global.ts +0 -3
  635. package/test/setup.ts +0 -9
  636. package/tsconfig.build.json +0 -19
  637. package/tsconfig.json +0 -11
  638. package/tsconfig.test.json +0 -12
  639. package/vercel.json +0 -8
  640. package/vite.css.config.ts +0 -30
  641. 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';