@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,29 +1,20 @@
1
- import { APICacheOptions } from '../../download/api/types.js';
2
- import { DocumentNotModified } from '../../download/types/modified.js';
3
- import { FigmaDocument } from './types/api.js';
4
- import { FigmaIfModifiedSinceOption, FigmaFilesQueryOptions, FigmaImagesQueryOptions } from './types/options.js';
5
- import { FigmaNodesImportResult, FigmaIconNode } from './types/result.js';
6
- import '../../icon-set/index.js';
7
- import '@iconify/types';
8
- import '@iconify/utils/lib/customisations/defaults';
9
- import '../../icon-set/types.js';
10
- import '../../svg/index.js';
11
- import 'cheerio';
12
- import '@iconify/utils/lib/icon-set/tree';
13
- import './types/nodes.js';
14
-
1
+ import { APICacheOptions } from "../../download/api/types.js";
2
+ import { DocumentNotModified } from "../../download/types/modified.js";
3
+ import { FigmaDocument } from "./types/api.js";
4
+ import { FigmaIconNode, FigmaNodesImportResult } from "./types/result.js";
5
+ import { FigmaFilesQueryOptions, FigmaIfModifiedSinceOption, FigmaImagesQueryOptions } from "./types/options.js";
15
6
  /**
16
7
  * Extra parameters added to runConcurrentQueries()
17
8
  *
18
9
  * Can be used to identify failed items in onfail callback
19
10
  */
20
11
  interface FigmaIconNodeWithURL extends FigmaIconNode {
21
- url: string;
12
+ url: string;
22
13
  }
23
14
  type FigmaConcurrentQueriesParamsFunction = 'figmaImagesQuery' | 'figmaDownloadImages';
24
15
  interface FigmaConcurrentQueriesParams<T extends FigmaConcurrentQueriesParamsFunction> {
25
- function: T;
26
- payload: T extends 'figmaImagesQuery' ? string[][] : FigmaIconNodeWithURL[];
16
+ function: T;
17
+ payload: T extends 'figmaImagesQuery' ? string[][] : FigmaIconNodeWithURL[];
27
18
  }
28
19
  /**
29
20
  * Get Figma files
@@ -38,5 +29,4 @@ declare function figmaImagesQuery(options: FigmaImagesQueryOptions, nodes: Figma
38
29
  * Download all images
39
30
  */
40
31
  declare function figmaDownloadImages(nodes: FigmaNodesImportResult, cache?: APICacheOptions): Promise<FigmaNodesImportResult>;
