From 9f22dd61eb74476659005512edc93d57a4e15330 Mon Sep 17 00:00:00 2001 From: Grace Kind Date: Wed, 22 Jul 2026 19:58:13 -0500 Subject: [PATCH] Use promise.all for asset url loads --- package.json | 2 +- src/js/plugins/sourceProvider.js | 14 +++++--------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 3dd48299..75e33a03 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "impro", - "version": "0.18.49", + "version": "0.18.50", "type": "module", "scripts": { "start": "rm -rf \"${BUILD_DIR:-build}\" && NODE_ENV=development eleventy --serve", diff --git a/src/js/plugins/sourceProvider.js b/src/js/plugins/sourceProvider.js index 9478c024..71145f03 100644 --- a/src/js/plugins/sourceProvider.js +++ b/src/js/plugins/sourceProvider.js @@ -387,22 +387,18 @@ export class SourceProvider { if (pluginId.endsWith("__LOCAL")) { return []; } - const urls = [ - await remoteAssetUrl({ repo, file: "manifest.json", release: version }), - await remoteAssetUrl({ repo, file: "main.js", release: version }), - await remoteAssetUrl({ repo, file: "styles.css", release: version }), - ]; + const files = ["manifest.json", "main.js", "styles.css"]; try { const manifest = await this.getManifest(pluginId, version, repo); for (const font of manifest.fonts ?? []) { - urls.push( - await remoteAssetUrl({ repo, file: font.file, release: version }), - ); + files.push(font.file); } } catch { // If the manifest can't be read the base URLs are still returned so // reconcile doesn't purge a partially-cached plugin. } - return urls; + return await Promise.all( + files.map((file) => remoteAssetUrl({ repo, file, release: version })), + ); } } -- 2.51.2