@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.
Files changed (530) hide show
  1. package/lib/colors/attribs.d.ts +2 -4
  2. package/lib/colors/attribs.js +33 -0
  3. package/lib/colors/detect.d.ts +2 -10
  4. package/lib/colors/detect.js +36 -0
  5. package/lib/colors/parse.d.ts +12 -19
  6. package/lib/colors/parse.js +241 -0
  7. package/lib/colors/validate.d.ts +3 -13
  8. package/lib/colors/validate.js +31 -0
  9. package/lib/css/parse.d.ts +1 -2
  10. package/lib/css/parse.js +18 -0
  11. package/lib/css/parser/error.d.ts +6 -7
  12. package/lib/css/parser/error.js +24 -0
  13. package/lib/css/parser/export.d.ts +2 -4
  14. package/lib/css/parser/export.js +34 -0
  15. package/lib/css/parser/strings.d.ts +2 -4
  16. package/lib/css/parser/strings.js +66 -0
  17. package/lib/css/parser/text.d.ts +2 -4
  18. package/lib/css/parser/text.js +103 -0
  19. package/lib/css/parser/tokens.d.ts +3 -5
  20. package/lib/css/parser/tokens.js +169 -0
  21. package/lib/css/parser/tree.d.ts +2 -4
  22. package/lib/css/parser/tree.js +35 -0
  23. package/lib/css/parser/types.d.ts +21 -22
  24. package/lib/css/parser/types.js +1 -0
  25. package/lib/download/api/cache.d.ts +2 -4
  26. package/lib/download/api/cache.js +84 -0
  27. package/lib/download/api/config.d.ts +6 -8
  28. package/lib/download/api/config.js +10 -0
  29. package/lib/download/api/download.d.ts +2 -4
  30. package/lib/download/api/download.js +26 -0
  31. package/lib/download/api/fetch.d.ts +1 -2
  32. package/lib/download/api/fetch.js +15 -0
  33. package/lib/download/api/index.d.ts +2 -4
  34. package/lib/download/api/index.js +50 -0
  35. package/lib/download/api/queue.d.ts +9 -10
  36. package/lib/download/api/queue.js +94 -0
  37. package/lib/download/api/types.d.ts +6 -7
  38. package/lib/download/api/types.js +1 -0
  39. package/lib/download/git/branch.d.ts +2 -4
  40. package/lib/download/git/branch.js +15 -0
  41. package/lib/download/git/hash.d.ts +2 -4
  42. package/lib/download/git/hash.js +10 -0
  43. package/lib/download/git/index.d.ts +10 -12
  44. package/lib/download/git/index.js +39 -0
  45. package/lib/download/git/reset.d.ts +1 -2
  46. package/lib/download/git/reset.js +12 -0
  47. package/lib/download/github/hash.d.ts +2 -4
  48. package/lib/download/github/hash.js +20 -0
  49. package/lib/download/github/index.d.ts +12 -14
  50. package/lib/download/github/index.js +66 -0
  51. package/lib/download/github/types.d.ts +5 -6
  52. package/lib/download/github/types.js +1 -0
  53. package/lib/download/gitlab/hash.d.ts +2 -4
  54. package/lib/download/gitlab/hash.js +19 -0
  55. package/lib/download/gitlab/index.d.ts +12 -14
  56. package/lib/download/gitlab/index.js +64 -0
  57. package/lib/download/gitlab/types.d.ts +5 -6
  58. package/lib/download/gitlab/types.js +6 -0
  59. package/lib/download/helpers/untar.d.ts +1 -2
  60. package/lib/download/helpers/untar.js +13 -0
  61. package/lib/download/helpers/unzip.d.ts +1 -2
  62. package/lib/download/helpers/unzip.js +39 -0
  63. package/lib/download/index.d.ts +15 -20
  64. package/lib/download/index.js +19 -0
  65. package/lib/download/npm/index.d.ts +11 -13
  66. package/lib/download/npm/index.js +51 -0
  67. package/lib/download/npm/types.d.ts +3 -4
  68. package/lib/download/npm/types.js +1 -0
  69. package/lib/download/npm/version.d.ts +4 -6
  70. package/lib/download/npm/version.js +23 -0
  71. package/lib/download/types/modified.d.ts +1 -2
  72. package/lib/download/types/modified.js +1 -0
  73. package/lib/download/types/sources.d.ts +2 -3
  74. package/lib/download/types/sources.js +1 -0
  75. package/lib/export/directory.d.ts +7 -15
  76. package/lib/export/directory.js +37 -0
  77. package/lib/export/helpers/custom-files.d.ts +2 -3
  78. package/lib/export/helpers/custom-files.js +23 -0
  79. package/lib/export/helpers/prepare.d.ts +3 -4
  80. package/lib/export/helpers/prepare.js +31 -0
  81. package/lib/export/helpers/types-version.d.ts +1 -2
  82. package/lib/export/helpers/types-version.js +19 -0
  83. package/lib/export/icon-package.d.ts +8 -15
  84. package/lib/export/icon-package.js +55 -0
  85. package/lib/export/json-package.d.ts +7 -14
  86. package/lib/export/json-package.js +129 -0
  87. package/lib/icon-set/index.d.ts +144 -147
  88. package/lib/icon-set/index.js +595 -0
  89. package/lib/icon-set/match.d.ts +3 -11
  90. package/lib/icon-set/match.js +45 -0
  91. package/lib/icon-set/merge.d.ts +2 -10
  92. package/lib/icon-set/merge.js +68 -0
  93. package/lib/icon-set/modified.d.ts +2 -10
  94. package/lib/icon-set/modified.js +20 -0
  95. package/lib/icon-set/props.d.ts +2 -5
  96. package/lib/icon-set/props.js +19 -0
  97. package/lib/icon-set/tags.d.ts +7 -15
  98. package/lib/icon-set/tags.js +53 -0
  99. package/lib/icon-set/types.d.ts +16 -21
  100. package/lib/icon-set/types.js +1 -0
  101. package/lib/import/directory.d.ts +11 -20
  102. package/lib/import/directory.js +101 -0
  103. package/lib/import/figma/index.d.ts +4 -15
  104. package/lib/import/figma/index.js +61 -0
  105. package/lib/import/figma/nodes.d.ts +4 -14
  106. package/lib/import/figma/nodes.js +80 -0
  107. package/lib/import/figma/query.d.ts +9 -19
  108. package/lib/import/figma/query.js +183 -0
  109. package/lib/import/figma/types/api.d.ts +23 -35
  110. package/lib/import/figma/types/nodes.d.ts +12 -21
  111. package/lib/import/figma/types/options.d.ts +23 -32
  112. package/lib/import/figma/types/result.d.ts +16 -24
  113. package/lib/index.d.ts +55 -80
  114. package/lib/index.js +56 -0
  115. package/lib/misc/bump-version.d.ts +1 -2
  116. package/lib/misc/bump-version.js +13 -0
  117. package/lib/misc/compare-dirs.d.ts +4 -5
  118. package/lib/misc/compare-dirs.js +65 -0
  119. package/lib/misc/exec.d.ts +4 -6
  120. package/lib/misc/exec.js +23 -0
  121. package/lib/misc/keyword.d.ts +1 -2
  122. package/lib/misc/keyword.js +12 -0
  123. package/lib/misc/scan.d.ts +2 -4
  124. package/lib/misc/scan.js +87 -0
  125. package/lib/misc/write-json.d.ts +1 -2
  126. package/lib/misc/write-json.js +10 -0
  127. package/lib/optimise/figma.d.ts +2 -7
  128. package/lib/optimise/figma.js +189 -0
  129. package/lib/optimise/flags.d.ts +2 -7
  130. package/lib/optimise/flags.js +231 -0
  131. package/lib/optimise/global-style.d.ts +2 -7
  132. package/lib/optimise/global-style.js +114 -0
  133. package/lib/optimise/mask.d.ts +9 -14
  134. package/lib/optimise/mask.js +83 -0
  135. package/lib/optimise/origin.d.ts +2 -7
  136. package/lib/optimise/origin.js +22 -0
  137. package/lib/optimise/scale.d.ts +2 -7
  138. package/lib/optimise/scale.js +24 -0
  139. package/lib/optimise/svgo.d.ts +10 -15
  140. package/lib/optimise/svgo.js +90 -0
  141. package/lib/optimise/unwrap.d.ts +2 -7
  142. package/lib/optimise/unwrap.js +25 -0
  143. package/lib/svg/analyse/error.d.ts +2 -7
  144. package/lib/svg/analyse/error.js +12 -0
  145. package/lib/svg/analyse/types.d.ts +31 -35
  146. package/lib/svg/analyse/types.js +1 -0
  147. package/lib/svg/analyse.d.ts +3 -10
  148. package/lib/svg/analyse.js +256 -0
  149. package/lib/svg/cleanup/attribs.d.ts +2 -7
  150. package/lib/svg/cleanup/attribs.js +37 -0
  151. package/lib/svg/cleanup/bad-tags.d.ts +3 -8
  152. package/lib/svg/cleanup/bad-tags.js +57 -0
  153. package/lib/svg/cleanup/inline-style.d.ts +2 -7
  154. package/lib/svg/cleanup/inline-style.js +80 -0
  155. package/lib/svg/cleanup/root-style.d.ts +4 -9
  156. package/lib/svg/cleanup/root-style.js +27 -0
  157. package/lib/svg/cleanup/root-svg.d.ts +2 -7
  158. package/lib/svg/cleanup/root-svg.js +73 -0
  159. package/lib/svg/cleanup/svgo-style.d.ts +2 -7
  160. package/lib/svg/cleanup/svgo-style.js +24 -0
  161. package/lib/svg/cleanup.d.ts +3 -8
  162. package/lib/svg/cleanup.js +20 -0
  163. package/lib/svg/data/attributes.d.ts +1 -2
  164. package/lib/svg/data/attributes.js +451 -0
  165. package/lib/svg/data/tags.d.ts +1 -2
  166. package/lib/svg/data/tags.js +182 -0
  167. package/lib/svg/index.d.ts +38 -47
  168. package/lib/svg/index.js +117 -0
  169. package/lib/svg/parse-style.d.ts +21 -28
  170. package/lib/svg/parse-style.js +199 -0
  171. package/lib/svg/parse.d.ts +8 -16
  172. package/lib/svg/parse.js +32 -0
  173. package/package.json +116 -222
  174. package/lib/colors/attribs.cjs +0 -33
  175. package/lib/colors/attribs.d.cts +0 -27
  176. package/lib/colors/attribs.d.mts +0 -27
  177. package/lib/colors/attribs.mjs +0 -26
  178. package/lib/colors/detect.cjs +0 -66
  179. package/lib/colors/detect.d.cts +0 -16
  180. package/lib/colors/detect.d.mts +0 -16
  181. package/lib/colors/detect.mjs +0 -64
  182. package/lib/colors/parse.cjs +0 -300
  183. package/lib/colors/parse.d.cts +0 -61
  184. package/lib/colors/parse.d.mts +0 -61
  185. package/lib/colors/parse.mjs +0 -297
  186. package/lib/colors/validate.cjs +0 -56
  187. package/lib/colors/validate.d.cts +0 -21
  188. package/lib/colors/validate.d.mts +0 -21
  189. package/lib/colors/validate.mjs +0 -54
  190. package/lib/css/parse.cjs +0 -24
  191. package/lib/css/parse.d.cts +0 -6
  192. package/lib/css/parse.d.mts +0 -6
  193. package/lib/css/parse.mjs +0 -22
  194. package/lib/css/parser/error.cjs +0 -23
  195. package/lib/css/parser/error.d.cts +0 -13
  196. package/lib/css/parser/error.d.mts +0 -13
  197. package/lib/css/parser/error.mjs +0 -21
  198. package/lib/css/parser/export.cjs +0 -37
  199. package/lib/css/parser/export.d.cts +0 -8
  200. package/lib/css/parser/export.d.mts +0 -8
  201. package/lib/css/parser/export.mjs +0 -35
  202. package/lib/css/parser/strings.cjs +0 -83
  203. package/lib/css/parser/strings.d.cts +0 -16
  204. package/lib/css/parser/strings.d.mts +0 -16
  205. package/lib/css/parser/strings.mjs +0 -80
  206. package/lib/css/parser/text.cjs +0 -114
  207. package/lib/css/parser/text.d.cts +0 -20
  208. package/lib/css/parser/text.d.mts +0 -20
  209. package/lib/css/parser/text.mjs +0 -109
  210. package/lib/css/parser/tokens.cjs +0 -206
  211. package/lib/css/parser/tokens.d.cts +0 -9
  212. package/lib/css/parser/tokens.d.mts +0 -9
  213. package/lib/css/parser/tokens.mjs +0 -204
  214. package/lib/css/parser/tree.cjs +0 -40
  215. package/lib/css/parser/tree.d.cts +0 -8
  216. package/lib/css/parser/tree.d.mts +0 -8
  217. package/lib/css/parser/tree.mjs +0 -38
  218. package/lib/css/parser/types.cjs +0 -2
  219. package/lib/css/parser/types.d.cts +0 -52
  220. package/lib/css/parser/types.d.mts +0 -52
  221. package/lib/css/parser/types.mjs +0 -1
  222. package/lib/download/api/cache.cjs +0 -91
  223. package/lib/download/api/cache.d.cts +0 -20
  224. package/lib/download/api/cache.d.mts +0 -20
  225. package/lib/download/api/cache.mjs +0 -86
  226. package/lib/download/api/config.cjs +0 -11
  227. package/lib/download/api/config.d.cts +0 -18
  228. package/lib/download/api/config.d.mts +0 -18
  229. package/lib/download/api/config.mjs +0 -8
  230. package/lib/download/api/download.cjs +0 -26
  231. package/lib/download/api/download.d.cts +0 -8
  232. package/lib/download/api/download.d.mts +0 -8
  233. package/lib/download/api/download.mjs +0 -24
  234. package/lib/download/api/fetch.cjs +0 -12
  235. package/lib/download/api/fetch.d.cts +0 -10
  236. package/lib/download/api/fetch.d.mts +0 -10
  237. package/lib/download/api/fetch.mjs +0 -9
  238. package/lib/download/api/index.cjs +0 -57
  239. package/lib/download/api/index.d.cts +0 -8
  240. package/lib/download/api/index.d.mts +0 -8
  241. package/lib/download/api/index.mjs +0 -55
  242. package/lib/download/api/queue.cjs +0 -104
  243. package/lib/download/api/queue.d.cts +0 -32
  244. package/lib/download/api/queue.d.mts +0 -32
  245. package/lib/download/api/queue.mjs +0 -101
  246. package/lib/download/api/types.cjs +0 -2
  247. package/lib/download/api/types.d.cts +0 -17
  248. package/lib/download/api/types.d.mts +0 -17
  249. package/lib/download/api/types.mjs +0 -1
  250. package/lib/download/git/branch.cjs +0 -19
  251. package/lib/download/git/branch.d.cts +0 -8
  252. package/lib/download/git/branch.d.mts +0 -8
  253. package/lib/download/git/branch.mjs +0 -17
  254. package/lib/download/git/hash.cjs +0 -14
  255. package/lib/download/git/hash.d.cts +0 -8
  256. package/lib/download/git/hash.d.mts +0 -8
  257. package/lib/download/git/hash.mjs +0 -12
  258. package/lib/download/git/index.cjs +0 -76
  259. package/lib/download/git/index.d.cts +0 -29
  260. package/lib/download/git/index.d.mts +0 -29
  261. package/lib/download/git/index.mjs +0 -74
  262. package/lib/download/git/reset.cjs +0 -36
  263. package/lib/download/git/reset.d.cts +0 -6
  264. package/lib/download/git/reset.d.mts +0 -6
  265. package/lib/download/git/reset.mjs +0 -34
  266. package/lib/download/github/hash.cjs +0 -31
  267. package/lib/download/github/hash.d.cts +0 -8
  268. package/lib/download/github/hash.d.mts +0 -8
  269. package/lib/download/github/hash.mjs +0 -29
  270. package/lib/download/github/index.cjs +0 -105
  271. package/lib/download/github/index.d.cts +0 -31
  272. package/lib/download/github/index.d.mts +0 -31
  273. package/lib/download/github/index.mjs +0 -103
  274. package/lib/download/github/types.cjs +0 -2
  275. package/lib/download/github/types.d.cts +0 -11
  276. package/lib/download/github/types.d.mts +0 -11
  277. package/lib/download/github/types.mjs +0 -1
  278. package/lib/download/gitlab/hash.cjs +0 -33
  279. package/lib/download/gitlab/hash.d.cts +0 -8
  280. package/lib/download/gitlab/hash.d.mts +0 -8
  281. package/lib/download/gitlab/hash.mjs +0 -31
  282. package/lib/download/gitlab/index.cjs +0 -105
  283. package/lib/download/gitlab/index.d.cts +0 -31
  284. package/lib/download/gitlab/index.d.mts +0 -31
  285. package/lib/download/gitlab/index.mjs +0 -103
  286. package/lib/download/gitlab/types.cjs +0 -5
  287. package/lib/download/gitlab/types.d.cts +0 -15
  288. package/lib/download/gitlab/types.d.mts +0 -15
  289. package/lib/download/gitlab/types.mjs +0 -3
  290. package/lib/download/helpers/untar.cjs +0 -12
  291. package/lib/download/helpers/untar.d.cts +0 -6
  292. package/lib/download/helpers/untar.d.mts +0 -6
  293. package/lib/download/helpers/untar.mjs +0 -10
  294. package/lib/download/helpers/unzip.cjs +0 -17
  295. package/lib/download/helpers/unzip.d.cts +0 -6
  296. package/lib/download/helpers/unzip.d.mts +0 -6
  297. package/lib/download/helpers/unzip.mjs +0 -11
  298. package/lib/download/index.cjs +0 -64
  299. package/lib/download/index.d.cts +0 -48
  300. package/lib/download/index.d.mts +0 -48
  301. package/lib/download/index.mjs +0 -62
  302. package/lib/download/npm/index.cjs +0 -85
  303. package/lib/download/npm/index.d.cts +0 -30
  304. package/lib/download/npm/index.d.mts +0 -30
  305. package/lib/download/npm/index.mjs +0 -83
  306. package/lib/download/npm/types.cjs +0 -2
  307. package/lib/download/npm/types.d.cts +0 -9
  308. package/lib/download/npm/types.d.mts +0 -9
  309. package/lib/download/npm/types.mjs +0 -1
  310. package/lib/download/npm/version.cjs +0 -29
  311. package/lib/download/npm/version.d.cts +0 -16
  312. package/lib/download/npm/version.d.mts +0 -16
  313. package/lib/download/npm/version.mjs +0 -26
  314. package/lib/download/types/modified.cjs +0 -2
  315. package/lib/download/types/modified.d.cts +0 -6
  316. package/lib/download/types/modified.d.mts +0 -6
  317. package/lib/download/types/modified.mjs +0 -1
  318. package/lib/download/types/sources.cjs +0 -2
  319. package/lib/download/types/sources.d.cts +0 -12
  320. package/lib/download/types/sources.d.mts +0 -12
  321. package/lib/download/types/sources.mjs +0 -1
  322. package/lib/export/directory.cjs +0 -43
  323. package/lib/export/directory.d.cts +0 -26
  324. package/lib/export/directory.d.mts +0 -26
  325. package/lib/export/directory.mjs +0 -41
  326. package/lib/export/helpers/custom-files.cjs +0 -26
  327. package/lib/export/helpers/custom-files.d.cts +0 -12
  328. package/lib/export/helpers/custom-files.d.mts +0 -12
  329. package/lib/export/helpers/custom-files.mjs +0 -24
  330. package/lib/export/helpers/prepare.cjs +0 -34
  331. package/lib/export/helpers/prepare.d.cts +0 -19
  332. package/lib/export/helpers/prepare.d.mts +0 -19
  333. package/lib/export/helpers/prepare.mjs +0 -31
  334. package/lib/export/helpers/types-version.cjs +0 -12
  335. package/lib/export/helpers/types-version.d.cts +0 -6
  336. package/lib/export/helpers/types-version.d.mts +0 -6
  337. package/lib/export/helpers/types-version.mjs +0 -10
  338. package/lib/export/icon-package.cjs +0 -56
  339. package/lib/export/icon-package.d.cts +0 -26
  340. package/lib/export/icon-package.d.mts +0 -26
  341. package/lib/export/icon-package.mjs +0 -54
  342. package/lib/export/json-package.cjs +0 -144
  343. package/lib/export/json-package.d.cts +0 -25
  344. package/lib/export/json-package.d.mts +0 -25
  345. package/lib/export/json-package.mjs +0 -142
  346. package/lib/icon-set/index.cjs +0 -720
  347. package/lib/icon-set/index.d.cts +0 -162
  348. package/lib/icon-set/index.d.mts +0 -162
  349. package/lib/icon-set/index.mjs +0 -716
  350. package/lib/icon-set/match.cjs +0 -56
  351. package/lib/icon-set/match.d.cts +0 -15
  352. package/lib/icon-set/match.d.mts +0 -15
  353. package/lib/icon-set/match.mjs +0 -54
  354. package/lib/icon-set/merge.cjs +0 -87
  355. package/lib/icon-set/merge.d.cts +0 -14
  356. package/lib/icon-set/merge.d.mts +0 -14
  357. package/lib/icon-set/merge.mjs +0 -85
  358. package/lib/icon-set/modified.cjs +0 -25
  359. package/lib/icon-set/modified.d.cts +0 -16
  360. package/lib/icon-set/modified.d.mts +0 -16
  361. package/lib/icon-set/modified.mjs +0 -23
  362. package/lib/icon-set/props.cjs +0 -16
  363. package/lib/icon-set/props.d.cts +0 -13
  364. package/lib/icon-set/props.d.mts +0 -13
  365. package/lib/icon-set/props.mjs +0 -13
  366. package/lib/icon-set/tags.cjs +0 -95
  367. package/lib/icon-set/tags.d.cts +0 -25
  368. package/lib/icon-set/tags.d.mts +0 -25
  369. package/lib/icon-set/tags.mjs +0 -91
  370. package/lib/icon-set/types.cjs +0 -2
  371. package/lib/icon-set/types.d.cts +0 -75
  372. package/lib/icon-set/types.d.mts +0 -75
  373. package/lib/icon-set/types.mjs +0 -1
  374. package/lib/import/directory.cjs +0 -169
  375. package/lib/import/directory.d.cts +0 -52
  376. package/lib/import/directory.d.mts +0 -52
  377. package/lib/import/directory.mjs +0 -166
  378. package/lib/import/figma/index.cjs +0 -115
  379. package/lib/import/figma/index.d.cts +0 -20
  380. package/lib/import/figma/index.d.mts +0 -20
  381. package/lib/import/figma/index.mjs +0 -113
  382. package/lib/import/figma/nodes.cjs +0 -90
  383. package/lib/import/figma/nodes.d.cts +0 -18
  384. package/lib/import/figma/nodes.d.mts +0 -18
  385. package/lib/import/figma/nodes.mjs +0 -88
  386. package/lib/import/figma/query.cjs +0 -260
  387. package/lib/import/figma/query.d.cts +0 -42
  388. package/lib/import/figma/query.d.mts +0 -42
  389. package/lib/import/figma/query.mjs +0 -256
  390. package/lib/import/figma/types/api.cjs +0 -2
  391. package/lib/import/figma/types/api.d.cts +0 -53
  392. package/lib/import/figma/types/api.d.mts +0 -53
  393. package/lib/import/figma/types/api.mjs +0 -1
  394. package/lib/import/figma/types/nodes.cjs +0 -2
  395. package/lib/import/figma/types/nodes.d.cts +0 -44
  396. package/lib/import/figma/types/nodes.d.mts +0 -44
  397. package/lib/import/figma/types/nodes.mjs +0 -1
  398. package/lib/import/figma/types/options.cjs +0 -2
  399. package/lib/import/figma/types/options.d.cts +0 -59
  400. package/lib/import/figma/types/options.d.mts +0 -59
  401. package/lib/import/figma/types/options.mjs +0 -1
  402. package/lib/import/figma/types/result.cjs +0 -2
  403. package/lib/import/figma/types/result.d.cts +0 -44
  404. package/lib/import/figma/types/result.d.mts +0 -44
  405. package/lib/import/figma/types/result.mjs +0 -1
  406. package/lib/index.cjs +0 -157
  407. package/lib/index.d.cts +0 -80
  408. package/lib/index.d.mts +0 -80
  409. package/lib/index.mjs +0 -91
  410. package/lib/misc/bump-version.cjs +0 -15
  411. package/lib/misc/bump-version.d.cts +0 -6
  412. package/lib/misc/bump-version.d.mts +0 -6
  413. package/lib/misc/bump-version.mjs +0 -13
  414. package/lib/misc/cheerio.cjs +0 -2
  415. package/lib/misc/cheerio.d.cts +0 -10
  416. package/lib/misc/cheerio.d.mts +0 -10
  417. package/lib/misc/cheerio.d.ts +0 -10
  418. package/lib/misc/cheerio.mjs +0 -1
  419. package/lib/misc/compare-dirs.cjs +0 -75
  420. package/lib/misc/compare-dirs.d.cts +0 -11
  421. package/lib/misc/compare-dirs.d.mts +0 -11
  422. package/lib/misc/compare-dirs.mjs +0 -73
  423. package/lib/misc/exec.cjs +0 -27
  424. package/lib/misc/exec.d.cts +0 -12
  425. package/lib/misc/exec.d.mts +0 -12
  426. package/lib/misc/exec.mjs +0 -25
  427. package/lib/misc/keyword.cjs +0 -20
  428. package/lib/misc/keyword.d.cts +0 -6
  429. package/lib/misc/keyword.d.mts +0 -6
  430. package/lib/misc/keyword.mjs +0 -18
  431. package/lib/misc/scan.cjs +0 -114
  432. package/lib/misc/scan.d.cts +0 -33
  433. package/lib/misc/scan.d.mts +0 -33
  434. package/lib/misc/scan.mjs +0 -111
  435. package/lib/misc/write-json.cjs +0 -9
  436. package/lib/misc/write-json.d.cts +0 -6
  437. package/lib/misc/write-json.d.mts +0 -6
  438. package/lib/misc/write-json.mjs +0 -7
  439. package/lib/optimise/figma.cjs +0 -232
  440. package/lib/optimise/figma.d.cts +0 -14
  441. package/lib/optimise/figma.d.mts +0 -14
  442. package/lib/optimise/figma.mjs +0 -230
  443. package/lib/optimise/flags.cjs +0 -256
  444. package/lib/optimise/flags.d.cts +0 -11
  445. package/lib/optimise/flags.d.mts +0 -11
  446. package/lib/optimise/flags.mjs +0 -254
  447. package/lib/optimise/global-style.cjs +0 -158
  448. package/lib/optimise/global-style.d.cts +0 -11
  449. package/lib/optimise/global-style.d.mts +0 -11
  450. package/lib/optimise/global-style.mjs +0 -156
  451. package/lib/optimise/mask.cjs +0 -110
  452. package/lib/optimise/mask.d.cts +0 -24
  453. package/lib/optimise/mask.d.mts +0 -24
  454. package/lib/optimise/mask.mjs +0 -108
  455. package/lib/optimise/origin.cjs +0 -23
  456. package/lib/optimise/origin.d.cts +0 -11
  457. package/lib/optimise/origin.d.mts +0 -11
  458. package/lib/optimise/origin.mjs +0 -21
  459. package/lib/optimise/scale.cjs +0 -27
  460. package/lib/optimise/scale.d.cts +0 -11
  461. package/lib/optimise/scale.d.mts +0 -11
  462. package/lib/optimise/scale.mjs +0 -25
  463. package/lib/optimise/svgo.cjs +0 -107
  464. package/lib/optimise/svgo.d.cts +0 -37
  465. package/lib/optimise/svgo.d.mts +0 -37
  466. package/lib/optimise/svgo.mjs +0 -104
  467. package/lib/optimise/unwrap.cjs +0 -31
  468. package/lib/optimise/unwrap.d.cts +0 -11
  469. package/lib/optimise/unwrap.d.mts +0 -11
  470. package/lib/optimise/unwrap.mjs +0 -29
  471. package/lib/svg/analyse/error.cjs +0 -16
  472. package/lib/svg/analyse/error.d.cts +0 -11
  473. package/lib/svg/analyse/error.d.mts +0 -11
  474. package/lib/svg/analyse/error.mjs +0 -14
  475. package/lib/svg/analyse/types.cjs +0 -2
  476. package/lib/svg/analyse/types.d.cts +0 -93
  477. package/lib/svg/analyse/types.d.mts +0 -93
  478. package/lib/svg/analyse/types.mjs +0 -1
  479. package/lib/svg/analyse.cjs +0 -303
  480. package/lib/svg/analyse.d.cts +0 -16
  481. package/lib/svg/analyse.d.mts +0 -16
  482. package/lib/svg/analyse.mjs +0 -301
  483. package/lib/svg/cleanup/attribs.cjs +0 -39
  484. package/lib/svg/cleanup/attribs.d.cts +0 -11
  485. package/lib/svg/cleanup/attribs.d.mts +0 -11
  486. package/lib/svg/cleanup/attribs.mjs +0 -37
  487. package/lib/svg/cleanup/bad-tags.cjs +0 -69
  488. package/lib/svg/cleanup/bad-tags.d.cts +0 -17
  489. package/lib/svg/cleanup/bad-tags.d.mts +0 -17
  490. package/lib/svg/cleanup/bad-tags.mjs +0 -67
  491. package/lib/svg/cleanup/inline-style.cjs +0 -97
  492. package/lib/svg/cleanup/inline-style.d.cts +0 -11
  493. package/lib/svg/cleanup/inline-style.d.mts +0 -11
  494. package/lib/svg/cleanup/inline-style.mjs +0 -95
  495. package/lib/svg/cleanup/root-style.cjs +0 -34
  496. package/lib/svg/cleanup/root-style.d.cts +0 -17
  497. package/lib/svg/cleanup/root-style.d.mts +0 -17
  498. package/lib/svg/cleanup/root-style.mjs +0 -32
  499. package/lib/svg/cleanup/root-svg.cjs +0 -84
  500. package/lib/svg/cleanup/root-svg.d.cts +0 -11
  501. package/lib/svg/cleanup/root-svg.d.mts +0 -11
  502. package/lib/svg/cleanup/root-svg.mjs +0 -82
  503. package/lib/svg/cleanup/svgo-style.cjs +0 -43
  504. package/lib/svg/cleanup/svgo-style.d.cts +0 -11
  505. package/lib/svg/cleanup/svgo-style.d.mts +0 -11
  506. package/lib/svg/cleanup/svgo-style.mjs +0 -41
  507. package/lib/svg/cleanup.cjs +0 -33
  508. package/lib/svg/cleanup.d.cts +0 -16
  509. package/lib/svg/cleanup.d.mts +0 -16
  510. package/lib/svg/cleanup.mjs +0 -31
  511. package/lib/svg/data/attributes.cjs +0 -373
  512. package/lib/svg/data/attributes.d.cts +0 -77
  513. package/lib/svg/data/attributes.d.mts +0 -77
  514. package/lib/svg/data/attributes.mjs +0 -346
  515. package/lib/svg/data/tags.cjs +0 -141
  516. package/lib/svg/data/tags.d.cts +0 -95
  517. package/lib/svg/data/tags.d.mts +0 -95
  518. package/lib/svg/data/tags.mjs +0 -117
  519. package/lib/svg/index.cjs +0 -178
  520. package/lib/svg/index.d.cts +0 -52
  521. package/lib/svg/index.d.mts +0 -52
  522. package/lib/svg/index.mjs +0 -162
  523. package/lib/svg/parse-style.cjs +0 -243
  524. package/lib/svg/parse-style.d.cts +0 -59
  525. package/lib/svg/parse-style.d.mts +0 -59
  526. package/lib/svg/parse-style.mjs +0 -241
  527. package/lib/svg/parse.cjs +0 -46
  528. package/lib/svg/parse.d.cts +0 -31
  529. package/lib/svg/parse.d.mts +0 -31
  530. package/lib/svg/parse.mjs +0 -44
