@portnet/ui 6.0.2 → 6.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (980) hide show
  1. package/CHANGELOG.md +652 -0
  2. package/dist/esm/index.js +72 -3
  3. package/dist/esm/index.js.map +1 -1
  4. package/dist/esm/v2/__tests__/AppMain.test.js +130 -0
  5. package/dist/esm/v2/__tests__/AppMain.test.js.map +1 -0
  6. package/dist/esm/v2/__tests__/ChartFigure.test.js +180 -0
  7. package/dist/esm/v2/__tests__/ChartFigure.test.js.map +1 -0
  8. package/dist/esm/v2/__tests__/DataGridRowActionsPropagation.test.js +150 -0
  9. package/dist/esm/v2/__tests__/DataGridRowActionsPropagation.test.js.map +1 -0
  10. package/dist/esm/v2/__tests__/DrawerTactileTargets.test.js +93 -0
  11. package/dist/esm/v2/__tests__/DrawerTactileTargets.test.js.map +1 -0
  12. package/dist/esm/v2/__tests__/FieldError.test.js +71 -38
  13. package/dist/esm/v2/__tests__/FieldError.test.js.map +1 -1
  14. package/dist/esm/v2/__tests__/FieldNaming.test.js +160 -0
  15. package/dist/esm/v2/__tests__/FieldNaming.test.js.map +1 -0
  16. package/dist/esm/v2/__tests__/FieldWidth.test.js +11 -11
  17. package/dist/esm/v2/__tests__/FieldWidth.test.js.map +1 -1
  18. package/dist/esm/v2/__tests__/FileCard.test.js +18 -17
  19. package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -1
  20. package/dist/esm/v2/__tests__/FormikCheckbox.test.js +87 -179
  21. package/dist/esm/v2/__tests__/FormikCheckbox.test.js.map +1 -1
  22. package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js +32 -44
  23. package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js.map +1 -1
  24. package/dist/esm/v2/__tests__/FormikDisplayWidth.test.js +101 -0
  25. package/dist/esm/v2/__tests__/FormikDisplayWidth.test.js.map +1 -0
  26. package/dist/esm/v2/__tests__/FormikRadioGroup.test.js +118 -199
  27. package/dist/esm/v2/__tests__/FormikRadioGroup.test.js.map +1 -1
  28. package/dist/esm/v2/__tests__/MobileRowCard.test.js +44 -42
  29. package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -1
  30. package/dist/esm/v2/__tests__/PreviewDrawer.test.js +165 -0
  31. package/dist/esm/v2/__tests__/PreviewDrawer.test.js.map +1 -0
  32. package/dist/esm/v2/__tests__/ReferentielFieldContainer.test.js +156 -0
  33. package/dist/esm/v2/__tests__/ReferentielFieldContainer.test.js.map +1 -0
  34. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +37 -52
  35. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -1
  36. package/dist/esm/v2/__tests__/apiError.test.js +50 -69
  37. package/dist/esm/v2/__tests__/apiError.test.js.map +1 -1
  38. package/dist/esm/v2/__tests__/banned-patterns.test.js +41 -122
  39. package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -1
  40. package/dist/esm/v2/__tests__/chart-palette.test.js +204 -0
  41. package/dist/esm/v2/__tests__/chart-palette.test.js.map +1 -0
  42. package/dist/esm/v2/__tests__/contrast-palette.test.js +42 -74
  43. package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -1
  44. package/dist/esm/v2/__tests__/cssVariables.test.js +44 -51
  45. package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -1
  46. package/dist/esm/v2/__tests__/fileValidation.test.js +134 -0
  47. package/dist/esm/v2/__tests__/fileValidation.test.js.map +1 -0
  48. package/dist/esm/v2/__tests__/filterCriteria.test.js +321 -0
  49. package/dist/esm/v2/__tests__/filterCriteria.test.js.map +1 -0
  50. package/dist/esm/v2/__tests__/fmtDate.test.js +68 -0
  51. package/dist/esm/v2/__tests__/fmtDate.test.js.map +1 -0
  52. package/dist/esm/v2/__tests__/gap-leakage-refonte.test.js +218 -0
  53. package/dist/esm/v2/__tests__/gap-leakage-refonte.test.js.map +1 -0
  54. package/dist/esm/v2/__tests__/labels-merge.test.js +17 -21
  55. package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -1
  56. package/dist/esm/v2/__tests__/locale-fallback.test.js +35 -40
  57. package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -1
  58. package/dist/esm/v2/__tests__/reviveSavedCriteria.test.js +143 -0
  59. package/dist/esm/v2/__tests__/reviveSavedCriteria.test.js.map +1 -0
  60. package/dist/esm/v2/__tests__/rowActions.test.js +182 -0
  61. package/dist/esm/v2/__tests__/rowActions.test.js.map +1 -0
  62. package/dist/esm/v2/__tests__/useFocusOnRouteChange.test.js +155 -0
  63. package/dist/esm/v2/__tests__/useFocusOnRouteChange.test.js.map +1 -0
  64. package/dist/esm/v2/__tests__/useFocusTrap.test.js +266 -402
  65. package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -1
  66. package/dist/esm/v2/__tests__/usePrefersReducedMotion.test.js +120 -0
  67. package/dist/esm/v2/__tests__/usePrefersReducedMotion.test.js.map +1 -0
  68. package/dist/esm/v2/components/Accordion.js +48 -70
  69. package/dist/esm/v2/components/Accordion.js.map +1 -1
  70. package/dist/esm/v2/components/ActionStrip.js +31 -43
  71. package/dist/esm/v2/components/ActionStrip.js.map +1 -1
  72. package/dist/esm/v2/components/Banner.js +25 -22
  73. package/dist/esm/v2/components/Banner.js.map +1 -1
  74. package/dist/esm/v2/components/Busy.js +14 -19
  75. package/dist/esm/v2/components/Busy.js.map +1 -1
  76. package/dist/esm/v2/components/Button.js +34 -45
  77. package/dist/esm/v2/components/Button.js.map +1 -1
  78. package/dist/esm/v2/components/CategoryTag.js +44 -27
  79. package/dist/esm/v2/components/CategoryTag.js.map +1 -1
  80. package/dist/esm/v2/components/Checkbox.js +32 -38
  81. package/dist/esm/v2/components/Checkbox.js.map +1 -1
  82. package/dist/esm/v2/components/Chip.js +23 -36
  83. package/dist/esm/v2/components/Chip.js.map +1 -1
  84. package/dist/esm/v2/components/Combobox.js +112 -136
  85. package/dist/esm/v2/components/Combobox.js.map +1 -1
  86. package/dist/esm/v2/components/CommandPalette.js +113 -198
  87. package/dist/esm/v2/components/CommandPalette.js.map +1 -1
  88. package/dist/esm/v2/components/ConfirmDialog.js +36 -45
  89. package/dist/esm/v2/components/ConfirmDialog.js.map +1 -1
  90. package/dist/esm/v2/components/DatePicker.js +78 -81
  91. package/dist/esm/v2/components/DatePicker.js.map +1 -1
  92. package/dist/esm/v2/components/DateRangePicker.js +63 -74
  93. package/dist/esm/v2/components/DateRangePicker.js.map +1 -1
  94. package/dist/esm/v2/components/DateTimePicker.js +81 -86
  95. package/dist/esm/v2/components/DateTimePicker.js.map +1 -1
  96. package/dist/esm/v2/components/Drawer.js +71 -65
  97. package/dist/esm/v2/components/Drawer.js.map +1 -1
  98. package/dist/esm/v2/components/Dropzone.js +130 -177
  99. package/dist/esm/v2/components/Dropzone.js.map +1 -1
  100. package/dist/esm/v2/components/EmptyState.js +9 -9
  101. package/dist/esm/v2/components/EmptyState.js.map +1 -1
  102. package/dist/esm/v2/components/FavoriteToggle.js +24 -33
  103. package/dist/esm/v2/components/FavoriteToggle.js.map +1 -1
  104. package/dist/esm/v2/components/Field.js +155 -59
  105. package/dist/esm/v2/components/Field.js.map +1 -1
  106. package/dist/esm/v2/components/FieldError.js +9 -13
  107. package/dist/esm/v2/components/FieldError.js.map +1 -1
  108. package/dist/esm/v2/components/FieldHelp.js +28 -49
  109. package/dist/esm/v2/components/FieldHelp.js.map +1 -1
  110. package/dist/esm/v2/components/FileCard.js +14 -19
  111. package/dist/esm/v2/components/FileCard.js.map +1 -1
  112. package/dist/esm/v2/components/FilterTab.js +22 -31
  113. package/dist/esm/v2/components/FilterTab.js.map +1 -1
  114. package/dist/esm/v2/components/ForbiddenPage.js +28 -8
  115. package/dist/esm/v2/components/ForbiddenPage.js.map +1 -1
  116. package/dist/esm/v2/components/FormGrid.js +48 -54
  117. package/dist/esm/v2/components/FormGrid.js.map +1 -1
  118. package/dist/esm/v2/components/FormikDisplay.js +98 -24
  119. package/dist/esm/v2/components/FormikDisplay.js.map +1 -1
  120. package/dist/esm/v2/components/Input.js +75 -34
  121. package/dist/esm/v2/components/Input.js.map +1 -1
  122. package/dist/esm/v2/components/KPICard.js +42 -51
  123. package/dist/esm/v2/components/KPICard.js.map +1 -1
  124. package/dist/esm/v2/components/KPIStrip.js +9 -15
  125. package/dist/esm/v2/components/KPIStrip.js.map +1 -1
  126. package/dist/esm/v2/components/KV.js +16 -23
  127. package/dist/esm/v2/components/KV.js.map +1 -1
  128. package/dist/esm/v2/components/KVGrid.js +15 -23
  129. package/dist/esm/v2/components/KVGrid.js.map +1 -1
  130. package/dist/esm/v2/components/Layout.js +81 -117
  131. package/dist/esm/v2/components/Layout.js.map +1 -1
  132. package/dist/esm/v2/components/MobileRowCard.js +64 -75
  133. package/dist/esm/v2/components/MobileRowCard.js.map +1 -1
  134. package/dist/esm/v2/components/Modal.js +44 -53
  135. package/dist/esm/v2/components/Modal.js.map +1 -1
  136. package/dist/esm/v2/components/NetworkErrorPage.js +28 -11
  137. package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -1
  138. package/dist/esm/v2/components/NotFoundPage.js +28 -9
  139. package/dist/esm/v2/components/NotFoundPage.js.map +1 -1
  140. package/dist/esm/v2/components/NumberInput.js +77 -107
  141. package/dist/esm/v2/components/NumberInput.js.map +1 -1
  142. package/dist/esm/v2/components/OverflowMenu.js +24 -42
  143. package/dist/esm/v2/components/OverflowMenu.js.map +1 -1
  144. package/dist/esm/v2/components/PdfViewer.js +24 -33
  145. package/dist/esm/v2/components/PdfViewer.js.map +1 -1
  146. package/dist/esm/v2/components/ProgressBar.js +28 -36
  147. package/dist/esm/v2/components/ProgressBar.js.map +1 -1
  148. package/dist/esm/v2/components/Radio.js +49 -57
  149. package/dist/esm/v2/components/Radio.js.map +1 -1
  150. package/dist/esm/v2/components/SectionErrorBoundary.js +84 -130
  151. package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -1
  152. package/dist/esm/v2/components/SectionHeader.js +24 -31
  153. package/dist/esm/v2/components/SectionHeader.js.map +1 -1
  154. package/dist/esm/v2/components/Segmented.js +59 -84
  155. package/dist/esm/v2/components/Segmented.js.map +1 -1
  156. package/dist/esm/v2/components/Select.js +100 -138
  157. package/dist/esm/v2/components/Select.js.map +1 -1
  158. package/dist/esm/v2/components/ServerErrorPage.js +27 -10
  159. package/dist/esm/v2/components/ServerErrorPage.js.map +1 -1
  160. package/dist/esm/v2/components/Skeleton.js +81 -96
  161. package/dist/esm/v2/components/Skeleton.js.map +1 -1
  162. package/dist/esm/v2/components/SkipLink.js +6 -7
  163. package/dist/esm/v2/components/SkipLink.js.map +1 -1
  164. package/dist/esm/v2/components/Spinner.js +13 -22
  165. package/dist/esm/v2/components/Spinner.js.map +1 -1
  166. package/dist/esm/v2/components/Status.js +14 -25
  167. package/dist/esm/v2/components/Status.js.map +1 -1
  168. package/dist/esm/v2/components/Stepper.js +68 -71
  169. package/dist/esm/v2/components/Stepper.js.map +1 -1
  170. package/dist/esm/v2/components/Surface.js +25 -44
  171. package/dist/esm/v2/components/Surface.js.map +1 -1
  172. package/dist/esm/v2/components/Switch.js +21 -29
  173. package/dist/esm/v2/components/Switch.js.map +1 -1
  174. package/dist/esm/v2/components/TabPanel.js +84 -0
  175. package/dist/esm/v2/components/TabPanel.js.map +1 -0
  176. package/dist/esm/v2/components/Tabs.js +43 -19
  177. package/dist/esm/v2/components/Tabs.js.map +1 -1
  178. package/dist/esm/v2/components/TelInput.js +75 -108
  179. package/dist/esm/v2/components/TelInput.js.map +1 -1
  180. package/dist/esm/v2/components/Textarea.js +21 -30
  181. package/dist/esm/v2/components/Textarea.js.map +1 -1
  182. package/dist/esm/v2/components/TimePicker.js +59 -69
  183. package/dist/esm/v2/components/TimePicker.js.map +1 -1
  184. package/dist/esm/v2/components/Toast.js +109 -163
  185. package/dist/esm/v2/components/Toast.js.map +1 -1
  186. package/dist/esm/v2/components/Tooltip.js +18 -31
  187. package/dist/esm/v2/components/Tooltip.js.map +1 -1
  188. package/dist/esm/v2/components/_ErrorPageBody.js +6 -5
  189. package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -1
  190. package/dist/esm/v2/components/_pickerShared.js +2 -2
  191. package/dist/esm/v2/components/_pickerShared.js.map +1 -1
  192. package/dist/esm/v2/components/index.js +37 -0
  193. package/dist/esm/v2/components/index.js.map +1 -1
  194. package/dist/esm/v2/hooks/index.js +62 -0
  195. package/dist/esm/v2/hooks/index.js.map +1 -1
  196. package/dist/esm/v2/hooks/useAppliedFilters.js +112 -0
  197. package/dist/esm/v2/hooks/useAppliedFilters.js.map +1 -0
  198. package/dist/esm/v2/hooks/useDebouncedCallback.js +82 -0
  199. package/dist/esm/v2/hooks/useDebouncedCallback.js.map +1 -0
  200. package/dist/esm/v2/hooks/useDelayedFlag.js +5 -19
  201. package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -1
  202. package/dist/esm/v2/hooks/useDensity.js +13 -17
  203. package/dist/esm/v2/hooks/useDensity.js.map +1 -1
  204. package/dist/esm/v2/hooks/useFocusFirstError.js +25 -33
  205. package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -1
  206. package/dist/esm/v2/hooks/useFocusOnRouteChange.js +81 -0
  207. package/dist/esm/v2/hooks/useFocusOnRouteChange.js.map +1 -0
  208. package/dist/esm/v2/hooks/useFocusTrap.js +19 -23
  209. package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -1
  210. package/dist/esm/v2/hooks/useFormAutoSave.js +38 -53
  211. package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -1
  212. package/dist/esm/v2/hooks/useFormCompletionProgress.js +32 -51
  213. package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -1
  214. package/dist/esm/v2/hooks/useKeyboardShortcuts.js +125 -0
  215. package/dist/esm/v2/hooks/useKeyboardShortcuts.js.map +1 -0
  216. package/dist/esm/v2/hooks/usePrefersReducedMotion.js +99 -0
  217. package/dist/esm/v2/hooks/usePrefersReducedMotion.js.map +1 -0
  218. package/dist/esm/v2/hooks/useResolvedDensity.js +2 -10
  219. package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -1
  220. package/dist/esm/v2/hooks/useSortedRows.js +3 -5
  221. package/dist/esm/v2/hooks/useSortedRows.js.map +1 -1
  222. package/dist/esm/v2/hooks/useTabLoading.js +6 -21
  223. package/dist/esm/v2/hooks/useTabLoading.js.map +1 -1
  224. package/dist/esm/v2/index.js +2 -3
  225. package/dist/esm/v2/index.js.map +1 -1
  226. package/dist/esm/v2/modalContext.js +2 -2
  227. package/dist/esm/v2/modalContext.js.map +1 -1
  228. package/dist/esm/v2/models/favorite.js.map +1 -1
  229. package/dist/esm/v2/models/personalization.js.map +1 -1
  230. package/dist/esm/v2/models/referentiel.js.map +1 -1
  231. package/dist/esm/v2/models/savedFilter.js.map +1 -1
  232. package/dist/esm/v2/patterns/ActionBar.js +115 -159
  233. package/dist/esm/v2/patterns/ActionBar.js.map +1 -1
  234. package/dist/esm/v2/patterns/AppMain.js +108 -0
  235. package/dist/esm/v2/patterns/AppMain.js.map +1 -0
  236. package/dist/esm/v2/patterns/BulkActionBar.js +31 -34
  237. package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -1
  238. package/dist/esm/v2/patterns/ChartFigure.js +151 -0
  239. package/dist/esm/v2/patterns/ChartFigure.js.map +1 -0
  240. package/dist/esm/v2/patterns/CollapsibleDataGrid.js +111 -152
  241. package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -1
  242. package/dist/esm/v2/patterns/ColumnsToggle.js +43 -77
  243. package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -1
  244. package/dist/esm/v2/patterns/DataGrid.js +221 -255
  245. package/dist/esm/v2/patterns/DataGrid.js.map +1 -1
  246. package/dist/esm/v2/patterns/DataGridSettingsMenu.js +76 -94
  247. package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -1
  248. package/dist/esm/v2/patterns/DataGridToolbar.js +85 -89
  249. package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -1
  250. package/dist/esm/v2/patterns/DataGridVirtualized.js +141 -182
  251. package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -1
  252. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +26 -30
  253. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
  254. package/dist/esm/v2/patterns/DetailSplit.js +108 -0
  255. package/dist/esm/v2/patterns/DetailSplit.js.map +1 -0
  256. package/dist/esm/v2/patterns/FavoriteColumn.js +15 -17
  257. package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -1
  258. package/dist/esm/v2/patterns/FavoritesFilter.js +30 -39
  259. package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -1
  260. package/dist/esm/v2/patterns/FilterTabBar.js +112 -0
  261. package/dist/esm/v2/patterns/FilterTabBar.js.map +1 -0
  262. package/dist/esm/v2/patterns/FormErrorSummary.js +12 -13
  263. package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -1
  264. package/dist/esm/v2/patterns/FormPageShell.js +43 -41
  265. package/dist/esm/v2/patterns/FormPageShell.js.map +1 -1
  266. package/dist/esm/v2/patterns/FormSection.js +30 -38
  267. package/dist/esm/v2/patterns/FormSection.js.map +1 -1
  268. package/dist/esm/v2/patterns/FormikCheckbox.js +29 -39
  269. package/dist/esm/v2/patterns/FormikCheckbox.js.map +1 -1
  270. package/dist/esm/v2/patterns/FormikCheckboxGroup.js +56 -60
  271. package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -1
  272. package/dist/esm/v2/patterns/FormikCombobox.js +51 -69
  273. package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -1
  274. package/dist/esm/v2/patterns/FormikDatePicker.js +44 -58
  275. package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -1
  276. package/dist/esm/v2/patterns/FormikDateTimePicker.js +44 -58
  277. package/dist/esm/v2/patterns/FormikDateTimePicker.js.map +1 -1
  278. package/dist/esm/v2/patterns/FormikErrorFocus.js +22 -23
  279. package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -1
  280. package/dist/esm/v2/patterns/FormikErrorSummary.js +89 -0
  281. package/dist/esm/v2/patterns/FormikErrorSummary.js.map +1 -0
  282. package/dist/esm/v2/patterns/FormikFile.js +94 -78
  283. package/dist/esm/v2/patterns/FormikFile.js.map +1 -1
  284. package/dist/esm/v2/patterns/FormikInput.js +40 -53
  285. package/dist/esm/v2/patterns/FormikInput.js.map +1 -1
  286. package/dist/esm/v2/patterns/FormikRadioGroup.js +39 -51
  287. package/dist/esm/v2/patterns/FormikRadioGroup.js.map +1 -1
  288. package/dist/esm/v2/patterns/FormikReferentielField.js +49 -59
  289. package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -1
  290. package/dist/esm/v2/patterns/FormikSelect.js +64 -87
  291. package/dist/esm/v2/patterns/FormikSelect.js.map +1 -1
  292. package/dist/esm/v2/patterns/FormikTextarea.js +30 -46
  293. package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -1
  294. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +53 -71
  295. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
  296. package/dist/esm/v2/patterns/NetworkErrorBanner.js +6 -7
  297. package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -1
  298. package/dist/esm/v2/patterns/PageContent.js +10 -14
  299. package/dist/esm/v2/patterns/PageContent.js.map +1 -1
  300. package/dist/esm/v2/patterns/PreviewDrawer.js +153 -0
  301. package/dist/esm/v2/patterns/PreviewDrawer.js.map +1 -0
  302. package/dist/esm/v2/patterns/ReferentielField.js +327 -312
  303. package/dist/esm/v2/patterns/ReferentielField.js.map +1 -1
  304. package/dist/esm/v2/patterns/RowFavoriteToggle.js +27 -22
  305. package/dist/esm/v2/patterns/RowFavoriteToggle.js.map +1 -1
  306. package/dist/esm/v2/patterns/SaveFilterDialog.js +38 -66
  307. package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -1
  308. package/dist/esm/v2/patterns/SavedFiltersMenu.js +62 -81
  309. package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -1
  310. package/dist/esm/v2/patterns/SkeletonPageShell.js +106 -129
  311. package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -1
  312. package/dist/esm/v2/patterns/SortableHeader.js +22 -45
  313. package/dist/esm/v2/patterns/SortableHeader.js.map +1 -1
  314. package/dist/esm/v2/patterns/Tour.js +94 -120
  315. package/dist/esm/v2/patterns/Tour.js.map +1 -1
  316. package/dist/esm/v2/patterns/_dataGridShared.js +107 -128
  317. package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -1
  318. package/dist/esm/v2/patterns/_pickerSerialisation.js +6 -8
  319. package/dist/esm/v2/patterns/_pickerSerialisation.js.map +1 -1
  320. package/dist/esm/v2/patterns/_sort.js +17 -33
  321. package/dist/esm/v2/patterns/_sort.js.map +1 -1
  322. package/dist/esm/v2/patterns/_useColumnReorder.js +122 -160
  323. package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -1
  324. package/dist/esm/v2/patterns/_useColumnResize.js +78 -96
  325. package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -1
  326. package/dist/esm/v2/patterns/filterCriteria.js +102 -0
  327. package/dist/esm/v2/patterns/filterCriteria.js.map +1 -0
  328. package/dist/esm/v2/patterns/index.js +152 -0
  329. package/dist/esm/v2/patterns/index.js.map +1 -1
  330. package/dist/esm/v2/patterns/rowActions.js +223 -0
  331. package/dist/esm/v2/patterns/rowActions.js.map +1 -0
  332. package/dist/esm/v2/personalization/PersonalizationProvider.js +50 -47
  333. package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -1
  334. package/dist/esm/v2/personalization/adapters/_storageKey.js +5 -5
  335. package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -1
  336. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +22 -23
  337. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
  338. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +13 -13
  339. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
  340. package/dist/esm/v2/personalization/capabilities/favorites.js +36 -60
  341. package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -1
  342. package/dist/esm/v2/personalization/capabilities/favoritesView.js +22 -34
  343. package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -1
  344. package/dist/esm/v2/personalization/capabilities/gridPreferences.js +28 -34
  345. package/dist/esm/v2/personalization/capabilities/gridPreferences.js.map +1 -1
  346. package/dist/esm/v2/personalization/capabilities/reviveSavedCriteria.js +119 -0
  347. package/dist/esm/v2/personalization/capabilities/reviveSavedCriteria.js.map +1 -0
  348. package/dist/esm/v2/personalization/capabilities/savedFilters.js +90 -98
  349. package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -1
  350. package/dist/esm/v2/personalization/createPersonalizationStore.js +78 -181
  351. package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -1
  352. package/dist/esm/v2/personalization/index.js +17 -0
  353. package/dist/esm/v2/personalization/index.js.map +1 -1
  354. package/dist/esm/v2/personalization/personalizationContext.js +9 -9
  355. package/dist/esm/v2/personalization/personalizationContext.js.map +1 -1
  356. package/dist/esm/v2/personalization/schema.js +8 -9
  357. package/dist/esm/v2/personalization/schema.js.map +1 -1
  358. package/dist/esm/v2/referentiel/ReferentielProvider.js +27 -42
  359. package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -1
  360. package/dist/esm/v2/referentiel/types.js +2 -0
  361. package/dist/esm/v2/referentiel/types.js.map +1 -0
  362. package/dist/esm/v2/referentiel/useReferentielClient.js +10 -11
  363. package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -1
  364. package/dist/esm/v2/referentiel/useReferentielOptions.js +60 -117
  365. package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -1
  366. package/dist/esm/v2/referentiel/useReferentielSearch.js +37 -91
  367. package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -1
  368. package/dist/esm/v2/theme/_brand.js +8 -24
  369. package/dist/esm/v2/theme/_brand.js.map +1 -1
  370. package/dist/esm/v2/theme/_brandSecondary.js +8 -24
  371. package/dist/esm/v2/theme/_brandSecondary.js.map +1 -1
  372. package/dist/esm/v2/theme/createPortnetTheme.js +51 -61
  373. package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -1
  374. package/dist/esm/v2/theme/cssVariables.js +62 -69
  375. package/dist/esm/v2/theme/cssVariables.js.map +1 -1
  376. package/dist/esm/v2/theme/index.js +5 -5
  377. package/dist/esm/v2/theme/index.js.map +1 -1
  378. package/dist/esm/v2/tokens/breakpoints.js +14 -14
  379. package/dist/esm/v2/tokens/breakpoints.js.map +1 -1
  380. package/dist/esm/v2/tokens/chart.js +261 -0
  381. package/dist/esm/v2/tokens/chart.js.map +1 -0
  382. package/dist/esm/v2/tokens/colors.js +22 -22
  383. package/dist/esm/v2/tokens/colors.js.map +1 -1
  384. package/dist/esm/v2/tokens/density.js +62 -7
  385. package/dist/esm/v2/tokens/density.js.map +1 -1
  386. package/dist/esm/v2/tokens/index.js +49 -34
  387. package/dist/esm/v2/tokens/index.js.map +1 -1
  388. package/dist/esm/v2/tokens/motion.js +12 -20
  389. package/dist/esm/v2/tokens/motion.js.map +1 -1
  390. package/dist/esm/v2/tokens/radius.js +1 -1
  391. package/dist/esm/v2/tokens/radius.js.map +1 -1
  392. package/dist/esm/v2/tokens/shadows.js +6 -6
  393. package/dist/esm/v2/tokens/shadows.js.map +1 -1
  394. package/dist/esm/v2/tokens/spacing.js +2 -2
  395. package/dist/esm/v2/tokens/spacing.js.map +1 -1
  396. package/dist/esm/v2/tokens/state.js +1 -1
  397. package/dist/esm/v2/tokens/state.js.map +1 -1
  398. package/dist/esm/v2/tokens/statusPalette.js +17 -21
  399. package/dist/esm/v2/tokens/statusPalette.js.map +1 -1
  400. package/dist/esm/v2/tokens/tokens.json +6 -1
  401. package/dist/esm/v2/tokens/typography.js +13 -13
  402. package/dist/esm/v2/tokens/typography.js.map +1 -1
  403. package/dist/esm/v2/tokens/zIndex.js +1 -1
  404. package/dist/esm/v2/tokens/zIndex.js.map +1 -1
  405. package/dist/esm/v2/types/datagrid.js.map +1 -1
  406. package/dist/esm/v2/utils/apiError.js +16 -37
  407. package/dist/esm/v2/utils/apiError.js.map +1 -1
  408. package/dist/esm/v2/utils/contrast.js +31 -32
  409. package/dist/esm/v2/utils/contrast.js.map +1 -1
  410. package/dist/esm/v2/utils/cx.js +5 -25
  411. package/dist/esm/v2/utils/cx.js.map +1 -1
  412. package/dist/esm/v2/utils/fileDownload.js +23 -26
  413. package/dist/esm/v2/utils/fileDownload.js.map +1 -1
  414. package/dist/esm/v2/utils/fileValidation.js +209 -0
  415. package/dist/esm/v2/utils/fileValidation.js.map +1 -0
  416. package/dist/esm/v2/utils/fmtDate.js +111 -0
  417. package/dist/esm/v2/utils/fmtDate.js.map +1 -0
  418. package/dist/esm/v2/utils/fmtMoney.js +8 -10
  419. package/dist/esm/v2/utils/fmtMoney.js.map +1 -1
  420. package/dist/esm/v2/utils/formikErrors.js +78 -0
  421. package/dist/esm/v2/utils/formikErrors.js.map +1 -0
  422. package/dist/esm/v2/utils/index.js +35 -2
  423. package/dist/esm/v2/utils/index.js.map +1 -1
  424. package/dist/esm/v2/utils/mergeLabels.js +7 -12
  425. package/dist/esm/v2/utils/mergeLabels.js.map +1 -1
  426. package/dist/esm/v2/utils/networkStatus.js +12 -12
  427. package/dist/esm/v2/utils/networkStatus.js.map +1 -1
  428. package/dist/index.d.ts +7 -1
  429. package/dist/index.d.ts.map +1 -1
  430. package/dist/index.js +110 -49
  431. package/dist/index.js.map +1 -1
  432. package/dist/v2/__tests__/AppMain.test.js +133 -0
  433. package/dist/v2/__tests__/AppMain.test.js.map +1 -0
  434. package/dist/v2/__tests__/ChartFigure.test.js +183 -0
  435. package/dist/v2/__tests__/ChartFigure.test.js.map +1 -0
  436. package/dist/v2/__tests__/DataGridRowActionsPropagation.test.js +153 -0
  437. package/dist/v2/__tests__/DataGridRowActionsPropagation.test.js.map +1 -0
  438. package/dist/v2/__tests__/DrawerTactileTargets.test.js +94 -0
  439. package/dist/v2/__tests__/DrawerTactileTargets.test.js.map +1 -0
  440. package/dist/v2/__tests__/FieldError.test.js +82 -49
  441. package/dist/v2/__tests__/FieldError.test.js.map +1 -1
  442. package/dist/v2/__tests__/FieldNaming.test.js +161 -0
  443. package/dist/v2/__tests__/FieldNaming.test.js.map +1 -0
  444. package/dist/v2/__tests__/FieldWidth.test.js +23 -25
  445. package/dist/v2/__tests__/FieldWidth.test.js.map +1 -1
  446. package/dist/v2/__tests__/FileCard.test.js +29 -28
  447. package/dist/v2/__tests__/FileCard.test.js.map +1 -1
  448. package/dist/v2/__tests__/FormikCheckbox.test.js +90 -183
  449. package/dist/v2/__tests__/FormikCheckbox.test.js.map +1 -1
  450. package/dist/v2/__tests__/FormikDateTimePicker.test.js +38 -48
  451. package/dist/v2/__tests__/FormikDateTimePicker.test.js.map +1 -1
  452. package/dist/v2/__tests__/FormikDisplayWidth.test.js +102 -0
  453. package/dist/v2/__tests__/FormikDisplayWidth.test.js.map +1 -0
  454. package/dist/v2/__tests__/FormikRadioGroup.test.js +123 -204
  455. package/dist/v2/__tests__/FormikRadioGroup.test.js.map +1 -1
  456. package/dist/v2/__tests__/MobileRowCard.test.js +63 -61
  457. package/dist/v2/__tests__/MobileRowCard.test.js.map +1 -1
  458. package/dist/v2/__tests__/PreviewDrawer.test.js +169 -0
  459. package/dist/v2/__tests__/PreviewDrawer.test.js.map +1 -0
  460. package/dist/v2/__tests__/ReferentielFieldContainer.test.js +159 -0
  461. package/dist/v2/__tests__/ReferentielFieldContainer.test.js.map +1 -0
  462. package/dist/v2/__tests__/SectionErrorBoundary.test.js +53 -68
  463. package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -1
  464. package/dist/v2/__tests__/apiError.test.js +50 -69
  465. package/dist/v2/__tests__/apiError.test.js.map +1 -1
  466. package/dist/v2/__tests__/banned-patterns.test.js +42 -123
  467. package/dist/v2/__tests__/banned-patterns.test.js.map +1 -1
  468. package/dist/v2/__tests__/chart-palette.test.js +205 -0
  469. package/dist/v2/__tests__/chart-palette.test.js.map +1 -0
  470. package/dist/v2/__tests__/contrast-palette.test.js +42 -74
  471. package/dist/v2/__tests__/contrast-palette.test.js.map +1 -1
  472. package/dist/v2/__tests__/cssVariables.test.js +44 -51
  473. package/dist/v2/__tests__/cssVariables.test.js.map +1 -1
  474. package/dist/v2/__tests__/fileValidation.test.js +136 -0
  475. package/dist/v2/__tests__/fileValidation.test.js.map +1 -0
  476. package/dist/v2/__tests__/filterCriteria.test.js +324 -0
  477. package/dist/v2/__tests__/filterCriteria.test.js.map +1 -0
  478. package/dist/v2/__tests__/fmtDate.test.js +69 -0
  479. package/dist/v2/__tests__/fmtDate.test.js.map +1 -0
  480. package/dist/v2/__tests__/gap-leakage-refonte.test.js +221 -0
  481. package/dist/v2/__tests__/gap-leakage-refonte.test.js.map +1 -0
  482. package/dist/v2/__tests__/labels-merge.test.js +23 -27
  483. package/dist/v2/__tests__/labels-merge.test.js.map +1 -1
  484. package/dist/v2/__tests__/locale-fallback.test.js +47 -52
  485. package/dist/v2/__tests__/locale-fallback.test.js.map +1 -1
  486. package/dist/v2/__tests__/reviveSavedCriteria.test.js +144 -0
  487. package/dist/v2/__tests__/reviveSavedCriteria.test.js.map +1 -0
  488. package/dist/v2/__tests__/rowActions.test.js +186 -0
  489. package/dist/v2/__tests__/rowActions.test.js.map +1 -0
  490. package/dist/v2/__tests__/useFocusOnRouteChange.test.js +156 -0
  491. package/dist/v2/__tests__/useFocusOnRouteChange.test.js.map +1 -0
  492. package/dist/v2/__tests__/useFocusTrap.test.js +270 -407
  493. package/dist/v2/__tests__/useFocusTrap.test.js.map +1 -1
  494. package/dist/v2/__tests__/usePrefersReducedMotion.test.js +123 -0
  495. package/dist/v2/__tests__/usePrefersReducedMotion.test.js.map +1 -0
  496. package/dist/v2/components/Accordion.js +60 -82
  497. package/dist/v2/components/Accordion.js.map +1 -1
  498. package/dist/v2/components/ActionStrip.js +40 -52
  499. package/dist/v2/components/ActionStrip.js.map +1 -1
  500. package/dist/v2/components/Banner.js +42 -41
  501. package/dist/v2/components/Banner.js.map +1 -1
  502. package/dist/v2/components/Busy.js +22 -27
  503. package/dist/v2/components/Busy.js.map +1 -1
  504. package/dist/v2/components/Button.js +39 -50
  505. package/dist/v2/components/Button.js.map +1 -1
  506. package/dist/v2/components/CategoryTag.d.ts.map +1 -1
  507. package/dist/v2/components/CategoryTag.js +49 -32
  508. package/dist/v2/components/CategoryTag.js.map +1 -1
  509. package/dist/v2/components/Checkbox.js +39 -45
  510. package/dist/v2/components/Checkbox.js.map +1 -1
  511. package/dist/v2/components/Chip.js +29 -42
  512. package/dist/v2/components/Chip.js.map +1 -1
  513. package/dist/v2/components/Combobox.js +122 -144
  514. package/dist/v2/components/Combobox.js.map +1 -1
  515. package/dist/v2/components/CommandPalette.js +138 -225
  516. package/dist/v2/components/CommandPalette.js.map +1 -1
  517. package/dist/v2/components/ConfirmDialog.js +46 -56
  518. package/dist/v2/components/ConfirmDialog.js.map +1 -1
  519. package/dist/v2/components/DatePicker.js +81 -86
  520. package/dist/v2/components/DatePicker.js.map +1 -1
  521. package/dist/v2/components/DateRangePicker.js +77 -87
  522. package/dist/v2/components/DateRangePicker.js.map +1 -1
  523. package/dist/v2/components/DateTimePicker.js +84 -91
  524. package/dist/v2/components/DateTimePicker.js.map +1 -1
  525. package/dist/v2/components/Drawer.d.ts.map +1 -1
  526. package/dist/v2/components/Drawer.js +93 -88
  527. package/dist/v2/components/Drawer.js.map +1 -1
  528. package/dist/v2/components/Dropzone.js +150 -196
  529. package/dist/v2/components/Dropzone.js.map +1 -1
  530. package/dist/v2/components/EmptyState.js +18 -20
  531. package/dist/v2/components/EmptyState.js.map +1 -1
  532. package/dist/v2/components/FavoriteToggle.js +28 -39
  533. package/dist/v2/components/FavoriteToggle.js.map +1 -1
  534. package/dist/v2/components/Field.d.ts +62 -4
  535. package/dist/v2/components/Field.d.ts.map +1 -1
  536. package/dist/v2/components/Field.js +169 -70
  537. package/dist/v2/components/Field.js.map +1 -1
  538. package/dist/v2/components/FieldError.js +18 -21
  539. package/dist/v2/components/FieldError.js.map +1 -1
  540. package/dist/v2/components/FieldHelp.js +40 -60
  541. package/dist/v2/components/FieldHelp.js.map +1 -1
  542. package/dist/v2/components/FileCard.js +27 -31
  543. package/dist/v2/components/FileCard.js.map +1 -1
  544. package/dist/v2/components/FilterTab.js +30 -38
  545. package/dist/v2/components/FilterTab.js.map +1 -1
  546. package/dist/v2/components/ForbiddenPage.d.ts +25 -1
  547. package/dist/v2/components/ForbiddenPage.d.ts.map +1 -1
  548. package/dist/v2/components/ForbiddenPage.js +37 -17
  549. package/dist/v2/components/ForbiddenPage.js.map +1 -1
  550. package/dist/v2/components/FormGrid.js +53 -59
  551. package/dist/v2/components/FormGrid.js.map +1 -1
  552. package/dist/v2/components/FormikDisplay.d.ts +50 -1
  553. package/dist/v2/components/FormikDisplay.d.ts.map +1 -1
  554. package/dist/v2/components/FormikDisplay.js +108 -33
  555. package/dist/v2/components/FormikDisplay.js.map +1 -1
  556. package/dist/v2/components/Input.d.ts +40 -0
  557. package/dist/v2/components/Input.d.ts.map +1 -1
  558. package/dist/v2/components/Input.js +81 -41
  559. package/dist/v2/components/Input.js.map +1 -1
  560. package/dist/v2/components/KPICard.js +57 -67
  561. package/dist/v2/components/KPICard.js.map +1 -1
  562. package/dist/v2/components/KPIStrip.js +16 -22
  563. package/dist/v2/components/KPIStrip.js.map +1 -1
  564. package/dist/v2/components/KV.js +25 -31
  565. package/dist/v2/components/KV.js.map +1 -1
  566. package/dist/v2/components/KVGrid.js +19 -26
  567. package/dist/v2/components/KVGrid.js.map +1 -1
  568. package/dist/v2/components/Layout.js +91 -120
  569. package/dist/v2/components/Layout.js.map +1 -1
  570. package/dist/v2/components/MobileRowCard.js +79 -91
  571. package/dist/v2/components/MobileRowCard.js.map +1 -1
  572. package/dist/v2/components/Modal.js +61 -69
  573. package/dist/v2/components/Modal.js.map +1 -1
  574. package/dist/v2/components/NetworkErrorPage.d.ts +19 -1
  575. package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -1
  576. package/dist/v2/components/NetworkErrorPage.js +38 -21
  577. package/dist/v2/components/NetworkErrorPage.js.map +1 -1
  578. package/dist/v2/components/NotFoundPage.d.ts +17 -1
  579. package/dist/v2/components/NotFoundPage.d.ts.map +1 -1
  580. package/dist/v2/components/NotFoundPage.js +37 -18
  581. package/dist/v2/components/NotFoundPage.js.map +1 -1
  582. package/dist/v2/components/NumberInput.js +88 -118
  583. package/dist/v2/components/NumberInput.js.map +1 -1
  584. package/dist/v2/components/OverflowMenu.js +38 -56
  585. package/dist/v2/components/OverflowMenu.js.map +1 -1
  586. package/dist/v2/components/PdfViewer.js +34 -45
  587. package/dist/v2/components/PdfViewer.js.map +1 -1
  588. package/dist/v2/components/ProgressBar.js +42 -49
  589. package/dist/v2/components/ProgressBar.js.map +1 -1
  590. package/dist/v2/components/Radio.js +59 -67
  591. package/dist/v2/components/Radio.js.map +1 -1
  592. package/dist/v2/components/SectionErrorBoundary.js +90 -135
  593. package/dist/v2/components/SectionErrorBoundary.js.map +1 -1
  594. package/dist/v2/components/SectionHeader.js +34 -41
  595. package/dist/v2/components/SectionHeader.js.map +1 -1
  596. package/dist/v2/components/Segmented.js +69 -93
  597. package/dist/v2/components/Segmented.js.map +1 -1
  598. package/dist/v2/components/Select.d.ts +26 -2
  599. package/dist/v2/components/Select.d.ts.map +1 -1
  600. package/dist/v2/components/Select.js +120 -155
  601. package/dist/v2/components/Select.js.map +1 -1
  602. package/dist/v2/components/ServerErrorPage.d.ts +27 -1
  603. package/dist/v2/components/ServerErrorPage.d.ts.map +1 -1
  604. package/dist/v2/components/ServerErrorPage.js +37 -20
  605. package/dist/v2/components/ServerErrorPage.js.map +1 -1
  606. package/dist/v2/components/Skeleton.js +86 -100
  607. package/dist/v2/components/Skeleton.js.map +1 -1
  608. package/dist/v2/components/SkipLink.js +9 -12
  609. package/dist/v2/components/SkipLink.js.map +1 -1
  610. package/dist/v2/components/Spinner.js +16 -25
  611. package/dist/v2/components/Spinner.js.map +1 -1
  612. package/dist/v2/components/Status.js +18 -29
  613. package/dist/v2/components/Status.js.map +1 -1
  614. package/dist/v2/components/Stepper.js +80 -82
  615. package/dist/v2/components/Stepper.js.map +1 -1
  616. package/dist/v2/components/Surface.js +34 -49
  617. package/dist/v2/components/Surface.js.map +1 -1
  618. package/dist/v2/components/Switch.js +29 -37
  619. package/dist/v2/components/Switch.js.map +1 -1
  620. package/dist/v2/components/TabPanel.d.ts +17 -0
  621. package/dist/v2/components/TabPanel.d.ts.map +1 -0
  622. package/dist/v2/components/TabPanel.js +90 -0
  623. package/dist/v2/components/TabPanel.js.map +1 -0
  624. package/dist/v2/components/Tabs.d.ts +25 -0
  625. package/dist/v2/components/Tabs.d.ts.map +1 -1
  626. package/dist/v2/components/Tabs.js +53 -29
  627. package/dist/v2/components/Tabs.js.map +1 -1
  628. package/dist/v2/components/TelInput.js +80 -115
  629. package/dist/v2/components/TelInput.js.map +1 -1
  630. package/dist/v2/components/Textarea.js +26 -35
  631. package/dist/v2/components/Textarea.js.map +1 -1
  632. package/dist/v2/components/TimePicker.js +62 -74
  633. package/dist/v2/components/TimePicker.js.map +1 -1
  634. package/dist/v2/components/Toast.js +119 -174
  635. package/dist/v2/components/Toast.js.map +1 -1
  636. package/dist/v2/components/Tooltip.js +23 -38
  637. package/dist/v2/components/Tooltip.js.map +1 -1
  638. package/dist/v2/components/_ErrorPageBody.js +15 -16
  639. package/dist/v2/components/_ErrorPageBody.js.map +1 -1
  640. package/dist/v2/components/_pickerShared.js +5 -5
  641. package/dist/v2/components/_pickerShared.js.map +1 -1
  642. package/dist/v2/components/index.d.ts +40 -1
  643. package/dist/v2/components/index.d.ts.map +1 -1
  644. package/dist/v2/components/index.js +153 -136
  645. package/dist/v2/components/index.js.map +1 -1
  646. package/dist/v2/hooks/index.d.ts +65 -0
  647. package/dist/v2/hooks/index.d.ts.map +1 -1
  648. package/dist/v2/hooks/index.js +63 -24
  649. package/dist/v2/hooks/index.js.map +1 -1
  650. package/dist/v2/hooks/useAppliedFilters.d.ts +102 -0
  651. package/dist/v2/hooks/useAppliedFilters.d.ts.map +1 -0
  652. package/dist/v2/hooks/useAppliedFilters.js +117 -0
  653. package/dist/v2/hooks/useAppliedFilters.js.map +1 -0
  654. package/dist/v2/hooks/useDebouncedCallback.d.ts +64 -0
  655. package/dist/v2/hooks/useDebouncedCallback.d.ts.map +1 -0
  656. package/dist/v2/hooks/useDebouncedCallback.js +87 -0
  657. package/dist/v2/hooks/useDebouncedCallback.js.map +1 -0
  658. package/dist/v2/hooks/useDelayedFlag.js +6 -20
  659. package/dist/v2/hooks/useDelayedFlag.js.map +1 -1
  660. package/dist/v2/hooks/useDensity.d.ts.map +1 -1
  661. package/dist/v2/hooks/useDensity.js +14 -18
  662. package/dist/v2/hooks/useDensity.js.map +1 -1
  663. package/dist/v2/hooks/useFocusFirstError.js +26 -34
  664. package/dist/v2/hooks/useFocusFirstError.js.map +1 -1
  665. package/dist/v2/hooks/useFocusOnRouteChange.d.ts +65 -0
  666. package/dist/v2/hooks/useFocusOnRouteChange.d.ts.map +1 -0
  667. package/dist/v2/hooks/useFocusOnRouteChange.js +88 -0
  668. package/dist/v2/hooks/useFocusOnRouteChange.js.map +1 -0
  669. package/dist/v2/hooks/useFocusTrap.js +20 -24
  670. package/dist/v2/hooks/useFocusTrap.js.map +1 -1
  671. package/dist/v2/hooks/useFormAutoSave.d.ts +4 -4
  672. package/dist/v2/hooks/useFormAutoSave.d.ts.map +1 -1
  673. package/dist/v2/hooks/useFormAutoSave.js +39 -54
  674. package/dist/v2/hooks/useFormAutoSave.js.map +1 -1
  675. package/dist/v2/hooks/useFormCompletionProgress.d.ts +1 -1
  676. package/dist/v2/hooks/useFormCompletionProgress.d.ts.map +1 -1
  677. package/dist/v2/hooks/useFormCompletionProgress.js +33 -52
  678. package/dist/v2/hooks/useFormCompletionProgress.js.map +1 -1
  679. package/dist/v2/hooks/useKeyboardShortcuts.d.ts +25 -0
  680. package/dist/v2/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  681. package/dist/v2/hooks/useKeyboardShortcuts.js +132 -0
  682. package/dist/v2/hooks/useKeyboardShortcuts.js.map +1 -0
  683. package/dist/v2/hooks/usePrefersReducedMotion.d.ts +56 -0
  684. package/dist/v2/hooks/usePrefersReducedMotion.d.ts.map +1 -0
  685. package/dist/v2/hooks/usePrefersReducedMotion.js +105 -0
  686. package/dist/v2/hooks/usePrefersReducedMotion.js.map +1 -0
  687. package/dist/v2/hooks/useResolvedDensity.js +5 -13
  688. package/dist/v2/hooks/useResolvedDensity.js.map +1 -1
  689. package/dist/v2/hooks/useSortedRows.js +4 -6
  690. package/dist/v2/hooks/useSortedRows.js.map +1 -1
  691. package/dist/v2/hooks/useTabLoading.js +7 -22
  692. package/dist/v2/hooks/useTabLoading.js.map +1 -1
  693. package/dist/v2/index.js +143 -145
  694. package/dist/v2/index.js.map +1 -1
  695. package/dist/v2/modalContext.js +2 -2
  696. package/dist/v2/modalContext.js.map +1 -1
  697. package/dist/v2/models/favorite.d.ts +8 -9
  698. package/dist/v2/models/favorite.d.ts.map +1 -1
  699. package/dist/v2/models/favorite.js.map +1 -1
  700. package/dist/v2/models/index.js +4 -4
  701. package/dist/v2/models/index.js.map +1 -1
  702. package/dist/v2/models/personalization.d.ts +44 -48
  703. package/dist/v2/models/personalization.d.ts.map +1 -1
  704. package/dist/v2/models/personalization.js.map +1 -1
  705. package/dist/v2/models/referentiel.d.ts +32 -50
  706. package/dist/v2/models/referentiel.d.ts.map +1 -1
  707. package/dist/v2/models/referentiel.js.map +1 -1
  708. package/dist/v2/models/savedFilter.d.ts +8 -17
  709. package/dist/v2/models/savedFilter.d.ts.map +1 -1
  710. package/dist/v2/models/savedFilter.js.map +1 -1
  711. package/dist/v2/patterns/ActionBar.js +152 -187
  712. package/dist/v2/patterns/ActionBar.js.map +1 -1
  713. package/dist/v2/patterns/AppMain.d.ts +109 -0
  714. package/dist/v2/patterns/AppMain.d.ts.map +1 -0
  715. package/dist/v2/patterns/AppMain.js +115 -0
  716. package/dist/v2/patterns/AppMain.js.map +1 -0
  717. package/dist/v2/patterns/BulkActionBar.js +40 -42
  718. package/dist/v2/patterns/BulkActionBar.js.map +1 -1
  719. package/dist/v2/patterns/ChartFigure.d.ts +124 -0
  720. package/dist/v2/patterns/ChartFigure.d.ts.map +1 -0
  721. package/dist/v2/patterns/ChartFigure.js +159 -0
  722. package/dist/v2/patterns/ChartFigure.js.map +1 -0
  723. package/dist/v2/patterns/CollapsibleDataGrid.js +138 -174
  724. package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -1
  725. package/dist/v2/patterns/ColumnsToggle.js +60 -94
  726. package/dist/v2/patterns/ColumnsToggle.js.map +1 -1
  727. package/dist/v2/patterns/DataGrid.d.ts.map +1 -1
  728. package/dist/v2/patterns/DataGrid.js +262 -297
  729. package/dist/v2/patterns/DataGrid.js.map +1 -1
  730. package/dist/v2/patterns/DataGridSettingsMenu.d.ts +12 -0
  731. package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -1
  732. package/dist/v2/patterns/DataGridSettingsMenu.js +104 -121
  733. package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -1
  734. package/dist/v2/patterns/DataGridToolbar.js +103 -106
  735. package/dist/v2/patterns/DataGridToolbar.js.map +1 -1
  736. package/dist/v2/patterns/DataGridVirtualized.js +179 -217
  737. package/dist/v2/patterns/DataGridVirtualized.js.map +1 -1
  738. package/dist/v2/patterns/DeleteResourceConfirmDialog.js +32 -35
  739. package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
  740. package/dist/v2/patterns/DetailSplit.d.ts +87 -0
  741. package/dist/v2/patterns/DetailSplit.d.ts.map +1 -0
  742. package/dist/v2/patterns/DetailSplit.js +116 -0
  743. package/dist/v2/patterns/DetailSplit.js.map +1 -0
  744. package/dist/v2/patterns/FavoriteColumn.js +22 -23
  745. package/dist/v2/patterns/FavoriteColumn.js.map +1 -1
  746. package/dist/v2/patterns/FavoritesFilter.js +36 -44
  747. package/dist/v2/patterns/FavoritesFilter.js.map +1 -1
  748. package/dist/v2/patterns/FilterTabBar.d.ts +28 -0
  749. package/dist/v2/patterns/FilterTabBar.d.ts.map +1 -0
  750. package/dist/v2/patterns/FilterTabBar.js +120 -0
  751. package/dist/v2/patterns/FilterTabBar.js.map +1 -0
  752. package/dist/v2/patterns/FormErrorSummary.js +20 -23
  753. package/dist/v2/patterns/FormErrorSummary.js.map +1 -1
  754. package/dist/v2/patterns/FormPageShell.js +53 -50
  755. package/dist/v2/patterns/FormPageShell.js.map +1 -1
  756. package/dist/v2/patterns/FormSection.d.ts +8 -3
  757. package/dist/v2/patterns/FormSection.d.ts.map +1 -1
  758. package/dist/v2/patterns/FormSection.js +44 -51
  759. package/dist/v2/patterns/FormSection.js.map +1 -1
  760. package/dist/v2/patterns/FormikCheckbox.js +36 -45
  761. package/dist/v2/patterns/FormikCheckbox.js.map +1 -1
  762. package/dist/v2/patterns/FormikCheckboxGroup.d.ts +17 -1
  763. package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -1
  764. package/dist/v2/patterns/FormikCheckboxGroup.js +62 -65
  765. package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -1
  766. package/dist/v2/patterns/FormikCombobox.js +55 -72
  767. package/dist/v2/patterns/FormikCombobox.js.map +1 -1
  768. package/dist/v2/patterns/FormikDatePicker.js +50 -64
  769. package/dist/v2/patterns/FormikDatePicker.js.map +1 -1
  770. package/dist/v2/patterns/FormikDateTimePicker.js +50 -64
  771. package/dist/v2/patterns/FormikDateTimePicker.js.map +1 -1
  772. package/dist/v2/patterns/FormikErrorFocus.js +25 -26
  773. package/dist/v2/patterns/FormikErrorFocus.js.map +1 -1
  774. package/dist/v2/patterns/FormikErrorSummary.d.ts +74 -0
  775. package/dist/v2/patterns/FormikErrorSummary.d.ts.map +1 -0
  776. package/dist/v2/patterns/FormikErrorSummary.js +97 -0
  777. package/dist/v2/patterns/FormikErrorSummary.js.map +1 -0
  778. package/dist/v2/patterns/FormikFile.d.ts +14 -1
  779. package/dist/v2/patterns/FormikFile.d.ts.map +1 -1
  780. package/dist/v2/patterns/FormikFile.js +99 -83
  781. package/dist/v2/patterns/FormikFile.js.map +1 -1
  782. package/dist/v2/patterns/FormikInput.js +45 -58
  783. package/dist/v2/patterns/FormikInput.js.map +1 -1
  784. package/dist/v2/patterns/FormikRadioGroup.js +45 -56
  785. package/dist/v2/patterns/FormikRadioGroup.js.map +1 -1
  786. package/dist/v2/patterns/FormikReferentielField.d.ts +12 -1
  787. package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -1
  788. package/dist/v2/patterns/FormikReferentielField.js +54 -64
  789. package/dist/v2/patterns/FormikReferentielField.js.map +1 -1
  790. package/dist/v2/patterns/FormikSelect.js +70 -92
  791. package/dist/v2/patterns/FormikSelect.js.map +1 -1
  792. package/dist/v2/patterns/FormikTextarea.js +35 -51
  793. package/dist/v2/patterns/FormikTextarea.js.map +1 -1
  794. package/dist/v2/patterns/KeyboardShortcutsHelp.js +60 -80
  795. package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
  796. package/dist/v2/patterns/NetworkErrorBanner.js +13 -16
  797. package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -1
  798. package/dist/v2/patterns/PageContent.js +17 -20
  799. package/dist/v2/patterns/PageContent.js.map +1 -1
  800. package/dist/v2/patterns/PreviewDrawer.d.ts +49 -0
  801. package/dist/v2/patterns/PreviewDrawer.d.ts.map +1 -0
  802. package/dist/v2/patterns/PreviewDrawer.js +159 -0
  803. package/dist/v2/patterns/PreviewDrawer.js.map +1 -0
  804. package/dist/v2/patterns/ReferentielField.d.ts +86 -2
  805. package/dist/v2/patterns/ReferentielField.d.ts.map +1 -1
  806. package/dist/v2/patterns/ReferentielField.js +347 -327
  807. package/dist/v2/patterns/ReferentielField.js.map +1 -1
  808. package/dist/v2/patterns/RowFavoriteToggle.d.ts +6 -0
  809. package/dist/v2/patterns/RowFavoriteToggle.d.ts.map +1 -1
  810. package/dist/v2/patterns/RowFavoriteToggle.js +38 -30
  811. package/dist/v2/patterns/RowFavoriteToggle.js.map +1 -1
  812. package/dist/v2/patterns/SaveFilterDialog.js +50 -77
  813. package/dist/v2/patterns/SaveFilterDialog.js.map +1 -1
  814. package/dist/v2/patterns/SavedFiltersMenu.js +89 -107
  815. package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -1
  816. package/dist/v2/patterns/SkeletonPageShell.js +122 -143
  817. package/dist/v2/patterns/SkeletonPageShell.js.map +1 -1
  818. package/dist/v2/patterns/SortableHeader.js +35 -57
  819. package/dist/v2/patterns/SortableHeader.js.map +1 -1
  820. package/dist/v2/patterns/Tour.js +121 -142
  821. package/dist/v2/patterns/Tour.js.map +1 -1
  822. package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -1
  823. package/dist/v2/patterns/_dataGridShared.js +131 -147
  824. package/dist/v2/patterns/_dataGridShared.js.map +1 -1
  825. package/dist/v2/patterns/_pickerSerialisation.js +9 -10
  826. package/dist/v2/patterns/_pickerSerialisation.js.map +1 -1
  827. package/dist/v2/patterns/_sort.js +17 -33
  828. package/dist/v2/patterns/_sort.js.map +1 -1
  829. package/dist/v2/patterns/_useColumnReorder.js +124 -163
  830. package/dist/v2/patterns/_useColumnReorder.js.map +1 -1
  831. package/dist/v2/patterns/_useColumnResize.js +80 -99
  832. package/dist/v2/patterns/_useColumnResize.js.map +1 -1
  833. package/dist/v2/patterns/filterCriteria.d.ts +78 -0
  834. package/dist/v2/patterns/filterCriteria.d.ts.map +1 -0
  835. package/dist/v2/patterns/filterCriteria.js +110 -0
  836. package/dist/v2/patterns/filterCriteria.js.map +1 -0
  837. package/dist/v2/patterns/index.d.ts +160 -0
  838. package/dist/v2/patterns/index.d.ts.map +1 -1
  839. package/dist/v2/patterns/index.js +157 -79
  840. package/dist/v2/patterns/index.js.map +1 -1
  841. package/dist/v2/patterns/rowActions.d.ts +150 -0
  842. package/dist/v2/patterns/rowActions.d.ts.map +1 -0
  843. package/dist/v2/patterns/rowActions.js +232 -0
  844. package/dist/v2/patterns/rowActions.js.map +1 -0
  845. package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -1
  846. package/dist/v2/personalization/PersonalizationProvider.js +57 -53
  847. package/dist/v2/personalization/PersonalizationProvider.js.map +1 -1
  848. package/dist/v2/personalization/adapters/_storageKey.js +5 -5
  849. package/dist/v2/personalization/adapters/_storageKey.js.map +1 -1
  850. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js +25 -24
  851. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
  852. package/dist/v2/personalization/adapters/createMemoryAdapter.js +14 -14
  853. package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
  854. package/dist/v2/personalization/adapters/index.js +5 -5
  855. package/dist/v2/personalization/adapters/index.js.map +1 -1
  856. package/dist/v2/personalization/capabilities/favorites.js +39 -62
  857. package/dist/v2/personalization/capabilities/favorites.js.map +1 -1
  858. package/dist/v2/personalization/capabilities/favoritesView.js +25 -37
  859. package/dist/v2/personalization/capabilities/favoritesView.js.map +1 -1
  860. package/dist/v2/personalization/capabilities/gridPreferences.js +31 -36
  861. package/dist/v2/personalization/capabilities/gridPreferences.js.map +1 -1
  862. package/dist/v2/personalization/capabilities/index.js +12 -12
  863. package/dist/v2/personalization/capabilities/reviveSavedCriteria.d.ts +88 -0
  864. package/dist/v2/personalization/capabilities/reviveSavedCriteria.d.ts.map +1 -0
  865. package/dist/v2/personalization/capabilities/reviveSavedCriteria.js +126 -0
  866. package/dist/v2/personalization/capabilities/reviveSavedCriteria.js.map +1 -0
  867. package/dist/v2/personalization/capabilities/savedFilters.js +93 -100
  868. package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -1
  869. package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -1
  870. package/dist/v2/personalization/createPersonalizationStore.js +81 -182
  871. package/dist/v2/personalization/createPersonalizationStore.js.map +1 -1
  872. package/dist/v2/personalization/index.d.ts +16 -0
  873. package/dist/v2/personalization/index.d.ts.map +1 -1
  874. package/dist/v2/personalization/index.js +30 -23
  875. package/dist/v2/personalization/index.js.map +1 -1
  876. package/dist/v2/personalization/personalizationContext.js +10 -12
  877. package/dist/v2/personalization/personalizationContext.js.map +1 -1
  878. package/dist/v2/personalization/schema.js +8 -9
  879. package/dist/v2/personalization/schema.js.map +1 -1
  880. package/dist/v2/referentiel/ReferentielProvider.js +31 -45
  881. package/dist/v2/referentiel/ReferentielProvider.js.map +1 -1
  882. package/dist/v2/referentiel/index.js +11 -13
  883. package/dist/v2/referentiel/index.js.map +1 -1
  884. package/dist/v2/referentiel/types.d.ts +105 -0
  885. package/dist/v2/referentiel/types.d.ts.map +1 -0
  886. package/dist/v2/referentiel/types.js +6 -0
  887. package/dist/v2/referentiel/types.js.map +1 -0
  888. package/dist/v2/referentiel/useReferentielClient.js +13 -16
  889. package/dist/v2/referentiel/useReferentielClient.js.map +1 -1
  890. package/dist/v2/referentiel/useReferentielOptions.d.ts +7 -17
  891. package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -1
  892. package/dist/v2/referentiel/useReferentielOptions.js +63 -120
  893. package/dist/v2/referentiel/useReferentielOptions.js.map +1 -1
  894. package/dist/v2/referentiel/useReferentielSearch.d.ts +7 -48
  895. package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -1
  896. package/dist/v2/referentiel/useReferentielSearch.js +40 -95
  897. package/dist/v2/referentiel/useReferentielSearch.js.map +1 -1
  898. package/dist/v2/theme/_brand.js +12 -26
  899. package/dist/v2/theme/_brand.js.map +1 -1
  900. package/dist/v2/theme/_brandSecondary.js +12 -26
  901. package/dist/v2/theme/_brandSecondary.js.map +1 -1
  902. package/dist/v2/theme/createPortnetTheme.js +41 -49
  903. package/dist/v2/theme/createPortnetTheme.js.map +1 -1
  904. package/dist/v2/theme/cssVariables.d.ts +3 -3
  905. package/dist/v2/theme/cssVariables.d.ts.map +1 -1
  906. package/dist/v2/theme/cssVariables.js +65 -70
  907. package/dist/v2/theme/cssVariables.js.map +1 -1
  908. package/dist/v2/theme/index.js +10 -10
  909. package/dist/v2/theme/index.js.map +1 -1
  910. package/dist/v2/tokens/breakpoints.js +16 -16
  911. package/dist/v2/tokens/breakpoints.js.map +1 -1
  912. package/dist/v2/tokens/chart.d.ts +103 -0
  913. package/dist/v2/tokens/chart.d.ts.map +1 -0
  914. package/dist/v2/tokens/chart.js +270 -0
  915. package/dist/v2/tokens/chart.js.map +1 -0
  916. package/dist/v2/tokens/colors.js +24 -24
  917. package/dist/v2/tokens/colors.js.map +1 -1
  918. package/dist/v2/tokens/density.d.ts +104 -0
  919. package/dist/v2/tokens/density.d.ts.map +1 -1
  920. package/dist/v2/tokens/density.js +67 -12
  921. package/dist/v2/tokens/density.js.map +1 -1
  922. package/dist/v2/tokens/index.d.ts +50 -1
  923. package/dist/v2/tokens/index.d.ts.map +1 -1
  924. package/dist/v2/tokens/index.js +116 -68
  925. package/dist/v2/tokens/index.js.map +1 -1
  926. package/dist/v2/tokens/motion.js +16 -22
  927. package/dist/v2/tokens/motion.js.map +1 -1
  928. package/dist/v2/tokens/radius.js +3 -3
  929. package/dist/v2/tokens/radius.js.map +1 -1
  930. package/dist/v2/tokens/shadows.js +8 -8
  931. package/dist/v2/tokens/shadows.js.map +1 -1
  932. package/dist/v2/tokens/spacing.js +4 -4
  933. package/dist/v2/tokens/spacing.js.map +1 -1
  934. package/dist/v2/tokens/state.js +3 -3
  935. package/dist/v2/tokens/state.js.map +1 -1
  936. package/dist/v2/tokens/statusPalette.js +21 -23
  937. package/dist/v2/tokens/statusPalette.js.map +1 -1
  938. package/dist/v2/tokens/tokens.json +6 -1
  939. package/dist/v2/tokens/typography.js +15 -15
  940. package/dist/v2/tokens/typography.js.map +1 -1
  941. package/dist/v2/tokens/zIndex.js +3 -3
  942. package/dist/v2/tokens/zIndex.js.map +1 -1
  943. package/dist/v2/types/datagrid.d.ts +9 -1
  944. package/dist/v2/types/datagrid.d.ts.map +1 -1
  945. package/dist/v2/types/datagrid.js.map +1 -1
  946. package/dist/v2/types/index.js +2 -2
  947. package/dist/v2/types/index.js.map +1 -1
  948. package/dist/v2/utils/apiError.js +16 -37
  949. package/dist/v2/utils/apiError.js.map +1 -1
  950. package/dist/v2/utils/contrast.js +31 -32
  951. package/dist/v2/utils/contrast.js.map +1 -1
  952. package/dist/v2/utils/cx.js +7 -27
  953. package/dist/v2/utils/cx.js.map +1 -1
  954. package/dist/v2/utils/fileDownload.js +25 -28
  955. package/dist/v2/utils/fileDownload.js.map +1 -1
  956. package/dist/v2/utils/fileValidation.d.ts +116 -0
  957. package/dist/v2/utils/fileValidation.d.ts.map +1 -0
  958. package/dist/v2/utils/fileValidation.js +220 -0
  959. package/dist/v2/utils/fileValidation.js.map +1 -0
  960. package/dist/v2/utils/fmtDate.d.ts +103 -0
  961. package/dist/v2/utils/fmtDate.d.ts.map +1 -0
  962. package/dist/v2/utils/fmtDate.js +119 -0
  963. package/dist/v2/utils/fmtDate.js.map +1 -0
  964. package/dist/v2/utils/fmtMoney.d.ts +3 -3
  965. package/dist/v2/utils/fmtMoney.d.ts.map +1 -1
  966. package/dist/v2/utils/fmtMoney.js +9 -11
  967. package/dist/v2/utils/fmtMoney.js.map +1 -1
  968. package/dist/v2/utils/formikErrors.d.ts +67 -0
  969. package/dist/v2/utils/formikErrors.d.ts.map +1 -0
  970. package/dist/v2/utils/formikErrors.js +85 -0
  971. package/dist/v2/utils/formikErrors.js.map +1 -0
  972. package/dist/v2/utils/index.d.ts +5 -0
  973. package/dist/v2/utils/index.d.ts.map +1 -1
  974. package/dist/v2/utils/index.js +67 -18
  975. package/dist/v2/utils/index.js.map +1 -1
  976. package/dist/v2/utils/mergeLabels.js +9 -14
  977. package/dist/v2/utils/mergeLabels.js.map +1 -1
  978. package/dist/v2/utils/networkStatus.js +14 -14
  979. package/dist/v2/utils/networkStatus.js.map +1 -1
  980. package/package.json +26 -9
