@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
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.spacingBase = exports.spacing = exports["default"] = void 0;
6
+ exports.spacingBase = exports.spacing = exports.default = void 0;
7
7
  /**
8
8
  * Spacing tokens — Portnet UI v2
9
9
  * Aligned with Design System v1.0 §02.3 — base grid 8 px.
@@ -16,7 +16,7 @@ exports.spacingBase = exports.spacing = exports["default"] = void 0;
16
16
  * - Semantic alias (xs..xxl) — preferred for new code.
17
17
  * Both resolve to the same pixel values.
18
18
  */
19
- var spacing = exports.spacing = {
19
+ const spacing = exports.spacing = {
20
20
  s1: 4,
21
21
  // gap d'icônes inline
22
22
  s2: 8,
@@ -52,6 +52,6 @@ var spacing = exports.spacing = {
52
52
  * `theme.spacing(2)` == 8 px. Never use fractional units
53
53
  * (`theme.spacing(2.5)` = 10 px) — R-S.1 violation.
54
54
  */
55
- var spacingBase = exports.spacingBase = 4;
56
- var _default = exports["default"] = spacing;
55
+ const spacingBase = exports.spacingBase = 4;
56
+ var _default = exports.default = spacing;
57
57
  //# sourceMappingURL=spacing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"spacing.js","names":["spacing","exports","s1","s2","s3","s4","s5","s6","s7","s8","s9","s10","xs","sm","md","lg","xl","xxl","spacingBase","_default"],"sources":["../../../src/lib/v2/tokens/spacing.ts"],"sourcesContent":["/**\r\n * Spacing tokens — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.3 — base grid 8 px.\r\n *\r\n * R-S.1 — Every padding / margin / gap is a multiple of 4 (preferably 8).\r\n * R-S.2 — Use flex/grid `gap`; never sibling-margin.\r\n *\r\n * Two equivalent APIs are exposed:\r\n * - Numeric scale (s1..s10) — historical; keep stable.\r\n * - Semantic alias (xs..xxl) — preferred for new code.\r\n * Both resolve to the same pixel values.\r\n */\r\nexport const spacing = {\r\n s1: 4, // gap d'icônes inline\r\n s2: 8, // gap boutons d'un groupe\r\n s3: 12, // padding cards compact\r\n s4: 16, // gap formulaire (default)\r\n s5: 20, // padding card body\r\n s6: 24, // gap entre sections\r\n s7: 32, // padding content principal\r\n s8: 40, // gap blocs majeurs\r\n s9: 48, // empty states\r\n s10: 64, // marges hero / landing\r\n\r\n /* Semantic aliases — preferred for new code */\r\n xs: 4,\r\n sm: 8,\r\n md: 16,\r\n lg: 24,\r\n xl: 32,\r\n xxl: 48,\r\n};\r\n\r\n/**\r\n * MUI's `theme.spacing(n)` factor. Keep MUI's 4-px unit so existing\r\n * `theme.spacing(2)` == 8 px. Never use fractional units\r\n * (`theme.spacing(2.5)` = 10 px) — R-S.1 violation.\r\n */\r\nexport const spacingBase = 4;\r\n\r\nexport default spacing;\r\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG;EACrBE,EAAE,EAAG,CAAC;EAAG;EACTC,EAAE,EAAG,CAAC;EAAG;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,GAAG,EAAE,EAAE;EAAE;;EAET;EACAC,EAAE,EAAI,CAAC;EACPC,EAAE,EAAI,CAAC;EACPC,EAAE,EAAG,EAAE;EACPC,EAAE,EAAG,EAAE;EACPC,EAAE,EAAG,EAAE;EACPC,GAAG,EAAE;AACP,CAAC;;AAED;AACA;AACA;AACA;AACA;AACO,IAAMC,WAAW,GAAAjB,OAAA,CAAAiB,WAAA,GAAG,CAAC;AAAC,IAAAC,QAAA,GAAAlB,OAAA,cAEdD,OAAO","ignoreList":[]}
1
+ {"version":3,"file":"spacing.js","names":["spacing","exports","s1","s2","s3","s4","s5","s6","s7","s8","s9","s10","xs","sm","md","lg","xl","xxl","spacingBase","_default","default"],"sources":["../../../src/lib/v2/tokens/spacing.ts"],"sourcesContent":["/**\r\n * Spacing tokens — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.3 — base grid 8 px.\r\n *\r\n * R-S.1 — Every padding / margin / gap is a multiple of 4 (preferably 8).\r\n * R-S.2 — Use flex/grid `gap`; never sibling-margin.\r\n *\r\n * Two equivalent APIs are exposed:\r\n * - Numeric scale (s1..s10) — historical; keep stable.\r\n * - Semantic alias (xs..xxl) — preferred for new code.\r\n * Both resolve to the same pixel values.\r\n */\r\nexport const spacing = {\r\n s1: 4, // gap d'icônes inline\r\n s2: 8, // gap boutons d'un groupe\r\n s3: 12, // padding cards compact\r\n s4: 16, // gap formulaire (default)\r\n s5: 20, // padding card body\r\n s6: 24, // gap entre sections\r\n s7: 32, // padding content principal\r\n s8: 40, // gap blocs majeurs\r\n s9: 48, // empty states\r\n s10: 64, // marges hero / landing\r\n\r\n /* Semantic aliases — preferred for new code */\r\n xs: 4,\r\n sm: 8,\r\n md: 16,\r\n lg: 24,\r\n xl: 32,\r\n xxl: 48,\r\n};\r\n\r\n/**\r\n * MUI's `theme.spacing(n)` factor. Keep MUI's 4-px unit so existing\r\n * `theme.spacing(2)` == 8 px. Never use fractional units\r\n * (`theme.spacing(2.5)` = 10 px) — R-S.1 violation.\r\n */\r\nexport const spacingBase = 4;\r\n\r\nexport default spacing;\r\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG;EACrBE,EAAE,EAAG,CAAC;EAAG;EACTC,EAAE,EAAG,CAAC;EAAG;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,EAAE,EAAG,EAAE;EAAE;EACTC,GAAG,EAAE,EAAE;EAAE;;EAET;EACAC,EAAE,EAAI,CAAC;EACPC,EAAE,EAAI,CAAC;EACPC,EAAE,EAAG,EAAE;EACPC,EAAE,EAAG,EAAE;EACPC,EAAE,EAAG,EAAE;EACPC,GAAG,EAAE;AACP,CAAC;;AAED;AACA;AACA;AACA;AACA;AACO,MAAMC,WAAW,GAAAjB,OAAA,CAAAiB,WAAA,GAAG,CAAC;AAAC,IAAAC,QAAA,GAAAlB,OAAA,CAAAmB,OAAA,GAEdpB,OAAO","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.state = exports["default"] = void 0;
6
+ exports.state = exports.default = void 0;
7
7
  /**
8
8
  * State tokens — Portnet UI v2
9
9
  * Aligned with Design System v1.0 §02.5 (states).
@@ -24,7 +24,7 @@ exports.state = exports["default"] = void 0;
24
24
  * fourth tier would dilute the meaning.
25
25
  */
26
26
 
27
- var state = exports.state = {
27
+ const state = exports.state = {
28
28
  /**
29
29
  * Pointer-hover wash. Subtle enough to coexist with the existing
30
30
  * surface colour without blocking text contrast. R-1.4.3.
@@ -43,5 +43,5 @@ var state = exports.state = {
43
43
  */
44
44
  selectedOverlay: "color-mix(in srgb, currentColor 12%, transparent)"
45
45
  };
46
- var _default = exports["default"] = state;
46
+ var _default = exports.default = state;
47
47
  //# sourceMappingURL=state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","names":["state","exports","hoverOverlay","pressedOverlay","selectedOverlay","_default"],"sources":["../../../src/lib/v2/tokens/state.ts"],"sourcesContent":["/**\r\n * State tokens — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.5 (states).\r\n *\r\n * Semantic interaction overlays. Replaces ad-hoc `color-mix(in srgb,\r\n * currentColor 8%, transparent)` / 10% / 14% / 18% / 30% percentages\r\n * scattered across component sx blocks with three named tiers.\r\n *\r\n * The overlays use `currentColor` so they ADAPT to whichever\r\n * foreground is in scope:\r\n * - On a light card with --fg ink, the overlay is a soft ink wash.\r\n * - On the BulkActionBar (bg = --fg, fg = --fg-inverse), the\r\n * overlay is a soft white wash. Same token, opposite intent.\r\n *\r\n * Three tiers — DO NOT add a fourth without DS council sign-off.\r\n * The tiers map onto a perceptual scale (light tap, firm press,\r\n * persistent selection) that hosts have learned to recognise; a\r\n * fourth tier would dilute the meaning.\r\n */\r\n\r\nexport const state = {\r\n /**\r\n * Pointer-hover wash. Subtle enough to coexist with the existing\r\n * surface colour without blocking text contrast. R-1.4.3.\r\n */\r\n hoverOverlay: \"color-mix(in srgb, currentColor 8%, transparent)\",\r\n\r\n /**\r\n * Active / pressed wash. Stronger than hover but still translucent\r\n * so the underlying state (selected, focused) remains visible.\r\n */\r\n pressedOverlay: \"color-mix(in srgb, currentColor 14%, transparent)\",\r\n\r\n /**\r\n * Persistent \"selected\" state — list rows, chip selected, etc.\r\n * Slightly weaker than pressed so a SELECTED row that is also\r\n * hovered (overlay = hover + selected ≈ 20%) doesn't become a\r\n * solid block.\r\n */\r\n selectedOverlay: \"color-mix(in srgb, currentColor 12%, transparent)\",\r\n};\r\n\r\nexport default state;\r\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,IAAMA,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACnB;AACF;AACA;AACA;EACEE,YAAY,EAAK,kDAAkD;EAEnE;AACF;AACA;AACA;EACEC,cAAc,EAAG,mDAAmD;EAEpE;AACF;AACA;AACA;AACA;AACA;EACEC,eAAe,EAAE;AACnB,CAAC;AAAC,IAAAC,QAAA,GAAAJ,OAAA,cAEaD,KAAK","ignoreList":[]}
1
+ {"version":3,"file":"state.js","names":["state","exports","hoverOverlay","pressedOverlay","selectedOverlay","_default","default"],"sources":["../../../src/lib/v2/tokens/state.ts"],"sourcesContent":["/**\r\n * State tokens — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.5 (states).\r\n *\r\n * Semantic interaction overlays. Replaces ad-hoc `color-mix(in srgb,\r\n * currentColor 8%, transparent)` / 10% / 14% / 18% / 30% percentages\r\n * scattered across component sx blocks with three named tiers.\r\n *\r\n * The overlays use `currentColor` so they ADAPT to whichever\r\n * foreground is in scope:\r\n * - On a light card with --fg ink, the overlay is a soft ink wash.\r\n * - On the BulkActionBar (bg = --fg, fg = --fg-inverse), the\r\n * overlay is a soft white wash. Same token, opposite intent.\r\n *\r\n * Three tiers — DO NOT add a fourth without DS council sign-off.\r\n * The tiers map onto a perceptual scale (light tap, firm press,\r\n * persistent selection) that hosts have learned to recognise; a\r\n * fourth tier would dilute the meaning.\r\n */\r\n\r\nexport const state = {\r\n /**\r\n * Pointer-hover wash. Subtle enough to coexist with the existing\r\n * surface colour without blocking text contrast. R-1.4.3.\r\n */\r\n hoverOverlay: \"color-mix(in srgb, currentColor 8%, transparent)\",\r\n\r\n /**\r\n * Active / pressed wash. Stronger than hover but still translucent\r\n * so the underlying state (selected, focused) remains visible.\r\n */\r\n pressedOverlay: \"color-mix(in srgb, currentColor 14%, transparent)\",\r\n\r\n /**\r\n * Persistent \"selected\" state — list rows, chip selected, etc.\r\n * Slightly weaker than pressed so a SELECTED row that is also\r\n * hovered (overlay = hover + selected ≈ 20%) doesn't become a\r\n * solid block.\r\n */\r\n selectedOverlay: \"color-mix(in srgb, currentColor 12%, transparent)\",\r\n};\r\n\r\nexport default state;\r\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMA,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACnB;AACF;AACA;AACA;EACEE,YAAY,EAAK,kDAAkD;EAEnE;AACF;AACA;AACA;EACEC,cAAc,EAAG,mDAAmD;EAEpE;AACF;AACA;AACA;AACA;AACA;EACEC,eAAe,EAAE;AACnB,CAAC;AAAC,IAAAC,QAAA,GAAAJ,OAAA,CAAAK,OAAA,GAEaN,KAAK","ignoreList":[]}
@@ -3,15 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports["default"] = exports.STATUS_LABELS_FR = exports.STATUS_KEYS = void 0;
6
+ exports.default = exports.STATUS_LABELS_FR = exports.STATUS_KEYS = void 0;
7
7
  exports.statusToken = statusToken;
8
8
  var _colors = require("./colors");
9
- 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); }
10
- 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; }
11
- 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; }
12
- 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; }
13
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
14
- 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); } /**
9
+ /**
15
10
  * Status palette mapping — Portnet UI v2
16
11
  *
17
12
  * Six and only six canonical workflow statuses (R-2.2).
@@ -23,8 +18,9 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
23
18
  *
24
19
  * Charter §02.1 / R-2.2.
25
20
  */
