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
49 lines
2.3 KiB
Plaintext
49 lines
2.3 KiB
Plaintext
import { versionDefaults } from '../versions/defaults.js';
|
|
/**
|
|
* Check if an entity has drafts enabled
|
|
*/ export const hasDraftsEnabled = (config)=>{
|
|
return Boolean(config?.versions && typeof config.versions === 'object' && config.versions.drafts);
|
|
};
|
|
/**
|
|
* Check if an entity has localized status enabled
|
|
*/ export const hasLocalizeStatusEnabled = (config)=>{
|
|
return Boolean(config?.versions && typeof config.versions === 'object' && config.versions.drafts && typeof config.versions.drafts === 'object' && config.versions.drafts.localizeStatus);
|
|
};
|
|
/**
|
|
* Check if an entity has autosave enabled
|
|
*/ export const hasAutosaveEnabled = (config)=>{
|
|
return Boolean(config?.versions && typeof config.versions === 'object' && config.versions.drafts && typeof config.versions.drafts === 'object' && config.versions.drafts.autosave);
|
|
};
|
|
/**
|
|
* Check if an entity has validate drafts enabled
|
|
*/ export const hasDraftValidationEnabled = (config)=>{
|
|
return Boolean(config?.versions && typeof config.versions === 'object' && config.versions.drafts && typeof config.versions.drafts === 'object' && config.versions.drafts.validate);
|
|
};
|
|
export const hasScheduledPublishEnabled = (config)=>{
|
|
return Boolean(config?.versions && typeof config.versions === 'object' && config.versions.drafts && typeof config.versions.drafts === 'object' && config.versions.drafts.schedulePublish);
|
|
};
|
|
/**
|
|
* Get the maximum number of versions to keep for an entity
|
|
* Returns maxPerDoc for collections or max for globals
|
|
*/ export const getVersionsMax = (config)=>{
|
|
if (!config?.versions || typeof config.versions !== 'object') {
|
|
return 0;
|
|
}
|
|
// Collections have maxPerDoc, globals have max
|
|
if ('maxPerDoc' in config.versions) {
|
|
return config.versions.maxPerDoc ?? 100;
|
|
}
|
|
if ('max' in config.versions) {
|
|
return config.versions.max ?? 100;
|
|
}
|
|
return 0;
|
|
};
|
|
export const getAutosaveInterval = (config)=>{
|
|
let interval = versionDefaults.autosaveInterval;
|
|
if (config?.versions && typeof config.versions === 'object' && config.versions.drafts && typeof config.versions.drafts === 'object' && config.versions.drafts.autosave && typeof config.versions.drafts.autosave === 'object') {
|
|
interval = config.versions.drafts.autosave.interval ?? versionDefaults.autosaveInterval;
|
|
}
|
|
return interval;
|
|
};
|
|
|
|
//# sourceMappingURL=getVersionsConfig.js.map |