41
-
42
- export { type FigmaConcurrentQueriesParams, type FigmaConcurrentQueriesParamsFunction, figmaDownloadImages, figmaFilesQuery, figmaImagesQuery };
32
+ export { FigmaConcurrentQueriesParams, FigmaConcurrentQueriesParamsFunction, figmaDownloadImages, figmaFilesQuery, figmaImagesQuery };
@@ -0,0 +1,183 @@
1
+ import { apiCacheKey, clearAPICache, getAPICache } from "../../download/api/cache.js";
2
+ import { sendAPIQuery } from "../../download/api/index.js";
3
+ import { runConcurrentQueries } from "../../download/api/queue.js";
4
+
5
+ /**
6
+ * Compare last modified dates
7
+ */
8
+ function identicalDates(actual, expected) {
9
+ if (typeof actual !== "string") return false;
10
+ if (actual === expected) return true;
11
+ return new Date(actual).toString() === new Date(expected).toString();
12
+ }
13
+ async function figmaFilesQuery(options, cache) {
14
+ if (!options.token) throw new Error("Missing Figma API token");
15
+ const params = new URLSearchParams();
16
+ if (options.ids) params.set("ids", options.ids.join(","));
17
+ if (options.version) params.set("version", options.version);
18
+ if (options.depth) params.set("depth", options.depth.toString());
19
+ const queryParams = {
20
+ uri: "https://api.figma.com/v1/files/" + options.file,
21
+ params,
22
+ headers: { "X-FIGMA-TOKEN": options.token }
23
+ };
24
+ const isModified = async () => {
25
+ if (!cache || !options.ifModifiedSince) return true;
26
+ const cacheKey = apiCacheKey(queryParams);
27
+ const cachedData = await getAPICache(cache.dir, cacheKey);
28
+ if (!cachedData) return true;
29
+ let ifModifiedSince;
30
+ if (options.ifModifiedSince === true) try {
31
+ const parsedData$1 = JSON.parse(cachedData);
32
+ if (typeof parsedData$1.lastModified !== "string") {
33
+ await clearAPICache(cache.dir);
34
+ return true;
35
+ }
36
+ ifModifiedSince = parsedData$1.lastModified;
37
+ } catch (err) {
38
+ await clearAPICache(cache.dir);
39
+ return true;
40
+ }
41
+ else ifModifiedSince = options.ifModifiedSince;
42
+ const versionCheckParams = {
43
+ ...queryParams,
44
+ params: new URLSearchParams(params)
45
+ };
46
+ versionCheckParams.params.set("depth", "1");
47
+ const data$1 = await sendAPIQuery(versionCheckParams);
48
+ try {
49
+ if (typeof data$1 === "string") {
50
+ if (identicalDates(JSON.parse(data$1).lastModified, ifModifiedSince)) return false;
51
+ }
52
+ } catch (err) {}
53
+ await clearAPICache(cache.dir);
54
+ return true;
55
+ };
56
+ if (!await isModified()) return "not_modified";
57
+ const data = await sendAPIQuery(queryParams, cache);
58
+ if (typeof data === "number") throw new Error(`Error retrieving document from API: ${data}`);
59
+ let parsedData;
60
+ try {
61
+ parsedData = JSON.parse(data);
62
+ } catch (err) {
63
+ throw new Error(`Error retrieving document from API: invalid data`);
64
+ }
65
+ if (typeof parsedData.status === "number") {
66
+ const figmaError = parsedData;
67
+ throw new Error(`Error retrieving document from API: ${figmaError.err}`);
68
+ }
69
+ const document = parsedData;
70
+ if (document.editorType !== "figma") throw new Error(`Error retrieving document from API: document is for ${document.editorType}`);
71
+ if (identicalDates(options.ifModifiedSince, document.lastModified)) return "not_modified";
72
+ return document;
73
+ }
74
+ /**
75
+ * Generate all images
76
+ */
77
+ async function figmaImagesQuery(options, nodes, cache) {
78
+ const uri = "https://api.figma.com/v1/images/" + options.file;
79
+ const maxLength = 2048 - uri.length;
80
+ const svgOptions = options.svgOptions || {};
81
+ const query = (ids$1) => {
82
+ return new Promise((resolve, reject) => {
83
+ const params = new URLSearchParams({
84
+ ids: ids$1.join(","),
85
+ format: "svg"
86
+ });
87
+ if (options.version) params.set("version", options.version);
88
+ params.set("svg_include_id", svgOptions.includeID ? "true" : "false");
89
+ params.set("svg_simplify_stroke", svgOptions.simplifyStroke ? "true" : "false");
90
+ params.set("use_absolute_bounds", svgOptions.useAbsoluteBounds ? "true" : "false");
91
+ sendAPIQuery({
92
+ uri,
93
+ params,
94
+ headers: { "X-FIGMA-TOKEN": options.token }
95
+ }, cache).then((data) => {
96
+ if (typeof data === "number") {
97
+ reject(data);
98
+ return;
99
+ }
100
+ let parsedData;
101
+ try {
102
+ parsedData = JSON.parse(data);
103
+ } catch {
104
+ reject("Bad API response");
105
+ return;
106
+ }
107
+ resolve(parsedData);
108
+ }).catch(reject);
109
+ });
110
+ };
111
+ let ids = [];
112
+ let idsLength = 0;
113
+ const allKeys = Object.keys(nodes.icons);
114
+ const queue = [];
115
+ for (let i = 0; i < allKeys.length; i++) {
116
+ const id = allKeys[i];
117
+ ids.push(id);
118
+ idsLength += id.length + 1;
119
+ if (idsLength >= maxLength) {
120
+ queue.push(ids.slice(0));
121
+ ids = [];
122
+ idsLength = 0;
123
+ }
124
+ }
125
+ if (idsLength) queue.push(ids.slice(0));
126
+ const results = await runConcurrentQueries({
127
+ total: queue.length,
128
+ callback: (index) => query(queue[index]),
129
+ function: "figmaImagesQuery",
130
+ payload: queue
131
+ });
132
+ let found = 0;
133
+ results.forEach((data) => {
134
+ if (!data) return;
135
+ const images = data.images;
136
+ for (const id in images) {
137
+ const node = nodes.icons[id];
138
+ const target = images[id];
139
+ if (node && target) {
140
+ node.url = target;
141
+ found++;
142
+ }
143
+ }
144
+ });
145
+ if (!found) throw new Error("No valid icon layers were found");
146
+ nodes.generatedIconsCount = found;
147
+ return nodes;
148
+ }
149
+ /**
150
+ * Download all images
151
+ */
152
+ async function figmaDownloadImages(nodes, cache) {
153
+ const icons = nodes.icons;
154
+ const ids = Object.keys(icons);
155
+ let count = 0;
156
+ const filtered = [];
157
+ for (let i = 0; i < ids.length; i++) {
158
+ const item = icons[ids[i]];
159
+ if (item.url) filtered.push(item);
160
+ }
161
+ await runConcurrentQueries({
162
+ total: filtered.length,
163
+ callback: (index) => {
164
+ return new Promise((resolve, reject) => {
165
+ const item = filtered[index];
166
+ sendAPIQuery({ uri: item.url }, cache).then((data) => {
167
+ if (typeof data === "string") {
168
+ count++;
169
+ item.content = data;
170
+ resolve(void 0);
171
+ } else reject(data);
172
+ }).catch(reject);
173
+ });
174
+ },
175
+ function: "figmaDownloadImages",
176
+ payload: filtered
177
+ });
178
+ if (!count) throw new Error("Error retrieving images");
179
+ nodes.downloadedIconsCount = count;
180
+ return nodes;
181
+ }
182
+
183
+ export { figmaDownloadImages, figmaFilesQuery, figmaImagesQuery };
@@ -2,52 +2,40 @@
2
2
  * Basic document structure
