@paroicms/server
Version:
The ParoiCMS server
77 lines • 3.48 kB
JavaScript
import { getAssetsBaseUrl } from "../common/data-format.js";
import { appConf } from "../context.js";
import { createLiquidDrop } from "../liquidjs-tools/liquidjs-drop.js";
import { getHomeUrl } from "../rendered-site/page-route/make-url.js";
import { toTpRoutingClusterNode } from "./cluster-payloads.js";
import { loadPublicFieldValues } from "./field-values.js";
export function makeSitePayload(renderingContext) {
const cached = renderingContext.getValueFromCache("site");
if (cached.found)
return cached.val;
const { siteContext, language } = renderingContext;
const homeUrl = getHomeUrl(siteContext, language);
const homeBaseUrl = siteContext.siteUrl + homeUrl;
const routingClusterNode = toTpRoutingClusterNode(renderingContext, siteContext.homeRoutingCluster, language);
const languageLabel = siteContext.siteSchema.languageLabels[language];
const home = {
baseUrl: homeBaseUrl,
url: homeUrl,
id: routingClusterNode.id,
routing: routingClusterNode,
language,
languageLabel,
};
const siteDrop = createLiquidDrop(renderingContext, {
renderingCacheKey: "site",
values: {
kind: "site",
fqdn: siteContext.fqdn,
get url() {
siteContext.logger.warn("Property 'site.url' is deprecated, use 'site.home.baseUrl' instead");
return home.baseUrl;
},
assetsUrl: getAssetsBaseUrl(siteContext),
field: () => loadPublicFieldValues(renderingContext, {
typeName: "_site",
lNodeId: {
nodeId: siteContext.homeRoutingCluster.siteNodeId,
language,
},
}),
fields: () => {
siteContext.logger.warn("'part.fields' is deprecated, use 'part.field' instead");
return loadPublicFieldValues(renderingContext, {
typeName: "_site",
lNodeId: {
nodeId: siteContext.homeRoutingCluster.siteNodeId,
language,
},
});
},
home,
get language() {
siteContext.logger.warn("Property 'site.language' is deprecated, use 'site.home.language' instead");
return home.language;
},
get languageLabel() {
siteContext.logger.warn("Property 'site.languageLabel' is deprecated, use 'site.home.languageLabel' instead");
return home.languageLabel;
},
get recaptchaKey() {
siteContext.logger.warn("Property 'site.recaptchaKey' is deprecated, it can probably be removed from your code");
return appConf.plugins["@paroicms/contact-form-plugin"]?.configuration
.googleRecaptchaSiteKey;
},
configuration: {
get googleRecaptchaSiteKey() {
siteContext.logger.warn("Property 'site.configuration.googleRecaptchaSiteKey' is deprecated, it can probably be removed from your code");
return appConf.plugins["@paroicms/contact-form-plugin"]?.configuration
.googleRecaptchaSiteKey;
},
},
},
});
renderingContext.setValueIntoCache("site", siteDrop);
return siteDrop;
}
//# sourceMappingURL=site-payload.js.map