@@ -1,29 +1,17 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports["default"] = void 0;
6
+ exports.default = void 0;
8
7
  var React = _interopRequireWildcard(require("react"));
9
8
  var _formik = require("formik");
10
9
  var _Field = _interopRequireDefault(require("../components/Field"));
11
10
  var _Radio = require("../components/Radio");
12
11
  var _jsxRuntime = require("react/jsx-runtime");
13
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
- 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); }
15
- 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; }
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
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
22
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
23
- 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); }
24
- 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; }
25
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
26
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /**
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
+ /**
27
15
  * FormikRadioGroup — bridge between Formik state and v2.Field +
28
16
  * v2.RadioGroup.
29
17
  *
@@ -87,62 +75,63 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /**
87
75
  *
88
76
  * Charter §03 · R-Sel.2, R-I.2, R-I.3, R-4.1. Peer dependency: formik >= 2.x.
89
77
  */
78
+
90
79
  /** Declared value of an option, whatever its shape. */
91
80
  function valeurOption(option) {
92
81
  return typeof option === "string" ? option : option.value;
93
82
  }
94
- var FormikRadioGroup = function FormikRadioGroup(_ref) {
95
- var name = _ref.name,
96
- label = _ref.label,
97
- _ref$options = _ref.options,
98
- options = _ref$options === void 0 ? [] : _ref$options,
99
- required = _ref.required,
100
- disabled = _ref.disabled,
101
- hint = _ref.hint,
102
- row = _ref.row;
103
- var _useField = (0, _formik.useField)(name),
104
- _useField2 = _slicedToArray(_useField, 2),
105
- field = _useField2[0],
106
- meta = _useField2[1];
107
- var _useFormikContext = (0, _formik.useFormikContext)(),
108
- setFieldValue = _useFormikContext.setFieldValue,
109
- setFieldTouched = _useFormikContext.setFieldTouched;
110
- var hasError = Boolean(meta.touched && meta.error);
83
+ const FormikRadioGroup = ({
84
+ name,
85
+ label,
86
+ options = [],
87
+ required,
88
+ disabled,
89
+ hint,
90
+ row
91
+ }) => {
92
+ const [field, meta] = (0, _formik.useField)(name);
93
+ const {
94
+ setFieldValue,
95
+ setFieldTouched
96
+ } = (0, _formik.useFormikContext)();
97
+ const hasError = Boolean(meta.touched && meta.error);
111
98
 
112
99
  /* Comparison only — the stored value is left untouched. A field holding
113
100
  * boolean `false` therefore selects the option declared "false". */
114
- var selection = field.value === null || field.value === undefined ? "" : String(field.value);
115
- var handleChange = function handleChange(_event, valeurDom) {
116
- var correspondante = options.find(function (option) {
117
- return String(valeurOption(option)) === valeurDom;
118
- });
101
+ const selection = field.value === null || field.value === undefined ? "" : String(field.value);
102
+ const handleChange = (_event, valeurDom) => {
103
+ const correspondante = options.find(option => String(valeurOption(option)) === valeurDom);
119
104
  /* Write back the DECLARED value — see the note above. The raw DOM string
120
105
  * is the fallback, not the norm. */
121
106
  void setFieldValue(name, correspondante === undefined ? valeurDom : valeurOption(correspondante));
122
107
  void setFieldTouched(name, true, false);
123
108
  };
124
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Field["default"], _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, label !== undefined ? {
125
- label: label
126
- } : {}), {}, {
109
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Field.default, {
110
+ ...(label !== undefined ? {
111
+ label
112
+ } : {}),
127
113
  error: hasError ? meta.error : null,
128
114
  hint: !hasError ? hint : undefined,
129
- group: true
130
- }, required !== undefined ? {
131
- required: required
132
- } : {}), disabled !== undefined ? {
133
- disabled: disabled
134
- } : {}), {}, {
135
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.RadioGroup, _objectSpread(_objectSpread({
115
+ group: true,
116
+ ...(required !== undefined ? {
117
+ required
118
+ } : {}),
119
+ ...(disabled !== undefined ? {
120
+ disabled
121
+ } : {}),
122
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Radio.RadioGroup, {
136
123
  name: name,
137
124
  value: selection,
138
125
  options: options,
139
- onChange: handleChange
140
- }, row !== undefined ? {
141
- row: row
142
- } : {}), disabled !== undefined ? {
143
- disabled: disabled
144
- } : {}))
145
- }));
126
+ onChange: handleChange,
127
+ ...(row !== undefined ? {
128
+ row
129
+ } : {}),
130
+ ...(disabled !== undefined ? {
131
+ disabled
132
+ } : {})
133
+ })
134
+ });
146
135
  };