26
- var STATUS_KEYS = exports.STATUS_KEYS = Object.freeze(["new", "sent", "pending", "approved", "rejected", "neutral"]);
27
- var _STATUS_KEYS_SET = new Set(STATUS_KEYS);
21
+
22
+ const STATUS_KEYS = exports.STATUS_KEYS = Object.freeze(["new", "sent", "pending", "approved", "rejected", "neutral"]);
23
+ const _STATUS_KEYS_SET = new Set(STATUS_KEYS);
28
24
 
29
25
  /**
30
26
  * Resolve a status descriptor.
@@ -38,35 +34,37 @@ function statusToken(key) {
38
34
  if (!_STATUS_KEYS_SET.has(key)) {
39
35
  if (process.env["NODE_ENV"] !== "production" && key !== undefined && key !== null) {
40
36
  // eslint-disable-next-line no-console
41
- console.warn("[@portnet/ui] statusToken: unknown key \"".concat(key, "\". ") + "Falling back to \"neutral\". Allowed: ".concat(STATUS_KEYS.join(", "), "."));
37
+ console.warn(`[@portnet/ui] statusToken: unknown key "${key}". ` + `Falling back to "neutral". Allowed: ${STATUS_KEYS.join(", ")}.`);
42
38
  }
43
- return _objectSpread(_objectSpread({}, _colors.status.neutral), {}, {
39
+ return {
40
+ ..._colors.status.neutral,
44
41
  cls: "status-neutral",
45
42
  key: "neutral"
46
- });
43
+ };
47
44
  }
48
- return _objectSpread(_objectSpread({}, _colors.status[key]), {}, {
49
- cls: "status-".concat(key),
50
- key: key
51
- });
45
+ return {
46
+ ..._colors.status[key],
47
+ cls: `status-${key}`,
48
+ key
49
+ };
52
50
  }
53
51
 
54
52
  /**
55
53
  * @deprecated FR labels belong in consumer i18n bundles, not tokens.
56
54
  * Will be removed in v0.3. Kept for backward compatibility only.
57
55
  */
