@portnet/ui 6.0.2 → 6.0.3

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 (980) hide show
  1. package/CHANGELOG.md +652 -0
  2. package/dist/esm/index.js +72 -3
  3. package/dist/esm/index.js.map +1 -1
  4. package/dist/esm/v2/__tests__/AppMain.test.js +130 -0
  5. package/dist/esm/v2/__tests__/AppMain.test.js.map +1 -0
  6. package/dist/esm/v2/__tests__/ChartFigure.test.js +180 -0
  7. package/dist/esm/v2/__tests__/ChartFigure.test.js.map +1 -0
  8. package/dist/esm/v2/__tests__/DataGridRowActionsPropagation.test.js +150 -0
  9. package/dist/esm/v2/__tests__/DataGridRowActionsPropagation.test.js.map +1 -0
  10. package/dist/esm/v2/__tests__/DrawerTactileTargets.test.js +93 -0
  11. package/dist/esm/v2/__tests__/DrawerTactileTargets.test.js.map +1 -0
  12. package/dist/esm/v2/__tests__/FieldError.test.js +71 -38
  13. package/dist/esm/v2/__tests__/FieldError.test.js.map +1 -1
  14. package/dist/esm/v2/__tests__/FieldNaming.test.js +160 -0
  15. package/dist/esm/v2/__tests__/FieldNaming.test.js.map +1 -0
  16. package/dist/esm/v2/__tests__/FieldWidth.test.js +11 -11
  17. package/dist/esm/v2/__tests__/FieldWidth.test.js.map +1 -1
  18. package/dist/esm/v2/__tests__/FileCard.test.js +18 -17
  19. package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -1
  20. package/dist/esm/v2/__tests__/FormikCheckbox.test.js +87 -179
  21. package/dist/esm/v2/__tests__/FormikCheckbox.test.js.map +1 -1
  22. package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js +32 -44
  23. package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js.map +1 -1
  24. package/dist/esm/v2/__tests__/FormikDisplayWidth.test.js +101 -0
  25. package/dist/esm/v2/__tests__/FormikDisplayWidth.test.js.map +1 -0
  26. package/dist/esm/v2/__tests__/FormikRadioGroup.test.js +118 -199
  27. package/dist/esm/v2/__tests__/FormikRadioGroup.test.js.map +1 -1
  28. package/dist/esm/v2/__tests__/MobileRowCard.test.js +44 -42
  29. package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -1
  30. package/dist/esm/v2/__tests__/PreviewDrawer.test.js +165 -0
  31. package/dist/esm/v2/__tests__/PreviewDrawer.test.js.map +1 -0
  32. package/dist/esm/v2/__tests__/ReferentielFieldContainer.test.js +156 -0
  33. package/dist/esm/v2/__tests__/ReferentielFieldContainer.test.js.map +1 -0
  34. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +37 -52
  35. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -1
  36. package/dist/esm/v2/__tests__/apiError.test.js +50 -69
  37. package/dist/esm/v2/__tests__/apiError.test.js.map +1 -1
  38. package/dist/esm/v2/__tests__/banned-patterns.test.js +41 -122
  39. package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -1
  40. package/dist/esm/v2/__tests__/chart-palette.test.js +204 -0
  41. package/dist/esm/v2/__tests__/chart-palette.test.js.map +1 -0
  42. package/dist/esm/v2/__tests__/contrast-palette.test.js +42 -74
  43. package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -1
  44. package/dist/esm/v2/__tests__/cssVariables.test.js +44 -51
  45. package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -1
  46. package/dist/esm/v2/__tests__/fileValidation.test.js +134 -0
  47. package/dist/esm/v2/__tests__/fileValidation.test.js.map +1 -0
  48. package/dist/esm/v2/__tests__/filterCriteria.test.js +321 -0
  49. package/dist/esm/v2/__tests__/filterCriteria.test.js.map +1 -0
  50. package/dist/esm/v2/__tests__/fmtDate.test.js +68 -0
  51. package/dist/esm/v2/__tests__/fmtDate.test.js.map +1 -0
  52. package/dist/esm/v2/__tests__/gap-leakage-refonte.test.js +218 -0
  53. package/dist/esm/v2/__tests__/gap-leakage-refonte.test.js.map +1 -0
  54. package/dist/esm/v2/__tests__/labels-merge.test.js +17 -21
  55. package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -1
  56. package/dist/esm/v2/__tests__/locale-fallback.test.js +35 -40
  57. package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -1
  58. package/dist/esm/v2/__tests__/reviveSavedCriteria.test.js +143 -0
  59. package/dist/esm/v2/__tests__/reviveSavedCriteria.test.js.map +1 -0
  60. package/dist/esm/v2/__tests__/rowActions.test.js +182 -0
  61. package/dist/esm/v2/__tests__/rowActions.test.js.map +1 -0
  62. package/dist/esm/v2/__tests__/useFocusOnRouteChange.test.js +155 -0
  63. package/dist/esm/v2/__tests__/useFocusOnRouteChange.test.js.map +1 -0
  64. package/dist/esm/v2/__tests__/useFocusTrap.test.js +266 -402
  65. package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -1
  66. package/dist/esm/v2/__tests__/usePrefersReducedMotion.test.js +120 -0
  67. package/dist/esm/v2/__tests__/usePrefersReducedMotion.test.js.map +1 -0
  68. package/dist/esm/v2/components/Accordion.js +48 -70
  69. package/dist/esm/v2/components/Accordion.js.map +1 -1
  70. package/dist/esm/v2/components/ActionStrip.js +31 -43
  71. package/dist/esm/v2/components/ActionStrip.js.map +1 -1
  72. package/dist/esm/v2/components/Banner.js +25 -22
  73. package/dist/esm/v2/components/Banner.js.map +1 -1
  74. package/dist/esm/v2/components/Busy.js +14 -19
  75. package/dist/esm/v2/components/Busy.js.map +1 -1
  76. package/dist/esm/v2/components/Button.js +34 -45
  77. package/dist/esm/v2/components/Button.js.map +1 -1
  78. package/dist/esm/v2/components/CategoryTag.js +44 -27
  79. package/dist/esm/v2/components/CategoryTag.js.map +1 -1
  80. package/dist/esm/v2/components/Checkbox.js +32 -38
  81. package/dist/esm/v2/components/Checkbox.js.map +1 -1
  82. package/dist/esm/v2/components/Chip.js +23 -36
  83. package/dist/esm/v2/components/Chip.js.map +1 -1
  84. package/dist/esm/v2/components/Combobox.js +112 -136
  85. package/dist/esm/v2/components/Combobox.js.map +1 -1
  86. package/dist/esm/v2/components/CommandPalette.js +113 -198
  87. package/dist/esm/v2/components/CommandPalette.js.map +1 -1
  88. package/dist/esm/v2/components/ConfirmDialog.js +36 -45
  89. package/dist/esm/v2/components/ConfirmDialog.js.map +1 -1
  90. package/dist/esm/v2/components/DatePicker.js +78 -81
  91. package/dist/esm/v2/components/DatePicker.js.map +1 -1
  92. package/dist/esm/v2/components/DateRangePicker.js +63 -74
  93. package/dist/esm/v2/components/DateRangePicker.js.map +1 -1
  94. package/dist/esm/v2/components/DateTimePicker.js +81 -86
  95. package/dist/esm/v2/components/DateTimePicker.js.map +1 -1
  96. package/dist/esm/v2/components/Drawer.js +71 -65
  97. package/dist/esm/v2/components/Drawer.js.map +1 -1
  98. package/dist/esm/v2/components/Dropzone.js +130 -177
  99. package/dist/esm/v2/components/Dropzone.js.map +1 -1
  100. package/dist/esm/v2/components/EmptyState.js +9 -9
  101. package/dist/esm/v2/components/EmptyState.js.map +1 -1
  102. package/dist/esm/v2/components/FavoriteToggle.js +24 -33
  103. package/dist/esm/v2/components/FavoriteToggle.js.map +1 -1
  104. package/dist/esm/v2/components/Field.js +155 -59
  105. package/dist/esm/v2/components/Field.js.map +1 -1
  106. package/dist/esm/v2/components/FieldError.js +9 -13
  107. package/dist/esm/v2/components/FieldError.js.map +1 -1
  108. package/dist/esm/v2/components/FieldHelp.js +28 -49
  109. package/dist/esm/v2/components/FieldHelp.js.map +1 -1
  110. package/dist/esm/v2/components/FileCard.js +14 -19
  111. package/dist/esm/v2/components/FileCard.js.map +1 -1
  112. package/dist/esm/v2/components/FilterTab.js +22 -31
  113. package/dist/esm/v2/components/FilterTab.js.map +1 -1
  114. package/dist/esm/v2/components/ForbiddenPage.js +28 -8
  115. package/dist/esm/v2/components/ForbiddenPage.js.map +1 -1
  116. package/dist/esm/v2/components/FormGrid.js +48 -54
  117. package/dist/esm/v2/components/FormGrid.js.map +1 -1
  118. package/dist/esm/v2/components/FormikDisplay.js +98 -24
  119. package/dist/esm/v2/components/FormikDisplay.js.map +1 -1
  120. package/dist/esm/v2/components/Input.js +75 -34
  121. package/dist/esm/v2/components/Input.js.map +1 -1
  122. package/dist/esm/v2/components/KPICard.js +42 -51
  123. package/dist/esm/v2/components/KPICard.js.map +1 -1
  124. package/dist/esm/v2/components/KPIStrip.js +9 -15
  125. package/dist/esm/v2/components/KPIStrip.js.map +1 -1
  126. package/dist/esm/v2/components/KV.js +16 -23
  127. package/dist/esm/v2/components/KV.js.map +1 -1
  128. package/dist/esm/v2/components/KVGrid.js +15 -23
  129. package/dist/esm/v2/components/KVGrid.js.map +1 -1
  130. package/dist/esm/v2/components/Layout.js +81 -117
  131. package/dist/esm/v2/components/Layout.js.map +1 -1
  132. package/dist/esm/v2/components/MobileRowCard.js +64 -75
  133. package/dist/esm/v2/components/MobileRowCard.js.map +1 -1
  134. package/dist/esm/v2/components/Modal.js +44 -53
  135. package/dist/esm/v2/components/Modal.js.map +1 -1
  136. package/dist/esm/v2/components/NetworkErrorPage.js +28 -11
  137. package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -1
  138. package/dist/esm/v2/components/NotFoundPage.js +28 -9
  139. package/dist/esm/v2/components/NotFoundPage.js.map +1 -1
  140. package/dist/esm/v2/components/NumberInput.js +77 -107
  141. package/dist/esm/v2/components/NumberInput.js.map +1 -1
  142. package/dist/esm/v2/components/OverflowMenu.js +24 -42
  143. package/dist/esm/v2/components/OverflowMenu.js.map +1 -1
  144. package/dist/esm/v2/components/PdfViewer.js +24 -33
  145. package/dist/esm/v2/components/PdfViewer.js.map +1 -1
  146. package/dist/esm/v2/components/ProgressBar.js +28 -36
  147. package/dist/esm/v2/components/ProgressBar.js.map +1 -1
  148. package/dist/esm/v2/components/Radio.js +49 -57
  149. package/dist/esm/v2/components/Radio.js.map +1 -1
  150. package/dist/esm/v2/components/SectionErrorBoundary.js +84 -130
  151. package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -1
  152. package/dist/esm/v2/components/SectionHeader.js +24 -31
  153. package/dist/esm/v2/components/SectionHeader.js.map +1 -1
  154. package/dist/esm/v2/components/Segmented.js +59 -84
  155. package/dist/esm/v2/components/Segmented.js.map +1 -1
  156. package/dist/esm/v2/components/Select.js +100 -138
  157. package/dist/esm/v2/components/Select.js.map +1 -1
  158. package/dist/esm/v2/components/ServerErrorPage.js +27 -10
  159. package/dist/esm/v2/components/ServerErrorPage.js.map +1 -1
  160. package/dist/esm/v2/components/Skeleton.js +81 -96
  161. package/dist/esm/v2/components/Skeleton.js.map +1 -1
  162. package/dist/esm/v2/components/SkipLink.js +6 -7
  163. package/dist/esm/v2/components/SkipLink.js.map +1 -1
  164. package/dist/esm/v2/components/Spinner.js +13 -22
  165. package/dist/esm/v2/components/Spinner.js.map +1 -1
  166. package/dist/esm/v2/components/Status.js +14 -25
  167. package/dist/esm/v2/components/Status.js.map +1 -1
  168. package/dist/esm/v2/components/Stepper.js +68 -71
  169. package/dist/esm/v2/components/Stepper.js.map +1 -1
  170. package/dist/esm/v2/components/Surface.js +25 -44
  171. package/dist/esm/v2/components/Surface.js.map +1 -1
  172. package/dist/esm/v2/components/Switch.js +21 -29
  173. package/dist/esm/v2/components/Switch.js.map +1 -1
  174. package/dist/esm/v2/components/TabPanel.js +84 -0
  175. package/dist/esm/v2/components/TabPanel.js.map +1 -0
  176. package/dist/esm/v2/components/Tabs.js +43 -19
  177. package/dist/esm/v2/components/Tabs.js.map +1 -1
  178. package/dist/esm/v2/components/TelInput.js +75 -108
  179. package/dist/esm/v2/components/TelInput.js.map +1 -1
  180. package/dist/esm/v2/components/Textarea.js +21 -30
  181. package/dist/esm/v2/components/Textarea.js.map +1 -1
  182. package/dist/esm/v2/components/TimePicker.js +59 -69
  183. package/dist/esm/v2/components/TimePicker.js.map +1 -1
  184. package/dist/esm/v2/components/Toast.js +109 -163
  185. package/dist/esm/v2/components/Toast.js.map +1 -1
  186. package/dist/esm/v2/components/Tooltip.js +18 -31
  187. package/dist/esm/v2/components/Tooltip.js.map +1 -1
  188. package/dist/esm/v2/components/_ErrorPageBody.js +6 -5
  189. package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -1
  190. package/dist/esm/v2/components/_pickerShared.js +2 -2
  191. package/dist/esm/v2/components/_pickerShared.js.map +1 -1
  192. package/dist/esm/v2/components/index.js +37 -0
  193. package/dist/esm/v2/components/index.js.map +1 -1
  194. package/dist/esm/v2/hooks/index.js +62 -0
  195. package/dist/esm/v2/hooks/index.js.map +1 -1
  196. package/dist/esm/v2/hooks/useAppliedFilters.js +112 -0
  197. package/dist/esm/v2/hooks/useAppliedFilters.js.map +1 -0
  198. package/dist/esm/v2/hooks/useDebouncedCallback.js +82 -0
  199. package/dist/esm/v2/hooks/useDebouncedCallback.js.map +1 -0
  200. package/dist/esm/v2/hooks/useDelayedFlag.js +5 -19
  201. package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -1
  202. package/dist/esm/v2/hooks/useDensity.js +13 -17
  203. package/dist/esm/v2/hooks/useDensity.js.map +1 -1
  204. package/dist/esm/v2/hooks/useFocusFirstError.js +25 -33
  205. package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -1
  206. package/dist/esm/v2/hooks/useFocusOnRouteChange.js +81 -0
  207. package/dist/esm/v2/hooks/useFocusOnRouteChange.js.map +1 -0
  208. package/dist/esm/v2/hooks/useFocusTrap.js +19 -23
  209. package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -1
  210. package/dist/esm/v2/hooks/useFormAutoSave.js +38 -53
  211. package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -1
  212. package/dist/esm/v2/hooks/useFormCompletionProgress.js +32 -51
  213. package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -1
  214. package/dist/esm/v2/hooks/useKeyboardShortcuts.js +125 -0
  215. package/dist/esm/v2/hooks/useKeyboardShortcuts.js.map +1 -0
  216. package/dist/esm/v2/hooks/usePrefersReducedMotion.js +99 -0
  217. package/dist/esm/v2/hooks/usePrefersReducedMotion.js.map +1 -0
  218. package/dist/esm/v2/hooks/useResolvedDensity.js +2 -10
  219. package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -1
  220. package/dist/esm/v2/hooks/useSortedRows.js +3 -5
  221. package/dist/esm/v2/hooks/useSortedRows.js.map +1 -1
  222. package/dist/esm/v2/hooks/useTabLoading.js +6 -21
  223. package/dist/esm/v2/hooks/useTabLoading.js.map +1 -1
  224. package/dist/esm/v2/index.js +2 -3
  225. package/dist/esm/v2/index.js.map +1 -1
  226. package/dist/esm/v2/modalContext.js +2 -2
  227. package/dist/esm/v2/modalContext.js.map +1 -1
  228. package/dist/esm/v2/models/favorite.js.map +1 -1
  229. package/dist/esm/v2/models/personalization.js.map +1 -1
  230. package/dist/esm/v2/models/referentiel.js.map +1 -1
  231. package/dist/esm/v2/models/savedFilter.js.map +1 -1
  232. package/dist/esm/v2/patterns/ActionBar.js +115 -159
  233. package/dist/esm/v2/patterns/ActionBar.js.map +1 -1
  234. package/dist/esm/v2/patterns/AppMain.js +108 -0
  235. package/dist/esm/v2/patterns/AppMain.js.map +1 -0
  236. package/dist/esm/v2/patterns/BulkActionBar.js +31 -34
  237. package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -1
  238. package/dist/esm/v2/patterns/ChartFigure.js +151 -0
  239. package/dist/esm/v2/patterns/ChartFigure.js.map +1 -0
  240. package/dist/esm/v2/patterns/CollapsibleDataGrid.js +111 -152
  241. package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -1
  242. package/dist/esm/v2/patterns/ColumnsToggle.js +43 -77
  243. package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -1
  244. package/dist/esm/v2/patterns/DataGrid.js +221 -255
  245. package/dist/esm/v2/patterns/DataGrid.js.map +1 -1
  246. package/dist/esm/v2/patterns/DataGridSettingsMenu.js +76 -94
  247. package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -1
  248. package/dist/esm/v2/patterns/DataGridToolbar.js +85 -89
  249. package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -1
  250. package/dist/esm/v2/patterns/DataGridVirtualized.js +141 -182
  251. package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -1
  252. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +26 -30
  253. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
  254. package/dist/esm/v2/patterns/DetailSplit.js +108 -0
  255. package/dist/esm/v2/patterns/DetailSplit.js.map +1 -0
  256. package/dist/esm/v2/patterns/FavoriteColumn.js +15 -17
  257. package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -1
  258. package/dist/esm/v2/patterns/FavoritesFilter.js +30 -39
  259. package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -1
  260. package/dist/esm/v2/patterns/FilterTabBar.js +112 -0
  261. package/dist/esm/v2/patterns/FilterTabBar.js.map +1 -0
  262. package/dist/esm/v2/patterns/FormErrorSummary.js +12 -13
  263. package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -1
  264. package/dist/esm/v2/patterns/FormPageShell.js +43 -41
  265. package/dist/esm/v2/patterns/FormPageShell.js.map +1 -1
  266. package/dist/esm/v2/patterns/FormSection.js +30 -38
  267. package/dist/esm/v2/patterns/FormSection.js.map +1 -1
  268. package/dist/esm/v2/patterns/FormikCheckbox.js +29 -39
  269. package/dist/esm/v2/patterns/FormikCheckbox.js.map +1 -1
  270. package/dist/esm/v2/patterns/FormikCheckboxGroup.js +56 -60
  271. package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -1
  272. package/dist/esm/v2/patterns/FormikCombobox.js +51 -69
  273. package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -1
  274. package/dist/esm/v2/patterns/FormikDatePicker.js +44 -58
  275. package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -1
  276. package/dist/esm/v2/patterns/FormikDateTimePicker.js +44 -58
  277. package/dist/esm/v2/patterns/FormikDateTimePicker.js.map +1 -1
  278. package/dist/esm/v2/patterns/FormikErrorFocus.js +22 -23
  279. package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -1
  280. package/dist/esm/v2/patterns/FormikErrorSummary.js +89 -0
  281. package/dist/esm/v2/patterns/FormikErrorSummary.js.map +1 -0
  282. package/dist/esm/v2/patterns/FormikFile.js +94 -78
  283. package/dist/esm/v2/patterns/FormikFile.js.map +1 -1
  284. package/dist/esm/v2/patterns/FormikInput.js +40 -53
  285. package/dist/esm/v2/patterns/FormikInput.js.map +1 -1
  286. package/dist/esm/v2/patterns/FormikRadioGroup.js +39 -51
  287. package/dist/esm/v2/patterns/FormikRadioGroup.js.map +1 -1
  288. package/dist/esm/v2/patterns/FormikReferentielField.js +49 -59
  289. package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -1
  290. package/dist/esm/v2/patterns/FormikSelect.js +64 -87
  291. package/dist/esm/v2/patterns/FormikSelect.js.map +1 -1
  292. package/dist/esm/v2/patterns/FormikTextarea.js +30 -46
  293. package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -1
  294. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +53 -71
  295. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
  296. package/dist/esm/v2/patterns/NetworkErrorBanner.js +6 -7
  297. package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -1
  298. package/dist/esm/v2/patterns/PageContent.js +10 -14
  299. package/dist/esm/v2/patterns/PageContent.js.map +1 -1
  300. package/dist/esm/v2/patterns/PreviewDrawer.js +153 -0
  301. package/dist/esm/v2/patterns/PreviewDrawer.js.map +1 -0
  302. package/dist/esm/v2/patterns/ReferentielField.js +327 -312
  303. package/dist/esm/v2/patterns/ReferentielField.js.map +1 -1
  304. package/dist/esm/v2/patterns/RowFavoriteToggle.js +27 -22
  305. package/dist/esm/v2/patterns/RowFavoriteToggle.js.map +1 -1
  306. package/dist/esm/v2/patterns/SaveFilterDialog.js +38 -66
  307. package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -1
  308. package/dist/esm/v2/patterns/SavedFiltersMenu.js +62 -81
  309. package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -1
  310. package/dist/esm/v2/patterns/SkeletonPageShell.js +106 -129
  311. package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -1
  312. package/dist/esm/v2/patterns/SortableHeader.js +22 -45
  313. package/dist/esm/v2/patterns/SortableHeader.js.map +1 -1
  314. package/dist/esm/v2/patterns/Tour.js +94 -120
  315. package/dist/esm/v2/patterns/Tour.js.map +1 -1
  316. package/dist/esm/v2/patterns/_dataGridShared.js +107 -128
  317. package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -1
  318. package/dist/esm/v2/patterns/_pickerSerialisation.js +6 -8
  319. package/dist/esm/v2/patterns/_pickerSerialisation.js.map +1 -1
  320. package/dist/esm/v2/patterns/_sort.js +17 -33
  321. package/dist/esm/v2/patterns/_sort.js.map +1 -1
  322. package/dist/esm/v2/patterns/_useColumnReorder.js +122 -160
  323. package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -1
  324. package/dist/esm/v2/patterns/_useColumnResize.js +78 -96
  325. package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -1
  326. package/dist/esm/v2/patterns/filterCriteria.js +102 -0
  327. package/dist/esm/v2/patterns/filterCriteria.js.map +1 -0
  328. package/dist/esm/v2/patterns/index.js +152 -0
  329. package/dist/esm/v2/patterns/index.js.map +1 -1
  330. package/dist/esm/v2/patterns/rowActions.js +223 -0
  331. package/dist/esm/v2/patterns/rowActions.js.map +1 -0
  332. package/dist/esm/v2/personalization/PersonalizationProvider.js +50 -47
  333. package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -1
  334. package/dist/esm/v2/personalization/adapters/_storageKey.js +5 -5
  335. package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -1
  336. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +22 -23
  337. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
  338. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +13 -13
  339. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
  340. package/dist/esm/v2/personalization/capabilities/favorites.js +36 -60
  341. package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -1
  342. package/dist/esm/v2/personalization/capabilities/favoritesView.js +22 -34
  343. package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -1
  344. package/dist/esm/v2/personalization/capabilities/gridPreferences.js +28 -34
  345. package/dist/esm/v2/personalization/capabilities/gridPreferences.js.map +1 -1
  346. package/dist/esm/v2/personalization/capabilities/reviveSavedCriteria.js +119 -0
  347. package/dist/esm/v2/personalization/capabilities/reviveSavedCriteria.js.map +1 -0
  348. package/dist/esm/v2/personalization/capabilities/savedFilters.js +90 -98
  349. package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -1
  350. package/dist/esm/v2/personalization/createPersonalizationStore.js +78 -181
  351. package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -1
  352. package/dist/esm/v2/personalization/index.js +17 -0
  353. package/dist/esm/v2/personalization/index.js.map +1 -1
  354. package/dist/esm/v2/personalization/personalizationContext.js +9 -9
  355. package/dist/esm/v2/personalization/personalizationContext.js.map +1 -1
  356. package/dist/esm/v2/personalization/schema.js +8 -9
  357. package/dist/esm/v2/personalization/schema.js.map +1 -1
  358. package/dist/esm/v2/referentiel/ReferentielProvider.js +27 -42
  359. package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -1
  360. package/dist/esm/v2/referentiel/types.js +2 -0
  361. package/dist/esm/v2/referentiel/types.js.map +1 -0
  362. package/dist/esm/v2/referentiel/useReferentielClient.js +10 -11
  363. package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -1
  364. package/dist/esm/v2/referentiel/useReferentielOptions.js +60 -117
  365. package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -1
  366. package/dist/esm/v2/referentiel/useReferentielSearch.js +37 -91
  367. package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -1
  368. package/dist/esm/v2/theme/_brand.js +8 -24
  369. package/dist/esm/v2/theme/_brand.js.map +1 -1
  370. package/dist/esm/v2/theme/_brandSecondary.js +8 -24
  371. package/dist/esm/v2/theme/_brandSecondary.js.map +1 -1
  372. package/dist/esm/v2/theme/createPortnetTheme.js +51 -61
  373. package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -1
  374. package/dist/esm/v2/theme/cssVariables.js +62 -69
  375. package/dist/esm/v2/theme/cssVariables.js.map +1 -1
  376. package/dist/esm/v2/theme/index.js +5 -5
  377. package/dist/esm/v2/theme/index.js.map +1 -1
  378. package/dist/esm/v2/tokens/breakpoints.js +14 -14
  379. package/dist/esm/v2/tokens/breakpoints.js.map +1 -1
  380. package/dist/esm/v2/tokens/chart.js +261 -0
  381. package/dist/esm/v2/tokens/chart.js.map +1 -0
  382. package/dist/esm/v2/tokens/colors.js +22 -22
  383. package/dist/esm/v2/tokens/colors.js.map +1 -1
  384. package/dist/esm/v2/tokens/density.js +62 -7
  385. package/dist/esm/v2/tokens/density.js.map +1 -1
  386. package/dist/esm/v2/tokens/index.js +49 -34
  387. package/dist/esm/v2/tokens/index.js.map +1 -1
  388. package/dist/esm/v2/tokens/motion.js +12 -20
  389. package/dist/esm/v2/tokens/motion.js.map +1 -1
  390. package/dist/esm/v2/tokens/radius.js +1 -1
  391. package/dist/esm/v2/tokens/radius.js.map +1 -1
  392. package/dist/esm/v2/tokens/shadows.js +6 -6
  393. package/dist/esm/v2/tokens/shadows.js.map +1 -1
  394. package/dist/esm/v2/tokens/spacing.js +2 -2
  395. package/dist/esm/v2/tokens/spacing.js.map +1 -1
  396. package/dist/esm/v2/tokens/state.js +1 -1
  397. package/dist/esm/v2/tokens/state.js.map +1 -1
  398. package/dist/esm/v2/tokens/statusPalette.js +17 -21
  399. package/dist/esm/v2/tokens/statusPalette.js.map +1 -1
  400. package/dist/esm/v2/tokens/tokens.json +6 -1
  401. package/dist/esm/v2/tokens/typography.js +13 -13
  402. package/dist/esm/v2/tokens/typography.js.map +1 -1
  403. package/dist/esm/v2/tokens/zIndex.js +1 -1
  404. package/dist/esm/v2/tokens/zIndex.js.map +1 -1
  405. package/dist/esm/v2/types/datagrid.js.map +1 -1
  406. package/dist/esm/v2/utils/apiError.js +16 -37
  407. package/dist/esm/v2/utils/apiError.js.map +1 -1
  408. package/dist/esm/v2/utils/contrast.js +31 -32
  409. package/dist/esm/v2/utils/contrast.js.map +1 -1
  410. package/dist/esm/v2/utils/cx.js +5 -25
  411. package/dist/esm/v2/utils/cx.js.map +1 -1
  412. package/dist/esm/v2/utils/fileDownload.js +23 -26
  413. package/dist/esm/v2/utils/fileDownload.js.map +1 -1
  414. package/dist/esm/v2/utils/fileValidation.js +209 -0
  415. package/dist/esm/v2/utils/fileValidation.js.map +1 -0
  416. package/dist/esm/v2/utils/fmtDate.js +111 -0
  417. package/dist/esm/v2/utils/fmtDate.js.map +1 -0
  418. package/dist/esm/v2/utils/fmtMoney.js +8 -10
  419. package/dist/esm/v2/utils/fmtMoney.js.map +1 -1
  420. package/dist/esm/v2/utils/formikErrors.js +78 -0
  421. package/dist/esm/v2/utils/formikErrors.js.map +1 -0
  422. package/dist/esm/v2/utils/index.js +35 -2
  423. package/dist/esm/v2/utils/index.js.map +1 -1
  424. package/dist/esm/v2/utils/mergeLabels.js +7 -12
  425. package/dist/esm/v2/utils/mergeLabels.js.map +1 -1
  426. package/dist/esm/v2/utils/networkStatus.js +12 -12
  427. package/dist/esm/v2/utils/networkStatus.js.map +1 -1
  428. package/dist/index.d.ts +7 -1
  429. package/dist/index.d.ts.map +1 -1
  430. package/dist/index.js +110 -49
  431. package/dist/index.js.map +1 -1
  432. package/dist/v2/__tests__/AppMain.test.js +133 -0
  433. package/dist/v2/__tests__/AppMain.test.js.map +1 -0
  434. package/dist/v2/__tests__/ChartFigure.test.js +183 -0
  435. package/dist/v2/__tests__/ChartFigure.test.js.map +1 -0
  436. package/dist/v2/__tests__/DataGridRowActionsPropagation.test.js +153 -0
  437. package/dist/v2/__tests__/DataGridRowActionsPropagation.test.js.map +1 -0
  438. package/dist/v2/__tests__/DrawerTactileTargets.test.js +94 -0
  439. package/dist/v2/__tests__/DrawerTactileTargets.test.js.map +1 -0
  440. package/dist/v2/__tests__/FieldError.test.js +82 -49
  441. package/dist/v2/__tests__/FieldError.test.js.map +1 -1
  442. package/dist/v2/__tests__/FieldNaming.test.js +161 -0
  443. package/dist/v2/__tests__/FieldNaming.test.js.map +1 -0
  444. package/dist/v2/__tests__/FieldWidth.test.js +23 -25
  445. package/dist/v2/__tests__/FieldWidth.test.js.map +1 -1
  446. package/dist/v2/__tests__/FileCard.test.js +29 -28
  447. package/dist/v2/__tests__/FileCard.test.js.map +1 -1
  448. package/dist/v2/__tests__/FormikCheckbox.test.js +90 -183
  449. package/dist/v2/__tests__/FormikCheckbox.test.js.map +1 -1
  450. package/dist/v2/__tests__/FormikDateTimePicker.test.js +38 -48
  451. package/dist/v2/__tests__/FormikDateTimePicker.test.js.map +1 -1
  452. package/dist/v2/__tests__/FormikDisplayWidth.test.js +102 -0
  453. package/dist/v2/__tests__/FormikDisplayWidth.test.js.map +1 -0
  454. package/dist/v2/__tests__/FormikRadioGroup.test.js +123 -204
  455. package/dist/v2/__tests__/FormikRadioGroup.test.js.map +1 -1
  456. package/dist/v2/__tests__/MobileRowCard.test.js +63 -61
  457. package/dist/v2/__tests__/MobileRowCard.test.js.map +1 -1
  458. package/dist/v2/__tests__/PreviewDrawer.test.js +169 -0
  459. package/dist/v2/__tests__/PreviewDrawer.test.js.map +1 -0
  460. package/dist/v2/__tests__/ReferentielFieldContainer.test.js +159 -0
  461. package/dist/v2/__tests__/ReferentielFieldContainer.test.js.map +1 -0
  462. package/dist/v2/__tests__/SectionErrorBoundary.test.js +53 -68
  463. package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -1
  464. package/dist/v2/__tests__/apiError.test.js +50 -69
  465. package/dist/v2/__tests__/apiError.test.js.map +1 -1
  466. package/dist/v2/__tests__/banned-patterns.test.js +42 -123
  467. package/dist/v2/__tests__/banned-patterns.test.js.map +1 -1
  468. package/dist/v2/__tests__/chart-palette.test.js +205 -0
  469. package/dist/v2/__tests__/chart-palette.test.js.map +1 -0
  470. package/dist/v2/__tests__/contrast-palette.test.js +42 -74
  471. package/dist/v2/__tests__/contrast-palette.test.js.map +1 -1
  472. package/dist/v2/__tests__/cssVariables.test.js +44 -51
  473. package/dist/v2/__tests__/cssVariables.test.js.map +1 -1
  474. package/dist/v2/__tests__/fileValidation.test.js +136 -0
  475. package/dist/v2/__tests__/fileValidation.test.js.map +1 -0
  476. package/dist/v2/__tests__/filterCriteria.test.js +324 -0
  477. package/dist/v2/__tests__/filterCriteria.test.js.map +1 -0
  478. package/dist/v2/__tests__/fmtDate.test.js +69 -0
  479. package/dist/v2/__tests__/fmtDate.test.js.map +1 -0
  480. package/dist/v2/__tests__/gap-leakage-refonte.test.js +221 -0
  481. package/dist/v2/__tests__/gap-leakage-refonte.test.js.map +1 -0
  482. package/dist/v2/__tests__/labels-merge.test.js +23 -27
  483. package/dist/v2/__tests__/labels-merge.test.js.map +1 -1
  484. package/dist/v2/__tests__/locale-fallback.test.js +47 -52
  485. package/dist/v2/__tests__/locale-fallback.test.js.map +1 -1
  486. package/dist/v2/__tests__/reviveSavedCriteria.test.js +144 -0
  487. package/dist/v2/__tests__/reviveSavedCriteria.test.js.map +1 -0
  488. package/dist/v2/__tests__/rowActions.test.js +186 -0
  489. package/dist/v2/__tests__/rowActions.test.js.map +1 -0
  490. package/dist/v2/__tests__/useFocusOnRouteChange.test.js +156 -0
  491. package/dist/v2/__tests__/useFocusOnRouteChange.test.js.map +1 -0
  492. package/dist/v2/__tests__/useFocusTrap.test.js +270 -407
  493. package/dist/v2/__tests__/useFocusTrap.test.js.map +1 -1
  494. package/dist/v2/__tests__/usePrefersReducedMotion.test.js +123 -0
  495. package/dist/v2/__tests__/usePrefersReducedMotion.test.js.map +1 -0
  496. package/dist/v2/components/Accordion.js +60 -82
  497. package/dist/v2/components/Accordion.js.map +1 -1
  498. package/dist/v2/components/ActionStrip.js +40 -52
  499. package/dist/v2/components/ActionStrip.js.map +1 -1
  500. package/dist/v2/components/Banner.js +42 -41
  501. package/dist/v2/components/Banner.js.map +1 -1
  502. package/dist/v2/components/Busy.js +22 -27
  503. package/dist/v2/components/Busy.js.map +1 -1
  504. package/dist/v2/components/Button.js +39 -50
  505. package/dist/v2/components/Button.js.map +1 -1
  506. package/dist/v2/components/CategoryTag.d.ts.map +1 -1
  507. package/dist/v2/components/CategoryTag.js +49 -32
  508. package/dist/v2/components/CategoryTag.js.map +1 -1
  509. package/dist/v2/components/Checkbox.js +39 -45
  510. package/dist/v2/components/Checkbox.js.map +1 -1
  511. package/dist/v2/components/Chip.js +29 -42
  512. package/dist/v2/components/Chip.js.map +1 -1
  513. package/dist/v2/components/Combobox.js +122 -144
  514. package/dist/v2/components/Combobox.js.map +1 -1
  515. package/dist/v2/components/CommandPalette.js +138 -225
  516. package/dist/v2/components/CommandPalette.js.map +1 -1
  517. package/dist/v2/components/ConfirmDialog.js +46 -56
  518. package/dist/v2/components/ConfirmDialog.js.map +1 -1
  519. package/dist/v2/components/DatePicker.js +81 -86
  520. package/dist/v2/components/DatePicker.js.map +1 -1
  521. package/dist/v2/components/DateRangePicker.js +77 -87
  522. package/dist/v2/components/DateRangePicker.js.map +1 -1
  523. package/dist/v2/components/DateTimePicker.js +84 -91
  524. package/dist/v2/components/DateTimePicker.js.map +1 -1
  525. package/dist/v2/components/Drawer.d.ts.map +1 -1
  526. package/dist/v2/components/Drawer.js +93 -88
  527. package/dist/v2/components/Drawer.js.map +1 -1
  528. package/dist/v2/components/Dropzone.js +150 -196
  529. package/dist/v2/components/Dropzone.js.map +1 -1
  530. package/dist/v2/components/EmptyState.js +18 -20
  531. package/dist/v2/components/EmptyState.js.map +1 -1
  532. package/dist/v2/components/FavoriteToggle.js +28 -39
  533. package/dist/v2/components/FavoriteToggle.js.map +1 -1
  534. package/dist/v2/components/Field.d.ts +62 -4
  535. package/dist/v2/components/Field.d.ts.map +1 -1
  536. package/dist/v2/components/Field.js +169 -70
  537. package/dist/v2/components/Field.js.map +1 -1
  538. package/dist/v2/components/FieldError.js +18 -21
  539. package/dist/v2/components/FieldError.js.map +1 -1
  540. package/dist/v2/components/FieldHelp.js +40 -60
  541. package/dist/v2/components/FieldHelp.js.map +1 -1
  542. package/dist/v2/components/FileCard.js +27 -31
  543. package/dist/v2/components/FileCard.js.map +1 -1
  544. package/dist/v2/components/FilterTab.js +30 -38
  545. package/dist/v2/components/FilterTab.js.map +1 -1
  546. package/dist/v2/components/ForbiddenPage.d.ts +25 -1
  547. package/dist/v2/components/ForbiddenPage.d.ts.map +1 -1
  548. package/dist/v2/components/ForbiddenPage.js +37 -17
  549. package/dist/v2/components/ForbiddenPage.js.map +1 -1
  550. package/dist/v2/components/FormGrid.js +53 -59
  551. package/dist/v2/components/FormGrid.js.map +1 -1
  552. package/dist/v2/components/FormikDisplay.d.ts +50 -1
  553. package/dist/v2/components/FormikDisplay.d.ts.map +1 -1
  554. package/dist/v2/components/FormikDisplay.js +108 -33
  555. package/dist/v2/components/FormikDisplay.js.map +1 -1
  556. package/dist/v2/components/Input.d.ts +40 -0
  557. package/dist/v2/components/Input.d.ts.map +1 -1
  558. package/dist/v2/components/Input.js +81 -41
  559. package/dist/v2/components/Input.js.map +1 -1
  560. package/dist/v2/components/KPICard.js +57 -67
  561. package/dist/v2/components/KPICard.js.map +1 -1
  562. package/dist/v2/components/KPIStrip.js +16 -22
  563. package/dist/v2/components/KPIStrip.js.map +1 -1
  564. package/dist/v2/components/KV.js +25 -31
  565. package/dist/v2/components/KV.js.map +1 -1
  566. package/dist/v2/components/KVGrid.js +19 -26
  567. package/dist/v2/components/KVGrid.js.map +1 -1
  568. package/dist/v2/components/Layout.js +91 -120
  569. package/dist/v2/components/Layout.js.map +1 -1
  570. package/dist/v2/components/MobileRowCard.js +79 -91
  571. package/dist/v2/components/MobileRowCard.js.map +1 -1
  572. package/dist/v2/components/Modal.js +61 -69
  573. package/dist/v2/components/Modal.js.map +1 -1
  574. package/dist/v2/components/NetworkErrorPage.d.ts +19 -1
  575. package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -1
  576. package/dist/v2/components/NetworkErrorPage.js +38 -21
  577. package/dist/v2/components/NetworkErrorPage.js.map +1 -1
  578. package/dist/v2/components/NotFoundPage.d.ts +17 -1
  579. package/dist/v2/components/NotFoundPage.d.ts.map +1 -1
  580. package/dist/v2/components/NotFoundPage.js +37 -18
  581. package/dist/v2/components/NotFoundPage.js.map +1 -1
  582. package/dist/v2/components/NumberInput.js +88 -118
  583. package/dist/v2/components/NumberInput.js.map +1 -1
  584. package/dist/v2/components/OverflowMenu.js +38 -56
  585. package/dist/v2/components/OverflowMenu.js.map +1 -1
  586. package/dist/v2/components/PdfViewer.js +34 -45
  587. package/dist/v2/components/PdfViewer.js.map +1 -1
  588. package/dist/v2/components/ProgressBar.js +42 -49
  589. package/dist/v2/components/ProgressBar.js.map +1 -1
  590. package/dist/v2/components/Radio.js +59 -67
  591. package/dist/v2/components/Radio.js.map +1 -1
  592. package/dist/v2/components/SectionErrorBoundary.js +90 -135
  593. package/dist/v2/components/SectionErrorBoundary.js.map +1 -1
  594. package/dist/v2/components/SectionHeader.js +34 -41
  595. package/dist/v2/components/SectionHeader.js.map +1 -1
  596. package/dist/v2/components/Segmented.js +69 -93
  597. package/dist/v2/components/Segmented.js.map +1 -1
  598. package/dist/v2/components/Select.d.ts +26 -2
  599. package/dist/v2/components/Select.d.ts.map +1 -1
  600. package/dist/v2/components/Select.js +120 -155
  601. package/dist/v2/components/Select.js.map +1 -1
  602. package/dist/v2/components/ServerErrorPage.d.ts +27 -1
  603. package/dist/v2/components/ServerErrorPage.d.ts.map +1 -1
  604. package/dist/v2/components/ServerErrorPage.js +37 -20
  605. package/dist/v2/components/ServerErrorPage.js.map +1 -1
  606. package/dist/v2/components/Skeleton.js +86 -100
  607. package/dist/v2/components/Skeleton.js.map +1 -1
  608. package/dist/v2/components/SkipLink.js +9 -12
  609. package/dist/v2/components/SkipLink.js.map +1 -1
  610. package/dist/v2/components/Spinner.js +16 -25
  611. package/dist/v2/components/Spinner.js.map +1 -1
  612. package/dist/v2/components/Status.js +18 -29
  613. package/dist/v2/components/Status.js.map +1 -1
  614. package/dist/v2/components/Stepper.js +80 -82
  615. package/dist/v2/components/Stepper.js.map +1 -1
  616. package/dist/v2/components/Surface.js +34 -49
  617. package/dist/v2/components/Surface.js.map +1 -1
  618. package/dist/v2/components/Switch.js +29 -37
  619. package/dist/v2/components/Switch.js.map +1 -1
  620. package/dist/v2/components/TabPanel.d.ts +17 -0
  621. package/dist/v2/components/TabPanel.d.ts.map +1 -0
  622. package/dist/v2/components/TabPanel.js +90 -0
  623. package/dist/v2/components/TabPanel.js.map +1 -0
  624. package/dist/v2/components/Tabs.d.ts +25 -0
  625. package/dist/v2/components/Tabs.d.ts.map +1 -1
  626. package/dist/v2/components/Tabs.js +53 -29
  627. package/dist/v2/components/Tabs.js.map +1 -1
  628. package/dist/v2/components/TelInput.js +80 -115
  629. package/dist/v2/components/TelInput.js.map +1 -1
  630. package/dist/v2/components/Textarea.js +26 -35
  631. package/dist/v2/components/Textarea.js.map +1 -1
  632. package/dist/v2/components/TimePicker.js +62 -74
  633. package/dist/v2/components/TimePicker.js.map +1 -1
  634. package/dist/v2/components/Toast.js +119 -174
  635. package/dist/v2/components/Toast.js.map +1 -1
  636. package/dist/v2/components/Tooltip.js +23 -38
  637. package/dist/v2/components/Tooltip.js.map +1 -1
  638. package/dist/v2/components/_ErrorPageBody.js +15 -16
  639. package/dist/v2/components/_ErrorPageBody.js.map +1 -1
  640. package/dist/v2/components/_pickerShared.js +5 -5
  641. package/dist/v2/components/_pickerShared.js.map +1 -1
  642. package/dist/v2/components/index.d.ts +40 -1
  643. package/dist/v2/components/index.d.ts.map +1 -1
  644. package/dist/v2/components/index.js +153 -136
  645. package/dist/v2/components/index.js.map +1 -1
  646. package/dist/v2/hooks/index.d.ts +65 -0
  647. package/dist/v2/hooks/index.d.ts.map +1 -1
  648. package/dist/v2/hooks/index.js +63 -24
  649. package/dist/v2/hooks/index.js.map +1 -1
  650. package/dist/v2/hooks/useAppliedFilters.d.ts +102 -0
  651. package/dist/v2/hooks/useAppliedFilters.d.ts.map +1 -0
  652. package/dist/v2/hooks/useAppliedFilters.js +117 -0
  653. package/dist/v2/hooks/useAppliedFilters.js.map +1 -0
  654. package/dist/v2/hooks/useDebouncedCallback.d.ts +64 -0
  655. package/dist/v2/hooks/useDebouncedCallback.d.ts.map +1 -0
  656. package/dist/v2/hooks/useDebouncedCallback.js +87 -0
  657. package/dist/v2/hooks/useDebouncedCallback.js.map +1 -0
  658. package/dist/v2/hooks/useDelayedFlag.js +6 -20
  659. package/dist/v2/hooks/useDelayedFlag.js.map +1 -1
  660. package/dist/v2/hooks/useDensity.d.ts.map +1 -1
  661. package/dist/v2/hooks/useDensity.js +14 -18
  662. package/dist/v2/hooks/useDensity.js.map +1 -1
  663. package/dist/v2/hooks/useFocusFirstError.js +26 -34
  664. package/dist/v2/hooks/useFocusFirstError.js.map +1 -1
  665. package/dist/v2/hooks/useFocusOnRouteChange.d.ts +65 -0
  666. package/dist/v2/hooks/useFocusOnRouteChange.d.ts.map +1 -0
  667. package/dist/v2/hooks/useFocusOnRouteChange.js +88 -0
  668. package/dist/v2/hooks/useFocusOnRouteChange.js.map +1 -0
  669. package/dist/v2/hooks/useFocusTrap.js +20 -24
  670. package/dist/v2/hooks/useFocusTrap.js.map +1 -1
  671. package/dist/v2/hooks/useFormAutoSave.d.ts +4 -4
  672. package/dist/v2/hooks/useFormAutoSave.d.ts.map +1 -1
  673. package/dist/v2/hooks/useFormAutoSave.js +39 -54
  674. package/dist/v2/hooks/useFormAutoSave.js.map +1 -1
  675. package/dist/v2/hooks/useFormCompletionProgress.d.ts +1 -1
  676. package/dist/v2/hooks/useFormCompletionProgress.d.ts.map +1 -1
  677. package/dist/v2/hooks/useFormCompletionProgress.js +33 -52
  678. package/dist/v2/hooks/useFormCompletionProgress.js.map +1 -1
  679. package/dist/v2/hooks/useKeyboardShortcuts.d.ts +25 -0
  680. package/dist/v2/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  681. package/dist/v2/hooks/useKeyboardShortcuts.js +132 -0
  682. package/dist/v2/hooks/useKeyboardShortcuts.js.map +1 -0
  683. package/dist/v2/hooks/usePrefersReducedMotion.d.ts +56 -0
  684. package/dist/v2/hooks/usePrefersReducedMotion.d.ts.map +1 -0
  685. package/dist/v2/hooks/usePrefersReducedMotion.js +105 -0
  686. package/dist/v2/hooks/usePrefersReducedMotion.js.map +1 -0
  687. package/dist/v2/hooks/useResolvedDensity.js +5 -13
  688. package/dist/v2/hooks/useResolvedDensity.js.map +1 -1
  689. package/dist/v2/hooks/useSortedRows.js +4 -6
  690. package/dist/v2/hooks/useSortedRows.js.map +1 -1
  691. package/dist/v2/hooks/useTabLoading.js +7 -22
  692. package/dist/v2/hooks/useTabLoading.js.map +1 -1
  693. package/dist/v2/index.js +143 -145
  694. package/dist/v2/index.js.map +1 -1
  695. package/dist/v2/modalContext.js +2 -2
  696. package/dist/v2/modalContext.js.map +1 -1
  697. package/dist/v2/models/favorite.d.ts +8 -9
  698. package/dist/v2/models/favorite.d.ts.map +1 -1
  699. package/dist/v2/models/favorite.js.map +1 -1
  700. package/dist/v2/models/index.js +4 -4
  701. package/dist/v2/models/index.js.map +1 -1
  702. package/dist/v2/models/personalization.d.ts +44 -48
  703. package/dist/v2/models/personalization.d.ts.map +1 -1
  704. package/dist/v2/models/personalization.js.map +1 -1
  705. package/dist/v2/models/referentiel.d.ts +32 -50
  706. package/dist/v2/models/referentiel.d.ts.map +1 -1
  707. package/dist/v2/models/referentiel.js.map +1 -1
  708. package/dist/v2/models/savedFilter.d.ts +8 -17
  709. package/dist/v2/models/savedFilter.d.ts.map +1 -1
  710. package/dist/v2/models/savedFilter.js.map +1 -1
  711. package/dist/v2/patterns/ActionBar.js +152 -187
  712. package/dist/v2/patterns/ActionBar.js.map +1 -1
  713. package/dist/v2/patterns/AppMain.d.ts +109 -0
  714. package/dist/v2/patterns/AppMain.d.ts.map +1 -0
  715. package/dist/v2/patterns/AppMain.js +115 -0
  716. package/dist/v2/patterns/AppMain.js.map +1 -0
  717. package/dist/v2/patterns/BulkActionBar.js +40 -42
  718. package/dist/v2/patterns/BulkActionBar.js.map +1 -1
  719. package/dist/v2/patterns/ChartFigure.d.ts +124 -0
  720. package/dist/v2/patterns/ChartFigure.d.ts.map +1 -0
  721. package/dist/v2/patterns/ChartFigure.js +159 -0
  722. package/dist/v2/patterns/ChartFigure.js.map +1 -0
  723. package/dist/v2/patterns/CollapsibleDataGrid.js +138 -174
  724. package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -1
  725. package/dist/v2/patterns/ColumnsToggle.js +60 -94
  726. package/dist/v2/patterns/ColumnsToggle.js.map +1 -1
  727. package/dist/v2/patterns/DataGrid.d.ts.map +1 -1
  728. package/dist/v2/patterns/DataGrid.js +262 -297
  729. package/dist/v2/patterns/DataGrid.js.map +1 -1
  730. package/dist/v2/patterns/DataGridSettingsMenu.d.ts +12 -0
  731. package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -1
  732. package/dist/v2/patterns/DataGridSettingsMenu.js +104 -121
  733. package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -1
  734. package/dist/v2/patterns/DataGridToolbar.js +103 -106
  735. package/dist/v2/patterns/DataGridToolbar.js.map +1 -1
  736. package/dist/v2/patterns/DataGridVirtualized.js +179 -217
  737. package/dist/v2/patterns/DataGridVirtualized.js.map +1 -1
  738. package/dist/v2/patterns/DeleteResourceConfirmDialog.js +32 -35
  739. package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
  740. package/dist/v2/patterns/DetailSplit.d.ts +87 -0
  741. package/dist/v2/patterns/DetailSplit.d.ts.map +1 -0
  742. package/dist/v2/patterns/DetailSplit.js +116 -0
  743. package/dist/v2/patterns/DetailSplit.js.map +1 -0
  744. package/dist/v2/patterns/FavoriteColumn.js +22 -23
  745. package/dist/v2/patterns/FavoriteColumn.js.map +1 -1
  746. package/dist/v2/patterns/FavoritesFilter.js +36 -44
  747. package/dist/v2/patterns/FavoritesFilter.js.map +1 -1
  748. package/dist/v2/patterns/FilterTabBar.d.ts +28 -0
  749. package/dist/v2/patterns/FilterTabBar.d.ts.map +1 -0
  750. package/dist/v2/patterns/FilterTabBar.js +120 -0
  751. package/dist/v2/patterns/FilterTabBar.js.map +1 -0
  752. package/dist/v2/patterns/FormErrorSummary.js +20 -23
  753. package/dist/v2/patterns/FormErrorSummary.js.map +1 -1
  754. package/dist/v2/patterns/FormPageShell.js +53 -50
  755. package/dist/v2/patterns/FormPageShell.js.map +1 -1
  756. package/dist/v2/patterns/FormSection.d.ts +8 -3
  757. package/dist/v2/patterns/FormSection.d.ts.map +1 -1
  758. package/dist/v2/patterns/FormSection.js +44 -51
  759. package/dist/v2/patterns/FormSection.js.map +1 -1
  760. package/dist/v2/patterns/FormikCheckbox.js +36 -45
  761. package/dist/v2/patterns/FormikCheckbox.js.map +1 -1
  762. package/dist/v2/patterns/FormikCheckboxGroup.d.ts +17 -1
  763. package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -1
  764. package/dist/v2/patterns/FormikCheckboxGroup.js +62 -65
  765. package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -1
  766. package/dist/v2/patterns/FormikCombobox.js +55 -72
  767. package/dist/v2/patterns/FormikCombobox.js.map +1 -1
  768. package/dist/v2/patterns/FormikDatePicker.js +50 -64
  769. package/dist/v2/patterns/FormikDatePicker.js.map +1 -1
  770. package/dist/v2/patterns/FormikDateTimePicker.js +50 -64
  771. package/dist/v2/patterns/FormikDateTimePicker.js.map +1 -1
  772. package/dist/v2/patterns/FormikErrorFocus.js +25 -26
  773. package/dist/v2/patterns/FormikErrorFocus.js.map +1 -1
  774. package/dist/v2/patterns/FormikErrorSummary.d.ts +74 -0
  775. package/dist/v2/patterns/FormikErrorSummary.d.ts.map +1 -0
  776. package/dist/v2/patterns/FormikErrorSummary.js +97 -0
  777. package/dist/v2/patterns/FormikErrorSummary.js.map +1 -0
  778. package/dist/v2/patterns/FormikFile.d.ts +14 -1
  779. package/dist/v2/patterns/FormikFile.d.ts.map +1 -1
  780. package/dist/v2/patterns/FormikFile.js +99 -83
  781. package/dist/v2/patterns/FormikFile.js.map +1 -1
  782. package/dist/v2/patterns/FormikInput.js +45 -58
  783. package/dist/v2/patterns/FormikInput.js.map +1 -1
  784. package/dist/v2/patterns/FormikRadioGroup.js +45 -56
  785. package/dist/v2/patterns/FormikRadioGroup.js.map +1 -1
  786. package/dist/v2/patterns/FormikReferentielField.d.ts +12 -1
  787. package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -1
  788. package/dist/v2/patterns/FormikReferentielField.js +54 -64
  789. package/dist/v2/patterns/FormikReferentielField.js.map +1 -1
  790. package/dist/v2/patterns/FormikSelect.js +70 -92
  791. package/dist/v2/patterns/FormikSelect.js.map +1 -1
  792. package/dist/v2/patterns/FormikTextarea.js +35 -51
  793. package/dist/v2/patterns/FormikTextarea.js.map +1 -1
  794. package/dist/v2/patterns/KeyboardShortcutsHelp.js +60 -80
  795. package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
  796. package/dist/v2/patterns/NetworkErrorBanner.js +13 -16
  797. package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -1
  798. package/dist/v2/patterns/PageContent.js +17 -20
  799. package/dist/v2/patterns/PageContent.js.map +1 -1
  800. package/dist/v2/patterns/PreviewDrawer.d.ts +49 -0
  801. package/dist/v2/patterns/PreviewDrawer.d.ts.map +1 -0
  802. package/dist/v2/patterns/PreviewDrawer.js +159 -0
  803. package/dist/v2/patterns/PreviewDrawer.js.map +1 -0
  804. package/dist/v2/patterns/ReferentielField.d.ts +86 -2
  805. package/dist/v2/patterns/ReferentielField.d.ts.map +1 -1
  806. package/dist/v2/patterns/ReferentielField.js +347 -327
  807. package/dist/v2/patterns/ReferentielField.js.map +1 -1
  808. package/dist/v2/patterns/RowFavoriteToggle.d.ts +6 -0
  809. package/dist/v2/patterns/RowFavoriteToggle.d.ts.map +1 -1
  810. package/dist/v2/patterns/RowFavoriteToggle.js +38 -30
  811. package/dist/v2/patterns/RowFavoriteToggle.js.map +1 -1
  812. package/dist/v2/patterns/SaveFilterDialog.js +50 -77
  813. package/dist/v2/patterns/SaveFilterDialog.js.map +1 -1
  814. package/dist/v2/patterns/SavedFiltersMenu.js +89 -107
  815. package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -1
  816. package/dist/v2/patterns/SkeletonPageShell.js +122 -143
  817. package/dist/v2/patterns/SkeletonPageShell.js.map +1 -1
  818. package/dist/v2/patterns/SortableHeader.js +35 -57
  819. package/dist/v2/patterns/SortableHeader.js.map +1 -1
  820. package/dist/v2/patterns/Tour.js +121 -142
  821. package/dist/v2/patterns/Tour.js.map +1 -1
  822. package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -1
  823. package/dist/v2/patterns/_dataGridShared.js +131 -147
  824. package/dist/v2/patterns/_dataGridShared.js.map +1 -1
  825. package/dist/v2/patterns/_pickerSerialisation.js +9 -10
  826. package/dist/v2/patterns/_pickerSerialisation.js.map +1 -1
  827. package/dist/v2/patterns/_sort.js +17 -33
  828. package/dist/v2/patterns/_sort.js.map +1 -1
  829. package/dist/v2/patterns/_useColumnReorder.js +124 -163
  830. package/dist/v2/patterns/_useColumnReorder.js.map +1 -1
  831. package/dist/v2/patterns/_useColumnResize.js +80 -99
  832. package/dist/v2/patterns/_useColumnResize.js.map +1 -1
  833. package/dist/v2/patterns/filterCriteria.d.ts +78 -0
  834. package/dist/v2/patterns/filterCriteria.d.ts.map +1 -0
  835. package/dist/v2/patterns/filterCriteria.js +110 -0
  836. package/dist/v2/patterns/filterCriteria.js.map +1 -0
  837. package/dist/v2/patterns/index.d.ts +160 -0
  838. package/dist/v2/patterns/index.d.ts.map +1 -1
  839. package/dist/v2/patterns/index.js +157 -79
  840. package/dist/v2/patterns/index.js.map +1 -1
  841. package/dist/v2/patterns/rowActions.d.ts +150 -0
  842. package/dist/v2/patterns/rowActions.d.ts.map +1 -0
  843. package/dist/v2/patterns/rowActions.js +232 -0
  844. package/dist/v2/patterns/rowActions.js.map +1 -0
  845. package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -1
  846. package/dist/v2/personalization/PersonalizationProvider.js +57 -53
  847. package/dist/v2/personalization/PersonalizationProvider.js.map +1 -1
  848. package/dist/v2/personalization/adapters/_storageKey.js +5 -5
  849. package/dist/v2/personalization/adapters/_storageKey.js.map +1 -1
  850. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js +25 -24
  851. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
  852. package/dist/v2/personalization/adapters/createMemoryAdapter.js +14 -14
  853. package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
  854. package/dist/v2/personalization/adapters/index.js +5 -5
  855. package/dist/v2/personalization/adapters/index.js.map +1 -1
  856. package/dist/v2/personalization/capabilities/favorites.js +39 -62
  857. package/dist/v2/personalization/capabilities/favorites.js.map +1 -1
  858. package/dist/v2/personalization/capabilities/favoritesView.js +25 -37
  859. package/dist/v2/personalization/capabilities/favoritesView.js.map +1 -1
  860. package/dist/v2/personalization/capabilities/gridPreferences.js +31 -36
  861. package/dist/v2/personalization/capabilities/gridPreferences.js.map +1 -1
  862. package/dist/v2/personalization/capabilities/index.js +12 -12
  863. package/dist/v2/personalization/capabilities/reviveSavedCriteria.d.ts +88 -0
  864. package/dist/v2/personalization/capabilities/reviveSavedCriteria.d.ts.map +1 -0
  865. package/dist/v2/personalization/capabilities/reviveSavedCriteria.js +126 -0
  866. package/dist/v2/personalization/capabilities/reviveSavedCriteria.js.map +1 -0
  867. package/dist/v2/personalization/capabilities/savedFilters.js +93 -100
  868. package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -1
  869. package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -1
  870. package/dist/v2/personalization/createPersonalizationStore.js +81 -182
  871. package/dist/v2/personalization/createPersonalizationStore.js.map +1 -1
  872. package/dist/v2/personalization/index.d.ts +16 -0
  873. package/dist/v2/personalization/index.d.ts.map +1 -1
  874. package/dist/v2/personalization/index.js +30 -23
  875. package/dist/v2/personalization/index.js.map +1 -1
  876. package/dist/v2/personalization/personalizationContext.js +10 -12
  877. package/dist/v2/personalization/personalizationContext.js.map +1 -1
  878. package/dist/v2/personalization/schema.js +8 -9
  879. package/dist/v2/personalization/schema.js.map +1 -1
  880. package/dist/v2/referentiel/ReferentielProvider.js +31 -45
  881. package/dist/v2/referentiel/ReferentielProvider.js.map +1 -1
  882. package/dist/v2/referentiel/index.js +11 -13
  883. package/dist/v2/referentiel/index.js.map +1 -1
  884. package/dist/v2/referentiel/types.d.ts +105 -0
  885. package/dist/v2/referentiel/types.d.ts.map +1 -0
  886. package/dist/v2/referentiel/types.js +6 -0
  887. package/dist/v2/referentiel/types.js.map +1 -0
  888. package/dist/v2/referentiel/useReferentielClient.js +13 -16
  889. package/dist/v2/referentiel/useReferentielClient.js.map +1 -1
  890. package/dist/v2/referentiel/useReferentielOptions.d.ts +7 -17
  891. package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -1
  892. package/dist/v2/referentiel/useReferentielOptions.js +63 -120
  893. package/dist/v2/referentiel/useReferentielOptions.js.map +1 -1
  894. package/dist/v2/referentiel/useReferentielSearch.d.ts +7 -48
  895. package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -1
  896. package/dist/v2/referentiel/useReferentielSearch.js +40 -95
  897. package/dist/v2/referentiel/useReferentielSearch.js.map +1 -1
  898. package/dist/v2/theme/_brand.js +12 -26
  899. package/dist/v2/theme/_brand.js.map +1 -1
  900. package/dist/v2/theme/_brandSecondary.js +12 -26
  901. package/dist/v2/theme/_brandSecondary.js.map +1 -1
  902. package/dist/v2/theme/createPortnetTheme.js +41 -49
  903. package/dist/v2/theme/createPortnetTheme.js.map +1 -1
  904. package/dist/v2/theme/cssVariables.d.ts +3 -3
  905. package/dist/v2/theme/cssVariables.d.ts.map +1 -1
  906. package/dist/v2/theme/cssVariables.js +65 -70
  907. package/dist/v2/theme/cssVariables.js.map +1 -1
  908. package/dist/v2/theme/index.js +10 -10
  909. package/dist/v2/theme/index.js.map +1 -1
  910. package/dist/v2/tokens/breakpoints.js +16 -16
  911. package/dist/v2/tokens/breakpoints.js.map +1 -1
  912. package/dist/v2/tokens/chart.d.ts +103 -0
  913. package/dist/v2/tokens/chart.d.ts.map +1 -0
  914. package/dist/v2/tokens/chart.js +270 -0
  915. package/dist/v2/tokens/chart.js.map +1 -0
  916. package/dist/v2/tokens/colors.js +24 -24
  917. package/dist/v2/tokens/colors.js.map +1 -1
  918. package/dist/v2/tokens/density.d.ts +104 -0
  919. package/dist/v2/tokens/density.d.ts.map +1 -1
  920. package/dist/v2/tokens/density.js +67 -12
  921. package/dist/v2/tokens/density.js.map +1 -1
  922. package/dist/v2/tokens/index.d.ts +50 -1
  923. package/dist/v2/tokens/index.d.ts.map +1 -1
  924. package/dist/v2/tokens/index.js +116 -68
  925. package/dist/v2/tokens/index.js.map +1 -1
  926. package/dist/v2/tokens/motion.js +16 -22
  927. package/dist/v2/tokens/motion.js.map +1 -1
  928. package/dist/v2/tokens/radius.js +3 -3
  929. package/dist/v2/tokens/radius.js.map +1 -1
  930. package/dist/v2/tokens/shadows.js +8 -8
  931. package/dist/v2/tokens/shadows.js.map +1 -1
  932. package/dist/v2/tokens/spacing.js +4 -4
  933. package/dist/v2/tokens/spacing.js.map +1 -1
  934. package/dist/v2/tokens/state.js +3 -3
  935. package/dist/v2/tokens/state.js.map +1 -1
  936. package/dist/v2/tokens/statusPalette.js +21 -23
  937. package/dist/v2/tokens/statusPalette.js.map +1 -1
  938. package/dist/v2/tokens/tokens.json +6 -1
  939. package/dist/v2/tokens/typography.js +15 -15
  940. package/dist/v2/tokens/typography.js.map +1 -1
  941. package/dist/v2/tokens/zIndex.js +3 -3
  942. package/dist/v2/tokens/zIndex.js.map +1 -1
  943. package/dist/v2/types/datagrid.d.ts +9 -1
  944. package/dist/v2/types/datagrid.d.ts.map +1 -1
  945. package/dist/v2/types/datagrid.js.map +1 -1
  946. package/dist/v2/types/index.js +2 -2
  947. package/dist/v2/types/index.js.map +1 -1
  948. package/dist/v2/utils/apiError.js +16 -37
  949. package/dist/v2/utils/apiError.js.map +1 -1
  950. package/dist/v2/utils/contrast.js +31 -32
  951. package/dist/v2/utils/contrast.js.map +1 -1
  952. package/dist/v2/utils/cx.js +7 -27
  953. package/dist/v2/utils/cx.js.map +1 -1
  954. package/dist/v2/utils/fileDownload.js +25 -28
  955. package/dist/v2/utils/fileDownload.js.map +1 -1
  956. package/dist/v2/utils/fileValidation.d.ts +116 -0
  957. package/dist/v2/utils/fileValidation.d.ts.map +1 -0
  958. package/dist/v2/utils/fileValidation.js +220 -0
  959. package/dist/v2/utils/fileValidation.js.map +1 -0
  960. package/dist/v2/utils/fmtDate.d.ts +103 -0
  961. package/dist/v2/utils/fmtDate.d.ts.map +1 -0
  962. package/dist/v2/utils/fmtDate.js +119 -0
  963. package/dist/v2/utils/fmtDate.js.map +1 -0
  964. package/dist/v2/utils/fmtMoney.d.ts +3 -3
  965. package/dist/v2/utils/fmtMoney.d.ts.map +1 -1
  966. package/dist/v2/utils/fmtMoney.js +9 -11
  967. package/dist/v2/utils/fmtMoney.js.map +1 -1
  968. package/dist/v2/utils/formikErrors.d.ts +67 -0
  969. package/dist/v2/utils/formikErrors.d.ts.map +1 -0
  970. package/dist/v2/utils/formikErrors.js +85 -0
  971. package/dist/v2/utils/formikErrors.js.map +1 -0
  972. package/dist/v2/utils/index.d.ts +5 -0
  973. package/dist/v2/utils/index.d.ts.map +1 -1
  974. package/dist/v2/utils/index.js +67 -18
  975. package/dist/v2/utils/index.js.map +1 -1
  976. package/dist/v2/utils/mergeLabels.js +9 -14
  977. package/dist/v2/utils/mergeLabels.js.map +1 -1
  978. package/dist/v2/utils/networkStatus.js +14 -14
  979. package/dist/v2/utils/networkStatus.js.map +1 -1
  980. package/package.json +26 -9
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports["default"] = void 0;
6
+ exports.default = void 0;
8
7
  var React = _interopRequireWildcard(require("react"));
