UNPKG

@paroicms/server

Version:
21 lines 1.1 kB
import { type } from "arktype"; import { getPluginAssetsUrl } from "../../connector/plugin-loader/plugin-public-helpers.js"; import { makeTagCacheKeyForRendering, } from "../../liquidjs-tools/liquidjs-rendering/rendering-context.js"; const StringOrUndefinedOrNullAT = type("string|undefined|null"); export async function pluginAssetUrlLiquidFilter(val, { renderingContext, args }) { const relativeUrl = StringOrUndefinedOrNullAT.assert(val) ?? ""; const pluginSlug = StringOrUndefinedOrNullAT.assert(args[0]); if (!pluginSlug) return relativeUrl; const cacheKey = makeTagCacheKeyForRendering("pluginAssetUrl", { tagParameters: pluginSlug, }); const cacheVal = renderingContext.getValueFromCache(cacheKey); if (cacheVal.found) return cacheVal.val; const plugin = renderingContext.siteContext.pluginsBySlug.get(pluginSlug); const result = plugin ? `${getPluginAssetsUrl(plugin)}${relativeUrl}` : relativeUrl; renderingContext.setValueIntoCache(cacheKey, result); return result; } //# sourceMappingURL=plugin-asset-url-filter.js.map