58
- var STATUS_LABELS_FR = exports.STATUS_LABELS_FR = Object.freeze({
59
- "new": "Nouveau",
56
+ const STATUS_LABELS_FR = exports.STATUS_LABELS_FR = Object.freeze({
57
+ new: "Nouveau",
60
58
  sent: "Soumis",
61
59
  pending: "En attente",
62
60
  approved: "Approuvé",
63
61
  rejected: "Rejeté",
64
62
  neutral: "Neutre"
65
63
  });
66
- var statusPalette = {
67
- STATUS_KEYS: STATUS_KEYS,
68
- statusToken: statusToken,
69
- STATUS_LABELS_FR: STATUS_LABELS_FR
64
+ const statusPalette = {
65
+ STATUS_KEYS,
66
+ statusToken,
67
+ STATUS_LABELS_FR
70
68
  };
71
- var _default = exports["default"] = statusPalette;
69
+ var _default = exports.default = statusPalette;
72
70
  //# sourceMappingURL=statusPalette.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"statusPalette.js","names":["_colors","require","_typeof","obj","Symbol","iterator","constructor","prototype","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","TypeError","Number","STATUS_KEYS","exports","freeze","_STATUS_KEYS_SET","Set","statusToken","has","process","env","console","warn","concat","join","status","neutral","cls","STATUS_LABELS_FR","sent","pending","approved","rejected","statusPalette","_default"],"sources":["../../../src/lib/v2/tokens/statusPalette.ts"],"sourcesContent":["/**\r\n * Status palette mapping — Portnet UI v2\r\n *\r\n * Six and only six canonical workflow statuses (R-2.2).\r\n * Any new business status must map onto one of these.\r\n * New chips with custom colours require a charter amendment.\r\n *\r\n * UX writing (labels) is the consumer's responsibility (i18n) — do not\r\n * couple labels to design tokens.\r\n *\r\n * Charter §02.1 / R-2.2.\r\n */\r\nimport { status } from \"./colors\";\r\n\r\nexport const STATUS_KEYS = Object.freeze([\r\n \"new\", \"sent\", \"pending\", \"approved\", \"rejected\", \"neutral\",\r\n]);\r\n\r\nconst _STATUS_KEYS_SET = new Set(STATUS_KEYS);\r\n\r\n/**\r\n * Resolve a status descriptor.\r\n *\r\n * statusToken(\"approved\") → { key, soft, fg, cls: \"status-approved\" }\r\n *\r\n * Unknown keys silently resolve to `neutral`. In dev mode a console\r\n * warning is emitted to surface bad data without breaking UI.\r\n */\r\nexport function statusToken(key: keyof typeof status) {\r\n if (!_STATUS_KEYS_SET.has(key)) {\r\n if (\r\n process.env[\"NODE_ENV\"] !== \"production\" &&\r\n key !== undefined &&\r\n key !== null\r\n ) {\r\n // eslint-disable-next-line no-console\r\n console.warn(\r\n `[@portnet/ui] statusToken: unknown key \"${key}\". ` +\r\n `Falling back to \"neutral\". Allowed: ${STATUS_KEYS.join(\", \")}.`\r\n );\r\n }\r\n return { ...status.neutral, cls: \"status-neutral\", key: \"neutral\" };\r\n }\r\n return { ...status[key], cls: `status-${key}`, key };\r\n}\r\n\r\n/**\r\n * @deprecated FR labels belong in consumer i18n bundles, not tokens.\r\n * Will be removed in v0.3. Kept for backward compatibility only.\r\n */\r\nexport const STATUS_LABELS_FR = Object.freeze({\r\n new: \"Nouveau\",\r\n sent: \"Soumis\",\r\n pending: \"En attente\",\r\n approved: \"Approuvé\",\r\n rejected: \"Rejeté\",\r\n neutral: \"Neutre\",\r\n});\r\n\r\nconst statusPalette = { STATUS_KEYS, statusToken, STATUS_LABELS_FR };\r\nexport default statusPalette;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"statusPalette.js","names":["_colors","require","STATUS_KEYS","exports","Object","freeze","_STATUS_KEYS_SET","Set","statusToken","key","has","process","env","undefined","console","warn","join","status","neutral","cls","STATUS_LABELS_FR","new","sent","pending","approved","rejected","statusPalette","_default","default"],"sources":["../../../src/lib/v2/tokens/statusPalette.ts"],"sourcesContent":["/**\r\n * Status palette mapping — Portnet UI v2\r\n *\r\n * Six and only six canonical workflow statuses (R-2.2).\r\n * Any new business status must map onto one of these.\r\n * New chips with custom colours require a charter amendment.\r\n *\r\n * UX writing (labels) is the consumer's responsibility (i18n) — do not\r\n * couple labels to design tokens.\r\n *\r\n * Charter §02.1 / R-2.2.\r\n */\r\nimport { status } from \"./colors\";\r\n\r\nexport const STATUS_KEYS = Object.freeze([\r\n \"new\", \"sent\", \"pending\", \"approved\", \"rejected\", \"neutral\",\r\n]);\r\n\r\nconst _STATUS_KEYS_SET = new Set(STATUS_KEYS);\r\n\r\n/**\r\n * Resolve a status descriptor.\r\n *\r\n * statusToken(\"approved\") → { key, soft, fg, cls: \"status-approved\" }\r\n *\r\n * Unknown keys silently resolve to `neutral`. In dev mode a console\r\n * warning is emitted to surface bad data without breaking UI.\r\n */\r\nexport function statusToken(key: keyof typeof status) {\r\n if (!_STATUS_KEYS_SET.has(key)) {\r\n if (\r\n process.env[\"NODE_ENV\"] !== \"production\" &&\r\n key !== undefined &&\r\n key !== null\r\n ) {\r\n // eslint-disable-next-line no-console\r\n console.warn(\r\n `[@portnet/ui] statusToken: unknown key \"${key}\". ` +\r\n `Falling back to \"neutral\". Allowed: ${STATUS_KEYS.join(\", \")}.`\r\n );\r\n }\r\n return { ...status.neutral, cls: \"status-neutral\", key: \"neutral\" };\r\n }\r\n return { ...status[key], cls: `status-${key}`, key };\r\n}\r\n\r\n/**\r\n * @deprecated FR labels belong in consumer i18n bundles, not tokens.\r\n * Will be removed in v0.3. Kept for backward compatibility only.\r\n */\r\nexport const STATUS_LABELS_FR = Object.freeze({\r\n new: \"Nouveau\",\r\n sent: \"Soumis\",\r\n pending: \"En attente\",\r\n approved: \"Approuvé\",\r\n rejected: \"Rejeté\",\r\n neutral: \"Neutre\",\r\n});\r\n\r\nconst statusPalette = { STATUS_KEYS, statusToken, STATUS_LABELS_FR };\r\nexport default statusPalette;\r\n"],"mappings":";;;;;;;AAYA,IAAAA,OAAA,GAAAC,OAAA;AAZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAGE,MAAM,CAACC,MAAM,CAAC,CACvC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,CAC5D,CAAC;AAEF,MAAMC,gBAAgB,GAAG,IAAIC,GAAG,CAACL,WAAW,CAAC;;AAE7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASM,WAAWA,CAACC,GAAwB,EAAE;EACpD,IAAI,CAACH,gBAAgB,CAACI,GAAG,CAACD,GAAG,CAAC,EAAE;IAC9B,IACEE,OAAO,CAACC,GAAG,CAAC,UAAU,CAAC,KAAK,YAAY,IACxCH,GAAG,KAAKI,SAAS,IACjBJ,GAAG,KAAK,IAAI,EACZ;MACA;MACAK,OAAO,CAACC,IAAI,CACV,2CAA2CN,GAAG,KAAK,GACnD,uCAAuCP,WAAW,CAACc,IAAI,CAAC,IAAI,CAAC,GAC/D,CAAC;IACH;IACA,OAAO;MAAE,GAAGC,cAAM,CAACC,OAAO;MAAEC,GAAG,EAAE,gBAAgB;MAAEV,GAAG,EAAE;IAAU,CAAC;EACrE;EACA,OAAO;IAAE,GAAGQ,cAAM,CAACR,GAAG,CAAC;IAAEU,GAAG,EAAE,UAAUV,GAAG,EAAE;IAAEA;EAAI,CAAC;AACtD;;AAEA;AACA;AACA;AACA;AACO,MAAMW,gBAAgB,GAAAjB,OAAA,CAAAiB,gBAAA,GAAGhB,MAAM,CAACC,MAAM,CAAC;EAC5CgB,GAAG,EAAO,SAAS;EACnBC,IAAI,EAAM,QAAQ;EAClBC,OAAO,EAAG,YAAY;EACtBC,QAAQ,EAAE,UAAU;EACpBC,QAAQ,EAAE,QAAQ;EAClBP,OAAO,EAAG;AACZ,CAAC,CAAC;AAEF,MAAMQ,aAAa,GAAG;EAAExB,WAAW;EAAEM,WAAW;EAAEY;AAAiB,CAAC;AAAC,IAAAO,QAAA,GAAAxB,OAAA,CAAAyB,OAAA,GACtDF,aAAa","ignoreList":[]}
@@ -114,7 +114,12 @@
114
114
  "lg": { "value": 840 },
115
115
  "xl": { "value": 1000 }
116
116
  },
117
- "drawer": { "value": 560 }
117
+ "drawer": { "value": 560 },
118
+ "detail": {
119
+ "mainMin": { "value": 560, "_ref": "§07 R-L.7 — detail content column (flex-basis)" },
120
+ "aside": { "value": 300, "_ref": "§Detail / Vertical Progress — right-hand rail" },
121
+ "asideMin": { "value": 260, "_use": "rail wraps under the content below this width (WCAG 1.4.10)" }
122
+ }
118
123
  }
119
124
  },
120
125
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.variants = exports.lineHeight = exports.letterSpacing = exports.fontWeight = exports.fontSize = exports.fontFamily = exports["default"] = void 0;
6
+ exports.variants = exports.lineHeight = exports.letterSpacing = exports.fontWeight = exports.fontSize = exports.fontFamily = exports.default = void 0;
7
7
  /**
8
8
  * Typography tokens — Portnet UI v2
9
9
  * Aligned with Design System v1.0 §02.2.
@@ -19,11 +19,11 @@ exports.variants = exports.lineHeight = exports.letterSpacing = exports.fontWeig
19
19
  * append the unit. For raw CSS strings, use `${n}px` at the call site.
20
20
  */
21
21
 
