@plumile/backoffice-react 0.1.72 → 0.1.73

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 (390) hide show
  1. package/lib/esm/{auth/pages/AcceptInvitationScreen.js → AcceptInvitationScreen-CNLlSbdx.js} +25 -29
  2. package/lib/esm/AcceptInvitationScreen-CNLlSbdx.js.map +1 -0
  3. package/lib/esm/{auth/login/AuthPanel.js → AuthPanel-ttoH9YxE.js} +7 -7
  4. package/lib/esm/AuthPanel-ttoH9YxE.js.map +1 -0
  5. package/lib/esm/BackofficeAcceptInvitationPage-DRxM1Z-U.js +30 -0
  6. package/lib/esm/BackofficeAcceptInvitationPage-DRxM1Z-U.js.map +1 -0
  7. package/lib/esm/BackofficeDashboardPage-GKyT60qb.js +195 -0
  8. package/lib/esm/BackofficeDashboardPage-GKyT60qb.js.map +1 -0
  9. package/lib/esm/BackofficeDetailPayload-B-qs8Fai.js +94 -0
  10. package/lib/esm/BackofficeDetailPayload-B-qs8Fai.js.map +1 -0
  11. package/lib/esm/{components/backoffice/actions/BackofficeEntityActionFormDialog.js → BackofficeEntityActionFormDialog-FHlW0vys.js} +120 -131
  12. package/lib/esm/BackofficeEntityActionFormDialog-FHlW0vys.js.map +1 -0
  13. package/lib/esm/{pages/detail/BackofficeEntityDetailLayoutContext.js → BackofficeEntityDetailLayoutContext-C_tBqkVq.js} +2 -2
  14. package/lib/esm/BackofficeEntityDetailLayoutContext-C_tBqkVq.js.map +1 -0
  15. package/lib/esm/BackofficeEntityDetailLayoutPage-DXjRqvcZ.js +18 -0
  16. package/lib/esm/BackofficeEntityDetailLayoutPage-DXjRqvcZ.js.map +1 -0
  17. package/lib/esm/BackofficeEntityDetailPage-CdrMXu5a.js +991 -0
  18. package/lib/esm/BackofficeEntityDetailPage-CdrMXu5a.js.map +1 -0
  19. package/lib/esm/{pages/BackofficeEntityDetailUnknownPageRedirect.js → BackofficeEntityDetailUnknownPageRedirect-DRWTeox-.js} +3 -3
  20. package/lib/esm/BackofficeEntityDetailUnknownPageRedirect-DRWTeox-.js.map +1 -0
  21. package/lib/esm/BackofficeEntityListPage-BxgqdFpL.js +385 -0
  22. package/lib/esm/BackofficeEntityListPage-BxgqdFpL.js.map +1 -0
  23. package/lib/esm/BackofficeLayoutPage-k9OkLfXb.js +485 -0
  24. package/lib/esm/BackofficeLayoutPage-k9OkLfXb.js.map +1 -0
  25. package/lib/esm/BackofficeLoginPage-C64BcxMw.js +50 -0
  26. package/lib/esm/BackofficeLoginPage-C64BcxMw.js.map +1 -0
  27. package/lib/esm/BackofficePasswordResetCompletePage-BA7kkUxN.js +60 -0
  28. package/lib/esm/BackofficePasswordResetCompletePage-BA7kkUxN.js.map +1 -0
  29. package/lib/esm/{pages/BackofficePasswordResetRequestPage.js → BackofficePasswordResetRequestPage-B9wSZcyn.js} +15 -13
  30. package/lib/esm/BackofficePasswordResetRequestPage-B9wSZcyn.js.map +1 -0
  31. package/lib/esm/BackofficeRightPageLayout-ktdlvTZJ.js +107 -0
  32. package/lib/esm/BackofficeRightPageLayout-ktdlvTZJ.js.map +1 -0
  33. package/lib/esm/{components/backoffice/layout/breadcrumb/BackofficeTopbarPortalContext.js → BackofficeTopbarPortalContext-iD7dm4_h.js} +2 -2
  34. package/lib/esm/BackofficeTopbarPortalContext-iD7dm4_h.js.map +1 -0
  35. package/lib/esm/BackofficeVerifyEmailPage-CAzMqo2K.js +59 -0
  36. package/lib/esm/BackofficeVerifyEmailPage-CAzMqo2K.js.map +1 -0
  37. package/lib/esm/EntityFilterValue-SC_jkj4O.js +77 -0
  38. package/lib/esm/EntityFilterValue-SC_jkj4O.js.map +1 -0
  39. package/lib/esm/EntityIdPickerDialog-FMC5Hx_I.js +308 -0
  40. package/lib/esm/EntityIdPickerDialog-FMC5Hx_I.js.map +1 -0
  41. package/lib/esm/LazyBackofficeEntityActionFormDialog-DOEgoIfT.js +486 -0
  42. package/lib/esm/LazyBackofficeEntityActionFormDialog-DOEgoIfT.js.map +1 -0
  43. package/lib/esm/{auth/pages/PasswordResetCompleteScreen.js → PasswordResetCompleteScreen-C4GQdavL.js} +21 -25
  44. package/lib/esm/PasswordResetCompleteScreen-C4GQdavL.js.map +1 -0
  45. package/lib/esm/{auth/pages/PasswordResetRequestScreen.js → PasswordResetRequestScreen-aUY_yDqM.js} +19 -23
  46. package/lib/esm/PasswordResetRequestScreen-aUY_yDqM.js.map +1 -0
  47. package/lib/esm/VerifyEmailScreen-2DuHJgdY.js +62 -0
  48. package/lib/esm/VerifyEmailScreen-2DuHJgdY.js.map +1 -0
  49. package/lib/esm/backoffice-react.js +1804 -0
  50. package/lib/esm/backoffice-react.js.map +1 -0
  51. package/lib/esm/{router/backofficeAuthPaths.js → backofficeAuthPaths-BiJvoI5Q.js} +2 -2
  52. package/lib/esm/backofficeAuthPaths-BiJvoI5Q.js.map +1 -0
  53. package/lib/esm/{components/backoffice/layout/breadcrumb/buildBreadcrumbs.js → buildBreadcrumbs-CqF9Nh6x.js} +3 -7
  54. package/lib/esm/buildBreadcrumbs-CqF9Nh6x.js.map +1 -0
  55. package/lib/esm/{relay/environment.js → environment-BJeJTbIN.js} +91 -71
  56. package/lib/esm/environment-BJeJTbIN.js.map +1 -0
  57. package/lib/esm/loginPage.css-BDQJNcSr.js +12 -0
  58. package/lib/esm/loginPage.css-BDQJNcSr.js.map +1 -0
  59. package/lib/esm/{relay/mutationResult.js → mutationResult-CcQMY13J.js} +2 -2
  60. package/lib/esm/mutationResult-CcQMY13J.js.map +1 -0
  61. package/lib/esm/{pages/detail/pageResolution.js → pageResolution-hAQA5C6S.js} +2 -2
  62. package/lib/esm/pageResolution-hAQA5C6S.js.map +1 -0
  63. package/lib/esm/{components/backoffice/layout/sidebarUtils.js → sidebarUtils-CuwJ_3mD.js} +2 -12
  64. package/lib/esm/{components/backoffice/layout/sidebarUtils.js.map → sidebarUtils-CuwJ_3mD.js.map} +1 -1
  65. package/lib/esm/{provider/BackofficeConfigContext.js → sprinkles.css.ts.vanilla-n-NK_DwW.js} +2 -2
  66. package/lib/esm/sprinkles.css.ts.vanilla-n-NK_DwW.js.map +1 -0
  67. package/lib/esm/style.css +1 -1
  68. package/lib/esm/synchronizeAuthStatusQuery-lLR0XFew.js +323 -0
  69. package/lib/esm/synchronizeAuthStatusQuery-lLR0XFew.js.map +1 -0
  70. package/lib/esm/{components/backoffice/actions/toastViewAction.js → toastViewAction-BGTS7vqm.js} +2 -2
  71. package/lib/esm/{components/backoffice/actions/toastViewAction.js.map → toastViewAction-BGTS7vqm.js.map} +1 -1
  72. package/lib/esm/useAuth-AczFS-oL.js +543 -0
  73. package/lib/esm/useAuth-AczFS-oL.js.map +1 -0
  74. package/lib/esm/useBackofficeAuth-BHteJQzA.js +89 -0
  75. package/lib/esm/useBackofficeAuth-BHteJQzA.js.map +1 -0
  76. package/lib/esm/{provider/useBackofficeLazyValue.js → useBackofficeLazyValue-B0-ckL6e.js} +7 -15
  77. package/lib/esm/useBackofficeLazyValue-B0-ckL6e.js.map +1 -0
  78. package/lib/esm/{hooks/useBackofficeListUrlState.js → useBackofficeListUrlState-D4fx5O7u.js} +2 -2
  79. package/lib/esm/useBackofficeListUrlState-D4fx5O7u.js.map +1 -0
  80. package/lib/esm/{components/backoffice/errors/BackofficeErrorBoundary.js → useBackofficeReactTranslation-WfXU8kCf.js} +9 -3
  81. package/lib/esm/useBackofficeReactTranslation-WfXU8kCf.js.map +1 -0
  82. package/lib/esm/{relay/useRelayEnvironment.js → useRelayEnvironment-vQ86aW-n.js} +2 -2
  83. package/lib/esm/useRelayEnvironment-vQ86aW-n.js.map +1 -0
  84. package/lib/types/auth/login/EmailCapturePanel.d.ts.map +1 -1
  85. package/lib/types/auth/login/MethodChooser.d.ts.map +1 -1
  86. package/lib/types/auth/login/MfaChallengeForm.d.ts.map +1 -1
  87. package/lib/types/auth/login/PasskeyLoginForm.d.ts.map +1 -1
  88. package/lib/types/auth/login/PasswordLoginPanel.d.ts +1 -1
  89. package/lib/types/auth/login/PasswordLoginPanel.d.ts.map +1 -1
  90. package/lib/types/auth/pages/AcceptInvitationScreen.d.ts.map +1 -1
  91. package/lib/types/auth/pages/PasswordResetCompleteScreen.d.ts.map +1 -1
  92. package/lib/types/auth/pages/PasswordResetRequestScreen.d.ts.map +1 -1
  93. package/lib/types/auth/pages/VerifyEmailScreen.d.ts.map +1 -1
  94. package/lib/types/components/backoffice/detail/BackofficeDetailErrorList.d.ts.map +1 -1
  95. package/lib/types/components/backoffice/detail/BackofficeDetailField.d.ts.map +1 -1
  96. package/lib/types/components/backoffice/filters/BackofficeFilterAction.d.ts.map +1 -1
  97. package/lib/types/components/backoffice/layout/buildSidebarSections.d.ts +1 -1
  98. package/lib/types/components/backoffice/layout/buildSidebarSections.d.ts.map +1 -1
  99. package/lib/types/components/backoffice/pickers/EntityIdPickerDialog.d.ts.map +1 -1
  100. package/lib/types/components/backoffice/scaffolds/BackofficeEntityListScaffold.d.ts.map +1 -1
  101. package/lib/types/filters/filterHelpers.d.ts +1 -1
  102. package/lib/types/filters/filterHelpers.d.ts.map +1 -1
  103. package/lib/types/index.d.ts +5 -0
  104. package/lib/types/index.d.ts.map +1 -1
  105. package/lib/types/pages/BackofficeEntityDetailPage.d.ts.map +1 -1
  106. package/lib/types/provider/BackofficeConfigContext.d.ts +1 -0
  107. package/lib/types/provider/BackofficeConfigContext.d.ts.map +1 -1
  108. package/lib/types/provider/BackofficeProvider.d.ts.map +1 -1
  109. package/lib/types/provider/types.d.ts +2 -0
  110. package/lib/types/provider/types.d.ts.map +1 -1
  111. package/lib/types/relay/environment.d.ts +1 -0
  112. package/lib/types/relay/environment.d.ts.map +1 -1
  113. package/lib/types/router/createBackofficeRoutes.d.ts.map +1 -1
  114. package/package.json +9 -9
  115. package/lib/esm/auth/login/AuthPanel.js.map +0 -1
  116. package/lib/esm/auth/login/EmailCapturePanel.js +0 -52
  117. package/lib/esm/auth/login/EmailCapturePanel.js.map +0 -1
  118. package/lib/esm/auth/login/LoginFlow.js +0 -130
  119. package/lib/esm/auth/login/LoginFlow.js.map +0 -1
  120. package/lib/esm/auth/login/MethodChooser.js +0 -51
  121. package/lib/esm/auth/login/MethodChooser.js.map +0 -1
  122. package/lib/esm/auth/login/MfaChallengeForm.js +0 -83
  123. package/lib/esm/auth/login/MfaChallengeForm.js.map +0 -1
  124. package/lib/esm/auth/login/OidcButtons.js +0 -29
  125. package/lib/esm/auth/login/OidcButtons.js.map +0 -1
  126. package/lib/esm/auth/login/PasskeyLoginForm.js +0 -84
  127. package/lib/esm/auth/login/PasskeyLoginForm.js.map +0 -1
  128. package/lib/esm/auth/login/PasswordLoginPanel.js +0 -37
  129. package/lib/esm/auth/login/PasswordLoginPanel.js.map +0 -1
  130. package/lib/esm/auth/login/loginPage.css.js +0 -8
  131. package/lib/esm/auth/login/loginPage.css.js.map +0 -1
  132. package/lib/esm/auth/login/synchronizeAuthStatusQuery.js +0 -10
  133. package/lib/esm/auth/login/synchronizeAuthStatusQuery.js.map +0 -1
  134. package/lib/esm/auth/pages/AcceptInvitationScreen.js.map +0 -1
  135. package/lib/esm/auth/pages/PasswordResetCompleteScreen.js.map +0 -1
  136. package/lib/esm/auth/pages/PasswordResetRequestScreen.js.map +0 -1
  137. package/lib/esm/auth/pages/VerifyEmailScreen.js +0 -65
  138. package/lib/esm/auth/pages/VerifyEmailScreen.js.map +0 -1
  139. package/lib/esm/components/backoffice/actions/BackofficeEntityActionFormDialog.js.map +0 -1
  140. package/lib/esm/components/backoffice/actions/LazyBackofficeEntityActionFormDialog.js +0 -11
  141. package/lib/esm/components/backoffice/actions/LazyBackofficeEntityActionFormDialog.js.map +0 -1
  142. package/lib/esm/components/backoffice/actions/backofficeEntityActionFormDialog.css.js +0 -8
  143. package/lib/esm/components/backoffice/actions/backofficeEntityActionFormDialog.css.js.map +0 -1
  144. package/lib/esm/components/backoffice/columns/buildDataTableColumns.js +0 -59
  145. package/lib/esm/components/backoffice/columns/buildDataTableColumns.js.map +0 -1
  146. package/lib/esm/components/backoffice/detail/BackofficeDetailBadgeRow.js +0 -22
  147. package/lib/esm/components/backoffice/detail/BackofficeDetailBadgeRow.js.map +0 -1
  148. package/lib/esm/components/backoffice/detail/BackofficeDetailErrorList.js +0 -41
  149. package/lib/esm/components/backoffice/detail/BackofficeDetailErrorList.js.map +0 -1
  150. package/lib/esm/components/backoffice/detail/BackofficeDetailField.js +0 -31
  151. package/lib/esm/components/backoffice/detail/BackofficeDetailField.js.map +0 -1
  152. package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.css.js +0 -8
  153. package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.css.js.map +0 -1
  154. package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.js +0 -24
  155. package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.js.map +0 -1
  156. package/lib/esm/components/backoffice/detail/BackofficeDetailLayout.js +0 -20
  157. package/lib/esm/components/backoffice/detail/BackofficeDetailLayout.js.map +0 -1
  158. package/lib/esm/components/backoffice/detail/BackofficeDetailPayload.js +0 -18
  159. package/lib/esm/components/backoffice/detail/BackofficeDetailPayload.js.map +0 -1
  160. package/lib/esm/components/backoffice/detail/BackofficeDetailRelationLink.js +0 -49
  161. package/lib/esm/components/backoffice/detail/BackofficeDetailRelationLink.js.map +0 -1
  162. package/lib/esm/components/backoffice/detail/BackofficeDetailRelationList.js +0 -11
  163. package/lib/esm/components/backoffice/detail/BackofficeDetailRelationList.js.map +0 -1
  164. package/lib/esm/components/backoffice/detail/BackofficeDetailRelationListBlock.js +0 -115
  165. package/lib/esm/components/backoffice/detail/BackofficeDetailRelationListBlock.js.map +0 -1
  166. package/lib/esm/components/backoffice/detail/BackofficeDetailSection.js +0 -33
  167. package/lib/esm/components/backoffice/detail/BackofficeDetailSection.js.map +0 -1
  168. package/lib/esm/components/backoffice/detail/BackofficeDetailTaggedValue.js +0 -18
  169. package/lib/esm/components/backoffice/detail/BackofficeDetailTaggedValue.js.map +0 -1
  170. package/lib/esm/components/backoffice/detail/backofficeDetailBadgeRow.css.js +0 -8
  171. package/lib/esm/components/backoffice/detail/backofficeDetailBadgeRow.css.js.map +0 -1
  172. package/lib/esm/components/backoffice/detail/backofficeDetailErrorList.css.js +0 -8
  173. package/lib/esm/components/backoffice/detail/backofficeDetailErrorList.css.js.map +0 -1
  174. package/lib/esm/components/backoffice/detail/backofficeDetailField.css.js +0 -15
  175. package/lib/esm/components/backoffice/detail/backofficeDetailField.css.js.map +0 -1
  176. package/lib/esm/components/backoffice/detail/backofficeDetailLayout.css.js +0 -8
  177. package/lib/esm/components/backoffice/detail/backofficeDetailLayout.css.js.map +0 -1
  178. package/lib/esm/components/backoffice/detail/backofficeDetailRelationLink.css.js +0 -8
  179. package/lib/esm/components/backoffice/detail/backofficeDetailRelationLink.css.js.map +0 -1
  180. package/lib/esm/components/backoffice/detail/backofficeDetailRelationList.css.js +0 -8
  181. package/lib/esm/components/backoffice/detail/backofficeDetailRelationList.css.js.map +0 -1
  182. package/lib/esm/components/backoffice/detail/backofficeDetailSection.css.js +0 -8
  183. package/lib/esm/components/backoffice/detail/backofficeDetailSection.css.js.map +0 -1
  184. package/lib/esm/components/backoffice/detail/backofficeDetailTaggedValue.css.js +0 -8
  185. package/lib/esm/components/backoffice/detail/backofficeDetailTaggedValue.css.js.map +0 -1
  186. package/lib/esm/components/backoffice/detail/detailPayloadUtils.js +0 -17
  187. package/lib/esm/components/backoffice/detail/detailPayloadUtils.js.map +0 -1
  188. package/lib/esm/components/backoffice/errors/BackofficeErrorBoundary.js.map +0 -1
  189. package/lib/esm/components/backoffice/filters/BackofficeFilterAction.js +0 -43
  190. package/lib/esm/components/backoffice/filters/BackofficeFilterAction.js.map +0 -1
  191. package/lib/esm/components/backoffice/filters/EntityFilterValue.js +0 -46
  192. package/lib/esm/components/backoffice/filters/EntityFilterValue.js.map +0 -1
  193. package/lib/esm/components/backoffice/filters/EntityIdFilterField.js +0 -51
  194. package/lib/esm/components/backoffice/filters/EntityIdFilterField.js.map +0 -1
  195. package/lib/esm/components/backoffice/filters/backofficeFilterAction.css.js +0 -8
  196. package/lib/esm/components/backoffice/filters/backofficeFilterAction.css.js.map +0 -1
  197. package/lib/esm/components/backoffice/filters/entityIdFilterField.css.js +0 -8
  198. package/lib/esm/components/backoffice/filters/entityIdFilterField.css.js.map +0 -1
  199. package/lib/esm/components/backoffice/layout/backofficeSidebarActions.css.js +0 -8
  200. package/lib/esm/components/backoffice/layout/backofficeSidebarActions.css.js.map +0 -1
  201. package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeRightPageLayout.js +0 -10
  202. package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeRightPageLayout.js.map +0 -1
  203. package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarBreadcrumb.js +0 -38
  204. package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarBreadcrumb.js.map +0 -1
  205. package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarPortal.js +0 -12
  206. package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarPortal.js.map +0 -1
  207. package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarPortalContext.js.map +0 -1
  208. package/lib/esm/components/backoffice/layout/breadcrumb/assertValidBreadcrumb.js +0 -16
  209. package/lib/esm/components/backoffice/layout/breadcrumb/assertValidBreadcrumb.js.map +0 -1
  210. package/lib/esm/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.js +0 -8
  211. package/lib/esm/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.js.map +0 -1
  212. package/lib/esm/components/backoffice/layout/breadcrumb/buildBreadcrumbs.js.map +0 -1
  213. package/lib/esm/components/backoffice/layout/breadcrumb/types.js +0 -0
  214. package/lib/esm/components/backoffice/layout/buildSidebarSections.js +0 -183
  215. package/lib/esm/components/backoffice/layout/buildSidebarSections.js.map +0 -1
  216. package/lib/esm/components/backoffice/layout/mapViewerToSidebarProfileView.js +0 -18
  217. package/lib/esm/components/backoffice/layout/mapViewerToSidebarProfileView.js.map +0 -1
  218. package/lib/esm/components/backoffice/list/RowFlagsCell.css.js +0 -7
  219. package/lib/esm/components/backoffice/list/RowFlagsCell.css.js.map +0 -1
  220. package/lib/esm/components/backoffice/list/RowFlagsCell.js +0 -37
  221. package/lib/esm/components/backoffice/list/RowFlagsCell.js.map +0 -1
  222. package/lib/esm/components/backoffice/overview/BackofficeOverviewLayout.js +0 -31
  223. package/lib/esm/components/backoffice/overview/BackofficeOverviewLayout.js.map +0 -1
  224. package/lib/esm/components/backoffice/overview/backofficeOverviewLayout.css.js +0 -8
  225. package/lib/esm/components/backoffice/overview/backofficeOverviewLayout.css.js.map +0 -1
  226. package/lib/esm/components/backoffice/pickers/EntityIdPickerDialog.js +0 -106
  227. package/lib/esm/components/backoffice/pickers/EntityIdPickerDialog.js.map +0 -1
  228. package/lib/esm/components/backoffice/pickers/entityIdPickerDialog.css.js +0 -8
  229. package/lib/esm/components/backoffice/pickers/entityIdPickerDialog.css.js.map +0 -1
  230. package/lib/esm/components/backoffice/pickers/shared/EntityPickerList.js +0 -23
  231. package/lib/esm/components/backoffice/pickers/shared/EntityPickerList.js.map +0 -1
  232. package/lib/esm/components/backoffice/pickers/shared/EntityPickerRowBase.js +0 -23
  233. package/lib/esm/components/backoffice/pickers/shared/EntityPickerRowBase.js.map +0 -1
  234. package/lib/esm/components/backoffice/pickers/shared/EntityPickerShell.js +0 -24
  235. package/lib/esm/components/backoffice/pickers/shared/EntityPickerShell.js.map +0 -1
  236. package/lib/esm/components/backoffice/pickers/types.js +0 -0
  237. package/lib/esm/components/backoffice/refs/BackofficeEntityIdRef.js +0 -35
  238. package/lib/esm/components/backoffice/refs/BackofficeEntityIdRef.js.map +0 -1
  239. package/lib/esm/components/backoffice/refs/BackofficeRelatedCountLink.js +0 -54
  240. package/lib/esm/components/backoffice/refs/BackofficeRelatedCountLink.js.map +0 -1
  241. package/lib/esm/components/backoffice/refs/backofficeEntityIdRef.css.js +0 -8
  242. package/lib/esm/components/backoffice/refs/backofficeEntityIdRef.css.js.map +0 -1
  243. package/lib/esm/components/backoffice/refs/backofficeRelatedCountLink.css.js +0 -8
  244. package/lib/esm/components/backoffice/refs/backofficeRelatedCountLink.css.js.map +0 -1
  245. package/lib/esm/components/backoffice/routing/BackofficeContentBoundary.js +0 -24
  246. package/lib/esm/components/backoffice/routing/BackofficeContentBoundary.js.map +0 -1
  247. package/lib/esm/components/backoffice/routing/BackofficeContentError.js +0 -38
  248. package/lib/esm/components/backoffice/routing/BackofficeContentError.js.map +0 -1
  249. package/lib/esm/components/backoffice/routing/BackofficeContentFallback.js +0 -47
  250. package/lib/esm/components/backoffice/routing/BackofficeContentFallback.js.map +0 -1
  251. package/lib/esm/components/backoffice/routing/BackofficeRouteFallback.js +0 -22
  252. package/lib/esm/components/backoffice/routing/BackofficeRouteFallback.js.map +0 -1
  253. package/lib/esm/components/backoffice/routing/BackofficeRoutePendingBar.js +0 -12
  254. package/lib/esm/components/backoffice/routing/BackofficeRoutePendingBar.js.map +0 -1
  255. package/lib/esm/components/backoffice/routing/backofficeContentBoundary.css.js +0 -8
  256. package/lib/esm/components/backoffice/routing/backofficeContentBoundary.css.js.map +0 -1
  257. package/lib/esm/components/backoffice/routing/backofficeContentError.css.js +0 -8
  258. package/lib/esm/components/backoffice/routing/backofficeContentError.css.js.map +0 -1
  259. package/lib/esm/components/backoffice/routing/backofficeContentFallback.css.js +0 -8
  260. package/lib/esm/components/backoffice/routing/backofficeContentFallback.css.js.map +0 -1
  261. package/lib/esm/components/backoffice/routing/backofficeRouteFallback.css.js +0 -8
  262. package/lib/esm/components/backoffice/routing/backofficeRouteFallback.css.js.map +0 -1
  263. package/lib/esm/components/backoffice/routing/backofficeRoutePendingBar.css.js +0 -8
  264. package/lib/esm/components/backoffice/routing/backofficeRoutePendingBar.css.js.map +0 -1
  265. package/lib/esm/components/backoffice/scaffolds/BackofficeEntityDetailScaffold.js +0 -11
  266. package/lib/esm/components/backoffice/scaffolds/BackofficeEntityDetailScaffold.js.map +0 -1
  267. package/lib/esm/components/backoffice/scaffolds/BackofficeEntityListScaffold.js +0 -438
  268. package/lib/esm/components/backoffice/scaffolds/BackofficeEntityListScaffold.js.map +0 -1
  269. package/lib/esm/components/backoffice/scaffolds/BackofficeListFilterContext.js +0 -40
  270. package/lib/esm/components/backoffice/scaffolds/BackofficeListFilterContext.js.map +0 -1
  271. package/lib/esm/components/backoffice/scaffolds/BackofficeTabbedDetailShell.js +0 -24
  272. package/lib/esm/components/backoffice/scaffolds/BackofficeTabbedDetailShell.js.map +0 -1
  273. package/lib/esm/components/backoffice/scaffolds/backofficeEntityListScaffold.css.js +0 -8
  274. package/lib/esm/components/backoffice/scaffolds/backofficeEntityListScaffold.css.js.map +0 -1
  275. package/lib/esm/components/backoffice/scaffolds/backofficeTabbedDetailShell.css.js +0 -8
  276. package/lib/esm/components/backoffice/scaffolds/backofficeTabbedDetailShell.css.js.map +0 -1
  277. package/lib/esm/components/backoffice/shared/BackofficeInlineFilterRow.js +0 -12
  278. package/lib/esm/components/backoffice/shared/BackofficeInlineFilterRow.js.map +0 -1
  279. package/lib/esm/components/backoffice/shared/backofficeInlineFilterRow.css.js +0 -8
  280. package/lib/esm/components/backoffice/shared/backofficeInlineFilterRow.css.js.map +0 -1
  281. package/lib/esm/filters/filterHelpers.js +0 -36
  282. package/lib/esm/filters/filterHelpers.js.map +0 -1
  283. package/lib/esm/hooks/useAuth.js +0 -439
  284. package/lib/esm/hooks/useAuth.js.map +0 -1
  285. package/lib/esm/hooks/useBackofficeAuth.js +0 -89
  286. package/lib/esm/hooks/useBackofficeAuth.js.map +0 -1
  287. package/lib/esm/hooks/useBackofficeListRefetch.js +0 -40
  288. package/lib/esm/hooks/useBackofficeListRefetch.js.map +0 -1
  289. package/lib/esm/hooks/useBackofficeListUrlState.js.map +0 -1
  290. package/lib/esm/hooks/useBackofficeLoadMore.js +0 -18
  291. package/lib/esm/hooks/useBackofficeLoadMore.js.map +0 -1
  292. package/lib/esm/hooks/useBackofficeSessionAuth.js +0 -28
  293. package/lib/esm/hooks/useBackofficeSessionAuth.js.map +0 -1
  294. package/lib/esm/hooks/useBackofficeSidebarPins.js +0 -70
  295. package/lib/esm/hooks/useBackofficeSidebarPins.js.map +0 -1
  296. package/lib/esm/hooks/useConditionalSubscription.js +0 -57
  297. package/lib/esm/hooks/useConditionalSubscription.js.map +0 -1
  298. package/lib/esm/hooks/useCopyToClipboard.js +0 -31
  299. package/lib/esm/hooks/useCopyToClipboard.js.map +0 -1
  300. package/lib/esm/hooks/useRefetchNeededReload.js +0 -23
  301. package/lib/esm/hooks/useRefetchNeededReload.js.map +0 -1
  302. package/lib/esm/hooks/useSidebarGroupCollapse.js +0 -35
  303. package/lib/esm/hooks/useSidebarGroupCollapse.js.map +0 -1
  304. package/lib/esm/i18n/createI18nInstance.js +0 -62
  305. package/lib/esm/i18n/createI18nInstance.js.map +0 -1
  306. package/lib/esm/i18n/locales/en/backofficeReact.js +0 -249
  307. package/lib/esm/i18n/locales/en/backofficeReact.js.map +0 -1
  308. package/lib/esm/i18n/locales/en/shared.js +0 -201
  309. package/lib/esm/i18n/locales/en/shared.js.map +0 -1
  310. package/lib/esm/i18n/locales/fr/backofficeReact.js +0 -251
  311. package/lib/esm/i18n/locales/fr/backofficeReact.js.map +0 -1
  312. package/lib/esm/i18n/locales/fr/shared.js +0 -201
  313. package/lib/esm/i18n/locales/fr/shared.js.map +0 -1
  314. package/lib/esm/i18n/mergeResourceLanguages.js +0 -19
  315. package/lib/esm/i18n/mergeResourceLanguages.js.map +0 -1
  316. package/lib/esm/i18n/resources.js +0 -19
  317. package/lib/esm/i18n/resources.js.map +0 -1
  318. package/lib/esm/i18n/useBackofficeFormats.js +0 -23
  319. package/lib/esm/i18n/useBackofficeFormats.js.map +0 -1
  320. package/lib/esm/i18n/useBackofficeReactTranslation.js +0 -9
  321. package/lib/esm/i18n/useBackofficeReactTranslation.js.map +0 -1
  322. package/lib/esm/i18n/useReviewStatusLabel.js +0 -19
  323. package/lib/esm/i18n/useReviewStatusLabel.js.map +0 -1
  324. package/lib/esm/i18n/useSharedTranslation.js +0 -9
  325. package/lib/esm/i18n/useSharedTranslation.js.map +0 -1
  326. package/lib/esm/index.js +0 -37
  327. package/lib/esm/modules/base64.js +0 -23
  328. package/lib/esm/modules/base64.js.map +0 -1
  329. package/lib/esm/modules/formatFileSize.js +0 -28
  330. package/lib/esm/modules/formatFileSize.js.map +0 -1
  331. package/lib/esm/modules/sharedSchemaTypes.js +0 -0
  332. package/lib/esm/modules/webauthn.js +0 -33
  333. package/lib/esm/modules/webauthn.js.map +0 -1
  334. package/lib/esm/pages/BackofficeAcceptInvitationPage.js +0 -24
  335. package/lib/esm/pages/BackofficeAcceptInvitationPage.js.map +0 -1
  336. package/lib/esm/pages/BackofficeDashboardPage.js +0 -197
  337. package/lib/esm/pages/BackofficeDashboardPage.js.map +0 -1
  338. package/lib/esm/pages/BackofficeEntityDetailLayoutPage.js +0 -18
  339. package/lib/esm/pages/BackofficeEntityDetailLayoutPage.js.map +0 -1
  340. package/lib/esm/pages/BackofficeEntityDetailPage.js +0 -837
  341. package/lib/esm/pages/BackofficeEntityDetailPage.js.map +0 -1
  342. package/lib/esm/pages/BackofficeEntityDetailUnknownPageRedirect.js.map +0 -1
  343. package/lib/esm/pages/BackofficeEntityListPage.js +0 -363
  344. package/lib/esm/pages/BackofficeEntityListPage.js.map +0 -1
  345. package/lib/esm/pages/BackofficeLayoutPage.js +0 -137
  346. package/lib/esm/pages/BackofficeLayoutPage.js.map +0 -1
  347. package/lib/esm/pages/BackofficeLoginPage.js +0 -46
  348. package/lib/esm/pages/BackofficeLoginPage.js.map +0 -1
  349. package/lib/esm/pages/BackofficePasswordResetCompletePage.js +0 -59
  350. package/lib/esm/pages/BackofficePasswordResetCompletePage.js.map +0 -1
  351. package/lib/esm/pages/BackofficePasswordResetRequestPage.js.map +0 -1
  352. package/lib/esm/pages/BackofficeVerifyEmailPage.js +0 -59
  353. package/lib/esm/pages/BackofficeVerifyEmailPage.js.map +0 -1
  354. package/lib/esm/pages/backofficeDashboardPage.css.js +0 -8
  355. package/lib/esm/pages/backofficeDashboardPage.css.js.map +0 -1
  356. package/lib/esm/pages/backofficeEntityDetailPage.css.js +0 -8
  357. package/lib/esm/pages/backofficeEntityDetailPage.css.js.map +0 -1
  358. package/lib/esm/pages/backofficeEntityListPage.css.js +0 -8
  359. package/lib/esm/pages/backofficeEntityListPage.css.js.map +0 -1
  360. package/lib/esm/pages/detail/BackofficeEntityDetailLayoutContext.js.map +0 -1
  361. package/lib/esm/pages/detail/buildTabsItems.js +0 -10
  362. package/lib/esm/pages/detail/buildTabsItems.js.map +0 -1
  363. package/lib/esm/pages/detail/pageResolution.js.map +0 -1
  364. package/lib/esm/provider/BackofficeConfigContext.js.map +0 -1
  365. package/lib/esm/provider/BackofficeProvider.js +0 -152
  366. package/lib/esm/provider/BackofficeProvider.js.map +0 -1
  367. package/lib/esm/provider/entityRegistry.js +0 -91
  368. package/lib/esm/provider/entityRegistry.js.map +0 -1
  369. package/lib/esm/provider/lazyValue.js +0 -14
  370. package/lib/esm/provider/lazyValue.js.map +0 -1
  371. package/lib/esm/provider/types.js +0 -0
  372. package/lib/esm/provider/useBackofficeEntityLoader.js +0 -137
  373. package/lib/esm/provider/useBackofficeEntityLoader.js.map +0 -1
  374. package/lib/esm/provider/useBackofficeLazyValue.js.map +0 -1
  375. package/lib/esm/relay/RelayProvider.js +0 -12
  376. package/lib/esm/relay/RelayProvider.js.map +0 -1
  377. package/lib/esm/relay/createInlineDataReader.js +0 -2
  378. package/lib/esm/relay/createInlineReader.js +0 -7
  379. package/lib/esm/relay/createInlineReader.js.map +0 -1
  380. package/lib/esm/relay/envHelpers.js +0 -46
  381. package/lib/esm/relay/envHelpers.js.map +0 -1
  382. package/lib/esm/relay/environment.js.map +0 -1
  383. package/lib/esm/relay/identityView.js +0 -6
  384. package/lib/esm/relay/identityView.js.map +0 -1
  385. package/lib/esm/relay/mutationResult.js.map +0 -1
  386. package/lib/esm/relay/useRelayEnvironment.js.map +0 -1
  387. package/lib/esm/router/backofficeAuthPaths.js.map +0 -1
  388. package/lib/esm/router/createBackofficeRoutes.js +0 -273
  389. package/lib/esm/router/createBackofficeRoutes.js.map +0 -1
  390. package/lib/esm/style.js +0 -1