3
3
  */
4
4
  interface FigmaBoundingBox {
5
- x: number;
6
- y: number;
7
- width: number;
8
- height: number;
5
+ x: number;
6
+ y: number;
7
+ width: number;
8
+ height: number;
9
9
  }
10
10
  interface BaseFigmaNode {
11
- id: string;
12
- name: string;
11
+ id: string;
12
+ name: string;
13
13
  }
14
14
  interface GenericFigmaNode extends BaseFigmaNode {
15
- type: string;
16
- children?: FigmaNode[];
15
+ type: string;
16
+ children?: FigmaNode[];
17
17
  }
18
18
  interface IconFigmaNode extends BaseFigmaNode {
19
- type: 'FRAME' | 'COMPONENT' | 'INSTANCE';
20
- clipsContent?: boolean;
21
- absoluteBoundingBox?: FigmaBoundingBox;
22
- children: FigmaNode[];
19
+ type: 'FRAME' | 'COMPONENT' | 'INSTANCE';
20
+ clipsContent?: boolean;
21
+ absoluteBoundingBox?: FigmaBoundingBox;
22
+ children: FigmaNode[];
23
23
  }
24
24
  interface FigmaDocumentNode extends BaseFigmaNode {
25
- type: 'DOCUMENT';
26
- children: FigmaNode[];
25
+ type: 'DOCUMENT';
26
+ children: FigmaNode[];
27
27
  }
28
28
  type FigmaNode = GenericFigmaNode | IconFigmaNode;
