Files
klz-cables.com/.pnpm-store/v10/files/02/11b51095d053bb7b889eb893f03218651fcb9e2b276afdc9ffa9305d52510fa85481deb4211d26b6c0d9695f1d5b7b119f0760f53d16a123533d6837ed1d1c
Marc Mintel 5397309103
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
fix(products): fix breadcrumbs and product filtering (backport from main)
2026-02-24 16:04:21 +01:00

43 lines
1.8 KiB
Plaintext

import { flattenTopLevelFields } from 'payload';
import { fieldAffectsData } from 'payload/shared';
import { filterFieldsWithPermissions } from '../providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js';
import { getInitialColumns } from '../providers/TableColumns/getInitialColumns.js';
export const getColumns = ({
clientConfig,
collectionConfig,
collectionSlug,
columns,
i18n,
permissions
}) => {
const isPolymorphic = Array.isArray(collectionSlug);
const fields = !isPolymorphic ? collectionConfig?.fields ?? [] : [];
if (isPolymorphic) {
for (const collection of collectionSlug) {
const clientCollectionConfig = clientConfig.collections.find(each => each.slug === collection);
for (const field of filterFieldsWithPermissions({
fieldPermissions: permissions?.collections?.[collection]?.fields || true,
fields: clientCollectionConfig.fields
})) {
if (fieldAffectsData(field)) {
if (fields.some(each => fieldAffectsData(each) && each.name === field.name)) {
continue;
}
}
fields.push(field);
}
}
}
return columns?.length ? columns?.filter(column => flattenTopLevelFields(fields, {
i18n,
keepPresentationalFields: true,
moveSubFieldsToTop: true
})?.some(field => {
const accessor = 'accessor' in field ? field.accessor : 'name' in field ? field.name : undefined;
return accessor === column.accessor;
})) : getInitialColumns(isPolymorphic ? fields : filterFieldsWithPermissions({
fieldPermissions: typeof collectionSlug === 'string' && permissions?.collections?.[collectionSlug]?.fields ? permissions.collections[collectionSlug].fields : true,
fields
}), collectionConfig?.admin?.useAsTitle, isPolymorphic ? [] : collectionConfig?.admin?.defaultColumns);
};
//# sourceMappingURL=getColumns.js.map