@undp/data-viz 2.5.0 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/BiVariateChoroplethMap.cjs +1 -1
- package/dist/BiVariateChoroplethMap.cjs.map +1 -1
- package/dist/BiVariateChoroplethMap.js +275 -272
- package/dist/BiVariateChoroplethMap.js.map +1 -1
- package/dist/ChoroplethMap.cjs +1 -1
- package/dist/ChoroplethMap.cjs.map +1 -1
- package/dist/ChoroplethMap.js +321 -318
- package/dist/ChoroplethMap.js.map +1 -1
- package/dist/DotDensityMap.cjs +1 -1
- package/dist/DotDensityMap.cjs.map +1 -1
- package/dist/DotDensityMap.js +268 -265
- package/dist/DotDensityMap.js.map +1 -1
- package/dist/{GraphEl-B7x5ku_y.cjs → GraphEl-BgkDbq50.cjs} +2 -2
- package/dist/GraphEl-BgkDbq50.cjs.map +1 -0
- package/dist/{GraphEl-B8tGXqWk.js → GraphEl-Ch0uAeZw.js} +2 -1
- package/dist/GraphEl-Ch0uAeZw.js.map +1 -0
- package/dist/GriddedGraphs.cjs +1 -1
- package/dist/GriddedGraphs.d.ts +1 -0
- package/dist/GriddedGraphs.js +1 -1
- package/dist/GriddedGraphsFromConfig.d.ts +1 -0
- package/dist/HybridMap.cjs +1 -1
- package/dist/HybridMap.cjs.map +1 -1
- package/dist/HybridMap.js +304 -301
- package/dist/HybridMap.js.map +1 -1
- package/dist/ImageDownloadButton.cjs +1 -1
- package/dist/ImageDownloadButton.js +1 -1
- package/dist/MultiGraphDashboard.d.ts +1 -0
- package/dist/MultiGraphDashboardFromConfig.d.ts +1 -0
- package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +1 -0
- package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +1 -0
- package/dist/PerformanceIntensiveScrollStory.d.ts +1 -0
- package/dist/ScatterPlot.cjs +1 -1
- package/dist/ScatterPlot.cjs.map +1 -1
- package/dist/ScatterPlot.d.ts +2 -0
- package/dist/ScatterPlot.js +451 -449
- package/dist/ScatterPlot.js.map +1 -1
- package/dist/ScrollStory.d.ts +1 -0
- package/dist/SingleGraphDashboard.cjs +1 -1
- package/dist/SingleGraphDashboard.d.ts +1 -0
- package/dist/SingleGraphDashboard.js +1 -1
- package/dist/SingleGraphDashboardFromConfig.d.ts +1 -0
- package/dist/SingleGraphDashboardGeoHubMaps.d.ts +1 -0
- package/dist/SingleGraphDashboardGeoHubMapsFromConfig.d.ts +1 -0
- package/dist/SingleGraphDashboardThreeDGraphs.d.ts +1 -0
- package/dist/SingleGraphDashboardThreeDGraphsFromConfig.d.ts +1 -0
- package/dist/Types.d.ts +1 -0
- package/dist/{imageDownload-Diofs_vY.js → imageDownload-BYsNEtMS.js} +11 -11
- package/dist/{imageDownload-Diofs_vY.js.map → imageDownload-BYsNEtMS.js.map} +1 -1
- package/dist/{imageDownload-61q6jyJW.cjs → imageDownload-CkMwA7Cw.cjs} +4 -4
- package/dist/{imageDownload-61q6jyJW.cjs.map → imageDownload-CkMwA7Cw.cjs.map} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +1 -1
- package/dist/style.css +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.js +1 -1
- package/package.json +1 -1
- package/dist/GraphEl-B7x5ku_y.cjs.map +0 -1
- package/dist/GraphEl-B8tGXqWk.js.map +0 -1
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
"use strict";function ge(e,t){return e[13]=1,e[14]=t>>8,e[15]=t&255,e[16]=t>>8,e[17]=t&255,e}const Y=112,K=72,J=89,Q=115;let L;function me(){const e=new Int32Array(256);for(let t=0;t<256;t++){let r=t;for(let n=0;n<8;n++)r=r&1?3988292384^r>>>1:r>>>1;e[t]=r}return e}function he(e){let t=-1;L||(L=me());for(let r=0;r<e.length;r++)t=L[(t^e[r])&255]^t>>>8;return t^-1}function we(e){const t=e.length-1;for(let r=t;r>=4;r--)if(e[r-4]===9&&e[r-3]===Y&&e[r-2]===K&&e[r-1]===J&&e[r]===Q)return r-3;return 0}function pe(e,t,r=!1){const n=new Uint8Array(13);t*=39.3701,n[0]=Y,n[1]=K,n[2]=J,n[3]=Q,n[4]=t>>>24,n[5]=t>>>16,n[6]=t>>>8,n[7]=t&255,n[8]=n[4],n[9]=n[5],n[10]=n[6],n[11]=n[7],n[12]=1;const a=he(n),s=new Uint8Array(4);if(s[0]=a>>>24,s[1]=a>>>16,s[2]=a>>>8,s[3]=a&255,r){const i=we(e);return e.set(n,i),e.set(s,i+13),e}else{const i=new Uint8Array(4);i[0]=0,i[1]=0,i[2]=0,i[3]=9;const o=new Uint8Array(54);return o.set(e,0),o.set(i,33),o.set(n,37),o.set(s,50),o}}const ye="AAlwSFlz",be="AAAJcEhZ",Se="AAAACXBI";function Ee(e){let t=e.indexOf(ye);return t===-1&&(t=e.indexOf(be)),t===-1&&(t=e.indexOf(Se)),t}const Z="[modern-screenshot]",N=typeof window<"u",Ce=N&&"Worker"in window,ve=N&&"atob"in window,Ne=N&&"btoa"in window,M=N?window.navigator?.userAgent:"",ee=M.includes("Chrome"),P=M.includes("AppleWebKit")&&!ee,B=M.includes("Firefox"),Te=e=>e&&"__CONTEXT__"in e,Ae=e=>e.constructor.name==="CSSFontFaceRule",De=e=>e.constructor.name==="CSSImportRule",E=e=>e.nodeType===1,F=e=>typeof e.className=="object",te=e=>e.tagName==="image",Ie=e=>e.tagName==="use",D=e=>E(e)&&typeof e.style<"u"&&!F(e),ke=e=>e.nodeType===8,Fe=e=>e.nodeType===3,A=e=>e.tagName==="IMG",_=e=>e.tagName==="VIDEO",Re=e=>e.tagName==="CANVAS",Pe=e=>e.tagName==="TEXTAREA",_e=e=>e.tagName==="INPUT",xe=e=>e.tagName==="STYLE",Ue=e=>e.tagName==="SCRIPT",$e=e=>e.tagName==="SELECT",Le=e=>e.tagName==="SLOT",Oe=e=>e.tagName==="IFRAME",Me=(...e)=>console.warn(Z,...e);function Be(e){const t=e?.createElement?.("canvas");return t&&(t.height=t.width=1),!!t&&"toDataURL"in t&&!!t.toDataURL("image/webp").includes("image/webp")}const O=e=>e.startsWith("data:");function re(e,t){if(e.match(/^[a-z]+:\/\//i))return e;if(N&&e.match(/^\/\//))return window.location.protocol+e;if(e.match(/^[a-z]+:/i)||!N)return e;const r=x().implementation.createHTMLDocument(),n=r.createElement("base"),a=r.createElement("a");return r.head.appendChild(n),r.body.appendChild(a),t&&(n.href=t),a.href=e,a.href}function x(e){return(e&&E(e)?e?.ownerDocument:e)??window.document}const U="http://www.w3.org/2000/svg";function We(e,t,r){const n=x(r).createElementNS(U,"svg");return n.setAttributeNS(null,"width",e.toString()),n.setAttributeNS(null,"height",t.toString()),n.setAttributeNS(null,"viewBox",`0 0 ${e} ${t}`),n}function qe(e,t){let r=new XMLSerializer().serializeToString(e);return t&&(r=r.replace(/[\u0000-\u0008\v\f\u000E-\u001F\uD800-\uDFFF\uFFFE\uFFFF]/gu,"")),`data:image/svg+xml;charset=utf-8,${encodeURIComponent(r)}`}function je(e,t){return new Promise((r,n)=>{const a=new FileReader;a.onload=()=>r(a.result),a.onerror=()=>n(a.error),a.onabort=()=>n(new Error(`Failed read blob to ${t}`)),a.readAsDataURL(e)})}const
|
|
1
|
+
"use strict";function ge(e,t){return e[13]=1,e[14]=t>>8,e[15]=t&255,e[16]=t>>8,e[17]=t&255,e}const Y=112,K=72,J=89,Q=115;let L;function me(){const e=new Int32Array(256);for(let t=0;t<256;t++){let r=t;for(let n=0;n<8;n++)r=r&1?3988292384^r>>>1:r>>>1;e[t]=r}return e}function he(e){let t=-1;L||(L=me());for(let r=0;r<e.length;r++)t=L[(t^e[r])&255]^t>>>8;return t^-1}function we(e){const t=e.length-1;for(let r=t;r>=4;r--)if(e[r-4]===9&&e[r-3]===Y&&e[r-2]===K&&e[r-1]===J&&e[r]===Q)return r-3;return 0}function pe(e,t,r=!1){const n=new Uint8Array(13);t*=39.3701,n[0]=Y,n[1]=K,n[2]=J,n[3]=Q,n[4]=t>>>24,n[5]=t>>>16,n[6]=t>>>8,n[7]=t&255,n[8]=n[4],n[9]=n[5],n[10]=n[6],n[11]=n[7],n[12]=1;const a=he(n),s=new Uint8Array(4);if(s[0]=a>>>24,s[1]=a>>>16,s[2]=a>>>8,s[3]=a&255,r){const i=we(e);return e.set(n,i),e.set(s,i+13),e}else{const i=new Uint8Array(4);i[0]=0,i[1]=0,i[2]=0,i[3]=9;const o=new Uint8Array(54);return o.set(e,0),o.set(i,33),o.set(n,37),o.set(s,50),o}}const ye="AAlwSFlz",be="AAAJcEhZ",Se="AAAACXBI";function Ee(e){let t=e.indexOf(ye);return t===-1&&(t=e.indexOf(be)),t===-1&&(t=e.indexOf(Se)),t}const Z="[modern-screenshot]",N=typeof window<"u",Ce=N&&"Worker"in window,ve=N&&"atob"in window,Ne=N&&"btoa"in window,M=N?window.navigator?.userAgent:"",ee=M.includes("Chrome"),P=M.includes("AppleWebKit")&&!ee,B=M.includes("Firefox"),Te=e=>e&&"__CONTEXT__"in e,Ae=e=>e.constructor.name==="CSSFontFaceRule",De=e=>e.constructor.name==="CSSImportRule",E=e=>e.nodeType===1,F=e=>typeof e.className=="object",te=e=>e.tagName==="image",Ie=e=>e.tagName==="use",D=e=>E(e)&&typeof e.style<"u"&&!F(e),ke=e=>e.nodeType===8,Fe=e=>e.nodeType===3,A=e=>e.tagName==="IMG",_=e=>e.tagName==="VIDEO",Re=e=>e.tagName==="CANVAS",Pe=e=>e.tagName==="TEXTAREA",_e=e=>e.tagName==="INPUT",xe=e=>e.tagName==="STYLE",Ue=e=>e.tagName==="SCRIPT",$e=e=>e.tagName==="SELECT",Le=e=>e.tagName==="SLOT",Oe=e=>e.tagName==="IFRAME",Me=(...e)=>console.warn(Z,...e);function Be(e){const t=e?.createElement?.("canvas");return t&&(t.height=t.width=1),!!t&&"toDataURL"in t&&!!t.toDataURL("image/webp").includes("image/webp")}const O=e=>e.startsWith("data:");function re(e,t){if(e.match(/^[a-z]+:\/\//i))return e;if(N&&e.match(/^\/\//))return window.location.protocol+e;if(e.match(/^[a-z]+:/i)||!N)return e;const r=x().implementation.createHTMLDocument(),n=r.createElement("base"),a=r.createElement("a");return r.head.appendChild(n),r.body.appendChild(a),t&&(n.href=t),a.href=e,a.href}function x(e){return(e&&E(e)?e?.ownerDocument:e)??window.document}const U="http://www.w3.org/2000/svg";function We(e,t,r){const n=x(r).createElementNS(U,"svg");return n.setAttributeNS(null,"width",e.toString()),n.setAttributeNS(null,"height",t.toString()),n.setAttributeNS(null,"viewBox",`0 0 ${e} ${t}`),n}function qe(e,t){let r=new XMLSerializer().serializeToString(e);return t&&(r=r.replace(/[\u0000-\u0008\v\f\u000E-\u001F\uD800-\uDFFF\uFFFE\uFFFF]/gu,"")),`data:image/svg+xml;charset=utf-8,${encodeURIComponent(r)}`}function je(e,t){return new Promise((r,n)=>{const a=new FileReader;a.onload=()=>r(a.result),a.onerror=()=>n(a.error),a.onabort=()=>n(new Error(`Failed read blob to ${t}`)),a.readAsDataURL(e)})}const ze=e=>je(e,"dataUrl");function T(e,t){const r=x(t).createElement("img");return r.decoding="sync",r.loading="eager",r.src=e,r}function I(e,t){return new Promise(r=>{const{timeout:n,ownerDocument:a,onError:s,onWarn:i}=t??{},o=typeof e=="string"?T(e,x(a)):e;let g=null,u=null;function l(){r(o),g&&clearTimeout(g),u?.()}if(n&&(g=setTimeout(l,n)),_(o)){const c=o.currentSrc||o.src;if(!c)return o.poster?I(o.poster,t).then(r):l();if(o.readyState>=2)return l();const d=l,m=p=>{i?.("Failed video load",c,p),s?.(p),l()};u=()=>{o.removeEventListener("loadeddata",d),o.removeEventListener("error",m)},o.addEventListener("loadeddata",d,{once:!0}),o.addEventListener("error",m,{once:!0})}else{const c=te(o)?o.href.baseVal:o.currentSrc||o.src;if(!c)return l();const d=async()=>{if(A(o)&&"decode"in o)try{await o.decode()}catch(p){i?.("Failed to decode image, trying to render anyway",o.dataset.originalSrc||c,p)}l()},m=p=>{i?.("Failed image load",o.dataset.originalSrc||c,p),l()};if(A(o)&&o.complete)return d();u=()=>{o.removeEventListener("load",d),o.removeEventListener("error",m)},o.addEventListener("load",d,{once:!0}),o.addEventListener("error",m,{once:!0})}})}async function Ve(e,t){D(e)&&(A(e)||_(e)?await I(e,t):await Promise.all(["img","video"].flatMap(r=>Array.from(e.querySelectorAll(r)).map(n=>I(n,t)))))}const ne=(function(){let t=0;const r=()=>`0000${(Math.random()*36**4<<0).toString(36)}`.slice(-4);return()=>(t+=1,`u${r()}${t}`)})();function oe(e){return e?.split(",").map(t=>t.trim().replace(/"|'/g,"").toLowerCase()).filter(Boolean)}let j=0;function He(e){const t=`${Z}[#${j}]`;return j++,{time:r=>e&&console.time(`${t} ${r}`),timeEnd:r=>e&&console.timeEnd(`${t} ${r}`),warn:(...r)=>e&&Me(...r)}}function Xe(e){return{cache:e?"no-cache":"force-cache"}}async function $(e,t){return Te(e)?e:Ge(e,{...t,autoDestruct:!0})}async function Ge(e,t){const{scale:r=1,workerUrl:n,workerNumber:a=1}=t||{},s=!!t?.debug,i=t?.features??!0,o=e.ownerDocument??(N?window.document:void 0),g=e.ownerDocument?.defaultView??(N?window:void 0),u=new Map,l={width:0,height:0,quality:1,type:"image/png",scale:r,backgroundColor:null,style:null,filter:null,maximumCanvasSize:0,timeout:3e4,progress:null,debug:s,fetch:{requestInit:Xe(t?.fetch?.bypassingCache),placeholderImage:"data:image/png;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",bypassingCache:!1,...t?.fetch},fetchFn:null,font:{},drawImageInterval:100,workerUrl:null,workerNumber:a,onCloneEachNode:null,onCloneNode:null,onEmbedNode:null,onCreateForeignObjectSvg:null,includeStyleProperties:null,autoDestruct:!1,...t,__CONTEXT__:!0,log:He(s),node:e,ownerDocument:o,ownerWindow:g,dpi:r===1?null:96*r,svgStyleElement:se(o),svgDefsElement:o?.createElementNS(U,"defs"),svgStyles:new Map,defaultComputedStyles:new Map,workers:[...Array.from({length:Ce&&n&&a?a:0})].map(()=>{try{const m=new Worker(n);return m.onmessage=async p=>{const{url:f,result:w}=p.data;w?u.get(f)?.resolve?.(w):u.get(f)?.reject?.(new Error(`Error receiving message from worker: ${f}`))},m.onmessageerror=p=>{const{url:f}=p.data;u.get(f)?.reject?.(new Error(`Error receiving message from worker: ${f}`))},m}catch(m){return l.log.warn("Failed to new Worker",m),null}}).filter(Boolean),fontFamilies:new Map,fontCssTexts:new Map,acceptOfImage:`${[Be(o)&&"image/webp","image/svg+xml","image/*","*/*"].filter(Boolean).join(",")};q=0.8`,requests:u,drawImageCount:0,tasks:[],features:i,isEnable:m=>m==="restoreScrollPosition"?typeof i=="boolean"?!1:i[m]??!1:typeof i=="boolean"?i:i[m]??!0,shadowRoots:[]};l.log.time("wait until load"),await Ve(e,{timeout:l.timeout,onWarn:l.log.warn}),l.log.timeEnd("wait until load");const{width:c,height:d}=Ye(e,l);return l.width=c,l.height=d,l}function se(e){if(!e)return;const t=e.createElement("style"),r=t.ownerDocument.createTextNode(`
|
|
2
2
|
.______background-clip--text {
|
|
3
3
|
background-clip: text;
|
|
4
4
|
-webkit-background-clip: text;
|
|
5
5
|
}
|
|
6
6
|
`);return t.appendChild(r),t}function Ye(e,t){let{width:r,height:n}=t;if(E(e)&&(!r||!n)){const a=e.getBoundingClientRect();r=r||a.width||Number(e.getAttribute("width"))||0,n=n||a.height||Number(e.getAttribute("height"))||0}return{width:r,height:n}}async function Ke(e,t){const{log:r,timeout:n,drawImageCount:a,drawImageInterval:s}=t;r.time("image to canvas");const i=await I(e,{timeout:n,onWarn:t.log.warn}),{canvas:o,context2d:g}=Je(e.ownerDocument,t),u=()=>{try{g?.drawImage(i,0,0,o.width,o.height)}catch(l){t.log.warn("Failed to drawImage",l)}};if(u(),t.isEnable("fixSvgXmlDecode"))for(let l=0;l<a;l++)await new Promise(c=>{setTimeout(()=>{g?.clearRect(0,0,o.width,o.height),u(),c()},l+s)});return t.drawImageCount=0,r.timeEnd("image to canvas"),o}function Je(e,t){const{width:r,height:n,scale:a,backgroundColor:s,maximumCanvasSize:i}=t,o=e.createElement("canvas");o.width=Math.floor(r*a),o.height=Math.floor(n*a),o.style.width=`${r}px`,o.style.height=`${n}px`,i&&(o.width>i||o.height>i)&&(o.width>i&&o.height>i?o.width>o.height?(o.height*=i/o.width,o.width=i):(o.width*=i/o.height,o.height=i):o.width>i?(o.height*=i/o.width,o.width=i):(o.width*=i/o.height,o.height=i));const g=o.getContext("2d");return g&&s&&(g.fillStyle=s,g.fillRect(0,0,o.width,o.height)),{canvas:o,context2d:g}}function ae(e,t){if(e.ownerDocument)try{const s=e.toDataURL();if(s!=="data:,")return T(s,e.ownerDocument)}catch(s){t.log.warn("Failed to clone canvas",s)}const r=e.cloneNode(!1),n=e.getContext("2d"),a=r.getContext("2d");try{return n&&a&&a.putImageData(n.getImageData(0,0,e.width,e.height),0,0),r}catch(s){t.log.warn("Failed to clone canvas",s)}return r}function Qe(e,t){try{if(e?.contentDocument?.body)return W(e.contentDocument.body,t)}catch(r){t.log.warn("Failed to clone iframe",r)}return e.cloneNode(!1)}function Ze(e){const t=e.cloneNode(!1);return e.currentSrc&&e.currentSrc!==e.src&&(t.src=e.currentSrc,t.srcset=""),t.loading==="lazy"&&(t.loading="eager"),t}async function et(e,t){if(e.ownerDocument&&!e.currentSrc&&e.poster)return T(e.poster,e.ownerDocument);const r=e.cloneNode(!1);r.crossOrigin="anonymous",e.currentSrc&&e.currentSrc!==e.src&&(r.src=e.currentSrc);const n=r.ownerDocument;if(n){let a=!0;if(await I(r,{onError:()=>a=!1,onWarn:t.log.warn}),!a)return e.poster?T(e.poster,e.ownerDocument):r;r.currentTime=e.currentTime,await new Promise(i=>{r.addEventListener("seeked",i,{once:!0})});const s=n.createElement("canvas");s.width=e.offsetWidth,s.height=e.offsetHeight;try{const i=s.getContext("2d");i&&i.drawImage(r,0,0,s.width,s.height)}catch(i){return t.log.warn("Failed to clone video",i),e.poster?T(e.poster,e.ownerDocument):r}return ae(s,t)}return r}function tt(e,t){return Re(e)?ae(e,t):Oe(e)?Qe(e,t):A(e)?Ze(e):_(e)?et(e,t):e.cloneNode(!1)}function rt(e){let t=e.sandbox;if(!t){const{ownerDocument:r}=e;try{r&&(t=r.createElement("iframe"),t.id=`__SANDBOX__${ne()}`,t.width="0",t.height="0",t.style.visibility="hidden",t.style.position="fixed",r.body.appendChild(t),t.srcdoc='<!DOCTYPE html><meta charset="UTF-8"><title></title><body>',e.sandbox=t)}catch(n){e.log.warn("Failed to getSandBox",n)}}return t}const nt=["width","height","-webkit-text-fill-color"],ot=["stroke","fill"];function ie(e,t,r){const{defaultComputedStyles:n}=r,a=e.nodeName.toLowerCase(),s=F(e)&&a!=="svg",i=s?ot.map(f=>[f,e.getAttribute(f)]).filter(([,f])=>f!==null):[],o=[s&&"svg",a,i.map((f,w)=>`${f}=${w}`).join(","),t].filter(Boolean).join(":");if(n.has(o))return n.get(o);const u=rt(r)?.contentWindow;if(!u)return new Map;const l=u?.document;let c,d;s?(c=l.createElementNS(U,"svg"),d=c.ownerDocument.createElementNS(c.namespaceURI,a),i.forEach(([f,w])=>{d.setAttributeNS(null,f,w)}),c.appendChild(d)):c=d=l.createElement(a),d.textContent=" ",l.body.appendChild(c);const m=u.getComputedStyle(d,t),p=new Map;for(let f=m.length,w=0;w<f;w++){const h=m.item(w);nt.includes(h)||p.set(h,m.getPropertyValue(h))}return l.body.removeChild(c),n.set(o,p),p}function le(e,t,r){const n=new Map,a=[],s=new Map;if(r)for(const o of r)i(o);else for(let o=e.length,g=0;g<o;g++){const u=e.item(g);i(u)}for(let o=a.length,g=0;g<o;g++)s.get(a[g])?.forEach((u,l)=>n.set(l,u));function i(o){const g=e.getPropertyValue(o),u=e.getPropertyPriority(o),l=o.lastIndexOf("-"),c=l>-1?o.substring(0,l):void 0;if(c){let d=s.get(c);d||(d=new Map,s.set(c,d)),d.set(o,[g,u])}t.get(o)===g&&!u||(c?a.push(c):n.set(o,[g,u]))}return n}function st(e,t,r,n){const{ownerWindow:a,includeStyleProperties:s,currentParentNodeStyle:i}=n,o=t.style,g=a.getComputedStyle(e),u=ie(e,null,n);i?.forEach((c,d)=>{u.delete(d)});const l=le(g,u,s);l.delete("transition-property"),l.delete("all"),l.delete("d"),l.delete("content"),r&&(l.delete("margin-top"),l.delete("margin-right"),l.delete("margin-bottom"),l.delete("margin-left"),l.delete("margin-block-start"),l.delete("margin-block-end"),l.delete("margin-inline-start"),l.delete("margin-inline-end"),l.set("box-sizing",["border-box",""])),l.get("background-clip")?.[0]==="text"&&t.classList.add("______background-clip--text"),ee&&(l.has("font-kerning")||l.set("font-kerning",["normal",""]),(l.get("overflow-x")?.[0]==="hidden"||l.get("overflow-y")?.[0]==="hidden")&&l.get("text-overflow")?.[0]==="ellipsis"&&e.scrollWidth===e.clientWidth&&l.set("text-overflow",["clip",""]));for(let c=o.length,d=0;d<c;d++)o.removeProperty(o.item(d));return l.forEach(([c,d],m)=>{o.setProperty(m,c,d)}),l}function at(e,t){(Pe(e)||_e(e)||$e(e))&&t.setAttribute("value",e.value)}const it=["::before","::after"],lt=["::-webkit-scrollbar","::-webkit-scrollbar-button","::-webkit-scrollbar-thumb","::-webkit-scrollbar-track","::-webkit-scrollbar-track-piece","::-webkit-scrollbar-corner","::-webkit-resizer"];function ct(e,t,r,n,a){const{ownerWindow:s,svgStyleElement:i,svgStyles:o,currentNodeStyle:g}=n;if(!i||!s)return;function u(l){const c=s.getComputedStyle(e,l);let d=c.getPropertyValue("content");if(!d||d==="none")return;a?.(d),d=d.replace(/(')|(")|(counter\(.+\))/g,"");const m=[ne()],p=ie(e,l,n);g?.forEach((y,S)=>{p.delete(S)});const f=le(c,p,n.includeStyleProperties);f.delete("content"),f.delete("-webkit-locale"),f.get("background-clip")?.[0]==="text"&&t.classList.add("______background-clip--text");const w=[`content: '${d}';`];if(f.forEach(([y,S],v)=>{w.push(`${v}: ${y}${S?" !important":""};`)}),w.length===1)return;try{t.className=[t.className,...m].join(" ")}catch(y){n.log.warn("Failed to copyPseudoClass",y);return}const h=w.join(`
|
|
7
|
-
`);let b=o.get(h);b||(b=[],o.set(h,b)),b.push(`.${m[0]}${l}`)}it.forEach(u),r&<.forEach(u)}const
|
|
7
|
+
`);let b=o.get(h);b||(b=[],o.set(h,b)),b.push(`.${m[0]}${l}`)}it.forEach(u),r&<.forEach(u)}const z=new Set(["symbol"]);async function V(e,t,r,n,a){if(E(r)&&(xe(r)||Ue(r))||n.filter&&!n.filter(r))return;z.has(t.nodeName)||z.has(r.nodeName)?n.currentParentNodeStyle=void 0:n.currentParentNodeStyle=n.currentNodeStyle;const s=await W(r,n,!1,a);n.isEnable("restoreScrollPosition")&&ut(e,s),t.appendChild(s)}async function H(e,t,r,n){let a=e.firstChild;E(e)&&e.shadowRoot&&(a=e.shadowRoot?.firstChild,r.shadowRoots.push(e.shadowRoot));for(let s=a;s;s=s.nextSibling)if(!ke(s))if(E(s)&&Le(s)&&typeof s.assignedNodes=="function"){const i=s.assignedNodes();for(let o=0;o<i.length;o++)await V(e,t,i[o],r,n)}else await V(e,t,s,r,n)}function ut(e,t){if(!D(e)||!D(t))return;const{scrollTop:r,scrollLeft:n}=e;if(!r&&!n)return;const{transform:a}=t.style,s=new DOMMatrix(a),{a:i,b:o,c:g,d:u}=s;s.a=1,s.b=0,s.c=0,s.d=1,s.translateSelf(-n,-r),s.a=i,s.b=o,s.c=g,s.d=u,t.style.transform=s.toString()}function ft(e,t){const{backgroundColor:r,width:n,height:a,style:s}=t,i=e.style;if(r&&i.setProperty("background-color",r,"important"),n&&i.setProperty("width",`${n}px`,"important"),a&&i.setProperty("height",`${a}px`,"important"),s)for(const o in s)i[o]=s[o]}const dt=/^[\w-:]+$/;async function W(e,t,r=!1,n){const{ownerDocument:a,ownerWindow:s,fontFamilies:i,onCloneEachNode:o}=t;if(a&&Fe(e))return n&&/\S/.test(e.data)&&n(e.data),a.createTextNode(e.data);if(a&&s&&E(e)&&(D(e)||F(e))){const u=await tt(e,t);if(t.isEnable("removeAbnormalAttributes")){const f=u.getAttributeNames();for(let w=f.length,h=0;h<w;h++){const b=f[h];dt.test(b)||u.removeAttribute(b)}}const l=t.currentNodeStyle=st(e,u,r,t);r&&ft(u,t);let c=!1;if(t.isEnable("copyScrollbar")){const f=[l.get("overflow-x")?.[0],l.get("overflow-y")?.[0]];c=f.includes("scroll")||(f.includes("auto")||f.includes("overlay"))&&(e.scrollHeight>e.clientHeight||e.scrollWidth>e.clientWidth)}const d=l.get("text-transform")?.[0],m=oe(l.get("font-family")?.[0]),p=m?f=>{d==="uppercase"?f=f.toUpperCase():d==="lowercase"?f=f.toLowerCase():d==="capitalize"&&(f=f[0].toUpperCase()+f.substring(1)),m.forEach(w=>{let h=i.get(w);h||i.set(w,h=new Set),f.split("").forEach(b=>h.add(b))})}:void 0;return ct(e,u,c,t,p),at(e,u),_(e)||await H(e,u,t,p),await o?.(u),u}const g=e.cloneNode(!1);return await H(e,g,t),await o?.(g),g}function gt(e){if(e.ownerDocument=void 0,e.ownerWindow=void 0,e.svgStyleElement=void 0,e.svgDefsElement=void 0,e.svgStyles.clear(),e.defaultComputedStyles.clear(),e.sandbox){try{e.sandbox.remove()}catch(t){e.log.warn("Failed to destroyContext",t)}e.sandbox=void 0}e.workers=[],e.fontFamilies.clear(),e.fontCssTexts.clear(),e.requests.clear(),e.tasks=[],e.shadowRoots=[]}function mt(e){const{url:t,timeout:r,responseType:n,...a}=e,s=new AbortController,i=r?setTimeout(()=>s.abort(),r):void 0;return fetch(t,{signal:s.signal,...a}).then(o=>{if(!o.ok)throw new Error("Failed fetch, not 2xx response",{cause:o});switch(n){case"arrayBuffer":return o.arrayBuffer();case"dataUrl":return o.blob().then(ze);default:return o.text()}}).finally(()=>clearTimeout(i))}function k(e,t){const{url:r,requestType:n="text",responseType:a="text",imageDom:s}=t;let i=r;const{timeout:o,acceptOfImage:g,requests:u,fetchFn:l,fetch:{requestInit:c,bypassingCache:d,placeholderImage:m},font:p,workers:f,fontFamilies:w}=e;n==="image"&&(P||B)&&e.drawImageCount++;let h=u.get(r);if(!h){d&&d instanceof RegExp&&d.test(i)&&(i+=(/\?/.test(i)?"&":"?")+new Date().getTime());const b=n.startsWith("font")&&p&&p.minify,y=new Set;b&&n.split(";")[1].split(",").forEach(R=>{w.has(R)&&w.get(R).forEach(q=>y.add(q))});const S=b&&y.size,v={url:i,timeout:o,responseType:S?"arrayBuffer":a,headers:n==="image"?{accept:g}:void 0,...c};h={type:n,resolve:void 0,reject:void 0,response:null},h.response=(async()=>{if(l&&n==="image"){const C=await l(r);if(C)return C}return!P&&r.startsWith("http")&&f.length?new Promise((C,R)=>{f[u.size&f.length-1].postMessage({rawUrl:r,...v}),h.resolve=C,h.reject=R}):mt(v)})().catch(C=>{if(u.delete(r),n==="image"&&m)return e.log.warn("Failed to fetch image base64, trying to use placeholder image",i),typeof m=="string"?m:m(s);throw C}),u.set(r,h)}return h.response}async function ce(e,t,r,n){if(!ue(e))return e;for(const[a,s]of ht(e,t))try{const i=await k(r,{url:s,requestType:n?"image":"text",responseType:"dataUrl"});e=e.replace(wt(a),`$1${i}$3`)}catch(i){r.log.warn("Failed to fetch css data url",a,i)}return e}function ue(e){return/url\((['"]?)([^'"]+?)\1\)/.test(e)}const fe=/url\((['"]?)([^'"]+?)\1\)/g;function ht(e,t){const r=[];return e.replace(fe,(n,a,s)=>(r.push([s,re(s,t)]),n)),r.filter(([n])=>!O(n))}function wt(e){const t=e.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return new RegExp(`(url\\(['"]?)(${t})(['"]?\\))`,"g")}const pt=["background-image","border-image-source","-webkit-border-image","-webkit-mask-image","list-style-image"];function yt(e,t){return pt.map(r=>{const n=e.getPropertyValue(r);return!n||n==="none"?null:((P||B)&&t.drawImageCount++,ce(n,null,t,!0).then(a=>{!a||n===a||e.setProperty(r,a,e.getPropertyPriority(r))}))}).filter(Boolean)}function bt(e,t){if(A(e)){const r=e.currentSrc||e.src;if(!O(r))return[k(t,{url:r,imageDom:e,requestType:"image",responseType:"dataUrl"}).then(n=>{n&&(e.srcset="",e.dataset.originalSrc=r,e.src=n||"")})];(P||B)&&t.drawImageCount++}else if(F(e)&&!O(e.href.baseVal)){const r=e.href.baseVal;return[k(t,{url:r,imageDom:e,requestType:"image",responseType:"dataUrl"}).then(n=>{n&&(e.dataset.originalSrc=r,e.href.baseVal=n||"")})]}return[]}function St(e,t){const{ownerDocument:r,svgDefsElement:n}=t,a=e.getAttribute("href")??e.getAttribute("xlink:href");if(!a)return[];const[s,i]=a.split("#");if(i){const o=`#${i}`,g=t.shadowRoots.reduce((u,l)=>u??l.querySelector(`svg ${o}`),r?.querySelector(`svg ${o}`));if(s&&e.setAttribute("href",o),n?.querySelector(o))return[];if(g)return n?.appendChild(g.cloneNode(!0)),[];if(s)return[k(t,{url:s,responseType:"text"}).then(u=>{n?.insertAdjacentHTML("beforeend",u)})]}return[]}function de(e,t){const{tasks:r}=t;E(e)&&((A(e)||te(e))&&r.push(...bt(e,t)),Ie(e)&&r.push(...St(e,t))),D(e)&&r.push(...yt(e.style,t)),e.childNodes.forEach(n=>{de(n,t)})}async function Et(e,t){const{ownerDocument:r,svgStyleElement:n,fontFamilies:a,fontCssTexts:s,tasks:i,font:o}=t;if(!(!r||!n||!a.size))if(o&&o.cssText){const g=G(o.cssText,t);n.appendChild(r.createTextNode(`${g}
|
|
8
8
|
`))}else{const g=Array.from(r.styleSheets).filter(l=>{try{return"cssRules"in l&&!!l.cssRules.length}catch(c){return t.log.warn(`Error while reading CSS rules from ${l.href}`,c),!1}});await Promise.all(g.flatMap(l=>Array.from(l.cssRules).map(async(c,d)=>{if(De(c)){let m=d+1;const p=c.href;let f="";try{f=await k(t,{url:p,requestType:"text",responseType:"text"})}catch(h){t.log.warn(`Error fetch remote css import from ${p}`,h)}const w=f.replace(fe,(h,b,y)=>h.replace(y,re(y,p)));for(const h of vt(w))try{l.insertRule(h,h.startsWith("@import")?m+=1:l.cssRules.length)}catch(b){t.log.warn("Error inserting rule from remote css import",{rule:h,error:b})}}}))),g.flatMap(l=>Array.from(l.cssRules)).filter(l=>Ae(l)&&ue(l.style.getPropertyValue("src"))&&oe(l.style.getPropertyValue("font-family"))?.some(c=>a.has(c))).forEach(l=>{const c=l,d=s.get(c.cssText);d?n.appendChild(r.createTextNode(`${d}
|
|
9
9
|
`)):i.push(ce(c.cssText,c.parentStyleSheet?c.parentStyleSheet.href:null,t).then(m=>{m=G(m,t),s.set(c.cssText,m),n.appendChild(r.createTextNode(`${m}
|
|
10
10
|
`))}))})}}const Ct=/(\/\*[\s\S]*?\*\/)/g,X=/((@.*?keyframes [\s\S]*?){([\s\S]*?}\s*?)})/gi;function vt(e){if(e==null)return[];const t=[];let r=e.replace(Ct,"");for(;;){const s=X.exec(r);if(!s)break;t.push(s[0])}r=r.replace(X,"");const n=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,a=new RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})","gi");for(;;){let s=n.exec(r);if(s)a.lastIndex=n.lastIndex;else if(s=a.exec(r),s)n.lastIndex=a.lastIndex;else break;t.push(s[0])}return t}const Nt=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,Tt=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function G(e,t){const{font:r}=t,n=r?r?.preferredFormat:void 0;return n?e.replace(Tt,a=>{for(;;){const[s,,i]=Nt.exec(a)||[];if(!i)return"";if(i===n)return`src: ${s};`}}):e}async function At(e,t){const r=await $(e,t);if(E(r.node)&&F(r.node))return r.node;const{ownerDocument:n,log:a,tasks:s,svgStyleElement:i,svgDefsElement:o,svgStyles:g,font:u,progress:l,autoDestruct:c,onCloneNode:d,onEmbedNode:m,onCreateForeignObjectSvg:p}=r;a.time("clone node");const f=await W(r.node,r,!0);if(i&&n){let S="";g.forEach((v,C)=>{S+=`${v.join(`,
|
|
11
11
|
`)} {
|
|
12
12
|
${C}
|
|
13
13
|
}
|
|
14
|
-
`}),i.appendChild(n.createTextNode(S))}a.timeEnd("clone node"),await d?.(f),u!==!1&&E(f)&&(a.time("embed web font"),await Et(f,r),a.timeEnd("embed web font")),a.time("embed node"),de(f,r);const w=s.length;let h=0;const b=async()=>{for(;;){const S=s.pop();if(!S)break;try{await S}catch(v){r.log.warn("Failed to run task",v)}l?.(++h,w)}};l?.(h,w),await Promise.all([...Array.from({length:4})].map(b)),a.timeEnd("embed node"),await m?.(f);const y=Dt(f,r);return o&&y.insertBefore(o,y.children[0]),i&&y.insertBefore(i,y.children[0]),c&>(r),await p?.(y),y}function Dt(e,t){const{width:r,height:n}=t,a=We(r,n,e.ownerDocument),s=a.ownerDocument.createElementNS(a.namespaceURI,"foreignObject");return s.setAttributeNS(null,"x","0%"),s.setAttributeNS(null,"y","0%"),s.setAttributeNS(null,"width","100%"),s.setAttributeNS(null,"height","100%"),s.append(e),a.appendChild(s),a}async function It(e,t){const r=await $(e,t),n=await At(r),a=qe(n,r.isEnable("removeControlCharacter"));r.autoDestruct||(r.svgStyleElement=se(r.ownerDocument),r.svgDefsElement=r.ownerDocument?.createElementNS(U,"defs"),r.svgStyles.clear());const s=T(a,n.ownerDocument);return await Ke(s,r)}async function kt(e,t){const r=await $(e,t),{log:n,quality:a,type:s,dpi:i}=r,o=await It(r);n.time("canvas to data url");let g=o.toDataURL(s,a);if(["image/png","image/jpeg"].includes(s)&&i&&ve&&Ne){const[u,l]=g.split(",");let c=0,d=!1;if(s==="image/png"){const y=Ee(l);y>=0?(c=Math.ceil((y+28)/3)*4,d=!0):c=33/3*4}else s==="image/jpeg"&&(c=18/3*4);const m=l.substring(0,c),p=l.substring(c),f=window.atob(m),w=new Uint8Array(f.length);for(let y=0;y<w.length;y++)w[y]=f.charCodeAt(y);const h=s==="image/png"?pe(w,i,d):ge(w,i),b=window.btoa(String.fromCharCode(...h));g=[u,",",b,p].join("")}return n.timeEnd("canvas to data url"),g}async function Ft(e,t){return kt(await $(e,{...t,type:"image/png"}))}function Rt(e,t){Ft(e,{quality:1,scale:2,style:{margin:"0"},features:{copyScrollbar:!1},filter:r=>r instanceof Element?!r.classList.contains("undp-viz-download-button"):!0}).then(r=>{const n=document.createElement("a");n.download=`${t}.png`,n.href=r,n.click()}).catch(r=>{console.error("Error generating image:",r)})}exports.imageDownload=Rt;
|
|
15
|
-
//# sourceMappingURL=imageDownload-
|
|
14
|
+
`}),i.appendChild(n.createTextNode(S))}a.timeEnd("clone node"),await d?.(f),u!==!1&&E(f)&&(a.time("embed web font"),await Et(f,r),a.timeEnd("embed web font")),a.time("embed node"),de(f,r);const w=s.length;let h=0;const b=async()=>{for(;;){const S=s.pop();if(!S)break;try{await S}catch(v){r.log.warn("Failed to run task",v)}l?.(++h,w)}};l?.(h,w),await Promise.all([...Array.from({length:4})].map(b)),a.timeEnd("embed node"),await m?.(f);const y=Dt(f,r);return o&&y.insertBefore(o,y.children[0]),i&&y.insertBefore(i,y.children[0]),c&>(r),await p?.(y),y}function Dt(e,t){const{width:r,height:n}=t,a=We(r,n,e.ownerDocument),s=a.ownerDocument.createElementNS(a.namespaceURI,"foreignObject");return s.setAttributeNS(null,"x","0%"),s.setAttributeNS(null,"y","0%"),s.setAttributeNS(null,"width","100%"),s.setAttributeNS(null,"height","100%"),s.append(e),a.appendChild(s),a}async function It(e,t){const r=await $(e,t),n=await At(r),a=qe(n,r.isEnable("removeControlCharacter"));r.autoDestruct||(r.svgStyleElement=se(r.ownerDocument),r.svgDefsElement=r.ownerDocument?.createElementNS(U,"defs"),r.svgStyles.clear());const s=T(a,n.ownerDocument);return await Ke(s,r)}async function kt(e,t){const r=await $(e,t),{log:n,quality:a,type:s,dpi:i}=r,o=await It(r);n.time("canvas to data url");let g=o.toDataURL(s,a);if(["image/png","image/jpeg"].includes(s)&&i&&ve&&Ne){const[u,l]=g.split(",");let c=0,d=!1;if(s==="image/png"){const y=Ee(l);y>=0?(c=Math.ceil((y+28)/3)*4,d=!0):c=33/3*4}else s==="image/jpeg"&&(c=18/3*4);const m=l.substring(0,c),p=l.substring(c),f=window.atob(m),w=new Uint8Array(f.length);for(let y=0;y<w.length;y++)w[y]=f.charCodeAt(y);const h=s==="image/png"?pe(w,i,d):ge(w,i),b=window.btoa(String.fromCharCode(...h));g=[u,",",b,p].join("")}return n.timeEnd("canvas to data url"),g}async function Ft(e,t){return kt(await $(e,{...t,type:"image/png"}))}function Rt(e,t){Ft(e,{quality:1,scale:2,style:{margin:"0"},features:{copyScrollbar:!1},filter:r=>r instanceof Element?!r.classList.contains("undp-viz-download-button")&&!r.classList.contains("undp-viz-zoom-buttons"):!0}).then(r=>{const n=document.createElement("a");n.download=`${t}.png`,n.href=r,n.click()}).catch(r=>{console.error("Error generating image:",r)})}exports.imageDownload=Rt;
|
|
15
|
+
//# sourceMappingURL=imageDownload-CkMwA7Cw.cjs.map
|