UNPKG

@mapcss/preset-svg

Version:
28 lines (27 loc) 1.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.iconifyJSON = void 0; const parse_js_1 = require("../deps/esm.sh/@iconify/utils/lib/icon-set/parse.js"); const customisations_js_1 = require("../deps/esm.sh/@iconify/utils/lib/customisations.js"); const build_js_1 = require("../deps/esm.sh/@iconify/utils/lib/svg/build.js"); function iconifyJSON(icon) { const identifier = {}; (0, parse_js_1.parseIconSet)(icon, (name, iconData) => { if (!iconData) { throw Error(iconData); } const renderData = (0, build_js_1.iconToSVG)(iconData, customisations_js_1.defaults); const svgAttributes = { "xmlns": "http://www.w3.org/2000/svg", "xmlns:xlink": "http://www.w3.org/1999/xlink", ...renderData.attributes, }; const svgAttributesStr = Object.keys(svgAttributes) .map((attr) => `${attr}="${svgAttributes[attr]}"`) .join(" "); const svg = `<svg ${svgAttributesStr}>${renderData.body}</svg>`; identifier[name] = svg; }); return identifier; } exports.iconifyJSON = iconifyJSON;