@@ -1,256 +0,0 @@
1
- 'use strict';
2
-
3
- const svg_parse = require('../svg/parse.cjs');
4
-
5
- const CLOSE_PATH = 1;
6
- const MOVE_TO = 2;
7
- const HORIZ_LINE_TO = 4;
8
- const VERT_LINE_TO = 8;
9
- const LINE_TO = 16;
10
- const CURVE_TO = 32;
11
- const SMOOTH_CURVE_TO = 64;
12
- const QUAD_TO = 128;
13
- const SMOOTH_QUAD_TO = 256;
14
- const ARC = 512;
15
- const argCount = {
16
- [MOVE_TO]: 2,
17
- [LINE_TO]: 2,
18
- [HORIZ_LINE_TO]: 1,
19
- [VERT_LINE_TO]: 1,
20
- [CLOSE_PATH]: 0,
21
- [QUAD_TO]: 4,
22
- [SMOOTH_QUAD_TO]: 2,
23
- [CURVE_TO]: 6,
24
- [SMOOTH_CURVE_TO]: 4,
25
- [ARC]: 7
26
- };
27
- const isDigit = (num) => num >= 48 && num <= 57;
28
- const isWhiteSpace = (num) => num === 32 || num === 9 || num === 13 || num === 10;
29
- function cleanPath(path) {
30
- const commands = [];
31
- const length = path.length;
32
- let currentNumber = "";
33
- let currentNumberHasExp = false;
34
- let currentNumberHasExpDigits = false;
35
- let currentNumberHasDecimal = false;
36
- let canParseCommandOrComma = true;
37
- let currentCommand = null;
38
- let currentCommandType = null;
39
- let currentArgs = [];
40
- let i = 0;
41
- const finishCommand = () => {
42
- if (currentCommand !== null) {
43
- commands.push({
44
- command: currentCommand,
45
- params: currentArgs.slice(0)
46
- });
47
- currentArgs = [];
48
- canParseCommandOrComma = true;
49
- switch (currentCommand) {
50
- case "M":
51
- currentCommand = "L";
52
- break;
53
- case "m":
54
- currentCommand = "l";
55
- break;
56
- }
57
- }
58
- };
59
- const parseNumber = () => {
60
- if (currentNumber !== "" && currentCommandType) {
61
- let value = Number(currentNumber);
62
- if (isNaN(value)) {
63
- throw new Error(`Invalid number "${currentNumber}" at ${i}`);
64
- }
65
- if (currentCommandType === ARC) {
66
- if (currentArgs.length < 2 && value <= 0) {
67
- throw new Error(
68
- `Expected positive number, got "${value}" at ${i}`
69
- );
70
- }
71
- while (true) {
72
- if (currentArgs.length < 3 || currentArgs.length > 4) {
73
- break;
74
- }
75
- if (currentNumber === "0" || currentNumber === "1") {
76
- break;
77
- }
78
- const slice = currentNumber.slice(0, 1);
79
- const newNumber = currentNumber.slice(1);
80
- const newValue = Number(newNumber);
81
- if (slice === "0" || slice === "1") {
82
- if (isNaN(newValue)) {
83
- throw new Error(
84
- `Invalid number "${currentNumber}" at ${i}`
85
- );
86
- }
87
- currentArgs.push(slice);
88
- currentNumber = newNumber;
89
- value = newValue;
90
- continue;
91
- }
92
- throw new Error(
93
- `Expected a flag, got "${currentNumber}" at ${i}`
94
- );
95
- }
96
- }
97
- currentArgs.push(currentNumber);
98
- if (currentArgs.length === argCount[currentCommandType]) {
99
- finishCommand();
100
- }
101
- currentNumber = "";
102
- currentNumberHasExpDigits = false;
103
- currentNumberHasExp = false;
104
- currentNumberHasDecimal = false;
105
- canParseCommandOrComma = true;
106
- }
107
- };
108
- for (i = 0; i < length; i++) {
109
- const char = path[i];
110
- const num = char.charCodeAt(0);
111
- if (isDigit(num)) {
112
- currentNumber += char;
113
- currentNumberHasExpDigits = currentNumberHasExp;
114
- continue;
115
- }
116
- if (char === "e" || char === "E") {
117
- currentNumber += char;
118
- currentNumberHasExp = true;
119
- continue;
120
- }
121
- if ((char === "-" || char === "+") && currentNumberHasExp && !currentNumberHasExpDigits) {
122
- currentNumber += char;
123
- continue;
124
- }
125
- if (char === "." && !currentNumberHasExp && !currentNumberHasDecimal) {
126
- currentNumber += char;
127
- currentNumberHasDecimal = true;
128
- continue;
129
- }
130
- parseNumber();
131
- if (isWhiteSpace(num)) {
132
- continue;
133
- }
134
- if (canParseCommandOrComma && char === ",") {
135
- canParseCommandOrComma = false;
136
- continue;
137
- }
138
- if (char === "+" || char === "-" || char === ".") {
139
- currentNumber = char;
140
- currentNumberHasDecimal = char === ".";
141
- continue;
142
- }
143
- if (currentArgs.length > 0) {
144
- throw new Error(`Unexpected command at ${i}`);
145
- }
146
- if (!canParseCommandOrComma) {
147
- throw new Error(`Command cannot follow comma at ${i}`);
148
- }
149
- canParseCommandOrComma = false;
150
- currentCommand = char;
151
- switch (char) {
152
- case "z":
153
- case "Z":
154
- commands.push({
155
- command: char,
156
- params: []
157
- });
158
- canParseCommandOrComma = true;
159
- currentCommandType = null;
160
- currentCommand = null;
161
- break;
162
- case "h":
163
- case "H":
164
- currentCommandType = HORIZ_LINE_TO;
165
- break;
166
- case "v":
167
- case "V":
168
- currentCommandType = VERT_LINE_TO;
169
- break;
170
- case "m":
171
- case "M":
172
- currentCommandType = MOVE_TO;
173
- break;
174
- case "l":
175
- case "L":
176
- currentCommandType = LINE_TO;
177
- break;
178
- case "c":
179
- case "C":
180
- currentCommandType = CURVE_TO;
181
- break;
182
- case "s":
183
- case "S":
184
- currentCommandType = SMOOTH_CURVE_TO;
185
- break;
186
- case "q":
187
- case "Q":
188
- currentCommandType = QUAD_TO;
189
- break;
190
- case "t":
191
- case "T":
192
- currentCommandType = SMOOTH_QUAD_TO;
193
- break;
194
- case "a":
195
- case "A":
196
- currentCommandType = ARC;
197
- break;
198
- default:
199
- throw new Error(`Unexpected character "${char}" at ${i}`);
200
- }
201
- }
202
- parseNumber();
203
- if (currentArgs.length) {
204
- if (!currentCommandType) {
205
- throw new Error("Empty path");
206
- }
207
- if (currentArgs.length !== argCount[currentCommandType]) {
208
- throw new Error(`Unexpected end of path at ${i}`);
209
- }
210
- finishCommand();
211
- }
212
- let output = "";
213
- commands.forEach((item) => {
214
- output += item.command;
215
- item.params.forEach((value, index) => {
216
- if (index > 0) {
217
- const char = value[0];
218
- switch (char) {
219
- case "-":
220
- case "+":
221
- break;
222
- case ".":
223
- if (index < 1) {
224
- break;
225
- }
226
- if (item.params[index - 1].includes(".")) {
227
- break;
228
- }
229
- default:
230
- output += " ";
231
- }
232
- }
233
- output += value;
234
- });
235
- });
236
- return output;
237
- }
238
- function deOptimisePaths(svg) {
239
- svg_parse.parseSVG(svg, (item) => {
240
- if (item.tagName !== "path") {
241
- return;
242
- }
243
- const d = item.element.attribs.d;
244
- if (typeof d === "string") {
245
- try {
246
- const optimised = cleanPath(d);
247
- if (optimised !== d) {
248
- item.$element.attr("d", optimised);
249
- }
250
- } catch {
251
- }
252
- }
253
- });
254
- }
255
-
256
- exports.deOptimisePaths = deOptimisePaths;
@@ -1,11 +0,0 @@
1
- import { SVG } from '../svg/index.cjs';
2
- import 'cheerio';
3
- import '@iconify/types';
4
- import '@iconify/utils/lib/customisations/defaults';
5
-
6
- /**
7
- * De-optimise paths. Compressed paths are still not supported by some software.
8
- */
9
- declare function deOptimisePaths(svg: SVG): void;
10
-
11
- export { deOptimisePaths };
@@ -1,11 +0,0 @@
1
- import { SVG } from '../svg/index.mjs';
2
- import 'cheerio';
3
- import '@iconify/types';
4
- import '@iconify/utils/lib/customisations/defaults';
5
-
6
- /**
7
- * De-optimise paths. Compressed paths are still not supported by some software.
8
- */
9
- declare function deOptimisePaths(svg: SVG): void;
10
-
11
- export { deOptimisePaths };
@@ -1,254 +0,0 @@
1
- import { parseSVG } from '../svg/parse.mjs';
2
-
3
- const CLOSE_PATH = 1;
4
- const MOVE_TO = 2;
5
- const HORIZ_LINE_TO = 4;
6
- const VERT_LINE_TO = 8;
7
- const LINE_TO = 16;
8
- const CURVE_TO = 32;
9
- const SMOOTH_CURVE_TO = 64;
10
- const QUAD_TO = 128;
11
- const SMOOTH_QUAD_TO = 256;
12
- const ARC = 512;
13
- const argCount = {
14
- [MOVE_TO]: 2,
15
- [LINE_TO]: 2,
16
- [HORIZ_LINE_TO]: 1,
17
- [VERT_LINE_TO]: 1,
18
- [CLOSE_PATH]: 0,
19
- [QUAD_TO]: 4,
20
- [SMOOTH_QUAD_TO]: 2,
21
- [CURVE_TO]: 6,
22
- [SMOOTH_CURVE_TO]: 4,
23
- [ARC]: 7
24
- };
25
- const isDigit = (num) => num >= 48 && num <= 57;
26
- const isWhiteSpace = (num) => num === 32 || num === 9 || num === 13 || num === 10;
27
- function cleanPath(path) {
28
- const commands = [];
29
- const length = path.length;
30
- let currentNumber = "";
31
- let currentNumberHasExp = false;
32
- let currentNumberHasExpDigits = false;
33
- let currentNumberHasDecimal = false;
34
- let canParseCommandOrComma = true;
35
- let currentCommand = null;
36
- let currentCommandType = null;
37
- let currentArgs = [];
38
- let i = 0;
39
- const finishCommand = () => {
40
- if (currentCommand !== null) {
41
- commands.push({
42
- command: currentCommand,
43
- params: currentArgs.slice(0)
44
- });
45
- currentArgs = [];
46
- canParseCommandOrComma = true;
47
- switch (currentCommand) {
48
- case "M":
49
- currentCommand = "L";
50
- break;
51
- case "m":
52
- currentCommand = "l";
53
- break;
54
- }
55
- }
56
- };
57
- const parseNumber = () => {
58
- if (currentNumber !== "" && currentCommandType) {
59
- let value = Number(currentNumber);
60
- if (isNaN(value)) {
61
- throw new Error(`Invalid number "${currentNumber}" at ${i}`);
62
- }
63
- if (currentCommandType === ARC) {
64
- if (currentArgs.length < 2 && value <= 0) {
65
- throw new Error(
66
- `Expected positive number, got "${value}" at ${i}`
67
- );
68
- }
69
- while (true) {
70
- if (currentArgs.length < 3 || currentArgs.length > 4) {
71
- break;
72
- }
73
- if (currentNumber === "0" || currentNumber === "1") {
74
- break;
75
- }
76
- const slice = currentNumber.slice(0, 1);
77
- const newNumber = currentNumber.slice(1);
78
- const newValue = Number(newNumber);
79
- if (slice === "0" || slice === "1") {
80
- if (isNaN(newValue)) {
81
- throw new Error(
82
- `Invalid number "${currentNumber}" at ${i}`
83
- );
84
- }
85
- currentArgs.push(slice);
86
- currentNumber = newNumber;
87
- value = newValue;
88
- continue;
89
- }
90
- throw new Error(
91
- `Expected a flag, got "${currentNumber}" at ${i}`
92
- );
93
- }
94
- }
95
- currentArgs.push(currentNumber);
96
- if (currentArgs.length === argCount[currentCommandType]) {
97
- finishCommand();
98
- }
99
- currentNumber = "";
100
- currentNumberHasExpDigits = false;
101
- currentNumberHasExp = false;
102
- currentNumberHasDecimal = false;
103
- canParseCommandOrComma = true;
104
- }
105
- };
106
- for (i = 0; i < length; i++) {
107
- const char = path[i];
108
- const num = char.charCodeAt(0);
109
- if (isDigit(num)) {
110
- currentNumber += char;
111
- currentNumberHasExpDigits = currentNumberHasExp;
112
- continue;
113
- }
114
- if (char === "e" || char === "E") {
115
- currentNumber += char;
116
- currentNumberHasExp = true;
117
- continue;
118
- }
119
- if ((char === "-" || char === "+") && currentNumberHasExp && !currentNumberHasExpDigits) {
120
- currentNumber += char;
121
- continue;
122
- }
123
- if (char === "." && !currentNumberHasExp && !currentNumberHasDecimal) {
124
- currentNumber += char;
125
- currentNumberHasDecimal = true;
126
- continue;
127
- }
128
- parseNumber();
129
- if (isWhiteSpace(num)) {
130
- continue;
131
- }
132
- if (canParseCommandOrComma && char === ",") {
133
- canParseCommandOrComma = false;
134
- continue;
135
- }
136
- if (char === "+" || char === "-" || char === ".") {
137
- currentNumber = char;
138
- currentNumberHasDecimal = char === ".";
139
- continue;
140
- }
141
- if (currentArgs.length > 0) {
142
- throw new Error(`Unexpected command at ${i}`);
143
- }
144
- if (!canParseCommandOrComma) {
145
- throw new Error(`Command cannot follow comma at ${i}`);
146
- }
147
- canParseCommandOrComma = false;
148
- currentCommand = char;
149
- switch (char) {
150
- case "z":
151
- case "Z":
152
- commands.push({
153
- command: char,
154
- params: []
155
- });
156
- canParseCommandOrComma = true;
157
- currentCommandType = null;
158
- currentCommand = null;
159
- break;
160
- case "h":
161
- case "H":
162
- currentCommandType = HORIZ_LINE_TO;
163
- break;
164
- case "v":
165
- case "V":
166
- currentCommandType = VERT_LINE_TO;
167
- break;
168
- case "m":
169
- case "M":
170
- currentCommandType = MOVE_TO;
171
- break;
172
- case "l":
173
- case "L":
174
- currentCommandType = LINE_TO;
175
- break;
176
- case "c":
177
- case "C":
178
- currentCommandType = CURVE_TO;
179
- break;
180
- case "s":
181
- case "S":
182
- currentCommandType = SMOOTH_CURVE_TO;
183
- break;
184
- case "q":
185
- case "Q":
186
- currentCommandType = QUAD_TO;
187
- break;
188
- case "t":
189
- case "T":
190
- currentCommandType = SMOOTH_QUAD_TO;
191
- break;
192
- case "a":
193
- case "A":
194
- currentCommandType = ARC;
195
- break;
196
- default:
197
- throw new Error(`Unexpected character "${char}" at ${i}`);
198
- }
199
- }
200
- parseNumber();
201
- if (currentArgs.length) {
202
- if (!currentCommandType) {
203
- throw new Error("Empty path");
204
- }
205
- if (currentArgs.length !== argCount[currentCommandType]) {
206
- throw new Error(`Unexpected end of path at ${i}`);
207
- }
208
- finishCommand();
209
- }
210
- let output = "";
211
- commands.forEach((item) => {
212
- output += item.command;
213
- item.params.forEach((value, index) => {
214
- if (index > 0) {
215
- const char = value[0];
216
- switch (char) {
217
- case "-":
218
- case "+":
219
- break;
220
- case ".":
221
- if (index < 1) {
222
- break;
223
- }
224
- if (item.params[index - 1].includes(".")) {
225
- break;
226
- }
227
- default:
228
- output += " ";
229
- }
230
- }
231
- output += value;
232
- });
233
- });
234
- return output;
235
- }
236
- function deOptimisePaths(svg) {
237
- parseSVG(svg, (item) => {
238
- if (item.tagName !== "path") {
239
- return;
240
- }
241
- const d = item.element.attribs.d;
242
- if (typeof d === "string") {
243
- try {
244
- const optimised = cleanPath(d);
245
- if (optimised !== d) {
246
- item.$element.attr("d", optimised);
247
- }
248
- } catch {
249
- }
250
- }
251
- });
252
- }
253
-
254
- export { deOptimisePaths };
@@ -1,158 +0,0 @@
1
- 'use strict';
2
-
3
- const svg_data_tags = require('../svg/data/tags.cjs');
4
- const svg_parse = require('../svg/parse.cjs');
5
- const svg_parseStyle = require('../svg/parse-style.cjs');
6
- require('../css/parse.cjs');
7
- require('../css/parser/tokens.cjs');
8
- require('../css/parser/error.cjs');
9
- require('../css/parser/strings.cjs');
10
- require('../css/parser/text.cjs');
11
- require('../css/parser/export.cjs');
12
- require('../css/parser/tree.cjs');
13
-
14
- function getClassList(value) {
15
- return value?.split(/\s+/);
16
- }
17
- const tempDataAttrbiute = "data-gstyle-temp";
18
- function cleanupGlobalStyle(svg) {
19
- const backup = svg.toString();
20
- let containsTempAttr = false;
21
- const animatedClasses = /* @__PURE__ */ new Set();
22
- svg_parse.parseSVG(svg, (item) => {
23
- if (!svg_data_tags.animateTags.has(item.tagName)) {
24
- return;
25
- }
26
- const $element = item.$element;
27
- if ($element.attr("attributeName") !== "class") {
28
- return;
29
- }
30
- ["from", "to", "values"].forEach((attr) => {
31
- const value = $element.attr(attr);
32
- if (typeof value !== "string") {
33
- return;
34
- }
35
- value.split(";").forEach((item2) => {
36
- getClassList(item2).forEach((className) => {
37
- animatedClasses.add(className);
38
- });
39
- });
40
- });
41
- });
42
- const removeClasses = /* @__PURE__ */ new Set();
43
- try {
44
- svg_parseStyle.parseSVGStyle(svg, (styleItem) => {
45
- const returnValue = styleItem.value;
46
- if (styleItem.type !== "global") {
47
- return returnValue;
48
- }
49
- const selectorTokens = styleItem.selectorTokens;
50
- for (let i = 0; i < selectorTokens.length; i++) {
51
- const selectorToken = selectorTokens[i];
52
- if (selectorToken.type !== "selector") {
53
- return returnValue;
54
- }
55
- }
56
- const selectors = styleItem.selectors;
57
- const matches = [];
58
- for (let i = 0; i < selectors.length; i++) {
59
- const selector = styleItem.selectors[i];
60
- const firstChar = selector.charAt(0);
61
- let matchType;
62
- if (firstChar === ".") {
63
- matchType = "class";
64
- } else if (firstChar === "#") {
65
- matchType = "id";
66
- } else if (svg_data_tags.allValidTags.has(selector)) {
67
- matchType = "tag";
68
- } else {
69
- return returnValue;
70
- }
71
- const valueMatch = matchType === "tag" ? selector : selector.slice(1);
72
- if (matchType === "class" && animatedClasses.has(valueMatch)) {
73
- return returnValue;
74
- }
75
- matches.push({
76
- type: matchType,
77
- value: valueMatch
78
- });
79
- }
80
- const isMatch = (tagName, $element) => {
81
- for (let i = 0; i < matches.length; i++) {
82
- const { type, value } = matches[i];
83
- switch (type) {
84
- case "id":
85
- if ($element.attr("id") === value) {
86
- return true;
87
- }
88
- break;
89
- case "tag":
90
- if (tagName === value) {
91
- return true;
92
- }
93
- break;
94
- case "class": {
95
- const className = $element.attr("class");
96
- if (className && getClassList(className).includes(value)) {
97
- return true;
98
- }
99
- }
100
- }
101
- }
102
- return false;
103
- };
104
- svg_parse.parseSVG(svg, (svgItem) => {
105
- const tagName = svgItem.tagName;
106
- const $element = svgItem.$element;
107
- if (!isMatch(tagName, $element)) {
108
- return;
109
- }
110
- const addedAttributes = new Set(
111
- $element.attr(tempDataAttrbiute)?.split(/\s+/)
112
- );
113
- const prop = styleItem.prop;
114
- if ($element.attr(prop) !== void 0) {
115
- if (addedAttributes.has(prop)) {
116
- throw new Error("Duplicate attribute");
117
- }
118
- }
119
- $element.attr(prop, styleItem.value);
120
- addedAttributes.add(prop);
121
- $element.attr(
122
- tempDataAttrbiute,
123
- Array.from(addedAttributes).join(" ")
124
- );
125
- containsTempAttr = true;
126
- });
127
- matches.forEach((match) => {
128
- if (match.type === "class") {
129
- removeClasses.add(match.value);
130
- }
131
- });
132
- });
133
- svg_parse.parseSVG(svg, (svgItem) => {
134
- const $element = svgItem.$element;
135
- const classList = getClassList($element.attr("class"));
136
- if (!classList) {
137
- return;
138
- }
139
- const filtered = classList.filter(
140
- (item) => !removeClasses.has(item)
141
- );
142
- if (!filtered.length) {
143
- $element.removeAttr("class");
144
- } else {
145
- $element.attr("class", filtered.join(" "));
146
- }
147
- });
148
- if (containsTempAttr) {
149
- svg_parse.parseSVG(svg, (item) => {
150
- item.$element.removeAttr(tempDataAttrbiute);
151
- });
152
- }
153
- } catch {
154
- svg.load(backup);
155
- }
156
- }
157
-
158
- exports.cleanupGlobalStyle = cleanupGlobalStyle;
@@ -1,11 +0,0 @@
1
- import { SVG } from '../svg/index.cjs';
2
- import 'cheerio';
3
- import '@iconify/types';
4
- import '@iconify/utils/lib/customisations/defaults';
5
-
6
- /**
7
- * Expand global style
8
- */
9
- declare function cleanupGlobalStyle(svg: SVG): void;
10
-
11
- export { cleanupGlobalStyle };
@@ -1,11 +0,0 @@
1
- import { SVG } from '../svg/index.mjs';
2
- import 'cheerio';
3
- import '@iconify/types';
4
- import '@iconify/utils/lib/customisations/defaults';
5
-
6
- /**
7
- * Expand global style
8
- */
9
- declare function cleanupGlobalStyle(svg: SVG): void;
10
-
11
- export { cleanupGlobalStyle };