@taiga-ui/icons 2.28.0 → 2.32.0

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.
@@ -0,0 +1,58 @@
1
+ import fs from 'fs';
2
+ import { parse } from 'path';
3
+ const START = '<svg';
4
+ const WIDTH_SEARCH = 'width="';
5
+ const HEIGHT_SEARCH = 'height="';
6
+ export function processIcons(files, interceptor) {
7
+ for (const file of files) {
8
+ const baseContent = String(fs.readFileSync(file));
9
+ const src = interceptor ? interceptor(baseContent) : baseContent;
10
+ const name = parse(file).base.replace('.svg', '');
11
+ if (src.includes(`id="${name}"`)) {
12
+ console.info('\x1b[33m%s\x1b[0m', `[skip]:`, file);
13
+ continue;
14
+ }
15
+ const wrapped = wrapIcon(src, name);
16
+ const final = typeof wrapped === 'string'
17
+ ? wrapped.replace(START, `<svg xmlns="http://www.w3.org/2000/svg"><g id="${name}" xmlns="http://www.w3.org/2000/svg"><svg`) + '</g></svg>'
18
+ : `<svg xmlns="http://www.w3.org/2000/svg" width="${wrapped.width}" height="${wrapped.height}">${wrapped.src}</svg>`;
19
+ fs.writeFileSync(file, final);
20
+ console.info('\x1b[32m%s\x1b[0m', `[preprocessed]:`, file);
21
+ }
22
+ }
23
+ function wrapIcon(source, name) {
24
+ const src = source.substring(source.indexOf(START));
25
+ const attributes = src.substring(0, src.indexOf('>'));
26
+ if (!attributes ||
27
+ !attributes.includes(WIDTH_SEARCH) ||
28
+ !attributes.includes(HEIGHT_SEARCH)) {
29
+ return src;
30
+ }
31
+ const indexOfWidth = attributes.indexOf(WIDTH_SEARCH);
32
+ const indexOfHeight = attributes.indexOf(HEIGHT_SEARCH);
33
+ const widthOffset = indexOfWidth + WIDTH_SEARCH.length;
34
+ const heightOffset = indexOfHeight + HEIGHT_SEARCH.length;
35
+ const widthString = attributes.substring(widthOffset, attributes.indexOf('"', widthOffset));
36
+ const heightString = attributes.substring(heightOffset, attributes.indexOf('"', heightOffset));
37
+ if (!heightString ||
38
+ !widthString ||
39
+ widthString.includes('%') ||
40
+ heightString.includes('%')) {
41
+ return src.replace(START, `<svg id="${name}"`);
42
+ }
43
+ const width = parseInt(widthString, 10);
44
+ const height = parseInt(heightString, 10);
45
+ const emWidth = width / 16;
46
+ const emHeight = height / 16;
47
+ return {
48
+ width: `${emWidth}em`,
49
+ height: `${emHeight}em`,
50
+ src: `
51
+ <g id="${name}" xmlns="http://www.w3.org/2000/svg">
52
+ <svg x="50%" y="50%" width="${emWidth}em" height="${emHeight}em" overflow="visible" viewBox="0 0 ${width} ${height}">
53
+ <svg x="${-width / 2}" y="${-height / 2}">${src}</svg>
54
+ </svg>
55
+ </g>`.trim(),
56
+ };
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1pY29ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9pY29ucy9zY3JpcHRzLyIsInNvdXJjZXMiOlsicHJvY2Vzcy1pY29ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDcEIsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUUzQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUM7QUFDckIsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDO0FBQy9CLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQztBQVVqQyxNQUFNLFVBQVUsWUFBWSxDQUFDLEtBQWUsRUFBRSxXQUFnQztJQUMxRSxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtRQUN0QixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sR0FBRyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFFakUsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxELElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLElBQUksR0FBRyxDQUFDLEVBQUU7WUFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbkQsU0FBUztTQUNaO1FBRUQsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVwQyxNQUFNLEtBQUssR0FDUCxPQUFPLE9BQU8sS0FBSyxRQUFRO1lBQ3ZCLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUNYLEtBQUssRUFDTCxrREFBa0QsSUFBSSwyQ0FBMkMsQ0FDcEcsR0FBRyxZQUFZO1lBQ2xCLENBQUMsQ0FBQyxrREFBa0QsT0FBTyxDQUFDLEtBQUssYUFBYSxPQUFPLENBQUMsTUFBTSxLQUFLLE9BQU8sQ0FBQyxHQUFHLFFBQVEsQ0FBQztRQUU3SCxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUU5QixPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLElBQUksQ0FBQyxDQUFDO0tBQzlEO0FBQ0wsQ0FBQztBQUVELFNBQVMsUUFBUSxDQUFDLE1BQWMsRUFBRSxJQUFZO0lBQzFDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BELE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUV0RCxJQUNJLENBQUMsVUFBVTtRQUNYLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUM7UUFDbEMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUNyQztRQUNFLE9BQU8sR0FBRyxDQUFDO0tBQ2Q7SUFFRCxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3RELE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDeEQsTUFBTSxXQUFXLEdBQUcsWUFBWSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUM7SUFDdkQsTUFBTSxZQUFZLEdBQUcsYUFBYSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUM7SUFDMUQsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FDcEMsV0FBVyxFQUNYLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUN2QyxDQUFDO0lBQ0YsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FDckMsWUFBWSxFQUNaLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUN4QyxDQUFDO0lBRUYsSUFDSSxDQUFDLFlBQVk7UUFDYixDQUFDLFdBQVc7UUFDWixXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztRQUN6QixZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUM1QjtRQUNFLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsWUFBWSxJQUFJLEdBQUcsQ0FBQyxDQUFDO0tBQ2xEO0lBRUQsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN4QyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLE1BQU0sT0FBTyxHQUFHLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDM0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUU3QixPQUFPO1FBQ0gsS0FBSyxFQUFFLEdBQUcsT0FBTyxJQUFJO1FBQ3JCLE1BQU0sRUFBRSxHQUFHLFFBQVEsSUFBSTtRQUN2QixHQUFHLEVBQUU7aUJBQ0ksSUFBSTswQ0FDcUIsT0FBTyxlQUFlLFFBQVEsdUNBQXVDLEtBQUssSUFBSSxNQUFNOzBCQUNwRyxDQUFDLEtBQUssR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLEdBQUc7O2FBRWxELENBQUMsSUFBSSxFQUFFO0tBQ2YsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IHtwYXJzZX0gZnJvbSAncGF0aCc7XG5cbmNvbnN0IFNUQVJUID0gJzxzdmcnO1xuY29uc3QgV0lEVEhfU0VBUkNIID0gJ3dpZHRoPVwiJztcbmNvbnN0IEhFSUdIVF9TRUFSQ0ggPSAnaGVpZ2h0PVwiJztcblxuaW50ZXJmYWNlIFdyYXBwZWRDb250ZW50IHtcbiAgICBoZWlnaHQ6IHN0cmluZztcbiAgICB3aWR0aDogc3RyaW5nO1xuICAgIHNyYzogc3RyaW5nO1xufVxuXG50eXBlIENvbnRlbnRJbnRlcmNlcHRvciA9IChzcmM6IHN0cmluZykgPT4gc3RyaW5nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvY2Vzc0ljb25zKGZpbGVzOiBzdHJpbmdbXSwgaW50ZXJjZXB0b3I/OiBDb250ZW50SW50ZXJjZXB0b3IpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXMpIHtcbiAgICAgICAgY29uc3QgYmFzZUNvbnRlbnQgPSBTdHJpbmcoZnMucmVhZEZpbGVTeW5jKGZpbGUpKTtcbiAgICAgICAgY29uc3Qgc3JjID0gaW50ZXJjZXB0b3IgPyBpbnRlcmNlcHRvcihiYXNlQ29udGVudCkgOiBiYXNlQ29udGVudDtcblxuICAgICAgICBjb25zdCBuYW1lID0gcGFyc2UoZmlsZSkuYmFzZS5yZXBsYWNlKCcuc3ZnJywgJycpO1xuXG4gICAgICAgIGlmIChzcmMuaW5jbHVkZXMoYGlkPVwiJHtuYW1lfVwiYCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnXFx4MWJbMzNtJXNcXHgxYlswbScsIGBbc2tpcF06YCwgZmlsZSk7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHdyYXBwZWQgPSB3cmFwSWNvbihzcmMsIG5hbWUpO1xuXG4gICAgICAgIGNvbnN0IGZpbmFsID1cbiAgICAgICAgICAgIHR5cGVvZiB3cmFwcGVkID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgICAgID8gd3JhcHBlZC5yZXBsYWNlKFxuICAgICAgICAgICAgICAgICAgICAgIFNUQVJULFxuICAgICAgICAgICAgICAgICAgICAgIGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj48ZyBpZD1cIiR7bmFtZX1cIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHN2Z2AsXG4gICAgICAgICAgICAgICAgICApICsgJzwvZz48L3N2Zz4nXG4gICAgICAgICAgICAgICAgOiBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIke3dyYXBwZWQud2lkdGh9XCIgaGVpZ2h0PVwiJHt3cmFwcGVkLmhlaWdodH1cIj4ke3dyYXBwZWQuc3JjfTwvc3ZnPmA7XG5cbiAgICAgICAgZnMud3JpdGVGaWxlU3luYyhmaWxlLCBmaW5hbCk7XG5cbiAgICAgICAgY29uc29sZS5pbmZvKCdcXHgxYlszMm0lc1xceDFiWzBtJywgYFtwcmVwcm9jZXNzZWRdOmAsIGZpbGUpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gd3JhcEljb24oc291cmNlOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IFdyYXBwZWRDb250ZW50IHtcbiAgICBjb25zdCBzcmMgPSBzb3VyY2Uuc3Vic3RyaW5nKHNvdXJjZS5pbmRleE9mKFNUQVJUKSk7XG4gICAgY29uc3QgYXR0cmlidXRlcyA9IHNyYy5zdWJzdHJpbmcoMCwgc3JjLmluZGV4T2YoJz4nKSk7XG5cbiAgICBpZiAoXG4gICAgICAgICFhdHRyaWJ1dGVzIHx8XG4gICAgICAgICFhdHRyaWJ1dGVzLmluY2x1ZGVzKFdJRFRIX1NFQVJDSCkgfHxcbiAgICAgICAgIWF0dHJpYnV0ZXMuaW5jbHVkZXMoSEVJR0hUX1NFQVJDSClcbiAgICApIHtcbiAgICAgICAgcmV0dXJuIHNyYztcbiAgICB9XG5cbiAgICBjb25zdCBpbmRleE9mV2lkdGggPSBhdHRyaWJ1dGVzLmluZGV4T2YoV0lEVEhfU0VBUkNIKTtcbiAgICBjb25zdCBpbmRleE9mSGVpZ2h0ID0gYXR0cmlidXRlcy5pbmRleE9mKEhFSUdIVF9TRUFSQ0gpO1xuICAgIGNvbnN0IHdpZHRoT2Zmc2V0ID0gaW5kZXhPZldpZHRoICsgV0lEVEhfU0VBUkNILmxlbmd0aDtcbiAgICBjb25zdCBoZWlnaHRPZmZzZXQgPSBpbmRleE9mSGVpZ2h0ICsgSEVJR0hUX1NFQVJDSC5sZW5ndGg7XG4gICAgY29uc3Qgd2lkdGhTdHJpbmcgPSBhdHRyaWJ1dGVzLnN1YnN0cmluZyhcbiAgICAgICAgd2lkdGhPZmZzZXQsXG4gICAgICAgIGF0dHJpYnV0ZXMuaW5kZXhPZignXCInLCB3aWR0aE9mZnNldCksXG4gICAgKTtcbiAgICBjb25zdCBoZWlnaHRTdHJpbmcgPSBhdHRyaWJ1dGVzLnN1YnN0cmluZyhcbiAgICAgICAgaGVpZ2h0T2Zmc2V0LFxuICAgICAgICBhdHRyaWJ1dGVzLmluZGV4T2YoJ1wiJywgaGVpZ2h0T2Zmc2V0KSxcbiAgICApO1xuXG4gICAgaWYgKFxuICAgICAgICAhaGVpZ2h0U3RyaW5nIHx8XG4gICAgICAgICF3aWR0aFN0cmluZyB8fFxuICAgICAgICB3aWR0aFN0cmluZy5pbmNsdWRlcygnJScpIHx8XG4gICAgICAgIGhlaWdodFN0cmluZy5pbmNsdWRlcygnJScpXG4gICAgKSB7XG4gICAgICAgIHJldHVybiBzcmMucmVwbGFjZShTVEFSVCwgYDxzdmcgaWQ9XCIke25hbWV9XCJgKTtcbiAgICB9XG5cbiAgICBjb25zdCB3aWR0aCA9IHBhcnNlSW50KHdpZHRoU3RyaW5nLCAxMCk7XG4gICAgY29uc3QgaGVpZ2h0ID0gcGFyc2VJbnQoaGVpZ2h0U3RyaW5nLCAxMCk7XG4gICAgY29uc3QgZW1XaWR0aCA9IHdpZHRoIC8gMTY7XG4gICAgY29uc3QgZW1IZWlnaHQgPSBoZWlnaHQgLyAxNjtcblxuICAgIHJldHVybiB7XG4gICAgICAgIHdpZHRoOiBgJHtlbVdpZHRofWVtYCxcbiAgICAgICAgaGVpZ2h0OiBgJHtlbUhlaWdodH1lbWAsXG4gICAgICAgIHNyYzogYFxuICAgICAgICA8ZyBpZD1cIiR7bmFtZX1cIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgICA8c3ZnIHg9XCI1MCVcIiB5PVwiNTAlXCIgd2lkdGg9XCIke2VtV2lkdGh9ZW1cIiBoZWlnaHQ9XCIke2VtSGVpZ2h0fWVtXCIgb3ZlcmZsb3c9XCJ2aXNpYmxlXCIgdmlld0JveD1cIjAgMCAke3dpZHRofSAke2hlaWdodH1cIj5cbiAgICAgICAgICAgICAgICA8c3ZnIHg9XCIkey13aWR0aCAvIDJ9XCIgeT1cIiR7LWhlaWdodCAvIDJ9XCI+JHtzcmN9PC9zdmc+XG4gICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9nPmAudHJpbSgpLFxuICAgIH07XG59XG4iXX0=
@@ -5,28 +5,35 @@ export function rollupSvgo({ include = '**/*.svg', exclude, options, } = {}) {
5
5
  const filter = createFilter(include, exclude);
6
6
  return {
7
7
  name: 'rollupSvgo',
8
- transform(svgString, id) {
8
+ transform(svgString, path) {
9
+ var _a;
9
10
  return __awaiter(this, void 0, void 0, function* () {
10
- const skip = !filter(id);
11
+ const skip = !filter(path);
11
12
  if (skip) {
12
- console.info('\x1b[33m%s\x1b[0m', '[skip]', id);
13
+ console.info('\x1b[33m%s\x1b[0m', '[skip]', path);
13
14
  return;
14
15
  }
15
- let optimizedSvg = null;
16
+ let data;
17
+ let error;
16
18
  try {
17
- optimizedSvg = yield optimize(svgString, Object.assign({ path: id }, options));
18
- console.info('\x1b[32m%s\x1b[0m', '[success]', id);
19
+ const result = yield optimize(svgString, Object.assign({ path }, options));
20
+ data = ((_a = result) === null || _a === void 0 ? void 0 : _a.data) || {};
21
+ error = result.error;
19
22
  }
20
23
  catch (err) {
21
- console.error('\x1b[31m%s\x1b[0m', '[error]', id, `\n${svgString}`, `\n${err}`);
24
+ error = err.message;
25
+ }
26
+ if (error) {
27
+ console.error('\x1b[31m%s\x1b[0m', '[error]', path, `\n${svgString}`, `\n${error}`);
22
28
  process.exit(1);
23
29
  }
30
+ console.info('\x1b[32m%s\x1b[0m', '[success]', path);
24
31
  return {
25
- code: `export default ${JSON.stringify(optimizedSvg === null || optimizedSvg === void 0 ? void 0 : optimizedSvg.data)}`,
32
+ code: `export default ${JSON.stringify(data)}`,
26
33
  map: { mappings: '' },
27
34
  };
28
35
  });
29
36
  },
30
37
  };
31
38
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLXN2Z28uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvaWNvbnMvc2NyaXB0cy8iLCJzb3VyY2VzIjpbInJvbGx1cC1zdmdvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFDLFFBQVEsRUFBZ0MsTUFBTSxNQUFNLENBQUM7QUFVN0QsTUFBTSxVQUFVLFVBQVUsQ0FBQyxFQUN2QixPQUFPLEdBQUcsVUFBVSxFQUNwQixPQUFPLEVBQ1AsT0FBTyxNQUNXLEVBQUU7SUFDcEIsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUU5QyxPQUFPO1FBQ0gsSUFBSSxFQUFFLFlBQVk7UUFDWixTQUFTLENBQUMsU0FBaUIsRUFBRSxFQUFVOztnQkFDekMsTUFBTSxJQUFJLEdBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBRWxDLElBQUksSUFBSSxFQUFFO29CQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUVoRCxPQUFPO2lCQUNWO2dCQUVELElBQUksWUFBWSxHQUF3QixJQUFJLENBQUM7Z0JBRTdDLElBQUk7b0JBQ0EsWUFBWSxHQUFHLE1BQU0sUUFBUSxDQUFDLFNBQVMsa0JBQUcsSUFBSSxFQUFFLEVBQUUsSUFBSyxPQUFPLEVBQUUsQ0FBQztvQkFFakUsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQ3REO2dCQUFDLE9BQU8sR0FBRyxFQUFFO29CQUNWLE9BQU8sQ0FBQyxLQUFLLENBQ1QsbUJBQW1CLEVBQ25CLFNBQVMsRUFDVCxFQUFFLEVBQ0YsS0FBSyxTQUFTLEVBQUUsRUFDaEIsS0FBSyxHQUFHLEVBQUUsQ0FDYixDQUFDO29CQUVGLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ25CO2dCQUVELE9BQU87b0JBQ0gsSUFBSSxFQUFFLGtCQUFrQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxJQUFJLENBQUMsRUFBRTtvQkFDNUQsR0FBRyxFQUFFLEVBQUMsUUFBUSxFQUFFLEVBQUUsRUFBQztpQkFDdEIsQ0FBQztZQUNOLENBQUM7U0FBQTtLQUNKLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjcmVhdGVGaWx0ZXJ9IGZyb20gJ0Byb2xsdXAvcGx1Z2ludXRpbHMnO1xuaW1wb3J0IHtQbHVnaW4sIFRyYW5zZm9ybVJlc3VsdH0gZnJvbSAncm9sbHVwJztcbmltcG9ydCB7b3B0aW1pemUsIE9wdGltaXplZFN2ZywgT3B0aW1pemVPcHRpb25zfSBmcm9tICdzdmdvJztcblxuZXhwb3J0IGludGVyZmFjZSBSb2xsdXBTdmdvQ29uZmlnIHtcbiAgICByZWFkb25seSBpbmNsdWRlPzogc3RyaW5nO1xuXG4gICAgcmVhZG9ubHkgZXhjbHVkZT86IHN0cmluZztcblxuICAgIHJlYWRvbmx5IG9wdGlvbnM/OiBPcHRpbWl6ZU9wdGlvbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByb2xsdXBTdmdvKHtcbiAgICBpbmNsdWRlID0gJyoqLyouc3ZnJyxcbiAgICBleGNsdWRlLFxuICAgIG9wdGlvbnMsXG59OiBSb2xsdXBTdmdvQ29uZmlnID0ge30pOiBQbHVnaW4ge1xuICAgIGNvbnN0IGZpbHRlciA9IGNyZWF0ZUZpbHRlcihpbmNsdWRlLCBleGNsdWRlKTtcblxuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6ICdyb2xsdXBTdmdvJyxcbiAgICAgICAgYXN5bmMgdHJhbnNmb3JtKHN2Z1N0cmluZzogc3RyaW5nLCBpZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2Zvcm1SZXN1bHQ+IHtcbiAgICAgICAgICAgIGNvbnN0IHNraXA6IGJvb2xlYW4gPSAhZmlsdGVyKGlkKTtcblxuICAgICAgICAgICAgaWYgKHNraXApIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmluZm8oJ1xceDFiWzMzbSVzXFx4MWJbMG0nLCAnW3NraXBdJywgaWQpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgb3B0aW1pemVkU3ZnOiBPcHRpbWl6ZWRTdmcgfCBudWxsID0gbnVsbDtcblxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBvcHRpbWl6ZWRTdmcgPSBhd2FpdCBvcHRpbWl6ZShzdmdTdHJpbmcsIHtwYXRoOiBpZCwgLi4ub3B0aW9uc30pO1xuXG4gICAgICAgICAgICAgICAgY29uc29sZS5pbmZvKCdcXHgxYlszMm0lc1xceDFiWzBtJywgJ1tzdWNjZXNzXScsIGlkKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICdcXHgxYlszMW0lc1xceDFiWzBtJyxcbiAgICAgICAgICAgICAgICAgICAgJ1tlcnJvcl0nLFxuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgYFxcbiR7c3ZnU3RyaW5nfWAsXG4gICAgICAgICAgICAgICAgICAgIGBcXG4ke2Vycn1gLFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgY29kZTogYGV4cG9ydCBkZWZhdWx0ICR7SlNPTi5zdHJpbmdpZnkob3B0aW1pemVkU3ZnPy5kYXRhKX1gLFxuICAgICAgICAgICAgICAgIG1hcDoge21hcHBpbmdzOiAnJ30sXG4gICAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgIH07XG59XG4iXX0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLXN2Z28uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvaWNvbnMvc2NyaXB0cy8iLCJzb3VyY2VzIjpbInJvbGx1cC1zdmdvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFDLFFBQVEsRUFBZ0QsTUFBTSxNQUFNLENBQUM7QUFZN0UsTUFBTSxVQUFVLFVBQVUsQ0FBQyxFQUN2QixPQUFPLEdBQUcsVUFBVSxFQUNwQixPQUFPLEVBQ1AsT0FBTyxNQUNXLEVBQUU7SUFDcEIsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUU5QyxPQUFPO1FBQ0gsSUFBSSxFQUFFLFlBQVk7UUFDWixTQUFTLENBQUMsU0FBaUIsRUFBRSxJQUFZOzs7Z0JBQzNDLE1BQU0sSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUUzQixJQUFJLElBQUksRUFBRTtvQkFDTixPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztvQkFFbEQsT0FBTztpQkFDVjtnQkFFRCxJQUFJLElBQWEsQ0FBQztnQkFDbEIsSUFBSSxLQUFjLENBQUM7Z0JBRW5CLElBQUk7b0JBQ0EsTUFBTSxNQUFNLEdBQWUsTUFBTSxRQUFRLENBQUMsU0FBUyxrQkFBRyxJQUFJLElBQUssT0FBTyxFQUFFLENBQUM7b0JBRXpFLElBQUksR0FBRyxPQUFDLE1BQXVCLDBDQUFFLElBQUksS0FBSSxFQUFFLENBQUM7b0JBQzVDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO2lCQUN4QjtnQkFBQyxPQUFPLEdBQUcsRUFBRTtvQkFDVixLQUFLLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztpQkFDdkI7Z0JBRUQsSUFBSSxLQUFLLEVBQUU7b0JBQ1AsT0FBTyxDQUFDLEtBQUssQ0FDVCxtQkFBbUIsRUFDbkIsU0FBUyxFQUNULElBQUksRUFDSixLQUFLLFNBQVMsRUFBRSxFQUNoQixLQUFLLEtBQUssRUFBRSxDQUNmLENBQUM7b0JBQ0YsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDbkI7Z0JBRUQsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBRXJELE9BQU87b0JBQ0gsSUFBSSxFQUFFLGtCQUFrQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUM5QyxHQUFHLEVBQUUsRUFBQyxRQUFRLEVBQUUsRUFBRSxFQUFDO2lCQUN0QixDQUFDOztTQUNMO0tBQ0osQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2NyZWF0ZUZpbHRlcn0gZnJvbSAnQHJvbGx1cC9wbHVnaW51dGlscyc7XG5pbXBvcnQge1BsdWdpbiwgVHJhbnNmb3JtUmVzdWx0fSBmcm9tICdyb2xsdXAnO1xuaW1wb3J0IHtvcHRpbWl6ZSwgT3B0aW1pemVkRXJyb3IsIE9wdGltaXplZFN2ZywgT3B0aW1pemVPcHRpb25zfSBmcm9tICdzdmdvJztcblxudHlwZSBTdmdvUmVzdWx0ID0gT3B0aW1pemVkU3ZnIHwgT3B0aW1pemVkRXJyb3I7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9sbHVwU3Znb0NvbmZpZyB7XG4gICAgcmVhZG9ubHkgaW5jbHVkZT86IHN0cmluZztcblxuICAgIHJlYWRvbmx5IGV4Y2x1ZGU/OiBzdHJpbmc7XG5cbiAgICByZWFkb25seSBvcHRpb25zPzogT3B0aW1pemVPcHRpb25zO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcm9sbHVwU3Znbyh7XG4gICAgaW5jbHVkZSA9ICcqKi8qLnN2ZycsXG4gICAgZXhjbHVkZSxcbiAgICBvcHRpb25zLFxufTogUm9sbHVwU3Znb0NvbmZpZyA9IHt9KTogUGx1Z2luIHtcbiAgICBjb25zdCBmaWx0ZXIgPSBjcmVhdGVGaWx0ZXIoaW5jbHVkZSwgZXhjbHVkZSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAncm9sbHVwU3ZnbycsXG4gICAgICAgIGFzeW5jIHRyYW5zZm9ybShzdmdTdHJpbmc6IHN0cmluZywgcGF0aDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2Zvcm1SZXN1bHQ+IHtcbiAgICAgICAgICAgIGNvbnN0IHNraXAgPSAhZmlsdGVyKHBhdGgpO1xuXG4gICAgICAgICAgICBpZiAoc2tpcCkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnXFx4MWJbMzNtJXNcXHgxYlswbScsICdbc2tpcF0nLCBwYXRoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGV0IGRhdGE6IHVua25vd247XG4gICAgICAgICAgICBsZXQgZXJyb3I6IHVua25vd247XG5cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0OiBTdmdvUmVzdWx0ID0gYXdhaXQgb3B0aW1pemUoc3ZnU3RyaW5nLCB7cGF0aCwgLi4ub3B0aW9uc30pO1xuXG4gICAgICAgICAgICAgICAgZGF0YSA9IChyZXN1bHQgYXMgT3B0aW1pemVkU3ZnKT8uZGF0YSB8fCB7fTtcbiAgICAgICAgICAgICAgICBlcnJvciA9IHJlc3VsdC5lcnJvcjtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgIGVycm9yID0gZXJyLm1lc3NhZ2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICdcXHgxYlszMW0lc1xceDFiWzBtJyxcbiAgICAgICAgICAgICAgICAgICAgJ1tlcnJvcl0nLFxuICAgICAgICAgICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgICAgICAgICBgXFxuJHtzdmdTdHJpbmd9YCxcbiAgICAgICAgICAgICAgICAgICAgYFxcbiR7ZXJyb3J9YCxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc29sZS5pbmZvKCdcXHgxYlszMm0lc1xceDFiWzBtJywgJ1tzdWNjZXNzXScsIHBhdGgpO1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGNvZGU6IGBleHBvcnQgZGVmYXVsdCAke0pTT04uc3RyaW5naWZ5KGRhdGEpfWAsXG4gICAgICAgICAgICAgICAgbWFwOiB7bWFwcGluZ3M6ICcnfSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0sXG4gICAgfTtcbn1cbiJdfQ==
@@ -2,5 +2,6 @@ export * from './convert-all-compile-file-to-all-file';
2
2
  export * from './delete-all-to-compile-file';
3
3
  export * from './post-prettier-format';
4
4
  export * from './prepare-all-to-compile-file';
5
+ export * from './process-icons';
5
6
  export * from './rollup-svgo';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvaWNvbnMvc2NyaXB0cy8iLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnZlcnQtYWxsLWNvbXBpbGUtZmlsZS10by1hbGwtZmlsZSc7XG5leHBvcnQgKiBmcm9tICcuL2RlbGV0ZS1hbGwtdG8tY29tcGlsZS1maWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcG9zdC1wcmV0dGllci1mb3JtYXQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcmVwYXJlLWFsbC10by1jb21waWxlLWZpbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9yb2xsdXAtc3Znbyc7XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvaWNvbnMvc2NyaXB0cy8iLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29udmVydC1hbGwtY29tcGlsZS1maWxlLXRvLWFsbC1maWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZGVsZXRlLWFsbC10by1jb21waWxlLWZpbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9wb3N0LXByZXR0aWVyLWZvcm1hdCc7XG5leHBvcnQgKiBmcm9tICcuL3ByZXBhcmUtYWxsLXRvLWNvbXBpbGUtZmlsZSc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2Nlc3MtaWNvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9yb2xsdXAtc3Znbyc7XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { __values } from "tslib";
2
2
  import { readdirSync, writeFileSync } from 'fs';
3
- export function prepareAllToCompileFile(iconsSrc, allToCompilePath) {
3
+ export function prepareAllToCompileFile(iconsSrc, entryPointTs) {
4
4
  var e_1, _a;
5
5
  var icons = readdirSync(iconsSrc).filter(function (file) { return file.split('.').pop() === 'svg'; });
6
6
  var importDeclarations = '';
@@ -20,6 +20,6 @@ export function prepareAllToCompileFile(iconsSrc, allToCompilePath) {
20
20
  }
21
21
  finally { if (e_1) throw e_1.error; }
22
22
  }
23
- writeFileSync(allToCompilePath, importDeclarations + " \n export { " + exportDeclarations + " }");
23
+ writeFileSync(entryPointTs, importDeclarations + " \n export { " + exportDeclarations + " }");
24
24
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcGFyZS1hbGwtdG8tY29tcGlsZS1maWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2ljb25zL3NjcmlwdHMvIiwic291cmNlcyI6WyJwcmVwYXJlLWFsbC10by1jb21waWxlLWZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQUUsYUFBYSxFQUFDLE1BQU0sSUFBSSxDQUFDO0FBRTlDLE1BQU0sVUFBVSx1QkFBdUIsQ0FDbkMsUUFBZ0IsRUFDaEIsZ0JBQXdCOztJQUV4QixJQUFNLEtBQUssR0FBYSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUNoRCxVQUFBLElBQUksSUFBSSxPQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssS0FBSyxFQUEvQixDQUErQixDQUMxQyxDQUFDO0lBRUYsSUFBSSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7SUFDNUIsSUFBSSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7O1FBRTVCLEtBQXVCLElBQUEsVUFBQSxTQUFBLEtBQUssQ0FBQSw0QkFBQSwrQ0FBRTtZQUF6QixJQUFNLFFBQVEsa0JBQUE7WUFDZixJQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBRTdDLGtCQUFrQixJQUFJLFlBQVUsUUFBUSxxQkFBZ0IsUUFBUSxhQUFVLENBQUM7WUFDM0Usa0JBQWtCLElBQU8sUUFBUSxPQUFJLENBQUM7U0FDekM7Ozs7Ozs7OztJQUVELGFBQWEsQ0FDVCxnQkFBZ0IsRUFDYixrQkFBa0IscUJBQWdCLGtCQUFrQixPQUFJLENBQzlELENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtyZWFkZGlyU3luYywgd3JpdGVGaWxlU3luY30gZnJvbSAnZnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZUFsbFRvQ29tcGlsZUZpbGUoXG4gICAgaWNvbnNTcmM6IHN0cmluZyxcbiAgICBhbGxUb0NvbXBpbGVQYXRoOiBzdHJpbmcsXG4pOiB2b2lkIHtcbiAgICBjb25zdCBpY29uczogc3RyaW5nW10gPSByZWFkZGlyU3luYyhpY29uc1NyYykuZmlsdGVyKFxuICAgICAgICBmaWxlID0+IGZpbGUuc3BsaXQoJy4nKS5wb3AoKSA9PT0gJ3N2ZycsXG4gICAgKTtcblxuICAgIGxldCBpbXBvcnREZWNsYXJhdGlvbnMgPSAnJztcbiAgICBsZXQgZXhwb3J0RGVjbGFyYXRpb25zID0gJyc7XG5cbiAgICBmb3IgKGNvbnN0IGljb25QYXRoIG9mIGljb25zKSB7XG4gICAgICAgIGNvbnN0IGZpbGVOYW1lID0gaWNvblBhdGguc3BsaXQoJy4nKS5zaGlmdCgpO1xuXG4gICAgICAgIGltcG9ydERlY2xhcmF0aW9ucyArPSBgaW1wb3J0ICR7ZmlsZU5hbWV9IGZyb20gJy4vc3JjLyR7ZmlsZU5hbWV9LnN2Zyc7XFxuYDtcbiAgICAgICAgZXhwb3J0RGVjbGFyYXRpb25zICs9IGAke2ZpbGVOYW1lfSwgYDtcbiAgICB9XG5cbiAgICB3cml0ZUZpbGVTeW5jKFxuICAgICAgICBhbGxUb0NvbXBpbGVQYXRoLFxuICAgICAgICBgJHtpbXBvcnREZWNsYXJhdGlvbnN9IFxcbiBleHBvcnQgeyAke2V4cG9ydERlY2xhcmF0aW9uc30gfWAsXG4gICAgKTtcbn1cbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcGFyZS1hbGwtdG8tY29tcGlsZS1maWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2ljb25zL3NjcmlwdHMvIiwic291cmNlcyI6WyJwcmVwYXJlLWFsbC10by1jb21waWxlLWZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQUUsYUFBYSxFQUFDLE1BQU0sSUFBSSxDQUFDO0FBRTlDLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxRQUFnQixFQUFFLFlBQW9COztJQUMxRSxJQUFNLEtBQUssR0FBYSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUNoRCxVQUFBLElBQUksSUFBSSxPQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssS0FBSyxFQUEvQixDQUErQixDQUMxQyxDQUFDO0lBRUYsSUFBSSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7SUFDNUIsSUFBSSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7O1FBRTVCLEtBQXVCLElBQUEsVUFBQSxTQUFBLEtBQUssQ0FBQSw0QkFBQSwrQ0FBRTtZQUF6QixJQUFNLFFBQVEsa0JBQUE7WUFDZixJQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBRTdDLGtCQUFrQixJQUFJLFlBQVUsUUFBUSxxQkFBZ0IsUUFBUSxhQUFVLENBQUM7WUFDM0Usa0JBQWtCLElBQU8sUUFBUSxPQUFJLENBQUM7U0FDekM7Ozs7Ozs7OztJQUVELGFBQWEsQ0FDVCxZQUFZLEVBQ1Qsa0JBQWtCLHFCQUFnQixrQkFBa0IsT0FBSSxDQUM5RCxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7cmVhZGRpclN5bmMsIHdyaXRlRmlsZVN5bmN9IGZyb20gJ2ZzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByZXBhcmVBbGxUb0NvbXBpbGVGaWxlKGljb25zU3JjOiBzdHJpbmcsIGVudHJ5UG9pbnRUczogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgaWNvbnM6IHN0cmluZ1tdID0gcmVhZGRpclN5bmMoaWNvbnNTcmMpLmZpbHRlcihcbiAgICAgICAgZmlsZSA9PiBmaWxlLnNwbGl0KCcuJykucG9wKCkgPT09ICdzdmcnLFxuICAgICk7XG5cbiAgICBsZXQgaW1wb3J0RGVjbGFyYXRpb25zID0gJyc7XG4gICAgbGV0IGV4cG9ydERlY2xhcmF0aW9ucyA9ICcnO1xuXG4gICAgZm9yIChjb25zdCBpY29uUGF0aCBvZiBpY29ucykge1xuICAgICAgICBjb25zdCBmaWxlTmFtZSA9IGljb25QYXRoLnNwbGl0KCcuJykuc2hpZnQoKTtcblxuICAgICAgICBpbXBvcnREZWNsYXJhdGlvbnMgKz0gYGltcG9ydCAke2ZpbGVOYW1lfSBmcm9tICcuL3NyYy8ke2ZpbGVOYW1lfS5zdmcnO1xcbmA7XG4gICAgICAgIGV4cG9ydERlY2xhcmF0aW9ucyArPSBgJHtmaWxlTmFtZX0sIGA7XG4gICAgfVxuXG4gICAgd3JpdGVGaWxlU3luYyhcbiAgICAgICAgZW50cnlQb2ludFRzLFxuICAgICAgICBgJHtpbXBvcnREZWNsYXJhdGlvbnN9IFxcbiBleHBvcnQgeyAke2V4cG9ydERlY2xhcmF0aW9uc30gfWAsXG4gICAgKTtcbn1cbiJdfQ==
@@ -0,0 +1,65 @@
1
+ import { __values } from "tslib";
2
+ import fs from 'fs';
3
+ import { parse } from 'path';
4
+ var START = '<svg';
5
+ var WIDTH_SEARCH = 'width="';
6
+ var HEIGHT_SEARCH = 'height="';
7
+ export function processIcons(files, interceptor) {
8
+ var e_1, _a;
9
+ try {
10
+ for (var files_1 = __values(files), files_1_1 = files_1.next(); !files_1_1.done; files_1_1 = files_1.next()) {
11
+ var file = files_1_1.value;
12
+ var baseContent = String(fs.readFileSync(file));
13
+ var src = interceptor ? interceptor(baseContent) : baseContent;
14
+ var name_1 = parse(file).base.replace('.svg', '');
15
+ if (src.includes("id=\"" + name_1 + "\"")) {
16
+ console.info('\x1b[33m%s\x1b[0m', "[skip]:", file);
17
+ continue;
18
+ }
19
+ var wrapped = wrapIcon(src, name_1);
20
+ var final = typeof wrapped === 'string'
21
+ ? wrapped.replace(START, "<svg xmlns=\"http://www.w3.org/2000/svg\"><g id=\"" + name_1 + "\" xmlns=\"http://www.w3.org/2000/svg\"><svg") + '</g></svg>'
22
+ : "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"" + wrapped.width + "\" height=\"" + wrapped.height + "\">" + wrapped.src + "</svg>";
23
+ fs.writeFileSync(file, final);
24
+ console.info('\x1b[32m%s\x1b[0m', "[preprocessed]:", file);
25
+ }
26
+ }
27
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
28
+ finally {
29
+ try {
30
+ if (files_1_1 && !files_1_1.done && (_a = files_1.return)) _a.call(files_1);
31
+ }
32
+ finally { if (e_1) throw e_1.error; }
33
+ }
34
+ }
35
+ function wrapIcon(source, name) {
36
+ var src = source.substring(source.indexOf(START));
37
+ var attributes = src.substring(0, src.indexOf('>'));
38
+ if (!attributes ||
39
+ !attributes.includes(WIDTH_SEARCH) ||
40
+ !attributes.includes(HEIGHT_SEARCH)) {
41
+ return src;
42
+ }
43
+ var indexOfWidth = attributes.indexOf(WIDTH_SEARCH);
44
+ var indexOfHeight = attributes.indexOf(HEIGHT_SEARCH);
45
+ var widthOffset = indexOfWidth + WIDTH_SEARCH.length;
46
+ var heightOffset = indexOfHeight + HEIGHT_SEARCH.length;
47
+ var widthString = attributes.substring(widthOffset, attributes.indexOf('"', widthOffset));
48
+ var heightString = attributes.substring(heightOffset, attributes.indexOf('"', heightOffset));
49
+ if (!heightString ||
50
+ !widthString ||
51
+ widthString.includes('%') ||
52
+ heightString.includes('%')) {
53
+ return src.replace(START, "<svg id=\"" + name + "\"");
54
+ }
55
+ var width = parseInt(widthString, 10);
56
+ var height = parseInt(heightString, 10);
57
+ var emWidth = width / 16;
58
+ var emHeight = height / 16;
59
+ return {
60
+ width: emWidth + "em",
61
+ height: emHeight + "em",
62
+ src: ("\n <g id=\"" + name + "\" xmlns=\"http://www.w3.org/2000/svg\">\n <svg x=\"50%\" y=\"50%\" width=\"" + emWidth + "em\" height=\"" + emHeight + "em\" overflow=\"visible\" viewBox=\"0 0 " + width + " " + height + "\">\n <svg x=\"" + -width / 2 + "\" y=\"" + -height / 2 + "\">" + src + "</svg>\n </svg>\n </g>").trim(),
63
+ };
64
+ }
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1pY29ucy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9pY29ucy9zY3JpcHRzLyIsInNvdXJjZXMiOlsicHJvY2Vzcy1pY29ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3BCLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFM0IsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDO0FBQ3JCLElBQU0sWUFBWSxHQUFHLFNBQVMsQ0FBQztBQUMvQixJQUFNLGFBQWEsR0FBRyxVQUFVLENBQUM7QUFVakMsTUFBTSxVQUFVLFlBQVksQ0FBQyxLQUFlLEVBQUUsV0FBZ0M7OztRQUMxRSxLQUFtQixJQUFBLFVBQUEsU0FBQSxLQUFLLENBQUEsNEJBQUEsK0NBQUU7WUFBckIsSUFBTSxJQUFJLGtCQUFBO1lBQ1gsSUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNsRCxJQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO1lBRWpFLElBQU0sTUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUVsRCxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBTyxNQUFJLE9BQUcsQ0FBQyxFQUFFO2dCQUM5QixPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDbkQsU0FBUzthQUNaO1lBRUQsSUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxNQUFJLENBQUMsQ0FBQztZQUVwQyxJQUFNLEtBQUssR0FDUCxPQUFPLE9BQU8sS0FBSyxRQUFRO2dCQUN2QixDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FDWCxLQUFLLEVBQ0wsdURBQWtELE1BQUksaURBQTJDLENBQ3BHLEdBQUcsWUFBWTtnQkFDbEIsQ0FBQyxDQUFDLHVEQUFrRCxPQUFPLENBQUMsS0FBSyxvQkFBYSxPQUFPLENBQUMsTUFBTSxXQUFLLE9BQU8sQ0FBQyxHQUFHLFdBQVEsQ0FBQztZQUU3SCxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztZQUU5QixPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzlEOzs7Ozs7Ozs7QUFDTCxDQUFDO0FBRUQsU0FBUyxRQUFRLENBQUMsTUFBYyxFQUFFLElBQVk7SUFDMUMsSUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDcEQsSUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRXRELElBQ0ksQ0FBQyxVQUFVO1FBQ1gsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUNsQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQ3JDO1FBQ0UsT0FBTyxHQUFHLENBQUM7S0FDZDtJQUVELElBQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdEQsSUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN4RCxJQUFNLFdBQVcsR0FBRyxZQUFZLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQztJQUN2RCxJQUFNLFlBQVksR0FBRyxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQztJQUMxRCxJQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUNwQyxXQUFXLEVBQ1gsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQ3ZDLENBQUM7SUFDRixJQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsU0FBUyxDQUNyQyxZQUFZLEVBQ1osVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQ3hDLENBQUM7SUFFRixJQUNJLENBQUMsWUFBWTtRQUNiLENBQUMsV0FBVztRQUNaLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO1FBQ3pCLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQzVCO1FBQ0UsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxlQUFZLElBQUksT0FBRyxDQUFDLENBQUM7S0FDbEQ7SUFFRCxJQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLElBQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUMsSUFBTSxPQUFPLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUMzQixJQUFNLFFBQVEsR0FBRyxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBRTdCLE9BQU87UUFDSCxLQUFLLEVBQUssT0FBTyxPQUFJO1FBQ3JCLE1BQU0sRUFBSyxRQUFRLE9BQUk7UUFDdkIsR0FBRyxFQUFFLENBQUEsdUJBQ0ksSUFBSSwrRkFDcUIsT0FBTyxzQkFBZSxRQUFRLGdEQUF1QyxLQUFLLFNBQUksTUFBTSxzQ0FDcEcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxlQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsV0FBSyxHQUFHLDZDQUVsRCxDQUFBLENBQUMsSUFBSSxFQUFFO0tBQ2YsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IHtwYXJzZX0gZnJvbSAncGF0aCc7XG5cbmNvbnN0IFNUQVJUID0gJzxzdmcnO1xuY29uc3QgV0lEVEhfU0VBUkNIID0gJ3dpZHRoPVwiJztcbmNvbnN0IEhFSUdIVF9TRUFSQ0ggPSAnaGVpZ2h0PVwiJztcblxuaW50ZXJmYWNlIFdyYXBwZWRDb250ZW50IHtcbiAgICBoZWlnaHQ6IHN0cmluZztcbiAgICB3aWR0aDogc3RyaW5nO1xuICAgIHNyYzogc3RyaW5nO1xufVxuXG50eXBlIENvbnRlbnRJbnRlcmNlcHRvciA9IChzcmM6IHN0cmluZykgPT4gc3RyaW5nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvY2Vzc0ljb25zKGZpbGVzOiBzdHJpbmdbXSwgaW50ZXJjZXB0b3I/OiBDb250ZW50SW50ZXJjZXB0b3IpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXMpIHtcbiAgICAgICAgY29uc3QgYmFzZUNvbnRlbnQgPSBTdHJpbmcoZnMucmVhZEZpbGVTeW5jKGZpbGUpKTtcbiAgICAgICAgY29uc3Qgc3JjID0gaW50ZXJjZXB0b3IgPyBpbnRlcmNlcHRvcihiYXNlQ29udGVudCkgOiBiYXNlQ29udGVudDtcblxuICAgICAgICBjb25zdCBuYW1lID0gcGFyc2UoZmlsZSkuYmFzZS5yZXBsYWNlKCcuc3ZnJywgJycpO1xuXG4gICAgICAgIGlmIChzcmMuaW5jbHVkZXMoYGlkPVwiJHtuYW1lfVwiYCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnXFx4MWJbMzNtJXNcXHgxYlswbScsIGBbc2tpcF06YCwgZmlsZSk7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHdyYXBwZWQgPSB3cmFwSWNvbihzcmMsIG5hbWUpO1xuXG4gICAgICAgIGNvbnN0IGZpbmFsID1cbiAgICAgICAgICAgIHR5cGVvZiB3cmFwcGVkID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgICAgID8gd3JhcHBlZC5yZXBsYWNlKFxuICAgICAgICAgICAgICAgICAgICAgIFNUQVJULFxuICAgICAgICAgICAgICAgICAgICAgIGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj48ZyBpZD1cIiR7bmFtZX1cIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHN2Z2AsXG4gICAgICAgICAgICAgICAgICApICsgJzwvZz48L3N2Zz4nXG4gICAgICAgICAgICAgICAgOiBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIke3dyYXBwZWQud2lkdGh9XCIgaGVpZ2h0PVwiJHt3cmFwcGVkLmhlaWdodH1cIj4ke3dyYXBwZWQuc3JjfTwvc3ZnPmA7XG5cbiAgICAgICAgZnMud3JpdGVGaWxlU3luYyhmaWxlLCBmaW5hbCk7XG5cbiAgICAgICAgY29uc29sZS5pbmZvKCdcXHgxYlszMm0lc1xceDFiWzBtJywgYFtwcmVwcm9jZXNzZWRdOmAsIGZpbGUpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gd3JhcEljb24oc291cmNlOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IFdyYXBwZWRDb250ZW50IHtcbiAgICBjb25zdCBzcmMgPSBzb3VyY2Uuc3Vic3RyaW5nKHNvdXJjZS5pbmRleE9mKFNUQVJUKSk7XG4gICAgY29uc3QgYXR0cmlidXRlcyA9IHNyYy5zdWJzdHJpbmcoMCwgc3JjLmluZGV4T2YoJz4nKSk7XG5cbiAgICBpZiAoXG4gICAgICAgICFhdHRyaWJ1dGVzIHx8XG4gICAgICAgICFhdHRyaWJ1dGVzLmluY2x1ZGVzKFdJRFRIX1NFQVJDSCkgfHxcbiAgICAgICAgIWF0dHJpYnV0ZXMuaW5jbHVkZXMoSEVJR0hUX1NFQVJDSClcbiAgICApIHtcbiAgICAgICAgcmV0dXJuIHNyYztcbiAgICB9XG5cbiAgICBjb25zdCBpbmRleE9mV2lkdGggPSBhdHRyaWJ1dGVzLmluZGV4T2YoV0lEVEhfU0VBUkNIKTtcbiAgICBjb25zdCBpbmRleE9mSGVpZ2h0ID0gYXR0cmlidXRlcy5pbmRleE9mKEhFSUdIVF9TRUFSQ0gpO1xuICAgIGNvbnN0IHdpZHRoT2Zmc2V0ID0gaW5kZXhPZldpZHRoICsgV0lEVEhfU0VBUkNILmxlbmd0aDtcbiAgICBjb25zdCBoZWlnaHRPZmZzZXQgPSBpbmRleE9mSGVpZ2h0ICsgSEVJR0hUX1NFQVJDSC5sZW5ndGg7XG4gICAgY29uc3Qgd2lkdGhTdHJpbmcgPSBhdHRyaWJ1dGVzLnN1YnN0cmluZyhcbiAgICAgICAgd2lkdGhPZmZzZXQsXG4gICAgICAgIGF0dHJpYnV0ZXMuaW5kZXhPZignXCInLCB3aWR0aE9mZnNldCksXG4gICAgKTtcbiAgICBjb25zdCBoZWlnaHRTdHJpbmcgPSBhdHRyaWJ1dGVzLnN1YnN0cmluZyhcbiAgICAgICAgaGVpZ2h0T2Zmc2V0LFxuICAgICAgICBhdHRyaWJ1dGVzLmluZGV4T2YoJ1wiJywgaGVpZ2h0T2Zmc2V0KSxcbiAgICApO1xuXG4gICAgaWYgKFxuICAgICAgICAhaGVpZ2h0U3RyaW5nIHx8XG4gICAgICAgICF3aWR0aFN0cmluZyB8fFxuICAgICAgICB3aWR0aFN0cmluZy5pbmNsdWRlcygnJScpIHx8XG4gICAgICAgIGhlaWdodFN0cmluZy5pbmNsdWRlcygnJScpXG4gICAgKSB7XG4gICAgICAgIHJldHVybiBzcmMucmVwbGFjZShTVEFSVCwgYDxzdmcgaWQ9XCIke25hbWV9XCJgKTtcbiAgICB9XG5cbiAgICBjb25zdCB3aWR0aCA9IHBhcnNlSW50KHdpZHRoU3RyaW5nLCAxMCk7XG4gICAgY29uc3QgaGVpZ2h0ID0gcGFyc2VJbnQoaGVpZ2h0U3RyaW5nLCAxMCk7XG4gICAgY29uc3QgZW1XaWR0aCA9IHdpZHRoIC8gMTY7XG4gICAgY29uc3QgZW1IZWlnaHQgPSBoZWlnaHQgLyAxNjtcblxuICAgIHJldHVybiB7XG4gICAgICAgIHdpZHRoOiBgJHtlbVdpZHRofWVtYCxcbiAgICAgICAgaGVpZ2h0OiBgJHtlbUhlaWdodH1lbWAsXG4gICAgICAgIHNyYzogYFxuICAgICAgICA8ZyBpZD1cIiR7bmFtZX1cIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgICA8c3ZnIHg9XCI1MCVcIiB5PVwiNTAlXCIgd2lkdGg9XCIke2VtV2lkdGh9ZW1cIiBoZWlnaHQ9XCIke2VtSGVpZ2h0fWVtXCIgb3ZlcmZsb3c9XCJ2aXNpYmxlXCIgdmlld0JveD1cIjAgMCAke3dpZHRofSAke2hlaWdodH1cIj5cbiAgICAgICAgICAgICAgICA8c3ZnIHg9XCIkey13aWR0aCAvIDJ9XCIgeT1cIiR7LWhlaWdodCAvIDJ9XCI+JHtzcmN9PC9zdmc+XG4gICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9nPmAudHJpbSgpLFxuICAgIH07XG59XG4iXX0=
@@ -6,39 +6,45 @@ export function rollupSvgo(_a) {
6
6
  var filter = createFilter(include, exclude);
7
7
  return {
8
8
  name: 'rollupSvgo',
9
- transform: function (svgString, id) {
9
+ transform: function (svgString, path) {
10
+ var _a;
10
11
  return __awaiter(this, void 0, void 0, function () {
11
- var skip, optimizedSvg, err_1;
12
- return __generator(this, function (_a) {
13
- switch (_a.label) {
12
+ var skip, data, error, result, err_1;
13
+ return __generator(this, function (_b) {
14
+ switch (_b.label) {
14
15
  case 0:
15
- skip = !filter(id);
16
+ skip = !filter(path);
16
17
  if (skip) {
17
- console.info('\x1b[33m%s\x1b[0m', '[skip]', id);
18
+ console.info('\x1b[33m%s\x1b[0m', '[skip]', path);
18
19
  return [2 /*return*/];
19
20
  }
20
- optimizedSvg = null;
21
- _a.label = 1;
21
+ _b.label = 1;
22
22
  case 1:
23
- _a.trys.push([1, 3, , 4]);
24
- return [4 /*yield*/, optimize(svgString, __assign({ path: id }, options))];
23
+ _b.trys.push([1, 3, , 4]);
24
+ return [4 /*yield*/, optimize(svgString, __assign({ path: path }, options))];
25
25
  case 2:
26
- optimizedSvg = _a.sent();
27
- console.info('\x1b[32m%s\x1b[0m', '[success]', id);
26
+ result = _b.sent();
27
+ data = ((_a = result) === null || _a === void 0 ? void 0 : _a.data) || {};
28
+ error = result.error;
28
29
  return [3 /*break*/, 4];
29
30
  case 3:
30
- err_1 = _a.sent();
31
- console.error('\x1b[31m%s\x1b[0m', '[error]', id, "\n" + svgString, "\n" + err_1);
32
- process.exit(1);
31
+ err_1 = _b.sent();
32
+ error = err_1.message;
33
33
  return [3 /*break*/, 4];
34
- case 4: return [2 /*return*/, {
35
- code: "export default " + JSON.stringify(optimizedSvg === null || optimizedSvg === void 0 ? void 0 : optimizedSvg.data),
36
- map: { mappings: '' },
37
- }];
34
+ case 4:
35
+ if (error) {
36
+ console.error('\x1b[31m%s\x1b[0m', '[error]', path, "\n" + svgString, "\n" + error);
37
+ process.exit(1);
38
+ }
39
+ console.info('\x1b[32m%s\x1b[0m', '[success]', path);
40
+ return [2 /*return*/, {
41
+ code: "export default " + JSON.stringify(data),
42
+ map: { mappings: '' },
43
+ }];
38
44
  }
39
45
  });
40
46
  });
41
47
  },
42
48
  };
43
49
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLXN2Z28uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvaWNvbnMvc2NyaXB0cy8iLCJzb3VyY2VzIjpbInJvbGx1cC1zdmdvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFDLFFBQVEsRUFBZ0MsTUFBTSxNQUFNLENBQUM7QUFVN0QsTUFBTSxVQUFVLFVBQVUsQ0FBQyxFQUlIO1FBSkcsNEJBSUgsRUFIcEIsZUFBb0IsRUFBcEIseUNBQW9CLEVBQ3BCLG9CQUFPLEVBQ1Asb0JBQU87SUFFUCxJQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRTlDLE9BQU87UUFDSCxJQUFJLEVBQUUsWUFBWTtRQUNaLFNBQVMsRUFBZixVQUFnQixTQUFpQixFQUFFLEVBQVU7Ozs7Ozs0QkFDbkMsSUFBSSxHQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzRCQUVsQyxJQUFJLElBQUksRUFBRTtnQ0FDTixPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztnQ0FFaEQsc0JBQU87NkJBQ1Y7NEJBRUcsWUFBWSxHQUF3QixJQUFJLENBQUM7Ozs7NEJBRzFCLHFCQUFNLFFBQVEsQ0FBQyxTQUFTLGFBQUcsSUFBSSxFQUFFLEVBQUUsSUFBSyxPQUFPLEVBQUUsRUFBQTs7NEJBQWhFLFlBQVksR0FBRyxTQUFpRCxDQUFDOzRCQUVqRSxPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQzs7Ozs0QkFFbkQsT0FBTyxDQUFDLEtBQUssQ0FDVCxtQkFBbUIsRUFDbkIsU0FBUyxFQUNULEVBQUUsRUFDRixPQUFLLFNBQVcsRUFDaEIsT0FBSyxLQUFLLENBQ2IsQ0FBQzs0QkFFRixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDOztnQ0FHcEIsc0JBQU87Z0NBQ0gsSUFBSSxFQUFFLG9CQUFrQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksYUFBWixZQUFZLHVCQUFaLFlBQVksQ0FBRSxJQUFJLENBQUc7Z0NBQzVELEdBQUcsRUFBRSxFQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUM7NkJBQ3RCLEVBQUM7Ozs7U0FDTDtLQUNKLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjcmVhdGVGaWx0ZXJ9IGZyb20gJ0Byb2xsdXAvcGx1Z2ludXRpbHMnO1xuaW1wb3J0IHtQbHVnaW4sIFRyYW5zZm9ybVJlc3VsdH0gZnJvbSAncm9sbHVwJztcbmltcG9ydCB7b3B0aW1pemUsIE9wdGltaXplZFN2ZywgT3B0aW1pemVPcHRpb25zfSBmcm9tICdzdmdvJztcblxuZXhwb3J0IGludGVyZmFjZSBSb2xsdXBTdmdvQ29uZmlnIHtcbiAgICByZWFkb25seSBpbmNsdWRlPzogc3RyaW5nO1xuXG4gICAgcmVhZG9ubHkgZXhjbHVkZT86IHN0cmluZztcblxuICAgIHJlYWRvbmx5IG9wdGlvbnM/OiBPcHRpbWl6ZU9wdGlvbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByb2xsdXBTdmdvKHtcbiAgICBpbmNsdWRlID0gJyoqLyouc3ZnJyxcbiAgICBleGNsdWRlLFxuICAgIG9wdGlvbnMsXG59OiBSb2xsdXBTdmdvQ29uZmlnID0ge30pOiBQbHVnaW4ge1xuICAgIGNvbnN0IGZpbHRlciA9IGNyZWF0ZUZpbHRlcihpbmNsdWRlLCBleGNsdWRlKTtcblxuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6ICdyb2xsdXBTdmdvJyxcbiAgICAgICAgYXN5bmMgdHJhbnNmb3JtKHN2Z1N0cmluZzogc3RyaW5nLCBpZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2Zvcm1SZXN1bHQ+IHtcbiAgICAgICAgICAgIGNvbnN0IHNraXA6IGJvb2xlYW4gPSAhZmlsdGVyKGlkKTtcblxuICAgICAgICAgICAgaWYgKHNraXApIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmluZm8oJ1xceDFiWzMzbSVzXFx4MWJbMG0nLCAnW3NraXBdJywgaWQpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgb3B0aW1pemVkU3ZnOiBPcHRpbWl6ZWRTdmcgfCBudWxsID0gbnVsbDtcblxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBvcHRpbWl6ZWRTdmcgPSBhd2FpdCBvcHRpbWl6ZShzdmdTdHJpbmcsIHtwYXRoOiBpZCwgLi4ub3B0aW9uc30pO1xuXG4gICAgICAgICAgICAgICAgY29uc29sZS5pbmZvKCdcXHgxYlszMm0lc1xceDFiWzBtJywgJ1tzdWNjZXNzXScsIGlkKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICdcXHgxYlszMW0lc1xceDFiWzBtJyxcbiAgICAgICAgICAgICAgICAgICAgJ1tlcnJvcl0nLFxuICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgYFxcbiR7c3ZnU3RyaW5nfWAsXG4gICAgICAgICAgICAgICAgICAgIGBcXG4ke2Vycn1gLFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgY29kZTogYGV4cG9ydCBkZWZhdWx0ICR7SlNPTi5zdHJpbmdpZnkob3B0aW1pemVkU3ZnPy5kYXRhKX1gLFxuICAgICAgICAgICAgICAgIG1hcDoge21hcHBpbmdzOiAnJ30sXG4gICAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgIH07XG59XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwLXN2Z28uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvaWNvbnMvc2NyaXB0cy8iLCJzb3VyY2VzIjpbInJvbGx1cC1zdmdvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFDLFFBQVEsRUFBZ0QsTUFBTSxNQUFNLENBQUM7QUFZN0UsTUFBTSxVQUFVLFVBQVUsQ0FBQyxFQUlIO1FBSkcsNEJBSUgsRUFIcEIsZUFBb0IsRUFBcEIseUNBQW9CLEVBQ3BCLG9CQUFPLEVBQ1Asb0JBQU87SUFFUCxJQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBRTlDLE9BQU87UUFDSCxJQUFJLEVBQUUsWUFBWTtRQUNaLFNBQVMsRUFBZixVQUFnQixTQUFpQixFQUFFLElBQVk7Ozs7Ozs7NEJBQ3JDLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzs0QkFFM0IsSUFBSSxJQUFJLEVBQUU7Z0NBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0NBRWxELHNCQUFPOzZCQUNWOzs7OzRCQU04QixxQkFBTSxRQUFRLENBQUMsU0FBUyxhQUFHLElBQUksTUFBQSxJQUFLLE9BQU8sRUFBRSxFQUFBOzs0QkFBbEUsTUFBTSxHQUFlLFNBQTZDOzRCQUV4RSxJQUFJLEdBQUcsT0FBQyxNQUF1QiwwQ0FBRSxJQUFJLEtBQUksRUFBRSxDQUFDOzRCQUM1QyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQzs7Ozs0QkFFckIsS0FBSyxHQUFHLEtBQUcsQ0FBQyxPQUFPLENBQUM7Ozs0QkFHeEIsSUFBSSxLQUFLLEVBQUU7Z0NBQ1AsT0FBTyxDQUFDLEtBQUssQ0FDVCxtQkFBbUIsRUFDbkIsU0FBUyxFQUNULElBQUksRUFDSixPQUFLLFNBQVcsRUFDaEIsT0FBSyxLQUFPLENBQ2YsQ0FBQztnQ0FDRixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDOzZCQUNuQjs0QkFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQzs0QkFFckQsc0JBQU87b0NBQ0gsSUFBSSxFQUFFLG9CQUFrQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBRztvQ0FDOUMsR0FBRyxFQUFFLEVBQUMsUUFBUSxFQUFFLEVBQUUsRUFBQztpQ0FDdEIsRUFBQzs7OztTQUNMO0tBQ0osQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2NyZWF0ZUZpbHRlcn0gZnJvbSAnQHJvbGx1cC9wbHVnaW51dGlscyc7XG5pbXBvcnQge1BsdWdpbiwgVHJhbnNmb3JtUmVzdWx0fSBmcm9tICdyb2xsdXAnO1xuaW1wb3J0IHtvcHRpbWl6ZSwgT3B0aW1pemVkRXJyb3IsIE9wdGltaXplZFN2ZywgT3B0aW1pemVPcHRpb25zfSBmcm9tICdzdmdvJztcblxudHlwZSBTdmdvUmVzdWx0ID0gT3B0aW1pemVkU3ZnIHwgT3B0aW1pemVkRXJyb3I7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9sbHVwU3Znb0NvbmZpZyB7XG4gICAgcmVhZG9ubHkgaW5jbHVkZT86IHN0cmluZztcblxuICAgIHJlYWRvbmx5IGV4Y2x1ZGU/OiBzdHJpbmc7XG5cbiAgICByZWFkb25seSBvcHRpb25zPzogT3B0aW1pemVPcHRpb25zO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcm9sbHVwU3Znbyh7XG4gICAgaW5jbHVkZSA9ICcqKi8qLnN2ZycsXG4gICAgZXhjbHVkZSxcbiAgICBvcHRpb25zLFxufTogUm9sbHVwU3Znb0NvbmZpZyA9IHt9KTogUGx1Z2luIHtcbiAgICBjb25zdCBmaWx0ZXIgPSBjcmVhdGVGaWx0ZXIoaW5jbHVkZSwgZXhjbHVkZSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAncm9sbHVwU3ZnbycsXG4gICAgICAgIGFzeW5jIHRyYW5zZm9ybShzdmdTdHJpbmc6IHN0cmluZywgcGF0aDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2Zvcm1SZXN1bHQ+IHtcbiAgICAgICAgICAgIGNvbnN0IHNraXAgPSAhZmlsdGVyKHBhdGgpO1xuXG4gICAgICAgICAgICBpZiAoc2tpcCkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnXFx4MWJbMzNtJXNcXHgxYlswbScsICdbc2tpcF0nLCBwYXRoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGV0IGRhdGE6IHVua25vd247XG4gICAgICAgICAgICBsZXQgZXJyb3I6IHVua25vd247XG5cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0OiBTdmdvUmVzdWx0ID0gYXdhaXQgb3B0aW1pemUoc3ZnU3RyaW5nLCB7cGF0aCwgLi4ub3B0aW9uc30pO1xuXG4gICAgICAgICAgICAgICAgZGF0YSA9IChyZXN1bHQgYXMgT3B0aW1pemVkU3ZnKT8uZGF0YSB8fCB7fTtcbiAgICAgICAgICAgICAgICBlcnJvciA9IHJlc3VsdC5lcnJvcjtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgIGVycm9yID0gZXJyLm1lc3NhZ2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICdcXHgxYlszMW0lc1xceDFiWzBtJyxcbiAgICAgICAgICAgICAgICAgICAgJ1tlcnJvcl0nLFxuICAgICAgICAgICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgICAgICAgICBgXFxuJHtzdmdTdHJpbmd9YCxcbiAgICAgICAgICAgICAgICAgICAgYFxcbiR7ZXJyb3J9YCxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc29sZS5pbmZvKCdcXHgxYlszMm0lc1xceDFiWzBtJywgJ1tzdWNjZXNzXScsIHBhdGgpO1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGNvZGU6IGBleHBvcnQgZGVmYXVsdCAke0pTT04uc3RyaW5naWZ5KGRhdGEpfWAsXG4gICAgICAgICAgICAgICAgbWFwOiB7bWFwcGluZ3M6ICcnfSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0sXG4gICAgfTtcbn1cbiJdfQ==
@@ -3,31 +3,39 @@ import { rollup } from 'rollup';
3
3
  import typescript from 'rollup-plugin-typescript2';
4
4
  import { createFilter } from '@rollup/pluginutils';
5
5
  import { optimize } from 'svgo';
6
- import { unlinkSync, readFileSync, writeFileSync, readdirSync } from 'fs';
6
+ import fs, { unlinkSync, readFileSync, writeFileSync, readdirSync } from 'fs';
7
7
  import prettier from 'prettier';
8
+ import { parse } from 'path';
8
9
 
9
10
  function rollupSvgo({ include = '**/*.svg', exclude, options, } = {}) {
10
11
  const filter = createFilter(include, exclude);
11
12
  return {
12
13
  name: 'rollupSvgo',
13
- transform(svgString, id) {
14
+ transform(svgString, path) {
15
+ var _a;
14
16
  return __awaiter(this, void 0, void 0, function* () {
15
- const skip = !filter(id);
17
+ const skip = !filter(path);
16
18
  if (skip) {
17
- console.info('\x1b[33m%s\x1b[0m', '[skip]', id);
19
+ console.info('\x1b[33m%s\x1b[0m', '[skip]', path);
18
20
  return;
19
21
  }
20
- let optimizedSvg = null;
22
+ let data;
23
+ let error;
21
24
  try {
22
- optimizedSvg = yield optimize(svgString, Object.assign({ path: id }, options));
23
- console.info('\x1b[32m%s\x1b[0m', '[success]', id);
25
+ const result = yield optimize(svgString, Object.assign({ path }, options));
26
+ data = ((_a = result) === null || _a === void 0 ? void 0 : _a.data) || {};
27
+ error = result.error;
24
28
  }
25
29
  catch (err) {
26
- console.error('\x1b[31m%s\x1b[0m', '[error]', id, `\n${svgString}`, `\n${err}`);
30
+ error = err.message;
31
+ }
32
+ if (error) {
33
+ console.error('\x1b[31m%s\x1b[0m', '[error]', path, `\n${svgString}`, `\n${error}`);
27
34
  process.exit(1);
28
35
  }
36
+ console.info('\x1b[32m%s\x1b[0m', '[success]', path);
29
37
  return {
30
- code: `export default ${JSON.stringify(optimizedSvg === null || optimizedSvg === void 0 ? void 0 : optimizedSvg.data)}`,
38
+ code: `export default ${JSON.stringify(data)}`,
31
39
  map: { mappings: '' },
32
40
  };
33
41
  });
@@ -101,7 +109,7 @@ function postPrettierFormat(filePath, prettierConfig) {
101
109
  writeFileSync(filePath, formatted);
102
110
  }
103
111
 
104
- function prepareAllToCompileFile(iconsSrc, allToCompilePath) {
112
+ function prepareAllToCompileFile(iconsSrc, entryPointTs) {
105
113
  const icons = readdirSync(iconsSrc).filter(file => file.split('.').pop() === 'svg');
106
114
  let importDeclarations = '';
107
115
  let exportDeclarations = '';
@@ -110,12 +118,68 @@ function prepareAllToCompileFile(iconsSrc, allToCompilePath) {
110
118
  importDeclarations += `import ${fileName} from './src/${fileName}.svg';\n`;
111
119
  exportDeclarations += `${fileName}, `;
112
120
  }
113
- writeFileSync(allToCompilePath, `${importDeclarations} \n export { ${exportDeclarations} }`);
121
+ writeFileSync(entryPointTs, `${importDeclarations} \n export { ${exportDeclarations} }`);
122
+ }
123
+
124
+ const START = '<svg';
125
+ const WIDTH_SEARCH = 'width="';
126
+ const HEIGHT_SEARCH = 'height="';
127
+ function processIcons(files, interceptor) {
128
+ for (const file of files) {
129
+ const baseContent = String(fs.readFileSync(file));
130
+ const src = interceptor ? interceptor(baseContent) : baseContent;
131
+ const name = parse(file).base.replace('.svg', '');
132
+ if (src.includes(`id="${name}"`)) {
133
+ console.info('\x1b[33m%s\x1b[0m', `[skip]:`, file);
134
+ continue;
135
+ }
136
+ const wrapped = wrapIcon(src, name);
137
+ const final = typeof wrapped === 'string'
138
+ ? wrapped.replace(START, `<svg xmlns="http://www.w3.org/2000/svg"><g id="${name}" xmlns="http://www.w3.org/2000/svg"><svg`) + '</g></svg>'
139
+ : `<svg xmlns="http://www.w3.org/2000/svg" width="${wrapped.width}" height="${wrapped.height}">${wrapped.src}</svg>`;
140
+ fs.writeFileSync(file, final);
141
+ console.info('\x1b[32m%s\x1b[0m', `[preprocessed]:`, file);
142
+ }
143
+ }
144
+ function wrapIcon(source, name) {
145
+ const src = source.substring(source.indexOf(START));
146
+ const attributes = src.substring(0, src.indexOf('>'));
147
+ if (!attributes ||
148
+ !attributes.includes(WIDTH_SEARCH) ||
149
+ !attributes.includes(HEIGHT_SEARCH)) {
150
+ return src;
151
+ }
152
+ const indexOfWidth = attributes.indexOf(WIDTH_SEARCH);
153
+ const indexOfHeight = attributes.indexOf(HEIGHT_SEARCH);
154
+ const widthOffset = indexOfWidth + WIDTH_SEARCH.length;
155
+ const heightOffset = indexOfHeight + HEIGHT_SEARCH.length;
156
+ const widthString = attributes.substring(widthOffset, attributes.indexOf('"', widthOffset));
157
+ const heightString = attributes.substring(heightOffset, attributes.indexOf('"', heightOffset));
158
+ if (!heightString ||
159
+ !widthString ||
160
+ widthString.includes('%') ||
161
+ heightString.includes('%')) {
162
+ return src.replace(START, `<svg id="${name}"`);
163
+ }
164
+ const width = parseInt(widthString, 10);
165
+ const height = parseInt(heightString, 10);
166
+ const emWidth = width / 16;
167
+ const emHeight = height / 16;
168
+ return {
169
+ width: `${emWidth}em`,
170
+ height: `${emHeight}em`,
171
+ src: `
172
+ <g id="${name}" xmlns="http://www.w3.org/2000/svg">
173
+ <svg x="50%" y="50%" width="${emWidth}em" height="${emHeight}em" overflow="visible" viewBox="0 0 ${width} ${height}">
174
+ <svg x="${-width / 2}" y="${-height / 2}">${src}</svg>
175
+ </svg>
176
+ </g>`.trim(),
177
+ };
114
178
  }
115
179
 
116
180
  /**
117
181
  * Generated bundle index. Do not edit.
118
182
  */
119
183
 
120
- export { convertAllCompileFileToAllFile, deleteAllToCompileFile, postPrettierFormat, prepareAllToCompileFile, rollupSvgo };
184
+ export { convertAllCompileFileToAllFile, deleteAllToCompileFile, postPrettierFormat, prepareAllToCompileFile, processIcons, rollupSvgo };
121
185
  //# sourceMappingURL=taiga-ui-icons-scripts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-icons-scripts.js","sources":["ng://@taiga-ui/icons/scripts/rollup-svgo.ts","ng://@taiga-ui/icons/scripts/convert-all-compile-file-to-all-file.ts","ng://@taiga-ui/icons/scripts/delete-all-to-compile-file.ts","ng://@taiga-ui/icons/scripts/post-prettier-format.ts","ng://@taiga-ui/icons/scripts/prepare-all-to-compile-file.ts","ng://@taiga-ui/icons/scripts/taiga-ui-icons-scripts.ts"],"sourcesContent":["import {createFilter} from '@rollup/pluginutils';\nimport {Plugin, TransformResult} from 'rollup';\nimport {optimize, OptimizedSvg, OptimizeOptions} from 'svgo';\n\nexport interface RollupSvgoConfig {\n readonly include?: string;\n\n readonly exclude?: string;\n\n readonly options?: OptimizeOptions;\n}\n\nexport function rollupSvgo({\n include = '**/*.svg',\n exclude,\n options,\n}: RollupSvgoConfig = {}): Plugin {\n const filter = createFilter(include, exclude);\n\n return {\n name: 'rollupSvgo',\n async transform(svgString: string, id: string): Promise<TransformResult> {\n const skip: boolean = !filter(id);\n\n if (skip) {\n console.info('\\x1b[33m%s\\x1b[0m', '[skip]', id);\n\n return;\n }\n\n let optimizedSvg: OptimizedSvg | null = null;\n\n try {\n optimizedSvg = await optimize(svgString, {path: id, ...options});\n\n console.info('\\x1b[32m%s\\x1b[0m', '[success]', id);\n } catch (err) {\n console.error(\n '\\x1b[31m%s\\x1b[0m',\n '[error]',\n id,\n `\\n${svgString}`,\n `\\n${err}`,\n );\n\n process.exit(1);\n }\n\n return {\n code: `export default ${JSON.stringify(optimizedSvg?.data)}`,\n map: {mappings: ''},\n };\n },\n };\n}\n","import {rollup, RollupOptions} from 'rollup';\nimport typescript, {RPT2Options} from 'rollup-plugin-typescript2';\n\nimport {rollupSvgo} from './rollup-svgo';\n\nconst banner = `\n/**\n * @description:\n * DO NOT CHANGE THIS FILE. AUTOGENERATED\n */\n`;\n\ninterface Options {\n prt2Options?: RPT2Options;\n from: string;\n to: string;\n}\n\nexport async function convertAllCompileFileToAllFile(config: Options): Promise<void> {\n const {from, to, prt2Options} = config;\n\n const inputOptions: RollupOptions = {\n input: from,\n output: {preferConst: true},\n plugins: [\n typescript(prt2Options ?? {cacheRoot: 'node_modules/.cache/.rpt2_cache'}),\n rollupSvgo({\n include: '**/*.svg',\n options: {\n plugins: [\n {\n name: 'preset-default',\n params: {\n overrides: {\n removeViewBox: false,\n collapseGroups: false,\n cleanupIDs: false,\n removeUnknownsAndDefaults: false,\n },\n },\n },\n ],\n },\n }),\n ],\n };\n\n const bundle = await rollup(inputOptions);\n\n await bundle.write({\n banner,\n file: to,\n format: 'es',\n preferConst: true,\n });\n\n /**\n * @note:\n * The rollup bundle must be closed once `write` is finished to let plugins clean up their external\n * processes or services via the `closeBundle` hook, otherwise it can lead to memory leaks.\n */\n await bundle.close();\n}\n","import {unlinkSync} from 'fs';\n\nexport function deleteAllToCompileFile(allToCompilePath: string | string[]): void {\n if (Array.isArray(allToCompilePath)) {\n allToCompilePath.forEach(file => unlinkSync(file));\n } else {\n unlinkSync(allToCompilePath);\n }\n}\n","import {readFileSync, writeFileSync} from 'fs';\nimport prettier from 'prettier';\n\nexport function postPrettierFormat(filePath: string, prettierConfig?: string): void {\n const bundledBody = readFileSync(filePath, 'utf8');\n const options = prettier.resolveConfig.sync(prettierConfig ?? 'prettier.config.js');\n const formatted = prettier.format(bundledBody, {...options, parser: 'typescript'});\n\n writeFileSync(filePath, formatted);\n}\n","import {readdirSync, writeFileSync} from 'fs';\n\nexport function prepareAllToCompileFile(\n iconsSrc: string,\n allToCompilePath: string,\n): void {\n const icons: string[] = readdirSync(iconsSrc).filter(\n file => file.split('.').pop() === 'svg',\n );\n\n let importDeclarations = '';\n let exportDeclarations = '';\n\n for (const iconPath of icons) {\n const fileName = iconPath.split('.').shift();\n\n importDeclarations += `import ${fileName} from './src/${fileName}.svg';\\n`;\n exportDeclarations += `${fileName}, `;\n }\n\n writeFileSync(\n allToCompilePath,\n `${importDeclarations} \\n export { ${exportDeclarations} }`,\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-icons-scripts.js","sources":["ng://@taiga-ui/icons/scripts/rollup-svgo.ts","ng://@taiga-ui/icons/scripts/convert-all-compile-file-to-all-file.ts","ng://@taiga-ui/icons/scripts/delete-all-to-compile-file.ts","ng://@taiga-ui/icons/scripts/post-prettier-format.ts","ng://@taiga-ui/icons/scripts/prepare-all-to-compile-file.ts","ng://@taiga-ui/icons/scripts/process-icons.ts","ng://@taiga-ui/icons/scripts/taiga-ui-icons-scripts.ts"],"sourcesContent":["import {createFilter} from '@rollup/pluginutils';\nimport {Plugin, TransformResult} from 'rollup';\nimport {optimize, OptimizedError, OptimizedSvg, OptimizeOptions} from 'svgo';\n\ntype SvgoResult = OptimizedSvg | OptimizedError;\n\nexport interface RollupSvgoConfig {\n readonly include?: string;\n\n readonly exclude?: string;\n\n readonly options?: OptimizeOptions;\n}\n\nexport function rollupSvgo({\n include = '**/*.svg',\n exclude,\n options,\n}: RollupSvgoConfig = {}): Plugin {\n const filter = createFilter(include, exclude);\n\n return {\n name: 'rollupSvgo',\n async transform(svgString: string, path: string): Promise<TransformResult> {\n const skip = !filter(path);\n\n if (skip) {\n console.info('\\x1b[33m%s\\x1b[0m', '[skip]', path);\n\n return;\n }\n\n let data: unknown;\n let error: unknown;\n\n try {\n const result: SvgoResult = await optimize(svgString, {path, ...options});\n\n data = (result as OptimizedSvg)?.data || {};\n error = result.error;\n } catch (err) {\n error = err.message;\n }\n\n if (error) {\n console.error(\n '\\x1b[31m%s\\x1b[0m',\n '[error]',\n path,\n `\\n${svgString}`,\n `\\n${error}`,\n );\n process.exit(1);\n }\n\n console.info('\\x1b[32m%s\\x1b[0m', '[success]', path);\n\n return {\n code: `export default ${JSON.stringify(data)}`,\n map: {mappings: ''},\n };\n },\n };\n}\n","import {rollup, RollupOptions} from 'rollup';\nimport typescript, {RPT2Options} from 'rollup-plugin-typescript2';\n\nimport {rollupSvgo} from './rollup-svgo';\n\nconst banner = `\n/**\n * @description:\n * DO NOT CHANGE THIS FILE. AUTOGENERATED\n */\n`;\n\ninterface Options {\n prt2Options?: RPT2Options;\n from: string;\n to: string;\n}\n\nexport async function convertAllCompileFileToAllFile(config: Options): Promise<void> {\n const {from, to, prt2Options} = config;\n\n const inputOptions: RollupOptions = {\n input: from,\n output: {preferConst: true},\n plugins: [\n typescript(prt2Options ?? {cacheRoot: 'node_modules/.cache/.rpt2_cache'}),\n rollupSvgo({\n include: '**/*.svg',\n options: {\n plugins: [\n {\n name: 'preset-default',\n params: {\n overrides: {\n removeViewBox: false,\n collapseGroups: false,\n cleanupIDs: false,\n removeUnknownsAndDefaults: false,\n },\n },\n },\n ],\n },\n }),\n ],\n };\n\n const bundle = await rollup(inputOptions);\n\n await bundle.write({\n banner,\n file: to,\n format: 'es',\n preferConst: true,\n });\n\n /**\n * @note:\n * The rollup bundle must be closed once `write` is finished to let plugins clean up their external\n * processes or services via the `closeBundle` hook, otherwise it can lead to memory leaks.\n */\n await bundle.close();\n}\n","import {unlinkSync} from 'fs';\n\nexport function deleteAllToCompileFile(allToCompilePath: string | string[]): void {\n if (Array.isArray(allToCompilePath)) {\n allToCompilePath.forEach(file => unlinkSync(file));\n } else {\n unlinkSync(allToCompilePath);\n }\n}\n","import {readFileSync, writeFileSync} from 'fs';\nimport prettier from 'prettier';\n\nexport function postPrettierFormat(filePath: string, prettierConfig?: string): void {\n const bundledBody = readFileSync(filePath, 'utf8');\n const options = prettier.resolveConfig.sync(prettierConfig ?? 'prettier.config.js');\n const formatted = prettier.format(bundledBody, {...options, parser: 'typescript'});\n\n writeFileSync(filePath, formatted);\n}\n","import {readdirSync, writeFileSync} from 'fs';\n\nexport function prepareAllToCompileFile(iconsSrc: string, entryPointTs: string): void {\n const icons: string[] = readdirSync(iconsSrc).filter(\n file => file.split('.').pop() === 'svg',\n );\n\n let importDeclarations = '';\n let exportDeclarations = '';\n\n for (const iconPath of icons) {\n const fileName = iconPath.split('.').shift();\n\n importDeclarations += `import ${fileName} from './src/${fileName}.svg';\\n`;\n exportDeclarations += `${fileName}, `;\n }\n\n writeFileSync(\n entryPointTs,\n `${importDeclarations} \\n export { ${exportDeclarations} }`,\n );\n}\n","import fs from 'fs';\nimport {parse} from 'path';\n\nconst START = '<svg';\nconst WIDTH_SEARCH = 'width=\"';\nconst HEIGHT_SEARCH = 'height=\"';\n\ninterface WrappedContent {\n height: string;\n width: string;\n src: string;\n}\n\ntype ContentInterceptor = (src: string) => string;\n\nexport function processIcons(files: string[], interceptor?: ContentInterceptor): void {\n for (const file of files) {\n const baseContent = String(fs.readFileSync(file));\n const src = interceptor ? interceptor(baseContent) : baseContent;\n\n const name = parse(file).base.replace('.svg', '');\n\n if (src.includes(`id=\"${name}\"`)) {\n console.info('\\x1b[33m%s\\x1b[0m', `[skip]:`, file);\n continue;\n }\n\n const wrapped = wrapIcon(src, name);\n\n const final =\n typeof wrapped === 'string'\n ? wrapped.replace(\n START,\n `<svg xmlns=\"http://www.w3.org/2000/svg\"><g id=\"${name}\" xmlns=\"http://www.w3.org/2000/svg\"><svg`,\n ) + '</g></svg>'\n : `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"${wrapped.width}\" height=\"${wrapped.height}\">${wrapped.src}</svg>`;\n\n fs.writeFileSync(file, final);\n\n console.info('\\x1b[32m%s\\x1b[0m', `[preprocessed]:`, file);\n }\n}\n\nfunction wrapIcon(source: string, name: string): string | WrappedContent {\n const src = source.substring(source.indexOf(START));\n const attributes = src.substring(0, src.indexOf('>'));\n\n if (\n !attributes ||\n !attributes.includes(WIDTH_SEARCH) ||\n !attributes.includes(HEIGHT_SEARCH)\n ) {\n return src;\n }\n\n const indexOfWidth = attributes.indexOf(WIDTH_SEARCH);\n const indexOfHeight = attributes.indexOf(HEIGHT_SEARCH);\n const widthOffset = indexOfWidth + WIDTH_SEARCH.length;\n const heightOffset = indexOfHeight + HEIGHT_SEARCH.length;\n const widthString = attributes.substring(\n widthOffset,\n attributes.indexOf('\"', widthOffset),\n );\n const heightString = attributes.substring(\n heightOffset,\n attributes.indexOf('\"', heightOffset),\n );\n\n if (\n !heightString ||\n !widthString ||\n widthString.includes('%') ||\n heightString.includes('%')\n ) {\n return src.replace(START, `<svg id=\"${name}\"`);\n }\n\n const width = parseInt(widthString, 10);\n const height = parseInt(heightString, 10);\n const emWidth = width / 16;\n const emHeight = height / 16;\n\n return {\n width: `${emWidth}em`,\n height: `${emHeight}em`,\n src: `\n <g id=\"${name}\" xmlns=\"http://www.w3.org/2000/svg\">\n <svg x=\"50%\" y=\"50%\" width=\"${emWidth}em\" height=\"${emHeight}em\" overflow=\"visible\" viewBox=\"0 0 ${width} ${height}\">\n <svg x=\"${-width / 2}\" y=\"${-height / 2}\">${src}</svg>\n </svg>\n </g>`.trim(),\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}