@portnet/ui 6.0.0 → 6.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (820) hide show
  1. package/CHANGELOG.md +85 -0
  2. package/dist/esm/index.js +214 -0
  3. package/dist/esm/index.js.map +1 -0
  4. package/dist/esm/v2/__tests__/FieldError.test.js +159 -0
  5. package/dist/esm/v2/__tests__/FieldError.test.js.map +1 -0
  6. package/dist/esm/v2/__tests__/FieldWidth.test.js +146 -0
  7. package/dist/esm/v2/__tests__/FieldWidth.test.js.map +1 -0
  8. package/dist/esm/v2/__tests__/FileCard.test.js +143 -0
  9. package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -0
  10. package/dist/esm/v2/__tests__/FormikCheckbox.test.js +265 -0
  11. package/dist/esm/v2/__tests__/FormikCheckbox.test.js.map +1 -0
  12. package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js +248 -0
  13. package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js.map +1 -0
  14. package/dist/esm/v2/__tests__/FormikRadioGroup.test.js +380 -0
  15. package/dist/esm/v2/__tests__/FormikRadioGroup.test.js.map +1 -0
  16. package/dist/esm/v2/__tests__/MobileRowCard.test.js +332 -0
  17. package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -0
  18. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +235 -0
  19. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
  20. package/dist/esm/v2/__tests__/apiError.test.js +181 -0
  21. package/dist/esm/v2/__tests__/apiError.test.js.map +1 -0
  22. package/dist/esm/v2/__tests__/banned-patterns.test.js +270 -0
  23. package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -0
  24. package/dist/esm/v2/__tests__/contrast-palette.test.js +224 -0
  25. package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -0
  26. package/dist/esm/v2/__tests__/cssVariables.test.js +157 -0
  27. package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -0
  28. package/dist/esm/v2/__tests__/labels-merge.test.js +146 -0
  29. package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -0
  30. package/dist/esm/v2/__tests__/locale-fallback.test.js +109 -0
  31. package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -0
  32. package/dist/esm/v2/__tests__/useFocusTrap.test.js +514 -0
  33. package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -0
  34. package/dist/esm/v2/components/Accordion.js +230 -0
  35. package/dist/esm/v2/components/Accordion.js.map +1 -0
  36. package/dist/esm/v2/components/ActionStrip.js +146 -0
  37. package/dist/esm/v2/components/ActionStrip.js.map +1 -0
  38. package/dist/esm/v2/components/Banner.js +254 -0
  39. package/dist/esm/v2/components/Banner.js.map +1 -0
  40. package/dist/esm/v2/components/Busy.js +97 -0
  41. package/dist/esm/v2/components/Busy.js.map +1 -0
  42. package/dist/esm/v2/components/Button.js +114 -0
  43. package/dist/esm/v2/components/Button.js.map +1 -0
  44. package/dist/esm/v2/components/CategoryTag.js +81 -0
  45. package/dist/esm/v2/components/CategoryTag.js.map +1 -0
  46. package/dist/esm/v2/components/Checkbox.js +124 -0
  47. package/dist/esm/v2/components/Checkbox.js.map +1 -0
  48. package/dist/esm/v2/components/Chip.js +124 -0
  49. package/dist/esm/v2/components/Chip.js.map +1 -0
  50. package/dist/esm/v2/components/Combobox.js +394 -0
  51. package/dist/esm/v2/components/Combobox.js.map +1 -0
  52. package/dist/esm/v2/components/CommandPalette.js +660 -0
  53. package/dist/esm/v2/components/CommandPalette.js.map +1 -0
  54. package/dist/esm/v2/components/ConfirmDialog.js +144 -0
  55. package/dist/esm/v2/components/ConfirmDialog.js.map +1 -0
  56. package/dist/esm/v2/components/DatePicker.js +200 -0
  57. package/dist/esm/v2/components/DatePicker.js.map +1 -0
  58. package/dist/esm/v2/components/DateRangePicker.js +289 -0
  59. package/dist/esm/v2/components/DateRangePicker.js.map +1 -0
  60. package/dist/esm/v2/components/DateTimePicker.js +215 -0
  61. package/dist/esm/v2/components/DateTimePicker.js.map +1 -0
  62. package/dist/esm/v2/components/Drawer.js +333 -0
  63. package/dist/esm/v2/components/Drawer.js.map +1 -0
  64. package/dist/esm/v2/components/Dropzone.js +540 -0
  65. package/dist/esm/v2/components/Dropzone.js.map +1 -0
  66. package/dist/esm/v2/components/EmptyState.js +102 -0
  67. package/dist/esm/v2/components/EmptyState.js.map +1 -0
  68. package/dist/esm/v2/components/FavoriteToggle.js +127 -0
  69. package/dist/esm/v2/components/FavoriteToggle.js.map +1 -0
  70. package/dist/esm/v2/components/Field.js +259 -0
  71. package/dist/esm/v2/components/Field.js.map +1 -0
  72. package/dist/esm/v2/components/FieldError.js +124 -0
  73. package/dist/esm/v2/components/FieldError.js.map +1 -0
  74. package/dist/esm/v2/components/FieldHelp.js +202 -0
  75. package/dist/esm/v2/components/FieldHelp.js.map +1 -0
  76. package/dist/esm/v2/components/FileCard.js +162 -0
  77. package/dist/esm/v2/components/FileCard.js.map +1 -0
  78. package/dist/esm/v2/components/FilterTab.js +138 -0
  79. package/dist/esm/v2/components/FilterTab.js.map +1 -0
  80. package/dist/esm/v2/components/ForbiddenPage.js +74 -0
  81. package/dist/esm/v2/components/ForbiddenPage.js.map +1 -0
  82. package/dist/esm/v2/components/FormGrid.js +179 -0
  83. package/dist/esm/v2/components/FormGrid.js.map +1 -0
  84. package/dist/esm/v2/components/FormikDisplay.js +118 -0
  85. package/dist/esm/v2/components/FormikDisplay.js.map +1 -0
  86. package/dist/esm/v2/components/Input.js +107 -0
  87. package/dist/esm/v2/components/Input.js.map +1 -0
  88. package/dist/esm/v2/components/KPICard.js +237 -0
  89. package/dist/esm/v2/components/KPICard.js.map +1 -0
  90. package/dist/esm/v2/components/KPIStrip.js +84 -0
  91. package/dist/esm/v2/components/KPIStrip.js.map +1 -0
  92. package/dist/esm/v2/components/KV.js +75 -0
  93. package/dist/esm/v2/components/KV.js.map +1 -0
  94. package/dist/esm/v2/components/KVGrid.js +74 -0
  95. package/dist/esm/v2/components/KVGrid.js.map +1 -0
  96. package/dist/esm/v2/components/Layout.js +284 -0
  97. package/dist/esm/v2/components/Layout.js.map +1 -0
  98. package/dist/esm/v2/components/MobileRowCard.js +314 -0
  99. package/dist/esm/v2/components/MobileRowCard.js.map +1 -0
  100. package/dist/esm/v2/components/Modal.js +276 -0
  101. package/dist/esm/v2/components/Modal.js.map +1 -0
  102. package/dist/esm/v2/components/NetworkErrorPage.js +78 -0
  103. package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -0
  104. package/dist/esm/v2/components/NotFoundPage.js +58 -0
  105. package/dist/esm/v2/components/NotFoundPage.js.map +1 -0
  106. package/dist/esm/v2/components/NumberInput.js +309 -0
  107. package/dist/esm/v2/components/NumberInput.js.map +1 -0
  108. package/dist/esm/v2/components/OverflowMenu.js +184 -0
  109. package/dist/esm/v2/components/OverflowMenu.js.map +1 -0
  110. package/dist/esm/v2/components/PdfViewer.js +122 -0
  111. package/dist/esm/v2/components/PdfViewer.js.map +1 -0
  112. package/dist/esm/v2/components/ProgressBar.js +202 -0
  113. package/dist/esm/v2/components/ProgressBar.js.map +1 -0
  114. package/dist/esm/v2/components/Radio.js +228 -0
  115. package/dist/esm/v2/components/Radio.js.map +1 -0
  116. package/dist/esm/v2/components/SectionErrorBoundary.js +214 -0
  117. package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -0
  118. package/dist/esm/v2/components/SectionHeader.js +132 -0
  119. package/dist/esm/v2/components/SectionHeader.js.map +1 -0
  120. package/dist/esm/v2/components/Segmented.js +254 -0
  121. package/dist/esm/v2/components/Segmented.js.map +1 -0
  122. package/dist/esm/v2/components/Select.js +490 -0
  123. package/dist/esm/v2/components/Select.js.map +1 -0
  124. package/dist/esm/v2/components/ServerErrorPage.js +74 -0
  125. package/dist/esm/v2/components/ServerErrorPage.js.map +1 -0
  126. package/dist/esm/v2/components/Skeleton.js +269 -0
  127. package/dist/esm/v2/components/Skeleton.js.map +1 -0
  128. package/dist/esm/v2/components/SkipLink.js +49 -0
  129. package/dist/esm/v2/components/SkipLink.js.map +1 -0
  130. package/dist/esm/v2/components/Spinner.js +69 -0
  131. package/dist/esm/v2/components/Spinner.js.map +1 -0
  132. package/dist/esm/v2/components/Status.js +64 -0
  133. package/dist/esm/v2/components/Status.js.map +1 -0
  134. package/dist/esm/v2/components/Stepper.js +432 -0
  135. package/dist/esm/v2/components/Stepper.js.map +1 -0
  136. package/dist/esm/v2/components/Surface.js +159 -0
  137. package/dist/esm/v2/components/Surface.js.map +1 -0
  138. package/dist/esm/v2/components/Switch.js +128 -0
  139. package/dist/esm/v2/components/Switch.js.map +1 -0
  140. package/dist/esm/v2/components/Tabs.js +150 -0
  141. package/dist/esm/v2/components/Tabs.js.map +1 -0
  142. package/dist/esm/v2/components/TelInput.js +274 -0
  143. package/dist/esm/v2/components/TelInput.js.map +1 -0
  144. package/dist/esm/v2/components/Textarea.js +72 -0
  145. package/dist/esm/v2/components/Textarea.js.map +1 -0
  146. package/dist/esm/v2/components/TimePicker.js +134 -0
  147. package/dist/esm/v2/components/TimePicker.js.map +1 -0
  148. package/dist/esm/v2/components/Toast.js +376 -0
  149. package/dist/esm/v2/components/Toast.js.map +1 -0
  150. package/dist/esm/v2/components/Tooltip.js +161 -0
  151. package/dist/esm/v2/components/Tooltip.js.map +1 -0
  152. package/dist/esm/v2/components/_ErrorPageBody.js +85 -0
  153. package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -0
  154. package/dist/esm/v2/components/_pickerShared.js +60 -0
  155. package/dist/esm/v2/components/_pickerShared.js.map +1 -0
  156. package/dist/esm/v2/components/index.js +271 -0
  157. package/dist/esm/v2/components/index.js.map +1 -0
  158. package/dist/esm/v2/hooks/index.js +10 -0
  159. package/dist/esm/v2/hooks/index.js.map +1 -0
  160. package/dist/esm/v2/hooks/useDelayedFlag.js +55 -0
  161. package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -0
  162. package/dist/esm/v2/hooks/useDensity.js +119 -0
  163. package/dist/esm/v2/hooks/useDensity.js.map +1 -0
  164. package/dist/esm/v2/hooks/useFocusFirstError.js +197 -0
  165. package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -0
  166. package/dist/esm/v2/hooks/useFocusTrap.js +202 -0
  167. package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -0
  168. package/dist/esm/v2/hooks/useFormAutoSave.js +181 -0
  169. package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -0
  170. package/dist/esm/v2/hooks/useFormCompletionProgress.js +131 -0
  171. package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -0
  172. package/dist/esm/v2/hooks/useResolvedDensity.js +44 -0
  173. package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -0
  174. package/dist/esm/v2/hooks/useSortedRows.js +32 -0
  175. package/dist/esm/v2/hooks/useSortedRows.js.map +1 -0
  176. package/dist/esm/v2/hooks/useTabLoading.js +79 -0
  177. package/dist/esm/v2/hooks/useTabLoading.js.map +1 -0
  178. package/dist/esm/v2/index.js +132 -0
  179. package/dist/esm/v2/index.js.map +1 -0
  180. package/dist/esm/v2/modalContext.js +108 -0
  181. package/dist/esm/v2/modalContext.js.map +1 -0
  182. package/dist/esm/v2/models/favorite.js +2 -0
  183. package/dist/esm/v2/models/favorite.js.map +1 -0
  184. package/dist/esm/v2/models/index.js +12 -0
  185. package/dist/esm/v2/models/index.js.map +1 -0
  186. package/dist/esm/v2/models/personalization.js +2 -0
  187. package/dist/esm/v2/models/personalization.js.map +1 -0
  188. package/dist/esm/v2/models/referentiel.js +2 -0
  189. package/dist/esm/v2/models/referentiel.js.map +1 -0
  190. package/dist/esm/v2/models/savedFilter.js +2 -0
  191. package/dist/esm/v2/models/savedFilter.js.map +1 -0
  192. package/dist/esm/v2/patterns/ActionBar.js +603 -0
  193. package/dist/esm/v2/patterns/ActionBar.js.map +1 -0
  194. package/dist/esm/v2/patterns/BulkActionBar.js +147 -0
  195. package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -0
  196. package/dist/esm/v2/patterns/CollapsibleDataGrid.js +303 -0
  197. package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -0
  198. package/dist/esm/v2/patterns/ColumnsToggle.js +301 -0
  199. package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -0
  200. package/dist/esm/v2/patterns/DataGrid.js +820 -0
  201. package/dist/esm/v2/patterns/DataGrid.js.map +1 -0
  202. package/dist/esm/v2/patterns/DataGridSettingsMenu.js +375 -0
  203. package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -0
  204. package/dist/esm/v2/patterns/DataGridToolbar.js +249 -0
  205. package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -0
  206. package/dist/esm/v2/patterns/DataGridVirtualized.js +523 -0
  207. package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -0
  208. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +70 -0
  209. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -0
  210. package/dist/esm/v2/patterns/FavoriteColumn.js +117 -0
  211. package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -0
  212. package/dist/esm/v2/patterns/FavoritesFilter.js +91 -0
  213. package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -0
  214. package/dist/esm/v2/patterns/FormErrorSummary.js +101 -0
  215. package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -0
  216. package/dist/esm/v2/patterns/FormPageShell.js +126 -0
  217. package/dist/esm/v2/patterns/FormPageShell.js.map +1 -0
  218. package/dist/esm/v2/patterns/FormSection.js +190 -0
  219. package/dist/esm/v2/patterns/FormSection.js.map +1 -0
  220. package/dist/esm/v2/patterns/FormikCheckbox.js +140 -0
  221. package/dist/esm/v2/patterns/FormikCheckbox.js.map +1 -0
  222. package/dist/esm/v2/patterns/FormikCheckboxGroup.js +110 -0
  223. package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -0
  224. package/dist/esm/v2/patterns/FormikCombobox.js +118 -0
  225. package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -0
  226. package/dist/esm/v2/patterns/FormikDatePicker.js +162 -0
  227. package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -0
  228. package/dist/esm/v2/patterns/FormikDateTimePicker.js +150 -0
  229. package/dist/esm/v2/patterns/FormikDateTimePicker.js.map +1 -0
  230. package/dist/esm/v2/patterns/FormikErrorFocus.js +77 -0
  231. package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -0
  232. package/dist/esm/v2/patterns/FormikFile.js +148 -0
  233. package/dist/esm/v2/patterns/FormikFile.js.map +1 -0
  234. package/dist/esm/v2/patterns/FormikInput.js +130 -0
  235. package/dist/esm/v2/patterns/FormikInput.js.map +1 -0
  236. package/dist/esm/v2/patterns/FormikRadioGroup.js +141 -0
  237. package/dist/esm/v2/patterns/FormikRadioGroup.js.map +1 -0
  238. package/dist/esm/v2/patterns/FormikReferentielField.js +116 -0
  239. package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -0
  240. package/dist/esm/v2/patterns/FormikSelect.js +162 -0
  241. package/dist/esm/v2/patterns/FormikSelect.js.map +1 -0
  242. package/dist/esm/v2/patterns/FormikTextarea.js +79 -0
  243. package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -0
  244. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +212 -0
  245. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -0
  246. package/dist/esm/v2/patterns/NetworkErrorBanner.js +72 -0
  247. package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -0
  248. package/dist/esm/v2/patterns/PageContent.js +62 -0
  249. package/dist/esm/v2/patterns/PageContent.js.map +1 -0
  250. package/dist/esm/v2/patterns/ReferentielField.js +615 -0
  251. package/dist/esm/v2/patterns/ReferentielField.js.map +1 -0
  252. package/dist/esm/v2/patterns/RowFavoriteToggle.js +122 -0
  253. package/dist/esm/v2/patterns/RowFavoriteToggle.js.map +1 -0
  254. package/dist/esm/v2/patterns/SaveFilterDialog.js +197 -0
  255. package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -0
  256. package/dist/esm/v2/patterns/SavedFiltersMenu.js +406 -0
  257. package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -0
  258. package/dist/esm/v2/patterns/SkeletonPageShell.js +342 -0
  259. package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -0
  260. package/dist/esm/v2/patterns/SortableHeader.js +179 -0
  261. package/dist/esm/v2/patterns/SortableHeader.js.map +1 -0
  262. package/dist/esm/v2/patterns/Tour.js +471 -0
  263. package/dist/esm/v2/patterns/Tour.js.map +1 -0
  264. package/dist/esm/v2/patterns/_dataGridShared.js +431 -0
  265. package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -0
  266. package/dist/esm/v2/patterns/_pickerSerialisation.js +74 -0
  267. package/dist/esm/v2/patterns/_pickerSerialisation.js.map +1 -0
  268. package/dist/esm/v2/patterns/_sort.js +112 -0
  269. package/dist/esm/v2/patterns/_sort.js.map +1 -0
  270. package/dist/esm/v2/patterns/_useColumnReorder.js +257 -0
  271. package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -0
  272. package/dist/esm/v2/patterns/_useColumnResize.js +191 -0
  273. package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -0
  274. package/dist/esm/v2/patterns/index.js +178 -0
  275. package/dist/esm/v2/patterns/index.js.map +1 -0
  276. package/dist/esm/v2/personalization/PersonalizationProvider.js +168 -0
  277. package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -0
  278. package/dist/esm/v2/personalization/adapters/_storageKey.js +60 -0
  279. package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -0
  280. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +124 -0
  281. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -0
  282. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +70 -0
  283. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -0
  284. package/dist/esm/v2/personalization/adapters/index.js +11 -0
  285. package/dist/esm/v2/personalization/adapters/index.js.map +1 -0
  286. package/dist/esm/v2/personalization/capabilities/favorites.js +216 -0
  287. package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -0
  288. package/dist/esm/v2/personalization/capabilities/favoritesView.js +111 -0
  289. package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -0
  290. package/dist/esm/v2/personalization/capabilities/gridPreferences.js +209 -0
  291. package/dist/esm/v2/personalization/capabilities/gridPreferences.js.map +1 -0
  292. package/dist/esm/v2/personalization/capabilities/index.js +22 -0
  293. package/dist/esm/v2/personalization/capabilities/index.js.map +1 -0
  294. package/dist/esm/v2/personalization/capabilities/savedFilters.js +291 -0
  295. package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -0
  296. package/dist/esm/v2/personalization/createPersonalizationStore.js +472 -0
  297. package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -0
  298. package/dist/esm/v2/personalization/index.js +64 -0
  299. package/dist/esm/v2/personalization/index.js.map +1 -0
  300. package/dist/esm/v2/personalization/personalizationContext.js +108 -0
  301. package/dist/esm/v2/personalization/personalizationContext.js.map +1 -0
  302. package/dist/esm/v2/personalization/schema.js +92 -0
  303. package/dist/esm/v2/personalization/schema.js.map +1 -0
  304. package/dist/esm/v2/personalization/types.js +2 -0
  305. package/dist/esm/v2/personalization/types.js.map +1 -0
  306. package/dist/esm/v2/referentiel/ReferentielProvider.js +87 -0
  307. package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -0
  308. package/dist/esm/v2/referentiel/index.js +15 -0
  309. package/dist/esm/v2/referentiel/index.js.map +1 -0
  310. package/dist/esm/v2/referentiel/useReferentielClient.js +37 -0
  311. package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -0
  312. package/dist/esm/v2/referentiel/useReferentielOptions.js +169 -0
  313. package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -0
  314. package/dist/esm/v2/referentiel/useReferentielSearch.js +132 -0
  315. package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -0
  316. package/dist/esm/v2/styles/base.css +425 -0
  317. package/dist/esm/v2/styles/css.d.ts +10 -0
  318. package/dist/esm/v2/styles/index.js +12 -0
  319. package/dist/esm/v2/styles/index.js.map +1 -0
  320. package/dist/esm/v2/theme/_brand.js +64 -0
  321. package/dist/esm/v2/theme/_brand.js.map +1 -0
  322. package/dist/esm/v2/theme/_brandSecondary.js +60 -0
  323. package/dist/esm/v2/theme/_brandSecondary.js.map +1 -0
  324. package/dist/esm/v2/theme/createPortnetTheme.js +548 -0
  325. package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -0
  326. package/dist/esm/v2/theme/cssVariables.js +198 -0
  327. package/dist/esm/v2/theme/cssVariables.js.map +1 -0
  328. package/dist/esm/v2/theme/index.js +32 -0
  329. package/dist/esm/v2/theme/index.js.map +1 -0
  330. package/dist/esm/v2/tokens/breakpoints.js +106 -0
  331. package/dist/esm/v2/tokens/breakpoints.js.map +1 -0
  332. package/dist/esm/v2/tokens/colors.js +219 -0
  333. package/dist/esm/v2/tokens/colors.js.map +1 -0
  334. package/dist/esm/v2/tokens/density.js +98 -0
  335. package/dist/esm/v2/tokens/density.js.map +1 -0
  336. package/dist/esm/v2/tokens/index.js +80 -0
  337. package/dist/esm/v2/tokens/index.js.map +1 -0
  338. package/dist/esm/v2/tokens/motion.js +88 -0
  339. package/dist/esm/v2/tokens/motion.js.map +1 -0
  340. package/dist/esm/v2/tokens/radius.js +22 -0
  341. package/dist/esm/v2/tokens/radius.js.map +1 -0
  342. package/dist/esm/v2/tokens/shadows.js +40 -0
  343. package/dist/esm/v2/tokens/shadows.js.map +1 -0
  344. package/dist/esm/v2/tokens/spacing.js +51 -0
  345. package/dist/esm/v2/tokens/spacing.js.map +1 -0
  346. package/dist/esm/v2/tokens/state.js +41 -0
  347. package/dist/esm/v2/tokens/state.js.map +1 -0
  348. package/dist/esm/v2/tokens/statusPalette.js +66 -0
  349. package/dist/esm/v2/tokens/statusPalette.js.map +1 -0
  350. package/dist/esm/v2/tokens/tokens.json +153 -0
  351. package/dist/esm/v2/tokens/typography.js +149 -0
  352. package/dist/esm/v2/tokens/typography.js.map +1 -0
  353. package/dist/esm/v2/tokens/zIndex.js +44 -0
  354. package/dist/esm/v2/tokens/zIndex.js.map +1 -0
  355. package/dist/esm/v2/types/common.js +2 -0
  356. package/dist/esm/v2/types/common.js.map +1 -0
  357. package/dist/esm/v2/types/datagrid.js +2 -0
  358. package/dist/esm/v2/types/datagrid.js.map +1 -0
  359. package/dist/esm/v2/types/index.js +12 -0
  360. package/dist/esm/v2/types/index.js.map +1 -0
  361. package/dist/esm/v2/utils/apiError.js +281 -0
  362. package/dist/esm/v2/utils/apiError.js.map +1 -0
  363. package/dist/esm/v2/utils/contrast.js +157 -0
  364. package/dist/esm/v2/utils/contrast.js.map +1 -0
  365. package/dist/esm/v2/utils/cx.js +38 -0
  366. package/dist/esm/v2/utils/cx.js.map +1 -0
  367. package/dist/esm/v2/utils/fileDownload.js +226 -0
  368. package/dist/esm/v2/utils/fileDownload.js.map +1 -0
  369. package/dist/esm/v2/utils/fmtMoney.js +78 -0
  370. package/dist/esm/v2/utils/fmtMoney.js.map +1 -0
  371. package/dist/esm/v2/utils/index.js +43 -0
  372. package/dist/esm/v2/utils/index.js.map +1 -0
  373. package/dist/esm/v2/utils/mergeLabels.js +86 -0
  374. package/dist/esm/v2/utils/mergeLabels.js.map +1 -0
  375. package/dist/esm/v2/utils/networkStatus.js +114 -0
  376. package/dist/esm/v2/utils/networkStatus.js.map +1 -0
  377. package/dist/index.d.ts +5 -2
  378. package/dist/index.d.ts.map +1 -1
  379. package/dist/index.js +35 -0
  380. package/dist/index.js.map +1 -1
  381. package/dist/v2/__tests__/FieldError.test.js +160 -0
  382. package/dist/v2/__tests__/FieldError.test.js.map +1 -0
  383. package/dist/v2/__tests__/FieldWidth.test.js +150 -0
  384. package/dist/v2/__tests__/FieldWidth.test.js.map +1 -0
  385. package/dist/v2/__tests__/FileCard.test.js +144 -0
  386. package/dist/v2/__tests__/FileCard.test.js.map +1 -0
  387. package/dist/v2/__tests__/FormikCheckbox.test.js +268 -0
  388. package/dist/v2/__tests__/FormikCheckbox.test.js.map +1 -0
  389. package/dist/v2/__tests__/FormikDateTimePicker.test.js +247 -0
  390. package/dist/v2/__tests__/FormikDateTimePicker.test.js.map +1 -0
  391. package/dist/v2/__tests__/FormikRadioGroup.test.js +381 -0
  392. package/dist/v2/__tests__/FormikRadioGroup.test.js.map +1 -0
  393. package/dist/v2/__tests__/MobileRowCard.test.js +52 -56
  394. package/dist/v2/__tests__/MobileRowCard.test.js.map +1 -1
  395. package/dist/v2/__tests__/SectionErrorBoundary.test.js +237 -0
  396. package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
  397. package/dist/v2/__tests__/labels-merge.test.js +20 -24
  398. package/dist/v2/__tests__/labels-merge.test.js.map +1 -1
  399. package/dist/v2/components/Accordion.d.ts +6 -6
  400. package/dist/v2/components/Accordion.d.ts.map +1 -1
  401. package/dist/v2/components/Accordion.js.map +1 -1
  402. package/dist/v2/components/ActionStrip.d.ts +12 -12
  403. package/dist/v2/components/ActionStrip.d.ts.map +1 -1
  404. package/dist/v2/components/ActionStrip.js.map +1 -1
  405. package/dist/v2/components/Banner.d.ts +48 -9
  406. package/dist/v2/components/Banner.d.ts.map +1 -1
  407. package/dist/v2/components/Banner.js +116 -35
  408. package/dist/v2/components/Banner.js.map +1 -1
  409. package/dist/v2/components/Busy.d.ts +3 -3
  410. package/dist/v2/components/Busy.d.ts.map +1 -1
  411. package/dist/v2/components/Busy.js.map +1 -1
  412. package/dist/v2/components/Button.d.ts +6 -6
  413. package/dist/v2/components/Button.d.ts.map +1 -1
  414. package/dist/v2/components/Button.js.map +1 -1
  415. package/dist/v2/components/CategoryTag.d.ts +3 -3
  416. package/dist/v2/components/CategoryTag.d.ts.map +1 -1
  417. package/dist/v2/components/CategoryTag.js.map +1 -1
  418. package/dist/v2/components/Checkbox.d.ts +11 -11
  419. package/dist/v2/components/Checkbox.d.ts.map +1 -1
  420. package/dist/v2/components/Checkbox.js.map +1 -1
  421. package/dist/v2/components/Chip.d.ts +8 -8
  422. package/dist/v2/components/Chip.d.ts.map +1 -1
  423. package/dist/v2/components/Chip.js +2 -1
  424. package/dist/v2/components/Chip.js.map +1 -1
  425. package/dist/v2/components/Combobox.d.ts +27 -27
  426. package/dist/v2/components/Combobox.d.ts.map +1 -1
  427. package/dist/v2/components/Combobox.js +3 -2
  428. package/dist/v2/components/Combobox.js.map +1 -1
  429. package/dist/v2/components/CommandPalette.d.ts +20 -20
  430. package/dist/v2/components/CommandPalette.d.ts.map +1 -1
  431. package/dist/v2/components/CommandPalette.js +2 -6
  432. package/dist/v2/components/CommandPalette.js.map +1 -1
  433. package/dist/v2/components/ConfirmDialog.d.ts +13 -13
  434. package/dist/v2/components/ConfirmDialog.d.ts.map +1 -1
  435. package/dist/v2/components/ConfirmDialog.js +2 -1
  436. package/dist/v2/components/ConfirmDialog.js.map +1 -1
  437. package/dist/v2/components/DatePicker.d.ts +11 -11
  438. package/dist/v2/components/DatePicker.d.ts.map +1 -1
  439. package/dist/v2/components/DatePicker.js.map +1 -1
  440. package/dist/v2/components/DateRangePicker.d.ts +16 -16
  441. package/dist/v2/components/DateRangePicker.d.ts.map +1 -1
  442. package/dist/v2/components/DateRangePicker.js +2 -1
  443. package/dist/v2/components/DateRangePicker.js.map +1 -1
  444. package/dist/v2/components/DateTimePicker.d.ts +11 -11
  445. package/dist/v2/components/DateTimePicker.d.ts.map +1 -1
  446. package/dist/v2/components/DateTimePicker.js +37 -4
  447. package/dist/v2/components/DateTimePicker.js.map +1 -1
  448. package/dist/v2/components/Drawer.d.ts +18 -18
  449. package/dist/v2/components/Drawer.d.ts.map +1 -1
  450. package/dist/v2/components/Drawer.js +2 -1
  451. package/dist/v2/components/Drawer.js.map +1 -1
  452. package/dist/v2/components/Dropzone.d.ts +34 -34
  453. package/dist/v2/components/Dropzone.d.ts.map +1 -1
  454. package/dist/v2/components/Dropzone.js +11 -3
  455. package/dist/v2/components/Dropzone.js.map +1 -1
  456. package/dist/v2/components/EmptyState.d.ts +7 -7
  457. package/dist/v2/components/EmptyState.d.ts.map +1 -1
  458. package/dist/v2/components/EmptyState.js.map +1 -1
  459. package/dist/v2/components/FavoriteToggle.d.ts +7 -7
  460. package/dist/v2/components/FavoriteToggle.d.ts.map +1 -1
  461. package/dist/v2/components/FavoriteToggle.js +2 -1
  462. package/dist/v2/components/FavoriteToggle.js.map +1 -1
  463. package/dist/v2/components/Field.d.ts +76 -13
  464. package/dist/v2/components/Field.d.ts.map +1 -1
  465. package/dist/v2/components/Field.js +87 -9
  466. package/dist/v2/components/Field.js.map +1 -1
  467. package/dist/v2/components/FieldError.d.ts +78 -0
  468. package/dist/v2/components/FieldError.d.ts.map +1 -0
  469. package/dist/v2/components/FieldError.js +131 -0
  470. package/dist/v2/components/FieldError.js.map +1 -0
  471. package/dist/v2/components/FieldHelp.d.ts +7 -7
  472. package/dist/v2/components/FieldHelp.d.ts.map +1 -1
  473. package/dist/v2/components/FieldHelp.js.map +1 -1
  474. package/dist/v2/components/FileCard.d.ts +75 -0
  475. package/dist/v2/components/FileCard.d.ts.map +1 -0
  476. package/dist/v2/components/FileCard.js +169 -0
  477. package/dist/v2/components/FileCard.js.map +1 -0
  478. package/dist/v2/components/FilterTab.d.ts +9 -9
  479. package/dist/v2/components/FilterTab.d.ts.map +1 -1
  480. package/dist/v2/components/FilterTab.js +2 -1
  481. package/dist/v2/components/FilterTab.js.map +1 -1
  482. package/dist/v2/components/FormGrid.d.ts +9 -4
  483. package/dist/v2/components/FormGrid.d.ts.map +1 -1
  484. package/dist/v2/components/FormGrid.js +11 -1
  485. package/dist/v2/components/FormGrid.js.map +1 -1
  486. package/dist/v2/components/FormikDisplay.d.ts +6 -6
  487. package/dist/v2/components/FormikDisplay.d.ts.map +1 -1
  488. package/dist/v2/components/FormikDisplay.js.map +1 -1
  489. package/dist/v2/components/Input.d.ts +6 -6
  490. package/dist/v2/components/Input.d.ts.map +1 -1
  491. package/dist/v2/components/Input.js.map +1 -1
  492. package/dist/v2/components/KPICard.d.ts +43 -13
  493. package/dist/v2/components/KPICard.d.ts.map +1 -1
  494. package/dist/v2/components/KPICard.js +53 -14
  495. package/dist/v2/components/KPICard.js.map +1 -1
  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 +3 -3
  501. package/dist/v2/components/KV.d.ts.map +1 -1
  502. package/dist/v2/components/KV.js.map +1 -1
  503. package/dist/v2/components/KVGrid.d.ts +2 -2
  504. package/dist/v2/components/KVGrid.d.ts.map +1 -1
  505. package/dist/v2/components/KVGrid.js +8 -1
  506. package/dist/v2/components/KVGrid.js.map +1 -1
  507. package/dist/v2/components/Layout.d.ts +7 -7
  508. package/dist/v2/components/Layout.d.ts.map +1 -1
  509. package/dist/v2/components/Layout.js.map +1 -1
  510. package/dist/v2/components/MobileRowCard.d.ts +13 -13
  511. package/dist/v2/components/MobileRowCard.d.ts.map +1 -1
  512. package/dist/v2/components/MobileRowCard.js.map +1 -1
  513. package/dist/v2/components/Modal.d.ts +12 -12
  514. package/dist/v2/components/Modal.d.ts.map +1 -1
  515. package/dist/v2/components/Modal.js.map +1 -1
  516. package/dist/v2/components/NetworkErrorPage.d.ts +1 -1
  517. package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -1
  518. package/dist/v2/components/NetworkErrorPage.js.map +1 -1
  519. package/dist/v2/components/NumberInput.d.ts +14 -14
  520. package/dist/v2/components/NumberInput.d.ts.map +1 -1
  521. package/dist/v2/components/NumberInput.js +7 -6
  522. package/dist/v2/components/NumberInput.js.map +1 -1
  523. package/dist/v2/components/OverflowMenu.d.ts +14 -14
  524. package/dist/v2/components/OverflowMenu.d.ts.map +1 -1
  525. package/dist/v2/components/OverflowMenu.js +4 -8
  526. package/dist/v2/components/OverflowMenu.js.map +1 -1
  527. package/dist/v2/components/PdfViewer.d.ts +9 -9
  528. package/dist/v2/components/PdfViewer.d.ts.map +1 -1
  529. package/dist/v2/components/PdfViewer.js.map +1 -1
  530. package/dist/v2/components/ProgressBar.d.ts +10 -10
  531. package/dist/v2/components/ProgressBar.d.ts.map +1 -1
  532. package/dist/v2/components/ProgressBar.js.map +1 -1
  533. package/dist/v2/components/Radio.d.ts +7 -7
  534. package/dist/v2/components/Radio.d.ts.map +1 -1
  535. package/dist/v2/components/Radio.js.map +1 -1
  536. package/dist/v2/components/SectionErrorBoundary.d.ts +89 -0
  537. package/dist/v2/components/SectionErrorBoundary.d.ts.map +1 -0
  538. package/dist/v2/components/SectionErrorBoundary.js +221 -0
  539. package/dist/v2/components/SectionErrorBoundary.js.map +1 -0
  540. package/dist/v2/components/SectionHeader.d.ts +5 -5
  541. package/dist/v2/components/SectionHeader.d.ts.map +1 -1
  542. package/dist/v2/components/SectionHeader.js.map +1 -1
  543. package/dist/v2/components/Segmented.d.ts +11 -11
  544. package/dist/v2/components/Segmented.d.ts.map +1 -1
  545. package/dist/v2/components/Segmented.js.map +1 -1
  546. package/dist/v2/components/Select.d.ts +33 -15
  547. package/dist/v2/components/Select.d.ts.map +1 -1
  548. package/dist/v2/components/Select.js +147 -30
  549. package/dist/v2/components/Select.js.map +1 -1
  550. package/dist/v2/components/ServerErrorPage.d.ts +1 -1
  551. package/dist/v2/components/ServerErrorPage.d.ts.map +1 -1
  552. package/dist/v2/components/ServerErrorPage.js.map +1 -1
  553. package/dist/v2/components/Skeleton.d.ts +15 -15
  554. package/dist/v2/components/Skeleton.d.ts.map +1 -1
  555. package/dist/v2/components/Skeleton.js.map +1 -1
  556. package/dist/v2/components/SkipLink.d.ts +2 -2
  557. package/dist/v2/components/SkipLink.d.ts.map +1 -1
  558. package/dist/v2/components/SkipLink.js.map +1 -1
  559. package/dist/v2/components/Status.d.ts +3 -3
  560. package/dist/v2/components/Status.d.ts.map +1 -1
  561. package/dist/v2/components/Status.js.map +1 -1
  562. package/dist/v2/components/Stepper.d.ts +28 -22
  563. package/dist/v2/components/Stepper.d.ts.map +1 -1
  564. package/dist/v2/components/Stepper.js +31 -5
  565. package/dist/v2/components/Stepper.js.map +1 -1
  566. package/dist/v2/components/Surface.d.ts +94 -0
  567. package/dist/v2/components/Surface.d.ts.map +1 -0
  568. package/dist/v2/components/Surface.js +163 -0
  569. package/dist/v2/components/Surface.js.map +1 -0
  570. package/dist/v2/components/Switch.d.ts +4 -4
  571. package/dist/v2/components/Switch.d.ts.map +1 -1
  572. package/dist/v2/components/Switch.js.map +1 -1
  573. package/dist/v2/components/Tabs.d.ts +6 -6
  574. package/dist/v2/components/Tabs.d.ts.map +1 -1
  575. package/dist/v2/components/Tabs.js.map +1 -1
  576. package/dist/v2/components/TelInput.d.ts +8 -8
  577. package/dist/v2/components/TelInput.d.ts.map +1 -1
  578. package/dist/v2/components/TelInput.js +18 -18
  579. package/dist/v2/components/TelInput.js.map +1 -1
  580. package/dist/v2/components/Textarea.d.ts +1 -1
  581. package/dist/v2/components/Textarea.d.ts.map +1 -1
  582. package/dist/v2/components/Textarea.js.map +1 -1
  583. package/dist/v2/components/TimePicker.d.ts +11 -11
  584. package/dist/v2/components/TimePicker.d.ts.map +1 -1
  585. package/dist/v2/components/TimePicker.js.map +1 -1
  586. package/dist/v2/components/Toast.d.ts +6 -6
  587. package/dist/v2/components/Toast.d.ts.map +1 -1
  588. package/dist/v2/components/Toast.js +9 -8
  589. package/dist/v2/components/Toast.js.map +1 -1
  590. package/dist/v2/components/Tooltip.d.ts +1 -1
  591. package/dist/v2/components/Tooltip.d.ts.map +1 -1
  592. package/dist/v2/components/Tooltip.js.map +1 -1
  593. package/dist/v2/components/index.d.ts +170 -0
  594. package/dist/v2/components/index.d.ts.map +1 -1
  595. package/dist/v2/components/index.js +35 -0
  596. package/dist/v2/components/index.js.map +1 -1
  597. package/dist/v2/index.d.ts.map +1 -1
  598. package/dist/v2/index.js.map +1 -1
  599. package/dist/v2/models/favorite.d.ts +1 -1
  600. package/dist/v2/models/favorite.d.ts.map +1 -1
  601. package/dist/v2/models/favorite.js.map +1 -1
  602. package/dist/v2/models/personalization.d.ts +13 -13
  603. package/dist/v2/models/personalization.d.ts.map +1 -1
  604. package/dist/v2/models/personalization.js.map +1 -1
  605. package/dist/v2/models/referentiel.d.ts +11 -11
  606. package/dist/v2/models/referentiel.d.ts.map +1 -1
  607. package/dist/v2/models/referentiel.js.map +1 -1
  608. package/dist/v2/models/savedFilter.d.ts +8 -8
  609. package/dist/v2/models/savedFilter.d.ts.map +1 -1
  610. package/dist/v2/models/savedFilter.js.map +1 -1
  611. package/dist/v2/patterns/ActionBar.d.ts +33 -33
  612. package/dist/v2/patterns/ActionBar.d.ts.map +1 -1
  613. package/dist/v2/patterns/ActionBar.js +2 -1
  614. package/dist/v2/patterns/ActionBar.js.map +1 -1
  615. package/dist/v2/patterns/BulkActionBar.d.ts +12 -12
  616. package/dist/v2/patterns/BulkActionBar.d.ts.map +1 -1
  617. package/dist/v2/patterns/BulkActionBar.js +2 -1
  618. package/dist/v2/patterns/BulkActionBar.js.map +1 -1
  619. package/dist/v2/patterns/CollapsibleDataGrid.d.ts +15 -15
  620. package/dist/v2/patterns/CollapsibleDataGrid.d.ts.map +1 -1
  621. package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -1
  622. package/dist/v2/patterns/ColumnsToggle.d.ts +7 -7
  623. package/dist/v2/patterns/ColumnsToggle.d.ts.map +1 -1
  624. package/dist/v2/patterns/ColumnsToggle.js +4 -8
  625. package/dist/v2/patterns/ColumnsToggle.js.map +1 -1
  626. package/dist/v2/patterns/DataGridSettingsMenu.d.ts +12 -12
  627. package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -1
  628. package/dist/v2/patterns/DataGridSettingsMenu.js +9 -8
  629. package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -1
  630. package/dist/v2/patterns/DataGridToolbar.d.ts +40 -40
  631. package/dist/v2/patterns/DataGridToolbar.d.ts.map +1 -1
  632. package/dist/v2/patterns/DataGridToolbar.js +2 -1
  633. package/dist/v2/patterns/DataGridToolbar.js.map +1 -1
  634. package/dist/v2/patterns/DataGridVirtualized.d.ts +27 -27
  635. package/dist/v2/patterns/DataGridVirtualized.d.ts.map +1 -1
  636. package/dist/v2/patterns/DataGridVirtualized.js.map +1 -1
  637. package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts +5 -5
  638. package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts.map +1 -1
  639. package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
  640. package/dist/v2/patterns/FavoriteColumn.d.ts +15 -15
  641. package/dist/v2/patterns/FavoriteColumn.d.ts.map +1 -1
  642. package/dist/v2/patterns/FavoriteColumn.js +14 -61
  643. package/dist/v2/patterns/FavoriteColumn.js.map +1 -1
  644. package/dist/v2/patterns/FavoritesFilter.d.ts +10 -10
  645. package/dist/v2/patterns/FavoritesFilter.d.ts.map +1 -1
  646. package/dist/v2/patterns/FavoritesFilter.js +2 -1
  647. package/dist/v2/patterns/FavoritesFilter.js.map +1 -1
  648. package/dist/v2/patterns/FormErrorSummary.d.ts +4 -4
  649. package/dist/v2/patterns/FormErrorSummary.d.ts.map +1 -1
  650. package/dist/v2/patterns/FormErrorSummary.js.map +1 -1
  651. package/dist/v2/patterns/FormPageShell.d.ts +4 -4
  652. package/dist/v2/patterns/FormPageShell.d.ts.map +1 -1
  653. package/dist/v2/patterns/FormPageShell.js.map +1 -1
  654. package/dist/v2/patterns/FormSection.d.ts +19 -8
  655. package/dist/v2/patterns/FormSection.d.ts.map +1 -1
  656. package/dist/v2/patterns/FormSection.js +106 -71
  657. package/dist/v2/patterns/FormSection.js.map +1 -1
  658. package/dist/v2/patterns/FormikCheckbox.d.ts +77 -0
  659. package/dist/v2/patterns/FormikCheckbox.d.ts.map +1 -0
  660. package/dist/v2/patterns/FormikCheckbox.js +147 -0
  661. package/dist/v2/patterns/FormikCheckbox.js.map +1 -0
  662. package/dist/v2/patterns/FormikCheckboxGroup.d.ts +6 -6
  663. package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -1
  664. package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -1
  665. package/dist/v2/patterns/FormikCombobox.d.ts +18 -12
  666. package/dist/v2/patterns/FormikCombobox.d.ts.map +1 -1
  667. package/dist/v2/patterns/FormikCombobox.js +5 -2
  668. package/dist/v2/patterns/FormikCombobox.js.map +1 -1
  669. package/dist/v2/patterns/FormikDatePicker.d.ts +48 -8
  670. package/dist/v2/patterns/FormikDatePicker.d.ts.map +1 -1
  671. package/dist/v2/patterns/FormikDatePicker.js +58 -65
  672. package/dist/v2/patterns/FormikDatePicker.js.map +1 -1
  673. package/dist/v2/patterns/FormikDateTimePicker.d.ts +111 -0
  674. package/dist/v2/patterns/FormikDateTimePicker.d.ts.map +1 -0
  675. package/dist/v2/patterns/FormikDateTimePicker.js +158 -0
  676. package/dist/v2/patterns/FormikDateTimePicker.js.map +1 -0
  677. package/dist/v2/patterns/FormikErrorFocus.d.ts +3 -3
  678. package/dist/v2/patterns/FormikErrorFocus.d.ts.map +1 -1
  679. package/dist/v2/patterns/FormikErrorFocus.js.map +1 -1
  680. package/dist/v2/patterns/FormikFile.d.ts +8 -8
  681. package/dist/v2/patterns/FormikFile.d.ts.map +1 -1
  682. package/dist/v2/patterns/FormikFile.js.map +1 -1
  683. package/dist/v2/patterns/FormikInput.d.ts +51 -6
  684. package/dist/v2/patterns/FormikInput.d.ts.map +1 -1
  685. package/dist/v2/patterns/FormikInput.js +53 -2
  686. package/dist/v2/patterns/FormikInput.js.map +1 -1
  687. package/dist/v2/patterns/FormikRadioGroup.d.ts +80 -0
  688. package/dist/v2/patterns/FormikRadioGroup.d.ts.map +1 -0
  689. package/dist/v2/patterns/FormikRadioGroup.js +148 -0
  690. package/dist/v2/patterns/FormikRadioGroup.js.map +1 -0
  691. package/dist/v2/patterns/FormikReferentielField.d.ts +8 -8
  692. package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -1
  693. package/dist/v2/patterns/FormikReferentielField.js.map +1 -1
  694. package/dist/v2/patterns/FormikSelect.d.ts +41 -12
  695. package/dist/v2/patterns/FormikSelect.d.ts.map +1 -1
  696. package/dist/v2/patterns/FormikSelect.js +32 -3
  697. package/dist/v2/patterns/FormikSelect.js.map +1 -1
  698. package/dist/v2/patterns/FormikTextarea.d.ts +14 -6
  699. package/dist/v2/patterns/FormikTextarea.d.ts.map +1 -1
  700. package/dist/v2/patterns/FormikTextarea.js +5 -2
  701. package/dist/v2/patterns/FormikTextarea.js.map +1 -1
  702. package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts +21 -8
  703. package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts.map +1 -1
  704. package/dist/v2/patterns/KeyboardShortcutsHelp.js +27 -14
  705. package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
  706. package/dist/v2/patterns/NetworkErrorBanner.d.ts +4 -4
  707. package/dist/v2/patterns/NetworkErrorBanner.d.ts.map +1 -1
  708. package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -1
  709. package/dist/v2/patterns/PageContent.d.ts +3 -3
  710. package/dist/v2/patterns/PageContent.d.ts.map +1 -1
  711. package/dist/v2/patterns/PageContent.js.map +1 -1
  712. package/dist/v2/patterns/ReferentielField.d.ts +49 -49
  713. package/dist/v2/patterns/ReferentielField.d.ts.map +1 -1
  714. package/dist/v2/patterns/ReferentielField.js +2 -1
  715. package/dist/v2/patterns/ReferentielField.js.map +1 -1
  716. package/dist/v2/patterns/RowFavoriteToggle.d.ts +92 -0
  717. package/dist/v2/patterns/RowFavoriteToggle.d.ts.map +1 -0
  718. package/dist/v2/patterns/RowFavoriteToggle.js +127 -0
  719. package/dist/v2/patterns/RowFavoriteToggle.js.map +1 -0
  720. package/dist/v2/patterns/SaveFilterDialog.d.ts +10 -10
  721. package/dist/v2/patterns/SaveFilterDialog.d.ts.map +1 -1
  722. package/dist/v2/patterns/SaveFilterDialog.js +9 -8
  723. package/dist/v2/patterns/SaveFilterDialog.js.map +1 -1
  724. package/dist/v2/patterns/SavedFiltersMenu.d.ts +7 -7
  725. package/dist/v2/patterns/SavedFiltersMenu.d.ts.map +1 -1
  726. package/dist/v2/patterns/SavedFiltersMenu.js +9 -8
  727. package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -1
  728. package/dist/v2/patterns/SkeletonPageShell.d.ts +7 -7
  729. package/dist/v2/patterns/SkeletonPageShell.d.ts.map +1 -1
  730. package/dist/v2/patterns/SkeletonPageShell.js.map +1 -1
  731. package/dist/v2/patterns/SortableHeader.d.ts +1 -1
  732. package/dist/v2/patterns/SortableHeader.d.ts.map +1 -1
  733. package/dist/v2/patterns/SortableHeader.js.map +1 -1
  734. package/dist/v2/patterns/Tour.d.ts +12 -12
  735. package/dist/v2/patterns/Tour.d.ts.map +1 -1
  736. package/dist/v2/patterns/Tour.js +9 -8
  737. package/dist/v2/patterns/Tour.js.map +1 -1
  738. package/dist/v2/patterns/_dataGridShared.d.ts +25 -6
  739. package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -1
  740. package/dist/v2/patterns/_dataGridShared.js +37 -3
  741. package/dist/v2/patterns/_dataGridShared.js.map +1 -1
  742. package/dist/v2/patterns/_pickerSerialisation.d.ts +44 -0
  743. package/dist/v2/patterns/_pickerSerialisation.d.ts.map +1 -0
  744. package/dist/v2/patterns/_pickerSerialisation.js +81 -0
  745. package/dist/v2/patterns/_pickerSerialisation.js.map +1 -0
  746. package/dist/v2/patterns/_useColumnReorder.d.ts +1 -1
  747. package/dist/v2/patterns/_useColumnReorder.d.ts.map +1 -1
  748. package/dist/v2/patterns/_useColumnReorder.js.map +1 -1
  749. package/dist/v2/patterns/_useColumnResize.d.ts +1 -1
  750. package/dist/v2/patterns/_useColumnResize.d.ts.map +1 -1
  751. package/dist/v2/patterns/_useColumnResize.js.map +1 -1
  752. package/dist/v2/patterns/index.d.ts +114 -0
  753. package/dist/v2/patterns/index.d.ts.map +1 -1
  754. package/dist/v2/patterns/index.js +34 -0
  755. package/dist/v2/patterns/index.js.map +1 -1
  756. package/dist/v2/personalization/PersonalizationProvider.d.ts +9 -9
  757. package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -1
  758. package/dist/v2/personalization/PersonalizationProvider.js.map +1 -1
  759. package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts +1 -1
  760. package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts.map +1 -1
  761. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
  762. package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts +1 -1
  763. package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts.map +1 -1
  764. package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
  765. package/dist/v2/personalization/capabilities/favoritesView.d.ts +3 -3
  766. package/dist/v2/personalization/capabilities/favoritesView.d.ts.map +1 -1
  767. package/dist/v2/personalization/capabilities/favoritesView.js.map +1 -1
  768. package/dist/v2/personalization/capabilities/gridPreferences.d.ts +100 -0
  769. package/dist/v2/personalization/capabilities/gridPreferences.d.ts.map +1 -0
  770. package/dist/v2/personalization/capabilities/gridPreferences.js +215 -0
  771. package/dist/v2/personalization/capabilities/gridPreferences.js.map +1 -0
  772. package/dist/v2/personalization/capabilities/index.d.ts +6 -0
  773. package/dist/v2/personalization/capabilities/index.d.ts.map +1 -1
  774. package/dist/v2/personalization/capabilities/index.js +13 -0
  775. package/dist/v2/personalization/capabilities/index.js.map +1 -1
  776. package/dist/v2/personalization/capabilities/savedFilters.d.ts +3 -3
  777. package/dist/v2/personalization/capabilities/savedFilters.d.ts.map +1 -1
  778. package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -1
  779. package/dist/v2/personalization/createPersonalizationStore.d.ts +8 -8
  780. package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -1
  781. package/dist/v2/personalization/createPersonalizationStore.js.map +1 -1
  782. package/dist/v2/personalization/index.d.ts +18 -0
  783. package/dist/v2/personalization/index.d.ts.map +1 -1
  784. package/dist/v2/personalization/index.js +13 -0
  785. package/dist/v2/personalization/index.js.map +1 -1
  786. package/dist/v2/personalization/schema.d.ts +2 -2
  787. package/dist/v2/personalization/schema.d.ts.map +1 -1
  788. package/dist/v2/personalization/schema.js.map +1 -1
  789. package/dist/v2/personalization/types.d.ts +19 -19
  790. package/dist/v2/personalization/types.d.ts.map +1 -1
  791. package/dist/v2/personalization/types.js.map +1 -1
  792. package/dist/v2/referentiel/ReferentielProvider.d.ts +4 -4
  793. package/dist/v2/referentiel/ReferentielProvider.d.ts.map +1 -1
  794. package/dist/v2/referentiel/ReferentielProvider.js.map +1 -1
  795. package/dist/v2/referentiel/useReferentielOptions.d.ts +4 -4
  796. package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -1
  797. package/dist/v2/referentiel/useReferentielOptions.js.map +1 -1
  798. package/dist/v2/referentiel/useReferentielSearch.d.ts +3 -3
  799. package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -1
  800. package/dist/v2/referentiel/useReferentielSearch.js.map +1 -1
  801. package/dist/v2/theme/createPortnetTheme.d.ts +32 -7
  802. package/dist/v2/theme/createPortnetTheme.d.ts.map +1 -1
  803. package/dist/v2/theme/createPortnetTheme.js +25 -1
  804. package/dist/v2/theme/createPortnetTheme.js.map +1 -1
  805. package/dist/v2/types/datagrid.d.ts +59 -59
  806. package/dist/v2/types/datagrid.d.ts.map +1 -1
  807. package/dist/v2/types/datagrid.js.map +1 -1
  808. package/dist/v2/utils/apiError.d.ts +65 -4
  809. package/dist/v2/utils/apiError.d.ts.map +1 -1
  810. package/dist/v2/utils/apiError.js +69 -6
  811. package/dist/v2/utils/apiError.js.map +1 -1
  812. package/dist/v2/utils/index.d.ts +1 -0
  813. package/dist/v2/utils/index.d.ts.map +1 -1
  814. package/dist/v2/utils/index.js +7 -0
  815. package/dist/v2/utils/index.js.map +1 -1
  816. package/dist/v2/utils/mergeLabels.d.ts +59 -0
  817. package/dist/v2/utils/mergeLabels.d.ts.map +1 -0
  818. package/dist/v2/utils/mergeLabels.js +93 -0
  819. package/dist/v2/utils/mergeLabels.js.map +1 -0
  820. package/package.json +23 -15
