From 45ccdd3bb5d5601ccc60438d96aadb40cb87588b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=A4=95=E0=A4=BE=E0=A4=B0=E0=A4=A4=E0=A5=8B=E0=A4=AB?= =?UTF-8?q?=E0=A5=8D=E0=A4=AB=E0=A5=87=E0=A4=B2=E0=A4=B8=E0=A5=8D=E0=A4=95?= =?UTF-8?q?=E0=A5=8D=E0=A4=B0=E0=A4=BF=E0=A4=AA=E0=A5=8D=E0=A4=9F=E2=84=A2?= Date: Mon, 6 Mar 2023 13:36:47 +0100 Subject: [PATCH] fix(core): Allow serving icons for custom nodes with npm scoped names (#5626) --- packages/cli/src/Server.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/cli/src/Server.ts b/packages/cli/src/Server.ts index 4c73c7c356..d2f2e557a9 100644 --- a/packages/cli/src/Server.ts +++ b/packages/cli/src/Server.ts @@ -1293,8 +1293,9 @@ class Server extends AbstractServer { }, }; - this.app.use('/icons/:packageName/*/*.(svg|png)', async (req, res) => { - const { packageName } = req.params; + const serveIcons: express.RequestHandler = async (req, res) => { + let { scope, packageName } = req.params; + if (scope) packageName = `@${scope}/${packageName}`; const loader = this.loadNodesAndCredentials.loaders[packageName]; if (loader) { const pathPrefix = `/icons/${packageName}/`; @@ -1309,7 +1310,10 @@ class Server extends AbstractServer { } res.sendStatus(404); - }); + }; + + this.app.use('/icons/@:scope/:packageName/*/*.(svg|png)', serveIcons); + this.app.use('/icons/:packageName/*/*.(svg|png)', serveIcons); this.app.use( '/',