29
29
  /**
30
30
  * Document response from API
31
31
  */
32
32
  interface FigmaDocument {
33
- document: FigmaDocumentNode;
34
- name: string;
35
- version: string;
36
- lastModified: string;
37
- thumbnailUrl: string;
38
- role: string;
39
- editorType: 'figma' | 'figjam';
40
- }
41
- interface FigmaAPIError {
42
- status: number;
43
- err: string;
44
- }
45
- /**
46
- * Result for retrieved icons
47
- */
48
- interface FigmaAPIImagesResponse {
49
- err?: string | null;
50
- images: Record<string, string | null>;
51
- }
52
-
53
- export type { FigmaAPIError, FigmaAPIImagesResponse, FigmaDocument, FigmaDocumentNode, FigmaNode, IconFigmaNode };
33
+ document: FigmaDocumentNode;
34
+ name: string;
35
+ version: string;
36
+ lastModified: string;
37
+ thumbnailUrl: string;
38
+ role: string;
39
+ editorType: 'figma' | 'figjam';
40
+ }
41
+ export { FigmaDocument, IconFigmaNode };
@@ -1,30 +1,22 @@
1
- import { IconFigmaNode, FigmaDocument } from './api.js';
2
- import { FigmaNodesImportResult, FigmaIconNode } from './result.js';
3
- import '../../../icon-set/index.js';
4
- import '@iconify/types';
5
- import '@iconify/utils/lib/customisations/defaults';
6
- import '../../../icon-set/types.js';
7
- import '../../../svg/index.js';
8
- import 'cheerio';
9
- import '@iconify/utils/lib/icon-set/tree';
10
-
1
+ import { FigmaDocument, IconFigmaNode } from "./api.js";
2
+ import { FigmaIconNode, FigmaNodesImportResult } from "./result.js";
11
3
  type FigmaImportParentNodeType = 'CANVAS' | 'FRAME' | 'GROUP' | 'SECTION' | 'COMPONENT_SET';
12
4
  type FigmaImportIconNodeType = IconFigmaNode['type'];
13
5
  /**
14
6
  * Node information passed to callback
15
7
  */
16
8
  interface FigmaParentNodeData {
17
- id: string;
18
- type: FigmaImportParentNodeType;
19
- name: string;
9
+ id: string;
10
+ type: FigmaImportParentNodeType;
11
+ name: string;
20
12
  }
21
13
  interface FigmaImportNodeData {
22
- id: string;
23
- type: FigmaImportIconNodeType;
24
- name: string;
25
- width: number;
26
- height: number;
27
- parents: FigmaParentNodeData[];
14
+ id: string;
15
+ type: FigmaImportIconNodeType;
16
+ name: string;
17
+ width: number;
18
+ height: number;
19
+ parents: FigmaParentNodeData[];
28
20
  }
29
21
  /**
30
22
  * Callback to check if node needs to be checked for icons
@@ -40,5 +32,4 @@ type FigmaImportParentNodeFilter = (node: FigmaParentNodeData[], document: Figma
40
32
  */
41
33
  type FigmaIconNodeWithKeyword = Partial<FigmaIconNode> & Pick<FigmaIconNode, 'keyword'>;
42
34
  type FigmaImportNodeFilter = (node: FigmaImportNodeData, nodes: FigmaNodesImportResult, document: FigmaDocument) => string | FigmaIconNodeWithKeyword | null | undefined;
43
-
44
- export type { FigmaImportIconNodeType, FigmaImportNodeData, FigmaImportNodeFilter, FigmaImportParentNodeFilter, FigmaImportParentNodeType, FigmaParentNodeData };
35
+ export { FigmaImportNodeFilter, FigmaImportParentNodeFilter };
@@ -1,44 +1,36 @@
1
- import { IconSet } from '../../../icon-set/index.js';
2
- import { FigmaImportParentNodeFilter, FigmaImportNodeFilter } from './nodes.js';
3
- import { FigmaIconNode } from './result.js';
4
- import '@iconify/types';
5
- import '@iconify/utils/lib/customisations/defaults';
6
- import '../../../icon-set/types.js';
7
- import '../../../svg/index.js';
8
- import 'cheerio';
9
- import '@iconify/utils/lib/icon-set/tree';
10
- import './api.js';
11
-
1
+ import { IconSet } from "../../../icon-set/index.js";
2
+ import { FigmaIconNode } from "./result.js";
3
+ import { FigmaImportNodeFilter, FigmaImportParentNodeFilter } from "./nodes.js";
12
4
  /**
13
5
  * Options for importing SVG
14
6
  */
