@websolutespa/payload-plugin-bowl
Version:
Bowl PayloadCms plugin of the BOM Repository
36 lines (35 loc) • 1.17 kB
JavaScript
import { options } from '../../options';
let groupKeys;
function getGroupKeys() {
if (!groupKeys) {
const locales = Object.keys(options.translations);
groupKeys = Object.keys(options.group).map((id)=>{
const group = {
id
};
if (locales.length > 0) {
const locale = locales[0];
const resource = options.translations[locale];
const resourceGroup = resource?.group;
group.key = locale;
group.value = resourceGroup && resourceGroup[id];
}
return group;
});
}
return groupKeys;
}
function indexOf(collectionOrGlobal) {
const group = collectionOrGlobal.admin?.group;
const groupKeys = getGroupKeys();
return groupKeys.findIndex((value)=>{
return typeof group === 'string' ? value.id === group : group && value.value === group[value.key];
});
}
export function sortByGroup(collectionsOrGlobals) {
collectionsOrGlobals.sort((a, b)=>{
return indexOf(a) - indexOf(b);
});
return collectionsOrGlobals;
}
//# sourceMappingURL=sortByGroup.js.map