@arcgis/core 5.2.0-next.34 → 5.2.0-next.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/analysis/Viewshed.d.ts +0 -5
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{4316b78fc36bfd893a90.js → 155940ef3d1888272d73.js} +1 -1
- package/assets/esri/core/workers/chunks/24aa98cb2021ddd789ce.js +1 -0
- package/assets/esri/core/workers/chunks/406c7723e8db470822bf.js +1 -0
- package/assets/esri/core/workers/chunks/{37dc6a8495f1f44e2d45.js → 6c746ac4bd2e57b8cb41.js} +1 -1
- package/assets/esri/core/workers/chunks/8a9b2efa0603e9fa4e8b.js +1 -0
- package/assets/esri/core/workers/chunks/{fe8032905992e6574714.js → 9fb0431b0628dcb53004.js} +54 -54
- package/assets/esri/core/workers/chunks/{87c7092282214f5b78b8.js → bbcb213d20693fcad5be.js} +12 -12
- package/assets/esri/core/workers/chunks/{414691f7758c78e2a704.js → cfbbfa5edffa57bd3a8e.js} +1 -1
- package/assets/esri/core/workers/chunks/d0217187aed8bb7038f4.js +1 -0
- package/assets/esri/core/workers/chunks/{b7d7bfcb089a3f1a38b6.js → dd785e595cd08b2d6284.js} +1 -1
- package/assets/esri/core/workers/chunks/{0087ad36f7d38fc7fe11.js → ee446250a40e5d89bb5a.js} +44 -44
- package/assets/esri/core/workers/chunks/{42b1c526c4c9636a169d.js → f1f3fe9d2d96578f4f6b.js} +1 -1
- package/chunks/FocusAreaColor.glsl.js +1 -10
- package/chunks/RibbonLine.glsl.js +22 -22
- package/config.js +1 -1
- package/geometry/support/plane.js +1 -1
- package/geometry/support/triangle.js +1 -1
- package/kernel.js +1 -1
- package/layers/raster/datasets/pixelReader.js +1 -1
- package/layers/raster/functions/pixelUtils.js +1 -1
- package/package.json +1 -1
- package/popup/Features.d.ts +2 -2
- package/popup/Features.js +1 -1
- package/renderers/visualVariables/support/visualVariableUtils.js +1 -1
- package/support/revision.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedSubVisualization.js +1 -1
- package/views/3d/analysis/Viewshed/placementUtils.js +1 -1
- package/views/3d/analysis/Viewshed/types.d.ts +17 -0
- package/views/3d/analysis/ViewshedAnalysisView3D.d.ts +3 -14
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
- package/views/3d/analysis/VolumeMeasurementAnalysisView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
- package/views/3d/webgl/ManagedFBO.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaColor.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorTechnique.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaVisualization.js +1 -1
- package/views/3d/webgl-engine/lib/Intersector.js +1 -1
- package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBufferView.js +1 -1
- package/views/3d/webgl-engine/lib/intersectorUtils.js +1 -1
- package/views/3d/webgl-engine/lib/screenPolygonTriangleIntersections.js +1 -1
- package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineLayouts.js +1 -1
- package/views/layers/ViewshedLayerView.d.ts +0 -10
- package/views/support/LayerViewManager.js +1 -1
- package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
- package/assets/esri/core/workers/chunks/7a59d39010ed33b8fabb.js +0 -1
- package/assets/esri/core/workers/chunks/a0f7e37d385fc68b138d.js +0 -1
- package/assets/esri/core/workers/chunks/dfae4440afe0ca7c5b25.js +0 -1
- package/assets/esri/core/workers/chunks/fec9ce6ad634c904ffdf.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as t}from"tslib";import e from"../../../request.js";import a from"../../../core/Collection.js";import n from"../../../core/Error.js";import i from"../../../core/Logger.js";import{isAbortError as s}from"../../../core/promiseUtils.js";import r from"../../../core/ReactiveMap.js";import o from"../../../core/ReactiveSet.js";import{generateBracedUUID as d}from"../../../core/uuid.js";import{property as l,subclass as h}from"../../../core/accessorSupport/decorators.js";import{getEffectiveLayerCapabilities as c}from"../../../layers/support/layerUtils.js";import m from"../../../rest/query/support/AttachmentInfo.js";import{getAttachmentCategoryForFile as p}from"../../Attachments/support/attachmentUtils.js";import{getAttachmentKey as u,getAttachmentUrl as g,preserveAttachmentFilenameExtension as y,attachmentValidationUtils as f}from"../attachmentUtils.js";import _ from"./EditableInput.js";import A from"./SingleFeatureInputAdapter.js";let U=-1;const v=["maximum-audio-length","maximum-file-size","maximum-image-size","minimum-number-of-files","maximum-number-of-files","maximum-video-length"];let S=class extends _{constructor(t){super(t),this.attachments=[],this.displayCount=3,this.group=null,this.single=new A({input:this}),this.type="attachment",this._initialAttachments=[],this._stagedAdds=new a,this._stagedDeletes=new o,this._stagedUpdates=new r,this._failedStagedUpdateHydrations=new o,this._pendingStagedUpdateHydrations=new r,this._temporaryAttachmentUrls=new r,this._validationCriterionStates=new r,this._hasUnsupportedFileTypeValidationError=!1}get allowUserRename(){return this.template.allowUserRename}get addDisabled(){const t=this.maxAttachmentCount,e=this.effectiveAttachmentCount;return!this.editable||null!=t&&e>=t}get effectiveAttachmentCount(){return this._initialAttachments.length-this._stagedDeletes.size+this._stagedAdds.length}get accept(){const{categories:t}=this;if(!t.size)return;const e=[];return t.has("image")&&e.push("image/*"),t.has("audio")&&e.push("audio/*"),t.has("video")&&e.push("video/*"),t.has("document")&&e.push("text/*","application/*","model/*"),e.length>0?e.join(","):void 0}get categories(){const t=new Set;for(const e of this._nestableInputs)b(t,e.type);return t}get _nestableInputs(){const{input:t}=this;return null==t?[]:"attachment"===t.type?t.inputTypes??[]:[t]}get attachmentKeyword(){return this.template.attachmentKeyword?.trim()}get displayFilename(){return this.template.displayFilename}get allAttachmentsVisibleOnDefaultPage(){return this.defaultPageAttachments.length===this.attachments.length}get canUploadFiles(){const t=this._nestableInputs;return!t.length||t.some(x)}get hasCaptureInputs(){return this._nestableInputs.some(w)}get captureMediaType(){const t=new Set;for(const e of this._nestableInputs)if(w(e))switch(e.type){case"audio":t.add("audio");break;case"video":t.add("video");break;case"image":case"signature":t.add("image")}return 1===t.size?Array.from(t)[0]:null}get isCaptureOnly(){const t=this._nestableInputs;return!!t.length&&t.every(T)}get defaultPageAttachments(){return this.attachments.slice(0,this.displayCount)}get feature(){return this.single.feature}get hasAttachmentChanges(){return this._stagedAdds.length>0||this._stagedUpdates.size>0||this._stagedDeletes.size>0}get hasInvalidAttachmentName(){return!!this.allowUserRename&&this.attachments.some(t=>0===t.name.trim().length)}get attachmentCount(){return this.attachments.length}get hasMinimumAttachmentCountNotMet(){const t=this.minAttachmentCount;return null!=t&&(this.effectiveAttachmentCount<t&&!this.isCaptureOnly)}get hasReachedAttachmentLimit(){const t=this.maxAttachmentCount,e=this.effectiveAttachmentCount;return null!=t&&e===t}get hasExceededAttachmentLimit(){const t=this.maxAttachmentCount,e=this.effectiveAttachmentCount;return null!=t&&e>t}get hasPendingAttachmentUpdateData(){return this._pendingStagedUpdateHydrations.size>0}get input(){return this.template.input}get layer(){return this.single.layer}get maxAttachmentCount(){return this.template.maxAttachmentCount}get minAttachmentCount(){return this.template.minAttachmentCount}get supportsResize(){const{layer:t}=this;if(!t)return!1;const e=c(t);return!!e&&("attachment"in e&&!!e.attachment?.supportsResize)}get useOriginalFilename(){return this.template.useOriginalFilename}get valid(){return!(this._failedStagedUpdateHydrations.size>0||this.hasInvalidAttachmentName||this.hasExceededAttachmentLimit||this.hasMinimumAttachmentCountNotMet)}get _expressionLayer(){const t=this.layer;if(t)return"scene"===t.type&&"associatedLayer"in t&&null!=t.associatedLayer?t.associatedLayer:"feature"===t.type?t:void 0}destroy(){this._clearTemporaryAttachmentUrls()}applyFetchedAttachments(t){for(const e of t)this._normalizeAttachmentName(e);this._initialAttachments=t,this._failedStagedUpdateHydrations.clear(),this._recomputeAttachments()}applyStashedEdits(t){const{adds:e,deletes:a,updates:n}=t;for(const i of e){const t=this._getAttachmentKey(i.info);this._stagedAdds.add({data:i.data,globalId:i.globalId??d(),info:i.info,key:t}),this._setTemporaryAttachmentUrl(t,i.data)}for(const i of n){const t=this._getAttachmentKey(i.info);this._stagedUpdates.set(t,{contentType:i.contentType,data:i.data,info:i.info,key:t,name:i.name,size:F(i)}),this._setTemporaryAttachmentUrl(t,i.data)}for(const i of a){const t=this._getAttachmentKey(i.info);this._stagedDeletes.add(t)}this._recomputeAttachments()}clearAttachmentChanges(){this.clearValidationCriteriaState(),this._clearTemporaryAttachmentUrls(),this._stagedAdds.removeAll(),this._stagedUpdates.clear(),this._stagedDeletes.clear(),this._failedStagedUpdateHydrations.clear(),this._pendingStagedUpdateHydrations.clear(),this._recomputeAttachments()}clearValidationCriteriaState(){this._validationCriterionStates.clear(),this._hasUnsupportedFileTypeValidationError=!1}get hasInvalidValidationCriteria(){for(const t of this._validationCriterionStates.values())if("danger"===t)return!0;return!1}get hasUnsupportedFileTypeValidationError(){return this._hasUnsupportedFileTypeValidationError}get validationCriterionStates(){return this._validationCriterionStates}getValidationCriterionState(t){return this._validationCriterionStates.get(t)??null}stageAddAttachment(t){if(!this._assertEditable())throw new n("batch-attribute-form:not-editable","Cannot modify attachments when editableExpression is false.");const{contentType:e,data:a,name:i}=t,s=t.globalId??d(),r=a instanceof Blob?a.size:void 0,o=i.trim(),l=new m({contentType:e??void 0,globalId:s,id:U--,keywords:this.attachmentKeyword??void 0,name:o,size:r});return this._setTemporaryAttachmentUrl(s,a),this._stagedAdds.add({key:s,globalId:s,info:l,data:a}),this._recomputeAttachments(),l}async stageAddAttachments(t,e){if(this.clearValidationCriteriaState(),!this._assertEditable())return[];const a=t.filter(t=>this.isFileAllowed(t));if(this._setUnsupportedFileTypeValidationError(a.length!==t.length),0===a.length)return[];const n=[],i=new Map,s=Date.now(),r={},o=this.effectiveAttachmentCount,d=o+a.length;if(null!=this.minAttachmentCount&&this.minAttachmentCount>0&&this._setValidationCriterionState(r,"minimum-number-of-files",d>=this.minAttachmentCount?"success":"danger"),null!=this.maxAttachmentCount){const t=d<=this.maxAttachmentCount;if(this._setValidationCriterionState(r,"maximum-number-of-files",t?"success":"danger"),!t)return this._setValidationCriteriaState(r),[]}let l=!0;for(let h=0;h<a.length;h++){const t=a[h];await this._validateAttachmentFile(t,o+h+1,r)||(l=!1)}if(!l)return this._setValidationCriteriaState(r),[];for(let h=0;h<a.length;h++){const t=a[h],r=t instanceof File?t.name:`attachment-${s}_${h+1}`,o=await this._resolveAttachmentFilename(r,e),d=this._makeUniqueFilenameForOperation(i,o);n.push(this.stageAddAttachment({contentType:t.type,data:t,name:d}))}return this._setValidationCriteriaState(r),n}findAttachment(t){if(t)return this.attachments.find(e=>u(e)===t)}getAttachmentEditState(t){const e=this._getAttachmentKey(t),a=e?this._initialAttachments.find(t=>this._getAttachmentKey(t)===e):void 0,n=a?.name??null,i=e?this._stagedUpdates.get(e):void 0,s=i?.name??t.name??null;return{initialName:n,isDeleted:!!e&&this._stagedDeletes.has(e),isRenamed:null!=s&&null!=n&&s!==n,isReplaced:!0===i?.isReplacement}}getAttachmentPreviewUrl(t,e){const a=this._getAttachmentKey(t);return(a?this._temporaryAttachmentUrls.get(a):void 0)??g({attachment:t,supportsResizeAttachments:this.supportsResize,layer:this.layer,thumbnailSize:e})}async ensureStagedUpdateData(t){const e=this._getAttachmentKey(t);if(!e)return!1;const a=this._stagedUpdates.get(e);if(!a||a.data||this._stagedDeletes.has(e))return this._failedStagedUpdateHydrations.delete(e),!1;const n=this._pendingStagedUpdateHydrations.get(e);if(n)return await n;const i=this._hydrateStagedUpdateData(t);this._pendingStagedUpdateHydrations.set(e,i);try{return await i}finally{this._pendingStagedUpdateHydrations.get(e)===i&&this._pendingStagedUpdateHydrations.delete(e)}}async waitForPendingAttachmentUpdateData(){await Promise.allSettled(Array.from(this._pendingStagedUpdateHydrations.values()))}discardStagedEdits(t){if(!this._assertEditable())return;const e=this._getAttachmentKey(t);if(!e)return;const a=this._stagedAdds.findIndex(t=>t.key===e);if(a>-1)return this._clearTemporaryAttachmentUrl(e),this._stagedAdds.removeAt(a),this._failedStagedUpdateHydrations.delete(e),this._pendingStagedUpdateHydrations.delete(e),void this._recomputeAttachments();this._clearTemporaryAttachmentUrl(e),this._stagedDeletes.delete(e),this._clearStagedUpdateTracking(e),this._recomputeAttachments()}isFileAllowed(t){const{categories:e}=this;if(!e.size)return!0;const a=p(t);return null!=a&&e.has(a)}isStagedAttachmentAddition(t){return"number"==typeof t.id&&t.id<0}stageDeleteAttachment(t){if(!this._assertEditable())return;const e=this._getAttachmentKey(t);if(!e)return;const a=this._stagedAdds.findIndex(t=>t.key===e);if(a>-1)return this._clearTemporaryAttachmentUrl(e),this._stagedAdds.removeAt(a),this._failedStagedUpdateHydrations.delete(e),this._pendingStagedUpdateHydrations.delete(e),void this._recomputeAttachments();this._clearTemporaryAttachmentUrl(e),this._stagedDeletes.add(e),this._clearStagedUpdateTracking(e),this._recomputeAttachments()}stageRenameAttachment(t,e){if(!this._assertEditable())return;const a=this._getAttachmentKey(t);if(!a)return;const n=this._stagedAdds.find(t=>t.key===a);if(n){const a=y(t.name,e);return n.info.name=a,void this._recomputeAttachments()}const i=this._stagedUpdates.get(a),s=this._getInitialAttachment(a)?.name??null,r=0===t.name.trim().length?s??t.name:t.name,o=!0===i?.isReplacement&&null!=s&&e===s?s:y(r,e),d=null!=s&&o===s;if(d&&!0!==i?.isReplacement)return this._stagedUpdates.delete(a),this._failedStagedUpdateHydrations.delete(a),this._pendingStagedUpdateHydrations.delete(a),void this._recomputeAttachments();const l={key:a,...i,info:t};d?delete l.name:l.name=o,this._stagedUpdates.set(a,l),this._recomputeAttachments(),this.ensureStagedUpdateData(t)}async stageReplaceAttachment(t,e,a){if(this.clearValidationCriteriaState(),!this._assertEditable())return!1;if(!this.isFileAllowed(e))return this._setUnsupportedFileTypeValidationError(!0),!1;const n={},i=await this._validateAttachmentFile(e,void 0,n);if(this._setValidationCriteriaState(n),!i)return!1;const s=e instanceof File?e.name:t.name,r=await this._resolveAttachmentFilename(s,a);return this._stageReplaceAttachment(t,e,r),!0}toSubmitEdits(){const t=[],e=[],a=[],n=this.feature?.plainGraphic;if(!n||0===this._stagedAdds.length&&0===this._stagedUpdates.size&&0===this._stagedDeletes.size)return null;const i=this.attachmentKeyword;for(const s of this._stagedAdds)null!=s.data&&t.push({feature:n,contentType:s.info.contentType,data:s.data,info:s.info,globalId:s.info.globalId,keywords:i,name:s.info.name});for(const s of this._stagedUpdates.values()){const t=null==s.name||s.name.trim().length>0;if(null==s.data||!t)continue;const a=s.name??this._getInitialAttachment(s.key)?.name??s.info.name;e.push({feature:n,contentType:s.contentType,data:s.data,globalId:s.info.globalId,id:s.info.id,info:s.info,keywords:i,name:a})}for(const s of this._stagedDeletes.values()){const t=this._getInitialAttachment(s);t&&a.push({feature:n,contentType:t.contentType,globalId:t.globalId,id:t.id,info:t,keywords:i,name:t.name})}return 0===t.length&&0===e.length&&0===a.length?null:{label:this.template.label,keywords:i,adds:t,deletes:a,updates:e}}_assertEditable(){return!!this.editable||(i.getLogger(this).error("batch-attribute-form:not-editable","Cannot modify attachments when editableExpression is false."),!1)}_recomputeAttachments(){const t=[];for(const e of this._stagedAdds)t.push(e.info);for(const e of this._initialAttachments){const a=this._getAttachmentKey(e);if(a&&this._stagedUpdates.has(a)){const n=this._stagedUpdates.get(a),i=e.clone();null!=n.name&&(i.name=n.name),null!=n.contentType&&(i.contentType=n.contentType),null!=n.size&&(i.size=n.size),t.push(i);continue}t.push(e)}this.attachments=t}async _computeAttachmentFilename(t,e){const a=this.template.filenameExpressionExecutor;if(!a)return t;const n=this.single.feature,r=n?.plainGraphic,o=this._expressionLayer,{attachmentKeyword:d,description:l,label:h}=this.template,c={$originalfeature:n?.original,$editcontext:{editType:e.editType},$layer:o,$featureset:o,$datastore:o?.url,$feature:r,$map:e.map,$formElement:{attachmentKeyword:d,description:l,label:h}},m={rawOutput:!0,spatialReference:e.spatialReference,timeZone:e.timeZone};try{const e=a.isAsync?await a.executeAsync(c,m):a.execute(c,m);if("string"==typeof e&&e.trim().length>0){const{extension:a}=I(t);return z(e.trim(),a)}}catch(p){s(p)||i.getLogger(this).error("Failed evaluating attachment filename expression",p)}return t}async _resolveAttachmentFilename(t,e){return!1===this.useOriginalFilename?await this._computeAttachmentFilename(t,e):t}_makeUniqueFilenameForOperation(t,e){const a=e.toLowerCase(),n=t.get(a)??0;if(t.set(a,n+1),0===n)return e;const{base:i,extension:s}=I(e);return z(`${i}_${n}`,s)}_setValidationCriteriaState(t){this._validationCriterionStates.clear();for(const e of v){const a=t[e];a&&this._validationCriterionStates.set(e,a)}}_setUnsupportedFileTypeValidationError(t){this._hasUnsupportedFileTypeValidationError!==t&&(this._hasUnsupportedFileTypeValidationError=t)}_setValidationCriterionState(t,e,a){"danger"!==t[e]&&(t[e]=a)}async _validateAttachmentFile(t,e,a){let n=!0;const i=p(t);for(const s of this._nestableInputs){const e=f.getAttachmentCategoryForInputType(s.type);if(null==i||e===i){if("document"===s.type&&null!=s.maxFileSize){const e=t.size<=1048576*s.maxFileSize;this._setValidationCriterionState(a,"maximum-file-size",e?"success":"danger"),n=n&&e}if(("audio"===s.type||"video"===s.type)&&null!=s.maxDuration){const e=await f.getMediaDurationInSeconds(t,s.type),i=null!=e&&e<=s.maxDuration;this._setValidationCriterionState(a,"audio"===s.type?"maximum-audio-length":"maximum-video-length",i?"success":"danger"),n=n&&i}if("image"===s.type&&null!=s.maxImageSize){const e=await f.getImageDimensionsInPixels(t),i=e?Math.max(e.width,e.height):null,r=null==i||i<=s.maxImageSize;this._setValidationCriterionState(a,"maximum-image-size",r?"success":"danger"),n=n&&r}}}if(null!=e&&null!=this.maxAttachmentCount){const t=e<=this.maxAttachmentCount;this._setValidationCriterionState(a,"maximum-number-of-files",t?"success":"danger"),n=n&&t}return n}_stageReplaceAttachment(t,e,a){const n=this._getAttachmentKey(t);if(!n)return;const i=this._stagedAdds.find(t=>t.key===n);if(i)return i.data=e,i.info.name=a,i.info.contentType=e.type,i.info.size=e.size,this._setTemporaryAttachmentUrl(n,e),void this._recomputeAttachments();const s=this._stagedUpdates.get(n);this._setTemporaryAttachmentUrl(n,e),this._failedStagedUpdateHydrations.delete(n),this._pendingStagedUpdateHydrations.delete(n),this._stagedUpdates.set(n,{...s,key:n,info:t,isReplacement:!0,contentType:e.type||s?.contentType||t.contentType,data:e,name:a,size:e.size}),this._recomputeAttachments()}_getInitialAttachment(t){return this._initialAttachments.find(e=>this._getAttachmentKey(e)===t)}_normalizeAttachmentName(t){const{name:e}=t;"string"==typeof e&&(t.name=e.trim())}_getAttachmentKey(t){return u(t)}_clearStagedUpdateTracking(t){this._stagedUpdates.delete(t),this._failedStagedUpdateHydrations.delete(t),this._pendingStagedUpdateHydrations.delete(t)}async _hydrateStagedUpdateData(t){const a=this._getAttachmentKey(t),n=t.url;if(!a||!n)return!1;try{const{data:i}=await e(n,{responseType:"blob"});this._failedStagedUpdateHydrations.delete(a);const s=this._stagedUpdates.get(a);return!(!s||s.data||this._stagedDeletes.has(a))&&(this._stagedUpdates.set(a,{...s,info:t,isReplacement:s.isReplacement??!1,contentType:s.contentType??t.contentType??i.type,data:i}),!0)}catch(r){const t=this._stagedUpdates.get(a);return!t||t.data||this._stagedDeletes.has(a)||this._failedStagedUpdateHydrations.add(a),s(r)||i.getLogger(this).error("Failed to fetch attachment data for staged update",r),!1}}_setTemporaryAttachmentUrl(t,e){if(this._clearTemporaryAttachmentUrl(t),!(e instanceof Blob))return;const a=URL.createObjectURL(e);return this._temporaryAttachmentUrls.set(t,a),a}_clearTemporaryAttachmentUrl(t){const e=this._temporaryAttachmentUrls.get(t);e&&(URL.revokeObjectURL(e),this._temporaryAttachmentUrls.delete(t))}_clearTemporaryAttachmentUrls(){for(const t of this._temporaryAttachmentUrls.values())URL.revokeObjectURL(t);this._temporaryAttachmentUrls.clear()}};t([l()],S.prototype,"allowUserRename",null),t([l()],S.prototype,"addDisabled",null),t([l()],S.prototype,"effectiveAttachmentCount",null),t([l()],S.prototype,"accept",null),t([l()],S.prototype,"categories",null),t([l()],S.prototype,"attachmentKeyword",null),t([l()],S.prototype,"attachments",void 0),t([l()],S.prototype,"displayFilename",null),t([l({readOnly:!0})],S.prototype,"allAttachmentsVisibleOnDefaultPage",null),t([l()],S.prototype,"canUploadFiles",null),t([l()],S.prototype,"hasCaptureInputs",null),t([l()],S.prototype,"captureMediaType",null),t([l()],S.prototype,"isCaptureOnly",null),t([l({readOnly:!0})],S.prototype,"defaultPageAttachments",null),t([l()],S.prototype,"displayCount",void 0),t([l()],S.prototype,"feature",null),t([l()],S.prototype,"group",void 0),t([l()],S.prototype,"hasAttachmentChanges",null),t([l()],S.prototype,"hasInvalidAttachmentName",null),t([l()],S.prototype,"attachmentCount",null),t([l()],S.prototype,"hasMinimumAttachmentCountNotMet",null),t([l()],S.prototype,"hasReachedAttachmentLimit",null),t([l()],S.prototype,"hasExceededAttachmentLimit",null),t([l({readOnly:!0})],S.prototype,"hasPendingAttachmentUpdateData",null),t([l()],S.prototype,"input",null),t([l()],S.prototype,"layer",null),t([l()],S.prototype,"maxAttachmentCount",null),t([l()],S.prototype,"minAttachmentCount",null),t([l({readOnly:!0})],S.prototype,"single",void 0),t([l({readOnly:!0})],S.prototype,"type",void 0),t([l({readOnly:!0})],S.prototype,"supportsResize",null),t([l()],S.prototype,"useOriginalFilename",null),t([l({readOnly:!0})],S.prototype,"valid",null),t([l()],S.prototype,"_initialAttachments",void 0),t([l()],S.prototype,"_expressionLayer",null),t([l()],S.prototype,"_stagedAdds",void 0),t([l()],S.prototype,"_stagedDeletes",void 0),t([l()],S.prototype,"_stagedUpdates",void 0),t([l()],S.prototype,"_failedStagedUpdateHydrations",void 0),t([l()],S.prototype,"_pendingStagedUpdateHydrations",void 0),t([l()],S.prototype,"_temporaryAttachmentUrls",void 0),t([l()],S.prototype,"_hasUnsupportedFileTypeValidationError",void 0),t([l()],S.prototype,"hasInvalidValidationCriteria",null),t([l()],S.prototype,"hasUnsupportedFileTypeValidationError",null),t([l()],S.prototype,"validationCriterionStates",null),S=t([h("esri.widgets.BatchAttributeForm.inputs.AttachmentElementInput")],S);const C=S;function b(t,e){switch(e){case"audio":t.add("audio");break;case"document":t.add("document");break;case"image":case"signature":t.add("image");break;case"video":t.add("video")}}function T(t){return"document"!==t.type&&"capture"===t.inputMethod}function w(t){return T(t)}function x(t){return"document"===t.type||"capture"!==t.inputMethod}function F(t){return t.data&&"string"!=typeof t.data?t.data.size:t.info.size}function I(t){const e=t.lastIndexOf(".");return-1===e?{base:t,extension:null}:{base:t.slice(0,e),extension:t.slice(e+1)}}function z(t,e){return e?`${t}.${e}`:t}export{C as default};
|
|
2
|
+
import{__decorate as t}from"tslib";import e from"../../../request.js";import a from"../../../core/Collection.js";import n from"../../../core/Error.js";import i from"../../../core/Logger.js";import{isAbortError as s}from"../../../core/promiseUtils.js";import r from"../../../core/ReactiveMap.js";import o from"../../../core/ReactiveSet.js";import{generateBracedUUID as d}from"../../../core/uuid.js";import{property as l,subclass as h}from"../../../core/accessorSupport/decorators.js";import{getEffectiveLayerCapabilities as c}from"../../../layers/support/layerUtils.js";import m from"../../../rest/query/support/AttachmentInfo.js";import{getAttachmentCategoryForFile as p}from"../../Attachments/support/attachmentUtils.js";import{getAttachmentKey as u,getAttachmentUrl as g,preserveAttachmentFilenameExtension as y,attachmentValidationUtils as f}from"../attachmentUtils.js";import _ from"./EditableInput.js";import A from"./SingleFeatureInputAdapter.js";let U=-1;const v=["maximum-audio-length","maximum-file-size","maximum-image-size","minimum-number-of-files","maximum-number-of-files","maximum-video-length"];let S=class extends _{constructor(t){super(t),this.attachments=[],this.displayCount=3,this.group=null,this.single=new A({input:this}),this.type="attachment",this._initialAttachments=[],this._stagedAdds=new a,this._stagedDeletes=new o,this._stagedUpdates=new r,this._failedStagedUpdateHydrations=new o,this._pendingStagedUpdateHydrations=new r,this._temporaryAttachmentUrls=new r,this._validationCriterionStates=new r,this._hasUnsupportedFileTypeValidationError=!1}get allowUserRename(){return this.template.allowUserRename}get addDisabled(){const t=this.maxAttachmentCount,e=this.effectiveAttachmentCount;return!this.editable||null!=t&&e>=t}get effectiveAttachmentCount(){return this._initialAttachments.length-this._stagedDeletes.size+this._stagedAdds.length}get accept(){const{categories:t}=this;if(!t.size)return;const e=[];return t.has("image")&&e.push("image/*"),t.has("audio")&&e.push("audio/*"),t.has("video")&&e.push("video/*"),t.has("document")&&e.push("text/*","application/*","model/*"),e.length>0?e.join(","):void 0}get categories(){const t=new Set;for(const e of this._nestableInputs)b(t,e.type);return t}get _nestableInputs(){const{input:t}=this;return null==t?[]:"attachment"===t.type?t.inputTypes??[]:[t]}get attachmentKeyword(){return this.template.attachmentKeyword?.trim()}get displayFilename(){return this.template.displayFilename}get allAttachmentsVisibleOnDefaultPage(){return this.defaultPageAttachments.length===this.attachments.length}get canUploadFiles(){const t=this._nestableInputs;return!t.length||t.some(x)}get hasCaptureInputs(){return this._nestableInputs.some(w)}get captureMediaType(){const t=new Set;for(const e of this._nestableInputs)if(w(e))switch(e.type){case"audio":t.add("audio");break;case"video":t.add("video");break;case"image":case"signature":t.add("image")}return 1===t.size?Array.from(t)[0]:null}get isCaptureOnly(){const t=this._nestableInputs;return!!t.length&&t.every(T)}get defaultPageAttachments(){return this.attachments.slice(0,this.displayCount)}get feature(){return this.single.feature}get hasAttachmentChanges(){return this._stagedAdds.length>0||this._stagedUpdates.size>0||this._stagedDeletes.size>0}get hasInvalidAttachmentName(){return!!this.allowUserRename&&this.attachments.some(t=>0===t.name.trim().length)}get attachmentCount(){return this.attachments.length}get hasMinimumAttachmentCountNotMet(){const t=this.minAttachmentCount;return null!=t&&(this.effectiveAttachmentCount<t&&!this.isCaptureOnly)}get hasReachedAttachmentLimit(){const t=this.maxAttachmentCount,e=this.effectiveAttachmentCount;return null!=t&&e===t}get hasExceededAttachmentLimit(){const t=this.maxAttachmentCount,e=this.effectiveAttachmentCount;return null!=t&&e>t}get hasPendingAttachmentUpdateData(){return this._pendingStagedUpdateHydrations.size>0}get input(){return this.template.input}get layer(){return this.single.layer}get maxAttachmentCount(){return this.template.maxAttachmentCount}get minAttachmentCount(){return this.template.minAttachmentCount}get supportsResize(){const{layer:t}=this;if(!t)return!1;const e=c(t);return!!e&&("attachment"in e&&!!e.attachment?.supportsResize)}get useOriginalFilename(){return this.template.useOriginalFilename}get valid(){return!(this._failedStagedUpdateHydrations.size>0||this.hasInvalidAttachmentName||this.hasExceededAttachmentLimit||this.hasMinimumAttachmentCountNotMet)}get _expressionLayer(){const t=this.layer;if(t)return"scene"===t.type&&"associatedLayer"in t&&null!=t.associatedLayer?t.associatedLayer:"feature"===t.type?t:void 0}destroy(){this._clearTemporaryAttachmentUrls()}applyFetchedAttachments(t){for(const e of t)this._normalizeAttachmentName(e);this._initialAttachments=t,this._failedStagedUpdateHydrations.clear(),this._recomputeAttachments()}applyStashedEdits(t){const{adds:e,deletes:a,updates:n}=t;for(const i of e){const t=this._getAttachmentKey(i.info);this._stagedAdds.add({data:i.data,globalId:i.globalId??d(),info:i.info,key:t}),this._setTemporaryAttachmentUrl(t,i.data)}for(const i of n){const t=this._getAttachmentKey(i.info);this._stagedUpdates.set(t,{contentType:i.contentType,data:i.data,info:i.info,key:t,name:i.name,size:F(i)}),this._setTemporaryAttachmentUrl(t,i.data)}for(const i of a){const t=this._getAttachmentKey(i.info);this._stagedDeletes.add(t)}this._recomputeAttachments()}clearAttachmentChanges(){this.clearValidationCriteriaState(),this._clearTemporaryAttachmentUrls(),this._stagedAdds.removeAll(),this._stagedUpdates.clear(),this._stagedDeletes.clear(),this._failedStagedUpdateHydrations.clear(),this._pendingStagedUpdateHydrations.clear(),this._recomputeAttachments()}clearValidationCriteriaState(){this._validationCriterionStates.clear(),this._hasUnsupportedFileTypeValidationError=!1}get hasInvalidValidationCriteria(){for(const t of this._validationCriterionStates.values())if("danger"===t)return!0;return!1}get hasUnsupportedFileTypeValidationError(){return this._hasUnsupportedFileTypeValidationError}get validationCriterionStates(){return this._validationCriterionStates}getValidationCriterionState(t){return this._validationCriterionStates.get(t)??null}stageAddAttachment(t){if(!this._assertEditable())throw new n("batch-attribute-form:not-editable","Cannot modify attachments when editableExpression is false.");const{contentType:e,data:a,name:i}=t,s=t.globalId??d(),r=a instanceof Blob?a.size:void 0,o=i.trim(),l=new m({contentType:e??void 0,globalId:s,id:U--,keywords:this.attachmentKeyword??void 0,name:o,size:r});return this._setTemporaryAttachmentUrl(s,a),this._stagedAdds.add({key:s,globalId:s,info:l,data:a}),this._recomputeAttachments(),l}async stageAddAttachments(t,e){if(this.clearValidationCriteriaState(),!this._assertEditable())return[];const a=t.filter(t=>this.isFileAllowed(t));if(this._setUnsupportedFileTypeValidationError(a.length!==t.length),0===a.length)return[];const n=[],i=new Map,s=Date.now(),r={},o=this.effectiveAttachmentCount,d=o+a.length;if(null!=this.minAttachmentCount&&this.minAttachmentCount>0&&this._setValidationCriterionState(r,"minimum-number-of-files",d>=this.minAttachmentCount?"success":"danger"),null!=this.maxAttachmentCount){const t=d<=this.maxAttachmentCount;if(this._setValidationCriterionState(r,"maximum-number-of-files",t?"success":"danger"),!t)return this._setValidationCriteriaState(r),[]}let l=!0;for(let h=0;h<a.length;h++){const t=a[h];await this._validateAttachmentFile(t,o+h+1,r)||(l=!1)}if(!l)return this._setValidationCriteriaState(r),[];for(let h=0;h<a.length;h++){const t=a[h],r=t instanceof File?t.name:`attachment-${s}_${h+1}`,o=await this._resolveAttachmentFilename(r,e),d=this._makeUniqueFilenameForOperation(i,o);n.push(this.stageAddAttachment({contentType:t.type,data:t,name:d}))}return this._setValidationCriteriaState(r),n}findAttachment(t){if(t)return this.attachments.find(e=>u(e)===t)}getAttachmentEditState(t){const e=this._getAttachmentKey(t),a=e?this._initialAttachments.find(t=>this._getAttachmentKey(t)===e):void 0,n=a?.name??null,i=e?this._stagedUpdates.get(e):void 0,s=i?.name??t.name??null;return{initialName:n,isDeleted:!!e&&this._stagedDeletes.has(e),isRenamed:null!=s&&null!=n&&s!==n,isReplaced:!0===i?.isReplacement}}getAttachmentPreviewUrl(t,e){const a=this._getAttachmentKey(t);return(a?this._temporaryAttachmentUrls.get(a):void 0)??g({attachment:t,supportsResizeAttachments:this.supportsResize,layer:this.layer,thumbnailSize:e})}async ensureStagedUpdateData(t){const e=this._getAttachmentKey(t);if(!e)return!1;const a=this._stagedUpdates.get(e);if(!a||a.data||this._stagedDeletes.has(e))return this._failedStagedUpdateHydrations.delete(e),!1;const n=this._pendingStagedUpdateHydrations.get(e);if(n)return await n;const i=this._hydrateStagedUpdateData(t);this._pendingStagedUpdateHydrations.set(e,i);try{return await i}finally{this._pendingStagedUpdateHydrations.get(e)===i&&this._pendingStagedUpdateHydrations.delete(e)}}async waitForPendingAttachmentUpdateData(){await Promise.allSettled(Array.from(this._pendingStagedUpdateHydrations.values()))}discardStagedEdits(t){if(!this._assertEditable())return;const e=this._getAttachmentKey(t);if(!e)return;const a=this._stagedAdds.findIndex(t=>t.key===e);if(a>-1)return this._clearTemporaryAttachmentUrl(e),this._stagedAdds.removeAt(a),this._failedStagedUpdateHydrations.delete(e),this._pendingStagedUpdateHydrations.delete(e),void this._recomputeAttachments();this._clearTemporaryAttachmentUrl(e),this._stagedDeletes.delete(e),this._clearStagedUpdateTracking(e),this._recomputeAttachments()}isFileAllowed(t){const{categories:e}=this;if(!e.size)return!0;const a=p(t);return null!=a&&e.has(a)}isStagedAttachmentAddition(t){return"number"==typeof t.id&&t.id<0}stageDeleteAttachment(t){if(!this._assertEditable())return;const e=this._getAttachmentKey(t);if(!e)return;const a=this._stagedAdds.findIndex(t=>t.key===e);if(a>-1)return this._clearTemporaryAttachmentUrl(e),this._stagedAdds.removeAt(a),this._failedStagedUpdateHydrations.delete(e),this._pendingStagedUpdateHydrations.delete(e),void this._recomputeAttachments();this._clearTemporaryAttachmentUrl(e),this._stagedDeletes.add(e),this._clearStagedUpdateTracking(e),this._recomputeAttachments()}stageRenameAttachment(t,e){if(!this._assertEditable())return;const a=this._getAttachmentKey(t);if(!a)return;const n=this._stagedAdds.find(t=>t.key===a);if(n){const a=y(t.name,e);return n.info.name=a,void this._recomputeAttachments()}const i=this._stagedUpdates.get(a),s=this._getInitialAttachment(a)?.name??null,r=0===t.name.trim().length?s??t.name:t.name,o=y(r,!0===i?.isReplacement&&null!=s&&e===s?I(s).base:e),d=null!=s&&o===s;if(d&&!0!==i?.isReplacement)return this._stagedUpdates.delete(a),this._failedStagedUpdateHydrations.delete(a),this._pendingStagedUpdateHydrations.delete(a),void this._recomputeAttachments();const l={key:a,...i,info:t};d?delete l.name:l.name=o,this._stagedUpdates.set(a,l),this._recomputeAttachments(),this.ensureStagedUpdateData(t)}async stageReplaceAttachment(t,e,a){if(this.clearValidationCriteriaState(),!this._assertEditable())return!1;if(!this.isFileAllowed(e))return this._setUnsupportedFileTypeValidationError(!0),!1;const n={},i=await this._validateAttachmentFile(e,void 0,n);if(this._setValidationCriteriaState(n),!i)return!1;const s=e instanceof File?e.name:t.name,r=await this._resolveAttachmentFilename(s,a);return this._stageReplaceAttachment(t,e,r),!0}toSubmitEdits(){const t=[],e=[],a=[],n=this.feature?.plainGraphic;if(!n||0===this._stagedAdds.length&&0===this._stagedUpdates.size&&0===this._stagedDeletes.size)return null;const i=this.attachmentKeyword;for(const s of this._stagedAdds)null!=s.data&&t.push({feature:n,contentType:s.info.contentType,data:s.data,info:s.info,globalId:s.info.globalId,keywords:i,name:s.info.name});for(const s of this._stagedUpdates.values()){const t=null==s.name||s.name.trim().length>0;if(null==s.data||!t)continue;const a=s.name??this._getInitialAttachment(s.key)?.name??s.info.name;e.push({feature:n,contentType:s.contentType,data:s.data,globalId:s.info.globalId,id:s.info.id,info:s.info,keywords:i,name:a})}for(const s of this._stagedDeletes.values()){const t=this._getInitialAttachment(s);t&&a.push({feature:n,contentType:t.contentType,globalId:t.globalId,id:t.id,info:t,keywords:i,name:t.name})}return 0===t.length&&0===e.length&&0===a.length?null:{label:this.template.label,keywords:i,adds:t,deletes:a,updates:e}}_assertEditable(){return!!this.editable||(i.getLogger(this).error("batch-attribute-form:not-editable","Cannot modify attachments when editableExpression is false."),!1)}_recomputeAttachments(){const t=[];for(const e of this._stagedAdds)t.push(e.info);for(const e of this._initialAttachments){const a=this._getAttachmentKey(e);if(a&&this._stagedUpdates.has(a)){const n=this._stagedUpdates.get(a),i=e.clone();null!=n.name&&(i.name=n.name),null!=n.contentType&&(i.contentType=n.contentType),null!=n.size&&(i.size=n.size),t.push(i);continue}t.push(e)}this.attachments=t}async _computeAttachmentFilename(t,e){const a=this.template.filenameExpressionExecutor;if(!a)return t;const n=this.single.feature,r=n?.plainGraphic,o=this._expressionLayer,{attachmentKeyword:d,description:l,label:h}=this.template,c={$originalfeature:n?.original,$editcontext:{editType:e.editType},$layer:o,$featureset:o,$datastore:o?.url,$feature:r,$map:e.map,$formElement:{attachmentKeyword:d,description:l,label:h}},m={rawOutput:!0,spatialReference:e.spatialReference,timeZone:e.timeZone};try{const e=a.isAsync?await a.executeAsync(c,m):a.execute(c,m);if("string"==typeof e&&e.trim().length>0){const{extension:a}=I(t);return z(e.trim(),a)}}catch(p){s(p)||i.getLogger(this).error("Failed evaluating attachment filename expression",p)}return t}async _resolveAttachmentFilename(t,e){return!1===this.useOriginalFilename?await this._computeAttachmentFilename(t,e):t}_makeUniqueFilenameForOperation(t,e){const a=e.toLowerCase(),n=t.get(a)??0;if(t.set(a,n+1),0===n)return e;const{base:i,extension:s}=I(e);return z(`${i}_${n}`,s)}_setValidationCriteriaState(t){this._validationCriterionStates.clear();for(const e of v){const a=t[e];a&&this._validationCriterionStates.set(e,a)}}_setUnsupportedFileTypeValidationError(t){this._hasUnsupportedFileTypeValidationError!==t&&(this._hasUnsupportedFileTypeValidationError=t)}_setValidationCriterionState(t,e,a){"danger"!==t[e]&&(t[e]=a)}async _validateAttachmentFile(t,e,a){let n=!0;const i=p(t);for(const s of this._nestableInputs){const e=f.getAttachmentCategoryForInputType(s.type);if(null==i||e===i){if("document"===s.type&&null!=s.maxFileSize){const e=t.size<=1048576*s.maxFileSize;this._setValidationCriterionState(a,"maximum-file-size",e?"success":"danger"),n=n&&e}if(("audio"===s.type||"video"===s.type)&&null!=s.maxDuration){const e=await f.getMediaDurationInSeconds(t,s.type),i=null!=e&&e<=s.maxDuration;this._setValidationCriterionState(a,"audio"===s.type?"maximum-audio-length":"maximum-video-length",i?"success":"danger"),n=n&&i}if("image"===s.type&&null!=s.maxImageSize){const e=await f.getImageDimensionsInPixels(t),i=e?Math.max(e.width,e.height):null,r=null==i||i<=s.maxImageSize;this._setValidationCriterionState(a,"maximum-image-size",r?"success":"danger"),n=n&&r}}}if(null!=e&&null!=this.maxAttachmentCount){const t=e<=this.maxAttachmentCount;this._setValidationCriterionState(a,"maximum-number-of-files",t?"success":"danger"),n=n&&t}return n}_stageReplaceAttachment(t,e,a){const n=this._getAttachmentKey(t);if(!n)return;const i=this._stagedAdds.find(t=>t.key===n);if(i)return i.data=e,i.info.name=a,i.info.contentType=e.type,i.info.size=e.size,this._setTemporaryAttachmentUrl(n,e),void this._recomputeAttachments();const s=this._stagedUpdates.get(n);this._setTemporaryAttachmentUrl(n,e),this._failedStagedUpdateHydrations.delete(n),this._pendingStagedUpdateHydrations.delete(n),this._stagedUpdates.set(n,{...s,key:n,info:t,isReplacement:!0,contentType:e.type||s?.contentType||t.contentType,data:e,name:a,size:e.size}),this._recomputeAttachments()}_getInitialAttachment(t){return this._initialAttachments.find(e=>this._getAttachmentKey(e)===t)}_normalizeAttachmentName(t){const{name:e}=t;"string"==typeof e&&(t.name=e.trim())}_getAttachmentKey(t){return u(t)}_clearStagedUpdateTracking(t){this._stagedUpdates.delete(t),this._failedStagedUpdateHydrations.delete(t),this._pendingStagedUpdateHydrations.delete(t)}async _hydrateStagedUpdateData(t){const a=this._getAttachmentKey(t),n=t.url;if(!a||!n)return!1;try{const{data:i}=await e(n,{responseType:"blob"});this._failedStagedUpdateHydrations.delete(a);const s=this._stagedUpdates.get(a);return!(!s||s.data||this._stagedDeletes.has(a))&&(this._stagedUpdates.set(a,{...s,info:t,isReplacement:s.isReplacement??!1,contentType:s.contentType??t.contentType??i.type,data:i}),!0)}catch(r){const t=this._stagedUpdates.get(a);return!t||t.data||this._stagedDeletes.has(a)||this._failedStagedUpdateHydrations.add(a),s(r)||i.getLogger(this).error("Failed to fetch attachment data for staged update",r),!1}}_setTemporaryAttachmentUrl(t,e){if(this._clearTemporaryAttachmentUrl(t),!(e instanceof Blob))return;const a=URL.createObjectURL(e);return this._temporaryAttachmentUrls.set(t,a),a}_clearTemporaryAttachmentUrl(t){const e=this._temporaryAttachmentUrls.get(t);e&&(URL.revokeObjectURL(e),this._temporaryAttachmentUrls.delete(t))}_clearTemporaryAttachmentUrls(){for(const t of this._temporaryAttachmentUrls.values())URL.revokeObjectURL(t);this._temporaryAttachmentUrls.clear()}};t([l()],S.prototype,"allowUserRename",null),t([l()],S.prototype,"addDisabled",null),t([l()],S.prototype,"effectiveAttachmentCount",null),t([l()],S.prototype,"accept",null),t([l()],S.prototype,"categories",null),t([l()],S.prototype,"attachmentKeyword",null),t([l()],S.prototype,"attachments",void 0),t([l()],S.prototype,"displayFilename",null),t([l({readOnly:!0})],S.prototype,"allAttachmentsVisibleOnDefaultPage",null),t([l()],S.prototype,"canUploadFiles",null),t([l()],S.prototype,"hasCaptureInputs",null),t([l()],S.prototype,"captureMediaType",null),t([l()],S.prototype,"isCaptureOnly",null),t([l({readOnly:!0})],S.prototype,"defaultPageAttachments",null),t([l()],S.prototype,"displayCount",void 0),t([l()],S.prototype,"feature",null),t([l()],S.prototype,"group",void 0),t([l()],S.prototype,"hasAttachmentChanges",null),t([l()],S.prototype,"hasInvalidAttachmentName",null),t([l()],S.prototype,"attachmentCount",null),t([l()],S.prototype,"hasMinimumAttachmentCountNotMet",null),t([l()],S.prototype,"hasReachedAttachmentLimit",null),t([l()],S.prototype,"hasExceededAttachmentLimit",null),t([l({readOnly:!0})],S.prototype,"hasPendingAttachmentUpdateData",null),t([l()],S.prototype,"input",null),t([l()],S.prototype,"layer",null),t([l()],S.prototype,"maxAttachmentCount",null),t([l()],S.prototype,"minAttachmentCount",null),t([l({readOnly:!0})],S.prototype,"single",void 0),t([l({readOnly:!0})],S.prototype,"type",void 0),t([l({readOnly:!0})],S.prototype,"supportsResize",null),t([l()],S.prototype,"useOriginalFilename",null),t([l({readOnly:!0})],S.prototype,"valid",null),t([l()],S.prototype,"_initialAttachments",void 0),t([l()],S.prototype,"_expressionLayer",null),t([l()],S.prototype,"_stagedAdds",void 0),t([l()],S.prototype,"_stagedDeletes",void 0),t([l()],S.prototype,"_stagedUpdates",void 0),t([l()],S.prototype,"_failedStagedUpdateHydrations",void 0),t([l()],S.prototype,"_pendingStagedUpdateHydrations",void 0),t([l()],S.prototype,"_temporaryAttachmentUrls",void 0),t([l()],S.prototype,"_hasUnsupportedFileTypeValidationError",void 0),t([l()],S.prototype,"hasInvalidValidationCriteria",null),t([l()],S.prototype,"hasUnsupportedFileTypeValidationError",null),t([l()],S.prototype,"validationCriterionStates",null),S=t([h("esri.widgets.BatchAttributeForm.inputs.AttachmentElementInput")],S);const C=S;function b(t,e){switch(e){case"audio":t.add("audio");break;case"document":t.add("document");break;case"image":case"signature":t.add("image");break;case"video":t.add("video")}}function T(t){return"document"!==t.type&&"capture"===t.inputMethod}function w(t){return T(t)}function x(t){return"document"===t.type||"capture"!==t.inputMethod}function F(t){return t.data&&"string"!=typeof t.data?t.data.size:t.info.size}function I(t){const e=t.lastIndexOf(".");return-1===e?{base:t,extension:null}:{base:t.slice(0,e),extension:t.slice(e+1)}}function z(t,e){return e?`${t}.${e}`:t}export{C as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3290],{9093(t,e,n){function r(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function o(t){return[t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15]]}n.d(e,{o8:()=>o,vt:()=>r,zK:()=>i});const i=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:i,clone:o,create:r,fromValues:function(t,e,n,r,o,i,c,u,a,s,f,l,d,h,g,w){return[t,e,n,r,o,i,c,u,a,s,f,l,d,h,g,w]}},Symbol.toStringTag,{value:"Module"}))},82534(t,e,n){function r(){return[0,0,0,1]}function o(t){return[t[0],t[1],t[2],t[3]]}n.d(e,{o8:()=>o,vt:()=>r,zK:()=>i});const i=[0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:i,clone:o,create:r,fromValues:function(t,e,n,r){return[t,e,n,r]}},Symbol.toStringTag,{value:"Module"}))},48163(t,e,n){function r(){return[0,0]}function o(t){return[t[0],t[1]]}function i(t,e){return[t,e]}function c(){return i(1,1)}function u(){return i(-1,-1)}function a(){return i(1,0)}function s(){return i(0,1)}n.d(e,{IA:()=>l,Un:()=>f,fA:()=>i,o8:()=>o,vt:()=>r});const f=c(),l=u(),d=a(),h=s();Object.freeze(Object.defineProperty({__proto__:null,NEGATIVE_ONES:l,ONES:f,UNIT_X:d,UNIT_Y:h,ZEROS:[0,0],clone:o,create:r,freeze:function(t,e){return[t,e]},fromArray:function(t,e=[0,0]){const n=Math.min(2,t.length);for(let r=0;r<n;++r)e[r]=t[r];return e},fromValues:i,negativeOnes:u,ones:c,unitX:a,unitY:s,zeros:function(){return[0,0]}},Symbol.toStringTag,{value:"Module"}))},27921(t,e,n){n.d(e,{$Q:()=>A,C:()=>u,Cr:()=>f,H:()=>v,O_:()=>s,Qj:()=>a,T7:()=>p,Tj:()=>m,lU:()=>l,mN:()=>U,vE:()=>C,vt:()=>c});var r=n(34727),o=n(35522),i=n(51850);function c(t=M){return[t[0],t[1],t[2],t[3]]}function u(t,e){return function(t,e,n,r,o=c()){return o[0]=t,o[1]=e,o[2]=n,o[3]=r,o}(e[0],e[1],e[2],e[3],t)}function a(t){return t}function s(t,e,n){const r=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],o=Math.abs(r-1)>1e-5&&r>1e-12?1/Math.sqrt(r):1;return n[0]=e[0]*o,n[1]=e[1]*o,n[2]=e[2]*o,n[3]=-(n[0]*t[0]+n[1]*t[1]+n[2]*t[2]),n}function f(t,e,n,r=c()){const o=n[0]-e[0],i=n[1]-e[1],u=n[2]-e[2],a=t[0]-e[0],s=t[1]-e[1],f=t[2]-e[2],l=i*f-u*s,d=u*a-o*f,h=o*s-i*a,g=l*l+d*d+h*h,w=Math.abs(g-1)>1e-5&&g>1e-12?1/Math.sqrt(g):1;return r[0]=l*w,r[1]=d*w,r[2]=h*w,r[3]=-(r[0]*t[0]+r[1]*t[1]+r[2]*t[2]),r}function l(t,e,n,r=0,i=Math.floor(n*(1/3)),c=Math.floor(n*(2/3))){if(n<3)return!1;e(h,r);let u=i,a=!1;for(;u<n-1&&!a;)e(g,u),u++,a=!(0,o.t2)(h,g);if(!a)return!1;for(u=Math.max(u,c),a=!1;u<n&&!a;)e(w,u),u++,(0,o.Re)(y,h,g),(0,o.S8)(y,y),(0,o.Re)(b,g,w),(0,o.S8)(b,b),a=!(0,o.t2)(h,w)&&!(0,o.t2)(g,w)&&Math.abs((0,o.Om)(y,b))<d;return a?(f(h,g,w,t),!0):(0!==r||1!==i||2!==c)&&l(t,e,n,0,1,2)}n(78955),n(44280),n(32114),n(32728);const d=.99619469809,h=(0,i.vt)(),g=(0,i.vt)(),w=(0,i.vt)(),y=(0,i.vt)(),b=(0,i.vt)();function p(t,e,n){return function(t){return 0===t||1===t}(C(t,e.origin,e.vector,0,n))}function m(t,e){return U(t,e)>=0}function A(t,e){const n=(0,o.Om)(t,e.ray.direction),r=-U(t,e.ray.origin);if(r<0&&n>=0)return!1;if(n>-1e-6&&n<1e-6)return r>0;if((r<0||n<0)&&!(r<0&&n<0))return!0;const i=r/n;return n>0?i<e.c1&&(e.c1=i):i>e.c0&&(e.c0=i),e.c0<=e.c1}function v(t,e,n,r,i=!0){let c=0,u=e[n-1],a=U(t,u),s=i?a>0:a<=0;for(let f=0;f<n;f++){const n=e[f],l=U(t,n),d=i?l>0:l<=0;s!==d&&(0,o.Cc)(r[c++],u,n,a/(a-l)),d&&(0,o.C)(r[c++],n),u=n,a=l,s=d}return c}function U(t,e){return(0,o.Om)(t,e)+t[3]}function C(t,e,n,i,c){const u=(0,o.Om)(t,n),a=U(t,e);if(0===u)return a>=0?2:3;let s=-a/u;return 1&i&&(s=(0,r.qE)(s,0,1)),!(4&i)&&s<0||!(8&i)&&s>1?a>=0?2:3:((0,o.WQ)(c,e,(0,o.hs)(c,n,s)),a>=0?0:1)}const M=[0,0,1,0]},44280(t,e,n){n.d(e,{g7:()=>u,gr:()=>c});var r=n(34727),o=n(35522),i=n(51850);function c(t,e){return(0,o.Om)(t,e)/(0,o.Bw)(t)}function u(t,e){const n=(0,o.Om)(t,e)/((0,o.Bw)(t)*(0,o.Bw)(e));return-(0,r.XM)(n)}(0,i.vt)(),(0,i.vt)()},32114(t,e,n){n.d(e,{Rc:()=>h,rq:()=>l,Km:()=>d}),n(44208);var r=n(26390),o=n(29242),i=n(9093),c=n(82534),u=n(48163),a=n(51850),s=n(91829);class f{constructor(t){this._create=t,this._items=new Array,this._itemsPtr=0}get(){return 0===this._itemsPtr&&(0,r.d)(()=>this._reset()),this._itemsPtr>=this._items.length&&this._items.push(this._create()),this._items[this._itemsPtr++]}_reset(){const t=2*this._itemsPtr;this._items.length>t&&(this._items.length=t),this._itemsPtr=0}static createVec2f64(){return new f(u.vt)}static createVec3f64(){return new f(a.vt)}static createVec4f64(){return new f(s.vt)}static createMat3f64(){return new f(o.vt)}static createMat4f64(){return new f(i.vt)}static createQuatf64(){return new f(c.vt)}get test(){}}f.createVec2f64();const l=f.createVec3f64(),d=f.createVec4f64(),h=(f.createMat3f64(),f.createMat4f64());f.createQuatf64()},59418(t,e,n){n.d(e,{wH:()=>w,MA:()=>d,E5:()=>h,m0:()=>b});var r=n(49186),o=n(4718),i=n(53966),c=n(34275),u=n(37203);const a=()=>i.A.getLogger("esri.views.3d.layers.i3s.I3SBinaryReader");function s(t,e,n){let o="",i=0;for(;i<n;){const c=t[e+i];if(c<128)o+=String.fromCharCode(c),i++;else if(c>=192&&c<224){if(i+1>=n)throw new r.A("utf8-decode-error","UTF-8 Decode failed. Two byte character was truncated.");const u=(31&c)<<6|63&t[e+i+1];o+=String.fromCharCode(u),i+=2}else if(c>=224&&c<240){if(i+2>=n)throw new r.A("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");const u=(15&c)<<12|(63&t[e+i+1])<<6|63&t[e+i+2];o+=String.fromCharCode(u),i+=3}else{if(!(c>=240&&c<248))throw new r.A("utf8-decode-error","UTF-8 Decode failed. Invalid multi byte sequence.");{if(i+3>=n)throw new r.A("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");const u=(7&c)<<18|(63&t[e+i+1])<<12|(63&t[e+i+2])<<6|63&t[e+i+3];if(u>=65536){const t=55296+(u-65536>>10),e=56320+(1023&u);o+=String.fromCharCode(t,e)}else o+=String.fromCharCode(u);i+=4}}}return o}function f(t,e){const n={byteOffset:0,byteCount:0,fields:Object.create(null)};let r=0;for(let o=0;o<e.length;o++){const i=e[o],c=i.valueType||i.type,u=m[c];n.fields[i.property]=u(t,r),r+=p[c].BYTES_PER_ELEMENT}return n.byteCount=r,n}function l(t,e,n){const o=[];let i,c,u=0;for(c=0;c<t;c+=1){if(i=e[c],i>0){if(o.push(s(n,u,i-1)),0!==n[u+i-1])throw new r.A("string-array-error","Invalid string array: missing null termination.")}else o.push(null);u+=i}return o}function d(t,e){return new(0,p[e.valueType])(t,e.byteOffset,e.count*e.valuesPerElement)}function h(t,e){if(!t)return null;const n=t[e];return(0,c.IY)(t)?n===c.PI?null:n:(0,c._G)(t)?n===c.h2?null:n:n!=n?null:n}function g(t,e,n){if(e!==t&&a().error(`Invalid ${n} buffer size\n expected: ${t}, actual: ${e})`),e<t)throw new r.A("buffer-too-small","Binary buffer is too small",{expectedSize:t,actualSize:e})}function w(t,e){const n=f(t,e&&e.header);let r=n.byteCount;const o={isDraco:!1,header:n,byteOffset:n.byteCount,byteCount:0,vertexAttributes:{}},i=n.fields,c=null!=i.vertexCount?i.vertexCount:i.count;for(const t of e.ordering){if(!e.vertexAttributes[t])continue;const n={...e.vertexAttributes[t],byteOffset:r,count:c},i=y[t]||"_"+t;o.vertexAttributes[i]=n,r+=v(n.valueType)*n.valuesPerElement*c}const u=i.faceCount;if(e.faces&&u){o.faces={};for(const t of e.ordering){if(!e.faces[t])continue;const n={...e.faces[t],byteOffset:r,count:u};o.faces[t]=n,r+=v(n.valueType)*n.valuesPerElement*u}}const a=i.featureCount;if(e.featureAttributes&&e.featureAttributeOrder&&a){o.featureAttributes={};for(const t of e.featureAttributeOrder){if(!e.featureAttributes[t])continue;const n={...e.featureAttributes[t],byteOffset:r,count:a};o.featureAttributes[t]=n,r+=("UInt64"===n.valueType?8:v(n.valueType))*n.valuesPerElement*a}}return g(r,t.byteLength,"geometry"),o.byteCount=r-o.byteOffset,o}const y={position:"position",normal:"normal",color:"color",uv0:"uv0",region:"uvRegion"};function b(t,e,n,i=!1){if("lepcc-rgb"===t.encoding)return i?(0,u.mb)(e):function(t){return Array.isArray(t)?t.length<c.y9?t:new Uint8Array(t):t.length<c.y9?Array.from(t):t}((0,u.mb)(e));if("lepcc-intensity"===t.encoding)return i?(0,u.Ax)(e):function(t){return Array.isArray(t)?t.length<c.y9?t:new Uint16Array(t):t.length<c.y9?Array.from(t):t}((0,u.Ax)(e));if(null!=t.encoding&&""!==t.encoding)throw new r.A("unknown-attribute-storage-info-encoding","Unknown Attribute Storage Info Encoding");t["attributeByteCounts "]&&!t.attributeByteCounts&&(a().warn("Warning: Trailing space in 'attributeByteCounts '."),t.attributeByteCounts=t["attributeByteCounts "]),"ObjectIds"===t.ordering[0]&&t.hasOwnProperty("objectIds")&&(a().warn("Warning: Case error in objectIds"),t.ordering[0]="objectIds");const s=function(t,e,n){const i=null!=e.header?f(t,e.header):{byteOffset:0,byteCount:0,fields:{count:n}},c={header:i,byteOffset:i.byteCount,byteCount:0,entries:Object.create(null)};let u=i.byteCount;for(let t=0;t<e.ordering.length;t++){const n=e.ordering[t],a=(0,o.o8)(e[n]);if(a.count=i.fields.count??0,"String"===a.valueType){if(a.byteOffset=u,a.byteCount=i.fields[n+"ByteCount"],"UTF-8"!==a.encoding)throw new r.A("unsupported-encoding","Unsupported String encoding.",{encoding:a.encoding});if(a.timeEncoding&&"ECMA_ISO8601"!==a.timeEncoding)throw new r.A("unsupported-time-encoding","Unsupported time encoding.",{timeEncoding:a.timeEncoding})}else{if(!A(a.valueType))throw new r.A("unsupported-value-type","Unsupported binary valueType",{valueType:a.valueType});{const t=v(a.valueType);u+=u%t!==0?t-u%t:0,a.byteOffset=u,a.byteCount=t*a.valuesPerElement*a.count}}u+=a.byteCount??0,c.entries[n]=a}return c.byteCount=u-c.byteOffset,c}(e,t,n);g(s.byteOffset+s.byteCount,e.byteLength,"attribute");const w=s.entries.attributeValues||s.entries.objectIds;if(w){if("String"===w.valueType){const t=s.entries.attributeByteCounts,n=d(e,t),r=function(t,e){return new Uint8Array(t,e.byteOffset,e.byteCount)}(e,w);return w.timeEncoding?function(t,e,n){return l(t,e,n).map(t=>{const e=t?Date.parse(t):null;return null==e||Number.isNaN(e)?null:e})}(t.count,n,r):l(t.count,n,r)}return i?d(e,w):function(t,e){const n=d(t,e);if(n.length>=c.y9)return n;const r=new Array;return n.forEach((t,e)=>r.push(h(n,e))),r}(e,w)}throw new r.A("bad-attribute-storage-info","Bad attributeStorageInfo specification.")}const p={Float32:Float32Array,Float64:Float64Array,UInt8:Uint8Array,Int8:Int8Array,UInt16:Uint16Array,Int16:Int16Array,UInt32:Uint32Array,Int32:Int32Array},m={Float32:(t,e)=>new DataView(t,0).getFloat32(e,!0),Float64:(t,e)=>new DataView(t,0).getFloat64(e,!0),UInt8:(t,e)=>new DataView(t,0).getUint8(e),Int8:(t,e)=>new DataView(t,0).getInt8(e),UInt16:(t,e)=>new DataView(t,0).getUint16(e,!0),Int16:(t,e)=>new DataView(t,0).getInt16(e,!0),UInt32:(t,e)=>new DataView(t,0).getUint32(e,!0),Int32:(t,e)=>new DataView(t,0).getInt32(e,!0)};function A(t){return p.hasOwnProperty(t)}function v(t){return A(t)?p[t].BYTES_PER_ELEMENT:0}},37203(t,e,n){n.d(e,{Ax:()=>h,Me:()=>u,mb:()=>l});var r=n(49186);const o=!0;function i(t,e,n){return{identifier:String.fromCharCode.apply(null,new Uint8Array(t,n+0,10)),version:e.getUint16(n+10,o),checksum:e.getUint32(n+12,o)}}function c(t,e){return{sizeLo:t.getUint32(e+0,o),sizeHi:t.getUint32(e+4,o),minX:t.getFloat64(e+8,o),minY:t.getFloat64(e+16,o),minZ:t.getFloat64(e+24,o),maxX:t.getFloat64(e+32,o),maxY:t.getFloat64(e+40,o),maxZ:t.getFloat64(e+48,o),errorX:t.getFloat64(e+56,o),errorY:t.getFloat64(e+64,o),errorZ:t.getFloat64(e+72,o),count:t.getUint32(e+80,o),reserved:t.getUint32(e+84,o)}}function u(t){const e=new DataView(t,0);let n=0;const{identifier:o,version:u}=i(t,e,n);if(n+=16,"LEPCC "!==o)throw new r.A("lepcc-decode-error","Bad identifier");if(u>1)throw new r.A("lepcc-decode-error","Unknown version");const s=c(e,n);if(n+=88,s.sizeHi*2**32+s.sizeLo!==t.byteLength)throw new r.A("lepcc-decode-error","Bad size");const f=new Float64Array(3*s.count),l=[],d=[],h=[],g=[];if(n=a(t,n,l),n=a(t,n,d),n=a(t,n,h),n=a(t,n,g),n!==t.byteLength)throw new r.A("lepcc-decode-error","Bad length");let w=0,y=0;for(let t=0;t<l.length;t++){y+=l[t];let e=0;for(let n=0;n<d[t];n++){e+=h[w];const t=g[w];f[3*w]=Math.min(s.maxX,s.minX+2*s.errorX*e),f[3*w+1]=Math.min(s.maxY,s.minY+2*s.errorY*y),f[3*w+2]=Math.min(s.maxZ,s.minZ+2*s.errorZ*t),w++}}return{errorX:s.errorX,errorY:s.errorY,errorZ:s.errorZ,result:f}}function a(t,e,n){const r=[];e=s(t,e,r);const o=[];for(let i=0;i<r.length;i++){o.length=0,e=s(t,e,o);for(let t=0;t<o.length;t++)n.push(o[t]+r[i])}return e}function s(t,e,n){const i=new DataView(t,e),c=i.getUint8(0),u=31&c,a=!!(32&c),s=(192&c)>>6;let f=0;if(0===s)f=i.getUint32(1,o),e+=5;else if(1===s)f=i.getUint16(1,o),e+=3;else{if(2!==s)throw new r.A("lepcc-decode-error","Bad count type");f=i.getUint8(1),e+=2}if(a)throw new r.A("lepcc-decode-error","LUT not implemented");const l=Math.ceil(f*u/8),d=new Uint8Array(t,e,l);let h=0,g=0,w=0;const y=-1>>>32-u;for(let t=0;t<f;t++){for(;g<u;)h|=d[w]<<g,g+=8,w+=1;n[t]=h&y,h>>>=u,g-=u,g+u>32&&(h|=d[w-1]>>8-g)}return e+w}function f(t,e){return{sizeLo:t.getUint32(e+0,o),sizeHi:t.getUint32(e+4,o),count:t.getUint32(e+8,o),colorMapCount:t.getUint16(e+12,o),lookupMethod:t.getUint8(e+14),compressionMethod:t.getUint8(e+15)}}function l(t){const e=new DataView(t,0);let n=0;const{identifier:o,version:c}=i(t,e,n);if(n+=16,"ClusterRGB"!==o)throw new r.A("lepcc-decode-error","Bad identifier");if(c>1)throw new r.A("lepcc-decode-error","Unknown version");const u=f(e,n);if(n+=16,u.sizeHi*2**32+u.sizeLo!==t.byteLength)throw new r.A("lepcc-decode-error","Bad size");if((2===u.lookupMethod||1===u.lookupMethod)&&0===u.compressionMethod){if(3*u.colorMapCount+u.count+n!==t.byteLength||u.colorMapCount>256)throw new r.A("lepcc-decode-error","Bad count");const e=new Uint8Array(t,n,3*u.colorMapCount),o=new Uint8Array(t,n+3*u.colorMapCount,u.count),i=new Uint8Array(3*u.count);for(let t=0;t<u.count;t++){const n=o[t];i[3*t]=e[3*n],i[3*t+1]=e[3*n+1],i[3*t+2]=e[3*n+2]}return i}if(0===u.lookupMethod&&0===u.compressionMethod){if(3*u.count+n!==t.byteLength||0!==u.colorMapCount)throw new r.A("lepcc-decode-error","Bad count");return new Uint8Array(t,n).slice()}if(u.lookupMethod<=2&&1===u.compressionMethod){if(n+3!==t.byteLength||1!==u.colorMapCount)throw new r.A("lepcc-decode-error","Bad count");const o=e.getUint8(n),i=e.getUint8(n+1),c=e.getUint8(n+2),a=new Uint8Array(3*u.count);for(let t=0;t<u.count;t++)a[3*t]=o,a[3*t+1]=i,a[3*t+2]=c;return a}throw new r.A("lepcc-decode-error","Bad method "+u.lookupMethod+","+u.compressionMethod)}function d(t,e){return{sizeLo:t.getUint32(e+0,o),sizeHi:t.getUint32(e+4,o),count:t.getUint32(e+8,o),scaleFactor:t.getUint16(e+12,o),bitsPerPoint:t.getUint8(e+14),reserved:t.getUint8(e+15)}}function h(t){const e=new DataView(t,0);let n=0;const{identifier:o,version:c}=i(t,e,n);if(n+=16,"Intensity "!==o)throw new r.A("lepcc-decode-error","Bad identifier");if(c>1)throw new r.A("lepcc-decode-error","Unknown version");const u=d(e,n);if(n+=16,u.sizeHi*2**32+u.sizeLo!==t.byteLength)throw new r.A("lepcc-decode-error","Bad size");const a=new Uint16Array(u.count);if(8===u.bitsPerPoint){if(u.count+n!==t.byteLength)throw new r.A("lepcc-decode-error","Bad size");const e=new Uint8Array(t,n,u.count);for(let t=0;t<u.count;t++)a[t]=e[t]*u.scaleFactor}else if(16===u.bitsPerPoint){if(2*u.count+n!==t.byteLength)throw new r.A("lepcc-decode-error","Bad size");const e=new Uint16Array(t,n,u.count);for(let t=0;t<u.count;t++)a[t]=e[t]*u.scaleFactor}else{const e=[];if(s(t,n,e)!==t.byteLength)throw new r.A("lepcc-decode-error","Bad size");for(let t=0;t<u.count;t++)a[t]=e[t]*u.scaleFactor}return a}},32728(t,e,n){n.d(e,{YH:()=>u,hG:()=>i,nu:()=>a,wp:()=>c}),n(34727);var r=n(35522),o=n(51850);function i(t){const e=t[0]*t[0]+t[4]*t[4]+t[8]*t[8],n=t[1]*t[1]+t[5]*t[5]+t[9]*t[9],r=t[2]*t[2]+t[6]*t[6]+t[10]*t[10];return Math.sqrt(Math.max(e,n,r))}function c(t,e){const n=Math.sqrt(e[0]*e[0]+e[4]*e[4]+e[8]*e[8]),o=Math.sqrt(e[1]*e[1]+e[5]*e[5]+e[9]*e[9]),i=Math.sqrt(e[2]*e[2]+e[6]*e[6]+e[10]*e[10]);return(0,r.hZ)(t,n,o,i),t}function u(t,e,n){n=n||t;const o=(0,r.Om)(t,e);(0,r.hZ)(n,t[0]-o*e[0],t[1]-o*e[1],t[2]-o*e[2]),(0,r.S8)(n,n)}function a(t,e,n,i=(0,o.vt)()){const c=(0,r.Bw)(t),u=(0,r.Bw)(e),a=(0,r.Om)(t,e)/(c*u);if(a<.9999999999999999){const o=Math.acos(a),l=((1-n)*c+n*u)/Math.sin(o),d=l/c*Math.sin((1-n)*o),h=l/u*Math.sin(n*o);return(0,r.hs)(s,t,d),(0,r.hs)(f,e,h),(0,r.WQ)(i,s,f)}return(0,r.Cc)(i,t,e,n)}(0,o.vt)(),(0,o.vt)(),(0,o.vt)();const s=(0,o.vt)(),f=(0,o.vt)()}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[91,895,1775,1948,3931,6061,8125],{61691(e,t,n){n.d(t,{G:()=>i});class i{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}},76061(e,t,n){n.d(t,{S:()=>r});var i=n(61691);class r extends i.G{m_aGeoms;m_iGeom=-1;constructor(e){super(),this.m_aGeoms=e?e.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){const e=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,e}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}},65708(e,t,n){n.d(t,{a:()=>o,e:()=>s});var i=n(86211),r=n(78125);function s(e,t={}){const{unit:n}=t;let s=(0,r.fromGeometry)(e).calculateArea2D();if(s&&n){const t=(0,r.getSpatialReference)(e);if(t.isGeographic)throw new Error("Unable to convert from an angular area unit to a linear area unit.");const o=(0,i.B5)(t);o!==n&&(o?s=(0,i.oU)(s,o,n):(s=Math.sqrt(s),s*=(0,i.GA)(t),s**=2,s=(0,i.oU)(s,"square-meters",n)))}return s}const o=Object.freeze(Object.defineProperty({__proto__:null,execute:s,supportsCurves:!0},Symbol.toStringTag,{value:"Module"}))},49590(e,t,n){n.d(t,{e:()=>f,g:()=>p,l:()=>h});var i=n(86211),r=n(86742),s=n(5808);let o,a,l,c;function u(){return!!o&&(0,r.s1)()}async function h(){if(!u()){const[e]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1550)]).then(n.bind(n,78125)),(0,r.Hh)()]);o=e.fromGeometry,a=e.fromSpatialReference,l=e.getSpatialReference,c=(0,r.fz)()}}function f(e,t={}){const{curveType:n="geodesic",unit:c}=t,u=l(e);let h=(0,r.g7)(o(e),a(u),s.O[n]);return h&&c&&(h=(0,i.oU)(h,"square-meters",c)),h}const p=Object.freeze(Object.defineProperty({__proto__:null,execute:f,isLoaded:u,load:h,get supportsCurves(){return c}},Symbol.toStringTag,{value:"Module"}))},27749(e,t,n){n.d(t,{e:()=>p,g:()=>d,l:()=>f});var i=n(86211),r=n(77085),s=n(5808);let o,a,l,c,u;function h(){return!!o&&(0,r.s1)()}async function f(){if(!h()){const[e]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1666)]).then(n.bind(n,78125)),(0,r.Hh)()]);o=e.fromGeometry,a=e.fromSpatialReference,l=e.getSpatialReference,c=e.toGeometry,u=(0,r.fz)()}}function p(e,t,n={}){const{curveType:u="geodesic",unit:h}=n;h&&(t=(0,i.oU)(t,h,"meters"));const f=l(e);return c((0,r.g7)(o(e),t,a(f),s.O[u]),f)}const d=Object.freeze(Object.defineProperty({__proto__:null,execute:p,executeMany:function(e,t,n={}){const{curveType:u="geodesic",unit:h}=n;h&&(t=(0,i.oU)(t,h,"meters"));const f=e.map(o),p=l(e);return(0,r.zo)(f,t,a(p),s.O[u]).map(e=>c(e,p))},isLoaded:h,load:f,get supportsCurves(){return u}},Symbol.toStringTag,{value:"Module"}))},39663(e,t,n){n.d(t,{e:()=>f,g:()=>p,l:()=>h});var i=n(86211),r=n(35223),s=n(5808);let o,a,l,c;function u(){return!!o&&(0,r.s1)()}async function h(){if(!u()){const[e]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1550)]).then(n.bind(n,78125)),(0,r.Hh)()]);o=e.fromGeometry,a=e.fromSpatialReference,l=e.getSpatialReference,c=(0,r.fz)()}}function f(e,t={}){const{curveType:n="geodesic",unit:c}=t,u=l(e);let h=(0,r.g7)(o(e),a(u),s.O[n]);return h&&c&&(h=(0,i.oU)(h,"meters",c)),h}const p=Object.freeze(Object.defineProperty({__proto__:null,execute:f,isLoaded:u,load:h,get supportsCurves(){return c}},Symbol.toStringTag,{value:"Module"}))},7817(e,t,n){n.d(t,{e:()=>s,l:()=>a,s:()=>o});var i=n(86211),r=n(78125);function s(e,t={}){const{unit:n}=t;let s=(0,r.fromGeometry)(e).calculateLength2D();if(s&&n){const t=(0,r.getSpatialReference)(e);s=(0,i.PQ)(s,t,n)}return s}const o=!0,a=Object.freeze(Object.defineProperty({__proto__:null,execute:s,supportsCurves:o},Symbol.toStringTag,{value:"Module"}))},10222(e,t,n){n.d(t,{e:()=>s,s:()=>a});var i=n(81150),r=n(78125);function s(e){const t=(0,r.getSpatialReference)(e);return(0,r.toGeometry)((0,i.g7)((0,r.fromGeometry)(e),(0,r.fromSpatialReference)(t),!1),t)}const o=(0,i.fz)(),a=Object.freeze(Object.defineProperty({__proto__:null,execute:s,executeMany:function(e){const t=e.map(r.fromGeometry),n=(0,r.getSpatialReference)(e);return(0,i.zo)(t,(0,r.fromSpatialReference)(n),!1).map(e=>(0,r.toGeometry)(e,n))},isSimple:function(e){return(0,i.Pg)((0,r.fromGeometry)(e),(0,r.fromSpatialReference)((0,r.getSpatialReference)(e)),!1)},supportsCurves:o},Symbol.toStringTag,{value:"Module"}))},73354(e,t,n){n.d(t,{a:()=>o,b:()=>l,c:()=>s,d:()=>a,e:()=>p,f:()=>h,l:()=>u,n:()=>d,t:()=>f});var i=n(40876),r=(n(44208),n(72727));function s(e,t,n){o(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function o(e,t,n,i=3,s=i){const o=(0,r.k)(e.length,i,3),a=(0,r.k)(t.length,s,3),l=Math.min(o,a),c=n[0],u=n[1],h=n[2],f=n[4],p=n[5],d=n[6],m=n[8],g=n[9],y=n[10],v=n[12],w=n[13],C=n[14];let x=0,_=0;for(let n=0;n<l;n++){const n=t[x],r=t[x+1],o=t[x+2];e[_]=c*n+f*r+m*o+v,e[_+1]=u*n+p*r+g*o+w,e[_+2]=h*n+d*r+y*o+C,x+=s,_+=i}return e}function a(e,t,n){l(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function l(e,t,n,i=3,s=i){const o=(0,r.k)(e.length,i,3),a=(0,r.k)(t.length,s,3),l=Math.min(o,a),c=n[0],u=n[1],h=n[2],f=n[3],p=n[4],d=n[5],m=n[6],g=n[7],y=n[8];let v=0,w=0;for(let n=0;n<l;n++){const n=t[v],r=t[v+1],o=t[v+2];e[w]=c*n+f*r+m*o,e[w+1]=u*n+p*r+g*o,e[w+2]=h*n+d*r+y*o,v+=s,w+=i}}function c(e,t,n,i=3,r=i){const s=Math.min(e.length/i,t.length/r);let o=0,a=0;for(let l=0;l<s;l++)e[a]=n*t[o],e[a+1]=n*t[o+1],e[a+2]=n*t[o+2],o+=r,a+=i;return e}function u(e,t,n,i){h(e.typedBuffer,t.typedBuffer,n,i,e.typedBufferStride,t.typedBufferStride)}function h(e,t,n,r,s=3,o=s){const a=Math.min(e.length/s,t.length/o);let l=0,c=0;const u=1/i.Tf;for(let i=0;i<a;i++)e[c]=r*(n*t[l])**u,e[c+1]=r*(n*t[l+1])**u,e[c+2]=r*(n*t[l+2])**u,l+=o,c+=s}function f(e,t,n,i=3,s=i){const o=(0,r.k)(e.length,i,3),a=(0,r.k)(t.length,s,3),l=Math.min(o,a);let c=0,u=0;for(let r=0;r<l;r++)e[u]=t[c]+n[0],e[u+1]=t[c+1]+n[1],e[u+2]=t[c+2]+n[2],c+=s,u+=i;return e}function p(e,t){d(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function d(e,t,n=3,i=n){const r=Math.min(e.length/n,t.length/i);let s=0,o=0;for(let a=0;a<r;a++){const r=t[s],a=t[s+1],l=t[s+2],c=r*r+a*a+l*l;if(c>0){const t=1/Math.sqrt(c);e[o]=t*r,e[o+1]=t*a,e[o+2]=t*l}s+=i,o+=n}}Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:h,linearToSRGBView:u,normalize:d,normalizeView:p,scale:c,scaleView:function(e,t,n){c(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)},shiftRight:function(e,t,n){const i=Math.min(e.count,t.count),r=e.typedBuffer,s=e.typedBufferStride,o=t.typedBuffer,a=t.typedBufferStride;let l=0,c=0;for(let e=0;e<i;e++)r[c]=o[l]>>n,r[c+1]=o[l+1]>>n,r[c+2]=o[l+2]>>n,l+=a,c+=s},transformMat3:l,transformMat3View:a,transformMat4:o,transformMat4View:s,translate:f},Symbol.toStringTag,{value:"Module"}))},69540(e,t,n){n.d(t,{OU:()=>u,Pw:()=>h});var i=n(5482),r=n(69622),s=(n(44208),n(4718)),o=(n(53966),n(97768)),a=n(88620),l=n(64108);const c=Symbol("ClonableMixin"),u=e=>{var t;const n=e;let r=class extends n{constructor(){super(...arguments),this[t]=!0}static{t=c}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const n=t.metadata,i=t.store,r={},l=new Map;for(const t in n){const o=n[t],a=i?.originOf(t),c=o.clonable;if(o.readOnly||!1===c||7!==a&&0!==a&&5!==a&&4!==a)continue;const u=this[t];let h=null;if("function"==typeof c)h=c(u,e);else if("reference"===c)h=u;else if(h=(0,s.TU)(u,e),null!=u&&null==h)continue;0===a?l.set(t,h):r[t]=h}const c=new(0,Object.getPrototypeOf(this).constructor)(r);if(l.size){const e=(0,a.oY)(c)?.store;if(e)for(const[t,n]of l)e.set(t,n,0)}return c}};return r=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],r),r},h=u(r.A)},7762(e,t,n){n.d(t,{A:()=>z});var i,r=n(5482),s=n(98291),o=n(4576),a=n(65529),l=n(36563),c=n(4718),u=n(53966),h=n(93687),f=n(76030),p=n(56507),d=n(62788),m=n(10107),g=n(7695),y=n(64108),v=n(95488),w=n(12195);class C{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(e){this.defaultPrevented=!1,this.item=e}}class x{constructor(e,t,n,i,r){this.target=e,this.added=t,this.removed=n,this.start=i,this.deleteCount=r}}const _=new h.A(()=>new C,void 0,e=>{e.item=null,e.target=null,e.defaultPrevented=!1,e.cancellable=!1});function M(e){e&&"object"==typeof e&&"destroy"in e&&"function"==typeof e.destroy&&e.destroy()}function b(e){return e?e instanceof I?e.toArray():e.length?Array.prototype.slice.apply(e):[]:[]}function T(e){if(e?.length)return e[0]}function A(e,t,n,i){const r=Math.min(e.length-n,t.length-i);let s=0;for(;s<r&&e[n+s]===t[i+s];)s++;return s}function S(e,t,n,i){t&&t.forEach((t,r,s)=>{e.push(t),S(e,n.call(i,t,r,s),n,i)})}const R=new Set,P=new Set,E=new Set,O=new Map;let Z=0,I=i=class extends a.nJ{static ofType(e){if(!e)return i;if(O.has(e))return O.get(e);let t=null;if("function"==typeof e)t=e.prototype.declaredClass;else if(e.base)t=e.base.prototype.declaredClass;else for(const n in e.typeMap){const i=e.typeMap[n].prototype.declaredClass;t?t+=` | ${i}`:t=i}let n=class extends i{};return(0,r.Cg)([(0,g.u)({Type:e,ensureType:"function"==typeof e?(0,p.dp)(e):(0,p.aq)(e)})],n.prototype,"itemType",void 0),n=(0,r.Cg)([(0,y.$)(`esri.core.Collection<${t}>`)],n),O.set(e,n),n}static isCollection(e){return null!=e&&e instanceof i}constructor(e){super(e),this._chgListeners=[],this._notifications=null,this._updating=!1,this._timer=null,this._observable=new v.I,this._length=0,this._items=[],Object.defineProperty(this,"uid",{value:Z++})}normalizeCtorArgs(e){return e?(0,o.yc)(e)||e instanceof i?{items:e}:e:{}}destroy(){this._removeAllRaw(),this._timer&&this._timer.remove(),super.destroy(),this._notifications=null}*[Symbol.iterator](){yield*this.items}get length(){return this._length}set length(e){e>this._length?u.A.getLogger(this).error("#length=","Cannot increase the length of the collection by assigning to the length property."):this.splice(e,Math.max(0,this._length-e))}get items(){return(0,d.gc)(this._observable),this._items}set items(e){this._emitBeforeChanges(1)||(this._splice(0,this.length,b(e)),this._emitAfterChanges(1))}hasEventListener(e){return!this.destroyed&&("change"===e?this._chgListeners.length>0:super.hasEventListener(e))}on(e,t){if(this.destroyed)return(0,l.hA)();if("change"===e){const e=this._chgListeners,n={removed:!1,callback:t};return e.push(n),this._notifications&&this._notifications.push({listeners:e.slice(),items:this._items.slice(),changes:[]}),(0,l.hA)(()=>{n.removed=!0,e.splice(e.indexOf(n),1)})}return super.on(e,t)}once(e,t){const n="deref"in t?()=>t.deref():()=>t,i=this.on(e,e=>{n()?.call(null,e),i.remove()});return i}add(e,t){if((0,d.gc)(this._observable),this._emitBeforeChanges(1))return this;const n=this.getNextIndex(t??null);return this._splice(n,0,[e]),this._emitAfterChanges(1),this}addMany(e,t=this._items.length){if((0,d.gc)(this._observable),!e?.length)return this;if(this._emitBeforeChanges(1))return this;const n=this.getNextIndex(t);return this._splice(n,0,b(e)),this._emitAfterChanges(1),this}at(e){if((0,d.gc)(this._observable),(e=Math.trunc(e)||0)<0&&(e+=this.length),!(e<0||e>=this.length))return this._items[e]}removeAll(){if((0,d.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return[];const e=this._removeAllRaw();return this._emitAfterChanges(2),e}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return(0,d.gc)(this._observable),this._createNewInstance({items:this._items.map(c.o8)})}concat(...e){(0,d.gc)(this._observable);const t=e.map(b);return this._createNewInstance({items:this._items.concat(...t)})}drain(e,t){if((0,d.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const n=this._splice(0,this.length),i=n.length;for(let r=0;r<i;r++)e.call(t,n[r],r,n);this._emitAfterChanges(2)}destroyAll(){this.drain(M)}destroyMany(e){const t=this.removeMany(e);return t.forEach(M),t}every(e,t){return(0,d.gc)(this._observable),this._items.every(e,t)}filter(e,t){(0,d.gc)(this._observable);const n=2===arguments.length?this._items.filter(e,t):this._items.filter(e);return this._createNewInstance({items:n})}find(e,t){return(0,d.gc)(this._observable),this._items.find(e,t)}findIndex(e,t){return(0,d.gc)(this._observable),this._items.findIndex(e,t)}flatten(e,t){(0,d.gc)(this._observable);const n=[];return S(n,this,e,t),new i(n)}forEach(e,t){return(0,d.gc)(this._observable),this._items.forEach(e,t)}getItemAt(e){return(0,d.gc)(this._observable),this._items[e]}getNextIndex(e){(0,d.gc)(this._observable);const t=this.length;return(e=e??t)<0?e=0:e>t&&(e=t),e}includes(e,t=0){return(0,d.gc)(this._observable),this._items.includes(e,t)}indexOf(e,t=0){return(0,d.gc)(this._observable),this._items.indexOf(e,t)}join(e=","){return(0,d.gc)(this._observable),this._items.join(e)}lastIndexOf(e,t=this.length-1){return(0,d.gc)(this._observable),this._items.lastIndexOf(e,t)}map(e,t){(0,d.gc)(this._observable);const n=this._items.map(e,t);return new i({items:n})}reorder(e,t=this.length-1){(0,d.gc)(this._observable);const n=this.indexOf(e);if(-1!==n){if(t<0?t=0:t>=this.length&&(t=this.length-1),n!==t){if(this._emitBeforeChanges(4))return e;this._splice(n,1),this._splice(t,0,[e]),this._emitAfterChanges(4)}return e}}pop(){if((0,d.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const e=T(this._splice(this.length-1,1));return this._emitAfterChanges(2),e}push(...e){return(0,d.gc)(this._observable),this._emitBeforeChanges(1)||(this._splice(this.length,0,e),this._emitAfterChanges(1)),this.length}reduce(e,t){(0,d.gc)(this._observable);const n=this._items;return 2===arguments.length?n.reduce(e,t):n.reduce(e)}reduceRight(e,t){(0,d.gc)(this._observable);const n=this._items;return 2===arguments.length?n.reduceRight(e,t):n.reduceRight(e)}remove(e){return(0,d.gc)(this._observable),this.removeAt(this.indexOf(e))}removeAt(e){if((0,d.gc)(this._observable),e<0||e>=this.length||this._emitBeforeChanges(2))return;const t=T(this._splice(e,1));return this._emitAfterChanges(2),t}removeMany(e){if((0,d.gc)(this._observable),!e?.length||this._emitBeforeChanges(2))return[];const t=e instanceof i?e.toArray():e,n=this._items,r=[],s=t.length;for(let e=0;e<s;e++){const i=t[e],s=n.indexOf(i);if(s>-1){const i=1+A(t,n,e+1,s+1),o=this._splice(s,i);o&&o.length>0&&r.push.apply(r,o),e+=i-1}}return this._emitAfterChanges(2),r}reverse(){if((0,d.gc)(this._observable),this._emitBeforeChanges(4))return this;const e=this._splice(0,this.length);return e&&(e.reverse(),this._splice(0,0,e)),this._emitAfterChanges(4),this}shift(){if((0,d.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const e=T(this._splice(0,1));return this._emitAfterChanges(2),e}slice(e=0,t=this.length){return(0,d.gc)(this._observable),this._createNewInstance({items:this._items.slice(e,t)})}some(e,t){return(0,d.gc)(this._observable),this._items.some(e,t)}sort(e){if((0,d.gc)(this._observable),!this.length||this._emitBeforeChanges(4)||!this._requiresSort(e))return this;const t=this._splice(0,this.length);return arguments.length?t.sort(e):t.sort(),this._splice(0,0,t),this._emitAfterChanges(4),this}_requiresSort(e=(e,t)=>e===t?0:e<t?-1:1){const t=this.length-1;for(let n=0;n<t;n++)if(e(this.items[n],this.items[n+1])>0)return!0;return!1}splice(e,t,...n){(0,d.gc)(this._observable),1===arguments.length&&(t=this.length),t??=0;const i=(t?2:0)|(n.length?1:0);if(this._emitBeforeChanges(i))return[];const r=this._splice(e,t,n)||[];return this._emitAfterChanges(i),r}toArray(){return(0,d.gc)(this._observable),this._items.slice()}toJSON(e){return(0,d.gc)(this._observable),this.toArray().map(t=>(0,w.W)(t)?t.toJSON(e):t)}toLocaleString(){return(0,d.gc)(this._observable),this._items.toLocaleString()}toString(){return(0,d.gc)(this._observable),this._items.toString()}unshift(...e){return(0,d.gc)(this._observable),!e.length||this._emitBeforeChanges(1)||(this._splice(0,0,e),this._emitAfterChanges(1)),this.length}_createNewInstance(e){return new this.constructor(e)}_splice(e,t,n){const i=this._items,r=this.itemType;let s,o;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._updating=!0,this._timer=(0,f._)(()=>this._dispatchChange())),e<0&&(e+=this.length),t){if(o=i.splice(e,t),this.hasEventListener("before-remove")){const t=_.acquire();t.target=this,t.cancellable=!0;for(let n=0,r=o.length;n<r;n++)s=o[n],t.reset(s),this.emit("before-remove",t),t.defaultPrevented&&(o.splice(n,1),i.splice(e,0,s),e+=1,n-=1,r-=1);_.release(t)}if(this._length=this._items.length,this.hasEventListener("after-remove")){const e=_.acquire();e.target=this,e.cancellable=!1;const t=o.length;for(let n=0;n<t;n++)e.reset(o[n]),this.emit("after-remove",e);_.release(e)}}if(n?.length){if(r){const e=[];for(const t of n){const n=r.ensureType(t);null==n&&null!=t||e.push(n)}n=e}const t=this.hasEventListener("before-add"),s=this.hasEventListener("after-add"),o=e===this.length;if(t||s){const r=_.acquire();r.target=this,r.cancellable=!0;const a=_.acquire();a.target=this,a.cancellable=!1;for(const l of n)t?(r.reset(l),this.emit("before-add",r),r.defaultPrevented||(o?i.push(l):i.splice(e++,0,l),this._length=i.length,s&&(a.reset(l),this.emit("after-add",a)))):(o?i.push(l):i.splice(e++,0,l),this._length=i.length,a.reset(l),this.emit("after-add",a));_.release(a),_.release(r)}else{if(o)for(const e of n)i.push(e);else i.splice(e,0,...n);this._length=i.length}}if((n?.length||o?.length)&&this._notifyChangeEvent(n,o),this.hasEventListener("after-splice")){const i=new x(this,n,o,e,t);this.emit("after-splice",i)}return o}_emitBeforeChanges(e){let t=!1;if(this.hasEventListener("before-changes")){const n=_.acquire();n.target=this,n.cancellable=!0,n.type=e,this.emit("before-changes",n),t=n.defaultPrevented,_.release(n)}return t}_emitAfterChanges(e){if(this.hasEventListener("after-changes")){const t=_.acquire();t.target=this,t.cancellable=!1,t.type=e,this.emit("after-changes",t),_.release(t)}this._observable.notify()}_notifyChangeEvent(e,t){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:e,removed:t})}get updating(){return this._updating}_dispatchChange(){if(this._timer&&(this._timer.remove(),this._timer=null),this._updating=!1,!this._notifications)return;const e=this._notifications;this._notifications=null;for(const t of e){const e=t.changes;R.clear(),P.clear(),E.clear();for(const{added:t,removed:n}of e){if(t)if(0===E.size&&0===P.size)for(const e of t)R.add(e);else for(const e of t)P.has(e)?(E.add(e),P.delete(e)):E.has(e)||R.add(e);if(n)if(0===E.size&&0===R.size)for(const e of n)P.add(e);else for(const e of n)R.has(e)?R.delete(e):(E.delete(e),P.add(e))}const n=s.A.acquire();R.forEach(e=>{n.push(e)});const i=s.A.acquire();P.forEach(e=>{i.push(e)});const r=this._items,o=t.items,a=s.A.acquire();if(E.forEach(e=>{o.indexOf(e)!==r.indexOf(e)&&a.push(e)}),t.listeners&&(n.length||i.length||a.length)){const e={target:this,added:n,removed:i,moved:a},r=t.listeners.length;for(let n=0;n<r;n++){const i=t.listeners[n];i.removed||i.callback.call(this,e)}}s.A.release(n),s.A.release(i),s.A.release(a)}R.clear(),P.clear(),E.clear()}};(0,r.Cg)([(0,m.MZ)()],I.prototype,"_updating",void 0),(0,r.Cg)([(0,m.MZ)()],I.prototype,"_length",void 0),(0,r.Cg)([(0,m.MZ)()],I.prototype,"length",null),(0,r.Cg)([(0,m.MZ)()],I.prototype,"items",null),(0,r.Cg)([(0,m.MZ)({readOnly:!0})],I.prototype,"updating",null),I=i=(0,r.Cg)([(0,y.$)("esri.core.Collection")],I);const z=I},4902(e,t,n){n.d(t,{s:()=>o});var i=n(5482),r=n(64108);let s=0;const o=e=>{const t=e;let n=class extends t{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+s++})}};return n=(0,i.Cg)([(0,r.$)("esri.core.Identifiable")],n),n};o(class{})},7695(e,t,n){function i(e){return(t,n)=>{t[n]=e}}n.d(t,{u:()=>i})},82534(e,t,n){function i(){return[0,0,0,1]}function r(e){return[e[0],e[1],e[2],e[3]]}n.d(t,{o8:()=>r,vt:()=>i,zK:()=>s});const s=[0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:s,clone:r,create:i,fromValues:function(e,t,n,i){return[e,t,n,i]}},Symbol.toStringTag,{value:"Module"}))},48163(e,t,n){function i(){return[0,0]}function r(e){return[e[0],e[1]]}function s(e,t){return[e,t]}function o(){return s(1,1)}function a(){return s(-1,-1)}function l(){return s(1,0)}function c(){return s(0,1)}n.d(t,{IA:()=>h,Un:()=>u,fA:()=>s,o8:()=>r,vt:()=>i});const u=o(),h=a(),f=l(),p=c();Object.freeze(Object.defineProperty({__proto__:null,NEGATIVE_ONES:h,ONES:u,UNIT_X:f,UNIT_Y:p,ZEROS:[0,0],clone:r,create:i,freeze:function(e,t){return[e,t]},fromArray:function(e,t=[0,0]){const n=Math.min(2,e.length);for(let i=0;i<n;++i)t[i]=e[i];return t},fromValues:s,negativeOnes:a,ones:o,unitX:l,unitY:c,zeros:function(){return[0,0]}},Symbol.toStringTag,{value:"Module"}))},17799(e,t,n){n.d(t,{T9:()=>a,d_:()=>r,gT:()=>s});var i=n(86211);function r(e,t){return{type:(0,i.t$)(t),value:e,unit:t}}function s(e,t){return{type:(0,i.t$)(t),value:e,unit:t}}function o(e,t,n="arithmetic"){return{type:(0,i.t$)(t),value:e,unit:t,rotationType:n}}function a(e,t){return null==e?t:null==t||e.value>(0,i.oU)(t.value,t.unit,e.unit)?e:t}r(0,"meters"),s(0,"square-meters"),o(0,"radians"),o(0,"degrees"),o(0,"degrees","geographic")},36708(e,t,n){n.d(t,{C_:()=>f,OH:()=>m,Vh:()=>g,on:()=>h,pc:()=>y,wB:()=>l,z7:()=>c});var i=n(37955),r=n(36563),s=n(97768),o=n(17676),a=n(14012);function l(e,t,n={}){return u(e,t,n,p)}function c(e,t,n={}){return u(e,t,n,d)}function u(e,t,n={},i){let r=null;const o=n.once?(e,n)=>{i(e)&&((0,s.xt)(r),t(e,n))}:(e,n)=>{i(e)&&t(e,n)};if(r=(0,a.Cn)(e,o,n.sync,n.equals),n.initial){const t=e();o(t,t)}return r}function h(e,t,n,o={}){let a=null,c=null,u=null;function h(){a&&c&&(c.remove(),o.onListenerRemove?.(a),a=null,c=null)}function f(e){o.once&&o.once&&(0,s.xt)(u),n(e)}const p=l(e,(e,n)=>{h(),(0,i.wb)(e)&&(a=e,c=(0,i.on)(e,t,f),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return u=(0,r.hA)(()=>{p.remove(),h()}),u}function f(e,t){return function(e,t,n){if((0,o.G4)(n))return Promise.reject((0,o.NK)());const i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,s.xt)(a)}return new Promise((i,s)=>{a=(0,r.vE)([(0,o.u7)(n,()=>{l(),s((0,o.NK)())}),u(e,e=>{l(),i(e)},{sync:!1,once:!0},t??p)])})}(e,d,t)}function p(e){return!0}function d(e){return!!e}n(80559);const m={sync:!0},g={initial:!0},y={sync:!0,initial:!0}},35982(e,t,n){n.d(t,{B:()=>u});var i=n(4576),r=n(71511),s=n(36563),o=n(53966),a=n(97768),l=n(17676),c=n(83027);class u{constructor(e,t,n,i,r={}){this._mainMethod=t,this._transferLists=n,this._listeners=[],this._onClientConnectedHandle=null,this._destroyed=!1,this._promise=(0,c.h)(e,{...r,schedule:i}).then(e=>{null!=this._thread||this._destroyed?e.close():(this._thread=e,this._promise=null,this._onClientConnectedHandle=this._thread.onClientConnected(e=>{r.hasInitialize&&e.invoke("initialize",{}).catch(()=>{});for(const t of this._listeners)this._connectListenerToClient(t,e);this._onClientConnected(e)}))}),this._promise.catch(t=>o.A.getLogger("esri.core.workers.WorkerHandle").error(`Failed to initialize ${e} worker: ${t}`))}on(e,t){const n=new h(e,t);return this._listeners.push(n),this._connectListener(n),(0,s.hA)(()=>{(0,i.TF)(this._listeners,n),n.destroy()})}[Symbol.dispose](){this.destroy()}destroy(){this._onClientConnectedHandle=(0,a.xt)(this._onClientConnectedHandle),this._thread&&(this._thread.close(),this._thread=null),this._promise=null;for(const e of this._listeners)e.destroy();this._listeners.length=0,this._transferLists={},this._destroyed=!0}invoke(e,t,n){return this.invokeMethod(this._mainMethod,e,t,n)}invokeMethod(e,t,n,i){if(this._thread){const r=this._transferLists[e],s=r?r(t):[];return this._thread.invoke(e,t,{transferList:s,signal:n,jobPriority:i})}return this._promise?this._promise.then(()=>((0,l.Te)(n),this.invokeMethod(e,t,n))):Promise.reject((0,l.NK)())}broadcast(e,t){return this._thread?Promise.all(this._thread.broadcast(t,e)).then(f):this._promise?this._promise.then(()=>this.broadcast(e,t)):Promise.reject((0,l.NK)())}get promise(){return this._promise}_onClientConnected(e){}_connectListener(e){this._thread&&e.add(this._thread.on(e.eventName,e.callback))}_connectListenerToClient(e,t){e.add(t.on(e.eventName,e.callback))}}class h{constructor(e,t){this.eventName=e,this.callback=t,this._handles=new r.A}add(e){this._handles.add(e)}destroy(){this._handles.destroy()}}function f(){}},87992(e,t,n){n.d(t,{JR:()=>T,ME:()=>_,MY:()=>A,NO:()=>x,Nh:()=>b,V2:()=>O,_s:()=>Z,e6:()=>z,gh:()=>M,tr:()=>V,uX:()=>g});var i=n(5482),r=n(69397),s=n(16930),o=(n(70328),n(19419)),a=n(60408),l=n(21325),c=n(513),u=n(50954),h=n(79567),f=n(52006),p=n(49663),d=n(46068),m=n(92722);class g{constructor({type:e,spatialReference:t,vertexCount:n,vertexXY:i,vertexZ:r,vertexM:s,partCount:o,partOffsets:a,partFlags:l,segmentFlags:c,segmentIndices:u,segmentParams:h,segmentCountArc:f,segmentCountBezier:p}){this.segmentCountArc=0,this.segmentCountBezier=0,this.type=e,this.spatialReference=t,this.vertexCount=n,this.vertexXY=i,this.vertexZ=r,this.vertexM=s,this.partCount=o,this.partOffsets=a,this.partFlags=l,this.segmentFlags=c,this.segmentIndices=u,this.segmentParams=h,this.segmentCountArc=f,this.segmentCountBezier=p}get segmentParamCount(){return 10*this.segmentCountArc+4*this.segmentCountBezier}get segmentCountLine(){const{segmentCount:e,segmentCountArc:t,segmentCountBezier:n}=this;return e&&e-t-n}get segmentCount(){return"polyline"===this.type?this.vertexCount-this.partCount:"polygon"===this.type?this.vertexCount:0}get hasZ(){return null!=this.vertexZ}get hasM(){return null!=this.vertexM}hasCurves(){return this.segmentCountArc+this.segmentCountBezier>0}isMultipart(){return"polyline"===this.type||"polygon"===this.type}get usedMemory(){function e(e){return e?r.Ul+e.byteLength:0}return e(this.vertexXY)+e(this.vertexZ)+e(this.vertexM)+e(this.partOffsets)+e(this.partFlags)+e(this.segmentFlags)+e(this.segmentIndices)+e(this.segmentParams)}clone(){const{type:e,vertexCount:t,partCount:n,hasZ:i,hasM:r,segmentCountArc:s,segmentCountBezier:o}=this,a=O(e,t,n,i,r,this.hasCurves(),s,o);a.spatialReference=this.spatialReference;const{vertexXY:l,vertexZ:c,vertexM:u}=this;if(a.vertexXY.set(l.subarray(0,2*t),0),a.vertexZ?.set(c.subarray(0,t),0),a.vertexM?.set(u.subarray(0,t),0),this.isMultipart()){const{partOffsets:e,partFlags:t}=this;a.partFlags.set(t.subarray(0,n+1)),a.partOffsets.set(e.subarray(0,n+1))}if(this.hasCurves()){const{segmentFlags:e,segmentIndices:n,segmentParams:i,segmentParamCount:r}=this;a.segmentFlags.set(e.subarray(0,t),0),a.segmentIndices.set(n.subarray(0,t),0),a.segmentParams.set(i.subarray(0,r),0)}return a}equals(e){return this.equalsWithinTolerance(e,0)}equalsWithinTolerance(e,t){if(null==e)return!1;if(this===e)return!0;if(!(0,l.aI)(this.spatialReference,e.spatialReference))return!1;if(this.vertexCount!==e.vertexCount||this.partCount!==e.partCount)return!1;if(this.hasZ!==e.hasZ||this.hasM!==e.hasM)return!1;if(this.hasCurves()!==e.hasCurves()||this.segmentCountArc!==e.segmentCountArc||this.segmentCountBezier!==e.segmentCountBezier)return!1;const n=0===t?(e,t)=>e!==t||isNaN(e)!==isNaN(t):(e,n)=>Math.abs(e-n)>t||isNaN(e)!==isNaN(n);for(let t=0;t<this.vertexCount;++t)if(n(this.vertexXY[2*t],e.vertexXY[2*t])||n(this.vertexXY[2*t+1],e.vertexXY[2*t+1]))return!1;if(this.hasZ)for(let t=0;t<this.vertexCount;++t)if(n(this.vertexZ[t],e.vertexZ[t]))return!1;if(this.hasM)for(let t=0;t<this.vertexCount;++t)if(n(this.vertexM[t],e.vertexM[t]))return!1;for(let t=0;t<this.partCount;++t)if(this.partFlags[t]!==e.partFlags[t]||this.partOffsets[t]!==e.partOffsets[t])return!1;if(this.hasCurves()){for(let t=0;t<this.vertexCount;++t)if(this.segmentFlags[t]!==e.segmentFlags[t]||this.segmentIndices[t]!==e.segmentIndices[t])return!1;for(let t=0;t<this.segmentParamCount;++t)if(n(this.segmentParams[t],e.segmentParams[t]))return!1}return!0}get parts(){return this.isMultipart()?new y(this):[][Symbol.iterator]()}}class y{constructor(e){this.geometry=e,this.value=new v(e)}get done(){return this.value.index>=this.geometry.partCount}next(){return++this.value.index,this}[Symbol.iterator](){return this}}class v{constructor(e){this.geometry=e,this.index=-1,this._readVertex=P(e),this._segments=new w(this)}get segments(){return this._segments.reset(),this._segments}get startVertex(){return this._readVertex(this.geometry.partOffsets[this.index])}get vertexCount(){const e=this.geometry.partOffsets;return e[this.index+1]-e[this.index]}}class w{constructor(e){this._part=e,this._partStart=0,this._partEnd=0,this._isPolygon="polygon"===e.geometry.type,this.value=new C(e.geometry)}get done(){return this.value.indexOfStartVertex>this._partEnd}next(){++this.value.indexOfStartVertex;const e=this.value.indexOfStartVertex>=this._partEnd;return this.value.indexOfEndVertex=e&&this._isPolygon?this._partStart:this.value.indexOfStartVertex+1,this}[Symbol.iterator](){return this}reset(){const{index:e}=this._part,t=this._part.geometry.partOffsets;this._partStart=t[e],this._partEnd=t[e+1]-(this._isPolygon?1:2),this.value.indexOfStartVertex=this._partStart-1}}class C{constructor(e){this.geometry=e,this.indexOfStartVertex=-1,this.indexOfEndVertex=-1,this._readVertex=P(e)}get xStart(){return this.geometry.vertexXY[2*this.indexOfStartVertex]}get yStart(){return this.geometry.vertexXY[2*this.indexOfStartVertex+1]}get zStart(){return this.geometry.vertexZ[this.indexOfStartVertex]}get mStart(){return this.geometry.vertexM[this.indexOfStartVertex]}get xEnd(){return this.geometry.vertexXY[2*this.indexOfEndVertex]}get yEnd(){return this.geometry.vertexXY[2*this.indexOfEndVertex+1]}get zEnd(){return this.geometry.vertexZ[this.indexOfEndVertex]}get mEnd(){return this.geometry.vertexM[this.indexOfEndVertex]}get start(){return this._readVertex(this.indexOfStartVertex)}get end(){return this._readVertex(this.indexOfEndVertex)}get curve(){const e=this.geometry.segmentFlags?.[this.indexOfStartVertex]??1;if(1===e)return this.end;const t=this.geometry.segmentParams;let n=this.geometry.segmentIndices[this.indexOfStartVertex];if(2===e){const e=t[n++],i=t[n++],r=t[n++],s=t[n++];return{b:[this.end,[e,i],[r,s]]}}const i=t[n++],r=t[n++],s=t[n++],o=t[n++],a=t[n++],l=t[n++];n++,n++;const c=t[n++],u=t[n++];if(!Boolean(4&i)&&1===s)return{c:[this.end,[c,u]]};const h=2&i?0:1,f=1&i?0:1;return{a:[this.end,[a,l],h,f,o,r,s]}}}function x(e,t){const n={stack:[],error:void 0,hasError:!1};try{return t??=(0,o.Ie)(),(0,i.mS)(n,new S(e,["vertexZ","vertexM","spatialReference"]),!1),(0,o.bx)(t,function(e){let t;const{vertexCount:n,vertexXY:r,vertexZ:s,vertexM:a}=e,l=R(e);if(e.hasCurves()){const n={stack:[],error:void 0,hasError:!1};try{(0,i.mS)(n,new S(e,["vertexZ","vertexM"]),!1);const r=(0,o.Ie)();for(const t of e.parts){let e=t.startVertex;for(const{curve:n}of t.segments)(0,h.e)(r,e,n),e=(0,f.yP)(n)}const[s,a,c,u]=r;t={xmin:s,ymin:a,xmax:c,ymax:u,spatialReference:l}}catch(e){n.error=e,n.hasError=!0}finally{(0,i.hk)(n)}}else{let e,i,s,o;e=i=1/0,s=o=-1/0;for(let t=0;t<n;++t){const n=r[2*t],a=r[2*t+1];e=Math.min(e,n),s=Math.max(s,n),i=Math.min(i,a),o=Math.max(o,a)}t={xmin:e,ymin:i,xmax:s,ymax:o,spatialReference:l}}if(s){let e=1/0,n=-1/0;for(const t of s)e=Math.min(e,t),n=Math.max(n,t);t.zmin=e,t.zmax=n}if(a){let e=1/0,n=-1/0;for(const t of a)e=Math.min(e,t),n=Math.max(n,t);t.mmin=e,t.mmax=n}return t}(e)),t}catch(e){n.error=e,n.hasError=!0}finally{(0,i.hk)(n)}}function _(e){let t,n,i;if((0,a.fT)(e)){i="point";const{x:r,y:s,z:o,m:a}=e,l=[r,s];null!=o&&l.push(o),null!=a&&l.push(a),n=[[l]],t=1}else(0,a.U9)(e)?(i="multipoint",n=[e.points],t=e.points.length):(0,a.Rg)(e)?(i="polyline",n=e.curvePaths??e.paths,t=n.reduce((e,t)=>e+t.length,0)):(i="polygon",n=e.curveRings??e.rings,t=n.reduce((e,t)=>(0===t.length||(e+=t.length,E(t[0],(0,f.yP)(t.at(-1)))&&--e),e),0));const r=O(i,t,i.includes("point")?0:n.length,(0,a.Pv)(e),(0,a.W0)(e),(0,f.Ed)(e)),{hasZ:s,hasM:o,vertexXY:l,vertexZ:c,vertexM:u}=r;function h(e){l[2*d]=e[0],l[2*d+1]=e[1],s&&(c[d]=e[2]),o&&(u[d]=e[p]),++d}r.spatialReference=e.spatialReference??void 0;const p=r.hasZ?3:2;let d=0;if(!r.isMultipart()){if(!s&&!o){for(const[e,t]of n[0])l[2*d]=e,l[2*d+1]=t,++d;return r}for(const e of n[0])h(e);return r}const m="polygon"===i,{partOffsets:g}=r;let y=0;if(!(0,f.Ed)(e)){for(const e of n){if(g[y++]=d,0===e.length)continue;let t=e.length;if(m&&E(e[0],e.at(-1))&&--t,s||o)for(let n=0;n<t;++n)h(e[n]);else for(let n=0;n<t;++n){const[t,i]=e[n];l[2*d]=t,l[2*d+1]=i,++d}}return g[y]=d,r}function v(e){const t=w+e;if(t<=(r.segmentParams?.length??0))return;let n=t*L;n=20*Math.ceil(n/20);const i=r.segmentParams;r.segmentParams=new Float64Array(n),null!=i&&r.segmentParams.set(i)}let w=0;for(const e of n){if(r.partOffsets[y++]=d,0===e.length)continue;const t=e[0];let n=t;for(let t=1;t<e.length;++t){const i=e[t];h(n);const s=d-1;(0,f.wY)(i)?(v(10),++r.segmentCountArc,w=Z(n,i,r,s,w),n=i.a[0]):(0,f.DA)(i)?(v(10),++r.segmentCountArc,w=I(n,i,r,s,w),n=i.a[0]):(0,f.aO)(i)?(v(10),++r.segmentCountArc,w=z(n,i,r,s,w),n=i.c[0]):(0,f.n1)(i)?(v(4),++r.segmentCountBezier,w=V(0,i,r,s,w),n=i.b[0]):n=i}m&&E(t,n)||h(n)}return r.partOffsets[y]=d,r}function M(e){const t=P(e),{vertexCount:n,partCount:i,hasZ:r,hasM:s}=e,o=R(e);if("point"===e.type){const[t,n]=e.vertexXY,i=e.vertexZ?.[0],r=e.vertexM?.[0];return{x:t,y:n,z:i,m:r,spatialReference:o}}let a=0;if("multipoint"===e.type){const e=[];for(;a<n;)e.push(t(a++));return{points:e,spatialReference:o,hasZ:r,hasM:s}}const l="polygon"===e.type;if(!e.hasCurves()){const n=new Array;for(let r=0;r<i;++r){const i=e.partOffsets[r+1],s=new Array;for(;a<i;)s.push(t(a++));l&&s.length>0&&s.push(s[0]),n.push(s)}return l?{rings:n,hasZ:r,hasM:s,spatialReference:o}:{paths:n,hasZ:r,hasM:s,spatialReference:o}}const c=new Array;for(const{segments:t,startVertex:n}of e.parts){const e=[n];for(const{curve:n}of t)e.push(n);c.push(e)}return l?{rings:[],curveRings:c,hasZ:r,hasM:s,spatialReference:o}:{paths:[],curvePaths:c,hasZ:r,hasM:s,spatialReference:o}}function b(e,{lengths:t,coords:n,hasZ:i,hasM:r},s){const o=e.includes("point")?0:t.length,a="polygon"===e,l="point"===e?1:t.reduce((e,t)=>e+t,0)-(a?o:0);i??=!1,r??=!1;const c=O(e,l,o,i,r,!1,0,0);if(c.spatialReference=s??void 0,!c.isMultipart()){for(let e=0,t=0;e<l;++e)c.vertexXY[2*e]=n[t++],c.vertexXY[2*e+1]=n[t++],i&&(c.vertexZ[e]=n[t++]),r&&(c.vertexM[e]=n[t++]);return c}const u=2+Number(i)+Number(r);let h=0,f=0;c.partOffsets[0]=0;for(const e of t){const t=c.partOffsets[f],s=t+e-Number(a);c.partOffsets[++f]=s;for(let e=t;e<s;++e)c.vertexXY[2*e]=n[h++],c.vertexXY[2*e+1]=n[h++],i&&(c.vertexZ[e]=n[h++]),r&&(c.vertexM[e]=n[h++]);a&&(h+=u)}return c}function T({type:e,vertexCount:t,vertexXY:n,vertexZ:i,vertexM:r,partCount:s,partOffsets:o,hasZ:a,hasM:l}){const c=new m.A([],[],a,l);s=Math.max(s,1);const u="polygon"===e;let h=0;for(let e=0;e<s;++e){const s=o?.[e+1]??t,f=c.coords.length;for(let e=h;e<s;++e)c.coords.push(n[2*e],n[2*e+1]),a&&c.coords.push(i[e]),l&&c.coords.push(r[e]);if(u){const e=h;c.coords.push(n[2*e],n[2*e+1]),a&&c.coords.push(i[e]),l&&c.coords.push(r[e])}c.lengths.push((c.coords.length-f)/c.stride),h=s}return"point"===e&&(c.lengths.length=0),c}function A(e,t){return"getSpatialReference"in e&&(t=function(e){if(null==e)return;const t=e.getText()||void 0,n=e.isCustomWkid()?0:e.getOldID();if(n<=0)return{wkt:t};let i=e.getLatestID();(i<=0||i===n)&&(i=void 0);const r=e.getVCS();if(null==r)return{wkid:n,latestWkid:i,wkt:t};const s=r.isCustomWkid()?0:r.getOldID();if(s<=0)return{wkt:t};let o=e.getLatestVerticalID();return(o<=0||o===s)&&(o=void 0),{wkid:n,wkt:t,latestWkid:i,vcsWkid:s,latestVcsWkid:o}}(e.getSpatialReference()),e=e.getGeometry()),new g({...e.toFlatGeometry(),spatialReference:t})}class S{constructor(e,t){this.target=e,this.keys=t,this.oldValues=t.map(t=>e[t]);for(const n of t)e[n]=void 0}[Symbol.dispose](){this.keys.map((e,t)=>{this.target[e]=this.oldValues[t]})}}function R({spatialReference:e}){return e instanceof s.A?e.toJSON():e}function P({vertexXY:e,vertexZ:t,vertexM:n}){return t?n?i=>[e[2*i],e[2*i+1],t[i],n[i]]:n=>[e[2*n],e[2*n+1],t[n]]:n?t=>[e[2*t],e[2*t+1],n[t]]:t=>[e[2*t],e[2*t+1]]}function E(e,t){return e.every((e,n)=>e===t[n])}function O(e,t,n,i,r,s,o,a){o??=0,a??=0;const l=new g({type:e,vertexCount:t,vertexXY:null,vertexZ:void 0,vertexM:void 0,partCount:n,partOffsets:void 0,partFlags:void 0,segmentFlags:void 0,segmentIndices:void 0,segmentParams:void 0,segmentCountArc:o,segmentCountBezier:a});let c=2*Float64Array.BYTES_PER_ELEMENT*t;i&&(c+=Float64Array.BYTES_PER_ELEMENT*t),r&&(c+=Float64Array.BYTES_PER_ELEMENT*t),l.isMultipart()&&(c+=(n+1)*Int32Array.BYTES_PER_ELEMENT,c+=(n+1)*Int8Array.BYTES_PER_ELEMENT),s&&(c+=t*Int8Array.BYTES_PER_ELEMENT,c+=t*Int32Array.BYTES_PER_ELEMENT,c+=l.segmentParamCount*Float64Array.BYTES_PER_ELEMENT);const u=new ArrayBuffer(c);let h=0;return l.vertexXY=new Float64Array(u,h,2*t),h+=l.vertexXY.byteLength,i&&(l.vertexZ=new Float64Array(u,h,t),h+=l.vertexZ.byteLength),r&&(l.vertexM=new Float64Array(u,h,t),h+=l.vertexM.byteLength),s&&(l.segmentParams=new Float64Array(u,h,l.segmentParamCount),h+=l.segmentParams.byteLength,l.segmentIndices=new Int32Array(u,h,t),l.segmentIndices.fill(N),h+=l.segmentIndices.byteLength),l.isMultipart()&&(l.partOffsets=new Int32Array(u,h,n+1),h+=l.partOffsets.byteLength,l.partFlags=new Int8Array(u,h,n+1),h+=l.partFlags.byteLength,"polygon"===l.type&&l.partFlags.subarray(0,n).fill(1)),s&&(l.segmentFlags=new Int8Array(u,h,t),l.segmentFlags.fill(1),h+=l.segmentFlags.byteLength),l}function Z(e,t,{segmentFlags:n,segmentIndices:i,segmentParams:r},s,o){n[s]=4,i[s]=o;const[a,[l,c],u,h,f,p,m]=t.a;let g=4;h||(g|=1),u||(g|=2);const y=(0,d.SW)(e,t),[v,w]=(0,d.Uk)(y,.5);return r[o++]=g,r[o++]=p,r[o++]=m,r[o++]=f,r[o++]=l,r[o++]=c,r[o++]=y.u2-y.u1,r[o++]=y.u1,r[o++]=v,r[o++]=w,o}function I(e,t,{segmentFlags:n,segmentIndices:i,segmentParams:r},s,o){n[s]=4,i[s]=o;const a=(0,p.io)(e,t);return D(a,4,...(0,c.mq)(a,.5),r,o)}function z(e,t,{segmentFlags:n,segmentIndices:i,segmentParams:r},s,o){return n[s]=4,i[s]=o,D((0,u.pM)(e,t),0,...t.c[1],r,o)}function D(e,t,n,i,r,s){const{cx:o,cy:a,thetaStart:l,thetaEnd:c,radius:u}=e;return l>c||(t|=1),Math.abs(c-l)<=Math.PI||(t|=2),r[s++]=t,r[s++]=u,r[s++]=1,r[s++]=0,r[s++]=o,r[s++]=a,r[s++]=c-l,r[s++]=l,r[s++]=n,r[s++]=i,s}function V(e,{b:[t,[n,i],[r,s]]},{segmentFlags:o,segmentIndices:a,segmentParams:l},c,u){return o[c]=2,a[c]=u,l[u++]=n,l[u++]=i,l[u++]=r,l[u++]=s,u}const L=1.61803,N=-1},54239(e,t,n){n.d(t,{A:()=>y});var i,r=n(5482),s=n(4576),o=n(66552),a=n(25482),l=n(86211),c=n(67076),u=n(91429),h=n(97348),f=n(43937),p=n(36005);const d=(0,o.O)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),m=d.jsonValues.slice();(0,s.Xy)(m,"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 y=i=class extends a.o{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,n){return d.write(e,t,n)}readHeightModel(e,t,n){return d.read(e)||(n?.messages&&n.messages.push(function(e,t){return new c.A("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:n})),null)}readHeightUnit(e,t,n){return g.read(e)||(n?.messages&&n.messages.push(v(e,{context:n})),null)}readHeightUnitService(e,t,n){return(0,l.LA)(e)||g.read(e)||(n?.messages&&n.messages.push(v(e,{context:n})),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 n=(0,l.k1)(t);return new i({heightModel:e.heightModel,heightUnit:n??void 0,vertCRS:e.vertCRS})}static fromSpatialReference(e){const{latestVcsWkid:t,vcsWkid:n}=e;if(!n)return null;const r=(null!=t?h.B.get(t):null)??h.B.get(n);return r?new i({heightModel:0===r.type?"gravity-related-height":"ellipsoidal",heightUnit:(0,l.LA)(r.unit.name),vertCRS:r.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 c.A("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,r.Cg)([(0,u.MZ)({type:d.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:m,default:"ellipsoidal",write:{isRequired:!0}}}}})],y.prototype,"heightModel",void 0),(0,r.Cg)([(0,f.K)("web-scene","heightModel")],y.prototype,"writeHeightModel",null),(0,r.Cg)([(0,p.w)(["web-scene","service"],"heightModel")],y.prototype,"readHeightModel",null),(0,r.Cg)([(0,u.MZ)({type:g.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:g.jsonValues,write:{writer:g.write,isRequired:!0}}}}})],y.prototype,"heightUnit",void 0),(0,r.Cg)([(0,p.w)("web-scene","heightUnit")],y.prototype,"readHeightUnit",null),(0,r.Cg)([(0,p.w)("service","heightUnit")],y.prototype,"readHeightUnitService",null),(0,r.Cg)([(0,u.MZ)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],y.prototype,"vertCRS",void 0),(0,r.Cg)([(0,p.w)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],y.prototype,"readVertCRS",null),y=i=(0,r.Cg)([(0,u.$K)("esri.geometry.HeightModelInfo")],y)},86742(e,t,n){n.d(t,{Hh:()=>o,fz:()=>l,g7:()=>a,s1:()=>s});var i=n(83290);let r;function s(){return!!r&&(0,i.i)()}async function o(){if(!s()){const[e,t]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(2024),n.e(6558)]).then(n.bind(n,6558)),Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(6061)]).then(n.bind(n,15756)).then(e=>e.aP).then(({injectPe:e})=>e),(0,i.l)()]);r=new e.OperatorGeodeticArea,t(i.p)}}function a(e,t,n){return r.execute(e,t,n,null)}function l(){return r.supportsCurves()}},77085(e,t,n){n.d(t,{Hh:()=>a,fz:()=>u,g7:()=>l,s1:()=>o,zo:()=>c});var i=n(76061),r=n(83290);let s;function o(){return!!s&&(0,r.i)()}async function a(){if(!o()){const[e,t]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(1088)]).then(n.bind(n,31088)),Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756)]).then(n.bind(n,15756)).then(e=>e.aP).then(({injectPe:e})=>e),(0,r.l)()]);s=new e.OperatorGeodeticDensifyByLength,t(r.p)}}function l(e,t,n,i){return s.execute(e,t,n,i,null)}function c(e,t,n,r){const o=s.executeMany(new i.S(e),t,n,r,null);return Array.from(o)}function u(){return s.supportsCurves()}},35223(e,t,n){n.d(t,{Hh:()=>o,fz:()=>l,g7:()=>a,s1:()=>s});var i=n(83290);let r;function s(){return!!r&&(0,i.i)()}async function o(){if(!s()){const[e,t]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(4167)]).then(n.bind(n,28879)),Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(6061)]).then(n.bind(n,15756)).then(e=>e.aP).then(({injectPe:e})=>e),(0,i.l)()]);r=new e.OperatorGeodeticLength,t(i.p)}}function a(e,t,n){return r.execute(e,t,n,null)}function l(){return r.supportsCurves()}},4144(e,t,n){n.d(t,{Hh:()=>a,fz:()=>u,g7:()=>l,s1:()=>o,zo:()=>c});var i=n(76061),r=n(83290);let s;function o(){return!!s&&(0,r.i)()}async function a(){if(!o()){const[e,t]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(9192)]).then(n.bind(n,9192)),Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756)]).then(n.bind(n,15756)).then(e=>e.aP).then(({injectPe:e})=>e),(0,r.l)()]);s=new e.OperatorProject,t(r.p)}}function l(e,t){return s.execute(e,t,null)}function c(e,t){const n=s.executeMany(new i.S(e),t,null);return Array.from(n)}function u(){return s.supportsCurves()}},81150(e,t,n){n.d(t,{Pg:()=>l,fz:()=>c,g7:()=>o,zo:()=>a});var i=n(76061),r=(n(55537),n(88885),n(15756));n(95213);const s=new r.f;function o(e,t,n){return s.execute(e,t,n,null)}function a(e,t,n){const r=s.executeMany(new i.S(e),t,n,null);return Array.from(r)}function l(e,t,n){return s.isSimpleAsFeature(e,t,n,null,null)}function c(){return s.supportsCurves()}},83276(e,t,n){n.r(t),n.d(t,{execute:()=>p,executeMany:()=>d,isLoaded:()=>h,load:()=>f,supportsCurves:()=>u});var i=n(4144),r=n(17499);let s,o,a,l,c,u;function h(){return!!s&&(0,i.s1)()}async function f(){if(!h()){const[e,t]=await Promise.all([Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(9285)]).then(n.bind(n,78125)),Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(6129)]).then(n.bind(n,86129)),(0,i.Hh)()]);s=e.fromGeometry,o=e.fromSpatialReference,a=e.getSpatialReference,l=e.toGeometry,c=t.createProjectionTransformation,u=(0,i.fz)()}}function p(e,t,n){const u=a(e),h=c(o(u),o(t),n),f=l((0,i.g7)(s(e),h),t);return!n?.zConversionDisabled&&f?.hasZ&&(0,r.g)([f],u,t),f}function d(e,t,n){const u=e.map(s),h=a(e),f=c(o(h),o(t),n),p=(0,i.zo)(u,f).map(e=>l(e,t));return!n?.zConversionDisabled&&p&&(0,r.g)(p,h,t),p}},78125(e,t,n){n.r(t),n.d(t,{fromExtent:()=>g,fromGeometry:()=>m,fromMultipoint:()=>y,fromPoint:()=>v,fromPolygon:()=>w,fromPolyline:()=>C,fromPolylineUsingImportOperator:()=>x,fromSpatialReference:()=>_,getSpatialReference:()=>d,toExtent:()=>b,toGeometry:()=>M,toMultipoint:()=>T,toPoint:()=>A,toPolygon:()=>S,toPolyline:()=>R});var i=n(83661),r=n(55537),s=n(95213),o=n(88885),a=n(5443),l=n(48526),c=n(86738),u=n(39829),h=n(82799),f=(n(90293),n(83299));const p="_gxVersion";function d(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function m(e){switch(e.type){case"point":return v(e);case"multipoint":return y(e);case"polyline":return C(e);case"polygon":return w(e);case"extent":return g(e);default:throw new Error(`Unsupported geometry type: ${e.type}`)}}function g(e){if(!e.getCacheValue(p)){const t=new s.E;t.setCoords(e.xmin,e.ymin,e.xmax,e.ymax),e.hasM&&t.setInterval(2,0,e.mmin,e.mmax),e.hasZ&&t.setInterval(1,0,e.zmin,e.zmax),e.setCacheValue(p,t)}return e.getCacheValue(p)}function y(e){if(!e.getCacheValue(p)){const t=new o.M,n=new s.P,i=e.points,r=e.hasM,a=e.hasZ,l=a?3:2;for(let e=0,s=i.length;e<s;e++){const s=i[e];n.setXYCoords(s[0],s[1]),a&&n.setZ(s[2]??0),r&&n.setM(s[l]??NaN),t.add(n)}e.setCacheValue(p,t)}return e.getCacheValue(p)}function v(e){if(!e.getCacheValue(p)){const t=new s.P;t.setXYCoords(e.x,e.y),e.hasM&&t.setM(e.m),e.hasZ&&t.setZ(e.z),e.setCacheValue(p,t)}return e.getCacheValue(p)}function w(e){if(!e.getCacheValue(p)){const{curveRings:t,hasM:n,hasZ:i,rings:r}=e,s=(0,f.fromGeometryToGXGeometry)({curveRings:t,hasM:n,hasZ:i,rings:r});e.setCacheValue(p,s)}return e.getCacheValue(p)}function C(e){if(!e.getCacheValue(p)){const{curvePaths:t,hasM:n,hasZ:i,paths:r}=e,s=(0,f.fromGeometryToGXGeometry)({curvePaths:t,hasM:n,hasZ:i,paths:r});e.setCacheValue(p,s)}return e.getCacheValue(p)}function x(e){if(!e.getCacheValue(p)){const{curvePaths:t,hasM:n,hasZ:i,paths:r}=e,s=(0,f.fromGeometryToGXGeometryUsingImportOperator)({curvePaths:t,hasM:n,hasZ:i,paths:r});e.setCacheValue(p,s)}return e.getCacheValue(p)}function _(e){return e.cache?(e.cache[p]??=(0,f.fromSpatialReference)(e),e.cache[p]):(0,f.fromSpatialReference)(e)}function M(e,t){if(e)switch(e.getGeometryType()){case r.G.enumPoint:return A(e,t);case r.G.enumEnvelope:return b(e,t);case r.G.enumMultiPoint:return T(e,t);case r.G.enumPolyline:return R(e,t);case r.G.enumPolygon:return S(e,t)}return null}function b(e,t){if(e.isEmpty())return null;const n=new a.A({xmin:e.getXMin(),ymin:e.getYMin(),xmax:e.getXMax(),ymax:e.getYMax(),spatialReference:t}),i=e.getDescription();if(i.hasM()){const t=e.queryInterval(2,0);n.mmin=t.vmin,n.mmax=t.vmax}if(i.hasZ()){const t=e.queryInterval(1,0);n.zmin=t.vmin,n.zmax=t.vmax}return n.setCacheValue(p,e),n}function T(e,t){if(e.isEmpty())return null;const n=e.getDescription(),i=n.hasM(),r=n.hasZ(),o=[],a=new s.P;for(let t=0,n=e.getPointCount();t<n;t++){e.getPointByVal(t,a);const n=[a.getX(),a.getY()];r&&n.push(a.getZ()),i&&n.push(a.getM()),o.push(n)}const c=new l.A({hasM:i,hasZ:r,points:o,spatialReference:t});return c.setCacheValue(p,e),c}function A(e,t){if(e instanceof i.P)return new c.A({x:e.x,y:e.y,spatialReference:t});if(e.isEmpty())return null;const n=new c.A({x:e.getX(),y:e.getY(),spatialReference:t}),r=e.getDescription();return r.hasM()&&(n.m=e.getM()),r.hasZ()&&(n.z=e.getZ()),n.setCacheValue(p,e),n}function S(e,t){if(e.isEmpty())return null;const n=u.A.fromJSON({...(0,f.toGeometry)(e,null),spatialReference:t});return n.setCacheValue(p,e),n}function R(e,t){if(e.isEmpty())return null;const n=h.A.fromJSON({...(0,f.toGeometry)(e,null),spatialReference:t});return n.setCacheValue(p,e),n}},5808(e,t,n){n.d(t,{O:()=>i});const i={geodesic:0,loxodrome:1,"great-elliptic":2,"normal-section":3,"shape-preserving":4}},17499(e,t,n){n.d(t,{g:()=>s});var i=n(60408),r=n(62815);function s(e,t,n){let s;for(const o of e)if(o&&(0,i.Pv)(o)&&!("vertexAttributes"in o)){if(!s){const e="type"in o?o.type:(0,i.$B)(o);if(s=(0,r.N)(e,t,n),!s)return}s(o)}}},72727(e,t,n){function i(e,t,n){if(t<=0)return 0;const i=e-n;return i<0?0:Math.floor(i/t)+1}n.d(t,{k:()=>i}),n(53966)},27921(e,t,n){n.d(t,{$Q:()=>C,C:()=>a,Cr:()=>u,H:()=>x,O_:()=>c,Qj:()=>l,T7:()=>v,Tj:()=>w,lU:()=>h,mN:()=>_,vE:()=>M,vt:()=>o});var i=n(34727),r=n(35522),s=n(51850);function o(e=b){return[e[0],e[1],e[2],e[3]]}function a(e,t){return function(e,t,n,i,r=o()){return r[0]=e,r[1]=t,r[2]=n,r[3]=i,r}(t[0],t[1],t[2],t[3],e)}function l(e){return e}function c(e,t,n){const i=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],r=Math.abs(i-1)>1e-5&&i>1e-12?1/Math.sqrt(i):1;return n[0]=t[0]*r,n[1]=t[1]*r,n[2]=t[2]*r,n[3]=-(n[0]*e[0]+n[1]*e[1]+n[2]*e[2]),n}function u(e,t,n,i=o()){const r=n[0]-t[0],s=n[1]-t[1],a=n[2]-t[2],l=e[0]-t[0],c=e[1]-t[1],u=e[2]-t[2],h=s*u-a*c,f=a*l-r*u,p=r*c-s*l,d=h*h+f*f+p*p,m=Math.abs(d-1)>1e-5&&d>1e-12?1/Math.sqrt(d):1;return i[0]=h*m,i[1]=f*m,i[2]=p*m,i[3]=-(i[0]*e[0]+i[1]*e[1]+i[2]*e[2]),i}function h(e,t,n,i=0,s=Math.floor(n*(1/3)),o=Math.floor(n*(2/3))){if(n<3)return!1;t(p,i);let a=s,l=!1;for(;a<n-1&&!l;)t(d,a),a++,l=!(0,r.t2)(p,d);if(!l)return!1;for(a=Math.max(a,o),l=!1;a<n&&!l;)t(m,a),a++,(0,r.Re)(g,p,d),(0,r.S8)(g,g),(0,r.Re)(y,d,m),(0,r.S8)(y,y),l=!(0,r.t2)(p,m)&&!(0,r.t2)(d,m)&&Math.abs((0,r.Om)(g,y))<f;return l?(u(p,d,m,e),!0):(0!==i||1!==s||2!==o)&&h(e,t,n,0,1,2)}n(78955),n(44280),n(32114),n(32728);const f=.99619469809,p=(0,s.vt)(),d=(0,s.vt)(),m=(0,s.vt)(),g=(0,s.vt)(),y=(0,s.vt)();function v(e,t,n){return function(e){return 0===e||1===e}(M(e,t.origin,t.vector,0,n))}function w(e,t){return _(e,t)>=0}function C(e,t){const n=(0,r.Om)(e,t.ray.direction),i=-_(e,t.ray.origin);if(i<0&&n>=0)return!1;if(n>-1e-6&&n<1e-6)return i>0;if((i<0||n<0)&&!(i<0&&n<0))return!0;const s=i/n;return n>0?s<t.c1&&(t.c1=s):s>t.c0&&(t.c0=s),t.c0<=t.c1}function x(e,t,n,i,s=!0){let o=0,a=t[n-1],l=_(e,a),c=s?l>0:l<=0;for(let u=0;u<n;u++){const n=t[u],h=_(e,n),f=s?h>0:h<=0;c!==f&&(0,r.Cc)(i[o++],a,n,l/(l-h)),f&&(0,r.C)(i[o++],n),a=n,l=h,c=f}return o}function _(e,t){return(0,r.Om)(e,t)+e[3]}function M(e,t,n,s,o){const a=(0,r.Om)(e,n),l=_(e,t);if(0===a)return l>=0?2:3;let c=-l/a;return 1&s&&(c=(0,i.qE)(c,0,1)),!(4&s)&&c<0||!(8&s)&&c>1?l>=0?2:3:((0,r.WQ)(o,t,(0,r.hs)(o,n,c)),l>=0?0:1)}const b=[0,0,1,0]},44280(e,t,n){n.d(t,{g7:()=>a,gr:()=>o});var i=n(34727),r=n(35522),s=n(51850);function o(e,t){return(0,r.Om)(e,t)/(0,r.Bw)(e)}function a(e,t){const n=(0,r.Om)(e,t)/((0,r.Bw)(e)*(0,r.Bw)(t));return-(0,i.XM)(n)}(0,s.vt)(),(0,s.vt)()},32114(e,t,n){n.d(t,{Rc:()=>p,rq:()=>h,Km:()=>f}),n(44208);var i=n(26390),r=n(29242),s=n(9093),o=n(82534),a=n(48163),l=n(51850),c=n(91829);class u{constructor(e){this._create=e,this._items=new Array,this._itemsPtr=0}get(){return 0===this._itemsPtr&&(0,i.d)(()=>this._reset()),this._itemsPtr>=this._items.length&&this._items.push(this._create()),this._items[this._itemsPtr++]}_reset(){const e=2*this._itemsPtr;this._items.length>e&&(this._items.length=e),this._itemsPtr=0}static createVec2f64(){return new u(a.vt)}static createVec3f64(){return new u(l.vt)}static createVec4f64(){return new u(c.vt)}static createMat3f64(){return new u(r.vt)}static createMat4f64(){return new u(s.vt)}static createQuatf64(){return new u(o.vt)}get test(){}}u.createVec2f64();const h=u.createVec3f64(),f=u.createVec4f64(),p=(u.createMat3f64(),u.createMat4f64());u.createQuatf64()},38732(e,t,n){n.r(t),n.d(t,{default:()=>T});var i=n(5482),r=n(11254),s=n(49186),o=n(97768),a=n(25728),l=n(17676),c=n(84952),u=n(91429),h=n(54239),f=n(4146),p=n(89186),d=n(18768),m=n(34287),g=n(8303),y=n(10873),v=n(87378),w=n(35982);class C extends w.B{constructor(e=null){super("LercWorker","_decode",{_decode:e=>[e.buffer]},e,{strategy:"dedicated"}),this.schedule=e,this.ref=0}decode(e,t,n){return e&&0!==e.byteLength?this.invoke({buffer:e,options:t},n):Promise.resolve(null)}release(){--this.ref<=0&&(x.forEach((e,t)=>{e===this&&x.delete(t)}),this.destroy())}}const x=new Map;var _=n(36005);let M=class extends((0,p.f)((0,d.b)((0,m.q)((0,g.A)((0,a.M)(f.A)))))){constructor(...e){super(...e),this.capabilities={operations:{supportsTileMap:!1}},this.copyright=null,this.heightModelInfo=null,this.path=null,this.minScale=void 0,this.maxScale=void 0,this.opacity=1,this.operationalLayerType="ArcGISTiledElevationServiceLayer",this.sourceJSON=null,this.type="elevation",this.url=null,this.version=null,this._lercDecoder=function(e=null){let t=x.get(e);return t||(null!=e?(t=new C(t=>e.immediate.schedule(t)),x.set(e,t)):(t=new C,x.set(null,t))),++t.ref,t}()}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._lercDecoder=(0,o.Gz)(this._lercDecoder)}readCapabilities(e,t){const n=t.capabilities&&t.capabilities.split(",").map(e=>e.toLowerCase().trim());return n?{operations:{supportsTileMap:n.includes("tilemap")}}:{operations:{supportsTileMap:!1}}}readVersion(e,t){let n=t.currentVersion;return n||(n=9.3),n}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Image Service"],supportsData:!1,validateItem:e=>{if(e.typeKeywords)for(let t=0;t<e.typeKeywords.length;t++)if("elevation 3d layer"===e.typeKeywords[t].toLowerCase())return!0;throw new s.A("portal:invalid-layer-item-type","Invalid layer item type '${type}', expected '${expectedType}' ",{type:"Image Service",expectedType:"Image Service Elevation 3D Layer"})}},e).catch(l.QP).then(()=>this._fetchImageService(t))),Promise.resolve(this)}async fetchTile(e,t,n,i){const o=i?.signal,a={responseType:"array-buffer",signal:o,useQueue:i?.useQueue,priority:i?.priority},l={noDataValue:i?.noDataValue,returnFileInfo:!0};await this.load(),await this._fetchTileAvailability(e,t,n,i);const c=await(0,r.A)(this.getTileUrl(e,t,n),a),u=await this._lercDecoder.decode(c.data,l,o);if(!u)throw new s.A("elevation-layer:tile-decode-failed","Failed to decode elevation tile data.");return new v.A({values:u.pixelData,width:u.width,height:u.height,noDataValue:u.noDataValue})}getTileUrl(e,t,n){const i=!this.capabilities.operations.supportsTileMap&&this.supportsBlankTile,r=(0,c.x0)({...this.parsedUrl.query,blankTile:!i&&null});return`${this.parsedUrl.path}/tile/${e}/${t}/${n}${r?"?"+r:""}`}async queryElevation(e,t){const{query:i}=await n.e(91).then(n.bind(n,90091));return(0,l.Te)(t),i(this,e,t)}async createElevationSampler(e,t){const{createSampler:i}=await n.e(91).then(n.bind(n,90091));return(0,l.Te)(t),i(this,e,t)}_fetchTileAvailability(e,t,n,i){return this.tilemapCache?this.tilemapCache.fetchAvailability(e,t,n,i):Promise.resolve("unknown")}async _fetchImageService(e){if(this.sourceJSON)return this.sourceJSON;const t={query:{f:"json",...this.parsedUrl.query},responseType:"json",signal:e},n=await(0,r.A)(this.parsedUrl.path,t);n.ssl&&(this.url=this.url?.replace(/^http:/i,"https:")),this.sourceJSON=n.data,this.read(n.data,{origin:"service",url:this.parsedUrl})}get hasOverriddenFetchTile(){return!this.fetchTile[b]}};(0,i.Cg)([(0,u.MZ)({readOnly:!0})],M.prototype,"capabilities",void 0),(0,i.Cg)([(0,_.w)("service","capabilities",["capabilities"])],M.prototype,"readCapabilities",null),(0,i.Cg)([(0,u.MZ)({json:{read:{source:"copyrightText"}}})],M.prototype,"copyright",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,type:h.A})],M.prototype,"heightModelInfo",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],M.prototype,"path",void 0),(0,i.Cg)([(0,u.MZ)({type:["show","hide"]})],M.prototype,"listMode",void 0),(0,i.Cg)([(0,u.MZ)({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],M.prototype,"minScale",void 0),(0,i.Cg)([(0,u.MZ)({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],M.prototype,"maxScale",void 0),(0,i.Cg)([(0,u.MZ)({json:{read:!1,write:!1,origins:{"web-document":{read:!1,write:!1}}}})],M.prototype,"opacity",void 0),(0,i.Cg)([(0,u.MZ)({type:["ArcGISTiledElevationServiceLayer"]})],M.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,u.MZ)()],M.prototype,"sourceJSON",void 0),(0,i.Cg)([(0,u.MZ)({json:{read:!1},value:"elevation",readOnly:!0})],M.prototype,"type",void 0),(0,i.Cg)([(0,u.MZ)(y.OZ)],M.prototype,"url",void 0),(0,i.Cg)([(0,u.MZ)()],M.prototype,"version",void 0),(0,i.Cg)([(0,_.w)("version",["currentVersion"])],M.prototype,"readVersion",null),M=(0,i.Cg)([(0,u.$K)("esri.layers.ElevationLayer")],M);const b=Symbol("default-fetch-tile");M.prototype.fetchTile[b]=!0;const T=M},4146(e,t,n){n.d(t,{A:()=>v});var i=n(5482),r=n(11254),s=n(49186),o=n(65529),a=n(4902),l=n(92474),c=n(53966),u=n(17676),h=n(84952),f=n(91429),p=n(5443),d=n(16930),m=n(92602),g=n(79677);let y=0,v=class extends((0,o.Zt)((0,a.s)(l.x_))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new p.A(-180,-90,180,90,d.A.WGS84),this.id=Date.now().toString(16)+"-layer-"+y++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.persistenceEnabled=!1,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=d.A.WGS84,this.title=null,this.type=null,this.url=null,this.visibilityTimeExtent=null,this.visible=!0}static async fromArcGISServerUrl(e){const t="string"==typeof e?{url:e}:e;return(await Promise.all([n.e(812),n.e(7982)]).then(n.bind(n,27982))).fromUrl(t)}static fromPortalItem(e){return async function(e){const t="portalItem"in e?e:{portalItem:e},{fromItem:i}=await Promise.all([n.e(812),n.e(5613),n.e(909)]).then(n.bind(n,45613));try{return await i(t)}catch(e){const n=t?.portalItem,i=n?.id||"unset",r=n?.portal?.url||m.A.portalUrl;throw c.A.getLogger("esri.layers.support.fromPortalItem").error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+r+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch(e=>{(0,u.zf)(e)||c.A.getLogger(this).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}')`,{error:e})})}destroy(){const{parent:e}=this;e&&(this.parent=null,e.removeChildLayer?.(this))}get effectiveVisible(){return this.visible&&(this.parent?.effectiveVisible??!0)}get hasAttributionData(){return null!=this.attributionDataUrl}get loaded(){return super.loaded}removeFromParent(){const{parent:e}=this;e&&(e.removeChildLayer?.(this),this.parent=null)}get parsedUrl(){return(0,h.An)(this.url)}createLayerView(e,t){return Promise.reject(new s.A("layer:create-layer-view","Layer does not support creating a layer view"))}async fetchAttributionData(){const e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,r.A)(e,{query:{f:"json"},responseType:"json"})).data;throw new s.A("layer:no-attribution-data","Layer does not have attribution data")}};(0,i.Cg)([(0,f.MZ)({type:String})],v.prototype,"attributionDataUrl",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],v.prototype,"effectiveVisible",null),(0,i.Cg)([(0,f.MZ)({type:p.A})],v.prototype,"fullExtent",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],v.prototype,"hasAttributionData",null),(0,i.Cg)([(0,f.MZ)({type:String,clonable:!1})],v.prototype,"id",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,nonNullable:!0})],v.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,f.MZ)({type:["show","hide","hide-children"]})],v.prototype,"listMode",void 0),(0,i.Cg)([(0,f.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0})],v.prototype,"opacity",void 0),(0,i.Cg)([(0,f.MZ)({clonable:!1})],v.prototype,"parent",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],v.prototype,"parsedUrl",null),(0,i.Cg)([(0,f.MZ)({type:Boolean,readOnly:!0})],v.prototype,"persistenceEnabled",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean})],v.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean})],v.prototype,"attributionVisible",void 0),(0,i.Cg)([(0,f.MZ)({type:d.A})],v.prototype,"spatialReference",void 0),(0,i.Cg)([(0,f.MZ)({type:String})],v.prototype,"title",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],v.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)()],v.prototype,"url",void 0),(0,i.Cg)([(0,f.MZ)({type:g.A})],v.prototype,"visibilityTimeExtent",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,nonNullable:!0})],v.prototype,"visible",void 0),v=(0,i.Cg)([(0,f.$K)("esri.layers.Layer")],v)},92722(e,t,n){n.d(t,{A:()=>r});var i=n(69397);class r{constructor(e=[],t=[],n=!1,i=!1){this.lengths=e??[],this.coords=t??[],this.hasZ=n,this.hasM=i}static fromJSON({lengths:e,coords:t,hasZ:n,hasM:i}){return new r(e,t,n||!1,i||!1)}static fromRect([e,t,n,i]){const s=n-e,o=i-t;return new r([5],[e,t,s,0,0,o,-s,0,0,-o])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((e,t)=>e+t,0)}get usedMemory(){return 64+(0,i.Qf)(this.lengths,this.coords)}get stride(){return 2+(this.hasZ?1:0)+(this.hasM?1:0)}area(){if(this.isPoint)return 0;let e=0,t=0;for(const n of this.lengths){if(n<3)continue;const{stride:i}=this;let r=this.coords[i*t],s=this.coords[i*t+1];for(let o=1;o<n;o+=1){const n=i*(t+o),a=this.coords[n],l=this.coords[n+1];e+=-.5*(a-r)*(l+s),r=a,s=l}t+=n}return e}forEachVertex(e){let t=0;if(this.isPoint)return e(this.coords[0],this.coords[1]);const{stride:n}=this;for(const i of this.lengths){for(let r=0;r<i;r++){const i=n*(t+r);e(this.coords[i],this.coords[i+1])}t+=i}}deltaDecode(){const e=this.clone(),{coords:t,lengths:n}=e;let i=0;const{stride:r}=this;for(const e of n){for(let n=1;n<e;n++){const e=r*(i+n);t[e]+=t[e-r],t[e+1]+=t[e+1-r]}i+=e}return e}clone(e){if(this.isPoint)return new r([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);const t=Array.from(this.lengths),{stride:n,size:i}=this,s=this.coords.slice(0,i*n);return e?(e.set(s),new r(t,e,this.hasZ,this.hasM)):new r(t,Array.from(s),this.hasZ,this.hasM)}justXY(){const{stride:e,size:t}=this;if(2===e)return this;const n=new Array(t*e);for(let t=0,i=0;t<n.length;t+=e)n[i++]=this.coords[t],n[i++]=this.coords[t+1];return new r(this.lengths,n,!1,!1)}}},89186(e,t,n){n.d(t,{f:()=>u});var i=n(5482),r=n(91429),s=n(16930),o=n(87045),a=n(65509),l=n(25943),c=n(36005);const u=e=>{const t=e;let n=class extends t{constructor(){super(...arguments),this.copyright=null,this.minScale=0,this.maxScale=0,this.spatialReference=null,this.tileInfo=null,this.tilemapCache=null}destroy(){this.tilemapCache?.destroy?.()}readMinScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}readMaxScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}get supportsBlankTile(){return this.version>=10.2}readTilemapCache(e,t,n){const i=t.capabilities?.toLowerCase().includes("tilemap");let{minLOD:r,maxLOD:s,minScale:c,maxScale:u}=t;if(null==r&&null==s&&(0!==c||0!==u)){const e=e=>Math.round(1e4*e)/1e4;c=e(c||t.tileInfo.lods[0].scale),u=e(u||t.tileInfo.lods[t.tileInfo.lods.length-1].scale);for(const n of t.tileInfo.lods){const t=e(n.scale);r=t>=c?n.level:r,s=t>=u?n.level:s}}if(i)return new l.d({layer:this,minLOD:r,maxLOD:s});if(t.tileInfo){const e=new o.A;return e.read(t.tileInfo,n),new a.A(e,r,s)}return null}};return(0,i.Cg)([(0,r.MZ)({json:{read:{source:"copyrightText"}}})],n.prototype,"copyright",void 0),(0,i.Cg)([(0,r.MZ)()],n.prototype,"minScale",void 0),(0,i.Cg)([(0,c.w)("service","minScale")],n.prototype,"readMinScale",null),(0,i.Cg)([(0,r.MZ)()],n.prototype,"maxScale",void 0),(0,i.Cg)([(0,c.w)("service","maxScale")],n.prototype,"readMaxScale",null),(0,i.Cg)([(0,r.MZ)({type:s.A})],n.prototype,"spatialReference",void 0),(0,i.Cg)([(0,r.MZ)({readOnly:!0})],n.prototype,"supportsBlankTile",null),(0,i.Cg)([(0,r.MZ)({type:o.A})],n.prototype,"tileInfo",void 0),(0,i.Cg)([(0,r.MZ)()],n.prototype,"tilemapCache",void 0),(0,i.Cg)([(0,c.w)("service","tilemapCache",["capabilities","tileInfo"])],n.prototype,"readTilemapCache",null),(0,i.Cg)([(0,r.MZ)()],n.prototype,"version",void 0),n=(0,i.Cg)([(0,r.$K)("esri.layers.mixins.ArcGISCachedService")],n),n}},63490(e,t,n){n.d(t,{E1:()=>c,Mr:()=>l,TH:()=>a});var i=n(5482),r=n(69540),s=n(25482),o=n(91429);let a=class extends((0,r.OU)(s.o)){constructor(){super(...arguments),this.url=null}};(0,i.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],a.prototype,"lod",void 0),(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],a.prototype,"rasterFunction",void 0),(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],a.prototype,"url",void 0),a=(0,i.Cg)([(0,o.$K)("esri.layers.orientedImagery.core.ElevationSourceDefinitions.ElevationSource")],a);let l=class extends((0,r.OU)(s.o)){constructor(e){super(e),this.constantElevation=null}};(0,i.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"constantElevation",void 0),l=(0,i.Cg)([(0,o.$K)("esri.layers.orientedImagery.core.ElevationSourceDefinitions.ConstantElevation")],l);const c=e=>null!=e&&"number"==typeof e.constantElevation},23281(e,t,n){n.d(t,{eR:()=>_,Qv:()=>P,fs:()=>T,Yp:()=>E,o:()=>O,RR:()=>M,l6:()=>b});var i=n(66552),r=(n(86211),n(28735),n(5482)),s=n(69540),o=n(25482),a=n(91429),l=n(69622),c=n(21325);let u=class extends l.A{set horizontalWKID(e){e?(0,c.fn)({wkid:+e})?this._set("horizontalWKID",+e):this._set("horizontalWKID",e):this._set("horizontalWKID",null)}set verticalWKID(e){e?this._set("verticalWKID",isFinite(e)&&(0,c.fn)({wkid:+e})?+e:null):this._set("verticalWKID",null)}get isAdvanced(){const{affineTransformations:e,focalLength:t,principalOffsetPoint:n,radialDistortionCoefficients:i,tangentialDistortionCoefficients:r}=this;return e?.length>1&&!Number.isNaN(t)&&n?.length>1&&i?.length>1&&r?.length>1}};(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"affineTransformations",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"focalLength",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"principalOffsetPoint",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"radialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"tangentialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"horizontalWKID",null),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"verticalWKID",null),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"x",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"y",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"z",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"type",void 0),u=(0,r.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientation")],u);const h=u;let f=class extends((0,s.OU)((0,o.T)(h))){constructor(){super(...arguments),this.type=1}toString(){const{type:e,horizontalWKID:t,verticalWKID:n,x:i,y:r,z:s,heading:o,pitch:a,roll:l,affineTransformations:c,focalLength:u,principalOffsetPoint:h,radialDistortionCoefficients:f,tangentialDistortionCoefficients:p}=this,d=[e,t,n,i,r,s,o,a,l];return this.isAdvanced&&(c?.forEach(e=>d.push(e)),d.push(u),h?.forEach(e=>d.push(e)),f?.forEach(e=>d.push(e)),p?.forEach(e=>d.push(e))),d.map(e=>Number.isNaN(e)?"":e).join("|")}};(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],f.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],f.prototype,"affineTransformations",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],f.prototype,"focalLength",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],f.prototype,"principalOffsetPoint",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],f.prototype,"radialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],f.prototype,"tangentialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],f.prototype,"heading",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],f.prototype,"pitch",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],f.prototype,"roll",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],f.prototype,"x",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],f.prototype,"y",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],f.prototype,"z",void 0),f=(0,r.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationHPR")],f);const p=f;let d=class extends((0,s.OU)((0,o.T)(h))){constructor(){super(...arguments),this.type=4}toString(){const{type:e,latitude:t,longitude:n,ellipsoidRadius:i,squaredEccentricity:r,properties:s}=this,o=`${s}`.split("|");return o.splice(1,1),`${e}|${t}|${n}|${i}|${r}|${o.join("|")}`}};(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],d.prototype,"latitude",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],d.prototype,"longitude",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],d.prototype,"ellipsoidRadius",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],d.prototype,"squaredEccentricity",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"properties",void 0),d=(0,r.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationLTP")],d);const m=d;let g=class extends((0,s.OU)((0,o.T)(h))){constructor(){super(...arguments),this.type=2}toString(){const{type:e,horizontalWKID:t,verticalWKID:n,x:i,y:r,z:s,omega:o,phi:a,kappa:l,affineTransformations:c,focalLength:u,principalOffsetPoint:h,radialDistortionCoefficients:f,tangentialDistortionCoefficients:p}=this,d=[e,t,n,i,r,s,o,a,l];return this.isAdvanced&&(c?.forEach(e=>d.push(e)),d.push(u),h?.forEach(e=>d.push(e)),f?.forEach(e=>d.push(e)),p?.forEach(e=>d.push(e))),d.map(e=>isNaN(e)?"":e).join("|")}};(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],g.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"affineTransformations",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"focalLength",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"principalOffsetPoint",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"radialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"tangentialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"omega",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"phi",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"kappa",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"x",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"y",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"z",void 0),g=(0,r.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationOPK")],g);const y=g;let v=class extends((0,s.OU)((0,o.T)(h))){constructor(){super(...arguments),this.type=3}get isAdvanced(){const{affineTransformations:e,focalLength:t,principalOffsetPoint:n,radialDistortionCoefficients:i,tangentialDistortionCoefficients:r}=this;return e?.length>1||!Number.isNaN(t)||n?.length>1||i?.length>1||r?.length>1}toString(){const{type:e,horizontalWKID:t,verticalWKID:n,x:i,y:r,z:s,yaw:o,pitch:a,roll:l,affineTransformations:c,focalLength:u,principalOffsetPoint:h,radialDistortionCoefficients:f,tangentialDistortionCoefficients:p}=this,d=[e,t,n,i,r,s,o,a,l];return this.isAdvanced&&(c?.forEach(e=>d.push(e)),d.push(u),h?.forEach(e=>d.push(e)),h?.forEach(e=>d.push(e)),f?.forEach(e=>d.push(e)),p?.forEach(e=>d.push(e))),d.map(e=>Number.isNaN(e)?"":e).join("|")}};(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],v.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"affineTransformations",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"focalLength",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"principalOffsetPoint",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"radialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"tangentialDistortionCoefficients",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"yaw",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"pitch",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"roll",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"x",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"y",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"z",void 0),v=(0,r.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationYPR")],v);const w=v,C=new Map;C.set("2",{desc:"Using Omega Phi Kappa",constructor:y}),C.set("1",{desc:"Using Heading, Pitch and Roll",constructor:p}),C.set("3",{desc:"Using Yaw, Pitch and Roll",constructor:w}),C.set("4",{desc:"Using Local Tangent Plane",constructor:m});var x=n(63490);function _(e,t,n){return e?(0,x.E1)(e)?new x.Mr(e):function(e,t,n){let{url:i}=e;return i?(i=function(e,t,n){return t&&(e=`${t}${e}`),n&&(e+=`${n}`),e}(i,t,n),new x.TH({...e,url:i})):null}(e,t,n):e}const M=new i.J({Minutes:"minutes",Hours:"hours",Days:"days",Weeks:"weeks",Months:"months",Years:"years"}),b=new i.J({Feet:"feet",Meter:"meter"}),T=new i.J({360:"360",Horizontal:"horizontal",Inspection:"inspection",Nadir:"nadir",Oblique:"oblique",Terrestrial360Video:"terrestrial-360-video",TerrestrialFrameVideo:"terrestrial-frame-video",Aerial360Video:"aerial-360-video",AerialFrameVideo:"aerial-frame-video","":null}),A=new Map;A.set("1",function(e){const[t,n,i,r,s,o,a,l,c,u,h,f,p,d,m,g,y,v,w,C,x,_]=e.slice(1);return{horizontalWKID:t,verticalWKID:n,x:i,y:r,z:s,heading:o,pitch:a,roll:l,...R([c,u,h,f,p,d],[g,y],[v,w,C],[x,_],m)}}),A.set("3",function(e){const[t,n,i,r,s,o,a,l,c,u,h,f,p,d,m,g,y,v,w,C,x,_]=e.slice(1);return{horizontalWKID:t,verticalWKID:n,x:i,y:r,z:s,yaw:o,pitch:a,roll:l,...R([c,u,h,f,p,d],[g,y],[v,w,C],[x,_],m)}}),A.set("2",function(e){const[t,n,i,r,s,o,a,l,c,u,h,f,p,d,m,g,y,v,w,C,x,_]=e.slice(1);return{horizontalWKID:t,verticalWKID:n,x:i,y:r,z:s,omega:o,phi:a,kappa:l,...R([c,u,h,f,p,d],[g,y],[v,w,C],[x,_],m)}}),A.set("4",function(e){const[t,n,i,r,s,...o]=e.slice(1),a=A.get(s),l=C.get(s)?.constructor;return a&&l?{latitude:t,longitude:n,ellipsoidRadius:i,squaredEccentricity:r,properties:new l(a([s,"",...o]))}:null});const S=e=>{const t=e.map(e=>parseFloat(e)).filter(e=>!isNaN(e));if(t.length===e.length)return t};function R(e,t,n,i,r){const s=S(e),o=S(t),a=S(n),l=S(i);return{affineTransformations:6===s?.length?s:void 0,focalLength:6===s?.length?parseFloat(r):void 0,principalOffsetPoint:2!==o?.length?[0,0]:o,radialDistortionCoefficients:3!==a?.length?[0,0,0]:a,tangentialDistortionCoefficients:2!==l?.length?[0,0]:l}}function P(e){return Array.isArray(e)&&e?.length>5&&!e.some(isNaN)}function E(e){for(e=e.slice(0,8);e.length<8;)e.push(0);return e}function O(e,t,n){const i=function(e,t){return e?.length?e.map(({field:e,order:n})=>{const i=t.find(t=>t.name.toLowerCase()===e.toLowerCase());return i?{fieldName:i.name,sortOrder:"desc"===n?.toLowerCase()?"desc":"asc"}:null}).filter(e=>null!=e):null}(n,t);if(i?.length)return i;if(!e){const e=t.find(e=>e.name.toLocaleLowerCase()==="sequenceorder".toLocaleLowerCase());return e?[{fieldName:e.name,sortOrder:"asc"}]:null}const r=t.find(t=>t.name.toLowerCase()===e.trim().toLowerCase());return r?[{fieldName:r.name,sortOrder:"asc"}]:null}},90091(e,t,n){n.d(t,{createSampler:()=>P,query:()=>R});var i=n(60999),r=n(49186),s=n(97768),o=n(17676),a=n(86211),l=n(91218),c=n(19419),u=n(4576),h=n(72802);class f{constructor(e,t){this.layer=e,this.parameters=t}}class p extends f{constructor(e,t,n){super(e,n),this.outSpatialReference=t,this.type="geometry"}selectTilesAtLOD(e){if(e<0)this.geometry.coordinates.forEach(e=>e.tile=null);else{const{tileInfo:t,tilemapCache:n}=this.layer,i=g(t,n)[e].level;this.geometry.coordinates.forEach(e=>e.tile=t.tileAt(i,e.x,e.y))}}allElevationTilesFetched(){return!this.geometry.coordinates.some(e=>!e.elevationTile)}clearElevationTiles(){for(const e of this.geometry.coordinates)e.elevationTile!==this.outsideExtentTile&&(e.elevationTile=null)}populateElevationTiles(e){for(const t of this.geometry.coordinates)!t.elevationTile&&t.tile?.id&&(t.elevationTile=e[t.tile.id])}remapTiles(e){for(const t of this.geometry.coordinates){const n=t.tile?.id;t.tile=n?e[n]:null}}getTilesToFetch(){return(0,u.Am)(this.geometry.coordinates.filter(({tile:e,elevationTile:t})=>e?.id&&!t),(e,t)=>e.tile?.id===t.tile?.id).map(({tile:e})=>e)}forEachTileToFetch(e){for(const t of this.geometry.coordinates)t.tile&&!t.elevationTile&&e(t.tile,()=>t.tile=null)}}class d extends f{constructor(e,t,n,i){super(e,n),this.maskExtents=i,this.type="extent",this.elevationTiles=[],this._candidateTiles=[],this._fetchedCandidates=new Set,this.extent=t.clone().intersection(e.fullExtent)}selectTilesAtLOD(e,t){const n=this._maximumLodForRequests(t),i=Math.min(n,e);i<0?this._candidateTiles.length=0:this._selectCandidateTilesCoveringExtentAt(i)}_maximumLodForRequests(e){const{tileInfo:t,tilemapCache:n}=this.layer,i=g(t,n);if(!e)return i.length-1;const r=this.extent;if(null==r)return-1;for(let n=i.length-1;n>=0;n--){const s=i[n],o=s.resolution*t.size[0],a=s.resolution*t.size[1];if(Math.ceil(r.width/o)*Math.ceil(r.height/a)<=e)return n}return-1}allElevationTilesFetched(){return this._candidateTiles.length===this.elevationTiles.length}clearElevationTiles(){this.elevationTiles.length=0,this._fetchedCandidates.clear()}populateElevationTiles(e){for(const t of this._candidateTiles){const n=t.id&&e[t.id];n&&(this._fetchedCandidates.add(t),this.elevationTiles.push(n))}}remapTiles(e){this._candidateTiles=y(this._candidateTiles.map(t=>e[t.id]))}getTilesToFetch(){return this._candidateTiles}forEachTileToFetch(e,t){const n=this._candidateTiles;this._candidateTiles=[],n.forEach(n=>{if(this._fetchedCandidates.has(n))return void t?.(n);let i=!1;e(n,()=>i=!0),i?t?.(n):this._candidateTiles.push(n)}),this._candidateTiles=y(this._candidateTiles,t)}_selectCandidateTilesCoveringExtentAt(e){this._candidateTiles.length=0;const t=this.extent;if(null==t)return;const{tileInfo:n,tilemapCache:i}=this.layer,r=g(n,i)[e],s=n.tileAt(r.level,t.xmin,t.ymin),o=s.extent,a=r.resolution*n.size[0],l=r.resolution*n.size[1],c=Math.ceil((t.xmax-o[0])/a),u=Math.ceil((t.ymax-o[1])/l);for(let e=0;e<u;e++)for(let t=0;t<c;t++){const i=new h.U(s.level,s.row-e,s.col+t);n.updateTileInfo(i),this._tileIsMasked(i)||this._candidateTiles.push(i)}}_tileIsMasked(e){return this.maskExtents?.some(t=>(0,c.gR)(t,e.extent))??!1}}function m(e){return null!=e?.tileInfo}function g(e,t){const n=e.lods;if(m(t)){const{effectiveMinLOD:e,effectiveMaxLOD:i}=t;return n.filter(t=>t.level>=e&&t.level<=i)}return n}function y(e,t){const n={},i=[];for(const r of e){const e=r.id;e&&!n[e]?(n[e]=r,i.push(r)):t?.(r)}const r=i.sort((e,t)=>e.level-t.level);return r.filter((e,n)=>{for(let i=0;i<n;i++){const n=r[i].extent;if(n&&(0,c.gR)(n,e.extent))return t?.(e),!1}return!0})}class v{constructor(e,t){this.data=e,this.safeWidth=.99999999*(e.width-1),this.dx=(e.width-1)/(t[2]-t[0]),this.dy=(e.width-1)/(t[3]-t[1]),this.x0=t[0],this.y1=t[3]}}class w{constructor(e,t=null){if(this.key=e,null!=t){const n=e.extent;this._samplerData=new v(t,n)}}get zmin(){return null!=this._samplerData?this._samplerData.data.minValue:0}get zmax(){return null!=this._samplerData?this._samplerData.data.maxValue:0}get hasNoDataValues(){return!!this._samplerData?.data.hasNoDataValues}sample(e,t){if(null==this._samplerData)return;const{safeWidth:n,data:i,dx:r,dy:s,y1:o,x0:a}=this._samplerData,{width:l,values:c,noDataValue:u}=i,h=C(s*(o-t),0,n),f=C(r*(e-a),0,n),p=Math.floor(h),d=Math.floor(f),m=p*l+d,g=m+l,y=c[m],v=c[g],w=c[m+1],x=c[g+1];if(y!==u&&v!==u&&w!==u&&x!==u){const e=f-d,t=y+(w-y)*e;return t+(v+(x-v)*e-t)*(h-p)}}}function C(e,t,n){return e<t?t:e>n?n:e}var x=n(87378),_=n(48526),M=n(86738),b=n(82799);class T{constructor(e){this.geometry=e,this.spatialReference=e.spatialReference}export(){return this._exporter(this.coordinates,this.spatialReference)}clone(e){const t=new T(this.geometry);return t.spatialReference=this.spatialReference,t.coordinates=e??this.coordinates.map(e=>e.clone()),t._exporter=this._exporter,t}async project(e,t){if(this.spatialReference.equals(e))return this.clone();await(0,l.initializeProjection)([{source:this.spatialReference,dest:e}],{signal:t});const n=new _.A({spatialReference:this.spatialReference,points:this.coordinates.map(e=>[e.x,e.y])}),i=(0,l.project)(n,e);if(!i)return null;const r=this.coordinates.map((e,t)=>{const n=e.clone(),r=i.points[t];return n.x=r[0],n.y=r[1],n}),s=this.clone(r);return s.spatialReference=e,s}projectSync(e){if(this.spatialReference.equals(e))return this.clone();const t=new _.A({spatialReference:this.spatialReference,points:this.coordinates.map(e=>[e.x,e.y])}),n=(0,l.project)(t,e);if(!n)return null;const i=this.coordinates.map((e,t)=>{const i=e.clone(),r=n.points[t];return i.x=r[0],i.y=r[1],i}),r=this.clone(i);return r.spatialReference=e,r}static fromGeometry(e){const t=new T(e);if(e instanceof T)return t.coordinates=e.coordinates.map(e=>e.clone()),t._exporter=(t,n)=>{const i=e.clone(t);return i.spatialReference=n,i},t;switch(e.type){case"point":{const n=e,{hasZ:i,hasM:r}=n;return t.coordinates=i&&r?[new A(n.x,n.y,n.z,n.m)]:i?[new A(n.x,n.y,n.z)]:r?[new A(n.x,n.y,null,n.m)]:[new A(n.x,n.y)],t._exporter=(t,n)=>e.hasM?new M.A(t[0].x,t[0].y,t[0].z,t[0].m,n):new M.A(t[0].x,t[0].y,t[0].z,n),t}case"multipoint":{const n=e,{hasZ:i,hasM:r}=n;return t.coordinates=i&&r?n.points.map(e=>new A(e[0],e[1],e[2],e[3])):i?n.points.map(e=>new A(e[0],e[1],e[2])):r?n.points.map(e=>new A(e[0],e[1],null,e[2])):n.points.map(e=>new A(e[0],e[1])),t._exporter=(t,n)=>e.hasM?new _.A({points:t.map(e=>[e.x,e.y,e.z??0,e.m??0]),hasZ:!0,hasM:!0,spatialReference:n}):new _.A({points:t.map(e=>[e.x,e.y,e.z??0]),spatialReference:n}),t}case"polyline":{const n=e,i=[],r=[],{hasZ:s,hasM:o}=e;let a=0;for(const e of n.paths)if(r.push([a,a+e.length]),a+=e.length,s&&o)for(const t of e)i.push(new A(t[0],t[1],t[2],t[3]));else if(s)for(const t of e)i.push(new A(t[0],t[1],t[2]));else if(o)for(const t of e)i.push(new A(t[0],t[1],null,t[2]));else for(const t of e)i.push(new A(t[0],t[1]));return t.coordinates=i,t._exporter=(t,n)=>{const i=e.hasM?t.map(e=>[e.x,e.y,e.z??0,e.m??0]):t.map(e=>[e.x,e.y,e.z??0]),s=r.map(e=>i.slice(e[0],e[1]));return new b.A({paths:s,hasM:e.hasM,hasZ:!0,spatialReference:n})},t}}}}class A{constructor(e,t,n=null,i=null,r=null,s=null){this.x=e,this.y=t,this.z=n,this.m=i,this.tile=r,this.elevationTile=s}clone(){return new A(this.x,this.y,this.z,this.m)}}var S=n(57984);async function R(e,t,n){if(!e)throw new r.A(N,"Elevation queries require an elevation layer to fetch tiles from");if(!t||!(t instanceof T)&&"point"!==t.type&&"multipoint"!==t.type&&"polyline"!==t.type)throw new r.A("elevation-query:invalid-geometry","Only point, polyline and multipoint geometries can be used to query elevation");const i={...V,...n},o=i.signal;if("integrated-mesh-3dtiles"===e.type){const r=T.fromGeometry(t);if(e.queryElevationCallback&&e.replacesTerrain){const s=12.9*(n?.minDemResolution||0)+.71,a=await e.queryElevationCallback(r,{signal:o,maxGeometricError:s}),l=r.coordinates.map(()=>({demResolution:1,source:e})),c=await a.project(t.spatialReference,o);if(c){if(void 0!==i.noDataValue&&i.noDataValue!==Number.MAX_VALUE)for(const e of c.coordinates)e.z===Number.MAX_VALUE&&(e.z=i.noDataValue);return{geometry:c.export(),noDataValue:i.noDataValue??Number.MAX_VALUE,sampleInfo:l}}}const s=r.coordinates.map(()=>({demResolution:-1,source:e}));return{geometry:r.export(),noDataValue:Number.MAX_VALUE,sampleInfo:s}}const c=new p(e,t.spatialReference,i);return await e.load({signal:o}),await async function(e,t,n){let i;const s=e.layer.tileInfo.spatialReference;if(t instanceof T?i=await t.project(s,n):(await(0,l.initializeProjection)([{source:t.spatialReference,dest:s}],{signal:n}),i=(0,l.project)(t,s)),!i)throw new r.A("elevation-query:spatial-reference-mismatch",`Cannot query elevation in '${t.spatialReference.wkid}' on an elevation service in '${s.wkid}'`);e.geometry=T.fromGeometry(i)}(c,t,o),await Z(c,o),await L(c,o),function(e){e.geometry.coordinates.forEach(t=>{const n=t.elevationTile;let i=e.parameters.noDataValue;if(n){const e=n.sample(t.x,t.y);null==e?t.elevationTile=null:i=e}t.z=i})}(c),async function(e,t){const n=await e.geometry.project(e.outSpatialReference,t);(0,s.Lw)(n);const i={geometry:n.export(),noDataValue:e.parameters.noDataValue};return e.parameters.returnSampleInfo&&(i.sampleInfo=function(e){const t=e.layer.tileInfo,n=(0,a.GA)(t.spatialReference);return e.geometry.coordinates.map(i=>{let r=-1;return i.elevationTile&&i.elevationTile!==e.outsideExtentTile&&(r=t.lodAt(i.elevationTile.key.level).resolution*n),{demResolution:r,source:-1===r?void 0:e.layer}})}(e)),e.geometry.coordinates.forEach(e=>{e.tile=null,e.elevationTile=null}),i}(c,o)}async function P(e,t,n){if(e=Array.isArray(e)?e:[e],0===(e=n?.ignoreInvisibleLayers?e.filter(e=>e.visible):e.slice()).length)throw new r.A(N,"Elevation queries require at least one elevation layer to fetch tiles from");if(!t||"extent"!==t.type)throw new r.A("elevation-query:invalid-extent","Invalid or undefined extent");const i={...V,...n,returnSampleInfo:!0},s=E(e[e.length-1],t,i);return 1===e.length?s:O(e,t,await s,i)}async function E(e,t,n,i){const r=n.signal;await e.load({signal:r});const s=t.spatialReference,o=e.tileInfo.spatialReference;s.equals(o)||(await(0,l.initializeProjection)([{source:s,dest:o}],{signal:r}),t=(0,l.project)(t,o));const a=new d(e,t,n,i);await Z(a,r),await L(a,r);const c=a.elevationTiles,u=a.layer.tileInfo,h=a.parameters.noDataValue;return new S.C({noDataValue:h,tiles:c,tileInfo:u})}async function O(e,t,n,i){if(e.pop(),!e.length)return n;const r=n.samplers.filter(e=>!e.tile.hasNoDataValues).map(e=>(0,c.VY)(e.extent)),s=await E(e[e.length-1],t,i,r);if(0===s.samplers.length)return n;const o=n.samplers.concat(s.samplers),a=i.noDataValue;return O(e,t,new S.C({samplers:o,noDataValue:a}),i)}async function Z(e,t){"geometry"===e.type&&function(e){if(null==e.layer.fullExtent)return;const t=new w(new h.U(-1,-1,-1));t.sample=()=>e.parameters.noDataValue,e.outsideExtentTile=t;const n=e.layer.fullExtent;e.geometry.coordinates.forEach(e=>{const i=e.x,r=e.y;(i<n.xmin||i>n.xmax||r<n.ymin||r>n.ymax)&&(e.elevationTile=t)})}(e);const n=e.parameters.demResolution;if("number"==typeof n)!function(e,t){const n=function(e,t){const{tileInfo:n,tilemapCache:i}=e.layer,r=t/(0,a.GA)(n.spatialReference),s=g(n,i);let o=s[0],l=0;for(let e=1;e<s.length;e++){const t=s[e];Math.abs(t.resolution-r)<Math.abs(o.resolution-r)&&(o=t,l=e)}return l}(e,t);e.selectTilesAtLOD(n)}(e,n);else if("finest-contiguous"===n)await async function(e,t){const{tileInfo:n,tilemapCache:i}=e.layer,r=D(n,i,e.parameters.minDemResolution);await I(e,r,t)}(e,t);else{if("auto"!==n)throw new r.A("elevation-query:invalid-dem-resolution",`Invalid dem resolution value '${n}', expected a number, "finest-contiguous" or "auto"`);await async function(e,t){(function(e){const{tileInfo:t,tilemapCache:n}=e.layer,i=D(t,n,e.parameters.minDemResolution);e.selectTilesAtLOD(i,e.parameters.maximumAutoTileRequests)})(e),function(e){const t=e.layer.tileInfo;let n=0;const i={},r=e=>{null!=e.id&&(e.id in i?i[e.id]++:(i[e.id]=1,n++))},s=e=>{if(null==e.id)return;const t=i[e.id];1===t?(delete i[e.id],n--):i[e.id]=t-1};e.forEachTileToFetch(r,s);let o=!0;for(;o&&(o=!1,e.forEachTileToFetch(i=>{n<=e.parameters.maximumAutoTileRequests||(s(i),t.upsampleTile(i)&&(o=!0),r(i))},s),o););}(e);const n=e.layer.tilemapCache;if(!n||m(n))return z(e,t);const r=e.getTilesToFetch(),s={},a=r.map(async e=>{const r=new h.U(0,0,0),a=await(0,i.Ke)(n.fetchAvailabilityUpsample(e.level,e.row,e.col,r,{signal:t}));!1!==a.ok?null!=e.id&&(s[e.id]=r):(0,o.QP)(a.error)});await(0,o.qr)(Promise.all(a),t),e.remapTiles(s)}(e,t)}}async function I(e,t,n){const i=e.layer;if(e.selectTilesAtLOD(t),t<0)return;const s=i.tilemapCache,a=e.getTilesToFetch();try{if(s&&!m(s))await(0,o.qr)(Promise.all(a.map(e=>s.fetchAvailability(e.level,e.row,e.col,{signal:n}))),n);else if(await L(e,n),!e.allElevationTilesFetched())throw e.clearElevationTiles(),new r.A("elevation-query:has-unavailable-tiles","Some elevation tiles are unavailable")}catch(i){(0,o.QP)(i),await I(e,t-1,n)}}async function z(e,t){const n=e.layer.tileInfo;await L(e,t);let i=!1;e.forEachTileToFetch((e,t)=>{n.upsampleTile(e)?i=!0:t()}),i&&await z(e,t)}function D(e,t,n=0){const i=g(e,t);let r=i.length-1;if(n>0){const t=n/(0,a.GA)(e.spatialReference),s=i.findIndex(e=>e.resolution<t);0===s?r=0:s>0&&(r=s-1)}return r}const V={maximumAutoTileRequests:20,noDataValue:0,returnSampleInfo:!1,demResolution:"auto",minDemResolution:0,signal:null};async function L(e,t){const n=e.getTilesToFetch(),i={},r=e.parameters.cache,s=e.parameters.noDataValue,a={noDataValue:s,signal:t},l=n.map(async t=>{if(null==t.id)return;const n=`${e.layer.uid}:${t.id}:${s}`,o=r?.get(n),l=o??x.A.from(await e.layer.fetchTile(t.level,t.row,t.col,a));r?.put(n,l),i[t.id]=new w(t,l)});await(0,o.qr)(Promise.allSettled(l),t),e.populateElevationTiles(i)}const N="elevation-query:invalid-layer"},7236(e,t,n){n.d(t,{A:()=>c});var i=n(5482),r=n(65529),s=n(53966),o=n(91429),a=n(86738),l=n(28735);let c=class extends r.nJ{queryElevation(e){const t=this.projectIfRequired(e,this.spatialReference);if(!t)return null;switch(e.type){case"point":return function(e,t,n){return e.hasZ=!0,e.z=n.elevationAt(t.x,t.y),e}(e,t,this);case"polyline":return function(e,t,n){u.spatialReference=t.spatialReference;const i=e.hasM&&!e.hasZ;for(let r=0;r<e.paths.length;r++){const s=e.paths[r],o=t.paths[r];for(let e=0;e<s.length;e++){const t=s[e],r=o[e];u.x=r[0],u.y=r[1],i&&(t[3]=t[2]),t[2]=n.elevationAt(u.x,u.y)}}return e.hasZ=!0,e}(e,t,this);case"multipoint":return function(e,t,n){u.spatialReference=t.spatialReference;const i=e.hasM&&!e.hasZ;for(let r=0;r<e.points.length;r++){const s=e.points[r],o=t.points[r];u.x=o[0],u.y=o[1],i&&(s[3]=s[2]),s[2]=n.elevationAt(u.x,u.y)}return e.hasZ=!0,e}(e,t,this);default:return null}}projectIfRequired(e,t){if(null==e)return null;const n=e.spatialReference;if(n.equals(t))return e;const i=(0,l.Cv)(e,t);return i||s.A.getLogger(this).error(`Cannot project geometry spatial reference (wkid:${n.wkid}) to elevation sampler spatial reference (wkid:${t.wkid})`),i}};c=(0,i.Cg)([(0,o.$K)("esri.layers.support.ElevationSampler")],c);const u=new a.A},87378(e,t,n){n.d(t,{A:()=>a});var i,r=n(34275),s=n(56507);const o=Symbol("ElevationTileDataClass");class a{static{i=o}constructor({values:e,width:t,height:n,noDataValue:s}){this[i]=!0,this._hasNoDataValues=null,this._minValue=null,this._maxValue=null,this.values=(0,r.vZ)(e)?e:new Float32Array(e),this.width=t,this.height=n,this.noDataValue=s}get hasNoDataValues(){if(null==this._hasNoDataValues){const e=this.noDataValue;this._hasNoDataValues=this.values.includes(e)}return this._hasNoDataValues}get minValue(){return this._ensureBounds(),this._minValue}get maxValue(){return this._ensureBounds(),this._maxValue}get usedMemory(){return this.values.byteLength+256}_ensureBounds(){if(null!=this._minValue)return;const{noDataValue:e,values:t}=this;let n=1/0,i=-1/0,r=!0;for(const s of t)s===e?this._hasNoDataValues=!0:(n=s<n?s:n,i=s>i?s:i,r=!1);r?(this._minValue=0,this._maxValue=0):(this._minValue=n,this._maxValue=i>-3e38?i:0)}static{this.from=(0,s.qf)(a)}}},57984(e,t,n){n.d(t,{C:()=>u});var i=n(5482),r=n(53966),s=n(86211),o=n(91429),a=n(16930),l=n(19419),c=n(7236);let u=class extends c.A{get spatialReference(){return this.extent.spatialReference}constructor(e){const t=e.noDataValue,n="tiles"in e?e.tiles.map(n=>new h({tile:n,tileInfo:e.tileInfo,noDataValue:t})):e.samplers;super({noDataValue:t,samplers:n});const i=n[0];if(i){this.extent=i.extent.clone();const{min:e,max:t}=i.demResolution;this.demResolution={min:e,max:t};for(let e=1;e<n.length;e++){const t=n[e];this.extent.union(t.extent),this.demResolution.min=Math.min(this.demResolution.min,t.demResolution.min),this.demResolution.max=Math.max(this.demResolution.max,t.demResolution.max)}}else{const t="tileInfo"in e?e.tileInfo:null;this.extent=(0,l.w1)((0,l.vt)(),t?.spatialReference??a.A.WGS84),this.demResolution={min:0,max:0}}}elevationAt(e,t){let n;for(const i of this.samplers)if(i.containsAt(e,t)&&(n=i.elevationAt(e,t),n!==i.noDataValue))return n;return null!=n?n:(r.A.getLogger(this).warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler`),this.noDataValue)}};(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],u.prototype,"noDataValue",void 0),(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],u.prototype,"samplers",void 0),u=(0,i.Cg)([(0,o.$K)("esri.layers.support.TileElevationSampler")],u);let h=class extends c.A{get spatialReference(){return this.extent.spatialReference}constructor(e){super(e);const t=e.tile.key.extent;this.extent=(0,l.w1)(t,e.tileInfo.spatialReference),this.extent.zmin=e.tile.zmin,this.extent.zmax=e.tile.zmax;const n=(0,s.GA)(e.tileInfo.spatialReference),i=e.tileInfo.lodAt(e.tile.key.level).resolution*n;this.demResolution={min:i,max:i}}contains(e){const t=this.projectIfRequired(e,this.spatialReference);return null!=t&&this.containsAt(t.x,t.y)}containsAt(e,t){return(0,l.Rj)(this.tile.key.extent,e,t)}elevationAt(e,t){return this.containsAt(e,t)?this.tile.sample(e,t)??this.noDataValue:this.noDataValue}};(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],h.prototype,"tile",void 0),(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],h.prototype,"noDataValue",void 0),(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],h.prototype,"tileInfo",void 0),h=(0,i.Cg)([(0,o.$K)("esri.layers.support.TileElevationSampler.SingleTileElevationSampler")],h)},65509(e,t,n){n.d(t,{A:()=>s});var i=n(49186),r=n(17676);class s{constructor(e,t=0,n=e.lods[e.lods.length-1].level){this.tileInfo=e,this.minLOD=t,this.maxLOD=n,e.lodAt(t)||(this.minLOD=e.lods[0].level),e.lodAt(n)||(this.maxLOD=e.lods[e.lods.length-1].level)}get effectiveMinLOD(){return this.minLOD??this.tileInfo.lods[0].level}get effectiveMaxLOD(){return this.maxLOD??this.tileInfo.lods[this.tileInfo.lods.length-1].level}getAvailability(e,t,n){const i=this.tileInfo?.lodAt(e);return!i||e<this.minLOD||e>this.maxLOD?"unavailable":i.cols&&i.rows?n>=i.cols[0]&&n<=i.cols[1]&&t>=i.rows[0]&&t<=i.rows[1]?"unknown":"unavailable":"unknown"}async fetchAvailability(e,t,n,s){await(0,r.NO)(s);const o=this.getAvailability(e,t,n);if("unavailable"===o)throw new i.A("tile-map:tile-unavailable","Tile is not available",{level:e,row:t,col:n});return o}async fetchAvailabilityUpsample(e,t,n,i,s){await(0,r.NO)(s),i.level=e,i.row=t,i.col=n;const o=this.tileInfo;return o.updateTileInfo(i),this.fetchAvailability(e,t,n,s).catch(e=>{if((0,r.zf)(e))throw e;if(o.upsampleTile(i))return this.fetchAvailabilityUpsample(i.level,i.row,i.col,i,s);throw e})}}},77548(e,t,n){n.d(t,{Gh:()=>O,tk:()=>A,BR:()=>T,p2:()=>M,qd:()=>S,wI:()=>b,G$:()=>P,$x:()=>R,Ov:()=>w,cM:()=>f,UC:()=>p,Qz:()=>d,OP:()=>E,TU:()=>v,F2:()=>m,XX:()=>y,Qi:()=>C,jy:()=>x});var i=n(70333),r=n(11254),s=n(7762),o=(n(84952),n(36563)),a=n(36708),l=n(4146);const c=new WeakMap;function u(e){return!e.destroyed&&(c.has(e)||e.addHandles([(0,a.wB)(()=>{const{parent:t}=e;return!!(t&&t instanceof l.A)&&("catalog-dynamic-group"===t.type||u(t))},t=>c.set(e,t),a.pc),(0,o.hA)(()=>c.delete(e))]),c.get(e))}function h(e,t){return null!=e&&"object"==typeof e&&"type"in e&&e.type===t}function f(e){return h(e,"knowledge-graph")&&"layers"in e}function p(e){return h(e,"knowledge-graph-sublayer")}function d(e){return h(e,"link-chart")&&"layers"in e}function m(e){return h(e,"subtype-group")&&"sublayers"in e}function g(e){const t=e.parent;return function(e){return"group"===e?.type}(t)&&t.tables.includes(e)}n(16215);const y={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function v(e){const t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function w(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function C(e){return null!=e&&"object"==typeof e&&"featureReduction"in e}function x(e){return function(e){return h(e,"catalog-footprint")}(e)||function(e){return h(e,"feature")}(e)&&function(e){return"feature"===e?.type&&"feature-layer"===e.source?.type}(e)||function(e){return h(e,"oriented-imagery")}(e)||function(e){return"subtype-sublayer"===e?.type}(e)}function _(e){const t=e?.type;return"binning"===t||"cluster"===t}function M(e,t){if(!x(e))return;const n=t?.graphic,i="featureReduction"in e?e.featureReduction:null;if(n){if(n.isAggregate){const e=n.origin;return e&&"featureReductionProvider"in e&&i?_(i)?i:null:void 0}return e}return t?.checkFeatureReduction&&i?_(i)?i:null:e}async function b(e,t){const n=i.id?.findServerInfo(e);if(null!=n?.currentVersion)return n.owningSystemUrl||null;const s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;const o=`${e.slice(0,s)}/rest/info`,a=null!=t?t.signal:null,{data:l}=await(0,r.A)(o,{query:{f:"json"},responseType:"json",signal:a});return l?.owningSystemUrl||null}function T(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"catalog":case"catalog-footprint":case"csv":case"feature":case"parquet":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function A(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":case"knowledge-graph-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}function S(e){const t=new s.A;for(const n of e.allLayers.concat(e.allTables))u(n)||g(n)||"annotation-feature"===n.type||"dimension-feature"===n.type||("charts"in n&&t.push(n),"subtype-group"===n.type&&t.push(...n.sublayers));return t}function R(e,t){return null}function P(e){return null}function E(e){return!e||"Feature Service"===e.type&&!e.sourceUrl}function O(e,t){if(!t||!E(e))return;const n=(e.url,null);n&&(e.url=n)}},38969(e,t,n){n.d(t,{i:()=>r});var i=n(37955);function r(e,t){return new Promise((n,r)=>{e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA?n():(t((0,i.Oo)(e,"canplay",n)),t((0,i.Oo)(e,"error",r)))})}},73133(e,t,n){n.d(t,{j:()=>i});const i=(0,n(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:"unknown"})},7861(e,t,n){n.d(t,{L:()=>r});var i=n(11254);async function r(e,t){return(await(0,i.A)(e,{responseType:"json",query:{f:"json",...t?.customParameters,token:t?.apiKey}})).data}},16215(e,t,n){n.d(t,{S:()=>r,Y:()=>i});const i=Symbol("BasemapInstance");function r(e){return null!=e&&"object"==typeof e&&i in e}},79677(e,t,n){n.d(t,{A:()=>f});var i,r=n(5482),s=n(25482),o=n(88930),a=n(91429),l=n(98623),c=n(10184),u=n(36005),h=n(43937);let f=class extends s.o{static{i=this}static get allTime(){return p}static get empty(){return d}static fromArray(e){return new i({start:null!=e[0]?new Date(e[0]):e[0],end:null!=e[1]?new Date(e[1]):e[1]})}constructor(e){super(e),this.end=null,this.start=null}readEnd(e,t){return null!=t.end?new Date(t.end):null}writeEnd(e,t){t.end=e?.getTime()??null}get isAllTime(){return this.equals(i.allTime)}get isEmpty(){return this.equals(i.empty)}readStart(e,t){return null!=t.start?new Date(t.start):null}writeStart(e,t){t.start=e?.getTime()??null}clone(){return new i({end:this.end,start:this.start})}equals(e){if(!e)return!1;const t=this.start?.getTime()??this.start,n=this.end?.getTime()??this.end,i=e.start?.getTime()??e.start,r=e.end?.getTime()??e.end;return t===i&&n===r}expandTo(e,t=l.qU){if(this.isEmpty||this.isAllTime||"unknown"===e)return this.clone();let n=this.start;n&&(n=(0,o.lL)(n,new c.A({value:1,unit:e}),t));let r=this.end;if(r){const n=(0,o.lL)(r,new c.A({value:1,unit:e}),t);r=r.getTime()===n.getTime()?n:(0,o.S1)(n,1,e,t)}return new i({start:n,end:r})}intersection(e){if(!e)return this.clone();if(this.isEmpty||e.isEmpty)return i.empty;if(this.isAllTime)return e.clone();if(e.isAllTime)return this.clone();const t=this.start?.getTime()??-1/0,n=this.end?.getTime()??1/0,r=e.start?.getTime()??-1/0,s=e.end?.getTime()??1/0;let o,a;return r>=t&&r<=n?o=r:t>=r&&t<=s&&(o=t),n>=r&&n<=s?a=n:s>=t&&s<=n&&(a=s),null==o||null==a||isNaN(o)||isNaN(a)?i.empty:new i({start:o===-1/0?null:new Date(o),end:a===1/0?null:new Date(a)})}offset(e,t,n=l.qU){if(this.isEmpty||this.isAllTime||"unknown"===t)return this.clone();const r=new i,{start:s,end:a}=this;return null!=s&&(r.start=(0,o.S1)(s,e,t,n)),null!=a&&(r.end=(0,o.S1)(a,e,t,n)),r}toArray(){return this.isEmpty?[void 0,void 0]:[this.start?.getTime()??null,this.end?.getTime()??null]}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return p.clone();const t=null!=this.start&&null!=e.start?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,n=null!=this.end&&null!=e.end?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new i({start:t,end:n})}};(0,r.Cg)([(0,a.MZ)({type:Date,json:{write:{allowNull:!0}}})],f.prototype,"end",void 0),(0,r.Cg)([(0,u.w)("end")],f.prototype,"readEnd",null),(0,r.Cg)([(0,h.K)("end")],f.prototype,"writeEnd",null),(0,r.Cg)([(0,a.MZ)({readOnly:!0,json:{read:!1}})],f.prototype,"isAllTime",null),(0,r.Cg)([(0,a.MZ)({readOnly:!0,json:{read:!1}})],f.prototype,"isEmpty",null),(0,r.Cg)([(0,a.MZ)({type:Date,json:{write:{allowNull:!0}}})],f.prototype,"start",void 0),(0,r.Cg)([(0,u.w)("start")],f.prototype,"readStart",null),(0,r.Cg)([(0,h.K)("start")],f.prototype,"writeStart",null),f=i=(0,r.Cg)([(0,a.$K)("esri.time.TimeExtent")],f);const p=new f,d=new f({start:void 0,end:void 0})},10184(e,t,n){n.d(t,{A:()=>u});var i=n(5482),r=n(69540),s=n(25482),o=n(88930),a=n(91429),l=n(73133),c=n(93223);let u=class extends((0,r.OU)(s.o)){constructor(e){super(e),this.unit="milliseconds",this.value=0}toMilliseconds(){return(0,o.t)(this.value,this.unit,"milliseconds")}};(0,i.Cg)([(0,c.e)(l.j,{nonNullable:!0})],u.prototype,"unit",void 0),(0,i.Cg)([(0,a.MZ)({type:Number,json:{write:!0},nonNullable:!0})],u.prototype,"value",void 0),u=(0,i.Cg)([(0,a.$K)("esri.time.TimeInterval")],u)},32728(e,t,n){n.d(t,{YH:()=>a,hG:()=>s,nu:()=>l,wp:()=>o}),n(34727);var i=n(35522),r=n(51850);function s(e){const t=e[0]*e[0]+e[4]*e[4]+e[8]*e[8],n=e[1]*e[1]+e[5]*e[5]+e[9]*e[9],i=e[2]*e[2]+e[6]*e[6]+e[10]*e[10];return Math.sqrt(Math.max(t,n,i))}function o(e,t){const n=Math.sqrt(t[0]*t[0]+t[4]*t[4]+t[8]*t[8]),r=Math.sqrt(t[1]*t[1]+t[5]*t[5]+t[9]*t[9]),s=Math.sqrt(t[2]*t[2]+t[6]*t[6]+t[10]*t[10]);return(0,i.hZ)(e,n,r,s),e}function a(e,t,n){n=n||e;const r=(0,i.Om)(e,t);(0,i.hZ)(n,e[0]-r*t[0],e[1]-r*t[1],e[2]-r*t[2]),(0,i.S8)(n,n)}function l(e,t,n,s=(0,r.vt)()){const o=(0,i.Bw)(e),a=(0,i.Bw)(t),l=(0,i.Om)(e,t)/(o*a);if(l<.9999999999999999){const r=Math.acos(l),h=((1-n)*o+n*a)/Math.sin(r),f=h/o*Math.sin((1-n)*r),p=h/a*Math.sin(n*r);return(0,i.hs)(c,e,f),(0,i.hs)(u,t,p),(0,i.WQ)(s,c,u)}return(0,i.Cc)(s,e,t,n)}(0,r.vt)(),(0,r.vt)(),(0,r.vt)();const c=(0,r.vt)(),u=(0,r.vt)()},68747(e,t,n){n.r(t),n.d(t,{generateCombinationsPanoramicWorker:()=>T,generateCombinationsWorker:()=>b});var i=n(34727),r=n(17676);n(17799),n(69052),n(799),n(86211),n(18047),new Map,n(77690),n(29242),n(51850),n(37585),n(35522);var s=n(49186),o=(n(56507),n(86738),n(39829),n(82799),n(16930));n(34403),n(21325),n(91218),n(65708),n(49590),n(27749),n(39663),n(7817),n(10222),n(4576),n(63490),n(6800),n(87811);var a=n(53966),l=(n(44208),n(27921),n(5443));n(83276),n(19419),n(38732),n(87772),n(23281),n(90091),n(87378),n(22796),n(57984),n(87045),n(72802),n(7861);const c=[1920,1080],u={xmin:-150,ymin:1,xmax:20,ymax:80,spatialReference:{wkid:4326}},h=(o.A.fromJSON(u.spatialReference),.001);new l.A({xmin:u.xmin+h,ymin:u.ymin+h,xmax:u.xmax-h,ymax:u.ymax-h,spatialReference:u.spatialReference}),(0,i.KJ)(Math.acos(.05));var f=n(5482),p=n(97768),d=n(61893),m=n(10107),g=n(64108);let y=class extends d.Z{constructor(e){super(e),this.autoLoad=!1,this.customParameters=null,this.datasetFormat=null,this.url=null,this.rotation=null}destroy(){this._cache=(0,p.pR)(this._cache)}get layer(){return this._cache}get size(){if(!this._cache?.loaded||!this._cache.serviceRasterInfo)return;const{serviceRasterInfo:e}=this._cache;return[e.width,e.height]}async load(e){if(this._cache?.loaded)return await this._cache.load(e),{layer:this._cache,size:this.size};const{url:t,customParameters:i}=this;let s=this.datasetFormat;if(!t)throw new Error("URL is required to load NonPanoramicMedia.");const o=await n.e(7835).then(n.bind(n,97835));if((0,r.Te)(e),s||(s=o.guessExtensionFromURI(t)),!s){try{s=await o.getDatasetFormat(t)}catch(e){a.A.getLogger(this).warn("non-panoramic-media:dataset-format",e)}(0,r.Te)(e)}s??="UNKNOWN FORMAT",this.datasetFormat=s;const l=(await Promise.all([n.e(7373),n.e(9235),n.e(3500),n.e(1003),n.e(2806),n.e(124)]).then(n.bind(n,90124))).default;(0,r.Te)(e),this._cache=new l({url:t,ioConfig:{skipExtensions:["aux.xml","jgw"],skipMapInfo:!0,datasetFormat:s},customParameters:i??void 0});const c=this._cache.load(e);return this.addResolvingPromise(c),await c,(0,r.Te)(e),{layer:this._cache,size:this.size}}};(0,f.Cg)([(0,m.MZ)()],y.prototype,"_cache",void 0),(0,f.Cg)([(0,m.MZ)()],y.prototype,"autoLoad",void 0),(0,f.Cg)([(0,m.MZ)()],y.prototype,"customParameters",void 0),(0,f.Cg)([(0,m.MZ)()],y.prototype,"datasetFormat",void 0),(0,f.Cg)([(0,m.MZ)()],y.prototype,"url",void 0),(0,f.Cg)([(0,m.MZ)()],y.prototype,"layer",null),(0,f.Cg)([(0,m.MZ)()],y.prototype,"rotation",void 0),(0,f.Cg)([(0,m.MZ)()],y.prototype,"size",null),y=(0,f.Cg)([(0,g.$)("esri.widgets.OrientedImageryViewer.support.NonPanoramicMedia")],y);var v=n(37955),w=n(38969);class C extends s.A{constructor(e,t,n){super(e,t,n),this.name="unknown",this.name=e}}const x=new Set(["JPG","JPEG","TIFF","TIF","MRF"]),_=new Set(["MRF","TIFF","TIF"]);let M=class extends d.Z{constructor(e){super(e),this._size=[0,0],this._cache=null,this.autoLoad=!1,this.cameraHeading=null,this.extension=null,this.imagePyramid=null,this.type="image",this.uiStrings={}}destroy(){this._cache=null}get horizonPitch(){const{matrix:e}=this;return e?(0,i.KJ)(Math.asin(-e[6])):0}get horizonRoll(){const{matrix:e}=this;return e?(0,i.KJ)(Math.atan(e[7]/e[8])):0}get horizonYaw(){const{matrix:e,cameraHeading:t}=this;return e?(0,i.KJ)(Math.atan2(e[3],e[0])):t?-t:0}get size(){return this._size}async load(e){const{guessExtensionFromURI:t}=await n.e(7835).then(n.bind(n,97835));if((0,r.Te)(e),"video"===this.type)return this.loadVideoMesh(e);let i=this.extension;if(i||(i=t(this.url)),!i||!x.has(i))throw new C("unsupported-format",this.uiStrings["unsupported-format"]??"Unsupported image format: {extension}",{datasetFormat:i??"UNKNOWN FORMAT"});return _.has(i)?this.loadOptimizedImageMesh(e):this.loadImageMesh(e)}async loadOptimizedImageMesh(e){const{loadMeshes:t,loadPyramid:i,loadRaster:s}=await Promise.all([n.e(1843),n.e(7005),n.e(6261),n.e(118),n.e(8449)]).then(n.bind(n,21060)),o=await s(this.url,e);(0,r.Te)(e),this.imagePyramid=await i(o,{pitch:this.horizonPitch,yaw:this.horizonYaw,roll:this.horizonRoll},e),(0,r.Te)(e);const a=this.imagePyramid.getLowResolutionTiles(),l=await t(a,e);return(0,r.Te)(e),this._size=this.imagePyramid.imageSize,{meshOrMeshes:l,size:this._size,tileKeys:a?.map(e=>e.key)}}async loadVideoMesh(e){const{createImageSphere:t}=await Promise.all([n.e(1843),n.e(7005),n.e(6261),n.e(118),n.e(8449)]).then(n.bind(n,21060));if((0,r.Te)(e),this._cache){const n=await t({data:this._cache,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,r.Te)(e),{meshOrMeshes:n,size:this._size}}const i=await this._resolveMedia(e);(0,r.Te)(e),this._cache=i.media,this._size=[...c];const s=await t({data:this._cache,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,r.Te)(e),{meshOrMeshes:s,size:this._size}}async loadImageMesh(e){const{createImageSphere:t}=await Promise.all([n.e(1843),n.e(7005),n.e(6261),n.e(118),n.e(8449)]).then(n.bind(n,21060));if((0,r.Te)(e),this._cache){const n=await t({data:this._cache,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,r.Te)(e),{meshOrMeshes:n,size:this._size}}const i=await this._resolveMedia(e);(0,r.Te)(e),this._cache=i.media;const s=i.mesh;return this._size=[i.media.width,i.media.height],{meshOrMeshes:s,size:this._size}}async _resolveMedia(e){const t=Promise.withResolvers(),i=(0,r.u7)(e?.signal,t.resolve),s="video"===this.type?document.createElement("video"):document.createElement("img");s.crossOrigin="anonymous",s.src=this.url;let o=null;const a="video"===this.type?(0,w.i)(s,this.addHandles):await new Promise((e,t)=>{o=[(0,v.on)(s,"error",e=>{t(e)}),(0,v.on)(s,"load",e)]}).finally(()=>{o?.forEach(e=>e.remove()),o=null}),l=Promise.race([a,t.promise]);this.addResolvingPromise(l);try{await l}finally{i?.remove()}(0,r.Te)(e);const c=s;if(!c)throw new C("unknown","Could not load media",{url:this.url});const{createImageSphere:u}=await Promise.all([n.e(1843),n.e(7005),n.e(6261),n.e(118),n.e(8449)]).then(n.bind(n,21060));(0,r.Te)(e);const h=await u({data:s,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,r.Te)(e),{media:c,mesh:h}}};function b(e){return function(e,t){const{cameraPitch:n,cameraRoll:i,cameraLocation:r}=e,{x:s,y:o,z:a,spatialReference:l}=r;if(t.every(e=>0===e)||!t||!t.length||!l)throw new Error("Invalid parameters");const[c,u,,h,f]=t,p=[-h,0,h],d=[-f,0,f],m=[-c,0,c],g=[-u,0,u],y=[];for(const t of p)for(const r of d)for(const c of m)for(const u of m)for(const h of g){const f={...e};f.cameraPitch=n+t,f.cameraRoll=i+r,f.cameraLocation={x:s+c,y:o+u,z:a?a+h:0,spatialReference:{wkid:l.wkid}},y.push(f)}return y}(e.imageToWorldProps,e.accuracyParameters)}function T(e){return function(e,t){const{cameraHeading:n,cameraLocation:i}=e,{x:r,y:s,z:o,spatialReference:a}=i;if(!t||t.every(e=>0===e)||!t.length||!a)throw new Error("Invalid parameters");const[l,c,u]=t,h=u>0?[-u,0,u]:[],f=l>0?[-l,0,l]:[],p=c>0?[-c,0,c]:[],d=[];for(const t of h)for(const i of f)for(const l of f)for(const c of p){const u={...e};u.cameraHeading=n+t,u.cameraLocation={x:r+i,y:s+l,z:o?o+c:0,spatialReference:{wkid:a.wkid}},d.push(u)}return d}(e.imageToWorldProps,e.accuracyParameters)}(0,f.Cg)([(0,m.MZ)()],M.prototype,"_size",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"autoLoad",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"cameraHeading",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"extension",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"horizonPitch",null),(0,f.Cg)([(0,m.MZ)()],M.prototype,"horizonRoll",null),(0,f.Cg)([(0,m.MZ)()],M.prototype,"horizonYaw",null),(0,f.Cg)([(0,m.MZ)()],M.prototype,"id",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"imagePyramid",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"matrix",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"size",null),(0,f.Cg)([(0,m.MZ)()],M.prototype,"type",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"uiStrings",void 0),(0,f.Cg)([(0,m.MZ)()],M.prototype,"url",void 0),M=(0,f.Cg)([(0,g.$)("esri.widgets.PanoramicViewer.support.PanoramicMedia")],M),n(9093),n(91829),n(58083),n(79258),n(73354),n(28208),n(28735)},28208(e,t,n){n.d(t,{NU:()=>a,ZH:()=>s,vK:()=>o});var i=n(86738),r=n(16930);const s=new i.A({x:0,y:0,z:0,spatialReference:r.A.WebMercator}),o=1e3,a=.3515625}}]);
|