@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.
- package/lib/esm/{auth/pages/AcceptInvitationScreen.js → AcceptInvitationScreen-CNLlSbdx.js} +25 -29
- package/lib/esm/AcceptInvitationScreen-CNLlSbdx.js.map +1 -0
- package/lib/esm/{auth/login/AuthPanel.js → AuthPanel-ttoH9YxE.js} +7 -7
- package/lib/esm/AuthPanel-ttoH9YxE.js.map +1 -0
- package/lib/esm/BackofficeAcceptInvitationPage-DRxM1Z-U.js +30 -0
- package/lib/esm/BackofficeAcceptInvitationPage-DRxM1Z-U.js.map +1 -0
- package/lib/esm/BackofficeDashboardPage-GKyT60qb.js +195 -0
- package/lib/esm/BackofficeDashboardPage-GKyT60qb.js.map +1 -0
- package/lib/esm/BackofficeDetailPayload-B-qs8Fai.js +94 -0
- package/lib/esm/BackofficeDetailPayload-B-qs8Fai.js.map +1 -0
- package/lib/esm/{components/backoffice/actions/BackofficeEntityActionFormDialog.js → BackofficeEntityActionFormDialog-FHlW0vys.js} +120 -131
- package/lib/esm/BackofficeEntityActionFormDialog-FHlW0vys.js.map +1 -0
- package/lib/esm/{pages/detail/BackofficeEntityDetailLayoutContext.js → BackofficeEntityDetailLayoutContext-C_tBqkVq.js} +2 -2
- package/lib/esm/BackofficeEntityDetailLayoutContext-C_tBqkVq.js.map +1 -0
- package/lib/esm/BackofficeEntityDetailLayoutPage-DXjRqvcZ.js +18 -0
- package/lib/esm/BackofficeEntityDetailLayoutPage-DXjRqvcZ.js.map +1 -0
- package/lib/esm/BackofficeEntityDetailPage-CdrMXu5a.js +991 -0
- package/lib/esm/BackofficeEntityDetailPage-CdrMXu5a.js.map +1 -0
- package/lib/esm/{pages/BackofficeEntityDetailUnknownPageRedirect.js → BackofficeEntityDetailUnknownPageRedirect-DRWTeox-.js} +3 -3
- package/lib/esm/BackofficeEntityDetailUnknownPageRedirect-DRWTeox-.js.map +1 -0
- package/lib/esm/BackofficeEntityListPage-BxgqdFpL.js +385 -0
- package/lib/esm/BackofficeEntityListPage-BxgqdFpL.js.map +1 -0
- package/lib/esm/BackofficeLayoutPage-k9OkLfXb.js +485 -0
- package/lib/esm/BackofficeLayoutPage-k9OkLfXb.js.map +1 -0
- package/lib/esm/BackofficeLoginPage-C64BcxMw.js +50 -0
- package/lib/esm/BackofficeLoginPage-C64BcxMw.js.map +1 -0
- package/lib/esm/BackofficePasswordResetCompletePage-BA7kkUxN.js +60 -0
- package/lib/esm/BackofficePasswordResetCompletePage-BA7kkUxN.js.map +1 -0
- package/lib/esm/{pages/BackofficePasswordResetRequestPage.js → BackofficePasswordResetRequestPage-B9wSZcyn.js} +15 -13
- package/lib/esm/BackofficePasswordResetRequestPage-B9wSZcyn.js.map +1 -0
- package/lib/esm/BackofficeRightPageLayout-ktdlvTZJ.js +107 -0
- package/lib/esm/BackofficeRightPageLayout-ktdlvTZJ.js.map +1 -0
- package/lib/esm/{components/backoffice/layout/breadcrumb/BackofficeTopbarPortalContext.js → BackofficeTopbarPortalContext-iD7dm4_h.js} +2 -2
- package/lib/esm/BackofficeTopbarPortalContext-iD7dm4_h.js.map +1 -0
- package/lib/esm/BackofficeVerifyEmailPage-CAzMqo2K.js +59 -0
- package/lib/esm/BackofficeVerifyEmailPage-CAzMqo2K.js.map +1 -0
- package/lib/esm/EntityFilterValue-SC_jkj4O.js +77 -0
- package/lib/esm/EntityFilterValue-SC_jkj4O.js.map +1 -0
- package/lib/esm/EntityIdPickerDialog-FMC5Hx_I.js +308 -0
- package/lib/esm/EntityIdPickerDialog-FMC5Hx_I.js.map +1 -0
- package/lib/esm/LazyBackofficeEntityActionFormDialog-DOEgoIfT.js +486 -0
- package/lib/esm/LazyBackofficeEntityActionFormDialog-DOEgoIfT.js.map +1 -0
- package/lib/esm/{auth/pages/PasswordResetCompleteScreen.js → PasswordResetCompleteScreen-C4GQdavL.js} +21 -25
- package/lib/esm/PasswordResetCompleteScreen-C4GQdavL.js.map +1 -0
- package/lib/esm/{auth/pages/PasswordResetRequestScreen.js → PasswordResetRequestScreen-aUY_yDqM.js} +19 -23
- package/lib/esm/PasswordResetRequestScreen-aUY_yDqM.js.map +1 -0
- package/lib/esm/VerifyEmailScreen-2DuHJgdY.js +62 -0
- package/lib/esm/VerifyEmailScreen-2DuHJgdY.js.map +1 -0
- package/lib/esm/backoffice-react.js +1804 -0
- package/lib/esm/backoffice-react.js.map +1 -0
- package/lib/esm/{router/backofficeAuthPaths.js → backofficeAuthPaths-BiJvoI5Q.js} +2 -2
- package/lib/esm/backofficeAuthPaths-BiJvoI5Q.js.map +1 -0
- package/lib/esm/{components/backoffice/layout/breadcrumb/buildBreadcrumbs.js → buildBreadcrumbs-CqF9Nh6x.js} +3 -7
- package/lib/esm/buildBreadcrumbs-CqF9Nh6x.js.map +1 -0
- package/lib/esm/{relay/environment.js → environment-BJeJTbIN.js} +91 -71
- package/lib/esm/environment-BJeJTbIN.js.map +1 -0
- package/lib/esm/loginPage.css-BDQJNcSr.js +12 -0
- package/lib/esm/loginPage.css-BDQJNcSr.js.map +1 -0
- package/lib/esm/{relay/mutationResult.js → mutationResult-CcQMY13J.js} +2 -2
- package/lib/esm/mutationResult-CcQMY13J.js.map +1 -0
- package/lib/esm/{pages/detail/pageResolution.js → pageResolution-hAQA5C6S.js} +2 -2
- package/lib/esm/pageResolution-hAQA5C6S.js.map +1 -0
- package/lib/esm/{components/backoffice/layout/sidebarUtils.js → sidebarUtils-CuwJ_3mD.js} +2 -12
- package/lib/esm/{components/backoffice/layout/sidebarUtils.js.map → sidebarUtils-CuwJ_3mD.js.map} +1 -1
- package/lib/esm/{provider/BackofficeConfigContext.js → sprinkles.css.ts.vanilla-n-NK_DwW.js} +2 -2
- package/lib/esm/sprinkles.css.ts.vanilla-n-NK_DwW.js.map +1 -0
- package/lib/esm/style.css +1 -1
- package/lib/esm/synchronizeAuthStatusQuery-lLR0XFew.js +323 -0
- package/lib/esm/synchronizeAuthStatusQuery-lLR0XFew.js.map +1 -0
- package/lib/esm/{components/backoffice/actions/toastViewAction.js → toastViewAction-BGTS7vqm.js} +2 -2
- package/lib/esm/{components/backoffice/actions/toastViewAction.js.map → toastViewAction-BGTS7vqm.js.map} +1 -1
- package/lib/esm/useAuth-AczFS-oL.js +543 -0
- package/lib/esm/useAuth-AczFS-oL.js.map +1 -0
- package/lib/esm/useBackofficeAuth-BHteJQzA.js +89 -0
- package/lib/esm/useBackofficeAuth-BHteJQzA.js.map +1 -0
- package/lib/esm/{provider/useBackofficeLazyValue.js → useBackofficeLazyValue-B0-ckL6e.js} +7 -15
- package/lib/esm/useBackofficeLazyValue-B0-ckL6e.js.map +1 -0
- package/lib/esm/{hooks/useBackofficeListUrlState.js → useBackofficeListUrlState-D4fx5O7u.js} +2 -2
- package/lib/esm/useBackofficeListUrlState-D4fx5O7u.js.map +1 -0
- package/lib/esm/{components/backoffice/errors/BackofficeErrorBoundary.js → useBackofficeReactTranslation-WfXU8kCf.js} +9 -3
- package/lib/esm/useBackofficeReactTranslation-WfXU8kCf.js.map +1 -0
- package/lib/esm/{relay/useRelayEnvironment.js → useRelayEnvironment-vQ86aW-n.js} +2 -2
- package/lib/esm/useRelayEnvironment-vQ86aW-n.js.map +1 -0
- package/lib/types/auth/login/EmailCapturePanel.d.ts.map +1 -1
- package/lib/types/auth/login/MethodChooser.d.ts.map +1 -1
- package/lib/types/auth/login/MfaChallengeForm.d.ts.map +1 -1
- package/lib/types/auth/login/PasskeyLoginForm.d.ts.map +1 -1
- package/lib/types/auth/login/PasswordLoginPanel.d.ts +1 -1
- package/lib/types/auth/login/PasswordLoginPanel.d.ts.map +1 -1
- package/lib/types/auth/pages/AcceptInvitationScreen.d.ts.map +1 -1
- package/lib/types/auth/pages/PasswordResetCompleteScreen.d.ts.map +1 -1
- package/lib/types/auth/pages/PasswordResetRequestScreen.d.ts.map +1 -1
- package/lib/types/auth/pages/VerifyEmailScreen.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/BackofficeDetailErrorList.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/BackofficeDetailField.d.ts.map +1 -1
- package/lib/types/components/backoffice/filters/BackofficeFilterAction.d.ts.map +1 -1
- package/lib/types/components/backoffice/layout/buildSidebarSections.d.ts +1 -1
- package/lib/types/components/backoffice/layout/buildSidebarSections.d.ts.map +1 -1
- package/lib/types/components/backoffice/pickers/EntityIdPickerDialog.d.ts.map +1 -1
- package/lib/types/components/backoffice/scaffolds/BackofficeEntityListScaffold.d.ts.map +1 -1
- package/lib/types/filters/filterHelpers.d.ts +1 -1
- package/lib/types/filters/filterHelpers.d.ts.map +1 -1
- package/lib/types/index.d.ts +5 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/pages/BackofficeEntityDetailPage.d.ts.map +1 -1
- package/lib/types/provider/BackofficeConfigContext.d.ts +1 -0
- package/lib/types/provider/BackofficeConfigContext.d.ts.map +1 -1
- package/lib/types/provider/BackofficeProvider.d.ts.map +1 -1
- package/lib/types/provider/types.d.ts +2 -0
- package/lib/types/provider/types.d.ts.map +1 -1
- package/lib/types/relay/environment.d.ts +1 -0
- package/lib/types/relay/environment.d.ts.map +1 -1
- package/lib/types/router/createBackofficeRoutes.d.ts.map +1 -1
- package/package.json +9 -9
- package/lib/esm/auth/login/AuthPanel.js.map +0 -1
- package/lib/esm/auth/login/EmailCapturePanel.js +0 -52
- package/lib/esm/auth/login/EmailCapturePanel.js.map +0 -1
- package/lib/esm/auth/login/LoginFlow.js +0 -130
- package/lib/esm/auth/login/LoginFlow.js.map +0 -1
- package/lib/esm/auth/login/MethodChooser.js +0 -51
- package/lib/esm/auth/login/MethodChooser.js.map +0 -1
- package/lib/esm/auth/login/MfaChallengeForm.js +0 -83
- package/lib/esm/auth/login/MfaChallengeForm.js.map +0 -1
- package/lib/esm/auth/login/OidcButtons.js +0 -29
- package/lib/esm/auth/login/OidcButtons.js.map +0 -1
- package/lib/esm/auth/login/PasskeyLoginForm.js +0 -84
- package/lib/esm/auth/login/PasskeyLoginForm.js.map +0 -1
- package/lib/esm/auth/login/PasswordLoginPanel.js +0 -37
- package/lib/esm/auth/login/PasswordLoginPanel.js.map +0 -1
- package/lib/esm/auth/login/loginPage.css.js +0 -8
- package/lib/esm/auth/login/loginPage.css.js.map +0 -1
- package/lib/esm/auth/login/synchronizeAuthStatusQuery.js +0 -10
- package/lib/esm/auth/login/synchronizeAuthStatusQuery.js.map +0 -1
- package/lib/esm/auth/pages/AcceptInvitationScreen.js.map +0 -1
- package/lib/esm/auth/pages/PasswordResetCompleteScreen.js.map +0 -1
- package/lib/esm/auth/pages/PasswordResetRequestScreen.js.map +0 -1
- package/lib/esm/auth/pages/VerifyEmailScreen.js +0 -65
- package/lib/esm/auth/pages/VerifyEmailScreen.js.map +0 -1
- package/lib/esm/components/backoffice/actions/BackofficeEntityActionFormDialog.js.map +0 -1
- package/lib/esm/components/backoffice/actions/LazyBackofficeEntityActionFormDialog.js +0 -11
- package/lib/esm/components/backoffice/actions/LazyBackofficeEntityActionFormDialog.js.map +0 -1
- package/lib/esm/components/backoffice/actions/backofficeEntityActionFormDialog.css.js +0 -8
- package/lib/esm/components/backoffice/actions/backofficeEntityActionFormDialog.css.js.map +0 -1
- package/lib/esm/components/backoffice/columns/buildDataTableColumns.js +0 -59
- package/lib/esm/components/backoffice/columns/buildDataTableColumns.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailBadgeRow.js +0 -22
- package/lib/esm/components/backoffice/detail/BackofficeDetailBadgeRow.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailErrorList.js +0 -41
- package/lib/esm/components/backoffice/detail/BackofficeDetailErrorList.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailField.js +0 -31
- package/lib/esm/components/backoffice/detail/BackofficeDetailField.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.css.js +0 -8
- package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.js +0 -24
- package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailLayout.js +0 -20
- package/lib/esm/components/backoffice/detail/BackofficeDetailLayout.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailPayload.js +0 -18
- package/lib/esm/components/backoffice/detail/BackofficeDetailPayload.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailRelationLink.js +0 -49
- package/lib/esm/components/backoffice/detail/BackofficeDetailRelationLink.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailRelationList.js +0 -11
- package/lib/esm/components/backoffice/detail/BackofficeDetailRelationList.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailRelationListBlock.js +0 -115
- package/lib/esm/components/backoffice/detail/BackofficeDetailRelationListBlock.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailSection.js +0 -33
- package/lib/esm/components/backoffice/detail/BackofficeDetailSection.js.map +0 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailTaggedValue.js +0 -18
- package/lib/esm/components/backoffice/detail/BackofficeDetailTaggedValue.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailBadgeRow.css.js +0 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailBadgeRow.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailErrorList.css.js +0 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailErrorList.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailField.css.js +0 -15
- package/lib/esm/components/backoffice/detail/backofficeDetailField.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailLayout.css.js +0 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailLayout.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailRelationLink.css.js +0 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailRelationLink.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailRelationList.css.js +0 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailRelationList.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailSection.css.js +0 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailSection.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailTaggedValue.css.js +0 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailTaggedValue.css.js.map +0 -1
- package/lib/esm/components/backoffice/detail/detailPayloadUtils.js +0 -17
- package/lib/esm/components/backoffice/detail/detailPayloadUtils.js.map +0 -1
- package/lib/esm/components/backoffice/errors/BackofficeErrorBoundary.js.map +0 -1
- package/lib/esm/components/backoffice/filters/BackofficeFilterAction.js +0 -43
- package/lib/esm/components/backoffice/filters/BackofficeFilterAction.js.map +0 -1
- package/lib/esm/components/backoffice/filters/EntityFilterValue.js +0 -46
- package/lib/esm/components/backoffice/filters/EntityFilterValue.js.map +0 -1
- package/lib/esm/components/backoffice/filters/EntityIdFilterField.js +0 -51
- package/lib/esm/components/backoffice/filters/EntityIdFilterField.js.map +0 -1
- package/lib/esm/components/backoffice/filters/backofficeFilterAction.css.js +0 -8
- package/lib/esm/components/backoffice/filters/backofficeFilterAction.css.js.map +0 -1
- package/lib/esm/components/backoffice/filters/entityIdFilterField.css.js +0 -8
- package/lib/esm/components/backoffice/filters/entityIdFilterField.css.js.map +0 -1
- package/lib/esm/components/backoffice/layout/backofficeSidebarActions.css.js +0 -8
- package/lib/esm/components/backoffice/layout/backofficeSidebarActions.css.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeRightPageLayout.js +0 -10
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeRightPageLayout.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarBreadcrumb.js +0 -38
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarBreadcrumb.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarPortal.js +0 -12
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarPortal.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarPortalContext.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/assertValidBreadcrumb.js +0 -16
- package/lib/esm/components/backoffice/layout/breadcrumb/assertValidBreadcrumb.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.js +0 -8
- package/lib/esm/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/buildBreadcrumbs.js.map +0 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/types.js +0 -0
- package/lib/esm/components/backoffice/layout/buildSidebarSections.js +0 -183
- package/lib/esm/components/backoffice/layout/buildSidebarSections.js.map +0 -1
- package/lib/esm/components/backoffice/layout/mapViewerToSidebarProfileView.js +0 -18
- package/lib/esm/components/backoffice/layout/mapViewerToSidebarProfileView.js.map +0 -1
- package/lib/esm/components/backoffice/list/RowFlagsCell.css.js +0 -7
- package/lib/esm/components/backoffice/list/RowFlagsCell.css.js.map +0 -1
- package/lib/esm/components/backoffice/list/RowFlagsCell.js +0 -37
- package/lib/esm/components/backoffice/list/RowFlagsCell.js.map +0 -1
- package/lib/esm/components/backoffice/overview/BackofficeOverviewLayout.js +0 -31
- package/lib/esm/components/backoffice/overview/BackofficeOverviewLayout.js.map +0 -1
- package/lib/esm/components/backoffice/overview/backofficeOverviewLayout.css.js +0 -8
- package/lib/esm/components/backoffice/overview/backofficeOverviewLayout.css.js.map +0 -1
- package/lib/esm/components/backoffice/pickers/EntityIdPickerDialog.js +0 -106
- package/lib/esm/components/backoffice/pickers/EntityIdPickerDialog.js.map +0 -1
- package/lib/esm/components/backoffice/pickers/entityIdPickerDialog.css.js +0 -8
- package/lib/esm/components/backoffice/pickers/entityIdPickerDialog.css.js.map +0 -1
- package/lib/esm/components/backoffice/pickers/shared/EntityPickerList.js +0 -23
- package/lib/esm/components/backoffice/pickers/shared/EntityPickerList.js.map +0 -1
- package/lib/esm/components/backoffice/pickers/shared/EntityPickerRowBase.js +0 -23
- package/lib/esm/components/backoffice/pickers/shared/EntityPickerRowBase.js.map +0 -1
- package/lib/esm/components/backoffice/pickers/shared/EntityPickerShell.js +0 -24
- package/lib/esm/components/backoffice/pickers/shared/EntityPickerShell.js.map +0 -1
- package/lib/esm/components/backoffice/pickers/types.js +0 -0
- package/lib/esm/components/backoffice/refs/BackofficeEntityIdRef.js +0 -35
- package/lib/esm/components/backoffice/refs/BackofficeEntityIdRef.js.map +0 -1
- package/lib/esm/components/backoffice/refs/BackofficeRelatedCountLink.js +0 -54
- package/lib/esm/components/backoffice/refs/BackofficeRelatedCountLink.js.map +0 -1
- package/lib/esm/components/backoffice/refs/backofficeEntityIdRef.css.js +0 -8
- package/lib/esm/components/backoffice/refs/backofficeEntityIdRef.css.js.map +0 -1
- package/lib/esm/components/backoffice/refs/backofficeRelatedCountLink.css.js +0 -8
- package/lib/esm/components/backoffice/refs/backofficeRelatedCountLink.css.js.map +0 -1
- package/lib/esm/components/backoffice/routing/BackofficeContentBoundary.js +0 -24
- package/lib/esm/components/backoffice/routing/BackofficeContentBoundary.js.map +0 -1
- package/lib/esm/components/backoffice/routing/BackofficeContentError.js +0 -38
- package/lib/esm/components/backoffice/routing/BackofficeContentError.js.map +0 -1
- package/lib/esm/components/backoffice/routing/BackofficeContentFallback.js +0 -47
- package/lib/esm/components/backoffice/routing/BackofficeContentFallback.js.map +0 -1
- package/lib/esm/components/backoffice/routing/BackofficeRouteFallback.js +0 -22
- package/lib/esm/components/backoffice/routing/BackofficeRouteFallback.js.map +0 -1
- package/lib/esm/components/backoffice/routing/BackofficeRoutePendingBar.js +0 -12
- package/lib/esm/components/backoffice/routing/BackofficeRoutePendingBar.js.map +0 -1
- package/lib/esm/components/backoffice/routing/backofficeContentBoundary.css.js +0 -8
- package/lib/esm/components/backoffice/routing/backofficeContentBoundary.css.js.map +0 -1
- package/lib/esm/components/backoffice/routing/backofficeContentError.css.js +0 -8
- package/lib/esm/components/backoffice/routing/backofficeContentError.css.js.map +0 -1
- package/lib/esm/components/backoffice/routing/backofficeContentFallback.css.js +0 -8
- package/lib/esm/components/backoffice/routing/backofficeContentFallback.css.js.map +0 -1
- package/lib/esm/components/backoffice/routing/backofficeRouteFallback.css.js +0 -8
- package/lib/esm/components/backoffice/routing/backofficeRouteFallback.css.js.map +0 -1
- package/lib/esm/components/backoffice/routing/backofficeRoutePendingBar.css.js +0 -8
- package/lib/esm/components/backoffice/routing/backofficeRoutePendingBar.css.js.map +0 -1
- package/lib/esm/components/backoffice/scaffolds/BackofficeEntityDetailScaffold.js +0 -11
- package/lib/esm/components/backoffice/scaffolds/BackofficeEntityDetailScaffold.js.map +0 -1
- package/lib/esm/components/backoffice/scaffolds/BackofficeEntityListScaffold.js +0 -438
- package/lib/esm/components/backoffice/scaffolds/BackofficeEntityListScaffold.js.map +0 -1
- package/lib/esm/components/backoffice/scaffolds/BackofficeListFilterContext.js +0 -40
- package/lib/esm/components/backoffice/scaffolds/BackofficeListFilterContext.js.map +0 -1
- package/lib/esm/components/backoffice/scaffolds/BackofficeTabbedDetailShell.js +0 -24
- package/lib/esm/components/backoffice/scaffolds/BackofficeTabbedDetailShell.js.map +0 -1
- package/lib/esm/components/backoffice/scaffolds/backofficeEntityListScaffold.css.js +0 -8
- package/lib/esm/components/backoffice/scaffolds/backofficeEntityListScaffold.css.js.map +0 -1
- package/lib/esm/components/backoffice/scaffolds/backofficeTabbedDetailShell.css.js +0 -8
- package/lib/esm/components/backoffice/scaffolds/backofficeTabbedDetailShell.css.js.map +0 -1
- package/lib/esm/components/backoffice/shared/BackofficeInlineFilterRow.js +0 -12
- package/lib/esm/components/backoffice/shared/BackofficeInlineFilterRow.js.map +0 -1
- package/lib/esm/components/backoffice/shared/backofficeInlineFilterRow.css.js +0 -8
- package/lib/esm/components/backoffice/shared/backofficeInlineFilterRow.css.js.map +0 -1
- package/lib/esm/filters/filterHelpers.js +0 -36
- package/lib/esm/filters/filterHelpers.js.map +0 -1
- package/lib/esm/hooks/useAuth.js +0 -439
- package/lib/esm/hooks/useAuth.js.map +0 -1
- package/lib/esm/hooks/useBackofficeAuth.js +0 -89
- package/lib/esm/hooks/useBackofficeAuth.js.map +0 -1
- package/lib/esm/hooks/useBackofficeListRefetch.js +0 -40
- package/lib/esm/hooks/useBackofficeListRefetch.js.map +0 -1
- package/lib/esm/hooks/useBackofficeListUrlState.js.map +0 -1
- package/lib/esm/hooks/useBackofficeLoadMore.js +0 -18
- package/lib/esm/hooks/useBackofficeLoadMore.js.map +0 -1
- package/lib/esm/hooks/useBackofficeSessionAuth.js +0 -28
- package/lib/esm/hooks/useBackofficeSessionAuth.js.map +0 -1
- package/lib/esm/hooks/useBackofficeSidebarPins.js +0 -70
- package/lib/esm/hooks/useBackofficeSidebarPins.js.map +0 -1
- package/lib/esm/hooks/useConditionalSubscription.js +0 -57
- package/lib/esm/hooks/useConditionalSubscription.js.map +0 -1
- package/lib/esm/hooks/useCopyToClipboard.js +0 -31
- package/lib/esm/hooks/useCopyToClipboard.js.map +0 -1
- package/lib/esm/hooks/useRefetchNeededReload.js +0 -23
- package/lib/esm/hooks/useRefetchNeededReload.js.map +0 -1
- package/lib/esm/hooks/useSidebarGroupCollapse.js +0 -35
- package/lib/esm/hooks/useSidebarGroupCollapse.js.map +0 -1
- package/lib/esm/i18n/createI18nInstance.js +0 -62
- package/lib/esm/i18n/createI18nInstance.js.map +0 -1
- package/lib/esm/i18n/locales/en/backofficeReact.js +0 -249
- package/lib/esm/i18n/locales/en/backofficeReact.js.map +0 -1
- package/lib/esm/i18n/locales/en/shared.js +0 -201
- package/lib/esm/i18n/locales/en/shared.js.map +0 -1
- package/lib/esm/i18n/locales/fr/backofficeReact.js +0 -251
- package/lib/esm/i18n/locales/fr/backofficeReact.js.map +0 -1
- package/lib/esm/i18n/locales/fr/shared.js +0 -201
- package/lib/esm/i18n/locales/fr/shared.js.map +0 -1
- package/lib/esm/i18n/mergeResourceLanguages.js +0 -19
- package/lib/esm/i18n/mergeResourceLanguages.js.map +0 -1
- package/lib/esm/i18n/resources.js +0 -19
- package/lib/esm/i18n/resources.js.map +0 -1
- package/lib/esm/i18n/useBackofficeFormats.js +0 -23
- package/lib/esm/i18n/useBackofficeFormats.js.map +0 -1
- package/lib/esm/i18n/useBackofficeReactTranslation.js +0 -9
- package/lib/esm/i18n/useBackofficeReactTranslation.js.map +0 -1
- package/lib/esm/i18n/useReviewStatusLabel.js +0 -19
- package/lib/esm/i18n/useReviewStatusLabel.js.map +0 -1
- package/lib/esm/i18n/useSharedTranslation.js +0 -9
- package/lib/esm/i18n/useSharedTranslation.js.map +0 -1
- package/lib/esm/index.js +0 -37
- package/lib/esm/modules/base64.js +0 -23
- package/lib/esm/modules/base64.js.map +0 -1
- package/lib/esm/modules/formatFileSize.js +0 -28
- package/lib/esm/modules/formatFileSize.js.map +0 -1
- package/lib/esm/modules/sharedSchemaTypes.js +0 -0
- package/lib/esm/modules/webauthn.js +0 -33
- package/lib/esm/modules/webauthn.js.map +0 -1
- package/lib/esm/pages/BackofficeAcceptInvitationPage.js +0 -24
- package/lib/esm/pages/BackofficeAcceptInvitationPage.js.map +0 -1
- package/lib/esm/pages/BackofficeDashboardPage.js +0 -197
- package/lib/esm/pages/BackofficeDashboardPage.js.map +0 -1
- package/lib/esm/pages/BackofficeEntityDetailLayoutPage.js +0 -18
- package/lib/esm/pages/BackofficeEntityDetailLayoutPage.js.map +0 -1
- package/lib/esm/pages/BackofficeEntityDetailPage.js +0 -837
- package/lib/esm/pages/BackofficeEntityDetailPage.js.map +0 -1
- package/lib/esm/pages/BackofficeEntityDetailUnknownPageRedirect.js.map +0 -1
- package/lib/esm/pages/BackofficeEntityListPage.js +0 -363
- package/lib/esm/pages/BackofficeEntityListPage.js.map +0 -1
- package/lib/esm/pages/BackofficeLayoutPage.js +0 -137
- package/lib/esm/pages/BackofficeLayoutPage.js.map +0 -1
- package/lib/esm/pages/BackofficeLoginPage.js +0 -46
- package/lib/esm/pages/BackofficeLoginPage.js.map +0 -1
- package/lib/esm/pages/BackofficePasswordResetCompletePage.js +0 -59
- package/lib/esm/pages/BackofficePasswordResetCompletePage.js.map +0 -1
- package/lib/esm/pages/BackofficePasswordResetRequestPage.js.map +0 -1
- package/lib/esm/pages/BackofficeVerifyEmailPage.js +0 -59
- package/lib/esm/pages/BackofficeVerifyEmailPage.js.map +0 -1
- package/lib/esm/pages/backofficeDashboardPage.css.js +0 -8
- package/lib/esm/pages/backofficeDashboardPage.css.js.map +0 -1
- package/lib/esm/pages/backofficeEntityDetailPage.css.js +0 -8
- package/lib/esm/pages/backofficeEntityDetailPage.css.js.map +0 -1
- package/lib/esm/pages/backofficeEntityListPage.css.js +0 -8
- package/lib/esm/pages/backofficeEntityListPage.css.js.map +0 -1
- package/lib/esm/pages/detail/BackofficeEntityDetailLayoutContext.js.map +0 -1
- package/lib/esm/pages/detail/buildTabsItems.js +0 -10
- package/lib/esm/pages/detail/buildTabsItems.js.map +0 -1
- package/lib/esm/pages/detail/pageResolution.js.map +0 -1
- package/lib/esm/provider/BackofficeConfigContext.js.map +0 -1
- package/lib/esm/provider/BackofficeProvider.js +0 -152
- package/lib/esm/provider/BackofficeProvider.js.map +0 -1
- package/lib/esm/provider/entityRegistry.js +0 -91
- package/lib/esm/provider/entityRegistry.js.map +0 -1
- package/lib/esm/provider/lazyValue.js +0 -14
- package/lib/esm/provider/lazyValue.js.map +0 -1
- package/lib/esm/provider/types.js +0 -0
- package/lib/esm/provider/useBackofficeEntityLoader.js +0 -137
- package/lib/esm/provider/useBackofficeEntityLoader.js.map +0 -1
- package/lib/esm/provider/useBackofficeLazyValue.js.map +0 -1
- package/lib/esm/relay/RelayProvider.js +0 -12
- package/lib/esm/relay/RelayProvider.js.map +0 -1
- package/lib/esm/relay/createInlineDataReader.js +0 -2
- package/lib/esm/relay/createInlineReader.js +0 -7
- package/lib/esm/relay/createInlineReader.js.map +0 -1
- package/lib/esm/relay/envHelpers.js +0 -46
- package/lib/esm/relay/envHelpers.js.map +0 -1
- package/lib/esm/relay/environment.js.map +0 -1
- package/lib/esm/relay/identityView.js +0 -6
- package/lib/esm/relay/identityView.js.map +0 -1
- package/lib/esm/relay/mutationResult.js.map +0 -1
- package/lib/esm/relay/useRelayEnvironment.js.map +0 -1
- package/lib/esm/router/backofficeAuthPaths.js.map +0 -1
- package/lib/esm/router/createBackofficeRoutes.js +0 -273
- package/lib/esm/router/createBackofficeRoutes.js.map +0 -1
- package/lib/esm/style.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackofficeDetailRelationLink.js","names":[],"sources":["../../../../../src/components/backoffice/detail/BackofficeDetailRelationLink.tsx"],"sourcesContent":["import { useContext, type JSX, type MouseEvent } from 'react';\nimport { Link, RoutingContext } from '@plumile/router';\n\nimport {\n buildBackofficeFallbackListHref,\n buildBackofficeListHref,\n buildBackofficeListLink,\n} from '@plumile/backoffice-core/state/buildListHref.js';\nimport { setWhereValue } from '@plumile/backoffice-core/filters/where.js';\n\nimport { useBackofficeReactTranslation } from '../../../i18n/useBackofficeReactTranslation.js';\nimport { useBackofficeConfig } from '../../../provider/BackofficeConfigContext.js';\n\nimport * as styles from './backofficeDetailRelationLink.css.js';\n\nexport type BackofficeDetailRelationLinkProps = {\n label: string;\n entityId: string;\n filterId?: string;\n whereKey: string;\n value: string;\n path?: readonly string[];\n count?: number;\n};\n\nexport const BackofficeDetailRelationLink = ({\n label,\n entityId,\n filterId,\n whereKey,\n value,\n path,\n count,\n}: BackofficeDetailRelationLinkProps): JSX.Element | null => {\n const { t } = useBackofficeReactTranslation();\n const { entities, entityRegistry } = useBackofficeConfig();\n const routing = useContext(RoutingContext);\n const entityManifest = entities[entityId];\n if (entityManifest == null) {\n return null;\n }\n\n const where = setWhereValue<Record<string, unknown>>(\n null,\n whereKey as never,\n value,\n path,\n );\n\n const loadedEntity = entityRegistry.getLoadedListEntity(entityId);\n let filterKey = whereKey;\n if (path != null) {\n filterKey = `${whereKey}.${path.join('.')}`;\n }\n const resolvedFilterId = filterId ?? filterKey;\n\n let to: string | { pathname: string; search: string };\n if (loadedEntity == null) {\n to = buildBackofficeFallbackListHref(entityManifest.routes.list, where, [\n {\n id: resolvedFilterId,\n value,\n },\n ]);\n } else {\n to = buildBackofficeListHref(loadedEntity.config, { where });\n }\n\n const navigateToLazyList = async (\n history: NonNullable<typeof routing>['history'],\n ): Promise<void> => {\n const listEntity = await entityRegistry.loadListEntity(entityId);\n const next = buildBackofficeListLink(listEntity.config, { where });\n\n let search = '';\n if (next.search !== '') {\n search = `?${next.search}`;\n }\n\n history.push({\n pathname: next.pathname,\n search,\n hash: '',\n });\n };\n\n const handleClick = (event: MouseEvent<HTMLAnchorElement>) => {\n if (\n loadedEntity != null ||\n routing == null ||\n event.defaultPrevented ||\n event.button !== 0 ||\n event.metaKey ||\n event.altKey ||\n event.ctrlKey ||\n event.shiftKey\n ) {\n return;\n }\n\n event.preventDefault();\n navigateToLazyList(routing.history).catch(() => {\n /* noop */\n });\n };\n\n let labelText = label;\n if (count != null) {\n labelText = t('relations.labelWithCount', {\n label,\n count,\n });\n }\n\n return (\n <Link to={to} className={styles.link} onClick={handleClick}>\n <span className={styles.label}>{labelText}</span>\n <span className={styles.meta}>{t('relations.viewList')}</span>\n </Link>\n );\n};\n\nexport default BackofficeDetailRelationLink;\n"],"mappings":";;;;;;;;;AAyBA,IAAa,KAAgC,EAC3C,OAAA,GACA,aACA,aACA,aACA,UACA,SACA,eAC2D;CAC3D,IAAM,EAAE,SAAM,GAA+B,EACvC,EAAE,aAAU,sBAAmB,GAAqB,EACpD,IAAU,EAAW,EAAe,EACpC,IAAiB,EAAS;AAChC,KAAI,KAAkB,KACpB,QAAO;CAGT,IAAM,IAAQ,EACZ,MACA,GACA,GACA,EACD,EAEK,IAAe,EAAe,oBAAoB,EAAS,EAC7D,IAAY;AAChB,CAAI,KAAQ,SACV,IAAY,GAAG,EAAS,GAAG,EAAK,KAAK,IAAI;CAE3C,IAAM,IAAmB,KAAY,GAEjC;AACJ,CAQE,IARE,KAAgB,OACb,EAAgC,EAAe,OAAO,MAAM,GAAO,CACtE;EACE,IAAI;EACJ;EACD,CACF,CAAC,GAEG,EAAwB,EAAa,QAAQ,EAAE,UAAO,CAAC;CAG9D,IAAM,IAAqB,OACzB,MACkB;EAElB,IAAM,IAAO,GADM,MAAM,EAAe,eAAe,EAAS,EAChB,QAAQ,EAAE,UAAO,CAAC,EAE9D,IAAS;AAKb,EAJI,EAAK,WAAW,OAClB,IAAS,IAAI,EAAK,WAGpB,EAAQ,KAAK;GACX,UAAU,EAAK;GACf;GACA,MAAM;GACP,CAAC;IAGE,KAAe,MAAyC;AAE1D,OAAgB,QAChB,KAAW,QACX,EAAM,oBACN,EAAM,WAAW,KACjB,EAAM,WACN,EAAM,UACN,EAAM,WACN,EAAM,aAKR,EAAM,gBAAgB,EACtB,EAAmB,EAAQ,QAAQ,CAAC,YAAY,GAE9C;IAGA,IAAY;AAQhB,QAPI,KAAS,SACX,IAAY,EAAE,4BAA4B;EACxC,OAAA;EACA;EACD,CAAC,GAIF,kBAAC,GAAD;EAAU;EAAI,WAAW;EAAa,SAAS;YAA/C,CACE,kBAAC,QAAD;GAAM,WAAW;aAAe;GAAiB,CAAA,EACjD,kBAAC,QAAD;GAAM,WAAW;aAAc,EAAE,qBAAqB;GAAQ,CAAA,CACzD"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { list as e } from "./backofficeDetailRelationList.css.js";
|
|
2
|
-
import { jsx as t } from "react/jsx-runtime";
|
|
3
|
-
//#region src/components/backoffice/detail/BackofficeDetailRelationList.tsx
|
|
4
|
-
var n = ({ children: n }) => /* @__PURE__ */ t("div", {
|
|
5
|
-
className: e,
|
|
6
|
-
children: n
|
|
7
|
-
});
|
|
8
|
-
//#endregion
|
|
9
|
-
export { n as BackofficeDetailRelationList, n as default };
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=BackofficeDetailRelationList.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackofficeDetailRelationList.js","names":[],"sources":["../../../../../src/components/backoffice/detail/BackofficeDetailRelationList.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\nimport * as styles from './backofficeDetailRelationList.css.js';\n\nexport type BackofficeDetailRelationListProps = {\n children?: ReactNode;\n};\n\nexport const BackofficeDetailRelationList = ({\n children,\n}: BackofficeDetailRelationListProps): JSX.Element => {\n return <div className={styles.list}>{children}</div>;\n};\n\nexport default BackofficeDetailRelationList;\n"],"mappings":";;;AAOA,IAAa,KAAgC,EAC3C,kBAEO,kBAAC,OAAD;CAAK,WAAW;CAAc;CAAe,CAAA"}
|
|
@@ -1,115 +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 "../errors/BackofficeErrorBoundary.js";
|
|
4
|
-
import { useBackofficeListEntitiesLoader as r } from "../../../provider/useBackofficeEntityLoader.js";
|
|
5
|
-
import { buildDataTableColumns as i } from "../columns/buildDataTableColumns.js";
|
|
6
|
-
import { useBackofficeLoadMore as a } from "../../../hooks/useBackofficeLoadMore.js";
|
|
7
|
-
import { useBackofficeListRefetch as o } from "../../../hooks/useBackofficeListRefetch.js";
|
|
8
|
-
import { BackofficeEntityListScaffold as s } from "../scaffolds/BackofficeEntityListScaffold.js";
|
|
9
|
-
import { jsx as c } from "react/jsx-runtime";
|
|
10
|
-
import { useTranslation as l } from "react-i18next";
|
|
11
|
-
import { BackofficeTableSkeleton as u } from "@plumile/ui";
|
|
12
|
-
import { Suspense as d, useCallback as f, useMemo as p, useState as m } from "react";
|
|
13
|
-
import * as h from "react-relay";
|
|
14
|
-
import { BACKOFFICE_LIST_REFETCH_POLICY as g, BACKOFFICE_RELATED_TAB_PAGE_SIZE as _ } from "@plumile/backoffice-core/constants.js";
|
|
15
|
-
import { setWhereValue as v } from "@plumile/backoffice-core/filters/where.js";
|
|
16
|
-
//#region src/components/backoffice/detail/BackofficeDetailRelationListBlock.tsx
|
|
17
|
-
var { useLazyLoadQuery: y, usePaginationFragment: b } = h, x = ({ title: t, config: n, entities: r, whereKey: u, value: d, path: h }) => {
|
|
18
|
-
let { t: x } = l(), { t: S } = e();
|
|
19
|
-
if (n.list.kind === "records") return null;
|
|
20
|
-
let C = n.list, w = n.listDefaults ?? C.defaultState ?? {
|
|
21
|
-
where: null,
|
|
22
|
-
sort: null
|
|
23
|
-
}, [T, E] = m({
|
|
24
|
-
where: w.where,
|
|
25
|
-
sort: w.sort ?? null
|
|
26
|
-
}), D = p(() => d == null || d.trim() === "" ? null : v(T.where, u, d, h), [
|
|
27
|
-
h,
|
|
28
|
-
T.where,
|
|
29
|
-
d,
|
|
30
|
-
u
|
|
31
|
-
]), O = D ?? T.where, k = T.sort ?? w.sort, A = p(() => ({
|
|
32
|
-
where: O,
|
|
33
|
-
sort: k,
|
|
34
|
-
count: _,
|
|
35
|
-
cursor: null
|
|
36
|
-
}), [O, k]), j = p(() => C.buildVariables == null ? A : C.buildVariables(A), [C, A]), M = y(C.query, j, { fetchPolicy: "store-or-network" }), { data: N, loadNext: P, hasNext: F, isLoadingNext: I, refetch: L } = b(C.fragment, M), R = C.getConnection(N), z = p(() => R.edges.map((e) => C.toRow(e.node)), [R.edges, C]), B = p(() => i(C.columns, {
|
|
37
|
-
tApp: x,
|
|
38
|
-
t: S,
|
|
39
|
-
resolveEntityHref: (e, t) => {
|
|
40
|
-
let n = r[e];
|
|
41
|
-
return n == null ? null : n.routes.detail(t);
|
|
42
|
-
}
|
|
43
|
-
}), [
|
|
44
|
-
r,
|
|
45
|
-
C.columns,
|
|
46
|
-
S,
|
|
47
|
-
x
|
|
48
|
-
]), V = f((e) => C.getRowId(e), [C]), { onRefresh: H } = o({
|
|
49
|
-
refetch: L,
|
|
50
|
-
variables: A,
|
|
51
|
-
defaults: p(() => ({
|
|
52
|
-
where: D ?? w.where,
|
|
53
|
-
sort: w.sort,
|
|
54
|
-
count: _,
|
|
55
|
-
cursor: null
|
|
56
|
-
}), [
|
|
57
|
-
w.sort,
|
|
58
|
-
w.where,
|
|
59
|
-
D
|
|
60
|
-
]),
|
|
61
|
-
fetchPolicy: g,
|
|
62
|
-
buildVariables: C.buildVariables
|
|
63
|
-
}), U = a({
|
|
64
|
-
hasNext: F,
|
|
65
|
-
isLoadingNext: I,
|
|
66
|
-
loadNext: P,
|
|
67
|
-
count: _
|
|
68
|
-
});
|
|
69
|
-
return /* @__PURE__ */ c(s, {
|
|
70
|
-
config: n,
|
|
71
|
-
state: T,
|
|
72
|
-
pushState: (e) => {
|
|
73
|
-
E(e);
|
|
74
|
-
},
|
|
75
|
-
header: { title: t },
|
|
76
|
-
rows: z,
|
|
77
|
-
columns: B,
|
|
78
|
-
getRowId: V,
|
|
79
|
-
hasNextPage: F,
|
|
80
|
-
isLoadingMore: I,
|
|
81
|
-
onLoadMore: U,
|
|
82
|
-
onRefresh: H,
|
|
83
|
-
totalCount: R.totalCount ?? null,
|
|
84
|
-
variant: "embedded"
|
|
85
|
-
});
|
|
86
|
-
}, S = ({ title: e, targetId: n, whereKey: i, value: a, path: o }) => {
|
|
87
|
-
let { entities: s } = t(), l = r(p(() => [n], [n]));
|
|
88
|
-
if (l.status === "loading") return /* @__PURE__ */ c(u, { rows: 6 });
|
|
89
|
-
if (l.status === "error") return null;
|
|
90
|
-
let d = l.modules[n]?.config;
|
|
91
|
-
return d == null ? null : /* @__PURE__ */ c(x, {
|
|
92
|
-
title: e,
|
|
93
|
-
config: d,
|
|
94
|
-
entities: s,
|
|
95
|
-
whereKey: i,
|
|
96
|
-
value: a,
|
|
97
|
-
path: o
|
|
98
|
-
});
|
|
99
|
-
}, C = ({ title: e, target: t, whereKey: r, value: i, path: a }) => /* @__PURE__ */ c(n, {
|
|
100
|
-
fallback: () => /* @__PURE__ */ c(u, { rows: 6 }),
|
|
101
|
-
children: /* @__PURE__ */ c(d, {
|
|
102
|
-
fallback: /* @__PURE__ */ c(u, { rows: 6 }),
|
|
103
|
-
children: /* @__PURE__ */ c(S, {
|
|
104
|
-
title: e,
|
|
105
|
-
targetId: t,
|
|
106
|
-
whereKey: r,
|
|
107
|
-
value: i,
|
|
108
|
-
path: a
|
|
109
|
-
})
|
|
110
|
-
})
|
|
111
|
-
});
|
|
112
|
-
//#endregion
|
|
113
|
-
export { C as BackofficeDetailRelationListBlock, C as default };
|
|
114
|
-
|
|
115
|
-
//# sourceMappingURL=BackofficeDetailRelationListBlock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackofficeDetailRelationListBlock.js","names":[],"sources":["../../../../../src/components/backoffice/detail/BackofficeDetailRelationListBlock.tsx"],"sourcesContent":["/* eslint-disable react-hooks/rules-of-hooks */\nimport { Suspense, useCallback, useMemo, useState, type JSX } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport * as ReactRelay from 'react-relay';\nimport type { OperationType } from 'relay-runtime';\n\nimport {\n BACKOFFICE_LIST_REFETCH_POLICY,\n BACKOFFICE_RELATED_TAB_PAGE_SIZE,\n} from '@plumile/backoffice-core/constants.js';\nimport { setWhereValue } from '@plumile/backoffice-core/filters/where.js';\nimport type {\n BackofficeListState,\n BackofficeResolvedListFacetConfig,\n} from '@plumile/backoffice-core/types.js';\nimport { BackofficeTableSkeleton } from '@plumile/ui';\n\nimport { buildDataTableColumns } from '../columns/buildDataTableColumns.js';\nimport { useBackofficeLoadMore } from '../../../hooks/useBackofficeLoadMore.js';\nimport { useBackofficeListRefetch } from '../../../hooks/useBackofficeListRefetch.js';\nimport { useBackofficeReactTranslation } from '../../../i18n/useBackofficeReactTranslation.js';\nimport { useBackofficeConfig } from '../../../provider/BackofficeConfigContext.js';\nimport { useBackofficeListEntitiesLoader } from '../../../provider/useBackofficeEntityLoader.js';\nimport { BackofficeEntityListScaffold } from '../scaffolds/BackofficeEntityListScaffold.js';\nimport { BackofficeErrorBoundary } from '../errors/BackofficeErrorBoundary.js';\n\nconst { useLazyLoadQuery, usePaginationFragment } = ReactRelay;\n\nexport type BackofficeDetailRelationListBlockProps = {\n title: string;\n target: string;\n whereKey: string;\n value: string | null;\n path?: readonly string[];\n};\n\ntype RelationListContentProps = {\n title: string;\n config: BackofficeResolvedListFacetConfig;\n entities: ReturnType<typeof useBackofficeConfig>['entities'];\n whereKey: string;\n value: string | null;\n path?: readonly string[];\n};\n\ntype RelationListBlockBodyProps = {\n title: string;\n targetId: string;\n whereKey: string;\n value: string | null;\n path?: readonly string[];\n};\n\nconst RelationListContent = ({\n title,\n config,\n entities,\n whereKey,\n value,\n path,\n}: RelationListContentProps): JSX.Element | null => {\n const { t: tApp } = useTranslation();\n const { t } = useBackofficeReactTranslation();\n if (config.list.kind === 'records') {\n return null;\n }\n const listConfig = config.list;\n const listDefaults = config.listDefaults ??\n listConfig.defaultState ?? { where: null, sort: null };\n\n const [state, setState] = useState<BackofficeListState<unknown, string>>({\n where: listDefaults.where as never,\n sort: listDefaults.sort ?? null,\n });\n\n const relationWhere = useMemo(() => {\n if (value == null || value.trim() === '') {\n return null;\n }\n return setWhereValue(\n state.where as Record<string, unknown> | null,\n whereKey as never,\n value,\n path,\n );\n }, [path, state.where, value, whereKey]);\n\n const effectiveWhere = relationWhere ?? (state.where as never);\n const resolvedSort = state.sort ?? listDefaults.sort;\n const variablesBase = useMemo(() => {\n return {\n where: effectiveWhere as never,\n sort: resolvedSort as never,\n count: BACKOFFICE_RELATED_TAB_PAGE_SIZE,\n cursor: null,\n };\n }, [effectiveWhere, resolvedSort]);\n\n const variables = useMemo(() => {\n if (listConfig.buildVariables != null) {\n return listConfig.buildVariables(variablesBase as never);\n }\n return variablesBase;\n }, [listConfig, variablesBase]);\n\n const queryData = useLazyLoadQuery<OperationType>(\n listConfig.query,\n variables as never,\n { fetchPolicy: 'store-or-network' },\n );\n\n const {\n data: fragmentData,\n loadNext,\n hasNext,\n isLoadingNext,\n refetch,\n } = usePaginationFragment(listConfig.fragment, queryData as never);\n\n const connection = listConfig.getConnection(fragmentData);\n const rows = useMemo(() => {\n return connection.edges.map((edge) => {\n return listConfig.toRow(edge.node);\n });\n }, [connection.edges, listConfig]);\n\n const columns = useMemo(() => {\n return buildDataTableColumns(listConfig.columns, {\n tApp,\n t,\n resolveEntityHref: (entityId, refId) => {\n const entityManifest = entities[entityId];\n if (entityManifest == null) {\n return null;\n }\n return entityManifest.routes.detail(refId);\n },\n });\n }, [entities, listConfig.columns, t, tApp]);\n\n const getRowId = useCallback(\n (row: unknown) => {\n return listConfig.getRowId(row as never);\n },\n [listConfig],\n );\n\n const defaults = useMemo(() => {\n const baseWhere = relationWhere ?? (listDefaults.where as never);\n return {\n where: baseWhere,\n sort: listDefaults.sort,\n count: BACKOFFICE_RELATED_TAB_PAGE_SIZE,\n cursor: null,\n };\n }, [listDefaults.sort, listDefaults.where, relationWhere]);\n\n const { onRefresh } = useBackofficeListRefetch({\n refetch: refetch as never,\n variables: variablesBase as never,\n defaults: defaults as never,\n fetchPolicy: BACKOFFICE_LIST_REFETCH_POLICY,\n buildVariables: listConfig.buildVariables as never,\n });\n\n const handleLoadMore = useBackofficeLoadMore({\n hasNext,\n isLoadingNext,\n loadNext,\n count: BACKOFFICE_RELATED_TAB_PAGE_SIZE,\n });\n\n return (\n <BackofficeEntityListScaffold\n config={config as never}\n state={state as never}\n pushState={(next) => {\n setState(next as never);\n }}\n header={{ title }}\n rows={rows}\n columns={columns as never}\n getRowId={getRowId}\n hasNextPage={hasNext}\n isLoadingMore={isLoadingNext}\n onLoadMore={handleLoadMore}\n onRefresh={onRefresh}\n totalCount={connection.totalCount ?? null}\n variant=\"embedded\"\n />\n );\n};\n\nconst RelationListBlockBody = ({\n title,\n targetId,\n whereKey,\n value,\n path,\n}: RelationListBlockBodyProps): JSX.Element | null => {\n const { entities } = useBackofficeConfig();\n const relatedEntityIds = useMemo(() => {\n return [targetId];\n }, [targetId]);\n const relatedEntitiesState =\n useBackofficeListEntitiesLoader(relatedEntityIds);\n\n if (relatedEntitiesState.status === 'loading') {\n return <BackofficeTableSkeleton rows={6} />;\n }\n\n if (relatedEntitiesState.status === 'error') {\n return null;\n }\n\n const config = relatedEntitiesState.modules[targetId]?.config;\n if (config == null) {\n return null;\n }\n\n return (\n <RelationListContent\n title={title}\n config={config}\n entities={entities}\n whereKey={whereKey}\n value={value}\n path={path}\n />\n );\n};\n\nexport const BackofficeDetailRelationListBlock = ({\n title,\n target,\n whereKey,\n value,\n path,\n}: BackofficeDetailRelationListBlockProps): JSX.Element => {\n return (\n <BackofficeErrorBoundary\n fallback={() => {\n return <BackofficeTableSkeleton rows={6} />;\n }}\n >\n <Suspense fallback={<BackofficeTableSkeleton rows={6} />}>\n <RelationListBlockBody\n title={title}\n targetId={target}\n whereKey={whereKey}\n value={value}\n path={path}\n />\n </Suspense>\n </BackofficeErrorBoundary>\n );\n};\n\nexport default BackofficeDetailRelationListBlock;\n"],"mappings":";;;;;;;;;;;;;;;;AA0BA,IAAM,EAAE,qBAAkB,uBAAA,MAA0B,GA2B9C,KAAuB,EAC3B,UACA,WACA,aACA,aACA,UACA,cACkD;CAClD,IAAM,EAAE,GAAG,MAAS,GAAgB,EAC9B,EAAE,SAAM,GAA+B;AAC7C,KAAI,EAAO,KAAK,SAAS,UACvB,QAAO;CAET,IAAM,IAAa,EAAO,MACpB,IAAe,EAAO,gBAC1B,EAAW,gBAAgB;EAAE,OAAO;EAAM,MAAM;EAAM,EAElD,CAAC,GAAO,KAAY,EAA+C;EACvE,OAAO,EAAa;EACpB,MAAM,EAAa,QAAQ;EAC5B,CAAC,EAEI,IAAgB,QAChB,KAAS,QAAQ,EAAM,MAAM,KAAK,KAC7B,OAEF,EACL,EAAM,OACN,GACA,GACA,EACD,EACA;EAAC;EAAM,EAAM;EAAO;EAAO;EAAS,CAAC,EAElC,IAAiB,KAAkB,EAAM,OACzC,IAAe,EAAM,QAAQ,EAAa,MAC1C,IAAgB,SACb;EACL,OAAO;EACP,MAAM;EACN,OAAO;EACP,QAAQ;EACT,GACA,CAAC,GAAgB,EAAa,CAAC,EAE5B,IAAY,QACZ,EAAW,kBAAkB,OAG1B,IAFE,EAAW,eAAe,EAAuB,EAGzD,CAAC,GAAY,EAAc,CAAC,EAEzB,IAAY,EAChB,EAAW,OACX,GACA,EAAE,aAAa,oBAAoB,CACpC,EAEK,EACJ,MAAM,GACN,aACA,YACA,kBACA,eACE,EAAsB,EAAW,UAAU,EAAmB,EAE5D,IAAa,EAAW,cAAc,EAAa,EACnD,IAAO,QACJ,EAAW,MAAM,KAAK,MACpB,EAAW,MAAM,EAAK,KAAK,CAClC,EACD,CAAC,EAAW,OAAO,EAAW,CAAC,EAE5B,IAAU,QACP,EAAsB,EAAW,SAAS;EAC/C;EACA;EACA,oBAAoB,GAAU,MAAU;GACtC,IAAM,IAAiB,EAAS;AAIhC,UAHI,KAAkB,OACb,OAEF,EAAe,OAAO,OAAO,EAAM;;EAE7C,CAAC,EACD;EAAC;EAAU,EAAW;EAAS;EAAG;EAAK,CAAC,EAErC,IAAW,GACd,MACQ,EAAW,SAAS,EAAa,EAE1C,CAAC,EAAW,CACb,EAYK,EAAE,iBAAc,EAAyB;EACpC;EACT,WAAW;EACD,UAbK,SAER;GACL,OAFgB,KAAkB,EAAa;GAG/C,MAAM,EAAa;GACnB,OAAO;GACP,QAAQ;GACT,GACA;GAAC,EAAa;GAAM,EAAa;GAAO;GAAc,CAAC;EAMxD,aAAa;EACb,gBAAgB,EAAW;EAC5B,CAAC,EAEI,IAAiB,EAAsB;EAC3C;EACA;EACA;EACA,OAAO;EACR,CAAC;AAEF,QACE,kBAAC,GAAD;EACU;EACD;EACP,YAAY,MAAS;AACnB,KAAS,EAAc;;EAEzB,QAAQ,EAAE,UAAO;EACX;EACG;EACC;EACV,aAAa;EACb,eAAe;EACf,YAAY;EACD;EACX,YAAY,EAAW,cAAc;EACrC,SAAQ;EACR,CAAA;GAIA,KAAyB,EAC7B,UACA,aACA,aACA,UACA,cACoD;CACpD,IAAM,EAAE,gBAAa,GAAqB,EAIpC,IACJ,EAJuB,QAChB,CAAC,EAAS,EAChB,CAAC,EAAS,CAAC,CAEqC;AAEnD,KAAI,EAAqB,WAAW,UAClC,QAAO,kBAAC,GAAD,EAAyB,MAAM,GAAK,CAAA;AAG7C,KAAI,EAAqB,WAAW,QAClC,QAAO;CAGT,IAAM,IAAS,EAAqB,QAAQ,IAAW;AAKvD,QAJI,KAAU,OACL,OAIP,kBAAC,GAAD;EACS;EACC;EACE;EACA;EACH;EACD;EACN,CAAA;GAIO,KAAqC,EAChD,UACA,WACA,aACA,UACA,cAGE,kBAAC,GAAD;CACE,gBACS,kBAAC,GAAD,EAAyB,MAAM,GAAK,CAAA;WAG7C,kBAAC,GAAD;EAAU,UAAU,kBAAC,GAAD,EAAyB,MAAM,GAAK,CAAA;YACtD,kBAAC,GAAD;GACS;GACP,UAAU;GACA;GACH;GACD;GACN,CAAA;EACO,CAAA;CACa,CAAA"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { BackofficeDetailField as e } from "./BackofficeDetailField.js";
|
|
2
|
-
import { description as t, grid as n, header as r, section as i, title as a } from "./backofficeDetailSection.css.js";
|
|
3
|
-
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
4
|
-
//#region src/components/backoffice/detail/BackofficeDetailSection.tsx
|
|
5
|
-
var c = ({ title: c, description: l, items: u, children: d }) => {
|
|
6
|
-
let f = null;
|
|
7
|
-
l != null && l !== "" && (f = /* @__PURE__ */ o("p", {
|
|
8
|
-
className: t,
|
|
9
|
-
children: l
|
|
10
|
-
}));
|
|
11
|
-
let p = null;
|
|
12
|
-
return u != null && u.length > 0 && (p = /* @__PURE__ */ o("div", {
|
|
13
|
-
className: n,
|
|
14
|
-
children: u.map((t) => /* @__PURE__ */ o(e, { ...t }, t.id))
|
|
15
|
-
})), /* @__PURE__ */ s("section", {
|
|
16
|
-
className: i,
|
|
17
|
-
children: [
|
|
18
|
-
/* @__PURE__ */ s("header", {
|
|
19
|
-
className: r,
|
|
20
|
-
children: [/* @__PURE__ */ o("h3", {
|
|
21
|
-
className: a,
|
|
22
|
-
children: c
|
|
23
|
-
}), f]
|
|
24
|
-
}),
|
|
25
|
-
p,
|
|
26
|
-
d
|
|
27
|
-
]
|
|
28
|
-
});
|
|
29
|
-
};
|
|
30
|
-
//#endregion
|
|
31
|
-
export { c as BackofficeDetailSection, c as default };
|
|
32
|
-
|
|
33
|
-
//# sourceMappingURL=BackofficeDetailSection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackofficeDetailSection.js","names":[],"sources":["../../../../../src/components/backoffice/detail/BackofficeDetailSection.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\n\nimport {\n BackofficeDetailField,\n type BackofficeDetailFieldProps,\n} from './BackofficeDetailField.js';\nimport * as styles from './backofficeDetailSection.css.js';\n\nexport type BackofficeDetailSectionProps = {\n title: string;\n description?: string;\n items?: readonly BackofficeDetailFieldProps[];\n children?: ReactNode;\n};\n\nexport const BackofficeDetailSection = ({\n title,\n description,\n items,\n children,\n}: BackofficeDetailSectionProps): JSX.Element => {\n let descriptionNode: JSX.Element | null = null;\n if (description != null && description !== '') {\n descriptionNode = <p className={styles.description}>{description}</p>;\n }\n\n let itemsNode: JSX.Element | null = null;\n if (items != null && items.length > 0) {\n itemsNode = (\n <div className={styles.grid}>\n {items.map((item) => {\n return <BackofficeDetailField key={item.id} {...item} />;\n })}\n </div>\n );\n }\n\n return (\n <section className={styles.section}>\n <header className={styles.header}>\n <h3 className={styles.title}>{title}</h3>\n {descriptionNode}\n </header>\n {itemsNode}\n {children}\n </section>\n );\n};\n\nexport default BackofficeDetailSection;\n"],"mappings":";;;;AAeA,IAAa,KAA2B,EACtC,OAAA,GACA,aAAA,GACA,UACA,kBAC+C;CAC/C,IAAI,IAAsC;AAC1C,CAAI,KAAe,QAAQ,MAAgB,OACzC,IAAkB,kBAAC,KAAD;EAAG,WAAW;YAAqB;EAAgB,CAAA;CAGvE,IAAI,IAAgC;AAWpC,QAVI,KAAS,QAAQ,EAAM,SAAS,MAClC,IACE,kBAAC,OAAD;EAAK,WAAW;YACb,EAAM,KAAK,MACH,kBAAC,GAAD,EAAqC,GAAI,GAAQ,EAArB,EAAK,GAAgB,CACxD;EACE,CAAA,GAKR,kBAAC,WAAD;EAAS,WAAW;YAApB;GACE,kBAAC,UAAD;IAAQ,WAAW;cAAnB,CACE,kBAAC,MAAD;KAAI,WAAW;eAAe;KAAW,CAAA,EACxC,EACM;;GACR;GACA;GACO"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { container as e, value as t } from "./backofficeDetailTaggedValue.css.js";
|
|
2
|
-
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
3
|
-
import { Tag as i } from "@plumile/ui";
|
|
4
|
-
//#region src/components/backoffice/detail/BackofficeDetailTaggedValue.tsx
|
|
5
|
-
var a = ({ tag: a, value: o }) => /* @__PURE__ */ r("span", {
|
|
6
|
-
className: e,
|
|
7
|
-
children: [a != null && /* @__PURE__ */ n(i, {
|
|
8
|
-
tone: a.tone,
|
|
9
|
-
children: a.label
|
|
10
|
-
}), /* @__PURE__ */ n("span", {
|
|
11
|
-
className: t,
|
|
12
|
-
children: o
|
|
13
|
-
})]
|
|
14
|
-
});
|
|
15
|
-
//#endregion
|
|
16
|
-
export { a as BackofficeDetailTaggedValue, a as default };
|
|
17
|
-
|
|
18
|
-
//# sourceMappingURL=BackofficeDetailTaggedValue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackofficeDetailTaggedValue.js","names":[],"sources":["../../../../../src/components/backoffice/detail/BackofficeDetailTaggedValue.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\n\nimport type { BackofficeBadgeTone } from '@plumile/backoffice-core/types.js';\nimport { Tag } from '@plumile/ui';\n\nimport * as styles from './backofficeDetailTaggedValue.css.js';\n\nexport type BackofficeDetailTaggedValueProps = {\n tag: { label: string; tone?: BackofficeBadgeTone } | null;\n value: ReactNode;\n};\n\nexport const BackofficeDetailTaggedValue = ({\n tag,\n value,\n}: BackofficeDetailTaggedValueProps): JSX.Element => {\n return (\n <span className={styles.container}>\n {tag != null && <Tag tone={tag.tone}>{tag.label}</Tag>}\n <span className={styles.value}>{value}</span>\n </span>\n );\n};\n\nexport default BackofficeDetailTaggedValue;\n"],"mappings":";;;;AAYA,IAAa,KAA+B,EAC1C,QACA,OAAA,QAGE,kBAAC,QAAD;CAAM,WAAW;WAAjB,CACG,KAAO,QAAQ,kBAAC,GAAD;EAAK,MAAM,EAAI;YAAO,EAAI;EAAY,CAAA,EACtD,kBAAC,QAAD;EAAM,WAAW;YAAe;EAAa,CAAA,CACxC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailBadgeRow.css.ts
|
|
4
|
-
var e = "lqrxsj0 vncd899io vncd89ajx vncd89ao6 vncd89co";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { e as row };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeDetailBadgeRow.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailBadgeRow.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailBadgeRow.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const row = sprinkles({\n display: 'flex',\n flexWrap: 'wrap',\n gap: 2,\n alignItems: 'center',\n});\n"],"mappings":""}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailErrorList.css.ts
|
|
4
|
-
var e = "_1tlv14d0 vncd899io vncd89ai6 vncd89aoo", t = "_1tlv14d1 vncd899io vncd89ai6 vncd89ao6 vncd89la6 vncd891rx", n = "_1tlv14d2 vncd891co vncd891qf vncd89wo vncd89v2v", r = "_1tlv14d3 vncd899io vncd89ai6 vncd89anx", i = "_1tlv14d4 vncd89al6 vncd898x vncd89v8t", a = "_1tlv14d5 vncd89amo", o = "_1tlv14d6 vncd898x";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { i as code, o as details, r as header, t as item, n as itemSurface, e as list, a as message };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeDetailErrorList.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailErrorList.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailErrorList.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const list = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n});\n\nexport const item = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 2,\n padding: 3,\n borderRadius: 'xl',\n});\n\nexport const itemSurface = sprinkles({\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n backgroundColor: 'surfaceMuted',\n});\n\nexport const header = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n});\n\nexport const code = sprinkles({\n fontFamily: 'mono',\n fontSize: 'sm',\n color: 'textMuted',\n});\n\nexport const message = sprinkles({\n fontWeight: 'semibold',\n});\n\nexport const details = sprinkles({\n fontSize: 'sm',\n});\n"],"mappings":""}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailField.css.ts
|
|
4
|
-
var e = "_1vn15b70 vncd899io vncd89ai6 vncd89anx vncd89k4x", t = "_1vn15b71 vncd898o vncd8966 vncd89eeo vncd89v8r", n = "_1vn15b72 vncd898x vncd89v8p vncd89ut6", r = "_1vn15b73 vncd89bg6", i = {
|
|
5
|
-
xs: "_1vn15b74",
|
|
6
|
-
s: "_1vn15b75",
|
|
7
|
-
m: "_1vn15b76",
|
|
8
|
-
l: "_1vn15b77",
|
|
9
|
-
xl: "_1vn15b78",
|
|
10
|
-
fluid: "_1vn15b79"
|
|
11
|
-
};
|
|
12
|
-
//#endregion
|
|
13
|
-
export { e as field, r as fullWidth, t as label, i as size, n as value };
|
|
14
|
-
|
|
15
|
-
//# sourceMappingURL=backofficeDetailField.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailField.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailField.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const field = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n minWidth: 0,\n});\n\nexport const label = sprinkles({\n fontSize: 'xs',\n textTransform: 'uppercase',\n letterSpacing: 'capsTight',\n color: 'textSecondary',\n});\n\nexport const value = sprinkles({\n fontSize: 'sm',\n color: 'text',\n wordBreak: 'break-word',\n});\n\nexport const fullWidth = sprinkles({\n gridColumn: 'span-full',\n});\n\nexport const size = {\n xs: style({ maxWidth: '10ch' }),\n s: style({ maxWidth: '18ch' }),\n m: style({ maxWidth: '28ch' }),\n l: style({ maxWidth: '44ch' }),\n xl: style({ maxWidth: '64ch' }),\n fluid: style({ maxWidth: '100%' }),\n};\n"],"mappings":""}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailLayout.css.ts
|
|
4
|
-
var e = "_1o0pixx0 vncd899ix vncd89bwx vncd89apo vncd89cf", t = "_1o0pixx1 vncd899io vncd89ai6 vncd89ap6", n = "_1o0pixx2 vncd899io vncd89ai6 vncd89ap6", r = "_1o0pixx3 vncd899io vncd89ai6 vncd89ap6";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { e as layout, t as primary, n as secondary, r as stacked };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeDetailLayout.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailLayout.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailLayout.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const layout = sprinkles({\n display: 'grid',\n gridTemplateColumns: 'twoFrOneFr',\n gap: 8,\n alignItems: 'flex-start',\n});\n\nexport const primary = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 6,\n});\n\nexport const secondary = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 6,\n});\n\nexport const stacked = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 6,\n});\n"],"mappings":""}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailRelationLink.css.ts
|
|
4
|
-
var e = "_93gupm1 _93gupm0 vncd89nvf vncd89oio vncd89p5o vncd89lxf vncd8978 vncd896w vncd897k vncd899io vncd89co vncd89doo vncd89aof vncd891rf vncd891co vncd891qf vncd89wo vncd89v2t vncd89v8p vncd893b", t = "_93gupm2 vncd898x vncd89amf", n = "_93gupm3 vncd898o vncd89v8r";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { t as label, e as link, n as meta };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeDetailRelationLink.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailRelationLink.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailRelationLink.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\n\nimport { vars } from '@plumile/ui/theme/themeContract.js';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const link = style([\n sprinkles({\n transitionProperty: 'colors',\n transitionDuration: 120,\n transitionTimingFunction: 'ease',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 3,\n paddingY: 3,\n paddingX: 4,\n borderRadius: 'md',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n backgroundColor: 'surfaceSecondary',\n color: 'text',\n textDecoration: 'none',\n }),\n {\n selectors: {\n '&:hover': {\n backgroundColor: vars.colors.surfaceElevated,\n borderColor: vars.colors.borderStrong,\n },\n },\n },\n]);\n\nexport const label = sprinkles({\n fontSize: 'sm',\n fontWeight: 'medium',\n});\n\nexport const meta = sprinkles({\n fontSize: 'xs',\n color: 'textSecondary',\n});\n"],"mappings":""}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailRelationList.css.ts
|
|
4
|
-
var e = "_1brmxv70 vncd899io vncd89ai6 vncd89aof";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { e as list };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeDetailRelationList.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailRelationList.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailRelationList.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const list = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 3,\n});\n"],"mappings":""}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailSection.css.ts
|
|
4
|
-
var e = "_1v7vur60 vncd899io vncd89ai6 vncd89aoo vncd89lax vncd891rf vncd89v2r vncd891co vncd891qf vncd89wo vncd898qx", t = "_1v7vur61 vncd899io vncd89ai6 vncd89anx", n = "_1v7vur62 vncd8996 vncd89amo vncd89v8p", r = "_1v7vur63 vncd898x vncd89v8r", i = "_1v7vur64 vncd899ix vncd89aoo vncd89c0f";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { r as description, i as grid, t as header, e as section, n as title };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeDetailSection.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailSection.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailSection.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const section = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 4,\n padding: 6,\n borderRadius: 'md',\n backgroundColor: 'surface',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n boxShadow: 'inkSoft',\n});\n\nexport const header = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n});\n\nexport const title = sprinkles({\n fontSize: 'base',\n fontWeight: 'semibold',\n color: 'text',\n});\n\nexport const description = sprinkles({\n fontSize: 'sm',\n color: 'textSecondary',\n});\n\nexport const grid = sprinkles({\n display: 'grid',\n gap: 4,\n gridTemplateColumns: 'autoFitMinmax220',\n});\n"],"mappings":""}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/detail/backofficeDetailTaggedValue.css.ts
|
|
4
|
-
var e = "avdnn90 vncd899jf vncd89co vncd89ao6 vncd89ajx", t = "avdnn91 vncd899jf vncd89co vncd89anx";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { e as container, t as value };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeDetailTaggedValue.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeDetailTaggedValue.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeDetailTaggedValue.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const container = sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n gap: 2,\n flexWrap: 'wrap',\n});\n\nexport const value = sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n gap: 1,\n});\n"],"mappings":""}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
//#region src/components/backoffice/detail/detailPayloadUtils.ts
|
|
2
|
-
function e(e) {
|
|
3
|
-
if (e == null) return "";
|
|
4
|
-
try {
|
|
5
|
-
return `\`\`\`json\n${JSON.stringify(e, null, 2)}\n\`\`\``;
|
|
6
|
-
} catch {
|
|
7
|
-
let t = "[unserializable]";
|
|
8
|
-
return typeof e == "string" ? t = e : (typeof e == "number" || typeof e == "boolean") && (t = String(e)), `\`\`\`\n${t}\n\`\`\``;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
function t(e) {
|
|
12
|
-
return e.length === 0 ? "" : e.map((e) => `- ${e}`).join("\n");
|
|
13
|
-
}
|
|
14
|
-
//#endregion
|
|
15
|
-
export { e as formatJsonPayload, t as formatListAsMarkdown };
|
|
16
|
-
|
|
17
|
-
//# sourceMappingURL=detailPayloadUtils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"detailPayloadUtils.js","names":[],"sources":["../../../../../src/components/backoffice/detail/detailPayloadUtils.ts"],"sourcesContent":["/**\n * Formats a JSON payload into a fenced Markdown code block.\n */\nexport function formatJsonPayload(value: unknown): string {\n if (value == null) {\n return '';\n }\n try {\n return `\\`\\`\\`json\\n${JSON.stringify(value, null, 2)}\\n\\`\\`\\``;\n } catch {\n let fallback = '[unserializable]';\n if (typeof value === 'string') {\n fallback = value;\n } else if (typeof value === 'number' || typeof value === 'boolean') {\n fallback = String(value);\n }\n return `\\`\\`\\`\\n${fallback}\\n\\`\\`\\``;\n }\n}\n\n/**\n * Formats a list of strings as a Markdown bullet list.\n */\nexport function formatListAsMarkdown(items: readonly string[]): string {\n if (items.length === 0) {\n return '';\n }\n return items\n .map((item) => {\n return `- ${item}`;\n })\n .join('\\n');\n}\n"],"mappings":";AAGA,SAAgB,EAAkB,GAAwB;AACxD,KAAI,KAAS,KACX,QAAO;AAET,KAAI;AACF,SAAO,eAAe,KAAK,UAAU,GAAO,MAAM,EAAE,CAAC;SAC/C;EACN,IAAI,IAAW;AAMf,SALI,OAAO,KAAU,WACnB,IAAW,KACF,OAAO,KAAU,YAAY,OAAO,KAAU,eACvD,IAAW,OAAO,EAAM,GAEnB,WAAW,EAAS;;;AAO/B,SAAgB,EAAqB,GAAkC;AAIrE,QAHI,EAAM,WAAW,IACZ,KAEF,EACJ,KAAK,MACG,KAAK,IACZ,CACD,KAAK,KAAK"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackofficeErrorBoundary.js","names":[],"sources":["../../../../../src/components/backoffice/errors/BackofficeErrorBoundary.tsx"],"sourcesContent":["import { Component, type ReactNode } from 'react';\n\nexport type BackofficeErrorBoundaryProps = {\n children: ReactNode;\n fallback: (args: { error: unknown; reset: () => void }) => ReactNode;\n};\n\ntype State = { error: unknown };\n\nexport class BackofficeErrorBoundary extends Component<\n BackofficeErrorBoundaryProps,\n State\n> {\n public state: State = { error: null };\n\n public static getDerivedStateFromError(error: unknown): State {\n return { error };\n }\n\n public reset = (): void => {\n this.setState({ error: null });\n };\n\n public render(): ReactNode {\n if (this.state.error != null) {\n return this.props.fallback({\n error: this.state.error,\n reset: this.reset,\n });\n }\n return this.props.children;\n }\n}\n\nexport default BackofficeErrorBoundary;\n"],"mappings":";;AASA,IAAa,IAAb,cAA6C,EAG3C;CACA,QAAsB,EAAE,OAAO,MAAM;CAErC,OAAc,yBAAyB,GAAuB;AAC5D,SAAO,EAAE,UAAO;;CAGlB,cAA2B;AACzB,OAAK,SAAS,EAAE,OAAO,MAAM,CAAC;;CAGhC,SAA2B;AAOzB,SANI,KAAK,MAAM,SAAS,OAMjB,KAAK,MAAM,WALT,KAAK,MAAM,SAAS;GACzB,OAAO,KAAK,MAAM;GAClB,OAAO,KAAK;GACb,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { useBackofficeReactTranslation as e } from "../../../i18n/useBackofficeReactTranslation.js";
|
|
2
|
-
import { useBackofficeListFilterContext as t } from "../scaffolds/BackofficeListFilterContext.js";
|
|
3
|
-
import { canFilterValue as n, resolveFilterForColumn as r, resolveFilterForWhereKey as i } from "../../../filters/filterHelpers.js";
|
|
4
|
-
import { action as a, icon as o } from "./backofficeFilterAction.css.js";
|
|
5
|
-
import { jsx as s } from "react/jsx-runtime";
|
|
6
|
-
import { useTranslation as c } from "react-i18next";
|
|
7
|
-
import { Link as l } from "@plumile/router";
|
|
8
|
-
import { buildBackofficeListLink as u } from "@plumile/backoffice-core/state/buildListHref.js";
|
|
9
|
-
import { setWhereValue as d } from "@plumile/backoffice-core/filters/where.js";
|
|
10
|
-
import { SidebarSearchSvg as f } from "@plumile/ui/icons/SidebarSearchSvg.js";
|
|
11
|
-
//#region src/components/backoffice/filters/BackofficeFilterAction.tsx
|
|
12
|
-
var p = (e, t) => e(t), m = (m) => {
|
|
13
|
-
let { t: h } = c(), { t: g } = e(), { whereKey: _, value: v, path: y, label: b, listConfig: x } = m, S = t(), C = null;
|
|
14
|
-
if (x == null ? S != null && (C = S.config) : C = x, C == null) return null;
|
|
15
|
-
let w = i(C, _, y);
|
|
16
|
-
if (w == null && y == null && (w = r(C, _)), w == null || !n(w, v)) return null;
|
|
17
|
-
let T = p(w.label, h), E = b ?? g("filters.actions.filterBy", { label: T }), D = /* @__PURE__ */ s(f, {
|
|
18
|
-
width: 14,
|
|
19
|
-
height: 14,
|
|
20
|
-
className: o,
|
|
21
|
-
"aria-hidden": "true"
|
|
22
|
-
});
|
|
23
|
-
if (S != null) return /* @__PURE__ */ s("button", {
|
|
24
|
-
type: "button",
|
|
25
|
-
className: a,
|
|
26
|
-
title: E,
|
|
27
|
-
"aria-label": E,
|
|
28
|
-
onClick: () => {
|
|
29
|
-
S.applyFilter(_, v, y);
|
|
30
|
-
},
|
|
31
|
-
children: D
|
|
32
|
-
});
|
|
33
|
-
let O = d(C.listDefaults?.where ?? C.list.defaultState?.where ?? null, _, v, y);
|
|
34
|
-
return /* @__PURE__ */ s(l, {
|
|
35
|
-
to: u(C, { where: O }),
|
|
36
|
-
className: a,
|
|
37
|
-
children: D
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
//#endregion
|
|
41
|
-
export { m as BackofficeFilterAction, m as default };
|
|
42
|
-
|
|
43
|
-
//# sourceMappingURL=BackofficeFilterAction.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackofficeFilterAction.js","names":[],"sources":["../../../../../src/components/backoffice/filters/BackofficeFilterAction.tsx"],"sourcesContent":["import { type JSX } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { Link } from '@plumile/router';\nimport { SidebarSearchSvg } from '@plumile/ui/icons/SidebarSearchSvg.js';\n\nimport type {\n BackofficeResolvedListFacetConfig,\n I18nLabel,\n} from '@plumile/backoffice-core/types.js';\nimport type { TFunction } from 'i18next';\nimport { buildBackofficeListLink } from '@plumile/backoffice-core/state/buildListHref.js';\nimport { setWhereValue } from '@plumile/backoffice-core/filters/where.js';\n\nimport {\n canFilterValue,\n resolveFilterForColumn,\n resolveFilterForWhereKey,\n} from '../../../filters/filterHelpers.js';\nimport { useBackofficeListFilterContext } from '../scaffolds/BackofficeListFilterContext.js';\nimport { useBackofficeReactTranslation } from '../../../i18n/useBackofficeReactTranslation.js';\n\nimport * as styles from './backofficeFilterAction.css.js';\n\nexport type BackofficeFilterActionProps<\n Where extends Record<string, unknown> = Record<string, unknown>,\n Sort extends string = string,\n> = {\n whereKey: string;\n value: unknown;\n path?: readonly string[];\n label?: string;\n listConfig?: BackofficeResolvedListFacetConfig<Where, Sort>;\n};\n\ntype ListFilterContext<\n Where extends Record<string, unknown>,\n Sort extends string,\n> = {\n config: BackofficeResolvedListFacetConfig<Where, Sort>;\n applyFilter: (\n whereKey: string,\n value: unknown,\n path?: readonly string[],\n ) => void;\n};\n\nconst resolveLabel = (label: I18nLabel, tApp: TFunction): string => {\n return label(tApp);\n};\n\nexport const BackofficeFilterAction = <\n Where extends Record<string, unknown> = Record<string, unknown>,\n Sort extends string = string,\n>(\n props: BackofficeFilterActionProps<Where, Sort>,\n): JSX.Element | null => {\n const { t: tApp } = useTranslation();\n const { t } = useBackofficeReactTranslation();\n const { whereKey, value, path, label, listConfig } = props;\n\n const getContext = useBackofficeListFilterContext as () => ListFilterContext<\n Where,\n Sort\n > | null;\n const context = getContext();\n let config: BackofficeResolvedListFacetConfig<Where, Sort> | null = null;\n\n if (listConfig != null) {\n config = listConfig;\n } else if (context != null) {\n config = context.config;\n }\n\n if (config == null) {\n return null;\n }\n\n let filter = resolveFilterForWhereKey(config, whereKey, path);\n if (filter == null && path == null) {\n filter = resolveFilterForColumn(config, whereKey);\n }\n if (filter == null || !canFilterValue(filter, value)) {\n return null;\n }\n\n const filterLabel = resolveLabel(filter.label, tApp);\n const actionLabel =\n label ??\n t('filters.actions.filterBy', {\n label: filterLabel,\n });\n const icon = (\n <SidebarSearchSvg\n width={14}\n height={14}\n className={styles.icon}\n aria-hidden=\"true\"\n />\n );\n\n if (context != null) {\n return (\n <button\n type=\"button\"\n className={styles.action}\n title={actionLabel}\n aria-label={actionLabel}\n onClick={() => {\n context.applyFilter(whereKey, value, path);\n }}\n >\n {icon}\n </button>\n );\n }\n\n const baseWhere =\n config.listDefaults?.where ?? config.list.defaultState?.where ?? null;\n const nextWhere = setWhereValue(\n baseWhere,\n whereKey as keyof Where,\n value,\n path,\n );\n const to = buildBackofficeListLink(config, { where: nextWhere });\n\n return (\n <Link to={to} className={styles.action}>\n {icon}\n </Link>\n );\n};\n\nexport default BackofficeFilterAction;\n"],"mappings":";;;;;;;;;;;AA8CA,IAAM,KAAgB,GAAkB,MAC/B,EAAM,EAAK,EAGP,KAIX,MACuB;CACvB,IAAM,EAAE,GAAG,MAAS,GAAgB,EAC9B,EAAE,SAAM,GAA+B,EACvC,EAAE,aAAU,UAAO,SAAM,UAAO,kBAAe,GAM/C,IAJa,GAIS,EACxB,IAAgE;AAQpE,KANI,KAAc,OAEP,KAAW,SACpB,IAAS,EAAQ,UAFjB,IAAS,GAKP,KAAU,KACZ,QAAO;CAGT,IAAI,IAAS,EAAyB,GAAQ,GAAU,EAAK;AAI7D,KAHI,KAAU,QAAQ,KAAQ,SAC5B,IAAS,EAAuB,GAAQ,EAAS,GAE/C,KAAU,QAAQ,CAAC,EAAe,GAAQ,EAAM,CAClD,QAAO;CAGT,IAAM,IAAc,EAAa,EAAO,OAAO,EAAK,EAC9C,IACJ,KACA,EAAE,4BAA4B,EAC5B,OAAO,GACR,CAAC,EACE,IACJ,kBAAC,GAAD;EACE,OAAO;EACP,QAAQ;EACR,WAAW;EACX,eAAY;EACZ,CAAA;AAGJ,KAAI,KAAW,KACb,QACE,kBAAC,UAAD;EACE,MAAK;EACL,WAAW;EACX,OAAO;EACP,cAAY;EACZ,eAAe;AACb,KAAQ,YAAY,GAAU,GAAO,EAAK;;YAG3C;EACM,CAAA;CAMb,IAAM,IAAY,EADhB,EAAO,cAAc,SAAS,EAAO,KAAK,cAAc,SAAS,MAGjE,GACA,GACA,EACD;AAGD,QACE,kBAAC,GAAD;EAAU,IAHD,EAAwB,GAAQ,EAAE,OAAO,GAAW,CAAC;EAGhD,WAAW;YACtB;EACI,CAAA"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { useBackofficeReactTranslation as e } from "../../../i18n/useBackofficeReactTranslation.js";
|
|
2
|
-
import { BackofficeErrorBoundary as t } from "../errors/BackofficeErrorBoundary.js";
|
|
3
|
-
import { useBackofficePickerEntityLoader as n } from "../../../provider/useBackofficeEntityLoader.js";
|
|
4
|
-
import { jsx as r } from "react/jsx-runtime";
|
|
5
|
-
import { Suspense as i } from "react";
|
|
6
|
-
import * as a from "react-relay";
|
|
7
|
-
//#region src/components/backoffice/filters/EntityFilterValue.tsx
|
|
8
|
-
var { useLazyLoadQuery: o } = a, s = (e) => {
|
|
9
|
-
if (typeof e != "object" || !e) return null;
|
|
10
|
-
let { title: t } = e;
|
|
11
|
-
if (typeof t != "string") return null;
|
|
12
|
-
let n = t.trim();
|
|
13
|
-
return n === "" ? null : n;
|
|
14
|
-
}, c = ({ valueConfig: e, id: t, children: n }) => {
|
|
15
|
-
let r = o(e.query, { id: t }), i = e.resolveRow(r), a = null;
|
|
16
|
-
return i != null && (a = e.toRow(i)), n(s(a));
|
|
17
|
-
}, l = ({ entityId: e, id: a, children: o }) => {
|
|
18
|
-
let s = n(e, { enabled: a.trim() !== "" }), l = null;
|
|
19
|
-
s.status === "loaded" && (l = s.module.config.picker.value ?? null);
|
|
20
|
-
let u = o(null);
|
|
21
|
-
return l == null ? u : /* @__PURE__ */ r(t, {
|
|
22
|
-
fallback: () => u,
|
|
23
|
-
children: /* @__PURE__ */ r(i, {
|
|
24
|
-
fallback: u,
|
|
25
|
-
children: /* @__PURE__ */ r(c, {
|
|
26
|
-
valueConfig: l,
|
|
27
|
-
id: a,
|
|
28
|
-
children: o
|
|
29
|
-
})
|
|
30
|
-
})
|
|
31
|
-
});
|
|
32
|
-
}, u = ({ entityId: t, id: n }) => {
|
|
33
|
-
let { t: i } = e(), a = n.trim();
|
|
34
|
-
return /* @__PURE__ */ r(l, {
|
|
35
|
-
entityId: t,
|
|
36
|
-
id: n,
|
|
37
|
-
children: (e) => {
|
|
38
|
-
let t = a;
|
|
39
|
-
return a === "" && (t = i("filters.placeholders.unresolved")), /* @__PURE__ */ r("span", { children: e ?? t });
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
};
|
|
43
|
-
//#endregion
|
|
44
|
-
export { u as EntityFilterValue, u as default, l as EntityFilterValueText };
|
|
45
|
-
|
|
46
|
-
//# sourceMappingURL=EntityFilterValue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityFilterValue.js","names":[],"sources":["../../../../../src/components/backoffice/filters/EntityFilterValue.tsx"],"sourcesContent":["import { Suspense, type JSX } from 'react';\nimport * as ReactRelay from 'react-relay';\nimport type { OperationType } from 'relay-runtime';\n\nimport type { BackofficePickerValueConfig } from '@plumile/backoffice-core/types.js';\n\nimport { useBackofficeReactTranslation } from '../../../i18n/useBackofficeReactTranslation.js';\nimport { useBackofficePickerEntityLoader } from '../../../provider/useBackofficeEntityLoader.js';\nimport { BackofficeErrorBoundary } from '../errors/BackofficeErrorBoundary.js';\n\nconst { useLazyLoadQuery } = ReactRelay;\n\ntype EntityFilterValueContentProps<RowRef, RowView> = {\n valueConfig: BackofficePickerValueConfig<RowRef, RowView>;\n id: string;\n children: (label: string | null) => JSX.Element;\n};\n\nconst resolveTitle = (value: unknown): string | null => {\n if (value == null || typeof value !== 'object') {\n return null;\n }\n const { title } = value as { title?: unknown };\n if (typeof title !== 'string') {\n return null;\n }\n const trimmed = title.trim();\n if (trimmed === '') {\n return null;\n }\n return trimmed;\n};\n\nconst EntityFilterValueContent = <RowRef, RowView>({\n valueConfig,\n id,\n children,\n}: EntityFilterValueContentProps<RowRef, RowView>): JSX.Element => {\n const data = useLazyLoadQuery<OperationType>(valueConfig.query, { id });\n const rowRef = valueConfig.resolveRow(data);\n let row: RowView | null = null;\n if (rowRef != null) {\n row = valueConfig.toRow(rowRef);\n }\n const title = resolveTitle(row);\n\n return children(title);\n};\n\nexport type EntityFilterValueTextProps = {\n entityId: string;\n id: string;\n children: (label: string | null) => JSX.Element;\n};\n\nexport const EntityFilterValueText = ({\n entityId,\n id,\n children,\n}: EntityFilterValueTextProps): JSX.Element => {\n const resolvedId = id.trim();\n const pickerEntityState = useBackofficePickerEntityLoader(entityId, {\n enabled: resolvedId !== '',\n });\n let valueConfig: BackofficePickerValueConfig<unknown, unknown> | null = null;\n if (pickerEntityState.status === 'loaded') {\n valueConfig = pickerEntityState.module.config.picker.value ?? null;\n }\n\n const fallback = children(null);\n if (valueConfig == null) {\n return fallback;\n }\n\n return (\n <BackofficeErrorBoundary\n fallback={() => {\n return fallback;\n }}\n >\n <Suspense fallback={fallback}>\n <EntityFilterValueContent valueConfig={valueConfig} id={id}>\n {children}\n </EntityFilterValueContent>\n </Suspense>\n </BackofficeErrorBoundary>\n );\n};\n\nexport type EntityFilterValueProps = {\n entityId: string;\n id: string;\n};\n\nexport const EntityFilterValue = ({\n entityId,\n id,\n}: EntityFilterValueProps): JSX.Element => {\n const { t } = useBackofficeReactTranslation();\n const resolvedId = id.trim();\n\n return (\n <EntityFilterValueText entityId={entityId} id={id}>\n {(label) => {\n let fallbackLabel = resolvedId;\n if (resolvedId === '') {\n fallbackLabel = t('filters.placeholders.unresolved');\n }\n return <span>{label ?? fallbackLabel}</span>;\n }}\n </EntityFilterValueText>\n );\n};\n\nexport default EntityFilterValue;\n"],"mappings":";;;;;;;AAUA,IAAM,EAAE,wBAAqB,GAQvB,KAAgB,MAAkC;AACtD,KAAqB,OAAO,KAAU,aAAlC,EACF,QAAO;CAET,IAAM,EAAE,aAAU;AAClB,KAAI,OAAO,KAAU,SACnB,QAAO;CAET,IAAM,IAAU,EAAM,MAAM;AAI5B,QAHI,MAAY,KACP,OAEF;GAGH,KAA6C,EACjD,gBACA,OACA,kBACiE;CACjE,IAAM,IAAO,EAAgC,EAAY,OAAO,EAAE,OAAI,CAAC,EACjE,IAAS,EAAY,WAAW,EAAK,EACvC,IAAsB;AAM1B,QALI,KAAU,SACZ,IAAM,EAAY,MAAM,EAAO,GAI1B,EAFO,EAAa,EAAI,CAET;GASX,KAAyB,EACpC,aACA,OACA,kBAC6C;CAE7C,IAAM,IAAoB,EAAgC,GAAU,EAClE,SAFiB,EAAG,MAAM,KAEF,IACzB,CAAC,EACE,IAAoE;AACxE,CAAI,EAAkB,WAAW,aAC/B,IAAc,EAAkB,OAAO,OAAO,OAAO,SAAS;CAGhE,IAAM,IAAW,EAAS,KAAK;AAK/B,QAJI,KAAe,OACV,IAIP,kBAAC,GAAD;EACE,gBACS;YAGT,kBAAC,GAAD;GAAoB;aAClB,kBAAC,GAAD;IAAuC;IAAiB;IACrD;IACwB,CAAA;GAClB,CAAA;EACa,CAAA;GASjB,KAAqB,EAChC,aACA,YACyC;CACzC,IAAM,EAAE,SAAM,GAA+B,EACvC,IAAa,EAAG,MAAM;AAE5B,QACE,kBAAC,GAAD;EAAiC;EAAc;aAC3C,MAAU;GACV,IAAI,IAAgB;AAIpB,UAHI,MAAe,OACjB,IAAgB,EAAE,kCAAkC,GAE/C,kBAAC,QAAD,EAAA,UAAO,KAAS,GAAqB,CAAA;;EAExB,CAAA"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { useBackofficeReactTranslation as e } from "../../../i18n/useBackofficeReactTranslation.js";
|
|
2
|
-
import { actions as t, container as n, placeholder as r, valueBox as i, valueText as a } from "./entityIdFilterField.css.js";
|
|
3
|
-
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
4
|
-
import { Button as c } from "@plumile/ui";
|
|
5
|
-
//#region src/components/backoffice/filters/EntityIdFilterField.tsx
|
|
6
|
-
var l = (l) => {
|
|
7
|
-
let { label: u, value: d, displayValue: f, placeholder: p, onPick: m, onClear: h } = l, { t: g } = e(), _ = d?.trim() ?? "", v = f?.trim() ?? "", y = _ !== "", b = v !== "", x = p ?? g("filters.placeholders.search", { label: u }), S = g("filters.placeholders.unresolved"), C;
|
|
8
|
-
C = b ? /* @__PURE__ */ o("span", {
|
|
9
|
-
className: a,
|
|
10
|
-
children: v
|
|
11
|
-
}) : y ? /* @__PURE__ */ o("span", {
|
|
12
|
-
className: r,
|
|
13
|
-
children: S
|
|
14
|
-
}) : /* @__PURE__ */ o("span", {
|
|
15
|
-
className: r,
|
|
16
|
-
children: x
|
|
17
|
-
});
|
|
18
|
-
let w = g("common.actions.pick");
|
|
19
|
-
y && (w = g("common.actions.change"));
|
|
20
|
-
let T = null;
|
|
21
|
-
y && h != null && (T = /* @__PURE__ */ o(c, {
|
|
22
|
-
type: "button",
|
|
23
|
-
variant: "text",
|
|
24
|
-
size: "small",
|
|
25
|
-
"aria-label": g("common.actions.clear"),
|
|
26
|
-
onClick: h,
|
|
27
|
-
children: g("common.actions.clear")
|
|
28
|
-
}));
|
|
29
|
-
let E = null;
|
|
30
|
-
return m != null && (E = /* @__PURE__ */ o(c, {
|
|
31
|
-
type: "button",
|
|
32
|
-
variant: "secondary",
|
|
33
|
-
size: "small",
|
|
34
|
-
"aria-label": g("common.actions.pick"),
|
|
35
|
-
onClick: m,
|
|
36
|
-
children: w
|
|
37
|
-
})), /* @__PURE__ */ s("div", {
|
|
38
|
-
className: n,
|
|
39
|
-
children: [/* @__PURE__ */ o("div", {
|
|
40
|
-
className: i,
|
|
41
|
-
children: C
|
|
42
|
-
}), /* @__PURE__ */ s("div", {
|
|
43
|
-
className: t,
|
|
44
|
-
children: [E, T]
|
|
45
|
-
})]
|
|
46
|
-
});
|
|
47
|
-
};
|
|
48
|
-
//#endregion
|
|
49
|
-
export { l as EntityIdFilterField, l as default };
|
|
50
|
-
|
|
51
|
-
//# sourceMappingURL=EntityIdFilterField.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityIdFilterField.js","names":[],"sources":["../../../../../src/components/backoffice/filters/EntityIdFilterField.tsx"],"sourcesContent":["import { type JSX } from 'react';\n\nimport { Button } from '@plumile/ui';\n\nimport { useBackofficeReactTranslation } from '../../../i18n/useBackofficeReactTranslation.js';\n\nimport * as styles from './entityIdFilterField.css.js';\n\nexport type EntityIdFilterFieldProps = {\n label: string;\n value: string | null;\n displayValue?: string | null;\n placeholder?: string;\n onPick?: () => void;\n onClear?: () => void;\n};\n\nexport const EntityIdFilterField = (\n props: EntityIdFilterFieldProps,\n): JSX.Element => {\n const { label, value, displayValue, placeholder, onPick, onClear } = props;\n const { t } = useBackofficeReactTranslation();\n const normalizedValue = value?.trim() ?? '';\n const normalizedDisplayValue = displayValue?.trim() ?? '';\n const hasValue = normalizedValue !== '';\n const hasDisplayValue = normalizedDisplayValue !== '';\n\n const resolvedPlaceholder =\n placeholder ?? t('filters.placeholders.search', { label });\n const unresolvedPlaceholder = t('filters.placeholders.unresolved');\n\n let displayNode: JSX.Element;\n if (hasDisplayValue) {\n displayNode = (\n <span className={styles.valueText}>{normalizedDisplayValue}</span>\n );\n } else if (hasValue) {\n displayNode = (\n <span className={styles.placeholder}>{unresolvedPlaceholder}</span>\n );\n } else {\n displayNode = (\n <span className={styles.placeholder}>{resolvedPlaceholder}</span>\n );\n }\n\n let pickLabel = t('common.actions.pick');\n if (hasValue) {\n pickLabel = t('common.actions.change');\n }\n\n let clearNode: JSX.Element | null = null;\n if (hasValue && onClear != null) {\n clearNode = (\n <Button\n type=\"button\"\n variant=\"text\"\n size=\"small\"\n aria-label={t('common.actions.clear')}\n onClick={onClear}\n >\n {t('common.actions.clear')}\n </Button>\n );\n }\n\n let pickerNode: JSX.Element | null = null;\n if (onPick != null) {\n pickerNode = (\n <Button\n type=\"button\"\n variant=\"secondary\"\n size=\"small\"\n aria-label={t('common.actions.pick')}\n onClick={onPick}\n >\n {pickLabel}\n </Button>\n );\n }\n\n return (\n <div className={styles.container}>\n <div className={styles.valueBox}>{displayNode}</div>\n <div className={styles.actions}>\n {pickerNode}\n {clearNode}\n </div>\n </div>\n );\n};\n\nexport default EntityIdFilterField;\n"],"mappings":";;;;;AAiBA,IAAa,KACX,MACgB;CAChB,IAAM,EAAE,UAAO,UAAO,iBAAc,aAAA,GAAa,WAAQ,eAAY,GAC/D,EAAE,SAAM,GAA+B,EACvC,IAAkB,GAAO,MAAM,IAAI,IACnC,IAAyB,GAAc,MAAM,IAAI,IACjD,IAAW,MAAoB,IAC/B,IAAkB,MAA2B,IAE7C,IACJ,KAAe,EAAE,+BAA+B,EAAE,UAAO,CAAC,EACtD,IAAwB,EAAE,kCAAkC,EAE9D;AACJ,CASE,IATE,IAEA,kBAAC,QAAD;EAAM,WAAW;YAAmB;EAA8B,CAAA,GAE3D,IAEP,kBAAC,QAAD;EAAM,WAAW;YAAqB;EAA6B,CAAA,GAInE,kBAAC,QAAD;EAAM,WAAW;YAAqB;EAA2B,CAAA;CAIrE,IAAI,IAAY,EAAE,sBAAsB;AACxC,CAAI,MACF,IAAY,EAAE,wBAAwB;CAGxC,IAAI,IAAgC;AACpC,CAAI,KAAY,KAAW,SACzB,IACE,kBAAC,GAAD;EACE,MAAK;EACL,SAAQ;EACR,MAAK;EACL,cAAY,EAAE,uBAAuB;EACrC,SAAS;YAER,EAAE,uBAAuB;EACnB,CAAA;CAIb,IAAI,IAAiC;AAerC,QAdI,KAAU,SACZ,IACE,kBAAC,GAAD;EACE,MAAK;EACL,SAAQ;EACR,MAAK;EACL,cAAY,EAAE,sBAAsB;EACpC,SAAS;YAER;EACM,CAAA,GAKX,kBAAC,OAAD;EAAK,WAAW;YAAhB,CACE,kBAAC,OAAD;GAAK,WAAW;aAAkB;GAAkB,CAAA,EACpD,kBAAC,OAAD;GAAK,WAAW;aAAhB,CACG,GACA,EACG;KACF"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/filters/backofficeFilterAction.css.ts
|
|
4
|
-
var e = "hwnq701 hwnq700 vncd899jf vncd89co vncd89dnx vncd89two vncd89c66 vncd89l9f vncd891qx vncd891co vncd891qf vncd89f6 vncd89uzj vncd89v8r vncd89v vncd893b vncd8978 vncd896w vncd897k", t = "hwnq702 vncd89tw6 vncd89c5o";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { e as action, t as icon };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=backofficeFilterAction.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeFilterAction.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/backofficeFilterAction.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\n\nimport { vars } from '@plumile/ui/theme/themeContract.js';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const action = style([\n sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: 6,\n height: 6,\n padding: 0,\n borderRadius: 'sm',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'transparent',\n backgroundColor: 'transparent',\n color: 'textSecondary',\n cursor: 'pointer',\n textDecoration: 'none',\n transitionProperty: 'colors',\n transitionDuration: 120,\n transitionTimingFunction: 'ease',\n }),\n {\n selectors: {\n '&:hover': {\n color: vars.colors.text,\n backgroundColor: vars.colors.surfaceSecondary,\n borderColor: vars.colors.borderSubtle,\n },\n '&:focus-visible': {\n outline: `2px solid ${vars.colors.primary}`,\n outlineOffset: '2px',\n },\n },\n },\n]);\n\nexport const icon = sprinkles({\n width: 4,\n height: 4,\n});\n"],"mappings":""}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
/* empty css */
|
|
3
|
-
//#region src/components/backoffice/filters/entityIdFilterField.css.ts
|
|
4
|
-
var e = "oa1uye0 vncd899io vncd89co vncd89ao6 vncd89u3f vncd89jdo", t = "oa1uye1 vncd899mx vncd89k4x vncd899io vncd89co vncd89l6f", n = "oa1uye2 vncd899i6 vncd89l6f vncd89t6f vncd89uw6", r = "oa1uye3 vncd89v8t", i = "oa1uye4 vncd899io vncd89co vncd89anx";
|
|
5
|
-
//#endregion
|
|
6
|
-
export { i as actions, e as container, r as placeholder, t as valueBox, n as valueText };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=entityIdFilterField.css.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"entityIdFilterField.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/entityIdFilterField.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const container = sprinkles({\n display: 'flex',\n alignItems: 'center',\n gap: 2,\n width: 72,\n maxWidth: 'full',\n});\n\nexport const valueBox = sprinkles({\n flex: 1,\n minWidth: 0,\n display: 'flex',\n alignItems: 'center',\n overflow: 'hidden',\n});\n\nexport const valueText = sprinkles({\n display: 'block',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n});\n\nexport const placeholder = sprinkles({\n color: 'textMuted',\n});\n\nexport const actions = sprinkles({\n display: 'flex',\n alignItems: 'center',\n gap: 1,\n});\n"],"mappings":""}
|