You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
9 lines
3.2 KiB
9 lines
3.2 KiB
// All material copyright Esri, All Rights Reserved, unless otherwise specified. |
|
// See https://js.arcgis.com/4.30/esri/copyright.txt for details. |
|
//>>built |
|
define(["exports","./componentsUtils","./dom","./observers"],function(p,e,q,v){async function w({icon:a,scale:c}){c=r[c];a=x(a);const d="F"===a.charAt(a.length-1),b=`${d?a.substring(0,a.length-1):a}${c}${d?"F":""}`;if(l[b])return l[b];m[b]||(m[b]=fetch(e.getAssetPath(`./assets/icon/${b}.json`)).then(f=>f.json()).catch(()=>{console.error(`"${b}" is not a valid calcite-ui-icon name`);return""}));c=await m[b];return l[b]=c}function x(a){const c=!isNaN(Number(a.charAt(0))),d=a.split("-");if(0<d.length){const b= |
|
/[a-z]/i;a=d.map((f,n)=>f.replace(b,function(g,h){return 0===n&&0===h?g:g.toUpperCase()})).join("")}return c?`i${a}`:a}function t(){"undefined"!==typeof customElements&&["calcite-icon"].forEach(a=>{switch(a){case "calcite-icon":customElements.get(a)||customElements.define(a,u)}})}const l={},m={},r={s:16,m:24,l:32},u=e.proxyCustomElement(class extends e.H{constructor(){super();this.__registerHost();this.__attachShadow();this.icon=null;this.flipRtl=!1;this.scale="m";this.pathData=this.textLabel=void 0; |
|
this.visible=!1}connectedCallback(){this.waitUntilVisible(()=>{this.visible=!0;this.loadIconPathData()})}disconnectedCallback(){this.intersectionObserver?.disconnect();this.intersectionObserver=null}async componentWillLoad(){this.loadIconPathData()}render(){const {el:a,flipRtl:c,pathData:d,scale:b,textLabel:f}=this,n=q.getElementDir(a),g=r[b],h=!!f,y=[].concat(d||"");return e.h(e.Host,{key:"5eb4d26c41c6df7a4fe28e6647a452d4a91106a2","aria-hidden":q.toAriaBoolean(!h),"aria-label":h?f:null,role:h?"img": |
|
null},e.h("svg",{key:"cd87fba0ba564d4a16ca5f18176d99b1f974b8fa","aria-hidden":"true",class:{["flip-rtl"]:"rtl"===n&&c,svg:!0},fill:"currentColor",height:"100%",viewBox:`0 0 ${g} ${g}`,width:"100%",xmlns:"http://www.w3.org/2000/svg"},y.map(k=>"string"===typeof k?e.h("path",{d:k}):e.h("path",{d:k.d,opacity:"opacity"in k?k.opacity:1}))))}async loadIconPathData(){const {icon:a,scale:c,visible:d}=this;if(a&&d){var b=await w({icon:a,scale:c});a===this.icon&&(this.pathData=b)}}waitUntilVisible(a){(this.intersectionObserver= |
|
v.createObserver("intersection",c=>{c.forEach(d=>{d.isIntersecting&&(this.intersectionObserver.disconnect(),this.intersectionObserver=null,a())})},{rootMargin:"50px"}))?this.intersectionObserver.observe(this.el):a()}static get assetsDirs(){return["assets"]}get el(){return this}static get watchers(){return{icon:["loadIconPathData"],scale:["loadIconPathData"]}}static get style(){return":host{display:inline-flex;color:var(--calcite-ui-icon-color)}:host([scale\x3ds]){inline-size:16px;block-size:16px;min-inline-size:16px;min-block-size:16px}:host([scale\x3dm]){inline-size:24px;block-size:24px;min-inline-size:24px;min-block-size:24px}:host([scale\x3dl]){inline-size:32px;block-size:32px;min-inline-size:32px;min-block-size:32px}.flip-rtl{transform:scaleX(-1)}.svg{display:block}:host([hidden]){display:none}[hidden]{display:none}"}}, |
|
[1,"calcite-icon",{icon:[513],flipRtl:[516,"flip-rtl"],scale:[513],textLabel:[1,"text-label"],pathData:[32],visible:[32]},void 0,{icon:["loadIconPathData"],scale:["loadIconPathData"]}]);t();p.Icon=u;p.defineCustomElement=t}); |