Files
klz-cables.com/.pnpm-store/v10/files/e0/dad1859d032f798dd921f16ce3a9091e67dc042f2537435bb2cb96ad12e29dd6198732720c86366579b7e5403df16dfe39913985ad7cb33982f4fea3ebebb0
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.3 KiB
Plaintext

import { deepMergeWithReactComponents } from '../utilities/deepMerge.js';
import { fieldAffectsData, fieldHasSubFields } from './config/types.js';
export const mergeBaseFields = (fields, baseFields)=>{
const mergedFields = [
...fields || []
];
baseFields.forEach((baseField)=>{
let matchedIndex = null;
if (fieldAffectsData(baseField)) {
const match = mergedFields.find((field, i)=>{
if (fieldAffectsData(field) && field.name === baseField.name) {
matchedIndex = i;
return true;
}
return false;
});
if (match) {
const matchCopy = {
...match
};
mergedFields.splice(matchedIndex, 1);
const mergedField = deepMergeWithReactComponents(baseField, matchCopy);
if (fieldHasSubFields(baseField) && fieldHasSubFields(matchCopy)) {
;
mergedField.fields = mergeBaseFields(matchCopy.fields, baseField.fields);
}
mergedFields.push(mergedField);
} else {
mergedFields.push(baseField);
}
}
});
return mergedFields;
};
//# sourceMappingURL=mergeBaseFields.js.map