@websolutespa/payload-plugin-bowl
Version:
Bowl PayloadCms plugin of the BOM Repository
49 lines (48 loc) • 1.46 kB
JavaScript
import { deepMerge } from '@websolutespa/payload-utils';
import { options } from '../../options';
export const TemplateDefaults = {
name: 'template',
type: 'relationship',
relationTo: options.slug.template,
hasMany: false
};
const filterOptionsBySlug = (slug)=>()=>{
const where = {
or: [
{
hasCompatibleCollections: {
equals: false
}
},
{
and: [
{
hasCompatibleCollections: {
equals: true
}
},
{
compatibleCollections: {
contains: slug
}
}
]
}
]
};
return where;
};
export const withTemplate = ({ slugToUse, ...options })=>{
const field = deepMerge(TemplateDefaults, options);
field.filterOptions = filterOptionsBySlug(slugToUse);
return field;
};
export const withTemplateRequired = ({ slugToUse, ...options })=>{
const field = deepMerge({
...TemplateDefaults,
required: true
}, options);
field.filterOptions = filterOptionsBySlug(slugToUse);
return field;
};
//# sourceMappingURL=withTemplate.js.map