@payloadcms/next 3.68.0-internal-debug.e9b66ee → 3.68.0-internal.10bf491
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/dist/auth/login.js +58 -52
- package/dist/auth/login.js.map +1 -1
- package/dist/auth/logout.js +44 -39
- package/dist/auth/logout.js.map +1 -1
- package/dist/auth/refresh.js +47 -45
- package/dist/auth/refresh.js.map +1 -1
- package/dist/cjs/withPayload.cjs +41 -65
- package/dist/cjs/withPayload.cjs.map +1 -1
- package/dist/config.js +0 -1
- package/dist/config.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +15 -9
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +72 -26
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +54 -36
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/index.js +64 -42
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +24 -8
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js +69 -61
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
- package/dist/elements/DocumentHeader/index.js +29 -11
- package/dist/elements/DocumentHeader/index.js.map +1 -1
- package/dist/elements/FormHeader/index.js +17 -10
- package/dist/elements/FormHeader/index.js.map +1 -1
- package/dist/elements/Logo/index.js +34 -19
- package/dist/elements/Logo/index.js.map +1 -1
- package/dist/elements/Nav/NavHamburger/index.js +45 -8
- package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.js +55 -15
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
- package/dist/elements/Nav/SettingsMenuButton/index.js +40 -11
- package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
- package/dist/elements/Nav/getNavPrefs.js +22 -27
- package/dist/elements/Nav/getNavPrefs.js.map +1 -1
- package/dist/elements/Nav/index.client.js +111 -42
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.js +121 -90
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/exports/auth.js +0 -1
- package/dist/exports/auth.js.map +1 -1
- package/dist/exports/client.js +1 -1
- package/dist/exports/client.js.map +1 -1
- package/dist/exports/layouts.js +0 -1
- package/dist/exports/layouts.js.map +1 -1
- package/dist/exports/routes.js +0 -1
- package/dist/exports/routes.js.map +1 -1
- package/dist/exports/rsc.js +0 -1
- package/dist/exports/rsc.js.map +1 -1
- package/dist/exports/templates.js +0 -1
- package/dist/exports/templates.js.map +1 -1
- package/dist/exports/utilities.js +12 -7
- package/dist/exports/utilities.js.map +1 -1
- package/dist/exports/views.js +0 -1
- package/dist/exports/views.js.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/layouts/Root/NestProviders.js +21 -13
- package/dist/layouts/Root/NestProviders.js.map +1 -1
- package/dist/layouts/Root/checkDependencies.js +41 -49
- package/dist/layouts/Root/checkDependencies.js.map +1 -1
- package/dist/layouts/Root/index.js +104 -64
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -5
- package/dist/routes/graphql/handler.js +122 -114
- package/dist/routes/graphql/handler.js.map +1 -1
- package/dist/routes/graphql/index.js +0 -1
- package/dist/routes/graphql/index.js.map +1 -1
- package/dist/routes/graphql/playground.js +23 -24
- package/dist/routes/graphql/playground.js.map +1 -1
- package/dist/routes/index.js +0 -1
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/rest/index.js +19 -20
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/routes/rest/og/image.js +72 -60
- package/dist/routes/rest/og/image.js.map +1 -1
- package/dist/routes/rest/og/index.js +55 -46
- package/dist/routes/rest/og/index.js.map +1 -1
- package/dist/templates/Default/NavHamburger/index.js +21 -4
- package/dist/templates/Default/NavHamburger/index.js.map +1 -1
- package/dist/templates/Default/Wrapper/index.js +45 -14
- package/dist/templates/Default/Wrapper/index.js.map +1 -1
- package/dist/templates/Default/index.js +133 -115
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/templates/Minimal/index.js +18 -12
- package/dist/templates/Minimal/index.js.map +1 -1
- package/dist/utilities/getExistingAuthToken.js +2 -3
- package/dist/utilities/getExistingAuthToken.js.map +1 -1
- package/dist/utilities/getNextRequestI18n.js +13 -12
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/getPayloadHMR.js +5 -5
- package/dist/utilities/getPayloadHMR.js.map +1 -1
- package/dist/utilities/getPreferences.js +22 -27
- package/dist/utilities/getPreferences.js.map +1 -1
- package/dist/utilities/getRequestLocale.js +14 -13
- package/dist/utilities/getRequestLocale.js.map +1 -1
- package/dist/utilities/getRequestTheme.js +19 -19
- package/dist/utilities/getRequestTheme.js.map +1 -1
- package/dist/utilities/getRouteWithoutAdmin.js +5 -3
- package/dist/utilities/getRouteWithoutAdmin.js.map +1 -1
- package/dist/utilities/getVisibleEntities.js +23 -12
- package/dist/utilities/getVisibleEntities.js.map +1 -1
- package/dist/utilities/handleAuthRedirect.js +36 -22
- package/dist/utilities/handleAuthRedirect.js.map +1 -1
- package/dist/utilities/handleServerFunctions.js +39 -32
- package/dist/utilities/handleServerFunctions.js.map +1 -1
- package/dist/utilities/initReq.js +96 -78
- package/dist/utilities/initReq.js.map +1 -1
- package/dist/utilities/isCustomAdminView.js +26 -22
- package/dist/utilities/isCustomAdminView.js.map +1 -1
- package/dist/utilities/isPublicAdminRoute.js +20 -26
- package/dist/utilities/isPublicAdminRoute.js.map +1 -1
- package/dist/utilities/meta.js +63 -68
- package/dist/utilities/meta.js.map +1 -1
- package/dist/utilities/selectiveCache.js +26 -25
- package/dist/utilities/selectiveCache.js.map +1 -1
- package/dist/utilities/setPayloadAuthCookie.js +22 -19
- package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
- package/dist/utilities/slugify.js +33 -24
- package/dist/utilities/slugify.js.map +1 -1
- package/dist/utilities/timestamp.js +6 -7
- package/dist/utilities/timestamp.js.map +1 -1
- package/dist/views/API/LocaleSelector/index.js +39 -7
- package/dist/views/API/LocaleSelector/index.js.map +1 -1
- package/dist/views/API/RenderJSON/index.js +119 -67
- package/dist/views/API/RenderJSON/index.js.map +1 -1
- package/dist/views/API/index.client.js +184 -132
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/API/index.js +3 -2
- package/dist/views/API/index.js.map +1 -1
- package/dist/views/API/metadata.js +23 -18
- package/dist/views/API/metadata.js.map +1 -1
- package/dist/views/Account/ResetPreferences/index.js +91 -47
- package/dist/views/Account/ResetPreferences/index.js.map +1 -1
- package/dist/views/Account/Settings/LanguageSelector.js +48 -7
- package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
- package/dist/views/Account/Settings/index.js +29 -17
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/ToggleTheme/index.js +56 -28
- package/dist/views/Account/ToggleTheme/index.js.map +1 -1
- package/dist/views/Account/index.client.js +32 -16
- package/dist/views/Account/index.client.js.map +1 -1
- package/dist/views/Account/index.js +156 -87
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/Account/metadata.js +12 -8
- package/dist/views/Account/metadata.js.map +1 -1
- package/dist/views/BrowseByFolder/buildView.js +159 -130
- package/dist/views/BrowseByFolder/buildView.js.map +1 -1
- package/dist/views/BrowseByFolder/index.js +16 -16
- package/dist/views/BrowseByFolder/index.js.map +1 -1
- package/dist/views/BrowseByFolder/metadata.js +15 -13
- package/dist/views/BrowseByFolder/metadata.js.map +1 -1
- package/dist/views/CollectionFolders/buildView.js +144 -114
- package/dist/views/CollectionFolders/buildView.js.map +1 -1
- package/dist/views/CollectionFolders/index.js +16 -16
- package/dist/views/CollectionFolders/index.js.map +1 -1
- package/dist/views/CollectionFolders/metadata.js +21 -18
- package/dist/views/CollectionFolders/metadata.js.map +1 -1
- package/dist/views/CollectionFolders/renderFolderViewSlots.js +61 -58
- package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
- package/dist/views/CollectionTrash/index.js +17 -17
- package/dist/views/CollectionTrash/index.js.map +1 -1
- package/dist/views/CollectionTrash/metadata.js +21 -18
- package/dist/views/CollectionTrash/metadata.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +98 -56
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.js +82 -57
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/CreateFirstUser/metadata.js +12 -8
- package/dist/views/CreateFirstUser/metadata.js.map +1 -1
- package/dist/views/Dashboard/Default/index.js +128 -77
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/index.js +90 -78
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Dashboard/metadata.js +14 -10
- package/dist/views/Dashboard/metadata.js.map +1 -1
- package/dist/views/Document/getCustomDocumentViewByKey.js +2 -3
- package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
- package/dist/views/Document/getCustomViewByRoute.js +30 -27
- package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
- package/dist/views/Document/getDocPreferences.js +41 -40
- package/dist/views/Document/getDocPreferences.js.map +1 -1
- package/dist/views/Document/getDocumentData.js +55 -44
- package/dist/views/Document/getDocumentData.js.map +1 -1
- package/dist/views/Document/getDocumentPermissions.js +80 -77
- package/dist/views/Document/getDocumentPermissions.js.map +1 -1
- package/dist/views/Document/getDocumentView.js +283 -313
- package/dist/views/Document/getDocumentView.js.map +1 -1
- package/dist/views/Document/getIsLocked.js +66 -66
- package/dist/views/Document/getIsLocked.js.map +1 -1
- package/dist/views/Document/getMetaBySegment.js +136 -130
- package/dist/views/Document/getMetaBySegment.js.map +1 -1
- package/dist/views/Document/getVersions.js +194 -204
- package/dist/views/Document/getVersions.js.map +1 -1
- package/dist/views/Document/handleServerFunction.js +128 -103
- package/dist/views/Document/handleServerFunction.js.map +1 -1
- package/dist/views/Document/index.js +351 -250
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Document/metadata.js +1 -2
- package/dist/views/Document/metadata.js.map +1 -1
- package/dist/views/Document/renderDocumentSlots.js +132 -121
- package/dist/views/Document/renderDocumentSlots.js.map +1 -1
- package/dist/views/Edit/index.js +7 -3
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/Edit/metadata.js +46 -36
- package/dist/views/Edit/metadata.js.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +151 -70
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.js +61 -26
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/ForgotPassword/metadata.js +12 -8
- package/dist/views/ForgotPassword/metadata.js.map +1 -1
- package/dist/views/List/createSerializableValue.js +11 -12
- package/dist/views/List/createSerializableValue.js.map +1 -1
- package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
- package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
- package/dist/views/List/extractRelationshipDisplayValue.js +14 -15
- package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
- package/dist/views/List/extractValueOrRelationshipID.js +15 -16
- package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
- package/dist/views/List/handleGroupBy.js +150 -133
- package/dist/views/List/handleGroupBy.js.map +1 -1
- package/dist/views/List/handleServerFunction.js +119 -96
- package/dist/views/List/handleServerFunction.js.map +1 -1
- package/dist/views/List/index.js +324 -284
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/metadata.js +20 -17
- package/dist/views/List/metadata.js.map +1 -1
- package/dist/views/List/renderListViewSlots.js +75 -70
- package/dist/views/List/renderListViewSlots.js.map +1 -1
- package/dist/views/List/resolveAllFilterOptions.js +45 -43
- package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
- package/dist/views/List/transformColumnsToSelect.js +8 -9
- package/dist/views/List/transformColumnsToSelect.js.map +1 -1
- package/dist/views/Login/LoginField/index.js +90 -32
- package/dist/views/Login/LoginField/index.js.map +1 -1
- package/dist/views/Login/LoginForm/index.js +156 -55
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/index.js +86 -50
- package/dist/views/Login/index.js.map +1 -1
- package/dist/views/Login/metadata.js +12 -8
- package/dist/views/Login/metadata.js.map +1 -1
- package/dist/views/Logout/LogoutClient.js +119 -54
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.js +30 -8
- package/dist/views/Logout/index.js.map +1 -1
- package/dist/views/Logout/metadata.js +11 -7
- package/dist/views/Logout/metadata.js.map +1 -1
- package/dist/views/NotFound/index.client.js +83 -32
- package/dist/views/NotFound/index.client.js.map +1 -1
- package/dist/views/NotFound/index.js +73 -44
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/NotFound/metadata.js +9 -7
- package/dist/views/NotFound/metadata.js.map +1 -1
- package/dist/views/ResetPassword/ResetPasswordForm/index.js +107 -49
- package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
- package/dist/views/ResetPassword/index.js +72 -29
- package/dist/views/ResetPassword/index.js.map +1 -1
- package/dist/views/ResetPassword/metadata.js +12 -8
- package/dist/views/ResetPassword/metadata.js.map +1 -1
- package/dist/views/Root/attachViewActions.js +23 -18
- package/dist/views/Root/attachViewActions.js.map +1 -1
- package/dist/views/Root/generateCustomViewMetadata.js +21 -19
- package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
- package/dist/views/Root/getCustomViewByKey.js +14 -12
- package/dist/views/Root/getCustomViewByKey.js.map +1 -1
- package/dist/views/Root/getCustomViewByRoute.js +42 -31
- package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
- package/dist/views/Root/getDocumentViewInfo.js +23 -24
- package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
- package/dist/views/Root/getRouteData.js +325 -333
- package/dist/views/Root/getRouteData.js.map +1 -1
- package/dist/views/Root/index.js +265 -203
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Root/isPathMatchingRoute.js +26 -21
- package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
- package/dist/views/Root/metadata.js +181 -176
- package/dist/views/Root/metadata.js.map +1 -1
- package/dist/views/Unauthorized/index.js +45 -18
- package/dist/views/Unauthorized/index.js.map +1 -1
- package/dist/views/Unauthorized/metadata.js +12 -8
- package/dist/views/Unauthorized/metadata.js.map +1 -1
- package/dist/views/Verify/index.client.js +43 -25
- package/dist/views/Verify/index.client.js.map +1 -1
- package/dist/views/Verify/index.js +62 -31
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Verify/metadata.js +12 -8
- package/dist/views/Verify/metadata.js.map +1 -1
- package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
- package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
- package/dist/views/Version/Default/SetStepNav.js +127 -86
- package/dist/views/Version/Default/SetStepNav.js.map +1 -1
- package/dist/views/Version/Default/index.js +236 -174
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/Default/types.js +1 -2
- package/dist/views/Version/Default/types.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +120 -54
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +74 -37
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +408 -363
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +52 -12
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +66 -21
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +57 -15
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +118 -55
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +41 -36
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +179 -65
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +12 -5
- package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +72 -34
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +139 -57
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +80 -42
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +211 -103
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js +22 -23
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/index.js +9 -4
- package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +228 -213
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +826 -1005
- package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +1 -2
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +43 -44
- package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js +22 -25
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +36 -32
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +129 -145
- package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
- package/dist/views/Version/Restore/index.js +92 -77
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -25
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js +227 -140
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/index.js +51 -44
- package/dist/views/Version/SelectComparison/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/types.js +1 -2
- package/dist/views/Version/SelectComparison/types.js.map +1 -1
- package/dist/views/Version/SelectLocales/index.js +30 -16
- package/dist/views/Version/SelectLocales/index.js.map +1 -1
- package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +95 -37
- package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
- package/dist/views/Version/VersionPillLabel/getVersionLabel.js +27 -23
- package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
- package/dist/views/Version/fetchVersions.js +138 -113
- package/dist/views/Version/fetchVersions.js.map +1 -1
- package/dist/views/Version/index.js +323 -283
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Version/metadata.js +50 -43
- package/dist/views/Version/metadata.js.map +1 -1
- package/dist/views/Versions/buildColumns.js +80 -47
- package/dist/views/Versions/buildColumns.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +39 -8
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js +54 -25
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/cells/ID/index.js +9 -4
- package/dist/views/Versions/cells/ID/index.js.map +1 -1
- package/dist/views/Versions/index.client.js +83 -28
- package/dist/views/Versions/index.client.js.map +1 -1
- package/dist/views/Versions/index.js +140 -94
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/views/Versions/metadata.js +44 -37
- package/dist/views/Versions/metadata.js.map +1 -1
- package/dist/views/Versions/types.js +1 -2
- package/dist/views/Versions/types.js.map +1 -1
- package/dist/withPayload.d.ts +8 -2
- package/dist/withPayload.d.ts.map +1 -1
- package/dist/withPayload.js +145 -219
- package/dist/withPayload.js.map +1 -1
- package/dist/withPayload.utils.d.ts +58 -0
- package/dist/withPayload.utils.d.ts.map +1 -0
- package/dist/withPayload.utils.js +101 -0
- package/dist/withPayload.utils.js.map +1 -0
- package/dist/withPayloadLegacy.d.ts +6 -0
- package/dist/withPayloadLegacy.d.ts.map +1 -0
- package/dist/withPayloadLegacy.js +44 -0
- package/dist/withPayloadLegacy.js.map +1 -0
- package/package.json +15 -17
- package/dist/esbuildEntry.d.ts +0 -5
- package/dist/esbuildEntry.d.ts.map +0 -1
- package/dist/esbuildEntry.js +0 -6
- package/dist/esbuildEntry.js.map +0 -1
|
@@ -1,73 +1,108 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
2
|
import { getTranslation } from '@payloadcms/translations';
|
|
2
3
|
import { Button, Card, Gutter, Locked } from '@payloadcms/ui';
|
|
3
4
|
import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
|
|
4
5
|
import { EntityType } from '@payloadcms/ui/shared';
|
|
5
6
|
import { formatAdminURL } from 'payload/shared';
|
|
6
|
-
import { Fragment } from 'react';
|
|
7
|
-
import './index.scss';
|
|
7
|
+
import React, { Fragment } from 'react';
|
|
8
8
|
const baseClass = 'dashboard';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
9
|
+
export function DefaultDashboard(props) {
|
|
10
|
+
const {
|
|
11
|
+
globalData,
|
|
12
|
+
i18n,
|
|
13
|
+
i18n: {
|
|
14
|
+
t
|
|
15
|
+
},
|
|
16
|
+
locale,
|
|
17
|
+
navGroups,
|
|
18
|
+
params,
|
|
19
|
+
payload: {
|
|
20
|
+
config: {
|
|
21
|
+
admin: {
|
|
22
|
+
components: {
|
|
23
|
+
afterDashboard,
|
|
24
|
+
beforeDashboard
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
routes: {
|
|
28
|
+
admin: adminRoute
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
payload,
|
|
33
|
+
permissions,
|
|
34
|
+
searchParams,
|
|
35
|
+
user
|
|
36
|
+
} = props;
|
|
37
|
+
return /*#__PURE__*/_jsx("div", {
|
|
38
|
+
className: baseClass,
|
|
39
|
+
children: /*#__PURE__*/_jsxs(Gutter, {
|
|
40
|
+
className: `${baseClass}__wrap`,
|
|
41
|
+
children: [beforeDashboard && RenderServerComponent({
|
|
18
42
|
Component: beforeDashboard,
|
|
19
43
|
importMap: payload.importMap,
|
|
20
44
|
serverProps: {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
45
|
+
i18n,
|
|
46
|
+
locale,
|
|
47
|
+
params,
|
|
48
|
+
payload,
|
|
49
|
+
permissions,
|
|
50
|
+
searchParams,
|
|
51
|
+
user
|
|
28
52
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
53
|
+
}), /*#__PURE__*/_jsx(Fragment, {
|
|
54
|
+
children: !navGroups || navGroups?.length === 0 ? /*#__PURE__*/_jsx("p", {
|
|
55
|
+
children: "no nav groups...."
|
|
56
|
+
}) : navGroups.map(({
|
|
57
|
+
entities,
|
|
58
|
+
label
|
|
59
|
+
}, groupIndex) => {
|
|
60
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
61
|
+
className: `${baseClass}__group`,
|
|
62
|
+
children: [/*#__PURE__*/_jsx("h2", {
|
|
63
|
+
className: `${baseClass}__label`,
|
|
64
|
+
children: label
|
|
65
|
+
}), /*#__PURE__*/_jsx("ul", {
|
|
66
|
+
className: `${baseClass}__card-list`,
|
|
67
|
+
children: entities.map(({
|
|
68
|
+
slug,
|
|
69
|
+
type,
|
|
70
|
+
label
|
|
71
|
+
}, entityIndex) => {
|
|
72
|
+
let title;
|
|
73
|
+
let buttonAriaLabel;
|
|
74
|
+
let createHREF;
|
|
75
|
+
let href;
|
|
76
|
+
let hasCreatePermission;
|
|
77
|
+
let isLocked = null;
|
|
78
|
+
let userEditing = null;
|
|
79
|
+
if (type === EntityType.collection) {
|
|
80
|
+
title = getTranslation(label, i18n);
|
|
81
|
+
buttonAriaLabel = t('general:showAllLabel', {
|
|
47
82
|
label: title
|
|
48
|
-
|
|
49
|
-
|
|
83
|
+
});
|
|
84
|
+
href = formatAdminURL({
|
|
50
85
|
adminRoute,
|
|
51
86
|
path: `/collections/${slug}`
|
|
52
|
-
|
|
53
|
-
|
|
87
|
+
});
|
|
88
|
+
createHREF = formatAdminURL({
|
|
54
89
|
adminRoute,
|
|
55
90
|
path: `/collections/${slug}/create`
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
91
|
+
});
|
|
92
|
+
hasCreatePermission = permissions?.collections?.[slug]?.create;
|
|
93
|
+
}
|
|
94
|
+
if (type === EntityType.global) {
|
|
95
|
+
title = getTranslation(label, i18n);
|
|
96
|
+
buttonAriaLabel = t('general:editLabel', {
|
|
62
97
|
label: getTranslation(label, i18n)
|
|
63
|
-
|
|
64
|
-
|
|
98
|
+
});
|
|
99
|
+
href = formatAdminURL({
|
|
65
100
|
adminRoute,
|
|
66
101
|
path: `/globals/${slug}`
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
102
|
+
});
|
|
103
|
+
// Find the lock status for the global
|
|
104
|
+
const globalLockData = globalData.find(global => global.slug === slug);
|
|
105
|
+
if (globalLockData) {
|
|
71
106
|
isLocked = globalLockData.data._isLocked;
|
|
72
107
|
userEditing = globalLockData.data._userEditing;
|
|
73
108
|
// Check if the lock is expired
|
|
@@ -76,36 +111,52 @@ const baseClass = 'dashboard';
|
|
|
76
111
|
const lockDurationInMilliseconds = lockDuration * 1000;
|
|
77
112
|
const lockExpirationTime = lastEditedAt + lockDurationInMilliseconds;
|
|
78
113
|
if (new Date().getTime() > lockExpirationTime) {
|
|
79
|
-
|
|
80
|
-
|
|
114
|
+
isLocked = false;
|
|
115
|
+
userEditing = null;
|
|
81
116
|
}
|
|
117
|
+
}
|
|
82
118
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
119
|
+
return /*#__PURE__*/_jsx("li", {
|
|
120
|
+
children: /*#__PURE__*/_jsx(Card, {
|
|
121
|
+
actions: isLocked && user?.id !== userEditing?.id ? /*#__PURE__*/_jsx(Locked, {
|
|
122
|
+
className: `${baseClass}__locked`,
|
|
123
|
+
user: userEditing
|
|
124
|
+
}) : hasCreatePermission && type === EntityType.collection ? /*#__PURE__*/_jsx(Button, {
|
|
125
|
+
"aria-label": t('general:createNewLabel', {
|
|
126
|
+
label
|
|
127
|
+
}),
|
|
128
|
+
buttonStyle: "icon-label",
|
|
129
|
+
el: "link",
|
|
130
|
+
icon: "plus",
|
|
131
|
+
iconStyle: "with-border",
|
|
132
|
+
round: true,
|
|
133
|
+
to: createHREF
|
|
134
|
+
}) : undefined,
|
|
135
|
+
buttonAriaLabel: buttonAriaLabel,
|
|
136
|
+
href: href,
|
|
137
|
+
id: `card-${slug}`,
|
|
138
|
+
title: getTranslation(label, i18n),
|
|
139
|
+
titleAs: "h3"
|
|
140
|
+
})
|
|
141
|
+
}, entityIndex);
|
|
142
|
+
})
|
|
143
|
+
})]
|
|
144
|
+
}, groupIndex);
|
|
145
|
+
})
|
|
146
|
+
}), afterDashboard && RenderServerComponent({
|
|
95
147
|
Component: afterDashboard,
|
|
96
148
|
importMap: payload.importMap,
|
|
97
149
|
serverProps: {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
150
|
+
i18n,
|
|
151
|
+
locale,
|
|
152
|
+
params,
|
|
153
|
+
payload,
|
|
154
|
+
permissions,
|
|
155
|
+
searchParams,
|
|
156
|
+
user
|
|
105
157
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
158
|
+
})]
|
|
159
|
+
})
|
|
160
|
+
});
|
|
109
161
|
}
|
|
110
|
-
|
|
111
162
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/Dashboard/Default/index.tsx"],"sourcesContent":["import type { groupNavItems } from '@payloadcms/ui/shared'\nimport type { AdminViewServerPropsOnly, ClientUser, Locale, ServerProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { Button, Card, Gutter, Locked } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType } from '@payloadcms/ui/shared'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'dashboard'\n\nexport type DashboardViewClientProps = {\n locale: Locale\n}\n\nexport type DashboardViewServerPropsOnly = {\n globalData: Array<{\n data: { _isLocked: boolean; _lastEditedAt: string; _userEditing: ClientUser | number | string }\n lockDuration?: number\n slug: string\n }>\n /**\n * @deprecated\n * This prop is deprecated and will be removed in the next major version.\n * Components now import their own `Link` directly from `next/link`.\n */\n Link?: React.ComponentType\n navGroups?: ReturnType<typeof groupNavItems>\n} & AdminViewServerPropsOnly\n\nexport type DashboardViewServerProps = DashboardViewClientProps & DashboardViewServerPropsOnly\n\nexport function DefaultDashboard(props: DashboardViewServerProps) {\n const {\n globalData,\n i18n,\n i18n: { t },\n locale,\n navGroups,\n params,\n payload: {\n config: {\n admin: {\n components: { afterDashboard, beforeDashboard },\n },\n routes: { admin: adminRoute },\n },\n },\n payload,\n permissions,\n searchParams,\n user,\n } = props\n\n return (\n <div className={baseClass}>\n <Gutter className={`${baseClass}__wrap`}>\n {beforeDashboard &&\n RenderServerComponent({\n Component: beforeDashboard,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n } satisfies ServerProps,\n })}\n\n <Fragment>\n {!navGroups || navGroups?.length === 0 ? (\n <p>no nav groups....</p>\n ) : (\n navGroups.map(({ entities, label }, groupIndex) => {\n return (\n <div className={`${baseClass}__group`} key={groupIndex}>\n <h2 className={`${baseClass}__label`}>{label}</h2>\n <ul className={`${baseClass}__card-list`}>\n {entities.map(({ slug, type, label }, entityIndex) => {\n let title: string\n let buttonAriaLabel: string\n let createHREF: string\n let href: string\n let hasCreatePermission: boolean\n let isLocked = null\n let userEditing = null\n\n if (type === EntityType.collection) {\n title = getTranslation(label, i18n)\n\n buttonAriaLabel = t('general:showAllLabel', { label: title })\n\n href = formatAdminURL({ adminRoute, path: `/collections/${slug}` })\n\n createHREF = formatAdminURL({\n adminRoute,\n path: `/collections/${slug}/create`,\n })\n\n hasCreatePermission = permissions?.collections?.[slug]?.create\n }\n\n if (type === EntityType.global) {\n title = getTranslation(label, i18n)\n\n buttonAriaLabel = t('general:editLabel', {\n label: getTranslation(label, i18n),\n })\n\n href = formatAdminURL({\n adminRoute,\n path: `/globals/${slug}`,\n })\n\n // Find the lock status for the global\n const globalLockData = globalData.find((global) => global.slug === slug)\n if (globalLockData) {\n isLocked = globalLockData.data._isLocked\n userEditing = globalLockData.data._userEditing\n\n // Check if the lock is expired\n const lockDuration = globalLockData?.lockDuration\n const lastEditedAt = new Date(\n globalLockData.data?._lastEditedAt,\n ).getTime()\n\n const lockDurationInMilliseconds = lockDuration * 1000\n const lockExpirationTime = lastEditedAt + lockDurationInMilliseconds\n\n if (new Date().getTime() > lockExpirationTime) {\n isLocked = false\n userEditing = null\n }\n }\n }\n\n return (\n <li key={entityIndex}>\n <Card\n actions={\n isLocked && user?.id !== userEditing?.id ? (\n <Locked className={`${baseClass}__locked`} user={userEditing} />\n ) : hasCreatePermission && type === EntityType.collection ? (\n <Button\n aria-label={t('general:createNewLabel', {\n label,\n })}\n buttonStyle=\"icon-label\"\n el=\"link\"\n icon=\"plus\"\n iconStyle=\"with-border\"\n round\n to={createHREF}\n />\n ) : undefined\n }\n buttonAriaLabel={buttonAriaLabel}\n href={href}\n id={`card-${slug}`}\n title={getTranslation(label, i18n)}\n titleAs=\"h3\"\n />\n </li>\n )\n })}\n </ul>\n </div>\n )\n })\n )}\n </Fragment>\n {afterDashboard &&\n RenderServerComponent({\n Component: afterDashboard,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n } satisfies ServerProps,\n })}\n </Gutter>\n </div>\n )\n}\n"],"names":["getTranslation","Button","Card","Gutter","Locked","RenderServerComponent","EntityType","formatAdminURL","Fragment","baseClass","DefaultDashboard","props","globalData","i18n","t","locale","navGroups","params","payload","config","admin","components","afterDashboard","beforeDashboard","routes","adminRoute","permissions","searchParams","user","div","className","Component","importMap","serverProps","length","p","map","entities","label","groupIndex","key","h2","ul","slug","type","entityIndex","title","buttonAriaLabel","createHREF","href","hasCreatePermission","isLocked","userEditing","collection","path","collections","create","global","globalLockData","find","data","_isLocked","_userEditing","lockDuration","lastEditedAt","Date","_lastEditedAt","getTime","lockDurationInMilliseconds","lockExpirationTime","li","actions","id","aria-label","buttonStyle","el","icon","iconStyle","round","to","undefined","titleAs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","Button","Card","Gutter","Locked","RenderServerComponent","EntityType","formatAdminURL","React","Fragment","baseClass","DefaultDashboard","props","globalData","i18n","t","locale","navGroups","params","payload","config","admin","components","afterDashboard","beforeDashboard","routes","adminRoute","permissions","searchParams","user","_jsx","className","_jsxs","Component","importMap","serverProps","length","map","entities","label","groupIndex","slug","type","entityIndex","title","buttonAriaLabel","createHREF","href","hasCreatePermission","isLocked","userEditing","collection","path","collections","create","global","globalLockData","find","data","_isLocked","_userEditing","lockDuration","lastEditedAt","Date","_lastEditedAt","getTime","lockDurationInMilliseconds","lockExpirationTime","actions","id","buttonStyle","el","icon","iconStyle","round","to","undefined","titleAs"],"sources":["../../../../src/views/Dashboard/Default/index.tsx"],"sourcesContent":["import type { groupNavItems } from '@payloadcms/ui/shared'\nimport type { AdminViewServerPropsOnly, ClientUser, Locale, ServerProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { Button, Card, Gutter, Locked } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType } from '@payloadcms/ui/shared'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'dashboard'\n\nexport type DashboardViewClientProps = {\n locale: Locale\n}\n\nexport type DashboardViewServerPropsOnly = {\n globalData: Array<{\n data: { _isLocked: boolean; _lastEditedAt: string; _userEditing: ClientUser | number | string }\n lockDuration?: number\n slug: string\n }>\n /**\n * @deprecated\n * This prop is deprecated and will be removed in the next major version.\n * Components now import their own `Link` directly from `next/link`.\n */\n Link?: React.ComponentType\n navGroups?: ReturnType<typeof groupNavItems>\n} & AdminViewServerPropsOnly\n\nexport type DashboardViewServerProps = DashboardViewClientProps & DashboardViewServerPropsOnly\n\nexport function DefaultDashboard(props: DashboardViewServerProps) {\n const {\n globalData,\n i18n,\n i18n: { t },\n locale,\n navGroups,\n params,\n payload: {\n config: {\n admin: {\n components: { afterDashboard, beforeDashboard },\n },\n routes: { admin: adminRoute },\n },\n },\n payload,\n permissions,\n searchParams,\n user,\n } = props\n\n return (\n <div className={baseClass}>\n <Gutter className={`${baseClass}__wrap`}>\n {beforeDashboard &&\n RenderServerComponent({\n Component: beforeDashboard,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n } satisfies ServerProps,\n })}\n\n <Fragment>\n {!navGroups || navGroups?.length === 0 ? (\n <p>no nav groups....</p>\n ) : (\n navGroups.map(({ entities, label }, groupIndex) => {\n return (\n <div className={`${baseClass}__group`} key={groupIndex}>\n <h2 className={`${baseClass}__label`}>{label}</h2>\n <ul className={`${baseClass}__card-list`}>\n {entities.map(({ slug, type, label }, entityIndex) => {\n let title: string\n let buttonAriaLabel: string\n let createHREF: string\n let href: string\n let hasCreatePermission: boolean\n let isLocked = null\n let userEditing = null\n\n if (type === EntityType.collection) {\n title = getTranslation(label, i18n)\n\n buttonAriaLabel = t('general:showAllLabel', { label: title })\n\n href = formatAdminURL({ adminRoute, path: `/collections/${slug}` })\n\n createHREF = formatAdminURL({\n adminRoute,\n path: `/collections/${slug}/create`,\n })\n\n hasCreatePermission = permissions?.collections?.[slug]?.create\n }\n\n if (type === EntityType.global) {\n title = getTranslation(label, i18n)\n\n buttonAriaLabel = t('general:editLabel', {\n label: getTranslation(label, i18n),\n })\n\n href = formatAdminURL({\n adminRoute,\n path: `/globals/${slug}`,\n })\n\n // Find the lock status for the global\n const globalLockData = globalData.find((global) => global.slug === slug)\n if (globalLockData) {\n isLocked = globalLockData.data._isLocked\n userEditing = globalLockData.data._userEditing\n\n // Check if the lock is expired\n const lockDuration = globalLockData?.lockDuration\n const lastEditedAt = new Date(\n globalLockData.data?._lastEditedAt,\n ).getTime()\n\n const lockDurationInMilliseconds = lockDuration * 1000\n const lockExpirationTime = lastEditedAt + lockDurationInMilliseconds\n\n if (new Date().getTime() > lockExpirationTime) {\n isLocked = false\n userEditing = null\n }\n }\n }\n\n return (\n <li key={entityIndex}>\n <Card\n actions={\n isLocked && user?.id !== userEditing?.id ? (\n <Locked className={`${baseClass}__locked`} user={userEditing} />\n ) : hasCreatePermission && type === EntityType.collection ? (\n <Button\n aria-label={t('general:createNewLabel', {\n label,\n })}\n buttonStyle=\"icon-label\"\n el=\"link\"\n icon=\"plus\"\n iconStyle=\"with-border\"\n round\n to={createHREF}\n />\n ) : undefined\n }\n buttonAriaLabel={buttonAriaLabel}\n href={href}\n id={`card-${slug}`}\n title={getTranslation(label, i18n)}\n titleAs=\"h3\"\n />\n </li>\n )\n })}\n </ul>\n </div>\n )\n })\n )}\n </Fragment>\n {afterDashboard &&\n RenderServerComponent({\n Component: afterDashboard,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n } satisfies ServerProps,\n })}\n </Gutter>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,87 +1,99 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
2
|
import { HydrateAuthProvider, SetStepNav } from '@payloadcms/ui';
|
|
2
3
|
import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
|
|
3
4
|
import { EntityType, groupNavItems } from '@payloadcms/ui/shared';
|
|
4
|
-
import { Fragment } from 'react';
|
|
5
|
+
import React, { Fragment } from 'react';
|
|
5
6
|
import { DefaultDashboard } from './Default/index.js';
|
|
6
7
|
const globalLockDurationDefault = 300;
|
|
7
8
|
export async function DashboardView(props) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
},
|
|
42
|
-
lockDuration
|
|
43
|
-
};
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
const navGroups = groupNavItems([
|
|
47
|
-
...collections.map((collection)=>{
|
|
48
|
-
const entityToGroup = {
|
|
49
|
-
type: EntityType.collection,
|
|
50
|
-
entity: collection
|
|
51
|
-
};
|
|
52
|
-
return entityToGroup;
|
|
53
|
-
}) ?? [],
|
|
54
|
-
...globals.map((global)=>{
|
|
55
|
-
const entityToGroup = {
|
|
56
|
-
type: EntityType.global,
|
|
57
|
-
entity: global
|
|
58
|
-
};
|
|
59
|
-
return entityToGroup;
|
|
60
|
-
}) ?? []
|
|
61
|
-
], permissions, i18n);
|
|
62
|
-
return <Fragment>
|
|
63
|
-
<HydrateAuthProvider permissions={permissions}/>
|
|
64
|
-
<SetStepNav nav={[]}/>
|
|
65
|
-
{RenderServerComponent({
|
|
66
|
-
clientProps: {
|
|
67
|
-
locale
|
|
68
|
-
},
|
|
69
|
-
Component: config.admin?.components?.views?.dashboard?.Component,
|
|
70
|
-
Fallback: DefaultDashboard,
|
|
71
|
-
importMap: payload.importMap,
|
|
72
|
-
serverProps: {
|
|
73
|
-
...props,
|
|
74
|
-
globalData,
|
|
75
|
-
i18n,
|
|
76
|
-
locale,
|
|
77
|
-
navGroups,
|
|
78
|
-
payload,
|
|
79
|
-
permissions,
|
|
80
|
-
user,
|
|
81
|
-
visibleEntities
|
|
9
|
+
const {
|
|
10
|
+
locale,
|
|
11
|
+
permissions,
|
|
12
|
+
req: {
|
|
13
|
+
i18n,
|
|
14
|
+
payload: {
|
|
15
|
+
config
|
|
16
|
+
},
|
|
17
|
+
payload,
|
|
18
|
+
user
|
|
19
|
+
},
|
|
20
|
+
req,
|
|
21
|
+
visibleEntities
|
|
22
|
+
} = props.initPageResult;
|
|
23
|
+
const collections = config.collections.filter(collection => permissions?.collections?.[collection.slug]?.read && visibleEntities.collections.includes(collection.slug));
|
|
24
|
+
const globals = config.globals.filter(global => permissions?.globals?.[global.slug]?.read && visibleEntities.globals.includes(global.slug));
|
|
25
|
+
// Query locked global documents only if there are globals in the config
|
|
26
|
+
let globalData = [];
|
|
27
|
+
if (config.globals.length > 0) {
|
|
28
|
+
const lockedDocuments = await payload.find({
|
|
29
|
+
collection: 'payload-locked-documents',
|
|
30
|
+
depth: 1,
|
|
31
|
+
overrideAccess: false,
|
|
32
|
+
pagination: false,
|
|
33
|
+
req,
|
|
34
|
+
select: {
|
|
35
|
+
globalSlug: true,
|
|
36
|
+
updatedAt: true,
|
|
37
|
+
user: true
|
|
38
|
+
},
|
|
39
|
+
where: {
|
|
40
|
+
globalSlug: {
|
|
41
|
+
exists: true
|
|
82
42
|
}
|
|
83
|
-
|
|
84
|
-
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
// Map over globals to include `lockDuration` and lock data for each global slug
|
|
46
|
+
globalData = config.globals.map(global => {
|
|
47
|
+
const lockDuration = typeof global.lockDocuments === 'object' ? global.lockDocuments.duration : globalLockDurationDefault;
|
|
48
|
+
const lockedDoc = lockedDocuments.docs.find(doc => doc.globalSlug === global.slug);
|
|
49
|
+
return {
|
|
50
|
+
slug: global.slug,
|
|
51
|
+
data: {
|
|
52
|
+
_isLocked: !!lockedDoc,
|
|
53
|
+
_lastEditedAt: lockedDoc?.updatedAt ?? null,
|
|
54
|
+
_userEditing: lockedDoc?.user?.value ?? null
|
|
55
|
+
},
|
|
56
|
+
lockDuration
|
|
57
|
+
};
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
const navGroups = groupNavItems([...(collections.map(collection => {
|
|
61
|
+
const entityToGroup = {
|
|
62
|
+
type: EntityType.collection,
|
|
63
|
+
entity: collection
|
|
64
|
+
};
|
|
65
|
+
return entityToGroup;
|
|
66
|
+
}) ?? []), ...(globals.map(global => {
|
|
67
|
+
const entityToGroup = {
|
|
68
|
+
type: EntityType.global,
|
|
69
|
+
entity: global
|
|
70
|
+
};
|
|
71
|
+
return entityToGroup;
|
|
72
|
+
}) ?? [])], permissions, i18n);
|
|
73
|
+
return /*#__PURE__*/_jsxs(Fragment, {
|
|
74
|
+
children: [/*#__PURE__*/_jsx(HydrateAuthProvider, {
|
|
75
|
+
permissions: permissions
|
|
76
|
+
}), /*#__PURE__*/_jsx(SetStepNav, {
|
|
77
|
+
nav: []
|
|
78
|
+
}), RenderServerComponent({
|
|
79
|
+
clientProps: {
|
|
80
|
+
locale
|
|
81
|
+
},
|
|
82
|
+
Component: config.admin?.components?.views?.dashboard?.Component,
|
|
83
|
+
Fallback: DefaultDashboard,
|
|
84
|
+
importMap: payload.importMap,
|
|
85
|
+
serverProps: {
|
|
86
|
+
...props,
|
|
87
|
+
globalData,
|
|
88
|
+
i18n,
|
|
89
|
+
locale,
|
|
90
|
+
navGroups,
|
|
91
|
+
payload,
|
|
92
|
+
permissions,
|
|
93
|
+
user,
|
|
94
|
+
visibleEntities
|
|
95
|
+
}
|
|
96
|
+
})]
|
|
97
|
+
});
|
|
85
98
|
}
|
|
86
|
-
|
|
87
99
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Dashboard/index.tsx"],"sourcesContent":["import type { EntityToGroup } from '@payloadcms/ui/shared'\nimport type { AdminViewServerProps, TypedUser } from 'payload'\n\nimport { HydrateAuthProvider, SetStepNav } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType, groupNavItems } from '@payloadcms/ui/shared'\nimport React, { Fragment } from 'react'\n\nimport type { DashboardViewClientProps, DashboardViewServerPropsOnly } from './Default/index.js'\n\nimport { DefaultDashboard } from './Default/index.js'\n\nconst globalLockDurationDefault = 300\n\nexport async function DashboardView(props: AdminViewServerProps) {\n const {\n locale,\n permissions,\n req: {\n i18n,\n payload: { config },\n payload,\n user,\n },\n req,\n visibleEntities,\n } = props.initPageResult\n const collections = config.collections.filter(\n (collection) =>\n permissions?.collections?.[collection.slug]?.read &&\n visibleEntities.collections.includes(collection.slug),\n )\n\n const globals = config.globals.filter(\n (global) =>\n permissions?.globals?.[global.slug]?.read && visibleEntities.globals.includes(global.slug),\n )\n\n // Query locked global documents only if there are globals in the config\n let globalData: DashboardViewServerPropsOnly['globalData'] = []\n\n if (config.globals.length > 0) {\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n overrideAccess: false,\n pagination: false,\n req,\n select: {\n globalSlug: true,\n updatedAt: true,\n user: true,\n },\n where: {\n globalSlug: {\n exists: true,\n },\n },\n })\n\n // Map over globals to include `lockDuration` and lock data for each global slug\n globalData = config.globals.map((global) => {\n const lockDuration =\n typeof global.lockDocuments === 'object'\n ? global.lockDocuments.duration\n : globalLockDurationDefault\n\n const lockedDoc = lockedDocuments.docs.find((doc) => doc.globalSlug === global.slug)\n\n return {\n slug: global.slug,\n data: {\n _isLocked: !!lockedDoc,\n _lastEditedAt: (lockedDoc?.updatedAt as string) ?? null,\n _userEditing: (lockedDoc?.user as { value?: TypedUser })?.value ?? null,\n },\n lockDuration,\n }\n })\n }\n\n const navGroups = groupNavItems(\n [\n ...(collections.map((collection) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.collection,\n entity: collection,\n }\n\n return entityToGroup\n }) ?? []),\n ...(globals.map((global) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.global,\n entity: global,\n }\n\n return entityToGroup\n }) ?? []),\n ],\n permissions,\n i18n,\n )\n\n return (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <SetStepNav nav={[]} />\n {RenderServerComponent({\n clientProps: {\n locale,\n } satisfies DashboardViewClientProps,\n Component: config.admin?.components?.views?.dashboard?.Component,\n Fallback: DefaultDashboard,\n importMap: payload.importMap,\n serverProps: {\n ...props,\n globalData,\n i18n,\n locale,\n navGroups,\n payload,\n permissions,\n user,\n visibleEntities,\n } satisfies DashboardViewServerPropsOnly,\n })}\n </Fragment>\n )\n}\n"],"
|
|
1
|
+
{"version":3,"file":"index.js","names":["HydrateAuthProvider","SetStepNav","RenderServerComponent","EntityType","groupNavItems","React","Fragment","DefaultDashboard","globalLockDurationDefault","DashboardView","props","locale","permissions","req","i18n","payload","config","user","visibleEntities","initPageResult","collections","filter","collection","slug","read","includes","globals","global","globalData","length","lockedDocuments","find","depth","overrideAccess","pagination","select","globalSlug","updatedAt","where","exists","map","lockDuration","lockDocuments","duration","lockedDoc","docs","doc","data","_isLocked","_lastEditedAt","_userEditing","value","navGroups","entityToGroup","type","entity","_jsxs","_jsx","nav","clientProps","Component","admin","components","views","dashboard","Fallback","importMap","serverProps"],"sources":["../../../src/views/Dashboard/index.tsx"],"sourcesContent":["import type { EntityToGroup } from '@payloadcms/ui/shared'\nimport type { AdminViewServerProps, TypedUser } from 'payload'\n\nimport { HydrateAuthProvider, SetStepNav } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType, groupNavItems } from '@payloadcms/ui/shared'\nimport React, { Fragment } from 'react'\n\nimport type { DashboardViewClientProps, DashboardViewServerPropsOnly } from './Default/index.js'\n\nimport { DefaultDashboard } from './Default/index.js'\n\nconst globalLockDurationDefault = 300\n\nexport async function DashboardView(props: AdminViewServerProps) {\n const {\n locale,\n permissions,\n req: {\n i18n,\n payload: { config },\n payload,\n user,\n },\n req,\n visibleEntities,\n } = props.initPageResult\n const collections = config.collections.filter(\n (collection) =>\n permissions?.collections?.[collection.slug]?.read &&\n visibleEntities.collections.includes(collection.slug),\n )\n\n const globals = config.globals.filter(\n (global) =>\n permissions?.globals?.[global.slug]?.read && visibleEntities.globals.includes(global.slug),\n )\n\n // Query locked global documents only if there are globals in the config\n let globalData: DashboardViewServerPropsOnly['globalData'] = []\n\n if (config.globals.length > 0) {\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n overrideAccess: false,\n pagination: false,\n req,\n select: {\n globalSlug: true,\n updatedAt: true,\n user: true,\n },\n where: {\n globalSlug: {\n exists: true,\n },\n },\n })\n\n // Map over globals to include `lockDuration` and lock data for each global slug\n globalData = config.globals.map((global) => {\n const lockDuration =\n typeof global.lockDocuments === 'object'\n ? global.lockDocuments.duration\n : globalLockDurationDefault\n\n const lockedDoc = lockedDocuments.docs.find((doc) => doc.globalSlug === global.slug)\n\n return {\n slug: global.slug,\n data: {\n _isLocked: !!lockedDoc,\n _lastEditedAt: (lockedDoc?.updatedAt as string) ?? null,\n _userEditing: (lockedDoc?.user as { value?: TypedUser })?.value ?? null,\n },\n lockDuration,\n }\n })\n }\n\n const navGroups = groupNavItems(\n [\n ...(collections.map((collection) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.collection,\n entity: collection,\n }\n\n return entityToGroup\n }) ?? []),\n ...(globals.map((global) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.global,\n entity: global,\n }\n\n return entityToGroup\n }) ?? []),\n ],\n permissions,\n i18n,\n )\n\n return (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <SetStepNav nav={[]} />\n {RenderServerComponent({\n clientProps: {\n locale,\n } satisfies DashboardViewClientProps,\n Component: config.admin?.components?.views?.dashboard?.Component,\n Fallback: DefaultDashboard,\n importMap: payload.importMap,\n serverProps: {\n ...props,\n globalData,\n i18n,\n locale,\n navGroups,\n payload,\n permissions,\n user,\n visibleEntities,\n } satisfies DashboardViewServerPropsOnly,\n })}\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { generateMetadata } from '../../utilities/meta.js';
|
|
2
|
-
export const generateDashboardViewMetadata = async ({
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
2
|
+
export const generateDashboardViewMetadata = async ({
|
|
3
|
+
config,
|
|
4
|
+
i18n: {
|
|
5
|
+
t
|
|
6
|
+
}
|
|
7
|
+
}) => generateMetadata({
|
|
8
|
+
serverURL: config.serverURL,
|
|
9
|
+
title: t('general:dashboard'),
|
|
10
|
+
...config.admin.meta,
|
|
11
|
+
openGraph: {
|
|
12
|
+
title: t('general:dashboard'),
|
|
13
|
+
...(config.admin.meta?.openGraph || {})
|
|
14
|
+
}
|
|
15
|
+
});
|
|
12
16
|
//# sourceMappingURL=metadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Dashboard/metadata.ts"],"sourcesContent":["import type { GenerateViewMetadata } from '../Root/index.js'\n\nimport { generateMetadata } from '../../utilities/meta.js'\n\nexport const generateDashboardViewMetadata: GenerateViewMetadata = async ({\n config,\n i18n: { t },\n}) =>\n generateMetadata({\n serverURL: config.serverURL,\n title: t('general:dashboard'),\n ...config.admin.meta,\n openGraph: {\n title: t('general:dashboard'),\n ...(config.admin.meta?.openGraph || {}),\n },\n })\n"],"
|
|
1
|
+
{"version":3,"file":"metadata.js","names":["generateMetadata","generateDashboardViewMetadata","config","i18n","t","serverURL","title","admin","meta","openGraph"],"sources":["../../../src/views/Dashboard/metadata.ts"],"sourcesContent":["import type { GenerateViewMetadata } from '../Root/index.js'\n\nimport { generateMetadata } from '../../utilities/meta.js'\n\nexport const generateDashboardViewMetadata: GenerateViewMetadata = async ({\n config,\n i18n: { t },\n}) =>\n generateMetadata({\n serverURL: config.serverURL,\n title: t('general:dashboard'),\n ...config.admin.meta,\n openGraph: {\n title: t('general:dashboard'),\n ...(config.admin.meta?.openGraph || {}),\n },\n })\n"],"mappings":"AAEA,SAASA,gBAAgB,QAAQ;AAEjC,OAAO,MAAMC,6BAAA,GAAsD,MAAAA,CAAO;EACxEC,MAAM;EACNC,IAAA,EAAM;IAAEC;EAAC;AAAE,CACZ,KACCJ,gBAAA,CAAiB;EACfK,SAAA,EAAWH,MAAA,CAAOG,SAAS;EAC3BC,KAAA,EAAOF,CAAA,CAAE;EACT,GAAGF,MAAA,CAAOK,KAAK,CAACC,IAAI;EACpBC,SAAA,EAAW;IACTH,KAAA,EAAOF,CAAA,CAAE;IACT,IAAIF,MAAA,CAAOK,KAAK,CAACC,IAAI,EAAEC,SAAA,IAAa,CAAC,CAAC;EACxC;AACF","ignoreList":[]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
export const getCustomDocumentViewByKey = (views, customViewKey)=>{
|
|
2
|
-
|
|
1
|
+
export const getCustomDocumentViewByKey = (views, customViewKey) => {
|
|
2
|
+
return typeof views?.edit?.[customViewKey] === 'object' && 'Component' in views.edit[customViewKey] ? views?.edit?.[customViewKey].Component : null;
|
|
3
3
|
};
|
|
4
|
-
|
|
5
4
|
//# sourceMappingURL=getCustomDocumentViewByKey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Document/getCustomDocumentViewByKey.tsx"],"sourcesContent":["import type { EditViewComponent, SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload'\n\nexport const getCustomDocumentViewByKey = (\n views:\n | SanitizedCollectionConfig['admin']['components']['views']\n | SanitizedGlobalConfig['admin']['components']['views'],\n customViewKey: string,\n): EditViewComponent => {\n return typeof views?.edit?.[customViewKey] === 'object' &&\n 'Component' in views.edit[customViewKey]\n ? views?.edit?.[customViewKey].Component\n : null\n}\n"],"
|
|
1
|
+
{"version":3,"file":"getCustomDocumentViewByKey.js","names":["getCustomDocumentViewByKey","views","customViewKey","edit","Component"],"sources":["../../../src/views/Document/getCustomDocumentViewByKey.tsx"],"sourcesContent":["import type { EditViewComponent, SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload'\n\nexport const getCustomDocumentViewByKey = (\n views:\n | SanitizedCollectionConfig['admin']['components']['views']\n | SanitizedGlobalConfig['admin']['components']['views'],\n customViewKey: string,\n): EditViewComponent => {\n return typeof views?.edit?.[customViewKey] === 'object' &&\n 'Component' in views.edit[customViewKey]\n ? views?.edit?.[customViewKey].Component\n : null\n}\n"],"mappings":"AAEA,OAAO,MAAMA,0BAAA,GAA6BA,CACxCC,KAAA,EAGAC,aAAA;EAEA,OAAO,OAAOD,KAAA,EAAOE,IAAA,GAAOD,aAAA,CAAc,KAAK,YAC7C,eAAeD,KAAA,CAAME,IAAI,CAACD,aAAA,CAAc,GACtCD,KAAA,EAAOE,IAAA,GAAOD,aAAA,CAAc,CAACE,SAAA,GAC7B;AACN","ignoreList":[]}
|