@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/colors/attribs.cjs
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const commonColorAttributes = ["color"];
|
|
4
|
-
const shapeColorAttributes = ["fill", "stroke"];
|
|
5
|
-
const specialColorAttributes = [
|
|
6
|
-
"stop-color",
|
|
7
|
-
"flood-color"
|
|
8
|
-
];
|
|
9
|
-
const defaultBlackColor = {
|
|
10
|
-
type: "rgb",
|
|
11
|
-
r: 0,
|
|
12
|
-
g: 0,
|
|
13
|
-
b: 0,
|
|
14
|
-
alpha: 1
|
|
15
|
-
};
|
|
16
|
-
const defaultColorValues = {
|
|
17
|
-
"color": { type: "current" },
|
|
18
|
-
"fill": defaultBlackColor,
|
|
19
|
-
"stroke": { type: "none" },
|
|
20
|
-
"stop-color": defaultBlackColor,
|
|
21
|
-
"flood-color": defaultBlackColor
|
|
22
|
-
};
|
|
23
|
-
const allowDefaultColorValue = {
|
|
24
|
-
"stop-color": true,
|
|
25
|
-
"flood-color": "flood-opacity"
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
exports.allowDefaultColorValue = allowDefaultColorValue;
|
|
29
|
-
exports.commonColorAttributes = commonColorAttributes;
|
|
30
|
-
exports.defaultBlackColor = defaultBlackColor;
|
|
31
|
-
exports.defaultColorValues = defaultColorValues;
|
|
32
|
-
exports.shapeColorAttributes = shapeColorAttributes;
|
|
33
|
-
exports.specialColorAttributes = specialColorAttributes;
|
package/lib/colors/attribs.d.cts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Color } from '@iconify/utils/lib/colors/types';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Color attributes
|
|
5
|
-
*/
|
|
6
|
-
type CommonColorAttributes = 'color';
|
|
7
|
-
declare const commonColorAttributes: CommonColorAttributes[];
|
|
8
|
-
type ShapeColorAttributes = 'fill' | 'stroke';
|
|
9
|
-
declare const shapeColorAttributes: ShapeColorAttributes[];
|
|
10
|
-
type SpecialColorAttributes = 'stop-color' | 'flood-color';
|
|
11
|
-
declare const specialColorAttributes: SpecialColorAttributes[];
|
|
12
|
-
type ColorAttributes = CommonColorAttributes | ShapeColorAttributes | SpecialColorAttributes;
|
|
13
|
-
/**
|
|
14
|
-
* Default values
|
|
15
|
-
*/
|
|
16
|
-
declare const defaultBlackColor: Color;
|
|
17
|
-
declare const defaultColorValues: Record<ColorAttributes, Color>;
|
|
18
|
-
/**
|
|
19
|
-
* Ignore default color for some tags:
|
|
20
|
-
* - If value is true, allow default color
|
|
21
|
-
* - If value is attribute name, allow default color if attribute is set
|
|
22
|
-
*
|
|
23
|
-
* Parent elements are not checked for these tags!
|
|
24
|
-
*/
|
|
25
|
-
declare const allowDefaultColorValue: Partial<Record<ColorAttributes, string | true>>;
|
|
26
|
-
|
|
27
|
-
export { type ColorAttributes, type CommonColorAttributes, type ShapeColorAttributes, type SpecialColorAttributes, allowDefaultColorValue, commonColorAttributes, defaultBlackColor, defaultColorValues, shapeColorAttributes, specialColorAttributes };
|
package/lib/colors/attribs.d.mts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Color } from '@iconify/utils/lib/colors/types';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Color attributes
|
|
5
|
-
*/
|
|
6
|
-
type CommonColorAttributes = 'color';
|
|
7
|
-
declare const commonColorAttributes: CommonColorAttributes[];
|
|
8
|
-
type ShapeColorAttributes = 'fill' | 'stroke';
|
|
9
|
-
declare const shapeColorAttributes: ShapeColorAttributes[];
|
|
10
|
-
type SpecialColorAttributes = 'stop-color' | 'flood-color';
|
|
11
|
-
declare const specialColorAttributes: SpecialColorAttributes[];
|
|
12
|
-
type ColorAttributes = CommonColorAttributes | ShapeColorAttributes | SpecialColorAttributes;
|
|
13
|
-
/**
|
|
14
|
-
* Default values
|
|
15
|
-
*/
|
|
16
|
-
declare const defaultBlackColor: Color;
|
|
17
|
-
declare const defaultColorValues: Record<ColorAttributes, Color>;
|
|
18
|
-
/**
|
|
19
|
-
* Ignore default color for some tags:
|
|
20
|
-
* - If value is true, allow default color
|
|
21
|
-
* - If value is attribute name, allow default color if attribute is set
|
|
22
|
-
*
|
|
23
|
-
* Parent elements are not checked for these tags!
|
|
24
|
-
*/
|
|
25
|
-
declare const allowDefaultColorValue: Partial<Record<ColorAttributes, string | true>>;
|
|
26
|
-
|
|
27
|
-
export { type ColorAttributes, type CommonColorAttributes, type ShapeColorAttributes, type SpecialColorAttributes, allowDefaultColorValue, commonColorAttributes, defaultBlackColor, defaultColorValues, shapeColorAttributes, specialColorAttributes };
|
package/lib/colors/attribs.mjs
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
const commonColorAttributes = ["color"];
|
|
2
|
-
const shapeColorAttributes = ["fill", "stroke"];
|
|
3
|
-
const specialColorAttributes = [
|
|
4
|
-
"stop-color",
|
|
5
|
-
"flood-color"
|
|
6
|
-
];
|
|
7
|
-
const defaultBlackColor = {
|
|
8
|
-
type: "rgb",
|
|
9
|
-
r: 0,
|
|
10
|
-
g: 0,
|
|
11
|
-
b: 0,
|
|
12
|
-
alpha: 1
|
|
13
|
-
};
|
|
14
|
-
const defaultColorValues = {
|
|
15
|
-
"color": { type: "current" },
|
|
16
|
-
"fill": defaultBlackColor,
|
|
17
|
-
"stroke": { type: "none" },
|
|
18
|
-
"stop-color": defaultBlackColor,
|
|
19
|
-
"flood-color": defaultBlackColor
|
|
20
|
-
};
|
|
21
|
-
const allowDefaultColorValue = {
|
|
22
|
-
"stop-color": true,
|
|
23
|
-
"flood-color": "flood-opacity"
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
export { allowDefaultColorValue, commonColorAttributes, defaultBlackColor, defaultColorValues, shapeColorAttributes, specialColorAttributes };
|
package/lib/colors/detect.cjs
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const colors_parse = require('./parse.cjs');
|
|
4
|
-
require('@iconify/utils/lib/colors');
|
|
5
|
-
require('../svg/data/tags.cjs');
|
|
6
|
-
require('../svg/parse-style.cjs');
|
|
7
|
-
require('../css/parse.cjs');
|
|
8
|
-
require('../css/parser/tokens.cjs');
|
|
9
|
-
require('../css/parser/error.cjs');
|
|
10
|
-
require('../css/parser/strings.cjs');
|
|
11
|
-
require('../css/parser/text.cjs');
|
|
12
|
-
require('../css/parser/export.cjs');
|
|
13
|
-
require('../css/parser/tree.cjs');
|
|
14
|
-
require('../svg/parse.cjs');
|
|
15
|
-
require('./attribs.cjs');
|
|
16
|
-
require('../svg/data/attributes.cjs');
|
|
17
|
-
require('../svg/analyse.cjs');
|
|
18
|
-
require('../svg/analyse/error.cjs');
|
|
19
|
-
|
|
20
|
-
function detectIconSetPalette(iconSet) {
|
|
21
|
-
let palette;
|
|
22
|
-
iconSet.forEachSync(
|
|
23
|
-
(name) => {
|
|
24
|
-
if (palette === null) {
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
const svg = iconSet.toSVG(name);
|
|
28
|
-
if (!svg) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
let iconPalette;
|
|
32
|
-
colors_parse.parseColors(svg, {
|
|
33
|
-
callback: (attr, colorStr, color) => {
|
|
34
|
-
if (!color) {
|
|
35
|
-
iconPalette = null;
|
|
36
|
-
return colorStr;
|
|
37
|
-
}
|
|
38
|
-
if (iconPalette === null || colors_parse.isEmptyColor(color)) {
|
|
39
|
-
return color;
|
|
40
|
-
}
|
|
41
|
-
const isColor = color.type !== "current";
|
|
42
|
-
if (iconPalette === void 0) {
|
|
43
|
-
iconPalette = isColor;
|
|
44
|
-
return color;
|
|
45
|
-
}
|
|
46
|
-
if (iconPalette !== isColor) {
|
|
47
|
-
iconPalette = null;
|
|
48
|
-
}
|
|
49
|
-
return color;
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
if (iconPalette === void 0) {
|
|
53
|
-
iconPalette = null;
|
|
54
|
-
}
|
|
55
|
-
if (palette === void 0) {
|
|
56
|
-
palette = iconPalette;
|
|
57
|
-
} else if (palette !== iconPalette) {
|
|
58
|
-
palette = null;
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
["icon"]
|
|
62
|
-
);
|
|
63
|
-
return palette ?? null;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
exports.detectIconSetPalette = detectIconSetPalette;
|
package/lib/colors/detect.d.cts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { IconSet } from '../icon-set/index.cjs';
|
|
2
|
-
import '@iconify/types';
|
|
3
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
4
|
-
import '../icon-set/types.cjs';
|
|
5
|
-
import '../svg/index.cjs';
|
|
6
|
-
import 'cheerio';
|
|
7
|
-
import '@iconify/utils/lib/icon-set/tree';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Detect palette
|
|
11
|
-
*
|
|
12
|
-
* Returns null if icon set has mixed colors
|
|
13
|
-
*/
|
|
14
|
-
declare function detectIconSetPalette(iconSet: IconSet): boolean | null;
|
|
15
|
-
|
|
16
|
-
export { detectIconSetPalette };
|
package/lib/colors/detect.d.mts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { IconSet } from '../icon-set/index.mjs';
|
|
2
|
-
import '@iconify/types';
|
|
3
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
4
|
-
import '../icon-set/types.mjs';
|
|
5
|
-
import '../svg/index.mjs';
|
|
6
|
-
import 'cheerio';
|
|
7
|
-
import '@iconify/utils/lib/icon-set/tree';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Detect palette
|
|
11
|
-
*
|
|
12
|
-
* Returns null if icon set has mixed colors
|
|
13
|
-
*/
|
|
14
|
-
declare function detectIconSetPalette(iconSet: IconSet): boolean | null;
|
|
15
|
-
|
|
16
|
-
export { detectIconSetPalette };
|
package/lib/colors/detect.mjs
DELETED
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { parseColors, isEmptyColor } from './parse.mjs';
|
|
2
|
-
import '@iconify/utils/lib/colors';
|
|
3
|
-
import '../svg/data/tags.mjs';
|
|
4
|
-
import '../svg/parse-style.mjs';
|
|
5
|
-
import '../css/parse.mjs';
|
|
6
|
-
import '../css/parser/tokens.mjs';
|
|
7
|
-
import '../css/parser/error.mjs';
|
|
8
|
-
import '../css/parser/strings.mjs';
|
|
9
|
-
import '../css/parser/text.mjs';
|
|
10
|
-
import '../css/parser/export.mjs';
|
|
11
|
-
import '../css/parser/tree.mjs';
|
|
12
|
-
import '../svg/parse.mjs';
|
|
13
|
-
import './attribs.mjs';
|
|
14
|
-
import '../svg/data/attributes.mjs';
|
|
15
|
-
import '../svg/analyse.mjs';
|
|
16
|
-
import '../svg/analyse/error.mjs';
|
|
17
|
-
|
|
18
|
-
function detectIconSetPalette(iconSet) {
|
|
19
|
-
let palette;
|
|
20
|
-
iconSet.forEachSync(
|
|
21
|
-
(name) => {
|
|
22
|
-
if (palette === null) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
const svg = iconSet.toSVG(name);
|
|
26
|
-
if (!svg) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
let iconPalette;
|
|
30
|
-
parseColors(svg, {
|
|
31
|
-
callback: (attr, colorStr, color) => {
|
|
32
|
-
if (!color) {
|
|
33
|
-
iconPalette = null;
|
|
34
|
-
return colorStr;
|
|
35
|
-
}
|
|
36
|
-
if (iconPalette === null || isEmptyColor(color)) {
|
|
37
|
-
return color;
|
|
38
|
-
}
|
|
39
|
-
const isColor = color.type !== "current";
|
|
40
|
-
if (iconPalette === void 0) {
|
|
41
|
-
iconPalette = isColor;
|
|
42
|
-
return color;
|
|
43
|
-
}
|
|
44
|
-
if (iconPalette !== isColor) {
|
|
45
|
-
iconPalette = null;
|
|
46
|
-
}
|
|
47
|
-
return color;
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
if (iconPalette === void 0) {
|
|
51
|
-
iconPalette = null;
|
|
52
|
-
}
|
|
53
|
-
if (palette === void 0) {
|
|
54
|
-
palette = iconPalette;
|
|
55
|
-
} else if (palette !== iconPalette) {
|
|
56
|
-
palette = null;
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
["icon"]
|
|
60
|
-
);
|
|
61
|
-
return palette ?? null;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
export { detectIconSetPalette };
|
package/lib/colors/parse.cjs
DELETED
|
@@ -1,300 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const colors = require('@iconify/utils/lib/colors');
|
|
4
|
-
const svg_data_tags = require('../svg/data/tags.cjs');
|
|
5
|
-
const svg_parseStyle = require('../svg/parse-style.cjs');
|
|
6
|
-
const colors_attribs = require('./attribs.cjs');
|
|
7
|
-
const svg_data_attributes = require('../svg/data/attributes.cjs');
|
|
8
|
-
const svg_analyse = require('../svg/analyse.cjs');
|
|
9
|
-
require('../css/parse.cjs');
|
|
10
|
-
require('../css/parser/tokens.cjs');
|
|
11
|
-
require('../css/parser/error.cjs');
|
|
12
|
-
require('../css/parser/strings.cjs');
|
|
13
|
-
require('../css/parser/text.cjs');
|
|
14
|
-
require('../css/parser/export.cjs');
|
|
15
|
-
require('../css/parser/tree.cjs');
|
|
16
|
-
require('../svg/parse.cjs');
|
|
17
|
-
require('../svg/analyse/error.cjs');
|
|
18
|
-
|
|
19
|
-
const propsToCheck = Object.keys(colors_attribs.defaultColorValues);
|
|
20
|
-
const animatePropsToCheck = ["from", "to", "values"];
|
|
21
|
-
function parseColors(svg, options = {}) {
|
|
22
|
-
const result = {
|
|
23
|
-
colors: [],
|
|
24
|
-
hasUnsetColor: false,
|
|
25
|
-
hasGlobalStyle: false
|
|
26
|
-
};
|
|
27
|
-
const defaultColor = typeof options.defaultColor === "string" ? colors.stringToColor(options.defaultColor) : options.defaultColor;
|
|
28
|
-
function findColor(color, add = false) {
|
|
29
|
-
const isString = typeof color === "string";
|
|
30
|
-
for (let i = 0; i < result.colors.length; i++) {
|
|
31
|
-
const item = result.colors[i];
|
|
32
|
-
if (item === color) {
|
|
33
|
-
return item;
|
|
34
|
-
}
|
|
35
|
-
if (!isString && typeof item !== "string" && colors.compareColors(item, color)) {
|
|
36
|
-
return item;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
if (add) {
|
|
40
|
-
result.colors.push(color);
|
|
41
|
-
return color;
|
|
42
|
-
}
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
function addColorToItem(prop, color, item, add = true) {
|
|
46
|
-
const addedColor = findColor(color, add !== false);
|
|
47
|
-
if (item) {
|
|
48
|
-
const itemColors = item._colors || (item._colors = {});
|
|
49
|
-
itemColors[prop] = addedColor === null ? color : addedColor;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
function getElementColor(prop, item, elements2) {
|
|
53
|
-
function find(prop2) {
|
|
54
|
-
let currentItem = item;
|
|
55
|
-
const allowDefaultColor = colors_attribs.allowDefaultColorValue[prop2];
|
|
56
|
-
while (currentItem) {
|
|
57
|
-
const element = elements2.get(
|
|
58
|
-
currentItem.index
|
|
59
|
-
);
|
|
60
|
-
const color = element._colors?.[prop2];
|
|
61
|
-
if (color !== void 0) {
|
|
62
|
-
return color;
|
|
63
|
-
}
|
|
64
|
-
if (allowDefaultColor) {
|
|
65
|
-
if (allowDefaultColor === true || element.attribs[allowDefaultColor]) {
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
currentItem = currentItem.parent;
|
|
70
|
-
if (currentItem?.usedAsMask) {
|
|
71
|
-
return colors_attribs.defaultColorValues[prop2];
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return colors_attribs.defaultColorValues[prop2];
|
|
75
|
-
}
|
|
76
|
-
let propColor = find(prop);
|
|
77
|
-
if (propColor !== null && typeof propColor === "object" && propColor.type === "current" && prop !== "color") {
|
|
78
|
-
propColor = find("color");
|
|
79
|
-
}
|
|
80
|
-
return propColor;
|
|
81
|
-
}
|
|
82
|
-
function checkColor(prop, value, item) {
|
|
83
|
-
switch (value.trim().toLowerCase()) {
|
|
84
|
-
case "":
|
|
85
|
-
case "inherit":
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
const parsedColor = colors.stringToColor(value);
|
|
89
|
-
const defaultValue = parsedColor || value;
|
|
90
|
-
if (parsedColor?.type === "function" && parsedColor.func === "url") {
|
|
91
|
-
addColorToItem(prop, defaultValue, item, false);
|
|
92
|
-
return value;
|
|
93
|
-
}
|
|
94
|
-
if (!options.callback) {
|
|
95
|
-
addColorToItem(prop, defaultValue, item);
|
|
96
|
-
return value;
|
|
97
|
-
}
|
|
98
|
-
const callbackResult = options.callback(
|
|
99
|
-
prop,
|
|
100
|
-
value,
|
|
101
|
-
parsedColor,
|
|
102
|
-
item?.tagName,
|
|
103
|
-
item
|
|
104
|
-
);
|
|
105
|
-
if (callbackResult instanceof Promise) {
|
|
106
|
-
throw new Error("parseColors does not support async callbacks");
|
|
107
|
-
}
|
|
108
|
-
switch (callbackResult) {
|
|
109
|
-
case "remove": {
|
|
110
|
-
return item ? callbackResult : void 0;
|
|
111
|
-
}
|
|
112
|
-
case "unset":
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
if (callbackResult === value || parsedColor && callbackResult === parsedColor) {
|
|
116
|
-
addColorToItem(prop, defaultValue, item);
|
|
117
|
-
return value;
|
|
118
|
-
}
|
|
119
|
-
if (typeof callbackResult === "string") {
|
|
120
|
-
const newColor = colors.stringToColor(callbackResult);
|
|
121
|
-
addColorToItem(prop, newColor || callbackResult, item);
|
|
122
|
-
return callbackResult;
|
|
123
|
-
}
|
|
124
|
-
const newValue = colors.colorToString(callbackResult);
|
|
125
|
-
addColorToItem(prop, callbackResult, item);
|
|
126
|
-
return newValue;
|
|
127
|
-
}
|
|
128
|
-
svg_parseStyle.parseSVGStyle(svg, (item) => {
|
|
129
|
-
const prop = item.prop;
|
|
130
|
-
const value = item.value;
|
|
131
|
-
if (!propsToCheck.includes(prop)) {
|
|
132
|
-
return value;
|
|
133
|
-
}
|
|
134
|
-
const attr = prop;
|
|
135
|
-
const newValue = checkColor(attr, value);
|
|
136
|
-
if (newValue === void 0) {
|
|
137
|
-
return newValue;
|
|
138
|
-
}
|
|
139
|
-
if (item.type === "global") {
|
|
140
|
-
result.hasGlobalStyle = true;
|
|
141
|
-
}
|
|
142
|
-
return newValue;
|
|
143
|
-
});
|
|
144
|
-
const iconData = svg_analyse.analyseSVGStructure(svg, options);
|
|
145
|
-
const { elements, tree } = iconData;
|
|
146
|
-
const cheerio = svg.$svg;
|
|
147
|
-
const removedElements = /* @__PURE__ */ new Set();
|
|
148
|
-
const parsedElements = /* @__PURE__ */ new Set();
|
|
149
|
-
function removeElement(index, element) {
|
|
150
|
-
function removeChildren(element2) {
|
|
151
|
-
element2.children.forEach((item) => {
|
|
152
|
-
if (item.type !== "tag") {
|
|
153
|
-
return;
|
|
154
|
-
}
|
|
155
|
-
const element3 = item;
|
|
156
|
-
const index2 = element3._index;
|
|
157
|
-
if (index2 && !removedElements.has(index2)) {
|
|
158
|
-
element3._removed = true;
|
|
159
|
-
removedElements.add(index2);
|
|
160
|
-
removeChildren(element3);
|
|
161
|
-
}
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
element._removed = true;
|
|
165
|
-
removedElements.add(index);
|
|
166
|
-
removeChildren(element);
|
|
167
|
-
cheerio(element).remove();
|
|
168
|
-
}
|
|
169
|
-
function parseTreeItem(item) {
|
|
170
|
-
const index = item.index;
|
|
171
|
-
if (removedElements.has(index) || parsedElements.has(index)) {
|
|
172
|
-
return;
|
|
173
|
-
}
|
|
174
|
-
parsedElements.add(index);
|
|
175
|
-
const element = elements.get(index);
|
|
176
|
-
if (element._removed) {
|
|
177
|
-
return;
|
|
178
|
-
}
|
|
179
|
-
const { tagName, attribs } = element;
|
|
180
|
-
if (item.parent) {
|
|
181
|
-
const parentIndex = item.parent.index;
|
|
182
|
-
const parentElement = elements.get(
|
|
183
|
-
parentIndex
|
|
184
|
-
);
|
|
185
|
-
if (parentElement._colors) {
|
|
186
|
-
element._colors = {
|
|
187
|
-
...parentElement._colors
|
|
188
|
-
};
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
for (let i = 0; i < propsToCheck.length; i++) {
|
|
192
|
-
const prop = propsToCheck[i];
|
|
193
|
-
if (prop === "fill" && svg_data_tags.animateTags.has(tagName)) {
|
|
194
|
-
continue;
|
|
195
|
-
}
|
|
196
|
-
const value = attribs[prop];
|
|
197
|
-
if (value !== void 0) {
|
|
198
|
-
const newValue = checkColor(prop, value, element);
|
|
199
|
-
if (newValue !== value) {
|
|
200
|
-
if (newValue === void 0) {
|
|
201
|
-
cheerio(element).removeAttr(prop);
|
|
202
|
-
if (element._colors) {
|
|
203
|
-
delete element._colors[prop];
|
|
204
|
-
}
|
|
205
|
-
} else if (newValue === "remove") {
|
|
206
|
-
removeElement(index, element);
|
|
207
|
-
return;
|
|
208
|
-
} else {
|
|
209
|
-
cheerio(element).attr(prop, newValue);
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
if (svg_data_tags.animateTags.has(tagName)) {
|
|
215
|
-
const attr = attribs.attributeName;
|
|
216
|
-
if (propsToCheck.includes(attr)) {
|
|
217
|
-
for (let i = 0; i < animatePropsToCheck.length; i++) {
|
|
218
|
-
const elementProp = animatePropsToCheck[i];
|
|
219
|
-
const fullValue = attribs[elementProp];
|
|
220
|
-
if (typeof fullValue !== "string") {
|
|
221
|
-
continue;
|
|
222
|
-
}
|
|
223
|
-
const splitValues = fullValue.split(";");
|
|
224
|
-
let updatedValues = false;
|
|
225
|
-
for (let j = 0; j < splitValues.length; j++) {
|
|
226
|
-
const value = splitValues[j];
|
|
227
|
-
if (value !== void 0) {
|
|
228
|
-
const newValue = checkColor(
|
|
229
|
-
elementProp,
|
|
230
|
-
value
|
|
231
|
-
// Do not pass third parameter
|
|
232
|
-
);
|
|
233
|
-
if (newValue !== value) {
|
|
234
|
-
updatedValues = true;
|
|
235
|
-
splitValues[j] = typeof newValue === "string" ? newValue : "";
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
if (updatedValues) {
|
|
240
|
-
cheerio(element).attr(
|
|
241
|
-
elementProp,
|
|
242
|
-
splitValues.join(";")
|
|
243
|
-
);
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
if (!result.hasGlobalStyle) {
|
|
249
|
-
let requiredProps;
|
|
250
|
-
if (svg_data_tags.shapeTags.has(tagName)) {
|
|
251
|
-
requiredProps = colors_attribs.shapeColorAttributes;
|
|
252
|
-
}
|
|
253
|
-
colors_attribs.specialColorAttributes.forEach((attr) => {
|
|
254
|
-
if (svg_data_attributes.tagSpecificPresentationalAttributes[tagName]?.has(attr)) {
|
|
255
|
-
requiredProps = [attr];
|
|
256
|
-
}
|
|
257
|
-
});
|
|
258
|
-
if (requiredProps) {
|
|
259
|
-
const itemColors = element._colors || (element._colors = {});
|
|
260
|
-
for (let i = 0; i < requiredProps.length; i++) {
|
|
261
|
-
const prop = requiredProps[i];
|
|
262
|
-
const color = getElementColor(prop, item, elements);
|
|
263
|
-
if (color === colors_attribs.defaultBlackColor) {
|
|
264
|
-
if (defaultColor) {
|
|
265
|
-
const defaultColorValue = typeof defaultColor === "function" ? defaultColor(
|
|
266
|
-
prop,
|
|
267
|
-
element,
|
|
268
|
-
item,
|
|
269
|
-
iconData
|
|
270
|
-
) : defaultColor;
|
|
271
|
-
findColor(defaultColorValue, true);
|
|
272
|
-
cheerio(element).attr(
|
|
273
|
-
prop,
|
|
274
|
-
colors.colorToString(defaultColorValue)
|
|
275
|
-
);
|
|
276
|
-
itemColors[prop] = defaultColorValue;
|
|
277
|
-
} else {
|
|
278
|
-
result.hasUnsetColor = true;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
for (let i = 0; i < item.children.length; i++) {
|
|
285
|
-
const childItem = item.children[i];
|
|
286
|
-
if (!childItem.usedAsMask) {
|
|
287
|
-
parseTreeItem(childItem);
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
parseTreeItem(tree);
|
|
292
|
-
return result;
|
|
293
|
-
}
|
|
294
|
-
function isEmptyColor(color) {
|
|
295
|
-
const type = color.type;
|
|
296
|
-
return type === "none" || type === "transparent";
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
exports.isEmptyColor = isEmptyColor;
|
|
300
|
-
exports.parseColors = parseColors;
|
package/lib/colors/parse.d.cts
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { Color } from '@iconify/utils/lib/colors/types';
|
|
2
|
-
import { SVG } from '../svg/index.cjs';
|
|
3
|
-
import { ColorAttributes } from './attribs.cjs';
|
|
4
|
-
import { ElementsTreeItem, AnalyseSVGStructureResult, AnalyseSVGStructureOptions, ExtendedTagElement } from '../svg/analyse/types.cjs';
|
|
5
|
-
import 'cheerio';
|
|
6
|
-
import '@iconify/types';
|
|
7
|
-
import '@iconify/utils/lib/customisations/defaults';
|
|
8
|
-
import '../misc/cheerio.cjs';
|
|
9
|
-
import 'domhandler';
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Result
|
|
13
|
-
*/
|
|
14
|
-
interface FindColorsResult {
|
|
15
|
-
colors: (Color | string)[];
|
|
16
|
-
hasUnsetColor: boolean;
|
|
17
|
-
hasGlobalStyle: boolean;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Callback to call for each found color
|
|
21
|
-
*
|
|
22
|
-
* Callback should return:
|
|
23
|
-
* - new color value to change color
|
|
24
|
-
* - first parameter to keep old value
|
|
25
|
-
* - 'unset' to delete old value
|
|
26
|
-
* - 'remove' to remove shape or rule
|
|
27
|
-
*/
|
|
28
|
-
type ParseColorsCallbackResult = Color | string | 'remove' | 'unset';
|
|
29
|
-
type ParseColorsCallback = (attr: ColorAttributes, colorString: string, parsedColor: Color | null, tagName?: string, item?: ExtendedTagElementWithColors) => ParseColorsCallbackResult;
|
|
30
|
-
/**
|
|
31
|
-
* Callback for default color
|
|
32
|
-
*/
|
|
33
|
-
type ParseColorOptionsDefaultColorCallback = (prop: string, item: ExtendedTagElementWithColors, treeItem: ElementsTreeItem, iconData: AnalyseSVGStructureResult) => Color;
|
|
34
|
-
/**
|
|
35
|
-
* Options
|
|
36
|
-
*/
|
|
37
|
-
interface ParseColorsOptions extends AnalyseSVGStructureOptions {
|
|
38
|
-
callback?: ParseColorsCallback;
|
|
39
|
-
defaultColor?: Color | string | ParseColorOptionsDefaultColorCallback;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Extend properties for element
|
|
43
|
-
*/
|
|
44
|
-
type ItemColors = Partial<Record<ColorAttributes, Color | string>>;
|
|
45
|
-
interface ExtendedTagElementWithColors extends ExtendedTagElement {
|
|
46
|
-
_colors?: ItemColors;
|
|
47
|
-
_removed?: boolean;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Find colors in icon
|
|
51
|
-
*
|
|
52
|
-
* Clean up icon before running this function to convert style to attributes using
|
|
53
|
-
* cleanupInlineStyle() or cleanupSVG(), otherwise results might be inaccurate
|
|
54
|
-
*/
|
|
55
|
-
declare function parseColors(svg: SVG, options?: ParseColorsOptions): FindColorsResult;
|
|
56
|
-
/**
|
|
57
|
-
* Check if color is empty, such as 'none' or 'transparent'
|
|
58
|
-
*/
|
|
59
|
-
declare function isEmptyColor(color: Color): boolean;
|
|
60
|
-
|
|
61
|
-
export { type ExtendedTagElementWithColors, type FindColorsResult, type ParseColorOptionsDefaultColorCallback, type ParseColorsOptions, isEmptyColor, parseColors };
|