@arcgis/core 5.2.0-next.104 → 5.2.0-next.105

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.
Files changed (34) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/{ec5542d6ecc0622f7705.js → 1ec01fd6330d011c76d6.js} +1 -1
  3. package/assets/esri/core/workers/chunks/{c91905b5808b8049f96d.js → 2168ee64fd32f160dcf1.js} +3 -3
  4. package/assets/esri/core/workers/chunks/{ffca0b2333e760b66d3a.js → 262052dfaec3af8a58b9.js} +1 -1
  5. package/assets/esri/core/workers/chunks/33e583166ab3943ecf0e.js +1 -0
  6. package/assets/esri/core/workers/chunks/{2350f1eb70819cc06bb6.js → 4c00a46bf0345f99a9bb.js} +1 -1
  7. package/assets/esri/core/workers/chunks/91e545745706111f5f62.js +1 -0
  8. package/assets/esri/core/workers/chunks/c7b762bae945f383c723.js +1 -0
  9. package/assets/esri/core/workers/chunks/d0eb609a214d85d21ed5.js +1 -0
  10. package/assets/esri/core/workers/chunks/{23c4ec0bcbc83179013e.js → dc1b38f490142f7273ef.js} +1 -1
  11. package/chunks/GlobalIllumination.glsl.js +4 -4
  12. package/config.js +1 -1
  13. package/kernel.js +1 -1
  14. package/package.json +5 -5
  15. package/support/revision.js +1 -1
  16. package/symbols/TextSymbol3DLayer.js +1 -1
  17. package/symbols/cim/TextRasterizer.js +1 -1
  18. package/symbols/cim/richTextUtils.js +1 -1
  19. package/symbols/support/Symbol3DTextBorder.js +2 -0
  20. package/views/2d/engine/webgl/GlyphWorker.js +1 -1
  21. package/views/2d/engine/webgl/mesh/templates/shapingUtils.js +1 -1
  22. package/views/2d/layers/support/annodime/DimensionInfo.js +1 -1
  23. package/views/2d/layers/support/annodime/MatcherGeometryOverride.js +1 -1
  24. package/views/2d/layers/support/annodime/dimensionUtils.js +1 -1
  25. package/views/3d/support/QualityProfile.js +1 -1
  26. package/views/3d/webgl-engine/lib/BufferGeometry.js +1 -1
  27. package/views/3d/webgl-engine/lib/BufferObject3D.js +1 -1
  28. package/views/3d/webgl-engine/lib/Intersector.js +1 -1
  29. package/views/3d/webgl-engine/lib/TextRenderParameters.js +1 -1
  30. package/views/3d/webgl-engine/lib/TextRenderer.js +1 -1
  31. package/assets/esri/core/workers/chunks/3a8f6010a9f06a2457ae.js +0 -1
  32. package/assets/esri/core/workers/chunks/a191ddb3b59ec1a7d818.js +0 -1
  33. package/assets/esri/core/workers/chunks/b24e1c901f7fda2a62ca.js +0 -1
  34. package/assets/esri/core/workers/chunks/fbbc5f551115787363d2.js +0 -1
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6678],{6371(t,e,r){r.d(e,{y:()=>n});const i=new(r(32488).A);function n(t,e=!0){if(!i.hasBidiChar(t))return[t,!1,{...i}];let r;r="rtl"===i.checkContextual(t)?"IDNNN":"ICNNN";const n=e?"VLYSN":"VLYNN";return[i.bidiTransform(t,r,n),!0,{...i}]}},40804(t,e,r){function i(t,e=0){let r=0;for(let i=0;i<4;i++)r+=t[e+i]*n[i];return r}r(34727);const n=[1/256,1/65536,1/16777216,1/4294967296];i(new Uint8ClampedArray([255,255,255,255])),i(new Uint8ClampedArray([255,255,255,0]))},18370(t,e,r){r.d(e,{z:()=>n});class i{constructor(t){this._import=t,this.module=null,this._promise=null}getImportPromise(){return null==this._promise&&(this._promise=this._import().then(async t=>(this.module=t,t))),this._promise}}function n(t){return new i(t)}},56512(t,e,r){function i(t){let e,r,i=[],n=!1;return function(...s){return n&&e===this&&function(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;++r)if(t[r]!==e[r])return!1;return!0}(s,i)||(r=t.apply(this,s),e=this,i=s,n=!0),r}}r.d(e,{B:()=>i})},31411(t,e,r){r.d(e,{GS:()=>w,gh:()=>I});var i=r(49186),n=r(56512),s=r(65864),o=r(4305),a=r(50954),l=r(52006),c=r(49663),h=r(46068),u=r(15507);const f=1e-6,m=[0,0];function d(t){return{maxSegmentLength:t.maxSegmentLength??0,maxDeviation:t.maxDeviation??0,maxSegmentsPerCurve:t.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(t.minSegmentsPerCurve??1,1)}}class p{constructor(t,e){this.curveStart=t,this.curveEnd=e,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(t,e){this.tStart=0,this.arcStart=t,this.tEndStack.push(1),this.arcEndStack.push(e)}splitAt(t){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(t),this.arcEndStack.push(this.interpolate(t))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(t,{maxDeviation:e,maxSegmentLength:r,maxSegmentsPerCurve:i,minSegmentsPerCurve:n}){const s=r*r,o=e*e,a=1/i,l=this.interpolate(0),c=this.interpolate(1);(0,u.kb)(this.curveStart,l)>f&&t.push(l),this.initialize(l,c);const h=1/n;for(let t=n-1;t>0;t--){const e=t*h;this.pop(),this.splitAt(e)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<a||(0===s||!isFinite(s)||(0,u.kb)(this.arcStart,this.arcEnd)<s)&&(0===o||!isFinite(o)||this.getDeviation2()<o)?(t.push(this.arcEnd),this.next()):this.splitInHalf();return(0,u.kb)(this.curveEnd,c)>f&&t.push([...this.curveEnd]),t}}class y extends p{constructor(t,e){const[r,i,n]=e.b;super(t,r),this._controlPointsStack=[],this._curveControlPoints=[i,n],this._arcControlPoints=[i,n],this._controlPointsStack.push(this._arcControlPoints)}splitAt(t){const{arcStart:e,arcEnd:r,tStart:i,tEnd:n}=this,[s,o]=this._arcControlPoints,a=(t-i)/(n-i),l=(0,u.RS)([],e,s,a),c=(0,u.RS)(m,s,o,a),h=(0,u.RS)([],o,r,a),f=(0,u.RS)([],l,c,a),d=(0,u.RS)([],c,h,a),p=(0,u.RS)([],f,d,a);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([d,h]),this.tEndStack.push(t),this.arcEndStack.push(p),this._arcControlPoints[0]=l,this._arcControlPoints[1]=f,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(t){const{curveStart:e,curveEnd:r}=this,[i,n]=this._curveControlPoints;return(0,o.B4)(e,i,n,r,t)}getDeviation2(){const{arcStart:t,arcEnd:e}=this,[r,i]=this._arcControlPoints;return Math.max((0,u.yE)(r,t,e),(0,u.yE)(i,t,e))}}class g extends p{constructor(t,e){const[r]=e.a;super(t,r),this._derivedEllipse=(0,h.SW)(t,e)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(t){return(0,h.Uk)(this._derivedEllipse,t)}getDeviation2(){return(0,u.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function S(t,e,r,{cx:i,cy:n,radius:s,thetaStart:o,thetaEnd:a,isInvalid:l},{maxDeviation:c,maxSegmentLength:h,maxSegmentsPerCurve:m,minSegmentsPerCurve:d}){if(l)return t.push([...r]),t;const p=2*s,y=[i+s*Math.cos(o),n+s*Math.sin(o)],g=[i+s*Math.cos(a),n+s*Math.sin(a)];(0,u.kb)(e,y)>f&&t.push(y);const S=Math.abs(a-o),M=h>0&&h<p?2*Math.asin(h/p):S,C=c>0&&c<=s?2*Math.acos(1-c/s):S,b=Math.min(M,C),x=Math.min(m,Math.max(d,Math.ceil(Math.abs(S/b)))),_=1/x;for(let e=1;e<x;e++){const r=e*_,l=o*(1-r)+a*r;t.push([i+s*Math.cos(l),n+s*Math.sin(l)])}return t.push(g),(0,u.kb)(r,g)>f&&t.push([...r]),t}function M(t,e,r,i){return new y(e,r).densify(t,i)}function C(t,e,r,i){const n=(0,a.pM)(e,r),[s]=r.c;return S(t,e,s,n,i)}function b(t,e,r,i){const n=(0,c.io)(e,r),[s]=r.a;return S(t,e,s,n,i)}function x(t,e,r,i){const[n,s,o,a,l,c,h]=r.a;return 0===c||0===h?(t.push([...n]),t):new g(e,r).densify(t,i)}function _(t,e,r,i){return(0,l.Xq)(r)?(t.push([...r]),t):(0,l.n1)(r)?M(t,e,r,i):(0,l.aO)(r)?C(t,e,r,i):(0,l.DA)(r)?b(t,e,r,i):x(t,e,r,i)}function w(t,e={}){if(!(0,l.Ed)(t))return t;const r=d(e),i=(0,l.FD)(t),n=[];for(const t of i){const e=[];for(let i=0;i<t.length-1;i++){const n=i+1,s=[...(0,l.yP)(t[i])];0===i&&e.push(s),_(e,s,t[n],r)}n.push(e)}return"curvePaths"in t?{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},paths:n,spatialReference:t.spatialReference}:{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},rings:n,spatialReference:t.spatialReference}}const k=(0,n.B)(t=>({maxDeviation:0,maxSegmentLength:100*t,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function I(t,e,n){const o=new Set(e);return await async function(t,e,n){let s=null;for(const o of t)if(o&&(0,l.Ed)(o)&&null==o.spatialReference.xyTolerance&&(0,l.V8)(o,e)){const t=o.spatialReference;if(!t)throw new i.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const e=P(t);if(n.has(e))o.spatialReference=n.get(e);else{s||(s=await Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(3299),r.e(1550)]).then(()=>r(78125)));const a=s.fromSpatialReference(t),l=a?.getTolerance();if(null==l)throw new i.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const c=o.spatialReference.clone();c.read({xyTolerance:l}),o.spatialReference=c,n.set(e,c)}}}(t,o,n),t.map(t=>{if(!t||!(0,l.Ed)(t))return t;const r=t.spatialReference.xyTolerance;if(null==r)return t;const i=k(r);return(0,s.rS)(function(t,e,r){if(!(0,l.Ed)(t))return t;const i=new Set(e),n=d(r),s=(0,l.FD)(t),o=[];let a=!1;for(const t of s){const e=[];for(let r=0;r<t.length-1;r++){const s=r+1,o=[...(0,l.yP)(t[r])];0===r&&e.push(o);const c=t[s];(0,l.Xq)(c)?e.push([...c]):(0,l.n1)(c)&&!i.has("cubic-bezier")?M(e,o,c,n):(0,l.aO)(c)&&!i.has("circular-arc")?C(e,o,c,n):(0,l.DA)(c)&&!i.has("elliptic-arc")?b(e,o,c,n):(0,l.wY)(c)&&!i.has("elliptic-arc")?x(e,o,c,n):(e.push((0,l.tk)(c)),a=!0)}o.push(e)}return"curvePaths"in t?{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},spatialReference:t.spatialReference,...a?{curvePaths:o}:{paths:o}}:{hasZ:t.hasZ,hasM:t.hasM,spatialReference:t.spatialReference,...a?{curveRings:o}:{rings:o}}}(t,e,i))})}function P(t){if(null!=t.wkid)return`${t.wkid}`;if(null!=t.wkt)return t.wkt;const e="toJSON"in t&&"function"==typeof t.toJSON?t.toJSON():t;return JSON.stringify(e)}},72726(t,e,r){r.d(e,{Rj:()=>F,mx:()=>D,IT:()=>A,QF:()=>O});var i=r(57582),n=(r(44208),r(4718)),s=r(53966),o=r(34727),a=r(93687),l=r(90629),c=r(36745),h=r(19419),u=r(537),f=r(12359),m=(r(12176),r(60408)),d=r(35833);class p{applyColorSubstitution(t,e){if(!e)return t;this._rasterizationCanvas||(this._rasterizationCanvas=document.createElement("canvas"));const{width:r,height:i}=t,n=this._rasterizationCanvas,s=n.getContext("2d",{willReadFrequently:!0});t!==n&&(n.width=r,n.height=i,s.drawImage(t,0,0,r,i));const o=s.getImageData(0,0,r,i).data;if(e)for(const t of e)if(t&&t.oldColor&&4===t.oldColor.length&&t.newColor&&4===t.newColor.length){const[e,r,i,n]=t.oldColor,[s,a,l,c]=t.newColor;if(e===s&&r===a&&i===l&&n===c)continue;for(let t=0;t<o.length;t+=4)e===o[t]&&r===o[t+1]&&i===o[t+2]&&n===o[t+3]&&(o[t]=s,o[t+1]=a,o[t+2]=l,o[t+3]=c)}const a=new ImageData(o,r,i);return s.putImageData(a,0,0),n}tintImageData(t,e){if(!e||e.length<4)return t;this._rasterizationCanvas||(this._rasterizationCanvas=document.createElement("canvas"));const{width:r,height:i}=t,n=this._rasterizationCanvas,s=n.getContext("2d",{willReadFrequently:!0});t!==n&&(n.width=r,n.height=i,s.drawImage(t,0,0,r,i));const o=s.getImageData(0,0,r,i),a=new Uint8Array(o.data),l=[e[0]/255,e[1]/255,e[2]/255,e[3]/255];for(let t=0;t<a.length;t+=4)a[t]*=l[0],a[t+1]*=l[1],a[t+2]*=l[2],a[t+3]*=l[3];const c=new ImageData(new Uint8ClampedArray(a.buffer),r,i);return s.putImageData(c,0,0),n}}var y=r(26937),g=r(98939),S=r(28076);function M(t){const e=t.getFrame(0);if(e instanceof HTMLImageElement||e instanceof HTMLCanvasElement)return e;const r=document.createElement("canvas");r.width=t.width,r.height=t.height;const i=r.getContext("2d");return e instanceof ImageData?i.putImageData(e,0,0):i.drawImage(e,0,0),r}function C(t,e=0){if(0===e)return t;const r=Math.cos(e),i=Math.sin(e),[n,s]=t;return[n*r+s*-i,n*i+s*r]}var b=r(44589);class x{constructor(t=0,e=0,r=0,i=0){this.x=t,this.y=e,this.width=r,this.height=i}static fromExtent(t){return new x(t.xmin,-t.ymax,t.xmax-t.xmin,t.ymax-t.ymin)}get isEmpty(){return this.width<=0||this.height<=0}union(t){this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.width=Math.max(this.width,t.width),this.height=Math.max(this.height,t.height)}}var _=r(69754);function w(t){return`rgb(${t.slice(0,3).toString()})`}function k(t){return`rgba(${t.slice(0,3).toString()},${t[3]})`}r(5760);class I{constructor(t){t&&(this._textRasterizationCanvas=t)}rasterizeRichText(t,e){this._textRasterizationCanvas||(this._textRasterizationCanvas=document.createElement("canvas"));const r=this._textRasterizationCanvas,i=r.getContext("2d",{willReadFrequently:!0}),n=this._layoutRichTextRuns(i,t,e);this._parameters=e,this._lineHeight=Math.max(...n.map(t=>t.height),this._measureLineHeight(e));const{decoration:s,weight:o}=e.font;this._lineThroughWidthOffset=s&&"line-through"===s?.1*this._lineHeight:0;const a=null!=e.backgroundColor||null!=e.borderLine,l=a?8:0,c=Math.max(...n.map(t=>t.width),0)+2*l,h=n.reduce((t,e)=>t+e.height,0)+2*l;if(r.width=c+2*this._lineThroughWidthOffset,r.height=h,0===r.width||0===r.height)return r.width=r.height=1,{size:[0,0],image:new Uint32Array(0),sdf:!1,simplePattern:!1,anchorX:0,anchorY:0,canvas:r};this._renderedWidth=c,this._renderedHeight=h,this._renderedOutlineSize=(e.outline.size||0)*e.pixelRatio,this._renderedHaloSize=(e.halo.size||0)*e.pixelRatio,this._lineThroughWidthOffset*=e.pixelRatio;const u=(e.outline&&e.outline.color)??[0,0,0,0],f=e.color??[0,0,0,0],m=e.halo&&e.halo.color?e.halo.color:[0,0,0,0];this._fillStyle=k(f),this._outlineStyle=k(u),this._haloStyle=w(m);const d=this._renderedOutlineSize,p=this._renderedHaloSize;i.save(),i.clearRect(0,0,r.width,r.height);const y=l*e.pixelRatio,g=v("left",this._renderedWidth-2*y,p+d)+y,S=p+d+y;let M=this._lineThroughWidthOffset,C=0;if(a){i.save();const t=e.backgroundColor??[0,0,0,0],n=e.borderLine?.color??[0,0,0,0],s=2*(e.borderLine?.size??0);i.fillStyle=k(t),i.strokeStyle=k(n),i.lineWidth=s,i.fillRect(0,0,r.width,r.height),i.strokeRect(0,0,r.width,r.height),i.restore()}C+=S,M+=g,p>0&&this._renderRichTextOutline(i,n,M,C,e,this._renderedHaloSize+this._renderedOutlineSize),d>0&&this._renderRichTextOutline(i,n,M,C,e,this._renderedOutlineSize);for(const t of n){let r=M;"center"===e.horizontalAlignment?r+=(this._renderedWidth-2*y-t.width)/2:"right"===e.horizontalAlignment&&(r+=this._renderedWidth-2*y-t.width-p-d);let n=r;for(const e of t.segments)P(i,e.parameters,"left",e.characterSpacing),p>0&&(i.globalCompositeOperation="destination-out",i.fillStyle="rgb(0, 0, 0)",this._renderRichTextSegment(i,e,n,C,"fill"),i.globalCompositeOperation="source-over"),i.fillStyle=k(e.parameters.color??f),this._renderRichTextSegment(i,e,n,C,"fill"),n+=e.width;if(s&&"none"!==s){const e=this._renderedWidth;this._renderedWidth=t.width,i.textAlign="left",this._renderDecoration(i,r,C,s,o),this._renderedWidth=e}C+=t.height}i.restore();const b=this._renderedWidth+2*this._lineThroughWidthOffset,x=this._renderedHeight,_=i.getImageData(0,0,b,x),I=new Uint8Array(_.data);if(e.premultiplyColors){let t;for(let e=0;e<I.length;e+=4)t=I[e+3]/255,I[e]=I[e]*t,I[e+1]=I[e+1]*t,I[e+2]=I[e+2]*t}let z,R;switch(e.horizontalAlignment){case"left":z=-.5;break;case"right":z=.5;break;default:z=0}switch(e.verticalAlignment){case"bottom":R=-.5;break;case"top":R=.5;break;case"baseline":R=-1/6;break;default:R=0}return{size:[b,x],image:new Uint32Array(I.buffer),sdf:!1,simplePattern:!1,anchorX:z,anchorY:R,canvas:r}}rasterizeText(t,e){this._textRasterizationCanvas||(this._textRasterizationCanvas=document.createElement("canvas"));const r=this._textRasterizationCanvas,i=r.getContext("2d",{willReadFrequently:!0});P(i,e),this._parameters=e,this._textLines=t.split(/\r?\n/),this._lineHeight=this._computeLineHeight();const{decoration:n,weight:s}=e.font;this._lineThroughWidthOffset=n&&"line-through"===n?.1*this._lineHeight:0;const o=null!=e.backgroundColor||null!=e.borderLine,a=o?8:0,l=this._computeTextWidth(i,e)+2*a,c=this._lineHeight*this._textLines.length+2*a;if(r.width=l+2*this._lineThroughWidthOffset,r.height=c,0===r.width||0===r.height)return r.width=r.height=1,{size:[0,0],image:new Uint32Array(0),sdf:!1,simplePattern:!1,anchorX:0,anchorY:0,canvas:r};this._renderedLineHeight=Math.round(this._lineHeight),this._renderedOutlineSize=(e.outline.size||0)*e.pixelRatio,this._renderedHaloSize=(e.halo.size||0)*e.pixelRatio,this._renderedWidth=l,this._renderedHeight=c,this._lineThroughWidthOffset*=e.pixelRatio;const h=(e.outline&&e.outline.color)??[0,0,0,0],u=e.color??[0,0,0,0],f=e.halo&&e.halo.color?e.halo.color:[0,0,0,0];this._fillStyle=k(u),this._outlineStyle=k(h),this._haloStyle=w(f);const m=this._renderedLineHeight,d=this._renderedOutlineSize,p=this._renderedHaloSize;i.save(),i.clearRect(0,0,r.width,r.height),P(i,e);const y=a*e.pixelRatio,g=v(i.textAlign,this._renderedWidth-2*y,this._renderedHaloSize+this._renderedOutlineSize)+y,S=p+d+y,M=p>0;let C=this._lineThroughWidthOffset,b=0;if(o){i.save();const t=e.backgroundColor??[0,0,0,0],n=e.borderLine?.color??[0,0,0,0],s=2*(e.borderLine?.size??0);i.fillStyle=k(t),i.strokeStyle=k(n),i.lineWidth=s,i.fillRect(0,0,r.width,r.height),i.strokeRect(0,0,r.width,r.height),i.restore()}M&&this._renderHalo(i,g,S,C,b,e),d>0&&this._renderOutline(i,g,S,C,b,e),b+=S,C+=g;for(const t of this._textLines)M?(i.globalCompositeOperation="destination-out",i.fillStyle="rgb(0, 0, 0)",i.fillText(t,C,b),i.globalCompositeOperation="source-over",i.fillStyle=this._fillStyle,i.fillText(t,C,b)):(i.fillStyle=this._fillStyle,i.fillText(t,C,b)),n&&"none"!==n&&this._renderDecoration(i,C,b,n,s),b+=m;i.restore();const x=this._renderedWidth+2*this._lineThroughWidthOffset,_=this._renderedHeight,I=i.getImageData(0,0,x,_),z=new Uint8Array(I.data);if(e.premultiplyColors){let t;for(let e=0;e<z.length;e+=4)t=z[e+3]/255,z[e]=z[e]*t,z[e+1]=z[e+1]*t,z[e+2]=z[e+2]*t}let R,L;switch(e.horizontalAlignment){case"left":R=-.5;break;case"right":R=.5;break;default:R=0}switch(e.verticalAlignment){case"bottom":L=-.5;break;case"top":L=.5;break;case"baseline":L=-1/6;break;default:L=0}return{size:[x,_],image:new Uint32Array(z.buffer),sdf:!1,simplePattern:!1,anchorX:R,anchorY:L,canvas:r}}_renderHalo(t,e,r,i,n,s){const o=this._renderedWidth,a=this._renderedHeight;this._outlineRasterizationCanvas||(this._outlineRasterizationCanvas=document.createElement("canvas")),this._outlineRasterizationCanvas.width=o,this._outlineRasterizationCanvas.height=a;const l=this._outlineRasterizationCanvas,c=l.getContext("2d");c.clearRect(0,0,o,a),P(c,s);const{decoration:h,weight:u}=s.font;c.fillStyle=this._haloStyle,c.strokeStyle=this._haloStyle,c.lineJoin="round",this._renderOutlineNative(c,e,r,h,u,this._renderedHaloSize+this._renderedOutlineSize),t.globalAlpha=this._parameters.halo.color[3],t.drawImage(l,0,0,o,a,i,n,o,a),t.globalAlpha=1}_renderOutline(t,e,r,i,n,s){const o=this._renderedWidth,a=this._renderedHeight;this._outlineRasterizationCanvas||(this._outlineRasterizationCanvas=document.createElement("canvas")),this._outlineRasterizationCanvas.width=o,this._outlineRasterizationCanvas.height=a;const l=this._outlineRasterizationCanvas,c=l.getContext("2d");c.clearRect(0,0,o,a),P(c,s);const{decoration:h,weight:u}=s.font;c.fillStyle=this._outlineStyle,c.strokeStyle=this._outlineStyle,c.lineJoin="round",this._renderOutlineNative(c,e,r,h,u,this._renderedOutlineSize),t.globalAlpha=this._parameters.outline.color[3],t.drawImage(l,0,0,o,a,i,n,o,a),t.globalAlpha=1}_renderOutlineNative(t,e,r,i,n,s){const o=this._renderedLineHeight;for(const a of this._textLines){const l=2*s,c=5,h=.1;for(let s=0;s<c;s++){const o=(1-(c-1)*h+s*h)*l;t.lineWidth=o,t.strokeText(a,e,r),i&&"none"!==i&&this._renderDecoration(t,e,r,i,n,o)}r+=o}}computeTextSize(t,e){this._textRasterizationCanvas||(this._textRasterizationCanvas=document.createElement("canvas"));const r=this._textRasterizationCanvas,i=r.getContext("2d");P(i,e),this._parameters=e,this._textLines=t.split(/\r?\n/),this._lineHeight=this._computeLineHeight();const n=this._computeTextWidth(i,e),s=this._lineHeight*this._textLines.length;return r.width=n,r.height=s,[n*e.pixelRatio,s*e.pixelRatio]}computeRichTextSize(t,e){this._textRasterizationCanvas||(this._textRasterizationCanvas=document.createElement("canvas"));const r=this._textRasterizationCanvas.getContext("2d"),i=this._layoutRichTextRuns(r,t,e),n=Math.max(...i.map(t=>t.width),0),s=i.reduce((t,e)=>t+e.height,0);return[n*e.pixelRatio,s*e.pixelRatio]}_renderRichTextOutline(t,e,r,i,n,s){const o=this._renderedWidth,a=this._renderedHeight;this._outlineRasterizationCanvas||(this._outlineRasterizationCanvas=document.createElement("canvas")),this._outlineRasterizationCanvas.width=o,this._outlineRasterizationCanvas.height=a;const l=this._outlineRasterizationCanvas,c=l.getContext("2d");c.clearRect(0,0,o,a),c.fillStyle=s===this._renderedOutlineSize?this._outlineStyle:this._haloStyle,c.strokeStyle=c.fillStyle,c.lineJoin="round";let h=i;for(const t of e){let e=r;"center"===n.horizontalAlignment?e+=(this._renderedWidth-t.width)/2:"right"===n.horizontalAlignment&&(e+=this._renderedWidth-t.width-this._renderedHaloSize-this._renderedOutlineSize);let i=e;for(const e of t.segments){P(c,e.parameters,"left",e.characterSpacing);const t=2*s,r=5,n=.1;for(let s=0;s<r;s++){const o=1-(r-1)*n+s*n;c.lineWidth=o*t,this._renderRichTextSegment(c,e,i,h,"stroke")}i+=e.width}if(n.font.decoration&&"none"!==n.font.decoration){const r=this._renderedWidth;this._renderedWidth=t.width,c.textAlign="left",this._renderDecoration(c,e,h,n.font.decoration,n.font.weight,2*s),this._renderedWidth=r}h+=t.height}s===this._renderedOutlineSize?t.globalAlpha=this._parameters.outline.color[3]:t.globalAlpha=this._parameters.halo.color[3],t.drawImage(l,0,0,o,a,this._lineThroughWidthOffset,0,o,a),t.globalAlpha=1}_layoutRichTextRuns(t,e,r){const i=[{segments:[],width:0,height:this._measureLineHeight(r)}];for(const n of e){const e=n.text.split(/\r?\n/),s=z(r,n);for(let o=0;o<e.length;o++){const a=e[o],l=i[i.length-1];if(a.length>0){const e=this._measureRichTextSegmentWidth(t,a,s,n.characterSpacing);l.segments.push({text:a,width:e,parameters:s,characterSpacing:n.characterSpacing}),l.width+=e,l.height=Math.max(l.height,this._measureLineHeight(s))}o<e.length-1&&i.push({segments:[],width:0,height:this._measureLineHeight(r)})}}return i}_measureTextWidthWithSpacing(t,e,r,i){const n=this._parameters,s=this._textLines;this._parameters=r,this._textLines=[e],P(t,r,"left",i);const o=this._computeTextWidth(t,r);return this._parameters=n,this._textLines=s,o}_measureRichTextSegmentWidth(t,e,r,i){return this._measureTextWidthWithSpacing(t,e,r,i)}_renderRichTextSegment(t,e,r,i,n){"fill"===n?t.fillText(e.text,r,i):t.strokeText(e.text,r,i)}_measureLineHeight(t){const e=this._parameters;this._parameters=t;const r=this._computeLineHeight();return this._parameters=e,r}_computeTextWidth(t,e){let r=0;for(const e of this._textLines)r=Math.max(r,t.measureText(e).width);const i=e.font;return("italic"===i.style||"oblique"===i.style||"string"==typeof i.weight&&("bold"===i.weight||"bolder"===i.weight)||"number"==typeof i.weight&&i.weight>600)&&(r+=.3*t.measureText("w").width),r+=2*(0,l.Lz)(this._parameters.halo.size),Math.round(r)}_computeLineHeightBase(){return 1.275*this._parameters.size}_computeLineHeight(){let t=this._computeLineHeightBase();const e=this._parameters.font.decoration;return e&&"underline"===e&&(t*=1.3),Math.round(t+2*(0,l.Lz)(this._parameters.halo.size))}_renderDecoration(t,e,r,i,n,s){let o=.9*this._lineHeight;const a="bold"===n?.06:"bolder"===n?.09:.04;switch(t.textAlign){case"center":e-=this._renderedWidth/2;break;case"right":e-=this._renderedWidth}const l=t.textBaseline;if("underline"===i)switch(o=.9*this._computeLineHeightBase(),l){case"top":r+=o;break;case"middle":r+=o/2}else if("line-through"===i)switch(l){case"top":r+=o/1.5;break;case"middle":r+=o/3}const c=s?1.5*s:Math.ceil(o*a);t.save(),t.beginPath(),t.strokeStyle=t.fillStyle,t.lineWidth=c,t.moveTo(e-this._lineThroughWidthOffset,r),t.lineTo(e+this._renderedWidth+2*this._lineThroughWidthOffset,r),t.stroke(),t.restore()}}function P(t,e,r,i=0){const n=Math.max(e.size,.5),s=e.font,o=`${s.style} ${s.weight} ${(0,l.Lz)(n).toFixed(1)}px ${s.family}, sans-serif`;t.font=o,t.textBaseline="top",function(t,e){t.letterSpacing=e>0?`${e}em`:"0px"}(t,i);let a=r??"left";if(!r)switch(e.horizontalAlignment){case"left":default:a="left";break;case"right":a="right";break;case"center":a="center"}t.textAlign=a}function z(t,e){return{...t,color:e.color??t.color,font:{...t.font,family:e.font.family??t.font.family,style:e.font.style??t.font.style,weight:e.font.weight??t.font.weight},size:e.fontSize}}function v(t,e,r){return"center"===t?.5*e:"right"===t?e-r:r}var R=r(93397);r(75434),r(69221);const L=Math.PI/180,T=()=>s.A.getLogger("esri.symbols.cim.CIMSymbolDrawHelper");class A{constructor(t){this._t=t}static createIdentity(){return new A([1,0,0,0,1,0])}clone(){const t=this._t;return new A(t.slice())}transform(t){const e=this._t;return[e[0]*t[0]+e[1]*t[1]+e[2],e[3]*t[0]+e[4]*t[1]+e[5]]}static createScale(t,e){return new A([t,0,0,0,e,0])}scale(t,e){const r=this._t;return r[0]*=t,r[1]*=t,r[2]*=t,r[3]*=e,r[4]*=e,r[5]*=e,this}scaleRatio(){return Math.sqrt(this._t[0]*this._t[0]+this._t[1]*this._t[1])}static createTranslate(t,e){return new A([0,0,t,0,0,e])}translate(t,e){const r=this._t;return r[2]+=t,r[5]+=e,this}static createRotate(t){const e=Math.cos(t),r=Math.sin(t);return new A([e,-r,0,r,e,0])}rotate(t){return A.multiply(this,A.createRotate(t),this)}angle(){const t=this._t[0],e=this._t[3],r=Math.sqrt(t*t+e*e);return[t/r,e/r]}static multiply(t,e,r){const i=t._t,n=e._t,s=i[0]*n[0]+i[3]*n[1],o=i[1]*n[0]+i[4]*n[1],a=i[2]*n[0]+i[5]*n[1]+n[2],l=i[0]*n[3]+i[3]*n[4],c=i[1]*n[3]+i[4]*n[4],h=i[2]*n[3]+i[5]*n[4]+n[5],u=r._t;return u[0]=s,u[1]=o,u[2]=a,u[3]=l,u[4]=c,u[5]=h,r}invert(){const t=this._t;let e=t[0]*t[4]-t[1]*t[3];if(0===e)return new A([0,0,0,0,0,0]);e=1/e;const r=(t[1]*t[5]-t[2]*t[4])*e,i=(t[2]*t[3]-t[0]*t[5])*e,n=t[4]*e,s=-t[1]*e,o=-t[3]*e,a=t[0]*e;return new A([n,s,r,o,a,i])}}class E{constructor(t,e){this._resourceManager=t,this._transfos=[],this._sizeTransfos=[],this._textScaling=[],this._geomUnitsPerPoint=1,this._placementPool=new a.A(()=>new g.W,void 0,void 0,100),this._earlyReturn=!1,this._mapRotation=0,this._transfos.push(e||A.createIdentity()),this._sizeTransfos.push(e?e.scaleRatio():1),this._textScaling.push(1)}setTransform(t,e){this._transfos=[t||A.createIdentity()],this._sizeTransfos=[e||(t?t.scaleRatio():1)],this._textScaling=[1]}setGeomUnitsPerPoint(t){this._geomUnitsPerPoint=t}transformPt(t){return this._transfos[this._transfos.length-1].transform(t)}transformSize(t){return t*this._sizeTransfos[this._sizeTransfos.length-1]}scaleText(t){return t*this._textScaling[this._textScaling.length-1]}reverseTransformPt(t){return this._transfos[this._transfos.length-1].invert().transform(t)}reverseTransformSize(t){return t/this._sizeTransfos[this._sizeTransfos.length-1]}reverseTransformScalar(t){return t/this._transfos[this._transfos.length-1].scaleRatio()}reverseScaleText(t){return t/this._textScaling[this._textScaling.length-1]}getTransformAngle(){return this._transfos[this._transfos.length-1].angle()}geomUnitsPerPoint(){return this.isEmbedded()?1:this._geomUnitsPerPoint}prevGeomUnitsPerPoint(){return this._transfos.length>2?1:this._geomUnitsPerPoint}isEmbedded(){return this._transfos.length>1}back(){return this._transfos[this._transfos.length-1]}push(t,e=!1,r=1){const i=e?t.scaleRatio():1;A.multiply(t,this.back(),t),this._transfos.push(t),this._sizeTransfos.push(this._sizeTransfos[this._sizeTransfos.length-1]*i),this._textScaling.push(this._textScaling[this._textScaling.length-1]*r)}pop(){this._transfos.splice(-1,1),this._sizeTransfos.splice(-1,1),this._textScaling.splice(-1,1)}drawSymbol(t,e,r){if(t)switch(t.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":this.drawMultiLayerSymbol(t,e);break;case"CIMTextSymbol":this.drawTextSymbol(t,e,r)}}drawMultiLayerSymbol(t,e){if(!t||!e)return;const r=t.symbolLayers;if(!r)return;const i=t.effects;if(i&&i.length>0){const t=this.executeEffects(i,e);if(t){let e=t.next();for(;e;)this.drawSymbolLayers(r,e.asJSON()),e=t.next()}}else this.drawSymbolLayers(r,e)}executeEffects(t,e){const r=this.geomUnitsPerPoint(),i=(0,R.ll)(t);let n=new d.kT(c.z.fromJSONCIM(e));for(const s of t){const t=(0,y.A)(s);t&&(n=t.execute(n,s,{geomUnitsPerPoint:r,tileKey:null,maxInflateSize:i,scale:null,spatialReference:e.spatialReference,preventClipping:!1}))}return n}drawSymbolLayers(t,e){let r=t.length;for(;r--;){const i=t[r];if(!i||!1===i.enable)continue;const n=i.effects;if(n&&n.length>0){const t=this.executeEffects(n,e);if(t){let e=null;for(;(e=t.next())&&(this.drawSymbolLayer(i,e.asJSON()),!this._earlyReturn););}}else this.drawSymbolLayer(i,e);if(this._earlyReturn)return}}drawSymbolLayer(t,e){switch(t.type){case"CIMSolidFill":this.drawSolidFill(e,t.color,t.path);break;case"CIMHatchFill":this.drawHatchFill(e,t);break;case"CIMPictureFill":this.drawPictureFill(e,t);break;case"CIMGradientFill":this.drawGradientFill(e,t);break;case"CIMSolidStroke":this.drawSolidStroke(e,t.color,t.width,t.capStyle,t.joinStyle,t.miterLimit,t.path);break;case"CIMPictureStroke":this.drawPictureStroke(e,t);break;case"CIMGradientStroke":this.drawGradientStroke(e,t);break;case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":this.drawMarkerLayer(t,e)}}drawHatchFill(t,e){const r=function(t,e,r){let i=(0,R.$w)(t.separation,S.D.CIMHatchFill.separation)*r,n=(0,R.$w)(t.rotation);if(0===i)return null;i<0&&(i=-i);let s=0;const o=.5*i;for(;s>o;)s-=i;for(;s<-o;)s+=i;const a=(0,h.vt)();(0,u.Rg)(a,e),a[0]-=o,a[1]-=o,a[2]+=o,a[3]+=o;const l=[[a[0],a[1]],[a[0],a[3]],[a[2],a[3]],[a[2],a[1]]];for(;n>180;)n-=180;for(;n<0;)n+=180;const c=Math.cos(n*L),f=Math.sin(n*L),m=-i*f,d=i*c;let p,y,g,M;s=(0,R.$w)(t.offsetX)*r*f-(0,R.$w)(t.offsetY)*r*c,p=g=Number.MAX_VALUE,y=M=-Number.MAX_VALUE;for(const t of l){const e=t[0],r=t[1],i=c*e+f*r,n=-f*e+c*r;p=Math.min(p,i),g=Math.min(g,n),y=Math.max(y,i),M=Math.max(M,n)}g=Math.floor(g/i)*i;let C=c*p-f*g-m*s/i,b=f*p+c*g-d*s/i,x=c*y-f*g-m*s/i,_=f*y+c*g-d*s/i;const w=1+Math.round((M-g)/i),k=[];for(let t=0;t<w;t++)C+=m,b+=d,x+=m,_+=d,k.push([[C,b],[x,_]]);return{paths:k}}(e,t,this.geomUnitsPerPoint());r&&(this.pushClipPath(t),this.drawMultiLayerSymbol(e.lineSymbol,r),this.popClipPath())}drawPictureFill(t,e){}drawGradientFill(t,e){}drawPictureStroke(t,e){}drawGradientStroke(t,e){}drawMarkerLayer(t,e){const r=t.markerPlacement;if(r){const i=(0,y.c)(r);if(i){const n="CIMMarkerPlacementInsidePolygon"===r.type||"CIMMarkerPlacementPolygonCenter"===r.type&&r.clipAtBoundary;n&&this.pushClipPath(e);const s=i.execute(c.z.fromJSONCIM(e),r,this.geomUnitsPerPoint(),null);if(s){let e=null;for(;(e=s.next())&&(this.drawMarker(t,e),!this._earlyReturn););}n&&this.popClipPath()}}else{const r=this._placementPool.acquire();if((0,m.fT)(e))r.tx=e.x,r.ty=e.y,this.drawMarker(t,r);else if((0,m.Bi)(e)){const i=(0,f.l8)(e);i&&([r.tx,r.ty]=i,this.drawMarker(t,r))}else if((0,m.Rg)(e)){for(const i of e.paths)for(const e of i)if(r.tx=e[0],r.ty=e[1],this.drawMarker(t,r),this._earlyReturn)break}else for(const i of e.points)if(r.tx=i[0],r.ty=i[1],this.drawMarker(t,r),this._earlyReturn)break;this._placementPool.release(r)}}drawMarker(t,e){switch(t.type){case"CIMCharacterMarker":case"CIMPictureMarker":this.drawPictureMarker(t,e);break;case"CIMVectorMarker":this.drawVectorMarker(t,e)}}drawPictureMarker(t,e){if(!t)return;const r=this._resourceManager.getResource(t.url),i=(0,R.$w)(t.size,S.D.CIMPictureMarker.size);if(null==r||i<=0)return;const n=r.width,s=r.height;if(!n||!s)return;const o=n/s,a=(0,R.$w)(t.scaleX,1),l=A.createIdentity(),c=t.anchorPoint;if(c){let e=c.x,r=c.y;"Absolute"!==t.anchorPointUnits&&(e*=i*o*a,r*=i),l.translate(-e,-r)}let h=(0,R.$w)(t.rotation);t.rotateClockwise&&(h=-h),this._mapRotation&&(h+=this._mapRotation),h&&l.rotate(h*L);let u=(0,R.$w)(t.offsetX),f=(0,R.$w)(t.offsetY);if(u||f){if(this._mapRotation){const t=L*this._mapRotation,e=Math.cos(t),r=Math.sin(t),i=u*r+f*e;u=u*e-f*r,f=i}l.translate(u,f)}const m=this.geomUnitsPerPoint();1!==m&&l.scale(m,m);const d=e.getAngle();d&&l.rotate(d),l.translate(e.tx,e.ty),this.push(l),this.drawImage(t,i),this.pop()}drawVectorMarker(t,e){if(!t)return;const r=t.markerGraphics;if(!r)return;const i=(0,R.$w)(t.size,S.D.CIMVectorMarker.size),n=t.frame,s=n?n.ymax-n.ymin:0,o=i&&s?i/s:1,a=A.createIdentity();n&&a.translate(.5*-(n.xmax+n.xmin),.5*-(n.ymax+n.ymin));const l=t.anchorPoint;if(l){let e=l.x,r=l.y;"Absolute"!==t.anchorPointUnits?n&&(e*=n.xmax-n.xmin,r*=n.ymax-n.ymin):(e/=o,r/=o),a.translate(-e,-r)}1!==o&&a.scale(o,o);let c=(0,R.$w)(t.rotation);t.rotateClockwise&&(c=-c),this._mapRotation&&(c+=this._mapRotation),c&&a.rotate(c*L);let h=(0,R.$w)(t.offsetX),u=(0,R.$w)(t.offsetY);if(h||u){if(this._mapRotation){const t=L*this._mapRotation,e=Math.cos(t),r=Math.sin(t),i=h*r+u*e;h=h*e-u*r,u=i}a.translate(h,u)}const f=this.geomUnitsPerPoint();1!==f&&a.scale(f,f);const m=e.getAngle();m&&a.rotate(m),a.translate(e.tx,e.ty);const d=t.scaleSymbolsProportionally?1:o;this.push(a,t.scaleSymbolsProportionally,d);for(const t of r){t?.symbol&&t.geometry||T().error("Invalid marker graphic",t);let e=t.textString;if("number"==typeof e&&(e=e.toString()),this.drawSymbol(t.symbol,t.geometry,e),this._earlyReturn)break}this.pop()}drawTextSymbol(t,e,r){if(!t)return;if(!(0,m.fT)(e))return;if((0,R.$w)(t.height,S.D.CIMTextSymbol.height)<=0)return;const i=A.createIdentity();let n=(0,R.$w)(t.angle);n=-n,n&&i.rotate(n*L);const s=(0,R.$w)(t.offsetX),o=(0,R.$w)(t.offsetY);(s||o)&&i.translate(s,o);const a=this.geomUnitsPerPoint();1!==a&&i.scale(a,a),i.translate(e.x,e.y),this.push(i),this.drawText(t,r),this.pop()}}class D extends E{constructor(t,e){super(t,e),this.reset()}reset(){this._xmin=this._ymin=1/0,this._xmax=this._ymax=-1/0,this._clipCount=0}envelope(){return new x(this._xmin,this._ymin,this._xmax-this._xmin,this._ymax-this._ymin)}bounds(){return(0,h.fA)(this._xmin,this._ymin,this._xmax,this._ymax)}drawSolidFill(t){if(t&&!(this._clipCount>0))if((0,m.Bi)(t))this._processPath(t.rings,0);else if((0,m.Rg)(t))this._processPath(t.paths,0);else if((0,m.ZC)(t)){const e=H(t);e&&this._processPath(e.rings,0)}else console.error("drawSolidFill Unexpected geometry type!")}drawSolidStroke(t,e,r){if(!t||this._clipCount>0||null==r||r<=0)return;const i=Math.max(.5*this.transformSize((0,R.$w)(r,S.D.CIMSolidStroke.width)),.25);if((0,m.Bi)(t))this._processPath(t.rings,i);else if((0,m.Rg)(t))this._processPath(t.paths,i);else if((0,m.ZC)(t)){const e=H(t);e&&this._processPath(e.rings,i)}else console.error("drawSolidStroke unexpected geometry type!")}drawMarkerLayer(t,e){(0,m.Bi)(e)&&t.markerPlacement&&("CIMMarkerPlacementInsidePolygon"===t.markerPlacement.type||"CIMMarkerPlacementPolygonCenter"===t.markerPlacement.type&&t.markerPlacement.clipAtBoundary)?this._processPath(e.rings,0):super.drawMarkerLayer(t,e)}drawHatchFill(t,e){this.drawSolidFill(t)}drawPictureFill(t,e){this.drawSolidFill(t)}drawGradientFill(t,e){this.drawSolidFill(t)}drawPictureStroke(t,e){this.drawSolidStroke(t,null,e.width)}drawGradientStroke(t,e){this.drawSolidStroke(t,null,e.width)}pushClipPath(t){this.drawSolidFill(t),this._clipCount++}popClipPath(){this._clipCount--}drawImage(t,e){const{url:r}=t,i=(0,R.$w)(t.scaleX,1);let n=i*e,s=e;const o=this._resourceManager.getResource(r);if(null!=o){const t=o.height/o.width;n=i*(e?t>1?e:e/t:o.width),s=e?t>1?e*t:e:o.height}this._merge(this.transformPt([-n/2,-s/2]),0),this._merge(this.transformPt([-n/2,s/2]),0),this._merge(this.transformPt([n/2,-s/2]),0),this._merge(this.transformPt([n/2,s/2]),0)}drawText(t,e){if(!e||0===e.length)return;this._textRasterizer||(this._textRasterizer=new I);const r=W(t),i=(0,_.Z)({textString:e,font:r.font,symbol:t,supportsRichText:(0,_.q)(e)});let[n,s]=i?this._textRasterizer.computeRichTextSize(i,r):this._textRasterizer.computeTextSize(e,r);n=(0,l.PN)(n),s=(0,l.PN)(s);const o=this.transformSize(1)*this.reverseTransformScalar(1);n*=o,s*=o;const a=t.horizontalAlignment??S.D.CIMTextSymbol.horizontalalignment,c=t.verticalAlignment??S.D.CIMTextSymbol.verticalalignment;let h=0;switch(a){case"Left":h=n/2;break;case"Right":h=-n/2}let u=0;switch(c){case"Bottom":u=s/2;break;case"Top":u=-s/2;break;case"Baseline":u=s/6}this._merge(this.transformPt([-n/2+h,-s/2+u]),0),this._merge(this.transformPt([-n/2+h,s/2+u]),0),this._merge(this.transformPt([n/2+h,-s/2+u]),0),this._merge(this.transformPt([n/2+h,s/2+u]),0)}_processPath(t,e){if(t)for(const r of t){const t=r?r.length:0;if(t>1){this._merge(this.transformPt(r[0]),e);for(let i=1;i<t;i++)this._merge(this.transformPt(r[i]),e)}}}_merge(t,e){t[0]-e<this._xmin&&(this._xmin=t[0]-e),t[0]+e>this._xmax&&(this._xmax=t[0]+e),t[1]-e<this._ymin&&(this._ymin=t[1]-e),t[1]+e>this._ymax&&(this._ymax=t[1]+e)}}class F extends E{constructor(t,e,r,i){super(e,r),this._applyAdditionalRenderProps=i,this._colorSubstitutionHelper=new p,this._ctx=t}drawSolidFill(t,e){if(!t)return;if((0,m.Bi)(t))this._buildPath(t.rings,!0);else if((0,m.Rg)(t))this._buildPath(t.paths,!0);else if((0,m.ZC)(t))this._buildPath(H(t).rings,!0);else{if(!(0,m.U9)(t))return;console.log("CanvasDrawHelper.drawSolidFill - No implementation!")}const r=this._ctx;r.fillStyle="string"==typeof e?e:"rgba("+Math.round(e[0])+","+Math.round(e[1])+","+Math.round(e[2])+","+(e[3]??255)/255+")",r.fill("evenodd")}drawSolidStroke(t,e,r,i,n,s){if(!t||!e||0===r)return;if((0,m.Bi)(t))this._buildPath(t.rings,!0);else if((0,m.Rg)(t))this._buildPath(t.paths,!1);else{if(!(0,m.ZC)(t))return void console.log("CanvasDrawHelper.drawSolidStroke isn't implemented!");this._buildPath(H(t).rings,!0)}const o=this._ctx;o.strokeStyle="string"==typeof e?e:"rgba("+Math.round(e[0])+","+Math.round(e[1])+","+Math.round(e[2])+","+(e[3]??255)/255+")",o.lineWidth=Math.max(this.transformSize(r),.5),this._setCapStyle(i),this._setJoinStyle(n),o.miterLimit=s,o.stroke()}pushClipPath(t){if(this._ctx.save(),(0,m.Bi)(t))this._buildPath(t.rings,!0);else if((0,m.Rg)(t))this._buildPath(t.paths,!0);else{if(!(0,m.ZC)(t))return;this._buildPath(H(t).rings,!0)}this._ctx.clip("evenodd")}popClipPath(){this._ctx.restore()}drawImage(t,e){const{colorSubstitutions:r,url:i,tintColor:n}=t,s=(0,R.$w)(t.scaleX,1),o=this._resourceManager.getResource(i);if(null==o)return;let a=e*(o.width/o.height),l=e;e||(a=o.width,l=o.height);const c=(0,R.UE)(i)||"src"in o&&(0,R.UE)(o.src);let h="getFrame"in o?M(o):o;r&&(h=this._colorSubstitutionHelper.applyColorSubstitution(h,r)),this._applyAdditionalRenderProps&&!c&&n&&(h=this._colorSubstitutionHelper.tintImageData(h,n));const u=this.transformPt([0,0]),[f,m]=this.getTransformAngle(),d=this.transformSize(1),p=this._ctx;p.save(),p.setTransform({m11:s*d*f,m12:s*d*m,m21:-d*m,m22:d*f,m41:u[0],m42:u[1]}),p.drawImage(h,-a/2,-l/2,a,l),p.restore()}drawText(t,e){if(!e||0===e.length)return;this._textRasterizer||(this._textRasterizer=new I);const r=W(t,this.transformSize((0,l.PN)(1))),i=(0,_.Z)({textString:e,font:r.font,symbol:t,supportsRichText:(0,_.q)(e)}),n=i?this._textRasterizer.rasterizeRichText(i,r):this._textRasterizer.rasterizeText(e,r);if(!n)return;const{size:s,anchorX:o,anchorY:a,canvas:c}=n,h=s[0]*(o+.5),u=s[1]*(a-.5),f=this._ctx,m=this.transformPt([0,0]),[d,p]=this.getTransformAngle();f.save(),f.setTransform({m11:1*d,m12:1*p,m21:-1*p,m22:1*d,m41:m[0]-1*h,m42:m[1]+1*u}),f.drawImage(c,0,0),f.restore()}drawPictureFill(t,e){if(!t)return;let{colorSubstitutions:r,height:i,offsetX:n,offsetY:s,rotation:o,scaleX:a,tintColor:l,url:c}=e;const h=this._resourceManager.getResource(c);if(null==h)return;if((0,m.Bi)(t))this._buildPath(t.rings,!0);else if((0,m.Rg)(t))this._buildPath(t.paths,!0);else if((0,m.ZC)(t))this._buildPath(H(t).rings,!0);else{if(!(0,m.U9)(t))return;console.log("CanvasDrawHelper.drawPictureFill - No implementation!")}const u=this._ctx,f=(0,R.UE)(c)||"src"in h&&(0,R.UE)(h.src);let d,p="getFrame"in h?M(h):h;if(r&&(p=this._colorSubstitutionHelper.applyColorSubstitution(p,r)),this._applyAdditionalRenderProps){f||l&&(p=this._colorSubstitutionHelper.tintImageData(p,l)),d=u.createPattern(p,"repeat");const t=this.transformSize(1);o||(o=0),n?n*=t:n=0,s?s*=t:s=0,i&&(i*=t);const e=i?i/h.height:1,r=a&&i?a*i/h.width:1;if(0!==o||1!==e||1!==r||0!==n||0!==s){const t=new DOMMatrix;t.rotateSelf(0,0,-o).translateSelf(n,s).scaleSelf(r,e,1),d.setTransform(t)}}else d=u.createPattern(p,"repeat");u.save(),u.fillStyle=d,u.fill("evenodd"),u.restore()}drawPictureStroke(t,e){if(!t)return;let{colorSubstitutions:r,capStyle:i,joinStyle:s,miterLimit:o,tintColor:a,url:c,width:h}=e;const u=this._resourceManager.getResource(c);if(null==u)return;let f;if((0,m.Bi)(t))f=t.rings;else if((0,m.Rg)(t))f=t.paths;else{if(!(0,m.ZC)(t))return(0,m.U9)(t)?void console.log("CanvasDrawHelper.drawPictureStroke - No implementation!"):void 0;f=H(t).rings}h||(h=u.width);const d=(0,R.UE)(c)||"src"in u&&(0,R.UE)(u.src);let p="getFrame"in u?M(u):u;r&&(p=this._colorSubstitutionHelper.applyColorSubstitution(p,r)),this._applyAdditionalRenderProps&&(d||a&&(p=this._colorSubstitutionHelper.tintImageData(p,a)));const y=Math.max(this.transformSize((0,l.Lz)(h)),.5),g=y/p.width,S=this._ctx,C=S.createPattern(p,"repeat-y");let b,x;S.save(),this._setCapStyle(i),this._setJoinStyle(s),void 0!==o&&(S.miterLimit=o),S.lineWidth=y;for(let t of f)if(t=(0,n.o8)(t),$(t),t&&!(t.length<=1)){b=this.transformPt(t[0]);for(let e=1;e<t.length;e++){x=this.transformPt(t[e]);const r=G(b,x),i=new DOMMatrix;i.translateSelf(0,b[1]-y/2).scaleSelf(g,g,1).rotateSelf(0,0,90-r),C.setTransform(i),S.strokeStyle=C,S.beginPath(),S.moveTo(b[0],b[1]),S.lineTo(x[0],x[1]),S.stroke(),b=x}}S.restore()}drawGradientFill(t,e){if(!t)return;let r;if((0,m.Bi)(t))r=t.rings;else if((0,m.Rg)(t))r=t.paths;else{if(!(0,m.ZC)(t))return void T().error("Unable to draw gradient fill");r=H(t).rings}this._buildPath(r,!0);const{angle:i,gradientMethod:n,gradientSize:s,gradientSizeUnits:a}=e,c=S.D.CIMGradientFill,u=e.gradientType??c.gradientType,f=-(0,o.kU)(i??0),d=(0,h.Ie)();for(const t of r){const e=t?t.length:0;if(e>1)for(let r=0;r<e;r++){let e=this.transformPt(t[r]);"Linear"!==n&&"Rectangular"!==n||(e=C(e,-f)),(0,h.tK)(d,e)}}const[p,y,g,M]=d,x=this._ctx;switch(x.save(),n){case"Buffered":T().error(`Gradient method "${n}" currently unsupported.`);break;case"Linear":{const t=(y+M)/2,r="Absolute"===a?this.transformSize((0,l.Lz)(s)):(0,R.yX)(s,c.gradientSize)*(g-p),[i,n]="Discrete"===u?[g,g-r]:[p+r,p],o=C([i,t],f),h=C([n,t],f),m=x.createLinearGradient(o[0],o[1],h[0],h[1]);(0,b.AH)(m,e),x.fillStyle=m,x.fill("evenodd");break}case"Circular":{const t=(0,h.gX)(d),r=(0,h.ib)(d)/2,i="Absolute"===a?this.transformSize((0,l.Lz)(s)):(0,R.yX)(s,c.gradientSize)*r,[n,o]="Discrete"===u?[r,r-i]:[i,0],f=x.createRadialGradient(t[0],t[1],n,t[0],t[1],o);(0,b.AH)(f,e),x.fillStyle=f,x.fill("evenodd");break}case"Rectangular":{const r=(0,h.gX)(d),i=r[0],n=r[1],o=C(r,f),m=(r,i,n,s,a,l,c,h)=>{x.save(),this.pushClipPath(t);const u=C([a,l],f),m=C([c,h],f);x.beginPath(),x.moveTo(o[0],o[1]),x.lineTo(u[0],u[1]),x.lineTo(m[0],m[1]),x.lineTo(o[0],o[1]),x.clip();const d=C([r,i],f),p=C([n,s],f),y=x.createLinearGradient(d[0],d[1],p[0],p[1]);(0,b.AH)(y,e),x.fillStyle=y,x.fill("evenodd"),x.restore()};let S="Absolute"===a?this.transformSize((0,l.Lz)(s)):(0,R.yX)(s,c.gradientSize)*((0,h.VL)(d)/2),[_,w]="Discrete"===u?[g,g-S]:[i+S,i];m(_,n,w,n,g,y,g,M),[_,w]="Discrete"===u?[p,p+S]:[i-S,i],m(_,n,w,n,p,M,p,y),S="Absolute"===a?this.transformSize((0,l.Lz)(s)):(0,R.yX)(s,c.gradientSize)*((0,h.uJ)(d)/2);let[k,I]="Discrete"===u?[M,M-S]:[n+S,n];m(i,k,i,I,g,M,p,M),[k,I]="Discrete"===u?[y,y+S]:[n-S,n],m(i,k,i,I,p,y,g,y);break}}x.restore()}drawGradientStroke(t,e){const{capStyle:r,gradientMethod:i,gradientSize:s,gradientSizeUnits:o,joinStyle:a,miterLimit:c,width:h}=e;if(!t||0===h)return;let u;if((0,m.Bi)(t))u=t.rings;else if((0,m.Rg)(t))u=t.paths;else{if(!(0,m.ZC)(t))return void T().error("Unable to draw gradient stroke");u=H(t).rings}const f=e.gradientType??S.D.CIMGradientStroke.gradientType,d=Math.max(this.transformSize((0,l.Lz)(h)),.5),p=this._ctx;let y,g;p.save(),this._setCapStyle(r),this._setJoinStyle(a),void 0!==c&&(p.miterLimit=c),p.lineWidth=d;for(let t of u){if(t=(0,n.o8)(t),$(t),!t||t.length<=1)continue;let r=0;y=this.transformPt(t[0]);for(let e=1;e<t.length;e++){g=this.transformPt(t[e]);const i=g[0]-y[0],n=g[1]-y[1];r+=Math.sqrt(i*i+n*n),y=g}const a="Absolute"===o?this.transformSize((0,l.Lz)(s)):(0,R.yX)(s,S.D.CIMGradientStroke.gradientSize)*("AcrossLine"===i?d:r);let c=0;y=this.transformPt(t[0]);for(let n=1;n<t.length;n++){g=this.transformPt(t[n]);const s=g[0]-y[0],o=g[1]-y[1],l=Math.sqrt(s*s+o*o);let h,u,m,S;switch(i){case"AcrossLine":{const[t,e]=C([s/l,o/l],-Math.PI/2),r=d/2,i="Discrete"===f?r:a-r;h=(y[0]+g[0])/2+t*i,u=(y[1]+g[1])/2+e*i,m=h-t*a,S=u-e*a;break}case"AlongLine":{const t=s/l,e=o/l;"Discrete"===f?(h=y[0]-t*c,u=y[1]-e*c,m=h+t*a,S=u+e*a):(m=y[0]+t*(r-c),S=y[1]+e*(r-c),h=m-t*a,u=S-e*a);break}default:return T().error("Unrecognized gradient method:",i),void p.restore()}const M=p.createLinearGradient(h,u,m,S);(0,b.AH)(M,e),p.strokeStyle=M,p.beginPath(),p.moveTo(y[0],y[1]),p.lineTo(g[0],g[1]),p.stroke(),c+=l,y=g}}p.restore()}_buildPath(t,e){const r=this._ctx;if(r.beginPath(),t)for(const i of t){const t=i?i.length:0;if(t>1){let n=this.transformPt(i[0]);r.moveTo(n[0],n[1]);for(let e=1;e<t;e++)n=this.transformPt(i[e]),r.lineTo(n[0],n[1]);e&&r.closePath()}}}_setCapStyle(t){switch(t){case"Butt":this._ctx.lineCap="butt";break;case"Round":this._ctx.lineCap="round";break;case"Square":this._ctx.lineCap="square"}}_setJoinStyle(t){switch(t){case"Bevel":this._ctx.lineJoin="bevel";break;case"Round":this._ctx.lineJoin="round";break;case"Miter":this._ctx.lineJoin="miter"}}}function G(t,e){const r=e[0]-t[0],i=e[1]-t[1];return 180/Math.PI*Math.atan2(i,r)}const H=t=>t?{spatialReference:t.spatialReference,rings:[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]]}:null,O=(t,e,r)=>{switch(t){case"ExtraLeading":return 1+e/r;case"Multiple":return e;case"Exact":return e/r}};function W(t,e=1){const r=(0,R.DW)(t),n=(0,R._d)(t.fontStyleName),s=t.fontFamilyName??i.Vb,{weight:o,style:a}=n,l=e*(t.height||5),c=(0,R.Bu)(t.horizontalAlignment),h=(0,R.Nl)(t.verticalAlignment),u=(0,R.pM)(t),f=(0,R.pM)(t.haloSymbol),m=null!=f?e*(t.haloSize??0):0,d=(0,R._1)(t.symbol),p=e*((0,R.xo)(t.symbol)||0),y="CIMBackgroundCallout"===t.callout?.type?t.callout.backgroundSymbol:null,g=(0,R.pM)(y),S=(0,R.xo)(y),M=(0,R._1)(y);return{color:u,size:l,horizontalAlignment:c,verticalAlignment:h,font:{family:s,style:(0,R.pV)(a),weight:(0,R.Kn)(o),decoration:r},outline:{size:p||0,color:d},halo:{size:m||0,color:f,style:a},backgroundColor:g,borderLine:null!=S&&null!=M?{size:S,color:M}:null,pixelRatio:1,premultiplyColors:!0}}function $(t){let e,r,i,n,s,o=t[0],a=1;for(;a<t.length;)e=t[a][0]-o[0],r=t[a][1]-o[1],n=0!==e?r/e:Math.PI/2,void 0!==i&&Math.abs(n-i)<=1e-4?(t.splice(a-1,1),o=s):(s=o,o=t[a],a++),i=n}},15867(t,e,r){r.r(e),r.d(e,{CIMSymbolHelper:()=>L,CIMSymbolInflatedSizeHelper:()=>R,forEachSymbolLayer:()=>T,symbolToCIM:()=>P});var i=r(6371),n=r(4718),s=r(53966),o=r(87811),a=r(90629),l=r(19419),c=r(537),h=r(52006),u=r(31411),f=r(11831),m=r(35833),d=r(98939),p=r(72726),y=r(28076),g=r(93397),S=r(59868),M=r(13195),C=r(75434),b=r(69221);const x=Math.PI,_=x/2,w=Math.PI/180,k=96/72,I=()=>s.A.getLogger("esri.symbols.cim.CIMSymbolHelper");function P(t){let e;switch(t.type){case"cim":return t.data;case"web-style":return t;case"simple-marker":{const r=L.fromSimpleMarker(t);if(!r)throw new Error("InternalError: Cannot convert symbol to CIM");e=r;break}case"picture-marker":e=L.fromPictureMarker(t);break;case"simple-line":e=L.fromSimpleLineSymbol(t);break;case"simple-fill":e=L.fromSimpleFillSymbol(t);break;case"picture-fill":e=L.fromPictureFillSymbol(t);break;case"text":e=L.fromTextSymbol(t)}return{type:"CIMSymbolReference",symbol:e}}function z(t,e,r){switch(e.type){case"CIMSymbolReference":return z(t,e.symbol,r);case"CIMPointSymbol":null==r&&(r={x:0,y:0}),t.drawSymbol(e,r);break;case"CIMLineSymbol":null==r&&(r={paths:[[[0,0],[10,0]]]}),t.drawSymbol(e,r);break;case"CIMPolygonSymbol":null==r&&(r={rings:[[[0,0],[0,10],[10,10],[10,0],[0,0]]]}),t.drawSymbol(e,r);break;case"CIMTextSymbol":{const r={x:0,y:0};t.drawSymbol(e,r);break}case"CIMVectorMarker":{const r=new d.W;t.drawMarker(e,r);break}}return t.envelope()}function v(t){if(!t)return 0;switch(t.type){case"CIMMarkerPlacementAlongLineSameSize":case"CIMMarkerPlacementAlongLineRandomSize":case"CIMMarkerPlacementAtExtremities":case"CIMMarkerPlacementAtMeasuredUnits":case"CIMMarkerPlacementAtRatioPositions":case"CIMMarkerPlacementOnLine":case"CIMMarkerPlacementOnVertices":return Math.abs(t.offset??0);default:return 0}}class R{static getSymbolInflateSize(t,e,r,i,n){return t||(t=[0,0,0,0]),e?this._getInflateSize(t,e,r,i,n):t}static safeSize(t){const e=Math.max(Math.abs(t[0]),Math.abs(t[2])),r=Math.max(Math.abs(t[1]),Math.abs(t[3]));return Math.sqrt(e*e+r*r)}static getPointSymbolHaloPadding(t,e){const r=(0,g.$w)(t.haloSize);if(r<=0||!t.haloSymbol?.symbolLayers?.some(t=>!1!==t.enable))return 0;const i=this.getSymbolInflateSize([0,0,0,0],t.haloSymbol,e,0,null);return r+this.safeSize(i)}static _vectorMarkerBounds(t,e,r,i){let n=!0;const s=(0,l.vt)();if(e?.markerGraphics)for(const o of e.markerGraphics){const e=[0,0,0,0];o.geometry&&((0,c.Rg)(s,o.geometry),e[0]=0,e[1]=0,e[2]=0,e[3]=0,this.getSymbolInflateSize(e,o.symbol,r,0,i),s[0]+=e[0],s[1]+=e[1],s[2]+=e[2],s[3]+=e[3],n?(t[0]=s[0],t[1]=s[1],t[2]=s[2],t[3]=s[3],n=!1):(t[0]=Math.min(t[0],s[0]),t[1]=Math.min(t[1],s[1]),t[2]=Math.max(t[2],s[2]),t[3]=Math.max(t[3],s[3])))}return t}static _getInflateSize(t,e,r,i,n){if(function(t){return void 0!==t.symbolLayers}(e)){const s=this._getLayersInflateSize(t,e.symbolLayers,r,i,n),o=(0,g.ll)(e.effects);if(o>0&&(s[0]-=o,s[1]-=o,s[2]+=o,s[3]+=o),"CIMPointSymbol"===e.type){const t=this.getPointSymbolHaloPadding(e,r);t>0&&(s[0]-=t,s[1]-=t,s[2]+=t,s[3]+=t)}return s}return this._getTextInflatedSize(t,e,n)}static _getLayersInflateSize(t,e,r,i,n){let s=!0;if(!e)return t;for(const o of e){if(!o)continue;let e=[0,0,0,0];switch(o.type){case"CIMSolidFill":case"CIMPictureFill":case"CIMHatchFill":case"CIMGradientFill":break;case"CIMSolidStroke":case"CIMPictureStroke":case"CIMGradientStroke":{const t=o;let r=t.width;null!=r&&("Square"===t.capStyle||"Miter"===t.joinStyle?r/=1.4142135623730951:r/=2,e[0]=-r,e[1]=-r,e[2]=r,e[3]=r);break}case"CIMCharacterMarker":case"CIMVectorMarker":case"CIMPictureMarker":{const t=o;if("CIMVectorMarker"===o.type){const t=o;if(e=this._vectorMarkerBounds(e,t,r,n),t.frame){const r=(t.frame.xmin+t.frame.xmax)/2,i=(t.frame.ymin+t.frame.ymax)/2;if(e[0]-=r,e[1]-=i,e[2]-=r,e[3]-=i,null!=t.size){const r=t.size/(t.frame.ymax-t.frame.ymin);e[0]*=r,e[1]*=r,e[2]*=r,e[3]*=r}}}else if("CIMPictureMarker"===o.type){const i=o,n=r.getResource(i.url);let s=1;if(null!=n&&n.height&&(s=n.width/n.height),null!=t.size){const r=t.size/2,n=t.size*s*(i.scaleX??1)/2;e=[-n,-r,n,r]}}else if(null!=t.size){const r=t.size/2;e=[-r,-r,r,r]}if(t.anchorPoint){let r,i;"Absolute"===t.anchorPointUnits?(r=t.anchorPoint.x,i=t.anchorPoint.y):(r=t.anchorPoint.x*(e[2]-e[0]),i=t.anchorPoint.y*(e[3]-e[1]));const n=1.25*Math.sqrt(r*r+i*i);e[0]-=n,e[1]-=n,e[2]+=n,e[3]+=n}let s=(0,g.$w)(t.rotation);if(t.rotateClockwise&&(s=-s),i&&(s-=i),s){const t=w*s,r=Math.cos(t),i=Math.sin(t),n=(0,l.vt)([M.MG,M.MG,-M.MG,-M.MG]);(0,l.tK)(n,[e[0]*r-e[1]*i,e[0]*i+e[1]*r]),(0,l.tK)(n,[e[0]*r-e[3]*i,e[0]*i+e[3]*r]),(0,l.tK)(n,[e[2]*r-e[1]*i,e[2]*i+e[1]*r]),(0,l.tK)(n,[e[2]*r-e[3]*i,e[2]*i+e[3]*r]),e=n}let a=(0,g.$w)(t.offsetX),c=(0,g.$w)(t.offsetY);if(i){const t=w*i,e=Math.cos(t),r=Math.sin(t),n=a*r+c*e;a=a*e-c*r,c=n}e[0]+=a,e[1]+=c,e[2]+=a,e[3]+=c;const h=v(t.markerPlacement);h>0&&(e[0]-=h,e[1]-=h,e[2]+=h,e[3]+=h);break}}const a=(0,g.ll)(o.effects);a>0&&(e[0]-=a,e[1]-=a,e[2]+=a,e[3]+=a),s?(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],s=!1):(t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[2]),t[3]=Math.max(t[3],e[3]))}return t}static _getTextInflatedSize(t,e,r){const i=(0,b.hV)(e.height??y.D.CIMTextSymbol.height);if(t[0]=-i/2,t[1]=-i/2,t[2]=i/2,t[3]=i/2,!r)return t;const n=r.get(e);if(!n)return t;if(!function(t){return"glyphs"===t.type?t.glyphs.length>0:t.runs.some(t=>t.glyphs.glyphs.length>0)}(n.glyphMosaicItems))return t;const{lineGapType:s,lineGap:o}=e,a=s?(0,p.QF)(s,o??0,i):0,l=e.horizontalAlignment??y.D.CIMTextSymbol.horizontalalignment,c=e.verticalAlignment??y.D.CIMTextSymbol.verticalalignment,h="CIMBackgroundCallout"===e.callout?.type,u=(0,C.tA)(n.glyphMosaicItems,{scale:i/24,angle:(0,g.$w)(e.angle),xOffset:(0,g.$w)(e.offsetX),yOffset:(0,g.$w)(e.offsetY),horizontalAlignment:l,verticalAlignment:c,maxLineWidth:(0,b.Lu)(e.lineWidth),lineHeight:29*Math.max(.25,Math.min(a||1,4)),decoration:e.font.decoration||"none",useCIMAngleBehavior:!0,hasBackground:h}).boundsT,f=Math.sqrt(u.width*u.width+u.height*u.height);return t[0]-=u.x+f,t[1]-=u.y-f,t[2]+=u.x+f,t[3]+=-u.y+f,t}}class L{static getEnvelope(t,e,r,i){if(!t)return null;const n=new p.mx(r,i);if(Array.isArray(t)){let r;for(const i of t)r?r.union(z(n,i,e)):r=z(n,i,e);return r}return z(n,t,e)}static expandEnvelopeForPointSymbolHalo(t,e,r,i=0){const n=R.getPointSymbolHaloPadding(e,r);if(n<=0)return;const s=n+i;t.x-=s,t.y-=s,t.width+=2*s,t.height+=2*s}static getTextureInfo(t,e,r,i,n,s=0){const o=i??this.getEnvelope(t,null,e);if(!o)return[0,0,0,0,1];const a=Math.max(o.width,o.height)*k;let l=null!=n?Math.max(n/a,1):1;l*=k,o.x*=l,o.y*=l,o.width*=l,o.height*=l,o.width=Math.max(Math.ceil(o.x+o.width)-Math.floor(o.x),1)-1,o.height=Math.max(Math.ceil(o.y+o.height)-Math.floor(o.y),1)-1;let c=o.x+.5*o.width,h=o.y+.5*o.height;if(c+=o.x-Math.floor(o.x),h+=o.y-Math.floor(o.y),!i){const t=Math.ceil(s*l);o.width+=r+2*t,o.height+=r+2*t,c+=r/2,h+=r/2}return[o.width,o.height,c,h,l]}static getTextureAnchor(t,e,r,i=0){const[n,s,o,a,l]=this.getTextureInfo(t,e,2,null,r,i);return[-o/n,-a/s,s/l*k]}static rasterize(t,e,r,i,n=!0,s,o=0){const[a,l,c,h,u]=this.getTextureInfo(e,i,2,r,s,o);t.width=a,t.height=l;const f=t.getContext("2d",{willReadFrequently:!0}),m=p.IT.createScale(u,-u);m.translate(.5*a-c,.5*l+h);const y=new p.Rj(f,i,m);switch(e.type){case"CIMPointSymbol":{const t={type:"point",x:0,y:0};y.drawSymbol(e,t);break}case"CIMVectorMarker":{const t=new d.W;y.drawMarker(e,t);break}}const g=f.getImageData(0,0,t.width,t.height),S=new Uint8Array(g.data);if(n){let t;for(let e=0;e<S.length;e+=4)t=S[e+3]/255,S[e]=S[e]*t,S[e+1]=S[e+1]*t,S[e+2]=S[e+2]*t}return[S,t.width,t.height,-c/a,-h/l,u]}static fromTextSymbol(t){const{text:e}=t;return{type:"CIMPointSymbol",symbolLayers:[{type:"CIMVectorMarker",enable:!0,anchorPointUnits:"Relative",dominantSizeAxis3D:"Y",size:10,billboardMode3D:"FaceNearPlane",frame:{xmin:-5,ymin:-5,xmax:5,ymax:5},markerGraphics:[{type:"CIMMarkerGraphic",geometry:{x:0,y:0},symbol:L.createCIMTextSymbolfromTextSymbol(t),textString:e}],scaleSymbolsProportionally:!0,respectFrame:!0}],scaleX:1,angleAlignment:"Display"}}static fromPictureFillSymbol(t){const{height:e,outline:r,width:i,xoffset:n,xscale:s,yoffset:o,yscale:a}=t,l=[],c={type:"CIMPolygonSymbol",symbolLayers:l};if(r){const t=U(r);t&&l.push(t)}let h=t.url;"esriPFS"===t.type&&t.imageData&&(h=t.imageData);const u="angle"in t?t.angle??0:0,f=(i??0)*(s||1),m=(e??0)*(a||1);return l.push({type:"CIMPictureFill",enable:!0,invertBackfaceTexture:!1,scaleX:1,textureFilter:"Picture",tintColor:null,url:h,height:m,width:f,offsetX:(0,g.$w)(n),offsetY:(0,g.$w)(o),rotation:(0,g.$w)(-u),colorSubstitutions:null}),c}static fromSimpleFillSymbol(t){const{color:e,style:r,outline:i}=t,s=[],o={type:"CIMPolygonSymbol",symbolLayers:s};if(i){const t=U(i);t&&s.push(t)}if(r&&"solid"!==r&&"none"!==r&&"esriSFSSolid"!==r&&"esriSFSNull"!==r){const t={type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",color:G(e),capStyle:"Butt",joinStyle:"Miter",width:.75}]};let i=0;const o=(0,a.PN)(N(r)?8:10);switch(r){case"vertical":case"esriSFSVertical":i=90;break;case"forward-diagonal":case"esriSFSForwardDiagonal":case"diagonal-cross":case"esriSFSDiagonalCross":i=-45;break;case"backward-diagonal":case"esriSFSBackwardDiagonal":i=45;break;case"cross":case"esriSFSCross":i=0}s.push({type:"CIMHatchFill",lineSymbol:t,offsetX:0,offsetY:0,rotation:i,separation:o}),"cross"===r||"esriSFSCross"===r?s.push({type:"CIMHatchFill",lineSymbol:(0,n.o8)(t),offsetX:0,offsetY:0,rotation:90,separation:o}):"diagonal-cross"!==r&&"esriSFSDiagonalCross"!==r||s.push({type:"CIMHatchFill",lineSymbol:(0,n.o8)(t),offsetX:0,offsetY:0,rotation:45,separation:o})}else!r||"solid"!==r&&"esriSFSSolid"!==r||s.push({type:"CIMSolidFill",enable:!0,color:G(e)});return o}static fromSimpleLineSymbol(t){const{cap:e,color:r,join:i,marker:n,miterLimit:s,style:o,width:a}=t;let l=null;"solid"!==o&&"none"!==o&&"esriSLSSolid"!==o&&"esriSLSNull"!==o&&(l=[{type:"CIMGeometricEffectDashes",dashTemplate:$(o,e),lineDashEnding:"NoConstraint",scaleDash:!0,offsetAlongLine:null}]);const c=[];if(n){let t;switch(n.placement){case"begin-end":t="Both";break;case"begin":t="JustBegin";break;case"end":t="JustEnd";break;default:t="None"}const e=L.fromSimpleMarker(n,a,r).symbolLayers[0];e.markerPlacement={type:"CIMMarkerPlacementAtExtremities",placePerPart:!1,angleToLine:!0,keepUpright:!1,offset:0,extremityPlacement:t,offsetAlongLine:0},c.push(e)}return c.push({type:"CIMSolidStroke",color:"none"!==o&&"esriSLSNull"!==o?G(r):[0,0,0,0],capStyle:A(e),joinStyle:E(i),miterLimit:s,width:a,effects:l}),{type:"CIMLineSymbol",symbolLayers:c}}static fromPictureMarker(t){const{angle:e,height:r,width:i,xoffset:n,yoffset:s}=t;let o=t.url;return"esriPMS"===t.type&&t.imageData&&(o=t.imageData),{type:"CIMPointSymbol",symbolLayers:[{type:"CIMPictureMarker",invertBackfaceTexture:!1,scaleX:1,textureFilter:"Picture",tintColor:null,url:o,size:r,width:i,offsetX:(0,g.$w)(n),offsetY:(0,g.$w)(s),rotation:(0,g.$w)(-e)}]}}static createCIMTextSymbolfromTextSymbol(t){const{angle:e,color:r,font:n,haloColor:s,haloSize:o,horizontalAlignment:a,kerning:l,lineWidth:c,text:h,verticalAlignment:u,xoffset:f,yoffset:m,backgroundColor:d,borderLineColor:p,borderLineSize:y}=t;let S,M,C,b,x,_;n&&(S=n.family,M=n.style,C=n.weight,b=n.size,x=n.decoration);let w=!1;return h&&(w=(0,i.y)(h)[1]),(d||y)&&(_={type:"CIMBackgroundCallout",margin:null,backgroundSymbol:{type:"CIMPolygonSymbol",symbolLayers:[{type:"CIMSolidFill",enable:!0,color:G(d)},{type:"CIMSolidStroke",enable:!0,color:G(p),width:y??0}]},accentBarSymbol:null,gap:null,leaderLineSymbol:null,lineStyle:null}),{type:"CIMTextSymbol",angle:e,blockProgression:2,depth3D:1,extrapolateBaselines:!0,fontEffects:0,fontEncoding:1,fontFamilyName:S||"Arial",fontStyleName:H(M,C),fontType:0,haloSize:o,height:b,hinting:1,horizontalAlignment:D(a??"center"),kerning:l,letterWidth:100,ligatures:!0,lineGapType:"Multiple",lineWidth:c,offsetX:(0,g.$w)(f),offsetY:(0,g.$w)(m),strikethrough:"line-through"===x,underline:"underline"===x,symbol:{type:"CIMPolygonSymbol",symbolLayers:[{type:"CIMSolidFill",enable:!0,color:G(r)}]},haloSymbol:{type:"CIMPolygonSymbol",symbolLayers:[{type:"CIMSolidFill",enable:!0,color:G(s)}]},shadowColor:[0,0,0,255],shadowOffsetX:1,shadowOffsetY:1,textCase:"Normal",textDirection:w?1:0,verticalAlignment:F(u??"baseline"),verticalGlyphOrientation:0,wordSpacing:100,billboardMode3D:2,callout:_}}static createPictureMarkerRasterizationParam(t){const{angle:e,height:r,width:i,xoffset:n,yoffset:s}=t,o=t.url??t.source?.url??t.source?.imageData;return o?{type:"sprite-rasterization-param",overrides:[],resource:{type:"CIMPictureMarker",enable:!0,invertBackfaceTexture:!1,scaleX:1,textureFilter:"Picture",tintColor:null,url:o,size:r,width:i,offsetX:(0,g.$w)(n),offsetY:(0,g.$w)(s),rotation:(0,g.$w)(-e)}}:null}static createPictureFillRasterizationParam(t){const{width:e,height:r,xoffset:i,yoffset:n,url:s}=t;return s?{type:"sprite-rasterization-param",overrides:[],resource:{type:"CIMPictureFill",enable:!0,scaleX:1,textureFilter:"Picture",tintColor:null,url:s,width:e,height:r,offsetX:(0,g.$w)(i),offsetY:(0,g.$w)(n),rotation:0}}:null}static fromSimpleMarker(t,e,r){const{style:i}=t,n=t.color??r;if("path"===i||"esriSMSPath"===i){const e=[];if("outline"in t&&t.outline){const r=t.outline;e.push({type:"CIMSolidStroke",enable:!0,width:r.width,color:G(r.color),path:t.path})}e.push({type:"CIMSolidFill",enable:!0,color:G(n),path:t.path});const[r,i]=B("square");return{type:"CIMPointSymbol",symbolLayers:[{type:"CIMVectorMarker",enable:!0,rotation:-(0,g.$w)(t.angle),size:(0,g.$w)(t.size||6),offsetX:(0,g.$w)(t.xoffset),offsetY:(0,g.$w)(t.yoffset),scaleSymbolsProportionally:!1,frame:r,markerGraphics:[{type:"CIMMarkerGraphic",geometry:i,symbol:{type:"CIMPolygonSymbol",symbolLayers:e}}]}]}}const s=[];let o,a,l=t.size;if("outline"in t&&t.outline&&"none"!==t.outline.style&&"esriSLSNull"!==t.outline.style){const e=t.outline,r="solid"!==e.style&&"esriSLSSolid"!==e.style;[o,a]=r?B(i,t.size):B(i);const n=e.width??S.A7.width;if(r){const e=n/t.size,r=(o.xmax-o.xmin)*e/2,i=(o.ymax-o.ymin)*e/2;o.xmin-=r,o.xmax+=r,o.ymin-=i,o.ymax+=i,l&&(l+=n)}const c="cross"!==t.style&&"x"!==t.style||"dot"===t?.outline.style||"short-dot"===t?.outline.style?"HalfGap":"FullPattern",h=r?[{type:"CIMGeometricEffectAddControlPoints"},{type:"CIMGeometricEffectDashes",dashTemplate:$(e.style,null).map(t=>e.width&&e.width>0?t*e.width:t),lineDashEnding:c,controlPointEnding:"FullPattern"}]:void 0;s.push({type:"CIMSolidStroke",capStyle:r?"Round":"Butt",enable:!0,width:n,color:G(e.color),effects:h})}else!e||"line-marker"!==t.type||"cross"!==t.style&&"x"!==t.style?[o,a]=B(i):([o,a]=B(i),s.push({type:"CIMSolidStroke",enable:!0,width:e,color:G(n)}));s.push({type:"CIMSolidFill",enable:!0,color:G(n)});const c={type:"CIMPolygonSymbol",symbolLayers:s};return{type:"CIMPointSymbol",symbolLayers:[{type:"CIMVectorMarker",enable:!0,rotation:(0,g.$w)(-t.angle),size:(0,g.$w)(l||6*e),offsetX:(0,g.$w)(t.xoffset),offsetY:(0,g.$w)(t.yoffset),scaleSymbolsProportionally:!1,frame:o,markerGraphics:[{type:"CIMMarkerGraphic",geometry:a,symbol:c}]}]}}static fromCIMHatchFill(t,e){const r=e*(t.separation??y.D.CIMHatchFill.separation),i=r/2,s=(0,n.o8)(t.lineSymbol);s.symbolLayers?.forEach(t=>{switch(t.type){case"CIMSolidStroke":null!=t.width&&(t.width*=e),t.effects?.forEach(t=>{if("CIMGeometricEffectDashes"===t.type){const r=t.dashTemplate;t.dashTemplate=r?.map(t=>t*e)}});break;case"CIMVectorMarker":{null!=t.size&&(t.size*=e);const r=t.markerPlacement;null!=r&&"placementTemplate"in r&&(r.placementTemplate=r.placementTemplate.map(t=>t*e));break}}});let o=this._getLineSymbolPeriod(s)||4;for(;o<4;)o*=2;const a=o/2;return{type:"CIMVectorMarker",enable:!0,frame:{xmin:-a,xmax:a,ymin:-i,ymax:i},markerGraphics:[{type:"CIMMarkerGraphic",geometry:{paths:[[[-a,0],[a,0]]]},symbol:s}],size:r}}static async normalizeSymbolAndFetchResources(t,e,r=null){if(!t)return;const i=[];if("effects"in t&&t.effects)for(const e of t.effects)i.push((0,m.ai)(e));i.push(s(t));const n=t=>{if(t.effects)for(const e of t.effects)i.push((0,m.ai)(e));if("CIMVectorMarker"===t.type){for(const e of t.markerGraphics)(0,h.Ed)(e.geometry)&&(e.geometry=(0,u.GS)(e.geometry,{maxDeviation:.01}));t.markerPlacement&&i.push((0,m.g1)(t.markerPlacement))}"url"in t&&t.url&&i.push(e.fetchResource(t.url,{signal:r})),"symbol"in t&&i.push(s(t.symbol))};async function s(t){if("CIMTextSymbol"!==t.type)return;const{fontFamilyName:r,fontStyleName:i}=t;if("calcitewebcoreicons"===r?.toLowerCase())return;const{style:n,weight:s}=(0,g._d)(i),o=(0,g.DW)(t),a=new f.A({family:r,style:n,weight:s,decoration:o});try{await e.loadFont(a)}catch{I().error(`Unsupported font ${r} in CIM symbol`)}}T(t,n),"haloSymbol"in t&&T(t.haloSymbol,n),await Promise.all(i)}static _getLineSymbolPeriod(t){if(t){const e=this._getEffectsRepeat(t.effects);if(e)return e;if(t.symbolLayers)for(const e of t.symbolLayers)if(e){const t=this._getEffectsRepeat(e.effects);if(t)return t;switch(e.type){case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":case"CIMObjectMarker3D":case"CIMglTFMarker3D":{const t=this._getPlacementRepeat(e.markerPlacement);if(t)return t}}}}return 0}static _getEffectsRepeat(t){if(t)for(const e of t)if(e)switch(e.type){case"CIMGeometricEffectDashes":{const t=e.dashTemplate;if(t&&t.length){let e=0;for(const r of t)e+=r;return 1&t.length&&(e*=2),e}break}case"CIMGeometricEffectWave":return e.period;default:I().error(`unsupported geometric effect type ${e.type}`)}return 0}static _getPlacementRepeat(t){if(t)switch(t.type){case"CIMMarkerPlacementAlongLineSameSize":case"CIMMarkerPlacementAlongLineRandomSize":case"CIMMarkerPlacementAlongLineVariableSize":{const e=t.placementTemplate;if(e&&e.length){let t=0;for(const r of e)t+=+r;return 1&e.length&&(t*=2),t}break}}return 0}static fromCIMInsidePolygon(t){const e=t.markerPlacement,r={...t};r.markerPlacement=null,r.anchorPoint=null;const i=Math.abs(e.stepX),n=Math.abs(e.stepY),s=(e.randomness??100)/100;let l,c,h,u;if("Random"===e.gridType){const t=(0,a.PN)(1024),r=Math.max(Math.floor(t/i),1),f=Math.max(Math.floor(t/n),1);l=r*i/2,c=f*n/2,h=2*c;const m=new o.A(e.seed),d=s*i/1.5,p=s*n/1.5;u=[];for(let t=0;t<r;t++)for(let e=0;e<f;e++){const r=t*i-l+d*(.5-m.getFloat()),s=e*n-c+p*(.5-m.getFloat());u.push({x:r,y:s}),0===t&&u.push({x:r+2*l,y:s}),0===e&&u.push({x:r,y:s+2*c})}}else!0===e.shiftOddRows?(l=i/2,c=n,h=2*n,u=[{x:-l,y:0},{x:l,y:0},{x:0,y:c},{x:0,y:-c}]):(l=i/2,c=n/2,h=n,u=[{x:-i,y:0},{x:0,y:-n},{x:-i,y:-n},{x:0,y:0},{x:i,y:0},{x:0,y:n},{x:i,y:n},{x:-i,y:n},{x:i,y:-n}]);return{type:"CIMVectorMarker",enable:!0,frame:{xmin:-l,xmax:l,ymin:-c,ymax:c},markerGraphics:u.map(t=>({type:"CIMMarkerGraphic",geometry:t,symbol:{type:"CIMPointSymbol",symbolLayers:[r]}})),size:h}}}function T(t,e){if(t)switch(t.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":{const r=t.symbolLayers;if(!r)return;for(const t of r)if(e(t),"CIMVectorMarker"===t.type){const r=t.markerGraphics;if(!r)continue;for(const t of r)if(t){const r=t.symbol;r&&T(r,e)}}break}}}const A=t=>{if(!t)return"Butt";switch(t){case"butt":return"Butt";case"square":return"Square";case"round":return"Round"}},E=t=>{if(!t)return"Miter";switch(t){case"miter":return"Miter";case"round":return"Round";case"bevel":return"Bevel"}},D=t=>{if(null==t)return"Center";switch(t){case"left":return"Left";case"right":return"Right";case"center":return"Center";case"justify":return"Justify"}},F=t=>{if(null==t)return"Center";switch(t){case"baseline":return"Baseline";case"top":return"Top";case"middle":return"Center";case"bottom":return"Bottom"}},G=t=>{if(!t)return[0,0,0,0];const{r:e,g:r,b:i,a:n}=t;return[e,r,i,255*n]},H=(t,e)=>{const r=O(e),i=W(t);return r&&i?`${r}-${i}`:`${r}${i}`},O=t=>{if(!t)return"";switch(t.toLowerCase()){case"bold":case"bolder":return"bold"}return""},W=t=>{if(!t)return"";switch(t.toLowerCase()){case"italic":case"oblique":return"italic"}return""},$=(t,e)=>{const r=.001,i="butt"===e;switch(t){case"dash":case"esriSLSDash":return i?[4,3]:[3,4];case"dash-dot":case"esriSLSDashDot":return i?[4,3,1,3]:[3,4,r,4];case"dot":case"esriSLSDot":return i?[1,3]:[r,4];case"long-dash":case"esriSLSLongDash":return i?[8,3]:[7,4];case"long-dash-dot":case"esriSLSLongDashDot":return i?[8,3,1,3]:[7,4,r,4];case"long-dash-dot-dot":case"esriSLSDashDotDot":return i?[8,3,1,3,1,3]:[7,4,r,4,r,4];case"short-dash":case"esriSLSShortDash":return i?[4,1]:[3,2];case"short-dash-dot":case"esriSLSShortDashDot":return i?[4,1,1,1]:[3,2,r,2];case"short-dash-dot-dot":case"esriSLSShortDashDotDot":return i?[4,1,1,1,1,1]:[3,2,r,2,r,2];case"short-dot":case"esriSLSShortDot":return i?[1,1]:[r,2];case"solid":case"esriSLSSolid":case"none":return I().error("Unexpected: style does not require rasterization"),[0,0];default:return I().error(`Tried to rasterize SLS, but found an unexpected style: ${t}!`),[0,0]}},B=(t,e=100)=>{const r=e/2;let i,n;const s=t;if("circle"===s||"esriSMSCircle"===s){const t=.25;let e=Math.acos(1-t/r),s=Math.ceil(x/e/4);0===s&&(s=1),e=_/s,s*=4;const o=[];o.push([r,0]);for(let t=1;t<s;t++)o.push([r*Math.cos(t*e),-r*Math.sin(t*e)]);o.push([r,0]),i={rings:[o]},n={xmin:-r,ymin:-r,xmax:r,ymax:r}}else if("cross"===s||"esriSMSCross"===s){const t=0;i={paths:[[[t,r],[t,-r]],[[r,t],[-r,t]]]},n={xmin:-r,ymin:-r,xmax:r,ymax:r}}else if("diamond"===s||"esriSMSDiamond"===s)i={rings:[[[-r,0],[0,r],[r,0],[0,-r],[-r,0]]]},n={xmin:-r,ymin:-r,xmax:r,ymax:r};else if("square"===s||"esriSMSSquare"===s)i={rings:[[[-r,-r],[-r,r],[r,r],[r,-r],[-r,-r]]]},n={xmin:-r,ymin:-r,xmax:r,ymax:r};else if("x"===s||"esriSMSX"===s)i={paths:[[[r,r],[-r,-r]],[[r,-r],[-r,r]]]},n={xmin:-r,ymin:-r,xmax:r,ymax:r};else if("triangle"===s||"esriSMSTriangle"===s){const t=.5773502691896257*e,r=-t,s=2/3*e,o=s-e;i={rings:[[[r,o],[0,s],[t,o],[r,o]]]},n={xmin:r,ymin:o,xmax:t,ymax:s}}else"arrow"===s&&(i={rings:[[[-50,50],[50,0],[-50,-50],[-33,-20],[-33,20],[-50,50]]]},n={xmin:-r,ymin:-r,xmax:r,ymax:r});return[n,i]},N=t=>"vertical"===t||"horizontal"===t||"cross"===t||"esriSFSCross"===t||"esriSFSVertical"===t||"esriSFSHorizontal"===t;function U(t){if(!t)return null;let e=null;const{cap:r,color:i,join:n,miterLimit:s,style:o,width:a}=t;return"solid"!==o&&"none"!==o&&"esriSLSSolid"!==o&&"esriSLSNull"!==o&&(e=[{type:"CIMGeometricEffectDashes",dashTemplate:$(o,r),lineDashEnding:"NoConstraint",scaleDash:!0,offsetAlongLine:null}]),{type:"CIMSolidStroke",color:"esriSLSNull"!==o&&"none"!==o?G(i):[0,0,0,0],capStyle:A(r),joinStyle:E(n),miterLimit:s,width:a,effects:e}}r.d(e,["capTypeToEnum",0,A,"slsDashToTemplateArray",0,$])},28076(t,e,r){var i=r(13337);const n={CIMVectorMarker:{scalesymbolsproportionally:!1,respectframe:!0,anchorpointunits:"Relative",offsetx:0,offsety:0,rotateclockwise:!1,rotation:0,size:10,enable:!0,colorlocked:!1},CIMPictureMarker:{scalex:1,texturefilter:"Draft",anchorpointunits:"Relative",offsetx:0,offsety:0,rotateclockwise:!1,rotation:0,size:10,enable:!0,colorlocked:!1},CIMTextSymbol:{angle:0,anglex:0,angley:0,halosize:1,height:10,horizontalalignment:"Left",kerning:!0,letterspacing:0,letterwidth:100,ligatures:!0,linegap:0,offsetx:0,offsety:0,strikethrough:!1,textcase:"Normal",textstring:"",underline:!1,verticalalignment:"Bottom",enable:!0,colorlocked:!1},CIMSolidStroke:{capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1},CIMPictureStroke:{texturefilter:"Draft",capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1},CIMGradientStroke:{capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1,gradientMethod:"AcrossLine",gradientSize:75,gradientSizeUnits:i.h.Relative,gradientType:"Discrete",interval:5},CIMSolidFill:{enable:!0,colorlocked:!1},CIMPictureFill:{offsetx:0,offsety:0,rotation:0,scalex:1,height:10,texturefilter:"Draft",enable:!0,colorlocked:!1},CIMHatchFill:{offsetx:0,offsety:0,rotation:0,separation:4,enable:!0,colorlocked:!1},CIMGradientFill:{enable:!0,angle:90,gradientMethod:"Linear",gradientSize:75,gradientSizeUnits:i.h.Relative,gradientType:"Discrete",interval:5},CIMGeometricEffectAddControlPoints:{angletolerance:120},CIMGeometricEffectArrow:{arrowtype:"OpenEnded",width:5},CIMGeometricEffectBuffer:{size:1},CIMGeometricEffectCircularSector:{radius:25,startangle:0,endangle:45},CIMGeometricEffectCut:{begincut:1,endcut:1,middlecut:0,invert:!1},CIMGeometricEffectDashes:{customendingoffset:0,linedashending:"NoConstraint",offsetalongline:0},CIMGeometricEffectDonut:{method:"Mitered",option:"Accurate",width:2},CIMGeometricEffectJog:{angle:225,length:20,position:50},CIMGeometricEffectControlMeasureLine:{rule:"FullGeometry",width:25},CIMGeometricEffectMove:{offsetx:1,offsety:-1},CIMGeometricEffectOffset:{method:"Square",offset:1,option:"Fast"},CIMGeometricEffectRadial:{angle:0,length:5},CIMGeometricEffectRotate:{angle:15},CIMGeometricEffectScale:{xscalefactor:1.15,yscalefactor:1.15},CIMGeometricEffectWave:{amplitude:2,period:3,seed:1,waveform:"Sinus"},CIMMarkerPlacementAlongLine:{customendingoffset:0,endings:"WithHalfGap",offsetalongline:0,placeperpart:!0,angletoline:!0,offset:0},CIMMarkerPlacementAtExtremities:{extremityplacement:"Both",offsetalongline:0,angletoline:!0,offset:0},CIMMarkerPlacementAtRatioPositions:{beginposition:0,endposition:0,flipfirst:!0,angletoline:!0,offset:0},CIMMarkerPlacementInsidePolygon:{gridangle:0,gridtype:"Fixed",offsetx:0,offsety:0,randomness:100,seed:0,shiftoddrows:!1,stepx:16,stepy:16,clipping:"ClipAtBoundary"},CIMMarkerPlacementOnLine:{relativeto:"LineMiddle",startpointoffset:0,angletoline:!0,offset:0},CIMMarkerPlacementOnVertices:{placeperpart:!0,placeoncontrolpoints:!0,placeonendpoints:!0,placeonregularvertices:!0,angletoline:!0,offset:0},CIMMarkerPlacementPolygonCenter:{method:"OnPolygon",offsetx:0,offsety:0,clipatboundary:!1},CIMAnimatedSymbolProperties:{playanimation:!1,reverseanimation:!1,randomizestarttime:!1,randomizestartseed:0,starttimeoffset:0,duration:3,endingduration:3,useendingduration:!1,repeattype:"Loop",repeatdelay:0,easing:"Linear"},CIMSymbolAnimationSize:{tosize:10},CIMSymbolAnimationScale:{scalefactor:1},CIMSymbolAnimationColor:{tocolor:[255,255,255,1],colormode:"Multiply"},CIMSymbolAnimationTransparency:{totransparency:0},CIMSymbolAnimationRotation:{torotation:0,rotateclockwise:!1},CIMSymbolAnimationOffset:{offsetx:0,offsety:0},CIMSymbolAnimationMoveAlongLine:{speed:30,distancealong:100,movementtype:"Distance"}};r.d(e,["D",0,n])},44589(t,e,r){r.d(e,{AH:()=>a}),r(40804);var i=r(53966),n=(r(34727),r(35521),r(28076));const s=()=>i.A.getLogger("esri.symbols.cim.rasterizingUtils");let o;function a(t,e){const{colorRamp:r,gradientType:i}=e,s=l(r),a="CIMFixedColorRamp"===r.type;if("Continuous"===i&&!a)return c(t,s);const h=e.interval??n.D.CIMGradientFill.interval;if(a)return c(t,function(t,e){const r=[],i=(t.length-1)/(e-1);for(let n=0;n<e;n++){const s=t[Math.round(n*i)].color;r.push({offset:n/e,color:s}),r.push({offset:(n+1)/e,color:s})}return r}(s,h));const u=[];o??=document.createElement("canvas"),function(t,e,r,i,n){const s=r+2*n;t.width=s,t.height=i;const o=(n+1)/s,a=t.getContext("2d",{willReadFrequently:!0});if(e.length>0){const t=a.createLinearGradient(0,0,s,i);c(t,e,o),a.fillStyle=t}else a.fillStyle="rgba(128, 128, 128, 1)";a.fillRect(0,0,s,i)}(o,s,h,1,0);const f=o.getContext("2d").getImageData(0,0,h,1).data;for(let t=0,e=0;t<h;t++,e=4*t){const r=[f[e+0],f[e+1],f[e+2],f[e+3]];u.push({offset:t/h,color:r}),u.push({offset:(t+1)/h,color:r})}return c(t,u)}function l(t){const e=[];switch(t.type){case"CIMPolarContinuousColorRamp":case"CIMLinearContinuousColorRamp":{"CIMPolarContinuousColorRamp"===t.type&&s().warnOnce("CIMPolarContinuousColorRamp is currently unsupported. Falling back to CIMLinearContinuousColorRamp.");const r=t;e.push({offset:0,color:[r.fromColor[0],r.fromColor[1],r.fromColor[2],r.fromColor[3]/255]}),e.push({offset:1,color:[r.toColor[0],r.toColor[1],r.toColor[2],r.toColor[3]/255]});break}case"CIMFixedColorRamp":{const r=t,i=1/(r.colors.length-1);let n=0;for(const t of r.colors)e.push({offset:n,color:[t[0],t[1],t[2],t[3]/255]}),n+=i;break}case"CIMMultipartColorRamp":{const r=t,i=r.weights.reduce((t,e)=>t+e,0);let n=0;for(let t=0;t<r.colorRamps.length;t++){const s=r.colorRamps[t],o=r.weights[t],a=l(s);for(const t of a)e.push({offset:(n+t.offset*o)/i,color:t.color});n+=o}break}default:s().error(`Color ramp "${t.type}" currently unsupported.`)}return e}function c(t,e,r=0){for(const{offset:i,color:n}of e)t.addColorStop(Math.min(Math.max(i,r),1-r),`rgba(${n[0]}, ${n[1]}, ${n[2]}, ${n[3]})`)}},13337(t,e,r){r.d(e,["h",0,{Relative:0,Absolute:1}])},93397(t,e,r){r.d(e,{Bu:()=>_,DW:()=>M,FH:()=>z,FM:()=>a,Kn:()=>g,Kq:()=>W,MM:()=>u,Nl:()=>w,O2:()=>k,YC:()=>R,YF:()=>I,_1:()=>b,_d:()=>S,_h:()=>o,bs:()=>v,e6:()=>c,gQ:()=>s,jn:()=>m,lW:()=>h,ll:()=>E,mA:()=>f,oI:()=>$,pM:()=>C,pV:()=>y,pk:()=>T,rB:()=>A,xo:()=>x,yX:()=>O,zb:()=>P,zr:()=>d});var i=r(28076);function n(t){let e=t.length;for(;e--;)if(!" /-,\n".includes(t.charAt(e)))return!1;return!0}function s(t,e){const r=[];let i=0,s=-1;do{if(s=t.indexOf("[",i),s>=i){if(s>i){const e=t.slice(i,s);r.push([e,null,n(e)])}if(i=s+1,s=t.indexOf("]",i),s>=i){if(s>i){const n=e[t.slice(i,s)];n&&r.push([null,n,!1])}i=s+1}}}while(-1!==s);if(i<t.length){const e=t.slice(i);r.push([e,null,n(e)])}return r}function o(t,e,r){let i="",n=null;for(const r of e){const[e,s,o]=r;if(null!=e&&""!==e)o?n=e:(null!=n&&(i+=n,n=null),i+=e);else{const e=t.readAttribute(s);null!=e&&""!==e&&(null!==n&&(i+=n,n=null),i+=e)}}return l(i,r)}function a(t,e,r,i){let n="",s=null;for(const i of e){const[e,o,a]=i;if(null!=e&&""!==e)a?s=e:(null!=s&&(n+=s,s=null),n+=e);else{let e=o;null!=r&&(e=L(o,r));const i=t.attributes[e];null!=i&&""!==i&&(null!=s&&(n+=s,s=null),n+=i)}}return l(n,i)}function l(t,e){switch("string"!=typeof t&&(t=String(t)),e){case"LowerCase":return t.toLowerCase();case"Allcaps":return t.toUpperCase();default:return t}}function c(t){return t?[t[0],t[1],t[2],t[3]/255]:[0,0,0,0]}function h(t){return t.data?.symbol??null}function u(t){return"CIMVectorMarker"===t.type||"CIMPictureMarker"===t.type||"CIMBarChartMarker"===t.type||"CIMCharacterMarker"===t.type||"CIMPieChartMarker"===t.type||"CIMStackedBarChartMarker"===t.type}function f(t){return"CIMGradientStroke"===t.type||"CIMPictureStroke"===t.type||"CIMSolidStroke"===t.type}function m(t){return null!=t&&("CIMGradientFill"===t.type||"CIMHatchFill"===t.type||"CIMPictureFill"===t.type||"CIMSolidFill"===t.type||"CIMWaterFill"===t.type)}function d(t){return null!=t&&("CIMMarkerPlacementAlongLineRandomSize"===t.type||"CIMMarkerPlacementAlongLineSameSize"===t.type||"CIMMarkerPlacementAlongLineVariableSize"===t.type||"CIMMarkerPlacementAtExtremities"===t.type||"CIMMarkerPlacementAtMeasuredUnits"===t.type||"CIMMarkerPlacementAtRatioPositions"===t.type||"CIMMarkerPlacementOnLine"===t.type||"CIMMarkerPlacementOnVertices"===t.type)}const p=(t,e=0)=>null==t||isNaN(t)?e:t;function y(t){if(!t)return"normal";switch(t.toLowerCase()){case"italic":return"italic";case"oblique":return"oblique";default:return"normal"}}function g(t){if(!t)return"normal";switch(t.toLowerCase()){case"bold":return"bold";case"bolder":return"bolder";case"lighter":return"lighter";default:return"normal"}}function S(t){let e="normal",r="normal";if(t){const i=t.toLowerCase();i.includes("italic")?e="italic":i.includes("oblique")&&(e="oblique"),i.includes("bold")?r="bold":i.includes("light")&&(r="lighter")}return{style:e,weight:r}}function M(t){return t.underline?"underline":t.strikethrough?"line-through":"none"}function C(t){if(!t)return null;switch(t.type){case"CIMPolygonSymbol":if(t.symbolLayers)for(const e of t.symbolLayers){const t=C(e);if(null!=t)return t}break;case"CIMTextSymbol":return C(t.symbol);case"CIMSolidFill":return t.color}return null}function b(t){if(t)switch(t.type){case"CIMPolygonSymbol":case"CIMLineSymbol":{const e=t.symbolLayers;if(e)for(const t of e){const e=b(t);if(null!=e)return e}break}case"CIMTextSymbol":return b(t.symbol);case"CIMSolidStroke":return t.color}}function x(t){if(t)switch(t.type){case"CIMPolygonSymbol":case"CIMLineSymbol":if(t.symbolLayers)for(const e of t.symbolLayers){const t=x(e);if(void 0!==t)return t}break;case"CIMTextSymbol":return x(t.symbol);case"CIMSolidStroke":case"CIMGradientStroke":case"CIMPictureStroke":return t.width}}function _(t){switch(t){case"Left":default:return"left";case"Right":return"right";case"Center":return"center";case"Justify":return"justify"}}function w(t){switch(t){default:case"Bottom":return"bottom";case"Top":return"top";case"Center":return"middle";case"Baseline":return"baseline"}}function k(t){return(t?Object.keys(t):[]).map(e=>({name:e,alias:e,type:"string"==typeof t[e]?"esriFieldTypeString":"esriFieldTypeDouble"}))}function I(t){return t?t.charAt(0).toLowerCase()+t.slice(1):t}function P(t,e,r,i,n,s,o=!0){const{infos:a}=s;let l=1,c=0,h=0,u=0,f=1;for(const{absoluteAnchorPoint:t,offsetX:e,offsetY:r,rotation:i,size:n,frameHeight:s,rotateClockWise:m,scaleSymbolsProportionally:d}of a)f=t?1:l,h=G(e,r,c,f,h),u=F(e,r,c,f,u),s&&(d||o)&&(l*=n/s),c=H(i,m,c);const m=G(i,n,c,f,h),d=F(i,n,c,f,u);return{size:t*l,rotation:H(e,r,c),offsetX:m,offsetY:d}}function z(t){return t?.dashTemplate&&(t.dashTemplate=function(t){return"string"==typeof t?function(t){return t.split(" ").map(t=>Number(t))}(t):t}(t.dashTemplate)),t}function v(t){if(null==t)return"Normal";switch(t.type){case"CIMTextSymbol":return t.textCase??"Normal";case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":{const e=t.symbolLayers;if(!e)return"Normal";for(const t of e)if("CIMVectorMarker"===t.type)return v(t)}break;case"CIMVectorMarker":{const e=t.markerGraphics;if(!e)return"Normal";for(const t of e)if(t.symbol)return v(t.symbol)}}return"Normal"}function R(t){if(t)switch(t.type){case"CIMTextSymbol":return t.height;case"CIMPointSymbol":{let e=0;if(t.symbolLayers)for(const r of t.symbolLayers)if(r)switch(r.type){case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":case"CIMObjectMarker3D":case"CIMglTFMarker3D":{const t=r.size??i.D.CIMVectorMarker.size;t>e&&(e=t);break}}return e}case"CIMLineSymbol":case"CIMPolygonSymbol":{let e=0;if(t.symbolLayers)for(const r of t.symbolLayers)if(r)switch(r.type){case"CIMSolidStroke":case"CIMPictureStroke":case"CIMGradientStroke":{const t=r.width;null!=t&&t>e&&(e=t);break}case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":case"CIMObjectMarker3D":case"CIMglTFMarker3D":if(r.markerPlacement&&d(r.markerPlacement)){const t=r.size??i.D.CIMVectorMarker.size;t>e&&(e=t)}break;case"CIMPictureFill":{const t=r.height;null!=t&&t>e&&(e=t)}}return e}}}function L(t,e){if(null!==e){const r=e.get(t);return r?r.name:t}return t}function T(t){return t.map(t=>({...t,propertyName:I(t.propertyName)}))}function A(t){const e={};for(const r in t){const i=t[r];e[I(r)]=i}return e}function E(t){if(!t)return 0;let e=0;for(const r of t)e+=D(r);return e}function D(t){if(!t)return 0;if(W(t))return t.inflateSize??256;switch(t.type){case"CIMGeometricEffectArrow":return Math.abs(.5*t.width);case"CIMGeometricEffectBuffer":return Math.abs(t.size);case"CIMGeometricEffectCircularSector":return Math.abs(t.radius??25);case"CIMGeometricEffectControlMeasureLine":return 500;case"CIMGeometricEffectExtension":return Math.abs(t.length);case"CIMGeometricEffectJog":return Math.abs(.5*t.length);case"CIMGeometricEffectMove":return Math.max(Math.abs(p(t.offsetX)),Math.abs(p(t.offsetY)));case"CIMGeometricEffectOffset":case"CIMGeometricEffectOffsetTangent":return Math.abs(t.offset);case"CIMGeometricEffectRadial":return Math.abs(t.length??5);case"CIMGeometricEffectRegularPolygon":return Math.abs(t.radius);case"CIMGeometricEffectRotate":case"CIMGeometricEffectScale":default:return 0;case"CIMGeometricEffectTaperedPolygon":return.5*Math.max(Math.abs(t.fromWidth),Math.abs(t.toWidth));case"CIMGeometricEffectWave":return Math.abs(t.amplitude);case"CIMGeometricEffectDonut":return Math.abs(t.width)}}function F(t,e,r,i,n){const s=r*Math.PI/180;if(s){const r=Math.cos(s);return(Math.sin(s)*t+r*e)*i+n}return e*i+n}function G(t,e,r,i,n){const s=r*Math.PI/180;return s?(Math.cos(s)*t-Math.sin(s)*e)*i+n:t*i+n}function H(t,e,r){return e?r-t:r+t}function O(t,e){return Math.max(Math.min((t??e)/100,1),0)}function W(t){return t.type.startsWith("Private")}function $(t){return null!=t&&function(t){return"setControlPoint"in t&&"getControlPoint"in t&&"setControlPointAt"in t&&"getControlPointAt"in t}(t)?t:void 0}r.d(e,["$w",0,p,"UE",0,t=>t.includes("data:image/svg+xml")])}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1086,8768],{80200(e,t,r){r.d(t,{d:()=>c});const i={Base64:0,Hex:1,String:2,Raw:3};function s(e,t){const r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function n(e,t,r,i,n,o){return s(function(e,t){return e<<t|e>>>32-t}(s(s(t,e),s(i,o)),n),r)}function o(e,t,r,i,s,o,a){return n(t&r|~t&i,e,t,s,o,a)}function a(e,t,r,i,s,o,a){return n(t&i|r&~i,e,t,s,o,a)}function l(e,t,r,i,s,o,a){return n(t^r^i,e,t,s,o,a)}function u(e,t,r,i,s,o,a){return n(r^(t|~i),e,t,s,o,a)}function d(e,t){e[t>>5]|=128<<t%32,e[14+(t+64>>>9<<4)]=t;let r=1732584193,i=-271733879,n=-1732584194,d=271733878;for(let t=0;t<e.length;t+=16){const c=r,p=i,h=n,y=d;r=o(r,i,n,d,e[t],7,-680876936),d=o(d,r,i,n,e[t+1],12,-389564586),n=o(n,d,r,i,e[t+2],17,606105819),i=o(i,n,d,r,e[t+3],22,-1044525330),r=o(r,i,n,d,e[t+4],7,-176418897),d=o(d,r,i,n,e[t+5],12,1200080426),n=o(n,d,r,i,e[t+6],17,-1473231341),i=o(i,n,d,r,e[t+7],22,-45705983),r=o(r,i,n,d,e[t+8],7,1770035416),d=o(d,r,i,n,e[t+9],12,-1958414417),n=o(n,d,r,i,e[t+10],17,-42063),i=o(i,n,d,r,e[t+11],22,-1990404162),r=o(r,i,n,d,e[t+12],7,1804603682),d=o(d,r,i,n,e[t+13],12,-40341101),n=o(n,d,r,i,e[t+14],17,-1502002290),i=o(i,n,d,r,e[t+15],22,1236535329),r=a(r,i,n,d,e[t+1],5,-165796510),d=a(d,r,i,n,e[t+6],9,-1069501632),n=a(n,d,r,i,e[t+11],14,643717713),i=a(i,n,d,r,e[t],20,-373897302),r=a(r,i,n,d,e[t+5],5,-701558691),d=a(d,r,i,n,e[t+10],9,38016083),n=a(n,d,r,i,e[t+15],14,-660478335),i=a(i,n,d,r,e[t+4],20,-405537848),r=a(r,i,n,d,e[t+9],5,568446438),d=a(d,r,i,n,e[t+14],9,-1019803690),n=a(n,d,r,i,e[t+3],14,-187363961),i=a(i,n,d,r,e[t+8],20,1163531501),r=a(r,i,n,d,e[t+13],5,-1444681467),d=a(d,r,i,n,e[t+2],9,-51403784),n=a(n,d,r,i,e[t+7],14,1735328473),i=a(i,n,d,r,e[t+12],20,-1926607734),r=l(r,i,n,d,e[t+5],4,-378558),d=l(d,r,i,n,e[t+8],11,-2022574463),n=l(n,d,r,i,e[t+11],16,1839030562),i=l(i,n,d,r,e[t+14],23,-35309556),r=l(r,i,n,d,e[t+1],4,-1530992060),d=l(d,r,i,n,e[t+4],11,1272893353),n=l(n,d,r,i,e[t+7],16,-155497632),i=l(i,n,d,r,e[t+10],23,-1094730640),r=l(r,i,n,d,e[t+13],4,681279174),d=l(d,r,i,n,e[t],11,-358537222),n=l(n,d,r,i,e[t+3],16,-722521979),i=l(i,n,d,r,e[t+6],23,76029189),r=l(r,i,n,d,e[t+9],4,-640364487),d=l(d,r,i,n,e[t+12],11,-421815835),n=l(n,d,r,i,e[t+15],16,530742520),i=l(i,n,d,r,e[t+2],23,-995338651),r=u(r,i,n,d,e[t],6,-198630844),d=u(d,r,i,n,e[t+7],10,1126891415),n=u(n,d,r,i,e[t+14],15,-1416354905),i=u(i,n,d,r,e[t+5],21,-57434055),r=u(r,i,n,d,e[t+12],6,1700485571),d=u(d,r,i,n,e[t+3],10,-1894986606),n=u(n,d,r,i,e[t+10],15,-1051523),i=u(i,n,d,r,e[t+1],21,-2054922799),r=u(r,i,n,d,e[t+8],6,1873313359),d=u(d,r,i,n,e[t+15],10,-30611744),n=u(n,d,r,i,e[t+6],15,-1560198380),i=u(i,n,d,r,e[t+13],21,1309151649),r=u(r,i,n,d,e[t+4],6,-145523070),d=u(d,r,i,n,e[t+11],10,-1120210379),n=u(n,d,r,i,e[t+2],15,718787259),i=u(i,n,d,r,e[t+9],21,-343485551),r=s(r,c),i=s(i,p),n=s(n,h),d=s(d,y)}return[r,i,n,d]}function c(e,t=i.Hex){const r=t||i.Base64,s=d(function(e){const t=[];for(let r=0,i=8*e.length;r<i;r+=8)t[r>>5]|=(255&e.charCodeAt(r/8))<<r%32;return t}(e),8*e.length);switch(r){case i.Raw:return s;case i.Hex:return function(e){const t="0123456789abcdef",r=[];for(let i=0,s=4*e.length;i<s;i++)r.push(t.charAt(e[i>>2]>>i%4*8+4&15)+t.charAt(e[i>>2]>>i%4*8&15));return r.join("")}(s);case i.String:return function(e){const t=[];for(let r=0,i=32*e.length;r<i;r+=8)t.push(String.fromCharCode(e[r>>5]>>>r%32&255));return t.join("")}(s);case i.Base64:return function(e){const t=[];for(let r=0,i=4*e.length;r<i;r+=3){const i=(e[r>>2]>>r%4*8&255)<<16|(e[r+1>>2]>>(r+1)%4*8&255)<<8|e[r+2>>2]>>(r+2)%4*8&255;for(let s=0;s<4;s++)8*r+6*s>32*e.length?t.push("="):t.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(i>>6*(3-s)&63))}return t.join("")}(s)}}r.d(t,["T",0,i])},87024(e,t,r){r.d(t,{P:()=>h});var i=r(49186),s=r(80200),n=r(76553),o=r(84952),a=r(13069),l=r(96156),u=r(35666),d=r(10107),c=r(85648),p=r(97159);function h(e){const t=e?.origins??[void 0];return(r,i)=>{const s=function(e,t,r){if("resource"===e?.type)return function(e,t,r){const i=(0,l.z4)(t,r);return{type:String,read:(e,t,r)=>{const s=(0,p.r)(e,t,r);return i.type===String?s:"function"==typeof i.type?new i.type({url:s}):void 0},write:{isRequired:i.json?.write?.isRequired,writer(t,s,a,l){if(!l?.resources)return"string"==typeof t?void(s[a]=(0,p.t)(t,l)):void(s[a]=t.write({},l));const d=function(e){return null==e?null:"string"==typeof e?e:e.url}(t),h=(0,p.t)(d,{...l,verifyItemRelativeUrls:l?.verifyItemRelativeUrls?{writtenUrls:l.verifyItemRelativeUrls.writtenUrls,rootPath:void 0}:void 0},1),m=i.type!==String&&(!(0,n.H)(this)||l?.origin&&this.originIdOf(r)>(0,u.aB)(l.origin)),v={object:this,propertyName:r,value:t,targetUrl:h,dest:s,targetPropertyName:a,context:l,params:e};l?.portalItem&&h&&!(0,o.oP)(h)?m&&e?.contentAddressed?y(v):m?function(e){const{context:t,targetUrl:r,params:i,value:s,dest:n,targetPropertyName:a}=e;if(!t.portalItem)return;const l=t.portalItem.resourceFromPath(r),u=g(s,r,t),d=(0,c.n)(u),p=(0,o.Zo)(l.path),h=i?.compress??!1;d===p?(t.resources&&f({...e,resource:l,content:u,compress:h,updates:t.resources.toUpdate}),n[a]=r):y(e)}(v):function({context:e,targetUrl:t,dest:r,targetPropertyName:i}){e.portalItem&&e.resources&&(e.resources.toKeep.push({resource:e.portalItem.resourceFromPath(t),compress:!1}),r[i]=t)}(v):l?.portalItem&&(null==h||null!=(0,p.i)(h)||(0,o.w8)(h)||m)?y(v):s[a]=h}}}}(e,t,r);switch(e?.type??"other"){case"other":return{read:!0,write:!0};case"url":{const{read:e,write:t}=p.b;return{read:e,write:t}}}}(e,r,i);for(const e of t){const t=(0,d.rM)(r,e,i);for(const e in s)t[e]=s[e]}}}function y(e){const{targetUrl:t,params:r,value:n,context:l,dest:u,targetPropertyName:d}=e;if(!l.portalItem)return;const h=(0,p.p)(t),y=g(n,t,l);if(r?.contentAddressed&&"json"!==y.type)return void l.messages?.push(new i.A("persistable:contentAddressingUnsupported",`Property "${d}" is trying to serializing a resource with content of type ${y.type} with content addressing. Content addressing is only supported for json resources.`,{content:y}));const m=r?.contentAddressed&&"json"===y.type?(0,s.d)(y.jsonString):h?.filename??(0,a.lk)(),v=(0,o.fj)(r?.prefix??h?.prefix,m),w=`${v}.${(0,c.n)(y)}`;if(r?.contentAddressed&&l.resources&&"json"===y.type){const e=l.resources.toKeep.find(({resource:e})=>e.path===w)??l.resources.toAdd.find(({resource:e})=>e.path===w);if(e)return void(u[d]=e.resource.itemRelativeUrl)}const b=l.portalItem.resourceFromPath(w);(0,o.w8)(t)&&l.resources&&l.resources.pendingOperations.push((0,o.tk)(t).then(e=>{b.path=`${v}.${(0,c.n)({type:"blob",blob:e})}`,u[d]=b.itemRelativeUrl}).catch(()=>{}));const M=r?.compress??!1;l.resources&&f({...e,resource:b,content:y,compress:M,updates:l.resources.toAdd}),u[d]=b.itemRelativeUrl}function f({object:e,propertyName:t,updates:r,resource:i,content:s,compress:n}){r.push({resource:i,content:s,compress:n,finish:r=>{!function(e,t,r){"string"==typeof e[t]?e[t]=r.url:e[t].url=r.url}(e,t,r)}})}function g(e,t,r){return"string"==typeof e?{type:"url",url:t}:{type:"json",jsonString:JSON.stringify(e.toJSON(r))}}},58083(e,t,r){r.d(t,{$0:()=>m,$h:()=>x,B8:()=>d,C:()=>n,D_:()=>a,N9:()=>w,O7:()=>C,Qw:()=>u,Tl:()=>p,X_:()=>A,e$:()=>y,eL:()=>f,hM:()=>v,hZ:()=>o,hs:()=>h,kN:()=>g,l:()=>S,lw:()=>c,mg:()=>l,o1:()=>F,sC:()=>I,t2:()=>E,t5:()=>L,tZ:()=>P,ut:()=>j});var i=r(51850),s=r(34304);function n(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function o(e,t,r,i,s,n,o,a,l,u,d,c,p,h,y,f,g){return e[0]=t,e[1]=r,e[2]=i,e[3]=s,e[4]=n,e[5]=o,e[6]=a,e[7]=l,e[8]=u,e[9]=d,e[10]=c,e[11]=p,e[12]=h,e[13]=y,e[14]=f,e[15]=g,e}function a(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function l(e,t){if(e===t){const r=t[1],i=t[2],s=t[3],n=t[6],o=t[7],a=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=i,e[9]=n,e[11]=t[14],e[12]=s,e[13]=o,e[14]=a}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}function u(e,t){return d(e,t)||a(e),e}function d(e,t){const r=t[0],i=t[1],s=t[2],n=t[3],o=t[4],a=t[5],l=t[6],u=t[7],d=t[8],c=t[9],p=t[10],h=t[11],y=t[12],f=t[13],g=t[14],m=t[15],v=r*a-i*o,w=r*l-s*o,b=r*u-n*o,M=i*l-s*a,I=i*u-n*a,A=s*u-n*l,S=d*f-c*y,F=d*g-p*y,C=d*m-h*y,x=c*g-p*f,L=c*m-h*f,T=p*m-h*g;let E=v*T-w*L+b*x+M*C-I*F+A*S;return E?(E=1/E,e[0]=(a*T-l*L+u*x)*E,e[1]=(s*L-i*T-n*x)*E,e[2]=(f*A-g*I+m*M)*E,e[3]=(p*I-c*A-h*M)*E,e[4]=(l*C-o*T-u*F)*E,e[5]=(r*T-s*C+n*F)*E,e[6]=(g*b-y*A-m*w)*E,e[7]=(d*A-p*b+h*w)*E,e[8]=(o*L-a*C+u*S)*E,e[9]=(i*C-r*L-n*S)*E,e[10]=(y*I-f*b+m*v)*E,e[11]=(c*b-d*I-h*v)*E,e[12]=(a*F-o*x-l*S)*E,e[13]=(r*x-i*F+s*S)*E,e[14]=(f*w-y*M-g*v)*E,e[15]=(d*M-c*w+p*v)*E,e):null}function c(e,t,r){const i=t[0],s=t[1],n=t[2],o=t[3],a=t[4],l=t[5],u=t[6],d=t[7],c=t[8],p=t[9],h=t[10],y=t[11],f=t[12],g=t[13],m=t[14],v=t[15];let w=r[0],b=r[1],M=r[2],I=r[3];return e[0]=w*i+b*a+M*c+I*f,e[1]=w*s+b*l+M*p+I*g,e[2]=w*n+b*u+M*h+I*m,e[3]=w*o+b*d+M*y+I*v,w=r[4],b=r[5],M=r[6],I=r[7],e[4]=w*i+b*a+M*c+I*f,e[5]=w*s+b*l+M*p+I*g,e[6]=w*n+b*u+M*h+I*m,e[7]=w*o+b*d+M*y+I*v,w=r[8],b=r[9],M=r[10],I=r[11],e[8]=w*i+b*a+M*c+I*f,e[9]=w*s+b*l+M*p+I*g,e[10]=w*n+b*u+M*h+I*m,e[11]=w*o+b*d+M*y+I*v,w=r[12],b=r[13],M=r[14],I=r[15],e[12]=w*i+b*a+M*c+I*f,e[13]=w*s+b*l+M*p+I*g,e[14]=w*n+b*u+M*h+I*m,e[15]=w*o+b*d+M*y+I*v,e}function p(e,t,r){const i=r[0],s=r[1],n=r[2];if(t===e)e[12]=t[0]*i+t[4]*s+t[8]*n+t[12],e[13]=t[1]*i+t[5]*s+t[9]*n+t[13],e[14]=t[2]*i+t[6]*s+t[10]*n+t[14],e[15]=t[3]*i+t[7]*s+t[11]*n+t[15];else{const r=t[0],o=t[1],a=t[2],l=t[3],u=t[4],d=t[5],c=t[6],p=t[7],h=t[8],y=t[9],f=t[10],g=t[11];e[0]=r,e[1]=o,e[2]=a,e[3]=l,e[4]=u,e[5]=d,e[6]=c,e[7]=p,e[8]=h,e[9]=y,e[10]=f,e[11]=g,e[12]=r*i+u*s+h*n+t[12],e[13]=o*i+d*s+y*n+t[13],e[14]=a*i+c*s+f*n+t[14],e[15]=l*i+p*s+g*n+t[15]}return e}function h(e,t,r){const i=r[0],s=r[1],n=r[2];return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*s,e[5]=t[5]*s,e[6]=t[6]*s,e[7]=t[7]*s,e[8]=t[8]*n,e[9]=t[9]*n,e[10]=t[10]*n,e[11]=t[11]*n,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function y(e,t,r,i){let o=i[0],a=i[1],l=i[2],u=Math.sqrt(o*o+a*a+l*l);if(u<=(0,s.FD)())return void n(e,t);u=1/u,o*=u,a*=u,l*=u;const d=Math.sin(r),c=Math.cos(r),p=1-c,h=t[0],y=t[1],f=t[2],g=t[3],m=t[4],v=t[5],w=t[6],b=t[7],M=t[8],I=t[9],A=t[10],S=t[11],F=o*o*p+c,C=a*o*p+l*d,x=l*o*p-a*d,L=o*a*p-l*d,T=a*a*p+c,E=l*a*p+o*d,j=o*l*p+a*d,P=a*l*p-o*d,O=l*l*p+c;e[0]=h*F+m*C+M*x,e[1]=y*F+v*C+I*x,e[2]=f*F+w*C+A*x,e[3]=g*F+b*C+S*x,e[4]=h*L+m*T+M*E,e[5]=y*L+v*T+I*E,e[6]=f*L+w*T+A*E,e[7]=g*L+b*T+S*E,e[8]=h*j+m*P+M*O,e[9]=y*j+v*P+I*O,e[10]=f*j+w*P+A*O,e[11]=g*j+b*P+S*O,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15])}function f(e,t,r){const i=Math.sin(r),s=Math.cos(r),n=t[4],o=t[5],a=t[6],l=t[7],u=t[8],d=t[9],c=t[10],p=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=n*s+u*i,e[5]=o*s+d*i,e[6]=a*s+c*i,e[7]=l*s+p*i,e[8]=u*s-n*i,e[9]=d*s-o*i,e[10]=c*s-a*i,e[11]=p*s-l*i,e}function g(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}function m(e,t,r){if(0===t)return a(e);let i=r[0],n=r[1],o=r[2],l=Math.sqrt(i*i+n*n+o*o);if(l<=(0,s.FD)())return null;l=1/l,i*=l,n*=l,o*=l;const u=Math.sin(t),d=Math.cos(t),c=1-d;return e[0]=i*i*c+d,e[1]=n*i*c+o*u,e[2]=o*i*c-n*u,e[3]=0,e[4]=i*n*c-o*u,e[5]=n*n*c+d,e[6]=o*n*c+i*u,e[7]=0,e[8]=i*o*c+n*u,e[9]=n*o*c-i*u,e[10]=o*o*c+d,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function v(e,t){const r=Math.sin(t),i=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=i,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function w(e,t){const r=Math.sin(t),i=Math.cos(t);return e[0]=i,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=i,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function b(e,t,r){const i=t[0],s=t[1],n=t[2],o=t[3],a=i+i,l=s+s,u=n+n,d=i*a,c=i*l,p=i*u,h=s*l,y=s*u,f=n*u,g=o*a,m=o*l,v=o*u;return e[0]=1-(h+f),e[1]=c+v,e[2]=p-m,e[3]=0,e[4]=c-v,e[5]=1-(d+f),e[6]=y+g,e[7]=0,e[8]=p+m,e[9]=y-g,e[10]=1-(d+h),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}const M=(0,i.vt)();function I(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e}function A(e,t){const r=t[0],i=t[1],s=t[2],n=t[4],o=t[5],a=t[6],l=t[8],u=t[9],d=t[10];return e[0]=Math.sqrt(r*r+i*i+s*s),e[1]=Math.sqrt(n*n+o*o+a*a),e[2]=Math.sqrt(l*l+u*u+d*d),e}function S(e,t){const r=t[0]+t[5]+t[10];let i=0;return r>0?(i=2*Math.sqrt(r+1),e[3]=.25*i,e[0]=(t[6]-t[9])/i,e[1]=(t[8]-t[2])/i,e[2]=(t[1]-t[4])/i):t[0]>t[5]&&t[0]>t[10]?(i=2*Math.sqrt(1+t[0]-t[5]-t[10]),e[3]=(t[6]-t[9])/i,e[0]=.25*i,e[1]=(t[1]+t[4])/i,e[2]=(t[8]+t[2])/i):t[5]>t[10]?(i=2*Math.sqrt(1+t[5]-t[0]-t[10]),e[3]=(t[8]-t[2])/i,e[0]=(t[1]+t[4])/i,e[1]=.25*i,e[2]=(t[6]+t[9])/i):(i=2*Math.sqrt(1+t[10]-t[0]-t[5]),e[3]=(t[1]-t[4])/i,e[0]=(t[8]+t[2])/i,e[1]=(t[6]+t[9])/i,e[2]=.25*i),e}function F(e,t,r,i){const s=t[0],n=t[1],o=t[2],a=t[3],l=s+s,u=n+n,d=o+o,c=s*l,p=s*u,h=s*d,y=n*u,f=n*d,g=o*d,m=a*l,v=a*u,w=a*d,b=i[0],M=i[1],I=i[2];return e[0]=(1-(y+g))*b,e[1]=(p+w)*b,e[2]=(h-v)*b,e[3]=0,e[4]=(p-w)*M,e[5]=(1-(c+g))*M,e[6]=(f+m)*M,e[7]=0,e[8]=(h+v)*I,e[9]=(f-m)*I,e[10]=(1-(c+y))*I,e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}function C(e,t,r,i,s){const n=t[0],o=t[1],a=t[2],l=t[3],u=n+n,d=o+o,c=a+a,p=n*u,h=n*d,y=n*c,f=o*d,g=o*c,m=a*c,v=l*u,w=l*d,b=l*c,M=i[0],I=i[1],A=i[2],S=s[0],F=s[1],C=s[2],x=(1-(f+m))*M,L=(h+b)*M,T=(y-w)*M,E=(h-b)*I,j=(1-(p+m))*I,P=(g+v)*I,O=(y+w)*A,_=(g-v)*A,R=(1-(p+f))*A;return e[0]=x,e[1]=L,e[2]=T,e[3]=0,e[4]=E,e[5]=j,e[6]=P,e[7]=0,e[8]=O,e[9]=_,e[10]=R,e[11]=0,e[12]=r[0]+S-(x*S+E*F+O*C),e[13]=r[1]+F-(L*S+j*F+_*C),e[14]=r[2]+C-(T*S+P*F+R*C),e[15]=1,e}function x(e,t,r,i,s,n,o){const a=1/(r-t),l=1/(s-i),u=1/(n-o);return e[0]=2*n*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*n*l,e[6]=0,e[7]=0,e[8]=(r+t)*a,e[9]=(s+i)*l,e[10]=(o+n)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*n*2*u,e[15]=0,e}function L(e,t,r,i){const n=t[0],o=t[1],l=t[2];let u=n-r[0],d=o-r[1],c=l-r[2];const p=(0,s.FD)();if(Math.abs(u)<p&&Math.abs(d)<p&&Math.abs(c)<p)return void a(e);let h=1/Math.sqrt(u*u+d*d+c*c);u*=h,d*=h,c*=h;const y=i[0],f=i[1],g=i[2];let m=f*c-g*d,v=g*u-y*c,w=y*d-f*u;h=Math.sqrt(m*m+v*v+w*w),h?(h=1/h,m*=h,v*=h,w*=h):(m=0,v=0,w=0);let b=d*w-c*v,M=c*m-u*w,I=u*v-d*m;h=Math.sqrt(b*b+M*M+I*I),h?(h=1/h,b*=h,M*=h,I*=h):(b=0,M=0,I=0),e[0]=m,e[1]=b,e[2]=u,e[3]=0,e[4]=v,e[5]=M,e[6]=d,e[7]=0,e[8]=w,e[9]=I,e[10]=c,e[11]=0,e[12]=-(m*n+v*o+w*l),e[13]=-(b*n+M*o+I*l),e[14]=-(u*n+d*o+c*l),e[15]=1}function T(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e[3]=t[3]-r[3],e[4]=t[4]-r[4],e[5]=t[5]-r[5],e[6]=t[6]-r[6],e[7]=t[7]-r[7],e[8]=t[8]-r[8],e[9]=t[9]-r[9],e[10]=t[10]-r[10],e[11]=t[11]-r[11],e[12]=t[12]-r[12],e[13]=t[13]-r[13],e[14]=t[14]-r[14],e[15]=t[15]-r[15],e}function E(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]}function j(e){const t=(0,s.FD)(),r=e[0],i=e[1],n=e[2],o=e[4],a=e[5],l=e[6],u=e[8],d=e[9],c=e[10];return Math.abs(1-(r*r+o*o+u*u))<=t&&Math.abs(1-(i*i+a*a+d*d))<=t&&Math.abs(1-(n*n+l*l+c*c))<=t}function P(e){return 1===e[0]&&0===e[1]&&0===e[2]&&0===e[4]&&1===e[5]&&0===e[6]&&0===e[8]&&0===e[9]&&1===e[10]}const O=c,_=T;Object.freeze(Object.defineProperty({__proto__:null,add:function(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e[3]=t[3]+r[3],e[4]=t[4]+r[4],e[5]=t[5]+r[5],e[6]=t[6]+r[6],e[7]=t[7]+r[7],e[8]=t[8]+r[8],e[9]=t[9]+r[9],e[10]=t[10]+r[10],e[11]=t[11]+r[11],e[12]=t[12]+r[12],e[13]=t[13]+r[13],e[14]=t[14]+r[14],e[15]=t[15]+r[15],e},adjoint:function(e,t){const r=t[0],i=t[1],s=t[2],n=t[3],o=t[4],a=t[5],l=t[6],u=t[7],d=t[8],c=t[9],p=t[10],h=t[11],y=t[12],f=t[13],g=t[14],m=t[15];return e[0]=a*(p*m-h*g)-c*(l*m-u*g)+f*(l*h-u*p),e[1]=-(i*(p*m-h*g)-c*(s*m-n*g)+f*(s*h-n*p)),e[2]=i*(l*m-u*g)-a*(s*m-n*g)+f*(s*u-n*l),e[3]=-(i*(l*h-u*p)-a*(s*h-n*p)+c*(s*u-n*l)),e[4]=-(o*(p*m-h*g)-d*(l*m-u*g)+y*(l*h-u*p)),e[5]=r*(p*m-h*g)-d*(s*m-n*g)+y*(s*h-n*p),e[6]=-(r*(l*m-u*g)-o*(s*m-n*g)+y*(s*u-n*l)),e[7]=r*(l*h-u*p)-o*(s*h-n*p)+d*(s*u-n*l),e[8]=o*(c*m-h*f)-d*(a*m-u*f)+y*(a*h-u*c),e[9]=-(r*(c*m-h*f)-d*(i*m-n*f)+y*(i*h-n*c)),e[10]=r*(a*m-u*f)-o*(i*m-n*f)+y*(i*u-n*a),e[11]=-(r*(a*h-u*c)-o*(i*h-n*c)+d*(i*u-n*a)),e[12]=-(o*(c*g-p*f)-d*(a*g-l*f)+y*(a*p-l*c)),e[13]=r*(c*g-p*f)-d*(i*g-s*f)+y*(i*p-s*c),e[14]=-(r*(a*g-l*f)-o*(i*g-s*f)+y*(i*l-s*a)),e[15]=r*(a*p-l*c)-o*(i*p-s*c)+d*(i*l-s*a),e},copy:n,determinant:function(e){const t=e[0],r=e[1],i=e[2],s=e[3],n=e[4],o=e[5],a=e[6],l=e[7],u=e[8],d=e[9],c=e[10],p=e[11],h=e[12],y=e[13],f=e[14],g=e[15];return(t*o-r*n)*(c*g-p*f)-(t*a-i*n)*(d*g-p*y)+(t*l-s*n)*(d*f-c*y)+(r*a-i*o)*(u*g-p*h)-(r*l-s*o)*(u*f-c*h)+(i*l-s*a)*(u*y-d*h)},equals:function(e,t){if(e===t)return!0;const r=e[0],i=e[1],n=e[2],o=e[3],a=e[4],l=e[5],u=e[6],d=e[7],c=e[8],p=e[9],h=e[10],y=e[11],f=e[12],g=e[13],m=e[14],v=e[15],w=t[0],b=t[1],M=t[2],I=t[3],A=t[4],S=t[5],F=t[6],C=t[7],x=t[8],L=t[9],T=t[10],E=t[11],j=t[12],P=t[13],O=t[14],_=t[15],R=(0,s.FD)();return Math.abs(r-w)<=R*Math.max(1,Math.abs(r),Math.abs(w))&&Math.abs(i-b)<=R*Math.max(1,Math.abs(i),Math.abs(b))&&Math.abs(n-M)<=R*Math.max(1,Math.abs(n),Math.abs(M))&&Math.abs(o-I)<=R*Math.max(1,Math.abs(o),Math.abs(I))&&Math.abs(a-A)<=R*Math.max(1,Math.abs(a),Math.abs(A))&&Math.abs(l-S)<=R*Math.max(1,Math.abs(l),Math.abs(S))&&Math.abs(u-F)<=R*Math.max(1,Math.abs(u),Math.abs(F))&&Math.abs(d-C)<=R*Math.max(1,Math.abs(d),Math.abs(C))&&Math.abs(c-x)<=R*Math.max(1,Math.abs(c),Math.abs(x))&&Math.abs(p-L)<=R*Math.max(1,Math.abs(p),Math.abs(L))&&Math.abs(h-T)<=R*Math.max(1,Math.abs(h),Math.abs(T))&&Math.abs(y-E)<=R*Math.max(1,Math.abs(y),Math.abs(E))&&Math.abs(f-j)<=R*Math.max(1,Math.abs(f),Math.abs(j))&&Math.abs(g-P)<=R*Math.max(1,Math.abs(g),Math.abs(P))&&Math.abs(m-O)<=R*Math.max(1,Math.abs(m),Math.abs(O))&&Math.abs(v-_)<=R*Math.max(1,Math.abs(v),Math.abs(_))},exactEquals:E,frob:function(e){return Math.sqrt(e[0]**2+e[1]**2+e[2]**2+e[3]**2+e[4]**2+e[5]**2+e[6]**2+e[7]**2+e[8]**2+e[9]**2+e[10]**2+e[11]**2+e[12]**2+e[13]**2+e[14]**2+e[15]**2)},fromQuat:function(e,t){const r=t[0],i=t[1],s=t[2],n=t[3],o=r+r,a=i+i,l=s+s,u=r*o,d=i*o,c=i*a,p=s*o,h=s*a,y=s*l,f=n*o,g=n*a,m=n*l;return e[0]=1-c-y,e[1]=d+m,e[2]=p-g,e[3]=0,e[4]=d-m,e[5]=1-u-y,e[6]=h+f,e[7]=0,e[8]=p+g,e[9]=h-f,e[10]=1-u-c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},fromQuat2:function(e,t){const r=M,i=-t[0],s=-t[1],n=-t[2],o=t[3],a=t[4],l=t[5],u=t[6],d=t[7],c=i*i+s*s+n*n+o*o;return c>0?(r[0]=2*(a*o+d*i+l*n-u*s)/c,r[1]=2*(l*o+d*s+u*i-a*n)/c,r[2]=2*(u*o+d*n+a*s-l*i)/c):(r[0]=2*(a*o+d*i+l*n-u*s),r[1]=2*(l*o+d*s+u*i-a*n),r[2]=2*(u*o+d*n+a*s-l*i)),b(e,t,r),e},fromRotation:m,fromRotationTranslation:b,fromRotationTranslationScale:F,fromRotationTranslationScaleOrigin:C,fromScaling:function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},fromTranslation:g,fromXRotation:v,fromYRotation:function(e,t){const r=Math.sin(t),i=Math.cos(t);return e[0]=i,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},fromZRotation:w,frustum:x,getRotation:S,getScale:A,getTranslation:I,hasIdentityRotation:P,identity:a,invert:d,invertOrIdentity:u,isOrthoNormal:j,lookAt:L,mul:O,multiply:c,multiplyScalar:function(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*r,e[5]=t[5]*r,e[6]=t[6]*r,e[7]=t[7]*r,e[8]=t[8]*r,e[9]=t[9]*r,e[10]=t[10]*r,e[11]=t[11]*r,e[12]=t[12]*r,e[13]=t[13]*r,e[14]=t[14]*r,e[15]=t[15]*r,e},multiplyScalarAndAdd:function(e,t,r,i){return e[0]=t[0]+r[0]*i,e[1]=t[1]+r[1]*i,e[2]=t[2]+r[2]*i,e[3]=t[3]+r[3]*i,e[4]=t[4]+r[4]*i,e[5]=t[5]+r[5]*i,e[6]=t[6]+r[6]*i,e[7]=t[7]+r[7]*i,e[8]=t[8]+r[8]*i,e[9]=t[9]+r[9]*i,e[10]=t[10]+r[10]*i,e[11]=t[11]+r[11]*i,e[12]=t[12]+r[12]*i,e[13]=t[13]+r[13]*i,e[14]=t[14]+r[14]*i,e[15]=t[15]+r[15]*i,e},ortho:function(e,t,r,i,s,n,o){const a=1/(t-r),l=1/(i-s),u=1/(n-o);return e[0]=-2*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*a,e[13]=(s+i)*l,e[14]=(o+n)*u,e[15]=1,e},perspective:function(e,t,r,i,s){const n=1/Math.tan(t/2);let o;return e[0]=n/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=s&&s!==1/0?(o=1/(i-s),e[10]=(s+i)*o,e[14]=2*s*i*o):(e[10]=-1,e[14]=-2*i),e},perspectiveFromFieldOfView:function(e,t,r,i){const s=Math.tan(t.upDegrees*Math.PI/180),n=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),a=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+a),u=2/(s+n);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-(o-a)*l*.5,e[9]=(s-n)*u*.5,e[10]=i/(r-i),e[11]=-1,e[12]=0,e[13]=0,e[14]=i*r/(r-i),e[15]=0,e},rotate:y,rotateX:f,rotateY:function(e,t,r){const i=Math.sin(r),s=Math.cos(r),n=t[0],o=t[1],a=t[2],l=t[3],u=t[8],d=t[9],c=t[10],p=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=n*s-u*i,e[1]=o*s-d*i,e[2]=a*s-c*i,e[3]=l*s-p*i,e[8]=n*i+u*s,e[9]=o*i+d*s,e[10]=a*i+c*s,e[11]=l*i+p*s,e},rotateZ:function(e,t,r){const i=Math.sin(r),s=Math.cos(r),n=t[0],o=t[1],a=t[2],l=t[3],u=t[4],d=t[5],c=t[6],p=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=n*s+u*i,e[1]=o*s+d*i,e[2]=a*s+c*i,e[3]=l*s+p*i,e[4]=u*s-n*i,e[5]=d*s-o*i,e[6]=c*s-a*i,e[7]=p*s-l*i,e},scale:h,set:o,str:function(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"},sub:_,subtract:T,targetTo:function(e,t,r,i){const s=t[0],n=t[1],o=t[2],a=i[0],l=i[1],u=i[2];let d=s-r[0],c=n-r[1],p=o-r[2],h=d*d+c*c+p*p;h>0&&(h=1/Math.sqrt(h),d*=h,c*=h,p*=h);let y=l*p-u*c,f=u*d-a*p,g=a*c-l*d;return h=y*y+f*f+g*g,h>0&&(h=1/Math.sqrt(h),y*=h,f*=h,g*=h),e[0]=y,e[1]=f,e[2]=g,e[3]=0,e[4]=c*g-p*f,e[5]=p*y-d*g,e[6]=d*f-c*y,e[7]=0,e[8]=d,e[9]=c,e[10]=p,e[11]=0,e[12]=s,e[13]=n,e[14]=o,e[15]=1,e},translate:p,transpose:l},Symbol.toStringTag,{value:"Module"}))},54239(e,t,r){r.d(t,{A:()=>m});var i,s=r(32198),n=r(4576),o=r(66552),a=r(25482),l=r(86211),u=r(67076),d=r(91429),c=r(97348),p=r(43937),h=r(36005);const y=(0,o.O)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),f=y.jsonValues.slice();(0,n.Xy)(f,"orthometric");const g=(0,o.O)()({meter:"meters",foot:"feet","us-foot":"us-feet","clarke-foot":"clarke-feet","clarke-yard":"clarke-yards","clarke-link":"clarke-links","sears-yard":"sears-yards","sears-foot":"sears-feet","sears-chain":"sears-chains","benoit-1895-b-chain":"benoit-1895-b-chains","indian-yard":"indian-yards","indian-1937-yard":"indian-1937-yards","gold-coast-foot":"gold-coast-feet","sears-1922-truncated-chain":"sears-1922-truncated-chains","50-kilometers":"50-kilometers","150-kilometers":"150-kilometers"});let m=i=class extends a.o{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,r){return y.write(e,t,r)}readHeightModel(e,t,r){return y.read(e)||(r?.messages&&r.messages.push(function(e,t){return new u.A("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:r})),null)}readHeightUnit(e,t,r){return g.read(e)||(r?.messages&&r.messages.push(v(e,{context:r})),null)}readHeightUnitService(e,t,r){return(0,l.LA)(e)||g.read(e)||(r?.messages&&r.messages.push(v(e,{context:r})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new i({heightModel:this.heightModel,heightUnit:this.heightUnit,vertCRS:this.vertCRS})}equals(e){return!!e&&(this===e||this.heightModel===e.heightModel&&this.heightUnit===e.heightUnit&&this.vertCRS===e.vertCRS)}static deriveUnitFromSR(e,t){const r=(0,l.k1)(t);return new i({heightModel:e.heightModel,heightUnit:r??void 0,vertCRS:e.vertCRS})}static fromSpatialReference(e){const{latestVcsWkid:t,vcsWkid:r}=e;if(!r)return null;const s=(null!=t?c.B.get(t):null)??c.B.get(r);return s?new i({heightModel:0===s.type?"gravity-related-height":"ellipsoidal",heightUnit:(0,l.LA)(s.unit.name),vertCRS:s.datum}):null}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;const t=new i;return t.read(e,{origin:"web-scene"}),t}};function v(e,t){return new u.A("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,s.Cg)([(0,d.MZ)({type:y.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:f,default:"ellipsoidal",write:{isRequired:!0}}}}})],m.prototype,"heightModel",void 0),(0,s.Cg)([(0,p.K)("web-scene","heightModel")],m.prototype,"writeHeightModel",null),(0,s.Cg)([(0,h.w)(["web-scene","service"],"heightModel")],m.prototype,"readHeightModel",null),(0,s.Cg)([(0,d.MZ)({type:g.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:g.jsonValues,write:{writer:g.write,isRequired:!0}}}}})],m.prototype,"heightUnit",void 0),(0,s.Cg)([(0,h.w)("web-scene","heightUnit")],m.prototype,"readHeightUnit",null),(0,s.Cg)([(0,h.w)("service","heightUnit")],m.prototype,"readHeightUnitService",null),(0,s.Cg)([(0,d.MZ)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],m.prototype,"vertCRS",void 0),(0,s.Cg)([(0,h.w)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],m.prototype,"readVertCRS",null),m=i=(0,s.Cg)([(0,d.$K)("esri.geometry.HeightModelInfo")],m)},73836(e,t,r){r.d(t,{A:()=>h});var i=r(32198),s=r(69540),n=r(25482),o=r(91429),a=r(58083),l=r(9093),u=r(67026),d=r(82534),c=r(51850),p=r(24770);let h=class extends((0,s.OU)(n.o)){constructor(e){super(e),this.translation=(0,c.vt)(),this.rotationAxis=(0,c.ci)(p.up),this.rotationAngle=0,this.scale=(0,c.fA)(1,1,1)}get rotation(){return(0,p.i4)(this.rotationAxis,this.rotationAngle)}set rotation(e){this.rotationAxis=(0,c.o8)((0,p.yo)(e)),this.rotationAngle=(0,p.g7)(e)}get localMatrix(){const e=(0,l.vt)();return(0,u.x8)(y,(0,p.yo)(this.rotation),(0,p.$I)(this.rotation)),(0,a.o1)(e,y,this.translation,this.scale),e}get localMatrixInverse(){return(0,a.B8)((0,l.vt)(),this.localMatrix)}equals(e){return this===e||null!=e&&(0,a.t2)(this.localMatrix,e.localMatrix)}};(0,i.Cg)([(0,o.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],h.prototype,"translation",void 0),(0,i.Cg)([(0,o.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],h.prototype,"rotationAxis",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],h.prototype,"rotationAngle",void 0),(0,i.Cg)([(0,o.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],h.prototype,"scale",void 0),(0,i.Cg)([(0,o.MZ)()],h.prototype,"rotation",null),(0,i.Cg)([(0,o.MZ)()],h.prototype,"localMatrix",null),(0,i.Cg)([(0,o.MZ)()],h.prototype,"localMatrixInverse",null),h=(0,i.Cg)([(0,o.$K)("esri.geometry.support.MeshTransform")],h);const y=(0,d.vt)()},24770(e,t,r){r.d(t,{$I:()=>g,AU:()=>h,g7:()=>f,i4:()=>d,ui:()=>c,vt:()=>u,yo:()=>y});var i=r(34727),s=r(58083),n=r(67026),o=r(82534),a=r(35522),l=r(51850);function u(e=v){return[e[0],e[1],e[2],e[3]]}function d(e,t,r=u()){return(0,a.C)(r,e),r[3]=t,r}function c(e,t=u()){const r=(0,s.l)(w,e);return m(t,(0,i.KJ)((0,n.Xd)(t,r))),t}function p(e,t,r=u()){return(0,n.x8)(w,e,g(e)),(0,n.x8)(b,t,g(t)),(0,n.lw)(w,b,w),m(r,(0,i.KJ)((0,n.Xd)(r,w)))}function h(e,t,r,i=u()){return d(l.Cw,e,M),d(l.JP,t,I),d(l.Cb,r,A),p(M,I,M),p(M,A,i),i}function y(e){return e}function f(e){return e[3]}function g(e){return(0,i.kU)(e[3])}function m(e,t){return e[3]=t,e}const v=[0,0,1,0],w=(0,o.vt)(),b=(0,o.vt)(),M=(u(),u()),I=u(),A=u();r.d(t,["up",0,v])},2e4(e,t,r){r.r(t),r.d(t,{default:()=>Re});var i=r(32198),s=r(52106),n=r(37838),o=r(69540),a=r(7762),l=r(49186),u=r(36563),d=r(53966),c=r(97768),p=r(25728),h=r(17676),y=r(36708),f=r(91429),g=r(88620),m=r(86738),v=r(99917),w=r(55156),b=r(60950),M=r(89808),I=r(99959);const A=Symbol("isSceneGraphicOrigin");var S;class F extends I.A{get[(S=A,b.ym)](){return this.layer}get[w.e](){return this.layer}get[M.Q](){return this.layer}constructor(e){super(),this[S]=!0,this.type="scene",this.layer=e}get id(){return this.layer.id}}var C=r(4146),x=r(55726),L=r(52136),T=r(18768),E=r(69208),j=r(47685),P=r(34287),O=r(8303),_=r(25036),R=r(58947),Z=r(82935),U=r(60694),D=r(92009),N=r(4071),$=r(10873),q=r(15426),k=r(67202),H=r(17036),G=r(95466),K=r(30524),V=r(50805),Q=r(20557),B=r(46499),J=r(39383),z=r(37352),W=r(2976),Y=r(86390),X=r(25482);let ee=class extends X.o{constructor(){super(...arguments),this.name=null,this.field=null,this.currentRangeExtent=null,this.fullRangeExtent=null,this.type="rangeInfo"}};(0,i.Cg)([(0,f.MZ)({type:String,json:{read:!0,write:{isRequired:!0}}})],ee.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{read:!0,write:{isRequired:!0}}})],ee.prototype,"field",void 0),(0,i.Cg)([(0,f.MZ)({type:[Number],json:{read:!0,write:!0}})],ee.prototype,"currentRangeExtent",void 0),(0,i.Cg)([(0,f.MZ)({type:[Number],json:{read:!0,write:!0}})],ee.prototype,"fullRangeExtent",void 0),(0,i.Cg)([(0,f.MZ)({type:["rangeInfo"],readOnly:!0,json:{read:!1,write:{isRequired:!0}}})],ee.prototype,"type",void 0),ee=(0,i.Cg)([(0,f.$K)("esri.layers.support.RangeInfo")],ee);var te,re=r(56507),ie=r(4718),se=r(87024),ne=r(67076),oe=r(39829);let ae=te=class extends((0,X.T)(a.A.ofType(oe.A))){constructor(e){super(e)}clone(){return new te(this.items.map(e=>e.clone()))}write(e,t){return this.toJSON(t)}toJSON(e){const t=e?.layer?.spatialReference;return t?this.toArray().map(r=>{if(!t.equals(r.spatialReference)){if(!(0,v.canProjectWithoutEngine)(r.spatialReference,t))return e?.messages?.push(new ne.A("scenefilter:unsupported","Scene filters with incompatible spatial references are not supported",{modification:this,spatialReference:e.layer.spatialReference,context:e})),null;const i=new oe.A;(0,v.projectPolygon)(r,i,t),r=i}const i=r.toJSON(e);return delete i.spatialReference,i}).filter(e=>null!=e):this.toArray().map(t=>t.toJSON(e))}static fromJSON(e,t){const r=new te;return e.forEach(e=>r.add(oe.A.fromJSON(e,t))),r}};ae=te=(0,i.Cg)([(0,f.$K)("esri.layers.support.PolygonCollection")],ae);const le=ae;var ue,de=r(97159),ce=r(36005);let pe=ue=class extends X.o{constructor(e){super(e),this.spatialRelationship="disjoint",this.geometries=new le,this._geometriesSource=null}initialize(){this.addHandles((0,y.on)(()=>this.geometries,"after-changes",()=>this.geometries=this.geometries,y.OH))}readGeometries(e,t,r){Array.isArray(e)?this.geometries=le.fromJSON(e,r):"web-scene"!==r.origin&&"portal-item"!==r.origin||(this._geometriesSource={url:(0,de.f)(e,r),context:r})}async loadGeometries(e,t){if(null==this._geometriesSource)return;const{url:r,context:i}=this._geometriesSource,s=await(0,re.A)(r,{responseType:"json",signal:t?.signal}),n=e.toJSON(),o=s.data.map(e=>({...e,spatialReference:n}));this.geometries=le.fromJSON(o,i),this._geometriesSource=null}clone(){const e=new ue({geometries:(0,ie.o8)(this.geometries),spatialRelationship:this.spatialRelationship});return e._geometriesSource=this._geometriesSource,e}};(0,i.Cg)([(0,f.MZ)({type:["disjoint","contains"],nonNullable:!0,json:{write:{isRequired:!0}}})],pe.prototype,"spatialRelationship",void 0),(0,i.Cg)([(0,f.MZ)({type:le,nonNullable:!0,json:{write:!0,origins:{"web-scene":{write:{isRequired:!0}}}}}),(0,se.P)({origins:["web-scene","portal-item"],type:"resource",prefix:"geometries",contentAddressed:!0})],pe.prototype,"geometries",void 0),(0,i.Cg)([(0,ce.w)(["web-scene","portal-item","service"],"geometries")],pe.prototype,"readGeometries",null),pe=ue=(0,i.Cg)([(0,f.$K)("esri.layers.support.SceneFilter")],pe);const he=pe;function ye({associatedLayer:e,serviceUpdateTimeStamp:t}){const r=e?.editingInfo?.lastEditDate,i=e?.serverGens,s=null!=r,n=null!=t,o=s&&n&&t.lastUpdate!==r.getTime();return s&&(o||!n&&i?.minServerGen!==i?.serverGen)}var fe=r(84952);let ge=class extends X.o{constructor(){super(...arguments),this.endTimeField=null,this.startTimeField=null}};(0,i.Cg)([(0,f.MZ)({type:String})],ge.prototype,"endTimeField",void 0),(0,i.Cg)([(0,f.MZ)({type:String})],ge.prototype,"startTimeField",void 0),ge=(0,i.Cg)([(0,f.$K)("esri.layers.support.SceneServiceTimeInfo")],ge);var me=r(96184),ve=r(8947),we=r(41214),be=r(97552),Me=r(24212),Ie=r(30291);async function Ae(e){const t=[];for(const r of e)r.name.toLowerCase().endsWith(".zip")?t.push(Se(r)):t.push(Promise.resolve(r));return(await Promise.all(t)).flat()}async function Se(e){const{BlobReader:t,ZipReader:i,BlobWriter:s}=await Promise.all([r.e(680),r.e(9588)]).then(()=>r(9588)),n=[],o=new i(new t(e));return(await o.getEntries()).forEach(e=>{if(e.directory||/^__MACOS/i.test(e.filename))return;const t=new s;n.push(e.getData(t).then(t=>new File([t],e.filename)))}),Promise.all(n)}var Fe=r(79677),Ce=r(10184),xe=r(66480),Le=r(45671),Te=r(78553);const Ee=new Set(["3DObject","Point"]),je=(0,H.p)();let Pe=class extends((0,j.w6)((0,R.w6)((0,T.b)((0,P.q)((0,O.A)((0,_.j)((0,p.M)((0,E.d)((0,L.p)((0,o.OU)(C.A))))))))))){constructor(...e){super(...e),this.featureReduction=null,this.rangeInfos=null,this.operationalLayerType="ArcGISSceneServiceLayer",this.type="scene",this.fields=null,this.graphicOrigin=new F(this),this.floorInfo=null,this.outFields=null,this.nodePages=null,this.materialDefinitions=null,this.textureSetDefinitions=null,this.geometryDefinitions=null,this.serviceUpdateTimeStamp=null,this.excludeObjectIds=new a.A,this.definitionExpression=null,this.filter=null,this.path=null,this.labelsVisible=!0,this.labelingInfo=null,this.legendEnabled=!0,this.priority=null,this.semantic=null,this.cachedDrawingInfo={color:!1},this.popupEnabled=!0,this.popupTemplate=null,this.attributeTableTemplate=null,this.objectIdField=null,this.globalIdField=null,this._fieldUsageInfo={},this.screenSizePerspectiveEnabled=!0,this.serviceItemId=void 0,this.serviceTimeInfo=null}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._set("renderer",null),this.associatedLayer=(0,c.pR)(this.associatedLayer)}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){const r=this.getField(e)?.domain??null;return this.associatedLayer?(0,q.Vq)(this.associatedLayer,e,t,r):r}getFeatureType(e){return e&&this.associatedLayer?this.associatedLayer.getFeatureType(e):null}get types(){return this.associatedLayer?.types??[]}get typeIdField(){return this.associatedLayer?.typeIdField??null}get templates(){return this.associatedLayer?.templates??null}get formTemplate(){return this.associatedLayer?.formTemplate??null}get fieldsIndex(){return new G.A(this.fields)}readNodePages(e,t,r){return"Point"===t.layerType&&(e=t.pointNodePages),null==e||"object"!=typeof e?null:V.W4.fromJSON(e,r)}set elevationInfo(e){this._set("elevationInfo",e),this.loaded&&this._validateElevationInfo()}get effectiveCapabilities(){return this._capabilitiesFromAssociatedFeatureLayer(this.associatedLayer?.effectiveCapabilities)}get effectiveEditingEnabled(){return null!=this.associatedLayer&&(0,q.C$)(this.associatedLayer)}get geometryType(){return _e[this.profile]||"mesh"}set renderer(e){(0,K.yp)(e,this.fieldsIndex),this._set("renderer",e)}readCachedDrawingInfo(e){return null!=e&&"object"==typeof e||(e={}),null==e.color&&(e.color=!1),e}get capabilities(){return this._capabilitiesFromAssociatedFeatureLayer(this.associatedLayer?.capabilities)}_capabilitiesFromAssociatedFeatureLayer(e){e=null!=e?e:N.P;const{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsRollbackOnFailure:s,supportsUploadWithItemId:n,supportsGeometryUpdate:o,supportsReturnServiceEditsInSourceSpatialReference:a},data:{supportsZ:l,supportsM:u,isVersioned:d,supportsAttachment:c},operations:{supportsEditing:p,supportsAdd:h,supportsUpdate:y,supportsDelete:f,supportsQuery:g,supportsQueryAttachments:m,supportsAsyncConvert3D:v},attachment:w}=e,b=e.operations.supportsChangeTracking,M=!!this.associatedLayer?.infoFor3D;return{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsReturnServiceEditsInSourceSpatialReference:a,supportsRollbackOnFailure:s,supportsGeometryUpdate:M&&o,supportsUploadWithItemId:n},data:{supportsAttachment:c,supportsZ:l,supportsM:u,isVersioned:d,queryFormats:e.data.queryFormats,sourceFormats:e.data.sourceFormats},operations:{supportsQuery:g,supportsQueryAttachments:m,supportsEditing:p&&b,supportsAdd:M&&h&&b,supportsDelete:M&&f&&b,supportsUpdate:y&&b,supportsAsyncConvert3D:v},attachment:w}}get editingEnabled(){return this._isOverridden("editingEnabled")?this._get("editingEnabled"):this.associatedLayer?.editingEnabled??!1}set editingEnabled(e){this._overrideIfSome("editingEnabled",e)}get infoFor3D(){return this.associatedLayer?.infoFor3D??null}get relationships(){return this.associatedLayer?.relationships}get defaultPopupTemplate(){return this.associatedLayer||this.attributeStorageInfo?this.createPopupTemplate():null}readObjectIdField(e,t){return!e&&t.fields&&t.fields.some(t=>("esriFieldTypeOID"===t.type&&(e=t.name),!!e)),e||void 0}readGlobalIdField(e,t){return!e&&t.fields&&t.fields.some(t=>("esriFieldTypeGlobalID"===t.type&&(e=t.name),!!e)),e||void 0}get displayField(){return this.associatedLayer?.displayField??null}readProfile(e,t){const r=t.store.profile;return null!=r&&Oe[r]?Oe[r]:(d.A.getLogger(this).error("Unknown or missing profile",{profile:r,layer:this}),"mesh-pyramids")}get useViewTime(){return this.associatedLayer?.useViewTime??!0}set useViewTime(e){this._override("useViewTime",e)}get timeInfo(){const e=this.associatedLayer?.timeInfo;if(null==e)return null;const t=e.clone();return(0,K.sv)(t,this.fieldsIndex),t}set timeInfo(e){(0,K.sv)(e,this.fieldsIndex),this._override("timeInfo",e)}get timeExtent(){return this.associatedLayer?.timeExtent}set timeExtent(e){this._override("timeExtent",e)}get timeOffset(){return this.associatedLayer?.timeOffset}set timeOffset(e){this._override("timeOffset",e)}get datesInUnknownTimezone(){return this.associatedLayer?.datesInUnknownTimezone??!1}set datesInUnknownTimezone(e){this._override("datesInUnknownTimezone",e)}load(e){return this.addResolvingPromise(this._load(e)),Promise.resolve(this)}async _load(e){const t=e?.signal;await this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(h.QP),await this._fetchService(t),await Promise.all([this._fetchIndexAndUpdateExtent(this.nodePages,t),this._setAssociatedFeatureLayer(t),this._loadFilterGeometries()]),this._validateElevationInfo(),this._applyAssociatedLayerOverrides(),this._populateFieldUsageInfo(),await this.loadTimeInfoFromService(e),await(0,ve.L)(this,{origin:"service"},t),(0,K.yp)(this.renderer,this.fieldsIndex),await this.finishLoadEditablePortalLayer(e)}async beforeSave(){null!=this.filter&&(this.filter=this.filter.clone(),await this.load())}async _loadFilterGeometries(){if(this.filter)try{await this.filter.loadGeometries(this.spatialReference)}catch(e){d.A.getLogger(this).error("#_loadFilterGeometries()",this,"Failed to load filter geometries. Geometry filter will not be applied for this layer.",{error:e}),this.filter=null}}createQuery(){const e=new be.A;return"mesh"===this.geometryType?this.capabilities.query.supportsReturnMesh&&(e.returnGeometry=!0):(e.returnGeometry=!0,e.returnZ=!0),e.where=this.definitionExpression||"1=1",e.sqlFormat="standard",e.outFields=["*"],e}queryExtent(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryExtent(e||this.createQuery(),t))}queryFeatureCount(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatureCount(e||this.createQuery(),t))}queryFeatures(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatures(e||this.createQuery(),t)).then(e=>{if(e?.features)for(const t of e.features)t.layer=this,t.sourceLayer=this,t.origin=this.graphicOrigin;return e})}async queryModels(e,t){const[i,{queryModels:s}]=await Promise.all([this._getAssociatedLayerForQuery(),Promise.all([r.e(893),r.e(2387)]).then(()=>r(41653))]);return s(this,i,e,t)}async queryModel(e,t){const[i,{queryModel:s}]=await Promise.all([this._getAssociatedLayerForQuery(),Promise.all([r.e(893),r.e(2387)]).then(()=>r(41653))]);return s(this,i,e,t)}async queryRelatedFeatures(e,t){if(await this.load(),!this.associatedLayer)throw new l.A("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});return this.associatedLayer.queryRelatedFeatures(e,t)}async queryRelatedFeaturesCount(e,t){if(await this.load(),!this.associatedLayer)throw new l.A("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});return this.associatedLayer.queryRelatedFeaturesCount(e,t)}async queryCachedAttributes(e,t){const r=(0,K.hL)(this.fieldsIndex,await(0,Le.TO)(this,(0,Le.D8)(this)));return(0,xe.s1)(this.parsedUrl?.path??"",this.attributeStorageInfo??[],e,t,r,this.apiKey,this.customParameters)}async queryCachedFeature(e,t){const r=await this.queryCachedAttributes(e,[t]);if(!r||0===r.length)throw new l.A("scenelayer:feature-not-in-cached-data","Feature not found in cached data");const i=new s.A;return i.attributes=r[0],i.layer=this,i.sourceLayer=this,i.origin=this.graphicOrigin,i}queryObjectIds(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryObjectIds(e||this.createQuery(),t))}queryAttachments(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryAttachments(e,t))}getFieldUsageInfo(e){const t={supportsLabelingInfo:!1,supportsRenderer:!1,supportsPopupTemplate:!1,supportsLayerQuery:!1};return this.loaded?this._fieldUsageInfo[e]||t:(d.A.getLogger(this).error("#getFieldUsageInfo()","Unavailable until layer is loaded"),t)}createPopupTemplate(e){return(0,Ie.tn)(this,e)}_getAssociatedLayerForQuery(){const e=this.associatedLayer;return e?.loaded?Promise.resolve(e):this._loadAssociatedLayerForQuery()}async _loadAssociatedLayerForQuery(){if(await this.load(),!this.associatedLayer)throw new l.A("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});try{await this.associatedLayer.load()}catch(e){throw new l.A("scenelayer:query-not-available","SceneLayer associated feature layer could not be loaded",{layer:this,error:e})}return this.associatedLayer}hasCachedStatistics(e){return null!=this.statisticsInfo&&this.statisticsInfo.some(t=>t.name===e)}async queryCachedStatistics(e,t){return await this.load(t),await this.fetchStatistics(e,t)}async saveAs(e,t){return this._debouncedSaveOperations(1,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"};return this._debouncedSaveOperations(0,e)}async applyEdits(e,t){const{applyEdits:i}=await r.e(6247).then(()=>r(78628));let s=t;await this.load();const n=this.associatedLayer;if(!n)throw new l.A(`${this.type}-layer:not-editable`,"Service is not editable");await n.load();const{globalIdField:o}=n,a=!!n.infoFor3D,u=s?.globalIdUsed??!0;if(a&&null==o)throw new l.A(`${this.type}-layer:not-editable`,"Valid globalIdField expected on editable SceneLayer");if(a&&!u)throw new l.A(`${this.type}-layer:globalid-required`,"globalIdUsed must not be false for SceneLayer editing as globalIds are required.");return(0,U.Wo)(n.url)&&a&&null!=e.deleteFeatures&&null!=o&&(s={...s,globalIdToObjectId:await(0,q.GA)(n,e.deleteFeatures,o)}),i(this,n.source,e,s)}async uploadAssets(e,t){if(await this.load(),null==this.associatedLayer)throw new l.A(`${this.type}-layer:not-editable`,"Service is not editable");return await this.associatedLayer.load(),this.associatedLayer.uploadAssets(e,t)}async convertMesh(e,t){t??={};const i=e=>{throw d.A.getLogger(this).error(".convertMesh()",e.message),e};await this.load(t),this.infoFor3D||i(new l.A("invalid:layer","SceneLayer has no capability for mesh conversion"));const s=await this.extractAndFilterFiles(e);(0,h.Te)(t);const n=s.reduce((e,t)=>(0,Q.oF)(this.infoFor3D,t)?e+1:e,0);0===n&&i(new x.VP),n>1&&i(new x.XQ);const o=this.spatialReference,a=t.origin,u=await(0,v.projectAsync)(a??t.defaultOrigin??new m.A({x:0,y:0,z:0,spatialReference:o}),o,t),c=o.isGeographic?"local":"georeferenced",{createWithExternalSource:p}=await Promise.all([r.e(6860),r.e(118),r.e(3354)]).then(()=>r(40118));(0,h.Te)(t);const y=p(u,{type:"client",files:s},{vertexSpace:c,transform:(0,Y.Z)(o),unitConversionDisabled:!0}),[f]=await this.uploadAssets([y],{...t,useAssetOrigin:!a});return f}async extractAndFilterFiles(e){await this.load();const t=this.infoFor3D;return t?(await Ae(e)).filter(e=>(0,Q.fu)(t,e)):e}validateLayer(e){if(e.layerType&&!Ee.has(e.layerType))throw new l.A("scenelayer:layer-type-not-supported","SceneLayer does not support this layer type",{layerType:e.layerType});if(isNaN(this.version.major)||isNaN(this.version.minor))throw new l.A("layer:service-version-not-supported","Service version is not supported.",{serviceVersion:this.version.versionString,supportedVersions:"1.x, 2.x"});if(this.version.major>2)throw new l.A("layer:service-version-too-new","Service version is too new.",{serviceVersion:this.version.versionString,supportedVersions:"1.x, 2.x"});!function(e,t){let r=!1,i=!1;if(null==e)r=!0,i=!0;else{const s=t&&t.isGeographic;switch(e){case"east-north-up":case"earth-centered":r=!0,i=s;break;case"vertex-reference-frame":r=!0,i=!s;break;default:r=!1}}if(!r)throw new l.A("scenelayer:unsupported-normal-reference-frame","Normal reference frame is invalid.");if(!i)throw new l.A("scenelayer:incompatible-normal-reference-frame","Normal reference frame is incompatible with layer spatial reference.")}(this.normalReferenceFrame,this.spatialReference)}_getTypeKeywords(){const e=[];if("points"===this.profile)e.push("Point");else{if("mesh-pyramids"!==this.profile)throw new l.A("scenelayer:unknown-profile","SceneLayer:save() encountered an unknown SceneLayer profile: "+this.profile);e.push("3DObject")}return e}_populateFieldUsageInfo(){if(this._fieldUsageInfo={},this.fields)for(const e of this.fields){const t=!!this.attributeStorageInfo?.some(t=>t.name===e.name),r=!!this.associatedLayer?.fields?.some(t=>t&&e.name===t.name),i={supportsLabelingInfo:t,supportsRenderer:t,supportsPopupTemplate:t||r,supportsLayerQuery:r};this._fieldUsageInfo[e.name]=i}}_applyAssociatedLayerOverrides(){this._applyAssociatedLayerFieldsOverrides(),this._applyAssociatedLayerPropertyOverrides(),this._applyAssociatedLayerExtentOverride(),this._applyAssociatedLayerPrivileges()}_applyAssociatedLayerFieldsOverrides(){if(!this.associatedLayer?.fields)return;let e=null;for(const t of this.associatedLayer.fields){const r=this.getField(t.name);r?(!r.domain&&t.domain&&(r.domain=t.domain.clone()),r.editable=t.editable,r.nullable=t.nullable,r.length=t.length):(e||(e=this.fields?this.fields.slice():[]),e.push(t.clone()))}e&&this._set("fields",e)}_applyAssociatedLayerPropertyOverrides(){if(!this.associatedLayer)return;const e=["popupTemplate","popupEnabled","attributeTableTemplate"],t=(0,g.oY)(this);for(let r=0;r<e.length;r++){const i=e[r],s=this.originIdOf(i),n=this.associatedLayer.originIdOf(i);s<n&&(2===n||3===n)&&t.setAtOrigin(i,this.associatedLayer[i],n)}}_applyAssociatedLayerExtentOverride(){const e=this.associatedLayer?.getAtOrigin("fullExtent","service");null!=this.associatedLayer?.infoFor3D&&e&&(0,U.Wo)(this.associatedLayer?.url)&&ye(this)&&(0,g.oY)(this).setAtOrigin("fullExtent",e.clone(),2)}_applyAssociatedLayerPrivileges(){const e=this.associatedLayer;e&&(this._set("userHasEditingPrivileges",e.userHasEditingPrivileges),this._set("userHasFullEditingPrivileges",e.userHasFullEditingPrivileges),this._set("userHasUpdateItemPrivileges",e.userHasUpdateItemPrivileges))}async _setAssociatedFeatureLayer(e){if(["mesh-pyramids","points"].includes(this.profile))try{const{serverUrl:t,layerId:r,portalItem:i}=await(0,D.L)(`${this.url}/layers/${this.layerId}`,{sceneLayerItem:this.portalItem,customParameters:this.customParameters,apiKey:this.apiKey,signal:e}),s=await W.U.FeatureLayer();this.associatedLayer=new s({url:t,customParameters:this.customParameters,apiKey:this.apiKey,layerId:r,portalItem:i}),await this.associatedLayer.load()}catch(e){(0,h.zf)(e)||this._logWarningOnPopupEnabled().catch(()=>{})}}async _logWarningOnPopupEnabled(){const e=new AbortController;this.addHandles((0,u.rE)(e));try{await(0,y.C_)(()=>this.popupEnabled&&null!=this.popupTemplate,e.signal)}catch(e){return void(0,h.jH)(e)}const t=`this SceneLayer: ${this.title}`;null==this.attributeStorageInfo?d.A.getLogger(this).warn(`Associated FeatureLayer could not be loaded and no binary attributes found. Popups will not work on ${t}`):d.A.getLogger(this).info(`Associated FeatureLayer could not be loaded. Falling back to binary attributes for Popups on ${t}`)}_validateElevationInfo(){const e=this.elevationInfo;"mesh-pyramids"===this.profile&&(0,Me.XF)(d.A.getLogger(this),(0,Me.$7)("Mesh scene layers","relative-to-scene",e)),(0,Me.XF)(d.A.getLogger(this),(0,Me.tW)("Scene layers",e))}async fetchStatistics(e,t){return await async function({fieldName:e,statisticsInfo:t,errorContext:r,fieldsIndex:i,path:s,customParameters:n,apiKey:o,signal:a}){if(null==t)throw new l.A(`${r}:no-cached-statistics`,"Cached statistics are not available for this layer");const u=i.get(e);if(null==u)throw new l.A(`${r}:field-unexisting`,`Field '${e}' does not exist on the layer`);const d=t.find(e=>e.name===u.name);if(null==d)throw new l.A(`${r}:no-cached-statistics`,"Cached statistics for this attribute are not available");const c=(0,fe.fj)(s,d.href),{data:p}=await(0,re.A)(c,{query:{f:"json",...n,token:o},responseType:"json",signal:a});return p}({fieldName:e,statisticsInfo:this.statisticsInfo,errorContext:"scenelayer",fieldsIndex:this.fieldsIndex,path:this.parsedUrl?.path??"",customParameters:this.customParameters,apiKey:this.apiKey,signal:t?.signal})}async loadTimeInfoFromService(e){const{serviceTimeInfo:t}=this;if(null==t)return;const{startTimeField:r,endTimeField:i}=t;if(null==r&&null==i)return;if(ye({associatedLayer:this.associatedLayer,serviceUpdateTimeStamp:this.serviceUpdateTimeStamp}))return;const s=async t=>{let i=null;try{const r=await this.fetchStatistics(t,e);i=r?.stats}catch{}if(null==i)return null;const{minTimeStr:s,min:n,maxTimeStr:o,max:a}=i,l=t===r?s??n:o??a;return null!=l?new Date(l):null},[n,o]=await Promise.all([s(r),s(i)]);if(null!=r&&null==n||null!=i&&null==o)return;const a=new Fe.A({start:n,end:o});this.setAtOrigin("timeInfo",new me.A({endField:i,startField:r,fullTimeExtent:a}),"service")}};(0,i.Cg)([(0,f.MZ)({types:{key:"type",base:null,typeMap:{selection:k.A}},json:{origins:{"web-scene":{name:"layerDefinition.featureReduction",write:{allowNull:!0}},"portal-item":{name:"layerDefinition.featureReduction",write:{allowNull:!0}}}}})],Pe.prototype,"featureReduction",void 0),(0,i.Cg)([(0,f.MZ)({type:[ee],json:{read:!1,origins:{"web-scene":{name:"layerDefinition.rangeInfos",write:!0},"portal-item":{name:"layerDefinition.rangeInfos",write:!0}}},clonable:!1})],Pe.prototype,"rangeInfos",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:!1}})],Pe.prototype,"associatedLayer",void 0),(0,i.Cg)([(0,f.MZ)({type:["show","hide"]})],Pe.prototype,"listMode",void 0),(0,i.Cg)([(0,f.MZ)({type:["ArcGISSceneServiceLayer"]})],Pe.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:!1},readOnly:!0})],Pe.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)({...je.fields,readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"fields",void 0),(0,i.Cg)([(0,f.MZ)()],Pe.prototype,"types",null),(0,i.Cg)([(0,f.MZ)()],Pe.prototype,"typeIdField",null),(0,i.Cg)([(0,f.MZ)()],Pe.prototype,"templates",null),(0,i.Cg)([(0,f.MZ)()],Pe.prototype,"formTemplate",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Pe.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,clonable:!1})],Pe.prototype,"fieldsIndex",null),(0,i.Cg)([(0,f.MZ)({type:z.A,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"}}})],Pe.prototype,"floorInfo",void 0),(0,i.Cg)([(0,f.MZ)(je.outFields)],Pe.prototype,"outFields",void 0),(0,i.Cg)([(0,f.MZ)({type:V.W4,readOnly:!0,json:{read:!1},clonable:!1})],Pe.prototype,"nodePages",void 0),(0,i.Cg)([(0,ce.w)("service","nodePages",["nodePages","pointNodePages"])],Pe.prototype,"readNodePages",null),(0,i.Cg)([(0,f.MZ)({type:[V.uV],readOnly:!0,clonable:!1})],Pe.prototype,"materialDefinitions",void 0),(0,i.Cg)([(0,f.MZ)({type:[V.Ot],readOnly:!0,clonable:!1})],Pe.prototype,"textureSetDefinitions",void 0),(0,i.Cg)([(0,f.MZ)({type:[V.L0],readOnly:!0,clonable:!1})],Pe.prototype,"geometryDefinitions",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Pe.prototype,"serviceUpdateTimeStamp",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Pe.prototype,"attributeStorageInfo",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Pe.prototype,"statisticsInfo",void 0),(0,i.Cg)([(0,f.MZ)({type:a.A.ofType(Number),nonNullable:!0,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.excludeObjectIds",write:{enabled:!0}}})],Pe.prototype,"excludeObjectIds",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Pe.prototype,"definitionExpression",void 0),(0,i.Cg)([(0,f.MZ)({type:he,json:{name:"layerDefinition.polygonFilter",write:{enabled:!0,allowNull:!0},origins:{service:{read:!1,write:!1}}}})],Pe.prototype,"filter",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Pe.prototype,"path",void 0),(0,i.Cg)([(0,f.MZ)($.Yj)],Pe.prototype,"elevationInfo",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Pe.prototype,"effectiveCapabilities",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Pe.prototype,"effectiveEditingEnabled",null),(0,i.Cg)([(0,f.MZ)({type:String})],Pe.prototype,"geometryType",null),(0,i.Cg)([(0,f.MZ)($.kF)],Pe.prototype,"labelsVisible",void 0),(0,i.Cg)([(0,f.MZ)({type:[B.A],json:{origins:{service:{name:"drawingInfo.labelingInfo",read:{reader:J.w},write:!1}},name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:J.w},write:!0}})],Pe.prototype,"labelingInfo",void 0),(0,i.Cg)([(0,f.MZ)($.fV)],Pe.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,f.MZ)({type:Number,json:{origins:{"web-document":{default:1,write:{enabled:!0,target:{opacity:{type:Number},"layerDefinition.drawingInfo.transparency":{type:Number}}},read:{source:["opacity","layerDefinition.drawingInfo.transparency"],reader(e,t){if("number"==typeof e&&e>=0&&e<=1)return e;const r=t.layerDefinition?.drawingInfo?.transparency;return void 0!==r?(0,Te.D)(r):void 0}}},"portal-item":{write:!0},service:{read:!1}}}})],Pe.prototype,"opacity",void 0),(0,i.Cg)([(0,f.MZ)({type:["Low","High"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"priority",void 0),(0,i.Cg)([(0,f.MZ)({type:["Labels"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"semantic",void 0),(0,i.Cg)([(0,f.MZ)({types:we.XJ,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:!0},value:null})],Pe.prototype,"renderer",null),(0,i.Cg)([(0,f.MZ)({json:{read:!1}})],Pe.prototype,"cachedDrawingInfo",void 0),(0,i.Cg)([(0,ce.w)("service","cachedDrawingInfo")],Pe.prototype,"readCachedDrawingInfo",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Pe.prototype,"capabilities",null),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{read:!1}})],Pe.prototype,"editingEnabled",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{write:!1,read:!1}})],Pe.prototype,"infoFor3D",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{write:!1,read:!1}})],Pe.prototype,"relationships",null),(0,i.Cg)([(0,f.MZ)($.M6)],Pe.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A,json:{name:"popupInfo",write:!0}})],Pe.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Pe.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,f.MZ)($.zQ)],Pe.prototype,"attributeTableTemplate",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{read:!1}})],Pe.prototype,"objectIdField",void 0),(0,i.Cg)([(0,ce.w)("service","objectIdField",["objectIdField","fields"])],Pe.prototype,"readObjectIdField",null),(0,i.Cg)([(0,f.MZ)({type:String,json:{read:!1}})],Pe.prototype,"globalIdField",void 0),(0,i.Cg)([(0,ce.w)("service","globalIdField",["globalIdField","fields"])],Pe.prototype,"readGlobalIdField",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,type:String,json:{read:!1}})],Pe.prototype,"displayField",null),(0,i.Cg)([(0,f.MZ)({type:String,json:{read:!1}})],Pe.prototype,"profile",void 0),(0,i.Cg)([(0,ce.w)("service","profile",["store.profile"])],Pe.prototype,"readProfile",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,type:String,json:{origins:{service:{read:{source:"store.normalReferenceFrame"}}},read:!1}})],Pe.prototype,"normalReferenceFrame",void 0),(0,i.Cg)([(0,f.MZ)($.PY)],Pe.prototype,"screenSizePerspectiveEnabled",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"serviceItemId",void 0),(0,i.Cg)([(0,f.MZ)(Z.B)],Pe.prototype,"useViewTime",null),(0,i.Cg)([(0,f.MZ)({type:me.A,json:{read:!1,write:!1}})],Pe.prototype,"timeInfo",null),(0,i.Cg)([(0,f.MZ)({type:Fe.A,json:{read:!1,write:!1}})],Pe.prototype,"timeExtent",null),(0,i.Cg)([(0,f.MZ)({type:Ce.A,json:{read:!1,write:!1}})],Pe.prototype,"timeOffset",null),(0,i.Cg)([(0,f.MZ)({type:Boolean,nonNullable:!0,json:{read:!1,write:!1}})],Pe.prototype,"datesInUnknownTimezone",null),(0,i.Cg)([(0,f.MZ)({type:ge,readOnly:!0,json:{read:{source:"timeInfo"}},clonable:!1})],Pe.prototype,"serviceTimeInfo",void 0),Pe=(0,i.Cg)([(0,f.$K)("esri.layers.SceneLayer")],Pe);const Oe={"mesh-pyramids":"mesh-pyramids",meshpyramids:"mesh-pyramids","features-meshes":"mesh-pyramids",points:"points","features-points":"points",lines:"lines","features-lines":"lines",polygons:"polygons","features-polygons":"polygons"},_e={"mesh-pyramids":"mesh",points:"point"},Re=Pe},55726(e,t,r){r.d(t,{$1:()=>u,H2:()=>h,MT:()=>y,VP:()=>f,WF:()=>d,Wt:()=>o,XQ:()=>g,hK:()=>p,nS:()=>c,uh:()=>a,xY:()=>l});var i=r(49186);const s="upload-assets",n=()=>new Error;class o extends i.A{constructor(){super(`${s}:unsupported`,"Layer does not support asset uploads.",n())}}class a extends i.A{constructor(){super(`${s}:no-glb-support`,"Layer does not support glb.",n())}}class l extends i.A{constructor(){super(`${s}:no-supported-source`,"No supported external source found",n())}}class u extends i.A{constructor(){super(`${s}:not-base-64`,"Expected gltf data in base64 format after conversion.",n())}}class d extends i.A{constructor(){super(`${s}:unable-to-prepare-options`,"Unable to prepare uploadAsset request options.",n())}}class c extends i.A{constructor(e,t){super(`${s}:bad-response`,`Bad response. Uploaded ${e} items and received ${t} results.`,n())}}class p extends i.A{constructor(e,t){super(`${s}-layer:upload-failed`,`Failed to upload mesh file ${e}. Error code: ${t?.code??"-1"}. Error message: ${t?.messages??"unknown"}`,n())}}class h extends i.A{constructor(e){super(`${s}-layer:unsupported-format`,`The service allowed us to upload an asset of FormatID ${e}, but it does not list it in its supported formats.`,n())}}class y extends i.A{constructor(){super(`${s}:convert3D-failed`,"convert3D failed.")}}class f extends i.A{constructor(){super("invalid-input:no-model","No supported model found")}}class g extends i.A{constructor(){super("invalid-input:multiple-models","Multiple supported models found")}}},18768(e,t,r){var i=r(32198),s=r(53966),n=r(91429),o=r(60694);r.d(t,["b",0,e=>{const t=e;let r=class extends t{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,o.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,o.Jf)(e,s.A.getLogger(this)))}};return(0,i.Cg)([(0,n.MZ)()],r.prototype,"title",null),(0,i.Cg)([(0,n.MZ)({type:String})],r.prototype,"url",null),r=(0,i.Cg)([(0,n.$K)("esri.layers.mixins.ArcGISService")],r),r}])},69208(e,t,r){var i=r(32198),s=r(91429);r.d(t,["d",0,e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.customParameters=null}};return(0,i.Cg)([(0,s.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],r.prototype,"customParameters",void 0),r=(0,i.Cg)([(0,s.$K)("esri.layers.mixins.CustomParametersMixin")],r),r}])},47685(e,t,r){r.d(t,{Mk:()=>h,Zk:()=>c});var i=r(32198),s=r(65529),n=r(4718),o=r(91429),a=r(20816);const l=new s.bk;function u(e){return l.on("apply-edits",new WeakRef(e))}function d(e){return l.on("update-moment",new WeakRef(e))}function c(e,t,r=null,i=!1){const s=Promise.withResolvers();return i=null==t||i,l.emit("apply-edits",{serviceUrl:e,layerId:t,gdbVersion:r,mayReceiveServiceEdits:i,result:s.promise}),s}const p=Symbol();function h(e){return null!=e&&"object"==typeof e&&p in e}function y(e){return null!=e&&"object"==typeof e&&"gdbVersion"in e}function f(e,t,r){const i=new URL(e).host,s=a.Z3.get(i),n=e=>!e||e===s;return n(t)&&n(r)||t===r}r.d(t,["w6",0,e=>{var t;const r=e;let s=class extends r{static{t=p}constructor(...e){super(...e),this[t]=!0,this._applyEditsHandler=e=>{const{serviceUrl:t,layerId:r,gdbVersion:i,mayReceiveServiceEdits:s,result:o}=e,a=t===this.url,l=null!=r&&null!=this.layerId&&r===this.layerId,u=null!=r&&this.relationships?.some(e=>e.relatedTableId===r),d=y(this),c=y(this)&&f(t,i,this.gdbVersion);if(!a||d&&!c||!l&&!u&&!s)return;const p=o.then(e=>{if(this.lastEditsEventDate=new Date,l&&(e.addedFeatures.length||e.updatedFeatures.length||e.deletedFeatures.length||e.addedAttachments.length||e.updatedAttachments.length||e.deletedAttachments.length))return this.emit("edits",(0,n.o8)(e)),e;const r=e.editedFeatures?.find(({layerId:e})=>e===this.layerId);if(r){const{adds:t,updates:i,deletes:s}=r.editedFeatures,o={edits:null,addedAttachments:[],deletedAttachments:[],updatedAttachments:[],addedFeatures:t?t.map(({attributes:e})=>({objectId:this.objectIdField&&e[this.objectIdField],globalId:this.globalIdField&&e[this.globalIdField]})):[],deletedFeatures:s?s.map(({attributes:e})=>({objectId:this.objectIdField&&e[this.objectIdField],globalId:this.globalIdField&&e[this.globalIdField]})):[],updatedFeatures:i?i.map(({current:{attributes:e}})=>({objectId:this.objectIdField&&e[this.objectIdField],globalId:this.globalIdField&&e[this.globalIdField]})):[],editedFeatures:(0,n.o8)(e.editedFeatures),exceededTransferLimit:!1,historicMoment:(0,n.o8)(e.historicMoment)};return this.emit("edits",o),o}const s={edits:null,addedAttachments:[],deletedAttachments:[],updatedAttachments:[],addedFeatures:[],deletedFeatures:[],updatedFeatures:[],editedFeatures:(0,n.o8)(e.editedFeatures),exceededTransferLimit:!1,historicMoment:(0,n.o8)(e.historicMoment)};return"historicMoment"in this&&this._shouldUpdateHistoricMoment(t,i,s.historicMoment)&&this.emit("edits",s),s}).then(e=>("historicMoment"in this&&this._shouldUpdateHistoricMoment(t,i,e.historicMoment)&&(this.historicMoment=e.historicMoment),e));p.catch(()=>{}),this.emit("apply-edits",{result:p})},this._updateMomentHandler=e=>{const{serviceUrl:t,gdbVersion:r,moment:i}=e,s=t===this.url,n=y(this),o=y(this)&&f(t,r,this.gdbVersion),a=y(this)&&!f(t,this.gdbVersion,null);s&&n&&o&&a&&"historicMoment"in this&&this.historicMoment!==i&&(this.historicMoment=i)},this.when().then(()=>{this.addHandles(u(this._applyEditsHandler)),"historicMoment"in this&&this.addHandles(d(this._updateMomentHandler))},()=>{})}_shouldUpdateHistoricMoment(e,t,r){return"historicMoment"in this&&this.historicMoment!==r&&(0,a.w5)(e,t)}};return(0,i.Cg)([(0,o.MZ)()],s.prototype,"lastEditsEventDate",void 0),s=(0,i.Cg)([(0,o.$K)("esri.layers.mixins.EditBusLayer")],s),s}])},8303(e,t,r){var i=r(32198),s=r(92602),n=r(70333),o=r(56507),a=r(60999),l=r(49186),u=r(36563),d=r(53966),c=r(97768),p=r(17676),h=r(84952),y=r(91429),f=r(77548),g=r(20655),m=r(80812),v=r(41318),w=r(10407),b=r(36005),M=r(43937);const I={credential:null,user:null};r.d(t,["A",0,e=>{const t=e;let A=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){super.destroy(),this.portalItem=(0,c.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}get portalItem(){return this._get("portalItem")}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new m.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:i}=await r.e(1204).then(()=>r(41204));return(0,p.Te)(t),await i({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,p.zf)(e)||d.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async reloadFromPortal(e){if(!this.loaded||!this.portalItem?.id)return!1;try{const{reload:t}=await r.e(1204).then(()=>r(41204)),i=new AbortController,s=(0,u.rE)(i);return this.addHandles(s,"reloadFromPortal"),await t({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},{signal:i.signal})}catch(e){throw(0,p.zf)(e)||d.A.getLogger(this).warn(`Failed to reload layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}finally{this.removeHandles("reloadFromPortal")}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,p.QP)(e),!0)))}async setUserPrivileges(e,t){if(!s.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:i},content:{updateItem:s}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",i),this._set("userHasUpdateItemPrivileges",s)}catch(e){(0,p.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const i=!n.id?.findCredential(this.url),s=e===r.id;if(s&&r.portal.user)return this._getUserPrivileges(r,i);let o,a;if(s)o=r.portal.url;else try{o=await(0,f.wI)(this.url,t)}catch(e){(0,p.QP)(e)}if(!o||!(0,h.b8)(o,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(n.id?.getCredential(`${o}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,p.QP)(e)}const l=!0,u=!1,d=!1;if(!a)return{features:{edit:l,fullEdit:u},content:{updateItem:d}};try{if(s?await r.reload():(r=new m.default({id:e,portal:{url:o}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,i)}catch(e){(0,p.QP)(e)}return{features:{edit:l,fullEdit:u},content:{updateItem:d}}}_getUserPrivileges(e,t){const r=(0,w.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,p.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?n.id?.findCredential(this.url):null;if(!t)return!0;const r=I.credential===t?I.user:await this._fetchEditingUser(e);return I.credential=t,I.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const r=n.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;const i=`${r.owningSystemUrl}/sharing/rest`,s=g.A.getDefault();if(s&&s.loaded&&(0,h.S8)(s.restUrl)===(0,h.S8)(i))return s.user;const l=`${i}/community/self`,u=null!=e?e.signal:null,d=await(0,a.Ke)((0,o.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:u}));return d.ok?v.A.fromJSON(d.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,i=this.portalItem?.id&&(this.portalItem.portal||g.A.getDefault());return r&&i&&!(0,h.ut)(i.restUrl,r.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,i.Cg)([(0,y.MZ)({type:m.default})],A.prototype,"portalItem",null),(0,i.Cg)([(0,b.w)("web-document","portalItem",["itemId"])],A.prototype,"readPortalItem",null),(0,i.Cg)([(0,M.K)("web-document","portalItem",{itemId:{type:String}})],A.prototype,"writePortalItem",null),(0,i.Cg)([(0,y.MZ)({clonable:!1})],A.prototype,"resourceReferences",void 0),(0,i.Cg)([(0,y.MZ)({type:Boolean,readOnly:!0})],A.prototype,"userHasEditingPrivileges",void 0),(0,i.Cg)([(0,y.MZ)({type:Boolean,readOnly:!0})],A.prototype,"userHasFullEditingPrivileges",void 0),(0,i.Cg)([(0,y.MZ)({type:Boolean,readOnly:!0})],A.prototype,"userHasUpdateItemPrivileges",void 0),A=(0,i.Cg)([(0,y.$K)("esri.layers.mixins.PortalLayer")],A),A}])},25036(e,t,r){var i=r(32198),s=r(91429);r.d(t,["j",0,e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.minScale=0,this.maxScale=0}get effectiveScaleRange(){const e={minScale:this.minScale,maxScale:this.maxScale},t=this.parent;void 0!==t?.effectiveScaleRange&&function(e,t){e.minScale=e.minScale>0?t.minScale>0?Math.min(e.minScale,t.minScale):e.minScale:t.minScale,e.maxScale=e.maxScale>0?t.maxScale>0?Math.max(e.maxScale,t.maxScale):e.maxScale:t.maxScale}(e,t.effectiveScaleRange);const r=this._get("effectiveScaleRange");return r&&r.minScale===e.minScale&&r.maxScale===e.maxScale?r:e}};return(0,i.Cg)([(0,s.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"minScale",void 0),(0,i.Cg)([(0,s.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"maxScale",void 0),(0,i.Cg)([(0,s.MZ)({readOnly:!0})],r.prototype,"effectiveScaleRange",null),r=(0,i.Cg)([(0,s.$K)("esri.layers.mixins.ScaleRangeLayer")],r),r}])},82935(e,t,r){var i=r(32198),s=r(91429),n=r(89317),o=r(30524),a=r(96184),l=r(73133),u=r(79677),d=r(10184),c=r(36005);const p={type:Boolean,json:{read:{source:"timeAnimation"},write:{target:"timeAnimation",layerContainerTypes:n.K}}};r.d(t,["B",0,p,"e",0,e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.timeExtent=null,this.timeOffset=null,this.useViewTime=!0}readOffset(e,t){const r=t.timeInfo.exportOptions;if(!r)return null;const i=r.timeOffset,s=l.j.fromJSON(r.timeOffsetUnits);return i&&s?new d.A({value:i,unit:s}):null}get timeInfo(){return this._get("timeInfo")}set timeInfo(e){(0,o.sv)(e,this.fieldsIndex),this._set("timeInfo",e)}};return(0,i.Cg)([(0,s.MZ)({type:u.A,json:{write:!1}})],r.prototype,"timeExtent",void 0),(0,i.Cg)([(0,s.MZ)({type:d.A})],r.prototype,"timeOffset",void 0),(0,i.Cg)([(0,c.w)("service","timeOffset",["timeInfo.exportOptions"])],r.prototype,"readOffset",null),(0,i.Cg)([(0,s.MZ)({value:null,type:a.A,json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],r.prototype,"timeInfo",null),(0,i.Cg)([(0,s.MZ)(p)],r.prototype,"useViewTime",void 0),r=(0,i.Cg)([(0,s.$K)("esri.layers.mixins.TemporalLayer")],r),r}])},67202(e,t,r){r.d(t,{A:()=>a});var i,s=r(32198),n=r(25482),o=r(91429);let a=i=class extends n.o{constructor(e){super(e),this.type="selection"}clone(){return new i}};(0,s.Cg)([(0,o.MZ)({type:["selection"],readOnly:!0,json:{write:!0}})],a.prototype,"type",void 0),a=i=(0,s.Cg)([(0,o.$K)("esri.layers.support.FeatureReductionSelection")],a)},37352(e,t,r){r.d(t,{A:()=>l});var i,s=r(32198),n=r(7762),o=r(25482),a=r(91429);let l=i=class extends o.o{constructor(e){super(e),this.floorField=null,this.viewAllMode=!1,this.viewAllLevelIds=new n.A}clone(){return new i({floorField:this.floorField,viewAllMode:this.viewAllMode,viewAllLevelIds:this.viewAllLevelIds})}};(0,s.Cg)([(0,a.MZ)({type:String,json:{write:{isRequired:!0}}})],l.prototype,"floorField",void 0),(0,s.Cg)([(0,a.MZ)({json:{read:!1,write:!1}})],l.prototype,"viewAllMode",void 0),(0,s.Cg)([(0,a.MZ)({json:{read:!1,write:!1}})],l.prototype,"viewAllLevelIds",void 0),l=i=(0,s.Cg)([(0,a.$K)("esri.layers.support.LayerFloorInfo")],l)},96184(e,t,r){r.d(t,{A:()=>h});var i=r(32198),s=r(69540),n=r(25482),o=r(91429),a=r(79677),l=r(10184),u=r(56400),d=r(36005),c=r(43937);function p(e,t){return l.A.fromJSON({value:e,unit:t})}let h=class extends((0,s.OU)(n.o)){constructor(e){super(e),this.cumulative=!1,this.endField=null,this.fullTimeExtent=null,this.hasLiveData=!1,this.interval=null,this.startField=null,this.timeZone=null,this.trackIdField=null,this.useTime=!0,this.stops=null}readFullTimeExtent(e,t){return t.timeExtent&&Array.isArray(t.timeExtent)&&2===t.timeExtent.length?a.A.fromArray(t.timeExtent):null}writeFullTimeExtent(e,t){null!=e?.start&&null!=e.end?t.timeExtent=e.toArray():t.timeExtent=null}readInterval(e,t){return t.timeInterval&&t.timeIntervalUnits?p(t.timeInterval,t.timeIntervalUnits):t.defaultTimeInterval&&t.defaultTimeIntervalUnits?p(t.defaultTimeInterval,t.defaultTimeIntervalUnits):null}writeInterval(e,t){t.timeInterval=e?.toJSON().value??null,t.timeIntervalUnits=e?.toJSON().unit??null}};(0,i.Cg)([(0,o.MZ)({type:Boolean,json:{name:"exportOptions.timeDataCumulative",write:!0}})],h.prototype,"cumulative",void 0),(0,i.Cg)([(0,o.MZ)({type:String,json:{name:"endTimeField",write:{enabled:!0,allowNull:!0}}})],h.prototype,"endField",void 0),(0,i.Cg)([(0,o.MZ)({type:a.A,json:{write:{enabled:!0,allowNull:!0}}})],h.prototype,"fullTimeExtent",void 0),(0,i.Cg)([(0,d.w)("fullTimeExtent",["timeExtent"])],h.prototype,"readFullTimeExtent",null),(0,i.Cg)([(0,c.K)("fullTimeExtent")],h.prototype,"writeFullTimeExtent",null),(0,i.Cg)([(0,o.MZ)({type:Boolean,json:{write:!0}})],h.prototype,"hasLiveData",void 0),(0,i.Cg)([(0,o.MZ)({type:l.A,json:{write:{enabled:!0,allowNull:!0}}})],h.prototype,"interval",void 0),(0,i.Cg)([(0,d.w)("interval",["timeInterval","timeIntervalUnits","defaultTimeInterval","defaultTimeIntervalUnits"])],h.prototype,"readInterval",null),(0,i.Cg)([(0,c.K)("interval")],h.prototype,"writeInterval",null),(0,i.Cg)([(0,o.MZ)({type:String,json:{name:"startTimeField",write:{enabled:!0,allowNull:!0}}})],h.prototype,"startField",void 0),(0,i.Cg)([(0,o.MZ)((0,u.P6)("timeReference",!0))],h.prototype,"timeZone",void 0),(0,i.Cg)([(0,o.MZ)({type:String,json:{write:{enabled:!0,allowNull:!0}}})],h.prototype,"trackIdField",void 0),(0,i.Cg)([(0,o.MZ)({type:Boolean,json:{name:"exportOptions.useTime",write:!0}})],h.prototype,"useTime",void 0),(0,i.Cg)([(0,o.MZ)({type:[Date],json:{read:!1}})],h.prototype,"stops",void 0),h=(0,i.Cg)([(0,o.$K)("esri.layers.support.TimeInfo")],h)},17036(e,t,r){r.d(t,{p:()=>l});var i=r(44208),s=r(53966),n=r(20437),o=r(95466),a=r(30524);function l(){return{fields:{type:[n.A],value:null,set:function(e){if(e&&(0,i.A)("big-integer-warning-enabled")){const t=e.filter(e=>"big-integer"===e.type||"oid"===e.type&&(e.length||0)>=8);if(t.length){const e=t.map(e=>`'${e.name}'`).join(", ");s.A.getLogger(this).warn("#fields",`Layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}') references big-integer field(s): ${e}, support for which is experimental. Only integers less than ${Number.MAX_SAFE_INTEGER} (Number.MAX_SAFE_INTEGER) are supported.`)}}this._set("fields",e)}},fieldsIndex:{readOnly:!0,get(){return o.A.fromLayer(this)}},outFields:{type:[String],json:{read:!1},set:function(e){this._userOutFields=e,this.notifyChange("outFields")},get:function(){const e=this._userOutFields;if(!e?.length)return null;if(e.includes("*"))return["*"];if(!this.fields)return e;for(const t of e){const r=this.fieldsIndex?.has(t);r||s.A.getLogger("esri.layers.support.fieldProperties").error("field-attributes-layer:invalid-field",`Invalid field ${t} found in outFields`,{layer:this,outFields:e})}return(0,a.DB)(this.fieldsIndex,e)}}}}},20557(e,t,r){r.d(t,{Fm:()=>l,Hz:()=>g,JQ:()=>f,JZ:()=>F,ND:()=>v,R_:()=>o,U9:()=>y,_h:()=>b,be:()=>c,fE:()=>h,fu:()=>s,nr:()=>m,oF:()=>n,qv:()=>S,rP:()=>p,rq:()=>u,z$:()=>d});const i=[["binary","application/octet-stream","bin",""]];function s(e,t){return null!=M(t.name,e?.supportedFormats??[])}function n(e,t){if(!e)return!1;const r=u(t,e.supportedFormats??[]);return null!=r&&e.editFormats.includes(r)}function o(e,t){return I(function(e,t){const r=e.toLowerCase();return w(t).find(e=>A(e)===r)}(e,t))}function a(e,t){return I(M(e,t))}function l(e,t){return A(b(e,t))}function u(e,t){return a(e.name,t)??o(e.type,t)}function d(e,t,r){return o(e,r)??a(t,r)}function c(e,t){if(!e||!b(e,t))return;const r=/^3d_(.+)$/iu.exec(e)?.[1]?.toLowerCase();return r||void 0}function p(e,t){return(e??[]).map(e=>c(e,t)).filter(e=>!!e)}function h(e,t){return I(t.find(r=>c(I(r),t)===e))}function y({supportedFormats:e}){return d("model/gltf-binary","glb",e)}function f(e){const t=y(e);return null!=t&&e.editFormats.includes(t)}function g(e){if(!e)return null;const t=y(e),r=function({supportedFormats:e}){return d("model/gltf+json","gltf",e)}(e);let i=null;for(const s of e.queryFormats){if(s===t)return s;s===r&&(i=s)}return i}function m({supportedFormats:e}){return d("application/esri3do-SR_world","wld",e)}function v({supportedFormats:e}){return d("application/esri3do-SR_prj","prj",e)}function w(e){return[...i,...e]}function b(e,t){return w(t).find(t=>I(t)===e)}function M(e,t){const r=e.toLowerCase();return w(t).find(e=>S(e).some(e=>r.endsWith(e)))}function I(e){return e?.[0]}function A(e){return e?.[1].toLowerCase()}function S(e){return e?.[2].split(",").map(e=>e.toLowerCase())??[]}function F(e){return e.tables?.find(e=>"assetMaps"===e.role)}},86390(e,t,r){r.d(t,{Z:()=>n});var i=r(86211),s=r(73836);function n(e){const t=1/(0,i.GA)(e,1);return 1!==t?new s.A({scale:[t,t,t]}):void 0}},73179(e,t,r){r.d(t,{b:()=>l,h:()=>u});var i=r(4718),s=r(53966),n=r(84952),o=r(60694),a=r(10873);function l(e){const{nonStandardUrlAllowed:t=!1,separator:r}=e??{},n=(0,i.o8)(a.OZ),l=n.json?.write;return"object"==typeof l&&l&&(l.writer=function(e,t,i,s){(0,o.LS)(this,e,r,t,s)}),{...n,set:function(e){if(null==e)return void this._set("url",e);const r=(0,o.HZ)({layer:this,url:e,nonStandardUrlAllowed:t,logger:s.A.getLogger(this)});this._set("url",r.url),null!=r.layerId&&this._set("layerId",r.layerId)}}}function u(e,t){const{separator:r}=t??{},i=(0,n.An)(e.url);return null!=i&&(null!=e.dynamicDataSource?i.path=(0,n.fj)(i.path,"dynamicLayer"):null!=e.layerId&&(i.path=(0,n.fj)(i.path,r??"",e.layerId.toString()))),i}},10407(e,t,r){r.d(t,{It:()=>h,LG:()=>o,OM:()=>u,Sm:()=>d,Y:()=>a,bK:()=>l,sQ:()=>c});var i=r(99917),s=r(16930),n=r(28735);function o(e,t){if(!a(e,t)){const r=e.typeKeywords;r?r.push(t):e.typeKeywords=[t]}}function a(e,t){return!!e.typeKeywords?.includes(t)}function l(e){return a(e,p.HOSTED_SERVICE)}function u(e,t){const r=e.typeKeywords;if(r){const e=r.indexOf(t);e>-1&&r.splice(e,1)}}function d(e,t,r){r?o(e,t):u(e,t)}async function c(e){const t=e.clone().normalize();let r;if(t.length>1)for(const e of t)r?e.width>r.width&&(r=e):r=e;else r=t[0];return async function(e){const t=e.spatialReference;if(t.isWGS84)return e.clone();if(t.isWebMercator)return(0,n.ci)(e);const r=s.A.WGS84;return await(0,i.initializeProjection)(t,r),(0,i.project)(e,r)}(r)}const p={CHARTS:"Charts",CATALOG_LAYER:"CatalogLayer",DYNAMIC:"Dynamic",DEVELOPER_BASEMAP:"DeveloperBasemap",GROUP_LAYER_MAP:"Map",HOSTED_SERVICE:"Hosted Service",JSAPI:"ArcGIS API for JavaScript",LOCAL_SCENE:"ViewingMode-Local",METADATA:"Metadata",MULTI_LAYER:"Multilayer",ORIENTED_IMAGERY_LAYER:"OrientedImageryLayer",PARCEL_FABRIC:"ParcelFabric",SINGLE_LAYER:"Singlelayer",SUBTYPE_GROUP_LAYER:"SubtypeGroupLayer",SUBTYPE_GROUP_TABLE:"SubtypeGroupTable",TABLE:"Table",TILED_IMAGERY:"Tiled Imagery",UTILITY_NETWORK:"UtilityNetwork"};function h(e){const{portal:t,isOrgItem:r,itemControl:i}=e,s=t.user?.privileges;let n=!s||s.includes("features:user:edit"),o=!!r&&!!s?.includes("features:user:fullEdit");const a="update"===i||"admin"===i;return a?o=n=!0:o&&(n=!0),{features:{edit:n,fullEdit:o},content:{updateItem:a}}}r.d(t,["mm",0,p])},85648(e,t,r){r.d(t,{n:()=>s});var i=r(84952);function s(e){return n[function(e){return"json"===e.type?"application/json":"blob"===e.type?e.blob.type:function(e){const t=(0,i.Zo)(e);return l[t]||o}(e.url)}(e)]||a}const n={},o="text/plain",a=n[o],l={png:"image/png",jpeg:"image/jpeg",jpg:"image/jpg",bmp:"image/bmp",gif:"image/gif",json:"application/json",txt:"text/plain",xml:"application/xml",svg:"image/svg+xml",zip:"application/zip",pbf:"application/vnd.mapbox-vector-tile",gz:"application/gzip","bin.gz":"application/octet-stream"};for(const e in l)n[l[e]]=e},8947(e,t,r){r.d(t,{L:()=>o});var i=r(60999),s=r(17676),n=r(67076);async function o(e,t,r){const o=e&&e.getAtOrigin&&e.getAtOrigin("renderer",t.origin);if(o&&"unique-value"===o.type&&o.styleOrigin){const a=await(0,i.Ke)(o.populateFromStyle());if((0,s.Te)(r),!1===a.ok){const r=a.error;t?.messages&&t.messages.push(new n.A("renderer:style-reference",`Failed to create unique value renderer from style reference: ${r.message}`,{error:r,context:t})),e.clear("renderer",t?.origin)}}}},20816(e,t,r){r.d(t,{We:()=>a,ZJ:()=>l,w5:()=>u});var i=r(56507);const s=(0,r(13069).vD)(),n=new Map,o=new Map;async function a(e,t,r){if(!e||!r)return!1;if(!t)return!0;const s=new URL(e).host;let o=n.get(s);if(!o){const t=e.replace(/\/FeatureServer/i,"/VersionManagementServer").replace(/\/\d*$/,"");o=(await(0,i.A)(t,{responseType:"json",query:{f:"json"}})).data.defaultVersionName}return o===t}async function l(e,t,i=!1){if(!e||!t)return!0;const n=e.replace(/\/FeatureServer/i,"/VersionManagementServer").replace(/\/\d*$/,""),a=o.get(n)?.entries();if(a)for(const[e,o]of a)if(o.name===t){const t=!o.stack?.hasForwardEdits();if(!t&&i){const[{deleteForwardEdits:t},{default:i}]=await Promise.all([r.e(2186).then(()=>r(32186)),r.e(2558).then(()=>r(32558))]),a=await t(n,e,new i({sessionId:s,moment:o.moment}));return a.success&&o.stack?.clearForwardEdits(),a.success}return t}return!0}function u(e,t){if(!e)return!1;const r=e.replace(/\/FeatureServer/i,"/VersionManagementServer").replace(/\/\d*$/,""),i=o.get(r)?.entries();if(i)for(const[e,r]of i)if(r.name===t)return"edit"===r.lockType;return!1}new Map,r.d(t,["TA",0,s,"Z3",0,n])},45671(e,t,r){r.d(t,{D8:()=>n,TO:()=>s});var i=r(30524);async function s(e,t=e.popupTemplate){if(null==t)return[];const r=await t.getRequiredFields(e.fieldsIndex),{lastEditInfoEnabled:s}=t,{objectIdField:n,typeIdField:o,globalIdField:a,relationships:l}=e;if(r.includes("*"))return["*"];const u=s?(0,i.eX)(e):[],d=(0,i.DB)(e.fieldsIndex,[...r,...u]);return o&&d.push(o),d&&n&&e.fieldsIndex?.has(n)&&!d.includes(n)&&d.push(n),d&&a&&e.fieldsIndex?.has(a)&&!d.includes(a)&&d.push(a),l?.forEach(t=>{const{keyField:r}=t;d&&r&&e.fieldsIndex?.has(r)&&!d.includes(r)&&d.push(r)}),d}function n(e,t){return e&&"object"==typeof e?t?.checkPopupEnabled&&"popupEnabled"in e&&!e.popupEnabled?null:"popupTemplate"in e&&e.popupTemplate?e.popupTemplate:null!=t&&t.defaultPopupTemplateEnabled&&"defaultPopupTemplate"in e&&e.defaultPopupTemplate?e.defaultPopupTemplate:null:null}}}]);