@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
package/README.md ADDED
@@ -0,0 +1,155 @@
1
+ # Figma Icon Automation
2
+
3
+ 一套完整的 Figma 图标自动化工作流系统,实现从 Figma 设计到 NPM 发布的全自动化流程。
4
+
5
+ ## 功能特性
6
+
7
+ - 🎨 **Figma 插件** - 设计师一键触发图标同步
8
+ - 🔄 **自动化工作流** - GitHub Actions 自动处理图标转换和发布
9
+ - ⚛️ **React 组件** - 自动生成 TypeScript React 图标组件
10
+ - 📦 **多格式输出** - 支持 React 组件、SVG 文件、SVG Sprite、JSON 元数据
11
+ - 🌐 **预览网站** - 自动部署到 GitHub Pages 的图标预览站点
12
+ - ✅ **规范校验** - 自动检查图标尺寸、命名和 SVG 特性
13
+ - 📝 **自动 Changelog** - 自动生成版本变更日志
14
+
15
+ ## 快速开始
16
+
17
+ ### 安装
18
+
19
+ ```bash
20
+ npm install @zleap-ai/icons
21
+ # 或
22
+ yarn add @zleap-ai/icons
23
+ # 或
24
+ pnpm add @zleap-ai/icons
25
+ ```
26
+
27
+ ### 使用方式
28
+
29
+ #### 1. 导入单个图标(推荐,支持 Tree Shaking)
30
+
31
+ ```tsx
32
+ import { IconArrowRight, IconCheck } from '@zleap-ai/icons'
33
+
34
+ function App() {
35
+ return (
36
+ <div>
37
+ <IconArrowRight size={24} color='#333' />
38
+ <IconCheck size={20} color='green' />
39
+ </div>
40
+ )
41
+ }
42
+ ```
43
+
44
+ #### 2. 使用 Props
45
+
46
+ 所有图标组件支持以下 Props:
47
+
48
+ | Prop | 类型 | 默认值 | 说明 |
49
+ | ----------- | ------------------ | ---------------- | -------------------- |
50
+ | `size` | `number \| string` | `24` | 图标尺寸(宽高相同) |
51
+ | `color` | `string` | `'currentColor'` | 图标颜色 |
52
+ | `className` | `string` | - | CSS 类名 |
53
+ | `style` | `CSSProperties` | - | 内联样式 |
54
+ | `...props` | `SVGProps` | - | 其他 SVG 原生属性 |
55
+
56
+ ```tsx
57
+ <IconArrowRight
58
+ size={32}
59
+ color='#1890ff'
60
+ className='my-icon'
61
+ onClick={() => console.log('clicked')}
62
+ aria-label='向右箭头'
63
+ />
64
+ ```
65
+
66
+ #### 3. 使用 SVG Sprite
67
+
68
+ ```html
69
+ <!-- 引入 sprite 文件 -->
70
+ <script>
71
+ fetch('node_modules/@zleap-ai/icons/sprite/icons.svg')
72
+ .then((r) => r.text())
73
+ .then((svg) => document.body.insertAdjacentHTML('afterbegin', svg))
74
+ </script>
75
+
76
+ <!-- 使用图标 -->
77
+ <svg width="24" height="24">
78
+ <use href="#arrow-right"></use>
79
+ </svg>
80
+ ```
81
+
82
+ #### 4. 使用原始 SVG 文件
83
+
84
+ ```tsx
85
+ import arrowRightSvg from '@zleap-ai/icons/svg/arrow-right.svg'
86
+
87
+ // 或直接引用路径
88
+ ;<img src='node_modules/@zleap-ai/icons/svg/arrow-right.svg' alt='arrow' />
89
+ ```
90
+
91
+ #### 5. 获取图标元数据
92
+
93
+ ```tsx
94
+ import iconsData from '@zleap-ai/icons/icons.json'
95
+
96
+ console.log(iconsData.icons) // 所有图标信息
97
+ console.log(iconsData.version) // 当前版本
98
+ ```
99
+
100
+ ## 项目结构
101
+
102
+ ```
103
+ icon-library/
104
+ ├── .github/workflows/ # GitHub Actions 工作流
105
+ │ ├── sync-icons.yml # 图标同步工作流
106
+ │ ├── publish.yml # NPM 发布工作流
107
+ │ └── deploy-docs.yml # 预览网站部署
108
+ ├── src/
109
+ │ ├── icons/ # 生成的 React 图标组件
110
+ │ ├── index.ts # 主导出文件
111
+ │ └── types.ts # 类型定义
112
+ ├── svg/ # 原始 SVG 文件
113
+ ├── sprite/
114
+ │ └── icons.svg # SVG Sprite 文件
115
+ ├── dist/ # 编译输出
116
+ │ ├── esm/ # ES Modules
117
+ │ ├── cjs/ # CommonJS
118
+ │ └── types/ # 类型定义
119
+ ├── docs/ # 预览网站源码
120
+ ├── scripts/ # 处理脚本
121
+ ├── figma-plugin/ # Figma 插件源码
122
+ ├── icons.json # 图标元数据
123
+ └── CHANGELOG.md # 变更日志
124
+ ```
125
+
126
+ ## 文档
127
+
128
+ | 文档 | 说明 |
129
+ | -------------------------------------- | ---------------------------------------------- |
130
+ | [配置指南](./docs/CONFIGURATION.md) | GitHub Secrets、Figma 插件、图标规范、构建配置 |
131
+ | [部署指南](./docs/DEPLOYMENT.md) | 完整的部署流程和故障排除 |
132
+ | [Figma 插件](./figma-plugin/README.md) | 插件安装、配置和使用方法 |
133
+ | [开发指南](./docs/DEVELOPMENT.md) | 本地开发、测试和贡献指南 |
134
+
135
+ ## 工作流程
136
+
137
+ ```
138
+ 设计师在 Figma 更新图标
139
+
140
+ 点击 Figma 插件同步按钮
141
+
142
+ 触发 GitHub Actions (sync-icons.yml)
143
+
144
+ 从 Figma API 获取 SVG → 优化 SVG → 生成 React 组件
145
+
146
+ 自动创建 Pull Request
147
+
148
+ 合并 PR 后自动发布到 NPM (publish.yml)
149
+
150
+ 自动部署预览网站 (deploy-docs.yml)
151
+ ```
152
+
153
+ ## 许可证
154
+
155
+ MIT License
@@ -0,0 +1,300 @@
1
+ "use strict";
2
+ /**
3
+ * Changelog Generator Module
4
+ *
5
+ * Generates changelog entries by comparing icon manifests and
6
+ * producing Markdown-formatted version history.
7
+ *
8
+ * Requirements: 10.1, 10.2, 10.3, 10.4, 10.5
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.computeIconDiff = computeIconDiff;
12
+ exports.hasIconChanged = hasIconChanged;
13
+ exports.hasChanges = hasChanges;
14
+ exports.formatDate = formatDate;
15
+ exports.createChangelogEntry = createChangelogEntry;
16
+ exports.generateChangelogMarkdown = generateChangelogMarkdown;
17
+ exports.generateChangelog = generateChangelog;
18
+ exports.prependToChangelog = prependToChangelog;
19
+ exports.createInitialChangelog = createInitialChangelog;
20
+ exports.parseChangelogEntry = parseChangelogEntry;
21
+ /**
22
+ * Computes the diff between two icon manifests
23
+ *
24
+ * Identifies icons that were added, modified, or removed between versions.
25
+ * Modification is detected by comparing SVG content when available,
26
+ * or by comparing dimensions if SVG content is not present.
27
+ *
28
+ * @param currentManifest - The new/current manifest
29
+ * @param previousManifest - The old/previous manifest
30
+ * @returns IconDiff containing added, modified, and removed icons
31
+ *
32
+ * Requirements: 10.3
33
+ */
34
+ function computeIconDiff(currentManifest, previousManifest) {
35
+ // Create maps for efficient lookup by normalized name
36
+ const currentIconMap = new Map();
37
+ for (const icon of currentManifest.icons) {
38
+ currentIconMap.set(icon.normalizedName, icon);
39
+ }
40
+ const previousIconMap = new Map();
41
+ for (const icon of previousManifest.icons) {
42
+ previousIconMap.set(icon.normalizedName, icon);
43
+ }
44
+ const added = [];
45
+ const modified = [];
46
+ const removed = [];
47
+ // Find added and modified icons
48
+ for (const icon of currentManifest.icons) {
49
+ const previousIcon = previousIconMap.get(icon.normalizedName);
50
+ if (!previousIcon) {
51
+ // Icon exists in current but not in previous -> added
52
+ added.push(icon);
53
+ }
54
+ else if (hasIconChanged(icon, previousIcon)) {
55
+ // Icon exists in both but has changed -> modified
56
+ modified.push(icon);
57
+ }
58
+ }
59
+ // Find removed icons
60
+ for (const icon of previousManifest.icons) {
61
+ if (!currentIconMap.has(icon.normalizedName)) {
62
+ // Icon exists in previous but not in current -> removed
63
+ removed.push(icon);
64
+ }
65
+ }
66
+ return { added, modified, removed };
67
+ }
68
+ /**
69
+ * Determines if an icon has changed between versions
70
+ *
71
+ * @param current - Current version of the icon
72
+ * @param previous - Previous version of the icon
73
+ * @returns True if the icon has changed
74
+ */
75
+ function hasIconChanged(current, previous) {
76
+ // If SVG content is available, compare it
77
+ if (current.svgContent !== undefined && previous.svgContent !== undefined) {
78
+ return current.svgContent !== previous.svgContent;
79
+ }
80
+ // Fall back to comparing dimensions
81
+ if (current.width !== previous.width || current.height !== previous.height) {
82
+ return true;
83
+ }
84
+ return false;
85
+ }
86
+ /**
87
+ * Checks if a diff has any changes
88
+ *
89
+ * @param diff - The icon diff to check
90
+ * @returns True if there are any changes
91
+ */
92
+ function hasChanges(diff) {
93
+ return (diff.added.length > 0 || diff.modified.length > 0 || diff.removed.length > 0);
94
+ }
95
+ /**
96
+ * Formats a date to ISO format (YYYY-MM-DD)
97
+ *
98
+ * @param date - Date to format (defaults to current date)
99
+ * @returns ISO formatted date string
100
+ */
101
+ function formatDate(date) {
102
+ if (typeof date === 'string') {
103
+ // If already a string, try to parse and reformat
104
+ const parsed = new Date(date);
105
+ if (!isNaN(parsed.getTime())) {
106
+ return parsed.toISOString().split('T')[0];
107
+ }
108
+ return date;
109
+ }
110
+ const d = date || new Date();
111
+ return d.toISOString().split('T')[0];
112
+ }
113
+ /**
114
+ * Creates a ChangelogEntry from a diff and options
115
+ *
116
+ * @param diff - The icon diff
117
+ * @param options - Changelog generation options
118
+ * @returns ChangelogEntry object
119
+ *
120
+ * Requirements: 10.2, 10.4, 10.5
121
+ */
122
+ function createChangelogEntry(diff, options) {
123
+ const changes = {
124
+ added: diff.added.map((icon) => icon.normalizedName),
125
+ modified: diff.modified.map((icon) => icon.normalizedName),
126
+ removed: diff.removed.map((icon) => icon.normalizedName),
127
+ };
128
+ return {
129
+ version: options.version,
130
+ date: formatDate(options.date),
131
+ message: options.message,
132
+ changes,
133
+ };
134
+ }
135
+ /**
136
+ * Generates a Markdown-formatted changelog entry
137
+ *
138
+ * @param entry - The changelog entry to format
139
+ * @returns Markdown string
140
+ *
141
+ * Requirements: 10.1, 10.2, 10.4, 10.5
142
+ */
143
+ function generateChangelogMarkdown(entry) {
144
+ const lines = [];
145
+ // Version header with date
146
+ lines.push(`## [${entry.version}] - ${entry.date}`);
147
+ lines.push('');
148
+ // Designer's update message
149
+ if (entry.message) {
150
+ lines.push(entry.message);
151
+ lines.push('');
152
+ }
153
+ // Added section
154
+ lines.push('### Added');
155
+ if (entry.changes.added.length > 0) {
156
+ for (const name of entry.changes.added) {
157
+ lines.push(`- ${name}`);
158
+ }
159
+ }
160
+ else {
161
+ lines.push('- None');
162
+ }
163
+ lines.push('');
164
+ // Modified section
165
+ lines.push('### Modified');
166
+ if (entry.changes.modified.length > 0) {
167
+ for (const name of entry.changes.modified) {
168
+ lines.push(`- ${name}`);
169
+ }
170
+ }
171
+ else {
172
+ lines.push('- None');
173
+ }
174
+ lines.push('');
175
+ // Removed section
176
+ lines.push('### Removed');
177
+ if (entry.changes.removed.length > 0) {
178
+ for (const name of entry.changes.removed) {
179
+ lines.push(`- ${name}`);
180
+ }
181
+ }
182
+ else {
183
+ lines.push('- None');
184
+ }
185
+ lines.push('');
186
+ return lines.join('\n');
187
+ }
188
+ /**
189
+ * Generates a complete changelog entry from two manifests
190
+ *
191
+ * This is a convenience function that combines diff computation
192
+ * and markdown generation.
193
+ *
194
+ * @param currentManifest - The new/current manifest
195
+ * @param previousManifest - The old/previous manifest
196
+ * @param options - Changelog generation options
197
+ * @returns Markdown-formatted changelog entry
198
+ *
199
+ * Requirements: 10.1, 10.2, 10.3, 10.4, 10.5
200
+ */
201
+ function generateChangelog(currentManifest, previousManifest, options) {
202
+ const diff = computeIconDiff(currentManifest, previousManifest);
203
+ const entry = createChangelogEntry(diff, options);
204
+ return generateChangelogMarkdown(entry);
205
+ }
206
+ /**
207
+ * Prepends a new changelog entry to an existing changelog file content
208
+ *
209
+ * @param existingContent - Existing CHANGELOG.md content
210
+ * @param newEntry - New changelog entry markdown
211
+ * @returns Updated changelog content
212
+ */
213
+ function prependToChangelog(existingContent, newEntry) {
214
+ // Find the first version header to insert before
215
+ const versionHeaderRegex = /^## \[/m;
216
+ const match = existingContent.match(versionHeaderRegex);
217
+ if (match && match.index !== undefined) {
218
+ // Insert new entry before the first version header
219
+ const before = existingContent.slice(0, match.index);
220
+ const after = existingContent.slice(match.index);
221
+ return before + newEntry + after;
222
+ }
223
+ // If no existing version headers, append to the end
224
+ return existingContent + '\n' + newEntry;
225
+ }
226
+ /**
227
+ * Creates an initial CHANGELOG.md content with header
228
+ *
229
+ * @param projectName - Name of the project
230
+ * @returns Initial changelog content
231
+ */
232
+ function createInitialChangelog(projectName = 'Icon Library') {
233
+ return `# Changelog
234
+
235
+ All notable changes to ${projectName} will be documented in this file.
236
+
237
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
238
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
239
+
240
+ `;
241
+ }
242
+ /**
243
+ * Parses a changelog entry from markdown
244
+ *
245
+ * @param markdown - Markdown content of a single entry
246
+ * @returns Parsed ChangelogEntry or null if parsing fails
247
+ */
248
+ function parseChangelogEntry(markdown) {
249
+ // Match version header: ## [1.0.0] - 2024-01-15
250
+ const headerMatch = markdown.match(/^## \[([^\]]+)\] - (\d{4}-\d{2}-\d{2})/m);
251
+ if (!headerMatch) {
252
+ return null;
253
+ }
254
+ const version = headerMatch[1];
255
+ const date = headerMatch[2];
256
+ // Extract message (text between header and first ### section)
257
+ const headerEnd = markdown.indexOf('\n', headerMatch.index || 0);
258
+ const firstSection = markdown.indexOf('###');
259
+ let message = '';
260
+ if (headerEnd !== -1 && firstSection !== -1 && firstSection > headerEnd) {
261
+ message = markdown.slice(headerEnd, firstSection).trim();
262
+ }
263
+ // Parse sections
264
+ const added = parseChangeSection(markdown, 'Added');
265
+ const modified = parseChangeSection(markdown, 'Modified');
266
+ const removed = parseChangeSection(markdown, 'Removed');
267
+ return {
268
+ version,
269
+ date,
270
+ message,
271
+ changes: { added, modified, removed },
272
+ };
273
+ }
274
+ /**
275
+ * Parses a change section from markdown
276
+ *
277
+ * @param markdown - Full markdown content
278
+ * @param sectionName - Name of the section (Added, Modified, Removed)
279
+ * @returns Array of icon names in the section
280
+ */
281
+ function parseChangeSection(markdown, sectionName) {
282
+ const sectionRegex = new RegExp(`### ${sectionName}\\n([\\s\\S]*?)(?=###|$)`);
283
+ const match = markdown.match(sectionRegex);
284
+ if (!match) {
285
+ return [];
286
+ }
287
+ const content = match[1];
288
+ const items = [];
289
+ // Match list items: - IconName
290
+ const itemRegex = /^- (.+)$/gm;
291
+ let itemMatch;
292
+ while ((itemMatch = itemRegex.exec(content)) !== null) {
293
+ const item = itemMatch[1].trim();
294
+ if (item !== 'None') {
295
+ items.push(item);
296
+ }
297
+ }
298
+ return items;
299
+ }
300
+ //# sourceMappingURL=changelog-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changelog-generator.js","sourceRoot":"","sources":["../../src/changelog-generator.ts"],"names":[],"mappings":"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"}