UNPKG

@clayui/css

Version:

Liferay's web implementation of the Lexicon Design Language

58 lines 2.79 kB
/** * Clay 3.12.0 * * Copyright 2020, Liferay, Inc. * All rights reserved. * MIT license */ !function(root, factory) { "function" == typeof define && define.amd ? define([], function() { return root.svg4everybody = factory(); }) : "object" == typeof exports ? module.exports = factory() : root.svg4everybody = factory(); }(this, function() { /*! svg4everybody v2.0.0 | github.com/jonathantneal/svg4everybody */ function embed(svg, g) { if (g) { var viewBox = !svg.getAttribute("viewBox") && g.getAttribute("viewBox"), fragment = document.createDocumentFragment(), clone = g.cloneNode(!0); for (viewBox && svg.setAttribute("viewBox", viewBox); clone.childNodes.length; ) { fragment.appendChild(clone.firstChild); } svg.appendChild(fragment); } } function loadreadystatechange(xhr) { xhr.onreadystatechange = function() { if (4 === xhr.readyState) { var x = document.createElement("x"); x.innerHTML = xhr.responseText, xhr.s.splice(0).map(function(array) { embed(array[0], x.querySelector("#" + array[1].replace(/(\W)/g, "\\$1"))); }); } }, xhr.onreadystatechange(); } function svg4everybody(opts) { function oninterval() { for (var use; use = uses[0]; ) { var svg = use.parentNode; if (svg && /svg/i.test(svg.nodeName)) { var src = use.getAttribute("xlink:href"); if (polyfill && (!validate || validate(src, svg, use))) { var url = src.split("#"), url_root = url[0], url_hash = url[1]; if (svg.removeChild(use), url_root.length) { var xhr = svgCache[url_root] = svgCache[url_root] || new XMLHttpRequest(); xhr.s || (xhr.s = [], xhr.open("GET", url_root), xhr.send()), xhr.s.push([ svg, url_hash ]), loadreadystatechange(xhr); } else { embed(svg, document.getElementById(url_hash)); } } } } requestAnimationFrame(oninterval, 17); } opts = opts || {}; var uses = document.getElementsByTagName("use"), polyfill = "polyfill" in opts ? opts.polyfill : /\bEdge\/12\b|\bTrident\/[567]\b|\bVersion\/7.0 Safari\b/.test(navigator.userAgent) || (navigator.userAgent.match(/AppleWebKit\/(\d+)/) || [])[1] < 537, validate = opts.validate, requestAnimationFrame = window.requestAnimationFrame || setTimeout, svgCache = {}; polyfill && oninterval(); } return svg4everybody; });