147
- var _default = exports["default"] = FormikRadioGroup;
136
+ var _default = exports.default = FormikRadioGroup;
148
137
  //# sourceMappingURL=FormikRadioGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormikRadioGroup.js","names":["React","_interopRequireWildcard","require","_formik","_Field","_interopRequireDefault","_Radio","_jsxRuntime","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","isArray","valeurOption","option","FormikRadioGroup","_ref","label","_ref$options","options","required","disabled","row","_useField","useField","_useField2","field","meta","_useFormikContext","useFormikContext","setFieldValue","setFieldTouched","hasError","Boolean","touched","error","selection","handleChange","_event","valeurDom","correspondante","find","jsx","group","children","RadioGroup","onChange","_default","exports"],"sources":["../../../src/lib/v2/patterns/FormikRadioGroup.tsx"],"sourcesContent":["/**\r\n * FormikRadioGroup — bridge between Formik state and v2.Field +\r\n * v2.RadioGroup.\r\n *\r\n * ── WHY (gap G-C) ────────────────────────────────────────────────────\r\n *\r\n * R-Sel.2 is a MUST: 2–3 options → Radio or Segmented, never a Select. So any\r\n * form with a two-way business question has to reach for `RadioGroup` — and\r\n * until now there was no Formik bridge for it, while `FormikCheckboxGroup`,\r\n * `FormikSelect`, `FormikCombobox`, `FormikDatePicker`, `FormikTextarea`,\r\n * `FormikFile` and `FormikInput` all exist. Every host therefore re-wired\r\n * `useField` + `RadioGroup` by hand, which is the duplication R-2.1 forbids\r\n * and, worse, the shape in which validation messages go missing: a hand-rolled\r\n * bridge renders the control but forgets `FieldError`.\r\n *\r\n * Reported from refonte-frontend (lot 5), where ONE form carried two such\r\n * groups (`usageHorsMetrologique`, `certificat`).\r\n *\r\n * ── THE VALUE IS WRITTEN BACK AS DECLARED, NOT AS THE DOM SAW IT ─────\r\n *\r\n * This is the contract that matters, and it is invisible.\r\n *\r\n * A native `<input type=\"radio\">` only ever reports a STRING. A host whose\r\n * options are numbers — `{ value: 1 }`, `{ value: 2 }` — and whose payload\r\n * declares a number would silently start sending `\"1\"` after the user picks.\r\n * The API accepts it or rejects it days later; nothing in the UI tells anyone.\r\n *\r\n * So `onChange` matches the DOM string back against the option list and writes\r\n * the ORIGINAL option value. Numbers stay numbers, strings stay strings. Only\r\n * when no option matches (a host mutating its list mid-flight) does the raw DOM\r\n * string go through, because dropping the user's click would be worse.\r\n *\r\n * Symmetrically, the group's `value` is compared as a string, so a field\r\n * holding a boolean `false` selects the option declared `\"false\"`, and a field\r\n * holding the number `2` selects `{ value: 2 }`. The STORED value is never\r\n * coerced by this — only the comparison is.\r\n *\r\n * Usage:\r\n *\r\n * <FormikRadioGroup\r\n * name=\"importateur.certificat\"\r\n * label=\"Modèle déjà approuvé\"\r\n * required\r\n * row\r\n * options={[\r\n * { value: \"true\", label: \"Oui\" },\r\n * { value: \"false\", label: \"Non\" },\r\n * ]}\r\n * />\r\n *\r\n * ── ERRORS APPEAR ON PICK, NOT ON BLUR ──────────────────────────────\r\n *\r\n * A radio group has no meaningful blur-before-change: the first interaction IS\r\n * the answer. Waiting for a blur keeps a required-group message hidden while\r\n * the user clicks around. Picking marks the field touched — same rule as\r\n * `FormikCheckbox` and `FormikCheckboxGroup`.\r\n *\r\n * `required` is expressed on the FIELD, not on the options: `Field` renders the\r\n * asterisk on the group label and injects `aria-required`, which — unlike the\r\n * single-checkbox case — is valid on `role=\"radiogroup\"` and forwarded by\r\n * `RadioGroup`.\r\n *\r\n * Charter §03 · R-Sel.2, R-I.2, R-I.3, R-4.1. Peer dependency: formik >= 2.x.\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { useField, useFormikContext } from \"formik\";\r\nimport Field from \"../components/Field\";\r\nimport { RadioGroup } from \"../components/Radio\";\r\nimport type { RadioGroupOption } from \"../components/Radio\";\r\n\r\nexport interface FormikRadioGroupProps {\r\n name: string;\r\n /** Group label — rendered by `Field` above the options. */\r\n label?: React.ReactNode | undefined;\r\n options?: RadioGroupOption[] | undefined;\r\n required?: boolean | undefined;\r\n disabled?: boolean | undefined;\r\n hint?: React.ReactNode | undefined;\r\n /** Horizontal layout. Use only with short labels. */\r\n row?: boolean | undefined;\r\n}\r\n\r\n/** Declared value of an option, whatever its shape. */\r\nfunction valeurOption(option: RadioGroupOption): string | number {\r\n return typeof option === \"string\" ? option : option.value;\r\n}\r\n\r\nconst FormikRadioGroup = ({\r\n name,\r\n label,\r\n options = [],\r\n required,\r\n disabled,\r\n hint,\r\n row,\r\n}: FormikRadioGroupProps) => {\r\n const [field, meta] = useField(name);\r\n const { setFieldValue, setFieldTouched } = useFormikContext();\r\n const hasError = Boolean(meta.touched && meta.error);\r\n\r\n /* Comparison only — the stored value is left untouched. A field holding\r\n * boolean `false` therefore selects the option declared \"false\". */\r\n const selection =\r\n field.value === null || field.value === undefined\r\n ? \"\"\r\n : String(field.value);\r\n\r\n const handleChange = (\r\n _event: React.ChangeEvent<HTMLInputElement>,\r\n valeurDom: string\r\n ) => {\r\n const correspondante = options.find(\r\n (option) => String(valeurOption(option)) === valeurDom\r\n );\r\n /* Write back the DECLARED value — see the note above. The raw DOM string\r\n * is the fallback, not the norm. */\r\n void setFieldValue(\r\n name,\r\n correspondante === undefined ? valeurDom : valeurOption(correspondante)\r\n );\r\n void setFieldTouched(name, true, false);\r\n };\r\n\r\n return (\r\n <Field\r\n {...(label !== undefined ? { label } : {})}\r\n error={hasError ? meta.error : null}\r\n hint={!hasError ? hint : undefined}\r\n group\r\n {...(required !== undefined ? { required } : {})}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n >\r\n <RadioGroup\r\n name={name}\r\n value={selection}\r\n options={options}\r\n onChange={handleChange}\r\n {...(row !== undefined ? { row } : {})}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n />\r\n </Field>\r\n );\r\n};\r\n\r\nexport default FormikRadioGroup;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FormikRadioGroup.js","names":["React","_interopRequireWildcard","require","_formik","_Field","_interopRequireDefault","_Radio","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","valeurOption","option","value","FormikRadioGroup","name","label","options","required","disabled","hint","row","field","meta","useField","setFieldValue","setFieldTouched","useFormikContext","hasError","Boolean","touched","error","selection","undefined","String","handleChange","_event","valeurDom","correspondante","find","jsx","group","children","RadioGroup","onChange","_default","exports"],"sources":["../../../src/lib/v2/patterns/FormikRadioGroup.tsx"],"sourcesContent":["/**\r\n * FormikRadioGroup — bridge between Formik state and v2.Field +\r\n * v2.RadioGroup.\r\n *\r\n * ── WHY (gap G-C) ────────────────────────────────────────────────────\r\n *\r\n * R-Sel.2 is a MUST: 2–3 options → Radio or Segmented, never a Select. So any\r\n * form with a two-way business question has to reach for `RadioGroup` — and\r\n * until now there was no Formik bridge for it, while `FormikCheckboxGroup`,\r\n * `FormikSelect`, `FormikCombobox`, `FormikDatePicker`, `FormikTextarea`,\r\n * `FormikFile` and `FormikInput` all exist. Every host therefore re-wired\r\n * `useField` + `RadioGroup` by hand, which is the duplication R-2.1 forbids\r\n * and, worse, the shape in which validation messages go missing: a hand-rolled\r\n * bridge renders the control but forgets `FieldError`.\r\n *\r\n * Reported from refonte-frontend (lot 5), where ONE form carried two such\r\n * groups (`usageHorsMetrologique`, `certificat`).\r\n *\r\n * ── THE VALUE IS WRITTEN BACK AS DECLARED, NOT AS THE DOM SAW IT ─────\r\n *\r\n * This is the contract that matters, and it is invisible.\r\n *\r\n * A native `<input type=\"radio\">` only ever reports a STRING. A host whose\r\n * options are numbers — `{ value: 1 }`, `{ value: 2 }` — and whose payload\r\n * declares a number would silently start sending `\"1\"` after the user picks.\r\n * The API accepts it or rejects it days later; nothing in the UI tells anyone.\r\n *\r\n * So `onChange` matches the DOM string back against the option list and writes\r\n * the ORIGINAL option value. Numbers stay numbers, strings stay strings. Only\r\n * when no option matches (a host mutating its list mid-flight) does the raw DOM\r\n * string go through, because dropping the user's click would be worse.\r\n *\r\n * Symmetrically, the group's `value` is compared as a string, so a field\r\n * holding a boolean `false` selects the option declared `\"false\"`, and a field\r\n * holding the number `2` selects `{ value: 2 }`. The STORED value is never\r\n * coerced by this — only the comparison is.\r\n *\r\n * Usage:\r\n *\r\n * <FormikRadioGroup\r\n * name=\"importateur.certificat\"\r\n * label=\"Modèle déjà approuvé\"\r\n * required\r\n * row\r\n * options={[\r\n * { value: \"true\", label: \"Oui\" },\r\n * { value: \"false\", label: \"Non\" },\r\n * ]}\r\n * />\r\n *\r\n * ── ERRORS APPEAR ON PICK, NOT ON BLUR ──────────────────────────────\r\n *\r\n * A radio group has no meaningful blur-before-change: the first interaction IS\r\n * the answer. Waiting for a blur keeps a required-group message hidden while\r\n * the user clicks around. Picking marks the field touched — same rule as\r\n * `FormikCheckbox` and `FormikCheckboxGroup`.\r\n *\r\n * `required` is expressed on the FIELD, not on the options: `Field` renders the\r\n * asterisk on the group label and injects `aria-required`, which — unlike the\r\n * single-checkbox case — is valid on `role=\"radiogroup\"` and forwarded by\r\n * `RadioGroup`.\r\n *\r\n * Charter §03 · R-Sel.2, R-I.2, R-I.3, R-4.1. Peer dependency: formik >= 2.x.\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { useField, useFormikContext } from \"formik\";\r\nimport Field from \"../components/Field\";\r\nimport { RadioGroup } from \"../components/Radio\";\r\nimport type { RadioGroupOption } from \"../components/Radio\";\r\n\r\nexport interface FormikRadioGroupProps {\r\n name: string;\r\n /** Group label — rendered by `Field` above the options. */\r\n label?: React.ReactNode | undefined;\r\n options?: RadioGroupOption[] | undefined;\r\n required?: boolean | undefined;\r\n disabled?: boolean | undefined;\r\n hint?: React.ReactNode | undefined;\r\n /** Horizontal layout. Use only with short labels. */\r\n row?: boolean | undefined;\r\n}\r\n\r\n/** Declared value of an option, whatever its shape. */\r\nfunction valeurOption(option: RadioGroupOption): string | number {\r\n return typeof option === \"string\" ? option : option.value;\r\n}\r\n\r\nconst FormikRadioGroup = ({\r\n name,\r\n label,\r\n options = [],\r\n required,\r\n disabled,\r\n hint,\r\n row,\r\n}: FormikRadioGroupProps) => {\r\n const [field, meta] = useField(name);\r\n const { setFieldValue, setFieldTouched } = useFormikContext();\r\n const hasError = Boolean(meta.touched && meta.error);\r\n\r\n /* Comparison only — the stored value is left untouched. A field holding\r\n * boolean `false` therefore selects the option declared \"false\". */\r\n const selection =\r\n field.value === null || field.value === undefined\r\n ? \"\"\r\n : String(field.value);\r\n\r\n const handleChange = (\r\n _event: React.ChangeEvent<HTMLInputElement>,\r\n valeurDom: string\r\n ) => {\r\n const correspondante = options.find(\r\n (option) => String(valeurOption(option)) === valeurDom\r\n );\r\n /* Write back the DECLARED value — see the note above. The raw DOM string\r\n * is the fallback, not the norm. */\r\n void setFieldValue(\r\n name,\r\n correspondante === undefined ? valeurDom : valeurOption(correspondante)\r\n );\r\n void setFieldTouched(name, true, false);\r\n };\r\n\r\n return (\r\n <Field\r\n {...(label !== undefined ? { label } : {})}\r\n error={hasError ? meta.error : null}\r\n hint={!hasError ? hint : undefined}\r\n group\r\n {...(required !== undefined ? { required } : {})}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n >\r\n <RadioGroup\r\n name={name}\r\n value={selection}\r\n options={options}\r\n onChange={handleChange}\r\n {...(row !== undefined ? { row } : {})}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n />\r\n </Field>\r\n );\r\n};\r\n\r\nexport default FormikRadioGroup;\r\n"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,7 @@