9
8
  var _Box = _interopRequireDefault(require("@mui/material/Box"));
10
9
  var _jsxRuntime = require("react/jsx-runtime");
11
- var _excluded = ["component", "tone", "elevation", "radius", "padding", "clip", "sx", "children"];
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
12
  /**
13
13
  * Surface — Portnet UI v2
14
14
  *
@@ -54,16 +54,20 @@ var _excluded = ["component", "tone", "elevation", "radius", "padding", "clip",
54
54
  * `KPICard`; an attached file is `FileCard`. Those compose this. If you find
55
55
  * yourself wanting a `title` prop here, you want one of them instead.
56
56
  */
57
+
57
58
  /** Background token. `subtle` is for a block INSET INTO an existing surface. */
59
+
58
60
  /**
59
61
  * Elevation, restricted to the two card levels of Charter §02.5.
60
62
  * `md` / `lg` are reserved for popovers and modals and are not offered here —
61
63
  * a card that needs them is a `Modal` or a `Drawer`.
62
64
  */
65
+
63
66
  /**
64
67
  * Corner radius. `lg` = a card (charter §02.4 « Cards, datagrid »); `md` = a
65
68
  * block nested inside another surface, which reads wrong at the card radius.
66
69
  */
70
+
67
71
  /**
68
72
  * Inner padding.
69
73
  * none — the child owns it (DataGrid, a nested grid, a table).
@@ -73,62 +77,42 @@ var _excluded = ["component", "tone", "elevation", "radius", "padding", "clip",
73
77
  * responsive — the page-level ladder, aligned with `PageContent`'s, for a
74
78
  * full-width hero whose padding must shrink on a phone.
75
79
  */
