@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.
- package/README.md +155 -0
- package/dist/cjs/changelog-generator.js +300 -0
- package/dist/cjs/changelog-generator.js.map +1 -0
- package/dist/cjs/component-generator.js +434 -0
- package/dist/cjs/component-generator.js.map +1 -0
- package/dist/cjs/figma-client.js +260 -0
- package/dist/cjs/figma-client.js.map +1 -0
- package/dist/cjs/icon-filter.js +278 -0
- package/dist/cjs/icon-filter.js.map +1 -0
- package/dist/cjs/icon-search.js +43 -0
- package/dist/cjs/icon-search.js.map +1 -0
- package/dist/cjs/icon-validator.js +369 -0
- package/dist/cjs/icon-validator.js.map +1 -0
- package/dist/cjs/icons/IconArrowRight.js +17 -0
- package/dist/cjs/icons/IconArrowRight.js.map +1 -0
- package/dist/cjs/icons/IconBack.js +17 -0
- package/dist/cjs/icons/IconBack.js.map +1 -0
- package/dist/cjs/icons/IconBack1.js +17 -0
- package/dist/cjs/icons/IconBack1.js.map +1 -0
- package/dist/cjs/icons/IconBangZhuShuoMing.js +17 -0
- package/dist/cjs/icons/IconBangZhuShuoMing.js.map +1 -0
- package/dist/cjs/icons/IconBaoGaoZhuShou.js +20 -0
- package/dist/cjs/icons/IconBaoGaoZhuShou.js.map +1 -0
- package/dist/cjs/icons/IconCheck.js +17 -0
- package/dist/cjs/icons/IconCheck.js.map +1 -0
- package/dist/cjs/icons/IconCheck1.js +17 -0
- package/dist/cjs/icons/IconCheck1.js.map +1 -0
- package/dist/cjs/icons/IconChengYuanGuanLi.js +20 -0
- package/dist/cjs/icons/IconChengYuanGuanLi.js.map +1 -0
- package/dist/cjs/icons/IconChongXinFaSong.js +17 -0
- package/dist/cjs/icons/IconChongXinFaSong.js.map +1 -0
- package/dist/cjs/icons/IconCloseCircle.js +17 -0
- package/dist/cjs/icons/IconCloseCircle.js.map +1 -0
- package/dist/cjs/icons/IconCuoWu.js +17 -0
- package/dist/cjs/icons/IconCuoWu.js.map +1 -0
- package/dist/cjs/icons/IconDingDing.js +17 -0
- package/dist/cjs/icons/IconDingDing.js.map +1 -0
- package/dist/cjs/icons/IconEdit03.js +17 -0
- package/dist/cjs/icons/IconEdit03.js.map +1 -0
- package/dist/cjs/icons/IconFanHui.js +17 -0
- package/dist/cjs/icons/IconFanHui.js.map +1 -0
- package/dist/cjs/icons/IconFangDa.js +17 -0
- package/dist/cjs/icons/IconFangDa.js.map +1 -0
- package/dist/cjs/icons/IconFrame.js +17 -0
- package/dist/cjs/icons/IconFrame.js.map +1 -0
- package/dist/cjs/icons/IconFrame1261156242.js +17 -0
- package/dist/cjs/icons/IconFrame1261156242.js.map +1 -0
- package/dist/cjs/icons/IconGuanBi.js +17 -0
- package/dist/cjs/icons/IconGuanBi.js.map +1 -0
- package/dist/cjs/icons/IconGuanBi1.js +17 -0
- package/dist/cjs/icons/IconGuanBi1.js.map +1 -0
- package/dist/cjs/icons/IconGuanBiXiao.js +17 -0
- package/dist/cjs/icons/IconGuanBiXiao.js.map +1 -0
- package/dist/cjs/icons/IconGuanBiXiao1.js +17 -0
- package/dist/cjs/icons/IconGuanBiXiao1.js.map +1 -0
- package/dist/cjs/icons/IconLianJie.js +17 -0
- package/dist/cjs/icons/IconLianJie.js.map +1 -0
- package/dist/cjs/icons/IconLianJie1.js +17 -0
- package/dist/cjs/icons/IconLianJie1.js.map +1 -0
- package/dist/cjs/icons/IconQiWeiJiQiRen.js +17 -0
- package/dist/cjs/icons/IconQiWeiJiQiRen.js.map +1 -0
- package/dist/cjs/icons/IconQiYeBan.js +20 -0
- package/dist/cjs/icons/IconQiYeBan.js.map +1 -0
- package/dist/cjs/icons/IconRss.js +17 -0
- package/dist/cjs/icons/IconRss.js.map +1 -0
- package/dist/cjs/icons/IconSearch.js +17 -0
- package/dist/cjs/icons/IconSearch.js.map +1 -0
- package/dist/cjs/icons/IconSearch1.js +17 -0
- package/dist/cjs/icons/IconSearch1.js.map +1 -0
- package/dist/cjs/icons/IconSheZhi.js +17 -0
- package/dist/cjs/icons/IconSheZhi.js.map +1 -0
- package/dist/cjs/icons/IconShengCheng.js +17 -0
- package/dist/cjs/icons/IconShengCheng.js.map +1 -0
- package/dist/cjs/icons/IconShiBai.js +17 -0
- package/dist/cjs/icons/IconShiBai.js.map +1 -0
- package/dist/cjs/icons/IconShouQi.js +17 -0
- package/dist/cjs/icons/IconShouQi.js.map +1 -0
- package/dist/cjs/icons/IconSouSuoZhuShou.js +20 -0
- package/dist/cjs/icons/IconSouSuoZhuShou.js.map +1 -0
- package/dist/cjs/icons/IconSuoXiao.js +17 -0
- package/dist/cjs/icons/IconSuoXiao.js.map +1 -0
- package/dist/cjs/icons/IconTianJia.js +17 -0
- package/dist/cjs/icons/IconTianJia.js.map +1 -0
- package/dist/cjs/icons/IconTongZhi.js +17 -0
- package/dist/cjs/icons/IconTongZhi.js.map +1 -0
- package/dist/cjs/icons/IconTongZhi1.js +17 -0
- package/dist/cjs/icons/IconTongZhi1.js.map +1 -0
- package/dist/cjs/icons/IconTuiChu.js +17 -0
- package/dist/cjs/icons/IconTuiChu.js.map +1 -0
- package/dist/cjs/icons/IconWangLuoJianSuo.js +17 -0
- package/dist/cjs/icons/IconWangLuoJianSuo.js.map +1 -0
- package/dist/cjs/icons/IconWangYeXiaZai.js +17 -0
- package/dist/cjs/icons/IconWangYeXiaZai.js.map +1 -0
- package/dist/cjs/icons/IconWeiBiaoTi1HuaBan11.js +17 -0
- package/dist/cjs/icons/IconWeiBiaoTi1HuaBan11.js.map +1 -0
- package/dist/cjs/icons/IconWenDaZhuShou.js +20 -0
- package/dist/cjs/icons/IconWenDaZhuShou.js.map +1 -0
- package/dist/cjs/icons/IconWenDang.js +17 -0
- package/dist/cjs/icons/IconWenDang.js.map +1 -0
- package/dist/cjs/icons/IconWenDang1.js +17 -0
- package/dist/cjs/icons/IconWenDang1.js.map +1 -0
- package/dist/cjs/icons/IconWenJian.js +17 -0
- package/dist/cjs/icons/IconWenJian.js.map +1 -0
- package/dist/cjs/icons/IconXiTongPeiZhi.js +20 -0
- package/dist/cjs/icons/IconXiTongPeiZhi.js.map +1 -0
- package/dist/cjs/icons/IconXiaZai.js +17 -0
- package/dist/cjs/icons/IconXiaZai.js.map +1 -0
- package/dist/cjs/icons/IconXiaZaiZhuShou.js +20 -0
- package/dist/cjs/icons/IconXiaZaiZhuShou.js.map +1 -0
- package/dist/cjs/icons/IconXiaoXi.js +17 -0
- package/dist/cjs/icons/IconXiaoXi.js.map +1 -0
- package/dist/cjs/icons/IconXinXiGuanLi.js +20 -0
- package/dist/cjs/icons/IconXinXiGuanLi.js.map +1 -0
- package/dist/cjs/icons/IconXinZeng.js +17 -0
- package/dist/cjs/icons/IconXinZeng.js.map +1 -0
- package/dist/cjs/icons/IconYanZhengMa.js +17 -0
- package/dist/cjs/icons/IconYanZhengMa.js.map +1 -0
- package/dist/cjs/icons/IconYunYingGuanLi.js +20 -0
- package/dist/cjs/icons/IconYunYingGuanLi.js.map +1 -0
- package/dist/cjs/icons/IconZengJia.js +17 -0
- package/dist/cjs/icons/IconZengJia.js.map +1 -0
- package/dist/cjs/icons/IconZhanKai.js +17 -0
- package/dist/cjs/icons/IconZhanKai.js.map +1 -0
- package/dist/cjs/icons/IconZhanKai1.js +17 -0
- package/dist/cjs/icons/IconZhanKai1.js.map +1 -0
- package/dist/cjs/icons/IconZhengQue.js +17 -0
- package/dist/cjs/icons/IconZhengQue.js.map +1 -0
- package/dist/cjs/icons/IconZhiShiKu.js +17 -0
- package/dist/cjs/icons/IconZhiShiKu.js.map +1 -0
- package/dist/cjs/icons/IconZhiShiKu1.js +17 -0
- package/dist/cjs/icons/IconZhiShiKu1.js.map +1 -0
- package/dist/cjs/index.js +95 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/manifest-generator.js +281 -0
- package/dist/cjs/manifest-generator.js.map +1 -0
- package/dist/cjs/multi-format-output.js +233 -0
- package/dist/cjs/multi-format-output.js.map +1 -0
- package/dist/cjs/svg-exporter.js +283 -0
- package/dist/cjs/svg-exporter.js.map +1 -0
- package/dist/cjs/svg-transformer.js +327 -0
- package/dist/cjs/svg-transformer.js.map +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/version-manager.js +175 -0
- package/dist/cjs/version-manager.js.map +1 -0
- package/dist/esm/changelog-generator.js +288 -0
- package/dist/esm/changelog-generator.js.map +1 -0
- package/dist/esm/component-generator.js +426 -0
- package/dist/esm/component-generator.js.map +1 -0
- package/dist/esm/figma-client.js +254 -0
- package/dist/esm/figma-client.js.map +1 -0
- package/dist/esm/icon-filter.js +268 -0
- package/dist/esm/icon-filter.js.map +1 -0
- package/dist/esm/icon-search.js +39 -0
- package/dist/esm/icon-search.js.map +1 -0
- package/dist/esm/icon-validator.js +358 -0
- package/dist/esm/icon-validator.js.map +1 -0
- package/dist/esm/icons/IconArrowRight.js +14 -0
- package/dist/esm/icons/IconArrowRight.js.map +1 -0
- package/dist/esm/icons/IconBack.js +14 -0
- package/dist/esm/icons/IconBack.js.map +1 -0
- package/dist/esm/icons/IconBack1.js +14 -0
- package/dist/esm/icons/IconBack1.js.map +1 -0
- package/dist/esm/icons/IconBangZhuShuoMing.js +14 -0
- package/dist/esm/icons/IconBangZhuShuoMing.js.map +1 -0
- package/dist/esm/icons/IconBaoGaoZhuShou.js +17 -0
- package/dist/esm/icons/IconBaoGaoZhuShou.js.map +1 -0
- package/dist/esm/icons/IconCheck.js +14 -0
- package/dist/esm/icons/IconCheck.js.map +1 -0
- package/dist/esm/icons/IconCheck1.js +14 -0
- package/dist/esm/icons/IconCheck1.js.map +1 -0
- package/dist/esm/icons/IconChengYuanGuanLi.js +17 -0
- package/dist/esm/icons/IconChengYuanGuanLi.js.map +1 -0
- package/dist/esm/icons/IconChongXinFaSong.js +14 -0
- package/dist/esm/icons/IconChongXinFaSong.js.map +1 -0
- package/dist/esm/icons/IconCloseCircle.js +14 -0
- package/dist/esm/icons/IconCloseCircle.js.map +1 -0
- package/dist/esm/icons/IconCuoWu.js +14 -0
- package/dist/esm/icons/IconCuoWu.js.map +1 -0
- package/dist/esm/icons/IconDingDing.js +14 -0
- package/dist/esm/icons/IconDingDing.js.map +1 -0
- package/dist/esm/icons/IconEdit03.js +14 -0
- package/dist/esm/icons/IconEdit03.js.map +1 -0
- package/dist/esm/icons/IconFanHui.js +14 -0
- package/dist/esm/icons/IconFanHui.js.map +1 -0
- package/dist/esm/icons/IconFangDa.js +14 -0
- package/dist/esm/icons/IconFangDa.js.map +1 -0
- package/dist/esm/icons/IconFrame.js +14 -0
- package/dist/esm/icons/IconFrame.js.map +1 -0
- package/dist/esm/icons/IconFrame1261156242.js +14 -0
- package/dist/esm/icons/IconFrame1261156242.js.map +1 -0
- package/dist/esm/icons/IconGuanBi.js +14 -0
- package/dist/esm/icons/IconGuanBi.js.map +1 -0
- package/dist/esm/icons/IconGuanBi1.js +14 -0
- package/dist/esm/icons/IconGuanBi1.js.map +1 -0
- package/dist/esm/icons/IconGuanBiXiao.js +14 -0
- package/dist/esm/icons/IconGuanBiXiao.js.map +1 -0
- package/dist/esm/icons/IconGuanBiXiao1.js +14 -0
- package/dist/esm/icons/IconGuanBiXiao1.js.map +1 -0
- package/dist/esm/icons/IconLianJie.js +14 -0
- package/dist/esm/icons/IconLianJie.js.map +1 -0
- package/dist/esm/icons/IconLianJie1.js +14 -0
- package/dist/esm/icons/IconLianJie1.js.map +1 -0
- package/dist/esm/icons/IconQiWeiJiQiRen.js +14 -0
- package/dist/esm/icons/IconQiWeiJiQiRen.js.map +1 -0
- package/dist/esm/icons/IconQiYeBan.js +17 -0
- package/dist/esm/icons/IconQiYeBan.js.map +1 -0
- package/dist/esm/icons/IconRss.js +14 -0
- package/dist/esm/icons/IconRss.js.map +1 -0
- package/dist/esm/icons/IconSearch.js +14 -0
- package/dist/esm/icons/IconSearch.js.map +1 -0
- package/dist/esm/icons/IconSearch1.js +14 -0
- package/dist/esm/icons/IconSearch1.js.map +1 -0
- package/dist/esm/icons/IconSheZhi.js +14 -0
- package/dist/esm/icons/IconSheZhi.js.map +1 -0
- package/dist/esm/icons/IconShengCheng.js +14 -0
- package/dist/esm/icons/IconShengCheng.js.map +1 -0
- package/dist/esm/icons/IconShiBai.js +14 -0
- package/dist/esm/icons/IconShiBai.js.map +1 -0
- package/dist/esm/icons/IconShouQi.js +14 -0
- package/dist/esm/icons/IconShouQi.js.map +1 -0
- package/dist/esm/icons/IconSouSuoZhuShou.js +17 -0
- package/dist/esm/icons/IconSouSuoZhuShou.js.map +1 -0
- package/dist/esm/icons/IconSuoXiao.js +14 -0
- package/dist/esm/icons/IconSuoXiao.js.map +1 -0
- package/dist/esm/icons/IconTianJia.js +14 -0
- package/dist/esm/icons/IconTianJia.js.map +1 -0
- package/dist/esm/icons/IconTongZhi.js +14 -0
- package/dist/esm/icons/IconTongZhi.js.map +1 -0
- package/dist/esm/icons/IconTongZhi1.js +14 -0
- package/dist/esm/icons/IconTongZhi1.js.map +1 -0
- package/dist/esm/icons/IconTuiChu.js +14 -0
- package/dist/esm/icons/IconTuiChu.js.map +1 -0
- package/dist/esm/icons/IconWangLuoJianSuo.js +14 -0
- package/dist/esm/icons/IconWangLuoJianSuo.js.map +1 -0
- package/dist/esm/icons/IconWangYeXiaZai.js +14 -0
- package/dist/esm/icons/IconWangYeXiaZai.js.map +1 -0
- package/dist/esm/icons/IconWeiBiaoTi1HuaBan11.js +14 -0
- package/dist/esm/icons/IconWeiBiaoTi1HuaBan11.js.map +1 -0
- package/dist/esm/icons/IconWenDaZhuShou.js +17 -0
- package/dist/esm/icons/IconWenDaZhuShou.js.map +1 -0
- package/dist/esm/icons/IconWenDang.js +14 -0
- package/dist/esm/icons/IconWenDang.js.map +1 -0
- package/dist/esm/icons/IconWenDang1.js +14 -0
- package/dist/esm/icons/IconWenDang1.js.map +1 -0
- package/dist/esm/icons/IconWenJian.js +14 -0
- package/dist/esm/icons/IconWenJian.js.map +1 -0
- package/dist/esm/icons/IconXiTongPeiZhi.js +17 -0
- package/dist/esm/icons/IconXiTongPeiZhi.js.map +1 -0
- package/dist/esm/icons/IconXiaZai.js +14 -0
- package/dist/esm/icons/IconXiaZai.js.map +1 -0
- package/dist/esm/icons/IconXiaZaiZhuShou.js +17 -0
- package/dist/esm/icons/IconXiaZaiZhuShou.js.map +1 -0
- package/dist/esm/icons/IconXiaoXi.js +14 -0
- package/dist/esm/icons/IconXiaoXi.js.map +1 -0
- package/dist/esm/icons/IconXinXiGuanLi.js +17 -0
- package/dist/esm/icons/IconXinXiGuanLi.js.map +1 -0
- package/dist/esm/icons/IconXinZeng.js +14 -0
- package/dist/esm/icons/IconXinZeng.js.map +1 -0
- package/dist/esm/icons/IconYanZhengMa.js +14 -0
- package/dist/esm/icons/IconYanZhengMa.js.map +1 -0
- package/dist/esm/icons/IconYunYingGuanLi.js +17 -0
- package/dist/esm/icons/IconYunYingGuanLi.js.map +1 -0
- package/dist/esm/icons/IconZengJia.js +14 -0
- package/dist/esm/icons/IconZengJia.js.map +1 -0
- package/dist/esm/icons/IconZhanKai.js +14 -0
- package/dist/esm/icons/IconZhanKai.js.map +1 -0
- package/dist/esm/icons/IconZhanKai1.js +14 -0
- package/dist/esm/icons/IconZhanKai1.js.map +1 -0
- package/dist/esm/icons/IconZhengQue.js +14 -0
- package/dist/esm/icons/IconZhengQue.js.map +1 -0
- package/dist/esm/icons/IconZhiShiKu.js +14 -0
- package/dist/esm/icons/IconZhiShiKu.js.map +1 -0
- package/dist/esm/icons/IconZhiShiKu1.js +14 -0
- package/dist/esm/icons/IconZhiShiKu1.js.map +1 -0
- package/dist/esm/index.js +72 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/manifest-generator.js +267 -0
- package/dist/esm/manifest-generator.js.map +1 -0
- package/dist/esm/multi-format-output.js +221 -0
- package/dist/esm/multi-format-output.js.map +1 -0
- package/dist/esm/svg-exporter.js +244 -0
- package/dist/esm/svg-exporter.js.map +1 -0
- package/dist/esm/svg-transformer.js +314 -0
- package/dist/esm/svg-transformer.js.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/version-manager.js +167 -0
- package/dist/esm/version-manager.js.map +1 -0
- package/dist/types/changelog-generator.d.ts +112 -0
- package/dist/types/changelog-generator.d.ts.map +1 -0
- package/dist/types/component-generator.d.ts +88 -0
- package/dist/types/component-generator.d.ts.map +1 -0
- package/dist/types/figma-client.d.ts +107 -0
- package/dist/types/figma-client.d.ts.map +1 -0
- package/dist/types/icon-filter.d.ts +126 -0
- package/dist/types/icon-filter.d.ts.map +1 -0
- package/dist/types/icon-search.d.ts +31 -0
- package/dist/types/icon-search.d.ts.map +1 -0
- package/dist/types/icon-validator.d.ts +110 -0
- package/dist/types/icon-validator.d.ts.map +1 -0
- package/dist/types/icons/IconArrowRight.d.ts +17 -0
- package/dist/types/icons/IconArrowRight.d.ts.map +1 -0
- package/dist/types/icons/IconBack.d.ts +17 -0
- package/dist/types/icons/IconBack.d.ts.map +1 -0
- package/dist/types/icons/IconBack1.d.ts +17 -0
- package/dist/types/icons/IconBack1.d.ts.map +1 -0
- package/dist/types/icons/IconBangZhuShuoMing.d.ts +17 -0
- package/dist/types/icons/IconBangZhuShuoMing.d.ts.map +1 -0
- package/dist/types/icons/IconBaoGaoZhuShou.d.ts +17 -0
- package/dist/types/icons/IconBaoGaoZhuShou.d.ts.map +1 -0
- package/dist/types/icons/IconCheck.d.ts +17 -0
- package/dist/types/icons/IconCheck.d.ts.map +1 -0
- package/dist/types/icons/IconCheck1.d.ts +17 -0
- package/dist/types/icons/IconCheck1.d.ts.map +1 -0
- package/dist/types/icons/IconChengYuanGuanLi.d.ts +17 -0
- package/dist/types/icons/IconChengYuanGuanLi.d.ts.map +1 -0
- package/dist/types/icons/IconChongXinFaSong.d.ts +17 -0
- package/dist/types/icons/IconChongXinFaSong.d.ts.map +1 -0
- package/dist/types/icons/IconCloseCircle.d.ts +17 -0
- package/dist/types/icons/IconCloseCircle.d.ts.map +1 -0
- package/dist/types/icons/IconCuoWu.d.ts +17 -0
- package/dist/types/icons/IconCuoWu.d.ts.map +1 -0
- package/dist/types/icons/IconDingDing.d.ts +17 -0
- package/dist/types/icons/IconDingDing.d.ts.map +1 -0
- package/dist/types/icons/IconEdit03.d.ts +17 -0
- package/dist/types/icons/IconEdit03.d.ts.map +1 -0
- package/dist/types/icons/IconFanHui.d.ts +17 -0
- package/dist/types/icons/IconFanHui.d.ts.map +1 -0
- package/dist/types/icons/IconFangDa.d.ts +17 -0
- package/dist/types/icons/IconFangDa.d.ts.map +1 -0
- package/dist/types/icons/IconFrame.d.ts +17 -0
- package/dist/types/icons/IconFrame.d.ts.map +1 -0
- package/dist/types/icons/IconFrame1261156242.d.ts +17 -0
- package/dist/types/icons/IconFrame1261156242.d.ts.map +1 -0
- package/dist/types/icons/IconGuanBi.d.ts +17 -0
- package/dist/types/icons/IconGuanBi.d.ts.map +1 -0
- package/dist/types/icons/IconGuanBi1.d.ts +17 -0
- package/dist/types/icons/IconGuanBi1.d.ts.map +1 -0
- package/dist/types/icons/IconGuanBiXiao.d.ts +17 -0
- package/dist/types/icons/IconGuanBiXiao.d.ts.map +1 -0
- package/dist/types/icons/IconGuanBiXiao1.d.ts +17 -0
- package/dist/types/icons/IconGuanBiXiao1.d.ts.map +1 -0
- package/dist/types/icons/IconLianJie.d.ts +17 -0
- package/dist/types/icons/IconLianJie.d.ts.map +1 -0
- package/dist/types/icons/IconLianJie1.d.ts +17 -0
- package/dist/types/icons/IconLianJie1.d.ts.map +1 -0
- package/dist/types/icons/IconQiWeiJiQiRen.d.ts +17 -0
- package/dist/types/icons/IconQiWeiJiQiRen.d.ts.map +1 -0
- package/dist/types/icons/IconQiYeBan.d.ts +17 -0
- package/dist/types/icons/IconQiYeBan.d.ts.map +1 -0
- package/dist/types/icons/IconRss.d.ts +17 -0
- package/dist/types/icons/IconRss.d.ts.map +1 -0
- package/dist/types/icons/IconSearch.d.ts +17 -0
- package/dist/types/icons/IconSearch.d.ts.map +1 -0
- package/dist/types/icons/IconSearch1.d.ts +17 -0
- package/dist/types/icons/IconSearch1.d.ts.map +1 -0
- package/dist/types/icons/IconSheZhi.d.ts +17 -0
- package/dist/types/icons/IconSheZhi.d.ts.map +1 -0
- package/dist/types/icons/IconShengCheng.d.ts +17 -0
- package/dist/types/icons/IconShengCheng.d.ts.map +1 -0
- package/dist/types/icons/IconShiBai.d.ts +17 -0
- package/dist/types/icons/IconShiBai.d.ts.map +1 -0
- package/dist/types/icons/IconShouQi.d.ts +17 -0
- package/dist/types/icons/IconShouQi.d.ts.map +1 -0
- package/dist/types/icons/IconSouSuoZhuShou.d.ts +17 -0
- package/dist/types/icons/IconSouSuoZhuShou.d.ts.map +1 -0
- package/dist/types/icons/IconSuoXiao.d.ts +17 -0
- package/dist/types/icons/IconSuoXiao.d.ts.map +1 -0
- package/dist/types/icons/IconTianJia.d.ts +17 -0
- package/dist/types/icons/IconTianJia.d.ts.map +1 -0
- package/dist/types/icons/IconTongZhi.d.ts +17 -0
- package/dist/types/icons/IconTongZhi.d.ts.map +1 -0
- package/dist/types/icons/IconTongZhi1.d.ts +17 -0
- package/dist/types/icons/IconTongZhi1.d.ts.map +1 -0
- package/dist/types/icons/IconTuiChu.d.ts +17 -0
- package/dist/types/icons/IconTuiChu.d.ts.map +1 -0
- package/dist/types/icons/IconWangLuoJianSuo.d.ts +17 -0
- package/dist/types/icons/IconWangLuoJianSuo.d.ts.map +1 -0
- package/dist/types/icons/IconWangYeXiaZai.d.ts +17 -0
- package/dist/types/icons/IconWangYeXiaZai.d.ts.map +1 -0
- package/dist/types/icons/IconWeiBiaoTi1HuaBan11.d.ts +17 -0
- package/dist/types/icons/IconWeiBiaoTi1HuaBan11.d.ts.map +1 -0
- package/dist/types/icons/IconWenDaZhuShou.d.ts +17 -0
- package/dist/types/icons/IconWenDaZhuShou.d.ts.map +1 -0
- package/dist/types/icons/IconWenDang.d.ts +17 -0
- package/dist/types/icons/IconWenDang.d.ts.map +1 -0
- package/dist/types/icons/IconWenDang1.d.ts +17 -0
- package/dist/types/icons/IconWenDang1.d.ts.map +1 -0
- package/dist/types/icons/IconWenJian.d.ts +17 -0
- package/dist/types/icons/IconWenJian.d.ts.map +1 -0
- package/dist/types/icons/IconXiTongPeiZhi.d.ts +17 -0
- package/dist/types/icons/IconXiTongPeiZhi.d.ts.map +1 -0
- package/dist/types/icons/IconXiaZai.d.ts +17 -0
- package/dist/types/icons/IconXiaZai.d.ts.map +1 -0
- package/dist/types/icons/IconXiaZaiZhuShou.d.ts +17 -0
- package/dist/types/icons/IconXiaZaiZhuShou.d.ts.map +1 -0
- package/dist/types/icons/IconXiaoXi.d.ts +17 -0
- package/dist/types/icons/IconXiaoXi.d.ts.map +1 -0
- package/dist/types/icons/IconXinXiGuanLi.d.ts +17 -0
- package/dist/types/icons/IconXinXiGuanLi.d.ts.map +1 -0
- package/dist/types/icons/IconXinZeng.d.ts +17 -0
- package/dist/types/icons/IconXinZeng.d.ts.map +1 -0
- package/dist/types/icons/IconYanZhengMa.d.ts +17 -0
- package/dist/types/icons/IconYanZhengMa.d.ts.map +1 -0
- package/dist/types/icons/IconYunYingGuanLi.d.ts +17 -0
- package/dist/types/icons/IconYunYingGuanLi.d.ts.map +1 -0
- package/dist/types/icons/IconZengJia.d.ts +17 -0
- package/dist/types/icons/IconZengJia.d.ts.map +1 -0
- package/dist/types/icons/IconZhanKai.d.ts +17 -0
- package/dist/types/icons/IconZhanKai.d.ts.map +1 -0
- package/dist/types/icons/IconZhanKai1.d.ts +17 -0
- package/dist/types/icons/IconZhanKai1.d.ts.map +1 -0
- package/dist/types/icons/IconZhengQue.d.ts +17 -0
- package/dist/types/icons/IconZhengQue.d.ts.map +1 -0
- package/dist/types/icons/IconZhiShiKu.d.ts +17 -0
- package/dist/types/icons/IconZhiShiKu.d.ts.map +1 -0
- package/dist/types/icons/IconZhiShiKu1.d.ts +17 -0
- package/dist/types/icons/IconZhiShiKu1.d.ts.map +1 -0
- package/dist/types/index.d.ts +56 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/manifest-generator.d.ts +113 -0
- package/dist/types/manifest-generator.d.ts.map +1 -0
- package/dist/types/multi-format-output.d.ts +151 -0
- package/dist/types/multi-format-output.d.ts.map +1 -0
- package/dist/types/svg-exporter.d.ts +103 -0
- package/dist/types/svg-exporter.d.ts.map +1 -0
- package/dist/types/svg-transformer.d.ts +103 -0
- package/dist/types/svg-transformer.d.ts.map +1 -0
- package/dist/types/types.d.ts +346 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/version-manager.d.ts +82 -0
- package/dist/types/version-manager.d.ts.map +1 -0
- package/icons.json +227 -0
- package/package.json +66 -0
- package/svg/back.svg +1 -0
- package/svg/back1.svg +1 -0
- package/svg/check.svg +1 -0
- package/svg/check1.svg +1 -0
- package/svg/search.svg +1 -0
- package/svg/search1.svg +1 -0
- package/svg//345/205/263/351/227/255-/345/260/217.svg +1 -0
- package/svg//345/205/263/351/227/255-/345/260/2171.svg +1 -0
- package/svg//345/205/263/351/227/255.svg +1 -0
- package/svg//345/205/263/351/227/2551.svg +1 -0
- package/svg//345/261/225/345/274/200.svg +1 -0
- package/svg//345/261/225/345/274/2001.svg +1 -0
- package/svg//346/226/207/346/241/243.svg +1 -0
- package/svg//346/226/207/346/241/2431.svg +1 -0
- package/svg//347/237/245/350/257/206/345/272/223.svg +1 -0
- package/svg//347/237/245/350/257/206/345/272/2231.svg +1 -0
- package/svg//351/200/232/347/237/245.svg +1 -0
- package/svg//351/200/232/347/237/2451.svg +1 -0
- package/svg//351/223/276/346/216/245.svg +1 -0
- package/svg//351/223/276/346/216/2451.svg +1 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SVG Transformer Module
|
|
3
|
+
*
|
|
4
|
+
* Handles SVG optimization using SVGO and conversion to JSX format.
|
|
5
|
+
* Requirements: 3.1, 3.2, 3.3, 3.4, 3.5, 3.6
|
|
6
|
+
*/
|
|
7
|
+
import { type Config as SvgoConfig } from 'svgo';
|
|
8
|
+
import type { TransformOptions, TransformResult } from './types';
|
|
9
|
+
/**
|
|
10
|
+
* Default SVGO configuration for icon optimization
|
|
11
|
+
* - Removes dimensions (width/height)
|
|
12
|
+
* - Preserves original colors (不替换为 currentColor)
|
|
13
|
+
* - Removes unnecessary metadata
|
|
14
|
+
* - Cleans up Figma export artifacts
|
|
15
|
+
*/
|
|
16
|
+
export declare const defaultSvgoConfig: SvgoConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Default transformation options
|
|
19
|
+
*/
|
|
20
|
+
export declare const defaultTransformOptions: TransformOptions;
|
|
21
|
+
/**
|
|
22
|
+
* Optimizes SVG content using SVGO
|
|
23
|
+
*
|
|
24
|
+
* @param svgContent - Raw SVG string
|
|
25
|
+
* @param config - Optional SVGO configuration override
|
|
26
|
+
* @returns Optimized SVG string
|
|
27
|
+
*
|
|
28
|
+
* Requirements: 3.1, 3.2, 3.3, 3.4
|
|
29
|
+
*/
|
|
30
|
+
export declare function optimizeSvg(svgContent: string, config?: SvgoConfig): string;
|
|
31
|
+
/**
|
|
32
|
+
* Converts a kebab-case attribute name to camelCase
|
|
33
|
+
*
|
|
34
|
+
* @param attr - Attribute name in kebab-case
|
|
35
|
+
* @returns Attribute name in camelCase
|
|
36
|
+
*/
|
|
37
|
+
export declare function kebabToCamelCase(attr: string): string;
|
|
38
|
+
/**
|
|
39
|
+
* Converts SVG content to JSX-compatible format
|
|
40
|
+
*
|
|
41
|
+
* Transforms attribute names from kebab-case to camelCase
|
|
42
|
+
* as required by React/JSX.
|
|
43
|
+
*
|
|
44
|
+
* @param svgContent - SVG string with standard attribute names
|
|
45
|
+
* @returns SVG string with JSX-compatible attribute names
|
|
46
|
+
*
|
|
47
|
+
* Requirements: 3.5
|
|
48
|
+
*/
|
|
49
|
+
export declare function convertToJsx(svgContent: string): string;
|
|
50
|
+
/**
|
|
51
|
+
* Transforms SVG content: optimizes and converts to JSX format
|
|
52
|
+
*
|
|
53
|
+
* @param svgContent - Raw SVG string
|
|
54
|
+
* @param options - Transformation options
|
|
55
|
+
* @param svgoConfig - Optional SVGO configuration override
|
|
56
|
+
* @returns TransformResult with original/optimized sizes and content
|
|
57
|
+
*
|
|
58
|
+
* Requirements: 3.1, 3.2, 3.3, 3.4, 3.5, 3.6
|
|
59
|
+
*/
|
|
60
|
+
export declare function transformSvg(svgContent: string, _options?: TransformOptions, svgoConfig?: SvgoConfig): TransformResult;
|
|
61
|
+
/**
|
|
62
|
+
* Extracts the inner content of an SVG element (everything between <svg> tags)
|
|
63
|
+
*
|
|
64
|
+
* @param svgContent - Full SVG string
|
|
65
|
+
* @returns Inner content of the SVG
|
|
66
|
+
*/
|
|
67
|
+
export declare function extractSvgInnerContent(svgContent: string): string;
|
|
68
|
+
/**
|
|
69
|
+
* Extracts the viewBox attribute from an SVG string
|
|
70
|
+
*
|
|
71
|
+
* @param svgContent - SVG string
|
|
72
|
+
* @returns viewBox value or null if not found
|
|
73
|
+
*/
|
|
74
|
+
export declare function extractViewBox(svgContent: string): string | null;
|
|
75
|
+
/**
|
|
76
|
+
* Extracts the fill attribute from the root SVG element
|
|
77
|
+
*
|
|
78
|
+
* @param svgContent - SVG string
|
|
79
|
+
* @returns fill value or null if not found
|
|
80
|
+
*/
|
|
81
|
+
export declare function extractSvgRootFill(svgContent: string): string | null;
|
|
82
|
+
/**
|
|
83
|
+
* Checks if SVG content contains width/height attributes
|
|
84
|
+
*
|
|
85
|
+
* @param svgContent - SVG string
|
|
86
|
+
* @returns true if width or height attributes are present
|
|
87
|
+
*/
|
|
88
|
+
export declare function hasFixedDimensions(svgContent: string): boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Checks if SVG content uses currentColor for fill
|
|
91
|
+
*
|
|
92
|
+
* @param svgContent - SVG string
|
|
93
|
+
* @returns true if fill="currentColor" is present on the svg element
|
|
94
|
+
*/
|
|
95
|
+
export declare function usesCurrentColor(svgContent: string): boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Checks if all attribute names in SVG are in JSX camelCase format
|
|
98
|
+
*
|
|
99
|
+
* @param svgContent - SVG string
|
|
100
|
+
* @returns true if all attributes are in camelCase
|
|
101
|
+
*/
|
|
102
|
+
export declare function hasJsxAttributes(svgContent: string): boolean;
|
|
103
|
+
//# sourceMappingURL=svg-transformer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg-transformer.d.ts","sourceRoot":"","sources":["../../src/svg-transformer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAY,KAAK,MAAM,IAAI,UAAU,EAAqB,MAAM,MAAM,CAAA;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAuEhE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,EAAE,UA4B/B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,gBAKrC,CAAA;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,MAAM,GAAE,UAA8B,GACrC,MAAM,CAGR;AA8CD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQrD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAUvD;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,gBAA0C,EACpD,UAAU,GAAE,UAA8B,GACzC,eAAe,CAgBjB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAIjE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGhE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGpE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAK5D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAsB5D"}
|
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
import type { SVGProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Metadata for a single icon
|
|
4
|
+
*/
|
|
5
|
+
export interface IconMetadata {
|
|
6
|
+
/** Unique identifier from Figma */
|
|
7
|
+
id: string;
|
|
8
|
+
/** Original name in Figma */
|
|
9
|
+
name: string;
|
|
10
|
+
/** Original name as it appears in Figma */
|
|
11
|
+
originalName: string;
|
|
12
|
+
/** PascalCase normalized name for component */
|
|
13
|
+
normalizedName: string;
|
|
14
|
+
/** Icon width in pixels */
|
|
15
|
+
width: number;
|
|
16
|
+
/** Icon height in pixels */
|
|
17
|
+
height: number;
|
|
18
|
+
/** SVG content string */
|
|
19
|
+
svgContent?: string;
|
|
20
|
+
/** Creation timestamp (ISO string) */
|
|
21
|
+
createdAt?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Manifest containing all icons and metadata
|
|
25
|
+
*/
|
|
26
|
+
export interface IconManifest {
|
|
27
|
+
/** Semantic version of the icon library */
|
|
28
|
+
version: string;
|
|
29
|
+
/** ISO timestamp when manifest was generated */
|
|
30
|
+
generatedAt: string;
|
|
31
|
+
/** Total number of icons */
|
|
32
|
+
totalCount: number;
|
|
33
|
+
/** Array of icon metadata */
|
|
34
|
+
icons: IconMetadata[];
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Validation rules configuration
|
|
38
|
+
*/
|
|
39
|
+
export interface ValidationRules {
|
|
40
|
+
/** Allowed icon sizes in pixels */
|
|
41
|
+
allowedSizes: number[];
|
|
42
|
+
/** Regex pattern for valid icon names */
|
|
43
|
+
namingPattern: RegExp;
|
|
44
|
+
/** Maximum SVG file size in bytes */
|
|
45
|
+
maxFileSize: number;
|
|
46
|
+
/** Required SVG attributes */
|
|
47
|
+
requiredAttributes: string[];
|
|
48
|
+
/** SVG elements that are not allowed */
|
|
49
|
+
forbiddenElements: string[];
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Single validation error or warning
|
|
53
|
+
*/
|
|
54
|
+
export interface ValidationError {
|
|
55
|
+
/** Name of the icon with the issue */
|
|
56
|
+
iconName: string;
|
|
57
|
+
/** Rule that was violated */
|
|
58
|
+
rule: string;
|
|
59
|
+
/** Human-readable error message */
|
|
60
|
+
message: string;
|
|
61
|
+
/** Severity level */
|
|
62
|
+
severity: 'error' | 'warning';
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Alias for ValidationError when used as warning
|
|
66
|
+
*/
|
|
67
|
+
export type ValidationWarning = ValidationError;
|
|
68
|
+
/**
|
|
69
|
+
* Result of validating an icon
|
|
70
|
+
*/
|
|
71
|
+
export interface ValidationResult {
|
|
72
|
+
/** Whether the icon passed all validations */
|
|
73
|
+
isValid: boolean;
|
|
74
|
+
/** List of validation errors */
|
|
75
|
+
errors: ValidationError[];
|
|
76
|
+
/** List of validation warnings */
|
|
77
|
+
warnings: ValidationWarning[];
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Plugin configuration stored in Figma client storage
|
|
81
|
+
*/
|
|
82
|
+
export interface PluginConfig {
|
|
83
|
+
/** GitHub repository in format "org/repo" */
|
|
84
|
+
githubRepo: string;
|
|
85
|
+
/** GitHub Personal Access Token */
|
|
86
|
+
githubToken: string;
|
|
87
|
+
/** Figma file key (auto-detected) */
|
|
88
|
+
figmaFileKey: string;
|
|
89
|
+
/** Default branch name */
|
|
90
|
+
defaultBranch: string;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Sync request payload sent to GitHub Actions
|
|
94
|
+
*/
|
|
95
|
+
export interface SyncRequest {
|
|
96
|
+
/** Semantic version for the release */
|
|
97
|
+
version: string;
|
|
98
|
+
/** Update description/message */
|
|
99
|
+
message: string;
|
|
100
|
+
/** Figma file key */
|
|
101
|
+
fileKey: string;
|
|
102
|
+
/** ISO timestamp of the request */
|
|
103
|
+
timestamp: string;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Result of a sync operation
|
|
107
|
+
*/
|
|
108
|
+
export interface SyncResult {
|
|
109
|
+
/** Whether the sync was successful */
|
|
110
|
+
success: boolean;
|
|
111
|
+
/** URL to the created PR (if successful) */
|
|
112
|
+
prUrl?: string;
|
|
113
|
+
/** Error message (if failed) */
|
|
114
|
+
error?: string;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Plugin UI state
|
|
118
|
+
*/
|
|
119
|
+
export interface PluginUIState {
|
|
120
|
+
/** Current plugin configuration */
|
|
121
|
+
config: PluginConfig | null;
|
|
122
|
+
/** Whether plugin is configured */
|
|
123
|
+
isConfigured: boolean;
|
|
124
|
+
/** Whether sync is in progress */
|
|
125
|
+
isSyncing: boolean;
|
|
126
|
+
/** Result of last sync operation */
|
|
127
|
+
lastSyncResult: SyncResult | null;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Figma component from API response
|
|
131
|
+
*/
|
|
132
|
+
export interface FigmaComponent {
|
|
133
|
+
/** Component ID */
|
|
134
|
+
id: string;
|
|
135
|
+
/** Component name */
|
|
136
|
+
name: string;
|
|
137
|
+
/** Node type (COMPONENT or FRAME for imported SVGs) */
|
|
138
|
+
type: 'COMPONENT' | 'FRAME' | string;
|
|
139
|
+
/** Bounding box dimensions */
|
|
140
|
+
absoluteBoundingBox: {
|
|
141
|
+
width: number;
|
|
142
|
+
height: number;
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Figma node (generic)
|
|
147
|
+
*/
|
|
148
|
+
export interface FigmaNode {
|
|
149
|
+
/** Node ID */
|
|
150
|
+
id: string;
|
|
151
|
+
/** Node name */
|
|
152
|
+
name: string;
|
|
153
|
+
/** Node type */
|
|
154
|
+
type: string;
|
|
155
|
+
/** Child nodes */
|
|
156
|
+
children?: FigmaNode[];
|
|
157
|
+
/** Bounding box dimensions (available on most visible nodes) */
|
|
158
|
+
absoluteBoundingBox?: {
|
|
159
|
+
x?: number;
|
|
160
|
+
y?: number;
|
|
161
|
+
width: number;
|
|
162
|
+
height: number;
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Figma file API response
|
|
167
|
+
*/
|
|
168
|
+
export interface FigmaFileResponse {
|
|
169
|
+
/** Document structure */
|
|
170
|
+
document: FigmaNode;
|
|
171
|
+
/** Components in the file */
|
|
172
|
+
components: Record<string, FigmaComponent>;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* SVGO plugin configuration
|
|
176
|
+
*/
|
|
177
|
+
export interface SvgoPlugin {
|
|
178
|
+
name: string;
|
|
179
|
+
params?: Record<string, unknown>;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* SVGO configuration
|
|
183
|
+
*/
|
|
184
|
+
export interface SvgoConfig {
|
|
185
|
+
plugins: (string | SvgoPlugin)[];
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* SVG transformation options
|
|
189
|
+
*/
|
|
190
|
+
export interface TransformOptions {
|
|
191
|
+
/** Replace colors with currentColor */
|
|
192
|
+
replaceColors: boolean;
|
|
193
|
+
/** Remove width/height attributes */
|
|
194
|
+
removeSize: boolean;
|
|
195
|
+
/** Remove fill attributes */
|
|
196
|
+
removeFill: boolean;
|
|
197
|
+
/** Ensure viewBox is present */
|
|
198
|
+
addViewBox: boolean;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Result of SVG transformation
|
|
202
|
+
*/
|
|
203
|
+
export interface TransformResult {
|
|
204
|
+
/** Original SVG size in bytes */
|
|
205
|
+
originalSize: number;
|
|
206
|
+
/** Optimized SVG size in bytes */
|
|
207
|
+
optimizedSize: number;
|
|
208
|
+
/** Optimized SVG string */
|
|
209
|
+
svgContent: string;
|
|
210
|
+
/** JSX-compatible SVG string */
|
|
211
|
+
jsxContent: string;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Icon component props interface
|
|
215
|
+
*/
|
|
216
|
+
export interface IconProps extends SVGProps<SVGSVGElement> {
|
|
217
|
+
/** Icon size (width and height) */
|
|
218
|
+
size?: number | string;
|
|
219
|
+
/** Icon color */
|
|
220
|
+
color?: string;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Generated component template
|
|
224
|
+
*/
|
|
225
|
+
export interface ComponentTemplate {
|
|
226
|
+
/** Component name (e.g., "IconArrowRight") */
|
|
227
|
+
componentName: string;
|
|
228
|
+
/** File name (e.g., "IconArrowRight.tsx") */
|
|
229
|
+
fileName: string;
|
|
230
|
+
/** Full component code */
|
|
231
|
+
content: string;
|
|
232
|
+
/** Type definitions */
|
|
233
|
+
types: string;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Component generator configuration
|
|
237
|
+
*/
|
|
238
|
+
export interface GeneratorConfig {
|
|
239
|
+
/** Output directory for components */
|
|
240
|
+
outputDir: string;
|
|
241
|
+
/** Prefix for icon components */
|
|
242
|
+
iconPrefix: string;
|
|
243
|
+
/** Whether to generate TypeScript */
|
|
244
|
+
typescript: boolean;
|
|
245
|
+
/** Whether to generate type definitions */
|
|
246
|
+
generateTypes: boolean;
|
|
247
|
+
/** Whether to generate index file */
|
|
248
|
+
generateIndex: boolean;
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Changes in a version
|
|
252
|
+
*/
|
|
253
|
+
export interface VersionChanges {
|
|
254
|
+
/** Added icons */
|
|
255
|
+
added: string[];
|
|
256
|
+
/** Modified icons */
|
|
257
|
+
modified: string[];
|
|
258
|
+
/** Removed icons */
|
|
259
|
+
removed: string[];
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Changelog entry for a version
|
|
263
|
+
*/
|
|
264
|
+
export interface ChangelogEntry {
|
|
265
|
+
/** Version number */
|
|
266
|
+
version: string;
|
|
267
|
+
/** Release date */
|
|
268
|
+
date: string;
|
|
269
|
+
/** Update message */
|
|
270
|
+
message: string;
|
|
271
|
+
/** Changes in this version */
|
|
272
|
+
changes: VersionChanges;
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Diff between two icon manifests
|
|
276
|
+
*/
|
|
277
|
+
export interface IconDiff {
|
|
278
|
+
/** Added icons */
|
|
279
|
+
added: IconMetadata[];
|
|
280
|
+
/** Modified icons */
|
|
281
|
+
modified: IconMetadata[];
|
|
282
|
+
/** Removed icons */
|
|
283
|
+
removed: IconMetadata[];
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Output format configuration
|
|
287
|
+
*/
|
|
288
|
+
export interface OutputFormats {
|
|
289
|
+
/** Generate React components */
|
|
290
|
+
react: boolean;
|
|
291
|
+
/** Generate raw SVG files */
|
|
292
|
+
svg: boolean;
|
|
293
|
+
/** Generate SVG sprite */
|
|
294
|
+
sprite: boolean;
|
|
295
|
+
/** Generate JSON metadata */
|
|
296
|
+
json: boolean;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* SVG sprite symbol
|
|
300
|
+
*/
|
|
301
|
+
export interface SpriteSymbol {
|
|
302
|
+
/** Symbol ID */
|
|
303
|
+
id: string;
|
|
304
|
+
/** ViewBox attribute */
|
|
305
|
+
viewBox: string;
|
|
306
|
+
/** SVG content inside symbol */
|
|
307
|
+
content: string;
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* SVG sprite structure
|
|
311
|
+
*/
|
|
312
|
+
export interface SvgSprite {
|
|
313
|
+
/** Full sprite SVG content */
|
|
314
|
+
content: string;
|
|
315
|
+
/** Individual symbols */
|
|
316
|
+
symbols: SpriteSymbol[];
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* Standardized error response
|
|
320
|
+
*/
|
|
321
|
+
export interface ErrorResponse {
|
|
322
|
+
/** Error code for programmatic handling */
|
|
323
|
+
code: string;
|
|
324
|
+
/** Human-readable error message */
|
|
325
|
+
message: string;
|
|
326
|
+
/** Additional error details */
|
|
327
|
+
details?: unknown;
|
|
328
|
+
/** Whether retry might succeed */
|
|
329
|
+
recoverable: boolean;
|
|
330
|
+
/** Suggested action to resolve */
|
|
331
|
+
suggestion?: string;
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Semantic version bump type
|
|
335
|
+
*/
|
|
336
|
+
export type VersionBumpType = 'major' | 'minor' | 'patch';
|
|
337
|
+
/**
|
|
338
|
+
* Version suggestion result
|
|
339
|
+
*/
|
|
340
|
+
export interface VersionSuggestion {
|
|
341
|
+
/** Suggested bump type */
|
|
342
|
+
bumpType: VersionBumpType;
|
|
343
|
+
/** Reason for the suggestion */
|
|
344
|
+
reason: string;
|
|
345
|
+
}
|
|
346
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
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
|
+
import type { IconDiff, VersionBumpType, VersionSuggestion } from './types';
|
|
13
|
+
/**
|
|
14
|
+
* Suggests a semantic version bump type based on icon changes
|
|
15
|
+
*
|
|
16
|
+
* Rules (per Requirements 13.1-13.4):
|
|
17
|
+
* - If icons are removed → major (breaking change)
|
|
18
|
+
* - If icons are added (with or without modifications) → minor (new feature)
|
|
19
|
+
* - If only icons are modified → patch (bug fix)
|
|
20
|
+
* - If no changes → patch (default)
|
|
21
|
+
*
|
|
22
|
+
* @param diff - The icon diff containing added, modified, and removed icons
|
|
23
|
+
* @returns VersionSuggestion with bump type and reason
|
|
24
|
+
*
|
|
25
|
+
* Requirements: 13.1, 13.2, 13.3, 13.4
|
|
26
|
+
*/
|
|
27
|
+
export declare function suggestVersionBump(diff: IconDiff): VersionSuggestion;
|
|
28
|
+
/**
|
|
29
|
+
* Increments a semantic version string based on bump type
|
|
30
|
+
*
|
|
31
|
+
* @param currentVersion - Current version string (e.g., "1.2.3")
|
|
32
|
+
* @param bumpType - Type of version bump
|
|
33
|
+
* @returns New version string
|
|
34
|
+
*
|
|
35
|
+
* Requirements: 13.1
|
|
36
|
+
*/
|
|
37
|
+
export declare function incrementVersion(currentVersion: string, bumpType: VersionBumpType): string;
|
|
38
|
+
/**
|
|
39
|
+
* Parsed semantic version components
|
|
40
|
+
*/
|
|
41
|
+
export interface ParsedVersion {
|
|
42
|
+
major: number;
|
|
43
|
+
minor: number;
|
|
44
|
+
patch: number;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Parses a semantic version string into components
|
|
48
|
+
*
|
|
49
|
+
* @param version - Version string (e.g., "1.2.3")
|
|
50
|
+
* @returns Parsed version components
|
|
51
|
+
* @throws Error if version format is invalid
|
|
52
|
+
*/
|
|
53
|
+
export declare function parseVersion(version: string): ParsedVersion;
|
|
54
|
+
/**
|
|
55
|
+
* Validates a semantic version string
|
|
56
|
+
*
|
|
57
|
+
* @param version - Version string to validate
|
|
58
|
+
* @returns True if valid semantic version
|
|
59
|
+
*/
|
|
60
|
+
export declare function isValidVersion(version: string): boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Compares two semantic versions
|
|
63
|
+
*
|
|
64
|
+
* @param a - First version
|
|
65
|
+
* @param b - Second version
|
|
66
|
+
* @returns -1 if a < b, 0 if a === b, 1 if a > b
|
|
67
|
+
*/
|
|
68
|
+
export declare function compareVersions(a: string, b: string): -1 | 0 | 1;
|
|
69
|
+
/**
|
|
70
|
+
* Suggests a new version based on current version and icon diff
|
|
71
|
+
*
|
|
72
|
+
* Convenience function that combines suggestVersionBump and incrementVersion.
|
|
73
|
+
*
|
|
74
|
+
* @param currentVersion - Current version string
|
|
75
|
+
* @param diff - Icon diff
|
|
76
|
+
* @returns Object with suggested version and reason
|
|
77
|
+
*/
|
|
78
|
+
export declare function suggestNewVersion(currentVersion: string, diff: IconDiff): {
|
|
79
|
+
version: string;
|
|
80
|
+
suggestion: VersionSuggestion;
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=version-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-manager.d.ts","sourceRoot":"","sources":["../../src/version-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE3E;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,iBAAiB,CAwDpE;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,eAAe,GACxB,MAAM,CAWR;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAc3D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAOvD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAchE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,QAAQ,GACb;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,iBAAiB,CAAA;CAAE,CAIpD"}
|