vite-plugin-svg-spritegen 2.0.8 → 2.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/index.js +24 -16
- package/dist/index.mjs +24 -16
- package/package.json +1 -1
package/README.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -24,11 +24,11 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
24
24
|
enumerable: true
|
|
25
25
|
}) : target, mod));
|
|
26
26
|
//#endregion
|
|
27
|
+
let node_fs = require("node:fs");
|
|
27
28
|
let node_path = require("node:path");
|
|
28
29
|
node_path = __toESM(node_path);
|
|
29
30
|
let chokidar = require("chokidar");
|
|
30
31
|
let vite = require("vite");
|
|
31
|
-
let node_fs = require("node:fs");
|
|
32
32
|
let fast_glob = require("fast-glob");
|
|
33
33
|
fast_glob = __toESM(fast_glob);
|
|
34
34
|
let node_html_parser = require("node-html-parser");
|
|
@@ -224,22 +224,27 @@ var SPRITE_VIRTUAL_ID = "\0virtual:svg-spritegen-sprite";
|
|
|
224
224
|
var SPRITE_URL_PLACEHOLDER = "__SVG_SPRITEGEN_SPRITE_URL_PLACEHOLDER__";
|
|
225
225
|
var toFilterArray = (p) => [p].flat().filter((x) => x != null);
|
|
226
226
|
function svgSpritegen(config) {
|
|
227
|
-
const
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
});
|
|
227
|
+
const inputConfigs = Array.isArray(config.input) ? config.input : [config.input ?? inputConfigDefaults];
|
|
228
|
+
const resolveInputs = (root) => inputConfigs.map((inputConfig) => ({
|
|
229
|
+
...inputConfigDefaults,
|
|
230
|
+
...inputConfig,
|
|
231
|
+
baseDir: node_path.default.resolve(root, inputConfig.baseDir ?? inputConfigDefaults.baseDir)
|
|
232
|
+
}));
|
|
233
|
+
let inputConfigsResolved = resolveInputs(process.cwd());
|
|
235
234
|
const stripUnusedResolved = { ...stripUnusedDefaults };
|
|
236
235
|
if (typeof config.stripUnused === "object") Object.assign(stripUnusedResolved, config.stripUnused);
|
|
237
236
|
else if (config.stripUnused === false) stripUnusedResolved.enabled = false;
|
|
238
|
-
const outputPath = node_path.default.resolve(process.cwd(), config.outputDir);
|
|
239
237
|
const spriteNameResolved = config.spriteFileName ?? "sprite.svg";
|
|
240
|
-
const
|
|
241
|
-
|
|
242
|
-
|
|
238
|
+
const resolveOutput = (root) => {
|
|
239
|
+
const outputPath = node_path.default.resolve(root, config.outputDir);
|
|
240
|
+
return {
|
|
241
|
+
outputPath,
|
|
242
|
+
typesFilePath: (0, vite.normalizePath)(node_path.default.join(outputPath, config.typesFileName ?? "types.ts")),
|
|
243
|
+
spriteFilePath: (0, vite.normalizePath)(node_path.default.join(outputPath, spriteNameResolved)),
|
|
244
|
+
gitignoreFilePath: (0, vite.normalizePath)(node_path.default.join(outputPath, ".gitignore"))
|
|
245
|
+
};
|
|
246
|
+
};
|
|
247
|
+
let { outputPath, typesFilePath, spriteFilePath, gitignoreFilePath } = resolveOutput(process.cwd());
|
|
243
248
|
const matchPatternRe = new RegExp(stripUnusedResolved.matchPattern, "g");
|
|
244
249
|
const idIncludes = toFilterArray(stripUnusedResolved.srcInclude);
|
|
245
250
|
const idExcludes = ["**/node_modules/**", ...toFilterArray(stripUnusedResolved.srcExclude)];
|
|
@@ -252,11 +257,14 @@ function svgSpritegen(config) {
|
|
|
252
257
|
return {
|
|
253
258
|
name: "svg-spritegen",
|
|
254
259
|
enforce: "pre",
|
|
255
|
-
configResolved(
|
|
256
|
-
isBuild =
|
|
257
|
-
viteBase =
|
|
260
|
+
configResolved(viteConfig) {
|
|
261
|
+
isBuild = viteConfig.command === "build";
|
|
262
|
+
viteBase = viteConfig.base ?? "/";
|
|
263
|
+
inputConfigsResolved = resolveInputs(viteConfig.root);
|
|
264
|
+
({outputPath, typesFilePath, spriteFilePath, gitignoreFilePath} = resolveOutput(viteConfig.root));
|
|
258
265
|
},
|
|
259
266
|
async buildStart() {
|
|
267
|
+
(0, node_fs.mkdirSync)(outputPath, { recursive: true });
|
|
260
268
|
allSvgs = await buildSvgMap(inputConfigsResolved, spriteFilePath);
|
|
261
269
|
await writeTypes(typesFilePath, allSvgs);
|
|
262
270
|
if (config.gitignore !== false) await writeGitignore(gitignoreFilePath, spriteNameResolved);
|
package/dist/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { mkdirSync, promises, readFileSync, writeFileSync } from "node:fs";
|
|
1
2
|
import path from "node:path";
|
|
2
3
|
import { watch } from "chokidar";
|
|
3
4
|
import { normalizePath } from "vite";
|
|
4
|
-
import { promises, readFileSync, writeFileSync } from "node:fs";
|
|
5
5
|
import fastGlob from "fast-glob";
|
|
6
6
|
import { parse } from "node-html-parser";
|
|
7
7
|
import { optimize } from "svgo";
|
|
@@ -196,22 +196,27 @@ var SPRITE_VIRTUAL_ID = "\0virtual:svg-spritegen-sprite";
|
|
|
196
196
|
var SPRITE_URL_PLACEHOLDER = "__SVG_SPRITEGEN_SPRITE_URL_PLACEHOLDER__";
|
|
197
197
|
var toFilterArray = (p) => [p].flat().filter((x) => x != null);
|
|
198
198
|
function svgSpritegen(config) {
|
|
199
|
-
const
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
});
|
|
199
|
+
const inputConfigs = Array.isArray(config.input) ? config.input : [config.input ?? inputConfigDefaults];
|
|
200
|
+
const resolveInputs = (root) => inputConfigs.map((inputConfig) => ({
|
|
201
|
+
...inputConfigDefaults,
|
|
202
|
+
...inputConfig,
|
|
203
|
+
baseDir: path.resolve(root, inputConfig.baseDir ?? inputConfigDefaults.baseDir)
|
|
204
|
+
}));
|
|
205
|
+
let inputConfigsResolved = resolveInputs(process.cwd());
|
|
207
206
|
const stripUnusedResolved = { ...stripUnusedDefaults };
|
|
208
207
|
if (typeof config.stripUnused === "object") Object.assign(stripUnusedResolved, config.stripUnused);
|
|
209
208
|
else if (config.stripUnused === false) stripUnusedResolved.enabled = false;
|
|
210
|
-
const outputPath = path.resolve(process.cwd(), config.outputDir);
|
|
211
209
|
const spriteNameResolved = config.spriteFileName ?? "sprite.svg";
|
|
212
|
-
const
|
|
213
|
-
|
|
214
|
-
|
|
210
|
+
const resolveOutput = (root) => {
|
|
211
|
+
const outputPath = path.resolve(root, config.outputDir);
|
|
212
|
+
return {
|
|
213
|
+
outputPath,
|
|
214
|
+
typesFilePath: normalizePath(path.join(outputPath, config.typesFileName ?? "types.ts")),
|
|
215
|
+
spriteFilePath: normalizePath(path.join(outputPath, spriteNameResolved)),
|
|
216
|
+
gitignoreFilePath: normalizePath(path.join(outputPath, ".gitignore"))
|
|
217
|
+
};
|
|
218
|
+
};
|
|
219
|
+
let { outputPath, typesFilePath, spriteFilePath, gitignoreFilePath } = resolveOutput(process.cwd());
|
|
215
220
|
const matchPatternRe = new RegExp(stripUnusedResolved.matchPattern, "g");
|
|
216
221
|
const idIncludes = toFilterArray(stripUnusedResolved.srcInclude);
|
|
217
222
|
const idExcludes = ["**/node_modules/**", ...toFilterArray(stripUnusedResolved.srcExclude)];
|
|
@@ -224,11 +229,14 @@ function svgSpritegen(config) {
|
|
|
224
229
|
return {
|
|
225
230
|
name: "svg-spritegen",
|
|
226
231
|
enforce: "pre",
|
|
227
|
-
configResolved(
|
|
228
|
-
isBuild =
|
|
229
|
-
viteBase =
|
|
232
|
+
configResolved(viteConfig) {
|
|
233
|
+
isBuild = viteConfig.command === "build";
|
|
234
|
+
viteBase = viteConfig.base ?? "/";
|
|
235
|
+
inputConfigsResolved = resolveInputs(viteConfig.root);
|
|
236
|
+
({outputPath, typesFilePath, spriteFilePath, gitignoreFilePath} = resolveOutput(viteConfig.root));
|
|
230
237
|
},
|
|
231
238
|
async buildStart() {
|
|
239
|
+
mkdirSync(outputPath, { recursive: true });
|
|
232
240
|
allSvgs = await buildSvgMap(inputConfigsResolved, spriteFilePath);
|
|
233
241
|
await writeTypes(typesFilePath, allSvgs);
|
|
234
242
|
if (config.gitignore !== false) await writeGitignore(gitignoreFilePath, spriteNameResolved);
|
package/package.json
CHANGED