@iconify/tools 2.1.0-beta.3 → 2.1.0-beta.6
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/lib/download/git/index.cjs +1 -2
- package/lib/download/git/index.mjs +1 -2
- package/lib/download/git/reset.cjs +1 -2
- package/lib/download/git/reset.mjs +1 -2
- package/lib/download/index.cjs +1 -2
- package/lib/download/index.mjs +1 -2
- package/lib/icon-set/index.cjs +2 -6
- package/lib/icon-set/index.mjs +2 -6
- package/lib/icon-set/merge.cjs +4 -5
- package/lib/icon-set/merge.mjs +4 -5
- package/lib/import/directory.cjs +3 -3
- package/lib/import/directory.mjs +3 -3
- package/lib/import/figma/index.cjs +3 -3
- package/lib/import/figma/index.mjs +3 -3
- package/lib/index.cjs +3 -2
- package/lib/index.d.ts +1 -0
- package/lib/index.mjs +2 -2
- package/lib/svg/cleanup/root-style.cjs +24 -0
- package/lib/svg/cleanup/root-style.d.ts +16 -0
- package/lib/svg/cleanup/root-style.mjs +20 -0
- package/lib/svg/cleanup/root-svg.cjs +2 -2
- package/lib/svg/cleanup/root-svg.d.ts +1 -1
- package/lib/svg/cleanup/root-svg.mjs +2 -2
- package/lib/svg/cleanup.cjs +3 -1
- package/lib/svg/cleanup.mjs +3 -1
- package/lib/svg/index.cjs +1 -8
- package/lib/svg/index.mjs +2 -9
- package/lib/svg/parse-style.cjs +1 -1
- package/lib/svg/parse-style.mjs +1 -1
- package/package.json +6 -2
|
@@ -13,14 +13,13 @@ require('path');
|
|
|
13
13
|
require('child_process');
|
|
14
14
|
require('cheerio');
|
|
15
15
|
require('@iconify/utils');
|
|
16
|
-
require('@iconify/utils/lib/icon/defaults');
|
|
17
16
|
require('../../svg/data/attributes.cjs');
|
|
18
17
|
require('../../svg/data/tags.cjs');
|
|
19
18
|
require('../../svg/cleanup/bad-tags.cjs');
|
|
20
19
|
require('../../svg/parse.cjs');
|
|
21
20
|
require('svgo');
|
|
21
|
+
require('@iconify/utils/lib/icon/defaults');
|
|
22
22
|
require('@iconify/utils/lib/svg/build');
|
|
23
|
-
require('@iconify/utils/lib/customisations/defaults');
|
|
24
23
|
require('@iconify/utils/lib/icon-set/minify');
|
|
25
24
|
require('@iconify/utils/lib/icon-set/convert-info');
|
|
26
25
|
require('../../icon-set/props.cjs');
|
|
@@ -9,14 +9,13 @@ import 'path';
|
|
|
9
9
|
import 'child_process';
|
|
10
10
|
import 'cheerio';
|
|
11
11
|
import '@iconify/utils';
|
|
12
|
-
import '@iconify/utils/lib/icon/defaults';
|
|
13
12
|
import '../../svg/data/attributes.mjs';
|
|
14
13
|
import '../../svg/data/tags.mjs';
|
|
15
14
|
import '../../svg/cleanup/bad-tags.mjs';
|
|
16
15
|
import '../../svg/parse.mjs';
|
|
17
16
|
import 'svgo';
|
|
17
|
+
import '@iconify/utils/lib/icon/defaults';
|
|
18
18
|
import '@iconify/utils/lib/svg/build';
|
|
19
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
20
19
|
import '@iconify/utils/lib/icon-set/minify';
|
|
21
20
|
import '@iconify/utils/lib/icon-set/convert-info';
|
|
22
21
|
import '../../icon-set/props.mjs';
|
|
@@ -4,13 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
require('cheerio');
|
|
6
6
|
require('@iconify/utils');
|
|
7
|
-
require('@iconify/utils/lib/icon/defaults');
|
|
8
7
|
require('../../svg/data/attributes.cjs');
|
|
9
8
|
require('../../svg/data/tags.cjs');
|
|
10
9
|
require('../../svg/cleanup/bad-tags.cjs');
|
|
11
10
|
require('svgo');
|
|
11
|
+
require('@iconify/utils/lib/icon/defaults');
|
|
12
12
|
require('@iconify/utils/lib/svg/build');
|
|
13
|
-
require('@iconify/utils/lib/customisations/defaults');
|
|
14
13
|
require('@iconify/utils/lib/icon-set/minify');
|
|
15
14
|
require('@iconify/utils/lib/icon-set/convert-info');
|
|
16
15
|
require('../../icon-set/props.cjs');
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import 'cheerio';
|
|
2
2
|
import '@iconify/utils';
|
|
3
|
-
import '@iconify/utils/lib/icon/defaults';
|
|
4
3
|
import '../../svg/data/attributes.mjs';
|
|
5
4
|
import '../../svg/data/tags.mjs';
|
|
6
5
|
import '../../svg/cleanup/bad-tags.mjs';
|
|
7
6
|
import 'svgo';
|
|
7
|
+
import '@iconify/utils/lib/icon/defaults';
|
|
8
8
|
import '@iconify/utils/lib/svg/build';
|
|
9
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
10
9
|
import '@iconify/utils/lib/icon-set/minify';
|
|
11
10
|
import '@iconify/utils/lib/icon-set/convert-info';
|
|
12
11
|
import '../../icon-set/props.mjs';
|
package/lib/download/index.cjs
CHANGED
|
@@ -28,14 +28,13 @@ require('./git/hash.cjs');
|
|
|
28
28
|
require('./git/reset.cjs');
|
|
29
29
|
require('cheerio');
|
|
30
30
|
require('@iconify/utils');
|
|
31
|
-
require('@iconify/utils/lib/icon/defaults');
|
|
32
31
|
require('../svg/data/attributes.cjs');
|
|
33
32
|
require('../svg/data/tags.cjs');
|
|
34
33
|
require('../svg/cleanup/bad-tags.cjs');
|
|
35
34
|
require('../svg/parse.cjs');
|
|
36
35
|
require('svgo');
|
|
36
|
+
require('@iconify/utils/lib/icon/defaults');
|
|
37
37
|
require('@iconify/utils/lib/svg/build');
|
|
38
|
-
require('@iconify/utils/lib/customisations/defaults');
|
|
39
38
|
require('@iconify/utils/lib/icon-set/minify');
|
|
40
39
|
require('@iconify/utils/lib/icon-set/convert-info');
|
|
41
40
|
require('../icon-set/props.cjs');
|
package/lib/download/index.mjs
CHANGED
|
@@ -24,14 +24,13 @@ import './git/hash.mjs';
|
|
|
24
24
|
import './git/reset.mjs';
|
|
25
25
|
import 'cheerio';
|
|
26
26
|
import '@iconify/utils';
|
|
27
|
-
import '@iconify/utils/lib/icon/defaults';
|
|
28
27
|
import '../svg/data/attributes.mjs';
|
|
29
28
|
import '../svg/data/tags.mjs';
|
|
30
29
|
import '../svg/cleanup/bad-tags.mjs';
|
|
31
30
|
import '../svg/parse.mjs';
|
|
32
31
|
import 'svgo';
|
|
32
|
+
import '@iconify/utils/lib/icon/defaults';
|
|
33
33
|
import '@iconify/utils/lib/svg/build';
|
|
34
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
35
34
|
import '@iconify/utils/lib/icon-set/minify';
|
|
36
35
|
import '@iconify/utils/lib/icon-set/convert-info';
|
|
37
36
|
import '../icon-set/props.mjs';
|
package/lib/icon-set/index.cjs
CHANGED
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const defaults = require('@iconify/utils/lib/icon/defaults');
|
|
6
6
|
const build = require('@iconify/utils/lib/svg/build');
|
|
7
|
-
const defaults$1 = require('@iconify/utils/lib/customisations/defaults');
|
|
8
7
|
const minify = require('@iconify/utils/lib/icon-set/minify');
|
|
9
8
|
const convertInfo = require('@iconify/utils/lib/icon-set/convert-info');
|
|
10
9
|
const iconSet_props = require('./props.cjs');
|
|
@@ -201,14 +200,11 @@ class IconSet {
|
|
|
201
200
|
width: "auto",
|
|
202
201
|
height: "auto"
|
|
203
202
|
}) {
|
|
204
|
-
const item = this.resolve(name
|
|
203
|
+
const item = this.resolve(name);
|
|
205
204
|
if (!item) {
|
|
206
205
|
return null;
|
|
207
206
|
}
|
|
208
|
-
const result = build.iconToSVG(item,
|
|
209
|
-
...defaults$1.defaultIconCustomisations,
|
|
210
|
-
...customisations
|
|
211
|
-
});
|
|
207
|
+
const result = build.iconToSVG(item, customisations);
|
|
212
208
|
const attributes = Object.keys(result.attributes).map((key) => ` ${key}="${result.attributes[key]}"`).join("");
|
|
213
209
|
return `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"${attributes}>${result.body}</svg>`;
|
|
214
210
|
}
|
package/lib/icon-set/index.mjs
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { defaultIconDimensions, defaultIconProps } from '@iconify/utils/lib/icon/defaults';
|
|
2
2
|
import { iconToSVG } from '@iconify/utils/lib/svg/build';
|
|
3
|
-
import { defaultIconCustomisations } from '@iconify/utils/lib/customisations/defaults';
|
|
4
3
|
import { minifyIconSet } from '@iconify/utils/lib/icon-set/minify';
|
|
5
4
|
import { convertIconSetInfo } from '@iconify/utils/lib/icon-set/convert-info';
|
|
6
5
|
import { filterProps, defaultCommonProps } from './props.mjs';
|
|
@@ -197,14 +196,11 @@ class IconSet {
|
|
|
197
196
|
width: "auto",
|
|
198
197
|
height: "auto"
|
|
199
198
|
}) {
|
|
200
|
-
const item = this.resolve(name
|
|
199
|
+
const item = this.resolve(name);
|
|
201
200
|
if (!item) {
|
|
202
201
|
return null;
|
|
203
202
|
}
|
|
204
|
-
const result = iconToSVG(item,
|
|
205
|
-
...defaultIconCustomisations,
|
|
206
|
-
...customisations
|
|
207
|
-
});
|
|
203
|
+
const result = iconToSVG(item, customisations);
|
|
208
204
|
const attributes = Object.keys(result.attributes).map((key) => ` ${key}="${result.attributes[key]}"`).join("");
|
|
209
205
|
return `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"${attributes}>${result.body}</svg>`;
|
|
210
206
|
}
|
package/lib/icon-set/merge.cjs
CHANGED
|
@@ -7,7 +7,6 @@ const iconSet_match = require('./match.cjs');
|
|
|
7
7
|
const iconSet_modified = require('./modified.cjs');
|
|
8
8
|
require('@iconify/utils/lib/icon/defaults');
|
|
9
9
|
require('@iconify/utils/lib/svg/build');
|
|
10
|
-
require('@iconify/utils/lib/customisations/defaults');
|
|
11
10
|
require('@iconify/utils/lib/icon-set/minify');
|
|
12
11
|
require('@iconify/utils/lib/icon-set/convert-info');
|
|
13
12
|
require('./props.cjs');
|
|
@@ -79,10 +78,10 @@ function mergeIconSets(oldIcons, newIcons) {
|
|
|
79
78
|
for (const name in oldEntries) {
|
|
80
79
|
add(name);
|
|
81
80
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
if (
|
|
85
|
-
mergedIcons.updateLastModified(
|
|
81
|
+
if (oldIcons.lastModified && !iconSet_modified.hasIconDataBeenModified(oldIcons, mergedIcons)) {
|
|
82
|
+
mergedIcons.updateLastModified(oldIcons.lastModified);
|
|
83
|
+
} else if (newIcons.lastModified && !iconSet_modified.hasIconDataBeenModified(newIcons, mergedIcons)) {
|
|
84
|
+
mergedIcons.updateLastModified(newIcons.lastModified);
|
|
86
85
|
}
|
|
87
86
|
return mergedIcons;
|
|
88
87
|
}
|
package/lib/icon-set/merge.mjs
CHANGED
|
@@ -3,7 +3,6 @@ import { findMatchingIcon } from './match.mjs';
|
|
|
3
3
|
import { hasIconDataBeenModified } from './modified.mjs';
|
|
4
4
|
import '@iconify/utils/lib/icon/defaults';
|
|
5
5
|
import '@iconify/utils/lib/svg/build';
|
|
6
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
7
6
|
import '@iconify/utils/lib/icon-set/minify';
|
|
8
7
|
import '@iconify/utils/lib/icon-set/convert-info';
|
|
9
8
|
import './props.mjs';
|
|
@@ -75,10 +74,10 @@ function mergeIconSets(oldIcons, newIcons) {
|
|
|
75
74
|
for (const name in oldEntries) {
|
|
76
75
|
add(name);
|
|
77
76
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
if (
|
|
81
|
-
mergedIcons.updateLastModified(
|
|
77
|
+
if (oldIcons.lastModified && !hasIconDataBeenModified(oldIcons, mergedIcons)) {
|
|
78
|
+
mergedIcons.updateLastModified(oldIcons.lastModified);
|
|
79
|
+
} else if (newIcons.lastModified && !hasIconDataBeenModified(newIcons, mergedIcons)) {
|
|
80
|
+
mergedIcons.updateLastModified(newIcons.lastModified);
|
|
82
81
|
}
|
|
83
82
|
return mergedIcons;
|
|
84
83
|
}
|
package/lib/import/directory.cjs
CHANGED
|
@@ -10,7 +10,6 @@ const svg_index = require('../svg/index.cjs');
|
|
|
10
10
|
const svg_cleanup = require('../svg/cleanup.cjs');
|
|
11
11
|
require('@iconify/utils/lib/icon/defaults');
|
|
12
12
|
require('@iconify/utils/lib/svg/build');
|
|
13
|
-
require('@iconify/utils/lib/customisations/defaults');
|
|
14
13
|
require('@iconify/utils/lib/icon-set/minify');
|
|
15
14
|
require('@iconify/utils/lib/icon-set/convert-info');
|
|
16
15
|
require('../icon-set/props.cjs');
|
|
@@ -28,11 +27,12 @@ require('../css/parser/tokens.cjs');
|
|
|
28
27
|
require('../css/parser/error.cjs');
|
|
29
28
|
require('../css/parser/strings.cjs');
|
|
30
29
|
require('../css/parser/text.cjs');
|
|
31
|
-
require('../svg/cleanup/root-
|
|
32
|
-
require('../svg/cleanup/svgo-style.cjs');
|
|
30
|
+
require('../svg/cleanup/root-style.cjs');
|
|
33
31
|
require('../svg/parse-style.cjs');
|
|
34
32
|
require('../css/parser/export.cjs');
|
|
35
33
|
require('../css/parser/tree.cjs');
|
|
34
|
+
require('../svg/cleanup/root-svg.cjs');
|
|
35
|
+
require('../svg/cleanup/svgo-style.cjs');
|
|
36
36
|
require('../optimise/svgo.cjs');
|
|
37
37
|
require('svgo');
|
|
38
38
|
|
package/lib/import/directory.mjs
CHANGED
|
@@ -6,7 +6,6 @@ import { SVG } from '../svg/index.mjs';
|
|
|
6
6
|
import { cleanupSVG } from '../svg/cleanup.mjs';
|
|
7
7
|
import '@iconify/utils/lib/icon/defaults';
|
|
8
8
|
import '@iconify/utils/lib/svg/build';
|
|
9
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
10
9
|
import '@iconify/utils/lib/icon-set/minify';
|
|
11
10
|
import '@iconify/utils/lib/icon-set/convert-info';
|
|
12
11
|
import '../icon-set/props.mjs';
|
|
@@ -24,11 +23,12 @@ import '../css/parser/tokens.mjs';
|
|
|
24
23
|
import '../css/parser/error.mjs';
|
|
25
24
|
import '../css/parser/strings.mjs';
|
|
26
25
|
import '../css/parser/text.mjs';
|
|
27
|
-
import '../svg/cleanup/root-
|
|
28
|
-
import '../svg/cleanup/svgo-style.mjs';
|
|
26
|
+
import '../svg/cleanup/root-style.mjs';
|
|
29
27
|
import '../svg/parse-style.mjs';
|
|
30
28
|
import '../css/parser/export.mjs';
|
|
31
29
|
import '../css/parser/tree.mjs';
|
|
30
|
+
import '../svg/cleanup/root-svg.mjs';
|
|
31
|
+
import '../svg/cleanup/svgo-style.mjs';
|
|
32
32
|
import '../optimise/svgo.mjs';
|
|
33
33
|
import 'svgo';
|
|
34
34
|
|
|
@@ -9,7 +9,6 @@ const import_figma_nodes = require('./nodes.cjs');
|
|
|
9
9
|
const import_figma_query = require('./query.cjs');
|
|
10
10
|
require('@iconify/utils/lib/icon/defaults');
|
|
11
11
|
require('@iconify/utils/lib/svg/build');
|
|
12
|
-
require('@iconify/utils/lib/customisations/defaults');
|
|
13
12
|
require('@iconify/utils/lib/icon-set/minify');
|
|
14
13
|
require('@iconify/utils/lib/icon-set/convert-info');
|
|
15
14
|
require('../../icon-set/props.cjs');
|
|
@@ -27,11 +26,12 @@ require('../../css/parser/tokens.cjs');
|
|
|
27
26
|
require('../../css/parser/error.cjs');
|
|
28
27
|
require('../../css/parser/strings.cjs');
|
|
29
28
|
require('../../css/parser/text.cjs');
|
|
30
|
-
require('../../svg/cleanup/root-
|
|
31
|
-
require('../../svg/cleanup/svgo-style.cjs');
|
|
29
|
+
require('../../svg/cleanup/root-style.cjs');
|
|
32
30
|
require('../../svg/parse-style.cjs');
|
|
33
31
|
require('../../css/parser/export.cjs');
|
|
34
32
|
require('../../css/parser/tree.cjs');
|
|
33
|
+
require('../../svg/cleanup/root-svg.cjs');
|
|
34
|
+
require('../../svg/cleanup/svgo-style.cjs');
|
|
35
35
|
require('../../optimise/svgo.cjs');
|
|
36
36
|
require('svgo');
|
|
37
37
|
require('../../download/api/index.cjs');
|
|
@@ -5,7 +5,6 @@ import { getFigmaIconNodes } from './nodes.mjs';
|
|
|
5
5
|
import { figmaFilesQuery, figmaImagesQuery, figmaDownloadImages } from './query.mjs';
|
|
6
6
|
import '@iconify/utils/lib/icon/defaults';
|
|
7
7
|
import '@iconify/utils/lib/svg/build';
|
|
8
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
9
8
|
import '@iconify/utils/lib/icon-set/minify';
|
|
10
9
|
import '@iconify/utils/lib/icon-set/convert-info';
|
|
11
10
|
import '../../icon-set/props.mjs';
|
|
@@ -23,11 +22,12 @@ import '../../css/parser/tokens.mjs';
|
|
|
23
22
|
import '../../css/parser/error.mjs';
|
|
24
23
|
import '../../css/parser/strings.mjs';
|
|
25
24
|
import '../../css/parser/text.mjs';
|
|
26
|
-
import '../../svg/cleanup/root-
|
|
27
|
-
import '../../svg/cleanup/svgo-style.mjs';
|
|
25
|
+
import '../../svg/cleanup/root-style.mjs';
|
|
28
26
|
import '../../svg/parse-style.mjs';
|
|
29
27
|
import '../../css/parser/export.mjs';
|
|
30
28
|
import '../../css/parser/tree.mjs';
|
|
29
|
+
import '../../svg/cleanup/root-svg.mjs';
|
|
30
|
+
import '../../svg/cleanup/svgo-style.mjs';
|
|
31
31
|
import '../../optimise/svgo.mjs';
|
|
32
32
|
import 'svgo';
|
|
33
33
|
import '../../download/api/index.mjs';
|
package/lib/index.cjs
CHANGED
|
@@ -9,6 +9,7 @@ const svg_analyse = require('./svg/analyse.cjs');
|
|
|
9
9
|
const svg_cleanup = require('./svg/cleanup.cjs');
|
|
10
10
|
const svg_cleanup_attribs = require('./svg/cleanup/attribs.cjs');
|
|
11
11
|
const svg_cleanup_badTags = require('./svg/cleanup/bad-tags.cjs');
|
|
12
|
+
const svg_cleanup_rootStyle = require('./svg/cleanup/root-style.cjs');
|
|
12
13
|
const svg_cleanup_inlineStyle = require('./svg/cleanup/inline-style.cjs');
|
|
13
14
|
const svg_cleanup_rootSvg = require('./svg/cleanup/root-svg.cjs');
|
|
14
15
|
const svg_cleanup_svgoStyle = require('./svg/cleanup/svgo-style.cjs');
|
|
@@ -49,7 +50,6 @@ const misc_bumpVersion = require('./misc/bump-version.cjs');
|
|
|
49
50
|
const download_api_index = require('./download/api/index.cjs');
|
|
50
51
|
require('cheerio');
|
|
51
52
|
require('@iconify/utils');
|
|
52
|
-
require('@iconify/utils/lib/icon/defaults');
|
|
53
53
|
require('./css/parse.cjs');
|
|
54
54
|
require('./css/parser/tokens.cjs');
|
|
55
55
|
require('./css/parser/error.cjs');
|
|
@@ -61,8 +61,8 @@ require('./svg/data/attributes.cjs');
|
|
|
61
61
|
require('./svg/data/tags.cjs');
|
|
62
62
|
require('./svg/analyse/error.cjs');
|
|
63
63
|
require('svgo');
|
|
64
|
+
require('@iconify/utils/lib/icon/defaults');
|
|
64
65
|
require('@iconify/utils/lib/svg/build');
|
|
65
|
-
require('@iconify/utils/lib/customisations/defaults');
|
|
66
66
|
require('@iconify/utils/lib/icon-set/minify');
|
|
67
67
|
require('@iconify/utils/lib/icon-set/convert-info');
|
|
68
68
|
require('./icon-set/props.cjs');
|
|
@@ -96,6 +96,7 @@ exports.analyseSVGStructure = svg_analyse.analyseSVGStructure;
|
|
|
96
96
|
exports.cleanupSVG = svg_cleanup.cleanupSVG;
|
|
97
97
|
exports.removeBadAttributes = svg_cleanup_attribs.removeBadAttributes;
|
|
98
98
|
exports.checkBadTags = svg_cleanup_badTags.checkBadTags;
|
|
99
|
+
exports.cleanupRootStyle = svg_cleanup_rootStyle.cleanupRootStyle;
|
|
99
100
|
exports.cleanupInlineStyle = svg_cleanup_inlineStyle.cleanupInlineStyle;
|
|
100
101
|
exports.cleanupSVGRoot = svg_cleanup_rootSvg.cleanupSVGRoot;
|
|
101
102
|
exports.convertStyleToAttrs = svg_cleanup_svgoStyle.convertStyleToAttrs;
|
package/lib/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export { analyseSVGStructure } from './svg/analyse.js';
|
|
|
5
5
|
export { cleanupSVG } from './svg/cleanup.js';
|
|
6
6
|
export { removeBadAttributes } from './svg/cleanup/attribs.js';
|
|
7
7
|
export { checkBadTags } from './svg/cleanup/bad-tags.js';
|
|
8
|
+
export { cleanupRootStyle } from './svg/cleanup/root-style.js';
|
|
8
9
|
export { cleanupInlineStyle } from './svg/cleanup/inline-style.js';
|
|
9
10
|
export { cleanupSVGRoot } from './svg/cleanup/root-svg.js';
|
|
10
11
|
export { convertStyleToAttrs } from './svg/cleanup/svgo-style.js';
|
package/lib/index.mjs
CHANGED
|
@@ -5,6 +5,7 @@ export { analyseSVGStructure } from './svg/analyse.mjs';
|
|
|
5
5
|
export { cleanupSVG } from './svg/cleanup.mjs';
|
|
6
6
|
export { removeBadAttributes } from './svg/cleanup/attribs.mjs';
|
|
7
7
|
export { checkBadTags } from './svg/cleanup/bad-tags.mjs';
|
|
8
|
+
export { cleanupRootStyle } from './svg/cleanup/root-style.mjs';
|
|
8
9
|
export { cleanupInlineStyle } from './svg/cleanup/inline-style.mjs';
|
|
9
10
|
export { cleanupSVGRoot } from './svg/cleanup/root-svg.mjs';
|
|
10
11
|
export { convertStyleToAttrs } from './svg/cleanup/svgo-style.mjs';
|
|
@@ -45,7 +46,6 @@ export { bumpVersion } from './misc/bump-version.mjs';
|
|
|
45
46
|
export { sendAPIQuery } from './download/api/index.mjs';
|
|
46
47
|
import 'cheerio';
|
|
47
48
|
import '@iconify/utils';
|
|
48
|
-
import '@iconify/utils/lib/icon/defaults';
|
|
49
49
|
import './css/parse.mjs';
|
|
50
50
|
import './css/parser/tokens.mjs';
|
|
51
51
|
import './css/parser/error.mjs';
|
|
@@ -57,8 +57,8 @@ import './svg/data/attributes.mjs';
|
|
|
57
57
|
import './svg/data/tags.mjs';
|
|
58
58
|
import './svg/analyse/error.mjs';
|
|
59
59
|
import 'svgo';
|
|
60
|
+
import '@iconify/utils/lib/icon/defaults';
|
|
60
61
|
import '@iconify/utils/lib/svg/build';
|
|
61
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
62
62
|
import '@iconify/utils/lib/icon-set/minify';
|
|
63
63
|
import '@iconify/utils/lib/icon-set/convert-info';
|
|
64
64
|
import './icon-set/props.mjs';
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const svg_parseStyle = require('../parse-style.cjs');
|
|
6
|
+
require('../../css/parse.cjs');
|
|
7
|
+
require('../../css/parser/tokens.cjs');
|
|
8
|
+
require('../../css/parser/error.cjs');
|
|
9
|
+
require('../../css/parser/strings.cjs');
|
|
10
|
+
require('../../css/parser/text.cjs');
|
|
11
|
+
require('../../css/parser/export.cjs');
|
|
12
|
+
require('../../css/parser/tree.cjs');
|
|
13
|
+
require('../parse.cjs');
|
|
14
|
+
|
|
15
|
+
function cleanupRootStyle(svg) {
|
|
16
|
+
return svg_parseStyle.parseSVGStyle(svg, (item) => {
|
|
17
|
+
if (item.type === "global" && item.selectorTokens.find((token) => token.type === "at-rule")) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
return item.value;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
exports.cleanupRootStyle = cleanupRootStyle;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { SVG } from '../index.js';
|
|
2
|
+
import { parseSVGStyle } from '../parse-style.js';
|
|
3
|
+
import '../../types-f0980297.js';
|
|
4
|
+
import '@iconify/utils/lib/customisations/defaults';
|
|
5
|
+
import '../../css/parser/types.js';
|
|
6
|
+
import '../parse.js';
|
|
7
|
+
import '../../misc/cheerio.js';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Clean up root style
|
|
11
|
+
*
|
|
12
|
+
* This function removes all at-rule tokens, such as `@font-face`, `@media`
|
|
13
|
+
*/
|
|
14
|
+
declare function cleanupRootStyle(svg: SVG): ReturnType<typeof parseSVGStyle>;
|
|
15
|
+
|
|
16
|
+
export { cleanupRootStyle };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { parseSVGStyle } from '../parse-style.mjs';
|
|
2
|
+
import '../../css/parse.mjs';
|
|
3
|
+
import '../../css/parser/tokens.mjs';
|
|
4
|
+
import '../../css/parser/error.mjs';
|
|
5
|
+
import '../../css/parser/strings.mjs';
|
|
6
|
+
import '../../css/parser/text.mjs';
|
|
7
|
+
import '../../css/parser/export.mjs';
|
|
8
|
+
import '../../css/parser/tree.mjs';
|
|
9
|
+
import '../parse.mjs';
|
|
10
|
+
|
|
11
|
+
function cleanupRootStyle(svg) {
|
|
12
|
+
return parseSVGStyle(svg, (item) => {
|
|
13
|
+
if (item.type === "global" && item.selectorTokens.find((token) => token.type === "at-rule")) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
return item.value;
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export { cleanupRootStyle };
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
const svg_data_attributes = require('../data/attributes.cjs');
|
|
6
6
|
const svg_data_tags = require('../data/tags.cjs');
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
function cleanupSVGRoot(svg) {
|
|
9
9
|
const cheerio = svg.$svg;
|
|
10
10
|
const $root = svg.$svg(":root");
|
|
11
11
|
const root = $root.get(0);
|
|
@@ -26,7 +26,7 @@ async function cleanupSVGRoot(svg) {
|
|
|
26
26
|
case "height":
|
|
27
27
|
if (value.slice(-2) === "px") {
|
|
28
28
|
const num = value.replace("px", "");
|
|
29
|
-
if (parseFloat(num)
|
|
29
|
+
if (parseFloat(num).toString() === num) {
|
|
30
30
|
$root.attr(attr, num);
|
|
31
31
|
}
|
|
32
32
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { commonAttributes, badAttributes, junkSVGAttributes, badSoftwareAttributes, badAttributePrefixes, tagSpecificNonPresentationalAttributes, tagSpecificPresentationalAttributes, stylingAttributes } from '../data/attributes.mjs';
|
|
2
2
|
import { reusableElementsWithPalette, maskTags } from '../data/tags.mjs';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
function cleanupSVGRoot(svg) {
|
|
5
5
|
const cheerio = svg.$svg;
|
|
6
6
|
const $root = svg.$svg(":root");
|
|
7
7
|
const root = $root.get(0);
|
|
@@ -22,7 +22,7 @@ async function cleanupSVGRoot(svg) {
|
|
|
22
22
|
case "height":
|
|
23
23
|
if (value.slice(-2) === "px") {
|
|
24
24
|
const num = value.replace("px", "");
|
|
25
|
-
if (parseFloat(num)
|
|
25
|
+
if (parseFloat(num).toString() === num) {
|
|
26
26
|
$root.attr(attr, num);
|
|
27
27
|
}
|
|
28
28
|
}
|
package/lib/svg/cleanup.cjs
CHANGED
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
const svg_cleanup_attribs = require('./cleanup/attribs.cjs');
|
|
6
6
|
const svg_cleanup_badTags = require('./cleanup/bad-tags.cjs');
|
|
7
7
|
const svg_cleanup_inlineStyle = require('./cleanup/inline-style.cjs');
|
|
8
|
+
const svg_cleanup_rootStyle = require('./cleanup/root-style.cjs');
|
|
8
9
|
const svg_cleanup_rootSvg = require('./cleanup/root-svg.cjs');
|
|
9
10
|
const svg_cleanup_svgoStyle = require('./cleanup/svgo-style.cjs');
|
|
10
11
|
require('./data/attributes.cjs');
|
|
@@ -24,9 +25,10 @@ require('svgo');
|
|
|
24
25
|
async function cleanupSVG(svg) {
|
|
25
26
|
await svg_cleanup_inlineStyle.cleanupInlineStyle(svg);
|
|
26
27
|
await svg_cleanup_svgoStyle.convertStyleToAttrs(svg);
|
|
27
|
-
|
|
28
|
+
svg_cleanup_rootSvg.cleanupSVGRoot(svg);
|
|
28
29
|
await svg_cleanup_badTags.checkBadTags(svg);
|
|
29
30
|
await svg_cleanup_attribs.removeBadAttributes(svg);
|
|
31
|
+
await svg_cleanup_rootStyle.cleanupRootStyle(svg);
|
|
30
32
|
}
|
|
31
33
|
|
|
32
34
|
exports.cleanupSVG = cleanupSVG;
|
package/lib/svg/cleanup.mjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { removeBadAttributes } from './cleanup/attribs.mjs';
|
|
2
2
|
import { checkBadTags } from './cleanup/bad-tags.mjs';
|
|
3
3
|
import { cleanupInlineStyle } from './cleanup/inline-style.mjs';
|
|
4
|
+
import { cleanupRootStyle } from './cleanup/root-style.mjs';
|
|
4
5
|
import { cleanupSVGRoot } from './cleanup/root-svg.mjs';
|
|
5
6
|
import { convertStyleToAttrs } from './cleanup/svgo-style.mjs';
|
|
6
7
|
import './data/attributes.mjs';
|
|
@@ -20,9 +21,10 @@ import 'svgo';
|
|
|
20
21
|
async function cleanupSVG(svg) {
|
|
21
22
|
await cleanupInlineStyle(svg);
|
|
22
23
|
await convertStyleToAttrs(svg);
|
|
23
|
-
|
|
24
|
+
cleanupSVGRoot(svg);
|
|
24
25
|
await checkBadTags(svg);
|
|
25
26
|
await removeBadAttributes(svg);
|
|
27
|
+
await cleanupRootStyle(svg);
|
|
26
28
|
}
|
|
27
29
|
|
|
28
30
|
export { cleanupSVG };
|
package/lib/svg/index.cjs
CHANGED
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const cheerio = require('cheerio');
|
|
6
6
|
const utils = require('@iconify/utils');
|
|
7
|
-
const defaults = require('@iconify/utils/lib/icon/defaults');
|
|
8
7
|
|
|
9
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
|
|
10
9
|
|
|
@@ -16,13 +15,7 @@ class SVG {
|
|
|
16
15
|
}
|
|
17
16
|
toString(customisations) {
|
|
18
17
|
if (customisations) {
|
|
19
|
-
const data = utils.iconToSVG(
|
|
20
|
-
...defaults.defaultIconProps,
|
|
21
|
-
...this.getIcon()
|
|
22
|
-
}, {
|
|
23
|
-
...utils.defaultIconCustomisations,
|
|
24
|
-
...customisations
|
|
25
|
-
});
|
|
18
|
+
const data = utils.iconToSVG(this.getIcon(), customisations);
|
|
26
19
|
let svgAttributes = ' xmlns="http://www.w3.org/2000/svg"';
|
|
27
20
|
if (data.body.indexOf("xlink:") !== -1) {
|
|
28
21
|
svgAttributes += ' xmlns:xlink="http://www.w3.org/1999/xlink"';
|
package/lib/svg/index.mjs
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import cheerio from 'cheerio';
|
|
2
|
-
import { iconToSVG,
|
|
3
|
-
import { defaultIconProps } from '@iconify/utils/lib/icon/defaults';
|
|
2
|
+
import { iconToSVG, trimSVG } from '@iconify/utils';
|
|
4
3
|
|
|
5
4
|
class SVG {
|
|
6
5
|
constructor(content) {
|
|
@@ -8,13 +7,7 @@ class SVG {
|
|
|
8
7
|
}
|
|
9
8
|
toString(customisations) {
|
|
10
9
|
if (customisations) {
|
|
11
|
-
const data = iconToSVG(
|
|
12
|
-
...defaultIconProps,
|
|
13
|
-
...this.getIcon()
|
|
14
|
-
}, {
|
|
15
|
-
...defaultIconCustomisations,
|
|
16
|
-
...customisations
|
|
17
|
-
});
|
|
10
|
+
const data = iconToSVG(this.getIcon(), customisations);
|
|
18
11
|
let svgAttributes = ' xmlns="http://www.w3.org/2000/svg"';
|
|
19
12
|
if (data.body.indexOf("xlink:") !== -1) {
|
|
20
13
|
svgAttributes += ' xmlns:xlink="http://www.w3.org/1999/xlink"';
|
package/lib/svg/parse-style.cjs
CHANGED
|
@@ -16,7 +16,7 @@ async function parseSVGStyle(svg, callback) {
|
|
|
16
16
|
const tagName = item.tagName;
|
|
17
17
|
const $element = item.$element;
|
|
18
18
|
if (tagName === "style") {
|
|
19
|
-
const content = $element.
|
|
19
|
+
const content = $element.text();
|
|
20
20
|
if (typeof content !== "string") {
|
|
21
21
|
$element.remove();
|
|
22
22
|
return;
|
package/lib/svg/parse-style.mjs
CHANGED
|
@@ -12,7 +12,7 @@ async function parseSVGStyle(svg, callback) {
|
|
|
12
12
|
const tagName = item.tagName;
|
|
13
13
|
const $element = item.$element;
|
|
14
14
|
if (tagName === "style") {
|
|
15
|
-
const content = $element.
|
|
15
|
+
const content = $element.text();
|
|
16
16
|
if (typeof content !== "string") {
|
|
17
17
|
$element.remove();
|
|
18
18
|
return;
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"type": "module",
|
|
4
4
|
"description": "Collection of functions for cleaning up and parsing SVG for Iconify project",
|
|
5
5
|
"author": "Vjacheslav Trushkin",
|
|
6
|
-
"version": "2.1.0-beta.
|
|
6
|
+
"version": "2.1.0-beta.6",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"bugs": "https://github.com/iconify/tools/issues",
|
|
9
9
|
"homepage": "https://github.com/iconify/tools",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"test": "npm run test:jest-cjs && npm run test:jest-esm && npm run test:jasmine"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@iconify/utils": "^2.0.0-beta.
|
|
28
|
+
"@iconify/utils": "^2.0.0-beta.4",
|
|
29
29
|
"@types/cheerio": "^0.22.30",
|
|
30
30
|
"@types/node-fetch": "^2.5.12",
|
|
31
31
|
"@types/svgo": "^2.6.0",
|
|
@@ -368,6 +368,10 @@
|
|
|
368
368
|
"require": "./lib/svg/cleanup/inline-style.cjs",
|
|
369
369
|
"import": "./lib/svg/cleanup/inline-style.mjs"
|
|
370
370
|
},
|
|
371
|
+
"./lib/svg/cleanup/root-style": {
|
|
372
|
+
"require": "./lib/svg/cleanup/root-style.cjs",
|
|
373
|
+
"import": "./lib/svg/cleanup/root-style.mjs"
|
|
374
|
+
},
|
|
371
375
|
"./lib/svg/cleanup/root-svg": {
|
|
372
376
|
"require": "./lib/svg/cleanup/root-svg.cjs",
|
|
373
377
|
"import": "./lib/svg/cleanup/root-svg.mjs"
|