@gv-tech/design-system 2.5.0 → 2.5.2

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 (440) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/package.json +5 -2
  3. package/.agent/skills/dogfood-components/SKILL.md +0 -34
  4. package/.agent/skills/maintain-component/SKILL.md +0 -77
  5. package/.agent/workflows/native-playground.md +0 -93
  6. package/.github/CODEOWNERS +0 -2
  7. package/.github/CONTRIBUTING.md +0 -42
  8. package/.github/FUNDING.yml +0 -4
  9. package/.github/PULL_REQUEST_TEMPLATE/build.md +0 -5
  10. package/.github/PULL_REQUEST_TEMPLATE/standard.md +0 -3
  11. package/.github/RELEASING.md +0 -37
  12. package/.github/copilot-instructions.md +0 -61
  13. package/.github/workflows/ci.yml +0 -91
  14. package/.github/workflows/codeql-analysis.yml +0 -34
  15. package/.github/workflows/release-please.yml +0 -79
  16. package/.husky/pre-commit +0 -1
  17. package/.prettierignore +0 -3
  18. package/.release-please-manifest.json +0 -9
  19. package/.tool-versions +0 -1
  20. package/.vscode/launch.json +0 -22
  21. package/.vscode/mcp.json +0 -8
  22. package/.vscode/settings.json +0 -30
  23. package/.yarnrc.yml +0 -7
  24. package/SECURITY.md +0 -9
  25. package/apps/.gitkeep +0 -0
  26. package/apps/native-playground/CHANGELOG.md +0 -8
  27. package/apps/native-playground/app.json +0 -37
  28. package/apps/native-playground/assets/fonts/.gitkeep +0 -0
  29. package/apps/native-playground/assets/images/adaptive-icon.png +0 -0
  30. package/apps/native-playground/assets/images/favicon.png +0 -0
  31. package/apps/native-playground/assets/images/icon.png +0 -0
  32. package/apps/native-playground/assets/images/splash-icon.png +0 -0
  33. package/apps/native-playground/babel.config.js +0 -6
  34. package/apps/native-playground/eas.json +0 -25
  35. package/apps/native-playground/index.js +0 -8
  36. package/apps/native-playground/metro.config.js +0 -26
  37. package/apps/native-playground/nativewind-env.d.ts +0 -1
  38. package/apps/native-playground/package.json +0 -23
  39. package/apps/native-playground/project.json +0 -15
  40. package/apps/native-playground/src/app/App.tsx +0 -842
  41. package/apps/native-playground/src/global.css +0 -49
  42. package/apps/native-playground/tailwind.config.js +0 -49
  43. package/apps/native-playground/tsconfig.app.json +0 -24
  44. package/apps/native-playground/tsconfig.json +0 -23
  45. package/apps/native-playground/tsconfig.spec.json +0 -24
  46. package/apps/playground-web/CHANGELOG.md +0 -8
  47. package/apps/playground-web/index.html +0 -13
  48. package/apps/playground-web/package.json +0 -31
  49. package/apps/playground-web/public/favicon.png +0 -0
  50. package/apps/playground-web/public/index.demo.html +0 -40
  51. package/apps/playground-web/public/logo192.png +0 -0
  52. package/apps/playground-web/public/logo512.png +0 -0
  53. package/apps/playground-web/public/manifest.json +0 -25
  54. package/apps/playground-web/public/robots.txt +0 -2
  55. package/apps/playground-web/src/App.tsx +0 -179
  56. package/apps/playground-web/src/components/docs/CodeBlock.tsx +0 -34
  57. package/apps/playground-web/src/components/docs/CombinedDocsLayout.tsx +0 -103
  58. package/apps/playground-web/src/components/docs/ComponentShowcase.tsx +0 -96
  59. package/apps/playground-web/src/components/docs/ErrorBoundary.tsx +0 -55
  60. package/apps/playground-web/src/components/docs/Footer.tsx +0 -146
  61. package/apps/playground-web/src/components/docs/PropsTable.tsx +0 -43
  62. package/apps/playground-web/src/components/docs/Search.tsx +0 -75
  63. package/apps/playground-web/src/components/docs/Sidebar.tsx +0 -77
  64. package/apps/playground-web/src/components/docs/ThemeToggle.tsx +0 -19
  65. package/apps/playground-web/src/components/docs/index.ts +0 -9
  66. package/apps/playground-web/src/config/docs.ts +0 -293
  67. package/apps/playground-web/src/globals.css +0 -148
  68. package/apps/playground-web/src/hooks/useDocMetadata.ts +0 -34
  69. package/apps/playground-web/src/hooks/usePackageManager.tsx +0 -42
  70. package/apps/playground-web/src/lib/react-native-shim.js +0 -34
  71. package/apps/playground-web/src/main.tsx +0 -11
  72. package/apps/playground-web/src/pages/index.ts +0 -4
  73. package/apps/playground-web/src/pages/native/AccordionDocs.tsx +0 -85
  74. package/apps/playground-web/src/pages/native/AlertDialogDocs.tsx +0 -128
  75. package/apps/playground-web/src/pages/native/AlertDocs.tsx +0 -89
  76. package/apps/playground-web/src/pages/native/AspectRatioDocs.tsx +0 -52
  77. package/apps/playground-web/src/pages/native/AvatarDocs.tsx +0 -92
  78. package/apps/playground-web/src/pages/native/BadgeDocs.tsx +0 -63
  79. package/apps/playground-web/src/pages/native/BreadcrumbDocs.tsx +0 -71
  80. package/apps/playground-web/src/pages/native/ButtonDocs.tsx +0 -103
  81. package/apps/playground-web/src/pages/native/CalendarDocs.tsx +0 -74
  82. package/apps/playground-web/src/pages/native/CardDocs.tsx +0 -75
  83. package/apps/playground-web/src/pages/native/CarouselDocs.tsx +0 -113
  84. package/apps/playground-web/src/pages/native/ChartDocs.tsx +0 -115
  85. package/apps/playground-web/src/pages/native/CheckboxDocs.tsx +0 -38
  86. package/apps/playground-web/src/pages/native/CollapsibleDocs.tsx +0 -89
  87. package/apps/playground-web/src/pages/native/CommandDocs.tsx +0 -170
  88. package/apps/playground-web/src/pages/native/ContextMenuDocs.tsx +0 -121
  89. package/apps/playground-web/src/pages/native/DialogDocs.tsx +0 -132
  90. package/apps/playground-web/src/pages/native/DrawerDocs.tsx +0 -158
  91. package/apps/playground-web/src/pages/native/DropdownMenuDocs.tsx +0 -168
  92. package/apps/playground-web/src/pages/native/HoverCardDocs.tsx +0 -119
  93. package/apps/playground-web/src/pages/native/InputDocs.tsx +0 -86
  94. package/apps/playground-web/src/pages/native/LabelDocs.tsx +0 -55
  95. package/apps/playground-web/src/pages/native/MenubarDocs.tsx +0 -197
  96. package/apps/playground-web/src/pages/native/NavigationMenuDocs.tsx +0 -190
  97. package/apps/playground-web/src/pages/native/PaginationDocs.tsx +0 -70
  98. package/apps/playground-web/src/pages/native/PopoverDocs.tsx +0 -156
  99. package/apps/playground-web/src/pages/native/ProgressDocs.tsx +0 -61
  100. package/apps/playground-web/src/pages/native/RadioGroupDocs.tsx +0 -125
  101. package/apps/playground-web/src/pages/native/ResizableDocs.tsx +0 -118
  102. package/apps/playground-web/src/pages/native/ScrollAreaDocs.tsx +0 -92
  103. package/apps/playground-web/src/pages/native/SearchDocs.tsx +0 -150
  104. package/apps/playground-web/src/pages/native/SelectDocs.tsx +0 -141
  105. package/apps/playground-web/src/pages/native/SeparatorDocs.tsx +0 -72
  106. package/apps/playground-web/src/pages/native/SheetDocs.tsx +0 -140
  107. package/apps/playground-web/src/pages/native/SkeletonDocs.tsx +0 -44
  108. package/apps/playground-web/src/pages/native/SliderDocs.tsx +0 -118
  109. package/apps/playground-web/src/pages/native/SonnerDocs.tsx +0 -111
  110. package/apps/playground-web/src/pages/native/SwitchDocs.tsx +0 -87
  111. package/apps/playground-web/src/pages/native/TableDocs.tsx +0 -67
  112. package/apps/playground-web/src/pages/native/TabsDocs.tsx +0 -175
  113. package/apps/playground-web/src/pages/native/TextareaDocs.tsx +0 -61
  114. package/apps/playground-web/src/pages/native/ThemeToggleDocs.tsx +0 -288
  115. package/apps/playground-web/src/pages/native/ToastDocs.tsx +0 -124
  116. package/apps/playground-web/src/pages/native/ToggleDocs.tsx +0 -81
  117. package/apps/playground-web/src/pages/native/ToggleGroupDocs.tsx +0 -128
  118. package/apps/playground-web/src/pages/native/TooltipDocs.tsx +0 -140
  119. package/apps/playground-web/src/pages/native/index.ts +0 -47
  120. package/apps/playground-web/src/pages/shared/ColorTokensDocs.tsx +0 -234
  121. package/apps/playground-web/src/pages/shared/GettingStarted.tsx +0 -413
  122. package/apps/playground-web/src/pages/web/AccordionDocs.tsx +0 -194
  123. package/apps/playground-web/src/pages/web/AlertDialogDocs.tsx +0 -157
  124. package/apps/playground-web/src/pages/web/AlertDocs.tsx +0 -110
  125. package/apps/playground-web/src/pages/web/AspectRatioDocs.tsx +0 -94
  126. package/apps/playground-web/src/pages/web/AvatarDocs.tsx +0 -81
  127. package/apps/playground-web/src/pages/web/BadgeDocs.tsx +0 -66
  128. package/apps/playground-web/src/pages/web/BreadcrumbDocs.tsx +0 -93
  129. package/apps/playground-web/src/pages/web/ButtonDocs.tsx +0 -129
  130. package/apps/playground-web/src/pages/web/CalendarDocs.tsx +0 -78
  131. package/apps/playground-web/src/pages/web/CardDocs.tsx +0 -115
  132. package/apps/playground-web/src/pages/web/CarouselDocs.tsx +0 -176
  133. package/apps/playground-web/src/pages/web/ChartDocs.tsx +0 -151
  134. package/apps/playground-web/src/pages/web/CheckboxDocs.tsx +0 -95
  135. package/apps/playground-web/src/pages/web/CollapsibleDocs.tsx +0 -111
  136. package/apps/playground-web/src/pages/web/CommandDocs.tsx +0 -219
  137. package/apps/playground-web/src/pages/web/ContextMenuDocs.tsx +0 -164
  138. package/apps/playground-web/src/pages/web/DialogDocs.tsx +0 -175
  139. package/apps/playground-web/src/pages/web/DrawerDocs.tsx +0 -283
  140. package/apps/playground-web/src/pages/web/DropdownMenuDocs.tsx +0 -319
  141. package/apps/playground-web/src/pages/web/FormDocs.tsx +0 -175
  142. package/apps/playground-web/src/pages/web/HoverCardDocs.tsx +0 -151
  143. package/apps/playground-web/src/pages/web/InputDocs.tsx +0 -118
  144. package/apps/playground-web/src/pages/web/LabelDocs.tsx +0 -59
  145. package/apps/playground-web/src/pages/web/MenubarDocs.tsx +0 -296
  146. package/apps/playground-web/src/pages/web/NavigationMenuDocs.tsx +0 -263
  147. package/apps/playground-web/src/pages/web/PaginationDocs.tsx +0 -102
  148. package/apps/playground-web/src/pages/web/PopoverDocs.tsx +0 -189
  149. package/apps/playground-web/src/pages/web/ProgressDocs.tsx +0 -70
  150. package/apps/playground-web/src/pages/web/RadioGroupDocs.tsx +0 -137
  151. package/apps/playground-web/src/pages/web/ResizableDocs.tsx +0 -143
  152. package/apps/playground-web/src/pages/web/ScrollAreaDocs.tsx +0 -107
  153. package/apps/playground-web/src/pages/web/SearchDocs.tsx +0 -203
  154. package/apps/playground-web/src/pages/web/SelectDocs.tsx +0 -164
  155. package/apps/playground-web/src/pages/web/SeparatorDocs.tsx +0 -88
  156. package/apps/playground-web/src/pages/web/SheetDocs.tsx +0 -186
  157. package/apps/playground-web/src/pages/web/SkeletonDocs.tsx +0 -53
  158. package/apps/playground-web/src/pages/web/SliderDocs.tsx +0 -119
  159. package/apps/playground-web/src/pages/web/SonnerDocs.tsx +0 -126
  160. package/apps/playground-web/src/pages/web/SwitchDocs.tsx +0 -91
  161. package/apps/playground-web/src/pages/web/TableDocs.tsx +0 -148
  162. package/apps/playground-web/src/pages/web/TabsDocs.tsx +0 -241
  163. package/apps/playground-web/src/pages/web/TextareaDocs.tsx +0 -65
  164. package/apps/playground-web/src/pages/web/ThemeToggleDocs.tsx +0 -303
  165. package/apps/playground-web/src/pages/web/ToastDocs.tsx +0 -149
  166. package/apps/playground-web/src/pages/web/ToggleDocs.tsx +0 -85
  167. package/apps/playground-web/src/pages/web/ToggleGroupDocs.tsx +0 -140
  168. package/apps/playground-web/src/pages/web/TooltipDocs.tsx +0 -150
  169. package/apps/playground-web/src/pages/web/index.ts +0 -47
  170. package/apps/playground-web/src/routes/doc-routes.tsx +0 -363
  171. package/apps/playground-web/tailwind.config.js +0 -47
  172. package/apps/playground-web/tsconfig.app.json +0 -16
  173. package/apps/playground-web/tsconfig.json +0 -4
  174. package/apps/playground-web/tsconfig.node.json +0 -13
  175. package/apps/playground-web/vite.config.ts +0 -41
  176. package/components.json +0 -20
  177. package/docs/architecture-pivot.md +0 -165
  178. package/docs/native-setup-decision.md +0 -57
  179. package/docs/phase-1-tracker.md +0 -144
  180. package/docs/release-tooling-evaluation.md +0 -67
  181. package/docs/universal-implementation.md +0 -195
  182. package/docs/update-plan.md +0 -268
  183. package/eslint.config.mjs +0 -13
  184. package/nx.json +0 -50
  185. package/packages/.gitkeep +0 -0
  186. package/packages/design-tokens/CHANGELOG.md +0 -8
  187. package/packages/design-tokens/package.json +0 -20
  188. package/packages/design-tokens/src/index.ts +0 -35
  189. package/packages/design-tokens/src/palette.ts +0 -36
  190. package/packages/design-tokens/src/radii.ts +0 -26
  191. package/packages/design-tokens/src/shadows.ts +0 -16
  192. package/packages/design-tokens/src/spacing.ts +0 -33
  193. package/packages/design-tokens/src/theme.ts +0 -54
  194. package/packages/design-tokens/src/typography.ts +0 -36
  195. package/packages/design-tokens/tsconfig.json +0 -17
  196. package/packages/ui-core/CHANGELOG.md +0 -8
  197. package/packages/ui-core/package.json +0 -40
  198. package/packages/ui-core/src/contracts/accordion.ts +0 -23
  199. package/packages/ui-core/src/contracts/alert-dialog.ts +0 -48
  200. package/packages/ui-core/src/contracts/alert.ts +0 -17
  201. package/packages/ui-core/src/contracts/aspect-ratio.ts +0 -7
  202. package/packages/ui-core/src/contracts/avatar.ts +0 -17
  203. package/packages/ui-core/src/contracts/badge.ts +0 -7
  204. package/packages/ui-core/src/contracts/breadcrumb.ts +0 -37
  205. package/packages/ui-core/src/contracts/button.ts +0 -17
  206. package/packages/ui-core/src/contracts/calendar.ts +0 -4
  207. package/packages/ui-core/src/contracts/card.ts +0 -11
  208. package/packages/ui-core/src/contracts/carousel.ts +0 -29
  209. package/packages/ui-core/src/contracts/chart.ts +0 -31
  210. package/packages/ui-core/src/contracts/checkbox.ts +0 -11
  211. package/packages/ui-core/src/contracts/collapsible.ts +0 -21
  212. package/packages/ui-core/src/contracts/command.ts +0 -43
  213. package/packages/ui-core/src/contracts/context-menu.ts +0 -78
  214. package/packages/ui-core/src/contracts/dialog.ts +0 -29
  215. package/packages/ui-core/src/contracts/drawer.ts +0 -39
  216. package/packages/ui-core/src/contracts/dropdown-menu.ts +0 -87
  217. package/packages/ui-core/src/contracts/form.ts +0 -29
  218. package/packages/ui-core/src/contracts/hover-card.ts +0 -21
  219. package/packages/ui-core/src/contracts/input.ts +0 -11
  220. package/packages/ui-core/src/contracts/label.ts +0 -7
  221. package/packages/ui-core/src/contracts/menubar.ts +0 -86
  222. package/packages/ui-core/src/contracts/navigation-menu.ts +0 -55
  223. package/packages/ui-core/src/contracts/pagination.ts +0 -38
  224. package/packages/ui-core/src/contracts/popover.ts +0 -28
  225. package/packages/ui-core/src/contracts/progress.ts +0 -4
  226. package/packages/ui-core/src/contracts/radio.ts +0 -16
  227. package/packages/ui-core/src/contracts/resizable.ts +0 -36
  228. package/packages/ui-core/src/contracts/scroll-area.ts +0 -15
  229. package/packages/ui-core/src/contracts/search.ts +0 -13
  230. package/packages/ui-core/src/contracts/select.ts +0 -64
  231. package/packages/ui-core/src/contracts/separator.ts +0 -5
  232. package/packages/ui-core/src/contracts/sheet.ts +0 -58
  233. package/packages/ui-core/src/contracts/skeleton.ts +0 -6
  234. package/packages/ui-core/src/contracts/slider.ts +0 -15
  235. package/packages/ui-core/src/contracts/sonner.ts +0 -15
  236. package/packages/ui-core/src/contracts/switch.ts +0 -11
  237. package/packages/ui-core/src/contracts/table.ts +0 -41
  238. package/packages/ui-core/src/contracts/tabs.ts +0 -31
  239. package/packages/ui-core/src/contracts/text.ts +0 -12
  240. package/packages/ui-core/src/contracts/textarea.ts +0 -7
  241. package/packages/ui-core/src/contracts/theme-provider.ts +0 -14
  242. package/packages/ui-core/src/contracts/theme-toggle.ts +0 -15
  243. package/packages/ui-core/src/contracts/toast.ts +0 -15
  244. package/packages/ui-core/src/contracts/toaster.ts +0 -3
  245. package/packages/ui-core/src/contracts/toggle-group.ts +0 -23
  246. package/packages/ui-core/src/contracts/toggle.ts +0 -49
  247. package/packages/ui-core/src/contracts/tooltip.ts +0 -28
  248. package/packages/ui-core/src/index.ts +0 -327
  249. package/packages/ui-core/tsconfig.json +0 -18
  250. package/packages/ui-native/CHANGELOG.md +0 -8
  251. package/packages/ui-native/package.json +0 -76
  252. package/packages/ui-native/src/accordion.tsx +0 -93
  253. package/packages/ui-native/src/alert-dialog.tsx +0 -123
  254. package/packages/ui-native/src/alert.tsx +0 -50
  255. package/packages/ui-native/src/aspect-ratio.tsx +0 -9
  256. package/packages/ui-native/src/avatar.tsx +0 -38
  257. package/packages/ui-native/src/badge.tsx +0 -51
  258. package/packages/ui-native/src/breadcrumb.tsx +0 -9
  259. package/packages/ui-native/src/button.test.tsx +0 -27
  260. package/packages/ui-native/src/button.tsx +0 -75
  261. package/packages/ui-native/src/calendar.tsx +0 -9
  262. package/packages/ui-native/src/card.test.tsx +0 -33
  263. package/packages/ui-native/src/card.tsx +0 -56
  264. package/packages/ui-native/src/carousel.tsx +0 -9
  265. package/packages/ui-native/src/chart.tsx +0 -9
  266. package/packages/ui-native/src/checkbox.test.tsx +0 -58
  267. package/packages/ui-native/src/checkbox.tsx +0 -31
  268. package/packages/ui-native/src/collapsible.test.tsx +0 -50
  269. package/packages/ui-native/src/collapsible.tsx +0 -15
  270. package/packages/ui-native/src/command.tsx +0 -9
  271. package/packages/ui-native/src/context-menu.tsx +0 -9
  272. package/packages/ui-native/src/dialog.test.tsx +0 -91
  273. package/packages/ui-native/src/dialog.tsx +0 -121
  274. package/packages/ui-native/src/drawer.tsx +0 -9
  275. package/packages/ui-native/src/dropdown-menu.tsx +0 -9
  276. package/packages/ui-native/src/form.tsx +0 -9
  277. package/packages/ui-native/src/hover-card.tsx +0 -9
  278. package/packages/ui-native/src/index.ts +0 -209
  279. package/packages/ui-native/src/input.test.tsx +0 -27
  280. package/packages/ui-native/src/input.tsx +0 -27
  281. package/packages/ui-native/src/label.tsx +0 -29
  282. package/packages/ui-native/src/lib/render-native.tsx +0 -17
  283. package/packages/ui-native/src/lib/utils.ts +0 -6
  284. package/packages/ui-native/src/menubar.tsx +0 -9
  285. package/packages/ui-native/src/nativewind-env.d.ts +0 -1
  286. package/packages/ui-native/src/navigation-menu.tsx +0 -9
  287. package/packages/ui-native/src/pagination.tsx +0 -9
  288. package/packages/ui-native/src/popover.tsx +0 -9
  289. package/packages/ui-native/src/progress.tsx +0 -9
  290. package/packages/ui-native/src/radio-group.test.tsx +0 -77
  291. package/packages/ui-native/src/radio-group.tsx +0 -42
  292. package/packages/ui-native/src/resizable.tsx +0 -25
  293. package/packages/ui-native/src/scroll-area.tsx +0 -9
  294. package/packages/ui-native/src/search.tsx +0 -17
  295. package/packages/ui-native/src/select.tsx +0 -229
  296. package/packages/ui-native/src/separator.tsx +0 -20
  297. package/packages/ui-native/src/sheet.test.tsx +0 -93
  298. package/packages/ui-native/src/sheet.tsx +0 -127
  299. package/packages/ui-native/src/skeleton.test.tsx +0 -29
  300. package/packages/ui-native/src/skeleton.tsx +0 -31
  301. package/packages/ui-native/src/slider.tsx +0 -9
  302. package/packages/ui-native/src/sonner.tsx +0 -9
  303. package/packages/ui-native/src/switch.tsx +0 -34
  304. package/packages/ui-native/src/table.tsx +0 -73
  305. package/packages/ui-native/src/tabs.tsx +0 -74
  306. package/packages/ui-native/src/text.test.tsx +0 -24
  307. package/packages/ui-native/src/text.tsx +0 -43
  308. package/packages/ui-native/src/textarea.test.tsx +0 -27
  309. package/packages/ui-native/src/textarea.tsx +0 -29
  310. package/packages/ui-native/src/theme-provider.tsx +0 -6
  311. package/packages/ui-native/src/theme-toggle.tsx +0 -11
  312. package/packages/ui-native/src/toast.test.tsx +0 -61
  313. package/packages/ui-native/src/toast.tsx +0 -88
  314. package/packages/ui-native/src/toaster.tsx +0 -9
  315. package/packages/ui-native/src/toggle-group.tsx +0 -78
  316. package/packages/ui-native/src/toggle.tsx +0 -35
  317. package/packages/ui-native/src/tooltip.tsx +0 -44
  318. package/packages/ui-native/tsconfig.json +0 -23
  319. package/packages/ui-native/vite.config.ts +0 -17
  320. package/packages/ui-web/CHANGELOG.md +0 -8
  321. package/packages/ui-web/package.json +0 -84
  322. package/packages/ui-web/src/accordion.test.tsx +0 -86
  323. package/packages/ui-web/src/accordion.tsx +0 -58
  324. package/packages/ui-web/src/alert-dialog.test.tsx +0 -91
  325. package/packages/ui-web/src/alert-dialog.tsx +0 -121
  326. package/packages/ui-web/src/alert.test.tsx +0 -47
  327. package/packages/ui-web/src/alert.tsx +0 -49
  328. package/packages/ui-web/src/aspect-ratio.test.tsx +0 -34
  329. package/packages/ui-web/src/aspect-ratio.tsx +0 -7
  330. package/packages/ui-web/src/avatar.test.tsx +0 -33
  331. package/packages/ui-web/src/avatar.tsx +0 -40
  332. package/packages/ui-web/src/badge.test.tsx +0 -24
  333. package/packages/ui-web/src/badge.tsx +0 -34
  334. package/packages/ui-web/src/breadcrumb.tsx +0 -105
  335. package/packages/ui-web/src/button.test.tsx +0 -62
  336. package/packages/ui-web/src/button.tsx +0 -47
  337. package/packages/ui-web/src/calendar.test.tsx +0 -23
  338. package/packages/ui-web/src/calendar.tsx +0 -163
  339. package/packages/ui-web/src/card.test.tsx +0 -35
  340. package/packages/ui-web/src/card.tsx +0 -46
  341. package/packages/ui-web/src/carousel.test.tsx +0 -37
  342. package/packages/ui-web/src/carousel.tsx +0 -234
  343. package/packages/ui-web/src/chart.test.tsx +0 -62
  344. package/packages/ui-web/src/chart.tsx +0 -296
  345. package/packages/ui-web/src/checkbox.test.tsx +0 -30
  346. package/packages/ui-web/src/checkbox.tsx +0 -31
  347. package/packages/ui-web/src/collapsible.test.tsx +0 -51
  348. package/packages/ui-web/src/collapsible.tsx +0 -15
  349. package/packages/ui-web/src/command.test.tsx +0 -79
  350. package/packages/ui-web/src/command.tsx +0 -154
  351. package/packages/ui-web/src/context-menu.test.tsx +0 -37
  352. package/packages/ui-web/src/context-menu.tsx +0 -208
  353. package/packages/ui-web/src/dialog.test.tsx +0 -66
  354. package/packages/ui-web/src/dialog.tsx +0 -95
  355. package/packages/ui-web/src/drawer.test.tsx +0 -68
  356. package/packages/ui-web/src/drawer.tsx +0 -110
  357. package/packages/ui-web/src/dropdown-menu.test.tsx +0 -93
  358. package/packages/ui-web/src/dropdown-menu.tsx +0 -212
  359. package/packages/ui-web/src/form.test.tsx +0 -84
  360. package/packages/ui-web/src/form.tsx +0 -160
  361. package/packages/ui-web/src/hooks/use-theme.ts +0 -15
  362. package/packages/ui-web/src/hooks/use-toast.ts +0 -189
  363. package/packages/ui-web/src/hover-card.test.tsx +0 -48
  364. package/packages/ui-web/src/hover-card.tsx +0 -35
  365. package/packages/ui-web/src/index.ts +0 -474
  366. package/packages/ui-web/src/input.test.tsx +0 -33
  367. package/packages/ui-web/src/input.tsx +0 -23
  368. package/packages/ui-web/src/label.test.tsx +0 -27
  369. package/packages/ui-web/src/label.tsx +0 -21
  370. package/packages/ui-web/src/lib/utils.ts +0 -6
  371. package/packages/ui-web/src/menubar.test.tsx +0 -92
  372. package/packages/ui-web/src/menubar.tsx +0 -244
  373. package/packages/ui-web/src/navigation-menu.test.tsx +0 -53
  374. package/packages/ui-web/src/navigation-menu.tsx +0 -143
  375. package/packages/ui-web/src/pagination.test.tsx +0 -57
  376. package/packages/ui-web/src/pagination.tsx +0 -107
  377. package/packages/ui-web/src/popover.test.tsx +0 -31
  378. package/packages/ui-web/src/popover.tsx +0 -45
  379. package/packages/ui-web/src/progress.test.tsx +0 -18
  380. package/packages/ui-web/src/progress.tsx +0 -28
  381. package/packages/ui-web/src/radio-group.test.tsx +0 -39
  382. package/packages/ui-web/src/radio-group.tsx +0 -41
  383. package/packages/ui-web/src/resizable.test.tsx +0 -23
  384. package/packages/ui-web/src/resizable.tsx +0 -59
  385. package/packages/ui-web/src/scroll-area.test.tsx +0 -15
  386. package/packages/ui-web/src/scroll-area.tsx +0 -42
  387. package/packages/ui-web/src/search.test.tsx +0 -81
  388. package/packages/ui-web/src/search.tsx +0 -87
  389. package/packages/ui-web/src/select.test.tsx +0 -42
  390. package/packages/ui-web/src/select.tsx +0 -169
  391. package/packages/ui-web/src/separator.test.tsx +0 -16
  392. package/packages/ui-web/src/separator.tsx +0 -24
  393. package/packages/ui-web/src/setupTests.ts +0 -114
  394. package/packages/ui-web/src/sheet.test.tsx +0 -48
  395. package/packages/ui-web/src/sheet.tsx +0 -136
  396. package/packages/ui-web/src/skeleton.test.tsx +0 -13
  397. package/packages/ui-web/src/skeleton.tsx +0 -10
  398. package/packages/ui-web/src/slider.test.tsx +0 -18
  399. package/packages/ui-web/src/slider.tsx +0 -27
  400. package/packages/ui-web/src/sonner.test.tsx +0 -13
  401. package/packages/ui-web/src/sonner.tsx +0 -32
  402. package/packages/ui-web/src/switch.test.tsx +0 -22
  403. package/packages/ui-web/src/switch.tsx +0 -31
  404. package/packages/ui-web/src/table.test.tsx +0 -29
  405. package/packages/ui-web/src/table.tsx +0 -104
  406. package/packages/ui-web/src/tabs.test.tsx +0 -43
  407. package/packages/ui-web/src/tabs.tsx +0 -62
  408. package/packages/ui-web/src/text.test.tsx +0 -34
  409. package/packages/ui-web/src/text.tsx +0 -55
  410. package/packages/ui-web/src/textarea.test.tsx +0 -21
  411. package/packages/ui-web/src/textarea.tsx +0 -25
  412. package/packages/ui-web/src/theme-provider.tsx +0 -15
  413. package/packages/ui-web/src/theme-toggle.test.tsx +0 -49
  414. package/packages/ui-web/src/theme-toggle.tsx +0 -92
  415. package/packages/ui-web/src/toast.test.tsx +0 -42
  416. package/packages/ui-web/src/toast.tsx +0 -111
  417. package/packages/ui-web/src/toaster.tsx +0 -27
  418. package/packages/ui-web/src/toggle-group.test.tsx +0 -40
  419. package/packages/ui-web/src/toggle-group.tsx +0 -55
  420. package/packages/ui-web/src/toggle.test.tsx +0 -21
  421. package/packages/ui-web/src/toggle.tsx +0 -24
  422. package/packages/ui-web/src/tooltip.tsx +0 -51
  423. package/packages/ui-web/tsconfig.json +0 -24
  424. package/packages/ui-web/vite.config.ts +0 -21
  425. package/postcss.config.mjs +0 -5
  426. package/release-please-config.json +0 -60
  427. package/scripts/build-registry.ts +0 -80
  428. package/scripts/sync-tokens.ts +0 -86
  429. package/scripts/validate.ts +0 -74
  430. package/src/globals.css +0 -146
  431. package/src/index.ts +0 -4
  432. package/src/setupTests.ts +0 -47
  433. package/src/types/nativewind.d.ts +0 -19
  434. package/tailwind.config.js +0 -48
  435. package/tsconfig.build.json +0 -22
  436. package/tsconfig.json +0 -30
  437. package/tsconfig.node.json +0 -11
  438. package/vite.config.ts +0 -106
  439. package/vitest.config.ts +0 -23
  440. package/wrangler.toml +0 -22
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.5.2](https://github.com/Garcia-Ventures/gvtech-design/compare/design-system-v2.5.1...design-system-v2.5.2) (2026-02-20)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * **ci:** migrate npm publish flags to package.json publishConfig and use yarn npm publish. ([df8f11e](https://github.com/Garcia-Ventures/gvtech-design/commit/df8f11e64eb6fb2b56f5f84b095f0332ee087ab9))
9
+
10
+ ## [2.5.1](https://github.com/Garcia-Ventures/gvtech-design/compare/design-system-v2.5.0...design-system-v2.5.1) (2026-02-20)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * force release ([b28668d](https://github.com/Garcia-Ventures/gvtech-design/commit/b28668da1f27650c46983f01cd95794361572960))
16
+ * format ([152e9f7](https://github.com/Garcia-Ventures/gvtech-design/commit/152e9f77b236393ce2ac6e33e8c6a61a4af482c2))
17
+
3
18
  ## [2.5.0](https://github.com/Garcia-Ventures/gvtech-design/compare/design-system-v2.4.0...design-system-v2.5.0) (2026-02-20)
4
19
 
5
20
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gv-tech/design-system",
3
- "version": "2.5.0",
3
+ "version": "2.5.2",
4
4
  "description": "Garcia Ventures react design system",
5
5
  "repository": "git@github.com:Garcia-Ventures/gvtech-design.git",
6
6
  "license": "MIT",
@@ -29,6 +29,9 @@
29
29
  "module": "dist/index.es.js",
30
30
  "types": "dist/index.d.ts",
31
31
  "style": "dist/design-system.css",
32
+ "files": [
33
+ "dist"
34
+ ],
32
35
  "workspaces": [
33
36
  "packages/*",
34
37
  "apps/*"
@@ -167,4 +170,4 @@
167
170
  "access": "public",
168
171
  "provenance": true
169
172
  }
170
- }
173
+ }
@@ -1,34 +0,0 @@
1
- ---
2
- name: dogfood-components
3
- description: Guidelines for using library components within the documentation site itself to ensure consistency and showcase real-world usage.
4
- ---
5
-
6
- # Dogfooding Components Skill
7
-
8
- Use this skill whenever you are modifying the documentation site structure, headers, or layout. The goal is to maximize the use of our own UI components within the documentation logic itself (dogfooding).
9
-
10
- ## Workflow
11
-
12
- ### 1. Analysis
13
-
14
- - **Identify Ad-hoc UI**: Look for custom HTML or static elements in the docs site (`src/App.tsx`, `src/components/docs/CombinedDocsLayout.tsx`, `src/pages/`) that replicate component functionality.
15
- - **Check Library availability**: Verify if a corresponding component exists in `@gv-tech/ui-web` (e.g., Breadcrumbs, Tabs, Alerts, Badges).
16
-
17
- ### 2. Implementation
18
-
19
- - **Prioritize Library Components**: Replace custom implementations with components from `@gv-tech/ui-web`.
20
- - **Pass Real State**: Connect these components to the documentation's state (e.g., using `activeItem` with `Breadcrumb` or `Tabs`).
21
- - **Consistent Styling**: Use the same variants and props that we recommend to our users.
22
-
23
- ### 3. Validation
24
-
25
- - **Functional Check**: Ensure the component behaves correctly within the documentation context (e.g., navigation links work).
26
- - **Visual Check**: Verify the component renders with the correct theme and layout in the docs.
27
-
28
- ## Checklist
29
-
30
- - [ ] Identified custom UI elements that can be replaced.
31
- - [ ] Used components from `@gv-tech/ui-web` instead of ad-hoc HTML/CSS.
32
- - [ ] Component is correctly wired to relevant documentation state.
33
- - [ ] Verified that navigation and interaction remains functional.
34
- - [ ] `yarn validate` passes successfully.
@@ -1,77 +0,0 @@
1
- ---
2
- name: maintain-component
3
- description: Guidelines for creating or updating UI components, ensuring tests and documentation stay in sync.
4
- ---
5
-
6
- # Component Maintenance Skill
7
-
8
- Use this skill whenever you are tasked with creating a new UI component or modifying an existing one in the `gvtech-design` library. All components must follow the monorepo-based architecture to support Web, React Native, and shared contracts.
9
-
10
- ## Architecture Standards
11
-
12
- Components are split across three primary packages:
13
-
14
- 1. **`@gv-tech/ui-core`**: Shared contracts/interfaces.
15
- - Location: `packages/ui-core/src/contracts/[name].ts`
16
- - Role: Defines the "Truth" of what a component's API should be.
17
- 2. **`@gv-tech/ui-web`**: Web (DOM/Radix) implementation.
18
- - Location: `packages/ui-web/src/[name].tsx`
19
- - Tests: `packages/ui-web/src/[name].test.tsx`
20
- 3. **`@gv-tech/ui-native`**: React Native (NativeWind) implementation.
21
- - Location: `packages/ui-native/src/[name].tsx`
22
-
23
- ## Workflow
24
-
25
- ### 1. Contract Definition (Core)
26
-
27
- - Always start by defining or updating the base props in `packages/ui-core/src/contracts/[name].ts`.
28
- - Export these props from `packages/ui-core/src/index.ts`.
29
- - **CRITICAL**: Use specific types. Avoid `any`. Use `unknown` or specific interfaces for extension.
30
-
31
- ### 2. Platform Implementation
32
-
33
- - **Web**:
34
- - Build the implementation in `packages/ui-web/src/[name].tsx`.
35
- - Import contracts from `@gv-tech/ui-core`.
36
- - Import internal utilities (like `cn`) from `./lib/utils` (relative).
37
- - Export the component and its types from `packages/ui-web/src/index.ts`.
38
- - **Native**:
39
- - Build the implementation in `packages/ui-native/src/[name].tsx`.
40
- - If not yet implemented, provide a "Not implemented" shim.
41
- - Import internal utilities from `./lib/utils` (relative).
42
- - Export the component from `packages/ui-native/src/index.ts`.
43
-
44
- ### 3. Documentation & Registry
45
-
46
- - **Documentation Implementation**:
47
- - Create/Update web-specific docs in `src/pages/web/[ComponentName]Docs.tsx`.
48
- - Create/Update native-specific docs in `src/pages/native/[ComponentName]Docs.tsx`.
49
- - **Structure**: Documentation files should **not** use `ComponentSection` (this is now handled by the layout). They should return a React Fragment `<>...</>` containing `ComponentShowcase` and implementations.
50
- - **Register in App.tsx**:
51
- - Add the new route to `src/App.tsx`.
52
- - Use `<CombinedDocsLayout />` and pass the `title`, `description`, `web`, and `native` implementations as props.
53
- - **Context**: Ensure `PropsTable` matches the `ui-core` contract and covers both platforms if they differ.
54
- - **Registry**: Run `yarn build:registry` to update the component JSON files in `public/registry`.
55
-
56
- ### 4. Verification
57
-
58
- - **Full Suite**: Run `yarn validate` from the root. This runs:
59
- - `sync-tokens`: Ensures design tokens are updated.
60
- - `lint`: Checks project-wide ESLint (no `any`, no unused vars).
61
- - `tsc`: Verifies TypeScript types across all workspaces.
62
- - `test`: Runs Vitest across all packages.
63
- - `build`: Verifies Vite/Nx build status.
64
-
65
- ## Checklist
66
-
67
- - [ ] Contract updated in `packages/ui-core/src/contracts/`.
68
- - [ ] Props exported from `packages/ui-core/src/index.ts`.
69
- - [ ] Web implementation updated in `packages/ui-web/src/`.
70
- - [ ] Native implementation/shim updated in `packages/ui-native/src/`.
71
- - [ ] Exported via `index.ts` in respective packages.
72
- - [ ] Web docs updated in `src/pages/web/` (without `ComponentSection`).
73
- - [ ] Native docs updated in `src/pages/native/` (without `ComponentSection`).
74
- - [ ] Route registered in `src/App.tsx` using `CombinedDocsLayout` with `title` and `description`.
75
- - [ ] `yarn build:registry` run to update public registry.
76
- - [ ] `yarn validate` passes successfully (Green state).
77
- - [ ] **Strict**: No `any` types used in new/modified code.
@@ -1,93 +0,0 @@
1
- ---
2
- description: Running the native playground on an Android emulator
3
- ---
4
-
5
- # Native Playground — Local Development
6
-
7
- This workflow starts the Expo dev server for `apps/native-playground` and connects it to a local Android emulator.
8
-
9
- ## Prerequisites
10
-
11
- - Android Studio installed (at `/snap/bin/android-studio`)
12
- - At least one AVD configured. Available AVDs:
13
- - `Pixel_9` (recommended)
14
- - `Medium_Phone_API_36.0`
15
- - Yarn dependencies installed (`yarn install` from repo root)
16
-
17
- ---
18
-
19
- ## Step 1: Boot the Android Emulator
20
-
21
- Open a terminal and start the emulator (leave it running in the background):
22
-
23
- ```bash
24
- $ANDROID_HOME/emulator/emulator -avd Pixel_9 &
25
- ```
26
-
27
- Wait for the emulator to fully boot to the home screen (~30–60 seconds).
28
-
29
- > **Tip:** You can also launch the emulator from Android Studio → Device Manager → ▶ Run.
30
-
31
- ---
32
-
33
- ## Step 2: Start the Expo Dev Server
34
-
35
- // turbo
36
- From the **monorepo root**, run:
37
-
38
- ```bash
39
- yarn native:android
40
- ```
41
-
42
- This runs `npx nx run native-playground:start --android`, which:
43
-
44
- 1. Starts the Metro bundler (NativeWind + Nx monorepo-aware)
45
- 2. Detects the running emulator
46
- 3. Installs Expo Go (or the dev client) on the emulator automatically
47
- 4. Opens the playground app
48
-
49
- ---
50
-
51
- ## Alternative Commands
52
-
53
- | Command | Description |
54
- | ------------------------------------------ | ------------------------------------------------------------------ |
55
- | `yarn native` | Start Expo with interactive picker (QR + emulator options) |
56
- | `yarn native:android` | Start and immediately open on Android emulator |
57
- | `yarn native:clear` | Start Android with cleared Metro cache (fixes stale bundle issues) |
58
- | `npx nx run native-playground:run-android` | Full native build (slower, no Expo Go) |
59
-
60
- ---
61
-
62
- ## Monorepo Hot Reload
63
-
64
- Changes to `packages/ui-native` will automatically hot-reload in the emulator because `metro.config.js` uses `withNxMetro`, which watches all monorepo workspace packages.
65
-
66
- If hot reload stops working, run `yarn native:clear` to reset the bundler cache.
67
-
68
- ---
69
-
70
- ## Troubleshooting
71
-
72
- **Emulator not detected:**
73
-
74
- ```bash
75
- adb devices # should list the emulator
76
- adb kill-server && adb start-server # restart ADB if needed
77
- ```
78
-
79
- **Metro can't resolve monorepo packages:**
80
-
81
- ```bash
82
- yarn install # re-link workspace packages
83
- yarn native:clear # clear bundler cache
84
- ```
85
-
86
- **`ANDROID_HOME` not set:**
87
-
88
- ```bash
89
- export ANDROID_HOME=$HOME/Android/Sdk
90
- export PATH=$PATH:$ANDROID_HOME/emulator:$ANDROID_HOME/platform-tools
91
- ```
92
-
93
- Add these to your `~/.zshrc` for persistence.
@@ -1,2 +0,0 @@
1
- .github/CODEOWNERS @eng618
2
- * @eng618
@@ -1,42 +0,0 @@
1
- # Contributing Guidelines
2
-
3
- This project uses **Vite** for development, builds, and as a component playground.
4
-
5
- ## Available Scripts
6
-
7
- In the project directory, you can run:
8
-
9
- ### `yarn dev`
10
-
11
- Runs the Vite development server for local development.
12
-
13
- Local: [http://localhost:5173](http://localhost:5173)
14
-
15
- Live: [https://gvtech-design.pages.dev/](https://gvtech-design.pages.dev/)
16
-
17
- The page will reload if you make edits, and HMR will update components instantly. You will also see any lint errors in the console.
18
-
19
- ### `yarn test`
20
-
21
- Runs the test suite using **Vitest** (configured in `vitest.config.ts`). For interactive watch mode run `yarn test` locally; for CI the project uses `yarn test:ci`.
22
-
23
- See the Vitest docs for more information: <https://vitest.dev/guide/>.
24
-
25
- ### `yarn build`
26
-
27
- Builds the library and the component registry using Vite.
28
-
29
- ### `yarn build:site`
30
-
31
- Builds the playground site as a production-ready application.
32
-
33
- ### Build configuration
34
-
35
- This project uses Vite for development and builds. If you need to customize build behavior, edit `vite.config.ts` or add Vite plugins. This project does not use `react-scripts` or `eject`.
36
-
37
- ## Learn More
38
-
39
- - Vite docs: <https://vitejs.dev/> (build, config and plugins)
40
- - Vitest docs: <https://vitest.dev/> (testing guide)
41
-
42
- To customize build behavior, edit `vite.config.ts` or add Vite plugins. For component details and testing examples, check the `src` directory.
@@ -1,4 +0,0 @@
1
- # Funding
2
-
3
- github: [eng618]
4
- custom: ["https://www.paypal.me/garciaericn"]
@@ -1,5 +0,0 @@
1
- <!-- This PR is used for build and dependency changes -->
2
-
3
- # Build updates
4
-
5
- <!-- Describe what dependency changes are made, and how you have tested them. -->
@@ -1,3 +0,0 @@
1
- # Description
2
-
3
- <!-- Describe the contents of this PR in more detail here: -->
@@ -1,37 +0,0 @@
1
- # Releasing & Publishing 🔁
2
-
3
- This document explains how releases and publishing are handled for this repository and how to test or modify the release flow.
4
-
5
- ## Release Please (automated Release PRs)
6
-
7
- **Overview**
8
-
9
- - We use `googleapis/release-please-action` to create Release PRs and tags based on Conventional Commits.
10
-
11
- **One-time setup**
12
-
13
- 1. Create a **Personal Access Token (PAT)** with `repo` (write) permissions and a short expiration.
14
- 2. Add the PAT as a repository secret named `RELEASE_PLEASE_TOKEN` (Repository → Settings → Secrets and variables → Actions → New repository secret).
15
- 3. Confirm branch protection rules allow the PAT or the actor to create tags/releases, or allow the bot account to bypass restrictions where necessary.
16
-
17
- **Testing**
18
-
19
- - Trigger the action manually: GitHub → Actions → _Release Please_ → _Run workflow_ → choose `main` and run.
20
- - A Release PR (usually titled `chore(release): release X.Y.Z`) should be created. Review the changelog and changes in the PR.
21
- - Merge the PR into `main` to create a tag/release. If using a PAT (not `GITHUB_TOKEN`), downstream workflows triggered by `release` events should run normally.
22
-
23
- **Notes**
24
-
25
- - Make sure your commits follow **Conventional Commits** to get meaningful changelogs and correct SemVer bumps.
26
- - If release PRs are not being created, confirm that the `RELEASE_PLEASE_TOKEN` is present and has proper repository permissions.
27
-
28
- ## Publishing to npm (current process)
29
-
30
- - The CI publish step currently expects `NPM_TOKEN` as a repository secret (Stored in repository secrets as `NPM_TOKEN`).
31
- - Publishing is currently automated via GitHub Actions using the `@gv-tech` scope.
32
-
33
- ## Troubleshooting & Tips
34
-
35
- - **Release PR not generated**: Confirm commits use Conventional Commit messages, check action logs, and ensure the PAT is set.
36
- - **Downstream workflows not running on release**: Ensure releases/tags are created with a PAT (not `GITHUB_TOKEN`), otherwise they won't trigger other workflows.
37
- - **Scoped package publishing**: If you plan to publish to a scope (e.g., `@gvtech`), update `package.json.name` and set `publishConfig.access` to `public` for public scoped packages.
@@ -1,61 +0,0 @@
1
- # GVTech Design System - AI Coding Guidelines
2
-
3
- ## Architecture Overview
4
-
5
- This is a React component library built with **TypeScript**, **Tailwind CSS**, and **Radix UI**, using **Vite** for development and bundling. It provides a comprehensive set of accessible UI components based on the shadcn/ui pattern.
6
-
7
- **Key Structure:**
8
-
9
- - `src/components/ui/` - Core UI components (primitive components)
10
- - `src/lib/utils.ts` - Shared utilities (e.g., `cn` for Tailwind merging)
11
- - `src/index.ts` - Library entry point exporting public components
12
- - `src/App.tsx` - Playground application used for development and documentation
13
-
14
- **Build System:**
15
-
16
- - Vite library build outputs ES modules and CommonJS.
17
- - Externalizes **React** and **React DOM**.
18
- - Use `yarn build` to build both the library and the component registry.
19
- - Use `yarn build:site` to build the playground/documentation site.
20
-
21
- ## Component Patterns
22
-
23
- **Styling:** Use **Tailwind CSS** utility classes. For complex conditional classes, use the `cn()` utility.
24
-
25
- ```tsx
26
- import { cn } from '@/lib/utils';
27
-
28
- export function MyComponent({ className, ...props }) {
29
- return <div className={cn('bg-background text-foreground p-4', className)} {...props} />;
30
- }
31
- ```
32
-
33
- **Props & Types:**
34
-
35
- - Use TypeScript `interface` or `type` for component props.
36
- - Extend standard HTML attributes where appropriate (e.g., `React.ButtonHTMLAttributes<HTMLButtonElement>`).
37
- - Use `React.forwardRef` for components that need to expose their underlying DOM element.
38
-
39
- ## Development Workflow
40
-
41
- - **Local dev:** `yarn dev` (runs the Vite playground site)
42
- - **Build lib:** `yarn build` (outputs to `dist/` and `public/registry/`)
43
- - **Build site:** `yarn build:site` (outputs to `dist-site/`)
44
- - **Test:** `yarn test` (Vitest with jsdom)
45
- - **Lint:** `yarn lint` (ESLint)
46
- - **Format:** `yarn format` (Prettier)
47
-
48
- **Testing Setup:**
49
-
50
- - Uses `@testing-library/react` and `@testing-library/jest-dom`.
51
- - Tests are co-located with components: `{component}.test.tsx`.
52
- - Run `yarn test:ci` for CI environments.
53
-
54
- ## Integration Points
55
-
56
- - **Vite:** Handles development, site building, and library bundling.
57
- - **Cloudflare Pages:** Primary deployment target for the playground site: [https://gvtech-design.pages.dev/](https://gvtech-design.pages.dev/) (configured via `wrangler.toml`).
58
- - **ESLint + Prettier:** Code quality and formatting.
59
- - **Husky:** Git hooks for pre-commit checks.
60
-
61
- Reference existing components in `src/components/ui/` for implementation patterns.
@@ -1,91 +0,0 @@
1
- name: CI
2
-
3
- on: [push, pull_request]
4
-
5
- jobs:
6
- fossa-scan:
7
- runs-on: ubuntu-latest
8
- steps:
9
- - name: "Checkout Code"
10
- uses: actions/checkout@v6
11
-
12
- - name: "Run FOSSA Scan"
13
- uses: fossas/fossa-action@main # Use a specific version if locking is preferred
14
- with:
15
- api-key: ${{ secrets.FOSSA_API_KEY }}
16
-
17
- test:
18
- runs-on: ubuntu-latest
19
- strategy:
20
- matrix:
21
- node: ["22", "24"]
22
- steps:
23
- - uses: actions/checkout@v6
24
- - name: Use Node.js ${{ matrix.node }}
25
- uses: actions/setup-node@v6
26
- with:
27
- node-version: ${{ matrix.node }}
28
- cache: "yarn"
29
-
30
- - name: Cache Yarn (optional extra)
31
- uses: actions/cache@v4
32
- with:
33
- path: |
34
- .yarn/cache
35
- .yarn/unplugged
36
- .yarn/build-state.yml
37
- .yarn/install-state.gz
38
- key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
39
- restore-keys: |
40
- ${{ runner.os }}-yarn-
41
-
42
- - name: Install dependencies
43
- run: yarn install
44
-
45
- - name: Restore Nx Cache
46
- uses: actions/cache@v4
47
- with:
48
- path: .nx/cache
49
- key: ${{ runner.os }}-nx-${{ matrix.node }}-${{ hashFiles('yarn.lock') }}-${{ github.sha }}
50
- restore-keys: |
51
- ${{ runner.os }}-nx-${{ matrix.node }}-${{ hashFiles('yarn.lock') }}-
52
- ${{ runner.os }}-nx-${{ matrix.node }}-
53
-
54
- - name: Format
55
- run: yarn format:ci
56
-
57
- - name: Lint
58
- run: yarn lint
59
-
60
- - name: Run Tests
61
- run: yarn test:ci
62
-
63
- build:
64
- runs-on: ubuntu-latest
65
- needs: [test]
66
- steps:
67
- - uses: actions/checkout@v6
68
-
69
- - name: Use Node.js 24
70
- uses: actions/setup-node@v6
71
- with:
72
- node-version: 24
73
- cache: "yarn"
74
-
75
- - name: Install dependencies
76
- run: yarn install --immutable
77
-
78
- - name: Restore Nx Cache
79
- uses: actions/cache@v4
80
- with:
81
- path: .nx/cache
82
- key: ${{ runner.os }}-nx-24-${{ hashFiles('yarn.lock') }}-${{ github.sha }}
83
- restore-keys: |
84
- ${{ runner.os }}-nx-24-${{ hashFiles('yarn.lock') }}-
85
- ${{ runner.os }}-nx-24-
86
-
87
- - name: Build Library
88
- run: yarn build
89
-
90
- - name: Build Site
91
- run: yarn build:site
@@ -1,34 +0,0 @@
1
- name: "CodeQL"
2
-
3
- on:
4
- push:
5
- branches: [main]
6
- pull_request:
7
- branches: [main]
8
- schedule:
9
- - cron: "34 7 * * 4"
10
-
11
- jobs:
12
- analyze:
13
- name: Analyze
14
- runs-on: ubuntu-latest
15
-
16
- strategy:
17
- fail-fast: false
18
- matrix:
19
- language: ["javascript"]
20
-
21
- steps:
22
- - name: Checkout repository
23
- uses: actions/checkout@v4
24
-
25
- - name: Initialize CodeQL
26
- uses: github/codeql-action/init@v2
27
- with:
28
- languages: ${{ matrix.language }}
29
-
30
- - name: Autobuild
31
- uses: github/codeql-action/autobuild@v2
32
-
33
- - name: Perform CodeQL Analysis
34
- uses: github/codeql-action/analyze@v2
@@ -1,79 +0,0 @@
1
- name: Release Please
2
-
3
- on:
4
- push:
5
- branches: [main]
6
- workflow_dispatch:
7
-
8
- permissions:
9
- id-token: write # For OIDC trusted publishing
10
- contents: write # For tags and releases
11
- pull-requests: write # For creating release PRs
12
-
13
- jobs:
14
- release:
15
- runs-on: ubuntu-latest
16
- steps:
17
- - name: Checkout
18
- uses: actions/checkout@v6
19
-
20
- - name: Run release-please
21
- id: release
22
- uses: googleapis/release-please-action@v4.4
23
- with:
24
- manifest-file: .release-please-manifest.json
25
- config-file: release-please-config.json
26
- token: ${{ secrets.RELEASE_PLEASE_TOKEN }}
27
-
28
- - name: Show notice
29
- run: echo "If a release PR is created, review and merge it to create a tag/release."
30
-
31
- - name: Checkout Code
32
- if: ${{ steps.release.outputs.releases_created }}
33
- uses: actions/checkout@v6
34
-
35
- - name: Use Node.js 24
36
- if: ${{ steps.release.outputs.releases_created }}
37
- uses: actions/setup-node@v6
38
- with:
39
- node-version: 24
40
- registry-url: "https://registry.npmjs.org"
41
- cache: "yarn"
42
-
43
- - name: Install dependencies
44
- if: ${{ steps.release.outputs.releases_created }}
45
- run: yarn install --immutable
46
-
47
- - name: Build
48
- if: ${{ steps.release.outputs.releases_created }}
49
- run: yarn build
50
-
51
- - name: Publish to npm
52
- if: ${{ steps.release.outputs.releases_created }}
53
- env:
54
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
55
- run: |
56
- # Iterate over each released package path
57
- echo '${{ steps.release.outputs.paths_released }}' | jq -r '.[]' | while read -r path; do
58
- echo "--- Publishing package at: $path ---"
59
- cd "$path"
60
-
61
- # Skip if the package is private
62
- if jq -e '.private == true' package.json > /dev/null; then
63
- echo "Skipping private package: $(jq -r '.name' package.json)"
64
- cd - > /dev/null
65
- continue
66
- fi
67
-
68
- # Build the package if a build script exists
69
- if jq -e '.scripts.build' package.json > /dev/null; then
70
- echo "Building $(jq -r '.name' package.json)..."
71
- yarn build
72
- fi
73
-
74
- # Publish to npm
75
- echo "Publishing $(jq -r '.name' package.json)..."
76
- npm publish --provenance --access public
77
-
78
- cd - > /dev/null
79
- done
package/.husky/pre-commit DELETED
@@ -1 +0,0 @@
1
- npx lint-staged
package/.prettierignore DELETED
@@ -1,3 +0,0 @@
1
- CHANGELOG.md
2
- .yarn
3
- dist-site
@@ -1,9 +0,0 @@
1
- {
2
- ".": "2.5.0",
3
- "packages/ui-web": "0.1.0",
4
- "packages/ui-native": "0.1.0",
5
- "packages/ui-core": "0.1.0",
6
- "packages/design-tokens": "0.1.0",
7
- "apps/playground-web": "0.1.0",
8
- "apps/native-playground": "0.1.0"
9
- }
package/.tool-versions DELETED
@@ -1 +0,0 @@
1
- nodejs 24.13.1
@@ -1,22 +0,0 @@
1
- {
2
- // Use IntelliSense to learn about possible attributes.
3
- // Hover to view descriptions of existing attributes.
4
- // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5
- "version": "0.2.0",
6
- "configurations": [
7
- {
8
- "type": "chrome",
9
- "request": "launch",
10
- "name": "React app",
11
- "url": "http://localhost:3000",
12
- "webRoot": "${workspaceFolder}"
13
- },
14
- {
15
- "type": "chrome",
16
- "request": "launch",
17
- "name": "Storybook",
18
- "url": "http://localhost:6006",
19
- "webRoot": "${workspaceFolder}"
20
- }
21
- ]
22
- }
package/.vscode/mcp.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "servers": {
3
- "shadcn": {
4
- "command": "npx",
5
- "args": ["shadcn@latest", "mcp"]
6
- }
7
- }
8
- }