@payloadcms/next 3.56.0 → 3.57.0-canary.1
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/elements/DocumentHeader/Tabs/Tab/TabLink.js +19 -41
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/Nav/index.client.js +28 -48
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
- package/dist/utilities/handleServerFunctions.js +9 -3
- package/dist/utilities/handleServerFunctions.js.map +1 -1
- package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
- package/dist/views/Document/handleServerFunction.js +4 -30
- package/dist/views/Document/handleServerFunction.js.map +1 -1
- package/dist/views/List/appendUploadSelectFields.d.ts +11 -0
- package/dist/views/List/appendUploadSelectFields.d.ts.map +1 -0
- package/dist/views/List/appendUploadSelectFields.js +37 -0
- package/dist/views/List/appendUploadSelectFields.js.map +1 -0
- package/dist/views/List/handleServerFunction.d.ts.map +1 -1
- package/dist/views/List/handleServerFunction.js +4 -30
- package/dist/views/List/handleServerFunction.js.map +1 -1
- package/dist/views/List/index.d.ts +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +6 -0
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/Logout/LogoutClient.js +29 -31
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +12 -28
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +17 -27
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +23 -33
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +21 -30
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +16 -50
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js +8 -12
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +14 -23
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js +27 -53
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/package.json +9 -9
package/dist/views/List/index.js
CHANGED
|
@@ -6,6 +6,7 @@ import { notFound } from 'next/navigation.js';
|
|
|
6
6
|
import { combineWhereConstraints, formatAdminURL, isNumber, mergeListSearchAndWhere, transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared';
|
|
7
7
|
import React, { Fragment } from 'react';
|
|
8
8
|
import { getDocumentPermissions } from '../Document/getDocumentPermissions.js';
|
|
9
|
+
import { appendUploadSelectFields } from './appendUploadSelectFields.js';
|
|
9
10
|
import { handleGroupBy } from './handleGroupBy.js';
|
|
10
11
|
import { renderListViewSlots } from './renderListViewSlots.js';
|
|
11
12
|
import { resolveAllFilterOptions } from './resolveAllFilterOptions.js';
|
|
@@ -153,6 +154,11 @@ export const renderListView = async args => {
|
|
|
153
154
|
i18n
|
|
154
155
|
});
|
|
155
156
|
const select = collectionConfig.admin.enableListViewSelectAPI ? transformColumnsToSelect(columns) : undefined;
|
|
157
|
+
/** Force select image fields for list view thumbnails */
|
|
158
|
+
appendUploadSelectFields({
|
|
159
|
+
collectionConfig,
|
|
160
|
+
select
|
|
161
|
+
});
|
|
156
162
|
try {
|
|
157
163
|
if (collectionConfig.admin.groupBy && query.groupBy) {
|
|
158
164
|
({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["DefaultListView","HydrateAuthProvider","ListQueryProvider","RenderServerComponent","getColumns","renderFilters","renderTable","upsertPreferences","notFound","combineWhereConstraints","formatAdminURL","isNumber","mergeListSearchAndWhere","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","getDocumentPermissions","handleGroupBy","renderListViewSlots","resolveAllFilterOptions","transformColumnsToSelect","renderListView","args","clientConfig","customCellProps","disableBulkDelete","disableBulkEdit","disableQueryPresets","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","trash","viewType","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","collections","read","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","page","admin","pagination","defaultLimit","defaultSort","routes","adminRoute","includes","baseFilterConstraint","baseFilter","baseListFilter","queryPreset","queryPresetPermissions","whereWithMergedSearch","search","where","and","deletedAt","exists","findByID","id","collection","depth","overrideAccess","find","c","data","then","docPermissions","err","logger","error","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","select","enableListViewSelectAPI","draft","fallbackLocale","includeLockStatus","orderableFieldName","orderable","useAsTitle","name","msg","renderedFilters","fields","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","delete","notFoundDocId","serverProps","listPreferences","listSearchableFields","listViewSlots","clientProps","isInDrawer","Boolean","stringify","List","_jsxs","_jsx","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { getColumns, renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { notFound } from 'next/navigation.js'\nimport {\n type AdminViewServerProps,\n type CollectionPreferences,\n type Column,\n type ColumnPreference,\n type ListQuery,\n type ListViewClientProps,\n type ListViewServerPropsOnly,\n type PaginatedDocs,\n type QueryPreset,\n type SanitizedCollectionPermission,\n} from 'payload'\nimport {\n combineWhereConstraints,\n formatAdminURL,\n isNumber,\n mergeListSearchAndWhere,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { getDocumentPermissions } from '../Document/getDocumentPermissions.js'\nimport { handleGroupBy } from './handleGroupBy.js'\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\nimport { transformColumnsToSelect } from './transformColumnsToSelect.js'\n\ntype RenderListViewArgs = {\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n /**\n * @experimental This prop is subject to change in future releases.\n */\n trash?: boolean\n} & AdminViewServerProps\n\n/**\n * This function is responsible for rendering\n * the list view on the server for both:\n * - default list view\n * - list view within drawers\n */\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n trash,\n viewType,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n if (!permissions?.collections?.[collectionSlug]?.read) {\n throw new Error('not-found')\n }\n\n const query: ListQuery = queryFromArgs || queryFromReq\n\n const columnsFromQuery: ColumnPreference[] = transformColumnsToPreferences(query?.columns)\n\n query.queryByGroup =\n query?.queryByGroup && typeof query.queryByGroup === 'string'\n ? JSON.parse(query.queryByGroup)\n : query?.queryByGroup\n\n const collectionPreferences = await upsertPreferences<CollectionPreferences>({\n key: `collection-${collectionSlug}`,\n req,\n value: {\n columns: columnsFromQuery,\n groupBy: query?.groupBy,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n preset: query?.preset,\n sort: query?.sort as string,\n },\n })\n\n query.preset = collectionPreferences?.preset\n\n query.page = isNumber(query?.page) ? Number(query.page) : 0\n\n query.limit = collectionPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n query.sort =\n collectionPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n query.groupBy = collectionPreferences?.groupBy\n\n query.columns = transformColumnsToSearchParams(collectionPreferences?.columns || [])\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\n\n const baseFilterConstraint = await (\n collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter\n )?.({\n limit: query.limit,\n page: query.page,\n req,\n sort: query.sort,\n })\n\n let queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined\n\n let whereWithMergedSearch = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: combineWhereConstraints([query?.where, baseFilterConstraint]),\n })\n\n if (trash === true) {\n whereWithMergedSearch = {\n and: [\n whereWithMergedSearch,\n {\n deletedAt: {\n exists: true,\n },\n },\n ],\n }\n }\n\n if (collectionPreferences?.preset) {\n try {\n queryPreset = (await payload.findByID({\n id: collectionPreferences?.preset,\n collection: 'payload-query-presets',\n depth: 0,\n overrideAccess: false,\n user,\n })) as QueryPreset\n\n if (queryPreset) {\n queryPresetPermissions = await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: config.collections.find((c) => c.slug === 'payload-query-presets'),\n data: queryPreset,\n req,\n })?.then(({ docPermissions }) => docPermissions)\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\n }\n }\n\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[] = []\n let data: PaginatedDocs = {\n // no results default\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit: query.limit,\n nextPage: null,\n page: 1,\n pagingCounter: 0,\n prevPage: null,\n totalDocs: 0,\n totalPages: 0,\n }\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const columns = getColumns({\n clientConfig,\n collectionConfig: clientCollectionConfig,\n collectionSlug,\n columns: collectionPreferences?.columns,\n i18n,\n })\n\n const select = collectionConfig.admin.enableListViewSelectAPI\n ? transformColumnsToSelect(columns)\n : undefined\n\n try {\n if (collectionConfig.admin.groupBy && query.groupBy) {\n ;({ columnState, data, Table } = await handleGroupBy({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n query,\n req,\n select,\n trash,\n user,\n viewType,\n where: whereWithMergedSearch,\n }))\n } else {\n data = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n req,\n select,\n sort: query?.sort,\n trash,\n user,\n where: whereWithMergedSearch,\n })\n ;({ columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data,\n drawerSlug,\n enableRowSelections,\n i18n: req.i18n,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n }))\n }\n } catch (err) {\n if (err.name !== 'QueryError') {\n // QueryErrors are expected when a user filters by a field they do not have access to\n req.payload.logger.error({\n err,\n msg: `There was an error fetching the list view data for collection ${collectionSlug}`,\n })\n throw err\n }\n }\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n const hasDeletePermission = permissions?.collections?.[collectionSlug]?.delete\n\n // Check if there's a notFound query parameter (document ID that wasn't found)\n const notFoundDocId = typeof searchParams?.notFound === 'string' ? searchParams.notFound : null\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit: query.limit,\n listPreferences: collectionPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n hasDeletePermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n notFoundDocId,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n // Needed to prevent: Only plain objects can be passed to Client Components from Server Components. Objects with toJSON methods are not supported. Convert it manually to a simple value before passing it to props.\n // Is there a way to avoid this? The `where` object is already seemingly plain, but is not bc it originates from the params.\n query.where = query?.where ? JSON.parse(JSON.stringify(query?.where || {})) : undefined\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListQueryProvider\n collectionSlug={collectionSlug}\n data={data}\n modifySearchParams={!isInDrawer}\n orderableFieldName={collectionConfig.orderable === true ? '_order' : undefined}\n query={query}\n >\n {RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission,\n hasDeletePermission,\n listPreferences: collectionPreferences,\n newDocumentURL,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n viewType,\n } satisfies ListViewClientProps,\n Component: collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: DefaultListView,\n importMap: payload.importMap,\n serverProps,\n })}\n </ListQueryProvider>\n </Fragment>\n ),\n }\n }\n\n throw new Error('not-found')\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["DefaultListView","HydrateAuthProvider","ListQueryProvider","RenderServerComponent","getColumns","renderFilters","renderTable","upsertPreferences","notFound","combineWhereConstraints","formatAdminURL","isNumber","mergeListSearchAndWhere","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","getDocumentPermissions","appendUploadSelectFields","handleGroupBy","renderListViewSlots","resolveAllFilterOptions","transformColumnsToSelect","renderListView","args","clientConfig","customCellProps","disableBulkDelete","disableBulkEdit","disableQueryPresets","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","trash","viewType","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","collections","read","Error","columnsFromQuery","columns","queryByGroup","JSON","parse","collectionPreferences","key","value","groupBy","limit","Number","undefined","preset","sort","page","admin","pagination","defaultLimit","defaultSort","routes","adminRoute","includes","baseFilterConstraint","baseFilter","baseListFilter","queryPreset","queryPresetPermissions","whereWithMergedSearch","search","where","and","deletedAt","exists","findByID","id","collection","depth","overrideAccess","find","c","data","then","docPermissions","err","logger","error","Table","columnState","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","clientCollectionConfig","select","enableListViewSelectAPI","draft","fallbackLocale","includeLockStatus","orderableFieldName","orderable","useAsTitle","name","msg","renderedFilters","fields","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","hasDeletePermission","delete","notFoundDocId","serverProps","listPreferences","listSearchableFields","listViewSlots","clientProps","isInDrawer","Boolean","stringify","List","_jsxs","_jsx","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n CollectionPreferences,\n Column,\n ColumnPreference,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n PaginatedDocs,\n QueryPreset,\n SanitizedCollectionPermission,\n} from 'payload'\n\nimport { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { getColumns, renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { notFound } from 'next/navigation.js'\nimport {\n combineWhereConstraints,\n formatAdminURL,\n isNumber,\n mergeListSearchAndWhere,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { getDocumentPermissions } from '../Document/getDocumentPermissions.js'\nimport { appendUploadSelectFields } from './appendUploadSelectFields.js'\nimport { handleGroupBy } from './handleGroupBy.js'\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\nimport { transformColumnsToSelect } from './transformColumnsToSelect.js'\n\ntype RenderListViewArgs = {\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableQueryPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n /**\n * @experimental This prop is subject to change in future releases.\n */\n trash?: boolean\n} & AdminViewServerProps\n\n/**\n * This function is responsible for rendering\n * the list view on the server for both:\n * - default list view\n * - list view within drawers\n */\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n disableQueryPresets,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n trash,\n viewType,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n if (!permissions?.collections?.[collectionSlug]?.read) {\n throw new Error('not-found')\n }\n\n const query: ListQuery = queryFromArgs || queryFromReq\n\n const columnsFromQuery: ColumnPreference[] = transformColumnsToPreferences(query?.columns)\n\n query.queryByGroup =\n query?.queryByGroup && typeof query.queryByGroup === 'string'\n ? JSON.parse(query.queryByGroup)\n : query?.queryByGroup\n\n const collectionPreferences = await upsertPreferences<CollectionPreferences>({\n key: `collection-${collectionSlug}`,\n req,\n value: {\n columns: columnsFromQuery,\n groupBy: query?.groupBy,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n preset: query?.preset,\n sort: query?.sort as string,\n },\n })\n\n query.preset = collectionPreferences?.preset\n\n query.page = isNumber(query?.page) ? Number(query.page) : 0\n\n query.limit = collectionPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n query.sort =\n collectionPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n query.groupBy = collectionPreferences?.groupBy\n\n query.columns = transformColumnsToSearchParams(collectionPreferences?.columns || [])\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\n\n const baseFilterConstraint = await (\n collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter\n )?.({\n limit: query.limit,\n page: query.page,\n req,\n sort: query.sort,\n })\n\n let queryPreset: QueryPreset | undefined\n let queryPresetPermissions: SanitizedCollectionPermission | undefined\n\n let whereWithMergedSearch = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: combineWhereConstraints([query?.where, baseFilterConstraint]),\n })\n\n if (trash === true) {\n whereWithMergedSearch = {\n and: [\n whereWithMergedSearch,\n {\n deletedAt: {\n exists: true,\n },\n },\n ],\n }\n }\n\n if (collectionPreferences?.preset) {\n try {\n queryPreset = (await payload.findByID({\n id: collectionPreferences?.preset,\n collection: 'payload-query-presets',\n depth: 0,\n overrideAccess: false,\n user,\n })) as QueryPreset\n\n if (queryPreset) {\n queryPresetPermissions = await getDocumentPermissions({\n id: queryPreset.id,\n collectionConfig: config.collections.find((c) => c.slug === 'payload-query-presets'),\n data: queryPreset,\n req,\n })?.then(({ docPermissions }) => docPermissions)\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching query preset or preset permissions: ${err}`)\n }\n }\n\n let Table: React.ReactNode | React.ReactNode[] = null\n let columnState: Column[] = []\n let data: PaginatedDocs = {\n // no results default\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit: query.limit,\n nextPage: null,\n page: 1,\n pagingCounter: 0,\n prevPage: null,\n totalDocs: 0,\n totalPages: 0,\n }\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const columns = getColumns({\n clientConfig,\n collectionConfig: clientCollectionConfig,\n collectionSlug,\n columns: collectionPreferences?.columns,\n i18n,\n })\n\n const select = collectionConfig.admin.enableListViewSelectAPI\n ? transformColumnsToSelect(columns)\n : undefined\n\n /** Force select image fields for list view thumbnails */\n appendUploadSelectFields({\n collectionConfig,\n select,\n })\n\n try {\n if (collectionConfig.admin.groupBy && query.groupBy) {\n ;({ columnState, data, Table } = await handleGroupBy({\n clientCollectionConfig,\n clientConfig,\n collectionConfig,\n collectionSlug,\n columns,\n customCellProps,\n drawerSlug,\n enableRowSelections,\n query,\n req,\n select,\n trash,\n user,\n viewType,\n where: whereWithMergedSearch,\n }))\n } else {\n data = await req.payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit: query?.limit ? Number(query.limit) : undefined,\n locale: req.locale,\n overrideAccess: false,\n page: query?.page ? Number(query.page) : undefined,\n req,\n select,\n sort: query?.sort,\n trash,\n user,\n where: whereWithMergedSearch,\n })\n ;({ columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columns,\n customCellProps,\n data,\n drawerSlug,\n enableRowSelections,\n i18n: req.i18n,\n orderableFieldName: collectionConfig.orderable === true ? '_order' : undefined,\n payload: req.payload,\n query,\n useAsTitle: collectionConfig.admin.useAsTitle,\n viewType,\n }))\n }\n } catch (err) {\n if (err.name !== 'QueryError') {\n // QueryErrors are expected when a user filters by a field they do not have access to\n req.payload.logger.error({\n err,\n msg: `There was an error fetching the list view data for collection ${collectionSlug}`,\n })\n throw err\n }\n }\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n const hasDeletePermission = permissions?.collections?.[collectionSlug]?.delete\n\n // Check if there's a notFound query parameter (document ID that wasn't found)\n const notFoundDocId = typeof searchParams?.notFound === 'string' ? searchParams.notFound : null\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit: query.limit,\n listPreferences: collectionPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n hasDeletePermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n notFoundDocId,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n // Needed to prevent: Only plain objects can be passed to Client Components from Server Components. Objects with toJSON methods are not supported. Convert it manually to a simple value before passing it to props.\n // Is there a way to avoid this? The `where` object is already seemingly plain, but is not bc it originates from the params.\n query.where = query?.where ? JSON.parse(JSON.stringify(query?.where || {})) : undefined\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListQueryProvider\n collectionSlug={collectionSlug}\n data={data}\n modifySearchParams={!isInDrawer}\n orderableFieldName={collectionConfig.orderable === true ? '_order' : undefined}\n query={query}\n >\n {RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit,\n disableQueryPresets,\n enableRowSelections,\n hasCreatePermission,\n hasDeletePermission,\n listPreferences: collectionPreferences,\n newDocumentURL,\n queryPreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n viewType,\n } satisfies ListViewClientProps,\n Component: collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: DefaultListView,\n importMap: payload.importMap,\n serverProps,\n })}\n </ListQueryProvider>\n </Fragment>\n ),\n }\n }\n\n throw new Error('not-found')\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -32,31 +32,29 @@ export const LogoutClient = props => {
|
|
|
32
32
|
startRouteTransition
|
|
33
33
|
} = useRouteTransition();
|
|
34
34
|
user?.id;
|
|
35
|
-
|
|
36
|
-
t0 = Boolean(user?.id);
|
|
37
|
-
const isLoggedIn = t0;
|
|
35
|
+
const isLoggedIn = Boolean(user?.id);
|
|
38
36
|
const navigatingToLoginRef = React.useRef(false);
|
|
39
|
-
let
|
|
37
|
+
let t0;
|
|
40
38
|
if ($[0] !== adminRoute || $[1] !== inactivity || $[2] !== redirect) {
|
|
41
|
-
|
|
39
|
+
t0 = () => formatAdminURL({
|
|
42
40
|
adminRoute,
|
|
43
41
|
path: `/login${inactivity && redirect && redirect.length > 0 ? `?redirect=${encodeURIComponent(redirect)}` : ""}`
|
|
44
42
|
});
|
|
45
43
|
$[0] = adminRoute;
|
|
46
44
|
$[1] = inactivity;
|
|
47
45
|
$[2] = redirect;
|
|
48
|
-
$[3] =
|
|
46
|
+
$[3] = t0;
|
|
49
47
|
} else {
|
|
50
|
-
|
|
48
|
+
t0 = $[3];
|
|
51
49
|
}
|
|
52
|
-
const [loginRoute] = React.useState(
|
|
50
|
+
const [loginRoute] = React.useState(t0);
|
|
53
51
|
const {
|
|
54
52
|
t
|
|
55
53
|
} = useTranslation();
|
|
56
54
|
const router = useRouter();
|
|
57
|
-
let
|
|
55
|
+
let t1;
|
|
58
56
|
if ($[4] !== inactivity || $[5] !== logOut || $[6] !== loginRoute || $[7] !== router || $[8] !== startRouteTransition || $[9] !== t) {
|
|
59
|
-
|
|
57
|
+
t1 = async () => {
|
|
60
58
|
if (!inactivity && !navigatingToLoginRef.current) {
|
|
61
59
|
navigatingToLoginRef.current = true;
|
|
62
60
|
await logOut();
|
|
@@ -71,15 +69,15 @@ export const LogoutClient = props => {
|
|
|
71
69
|
$[7] = router;
|
|
72
70
|
$[8] = startRouteTransition;
|
|
73
71
|
$[9] = t;
|
|
74
|
-
$[10] =
|
|
72
|
+
$[10] = t1;
|
|
75
73
|
} else {
|
|
76
|
-
|
|
74
|
+
t1 = $[10];
|
|
77
75
|
}
|
|
78
|
-
const handleLogOut =
|
|
76
|
+
const handleLogOut = t1;
|
|
77
|
+
let t2;
|
|
79
78
|
let t3;
|
|
80
|
-
let t4;
|
|
81
79
|
if ($[11] !== handleLogOut || $[12] !== isLoggedIn || $[13] !== loginRoute || $[14] !== router || $[15] !== startRouteTransition) {
|
|
82
|
-
|
|
80
|
+
t2 = () => {
|
|
83
81
|
if (isLoggedIn) {
|
|
84
82
|
handleLogOut();
|
|
85
83
|
} else {
|
|
@@ -89,23 +87,23 @@ export const LogoutClient = props => {
|
|
|
89
87
|
}
|
|
90
88
|
}
|
|
91
89
|
};
|
|
92
|
-
|
|
90
|
+
t3 = [handleLogOut, isLoggedIn, loginRoute, router, startRouteTransition];
|
|
93
91
|
$[11] = handleLogOut;
|
|
94
92
|
$[12] = isLoggedIn;
|
|
95
93
|
$[13] = loginRoute;
|
|
96
94
|
$[14] = router;
|
|
97
95
|
$[15] = startRouteTransition;
|
|
98
|
-
$[16] =
|
|
99
|
-
$[17] =
|
|
96
|
+
$[16] = t2;
|
|
97
|
+
$[17] = t3;
|
|
100
98
|
} else {
|
|
101
|
-
|
|
102
|
-
|
|
99
|
+
t2 = $[16];
|
|
100
|
+
t3 = $[17];
|
|
103
101
|
}
|
|
104
|
-
useEffect(
|
|
102
|
+
useEffect(t2, t3);
|
|
105
103
|
if (!isLoggedIn && inactivity) {
|
|
106
|
-
let
|
|
104
|
+
let t4;
|
|
107
105
|
if ($[18] !== loginRoute || $[19] !== t) {
|
|
108
|
-
|
|
106
|
+
t4 = _jsxs("div", {
|
|
109
107
|
className: `${baseClass}__wrap`,
|
|
110
108
|
children: [_jsx("h2", {
|
|
111
109
|
children: t("authentication:loggedOutInactivity")
|
|
@@ -119,23 +117,23 @@ export const LogoutClient = props => {
|
|
|
119
117
|
});
|
|
120
118
|
$[18] = loginRoute;
|
|
121
119
|
$[19] = t;
|
|
122
|
-
$[20] =
|
|
120
|
+
$[20] = t4;
|
|
123
121
|
} else {
|
|
124
|
-
|
|
122
|
+
t4 = $[20];
|
|
125
123
|
}
|
|
126
|
-
return
|
|
124
|
+
return t4;
|
|
127
125
|
}
|
|
128
|
-
let
|
|
126
|
+
let t4;
|
|
129
127
|
if ($[21] !== t) {
|
|
130
|
-
|
|
128
|
+
t4 = _jsx(LoadingOverlay, {
|
|
131
129
|
animationDuration: "0ms",
|
|
132
130
|
loadingText: t("authentication:loggingOut")
|
|
133
131
|
});
|
|
134
132
|
$[21] = t;
|
|
135
|
-
$[22] =
|
|
133
|
+
$[22] = t4;
|
|
136
134
|
} else {
|
|
137
|
-
|
|
135
|
+
t4 = $[22];
|
|
138
136
|
}
|
|
139
|
-
return
|
|
137
|
+
return t4;
|
|
140
138
|
};
|
|
141
139
|
//# sourceMappingURL=LogoutClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LogoutClient.js","names":["c","_c","Button","LoadingOverlay","toast","useAuth","useRouteTransition","useTranslation","useRouter","formatAdminURL","React","useEffect","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","id","
|
|
1
|
+
{"version":3,"file":"LogoutClient.js","names":["c","_c","Button","LoadingOverlay","toast","useAuth","useRouteTransition","useTranslation","useRouter","formatAdminURL","React","useEffect","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","id","isLoggedIn","Boolean","navigatingToLoginRef","useRef","t0","path","length","encodeURIComponent","loginRoute","useState","t","router","t1","current","success","push","handleLogOut","t2","t3","t4","_jsxs","className","children","_jsx","buttonStyle","el","size","url","animationDuration","loadingText"],"sources":["../../../src/views/Logout/LogoutClient.tsx"],"sourcesContent":["'use client'\nimport {\n Button,\n LoadingOverlay,\n toast,\n useAuth,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useEffect } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'logout'\n\n/**\n * This component should **just** be the inactivity route and do nothing with logging the user out.\n *\n * It currently handles too much, the auth provider should just log the user out and then\n * we could remove the useEffect in this file. So instead of the logout button\n * being an anchor link, it should be a button that calls `logOut` in the provider.\n *\n * This view is still useful if cookies attempt to refresh and fail, i.e. the user\n * is logged out due to inactivity.\n */\nexport const LogoutClient: React.FC<{\n adminRoute: string\n inactivity?: boolean\n redirect: string\n}> = (props) => {\n const { adminRoute, inactivity, redirect } = props\n\n const { logOut, user } = useAuth()\n\n const { startRouteTransition } = useRouteTransition()\n\n const isLoggedIn = React.useMemo(() => {\n return Boolean(user?.id)\n }, [user?.id])\n\n const navigatingToLoginRef = React.useRef(false)\n\n const [loginRoute] = React.useState(() =>\n formatAdminURL({\n adminRoute,\n path: `/login${\n inactivity && redirect && redirect.length > 0\n ? `?redirect=${encodeURIComponent(redirect)}`\n : ''\n }`,\n }),\n )\n\n const { t } = useTranslation()\n const router = useRouter()\n\n const handleLogOut = React.useCallback(async () => {\n if (!inactivity && !navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n await logOut()\n toast.success(t('authentication:loggedOutSuccessfully'))\n startRouteTransition(() => router.push(loginRoute))\n return\n }\n }, [inactivity, logOut, loginRoute, router, startRouteTransition, t])\n\n useEffect(() => {\n if (isLoggedIn) {\n void handleLogOut()\n } else if (!navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n startRouteTransition(() => router.push(loginRoute))\n }\n }, [handleLogOut, isLoggedIn, loginRoute, router, startRouteTransition])\n\n if (!isLoggedIn && inactivity) {\n return (\n <div className={`${baseClass}__wrap`}>\n <h2>{t('authentication:loggedOutInactivity')}</h2>\n <Button buttonStyle=\"secondary\" el=\"link\" size=\"large\" url={loginRoute}>\n {t('authentication:logBackIn')}\n </Button>\n </div>\n )\n }\n\n return <LoadingOverlay animationDuration={'0ms'} loadingText={t('authentication:loggingOut')} />\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,7 +8,7 @@ import React, { useState } from 'react';
|
|
|
8
8
|
import { countChangedFields, countChangedFieldsInRows } from '../utilities/countChangedFields.js';
|
|
9
9
|
const baseClass = 'diff-collapser';
|
|
10
10
|
export const DiffCollapser = t0 => {
|
|
11
|
-
const $ = _c(
|
|
11
|
+
const $ = _c(19);
|
|
12
12
|
const {
|
|
13
13
|
children,
|
|
14
14
|
field,
|
|
@@ -39,24 +39,8 @@ export const DiffCollapser = t0 => {
|
|
|
39
39
|
if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {
|
|
40
40
|
throw new Error("DiffCollapser: field must be an array or blocks field when isIterable is true");
|
|
41
41
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
t5 = valueFrom ?? [];
|
|
45
|
-
$[14] = valueFrom;
|
|
46
|
-
$[15] = t5;
|
|
47
|
-
} else {
|
|
48
|
-
t5 = $[15];
|
|
49
|
-
}
|
|
50
|
-
const valueFromRows = t5;
|
|
51
|
-
let t6;
|
|
52
|
-
if ($[16] !== valueTo) {
|
|
53
|
-
t6 = valueTo ?? [];
|
|
54
|
-
$[16] = valueTo;
|
|
55
|
-
$[17] = t6;
|
|
56
|
-
} else {
|
|
57
|
-
t6 = $[17];
|
|
58
|
-
}
|
|
59
|
-
const valueToRows = t6;
|
|
42
|
+
const valueFromRows = valueFrom ?? [];
|
|
43
|
+
const valueToRows = valueTo ?? [];
|
|
60
44
|
if (!Array.isArray(valueFromRows) || !Array.isArray(valueToRows)) {
|
|
61
45
|
throw new Error("DiffCollapser: valueFrom and valueTro must be arrays when isIterable is true");
|
|
62
46
|
}
|
|
@@ -81,22 +65,22 @@ export const DiffCollapser = t0 => {
|
|
|
81
65
|
const t5 = isCollapsed && `${baseClass}__content--is-collapsed`;
|
|
82
66
|
const t6 = hideGutter && `${baseClass}__content--hide-gutter`;
|
|
83
67
|
let t7;
|
|
84
|
-
if ($[
|
|
68
|
+
if ($[14] !== t5 || $[15] !== t6) {
|
|
85
69
|
t7 = [`${baseClass}__content`, t5, t6].filter(Boolean);
|
|
86
|
-
$[
|
|
87
|
-
$[
|
|
88
|
-
$[
|
|
70
|
+
$[14] = t5;
|
|
71
|
+
$[15] = t6;
|
|
72
|
+
$[16] = t7;
|
|
89
73
|
} else {
|
|
90
|
-
t7 = $[
|
|
74
|
+
t7 = $[16];
|
|
91
75
|
}
|
|
92
76
|
const contentClassNames = t7.join(" ");
|
|
93
77
|
let t8;
|
|
94
|
-
if ($[
|
|
78
|
+
if ($[17] !== isCollapsed) {
|
|
95
79
|
t8 = () => setIsCollapsed(!isCollapsed);
|
|
96
|
-
$[
|
|
97
|
-
$[
|
|
80
|
+
$[17] = isCollapsed;
|
|
81
|
+
$[18] = t8;
|
|
98
82
|
} else {
|
|
99
|
-
t8 = $[
|
|
83
|
+
t8 = $[18];
|
|
100
84
|
}
|
|
101
85
|
t4 = _jsxs("div", {
|
|
102
86
|
className: baseClass,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","ChevronIcon","FieldDiffLabel","useConfig","useTranslation","fieldIsArrayType","fieldIsBlockType","React","useState","countChangedFields","countChangedFieldsInRows","baseClass","DiffCollapser","t0","$","children","field","fields","hideGutter","t1","initCollapsed","t2","isIterable","t3","Label","locales","parentIsLocalized","valueFrom","valueTo","undefined","t","isCollapsed","setIsCollapsed","config","t4","changeCount","Error","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","ChevronIcon","FieldDiffLabel","useConfig","useTranslation","fieldIsArrayType","fieldIsBlockType","React","useState","countChangedFields","countChangedFieldsInRows","baseClass","DiffCollapser","t0","$","children","field","fields","hideGutter","t1","initCollapsed","t2","isIterable","t3","Label","locales","parentIsLocalized","valueFrom","valueTo","undefined","t","isCollapsed","setIsCollapsed","config","t4","changeCount","Error","valueFromRows","valueToRows","Array","isArray","t5","t6","t7","filter","Boolean","contentClassNames","join","t8","_jsxs","className","onClick","type","_jsx","direction","size","count"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField } from 'payload'\n\nimport { ChevronIcon, FieldDiffLabel, useConfig, useTranslation } from '@payloadcms/ui'\nimport { fieldIsArrayType, fieldIsBlockType } from 'payload/shared'\nimport React, { useState } from 'react'\n\nimport './index.scss'\nimport { countChangedFields, countChangedFieldsInRows } from '../utilities/countChangedFields.js'\n\nconst baseClass = 'diff-collapser'\n\ntype Props = {\n hideGutter?: boolean\n initCollapsed?: boolean\n Label: React.ReactNode\n locales: string[] | undefined\n parentIsLocalized: boolean\n valueTo: unknown\n} & (\n | {\n // fields collapser\n children: React.ReactNode\n field?: never\n fields: ClientField[]\n isIterable?: false\n valueFrom: unknown\n }\n | {\n // iterable collapser\n children: React.ReactNode\n field: ClientField\n fields?: never\n isIterable: true\n valueFrom?: unknown\n }\n)\n\nexport const DiffCollapser: React.FC<Props> = ({\n children,\n field,\n fields,\n hideGutter = false,\n initCollapsed = false,\n isIterable = false,\n Label,\n locales,\n parentIsLocalized,\n valueFrom,\n valueTo,\n}) => {\n const { t } = useTranslation()\n const [isCollapsed, setIsCollapsed] = useState(initCollapsed)\n const { config } = useConfig()\n\n let changeCount = 0\n\n if (isIterable) {\n if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {\n throw new Error(\n 'DiffCollapser: field must be an array or blocks field when isIterable is true',\n )\n }\n const valueFromRows = valueFrom ?? []\n const valueToRows = valueTo ?? []\n\n if (!Array.isArray(valueFromRows) || !Array.isArray(valueToRows)) {\n throw new Error(\n 'DiffCollapser: valueFrom and valueTro must be arrays when isIterable is true',\n )\n }\n\n changeCount = countChangedFieldsInRows({\n config,\n field,\n locales,\n parentIsLocalized,\n valueFromRows,\n valueToRows,\n })\n } else {\n changeCount = countChangedFields({\n config,\n fields,\n locales,\n parentIsLocalized,\n valueFrom,\n valueTo,\n })\n }\n\n const contentClassNames = [\n `${baseClass}__content`,\n isCollapsed && `${baseClass}__content--is-collapsed`,\n hideGutter && `${baseClass}__content--hide-gutter`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={baseClass}>\n <FieldDiffLabel>\n <button\n aria-label={isCollapsed ? 'Expand' : 'Collapse'}\n className={`${baseClass}__toggle-button`}\n onClick={() => setIsCollapsed(!isCollapsed)}\n type=\"button\"\n >\n <div className={`${baseClass}__label`}>{Label}</div>\n\n <ChevronIcon direction={isCollapsed ? 'right' : 'down'} size={'small'} />\n </button>\n {changeCount > 0 && isCollapsed && (\n <span className={`${baseClass}__field-change-count`}>\n {t('version:changedFieldsCount', { count: changeCount })}\n </span>\n )}\n </FieldDiffLabel>\n <div className={contentClassNames}>{children}</div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,7 +10,7 @@ import { DiffCollapser } from '../../DiffCollapser/index.js';
|
|
|
10
10
|
import { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js';
|
|
11
11
|
const baseClass = 'collapsible-diff';
|
|
12
12
|
export const Collapsible = t0 => {
|
|
13
|
-
const $ = _c(
|
|
13
|
+
const $ = _c(8);
|
|
14
14
|
const {
|
|
15
15
|
baseVersionField,
|
|
16
16
|
comparisonValue: valueFrom,
|
|
@@ -28,26 +28,16 @@ export const Collapsible = t0 => {
|
|
|
28
28
|
return null;
|
|
29
29
|
}
|
|
30
30
|
let t1;
|
|
31
|
-
if ($[0] !==
|
|
32
|
-
t1 =
|
|
33
|
-
children: getTranslation(field.label, i18n)
|
|
34
|
-
});
|
|
35
|
-
$[0] = field;
|
|
36
|
-
$[1] = i18n;
|
|
37
|
-
$[2] = t1;
|
|
38
|
-
} else {
|
|
39
|
-
t1 = $[2];
|
|
40
|
-
}
|
|
41
|
-
const t2 = parentIsLocalized || field.localized;
|
|
42
|
-
let t3;
|
|
43
|
-
if ($[3] !== baseVersionField.fields || $[4] !== field.fields || $[5] !== selectedLocales || $[6] !== t1 || $[7] !== t2 || $[8] !== valueFrom || $[9] !== valueTo) {
|
|
44
|
-
t3 = _jsx("div", {
|
|
31
|
+
if ($[0] !== baseVersionField.fields || $[1] !== field || $[2] !== i18n || $[3] !== parentIsLocalized || $[4] !== selectedLocales || $[5] !== valueFrom || $[6] !== valueTo) {
|
|
32
|
+
t1 = _jsx("div", {
|
|
45
33
|
className: baseClass,
|
|
46
34
|
children: _jsx(DiffCollapser, {
|
|
47
35
|
fields: field.fields,
|
|
48
|
-
Label:
|
|
36
|
+
Label: "label" in field && field.label && typeof field.label !== "function" && _jsx("span", {
|
|
37
|
+
children: getTranslation(field.label, i18n)
|
|
38
|
+
}),
|
|
49
39
|
locales: selectedLocales,
|
|
50
|
-
parentIsLocalized:
|
|
40
|
+
parentIsLocalized: parentIsLocalized || field.localized,
|
|
51
41
|
valueFrom,
|
|
52
42
|
valueTo,
|
|
53
43
|
children: _jsx(RenderVersionFieldsToDiff, {
|
|
@@ -55,17 +45,17 @@ export const Collapsible = t0 => {
|
|
|
55
45
|
})
|
|
56
46
|
})
|
|
57
47
|
});
|
|
58
|
-
$[
|
|
59
|
-
$[
|
|
60
|
-
$[
|
|
61
|
-
$[
|
|
62
|
-
$[
|
|
63
|
-
$[
|
|
64
|
-
$[
|
|
65
|
-
$[
|
|
48
|
+
$[0] = baseVersionField.fields;
|
|
49
|
+
$[1] = field;
|
|
50
|
+
$[2] = i18n;
|
|
51
|
+
$[3] = parentIsLocalized;
|
|
52
|
+
$[4] = selectedLocales;
|
|
53
|
+
$[5] = valueFrom;
|
|
54
|
+
$[6] = valueTo;
|
|
55
|
+
$[7] = t1;
|
|
66
56
|
} else {
|
|
67
|
-
|
|
57
|
+
t1 = $[7];
|
|
68
58
|
}
|
|
69
|
-
return
|
|
59
|
+
return t1;
|
|
70
60
|
};
|
|
71
61
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Collapsible","t0","$","baseVersionField","comparisonValue","valueFrom","field","parentIsLocalized","versionValue","valueTo","i18n","selectedLocales","fields","length","t1","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Collapsible","t0","$","baseVersionField","comparisonValue","valueFrom","field","parentIsLocalized","versionValue","valueTo","i18n","selectedLocales","fields","length","t1","_jsx","className","children","Label","label","localized","versionFields"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Collapsible/index.tsx"],"sourcesContent":["'use client'\nimport type { CollapsibleFieldDiffClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useTranslation } from '@payloadcms/ui'\nimport React from 'react'\n\nimport { useSelectedLocales } from '../../../Default/SelectedLocalesContext.js'\nimport { DiffCollapser } from '../../DiffCollapser/index.js'\nimport { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js'\n\nconst baseClass = 'collapsible-diff'\n\nexport const Collapsible: CollapsibleFieldDiffClientComponent = ({\n baseVersionField,\n comparisonValue: valueFrom,\n field,\n parentIsLocalized,\n versionValue: valueTo,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n\n if (!baseVersionField.fields?.length) {\n return null\n }\n\n return (\n <div className={baseClass}>\n <DiffCollapser\n fields={field.fields}\n Label={\n 'label' in field &&\n field.label &&\n typeof field.label !== 'function' && <span>{getTranslation(field.label, i18n)}</span>\n }\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized || field.localized}\n valueFrom={valueFrom}\n valueTo={valueTo}\n >\n <RenderVersionFieldsToDiff versionFields={baseVersionField.fields} />\n </DiffCollapser>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,kBAAkB,QAAQ;AACnC,SAASC,aAAa,QAAQ;AAC9B,SAASC,yBAAyB,QAAQ;AAE1C,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,WAAA,GAAmDC,EAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EAAC;IAAAW,gBAAA;IAAAC,eAAA,EAAAC,SAAA;IAAAC,KAAA;IAAAC,iBAAA;IAAAC,YAAA,EAAAC;EAAA,IAAAR,EAMhE;EACC;IAAAS;EAAA,IAAiBhB,cAAA;EACjB;IAAAiB;EAAA,IAA4Bf,kBAAA;EAAA,KAEvBO,gBAAA,CAAAS,MAAA,EAAAC,MAAA;IAAA;EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAZ,CAAA,QAAAC,gBAAA,CAAAS,MAAA,IAAAV,CAAA,QAAAI,KAAA,IAAAJ,CAAA,QAAAQ,IAAA,IAAAR,CAAA,QAAAK,iBAAA,IAAAL,CAAA,QAAAS,eAAA,IAAAT,CAAA,QAAAG,SAAA,IAAAH,CAAA,QAAAO,OAAA;IAKHK,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EAAAjB,SAAA;MAAAkB,QAAA,EACCF,IAAA,CAAAlB,aAAA;QAAAe,MAAA,EACUN,KAAA,CAAAM,MAAA;QAAAM,KAAA,EAEN,WAAWZ,KAAA,IACXA,KAAA,CAAAa,KAAW,IACX,OAAOb,KAAA,CAAAa,KAAA,KAAgB,cAAcJ,IAAA,CAAC;UAAAE,QAAA,EAAMxB,cAAA,CAAea,KAAA,CAAAa,KAAA,EAAaT,IAAA;QAAA,C;iBAEjEC,eAAA;QAAAJ,iBAAA,EACUA,iBAAA,IAAqBD,KAAA,CAAAc,SAAe;QAAAf,SAAA;QAAAI,OAAA;QAAAQ,QAAA,EAIvDF,IAAA,CAAAjB,yBAAA;UAAAuB,aAAA,EAA0ClB,gBAAA,CAAAS;QAAA,C;;;;;;;;;;;;;;SAb9CE,E;CAiBJ","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@ import { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js';
|
|
|
12
12
|
import { getFieldsForRowComparison } from '../../utilities/getFieldsForRowComparison.js';
|
|
13
13
|
const baseClass = 'iterable-diff';
|
|
14
14
|
export const Iterable = t0 => {
|
|
15
|
-
const $ = _c(
|
|
15
|
+
const $ = _c(12);
|
|
16
16
|
const {
|
|
17
17
|
baseVersionField,
|
|
18
18
|
comparisonValue: valueFrom,
|
|
@@ -38,28 +38,18 @@ export const Iterable = t0 => {
|
|
|
38
38
|
const valueFromRowCount = Array.isArray(valueFrom) ? valueFrom.length : 0;
|
|
39
39
|
const maxRows = Math.max(valueToRowCount, valueFromRowCount);
|
|
40
40
|
let t1;
|
|
41
|
-
if ($[0] !==
|
|
42
|
-
t1 =
|
|
43
|
-
children: [locale && _jsx("span", {
|
|
44
|
-
className: `${baseClass}__locale-label`,
|
|
45
|
-
children: locale
|
|
46
|
-
}), getTranslation(field.label, i18n)]
|
|
47
|
-
});
|
|
48
|
-
$[0] = field;
|
|
49
|
-
$[1] = i18n;
|
|
50
|
-
$[2] = locale;
|
|
51
|
-
$[3] = t1;
|
|
52
|
-
} else {
|
|
53
|
-
t1 = $[3];
|
|
54
|
-
}
|
|
55
|
-
let t2;
|
|
56
|
-
if ($[4] !== baseVersionField || $[5] !== config || $[6] !== field || $[7] !== i18n || $[8] !== maxRows || $[9] !== parentIsLocalized || $[10] !== selectedLocales || $[11] !== t || $[12] !== t1 || $[13] !== valueFrom || $[14] !== valueTo) {
|
|
57
|
-
t2 = _jsx("div", {
|
|
41
|
+
if ($[0] !== baseVersionField || $[1] !== config || $[2] !== field || $[3] !== i18n || $[4] !== locale || $[5] !== maxRows || $[6] !== parentIsLocalized || $[7] !== selectedLocales || $[8] !== t || $[9] !== valueFrom || $[10] !== valueTo) {
|
|
42
|
+
t1 = _jsx("div", {
|
|
58
43
|
className: baseClass,
|
|
59
44
|
children: _jsxs(DiffCollapser, {
|
|
60
45
|
field,
|
|
61
46
|
isIterable: true,
|
|
62
|
-
Label:
|
|
47
|
+
Label: "label" in field && field.label && typeof field.label !== "function" && _jsxs("span", {
|
|
48
|
+
children: [locale && _jsx("span", {
|
|
49
|
+
className: `${baseClass}__locale-label`,
|
|
50
|
+
children: locale
|
|
51
|
+
}), getTranslation(field.label, i18n)]
|
|
52
|
+
}),
|
|
63
53
|
locales: selectedLocales,
|
|
64
54
|
parentIsLocalized,
|
|
65
55
|
valueFrom,
|
|
@@ -119,21 +109,21 @@ export const Iterable = t0 => {
|
|
|
119
109
|
})]
|
|
120
110
|
})
|
|
121
111
|
});
|
|
122
|
-
$[
|
|
123
|
-
$[
|
|
124
|
-
$[
|
|
125
|
-
$[
|
|
126
|
-
$[
|
|
127
|
-
$[
|
|
128
|
-
$[
|
|
129
|
-
$[
|
|
130
|
-
$[
|
|
131
|
-
$[
|
|
132
|
-
$[
|
|
133
|
-
$[
|
|
112
|
+
$[0] = baseVersionField;
|
|
113
|
+
$[1] = config;
|
|
114
|
+
$[2] = field;
|
|
115
|
+
$[3] = i18n;
|
|
116
|
+
$[4] = locale;
|
|
117
|
+
$[5] = maxRows;
|
|
118
|
+
$[6] = parentIsLocalized;
|
|
119
|
+
$[7] = selectedLocales;
|
|
120
|
+
$[8] = t;
|
|
121
|
+
$[9] = valueFrom;
|
|
122
|
+
$[10] = valueTo;
|
|
123
|
+
$[11] = t1;
|
|
134
124
|
} else {
|
|
135
|
-
|
|
125
|
+
t1 = $[11];
|
|
136
126
|
}
|
|
137
|
-
return
|
|
127
|
+
return t1;
|
|
138
128
|
};
|
|
139
129
|
//# sourceMappingURL=index.js.map
|