76
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
77
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
78
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
79
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
80
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
81
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
82
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
83
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
84
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
85
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
86
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
87
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
88
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
89
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
90
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
91
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
92
- var TONE = {
80
+
81
+ const TONE = {
93
82
  surface: "var(--surface)",
94
83
  subtle: "var(--bg-subtle)"
95
84
  };
96
- var ELEVATION = {
85
+ const ELEVATION = {
97
86
  none: "none",
98
87
  xs: "var(--shadow-xs)",
99
88
  sm: "var(--shadow-sm)"
100
89
  };
101
- var RADIUS = {
90
+ const RADIUS = {
102
91
  md: "var(--r-md)",
103
92
  lg: "var(--r-lg)"
104
93
  };
105
- var PADDING = {
94
+ const PADDING = {
106
95
  none: "0",
107
96
  compact: "var(--s-3) var(--s-4)",
108
- "default": "var(--s-5)",
97
+ default: "var(--s-5)",
109
98
  responsive: {
110
99
  xs: "var(--s-4)",
111
100
  sm: "var(--s-5)",
112
101
  lg: "var(--s-6)"
113
102
  }
114
103
  };
115
- function Surface(_ref) {
116
- var _ref$component = _ref.component,
117
- component = _ref$component === void 0 ? "div" : _ref$component,
118
- _ref$tone = _ref.tone,
119
- tone = _ref$tone === void 0 ? "surface" : _ref$tone,
120
- _ref$elevation = _ref.elevation,
121
- elevation = _ref$elevation === void 0 ? "none" : _ref$elevation,
122
- _ref$radius = _ref.radius,
123
- radius = _ref$radius === void 0 ? "lg" : _ref$radius,
124
- _ref$padding = _ref.padding,
125
- padding = _ref$padding === void 0 ? "default" : _ref$padding,
126
- _ref$clip = _ref.clip,
127
- clip = _ref$clip === void 0 ? false : _ref$clip,
128
- sx = _ref.sx,
129
- children = _ref.children,
130
- rest = _objectWithoutProperties(_ref, _excluded);
131
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box["default"], _objectSpread(_objectSpread({
104
+ function Surface({
105
+ component = "div",
106
+ tone = "surface",
107
+ elevation = "none",
108
+ radius = "lg",
109
+ padding = "default",
110
+ clip = false,
111
+ sx,
112
+ children,
113
+ ...rest
114
+ }) {
115
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
132
116
  component: component
133
117
  /*
134
118
  * ARRAY form, not an object spread (gap G-23). `SxProps<Theme>` admits an
@@ -142,7 +126,7 @@ function Surface(_ref) {
142
126
  * `KPICard` already did this correctly; 33 other components in this library
143
127
  * still spread. I wrote three of those before noticing, including this file.
144
128
  */,
145
- sx: [_objectSpread({
129
+ sx: [{
146
130
  background: TONE[tone],
147
131
  border: "1px solid var(--border)",
148
132
  borderRadius: RADIUS[radius],
@@ -151,13 +135,14 @@ function Surface(_ref) {
151
135
  // Guards a card whose child is a wide table or a long unbroken string:
152
136
  // without it the flex/grid parent refuses to shrink and the page gains a
153
137
  // horizontal scrollbar (WCAG 1.4.10 Reflow).
154
- minWidth: 0
155
- }, clip ? {
156
- overflow: "hidden"
157
- } : null)].concat(_toConsumableArray(Array.isArray(sx) ? sx : sx ? [sx] : []))
158
- }, rest), {}, {
138
+ minWidth: 0,
139
+ ...(clip ? {
140
+ overflow: "hidden"
141
+ } : null)
142
+ }, ...(Array.isArray(sx) ? sx : sx ? [sx] : [])],
143
+ ...rest,
159
144
  children: children
160
- }));
145
+ });
161
146
  }
162
- var _default = exports["default"] = Surface;
147
+ var _default = exports.default = Surface;
163
148
  //# sourceMappingURL=Surface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Surface.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_jsxRuntime","_excluded","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","iter","iterator","isArray","len","arr2","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","TONE","surface","subtle","ELEVATION","none","xs","sm","RADIUS","md","lg","PADDING","compact","responsive","Surface","_ref","_ref$component","component","_ref$tone","tone","_ref$elevation","elevation","_ref$radius","radius","_ref$padding","padding","_ref$clip","clip","sx","children","rest","jsx","background","border","borderRadius","boxShadow","minWidth","overflow","concat","_default","exports"],"sources":["../../../src/lib/v2/components/Surface.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\n\r\n/**\r\n * Surface — Portnet UI v2\r\n *\r\n * The bare card container. Charter §02.4 assigns `-r-lg` to « Cards, datagrid »\r\n * and §02.5 assigns `--shadow-xs` to « Inputs, KPI cards » / `--shadow-sm` to\r\n * « Default cards » — so the charter defines a card, in tokens, precisely.\r\n *\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n * WHY THIS BELONGS IN THE LIBRARY (capability gap G-10)\r\n *\r\n * The card recipe existed in the library, but only WELDED INSIDE `FormSection`,\r\n * which also imposes a numbered heading, a description slot and an inner\r\n * `FormGrid`. A consumer needing just the container — a DataGrid shell, a hero\r\n * card, a sticky side rail, a nested file row — could not reach it and wrote the\r\n * four-line recipe again. In addpe-fe alone: `DATAGRID_CARD_SX`, `HERO_CARD_SX`,\r\n * `LIFECYCLE_CARD_SX`, and a document-card block repeated in three files.\r\n *\r\n * That is the failure mode a design system exists to prevent, and it is worse\r\n * than plain duplication: each copy picked its own elevation and its own radius\r\n * from memory, so cards that should be visually identical drifted apart within a\r\n * single page — and a charter change to `--shadow-sm` or `-r-lg` would have to\r\n * be chased across every module by hand.\r\n *\r\n * The variant axes below are DERIVED from those observed copies, not invented:\r\n * each one is a difference that really existed between two of them.\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n *\r\n * // DataGrid shell — the grid owns its own padding, and `clip` makes the\r\n * // rounded corner cut the table's first/last row borders.\r\n * <Surface padding=\"none\" elevation=\"xs\" clip>\r\n * <DataGrid … />\r\n * </Surface>\r\n *\r\n * // Detail hero — responsive padding ladder, default card elevation.\r\n * <Surface padding=\"responsive\" elevation=\"sm\">…</Surface>\r\n *\r\n * // Nested inset block (attached file, document row) — subtle tone, the\r\n * // smaller radius the charter assigns to inner blocks.\r\n * <Surface tone=\"subtle\" radius=\"md\" padding=\"compact\">…</Surface>\r\n *\r\n * Composition, not configuration: `Surface` deliberately has NO title, NO\r\n * actions and NO header. A titled section is `FormSection`; a metric tile is\r\n * `KPICard`; an attached file is `FileCard`. Those compose this. If you find\r\n * yourself wanting a `title` prop here, you want one of them instead.\r\n */\r\n\r\n/** Background token. `subtle` is for a block INSET INTO an existing surface. */\r\nexport type SurfaceTone = \"surface\" | \"subtle\";\r\n\r\n/**\r\n * Elevation, restricted to the two card levels of Charter §02.5.\r\n * `md` / `lg` are reserved for popovers and modals and are not offered here —\r\n * a card that needs them is a `Modal` or a `Drawer`.\r\n */\r\nexport type SurfaceElevation = \"none\" | \"xs\" | \"sm\";\r\n\r\n/**\r\n * Corner radius. `lg` = a card (charter §02.4 « Cards, datagrid »); `md` = a\r\n * block nested inside another surface, which reads wrong at the card radius.\r\n */\r\nexport type SurfaceRadius = \"md\" | \"lg\";\r\n\r\n/**\r\n * Inner padding.\r\n * none — the child owns it (DataGrid, a nested grid, a table).\r\n * compact — a single-row block. Asymmetric on purpose: a one-line row\r\n * needs more horizontal than vertical breathing space.\r\n * default — charter §2.3 « Padding card body » (--s-5).\r\n * responsive — the page-level ladder, aligned with `PageContent`'s, for a\r\n * full-width hero whose padding must shrink on a phone.\r\n */\r\nexport type SurfacePadding = \"none\" | \"compact\" | \"default\" | \"responsive\";\r\n\r\nconst TONE: Record<SurfaceTone, string> = {\r\n surface: \"var(--surface)\",\r\n subtle: \"var(--bg-subtle)\",\r\n};\r\n\r\nconst ELEVATION: Record<SurfaceElevation, string> = {\r\n none: \"none\",\r\n xs: \"var(--shadow-xs)\",\r\n sm: \"var(--shadow-sm)\",\r\n};\r\n\r\nconst RADIUS: Record<SurfaceRadius, string> = {\r\n md: \"var(--r-md)\",\r\n lg: \"var(--r-lg)\",\r\n};\r\n\r\ntype PaddingValue = string | Record<string, string>;\r\n\r\nconst PADDING: Record<SurfacePadding, PaddingValue> = {\r\n none: \"0\",\r\n compact: \"var(--s-3) var(--s-4)\",\r\n default: \"var(--s-5)\",\r\n responsive: { xs: \"var(--s-4)\", sm: \"var(--s-5)\", lg: \"var(--s-6)\" },\r\n};\r\n\r\nexport interface SurfaceProps\r\n extends Omit<React.HTMLAttributes<HTMLElement>, \"color\"> {\r\n /** Rendered element. @default \"div\" */\r\n component?: React.ElementType | undefined;\r\n /** @default \"surface\" */\r\n tone?: SurfaceTone | undefined;\r\n /** @default \"none\" */\r\n elevation?: SurfaceElevation | undefined;\r\n /** @default \"lg\" */\r\n radius?: SurfaceRadius | undefined;\r\n /** @default \"default\" */\r\n padding?: SurfacePadding | undefined;\r\n /**\r\n * `overflow: hidden`, so the rounded corner CLIPS a child that draws its own\r\n * edges — a DataGrid's sticky header and row borders, most commonly. Without\r\n * it the table's square corners poke through the card's radius.\r\n * @default false\r\n */\r\n clip?: boolean | undefined;\r\n sx?: SxProps<Theme> | undefined;\r\n children?: React.ReactNode | undefined;\r\n}\r\n\r\nfunction Surface({\r\n component = \"div\",\r\n tone = \"surface\",\r\n elevation = \"none\",\r\n radius = \"lg\",\r\n padding = \"default\",\r\n clip = false,\r\n sx,\r\n children,\r\n ...rest\r\n}: SurfaceProps) {\r\n return (\r\n <Box\r\n component={component}\r\n /*\r\n * ARRAY form, not an object spread (gap G-23). `SxProps<Theme>` admits an\r\n * object, an ARRAY or a FUNCTION, and spreading the last two destroys them\r\n * silently: `{...[a, b]}` yields `{0: a, 1: b}` and `{...fn}` yields `{}`.\r\n * So a host using MUI's own standard idiom —\r\n * `sx={[base, condition && override]}` — would lose every style, with no\r\n * error. The array form is what MUI documents for composition, and it\r\n * handles all three shapes plus null/undefined (falsy entries are ignored).\r\n *\r\n * `KPICard` already did this correctly; 33 other components in this library\r\n * still spread. I wrote three of those before noticing, including this file.\r\n */\r\n sx={[\r\n {\r\n background: TONE[tone],\r\n border: \"1px solid var(--border)\",\r\n borderRadius: RADIUS[radius],\r\n boxShadow: ELEVATION[elevation],\r\n padding: PADDING[padding],\r\n // Guards a card whose child is a wide table or a long unbroken string:\r\n // without it the flex/grid parent refuses to shrink and the page gains a\r\n // horizontal scrollbar (WCAG 1.4.10 Reflow).\r\n minWidth: 0,\r\n ...(clip ? { overflow: \"hidden\" } : null),\r\n },\r\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\r\n ]}\r\n {...rest}\r\n >\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default Surface;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Surface.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TONE","surface","subtle","ELEVATION","none","xs","sm","RADIUS","md","lg","PADDING","compact","responsive","Surface","component","tone","elevation","radius","padding","clip","sx","children","rest","jsx","background","border","borderRadius","boxShadow","minWidth","overflow","Array","isArray","_default","exports"],"sources":["../../../src/lib/v2/components/Surface.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\n\r\n/**\r\n * Surface — Portnet UI v2\r\n *\r\n * The bare card container. Charter §02.4 assigns `-r-lg` to « Cards, datagrid »\r\n * and §02.5 assigns `--shadow-xs` to « Inputs, KPI cards » / `--shadow-sm` to\r\n * « Default cards » — so the charter defines a card, in tokens, precisely.\r\n *\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n * WHY THIS BELONGS IN THE LIBRARY (capability gap G-10)\r\n *\r\n * The card recipe existed in the library, but only WELDED INSIDE `FormSection`,\r\n * which also imposes a numbered heading, a description slot and an inner\r\n * `FormGrid`. A consumer needing just the container — a DataGrid shell, a hero\r\n * card, a sticky side rail, a nested file row — could not reach it and wrote the\r\n * four-line recipe again. In addpe-fe alone: `DATAGRID_CARD_SX`, `HERO_CARD_SX`,\r\n * `LIFECYCLE_CARD_SX`, and a document-card block repeated in three files.\r\n *\r\n * That is the failure mode a design system exists to prevent, and it is worse\r\n * than plain duplication: each copy picked its own elevation and its own radius\r\n * from memory, so cards that should be visually identical drifted apart within a\r\n * single page — and a charter change to `--shadow-sm` or `-r-lg` would have to\r\n * be chased across every module by hand.\r\n *\r\n * The variant axes below are DERIVED from those observed copies, not invented:\r\n * each one is a difference that really existed between two of them.\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n *\r\n * // DataGrid shell — the grid owns its own padding, and `clip` makes the\r\n * // rounded corner cut the table's first/last row borders.\r\n * <Surface padding=\"none\" elevation=\"xs\" clip>\r\n * <DataGrid … />\r\n * </Surface>\r\n *\r\n * // Detail hero — responsive padding ladder, default card elevation.\r\n * <Surface padding=\"responsive\" elevation=\"sm\">…</Surface>\r\n *\r\n * // Nested inset block (attached file, document row) — subtle tone, the\r\n * // smaller radius the charter assigns to inner blocks.\r\n * <Surface tone=\"subtle\" radius=\"md\" padding=\"compact\">…</Surface>\r\n *\r\n * Composition, not configuration: `Surface` deliberately has NO title, NO\r\n * actions and NO header. A titled section is `FormSection`; a metric tile is\r\n * `KPICard`; an attached file is `FileCard`. Those compose this. If you find\r\n * yourself wanting a `title` prop here, you want one of them instead.\r\n */\r\n\r\n/** Background token. `subtle` is for a block INSET INTO an existing surface. */\r\nexport type SurfaceTone = \"surface\" | \"subtle\";\r\n\r\n/**\r\n * Elevation, restricted to the two card levels of Charter §02.5.\r\n * `md` / `lg` are reserved for popovers and modals and are not offered here —\r\n * a card that needs them is a `Modal` or a `Drawer`.\r\n */\r\nexport type SurfaceElevation = \"none\" | \"xs\" | \"sm\";\r\n\r\n/**\r\n * Corner radius. `lg` = a card (charter §02.4 « Cards, datagrid »); `md` = a\r\n * block nested inside another surface, which reads wrong at the card radius.\r\n */\r\nexport type SurfaceRadius = \"md\" | \"lg\";\r\n\r\n/**\r\n * Inner padding.\r\n * none — the child owns it (DataGrid, a nested grid, a table).\r\n * compact — a single-row block. Asymmetric on purpose: a one-line row\r\n * needs more horizontal than vertical breathing space.\r\n * default — charter §2.3 « Padding card body » (--s-5).\r\n * responsive — the page-level ladder, aligned with `PageContent`'s, for a\r\n * full-width hero whose padding must shrink on a phone.\r\n */\r\nexport type SurfacePadding = \"none\" | \"compact\" | \"default\" | \"responsive\";\r\n\r\nconst TONE: Record<SurfaceTone, string> = {\r\n surface: \"var(--surface)\",\r\n subtle: \"var(--bg-subtle)\",\r\n};\r\n\r\nconst ELEVATION: Record<SurfaceElevation, string> = {\r\n none: \"none\",\r\n xs: \"var(--shadow-xs)\",\r\n sm: \"var(--shadow-sm)\",\r\n};\r\n\r\nconst RADIUS: Record<SurfaceRadius, string> = {\r\n md: \"var(--r-md)\",\r\n lg: \"var(--r-lg)\",\r\n};\r\n\r\ntype PaddingValue = string | Record<string, string>;\r\n\r\nconst PADDING: Record<SurfacePadding, PaddingValue> = {\r\n none: \"0\",\r\n compact: \"var(--s-3) var(--s-4)\",\r\n default: \"var(--s-5)\",\r\n responsive: { xs: \"var(--s-4)\", sm: \"var(--s-5)\", lg: \"var(--s-6)\" },\r\n};\r\n\r\nexport interface SurfaceProps\r\n extends Omit<React.HTMLAttributes<HTMLElement>, \"color\"> {\r\n /** Rendered element. @default \"div\" */\r\n component?: React.ElementType | undefined;\r\n /** @default \"surface\" */\r\n tone?: SurfaceTone | undefined;\r\n /** @default \"none\" */\r\n elevation?: SurfaceElevation | undefined;\r\n /** @default \"lg\" */\r\n radius?: SurfaceRadius | undefined;\r\n /** @default \"default\" */\r\n padding?: SurfacePadding | undefined;\r\n /**\r\n * `overflow: hidden`, so the rounded corner CLIPS a child that draws its own\r\n * edges — a DataGrid's sticky header and row borders, most commonly. Without\r\n * it the table's square corners poke through the card's radius.\r\n * @default false\r\n */\r\n clip?: boolean | undefined;\r\n sx?: SxProps<Theme> | undefined;\r\n children?: React.ReactNode | undefined;\r\n}\r\n\r\nfunction Surface({\r\n component = \"div\",\r\n tone = \"surface\",\r\n elevation = \"none\",\r\n radius = \"lg\",\r\n padding = \"default\",\r\n clip = false,\r\n sx,\r\n children,\r\n ...rest\r\n}: SurfaceProps) {\r\n return (\r\n <Box\r\n component={component}\r\n /*\r\n * ARRAY form, not an object spread (gap G-23). `SxProps<Theme>` admits an\r\n * object, an ARRAY or a FUNCTION, and spreading the last two destroys them\r\n * silently: `{...[a, b]}` yields `{0: a, 1: b}` and `{...fn}` yields `{}`.\r\n * So a host using MUI's own standard idiom —\r\n * `sx={[base, condition && override]}` — would lose every style, with no\r\n * error. The array form is what MUI documents for composition, and it\r\n * handles all three shapes plus null/undefined (falsy entries are ignored).\r\n *\r\n * `KPICard` already did this correctly; 33 other components in this library\r\n * still spread. I wrote three of those before noticing, including this file.\r\n */\r\n sx={[\r\n {\r\n background: TONE[tone],\r\n border: \"1px solid var(--border)\",\r\n borderRadius: RADIUS[radius],\r\n boxShadow: ELEVATION[elevation],\r\n padding: PADDING[padding],\r\n // Guards a card whose child is a wide table or a long unbroken string:\r\n // without it the flex/grid parent refuses to shrink and the page gains a\r\n // horizontal scrollbar (WCAG 1.4.10 Reflow).\r\n minWidth: 0,\r\n ...(clip ? { overflow: \"hidden\" } : null),\r\n },\r\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\r\n ]}\r\n {...rest}\r\n >\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default Surface;\r\n"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,16 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports["default"] = void 0;
6
+ exports.default = void 0;
8
7
  var React = _interopRequireWildcard(require("react"));
9
8
  var _Switch = _interopRequireDefault(require("@mui/material/Switch"));
10
9
  var _FormControlLabel = _interopRequireDefault(require("@mui/material/FormControlLabel"));
11
10
  var _Box = _interopRequireDefault(require("@mui/material/Box"));
12
11
  var _jsxRuntime = require("react/jsx-runtime");
13
- var _excluded = ["checked", "onChange", "label", "description", "disabled", "size", "labelPlacement", "sx", "aria-label"];
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
14
  /**
15
15
  * Switch - Portnet UI v2
16
16
  *
@@ -30,35 +30,25 @@ var _excluded = ["checked", "onChange", "label", "description", "disabled", "siz
30
30
  *
31
31
  * <Switch checked={v} onChange={...} aria-label="Activer le mode sombre" />
32
32
  */
33
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
34
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
36
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
37
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
38
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
39
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
40
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
41
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
42
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
43
- var Switch = /*#__PURE__*/React.forwardRef(function Switch(_ref, ref) {
44
- var checked = _ref.checked,
45
- onChange = _ref.onChange,
46
- label = _ref.label,
47
- description = _ref.description,
48
- disabled = _ref.disabled,
49
- _ref$size = _ref.size,
50
- size = _ref$size === void 0 ? "md" : _ref$size,
51
- _ref$labelPlacement = _ref.labelPlacement,
52
- labelPlacement = _ref$labelPlacement === void 0 ? "end" : _ref$labelPlacement,
53
- sx = _ref.sx,
54
- ariaLabel = _ref["aria-label"],
55
- rest = _objectWithoutProperties(_ref, _excluded);
56
- var descId = React.useId();
33
+
34
+ const Switch = /*#__PURE__*/React.forwardRef(function Switch({
35
+ checked,
36
+ onChange,
37
+ label,
38
+ description,
39
+ disabled,
40
+ size = "md",
41
+ labelPlacement = "end",
42
+ sx,
43
+ "aria-label": ariaLabel,
44
+ ...rest
45
+ }, ref) {
46
+ const descId = React.useId();
57
47
  if (process.env["NODE_ENV"] !== "production" && !label && !ariaLabel) {
58
48
  // eslint-disable-next-line no-console
59
49
  console.warn("[@portnet/ui v2] <Switch> without `label` requires `aria-label` for screen readers.");
60
50
  }
61
- var sw = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch["default"], _objectSpread({
51
+ const sw = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch.default, {
62
52
  ref: ref,
63
53
  checked: !!checked,
64
54
  onChange: onChange,
@@ -74,7 +64,7 @@ var Switch = /*#__PURE__*/React.forwardRef(function Switch(_ref, ref) {
74
64
  "aria-describedby": description ? descId : undefined
75
65
  }
76
66
  },
77
- sx: _objectSpread({
67
+ sx: {
78
68
  "& .MuiSwitch-thumb": {
79
69
  boxShadow: "var(--shadow-xs)"
80
70
  },
@@ -91,17 +81,19 @@ var Switch = /*#__PURE__*/React.forwardRef(function Switch(_ref, ref) {
91
81
  // accent automatically retune the Switch focus state too.
92
82
  "& .MuiSwitch-switchBase.Mui-focusVisible .MuiSwitch-thumb": {
93
83
  boxShadow: "var(--shadow-focus)"
94
- }
95
- }, sx)
96
- }, rest));
84
+ },
85
+ ...sx
86
+ },
87
+ ...rest
88
+ });
97
89
  if (!label && !description) return sw;
98
- var labelNode = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box["default"], {
90
+ const labelNode = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
99
91
  sx: {
100
92
  display: "flex",
101
93
  flexDirection: "column",
102
94
  paddingY: 0.25
103
95
  },
104
- children: [label && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box["default"], {
96
+ children: [label && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
105
97
  component: "span",
106
98
  sx: {
107
99
  fontSize: "var(--text-sm)",
@@ -109,7 +101,7 @@ var Switch = /*#__PURE__*/React.forwardRef(function Switch(_ref, ref) {
109
101
  color: "var(--fg)"
110
102
  },
111
103
  children: label
112
- }), description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box["default"], {
104
+ }), description && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
113
105
  id: descId,
114
106
  component: "span",
115
107
  sx: {
@@ -120,7 +112,7 @@ var Switch = /*#__PURE__*/React.forwardRef(function Switch(_ref, ref) {
120
112
  children: description
121
113
  })]
122
114
  });
123
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel["default"], {
115
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FormControlLabel.default, {
124
116
  control: sw,
125
117
  label: labelNode,
126
118
  labelPlacement: labelPlacement,
@@ -132,5 +124,5 @@ var Switch = /*#__PURE__*/React.forwardRef(function Switch(_ref, ref) {
132
124
  }
133
125
  });
134
126
  });
135
- var _default = exports["default"] = Switch;
127
+ var _default = exports.default = Switch;
136
128
  //# sourceMappingURL=Switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.js","names":["React","_interopRequireWildcard","require","_Switch","_interopRequireDefault","_FormControlLabel","_Box","_jsxRuntime","_excluded","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Switch","forwardRef","_ref","ref","checked","onChange","label","description","disabled","_ref$size","size","_ref$labelPlacement","labelPlacement","sx","ariaLabel","rest","descId","useId","process","env","console","warn","sw","jsx","slotProps","boxShadow","backgroundColor","opacity","labelNode","jsxs","display","flexDirection","paddingY","children","component","fontSize","fontWeight","color","id","lineHeight","control","margin","gap","alignItems","_default","exports"],"sources":["../../../src/lib/v2/components/Switch.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport MuiSwitch from \"@mui/material/Switch\";\r\nimport type { SwitchProps as MuiSwitchProps } from \"@mui/material/Switch\";\r\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\r\nimport Box from \"@mui/material/Box\";\r\n\r\n/**\r\n * Switch - Portnet UI v2\r\n *\r\n * Charter §03 · Component \"Switch / Toggle\". Binary on/off control with\r\n * IMMEDIATE effect. Use Checkbox instead for deferred choices that\r\n * take effect on form submission.\r\n *\r\n * <Switch\r\n * checked={notifications}\r\n * onChange={e => setNotifications(e.target.checked)}\r\n * label=\"Notifications par e-mail\"\r\n * description=\"Recevoir un e-mail à chaque nouvelle décision.\"\r\n * />\r\n *\r\n * Without a label (use only inside table cells / inline toggles where\r\n * the surrounding context provides the label):\r\n *\r\n * <Switch checked={v} onChange={...} aria-label=\"Activer le mode sombre\" />\r\n */\r\nexport interface SwitchProps extends Omit<MuiSwitchProps, \"size\"> {\r\n label?: React.ReactNode | undefined;\r\n description?: React.ReactNode | undefined;\r\n size?: \"sm\" | \"md\" | undefined;\r\n labelPlacement?: \"end\" | \"start\" | undefined;\r\n}\r\n\r\nconst Switch = React.forwardRef<React.ComponentRef<typeof MuiSwitch>, SwitchProps>(function Switch(\r\n {\r\n checked,\r\n onChange,\r\n label,\r\n description,\r\n disabled,\r\n size = \"md\",\r\n labelPlacement = \"end\",\r\n sx,\r\n \"aria-label\": ariaLabel,\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n const descId = React.useId();\r\n\r\n if (process.env[\"NODE_ENV\"] !== \"production\" && !label && !ariaLabel) {\r\n // eslint-disable-next-line no-console\r\n console.warn(\r\n \"[@portnet/ui v2] <Switch> without `label` requires `aria-label` for screen readers.\",\r\n );\r\n }\r\n\r\n const sw = (\r\n <MuiSwitch\r\n ref={ref}\r\n checked={!!checked}\r\n onChange={onChange}\r\n disabled={disabled}\r\n size={size === \"sm\" ? \"small\" : \"medium\"}\r\n slotProps={{\r\n // MUI v9: the input slot bag forwards directly to the\r\n // internal <input type=\"checkbox\" role=\"switch\"/> element.\r\n // Was `inputProps={...}` at the Switch top level — deprecated\r\n // in v6, removed in v9.\r\n input: {\r\n \"aria-label\": ariaLabel,\r\n \"aria-describedby\": description ? descId : undefined,\r\n },\r\n }}\r\n sx={{\r\n \"& .MuiSwitch-thumb\": { boxShadow: \"var(--shadow-xs)\" },\r\n \"& .MuiSwitch-track\": {\r\n backgroundColor: \"var(--border-strong)\",\r\n opacity: 1,\r\n },\r\n \"& .Mui-checked + .MuiSwitch-track\": {\r\n backgroundColor: \"var(--accent) !important\",\r\n opacity: \"1 !important\",\r\n },\r\n // R-AI.1 - reuse the canonical focus halo token (Batch 1\r\n // shadows.focus → --shadow-focus). Hosts retuning the brand\r\n // accent automatically retune the Switch focus state too.\r\n \"& .MuiSwitch-switchBase.Mui-focusVisible .MuiSwitch-thumb\": {\r\n boxShadow: \"var(--shadow-focus)\",\r\n },\r\n ...sx,\r\n }}\r\n {...rest}\r\n />\r\n );\r\n\r\n if (!label && !description) return sw;\r\n\r\n const labelNode = (\r\n <Box sx={{ display: \"flex\", flexDirection: \"column\", paddingY: 0.25 }}>\r\n {label && (\r\n <Box\r\n component=\"span\"\r\n sx={{\r\n fontSize: \"var(--text-sm)\",\r\n fontWeight: \"var(--fw-medium)\",\r\n color: \"var(--fg)\",\r\n }}\r\n >\r\n {label}\r\n </Box>\r\n )}\r\n {description && (\r\n <Box\r\n id={descId}\r\n component=\"span\"\r\n sx={{\r\n fontSize: \"var(--text-xs)\",\r\n color: \"var(--fg-subtle)\",\r\n lineHeight: \"var(--lh-normal)\",\r\n }}\r\n >\r\n {description}\r\n </Box>\r\n )}\r\n </Box>\r\n );\r\n\r\n return (\r\n <FormControlLabel\r\n control={sw}\r\n label={labelNode}\r\n labelPlacement={labelPlacement}\r\n disabled={disabled}\r\n sx={{\r\n margin: 0,\r\n gap: 1,\r\n alignItems: description ? \"flex-start\" : \"center\",\r\n }}\r\n />\r\n );\r\n});\r\n\r\nexport default Switch;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Switch.js","names":["React","_interopRequireWildcard","require","_Switch","_interopRequireDefault","_FormControlLabel","_Box","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Switch","forwardRef","checked","onChange","label","description","disabled","size","labelPlacement","sx","ariaLabel","rest","ref","descId","useId","process","env","console","warn","sw","jsx","slotProps","input","undefined","boxShadow","backgroundColor","opacity","labelNode","jsxs","display","flexDirection","paddingY","children","component","fontSize","fontWeight","color","id","lineHeight","control","margin","gap","alignItems","_default","exports"],"sources":["../../../src/lib/v2/components/Switch.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport MuiSwitch from \"@mui/material/Switch\";\r\nimport type { SwitchProps as MuiSwitchProps } from \"@mui/material/Switch\";\r\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\r\nimport Box from \"@mui/material/Box\";\r\n\r\n/**\r\n * Switch - Portnet UI v2\r\n *\r\n * Charter §03 · Component \"Switch / Toggle\". Binary on/off control with\r\n * IMMEDIATE effect. Use Checkbox instead for deferred choices that\r\n * take effect on form submission.\r\n *\r\n * <Switch\r\n * checked={notifications}\r\n * onChange={e => setNotifications(e.target.checked)}\r\n * label=\"Notifications par e-mail\"\r\n * description=\"Recevoir un e-mail à chaque nouvelle décision.\"\r\n * />\r\n *\r\n * Without a label (use only inside table cells / inline toggles where\r\n * the surrounding context provides the label):\r\n *\r\n * <Switch checked={v} onChange={...} aria-label=\"Activer le mode sombre\" />\r\n */\r\nexport interface SwitchProps extends Omit<MuiSwitchProps, \"size\"> {\r\n label?: React.ReactNode | undefined;\r\n description?: React.ReactNode | undefined;\r\n size?: \"sm\" | \"md\" | undefined;\r\n labelPlacement?: \"end\" | \"start\" | undefined;\r\n}\r\n\r\nconst Switch = React.forwardRef<React.ComponentRef<typeof MuiSwitch>, SwitchProps>(function Switch(\r\n {\r\n checked,\r\n onChange,\r\n label,\r\n description,\r\n disabled,\r\n size = \"md\",\r\n labelPlacement = \"end\",\r\n sx,\r\n \"aria-label\": ariaLabel,\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n const descId = React.useId();\r\n\r\n if (process.env[\"NODE_ENV\"] !== \"production\" && !label && !ariaLabel) {\r\n // eslint-disable-next-line no-console\r\n console.warn(\r\n \"[@portnet/ui v2] <Switch> without `label` requires `aria-label` for screen readers.\",\r\n );\r\n }\r\n\r\n const sw = (\r\n <MuiSwitch\r\n ref={ref}\r\n checked={!!checked}\r\n onChange={onChange}\r\n disabled={disabled}\r\n size={size === \"sm\" ? \"small\" : \"medium\"}\r\n slotProps={{\r\n // MUI v9: the input slot bag forwards directly to the\r\n // internal <input type=\"checkbox\" role=\"switch\"/> element.\r\n // Was `inputProps={...}` at the Switch top level — deprecated\r\n // in v6, removed in v9.\r\n input: {\r\n \"aria-label\": ariaLabel,\r\n \"aria-describedby\": description ? descId : undefined,\r\n },\r\n }}\r\n sx={{\r\n \"& .MuiSwitch-thumb\": { boxShadow: \"var(--shadow-xs)\" },\r\n \"& .MuiSwitch-track\": {\r\n backgroundColor: \"var(--border-strong)\",\r\n opacity: 1,\r\n },\r\n \"& .Mui-checked + .MuiSwitch-track\": {\r\n backgroundColor: \"var(--accent) !important\",\r\n opacity: \"1 !important\",\r\n },\r\n // R-AI.1 - reuse the canonical focus halo token (Batch 1\r\n // shadows.focus → --shadow-focus). Hosts retuning the brand\r\n // accent automatically retune the Switch focus state too.\r\n \"& .MuiSwitch-switchBase.Mui-focusVisible .MuiSwitch-thumb\": {\r\n boxShadow: \"var(--shadow-focus)\",\r\n },\r\n ...sx,\r\n }}\r\n {...rest}\r\n />\r\n );\r\n\r\n if (!label && !description) return sw;\r\n\r\n const labelNode = (\r\n <Box sx={{ display: \"flex\", flexDirection: \"column\", paddingY: 0.25 }}>\r\n {label && (\r\n <Box\r\n component=\"span\"\r\n sx={{\r\n fontSize: \"var(--text-sm)\",\r\n fontWeight: \"var(--fw-medium)\",\r\n color: \"var(--fg)\",\r\n }}\r\n >\r\n {label}\r\n </Box>\r\n )}\r\n {description && (\r\n <Box\r\n id={descId}\r\n component=\"span\"\r\n sx={{\r\n fontSize: \"var(--text-xs)\",\r\n color: \"var(--fg-subtle)\",\r\n lineHeight: \"var(--lh-normal)\",\r\n }}\r\n >\r\n {description}\r\n </Box>\r\n )}\r\n </Box>\r\n );\r\n\r\n return (\r\n <FormControlLabel\r\n control={sw}\r\n label={labelNode}\r\n labelPlacement={labelPlacement}\r\n disabled={disabled}\r\n sx={{\r\n margin: 0,\r\n gap: 1,\r\n alignItems: description ? \"flex-start\" : \"center\",\r\n }}\r\n />\r\n );\r\n});\r\n\r\nexport default Switch;\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ import * as React from "react";
2
+ import type { SxProps, Theme } from "@mui/material/styles";
3
+ export interface TabPanelProps {
4
+ /**
5
+ * The `id` of the `TabItem` this panel belongs to — the same string passed to
6
+ * `Tabs.items`, NOT a DOM id. The DOM ids are derived here so the two halves
7
+ * of the contract cannot disagree.
8
+ */
9
+ tabId: string;
10
+ children?: React.ReactNode | undefined;
11
+ /** @default true — see the APG note in the file header. */
12
+ focusable?: boolean | undefined;
13
+ sx?: SxProps<Theme> | undefined;
14
+ }
15
+ declare function TabPanel({ tabId, children, focusable, sx }: TabPanelProps): React.JSX.Element;
16
+ export default TabPanel;
17
+ //# sourceMappingURL=TabPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabPanel.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/TabPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAgE3D,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACvC,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;CACjC;AAED,iBAAS,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAgB,EAAE,EAAE,EAAE,EAAE,aAAa,qBAezE;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _Box = _interopRequireDefault(require("@mui/material/Box"));
9
+ var _Tabs = require("./Tabs");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
+ /**
14
+ * TabPanel — Portnet UI v2
15
+ *
16
+ * The other half of `Tabs` (capability gap G-46).
17
+ *
18
+ * ─────────────────────────────────────────────────────────────────────────────
19
+ * WHY THIS BELONGS IN THE LIBRARY
20
+ *
21
+ * `Tabs` emits HALF of the R-Ar.6 contract: every tab carries its own `id` and
22
+ * an `aria-controls` pointing at `pui-panel-<id>`. The element that must carry
23
+ * that id — with `role="tabpanel"` and an `aria-labelledby` back to the tab —
24
+ * was left entirely to the host, and the library shipped nothing for it.
25
+ *
26
+ * So the id format was PRIVATE knowledge every host had to re-spell as a
27
+ * literal. A typo there is invisible: the markup stays valid and the tab simply
28
+ * advertises a controlled element that does not exist. A BROKEN `aria-controls`
29
+ * is worse than none — assistive technology offers the user a relationship it
30
+ * then cannot follow.
31
+ *
32
+ * Raised from `addm-fe` (Area 5), whose consultation page rendered its panels
33
+ * as bare `{tab === "x" && <…/>}` conditionals: both tabs pointed at nothing,
34
+ * and the content had no role and no accessible name. That module wrote its own
35
+ * `TabPanel` by reading the id convention out of `Tabs.tsx` — which is the
36
+ * proof that the knowledge was required and unpublished.
37
+ * ─────────────────────────────────────────────────────────────────────────────
38
+ *
39
+ * MOUNTING IS THE HOST'S DECISION, deliberately. This component does not take
40
+ * the active tab value and does not hide itself: a host that mounts panels
41
+ * conditionally (`{tab === "x" && <TabPanel …/>}`) keeps a light DOM, while one
42
+ * that needs to preserve panel state across switches renders them all and hides
43
+ * the inactive ones itself. Owning that choice here would force the second
44
+ * behaviour on everyone, and a `hidden` panel still in the DOM changes what a
45
+ * screen reader enumerates.
46
+ *
47
+ * `focusable` — APG requires a tabpanel to be focusable when it contains NO
48
+ * focusable element, so a keyboard user can reach the content after arrowing
49
+ * along the tablist. A panel of read-only `KV` text is exactly that case, and
50
+ * it is the common one on a consultation page, hence the default. The APG also
51
+ * permits applying it uniformly, which is why this is a boolean rather than
52
+ * something the host must reason about per panel.
53
+ *
54
+ * Usage:
55
+ *
56
+ * <Tabs value={tab} onChange={setTab} items={TABS} aria-label="Sections" />
57
+ *
58
+ * {tab === "infos" && (
59
+ * <TabPanel tabId="infos">
60
+ * <KVGrid>…</KVGrid>
61
+ * </TabPanel>
62
+ * )}
63
+ */const FOCUS_SX = Object.freeze({
64
+ "&:focus-visible": {
65
+ outline: "2px solid var(--accent)",
66
+ outlineOffset: "var(--pui-outline-offset)"
67
+ }
68
+ });
69
+ function TabPanel({
70
+ tabId,
71
+ children,
72
+ focusable = true,
73
+ sx
74
+ }) {
75
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
76
+ role: "tabpanel",
77
+ id: (0, _Tabs.tabPanelDomId)(tabId),
78
+ "aria-labelledby": (0, _Tabs.tabDomId)(tabId),
79
+ ...(focusable ? {
80
+ tabIndex: 0
81
+ } : {}),
82
+ sx: {
83
+ ...(focusable ? FOCUS_SX : {}),
84
+ ...sx
85
+ },
86
+ children: children
87
+ });
88
+ }
89
+ var _default = exports.default = TabPanel;
90
+ //# sourceMappingURL=TabPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabPanel.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_Tabs","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FOCUS_SX","freeze","outline","outlineOffset","TabPanel","tabId","children","focusable","sx","jsx","role","id","tabPanelDomId","tabDomId","tabIndex","_default","exports"],"sources":["../../../src/lib/v2/components/TabPanel.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\nimport type { SystemStyleObject } from \"@mui/system\";\r\n\r\nimport { tabDomId, tabPanelDomId } from \"./Tabs\";\r\n\r\n/**\r\n * TabPanel — Portnet UI v2\r\n *\r\n * The other half of `Tabs` (capability gap G-46).\r\n *\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n * WHY THIS BELONGS IN THE LIBRARY\r\n *\r\n * `Tabs` emits HALF of the R-Ar.6 contract: every tab carries its own `id` and\r\n * an `aria-controls` pointing at `pui-panel-<id>`. The element that must carry\r\n * that id — with `role=\"tabpanel\"` and an `aria-labelledby` back to the tab —\r\n * was left entirely to the host, and the library shipped nothing for it.\r\n *\r\n * So the id format was PRIVATE knowledge every host had to re-spell as a\r\n * literal. A typo there is invisible: the markup stays valid and the tab simply\r\n * advertises a controlled element that does not exist. A BROKEN `aria-controls`\r\n * is worse than none — assistive technology offers the user a relationship it\r\n * then cannot follow.\r\n *\r\n * Raised from `addm-fe` (Area 5), whose consultation page rendered its panels\r\n * as bare `{tab === \"x\" && <…/>}` conditionals: both tabs pointed at nothing,\r\n * and the content had no role and no accessible name. That module wrote its own\r\n * `TabPanel` by reading the id convention out of `Tabs.tsx` — which is the\r\n * proof that the knowledge was required and unpublished.\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n *\r\n * MOUNTING IS THE HOST'S DECISION, deliberately. This component does not take\r\n * the active tab value and does not hide itself: a host that mounts panels\r\n * conditionally (`{tab === \"x\" && <TabPanel …/>}`) keeps a light DOM, while one\r\n * that needs to preserve panel state across switches renders them all and hides\r\n * the inactive ones itself. Owning that choice here would force the second\r\n * behaviour on everyone, and a `hidden` panel still in the DOM changes what a\r\n * screen reader enumerates.\r\n *\r\n * `focusable` — APG requires a tabpanel to be focusable when it contains NO\r\n * focusable element, so a keyboard user can reach the content after arrowing\r\n * along the tablist. A panel of read-only `KV` text is exactly that case, and\r\n * it is the common one on a consultation page, hence the default. The APG also\r\n * permits applying it uniformly, which is why this is a boolean rather than\r\n * something the host must reason about per panel.\r\n *\r\n * Usage:\r\n *\r\n * <Tabs value={tab} onChange={setTab} items={TABS} aria-label=\"Sections\" />\r\n *\r\n * {tab === \"infos\" && (\r\n * <TabPanel tabId=\"infos\">\r\n * <KVGrid>…</KVGrid>\r\n * </TabPanel>\r\n * )}\r\n */\r\n\r\nconst FOCUS_SX = Object.freeze({\r\n \"&:focus-visible\": {\r\n outline: \"2px solid var(--accent)\",\r\n outlineOffset: \"var(--pui-outline-offset)\",\r\n },\r\n} satisfies SxProps<Theme>);\r\n\r\nexport interface TabPanelProps {\r\n /**\r\n * The `id` of the `TabItem` this panel belongs to — the same string passed to\r\n * `Tabs.items`, NOT a DOM id. The DOM ids are derived here so the two halves\r\n * of the contract cannot disagree.\r\n */\r\n tabId: string;\r\n children?: React.ReactNode | undefined;\r\n /** @default true — see the APG note in the file header. */\r\n focusable?: boolean | undefined;\r\n sx?: SxProps<Theme> | undefined;\r\n}\r\n\r\nfunction TabPanel({ tabId, children, focusable = true, sx }: TabPanelProps) {\r\n return (\r\n <Box\r\n role=\"tabpanel\"\r\n id={tabPanelDomId(tabId)}\r\n aria-labelledby={tabDomId(tabId)}\r\n {...(focusable ? { tabIndex: 0 } : {})}\r\n sx={{\r\n ...(focusable ? FOCUS_SX : {}),\r\n ...(sx as SystemStyleObject<Theme>),\r\n }}\r\n >\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default TabPanel;\r\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAC,sBAAA,CAAAF,OAAA;AAIA,IAAAG,KAAA,GAAAH,OAAA;AAAiD,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAE,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAM,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,gBAAAN,CAAA,IAAAH,CAAA,gBAAAG,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAG,CAAA,OAAAK,CAAA,IAAAD,CAAA,GAAAS,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,OAAAK,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAN,CAAA,EAAAK,CAAA,IAAAC,CAAA,CAAAN,CAAA,IAAAH,CAAA,CAAAG,CAAA,WAAAM,CAAA,KAAAT,CAAA,EAAAG,CAAA;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAEA,MAAMgB,QAAQ,GAAGH,MAAM,CAACI,MAAM,CAAC;EAC7B,iBAAiB,EAAE;IACjBC,OAAO,EAAE,yBAAyB;IAClCC,aAAa,EAAE;EACjB;AACF,CAA0B,CAAC;AAe3B,SAASC,QAAQA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC,SAAS,GAAG,IAAI;EAAEC;AAAkB,CAAC,EAAE;EAC1E,oBACE,IAAA5B,WAAA,CAAA6B,GAAA,EAAChC,IAAA,CAAAM,OAAG;IACF2B,IAAI,EAAC,UAAU;IACfC,EAAE,EAAE,IAAAC,mBAAa,EAACP,KAAK,CAAE;IACzB,mBAAiB,IAAAQ,cAAQ,EAACR,KAAK,CAAE;IAAA,IAC5BE,SAAS,GAAG;MAAEO,QAAQ,EAAE;IAAE,CAAC,GAAG,CAAC,CAAC;IACrCN,EAAE,EAAE;MACF,IAAID,SAAS,GAAGP,QAAQ,GAAG,CAAC,CAAC,CAAC;MAC9B,GAAIQ;IACN,CAAE;IAAAF,QAAA,EAEDA;EAAQ,CACN,CAAC;AAEV;AAAC,IAAAS,QAAA,GAAAC,OAAA,CAAAjC,OAAA,GAEcqB,QAAQ","ignoreList":[]}
@@ -44,6 +44,31 @@ export interface TabsProps {
44
44
  items: TabItem[];
45
45
  "aria-label"?: string | undefined;
46
46
  }
47
+ /**
48
+ * DOM id of a tab, and of the panel it controls.
49
+ *
50
+ * ─── POURQUOI CES DEUX FONCTIONS SONT EXPORTÉES (gap G-46) ─────────────
51
+ *
52
+ * `Tabs` émet la MOITIÉ du contrat R-Ar.6 : chaque onglet porte son `id` et un
53
+ * `aria-controls` vers `pui-panel-<id>`. L'autre moitié — le panneau qui porte
54
+ * ce même id, `role="tabpanel"` et `aria-labelledby` — appartient à l'hôte, et
55
+ * la library ne la fournissait pas.
56
+ *
57
+ * Le format des ids était donc une connaissance PRIVÉE que chaque hôte devait
58
+ * redupliquer en chaîne littérale. Une faute de frappe y est invisible : le
59
+ * balisage reste valide, l'onglet annonce simplement un élément contrôlé qui
60
+ * n'existe pas — et un `aria-controls` cassé est PIRE que son absence, puisque
61
+ * la technologie d'assistance propose à l'utilisateur une relation qu'elle ne
62
+ * peut ensuite pas suivre.
63
+ *
64
+ * Relevé depuis `addm-fe` (Area 5), où `ConsultDemande` rendait ses panneaux en
65
+ * `{tab === "x" && <…/>}` nus : les deux onglets pointaient dans le vide, sans
66
+ * `role` ni nom accessible sur le contenu. Le module avait écrit son propre
67
+ * `TabPanel` en relisant la convention dans CE fichier — preuve que la
68
+ * connaissance était requise et non publiée.
69
+ */
70
+ export declare const tabDomId: (id: string) => string;
71
+ export declare const tabPanelDomId: (id: string) => string;
47
72
  declare function Tabs({ value, onChange, items, "aria-label": ariaLabel }: TabsProps): React.JSX.Element;
48
73
  export default Tabs;
49
74
  //# sourceMappingURL=Tabs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;CAC/D;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACjD,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAuED,iBAAS,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,SAAsB,EAAE,EAAE,SAAS,qBAgDxF;AAED,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;CAC/D;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACjD,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,QAAQ,GAAI,IAAI,MAAM,KAAG,MAAyB,CAAC;AAChE,eAAO,MAAM,aAAa,GAAI,IAAI,MAAM,KAAG,MAA2B,CAAC;AAuEvE,iBAAS,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,SAAsB,EAAE,EAAE,SAAS,qBAgDxF;AAED,eAAe,IAAI,CAAC"}