@websolutespa/payload-plugin-bowl
Version:
Bowl PayloadCms plugin of the BOM Repository
45 lines (44 loc) • 1.76 kB
JavaScript
import { asEntityId, asEquatable } from '@websolutespa/bom-core';
import { options } from '../../options';
export function getPreviewPublicURL(qs) {
const PREVIEW_URL = process.env.PAYLOAD_PUBLIC_PREVIEW_URL || 'https://localhost:3000';
const queryString = Object.keys(qs).map((x)=>`${x}=${qs[x]}`).join('&');
const publicURL = `${PREVIEW_URL}/api/_preview?${queryString}`;
// console.log('getPreviewPublicURL', publicURL);
return publicURL;
}
export function getPreviewURL(doc, locale, _token) {
const localeId = locale;
const markets = doc.markets || [];
const market = markets.find((x)=>x.defaultLanguage === localeId || (x.languages || []).findIndex((language)=>asEntityId(language) === localeId) !== -1) || markets[0];
const marketId = market ? market.id : options.defaultMarket;
const templateId = asEquatable(doc.template) || doc.slug;
const _status = doc._status;
const documentId = doc.id;
return getPreviewPublicURL({
marketId,
localeId,
templateId,
documentId,
_status,
_token
});
}
export function getLivePreviewURL(args) {
const { data, collectionConfig, locale } = args;
const localeId = locale.code;
const marketId = data.markets ? data.markets.find((x)=>x === options.defaultMarket) || data.markets[0] : options.defaultMarket;
const templateId = data.template || collectionConfig?.slug || '';
const documentId = data.id;
const _status = data._status;
// console.log('getLivePreviewURL', collectionConfig?.slug);
return getPreviewPublicURL({
marketId,
localeId,
templateId,
documentId,
_status,
_live: true
});
}
//# sourceMappingURL=getPreviewURL.js.map