Files
klz-cables.com/.pnpm-store/v10/files/0e/679ee8bc9e31da6ba94041be0f5014c56f8e418b23685c5f07e5d3b3526d34ed7b17e750329acbe240f5b1e19b0288d06be800f43450dda948b25a5222a8b7
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

36 lines
1.5 KiB
Plaintext

import { fieldAffectsData } from 'payload/shared';
const getRemainingColumns = (fields, useAsTitle) => fields?.reduce((remaining, field) => {
if (fieldAffectsData(field) && field.name === useAsTitle) {
return remaining;
}
if (!fieldAffectsData(field) && 'fields' in field) {
return [...remaining, ...getRemainingColumns(field.fields, useAsTitle)];
}
if (field.type === 'tabs' && 'tabs' in field) {
return [...remaining, ...field.tabs.reduce((tabFieldColumns, tab) => [...tabFieldColumns, ...('name' in tab ? [tab.name] : getRemainingColumns(tab.fields, useAsTitle))], [])];
}
return [...remaining, field.name];
}, []);
/**
* Returns the initial columns to display in the table based on the following criteria:
* 1. If `defaultColumns` is set in the collection config, use those columns
* 2. Otherwise take `useAtTitle, if set, and the next 3 fields that are not hidden or disabled
*/
export const getInitialColumns = (fields, useAsTitle, defaultColumns) => {
let initialColumns = [];
if (Array.isArray(defaultColumns) && defaultColumns.length >= 1) {
initialColumns = defaultColumns;
} else {
if (useAsTitle) {
initialColumns.push(useAsTitle);
}
const remainingColumns = getRemainingColumns(fields, useAsTitle);
initialColumns = initialColumns.concat(remainingColumns);
initialColumns = initialColumns.slice(0, 4);
}
return initialColumns.map(column => ({
accessor: column,
active: true
}));
};
//# sourceMappingURL=getInitialColumns.js.map