@payloadcms/next 3.68.0-internal-debug.654e4ad → 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 +71 -40
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +59 -65
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/index.js +70 -80
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +23 -16
- 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 +28 -48
- package/dist/elements/DocumentHeader/index.js.map +1 -1
- package/dist/elements/FormHeader/index.js +16 -30
- 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 +44 -23
- package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.js +54 -28
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
- package/dist/elements/Nav/SettingsMenuButton/index.js +39 -33
- 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 +118 -97
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.js +127 -148
- 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 +20 -21
- 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 +103 -128
- 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 +79 -103
- package/dist/routes/rest/og/image.js.map +1 -1
- package/dist/routes/rest/og/index.js +54 -59
- package/dist/routes/rest/og/index.js.map +1 -1
- package/dist/templates/Default/NavHamburger/index.js +20 -12
- package/dist/templates/Default/NavHamburger/index.js.map +1 -1
- package/dist/templates/Default/Wrapper/index.js +44 -20
- package/dist/templates/Default/Wrapper/index.js.map +1 -1
- package/dist/templates/Default/index.js +133 -183
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/templates/Minimal/index.js +17 -26
- 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 -17
- package/dist/views/API/LocaleSelector/index.js.map +1 -1
- package/dist/views/API/RenderJSON/index.js +126 -171
- package/dist/views/API/RenderJSON/index.js.map +1 -1
- package/dist/views/API/index.client.js +195 -287
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/API/index.js +2 -7
- 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 -74
- package/dist/views/Account/ResetPreferences/index.js.map +1 -1
- package/dist/views/Account/Settings/LanguageSelector.js +47 -18
- package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
- package/dist/views/Account/Settings/index.js +28 -62
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/ToggleTheme/index.js +55 -38
- 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 +155 -144
- 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 +158 -139
- 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 +143 -123
- 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 +101 -114
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.js +81 -87
- 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 +152 -176
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/index.js +90 -97
- 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 +354 -315
- 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 +6 -10
- 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 +164 -130
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.js +62 -79
- 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 +323 -305
- 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 -82
- 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 +89 -57
- package/dist/views/Login/LoginField/index.js.map +1 -1
- package/dist/views/Login/LoginForm/index.js +157 -104
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/index.js +85 -82
- 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 -83
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.js +29 -29
- 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 +82 -71
- package/dist/views/NotFound/index.client.js.map +1 -1
- package/dist/views/NotFound/index.js +72 -71
- 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 -94
- package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
- package/dist/views/ResetPassword/index.js +73 -93
- 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 +269 -247
- 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 +46 -54
- 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 -68
- 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 -380
- 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 +119 -102
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +73 -78
- 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 +51 -40
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +67 -35
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +56 -59
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +117 -139
- 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 +178 -192
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +11 -17
- package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +73 -48
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +143 -132
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +81 -56
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +210 -251
- 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 -12
- 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 +91 -116
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -33
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js +226 -170
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/index.js +50 -73
- 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 +32 -34
- package/dist/views/Version/SelectLocales/index.js.map +1 -1
- package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +95 -104
- 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 -325
- 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 +79 -95
- package/dist/views/Versions/buildColumns.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +38 -34
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js +53 -32
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/cells/ID/index.js +8 -10
- package/dist/views/Versions/cells/ID/index.js.map +1 -1
- package/dist/views/Versions/index.client.js +83 -106
- package/dist/views/Versions/index.client.js.map +1 -1
- package/dist/views/Versions/index.js +140 -140
- 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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.ts"],"sourcesContent":["import { countChangedFields, countChangedFieldsInRows } from './countChangedFields.js'\nimport type { ClientField } from 'payload'\n\ndescribe('countChangedFields', () => {\n // locales can be undefined when not configured in payload.config.js\n const locales = undefined\n it('should return 0 when no fields have changed', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'number' },\n ]\n const valueFrom = { a: 'original', b: 123 }\n const valueTo = { a: 'original', b: 123 }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(0)\n })\n\n it('should count simple changed fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'number' },\n ]\n const valueFrom = { a: 'original', b: 123 }\n const valueTo = { a: 'changed', b: 123 }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(1)\n })\n\n it('should count previously undefined fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'number' },\n ]\n const valueFrom = {}\n const valueTo = { a: 'new', b: 123 }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should not count the id field because it is not displayed in the version view', () => {\n const fields: ClientField[] = [\n { name: 'id', type: 'text' },\n { name: 'a', type: 'text' },\n ]\n const valueFrom = { id: 'original', a: 'original' }\n const valueTo = { id: 'changed', a: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(0)\n })\n\n it('should count changed fields inside collapsible fields', () => {\n const fields: ClientField[] = [\n {\n type: 'collapsible',\n label: 'A collapsible field',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = { a: 'original', b: 'original', c: 'original' }\n const valueTo = { a: 'changed', b: 'changed', c: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside row fields', () => {\n const fields: ClientField[] = [\n {\n type: 'row',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = { a: 'original', b: 'original', c: 'original' }\n const valueTo = { a: 'changed', b: 'changed', c: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside group fields', () => {\n const fields: ClientField[] = [\n {\n type: 'group',\n name: 'group',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = { group: { a: 'original', b: 'original', c: 'original' } }\n const valueTo = { group: { a: 'changed', b: 'changed', c: 'original' } }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside unnamed tabs ', () => {\n const fields: ClientField[] = [\n {\n type: 'tabs',\n tabs: [\n {\n label: 'Unnamed tab',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = { a: 'original', b: 'original', c: 'original' }\n const valueTo = { a: 'changed', b: 'changed', c: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside named tabs ', () => {\n const fields: ClientField[] = [\n {\n type: 'tabs',\n tabs: [\n {\n name: 'namedTab',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = { namedTab: { a: 'original', b: 'original', c: 'original' } }\n const valueTo = { namedTab: { a: 'changed', b: 'changed', c: 'original' } }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should ignore UI fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n {\n name: 'b',\n type: 'ui',\n admin: {},\n },\n ]\n const valueFrom = { a: 'original', b: 'original' }\n const valueTo = { a: 'original', b: 'changed' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(0)\n })\n\n it('should count changed fields inside array fields', () => {\n const fields: ClientField[] = [\n {\n name: 'arrayField',\n type: 'array',\n fields: [\n {\n name: 'a',\n type: 'text',\n },\n {\n name: 'b',\n type: 'text',\n },\n {\n name: 'c',\n type: 'text',\n },\n ],\n },\n ]\n const valueFrom = {\n arrayField: [\n { a: 'original', b: 'original', c: 'original' },\n { a: 'original', b: 'original' },\n ],\n }\n const valueTo = {\n arrayField: [\n { a: 'changed', b: 'changed', c: 'original' },\n { a: 'changed', b: 'changed', c: 'changed' },\n ],\n }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(5)\n })\n\n it('should count changed fields inside arrays nested inside of collapsibles', () => {\n const fields: ClientField[] = [\n {\n type: 'collapsible',\n label: 'A collapsible field',\n fields: [\n {\n name: 'arrayField',\n type: 'array',\n fields: [\n {\n name: 'a',\n type: 'text',\n },\n {\n name: 'b',\n type: 'text',\n },\n {\n name: 'c',\n type: 'text',\n },\n ],\n },\n ],\n },\n ]\n const valueFrom = { arrayField: [{ a: 'original', b: 'original', c: 'original' }] }\n const valueTo = { arrayField: [{ a: 'changed', b: 'changed', c: 'original' }] }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside blocks fields', () => {\n const fields: ClientField[] = [\n {\n name: 'blocks',\n type: 'blocks',\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n blocks: [\n { blockType: 'blockA', a: 'original', b: 'original', c: 'original' },\n { blockType: 'blockA', a: 'original', b: 'original' },\n ],\n }\n const valueTo = {\n blocks: [\n { blockType: 'blockA', a: 'changed', b: 'changed', c: 'original' },\n { blockType: 'blockA', a: 'changed', b: 'changed', c: 'changed' },\n ],\n }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(5)\n })\n\n it('should count changed fields between blocks with different slugs', () => {\n const fields: ClientField[] = [\n {\n name: 'blocks',\n type: 'blocks',\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n {\n slug: 'blockB',\n fields: [\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n { name: 'd', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n blocks: [{ blockType: 'blockA', a: 'removed', b: 'original', c: 'original' }],\n }\n const valueTo = {\n blocks: [{ blockType: 'blockB', b: 'original', c: 'changed', d: 'new' }],\n }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n\n describe('localized fields', () => {\n const locales = ['en', 'de']\n it('should count simple localized fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text', localized: true },\n { name: 'b', type: 'text', localized: true },\n ]\n const valueFrom = {\n a: { en: 'original', de: 'original' },\n b: { en: 'original', de: 'original' },\n }\n const valueTo = {\n a: { en: 'changed', de: 'original' },\n b: { en: 'original', de: 'original' },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(1)\n })\n\n it('should count multiple locales of the same localized field', () => {\n const locales = ['en', 'de']\n const fields: ClientField[] = [\n { name: 'a', type: 'text', localized: true },\n { name: 'b', type: 'text', localized: true },\n ]\n const valueFrom = {\n a: { en: 'original', de: 'original' },\n b: { en: 'original', de: 'original' },\n }\n const valueTo = {\n a: { en: 'changed', de: 'changed' },\n b: { en: 'original', de: 'original' },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside localized groups fields', () => {\n const fields: ClientField[] = [\n {\n type: 'group',\n name: 'group',\n localized: true,\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = {\n group: {\n en: { a: 'original', b: 'original', c: 'original' },\n de: { a: 'original', b: 'original', c: 'original' },\n },\n }\n const valueTo = {\n group: {\n en: { a: 'changed', b: 'changed', c: 'original' },\n de: { a: 'original', b: 'changed', c: 'original' },\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n it('should count changed fields inside localized tabs', () => {\n const fields: ClientField[] = [\n {\n type: 'tabs',\n tabs: [\n {\n name: 'tab',\n localized: true,\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n tab: {\n en: { a: 'original', b: 'original', c: 'original' },\n de: { a: 'original', b: 'original', c: 'original' },\n },\n }\n const valueTo = {\n tab: {\n en: { a: 'changed', b: 'changed', c: 'original' },\n de: { a: 'original', b: 'changed', c: 'original' },\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n\n it('should count changed fields inside localized array fields', () => {\n const fields: ClientField[] = [\n {\n name: 'arrayField',\n type: 'array',\n localized: true,\n fields: [\n {\n name: 'a',\n type: 'text',\n },\n {\n name: 'b',\n type: 'text',\n },\n {\n name: 'c',\n type: 'text',\n },\n ],\n },\n ]\n const valueFrom = {\n arrayField: {\n en: [{ a: 'original', b: 'original', c: 'original' }],\n de: [{ a: 'original', b: 'original', c: 'original' }],\n },\n }\n const valueTo = {\n arrayField: {\n en: [{ a: 'changed', b: 'changed', c: 'original' }],\n de: [{ a: 'original', b: 'changed', c: 'original' }],\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n\n it('should count changed fields inside localized blocks fields', () => {\n const fields: ClientField[] = [\n {\n name: 'blocks',\n type: 'blocks',\n localized: true,\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n blocks: {\n en: [{ blockType: 'blockA', a: 'original', b: 'original', c: 'original' }],\n de: [{ blockType: 'blockA', a: 'original', b: 'original', c: 'original' }],\n },\n }\n const valueTo = {\n blocks: {\n en: [{ blockType: 'blockA', a: 'changed', b: 'changed', c: 'original' }],\n de: [{ blockType: 'blockA', a: 'original', b: 'changed', c: 'original' }],\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n })\n})\n\ndescribe('countChangedFieldsInRows', () => {\n it('should count fields in array rows', () => {\n const field: ClientField = {\n name: 'myArray',\n type: 'array',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n }\n\n const valueFromRows = [{ a: 'original', b: 'original', c: 'original' }]\n const valueToRows = [{ a: 'changed', b: 'changed', c: 'original' }]\n\n const result = countChangedFieldsInRows({\n valueFromRows,\n field,\n locales: undefined,\n valueToRows: valueToRows,\n })\n expect(result).toBe(2)\n })\n\n it('should count fields in blocks', () => {\n const field: ClientField = {\n name: 'myBlocks',\n type: 'blocks',\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n }\n\n const valueFromRows = [{ blockType: 'blockA', a: 'original', b: 'original', c: 'original' }]\n const valueToRows = [{ blockType: 'blockA', a: 'changed', b: 'changed', c: 'original' }]\n\n const result = countChangedFieldsInRows({\n valueFromRows,\n field,\n locales: undefined,\n valueToRows,\n })\n expect(result).toBe(2)\n })\n})\n"],"names":["countChangedFields","countChangedFieldsInRows","describe","locales","undefined","it","fields","name","type","valueFrom","a","b","valueTo","result","expect","toBe","id","label","c","group","tabs","namedTab","admin","arrayField","blocks","slug","blockType","d","localized","en","de","tab","field","valueFromRows","valueToRows"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"countChangedFields.spec.js","names":["countChangedFields","countChangedFieldsInRows","describe","locales","undefined","it","fields","name","type","valueFrom","a","b","valueTo","result","expect","toBe","id","label","c","group","tabs","namedTab","admin","arrayField","blocks","slug","blockType","d","localized","en","de","tab","field","valueFromRows","valueToRows"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.ts"],"sourcesContent":["import { countChangedFields, countChangedFieldsInRows } from './countChangedFields.js'\nimport type { ClientField } from 'payload'\n\ndescribe('countChangedFields', () => {\n // locales can be undefined when not configured in payload.config.js\n const locales = undefined\n it('should return 0 when no fields have changed', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'number' },\n ]\n const valueFrom = { a: 'original', b: 123 }\n const valueTo = { a: 'original', b: 123 }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(0)\n })\n\n it('should count simple changed fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'number' },\n ]\n const valueFrom = { a: 'original', b: 123 }\n const valueTo = { a: 'changed', b: 123 }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(1)\n })\n\n it('should count previously undefined fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'number' },\n ]\n const valueFrom = {}\n const valueTo = { a: 'new', b: 123 }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should not count the id field because it is not displayed in the version view', () => {\n const fields: ClientField[] = [\n { name: 'id', type: 'text' },\n { name: 'a', type: 'text' },\n ]\n const valueFrom = { id: 'original', a: 'original' }\n const valueTo = { id: 'changed', a: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(0)\n })\n\n it('should count changed fields inside collapsible fields', () => {\n const fields: ClientField[] = [\n {\n type: 'collapsible',\n label: 'A collapsible field',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = { a: 'original', b: 'original', c: 'original' }\n const valueTo = { a: 'changed', b: 'changed', c: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside row fields', () => {\n const fields: ClientField[] = [\n {\n type: 'row',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = { a: 'original', b: 'original', c: 'original' }\n const valueTo = { a: 'changed', b: 'changed', c: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside group fields', () => {\n const fields: ClientField[] = [\n {\n type: 'group',\n name: 'group',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = { group: { a: 'original', b: 'original', c: 'original' } }\n const valueTo = { group: { a: 'changed', b: 'changed', c: 'original' } }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside unnamed tabs ', () => {\n const fields: ClientField[] = [\n {\n type: 'tabs',\n tabs: [\n {\n label: 'Unnamed tab',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = { a: 'original', b: 'original', c: 'original' }\n const valueTo = { a: 'changed', b: 'changed', c: 'original' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside named tabs ', () => {\n const fields: ClientField[] = [\n {\n type: 'tabs',\n tabs: [\n {\n name: 'namedTab',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = { namedTab: { a: 'original', b: 'original', c: 'original' } }\n const valueTo = { namedTab: { a: 'changed', b: 'changed', c: 'original' } }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should ignore UI fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text' },\n {\n name: 'b',\n type: 'ui',\n admin: {},\n },\n ]\n const valueFrom = { a: 'original', b: 'original' }\n const valueTo = { a: 'original', b: 'changed' }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(0)\n })\n\n it('should count changed fields inside array fields', () => {\n const fields: ClientField[] = [\n {\n name: 'arrayField',\n type: 'array',\n fields: [\n {\n name: 'a',\n type: 'text',\n },\n {\n name: 'b',\n type: 'text',\n },\n {\n name: 'c',\n type: 'text',\n },\n ],\n },\n ]\n const valueFrom = {\n arrayField: [\n { a: 'original', b: 'original', c: 'original' },\n { a: 'original', b: 'original' },\n ],\n }\n const valueTo = {\n arrayField: [\n { a: 'changed', b: 'changed', c: 'original' },\n { a: 'changed', b: 'changed', c: 'changed' },\n ],\n }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(5)\n })\n\n it('should count changed fields inside arrays nested inside of collapsibles', () => {\n const fields: ClientField[] = [\n {\n type: 'collapsible',\n label: 'A collapsible field',\n fields: [\n {\n name: 'arrayField',\n type: 'array',\n fields: [\n {\n name: 'a',\n type: 'text',\n },\n {\n name: 'b',\n type: 'text',\n },\n {\n name: 'c',\n type: 'text',\n },\n ],\n },\n ],\n },\n ]\n const valueFrom = { arrayField: [{ a: 'original', b: 'original', c: 'original' }] }\n const valueTo = { arrayField: [{ a: 'changed', b: 'changed', c: 'original' }] }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside blocks fields', () => {\n const fields: ClientField[] = [\n {\n name: 'blocks',\n type: 'blocks',\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n blocks: [\n { blockType: 'blockA', a: 'original', b: 'original', c: 'original' },\n { blockType: 'blockA', a: 'original', b: 'original' },\n ],\n }\n const valueTo = {\n blocks: [\n { blockType: 'blockA', a: 'changed', b: 'changed', c: 'original' },\n { blockType: 'blockA', a: 'changed', b: 'changed', c: 'changed' },\n ],\n }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(5)\n })\n\n it('should count changed fields between blocks with different slugs', () => {\n const fields: ClientField[] = [\n {\n name: 'blocks',\n type: 'blocks',\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n {\n slug: 'blockB',\n fields: [\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n { name: 'd', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n blocks: [{ blockType: 'blockA', a: 'removed', b: 'original', c: 'original' }],\n }\n const valueTo = {\n blocks: [{ blockType: 'blockB', b: 'original', c: 'changed', d: 'new' }],\n }\n\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n\n describe('localized fields', () => {\n const locales = ['en', 'de']\n it('should count simple localized fields', () => {\n const fields: ClientField[] = [\n { name: 'a', type: 'text', localized: true },\n { name: 'b', type: 'text', localized: true },\n ]\n const valueFrom = {\n a: { en: 'original', de: 'original' },\n b: { en: 'original', de: 'original' },\n }\n const valueTo = {\n a: { en: 'changed', de: 'original' },\n b: { en: 'original', de: 'original' },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(1)\n })\n\n it('should count multiple locales of the same localized field', () => {\n const locales = ['en', 'de']\n const fields: ClientField[] = [\n { name: 'a', type: 'text', localized: true },\n { name: 'b', type: 'text', localized: true },\n ]\n const valueFrom = {\n a: { en: 'original', de: 'original' },\n b: { en: 'original', de: 'original' },\n }\n const valueTo = {\n a: { en: 'changed', de: 'changed' },\n b: { en: 'original', de: 'original' },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(2)\n })\n\n it('should count changed fields inside localized groups fields', () => {\n const fields: ClientField[] = [\n {\n type: 'group',\n name: 'group',\n localized: true,\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ]\n const valueFrom = {\n group: {\n en: { a: 'original', b: 'original', c: 'original' },\n de: { a: 'original', b: 'original', c: 'original' },\n },\n }\n const valueTo = {\n group: {\n en: { a: 'changed', b: 'changed', c: 'original' },\n de: { a: 'original', b: 'changed', c: 'original' },\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n it('should count changed fields inside localized tabs', () => {\n const fields: ClientField[] = [\n {\n type: 'tabs',\n tabs: [\n {\n name: 'tab',\n localized: true,\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n tab: {\n en: { a: 'original', b: 'original', c: 'original' },\n de: { a: 'original', b: 'original', c: 'original' },\n },\n }\n const valueTo = {\n tab: {\n en: { a: 'changed', b: 'changed', c: 'original' },\n de: { a: 'original', b: 'changed', c: 'original' },\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n\n it('should count changed fields inside localized array fields', () => {\n const fields: ClientField[] = [\n {\n name: 'arrayField',\n type: 'array',\n localized: true,\n fields: [\n {\n name: 'a',\n type: 'text',\n },\n {\n name: 'b',\n type: 'text',\n },\n {\n name: 'c',\n type: 'text',\n },\n ],\n },\n ]\n const valueFrom = {\n arrayField: {\n en: [{ a: 'original', b: 'original', c: 'original' }],\n de: [{ a: 'original', b: 'original', c: 'original' }],\n },\n }\n const valueTo = {\n arrayField: {\n en: [{ a: 'changed', b: 'changed', c: 'original' }],\n de: [{ a: 'original', b: 'changed', c: 'original' }],\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n\n it('should count changed fields inside localized blocks fields', () => {\n const fields: ClientField[] = [\n {\n name: 'blocks',\n type: 'blocks',\n localized: true,\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n },\n ]\n const valueFrom = {\n blocks: {\n en: [{ blockType: 'blockA', a: 'original', b: 'original', c: 'original' }],\n de: [{ blockType: 'blockA', a: 'original', b: 'original', c: 'original' }],\n },\n }\n const valueTo = {\n blocks: {\n en: [{ blockType: 'blockA', a: 'changed', b: 'changed', c: 'original' }],\n de: [{ blockType: 'blockA', a: 'original', b: 'changed', c: 'original' }],\n },\n }\n const result = countChangedFields({ valueFrom, fields, valueTo, locales })\n expect(result).toBe(3)\n })\n })\n})\n\ndescribe('countChangedFieldsInRows', () => {\n it('should count fields in array rows', () => {\n const field: ClientField = {\n name: 'myArray',\n type: 'array',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n }\n\n const valueFromRows = [{ a: 'original', b: 'original', c: 'original' }]\n const valueToRows = [{ a: 'changed', b: 'changed', c: 'original' }]\n\n const result = countChangedFieldsInRows({\n valueFromRows,\n field,\n locales: undefined,\n valueToRows: valueToRows,\n })\n expect(result).toBe(2)\n })\n\n it('should count fields in blocks', () => {\n const field: ClientField = {\n name: 'myBlocks',\n type: 'blocks',\n blocks: [\n {\n slug: 'blockA',\n fields: [\n { name: 'a', type: 'text' },\n { name: 'b', type: 'text' },\n { name: 'c', type: 'text' },\n ],\n },\n ],\n }\n\n const valueFromRows = [{ blockType: 'blockA', a: 'original', b: 'original', c: 'original' }]\n const valueToRows = [{ blockType: 'blockA', a: 'changed', b: 'changed', c: 'original' }]\n\n const result = countChangedFieldsInRows({\n valueFromRows,\n field,\n locales: undefined,\n valueToRows,\n })\n expect(result).toBe(2)\n })\n})\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.ts"],"sourcesContent":["export function fieldHasChanges(a: unknown, b: unknown) {\n return JSON.stringify(a) !== JSON.stringify(b)\n}\n"],"
|
|
1
|
+
{"version":3,"file":"fieldHasChanges.js","names":["fieldHasChanges","a","b","JSON","stringify"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.ts"],"sourcesContent":["export function fieldHasChanges(a: unknown, b: unknown) {\n return JSON.stringify(a) !== JSON.stringify(b)\n}\n"],"mappings":"AAAA,OAAO,SAASA,gBAAgBC,CAAU,EAAEC,CAAU;EACpD,OAAOC,IAAA,CAAKC,SAAS,CAACH,CAAA,MAAOE,IAAA,CAAKC,SAAS,CAACF,CAAA;AAC9C","ignoreList":[]}
|
|
@@ -1,47 +1,46 @@
|
|
|
1
1
|
import { fieldHasChanges } from './fieldHasChanges.js';
|
|
2
|
-
describe('hasChanges', ()=>{
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
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
|
-
|
|
43
|
-
|
|
44
|
-
|
|
2
|
+
describe('hasChanges', () => {
|
|
3
|
+
it('should return false for identical values', () => {
|
|
4
|
+
const a = 'value';
|
|
5
|
+
const b = 'value';
|
|
6
|
+
expect(fieldHasChanges(a, b)).toBe(false);
|
|
7
|
+
});
|
|
8
|
+
it('should return true for different values', () => {
|
|
9
|
+
const a = 1;
|
|
10
|
+
const b = 2;
|
|
11
|
+
expect(fieldHasChanges(a, b)).toBe(true);
|
|
12
|
+
});
|
|
13
|
+
it('should return false for identical objects', () => {
|
|
14
|
+
const a = {
|
|
15
|
+
key: 'value'
|
|
16
|
+
};
|
|
17
|
+
const b = {
|
|
18
|
+
key: 'value'
|
|
19
|
+
};
|
|
20
|
+
expect(fieldHasChanges(a, b)).toBe(false);
|
|
21
|
+
});
|
|
22
|
+
it('should return true for different objects', () => {
|
|
23
|
+
const a = {
|
|
24
|
+
key: 'value'
|
|
25
|
+
};
|
|
26
|
+
const b = {
|
|
27
|
+
key: 'differentValue'
|
|
28
|
+
};
|
|
29
|
+
expect(fieldHasChanges(a, b)).toBe(true);
|
|
30
|
+
});
|
|
31
|
+
it('should handle undefined values', () => {
|
|
32
|
+
const a = {
|
|
33
|
+
key: 'value'
|
|
34
|
+
};
|
|
35
|
+
const b = undefined;
|
|
36
|
+
expect(fieldHasChanges(a, b)).toBe(true);
|
|
37
|
+
});
|
|
38
|
+
it('should handle null values', () => {
|
|
39
|
+
const a = {
|
|
40
|
+
key: 'value'
|
|
41
|
+
};
|
|
42
|
+
const b = null;
|
|
43
|
+
expect(fieldHasChanges(a, b)).toBe(true);
|
|
44
|
+
});
|
|
45
45
|
});
|
|
46
|
-
|
|
47
46
|
//# sourceMappingURL=fieldHasChanges.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.ts"],"sourcesContent":["import { fieldHasChanges } from './fieldHasChanges.js'\n\ndescribe('hasChanges', () => {\n it('should return false for identical values', () => {\n const a = 'value'\n const b = 'value'\n expect(fieldHasChanges(a, b)).toBe(false)\n })\n it('should return true for different values', () => {\n const a = 1\n const b = 2\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n\n it('should return false for identical objects', () => {\n const a = { key: 'value' }\n const b = { key: 'value' }\n expect(fieldHasChanges(a, b)).toBe(false)\n })\n\n it('should return true for different objects', () => {\n const a = { key: 'value' }\n const b = { key: 'differentValue' }\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n\n it('should handle undefined values', () => {\n const a = { key: 'value' }\n const b = undefined\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n\n it('should handle null values', () => {\n const a = { key: 'value' }\n const b = null\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n})\n"],"
|
|
1
|
+
{"version":3,"file":"fieldHasChanges.spec.js","names":["fieldHasChanges","describe","it","a","b","expect","toBe","key","undefined"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.ts"],"sourcesContent":["import { fieldHasChanges } from './fieldHasChanges.js'\n\ndescribe('hasChanges', () => {\n it('should return false for identical values', () => {\n const a = 'value'\n const b = 'value'\n expect(fieldHasChanges(a, b)).toBe(false)\n })\n it('should return true for different values', () => {\n const a = 1\n const b = 2\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n\n it('should return false for identical objects', () => {\n const a = { key: 'value' }\n const b = { key: 'value' }\n expect(fieldHasChanges(a, b)).toBe(false)\n })\n\n it('should return true for different objects', () => {\n const a = { key: 'value' }\n const b = { key: 'differentValue' }\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n\n it('should handle undefined values', () => {\n const a = { key: 'value' }\n const b = undefined\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n\n it('should handle null values', () => {\n const a = { key: 'value' }\n const b = null\n expect(fieldHasChanges(a, b)).toBe(true)\n })\n})\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ;AAEhCC,QAAA,CAAS,cAAc;EACrBC,EAAA,CAAG,4CAA4C;IAC7C,MAAMC,CAAA,GAAI;IACV,MAAMC,CAAA,GAAI;IACVC,MAAA,CAAOL,eAAA,CAAgBG,CAAA,EAAGC,CAAA,GAAIE,IAAI,CAAC;EACrC;EACAJ,EAAA,CAAG,2CAA2C;IAC5C,MAAMC,CAAA,GAAI;IACV,MAAMC,CAAA,GAAI;IACVC,MAAA,CAAOL,eAAA,CAAgBG,CAAA,EAAGC,CAAA,GAAIE,IAAI,CAAC;EACrC;EAEAJ,EAAA,CAAG,6CAA6C;IAC9C,MAAMC,CAAA,GAAI;MAAEI,GAAA,EAAK;IAAQ;IACzB,MAAMH,CAAA,GAAI;MAAEG,GAAA,EAAK;IAAQ;IACzBF,MAAA,CAAOL,eAAA,CAAgBG,CAAA,EAAGC,CAAA,GAAIE,IAAI,CAAC;EACrC;EAEAJ,EAAA,CAAG,4CAA4C;IAC7C,MAAMC,CAAA,GAAI;MAAEI,GAAA,EAAK;IAAQ;IACzB,MAAMH,CAAA,GAAI;MAAEG,GAAA,EAAK;IAAiB;IAClCF,MAAA,CAAOL,eAAA,CAAgBG,CAAA,EAAGC,CAAA,GAAIE,IAAI,CAAC;EACrC;EAEAJ,EAAA,CAAG,kCAAkC;IACnC,MAAMC,CAAA,GAAI;MAAEI,GAAA,EAAK;IAAQ;IACzB,MAAMH,CAAA,GAAII,SAAA;IACVH,MAAA,CAAOL,eAAA,CAAgBG,CAAA,EAAGC,CAAA,GAAIE,IAAI,CAAC;EACrC;EAEAJ,EAAA,CAAG,6BAA6B;IAC9B,MAAMC,CAAA,GAAI;MAAEI,GAAA,EAAK;IAAQ;IACzB,MAAMH,CAAA,GAAI;IACVC,MAAA,CAAOL,eAAA,CAAgBG,CAAA,EAAGC,CAAA,GAAIE,IAAI,CAAC;EACrC;AACF","ignoreList":[]}
|
|
@@ -1,29 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const parentPathToUse = parentIsUnnamed ? parentWithoutIndex : parentPath;
|
|
14
|
-
if ('name' in field) {
|
|
15
|
-
return {
|
|
16
|
-
indexPath: '',
|
|
17
|
-
path: `${parentPathToUse ? parentPathToUse + '.' : ''}${field.name}`,
|
|
18
|
-
schemaPath: `${parentSchemaPath ? parentSchemaPath + '.' : ''}${field.name}`
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
const indexSuffix = `_index-${`${parentIndexPath ? parentIndexPath + '-' : ''}${index}`}`;
|
|
1
|
+
export function getFieldPathsModified({
|
|
2
|
+
field,
|
|
3
|
+
index,
|
|
4
|
+
parentIndexPath,
|
|
5
|
+
parentPath,
|
|
6
|
+
parentSchemaPath
|
|
7
|
+
}) {
|
|
8
|
+
const parentPathSegments = parentPath.split('.');
|
|
9
|
+
const parentIsUnnamed = parentPathSegments[parentPathSegments.length - 1].startsWith('_index-');
|
|
10
|
+
const parentWithoutIndex = parentIsUnnamed ? parentPathSegments.slice(0, -1).join('.') : parentPath;
|
|
11
|
+
const parentPathToUse = parentIsUnnamed ? parentWithoutIndex : parentPath;
|
|
12
|
+
if ('name' in field) {
|
|
22
13
|
return {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
14
|
+
indexPath: '',
|
|
15
|
+
path: `${parentPathToUse ? parentPathToUse + '.' : ''}${field.name}`,
|
|
16
|
+
schemaPath: `${parentSchemaPath ? parentSchemaPath + '.' : ''}${field.name}`
|
|
26
17
|
};
|
|
18
|
+
}
|
|
19
|
+
const indexSuffix = `_index-${`${parentIndexPath ? parentIndexPath + '-' : ''}${index}`}`;
|
|
20
|
+
return {
|
|
21
|
+
indexPath: `${parentIndexPath ? parentIndexPath + '-' : ''}${index}`,
|
|
22
|
+
path: `${parentPathToUse ? parentPathToUse + '.' : ''}${indexSuffix}`,
|
|
23
|
+
schemaPath: `${!parentIsUnnamed && parentSchemaPath ? parentSchemaPath + '.' : ''}${indexSuffix}`
|
|
24
|
+
};
|
|
27
25
|
}
|
|
28
|
-
|
|
29
26
|
//# sourceMappingURL=getFieldPathsModified.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.ts"],"sourcesContent":["import type { ClientField, Field, Tab, TabAsFieldClient } from 'payload'\n\ntype Args = {\n field: ClientField | Field | Tab | TabAsFieldClient\n index: number\n parentIndexPath: string\n parentPath: string\n parentSchemaPath: string\n}\n\ntype FieldPaths = {\n /**\n * A string of '-' separated indexes representing where\n * to find this field in a given field schema array.\n * It will always be complete and accurate.\n */\n indexPath: string\n /**\n * Path for this field relative to its position in the data.\n */\n path: string\n /**\n * Path for this field relative to its position in the schema.\n */\n schemaPath: string\n}\n\nexport function getFieldPathsModified({\n field,\n index,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n}: Args): FieldPaths {\n const parentPathSegments = parentPath.split('.')\n\n const parentIsUnnamed = parentPathSegments[parentPathSegments.length - 1].startsWith('_index-')\n\n const parentWithoutIndex = parentIsUnnamed\n ? parentPathSegments.slice(0, -1).join('.')\n : parentPath\n\n const parentPathToUse = parentIsUnnamed ? parentWithoutIndex : parentPath\n\n if ('name' in field) {\n return {\n indexPath: '',\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${field.name}`,\n schemaPath: `${parentSchemaPath ? parentSchemaPath + '.' : ''}${field.name}`,\n }\n }\n\n const indexSuffix = `_index-${`${parentIndexPath ? parentIndexPath + '-' : ''}${index}`}`\n\n return {\n indexPath: `${parentIndexPath ? parentIndexPath + '-' : ''}${index}`,\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${indexSuffix}`,\n schemaPath: `${!parentIsUnnamed && parentSchemaPath ? parentSchemaPath + '.' : ''}${indexSuffix}`,\n }\n}\n"],"
|
|
1
|
+
{"version":3,"file":"getFieldPathsModified.js","names":["getFieldPathsModified","field","index","parentIndexPath","parentPath","parentSchemaPath","parentPathSegments","split","parentIsUnnamed","length","startsWith","parentWithoutIndex","slice","join","parentPathToUse","indexPath","path","name","schemaPath","indexSuffix"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.ts"],"sourcesContent":["import type { ClientField, Field, Tab, TabAsFieldClient } from 'payload'\n\ntype Args = {\n field: ClientField | Field | Tab | TabAsFieldClient\n index: number\n parentIndexPath: string\n parentPath: string\n parentSchemaPath: string\n}\n\ntype FieldPaths = {\n /**\n * A string of '-' separated indexes representing where\n * to find this field in a given field schema array.\n * It will always be complete and accurate.\n */\n indexPath: string\n /**\n * Path for this field relative to its position in the data.\n */\n path: string\n /**\n * Path for this field relative to its position in the schema.\n */\n schemaPath: string\n}\n\nexport function getFieldPathsModified({\n field,\n index,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n}: Args): FieldPaths {\n const parentPathSegments = parentPath.split('.')\n\n const parentIsUnnamed = parentPathSegments[parentPathSegments.length - 1].startsWith('_index-')\n\n const parentWithoutIndex = parentIsUnnamed\n ? parentPathSegments.slice(0, -1).join('.')\n : parentPath\n\n const parentPathToUse = parentIsUnnamed ? parentWithoutIndex : parentPath\n\n if ('name' in field) {\n return {\n indexPath: '',\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${field.name}`,\n schemaPath: `${parentSchemaPath ? parentSchemaPath + '.' : ''}${field.name}`,\n }\n }\n\n const indexSuffix = `_index-${`${parentIndexPath ? parentIndexPath + '-' : ''}${index}`}`\n\n return {\n indexPath: `${parentIndexPath ? parentIndexPath + '-' : ''}${index}`,\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${indexSuffix}`,\n schemaPath: `${!parentIsUnnamed && parentSchemaPath ? parentSchemaPath + '.' : ''}${indexSuffix}`,\n }\n}\n"],"mappings":"AA2BA,OAAO,SAASA,sBAAsB;EACpCC,KAAK;EACLC,KAAK;EACLC,eAAe;EACfC,UAAU;EACVC;AAAgB,CACX;EACL,MAAMC,kBAAA,GAAqBF,UAAA,CAAWG,KAAK,CAAC;EAE5C,MAAMC,eAAA,GAAkBF,kBAAkB,CAACA,kBAAA,CAAmBG,MAAM,GAAG,EAAE,CAACC,UAAU,CAAC;EAErF,MAAMC,kBAAA,GAAqBH,eAAA,GACvBF,kBAAA,CAAmBM,KAAK,CAAC,GAAG,CAAC,GAAGC,IAAI,CAAC,OACrCT,UAAA;EAEJ,MAAMU,eAAA,GAAkBN,eAAA,GAAkBG,kBAAA,GAAqBP,UAAA;EAE/D,IAAI,UAAUH,KAAA,EAAO;IACnB,OAAO;MACLc,SAAA,EAAW;MACXC,IAAA,EAAM,GAAGF,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKb,KAAA,CAAMgB,IAAI,EAAE;MACpEC,UAAA,EAAY,GAAGb,gBAAA,GAAmBA,gBAAA,GAAmB,MAAM,KAAKJ,KAAA,CAAMgB,IAAI;IAC5E;EACF;EAEA,MAAME,WAAA,GAAc,UAAU,GAAGhB,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKD,KAAA,EAAO,EAAE;EAEzF,OAAO;IACLa,SAAA,EAAW,GAAGZ,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKD,KAAA,EAAO;IACpEc,IAAA,EAAM,GAAGF,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKK,WAAA,EAAa;IACrED,UAAA,EAAY,GAAG,CAACV,eAAA,IAAmBH,gBAAA,GAAmBA,gBAAA,GAAmB,MAAM,KAAKc,WAAA;EACtF;AACF","ignoreList":[]}
|
|
@@ -4,38 +4,42 @@ import { getUniqueListBy } from 'payload/shared';
|
|
|
4
4
|
* - Array fields: the fields of the array field, because the fields are the same for each row.
|
|
5
5
|
* - Blocks fields: the union of fields from the comparison and version row,
|
|
6
6
|
* because the fields from the version and comparison rows may differ.
|
|
7
|
-
*/
|
|
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
|
-
|
|
7
|
+
*/
|
|
8
|
+
export function getFieldsForRowComparison({
|
|
9
|
+
baseVersionField,
|
|
10
|
+
config,
|
|
11
|
+
field,
|
|
12
|
+
row,
|
|
13
|
+
valueFromRow,
|
|
14
|
+
valueToRow
|
|
15
|
+
}) {
|
|
16
|
+
let fields = [];
|
|
17
|
+
let versionFields = [];
|
|
18
|
+
if (field.type === 'array' && 'fields' in field) {
|
|
19
|
+
fields = field.fields;
|
|
20
|
+
versionFields = baseVersionField.rows?.length ? baseVersionField.rows[row] : baseVersionField.fields;
|
|
21
|
+
} else if (field.type === 'blocks') {
|
|
22
|
+
if (valueToRow?.blockType === valueFromRow?.blockType) {
|
|
23
|
+
const matchedBlock = config?.blocksMap?.[valueToRow?.blockType] ?? (('blocks' in field || 'blockReferences' in field) && (field.blockReferences ?? field.blocks)?.find(block => typeof block !== 'string' && block.slug === valueToRow?.blockType) || {
|
|
24
|
+
fields: []
|
|
25
|
+
});
|
|
26
|
+
fields = matchedBlock.fields;
|
|
27
|
+
versionFields = baseVersionField.rows?.length ? baseVersionField.rows[row] : baseVersionField.fields;
|
|
28
|
+
} else {
|
|
29
|
+
const matchedVersionBlock = config?.blocksMap?.[valueToRow?.blockType] ?? (('blocks' in field || 'blockReferences' in field) && (field.blockReferences ?? field.blocks)?.find(block => typeof block !== 'string' && block.slug === valueToRow?.blockType) || {
|
|
30
|
+
fields: []
|
|
31
|
+
});
|
|
32
|
+
const matchedComparisonBlock = config?.blocksMap?.[valueFromRow?.blockType] ?? (('blocks' in field || 'blockReferences' in field) && (field.blockReferences ?? field.blocks)?.find(block => typeof block !== 'string' && block.slug === valueFromRow?.blockType) || {
|
|
33
|
+
fields: []
|
|
34
|
+
});
|
|
35
|
+
fields = getUniqueListBy([...matchedVersionBlock.fields, ...matchedComparisonBlock.fields], 'name');
|
|
36
|
+
// buildVersionFields already merged the fields of the version and comparison rows together
|
|
37
|
+
versionFields = baseVersionField.rows?.length ? baseVersionField.rows[row] : baseVersionField.fields;
|
|
34
38
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
fields,
|
|
42
|
+
versionFields
|
|
43
|
+
};
|
|
39
44
|
}
|
|
40
|
-
|
|
41
45
|
//# sourceMappingURL=getFieldsForRowComparison.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.ts"],"sourcesContent":["import type {\n ArrayFieldClient,\n BaseVersionField,\n BlocksFieldClient,\n ClientBlock,\n ClientConfig,\n ClientField,\n VersionField,\n} from 'payload'\n\nimport { getUniqueListBy } from 'payload/shared'\n\n/**\n * Get the fields for a row in an iterable field for comparison.\n * - Array fields: the fields of the array field, because the fields are the same for each row.\n * - Blocks fields: the union of fields from the comparison and version row,\n * because the fields from the version and comparison rows may differ.\n */\nexport function getFieldsForRowComparison({\n baseVersionField,\n config,\n field,\n row,\n valueFromRow,\n valueToRow,\n}: {\n baseVersionField: BaseVersionField\n config: ClientConfig\n field: ArrayFieldClient | BlocksFieldClient\n row: number\n valueFromRow: any\n valueToRow: any\n}): { fields: ClientField[]; versionFields: VersionField[] } {\n let fields: ClientField[] = []\n let versionFields: VersionField[] = []\n\n if (field.type === 'array' && 'fields' in field) {\n fields = field.fields\n versionFields = baseVersionField.rows?.length\n ? baseVersionField.rows[row]\n : baseVersionField.fields\n } else if (field.type === 'blocks') {\n if (valueToRow?.blockType === valueFromRow?.blockType) {\n const matchedBlock: ClientBlock =\n config?.blocksMap?.[valueToRow?.blockType] ??\n (((('blocks' in field || 'blockReferences' in field) &&\n (field.blockReferences ?? field.blocks)?.find(\n (block) => typeof block !== 'string' && block.slug === valueToRow?.blockType,\n )) || {\n fields: [],\n }) as ClientBlock)\n\n fields = matchedBlock.fields\n versionFields = baseVersionField.rows?.length\n ? baseVersionField.rows[row]\n : baseVersionField.fields\n } else {\n const matchedVersionBlock =\n config?.blocksMap?.[valueToRow?.blockType] ??\n (((('blocks' in field || 'blockReferences' in field) &&\n (field.blockReferences ?? field.blocks)?.find(\n (block) => typeof block !== 'string' && block.slug === valueToRow?.blockType,\n )) || {\n fields: [],\n }) as ClientBlock)\n\n const matchedComparisonBlock =\n config?.blocksMap?.[valueFromRow?.blockType] ??\n (((('blocks' in field || 'blockReferences' in field) &&\n (field.blockReferences ?? field.blocks)?.find(\n (block) => typeof block !== 'string' && block.slug === valueFromRow?.blockType,\n )) || {\n fields: [],\n }) as ClientBlock)\n\n fields = getUniqueListBy<ClientField>(\n [...matchedVersionBlock.fields, ...matchedComparisonBlock.fields],\n 'name',\n )\n\n // buildVersionFields already merged the fields of the version and comparison rows together\n versionFields = baseVersionField.rows?.length\n ? baseVersionField.rows[row]\n : baseVersionField.fields\n }\n }\n\n return { fields, versionFields }\n}\n"],"
|
|
1
|
+
{"version":3,"file":"getFieldsForRowComparison.js","names":["getUniqueListBy","getFieldsForRowComparison","baseVersionField","config","field","row","valueFromRow","valueToRow","fields","versionFields","type","rows","length","blockType","matchedBlock","blocksMap","blockReferences","blocks","find","block","slug","matchedVersionBlock","matchedComparisonBlock"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.ts"],"sourcesContent":["import type {\n ArrayFieldClient,\n BaseVersionField,\n BlocksFieldClient,\n ClientBlock,\n ClientConfig,\n ClientField,\n VersionField,\n} from 'payload'\n\nimport { getUniqueListBy } from 'payload/shared'\n\n/**\n * Get the fields for a row in an iterable field for comparison.\n * - Array fields: the fields of the array field, because the fields are the same for each row.\n * - Blocks fields: the union of fields from the comparison and version row,\n * because the fields from the version and comparison rows may differ.\n */\nexport function getFieldsForRowComparison({\n baseVersionField,\n config,\n field,\n row,\n valueFromRow,\n valueToRow,\n}: {\n baseVersionField: BaseVersionField\n config: ClientConfig\n field: ArrayFieldClient | BlocksFieldClient\n row: number\n valueFromRow: any\n valueToRow: any\n}): { fields: ClientField[]; versionFields: VersionField[] } {\n let fields: ClientField[] = []\n let versionFields: VersionField[] = []\n\n if (field.type === 'array' && 'fields' in field) {\n fields = field.fields\n versionFields = baseVersionField.rows?.length\n ? baseVersionField.rows[row]\n : baseVersionField.fields\n } else if (field.type === 'blocks') {\n if (valueToRow?.blockType === valueFromRow?.blockType) {\n const matchedBlock: ClientBlock =\n config?.blocksMap?.[valueToRow?.blockType] ??\n (((('blocks' in field || 'blockReferences' in field) &&\n (field.blockReferences ?? field.blocks)?.find(\n (block) => typeof block !== 'string' && block.slug === valueToRow?.blockType,\n )) || {\n fields: [],\n }) as ClientBlock)\n\n fields = matchedBlock.fields\n versionFields = baseVersionField.rows?.length\n ? baseVersionField.rows[row]\n : baseVersionField.fields\n } else {\n const matchedVersionBlock =\n config?.blocksMap?.[valueToRow?.blockType] ??\n (((('blocks' in field || 'blockReferences' in field) &&\n (field.blockReferences ?? field.blocks)?.find(\n (block) => typeof block !== 'string' && block.slug === valueToRow?.blockType,\n )) || {\n fields: [],\n }) as ClientBlock)\n\n const matchedComparisonBlock =\n config?.blocksMap?.[valueFromRow?.blockType] ??\n (((('blocks' in field || 'blockReferences' in field) &&\n (field.blockReferences ?? field.blocks)?.find(\n (block) => typeof block !== 'string' && block.slug === valueFromRow?.blockType,\n )) || {\n fields: [],\n }) as ClientBlock)\n\n fields = getUniqueListBy<ClientField>(\n [...matchedVersionBlock.fields, ...matchedComparisonBlock.fields],\n 'name',\n )\n\n // buildVersionFields already merged the fields of the version and comparison rows together\n versionFields = baseVersionField.rows?.length\n ? baseVersionField.rows[row]\n : baseVersionField.fields\n }\n }\n\n return { fields, versionFields }\n}\n"],"mappings":"AAUA,SAASA,eAAe,QAAQ;AAEhC;;;;;;AAMA,OAAO,SAASC,0BAA0B;EACxCC,gBAAgB;EAChBC,MAAM;EACNC,KAAK;EACLC,GAAG;EACHC,YAAY;EACZC;AAAU,CAQX;EACC,IAAIC,MAAA,GAAwB,EAAE;EAC9B,IAAIC,aAAA,GAAgC,EAAE;EAEtC,IAAIL,KAAA,CAAMM,IAAI,KAAK,WAAW,YAAYN,KAAA,EAAO;IAC/CI,MAAA,GAASJ,KAAA,CAAMI,MAAM;IACrBC,aAAA,GAAgBP,gBAAA,CAAiBS,IAAI,EAAEC,MAAA,GACnCV,gBAAA,CAAiBS,IAAI,CAACN,GAAA,CAAI,GAC1BH,gBAAA,CAAiBM,MAAM;EAC7B,OAAO,IAAIJ,KAAA,CAAMM,IAAI,KAAK,UAAU;IAClC,IAAIH,UAAA,EAAYM,SAAA,KAAcP,YAAA,EAAcO,SAAA,EAAW;MACrD,MAAMC,YAAA,GACJX,MAAA,EAAQY,SAAA,GAAYR,UAAA,EAAYM,SAAA,CAAU,KACxC,CAAE,YAAYT,KAAA,IAAS,qBAAqBA,KAAI,KAC/C,CAAAA,KAAA,CAAMY,eAAe,IAAIZ,KAAA,CAAMa,MAAM,GAAGC,IAAA,CACtCC,KAAA,IAAU,OAAOA,KAAA,KAAU,YAAYA,KAAA,CAAMC,IAAI,KAAKb,UAAA,EAAYM,SAAA,KAC/D;QACNL,MAAA,EAAQ;MACV;MAEFA,MAAA,GAASM,YAAA,CAAaN,MAAM;MAC5BC,aAAA,GAAgBP,gBAAA,CAAiBS,IAAI,EAAEC,MAAA,GACnCV,gBAAA,CAAiBS,IAAI,CAACN,GAAA,CAAI,GAC1BH,gBAAA,CAAiBM,MAAM;IAC7B,OAAO;MACL,MAAMa,mBAAA,GACJlB,MAAA,EAAQY,SAAA,GAAYR,UAAA,EAAYM,SAAA,CAAU,KACxC,CAAE,YAAYT,KAAA,IAAS,qBAAqBA,KAAI,KAC/C,CAAAA,KAAA,CAAMY,eAAe,IAAIZ,KAAA,CAAMa,MAAM,GAAGC,IAAA,CACtCC,KAAA,IAAU,OAAOA,KAAA,KAAU,YAAYA,KAAA,CAAMC,IAAI,KAAKb,UAAA,EAAYM,SAAA,KAC/D;QACNL,MAAA,EAAQ;MACV;MAEF,MAAMc,sBAAA,GACJnB,MAAA,EAAQY,SAAA,GAAYT,YAAA,EAAcO,SAAA,CAAU,KAC1C,CAAE,YAAYT,KAAA,IAAS,qBAAqBA,KAAI,KAC/C,CAAAA,KAAA,CAAMY,eAAe,IAAIZ,KAAA,CAAMa,MAAM,GAAGC,IAAA,CACtCC,KAAA,IAAU,OAAOA,KAAA,KAAU,YAAYA,KAAA,CAAMC,IAAI,KAAKd,YAAA,EAAcO,SAAA,KACjE;QACNL,MAAA,EAAQ;MACV;MAEFA,MAAA,GAASR,eAAA,CACP,C,GAAIqB,mBAAA,CAAoBb,MAAM,E,GAAKc,sBAAA,CAAuBd,MAAM,CAAC,EACjE;MAGF;MACAC,aAAA,GAAgBP,gBAAA,CAAiBS,IAAI,EAAEC,MAAA,GACnCV,gBAAA,CAAiBS,IAAI,CAACN,GAAA,CAAI,GAC1BH,gBAAA,CAAiBM,MAAM;IAC7B;EACF;EAEA,OAAO;IAAEA,MAAA;IAAQC;EAAc;AACjC","ignoreList":[]}
|