@gv-tech/design-system 0.9.0 → 1.1.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 (425) hide show
  1. package/.github/workflows/ci.yml +3 -12
  2. package/.github/workflows/release-please.yml +2 -2
  3. package/.vscode/mcp.json +8 -0
  4. package/CHANGELOG.md +32 -0
  5. package/components.json +20 -0
  6. package/dist/App.d.ts +3 -0
  7. package/dist/App.d.ts.map +1 -0
  8. package/dist/components/docs/CodeBlock.d.ts +8 -0
  9. package/dist/components/docs/CodeBlock.d.ts.map +1 -0
  10. package/dist/components/docs/ComponentShowcase.d.ts +17 -0
  11. package/dist/components/docs/ComponentShowcase.d.ts.map +1 -0
  12. package/dist/components/docs/Footer.d.ts +2 -0
  13. package/dist/components/docs/Footer.d.ts.map +1 -0
  14. package/dist/components/docs/Sidebar.d.ts +14 -0
  15. package/dist/components/docs/Sidebar.d.ts.map +1 -0
  16. package/dist/components/docs/ThemeToggle.d.ts +2 -0
  17. package/dist/components/docs/ThemeToggle.d.ts.map +1 -0
  18. package/dist/components/docs/index.d.ts +6 -0
  19. package/dist/components/docs/index.d.ts.map +1 -0
  20. package/dist/components/ui/accordion.d.ts +8 -0
  21. package/dist/components/ui/accordion.d.ts.map +1 -0
  22. package/dist/components/ui/alert-dialog.d.ts +21 -0
  23. package/dist/components/ui/alert-dialog.d.ts.map +1 -0
  24. package/dist/components/ui/alert.d.ts +9 -0
  25. package/dist/components/ui/alert.d.ts.map +1 -0
  26. package/dist/components/ui/aspect-ratio.d.ts +4 -0
  27. package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
  28. package/dist/components/ui/avatar.d.ts +7 -0
  29. package/dist/components/ui/avatar.d.ts.map +1 -0
  30. package/dist/components/ui/badge.d.ts +10 -0
  31. package/dist/components/ui/badge.d.ts.map +1 -0
  32. package/dist/components/ui/breadcrumb.d.ts +20 -0
  33. package/dist/components/ui/breadcrumb.d.ts.map +1 -0
  34. package/dist/components/ui/button.d.ts +12 -0
  35. package/dist/components/ui/button.d.ts.map +1 -0
  36. package/dist/components/ui/calendar.d.ts +9 -0
  37. package/dist/components/ui/calendar.d.ts.map +1 -0
  38. package/dist/components/ui/card.d.ts +9 -0
  39. package/dist/components/ui/card.d.ts.map +1 -0
  40. package/dist/components/ui/carousel.d.ts +19 -0
  41. package/dist/components/ui/carousel.d.ts.map +1 -0
  42. package/dist/components/ui/chart.d.ts +63 -0
  43. package/dist/components/ui/chart.d.ts.map +1 -0
  44. package/dist/components/ui/checkbox.d.ts +5 -0
  45. package/dist/components/ui/checkbox.d.ts.map +1 -0
  46. package/dist/components/ui/collapsible.d.ts +6 -0
  47. package/dist/components/ui/collapsible.d.ts.map +1 -0
  48. package/dist/components/ui/command.d.ts +81 -0
  49. package/dist/components/ui/command.d.ts.map +1 -0
  50. package/dist/components/ui/context-menu.d.ts +28 -0
  51. package/dist/components/ui/context-menu.d.ts.map +1 -0
  52. package/dist/components/ui/dialog.d.ts +20 -0
  53. package/dist/components/ui/dialog.d.ts.map +1 -0
  54. package/dist/components/ui/drawer.d.ts +23 -0
  55. package/dist/components/ui/drawer.d.ts.map +1 -0
  56. package/dist/components/ui/dropdown-menu.d.ts +28 -0
  57. package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
  58. package/dist/components/ui/form.d.ts +24 -0
  59. package/dist/components/ui/form.d.ts.map +1 -0
  60. package/dist/components/ui/hover-card.d.ts +7 -0
  61. package/dist/components/ui/hover-card.d.ts.map +1 -0
  62. package/dist/components/ui/input.d.ts +4 -0
  63. package/dist/components/ui/input.d.ts.map +1 -0
  64. package/dist/components/ui/label.d.ts +6 -0
  65. package/dist/components/ui/label.d.ts.map +1 -0
  66. package/dist/components/ui/menubar.d.ts +29 -0
  67. package/dist/components/ui/menubar.d.ts.map +1 -0
  68. package/dist/components/ui/navigation-menu.d.ts +13 -0
  69. package/dist/components/ui/navigation-menu.d.ts.map +1 -0
  70. package/dist/components/ui/pagination.d.ts +29 -0
  71. package/dist/components/ui/pagination.d.ts.map +1 -0
  72. package/dist/components/ui/popover.d.ts +8 -0
  73. package/dist/components/ui/popover.d.ts.map +1 -0
  74. package/dist/components/ui/progress.d.ts +5 -0
  75. package/dist/components/ui/progress.d.ts.map +1 -0
  76. package/dist/components/ui/radio-group.d.ts +6 -0
  77. package/dist/components/ui/radio-group.d.ts.map +1 -0
  78. package/dist/components/ui/resizable.d.ts +11 -0
  79. package/dist/components/ui/resizable.d.ts.map +1 -0
  80. package/dist/components/ui/scroll-area.d.ts +6 -0
  81. package/dist/components/ui/scroll-area.d.ts.map +1 -0
  82. package/dist/components/ui/select.d.ts +14 -0
  83. package/dist/components/ui/select.d.ts.map +1 -0
  84. package/dist/components/ui/separator.d.ts +5 -0
  85. package/dist/components/ui/separator.d.ts.map +1 -0
  86. package/dist/components/ui/sheet.d.ts +26 -0
  87. package/dist/components/ui/sheet.d.ts.map +1 -0
  88. package/dist/components/ui/skeleton.d.ts +4 -0
  89. package/dist/components/ui/skeleton.d.ts.map +1 -0
  90. package/dist/components/ui/slider.d.ts +5 -0
  91. package/dist/components/ui/slider.d.ts.map +1 -0
  92. package/dist/components/ui/sonner.d.ts +6 -0
  93. package/dist/components/ui/sonner.d.ts.map +1 -0
  94. package/dist/components/ui/switch.d.ts +5 -0
  95. package/dist/components/ui/switch.d.ts.map +1 -0
  96. package/dist/components/ui/table.d.ts +11 -0
  97. package/dist/components/ui/table.d.ts.map +1 -0
  98. package/dist/components/ui/tabs.d.ts +8 -0
  99. package/dist/components/ui/tabs.d.ts.map +1 -0
  100. package/dist/components/ui/textarea.d.ts +4 -0
  101. package/dist/components/ui/textarea.d.ts.map +1 -0
  102. package/dist/components/ui/toast.d.ts +16 -0
  103. package/dist/components/ui/toast.d.ts.map +1 -0
  104. package/dist/components/ui/toaster.d.ts +2 -0
  105. package/dist/components/ui/toaster.d.ts.map +1 -0
  106. package/dist/components/ui/toggle-group.d.ts +13 -0
  107. package/dist/components/ui/toggle-group.d.ts.map +1 -0
  108. package/dist/components/ui/toggle.d.ts +13 -0
  109. package/dist/components/ui/toggle.d.ts.map +1 -0
  110. package/dist/components/ui/tooltip.d.ts +8 -0
  111. package/dist/components/ui/tooltip.d.ts.map +1 -0
  112. package/dist/hooks/use-toast.d.ts +45 -0
  113. package/dist/hooks/use-toast.d.ts.map +1 -0
  114. package/dist/index.cjs.js +8 -0
  115. package/dist/index.cjs.js.map +1 -0
  116. package/dist/index.d.ts +49 -0
  117. package/dist/index.d.ts.map +1 -0
  118. package/dist/index.es.js +2275 -0
  119. package/dist/index.es.js.map +1 -0
  120. package/dist/lib/utils.d.ts +3 -0
  121. package/dist/lib/utils.d.ts.map +1 -0
  122. package/dist/main.d.ts +2 -0
  123. package/dist/main.d.ts.map +1 -0
  124. package/dist/pages/GettingStarted.d.ts +3 -0
  125. package/dist/pages/GettingStarted.d.ts.map +1 -0
  126. package/dist/pages/components/AccordionDocs.d.ts +2 -0
  127. package/dist/pages/components/AccordionDocs.d.ts.map +1 -0
  128. package/dist/pages/components/AlertDialogDocs.d.ts +2 -0
  129. package/dist/pages/components/AlertDialogDocs.d.ts.map +1 -0
  130. package/dist/pages/components/AlertDocs.d.ts +2 -0
  131. package/dist/pages/components/AlertDocs.d.ts.map +1 -0
  132. package/dist/pages/components/AspectRatioDocs.d.ts +2 -0
  133. package/dist/pages/components/AspectRatioDocs.d.ts.map +1 -0
  134. package/dist/pages/components/AvatarDocs.d.ts +2 -0
  135. package/dist/pages/components/AvatarDocs.d.ts.map +1 -0
  136. package/dist/pages/components/BadgeDocs.d.ts +2 -0
  137. package/dist/pages/components/BadgeDocs.d.ts.map +1 -0
  138. package/dist/pages/components/BreadcrumbDocs.d.ts +2 -0
  139. package/dist/pages/components/BreadcrumbDocs.d.ts.map +1 -0
  140. package/dist/pages/components/ButtonDocs.d.ts +2 -0
  141. package/dist/pages/components/ButtonDocs.d.ts.map +1 -0
  142. package/dist/pages/components/CalendarDocs.d.ts +2 -0
  143. package/dist/pages/components/CalendarDocs.d.ts.map +1 -0
  144. package/dist/pages/components/CardDocs.d.ts +2 -0
  145. package/dist/pages/components/CardDocs.d.ts.map +1 -0
  146. package/dist/pages/components/CarouselDocs.d.ts +2 -0
  147. package/dist/pages/components/CarouselDocs.d.ts.map +1 -0
  148. package/dist/pages/components/ChartDocs.d.ts +2 -0
  149. package/dist/pages/components/ChartDocs.d.ts.map +1 -0
  150. package/dist/pages/components/CheckboxDocs.d.ts +2 -0
  151. package/dist/pages/components/CheckboxDocs.d.ts.map +1 -0
  152. package/dist/pages/components/CollapsibleDocs.d.ts +2 -0
  153. package/dist/pages/components/CollapsibleDocs.d.ts.map +1 -0
  154. package/dist/pages/components/CommandDocs.d.ts +2 -0
  155. package/dist/pages/components/CommandDocs.d.ts.map +1 -0
  156. package/dist/pages/components/ContextMenuDocs.d.ts +2 -0
  157. package/dist/pages/components/ContextMenuDocs.d.ts.map +1 -0
  158. package/dist/pages/components/DialogDocs.d.ts +2 -0
  159. package/dist/pages/components/DialogDocs.d.ts.map +1 -0
  160. package/dist/pages/components/DrawerDocs.d.ts +2 -0
  161. package/dist/pages/components/DrawerDocs.d.ts.map +1 -0
  162. package/dist/pages/components/DropdownMenuDocs.d.ts +2 -0
  163. package/dist/pages/components/DropdownMenuDocs.d.ts.map +1 -0
  164. package/dist/pages/components/FormDocs.d.ts +2 -0
  165. package/dist/pages/components/FormDocs.d.ts.map +1 -0
  166. package/dist/pages/components/HoverCardDocs.d.ts +2 -0
  167. package/dist/pages/components/HoverCardDocs.d.ts.map +1 -0
  168. package/dist/pages/components/InputDocs.d.ts +2 -0
  169. package/dist/pages/components/InputDocs.d.ts.map +1 -0
  170. package/dist/pages/components/LabelDocs.d.ts +2 -0
  171. package/dist/pages/components/LabelDocs.d.ts.map +1 -0
  172. package/dist/pages/components/MenubarDocs.d.ts +2 -0
  173. package/dist/pages/components/MenubarDocs.d.ts.map +1 -0
  174. package/dist/pages/components/NavigationMenuDocs.d.ts +2 -0
  175. package/dist/pages/components/NavigationMenuDocs.d.ts.map +1 -0
  176. package/dist/pages/components/PaginationDocs.d.ts +2 -0
  177. package/dist/pages/components/PaginationDocs.d.ts.map +1 -0
  178. package/dist/pages/components/PopoverDocs.d.ts +2 -0
  179. package/dist/pages/components/PopoverDocs.d.ts.map +1 -0
  180. package/dist/pages/components/ProgressDocs.d.ts +2 -0
  181. package/dist/pages/components/ProgressDocs.d.ts.map +1 -0
  182. package/dist/pages/components/RadioGroupDocs.d.ts +2 -0
  183. package/dist/pages/components/RadioGroupDocs.d.ts.map +1 -0
  184. package/dist/pages/components/ResizableDocs.d.ts +2 -0
  185. package/dist/pages/components/ResizableDocs.d.ts.map +1 -0
  186. package/dist/pages/components/ScrollAreaDocs.d.ts +2 -0
  187. package/dist/pages/components/ScrollAreaDocs.d.ts.map +1 -0
  188. package/dist/pages/components/SelectDocs.d.ts +2 -0
  189. package/dist/pages/components/SelectDocs.d.ts.map +1 -0
  190. package/dist/pages/components/SeparatorDocs.d.ts +2 -0
  191. package/dist/pages/components/SeparatorDocs.d.ts.map +1 -0
  192. package/dist/pages/components/SheetDocs.d.ts +2 -0
  193. package/dist/pages/components/SheetDocs.d.ts.map +1 -0
  194. package/dist/pages/components/SkeletonDocs.d.ts +2 -0
  195. package/dist/pages/components/SkeletonDocs.d.ts.map +1 -0
  196. package/dist/pages/components/SliderDocs.d.ts +2 -0
  197. package/dist/pages/components/SliderDocs.d.ts.map +1 -0
  198. package/dist/pages/components/SonnerDocs.d.ts +2 -0
  199. package/dist/pages/components/SonnerDocs.d.ts.map +1 -0
  200. package/dist/pages/components/SwitchDocs.d.ts +2 -0
  201. package/dist/pages/components/SwitchDocs.d.ts.map +1 -0
  202. package/dist/pages/components/TableDocs.d.ts +2 -0
  203. package/dist/pages/components/TableDocs.d.ts.map +1 -0
  204. package/dist/pages/components/TabsDocs.d.ts +2 -0
  205. package/dist/pages/components/TabsDocs.d.ts.map +1 -0
  206. package/dist/pages/components/TextareaDocs.d.ts +2 -0
  207. package/dist/pages/components/TextareaDocs.d.ts.map +1 -0
  208. package/dist/pages/components/ToastDocs.d.ts +2 -0
  209. package/dist/pages/components/ToastDocs.d.ts.map +1 -0
  210. package/dist/pages/components/ToggleDocs.d.ts +2 -0
  211. package/dist/pages/components/ToggleDocs.d.ts.map +1 -0
  212. package/dist/pages/components/ToggleGroupDocs.d.ts +2 -0
  213. package/dist/pages/components/ToggleGroupDocs.d.ts.map +1 -0
  214. package/dist/pages/components/TooltipDocs.d.ts +2 -0
  215. package/dist/pages/components/TooltipDocs.d.ts.map +1 -0
  216. package/dist/pages/index.d.ts +47 -0
  217. package/dist/pages/index.d.ts.map +1 -0
  218. package/dist/registry/accordion.json +13 -0
  219. package/dist/registry/alert-dialog.json +13 -0
  220. package/dist/registry/alert.json +13 -0
  221. package/dist/registry/aspect-ratio.json +13 -0
  222. package/dist/registry/avatar.json +13 -0
  223. package/dist/registry/badge.json +13 -0
  224. package/dist/registry/breadcrumb.json +13 -0
  225. package/dist/registry/button.json +13 -0
  226. package/dist/registry/calendar.json +13 -0
  227. package/dist/registry/card.json +13 -0
  228. package/dist/registry/carousel.json +13 -0
  229. package/dist/registry/chart.json +13 -0
  230. package/dist/registry/checkbox.json +13 -0
  231. package/dist/registry/collapsible.json +13 -0
  232. package/dist/registry/command.json +13 -0
  233. package/dist/registry/context-menu.json +13 -0
  234. package/dist/registry/dialog.json +13 -0
  235. package/dist/registry/drawer.json +13 -0
  236. package/dist/registry/dropdown-menu.json +13 -0
  237. package/dist/registry/form.json +13 -0
  238. package/dist/registry/hover-card.json +13 -0
  239. package/dist/registry/index.json +324 -0
  240. package/dist/registry/input.json +13 -0
  241. package/dist/registry/label.json +13 -0
  242. package/dist/registry/menubar.json +13 -0
  243. package/dist/registry/navigation-menu.json +13 -0
  244. package/dist/registry/pagination.json +13 -0
  245. package/dist/registry/popover.json +13 -0
  246. package/dist/registry/progress.json +13 -0
  247. package/dist/registry/radio-group.json +13 -0
  248. package/dist/registry/resizable.json +13 -0
  249. package/dist/registry/scroll-area.json +13 -0
  250. package/dist/registry/select.json +13 -0
  251. package/dist/registry/separator.json +13 -0
  252. package/dist/registry/sheet.json +13 -0
  253. package/dist/registry/skeleton.json +13 -0
  254. package/dist/registry/slider.json +13 -0
  255. package/dist/registry/sonner.json +13 -0
  256. package/dist/registry/switch.json +13 -0
  257. package/dist/registry/table.json +13 -0
  258. package/dist/registry/tabs.json +13 -0
  259. package/dist/registry/textarea.json +13 -0
  260. package/dist/registry/toast.json +13 -0
  261. package/dist/registry/toaster.json +13 -0
  262. package/dist/registry/toggle-group.json +13 -0
  263. package/dist/registry/toggle.json +13 -0
  264. package/dist/registry/tooltip.json +13 -0
  265. package/dist/vendor-CMSUBoIg.js +73 -0
  266. package/dist/vendor-CMSUBoIg.js.map +1 -0
  267. package/dist/vendor-ZhQmrf1h.mjs +25737 -0
  268. package/dist/vendor-ZhQmrf1h.mjs.map +1 -0
  269. package/eslint.config.mjs +34 -43
  270. package/index.html +13 -0
  271. package/package.json +75 -52
  272. package/postcss.config.mjs +5 -0
  273. package/scripts/build-registry.ts +47 -0
  274. package/scripts/import-all-shadcn.ts +68 -0
  275. package/scripts/validate.js +0 -2
  276. package/src/App.tsx +211 -0
  277. package/src/components/docs/CodeBlock.tsx +34 -0
  278. package/src/components/docs/ComponentShowcase.tsx +68 -0
  279. package/src/components/docs/Footer.tsx +117 -0
  280. package/src/components/docs/Sidebar.tsx +189 -0
  281. package/src/components/docs/ThemeToggle.tsx +19 -0
  282. package/src/components/docs/index.ts +5 -0
  283. package/src/components/ui/accordion.tsx +51 -0
  284. package/src/components/ui/alert-dialog.tsx +104 -0
  285. package/src/components/ui/alert.tsx +43 -0
  286. package/src/components/ui/aspect-ratio.tsx +5 -0
  287. package/src/components/ui/avatar.tsx +38 -0
  288. package/src/components/ui/badge.tsx +29 -0
  289. package/src/components/ui/breadcrumb.tsx +90 -0
  290. package/src/components/ui/button.tsx +46 -0
  291. package/src/components/ui/calendar.tsx +156 -0
  292. package/src/components/ui/card.tsx +43 -0
  293. package/src/components/ui/carousel.tsx +224 -0
  294. package/src/components/ui/chart.tsx +307 -0
  295. package/src/components/ui/checkbox.tsx +26 -0
  296. package/src/components/ui/collapsible.tsx +9 -0
  297. package/src/components/ui/command.tsx +132 -0
  298. package/src/components/ui/context-menu.tsx +178 -0
  299. package/src/components/ui/dialog.tsx +95 -0
  300. package/src/components/ui/drawer.tsx +87 -0
  301. package/src/components/ui/dropdown-menu.tsx +180 -0
  302. package/src/components/ui/form.tsx +149 -0
  303. package/src/components/ui/hover-card.tsx +27 -0
  304. package/src/components/ui/input.tsx +22 -0
  305. package/src/components/ui/label.tsx +17 -0
  306. package/src/components/ui/menubar.tsx +217 -0
  307. package/src/components/ui/navigation-menu.tsx +120 -0
  308. package/src/components/ui/pagination.tsx +81 -0
  309. package/src/components/ui/popover.tsx +31 -0
  310. package/src/components/ui/progress.tsx +23 -0
  311. package/src/components/ui/radio-group.tsx +36 -0
  312. package/src/components/ui/resizable.tsx +45 -0
  313. package/src/components/ui/scroll-area.tsx +38 -0
  314. package/src/components/ui/select.tsx +142 -0
  315. package/src/components/ui/separator.tsx +20 -0
  316. package/src/components/ui/sheet.tsx +106 -0
  317. package/src/components/ui/skeleton.tsx +8 -0
  318. package/src/components/ui/slider.tsx +23 -0
  319. package/src/components/ui/sonner.tsx +28 -0
  320. package/src/components/ui/switch.tsx +27 -0
  321. package/src/components/ui/table.tsx +76 -0
  322. package/src/components/ui/tabs.tsx +53 -0
  323. package/src/components/ui/textarea.tsx +21 -0
  324. package/src/components/ui/toast.tsx +111 -0
  325. package/src/components/ui/toaster.tsx +24 -0
  326. package/src/components/ui/toggle-group.tsx +51 -0
  327. package/src/components/ui/toggle.tsx +37 -0
  328. package/src/components/ui/tooltip.tsx +30 -0
  329. package/src/globals.css +118 -0
  330. package/src/hooks/use-toast.ts +189 -0
  331. package/src/index.ts +50 -11
  332. package/src/lib/utils.ts +6 -0
  333. package/src/main.tsx +10 -0
  334. package/src/pages/GettingStarted.tsx +251 -0
  335. package/src/pages/components/AccordionDocs.tsx +55 -0
  336. package/src/pages/components/AlertDialogDocs.tsx +63 -0
  337. package/src/pages/components/AlertDocs.tsx +45 -0
  338. package/src/pages/components/AspectRatioDocs.tsx +64 -0
  339. package/src/pages/components/AvatarDocs.tsx +34 -0
  340. package/src/pages/components/BadgeDocs.tsx +36 -0
  341. package/src/pages/components/BreadcrumbDocs.tsx +54 -0
  342. package/src/pages/components/ButtonDocs.tsx +77 -0
  343. package/src/pages/components/CalendarDocs.tsx +29 -0
  344. package/src/pages/components/CardDocs.tsx +81 -0
  345. package/src/pages/components/CarouselDocs.tsx +132 -0
  346. package/src/pages/components/ChartDocs.tsx +115 -0
  347. package/src/pages/components/CheckboxDocs.tsx +49 -0
  348. package/src/pages/components/CollapsibleDocs.tsx +52 -0
  349. package/src/pages/components/CommandDocs.tsx +100 -0
  350. package/src/pages/components/ContextMenuDocs.tsx +93 -0
  351. package/src/pages/components/DialogDocs.tsx +80 -0
  352. package/src/pages/components/DrawerDocs.tsx +79 -0
  353. package/src/pages/components/DropdownMenuDocs.tsx +51 -0
  354. package/src/pages/components/FormDocs.tsx +84 -0
  355. package/src/pages/components/HoverCardDocs.tsx +59 -0
  356. package/src/pages/components/InputDocs.tsx +68 -0
  357. package/src/pages/components/LabelDocs.tsx +23 -0
  358. package/src/pages/components/MenubarDocs.tsx +117 -0
  359. package/src/pages/components/NavigationMenuDocs.tsx +156 -0
  360. package/src/pages/components/PaginationDocs.tsx +68 -0
  361. package/src/pages/components/PopoverDocs.tsx +61 -0
  362. package/src/pages/components/ProgressDocs.tsx +34 -0
  363. package/src/pages/components/RadioGroupDocs.tsx +38 -0
  364. package/src/pages/components/ResizableDocs.tsx +110 -0
  365. package/src/pages/components/ScrollAreaDocs.tsx +89 -0
  366. package/src/pages/components/SelectDocs.tsx +87 -0
  367. package/src/pages/components/SeparatorDocs.tsx +44 -0
  368. package/src/pages/components/SheetDocs.tsx +104 -0
  369. package/src/pages/components/SkeletonDocs.tsx +48 -0
  370. package/src/pages/components/SliderDocs.tsx +24 -0
  371. package/src/pages/components/SonnerDocs.tsx +89 -0
  372. package/src/pages/components/SwitchDocs.tsx +31 -0
  373. package/src/pages/components/TableDocs.tsx +64 -0
  374. package/src/pages/components/TabsDocs.tsx +111 -0
  375. package/src/pages/components/TextareaDocs.tsx +54 -0
  376. package/src/pages/components/ToastDocs.tsx +102 -0
  377. package/src/pages/components/ToggleDocs.tsx +59 -0
  378. package/src/pages/components/ToggleGroupDocs.tsx +93 -0
  379. package/src/pages/components/TooltipDocs.tsx +38 -0
  380. package/src/pages/index.ts +49 -0
  381. package/tsconfig.json +8 -4
  382. package/tsconfig.node.json +2 -1
  383. package/vite.config.ts +30 -16
  384. package/wrangler.toml +22 -0
  385. package/.storybook/.preview-head.html +0 -1
  386. package/.storybook/main.ts +0 -38
  387. package/.storybook/preview.tsx +0 -30
  388. package/dist/index.js +0 -647
  389. package/dist/index.js.map +0 -1
  390. package/dist/index.mjs +0 -1053
  391. package/dist/index.mjs.map +0 -1
  392. package/dist/vendor-DXgJBoQh.mjs +0 -265
  393. package/dist/vendor-DXgJBoQh.mjs.map +0 -1
  394. package/dist/vendor-nZSsnGb7.js +0 -7
  395. package/dist/vendor-nZSsnGb7.js.map +0 -1
  396. package/src/Avatar.stories.tsx +0 -67
  397. package/src/Avatar.tsx +0 -174
  398. package/src/Badge.stories.tsx +0 -87
  399. package/src/Badge.tsx +0 -76
  400. package/src/Button.stories.tsx +0 -244
  401. package/src/Button.tsx +0 -384
  402. package/src/Icon.stories.tsx +0 -101
  403. package/src/Icon.tsx +0 -64
  404. package/src/Intro.stories.tsx +0 -20
  405. package/src/Link.stories.tsx +0 -69
  406. package/src/Link.tsx +0 -252
  407. package/src/StoryLinkWrapper.d.ts +0 -1
  408. package/src/StoryLinkWrapper.tsx +0 -33
  409. package/src/__tests__/Avatar.test.tsx +0 -28
  410. package/src/__tests__/Badge.test.tsx +0 -25
  411. package/src/__tests__/Button.test.tsx +0 -38
  412. package/src/__tests__/Icon.test.tsx +0 -26
  413. package/src/__tests__/Link.test.tsx +0 -31
  414. package/src/mdx.d.ts +0 -5
  415. package/src/setupTests.ts +0 -1
  416. package/src/shared/animation.d.ts +0 -18
  417. package/src/shared/animation.js +0 -60
  418. package/src/shared/global.d.ts +0 -12
  419. package/src/shared/global.js +0 -120
  420. package/src/shared/icons.d.ts +0 -34
  421. package/src/shared/icons.js +0 -282
  422. package/src/shared/styles.d.ts +0 -86
  423. package/src/shared/styles.js +0 -98
  424. package/src/test-utils/axe.ts +0 -25
  425. package/src/types.ts +0 -316
