@iconify/tools 4.2.0 → 5.0.0-beta.1
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/colors/attribs.d.ts +2 -4
- package/lib/colors/attribs.js +33 -0
- package/lib/colors/detect.d.ts +2 -10
- package/lib/colors/detect.js +36 -0
- package/lib/colors/parse.d.ts +12 -19
- package/lib/colors/parse.js +241 -0
- package/lib/colors/validate.d.ts +3 -13
- package/lib/colors/validate.js +31 -0
- package/lib/css/parse.d.ts +1 -2
- package/lib/css/parse.js +18 -0
- package/lib/css/parser/error.d.ts +6 -7
- package/lib/css/parser/error.js +24 -0
- package/lib/css/parser/export.d.ts +2 -4
- package/lib/css/parser/export.js +34 -0
- package/lib/css/parser/strings.d.ts +2 -4
- package/lib/css/parser/strings.js +66 -0
- package/lib/css/parser/text.d.ts +2 -4
- package/lib/css/parser/text.js +103 -0
- package/lib/css/parser/tokens.d.ts +3 -5
- package/lib/css/parser/tokens.js +169 -0
- package/lib/css/parser/tree.d.ts +2 -4
- package/lib/css/parser/tree.js +35 -0
- package/lib/css/parser/types.d.ts +21 -22
- package/lib/css/parser/types.js +1 -0
- package/lib/download/api/cache.d.ts +2 -4
- package/lib/download/api/cache.js +84 -0
- package/lib/download/api/config.d.ts +6 -8
- package/lib/download/api/config.js +10 -0
- package/lib/download/api/download.d.ts +2 -4
- package/lib/download/api/download.js +26 -0
- package/lib/download/api/fetch.d.ts +1 -2
- package/lib/download/api/fetch.js +15 -0
- package/lib/download/api/index.d.ts +2 -4
- package/lib/download/api/index.js +50 -0
- package/lib/download/api/queue.d.ts +9 -10
- package/lib/download/api/queue.js +94 -0
- package/lib/download/api/types.d.ts +6 -7
- package/lib/download/api/types.js +1 -0
- package/lib/download/git/branch.d.ts +2 -4
- package/lib/download/git/branch.js +15 -0
- package/lib/download/git/hash.d.ts +2 -4
- package/lib/download/git/hash.js +10 -0
- package/lib/download/git/index.d.ts +10 -12
- package/lib/download/git/index.js +39 -0
- package/lib/download/git/reset.d.ts +1 -2
- package/lib/download/git/reset.js +12 -0
- package/lib/download/github/hash.d.ts +2 -4
- package/lib/download/github/hash.js +20 -0
- package/lib/download/github/index.d.ts +12 -14
- package/lib/download/github/index.js +66 -0
- package/lib/download/github/types.d.ts +5 -6
- package/lib/download/github/types.js +1 -0
- package/lib/download/gitlab/hash.d.ts +2 -4
- package/lib/download/gitlab/hash.js +19 -0
- package/lib/download/gitlab/index.d.ts +12 -14
- package/lib/download/gitlab/index.js +64 -0
- package/lib/download/gitlab/types.d.ts +5 -6
- package/lib/download/gitlab/types.js +6 -0
- package/lib/download/helpers/untar.d.ts +1 -2
- package/lib/download/helpers/untar.js +13 -0
- package/lib/download/helpers/unzip.d.ts +1 -2
- package/lib/download/helpers/unzip.js +39 -0
- package/lib/download/index.d.ts +15 -20
- package/lib/download/index.js +19 -0
- package/lib/download/npm/index.d.ts +11 -13
- package/lib/download/npm/index.js +51 -0
- package/lib/download/npm/types.d.ts +3 -4
- package/lib/download/npm/types.js +1 -0
- package/lib/download/npm/version.d.ts +4 -6
- package/lib/download/npm/version.js +23 -0
- package/lib/download/types/modified.d.ts +1 -2
- package/lib/download/types/modified.js +1 -0
- package/lib/download/types/sources.d.ts +2 -3
- package/lib/download/types/sources.js +1 -0
- package/lib/export/directory.d.ts +7 -15
- package/lib/export/directory.js +37 -0
- package/lib/export/helpers/custom-files.d.ts +2 -3
- package/lib/export/helpers/custom-files.js +23 -0
- package/lib/export/helpers/prepare.d.ts +3 -4
- package/lib/export/helpers/prepare.js +31 -0
- package/lib/export/helpers/types-version.d.ts +1 -2
- package/lib/export/helpers/types-version.js +19 -0
- package/lib/export/icon-package.d.ts +8 -15
- package/lib/export/icon-package.js +55 -0
- package/lib/export/json-package.d.ts +7 -14
- package/lib/export/json-package.js +129 -0
- package/lib/icon-set/index.d.ts +144 -147
- package/lib/icon-set/index.js +595 -0
- package/lib/icon-set/match.d.ts +3 -11
- package/lib/icon-set/match.js +45 -0
- package/lib/icon-set/merge.d.ts +2 -10
- package/lib/icon-set/merge.js +68 -0
- package/lib/icon-set/modified.d.ts +2 -10
- package/lib/icon-set/modified.js +20 -0
- package/lib/icon-set/props.d.ts +2 -5
- package/lib/icon-set/props.js +19 -0
- package/lib/icon-set/tags.d.ts +7 -15
- package/lib/icon-set/tags.js +53 -0
- package/lib/icon-set/types.d.ts +16 -21
- package/lib/icon-set/types.js +1 -0
- package/lib/import/directory.d.ts +11 -20
- package/lib/import/directory.js +101 -0
- package/lib/import/figma/index.d.ts +4 -15
- package/lib/import/figma/index.js +61 -0
- package/lib/import/figma/nodes.d.ts +4 -14
- package/lib/import/figma/nodes.js +80 -0
- package/lib/import/figma/query.d.ts +9 -19
- package/lib/import/figma/query.js +183 -0
- package/lib/import/figma/types/api.d.ts +23 -35
- package/lib/import/figma/types/nodes.d.ts +12 -21
- package/lib/import/figma/types/options.d.ts +23 -32
- package/lib/import/figma/types/result.d.ts +16 -24
- package/lib/index.d.ts +55 -80
- package/lib/index.js +56 -0
- package/lib/misc/bump-version.d.ts +1 -2
- package/lib/misc/bump-version.js +13 -0
- package/lib/misc/compare-dirs.d.ts +4 -5
- package/lib/misc/compare-dirs.js +65 -0
- package/lib/misc/exec.d.ts +4 -6
- package/lib/misc/exec.js +23 -0
- package/lib/misc/keyword.d.ts +1 -2
- package/lib/misc/keyword.js +12 -0
- package/lib/misc/scan.d.ts +2 -4
- package/lib/misc/scan.js +87 -0
- package/lib/misc/write-json.d.ts +1 -2
- package/lib/misc/write-json.js +10 -0
- package/lib/optimise/figma.d.ts +2 -7
- package/lib/optimise/figma.js +189 -0
- package/lib/optimise/flags.d.ts +2 -7
- package/lib/optimise/flags.js +231 -0
- package/lib/optimise/global-style.d.ts +2 -7
- package/lib/optimise/global-style.js +114 -0
- package/lib/optimise/mask.d.ts +9 -14
- package/lib/optimise/mask.js +83 -0
- package/lib/optimise/origin.d.ts +2 -7
- package/lib/optimise/origin.js +22 -0
- package/lib/optimise/scale.d.ts +2 -7
- package/lib/optimise/scale.js +24 -0
- package/lib/optimise/svgo.d.ts +10 -15
- package/lib/optimise/svgo.js +90 -0
- package/lib/optimise/unwrap.d.ts +2 -7
- package/lib/optimise/unwrap.js +25 -0
- package/lib/svg/analyse/error.d.ts +2 -7
- package/lib/svg/analyse/error.js +12 -0
- package/lib/svg/analyse/types.d.ts +31 -35
- package/lib/svg/analyse/types.js +1 -0
- package/lib/svg/analyse.d.ts +3 -10
- package/lib/svg/analyse.js +256 -0
- package/lib/svg/cleanup/attribs.d.ts +2 -7
- package/lib/svg/cleanup/attribs.js +37 -0
- package/lib/svg/cleanup/bad-tags.d.ts +3 -8
- package/lib/svg/cleanup/bad-tags.js +57 -0
- package/lib/svg/cleanup/inline-style.d.ts +2 -7
- package/lib/svg/cleanup/inline-style.js +80 -0
- package/lib/svg/cleanup/root-style.d.ts +4 -9
- package/lib/svg/cleanup/root-style.js +27 -0
- package/lib/svg/cleanup/root-svg.d.ts +2 -7
- package/lib/svg/cleanup/root-svg.js +73 -0
- package/lib/svg/cleanup/svgo-style.d.ts +2 -7
- package/lib/svg/cleanup/svgo-style.js +24 -0
- package/lib/svg/cleanup.d.ts +3 -8
- package/lib/svg/cleanup.js +20 -0
- package/lib/svg/data/attributes.d.ts +1 -2
- package/lib/svg/data/attributes.js +451 -0
- package/lib/svg/data/tags.d.ts +1 -2
- package/lib/svg/data/tags.js +182 -0
- package/lib/svg/index.d.ts +38 -47
- package/lib/svg/index.js +117 -0
- package/lib/svg/parse-style.d.ts +21 -28
- package/lib/svg/parse-style.js +199 -0
- package/lib/svg/parse.d.ts +8 -16
- package/lib/svg/parse.js +32 -0
- package/package.json +116 -222
- package/lib/colors/attribs.cjs +0 -33
- package/lib/colors/attribs.d.cts +0 -27
- package/lib/colors/attribs.d.mts +0 -27
- package/lib/colors/attribs.mjs +0 -26
- package/lib/colors/detect.cjs +0 -66
- package/lib/colors/detect.d.cts +0 -16
- package/lib/colors/detect.d.mts +0 -16
- package/lib/colors/detect.mjs +0 -64
- package/lib/colors/parse.cjs +0 -300
- package/lib/colors/parse.d.cts +0 -61
- package/lib/colors/parse.d.mts +0 -61
- package/lib/colors/parse.mjs +0 -297
- package/lib/colors/validate.cjs +0 -56
- package/lib/colors/validate.d.cts +0 -21
- package/lib/colors/validate.d.mts +0 -21
- package/lib/colors/validate.mjs +0 -54
- package/lib/css/parse.cjs +0 -24
- package/lib/css/parse.d.cts +0 -6
- package/lib/css/parse.d.mts +0 -6
- package/lib/css/parse.mjs +0 -22
- package/lib/css/parser/error.cjs +0 -23
- package/lib/css/parser/error.d.cts +0 -13
- package/lib/css/parser/error.d.mts +0 -13
- package/lib/css/parser/error.mjs +0 -21
- package/lib/css/parser/export.cjs +0 -37
- package/lib/css/parser/export.d.cts +0 -8
- package/lib/css/parser/export.d.mts +0 -8
- package/lib/css/parser/export.mjs +0 -35
- package/lib/css/parser/strings.cjs +0 -83
- package/lib/css/parser/strings.d.cts +0 -16
- package/lib/css/parser/strings.d.mts +0 -16
- package/lib/css/parser/strings.mjs +0 -80
- package/lib/css/parser/text.cjs +0 -114
- package/lib/css/parser/text.d.cts +0 -20
- package/lib/css/parser/text.d.mts +0 -20
- package/lib/css/parser/text.mjs +0 -109
- package/lib/css/parser/tokens.cjs +0 -206
- package/lib/css/parser/tokens.d.cts +0 -9
- package/lib/css/parser/tokens.d.mts +0 -9
- package/lib/css/parser/tokens.mjs +0 -204
- package/lib/css/parser/tree.cjs +0 -40
- package/lib/css/parser/tree.d.cts +0 -8
- package/lib/css/parser/tree.d.mts +0 -8
- package/lib/css/parser/tree.mjs +0 -38
- package/lib/css/parser/types.cjs +0 -2
- package/lib/css/parser/types.d.cts +0 -52
- package/lib/css/parser/types.d.mts +0 -52
- package/lib/css/parser/types.mjs +0 -1
- package/lib/download/api/cache.cjs +0 -91
- package/lib/download/api/cache.d.cts +0 -20
- package/lib/download/api/cache.d.mts +0 -20
- package/lib/download/api/cache.mjs +0 -86
- package/lib/download/api/config.cjs +0 -11
- package/lib/download/api/config.d.cts +0 -18
- package/lib/download/api/config.d.mts +0 -18
- package/lib/download/api/config.mjs +0 -8
- package/lib/download/api/download.cjs +0 -26
- package/lib/download/api/download.d.cts +0 -8
- package/lib/download/api/download.d.mts +0 -8
- package/lib/download/api/download.mjs +0 -24
- package/lib/download/api/fetch.cjs +0 -12
- package/lib/download/api/fetch.d.cts +0 -10
- package/lib/download/api/fetch.d.mts +0 -10
- package/lib/download/api/fetch.mjs +0 -9
- package/lib/download/api/index.cjs +0 -57
- package/lib/download/api/index.d.cts +0 -8
- package/lib/download/api/index.d.mts +0 -8
- package/lib/download/api/index.mjs +0 -55
- package/lib/download/api/queue.cjs +0 -104
- package/lib/download/api/queue.d.cts +0 -32
- package/lib/download/api/queue.d.mts +0 -32
- package/lib/download/api/queue.mjs +0 -101
- package/lib/download/api/types.cjs +0 -2
- package/lib/download/api/types.d.cts +0 -17
- package/lib/download/api/types.d.mts +0 -17
- package/lib/download/api/types.mjs +0 -1
- package/lib/download/git/branch.cjs +0 -19
- package/lib/download/git/branch.d.cts +0 -8
- package/lib/download/git/branch.d.mts +0 -8
- package/lib/download/git/branch.mjs +0 -17
- package/lib/download/git/hash.cjs +0 -14
- package/lib/download/git/hash.d.cts +0 -8
- package/lib/download/git/hash.d.mts +0 -8
- package/lib/download/git/hash.mjs +0 -12
- package/lib/download/git/index.cjs +0 -76
- package/lib/download/git/index.d.cts +0 -29
- package/lib/download/git/index.d.mts +0 -29
- package/lib/download/git/index.mjs +0 -74
- package/lib/download/git/reset.cjs +0 -36
- package/lib/download/git/reset.d.cts +0 -6
- package/lib/download/git/reset.d.mts +0 -6
- package/lib/download/git/reset.mjs +0 -34
- package/lib/download/github/hash.cjs +0 -31
- package/lib/download/github/hash.d.cts +0 -8
- package/lib/download/github/hash.d.mts +0 -8
- package/lib/download/github/hash.mjs +0 -29
- package/lib/download/github/index.cjs +0 -105
- package/lib/download/github/index.d.cts +0 -31
- package/lib/download/github/index.d.mts +0 -31
- package/lib/download/github/index.mjs +0 -103
- package/lib/download/github/types.cjs +0 -2
- package/lib/download/github/types.d.cts +0 -11
- package/lib/download/github/types.d.mts +0 -11
- package/lib/download/github/types.mjs +0 -1
- package/lib/download/gitlab/hash.cjs +0 -33
- package/lib/download/gitlab/hash.d.cts +0 -8
- package/lib/download/gitlab/hash.d.mts +0 -8
- package/lib/download/gitlab/hash.mjs +0 -31
- package/lib/download/gitlab/index.cjs +0 -105
- package/lib/download/gitlab/index.d.cts +0 -31
- package/lib/download/gitlab/index.d.mts +0 -31
- package/lib/download/gitlab/index.mjs +0 -103
- package/lib/download/gitlab/types.cjs +0 -5
- package/lib/download/gitlab/types.d.cts +0 -15
- package/lib/download/gitlab/types.d.mts +0 -15
- package/lib/download/gitlab/types.mjs +0 -3
- package/lib/download/helpers/untar.cjs +0 -12
- package/lib/download/helpers/untar.d.cts +0 -6
- package/lib/download/helpers/untar.d.mts +0 -6
- package/lib/download/helpers/untar.mjs +0 -10
- package/lib/download/helpers/unzip.cjs +0 -17
- package/lib/download/helpers/unzip.d.cts +0 -6
- package/lib/download/helpers/unzip.d.mts +0 -6
- package/lib/download/helpers/unzip.mjs +0 -11
- package/lib/download/index.cjs +0 -64
- package/lib/download/index.d.cts +0 -48
- package/lib/download/index.d.mts +0 -48
- package/lib/download/index.mjs +0 -62
- package/lib/download/npm/index.cjs +0 -85
- package/lib/download/npm/index.d.cts +0 -30
- package/lib/download/npm/index.d.mts +0 -30
- package/lib/download/npm/index.mjs +0 -83
- package/lib/download/npm/types.cjs +0 -2
- package/lib/download/npm/types.d.cts +0 -9
- package/lib/download/npm/types.d.mts +0 -9
- package/lib/download/npm/types.mjs +0 -1
- package/lib/download/npm/version.cjs +0 -29
- package/lib/download/npm/version.d.cts +0 -16
- package/lib/download/npm/version.d.mts +0 -16
- package/lib/download/npm/version.mjs +0 -26
- package/lib/download/types/modified.cjs +0 -2
- package/lib/download/types/modified.d.cts +0 -6
- package/lib/download/types/modified.d.mts +0 -6
- package/lib/download/types/modified.mjs +0 -1
- package/lib/download/types/sources.cjs +0 -2
- package/lib/download/types/sources.d.cts +0 -12
- package/lib/download/types/sources.d.mts +0 -12
- package/lib/download/types/sources.mjs +0 -1
- package/lib/export/directory.cjs +0 -43
- package/lib/export/directory.d.cts +0 -26
- package/lib/export/directory.d.mts +0 -26
- package/lib/export/directory.mjs +0 -41
- package/lib/export/helpers/custom-files.cjs +0 -26
- package/lib/export/helpers/custom-files.d.cts +0 -12
- package/lib/export/helpers/custom-files.d.mts +0 -12
- package/lib/export/helpers/custom-files.mjs +0 -24
- package/lib/export/helpers/prepare.cjs +0 -34
- package/lib/export/helpers/prepare.d.cts +0 -19
- package/lib/export/helpers/prepare.d.mts +0 -19
- package/lib/export/helpers/prepare.mjs +0 -31
- package/lib/export/helpers/types-version.cjs +0 -12
- package/lib/export/helpers/types-version.d.cts +0 -6
- package/lib/export/helpers/types-version.d.mts +0 -6
- package/lib/export/helpers/types-version.mjs +0 -10
- package/lib/export/icon-package.cjs +0 -56
- package/lib/export/icon-package.d.cts +0 -26
- package/lib/export/icon-package.d.mts +0 -26
- package/lib/export/icon-package.mjs +0 -54
- package/lib/export/json-package.cjs +0 -144
- package/lib/export/json-package.d.cts +0 -25
- package/lib/export/json-package.d.mts +0 -25
- package/lib/export/json-package.mjs +0 -142
- package/lib/icon-set/index.cjs +0 -720
- package/lib/icon-set/index.d.cts +0 -162
- package/lib/icon-set/index.d.mts +0 -162
- package/lib/icon-set/index.mjs +0 -716
- package/lib/icon-set/match.cjs +0 -56
- package/lib/icon-set/match.d.cts +0 -15
- package/lib/icon-set/match.d.mts +0 -15
- package/lib/icon-set/match.mjs +0 -54
- package/lib/icon-set/merge.cjs +0 -87
- package/lib/icon-set/merge.d.cts +0 -14
- package/lib/icon-set/merge.d.mts +0 -14
- package/lib/icon-set/merge.mjs +0 -85
- package/lib/icon-set/modified.cjs +0 -25
- package/lib/icon-set/modified.d.cts +0 -16
- package/lib/icon-set/modified.d.mts +0 -16
- package/lib/icon-set/modified.mjs +0 -23
- package/lib/icon-set/props.cjs +0 -16
- package/lib/icon-set/props.d.cts +0 -13
- package/lib/icon-set/props.d.mts +0 -13
- package/lib/icon-set/props.mjs +0 -13
- package/lib/icon-set/tags.cjs +0 -95
- package/lib/icon-set/tags.d.cts +0 -25
- package/lib/icon-set/tags.d.mts +0 -25
- package/lib/icon-set/tags.mjs +0 -91
- package/lib/icon-set/types.cjs +0 -2
- package/lib/icon-set/types.d.cts +0 -75
- package/lib/icon-set/types.d.mts +0 -75
- package/lib/icon-set/types.mjs +0 -1
- package/lib/import/directory.cjs +0 -169
- package/lib/import/directory.d.cts +0 -52
- package/lib/import/directory.d.mts +0 -52
- package/lib/import/directory.mjs +0 -166
- package/lib/import/figma/index.cjs +0 -115
- package/lib/import/figma/index.d.cts +0 -20
- package/lib/import/figma/index.d.mts +0 -20
- package/lib/import/figma/index.mjs +0 -113
- package/lib/import/figma/nodes.cjs +0 -90
- package/lib/import/figma/nodes.d.cts +0 -18
- package/lib/import/figma/nodes.d.mts +0 -18
- package/lib/import/figma/nodes.mjs +0 -88
- package/lib/import/figma/query.cjs +0 -260
- package/lib/import/figma/query.d.cts +0 -42
- package/lib/import/figma/query.d.mts +0 -42
- package/lib/import/figma/query.mjs +0 -256
- package/lib/import/figma/types/api.cjs +0 -2
- package/lib/import/figma/types/api.d.cts +0 -53
- package/lib/import/figma/types/api.d.mts +0 -53
- package/lib/import/figma/types/api.mjs +0 -1
- package/lib/import/figma/types/nodes.cjs +0 -2
- package/lib/import/figma/types/nodes.d.cts +0 -44
- package/lib/import/figma/types/nodes.d.mts +0 -44
- package/lib/import/figma/types/nodes.mjs +0 -1
- package/lib/import/figma/types/options.cjs +0 -2
- package/lib/import/figma/types/options.d.cts +0 -59
- package/lib/import/figma/types/options.d.mts +0 -59
- package/lib/import/figma/types/options.mjs +0 -1
- package/lib/import/figma/types/result.cjs +0 -2
- package/lib/import/figma/types/result.d.cts +0 -44
- package/lib/import/figma/types/result.d.mts +0 -44
- package/lib/import/figma/types/result.mjs +0 -1
- package/lib/index.cjs +0 -157
- package/lib/index.d.cts +0 -80
- package/lib/index.d.mts +0 -80
- package/lib/index.mjs +0 -91
- package/lib/misc/bump-version.cjs +0 -15
- package/lib/misc/bump-version.d.cts +0 -6
- package/lib/misc/bump-version.d.mts +0 -6
- package/lib/misc/bump-version.mjs +0 -13
- package/lib/misc/cheerio.cjs +0 -2
- package/lib/misc/cheerio.d.cts +0 -10
- package/lib/misc/cheerio.d.mts +0 -10
- package/lib/misc/cheerio.d.ts +0 -10
- package/lib/misc/cheerio.mjs +0 -1
- package/lib/misc/compare-dirs.cjs +0 -75
- package/lib/misc/compare-dirs.d.cts +0 -11
- package/lib/misc/compare-dirs.d.mts +0 -11
- package/lib/misc/compare-dirs.mjs +0 -73
- package/lib/misc/exec.cjs +0 -27
- package/lib/misc/exec.d.cts +0 -12
- package/lib/misc/exec.d.mts +0 -12
- package/lib/misc/exec.mjs +0 -25
- package/lib/misc/keyword.cjs +0 -20
- package/lib/misc/keyword.d.cts +0 -6
- package/lib/misc/keyword.d.mts +0 -6
- package/lib/misc/keyword.mjs +0 -18
- package/lib/misc/scan.cjs +0 -114
- package/lib/misc/scan.d.cts +0 -33
- package/lib/misc/scan.d.mts +0 -33
- package/lib/misc/scan.mjs +0 -111
- package/lib/misc/write-json.cjs +0 -9
- package/lib/misc/write-json.d.cts +0 -6
- package/lib/misc/write-json.d.mts +0 -6
- package/lib/misc/write-json.mjs +0 -7
- package/lib/optimise/figma.cjs +0 -232
- package/lib/optimise/figma.d.cts +0 -14
- package/lib/optimise/figma.d.mts +0 -14
- package/lib/optimise/figma.mjs +0 -230
- package/lib/optimise/flags.cjs +0 -256
- package/lib/optimise/flags.d.cts +0 -11
- package/lib/optimise/flags.d.mts +0 -11
- package/lib/optimise/flags.mjs +0 -254
- package/lib/optimise/global-style.cjs +0 -158
- package/lib/optimise/global-style.d.cts +0 -11
- package/lib/optimise/global-style.d.mts +0 -11
- package/lib/optimise/global-style.mjs +0 -156
- package/lib/optimise/mask.cjs +0 -110
- package/lib/optimise/mask.d.cts +0 -24
- package/lib/optimise/mask.d.mts +0 -24
- package/lib/optimise/mask.mjs +0 -108
- package/lib/optimise/origin.cjs +0 -23
- package/lib/optimise/origin.d.cts +0 -11
- package/lib/optimise/origin.d.mts +0 -11
- package/lib/optimise/origin.mjs +0 -21
- package/lib/optimise/scale.cjs +0 -27
- package/lib/optimise/scale.d.cts +0 -11
- package/lib/optimise/scale.d.mts +0 -11
- package/lib/optimise/scale.mjs +0 -25
- package/lib/optimise/svgo.cjs +0 -107
- package/lib/optimise/svgo.d.cts +0 -37
- package/lib/optimise/svgo.d.mts +0 -37
- package/lib/optimise/svgo.mjs +0 -104
- package/lib/optimise/unwrap.cjs +0 -31
- package/lib/optimise/unwrap.d.cts +0 -11
- package/lib/optimise/unwrap.d.mts +0 -11
- package/lib/optimise/unwrap.mjs +0 -29
- package/lib/svg/analyse/error.cjs +0 -16
- package/lib/svg/analyse/error.d.cts +0 -11
- package/lib/svg/analyse/error.d.mts +0 -11
- package/lib/svg/analyse/error.mjs +0 -14
- package/lib/svg/analyse/types.cjs +0 -2
- package/lib/svg/analyse/types.d.cts +0 -93
- package/lib/svg/analyse/types.d.mts +0 -93
- package/lib/svg/analyse/types.mjs +0 -1
- package/lib/svg/analyse.cjs +0 -303
- package/lib/svg/analyse.d.cts +0 -16
- package/lib/svg/analyse.d.mts +0 -16
- package/lib/svg/analyse.mjs +0 -301
- package/lib/svg/cleanup/attribs.cjs +0 -39
- package/lib/svg/cleanup/attribs.d.cts +0 -11
- package/lib/svg/cleanup/attribs.d.mts +0 -11
- package/lib/svg/cleanup/attribs.mjs +0 -37
- package/lib/svg/cleanup/bad-tags.cjs +0 -69
- package/lib/svg/cleanup/bad-tags.d.cts +0 -17
- package/lib/svg/cleanup/bad-tags.d.mts +0 -17
- package/lib/svg/cleanup/bad-tags.mjs +0 -67
- package/lib/svg/cleanup/inline-style.cjs +0 -97
- package/lib/svg/cleanup/inline-style.d.cts +0 -11
- package/lib/svg/cleanup/inline-style.d.mts +0 -11
- package/lib/svg/cleanup/inline-style.mjs +0 -95
- package/lib/svg/cleanup/root-style.cjs +0 -34
- package/lib/svg/cleanup/root-style.d.cts +0 -17
- package/lib/svg/cleanup/root-style.d.mts +0 -17
- package/lib/svg/cleanup/root-style.mjs +0 -32
- package/lib/svg/cleanup/root-svg.cjs +0 -84
- package/lib/svg/cleanup/root-svg.d.cts +0 -11
- package/lib/svg/cleanup/root-svg.d.mts +0 -11
- package/lib/svg/cleanup/root-svg.mjs +0 -82
- package/lib/svg/cleanup/svgo-style.cjs +0 -43
- package/lib/svg/cleanup/svgo-style.d.cts +0 -11
- package/lib/svg/cleanup/svgo-style.d.mts +0 -11
- package/lib/svg/cleanup/svgo-style.mjs +0 -41
- package/lib/svg/cleanup.cjs +0 -33
- package/lib/svg/cleanup.d.cts +0 -16
- package/lib/svg/cleanup.d.mts +0 -16
- package/lib/svg/cleanup.mjs +0 -31
- package/lib/svg/data/attributes.cjs +0 -373
- package/lib/svg/data/attributes.d.cts +0 -77
- package/lib/svg/data/attributes.d.mts +0 -77
- package/lib/svg/data/attributes.mjs +0 -346
- package/lib/svg/data/tags.cjs +0 -141
- package/lib/svg/data/tags.d.cts +0 -95
- package/lib/svg/data/tags.d.mts +0 -95
- package/lib/svg/data/tags.mjs +0 -117
- package/lib/svg/index.cjs +0 -178
- package/lib/svg/index.d.cts +0 -52
- package/lib/svg/index.d.mts +0 -52
- package/lib/svg/index.mjs +0 -162
- package/lib/svg/parse-style.cjs +0 -243
- package/lib/svg/parse-style.d.cts +0 -59
- package/lib/svg/parse-style.d.mts +0 -59
- package/lib/svg/parse-style.mjs +0 -241
- package/lib/svg/parse.cjs +0 -46
- package/lib/svg/parse.d.cts +0 -31
- package/lib/svg/parse.d.mts +0 -31
- package/lib/svg/parse.mjs +0 -44
package/lib/svg/data/tags.d.cts
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This list is highly opinionated. It is designed to handle icons that can be safely embedded in HTML and linked as external source.
|
|
3
|
-
* Icons cannot have anything that requires external resources, anything that renders inconsistently.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Bad tags
|
|
7
|
-
*
|
|
8
|
-
* Parser should throw error if one of these tags is found
|
|
9
|
-
*
|
|
10
|
-
* List includes text tags because:
|
|
11
|
-
* - it usuaully uses custom font, which makes things much more complex
|
|
12
|
-
* - it renders differently on different operating systems and browsers
|
|
13
|
-
*
|
|
14
|
-
* View tag is not allowed because it requires targeting view by id from external source, making it unusable in embedded icons.
|
|
15
|
-
*/
|
|
16
|
-
declare const badTags: Set<string>;
|
|
17
|
-
/**
|
|
18
|
-
* Deprecated or irrelevant tags
|
|
19
|
-
*
|
|
20
|
-
* Tags that are quietly removed
|
|
21
|
-
*/
|
|
22
|
-
declare const unsupportedTags: Set<string>;
|
|
23
|
-
/**
|
|
24
|
-
* Style
|
|
25
|
-
*/
|
|
26
|
-
declare const styleTag: Set<string>;
|
|
27
|
-
/**
|
|
28
|
-
* Definitions: reusable elements inside
|
|
29
|
-
*/
|
|
30
|
-
declare const defsTag: Set<string>;
|
|
31
|
-
/**
|
|
32
|
-
* Masks: colors are ignored, elements must have id
|
|
33
|
-
*/
|
|
34
|
-
declare const maskTags: Set<string>;
|
|
35
|
-
/**
|
|
36
|
-
* Symbol
|
|
37
|
-
*/
|
|
38
|
-
declare const symbolTag: Set<string>;
|
|
39
|
-
/**
|
|
40
|
-
* SVG shapes
|
|
41
|
-
*/
|
|
42
|
-
declare const shapeTags: Set<string>;
|
|
43
|
-
/**
|
|
44
|
-
* Use
|
|
45
|
-
*/
|
|
46
|
-
declare const useTag: Set<string>;
|
|
47
|
-
/**
|
|
48
|
-
* Groups
|
|
49
|
-
*/
|
|
50
|
-
declare const groupTag: Set<string>;
|
|
51
|
-
/**
|
|
52
|
-
* Marker, should be inside <defs>
|
|
53
|
-
*/
|
|
54
|
-
declare const markerTag: Set<string>;
|
|
55
|
-
/**
|
|
56
|
-
* SVG animations
|
|
57
|
-
*/
|
|
58
|
-
declare const animateTags: Set<string>;
|
|
59
|
-
declare const animateMotionChildTags: Set<string>;
|
|
60
|
-
/**
|
|
61
|
-
* Gradients, should be inside <defs>
|
|
62
|
-
*/
|
|
63
|
-
declare const gradientTags: Set<string>;
|
|
64
|
-
/**
|
|
65
|
-
* Gradient color, must be inside one of gradientTags
|
|
66
|
-
*/
|
|
67
|
-
declare const gradientChildTags: Set<string>;
|
|
68
|
-
/**
|
|
69
|
-
* Pattern, should be inside <defs>
|
|
70
|
-
*/
|
|
71
|
-
declare const patternTag: Set<string>;
|
|
72
|
-
/**
|
|
73
|
-
* Filters
|
|
74
|
-
*/
|
|
75
|
-
declare const filterTag: Set<string>;
|
|
76
|
-
declare const feLightningTags: Set<string>;
|
|
77
|
-
declare const filterChildTags: Set<string>;
|
|
78
|
-
declare const feComponentTransferChildTag: Set<string>;
|
|
79
|
-
declare const feLightningChildTags: Set<string>;
|
|
80
|
-
declare const feMergeChildTags: Set<string>;
|
|
81
|
-
/***** Combination of tags *****/
|
|
82
|
-
/**
|
|
83
|
-
* Reusable elements that use colors
|
|
84
|
-
*
|
|
85
|
-
* Most are used via color attributes like `fill`
|
|
86
|
-
* Some are used via custom attributes like `marker-start`
|
|
87
|
-
* Filter is used via `filter`
|
|
88
|
-
*/
|
|
89
|
-
declare const reusableElementsWithPalette: Set<string>;
|
|
90
|
-
/**
|
|
91
|
-
* All supported tags
|
|
92
|
-
*/
|
|
93
|
-
declare const allValidTags: Set<string>;
|
|
94
|
-
|
|
95
|
-
export { allValidTags, animateMotionChildTags, animateTags, badTags, defsTag, feComponentTransferChildTag, feLightningChildTags, feLightningTags, feMergeChildTags, filterChildTags, filterTag, gradientChildTags, gradientTags, groupTag, markerTag, maskTags, patternTag, reusableElementsWithPalette, shapeTags, styleTag, symbolTag, unsupportedTags, useTag };
|
package/lib/svg/data/tags.d.mts
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This list is highly opinionated. It is designed to handle icons that can be safely embedded in HTML and linked as external source.
|
|
3
|
-
* Icons cannot have anything that requires external resources, anything that renders inconsistently.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Bad tags
|
|
7
|
-
*
|
|
8
|
-
* Parser should throw error if one of these tags is found
|
|
9
|
-
*
|
|
10
|
-
* List includes text tags because:
|
|
11
|
-
* - it usuaully uses custom font, which makes things much more complex
|
|
12
|
-
* - it renders differently on different operating systems and browsers
|
|
13
|
-
*
|
|
14
|
-
* View tag is not allowed because it requires targeting view by id from external source, making it unusable in embedded icons.
|
|
15
|
-
*/
|
|
16
|
-
declare const badTags: Set<string>;
|
|
17
|
-
/**
|
|
18
|
-
* Deprecated or irrelevant tags
|
|
19
|
-
*
|
|
20
|
-
* Tags that are quietly removed
|
|
21
|
-
*/
|
|
22
|
-
declare const unsupportedTags: Set<string>;
|
|
23
|
-
/**
|
|
24
|
-
* Style
|
|
25
|
-
*/
|
|
26
|
-
declare const styleTag: Set<string>;
|
|
27
|
-
/**
|
|
28
|
-
* Definitions: reusable elements inside
|
|
29
|
-
*/
|
|
30
|
-
declare const defsTag: Set<string>;
|
|
31
|
-
/**
|
|
32
|
-
* Masks: colors are ignored, elements must have id
|
|
33
|
-
*/
|
|
34
|
-
declare const maskTags: Set<string>;
|
|
35
|
-
/**
|
|
36
|
-
* Symbol
|
|
37
|
-
*/
|
|
38
|
-
declare const symbolTag: Set<string>;
|
|
39
|
-
/**
|
|
40
|
-
* SVG shapes
|
|
41
|
-
*/
|
|
42
|
-
declare const shapeTags: Set<string>;
|
|
43
|
-
/**
|
|
44
|
-
* Use
|
|
45
|
-
*/
|
|
46
|
-
declare const useTag: Set<string>;
|
|
47
|
-
/**
|
|
48
|
-
* Groups
|
|
49
|
-
*/
|
|
50
|
-
declare const groupTag: Set<string>;
|
|
51
|
-
/**
|
|
52
|
-
* Marker, should be inside <defs>
|
|
53
|
-
*/
|
|
54
|
-
declare const markerTag: Set<string>;
|
|
55
|
-
/**
|
|
56
|
-
* SVG animations
|
|
57
|
-
*/
|
|
58
|
-
declare const animateTags: Set<string>;
|
|
59
|
-
declare const animateMotionChildTags: Set<string>;
|
|
60
|
-
/**
|
|
61
|
-
* Gradients, should be inside <defs>
|
|
62
|
-
*/
|
|
63
|
-
declare const gradientTags: Set<string>;
|
|
64
|
-
/**
|
|
65
|
-
* Gradient color, must be inside one of gradientTags
|
|
66
|
-
*/
|
|
67
|
-
declare const gradientChildTags: Set<string>;
|
|
68
|
-
/**
|
|
69
|
-
* Pattern, should be inside <defs>
|
|
70
|
-
*/
|
|
71
|
-
declare const patternTag: Set<string>;
|
|
72
|
-
/**
|
|
73
|
-
* Filters
|
|
74
|
-
*/
|
|
75
|
-
declare const filterTag: Set<string>;
|
|
76
|
-
declare const feLightningTags: Set<string>;
|
|
77
|
-
declare const filterChildTags: Set<string>;
|
|
78
|
-
declare const feComponentTransferChildTag: Set<string>;
|
|
79
|
-
declare const feLightningChildTags: Set<string>;
|
|
80
|
-
declare const feMergeChildTags: Set<string>;
|
|
81
|
-
/***** Combination of tags *****/
|
|
82
|
-
/**
|
|
83
|
-
* Reusable elements that use colors
|
|
84
|
-
*
|
|
85
|
-
* Most are used via color attributes like `fill`
|
|
86
|
-
* Some are used via custom attributes like `marker-start`
|
|
87
|
-
* Filter is used via `filter`
|
|
88
|
-
*/
|
|
89
|
-
declare const reusableElementsWithPalette: Set<string>;
|
|
90
|
-
/**
|
|
91
|
-
* All supported tags
|
|
92
|
-
*/
|
|
93
|
-
declare const allValidTags: Set<string>;
|
|
94
|
-
|
|
95
|
-
export { allValidTags, animateMotionChildTags, animateTags, badTags, defsTag, feComponentTransferChildTag, feLightningChildTags, feLightningTags, feMergeChildTags, filterChildTags, filterTag, gradientChildTags, gradientTags, groupTag, markerTag, maskTags, patternTag, reusableElementsWithPalette, shapeTags, styleTag, symbolTag, unsupportedTags, useTag };
|
package/lib/svg/data/tags.mjs
DELETED
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
const badTags = /* @__PURE__ */ new Set([
|
|
2
|
-
// Nasty stuff or external resource
|
|
3
|
-
"foreignObject",
|
|
4
|
-
"script",
|
|
5
|
-
"image",
|
|
6
|
-
"feImage",
|
|
7
|
-
// Deprecated
|
|
8
|
-
"animateColor",
|
|
9
|
-
"altGlyph",
|
|
10
|
-
// Text
|
|
11
|
-
"text",
|
|
12
|
-
"tspan",
|
|
13
|
-
"switch",
|
|
14
|
-
"textPath",
|
|
15
|
-
// Font
|
|
16
|
-
"font",
|
|
17
|
-
"font-face",
|
|
18
|
-
"glyph",
|
|
19
|
-
"missing-glyph",
|
|
20
|
-
"hkern",
|
|
21
|
-
"vhern",
|
|
22
|
-
// View
|
|
23
|
-
"view",
|
|
24
|
-
// Link
|
|
25
|
-
"a"
|
|
26
|
-
]);
|
|
27
|
-
const unsupportedTags = /* @__PURE__ */ new Set(["metadata", "desc", "title"]);
|
|
28
|
-
const styleTag = /* @__PURE__ */ new Set(["style"]);
|
|
29
|
-
const defsTag = /* @__PURE__ */ new Set(["defs"]);
|
|
30
|
-
const maskTags = /* @__PURE__ */ new Set(["clipPath", "mask"]);
|
|
31
|
-
const symbolTag = /* @__PURE__ */ new Set(["symbol"]);
|
|
32
|
-
const shapeTags = /* @__PURE__ */ new Set([
|
|
33
|
-
"circle",
|
|
34
|
-
"ellipse",
|
|
35
|
-
"line",
|
|
36
|
-
"path",
|
|
37
|
-
"polygon",
|
|
38
|
-
"polyline",
|
|
39
|
-
"rect"
|
|
40
|
-
]);
|
|
41
|
-
const useTag = /* @__PURE__ */ new Set(["use"]);
|
|
42
|
-
const groupTag = /* @__PURE__ */ new Set(["g"]);
|
|
43
|
-
const markerTag = /* @__PURE__ */ new Set(["marker"]);
|
|
44
|
-
const animateTags = /* @__PURE__ */ new Set([
|
|
45
|
-
"animate",
|
|
46
|
-
"animateMotion",
|
|
47
|
-
"animateTransform",
|
|
48
|
-
"discard",
|
|
49
|
-
"set"
|
|
50
|
-
]);
|
|
51
|
-
const animateMotionChildTags = /* @__PURE__ */ new Set(["mpath"]);
|
|
52
|
-
const gradientTags = /* @__PURE__ */ new Set(["linearGradient", "radialGradient"]);
|
|
53
|
-
const gradientChildTags = /* @__PURE__ */ new Set(["stop"]);
|
|
54
|
-
const patternTag = /* @__PURE__ */ new Set(["pattern"]);
|
|
55
|
-
const filterTag = /* @__PURE__ */ new Set(["filter"]);
|
|
56
|
-
const feLightningTags = /* @__PURE__ */ new Set([
|
|
57
|
-
"feDiffuseLighting",
|
|
58
|
-
"feSpecularLighting"
|
|
59
|
-
]);
|
|
60
|
-
const filterChildTags = /* @__PURE__ */ new Set([
|
|
61
|
-
"feBlend",
|
|
62
|
-
"feColorMatrix",
|
|
63
|
-
"feComponentTransfer",
|
|
64
|
-
"feComposite",
|
|
65
|
-
"feConvolveMatrix",
|
|
66
|
-
"feDisplacementMap",
|
|
67
|
-
"feDropShadow",
|
|
68
|
-
"feFlood",
|
|
69
|
-
"feGaussianBlur",
|
|
70
|
-
"feMerge",
|
|
71
|
-
"feMorphology",
|
|
72
|
-
"feOffset",
|
|
73
|
-
"feTile",
|
|
74
|
-
"feTurbulence",
|
|
75
|
-
...feLightningTags
|
|
76
|
-
]);
|
|
77
|
-
const feComponentTransferChildTag = /* @__PURE__ */ new Set([
|
|
78
|
-
"feFuncR",
|
|
79
|
-
"feFuncG",
|
|
80
|
-
"feFuncB",
|
|
81
|
-
"feFuncA"
|
|
82
|
-
]);
|
|
83
|
-
const feLightningChildTags = /* @__PURE__ */ new Set([
|
|
84
|
-
"feSpotLight",
|
|
85
|
-
"fePointLight",
|
|
86
|
-
"feDistantLight"
|
|
87
|
-
]);
|
|
88
|
-
const feMergeChildTags = /* @__PURE__ */ new Set(["feMergeNode"]);
|
|
89
|
-
const reusableElementsWithPalette = /* @__PURE__ */ new Set([
|
|
90
|
-
...gradientTags,
|
|
91
|
-
...patternTag,
|
|
92
|
-
...markerTag,
|
|
93
|
-
...symbolTag,
|
|
94
|
-
...filterTag
|
|
95
|
-
]);
|
|
96
|
-
const allValidTags = /* @__PURE__ */ new Set([
|
|
97
|
-
...styleTag,
|
|
98
|
-
...defsTag,
|
|
99
|
-
...maskTags,
|
|
100
|
-
...symbolTag,
|
|
101
|
-
...shapeTags,
|
|
102
|
-
...useTag,
|
|
103
|
-
...groupTag,
|
|
104
|
-
...markerTag,
|
|
105
|
-
...animateTags,
|
|
106
|
-
...animateMotionChildTags,
|
|
107
|
-
...gradientTags,
|
|
108
|
-
...gradientChildTags,
|
|
109
|
-
...patternTag,
|
|
110
|
-
...filterTag,
|
|
111
|
-
...filterChildTags,
|
|
112
|
-
...feComponentTransferChildTag,
|
|
113
|
-
...feLightningChildTags,
|
|
114
|
-
...feMergeChildTags
|
|
115
|
-
]);
|
|
116
|
-
|
|
117
|
-
export { allValidTags, animateMotionChildTags, animateTags, badTags, defsTag, feComponentTransferChildTag, feLightningChildTags, feLightningTags, feMergeChildTags, filterChildTags, filterTag, gradientChildTags, gradientTags, groupTag, markerTag, maskTags, patternTag, reusableElementsWithPalette, shapeTags, styleTag, symbolTag, unsupportedTags, useTag };
|
package/lib/svg/index.cjs
DELETED
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const cheerio = require('cheerio');
|
|
4
|
-
const utils = require('@iconify/utils');
|
|
5
|
-
|
|
6
|
-
function _interopNamespaceCompat(e) {
|
|
7
|
-
if (e && typeof e === 'object' && 'default' in e) return e;
|
|
8
|
-
const n = Object.create(null);
|
|
9
|
-
if (e) {
|
|
10
|
-
for (const k in e) {
|
|
11
|
-
n[k] = e[k];
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
n.default = e;
|
|
15
|
-
return n;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
const cheerio__namespace = /*#__PURE__*/_interopNamespaceCompat(cheerio);
|
|
19
|
-
|
|
20
|
-
var __defProp = Object.defineProperty;
|
|
21
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
22
|
-
var __publicField = (obj, key, value) => {
|
|
23
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
24
|
-
return value;
|
|
25
|
-
};
|
|
26
|
-
class SVG {
|
|
27
|
-
/**
|
|
28
|
-
* Constructor
|
|
29
|
-
*/
|
|
30
|
-
constructor(content) {
|
|
31
|
-
// Cheerio tree, initialized in load()
|
|
32
|
-
__publicField(this, "$svg");
|
|
33
|
-
// Dimensions, initialized in load()
|
|
34
|
-
__publicField(this, "viewBox");
|
|
35
|
-
this.load(content);
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Get SVG as string
|
|
39
|
-
*/
|
|
40
|
-
toString(customisations) {
|
|
41
|
-
if (customisations) {
|
|
42
|
-
const data = utils.iconToSVG(this.getIcon(), customisations);
|
|
43
|
-
let svgAttributes = ' xmlns="http://www.w3.org/2000/svg"';
|
|
44
|
-
if (data.body.includes("xlink:")) {
|
|
45
|
-
svgAttributes += ' xmlns:xlink="http://www.w3.org/1999/xlink"';
|
|
46
|
-
}
|
|
47
|
-
for (const key in data.attributes) {
|
|
48
|
-
const value = data.attributes[key];
|
|
49
|
-
svgAttributes += " " + key + '="' + value + '"';
|
|
50
|
-
}
|
|
51
|
-
return "<svg" + svgAttributes + ">" + data.body + "</svg>";
|
|
52
|
-
}
|
|
53
|
-
const $root = this.$svg(":root");
|
|
54
|
-
const box = this.viewBox;
|
|
55
|
-
if ($root.attr("viewBox") === void 0) {
|
|
56
|
-
$root.attr(
|
|
57
|
-
"viewBox",
|
|
58
|
-
`${box.left} ${box.top} ${box.width} ${box.height}`
|
|
59
|
-
);
|
|
60
|
-
}
|
|
61
|
-
if ($root.attr("width") === void 0) {
|
|
62
|
-
$root.attr("width", box.width.toString());
|
|
63
|
-
}
|
|
64
|
-
if ($root.attr("height") === void 0) {
|
|
65
|
-
$root.attr("height", box.height.toString());
|
|
66
|
-
}
|
|
67
|
-
return this.$svg.html();
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Get SVG as string without whitespaces
|
|
71
|
-
*/
|
|
72
|
-
toMinifiedString(customisations) {
|
|
73
|
-
return utils.trimSVG(this.toString(customisations));
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Get SVG as string with whitespaces
|
|
77
|
-
*/
|
|
78
|
-
toPrettyString(customisations) {
|
|
79
|
-
const str = this.toMinifiedString(customisations);
|
|
80
|
-
return utils.prettifySVG(str) ?? str;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Get body
|
|
84
|
-
*/
|
|
85
|
-
getBody() {
|
|
86
|
-
const $root = this.$svg(":root");
|
|
87
|
-
const attribs = $root.get(0).attribs;
|
|
88
|
-
for (const key in attribs) {
|
|
89
|
-
switch (key.split("-").shift()) {
|
|
90
|
-
case "fill":
|
|
91
|
-
case "stroke":
|
|
92
|
-
case "opacity":
|
|
93
|
-
throw new Error(
|
|
94
|
-
`Cannot use getBody() on icon that was not cleaned up with cleanupSVGRoot(). Icon has attribute ${key}="${attribs[key]}"`
|
|
95
|
-
);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return utils.trimSVG(this.$svg("svg").html());
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Get icon as IconifyIcon
|
|
102
|
-
*/
|
|
103
|
-
getIcon() {
|
|
104
|
-
const props = this.viewBox;
|
|
105
|
-
const body = this.getBody();
|
|
106
|
-
return {
|
|
107
|
-
...props,
|
|
108
|
-
body
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Load SVG
|
|
113
|
-
*
|
|
114
|
-
* @param {string} content
|
|
115
|
-
*/
|
|
116
|
-
load(content) {
|
|
117
|
-
function remove(str1, str2, append) {
|
|
118
|
-
let start = 0;
|
|
119
|
-
while ((start = content.indexOf(str1, start)) !== -1) {
|
|
120
|
-
const end = content.indexOf(str2, start + str1.length);
|
|
121
|
-
if (end === -1) {
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
|
-
content = content.slice(0, start) + append + content.slice(end + str2.length);
|
|
125
|
-
start = start + append.length;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
remove("<!--", "-->", "");
|
|
129
|
-
remove("<?xml", "?>", "");
|
|
130
|
-
remove("<!DOCTYPE svg", "<svg", "<svg");
|
|
131
|
-
remove(
|
|
132
|
-
'xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"',
|
|
133
|
-
"",
|
|
134
|
-
""
|
|
135
|
-
);
|
|
136
|
-
remove('xml:space="preserve"', "", "");
|
|
137
|
-
content = content.replace(/<g>\s*<\/g>/g, "");
|
|
138
|
-
this.$svg = cheerio__namespace.load(content.trim(), {
|
|
139
|
-
// @ts-expect-error Legacy attribute, kept because Cheerio types are a unstable
|
|
140
|
-
lowerCaseAttributeNames: false,
|
|
141
|
-
xmlMode: true
|
|
142
|
-
});
|
|
143
|
-
const $root = this.$svg(":root");
|
|
144
|
-
if ($root.length > 1 || $root.get(0).tagName !== "svg") {
|
|
145
|
-
throw new Error("Invalid SVG file: bad root tag");
|
|
146
|
-
}
|
|
147
|
-
const viewBox = $root.attr("viewBox");
|
|
148
|
-
if (viewBox !== void 0) {
|
|
149
|
-
const list = viewBox.split(" ");
|
|
150
|
-
this.viewBox = {
|
|
151
|
-
left: parseFloat(list[0]),
|
|
152
|
-
top: parseFloat(list[1]),
|
|
153
|
-
width: parseFloat(list[2]),
|
|
154
|
-
height: parseFloat(list[3])
|
|
155
|
-
};
|
|
156
|
-
} else {
|
|
157
|
-
const width = $root.attr("width");
|
|
158
|
-
const height = $root.attr("height");
|
|
159
|
-
if (!width || !height) {
|
|
160
|
-
throw new Error("Invalid SVG file: missing dimensions");
|
|
161
|
-
}
|
|
162
|
-
this.viewBox = {
|
|
163
|
-
left: 0,
|
|
164
|
-
top: 0,
|
|
165
|
-
width: parseFloat(width),
|
|
166
|
-
height: parseFloat(height)
|
|
167
|
-
};
|
|
168
|
-
}
|
|
169
|
-
Object.keys(this.viewBox).forEach((key) => {
|
|
170
|
-
const attr = key;
|
|
171
|
-
if (isNaN(this.viewBox[attr])) {
|
|
172
|
-
throw new Error(`Invalid SVG file: invalid ${attr}`);
|
|
173
|
-
}
|
|
174
|
-
});
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
exports.SVG = SVG;
|
package/lib/svg/index.d.cts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import * as cheerio from 'cheerio';
|
|
2
|
-
import { IconifyIcon } from '@iconify/types';
|
|
3
|
-
export { IconifyIcon } from '@iconify/types';
|
|
4
|
-
import { IconifyIconCustomisations } from '@iconify/utils/lib/customisations/defaults';
|
|
5
|
-
export { IconifyIconCustomisations } from '@iconify/utils/lib/customisations/defaults';
|
|
6
|
-
|
|
7
|
-
interface ViewBox {
|
|
8
|
-
left: number;
|
|
9
|
-
top: number;
|
|
10
|
-
width: number;
|
|
11
|
-
height: number;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* SVG class, used to manipulate icon content.
|
|
16
|
-
*/
|
|
17
|
-
declare class SVG {
|
|
18
|
-
$svg: cheerio.CheerioAPI;
|
|
19
|
-
viewBox: ViewBox;
|
|
20
|
-
/**
|
|
21
|
-
* Constructor
|
|
22
|
-
*/
|
|
23
|
-
constructor(content: string);
|
|
24
|
-
/**
|
|
25
|
-
* Get SVG as string
|
|
26
|
-
*/
|
|
27
|
-
toString(customisations?: IconifyIconCustomisations): string;
|
|
28
|
-
/**
|
|
29
|
-
* Get SVG as string without whitespaces
|
|
30
|
-
*/
|
|
31
|
-
toMinifiedString(customisations?: IconifyIconCustomisations): string;
|
|
32
|
-
/**
|
|
33
|
-
* Get SVG as string with whitespaces
|
|
34
|
-
*/
|
|
35
|
-
toPrettyString(customisations?: IconifyIconCustomisations): string;
|
|
36
|
-
/**
|
|
37
|
-
* Get body
|
|
38
|
-
*/
|
|
39
|
-
getBody(): string;
|
|
40
|
-
/**
|
|
41
|
-
* Get icon as IconifyIcon
|
|
42
|
-
*/
|
|
43
|
-
getIcon(): IconifyIcon;
|
|
44
|
-
/**
|
|
45
|
-
* Load SVG
|
|
46
|
-
*
|
|
47
|
-
* @param {string} content
|
|
48
|
-
*/
|
|
49
|
-
load(content: string): void;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
export { SVG, type ViewBox };
|
package/lib/svg/index.d.mts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import * as cheerio from 'cheerio';
|
|
2
|
-
import { IconifyIcon } from '@iconify/types';
|
|
3
|
-
export { IconifyIcon } from '@iconify/types';
|
|
4
|
-
import { IconifyIconCustomisations } from '@iconify/utils/lib/customisations/defaults';
|
|
5
|
-
export { IconifyIconCustomisations } from '@iconify/utils/lib/customisations/defaults';
|
|
6
|
-
|
|
7
|
-
interface ViewBox {
|
|
8
|
-
left: number;
|
|
9
|
-
top: number;
|
|
10
|
-
width: number;
|
|
11
|
-
height: number;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* SVG class, used to manipulate icon content.
|
|
16
|
-
*/
|
|
17
|
-
declare class SVG {
|
|
18
|
-
$svg: cheerio.CheerioAPI;
|
|
19
|
-
viewBox: ViewBox;
|
|
20
|
-
/**
|
|
21
|
-
* Constructor
|
|
22
|
-
*/
|
|
23
|
-
constructor(content: string);
|
|
24
|
-
/**
|
|
25
|
-
* Get SVG as string
|
|
26
|
-
*/
|
|
27
|
-
toString(customisations?: IconifyIconCustomisations): string;
|
|
28
|
-
/**
|
|
29
|
-
* Get SVG as string without whitespaces
|
|
30
|
-
*/
|
|
31
|
-
toMinifiedString(customisations?: IconifyIconCustomisations): string;
|
|
32
|
-
/**
|
|
33
|
-
* Get SVG as string with whitespaces
|
|
34
|
-
*/
|
|
35
|
-
toPrettyString(customisations?: IconifyIconCustomisations): string;
|
|
36
|
-
/**
|
|
37
|
-
* Get body
|
|
38
|
-
*/
|
|
39
|
-
getBody(): string;
|
|
40
|
-
/**
|
|
41
|
-
* Get icon as IconifyIcon
|
|
42
|
-
*/
|
|
43
|
-
getIcon(): IconifyIcon;
|
|
44
|
-
/**
|
|
45
|
-
* Load SVG
|
|
46
|
-
*
|
|
47
|
-
* @param {string} content
|
|
48
|
-
*/
|
|
49
|
-
load(content: string): void;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
export { SVG, type ViewBox };
|