15
7
  interface FigmaImportSVGOptions {
16
- includeID?: boolean;
17
- simplifyStroke?: boolean;
18
- useAbsoluteBounds?: boolean;
8
+ includeID?: boolean;
9
+ simplifyStroke?: boolean;
10
+ useAbsoluteBounds?: boolean;
19
11
  }
20
12
  /**
21
13
  * Options
22
14
  */
23
15
  interface FigmaImportCommonOptions {
24
- token: string;
25
- file: string;
26
- version?: string;
16
+ token: string;
17
+ file: string;
18
+ version?: string;
27
19
  }
28
20
  interface FigmaIfModifiedSinceOption {
29
- ifModifiedSince: string | Date | true;
21
+ ifModifiedSince: string | Date | true;
30
22
  }
31
23
  interface FigmaFilesQueryOptions extends FigmaImportCommonOptions, Partial<FigmaIfModifiedSinceOption> {
32
- ids?: string[];
33
- depth?: number;
24
+ ids?: string[];
25
+ depth?: number;
34
26
  }
35
27
  interface FigmaImagesQueryOptions extends FigmaImportCommonOptions {
36
- svgOptions?: FigmaImportSVGOptions;
28
+ svgOptions?: FigmaImportSVGOptions;
37
29
  }
38
30
  interface FigmaGetIconNodesOptions {
39
- pages?: string[];
40
- filterParentNode?: FigmaImportParentNodeFilter;
41
- iconNameForNode: FigmaImportNodeFilter;
31
+ pages?: string[];
32
+ filterParentNode?: FigmaImportParentNodeFilter;
33
+ iconNameForNode: FigmaImportNodeFilter;
42
34
  }
43
35
  /**
44
36
  * Callback to call before or after importing icon
@@ -48,12 +40,11 @@ type FigmaImportedIconCallback = (node: FigmaIconNode, iconSet: IconSet) => void
48
40
  * Options for main import function
49
41
  */
50
42
  interface FigmaImportOptions extends FigmaFilesQueryOptions, FigmaImagesQueryOptions, FigmaGetIconNodesOptions {
51
- prefix: string;
52
- cacheDir?: string;
53
- cacheAPITTL?: number;
54
- cacheSVGTTL?: number;
55
- beforeImportingIcon?: FigmaImportedIconCallback;
56
- afterImportingIcon?: FigmaImportedIconCallback;
43
+ prefix: string;
44
+ cacheDir?: string;
45
+ cacheAPITTL?: number;
46
+ cacheSVGTTL?: number;
47
+ beforeImportingIcon?: FigmaImportedIconCallback;
48
+ afterImportingIcon?: FigmaImportedIconCallback;
57
49
  }
58
-
59
- export type { FigmaFilesQueryOptions, FigmaGetIconNodesOptions, FigmaIfModifiedSinceOption, FigmaImagesQueryOptions, FigmaImportOptions, FigmaImportSVGOptions };
50
+ export { FigmaFilesQueryOptions, FigmaGetIconNodesOptions, FigmaIfModifiedSinceOption, FigmaImagesQueryOptions, FigmaImportOptions };
@@ -1,44 +1,36 @@
1
- import { IconSet } from '../../../icon-set/index.js';
2
- import '@iconify/types';
3
- import '@iconify/utils/lib/customisations/defaults';
4
- import '../../../icon-set/types.js';
5
- import '../../../svg/index.js';
6
- import 'cheerio';
7
- import '@iconify/utils/lib/icon-set/tree';
8
-
1
+ import { IconSet } from "../../../icon-set/index.js";
9
2
  /**
10
3
  * Result for found icons
11
4
  */