12
12
  * Charter R-Sel.1 → R-Sel.4. Peer dependency: formik >= 2.x.
13
13
  */
14
14
  import * as React from "react";
15
+ import type { FieldWidth } from "../components/Field";
15
16
  import { type ReferentielFieldProps } from "./ReferentielField";
16
17
  export interface FormikReferentielFieldProps<T> extends Omit<ReferentielFieldProps<T>, "value" | "onChange" | "getDisplayValue" | "name"> {
17
18
  name: string;
@@ -27,7 +28,17 @@ export interface FormikReferentielFieldProps<T> extends Omit<ReferentielFieldPro
27
28
  onPick?: ((row: T) => void) | undefined;
28
29
  /** Rows to seed the label cache with (e.g. an edit form's initial value). */
29
30
  seenRows?: T[] | undefined;
31
+ /**
32
+ * Semantic width bucket (gap G-H). The Platform standard files « complex
33
+ * search auto-completes » under L — which is exactly what this field is,
34
+ * so `l` is the usual choice here.
35
+ *
36
+ * Wired last of the seven bridges, on the first real case: the shared IDM
37
+ * search form has an Importateur field on this bridge, and §Form Field Width
38
+ * forbids leaving it unbounded.
39
+ */
40
+ width?: FieldWidth | undefined;
30
41
  }
