@portnet/ui 5.0.32 → 6.0.1

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 (1121) hide show
  1. package/CHANGELOG.md +524 -0
  2. package/README.md +101 -38
  3. package/dist/esm/index.js +196 -0
  4. package/dist/esm/index.js.map +1 -0
  5. package/dist/esm/v2/__tests__/FieldError.test.js +160 -0
  6. package/dist/esm/v2/__tests__/FieldError.test.js.map +1 -0
  7. package/dist/esm/v2/__tests__/FileCard.test.js +144 -0
  8. package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -0
  9. package/dist/esm/v2/__tests__/MobileRowCard.test.js +333 -0
  10. package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -0
  11. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +235 -0
  12. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
  13. package/dist/esm/v2/__tests__/apiError.test.js +181 -0
  14. package/dist/esm/v2/__tests__/apiError.test.js.map +1 -0
  15. package/dist/esm/v2/__tests__/banned-patterns.test.js +270 -0
  16. package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -0
  17. package/dist/esm/v2/__tests__/contrast-palette.test.js +224 -0
  18. package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -0
  19. package/dist/esm/v2/__tests__/cssVariables.test.js +157 -0
  20. package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -0
  21. package/dist/esm/v2/__tests__/labels-merge.test.js +147 -0
  22. package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -0
  23. package/dist/esm/v2/__tests__/locale-fallback.test.js +109 -0
  24. package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -0
  25. package/dist/esm/v2/__tests__/useFocusTrap.test.js +514 -0
  26. package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -0
  27. package/dist/esm/v2/components/Accordion.js +230 -0
  28. package/dist/esm/v2/components/Accordion.js.map +1 -0
  29. package/dist/esm/v2/components/ActionStrip.js +146 -0
  30. package/dist/esm/v2/components/ActionStrip.js.map +1 -0
  31. package/dist/esm/v2/components/Banner.js +254 -0
  32. package/dist/esm/v2/components/Banner.js.map +1 -0
  33. package/dist/esm/v2/components/Busy.js +97 -0
  34. package/dist/esm/v2/components/Busy.js.map +1 -0
  35. package/dist/esm/v2/components/Button.js +114 -0
  36. package/dist/esm/v2/components/Button.js.map +1 -0
  37. package/dist/esm/v2/components/CategoryTag.js +81 -0
  38. package/dist/esm/v2/components/CategoryTag.js.map +1 -0
  39. package/dist/esm/v2/components/Checkbox.js +124 -0
  40. package/dist/esm/v2/components/Checkbox.js.map +1 -0
  41. package/dist/esm/v2/components/Chip.js +124 -0
  42. package/dist/esm/v2/components/Chip.js.map +1 -0
  43. package/dist/esm/v2/components/Combobox.js +394 -0
  44. package/dist/esm/v2/components/Combobox.js.map +1 -0
  45. package/dist/esm/v2/components/CommandPalette.js +660 -0
  46. package/dist/esm/v2/components/CommandPalette.js.map +1 -0
  47. package/dist/esm/v2/components/ConfirmDialog.js +144 -0
  48. package/dist/esm/v2/components/ConfirmDialog.js.map +1 -0
  49. package/dist/esm/v2/components/DatePicker.js +200 -0
  50. package/dist/esm/v2/components/DatePicker.js.map +1 -0
  51. package/dist/esm/v2/components/DateRangePicker.js +289 -0
  52. package/dist/esm/v2/components/DateRangePicker.js.map +1 -0
  53. package/dist/esm/v2/components/DateTimePicker.js +182 -0
  54. package/dist/esm/v2/components/DateTimePicker.js.map +1 -0
  55. package/dist/esm/v2/components/Drawer.js +333 -0
  56. package/dist/esm/v2/components/Drawer.js.map +1 -0
  57. package/dist/esm/v2/components/Dropzone.js +540 -0
  58. package/dist/esm/v2/components/Dropzone.js.map +1 -0
  59. package/dist/esm/v2/components/EmptyState.js +102 -0
  60. package/dist/esm/v2/components/EmptyState.js.map +1 -0
  61. package/dist/esm/v2/components/FavoriteToggle.js +127 -0
  62. package/dist/esm/v2/components/FavoriteToggle.js.map +1 -0
  63. package/dist/esm/v2/components/Field.js +197 -0
  64. package/dist/esm/v2/components/Field.js.map +1 -0
  65. package/dist/esm/v2/components/FieldError.js +124 -0
  66. package/dist/esm/v2/components/FieldError.js.map +1 -0
  67. package/dist/esm/v2/components/FieldHelp.js +202 -0
  68. package/dist/esm/v2/components/FieldHelp.js.map +1 -0
  69. package/dist/esm/v2/components/FileCard.js +162 -0
  70. package/dist/esm/v2/components/FileCard.js.map +1 -0
  71. package/dist/esm/v2/components/FilterTab.js +138 -0
  72. package/dist/esm/v2/components/FilterTab.js.map +1 -0
  73. package/dist/esm/v2/components/ForbiddenPage.js +74 -0
  74. package/dist/esm/v2/components/ForbiddenPage.js.map +1 -0
  75. package/dist/esm/v2/components/FormGrid.js +179 -0
  76. package/dist/esm/v2/components/FormGrid.js.map +1 -0
  77. package/dist/esm/v2/components/FormikDisplay.js +118 -0
  78. package/dist/esm/v2/components/FormikDisplay.js.map +1 -0
  79. package/dist/esm/v2/components/Input.js +107 -0
  80. package/dist/esm/v2/components/Input.js.map +1 -0
  81. package/dist/esm/v2/components/KPICard.js +237 -0
  82. package/dist/esm/v2/components/KPICard.js.map +1 -0
  83. package/dist/esm/v2/components/KPIStrip.js +84 -0
  84. package/dist/esm/v2/components/KPIStrip.js.map +1 -0
  85. package/dist/esm/v2/components/KV.js +75 -0
  86. package/dist/esm/v2/components/KV.js.map +1 -0
  87. package/dist/esm/v2/components/KVGrid.js +74 -0
  88. package/dist/esm/v2/components/KVGrid.js.map +1 -0
  89. package/dist/esm/v2/components/Layout.js +284 -0
  90. package/dist/esm/v2/components/Layout.js.map +1 -0
  91. package/dist/esm/v2/components/MobileRowCard.js +314 -0
  92. package/dist/esm/v2/components/MobileRowCard.js.map +1 -0
  93. package/dist/esm/v2/components/Modal.js +276 -0
  94. package/dist/esm/v2/components/Modal.js.map +1 -0
  95. package/dist/esm/v2/components/NetworkErrorPage.js +78 -0
  96. package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -0
  97. package/dist/esm/v2/components/NotFoundPage.js +58 -0
  98. package/dist/esm/v2/components/NotFoundPage.js.map +1 -0
  99. package/dist/esm/v2/components/NumberInput.js +309 -0
  100. package/dist/esm/v2/components/NumberInput.js.map +1 -0
  101. package/dist/esm/v2/components/OverflowMenu.js +184 -0
  102. package/dist/esm/v2/components/OverflowMenu.js.map +1 -0
  103. package/dist/esm/v2/components/PdfViewer.js +122 -0
  104. package/dist/esm/v2/components/PdfViewer.js.map +1 -0
  105. package/dist/esm/v2/components/ProgressBar.js +202 -0
  106. package/dist/esm/v2/components/ProgressBar.js.map +1 -0
  107. package/dist/esm/v2/components/Radio.js +228 -0
  108. package/dist/esm/v2/components/Radio.js.map +1 -0
  109. package/dist/esm/v2/components/SectionErrorBoundary.js +214 -0
  110. package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -0
  111. package/dist/esm/v2/components/SectionHeader.js +132 -0
  112. package/dist/esm/v2/components/SectionHeader.js.map +1 -0
  113. package/dist/esm/v2/components/Segmented.js +254 -0
  114. package/dist/esm/v2/components/Segmented.js.map +1 -0
  115. package/dist/esm/v2/components/Select.js +490 -0
  116. package/dist/esm/v2/components/Select.js.map +1 -0
  117. package/dist/esm/v2/components/ServerErrorPage.js +74 -0
  118. package/dist/esm/v2/components/ServerErrorPage.js.map +1 -0
  119. package/dist/esm/v2/components/Skeleton.js +269 -0
  120. package/dist/esm/v2/components/Skeleton.js.map +1 -0
  121. package/dist/esm/v2/components/SkipLink.js +49 -0
  122. package/dist/esm/v2/components/SkipLink.js.map +1 -0
  123. package/dist/esm/v2/components/Spinner.js +69 -0
  124. package/dist/esm/v2/components/Spinner.js.map +1 -0
  125. package/dist/esm/v2/components/Status.js +64 -0
  126. package/dist/esm/v2/components/Status.js.map +1 -0
  127. package/dist/esm/v2/components/Stepper.js +432 -0
  128. package/dist/esm/v2/components/Stepper.js.map +1 -0
  129. package/dist/esm/v2/components/Surface.js +159 -0
  130. package/dist/esm/v2/components/Surface.js.map +1 -0
  131. package/dist/esm/v2/components/Switch.js +128 -0
  132. package/dist/esm/v2/components/Switch.js.map +1 -0
  133. package/dist/esm/v2/components/Tabs.js +150 -0
  134. package/dist/esm/v2/components/Tabs.js.map +1 -0
  135. package/dist/esm/v2/components/TelInput.js +274 -0
  136. package/dist/esm/v2/components/TelInput.js.map +1 -0
  137. package/dist/esm/v2/components/Textarea.js +72 -0
  138. package/dist/esm/v2/components/Textarea.js.map +1 -0
  139. package/dist/esm/v2/components/TimePicker.js +134 -0
  140. package/dist/esm/v2/components/TimePicker.js.map +1 -0
  141. package/dist/esm/v2/components/Toast.js +376 -0
  142. package/dist/esm/v2/components/Toast.js.map +1 -0
  143. package/dist/esm/v2/components/Tooltip.js +161 -0
  144. package/dist/esm/v2/components/Tooltip.js.map +1 -0
  145. package/dist/esm/v2/components/_ErrorPageBody.js +85 -0
  146. package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -0
  147. package/dist/esm/v2/components/_pickerShared.js +60 -0
  148. package/dist/esm/v2/components/_pickerShared.js.map +1 -0
  149. package/dist/esm/v2/components/index.js +244 -0
  150. package/dist/esm/v2/components/index.js.map +1 -0
  151. package/dist/esm/v2/hooks/index.js +10 -0
  152. package/dist/esm/v2/hooks/index.js.map +1 -0
  153. package/dist/esm/v2/hooks/useDelayedFlag.js +55 -0
  154. package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -0
  155. package/dist/esm/v2/hooks/useDensity.js +119 -0
  156. package/dist/esm/v2/hooks/useDensity.js.map +1 -0
  157. package/dist/esm/v2/hooks/useFocusFirstError.js +197 -0
  158. package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -0
  159. package/dist/esm/v2/hooks/useFocusTrap.js +202 -0
  160. package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -0
  161. package/dist/esm/v2/hooks/useFormAutoSave.js +181 -0
  162. package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -0
  163. package/dist/esm/v2/hooks/useFormCompletionProgress.js +131 -0
  164. package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -0
  165. package/dist/esm/v2/hooks/useResolvedDensity.js +44 -0
  166. package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -0
  167. package/dist/esm/v2/hooks/useSortedRows.js +32 -0
  168. package/dist/esm/v2/hooks/useSortedRows.js.map +1 -0
  169. package/dist/esm/v2/hooks/useTabLoading.js +79 -0
  170. package/dist/esm/v2/hooks/useTabLoading.js.map +1 -0
  171. package/dist/esm/v2/index.js +121 -0
  172. package/dist/esm/v2/index.js.map +1 -0
  173. package/dist/esm/v2/modalContext.js +108 -0
  174. package/dist/esm/v2/modalContext.js.map +1 -0
  175. package/dist/esm/v2/models/favorite.js +2 -0
  176. package/dist/esm/v2/models/favorite.js.map +1 -0
  177. package/dist/esm/v2/models/index.js +12 -0
  178. package/dist/esm/v2/models/index.js.map +1 -0
  179. package/dist/esm/v2/models/personalization.js +2 -0
  180. package/dist/esm/v2/models/personalization.js.map +1 -0
  181. package/dist/esm/v2/models/referentiel.js +2 -0
  182. package/dist/esm/v2/models/referentiel.js.map +1 -0
  183. package/dist/esm/v2/models/savedFilter.js +2 -0
  184. package/dist/esm/v2/models/savedFilter.js.map +1 -0
  185. package/dist/esm/v2/patterns/ActionBar.js +603 -0
  186. package/dist/esm/v2/patterns/ActionBar.js.map +1 -0
  187. package/dist/esm/v2/patterns/BulkActionBar.js +147 -0
  188. package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -0
  189. package/dist/esm/v2/patterns/CollapsibleDataGrid.js +303 -0
  190. package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -0
  191. package/dist/esm/v2/patterns/ColumnsToggle.js +301 -0
  192. package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -0
  193. package/dist/esm/v2/patterns/DataGrid.js +820 -0
  194. package/dist/esm/v2/patterns/DataGrid.js.map +1 -0
  195. package/dist/esm/v2/patterns/DataGridSettingsMenu.js +375 -0
  196. package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -0
  197. package/dist/esm/v2/patterns/DataGridToolbar.js +249 -0
  198. package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -0
  199. package/dist/esm/v2/patterns/DataGridVirtualized.js +523 -0
  200. package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -0
  201. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +70 -0
  202. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -0
  203. package/dist/esm/v2/patterns/FavoriteColumn.js +164 -0
  204. package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -0
  205. package/dist/esm/v2/patterns/FavoritesFilter.js +91 -0
  206. package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -0
  207. package/dist/esm/v2/patterns/FormErrorSummary.js +101 -0
  208. package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -0
  209. package/dist/esm/v2/patterns/FormPageShell.js +126 -0
  210. package/dist/esm/v2/patterns/FormPageShell.js.map +1 -0
  211. package/dist/esm/v2/patterns/FormSection.js +190 -0
  212. package/dist/esm/v2/patterns/FormSection.js.map +1 -0
  213. package/dist/esm/v2/patterns/FormikCheckboxGroup.js +110 -0
  214. package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -0
  215. package/dist/esm/v2/patterns/FormikCombobox.js +115 -0
  216. package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -0
  217. package/dist/esm/v2/patterns/FormikDatePicker.js +196 -0
  218. package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -0
  219. package/dist/esm/v2/patterns/FormikErrorFocus.js +77 -0
  220. package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -0
  221. package/dist/esm/v2/patterns/FormikFile.js +148 -0
  222. package/dist/esm/v2/patterns/FormikFile.js.map +1 -0
  223. package/dist/esm/v2/patterns/FormikInput.js +127 -0
  224. package/dist/esm/v2/patterns/FormikInput.js.map +1 -0
  225. package/dist/esm/v2/patterns/FormikReferentielField.js +116 -0
  226. package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -0
  227. package/dist/esm/v2/patterns/FormikSelect.js +159 -0
  228. package/dist/esm/v2/patterns/FormikSelect.js.map +1 -0
  229. package/dist/esm/v2/patterns/FormikTextarea.js +76 -0
  230. package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -0
  231. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +195 -0
  232. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -0
  233. package/dist/esm/v2/patterns/NetworkErrorBanner.js +72 -0
  234. package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -0
  235. package/dist/esm/v2/patterns/PageContent.js +62 -0
  236. package/dist/esm/v2/patterns/PageContent.js.map +1 -0
  237. package/dist/esm/v2/patterns/ReferentielField.js +615 -0
  238. package/dist/esm/v2/patterns/ReferentielField.js.map +1 -0
  239. package/dist/esm/v2/patterns/SaveFilterDialog.js +197 -0
  240. package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -0
  241. package/dist/esm/v2/patterns/SavedFiltersMenu.js +406 -0
  242. package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -0
  243. package/dist/esm/v2/patterns/SkeletonPageShell.js +342 -0
  244. package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -0
  245. package/dist/esm/v2/patterns/SortableHeader.js +179 -0
  246. package/dist/esm/v2/patterns/SortableHeader.js.map +1 -0
  247. package/dist/esm/v2/patterns/Tour.js +471 -0
  248. package/dist/esm/v2/patterns/Tour.js.map +1 -0
  249. package/dist/esm/v2/patterns/_dataGridShared.js +431 -0
  250. package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -0
  251. package/dist/esm/v2/patterns/_sort.js +112 -0
  252. package/dist/esm/v2/patterns/_sort.js.map +1 -0
  253. package/dist/esm/v2/patterns/_useColumnReorder.js +257 -0
  254. package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -0
  255. package/dist/esm/v2/patterns/_useColumnResize.js +191 -0
  256. package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -0
  257. package/dist/esm/v2/patterns/index.js +95 -0
  258. package/dist/esm/v2/patterns/index.js.map +1 -0
  259. package/dist/esm/v2/personalization/PersonalizationProvider.js +168 -0
  260. package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -0
  261. package/dist/esm/v2/personalization/adapters/_storageKey.js +60 -0
  262. package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -0
  263. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +124 -0
  264. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -0
  265. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +70 -0
  266. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -0
  267. package/dist/esm/v2/personalization/adapters/index.js +11 -0
  268. package/dist/esm/v2/personalization/adapters/index.js.map +1 -0
  269. package/dist/esm/v2/personalization/capabilities/favorites.js +216 -0
  270. package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -0
  271. package/dist/esm/v2/personalization/capabilities/favoritesView.js +111 -0
  272. package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -0
  273. package/dist/esm/v2/personalization/capabilities/index.js +17 -0
  274. package/dist/esm/v2/personalization/capabilities/index.js.map +1 -0
  275. package/dist/esm/v2/personalization/capabilities/savedFilters.js +291 -0
  276. package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -0
  277. package/dist/esm/v2/personalization/createPersonalizationStore.js +472 -0
  278. package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -0
  279. package/dist/esm/v2/personalization/index.js +46 -0
  280. package/dist/esm/v2/personalization/index.js.map +1 -0
  281. package/dist/esm/v2/personalization/personalizationContext.js +108 -0
  282. package/dist/esm/v2/personalization/personalizationContext.js.map +1 -0
  283. package/dist/esm/v2/personalization/schema.js +92 -0
  284. package/dist/esm/v2/personalization/schema.js.map +1 -0
  285. package/dist/esm/v2/personalization/types.js +2 -0
  286. package/dist/esm/v2/personalization/types.js.map +1 -0
  287. package/dist/esm/v2/referentiel/ReferentielProvider.js +87 -0
  288. package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -0
  289. package/dist/esm/v2/referentiel/index.js +15 -0
  290. package/dist/esm/v2/referentiel/index.js.map +1 -0
  291. package/dist/esm/v2/referentiel/useReferentielClient.js +37 -0
  292. package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -0
  293. package/dist/esm/v2/referentiel/useReferentielOptions.js +169 -0
  294. package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -0
  295. package/dist/esm/v2/referentiel/useReferentielSearch.js +132 -0
  296. package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -0
  297. package/dist/esm/v2/styles/base.css +425 -0
  298. package/dist/esm/v2/styles/css.d.ts +10 -0
  299. package/dist/esm/v2/styles/index.js +12 -0
  300. package/dist/esm/v2/styles/index.js.map +1 -0
  301. package/dist/esm/v2/theme/_brand.js +64 -0
  302. package/dist/esm/v2/theme/_brand.js.map +1 -0
  303. package/dist/esm/v2/theme/_brandSecondary.js +60 -0
  304. package/dist/esm/v2/theme/_brandSecondary.js.map +1 -0
  305. package/dist/esm/v2/theme/createPortnetTheme.js +548 -0
  306. package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -0
  307. package/dist/esm/v2/theme/cssVariables.js +198 -0
  308. package/dist/esm/v2/theme/cssVariables.js.map +1 -0
  309. package/dist/esm/v2/theme/index.js +32 -0
  310. package/dist/esm/v2/theme/index.js.map +1 -0
  311. package/dist/esm/v2/tokens/breakpoints.js +106 -0
  312. package/dist/esm/v2/tokens/breakpoints.js.map +1 -0
  313. package/dist/esm/v2/tokens/colors.js +219 -0
  314. package/dist/esm/v2/tokens/colors.js.map +1 -0
  315. package/dist/esm/v2/tokens/density.js +98 -0
  316. package/dist/esm/v2/tokens/density.js.map +1 -0
  317. package/dist/esm/v2/tokens/index.js +80 -0
  318. package/dist/esm/v2/tokens/index.js.map +1 -0
  319. package/dist/esm/v2/tokens/motion.js +88 -0
  320. package/dist/esm/v2/tokens/motion.js.map +1 -0
  321. package/dist/esm/v2/tokens/radius.js +22 -0
  322. package/dist/esm/v2/tokens/radius.js.map +1 -0
  323. package/dist/esm/v2/tokens/shadows.js +40 -0
  324. package/dist/esm/v2/tokens/shadows.js.map +1 -0
  325. package/dist/esm/v2/tokens/spacing.js +51 -0
  326. package/dist/esm/v2/tokens/spacing.js.map +1 -0
  327. package/dist/esm/v2/tokens/state.js +41 -0
  328. package/dist/esm/v2/tokens/state.js.map +1 -0
  329. package/dist/esm/v2/tokens/statusPalette.js +66 -0
  330. package/dist/esm/v2/tokens/statusPalette.js.map +1 -0
  331. package/dist/esm/v2/tokens/tokens.json +153 -0
  332. package/dist/esm/v2/tokens/typography.js +149 -0
  333. package/dist/esm/v2/tokens/typography.js.map +1 -0
  334. package/dist/esm/v2/tokens/zIndex.js +44 -0
  335. package/dist/esm/v2/tokens/zIndex.js.map +1 -0
  336. package/dist/esm/v2/types/common.js +2 -0
  337. package/dist/esm/v2/types/common.js.map +1 -0
  338. package/dist/esm/v2/types/datagrid.js +2 -0
  339. package/dist/esm/v2/types/datagrid.js.map +1 -0
  340. package/dist/esm/v2/types/index.js +12 -0
  341. package/dist/esm/v2/types/index.js.map +1 -0
  342. package/dist/esm/v2/utils/apiError.js +281 -0
  343. package/dist/esm/v2/utils/apiError.js.map +1 -0
  344. package/dist/esm/v2/utils/contrast.js +157 -0
  345. package/dist/esm/v2/utils/contrast.js.map +1 -0
  346. package/dist/esm/v2/utils/cx.js +38 -0
  347. package/dist/esm/v2/utils/cx.js.map +1 -0
  348. package/dist/esm/v2/utils/fileDownload.js +226 -0
  349. package/dist/esm/v2/utils/fileDownload.js.map +1 -0
  350. package/dist/esm/v2/utils/fmtMoney.js +78 -0
  351. package/dist/esm/v2/utils/fmtMoney.js.map +1 -0
  352. package/dist/esm/v2/utils/index.js +43 -0
  353. package/dist/esm/v2/utils/index.js.map +1 -0
  354. package/dist/esm/v2/utils/mergeLabels.js +86 -0
  355. package/dist/esm/v2/utils/mergeLabels.js.map +1 -0
  356. package/dist/esm/v2/utils/networkStatus.js +114 -0
  357. package/dist/esm/v2/utils/networkStatus.js.map +1 -0
  358. package/dist/index.d.ts +60 -0
  359. package/dist/index.d.ts.map +1 -0
  360. package/dist/index.js +183 -191
  361. package/dist/index.js.map +1 -0
  362. package/dist/v2/__tests__/FieldError.test.js +164 -0
  363. package/dist/v2/__tests__/FieldError.test.js.map +1 -0
  364. package/dist/v2/__tests__/FileCard.test.js +148 -0
  365. package/dist/v2/__tests__/FileCard.test.js.map +1 -0
  366. package/dist/v2/__tests__/MobileRowCard.test.js +337 -0
  367. package/dist/v2/__tests__/MobileRowCard.test.js.map +1 -0
  368. package/dist/v2/__tests__/SectionErrorBoundary.test.js +237 -0
  369. package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
  370. package/dist/v2/__tests__/apiError.test.js +182 -0
  371. package/dist/v2/__tests__/apiError.test.js.map +1 -0
  372. package/dist/v2/__tests__/banned-patterns.test.js +272 -0
  373. package/dist/v2/__tests__/banned-patterns.test.js.map +1 -0
  374. package/dist/v2/__tests__/contrast-palette.test.js +225 -0
  375. package/dist/v2/__tests__/contrast-palette.test.js.map +1 -0
  376. package/dist/v2/__tests__/cssVariables.test.js +158 -0
  377. package/dist/v2/__tests__/cssVariables.test.js.map +1 -0
  378. package/dist/v2/__tests__/labels-merge.test.js +153 -0
  379. package/dist/v2/__tests__/labels-merge.test.js.map +1 -0
  380. package/dist/v2/__tests__/locale-fallback.test.js +111 -0
  381. package/dist/v2/__tests__/locale-fallback.test.js.map +1 -0
  382. package/dist/v2/__tests__/useFocusTrap.test.js +517 -0
  383. package/dist/v2/__tests__/useFocusTrap.test.js.map +1 -0
  384. package/dist/v2/components/Accordion.d.ts +56 -0
  385. package/dist/v2/components/Accordion.d.ts.map +1 -0
  386. package/dist/v2/components/Accordion.js +238 -0
  387. package/dist/v2/components/Accordion.js.map +1 -0
  388. package/dist/v2/components/ActionStrip.d.ts +67 -0
  389. package/dist/v2/components/ActionStrip.d.ts.map +1 -0
  390. package/dist/v2/components/ActionStrip.js +154 -0
  391. package/dist/v2/components/ActionStrip.js.map +1 -0
  392. package/dist/v2/components/Banner.d.ts +88 -0
  393. package/dist/v2/components/Banner.d.ts.map +1 -0
  394. package/dist/v2/components/Banner.js +264 -0
  395. package/dist/v2/components/Banner.js.map +1 -0
  396. package/dist/v2/components/Busy.d.ts +18 -0
  397. package/dist/v2/components/Busy.d.ts.map +1 -0
  398. package/dist/v2/components/Busy.js +104 -0
  399. package/dist/v2/components/Busy.js.map +1 -0
  400. package/dist/v2/components/Button.d.ts +36 -0
  401. package/dist/v2/components/Button.d.ts.map +1 -0
  402. package/dist/v2/components/Button.js +122 -0
  403. package/dist/v2/components/Button.js.map +1 -0
  404. package/dist/v2/components/CategoryTag.d.ts +45 -0
  405. package/dist/v2/components/CategoryTag.d.ts.map +1 -0
  406. package/dist/v2/components/CategoryTag.js +89 -0
  407. package/dist/v2/components/CategoryTag.js.map +1 -0
  408. package/dist/v2/components/Checkbox.d.ts +59 -0
  409. package/dist/v2/components/Checkbox.d.ts.map +1 -0
  410. package/dist/v2/components/Checkbox.js +134 -0
  411. package/dist/v2/components/Checkbox.js.map +1 -0
  412. package/dist/v2/components/Chip.d.ts +48 -0
  413. package/dist/v2/components/Chip.d.ts.map +1 -0
  414. package/dist/v2/components/Chip.js +132 -0
  415. package/dist/v2/components/Chip.js.map +1 -0
  416. package/dist/v2/components/Combobox.d.ts +134 -0
  417. package/dist/v2/components/Combobox.d.ts.map +1 -0
  418. package/dist/v2/components/Combobox.js +400 -0
  419. package/dist/v2/components/Combobox.js.map +1 -0
  420. package/dist/v2/components/CommandPalette.d.ts +36 -0
  421. package/dist/v2/components/CommandPalette.d.ts.map +1 -0
  422. package/dist/v2/components/CommandPalette.js +668 -0
  423. package/dist/v2/components/CommandPalette.js.map +1 -0
  424. package/dist/v2/components/ConfirmDialog.d.ts +23 -0
  425. package/dist/v2/components/ConfirmDialog.d.ts.map +1 -0
  426. package/dist/v2/components/ConfirmDialog.js +151 -0
  427. package/dist/v2/components/ConfirmDialog.js.map +1 -0
  428. package/dist/v2/components/DatePicker.d.ts +21 -0
  429. package/dist/v2/components/DatePicker.d.ts.map +1 -0
  430. package/dist/v2/components/DatePicker.js +207 -0
  431. package/dist/v2/components/DatePicker.js.map +1 -0
  432. package/dist/v2/components/DateRangePicker.d.ts +81 -0
  433. package/dist/v2/components/DateRangePicker.d.ts.map +1 -0
  434. package/dist/v2/components/DateRangePicker.js +296 -0
  435. package/dist/v2/components/DateRangePicker.js.map +1 -0
  436. package/dist/v2/components/DateTimePicker.d.ts +21 -0
  437. package/dist/v2/components/DateTimePicker.d.ts.map +1 -0
  438. package/dist/v2/components/DateTimePicker.js +189 -0
  439. package/dist/v2/components/DateTimePicker.js.map +1 -0
  440. package/dist/v2/components/Drawer.d.ts +34 -0
  441. package/dist/v2/components/Drawer.d.ts.map +1 -0
  442. package/dist/v2/components/Drawer.js +340 -0
  443. package/dist/v2/components/Drawer.js.map +1 -0
  444. package/dist/v2/components/Dropzone.d.ts +150 -0
  445. package/dist/v2/components/Dropzone.d.ts.map +1 -0
  446. package/dist/v2/components/Dropzone.js +547 -0
  447. package/dist/v2/components/Dropzone.js.map +1 -0
  448. package/dist/v2/components/EmptyState.d.ts +36 -0
  449. package/dist/v2/components/EmptyState.d.ts.map +1 -0
  450. package/dist/v2/components/EmptyState.js +112 -0
  451. package/dist/v2/components/EmptyState.js.map +1 -0
  452. package/dist/v2/components/FavoriteToggle.d.ts +22 -0
  453. package/dist/v2/components/FavoriteToggle.d.ts.map +1 -0
  454. package/dist/v2/components/FavoriteToggle.js +135 -0
  455. package/dist/v2/components/FavoriteToggle.js.map +1 -0
  456. package/dist/v2/components/Field.d.ts +63 -0
  457. package/dist/v2/components/Field.d.ts.map +1 -0
  458. package/dist/v2/components/Field.js +204 -0
  459. package/dist/v2/components/Field.js.map +1 -0
  460. package/dist/v2/components/FieldError.d.ts +78 -0
  461. package/dist/v2/components/FieldError.d.ts.map +1 -0
  462. package/dist/v2/components/FieldError.js +131 -0
  463. package/dist/v2/components/FieldError.js.map +1 -0
  464. package/dist/v2/components/FieldHelp.d.ts +54 -0
  465. package/dist/v2/components/FieldHelp.d.ts.map +1 -0
  466. package/dist/v2/components/FieldHelp.js +209 -0
  467. package/dist/v2/components/FieldHelp.js.map +1 -0
  468. package/dist/v2/components/FileCard.d.ts +75 -0
  469. package/dist/v2/components/FileCard.d.ts.map +1 -0
  470. package/dist/v2/components/FileCard.js +169 -0
  471. package/dist/v2/components/FileCard.js.map +1 -0
  472. package/dist/v2/components/FilterTab.d.ts +35 -0
  473. package/dist/v2/components/FilterTab.d.ts.map +1 -0
  474. package/dist/v2/components/FilterTab.js +145 -0
  475. package/dist/v2/components/FilterTab.js.map +1 -0
  476. package/dist/v2/components/ForbiddenPage.d.ts +40 -0
  477. package/dist/v2/components/ForbiddenPage.d.ts.map +1 -0
  478. package/dist/v2/components/ForbiddenPage.js +81 -0
  479. package/dist/v2/components/ForbiddenPage.js.map +1 -0
  480. package/dist/v2/components/FormGrid.d.ts +81 -0
  481. package/dist/v2/components/FormGrid.d.ts.map +1 -0
  482. package/dist/v2/components/FormGrid.js +187 -0
  483. package/dist/v2/components/FormGrid.js.map +1 -0
  484. package/dist/v2/components/FormikDisplay.d.ts +38 -0
  485. package/dist/v2/components/FormikDisplay.d.ts.map +1 -0
  486. package/dist/v2/components/FormikDisplay.js +125 -0
  487. package/dist/v2/components/FormikDisplay.js.map +1 -0
  488. package/dist/v2/components/Input.d.ts +62 -0
  489. package/dist/v2/components/Input.d.ts.map +1 -0
  490. package/dist/v2/components/Input.js +115 -0
  491. package/dist/v2/components/Input.js.map +1 -0
  492. package/dist/v2/components/KPICard.d.ts +52 -0
  493. package/dist/v2/components/KPICard.d.ts.map +1 -0
  494. package/dist/v2/components/KPICard.js +244 -0
  495. package/dist/v2/components/KPICard.js.map +1 -0
  496. package/dist/v2/components/KPIStrip.d.ts +68 -0
  497. package/dist/v2/components/KPIStrip.d.ts.map +1 -0
  498. package/dist/v2/components/KPIStrip.js +92 -0
  499. package/dist/v2/components/KPIStrip.js.map +1 -0
  500. package/dist/v2/components/KV.d.ts +25 -0
  501. package/dist/v2/components/KV.d.ts.map +1 -0
  502. package/dist/v2/components/KV.js +82 -0
  503. package/dist/v2/components/KV.js.map +1 -0
  504. package/dist/v2/components/KVGrid.d.ts +44 -0
  505. package/dist/v2/components/KVGrid.d.ts.map +1 -0
  506. package/dist/v2/components/KVGrid.js +80 -0
  507. package/dist/v2/components/KVGrid.js.map +1 -0
  508. package/dist/v2/components/Layout.d.ts +78 -0
  509. package/dist/v2/components/Layout.d.ts.map +1 -0
  510. package/dist/v2/components/Layout.js +284 -0
  511. package/dist/v2/components/Layout.js.map +1 -0
  512. package/dist/v2/components/MobileRowCard.d.ts +63 -0
  513. package/dist/v2/components/MobileRowCard.d.ts.map +1 -0
  514. package/dist/v2/components/MobileRowCard.js +321 -0
  515. package/dist/v2/components/MobileRowCard.js.map +1 -0
  516. package/dist/v2/components/Modal.d.ts +21 -0
  517. package/dist/v2/components/Modal.d.ts.map +1 -0
  518. package/dist/v2/components/Modal.js +281 -0
  519. package/dist/v2/components/Modal.js.map +1 -0
  520. package/dist/v2/components/NetworkErrorPage.d.ts +11 -0
  521. package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -0
  522. package/dist/v2/components/NetworkErrorPage.js +86 -0
  523. package/dist/v2/components/NetworkErrorPage.js.map +1 -0
  524. package/dist/v2/components/NotFoundPage.d.ts +9 -0
  525. package/dist/v2/components/NotFoundPage.d.ts.map +1 -0
  526. package/dist/v2/components/NotFoundPage.js +66 -0
  527. package/dist/v2/components/NotFoundPage.js.map +1 -0
  528. package/dist/v2/components/NumberInput.d.ts +83 -0
  529. package/dist/v2/components/NumberInput.d.ts.map +1 -0
  530. package/dist/v2/components/NumberInput.js +317 -0
  531. package/dist/v2/components/NumberInput.js.map +1 -0
  532. package/dist/v2/components/OverflowMenu.d.ts +55 -0
  533. package/dist/v2/components/OverflowMenu.d.ts.map +1 -0
  534. package/dist/v2/components/OverflowMenu.js +192 -0
  535. package/dist/v2/components/OverflowMenu.js.map +1 -0
  536. package/dist/v2/components/PdfViewer.d.ts +56 -0
  537. package/dist/v2/components/PdfViewer.d.ts.map +1 -0
  538. package/dist/v2/components/PdfViewer.js +132 -0
  539. package/dist/v2/components/PdfViewer.js.map +1 -0
  540. package/dist/v2/components/ProgressBar.d.ts +53 -0
  541. package/dist/v2/components/ProgressBar.d.ts.map +1 -0
  542. package/dist/v2/components/ProgressBar.js +209 -0
  543. package/dist/v2/components/ProgressBar.js.map +1 -0
  544. package/dist/v2/components/Radio.d.ts +78 -0
  545. package/dist/v2/components/Radio.d.ts.map +1 -0
  546. package/dist/v2/components/Radio.js +238 -0
  547. package/dist/v2/components/Radio.js.map +1 -0
  548. package/dist/v2/components/SectionErrorBoundary.d.ts +89 -0
  549. package/dist/v2/components/SectionErrorBoundary.d.ts.map +1 -0
  550. package/dist/v2/components/SectionErrorBoundary.js +221 -0
  551. package/dist/v2/components/SectionErrorBoundary.js.map +1 -0
  552. package/dist/v2/components/SectionHeader.d.ts +53 -0
  553. package/dist/v2/components/SectionHeader.d.ts.map +1 -0
  554. package/dist/v2/components/SectionHeader.js +140 -0
  555. package/dist/v2/components/SectionHeader.js.map +1 -0
  556. package/dist/v2/components/Segmented.d.ts +61 -0
  557. package/dist/v2/components/Segmented.d.ts.map +1 -0
  558. package/dist/v2/components/Segmented.js +261 -0
  559. package/dist/v2/components/Segmented.js.map +1 -0
  560. package/dist/v2/components/Select.d.ts +90 -0
  561. package/dist/v2/components/Select.d.ts.map +1 -0
  562. package/dist/v2/components/Select.js +499 -0
  563. package/dist/v2/components/Select.js.map +1 -0
  564. package/dist/v2/components/ServerErrorPage.d.ts +11 -0
  565. package/dist/v2/components/ServerErrorPage.d.ts.map +1 -0
  566. package/dist/v2/components/ServerErrorPage.js +82 -0
  567. package/dist/v2/components/ServerErrorPage.js.map +1 -0
  568. package/dist/v2/components/Skeleton.d.ts +56 -0
  569. package/dist/v2/components/Skeleton.d.ts.map +1 -0
  570. package/dist/v2/components/Skeleton.js +281 -0
  571. package/dist/v2/components/Skeleton.js.map +1 -0
  572. package/dist/v2/components/SkipLink.d.ts +30 -0
  573. package/dist/v2/components/SkipLink.d.ts.map +1 -0
  574. package/dist/v2/components/SkipLink.js +58 -0
  575. package/dist/v2/components/SkipLink.js.map +1 -0
  576. package/dist/v2/components/Spinner.d.ts +40 -0
  577. package/dist/v2/components/Spinner.d.ts.map +1 -0
  578. package/dist/v2/components/Spinner.js +76 -0
  579. package/dist/v2/components/Spinner.js.map +1 -0
  580. package/dist/v2/components/Status.d.ts +42 -0
  581. package/dist/v2/components/Status.d.ts.map +1 -0
  582. package/dist/v2/components/Status.js +71 -0
  583. package/dist/v2/components/Status.js.map +1 -0
  584. package/dist/v2/components/Stepper.d.ts +142 -0
  585. package/dist/v2/components/Stepper.d.ts.map +1 -0
  586. package/dist/v2/components/Stepper.js +441 -0
  587. package/dist/v2/components/Stepper.js.map +1 -0
  588. package/dist/v2/components/Surface.d.ts +94 -0
  589. package/dist/v2/components/Surface.d.ts.map +1 -0
  590. package/dist/v2/components/Surface.js +163 -0
  591. package/dist/v2/components/Surface.js.map +1 -0
  592. package/dist/v2/components/Switch.d.ts +30 -0
  593. package/dist/v2/components/Switch.d.ts.map +1 -0
  594. package/dist/v2/components/Switch.js +136 -0
  595. package/dist/v2/components/Switch.js.map +1 -0
  596. package/dist/v2/components/Tabs.d.ts +49 -0
  597. package/dist/v2/components/Tabs.d.ts.map +1 -0
  598. package/dist/v2/components/Tabs.js +160 -0
  599. package/dist/v2/components/Tabs.js.map +1 -0
  600. package/dist/v2/components/TelInput.d.ts +33 -0
  601. package/dist/v2/components/TelInput.d.ts.map +1 -0
  602. package/dist/v2/components/TelInput.js +282 -0
  603. package/dist/v2/components/TelInput.js.map +1 -0
  604. package/dist/v2/components/Textarea.d.ts +23 -0
  605. package/dist/v2/components/Textarea.d.ts.map +1 -0
  606. package/dist/v2/components/Textarea.js +80 -0
  607. package/dist/v2/components/Textarea.js.map +1 -0
  608. package/dist/v2/components/TimePicker.d.ts +21 -0
  609. package/dist/v2/components/TimePicker.d.ts.map +1 -0
  610. package/dist/v2/components/TimePicker.js +141 -0
  611. package/dist/v2/components/TimePicker.js.map +1 -0
  612. package/dist/v2/components/Toast.d.ts +32 -0
  613. package/dist/v2/components/Toast.d.ts.map +1 -0
  614. package/dist/v2/components/Toast.js +385 -0
  615. package/dist/v2/components/Toast.js.map +1 -0
  616. package/dist/v2/components/Tooltip.d.ts +9 -0
  617. package/dist/v2/components/Tooltip.d.ts.map +1 -0
  618. package/dist/v2/components/Tooltip.js +169 -0
  619. package/dist/v2/components/Tooltip.js.map +1 -0
  620. package/dist/v2/components/_ErrorPageBody.d.ts +48 -0
  621. package/dist/v2/components/_ErrorPageBody.d.ts.map +1 -0
  622. package/dist/v2/components/_ErrorPageBody.js +96 -0
  623. package/dist/v2/components/_ErrorPageBody.js.map +1 -0
  624. package/dist/v2/components/_pickerShared.d.ts +47 -0
  625. package/dist/v2/components/_pickerShared.d.ts.map +1 -0
  626. package/dist/v2/components/_pickerShared.js +68 -0
  627. package/dist/v2/components/_pickerShared.js.map +1 -0
  628. package/dist/v2/components/index.d.ts +226 -0
  629. package/dist/v2/components/index.d.ts.map +1 -0
  630. package/dist/v2/components/index.js +512 -0
  631. package/dist/v2/components/index.js.map +1 -0
  632. package/dist/v2/hooks/index.d.ts +11 -0
  633. package/dist/v2/hooks/index.d.ts.map +1 -0
  634. package/dist/v2/hooks/index.js +85 -0
  635. package/dist/v2/hooks/index.js.map +1 -0
  636. package/dist/v2/hooks/useDelayedFlag.d.ts +22 -0
  637. package/dist/v2/hooks/useDelayedFlag.d.ts.map +1 -0
  638. package/dist/v2/hooks/useDelayedFlag.js +60 -0
  639. package/dist/v2/hooks/useDelayedFlag.js.map +1 -0
  640. package/dist/v2/hooks/useDensity.d.ts +23 -0
  641. package/dist/v2/hooks/useDensity.d.ts.map +1 -0
  642. package/dist/v2/hooks/useDensity.js +124 -0
  643. package/dist/v2/hooks/useDensity.js.map +1 -0
  644. package/dist/v2/hooks/useFocusFirstError.d.ts +121 -0
  645. package/dist/v2/hooks/useFocusFirstError.d.ts.map +1 -0
  646. package/dist/v2/hooks/useFocusFirstError.js +203 -0
  647. package/dist/v2/hooks/useFocusFirstError.js.map +1 -0
  648. package/dist/v2/hooks/useFocusTrap.d.ts +3 -0
  649. package/dist/v2/hooks/useFocusTrap.d.ts.map +1 -0
  650. package/dist/v2/hooks/useFocusTrap.js +207 -0
  651. package/dist/v2/hooks/useFocusTrap.js.map +1 -0
  652. package/dist/v2/hooks/useFormAutoSave.d.ts +42 -0
  653. package/dist/v2/hooks/useFormAutoSave.d.ts.map +1 -0
  654. package/dist/v2/hooks/useFormAutoSave.js +186 -0
  655. package/dist/v2/hooks/useFormAutoSave.js.map +1 -0
  656. package/dist/v2/hooks/useFormCompletionProgress.d.ts +52 -0
  657. package/dist/v2/hooks/useFormCompletionProgress.d.ts.map +1 -0
  658. package/dist/v2/hooks/useFormCompletionProgress.js +136 -0
  659. package/dist/v2/hooks/useFormCompletionProgress.js.map +1 -0
  660. package/dist/v2/hooks/useResolvedDensity.d.ts +31 -0
  661. package/dist/v2/hooks/useResolvedDensity.d.ts.map +1 -0
  662. package/dist/v2/hooks/useResolvedDensity.js +50 -0
  663. package/dist/v2/hooks/useResolvedDensity.js.map +1 -0
  664. package/dist/v2/hooks/useSortedRows.d.ts +25 -0
  665. package/dist/v2/hooks/useSortedRows.d.ts.map +1 -0
  666. package/dist/v2/hooks/useSortedRows.js +38 -0
  667. package/dist/v2/hooks/useSortedRows.js.map +1 -0
  668. package/dist/v2/hooks/useTabLoading.d.ts +39 -0
  669. package/dist/v2/hooks/useTabLoading.d.ts.map +1 -0
  670. package/dist/v2/hooks/useTabLoading.js +85 -0
  671. package/dist/v2/hooks/useTabLoading.js.map +1 -0
  672. package/dist/v2/index.d.ts +115 -0
  673. package/dist/v2/index.d.ts.map +1 -0
  674. package/dist/v2/index.js +1127 -0
  675. package/dist/v2/index.js.map +1 -0
  676. package/dist/v2/modalContext.d.ts +96 -0
  677. package/dist/v2/modalContext.d.ts.map +1 -0
  678. package/dist/v2/modalContext.js +113 -0
  679. package/dist/v2/modalContext.js.map +1 -0
  680. package/dist/v2/models/favorite.d.ts +14 -0
  681. package/dist/v2/models/favorite.d.ts.map +1 -0
  682. package/dist/v2/models/favorite.js +6 -0
  683. package/dist/v2/models/favorite.js.map +1 -0
  684. package/dist/v2/models/index.d.ts +11 -0
  685. package/dist/v2/models/index.d.ts.map +1 -0
  686. package/dist/v2/models/index.js +50 -0
  687. package/dist/v2/models/index.js.map +1 -0
  688. package/dist/v2/models/personalization.d.ts +65 -0
  689. package/dist/v2/models/personalization.d.ts.map +1 -0
  690. package/dist/v2/models/personalization.js +6 -0
  691. package/dist/v2/models/personalization.js.map +1 -0
  692. package/dist/v2/models/referentiel.d.ts +67 -0
  693. package/dist/v2/models/referentiel.d.ts.map +1 -0
  694. package/dist/v2/models/referentiel.js +6 -0
  695. package/dist/v2/models/referentiel.js.map +1 -0
  696. package/dist/v2/models/savedFilter.d.ts +22 -0
  697. package/dist/v2/models/savedFilter.d.ts.map +1 -0
  698. package/dist/v2/models/savedFilter.js +6 -0
  699. package/dist/v2/models/savedFilter.js.map +1 -0
  700. package/dist/v2/patterns/ActionBar.d.ts +137 -0
  701. package/dist/v2/patterns/ActionBar.d.ts.map +1 -0
  702. package/dist/v2/patterns/ActionBar.js +602 -0
  703. package/dist/v2/patterns/ActionBar.js.map +1 -0
  704. package/dist/v2/patterns/BulkActionBar.d.ts +63 -0
  705. package/dist/v2/patterns/BulkActionBar.d.ts.map +1 -0
  706. package/dist/v2/patterns/BulkActionBar.js +154 -0
  707. package/dist/v2/patterns/BulkActionBar.js.map +1 -0
  708. package/dist/v2/patterns/CollapsibleDataGrid.d.ts +62 -0
  709. package/dist/v2/patterns/CollapsibleDataGrid.d.ts.map +1 -0
  710. package/dist/v2/patterns/CollapsibleDataGrid.js +306 -0
  711. package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -0
  712. package/dist/v2/patterns/ColumnsToggle.d.ts +55 -0
  713. package/dist/v2/patterns/ColumnsToggle.d.ts.map +1 -0
  714. package/dist/v2/patterns/ColumnsToggle.js +310 -0
  715. package/dist/v2/patterns/ColumnsToggle.js.map +1 -0
  716. package/dist/v2/patterns/DataGrid.d.ts +7 -0
  717. package/dist/v2/patterns/DataGrid.d.ts.map +1 -0
  718. package/dist/v2/patterns/DataGrid.js +834 -0
  719. package/dist/v2/patterns/DataGrid.js.map +1 -0
  720. package/dist/v2/patterns/DataGridSettingsMenu.d.ts +68 -0
  721. package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -0
  722. package/dist/v2/patterns/DataGridSettingsMenu.js +382 -0
  723. package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -0
  724. package/dist/v2/patterns/DataGridToolbar.d.ts +81 -0
  725. package/dist/v2/patterns/DataGridToolbar.d.ts.map +1 -0
  726. package/dist/v2/patterns/DataGridToolbar.js +256 -0
  727. package/dist/v2/patterns/DataGridToolbar.js.map +1 -0
  728. package/dist/v2/patterns/DataGridVirtualized.d.ts +76 -0
  729. package/dist/v2/patterns/DataGridVirtualized.d.ts.map +1 -0
  730. package/dist/v2/patterns/DataGridVirtualized.js +528 -0
  731. package/dist/v2/patterns/DataGridVirtualized.js.map +1 -0
  732. package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts +46 -0
  733. package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts.map +1 -0
  734. package/dist/v2/patterns/DeleteResourceConfirmDialog.js +77 -0
  735. package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -0
  736. package/dist/v2/patterns/FavoriteColumn.d.ts +72 -0
  737. package/dist/v2/patterns/FavoriteColumn.d.ts.map +1 -0
  738. package/dist/v2/patterns/FavoriteColumn.js +171 -0
  739. package/dist/v2/patterns/FavoriteColumn.js.map +1 -0
  740. package/dist/v2/patterns/FavoritesFilter.d.ts +51 -0
  741. package/dist/v2/patterns/FavoritesFilter.d.ts.map +1 -0
  742. package/dist/v2/patterns/FavoritesFilter.js +98 -0
  743. package/dist/v2/patterns/FavoritesFilter.js.map +1 -0
  744. package/dist/v2/patterns/FormErrorSummary.d.ts +39 -0
  745. package/dist/v2/patterns/FormErrorSummary.d.ts.map +1 -0
  746. package/dist/v2/patterns/FormErrorSummary.js +111 -0
  747. package/dist/v2/patterns/FormErrorSummary.js.map +1 -0
  748. package/dist/v2/patterns/FormPageShell.d.ts +55 -0
  749. package/dist/v2/patterns/FormPageShell.d.ts.map +1 -0
  750. package/dist/v2/patterns/FormPageShell.js +133 -0
  751. package/dist/v2/patterns/FormPageShell.js.map +1 -0
  752. package/dist/v2/patterns/FormSection.d.ts +64 -0
  753. package/dist/v2/patterns/FormSection.d.ts.map +1 -0
  754. package/dist/v2/patterns/FormSection.js +197 -0
  755. package/dist/v2/patterns/FormSection.js.map +1 -0
  756. package/dist/v2/patterns/FormikCheckboxGroup.d.ts +51 -0
  757. package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -0
  758. package/dist/v2/patterns/FormikCheckboxGroup.js +117 -0
  759. package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -0
  760. package/dist/v2/patterns/FormikCombobox.d.ts +43 -0
  761. package/dist/v2/patterns/FormikCombobox.d.ts.map +1 -0
  762. package/dist/v2/patterns/FormikCombobox.js +121 -0
  763. package/dist/v2/patterns/FormikCombobox.js.map +1 -0
  764. package/dist/v2/patterns/FormikDatePicker.d.ts +115 -0
  765. package/dist/v2/patterns/FormikDatePicker.d.ts.map +1 -0
  766. package/dist/v2/patterns/FormikDatePicker.js +203 -0
  767. package/dist/v2/patterns/FormikDatePicker.js.map +1 -0
  768. package/dist/v2/patterns/FormikErrorFocus.d.ts +59 -0
  769. package/dist/v2/patterns/FormikErrorFocus.d.ts.map +1 -0
  770. package/dist/v2/patterns/FormikErrorFocus.js +83 -0
  771. package/dist/v2/patterns/FormikErrorFocus.js.map +1 -0
  772. package/dist/v2/patterns/FormikFile.d.ts +43 -0
  773. package/dist/v2/patterns/FormikFile.d.ts.map +1 -0
  774. package/dist/v2/patterns/FormikFile.js +156 -0
  775. package/dist/v2/patterns/FormikFile.js.map +1 -0
  776. package/dist/v2/patterns/FormikInput.d.ts +72 -0
  777. package/dist/v2/patterns/FormikInput.d.ts.map +1 -0
  778. package/dist/v2/patterns/FormikInput.js +135 -0
  779. package/dist/v2/patterns/FormikInput.js.map +1 -0
  780. package/dist/v2/patterns/FormikReferentielField.d.ts +33 -0
  781. package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -0
  782. package/dist/v2/patterns/FormikReferentielField.js +124 -0
  783. package/dist/v2/patterns/FormikReferentielField.js.map +1 -0
  784. package/dist/v2/patterns/FormikSelect.d.ts +61 -0
  785. package/dist/v2/patterns/FormikSelect.d.ts.map +1 -0
  786. package/dist/v2/patterns/FormikSelect.js +165 -0
  787. package/dist/v2/patterns/FormikSelect.js.map +1 -0
  788. package/dist/v2/patterns/FormikTextarea.d.ts +31 -0
  789. package/dist/v2/patterns/FormikTextarea.d.ts.map +1 -0
  790. package/dist/v2/patterns/FormikTextarea.js +84 -0
  791. package/dist/v2/patterns/FormikTextarea.js.map +1 -0
  792. package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts +44 -0
  793. package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts.map +1 -0
  794. package/dist/v2/patterns/KeyboardShortcutsHelp.js +203 -0
  795. package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -0
  796. package/dist/v2/patterns/NetworkErrorBanner.d.ts +26 -0
  797. package/dist/v2/patterns/NetworkErrorBanner.d.ts.map +1 -0
  798. package/dist/v2/patterns/NetworkErrorBanner.js +82 -0
  799. package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -0
  800. package/dist/v2/patterns/PageContent.d.ts +40 -0
  801. package/dist/v2/patterns/PageContent.d.ts.map +1 -0
  802. package/dist/v2/patterns/PageContent.js +69 -0
  803. package/dist/v2/patterns/PageContent.js.map +1 -0
  804. package/dist/v2/patterns/ReferentielField.d.ts +118 -0
  805. package/dist/v2/patterns/ReferentielField.d.ts.map +1 -0
  806. package/dist/v2/patterns/ReferentielField.js +618 -0
  807. package/dist/v2/patterns/ReferentielField.js.map +1 -0
  808. package/dist/v2/patterns/SaveFilterDialog.d.ts +68 -0
  809. package/dist/v2/patterns/SaveFilterDialog.d.ts.map +1 -0
  810. package/dist/v2/patterns/SaveFilterDialog.js +204 -0
  811. package/dist/v2/patterns/SaveFilterDialog.js.map +1 -0
  812. package/dist/v2/patterns/SavedFiltersMenu.d.ts +74 -0
  813. package/dist/v2/patterns/SavedFiltersMenu.d.ts.map +1 -0
  814. package/dist/v2/patterns/SavedFiltersMenu.js +413 -0
  815. package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -0
  816. package/dist/v2/patterns/SkeletonPageShell.d.ts +76 -0
  817. package/dist/v2/patterns/SkeletonPageShell.d.ts.map +1 -0
  818. package/dist/v2/patterns/SkeletonPageShell.js +347 -0
  819. package/dist/v2/patterns/SkeletonPageShell.js.map +1 -0
  820. package/dist/v2/patterns/SortableHeader.d.ts +47 -0
  821. package/dist/v2/patterns/SortableHeader.d.ts.map +1 -0
  822. package/dist/v2/patterns/SortableHeader.js +193 -0
  823. package/dist/v2/patterns/SortableHeader.js.map +1 -0
  824. package/dist/v2/patterns/Tour.d.ts +55 -0
  825. package/dist/v2/patterns/Tour.d.ts.map +1 -0
  826. package/dist/v2/patterns/Tour.js +474 -0
  827. package/dist/v2/patterns/Tour.js.map +1 -0
  828. package/dist/v2/patterns/_dataGridShared.d.ts +144 -0
  829. package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -0
  830. package/dist/v2/patterns/_dataGridShared.js +440 -0
  831. package/dist/v2/patterns/_dataGridShared.js.map +1 -0
  832. package/dist/v2/patterns/_sort.d.ts +22 -0
  833. package/dist/v2/patterns/_sort.d.ts.map +1 -0
  834. package/dist/v2/patterns/_sort.js +118 -0
  835. package/dist/v2/patterns/_sort.js.map +1 -0
  836. package/dist/v2/patterns/_useColumnReorder.d.ts +69 -0
  837. package/dist/v2/patterns/_useColumnReorder.d.ts.map +1 -0
  838. package/dist/v2/patterns/_useColumnReorder.js +264 -0
  839. package/dist/v2/patterns/_useColumnReorder.js.map +1 -0
  840. package/dist/v2/patterns/_useColumnResize.d.ts +49 -0
  841. package/dist/v2/patterns/_useColumnResize.d.ts.map +1 -0
  842. package/dist/v2/patterns/_useColumnResize.js +198 -0
  843. package/dist/v2/patterns/_useColumnResize.js.map +1 -0
  844. package/dist/v2/patterns/index.d.ts +89 -0
  845. package/dist/v2/patterns/index.d.ts.map +1 -0
  846. package/dist/v2/patterns/index.js +246 -0
  847. package/dist/v2/patterns/index.js.map +1 -0
  848. package/dist/v2/personalization/PersonalizationProvider.d.ts +80 -0
  849. package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -0
  850. package/dist/v2/personalization/PersonalizationProvider.js +177 -0
  851. package/dist/v2/personalization/PersonalizationProvider.js.map +1 -0
  852. package/dist/v2/personalization/adapters/_storageKey.d.ts +35 -0
  853. package/dist/v2/personalization/adapters/_storageKey.d.ts.map +1 -0
  854. package/dist/v2/personalization/adapters/_storageKey.js +69 -0
  855. package/dist/v2/personalization/adapters/_storageKey.js.map +1 -0
  856. package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts +31 -0
  857. package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts.map +1 -0
  858. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js +128 -0
  859. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -0
  860. package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts +25 -0
  861. package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts.map +1 -0
  862. package/dist/v2/personalization/adapters/createMemoryAdapter.js +76 -0
  863. package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -0
  864. package/dist/v2/personalization/adapters/index.d.ts +10 -0
  865. package/dist/v2/personalization/adapters/index.d.ts.map +1 -0
  866. package/dist/v2/personalization/adapters/index.js +21 -0
  867. package/dist/v2/personalization/adapters/index.js.map +1 -0
  868. package/dist/v2/personalization/capabilities/favorites.d.ts +53 -0
  869. package/dist/v2/personalization/capabilities/favorites.d.ts.map +1 -0
  870. package/dist/v2/personalization/capabilities/favorites.js +223 -0
  871. package/dist/v2/personalization/capabilities/favorites.js.map +1 -0
  872. package/dist/v2/personalization/capabilities/favoritesView.d.ts +58 -0
  873. package/dist/v2/personalization/capabilities/favoritesView.d.ts.map +1 -0
  874. package/dist/v2/personalization/capabilities/favoritesView.js +121 -0
  875. package/dist/v2/personalization/capabilities/favoritesView.js.map +1 -0
  876. package/dist/v2/personalization/capabilities/index.d.ts +16 -0
  877. package/dist/v2/personalization/capabilities/index.d.ts.map +1 -0
  878. package/dist/v2/personalization/capabilities/index.js +69 -0
  879. package/dist/v2/personalization/capabilities/index.js.map +1 -0
  880. package/dist/v2/personalization/capabilities/savedFilters.d.ts +61 -0
  881. package/dist/v2/personalization/capabilities/savedFilters.d.ts.map +1 -0
  882. package/dist/v2/personalization/capabilities/savedFilters.js +297 -0
  883. package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -0
  884. package/dist/v2/personalization/createPersonalizationStore.d.ts +76 -0
  885. package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -0
  886. package/dist/v2/personalization/createPersonalizationStore.js +475 -0
  887. package/dist/v2/personalization/createPersonalizationStore.js.map +1 -0
  888. package/dist/v2/personalization/index.d.ts +33 -0
  889. package/dist/v2/personalization/index.d.ts.map +1 -0
  890. package/dist/v2/personalization/index.js +111 -0
  891. package/dist/v2/personalization/index.js.map +1 -0
  892. package/dist/v2/personalization/personalizationContext.d.ts +78 -0
  893. package/dist/v2/personalization/personalizationContext.d.ts.map +1 -0
  894. package/dist/v2/personalization/personalizationContext.js +121 -0
  895. package/dist/v2/personalization/personalizationContext.js.map +1 -0
  896. package/dist/v2/personalization/schema.d.ts +60 -0
  897. package/dist/v2/personalization/schema.d.ts.map +1 -0
  898. package/dist/v2/personalization/schema.js +102 -0
  899. package/dist/v2/personalization/schema.js.map +1 -0
  900. package/dist/v2/personalization/types.d.ts +81 -0
  901. package/dist/v2/personalization/types.d.ts.map +1 -0
  902. package/dist/v2/personalization/types.js +6 -0
  903. package/dist/v2/personalization/types.js.map +1 -0
  904. package/dist/v2/referentiel/ReferentielProvider.d.ts +53 -0
  905. package/dist/v2/referentiel/ReferentielProvider.d.ts.map +1 -0
  906. package/dist/v2/referentiel/ReferentielProvider.js +94 -0
  907. package/dist/v2/referentiel/ReferentielProvider.js.map +1 -0
  908. package/dist/v2/referentiel/index.d.ts +18 -0
  909. package/dist/v2/referentiel/index.d.ts.map +1 -0
  910. package/dist/v2/referentiel/index.js +44 -0
  911. package/dist/v2/referentiel/index.js.map +1 -0
  912. package/dist/v2/referentiel/useReferentielClient.d.ts +15 -0
  913. package/dist/v2/referentiel/useReferentielClient.d.ts.map +1 -0
  914. package/dist/v2/referentiel/useReferentielClient.js +46 -0
  915. package/dist/v2/referentiel/useReferentielClient.js.map +1 -0
  916. package/dist/v2/referentiel/useReferentielOptions.d.ts +40 -0
  917. package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -0
  918. package/dist/v2/referentiel/useReferentielOptions.js +177 -0
  919. package/dist/v2/referentiel/useReferentielOptions.js.map +1 -0
  920. package/dist/v2/referentiel/useReferentielSearch.d.ts +76 -0
  921. package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -0
  922. package/dist/v2/referentiel/useReferentielSearch.js +140 -0
  923. package/dist/v2/referentiel/useReferentielSearch.js.map +1 -0
  924. package/dist/v2/styles/base.css +425 -0
  925. package/dist/v2/styles/css.d.ts +10 -0
  926. package/dist/v2/styles/index.d.ts +12 -0
  927. package/dist/v2/styles/index.d.ts.map +1 -0
  928. package/dist/v2/styles/index.js +4 -0
  929. package/dist/v2/styles/index.js.map +1 -0
  930. package/dist/v2/theme/_brand.d.ts +29 -0
  931. package/dist/v2/theme/_brand.d.ts.map +1 -0
  932. package/dist/v2/theme/_brand.js +69 -0
  933. package/dist/v2/theme/_brand.js.map +1 -0
  934. package/dist/v2/theme/_brandSecondary.d.ts +26 -0
  935. package/dist/v2/theme/_brandSecondary.d.ts.map +1 -0
  936. package/dist/v2/theme/_brandSecondary.js +65 -0
  937. package/dist/v2/theme/_brandSecondary.js.map +1 -0
  938. package/dist/v2/theme/createPortnetTheme.d.ts +75 -0
  939. package/dist/v2/theme/createPortnetTheme.d.ts.map +1 -0
  940. package/dist/v2/theme/createPortnetTheme.js +553 -0
  941. package/dist/v2/theme/createPortnetTheme.js.map +1 -0
  942. package/dist/v2/theme/cssVariables.d.ts +41 -0
  943. package/dist/v2/theme/cssVariables.d.ts.map +1 -0
  944. package/dist/v2/theme/cssVariables.js +205 -0
  945. package/dist/v2/theme/cssVariables.js.map +1 -0
  946. package/dist/v2/theme/index.d.ts +33 -0
  947. package/dist/v2/theme/index.d.ts.map +1 -0
  948. package/dist/v2/theme/index.js +60 -0
  949. package/dist/v2/theme/index.js.map +1 -0
  950. package/dist/v2/tokens/breakpoints.d.ts +74 -0
  951. package/dist/v2/tokens/breakpoints.d.ts.map +1 -0
  952. package/dist/v2/tokens/breakpoints.js +114 -0
  953. package/dist/v2/tokens/breakpoints.js.map +1 -0
  954. package/dist/v2/tokens/colors.d.ts +228 -0
  955. package/dist/v2/tokens/colors.d.ts.map +1 -0
  956. package/dist/v2/tokens/colors.js +225 -0
  957. package/dist/v2/tokens/colors.js.map +1 -0
  958. package/dist/v2/tokens/density.d.ts +142 -0
  959. package/dist/v2/tokens/density.d.ts.map +1 -0
  960. package/dist/v2/tokens/density.js +111 -0
  961. package/dist/v2/tokens/density.js.map +1 -0
  962. package/dist/v2/tokens/index.d.ts +556 -0
  963. package/dist/v2/tokens/index.d.ts.map +1 -0
  964. package/dist/v2/tokens/index.js +313 -0
  965. package/dist/v2/tokens/index.js.map +1 -0
  966. package/dist/v2/tokens/motion.d.ts +85 -0
  967. package/dist/v2/tokens/motion.d.ts.map +1 -0
  968. package/dist/v2/tokens/motion.js +94 -0
  969. package/dist/v2/tokens/motion.js.map +1 -0
  970. package/dist/v2/tokens/radius.d.ts +18 -0
  971. package/dist/v2/tokens/radius.d.ts.map +1 -0
  972. package/dist/v2/tokens/radius.js +28 -0
  973. package/dist/v2/tokens/radius.js.map +1 -0
  974. package/dist/v2/tokens/shadows.d.ts +25 -0
  975. package/dist/v2/tokens/shadows.d.ts.map +1 -0
  976. package/dist/v2/tokens/shadows.js +46 -0
  977. package/dist/v2/tokens/shadows.js.map +1 -0
  978. package/dist/v2/tokens/spacing.d.ts +38 -0
  979. package/dist/v2/tokens/spacing.d.ts.map +1 -0
  980. package/dist/v2/tokens/spacing.js +57 -0
  981. package/dist/v2/tokens/spacing.js.map +1 -0
  982. package/dist/v2/tokens/state.d.ts +40 -0
  983. package/dist/v2/tokens/state.d.ts.map +1 -0
  984. package/dist/v2/tokens/state.js +47 -0
  985. package/dist/v2/tokens/state.js.map +1 -0
  986. package/dist/v2/tokens/statusPalette.d.ts +54 -0
  987. package/dist/v2/tokens/statusPalette.d.ts.map +1 -0
  988. package/dist/v2/tokens/statusPalette.js +72 -0
  989. package/dist/v2/tokens/statusPalette.js.map +1 -0
  990. package/dist/v2/tokens/tokens.json +153 -0
  991. package/dist/v2/tokens/typography.d.ts +206 -0
  992. package/dist/v2/tokens/typography.d.ts.map +1 -0
  993. package/dist/v2/tokens/typography.js +155 -0
  994. package/dist/v2/tokens/typography.js.map +1 -0
  995. package/dist/v2/tokens/zIndex.d.ts +33 -0
  996. package/dist/v2/tokens/zIndex.d.ts.map +1 -0
  997. package/dist/v2/tokens/zIndex.js +50 -0
  998. package/dist/v2/tokens/zIndex.js.map +1 -0
  999. package/dist/v2/types/common.d.ts +24 -0
  1000. package/dist/v2/types/common.d.ts.map +1 -0
  1001. package/dist/v2/types/common.js +6 -0
  1002. package/dist/v2/types/common.js.map +1 -0
  1003. package/dist/v2/types/datagrid.d.ts +131 -0
  1004. package/dist/v2/types/datagrid.d.ts.map +1 -0
  1005. package/dist/v2/types/datagrid.js +6 -0
  1006. package/dist/v2/types/datagrid.js.map +1 -0
  1007. package/dist/v2/types/index.d.ts +11 -0
  1008. package/dist/v2/types/index.d.ts.map +1 -0
  1009. package/dist/v2/types/index.js +28 -0
  1010. package/dist/v2/types/index.js.map +1 -0
  1011. package/dist/v2/utils/apiError.d.ts +151 -0
  1012. package/dist/v2/utils/apiError.d.ts.map +1 -0
  1013. package/dist/v2/utils/apiError.js +290 -0
  1014. package/dist/v2/utils/apiError.js.map +1 -0
  1015. package/dist/v2/utils/contrast.d.ts +68 -0
  1016. package/dist/v2/utils/contrast.d.ts.map +1 -0
  1017. package/dist/v2/utils/contrast.js +167 -0
  1018. package/dist/v2/utils/contrast.js.map +1 -0
  1019. package/dist/v2/utils/cx.d.ts +9 -0
  1020. package/dist/v2/utils/cx.d.ts.map +1 -0
  1021. package/dist/v2/utils/cx.js +45 -0
  1022. package/dist/v2/utils/cx.js.map +1 -0
  1023. package/dist/v2/utils/fileDownload.d.ts +94 -0
  1024. package/dist/v2/utils/fileDownload.d.ts.map +1 -0
  1025. package/dist/v2/utils/fileDownload.js +236 -0
  1026. package/dist/v2/utils/fileDownload.js.map +1 -0
  1027. package/dist/v2/utils/fmtMoney.d.ts +28 -0
  1028. package/dist/v2/utils/fmtMoney.d.ts.map +1 -0
  1029. package/dist/v2/utils/fmtMoney.js +84 -0
  1030. package/dist/v2/utils/fmtMoney.js.map +1 -0
  1031. package/dist/v2/utils/index.d.ts +9 -0
  1032. package/dist/v2/utils/index.d.ts.map +1 -0
  1033. package/dist/v2/utils/index.js +97 -0
  1034. package/dist/v2/utils/index.js.map +1 -0
  1035. package/dist/v2/utils/mergeLabels.d.ts +59 -0
  1036. package/dist/v2/utils/mergeLabels.d.ts.map +1 -0
  1037. package/dist/v2/utils/mergeLabels.js +93 -0
  1038. package/dist/v2/utils/mergeLabels.js.map +1 -0
  1039. package/dist/v2/utils/networkStatus.d.ts +88 -0
  1040. package/dist/v2/utils/networkStatus.d.ts.map +1 -0
  1041. package/dist/v2/utils/networkStatus.js +121 -0
  1042. package/dist/v2/utils/networkStatus.js.map +1 -0
  1043. package/package.json +198 -76
  1044. package/dist/api/guideApi.js +0 -12
  1045. package/dist/api/guideImageService.js +0 -119
  1046. package/dist/api/reclamationApi.js +0 -119
  1047. package/dist/assets/guides/FAQ.json +0 -118
  1048. package/dist/assets/guides/index.js +0 -11
  1049. package/dist/assets/images/tijariaLogo.ico +0 -0
  1050. package/dist/components/buttons/PuiButton.js +0 -217
  1051. package/dist/components/buttons/PuiIconButton.js +0 -98
  1052. package/dist/components/common/PuiAlertContext.js +0 -12
  1053. package/dist/components/common/PuiHelpWidgetContext.js +0 -17
  1054. package/dist/components/common/StyledMuiButton.js +0 -48
  1055. package/dist/components/common/StyledMuiTextField.js +0 -180
  1056. package/dist/components/inputs/PuiAutocomplete.js +0 -352
  1057. package/dist/components/inputs/PuiCheckbox.js +0 -308
  1058. package/dist/components/inputs/PuiCheckboxGroup.js +0 -215
  1059. package/dist/components/inputs/PuiCheckboxItem.js +0 -162
  1060. package/dist/components/inputs/PuiDateField.js +0 -280
  1061. package/dist/components/inputs/PuiDateTimeField.js +0 -276
  1062. package/dist/components/inputs/PuiFileField.js +0 -265
  1063. package/dist/components/inputs/PuiRadioGroup.js +0 -197
  1064. package/dist/components/inputs/PuiRadioItem.js +0 -100
  1065. package/dist/components/inputs/PuiSelect.js +0 -427
  1066. package/dist/components/inputs/PuiTextField.js +0 -263
  1067. package/dist/components/others/PuiBadge.js +0 -58
  1068. package/dist/components/others/PuiChip.js +0 -150
  1069. package/dist/components/others/PuiDialog.js +0 -102
  1070. package/dist/components/others/PuiFormikForm.js +0 -70
  1071. package/dist/components/others/PuiGrid.js +0 -23
  1072. package/dist/components/others/PuiIcon.js +0 -92
  1073. package/dist/components/others/PuiLoadingBackdrop.js +0 -32
  1074. package/dist/components/others/PuiMainContainer.js +0 -41
  1075. package/dist/components/others/PuiNavigation.js +0 -68
  1076. package/dist/components/others/PuiSection.js +0 -187
  1077. package/dist/components/others/PuiTooltip.js +0 -86
  1078. package/dist/components/providers/PuiAlertProvider.js +0 -134
  1079. package/dist/components/providers/PuiHelpWidgetProvider.js +0 -91
  1080. package/dist/components/providers/PuiLocalizationProvider.js +0 -34
  1081. package/dist/components/referentiel/common/ReferetielContext.js +0 -12
  1082. package/dist/components/referentiel/common/constants/specificReferentielsApis.js +0 -22
  1083. package/dist/components/referentiel/common/constants/specificReferentielsBaseColumns.js +0 -691
  1084. package/dist/components/referentiel/common/constants/specificReferentielsBaseFilters.js +0 -598
  1085. package/dist/components/referentiel/common/constants/specificReferentielsInitialValues.js +0 -80
  1086. package/dist/components/referentiel/common/constants/specificReferentielsKeys.js +0 -18
  1087. package/dist/components/referentiel/common/constants/specificReferentielsTitles.js +0 -22
  1088. package/dist/components/referentiel/common/constants/specificReferentielsValidationSchemas.js +0 -85
  1089. package/dist/components/referentiel/components/PuiBasePopupReferentielField.js +0 -356
  1090. package/dist/components/referentiel/components/PuiCustomPopupReferentielField.js +0 -181
  1091. package/dist/components/referentiel/components/PuiSimplePopupReferentielField.js +0 -325
  1092. package/dist/components/referentiel/components/PuiSimpleReferentielField.js +0 -203
  1093. package/dist/components/referentiel/components/PuiSpecificReferentielField.js +0 -352
  1094. package/dist/components/referentiel/providers/PuiReferentielProvider.js +0 -66
  1095. package/dist/components/tab/PuiTab.js +0 -25
  1096. package/dist/components/tab/PuiTabs.js +0 -148
  1097. package/dist/components/table/PuiTable.js +0 -643
  1098. package/dist/components/table/PuiTableAction.js +0 -75
  1099. package/dist/components/typography/PuiDefinition.js +0 -42
  1100. package/dist/components/typography/PuiIndication.js +0 -80
  1101. package/dist/components/typography/PuiMainTitle.js +0 -144
  1102. package/dist/components/ui/dialogs/PuiSearchDialog.js +0 -106
  1103. package/dist/components/ui/pages/errors/PuiErrorBasePage.js +0 -73
  1104. package/dist/components/ui/pages/errors/PuiForbiddenErrorPage.js +0 -36
  1105. package/dist/components/ui/pages/errors/PuiNetworkErrorPage.js +0 -36
  1106. package/dist/components/ui/pages/errors/PuiNotFoundErrorPage.js +0 -30
  1107. package/dist/components/ui/pages/errors/PuiServerErrorPage.js +0 -37
  1108. package/dist/components/ui/pages/general/PuiDefaultPage.js +0 -68
  1109. package/dist/components/ui/pages/general/PuiSearchPage.js +0 -203
  1110. package/dist/components/widgets/GuideImage.js +0 -251
  1111. package/dist/components/widgets/PuiHelpWidget.js +0 -4276
  1112. package/dist/config/apperance.js +0 -26
  1113. package/dist/config/mapping.js +0 -26
  1114. package/dist/config/referentiel.js +0 -10
  1115. package/dist/general/yupValidationErrors.js +0 -8
  1116. package/dist/hooks/useAlert.js +0 -19
  1117. package/dist/hooks/useAxios.js +0 -23
  1118. package/dist/hooks/useQuery.js +0 -21
  1119. package/dist/hooks/useReclamation.js +0 -116
  1120. package/dist/styles/ReclamationFormModal.css +0 -629
  1121. package/dist/styles/help-widget.css +0 -621
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionBar.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_Typography","_IconButton","_ArrowBack","_ChevronRight","_Home","_useMediaQuery","_styles","_Button","_OverflowMenu","_tokens","_mergeLabels","_jsxRuntime","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","propertyIsEnumerable","sourceKeys","keys","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","F","s","n","done","value","e","_e2","f","TypeError","normalCompletion","didErr","err","step","next","_e3","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","iter","from","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","slice","constructor","name","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","push","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","DEFAULT_LABELS","freeze","back","breadcrumb","home","expandCrumbs","CRUMB_LINK_BASE_SX","display","alignItems","gap","textDecoration","cursor","borderRadius","padding","margin","background","outline","outlineOffset","CRUMB_ELLIPSIS_SX","border","font","fontSize","lineHeight","isStructuredCrumb","entry","isValidElement","getCrumbColor","isLast","useAccent","renderCrumbContent","baseColor","baseFontWeight","jsx","component","sx","color","fontWeight","children","label","icon","onClick","href","ariaLabel","computedAria","jsxs","type","ActionBar","_ref","title","subtitle","primary","_ref$secondary","secondary","_ref$overflow","overflow","_ref$maxVisible","maxVisible","meta","_ref$sticky","sticky","_ref$surface","surface","_ref$collapseAfter","collapseAfter","labels","L","mergeLabels","theme","useTheme","isMobile","useMediaQuery","breakpoints","down","_React$useState","useState","_React$useState2","crumbsExpanded","setCrumbsExpanded","effectiveBreadcrumb","useMemo","base","homeItem","concat","shouldCollapse","Math","max","orderedAll","list","_slot","_iterator","_step","_iterator2","_step2","visibleActions","hiddenActions","visiblePrimary","a","visibleOthers","hasNavRow","accentOrFgMuted","accentOrFg","resolveVariant","action","variant","renderButton","actionIcon","iconRight","disabled","loading","_variant","rest","size","lastCrumbIndex","chevron","transform","renderCrumbItems","map","b","first","last","borderBottom","xs","sm","lg","position","top","zIndex","marginBottom","minWidth","listStyle","flexWrap","justifyContent","flex","whiteSpace","textOverflow","width","flexShrink","actions","_ref2","WebkitBoxOrient","WebkitLineClamp","marginTop","_default","exports"],"sources":["../../../src/lib/v2/patterns/ActionBar.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport Typography from \"@mui/material/Typography\";\r\nimport IconButton from \"@mui/material/IconButton\";\r\nimport ArrowBackIcon from \"@mui/icons-material/ArrowBack\";\r\nimport ChevronRightIcon from \"@mui/icons-material/ChevronRight\";\r\nimport HomeIcon from \"@mui/icons-material/Home\";\r\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\r\nimport { useTheme } from \"@mui/material/styles\";\r\nimport Button from \"../components/Button\";\r\nimport type { ButtonProps } from \"../components/Button\";\r\nimport OverflowMenu from \"../components/OverflowMenu\";\r\nimport { zIndex } from \"../tokens\";\r\nimport { mergeLabels } from \"../utils/mergeLabels\";\r\n\r\n/**\r\n * ActionBar - Portnet UI v2 (pattern)\r\n *\r\n * Charter §07 — render order (left → right):\r\n *\r\n * [ghost/secondary…] [primary] […overflow]\r\n *\r\n * Slot-based variant resolution:\r\n * slot=\"primary\" → Button variant=\"primary\"\r\n * slot=\"secondary\" → Button variant={action.variant || \"secondary\"}\r\n * slot=\"overflow\" → Button variant={action.variant || \"ghost\"}\r\n *\r\n * maxVisible (default 2):\r\n * orderedAll = [primary, ...secondary, ...overflow]\r\n * first maxVisible → visible buttons / rest → \"…\"\r\n *\r\n * Breadcrumb collapse (R-RS.5):\r\n * Below the `sm` breakpoint TOKEN (< 481px) a long trail used to\r\n * flex-wrap onto several lines, pushing the page title down. When the\r\n * trail has more than `collapseAfter` crumbs (default 3) the middle is\r\n * collapsed to a single \"…\" toggle that shows [first] › … › [last];\r\n * pressing it expands the full trail in place. Desktop always renders\r\n * the full trail. Keeps the nav to one line on phones (WCAG 1.4.10\r\n * Reflow) without hiding navigation from AT — the toggle is a real\r\n * button with an accessible name.\r\n *\r\n * ── `surface` DEFAULTS TO false — A PAGE HEADER IS NOT A CARD ────────\r\n *\r\n * The platform rule is that a page header sits on the page background, never\r\n * on a white card. This default used to be `true`, which meant every call site\r\n * that did not opt out rendered a --surface card with a bottom border — making\r\n * the exception the norm across the GU modules.\r\n *\r\n * Note that `surface` drives TWO things, because `useAccent` is derived from\r\n * it: the background/border AND the colour of the title, icon, back-arrow and\r\n * crumb trail (--accent when non-surface, --fg / --fg-subtle when surfaced).\r\n * They are deliberately coupled — an accent title on a white card reads as a\r\n * link, and a near-black title on the page background loses the visual anchor\r\n * the header needs. Decoupling them would need a separate prop and a design\r\n * decision, not a default change.\r\n *\r\n * Pass surface={true} to opt back in to the card treatment where a header is\r\n * genuinely nested inside a panel rather than heading a page.\r\n *\r\n * ── Subtitle visibility (S-01) ───────────────────────────────────────\r\n *\r\n * The subtitle renders at EVERY breakpoint. It used to be hidden below the `sm`\r\n * token via `display: none`, which made every consuming module fail the\r\n * mandatory \"Never omit subtitles\" pattern on phones — and removed the text from\r\n * the accessibility tree, not just from the layout. On `xs` it is now bounded to\r\n * two lines with a line-clamp instead; `sm` and above are unchanged. See the\r\n * inline note at the render site for the full rationale.\r\n */\r\n\r\n/** Variant union, derived from Button (single source of truth). */\r\ntype ActionVariant = NonNullable<ButtonProps[\"variant\"]>;\r\n\r\n/** Structured breadcrumb entry (as opposed to a plain renderable node). */\r\nexport interface BreadcrumbItem {\r\n label?: React.ReactNode | undefined;\r\n icon?: React.ReactNode | undefined;\r\n onClick?: (() => void) | undefined;\r\n href?: string | undefined;\r\n ariaLabel?: string | undefined;\r\n}\r\n\r\n/** A breadcrumb entry is either a plain node or a structured item. */\r\nexport type CrumbEntry = React.ReactNode | BreadcrumbItem;\r\n\r\n/** Action descriptor for primary / secondary / overflow slots. */\r\nexport interface ActionBarAction {\r\n label?: React.ReactNode | undefined;\r\n icon?: React.ReactNode | undefined;\r\n iconRight?: React.ReactNode | undefined;\r\n onClick?: (() => void) | undefined;\r\n disabled?: boolean | undefined;\r\n loading?: boolean | undefined;\r\n variant?: ActionVariant | undefined;\r\n /** Overflow-only (surfaced when the action falls into the OverflowMenu). */\r\n shortcut?: React.ReactNode | undefined;\r\n danger?: boolean | undefined;\r\n divider?: boolean | undefined;\r\n /**\r\n * ARIA attributes, forwarded verbatim to the rendered `<Button>`.\r\n *\r\n * `renderButton` destructures the known fields above and spreads the\r\n * REMAINDER onto the Button (`{...rest}`), so any `aria-*` key a host supplies\r\n * already reaches the DOM at runtime. This pattern index signature declares\r\n * that contract, which was previously implemented but undeclared — forcing\r\n * strict-mode consumers to either drop the attribute (losing the behaviour) or\r\n * assert their way past the type.\r\n *\r\n * Primary use case: `aria-keyshortcuts` on a page's create CTA, so screen\r\n * reader users discover a keyboard shortcut on focus (WCAG 2.1.4).\r\n */\r\n [ariaAttribute: `aria-${string}`]: string | undefined;\r\n}\r\n\r\ntype SlotName = \"primary\" | \"secondary\" | \"overflow\";\r\ntype SlottedAction = ActionBarAction & { _slot: SlotName };\r\n\r\nexport interface ActionBarLabels {\r\n back?: string | undefined;\r\n breadcrumb?: string | undefined;\r\n home?: string | undefined;\r\n expandCrumbs?: string | undefined;\r\n}\r\n\r\nexport interface ActionBarProps {\r\n /** Home crumb: a callback (onClick) or an href string. */\r\n home?: string | (() => void) | undefined;\r\n /** Back-arrow callback (top-bar). */\r\n back?: (() => void) | undefined;\r\n breadcrumb?: CrumbEntry[] | undefined;\r\n title: React.ReactNode;\r\n subtitle?: React.ReactNode | undefined;\r\n icon?: React.ReactNode | undefined;\r\n primary?: ActionBarAction | undefined;\r\n secondary?: ActionBarAction[] | undefined;\r\n overflow?: ActionBarAction[] | undefined;\r\n /** Number of actions shown before the rest collapse into the menu. @default 2 */\r\n maxVisible?: number | undefined;\r\n meta?: React.ReactNode | undefined;\r\n sticky?: boolean | undefined;\r\n /**\r\n * Render the header as a raised white card instead of on the page\r\n * background.\r\n *\r\n * @default false — a page header sits on the background (platform rule).\r\n *\r\n * Also governs text colour: when false, the title, icon, back-arrow and\r\n * crumbs render in --accent; when true they render in --fg / --fg-subtle.\r\n * See the note in the module docstring for why the two are coupled.\r\n *\r\n * Pass true only where the header genuinely heads a panel rather than a page.\r\n */\r\n surface?: boolean | undefined;\r\n /** Collapse the breadcrumb middle on mobile past this many crumbs. @default 3 */\r\n collapseAfter?: number | undefined;\r\n labels?: ActionBarLabels | undefined;\r\n}\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n back: \"Retour\",\r\n breadcrumb: \"Fil d'Ariane\",\r\n home: \"Accueil\",\r\n expandCrumbs: \"Afficher le chemin complet\",\r\n});\r\n\r\nconst CRUMB_LINK_BASE_SX = Object.freeze({\r\n display: \"inline-flex\",\r\n alignItems: \"center\",\r\n gap: \"var(--s-1)\",\r\n textDecoration: \"none\",\r\n cursor: \"pointer\",\r\n borderRadius: \"var(--r-sm)\",\r\n padding: \"2px 4px\",\r\n margin: \"-2px -4px\",\r\n \"&:hover\": { background: \"var(--bg-hover)\" },\r\n \"&:focus-visible\": { outline: \"2px solid var(--accent)\", outlineOffset: \"var(--pui-outline-offset-inset, 0)\" },\r\n});\r\n\r\nconst CRUMB_ELLIPSIS_SX = Object.freeze({\r\n ...CRUMB_LINK_BASE_SX,\r\n background: \"none\",\r\n border: \"none\",\r\n font: \"inherit\",\r\n fontSize: \"var(--text-xs)\",\r\n lineHeight: 1,\r\n});\r\n\r\nfunction isStructuredCrumb(entry: CrumbEntry): entry is BreadcrumbItem {\r\n return entry != null && typeof entry === \"object\" && !React.isValidElement(entry);\r\n}\r\n\r\nfunction getCrumbColor(isLast: boolean, useAccent: boolean): string {\r\n if (useAccent) return \"var(--accent)\";\r\n return isLast ? \"var(--fg)\" : \"var(--fg-subtle)\";\r\n}\r\n\r\nfunction renderCrumbContent(entry: CrumbEntry, isLast: boolean, useAccent: boolean) {\r\n const baseColor = getCrumbColor(isLast, useAccent);\r\n const baseFontWeight = isLast ? \"var(--fw-semibold)\" : \"var(--fw-regular)\";\r\n\r\n if (!isStructuredCrumb(entry)) {\r\n return (\r\n <Box component=\"span\" aria-current={isLast ? \"page\" : undefined}\r\n sx={{ color: baseColor, fontWeight: baseFontWeight }}>\r\n {entry}\r\n </Box>\r\n );\r\n }\r\n\r\n const { label, icon, onClick, href, ariaLabel } = entry;\r\n const computedAria = ariaLabel || (typeof label === \"string\" ? label : undefined);\r\n\r\n if (isLast) {\r\n return (\r\n <Box component=\"span\" aria-current=\"page\"\r\n sx={{ color: baseColor, fontWeight: baseFontWeight, display: \"inline-flex\", alignItems: \"center\", gap: \"var(--s-1)\" }}>\r\n {icon}{label}\r\n </Box>\r\n );\r\n }\r\n\r\n if (href) {\r\n return (\r\n <Box component=\"a\" href={href} onClick={onClick} aria-label={computedAria}\r\n sx={{ ...CRUMB_LINK_BASE_SX, color: baseColor }}>\r\n {icon}{label}\r\n </Box>\r\n );\r\n }\r\n\r\n if (onClick) {\r\n return (\r\n <Box component=\"button\" type=\"button\" onClick={onClick} aria-label={computedAria}\r\n sx={{ ...CRUMB_LINK_BASE_SX, color: baseColor, background: \"none\", border: \"none\", font: \"inherit\", fontSize: \"var(--text-xs)\" }}>\r\n {icon}{label}\r\n </Box>\r\n );\r\n }\r\n\r\n return (\r\n <Box component=\"span\"\r\n sx={{ color: baseColor, fontWeight: baseFontWeight, display: \"inline-flex\", alignItems: \"center\", gap: \"var(--s-1)\" }}>\r\n {icon}{label}\r\n </Box>\r\n );\r\n}\r\n\r\nfunction ActionBar({\r\n home,\r\n back,\r\n breadcrumb,\r\n title,\r\n subtitle,\r\n icon,\r\n primary,\r\n secondary = [],\r\n overflow = [],\r\n maxVisible = 2,\r\n meta,\r\n sticky = true,\r\n /*\r\n * DEFAULT FLIPPED TO false. A page header sits on the page background, never\r\n * on a white card — see the note in the module docstring. Opt back in with\r\n * surface={true} for a header that heads a panel rather than a page.\r\n */\r\n surface = false,\r\n collapseAfter = 3,\r\n labels,\r\n}: ActionBarProps) {\r\n const L = mergeLabels(DEFAULT_LABELS, labels);\r\n\r\n // R-RS.5 — collapse the middle of a long breadcrumb on mobile (< sm\r\n // token, 481px). Reads the live theme so a host breakpoint override is\r\n // honoured. `crumbsExpanded` lets the user reveal the full trail in place.\r\n const theme = useTheme();\r\n const isMobile = useMediaQuery(theme.breakpoints.down(\"sm\"));\r\n const [crumbsExpanded, setCrumbsExpanded] = React.useState(false);\r\n\r\n const effectiveBreadcrumb = React.useMemo<CrumbEntry[]>(() => {\r\n const base = breadcrumb || [];\r\n if (!home) return base;\r\n const homeItem: BreadcrumbItem = {\r\n icon: <HomeIcon fontSize=\"small\" />,\r\n ariaLabel: L.home,\r\n ...(typeof home === \"function\" ? { onClick: home } : { href: home }),\r\n };\r\n return [homeItem, ...base];\r\n }, [home, breadcrumb, L.home]); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n // Decide whether to collapse: only on mobile, only when the trail is\r\n // longer than collapseAfter, and only while not user-expanded.\r\n const shouldCollapse =\r\n isMobile &&\r\n !crumbsExpanded &&\r\n effectiveBreadcrumb.length > Math.max(2, collapseAfter);\r\n\r\n const orderedAll = React.useMemo<SlottedAction[]>(() => {\r\n const list: SlottedAction[] = [];\r\n if (primary) list.push({ ...primary, _slot: \"primary\" });\r\n for (const s of (secondary || [])) list.push({ ...s, _slot: \"secondary\" });\r\n for (const o of (overflow || [])) list.push({ ...o, _slot: \"overflow\" });\r\n return list;\r\n }, [primary, secondary, overflow]);\r\n\r\n const visibleActions = orderedAll.slice(0, maxVisible);\r\n const hiddenActions = orderedAll.slice(maxVisible);\r\n\r\n const visiblePrimary = visibleActions.filter((a) => a._slot === \"primary\");\r\n const visibleOthers = visibleActions.filter((a) => a._slot !== \"primary\");\r\n\r\n const hasNavRow = !!(back || effectiveBreadcrumb.length > 0);\r\n const useAccent = !surface;\r\n const accentOrFgMuted = useAccent ? \"var(--accent)\" : \"var(--fg-muted)\";\r\n const accentOrFg = useAccent ? \"var(--accent)\" : \"var(--fg)\";\r\n\r\n function resolveVariant(action: SlottedAction): ActionVariant {\r\n if (action._slot === \"primary\") return \"primary\";\r\n if (action._slot === \"overflow\") return action.variant || \"ghost\";\r\n return action.variant || \"secondary\";\r\n }\r\n\r\n function renderButton(action: SlottedAction, i: React.Key) {\r\n const { _slot, label, icon: actionIcon, iconRight, onClick, disabled, loading, variant: _variant, ...rest } = action;\r\n return (\r\n <Button key={i} variant={resolveVariant(action)} size=\"sm\"\r\n icon={actionIcon} iconRight={iconRight}\r\n onClick={onClick} disabled={disabled} {...rest}\r\n {...(loading !== undefined ? { loading } : {})}>\r\n {label}\r\n </Button>\r\n );\r\n }\r\n\r\n const lastCrumbIndex = effectiveBreadcrumb.length - 1;\r\n const chevron = (\r\n <ChevronRightIcon aria-hidden=\"true\"\r\n sx={{ fontSize: \"var(--text-xs)\", color: useAccent ? \"var(--accent)\" : \"var(--fg-subtle)\", transform: \"scaleX(var(--pui-rtl-flip, 1))\" }} />\r\n );\r\n\r\n /* Render either the full trail or the collapsed [first] › … › [last].\r\n * Each branch returns an array of <li> rows so the <ol> stays valid. */\r\n function renderCrumbItems() {\r\n if (!shouldCollapse) {\r\n return effectiveBreadcrumb.map((b, i) => {\r\n const isLast = i === lastCrumbIndex;\r\n return (\r\n <Box component=\"li\" key={i} sx={{ display: \"inline-flex\", alignItems: \"center\", gap: 0.5 }}>\r\n {renderCrumbContent(b, isLast, useAccent)}\r\n {!isLast && chevron}\r\n </Box>\r\n );\r\n });\r\n }\r\n\r\n // Collapsed: first crumb, an expand toggle, then the last crumb.\r\n const first = effectiveBreadcrumb[0];\r\n const last = effectiveBreadcrumb[lastCrumbIndex];\r\n return [\r\n <Box component=\"li\" key=\"first\" sx={{ display: \"inline-flex\", alignItems: \"center\", gap: 0.5 }}>\r\n {renderCrumbContent(first, false, useAccent)}\r\n {chevron}\r\n </Box>,\r\n <Box component=\"li\" key=\"ellipsis\" sx={{ display: \"inline-flex\", alignItems: \"center\", gap: 0.5 }}>\r\n <Box component=\"button\" type=\"button\"\r\n onClick={() => setCrumbsExpanded(true)}\r\n aria-label={L.expandCrumbs} aria-expanded=\"false\"\r\n sx={{ ...CRUMB_ELLIPSIS_SX, color: useAccent ? \"var(--accent)\" : \"var(--fg-subtle)\" }}>\r\n …\r\n </Box>\r\n {chevron}\r\n </Box>,\r\n <Box component=\"li\" key=\"last\" sx={{ display: \"inline-flex\", alignItems: \"center\", gap: 0.5 }}>\r\n {renderCrumbContent(last, true, useAccent)}\r\n </Box>,\r\n ];\r\n }\r\n\r\n return (\r\n <Box\r\n sx={{\r\n background: surface ? \"var(--surface)\" : \"var(--bg)\",\r\n borderBottom: surface ? \"1px solid var(--border)\" : \"none\",\r\n padding: { xs: \"var(--s-3)\", sm: \"var(--s-3) var(--s-4)\", lg: \"var(--s-3) var(--s-6)\" },\r\n position: sticky ? \"sticky\" : \"static\",\r\n top: 0,\r\n zIndex: zIndex.sticky,\r\n }}\r\n >\r\n {/* Breadcrumb / back row */}\r\n {hasNavRow && (\r\n <Box sx={{ display: \"flex\", alignItems: \"center\", gap: 1, marginBottom: 1 }}>\r\n {back && (\r\n <IconButton size=\"small\" onClick={back} aria-label={L.back}\r\n sx={{ color: accentOrFgMuted, \"& svg\": { transform: \"scaleX(var(--pui-rtl-flip, 1))\" } }}>\r\n <ArrowBackIcon fontSize=\"small\" />\r\n </IconButton>\r\n )}\r\n {effectiveBreadcrumb.length > 0 && (\r\n <Box component=\"nav\" aria-label={L.breadcrumb} sx={{ minWidth: 0 }}>\r\n <Box component=\"ol\"\r\n sx={{ listStyle: \"none\", margin: 0, padding: 0, display: \"flex\", alignItems: \"center\", flexWrap: { xs: \"nowrap\", sm: \"wrap\" }, gap: 0.5, fontSize: \"var(--text-xs)\", color: useAccent ? \"var(--accent)\" : \"var(--fg-subtle)\", minWidth: 0 }}>\r\n {renderCrumbItems()}\r\n </Box>\r\n </Box>\r\n )}\r\n </Box>\r\n )}\r\n\r\n {/* Main row */}\r\n <Box sx={{ display: \"flex\", alignItems: { xs: \"flex-start\", sm: \"center\" }, justifyContent: \"space-between\", flexWrap: { xs: \"wrap\", sm: \"nowrap\" }, gap: { xs: \"var(--s-2)\", sm: 2 } }}>\r\n <Box sx={{ minWidth: 0, flex: 1, display: \"flex\", alignItems: \"center\", gap: 1, color: accentOrFg, \"& svg\": { color: \"inherit\" } }}>\r\n {icon}\r\n <Typography component=\"h1\"\r\n sx={{ fontSize: { xs: 18, sm: 22 }, fontWeight: \"var(--fw-bold)\", color: accentOrFg, lineHeight: \"var(--lh-tight)\", whiteSpace: { xs: \"normal\", sm: \"nowrap\" }, overflow: { xs: \"visible\", sm: \"hidden\" }, textOverflow: { xs: \"clip\", sm: \"ellipsis\" } }}>\r\n {title}\r\n </Typography>\r\n {meta}\r\n </Box>\r\n\r\n {/* Actions: [secondary/ghost] [primary] [...] */}\r\n <Box sx={{ display: \"flex\", alignItems: \"center\", gap: 1, width: { xs: \"100%\", sm: \"auto\" }, justifyContent: { xs: \"flex-end\", sm: \"flex-start\" }, flexShrink: 0 }}>\r\n {visibleOthers.map((action, i) => renderButton(action, i))}\r\n {visiblePrimary.map((action, i) => renderButton(action, `p${i}`))}\r\n {hiddenActions.length > 0 && (\r\n <OverflowMenu actions={hiddenActions.map(({ _slot: _s, ...a }) => a)} />\r\n )}\r\n </Box>\r\n </Box>\r\n\r\n {subtitle && (\r\n <Typography\r\n sx={{\r\n /* ── S-01 — THE SUBTITLE IS RENDERED AT EVERY BREAKPOINT ──────────\r\n *\r\n * This was `display: { xs: \"none\", sm: \"block\" }`, which removed the\r\n * subtitle below the sm token (481 px) from the layout AND from the\r\n * accessibility tree. On a 320-414 px viewport it did not exist for\r\n * any user, sighted or not.\r\n *\r\n * That conflicted with three normative rules at once:\r\n * - Platform Mandatory UX Patterns / Page Subtitle: \"Mandatory.\r\n * Every page must contain a meaningful subtitle describing the\r\n * purpose of the page. NEVER OMIT SUBTITLES.\"\r\n * - the same document lists `missing subtitle` under Forbidden\r\n * Practices, i.e. a certification failure;\r\n * - Responsive Pattern mandates support from 320 px, so `xs` is the\r\n * primary mobile range, not an edge case.\r\n *\r\n * Charter 7.1 bis also puts \"Page title (H1) + subtitle + CTA\" in the\r\n * canonical vertical order, with no breakpoint exemption.\r\n *\r\n * The original motivation was presumably vertical space on phones.\r\n * That concern is met by BOUNDING the height instead of deleting the\r\n * content -- two lines, mirroring the EmptyState rule already in this\r\n * library (\"description <= 2 lignes\"). Clamped text stays in the\r\n * accessibility tree, so screen-reader users get the full string.\r\n *\r\n * SCOPED TO xs ON PURPOSE. At sm and above `display: block` makes\r\n * line-clamp inert, so the rendering is byte-identical to before this\r\n * fix. Clamping desktop too would be a NEW restriction on existing\r\n * behaviour and could truncate a long subtitle that a module renders\r\n * over three lines today. Zero regression surface for the ~150\r\n * services consuming this component.\r\n *\r\n * Raised from procuration-portnet-fe (Batch 3), fixed here rather\r\n * than worked around locally: a module-side subtitle would duplicate\r\n * a shared component's responsibility (R-2.1 / R-AI.2) and would need\r\n * local breakpoint logic to avoid doubling at >= sm.\r\n * ──────────────────────────────────────────────────────────────── */\r\n display: { xs: \"-webkit-box\", sm: \"block\" },\r\n WebkitBoxOrient: \"vertical\",\r\n WebkitLineClamp: 2,\r\n overflow: { xs: \"hidden\", sm: \"visible\" },\r\n fontSize: \"var(--text-sm)\",\r\n color: \"var(--fg-muted)\",\r\n marginTop: 0.5,\r\n }}\r\n >\r\n {subtitle}\r\n </Typography>\r\n )}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default ActionBar;\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,63 @@
1
+ import * as React from "react";
2
+ import type { ButtonProps } from "../components/Button";
3
+ /**
4
+ * BulkActionBar - Portnet UI v2 (pattern)
5
+ *
6
+ * Charter R-DG.8 - sélection multiple → bulk bar sticky bottom-center.
7
+ * Affiche le compteur d'éléments sélectionnés + boutons d'actions + désélection.
8
+ *
9
+ * <BulkActionBar
10
+ * count={selected.size}
11
+ * onClear={() => setSelected(new Set())}
12
+ * actions={[
13
+ * { label: "Exporter", icon: <DownloadIcon />, onClick: exportSel },
14
+ * { label: "Archiver", icon: <ArchiveIcon />, onClick: archiveSel },
15
+ * { label: "Supprimer", icon: <DeleteIcon />, onClick: deleteSel, variant: "danger" },
16
+ * ]}
17
+ * />
18
+ *
19
+ * Localisation (FR / EN / AR):
20
+ * <BulkActionBar labels={{
21
+ * selection: (n) => `${n} item${n === 1 ? "" : "s"} selected`,
22
+ * toolbarAria: "Bulk actions",
23
+ * clear: "Clear selection",
24
+ * }} ... />
25
+ *
26
+ * `selection` is a function so consumers can plug in proper plural
27
+ * rules (Intl.PluralRules, ICU MessageFormat, i18next, …).
28
+ *
29
+ * A11y note (R-A.1):
30
+ * The selection count is rendered inside a polite live region so that
31
+ * updates ("3 éléments sélectionnés" → "5 éléments sélectionnés") are
32
+ * announced to screen-reader users without stealing focus.
33
+ *
34
+ * Responsive note (R-RS / WCAG 1.4.10):
35
+ * The bar is centre-anchored (left:50% / translateX(-50%)). Without a
36
+ * width cap a long action set would push its ends off both screen
37
+ * edges on a phone. maxWidth caps it to the viewport and flexWrap lets
38
+ * surplus actions wrap to a second centred row instead of overflowing.
39
+ */
40
+ export interface BulkAction {
41
+ label: React.ReactNode;
42
+ onClick?: (() => void) | undefined;
43
+ icon?: React.ReactElement | undefined;
44
+ variant?: ButtonProps["variant"] | undefined;
45
+ disabled?: boolean | undefined;
46
+ }
47
+ export interface BulkActionBarLabels {
48
+ selection?: ((n: number) => React.ReactNode) | undefined;
49
+ toolbarAria?: string | undefined;
50
+ clear?: React.ReactNode | undefined;
51
+ }
52
+ export interface BulkActionBarProps {
53
+ count?: number | undefined;
54
+ onClear?: (() => void) | undefined;
55
+ actions?: BulkAction[] | undefined;
56
+ /** Legacy prop: a pre-formatted node override of the count text.
57
+ * Wins over labels.selection when both are passed. */
58
+ label?: React.ReactNode | undefined;
59
+ labels?: BulkActionBarLabels | undefined;
60
+ }
61
+ declare function BulkActionBar({ count, onClear, actions, label, labels }: BulkActionBarProps): React.JSX.Element | null;
62
+ export default BulkActionBar;
63
+ //# sourceMappingURL=BulkActionBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BulkActionBar.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/BulkActionBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACnC,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC;IACtC,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IACzD,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACnC,OAAO,CAAC,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACnC;2DACuD;IACvD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACpC,MAAM,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAC1C;AAQD,iBAAS,aAAa,CAAC,EAAE,KAAS,EAAE,OAAO,EAAE,OAAY,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,kBAAkB,4BA+F7F;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _Box = _interopRequireDefault(require("@mui/material/Box"));
9
+ var _Button = _interopRequireDefault(require("../components/Button"));
10
+ var _mergeLabels = require("../utils/mergeLabels");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
+ 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); }
16
+ 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; }
17
+ 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; }
18
+ 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; }
19
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
20
+ 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); } /**
21
+ * BulkActionBar - Portnet UI v2 (pattern)
22
+ *
23
+ * Charter R-DG.8 - sélection multiple → bulk bar sticky bottom-center.
24
+ * Affiche le compteur d'éléments sélectionnés + boutons d'actions + désélection.
25
+ *
26
+ * <BulkActionBar
27
+ * count={selected.size}
28
+ * onClear={() => setSelected(new Set())}
29
+ * actions={[
30
+ * { label: "Exporter", icon: <DownloadIcon />, onClick: exportSel },
31
+ * { label: "Archiver", icon: <ArchiveIcon />, onClick: archiveSel },
32
+ * { label: "Supprimer", icon: <DeleteIcon />, onClick: deleteSel, variant: "danger" },
33
+ * ]}
34
+ * />
35
+ *
36
+ * Localisation (FR / EN / AR):
37
+ * <BulkActionBar labels={{
38
+ * selection: (n) => `${n} item${n === 1 ? "" : "s"} selected`,
39
+ * toolbarAria: "Bulk actions",
40
+ * clear: "Clear selection",
41
+ * }} ... />
42
+ *
43
+ * `selection` is a function so consumers can plug in proper plural
44
+ * rules (Intl.PluralRules, ICU MessageFormat, i18next, …).
45
+ *
46
+ * A11y note (R-A.1):
47
+ * The selection count is rendered inside a polite live region so that
48
+ * updates ("3 éléments sélectionnés" → "5 éléments sélectionnés") are
49
+ * announced to screen-reader users without stealing focus.
50
+ *
51
+ * Responsive note (R-RS / WCAG 1.4.10):
52
+ * The bar is centre-anchored (left:50% / translateX(-50%)). Without a
53
+ * width cap a long action set would push its ends off both screen
54
+ * edges on a phone. maxWidth caps it to the viewport and flexWrap lets
55
+ * surplus actions wrap to a second centred row instead of overflowing.
56
+ */
57
+ var DEFAULT_LABELS = Object.freeze({
58
+ selection: function selection(n) {
59
+ return "".concat(n, " \xE9l\xE9ment").concat(n > 1 ? "s" : "", " s\xE9lectionn\xE9").concat(n > 1 ? "s" : "");
60
+ },
61
+ toolbarAria: "Actions sur la sélection",
62
+ clear: "Désélectionner"
63
+ });
64
+ function BulkActionBar(_ref) {
65
+ var _ref$count = _ref.count,
66
+ count = _ref$count === void 0 ? 0 : _ref$count,
67
+ onClear = _ref.onClear,
68
+ _ref$actions = _ref.actions,
69
+ actions = _ref$actions === void 0 ? [] : _ref$actions,
70
+ label = _ref.label,
71
+ labels = _ref.labels;
72
+ if (count <= 0) return null;
73
+ var L = (0, _mergeLabels.mergeLabels)(DEFAULT_LABELS, labels);
74
+ // Legacy `label` prop wins over labels.selection for back-compat.
75
+ var text = label != null ? label : L.selection(count);
76
+
77
+ // R-AI.1 - currentColor-derived overlays so hover & divider auto-adapt
78
+ // to the bar's fg-inverse value (was hard-coded white rgba).
79
+ var overlayHover = "color-mix(in srgb, currentColor 15%, transparent)";
80
+ var dividerOverlay = "color-mix(in srgb, currentColor 22%, transparent)";
81
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box["default"], {
82
+ role: "toolbar",
83
+ "aria-label": L.toolbarAria,
84
+ sx: {
85
+ position: "fixed",
86
+ bottom: "var(--s-5)",
87
+ left: "50%",
88
+ transform: "translateX(-50%)",
89
+ zIndex: "var(--z-bulk)",
90
+ display: "flex",
91
+ alignItems: "center",
92
+ // R-RS — centre-anchored bar must never exceed the viewport, and
93
+ // surplus actions wrap rather than spilling past the screen edges.
94
+ flexWrap: "wrap",
95
+ justifyContent: "center",
96
+ maxWidth: "calc(100vw - var(--s-4) * 2)",
97
+ gap: 1.5,
98
+ padding: "var(--s-2) var(--s-2) var(--s-2) var(--s-4)",
99
+ background: "var(--fg)",
100
+ color: "var(--fg-inverse)",
101
+ borderRadius: "var(--r-full)",
102
+ boxShadow: "var(--shadow-lg)"
103
+ },
104
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Box["default"]
105
+ // R-A.1 - polite live region so SR users hear each count change
106
+ // without losing context. aria-atomic ensures the full sentence is
107
+ // re-read on update, not just the diff.
108
+ , {
109
+ role: "status",
110
+ "aria-live": "polite",
111
+ "aria-atomic": "true",
112
+ sx: {
113
+ fontSize: "var(--text-sm)",
114
+ fontWeight: "var(--fw-semibold)",
115
+ fontVariantNumeric: "tabular-nums"
116
+ },
117
+ children: text
118
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box["default"], {
119
+ sx: {
120
+ width: 1,
121
+ height: 24,
122
+ background: dividerOverlay
123
+ }
124
+ }), actions.map(function (a, i) {
125
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button["default"], {
126
+ size: "sm",
127
+ variant: a.variant || "ghost",
128
+ icon: a.icon,
129
+ onClick: a.onClick,
130
+ disabled: a.disabled,
131
+ sx: _objectSpread({}, a.variant !== "danger" ? {
132
+ color: "var(--fg-inverse) !important",
133
+ "&:hover": {
134
+ background: overlayHover
135
+ }
136
+ } : {}),
137
+ children: a.label
138
+ }, i);
139
+ }), onClear && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button["default"], {
140
+ size: "sm",
141
+ variant: "ghost",
142
+ onClick: onClear,
143
+ sx: {
144
+ color: "var(--fg-inverse) !important",
145
+ "&:hover": {
146
+ background: overlayHover
147
+ }
148
+ },
149
+ children: L.clear
150
+ })]
151
+ });
152
+ }
153
+ var _default = exports["default"] = BulkActionBar;
154
+ //# sourceMappingURL=BulkActionBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BulkActionBar.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_Button","_mergeLabels","_jsxRuntime","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","TypeError","Number","DEFAULT_LABELS","freeze","selection","n","concat","toolbarAria","clear","BulkActionBar","_ref","_ref$count","count","onClear","_ref$actions","actions","label","labels","L","mergeLabels","text","overlayHover","dividerOverlay","jsxs","role","sx","position","bottom","left","transform","zIndex","display","alignItems","flexWrap","justifyContent","maxWidth","gap","padding","background","color","borderRadius","boxShadow","children","jsx","fontSize","fontWeight","fontVariantNumeric","width","height","map","a","size","variant","icon","onClick","disabled","_default","exports"],"sources":["../../../src/lib/v2/patterns/BulkActionBar.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport Button from \"../components/Button\";\r\nimport type { ButtonProps } from \"../components/Button\";\r\nimport { mergeLabels } from \"../utils/mergeLabels\";\r\n\r\n/**\r\n * BulkActionBar - Portnet UI v2 (pattern)\r\n *\r\n * Charter R-DG.8 - sélection multiple → bulk bar sticky bottom-center.\r\n * Affiche le compteur d'éléments sélectionnés + boutons d'actions + désélection.\r\n *\r\n * <BulkActionBar\r\n * count={selected.size}\r\n * onClear={() => setSelected(new Set())}\r\n * actions={[\r\n * { label: \"Exporter\", icon: <DownloadIcon />, onClick: exportSel },\r\n * { label: \"Archiver\", icon: <ArchiveIcon />, onClick: archiveSel },\r\n * { label: \"Supprimer\", icon: <DeleteIcon />, onClick: deleteSel, variant: \"danger\" },\r\n * ]}\r\n * />\r\n *\r\n * Localisation (FR / EN / AR):\r\n * <BulkActionBar labels={{\r\n * selection: (n) => `${n} item${n === 1 ? \"\" : \"s\"} selected`,\r\n * toolbarAria: \"Bulk actions\",\r\n * clear: \"Clear selection\",\r\n * }} ... />\r\n *\r\n * `selection` is a function so consumers can plug in proper plural\r\n * rules (Intl.PluralRules, ICU MessageFormat, i18next, …).\r\n *\r\n * A11y note (R-A.1):\r\n * The selection count is rendered inside a polite live region so that\r\n * updates (\"3 éléments sélectionnés\" → \"5 éléments sélectionnés\") are\r\n * announced to screen-reader users without stealing focus.\r\n *\r\n * Responsive note (R-RS / WCAG 1.4.10):\r\n * The bar is centre-anchored (left:50% / translateX(-50%)). Without a\r\n * width cap a long action set would push its ends off both screen\r\n * edges on a phone. maxWidth caps it to the viewport and flexWrap lets\r\n * surplus actions wrap to a second centred row instead of overflowing.\r\n */\r\n\r\nexport interface BulkAction {\r\n label: React.ReactNode;\r\n onClick?: (() => void) | undefined;\r\n icon?: React.ReactElement | undefined;\r\n variant?: ButtonProps[\"variant\"] | undefined;\r\n disabled?: boolean | undefined;\r\n}\r\n\r\nexport interface BulkActionBarLabels {\r\n selection?: ((n: number) => React.ReactNode) | undefined;\r\n toolbarAria?: string | undefined;\r\n clear?: React.ReactNode | undefined;\r\n}\r\n\r\nexport interface BulkActionBarProps {\r\n count?: number | undefined;\r\n onClear?: (() => void) | undefined;\r\n actions?: BulkAction[] | undefined;\r\n /** Legacy prop: a pre-formatted node override of the count text.\r\n * Wins over labels.selection when both are passed. */\r\n label?: React.ReactNode | undefined;\r\n labels?: BulkActionBarLabels | undefined;\r\n}\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n selection: (n: number) => `${n} élément${n > 1 ? \"s\" : \"\"} sélectionné${n > 1 ? \"s\" : \"\"}`,\r\n toolbarAria: \"Actions sur la sélection\",\r\n clear: \"Désélectionner\",\r\n});\r\n\r\nfunction BulkActionBar({ count = 0, onClear, actions = [], label, labels }: BulkActionBarProps) {\r\n if (count <= 0) return null;\r\n const L = mergeLabels(DEFAULT_LABELS, labels);\r\n // Legacy `label` prop wins over labels.selection for back-compat.\r\n const text = label != null ? label : L.selection(count);\r\n\r\n // R-AI.1 - currentColor-derived overlays so hover & divider auto-adapt\r\n // to the bar's fg-inverse value (was hard-coded white rgba).\r\n const overlayHover = \"color-mix(in srgb, currentColor 15%, transparent)\";\r\n const dividerOverlay = \"color-mix(in srgb, currentColor 22%, transparent)\";\r\n\r\n return (\r\n <Box\r\n role=\"toolbar\"\r\n aria-label={L.toolbarAria}\r\n sx={{\r\n position: \"fixed\",\r\n bottom: \"var(--s-5)\",\r\n left: \"50%\",\r\n transform: \"translateX(-50%)\",\r\n zIndex: \"var(--z-bulk)\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n // R-RS — centre-anchored bar must never exceed the viewport, and\r\n // surplus actions wrap rather than spilling past the screen edges.\r\n flexWrap: \"wrap\",\r\n justifyContent: \"center\",\r\n maxWidth: \"calc(100vw - var(--s-4) * 2)\",\r\n gap: 1.5,\r\n padding: \"var(--s-2) var(--s-2) var(--s-2) var(--s-4)\",\r\n background: \"var(--fg)\",\r\n color: \"var(--fg-inverse)\",\r\n borderRadius: \"var(--r-full)\",\r\n boxShadow: \"var(--shadow-lg)\",\r\n }}\r\n >\r\n <Box\r\n // R-A.1 - polite live region so SR users hear each count change\r\n // without losing context. aria-atomic ensures the full sentence is\r\n // re-read on update, not just the diff.\r\n role=\"status\"\r\n aria-live=\"polite\"\r\n aria-atomic=\"true\"\r\n sx={{\r\n fontSize: \"var(--text-sm)\",\r\n fontWeight: \"var(--fw-semibold)\",\r\n fontVariantNumeric: \"tabular-nums\",\r\n }}\r\n >\r\n {text}\r\n </Box>\r\n {/* Vertical divider — width:1 / height:24 are divider geometry,\r\n not a spacing concern. */}\r\n <Box sx={{ width: 1, height: 24, background: dividerOverlay }} />\r\n {actions.map((a, i) => (\r\n <Button\r\n key={i}\r\n size=\"sm\"\r\n variant={a.variant || \"ghost\"}\r\n icon={a.icon}\r\n onClick={a.onClick}\r\n disabled={a.disabled}\r\n sx={{\r\n // Danger keeps its own palette; every other variant is forced\r\n // to the inverse foreground with a currentColor hover overlay.\r\n // (JS set color/\"&:hover\" to undefined on danger; under\r\n // exactOptionalPropertyTypes that's present-with-undefined for\r\n // the csstype color + selector value, so it's folded into one\r\n // conditional spread — behaviour-identical.)\r\n ...(a.variant !== \"danger\"\r\n ? {\r\n color: \"var(--fg-inverse) !important\",\r\n \"&:hover\": { background: overlayHover },\r\n }\r\n : {}),\r\n }}\r\n >\r\n {a.label}\r\n </Button>\r\n ))}\r\n {onClear && (\r\n <Button\r\n size=\"sm\"\r\n variant=\"ghost\"\r\n onClick={onClear}\r\n sx={{\r\n color: \"var(--fg-inverse) !important\",\r\n \"&:hover\": { background: overlayHover },\r\n }}\r\n >\r\n {L.clear}\r\n </Button>\r\n )}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default BulkActionBar;\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,62 @@
1
+ import * as React from "react";
2
+ import type { DataGridColumn, DataGridLabels } from "../types/datagrid";
3
+ import type { Density, RowId } from "../types/common";
4
+ /**
5
+ * CollapsibleDataGrid — Portnet UI v2 (pattern)
6
+ *
7
+ * Charter §03 · master/detail table with per-row expansion. Companion to
8
+ * DataGrid for the case DataGrid intentionally does not cover: a row that
9
+ * expands to reveal a secondary record (e.g. a decision and its visa
10
+ * detail). Refactor of the legacy host-local CollapsibleTableClientSide
11
+ * (ms-dfd-fe), lifted into the lib so modules consume it instead of
12
+ * re-implementing an expandable MUI Table.
13
+ *
14
+ * Columns use the v2-native shape, identical to DataGrid:
15
+ * { key, header, render(row), getValue(row), width, align, numeric, mono }
16
+ *
17
+ * `columns` master row cells (the first cell hosts the expand toggle).
18
+ * `detailColumns` the expanded panel; values are read from the SAME row
19
+ * object (a row carries both its master and detail fields).
20
+ *
21
+ * A row is expandable when `hasDetail(row)` is true. Default: the first
22
+ * detail column resolves to a non-nullish value. Pass `hasDetail` to override.
23
+ *
24
+ * Pagination is client-side (the host passes the full row set) and uses the
25
+ * shared v2 Pagination — 1-based, tabular range, optional page-size select.
26
+ *
27
+ * Accessibility (WCAG 2.2 AA · Charter R-DG):
28
+ * - the expand control is a real <button> with aria-expanded +
29
+ * aria-controls pointing at the detail region id;
30
+ * - the detail region is labelled (labels.detailAria);
31
+ * - the table carries a contextual name (ariaLabel | labels.tableAria).
32
+ */
33
+ /** The read subset of the DataGrid column contract that this pattern honours. */
34
+ export type CollapsibleColumn<T> = Pick<DataGridColumn<T>, "key" | "header" | "align" | "numeric" | "mono" | "width" | "render" | "getValue">;
35
+ /** DataGrid labels + the expansion-specific names. */
36
+ export interface CollapsibleDataGridLabels extends DataGridLabels {
37
+ expandRow?: string | undefined;
38
+ collapseRow?: string | undefined;
39
+ detailAria?: string | undefined;
40
+ }
41
+ export interface CollapsibleDataGridProps<T> {
42
+ rows?: T[] | undefined;
43
+ columns: CollapsibleColumn<T>[];
44
+ detailColumns?: CollapsibleColumn<T>[] | undefined;
45
+ /** Row identity (default `(row) => row.id`). */
46
+ getRowId?: ((row: T) => RowId) | undefined;
47
+ /** Override the "row is expandable" test (default: first detail value is non-nullish). */
48
+ hasDetail?: ((row: T) => boolean) | undefined;
49
+ density?: Density | undefined;
50
+ /** Contextual accessible table name (WCAG 1.3.1 / Charter R-DG). */
51
+ ariaLabel?: string | undefined;
52
+ /** BCP-47 locale for pagination number formatting (default "fr-FR"). */
53
+ locale?: string | undefined;
54
+ labels?: CollapsibleDataGridLabels | undefined;
55
+ loading?: boolean | undefined;
56
+ pageSize?: number | undefined;
57
+ pageSizes?: number[] | undefined;
58
+ maxBodyHeight?: number | string | undefined;
59
+ }
60
+ declare function CollapsibleDataGrid<T>({ rows, columns, detailColumns, getRowId, hasDetail, density, ariaLabel, locale, labels, loading, pageSize: pageSizeProp, pageSizes, maxBodyHeight, }: CollapsibleDataGridProps<T>): React.JSX.Element;
61
+ export default CollapsibleDataGrid;
62
+ //# sourceMappingURL=CollapsibleDataGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollapsibleDataGrid.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/CollapsibleDataGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAsB/B,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAa,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,iFAAiF;AACjF,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,IAAI,CACrC,cAAc,CAAC,CAAC,CAAC,EACjB,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAClF,CAAC;AAEF,sDAAsD;AACtD,MAAM,WAAW,yBAA0B,SAAQ,cAAc;IAC/D,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;IACvB,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC;IACnD,gDAAgD;IAChD,QAAQ,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,KAAK,CAAC,GAAG,SAAS,CAAC;IAC3C,0FAA0F;IAC1F,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;IAC9C,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC7C;AAiCD,iBAAS,mBAAmB,CAAC,CAAC,EAAE,EAC9B,IAAS,EACT,OAAY,EACZ,aAAkB,EAClB,QAA0B,EAC1B,SAAS,EACT,OAAuB,EACvB,SAAS,EACT,MAAgB,EAChB,MAAM,EACN,OAAe,EACf,QAAQ,EAAE,YAAiB,EAC3B,SAAyB,EACzB,aAAuC,GACxC,EAAE,wBAAwB,CAAC,CAAC,CAAC,qBA0M7B;AAED,eAAe,mBAAmB,CAAC"}