UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

1 lines • 30.2 kB
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2772,3052],{8303(e,t,r){r.d(t,{A:()=>_});var s=r(5482),i=r(92602),n=r(70333),o=r(11254),a=r(60999),l=r(49186),c=r(53966),u=r(97768),h=r(74887),p=r(84952),d=r(91429),g=r(77548),f=r(20655),m=r(80812),y=r(41318),v=r(10407),w=r(36005),S=r(43937);const _=e=>{const t=e;let _=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,u.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:s}=await r.e(1204).then(r.bind(r,41204));return(0,h.Te)(t),await s({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,h.zf)(e)||c.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,h.QP)(e),!0)))}async setUserPrivileges(e,t){if(!i.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:s},content:{updateItem:i}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",s),this._set("userHasUpdateItemPrivileges",i)}catch(e){(0,h.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const s=!n.id?.findCredential(this.url),i=e===r.id;if(i&&r.portal.user)return this._getUserPrivileges(r,s);let o,a;if(i)o=r.portal.url;else try{o=await(0,g.wI)(this.url,t)}catch(e){(0,h.QP)(e)}if(!o||!(0,p.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,h.QP)(e)}const l=!0,c=!1,u=!1;if(!a)return{features:{edit:l,fullEdit:c},content:{updateItem:u}};try{if(i?await r.reload():(r=new m.default({id:e,portal:{url:o}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,s)}catch(e){(0,h.QP)(e)}return{features:{edit:l,fullEdit:c},content:{updateItem:u}}}_getUserPrivileges(e,t){const r=(0,v.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,h.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=b.credential===t?b.user:await this._fetchEditingUser(e);return b.credential=t,b.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 s=`${r.owningSystemUrl}/sharing/rest`,i=f.A.getDefault();if(i&&i.loaded&&(0,p.S8)(i.restUrl)===(0,p.S8)(s))return i.user;const l=`${s}/community/self`,c=null!=e?e.signal:null,u=await(0,a.Ke)((0,o.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:c}));return u.ok?y.A.fromJSON(u.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,s=this.portalItem?.id&&(this.portalItem.portal||f.A.getDefault());return r&&s&&!(0,p.ut)(s.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,s.Cg)([(0,d.MZ)({type:m.default})],_.prototype,"portalItem",null),(0,s.Cg)([(0,w.w)("web-document","portalItem",["itemId"])],_.prototype,"readPortalItem",null),(0,s.Cg)([(0,S.K)("web-document","portalItem",{itemId:{type:String}})],_.prototype,"writePortalItem",null),(0,s.Cg)([(0,d.MZ)({clonable:!1})],_.prototype,"resourceReferences",void 0),(0,s.Cg)([(0,d.MZ)({type:Boolean,readOnly:!0})],_.prototype,"userHasEditingPrivileges",void 0),(0,s.Cg)([(0,d.MZ)({type:Boolean,readOnly:!0})],_.prototype,"userHasFullEditingPrivileges",void 0),(0,s.Cg)([(0,d.MZ)({type:Boolean,readOnly:!0})],_.prototype,"userHasUpdateItemPrivileges",void 0),_=(0,s.Cg)([(0,d.$K)("esri.layers.mixins.PortalLayer")],_),_},b={credential:null,user:null}},10407(e,t,r){r.d(t,{It:()=>d,LG:()=>o,OM:()=>c,Sm:()=>u,Y:()=>a,bK:()=>l,mm:()=>p,sQ:()=>h});var s=r(91218),i=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 c(e,t){const r=e.typeKeywords;if(r){const e=r.indexOf(t);e>-1&&r.splice(e,1)}}function u(e,t,r){r?o(e,t):c(e,t)}async function h(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=i.A.WGS84;return await(0,s.initializeProjection)(t,r),(0,s.project)(e,r)}(r)}const p={CHARTS:"Charts",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",SINGLE_LAYER:"Singlelayer",SUBTYPE_GROUP_LAYER:"SubtypeGroupLayer",SUBTYPE_GROUP_TABLE:"SubtypeGroupTable",TABLE:"Table",TILED_IMAGERY:"Tiled Imagery"};function d(e){const{portal:t,isOrgItem:r,itemControl:s}=e,i=t.user?.privileges;let n=!i||i.includes("features:user:edit"),o=!!r&&!!i?.includes("features:user:fullEdit");const a="update"===s||"admin"===s;return a?o=n=!0:o&&(n=!0),{features:{edit:n,fullEdit:o},content:{updateItem:a}}}},18768(e,t,r){r.d(t,{b:()=>a});var s=r(5482),i=r(53966),n=r(91429),o=r(60694);const a=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,i.A.getLogger(this)))}};return(0,s.Cg)([(0,n.MZ)()],r.prototype,"title",null),(0,s.Cg)([(0,n.MZ)({type:String})],r.prototype,"url",null),r=(0,s.Cg)([(0,n.$K)("esri.layers.mixins.ArcGISService")],r),r}},25036(e,t,r){r.d(t,{j:()=>n});var s=r(5482),i=r(91429);const n=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,s.Cg)([(0,i.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"minScale",void 0),(0,s.Cg)([(0,i.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"maxScale",void 0),(0,s.Cg)([(0,i.MZ)({readOnly:!0})],r.prototype,"effectiveScaleRange",null),r=(0,s.Cg)([(0,i.$K)("esri.layers.mixins.ScaleRangeLayer")],r),r}},35982(e,t,r){r.d(t,{B:()=>l});var s=r(4576),i=r(36563),n=r(53966),o=r(74887),a=r(83027);class l{constructor(e,t,r,s,i={}){this._mainMethod=t,this._transferLists=r,this._listeners=[],this._promise=(0,a.h)(e,{...i,schedule:s}).then(e=>{if(void 0===this._thread){this._thread=e,this._promise=null,i.hasInitialize&&this.broadcast({},"initialize");for(const e of this._listeners)this._connectListener(e)}else e.close()}),this._promise.catch(t=>n.A.getLogger("esri.core.workers.WorkerHandle").error(`Failed to initialize ${e} worker: ${t}`))}on(e,t){const r={removed:!1,eventName:e,callback:t,threadHandle:null};return this._listeners.push(r),this._connectListener(r),(0,i.hA)(()=>{r.removed=!0,(0,s.TF)(this._listeners,r),this._thread&&null!=r.threadHandle&&r.threadHandle.remove()})}[Symbol.dispose](){this.destroy()}destroy(){this._thread&&(this._thread.close(),this._thread=null),this._promise=null,this._listeners.length=0,this._transferLists={}}invoke(e,t,r){return this.invokeMethod(this._mainMethod,e,t,r)}invokeMethod(e,t,r,s){if(this._thread){const i=this._transferLists[e],n=i?i(t):[];return this._thread.invoke(e,t,{transferList:n,signal:r,jobPriority:s})}return this._promise?this._promise.then(()=>((0,o.Te)(r),this.invokeMethod(e,t,r))):Promise.reject(null)}broadcast(e,t){return this._thread?Promise.all(this._thread.broadcast(t,e)).then(c):this._promise?this._promise.then(()=>this.broadcast(e,t)):Promise.reject()}get promise(){return this._promise}_connectListener(e){this._thread&&this._thread.on(e.eventName,e.callback).then(t=>{e.removed||(e.threadHandle=t)})}}function c(){}},54239(e,t,r){r.d(t,{A:()=>m});var s,i=r(5482),n=r(4576),o=r(66552),a=r(25482),l=r(86211),c=r(67076),u=r(91429),h=r(43937),p=r(36005);const d=(0,o.O)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),g=d.jsonValues.slice();(0,n.Xy)(g,"orthometric");const f=(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=s=class extends a.o{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,r){return d.write(e,t,r)}readHeightModel(e,t,r){return d.read(e)||(r?.messages&&r.messages.push(function(e,t){return new c.A("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:r})),null)}readHeightUnit(e,t,r){return f.read(e)||(r?.messages&&r.messages.push(y(e,{context:r})),null)}readHeightUnitService(e,t,r){return(0,l.LA)(e)||f.read(e)||(r?.messages&&r.messages.push(y(e,{context:r})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new s({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 s({heightModel:e.heightModel,heightUnit:r??void 0,vertCRS:e.vertCRS})}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;const t=new s;return t.read(e,{origin:"web-scene"}),t}};function y(e,t){return new c.A("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,i.Cg)([(0,u.MZ)({type:d.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:g,default:"ellipsoidal",write:{isRequired:!0}}}}})],m.prototype,"heightModel",void 0),(0,i.Cg)([(0,h.K)("web-scene","heightModel")],m.prototype,"writeHeightModel",null),(0,i.Cg)([(0,p.w)(["web-scene","service"],"heightModel")],m.prototype,"readHeightModel",null),(0,i.Cg)([(0,u.MZ)({type:f.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:f.jsonValues,write:{writer:f.write,isRequired:!0}}}}})],m.prototype,"heightUnit",void 0),(0,i.Cg)([(0,p.w)("web-scene","heightUnit")],m.prototype,"readHeightUnit",null),(0,i.Cg)([(0,p.w)("service","heightUnit")],m.prototype,"readHeightUnitService",null),(0,i.Cg)([(0,u.MZ)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],m.prototype,"vertCRS",void 0),(0,i.Cg)([(0,p.w)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],m.prototype,"readVertCRS",null),m=s=(0,i.Cg)([(0,u.$K)("esri.geometry.HeightModelInfo")],m)},58325(e,t,r){r.d(t,{A:()=>S});var s,i=r(5482),n=r(11254),o=r(7762),a=r(25482),l=r(84952),c=r(91429),u=r(4718),h=r(67076),p=r(87024),d=r(39829),g=r(91218),f=r(72772),m=r(98697),y=r(43937);let v=s=class extends a.o{constructor(e){super(e),this.geometry=null,this.type="clip"}writeGeometry(e,t,r,s){if(s.layer?.spatialReference&&115700===s.layer?.spatialReference.vcsWkid){let e=!0;if((0,f.isInitialized)()){const i=(0,m.Ir)(null,[this],s.layer?.spatialReference),n=(0,f.switchMeshModificationPolygonVCSSync)({modifications:i,inVCS:5773});if(n.success&&n.modifications){const i=(0,m.ze)(n.modifications,this);i&&(t[r]=i.toJSON(s),e=!1)}}if(e)return void(s?.messages&&s.messages.push(new h.A("scenemodification:unsupported","Scene modifications with incompatible spatial references are not supported",{modification:this,spatialReference:s.layer.spatialReference,context:s})))}else if(s.layer?.spatialReference&&!s.layer.spatialReference.equals(this.geometry.spatialReference)){if(!(0,g.canProjectWithoutEngine)(e.spatialReference,s.layer.spatialReference))return void(s?.messages&&s.messages.push(new h.A("scenemodification:unsupported","Scene modifications with incompatible spatial references are not supported",{modification:this,spatialReference:s.layer.spatialReference,context:s})));const i=new d.A;(0,g.projectPolygon)(e,i,s.layer.spatialReference),t[r]=i.toJSON(s)}else t[r]=e.toJSON(s)}clone(){return new s({geometry:(0,u.o8)(this.geometry),type:this.type})}};var w;(0,i.Cg)([(0,c.MZ)({type:d.A}),(0,p.P)()],v.prototype,"geometry",void 0),(0,i.Cg)([(0,y.K)(["web-scene","portal-item"],"geometry")],v.prototype,"writeGeometry",null),(0,i.Cg)([(0,c.MZ)({type:["clip","mask","replace"],nonNullable:!0}),(0,p.P)()],v.prototype,"type",void 0),v=s=(0,i.Cg)([(0,c.$K)("esri.layers.support.SceneModification")],v);let S=w=class extends((0,a.T)(o.A.ofType(v))){constructor(e){super(e),this.url=null}clone(){return new w({url:this.url,items:this.items.map(e=>e.clone())})}toJSON(e){return this.toArray().map(t=>t.toJSON(e)).filter(e=>!!e.geometry)}static fromJSON(e,t){const r=new w;for(const s of e)r.add(v.fromJSON(s,t));return r}static async fromUrl(e,t,r){const s={url:(0,l.An)(e),origin:"service"},i=await(0,n.A)(e,{responseType:"json",signal:r?.signal}),o=t.toJSON(),a=[];for(const e of i.data)a.push(v.fromJSON({...e,geometry:{spatialReference:o,...e.geometry}},s));return new w({url:e,items:a})}};(0,i.Cg)([(0,c.MZ)({type:String})],S.prototype,"url",void 0),S=w=(0,i.Cg)([(0,c.$K)("esri.layers.support.SceneModifications")],S)},60999(e,t,r){r.d(t,{DZ:()=>g,Ke:()=>d,Tj:()=>u,UT:()=>f,aD:()=>y,jJ:()=>c});var s=r(5482),i=r(69622),n=r(97768),o=r(74887),a=r(10107),l=r(64108);function c(e,t,r){return(0,o.Lx)(e.map((e,s)=>t.apply(r,[e,s])))}async function u(e,t,r){return(await(0,o.Lx)(e.map((e,s)=>t.apply(r,[e,s])))).map(e=>e.value)}function h(e){return{ok:!0,value:e}}function p(e){return{ok:!1,error:e}}async function d(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return h(await e)}catch(e){return p(e)}}async function g(e){try{return h(await e)}catch(e){return(0,o.QP)(e),p(e)}}function f(e,t){return new m(e,t)}let m=class extends i.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,n.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:r}=this._abortController;this.promise=e(r),this.promise.then(e=>{this._result=h(e),this._cleanup()},e=>{this._result=p(e),this._cleanup()}),this._abortHandle=(0,o.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,n.xt)(this._abortHandle),this._abortController=null}};(0,s.Cg)([(0,a.MZ)()],m.prototype,"value",null),(0,s.Cg)([(0,a.MZ)()],m.prototype,"error",null),(0,s.Cg)([(0,a.MZ)()],m.prototype,"finished",null),(0,s.Cg)([(0,a.MZ)()],m.prototype,"promise",void 0),(0,s.Cg)([(0,a.MZ)()],m.prototype,"_result",void 0),m=(0,s.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],m);class y{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});const t=await e;return{[Symbol.dispose]:t}}async run(e){const t={stack:[],error:void 0,hasError:!1};try{return(0,s.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,s.hk)(t)}}}},69208(e,t,r){r.d(t,{d:()=>n});var s=r(5482),i=r(91429);const n=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.customParameters=null}};return(0,s.Cg)([(0,i.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],r.prototype,"customParameters",void 0),r=(0,s.Cg)([(0,i.$K)("esri.layers.mixins.CustomParametersMixin")],r),r}},72772(e,t,r){r.r(t),r.d(t,{addSpatialReferenceInfo:()=>l,destroyWasm:()=>u,initialize:()=>h,isInitialized:()=>p,process:()=>a,switchMeshModificationPolygonVCSSync:()=>c});var s=r(2741);function i(e){return(0,s.s)(`esri/libs/lyr3d/${e}`)}let n,o;async function a(e){await h();const t={status:1,error:"",jobDescJson:"",data:new Uint8Array(0),missingInputUrls:[]};if(e.inputs.length<1)return{result:t,transferList:[]};const r={ptrs:[],sizes:[]};for(const t of e.inputs){const e=o._malloc(t.byteLength);new Uint8Array(o.HEAPU8.buffer,e,t.byteLength).set(new Uint8Array(t)),r.ptrs.push(e),r.sizes.push(t.byteLength)}const s=o.process(e.jobDescJson,e.id,r,e.isMissingResourceCase);t.status=s.status,t.missingInputUrls=s.missingInputUrls.slice();const i=0===s.status&&s.data,n=2===t.status&&t.missingInputUrls.length>0;t.jobDescJson=s.jobDescJson.slice(),t.error=s.error.slice(),i?t.data=s.data.slice():n&&(t.originalInputs=e.inputs.slice());for(let e=0;e<r.ptrs.length;++e)o._free(r.ptrs[e]);const a=[];if(i)a.push(t.data.buffer);else if(n)for(const t of e.inputs)a.push(t);return{result:t,transferList:a}}async function l(e){await h(),o.add_spatial_reference_info(e.sr,e.isGCS,e.toMetersXY,e.toMetersZ)}function c(e){if(!o)return{success:!1,modifications:null};const t=o._malloc(8*e.modifications.length),r=new Float64Array(o.HEAPF64.buffer,t,e.modifications.length);r.set(e.modifications);const s=o.switch_mesh_modification_polygon_vcs(t,e.modifications.length,e.inVCS);let i=null;return s&&(i=r.slice()),o._free(t),{success:s,modifications:i}}function u(){o&&(o.uninitialize_lyr3d_worker_wasm(),o=null)}function h(){return o?Promise.resolve():(n||(n=new Promise(e=>r.e(2343).then(r.bind(r,2343)).then(e=>e.l).then(({default:t})=>{const r=t({locateFile:i,onRuntimeInitialized:()=>e(r)})})).catch(e=>{throw e}).then(e=>{o=e,o.initialize_lyr3d_worker_wasm(),n=null})),n)}function p(){return null!==o}},78553(e,t,r){r.d(t,{D:()=>n,p:()=>i});var s=r(56507);function i(e){const t=(0,s.Vr)(100*(1-e));return Math.max(0,Math.min(t,100))}function n(e){const t=1-e/100;return Math.max(0,Math.min(t,1))}},80200(e,t,r){r.d(t,{T:()=>s,d:()=>h});const s={Base64:0,Hex:1,String:2,Raw:3};function i(e,t){const r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function n(e,t,r,s,n,o){return i(function(e,t){return e<<t|e>>>32-t}(i(i(t,e),i(s,o)),n),r)}function o(e,t,r,s,i,o,a){return n(t&r|~t&s,e,t,i,o,a)}function a(e,t,r,s,i,o,a){return n(t&s|r&~s,e,t,i,o,a)}function l(e,t,r,s,i,o,a){return n(t^r^s,e,t,i,o,a)}function c(e,t,r,s,i,o,a){return n(r^(t|~s),e,t,i,o,a)}function u(e,t){e[t>>5]|=128<<t%32,e[14+(t+64>>>9<<4)]=t;let r=1732584193,s=-271733879,n=-1732584194,u=271733878;for(let t=0;t<e.length;t+=16){const h=r,p=s,d=n,g=u;r=o(r,s,n,u,e[t],7,-680876936),u=o(u,r,s,n,e[t+1],12,-389564586),n=o(n,u,r,s,e[t+2],17,606105819),s=o(s,n,u,r,e[t+3],22,-1044525330),r=o(r,s,n,u,e[t+4],7,-176418897),u=o(u,r,s,n,e[t+5],12,1200080426),n=o(n,u,r,s,e[t+6],17,-1473231341),s=o(s,n,u,r,e[t+7],22,-45705983),r=o(r,s,n,u,e[t+8],7,1770035416),u=o(u,r,s,n,e[t+9],12,-1958414417),n=o(n,u,r,s,e[t+10],17,-42063),s=o(s,n,u,r,e[t+11],22,-1990404162),r=o(r,s,n,u,e[t+12],7,1804603682),u=o(u,r,s,n,e[t+13],12,-40341101),n=o(n,u,r,s,e[t+14],17,-1502002290),s=o(s,n,u,r,e[t+15],22,1236535329),r=a(r,s,n,u,e[t+1],5,-165796510),u=a(u,r,s,n,e[t+6],9,-1069501632),n=a(n,u,r,s,e[t+11],14,643717713),s=a(s,n,u,r,e[t],20,-373897302),r=a(r,s,n,u,e[t+5],5,-701558691),u=a(u,r,s,n,e[t+10],9,38016083),n=a(n,u,r,s,e[t+15],14,-660478335),s=a(s,n,u,r,e[t+4],20,-405537848),r=a(r,s,n,u,e[t+9],5,568446438),u=a(u,r,s,n,e[t+14],9,-1019803690),n=a(n,u,r,s,e[t+3],14,-187363961),s=a(s,n,u,r,e[t+8],20,1163531501),r=a(r,s,n,u,e[t+13],5,-1444681467),u=a(u,r,s,n,e[t+2],9,-51403784),n=a(n,u,r,s,e[t+7],14,1735328473),s=a(s,n,u,r,e[t+12],20,-1926607734),r=l(r,s,n,u,e[t+5],4,-378558),u=l(u,r,s,n,e[t+8],11,-2022574463),n=l(n,u,r,s,e[t+11],16,1839030562),s=l(s,n,u,r,e[t+14],23,-35309556),r=l(r,s,n,u,e[t+1],4,-1530992060),u=l(u,r,s,n,e[t+4],11,1272893353),n=l(n,u,r,s,e[t+7],16,-155497632),s=l(s,n,u,r,e[t+10],23,-1094730640),r=l(r,s,n,u,e[t+13],4,681279174),u=l(u,r,s,n,e[t],11,-358537222),n=l(n,u,r,s,e[t+3],16,-722521979),s=l(s,n,u,r,e[t+6],23,76029189),r=l(r,s,n,u,e[t+9],4,-640364487),u=l(u,r,s,n,e[t+12],11,-421815835),n=l(n,u,r,s,e[t+15],16,530742520),s=l(s,n,u,r,e[t+2],23,-995338651),r=c(r,s,n,u,e[t],6,-198630844),u=c(u,r,s,n,e[t+7],10,1126891415),n=c(n,u,r,s,e[t+14],15,-1416354905),s=c(s,n,u,r,e[t+5],21,-57434055),r=c(r,s,n,u,e[t+12],6,1700485571),u=c(u,r,s,n,e[t+3],10,-1894986606),n=c(n,u,r,s,e[t+10],15,-1051523),s=c(s,n,u,r,e[t+1],21,-2054922799),r=c(r,s,n,u,e[t+8],6,1873313359),u=c(u,r,s,n,e[t+15],10,-30611744),n=c(n,u,r,s,e[t+6],15,-1560198380),s=c(s,n,u,r,e[t+13],21,1309151649),r=c(r,s,n,u,e[t+4],6,-145523070),u=c(u,r,s,n,e[t+11],10,-1120210379),n=c(n,u,r,s,e[t+2],15,718787259),s=c(s,n,u,r,e[t+9],21,-343485551),r=i(r,h),s=i(s,p),n=i(n,d),u=i(u,g)}return[r,s,n,u]}function h(e,t=s.Hex){const r=t||s.Base64,i=u(function(e){const t=[];for(let r=0,s=8*e.length;r<s;r+=8)t[r>>5]|=(255&e.charCodeAt(r/8))<<r%32;return t}(e),8*e.length);switch(r){case s.Raw:return i;case s.Hex:return function(e){const t="0123456789abcdef",r=[];for(let s=0,i=4*e.length;s<i;s++)r.push(t.charAt(e[s>>2]>>s%4*8+4&15)+t.charAt(e[s>>2]>>s%4*8&15));return r.join("")}(i);case s.String:return function(e){const t=[];for(let r=0,s=32*e.length;r<s;r+=8)t.push(String.fromCharCode(e[r>>5]>>>r%32&255));return t.join("")}(i);case s.Base64:return function(e){const t=[];for(let r=0,s=4*e.length;r<s;r+=3){const s=(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 i=0;i<4;i++)8*r+6*i>32*e.length?t.push("="):t.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(s>>6*(3-i)&63))}return t.join("")}(i)}}},83027(e,t,r){r.d(t,{h:()=>s});const s=r(29953).ho},85648(e,t,r){r.d(t,{n:()=>i});var s=r(84952);function i(e){return n[function(e){return"json"===e.type?"application/json":"blob"===e.type?e.blob.type:function(e){const t=(0,s.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},87024(e,t,r){r.d(t,{P:()=>d});var s=r(49186),i=r(80200),n=r(76553),o=r(84952),a=r(13069),l=r(96156),c=r(35666),u=r(10107),h=r(85648),p=r(97159);function d(e){const t=e?.origins??[void 0];return(r,s)=>{const i=function(e,t,r){if("resource"===e?.type)return function(e,t,r){const s=(0,l.z4)(t,r);return{type:String,read:(e,t,r)=>{const i=(0,p.r)(e,t,r);return s.type===String?i:"function"==typeof s.type?new s.type({url:i}):void 0},write:{isRequired:s.json?.write?.isRequired,writer(t,i,a,l){if(!l?.resources)return"string"==typeof t?void(i[a]=(0,p.t)(t,l)):void(i[a]=t.write({},l));const u=function(e){return null==e?null:"string"==typeof e?e:e.url}(t),d=(0,p.t)(u,{...l,verifyItemRelativeUrls:l?.verifyItemRelativeUrls?{writtenUrls:l.verifyItemRelativeUrls.writtenUrls,rootPath:void 0}:void 0},1),y=s.type!==String&&(!(0,n.H)(this)||l?.origin&&this.originIdOf(r)>(0,c.aB)(l.origin)),v={object:this,propertyName:r,value:t,targetUrl:d,dest:i,targetPropertyName:a,context:l,params:e};l?.portalItem&&d&&!(0,o.oP)(d)?y&&e?.contentAddressed?g(v):y?function(e){const{context:t,targetUrl:r,params:s,value:i,dest:n,targetPropertyName:a}=e;if(!t.portalItem)return;const l=t.portalItem.resourceFromPath(r),c=m(i,r,t),u=(0,h.n)(c),p=(0,o.Zo)(l.path),d=s?.compress??!1;u===p?(t.resources&&f({...e,resource:l,content:c,compress:d,updates:t.resources.toUpdate}),n[a]=r):g(e)}(v):function({context:e,targetUrl:t,dest:r,targetPropertyName:s}){e.portalItem&&e.resources&&(e.resources.toKeep.push({resource:e.portalItem.resourceFromPath(t),compress:!1}),r[s]=t)}(v):l?.portalItem&&(null==d||null!=(0,p.i)(d)||(0,o.w8)(d)||y)?g(v):i[a]=d}}}}(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,s);for(const e of t){const t=(0,u.rM)(r,e,s);for(const e in i)t[e]=i[e]}}}function g(e){const{targetUrl:t,params:r,value:n,context:l,dest:c,targetPropertyName:u}=e;if(!l.portalItem)return;const d=(0,p.p)(t),g=m(n,t,l);if(r?.contentAddressed&&"json"!==g.type)return void l.messages?.push(new s.A("persistable:contentAddressingUnsupported",`Property "${u}" is trying to serializing a resource with content of type ${g.type} with content addressing. Content addressing is only supported for json resources.`,{content:g}));const y=r?.contentAddressed&&"json"===g.type?(0,i.d)(g.jsonString):d?.filename??(0,a.lk)(),v=(0,o.fj)(r?.prefix??d?.prefix,y),w=`${v}.${(0,h.n)(g)}`;if(r?.contentAddressed&&l.resources&&"json"===g.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(c[u]=e.resource.itemRelativeUrl)}const S=l.portalItem.resourceFromPath(w);(0,o.w8)(t)&&l.resources&&l.resources.pendingOperations.push((0,o.tk)(t).then(e=>{S.path=`${v}.${(0,h.n)({type:"blob",blob:e})}`,c[u]=S.itemRelativeUrl}).catch(()=>{}));const _=r?.compress??!1;l.resources&&f({...e,resource:S,content:g,compress:_,updates:l.resources.toAdd}),c[u]=S.itemRelativeUrl}function f({object:e,propertyName:t,updates:r,resource:s,content:i,compress:n}){r.push({resource:s,content:i,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 m(e,t,r){return"string"==typeof e?{type:"url",url:t}:{type:"json",jsonString:JSON.stringify(e.toJSON(r))}}},98697(e,t,r){r.d(t,{Ir:()=>g,_b:()=>u,cm:()=>f,sQ:()=>h,ze:()=>m});var s=r(53966),i=r(15142),n=r(51850),o=r(35982),a=r(91218),l=r(16930),c=r(27993);class u{constructor(e,t,r,s,i,n){this.layout=e,this.interleavedVertexData=t,this.indices=r,this.hasColors=s,this.hasModifications=i,this.positionData=n}}class h{constructor(e,t,r,s,i,n,o){this.componentOffsets=e,this.featureIds=t,this.anchorIds=r,this.anchors=s,this.transformedGeometry=i,this.globalTrafo=n,this.obb=o}}o.B;const p=new i.A({deallocator:null}),d=(0,n.vt)();function g(e,t,r){p.clear();let i=1/0,n=1/0,o=-1/0,l=-1/0,u=!1;for(const e of t){const t="clip"===e.type?2:"mask"===e.type?1:0,h=e.geometry;let g=e=>e;if(h.spatialReference){if(!(0,a.canProjectWithoutEngine)(h.spatialReference,r)){s.A.getLogger("esri.views.3d.layers.SceneLayerWorkerHandle").warn("im-modification-projection-failed","Can't project modification polygon into layer spatial reference, ignoring modification",{polygon:h});continue}g=e=>((0,c.F)(e,h.spatialReference,d,r),d)}u=u||1===t;const f=h.rings.length,m=h.rings.some(e=>e.length<3);if(0===f||m)s.A.getLogger("esri.views.3d.layers.SceneLayerWorkerHandle").warn("im-modification-invalid-polygon","Ignoring invalid modification polygon (no rings or rings with less than 3 vertices).",{polygon:h});else{p.push(t),p.push(f);for(const e of h.rings){p.push(e.length);for(const t of e){const e=g(t);p.push(e[0]),p.push(e[1]),p.push(e[2]??0),i=Math.min(i,e[0]),n=Math.min(n,e[1]),o=Math.max(o,e[0]),l=Math.max(l,e[1])}}}}if(null!=e)if(u){const t=1e-4;p.push(2),p.push(2),p.push(4),p.push(i-t),p.push(n-t),p.push(0),p.push(o+t),p.push(n-t),p.push(0),p.push(o+t),p.push(l+t),p.push(0),p.push(i-t),p.push(l+t),p.push(0),p.push(4),p.push(e[0]),p.push(e[1]),p.push(0),p.push(e[2]),p.push(e[1]),p.push(0),p.push(e[2]),p.push(e[3]),p.push(0),p.push(e[0]),p.push(e[3]),p.push(0)}else p.push(1),p.push(1),p.push(4),p.push(e[0]),p.push(e[1]),p.push(0),p.push(e[2]),p.push(e[1]),p.push(0),p.push(e[2]),p.push(e[3]),p.push(0),p.push(e[0]),p.push(e[3]),p.push(0);p.push(3);const h=new Float64Array(p.length);for(let e=0;e<p.length;++e)h[e]=p.at(e);return h}function f(e,t){let r=0;for(const s of t){const t=s.geometry,i=t.rings.length,n=t.rings.some(e=>e.length<3);if(0!==i&&!n){r+=1,r+=1;for(let s=0;s<t.rings.length;++s){const i=t.rings[s];r+=1;for(let n=0;n<i.length;++n){const i=[e[r+0],e[r+1],e[r+2]];r+=3,t.setPoint(s,n,i)}}}}}function m(e,t){let r=0,s=t.geometry;const i=s.rings.length,n=s.rings.some(e=>e.length<3);if(0===i||n)return null;s=s.clone(),s.spatialReference=l.A.WGS84,r+=1,r+=1;for(let t=0;t<s.rings.length;++t){const i=s.rings[t];r+=1;for(let n=0;n<i.length;++n){const i=[e[r+0],e[r+1],e[r+2]];r+=3,s.setPoint(t,n,i)}}return s}}}]);