#!/usr/bin/env node import SVGSpriter from "svg-sprite"; import { readFileSync, writeFileSync } from "fs"; import { dirname, resolve } from "path"; import { fileURLToPath } from "url"; const __dirname = dirname(fileURLToPath(import.meta.url)); const args = process.argv.slice(2); const sprite = args.pop(); const spriter = new SVGSpriter({ mode: { symbol: { dest: "", sprite, }, }, shape: { transform: [], }, }); for (const id of args) { const file = resolve(__dirname, `../dist/${id}.svg`); spriter.add(file, null, readFileSync(file, { encoding: "utf-8" })); } spriter.compile((error, result) => { if (error) { console.error(error); return; } for (var mode in result) { for (var resource in result[mode]) { console.log(result[mode][resource].path); writeFileSync( result[mode][resource].path, result[mode][resource].contents ); } } });