31
- declare function FormikReferentielField<T>({ name, label, required, disabled, hint, htmlFor, getOptionValue, getDescription, onPick, seenRows, ...refProps }: FormikReferentielFieldProps<T>): React.JSX.Element;
42
+ declare function FormikReferentielField<T>({ name, label, required, disabled, hint, htmlFor, getOptionValue, getDescription, onPick, seenRows, width, ...refProps }: FormikReferentielFieldProps<T>): React.JSX.Element;
32
43
  export default FormikReferentielField;
33
44
  //# sourceMappingURL=FormikReferentielField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormikReferentielField.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/FormikReferentielField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAyB,EAAE,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAElF,MAAM,WAAW,2BAA2B,CAAC,CAAC,CAC5C,SAAQ,IAAI,CACV,qBAAqB,CAAC,CAAC,CAAC,EACxB,OAAO,GAAG,UAAU,GAAG,iBAAiB,GAAG,MAAM,CAClD;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,sEAAsE;IACtE,cAAc,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;IACnD,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;IAClD,sEAAsE;IACtE,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACxC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;CAC5B;AAED,iBAAS,sBAAsB,CAAC,CAAC,EAAE,EACjC,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,QAAQ,EACR,GAAG,QAAQ,EACZ,EAAE,2BAA2B,CAAC,CAAC,CAAC,qBAsEhC;AAED,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"FormikReferentielField.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/FormikReferentielField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAyB,EAAE,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAElF,MAAM,WAAW,2BAA2B,CAAC,CAAC,CAC5C,SAAQ,IAAI,CACV,qBAAqB,CAAC,CAAC,CAAC,EACxB,OAAO,GAAG,UAAU,GAAG,iBAAiB,GAAG,MAAM,CAClD;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,sEAAsE;IACtE,cAAc,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;IACnD,qDAAqD;IACrD,cAAc,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;IAClD,sEAAsE;IACtE,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACxC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;IAC3B;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CAChC;AAED,iBAAS,sBAAsB,CAAC,CAAC,EAAE,EACjC,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,QAAQ,EACR,KAAK,EACL,GAAG,QAAQ,EACZ,EAAE,2BAA2B,CAAC,CAAC,CAAC,qBAuEhC;AAED,eAAe,sBAAsB,CAAC"}