@@ -0,0 +1,820 @@
1
+ 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); }
2
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
5
+ 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; }
6
+ 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; }
7
+ 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; }
8
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
9
+ 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); }
10
+ import * as React from "react";
11
+ import Box from "@mui/material/Box";
12
+ import Table from "@mui/material/Table";
13
+ import TableHead from "@mui/material/TableHead";
14
+ import TableBody from "@mui/material/TableBody";
15
+ import TableRow from "@mui/material/TableRow";
16
+ import TableCell from "@mui/material/TableCell";
17
+ import Checkbox from "@mui/material/Checkbox";
18
+ import DragIndicatorIcon from "@mui/icons-material/DragIndicator";
19
+ import useMediaQuery from "@mui/material/useMediaQuery";
20
+ import { useTheme } from "@mui/material/styles";
21
+ import { SkeletonRow } from "../components/Skeleton";
22
+ import SortableHeader, { applySort, getAriaSort } from "./SortableHeader";
23
+ import useDelayedFlag from "../hooks/useDelayedFlag";
24
+ import { DEFAULT_MAX_BODY_HEIGHT, mergeLabels, useColumnsStabilityWarn, applyColumnOrder, CONTAINER_SX, TABLE_BY_DENSITY, ROW_CLICKABLE_SX, ROW_STATIC_SX, HEADER_CHECKBOX_CELL_SX, BODY_CHECKBOX_CELL_SX, HOVER_ONLY_CELL_SX, ERROR_CELL_SX, ERROR_INNER_SX, Pagination } from "./_dataGridShared";
25
+ import useColumnResize from "./_useColumnResize";
26
+ import useColumnReorder from "./_useColumnReorder";
27
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
28
+ /**
29
+ * DataGrid - Portnet UI v2 (pattern)
30
+ *
31
+ * Charter §03 · Component "DataGrid · Table". Refactor of legacy PuiTable.
32
+ *
33
+ * Column sizing (R2, canonical):
34
+ * - tableLayout: "auto" — columns grow proportionally from preferred widths.
35
+ * - Table carries computed `min-width` = Σ (clamped) explicit widths
36
+ * + (UNSIZED_COL_MIN_DEFAULT × unsized cols) + checkbox if any.
37
+ * Each column's contribution is clamped to COL_MINWIDTH_CAP so a wide
38
+ * preferred width can't force the whole table to overflow its container.
39
+ * - When container >= min-width → table fills to 100%, columns expand
40
+ * proportionally toward their preferred widths, no empty trailing strip.
41
+ * - When container < min-width → horizontal scroll on the container.
42
+ *
43
+ * Row actions (R2 robust):
44
+ * - The actions cell is rendered at width:0 — it contributes nothing
45
+ * to the column-width distribution. The actions themselves render
46
+ * as an ABSOLUTELY positioned overlay anchored to the row's right
47
+ * edge, invisible by default and revealed on hover / focus-within /
48
+ * coarse pointer. On hover, the overlay carries a background that
49
+ * masks the data column(s) it covers.
50
+ * - The actions column header carries a visually-hidden accessible
51
+ * name from labels.actionsHeader (default "Actions").
52
+ *
53
+ * Mobile card view (R1 mobile, opt-in):
54
+ * - When `renderMobileCard` is provided AND viewport is below
55
+ * `mobileBreakpoint` (default "sm"), DataGrid swaps the <Table> for
56
+ * a vertical stack of cards. Host owns the card layout.
57
+ *
58
+ * Accessible name (WCAG 1.3.1 / 4.1.2):
59
+ * - Resolution chain: ariaLabel prop → labels.tableAria → mergeLabels()
60
+ * default. When both explicit sources are missing, useAriaLabelWarn
61
+ * fires a dev console.warn.
62
+ */
63
+
64
+ /**
65
+ * Dev-only hook — warn once on mount when neither `ariaLabel` nor
66
+ * `labels.tableAria` carries a contextual name for the table. Fires only
67
+ * in non-production builds; the inline check is dead-code-eliminated by
68
+ * minifiers when NODE_ENV is set to production at build time. Empty
69
+ * strings are treated as "not provided". Charter R-DG + WCAG 2.2 AA.
70
+ */
71
+ function useAriaLabelWarn(ariaLabel, labelsTableAria) {
72
+ React.useEffect(function () {
73
+ if (process.env["NODE_ENV"] === "production") return;
74
+ var hasAriaLabel = typeof ariaLabel === "string" && ariaLabel.trim().length > 0;
75
+ var hasLabelsAria = typeof labelsTableAria === "string" && labelsTableAria.trim().length > 0;
76
+ if (hasAriaLabel || hasLabelsAria) return;
77
+
78
+ // eslint-disable-next-line no-console
79
+ console.warn("[v2.DataGrid] No explicit `ariaLabel` prop or `labels.tableAria` — " + "falling back to the lib default. WCAG 1.3.1 + Charter R-DG require " + "a contextual table name. Pass `ariaLabel` describing the data " + "(e.g. 'Marchandises du titre', 'Liste des titres d\\'importation') " + "or set `labels.tableAria` if the same name is reused module-wide.");
80
+ // fire once on mount — re-renders shouldn't re-warn even if the caller
81
+ // changes ariaLabel/labels.tableAria later; a first-paint miss is the
82
+ // signal we care about, not every subsequent render.
83
+ // eslint-disable-next-line react-hooks/exhaustive-deps
84
+ }, []);
85
+ }
86
+
87
+ /* R2 — Actions cell is a 0-width anchor for the absolute overlay.
88
+ * position:sticky right:0 glues the overlay's positioned ancestor to the
89
+ * visible right edge during horizontal scroll and provides a focus
90
+ * container. The strict 0 width makes the cell contribute nothing to
91
+ * layout; overflow:visible lets the absolute overlay render outside it. */
92
+ var ROW_ACTIONS_CELL_SX = Object.freeze({
93
+ position: "sticky",
94
+ right: 0,
95
+ zIndex: 1,
96
+ width: 0,
97
+ minWidth: 0,
98
+ maxWidth: 0,
99
+ padding: 0,
100
+ background: "transparent",
101
+ borderBottom: "1px solid var(--border)",
102
+ overflow: "visible"
103
+ });
104
+ var ROW_ACTIONS_HEAD_CELL_SX = Object.freeze({
105
+ position: "sticky",
106
+ right: 0,
107
+ top: 0,
108
+ zIndex: 3,
109
+ width: 0,
110
+ minWidth: 0,
111
+ maxWidth: 0,
112
+ padding: 0,
113
+ background: "var(--bg-subtle)",
114
+ borderBottom: "1px solid var(--border)"
115
+ });
116
+
117
+ /* a11y — Standard sr-only / visually-hidden recipe. Gives the
118
+ * auto-generated actions column header an accessible name without adding
119
+ * visible text. clip-rect keeps it painted into the a11y tree while
120
+ * removing it from visual layout. */
121
+ var VISUALLY_HIDDEN_SX = Object.freeze({
122
+ position: "absolute",
123
+ width: "1px",
124
+ height: "1px",
125
+ padding: 0,
126
+ margin: "-1px",
127
+ overflow: "hidden",
128
+ clip: "rect(0, 0, 0, 0)",
129
+ whiteSpace: "nowrap",
130
+ borderWidth: 0
131
+ });
132
+
133
+ /* R2 — Overlay floats over the row's right edge. Invisible by default,
134
+ * visible on hover / focus-within / coarse pointer. The parent
135
+ * ROW_ACTIONS_CELL_SX (position:sticky) is the containing block. */
136
+ var ROW_ACTIONS_OVERLAY_SX = Object.freeze({
137
+ position: "absolute",
138
+ right: "var(--s-3)",
139
+ top: "50%",
140
+ transform: "translateY(-50%)",
141
+ display: "flex",
142
+ alignItems: "center",
143
+ justifyContent: "flex-end",
144
+ gap: "var(--s-1)",
145
+ whiteSpace: "nowrap",
146
+ opacity: 0,
147
+ pointerEvents: "none",
148
+ transition: "opacity var(--duration-fast, 120ms) ease",
149
+ // Visible "pill" that masks the data column(s) underneath when revealed
150
+ background: "var(--bg-hover)",
151
+ padding: "var(--s-1) var(--s-2)",
152
+ borderRadius: "var(--r-md)",
153
+ boxShadow: "var(--shadow-sm)",
154
+ "tr:hover &, tr:focus-within &": {
155
+ opacity: 1,
156
+ pointerEvents: "auto"
157
+ },
158
+ "@media (pointer: coarse)": {
159
+ opacity: 1,
160
+ pointerEvents: "auto"
161
+ }
162
+ });
163
+
164
+ /* R2 — Filler cells stay at width:0 so they don't take any proportional
165
+ * residual under tableLayout:auto. (Local width:0 variants — distinct
166
+ * from _dataGridShared's exports, which are not imported here.) */
167
+ var FILLER_CELL_SX = Object.freeze({
168
+ padding: 0,
169
+ width: 0,
170
+ minWidth: 0,
171
+ maxWidth: 0,
172
+ borderBottom: "1px solid var(--border)"
173
+ });
174
+ var FILLER_HEAD_CELL_SX = Object.freeze({
175
+ padding: 0,
176
+ width: 0,
177
+ minWidth: 0,
178
+ maxWidth: 0,
179
+ position: "sticky",
180
+ top: 0,
181
+ zIndex: 1,
182
+ background: "var(--bg-subtle)",
183
+ borderBottom: "1px solid var(--border)"
184
+ });
185
+
186
+ /* DG-R1 — reorder grip button. Hidden (opacity 0) until the header is hovered /
187
+ * focus-within, and always revealed while itself focus-visible so it stays
188
+ * Tab-reachable. Absolutely positioned in the header cell's inline-start
189
+ * padding; background matches the header so it masks the sliver it overlaps. */
190
+ var REORDER_GRIP_SX = Object.freeze({
191
+ position: "absolute",
192
+ insetInlineStart: 2,
193
+ top: "50%",
194
+ transform: "translateY(-50%)",
195
+ zIndex: 2,
196
+ display: "inline-flex",
197
+ alignItems: "center",
198
+ justifyContent: "center",
199
+ width: 18,
200
+ height: 18,
201
+ padding: 0,
202
+ border: "none",
203
+ borderRadius: "var(--r-sm)",
204
+ background: "var(--bg-subtle)",
205
+ color: "var(--fg-subtle)",
206
+ cursor: "grab",
207
+ opacity: 0,
208
+ pointerEvents: "none",
209
+ transition: "opacity var(--duration-fast, 120ms) ease",
210
+ fontFamily: "inherit",
211
+ "th:hover &, th:focus-within &": {
212
+ opacity: 1,
213
+ pointerEvents: "auto"
214
+ },
215
+ "@media (pointer: coarse)": {
216
+ opacity: 1,
217
+ pointerEvents: "auto"
218
+ },
219
+ "&:focus-visible": {
220
+ outline: "2px solid var(--accent)",
221
+ outlineOffset: "-1px",
222
+ opacity: 1,
223
+ pointerEvents: "auto"
224
+ }
225
+ });
226
+
227
+ /* ── Mobile card view SX (R1 mobile) ─────────────────────────────── */
228
+
229
+ var CARD_STACK_SX = Object.freeze({
230
+ display: "flex",
231
+ flexDirection: "column",
232
+ gap: "var(--s-2)",
233
+ padding: "var(--s-3)"
234
+ });
235
+ var CARD_BASE_SX = Object.freeze({
236
+ background: "var(--surface)",
237
+ border: "1px solid var(--border)",
238
+ borderRadius: "var(--r-md)",
239
+ boxShadow: "var(--shadow-xs)",
240
+ transition: "background 60ms ease, border-color 60ms ease",
241
+ minHeight: 44
242
+ });
243
+ var CARD_CLICKABLE_SX = Object.freeze(_objectSpread(_objectSpread({}, CARD_BASE_SX), {}, {
244
+ cursor: "pointer",
245
+ "&:hover": {
246
+ background: "var(--bg-hover)"
247
+ },
248
+ "&:focus-visible": {
249
+ outline: "2px solid var(--accent)",
250
+ // --pui-outline-offset (2px in base.css :root) — aligns this focus
251
+ // ring with the rest of the v2 surface.
252
+ outlineOffset: "var(--pui-outline-offset)"
253
+ },
254
+ "&[data-active]": {
255
+ background: "var(--accent-soft)",
256
+ borderColor: "var(--accent)"
257
+ },
258
+ "&[data-selected]": {
259
+ background: "var(--accent-soft)",
260
+ borderColor: "var(--accent)"
261
+ }
262
+ }));
263
+ var CARD_SKELETON_SX = Object.freeze({
264
+ height: 90,
265
+ background: "var(--bg-subtle)",
266
+ borderRadius: "var(--r-md)",
267
+ animation: "pui-skeleton-shimmer 1.4s ease-in-out infinite",
268
+ "@media (prefers-reduced-motion: reduce)": {
269
+ animation: "none"
270
+ }
271
+ });
272
+ var CARD_EMPTY_WRAPPER_SX = Object.freeze({
273
+ padding: "var(--s-6) var(--s-4)"
274
+ });
275
+
276
+ /* R2 — Default min-width contribution for a column without an explicit
277
+ * `width`. 120 px is a sensible floor for a typical data cell. */
278
+ var UNSIZED_COL_MIN_DEFAULT = 120;
279
+
280
+ /* R2 — Upper bound on how much ANY single column may contribute to the
281
+ * table's hard min-width. A column may DECLARE a large preferred width and
282
+ * tableLayout:auto grows it toward that when the container has room, but
283
+ * its preferred width must not drag the table's min-width past this cap
284
+ * (below which horizontal scroll kicks in). */
285
+ var COL_MINWIDTH_CAP = 220;
286
+ function widthToNumber(w) {
287
+ if (typeof w === "number" && Number.isFinite(w)) return w;
288
+ if (typeof w === "string") {
289
+ var parsed = parseFloat(w);
290
+ if (!Number.isNaN(parsed)) return parsed;
291
+ }
292
+ return 0;
293
+ }
294
+
295
+ /* Default value accessor (`row[key]`) for an unconstrained row type. Typed
296
+ * against `unknown` so the single unknown->record assertion is legal
297
+ * without a double cast; noUncheckedIndexedAccess makes the result
298
+ * `unknown`, which the caller narrows / asserts at the render site. */
299
+ function readCellValue(row, key) {
300
+ return row[key];
301
+ }
302
+
303
+ /* Default getRowId (`(r) => r.id`). Typed against `unknown` so the single
304
+ * assertion is legal; `(unknown) => RowId` is assignable to the declared
305
+ * `(row: T) => RowId` by parameter contravariance. */
306
+ var defaultGetRowId = function defaultGetRowId(row) {
307
+ return row.id;
308
+ };
309
+ function DataGrid(_ref) {
310
+ var _ref$rows = _ref.rows,
311
+ rows = _ref$rows === void 0 ? [] : _ref$rows,
312
+ _ref$columns = _ref.columns,
313
+ rawColumns = _ref$columns === void 0 ? [] : _ref$columns,
314
+ _ref$loading = _ref.loading,
315
+ loading = _ref$loading === void 0 ? false : _ref$loading,
316
+ _ref$error = _ref.error,
317
+ error = _ref$error === void 0 ? null : _ref$error,
318
+ _ref$sort = _ref.sort,
319
+ sort = _ref$sort === void 0 ? [] : _ref$sort,
320
+ onSortChange = _ref.onSortChange,
321
+ selection = _ref.selection,
322
+ onSelectionChange = _ref.onSelectionChange,
323
+ pagination = _ref.pagination,
324
+ emptyState = _ref.emptyState,
325
+ filteredEmptyState = _ref.filteredEmptyState,
326
+ errorState = _ref.errorState,
327
+ _ref$getRowId = _ref.getRowId,
328
+ getRowId = _ref$getRowId === void 0 ? defaultGetRowId : _ref$getRowId,
329
+ onRowClick = _ref.onRowClick,
330
+ rowFlashId = _ref.rowFlashId,
331
+ activeRowId = _ref.activeRowId,
332
+ rowActions = _ref.rowActions,
333
+ hiddenColumns = _ref.hiddenColumns,
334
+ _ref$filtered = _ref.filtered,
335
+ filtered = _ref$filtered === void 0 ? false : _ref$filtered,
336
+ _ref$density = _ref.density,
337
+ density = _ref$density === void 0 ? "comfortable" : _ref$density,
338
+ ariaLabel = _ref.ariaLabel,
339
+ _ref$locale = _ref.locale,
340
+ locale = _ref$locale === void 0 ? "fr-FR" : _ref$locale,
341
+ labels = _ref.labels,
342
+ _ref$maxBodyHeight = _ref.maxBodyHeight,
343
+ maxBodyHeight = _ref$maxBodyHeight === void 0 ? DEFAULT_MAX_BODY_HEIGHT : _ref$maxBodyHeight,
344
+ _ref$resizable = _ref.resizable,
345
+ resizable = _ref$resizable === void 0 ? false : _ref$resizable,
346
+ columnWidths = _ref.columnWidths,
347
+ onColumnWidthsChange = _ref.onColumnWidthsChange,
348
+ _ref$reorderable = _ref.reorderable,
349
+ reorderable = _ref$reorderable === void 0 ? false : _ref$reorderable,
350
+ columnOrder = _ref.columnOrder,
351
+ onColumnOrderChange = _ref.onColumnOrderChange,
352
+ renderMobileCard = _ref.renderMobileCard,
353
+ _ref$mobileBreakpoint = _ref.mobileBreakpoint,
354
+ mobileBreakpoint = _ref$mobileBreakpoint === void 0 ? "sm" : _ref$mobileBreakpoint;
355
+ // WCAG 1.3.1 / 4.1.2 — dev guard: warn once on mount when no contextual
356
+ // table name has been provided by the caller.
357
+ useAriaLabelWarn(ariaLabel, labels === null || labels === void 0 ? void 0 : labels.tableAria);
358
+ var L = React.useMemo(function () {
359
+ return mergeLabels(labels);
360
+ }, [labels]);
361
+ var tableAria = ariaLabel != null ? ariaLabel : L.tableAria;
362
+ var showSkeleton = useDelayedFlag(loading);
363
+ useColumnsStabilityWarn(rawColumns);
364
+
365
+ // R1 mobile — detect xs viewport. Switch to card view only when the host
366
+ // opted in by passing renderMobileCard.
367
+ var theme = useTheme();
368
+ var isBelowBreakpoint = useMediaQuery(theme.breakpoints.down(mobileBreakpoint));
369
+ var useCardView = isBelowBreakpoint && typeof renderMobileCard === "function";
370
+ var orderedColumns = React.useMemo(function () {
371
+ return applyColumnOrder(rawColumns, columnOrder);
372
+ }, [rawColumns, columnOrder]);
373
+ var hiddenSet = React.useMemo(function () {
374
+ return hiddenColumns instanceof Set ? hiddenColumns : new Set(hiddenColumns || []);
375
+ }, [hiddenColumns]);
376
+ var columns = React.useMemo(function () {
377
+ return orderedColumns.filter(function (c) {
378
+ return !hiddenSet.has(c.key);
379
+ });
380
+ }, [orderedColumns, hiddenSet]);
381
+ var resize = useColumnResize(columnWidths, onColumnWidthsChange);
382
+ var reorder = useColumnReorder(columns, columnOrder, onColumnOrderChange, {
383
+ resizeIsActive: resize.isResizing
384
+ });
385
+
386
+ // DG-R1 — after a keyboard reorder the moved column's grip is re-rendered at
387
+ // a new position and the browser drops focus; re-focus it so repeated Arrow
388
+ // presses keep moving the same column. Keyed on the host-controlled order.
389
+ var pendingReorderFocusRef = React.useRef(null);
390
+ React.useEffect(function () {
391
+ var key = pendingReorderFocusRef.current;
392
+ if (!key || typeof document === "undefined") return;
393
+ pendingReorderFocusRef.current = null;
394
+ var escaped = typeof window !== "undefined" && window.CSS && typeof window.CSS.escape === "function" ? window.CSS.escape(key) : key;
395
+ var el = document.querySelector("[data-reorder-grip=\"".concat(escaped, "\"]"));
396
+ if (el instanceof HTMLElement) el.focus();
397
+ }, [columnOrder]);
398
+ var showCheckbox = !!onSelectionChange;
399
+ var hasRowActions = typeof rowActions === "function";
400
+ var colCount = columns.length + (showCheckbox ? 1 : 0) + 1 + (hasRowActions ? 1 : 0);
401
+ var sortable = function sortable(col) {
402
+ return col.sortable !== false && !!col.key && !!onSortChange;
403
+ };
404
+ var selectedSet = React.useMemo(function () {
405
+ return selection instanceof Set ? selection : new Set(selection || []);
406
+ }, [selection]);
407
+ var allSelected = rows.length > 0 && rows.every(function (r) {
408
+ return selectedSet.has(getRowId(r));
409
+ });
410
+ var someSelected = !allSelected && rows.some(function (r) {
411
+ return selectedSet.has(getRowId(r));
412
+ });
413
+ var toggleAll = function toggleAll() {
414
+ if (!onSelectionChange) return;
415
+ if (allSelected) onSelectionChange(new Set());else onSelectionChange(new Set(rows.map(getRowId)));
416
+ };
417
+ var toggleRow = function toggleRow(id) {
418
+ if (!onSelectionChange) return;
419
+ var next = new Set(selectedSet);
420
+ if (next.has(id)) next["delete"](id);else next.add(id);
421
+ onSelectionChange(next);
422
+ };
423
+ var handleRowKeyDown = function handleRowKeyDown(row) {
424
+ return function (e) {
425
+ if (!onRowClick) return;
426
+ if (e.key === "Enter" || e.key === " ") {
427
+ e.preventDefault();
428
+ onRowClick(row);
429
+ }
430
+ };
431
+ };
432
+ var scrollContainerSx = React.useMemo(function () {
433
+ return {
434
+ overflow: "auto",
435
+ maxHeight: maxBodyHeight,
436
+ width: "100%"
437
+ };
438
+ }, [maxBodyHeight]);
439
+
440
+ /* R2 — Computed table min-width. Each column's contribution is clamped
441
+ * to COL_MINWIDTH_CAP; unsized columns contribute UNSIZED_COL_MIN_DEFAULT;
442
+ * the checkbox column adds ~48px. The rowActions cell contributes 0. */
443
+ var tableMinWidth = React.useMemo(function () {
444
+ var sum = 0;
445
+ var _iterator = _createForOfIteratorHelper(columns),
446
+ _step;
447
+ try {
448
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
449
+ var col = _step.value;
450
+ var w = widthToNumber(col.width);
451
+ var contribution = w > 0 ? Math.min(w, COL_MINWIDTH_CAP) : UNSIZED_COL_MIN_DEFAULT;
452
+ sum += contribution;
453
+ }
454
+ } catch (err) {
455
+ _iterator.e(err);
456
+ } finally {
457
+ _iterator.f();
458
+ }
459
+ if (showCheckbox) sum += 48;
460
+ return sum;
461
+ }, [columns, showCheckbox]);
462
+
463
+ // R2 — tableLayout:"auto" + computed minWidth. (SxProps-typed so the
464
+ // tableLayout literal stays typed; the density base is narrowed to a
465
+ // SystemStyleObject at the spread to avoid the fn/array arms of SxProps.)
466
+ var tableSx = React.useMemo(function () {
467
+ return _objectSpread(_objectSpread({}, TABLE_BY_DENSITY[density] || TABLE_BY_DENSITY.comfortable), {}, {
468
+ width: "100%",
469
+ minWidth: tableMinWidth,
470
+ tableLayout: "auto"
471
+ });
472
+ }, [density, tableMinWidth]);
473
+
474
+ /* DG-1 (perf) — the desktop body renders EVERY row (no virtualization), so
475
+ * building the cell sx inline per row × per column allocated N×M fresh style
476
+ * objects each render and forced Emotion to re-serialise them. The cell sx is
477
+ * a pure function of the column (wrap / mono / numeric / maxWidth / hoverOnly)
478
+ * and the column's effective width — never of the row — so compute it once per
479
+ * column and reuse the reference across all rows. Keyed on columns + live
480
+ * widths (the latter only changes during an active resize drag).
481
+ * --text-body (14px) is the explicit inheritance that replaced a dangling
482
+ * `var(--text-fs)` token typo (no fallback). */
483
+ var columnCellSx = React.useMemo(function () {
484
+ var byKey = new Map();
485
+ var _iterator2 = _createForOfIteratorHelper(columns),
486
+ _step2;
487
+ try {
488
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
489
+ var _ref2;
490
+ var col = _step2.value;
491
+ var effectiveWidth = (_ref2 = resize.liveWidths && resize.liveWidths[col.key]) !== null && _ref2 !== void 0 ? _ref2 : col.width;
492
+ byKey.set(col.key, _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
493
+ fontSize: "var(--text-body)",
494
+ whiteSpace: col.wrap ? "normal" : "nowrap",
495
+ overflow: "hidden",
496
+ textOverflow: "ellipsis"
497
+ }, col.mono ? {
498
+ fontFamily: "var(--font-mono)"
499
+ } : {}), col.numeric || col.mono ? {
500
+ fontVariantNumeric: "tabular-nums"
501
+ } : {}), effectiveWidth != null ? {
502
+ width: effectiveWidth
503
+ } : {}), col.wrap ? {
504
+ overflowWrap: "anywhere",
505
+ wordBreak: "break-word"
506
+ } : {}), col.maxWidth != null ? {
507
+ maxWidth: col.maxWidth
508
+ } : {}), col.hoverOnly ? HOVER_ONLY_CELL_SX : {}));
509
+ }
510
+ } catch (err) {
511
+ _iterator2.e(err);
512
+ } finally {
513
+ _iterator2.f();
514
+ }
515
+ return byKey;
516
+ }, [columns, resize.liveWidths]);
517
+
518
+ /* ── Mobile card view body (R1 mobile) ─────────────────────────
519
+ * Built only when useCardView is true. `renderCard` is the narrowed,
520
+ * guaranteed-present renderer passed in from the return site. */
521
+ var renderCardBody = function renderCardBody(renderCard) {
522
+ if (showSkeleton) {
523
+ return /*#__PURE__*/_jsx(Box, {
524
+ role: "list",
525
+ "aria-busy": "true",
526
+ "aria-label": tableAria,
527
+ sx: CARD_STACK_SX,
528
+ children: Array.from({
529
+ length: 6
530
+ }, function (_, i) {
531
+ return /*#__PURE__*/_jsx(Box, {
532
+ "aria-hidden": "true",
533
+ sx: CARD_SKELETON_SX
534
+ }, "sk-".concat(i));
535
+ })
536
+ });
537
+ }
538
+ if (error) {
539
+ return /*#__PURE__*/_jsx(Box, {
540
+ sx: CARD_EMPTY_WRAPPER_SX,
541
+ children: errorState
542
+ });
543
+ }
544
+ if (rows.length === 0) {
545
+ return /*#__PURE__*/_jsx(Box, {
546
+ sx: CARD_EMPTY_WRAPPER_SX,
547
+ children: filtered ? filteredEmptyState : emptyState
548
+ });
549
+ }
550
+ return /*#__PURE__*/_jsx(Box, {
551
+ role: "list",
552
+ "aria-label": tableAria,
553
+ "aria-busy": loading || undefined,
554
+ sx: CARD_STACK_SX,
555
+ children: rows.map(function (row) {
556
+ var id = getRowId(row);
557
+ var isSelected = selectedSet.has(id);
558
+ var isActive = activeRowId !== undefined && activeRowId !== null && id === activeRowId;
559
+ var flash = rowFlashId === id;
560
+ var clickable = !!onRowClick;
561
+ var ctx = {
562
+ isActive: isActive,
563
+ isSelected: isSelected
564
+ };
565
+ return /*#__PURE__*/_jsx(Box, {
566
+ role: clickable ? "button" : "listitem",
567
+ tabIndex: clickable ? 0 : undefined,
568
+ "data-selected": isSelected || undefined,
569
+ "data-active": isActive || undefined,
570
+ className: flash ? "pui-row-updated" : undefined,
571
+ onClick: clickable ? function () {
572
+ return onRowClick === null || onRowClick === void 0 ? void 0 : onRowClick(row);
573
+ } : undefined,
574
+ onKeyDown: clickable ? handleRowKeyDown(row) : undefined,
575
+ sx: clickable ? CARD_CLICKABLE_SX : CARD_BASE_SX,
576
+ children: renderCard(row, ctx)
577
+ }, id);
578
+ })
579
+ });
580
+ };
581
+
582
+ /* ── Table body (desktop / no card opt-in) ─────────────────── */
583
+ var body;
584
+ if (showSkeleton) {
585
+ body = /*#__PURE__*/_jsx(TableBody, {
586
+ "aria-busy": "true",
587
+ children: Array.from({
588
+ length: 6
589
+ }, function (_, i) {
590
+ return /*#__PURE__*/_jsx(SkeletonRow, {
591
+ cols: columns.length,
592
+ withCheckbox: showCheckbox,
593
+ withActions: hasRowActions
594
+ }, "sk-".concat(i));
595
+ })
596
+ });
597
+ } else if (error) {
598
+ body = /*#__PURE__*/_jsx(TableBody, {
599
+ children: /*#__PURE__*/_jsx(TableRow, {
600
+ children: /*#__PURE__*/_jsx(TableCell, {
601
+ colSpan: colCount,
602
+ sx: ERROR_CELL_SX,
603
+ children: /*#__PURE__*/_jsx(Box, {
604
+ sx: ERROR_INNER_SX,
605
+ children: errorState
606
+ })
607
+ })
608
+ })
609
+ });
610
+ } else if (rows.length === 0) {
611
+ body = /*#__PURE__*/_jsx(TableBody, {
612
+ "aria-busy": loading || undefined,
613
+ children: /*#__PURE__*/_jsx(TableRow, {
614
+ children: /*#__PURE__*/_jsx(TableCell, {
615
+ colSpan: colCount,
616
+ sx: ERROR_CELL_SX,
617
+ children: /*#__PURE__*/_jsx(Box, {
618
+ sx: ERROR_INNER_SX,
619
+ children: filtered ? filteredEmptyState : emptyState
620
+ })
621
+ })
622
+ })
623
+ });
624
+ } else {
625
+ body = /*#__PURE__*/_jsx(TableBody, {
626
+ "aria-busy": loading || undefined,
627
+ children: rows.map(function (row) {
628
+ var id = getRowId(row);
629
+ var isSelected = selectedSet.has(id);
630
+ var isActive = activeRowId !== undefined && activeRowId !== null && id === activeRowId;
631
+ var flash = rowFlashId === id;
632
+ var clickable = !!onRowClick;
633
+ return /*#__PURE__*/_jsxs(TableRow, {
634
+ hover: true,
635
+ "data-selected": isSelected || undefined,
636
+ "data-active": isActive || undefined,
637
+ className: flash ? "pui-row-updated" : undefined,
638
+ onClick: clickable ? function () {
639
+ return onRowClick === null || onRowClick === void 0 ? void 0 : onRowClick(row);
640
+ } : undefined,
641
+ onKeyDown: clickable ? handleRowKeyDown(row) : undefined,
642
+ tabIndex: clickable ? 0 : undefined,
643
+ sx: clickable ? ROW_CLICKABLE_SX : ROW_STATIC_SX,
644
+ children: [showCheckbox && /*#__PURE__*/_jsx(TableCell, {
645
+ padding: "checkbox",
646
+ sx: BODY_CHECKBOX_CELL_SX,
647
+ children: /*#__PURE__*/_jsx(Checkbox, {
648
+ size: "small",
649
+ checked: isSelected,
650
+ onChange: function onChange(e) {
651
+ e.stopPropagation();
652
+ toggleRow(id);
653
+ },
654
+ onClick: function onClick(e) {
655
+ return e.stopPropagation();
656
+ },
657
+ onKeyDown: function onKeyDown(e) {
658
+ return e.stopPropagation();
659
+ },
660
+ slotProps: {
661
+ input: {
662
+ "aria-label": L.selectRow(id)
663
+ }
664
+ }
665
+ })
666
+ }), columns.map(function (col) {
667
+ var _ref3;
668
+ var value = col.getValue ? col.getValue(row) : readCellValue(row, col.key);
669
+ return /*#__PURE__*/_jsx(TableCell, {
670
+ align: col.align || (col.numeric ? "right" : "left"),
671
+ sx: columnCellSx.get(col.key),
672
+ children: col.render ? col.render(row) : (_ref3 = value) !== null && _ref3 !== void 0 ? _ref3 : "—"
673
+ }, col.key);
674
+ }), /*#__PURE__*/_jsx(TableCell, {
675
+ sx: FILLER_CELL_SX,
676
+ "aria-hidden": "true"
677
+ }), hasRowActions && rowActions && /*#__PURE__*/_jsx(TableCell, {
678
+ sx: ROW_ACTIONS_CELL_SX,
679
+ children: /*#__PURE__*/_jsx(Box, {
680
+ sx: ROW_ACTIONS_OVERLAY_SX,
681
+ children: rowActions(row)
682
+ })
683
+ })]
684
+ }, id);
685
+ })
686
+ });
687
+ }
688
+ return /*#__PURE__*/_jsxs(Box, {
689
+ sx: CONTAINER_SX,
690
+ children: [useCardView && renderMobileCard ? renderCardBody(renderMobileCard) : /*#__PURE__*/_jsx(Box, {
691
+ sx: scrollContainerSx,
692
+ children: /*#__PURE__*/_jsxs(Table, {
693
+ "aria-label": tableAria,
694
+ size: density === "compact" ? "small" : "medium",
695
+ stickyHeader: true,
696
+ sx: tableSx,
697
+ children: [/*#__PURE__*/_jsx(TableHead, {
698
+ children: /*#__PURE__*/_jsxs(TableRow, {
699
+ children: [showCheckbox && /*#__PURE__*/_jsx(TableCell, {
700
+ padding: "checkbox",
701
+ sx: HEADER_CHECKBOX_CELL_SX,
702
+ children: /*#__PURE__*/_jsx(Checkbox, {
703
+ size: "small",
704
+ checked: allSelected,
705
+ indeterminate: someSelected,
706
+ onChange: toggleAll,
707
+ slotProps: {
708
+ input: {
709
+ "aria-label": L.selectAll
710
+ }
711
+ }
712
+ })
713
+ }), columns.map(function (col) {
714
+ var _ref4;
715
+ var isSortable = sortable(col);
716
+ var isResizable = resizable && col.resizable !== false;
717
+ var isReorderable = reorderable && col.reorderable !== false;
718
+ var ariaSort = isSortable ? getAriaSort(sort, col.key) : undefined;
719
+ var effectiveWidth = (_ref4 = resize.liveWidths && resize.liveWidths[col.key]) !== null && _ref4 !== void 0 ? _ref4 : col.width;
720
+ var reorderHandlers = isReorderable ? reorder.cellHandlers(col.key) : null;
721
+ var reorderFeedbackSx = isReorderable ? reorder.cellSx(col.key) : undefined;
722
+ return /*#__PURE__*/_jsxs(TableCell, _objectSpread(_objectSpread({
723
+ align: col.align || (col.numeric ? "right" : "left"),
724
+ "aria-sort": ariaSort
725
+ }, reorderHandlers || {}), {}, {
726
+ sx: _objectSpread(_objectSpread({
727
+ position: "sticky",
728
+ top: 0,
729
+ zIndex: 1
730
+ }, effectiveWidth != null ? {
731
+ width: effectiveWidth
732
+ } : {}), reorderFeedbackSx ? reorderFeedbackSx : {}),
733
+ children: [isSortable && onSortChange ? /*#__PURE__*/_jsx(SortableHeader, {
734
+ sortKey: col.key,
735
+ sort: sort,
736
+ setSort: onSortChange,
737
+ align: col.align || (col.numeric ? "right" : "left"),
738
+ children: col.header
739
+ }) : col.header, isReorderable && /*#__PURE__*/_jsx(Box, {
740
+ component: "button",
741
+ type: "button",
742
+ "data-reorder-grip": col.key,
743
+ "aria-label": "R\xE9organiser la colonne",
744
+ "aria-keyshortcuts": "ArrowLeft ArrowRight Home End",
745
+ onKeyDown: function onKeyDown(e) {
746
+ if (e.key === "ArrowLeft" || e.key === "ArrowRight" || e.key === "Home" || e.key === "End") {
747
+ pendingReorderFocusRef.current = col.key;
748
+ }
749
+ reorder.handleKeyDown(col.key)(e);
750
+ },
751
+ sx: REORDER_GRIP_SX,
752
+ children: /*#__PURE__*/_jsx(DragIndicatorIcon, {
753
+ sx: {
754
+ fontSize: 14
755
+ }
756
+ })
757
+ }), isResizable && /*#__PURE__*/_jsx(Box, {
758
+ role: "separator",
759
+ "aria-orientation": "vertical",
760
+ "aria-label": "Redimensionner la colonne",
761
+ tabIndex: 0,
762
+ "aria-valuenow": typeof effectiveWidth === "number" ? Math.round(effectiveWidth) : undefined,
763
+ "aria-valuemin": resize.minWidth,
764
+ draggable: "false",
765
+ onMouseDown: resize.handleMouseDown(col.key),
766
+ onKeyDown: resize.handleKeyDown(col.key),
767
+ sx: {
768
+ position: "absolute",
769
+ top: 0,
770
+ insetInlineEnd: 0,
771
+ width: 8,
772
+ height: "100%",
773
+ cursor: "col-resize",
774
+ userSelect: "none",
775
+ touchAction: "none",
776
+ zIndex: 2,
777
+ "&:hover": {
778
+ background: "var(--state-hover-overlay)"
779
+ },
780
+ "&:active": {
781
+ background: "var(--state-pressed-overlay)"
782
+ },
783
+ "&:focus-visible": {
784
+ outline: "2px solid var(--accent)",
785
+ outlineOffset: "-1px",
786
+ background: "var(--state-hover-overlay)"
787
+ }
788
+ }
789
+ })]
790
+ }), col.key);
791
+ }), /*#__PURE__*/_jsx(TableCell, {
792
+ sx: FILLER_HEAD_CELL_SX,
793
+ "aria-hidden": "true"
794
+ }), hasRowActions &&
795
+ /*#__PURE__*/
796
+ /* WCAG 1.3.1 / axe-core `empty-table-header` — the
797
+ visually-hidden span names the actions column in the
798
+ a11y tree. Label from labels.actionsHeader. */
799
+ _jsx(TableCell, {
800
+ sx: ROW_ACTIONS_HEAD_CELL_SX,
801
+ scope: "col",
802
+ children: /*#__PURE__*/_jsx(Box, {
803
+ component: "span",
804
+ sx: VISUALLY_HIDDEN_SX,
805
+ children: L.actionsHeader
806
+ })
807
+ })]
808
+ })
809
+ }), body]
810
+ })
811
+ }), pagination && /*#__PURE__*/_jsx(Pagination, _objectSpread(_objectSpread({}, pagination), {}, {
812
+ loading: loading,
813
+ locale: locale,
814
+ labels: L.pagination
815
+ }))]
816
+ });
817
+ }
818
+ export { applySort };
819
+ export default DataGrid;
820
+ //# sourceMappingURL=DataGrid.js.map