@zleap-ai/icons 0.0.28

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 (455) hide show
  1. package/README.md +155 -0
  2. package/dist/cjs/changelog-generator.js +300 -0
  3. package/dist/cjs/changelog-generator.js.map +1 -0
  4. package/dist/cjs/component-generator.js +434 -0
  5. package/dist/cjs/component-generator.js.map +1 -0
  6. package/dist/cjs/figma-client.js +260 -0
  7. package/dist/cjs/figma-client.js.map +1 -0
  8. package/dist/cjs/icon-filter.js +278 -0
  9. package/dist/cjs/icon-filter.js.map +1 -0
  10. package/dist/cjs/icon-search.js +43 -0
  11. package/dist/cjs/icon-search.js.map +1 -0
  12. package/dist/cjs/icon-validator.js +369 -0
  13. package/dist/cjs/icon-validator.js.map +1 -0
  14. package/dist/cjs/icons/IconArrowRight.js +17 -0
  15. package/dist/cjs/icons/IconArrowRight.js.map +1 -0
  16. package/dist/cjs/icons/IconBack.js +17 -0
  17. package/dist/cjs/icons/IconBack.js.map +1 -0
  18. package/dist/cjs/icons/IconBack1.js +17 -0
  19. package/dist/cjs/icons/IconBack1.js.map +1 -0
  20. package/dist/cjs/icons/IconBangZhuShuoMing.js +17 -0
  21. package/dist/cjs/icons/IconBangZhuShuoMing.js.map +1 -0
  22. package/dist/cjs/icons/IconBaoGaoZhuShou.js +20 -0
  23. package/dist/cjs/icons/IconBaoGaoZhuShou.js.map +1 -0
  24. package/dist/cjs/icons/IconCheck.js +17 -0
  25. package/dist/cjs/icons/IconCheck.js.map +1 -0
  26. package/dist/cjs/icons/IconCheck1.js +17 -0
  27. package/dist/cjs/icons/IconCheck1.js.map +1 -0
  28. package/dist/cjs/icons/IconChengYuanGuanLi.js +20 -0
  29. package/dist/cjs/icons/IconChengYuanGuanLi.js.map +1 -0
  30. package/dist/cjs/icons/IconChongXinFaSong.js +17 -0
  31. package/dist/cjs/icons/IconChongXinFaSong.js.map +1 -0
  32. package/dist/cjs/icons/IconCloseCircle.js +17 -0
  33. package/dist/cjs/icons/IconCloseCircle.js.map +1 -0
  34. package/dist/cjs/icons/IconCuoWu.js +17 -0
  35. package/dist/cjs/icons/IconCuoWu.js.map +1 -0
  36. package/dist/cjs/icons/IconDingDing.js +17 -0
  37. package/dist/cjs/icons/IconDingDing.js.map +1 -0
  38. package/dist/cjs/icons/IconEdit03.js +17 -0
  39. package/dist/cjs/icons/IconEdit03.js.map +1 -0
  40. package/dist/cjs/icons/IconFanHui.js +17 -0
  41. package/dist/cjs/icons/IconFanHui.js.map +1 -0
  42. package/dist/cjs/icons/IconFangDa.js +17 -0
  43. package/dist/cjs/icons/IconFangDa.js.map +1 -0
  44. package/dist/cjs/icons/IconFrame.js +17 -0
  45. package/dist/cjs/icons/IconFrame.js.map +1 -0
  46. package/dist/cjs/icons/IconFrame1261156242.js +17 -0
  47. package/dist/cjs/icons/IconFrame1261156242.js.map +1 -0
  48. package/dist/cjs/icons/IconGuanBi.js +17 -0
  49. package/dist/cjs/icons/IconGuanBi.js.map +1 -0
  50. package/dist/cjs/icons/IconGuanBi1.js +17 -0
  51. package/dist/cjs/icons/IconGuanBi1.js.map +1 -0
  52. package/dist/cjs/icons/IconGuanBiXiao.js +17 -0
  53. package/dist/cjs/icons/IconGuanBiXiao.js.map +1 -0
  54. package/dist/cjs/icons/IconGuanBiXiao1.js +17 -0
  55. package/dist/cjs/icons/IconGuanBiXiao1.js.map +1 -0
  56. package/dist/cjs/icons/IconLianJie.js +17 -0
  57. package/dist/cjs/icons/IconLianJie.js.map +1 -0
  58. package/dist/cjs/icons/IconLianJie1.js +17 -0
  59. package/dist/cjs/icons/IconLianJie1.js.map +1 -0
  60. package/dist/cjs/icons/IconQiWeiJiQiRen.js +17 -0
  61. package/dist/cjs/icons/IconQiWeiJiQiRen.js.map +1 -0
  62. package/dist/cjs/icons/IconQiYeBan.js +20 -0
  63. package/dist/cjs/icons/IconQiYeBan.js.map +1 -0
  64. package/dist/cjs/icons/IconRss.js +17 -0
  65. package/dist/cjs/icons/IconRss.js.map +1 -0
  66. package/dist/cjs/icons/IconSearch.js +17 -0
  67. package/dist/cjs/icons/IconSearch.js.map +1 -0
  68. package/dist/cjs/icons/IconSearch1.js +17 -0
  69. package/dist/cjs/icons/IconSearch1.js.map +1 -0
  70. package/dist/cjs/icons/IconSheZhi.js +17 -0
  71. package/dist/cjs/icons/IconSheZhi.js.map +1 -0
  72. package/dist/cjs/icons/IconShengCheng.js +17 -0
  73. package/dist/cjs/icons/IconShengCheng.js.map +1 -0
  74. package/dist/cjs/icons/IconShiBai.js +17 -0
  75. package/dist/cjs/icons/IconShiBai.js.map +1 -0
  76. package/dist/cjs/icons/IconShouQi.js +17 -0
  77. package/dist/cjs/icons/IconShouQi.js.map +1 -0
  78. package/dist/cjs/icons/IconSouSuoZhuShou.js +20 -0
  79. package/dist/cjs/icons/IconSouSuoZhuShou.js.map +1 -0
  80. package/dist/cjs/icons/IconSuoXiao.js +17 -0
  81. package/dist/cjs/icons/IconSuoXiao.js.map +1 -0
  82. package/dist/cjs/icons/IconTianJia.js +17 -0
  83. package/dist/cjs/icons/IconTianJia.js.map +1 -0
  84. package/dist/cjs/icons/IconTongZhi.js +17 -0
  85. package/dist/cjs/icons/IconTongZhi.js.map +1 -0
  86. package/dist/cjs/icons/IconTongZhi1.js +17 -0
  87. package/dist/cjs/icons/IconTongZhi1.js.map +1 -0
  88. package/dist/cjs/icons/IconTuiChu.js +17 -0
  89. package/dist/cjs/icons/IconTuiChu.js.map +1 -0
  90. package/dist/cjs/icons/IconWangLuoJianSuo.js +17 -0
  91. package/dist/cjs/icons/IconWangLuoJianSuo.js.map +1 -0
  92. package/dist/cjs/icons/IconWangYeXiaZai.js +17 -0
  93. package/dist/cjs/icons/IconWangYeXiaZai.js.map +1 -0
  94. package/dist/cjs/icons/IconWeiBiaoTi1HuaBan11.js +17 -0
  95. package/dist/cjs/icons/IconWeiBiaoTi1HuaBan11.js.map +1 -0
  96. package/dist/cjs/icons/IconWenDaZhuShou.js +20 -0
  97. package/dist/cjs/icons/IconWenDaZhuShou.js.map +1 -0
  98. package/dist/cjs/icons/IconWenDang.js +17 -0
  99. package/dist/cjs/icons/IconWenDang.js.map +1 -0
  100. package/dist/cjs/icons/IconWenDang1.js +17 -0
  101. package/dist/cjs/icons/IconWenDang1.js.map +1 -0
  102. package/dist/cjs/icons/IconWenJian.js +17 -0
  103. package/dist/cjs/icons/IconWenJian.js.map +1 -0
  104. package/dist/cjs/icons/IconXiTongPeiZhi.js +20 -0
  105. package/dist/cjs/icons/IconXiTongPeiZhi.js.map +1 -0
  106. package/dist/cjs/icons/IconXiaZai.js +17 -0
  107. package/dist/cjs/icons/IconXiaZai.js.map +1 -0
  108. package/dist/cjs/icons/IconXiaZaiZhuShou.js +20 -0
  109. package/dist/cjs/icons/IconXiaZaiZhuShou.js.map +1 -0
  110. package/dist/cjs/icons/IconXiaoXi.js +17 -0
  111. package/dist/cjs/icons/IconXiaoXi.js.map +1 -0
  112. package/dist/cjs/icons/IconXinXiGuanLi.js +20 -0
  113. package/dist/cjs/icons/IconXinXiGuanLi.js.map +1 -0
  114. package/dist/cjs/icons/IconXinZeng.js +17 -0
  115. package/dist/cjs/icons/IconXinZeng.js.map +1 -0
  116. package/dist/cjs/icons/IconYanZhengMa.js +17 -0
  117. package/dist/cjs/icons/IconYanZhengMa.js.map +1 -0
  118. package/dist/cjs/icons/IconYunYingGuanLi.js +20 -0
  119. package/dist/cjs/icons/IconYunYingGuanLi.js.map +1 -0
  120. package/dist/cjs/icons/IconZengJia.js +17 -0
  121. package/dist/cjs/icons/IconZengJia.js.map +1 -0
  122. package/dist/cjs/icons/IconZhanKai.js +17 -0
  123. package/dist/cjs/icons/IconZhanKai.js.map +1 -0
  124. package/dist/cjs/icons/IconZhanKai1.js +17 -0
  125. package/dist/cjs/icons/IconZhanKai1.js.map +1 -0
  126. package/dist/cjs/icons/IconZhengQue.js +17 -0
  127. package/dist/cjs/icons/IconZhengQue.js.map +1 -0
  128. package/dist/cjs/icons/IconZhiShiKu.js +17 -0
  129. package/dist/cjs/icons/IconZhiShiKu.js.map +1 -0
  130. package/dist/cjs/icons/IconZhiShiKu1.js +17 -0
  131. package/dist/cjs/icons/IconZhiShiKu1.js.map +1 -0
  132. package/dist/cjs/index.js +95 -0
  133. package/dist/cjs/index.js.map +1 -0
  134. package/dist/cjs/manifest-generator.js +281 -0
  135. package/dist/cjs/manifest-generator.js.map +1 -0
  136. package/dist/cjs/multi-format-output.js +233 -0
  137. package/dist/cjs/multi-format-output.js.map +1 -0
  138. package/dist/cjs/svg-exporter.js +283 -0
  139. package/dist/cjs/svg-exporter.js.map +1 -0
  140. package/dist/cjs/svg-transformer.js +327 -0
  141. package/dist/cjs/svg-transformer.js.map +1 -0
  142. package/dist/cjs/types.js +3 -0
  143. package/dist/cjs/types.js.map +1 -0
  144. package/dist/cjs/version-manager.js +175 -0
  145. package/dist/cjs/version-manager.js.map +1 -0
  146. package/dist/esm/changelog-generator.js +288 -0
  147. package/dist/esm/changelog-generator.js.map +1 -0
  148. package/dist/esm/component-generator.js +426 -0
  149. package/dist/esm/component-generator.js.map +1 -0
  150. package/dist/esm/figma-client.js +254 -0
  151. package/dist/esm/figma-client.js.map +1 -0
  152. package/dist/esm/icon-filter.js +268 -0
  153. package/dist/esm/icon-filter.js.map +1 -0
  154. package/dist/esm/icon-search.js +39 -0
  155. package/dist/esm/icon-search.js.map +1 -0
  156. package/dist/esm/icon-validator.js +358 -0
  157. package/dist/esm/icon-validator.js.map +1 -0
  158. package/dist/esm/icons/IconArrowRight.js +14 -0
  159. package/dist/esm/icons/IconArrowRight.js.map +1 -0
  160. package/dist/esm/icons/IconBack.js +14 -0
  161. package/dist/esm/icons/IconBack.js.map +1 -0
  162. package/dist/esm/icons/IconBack1.js +14 -0
  163. package/dist/esm/icons/IconBack1.js.map +1 -0
  164. package/dist/esm/icons/IconBangZhuShuoMing.js +14 -0
  165. package/dist/esm/icons/IconBangZhuShuoMing.js.map +1 -0
  166. package/dist/esm/icons/IconBaoGaoZhuShou.js +17 -0
  167. package/dist/esm/icons/IconBaoGaoZhuShou.js.map +1 -0
  168. package/dist/esm/icons/IconCheck.js +14 -0
  169. package/dist/esm/icons/IconCheck.js.map +1 -0
  170. package/dist/esm/icons/IconCheck1.js +14 -0
  171. package/dist/esm/icons/IconCheck1.js.map +1 -0
  172. package/dist/esm/icons/IconChengYuanGuanLi.js +17 -0
  173. package/dist/esm/icons/IconChengYuanGuanLi.js.map +1 -0
  174. package/dist/esm/icons/IconChongXinFaSong.js +14 -0
  175. package/dist/esm/icons/IconChongXinFaSong.js.map +1 -0
  176. package/dist/esm/icons/IconCloseCircle.js +14 -0
  177. package/dist/esm/icons/IconCloseCircle.js.map +1 -0
  178. package/dist/esm/icons/IconCuoWu.js +14 -0
  179. package/dist/esm/icons/IconCuoWu.js.map +1 -0
  180. package/dist/esm/icons/IconDingDing.js +14 -0
  181. package/dist/esm/icons/IconDingDing.js.map +1 -0
  182. package/dist/esm/icons/IconEdit03.js +14 -0
  183. package/dist/esm/icons/IconEdit03.js.map +1 -0
  184. package/dist/esm/icons/IconFanHui.js +14 -0
  185. package/dist/esm/icons/IconFanHui.js.map +1 -0
  186. package/dist/esm/icons/IconFangDa.js +14 -0
  187. package/dist/esm/icons/IconFangDa.js.map +1 -0
  188. package/dist/esm/icons/IconFrame.js +14 -0
  189. package/dist/esm/icons/IconFrame.js.map +1 -0
  190. package/dist/esm/icons/IconFrame1261156242.js +14 -0
  191. package/dist/esm/icons/IconFrame1261156242.js.map +1 -0
  192. package/dist/esm/icons/IconGuanBi.js +14 -0
  193. package/dist/esm/icons/IconGuanBi.js.map +1 -0
  194. package/dist/esm/icons/IconGuanBi1.js +14 -0
  195. package/dist/esm/icons/IconGuanBi1.js.map +1 -0
  196. package/dist/esm/icons/IconGuanBiXiao.js +14 -0
  197. package/dist/esm/icons/IconGuanBiXiao.js.map +1 -0
  198. package/dist/esm/icons/IconGuanBiXiao1.js +14 -0
  199. package/dist/esm/icons/IconGuanBiXiao1.js.map +1 -0
  200. package/dist/esm/icons/IconLianJie.js +14 -0
  201. package/dist/esm/icons/IconLianJie.js.map +1 -0
  202. package/dist/esm/icons/IconLianJie1.js +14 -0
  203. package/dist/esm/icons/IconLianJie1.js.map +1 -0
  204. package/dist/esm/icons/IconQiWeiJiQiRen.js +14 -0
  205. package/dist/esm/icons/IconQiWeiJiQiRen.js.map +1 -0
  206. package/dist/esm/icons/IconQiYeBan.js +17 -0
  207. package/dist/esm/icons/IconQiYeBan.js.map +1 -0
  208. package/dist/esm/icons/IconRss.js +14 -0
  209. package/dist/esm/icons/IconRss.js.map +1 -0
  210. package/dist/esm/icons/IconSearch.js +14 -0
  211. package/dist/esm/icons/IconSearch.js.map +1 -0
  212. package/dist/esm/icons/IconSearch1.js +14 -0
  213. package/dist/esm/icons/IconSearch1.js.map +1 -0
  214. package/dist/esm/icons/IconSheZhi.js +14 -0
  215. package/dist/esm/icons/IconSheZhi.js.map +1 -0
  216. package/dist/esm/icons/IconShengCheng.js +14 -0
  217. package/dist/esm/icons/IconShengCheng.js.map +1 -0
  218. package/dist/esm/icons/IconShiBai.js +14 -0
  219. package/dist/esm/icons/IconShiBai.js.map +1 -0
  220. package/dist/esm/icons/IconShouQi.js +14 -0
  221. package/dist/esm/icons/IconShouQi.js.map +1 -0
  222. package/dist/esm/icons/IconSouSuoZhuShou.js +17 -0
  223. package/dist/esm/icons/IconSouSuoZhuShou.js.map +1 -0
  224. package/dist/esm/icons/IconSuoXiao.js +14 -0
  225. package/dist/esm/icons/IconSuoXiao.js.map +1 -0
  226. package/dist/esm/icons/IconTianJia.js +14 -0
  227. package/dist/esm/icons/IconTianJia.js.map +1 -0
  228. package/dist/esm/icons/IconTongZhi.js +14 -0
  229. package/dist/esm/icons/IconTongZhi.js.map +1 -0
  230. package/dist/esm/icons/IconTongZhi1.js +14 -0
  231. package/dist/esm/icons/IconTongZhi1.js.map +1 -0
  232. package/dist/esm/icons/IconTuiChu.js +14 -0
  233. package/dist/esm/icons/IconTuiChu.js.map +1 -0
  234. package/dist/esm/icons/IconWangLuoJianSuo.js +14 -0
  235. package/dist/esm/icons/IconWangLuoJianSuo.js.map +1 -0
  236. package/dist/esm/icons/IconWangYeXiaZai.js +14 -0
  237. package/dist/esm/icons/IconWangYeXiaZai.js.map +1 -0
  238. package/dist/esm/icons/IconWeiBiaoTi1HuaBan11.js +14 -0
  239. package/dist/esm/icons/IconWeiBiaoTi1HuaBan11.js.map +1 -0
  240. package/dist/esm/icons/IconWenDaZhuShou.js +17 -0
  241. package/dist/esm/icons/IconWenDaZhuShou.js.map +1 -0
  242. package/dist/esm/icons/IconWenDang.js +14 -0
  243. package/dist/esm/icons/IconWenDang.js.map +1 -0
  244. package/dist/esm/icons/IconWenDang1.js +14 -0
  245. package/dist/esm/icons/IconWenDang1.js.map +1 -0
  246. package/dist/esm/icons/IconWenJian.js +14 -0
  247. package/dist/esm/icons/IconWenJian.js.map +1 -0
  248. package/dist/esm/icons/IconXiTongPeiZhi.js +17 -0
  249. package/dist/esm/icons/IconXiTongPeiZhi.js.map +1 -0
  250. package/dist/esm/icons/IconXiaZai.js +14 -0
  251. package/dist/esm/icons/IconXiaZai.js.map +1 -0
  252. package/dist/esm/icons/IconXiaZaiZhuShou.js +17 -0
  253. package/dist/esm/icons/IconXiaZaiZhuShou.js.map +1 -0
  254. package/dist/esm/icons/IconXiaoXi.js +14 -0
  255. package/dist/esm/icons/IconXiaoXi.js.map +1 -0
  256. package/dist/esm/icons/IconXinXiGuanLi.js +17 -0
  257. package/dist/esm/icons/IconXinXiGuanLi.js.map +1 -0
  258. package/dist/esm/icons/IconXinZeng.js +14 -0
  259. package/dist/esm/icons/IconXinZeng.js.map +1 -0
  260. package/dist/esm/icons/IconYanZhengMa.js +14 -0
  261. package/dist/esm/icons/IconYanZhengMa.js.map +1 -0
  262. package/dist/esm/icons/IconYunYingGuanLi.js +17 -0
  263. package/dist/esm/icons/IconYunYingGuanLi.js.map +1 -0
  264. package/dist/esm/icons/IconZengJia.js +14 -0
  265. package/dist/esm/icons/IconZengJia.js.map +1 -0
  266. package/dist/esm/icons/IconZhanKai.js +14 -0
  267. package/dist/esm/icons/IconZhanKai.js.map +1 -0
  268. package/dist/esm/icons/IconZhanKai1.js +14 -0
  269. package/dist/esm/icons/IconZhanKai1.js.map +1 -0
  270. package/dist/esm/icons/IconZhengQue.js +14 -0
  271. package/dist/esm/icons/IconZhengQue.js.map +1 -0
  272. package/dist/esm/icons/IconZhiShiKu.js +14 -0
  273. package/dist/esm/icons/IconZhiShiKu.js.map +1 -0
  274. package/dist/esm/icons/IconZhiShiKu1.js +14 -0
  275. package/dist/esm/icons/IconZhiShiKu1.js.map +1 -0
  276. package/dist/esm/index.js +72 -0
  277. package/dist/esm/index.js.map +1 -0
  278. package/dist/esm/manifest-generator.js +267 -0
  279. package/dist/esm/manifest-generator.js.map +1 -0
  280. package/dist/esm/multi-format-output.js +221 -0
  281. package/dist/esm/multi-format-output.js.map +1 -0
  282. package/dist/esm/svg-exporter.js +244 -0
  283. package/dist/esm/svg-exporter.js.map +1 -0
  284. package/dist/esm/svg-transformer.js +314 -0
  285. package/dist/esm/svg-transformer.js.map +1 -0
  286. package/dist/esm/types.js +2 -0
  287. package/dist/esm/types.js.map +1 -0
  288. package/dist/esm/version-manager.js +167 -0
  289. package/dist/esm/version-manager.js.map +1 -0
  290. package/dist/types/changelog-generator.d.ts +112 -0
  291. package/dist/types/changelog-generator.d.ts.map +1 -0
  292. package/dist/types/component-generator.d.ts +88 -0
  293. package/dist/types/component-generator.d.ts.map +1 -0
  294. package/dist/types/figma-client.d.ts +107 -0
  295. package/dist/types/figma-client.d.ts.map +1 -0
  296. package/dist/types/icon-filter.d.ts +126 -0
  297. package/dist/types/icon-filter.d.ts.map +1 -0
  298. package/dist/types/icon-search.d.ts +31 -0
  299. package/dist/types/icon-search.d.ts.map +1 -0
  300. package/dist/types/icon-validator.d.ts +110 -0
  301. package/dist/types/icon-validator.d.ts.map +1 -0
  302. package/dist/types/icons/IconArrowRight.d.ts +17 -0
  303. package/dist/types/icons/IconArrowRight.d.ts.map +1 -0
  304. package/dist/types/icons/IconBack.d.ts +17 -0
  305. package/dist/types/icons/IconBack.d.ts.map +1 -0
  306. package/dist/types/icons/IconBack1.d.ts +17 -0
  307. package/dist/types/icons/IconBack1.d.ts.map +1 -0
  308. package/dist/types/icons/IconBangZhuShuoMing.d.ts +17 -0
  309. package/dist/types/icons/IconBangZhuShuoMing.d.ts.map +1 -0
  310. package/dist/types/icons/IconBaoGaoZhuShou.d.ts +17 -0
  311. package/dist/types/icons/IconBaoGaoZhuShou.d.ts.map +1 -0
  312. package/dist/types/icons/IconCheck.d.ts +17 -0
  313. package/dist/types/icons/IconCheck.d.ts.map +1 -0
  314. package/dist/types/icons/IconCheck1.d.ts +17 -0
  315. package/dist/types/icons/IconCheck1.d.ts.map +1 -0
  316. package/dist/types/icons/IconChengYuanGuanLi.d.ts +17 -0
  317. package/dist/types/icons/IconChengYuanGuanLi.d.ts.map +1 -0
  318. package/dist/types/icons/IconChongXinFaSong.d.ts +17 -0
  319. package/dist/types/icons/IconChongXinFaSong.d.ts.map +1 -0
  320. package/dist/types/icons/IconCloseCircle.d.ts +17 -0
  321. package/dist/types/icons/IconCloseCircle.d.ts.map +1 -0
  322. package/dist/types/icons/IconCuoWu.d.ts +17 -0
  323. package/dist/types/icons/IconCuoWu.d.ts.map +1 -0
  324. package/dist/types/icons/IconDingDing.d.ts +17 -0
  325. package/dist/types/icons/IconDingDing.d.ts.map +1 -0
  326. package/dist/types/icons/IconEdit03.d.ts +17 -0
  327. package/dist/types/icons/IconEdit03.d.ts.map +1 -0
  328. package/dist/types/icons/IconFanHui.d.ts +17 -0
  329. package/dist/types/icons/IconFanHui.d.ts.map +1 -0
  330. package/dist/types/icons/IconFangDa.d.ts +17 -0
  331. package/dist/types/icons/IconFangDa.d.ts.map +1 -0
  332. package/dist/types/icons/IconFrame.d.ts +17 -0
  333. package/dist/types/icons/IconFrame.d.ts.map +1 -0
  334. package/dist/types/icons/IconFrame1261156242.d.ts +17 -0
  335. package/dist/types/icons/IconFrame1261156242.d.ts.map +1 -0
  336. package/dist/types/icons/IconGuanBi.d.ts +17 -0
  337. package/dist/types/icons/IconGuanBi.d.ts.map +1 -0
  338. package/dist/types/icons/IconGuanBi1.d.ts +17 -0
  339. package/dist/types/icons/IconGuanBi1.d.ts.map +1 -0
  340. package/dist/types/icons/IconGuanBiXiao.d.ts +17 -0
  341. package/dist/types/icons/IconGuanBiXiao.d.ts.map +1 -0
  342. package/dist/types/icons/IconGuanBiXiao1.d.ts +17 -0
  343. package/dist/types/icons/IconGuanBiXiao1.d.ts.map +1 -0
  344. package/dist/types/icons/IconLianJie.d.ts +17 -0
  345. package/dist/types/icons/IconLianJie.d.ts.map +1 -0
  346. package/dist/types/icons/IconLianJie1.d.ts +17 -0
  347. package/dist/types/icons/IconLianJie1.d.ts.map +1 -0
  348. package/dist/types/icons/IconQiWeiJiQiRen.d.ts +17 -0
  349. package/dist/types/icons/IconQiWeiJiQiRen.d.ts.map +1 -0
  350. package/dist/types/icons/IconQiYeBan.d.ts +17 -0
  351. package/dist/types/icons/IconQiYeBan.d.ts.map +1 -0
  352. package/dist/types/icons/IconRss.d.ts +17 -0
  353. package/dist/types/icons/IconRss.d.ts.map +1 -0
  354. package/dist/types/icons/IconSearch.d.ts +17 -0
  355. package/dist/types/icons/IconSearch.d.ts.map +1 -0
  356. package/dist/types/icons/IconSearch1.d.ts +17 -0
  357. package/dist/types/icons/IconSearch1.d.ts.map +1 -0
  358. package/dist/types/icons/IconSheZhi.d.ts +17 -0
  359. package/dist/types/icons/IconSheZhi.d.ts.map +1 -0
  360. package/dist/types/icons/IconShengCheng.d.ts +17 -0
  361. package/dist/types/icons/IconShengCheng.d.ts.map +1 -0
  362. package/dist/types/icons/IconShiBai.d.ts +17 -0
  363. package/dist/types/icons/IconShiBai.d.ts.map +1 -0
  364. package/dist/types/icons/IconShouQi.d.ts +17 -0
  365. package/dist/types/icons/IconShouQi.d.ts.map +1 -0
  366. package/dist/types/icons/IconSouSuoZhuShou.d.ts +17 -0
  367. package/dist/types/icons/IconSouSuoZhuShou.d.ts.map +1 -0
  368. package/dist/types/icons/IconSuoXiao.d.ts +17 -0
  369. package/dist/types/icons/IconSuoXiao.d.ts.map +1 -0
  370. package/dist/types/icons/IconTianJia.d.ts +17 -0
  371. package/dist/types/icons/IconTianJia.d.ts.map +1 -0
  372. package/dist/types/icons/IconTongZhi.d.ts +17 -0
  373. package/dist/types/icons/IconTongZhi.d.ts.map +1 -0
  374. package/dist/types/icons/IconTongZhi1.d.ts +17 -0
  375. package/dist/types/icons/IconTongZhi1.d.ts.map +1 -0
  376. package/dist/types/icons/IconTuiChu.d.ts +17 -0
  377. package/dist/types/icons/IconTuiChu.d.ts.map +1 -0
  378. package/dist/types/icons/IconWangLuoJianSuo.d.ts +17 -0
  379. package/dist/types/icons/IconWangLuoJianSuo.d.ts.map +1 -0
  380. package/dist/types/icons/IconWangYeXiaZai.d.ts +17 -0
  381. package/dist/types/icons/IconWangYeXiaZai.d.ts.map +1 -0
  382. package/dist/types/icons/IconWeiBiaoTi1HuaBan11.d.ts +17 -0
  383. package/dist/types/icons/IconWeiBiaoTi1HuaBan11.d.ts.map +1 -0
  384. package/dist/types/icons/IconWenDaZhuShou.d.ts +17 -0
  385. package/dist/types/icons/IconWenDaZhuShou.d.ts.map +1 -0
  386. package/dist/types/icons/IconWenDang.d.ts +17 -0
  387. package/dist/types/icons/IconWenDang.d.ts.map +1 -0
  388. package/dist/types/icons/IconWenDang1.d.ts +17 -0
  389. package/dist/types/icons/IconWenDang1.d.ts.map +1 -0
  390. package/dist/types/icons/IconWenJian.d.ts +17 -0
  391. package/dist/types/icons/IconWenJian.d.ts.map +1 -0
  392. package/dist/types/icons/IconXiTongPeiZhi.d.ts +17 -0
  393. package/dist/types/icons/IconXiTongPeiZhi.d.ts.map +1 -0
  394. package/dist/types/icons/IconXiaZai.d.ts +17 -0
  395. package/dist/types/icons/IconXiaZai.d.ts.map +1 -0
  396. package/dist/types/icons/IconXiaZaiZhuShou.d.ts +17 -0
  397. package/dist/types/icons/IconXiaZaiZhuShou.d.ts.map +1 -0
  398. package/dist/types/icons/IconXiaoXi.d.ts +17 -0
  399. package/dist/types/icons/IconXiaoXi.d.ts.map +1 -0
  400. package/dist/types/icons/IconXinXiGuanLi.d.ts +17 -0
  401. package/dist/types/icons/IconXinXiGuanLi.d.ts.map +1 -0
  402. package/dist/types/icons/IconXinZeng.d.ts +17 -0
  403. package/dist/types/icons/IconXinZeng.d.ts.map +1 -0
  404. package/dist/types/icons/IconYanZhengMa.d.ts +17 -0
  405. package/dist/types/icons/IconYanZhengMa.d.ts.map +1 -0
  406. package/dist/types/icons/IconYunYingGuanLi.d.ts +17 -0
  407. package/dist/types/icons/IconYunYingGuanLi.d.ts.map +1 -0
  408. package/dist/types/icons/IconZengJia.d.ts +17 -0
  409. package/dist/types/icons/IconZengJia.d.ts.map +1 -0
  410. package/dist/types/icons/IconZhanKai.d.ts +17 -0
  411. package/dist/types/icons/IconZhanKai.d.ts.map +1 -0
  412. package/dist/types/icons/IconZhanKai1.d.ts +17 -0
  413. package/dist/types/icons/IconZhanKai1.d.ts.map +1 -0
  414. package/dist/types/icons/IconZhengQue.d.ts +17 -0
  415. package/dist/types/icons/IconZhengQue.d.ts.map +1 -0
  416. package/dist/types/icons/IconZhiShiKu.d.ts +17 -0
  417. package/dist/types/icons/IconZhiShiKu.d.ts.map +1 -0
  418. package/dist/types/icons/IconZhiShiKu1.d.ts +17 -0
  419. package/dist/types/icons/IconZhiShiKu1.d.ts.map +1 -0
  420. package/dist/types/index.d.ts +56 -0
  421. package/dist/types/index.d.ts.map +1 -0
  422. package/dist/types/manifest-generator.d.ts +113 -0
  423. package/dist/types/manifest-generator.d.ts.map +1 -0
  424. package/dist/types/multi-format-output.d.ts +151 -0
  425. package/dist/types/multi-format-output.d.ts.map +1 -0
  426. package/dist/types/svg-exporter.d.ts +103 -0
  427. package/dist/types/svg-exporter.d.ts.map +1 -0
  428. package/dist/types/svg-transformer.d.ts +103 -0
  429. package/dist/types/svg-transformer.d.ts.map +1 -0
  430. package/dist/types/types.d.ts +346 -0
  431. package/dist/types/types.d.ts.map +1 -0
  432. package/dist/types/version-manager.d.ts +82 -0
  433. package/dist/types/version-manager.d.ts.map +1 -0
  434. package/icons.json +227 -0
  435. package/package.json +66 -0
  436. package/svg/back.svg +1 -0
  437. package/svg/back1.svg +1 -0
  438. package/svg/check.svg +1 -0
  439. package/svg/check1.svg +1 -0
  440. package/svg/search.svg +1 -0
  441. package/svg/search1.svg +1 -0
  442. package/svg//345/205/263/351/227/255-/345/260/217.svg +1 -0
  443. package/svg//345/205/263/351/227/255-/345/260/2171.svg +1 -0
  444. package/svg//345/205/263/351/227/255.svg +1 -0
  445. package/svg//345/205/263/351/227/2551.svg +1 -0
  446. package/svg//345/261/225/345/274/200.svg +1 -0
  447. package/svg//345/261/225/345/274/2001.svg +1 -0
  448. package/svg//346/226/207/346/241/243.svg +1 -0
  449. package/svg//346/226/207/346/241/2431.svg +1 -0
  450. package/svg//347/237/245/350/257/206/345/272/223.svg +1 -0
  451. package/svg//347/237/245/350/257/206/345/272/2231.svg +1 -0
  452. package/svg//351/200/232/347/237/245.svg +1 -0
  453. package/svg//351/200/232/347/237/2451.svg +1 -0
  454. package/svg//351/223/276/346/216/245.svg +1 -0
  455. package/svg//351/223/276/346/216/2451.svg +1 -0
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Version Manager Module
3
+ *
4
+ * Provides semantic version suggestions based on icon changes.
5
+ * Follows SemVer conventions:
6
+ * - major: breaking changes (icon removals)
7
+ * - minor: new features (icon additions)
8
+ * - patch: bug fixes (icon modifications only)
9
+ *
10
+ * Requirements: 13.1, 13.2, 13.3, 13.4
11
+ */
12
+ /**
13
+ * Suggests a semantic version bump type based on icon changes
14
+ *
15
+ * Rules (per Requirements 13.1-13.4):
16
+ * - If icons are removed → major (breaking change)
17
+ * - If icons are added (with or without modifications) → minor (new feature)
18
+ * - If only icons are modified → patch (bug fix)
19
+ * - If no changes → patch (default)
20
+ *
21
+ * @param diff - The icon diff containing added, modified, and removed icons
22
+ * @returns VersionSuggestion with bump type and reason
23
+ *
24
+ * Requirements: 13.1, 13.2, 13.3, 13.4
25
+ */
26
+ export function suggestVersionBump(diff) {
27
+ const hasRemovals = diff.removed.length > 0;
28
+ const hasAdditions = diff.added.length > 0;
29
+ const hasModifications = diff.modified.length > 0;
30
+ // Rule 1: Removals are breaking changes → major
31
+ // Requirements: 13.3
32
+ if (hasRemovals) {
33
+ const removedCount = diff.removed.length;
34
+ const reason = removedCount === 1
35
+ ? `1 icon removed (breaking change)`
36
+ : `${removedCount} icons removed (breaking change)`;
37
+ return {
38
+ bumpType: 'major',
39
+ reason,
40
+ };
41
+ }
42
+ // Rule 2: Additions are new features → minor
43
+ // Requirements: 13.2
44
+ if (hasAdditions) {
45
+ const addedCount = diff.added.length;
46
+ const modifiedCount = diff.modified.length;
47
+ let reason = addedCount === 1 ? `1 icon added` : `${addedCount} icons added`;
48
+ if (modifiedCount > 0) {
49
+ reason +=
50
+ modifiedCount === 1
51
+ ? `, 1 icon modified`
52
+ : `, ${modifiedCount} icons modified`;
53
+ }
54
+ return {
55
+ bumpType: 'minor',
56
+ reason,
57
+ };
58
+ }
59
+ // Rule 3: Only modifications → patch
60
+ // Requirements: 13.4
61
+ if (hasModifications) {
62
+ const modifiedCount = diff.modified.length;
63
+ const reason = modifiedCount === 1
64
+ ? `1 icon modified`
65
+ : `${modifiedCount} icons modified`;
66
+ return {
67
+ bumpType: 'patch',
68
+ reason,
69
+ };
70
+ }
71
+ // No changes → default to patch
72
+ return {
73
+ bumpType: 'patch',
74
+ reason: 'No changes detected',
75
+ };
76
+ }
77
+ /**
78
+ * Increments a semantic version string based on bump type
79
+ *
80
+ * @param currentVersion - Current version string (e.g., "1.2.3")
81
+ * @param bumpType - Type of version bump
82
+ * @returns New version string
83
+ *
84
+ * Requirements: 13.1
85
+ */
86
+ export function incrementVersion(currentVersion, bumpType) {
87
+ const parts = parseVersion(currentVersion);
88
+ switch (bumpType) {
89
+ case 'major':
90
+ return `${parts.major + 1}.0.0`;
91
+ case 'minor':
92
+ return `${parts.major}.${parts.minor + 1}.0`;
93
+ case 'patch':
94
+ return `${parts.major}.${parts.minor}.${parts.patch + 1}`;
95
+ }
96
+ }
97
+ /**
98
+ * Parses a semantic version string into components
99
+ *
100
+ * @param version - Version string (e.g., "1.2.3")
101
+ * @returns Parsed version components
102
+ * @throws Error if version format is invalid
103
+ */
104
+ export function parseVersion(version) {
105
+ // Remove 'v' prefix if present
106
+ const cleanVersion = version.startsWith('v') ? version.slice(1) : version;
107
+ const match = cleanVersion.match(/^(\d+)\.(\d+)\.(\d+)/);
108
+ if (!match) {
109
+ throw new Error(`Invalid version format: ${version}`);
110
+ }
111
+ return {
112
+ major: parseInt(match[1], 10),
113
+ minor: parseInt(match[2], 10),
114
+ patch: parseInt(match[3], 10),
115
+ };
116
+ }
117
+ /**
118
+ * Validates a semantic version string
119
+ *
120
+ * @param version - Version string to validate
121
+ * @returns True if valid semantic version
122
+ */
123
+ export function isValidVersion(version) {
124
+ try {
125
+ parseVersion(version);
126
+ return true;
127
+ }
128
+ catch {
129
+ return false;
130
+ }
131
+ }
132
+ /**
133
+ * Compares two semantic versions
134
+ *
135
+ * @param a - First version
136
+ * @param b - Second version
137
+ * @returns -1 if a < b, 0 if a === b, 1 if a > b
138
+ */
139
+ export function compareVersions(a, b) {
140
+ const parsedA = parseVersion(a);
141
+ const parsedB = parseVersion(b);
142
+ if (parsedA.major !== parsedB.major) {
143
+ return parsedA.major < parsedB.major ? -1 : 1;
144
+ }
145
+ if (parsedA.minor !== parsedB.minor) {
146
+ return parsedA.minor < parsedB.minor ? -1 : 1;
147
+ }
148
+ if (parsedA.patch !== parsedB.patch) {
149
+ return parsedA.patch < parsedB.patch ? -1 : 1;
150
+ }
151
+ return 0;
152
+ }
153
+ /**
154
+ * Suggests a new version based on current version and icon diff
155
+ *
156
+ * Convenience function that combines suggestVersionBump and incrementVersion.
157
+ *
158
+ * @param currentVersion - Current version string
159
+ * @param diff - Icon diff
160
+ * @returns Object with suggested version and reason
161
+ */
162
+ export function suggestNewVersion(currentVersion, diff) {
163
+ const suggestion = suggestVersionBump(diff);
164
+ const version = incrementVersion(currentVersion, suggestion.bumpType);
165
+ return { version, suggestion };
166
+ }
167
+ //# sourceMappingURL=version-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-manager.js","sourceRoot":"","sources":["../../src/version-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Changelog Generator Module
3
+ *
4
+ * Generates changelog entries by comparing icon manifests and
5
+ * producing Markdown-formatted version history.
6
+ *
7
+ * Requirements: 10.1, 10.2, 10.3, 10.4, 10.5
8
+ */
9
+ import type { IconManifest, IconMetadata, IconDiff, ChangelogEntry } from './types';
10
+ /**
11
+ * Computes the diff between two icon manifests
12
+ *
13
+ * Identifies icons that were added, modified, or removed between versions.
14
+ * Modification is detected by comparing SVG content when available,
15
+ * or by comparing dimensions if SVG content is not present.
16
+ *
17
+ * @param currentManifest - The new/current manifest
18
+ * @param previousManifest - The old/previous manifest
19
+ * @returns IconDiff containing added, modified, and removed icons
20
+ *
21
+ * Requirements: 10.3
22
+ */
23
+ export declare function computeIconDiff(currentManifest: IconManifest, previousManifest: IconManifest): IconDiff;
24
+ /**
25
+ * Determines if an icon has changed between versions
26
+ *
27
+ * @param current - Current version of the icon
28
+ * @param previous - Previous version of the icon
29
+ * @returns True if the icon has changed
30
+ */
31
+ export declare function hasIconChanged(current: IconMetadata, previous: IconMetadata): boolean;
32
+ /**
33
+ * Checks if a diff has any changes
34
+ *
35
+ * @param diff - The icon diff to check
36
+ * @returns True if there are any changes
37
+ */
38
+ export declare function hasChanges(diff: IconDiff): boolean;
39
+ /**
40
+ * Options for changelog generation
41
+ */
42
+ export interface ChangelogOptions {
43
+ /** Version number for the release */
44
+ version: string;
45
+ /** Update message from the designer */
46
+ message: string;
47
+ /** Optional date override (defaults to current date) */
48
+ date?: string;
49
+ }
50
+ /**
51
+ * Formats a date to ISO format (YYYY-MM-DD)
52
+ *
53
+ * @param date - Date to format (defaults to current date)
54
+ * @returns ISO formatted date string
55
+ */
56
+ export declare function formatDate(date?: Date | string): string;
57
+ /**
58
+ * Creates a ChangelogEntry from a diff and options
59
+ *
60
+ * @param diff - The icon diff
61
+ * @param options - Changelog generation options
62
+ * @returns ChangelogEntry object
63
+ *
64
+ * Requirements: 10.2, 10.4, 10.5
65
+ */
66
+ export declare function createChangelogEntry(diff: IconDiff, options: ChangelogOptions): ChangelogEntry;
67
+ /**
68
+ * Generates a Markdown-formatted changelog entry
69
+ *
70
+ * @param entry - The changelog entry to format
71
+ * @returns Markdown string
72
+ *
73
+ * Requirements: 10.1, 10.2, 10.4, 10.5
74
+ */
75
+ export declare function generateChangelogMarkdown(entry: ChangelogEntry): string;
76
+ /**
77
+ * Generates a complete changelog entry from two manifests
78
+ *
79
+ * This is a convenience function that combines diff computation
80
+ * and markdown generation.
81
+ *
82
+ * @param currentManifest - The new/current manifest
83
+ * @param previousManifest - The old/previous manifest
84
+ * @param options - Changelog generation options
85
+ * @returns Markdown-formatted changelog entry
86
+ *
87
+ * Requirements: 10.1, 10.2, 10.3, 10.4, 10.5
88
+ */
89
+ export declare function generateChangelog(currentManifest: IconManifest, previousManifest: IconManifest, options: ChangelogOptions): string;
90
+ /**
91
+ * Prepends a new changelog entry to an existing changelog file content
92
+ *
93
+ * @param existingContent - Existing CHANGELOG.md content
94
+ * @param newEntry - New changelog entry markdown
95
+ * @returns Updated changelog content
96
+ */
97
+ export declare function prependToChangelog(existingContent: string, newEntry: string): string;
98
+ /**
99
+ * Creates an initial CHANGELOG.md content with header
100
+ *
101
+ * @param projectName - Name of the project
102
+ * @returns Initial changelog content
103
+ */
104
+ export declare function createInitialChangelog(projectName?: string): string;
105
+ /**
106
+ * Parses a changelog entry from markdown
107
+ *
108
+ * @param markdown - Markdown content of a single entry
109
+ * @returns Parsed ChangelogEntry or null if parsing fails
110
+ */
111
+ export declare function parseChangelogEntry(markdown: string): ChangelogEntry | null;
112
+ //# sourceMappingURL=changelog-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changelog-generator.d.ts","sourceRoot":"","sources":["../../src/changelog-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,cAAc,EAEf,MAAM,SAAS,CAAA;AAEhB;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,eAAe,EAAE,YAAY,EAC7B,gBAAgB,EAAE,YAAY,GAC7B,QAAQ,CAqCV;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,YAAY,GACrB,OAAO,CAYT;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAIlD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAA;IACf,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAWvD;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,gBAAgB,GACxB,cAAc,CAahB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CA+CvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,eAAe,EAAE,YAAY,EAC7B,gBAAgB,EAAE,YAAY,EAC9B,OAAO,EAAE,gBAAgB,GACxB,MAAM,CAIR;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,GACf,MAAM,CAcR;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,GAAE,MAAuB,GACnC,MAAM,CASR;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CA6B3E"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Component Generator Module
3
+ *
4
+ * Handles React component generation from optimized SVG content.
5
+ * Requirements: 4.1, 4.2, 4.3, 4.5, 4.6
6
+ */
7
+ import type { IconMetadata, ComponentTemplate } from './types';
8
+ /**
9
+ * Converts a string to PascalCase format
10
+ *
11
+ * Handles various input formats:
12
+ * - kebab-case: "arrow-right" -> "ArrowRight"
13
+ * - snake_case: "arrow_right" -> "ArrowRight"
14
+ * - space separated: "arrow right" -> "ArrowRight"
15
+ * - mixed: "arrow-right_up" -> "ArrowRightUp"
16
+ * - already PascalCase: "ArrowRight" -> "ArrowRight"
17
+ * - camelCase: "arrowRight" -> "ArrowRight"
18
+ *
19
+ * @param str - Input string in any format
20
+ * @returns PascalCase formatted string
21
+ *
22
+ * Requirements: 4.3
23
+ */
24
+ export declare function toPascalCase(str: string): string;
25
+ /**
26
+ * Generates a valid React component name from an icon name
27
+ *
28
+ * @param iconName - Original icon name
29
+ * @param prefix - Prefix to add (default: "Icon")
30
+ * @returns Valid React component name
31
+ *
32
+ * Requirements: 4.3
33
+ */
34
+ export declare function generateComponentName(iconName: string, prefix?: string): string;
35
+ /**
36
+ * Generates a React component template from icon metadata and JSX content
37
+ *
38
+ * @param icon - Icon metadata
39
+ * @param jsxContent - JSX-compatible SVG content
40
+ * @returns ComponentTemplate with component code and type definitions
41
+ *
42
+ * Requirements: 4.1, 4.2, 4.6
43
+ */
44
+ export declare function generateComponent(icon: IconMetadata, jsxContent: string, rawSvgContent?: string): ComponentTemplate;
45
+ /**
46
+ * Generates multiple component templates from a list of icons
47
+ *
48
+ * @param icons - Array of icon metadata with JSX content
49
+ * @returns Array of ComponentTemplate objects
50
+ *
51
+ * Requirements: 4.1, 4.2, 4.6
52
+ */
53
+ export declare function generateComponents(icons: Array<{
54
+ metadata: IconMetadata;
55
+ jsxContent: string;
56
+ }>): ComponentTemplate[];
57
+ /**
58
+ * Result of generating an index file
59
+ */
60
+ export interface IndexFileResult {
61
+ /** The generated index.ts content */
62
+ content: string;
63
+ /** List of all exported component names */
64
+ componentNames: string[];
65
+ /** The allIcons object export */
66
+ allIconsExport: string;
67
+ /** The IconName type definition */
68
+ iconNameType: string;
69
+ }
70
+ /**
71
+ * Generates the index.ts file content that exports all icon components
72
+ *
73
+ * @param components - Array of ComponentTemplate objects
74
+ * @returns IndexFileResult with the generated content
75
+ *
76
+ * Requirements: 4.5
77
+ */
78
+ export declare function generateIndexFile(components: ComponentTemplate[]): IndexFileResult;
79
+ /**
80
+ * Generates a minimal index file for a subset of icons
81
+ *
82
+ * @param componentNames - Array of component names to export
83
+ * @returns The generated index.ts content
84
+ *
85
+ * Requirements: 4.5
86
+ */
87
+ export declare function generateMinimalIndexFile(componentNames: string[]): string;
88
+ //# sourceMappingURL=component-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-generator.d.ts","sourceRoot":"","sources":["../../src/component-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAG9D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAwBhD;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,MAAe,GACtB,MAAM,CAMR;AAuHD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,iBAAiB,CA2KnB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,CAAC;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GAC3D,iBAAiB,EAAE,CAIrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,2CAA2C;IAC3C,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAA;IACtB,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,iBAAiB,EAAE,GAC9B,eAAe,CA4DjB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,MAAM,CAwBzE"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Figma API Client
3
+ *
4
+ * Provides methods to interact with the Figma API for fetching files and exporting images.
5
+ * Implements error handling and retry logic for robust API interactions.
6
+ *
7
+ * Requirements: 2.1, 2.5
8
+ */
9
+ import type { FigmaFileResponse, ErrorResponse } from './types';
10
+ /**
11
+ * Figma API error codes
12
+ */
13
+ export declare enum FigmaErrorCode {
14
+ INVALID_TOKEN = "FIGMA_INVALID_TOKEN",
15
+ RATE_LIMIT = "FIGMA_RATE_LIMIT",
16
+ FILE_NOT_FOUND = "FIGMA_FILE_NOT_FOUND",
17
+ NETWORK_ERROR = "FIGMA_NETWORK_ERROR",
18
+ UNKNOWN_ERROR = "FIGMA_UNKNOWN_ERROR"
19
+ }
20
+ /**
21
+ * Custom error class for Figma API errors
22
+ */
23
+ export declare class FigmaApiError extends Error {
24
+ code: FigmaErrorCode;
25
+ recoverable: boolean;
26
+ suggestion?: string | undefined;
27
+ details?: unknown | undefined;
28
+ constructor(code: FigmaErrorCode, message: string, recoverable?: boolean, suggestion?: string | undefined, details?: unknown | undefined);
29
+ toErrorResponse(): ErrorResponse;
30
+ }
31
+ /**
32
+ * Retry configuration options
33
+ */
34
+ export interface RetryConfig {
35
+ maxRetries: number;
36
+ baseDelayMs: number;
37
+ maxDelayMs: number;
38
+ }
39
+ /**
40
+ * Image export options for Figma API
41
+ */
42
+ export interface ImageExportOptions {
43
+ format: 'svg' | 'png' | 'jpg' | 'pdf';
44
+ scale?: number;
45
+ svgIncludeId?: boolean;
46
+ svgSimplifyStroke?: boolean;
47
+ }
48
+ /**
49
+ * Response from Figma images API
50
+ */
51
+ export interface FigmaImagesResponse {
52
+ err: string | null;
53
+ images: Record<string, string>;
54
+ }
55
+ /**
56
+ * Figma API Client class
57
+ */
58
+ export declare class FigmaClient {
59
+ private token;
60
+ private retryConfig;
61
+ constructor(token: string, retryConfig?: Partial<RetryConfig>);
62
+ /**
63
+ * Makes an authenticated request to the Figma API with retry logic
64
+ * Properly handles Retry-After header for rate limiting
65
+ */
66
+ private fetchWithRetry;
67
+ /**
68
+ * Handles HTTP error responses and converts them to FigmaApiError
69
+ */
70
+ private handleHttpError;
71
+ /**
72
+ * Sleep utility for retry delays
73
+ */
74
+ private sleep;
75
+ /**
76
+ * Gets a Figma file by its key
77
+ *
78
+ * @param fileKey - The Figma file key
79
+ * @returns The file data including document structure and components
80
+ */
81
+ getFile(fileKey: string): Promise<FigmaFileResponse>;
82
+ /**
83
+ * Exports images for specified node IDs
84
+ *
85
+ * @param fileKey - The Figma file key
86
+ * @param nodeIds - Array of node IDs to export
87
+ * @param options - Export options (format, scale, etc.)
88
+ * @returns Map of node IDs to image URLs
89
+ */
90
+ getImages(fileKey: string, nodeIds: string[], options?: ImageExportOptions): Promise<Record<string, string>>;
91
+ /**
92
+ * Downloads SVG content from a URL
93
+ *
94
+ * @param url - The URL to download from
95
+ * @returns The SVG content as a string
96
+ */
97
+ downloadSvg(url: string): Promise<string>;
98
+ }
99
+ /**
100
+ * Creates a new Figma client instance
101
+ *
102
+ * @param token - Figma Personal Access Token
103
+ * @param retryConfig - Optional retry configuration
104
+ * @returns A new FigmaClient instance
105
+ */
106
+ export declare function createFigmaClient(token: string, retryConfig?: Partial<RetryConfig>): FigmaClient;
107
+ //# sourceMappingURL=figma-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"figma-client.d.ts","sourceRoot":"","sources":["../../src/figma-client.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,iBAAiB,EAGjB,aAAa,EACd,MAAM,SAAS,CAAA;AAoBhB;;GAEG;AACH,oBAAY,cAAc;IACxB,aAAa,wBAAwB;IACrC,UAAU,qBAAqB;IAC/B,cAAc,yBAAyB;IACvC,aAAa,wBAAwB;IACrC,aAAa,wBAAwB;CACtC;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK;IAE7B,IAAI,EAAE,cAAc;IAEpB,WAAW,EAAE,OAAO;IACpB,UAAU,CAAC,EAAE,MAAM;IACnB,OAAO,CAAC,EAAE,OAAO;gBAJjB,IAAI,EAAE,cAAc,EAC3B,OAAO,EAAE,MAAM,EACR,WAAW,GAAE,OAAe,EAC5B,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,OAAO,CAAC,EAAE,OAAO,YAAA;IAM1B,eAAe,IAAI,aAAa;CASjC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;IACrC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,WAAW,CAAa;gBAEpB,KAAK,EAAE,MAAM,EAAE,WAAW,GAAE,OAAO,CAAC,WAAW,CAAM;IAajE;;;OAGG;YACW,cAAc;IAkF5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAyCvB;;OAEG;IACH,OAAO,CAAC,KAAK;IAIb;;;;;OAKG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAc1D;;;;;;;OAOG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,GAAE,kBAAsC,GAC9C,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IA+ClC;;;;;OAKG;IACG,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAuDhD;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,EACb,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GACjC,WAAW,CAEb"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * Icon Component Filtering Module
3
+ *
4
+ * Provides functions to filter and identify icon components from Figma file data.
5
+ * Filters components based on type and naming conventions.
6
+ *
7
+ * Requirements: 2.2
8
+ */
9
+ import type { FigmaComponent, FigmaNode, FigmaFileResponse } from './types';
10
+ /**
11
+ * Default icon naming pattern - matches lowercase names with hyphens
12
+ * Examples: "arrow-right", "check-circle", "user-profile"
13
+ */
14
+ export declare const DEFAULT_ICON_NAME_PATTERN: RegExp;
15
+ /**
16
+ * Icon filter configuration
17
+ */
18
+ export interface IconFilterConfig {
19
+ /** Pattern to match icon names */
20
+ namePattern: RegExp;
21
+ /** Prefix that icon names should start with (optional) */
22
+ namePrefix?: string;
23
+ /** Suffix that icon names should end with (optional) */
24
+ nameSuffix?: string;
25
+ /** Minimum icon size in pixels */
26
+ minSize?: number;
27
+ /** Maximum icon size in pixels */
28
+ maxSize?: number;
29
+ }
30
+ /**
31
+ * Default filter configuration
32
+ */
33
+ export declare const DEFAULT_FILTER_CONFIG: IconFilterConfig;
34
+ /**
35
+ * Filtered icon component with additional metadata
36
+ */
37
+ export interface FilteredIconComponent {
38
+ /** Component ID */
39
+ id: string;
40
+ /** Component name */
41
+ name: string;
42
+ /** Component width */
43
+ width: number;
44
+ /** Component height */
45
+ height: number;
46
+ /** Original Figma component data */
47
+ original: FigmaComponent;
48
+ }
49
+ /**
50
+ * Result of filtering operation
51
+ */
52
+ export interface FilterResult {
53
+ /** Successfully filtered icon components */
54
+ icons: FilteredIconComponent[];
55
+ /** Components that were skipped (not matching criteria) */
56
+ skipped: Array<{
57
+ id: string;
58
+ name: string;
59
+ reason: string;
60
+ }>;
61
+ /** Total components processed */
62
+ totalProcessed: number;
63
+ }
64
+ /**
65
+ * Checks if a component matches the icon naming convention
66
+ *
67
+ * @param name - Component name to check
68
+ * @param config - Filter configuration
69
+ * @returns True if the name matches the icon naming convention
70
+ */
71
+ export declare function matchesIconNamingConvention(name: string, config?: IconFilterConfig): boolean;
72
+ /**
73
+ * Checks if a component has valid icon dimensions
74
+ *
75
+ * @param width - Component width
76
+ * @param height - Component height
77
+ * @param config - Filter configuration
78
+ * @returns True if dimensions are within valid range
79
+ */
80
+ export declare function hasValidIconDimensions(width: number, height: number, config?: IconFilterConfig): boolean;
81
+ /**
82
+ * Checks if a Figma node is a COMPONENT or FRAME type (SVGs are imported as frames)
83
+ *
84
+ * @param node - Figma node or component to check
85
+ * @returns True if the node is a COMPONENT or FRAME type
86
+ */
87
+ export declare function isComponentType(node: FigmaNode | FigmaComponent | {
88
+ type?: string;
89
+ }): boolean;
90
+ /**
91
+ * Filters a single component to determine if it's a valid icon
92
+ *
93
+ * @param component - Figma component to check
94
+ * @param config - Filter configuration
95
+ * @returns Object with isIcon flag and reason if not an icon
96
+ */
97
+ export declare function filterIconComponent(component: FigmaComponent, config?: IconFilterConfig): {
98
+ isIcon: boolean;
99
+ reason?: string;
100
+ };
101
+ /**
102
+ * Filters icon components from a Figma file response
103
+ * Searches both the components map and the document tree for FRAME nodes (imported SVGs)
104
+ *
105
+ * @param fileResponse - Figma file API response
106
+ * @param config - Filter configuration
107
+ * @returns Filter result with icons and skipped components
108
+ */
109
+ export declare function filterIconComponents(fileResponse: FigmaFileResponse, config?: IconFilterConfig): FilterResult;
110
+ /**
111
+ * Extracts component IDs from filtered icons
112
+ *
113
+ * @param icons - Array of filtered icon components
114
+ * @returns Array of component IDs
115
+ */
116
+ export declare function extractComponentIds(icons: FilteredIconComponent[]): string[];
117
+ /**
118
+ * Filters components from a mixed list of Figma nodes
119
+ * Recursively searches through the node tree to find COMPONENT nodes
120
+ *
121
+ * @param nodes - Array of Figma nodes
122
+ * @param config - Filter configuration
123
+ * @returns Array of filtered icon components
124
+ */
125
+ export declare function filterIconsFromNodes(nodes: FigmaNode[], config?: IconFilterConfig): FilteredIconComponent[];
126
+ //# sourceMappingURL=icon-filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-filter.d.ts","sourceRoot":"","sources":["../../src/icon-filter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE3E;;;GAGG;AACH,eAAO,MAAM,yBAAyB,QAAsB,CAAA;AAE5D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAA;IACnB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,gBAInC,CAAA;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,mBAAmB;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,oCAAoC;IACpC,QAAQ,EAAE,cAAc,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4CAA4C;IAC5C,KAAK,EAAE,qBAAqB,EAAE,CAAA;IAC9B,2DAA2D;IAC3D,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;KACf,CAAC,CAAA;IACF,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,gBAAwC,GAC/C,OAAO,CAqBT;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,gBAAwC,GAC/C,OAAO,CAsBT;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,GAAG,cAAc,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD,OAAO,CAET;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,cAAc,EACzB,MAAM,GAAE,gBAAwC,GAC/C;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CA2BtC;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,iBAAiB,EAC/B,MAAM,GAAE,gBAAwC,GAC/C,YAAY,CA+Cd;AAmED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,MAAM,EAAE,CAE5E;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,SAAS,EAAE,EAClB,MAAM,GAAE,gBAAwC,GAC/C,qBAAqB,EAAE,CAyCzB"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Icon search/filter functionality
3
+ */
4
+ export interface IconInfo {
5
+ name: string;
6
+ originalName: string;
7
+ svgPath?: string;
8
+ componentPath?: string;
9
+ size?: {
10
+ width: number;
11
+ height: number;
12
+ };
13
+ }
14
+ /**
15
+ * Filter icons by search query
16
+ * Returns only icons whose names contain the search query (case-insensitive)
17
+ *
18
+ * @param icons - Array of icon objects
19
+ * @param query - Search query string
20
+ * @returns Filtered icons matching the query
21
+ */
22
+ export declare function filterIcons(icons: IconInfo[], query: string): IconInfo[];
23
+ /**
24
+ * Check if an icon matches a search query
25
+ *
26
+ * @param icon - Icon object to check
27
+ * @param query - Search query string
28
+ * @returns True if icon matches the query
29
+ */
30
+ export declare function iconMatchesQuery(icon: IconInfo, query: string): boolean;
31
+ //# sourceMappingURL=icon-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-search.d.ts","sourceRoot":"","sources":["../../src/icon-search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE;QACL,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;CACF;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,CAcxE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAYvE"}