@@ -3,13 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports["default"] = void 0;
6
+ exports.default = void 0;
7
7
  var React = _interopRequireWildcard(require("react"));
8
8
  var _formik = require("formik");
9
9
  var _Field = _interopRequireDefault(require("../components/Field"));
10
10
  var _ReferentielField = _interopRequireDefault(require("./ReferentielField"));
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
- var _excluded = ["name", "label", "required", "disabled", "hint", "htmlFor", "getOptionValue", "getDescription", "onPick", "seenRows"];
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
14
  /**
14
15
  * FormikReferentielField — bridge between Formik state and
15
16
  * v2.ReferentielField.
@@ -23,102 +24,91 @@ var _excluded = ["name", "label", "required", "disabled", "hint", "htmlFor", "ge
23
24
  *
24
25
  * Charter R-Sel.1 → R-Sel.4. Peer dependency: formik >= 2.x.
25
26
  */
26
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
27
- 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); }
28
- 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; }
29
- 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; }
30
- 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; }
31
- 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; }
32
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
33
- 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); }
34
- 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); }
35
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
36
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
37
- 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); }
38
- 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; }
39
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
40
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
41
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
42
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
43
- function FormikReferentielField(_ref) {
44
- var name = _ref.name,
45
- label = _ref.label,
46
- required = _ref.required,
47
- disabled = _ref.disabled,
48
- hint = _ref.hint,
49
- htmlFor = _ref.htmlFor,
50
- getOptionValue = _ref.getOptionValue,
51
- getDescription = _ref.getDescription,
52
- onPick = _ref.onPick,
53
- seenRows = _ref.seenRows,
54
- refProps = _objectWithoutProperties(_ref, _excluded);
55
- var _useField = (0, _formik.useField)(name),
56
- _useField2 = _slicedToArray(_useField, 2),
57
- field = _useField2[0],
58
- meta = _useField2[1];
59
- var _useFormikContext = (0, _formik.useFormikContext)(),
60
- setFieldValue = _useFormikContext.setFieldValue,
61
- setFieldTouched = _useFormikContext.setFieldTouched;
62
- var hasError = Boolean(meta.touched && meta.error);
27
+
28
+ function FormikReferentielField({
29
+ name,
30
+ label,
31
+ required,
32
+ disabled,
33
+ hint,
34
+ htmlFor,
35
+ getOptionValue,
36
+ getDescription,
37
+ onPick,
38
+ seenRows,
39
+ width,
40
+ ...refProps
41
+ }) {
42
+ const [field, meta] = (0, _formik.useField)(name);
43
+ const {
44
+ setFieldValue,
45
+ setFieldTouched
46
+ } = (0, _formik.useFormikContext)();
47
+ const hasError = Boolean(meta.touched && meta.error);
63
48
 
64
49
  /* Cache of rows the user has picked in this session, keyed by the
65
50
  * resolved option value. Lets us render the trigger label after a
66
51
  * pick without re-fetching. */
67
- var cacheRef = React.useRef(new Map());
52
+ const cacheRef = React.useRef(new Map());
68
53
  // `seenRows` (if provided) seeds the cache and is NOT forwarded to
69
54
  // ReferentielField — consuming it via the destructure keeps refProps clean.
70
55
  if (seenRows) {
71
- seenRows.forEach(function (row) {
56
+ seenRows.forEach(row => {
72
57
  cacheRef.current.set(getOptionValue ? getOptionValue(row) : row, row);
73
58
  });
74
59
  }
75
- var valueRow = React.useMemo(function () {
76
- var _cacheRef$current$get;
60
+ const valueRow = React.useMemo(() => {
77
61
  if (field.value == null || field.value === "") return null;
78
- return (_cacheRef$current$get = cacheRef.current.get(field.value)) !== null && _cacheRef$current$get !== void 0 ? _cacheRef$current$get : null;
62
+ return cacheRef.current.get(field.value) ?? null;
79
63
  }, [field.value]);
80
- var handleChange = function handleChange(row) {
64
+ const handleChange = row => {
81
65
  if (row == null) {
82
66
  setFieldValue(name, "");
83
67
  setFieldTouched(name, true, false);
84
68
  return;
85
69
  }
86
- var val = getOptionValue ? getOptionValue(row) : row;
70
+ const val = getOptionValue ? getOptionValue(row) : row;
87
71
  cacheRef.current.set(val, row);
88
72
  setFieldValue(name, val);
89
73
  setFieldTouched(name, true, false);
90
74
  if (typeof onPick === "function") onPick(row);
91
75
  };
92
- var display = React.useCallback(function (rowOrVal) {
76
+ const display = React.useCallback(rowOrVal => {
93
77
  // ReferentielField calls getDisplayValue(value) — `value` here is
94
78
  // either the cached row (if available) or the raw formik primitive.
95
79
  // Resolve through the cache when we have it.
96
- if (rowOrVal && _typeof(rowOrVal) === "object") {
80
+ if (rowOrVal && typeof rowOrVal === "object") {
97
81
  return getDescription ? getDescription(rowOrVal) : String(rowOrVal);
98
82
  }
99
- var cached = cacheRef.current.get(rowOrVal);
83
+ const cached = cacheRef.current.get(rowOrVal);
100
84
  if (cached) return getDescription ? getDescription(cached) : String(cached);
101
85
  return rowOrVal == null ? "" : String(rowOrVal);
102
86
  }, [getDescription]);
103
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Field["default"], _objectSpread(_objectSpread(_objectSpread({
87
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Field.default, {
104
88
  label: label,
105
89
  error: hasError ? meta.error : null,
106
90
  hint: !hasError ? hint : undefined,
107
- htmlFor: htmlFor || name
108
- }, required !== undefined ? {
109
- required: required
110
- } : {}), disabled !== undefined ? {
111
- disabled: disabled
112
- } : {}), {}, {
113
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ReferentielField["default"], _objectSpread(_objectSpread({
91
+ htmlFor: htmlFor || name,
92
+ ...(required !== undefined ? {
93
+ required
94
+ } : {}),
95
+ ...(disabled !== undefined ? {
96
+ disabled
97
+ } : {}),
98
+ ...(width !== undefined ? {
99
+ width
100
+ } : {}),
101
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ReferentielField.default, {
114
102
  name: name,
115
- value: valueRow !== null && valueRow !== void 0 ? valueRow : field.value,
103
+ value: valueRow ?? field.value,
116
104
  onChange: handleChange,
117
- getDisplayValue: display
118
- }, refProps), disabled !== undefined ? {
119
- disabled: disabled
120
- } : {}))
121
- }));
105
+ getDisplayValue: display,
106
+ ...refProps,
107
+ ...(disabled !== undefined ? {
108
+ disabled
109
+ } : {})
110
+ })
111
+ });
122
112
  }
123
- var _default = exports["default"] = FormikReferentielField;
113
+ var _default = exports.default = FormikReferentielField;
124
114
  //# sourceMappingURL=FormikReferentielField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormikReferentielField.js","names":["React","_interopRequireWildcard","require","_formik","_Field","_interopRequireDefault","_ReferentielField","_jsxRuntime","_excluded","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","iterator","constructor","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","name","Array","from","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","err","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","FormikReferentielField","_ref","label","required","disabled","htmlFor","getOptionValue","getDescription","onPick","seenRows","refProps","_useField","useField","_useField2","field","meta","_useFormikContext","useFormikContext","setFieldValue","setFieldTouched","hasError","Boolean","touched","error","cacheRef","useRef","Map","row","current","valueRow","useMemo","_cacheRef$current$get","handleChange","val","display","useCallback","rowOrVal","cached","jsx","children","onChange","getDisplayValue","_default","exports"],"sources":["../../../src/lib/v2/patterns/FormikReferentielField.tsx"],"sourcesContent":["/**\r\n * FormikReferentielField — bridge between Formik state and\r\n * v2.ReferentielField.\r\n *\r\n * Mirrors the API surface of the legacy AppFormikSearchField wrapper:\r\n * - stores `getOptionValue(row)` in Formik state under `name`\r\n * - displays `getDescription(row)` in the trigger Input (resolves\r\n * via a host-supplied lookup or a cached map of seen rows)\r\n * - calls `onPick(row)` after a successful selection so the host\r\n * can mirror sibling fields (e.g. *.id + *.description pairs)\r\n *\r\n * Charter R-Sel.1 → R-Sel.4. Peer dependency: formik >= 2.x.\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { useField, useFormikContext } from \"formik\";\r\nimport Field from \"../components/Field\";\r\nimport ReferentielField, { type ReferentielFieldProps } from \"./ReferentielField\";\r\n\r\nexport interface FormikReferentielFieldProps<T>\r\n extends Omit<\r\n ReferentielFieldProps<T>,\r\n \"value\" | \"onChange\" | \"getDisplayValue\" | \"name\"\r\n > {\r\n name: string;\r\n label?: React.ReactNode | undefined;\r\n required?: boolean | undefined;\r\n hint?: React.ReactNode | undefined;\r\n htmlFor?: string | undefined;\r\n /** Resolve the primitive stored in Formik state from a picked row. */\r\n getOptionValue?: ((row: T) => unknown) | undefined;\r\n /** Resolve the trigger display string from a row. */\r\n getDescription?: ((row: T) => string) | undefined;\r\n /** Called after a successful pick so the host can mirror siblings. */\r\n onPick?: ((row: T) => void) | undefined;\r\n /** Rows to seed the label cache with (e.g. an edit form's initial value). */\r\n seenRows?: T[] | undefined;\r\n}\r\n\r\nfunction FormikReferentielField<T>({\r\n name,\r\n label,\r\n required,\r\n disabled,\r\n hint,\r\n htmlFor,\r\n getOptionValue,\r\n getDescription,\r\n onPick,\r\n seenRows,\r\n ...refProps\r\n}: FormikReferentielFieldProps<T>) {\r\n const [field, meta] = useField<unknown>(name);\r\n const { setFieldValue, setFieldTouched } = useFormikContext();\r\n const hasError = Boolean(meta.touched && meta.error);\r\n\r\n /* Cache of rows the user has picked in this session, keyed by the\r\n * resolved option value. Lets us render the trigger label after a\r\n * pick without re-fetching. */\r\n const cacheRef = React.useRef(new Map<unknown, T>());\r\n // `seenRows` (if provided) seeds the cache and is NOT forwarded to\r\n // ReferentielField — consuming it via the destructure keeps refProps clean.\r\n if (seenRows) {\r\n seenRows.forEach((row) => {\r\n cacheRef.current.set(getOptionValue ? getOptionValue(row) : row, row);\r\n });\r\n }\r\n\r\n const valueRow = React.useMemo<T | null>(() => {\r\n if (field.value == null || field.value === \"\") return null;\r\n return cacheRef.current.get(field.value) ?? null;\r\n }, [field.value]);\r\n\r\n const handleChange = (row: T | null) => {\r\n if (row == null) {\r\n setFieldValue(name, \"\");\r\n setFieldTouched(name, true, false);\r\n return;\r\n }\r\n const val = getOptionValue ? getOptionValue(row) : row;\r\n cacheRef.current.set(val, row);\r\n setFieldValue(name, val);\r\n setFieldTouched(name, true, false);\r\n if (typeof onPick === \"function\") onPick(row);\r\n };\r\n\r\n const display = React.useCallback(\r\n (rowOrVal: T): string => {\r\n // ReferentielField calls getDisplayValue(value) — `value` here is\r\n // either the cached row (if available) or the raw formik primitive.\r\n // Resolve through the cache when we have it.\r\n if (rowOrVal && typeof rowOrVal === \"object\") {\r\n return getDescription ? getDescription(rowOrVal) : String(rowOrVal);\r\n }\r\n const cached = cacheRef.current.get(rowOrVal);\r\n if (cached)\r\n return getDescription ? getDescription(cached) : String(cached);\r\n return rowOrVal == null ? \"\" : String(rowOrVal);\r\n },\r\n [getDescription]\r\n );\r\n\r\n return (\r\n <Field\r\n label={label}\r\n error={hasError ? meta.error : null}\r\n hint={!hasError ? hint : undefined}\r\n htmlFor={htmlFor || name}\r\n {...(required !== undefined ? { required } : {})}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n >\r\n <ReferentielField\r\n name={name}\r\n value={(valueRow ?? field.value) as T | null}\r\n onChange={handleChange}\r\n getDisplayValue={display}\r\n {...refProps}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n />\r\n </Field>\r\n );\r\n}\r\n\r\nexport default FormikReferentielField;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FormikReferentielField.js","names":["React","_interopRequireWildcard","require","_formik","_Field","_interopRequireDefault","_ReferentielField","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FormikReferentielField","name","label","required","disabled","hint","htmlFor","getOptionValue","getDescription","onPick","seenRows","width","refProps","field","meta","useField","setFieldValue","setFieldTouched","useFormikContext","hasError","Boolean","touched","error","cacheRef","useRef","Map","forEach","row","current","valueRow","useMemo","value","handleChange","val","display","useCallback","rowOrVal","String","cached","jsx","undefined","children","onChange","getDisplayValue","_default","exports"],"sources":["../../../src/lib/v2/patterns/FormikReferentielField.tsx"],"sourcesContent":["/**\r\n * FormikReferentielField — bridge between Formik state and\r\n * v2.ReferentielField.\r\n *\r\n * Mirrors the API surface of the legacy AppFormikSearchField wrapper:\r\n * - stores `getOptionValue(row)` in Formik state under `name`\r\n * - displays `getDescription(row)` in the trigger Input (resolves\r\n * via a host-supplied lookup or a cached map of seen rows)\r\n * - calls `onPick(row)` after a successful selection so the host\r\n * can mirror sibling fields (e.g. *.id + *.description pairs)\r\n *\r\n * Charter R-Sel.1 → R-Sel.4. Peer dependency: formik >= 2.x.\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { useField, useFormikContext } from \"formik\";\r\nimport Field from \"../components/Field\";\r\nimport type { FieldWidth } from \"../components/Field\";\r\nimport ReferentielField, { type ReferentielFieldProps } from \"./ReferentielField\";\r\n\r\nexport interface FormikReferentielFieldProps<T>\r\n extends Omit<\r\n ReferentielFieldProps<T>,\r\n \"value\" | \"onChange\" | \"getDisplayValue\" | \"name\"\r\n > {\r\n name: string;\r\n label?: React.ReactNode | undefined;\r\n required?: boolean | undefined;\r\n hint?: React.ReactNode | undefined;\r\n htmlFor?: string | undefined;\r\n /** Resolve the primitive stored in Formik state from a picked row. */\r\n getOptionValue?: ((row: T) => unknown) | undefined;\r\n /** Resolve the trigger display string from a row. */\r\n getDescription?: ((row: T) => string) | undefined;\r\n /** Called after a successful pick so the host can mirror siblings. */\r\n onPick?: ((row: T) => void) | undefined;\r\n /** Rows to seed the label cache with (e.g. an edit form's initial value). */\r\n seenRows?: T[] | undefined;\r\n /**\r\n * Semantic width bucket (gap G-H). The Platform standard files « complex\r\n * search auto-completes » under L — which is exactly what this field is,\r\n * so `l` is the usual choice here.\r\n *\r\n * Wired last of the seven bridges, on the first real case: the shared IDM\r\n * search form has an Importateur field on this bridge, and §Form Field Width\r\n * forbids leaving it unbounded.\r\n */\r\n width?: FieldWidth | undefined;\r\n}\r\n\r\nfunction FormikReferentielField<T>({\r\n name,\r\n label,\r\n required,\r\n disabled,\r\n hint,\r\n htmlFor,\r\n getOptionValue,\r\n getDescription,\r\n onPick,\r\n seenRows,\r\n width,\r\n ...refProps\r\n}: FormikReferentielFieldProps<T>) {\r\n const [field, meta] = useField<unknown>(name);\r\n const { setFieldValue, setFieldTouched } = useFormikContext();\r\n const hasError = Boolean(meta.touched && meta.error);\r\n\r\n /* Cache of rows the user has picked in this session, keyed by the\r\n * resolved option value. Lets us render the trigger label after a\r\n * pick without re-fetching. */\r\n const cacheRef = React.useRef(new Map<unknown, T>());\r\n // `seenRows` (if provided) seeds the cache and is NOT forwarded to\r\n // ReferentielField — consuming it via the destructure keeps refProps clean.\r\n if (seenRows) {\r\n seenRows.forEach((row) => {\r\n cacheRef.current.set(getOptionValue ? getOptionValue(row) : row, row);\r\n });\r\n }\r\n\r\n const valueRow = React.useMemo<T | null>(() => {\r\n if (field.value == null || field.value === \"\") return null;\r\n return cacheRef.current.get(field.value) ?? null;\r\n }, [field.value]);\r\n\r\n const handleChange = (row: T | null) => {\r\n if (row == null) {\r\n setFieldValue(name, \"\");\r\n setFieldTouched(name, true, false);\r\n return;\r\n }\r\n const val = getOptionValue ? getOptionValue(row) : row;\r\n cacheRef.current.set(val, row);\r\n setFieldValue(name, val);\r\n setFieldTouched(name, true, false);\r\n if (typeof onPick === \"function\") onPick(row);\r\n };\r\n\r\n const display = React.useCallback(\r\n (rowOrVal: T): string => {\r\n // ReferentielField calls getDisplayValue(value) — `value` here is\r\n // either the cached row (if available) or the raw formik primitive.\r\n // Resolve through the cache when we have it.\r\n if (rowOrVal && typeof rowOrVal === \"object\") {\r\n return getDescription ? getDescription(rowOrVal) : String(rowOrVal);\r\n }\r\n const cached = cacheRef.current.get(rowOrVal);\r\n if (cached)\r\n return getDescription ? getDescription(cached) : String(cached);\r\n return rowOrVal == null ? \"\" : String(rowOrVal);\r\n },\r\n [getDescription]\r\n );\r\n\r\n return (\r\n <Field\r\n label={label}\r\n error={hasError ? meta.error : null}\r\n hint={!hasError ? hint : undefined}\r\n htmlFor={htmlFor || name}\r\n {...(required !== undefined ? { required } : {})}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n {...(width !== undefined ? { width } : {})}\r\n >\r\n <ReferentielField\r\n name={name}\r\n value={(valueRow ?? field.value) as T | null}\r\n onChange={handleChange}\r\n getDisplayValue={display}\r\n {...refProps}\r\n {...(disabled !== undefined ? { disabled } : {})}\r\n />\r\n </Field>\r\n );\r\n}\r\n\r\nexport default FormikReferentielField;\r\n"],"mappings":"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","ignoreList":[]}