123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443 |
- // node_modules/.pnpm/tiny-svg@3.0.1/node_modules/tiny-svg/dist/index.esm.js
- function ensureImported(element, target) {
- if (element.ownerDocument !== target.ownerDocument) {
- try {
- return target.ownerDocument.importNode(element, true);
- } catch (e) {
- }
- }
- return element;
- }
- function appendTo(element, target) {
- return target.appendChild(ensureImported(element, target));
- }
- function append(target, node2) {
- appendTo(node2, target);
- return target;
- }
- var LENGTH_ATTR = 2;
- var CSS_PROPERTIES = {
- "alignment-baseline": 1,
- "baseline-shift": 1,
- "clip": 1,
- "clip-path": 1,
- "clip-rule": 1,
- "color": 1,
- "color-interpolation": 1,
- "color-interpolation-filters": 1,
- "color-profile": 1,
- "color-rendering": 1,
- "cursor": 1,
- "direction": 1,
- "display": 1,
- "dominant-baseline": 1,
- "enable-background": 1,
- "fill": 1,
- "fill-opacity": 1,
- "fill-rule": 1,
- "filter": 1,
- "flood-color": 1,
- "flood-opacity": 1,
- "font": 1,
- "font-family": 1,
- "font-size": LENGTH_ATTR,
- "font-size-adjust": 1,
- "font-stretch": 1,
- "font-style": 1,
- "font-variant": 1,
- "font-weight": 1,
- "glyph-orientation-horizontal": 1,
- "glyph-orientation-vertical": 1,
- "image-rendering": 1,
- "kerning": 1,
- "letter-spacing": 1,
- "lighting-color": 1,
- "marker": 1,
- "marker-end": 1,
- "marker-mid": 1,
- "marker-start": 1,
- "mask": 1,
- "opacity": 1,
- "overflow": 1,
- "pointer-events": 1,
- "shape-rendering": 1,
- "stop-color": 1,
- "stop-opacity": 1,
- "stroke": 1,
- "stroke-dasharray": 1,
- "stroke-dashoffset": 1,
- "stroke-linecap": 1,
- "stroke-linejoin": 1,
- "stroke-miterlimit": 1,
- "stroke-opacity": 1,
- "stroke-width": LENGTH_ATTR,
- "text-anchor": 1,
- "text-decoration": 1,
- "text-rendering": 1,
- "unicode-bidi": 1,
- "visibility": 1,
- "word-spacing": 1,
- "writing-mode": 1
- };
- function getAttribute(node2, name) {
- if (CSS_PROPERTIES[name]) {
- return node2.style[name];
- } else {
- return node2.getAttributeNS(null, name);
- }
- }
- function setAttribute(node2, name, value) {
- var hyphenated = name.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
- var type = CSS_PROPERTIES[hyphenated];
- if (type) {
- if (type === LENGTH_ATTR && typeof value === "number") {
- value = String(value) + "px";
- }
- node2.style[hyphenated] = value;
- } else {
- node2.setAttributeNS(null, name, value);
- }
- }
- function setAttributes(node2, attrs) {
- var names = Object.keys(attrs), i, name;
- for (i = 0, name; name = names[i]; i++) {
- setAttribute(node2, name, attrs[name]);
- }
- }
- function attr(node2, name, value) {
- if (typeof name === "string") {
- if (value !== void 0) {
- setAttribute(node2, name, value);
- } else {
- return getAttribute(node2, name);
- }
- } else {
- setAttributes(node2, name);
- }
- return node2;
- }
- var toString = Object.prototype.toString;
- function classes(el) {
- return new ClassList(el);
- }
- function ClassList(el) {
- if (!el || !el.nodeType) {
- throw new Error("A DOM element reference is required");
- }
- this.el = el;
- this.list = el.classList;
- }
- ClassList.prototype.add = function(name) {
- this.list.add(name);
- return this;
- };
- ClassList.prototype.remove = function(name) {
- if ("[object RegExp]" == toString.call(name)) {
- return this.removeMatching(name);
- }
- this.list.remove(name);
- return this;
- };
- ClassList.prototype.removeMatching = function(re) {
- const arr = this.array();
- for (let i = 0; i < arr.length; i++) {
- if (re.test(arr[i])) {
- this.remove(arr[i]);
- }
- }
- return this;
- };
- ClassList.prototype.toggle = function(name, force) {
- if ("undefined" !== typeof force) {
- if (force !== this.list.toggle(name, force)) {
- this.list.toggle(name);
- }
- } else {
- this.list.toggle(name);
- }
- return this;
- };
- ClassList.prototype.array = function() {
- return Array.from(this.list);
- };
- ClassList.prototype.has = ClassList.prototype.contains = function(name) {
- return this.list.contains(name);
- };
- function remove(element) {
- var parent = element.parentNode;
- if (parent) {
- parent.removeChild(element);
- }
- return element;
- }
- function clear(element) {
- var child;
- while (child = element.firstChild) {
- remove(child);
- }
- return element;
- }
- function clone(element) {
- return element.cloneNode(true);
- }
- var ns = {
- svg: "http://www.w3.org/2000/svg"
- };
- var SVG_START = '<svg xmlns="' + ns.svg + '"';
- function parse(svg) {
- var unwrap = false;
- if (svg.substring(0, 4) === "<svg") {
- if (svg.indexOf(ns.svg) === -1) {
- svg = SVG_START + svg.substring(4);
- }
- } else {
- svg = SVG_START + ">" + svg + "</svg>";
- unwrap = true;
- }
- var parsed = parseDocument(svg);
- if (!unwrap) {
- return parsed;
- }
- var fragment = document.createDocumentFragment();
- var parent = parsed.firstChild;
- while (parent.firstChild) {
- fragment.appendChild(parent.firstChild);
- }
- return fragment;
- }
- function parseDocument(svg) {
- var parser;
- parser = new DOMParser();
- parser.async = false;
- return parser.parseFromString(svg, "text/xml");
- }
- function create(name, attrs) {
- var element;
- if (name.charAt(0) === "<") {
- element = parse(name).firstChild;
- element = document.importNode(element, true);
- } else {
- element = document.createElementNS(ns.svg, name);
- }
- if (attrs) {
- attr(element, attrs);
- }
- return element;
- }
- function on(node2, event, listener, useCapture) {
- node2.addEventListener(event, listener, useCapture);
- }
- function off(node2, event, listener, useCapture) {
- node2.removeEventListener(event, listener, useCapture);
- }
- var node = null;
- function getNode() {
- if (node === null) {
- node = create("svg");
- }
- return node;
- }
- function extend(object, props) {
- var i, k, keys = Object.keys(props);
- for (i = 0; k = keys[i]; i++) {
- object[k] = props[k];
- }
- return object;
- }
- function createPoint(x, y) {
- var point = getNode().createSVGPoint();
- switch (arguments.length) {
- case 0:
- return point;
- case 2:
- x = {
- x,
- y
- };
- break;
- }
- return extend(point, x);
- }
- function createMatrix(a, b, c, d, e, f) {
- var matrix = getNode().createSVGMatrix();
- switch (arguments.length) {
- case 0:
- return matrix;
- case 1:
- return extend(matrix, a);
- case 6:
- return extend(matrix, {
- a,
- b,
- c,
- d,
- e,
- f
- });
- }
- }
- function createTransform(matrix) {
- if (matrix) {
- return getNode().createSVGTransformFromMatrix(matrix);
- } else {
- return getNode().createSVGTransform();
- }
- }
- var TEXT_ENTITIES = /([&<>]{1})/g;
- var ATTR_ENTITIES = /([\n\r"]{1})/g;
- var ENTITY_REPLACEMENT = {
- "&": "&",
- "<": "<",
- ">": ">",
- '"': "'"
- };
- function escape(str, pattern) {
- function replaceFn(match, entity) {
- return ENTITY_REPLACEMENT[entity] || entity;
- }
- return str.replace(pattern, replaceFn);
- }
- function serialize(node2, output) {
- var i, len, attrMap, attrNode, childNodes;
- switch (node2.nodeType) {
- case 3:
- output.push(escape(node2.textContent, TEXT_ENTITIES));
- break;
- case 1:
- output.push("<", node2.tagName);
- if (node2.hasAttributes()) {
- attrMap = node2.attributes;
- for (i = 0, len = attrMap.length; i < len; ++i) {
- attrNode = attrMap.item(i);
- output.push(" ", attrNode.name, '="', escape(attrNode.value, ATTR_ENTITIES), '"');
- }
- }
- if (node2.hasChildNodes()) {
- output.push(">");
- childNodes = node2.childNodes;
- for (i = 0, len = childNodes.length; i < len; ++i) {
- serialize(childNodes.item(i), output);
- }
- output.push("</", node2.tagName, ">");
- } else {
- output.push("/>");
- }
- break;
- case 8:
- output.push("<!--", escape(node2.nodeValue, TEXT_ENTITIES), "-->");
- break;
- case 4:
- output.push("<![CDATA[", node2.nodeValue, "]]>");
- break;
- default:
- throw new Error("unable to handle node " + node2.nodeType);
- }
- return output;
- }
- function set(element, svg) {
- var parsed = parse(svg);
- clear(element);
- if (!svg) {
- return;
- }
- if (!isFragment(parsed)) {
- parsed = parsed.documentElement;
- }
- var nodes = slice(parsed.childNodes);
- for (var i = 0; i < nodes.length; i++) {
- appendTo(nodes[i], element);
- }
- }
- function get(element) {
- var child = element.firstChild, output = [];
- while (child) {
- serialize(child, output);
- child = child.nextSibling;
- }
- return output.join("");
- }
- function isFragment(node2) {
- return node2.nodeName === "#document-fragment";
- }
- function innerSVG(element, svg) {
- if (svg !== void 0) {
- try {
- set(element, svg);
- } catch (e) {
- throw new Error("error parsing SVG: " + e.message);
- }
- return element;
- } else {
- return get(element);
- }
- }
- function slice(arr) {
- return Array.prototype.slice.call(arr);
- }
- function select(node2, selector) {
- return node2.querySelector(selector);
- }
- function selectAll(node2, selector) {
- var nodes = node2.querySelectorAll(selector);
- return [].map.call(nodes, function(element) {
- return element;
- });
- }
- function prependTo(node2, target) {
- return target.insertBefore(ensureImported(node2, target), target.firstChild || null);
- }
- function prepend(target, node2) {
- prependTo(node2, target);
- return target;
- }
- function replace(element, replacement) {
- element.parentNode.replaceChild(ensureImported(replacement, element), element);
- return replacement;
- }
- function wrapMatrix(transformList, transform2) {
- if (transform2 instanceof SVGMatrix) {
- return transformList.createSVGTransformFromMatrix(transform2);
- }
- return transform2;
- }
- function setTransforms(transformList, transforms) {
- var i, t;
- transformList.clear();
- for (i = 0; t = transforms[i]; i++) {
- transformList.appendItem(wrapMatrix(transformList, t));
- }
- }
- function transform(node2, transforms) {
- var transformList = node2.transform.baseVal;
- if (transforms) {
- if (!Array.isArray(transforms)) {
- transforms = [transforms];
- }
- setTransforms(transformList, transforms);
- }
- return transformList.consolidate();
- }
- export {
- appendTo,
- append,
- attr,
- classes,
- remove,
- clear,
- clone,
- create,
- on,
- off,
- createPoint,
- createMatrix,
- createTransform,
- innerSVG,
- select,
- selectAll,
- prependTo,
- prepend,
- replace,
- transform
- };
- //# sourceMappingURL=chunk-IQOBXLIK.js.map
|