12
5
  interface FigmaIconNode {
13
- id: string;
14
- name: string;
15
- keyword: string;
16
- url?: string;
17
- content?: string;
6
+ id: string;
7
+ name: string;
8
+ keyword: string;
9
+ url?: string;
10
+ content?: string;
18
11
  }
19
12
  /**
20
13
  * Nodes count
21
14
  */
22
15
  interface FigmaNodesCount {
23
- nodesCount: number;
24
- generatedIconsCount: number;
25
- downloadedIconsCount: number;
16
+ nodesCount: number;
17
+ generatedIconsCount: number;
18
+ downloadedIconsCount: number;
26
19
  }
27
20
  /**
28
21
  * Import result for icons
29
22
  */
30
23
  interface FigmaNodesImportResult extends Partial<FigmaNodesCount> {
31
- icons: Record<string, FigmaIconNode>;
24
+ icons: Record<string, FigmaIconNode>;
32
25
  }
33
26
  /**
34
27
  * Import result
35
28
  */
36
29
  interface FigmaImportResult extends FigmaNodesCount {
37
- name: string;
38
- version: string;
39
- lastModified: string;
40
- iconSet: IconSet;
41
- missing: FigmaIconNode[];
30
+ name: string;
31
+ version: string;
32
+ lastModified: string;
33
+ iconSet: IconSet;
34
+ missing: FigmaIconNode[];
42
35
  }
