@fabio.caffarello/react-design-system 1.23.17 → 2.0.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 (147) hide show
  1. package/README.md +4 -13
  2. package/dist/index.cjs +204 -375
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.js +7399 -6914
  5. package/dist/index.js.map +1 -1
  6. package/dist/react-design-system.css +1 -1
  7. package/dist/ui/components/Accordion/Accordion.d.ts +1 -1
  8. package/dist/ui/components/Autocomplete/Autocomplete.d.ts +0 -1
  9. package/dist/ui/components/Autocomplete/AutocompleteList.d.ts +1 -1
  10. package/dist/ui/components/Autocomplete/index.d.ts +1 -1
  11. package/dist/ui/components/Breadcrumb/Breadcrumb.d.ts +1 -1
  12. package/dist/ui/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  13. package/dist/ui/components/Card/Card.d.ts +1 -1
  14. package/dist/ui/components/ColorPicker/ColorPicker.d.ts +1 -1
  15. package/dist/ui/components/CommandPalette/CommandPalette.d.ts +1 -1
  16. package/dist/ui/components/DashboardLayout/DashboardLayout.d.ts +1 -1
  17. package/dist/ui/components/DataGrid/DataGrid.d.ts +27 -4
  18. package/dist/ui/components/DataTablePattern/DataTablePattern.d.ts +1 -1
  19. package/dist/ui/components/DatePicker/DatePicker.d.ts +4 -4
  20. package/dist/ui/components/DatePicker/DatePickerCalendar.d.ts +1 -1
  21. package/dist/ui/components/DatePicker/DatePickerInput.d.ts +1 -1
  22. package/dist/ui/components/DatePicker/DatePickerProvider.d.ts +1 -1
  23. package/dist/ui/components/Dialog/AlertDialog.d.ts +1 -1
  24. package/dist/ui/components/Dialog/Dialog.d.ts +1 -1
  25. package/dist/ui/components/Dialog/DialogClose.d.ts +6 -2
  26. package/dist/ui/components/Dialog/DialogContent.d.ts +1 -1
  27. package/dist/ui/components/Dialog/DialogDescription.d.ts +1 -1
  28. package/dist/ui/components/Dialog/DialogFooter.d.ts +1 -1
  29. package/dist/ui/components/Dialog/DialogHeader.d.ts +1 -1
  30. package/dist/ui/components/Dialog/DialogTitle.d.ts +1 -1
  31. package/dist/ui/components/Dialog/DialogTrigger.d.ts +6 -2
  32. package/dist/ui/components/Drawer/Drawer.d.ts +1 -1
  33. package/dist/ui/components/Drawer/DrawerContext.d.ts +1 -1
  34. package/dist/ui/components/Drawer/DrawerFooter.d.ts +1 -1
  35. package/dist/ui/components/Drawer/DrawerHeader.d.ts +1 -1
  36. package/dist/ui/components/Dropdown/Dropdown.d.ts +2 -1
  37. package/dist/ui/components/EmptyState/EmptyState.d.ts +1 -1
  38. package/dist/ui/components/FileUpload/FileUpload.d.ts +1 -1
  39. package/dist/ui/components/Form/Form.d.ts +1 -1
  40. package/dist/ui/components/Form/FormContext.d.ts +15 -4
  41. package/dist/ui/components/Form/FormField.d.ts +3 -3
  42. package/dist/ui/components/Form/FormProvider.d.ts +1 -1
  43. package/dist/ui/components/Form/useFormFieldArray.d.ts +2 -2
  44. package/dist/ui/components/FormWizardPattern/FormWizardPattern.d.ts +1 -1
  45. package/dist/ui/components/Header/Header.d.ts +1 -1
  46. package/dist/ui/components/Header/components/HeaderActions.d.ts +1 -1
  47. package/dist/ui/components/Header/components/HeaderHamburger.d.ts +2 -2
  48. package/dist/ui/components/Header/components/HeaderLogo.d.ts +1 -1
  49. package/dist/ui/components/Header/components/HeaderMobileMenu.d.ts +1 -1
  50. package/dist/ui/components/Header/components/HeaderNavigation.d.ts +1 -1
  51. package/dist/ui/components/Header/contexts/HeaderContext.d.ts +1 -1
  52. package/dist/ui/components/LoginBox/LoginBox.d.ts +1 -1
  53. package/dist/ui/components/Menu/Menu.d.ts +1 -1
  54. package/dist/ui/components/Menu/MenuContext.d.ts +1 -1
  55. package/dist/ui/components/Menu/MenuSeparator.d.ts +1 -1
  56. package/dist/ui/components/Modal/Modal.d.ts +1 -1
  57. package/dist/ui/components/Navigation/Navigation.d.ts +1 -1
  58. package/dist/ui/components/PageHeader/PageHeader.d.ts +1 -1
  59. package/dist/ui/components/Pagination/Pagination.d.ts +1 -1
  60. package/dist/ui/components/Popover/Popover.d.ts +1 -1
  61. package/dist/ui/components/Rating/Rating.d.ts +1 -1
  62. package/dist/ui/components/SearchAndFilterPattern/SearchAndFilterPattern.d.ts +1 -1
  63. package/dist/ui/components/SearchInput/SearchInput.d.ts +1 -1
  64. package/dist/ui/components/SideNavbar/SideNavbar.d.ts +1 -1
  65. package/dist/ui/components/SideNavbar/components/Navbar/Navbar.d.ts +2 -1
  66. package/dist/ui/components/SideNavbar/components/Navbar/NavbarGroup.d.ts +1 -1
  67. package/dist/ui/components/SideNavbar/components/Navbar/NavbarItem.d.ts +2 -1
  68. package/dist/ui/components/SideNavbar/components/Navbar/NavbarSeparator.d.ts +1 -1
  69. package/dist/ui/components/SideNavbar/components/Navbar/NavbarToggle.d.ts +1 -1
  70. package/dist/ui/components/SideNavbar/components/SideNavbarBackdrop.d.ts +1 -1
  71. package/dist/ui/components/SideNavbar/components/SideNavbarGroup.d.ts +1 -1
  72. package/dist/ui/components/SideNavbar/components/SideNavbarResizeHandle.d.ts +1 -1
  73. package/dist/ui/components/SideNavbar/components/SideNavbarRoot.d.ts +2 -1
  74. package/dist/ui/components/SideNavbar/components/SideNavbarToggle.d.ts +1 -1
  75. package/dist/ui/components/SideNavbar/components/Sidebar/Sidebar.d.ts +1 -1
  76. package/dist/ui/components/SideNavbar/components/Sidebar/SidebarContent.d.ts +2 -1
  77. package/dist/ui/components/SideNavbar/components/Sidebar/SidebarFooter.d.ts +1 -1
  78. package/dist/ui/components/SideNavbar/components/Sidebar/SidebarGroup.d.ts +1 -1
  79. package/dist/ui/components/SideNavbar/components/Sidebar/SidebarHeader.d.ts +1 -1
  80. package/dist/ui/components/SideNavbar/components/Sidebar/SidebarSlot.d.ts +1 -1
  81. package/dist/ui/components/SideNavbar/components/Sidebar/SidebarSlotContent.d.ts +1 -1
  82. package/dist/ui/components/SideNavbar/hooks/useSideNavbar.d.ts +3 -3
  83. package/dist/ui/components/SideNavbar/providers/SideNavbarConfigProvider.d.ts +1 -1
  84. package/dist/ui/components/SideNavbar/providers/SideNavbarProvider.d.ts +1 -1
  85. package/dist/ui/components/SideNavbar/providers/SideNavbarStateProvider.d.ts +1 -1
  86. package/dist/ui/components/SideNavbar/providers/SideNavbarThemeProvider.d.ts +1 -1
  87. package/dist/ui/components/SideNavbar/providers/SidebarSlotProvider.d.ts +1 -1
  88. package/dist/ui/components/SideNavbar/types/index.d.ts +31 -3
  89. package/dist/ui/components/Stepper/Stepper.d.ts +1 -1
  90. package/dist/ui/components/Table/Table.d.ts +1 -1
  91. package/dist/ui/components/Table/TableActions/TableActions.d.ts +1 -1
  92. package/dist/ui/components/Table/TableActions.d.ts +1 -1
  93. package/dist/ui/components/Table/TableBody.d.ts +2 -2
  94. package/dist/ui/components/Table/TableCell.d.ts +1 -1
  95. package/dist/ui/components/Table/TableContext.d.ts +20 -2
  96. package/dist/ui/components/Table/TableEmptyState.d.ts +1 -1
  97. package/dist/ui/components/Table/TableFilters/TableFilters.d.ts +1 -1
  98. package/dist/ui/components/Table/TableFilters.d.ts +1 -1
  99. package/dist/ui/components/Table/TableHeader.d.ts +1 -1
  100. package/dist/ui/components/Table/TableHeaderCell.d.ts +1 -1
  101. package/dist/ui/components/Table/TableHeaderRow.d.ts +1 -1
  102. package/dist/ui/components/Table/TablePagination/TablePagination.d.ts +1 -1
  103. package/dist/ui/components/Table/TablePagination.d.ts +1 -1
  104. package/dist/ui/components/Table/TableProvider.d.ts +1 -1
  105. package/dist/ui/components/Table/TableRow.d.ts +1 -1
  106. package/dist/ui/components/Tabs/TabsContent.d.ts +1 -1
  107. package/dist/ui/components/Tabs/TabsList.d.ts +12 -3
  108. package/dist/ui/components/Tabs/TabsProvider.d.ts +1 -1
  109. package/dist/ui/components/Tabs/TabsTrigger.d.ts +1 -1
  110. package/dist/ui/components/TimePicker/TimePicker.d.ts +1 -1
  111. package/dist/ui/components/Timeline/Timeline.d.ts +1 -1
  112. package/dist/ui/components/Toast/Toast.d.ts +1 -1
  113. package/dist/ui/components/Toast/ToastContainer.d.ts +1 -1
  114. package/dist/ui/components/index.d.ts +1 -1
  115. package/dist/ui/hooks/createGenericContext.d.ts +85 -0
  116. package/dist/ui/hooks/focusable.d.ts +33 -0
  117. package/dist/ui/hooks/useAutoFocus.d.ts +37 -0
  118. package/dist/ui/hooks/useFocusRestore.d.ts +28 -0
  119. package/dist/ui/hooks/useFocusTrap.d.ts +33 -0
  120. package/dist/ui/primitives/Avatar/AvatarGroup.d.ts +1 -1
  121. package/dist/ui/primitives/Checkbox/Checkbox.d.ts +9 -0
  122. package/dist/ui/primitives/Collapsible/Collapsible.d.ts +8 -2
  123. package/dist/ui/primitives/ErrorMessage/ErrorMessage.d.ts +1 -1
  124. package/dist/ui/primitives/Info/Info.d.ts +1 -1
  125. package/dist/ui/primitives/NavLink/NavLink.d.ts +12 -1
  126. package/dist/ui/primitives/Radio/Radio.d.ts +9 -0
  127. package/dist/ui/primitives/Separator/Separator.d.ts +1 -1
  128. package/dist/ui/primitives/Skeleton/Skeleton.d.ts +1 -1
  129. package/dist/ui/primitives/Spinner/Spinner.d.ts +1 -1
  130. package/dist/ui/primitives/Switch/Switch.d.ts +16 -2
  131. package/dist/ui/primitives/Text/Text.d.ts +0 -1
  132. package/dist/ui/primitives/Textarea/Textarea.d.ts +18 -0
  133. package/dist/ui/primitives/Tooltip/Tooltip.d.ts +2 -1
  134. package/dist/ui/providers/AppProvider.d.ts +1 -1
  135. package/dist/ui/providers/ConfigProvider.d.ts +1 -1
  136. package/dist/ui/providers/DialogProvider.d.ts +1 -1
  137. package/dist/ui/providers/ThemeProvider.d.ts +1 -1
  138. package/dist/ui/providers/ToastProvider.d.ts +1 -1
  139. package/dist/ui/tokens/TokenVisualizations.d.ts +8 -8
  140. package/dist/ui/tokens/spacing.d.ts +1 -1
  141. package/dist/ui/utils/index.d.ts +1 -0
  142. package/dist/ui/utils/mergeRefs.d.ts +16 -0
  143. package/package.json +56 -35
  144. package/dist/ui/components/Dialog/DialogContext.d.ts +0 -10
  145. package/dist/ui/components/Dialog/DialogProvider.d.ts +0 -10
  146. package/dist/ui/components/Toast/ToastContext.d.ts +0 -21
  147. package/dist/ui/components/Toast/ToastProvider.d.ts +0 -7
