@ruya.sa/next 3.71.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +22 -0
- package/dist/auth/login.js +67 -0
- package/dist/auth/login.js.map +1 -0
- package/dist/auth/logout.js +52 -0
- package/dist/auth/logout.js.map +1 -0
- package/dist/auth/refresh.js +56 -0
- package/dist/auth/refresh.js.map +1 -0
- package/dist/config.js +2 -0
- package/dist/config.js.map +1 -0
- package/dist/dummy.css +0 -0
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +19 -0
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +81 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +66 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/index.js +78 -0
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +29 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js +72 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -0
- package/dist/elements/DocumentHeader/index.js +36 -0
- package/dist/elements/DocumentHeader/index.js.map +1 -0
- package/dist/elements/FormHeader/index.js +20 -0
- package/dist/elements/FormHeader/index.js.map +1 -0
- package/dist/elements/Logo/index.js +39 -0
- package/dist/elements/Logo/index.js.map +1 -0
- package/dist/elements/Nav/NavHamburger/index.js +51 -0
- package/dist/elements/Nav/NavHamburger/index.js.map +1 -0
- package/dist/elements/Nav/NavWrapper/index.js +61 -0
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -0
- package/dist/elements/Nav/SettingsMenuButton/index.js +45 -0
- package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -0
- package/dist/elements/Nav/getNavPrefs.js +26 -0
- package/dist/elements/Nav/getNavPrefs.js.map +1 -0
- package/dist/elements/Nav/index.client.js +133 -0
- package/dist/elements/Nav/index.client.js.map +1 -0
- package/dist/elements/Nav/index.js +145 -0
- package/dist/elements/Nav/index.js.map +1 -0
- package/dist/esbuildEntry.js +5 -0
- package/dist/esbuildEntry.js.map +1 -0
- package/dist/exports/auth.js +4 -0
- package/dist/exports/auth.js.map +1 -0
- package/dist/exports/client.js +6 -0
- package/dist/exports/client.js.map +1 -0
- package/dist/exports/layouts.js +3 -0
- package/dist/exports/layouts.js.map +1 -0
- package/dist/exports/routes.js +3 -0
- package/dist/exports/routes.js.map +1 -0
- package/dist/exports/rsc.js +4 -0
- package/dist/exports/rsc.js.map +1 -0
- package/dist/exports/templates.js +3 -0
- package/dist/exports/templates.js.map +1 -0
- package/dist/exports/utilities.js +53 -0
- package/dist/exports/utilities.js.map +1 -0
- package/dist/exports/views.js +10 -0
- package/dist/exports/views.js.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/layouts/Root/NestProviders.js +24 -0
- package/dist/layouts/Root/NestProviders.js.map +1 -0
- package/dist/layouts/Root/checkDependencies.js +49 -0
- package/dist/layouts/Root/checkDependencies.js.map +1 -0
- package/dist/layouts/Root/index.js +120 -0
- package/dist/layouts/Root/index.js.map +1 -0
- package/dist/routes/graphql/handler.js +137 -0
- package/dist/routes/graphql/handler.js.map +1 -0
- package/dist/routes/graphql/index.js +3 -0
- package/dist/routes/graphql/index.js.map +1 -0
- package/dist/routes/graphql/playground.js +31 -0
- package/dist/routes/graphql/playground.js.map +1 -0
- package/dist/routes/index.js +3 -0
- package/dist/routes/index.js.map +1 -0
- package/dist/routes/rest/index.js +33 -0
- package/dist/routes/rest/index.js.map +1 -0
- package/dist/routes/rest/og/image.js +86 -0
- package/dist/routes/rest/og/image.js.map +1 -0
- package/dist/routes/rest/og/index.js +70 -0
- package/dist/routes/rest/og/index.js.map +1 -0
- package/dist/routes/rest/og/roboto-regular.woff +0 -0
- package/dist/templates/Default/NavHamburger/index.js +25 -0
- package/dist/templates/Default/NavHamburger/index.js.map +1 -0
- package/dist/templates/Default/Wrapper/index.js +49 -0
- package/dist/templates/Default/Wrapper/index.js.map +1 -0
- package/dist/templates/Default/index.js +129 -0
- package/dist/templates/Default/index.js.map +1 -0
- package/dist/templates/Minimal/index.js +21 -0
- package/dist/templates/Minimal/index.js.map +1 -0
- package/dist/utilities/getExistingAuthToken.js +6 -0
- package/dist/utilities/getExistingAuthToken.js.map +1 -0
- package/dist/utilities/getNextRequestI18n.js +22 -0
- package/dist/utilities/getNextRequestI18n.js.map +1 -0
- package/dist/utilities/getPayloadHMR.js +15 -0
- package/dist/utilities/getPayloadHMR.js.map +1 -0
- package/dist/utilities/getPreferences.js +26 -0
- package/dist/utilities/getPreferences.js.map +1 -0
- package/dist/utilities/getRequestLocale.js +20 -0
- package/dist/utilities/getRequestLocale.js.map +1 -0
- package/dist/utilities/getRequestTheme.js +22 -0
- package/dist/utilities/getRequestTheme.js.map +1 -0
- package/dist/utilities/getRouteWithoutAdmin.js +7 -0
- package/dist/utilities/getRouteWithoutAdmin.js.map +1 -0
- package/dist/utilities/handleAuthRedirect.js +41 -0
- package/dist/utilities/handleAuthRedirect.js.map +1 -0
- package/dist/utilities/handleServerFunctions.js +57 -0
- package/dist/utilities/handleServerFunctions.js.map +1 -0
- package/dist/utilities/initReq.js +110 -0
- package/dist/utilities/initReq.js.map +1 -0
- package/dist/utilities/isCustomAdminView.js +31 -0
- package/dist/utilities/isCustomAdminView.js.map +1 -0
- package/dist/utilities/isPublicAdminRoute.js +25 -0
- package/dist/utilities/isPublicAdminRoute.js.map +1 -0
- package/dist/utilities/meta.js +69 -0
- package/dist/utilities/meta.js.map +1 -0
- package/dist/utilities/selectiveCache.js +38 -0
- package/dist/utilities/selectiveCache.js.map +1 -0
- package/dist/utilities/setPayloadAuthCookie.js +27 -0
- package/dist/utilities/setPayloadAuthCookie.js.map +1 -0
- package/dist/utilities/slugify.js +47 -0
- package/dist/utilities/slugify.js.map +1 -0
- package/dist/utilities/timestamp.js +8 -0
- package/dist/utilities/timestamp.js.map +1 -0
- package/dist/views/API/LocaleSelector/index.js +44 -0
- package/dist/views/API/LocaleSelector/index.js.map +1 -0
- package/dist/views/API/RenderJSON/index.js +135 -0
- package/dist/views/API/RenderJSON/index.js.map +1 -0
- package/dist/views/API/index.client.js +209 -0
- package/dist/views/API/index.client.js.map +1 -0
- package/dist/views/API/index.js +7 -0
- package/dist/views/API/index.js.map +1 -0
- package/dist/views/API/metadata.js +29 -0
- package/dist/views/API/metadata.js.map +1 -0
- package/dist/views/Account/ResetPreferences/index.js +112 -0
- package/dist/views/Account/ResetPreferences/index.js.map +1 -0
- package/dist/views/Account/Settings/LanguageSelector.js +52 -0
- package/dist/views/Account/Settings/LanguageSelector.js.map +1 -0
- package/dist/views/Account/Settings/index.js +33 -0
- package/dist/views/Account/Settings/index.js.map +1 -0
- package/dist/views/Account/ToggleTheme/index.js +60 -0
- package/dist/views/Account/ToggleTheme/index.js.map +1 -0
- package/dist/views/Account/index.client.js +37 -0
- package/dist/views/Account/index.client.js.map +1 -0
- package/dist/views/Account/index.js +178 -0
- package/dist/views/Account/index.js.map +1 -0
- package/dist/views/Account/metadata.js +14 -0
- package/dist/views/Account/metadata.js.map +1 -0
- package/dist/views/BrowseByFolder/buildView.js +169 -0
- package/dist/views/BrowseByFolder/buildView.js.map +1 -0
- package/dist/views/BrowseByFolder/index.js +20 -0
- package/dist/views/BrowseByFolder/index.js.map +1 -0
- package/dist/views/BrowseByFolder/metadata.js +18 -0
- package/dist/views/BrowseByFolder/metadata.js.map +1 -0
- package/dist/views/CollectionFolders/buildView.js +156 -0
- package/dist/views/CollectionFolders/buildView.js.map +1 -0
- package/dist/views/CollectionFolders/index.js +20 -0
- package/dist/views/CollectionFolders/index.js.map +1 -0
- package/dist/views/CollectionFolders/metadata.js +25 -0
- package/dist/views/CollectionFolders/metadata.js.map +1 -0
- package/dist/views/CollectionFolders/renderFolderViewSlots.js +64 -0
- package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -0
- package/dist/views/CollectionTrash/index.js +21 -0
- package/dist/views/CollectionTrash/index.js.map +1 -0
- package/dist/views/CollectionTrash/metadata.js +25 -0
- package/dist/views/CollectionTrash/metadata.js.map +1 -0
- package/dist/views/CreateFirstUser/index.client.js +112 -0
- package/dist/views/CreateFirstUser/index.client.js.map +1 -0
- package/dist/views/CreateFirstUser/index.js +88 -0
- package/dist/views/CreateFirstUser/index.js.map +1 -0
- package/dist/views/CreateFirstUser/metadata.js +14 -0
- package/dist/views/CreateFirstUser/metadata.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +147 -0
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +431 -0
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/index.js +87 -0
- package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +99 -0
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +58 -0
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +72 -0
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +158 -0
- package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +38 -0
- package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +264 -0
- package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -0
- package/dist/views/Dashboard/Default/index.js +52 -0
- package/dist/views/Dashboard/Default/index.js.map +1 -0
- package/dist/views/Dashboard/index.js +50 -0
- package/dist/views/Dashboard/index.js.map +1 -0
- package/dist/views/Dashboard/metadata.js +16 -0
- package/dist/views/Dashboard/metadata.js.map +1 -0
- package/dist/views/Document/getCustomDocumentViewByKey.js +4 -0
- package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -0
- package/dist/views/Document/getCustomViewByRoute.js +35 -0
- package/dist/views/Document/getCustomViewByRoute.js.map +1 -0
- package/dist/views/Document/getDocPreferences.js +45 -0
- package/dist/views/Document/getDocPreferences.js.map +1 -0
- package/dist/views/Document/getDocumentData.js +60 -0
- package/dist/views/Document/getDocumentData.js.map +1 -0
- package/dist/views/Document/getDocumentPermissions.js +87 -0
- package/dist/views/Document/getDocumentPermissions.js.map +1 -0
- package/dist/views/Document/getDocumentView.js +310 -0
- package/dist/views/Document/getDocumentView.js.map +1 -0
- package/dist/views/Document/getIsLocked.js +79 -0
- package/dist/views/Document/getIsLocked.js.map +1 -0
- package/dist/views/Document/getMetaBySegment.js +150 -0
- package/dist/views/Document/getMetaBySegment.js.map +1 -0
- package/dist/views/Document/getVersions.js +210 -0
- package/dist/views/Document/getVersions.js.map +1 -0
- package/dist/views/Document/handleServerFunction.js +135 -0
- package/dist/views/Document/handleServerFunction.js.map +1 -0
- package/dist/views/Document/index.js +390 -0
- package/dist/views/Document/index.js.map +1 -0
- package/dist/views/Document/metadata.js +3 -0
- package/dist/views/Document/metadata.js.map +1 -0
- package/dist/views/Document/renderDocumentSlots.js +154 -0
- package/dist/views/Document/renderDocumentSlots.js.map +1 -0
- package/dist/views/Edit/index.js +11 -0
- package/dist/views/Edit/index.js.map +1 -0
- package/dist/views/Edit/metadata.js +52 -0
- package/dist/views/Edit/metadata.js.map +1 -0
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +179 -0
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -0
- package/dist/views/ForgotPassword/index.js +72 -0
- package/dist/views/ForgotPassword/index.js.map +1 -0
- package/dist/views/ForgotPassword/metadata.js +14 -0
- package/dist/views/ForgotPassword/metadata.js.map +1 -0
- package/dist/views/List/createSerializableValue.js +14 -0
- package/dist/views/List/createSerializableValue.js.map +1 -0
- package/dist/views/List/enrichDocsWithVersionStatus.js +96 -0
- package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -0
- package/dist/views/List/extractRelationshipDisplayValue.js +17 -0
- package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -0
- package/dist/views/List/extractValueOrRelationshipID.js +19 -0
- package/dist/views/List/extractValueOrRelationshipID.js.map +1 -0
- package/dist/views/List/handleGroupBy.js +160 -0
- package/dist/views/List/handleGroupBy.js.map +1 -0
- package/dist/views/List/handleServerFunction.js +130 -0
- package/dist/views/List/handleServerFunction.js.map +1 -0
- package/dist/views/List/index.js +356 -0
- package/dist/views/List/index.js.map +1 -0
- package/dist/views/List/metadata.js +24 -0
- package/dist/views/List/metadata.js.map +1 -0
- package/dist/views/List/renderListViewSlots.js +80 -0
- package/dist/views/List/renderListViewSlots.js.map +1 -0
- package/dist/views/List/resolveAllFilterOptions.js +49 -0
- package/dist/views/List/resolveAllFilterOptions.js.map +1 -0
- package/dist/views/List/transformColumnsToSelect.js +11 -0
- package/dist/views/List/transformColumnsToSelect.js.map +1 -0
- package/dist/views/Login/LoginField/index.js +98 -0
- package/dist/views/Login/LoginField/index.js.map +1 -0
- package/dist/views/Login/LoginForm/index.js +177 -0
- package/dist/views/Login/LoginForm/index.js.map +1 -0
- package/dist/views/Login/index.js +95 -0
- package/dist/views/Login/index.js.map +1 -0
- package/dist/views/Login/metadata.js +14 -0
- package/dist/views/Login/metadata.js.map +1 -0
- package/dist/views/Logout/LogoutClient.js +140 -0
- package/dist/views/Logout/LogoutClient.js.map +1 -0
- package/dist/views/Logout/index.js +36 -0
- package/dist/views/Logout/index.js.map +1 -0
- package/dist/views/Logout/metadata.js +13 -0
- package/dist/views/Logout/metadata.js.map +1 -0
- package/dist/views/NotFound/index.client.js +88 -0
- package/dist/views/NotFound/index.client.js.map +1 -0
- package/dist/views/NotFound/index.js +87 -0
- package/dist/views/NotFound/index.js.map +1 -0
- package/dist/views/NotFound/metadata.js +11 -0
- package/dist/views/NotFound/metadata.js.map +1 -0
- package/dist/views/ResetPassword/ResetPasswordForm/index.js +117 -0
- package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
- package/dist/views/ResetPassword/index.js +83 -0
- package/dist/views/ResetPassword/index.js.map +1 -0
- package/dist/views/ResetPassword/metadata.js +14 -0
- package/dist/views/ResetPassword/metadata.js.map +1 -0
- package/dist/views/Root/attachViewActions.js +27 -0
- package/dist/views/Root/attachViewActions.js.map +1 -0
- package/dist/views/Root/generateCustomViewMetadata.js +25 -0
- package/dist/views/Root/generateCustomViewMetadata.js.map +1 -0
- package/dist/views/Root/getCustomViewByKey.js +16 -0
- package/dist/views/Root/getCustomViewByKey.js.map +1 -0
- package/dist/views/Root/getCustomViewByRoute.js +48 -0
- package/dist/views/Root/getCustomViewByRoute.js.map +1 -0
- package/dist/views/Root/getDocumentViewInfo.js +28 -0
- package/dist/views/Root/getDocumentViewInfo.js.map +1 -0
- package/dist/views/Root/getRouteData.js +359 -0
- package/dist/views/Root/getRouteData.js.map +1 -0
- package/dist/views/Root/index.js +300 -0
- package/dist/views/Root/index.js.map +1 -0
- package/dist/views/Root/isPathMatchingRoute.js +29 -0
- package/dist/views/Root/isPathMatchingRoute.js.map +1 -0
- package/dist/views/Root/metadata.js +209 -0
- package/dist/views/Root/metadata.js.map +1 -0
- package/dist/views/Unauthorized/index.js +54 -0
- package/dist/views/Unauthorized/index.js.map +1 -0
- package/dist/views/Unauthorized/metadata.js +14 -0
- package/dist/views/Unauthorized/metadata.js.map +1 -0
- package/dist/views/Verify/index.client.js +50 -0
- package/dist/views/Verify/index.client.js.map +1 -0
- package/dist/views/Verify/index.js +71 -0
- package/dist/views/Verify/index.js.map +1 -0
- package/dist/views/Verify/metadata.js +14 -0
- package/dist/views/Verify/metadata.js.map +1 -0
- package/dist/views/Version/Default/SelectedLocalesContext.js +8 -0
- package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -0
- package/dist/views/Version/Default/SetStepNav.js +135 -0
- package/dist/views/Version/Default/SetStepNav.js.map +1 -0
- package/dist/views/Version/Default/index.js +253 -0
- package/dist/views/Version/Default/index.js.map +1 -0
- package/dist/views/Version/Default/types.js +2 -0
- package/dist/views/Version/Default/types.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +130 -0
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +80 -0
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +439 -0
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +61 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +75 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +66 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +129 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +45 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +188 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +17 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +87 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +155 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +100 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +222 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js +35 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/index.js +13 -0
- package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +242 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +861 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +4 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +47 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +45 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +135 -0
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -0
- package/dist/views/Version/Restore/index.js +106 -0
- package/dist/views/Version/Restore/index.js.map +1 -0
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +56 -0
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -0
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js +240 -0
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -0
- package/dist/views/Version/SelectComparison/index.js +57 -0
- package/dist/views/Version/SelectComparison/index.js.map +1 -0
- package/dist/views/Version/SelectComparison/types.js +2 -0
- package/dist/views/Version/SelectComparison/types.js.map +1 -0
- package/dist/views/Version/SelectLocales/index.js +39 -0
- package/dist/views/Version/SelectLocales/index.js.map +1 -0
- package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +110 -0
- package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -0
- package/dist/views/Version/VersionPillLabel/getVersionLabel.js +34 -0
- package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -0
- package/dist/views/Version/fetchVersions.js +151 -0
- package/dist/views/Version/fetchVersions.js.map +1 -0
- package/dist/views/Version/index.js +349 -0
- package/dist/views/Version/index.js.map +1 -0
- package/dist/views/Version/metadata.js +58 -0
- package/dist/views/Version/metadata.js.map +1 -0
- package/dist/views/Versions/buildColumns.js +88 -0
- package/dist/views/Versions/buildColumns.js.map +1 -0
- package/dist/views/Versions/cells/AutosaveCell/index.js +45 -0
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -0
- package/dist/views/Versions/cells/CreatedAt/index.js +60 -0
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -0
- package/dist/views/Versions/cells/ID/index.js +12 -0
- package/dist/views/Versions/cells/ID/index.js.map +1 -0
- package/dist/views/Versions/index.client.js +89 -0
- package/dist/views/Versions/index.client.js.map +1 -0
- package/dist/views/Versions/index.js +157 -0
- package/dist/views/Versions/index.js.map +1 -0
- package/dist/views/Versions/metadata.js +51 -0
- package/dist/views/Versions/metadata.js.map +1 -0
- package/dist/views/Versions/types.js +2 -0
- package/dist/views/Versions/types.js.map +1 -0
- package/dist/withPayload/withPayload.js +162 -0
- package/dist/withPayload/withPayload.js.map +1 -0
- package/dist/withPayload/withPayload.spec.js +40 -0
- package/dist/withPayload/withPayload.spec.js.map +1 -0
- package/dist/withPayload/withPayload.utils.js +133 -0
- package/dist/withPayload/withPayload.utils.js.map +1 -0
- package/dist/withPayload/withPayloadLegacy.js +47 -0
- package/dist/withPayload/withPayloadLegacy.js.map +1 -0
- package/package.json +153 -0
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
import { parseDocumentID } from '@ruya.sa/payload';
|
|
2
|
+
import { formatAdminURL, isNumber } from '@ruya.sa/payload/shared';
|
|
3
|
+
import { AccountView } from '../Account/index.js';
|
|
4
|
+
import { BrowseByFolder } from '../BrowseByFolder/index.js';
|
|
5
|
+
import { CollectionFolderView } from '../CollectionFolders/index.js';
|
|
6
|
+
import { TrashView } from '../CollectionTrash/index.js';
|
|
7
|
+
import { CreateFirstUserView } from '../CreateFirstUser/index.js';
|
|
8
|
+
import { DashboardView } from '../Dashboard/index.js';
|
|
9
|
+
import { DocumentView } from '../Document/index.js';
|
|
10
|
+
import { forgotPasswordBaseClass, ForgotPasswordView } from '../ForgotPassword/index.js';
|
|
11
|
+
import { ListView } from '../List/index.js';
|
|
12
|
+
import { loginBaseClass, LoginView } from '../Login/index.js';
|
|
13
|
+
import { LogoutInactivity, LogoutView } from '../Logout/index.js';
|
|
14
|
+
import { ResetPassword, resetPasswordBaseClass } from '../ResetPassword/index.js';
|
|
15
|
+
import { UnauthorizedView } from '../Unauthorized/index.js';
|
|
16
|
+
import { Verify, verifyBaseClass } from '../Verify/index.js';
|
|
17
|
+
import { getSubViewActions, getViewActions } from './attachViewActions.js';
|
|
18
|
+
import { getCustomViewByKey } from './getCustomViewByKey.js';
|
|
19
|
+
import { getCustomViewByRoute } from './getCustomViewByRoute.js';
|
|
20
|
+
import { getDocumentViewInfo } from './getDocumentViewInfo.js';
|
|
21
|
+
import { isPathMatchingRoute } from './isPathMatchingRoute.js';
|
|
22
|
+
const baseClasses = {
|
|
23
|
+
account: 'account',
|
|
24
|
+
folders: 'folders',
|
|
25
|
+
forgot: forgotPasswordBaseClass,
|
|
26
|
+
login: loginBaseClass,
|
|
27
|
+
reset: resetPasswordBaseClass,
|
|
28
|
+
verify: verifyBaseClass
|
|
29
|
+
};
|
|
30
|
+
const oneSegmentViews = {
|
|
31
|
+
account: AccountView,
|
|
32
|
+
browseByFolder: BrowseByFolder,
|
|
33
|
+
createFirstUser: CreateFirstUserView,
|
|
34
|
+
forgot: ForgotPasswordView,
|
|
35
|
+
inactivity: LogoutInactivity,
|
|
36
|
+
login: LoginView,
|
|
37
|
+
logout: LogoutView,
|
|
38
|
+
unauthorized: UnauthorizedView
|
|
39
|
+
};
|
|
40
|
+
export const getRouteData = ({
|
|
41
|
+
adminRoute,
|
|
42
|
+
collectionConfig,
|
|
43
|
+
collectionPreferences = undefined,
|
|
44
|
+
currentRoute,
|
|
45
|
+
globalConfig,
|
|
46
|
+
payload,
|
|
47
|
+
segments
|
|
48
|
+
}) => {
|
|
49
|
+
const {
|
|
50
|
+
config
|
|
51
|
+
} = payload;
|
|
52
|
+
let ViewToRender = null;
|
|
53
|
+
let templateClassName;
|
|
54
|
+
let templateType;
|
|
55
|
+
let documentSubViewType;
|
|
56
|
+
let viewType;
|
|
57
|
+
const routeParams = {};
|
|
58
|
+
const [segmentOne, segmentTwo, segmentThree, segmentFour, segmentFive, segmentSix] = segments;
|
|
59
|
+
const isBrowseByFolderEnabled = config.folders && config.folders.browseByFolder;
|
|
60
|
+
const browseByFolderSlugs = isBrowseByFolderEnabled && config.collections.reduce((acc, {
|
|
61
|
+
slug,
|
|
62
|
+
folders
|
|
63
|
+
}) => {
|
|
64
|
+
if (folders && folders.browseByFolder) {
|
|
65
|
+
return [...acc, slug];
|
|
66
|
+
}
|
|
67
|
+
return acc;
|
|
68
|
+
}, []) || [];
|
|
69
|
+
const viewActions = [...(config?.admin?.components?.actions || [])];
|
|
70
|
+
switch (segments.length) {
|
|
71
|
+
case 0:
|
|
72
|
+
{
|
|
73
|
+
if (currentRoute === adminRoute) {
|
|
74
|
+
ViewToRender = {
|
|
75
|
+
Component: DashboardView
|
|
76
|
+
};
|
|
77
|
+
templateClassName = 'dashboard';
|
|
78
|
+
templateType = 'default';
|
|
79
|
+
viewType = 'dashboard';
|
|
80
|
+
}
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
case 1:
|
|
84
|
+
{
|
|
85
|
+
// users can override the default routes via `admin.routes` config
|
|
86
|
+
// i.e.{ admin: { routes: { logout: '/sign-out', inactivity: '/idle' }}}
|
|
87
|
+
let viewKey;
|
|
88
|
+
if (config.admin.routes) {
|
|
89
|
+
const matchedRoute = Object.entries(config.admin.routes).find(([, route]) => {
|
|
90
|
+
return isPathMatchingRoute({
|
|
91
|
+
currentRoute,
|
|
92
|
+
exact: true,
|
|
93
|
+
path: formatAdminURL({
|
|
94
|
+
adminRoute,
|
|
95
|
+
path: route
|
|
96
|
+
})
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
if (matchedRoute) {
|
|
100
|
+
viewKey = matchedRoute[0];
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// Check if a custom view is configured for this viewKey
|
|
104
|
+
// First try to get custom view by the known viewKey, then fallback to route matching
|
|
105
|
+
const customView = viewKey && getCustomViewByKey({
|
|
106
|
+
config,
|
|
107
|
+
viewKey
|
|
108
|
+
}) || getCustomViewByRoute({
|
|
109
|
+
config,
|
|
110
|
+
currentRoute
|
|
111
|
+
});
|
|
112
|
+
if (customView?.view?.payloadComponent || customView?.view?.Component) {
|
|
113
|
+
// User has configured a custom view (either overriding a built-in or a new custom view)
|
|
114
|
+
ViewToRender = customView.view;
|
|
115
|
+
// If this custom view is overriding a built-in view (viewKey matches a built-in),
|
|
116
|
+
// use the built-in's template settings and viewType
|
|
117
|
+
if (viewKey && oneSegmentViews[viewKey]) {
|
|
118
|
+
viewType = viewKey;
|
|
119
|
+
templateClassName = baseClasses[viewKey] || viewKey;
|
|
120
|
+
templateType = 'minimal';
|
|
121
|
+
if (viewKey === 'account') {
|
|
122
|
+
templateType = 'default';
|
|
123
|
+
}
|
|
124
|
+
if (isBrowseByFolderEnabled && viewKey === 'browseByFolder') {
|
|
125
|
+
templateType = 'default';
|
|
126
|
+
viewType = 'folders';
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
} else if (oneSegmentViews[viewKey]) {
|
|
130
|
+
// --> /account
|
|
131
|
+
// --> /create-first-user
|
|
132
|
+
// --> /browse-by-folder
|
|
133
|
+
// --> /forgot
|
|
134
|
+
// --> /login
|
|
135
|
+
// --> /logout
|
|
136
|
+
// --> /logout-inactivity
|
|
137
|
+
// --> /unauthorized
|
|
138
|
+
ViewToRender = {
|
|
139
|
+
Component: oneSegmentViews[viewKey]
|
|
140
|
+
};
|
|
141
|
+
viewType = viewKey;
|
|
142
|
+
templateClassName = baseClasses[viewKey];
|
|
143
|
+
templateType = 'minimal';
|
|
144
|
+
if (viewKey === 'account') {
|
|
145
|
+
templateType = 'default';
|
|
146
|
+
}
|
|
147
|
+
if (isBrowseByFolderEnabled && viewKey === 'browseByFolder') {
|
|
148
|
+
templateType = 'default';
|
|
149
|
+
viewType = 'folders';
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
break;
|
|
153
|
+
}
|
|
154
|
+
case 2:
|
|
155
|
+
{
|
|
156
|
+
if (`/${segmentOne}` === config.admin.routes.reset) {
|
|
157
|
+
// --> /reset/:token
|
|
158
|
+
ViewToRender = {
|
|
159
|
+
Component: ResetPassword
|
|
160
|
+
};
|
|
161
|
+
templateClassName = baseClasses[segmentTwo];
|
|
162
|
+
templateType = 'minimal';
|
|
163
|
+
viewType = 'reset';
|
|
164
|
+
} else if (isBrowseByFolderEnabled && `/${segmentOne}` === config.admin.routes.browseByFolder) {
|
|
165
|
+
// --> /browse-by-folder/:folderID
|
|
166
|
+
routeParams.folderID = segmentTwo;
|
|
167
|
+
ViewToRender = {
|
|
168
|
+
Component: oneSegmentViews.browseByFolder
|
|
169
|
+
};
|
|
170
|
+
templateClassName = baseClasses.folders;
|
|
171
|
+
templateType = 'default';
|
|
172
|
+
viewType = 'folders';
|
|
173
|
+
} else if (collectionConfig) {
|
|
174
|
+
// --> /collections/:collectionSlug'
|
|
175
|
+
routeParams.collection = collectionConfig.slug;
|
|
176
|
+
if (collectionPreferences?.listViewType && collectionPreferences.listViewType === 'folders') {
|
|
177
|
+
// Render folder view by default if set in preferences
|
|
178
|
+
ViewToRender = {
|
|
179
|
+
Component: CollectionFolderView
|
|
180
|
+
};
|
|
181
|
+
templateClassName = `collection-folders`;
|
|
182
|
+
templateType = 'default';
|
|
183
|
+
viewType = 'collection-folders';
|
|
184
|
+
} else {
|
|
185
|
+
ViewToRender = {
|
|
186
|
+
Component: ListView
|
|
187
|
+
};
|
|
188
|
+
templateClassName = `${segmentTwo}-list`;
|
|
189
|
+
templateType = 'default';
|
|
190
|
+
viewType = 'list';
|
|
191
|
+
}
|
|
192
|
+
viewActions.push(...(collectionConfig.admin.components?.views?.list?.actions || []));
|
|
193
|
+
} else if (globalConfig) {
|
|
194
|
+
// --> /globals/:globalSlug
|
|
195
|
+
routeParams.global = globalConfig.slug;
|
|
196
|
+
ViewToRender = {
|
|
197
|
+
Component: DocumentView
|
|
198
|
+
};
|
|
199
|
+
templateClassName = 'global-edit';
|
|
200
|
+
templateType = 'default';
|
|
201
|
+
viewType = 'document';
|
|
202
|
+
// add default view actions
|
|
203
|
+
viewActions.push(...getViewActions({
|
|
204
|
+
editConfig: globalConfig.admin?.components?.views?.edit,
|
|
205
|
+
viewKey: 'default'
|
|
206
|
+
}));
|
|
207
|
+
}
|
|
208
|
+
break;
|
|
209
|
+
}
|
|
210
|
+
default:
|
|
211
|
+
if (segmentTwo === 'verify') {
|
|
212
|
+
// --> /:collectionSlug/verify/:token
|
|
213
|
+
routeParams.collection = segmentOne;
|
|
214
|
+
routeParams.token = segmentThree;
|
|
215
|
+
ViewToRender = {
|
|
216
|
+
Component: Verify
|
|
217
|
+
};
|
|
218
|
+
templateClassName = 'verify';
|
|
219
|
+
templateType = 'minimal';
|
|
220
|
+
viewType = 'verify';
|
|
221
|
+
} else if (collectionConfig) {
|
|
222
|
+
routeParams.collection = collectionConfig.slug;
|
|
223
|
+
if (segmentThree === 'trash' && typeof segmentFour === 'string') {
|
|
224
|
+
// --> /collections/:collectionSlug/trash/:id (read-only)
|
|
225
|
+
// --> /collections/:collectionSlug/trash/:id/api
|
|
226
|
+
// --> /collections/:collectionSlug/trash/:id/preview
|
|
227
|
+
// --> /collections/:collectionSlug/trash/:id/versions
|
|
228
|
+
// --> /collections/:collectionSlug/trash/:id/versions/:versionID
|
|
229
|
+
routeParams.id = segmentFour;
|
|
230
|
+
routeParams.versionID = segmentSix;
|
|
231
|
+
ViewToRender = {
|
|
232
|
+
Component: DocumentView
|
|
233
|
+
};
|
|
234
|
+
templateClassName = `collection-default-edit`;
|
|
235
|
+
templateType = 'default';
|
|
236
|
+
const viewInfo = getDocumentViewInfo([segmentFive, segmentSix]);
|
|
237
|
+
viewType = viewInfo.viewType;
|
|
238
|
+
documentSubViewType = viewInfo.documentSubViewType;
|
|
239
|
+
viewActions.push(...getSubViewActions({
|
|
240
|
+
collectionOrGlobal: collectionConfig,
|
|
241
|
+
viewKeyArg: documentSubViewType
|
|
242
|
+
}));
|
|
243
|
+
} else if (segmentThree === 'trash') {
|
|
244
|
+
// --> /collections/:collectionSlug/trash
|
|
245
|
+
ViewToRender = {
|
|
246
|
+
Component: TrashView
|
|
247
|
+
};
|
|
248
|
+
templateClassName = `${segmentTwo}-trash`;
|
|
249
|
+
templateType = 'default';
|
|
250
|
+
viewType = 'trash';
|
|
251
|
+
viewActions.push(...(collectionConfig.admin.components?.views?.list?.actions || []));
|
|
252
|
+
} else {
|
|
253
|
+
if (config.folders && segmentThree === config.folders.slug && collectionConfig.folders) {
|
|
254
|
+
// Collection Folder Views
|
|
255
|
+
// --> /collections/:collectionSlug/:folderCollectionSlug
|
|
256
|
+
// --> /collections/:collectionSlug/:folderCollectionSlug/:folderID
|
|
257
|
+
routeParams.folderCollection = segmentThree;
|
|
258
|
+
routeParams.folderID = segmentFour;
|
|
259
|
+
ViewToRender = {
|
|
260
|
+
Component: CollectionFolderView
|
|
261
|
+
};
|
|
262
|
+
templateClassName = `collection-folders`;
|
|
263
|
+
templateType = 'default';
|
|
264
|
+
viewType = 'collection-folders';
|
|
265
|
+
viewActions.push(...(collectionConfig.admin.components?.views?.list?.actions || []));
|
|
266
|
+
} else {
|
|
267
|
+
// Collection Edit Views
|
|
268
|
+
// --> /collections/:collectionSlug/create
|
|
269
|
+
// --> /collections/:collectionSlug/:id
|
|
270
|
+
// --> /collections/:collectionSlug/:id/api
|
|
271
|
+
// --> /collections/:collectionSlug/:id/versions
|
|
272
|
+
// --> /collections/:collectionSlug/:id/versions/:versionID
|
|
273
|
+
routeParams.id = segmentThree === 'create' ? undefined : segmentThree;
|
|
274
|
+
routeParams.versionID = segmentFive;
|
|
275
|
+
ViewToRender = {
|
|
276
|
+
Component: DocumentView
|
|
277
|
+
};
|
|
278
|
+
templateClassName = `collection-default-edit`;
|
|
279
|
+
templateType = 'default';
|
|
280
|
+
const viewInfo = getDocumentViewInfo([segmentFour, segmentFive]);
|
|
281
|
+
viewType = viewInfo.viewType;
|
|
282
|
+
documentSubViewType = viewInfo.documentSubViewType;
|
|
283
|
+
viewActions.push(...getSubViewActions({
|
|
284
|
+
collectionOrGlobal: collectionConfig,
|
|
285
|
+
viewKeyArg: documentSubViewType
|
|
286
|
+
}));
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
} else if (globalConfig) {
|
|
290
|
+
// Global Edit Views
|
|
291
|
+
// --> /globals/:globalSlug/versions
|
|
292
|
+
// --> /globals/:globalSlug/versions/:versionID
|
|
293
|
+
// --> /globals/:globalSlug/api
|
|
294
|
+
routeParams.global = globalConfig.slug;
|
|
295
|
+
routeParams.versionID = segmentFour;
|
|
296
|
+
ViewToRender = {
|
|
297
|
+
Component: DocumentView
|
|
298
|
+
};
|
|
299
|
+
templateClassName = `global-edit`;
|
|
300
|
+
templateType = 'default';
|
|
301
|
+
const viewInfo = getDocumentViewInfo([segmentThree, segmentFour]);
|
|
302
|
+
viewType = viewInfo.viewType;
|
|
303
|
+
documentSubViewType = viewInfo.documentSubViewType;
|
|
304
|
+
viewActions.push(...getSubViewActions({
|
|
305
|
+
collectionOrGlobal: globalConfig,
|
|
306
|
+
viewKeyArg: documentSubViewType
|
|
307
|
+
}));
|
|
308
|
+
}
|
|
309
|
+
break;
|
|
310
|
+
}
|
|
311
|
+
if (!ViewToRender) {
|
|
312
|
+
ViewToRender = getCustomViewByRoute({
|
|
313
|
+
config,
|
|
314
|
+
currentRoute
|
|
315
|
+
})?.view;
|
|
316
|
+
}
|
|
317
|
+
if (collectionConfig) {
|
|
318
|
+
if (routeParams.id) {
|
|
319
|
+
routeParams.id = parseDocumentID({
|
|
320
|
+
id: routeParams.id,
|
|
321
|
+
collectionSlug: collectionConfig.slug,
|
|
322
|
+
payload
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
if (routeParams.versionID) {
|
|
326
|
+
routeParams.versionID = parseDocumentID({
|
|
327
|
+
id: routeParams.versionID,
|
|
328
|
+
collectionSlug: collectionConfig.slug,
|
|
329
|
+
payload
|
|
330
|
+
});
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
if (config.folders && routeParams.folderID) {
|
|
334
|
+
routeParams.folderID = parseDocumentID({
|
|
335
|
+
id: routeParams.folderID,
|
|
336
|
+
collectionSlug: config.folders.slug,
|
|
337
|
+
payload
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
if (globalConfig && routeParams.versionID) {
|
|
341
|
+
routeParams.versionID = payload.db.defaultIDType === 'number' && isNumber(routeParams.versionID) ? Number(routeParams.versionID) : routeParams.versionID;
|
|
342
|
+
}
|
|
343
|
+
if (viewActions.length) {
|
|
344
|
+
viewActions.reverse();
|
|
345
|
+
}
|
|
346
|
+
return {
|
|
347
|
+
browseByFolderSlugs,
|
|
348
|
+
collectionConfig,
|
|
349
|
+
DefaultView: ViewToRender,
|
|
350
|
+
documentSubViewType,
|
|
351
|
+
globalConfig,
|
|
352
|
+
routeParams,
|
|
353
|
+
templateClassName,
|
|
354
|
+
templateType,
|
|
355
|
+
viewActions: viewActions.length ? viewActions : undefined,
|
|
356
|
+
viewType
|
|
357
|
+
};
|
|
358
|
+
};
|
|
359
|
+
//# sourceMappingURL=getRouteData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRouteData.js","names":["parseDocumentID","formatAdminURL","isNumber","AccountView","BrowseByFolder","CollectionFolderView","TrashView","CreateFirstUserView","DashboardView","DocumentView","forgotPasswordBaseClass","ForgotPasswordView","ListView","loginBaseClass","LoginView","LogoutInactivity","LogoutView","ResetPassword","resetPasswordBaseClass","UnauthorizedView","Verify","verifyBaseClass","getSubViewActions","getViewActions","getCustomViewByKey","getCustomViewByRoute","getDocumentViewInfo","isPathMatchingRoute","baseClasses","account","folders","forgot","login","reset","verify","oneSegmentViews","browseByFolder","createFirstUser","inactivity","logout","unauthorized","getRouteData","adminRoute","collectionConfig","collectionPreferences","undefined","currentRoute","globalConfig","payload","segments","config","ViewToRender","templateClassName","templateType","documentSubViewType","viewType","routeParams","segmentOne","segmentTwo","segmentThree","segmentFour","segmentFive","segmentSix","isBrowseByFolderEnabled","browseByFolderSlugs","collections","reduce","acc","slug","viewActions","admin","components","actions","length","Component","viewKey","routes","matchedRoute","Object","entries","find","route","exact","path","customView","view","payloadComponent","folderID","collection","listViewType","push","views","list","global","editConfig","edit","token","id","versionID","viewInfo","collectionOrGlobal","viewKeyArg","folderCollection","collectionSlug","db","defaultIDType","Number","reverse","DefaultView"],"sources":["../../../src/views/Root/getRouteData.ts"],"sourcesContent":["import type {\n AdminViewServerProps,\n CollectionPreferences,\n CollectionSlug,\n CustomComponent,\n DocumentSubViewTypes,\n Payload,\n PayloadComponent,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n ViewTypes,\n} from '@ruya.sa/payload'\nimport type React from 'react'\n\nimport { parseDocumentID } from '@ruya.sa/payload'\nimport { formatAdminURL, isNumber } from '@ruya.sa/payload/shared'\n\nimport { AccountView } from '../Account/index.js'\nimport { BrowseByFolder } from '../BrowseByFolder/index.js'\nimport { CollectionFolderView } from '../CollectionFolders/index.js'\nimport { TrashView } from '../CollectionTrash/index.js'\nimport { CreateFirstUserView } from '../CreateFirstUser/index.js'\nimport { DashboardView } from '../Dashboard/index.js'\nimport { DocumentView } from '../Document/index.js'\nimport { forgotPasswordBaseClass, ForgotPasswordView } from '../ForgotPassword/index.js'\nimport { ListView } from '../List/index.js'\nimport { loginBaseClass, LoginView } from '../Login/index.js'\nimport { LogoutInactivity, LogoutView } from '../Logout/index.js'\nimport { ResetPassword, resetPasswordBaseClass } from '../ResetPassword/index.js'\nimport { UnauthorizedView } from '../Unauthorized/index.js'\nimport { Verify, verifyBaseClass } from '../Verify/index.js'\nimport { getSubViewActions, getViewActions } from './attachViewActions.js'\nimport { getCustomViewByKey } from './getCustomViewByKey.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\nimport { getDocumentViewInfo } from './getDocumentViewInfo.js'\nimport { isPathMatchingRoute } from './isPathMatchingRoute.js'\n\nconst baseClasses = {\n account: 'account',\n folders: 'folders',\n forgot: forgotPasswordBaseClass,\n login: loginBaseClass,\n reset: resetPasswordBaseClass,\n verify: verifyBaseClass,\n}\n\ntype OneSegmentViews = {\n [K in Exclude<keyof SanitizedConfig['admin']['routes'], 'reset'>]: React.FC<AdminViewServerProps>\n}\n\nexport type ViewFromConfig = {\n Component?: React.FC<AdminViewServerProps>\n payloadComponent?: PayloadComponent<AdminViewServerProps>\n}\n\nconst oneSegmentViews: OneSegmentViews = {\n account: AccountView,\n browseByFolder: BrowseByFolder,\n createFirstUser: CreateFirstUserView,\n forgot: ForgotPasswordView,\n inactivity: LogoutInactivity,\n login: LoginView,\n logout: LogoutView,\n unauthorized: UnauthorizedView,\n}\n\ntype GetRouteDataResult = {\n browseByFolderSlugs: CollectionSlug[]\n collectionConfig?: SanitizedCollectionConfig\n DefaultView: ViewFromConfig\n documentSubViewType?: DocumentSubViewTypes\n globalConfig?: SanitizedGlobalConfig\n routeParams: {\n collection?: string\n folderCollection?: string\n folderID?: number | string\n global?: string\n id?: number | string\n token?: string\n versionID?: number | string\n }\n templateClassName: string\n templateType: 'default' | 'minimal'\n viewActions?: CustomComponent[]\n viewType?: ViewTypes\n}\n\ntype GetRouteDataArgs = {\n adminRoute: string\n collectionConfig?: SanitizedCollectionConfig\n /**\n * User preferences for a collection.\n *\n * These preferences are normally undefined\n * unless the user is on the list view and the\n * collection is folder enabled.\n */\n collectionPreferences?: CollectionPreferences\n currentRoute: string\n globalConfig?: SanitizedGlobalConfig\n payload: Payload\n searchParams: {\n [key: string]: string | string[]\n }\n segments: string[]\n}\n\nexport const getRouteData = ({\n adminRoute,\n collectionConfig,\n collectionPreferences = undefined,\n currentRoute,\n globalConfig,\n payload,\n segments,\n}: GetRouteDataArgs): GetRouteDataResult => {\n const { config } = payload\n let ViewToRender: ViewFromConfig = null\n let templateClassName: string\n let templateType: 'default' | 'minimal' | undefined\n let documentSubViewType: DocumentSubViewTypes\n let viewType: ViewTypes\n const routeParams: GetRouteDataResult['routeParams'] = {}\n\n const [segmentOne, segmentTwo, segmentThree, segmentFour, segmentFive, segmentSix] = segments\n\n const isBrowseByFolderEnabled = config.folders && config.folders.browseByFolder\n const browseByFolderSlugs =\n (isBrowseByFolderEnabled &&\n config.collections.reduce((acc, { slug, folders }) => {\n if (folders && folders.browseByFolder) {\n return [...acc, slug]\n }\n return acc\n }, [])) ||\n []\n\n const viewActions: CustomComponent[] = [...(config?.admin?.components?.actions || [])]\n\n switch (segments.length) {\n case 0: {\n if (currentRoute === adminRoute) {\n ViewToRender = {\n Component: DashboardView,\n }\n templateClassName = 'dashboard'\n templateType = 'default'\n viewType = 'dashboard'\n }\n break\n }\n case 1: {\n // users can override the default routes via `admin.routes` config\n // i.e.{ admin: { routes: { logout: '/sign-out', inactivity: '/idle' }}}\n let viewKey: keyof typeof oneSegmentViews\n\n if (config.admin.routes) {\n const matchedRoute = Object.entries(config.admin.routes).find(([, route]) => {\n return isPathMatchingRoute({\n currentRoute,\n exact: true,\n path: formatAdminURL({\n adminRoute,\n path: route,\n }),\n })\n })\n\n if (matchedRoute) {\n viewKey = matchedRoute[0] as keyof typeof oneSegmentViews\n }\n }\n\n // Check if a custom view is configured for this viewKey\n // First try to get custom view by the known viewKey, then fallback to route matching\n const customView =\n (viewKey && getCustomViewByKey({ config, viewKey })) ||\n getCustomViewByRoute({ config, currentRoute })\n\n if (customView?.view?.payloadComponent || customView?.view?.Component) {\n // User has configured a custom view (either overriding a built-in or a new custom view)\n ViewToRender = customView.view\n\n // If this custom view is overriding a built-in view (viewKey matches a built-in),\n // use the built-in's template settings and viewType\n if (viewKey && oneSegmentViews[viewKey]) {\n viewType = viewKey as ViewTypes\n templateClassName = baseClasses[viewKey] || viewKey\n templateType = 'minimal'\n\n if (viewKey === 'account') {\n templateType = 'default'\n }\n\n if (isBrowseByFolderEnabled && viewKey === 'browseByFolder') {\n templateType = 'default'\n viewType = 'folders'\n }\n }\n } else if (oneSegmentViews[viewKey]) {\n // --> /account\n // --> /create-first-user\n // --> /browse-by-folder\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n\n ViewToRender = {\n Component: oneSegmentViews[viewKey],\n }\n\n viewType = viewKey as ViewTypes\n\n templateClassName = baseClasses[viewKey]\n templateType = 'minimal'\n\n if (viewKey === 'account') {\n templateType = 'default'\n }\n\n if (isBrowseByFolderEnabled && viewKey === 'browseByFolder') {\n templateType = 'default'\n viewType = 'folders'\n }\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n ViewToRender = {\n Component: ResetPassword,\n }\n templateClassName = baseClasses[segmentTwo]\n templateType = 'minimal'\n viewType = 'reset'\n } else if (\n isBrowseByFolderEnabled &&\n `/${segmentOne}` === config.admin.routes.browseByFolder\n ) {\n // --> /browse-by-folder/:folderID\n routeParams.folderID = segmentTwo\n\n ViewToRender = {\n Component: oneSegmentViews.browseByFolder,\n }\n templateClassName = baseClasses.folders\n templateType = 'default'\n viewType = 'folders'\n } else if (collectionConfig) {\n // --> /collections/:collectionSlug'\n routeParams.collection = collectionConfig.slug\n\n if (\n collectionPreferences?.listViewType &&\n collectionPreferences.listViewType === 'folders'\n ) {\n // Render folder view by default if set in preferences\n ViewToRender = {\n Component: CollectionFolderView,\n }\n\n templateClassName = `collection-folders`\n templateType = 'default'\n viewType = 'collection-folders'\n } else {\n ViewToRender = {\n Component: ListView,\n }\n\n templateClassName = `${segmentTwo}-list`\n templateType = 'default'\n viewType = 'list'\n }\n\n viewActions.push(...(collectionConfig.admin.components?.views?.list?.actions || []))\n } else if (globalConfig) {\n // --> /globals/:globalSlug\n routeParams.global = globalConfig.slug\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = 'global-edit'\n templateType = 'default'\n viewType = 'document'\n\n // add default view actions\n viewActions.push(\n ...getViewActions({\n editConfig: globalConfig.admin?.components?.views?.edit,\n viewKey: 'default',\n }),\n )\n }\n break\n }\n default:\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n routeParams.collection = segmentOne\n routeParams.token = segmentThree\n\n ViewToRender = {\n Component: Verify,\n }\n\n templateClassName = 'verify'\n templateType = 'minimal'\n viewType = 'verify'\n } else if (collectionConfig) {\n routeParams.collection = collectionConfig.slug\n\n if (segmentThree === 'trash' && typeof segmentFour === 'string') {\n // --> /collections/:collectionSlug/trash/:id (read-only)\n // --> /collections/:collectionSlug/trash/:id/api\n // --> /collections/:collectionSlug/trash/:id/preview\n // --> /collections/:collectionSlug/trash/:id/versions\n // --> /collections/:collectionSlug/trash/:id/versions/:versionID\n routeParams.id = segmentFour\n routeParams.versionID = segmentSix\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `collection-default-edit`\n templateType = 'default'\n\n const viewInfo = getDocumentViewInfo([segmentFive, segmentSix])\n viewType = viewInfo.viewType\n documentSubViewType = viewInfo.documentSubViewType\n\n viewActions.push(\n ...getSubViewActions({\n collectionOrGlobal: collectionConfig,\n viewKeyArg: documentSubViewType,\n }),\n )\n } else if (segmentThree === 'trash') {\n // --> /collections/:collectionSlug/trash\n ViewToRender = {\n Component: TrashView,\n }\n\n templateClassName = `${segmentTwo}-trash`\n templateType = 'default'\n viewType = 'trash'\n\n viewActions.push(...(collectionConfig.admin.components?.views?.list?.actions || []))\n } else {\n if (config.folders && segmentThree === config.folders.slug && collectionConfig.folders) {\n // Collection Folder Views\n // --> /collections/:collectionSlug/:folderCollectionSlug\n // --> /collections/:collectionSlug/:folderCollectionSlug/:folderID\n routeParams.folderCollection = segmentThree\n routeParams.folderID = segmentFour\n\n ViewToRender = {\n Component: CollectionFolderView,\n }\n\n templateClassName = `collection-folders`\n templateType = 'default'\n viewType = 'collection-folders'\n\n viewActions.push(...(collectionConfig.admin.components?.views?.list?.actions || []))\n } else {\n // Collection Edit Views\n // --> /collections/:collectionSlug/create\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:versionID\n routeParams.id = segmentThree === 'create' ? undefined : segmentThree\n routeParams.versionID = segmentFive\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `collection-default-edit`\n templateType = 'default'\n\n const viewInfo = getDocumentViewInfo([segmentFour, segmentFive])\n viewType = viewInfo.viewType\n documentSubViewType = viewInfo.documentSubViewType\n\n viewActions.push(\n ...getSubViewActions({\n collectionOrGlobal: collectionConfig,\n viewKeyArg: documentSubViewType,\n }),\n )\n }\n }\n } else if (globalConfig) {\n // Global Edit Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/versions/:versionID\n // --> /globals/:globalSlug/api\n routeParams.global = globalConfig.slug\n routeParams.versionID = segmentFour\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `global-edit`\n templateType = 'default'\n\n const viewInfo = getDocumentViewInfo([segmentThree, segmentFour])\n viewType = viewInfo.viewType\n documentSubViewType = viewInfo.documentSubViewType\n\n viewActions.push(\n ...getSubViewActions({\n collectionOrGlobal: globalConfig,\n viewKeyArg: documentSubViewType,\n }),\n )\n }\n break\n }\n\n if (!ViewToRender) {\n ViewToRender = getCustomViewByRoute({ config, currentRoute })?.view\n }\n\n if (collectionConfig) {\n if (routeParams.id) {\n routeParams.id = parseDocumentID({\n id: routeParams.id,\n collectionSlug: collectionConfig.slug,\n payload,\n })\n }\n\n if (routeParams.versionID) {\n routeParams.versionID = parseDocumentID({\n id: routeParams.versionID,\n collectionSlug: collectionConfig.slug,\n payload,\n })\n }\n }\n\n if (config.folders && routeParams.folderID) {\n routeParams.folderID = parseDocumentID({\n id: routeParams.folderID,\n collectionSlug: config.folders.slug,\n payload,\n })\n }\n\n if (globalConfig && routeParams.versionID) {\n routeParams.versionID =\n payload.db.defaultIDType === 'number' && isNumber(routeParams.versionID)\n ? Number(routeParams.versionID)\n : routeParams.versionID\n }\n\n if (viewActions.length) {\n viewActions.reverse()\n }\n\n return {\n browseByFolderSlugs,\n collectionConfig,\n DefaultView: ViewToRender,\n documentSubViewType,\n globalConfig,\n routeParams,\n templateClassName,\n templateType,\n viewActions: viewActions.length ? viewActions : undefined,\n viewType,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|