@portnet/ui 6.0.0 → 6.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (748) hide show
  1. package/dist/esm/index.js +196 -0
  2. package/dist/esm/index.js.map +1 -0
  3. package/dist/esm/v2/__tests__/FieldError.test.js +160 -0
  4. package/dist/esm/v2/__tests__/FieldError.test.js.map +1 -0
  5. package/dist/esm/v2/__tests__/FileCard.test.js +144 -0
  6. package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -0
  7. package/dist/esm/v2/__tests__/MobileRowCard.test.js +333 -0
  8. package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -0
  9. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +235 -0
  10. package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
  11. package/dist/esm/v2/__tests__/apiError.test.js +181 -0
  12. package/dist/esm/v2/__tests__/apiError.test.js.map +1 -0
  13. package/dist/esm/v2/__tests__/banned-patterns.test.js +270 -0
  14. package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -0
  15. package/dist/esm/v2/__tests__/contrast-palette.test.js +224 -0
  16. package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -0
  17. package/dist/esm/v2/__tests__/cssVariables.test.js +157 -0
  18. package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -0
  19. package/dist/esm/v2/__tests__/labels-merge.test.js +147 -0
  20. package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -0
  21. package/dist/esm/v2/__tests__/locale-fallback.test.js +109 -0
  22. package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -0
  23. package/dist/esm/v2/__tests__/useFocusTrap.test.js +514 -0
  24. package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -0
  25. package/dist/esm/v2/components/Accordion.js +230 -0
  26. package/dist/esm/v2/components/Accordion.js.map +1 -0
  27. package/dist/esm/v2/components/ActionStrip.js +146 -0
  28. package/dist/esm/v2/components/ActionStrip.js.map +1 -0
  29. package/dist/esm/v2/components/Banner.js +254 -0
  30. package/dist/esm/v2/components/Banner.js.map +1 -0
  31. package/dist/esm/v2/components/Busy.js +97 -0
  32. package/dist/esm/v2/components/Busy.js.map +1 -0
  33. package/dist/esm/v2/components/Button.js +114 -0
  34. package/dist/esm/v2/components/Button.js.map +1 -0
  35. package/dist/esm/v2/components/CategoryTag.js +81 -0
  36. package/dist/esm/v2/components/CategoryTag.js.map +1 -0
  37. package/dist/esm/v2/components/Checkbox.js +124 -0
  38. package/dist/esm/v2/components/Checkbox.js.map +1 -0
  39. package/dist/esm/v2/components/Chip.js +124 -0
  40. package/dist/esm/v2/components/Chip.js.map +1 -0
  41. package/dist/esm/v2/components/Combobox.js +394 -0
  42. package/dist/esm/v2/components/Combobox.js.map +1 -0
  43. package/dist/esm/v2/components/CommandPalette.js +660 -0
  44. package/dist/esm/v2/components/CommandPalette.js.map +1 -0
  45. package/dist/esm/v2/components/ConfirmDialog.js +144 -0
  46. package/dist/esm/v2/components/ConfirmDialog.js.map +1 -0
  47. package/dist/esm/v2/components/DatePicker.js +200 -0
  48. package/dist/esm/v2/components/DatePicker.js.map +1 -0
  49. package/dist/esm/v2/components/DateRangePicker.js +289 -0
  50. package/dist/esm/v2/components/DateRangePicker.js.map +1 -0
  51. package/dist/esm/v2/components/DateTimePicker.js +182 -0
  52. package/dist/esm/v2/components/DateTimePicker.js.map +1 -0
  53. package/dist/esm/v2/components/Drawer.js +333 -0
  54. package/dist/esm/v2/components/Drawer.js.map +1 -0
  55. package/dist/esm/v2/components/Dropzone.js +540 -0
  56. package/dist/esm/v2/components/Dropzone.js.map +1 -0
  57. package/dist/esm/v2/components/EmptyState.js +102 -0
  58. package/dist/esm/v2/components/EmptyState.js.map +1 -0
  59. package/dist/esm/v2/components/FavoriteToggle.js +127 -0
  60. package/dist/esm/v2/components/FavoriteToggle.js.map +1 -0
  61. package/dist/esm/v2/components/Field.js +197 -0
  62. package/dist/esm/v2/components/Field.js.map +1 -0
  63. package/dist/esm/v2/components/FieldError.js +124 -0
  64. package/dist/esm/v2/components/FieldError.js.map +1 -0
  65. package/dist/esm/v2/components/FieldHelp.js +202 -0
  66. package/dist/esm/v2/components/FieldHelp.js.map +1 -0
  67. package/dist/esm/v2/components/FileCard.js +162 -0
  68. package/dist/esm/v2/components/FileCard.js.map +1 -0
  69. package/dist/esm/v2/components/FilterTab.js +138 -0
  70. package/dist/esm/v2/components/FilterTab.js.map +1 -0
  71. package/dist/esm/v2/components/ForbiddenPage.js +74 -0
  72. package/dist/esm/v2/components/ForbiddenPage.js.map +1 -0
  73. package/dist/esm/v2/components/FormGrid.js +179 -0
  74. package/dist/esm/v2/components/FormGrid.js.map +1 -0
  75. package/dist/esm/v2/components/FormikDisplay.js +118 -0
  76. package/dist/esm/v2/components/FormikDisplay.js.map +1 -0
  77. package/dist/esm/v2/components/Input.js +107 -0
  78. package/dist/esm/v2/components/Input.js.map +1 -0
  79. package/dist/esm/v2/components/KPICard.js +237 -0
  80. package/dist/esm/v2/components/KPICard.js.map +1 -0
  81. package/dist/esm/v2/components/KPIStrip.js +84 -0
  82. package/dist/esm/v2/components/KPIStrip.js.map +1 -0
  83. package/dist/esm/v2/components/KV.js +75 -0
  84. package/dist/esm/v2/components/KV.js.map +1 -0
  85. package/dist/esm/v2/components/KVGrid.js +74 -0
  86. package/dist/esm/v2/components/KVGrid.js.map +1 -0
  87. package/dist/esm/v2/components/Layout.js +284 -0
  88. package/dist/esm/v2/components/Layout.js.map +1 -0
  89. package/dist/esm/v2/components/MobileRowCard.js +314 -0
  90. package/dist/esm/v2/components/MobileRowCard.js.map +1 -0
  91. package/dist/esm/v2/components/Modal.js +276 -0
  92. package/dist/esm/v2/components/Modal.js.map +1 -0
  93. package/dist/esm/v2/components/NetworkErrorPage.js +78 -0
  94. package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -0
  95. package/dist/esm/v2/components/NotFoundPage.js +58 -0
  96. package/dist/esm/v2/components/NotFoundPage.js.map +1 -0
  97. package/dist/esm/v2/components/NumberInput.js +309 -0
  98. package/dist/esm/v2/components/NumberInput.js.map +1 -0
  99. package/dist/esm/v2/components/OverflowMenu.js +184 -0
  100. package/dist/esm/v2/components/OverflowMenu.js.map +1 -0
  101. package/dist/esm/v2/components/PdfViewer.js +122 -0
  102. package/dist/esm/v2/components/PdfViewer.js.map +1 -0
  103. package/dist/esm/v2/components/ProgressBar.js +202 -0
  104. package/dist/esm/v2/components/ProgressBar.js.map +1 -0
  105. package/dist/esm/v2/components/Radio.js +228 -0
  106. package/dist/esm/v2/components/Radio.js.map +1 -0
  107. package/dist/esm/v2/components/SectionErrorBoundary.js +214 -0
  108. package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -0
  109. package/dist/esm/v2/components/SectionHeader.js +132 -0
  110. package/dist/esm/v2/components/SectionHeader.js.map +1 -0
  111. package/dist/esm/v2/components/Segmented.js +254 -0
  112. package/dist/esm/v2/components/Segmented.js.map +1 -0
  113. package/dist/esm/v2/components/Select.js +490 -0
  114. package/dist/esm/v2/components/Select.js.map +1 -0
  115. package/dist/esm/v2/components/ServerErrorPage.js +74 -0
  116. package/dist/esm/v2/components/ServerErrorPage.js.map +1 -0
  117. package/dist/esm/v2/components/Skeleton.js +269 -0
  118. package/dist/esm/v2/components/Skeleton.js.map +1 -0
  119. package/dist/esm/v2/components/SkipLink.js +49 -0
  120. package/dist/esm/v2/components/SkipLink.js.map +1 -0
  121. package/dist/esm/v2/components/Spinner.js +69 -0
  122. package/dist/esm/v2/components/Spinner.js.map +1 -0
  123. package/dist/esm/v2/components/Status.js +64 -0
  124. package/dist/esm/v2/components/Status.js.map +1 -0
  125. package/dist/esm/v2/components/Stepper.js +432 -0
  126. package/dist/esm/v2/components/Stepper.js.map +1 -0
  127. package/dist/esm/v2/components/Surface.js +159 -0
  128. package/dist/esm/v2/components/Surface.js.map +1 -0
  129. package/dist/esm/v2/components/Switch.js +128 -0
  130. package/dist/esm/v2/components/Switch.js.map +1 -0
  131. package/dist/esm/v2/components/Tabs.js +150 -0
  132. package/dist/esm/v2/components/Tabs.js.map +1 -0
  133. package/dist/esm/v2/components/TelInput.js +274 -0
  134. package/dist/esm/v2/components/TelInput.js.map +1 -0
  135. package/dist/esm/v2/components/Textarea.js +72 -0
  136. package/dist/esm/v2/components/Textarea.js.map +1 -0
  137. package/dist/esm/v2/components/TimePicker.js +134 -0
  138. package/dist/esm/v2/components/TimePicker.js.map +1 -0
  139. package/dist/esm/v2/components/Toast.js +376 -0
  140. package/dist/esm/v2/components/Toast.js.map +1 -0
  141. package/dist/esm/v2/components/Tooltip.js +161 -0
  142. package/dist/esm/v2/components/Tooltip.js.map +1 -0
  143. package/dist/esm/v2/components/_ErrorPageBody.js +85 -0
  144. package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -0
  145. package/dist/esm/v2/components/_pickerShared.js +60 -0
  146. package/dist/esm/v2/components/_pickerShared.js.map +1 -0
  147. package/dist/esm/v2/components/index.js +244 -0
  148. package/dist/esm/v2/components/index.js.map +1 -0
  149. package/dist/esm/v2/hooks/index.js +10 -0
  150. package/dist/esm/v2/hooks/index.js.map +1 -0
  151. package/dist/esm/v2/hooks/useDelayedFlag.js +55 -0
  152. package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -0
  153. package/dist/esm/v2/hooks/useDensity.js +119 -0
  154. package/dist/esm/v2/hooks/useDensity.js.map +1 -0
  155. package/dist/esm/v2/hooks/useFocusFirstError.js +197 -0
  156. package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -0
  157. package/dist/esm/v2/hooks/useFocusTrap.js +202 -0
  158. package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -0
  159. package/dist/esm/v2/hooks/useFormAutoSave.js +181 -0
  160. package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -0
  161. package/dist/esm/v2/hooks/useFormCompletionProgress.js +131 -0
  162. package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -0
  163. package/dist/esm/v2/hooks/useResolvedDensity.js +44 -0
  164. package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -0
  165. package/dist/esm/v2/hooks/useSortedRows.js +32 -0
  166. package/dist/esm/v2/hooks/useSortedRows.js.map +1 -0
  167. package/dist/esm/v2/hooks/useTabLoading.js +79 -0
  168. package/dist/esm/v2/hooks/useTabLoading.js.map +1 -0
  169. package/dist/esm/v2/index.js +121 -0
  170. package/dist/esm/v2/index.js.map +1 -0
  171. package/dist/esm/v2/modalContext.js +108 -0
  172. package/dist/esm/v2/modalContext.js.map +1 -0
  173. package/dist/esm/v2/models/favorite.js +2 -0
  174. package/dist/esm/v2/models/favorite.js.map +1 -0
  175. package/dist/esm/v2/models/index.js +12 -0
  176. package/dist/esm/v2/models/index.js.map +1 -0
  177. package/dist/esm/v2/models/personalization.js +2 -0
  178. package/dist/esm/v2/models/personalization.js.map +1 -0
  179. package/dist/esm/v2/models/referentiel.js +2 -0
  180. package/dist/esm/v2/models/referentiel.js.map +1 -0
  181. package/dist/esm/v2/models/savedFilter.js +2 -0
  182. package/dist/esm/v2/models/savedFilter.js.map +1 -0
  183. package/dist/esm/v2/patterns/ActionBar.js +603 -0
  184. package/dist/esm/v2/patterns/ActionBar.js.map +1 -0
  185. package/dist/esm/v2/patterns/BulkActionBar.js +147 -0
  186. package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -0
  187. package/dist/esm/v2/patterns/CollapsibleDataGrid.js +303 -0
  188. package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -0
  189. package/dist/esm/v2/patterns/ColumnsToggle.js +301 -0
  190. package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -0
  191. package/dist/esm/v2/patterns/DataGrid.js +820 -0
  192. package/dist/esm/v2/patterns/DataGrid.js.map +1 -0
  193. package/dist/esm/v2/patterns/DataGridSettingsMenu.js +375 -0
  194. package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -0
  195. package/dist/esm/v2/patterns/DataGridToolbar.js +249 -0
  196. package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -0
  197. package/dist/esm/v2/patterns/DataGridVirtualized.js +523 -0
  198. package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -0
  199. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +70 -0
  200. package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -0
  201. package/dist/esm/v2/patterns/FavoriteColumn.js +164 -0
  202. package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -0
  203. package/dist/esm/v2/patterns/FavoritesFilter.js +91 -0
  204. package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -0
  205. package/dist/esm/v2/patterns/FormErrorSummary.js +101 -0
  206. package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -0
  207. package/dist/esm/v2/patterns/FormPageShell.js +126 -0
  208. package/dist/esm/v2/patterns/FormPageShell.js.map +1 -0
  209. package/dist/esm/v2/patterns/FormSection.js +190 -0
  210. package/dist/esm/v2/patterns/FormSection.js.map +1 -0
  211. package/dist/esm/v2/patterns/FormikCheckboxGroup.js +110 -0
  212. package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -0
  213. package/dist/esm/v2/patterns/FormikCombobox.js +115 -0
  214. package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -0
  215. package/dist/esm/v2/patterns/FormikDatePicker.js +196 -0
  216. package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -0
  217. package/dist/esm/v2/patterns/FormikErrorFocus.js +77 -0
  218. package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -0
  219. package/dist/esm/v2/patterns/FormikFile.js +148 -0
  220. package/dist/esm/v2/patterns/FormikFile.js.map +1 -0
  221. package/dist/esm/v2/patterns/FormikInput.js +127 -0
  222. package/dist/esm/v2/patterns/FormikInput.js.map +1 -0
  223. package/dist/esm/v2/patterns/FormikReferentielField.js +116 -0
  224. package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -0
  225. package/dist/esm/v2/patterns/FormikSelect.js +159 -0
  226. package/dist/esm/v2/patterns/FormikSelect.js.map +1 -0
  227. package/dist/esm/v2/patterns/FormikTextarea.js +76 -0
  228. package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -0
  229. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +195 -0
  230. package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -0
  231. package/dist/esm/v2/patterns/NetworkErrorBanner.js +72 -0
  232. package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -0
  233. package/dist/esm/v2/patterns/PageContent.js +62 -0
  234. package/dist/esm/v2/patterns/PageContent.js.map +1 -0
  235. package/dist/esm/v2/patterns/ReferentielField.js +615 -0
  236. package/dist/esm/v2/patterns/ReferentielField.js.map +1 -0
  237. package/dist/esm/v2/patterns/SaveFilterDialog.js +197 -0
  238. package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -0
  239. package/dist/esm/v2/patterns/SavedFiltersMenu.js +406 -0
  240. package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -0
  241. package/dist/esm/v2/patterns/SkeletonPageShell.js +342 -0
  242. package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -0
  243. package/dist/esm/v2/patterns/SortableHeader.js +179 -0
  244. package/dist/esm/v2/patterns/SortableHeader.js.map +1 -0
  245. package/dist/esm/v2/patterns/Tour.js +471 -0
  246. package/dist/esm/v2/patterns/Tour.js.map +1 -0
  247. package/dist/esm/v2/patterns/_dataGridShared.js +431 -0
  248. package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -0
  249. package/dist/esm/v2/patterns/_sort.js +112 -0
  250. package/dist/esm/v2/patterns/_sort.js.map +1 -0
  251. package/dist/esm/v2/patterns/_useColumnReorder.js +257 -0
  252. package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -0
  253. package/dist/esm/v2/patterns/_useColumnResize.js +191 -0
  254. package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -0
  255. package/dist/esm/v2/patterns/index.js +95 -0
  256. package/dist/esm/v2/patterns/index.js.map +1 -0
  257. package/dist/esm/v2/personalization/PersonalizationProvider.js +168 -0
  258. package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -0
  259. package/dist/esm/v2/personalization/adapters/_storageKey.js +60 -0
  260. package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -0
  261. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +124 -0
  262. package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -0
  263. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +70 -0
  264. package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -0
  265. package/dist/esm/v2/personalization/adapters/index.js +11 -0
  266. package/dist/esm/v2/personalization/adapters/index.js.map +1 -0
  267. package/dist/esm/v2/personalization/capabilities/favorites.js +216 -0
  268. package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -0
  269. package/dist/esm/v2/personalization/capabilities/favoritesView.js +111 -0
  270. package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -0
  271. package/dist/esm/v2/personalization/capabilities/index.js +17 -0
  272. package/dist/esm/v2/personalization/capabilities/index.js.map +1 -0
  273. package/dist/esm/v2/personalization/capabilities/savedFilters.js +291 -0
  274. package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -0
  275. package/dist/esm/v2/personalization/createPersonalizationStore.js +472 -0
  276. package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -0
  277. package/dist/esm/v2/personalization/index.js +46 -0
  278. package/dist/esm/v2/personalization/index.js.map +1 -0
  279. package/dist/esm/v2/personalization/personalizationContext.js +108 -0
  280. package/dist/esm/v2/personalization/personalizationContext.js.map +1 -0
  281. package/dist/esm/v2/personalization/schema.js +92 -0
  282. package/dist/esm/v2/personalization/schema.js.map +1 -0
  283. package/dist/esm/v2/personalization/types.js +2 -0
  284. package/dist/esm/v2/personalization/types.js.map +1 -0
  285. package/dist/esm/v2/referentiel/ReferentielProvider.js +87 -0
  286. package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -0
  287. package/dist/esm/v2/referentiel/index.js +15 -0
  288. package/dist/esm/v2/referentiel/index.js.map +1 -0
  289. package/dist/esm/v2/referentiel/useReferentielClient.js +37 -0
  290. package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -0
  291. package/dist/esm/v2/referentiel/useReferentielOptions.js +169 -0
  292. package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -0
  293. package/dist/esm/v2/referentiel/useReferentielSearch.js +132 -0
  294. package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -0
  295. package/dist/esm/v2/styles/base.css +425 -0
  296. package/dist/esm/v2/styles/css.d.ts +10 -0
  297. package/dist/esm/v2/styles/index.js +12 -0
  298. package/dist/esm/v2/styles/index.js.map +1 -0
  299. package/dist/esm/v2/theme/_brand.js +64 -0
  300. package/dist/esm/v2/theme/_brand.js.map +1 -0
  301. package/dist/esm/v2/theme/_brandSecondary.js +60 -0
  302. package/dist/esm/v2/theme/_brandSecondary.js.map +1 -0
  303. package/dist/esm/v2/theme/createPortnetTheme.js +548 -0
  304. package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -0
  305. package/dist/esm/v2/theme/cssVariables.js +198 -0
  306. package/dist/esm/v2/theme/cssVariables.js.map +1 -0
  307. package/dist/esm/v2/theme/index.js +32 -0
  308. package/dist/esm/v2/theme/index.js.map +1 -0
  309. package/dist/esm/v2/tokens/breakpoints.js +106 -0
  310. package/dist/esm/v2/tokens/breakpoints.js.map +1 -0
  311. package/dist/esm/v2/tokens/colors.js +219 -0
  312. package/dist/esm/v2/tokens/colors.js.map +1 -0
  313. package/dist/esm/v2/tokens/density.js +98 -0
  314. package/dist/esm/v2/tokens/density.js.map +1 -0
  315. package/dist/esm/v2/tokens/index.js +80 -0
  316. package/dist/esm/v2/tokens/index.js.map +1 -0
  317. package/dist/esm/v2/tokens/motion.js +88 -0
  318. package/dist/esm/v2/tokens/motion.js.map +1 -0
  319. package/dist/esm/v2/tokens/radius.js +22 -0
  320. package/dist/esm/v2/tokens/radius.js.map +1 -0
  321. package/dist/esm/v2/tokens/shadows.js +40 -0
  322. package/dist/esm/v2/tokens/shadows.js.map +1 -0
  323. package/dist/esm/v2/tokens/spacing.js +51 -0
  324. package/dist/esm/v2/tokens/spacing.js.map +1 -0
  325. package/dist/esm/v2/tokens/state.js +41 -0
  326. package/dist/esm/v2/tokens/state.js.map +1 -0
  327. package/dist/esm/v2/tokens/statusPalette.js +66 -0
  328. package/dist/esm/v2/tokens/statusPalette.js.map +1 -0
  329. package/dist/esm/v2/tokens/tokens.json +153 -0
  330. package/dist/esm/v2/tokens/typography.js +149 -0
  331. package/dist/esm/v2/tokens/typography.js.map +1 -0
  332. package/dist/esm/v2/tokens/zIndex.js +44 -0
  333. package/dist/esm/v2/tokens/zIndex.js.map +1 -0
  334. package/dist/esm/v2/types/common.js +2 -0
  335. package/dist/esm/v2/types/common.js.map +1 -0
  336. package/dist/esm/v2/types/datagrid.js +2 -0
  337. package/dist/esm/v2/types/datagrid.js.map +1 -0
  338. package/dist/esm/v2/types/index.js +12 -0
  339. package/dist/esm/v2/types/index.js.map +1 -0
  340. package/dist/esm/v2/utils/apiError.js +281 -0
  341. package/dist/esm/v2/utils/apiError.js.map +1 -0
  342. package/dist/esm/v2/utils/contrast.js +157 -0
  343. package/dist/esm/v2/utils/contrast.js.map +1 -0
  344. package/dist/esm/v2/utils/cx.js +38 -0
  345. package/dist/esm/v2/utils/cx.js.map +1 -0
  346. package/dist/esm/v2/utils/fileDownload.js +226 -0
  347. package/dist/esm/v2/utils/fileDownload.js.map +1 -0
  348. package/dist/esm/v2/utils/fmtMoney.js +78 -0
  349. package/dist/esm/v2/utils/fmtMoney.js.map +1 -0
  350. package/dist/esm/v2/utils/index.js +43 -0
  351. package/dist/esm/v2/utils/index.js.map +1 -0
  352. package/dist/esm/v2/utils/mergeLabels.js +86 -0
  353. package/dist/esm/v2/utils/mergeLabels.js.map +1 -0
  354. package/dist/esm/v2/utils/networkStatus.js +114 -0
  355. package/dist/esm/v2/utils/networkStatus.js.map +1 -0
  356. package/dist/index.d.ts +3 -2
  357. package/dist/index.d.ts.map +1 -1
  358. package/dist/index.js +21 -0
  359. package/dist/index.js.map +1 -1
  360. package/dist/v2/__tests__/FieldError.test.js +164 -0
  361. package/dist/v2/__tests__/FieldError.test.js.map +1 -0
  362. package/dist/v2/__tests__/FileCard.test.js +148 -0
  363. package/dist/v2/__tests__/FileCard.test.js.map +1 -0
  364. package/dist/v2/__tests__/SectionErrorBoundary.test.js +237 -0
  365. package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
  366. package/dist/v2/components/Accordion.d.ts +6 -6
  367. package/dist/v2/components/Accordion.d.ts.map +1 -1
  368. package/dist/v2/components/Accordion.js.map +1 -1
  369. package/dist/v2/components/ActionStrip.d.ts +12 -12
  370. package/dist/v2/components/ActionStrip.d.ts.map +1 -1
  371. package/dist/v2/components/ActionStrip.js.map +1 -1
  372. package/dist/v2/components/Banner.d.ts +48 -9
  373. package/dist/v2/components/Banner.d.ts.map +1 -1
  374. package/dist/v2/components/Banner.js +116 -35
  375. package/dist/v2/components/Banner.js.map +1 -1
  376. package/dist/v2/components/Busy.d.ts +3 -3
  377. package/dist/v2/components/Busy.d.ts.map +1 -1
  378. package/dist/v2/components/Busy.js.map +1 -1
  379. package/dist/v2/components/Button.d.ts +6 -6
  380. package/dist/v2/components/Button.d.ts.map +1 -1
  381. package/dist/v2/components/Button.js.map +1 -1
  382. package/dist/v2/components/CategoryTag.d.ts +3 -3
  383. package/dist/v2/components/CategoryTag.d.ts.map +1 -1
  384. package/dist/v2/components/CategoryTag.js.map +1 -1
  385. package/dist/v2/components/Checkbox.d.ts +11 -11
  386. package/dist/v2/components/Checkbox.d.ts.map +1 -1
  387. package/dist/v2/components/Checkbox.js.map +1 -1
  388. package/dist/v2/components/Chip.d.ts +8 -8
  389. package/dist/v2/components/Chip.d.ts.map +1 -1
  390. package/dist/v2/components/Chip.js +2 -1
  391. package/dist/v2/components/Chip.js.map +1 -1
  392. package/dist/v2/components/Combobox.d.ts +27 -27
  393. package/dist/v2/components/Combobox.d.ts.map +1 -1
  394. package/dist/v2/components/Combobox.js +3 -2
  395. package/dist/v2/components/Combobox.js.map +1 -1
  396. package/dist/v2/components/CommandPalette.d.ts +20 -20
  397. package/dist/v2/components/CommandPalette.d.ts.map +1 -1
  398. package/dist/v2/components/CommandPalette.js +2 -6
  399. package/dist/v2/components/CommandPalette.js.map +1 -1
  400. package/dist/v2/components/ConfirmDialog.d.ts +13 -13
  401. package/dist/v2/components/ConfirmDialog.d.ts.map +1 -1
  402. package/dist/v2/components/ConfirmDialog.js +2 -1
  403. package/dist/v2/components/ConfirmDialog.js.map +1 -1
  404. package/dist/v2/components/DatePicker.d.ts +11 -11
  405. package/dist/v2/components/DatePicker.d.ts.map +1 -1
  406. package/dist/v2/components/DatePicker.js.map +1 -1
  407. package/dist/v2/components/DateRangePicker.d.ts +16 -16
  408. package/dist/v2/components/DateRangePicker.d.ts.map +1 -1
  409. package/dist/v2/components/DateRangePicker.js +2 -1
  410. package/dist/v2/components/DateRangePicker.js.map +1 -1
  411. package/dist/v2/components/DateTimePicker.d.ts +11 -11
  412. package/dist/v2/components/DateTimePicker.d.ts.map +1 -1
  413. package/dist/v2/components/DateTimePicker.js.map +1 -1
  414. package/dist/v2/components/Drawer.d.ts +18 -18
  415. package/dist/v2/components/Drawer.d.ts.map +1 -1
  416. package/dist/v2/components/Drawer.js +2 -1
  417. package/dist/v2/components/Drawer.js.map +1 -1
  418. package/dist/v2/components/Dropzone.d.ts +34 -34
  419. package/dist/v2/components/Dropzone.d.ts.map +1 -1
  420. package/dist/v2/components/Dropzone.js +11 -3
  421. package/dist/v2/components/Dropzone.js.map +1 -1
  422. package/dist/v2/components/EmptyState.d.ts +7 -7
  423. package/dist/v2/components/EmptyState.d.ts.map +1 -1
  424. package/dist/v2/components/EmptyState.js.map +1 -1
  425. package/dist/v2/components/FavoriteToggle.d.ts +7 -7
  426. package/dist/v2/components/FavoriteToggle.d.ts.map +1 -1
  427. package/dist/v2/components/FavoriteToggle.js +2 -1
  428. package/dist/v2/components/FavoriteToggle.js.map +1 -1
  429. package/dist/v2/components/Field.d.ts +17 -12
  430. package/dist/v2/components/Field.d.ts.map +1 -1
  431. package/dist/v2/components/Field.js +25 -7
  432. package/dist/v2/components/Field.js.map +1 -1
  433. package/dist/v2/components/FieldError.d.ts +78 -0
  434. package/dist/v2/components/FieldError.d.ts.map +1 -0
  435. package/dist/v2/components/FieldError.js +131 -0
  436. package/dist/v2/components/FieldError.js.map +1 -0
  437. package/dist/v2/components/FieldHelp.d.ts +7 -7
  438. package/dist/v2/components/FieldHelp.d.ts.map +1 -1
  439. package/dist/v2/components/FieldHelp.js.map +1 -1
  440. package/dist/v2/components/FileCard.d.ts +75 -0
  441. package/dist/v2/components/FileCard.d.ts.map +1 -0
  442. package/dist/v2/components/FileCard.js +169 -0
  443. package/dist/v2/components/FileCard.js.map +1 -0
  444. package/dist/v2/components/FilterTab.d.ts +9 -9
  445. package/dist/v2/components/FilterTab.d.ts.map +1 -1
  446. package/dist/v2/components/FilterTab.js +2 -1
  447. package/dist/v2/components/FilterTab.js.map +1 -1
  448. package/dist/v2/components/FormGrid.d.ts +9 -4
  449. package/dist/v2/components/FormGrid.d.ts.map +1 -1
  450. package/dist/v2/components/FormGrid.js +11 -1
  451. package/dist/v2/components/FormGrid.js.map +1 -1
  452. package/dist/v2/components/FormikDisplay.d.ts +6 -6
  453. package/dist/v2/components/FormikDisplay.d.ts.map +1 -1
  454. package/dist/v2/components/FormikDisplay.js.map +1 -1
  455. package/dist/v2/components/Input.d.ts +6 -6
  456. package/dist/v2/components/Input.d.ts.map +1 -1
  457. package/dist/v2/components/Input.js.map +1 -1
  458. package/dist/v2/components/KPICard.d.ts +43 -13
  459. package/dist/v2/components/KPICard.d.ts.map +1 -1
  460. package/dist/v2/components/KPICard.js +53 -14
  461. package/dist/v2/components/KPICard.js.map +1 -1
  462. package/dist/v2/components/KPIStrip.d.ts +68 -0
  463. package/dist/v2/components/KPIStrip.d.ts.map +1 -0
  464. package/dist/v2/components/KPIStrip.js +92 -0
  465. package/dist/v2/components/KPIStrip.js.map +1 -0
  466. package/dist/v2/components/KV.d.ts +3 -3
  467. package/dist/v2/components/KV.d.ts.map +1 -1
  468. package/dist/v2/components/KV.js.map +1 -1
  469. package/dist/v2/components/KVGrid.d.ts +2 -2
  470. package/dist/v2/components/KVGrid.d.ts.map +1 -1
  471. package/dist/v2/components/KVGrid.js +8 -1
  472. package/dist/v2/components/KVGrid.js.map +1 -1
  473. package/dist/v2/components/Layout.d.ts +7 -7
  474. package/dist/v2/components/Layout.d.ts.map +1 -1
  475. package/dist/v2/components/Layout.js.map +1 -1
  476. package/dist/v2/components/MobileRowCard.d.ts +13 -13
  477. package/dist/v2/components/MobileRowCard.d.ts.map +1 -1
  478. package/dist/v2/components/MobileRowCard.js.map +1 -1
  479. package/dist/v2/components/Modal.d.ts +12 -12
  480. package/dist/v2/components/Modal.d.ts.map +1 -1
  481. package/dist/v2/components/Modal.js.map +1 -1
  482. package/dist/v2/components/NetworkErrorPage.d.ts +1 -1
  483. package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -1
  484. package/dist/v2/components/NetworkErrorPage.js.map +1 -1
  485. package/dist/v2/components/NumberInput.d.ts +14 -14
  486. package/dist/v2/components/NumberInput.d.ts.map +1 -1
  487. package/dist/v2/components/NumberInput.js +7 -6
  488. package/dist/v2/components/NumberInput.js.map +1 -1
  489. package/dist/v2/components/OverflowMenu.d.ts +14 -14
  490. package/dist/v2/components/OverflowMenu.d.ts.map +1 -1
  491. package/dist/v2/components/OverflowMenu.js +4 -8
  492. package/dist/v2/components/OverflowMenu.js.map +1 -1
  493. package/dist/v2/components/PdfViewer.d.ts +9 -9
  494. package/dist/v2/components/PdfViewer.d.ts.map +1 -1
  495. package/dist/v2/components/PdfViewer.js.map +1 -1
  496. package/dist/v2/components/ProgressBar.d.ts +10 -10
  497. package/dist/v2/components/ProgressBar.d.ts.map +1 -1
  498. package/dist/v2/components/ProgressBar.js.map +1 -1
  499. package/dist/v2/components/Radio.d.ts +7 -7
  500. package/dist/v2/components/Radio.d.ts.map +1 -1
  501. package/dist/v2/components/Radio.js.map +1 -1
  502. package/dist/v2/components/SectionErrorBoundary.d.ts +89 -0
  503. package/dist/v2/components/SectionErrorBoundary.d.ts.map +1 -0
  504. package/dist/v2/components/SectionErrorBoundary.js +221 -0
  505. package/dist/v2/components/SectionErrorBoundary.js.map +1 -0
  506. package/dist/v2/components/SectionHeader.d.ts +5 -5
  507. package/dist/v2/components/SectionHeader.d.ts.map +1 -1
  508. package/dist/v2/components/SectionHeader.js.map +1 -1
  509. package/dist/v2/components/Segmented.d.ts +11 -11
  510. package/dist/v2/components/Segmented.d.ts.map +1 -1
  511. package/dist/v2/components/Segmented.js.map +1 -1
  512. package/dist/v2/components/Select.d.ts +33 -15
  513. package/dist/v2/components/Select.d.ts.map +1 -1
  514. package/dist/v2/components/Select.js +147 -30
  515. package/dist/v2/components/Select.js.map +1 -1
  516. package/dist/v2/components/ServerErrorPage.d.ts +1 -1
  517. package/dist/v2/components/ServerErrorPage.d.ts.map +1 -1
  518. package/dist/v2/components/ServerErrorPage.js.map +1 -1
  519. package/dist/v2/components/Skeleton.d.ts +15 -15
  520. package/dist/v2/components/Skeleton.d.ts.map +1 -1
  521. package/dist/v2/components/Skeleton.js.map +1 -1
  522. package/dist/v2/components/SkipLink.d.ts +2 -2
  523. package/dist/v2/components/SkipLink.d.ts.map +1 -1
  524. package/dist/v2/components/SkipLink.js.map +1 -1
  525. package/dist/v2/components/Status.d.ts +3 -3
  526. package/dist/v2/components/Status.d.ts.map +1 -1
  527. package/dist/v2/components/Status.js.map +1 -1
  528. package/dist/v2/components/Stepper.d.ts +28 -22
  529. package/dist/v2/components/Stepper.d.ts.map +1 -1
  530. package/dist/v2/components/Stepper.js +31 -5
  531. package/dist/v2/components/Stepper.js.map +1 -1
  532. package/dist/v2/components/Surface.d.ts +94 -0
  533. package/dist/v2/components/Surface.d.ts.map +1 -0
  534. package/dist/v2/components/Surface.js +163 -0
  535. package/dist/v2/components/Surface.js.map +1 -0
  536. package/dist/v2/components/Switch.d.ts +4 -4
  537. package/dist/v2/components/Switch.d.ts.map +1 -1
  538. package/dist/v2/components/Switch.js.map +1 -1
  539. package/dist/v2/components/Tabs.d.ts +6 -6
  540. package/dist/v2/components/Tabs.d.ts.map +1 -1
  541. package/dist/v2/components/Tabs.js.map +1 -1
  542. package/dist/v2/components/TelInput.d.ts +8 -8
  543. package/dist/v2/components/TelInput.d.ts.map +1 -1
  544. package/dist/v2/components/TelInput.js +18 -18
  545. package/dist/v2/components/TelInput.js.map +1 -1
  546. package/dist/v2/components/Textarea.d.ts +1 -1
  547. package/dist/v2/components/Textarea.d.ts.map +1 -1
  548. package/dist/v2/components/Textarea.js.map +1 -1
  549. package/dist/v2/components/TimePicker.d.ts +11 -11
  550. package/dist/v2/components/TimePicker.d.ts.map +1 -1
  551. package/dist/v2/components/TimePicker.js.map +1 -1
  552. package/dist/v2/components/Toast.d.ts +6 -6
  553. package/dist/v2/components/Toast.d.ts.map +1 -1
  554. package/dist/v2/components/Toast.js +9 -8
  555. package/dist/v2/components/Toast.js.map +1 -1
  556. package/dist/v2/components/Tooltip.d.ts +1 -1
  557. package/dist/v2/components/Tooltip.d.ts.map +1 -1
  558. package/dist/v2/components/Tooltip.js.map +1 -1
  559. package/dist/v2/components/index.d.ts +143 -0
  560. package/dist/v2/components/index.d.ts.map +1 -1
  561. package/dist/v2/components/index.js +35 -0
  562. package/dist/v2/components/index.js.map +1 -1
  563. package/dist/v2/models/favorite.d.ts +1 -1
  564. package/dist/v2/models/favorite.d.ts.map +1 -1
  565. package/dist/v2/models/favorite.js.map +1 -1
  566. package/dist/v2/models/personalization.d.ts +13 -13
  567. package/dist/v2/models/personalization.d.ts.map +1 -1
  568. package/dist/v2/models/personalization.js.map +1 -1
  569. package/dist/v2/models/referentiel.d.ts +11 -11
  570. package/dist/v2/models/referentiel.d.ts.map +1 -1
  571. package/dist/v2/models/referentiel.js.map +1 -1
  572. package/dist/v2/models/savedFilter.d.ts +8 -8
  573. package/dist/v2/models/savedFilter.d.ts.map +1 -1
  574. package/dist/v2/models/savedFilter.js.map +1 -1
  575. package/dist/v2/patterns/ActionBar.d.ts +33 -33
  576. package/dist/v2/patterns/ActionBar.d.ts.map +1 -1
  577. package/dist/v2/patterns/ActionBar.js +2 -1
  578. package/dist/v2/patterns/ActionBar.js.map +1 -1
  579. package/dist/v2/patterns/BulkActionBar.d.ts +12 -12
  580. package/dist/v2/patterns/BulkActionBar.d.ts.map +1 -1
  581. package/dist/v2/patterns/BulkActionBar.js +2 -1
  582. package/dist/v2/patterns/BulkActionBar.js.map +1 -1
  583. package/dist/v2/patterns/CollapsibleDataGrid.d.ts +15 -15
  584. package/dist/v2/patterns/CollapsibleDataGrid.d.ts.map +1 -1
  585. package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -1
  586. package/dist/v2/patterns/ColumnsToggle.d.ts +7 -7
  587. package/dist/v2/patterns/ColumnsToggle.d.ts.map +1 -1
  588. package/dist/v2/patterns/ColumnsToggle.js +4 -8
  589. package/dist/v2/patterns/ColumnsToggle.js.map +1 -1
  590. package/dist/v2/patterns/DataGridSettingsMenu.d.ts +12 -12
  591. package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -1
  592. package/dist/v2/patterns/DataGridSettingsMenu.js +9 -8
  593. package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -1
  594. package/dist/v2/patterns/DataGridToolbar.d.ts +40 -40
  595. package/dist/v2/patterns/DataGridToolbar.d.ts.map +1 -1
  596. package/dist/v2/patterns/DataGridToolbar.js +2 -1
  597. package/dist/v2/patterns/DataGridToolbar.js.map +1 -1
  598. package/dist/v2/patterns/DataGridVirtualized.d.ts +27 -27
  599. package/dist/v2/patterns/DataGridVirtualized.d.ts.map +1 -1
  600. package/dist/v2/patterns/DataGridVirtualized.js.map +1 -1
  601. package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts +5 -5
  602. package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts.map +1 -1
  603. package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
  604. package/dist/v2/patterns/FavoriteColumn.d.ts +6 -6
  605. package/dist/v2/patterns/FavoriteColumn.d.ts.map +1 -1
  606. package/dist/v2/patterns/FavoriteColumn.js.map +1 -1
  607. package/dist/v2/patterns/FavoritesFilter.d.ts +10 -10
  608. package/dist/v2/patterns/FavoritesFilter.d.ts.map +1 -1
  609. package/dist/v2/patterns/FavoritesFilter.js +2 -1
  610. package/dist/v2/patterns/FavoritesFilter.js.map +1 -1
  611. package/dist/v2/patterns/FormErrorSummary.d.ts +4 -4
  612. package/dist/v2/patterns/FormErrorSummary.d.ts.map +1 -1
  613. package/dist/v2/patterns/FormErrorSummary.js.map +1 -1
  614. package/dist/v2/patterns/FormPageShell.d.ts +4 -4
  615. package/dist/v2/patterns/FormPageShell.d.ts.map +1 -1
  616. package/dist/v2/patterns/FormPageShell.js.map +1 -1
  617. package/dist/v2/patterns/FormSection.d.ts +19 -8
  618. package/dist/v2/patterns/FormSection.d.ts.map +1 -1
  619. package/dist/v2/patterns/FormSection.js +106 -71
  620. package/dist/v2/patterns/FormSection.js.map +1 -1
  621. package/dist/v2/patterns/FormikCheckboxGroup.d.ts +6 -6
  622. package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -1
  623. package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -1
  624. package/dist/v2/patterns/FormikCombobox.d.ts +11 -11
  625. package/dist/v2/patterns/FormikCombobox.d.ts.map +1 -1
  626. package/dist/v2/patterns/FormikCombobox.js.map +1 -1
  627. package/dist/v2/patterns/FormikDatePicker.d.ts +36 -8
  628. package/dist/v2/patterns/FormikDatePicker.d.ts.map +1 -1
  629. package/dist/v2/patterns/FormikDatePicker.js +27 -1
  630. package/dist/v2/patterns/FormikDatePicker.js.map +1 -1
  631. package/dist/v2/patterns/FormikErrorFocus.d.ts +3 -3
  632. package/dist/v2/patterns/FormikErrorFocus.d.ts.map +1 -1
  633. package/dist/v2/patterns/FormikErrorFocus.js.map +1 -1
  634. package/dist/v2/patterns/FormikFile.d.ts +8 -8
  635. package/dist/v2/patterns/FormikFile.d.ts.map +1 -1
  636. package/dist/v2/patterns/FormikFile.js.map +1 -1
  637. package/dist/v2/patterns/FormikInput.d.ts +41 -6
  638. package/dist/v2/patterns/FormikInput.d.ts.map +1 -1
  639. package/dist/v2/patterns/FormikInput.js +49 -1
  640. package/dist/v2/patterns/FormikInput.js.map +1 -1
  641. package/dist/v2/patterns/FormikReferentielField.d.ts +8 -8
  642. package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -1
  643. package/dist/v2/patterns/FormikReferentielField.js.map +1 -1
  644. package/dist/v2/patterns/FormikSelect.d.ts +33 -12
  645. package/dist/v2/patterns/FormikSelect.d.ts.map +1 -1
  646. package/dist/v2/patterns/FormikSelect.js +28 -2
  647. package/dist/v2/patterns/FormikSelect.js.map +1 -1
  648. package/dist/v2/patterns/FormikTextarea.d.ts +5 -5
  649. package/dist/v2/patterns/FormikTextarea.d.ts.map +1 -1
  650. package/dist/v2/patterns/FormikTextarea.js.map +1 -1
  651. package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts +7 -7
  652. package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts.map +1 -1
  653. package/dist/v2/patterns/KeyboardShortcutsHelp.js +2 -6
  654. package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
  655. package/dist/v2/patterns/NetworkErrorBanner.d.ts +4 -4
  656. package/dist/v2/patterns/NetworkErrorBanner.d.ts.map +1 -1
  657. package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -1
  658. package/dist/v2/patterns/PageContent.d.ts +3 -3
  659. package/dist/v2/patterns/PageContent.d.ts.map +1 -1
  660. package/dist/v2/patterns/PageContent.js.map +1 -1
  661. package/dist/v2/patterns/ReferentielField.d.ts +49 -49
  662. package/dist/v2/patterns/ReferentielField.d.ts.map +1 -1
  663. package/dist/v2/patterns/ReferentielField.js +2 -1
  664. package/dist/v2/patterns/ReferentielField.js.map +1 -1
  665. package/dist/v2/patterns/SaveFilterDialog.d.ts +10 -10
  666. package/dist/v2/patterns/SaveFilterDialog.d.ts.map +1 -1
  667. package/dist/v2/patterns/SaveFilterDialog.js +9 -8
  668. package/dist/v2/patterns/SaveFilterDialog.js.map +1 -1
  669. package/dist/v2/patterns/SavedFiltersMenu.d.ts +7 -7
  670. package/dist/v2/patterns/SavedFiltersMenu.d.ts.map +1 -1
  671. package/dist/v2/patterns/SavedFiltersMenu.js +9 -8
  672. package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -1
  673. package/dist/v2/patterns/SkeletonPageShell.d.ts +7 -7
  674. package/dist/v2/patterns/SkeletonPageShell.d.ts.map +1 -1
  675. package/dist/v2/patterns/SkeletonPageShell.js.map +1 -1
  676. package/dist/v2/patterns/SortableHeader.d.ts +1 -1
  677. package/dist/v2/patterns/SortableHeader.d.ts.map +1 -1
  678. package/dist/v2/patterns/SortableHeader.js.map +1 -1
  679. package/dist/v2/patterns/Tour.d.ts +12 -12
  680. package/dist/v2/patterns/Tour.d.ts.map +1 -1
  681. package/dist/v2/patterns/Tour.js +9 -8
  682. package/dist/v2/patterns/Tour.js.map +1 -1
  683. package/dist/v2/patterns/_dataGridShared.d.ts +25 -6
  684. package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -1
  685. package/dist/v2/patterns/_dataGridShared.js +37 -3
  686. package/dist/v2/patterns/_dataGridShared.js.map +1 -1
  687. package/dist/v2/patterns/_useColumnReorder.d.ts +1 -1
  688. package/dist/v2/patterns/_useColumnReorder.d.ts.map +1 -1
  689. package/dist/v2/patterns/_useColumnReorder.js.map +1 -1
  690. package/dist/v2/patterns/_useColumnResize.d.ts +1 -1
  691. package/dist/v2/patterns/_useColumnResize.d.ts.map +1 -1
  692. package/dist/v2/patterns/_useColumnResize.js.map +1 -1
  693. package/dist/v2/patterns/index.d.ts +27 -0
  694. package/dist/v2/patterns/index.d.ts.map +1 -1
  695. package/dist/v2/patterns/index.js.map +1 -1
  696. package/dist/v2/personalization/PersonalizationProvider.d.ts +9 -9
  697. package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -1
  698. package/dist/v2/personalization/PersonalizationProvider.js.map +1 -1
  699. package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts +1 -1
  700. package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts.map +1 -1
  701. package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
  702. package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts +1 -1
  703. package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts.map +1 -1
  704. package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
  705. package/dist/v2/personalization/capabilities/favoritesView.d.ts +3 -3
  706. package/dist/v2/personalization/capabilities/favoritesView.d.ts.map +1 -1
  707. package/dist/v2/personalization/capabilities/favoritesView.js.map +1 -1
  708. package/dist/v2/personalization/capabilities/savedFilters.d.ts +3 -3
  709. package/dist/v2/personalization/capabilities/savedFilters.d.ts.map +1 -1
  710. package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -1
  711. package/dist/v2/personalization/createPersonalizationStore.d.ts +8 -8
  712. package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -1
  713. package/dist/v2/personalization/createPersonalizationStore.js.map +1 -1
  714. package/dist/v2/personalization/schema.d.ts +2 -2
  715. package/dist/v2/personalization/schema.d.ts.map +1 -1
  716. package/dist/v2/personalization/schema.js.map +1 -1
  717. package/dist/v2/personalization/types.d.ts +19 -19
  718. package/dist/v2/personalization/types.d.ts.map +1 -1
  719. package/dist/v2/personalization/types.js.map +1 -1
  720. package/dist/v2/referentiel/ReferentielProvider.d.ts +4 -4
  721. package/dist/v2/referentiel/ReferentielProvider.d.ts.map +1 -1
  722. package/dist/v2/referentiel/ReferentielProvider.js.map +1 -1
  723. package/dist/v2/referentiel/useReferentielOptions.d.ts +4 -4
  724. package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -1
  725. package/dist/v2/referentiel/useReferentielOptions.js.map +1 -1
  726. package/dist/v2/referentiel/useReferentielSearch.d.ts +3 -3
  727. package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -1
  728. package/dist/v2/referentiel/useReferentielSearch.js.map +1 -1
  729. package/dist/v2/theme/createPortnetTheme.d.ts +32 -7
  730. package/dist/v2/theme/createPortnetTheme.d.ts.map +1 -1
  731. package/dist/v2/theme/createPortnetTheme.js +25 -1
  732. package/dist/v2/theme/createPortnetTheme.js.map +1 -1
  733. package/dist/v2/types/datagrid.d.ts +59 -59
  734. package/dist/v2/types/datagrid.d.ts.map +1 -1
  735. package/dist/v2/types/datagrid.js.map +1 -1
  736. package/dist/v2/utils/apiError.d.ts +65 -4
  737. package/dist/v2/utils/apiError.d.ts.map +1 -1
  738. package/dist/v2/utils/apiError.js +69 -6
  739. package/dist/v2/utils/apiError.js.map +1 -1
  740. package/dist/v2/utils/index.d.ts +1 -0
  741. package/dist/v2/utils/index.d.ts.map +1 -1
  742. package/dist/v2/utils/index.js +7 -0
  743. package/dist/v2/utils/index.js.map +1 -1
  744. package/dist/v2/utils/mergeLabels.d.ts +59 -0
  745. package/dist/v2/utils/mergeLabels.d.ts.map +1 -0
  746. package/dist/v2/utils/mergeLabels.js +93 -0
  747. package/dist/v2/utils/mergeLabels.js.map +1 -0
  748. package/package.json +23 -15
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Internal: error-page body block — Portnet UI v2.
3
+ *
4
+ * Shared inner block for the v2 error-page family
5
+ * (ForbiddenPage, NotFoundPage, ServerErrorPage, NetworkErrorPage).
6
+ * Keeps the four pages visually consistent — icon + monospace code
7
+ * ornament + h2 title + body description, vertically centred with
8
+ * the charter spacing scale.
9
+ *
10
+ * NOT part of the public surface. The underscore prefix and the
11
+ * absence of a re-export from components/index.js make this clear.
12
+ *
13
+ * import ErrorPageBody from "./_ErrorPageBody";
14
+ *
15
+ * A11y (audit Batch 4 external, finding B4-EXT-1):
16
+ * The big HTTP code ("403", "404", "500") is a VISUAL ornament,
17
+ * not a heading. It used to be rendered as <h1>, which collided
18
+ * with ActionBar's own <h1> on every error page → two <h1>s on
19
+ * the same page + the semantic page heading was a non-heading
20
+ * <Box>. WCAG 1.3.1 / 2.4.6 violation.
21
+ *
22
+ * Fix: code is now a presentational <div aria-hidden="true">
23
+ * (sighted users still see it; AT users skip it). The `title`
24
+ * is now a real <h2> so it sits subordinate to ActionBar's <h1>
25
+ * in the heading hierarchy. SR users navigating by H key hear
26
+ * "Accès refusé" (h1) → "Vous n'avez pas accès…" (h2).
27
+ */
28
+ import * as React from "react";
29
+ import Box from "@mui/material/Box";
30
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
31
+ function ErrorPageBody(_ref) {
32
+ var icon = _ref.icon,
33
+ code = _ref.code,
34
+ title = _ref.title,
35
+ description = _ref.description;
36
+ return /*#__PURE__*/_jsxs(Box, {
37
+ sx: {
38
+ display: "flex",
39
+ flexDirection: "column",
40
+ alignItems: "center",
41
+ justifyContent: "center",
42
+ textAlign: "center",
43
+ gap: "var(--s-3)",
44
+ padding: "var(--s-7) var(--s-5)",
45
+ minHeight: "60vh"
46
+ },
47
+ children: [icon ? /*#__PURE__*/_jsx(Box, {
48
+ "aria-hidden": "true",
49
+ sx: {
50
+ display: "inline-flex"
51
+ },
52
+ children: icon
53
+ }) : null, /*#__PURE__*/_jsx(Box, {
54
+ "aria-hidden": "true",
55
+ sx: {
56
+ fontFamily: "var(--font-mono)",
57
+ fontSize: "var(--text-display)",
58
+ fontWeight: "var(--fw-bold)",
59
+ color: "var(--fg)",
60
+ margin: 0,
61
+ letterSpacing: "0.02em"
62
+ },
63
+ children: code
64
+ }), /*#__PURE__*/_jsx(Box, {
65
+ component: "h2",
66
+ sx: {
67
+ fontSize: "var(--text-h2)",
68
+ fontWeight: "var(--fw-semibold)",
69
+ color: "var(--fg)",
70
+ margin: 0,
71
+ lineHeight: "var(--lh-snug)"
72
+ },
73
+ children: title
74
+ }), description ? /*#__PURE__*/_jsx(Box, {
75
+ sx: {
76
+ fontSize: "var(--text-sm)",
77
+ color: "var(--fg-muted)",
78
+ maxWidth: "48ch"
79
+ },
80
+ children: description
81
+ }) : null]
82
+ });
83
+ }
84
+ export default ErrorPageBody;
85
+ //# sourceMappingURL=_ErrorPageBody.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_ErrorPageBody.js","names":["React","Box","jsx","_jsx","jsxs","_jsxs","ErrorPageBody","_ref","icon","code","title","description","sx","display","flexDirection","alignItems","justifyContent","textAlign","gap","padding","minHeight","children","fontFamily","fontSize","fontWeight","color","margin","letterSpacing","component","lineHeight","maxWidth"],"sources":["../../../../src/lib/v2/components/_ErrorPageBody.tsx"],"sourcesContent":["/**\r\n * Internal: error-page body block — Portnet UI v2.\r\n *\r\n * Shared inner block for the v2 error-page family\r\n * (ForbiddenPage, NotFoundPage, ServerErrorPage, NetworkErrorPage).\r\n * Keeps the four pages visually consistent — icon + monospace code\r\n * ornament + h2 title + body description, vertically centred with\r\n * the charter spacing scale.\r\n *\r\n * NOT part of the public surface. The underscore prefix and the\r\n * absence of a re-export from components/index.js make this clear.\r\n *\r\n * import ErrorPageBody from \"./_ErrorPageBody\";\r\n *\r\n * A11y (audit Batch 4 external, finding B4-EXT-1):\r\n * The big HTTP code (\"403\", \"404\", \"500\") is a VISUAL ornament,\r\n * not a heading. It used to be rendered as <h1>, which collided\r\n * with ActionBar's own <h1> on every error page → two <h1>s on\r\n * the same page + the semantic page heading was a non-heading\r\n * <Box>. WCAG 1.3.1 / 2.4.6 violation.\r\n *\r\n * Fix: code is now a presentational <div aria-hidden=\"true\">\r\n * (sighted users still see it; AT users skip it). The `title`\r\n * is now a real <h2> so it sits subordinate to ActionBar's <h1>\r\n * in the heading hierarchy. SR users navigating by H key hear\r\n * \"Accès refusé\" (h1) → \"Vous n'avez pas accès…\" (h2).\r\n */\r\nimport * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\n\r\ninterface ErrorPageBodyProps {\r\n /** Optional illustrative icon (rendered above the code). */\r\n icon?: React.ReactNode;\r\n /**\r\n * Big monospace HTTP code ornament (e.g. \"403\", \"404\", \"500\", \"—\").\r\n * Rendered as aria-hidden visual decoration — the page's semantic\r\n * heading is owned by ActionBar (audit B4-EXT-1).\r\n */\r\n code: React.ReactNode;\r\n /**\r\n * Sub-heading sentence beneath the code. Rendered as <h2> so it\r\n * sits below ActionBar's <h1> in the heading hierarchy.\r\n */\r\n title: React.ReactNode;\r\n /** Optional body description paragraph. */\r\n description?: React.ReactNode;\r\n}\r\n\r\nfunction ErrorPageBody({ icon, code, title, description }: ErrorPageBodyProps) {\r\n return (\r\n <Box\r\n sx={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n textAlign: \"center\",\r\n gap: \"var(--s-3)\",\r\n padding: \"var(--s-7) var(--s-5)\",\r\n minHeight: \"60vh\",\r\n }}\r\n >\r\n {icon ? (\r\n <Box aria-hidden=\"true\" sx={{ display: \"inline-flex\" }}>\r\n {icon}\r\n </Box>\r\n ) : null}\r\n\r\n {/* B4-EXT-1 — Was <Box component=\"h1\">. The HTTP code is a\r\n visual ornament; the page's semantic heading is owned by\r\n ActionBar's <h1>. Hiding the code from AT removes the\r\n duplicate-h1 and gives SR users a meaningful heading\r\n hierarchy. */}\r\n <Box\r\n aria-hidden=\"true\"\r\n sx={{\r\n fontFamily: \"var(--font-mono)\",\r\n fontSize: \"var(--text-display)\",\r\n fontWeight: \"var(--fw-bold)\",\r\n color: \"var(--fg)\",\r\n margin: 0,\r\n letterSpacing: \"0.02em\",\r\n }}\r\n >\r\n {code}\r\n </Box>\r\n\r\n {/* B4-EXT-1 — Was a non-semantic <Box>. Promoted to <h2> so\r\n this descriptive sentence becomes the subordinate heading\r\n to ActionBar's <h1>. Visual size unchanged (--text-h2). */}\r\n <Box\r\n component=\"h2\"\r\n sx={{\r\n fontSize: \"var(--text-h2)\",\r\n fontWeight: \"var(--fw-semibold)\",\r\n color: \"var(--fg)\",\r\n margin: 0,\r\n lineHeight: \"var(--lh-snug)\",\r\n }}\r\n >\r\n {title}\r\n </Box>\r\n\r\n {description ? (\r\n <Box\r\n sx={{\r\n fontSize: \"var(--text-sm)\",\r\n color: \"var(--fg-muted)\",\r\n maxWidth: \"48ch\",\r\n }}\r\n >\r\n {description}\r\n </Box>\r\n ) : null}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default ErrorPageBody;\r\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,GAAG,MAAM,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAoBpC,SAASC,aAAaA,CAAAC,IAAA,EAAyD;EAAA,IAAtDC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IAAEC,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAEC,WAAW,GAAAJ,IAAA,CAAXI,WAAW;EACrD,oBACEN,KAAA,CAACJ,GAAG;IACFW,EAAE,EAAE;MACFC,OAAO,EAAS,MAAM;MACtBC,aAAa,EAAG,QAAQ;MACxBC,UAAU,EAAM,QAAQ;MACxBC,cAAc,EAAE,QAAQ;MACxBC,SAAS,EAAO,QAAQ;MACxBC,GAAG,EAAa,YAAY;MAC5BC,OAAO,EAAS,uBAAuB;MACvCC,SAAS,EAAO;IAClB,CAAE;IAAAC,QAAA,GAEDb,IAAI,gBACHL,IAAA,CAACF,GAAG;MAAC,eAAY,MAAM;MAACW,EAAE,EAAE;QAAEC,OAAO,EAAE;MAAc,CAAE;MAAAQ,QAAA,EACpDb;IAAI,CACF,CAAC,GACJ,IAAI,eAORL,IAAA,CAACF,GAAG;MACF,eAAY,MAAM;MAClBW,EAAE,EAAE;QACFU,UAAU,EAAK,kBAAkB;QACjCC,QAAQ,EAAO,qBAAqB;QACpCC,UAAU,EAAK,gBAAgB;QAC/BC,KAAK,EAAU,WAAW;QAC1BC,MAAM,EAAS,CAAC;QAChBC,aAAa,EAAE;MACjB,CAAE;MAAAN,QAAA,EAEDZ;IAAI,CACF,CAAC,eAKNN,IAAA,CAACF,GAAG;MACF2B,SAAS,EAAC,IAAI;MACdhB,EAAE,EAAE;QACFW,QAAQ,EAAI,gBAAgB;QAC5BC,UAAU,EAAE,oBAAoB;QAChCC,KAAK,EAAO,WAAW;QACvBC,MAAM,EAAM,CAAC;QACbG,UAAU,EAAE;MACd,CAAE;MAAAR,QAAA,EAEDX;IAAK,CACH,CAAC,EAELC,WAAW,gBACVR,IAAA,CAACF,GAAG;MACFW,EAAE,EAAE;QACFW,QAAQ,EAAE,gBAAgB;QAC1BE,KAAK,EAAK,iBAAiB;QAC3BK,QAAQ,EAAE;MACZ,CAAE;MAAAT,QAAA,EAEDV;IAAW,CACT,CAAC,GACJ,IAAI;EAAA,CACL,CAAC;AAEV;AAEA,eAAeL,aAAa","ignoreList":[]}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * _pickerShared — Portnet UI v2 (private)
3
+ *
4
+ * Internal sibling module. Not part of the public surface — leading
5
+ * underscore is the convention. Hosts MUST NOT deep-import from this
6
+ * file.
7
+ *
8
+ * Houses the Date ↔ moment boundary helpers shared between DatePicker,
9
+ * DateTimePicker, TimePicker, and DateRangePicker. Each picker stays
10
+ * a thin wrapper around a MUI X picker but uses these helpers to
11
+ * coerce values at the React/MUI boundary.
12
+ *
13
+ * Contract: NEVER expose an Invalid Date instance. Either a valid
14
+ * value or null. Hosts that consume v2 picker onChange always get a
15
+ * usable value — no defensive `if (Number.isNaN(d.getTime()))` checks
16
+ * scattered across consumer code.
17
+ */
18
+
19
+ import moment from "moment";
20
+ /**
21
+ * Coerce any incoming value to a valid moment instance, or null.
22
+ *
23
+ * Handles:
24
+ * - null / undefined → null
25
+ * - moment instance → returned if valid, null otherwise
26
+ * - Date instance → wrapped in moment(); valid → returned
27
+ * - any other (string, number) → moment() coerced; valid → returned
28
+ *
29
+ * The "valid" check uses moment.isValid(), which catches Invalid Date
30
+ * (NaN getTime), out-of-range values, and malformed strings.
31
+ */
32
+ export function dateToMoment(d) {
33
+ if (d == null) return null;
34
+ if (moment.isMoment(d)) return d.isValid() ? d : null;
35
+ var m = moment(d);
36
+ return m.isValid() ? m : null;
37
+ }
38
+
39
+ /**
40
+ * Coerce any incoming value to a valid Date instance, or null.
41
+ *
42
+ * Handles:
43
+ * - null / undefined → null
44
+ * - moment instance → toDate() if valid, null otherwise
45
+ * - Date instance → returned if finite, null otherwise
46
+ * - any other (string, number) → new Date() coerced; finite → returned
47
+ *
48
+ * The "finite" check on Date uses Number.isFinite(d.getTime()), which
49
+ * catches Invalid Date (NaN), since NaN is not finite.
50
+ */
51
+ export function momentToDate(m) {
52
+ if (m == null) return null;
53
+ if (!moment.isMoment(m)) {
54
+ if (m instanceof Date) return Number.isFinite(m.getTime()) ? m : null;
55
+ var d = new Date(m);
56
+ return Number.isFinite(d.getTime()) ? d : null;
57
+ }
58
+ return m.isValid() ? m.toDate() : null;
59
+ }
60
+ //# sourceMappingURL=_pickerShared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_pickerShared.js","names":["moment","dateToMoment","d","isMoment","isValid","m","momentToDate","Date","Number","isFinite","getTime","toDate"],"sources":["../../../../src/lib/v2/components/_pickerShared.ts"],"sourcesContent":["/**\r\n * _pickerShared — Portnet UI v2 (private)\r\n *\r\n * Internal sibling module. Not part of the public surface — leading\r\n * underscore is the convention. Hosts MUST NOT deep-import from this\r\n * file.\r\n *\r\n * Houses the Date ↔ moment boundary helpers shared between DatePicker,\r\n * DateTimePicker, TimePicker, and DateRangePicker. Each picker stays\r\n * a thin wrapper around a MUI X picker but uses these helpers to\r\n * coerce values at the React/MUI boundary.\r\n *\r\n * Contract: NEVER expose an Invalid Date instance. Either a valid\r\n * value or null. Hosts that consume v2 picker onChange always get a\r\n * usable value — no defensive `if (Number.isNaN(d.getTime()))` checks\r\n * scattered across consumer code.\r\n */\r\n\r\nimport moment from \"moment\";\r\n\r\ntype PickerValueInput = moment.Moment | Date | string | number | null | undefined;\r\n\r\n/**\r\n * Coerce any incoming value to a valid moment instance, or null.\r\n *\r\n * Handles:\r\n * - null / undefined → null\r\n * - moment instance → returned if valid, null otherwise\r\n * - Date instance → wrapped in moment(); valid → returned\r\n * - any other (string, number) → moment() coerced; valid → returned\r\n *\r\n * The \"valid\" check uses moment.isValid(), which catches Invalid Date\r\n * (NaN getTime), out-of-range values, and malformed strings.\r\n */\r\nexport function dateToMoment(d: PickerValueInput): moment.Moment | null {\r\n if (d == null) return null;\r\n if (moment.isMoment(d)) return d.isValid() ? d : null;\r\n const m = moment(d);\r\n return m.isValid() ? m : null;\r\n}\r\n\r\n/**\r\n * Coerce any incoming value to a valid Date instance, or null.\r\n *\r\n * Handles:\r\n * - null / undefined → null\r\n * - moment instance → toDate() if valid, null otherwise\r\n * - Date instance → returned if finite, null otherwise\r\n * - any other (string, number) → new Date() coerced; finite → returned\r\n *\r\n * The \"finite\" check on Date uses Number.isFinite(d.getTime()), which\r\n * catches Invalid Date (NaN), since NaN is not finite.\r\n */\r\nexport function momentToDate(m: PickerValueInput): Date | null {\r\n if (m == null) return null;\r\n if (!moment.isMoment(m)) {\r\n if (m instanceof Date) return Number.isFinite(m.getTime()) ? m : null;\r\n const d = new Date(m);\r\n return Number.isFinite(d.getTime()) ? d : null;\r\n }\r\n return m.isValid() ? m.toDate() : null;\r\n}\r\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,MAAM,MAAM,QAAQ;AAI3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAACC,CAAmB,EAAwB;EACtE,IAAIA,CAAC,IAAI,IAAI,EAAE,OAAO,IAAI;EAC1B,IAAIF,MAAM,CAACG,QAAQ,CAACD,CAAC,CAAC,EAAE,OAAOA,CAAC,CAACE,OAAO,CAAC,CAAC,GAAGF,CAAC,GAAG,IAAI;EACrD,IAAMG,CAAC,GAAGL,MAAM,CAACE,CAAC,CAAC;EACnB,OAAOG,CAAC,CAACD,OAAO,CAAC,CAAC,GAAGC,CAAC,GAAG,IAAI;AAC/B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAACD,CAAmB,EAAe;EAC7D,IAAIA,CAAC,IAAI,IAAI,EAAE,OAAO,IAAI;EAC1B,IAAI,CAACL,MAAM,CAACG,QAAQ,CAACE,CAAC,CAAC,EAAE;IACvB,IAAIA,CAAC,YAAYE,IAAI,EAAE,OAAOC,MAAM,CAACC,QAAQ,CAACJ,CAAC,CAACK,OAAO,CAAC,CAAC,CAAC,GAAGL,CAAC,GAAG,IAAI;IACrE,IAAMH,CAAC,GAAG,IAAIK,IAAI,CAACF,CAAC,CAAC;IACrB,OAAOG,MAAM,CAACC,QAAQ,CAACP,CAAC,CAACQ,OAAO,CAAC,CAAC,CAAC,GAAGR,CAAC,GAAG,IAAI;EAChD;EACA,OAAOG,CAAC,CAACD,OAAO,CAAC,CAAC,GAAGC,CAAC,CAACM,MAAM,CAAC,CAAC,GAAG,IAAI;AACxC","ignoreList":[]}
@@ -0,0 +1,244 @@
1
+ export { default as Spinner } from "./Spinner";
2
+ export { default as Button } from "./Button";
3
+ export { default as Field } from "./Field";
4
+ /**
5
+ * FieldError — the message renderer `Field` uses, exported standalone
6
+ * (capability gap G-18).
7
+ *
8
+ * Charter R-4.1 MUST requires a field error to carry an ICON; `Field` rendered a
9
+ * bare red helper text without one, so the canonical field wrapper missed a MUST
10
+ * on every form of every module. And a LIST-level error (a Formik array, an
11
+ * upload slot) has no single control to wrap in a `Field` at all — addpe-fe's
12
+ * local `InlineFieldAlert` reimplemented the recipe and was, ironically, more
13
+ * charter-compliant than the shared component it could not reuse.
14
+ *
15
+ * FLAT-ONLY, per the policy note in src/lib/index.ts.
16
+ */
17
+ export { default as FieldError } from "./FieldError";
18
+ export { default as Input } from "./Input";
19
+ export { default as Select } from "./Select";
20
+ export { default as Textarea } from "./Textarea";
21
+ export { default as Checkbox, CheckboxGroup } from "./Checkbox";
22
+ export { default as Radio, RadioGroup } from "./Radio";
23
+ export { default as Switch } from "./Switch";
24
+ export { default as Combobox } from "./Combobox";
25
+ export { default as TelInput } from "./TelInput";
26
+ export { default as NumberInput, FR_DECIMAL_SEPARATOR, FR_THOUSAND_SEPARATOR } from "./NumberInput";
27
+ export { default as DatePicker, DATE_FORMAT_CHARTER } from "./DatePicker";
28
+ export { default as DateTimePicker, DATETIME_FORMAT_CHARTER } from "./DateTimePicker";
29
+ export { default as TimePicker, TIME_FORMAT_CHARTER } from "./TimePicker";
30
+ export { default as DateRangePicker } from "./DateRangePicker";
31
+ export { default as Status } from "./Status";
32
+ /**
33
+ * Status contracts — public typed surface (capability gap G-31).
34
+ *
35
+ * Same defect as the `StepStatus` and `FieldHelp` blocks below: `Status` was
36
+ * exported as a VALUE while the types describing it were not re-exported here,
37
+ * so a host mapping its own business codes onto the six canonical workflow
38
+ * tones had to hand-write the union at the call site — which the Platform
39
+ * TypeScript Guidelines forbid ("Reusable types belong inside Shared UI
40
+ * Library … Never duplicate"). caution-ui carried exactly that local twin
41
+ * (`CautionStatusKind`, six members, structurally identical) plus five
42
+ * `as ComponentProps<typeof Status>` assertions at the render sites — casts
43
+ * that were never needed for anything except reaching an unreachable type.
44
+ *
45
+ * `StatusProps` travels with it: a consumer building the chip props as an
46
+ * object (mobile card, KV value slot, DataGrid cell renderer) needs the prop
47
+ * contract, and re-declaring it is the same duplication one level down.
48
+ *
49
+ * KNOWN DEBT: `StatusKind` is currently derived as
50
+ * `keyof typeof STATUS_LABELS_FR`, and STATUS_LABELS_FR is itself marked
51
+ * `@deprecated … Will be removed in v0.3` (we are at 0.8.0). Deleting that
52
+ * const would delete the public type with it. Re-anchoring `StatusKind` to a
53
+ * literal tuple form of STATUS_KEYS — which is typed `readonly string[]` and
54
+ * so cannot currently derive a union — is tracked separately; surfacing the
55
+ * type now does not deepen that debt, it only makes it visible to consumers.
56
+ *
57
+ * FLAT-ONLY, per the policy note in src/lib/index.ts: not added to
58
+ * ./v2/index.ts, which is a retiring surface. Reachable as
59
+ * `import type { StatusKind } from "@portnet/ui"` via the root star-export.
60
+ *
61
+ * Additive and type-only: no runtime change, no existing export altered.
62
+ */
63
+
64
+ export { default as Chip } from "./Chip";
65
+ export { default as Skeleton, SkeletonKPI, SkeletonRow, SkeletonDetailHero, SkeletonTabContent, SkeletonText } from "./Skeleton";
66
+ export { default as Modal } from "./Modal";
67
+ export { default as Drawer } from "./Drawer";
68
+ export { default as ConfirmDialog } from "./ConfirmDialog";
69
+ export { default as Tabs } from "./Tabs";
70
+ export { default as HStepper, VStepper } from "./Stepper";
71
+ /**
72
+ * Stepper data contracts — public typed surface.
73
+ *
74
+ * `StepStatus` is the literal union `HStepper`/`VStepper` accept on each
75
+ * step. It was exported from ./Stepper but never re-exported here, so a host
76
+ * building a step array had to hand-write the union at the call site — which
77
+ * the Platform TypeScript Guidelines forbid ("Reusable types belong inside
78
+ * Shared UI Library … Never duplicate"). ms_licenceexportation's
79
+ * ExportationDetailProgress carried exactly that duplicate, with a comment
80
+ * recording why. `VStepperItem` is surfaced alongside it because the same
81
+ * consumer constructs the item objects the union lives in.
82
+ *
83
+ * FLAT-ONLY, per the policy note in src/lib/index.ts: not added to
84
+ * ./v2/index.ts, which is a retiring surface. Reachable as
85
+ * `import type { StepStatus } from "@portnet/ui"` via the root star-export.
86
+ *
87
+ * Additive and type-only: no runtime change, no existing export altered.
88
+ */
89
+
90
+ export { default as FilterTab } from "./FilterTab";
91
+ export { default as EmptyState } from "./EmptyState";
92
+ export { default as Banner } from "./Banner";
93
+ /**
94
+ * SectionErrorBoundary — fault tolerance by import, not by copy (gap G-30).
95
+ *
96
+ * ISO/IEC 25010 § Reliability requires a system to keep operating despite a
97
+ * fault; React unmounts the WHOLE tree on a render exception, so one failing
98
+ * section replaces the page with a blank screen. `ms-ti-fe` wrapped 13 sections
99
+ * in a boundary of its own while `addpe-fe` and this library had none — a
100
+ * platform guarantee living as one module's private safeguard.
101
+ *
102
+ * Declared after Banner because it renders one as its fallback.
103
+ * FLAT-ONLY, per the policy note in src/lib/index.ts.
104
+ */
105
+ export { default as SectionErrorBoundary } from "./SectionErrorBoundary";
106
+ export { default as ToastProvider, useToast } from "./Toast";
107
+ export { default as KV } from "./KV";
108
+ export { default as KPICard } from "./KPICard";
109
+ /**
110
+ * KPIStrip — the metric-tile row (capability gap G-11).
111
+ *
112
+ * Charter §07 names this zone in the canonical page template (« ③ FILTERS / KPI
113
+ * STRIP ») but the library shipped only the TILE. So every screen wrote the
114
+ * grid, and the two in addpe-fe disagree on the desktop ladder — a KPI row that
115
+ * reflows differently per screen for no reason a user could name.
116
+ *
117
+ * FLAT-ONLY, per the policy note in src/lib/index.ts.
118
+ */
119
+ export { default as KPIStrip } from "./KPIStrip";
120
+ export { default as MobileRowCard } from "./MobileRowCard";
121
+ export { default as OverflowMenu } from "./OverflowMenu";
122
+ export { default as FieldHelp } from "./FieldHelp";
123
+ /**
124
+ * FieldHelp contracts — public typed surface (capability gap G-16).
125
+ *
126
+ * Same defect as the `StepStatus` block above: `FieldHelp` was exported as a
127
+ * VALUE while the types describing what it accepts were not re-exported here,
128
+ * so a host maintaining a help-copy dictionary had to hand-declare the entry
129
+ * shape — which the Platform TypeScript Guidelines forbid ("Reusable types
130
+ * belong inside Shared UI Library … Never duplicate"). addpe-fe's `HELP_TEXTS`
131
+ * carries exactly that local twin (`HelpTextEntry`), with a comment recording
132
+ * that `FieldHelpProps` was unreachable.
133
+ *
134
+ * `FieldHelpVariant` / `FieldHelpIcon` travel with it: a dictionary that sets
135
+ * `variant` per entry needs the union, and re-declaring `"tooltip" | "popover"`
136
+ * at the call site is the same duplication one level down.
137
+ *
138
+ * FLAT-ONLY, per the policy note in src/lib/index.ts.
139
+ * Additive and type-only: no runtime change, no existing export altered.
140
+ */
141
+
142
+ export { default as SkipLink } from "./SkipLink";
143
+ export { default as ProgressBar } from "./ProgressBar";
144
+ export { default as Segmented } from "./Segmented";
145
+ export { default as Dropzone } from "./Dropzone";
146
+ export { default as CommandPalette } from "./CommandPalette";
147
+
148
+ // Loading-overlay primitives (Charter §04.4). See ./Busy.js.
149
+ // Replaces the PAGE_OVERLAY_SX inline block that host modules
150
+ // previously froze in 15+ feature pages.
151
+ export { default as SectionBusy, PageBusy } from "./Busy";
152
+
153
+ // Layout primitives (Charter §03). Replace local FormGrid / KVGrid
154
+ // wrappers that host modules previously inlined.
155
+ export { default as FormGrid } from "./FormGrid";
156
+ export { default as KVGrid } from "./KVGrid";
157
+
158
+ /**
159
+ * Surface — the bare card container (capability gap G-10).
160
+ *
161
+ * The card recipe (--surface + --border + -r-lg + --shadow-*) existed only
162
+ * WELDED INSIDE FormSection, which also imposes a numbered heading and an inner
163
+ * FormGrid. A consumer needing just the container — a DataGrid shell, a hero
164
+ * card, a sticky side rail, a nested file row — could not reach it and rewrote
165
+ * the recipe: three copies in addpe-fe plus a document card repeated across
166
+ * three files, each having picked its own elevation and radius from memory.
167
+ *
168
+ * FLAT-ONLY, per the policy note in src/lib/index.ts.
169
+ */
170
+ export { default as Surface } from "./Surface";
171
+ /**
172
+ * FileCard — an attached document, displayed (capability gap G-12).
173
+ *
174
+ * The library shipped `Dropzone`, the UPLOAD affordance, and nothing for the
175
+ * state immediately after it. So every screen showing an attachment rebuilt the
176
+ * same row: three copies in addpe-fe, with THREE different paddings for one
177
+ * concept — accidental drift, exactly what R-2.1 forbids. Composes `Surface`.
178
+ *
179
+ * FLAT-ONLY, per the policy note in src/lib/index.ts.
180
+ */
181
+ export { default as FileCard } from "./FileCard";
182
+ // Generic flex container + stack shorthand (B17). Drop-in
183
+ // replacement for the common MUI Box/Stack usage pattern when no
184
+ // breakpoint variation is required. See ./Layout.js.
185
+ export { Box, Stack } from "./Layout";
186
+
187
+ // Section-header primitive (Charter §03). Standalone heading row;
188
+ // see SectionHeader.js for how it differs from FormSection.
189
+ export { default as SectionHeader } from "./SectionHeader";
190
+
191
+ // Disclosure primitives (Charter §03). Accordion uses native
192
+ // <details>/<summary>; Tooltip wraps MuiTooltip with token theming
193
+ // and aria-label mirroring for icon-only triggers.
194
+ export { default as Accordion } from "./Accordion";
195
+ export { default as Tooltip } from "./Tooltip";
196
+
197
+ // Footer action strip (Charter §03). Distinct from ActionBar
198
+ // (page header) and BulkActionBar (selection toolbar).
199
+ export { default as ActionStrip } from "./ActionStrip";
200
+
201
+ // Taxonomy chip — reuses the 6-tone status palette but distinct
202
+ // from v2.Status (category != workflow state).
203
+ export { default as CategoryTag } from "./CategoryTag";
204
+
205
+ // Favorite toggle (☆/★) — presentational, controlled leaf primitive
206
+ // used by the User Personalization Foundation's favorites capability
207
+ // (v2/personalization). Provider-free: wire with useIsFavorite /
208
+ // useFavorites, or drive manually via pressed/onChange.
209
+ export { default as FavoriteToggle } from "./FavoriteToggle";
210
+
211
+ // Document viewer (Charter §07). Presentational pdf.js wrapper; the host
212
+ // owns fetching (fileUrl|base64 + loading/error + workerUrl). Pulls the
213
+ // @react-pdf-viewer / pdfjs-dist OPTIONAL peer deps — installed only by
214
+ // PDF-consuming modules.
215
+ export { default as PdfViewer } from "./PdfViewer";
216
+ // Error pages — Charter §07. Router-agnostic; the lib accepts
217
+ // onBack / onHome / onRetry callback props rather than importing
218
+ // any router hook. NB: the internal _ErrorPageBody helper is NOT
219
+ // re-exported (underscore-prefix convention).
220
+ export { default as ForbiddenPage } from "./ForbiddenPage";
221
+ export { default as NotFoundPage } from "./NotFoundPage";
222
+ export { default as ServerErrorPage } from "./ServerErrorPage";
223
+ export { default as NetworkErrorPage } from "./NetworkErrorPage";
224
+ /**
225
+ * Error-page prop contracts — public typed surface (capability gap G-32).
226
+ *
227
+ * The four pages are deliberately router-agnostic: they take `onBack` /
228
+ * `onHome` / `onRetry` callbacks instead of importing a router hook. That
229
+ * design REQUIRES every consumer to write a thin adapter binding its own
230
+ * router to those callbacks — and each adapter needs the prop type to declare
231
+ * what it is producing. The types existed on each module but were not
232
+ * re-exported here, so the adapters could not reach them: caution-ui's
233
+ * ErrorPages.tsx carried four
234
+ * `as React.ComponentProps<typeof V2ForbiddenPage>` assertions for no reason
235
+ * other than that `ForbiddenPageProps` was unreachable.
236
+ *
237
+ * A router adapter is the single most-repeated consumer of these components
238
+ * across the fleet — one per module — so leaving the contract unreachable
239
+ * guaranteed the same four casts in every repository.
240
+ *
241
+ * FLAT-ONLY, per the policy note in src/lib/index.ts.
242
+ * Additive and type-only: no runtime change, no existing export altered.
243
+ */
244
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default","Spinner","Button","Field","FieldError","Input","Select","Textarea","Checkbox","CheckboxGroup","Radio","RadioGroup","Switch","Combobox","TelInput","NumberInput","FR_DECIMAL_SEPARATOR","FR_THOUSAND_SEPARATOR","DatePicker","DATE_FORMAT_CHARTER","DateTimePicker","DATETIME_FORMAT_CHARTER","TimePicker","TIME_FORMAT_CHARTER","DateRangePicker","Status","Chip","Skeleton","SkeletonKPI","SkeletonRow","SkeletonDetailHero","SkeletonTabContent","SkeletonText","Modal","Drawer","ConfirmDialog","Tabs","HStepper","VStepper","FilterTab","EmptyState","Banner","SectionErrorBoundary","ToastProvider","useToast","KV","KPICard","KPIStrip","MobileRowCard","OverflowMenu","FieldHelp","SkipLink","ProgressBar","Segmented","Dropzone","CommandPalette","SectionBusy","PageBusy","FormGrid","KVGrid","Surface","FileCard","Box","Stack","SectionHeader","Accordion","Tooltip","ActionStrip","CategoryTag","FavoriteToggle","PdfViewer","ForbiddenPage","NotFoundPage","ServerErrorPage","NetworkErrorPage"],"sources":["../../../../src/lib/v2/components/index.ts"],"sourcesContent":["export { default as Spinner } from \"./Spinner\";\r\nexport { default as Button } from \"./Button\";\r\nexport { default as Field } from \"./Field\";\r\n/**\r\n * FieldError — the message renderer `Field` uses, exported standalone\r\n * (capability gap G-18).\r\n *\r\n * Charter R-4.1 MUST requires a field error to carry an ICON; `Field` rendered a\r\n * bare red helper text without one, so the canonical field wrapper missed a MUST\r\n * on every form of every module. And a LIST-level error (a Formik array, an\r\n * upload slot) has no single control to wrap in a `Field` at all — addpe-fe's\r\n * local `InlineFieldAlert` reimplemented the recipe and was, ironically, more\r\n * charter-compliant than the shared component it could not reuse.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts.\r\n */\r\nexport { default as FieldError } from \"./FieldError\";\r\nexport type { FieldErrorProps } from \"./FieldError\";\r\nexport { default as Input } from \"./Input\";\r\nexport { default as Select } from \"./Select\";\r\nexport type { SelectOption, SelectOptionObject, SelectOptionValue, SelectValue, SelectChangeLike, SelectLabels } from \"./Select\";\r\nexport { default as Textarea } from \"./Textarea\";\r\nexport { default as Checkbox, CheckboxGroup } from \"./Checkbox\";\r\nexport { default as Radio, RadioGroup } from \"./Radio\";\r\nexport { default as Switch } from \"./Switch\";\r\nexport { default as Combobox } from \"./Combobox\";\r\nexport type { ComboboxOption, ComboboxOptionValue, ComboboxValue, ComboboxLabels, ComboboxProps } from \"./Combobox\";\r\nexport { default as TelInput } from \"./TelInput\";\r\nexport {\r\n default as NumberInput,\r\n FR_DECIMAL_SEPARATOR,\r\n FR_THOUSAND_SEPARATOR,\r\n} from \"./NumberInput\";\r\nexport {\r\n default as DatePicker,\r\n DATE_FORMAT_CHARTER,\r\n} from \"./DatePicker\";\r\nexport {\r\n default as DateTimePicker,\r\n DATETIME_FORMAT_CHARTER,\r\n} from \"./DateTimePicker\";\r\nexport {\r\n default as TimePicker,\r\n TIME_FORMAT_CHARTER,\r\n} from \"./TimePicker\";\r\nexport { default as DateRangePicker } from \"./DateRangePicker\";\r\nexport { default as Status } from \"./Status\";\r\n/**\r\n * Status contracts — public typed surface (capability gap G-31).\r\n *\r\n * Same defect as the `StepStatus` and `FieldHelp` blocks below: `Status` was\r\n * exported as a VALUE while the types describing it were not re-exported here,\r\n * so a host mapping its own business codes onto the six canonical workflow\r\n * tones had to hand-write the union at the call site — which the Platform\r\n * TypeScript Guidelines forbid (\"Reusable types belong inside Shared UI\r\n * Library … Never duplicate\"). caution-ui carried exactly that local twin\r\n * (`CautionStatusKind`, six members, structurally identical) plus five\r\n * `as ComponentProps<typeof Status>` assertions at the render sites — casts\r\n * that were never needed for anything except reaching an unreachable type.\r\n *\r\n * `StatusProps` travels with it: a consumer building the chip props as an\r\n * object (mobile card, KV value slot, DataGrid cell renderer) needs the prop\r\n * contract, and re-declaring it is the same duplication one level down.\r\n *\r\n * KNOWN DEBT: `StatusKind` is currently derived as\r\n * `keyof typeof STATUS_LABELS_FR`, and STATUS_LABELS_FR is itself marked\r\n * `@deprecated … Will be removed in v0.3` (we are at 0.8.0). Deleting that\r\n * const would delete the public type with it. Re-anchoring `StatusKind` to a\r\n * literal tuple form of STATUS_KEYS — which is typed `readonly string[]` and\r\n * so cannot currently derive a union — is tracked separately; surfacing the\r\n * type now does not deepen that debt, it only makes it visible to consumers.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts: not added to\r\n * ./v2/index.ts, which is a retiring surface. Reachable as\r\n * `import type { StatusKind } from \"@portnet/ui\"` via the root star-export.\r\n *\r\n * Additive and type-only: no runtime change, no existing export altered.\r\n */\r\nexport type { StatusKind, StatusProps } from \"./Status\";\r\nexport { default as Chip } from \"./Chip\";\r\nexport {\r\n default as Skeleton,\r\n SkeletonKPI,\r\n SkeletonRow,\r\n SkeletonDetailHero,\r\n SkeletonTabContent,\r\n SkeletonText,\r\n} from \"./Skeleton\";\r\nexport { default as Modal } from \"./Modal\";\r\nexport { default as Drawer } from \"./Drawer\";\r\nexport type { DrawerProps, DrawerLabels, DrawerAnchor } from \"./Drawer\";\r\nexport { default as ConfirmDialog } from \"./ConfirmDialog\";\r\nexport { default as Tabs } from \"./Tabs\";\r\nexport { default as HStepper, VStepper } from \"./Stepper\";\r\n/**\r\n * Stepper data contracts — public typed surface.\r\n *\r\n * `StepStatus` is the literal union `HStepper`/`VStepper` accept on each\r\n * step. It was exported from ./Stepper but never re-exported here, so a host\r\n * building a step array had to hand-write the union at the call site — which\r\n * the Platform TypeScript Guidelines forbid (\"Reusable types belong inside\r\n * Shared UI Library … Never duplicate\"). ms_licenceexportation's\r\n * ExportationDetailProgress carried exactly that duplicate, with a comment\r\n * recording why. `VStepperItem` is surfaced alongside it because the same\r\n * consumer constructs the item objects the union lives in.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts: not added to\r\n * ./v2/index.ts, which is a retiring surface. Reachable as\r\n * `import type { StepStatus } from \"@portnet/ui\"` via the root star-export.\r\n *\r\n * Additive and type-only: no runtime change, no existing export altered.\r\n */\r\nexport type { StepStatus, StepState, VStepperItem } from \"./Stepper\";\r\nexport { default as FilterTab } from \"./FilterTab\";\r\nexport type { FilterTabVariant, FilterTabLabels } from \"./FilterTab\";\r\nexport { default as EmptyState } from \"./EmptyState\";\r\nexport { default as Banner } from \"./Banner\";\r\nexport type { BannerVariant, BannerAction } from \"./Banner\";\r\n/**\r\n * SectionErrorBoundary — fault tolerance by import, not by copy (gap G-30).\r\n *\r\n * ISO/IEC 25010 § Reliability requires a system to keep operating despite a\r\n * fault; React unmounts the WHOLE tree on a render exception, so one failing\r\n * section replaces the page with a blank screen. `ms-ti-fe` wrapped 13 sections\r\n * in a boundary of its own while `addpe-fe` and this library had none — a\r\n * platform guarantee living as one module's private safeguard.\r\n *\r\n * Declared after Banner because it renders one as its fallback.\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts.\r\n */\r\nexport { default as SectionErrorBoundary } from \"./SectionErrorBoundary\";\r\nexport type { SectionErrorBoundaryProps } from \"./SectionErrorBoundary\";\r\nexport { default as ToastProvider, useToast } from \"./Toast\";\r\nexport type { ToastVariant, ToastProviderLabels, ToastUndoOptions, ToastProgressHandle, ToastApi } from \"./Toast\";\r\nexport { default as KV } from \"./KV\";\r\nexport { default as KPICard } from \"./KPICard\";\r\nexport type { KPICardProps, KPICardLabels } from \"./KPICard\";\r\n/**\r\n * KPIStrip — the metric-tile row (capability gap G-11).\r\n *\r\n * Charter §07 names this zone in the canonical page template (« ③ FILTERS / KPI\r\n * STRIP ») but the library shipped only the TILE. So every screen wrote the\r\n * grid, and the two in addpe-fe disagree on the desktop ladder — a KPI row that\r\n * reflows differently per screen for no reason a user could name.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts.\r\n */\r\nexport { default as KPIStrip } from \"./KPIStrip\";\r\nexport type { KPIStripProps } from \"./KPIStrip\";\r\nexport { default as MobileRowCard } from \"./MobileRowCard\";\r\nexport type { MobileRowCardProps } from \"./MobileRowCard\";\r\nexport { default as OverflowMenu } from \"./OverflowMenu\";\r\nexport type { OverflowMenuAction, OverflowMenuProps, OverflowMenuLabels } from \"./OverflowMenu\";\r\nexport { default as FieldHelp } from \"./FieldHelp\";\r\n/**\r\n * FieldHelp contracts — public typed surface (capability gap G-16).\r\n *\r\n * Same defect as the `StepStatus` block above: `FieldHelp` was exported as a\r\n * VALUE while the types describing what it accepts were not re-exported here,\r\n * so a host maintaining a help-copy dictionary had to hand-declare the entry\r\n * shape — which the Platform TypeScript Guidelines forbid (\"Reusable types\r\n * belong inside Shared UI Library … Never duplicate\"). addpe-fe's `HELP_TEXTS`\r\n * carries exactly that local twin (`HelpTextEntry`), with a comment recording\r\n * that `FieldHelpProps` was unreachable.\r\n *\r\n * `FieldHelpVariant` / `FieldHelpIcon` travel with it: a dictionary that sets\r\n * `variant` per entry needs the union, and re-declaring `\"tooltip\" | \"popover\"`\r\n * at the call site is the same duplication one level down.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts.\r\n * Additive and type-only: no runtime change, no existing export altered.\r\n */\r\nexport type { FieldHelpProps, FieldHelpVariant, FieldHelpIcon } from \"./FieldHelp\";\r\nexport { default as SkipLink } from \"./SkipLink\";\r\nexport { default as ProgressBar } from \"./ProgressBar\";\r\nexport { default as Segmented } from \"./Segmented\";\r\nexport { default as Dropzone } from \"./Dropzone\";\r\nexport type {\r\n DropzoneProps,\r\n DropzoneFile,\r\n DropzoneFileStatus,\r\n DropzoneRejection,\r\n DropzoneRejectReason,\r\n DropzoneReasons,\r\n DropzoneLabels,\r\n} from \"./Dropzone\";\r\nexport { default as CommandPalette } from \"./CommandPalette\";\r\n\r\n// Loading-overlay primitives (Charter §04.4). See ./Busy.js.\r\n// Replaces the PAGE_OVERLAY_SX inline block that host modules\r\n// previously froze in 15+ feature pages.\r\nexport { default as SectionBusy, PageBusy } from \"./Busy\";\r\n\r\n// Layout primitives (Charter §03). Replace local FormGrid / KVGrid\r\n// wrappers that host modules previously inlined.\r\nexport { default as FormGrid } from \"./FormGrid\";\r\nexport { default as KVGrid } from \"./KVGrid\";\r\n\r\n/**\r\n * Surface — the bare card container (capability gap G-10).\r\n *\r\n * The card recipe (--surface + --border + -r-lg + --shadow-*) existed only\r\n * WELDED INSIDE FormSection, which also imposes a numbered heading and an inner\r\n * FormGrid. A consumer needing just the container — a DataGrid shell, a hero\r\n * card, a sticky side rail, a nested file row — could not reach it and rewrote\r\n * the recipe: three copies in addpe-fe plus a document card repeated across\r\n * three files, each having picked its own elevation and radius from memory.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts.\r\n */\r\nexport { default as Surface } from \"./Surface\";\r\nexport type {\r\n SurfaceProps,\r\n SurfaceTone,\r\n SurfaceElevation,\r\n SurfaceRadius,\r\n SurfacePadding,\r\n} from \"./Surface\";\r\n\r\n/**\r\n * FileCard — an attached document, displayed (capability gap G-12).\r\n *\r\n * The library shipped `Dropzone`, the UPLOAD affordance, and nothing for the\r\n * state immediately after it. So every screen showing an attachment rebuilt the\r\n * same row: three copies in addpe-fe, with THREE different paddings for one\r\n * concept — accidental drift, exactly what R-2.1 forbids. Composes `Surface`.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts.\r\n */\r\nexport { default as FileCard } from \"./FileCard\";\r\nexport type { FileCardProps } from \"./FileCard\";\r\n\r\n// Generic flex container + stack shorthand (B17). Drop-in\r\n// replacement for the common MUI Box/Stack usage pattern when no\r\n// breakpoint variation is required. See ./Layout.js.\r\nexport { Box, Stack } from \"./Layout\";\r\n\r\n// Section-header primitive (Charter §03). Standalone heading row;\r\n// see SectionHeader.js for how it differs from FormSection.\r\nexport { default as SectionHeader } from \"./SectionHeader\";\r\n\r\n// Disclosure primitives (Charter §03). Accordion uses native\r\n// <details>/<summary>; Tooltip wraps MuiTooltip with token theming\r\n// and aria-label mirroring for icon-only triggers.\r\nexport { default as Accordion } from \"./Accordion\";\r\nexport { default as Tooltip } from \"./Tooltip\";\r\n\r\n// Footer action strip (Charter §03). Distinct from ActionBar\r\n// (page header) and BulkActionBar (selection toolbar).\r\nexport { default as ActionStrip } from \"./ActionStrip\";\r\n\r\n// Taxonomy chip — reuses the 6-tone status palette but distinct\r\n// from v2.Status (category != workflow state).\r\nexport { default as CategoryTag } from \"./CategoryTag\";\r\n\r\n// Favorite toggle (☆/★) — presentational, controlled leaf primitive\r\n// used by the User Personalization Foundation's favorites capability\r\n// (v2/personalization). Provider-free: wire with useIsFavorite /\r\n// useFavorites, or drive manually via pressed/onChange.\r\nexport { default as FavoriteToggle } from \"./FavoriteToggle\";\r\n\r\n// Document viewer (Charter §07). Presentational pdf.js wrapper; the host\r\n// owns fetching (fileUrl|base64 + loading/error + workerUrl). Pulls the\r\n// @react-pdf-viewer / pdfjs-dist OPTIONAL peer deps — installed only by\r\n// PDF-consuming modules.\r\nexport { default as PdfViewer } from \"./PdfViewer\";\r\nexport type { PdfViewerProps } from \"./PdfViewer\";\r\n\r\n// Error pages — Charter §07. Router-agnostic; the lib accepts\r\n// onBack / onHome / onRetry callback props rather than importing\r\n// any router hook. NB: the internal _ErrorPageBody helper is NOT\r\n// re-exported (underscore-prefix convention).\r\nexport { default as ForbiddenPage } from \"./ForbiddenPage\";\r\nexport { default as NotFoundPage } from \"./NotFoundPage\";\r\nexport { default as ServerErrorPage } from \"./ServerErrorPage\";\r\nexport { default as NetworkErrorPage } from \"./NetworkErrorPage\";\r\n/**\r\n * Error-page prop contracts — public typed surface (capability gap G-32).\r\n *\r\n * The four pages are deliberately router-agnostic: they take `onBack` /\r\n * `onHome` / `onRetry` callbacks instead of importing a router hook. That\r\n * design REQUIRES every consumer to write a thin adapter binding its own\r\n * router to those callbacks — and each adapter needs the prop type to declare\r\n * what it is producing. The types existed on each module but were not\r\n * re-exported here, so the adapters could not reach them: caution-ui's\r\n * ErrorPages.tsx carried four\r\n * `as React.ComponentProps<typeof V2ForbiddenPage>` assertions for no reason\r\n * other than that `ForbiddenPageProps` was unreachable.\r\n *\r\n * A router adapter is the single most-repeated consumer of these components\r\n * across the fleet — one per module — so leaving the contract unreachable\r\n * guaranteed the same four casts in every repository.\r\n *\r\n * FLAT-ONLY, per the policy note in src/lib/index.ts.\r\n * Additive and type-only: no runtime change, no existing export altered.\r\n */\r\nexport type { ForbiddenPageProps } from \"./ForbiddenPage\";\r\nexport type { NotFoundPageProps } from \"./NotFoundPage\";\r\nexport type { ServerErrorPageProps } from \"./ServerErrorPage\";\r\nexport type { NetworkErrorPageProps } from \"./NetworkErrorPage\";\r\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,OAAO,QAAc,WAAW;AACpD,SAASD,OAAO,IAAIE,MAAM,QAAe,UAAU;AACnD,SAASF,OAAO,IAAIG,KAAK,QAAgB,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASH,OAAO,IAAII,UAAU,QAAW,cAAc;AAEvD,SAASJ,OAAO,IAAIK,KAAK,QAAgB,SAAS;AAClD,SAASL,OAAO,IAAIM,MAAM,QAAe,UAAU;AAEnD,SAASN,OAAO,IAAIO,QAAQ,QAAa,YAAY;AACrD,SAASP,OAAO,IAAIQ,QAAQ,EAAEC,aAAa,QAAQ,YAAY;AAC/D,SAAST,OAAO,IAAIU,KAAK,EAAEC,UAAU,QAAQ,SAAS;AACtD,SAASX,OAAO,IAAIY,MAAM,QAAe,UAAU;AACnD,SAASZ,OAAO,IAAIa,QAAQ,QAAa,YAAY;AAErD,SAASb,OAAO,IAAIc,QAAQ,QAAa,YAAY;AACrD,SACEd,OAAO,IAAIe,WAAW,EACtBC,oBAAoB,EACpBC,qBAAqB,QAChB,eAAe;AACtB,SACEjB,OAAO,IAAIkB,UAAU,EACrBC,mBAAmB,QACd,cAAc;AACrB,SACEnB,OAAO,IAAIoB,cAAc,EACzBC,uBAAuB,QAClB,kBAAkB;AACzB,SACErB,OAAO,IAAIsB,UAAU,EACrBC,mBAAmB,QACd,cAAc;AACrB,SAASvB,OAAO,IAAIwB,eAAe,QAAQ,mBAAmB;AAC9D,SAASxB,OAAO,IAAIyB,MAAM,QAAe,UAAU;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASzB,OAAO,IAAI0B,IAAI,QAAiB,QAAQ;AACjD,SACE1B,OAAO,IAAI2B,QAAQ,EACnBC,WAAW,EACXC,WAAW,EACXC,kBAAkB,EAClBC,kBAAkB,EAClBC,YAAY,QACP,YAAY;AACnB,SAAShC,OAAO,IAAIiC,KAAK,QAAgB,SAAS;AAClD,SAASjC,OAAO,IAAIkC,MAAM,QAAe,UAAU;AAEnD,SAASlC,OAAO,IAAImC,aAAa,QAAQ,iBAAiB;AAC1D,SAASnC,OAAO,IAAIoC,IAAI,QAAiB,QAAQ;AACjD,SAASpC,OAAO,IAAIqC,QAAQ,EAAEC,QAAQ,QAAQ,WAAW;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAStC,OAAO,IAAIuC,SAAS,QAAY,aAAa;AAEtD,SAASvC,OAAO,IAAIwC,UAAU,QAAW,cAAc;AACvD,SAASxC,OAAO,IAAIyC,MAAM,QAAe,UAAU;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASzC,OAAO,IAAI0C,oBAAoB,QAAQ,wBAAwB;AAExE,SAAS1C,OAAO,IAAI2C,aAAa,EAAEC,QAAQ,QAAQ,SAAS;AAE5D,SAAS5C,OAAO,IAAI6C,EAAE,QAAmB,MAAM;AAC/C,SAAS7C,OAAO,IAAI8C,OAAO,QAAc,WAAW;AAEpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS9C,OAAO,IAAI+C,QAAQ,QAAa,YAAY;AAErD,SAAS/C,OAAO,IAAIgD,aAAa,QAAQ,iBAAiB;AAE1D,SAAShD,OAAO,IAAIiD,YAAY,QAAS,gBAAgB;AAEzD,SAASjD,OAAO,IAAIkD,SAAS,QAAY,aAAa;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASlD,OAAO,IAAImD,QAAQ,QAAa,YAAY;AACrD,SAASnD,OAAO,IAAIoD,WAAW,QAAW,eAAe;AACzD,SAASpD,OAAO,IAAIqD,SAAS,QAAa,aAAa;AACvD,SAASrD,OAAO,IAAIsD,QAAQ,QAAc,YAAY;AAUtD,SAAStD,OAAO,IAAIuD,cAAc,QAAQ,kBAAkB;;AAE5D;AACA;AACA;AACA,SAASvD,OAAO,IAAIwD,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;;AAEzD;AACA;AACA,SAASzD,OAAO,IAAI0D,QAAQ,QAAa,YAAY;AACrD,SAAS1D,OAAO,IAAI2D,MAAM,QAAe,UAAU;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS3D,OAAO,IAAI4D,OAAO,QAAc,WAAW;AASpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS5D,OAAO,IAAI6D,QAAQ,QAAa,YAAY;AAGrD;AACA;AACA;AACA,SAASC,GAAG,EAAEC,KAAK,QAAsB,UAAU;;AAEnD;AACA;AACA,SAAS/D,OAAO,IAAIgE,aAAa,QAAQ,iBAAiB;;AAE1D;AACA;AACA;AACA,SAAShE,OAAO,IAAIiE,SAAS,QAAY,aAAa;AACtD,SAASjE,OAAO,IAAIkE,OAAO,QAAc,WAAW;;AAEpD;AACA;AACA,SAASlE,OAAO,IAAImE,WAAW,QAAU,eAAe;;AAExD;AACA;AACA,SAASnE,OAAO,IAAIoE,WAAW,QAAU,eAAe;;AAExD;AACA;AACA;AACA;AACA,SAASpE,OAAO,IAAIqE,cAAc,QAAQ,kBAAkB;;AAE5D;AACA;AACA;AACA;AACA,SAASrE,OAAO,IAAIsE,SAAS,QAAY,aAAa;AAGtD;AACA;AACA;AACA;AACA,SAAStE,OAAO,IAAIuE,aAAa,QAAW,iBAAiB;AAC7D,SAASvE,OAAO,IAAIwE,YAAY,QAAY,gBAAgB;AAC5D,SAASxE,OAAO,IAAIyE,eAAe,QAAS,mBAAmB;AAC/D,SAASzE,OAAO,IAAI0E,gBAAgB,QAAQ,oBAAoB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ export { default as useFocusTrap } from "./useFocusTrap";
2
+ export { default as useTabLoading, PERCEPTION_THRESHOLD_MS } from "./useTabLoading";
3
+ export { default as useDelayedFlag } from "./useDelayedFlag";
4
+ export { default as useDensity } from "./useDensity";
5
+ export { default as useResolvedDensity } from "./useResolvedDensity";
6
+ export { default as useSortedRows } from "./useSortedRows";
7
+ export { default as useFormAutoSave } from "./useFormAutoSave";
8
+ export { default as useFormCompletionProgress } from "./useFormCompletionProgress";
9
+ export { default as useFocusFirstError, focusFieldByName } from "./useFocusFirstError";
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["default","useFocusTrap","useTabLoading","PERCEPTION_THRESHOLD_MS","useDelayedFlag","useDensity","useResolvedDensity","useSortedRows","useFormAutoSave","useFormCompletionProgress","useFocusFirstError","focusFieldByName"],"sources":["../../../../src/lib/v2/hooks/index.ts"],"sourcesContent":["export { default as useFocusTrap } from \"./useFocusTrap\";\r\nexport {\r\n default as useTabLoading,\r\n PERCEPTION_THRESHOLD_MS,\r\n} from \"./useTabLoading\";\r\nexport { default as useDelayedFlag } from \"./useDelayedFlag\";\r\nexport { default as useDensity } from \"./useDensity\";\r\nexport { default as useResolvedDensity } from \"./useResolvedDensity\";\r\nexport { default as useSortedRows } from \"./useSortedRows\";\r\nexport { default as useFormAutoSave } from \"./useFormAutoSave\";\r\nexport { default as useFormCompletionProgress } from \"./useFormCompletionProgress\";\r\nexport {\r\n default as useFocusFirstError,\r\n focusFieldByName,\r\n} from \"./useFocusFirstError\";\r\nexport type {\r\n FocusFieldOptions,\r\n UseFocusFirstErrorOptions,\r\n} from \"./useFocusFirstError\";\r\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,YAAY,QAAQ,gBAAgB;AACxD,SACED,OAAO,IAAIE,aAAa,EACxBC,uBAAuB,QAClB,iBAAiB;AACxB,SAASH,OAAO,IAAII,cAAc,QAAQ,kBAAkB;AAC5D,SAASJ,OAAO,IAAIK,UAAU,QAAQ,cAAc;AACpD,SAASL,OAAO,IAAIM,kBAAkB,QAAQ,sBAAsB;AACpE,SAASN,OAAO,IAAIO,aAAa,QAAQ,iBAAiB;AAC1D,SAASP,OAAO,IAAIQ,eAAe,QAAQ,mBAAmB;AAC9D,SAASR,OAAO,IAAIS,yBAAyB,QAAQ,6BAA6B;AAClF,SACET,OAAO,IAAIU,kBAAkB,EAC7BC,gBAAgB,QACX,sBAAsB","ignoreList":[]}
@@ -0,0 +1,55 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ 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."); }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
5
+ function _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; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import { useState, useEffect } from "react";
8
+ import { PERCEPTION_THRESHOLD_MS } from "./useTabLoading";
9
+
10
+ /**
11
+ * useDelayedFlag — Portnet UI v2
12
+ *
13
+ * Returns `true` only when `active` has been continuously true for
14
+ * at least `delayMs` ms. Resets to `false` the moment `active` flips
15
+ * back to false. Charter R-Sk.1 — perception threshold.
16
+ *
17
+ * const showSkeleton = useDelayedFlag(loading);
18
+ * if (showSkeleton) return <Skeleton />;
19
+ * if (loading) return null; // sub-threshold, render nothing
20
+ * return <Data rows={rows} />;
21
+ *
22
+ * Use when:
23
+ * - You want to delay showing a loading affordance (skeleton,
24
+ * spinner overlay, "Loading…" text) until the user actually
25
+ * perceives the wait.
26
+ * - The flag has no tab/key semantics. For tab-aware loading
27
+ * (preserves across tab swap to avoid flicker between two
28
+ * consecutive skeletons), use `useTabLoading`.
29
+ */
30
+ export default function useDelayedFlag(active) {
31
+ var delayMs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : PERCEPTION_THRESHOLD_MS;
32
+ var _useState = useState(false),
33
+ _useState2 = _slicedToArray(_useState, 2),
34
+ delayed = _useState2[0],
35
+ setDelayed = _useState2[1];
36
+ useEffect(function () {
37
+ if (!active) {
38
+ // Inactive — drop any in-flight delayed flag immediately so
39
+ // the consumer can render the success path without waiting.
40
+ setDelayed(false);
41
+ return undefined;
42
+ }
43
+ // Schedule the flag flip. If `active` resolves false before the
44
+ // timer fires, cleanup clears the timer and the flag never goes
45
+ // true (the perception-threshold contract).
46
+ var t = setTimeout(function () {
47
+ return setDelayed(true);
48
+ }, delayMs);
49
+ return function () {
50
+ return clearTimeout(t);
51
+ };
52
+ }, [active, delayMs]);
53
+ return delayed;
54
+ }
55
+ //# sourceMappingURL=useDelayedFlag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDelayedFlag.js","names":["useState","useEffect","PERCEPTION_THRESHOLD_MS","useDelayedFlag","active","delayMs","arguments","length","undefined","_useState","_useState2","_slicedToArray","delayed","setDelayed","t","setTimeout","clearTimeout"],"sources":["../../../../src/lib/v2/hooks/useDelayedFlag.ts"],"sourcesContent":["import { useState, useEffect } from \"react\";\r\nimport { PERCEPTION_THRESHOLD_MS } from \"./useTabLoading\";\r\n\r\n/**\r\n * useDelayedFlag — Portnet UI v2\r\n *\r\n * Returns `true` only when `active` has been continuously true for\r\n * at least `delayMs` ms. Resets to `false` the moment `active` flips\r\n * back to false. Charter R-Sk.1 — perception threshold.\r\n *\r\n * const showSkeleton = useDelayedFlag(loading);\r\n * if (showSkeleton) return <Skeleton />;\r\n * if (loading) return null; // sub-threshold, render nothing\r\n * return <Data rows={rows} />;\r\n *\r\n * Use when:\r\n * - You want to delay showing a loading affordance (skeleton,\r\n * spinner overlay, \"Loading…\" text) until the user actually\r\n * perceives the wait.\r\n * - The flag has no tab/key semantics. For tab-aware loading\r\n * (preserves across tab swap to avoid flicker between two\r\n * consecutive skeletons), use `useTabLoading`.\r\n */\r\nexport default function useDelayedFlag(\r\n active: boolean,\r\n delayMs: number = PERCEPTION_THRESHOLD_MS\r\n): boolean {\r\n const [delayed, setDelayed] = useState(false);\r\n\r\n useEffect(() => {\r\n if (!active) {\r\n // Inactive — drop any in-flight delayed flag immediately so\r\n // the consumer can render the success path without waiting.\r\n setDelayed(false);\r\n return undefined;\r\n }\r\n // Schedule the flag flip. If `active` resolves false before the\r\n // timer fires, cleanup clears the timer and the flag never goes\r\n // true (the perception-threshold contract).\r\n const t = setTimeout(() => setDelayed(true), delayMs);\r\n return () => clearTimeout(t);\r\n }, [active, delayMs]);\r\n\r\n return delayed;\r\n}\r\n"],"mappings":";;;;;;AAAA,SAASA,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAC3C,SAASC,uBAAuB,QAAQ,iBAAiB;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,cAAcA,CACpCC,MAAe,EAEN;EAAA,IADTC,OAAe,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGJ,uBAAuB;EAEzC,IAAAO,SAAA,GAA8BT,QAAQ,CAAC,KAAK,CAAC;IAAAU,UAAA,GAAAC,cAAA,CAAAF,SAAA;IAAtCG,OAAO,GAAAF,UAAA;IAAEG,UAAU,GAAAH,UAAA;EAE1BT,SAAS,CAAC,YAAM;IACd,IAAI,CAACG,MAAM,EAAE;MACX;MACA;MACAS,UAAU,CAAC,KAAK,CAAC;MACjB,OAAOL,SAAS;IAClB;IACA;IACA;IACA;IACA,IAAMM,CAAC,GAAGC,UAAU,CAAC;MAAA,OAAMF,UAAU,CAAC,IAAI,CAAC;IAAA,GAAER,OAAO,CAAC;IACrD,OAAO;MAAA,OAAMW,YAAY,CAACF,CAAC,CAAC;IAAA;EAC9B,CAAC,EAAE,CAACV,MAAM,EAAEC,OAAO,CAAC,CAAC;EAErB,OAAOO,OAAO;AAChB","ignoreList":[]}