@abyss-project/commons-front-core 6.1.0 → 7.1.0

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 (579) hide show
  1. package/catalog/captures-plan.ts +91 -0
  2. package/catalog/catalog-entries.ts +89 -0
  3. package/catalog/catalog-port.ts +19 -0
  4. package/catalog/fixtures.tsx +845 -0
  5. package/catalog/frame.tsx +221 -0
  6. package/catalog/index.html +12 -0
  7. package/catalog/main.tsx +123 -0
  8. package/catalog/pages/ActionBar.tsx +138 -0
  9. package/catalog/pages/AppShell.tsx +95 -0
  10. package/catalog/pages/BottomSheet.tsx +90 -0
  11. package/catalog/pages/ChartTheme.tsx +93 -0
  12. package/catalog/pages/ColorField.tsx +44 -0
  13. package/catalog/pages/CommandPalette.tsx +93 -0
  14. package/catalog/pages/ConfirmDialog.tsx +42 -0
  15. package/catalog/pages/DataTable.tsx +208 -0
  16. package/catalog/pages/DateField.tsx +50 -0
  17. package/catalog/pages/DateRangeField.tsx +71 -0
  18. package/catalog/pages/Drawer.tsx +77 -0
  19. package/catalog/pages/FilterBar.tsx +87 -0
  20. package/catalog/pages/InfectedDownloadModal.tsx +39 -0
  21. package/catalog/pages/KeyValueList.tsx +113 -0
  22. package/catalog/pages/Menu.tsx +98 -0
  23. package/catalog/pages/MethodBadge.tsx +17 -0
  24. package/catalog/pages/MobileShell.tsx +180 -0
  25. package/catalog/pages/Modal.tsx +70 -0
  26. package/catalog/pages/PageHeader.tsx +84 -0
  27. package/catalog/pages/PageState.tsx +98 -0
  28. package/catalog/pages/RichSelect.tsx +116 -0
  29. package/catalog/pages/RoleBadge.tsx +24 -0
  30. package/catalog/pages/ScanBadge.tsx +29 -0
  31. package/catalog/pages/SceneDesktop.tsx +207 -0
  32. package/catalog/pages/SceneMobile.tsx +168 -0
  33. package/catalog/pages/Section.tsx +77 -0
  34. package/catalog/pages/SegmentedControl.tsx +64 -0
  35. package/catalog/pages/SeverityBadge.tsx +17 -0
  36. package/catalog/pages/Sparkline.tsx +52 -0
  37. package/catalog/pages/SplitView.tsx +93 -0
  38. package/catalog/pages/StatTile.tsx +75 -0
  39. package/catalog/pages/StatusBadge.tsx +33 -0
  40. package/catalog/pages/Surface.tsx +69 -0
  41. package/catalog/pages/SwipeDeck.tsx +143 -0
  42. package/catalog/pages/Toast.tsx +92 -0
  43. package/catalog/pages/ToolIcon.tsx +48 -0
  44. package/catalog/pages/Toolbar.tsx +73 -0
  45. package/catalog/pages/index.ts +79 -0
  46. package/catalog/parts.tsx +427 -0
  47. package/catalog/playwright.ci.config.ts +29 -0
  48. package/catalog/playwright.config.ts +36 -0
  49. package/catalog/specs/captures.spec.ts +67 -0
  50. package/catalog/specs/catalog-page.ts +42 -0
  51. package/catalog/specs/mobile-shell.spec.ts +122 -0
  52. package/catalog/specs/responsive.spec.ts +247 -0
  53. package/catalog/specs/write-capture-index.ts +72 -0
  54. package/catalog/tsconfig.json +12 -0
  55. package/catalog/vite.config.ts +32 -0
  56. package/dist/{CookieConsentSettings.component-3Z3YnI96.js → AbyssModal.component-DVIzX2ko.js} +2859 -2592
  57. package/dist/CookieConsentSettings.component-BdBT72qy.js +299 -0
  58. package/dist/components/business/InfectedDownloadModal/InfectedDownloadModal.d.ts +10 -0
  59. package/dist/components/business/index.d.ts +1 -0
  60. package/dist/components/data/DataTable/DataTable.d.ts +8 -0
  61. package/dist/components/data/DataTable/DataTableDesktop.d.ts +6 -0
  62. package/dist/components/data/DataTable/DataTableMobile.d.ts +6 -0
  63. package/dist/components/data/DataTable/data-table.types.d.ts +67 -0
  64. package/dist/components/data/DataTable/use-row-navigation.d.ts +17 -0
  65. package/dist/components/data/KeyValueList/KeyValueList.d.ts +13 -0
  66. package/dist/components/data/Sparkline/Sparkline.d.ts +15 -0
  67. package/dist/components/data/StatTile/StatTile.d.ts +21 -0
  68. package/dist/components/data/chart-theme.d.ts +7 -0
  69. package/dist/components/data/index.d.ts +5 -0
  70. package/dist/components/index.d.ts +8 -20
  71. package/dist/components/inputs/ColorField/ColorField.d.ts +15 -0
  72. package/dist/components/inputs/DateField/DateField.d.ts +14 -0
  73. package/dist/components/inputs/DateRangeField/DateRangeField.d.ts +24 -0
  74. package/dist/components/inputs/RichSelect/RichSelect.d.ts +31 -0
  75. package/dist/components/inputs/RichSelect/rich-select-size.d.ts +11 -0
  76. package/dist/components/inputs/SegmentedControl/SegmentedControl.d.ts +17 -0
  77. package/dist/components/inputs/date-localization.d.ts +17 -0
  78. package/dist/components/inputs/index.d.ts +5 -0
  79. package/dist/components/inputs/test-support/inputs-test-harness.d.ts +1 -0
  80. package/dist/components/layers/CommandPalette/CommandPalette.d.ts +28 -0
  81. package/dist/components/layers/CommandPalette/command-registry.d.ts +38 -0
  82. package/dist/components/layers/ConfirmDialog/ConfirmDialog.d.ts +24 -0
  83. package/dist/components/layers/Drawer/Drawer.d.ts +20 -0
  84. package/dist/components/layers/Menu/Menu.d.ts +31 -0
  85. package/dist/components/layers/Modal/Modal.d.ts +23 -0
  86. package/dist/components/layers/Toast/Toast.d.ts +34 -0
  87. package/dist/components/layers/index.d.ts +6 -0
  88. package/dist/components/layers/test-support/layers-test-harness.d.ts +22 -0
  89. package/dist/components/meaning/MethodBadge/MethodBadge.d.ts +6 -0
  90. package/dist/components/meaning/RoleBadge/RoleBadge.d.ts +7 -0
  91. package/dist/components/meaning/ScanBadge/ScanBadge.d.ts +8 -0
  92. package/dist/components/meaning/SeverityBadge/SeverityBadge.d.ts +6 -0
  93. package/dist/components/meaning/StatusBadge/StatusBadge.d.ts +15 -0
  94. package/dist/components/meaning/ToolIcon/ToolIcon.d.ts +10 -0
  95. package/dist/components/meaning/index.d.ts +6 -0
  96. package/dist/components/meaning/meaning-tone.d.ts +9 -0
  97. package/dist/components/meaning/test-support/meaning-test-harness.d.ts +17 -0
  98. package/dist/components/mobile/ActionBar/ActionBar.d.ts +24 -0
  99. package/dist/components/mobile/BottomSheet/BottomSheet.d.ts +14 -0
  100. package/dist/components/mobile/MobileShell/MobileShell.d.ts +30 -0
  101. package/dist/components/mobile/MobileShell/use-pull-to-refresh.d.ts +22 -0
  102. package/dist/components/mobile/SwipeDeck/SwipeDeck.d.ts +28 -0
  103. package/dist/components/mobile/index.d.ts +4 -0
  104. package/dist/components/mobile/mobile-layout.d.ts +17 -0
  105. package/dist/components/mobile/test-support/mobile-test-harness.d.ts +18 -0
  106. package/dist/components/states/PageState/PageState.d.ts +33 -0
  107. package/dist/components/states/index.d.ts +1 -0
  108. package/dist/components/structure/AppShell/AppShell.d.ts +11 -0
  109. package/dist/components/structure/AppShell/ShellNavigation.d.ts +27 -0
  110. package/dist/components/structure/AppShell/SpaceSwitcher.d.ts +13 -0
  111. package/dist/components/structure/AppShell/app-shell.types.d.ts +70 -0
  112. package/dist/components/structure/FilterBar/FilterBar.d.ts +21 -0
  113. package/dist/components/structure/PageHeader/PageHeader.d.ts +20 -0
  114. package/dist/components/structure/Section/Section.d.ts +14 -0
  115. package/dist/components/structure/SplitView/SplitView.d.ts +16 -0
  116. package/dist/components/structure/Surface/Surface.d.ts +25 -0
  117. package/dist/components/structure/Toolbar/Toolbar.d.ts +11 -0
  118. package/dist/components/structure/index.d.ts +8 -0
  119. package/dist/components/structure/structure-layout.d.ts +13 -0
  120. package/dist/components/structure/test-support/structure-test-harness.d.ts +53 -0
  121. package/dist/cookie-consent.d.ts +1 -1
  122. package/dist/cookie-consent.js +15 -14
  123. package/dist/design-theme-DGpfyrRa.js +9305 -0
  124. package/dist/fonts.css +8 -0
  125. package/dist/{components/Inputs/CloudImport → hooks}/cloud-picker.types.d.ts +1 -1
  126. package/dist/hooks/index.d.ts +3 -1
  127. package/dist/hooks/use-cloud-picker.hook.d.ts +1 -1
  128. package/dist/{components/CookieConsent → hooks}/use-cookie-consent.hook.d.ts +1 -1
  129. package/dist/hooks/use-rich-intl.hook.d.ts +306 -8
  130. package/dist/{index-CLRN5aZY.js → index-2dP8eJDC.js} +2 -2
  131. package/dist/{index-DAtUrR1w.js → index-5lZWuL9E.js} +2 -2
  132. package/dist/{index-BK9rDAfL.js → index-BCbBLGCq.js} +4 -4
  133. package/dist/{index-DIJAhLW1.js → index-BNXtGwVO.js} +3 -3
  134. package/dist/{index-mCtQ66kG.js → index-Bnd34zc3.js} +4 -4
  135. package/dist/{index-DEok2N8Y.js → index-BvnEqebm.js} +2 -2
  136. package/dist/{index-B01u4RDj.js → index-BzqtPPN5.js} +1 -1
  137. package/dist/{index-C5Uf33HY.js → index-C9rZao0s.js} +3 -3
  138. package/dist/{index-C2oiOgnk.js → index-CEkvsFyX.js} +3 -3
  139. package/dist/{index-BNwzLulO.js → index-CKRPvslz.js} +2 -2
  140. package/dist/{index-LlUhqvEy.js → index-CRAwLl2U.js} +2 -2
  141. package/dist/{index-D_Yt7xtB.js → index-CUmAInm9.js} +2 -2
  142. package/dist/{index-BwMujprD.js → index-ClyGJxMq.js} +2 -2
  143. package/dist/{index-acSfGhBy.js → index-CtgSTnzK.js} +2 -2
  144. package/dist/{index-BFmCESKZ.js → index-D-ULIp83.js} +2 -2
  145. package/dist/{index-BdiCSg8E.js → index-D3RFab1e.js} +3 -3
  146. package/dist/{index-DfMTxob_.js → index-DY-1nAn8.js} +2 -2
  147. package/dist/{index-BVI8irok.js → index-Dne75cXj.js} +2 -2
  148. package/dist/{index-GYxgqfEX.js → index-EOvj8bHf.js} +2 -2
  149. package/dist/{index-CLberJb6.js → index-G39MXErO.js} +4 -4
  150. package/dist/{index-Qhz-eUY5.js → index-s1jdo-Md.js} +2 -2
  151. package/dist/{index-B9H2t9pf.js → index-uN5dp-oL.js} +70721 -84284
  152. package/dist/index.d.ts +1 -1
  153. package/dist/index.js +9889 -316
  154. package/dist/{components → legacy/components}/CookieConsent/AbyssCookieConsentProvider.d.ts +1 -1
  155. package/dist/{components → legacy/components}/CookieConsent/CookieConsentBanner.component.d.ts +1 -1
  156. package/dist/legacy/components/CookieConsent/index.d.ts +9 -0
  157. package/dist/{components → legacy/components}/Inputs/CloudImport/CloudImport.component.d.ts +1 -1
  158. package/dist/{components → legacy/components}/Inputs/CloudImport/index.d.ts +0 -1
  159. package/dist/{components → legacy/components}/Inputs/DropZone/DropZone.component.d.ts +1 -1
  160. package/dist/{components → legacy/components}/Modals/ImportFromCloudModal/ImportFromCloudModal.component.d.ts +1 -1
  161. package/dist/legacy/components/Modals/UserSettingsModal/user-settings-modal.links.spec.d.ts +1 -0
  162. package/dist/legacy/components/PdfEditor/operations/apply.spec.d.ts +1 -0
  163. package/dist/legacy/components/PdfEditor/operations/compute-page-order.spec.d.ts +1 -0
  164. package/dist/legacy/components/PdfEditor/operations/extract.spec.d.ts +1 -0
  165. package/dist/legacy/components/PdfEditor/operations/redact.spec.d.ts +1 -0
  166. package/dist/legacy/components/PdfEditor/operations/reducer.spec.d.ts +1 -0
  167. package/dist/legacy/components/PdfEditor/operations/rotate-coords.spec.d.ts +1 -0
  168. package/dist/legacy/components/PdfEditor/signature/resolve-asset.spec.d.ts +1 -0
  169. package/dist/{components → legacy/components}/PdfEditor/types.d.ts +1 -1
  170. package/dist/legacy/components/QuotaGauge/bubble-placement.spec.d.ts +1 -0
  171. package/dist/legacy/components/QuotaGauge/gauge-highlight.spec.d.ts +1 -0
  172. package/dist/legacy/components/QuotaGauge/gauge-i18n-coverage.spec.d.ts +1 -0
  173. package/dist/legacy/components/QuotaGauge/gauge-segments.spec.d.ts +1 -0
  174. package/dist/legacy/components/QuotaOffer/AbyssQuotaOffer.component.spec.d.ts +1 -0
  175. package/dist/legacy/components/QuotaOffer/quota-offer-state.spec.d.ts +1 -0
  176. package/dist/legacy/components/QuotaOffer/quota-phrase-coverage.spec.d.ts +1 -0
  177. package/dist/{components → legacy/components}/QuotaReached/index.d.ts +0 -3
  178. package/dist/legacy/components/Support/SupportMessageLink.component.spec.d.ts +1 -0
  179. package/dist/legacy/components/Support/SupportTicketDetail.mobile-layout.spec.d.ts +1 -0
  180. package/dist/legacy/components/Support/SupportTicketList.week-preset.spec.d.ts +1 -0
  181. package/dist/legacy/components/Support/support-attachment.logic.spec.d.ts +1 -0
  182. package/dist/legacy/components/Support/support-author.logic.spec.d.ts +1 -0
  183. package/dist/legacy/components/Support/support-create-stepper.logic.spec.d.ts +1 -0
  184. package/dist/legacy/components/Support/support-message-input.logic.spec.d.ts +1 -0
  185. package/dist/legacy/components/Support/support-status-timeline.logic.spec.d.ts +1 -0
  186. package/dist/{components → legacy/components}/Support/types.d.ts +1 -1
  187. package/dist/legacy/components/Utils/AbyssFamilyMenuSection/AbyssFamilyMenuSection.spec.d.ts +1 -0
  188. package/dist/legacy/components/Utils/AbyssLayoutMenu/AbyssLayoutMenu.component.spec.d.ts +1 -0
  189. package/dist/legacy/components/Utils/AbyssLayoutNotifications/AbyssLayoutNotifications.component.spec.d.ts +1 -0
  190. package/dist/legacy/components/Utils/AbyssLayoutNotifications/AbyssNotifications.component.spec.d.ts +1 -0
  191. package/dist/{components → legacy/components}/Utils/ImportButton/ImportButton.component.d.ts +1 -1
  192. package/dist/legacy/components/aria-labels-i18n.spec.d.ts +1 -0
  193. package/dist/legacy/components/commons-labels-i18n.spec.d.ts +1 -0
  194. package/dist/legacy/components/index.d.ts +20 -0
  195. package/dist/legacy/components/theme-mode-colors.spec.d.ts +1 -0
  196. package/dist/legacy/fonts.css +7 -0
  197. package/dist/legacy/hooks/index.d.ts +1 -0
  198. package/dist/legacy/index.d.ts +4 -0
  199. package/dist/legacy/legacy-under-new-theme.spec.d.ts +1 -0
  200. package/dist/legacy/theme/augmentation.d.ts +84 -0
  201. package/dist/legacy/theme/components/buttons.d.ts +35 -0
  202. package/dist/legacy/theme/components/data-display.d.ts +4 -0
  203. package/dist/legacy/theme/components/inputs.d.ts +4 -0
  204. package/dist/legacy/theme/components/inputs.spec.d.ts +1 -0
  205. package/dist/legacy/theme/components/navigation.d.ts +4 -0
  206. package/dist/legacy/theme/components/surfaces.d.ts +4 -0
  207. package/dist/legacy/theme/disabled-contrast.spec.d.ts +1 -0
  208. package/dist/legacy/theme/index.d.ts +23 -0
  209. package/dist/legacy/theme/legacy-tokens.d.ts +3 -0
  210. package/dist/legacy/theme/new-components-under-legacy-theme.spec.d.ts +1 -0
  211. package/dist/legacy/utils/billing-colors.utils.d.ts +7 -0
  212. package/dist/legacy/utils/index.d.ts +3 -0
  213. package/dist/legacy.d.ts +2 -0
  214. package/dist/legacy.js +210 -0
  215. package/dist/theme/AbyssThemeProvider.d.ts +14 -0
  216. package/dist/theme/augmentation.d.ts +25 -75
  217. package/dist/theme/components/buttons.d.ts +2 -33
  218. package/dist/theme/components/data-display.d.ts +2 -2
  219. package/dist/theme/components/feedback.d.ts +4 -0
  220. package/dist/theme/components/inputs.d.ts +6 -2
  221. package/dist/theme/components/navigation.d.ts +2 -2
  222. package/dist/theme/components/shared.d.ts +22 -0
  223. package/dist/theme/components/surfaces.d.ts +2 -2
  224. package/dist/theme/create-abyss-theme.d.ts +10 -0
  225. package/dist/theme/create-abyss-theme.spec.d.ts +1 -0
  226. package/dist/theme/css-variables.d.ts +9 -0
  227. package/dist/theme/css-variables.spec.d.ts +1 -0
  228. package/dist/theme/design-theme.d.ts +8 -0
  229. package/dist/theme/fonts.spec.d.ts +1 -0
  230. package/dist/theme/index.d.ts +5 -22
  231. package/dist/theme/theme-switch.spec.d.ts +1 -0
  232. package/dist/theme/tokens/contrast.spec.d.ts +1 -0
  233. package/dist/theme/tokens/domain.d.ts +66 -0
  234. package/dist/theme/tokens/domain.spec.d.ts +1 -0
  235. package/dist/theme/tokens/index.d.ts +4 -0
  236. package/dist/theme/tokens/oklch.d.ts +27 -0
  237. package/dist/theme/tokens/oklch.spec.d.ts +1 -0
  238. package/dist/theme/tokens/primitives.d.ts +69 -0
  239. package/dist/theme/tokens/semantic.d.ts +12 -0
  240. package/dist/theme/tokens/semantic.spec.d.ts +1 -0
  241. package/dist/theme/tokens/soft.d.ts +2 -0
  242. package/dist/translations/en.d.ts +153 -0
  243. package/dist/translations/fr.d.ts +153 -0
  244. package/dist/{components/QuotaReached/billing-quota-error.d.ts → utils/billing-quota-error.utils.d.ts} +1 -1
  245. package/dist/utils/billing-quota-error.utils.spec.d.ts +1 -0
  246. package/dist/utils/billing.utils.d.ts +1 -7
  247. package/dist/{components/CookieConsent/reconcile.util.d.ts → utils/cookie-consent-reconcile.utils.d.ts} +1 -1
  248. package/dist/utils/cookie-consent-reconcile.utils.spec.d.ts +1 -0
  249. package/dist/utils/cookie-storage.utils.spec.d.ts +1 -0
  250. package/dist/utils/index.d.ts +5 -2
  251. package/dist/utils/privacy-link.constant.spec.d.ts +1 -0
  252. package/dist/utils/project-link-wording.utils.d.ts +1 -1
  253. package/package.json +22 -6
  254. package/test-results/catalog/.last-run.json +4 -0
  255. package/vite.config.ts +29 -1
  256. package/dist/components/CookieConsent/index.d.ts +0 -9
  257. /package/dist/components/{Cards/project-card-date.spec.d.ts → business/InfectedDownloadModal/InfectedDownloadModal.spec.d.ts} +0 -0
  258. /package/dist/components/{Charts/AbyssCashFlowChart/AbyssCashFlowChart.component.spec.d.ts → data/DataTable/DataTable.spec.d.ts} +0 -0
  259. /package/dist/components/{Charts/AbyssLineChart/AbyssLineChart.component.spec.d.ts → data/KeyValueList/KeyValueList.spec.d.ts} +0 -0
  260. /package/dist/components/{CompanySearchAutocomplete/CompanySearchAutocomplete.date.spec.d.ts → data/Sparkline/Sparkline.spec.d.ts} +0 -0
  261. /package/dist/components/{CompanySearchAutocomplete/CompanySearchAutocomplete.error.spec.d.ts → data/StatTile/StatTile.spec.d.ts} +0 -0
  262. /package/dist/components/{CookieConsent/cookie-storage.util.spec.d.ts → data/chart-theme.spec.d.ts} +0 -0
  263. /package/dist/components/{CookieConsent/privacy-link.spec.d.ts → inputs/ColorField/ColorField.spec.d.ts} +0 -0
  264. /package/dist/components/{CookieConsent/reconcile.util.spec.d.ts → inputs/DateField/DateField.spec.d.ts} +0 -0
  265. /package/dist/components/{Data/AbyssTable/AbyssTable.component.spec.d.ts → inputs/DateRangeField/DateRangeField.spec.d.ts} +0 -0
  266. /package/dist/components/{Data/AbyssTable/abyss-table.logic.spec.d.ts → inputs/RichSelect/RichSelect.spec.d.ts} +0 -0
  267. /package/dist/components/{Inputs/AbyssMarkdownEditor/AbyssMarkdownEditor.component.spec.d.ts → inputs/SegmentedControl/SegmentedControl.spec.d.ts} +0 -0
  268. /package/dist/components/{Inputs/AbyssNumberField/format.spec.d.ts → layers/CommandPalette/CommandPalette.spec.d.ts} +0 -0
  269. /package/dist/components/{Inputs/AbyssScopeSwitcher/scope-option.spec.d.ts → layers/ConfirmDialog/ConfirmDialog.spec.d.ts} +0 -0
  270. /package/dist/components/{Inputs/CloudImport/CloudImport.component.spec.d.ts → layers/Drawer/Drawer.spec.d.ts} +0 -0
  271. /package/dist/components/{Inputs/CloudImport/CloudImportFile.component.spec.d.ts → layers/Menu/Menu.spec.d.ts} +0 -0
  272. /package/dist/components/{Inputs/CloudImport/cloud-accept.spec.d.ts → layers/Modal/Modal.spec.d.ts} +0 -0
  273. /package/dist/components/{Inputs/DatePeriodPicker/DatePeriodPicker.granularity.spec.d.ts → layers/Toast/Toast.spec.d.ts} +0 -0
  274. /package/dist/components/{Inputs/DatePeriodPicker/DatePeriodPicker.segmented.spec.d.ts → meaning/MethodBadge/MethodBadge.spec.d.ts} +0 -0
  275. /package/dist/components/{Inputs/DatePeriodPicker/date-period-i18n.spec.d.ts → meaning/RoleBadge/RoleBadge.spec.d.ts} +0 -0
  276. /package/dist/components/{Inputs/DatePeriodPicker/date-period-picker.logic.spec.d.ts → meaning/ScanBadge/ScanBadge.spec.d.ts} +0 -0
  277. /package/dist/components/{Inputs/DatePeriodPicker/date-period-presets.spec.d.ts → meaning/SeverityBadge/SeverityBadge.spec.d.ts} +0 -0
  278. /package/dist/components/{Inputs/DropZone/DropZone.component.spec.d.ts → meaning/StatusBadge/StatusBadge.spec.d.ts} +0 -0
  279. /package/dist/components/{Layouts/AbyssBillingPlan/AbyssBillingPlan.component.spec.d.ts → meaning/ToolIcon/ToolIcon.spec.d.ts} +0 -0
  280. /package/dist/components/{Layouts/AbyssFamilyBanner/AbyssFamilyBanner.logic.spec.d.ts → mobile/ActionBar/ActionBar.spec.d.ts} +0 -0
  281. /package/dist/components/{Layouts/AbyssHeader/AbyssHeader.component.spec.d.ts → mobile/BottomSheet/BottomSheet.spec.d.ts} +0 -0
  282. /package/dist/components/{Modals/UserSettingsModal/user-settings-modal.family.spec.d.ts → mobile/MobileShell/MobileShell.spec.d.ts} +0 -0
  283. /package/dist/components/{Modals/UserSettingsModal/user-settings-modal.links.spec.d.ts → mobile/SwipeDeck/SwipeDeck.spec.d.ts} +0 -0
  284. /package/dist/components/{PdfEditor/operations/apply.spec.d.ts → states/PageState/PageState.spec.d.ts} +0 -0
  285. /package/dist/components/{PdfEditor/operations/compute-page-order.spec.d.ts → structure/AppShell/AppShell.spec.d.ts} +0 -0
  286. /package/dist/components/{PdfEditor/operations/extract.spec.d.ts → structure/FilterBar/FilterBar.spec.d.ts} +0 -0
  287. /package/dist/components/{PdfEditor/operations/redact.spec.d.ts → structure/PageHeader/PageHeader.spec.d.ts} +0 -0
  288. /package/dist/components/{PdfEditor/operations/reducer.spec.d.ts → structure/Section/Section.spec.d.ts} +0 -0
  289. /package/dist/components/{PdfEditor/operations/rotate-coords.spec.d.ts → structure/SplitView/SplitView.spec.d.ts} +0 -0
  290. /package/dist/components/{PdfEditor/signature/resolve-asset.spec.d.ts → structure/Surface/Surface.spec.d.ts} +0 -0
  291. /package/dist/components/{QuotaGauge/bubble-placement.spec.d.ts → structure/Toolbar/Toolbar.spec.d.ts} +0 -0
  292. /package/dist/{components/QuotaReached → hooks}/quota-dialog.store.d.ts +0 -0
  293. /package/dist/{components/QuotaGauge/gauge-highlight.spec.d.ts → hooks/use-rich-intl.hook.spec.d.ts} +0 -0
  294. /package/dist/{components → legacy/components}/Avatars/OrganizationAvatar/OrganizationAvatar.component.d.ts +0 -0
  295. /package/dist/{components → legacy/components}/Avatars/OrganizationAvatar/index.d.ts +0 -0
  296. /package/dist/{components → legacy/components}/Avatars/ProjectAvatar/ProjectAvatar.component.d.ts +0 -0
  297. /package/dist/{components → legacy/components}/Avatars/ProjectAvatar/index.d.ts +0 -0
  298. /package/dist/{components → legacy/components}/Avatars/UserAvatar/UserAvatar.component.d.ts +0 -0
  299. /package/dist/{components → legacy/components}/Avatars/UserAvatar/constant.d.ts +0 -0
  300. /package/dist/{components → legacy/components}/Avatars/UserAvatar/index.d.ts +0 -0
  301. /package/dist/{components → legacy/components}/Avatars/UserAvatarList/UserAvatarList.component.d.ts +0 -0
  302. /package/dist/{components → legacy/components}/Avatars/UserAvatarList/index.d.ts +0 -0
  303. /package/dist/{components → legacy/components}/Avatars/index.d.ts +0 -0
  304. /package/dist/{components → legacy/components}/Banking/AccountTransactions/AccountTransactionsRow.component.d.ts +0 -0
  305. /package/dist/{components → legacy/components}/Banking/AccountTransactions/index.d.ts +0 -0
  306. /package/dist/{components → legacy/components}/Banking/Inputs/SelectAccountTransactionCategory/SelectAccountTransactionCategory.component.d.ts +0 -0
  307. /package/dist/{components → legacy/components}/Banking/Inputs/SelectAccountTransactionCategory/index.d.ts +0 -0
  308. /package/dist/{components → legacy/components}/Banking/Inputs/index.d.ts +0 -0
  309. /package/dist/{components → legacy/components}/Banking/index.d.ts +0 -0
  310. /package/dist/{components → legacy/components}/Cards/InternalProjectCard/InternalProjectCard.component.d.ts +0 -0
  311. /package/dist/{components → legacy/components}/Cards/InternalProjectCard/index.d.ts +0 -0
  312. /package/dist/{components → legacy/components}/Cards/ProjectCard/ProjectCard.component.d.ts +0 -0
  313. /package/dist/{components → legacy/components}/Cards/ProjectCard/index.d.ts +0 -0
  314. /package/dist/{components → legacy/components}/Cards/index.d.ts +0 -0
  315. /package/dist/{components/QuotaGauge/gauge-i18n-coverage.spec.d.ts → legacy/components/Cards/project-card-date.spec.d.ts} +0 -0
  316. /package/dist/{components → legacy/components}/Charts/AbyssBarChart/AbyssBarChart.component.d.ts +0 -0
  317. /package/dist/{components → legacy/components}/Charts/AbyssBarChart/index.d.ts +0 -0
  318. /package/dist/{components → legacy/components}/Charts/AbyssCashFlowChart/AbyssCashFlowChart.component.d.ts +0 -0
  319. /package/dist/{components/QuotaGauge/gauge-segments.spec.d.ts → legacy/components/Charts/AbyssCashFlowChart/AbyssCashFlowChart.component.spec.d.ts} +0 -0
  320. /package/dist/{components → legacy/components}/Charts/AbyssCashFlowChart/index.d.ts +0 -0
  321. /package/dist/{components → legacy/components}/Charts/AbyssLineChart/AbyssLineChart.component.d.ts +0 -0
  322. /package/dist/{components/QuotaOffer/AbyssQuotaOffer.component.spec.d.ts → legacy/components/Charts/AbyssLineChart/AbyssLineChart.component.spec.d.ts} +0 -0
  323. /package/dist/{components → legacy/components}/Charts/AbyssLineChart/index.d.ts +0 -0
  324. /package/dist/{components → legacy/components}/Charts/AbyssPieChart/AbyssPieChart.component.d.ts +0 -0
  325. /package/dist/{components → legacy/components}/Charts/AbyssPieChart/index.d.ts +0 -0
  326. /package/dist/{components → legacy/components}/Charts/index.d.ts +0 -0
  327. /package/dist/{components → legacy/components}/Charts/useNivoTheme.d.ts +0 -0
  328. /package/dist/{components → legacy/components}/Chips/ApplicationSentinelTypeChip/ApplicationSentinelTypeChip.component.d.ts +0 -0
  329. /package/dist/{components → legacy/components}/Chips/ApplicationSentinelTypeChip/index.d.ts +0 -0
  330. /package/dist/{components → legacy/components}/Chips/ApplicationWebhookTypeChip/ApplicationWebhookTypeChip.component.d.ts +0 -0
  331. /package/dist/{components → legacy/components}/Chips/ApplicationWebhookTypeChip/index.d.ts +0 -0
  332. /package/dist/{components → legacy/components}/Chips/LogTypeChip/LogTypeChip.component.d.ts +0 -0
  333. /package/dist/{components → legacy/components}/Chips/LogTypeChip/index.d.ts +0 -0
  334. /package/dist/{components → legacy/components}/Chips/ProjectStatusChip/ProjectStatusChip.component.d.ts +0 -0
  335. /package/dist/{components → legacy/components}/Chips/ProjectStatusChip/index.d.ts +0 -0
  336. /package/dist/{components → legacy/components}/Chips/WebhookResponseCodeChip/WebhookResponseCodeChip.component.d.ts +0 -0
  337. /package/dist/{components → legacy/components}/Chips/WebhookResponseCodeChip/index.d.ts +0 -0
  338. /package/dist/{components → legacy/components}/Chips/WebhookTypeChip/WebhookTypeChip.component.d.ts +0 -0
  339. /package/dist/{components → legacy/components}/Chips/WebhookTypeChip/index.d.ts +0 -0
  340. /package/dist/{components → legacy/components}/Chips/index.d.ts +0 -0
  341. /package/dist/{components → legacy/components}/CommandPalette/AbyssCommandPalette.d.ts +0 -0
  342. /package/dist/{components → legacy/components}/CommandPalette/index.d.ts +0 -0
  343. /package/dist/{components → legacy/components}/CommandPalette/types.d.ts +0 -0
  344. /package/dist/{components → legacy/components}/CommandPalette/useCommandPaletteHotkey.d.ts +0 -0
  345. /package/dist/{components → legacy/components}/CompanySearchAutocomplete/CompanySearchAutocomplete.d.ts +0 -0
  346. /package/dist/{components/QuotaOffer/quota-offer-state.spec.d.ts → legacy/components/CompanySearchAutocomplete/CompanySearchAutocomplete.date.spec.d.ts} +0 -0
  347. /package/dist/{components/QuotaOffer/quota-phrase-coverage.spec.d.ts → legacy/components/CompanySearchAutocomplete/CompanySearchAutocomplete.error.spec.d.ts} +0 -0
  348. /package/dist/{components → legacy/components}/CompanySearchAutocomplete/index.d.ts +0 -0
  349. /package/dist/{components → legacy/components}/CookieConsent/CookieConsentSettings.component.d.ts +0 -0
  350. /package/dist/{components → legacy/components}/Data/AbyssTable/AbyssTable.component.d.ts +0 -0
  351. /package/dist/{components/QuotaReached/billing-quota-error.spec.d.ts → legacy/components/Data/AbyssTable/AbyssTable.component.spec.d.ts} +0 -0
  352. /package/dist/{components → legacy/components}/Data/AbyssTable/AbyssTableCards.component.d.ts +0 -0
  353. /package/dist/{components → legacy/components}/Data/AbyssTable/abyss-table.logic.d.ts +0 -0
  354. /package/dist/{components/Support/SupportMessageLink.component.spec.d.ts → legacy/components/Data/AbyssTable/abyss-table.logic.spec.d.ts} +0 -0
  355. /package/dist/{components → legacy/components}/Data/AbyssTable/index.d.ts +0 -0
  356. /package/dist/{components → legacy/components}/Data/index.d.ts +0 -0
  357. /package/dist/{components → legacy/components}/InfoBox/InfoBox.component.d.ts +0 -0
  358. /package/dist/{components → legacy/components}/InfoBox/index.d.ts +0 -0
  359. /package/dist/{components → legacy/components}/Inputs/AbyssDatePicker/AbyssDatePicker.component.d.ts +0 -0
  360. /package/dist/{components → legacy/components}/Inputs/AbyssDatePicker/index.d.ts +0 -0
  361. /package/dist/{components → legacy/components}/Inputs/AbyssDateTimePicker/AbyssDateTimePicker.component.d.ts +0 -0
  362. /package/dist/{components → legacy/components}/Inputs/AbyssDateTimePicker/index.d.ts +0 -0
  363. /package/dist/{components → legacy/components}/Inputs/AbyssMarkdownEditor/AbyssMarkdownEditor.component.d.ts +0 -0
  364. /package/dist/{components/Support/SupportTicketDetail.mobile-layout.spec.d.ts → legacy/components/Inputs/AbyssMarkdownEditor/AbyssMarkdownEditor.component.spec.d.ts} +0 -0
  365. /package/dist/{components → legacy/components}/Inputs/AbyssMarkdownEditor/crepe-theme.d.ts +0 -0
  366. /package/dist/{components → legacy/components}/Inputs/AbyssMarkdownEditor/index.d.ts +0 -0
  367. /package/dist/{components → legacy/components}/Inputs/AbyssNumberField/AbyssNumberField.component.d.ts +0 -0
  368. /package/dist/{components → legacy/components}/Inputs/AbyssNumberField/format.d.ts +0 -0
  369. /package/dist/{components/Support/SupportTicketList.week-preset.spec.d.ts → legacy/components/Inputs/AbyssNumberField/format.spec.d.ts} +0 -0
  370. /package/dist/{components → legacy/components}/Inputs/AbyssNumberField/index.d.ts +0 -0
  371. /package/dist/{components → legacy/components}/Inputs/AbyssScopeSwitcher/AbyssScopeSwitcher.component.d.ts +0 -0
  372. /package/dist/{components → legacy/components}/Inputs/AbyssScopeSwitcher/index.d.ts +0 -0
  373. /package/dist/{components/Support/support-attachment.logic.spec.d.ts → legacy/components/Inputs/AbyssScopeSwitcher/scope-option.spec.d.ts} +0 -0
  374. /package/dist/{components → legacy/components}/Inputs/AbyssSelectOrganization/AbyssSelectOrganization.component.d.ts +0 -0
  375. /package/dist/{components → legacy/components}/Inputs/AbyssSelectOrganization/index.d.ts +0 -0
  376. /package/dist/{components → legacy/components}/Inputs/AbyssSelectProject/AbyssSelectProject.component.d.ts +0 -0
  377. /package/dist/{components → legacy/components}/Inputs/AbyssSelectProject/index.d.ts +0 -0
  378. /package/dist/{components/Support/support-author.logic.spec.d.ts → legacy/components/Inputs/CloudImport/CloudImport.component.spec.d.ts} +0 -0
  379. /package/dist/{components → legacy/components}/Inputs/CloudImport/CloudImportFile.component.d.ts +0 -0
  380. /package/dist/{components/Support/support-create-stepper.logic.spec.d.ts → legacy/components/Inputs/CloudImport/CloudImportFile.component.spec.d.ts} +0 -0
  381. /package/dist/{components → legacy/components}/Inputs/CloudImport/CloudImportFolder.component.d.ts +0 -0
  382. /package/dist/{components → legacy/components}/Inputs/CloudImport/cloud-accept.d.ts +0 -0
  383. /package/dist/{components/Support/support-message-input.logic.spec.d.ts → legacy/components/Inputs/CloudImport/cloud-accept.spec.d.ts} +0 -0
  384. /package/dist/{components → legacy/components}/Inputs/ColorPalette/ColorPalette.component.d.ts +0 -0
  385. /package/dist/{components → legacy/components}/Inputs/ColorPalette/index.d.ts +0 -0
  386. /package/dist/{components → legacy/components}/Inputs/ColorPicker/ColorPicker.component.d.ts +0 -0
  387. /package/dist/{components → legacy/components}/Inputs/ColorPicker/index.d.ts +0 -0
  388. /package/dist/{components → legacy/components}/Inputs/ContextSelector/ContextSelector.component.d.ts +0 -0
  389. /package/dist/{components → legacy/components}/Inputs/ContextSelector/index.d.ts +0 -0
  390. /package/dist/{components → legacy/components}/Inputs/DatePeriodPicker/DatePeriodPicker.component.d.ts +0 -0
  391. /package/dist/{components/Support/support-status-timeline.logic.spec.d.ts → legacy/components/Inputs/DatePeriodPicker/DatePeriodPicker.granularity.spec.d.ts} +0 -0
  392. /package/dist/{components/Utils/AbyssFamilyMenuSection/AbyssFamilyMenuSection.spec.d.ts → legacy/components/Inputs/DatePeriodPicker/DatePeriodPicker.segmented.spec.d.ts} +0 -0
  393. /package/dist/{components/Utils/AbyssLayoutMenu/AbyssLayoutMenu.component.spec.d.ts → legacy/components/Inputs/DatePeriodPicker/date-period-i18n.spec.d.ts} +0 -0
  394. /package/dist/{components → legacy/components}/Inputs/DatePeriodPicker/date-period-picker.logic.d.ts +0 -0
  395. /package/dist/{components/Utils/AbyssLayoutNotifications/AbyssLayoutNotifications.component.spec.d.ts → legacy/components/Inputs/DatePeriodPicker/date-period-picker.logic.spec.d.ts} +0 -0
  396. /package/dist/{components/Utils/AbyssLayoutNotifications/AbyssNotifications.component.spec.d.ts → legacy/components/Inputs/DatePeriodPicker/date-period-presets.spec.d.ts} +0 -0
  397. /package/dist/{components → legacy/components}/Inputs/DatePeriodPicker/date-period-presets.util.d.ts +0 -0
  398. /package/dist/{components → legacy/components}/Inputs/DatePeriodPicker/index.d.ts +0 -0
  399. /package/dist/{components/aria-labels-i18n.spec.d.ts → legacy/components/Inputs/DropZone/DropZone.component.spec.d.ts} +0 -0
  400. /package/dist/{components → legacy/components}/Inputs/DropZone/index.d.ts +0 -0
  401. /package/dist/{components → legacy/components}/Inputs/LanguageFlagLabel/LanguageFlagLabel.component.d.ts +0 -0
  402. /package/dist/{components → legacy/components}/Inputs/LanguageFlagLabel/index.d.ts +0 -0
  403. /package/dist/{components → legacy/components}/Inputs/LanguageFlagLabel/language-flags.d.ts +0 -0
  404. /package/dist/{components → legacy/components}/Inputs/PasswordInput/PasswordInput.component.d.ts +0 -0
  405. /package/dist/{components → legacy/components}/Inputs/PasswordInput/index.d.ts +0 -0
  406. /package/dist/{components → legacy/components}/Inputs/ProjectCategoryBadge/ProjectCategoryBadge.component.d.ts +0 -0
  407. /package/dist/{components → legacy/components}/Inputs/ProjectCategoryBadge/index.d.ts +0 -0
  408. /package/dist/{components → legacy/components}/Inputs/ProjectLinkSelector/ProjectLinkSelector.component.d.ts +0 -0
  409. /package/dist/{components → legacy/components}/Inputs/ProjectLinkSelector/index.d.ts +0 -0
  410. /package/dist/{components → legacy/components}/Inputs/ProjectTagChip/ProjectTagChip.component.d.ts +0 -0
  411. /package/dist/{components → legacy/components}/Inputs/ProjectTagChip/index.d.ts +0 -0
  412. /package/dist/{components → legacy/components}/Inputs/index.d.ts +0 -0
  413. /package/dist/{components → legacy/components}/Invitations/AbyssPendingInvitations.component.d.ts +0 -0
  414. /package/dist/{components → legacy/components}/Invitations/index.d.ts +0 -0
  415. /package/dist/{components → legacy/components}/Layouts/AbyssBillingPlan/AbyssBillingPlan.component.d.ts +0 -0
  416. /package/dist/{components/commons-labels-i18n.spec.d.ts → legacy/components/Layouts/AbyssBillingPlan/AbyssBillingPlan.component.spec.d.ts} +0 -0
  417. /package/dist/{components → legacy/components}/Layouts/AbyssBillingPlan/index.d.ts +0 -0
  418. /package/dist/{components → legacy/components}/Layouts/AbyssDashboardLayout/AbyssDashboardLayout.component.d.ts +0 -0
  419. /package/dist/{components → legacy/components}/Layouts/AbyssDashboardLayout/index.d.ts +0 -0
  420. /package/dist/{components → legacy/components}/Layouts/AbyssFamilyBanner/AbyssFamilyBanner.component.d.ts +0 -0
  421. /package/dist/{components/theme-mode-colors.spec.d.ts → legacy/components/Layouts/AbyssFamilyBanner/AbyssFamilyBanner.logic.spec.d.ts} +0 -0
  422. /package/dist/{components → legacy/components}/Layouts/AbyssFamilyBanner/index.d.ts +0 -0
  423. /package/dist/{components → legacy/components}/Layouts/AbyssHeader/AbyssHeader.component.d.ts +0 -0
  424. /package/dist/{theme/components/inputs.spec.d.ts → legacy/components/Layouts/AbyssHeader/AbyssHeader.component.spec.d.ts} +0 -0
  425. /package/dist/{components → legacy/components}/Layouts/AbyssHeader/index.d.ts +0 -0
  426. /package/dist/{components → legacy/components}/Layouts/AbyssLayoutProvider/AbyssLayoutProvider.component.d.ts +0 -0
  427. /package/dist/{components → legacy/components}/Layouts/AbyssLayoutProvider/abyss-layout.store.d.ts +0 -0
  428. /package/dist/{components → legacy/components}/Layouts/AbyssLayoutProvider/index.d.ts +0 -0
  429. /package/dist/{components → legacy/components}/Layouts/AbyssLoadingScreen/AbyssLoadingScreen.component.d.ts +0 -0
  430. /package/dist/{components → legacy/components}/Layouts/AbyssLoadingScreen/index.d.ts +0 -0
  431. /package/dist/{components → legacy/components}/Layouts/AbyssSearchBar/AbyssSearchBar.component.d.ts +0 -0
  432. /package/dist/{components → legacy/components}/Layouts/AbyssSearchBar/index.d.ts +0 -0
  433. /package/dist/{components → legacy/components}/Layouts/AbyssSidebar/AbyssSidebar.component.d.ts +0 -0
  434. /package/dist/{components → legacy/components}/Layouts/AbyssSidebar/AbyssSidebarItem.component.d.ts +0 -0
  435. /package/dist/{components → legacy/components}/Layouts/AbyssSidebar/index.d.ts +0 -0
  436. /package/dist/{components → legacy/components}/Layouts/AbyssThemeToggle/AbyssThemeToggle.component.d.ts +0 -0
  437. /package/dist/{components → legacy/components}/Layouts/AbyssThemeToggle/index.d.ts +0 -0
  438. /package/dist/{components → legacy/components}/Layouts/DashboardLayout/DashboardLayout.layout.d.ts +0 -0
  439. /package/dist/{components → legacy/components}/Layouts/DashboardLayout/DashboardLayoutHeader.layout.d.ts +0 -0
  440. /package/dist/{components → legacy/components}/Layouts/DashboardLayout/index.d.ts +0 -0
  441. /package/dist/{components → legacy/components}/Layouts/LoadingLayout/LoadingLayout.layout.d.ts +0 -0
  442. /package/dist/{components → legacy/components}/Layouts/LoadingLayout/index.d.ts +0 -0
  443. /package/dist/{components → legacy/components}/Layouts/MainLayout/MainLayout.layout.d.ts +0 -0
  444. /package/dist/{components → legacy/components}/Layouts/MainLayout/index.d.ts +0 -0
  445. /package/dist/{components → legacy/components}/Layouts/index.d.ts +0 -0
  446. /package/dist/{components → legacy/components}/Modals/AbyssModal/AbyssModal.component.d.ts +0 -0
  447. /package/dist/{components → legacy/components}/Modals/AbyssModal/index.d.ts +0 -0
  448. /package/dist/{components → legacy/components}/Modals/ConfirmModal/ConfirmModal.d.ts +0 -0
  449. /package/dist/{components → legacy/components}/Modals/ConfirmModal/index.d.ts +0 -0
  450. /package/dist/{components → legacy/components}/Modals/ImportFromCloudModal/index.d.ts +0 -0
  451. /package/dist/{components → legacy/components}/Modals/QRCodeModal/QRCodeModal.component.d.ts +0 -0
  452. /package/dist/{components → legacy/components}/Modals/QRCodeModal/index.d.ts +0 -0
  453. /package/dist/{components → legacy/components}/Modals/UserSettingsModal/UserSettings.compat.d.ts +0 -0
  454. /package/dist/{components → legacy/components}/Modals/UserSettingsModal/UserSettingsModal.component.d.ts +0 -0
  455. /package/dist/{components → legacy/components}/Modals/UserSettingsModal/index.d.ts +0 -0
  456. /package/dist/{theme/disabled-contrast.spec.d.ts → legacy/components/Modals/UserSettingsModal/user-settings-modal.family.spec.d.ts} +0 -0
  457. /package/dist/{components → legacy/components}/Modals/index.d.ts +0 -0
  458. /package/dist/{components → legacy/components}/PdfEditor/PdfEditor.d.ts +0 -0
  459. /package/dist/{components → legacy/components}/PdfEditor/hooks/use-acro-form-fields.d.ts +0 -0
  460. /package/dist/{components → legacy/components}/PdfEditor/hooks/use-export.d.ts +0 -0
  461. /package/dist/{components → legacy/components}/PdfEditor/hooks/use-page-order.d.ts +0 -0
  462. /package/dist/{components → legacy/components}/PdfEditor/hooks/use-pdf-document.d.ts +0 -0
  463. /package/dist/{components → legacy/components}/PdfEditor/hooks/use-undo-redo.d.ts +0 -0
  464. /package/dist/{components → legacy/components}/PdfEditor/hooks/use-uploaded-docs.d.ts +0 -0
  465. /package/dist/{components → legacy/components}/PdfEditor/index.d.ts +0 -0
  466. /package/dist/{components → legacy/components}/PdfEditor/operations/actions.d.ts +0 -0
  467. /package/dist/{components → legacy/components}/PdfEditor/operations/apply.d.ts +0 -0
  468. /package/dist/{components → legacy/components}/PdfEditor/operations/compute-page-order.d.ts +0 -0
  469. /package/dist/{components → legacy/components}/PdfEditor/operations/extract.d.ts +0 -0
  470. /package/dist/{components → legacy/components}/PdfEditor/operations/pdf-data-url.d.ts +0 -0
  471. /package/dist/{components → legacy/components}/PdfEditor/operations/rasterize.d.ts +0 -0
  472. /package/dist/{components → legacy/components}/PdfEditor/operations/redact.d.ts +0 -0
  473. /package/dist/{components → legacy/components}/PdfEditor/operations/reducer.d.ts +0 -0
  474. /package/dist/{components → legacy/components}/PdfEditor/operations/rotate-coords.d.ts +0 -0
  475. /package/dist/{components → legacy/components}/PdfEditor/signature/SignatureDrawCanvas.d.ts +0 -0
  476. /package/dist/{components → legacy/components}/PdfEditor/signature/SignaturePicker.d.ts +0 -0
  477. /package/dist/{components → legacy/components}/PdfEditor/signature/SignatureSaveButton.d.ts +0 -0
  478. /package/dist/{components → legacy/components}/PdfEditor/signature/SignatureSavedList.d.ts +0 -0
  479. /package/dist/{components → legacy/components}/PdfEditor/signature/SignatureUploadDropzone.d.ts +0 -0
  480. /package/dist/{components → legacy/components}/PdfEditor/signature/resolve-asset.d.ts +0 -0
  481. /package/dist/{components → legacy/components}/PdfEditor/tools/DrawTool.d.ts +0 -0
  482. /package/dist/{components → legacy/components}/PdfEditor/tools/FillFieldsTool.d.ts +0 -0
  483. /package/dist/{components → legacy/components}/PdfEditor/tools/RedactTool.d.ts +0 -0
  484. /package/dist/{components → legacy/components}/PdfEditor/tools/ShapeTool.d.ts +0 -0
  485. /package/dist/{components → legacy/components}/PdfEditor/tools/SignatureTool.d.ts +0 -0
  486. /package/dist/{components → legacy/components}/PdfEditor/tools/TextTool.d.ts +0 -0
  487. /package/dist/{components → legacy/components}/PdfEditor/tools/Toolbar.d.ts +0 -0
  488. /package/dist/{components → legacy/components}/PdfEditor/tools/tool-options-ui.d.ts +0 -0
  489. /package/dist/{components → legacy/components}/PdfEditor/viewer/InsertPagesButton.d.ts +0 -0
  490. /package/dist/{components → legacy/components}/PdfEditor/viewer/InsertPagesDialog.d.ts +0 -0
  491. /package/dist/{components → legacy/components}/PdfEditor/viewer/PageOverlay.d.ts +0 -0
  492. /package/dist/{components → legacy/components}/PdfEditor/viewer/PageSidebar.d.ts +0 -0
  493. /package/dist/{components → legacy/components}/PdfEditor/viewer/PageThumbnail.d.ts +0 -0
  494. /package/dist/{components → legacy/components}/PdfEditor/viewer/PdfCanvas.d.ts +0 -0
  495. /package/dist/{components → legacy/components}/PdfEditor/viewer/ViewerControls.d.ts +0 -0
  496. /package/dist/{components → legacy/components}/QuotaGauge/AbyssQuotaGauge.component.d.ts +0 -0
  497. /package/dist/{components → legacy/components}/QuotaGauge/bubble-placement.d.ts +0 -0
  498. /package/dist/{components → legacy/components}/QuotaGauge/gauge-segments.d.ts +0 -0
  499. /package/dist/{components → legacy/components}/QuotaGauge/index.d.ts +0 -0
  500. /package/dist/{components → legacy/components}/QuotaOffer/AbyssQuotaOffer.component.d.ts +0 -0
  501. /package/dist/{components → legacy/components}/QuotaOffer/index.d.ts +0 -0
  502. /package/dist/{components → legacy/components}/QuotaOffer/quota-offer-state.d.ts +0 -0
  503. /package/dist/{components → legacy/components}/QuotaReached/QuotaReachedDialog.component.d.ts +0 -0
  504. /package/dist/{components → legacy/components}/QuotaReached/quota-service-meta.d.ts +0 -0
  505. /package/dist/{components → legacy/components}/Spotlight/InternalProjectCard/InternalProjectCard.component.d.ts +0 -0
  506. /package/dist/{components → legacy/components}/Spotlight/InternalProjectCard/index.d.ts +0 -0
  507. /package/dist/{components → legacy/components}/Spotlight/ProjectCard/ProjectCard.component.d.ts +0 -0
  508. /package/dist/{components → legacy/components}/Spotlight/ProjectCard/index.d.ts +0 -0
  509. /package/dist/{components → legacy/components}/Spotlight/ProjectCategoryBadge/ProjectCategoryBadge.component.d.ts +0 -0
  510. /package/dist/{components → legacy/components}/Spotlight/ProjectCategoryBadge/index.d.ts +0 -0
  511. /package/dist/{components → legacy/components}/Spotlight/ProjectLinkSelector/ProjectLinkSelector.component.d.ts +0 -0
  512. /package/dist/{components → legacy/components}/Spotlight/ProjectLinkSelector/index.d.ts +0 -0
  513. /package/dist/{components → legacy/components}/Spotlight/ProjectTagChip/ProjectTagChip.component.d.ts +0 -0
  514. /package/dist/{components → legacy/components}/Spotlight/ProjectTagChip/index.d.ts +0 -0
  515. /package/dist/{components → legacy/components}/Spotlight/index.d.ts +0 -0
  516. /package/dist/{components → legacy/components}/Support/AbyssServiceSelect.component.d.ts +0 -0
  517. /package/dist/{components → legacy/components}/Support/SupportActionButtons.component.d.ts +0 -0
  518. /package/dist/{components → legacy/components}/Support/SupportActivityLog.component.d.ts +0 -0
  519. /package/dist/{components → legacy/components}/Support/SupportAttachmentsPanel.component.d.ts +0 -0
  520. /package/dist/{components → legacy/components}/Support/SupportCategoryChip.component.d.ts +0 -0
  521. /package/dist/{components → legacy/components}/Support/SupportCategoryGroupCards.component.d.ts +0 -0
  522. /package/dist/{components → legacy/components}/Support/SupportCategorySelect.component.d.ts +0 -0
  523. /package/dist/{components → legacy/components}/Support/SupportMessageInput.component.d.ts +0 -0
  524. /package/dist/{components → legacy/components}/Support/SupportMessageThread.component.d.ts +0 -0
  525. /package/dist/{components → legacy/components}/Support/SupportPriorityChip.component.d.ts +0 -0
  526. /package/dist/{components → legacy/components}/Support/SupportSidebar.component.d.ts +0 -0
  527. /package/dist/{components → legacy/components}/Support/SupportStatusBadge.component.d.ts +0 -0
  528. /package/dist/{components → legacy/components}/Support/SupportStatusTimeline.component.d.ts +0 -0
  529. /package/dist/{components → legacy/components}/Support/SupportTicketCreateForm.component.d.ts +0 -0
  530. /package/dist/{components → legacy/components}/Support/SupportTicketCreateStepper.component.d.ts +0 -0
  531. /package/dist/{components → legacy/components}/Support/SupportTicketDetail.component.d.ts +0 -0
  532. /package/dist/{components → legacy/components}/Support/SupportTicketList.component.d.ts +0 -0
  533. /package/dist/{components → legacy/components}/Support/SupportTopBar.component.d.ts +0 -0
  534. /package/dist/{components → legacy/components}/Support/index.d.ts +0 -0
  535. /package/dist/{components → legacy/components}/Support/support-attachment.logic.d.ts +0 -0
  536. /package/dist/{components → legacy/components}/Support/support-author.logic.d.ts +0 -0
  537. /package/dist/{components → legacy/components}/Support/support-create-stepper.logic.d.ts +0 -0
  538. /package/dist/{components → legacy/components}/Support/support-message-input.logic.d.ts +0 -0
  539. /package/dist/{components → legacy/components}/Support/support-status-timeline.logic.d.ts +0 -0
  540. /package/dist/{components → legacy/components}/Utils/AbyssBackground/AbyssBackground.component.d.ts +0 -0
  541. /package/dist/{components → legacy/components}/Utils/AbyssDrawer/AbyssDrawer.component.d.ts +0 -0
  542. /package/dist/{components → legacy/components}/Utils/AbyssDrawer/index.d.ts +0 -0
  543. /package/dist/{components → legacy/components}/Utils/AbyssErrorPage/AbyssErrorBoundary.component.d.ts +0 -0
  544. /package/dist/{components → legacy/components}/Utils/AbyssErrorPage/AbyssErrorPage.component.d.ts +0 -0
  545. /package/dist/{components → legacy/components}/Utils/AbyssErrorPage/index.d.ts +0 -0
  546. /package/dist/{components → legacy/components}/Utils/AbyssFamilyMenuSection/AbyssFamilyMenuSection.d.ts +0 -0
  547. /package/dist/{components → legacy/components}/Utils/AbyssFamilyMenuSection/index.d.ts +0 -0
  548. /package/dist/{components → legacy/components}/Utils/AbyssHeaderTitle/AbyssHeaderTitle.component.d.ts +0 -0
  549. /package/dist/{components → legacy/components}/Utils/AbyssHeaderTitle/index.d.ts +0 -0
  550. /package/dist/{components → legacy/components}/Utils/AbyssLayoutMenu/AbyssLayoutMenu.component.d.ts +0 -0
  551. /package/dist/{components → legacy/components}/Utils/AbyssLayoutMenu/AbyssMenuItem.component.d.ts +0 -0
  552. /package/dist/{components → legacy/components}/Utils/AbyssLayoutMenu/index.d.ts +0 -0
  553. /package/dist/{components → legacy/components}/Utils/AbyssLayoutNotifications/AbyssLayoutNotifications.component.d.ts +0 -0
  554. /package/dist/{components → legacy/components}/Utils/AbyssLayoutNotifications/AbyssNotifications.component.d.ts +0 -0
  555. /package/dist/{components → legacy/components}/Utils/AbyssLayoutNotifications/index.d.ts +0 -0
  556. /package/dist/{components → legacy/components}/Utils/ImportButton/index.d.ts +0 -0
  557. /package/dist/{components → legacy/components}/Utils/Toast/AbyssToast.component.d.ts +0 -0
  558. /package/dist/{components → legacy/components}/Utils/Toast/index.d.ts +0 -0
  559. /package/dist/{components → legacy/components}/Utils/WaterParticles/WaterParticles.component.d.ts +0 -0
  560. /package/dist/{components → legacy/components}/Utils/WaterParticles/index.d.ts +0 -0
  561. /package/dist/{components → legacy/components}/Utils/index.d.ts +0 -0
  562. /package/dist/{hooks → legacy/hooks}/confirm-modal/confirm-modal.context.d.ts +0 -0
  563. /package/dist/{hooks → legacy/hooks}/confirm-modal/index.d.ts +0 -0
  564. /package/dist/{theme → legacy/theme}/components/index.d.ts +0 -0
  565. /package/dist/{theme → legacy/theme}/create-theme.d.ts +0 -0
  566. /package/dist/{theme → legacy/theme}/palettes/common.d.ts +0 -0
  567. /package/dist/{theme → legacy/theme}/palettes/dark.d.ts +0 -0
  568. /package/dist/{theme → legacy/theme}/palettes/light.d.ts +0 -0
  569. /package/dist/{theme → legacy/theme}/tokens/animations.d.ts +0 -0
  570. /package/dist/{theme → legacy/theme}/tokens/borders.d.ts +0 -0
  571. /package/dist/{theme → legacy/theme}/tokens/colors.d.ts +0 -0
  572. /package/dist/{theme → legacy/theme}/tokens/shadows.d.ts +0 -0
  573. /package/dist/{theme → legacy/theme}/tokens/transitions.d.ts +0 -0
  574. /package/dist/{theme → legacy/theme}/tokens/typography.d.ts +0 -0
  575. /package/dist/{utils → legacy/utils}/color.utils.d.ts +0 -0
  576. /package/dist/{utils → legacy/utils}/file.utils.d.ts +0 -0
  577. /package/dist/{components/CookieConsent/types.d.ts → utils/cookie-consent.types.d.ts} +0 -0
  578. /package/dist/{components/CookieConsent/cookie-storage.util.d.ts → utils/cookie-storage.utils.d.ts} +0 -0
  579. /package/dist/{components/CookieConsent → utils}/privacy-link.constant.d.ts +0 -0
