From 470883b4b836447692ac3ea5d2b4fc50cbdfecba Mon Sep 17 00:00:00 2001 From: Tim Keller Date: Fri, 23 May 2025 14:30:44 -0500 Subject: create directories for file --- material-symbols-plugin.js | 4 +++- utils.js | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/material-symbols-plugin.js b/material-symbols-plugin.js index b161883..48b1123 100644 --- a/material-symbols-plugin.js +++ b/material-symbols-plugin.js @@ -3,7 +3,7 @@ const path = require("path") const crypto = require("crypto") const axios = require("axios") const { Compilation } = require("webpack") -const { generateAtlasViewsFromReferences } = require("./utils.js") +const { generateAtlasViewsFromReferences, createDirectoriesForFile } = require("./utils.js") class MaterialSymbolsDownloader { @@ -126,6 +126,8 @@ class MaterialSymbolsAtlasPlugin { await cache.storePromise(cacheKey, null, atlas) } + createDirectoriesForFile(this.filename) + compilation.emitAsset( this.filename, new compiler.webpack.sources.RawSource(atlas) diff --git a/utils.js b/utils.js index 0e372ae..8284755 100644 --- a/utils.js +++ b/utils.js @@ -74,5 +74,8 @@ async function generateAtlasViewsFromReferences(refs, symbolId) { return generateAtlasViews(result.symbol.sprite.contents.toString(), symbolId) } +function createDirectoriesForFile(filePath) { + fs.mkdirSync(path.dirname(filePath), { recursive: true }) +} -module.exports = { generateAtlasViews, generateAtlasViewsFromReferences } +module.exports = { generateAtlasViews, generateAtlasViewsFromReferences, createDirectoriesForFile } -- cgit v1.2.3