e115934061
Publish `@librechat/data-schemas` to NPM / pack (push) Failing after 8s
Publish `@librechat/client` to NPM / pack (push) Failing after 0s
GitNexus Index / index (push) Failing after 1s
Sync Locize Translations & Create Translation PR / Create Translation PR on Version Published (push) Has been skipped
Sync Helm Chart Tags / Sync chart tags (push) Failing after 2s
Publish `librechat-data-provider` to NPM / pack (push) Failing after 1s
Docker Dev Images Build / build (Dockerfile, librechat-dev, node) (push) Failing after 1s
Docker Dev Images Build / build (Dockerfile.multi, librechat-dev-api, api-build) (push) Failing after 0s
Sync Helm Chart Tags / Ignore non-main push (push) Has been skipped
Sync Locize Translations & Create Translation PR / Sync Translation Keys with Locize (push) Failing after 1s
Publish `@librechat/client` to NPM / publish-npm (push) Has been cancelled
Publish `librechat-data-provider` to NPM / publish-npm (push) Has been cancelled
GitNexus Index / post-index (push) Has been cancelled
Publish `@librechat/data-schemas` to NPM / publish-npm (push) Has been cancelled
21 lines
758 B
JavaScript
21 lines
758 B
JavaScript
/** Static asset extensions that must 404 when missing — serving the SPA's
|
|
* index.html for them breaks strict MIME checks and poisons SW/browser caches. */
|
|
const STATIC_ASSET_EXT =
|
|
/\.(?:js|mjs|css|map|json|wasm|webmanifest|png|jpe?g|gif|svg|ico|webp|avif|woff2?|ttf|otf|eot)$/i;
|
|
|
|
/**
|
|
* Creates the SPA fallback middleware: serves index.html for unmatched
|
|
* routes while returning 404 for missing static assets.
|
|
* @param {(req: import('express').Request, res: import('express').Response) => void} sendIndexHtml
|
|
*/
|
|
function createSpaFallback(sendIndexHtml) {
|
|
return (req, res) => {
|
|
if (STATIC_ASSET_EXT.test(req.path)) {
|
|
return res.status(404).end();
|
|
}
|
|
return sendIndexHtml(req, res);
|
|
};
|
|
}
|
|
|
|
module.exports = createSpaFallback;
|