package/lib/esm/index.js DELETED
@@ -1,37 +0,0 @@
1
- import { LoginFlow as e } from "./auth/login/LoginFlow.js";
2
- import { synchronizeAuthStatusQuery as t } from "./auth/login/synchronizeAuthStatusQuery.js";
3
- import { AcceptInvitationScreen as n } from "./auth/pages/AcceptInvitationScreen.js";
4
- import { PasswordResetCompleteScreen as r } from "./auth/pages/PasswordResetCompleteScreen.js";
5
- import { PasswordResetRequestScreen as i } from "./auth/pages/PasswordResetRequestScreen.js";
6
- import { VerifyEmailScreen as a } from "./auth/pages/VerifyEmailScreen.js";
7
- import { requireField as o, requireLinkedRecordId as s, resolveAgentStartOutcome as c, resolveMutationOutcome as l } from "./relay/mutationResult.js";
8
- import { useBackofficeConfig as u } from "./provider/BackofficeConfigContext.js";
9
- import { EntityIdFilterField as d } from "./components/backoffice/filters/EntityIdFilterField.js";
10
- import { BackofficeErrorBoundary as f } from "./components/backoffice/errors/BackofficeErrorBoundary.js";
11
- import { BackofficeDetailBadgeRow as p } from "./components/backoffice/detail/BackofficeDetailBadgeRow.js";
12
- import { BackofficeDetailSection as m } from "./components/backoffice/detail/BackofficeDetailSection.js";
13
- import { BackofficeDetailPayload as h } from "./components/backoffice/detail/BackofficeDetailPayload.js";
14
- import { BackofficeFilterAction as g } from "./components/backoffice/filters/BackofficeFilterAction.js";
15
- import { BackofficeOverviewLayout as _ } from "./components/backoffice/overview/BackofficeOverviewLayout.js";
16
- import { BackofficeInlineFilterRow as v } from "./components/backoffice/shared/BackofficeInlineFilterRow.js";
17
- import { BackofficeRelatedCountLink as y } from "./components/backoffice/refs/BackofficeRelatedCountLink.js";
18
- import { BackofficeTabbedDetailShell as b } from "./components/backoffice/scaffolds/BackofficeTabbedDetailShell.js";
19
- import { configureRelayEnvironment as x, getEnvironment as S, getNetwork as C, resetRelayStore as w } from "./relay/environment.js";
20
- import { base64UrlToBuffer as T, bufferToBase64Url as E, mapWebAuthnRegistrationError as D, parseSignCount as O } from "./modules/webauthn.js";
21
- import { createUseAuth as k } from "./hooks/useAuth.js";
22
- import { useBackofficeListUrlState as A } from "./hooks/useBackofficeListUrlState.js";
23
- import { useConditionalSubscription as j } from "./hooks/useConditionalSubscription.js";
24
- import M from "./hooks/useCopyToClipboard.js";
25
- import { useRefetchNeededReload as N } from "./hooks/useRefetchNeededReload.js";
26
- import { createI18nInstance as P } from "./i18n/createI18nInstance.js";
27
- import { backofficeReactI18nResources as F } from "./i18n/resources.js";
28
- import { useReviewStatusLabel as I } from "./i18n/useReviewStatusLabel.js";
29
- import { RelayProvider as L } from "./relay/RelayProvider.js";
30
- import { BackofficeProvider as R } from "./provider/BackofficeProvider.js";
31
- import { createBackofficeLazyValue as z } from "./provider/lazyValue.js";
32
- import { decodeBase64ToUtf8 as B, encodeUtf8ToBase64 as V } from "./modules/base64.js";
33
- import { formatFileSize as H } from "./modules/formatFileSize.js";
34
- import { resolveVisibleDetailPages as U } from "./pages/detail/pageResolution.js";
35
- import { createInlineDataReader as W } from "./relay/createInlineReader.js";
36
- import { identityView as G } from "./relay/identityView.js";
37
- export { n as AcceptInvitationScreen, p as BackofficeDetailBadgeRow, h as BackofficeDetailPayload, m as BackofficeDetailSection, f as BackofficeErrorBoundary, g as BackofficeFilterAction, v as BackofficeInlineFilterRow, _ as BackofficeOverviewLayout, R as BackofficeProvider, y as BackofficeRelatedCountLink, b as BackofficeTabbedDetailShell, d as EntityIdFilterField, e as LoginFlow, r as PasswordResetCompleteScreen, i as PasswordResetRequestScreen, L as RelayProvider, a as VerifyEmailScreen, F as backofficeReactI18nResources, T as base64UrlToBuffer, E as bufferToBase64Url, x as configureRelayEnvironment, z as createBackofficeLazyValue, P as createI18nInstance, W as createInlineDataReader, k as createUseAuth, B as decodeBase64ToUtf8, V as encodeUtf8ToBase64, H as formatFileSize, S as getEnvironment, C as getNetwork, G as identityView, D as mapWebAuthnRegistrationError, O as parseSignCount, o as requireField, s as requireLinkedRecordId, w as resetRelayStore, c as resolveAgentStartOutcome, l as resolveMutationOutcome, U as resolveVisibleDetailPages, t as synchronizeAuthStatusQuery, u as useBackofficeConfig, A as useBackofficeListUrlState, j as useConditionalSubscription, M as useCopyToClipboard, N as useRefetchNeededReload, I as useReviewStatusLabel };
@@ -1,23 +0,0 @@
1
- //#region src/modules/base64.ts
2
- function e(e) {
3
- if (typeof e != "string") throw TypeError("encodeUtf8ToBase64 expects a string input.");
4
- if (typeof Buffer < "u") return Buffer.from(e, "utf-8").toString("base64");
5
- if (typeof globalThis.btoa == "function") {
6
- let t = encodeURIComponent(e).replace(/%([0-9A-F]{2})/g, (e, t) => String.fromCharCode(Number.parseInt(t, 16)));
7
- return globalThis.btoa(t);
8
- }
9
- throw Error("No base64 encoder is available in this environment.");
10
- }
11
- function t(e) {
12
- if (typeof e != "string") throw TypeError("decodeBase64ToUtf8 expects a string input.");
13
- if (typeof Buffer < "u") return Buffer.from(e, "base64").toString("utf-8");
14
- if (typeof globalThis.atob == "function") {
15
- let t = globalThis.atob(e), n = Array.from(t, (e) => `%${e.charCodeAt(0).toString(16).padStart(2, "0")}`).join("");
16
- return decodeURIComponent(n);
17
- }
18
- throw Error("No base64 decoder is available in this environment.");
19
- }
20
- //#endregion
21
- export { t as decodeBase64ToUtf8, e as encodeUtf8ToBase64 };
22
-
23
- //# sourceMappingURL=base64.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base64.js","names":[],"sources":["../../../src/modules/base64.ts"],"sourcesContent":["/** Encode a UTF-8 string into base64 using native helpers when available. */\nexport function encodeUtf8ToBase64(value: string): string {\n if (typeof value !== 'string') {\n throw new TypeError('encodeUtf8ToBase64 expects a string input.');\n }\n\n if (typeof Buffer !== 'undefined') {\n return Buffer.from(value, 'utf-8').toString('base64');\n }\n\n if (typeof globalThis.btoa === 'function') {\n const utf8 = encodeURIComponent(value).replace(\n /%([0-9A-F]{2})/g,\n (_, code) => {\n return String.fromCharCode(Number.parseInt(code, 16));\n },\n );\n return globalThis.btoa(utf8);\n }\n\n throw new Error('No base64 encoder is available in this environment.');\n}\n\n/** Decode a base64 string into UTF-8 using native helpers when available. */\nexport function decodeBase64ToUtf8(value: string): string {\n if (typeof value !== 'string') {\n throw new TypeError('decodeBase64ToUtf8 expects a string input.');\n }\n\n if (typeof Buffer !== 'undefined') {\n return Buffer.from(value, 'base64').toString('utf-8');\n }\n\n if (typeof globalThis.atob === 'function') {\n const binary = globalThis.atob(value);\n const percentEncoded = Array.from(binary, (char) => {\n const code = char.charCodeAt(0).toString(16).padStart(2, '0');\n return `%${code}`;\n }).join('');\n return decodeURIComponent(percentEncoded);\n }\n\n throw new Error('No base64 decoder is available in this environment.');\n}\n"],"mappings":";AACA,SAAgB,EAAmB,GAAuB;AACxD,KAAI,OAAO,KAAU,SACnB,OAAU,UAAU,6CAA6C;AAGnE,KAAI,OAAO,SAAW,IACpB,QAAO,OAAO,KAAK,GAAO,QAAQ,CAAC,SAAS,SAAS;AAGvD,KAAI,OAAO,WAAW,QAAS,YAAY;EACzC,IAAM,IAAO,mBAAmB,EAAM,CAAC,QACrC,oBACC,GAAG,MACK,OAAO,aAAa,OAAO,SAAS,GAAM,GAAG,CAAC,CAExD;AACD,SAAO,WAAW,KAAK,EAAK;;AAG9B,OAAU,MAAM,sDAAsD;;AAIxE,SAAgB,EAAmB,GAAuB;AACxD,KAAI,OAAO,KAAU,SACnB,OAAU,UAAU,6CAA6C;AAGnE,KAAI,OAAO,SAAW,IACpB,QAAO,OAAO,KAAK,GAAO,SAAS,CAAC,SAAS,QAAQ;AAGvD,KAAI,OAAO,WAAW,QAAS,YAAY;EACzC,IAAM,IAAS,WAAW,KAAK,EAAM,EAC/B,IAAiB,MAAM,KAAK,IAAS,MAElC,IADM,EAAK,WAAW,EAAE,CAAC,SAAS,GAAG,CAAC,SAAS,GAAG,IAAI,GAE7D,CAAC,KAAK,GAAG;AACX,SAAO,mBAAmB,EAAe;;AAG3C,OAAU,MAAM,sDAAsD"}
@@ -1,28 +0,0 @@
1
- //#region src/modules/formatFileSize.ts
2
- var e = [
3
- "B",
4
- "KB",
5
- "MB",
6
- "GB",
7
- "TB"
8
- ], t = 1024, n = (e, t) => {
9
- if (t === "B") return Math.round(e).toString();
10
- let n = 1;
11
- return e >= 10 && (n = 0), e.toFixed(n);
12
- };
13
- function r(r) {
14
- let i = r;
15
- Number.isFinite(r) || (i = 0);
16
- let a = i < 0, o = Math.abs(i), s = 0;
17
- for (; o >= t && s < e.length - 1;) o /= t, s += 1;
18
- let c = e[s] ?? "B", l = o;
19
- return a && (l = -o), {
20
- value: l,
21
- unit: c,
22
- displayValue: n(l, c)
23
- };
24
- }
25
- //#endregion
26
- export { r as formatFileSize };
27
-
28
- //# sourceMappingURL=formatFileSize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatFileSize.js","names":[],"sources":["../../../src/modules/formatFileSize.ts"],"sourcesContent":["export type FileSizeUnit = 'B' | 'KB' | 'MB' | 'GB' | 'TB';\n\nexport type FileSizeResult = {\n value: number;\n unit: FileSizeUnit;\n displayValue: string;\n};\n\nconst SIZE_UNITS: readonly FileSizeUnit[] = ['B', 'KB', 'MB', 'GB', 'TB'];\nconst BASE = 1024;\n\nconst roundValue = (value: number, unit: FileSizeUnit): string => {\n if (unit === 'B') {\n return Math.round(value).toString();\n }\n let decimals = 1;\n if (value >= 10) {\n decimals = 0;\n }\n return value.toFixed(decimals);\n};\n\n/** Format a byte count into a human-readable value and unit. */\nexport function formatFileSize(bytes: number): FileSizeResult {\n let normalized = bytes;\n if (!Number.isFinite(bytes)) {\n normalized = 0;\n }\n const isNegative = normalized < 0;\n let value = Math.abs(normalized);\n let unitIndex = 0;\n\n while (value >= BASE && unitIndex < SIZE_UNITS.length - 1) {\n value /= BASE;\n unitIndex += 1;\n }\n\n const unit = SIZE_UNITS[unitIndex] ?? 'B';\n let signedValue = value;\n if (isNegative) {\n signedValue = -value;\n }\n\n return {\n value: signedValue,\n unit,\n displayValue: roundValue(signedValue, unit),\n };\n}\n"],"mappings":";AAQA,IAAM,IAAsC;CAAC;CAAK;CAAM;CAAM;CAAM;CAAK,EACnE,IAAO,MAEP,KAAc,GAAe,MAA+B;AAChE,KAAI,MAAS,IACX,QAAO,KAAK,MAAM,EAAM,CAAC,UAAU;CAErC,IAAI,IAAW;AAIf,QAHI,KAAS,OACX,IAAW,IAEN,EAAM,QAAQ,EAAS;;AAIhC,SAAgB,EAAe,GAA+B;CAC5D,IAAI,IAAa;AACjB,CAAK,OAAO,SAAS,EAAM,KACzB,IAAa;CAEf,IAAM,IAAa,IAAa,GAC5B,IAAQ,KAAK,IAAI,EAAW,EAC5B,IAAY;AAEhB,QAAO,KAAS,KAAQ,IAAY,EAAW,SAAS,GAEtD,CADA,KAAS,GACT,KAAa;CAGf,IAAM,IAAO,EAAW,MAAc,KAClC,IAAc;AAKlB,QAJI,MACF,IAAc,CAAC,IAGV;EACL,OAAO;EACP;EACA,cAAc,EAAW,GAAa,EAAK;EAC5C"}
File without changes
@@ -1,33 +0,0 @@
1
- //#region src/modules/webauthn.ts
2
- function e(e) {
3
- let t = new Uint8Array(e), n = "";
4
- for (let e of t) n += String.fromCharCode(e);
5
- return btoa(n).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
6
- }
7
- function t(e) {
8
- let t = e.replace(/-/g, "+").replace(/_/g, "/"), n = t.length % 4, r = "";
9
- if (n === 2) r = "==";
10
- else if (n === 3) r = "=";
11
- else if (n === 1) throw Error("Invalid base64url input length.");
12
- let i = `${t}${r}`, a = atob(i), o = new Uint8Array(a.length);
13
- for (let e = 0; e < a.length; e += 1) o[e] = a.charCodeAt(e);
14
- return o.buffer;
15
- }
16
- function n(e) {
17
- if (!(e instanceof DOMException)) return "failed";
18
- switch (e.name) {
19
- case "NotAllowedError":
20
- case "AbortError": return "cancelled";
21
- case "InvalidStateError": return "credentialInUse";
22
- case "SecurityError":
23
- case "NotSupportedError": return "notSupported";
24
- default: return "failed";
25
- }
26
- }
27
- function r(e) {
28
- return e.byteLength < 37 ? 0 : new DataView(e).getUint32(33, !1);
29
- }
30
- //#endregion
31
- export { t as base64UrlToBuffer, e as bufferToBase64Url, n as mapWebAuthnRegistrationError, r as parseSignCount };
32
-
33
- //# sourceMappingURL=webauthn.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"webauthn.js","names":[],"sources":["../../../src/modules/webauthn.ts"],"sourcesContent":["/**\n * Buffer to base64 url\n */\nexport function bufferToBase64Url(input: ArrayBuffer): string {\n const byteArray = new Uint8Array(input);\n let binary = '';\n for (const byte of byteArray) {\n binary += String.fromCharCode(byte);\n }\n return btoa(binary)\n .replace(/\\+/g, '-')\n .replace(/\\//g, '_')\n .replace(/=+$/, '');\n}\n\n/**\n * Base64 url to buffer\n */\nexport function base64UrlToBuffer(input: string): ArrayBuffer {\n const normalized = input.replace(/-/g, '+').replace(/_/g, '/');\n const remainder = normalized.length % 4;\n let padding = '';\n if (remainder === 2) {\n padding = '==';\n } else if (remainder === 3) {\n padding = '=';\n } else if (remainder === 1) {\n throw new Error('Invalid base64url input length.');\n }\n const padded = `${normalized}${padding}`;\n const binary = atob(padded);\n const output = new Uint8Array(binary.length);\n for (let i = 0; i < binary.length; i += 1) {\n output[i] = binary.charCodeAt(i);\n }\n return output.buffer;\n}\n\nexport type WebAuthnRegistrationErrorKind =\n | 'cancelled'\n | 'credentialInUse'\n | 'notSupported'\n | 'failed';\n\n/**\n * Maps a browser WebAuthn registration error to a stable UI category.\n */\nexport function mapWebAuthnRegistrationError(\n error: unknown,\n): WebAuthnRegistrationErrorKind {\n if (!(error instanceof DOMException)) {\n return 'failed';\n }\n\n switch (error.name) {\n case 'NotAllowedError':\n case 'AbortError':\n return 'cancelled';\n case 'InvalidStateError':\n return 'credentialInUse';\n case 'SecurityError':\n case 'NotSupportedError':\n return 'notSupported';\n default:\n return 'failed';\n }\n}\n\n/**\n * Parse sign count\n */\nexport function parseSignCount(authenticatorData: ArrayBuffer): number {\n if (authenticatorData.byteLength < 37) {\n return 0;\n }\n const view = new DataView(authenticatorData);\n return view.getUint32(33, false);\n}\n"],"mappings":";AAGA,SAAgB,EAAkB,GAA4B;CAC5D,IAAM,IAAY,IAAI,WAAW,EAAM,EACnC,IAAS;AACb,MAAK,IAAM,KAAQ,EACjB,MAAU,OAAO,aAAa,EAAK;AAErC,QAAO,KAAK,EAAO,CAChB,QAAQ,OAAO,IAAI,CACnB,QAAQ,OAAO,IAAI,CACnB,QAAQ,OAAO,GAAG;;AAMvB,SAAgB,EAAkB,GAA4B;CAC5D,IAAM,IAAa,EAAM,QAAQ,MAAM,IAAI,CAAC,QAAQ,MAAM,IAAI,EACxD,IAAY,EAAW,SAAS,GAClC,IAAU;AACd,KAAI,MAAc,EAChB,KAAU;UACD,MAAc,EACvB,KAAU;UACD,MAAc,EACvB,OAAU,MAAM,kCAAkC;CAEpD,IAAM,IAAS,GAAG,IAAa,KACzB,IAAS,KAAK,EAAO,EACrB,IAAS,IAAI,WAAW,EAAO,OAAO;AAC5C,MAAK,IAAI,IAAI,GAAG,IAAI,EAAO,QAAQ,KAAK,EACtC,GAAO,KAAK,EAAO,WAAW,EAAE;AAElC,QAAO,EAAO;;AAYhB,SAAgB,EACd,GAC+B;AAC/B,KAAI,EAAE,aAAiB,cACrB,QAAO;AAGT,SAAQ,EAAM,MAAd;EACE,KAAK;EACL,KAAK,aACH,QAAO;EACT,KAAK,oBACH,QAAO;EACT,KAAK;EACL,KAAK,oBACH,QAAO;EACT,QACE,QAAO;;;AAOb,SAAgB,EAAe,GAAwC;AAKrE,QAJI,EAAkB,aAAa,KAC1B,IAEI,IAAI,SAAS,EAAkB,CAChC,UAAU,IAAI,GAAM"}
@@ -1,24 +0,0 @@
1
- import { AcceptInvitationScreen as e } from "../auth/pages/AcceptInvitationScreen.js";
2
- import { useBackofficeConfig as t } from "../provider/BackofficeConfigContext.js";
3
- import { useBackofficeAuth as n } from "../hooks/useBackofficeAuth.js";
4
- import { getBackofficeLoginPath as r } from "../router/backofficeAuthPaths.js";
5
- import { jsx as i } from "react/jsx-runtime";
6
- import { useCallback as a, useContext as o } from "react";
7
- import { RoutingContext as s } from "@plumile/router";
8
- //#region src/pages/BackofficeAcceptInvitationPage.tsx
9
- var c = () => {
10
- let c = o(s), { basePath: l } = t();
11
- return /* @__PURE__ */ i(e, {
12
- auth: n(),
13
- onSuccessRedirect: a(() => {
14
- c?.history.push({ pathname: l });
15
- }, [l, c?.history]),
16
- onBackToLogin: a(() => {
17
- c?.history.push({ pathname: r(l) });
18
- }, [l, c?.history])
19
- });
20
- };
21
- //#endregion
22
- export { c as BackofficeAcceptInvitationPage, c as default };
23
-
24
- //# sourceMappingURL=BackofficeAcceptInvitationPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BackofficeAcceptInvitationPage.js","names":[],"sources":["../../../src/pages/BackofficeAcceptInvitationPage.tsx"],"sourcesContent":["import { useCallback, useContext, type JSX } from 'react';\nimport { RoutingContext } from '@plumile/router';\n\nimport { AcceptInvitationScreen } from '../auth/pages/AcceptInvitationScreen.js';\nimport { useBackofficeAuth } from '../hooks/useBackofficeAuth.js';\nimport { useBackofficeConfig } from '../provider/BackofficeConfigContext.js';\nimport { getBackofficeLoginPath } from '../router/backofficeAuthPaths.js';\n\nexport const BackofficeAcceptInvitationPage = (): JSX.Element => {\n const routerContext = useContext(RoutingContext);\n const { basePath } = useBackofficeConfig();\n const auth = useBackofficeAuth();\n\n const handleSuccessRedirect = useCallback(() => {\n routerContext?.history.push({ pathname: basePath });\n }, [basePath, routerContext?.history]);\n\n const handleBackToLogin = useCallback(() => {\n routerContext?.history.push({ pathname: getBackofficeLoginPath(basePath) });\n }, [basePath, routerContext?.history]);\n\n return (\n <AcceptInvitationScreen\n auth={auth}\n onSuccessRedirect={handleSuccessRedirect}\n onBackToLogin={handleBackToLogin}\n />\n );\n};\n\nexport default BackofficeAcceptInvitationPage;\n"],"mappings":";;;;;;;;AAQA,IAAa,UAAoD;CAC/D,IAAM,IAAgB,EAAW,EAAe,EAC1C,EAAE,gBAAa,GAAqB;AAW1C,QACE,kBAAC,GAAD;EACQ,MAZG,GAAmB;EAa5B,mBAX0B,QAAkB;AAC9C,MAAe,QAAQ,KAAK,EAAE,UAAU,GAAU,CAAC;KAClD,CAAC,GAAU,GAAe,QAAQ,CAAC;EAUlC,eARsB,QAAkB;AAC1C,MAAe,QAAQ,KAAK,EAAE,UAAU,EAAuB,EAAS,EAAE,CAAC;KAC1E,CAAC,GAAU,GAAe,QAAQ,CAAC;EAOlC,CAAA"}
@@ -1,197 +0,0 @@
1
- import { useBackofficeReactTranslation as e } from "../i18n/useBackofficeReactTranslation.js";
2
- import { useBackofficeConfig as t } from "../provider/BackofficeConfigContext.js";
3
- import { BackofficeErrorBoundary as n } from "../components/backoffice/errors/BackofficeErrorBoundary.js";
4
- import { buildDataTableColumns as r } from "../components/backoffice/columns/buildDataTableColumns.js";
5
- import { BackofficeRightPageLayout as i } from "../components/backoffice/layout/breadcrumb/BackofficeRightPageLayout.js";
6
- import { buildDashboardBreadcrumb as a } from "../components/backoffice/layout/breadcrumb/buildBreadcrumbs.js";
7
- import { useBackofficeDashboardConfig as o } from "../provider/useBackofficeLazyValue.js";
8
- import { links as s, tileBody as c, tileCount as l, tilesGrid as u } from "./backofficeDashboardPage.css.js";
9
- import { jsx as d, jsxs as f } from "react/jsx-runtime";
10
- import { useTranslation as p } from "react-i18next";
11
- import { DataTable as m, DetailPageTemplate as h, InfoTile as g } from "@plumile/ui";
12
- import { Suspense as _ } from "react";
13
- import * as v from "react-relay";
14
- import { Link as y } from "@plumile/router";
15
- //#region src/pages/BackofficeDashboardPage.tsx
16
- var { useLazyLoadQuery: b } = v, x = (e, t) => e(t), S = (e, t) => {
17
- switch (e.kind) {
18
- case "entityCount":
19
- case "shortcut": return e.label;
20
- case "tablePreview":
21
- case "textBlock": return e.title;
22
- default: return t.title;
23
- }
24
- }, C = (e) => "query" in e && e.query != null, w = ({ widget: n, globalData: i }) => {
25
- let { t: a } = p(), { t: o } = e(), { entities: u } = t(), h = (e) => "resolve" in n && n.resolve != null ? n.resolve(e) : null;
26
- if (n.kind === "textBlock") return /* @__PURE__ */ d(g, {
27
- title: x(n.title, a),
28
- children: /* @__PURE__ */ d("div", {
29
- className: c,
30
- children: x(n.body, a)
31
- })
32
- });
33
- if (n.kind === "shortcut") {
34
- let e = u[n.entityId];
35
- if (e == null) return null;
36
- let t = x(n.label, a);
37
- return e.kind === "tool" ? /* @__PURE__ */ d(g, {
38
- title: t,
39
- children: /* @__PURE__ */ d("div", {
40
- className: s,
41
- children: /* @__PURE__ */ d(y, {
42
- to: e.routes.list,
43
- children: o("dashboard.actions.openTool")
44
- })
45
- })
46
- }) : /* @__PURE__ */ d(g, {
47
- title: t,
48
- children: /* @__PURE__ */ d("div", {
49
- className: s,
50
- children: /* @__PURE__ */ d(y, {
51
- to: e.routes.list,
52
- children: o("dashboard.actions.openList")
53
- })
54
- })
55
- });
56
- }
57
- if (n.kind === "tablePreview") {
58
- let e = h(i);
59
- if (e == null) return null;
60
- let t = r(e.columns, {
61
- tApp: a,
62
- t: o,
63
- resolveEntityHref: (e, t) => {
64
- let n = u[e];
65
- return n == null ? null : n.routes.detail(t);
66
- }
67
- });
68
- return /* @__PURE__ */ d(g, {
69
- title: x(n.title, a),
70
- children: /* @__PURE__ */ d(m, {
71
- columns: t,
72
- rows: e.rows,
73
- getRowId: (e, t) => {
74
- if (typeof e == "object" && e) {
75
- let { id: t } = e;
76
- if (typeof t == "string" && t.trim() !== "") return t;
77
- }
78
- return String(t);
79
- }
80
- })
81
- });
82
- }
83
- if (n.kind === "entityCount") {
84
- let e = u[n.entityId];
85
- if (e?.kind !== "list-detail") return null;
86
- let t = h(i), r = o("common.notAvailable");
87
- return typeof t?.count == "number" && (r = t.count), /* @__PURE__ */ d(g, {
88
- title: x(n.label, a),
89
- children: /* @__PURE__ */ f("div", {
90
- className: c,
91
- children: [/* @__PURE__ */ d("div", {
92
- className: l,
93
- children: r
94
- }), /* @__PURE__ */ d("div", {
95
- className: s,
96
- children: /* @__PURE__ */ d(y, {
97
- to: e.routes.list,
98
- children: o("dashboard.actions.openList")
99
- })
100
- })]
101
- })
102
- });
103
- }
104
- return null;
105
- }, T = ({ widget: e }) => /* @__PURE__ */ d(w, {
106
- widget: e,
107
- globalData: b(e.query, {}, { fetchPolicy: "store-or-network" })
108
- }), E = ({ config: t, globalData: r }) => {
109
- let { t: i } = p(), { t: a } = e();
110
- return /* @__PURE__ */ d(h, {
111
- header: {
112
- title: x(t.title, i),
113
- subtitle: (t.subtitle == null ? void 0 : x(t.subtitle, i)) ?? a("dashboard.subtitle")
114
- },
115
- children: /* @__PURE__ */ d("div", {
116
- className: u,
117
- children: t.widgets.map((e) => {
118
- let o = C(e) ? /* @__PURE__ */ d(T, { widget: e }) : /* @__PURE__ */ d(w, {
119
- widget: e,
120
- globalData: r
121
- });
122
- return /* @__PURE__ */ d(n, {
123
- fallback: () => /* @__PURE__ */ d(g, {
124
- title: x(S(e, t), i),
125
- children: /* @__PURE__ */ d("div", {
126
- className: c,
127
- children: a("common.notAvailable")
128
- })
129
- }),
130
- children: /* @__PURE__ */ d(_, {
131
- fallback: /* @__PURE__ */ d(g, {
132
- title: x(S(e, t), i),
133
- children: /* @__PURE__ */ d("div", {
134
- className: c,
135
- children: a("common.loading")
136
- })
137
- }),
138
- children: o
139
- })
140
- }, e.id);
141
- })
142
- })
143
- });
144
- }, D = ({ config: e }) => /* @__PURE__ */ d(E, {
145
- config: e,
146
- globalData: b(e.query, {}, { fetchPolicy: "store-or-network" })
147
- }), O = () => {
148
- let { t: n } = p(), { t: r } = e(), { entities: m } = t(), _ = o(), v = a(r);
149
- if (_ == null) {
150
- let e = Object.values(m).filter((e) => e.kind === "list-detail" && e.hasList).map((e) => ({
151
- config: e,
152
- label: x(e.label, n)
153
- })).sort((e, t) => e.label.localeCompare(t.label));
154
- return /* @__PURE__ */ d(i, {
155
- breadcrumb: v,
156
- children: /* @__PURE__ */ d(h, {
157
- header: {
158
- title: r("dashboard.title"),
159
- subtitle: r("dashboard.subtitle")
160
- },
161
- children: /* @__PURE__ */ d("div", {
162
- className: u,
163
- children: e.map(({ config: e, label: t }) => /* @__PURE__ */ d(g, {
164
- title: t,
165
- children: /* @__PURE__ */ f("div", {
166
- className: c,
167
- children: [/* @__PURE__ */ d("div", {
168
- className: l,
169
- children: r("common.notAvailable")
170
- }), /* @__PURE__ */ d("div", {
171
- className: s,
172
- children: /* @__PURE__ */ d(y, {
173
- to: e.routes.list,
174
- children: r("dashboard.actions.openList")
175
- })
176
- })]
177
- })
178
- }, e.id))
179
- })
180
- })
181
- });
182
- }
183
- return _.query == null ? /* @__PURE__ */ d(i, {
184
- breadcrumb: v,
185
- children: /* @__PURE__ */ d(E, {
186
- config: _,
187
- globalData: null
188
- })
189
- }) : /* @__PURE__ */ d(i, {
190
- breadcrumb: v,
191
- children: /* @__PURE__ */ d(D, { config: _ })
192
- });
193
- };
194
- //#endregion
195
- export { O as BackofficeDashboardPage, O as default };
196
-
197
- //# sourceMappingURL=BackofficeDashboardPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BackofficeDashboardPage.js","names":[],"sources":["../../../src/pages/BackofficeDashboardPage.tsx"],"sourcesContent":["/* eslint-disable no-ternary */\nimport { type JSX, Suspense } from 'react';\nimport { Link } from '@plumile/router';\nimport type {\n BackofficeDashboardConfig,\n BackofficeDashboardWidget,\n I18nLabel,\n} from '@plumile/backoffice-core/types.js';\nimport { DataTable, DetailPageTemplate, InfoTile } from '@plumile/ui';\nimport type { TFunction } from 'i18next';\nimport { useTranslation } from 'react-i18next';\nimport * as ReactRelay from 'react-relay';\nimport type { GraphQLTaggedNode, OperationType } from 'relay-runtime';\n\nimport { BackofficeErrorBoundary } from '../components/backoffice/errors/BackofficeErrorBoundary.js';\nimport { useBackofficeReactTranslation } from '../i18n/useBackofficeReactTranslation.js';\nimport { useBackofficeConfig } from '../provider/BackofficeConfigContext.js';\nimport { useBackofficeDashboardConfig } from '../provider/useBackofficeLazyValue.js';\nimport { buildDataTableColumns } from '../components/backoffice/columns/buildDataTableColumns.js';\nimport { BackofficeRightPageLayout } from '../components/backoffice/layout/breadcrumb/BackofficeRightPageLayout.js';\nimport { buildDashboardBreadcrumb } from '../components/backoffice/layout/breadcrumb/buildBreadcrumbs.js';\n\nimport * as styles from './backofficeDashboardPage.css.js';\n\nconst { useLazyLoadQuery } = ReactRelay;\n\nconst resolveLabel = (label: I18nLabel, tApp: TFunction): string => {\n return label(tApp);\n};\n\nconst getWidgetLabel = (\n widget: BackofficeDashboardWidget,\n config: BackofficeDashboardConfig,\n): I18nLabel => {\n switch (widget.kind) {\n case 'entityCount':\n case 'shortcut':\n return widget.label;\n case 'tablePreview':\n case 'textBlock':\n return widget.title;\n default:\n return config.title;\n }\n};\n\nconst hasWidgetQuery = (\n widget: BackofficeDashboardWidget,\n): widget is BackofficeDashboardWidget & { query: GraphQLTaggedNode } => {\n return 'query' in widget && widget.query != null;\n};\n\ntype WidgetContentProps = {\n widget: BackofficeDashboardWidget;\n globalData: unknown;\n};\n\nconst WidgetContent = ({\n widget,\n globalData,\n}: WidgetContentProps): JSX.Element | null => {\n const { t: tApp } = useTranslation();\n const { t } = useBackofficeReactTranslation();\n const { entities } = useBackofficeConfig();\n\n const resolveData = (data: unknown): unknown => {\n if ('resolve' in widget && widget.resolve != null) {\n return widget.resolve(data);\n }\n return null;\n };\n\n if (widget.kind === 'textBlock') {\n const title = resolveLabel(widget.title, tApp);\n const body = resolveLabel(widget.body, tApp);\n return (\n <InfoTile title={title}>\n <div className={styles.tileBody}>{body}</div>\n </InfoTile>\n );\n }\n\n if (widget.kind === 'shortcut') {\n const entity = entities[widget.entityId];\n if (entity == null) {\n return null;\n }\n const title = resolveLabel(widget.label, tApp);\n if (entity.kind === 'tool') {\n return (\n <InfoTile title={title}>\n <div className={styles.links}>\n <Link to={entity.routes.list}>\n {t('dashboard.actions.openTool')}\n </Link>\n </div>\n </InfoTile>\n );\n }\n return (\n <InfoTile title={title}>\n <div className={styles.links}>\n <Link to={entity.routes.list}>{t('dashboard.actions.openList')}</Link>\n </div>\n </InfoTile>\n );\n }\n\n if (widget.kind === 'tablePreview') {\n const resolved = resolveData(globalData) as {\n columns: readonly unknown[];\n rows: readonly unknown[];\n } | null;\n if (resolved == null) {\n return null;\n }\n const columns = buildDataTableColumns(resolved.columns as never, {\n tApp,\n t,\n resolveEntityHref: (entityId, refId) => {\n const entityConfig = entities[entityId];\n if (entityConfig == null) {\n return null;\n }\n return entityConfig.routes.detail(refId);\n },\n });\n const title = resolveLabel(widget.title, tApp);\n return (\n <InfoTile title={title}>\n <DataTable\n columns={columns}\n rows={resolved.rows}\n getRowId={(row, index) => {\n if (row != null && typeof row === 'object') {\n const record = row as Record<string, unknown>;\n const { id } = record;\n if (typeof id === 'string' && id.trim() !== '') {\n return id;\n }\n }\n return String(index);\n }}\n />\n </InfoTile>\n );\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (widget.kind === 'entityCount') {\n const entityManifest = entities[widget.entityId];\n if (entityManifest?.kind !== 'list-detail') {\n return null;\n }\n const resolved = resolveData(globalData) as { count: number | null } | null;\n let countLabel: number | string = t('common.notAvailable');\n if (typeof resolved?.count === 'number') {\n countLabel = resolved.count;\n }\n const title = resolveLabel(widget.label, tApp);\n return (\n <InfoTile title={title}>\n <div className={styles.tileBody}>\n <div className={styles.tileCount}>{countLabel}</div>\n <div className={styles.links}>\n <Link to={entityManifest.routes.list}>\n {t('dashboard.actions.openList')}\n </Link>\n </div>\n </div>\n </InfoTile>\n );\n }\n\n return null;\n};\n\ntype WidgetWithQueryProps = {\n widget: BackofficeDashboardWidget & { query: GraphQLTaggedNode };\n};\n\nconst WidgetWithQuery = ({ widget }: WidgetWithQueryProps): JSX.Element => {\n const data = useLazyLoadQuery<OperationType>(\n widget.query,\n {},\n {\n fetchPolicy: 'store-or-network',\n },\n );\n\n return <WidgetContent widget={widget} globalData={data} />;\n};\n\ntype DashboardContentProps = {\n config: BackofficeDashboardConfig;\n globalData: unknown;\n};\n\nconst DashboardContent = ({\n config,\n globalData,\n}: DashboardContentProps): JSX.Element => {\n const { t: tApp } = useTranslation();\n const { t } = useBackofficeReactTranslation();\n\n const title = resolveLabel(config.title, tApp);\n const subtitle =\n config.subtitle != null ? resolveLabel(config.subtitle, tApp) : undefined;\n\n return (\n <DetailPageTemplate\n header={{\n title,\n subtitle: subtitle ?? t('dashboard.subtitle'),\n }}\n >\n <div className={styles.tilesGrid}>\n {config.widgets.map((widget) => {\n const content = hasWidgetQuery(widget) ? (\n <WidgetWithQuery widget={widget} />\n ) : (\n <WidgetContent widget={widget} globalData={globalData} />\n );\n\n return (\n <BackofficeErrorBoundary\n key={widget.id}\n fallback={() => {\n return (\n <InfoTile\n title={resolveLabel(getWidgetLabel(widget, config), tApp)}\n >\n <div className={styles.tileBody}>\n {t('common.notAvailable')}\n </div>\n </InfoTile>\n );\n }}\n >\n <Suspense\n fallback={\n <InfoTile\n title={resolveLabel(getWidgetLabel(widget, config), tApp)}\n >\n <div className={styles.tileBody}>{t('common.loading')}</div>\n </InfoTile>\n }\n >\n {content}\n </Suspense>\n </BackofficeErrorBoundary>\n );\n })}\n </div>\n </DetailPageTemplate>\n );\n};\n\ntype DashboardWithQueryProps = {\n config: BackofficeDashboardConfig;\n};\n\nconst DashboardWithQuery = ({\n config,\n}: DashboardWithQueryProps): JSX.Element => {\n const data = useLazyLoadQuery<OperationType>(\n config.query as never,\n {},\n { fetchPolicy: 'store-or-network' },\n );\n\n return <DashboardContent config={config} globalData={data} />;\n};\n\nexport const BackofficeDashboardPage = (): JSX.Element => {\n const { t: tApp } = useTranslation();\n const { t } = useBackofficeReactTranslation();\n const { entities } = useBackofficeConfig();\n const dashboard = useBackofficeDashboardConfig();\n const breadcrumb = buildDashboardBreadcrumb(t);\n\n if (dashboard == null) {\n const items = Object.values(entities)\n .filter((config) => {\n return config.kind === 'list-detail' && config.hasList;\n })\n .map((config) => {\n return {\n config,\n label: resolveLabel(config.label, tApp),\n };\n })\n .sort((left, right) => {\n return left.label.localeCompare(right.label);\n });\n\n return (\n <BackofficeRightPageLayout breadcrumb={breadcrumb}>\n <DetailPageTemplate\n header={{\n title: t('dashboard.title'),\n subtitle: t('dashboard.subtitle'),\n }}\n >\n <div className={styles.tilesGrid}>\n {items.map(({ config, label }) => {\n return (\n <InfoTile key={config.id} title={label}>\n <div className={styles.tileBody}>\n <div className={styles.tileCount}>\n {t('common.notAvailable')}\n </div>\n <div className={styles.links}>\n <Link to={config.routes.list}>\n {t('dashboard.actions.openList')}\n </Link>\n </div>\n </div>\n </InfoTile>\n );\n })}\n </div>\n </DetailPageTemplate>\n </BackofficeRightPageLayout>\n );\n }\n\n if (dashboard.query != null) {\n return (\n <BackofficeRightPageLayout breadcrumb={breadcrumb}>\n <DashboardWithQuery config={dashboard} />\n </BackofficeRightPageLayout>\n );\n }\n\n return (\n <BackofficeRightPageLayout breadcrumb={breadcrumb}>\n <DashboardContent config={dashboard} globalData={null} />\n </BackofficeRightPageLayout>\n );\n};\n\nexport default BackofficeDashboardPage;\n"],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { BackofficeEntityDetailLayoutContextProvider as e } from "./detail/BackofficeEntityDetailLayoutContext.js";
2
- import { Fragment as t, jsx as n } from "react/jsx-runtime";
3
- import * as r from "react-relay";
4
- import { HttpRedirect as i } from "@plumile/router";
5
- //#region src/pages/BackofficeEntityDetailLayoutPage.tsx
6
- var { useFragment: a, usePreloadedQuery: o } = r, s = ({ config: r, prepared: s, children: c }) => {
7
- let l = o(r.layoutPage.query, s.layoutQuery), u = r.layoutPage.resolveNode(l, { id: s.id });
8
- if (u == null) throw new i(r.routes.list);
9
- let d = a(r.layoutPage.fragment, u);
10
- return /* @__PURE__ */ n(e, {
11
- value: { layoutView: r.layoutPage.toView(d) },
12
- children: /* @__PURE__ */ n(t, { children: c })
13
- });
14
- };
15
- //#endregion
16
- export { s as BackofficeEntityDetailLayoutPage, s as default };
17
-
18
- //# sourceMappingURL=BackofficeEntityDetailLayoutPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BackofficeEntityDetailLayoutPage.js","names":[],"sources":["../../../src/pages/BackofficeEntityDetailLayoutPage.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\nimport { HttpRedirect } from '@plumile/router';\nimport * as ReactRelay from 'react-relay';\n\nimport type {\n BackofficeEntityManifestItem,\n BackofficePreparedDetailLayoutRoute,\n BackofficeResolvedDetailLayoutFacetConfig,\n} from '@plumile/backoffice-core/types.js';\nimport { BackofficeEntityDetailLayoutContextProvider } from './detail/BackofficeEntityDetailLayoutContext.js';\n\nconst { useFragment, usePreloadedQuery } = ReactRelay;\n\nexport type BackofficeEntityDetailLayoutPageProps = {\n entityManifest: BackofficeEntityManifestItem;\n config: BackofficeResolvedDetailLayoutFacetConfig;\n prepared: BackofficePreparedDetailLayoutRoute;\n children?: ReactNode;\n};\n\nexport const BackofficeEntityDetailLayoutPage = ({\n config,\n prepared,\n children,\n}: BackofficeEntityDetailLayoutPageProps): JSX.Element => {\n const layoutQueryData = usePreloadedQuery(\n config.layoutPage.query,\n prepared.layoutQuery,\n );\n const layoutNodeRef = config.layoutPage.resolveNode(layoutQueryData, {\n id: prepared.id,\n });\n if (layoutNodeRef == null) {\n throw new HttpRedirect(config.routes.list);\n }\n\n const layoutNode = useFragment(\n config.layoutPage.fragment,\n layoutNodeRef as never,\n );\n\n const layoutView = config.layoutPage.toView(layoutNode);\n\n return (\n <BackofficeEntityDetailLayoutContextProvider\n value={{\n layoutView,\n }}\n >\n <>{children}</>\n </BackofficeEntityDetailLayoutContextProvider>\n );\n};\n\nexport default BackofficeEntityDetailLayoutPage;\n"],"mappings":";;;;;AAWA,IAAM,EAAE,aAAA,GAAa,mBAAA,MAAsB,GAS9B,KAAoC,EAC/C,WACA,aACA,kBACwD;CACxD,IAAM,IAAkB,EACtB,EAAO,WAAW,OAClB,EAAS,YACV,EACK,IAAgB,EAAO,WAAW,YAAY,GAAiB,EACnE,IAAI,EAAS,IACd,CAAC;AACF,KAAI,KAAiB,KACnB,OAAM,IAAI,EAAa,EAAO,OAAO,KAAK;CAG5C,IAAM,IAAa,EACjB,EAAO,WAAW,UAClB,EACD;AAID,QACE,kBAAC,GAAD;EACE,OAAO,EACL,YALa,EAAO,WAAW,OAAO,EAAW,EAMlD;YAED,kBAAA,GAAA,EAAG,aAAY,CAAA;EAC6B,CAAA"}