package/README.md CHANGED
@@ -12,7 +12,7 @@ npm install @fabio.caffarello/react-design-system
12
12
 
13
13
  ## Usage
14
14
 
15
- Import components and the bundled stylesheet. No Tailwind setup required in your project — the DS ships the full token cascade (tokens, dark mode, theme variants) in one CSS file.
15
+ Import components and the bundled stylesheet. No Tailwind setup required in your project — the DS ships the full token cascade (tokens, light/dark theme overrides) in one CSS file.
16
16
 
17
17
  ```tsx
18
18
  import { Button, Card, Form } from "@fabio.caffarello/react-design-system";
@@ -58,16 +58,6 @@ Class-based opt-in works too:
58
58
  </html>
59
59
  ```
60
60
 
61
- ### Theme variants
62
-
63
- Beyond light/dark, the DS ships three style variants — `creative`, `minimal`, `tech`. Apply via `data-variant` attribute or `variant-<name>` class. Variants compose with the light/dark mode, so a `creative` variant in dark mode is its own coherent surface.
64
-
65
- ```html
66
- <html data-variant="creative">
67
- ...
68
- </html>
69
- ```
70
-
71
61
  ## Stack
72
62
 
73
63
  - React 19 + TypeScript 5 (strict)
@@ -100,7 +90,7 @@ Do not reintroduce atoms/molecules/organisms/templates/patterns layers. Three la
100
90
 
101
91
  ## Hard rules (enforced via `.claude/rules/`)
102
92
 
103
- - Every component ships with `.tsx`, `.test.tsx`, `.stories.tsx`, `index.ts`.
93
+ - Every component ships with `.tsx`, `.test.tsx`, `.accessibility.test.tsx`, `.stories.tsx`, `index.ts`.
104
94
  - Zero `any`. Props typed explicitly and exported.
105
95
  - Styling via tokens / Tailwind only. No hardcoded hex / px in components.
106
96
  - WCAG 2.1 AA: keyboard navigation, ARIA, focus management.
@@ -117,7 +107,8 @@ npm run lint # eslint
117
107
  npm run build # library build (tsc + vite)
118
108
  npm run build-storybook # static storybook
119
109
  npm run storybook:smoke # runtime smoke-test all stories
120
- npm run test:a11y:baseline # serial axe baseline (light + dark, ~96min)
110
+ npm run test:a11y:baseline # serial axe baseline (light + dark, ~11min on local SSD)
111
+ node scripts/validate-a11y-baseline.mjs # gate: exits 1 if critical+serious>0 on either theme
121
112
  npm run plop # scaffold a new component
122
113
  ```
123
114