@@ -0,0 +1,427 @@
1
+ import type { ReactNode } from 'react';
2
+ import Avatar from '@mui/material/Avatar';
3
+ import ButtonBase from '@mui/material/ButtonBase';
4
+ import IconButton from '@mui/material/IconButton';
5
+ import { styled } from '@mui/material/styles';
6
+ import ArchiveOutlined from '@mui/icons-material/ArchiveOutlined';
7
+ import ArticleOutlined from '@mui/icons-material/ArticleOutlined';
8
+ import FamilyRestroomOutlined from '@mui/icons-material/FamilyRestroomOutlined';
9
+ import FolderOutlined from '@mui/icons-material/FolderOutlined';
10
+ import HelpOutlineRounded from '@mui/icons-material/HelpOutlineRounded';
11
+ import ImageOutlined from '@mui/icons-material/ImageOutlined';
12
+ import MovieOutlined from '@mui/icons-material/MovieOutlined';
13
+ import NotificationsNoneOutlined from '@mui/icons-material/NotificationsNoneOutlined';
14
+ import PhotoCameraOutlined from '@mui/icons-material/PhotoCameraOutlined';
15
+ import PictureAsPdfOutlined from '@mui/icons-material/PictureAsPdfOutlined';
16
+ import TableChartOutlined from '@mui/icons-material/TableChartOutlined';
17
+ import { focusRing, hairline, px } from '../src/theme/components/shared';
18
+ import type { SemanticToken } from '../src/theme/tokens/semantic';
19
+ import { fontWeights } from '../src/theme/tokens/primitives';
20
+ import { Surface } from '../src/components/structure/Surface/Surface';
21
+ import { Sparkline } from '../src/components/data/Sparkline/Sparkline';
22
+ import { StatusBadge } from '../src/components/meaning/StatusBadge/StatusBadge';
23
+ import type { AppShellFooterItem } from '../src/components/structure/AppShell/app-shell.types';
24
+ import type { BankAccount, CloudFile, FileKind } from './fixtures';
25
+ import { formatEuro, formatSignedEuro } from './fixtures';
26
+
27
+ // Small host-side pieces the fixtures need around the components: what an application would
28
+ // write itself (an amount cell, a file glyph, the top bar slots, the sidebar footer).
29
+
30
+ const AmountText = styled('span', {
31
+ shouldForwardProp: (prop) => prop !== 'credit',
32
+ })<{ credit: boolean }>(({ theme, credit }) => ({
33
+ fontFamily: theme.design.fonts.mono,
34
+ fontWeight: fontWeights.medium,
35
+ whiteSpace: 'nowrap',
36
+ color: credit
37
+ ? theme.design.tokens['status.success']
38
+ : theme.design.tokens['text.primary'],
39
+ }));
40
+
41
+ /** A signed amount: credits in `status.success`, debits in the text color. */
42
+ export const Amount = ({ value }: { value: number }) => (
43
+ <AmountText credit={value > 0}>{formatSignedEuro(value)}</AmountText>
44
+ );
45
+
46
+ // A file type is no meaning: its glyph stays neutral, color is kept for the state (scan verdict).
47
+ const FILE_GLYPHS: Record<FileKind, ReactNode> = {
48
+ folder: <FolderOutlined />,
49
+ pdf: <PictureAsPdfOutlined />,
50
+ sheet: <TableChartOutlined />,
51
+ image: <ImageOutlined />,
52
+ doc: <ArticleOutlined />,
53
+ archive: <ArchiveOutlined />,
54
+ video: <MovieOutlined />,
55
+ };
56
+
57
+ const GlyphBox = styled('span', {
58
+ shouldForwardProp: (prop) => prop !== 'tone',
59
+ })<{ tone: SemanticToken }>(({ theme, tone }) => {
60
+ const { space, radii, tokens } = theme.design;
61
+ return {
62
+ display: 'grid',
63
+ placeItems: 'center',
64
+ flex: 'none',
65
+ width: px(space[8]),
66
+ height: px(space[8]),
67
+ borderRadius: px(radii.md),
68
+ backgroundColor: tokens['bg.raised'],
69
+ color: tokens[tone],
70
+ '& > svg': { width: px(space[5]), height: px(space[5]) },
71
+ };
72
+ });
73
+
74
+ /** An icon on a raised square, colored by a token. */
75
+ export const Glyph = ({
76
+ icon,
77
+ tone,
78
+ }: {
79
+ icon: ReactNode;
80
+ tone: SemanticToken;
81
+ }) => (
82
+ <GlyphBox tone={tone} aria-hidden="true">
83
+ {icon}
84
+ </GlyphBox>
85
+ );
86
+
87
+ export const FileGlyph = ({ kind }: { kind: FileKind }) => (
88
+ <Glyph icon={FILE_GLYPHS[kind]} tone="text.secondary" />
89
+ );
90
+
91
+ const NameCell = styled('span')(({ theme }) => ({
92
+ display: 'flex',
93
+ alignItems: 'center',
94
+ gap: px(theme.design.space[3]),
95
+ minWidth: 0,
96
+ }));
97
+
98
+ const NameText = styled('span')({
99
+ display: 'flex',
100
+ flexDirection: 'column',
101
+ minWidth: 0,
102
+ overflowWrap: 'anywhere',
103
+ // On one line (a table cell), each line ends with an ellipsis rather than a clipped letter.
104
+ '& > span': { overflow: 'hidden', textOverflow: 'ellipsis' },
105
+ });
106
+
107
+ const Muted = styled('span')(({ theme }) => ({
108
+ color: theme.design.tokens['text.muted'],
109
+ fontSize: px(theme.design.typeScale.small),
110
+ }));
111
+
112
+ /** A file name with its glyph and its detail line. */
113
+ export const FileName = ({ file }: { file: CloudFile }) => (
114
+ <NameCell>
115
+ <FileGlyph kind={file.kind} />
116
+ <NameText>
117
+ <span>{file.name}</span>
118
+ <Muted>{file.detail}</Muted>
119
+ </NameText>
120
+ </NameCell>
121
+ );
122
+
123
+ const MutedLine = styled('span', {
124
+ shouldForwardProp: (prop) => prop !== 'mono',
125
+ })<{ mono: boolean }>(({ theme, mono }) => ({
126
+ color: theme.design.tokens['text.muted'],
127
+ fontSize: px(theme.design.typeScale.small),
128
+ fontFamily: mono ? theme.design.fonts.mono : undefined,
129
+ }));
130
+
131
+ /** Two lines in one cell: the value and a muted detail under it. */
132
+ export const TwoLines = ({
133
+ first,
134
+ second,
135
+ mono = false,
136
+ }: {
137
+ first: ReactNode;
138
+ second: ReactNode;
139
+ mono?: boolean;
140
+ }) => (
141
+ <NameText>
142
+ <span>{first}</span>
143
+ <MutedLine mono={mono}>{second}</MutedLine>
144
+ </NameText>
145
+ );
146
+
147
+ const MonoSmall = styled('span')(({ theme }) => ({
148
+ fontFamily: theme.design.fonts.mono,
149
+ fontSize: px(theme.design.typeScale.small),
150
+ color: theme.design.tokens['text.secondary'],
151
+ overflowWrap: 'anywhere',
152
+ }));
153
+
154
+ export const Mono = ({ children }: { children: ReactNode }) => (
155
+ <MonoSmall>{children}</MonoSmall>
156
+ );
157
+
158
+ const StatusCode = styled('span', {
159
+ shouldForwardProp: (prop) => prop !== 'tone',
160
+ })<{ tone: SemanticToken }>(({ theme, tone }) => ({
161
+ fontFamily: theme.design.fonts.mono,
162
+ fontWeight: fontWeights.medium,
163
+ color: theme.design.tokens[tone],
164
+ }));
165
+
166
+ /** An HTTP status code colored by its class, as in the Monitor mock-up. */
167
+ export const HttpStatus = ({ code }: { code: number }) => (
168
+ <StatusCode
169
+ tone={
170
+ code >= 500
171
+ ? 'status.danger'
172
+ : code >= 400
173
+ ? 'status.warning'
174
+ : 'status.success'
175
+ }
176
+ >
177
+ {code}
178
+ </StatusCode>
179
+ );
180
+
181
+ const AccountAvatar = styled(Avatar)(({ theme }) => {
182
+ const { space, tokens, typeScale } = theme.design;
183
+ return {
184
+ width: px(space[7]),
185
+ height: px(space[7]),
186
+ fontSize: px(typeScale.small),
187
+ fontWeight: fontWeights.semibold,
188
+ backgroundColor: tokens['bg.raised'],
189
+ color: tokens['text.primary'],
190
+ border: hairline(tokens['border.subtle']),
191
+ };
192
+ });
193
+
194
+ /** Right side of the top bar: help, notifications, account. */
195
+ export const TopbarActions = () => (
196
+ <>
197
+ <IconButton aria-label="Aide">
198
+ <HelpOutlineRounded />
199
+ </IconButton>
200
+ <IconButton aria-label="Notifications">
201
+ <NotificationsNoneOutlined />
202
+ </IconButton>
203
+ <AccountAvatar alt="Mehdi A.">MA</AccountAvatar>
204
+ </>
205
+ );
206
+
207
+ const FooterAvatar = styled('span')(({ theme }) => {
208
+ const { tokens, typeScale, radii } = theme.design;
209
+ return {
210
+ display: 'grid',
211
+ placeItems: 'center',
212
+ width: '100%',
213
+ height: '100%',
214
+ borderRadius: px(radii.lg),
215
+ fontSize: px(typeScale.caption),
216
+ fontWeight: fontWeights.semibold,
217
+ backgroundColor: tokens['bg.raised'],
218
+ color: tokens['text.primary'],
219
+ border: hairline(tokens['border.subtle']),
220
+ boxSizing: 'border-box',
221
+ };
222
+ });
223
+
224
+ /** Bottom of the navigation: the family and the account (the canonical sidebar footer). */
225
+ export const SHELL_FOOTER: AppShellFooterItem[] = [
226
+ {
227
+ id: 'family',
228
+ label: 'Ma famille · 4',
229
+ icon: <FamilyRestroomOutlined />,
230
+ href: '#famille',
231
+ },
232
+ {
233
+ id: 'account',
234
+ label: 'Mon compte',
235
+ icon: <FooterAvatar>MA</FooterAvatar>,
236
+ href: '#compte',
237
+ },
238
+ ];
239
+
240
+ const PhotoFrame = styled('div', {
241
+ shouldForwardProp: (prop) => prop !== 'from' && prop !== 'to',
242
+ })<{ from: SemanticToken; to: SemanticToken }>(({ theme, from, to }) => {
243
+ const { tokens, space } = theme.design;
244
+ return {
245
+ position: 'relative',
246
+ display: 'grid',
247
+ placeItems: 'center',
248
+ width: '100%',
249
+ height: '100%',
250
+ minHeight: px(space[10]),
251
+ backgroundImage: `linear-gradient(160deg, ${tokens[from]}, ${tokens[to]})`,
252
+ color: tokens['accent.on'],
253
+ '& > svg': { width: px(space[9]), height: px(space[9]), opacity: 0.55 },
254
+ };
255
+ });
256
+
257
+ const PHOTO_TONES: Array<[SemanticToken, SemanticToken]> = [
258
+ ['status.info', 'brand.gradientTo'],
259
+ ['status.highlight', 'accent'],
260
+ ['brand.gradientFrom', 'status.success'],
261
+ ['status.warning', 'status.highlight'],
262
+ ['accent', 'status.info'],
263
+ ['status.success', 'brand.gradientFrom'],
264
+ ];
265
+
266
+ /** Stand-in for a photo: a token gradient (the catalog ships no image). */
267
+ export const PhotoPlaceholder = ({ index }: { index: number }) => {
268
+ const [from, to] = PHOTO_TONES[index % PHOTO_TONES.length];
269
+ return (
270
+ <PhotoFrame from={from} to={to} aria-hidden="true">
271
+ <PhotoCameraOutlined />
272
+ </PhotoFrame>
273
+ );
274
+ };
275
+
276
+ const AccountHead = styled('div')(({ theme }) => ({
277
+ display: 'flex',
278
+ flexDirection: 'column',
279
+ alignItems: 'flex-start',
280
+ gap: px(theme.design.space[2]),
281
+ minWidth: 0,
282
+ }));
283
+
284
+ const AccountBalance = styled('span', {
285
+ shouldForwardProp: (prop) => prop !== 'negative',
286
+ })<{ negative: boolean }>(({ theme, negative }) => ({
287
+ fontFamily: theme.design.fonts.mono,
288
+ fontSize: px(theme.design.typeScale.sectionTitle),
289
+ fontWeight: fontWeights.medium,
290
+ color: negative
291
+ ? theme.design.tokens['status.danger']
292
+ : theme.design.tokens['text.primary'],
293
+ }));
294
+
295
+ const AccountBody = styled('div')(({ theme }) => ({
296
+ display: 'flex',
297
+ flexDirection: 'column',
298
+ gap: px(theme.design.space[3]),
299
+ minWidth: 0,
300
+ }));
301
+
302
+ /** A bank account card: name, IBAN, status, balance and its twelve-month trend. */
303
+ export const AccountCard = ({
304
+ account,
305
+ interactive = false,
306
+ onOpen,
307
+ }: {
308
+ account: BankAccount;
309
+ interactive?: boolean;
310
+ onOpen?(): void;
311
+ }) => (
312
+ <Surface
313
+ padding={4}
314
+ interactive={interactive}
315
+ onClick={onOpen}
316
+ aria-label={interactive ? account.name : undefined}
317
+ >
318
+ <AccountBody>
319
+ <AccountHead>
320
+ <TwoLines
321
+ first={account.name}
322
+ second={`${account.bank} · ${account.iban}`}
323
+ mono
324
+ />
325
+ <StatusBadge
326
+ tone={account.status.tone}
327
+ label={account.status.label}
328
+ dot
329
+ />
330
+ </AccountHead>
331
+ <AccountBalance negative={account.balance < 0}>
332
+ {formatEuro(account.balance)}
333
+ </AccountBalance>
334
+ <Sparkline
335
+ values={account.trend}
336
+ label={`Solde de ${account.name} sur 12 mois`}
337
+ />
338
+ <Muted>{account.type}</Muted>
339
+ </AccountBody>
340
+ </Surface>
341
+ );
342
+
343
+ const ListRoot = styled('ul')(({ theme }) => ({
344
+ margin: 0,
345
+ padding: 0,
346
+ listStyle: 'none',
347
+ display: 'flex',
348
+ flexDirection: 'column',
349
+ minWidth: 0,
350
+ backgroundColor: theme.design.tokens['bg.surface'],
351
+ border: hairline(theme.design.tokens['border.subtle']),
352
+ borderRadius: px(theme.design.radii.lg),
353
+ overflow: 'hidden',
354
+ '& > li + li': { borderTop: hairline(theme.design.tokens['border.subtle']) },
355
+ }));
356
+
357
+ const RowButton = styled(ButtonBase)(({ theme }) => {
358
+ const { space, tokens, densityValues, typeScale, fonts } = theme.design;
359
+ return {
360
+ width: '100%',
361
+ display: 'flex',
362
+ alignItems: 'center',
363
+ justifyContent: 'flex-start',
364
+ gap: px(space[3]),
365
+ minHeight: px(densityValues.touchTarget + space[4]),
366
+ padding: `${px(space[2])} ${px(space[4])}`,
367
+ textAlign: 'left',
368
+ fontFamily: fonts.sans,
369
+ fontSize: px(typeScale.bodyMobile),
370
+ color: tokens['text.primary'],
371
+ '&:hover': { backgroundColor: tokens['bg.hover'] },
372
+ '&.Mui-focusVisible': { ...focusRing(theme), outlineOffset: '-2px' },
373
+ };
374
+ });
375
+
376
+ const RowText = styled('span')({
377
+ display: 'flex',
378
+ flexDirection: 'column',
379
+ flex: '1 1 auto',
380
+ minWidth: 0,
381
+ '& > span': {
382
+ overflow: 'hidden',
383
+ textOverflow: 'ellipsis',
384
+ whiteSpace: 'nowrap',
385
+ },
386
+ });
387
+
388
+ const RowTrailing = styled('span')(({ theme }) => ({
389
+ flex: 'none',
390
+ display: 'flex',
391
+ alignItems: 'center',
392
+ gap: px(theme.design.space[2]),
393
+ }));
394
+
395
+ export interface TouchListItem {
396
+ id: string;
397
+ leading?: ReactNode;
398
+ title: string;
399
+ subtitle: string;
400
+ trailing?: ReactNode;
401
+ }
402
+
403
+ /** A touch list of two-line rows, as in the mobile mock-ups (`.mli`). */
404
+ export const TouchList = ({
405
+ items,
406
+ onOpen,
407
+ }: {
408
+ items: TouchListItem[];
409
+ onOpen(id: string): void;
410
+ }) => (
411
+ <ListRoot>
412
+ {items.map((item) => (
413
+ <li key={item.id}>
414
+ <RowButton onClick={() => onOpen(item.id)}>
415
+ {item.leading}
416
+ <RowText>
417
+ <span>{item.title}</span>
418
+ <Muted>{item.subtitle}</Muted>
419
+ </RowText>
420
+ {item.trailing !== undefined && (
421
+ <RowTrailing>{item.trailing}</RowTrailing>
422
+ )}
423
+ </RowButton>
424
+ </li>
425
+ ))}
426
+ </ListRoot>
427
+ );
@@ -0,0 +1,29 @@
1
+ import { dirname, resolve } from 'path';
2
+ import { fileURLToPath } from 'url';
3
+ import { defineConfig } from '@playwright/test';
4
+ import baseConfig from './playwright.config';
5
+ import { catalogPort } from './catalog-port';
6
+
7
+ // CI run of the catalog checks (`catalog:test:ci`, job `front-core-catalog`): the built catalog
8
+ // (`catalog-dist/`, built by the script just before) served by `vite preview`, instead of the dev
9
+ // server, which transforms every module on demand and makes a shared runner miss its timeouts.
10
+ // Only the specs that carry criteria 15 and 16 run (responsive, mobile-shell): the captures are a
11
+ // human review, produced locally by `catalog:test`, so neither their spec nor the teardown that
12
+ // indexes them runs here.
13
+ const port = catalogPort();
14
+ const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..');
15
+
16
+ export default defineConfig({
17
+ ...baseConfig,
18
+ testIgnore: ['**/captures.spec.ts'],
19
+ globalTeardown: undefined,
20
+ workers: 4,
21
+ webServer: {
22
+ command: 'pnpm exec vite preview --config catalog/vite.config.ts',
23
+ cwd: packageRoot,
24
+ url: `http://127.0.0.1:${port}`,
25
+ reuseExistingServer: false,
26
+ timeout: 60_000,
27
+ env: { CATALOG_PORT: String(port) },
28
+ },
29
+ });
@@ -0,0 +1,36 @@
1
+ import { dirname, resolve } from 'path';
2
+ import { fileURLToPath } from 'url';
3
+ import { defineConfig, devices } from '@playwright/test';
4
+ import { catalogPort } from './catalog-port';
5
+
6
+ // The package is an ES module: no `__dirname`.
7
+ const catalogDir = dirname(fileURLToPath(import.meta.url));
8
+
9
+ // Browser checks of the component catalog: overflow and touch targets (responsive), the mobile
10
+ // frame (mobile-shell) and the screenshots of every page (captures). The catalog dev server is
11
+ // started on `CATALOG_PORT` and never reused: an already listening port belongs to someone else.
12
+ const port = catalogPort();
13
+ const packageRoot = resolve(catalogDir, '..');
14
+
15
+ export default defineConfig({
16
+ testDir: resolve(catalogDir, 'specs'),
17
+ outputDir: resolve(packageRoot, 'test-results/catalog'),
18
+ fullyParallel: true,
19
+ forbidOnly: true,
20
+ retries: 0,
21
+ reporter: [['list']],
22
+ globalTeardown: resolve(catalogDir, 'specs/write-capture-index.ts'),
23
+ use: {
24
+ ...devices['Desktop Chrome'],
25
+ baseURL: `http://127.0.0.1:${port}`,
26
+ trace: 'retain-on-failure',
27
+ },
28
+ webServer: {
29
+ command: 'pnpm exec vite --config catalog/vite.config.ts',
30
+ cwd: packageRoot,
31
+ url: `http://127.0.0.1:${port}`,
32
+ reuseExistingServer: false,
33
+ timeout: 120_000,
34
+ env: { CATALOG_PORT: String(port) },
35
+ },
36
+ });
@@ -0,0 +1,67 @@
1
+ import { resolve } from 'path';
2
+ import { expect, test } from '@playwright/test';
3
+ import type { Page } from '@playwright/test';
4
+ import { CAPTURES, CAPTURES_DIR, VIEWPORT_HEIGHT } from '../captures-plan';
5
+ import type { CaptureState } from '../captures-plan';
6
+ import { openCatalogPage, settle } from './catalog-page';
7
+
8
+ // Criterion 13: one PNG per component in light and dark at 1440 px, plus 390 px for the
9
+ // components that change form below 768 px, and the two composed scenes at 1440 and 390 px.
10
+
11
+ /** How each state beyond arrival is reached, and what proves it is shown. */
12
+ const REACH: Record<
13
+ Exclude<CaptureState, 'arrival'>,
14
+ (page: Page) => Promise<void>
15
+ > = {
16
+ 'sheet-open': async (page) => {
17
+ await page
18
+ .getByRole('button', { name: /avis-imposition-2026\.pdf/ })
19
+ .click();
20
+ await expect(
21
+ page.getByRole('dialog', { name: 'avis-imposition-2026.pdf' }),
22
+ ).toBeVisible();
23
+ },
24
+ 'list-open': async (page) => {
25
+ await page.getByRole('combobox').first().click();
26
+ await expect(page.getByRole('listbox')).toBeVisible();
27
+ },
28
+ 'calendar-open': async (page) => {
29
+ await page
30
+ .getByRole('button', { name: /Choisir une date/ })
31
+ .first()
32
+ .click();
33
+ await expect(page.getByRole('dialog')).toBeVisible();
34
+ },
35
+ };
36
+
37
+ for (const capture of CAPTURES) {
38
+ test(`capture ${capture.file}`, async ({ page }) => {
39
+ await openCatalogPage(page, capture.entry.name, capture.theme, {
40
+ width: capture.width,
41
+ height: VIEWPORT_HEIGHT[capture.width],
42
+ });
43
+
44
+ if (capture.state !== 'arrival') {
45
+ await REACH[capture.state](page);
46
+ await settle(page);
47
+ }
48
+
49
+ // A taller window rather than `fullPage`: the sticky sidebar (`100vh`) then spans the whole
50
+ // page, as it does on screen while scrolling. A mobile frame (`100dvh`) is never taller.
51
+ const documentHeight = await page.evaluate(
52
+ () => document.documentElement.scrollHeight,
53
+ );
54
+ if (documentHeight > VIEWPORT_HEIGHT[capture.width]) {
55
+ await page.setViewportSize({
56
+ width: capture.width,
57
+ height: documentHeight,
58
+ });
59
+ await settle(page);
60
+ }
61
+
62
+ await page.screenshot({
63
+ path: resolve(CAPTURES_DIR, capture.file),
64
+ animations: 'disabled',
65
+ });
66
+ });
67
+ }
@@ -0,0 +1,42 @@
1
+ import type { Page } from '@playwright/test';
2
+ import { catalogPath } from '../catalog-entries';
3
+ import type { CatalogTheme } from '../catalog-entries';
4
+
5
+ /** Longest enter transition of the design system (`durations.slow`, 260 ms), with margin. */
6
+ const SETTLE_MS = 400;
7
+
8
+ /**
9
+ * Opens a catalog page at `width` × `height` and waits until it is drawn: fonts loaded, enter
10
+ * transitions over. Any uncaught page error fails the calling test.
11
+ */
12
+ export const openCatalogPage = async (
13
+ page: Page,
14
+ name: string,
15
+ theme: CatalogTheme,
16
+ viewport: { width: number; height: number },
17
+ ): Promise<void> => {
18
+ const errors: string[] = [];
19
+ page.on('pageerror', (error) => errors.push(error.message));
20
+ await page.setViewportSize(viewport);
21
+ await page.goto(catalogPath(name, theme));
22
+ await page.waitForLoadState('networkidle');
23
+ await page.evaluate(() => document.fonts.ready.then(() => undefined));
24
+ await page.waitForTimeout(SETTLE_MS);
25
+ if (errors.length > 0) {
26
+ throw new Error(
27
+ `The catalog page ${name} (${theme}) threw: ${errors.join(' | ')}`,
28
+ );
29
+ }
30
+ const dataTheme = await page.evaluate(
31
+ () => document.documentElement.dataset.theme,
32
+ );
33
+ if (dataTheme !== theme) {
34
+ throw new Error(
35
+ `The catalog page ${name} rendered data-theme="${dataTheme}", expected ${theme}.`,
36
+ );
37
+ }
38
+ };
39
+
40
+ /** Waits for enter and exit transitions after an interaction. */
41
+ export const settle = (page: Page): Promise<void> =>
42
+ page.waitForTimeout(SETTLE_MS);