UNPKG

@acrool/icon-symbols

Version:

Merge svg into svg symbols, and unpack svg symbols into individual svg

27 lines (26 loc) 1.05 kB
import { IDef, TTagKey } from '../../../types'; /** * 解析 SVG 中的 defs 元素 * @param defs - SVG 中的 defs 元素数据 * @param contentTags - 需要处理的内容标签列表 * @returns 包含 defIdMap 和 defsContent 的对象 * @description * - defIdMap: 存储原始 ID 到新生成 ID 的映射关系 * - defsContent: 处理后的 defs 内容数组 */ export declare const parseDefs: (defs: any, contentTags: TTagKey[]) => { defIdMap: Map<string | undefined, string | undefined>; defsContent: IDef[]; }; /** * 处理 SVG 元素,包括属性处理和子元素递归处理 * @param el - 要处理的 SVG 元素 * @param contentTags - 需要处理的内容标签列表 * @param defIdMap - ID 映射关系表 * @returns 处理后的元素对象 * @description * - 处理元素的标签名和属性 * - 处理 fill 和 clipPath 中的 URL 引用 * - 递归处理子元素 */ export declare const processElement: (el: any, contentTags: TTagKey[], defIdMap: Map<string | undefined, string | undefined>) => IDef;