From 39aa461a1d6d45d83cc6bc68df66aad2f360f2fb Mon Sep 17 00:00:00 2001 From: Michael Barrett Date: Fri, 13 Dec 2024 11:20:43 +0000 Subject: [PATCH] process card assets on request --- ghost/core/core/frontend/web/site.js | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/ghost/core/core/frontend/web/site.js b/ghost/core/core/frontend/web/site.js index 25b776c73b..9bdc3accd5 100644 --- a/ghost/core/core/frontend/web/site.js +++ b/ghost/core/core/frontend/web/site.js @@ -73,8 +73,27 @@ module.exports = function setupSiteApp(routerConfig) { siteApp.use(mw.servePublicFile('static', 'public/ghost.min.css', 'text/css', config.get('caching:publicAssets:maxAge'))); // Card assets - siteApp.use(cardAssets.serveMiddleware(), mw.servePublicFile('built', 'public/cards.min.css', 'text/css', config.get('caching:publicAssets:maxAge'))); - siteApp.use(cardAssets.serveMiddleware(), mw.servePublicFile('built', 'public/cards.min.js', 'application/javascript', config.get('caching:publicAssets:maxAge'))); + const cardAssetsCSSPath = 'public/cards.min.css'; + const cardAssetsJSPath = 'public/cards.min.js'; + + siteApp.use( + function serveCardAssetsCssMiddleware(req, res, next) { + if (req.path === `/${cardAssetsCSSPath}`) { + return cardAssets.serveMiddleware()(req, res, next); + } + next(); + }, + mw.servePublicFile('built', cardAssetsCSSPath, 'text/css', config.get('caching:publicAssets:maxAge')) + ); + siteApp.use( + function serveCardAssetsJsMiddleware(req, res, next) { + if (req.path === `/${cardAssetsJSPath}`) { + return cardAssets.serveMiddleware()(req, res, next); + } + next(); + }, + mw.servePublicFile('built', cardAssetsJSPath, 'application/javascript', config.get('caching:publicAssets:maxAge')) + ); // Comment counts siteApp.use(mw.servePublicFile('static', 'public/comment-counts.min.js', 'application/javascript', config.get('caching:publicAssets:maxAge')));