22
- var fontFamily = exports.fontFamily = {
22
+ const fontFamily = exports.fontFamily = {
23
23
  sans: 'Inter, system-ui, -apple-system, "Segoe UI", sans-serif',
24
24
  mono: '"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace'
25
25
  };
26
- var fontSize = exports.fontSize = {
26
+ const fontSize = exports.fontSize = {
27
27
  display: 26,
28
28
  // H1 — page title
29
29
  h2: 20,
@@ -42,13 +42,13 @@ var fontSize = exports.fontSize = {
42
42
  /* Standard CSS weights only — non-variable fallbacks (system-ui /
43
43
  * Segoe UI) cannot render arbitrary weights such as 650; they would
44
44
  * silently round to 700, breaking visual rhythm across browsers. */
45
- var fontWeight = exports.fontWeight = {
45
+ const fontWeight = exports.fontWeight = {
46
46
  regular: 400,
47
47
  medium: 500,
48
48
  semibold: 600,
49
49
  bold: 700
50
50
  };
51
- var lineHeight = exports.lineHeight = {
51
+ const lineHeight = exports.lineHeight = {
52
52
  tight: 1.25,
53
53
  snug: 1.4,
54
54
  normal: 1.5,
@@ -84,7 +84,7 @@ var lineHeight = exports.lineHeight = {
84
84
  *
85
85
  * Charter §02.2 amendment. Requires a MINOR bump + changelog entry.
86
86
  */
87
- var letterSpacing = exports.letterSpacing = {
87
+ const letterSpacing = exports.letterSpacing = {
88
88
  /** Display / mono — tightens large text and monospaced references. */
89
89
  tight: "-0.01em",
90
90
  /** Default — explicit so a consumer can reset tracking via a token. */
@@ -97,7 +97,7 @@ var letterSpacing = exports.letterSpacing = {
97
97
  * Pre-baked typography variants for direct use in `<Typography variant="…">`
98
98
  * or as a reference for native components.
99
99
  */
100
- var variants = exports.variants = {
100
+ const variants = exports.variants = {
101
101
  display: {
102
102
  fontSize: fontSize.display,
103
103
  fontWeight: fontWeight.bold,
@@ -143,13 +143,13 @@ var variants = exports.variants = {
143
143
  letterSpacing: letterSpacing.tight
144
144
  }
145
145
  };
146
- var typography = {
147
- fontFamily: fontFamily,
148
- fontSize: fontSize,
149
- fontWeight: fontWeight,
150
- lineHeight: lineHeight,
151
- letterSpacing: letterSpacing,
152
- variants: variants
146
+ const typography = {
147
+ fontFamily,
148
+ fontSize,
149
+ fontWeight,
150
+ lineHeight,
151
+ letterSpacing,
152
+ variants
153
153
  };
154
- var _default = exports["default"] = typography;
154
+ var _default = exports.default = typography;
155
155
  //# sourceMappingURL=typography.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typography.js","names":["fontFamily","exports","sans","mono","fontSize","display","h2","h3","h4","body","sm","xs","fontWeight","regular","medium","semibold","bold","lineHeight","tight","snug","normal","loose","letterSpacing","wide","variants","fontVariantNumeric","typography","_default"],"sources":["../../../src/lib/v2/tokens/typography.ts"],"sourcesContent":["/**\r\n * Typography tokens — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.2.\r\n *\r\n * Stack: Inter (UI) + JetBrains Mono (codes, IDs, montants).\r\n * Production: auto-host via woff2 (R-9.1). Dev: fall back to Google Fonts.\r\n *\r\n * R-T.1 — Font-size minimum 12 px (WCAG 1.4.4).\r\n * R-T.2 — Line-height ≥ 1.5 on body text.\r\n * R-T.3 — Tabular numerals on numeric columns.\r\n *\r\n * Pixel values are stored as integers; the theme layer + cssVariables\r\n * append the unit. For raw CSS strings, use `${n}px` at the call site.\r\n */\r\n\r\nexport const fontFamily = {\r\n sans: 'Inter, system-ui, -apple-system, \"Segoe UI\", sans-serif',\r\n mono: '\"JetBrains Mono\", ui-monospace, SFMono-Regular, Menlo, monospace',\r\n};\r\n\r\nexport const fontSize = {\r\n display: 26, // H1 — page title\r\n h2: 20, // section header\r\n h3: 16, // card / form group\r\n h4: 14, // sub-section\r\n body: 14, // default\r\n sm: 13, // compact / tables\r\n xs: 12, // labels, hints (MIN — R-T.1)\r\n};\r\n\r\n/* Standard CSS weights only — non-variable fallbacks (system-ui /\r\n * Segoe UI) cannot render arbitrary weights such as 650; they would\r\n * silently round to 700, breaking visual rhythm across browsers. */\r\nexport const fontWeight = {\r\n regular: 400,\r\n medium: 500,\r\n semibold: 600,\r\n bold: 700,\r\n};\r\n\r\nexport const lineHeight = {\r\n tight: 1.25,\r\n snug: 1.4,\r\n normal: 1.5, // R-T.2 minimum on body\r\n loose: 1.6,\r\n};\r\n\r\n/**\r\n * Letter-spacing scale — added by the ms-dfd-fe Area 7 audit (A7-02).\r\n *\r\n * WHY THIS IS A CODIFICATION, NOT AN INVENTION.\r\n *\r\n * Both values were ALREADY platform vocabulary before this scale existed; they\r\n * simply had no CSS-variable route, so every consumer hardcoded them:\r\n *\r\n * -0.01em was hardcoded TWICE in this very file (`variants.display`,\r\n * `variants.mono`) — both now reference `letterSpacing.tight`, so\r\n * adding the scale REMOVED two magic values from the token layer.\r\n *\r\n * 0.04em was hardcoded inside the LIBRARY's own components (KV's eyebrow\r\n * label, ConfirmDialog's \"Conséquences\" heading) and appeared 5+\r\n * times across ms-dfd-fe and ms-ti-fe — always for the same purpose:\r\n * positive tracking on uppercase micro-labels, which is a\r\n * typographic necessity at 11-12px, not decoration.\r\n *\r\n * The audit found six token names referenced fleet-wide that cssVariables never\r\n * emitted (`--ls-tight`, `--ls-wide`, `--border-subtle`, `--r-xs`, `--icon-sm`,\r\n * `--icon-xl`). For each, the `var(--x, literal)` fallback was the only thing\r\n * that had ever rendered — hard-coded magic values wearing a token's name\r\n * (R-2.3 / R-AI.1). Only the two letter-spacing names had a genuine platform\r\n * basis, so only they are promoted here. The others are local inventions and\r\n * are fixed at their call sites instead.\r\n *\r\n * Charter §02.2 amendment. Requires a MINOR bump + changelog entry.\r\n */\r\nexport const letterSpacing = {\r\n /** Display / mono — tightens large text and monospaced references. */\r\n tight: \"-0.01em\",\r\n /** Default — explicit so a consumer can reset tracking via a token. */\r\n normal: \"0\",\r\n /** Uppercase micro-labels (KV eyebrows, section captions, stat labels). */\r\n wide: \"0.04em\",\r\n};\r\n\r\n/**\r\n * Pre-baked typography variants for direct use in `<Typography variant=\"…\">`\r\n * or as a reference for native components.\r\n */\r\nexport const variants = {\r\n display: {\r\n fontSize: fontSize.display,\r\n fontWeight: fontWeight.bold,\r\n lineHeight: lineHeight.tight,\r\n letterSpacing: letterSpacing.tight,\r\n },\r\n h2: {\r\n fontSize: fontSize.h2,\r\n fontWeight: fontWeight.semibold,\r\n lineHeight: lineHeight.tight,\r\n },\r\n h3: {\r\n fontSize: fontSize.h3,\r\n fontWeight: fontWeight.semibold,\r\n lineHeight: lineHeight.snug,\r\n },\r\n h4: {\r\n fontSize: fontSize.h4,\r\n fontWeight: fontWeight.semibold,\r\n lineHeight: lineHeight.snug,\r\n },\r\n body: {\r\n fontSize: fontSize.body,\r\n fontWeight: fontWeight.regular,\r\n lineHeight: lineHeight.normal,\r\n },\r\n sm: {\r\n fontSize: fontSize.sm,\r\n fontWeight: fontWeight.regular,\r\n lineHeight: lineHeight.normal,\r\n },\r\n xs: {\r\n fontSize: fontSize.xs,\r\n fontWeight: fontWeight.medium,\r\n lineHeight: lineHeight.normal,\r\n },\r\n mono: {\r\n fontFamily: fontFamily.mono,\r\n fontSize: fontSize.sm,\r\n fontWeight: fontWeight.medium,\r\n fontVariantNumeric: \"tabular-nums\", // R-T.3\r\n letterSpacing: letterSpacing.tight,\r\n },\r\n};\r\n\r\nconst typography = { fontFamily, fontSize, fontWeight, lineHeight, letterSpacing, variants };\r\nexport default typography;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"typography.js","names":["fontFamily","exports","sans","mono","fontSize","display","h2","h3","h4","body","sm","xs","fontWeight","regular","medium","semibold","bold","lineHeight","tight","snug","normal","loose","letterSpacing","wide","variants","fontVariantNumeric","typography","_default","default"],"sources":["../../../src/lib/v2/tokens/typography.ts"],"sourcesContent":["/**\r\n * Typography tokens — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.2.\r\n *\r\n * Stack: Inter (UI) + JetBrains Mono (codes, IDs, montants).\r\n * Production: auto-host via woff2 (R-9.1). Dev: fall back to Google Fonts.\r\n *\r\n * R-T.1 — Font-size minimum 12 px (WCAG 1.4.4).\r\n * R-T.2 — Line-height ≥ 1.5 on body text.\r\n * R-T.3 — Tabular numerals on numeric columns.\r\n *\r\n * Pixel values are stored as integers; the theme layer + cssVariables\r\n * append the unit. For raw CSS strings, use `${n}px` at the call site.\r\n */\r\n\r\nexport const fontFamily = {\r\n sans: 'Inter, system-ui, -apple-system, \"Segoe UI\", sans-serif',\r\n mono: '\"JetBrains Mono\", ui-monospace, SFMono-Regular, Menlo, monospace',\r\n};\r\n\r\nexport const fontSize = {\r\n display: 26, // H1 — page title\r\n h2: 20, // section header\r\n h3: 16, // card / form group\r\n h4: 14, // sub-section\r\n body: 14, // default\r\n sm: 13, // compact / tables\r\n xs: 12, // labels, hints (MIN — R-T.1)\r\n};\r\n\r\n/* Standard CSS weights only — non-variable fallbacks (system-ui /\r\n * Segoe UI) cannot render arbitrary weights such as 650; they would\r\n * silently round to 700, breaking visual rhythm across browsers. */\r\nexport const fontWeight = {\r\n regular: 400,\r\n medium: 500,\r\n semibold: 600,\r\n bold: 700,\r\n};\r\n\r\nexport const lineHeight = {\r\n tight: 1.25,\r\n snug: 1.4,\r\n normal: 1.5, // R-T.2 minimum on body\r\n loose: 1.6,\r\n};\r\n\r\n/**\r\n * Letter-spacing scale — added by the ms-dfd-fe Area 7 audit (A7-02).\r\n *\r\n * WHY THIS IS A CODIFICATION, NOT AN INVENTION.\r\n *\r\n * Both values were ALREADY platform vocabulary before this scale existed; they\r\n * simply had no CSS-variable route, so every consumer hardcoded them:\r\n *\r\n * -0.01em was hardcoded TWICE in this very file (`variants.display`,\r\n * `variants.mono`) — both now reference `letterSpacing.tight`, so\r\n * adding the scale REMOVED two magic values from the token layer.\r\n *\r\n * 0.04em was hardcoded inside the LIBRARY's own components (KV's eyebrow\r\n * label, ConfirmDialog's \"Conséquences\" heading) and appeared 5+\r\n * times across ms-dfd-fe and ms-ti-fe — always for the same purpose:\r\n * positive tracking on uppercase micro-labels, which is a\r\n * typographic necessity at 11-12px, not decoration.\r\n *\r\n * The audit found six token names referenced fleet-wide that cssVariables never\r\n * emitted (`--ls-tight`, `--ls-wide`, `--border-subtle`, `--r-xs`, `--icon-sm`,\r\n * `--icon-xl`). For each, the `var(--x, literal)` fallback was the only thing\r\n * that had ever rendered — hard-coded magic values wearing a token's name\r\n * (R-2.3 / R-AI.1). Only the two letter-spacing names had a genuine platform\r\n * basis, so only they are promoted here. The others are local inventions and\r\n * are fixed at their call sites instead.\r\n *\r\n * Charter §02.2 amendment. Requires a MINOR bump + changelog entry.\r\n */\r\nexport const letterSpacing = {\r\n /** Display / mono — tightens large text and monospaced references. */\r\n tight: \"-0.01em\",\r\n /** Default — explicit so a consumer can reset tracking via a token. */\r\n normal: \"0\",\r\n /** Uppercase micro-labels (KV eyebrows, section captions, stat labels). */\r\n wide: \"0.04em\",\r\n};\r\n\r\n/**\r\n * Pre-baked typography variants for direct use in `<Typography variant=\"…\">`\r\n * or as a reference for native components.\r\n */\r\nexport const variants = {\r\n display: {\r\n fontSize: fontSize.display,\r\n fontWeight: fontWeight.bold,\r\n lineHeight: lineHeight.tight,\r\n letterSpacing: letterSpacing.tight,\r\n },\r\n h2: {\r\n fontSize: fontSize.h2,\r\n fontWeight: fontWeight.semibold,\r\n lineHeight: lineHeight.tight,\r\n },\r\n h3: {\r\n fontSize: fontSize.h3,\r\n fontWeight: fontWeight.semibold,\r\n lineHeight: lineHeight.snug,\r\n },\r\n h4: {\r\n fontSize: fontSize.h4,\r\n fontWeight: fontWeight.semibold,\r\n lineHeight: lineHeight.snug,\r\n },\r\n body: {\r\n fontSize: fontSize.body,\r\n fontWeight: fontWeight.regular,\r\n lineHeight: lineHeight.normal,\r\n },\r\n sm: {\r\n fontSize: fontSize.sm,\r\n fontWeight: fontWeight.regular,\r\n lineHeight: lineHeight.normal,\r\n },\r\n xs: {\r\n fontSize: fontSize.xs,\r\n fontWeight: fontWeight.medium,\r\n lineHeight: lineHeight.normal,\r\n },\r\n mono: {\r\n fontFamily: fontFamily.mono,\r\n fontSize: fontSize.sm,\r\n fontWeight: fontWeight.medium,\r\n fontVariantNumeric: \"tabular-nums\", // R-T.3\r\n letterSpacing: letterSpacing.tight,\r\n },\r\n};\r\n\r\nconst typography = { fontFamily, fontSize, fontWeight, lineHeight, letterSpacing, variants };\r\nexport default typography;\r\n"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.zIndex = exports["default"] = void 0;
6
+ exports.zIndex = exports.default = void 0;
7
7
  /**
8
8
  * Z-index scale — Portnet UI v2
9
9
  * Aligned with Design System v1.0 §02.6.
@@ -20,7 +20,7 @@ exports.zIndex = exports["default"] = void 0;
20
20
  * when the network-error banner is on screen, otherwise users
21
21
  * lose their keyboard escape hatch the moment connectivity drops.
22
22
  */
23
- var zIndex = exports.zIndex = {
23
+ const zIndex = exports.zIndex = {
24
24
  base: 0,
25
25
  sticky: 15,
26
26
  // sticky headers (action bar)
@@ -46,5 +46,5 @@ var zIndex = exports.zIndex = {
46
46
  // network error banner (top of all)
47
47
  skipLink: 2010 // skip-link must remain visible above netError
48
48
  };
49
- var _default = exports["default"] = zIndex;
49
+ var _default = exports.default = zIndex;
50
50
  //# sourceMappingURL=zIndex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zIndex.js","names":["zIndex","exports","base","sticky","topbar","bulk","overflow","popover","drawer","modal","snackbar","toast","tooltip","netError","skipLink","_default"],"sources":["../../../src/lib/v2/tokens/zIndex.ts"],"sourcesContent":["/**\r\n * Z-index scale — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.6.\r\n *\r\n * Charter forbids inline z-index numerics. Use named tokens only.\r\n *\r\n * MUI compatibility:\r\n * Material UI's default zIndex scale runs 1100..1500. We override\r\n * it via `createPortnetTheme` so MUI components (Tooltip, Popper,\r\n * Snackbar, Modal) align with this scale and stay below `netError`.\r\n *\r\n * Layering invariant:\r\n * skipLink > netError. The skip-link must remain visible even\r\n * when the network-error banner is on screen, otherwise users\r\n * lose their keyboard escape hatch the moment connectivity drops.\r\n */\r\nexport const zIndex = {\r\n base: 0,\r\n sticky: 15, // sticky headers (action bar)\r\n topbar: 20, // app topbar\r\n bulk: 30, // bulk action bar\r\n overflow: 50, // overflow menus inside flow\r\n popover: 60, // popovers (above overflow)\r\n drawer: 80, // drawer + backdrop\r\n modal: 100, // modal + backdrop\r\n snackbar: 150, // snackbars\r\n toast: 200, // toasts, command palette\r\n tooltip: 250, // tooltips (above toasts/modals)\r\n netError: 2000, // network error banner (top of all)\r\n skipLink: 2010, // skip-link must remain visible above netError\r\n};\r\n\r\nexport default zIndex;\r\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG;EACpBE,IAAI,EAAM,CAAC;EACXC,MAAM,EAAI,EAAE;EAAK;EACjBC,MAAM,EAAI,EAAE;EAAK;EACjBC,IAAI,EAAM,EAAE;EAAK;EACjBC,QAAQ,EAAE,EAAE;EAAK;EACjBC,OAAO,EAAG,EAAE;EAAK;EACjBC,MAAM,EAAI,EAAE;EAAK;EACjBC,KAAK,EAAK,GAAG;EAAI;EACjBC,QAAQ,EAAE,GAAG;EAAI;EACjBC,KAAK,EAAK,GAAG;EAAI;EACjBC,OAAO,EAAG,GAAG;EAAI;EACjBC,QAAQ,EAAE,IAAI;EAAG;EACjBC,QAAQ,EAAE,IAAI,CAAG;AACnB,CAAC;AAAC,IAAAC,QAAA,GAAAd,OAAA,cAEaD,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"zIndex.js","names":["zIndex","exports","base","sticky","topbar","bulk","overflow","popover","drawer","modal","snackbar","toast","tooltip","netError","skipLink","_default","default"],"sources":["../../../src/lib/v2/tokens/zIndex.ts"],"sourcesContent":["/**\r\n * Z-index scale — Portnet UI v2\r\n * Aligned with Design System v1.0 §02.6.\r\n *\r\n * Charter forbids inline z-index numerics. Use named tokens only.\r\n *\r\n * MUI compatibility:\r\n * Material UI's default zIndex scale runs 1100..1500. We override\r\n * it via `createPortnetTheme` so MUI components (Tooltip, Popper,\r\n * Snackbar, Modal) align with this scale and stay below `netError`.\r\n *\r\n * Layering invariant:\r\n * skipLink > netError. The skip-link must remain visible even\r\n * when the network-error banner is on screen, otherwise users\r\n * lose their keyboard escape hatch the moment connectivity drops.\r\n */\r\nexport const zIndex = {\r\n base: 0,\r\n sticky: 15, // sticky headers (action bar)\r\n topbar: 20, // app topbar\r\n bulk: 30, // bulk action bar\r\n overflow: 50, // overflow menus inside flow\r\n popover: 60, // popovers (above overflow)\r\n drawer: 80, // drawer + backdrop\r\n modal: 100, // modal + backdrop\r\n snackbar: 150, // snackbars\r\n toast: 200, // toasts, command palette\r\n tooltip: 250, // tooltips (above toasts/modals)\r\n netError: 2000, // network error banner (top of all)\r\n skipLink: 2010, // skip-link must remain visible above netError\r\n};\r\n\r\nexport default zIndex;\r\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG;EACpBE,IAAI,EAAM,CAAC;EACXC,MAAM,EAAI,EAAE;EAAK;EACjBC,MAAM,EAAI,EAAE;EAAK;EACjBC,IAAI,EAAM,EAAE;EAAK;EACjBC,QAAQ,EAAE,EAAE;EAAK;EACjBC,OAAO,EAAG,EAAE;EAAK;EACjBC,MAAM,EAAI,EAAE;EAAK;EACjBC,KAAK,EAAK,GAAG;EAAI;EACjBC,QAAQ,EAAE,GAAG;EAAI;EACjBC,KAAK,EAAK,GAAG;EAAI;EACjBC,OAAO,EAAG,GAAG;EAAI;EACjBC,QAAQ,EAAE,IAAI;EAAG;EACjBC,QAAQ,EAAE,IAAI,CAAG;AACnB,CAAC;AAAC,IAAAC,QAAA,GAAAd,OAAA,CAAAe,OAAA,GAEahB,MAAM","ignoreList":[]}
@@ -82,7 +82,15 @@ export interface ApplySortOptions {
82
82
  }
83
83
  /** Props for the DataGrid pattern over row type `T`. */
84
84
  export interface DataGridProps<T> {
85
- rows?: T[] | undefined;
85
+ /**
86
+ * `readonly T[]` rather than `T[]`: DataGrid only ever reads rows (map,
87
+ * length, every/some, find via getRowId) — it never mutates the array —
88
+ * so a frozen/immutable rows array (`Object.freeze`'d sample data, a
89
+ * `readonly` state field) should be assignable without a cast at the call
90
+ * site. Purely additive: an existing mutable `T[]` is still assignable to
91
+ * `readonly T[]`, so no caller changes.
92
+ */
93
+ rows?: readonly T[] | undefined;
86
94
  columns: DataGridColumn<T>[];
87
95
  loading?: boolean | undefined;
88
96
  /** Any truthy value switches the grid to its error branch (renders `errorState`). */
@@ -1 +1 @@
1
- {"version":3,"file":"datagrid.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/types/datagrid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"datagrid.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/types/datagrid.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"datagrid.js","names":[],"sources":["../../../src/lib/v2/types/datagrid.ts"],"sourcesContent":["/**\r\n * @portnet/ui v2 — DataGrid generic contract.\r\n *\r\n * Derived verbatim from the DataGrid / SortableHeader / _dataGridShared\r\n * PropTypes + implementation (the executable contract). MUI-independent:\r\n * component-level composition with MUI prop types happens in the component\r\n * itself (Part 2), not here.\r\n */\r\n\r\nimport type { Dispatch, ReactNode, SetStateAction } from \"react\";\r\nimport type { Alignment, Breakpoint, Density, RowId, SortDescriptor } from \"./common\";\r\n\r\n/** A DataGrid column definition over row type `T`. */\r\nexport interface DataGridColumn<T> {\r\n /** Unique column key; also the default value accessor (`row[key]`). */\r\n key: string;\r\n /** Header content. */\r\n header: ReactNode;\r\n align?: Alignment | undefined;\r\n /** Right-align + tabular numerals. */\r\n numeric?: boolean | undefined;\r\n /** Monospaced cell font + tabular numerals. */\r\n mono?: boolean | undefined;\r\n /** Default true when `onSortChange` is set; `false` opts the column out of sorting. */\r\n sortable?: boolean | undefined;\r\n /** Default true when the grid is `resizable`; `false` opts the column out. */\r\n resizable?: boolean | undefined;\r\n /** Default true when the grid is `reorderable`; `false` opts the column out. */\r\n reorderable?: boolean | undefined;\r\n /** Reveal the cell only on row hover / focus-within / coarse pointer. */\r\n hoverOnly?: boolean | undefined;\r\n /** Column may be toggled by a column-visibility UI. */\r\n toggleable?: boolean | undefined;\r\n /** Preferred width (px number or CSS length). */\r\n width?: number | string | undefined;\r\n /** Hard max width (px number or CSS length). */\r\n maxWidth?: number | string | undefined;\r\n /** Wrap long content instead of truncating with an ellipsis. */\r\n wrap?: boolean | undefined;\r\n /** Custom cell renderer; overrides `getValue` / `row[key]`. */\r\n render?: ((row: T) => ReactNode) | undefined;\r\n /** Custom value accessor used when `render` is absent (default `row[key]`). */\r\n getValue?: ((row: T) => unknown) | undefined;\r\n}\r\n\r\n/** Pagination model for DataGrid (`page` is 1-based). */\r\nexport interface DataGridPagination {\r\n page: number;\r\n pageSize: number;\r\n total: number;\r\n onPageChange: (page: number) => void;\r\n onPageSizeChange?: ((pageSize: number) => void) | undefined;\r\n pageSizes?: number[] | undefined;\r\n}\r\n\r\n/** i18n labels for the DataGrid pagination bar. */\r\nexport interface DataGridPaginationLabels {\r\n loading?: ReactNode | undefined;\r\n rowsPerPage?: ReactNode | undefined;\r\n firstPage?: string | undefined;\r\n previousPage?: string | undefined;\r\n nextPage?: string | undefined;\r\n lastPage?: string | undefined;\r\n /** Accessible name for the pagination navigation landmark (WCAG landmark / 2.4.1). */\r\n navLabel?: string | undefined;\r\n /** Range summary; `fmt` is the resolved locale number formatter. */\r\n rangeOf?: ((from: number, to: number, total: number, fmt: (n: number) => string) => ReactNode) | undefined;\r\n}\r\n\r\n/** i18n labels for DataGrid. */\r\nexport interface DataGridLabels {\r\n tableAria?: string | undefined;\r\n selectAll?: string | undefined;\r\n selectRow?: ((id: RowId) => string) | undefined;\r\n actionsHeader?: string | undefined;\r\n pagination?: DataGridPaginationLabels | undefined;\r\n}\r\n\r\n/** Context object passed to `renderMobileCard`. */\r\nexport interface DataGridMobileCardContext {\r\n isActive: boolean;\r\n isSelected: boolean;\r\n}\r\n\r\n/** Options accepted by the exported `applySort` helper. */\r\nexport interface ApplySortOptions {\r\n /** BCP-47 locale for collation (default \"fr-FR\"). */\r\n locale?: string | undefined;\r\n}\r\n\r\n/** Props for the DataGrid pattern over row type `T`. */\r\nexport interface DataGridProps<T> {\r\n rows?: T[] | undefined;\r\n columns: DataGridColumn<T>[];\r\n loading?: boolean | undefined;\r\n /** Any truthy value switches the grid to its error branch (renders `errorState`). */\r\n error?: unknown;\r\n sort?: SortDescriptor[] | undefined;\r\n /**\r\n * Sort-state setter. DataGrid forwards this straight to SortableHeader,\r\n * which invokes it with an UPDATER function — so it must behave like a\r\n * `useState` dispatcher (accepts a value OR a `(prev) => next` updater).\r\n */\r\n onSortChange?: Dispatch<SetStateAction<SortDescriptor[]>> | undefined;\r\n selection?: Set<RowId> | RowId[] | undefined;\r\n /** Receives the next selection as a `Set`. Presence enables the checkbox column. */\r\n onSelectionChange?: ((selection: Set<RowId>) => void) | undefined;\r\n pagination?: DataGridPagination | undefined;\r\n emptyState?: ReactNode | undefined;\r\n filteredEmptyState?: ReactNode | undefined;\r\n errorState?: ReactNode | undefined;\r\n /** Row identity (default `(row) => row.id`). */\r\n getRowId?: ((row: T) => RowId) | undefined;\r\n onRowClick?: ((row: T) => void) | undefined;\r\n rowFlashId?: RowId | undefined;\r\n activeRowId?: RowId | undefined;\r\n /** Renders the per-row actions overlay. Presence enables the actions column. */\r\n rowActions?: ((row: T) => ReactNode) | undefined;\r\n hiddenColumns?: Set<string> | string[] | undefined;\r\n /** Marks an empty result as filter-induced (renders `filteredEmptyState`). */\r\n filtered?: boolean | undefined;\r\n density?: Density | undefined;\r\n /** Contextual accessible table name (WCAG 1.3.1 / Charter R-DG). */\r\n ariaLabel?: string | undefined;\r\n /** BCP-47 locale for number formatting (default \"fr-FR\"). */\r\n locale?: string | undefined;\r\n labels?: DataGridLabels | undefined;\r\n maxBodyHeight?: number | string | undefined;\r\n resizable?: boolean | undefined;\r\n columnWidths?: Record<string, number> | undefined;\r\n onColumnWidthsChange?: ((widths: Record<string, number>) => void) | undefined;\r\n reorderable?: boolean | undefined;\r\n columnOrder?: string[] | undefined;\r\n onColumnOrderChange?: ((order: string[]) => void) | undefined;\r\n /** Opt-in mobile card renderer; below `mobileBreakpoint` the grid renders cards. */\r\n renderMobileCard?: ((row: T, ctx: DataGridMobileCardContext) => ReactNode) | undefined;\r\n mobileBreakpoint?: Breakpoint | undefined;\r\n}\r\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"datagrid.js","names":[],"sources":["../../../src/lib/v2/types/datagrid.ts"],"sourcesContent":["/**\r\n * @portnet/ui v2 — DataGrid generic contract.\r\n *\r\n * Derived verbatim from the DataGrid / SortableHeader / _dataGridShared\r\n * PropTypes + implementation (the executable contract). MUI-independent:\r\n * component-level composition with MUI prop types happens in the component\r\n * itself (Part 2), not here.\r\n */\r\n\r\nimport type { Dispatch, ReactNode, SetStateAction } from \"react\";\r\nimport type { Alignment, Breakpoint, Density, RowId, SortDescriptor } from \"./common\";\r\n\r\n/** A DataGrid column definition over row type `T`. */\r\nexport interface DataGridColumn<T> {\r\n /** Unique column key; also the default value accessor (`row[key]`). */\r\n key: string;\r\n /** Header content. */\r\n header: ReactNode;\r\n align?: Alignment | undefined;\r\n /** Right-align + tabular numerals. */\r\n numeric?: boolean | undefined;\r\n /** Monospaced cell font + tabular numerals. */\r\n mono?: boolean | undefined;\r\n /** Default true when `onSortChange` is set; `false` opts the column out of sorting. */\r\n sortable?: boolean | undefined;\r\n /** Default true when the grid is `resizable`; `false` opts the column out. */\r\n resizable?: boolean | undefined;\r\n /** Default true when the grid is `reorderable`; `false` opts the column out. */\r\n reorderable?: boolean | undefined;\r\n /** Reveal the cell only on row hover / focus-within / coarse pointer. */\r\n hoverOnly?: boolean | undefined;\r\n /** Column may be toggled by a column-visibility UI. */\r\n toggleable?: boolean | undefined;\r\n /** Preferred width (px number or CSS length). */\r\n width?: number | string | undefined;\r\n /** Hard max width (px number or CSS length). */\r\n maxWidth?: number | string | undefined;\r\n /** Wrap long content instead of truncating with an ellipsis. */\r\n wrap?: boolean | undefined;\r\n /** Custom cell renderer; overrides `getValue` / `row[key]`. */\r\n render?: ((row: T) => ReactNode) | undefined;\r\n /** Custom value accessor used when `render` is absent (default `row[key]`). */\r\n getValue?: ((row: T) => unknown) | undefined;\r\n}\r\n\r\n/** Pagination model for DataGrid (`page` is 1-based). */\r\nexport interface DataGridPagination {\r\n page: number;\r\n pageSize: number;\r\n total: number;\r\n onPageChange: (page: number) => void;\r\n onPageSizeChange?: ((pageSize: number) => void) | undefined;\r\n pageSizes?: number[] | undefined;\r\n}\r\n\r\n/** i18n labels for the DataGrid pagination bar. */\r\nexport interface DataGridPaginationLabels {\r\n loading?: ReactNode | undefined;\r\n rowsPerPage?: ReactNode | undefined;\r\n firstPage?: string | undefined;\r\n previousPage?: string | undefined;\r\n nextPage?: string | undefined;\r\n lastPage?: string | undefined;\r\n /** Accessible name for the pagination navigation landmark (WCAG landmark / 2.4.1). */\r\n navLabel?: string | undefined;\r\n /** Range summary; `fmt` is the resolved locale number formatter. */\r\n rangeOf?: ((from: number, to: number, total: number, fmt: (n: number) => string) => ReactNode) | undefined;\r\n}\r\n\r\n/** i18n labels for DataGrid. */\r\nexport interface DataGridLabels {\r\n tableAria?: string | undefined;\r\n selectAll?: string | undefined;\r\n selectRow?: ((id: RowId) => string) | undefined;\r\n actionsHeader?: string | undefined;\r\n pagination?: DataGridPaginationLabels | undefined;\r\n}\r\n\r\n/** Context object passed to `renderMobileCard`. */\r\nexport interface DataGridMobileCardContext {\r\n isActive: boolean;\r\n isSelected: boolean;\r\n}\r\n\r\n/** Options accepted by the exported `applySort` helper. */\r\nexport interface ApplySortOptions {\r\n /** BCP-47 locale for collation (default \"fr-FR\"). */\r\n locale?: string | undefined;\r\n}\r\n\r\n/** Props for the DataGrid pattern over row type `T`. */\r\nexport interface DataGridProps<T> {\r\n /**\r\n * `readonly T[]` rather than `T[]`: DataGrid only ever reads rows (map,\r\n * length, every/some, find via getRowId) — it never mutates the array —\r\n * so a frozen/immutable rows array (`Object.freeze`'d sample data, a\r\n * `readonly` state field) should be assignable without a cast at the call\r\n * site. Purely additive: an existing mutable `T[]` is still assignable to\r\n * `readonly T[]`, so no caller changes.\r\n */\r\n rows?: readonly T[] | undefined;\r\n columns: DataGridColumn<T>[];\r\n loading?: boolean | undefined;\r\n /** Any truthy value switches the grid to its error branch (renders `errorState`). */\r\n error?: unknown;\r\n sort?: SortDescriptor[] | undefined;\r\n /**\r\n * Sort-state setter. DataGrid forwards this straight to SortableHeader,\r\n * which invokes it with an UPDATER function — so it must behave like a\r\n * `useState` dispatcher (accepts a value OR a `(prev) => next` updater).\r\n */\r\n onSortChange?: Dispatch<SetStateAction<SortDescriptor[]>> | undefined;\r\n selection?: Set<RowId> | RowId[] | undefined;\r\n /** Receives the next selection as a `Set`. Presence enables the checkbox column. */\r\n onSelectionChange?: ((selection: Set<RowId>) => void) | undefined;\r\n pagination?: DataGridPagination | undefined;\r\n emptyState?: ReactNode | undefined;\r\n filteredEmptyState?: ReactNode | undefined;\r\n errorState?: ReactNode | undefined;\r\n /** Row identity (default `(row) => row.id`). */\r\n getRowId?: ((row: T) => RowId) | undefined;\r\n onRowClick?: ((row: T) => void) | undefined;\r\n rowFlashId?: RowId | undefined;\r\n activeRowId?: RowId | undefined;\r\n /** Renders the per-row actions overlay. Presence enables the actions column. */\r\n rowActions?: ((row: T) => ReactNode) | undefined;\r\n hiddenColumns?: Set<string> | string[] | undefined;\r\n /** Marks an empty result as filter-induced (renders `filteredEmptyState`). */\r\n filtered?: boolean | undefined;\r\n density?: Density | undefined;\r\n /** Contextual accessible table name (WCAG 1.3.1 / Charter R-DG). */\r\n ariaLabel?: string | undefined;\r\n /** BCP-47 locale for number formatting (default \"fr-FR\"). */\r\n locale?: string | undefined;\r\n labels?: DataGridLabels | undefined;\r\n maxBodyHeight?: number | string | undefined;\r\n resizable?: boolean | undefined;\r\n columnWidths?: Record<string, number> | undefined;\r\n onColumnWidthsChange?: ((widths: Record<string, number>) => void) | undefined;\r\n reorderable?: boolean | undefined;\r\n columnOrder?: string[] | undefined;\r\n onColumnOrderChange?: ((order: string[]) => void) | undefined;\r\n /** Opt-in mobile card renderer; below `mobileBreakpoint` the grid renders cards. */\r\n renderMobileCard?: ((row: T, ctx: DataGridMobileCardContext) => ReactNode) | undefined;\r\n mobileBreakpoint?: Breakpoint | undefined;\r\n}\r\n"],"mappings":"","ignoreList":[]}
@@ -9,7 +9,7 @@ Object.keys(_common).forEach(function (key) {
9
9
  if (key in exports && exports[key] === _common[key]) return;
10
10
  Object.defineProperty(exports, key, {
11
11
  enumerable: true,
12
- get: function get() {
12
+ get: function () {
13
13
  return _common[key];
14
14
  }
15
15
  });
@@ -20,7 +20,7 @@ Object.keys(_datagrid).forEach(function (key) {
20
20
  if (key in exports && exports[key] === _datagrid[key]) return;
21
21
  Object.defineProperty(exports, key, {
22
22
  enumerable: true,
23
- get: function get() {
23
+ get: function () {
24
24
  return _datagrid[key];
25
25
  }
26
26
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_common","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_datagrid"],"sources":["../../../src/lib/v2/types/index.ts"],"sourcesContent":["/**\r\n * @portnet/ui v2 — Shared UI type architecture (barrel).\r\n *\r\n * Reusable UI/structural types. Business/domain models live under ../models.\r\n * Topic modules are re-exported here; component-specific prop types are added\r\n * as each component migrates (Part 2). The public typed surface is finalised\r\n * in Batch 5 (barrels + `exports` type conditions).\r\n */\r\n\r\nexport * from \"./common\";\r\nexport * from \"./datagrid\";\r\n"],"mappings":";;;;;AASA,IAAAA,OAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,OAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,OAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,OAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,SAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,SAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,SAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAC,SAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_common","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_datagrid"],"sources":["../../../src/lib/v2/types/index.ts"],"sourcesContent":["/**\r\n * @portnet/ui v2 — Shared UI type architecture (barrel).\r\n *\r\n * Reusable UI/structural types. Business/domain models live under ../models.\r\n * Topic modules are re-exported here; component-specific prop types are added\r\n * as each component migrates (Part 2). The public typed surface is finalised\r\n * in Batch 5 (barrels + `exports` type conditions).\r\n */\r\n\r\nexport * from \"./common\";\r\nexport * from \"./datagrid\";\r\n"],"mappings":";;;;;AASA,IAAAA,OAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,OAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,OAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,OAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,SAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,SAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,SAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,SAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -7,10 +7,6 @@ exports.DEFAULT_API_ERROR_MESSAGE = void 0;
7
7
  exports.getApiErrorDetail = getApiErrorDetail;
8
8
  exports.getApiErrorMessage = getApiErrorMessage;
9
9
  exports.getApiErrorStatus = getApiErrorStatus;
10
- 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); }
11
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
12
- 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); }
13
- 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; }
14
10
  /**
15
11
  * apiError — narrow an `unknown` rejection into something displayable.
16
12
  *
@@ -58,34 +54,23 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
58
54
  * §09.3 (no raw technical detail — never "Erreur 422 Unprocessable Entity").
59
55
  * Override per call site when a screen can say something more useful.
60
56
  */
61
- var DEFAULT_API_ERROR_MESSAGE = exports.DEFAULT_API_ERROR_MESSAGE = "Une erreur est survenue. Veuillez réessayer.";
57
+ const DEFAULT_API_ERROR_MESSAGE = exports.DEFAULT_API_ERROR_MESSAGE = "Une erreur est survenue. Veuillez réessayer.";
62
58
 
63
59
  /**
64
60
  * Walk `path` through nested non-null objects, returning the value at the end,
65
61
  * or `undefined` if any hop is missing. Assertion-free.
66
62
  */
67
- var readPath = function readPath(source, path) {
68
- var current = source;
69
- var _iterator = _createForOfIteratorHelper(path),
70
- _step;
71
- try {
72
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
73
- var key = _step.value;
74
- if (_typeof(current) !== "object" || current === null || !(key in current)) {
75
- return undefined;
76
- }
77
- current = Reflect.get(current, key);
63
+ const readPath = (source, path) => {
64
+ let current = source;
65
+ for (const key of path) {
66
+ if (typeof current !== "object" || current === null || !(key in current)) {
67
+ return undefined;
78
68
  }
79
- } catch (err) {
80
- _iterator.e(err);
81
- } finally {
82
- _iterator.f();
69
+ current = Reflect.get(current, key);
83
70
  }
84
71
  return current;
85
72
  };
86
- var asNonEmptyString = function asNonEmptyString(value) {
87
- return typeof value === "string" && value.length > 0 ? value : undefined;
88
- };
73
+ const asNonEmptyString = value => typeof value === "string" && value.length > 0 ? value : undefined;
89
74
 
90
75
  /**
91
76
  * Transport-layer phrasings that must NEVER reach a user — capability gap G-07.
@@ -126,7 +111,7 @@ var asNonEmptyString = function asNonEmptyString(value) {
126
111
  * phrasing that surfaces through SSR and test doubles.
127
112
  * ──────────────────────────────────────────────────────────────────────
128
113
  */
129
- var TRANSPORT_MESSAGE_PATTERNS = [/^request failed with status code \d+$/i, /^network error$/i, /^timeout of \d+ms exceeded$/i, /^timeout exceeded$/i, /^request aborted$/i, /^canceled$/i, /^unsupported protocol/i, /^maximum content size exceeded$/i, /^socket hang up$/i,
114
+ const TRANSPORT_MESSAGE_PATTERNS = [/^request failed with status code \d+$/i, /^network error$/i, /^timeout of \d+ms exceeded$/i, /^timeout exceeded$/i, /^request aborted$/i, /^canceled$/i, /^unsupported protocol/i, /^maximum content size exceeded$/i, /^socket hang up$/i,
130
115
  /* ── errno codes and axios error codes ── CASE-SENSITIVE, DELIBERATELY ─────
131
116
  *
132
117
  * These two are the only patterns here NOT marked `/i`, and the asymmetry is
@@ -151,11 +136,7 @@ var TRANSPORT_MESSAGE_PATTERNS = [/^request failed with status code \d+$/i, /^ne
151
136
  ];
152
137
 
153
138
  /** Is this string an axios/transport artefact rather than something for a user? */
154
- var isTransportMessage = function isTransportMessage(value) {
155
- return TRANSPORT_MESSAGE_PATTERNS.some(function (pattern) {
156
- return pattern.test(value.trim());
157
- });
158
- };
139
+ const isTransportMessage = value => TRANSPORT_MESSAGE_PATTERNS.some(pattern => pattern.test(value.trim()));
159
140
 
160
141
  /**
161
142
  * `error.message`, but only when it is fit to show a user.
@@ -163,8 +144,8 @@ var isTransportMessage = function isTransportMessage(value) {
163
144
  * Suppresses transport phrasings (G-07) so the caller's French fallback is
164
145
  * reached instead. Module-thrown `Error` messages pass through untouched.
165
146
  */
166
- var asUserFacingMessage = function asUserFacingMessage(value) {
167
- var text = asNonEmptyString(value);
147
+ const asUserFacingMessage = value => {
148
+ const text = asNonEmptyString(value);
168
149
  if (text === undefined) return undefined;
169
150
  return isTransportMessage(text) ? undefined : text;
170
151
  };
@@ -220,11 +201,9 @@ var asUserFacingMessage = function asUserFacingMessage(value) {
220
201
  * @param error The caught value. `unknown` by design.
221
202
  * @param fallback Message when nothing usable is found.
222
203
  */
223
- function getApiErrorMessage(error) {
224
- var _ref, _ref2, _ref3, _asNonEmptyString;
225
- var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_API_ERROR_MESSAGE;
204
+ function getApiErrorMessage(error, fallback = DEFAULT_API_ERROR_MESSAGE) {
226
205
  if (typeof error === "string" && error.length > 0) return error;
227
- return (_ref = (_ref2 = (_ref3 = (_asNonEmptyString = asNonEmptyString(readPath(error, ["response", "data", "body"]))) !== null && _asNonEmptyString !== void 0 ? _asNonEmptyString : asNonEmptyString(readPath(error, ["response", "data", "message"]))) !== null && _ref3 !== void 0 ? _ref3 : asNonEmptyString(readPath(error, ["response", "data", "error"]))) !== null && _ref2 !== void 0 ? _ref2 : asUserFacingMessage(readPath(error, ["message"]))) !== null && _ref !== void 0 ? _ref : fallback;
206
+ return asNonEmptyString(readPath(error, ["response", "data", "body"])) ?? asNonEmptyString(readPath(error, ["response", "data", "message"])) ?? asNonEmptyString(readPath(error, ["response", "data", "error"])) ?? asUserFacingMessage(readPath(error, ["message"])) ?? fallback;
228
207
  }
229
208
 
230
209
  /**
@@ -282,9 +261,9 @@ function getApiErrorDetail(error) {
282
261
  * answer, and it keeps the return type honest — the signature promises a number.
283
262
  */
284
263
  function getApiErrorStatus(error) {
285
- var bodyStatus = readPath(error, ["response", "data", "status"]);
264
+ const bodyStatus = readPath(error, ["response", "data", "status"]);
286
265
  if (typeof bodyStatus === "number") return bodyStatus;
287
- var status = readPath(error, ["response", "status"]);
266
+ const status = readPath(error, ["response", "status"]);
288
267
  return typeof status === "number" ? status : undefined;
289
268
  }
290
269
  //# sourceMappingURL=apiError.js.map