43
-
44
- export type { FigmaIconNode, FigmaImportResult, FigmaNodesCount, FigmaNodesImportResult };
36
+ export { FigmaIconNode, FigmaImportResult, FigmaNodesImportResult };
package/lib/index.d.ts CHANGED
@@ -1,80 +1,55 @@
1
- export { SVG } from './svg/index.js';
2
- export { parseSVG } from './svg/parse.js';
3
- export { parseSVGStyle } from './svg/parse-style.js';
4
- export { analyseSVGStructure } from './svg/analyse.js';
5
- export { cleanupSVG } from './svg/cleanup.js';
6
- export { removeBadAttributes } from './svg/cleanup/attribs.js';
7
- export { checkBadTags } from './svg/cleanup/bad-tags.js';
8
- export { cleanupRootStyle } from './svg/cleanup/root-style.js';
9
- export { cleanupInlineStyle } from './svg/cleanup/inline-style.js';
10
- export { cleanupSVGRoot } from './svg/cleanup/root-svg.js';
11
- export { convertStyleToAttrs } from './svg/cleanup/svgo-style.js';
12
- export { IconSet, blankIconSet } from './icon-set/index.js';
13
- export { mergeIconSets } from './icon-set/merge.js';
14
- export { addTagsToIconSet } from './icon-set/tags.js';
15
- export { importFromFigma } from './import/figma/index.js';
16
- export { importDirectory, importDirectorySync } from './import/directory.js';
17
- export { downloadGitRepo } from './download/git/index.js';
18
- export { getGitRepoHash } from './download/git/hash.js';
19
- export { getGitRepoBranch } from './download/git/branch.js';
20
- export { resetGitRepoContents } from './download/git/reset.js';
21
- export { downloadGitHubRepo } from './download/github/index.js';
22
- export { getGitHubRepoHash } from './download/github/hash.js';
23
- export { downloadGitLabRepo } from './download/gitlab/index.js';
24
- export { getGitLabRepoHash } from './download/gitlab/hash.js';
25
- export { downloadNPMPackage } from './download/npm/index.js';
26
- export { getNPMVersion, getPackageVersion } from './download/npm/version.js';
27
- export { downloadPackage } from './download/index.js';
28
- export { downloadFile } from './download/api/download.js';
29
- export { isEmptyColor, parseColors } from './colors/parse.js';
30
- export { validateColors } from './colors/validate.js';
31
- export { detectIconSetPalette } from './colors/detect.js';
32
- export { runSVGO } from './optimise/svgo.js';
33
- export { removeFigmaClipPathFromSVG } from './optimise/figma.js';
34
- export { deOptimisePaths } from './optimise/flags.js';
35
- export { resetSVGOrigin } from './optimise/origin.js';
36
- export { convertSVGToMask } from './optimise/mask.js';
37
- export { scaleSVG } from './optimise/scale.js';
38
- export { cleanupGlobalStyle } from './optimise/global-style.js';
39
- export { exportToDirectory } from './export/directory.js';
40
- export { exportJSONPackage } from './export/json-package.js';
41
- export { exportIconPackage } from './export/icon-package.js';
42
- export { writeJSONFile } from './misc/write-json.js';
43
- export { prepareDirectoryForExport } from './export/helpers/prepare.js';
44
- export { scanDirectory, scanDirectorySync } from './misc/scan.js';
45
- export { compareDirectories } from './misc/compare-dirs.js';
46
- export { unzip } from './download/helpers/unzip.js';
47
- export { untar } from './download/helpers/untar.js';
48
- export { execAsync } from './misc/exec.js';
49
- export { cleanupIconKeyword } from './misc/keyword.js';
50
- export { bumpVersion } from './misc/bump-version.js';
51
- export { axiosConfig, fetchCallbacks } from './download/api/config.js';
52
- export { setFetch } from './download/api/fetch.js';
53
- export { sendAPIQuery } from './download/api/index.js';
54
- export { defaultQueueParams, runConcurrentQueries } from './download/api/queue.js';
55
- import 'cheerio';
56
- import '@iconify/types';
57
- import '@iconify/utils/lib/customisations/defaults';
58
- import './misc/cheerio.js';
59
- import 'domhandler';
60
- import './css/parser/types.js';
61
- import './svg/analyse/types.js';
62
- import './icon-set/types.js';
63
- import '@iconify/utils/lib/icon-set/tree';
64
- import './download/types/modified.js';
65
- import './import/figma/types/options.js';
66
- import './import/figma/types/nodes.js';
67
- import './import/figma/types/api.js';
68
- import './import/figma/types/result.js';
69
- import './download/types/sources.js';
70
- import './download/github/types.js';
71
- import './download/gitlab/types.js';
72
- import './download/npm/types.js';
73
- import './download/api/types.js';
74
- import '@iconify/utils/lib/colors/types';
75
- import './colors/attribs.js';
76
- import 'svgo';
77
- import './export/helpers/custom-files.js';
78
- import 'fs';
79
- import 'child_process';
80
- import 'node:http';
1
+ import { SVG } from "./svg/index.js";
2
+ import { IconSet, blankIconSet } from "./icon-set/index.js";
3
+ import { detectIconSetPalette } from "./colors/detect.js";
4
+ import { isEmptyColor, parseColors } from "./colors/parse.js";
5
+ import { validateColors } from "./colors/validate.js";
6
+ import { axiosConfig, fetchCallbacks } from "./download/api/config.js";
7
+ import { downloadFile } from "./download/api/download.js";
8
+ import { setFetch } from "./download/api/fetch.js";
9
+ import { sendAPIQuery } from "./download/api/index.js";
10
+ import { defaultQueueParams, runConcurrentQueries } from "./download/api/queue.js";
11
+ import { prepareDirectoryForExport } from "./export/helpers/prepare.js";
12
+ import { getGitRepoBranch } from "./download/git/branch.js";
13
+ import { getGitRepoHash } from "./download/git/hash.js";
14
+ import { downloadGitRepo } from "./download/git/index.js";
15
+ import { resetGitRepoContents } from "./download/git/reset.js";
16
+ import { getGitHubRepoHash } from "./download/github/hash.js";
17
+ import { downloadGitHubRepo } from "./download/github/index.js";
18
+ import { getGitLabRepoHash } from "./download/gitlab/hash.js";
19
+ import { downloadGitLabRepo } from "./download/gitlab/index.js";
20
+ import { untar } from "./download/helpers/untar.js";
21
+ import { unzip } from "./download/helpers/unzip.js";
22
+ import { downloadNPMPackage } from "./download/npm/index.js";
23
+ import { downloadPackage } from "./download/index.js";
24
+ import { getNPMVersion, getPackageVersion } from "./download/npm/version.js";
25
+ import { exportToDirectory } from "./export/directory.js";
26
+ import { exportIconPackage } from "./export/icon-package.js";
27
+ import { exportJSONPackage } from "./export/json-package.js";
28
+ import { mergeIconSets } from "./icon-set/merge.js";
29
+ import { addTagsToIconSet } from "./icon-set/tags.js";
30
+ import { checkBadTags } from "./svg/cleanup/bad-tags.js";
31
+ import { cleanupSVG } from "./svg/cleanup.js";
32
+ import { importDirectory, importDirectorySync } from "./import/directory.js";
33
+ import { importFromFigma } from "./import/figma/index.js";
34
+ import { parseSVG } from "./svg/parse.js";
35
+ import { parseSVGStyle } from "./svg/parse-style.js";
36
+ import { analyseSVGStructure } from "./svg/analyse.js";
37
+ import { removeBadAttributes } from "./svg/cleanup/attribs.js";
38
+ import { cleanupRootStyle } from "./svg/cleanup/root-style.js";
39
+ import { cleanupInlineStyle } from "./svg/cleanup/inline-style.js";
40
+ import { cleanupSVGRoot } from "./svg/cleanup/root-svg.js";
41
+ import { convertStyleToAttrs } from "./svg/cleanup/svgo-style.js";
42
+ import { runSVGO } from "./optimise/svgo.js";
43
+ import { removeFigmaClipPathFromSVG } from "./optimise/figma.js";
44
+ import { deOptimisePaths } from "./optimise/flags.js";
45
+ import { resetSVGOrigin } from "./optimise/origin.js";
46
+ import { convertSVGToMask } from "./optimise/mask.js";
47
+ import { scaleSVG } from "./optimise/scale.js";
48
+ import { cleanupGlobalStyle } from "./optimise/global-style.js";
49
+ import { writeJSONFile } from "./misc/write-json.js";
50
+ import { scanDirectory, scanDirectorySync } from "./misc/scan.js";
51
+ import { compareDirectories } from "./misc/compare-dirs.js";
52
+ import { execAsync } from "./misc/exec.js";
53
+ import { cleanupIconKeyword } from "./misc/keyword.js";
54
+ import { bumpVersion } from "./misc/bump-version.js";
55
+ export { IconSet, SVG, addTagsToIconSet, analyseSVGStructure, axiosConfig, blankIconSet, bumpVersion, checkBadTags, cleanupGlobalStyle, cleanupIconKeyword, cleanupInlineStyle, cleanupRootStyle, cleanupSVG, cleanupSVGRoot, compareDirectories, convertSVGToMask, convertStyleToAttrs, deOptimisePaths, defaultQueueParams, detectIconSetPalette, downloadFile, downloadGitHubRepo, downloadGitLabRepo, downloadGitRepo, downloadNPMPackage, downloadPackage, execAsync, exportIconPackage, exportJSONPackage, exportToDirectory, fetchCallbacks, getGitHubRepoHash, getGitLabRepoHash, getGitRepoBranch, getGitRepoHash, getNPMVersion, getPackageVersion, importDirectory, importDirectorySync, importFromFigma, isEmptyColor, mergeIconSets, parseColors, parseSVG, parseSVGStyle, prepareDirectoryForExport, removeBadAttributes, removeFigmaClipPathFromSVG, resetGitRepoContents, resetSVGOrigin, runConcurrentQueries, runSVGO, scaleSVG, scanDirectory, scanDirectorySync, sendAPIQuery, setFetch, untar, unzip, validateColors, writeJSONFile };