@@ -1,87 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import { Meta, StoryObj } from '@storybook/react-vite';
3
-
4
- import { Badge } from './Badge';
5
- import { Icon } from './Icon';
6
-
7
- const meta: Meta<typeof Badge> = {
8
- title: 'Design System/Badge',
9
- component: Badge,
10
- };
11
-
12
- import { expect } from '@storybook/jest';
13
- import { within } from '@storybook/testing-library';
14
-
15
- export default meta;
16
- type Story = StoryObj<typeof meta>;
17
-
18
- export const AllBadges: Story = {
19
- args: {
20
- children: 'Badge',
21
- },
22
- render: (_args) => (
23
- <div>
24
- <Badge status="positive">Positive</Badge>
25
- <Badge status="negative">Negative</Badge>
26
- <Badge status="neutral">Neutral</Badge>
27
- <Badge status="error">Error</Badge>
28
- <Badge status="warning">Warning</Badge>
29
- <Badge status="positive">
30
- <Icon icon="facehappy" inline block={false} />
31
- with icon
32
- </Badge>
33
- </div>
34
- ),
35
- };
36
-
37
- export const Positive: Story = {
38
- render: () => <Badge status="positive">Positive</Badge>,
39
- };
40
- export const Negative = () => <Badge status="negative">Negative</Badge>;
41
- export const Warning = () => <Badge status="warning">Warning</Badge>;
42
- export const Neutral = () => <Badge status="neutral">Neutral</Badge>;
43
- export const Error = () => <Badge status="error">Error</Badge>;
44
-
45
- interface BadgeArgs {
46
- status?: 'positive' | 'negative' | 'neutral' | 'error' | 'warning';
47
- children?: ReactNode;
48
- }
49
-
50
- interface IconArgs {
51
- icon: string;
52
- inline?: boolean;
53
- block: boolean;
54
- }
55
-
56
- type WithIconArgs = BadgeArgs & IconArgs;
57
-
58
- export const WithIcon = (args: WithIconArgs) => (
59
- <Badge {...args}>
60
- <Icon {...args} />
61
- with icon
62
- </Badge>
63
- );
64
- WithIcon.args = {
65
- status: 'warning',
66
- icon: 'check',
67
- inline: true,
68
- block: false,
69
- };
70
-
71
- WithIcon.storyName = 'with icon';
72
- WithIcon.play = async ({ canvasElement }: { canvasElement: HTMLElement }) => {
73
- const canvas = within(canvasElement);
74
- const badge = canvas.getByText(/with icon/i);
75
- expect(badge).toBeInTheDocument();
76
- const icon = canvasElement.querySelector('svg');
77
- expect(icon).toBeInTheDocument();
78
- };
79
-
80
- AllBadges.play = async ({ canvasElement }: { canvasElement: HTMLElement }) => {
81
- const canvas = within(canvasElement);
82
- expect(canvas.getByText('Positive')).toBeInTheDocument();
83
- expect(canvas.getByText('Negative')).toBeInTheDocument();
84
- expect(canvas.getByText('Neutral')).toBeInTheDocument();
85
- expect(canvas.getByText('Error')).toBeInTheDocument();
86
- expect(canvas.getByText('Warning')).toBeInTheDocument();
87
- };
package/src/Badge.tsx DELETED
@@ -1,76 +0,0 @@
1
- import styled, { css } from 'styled-components';
2
- import { background, color, typography } from './shared/styles';
3
- import { BadgeProps, BADGE_STATUSES, StatusProps } from './types';
4
-
5
- /**
6
- * Styled badge wrapper with status-based styling
7
- */
8
- const BadgeWrapper = styled.div<StatusProps>`
9
- display: inline-block;
10
- vertical-align: top;
11
- font-size: 11px;
12
- line-height: 12px;
13
- padding: 4px 12px;
14
- border-radius: 3em;
15
- font-weight: ${typography.weight.bold};
16
-
17
- svg {
18
- height: 12px;
19
- width: 12px;
20
- margin-right: 4px;
21
- margin-top: -2px;
22
- }
23
-
24
- ${(props) =>
25
- props.status === BADGE_STATUSES.POSITIVE &&
26
- css`
27
- color: ${color.positive};
28
- background: ${background.positive};
29
- `};
30
-
31
- ${(props) =>
32
- props.status === BADGE_STATUSES.NEGATIVE &&
33
- css`
34
- color: ${color.negative};
35
- background: ${background.negative};
36
- `};
37
-
38
- ${(props) =>
39
- props.status === BADGE_STATUSES.WARNING &&
40
- css`
41
- color: ${color.warning};
42
- background: ${background.warning};
43
- `};
44
-
45
- ${(props) =>
46
- props.status === BADGE_STATUSES.ERROR &&
47
- css`
48
- color: ${color.lightest};
49
- background: ${color.negative};
50
- `};
51
-
52
- ${(props) =>
53
- props.status === BADGE_STATUSES.NEUTRAL &&
54
- css`
55
- color: ${color.dark};
56
- background: ${color.mediumlight};
57
- `};
58
- `;
59
-
60
- /**
61
- * Badge component for displaying status indicators and labels
62
- *
63
- * @example
64
- * ```tsx
65
- * <Badge status="positive">Success</Badge>
66
- * <Badge status="error">Error</Badge>
67
- * <Badge>Default</Badge>
68
- * ```
69
- */
70
- export const Badge = ({ status = BADGE_STATUSES.NEUTRAL, children, ...props }: BadgeProps) => {
71
- return (
72
- <BadgeWrapper status={status} {...props}>
73
- {children}
74
- </BadgeWrapper>
75
- );
76
- };
@@ -1,244 +0,0 @@
1
- import type { ComponentProps } from 'react';
2
- import styled from 'styled-components';
3
-
4
- import { userEvent, within } from '@storybook/testing-library';
5
- import { expect } from '@storybook/jest';
6
-
7
- import { Button } from './Button';
8
- import { Icon } from './Icon';
9
- import { IconName } from './types';
10
- import { StoryLinkWrapper } from './StoryLinkWrapper';
11
-
12
- const CustomButton = styled.button`
13
- border: 1px solid green;
14
- background: lightgreen;
15
- color: rebeccapurple;
16
- padding: 1em;
17
- font-size: 1.2em;
18
- `;
19
-
20
- function ButtonWrapper(props: ComponentProps<typeof CustomButton>) {
21
- return <CustomButton {...props} />;
22
- }
23
-
24
- export default {
25
- title: 'Design System/Button',
26
- component: Button,
27
- };
28
-
29
- import type { StoryFn } from '@storybook/react';
30
- export const AllButtons: StoryFn = (_args: Record<string, unknown>) => (
31
- <div>
32
- <Button appearance="primary">Primary</Button>
33
- <Button appearance="secondary">Secondary</Button>
34
- <Button appearance="tertiary">Tertiary</Button>
35
- <Button appearance="outline">Outline</Button>
36
- <Button appearance="primaryOutline">Outline primary</Button>
37
- <Button appearance="secondaryOutline">Outline secondary</Button>
38
- <Button appearance="primary" disabled>
39
- Disabled
40
- </Button>
41
- <br />
42
- <Button appearance="primary" loading>
43
- Primary
44
- </Button>
45
- <Button appearance="secondary" loading>
46
- Secondary
47
- </Button>
48
- <Button appearance="tertiary" loading>
49
- Tertiary
50
- </Button>
51
- <Button appearance="outline" loading>
52
- Outline
53
- </Button>
54
- <Button appearance="outline" loading loadingText="Custom...">
55
- Outline
56
- </Button>
57
- <br />
58
- <Button appearance="primary" size="small">
59
- Primary
60
- </Button>
61
- <Button appearance="secondary" size="small">
62
- Secondary
63
- </Button>
64
- <Button appearance="tertiary" size="small">
65
- Tertiary
66
- </Button>
67
- <Button appearance="outline" size="small">
68
- Outline
69
- </Button>
70
- <Button appearance="primary" disabled size="small">
71
- Disabled
72
- </Button>
73
- <Button appearance="outline" size="small" containsIcon>
74
- <Icon icon={'link' as IconName} aria-label="Link" />
75
- </Button>
76
- <Button appearance="outline" size="small">
77
- <Icon icon={'link' as IconName} />
78
- Link
79
- </Button>
80
- </div>
81
- );
82
-
83
- AllButtons.storyName = 'all buttons';
84
-
85
- export const ButtonWrapperStory: StoryFn = (_args: Record<string, unknown>) => (
86
- <div>
87
- <ButtonWrapper>Original Button Wrapper</ButtonWrapper>
88
- <br />
89
- <Button ButtonWrapper={ButtonWrapper} appearance="primary">
90
- Primary
91
- </Button>
92
- <Button ButtonWrapper={ButtonWrapper} appearance="secondary">
93
- Secondary
94
- </Button>
95
- <Button ButtonWrapper={ButtonWrapper} appearance="tertiary">
96
- Tertiary
97
- </Button>
98
- <Button ButtonWrapper={ButtonWrapper} appearance="outline">
99
- Outline
100
- </Button>
101
- <Button ButtonWrapper={ButtonWrapper} appearance="primaryOutline">
102
- Outline primary
103
- </Button>
104
- <Button ButtonWrapper={ButtonWrapper} appearance="secondaryOutline">
105
- Outline secondary
106
- </Button>
107
- <Button ButtonWrapper={ButtonWrapper} appearance="primary" disabled>
108
- Disabled
109
- </Button>
110
- <br />
111
- <Button ButtonWrapper={ButtonWrapper} appearance="primary" loading>
112
- Primary
113
- </Button>
114
- <Button ButtonWrapper={ButtonWrapper} appearance="secondary" loading>
115
- Secondary
116
- </Button>
117
- <Button ButtonWrapper={ButtonWrapper} appearance="tertiary" loading>
118
- Tertiary
119
- </Button>
120
- <Button ButtonWrapper={ButtonWrapper} appearance="outline" loading>
121
- Outline
122
- </Button>
123
- <Button ButtonWrapper={ButtonWrapper} appearance="outline" loading loadingText="Custom...">
124
- Outline
125
- </Button>
126
- <br />
127
- <Button ButtonWrapper={ButtonWrapper} appearance="primary" size="small">
128
- Primary
129
- </Button>
130
- <Button ButtonWrapper={ButtonWrapper} appearance="secondary" size="small">
131
- Secondary
132
- </Button>
133
- <Button ButtonWrapper={ButtonWrapper} appearance="tertiary" size="small">
134
- Tertiary
135
- </Button>
136
- <Button ButtonWrapper={ButtonWrapper} appearance="outline" size="small">
137
- Outline
138
- </Button>
139
- <Button ButtonWrapper={ButtonWrapper} appearance="primary" disabled size="small">
140
- Disabled
141
- </Button>
142
- <Button ButtonWrapper={ButtonWrapper} appearance="outline" size="small" containsIcon>
143
- <Icon icon={'link' as IconName} aria-label="Link" />
144
- </Button>
145
- <Button ButtonWrapper={ButtonWrapper} appearance="outline" size="small">
146
- <Icon icon={'link' as IconName} />
147
- Link
148
- </Button>
149
- </div>
150
- );
151
-
152
- ButtonWrapperStory.storyName = 'button wrapper';
153
-
154
- export const AnchorWrapper: StoryFn = (_args: Record<string, unknown>) => (
155
- <div>
156
- <StoryLinkWrapper to="http://storybook.js.org">Original Link Wrapper</StoryLinkWrapper>
157
- <br />
158
- <Button ButtonWrapper={StoryLinkWrapper} appearance="primary">
159
- Primary
160
- </Button>
161
- <Button ButtonWrapper={StoryLinkWrapper} appearance="secondary">
162
- Secondary
163
- </Button>
164
- <Button ButtonWrapper={StoryLinkWrapper} appearance="tertiary">
165
- Tertiary
166
- </Button>
167
- <Button ButtonWrapper={StoryLinkWrapper} appearance="outline">
168
- Outline
169
- </Button>
170
- <Button ButtonWrapper={StoryLinkWrapper} appearance="primaryOutline">
171
- Outline primary
172
- </Button>
173
- <Button ButtonWrapper={StoryLinkWrapper} appearance="secondaryOutline">
174
- Outline secondary
175
- </Button>
176
- <Button ButtonWrapper={StoryLinkWrapper} appearance="primary" disabled>
177
- Disabled
178
- </Button>
179
- <br />
180
- <Button ButtonWrapper={StoryLinkWrapper} appearance="primary" loading>
181
- Primary
182
- </Button>
183
- <Button ButtonWrapper={StoryLinkWrapper} appearance="secondary" loading>
184
- Secondary
185
- </Button>
186
- <Button ButtonWrapper={StoryLinkWrapper} appearance="tertiary" loading>
187
- Tertiary
188
- </Button>
189
- <Button ButtonWrapper={StoryLinkWrapper} appearance="outline" loading>
190
- Outline
191
- </Button>
192
- <Button ButtonWrapper={StoryLinkWrapper} appearance="outline" loading loadingText="Custom...">
193
- Outline
194
- </Button>
195
- <br />
196
- <Button ButtonWrapper={StoryLinkWrapper} appearance="primary" size="small">
197
- Primary
198
- </Button>
199
- <Button ButtonWrapper={StoryLinkWrapper} appearance="secondary" size="small">
200
- Secondary
201
- </Button>
202
- <Button ButtonWrapper={StoryLinkWrapper} appearance="tertiary" size="small">
203
- Tertiary
204
- </Button>
205
- <Button ButtonWrapper={StoryLinkWrapper} appearance="outline" size="small">
206
- Outline
207
- </Button>
208
- <Button ButtonWrapper={StoryLinkWrapper} appearance="primary" disabled size="small">
209
- Disabled
210
- </Button>
211
- <Button ButtonWrapper={StoryLinkWrapper} appearance="outline" size="small" containsIcon>
212
- <Icon icon={'link' as IconName} aria-label="Link" />
213
- </Button>
214
- <Button ButtonWrapper={StoryLinkWrapper} appearance="outline" size="small">
215
- <Icon icon={'link' as IconName} />
216
- Link
217
- </Button>
218
- </div>
219
- );
220
-
221
- AnchorWrapper.storyName = 'anchor wrapper';
222
-
223
- /*
224
- * New story using the play function.
225
- * See https://storybook.js.org/docs/react/writing-stories/play-function
226
- * to learn more about the play function.
227
- */
228
- export const WithInteractions: StoryFn = (_args: Record<string, unknown>) => {
229
- const args = _args as unknown as ComponentProps<typeof Button>;
230
- return <Button {...args} />;
231
- };
232
- WithInteractions.args = {
233
- appearance: 'primary',
234
- href: 'http://storybook.js.org',
235
- ButtonWrapper: StoryLinkWrapper,
236
- children: 'Button',
237
- };
238
-
239
- WithInteractions.play = async ({ canvasElement }: { canvasElement: HTMLElement }) => {
240
- // Assigns canvas to the component root element
241
- const canvas = within(canvasElement);
242
- await userEvent.click(canvas.getByRole('link'));
243
- expect(canvas.getByRole('link')).toHaveAttribute('href', 'http://storybook.js.org');
244
- };