@arcgis/core 5.1.0-next.10 → 5.1.0-next.12
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/WebScene.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/008887a8014b61f837ae.js +1 -0
- package/assets/esri/core/workers/chunks/04f82b740325e3388d23.js +1 -0
- package/assets/esri/core/workers/chunks/09cf8aed89a1ea1f8b28.js +1 -0
- package/assets/esri/core/workers/chunks/{ff2412c5be1ad4edb458.js → 0b59e5be22139387bd84.js} +1 -1
- package/assets/esri/core/workers/chunks/0bf742d48f434c4c575f.js +1 -0
- package/assets/esri/core/workers/chunks/0c8a676599821b9871c2.js +1 -0
- package/assets/esri/core/workers/chunks/11882cbb28710e5f9fc5.js +1 -0
- package/assets/esri/core/workers/chunks/{f0e7207fd2c899b9fe9f.js → 12fd2e26e949d90abfbd.js} +1 -1
- package/assets/esri/core/workers/chunks/{8c5e834c2d243fc369fe.js → 18b0776aef1536867ab8.js} +1 -1
- package/assets/esri/core/workers/chunks/{72ab3ed37ac4da355710.js → 1aa2187597f7c4adb67f.js} +1 -1
- package/assets/esri/core/workers/chunks/2216264b22a605a0f1ce.js +1 -0
- package/assets/esri/core/workers/chunks/22d12c309af9c19a1a48.js +1 -0
- package/assets/esri/core/workers/chunks/{aefc089928ada18bc4d4.js → 2762149a922275136171.js} +2 -2
- package/assets/esri/core/workers/chunks/27aa21da934ecaca381a.js +1 -0
- package/assets/esri/core/workers/chunks/27d60fd727e9a68973f6.js +1 -0
- package/assets/esri/core/workers/chunks/{8fbfdd154413a2140180.js → 2a3e82a230b7ee4dfd55.js} +1 -1
- package/assets/esri/core/workers/chunks/{5aab1db039b2b61c6c6b.js → 2bb7bb7901bd343201fc.js} +1 -1
- package/assets/esri/core/workers/chunks/2d1a772abd730b61854f.js +1 -0
- package/assets/esri/core/workers/chunks/{ee2ae61fc747b5f9827b.js → 2e7d4a437717606bc39c.js} +1 -1
- package/assets/esri/core/workers/chunks/{02f03297491eef26f113.js → 34207774bc371e95ba3c.js} +1 -1
- package/assets/esri/core/workers/chunks/360b3499e2a671c309ce.js +1 -0
- package/assets/esri/core/workers/chunks/3b0cfe3db8d90e02d6c6.js +1 -0
- package/assets/esri/core/workers/chunks/3d78e9b3c97c0ce21d16.js +1 -0
- package/assets/esri/core/workers/chunks/4550b7620932cd6de20e.js +1 -0
- package/assets/esri/core/workers/chunks/{f3022255054e8d09c38b.js → 455fbddd814e4681f0c0.js} +1 -1
- package/assets/esri/core/workers/chunks/{3db4938b3f89b9b8234e.js → 4742a8c19b86a5f859f0.js} +1 -1
- package/assets/esri/core/workers/chunks/58cf3d35771b87bd74e5.js +1 -0
- package/assets/esri/core/workers/chunks/{d84af069f1057044c879.js → 5c12a9b0db317620dce2.js} +1 -1
- package/assets/esri/core/workers/chunks/65ad8838911a6d71816b.js +1 -0
- package/assets/esri/core/workers/chunks/{7a85e08cb968586f8d74.js → 72acfb74fd9ab9bae923.js} +2 -2
- package/assets/esri/core/workers/chunks/79ee97609f72e4cf989c.js +1 -0
- package/assets/esri/core/workers/chunks/{fba30f2e1d6b364aae79.js → 7b1964255722e756eba3.js} +1 -1
- package/assets/esri/core/workers/chunks/7e6309bfed6692e8d2d7.js +2 -0
- package/assets/esri/core/workers/chunks/{dc65843654dc25bd8f97.js → 8177e95596b71bf020aa.js} +1 -1
- package/assets/esri/core/workers/chunks/{afffb40cce91e135f092.js → 8374658d17f69bde6b08.js} +1 -1
- package/assets/esri/core/workers/chunks/879e8439a513cb333b61.js +1 -0
- package/assets/esri/core/workers/chunks/{ca767f0e3aa559b13699.js → 90aeef17af12cfbecb36.js} +1 -1
- package/assets/esri/core/workers/chunks/{4bd98d025bcd713eddca.js → 91858b02da40ff251ab2.js} +2 -2
- package/assets/esri/core/workers/chunks/{3114cbf7298239e1269d.js → 956237a2baa30760c256.js} +1 -1
- package/assets/esri/core/workers/chunks/98c3b7d8db53f0b12642.js +1 -0
- package/assets/esri/core/workers/chunks/a027da22acdaa6d6baa3.js +1 -0
- package/assets/esri/core/workers/chunks/{c064025d0dc69bb44f0d.js → a115984b794a7f90b2c0.js} +1 -1
- package/assets/esri/core/workers/chunks/a3e8b7185d63a0f85931.js +1 -0
- package/assets/esri/core/workers/chunks/{6be2dc8331ecf944efdc.js → a5af20f3d484d2d3bafe.js} +1 -1
- package/assets/esri/core/workers/chunks/aa748cdeab2db5eb9d45.js +1 -0
- package/assets/esri/core/workers/chunks/b0b24fb60a21b995b348.js +1 -0
- package/assets/esri/core/workers/chunks/b6e155b42a4a423139e7.js +1 -0
- package/assets/esri/core/workers/chunks/{fb57a07b76580dcdde46.js → bc9997d15ec0a86793c6.js} +1 -1
- package/assets/esri/core/workers/chunks/{4a571a1e897c8ad359c4.js → bf2bfc0d78be8c185d58.js} +1 -1
- package/assets/esri/core/workers/chunks/bf9b2aa2e67ca746ec7c.js +1 -0
- package/assets/esri/core/workers/chunks/c9babe86c00ae69e63ee.js +2 -0
- package/assets/esri/core/workers/chunks/{da40c63408affee86ac4.js → d0d1378e714ff0e43e26.js} +1 -1
- package/assets/esri/core/workers/chunks/{940185f10c2b16612b66.js → d3416e6da0c1cbb53b3a.js} +1 -1
- package/assets/esri/core/workers/chunks/d9c1e1ec5c56f09fb82f.js +1 -0
- package/assets/esri/core/workers/chunks/{4ee618a256b06221ea8f.js → da5deed75e1a170a49b3.js} +8 -8
- package/assets/esri/core/workers/chunks/{bb75ec3727b7ecabca6f.js → e4eb14952b7660feecc7.js} +1 -1
- package/assets/esri/core/workers/chunks/eaf5d55060ffc55aac39.js +1 -0
- package/assets/esri/core/workers/chunks/{9bcf8241c6b4aa42b1c5.js → ed78e19b1e400c0db309.js} +1 -1
- package/assets/esri/core/workers/chunks/f0b8de5b3cfbe9223df6.js +1 -0
- package/assets/esri/core/workers/chunks/fcf6a47f44c917490deb.js +1 -0
- package/config.js +1 -1
- package/core/Version.js +1 -1
- package/core/has.js +1 -1
- package/core/iteratorUtils.js +1 -1
- package/core/sql/WhereClause.js +1 -1
- package/core/sql/WhereGrammar.js +1 -1
- package/core/sql/sqlVisitor.js +2 -0
- package/core/sql/writeUtils.js +2 -0
- package/core/sql.d.ts +2 -3
- package/core/sql.js +1 -1
- package/kernel.js +1 -1
- package/layers/graphics/data/QueryEngineCapabilities.js +1 -1
- package/layers/graphics/sources/FeatureLayerSource.js +1 -1
- package/layers/graphics/sources/OGCFeatureSource.js +1 -1
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/graphics/sources/support/QueryTask.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/mixins/FeatureLayerBase.js +1 -1
- package/layers/support/Sublayer.js +1 -1
- package/layers/support/arcgisLayerUrl.js +1 -1
- package/layers/support/capabilities.js +1 -1
- package/layers/support/relativeTimeQueryUtils.js +2 -0
- package/layers/support/serviceCapabilitiesUtils.js +1 -1
- package/networks/support/jsonTypes.d.ts +2 -2
- package/package.json +2 -2
- package/renderers/support/rasterRendererHelper.js +1 -1
- package/rest/print.js +1 -1
- package/support/revision.js +1 -1
- package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
- package/views/2d/layers/features/schema/SourceSchema.js +1 -1
- package/views/2d/layers/features/sources/FeatureSource.js +1 -1
- package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
- package/views/3d/environment/Fog.js +1 -1
- package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
- package/views/3d/layers/VectorTileLayerView3D.js +1 -1
- package/views/3d/layers/support/featureTileQuery3D.js +1 -1
- package/views/3d/webgl/ManagedFBOResource.js +1 -1
- package/views/3d/webgl-engine/core/FBOCache.js +1 -1
- package/views/3d/webgl-engine/effects/RenderNodes.js +1 -1
- package/views/3d/webgl-engine/effects/blit/Blit.js +1 -1
- package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
- package/views/3d/webgl-engine/lib/CutFillDepth.js +1 -1
- package/views/3d/webgl-engine/lib/MainFramebuffer.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
- package/views/3d/webgl-engine/parts/renderUtils.js +1 -1
- package/views/draw/DrawTool.js +1 -1
- package/views/draw/plugins/BezierSegmentPlugin.js +1 -1
- package/views/draw/plugins/CircularArcSegmentPlugin.js +2 -0
- package/views/draw/support/EditSession.js +1 -1
- package/views/draw/support/PluginContext.js +1 -1
- package/views/draw/support/managers/TooltipManager.js +1 -1
- package/webscene/support/schemaValidator.js +1 -1
- package/webscene/support/versionUtils.js +1 -1
- package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
- package/widgets/Editor/EditorViewModel.d.ts +48 -0
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor/SplitFeatureWorkflow.js +1 -1
- package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
- package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
- package/widgets/Editor/support/SketchController.js +1 -1
- package/widgets/Editor.d.ts +35 -0
- package/widgets/Editor.js +1 -1
- package/widgets/Sketch/SketchViewModel.d.ts +14 -15
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/Sketch/support/OperationHandle.js +1 -1
- package/widgets/Sketch/support/PluginManager.js +1 -1
- package/widgets/Sketch/support/sketchUtils.js +1 -1
- package/widgets/Sketch.d.ts +37 -0
- package/widgets/Sketch.js +1 -1
- package/assets/esri/core/workers/chunks/012992dc3910466ed207.js +0 -1
- package/assets/esri/core/workers/chunks/0994c12d01fe6f74350e.js +0 -1
- package/assets/esri/core/workers/chunks/13b104cc7925d4423aad.js +0 -1
- package/assets/esri/core/workers/chunks/147d0f7a2e471442c95c.js +0 -2
- package/assets/esri/core/workers/chunks/1a11ac1a34614132fabc.js +0 -1
- package/assets/esri/core/workers/chunks/1f613c599eff3b16c1d2.js +0 -1
- package/assets/esri/core/workers/chunks/2431a5480f0d22f00e00.js +0 -1
- package/assets/esri/core/workers/chunks/319226db47849acbe321.js +0 -1
- package/assets/esri/core/workers/chunks/360dd5cd63d132b5c7d5.js +0 -2
- package/assets/esri/core/workers/chunks/3e4c5cc24bdc1c807125.js +0 -1
- package/assets/esri/core/workers/chunks/504e6868445419b7680e.js +0 -1
- package/assets/esri/core/workers/chunks/545d801c4ba6f49df726.js +0 -1
- package/assets/esri/core/workers/chunks/71879de16a936a079362.js +0 -1
- package/assets/esri/core/workers/chunks/733d4ddb937c51ef3aed.js +0 -1
- package/assets/esri/core/workers/chunks/7352b4129f4875a053b0.js +0 -1
- package/assets/esri/core/workers/chunks/768ee8d940b5eb353ec3.js +0 -1
- package/assets/esri/core/workers/chunks/8556d06f522914e71bb8.js +0 -1
- package/assets/esri/core/workers/chunks/863873ffbed0cbbdfb9b.js +0 -1
- package/assets/esri/core/workers/chunks/88fe7d75dc3b619b8543.js +0 -1
- package/assets/esri/core/workers/chunks/8ac7a552189143ab4f91.js +0 -1
- package/assets/esri/core/workers/chunks/8ba1c7919e898ef4557f.js +0 -1
- package/assets/esri/core/workers/chunks/944b6d230a93add78c0d.js +0 -1
- package/assets/esri/core/workers/chunks/a37a003da59bdaf7ec0e.js +0 -1
- package/assets/esri/core/workers/chunks/ad688eee6a9f2be6df4a.js +0 -1
- package/assets/esri/core/workers/chunks/c0ae85f9c2dbe8611499.js +0 -1
- package/assets/esri/core/workers/chunks/c0cb0c22ee7fd91855cb.js +0 -1
- package/assets/esri/core/workers/chunks/cb1b16f8bf7c135e14f7.js +0 -1
- package/assets/esri/core/workers/chunks/cc245eb1c5aaaac5916e.js +0 -1
- package/assets/esri/core/workers/chunks/e03bf0ca545dce221ea0.js +0 -1
- package/assets/esri/core/workers/chunks/e880d7738155a4de4b0e.js +0 -1
- package/assets/esri/core/workers/chunks/fb4bcf366ba1b51668f6.js +0 -1
- package/assets/esri/core/workers/chunks/fb58f3ea98bf5e8cf8dd.js +0 -1
- package/views/3d/webgl/utils.js +0 -2
- /package/assets/esri/core/workers/chunks/{aefc089928ada18bc4d4.js.LICENSE.txt → 2762149a922275136171.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{7a85e08cb968586f8d74.js.LICENSE.txt → 72acfb74fd9ab9bae923.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{360dd5cd63d132b5c7d5.js.LICENSE.txt → 7e6309bfed6692e8d2d7.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{4bd98d025bcd713eddca.js.LICENSE.txt → 91858b02da40ff251ab2.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{147d0f7a2e471442c95c.js.LICENSE.txt → c9babe86c00ae69e63ee.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"../../../core/Accessor.js";import{isSome as i}from"../../../core/arrayUtils.js";import{handlesGroup as l}from"../../../core/handleUtils.js";import o from"../../../core/Logger.js";import{throwIfAborted as n}from"../../../core/promiseUtils.js";import{watch as r}from"../../../core/reactiveUtils.js";import{property as s}from"../../../core/accessorSupport/decorators/property.js";import{subclass as a}from"../../../core/accessorSupport/decorators/subclass.js";import{BezierSegmentPlugin as u}from"../../../views/draw/plugins/BezierSegmentPlugin.js";import{FreehandSegmentPlugin as c}from"../../../views/draw/plugins/FreehandSegmentPlugin.js";import{MultipointPlugin as g}from"../../../views/draw/plugins/MultipointPlugin.js";import{PointPlugin as p}from"../../../views/draw/plugins/PointPlugin.js";import{PolygonPlugin as y}from"../../../views/draw/plugins/PolygonPlugin.js";import{PolylinePlugin as m}from"../../../views/draw/plugins/PolylinePlugin.js";import{ShapePlugin as h}from"../../../views/draw/plugins/ShapePlugin.js";let d=class extends t{constructor(e){super(e),this.sketch=null}get _simplePointPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-leaf-point"),localizationKey:"leaf-point-segment",kind:["vertex"],geometryType:"point",icon:"line-straight",legacyCreateTool:"point",create:()=>new p,[Symbol.toStringTag]:"Point"}}get _multipointPlugin(){const e={...this._simplePointPlugin,localizationKey:"leaf-point",icon:"point",hidden:!0};return{uniqueId:Symbol.for("esri-builtin-plugin-multipoint"),localizationKey:"root-multipoint",kind:["part"],geometryType:"multipoint",icon:"pins",legacyCreateTool:"multipoint",excludedViews:["3d"],create:()=>new g,availableDownstreamPlugins:[e],defaultDownstreamPlugin:e,[Symbol.toStringTag]:"Multipoint"}}get _freehandPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-freehand"),localizationKey:"leaf-freehand",kind:["vertex","section","part"],geometryType:"polyline",icon:"freehand",legacyCreateTool:"freehandPolyline",create(){const e=new c;return e.completeOnDragEnd=!0,e},[Symbol.toStringTag]:"Freehand"}}get _bezierPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-bezier-segment"),localizationKey:"leaf-bezier",kind:["vertex","section"],geometryType:"point",icon:"bezier-curve",excludedViews:["3d"],create:()=>new u,[Symbol.toStringTag]:"Bezier"}}get _singlePartPolylinePlugin(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools,l=!1!==t?.includes("freehandPolyline")&&!1!==e?.freehandPolyline,o=!1!==t?.includes("polyline")&&!1!==e?.polyline;return{uniqueId:Symbol.for("esri-builtin-plugin-simple-polyline"),localizationKey:"root-polyline",kind:["section","part"],geometryType:"polyline",legacyCreateTool:"polyline",icon:o?"line":"freehand",create:()=>new m,availableDownstreamPlugins:o?[this._simplePointPlugin,l?this._freehandPlugin:null,this._bezierPlugin].filter(i):[l?this._freehandPlugin:null].filter(i),defaultDownstreamPlugin:o?this._simplePointPlugin:this._freehandPlugin,[Symbol.toStringTag]:"Polyline"}}get _singlePartPolygonPlugin(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools,l=!1!==t?.includes("freehandPolygon")&&!1!==e?.freehandPolygon,o=!1!==t?.includes("polygon")&&!1!==e?.polygon;return{uniqueId:Symbol.for("esri-builtin-plugin-simple-polygon"),localizationKey:"root-polygon",kind:["section","part"],geometryType:"polygon",legacyCreateTool:"polygon",icon:o?"polygon":"freehand-area",create:()=>new y,availableDownstreamPlugins:o?[this._simplePointPlugin,l?this._freehandPlugin:null,this._bezierPlugin].filter(i):[l?this._freehandPlugin:null].filter(i),defaultDownstreamPlugin:o?this._simplePointPlugin:this._freehandPlugin,[Symbol.toStringTag]:"Polygon"}}get _rectanglePlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-simple-rectangle"),localizationKey:"root-rectangle",kind:["part"],geometryType:"polygon",icon:"rectangle",legacyCreateTool:"rectangle",create:()=>new h,[Symbol.toStringTag]:"Rectangle"}}get _circlePlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-simple-ellipse"),localizationKey:"root-circle",kind:["part"],geometryType:"polygon",icon:"circle",legacyCreateTool:"circle",create(){const e=new h;return e.shapeType="circle",e.defaultUniform=!0,e.defaultCentered=!0,e},[Symbol.toStringTag]:"Circle"}}set sketchViewModel(e){this._overrideIfSome("sketchViewModel",e)}get sketchViewModel(){return this.sketch?.viewModel}get effectiveRootPoint(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools;return!1!==e?.point&&!1!==t?.includes("point")?{...this._simplePointPlugin,icon:"pin",localizationKey:"root-point"}:null}get effectiveRootMultipoint(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools;return!1!==e?.multipoint&&!1!==t?.includes("multipoint")&&"3d"!==this.sketchViewModel?.view?.type?this._multipointPlugin:null}get effectiveRootPolyline(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools,i=!1!==t?.includes("polyline")&&!1!==e?.polyline,l=!1!==t?.includes("freehandPolyline")&&!1!==e?.freehandPolyline;return i||l?this._singlePartPolylinePlugin:null}get effectiveRootPolygon(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools,i=!1!==t?.includes("polygon")&&!1!==e?.polygon,l=!1!==t?.includes("freehandPolygon")&&!1!==e?.freehandPolygon;return i||l?this._singlePartPolygonPlugin:null}get effectiveRootRectangle(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools;return!1!==e?.rectangle&&!1!==t?.includes("rectangle")?this._rectanglePlugin:null}get effectiveRootCircle(){const e=this.sketch?.visibleElements.createTools,t=this.sketch?.availableCreateTools;return!1!==e?.circle&&!1!==t?.includes("circle")?this._circlePlugin:null}get availablePlugins(){const e=[this.effectiveRootPoint,this.effectiveRootMultipoint,this.effectiveRootPolyline,this.effectiveRootPolygon,this.effectiveRootRectangle,this.effectiveRootCircle].filter(i),t=this.sketch?.availableCreateTools;if(!t)return e;const l=e=>{if(!e.legacyCreateTool)return Number.MAX_SAFE_INTEGER;const i=t.indexOf(e.legacyCreateTool);return-1===i?Number.MAX_SAFE_INTEGER:i};return e.map((e,t)=>({plugin:e,index:t,order:l(e)})).sort((e,t)=>e.order-t.order||e.index-t.index).map(({plugin:e})=>e)}getPluginsEquivalentToCreateTool(e,t){switch(e){case"text":case"point":return[this._simplePointPlugin];case"rectangle":return[this._rectanglePlugin];case"circle":return[this._circlePlugin];case"freehandPolyline":return[this._singlePartPolylinePlugin,this._freehandPlugin];case"freehandPolygon":return[this._singlePartPolygonPlugin,this._freehandPlugin];case"polyline":return"freehand"===t?[this._singlePartPolylinePlugin,this._freehandPlugin]:[this._singlePartPolylinePlugin,this._simplePointPlugin];case"polygon":return"freehand"===t?[this._singlePartPolygonPlugin,this._freehandPlugin]:[this._singlePartPolygonPlugin,this._simplePointPlugin];default:return null}}async makeRenderer(e){const t=this.sketchViewModel;if(!t?.view)return null;return"2d"===t.view.type?await this._makeDrawToolRenderer2D(t.view,t,e):await this._makeDrawToolRenderer3D(t.view,t,e)}async _makeDrawToolRenderer2D(e,t,i){const{DrawToolRenderer2D:l}=await import("../../../views/2d/interactive/editingTools/draw/DrawToolRenderer2D.js");n(i);const o=new l({symbolOverrides:{polyline:{outputGeometry:{default:t.polylineSymbol},outline:{active:t.activeLineSymbol??void 0}},polygon:{outputGeometry:{default:t.activeFillSymbol??t.polygonSymbol}},point:{outputGeometry:{default:t.pointSymbol},vertex:{default:t.vertexSymbol,active:t.activeVertexSymbol??void 0}}},view:e}),r=this._setupSymbolWatcher(o,t);return o.addHandles(r),o}async _makeDrawToolRenderer3D(e,t,i){return o.getLogger(this).warnOnce("Using DrawToolRenderer2D in 3D view. A 3D-specific implementation of DrawToolRenderer is not yet available."),this._makeDrawToolRenderer2D(e,t,i)}_setupSymbolWatcher(e,t){const i=(t,i,l)=>(o,n)=>{o!==n&&e.overrideSymbol({symbol:o,geometryType:t,role:i,state:l})};return l([r(()=>t.polylineSymbol,i("polyline","outputGeometry")),r(()=>t.activeLineSymbol,i("polyline","outline","active")),r(()=>t.activeFillSymbol??t.polygonSymbol,i("polygon","outputGeometry")),r(()=>t.pointSymbol,i("point","outputGeometry")),r(()=>t.vertexSymbol,i("point","vertex")),r(()=>t.activeVertexSymbol,i("point","vertex","active"))])}};e([s()],d.prototype,"_simplePointPlugin",null),e([s()],d.prototype,"_multipointPlugin",null),e([s()],d.prototype,"_freehandPlugin",null),e([s()],d.prototype,"_bezierPlugin",null),e([s()],d.prototype,"_singlePartPolylinePlugin",null),e([s()],d.prototype,"_singlePartPolygonPlugin",null),e([s()],d.prototype,"_rectanglePlugin",null),e([s()],d.prototype,"_circlePlugin",null),e([s()],d.prototype,"sketch",void 0),e([s()],d.prototype,"sketchViewModel",null),e([s()],d.prototype,"effectiveRootPoint",null),e([s()],d.prototype,"effectiveRootMultipoint",null),e([s()],d.prototype,"effectiveRootPolyline",null),e([s()],d.prototype,"effectiveRootPolygon",null),e([s()],d.prototype,"effectiveRootRectangle",null),e([s()],d.prototype,"effectiveRootCircle",null),e([s()],d.prototype,"availablePlugins",null),d=e([a("esri.widgets.Sketch.support.PluginManager")],d);export{d as PluginManager};
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"../../../core/Accessor.js";import{isSome as i}from"../../../core/arrayUtils.js";import{handlesGroup as l}from"../../../core/handleUtils.js";import o from"../../../core/Logger.js";import{throwIfAborted as n}from"../../../core/promiseUtils.js";import{watch as r}from"../../../core/reactiveUtils.js";import{property as s}from"../../../core/accessorSupport/decorators/property.js";import{subclass as a}from"../../../core/accessorSupport/decorators/subclass.js";import{BezierSegmentPlugin as u}from"../../../views/draw/plugins/BezierSegmentPlugin.js";import{CircularArcSegmentPlugin as c}from"../../../views/draw/plugins/CircularArcSegmentPlugin.js";import{FreehandSegmentPlugin as g}from"../../../views/draw/plugins/FreehandSegmentPlugin.js";import{MultipointPlugin as p}from"../../../views/draw/plugins/MultipointPlugin.js";import{PointPlugin as y}from"../../../views/draw/plugins/PointPlugin.js";import{PolygonPlugin as d}from"../../../views/draw/plugins/PolygonPlugin.js";import{PolylinePlugin as m}from"../../../views/draw/plugins/PolylinePlugin.js";import{ShapePlugin as P}from"../../../views/draw/plugins/ShapePlugin.js";let h=class extends t{constructor(e){super(e),this.sketch=null}get _simplePointPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-leaf-point"),localizationKey:"leaf-point-segment",kind:["vertex"],geometryType:"point",icon:"line-straight",legacyCreateTool:"point",create:()=>new y,[Symbol.toStringTag]:"Point"}}get _textPointPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-text-point"),localizationKey:"root-text",kind:["vertex"],geometryType:"point",icon:"add-text",legacyCreateTool:"text",create:()=>new y,[Symbol.toStringTag]:"Text"}}get _multipointPlugin(){const e={...this._simplePointPlugin,localizationKey:"leaf-point",icon:"point",hidden:!0};return{uniqueId:Symbol.for("esri-builtin-plugin-multipoint"),localizationKey:"root-multipoint",kind:["part"],geometryType:"multipoint",icon:"pins",legacyCreateTool:"multipoint",excludedViews:["3d"],create:()=>new p,availableDownstreamPlugins:[e],defaultDownstreamPlugin:e,[Symbol.toStringTag]:"Multipoint"}}get _freehandPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-freehand"),localizationKey:"leaf-freehand",kind:["vertex","section","part"],geometryType:"polyline",icon:"freehand",legacyCreateTool:"freehandPolyline",create(){const e=new g;return e.completeOnDragEnd=!0,e},[Symbol.toStringTag]:"Freehand"}}get _bezierPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-bezier-segment"),localizationKey:"leaf-bezier",kind:["vertex","section"],geometryType:"point",icon:"bezier-curve",excludedViews:["3d"],create:()=>new u,[Symbol.toStringTag]:"Bezier"}}get _endpointArcPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-circular-arc-segment-end-first"),localizationKey:"leaf-endpoint-arc",kind:["vertex","section"],geometryType:"point",icon:"end-point-arc-segment",excludedViews:["3d"],create:()=>new c({arcDrawingMode:"end-first"}),availableDownstreamPlugins:[],[Symbol.toStringTag]:"Endpoint Arc"}}get _interiorArcPlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-circular-arc-segment-interior-first"),localizationKey:"leaf-circular-arc",kind:["vertex","section"],geometryType:"point",icon:"arc-segment",excludedViews:["3d"],create:()=>new c({arcDrawingMode:"interior-first"}),availableDownstreamPlugins:[],[Symbol.toStringTag]:"Interior Arc"}}get _singlePartPolylinePlugin(){const e=this.sketch?.visibleElements.createTools,t=!this._isExcludedByAvailableCreateTools("freehandPolyline")&&!1!==e?.freehandPolyline,l=!this._isExcludedByAvailableCreateTools("polyline")&&!1!==e?.polyline;return{uniqueId:Symbol.for("esri-builtin-plugin-simple-polyline"),localizationKey:"root-polyline",kind:["section","part"],geometryType:"polyline",legacyCreateTool:"polyline",icon:l?"line":"freehand",create:()=>new m,availableDownstreamPlugins:l?[this._simplePointPlugin,t?this._freehandPlugin:null,this._bezierPlugin,this._interiorArcPlugin,this._endpointArcPlugin].filter(i):[t?this._freehandPlugin:null].filter(i),defaultDownstreamPlugin:l?this._simplePointPlugin:this._freehandPlugin,[Symbol.toStringTag]:"Polyline"}}get _singlePartPolygonPlugin(){const e=this.sketch?.visibleElements.createTools,t=!this._isExcludedByAvailableCreateTools("freehandPolygon")&&!1!==e?.freehandPolygon,l=!this._isExcludedByAvailableCreateTools("polygon")&&!1!==e?.polygon;return{uniqueId:Symbol.for("esri-builtin-plugin-simple-polygon"),localizationKey:"root-polygon",kind:["section","part"],geometryType:"polygon",legacyCreateTool:"polygon",icon:l?"polygon":"freehand-area",create:()=>new d,availableDownstreamPlugins:l?[this._simplePointPlugin,t?this._freehandPlugin:null,this._bezierPlugin,this._interiorArcPlugin,this._endpointArcPlugin].filter(i):[t?this._freehandPlugin:null].filter(i),defaultDownstreamPlugin:l?this._simplePointPlugin:this._freehandPlugin,[Symbol.toStringTag]:"Polygon"}}get _rectanglePlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-simple-rectangle"),localizationKey:"root-rectangle",kind:["part"],geometryType:"polygon",icon:"rectangle",legacyCreateTool:"rectangle",create:()=>new P,[Symbol.toStringTag]:"Rectangle"}}get _circlePlugin(){return{uniqueId:Symbol.for("esri-builtin-plugin-simple-ellipse"),localizationKey:"root-circle",kind:["part"],geometryType:"polygon",icon:"circle",legacyCreateTool:"circle",create(){const e=new P;return e.shapeType="circle",e.defaultUniform=!0,e.defaultCentered=!0,e},[Symbol.toStringTag]:"Circle"}}set sketchViewModel(e){this._overrideIfSome("sketchViewModel",e)}get sketchViewModel(){return this.sketch?.viewModel}get effectiveRootPoint(){const e=this.sketch?.visibleElements.createTools;return!1!==e?.point&&!this._isExcludedByAvailableCreateTools("point")?{...this._simplePointPlugin,icon:"pin",localizationKey:"root-point"}:null}get effectiveRootText(){const e=this.sketch?.visibleElements.createTools;return!1!==e?.text&&!this._isExcludedByAvailableCreateTools("text")?this._textPointPlugin:null}get effectiveRootMultipoint(){const e=this.sketch?.visibleElements.createTools;return!1!==e?.multipoint&&!this._isExcludedByAvailableCreateTools("multipoint")&&"3d"!==this.sketchViewModel?.view?.type?this._multipointPlugin:null}get effectiveRootPolyline(){const e=this.sketch?.visibleElements.createTools,t=!this._isExcludedByAvailableCreateTools("polyline")&&!1!==e?.polyline,i=!this._isExcludedByAvailableCreateTools("freehandPolyline")&&!1!==e?.freehandPolyline;return t||i?this._singlePartPolylinePlugin:null}get effectiveRootPolygon(){const e=this.sketch?.visibleElements.createTools,t=!this._isExcludedByAvailableCreateTools("polygon")&&!1!==e?.polygon,i=!this._isExcludedByAvailableCreateTools("freehandPolygon")&&!1!==e?.freehandPolygon;return t||i?this._singlePartPolygonPlugin:null}get effectiveRootRectangle(){const e=this.sketch?.visibleElements.createTools;return!1!==e?.rectangle&&!this._isExcludedByAvailableCreateTools("rectangle")?this._rectanglePlugin:null}get effectiveRootCircle(){const e=this.sketch?.visibleElements.createTools;return!1!==e?.circle&&!this._isExcludedByAvailableCreateTools("circle")?this._circlePlugin:null}get availablePlugins(){const e=[this.effectiveRootPoint,this.effectiveRootText,this.effectiveRootMultipoint,this.effectiveRootPolyline,this.effectiveRootPolygon,this.effectiveRootRectangle,this.effectiveRootCircle].filter(i),t=this.sketch?.availableCreateTools;if(!t)return e;const l=e=>{if(!e.legacyCreateTool)return Number.MAX_SAFE_INTEGER;const i=t.indexOf(e.legacyCreateTool);return-1===i?Number.MAX_SAFE_INTEGER:i};return e.map((e,t)=>({plugin:e,index:t,order:l(e)})).sort((e,t)=>e.order-t.order||e.index-t.index).map(({plugin:e})=>e)}getPluginsEquivalentToCreateTool(e,t){switch(e){case"text":return[this._textPointPlugin];case"point":return[this._simplePointPlugin];case"rectangle":return[this._rectanglePlugin];case"circle":return[this._circlePlugin];case"freehandPolyline":return[this._singlePartPolylinePlugin,this._freehandPlugin];case"freehandPolygon":return[this._singlePartPolygonPlugin,this._freehandPlugin];case"polyline":return"freehand"===t?[this._singlePartPolylinePlugin,this._freehandPlugin]:[this._singlePartPolylinePlugin,this._simplePointPlugin];case"polygon":return"freehand"===t?[this._singlePartPolygonPlugin,this._freehandPlugin]:[this._singlePartPolygonPlugin,this._simplePointPlugin];default:return null}}getDrawingModeEquivalentToPluginStack(e){const t=e.at(-1);if(t===this._freehandPlugin)return"freehand";return t===this._rectanglePlugin||t===this._circlePlugin?"hybrid":"click"}async makeRenderer(e={}){const t=this.sketchViewModel;if(!t?.view)return null;const{abortOptions:i,useTextSymbol:l}=e;return"2d"===t.view.type?await this._makeDrawToolRenderer2D({view:t.view,svm:t,useTextSymbol:l,abortOptions:i}):await this._makeDrawToolRenderer3D({view:t.view,svm:t,useTextSymbol:l,abortOptions:i})}_isExcludedByAvailableCreateTools(e){return!!this.sketch&&!this.sketch.availableCreateTools?.includes(e)}async _makeDrawToolRenderer2D(e){const{DrawToolRenderer2D:t}=await import("../../../views/2d/interactive/editingTools/draw/DrawToolRenderer2D.js"),{view:i,svm:l,useTextSymbol:o,abortOptions:r}=e;n(r);const s=o?l.textSymbol??l.pointSymbol:l.pointSymbol,a=new t({symbolOverrides:{polyline:{outputGeometry:{default:l.polylineSymbol},outline:{active:l.activeLineSymbol??void 0}},polygon:{outputGeometry:{default:l.activeFillSymbol??l.polygonSymbol}},point:{outputGeometry:{default:s},vertex:{default:l.vertexSymbol,active:l.activeVertexSymbol??void 0}}},view:i}),u=this._setupSymbolWatcher(a,l,o);return a.addHandles(u),a}async _makeDrawToolRenderer3D(e){const{view:t,svm:i,useTextSymbol:l,abortOptions:n}=e;return o.getLogger(this).warnOnce("Using DrawToolRenderer2D in 3D view. A 3D-specific implementation of DrawToolRenderer is not yet available."),this._makeDrawToolRenderer2D({view:t,svm:i,useTextSymbol:l,abortOptions:n})}_setupSymbolWatcher(e,t,i){const o=(t,i,l)=>(o,n)=>{o!==n&&e.overrideSymbol({symbol:o,geometryType:t,role:i,state:l})};return l([r(()=>t.polylineSymbol,o("polyline","outputGeometry")),r(()=>t.activeLineSymbol,o("polyline","outline","active")),r(()=>t.activeFillSymbol??t.polygonSymbol,o("polygon","outputGeometry")),r(()=>i?t.textSymbol??t.pointSymbol:t.pointSymbol,o("point","outputGeometry")),r(()=>t.vertexSymbol,o("point","vertex")),r(()=>t.activeVertexSymbol,o("point","vertex","active"))])}};e([s()],h.prototype,"_simplePointPlugin",null),e([s()],h.prototype,"_textPointPlugin",null),e([s()],h.prototype,"_multipointPlugin",null),e([s()],h.prototype,"_freehandPlugin",null),e([s()],h.prototype,"_bezierPlugin",null),e([s()],h.prototype,"_endpointArcPlugin",null),e([s()],h.prototype,"_interiorArcPlugin",null),e([s()],h.prototype,"_singlePartPolylinePlugin",null),e([s()],h.prototype,"_singlePartPolygonPlugin",null),e([s()],h.prototype,"_rectanglePlugin",null),e([s()],h.prototype,"_circlePlugin",null),e([s()],h.prototype,"sketch",void 0),e([s()],h.prototype,"sketchViewModel",null),e([s()],h.prototype,"effectiveRootPoint",null),e([s()],h.prototype,"effectiveRootText",null),e([s()],h.prototype,"effectiveRootMultipoint",null),e([s()],h.prototype,"effectiveRootPolyline",null),e([s()],h.prototype,"effectiveRootPolygon",null),e([s()],h.prototype,"effectiveRootRectangle",null),e([s()],h.prototype,"effectiveRootCircle",null),e([s()],h.prototype,"availablePlugins",null),h=e([a("esri.widgets.Sketch.support.PluginManager")],h);export{h as PluginManager};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
function e(e,n){if("freehandPolygon"===n||"freehandPolyline"===n)return"freehand";return e??("rectangle"===n||"circle"===n?"hybrid":"click")}function n(e){switch(e){case"freehandPolygon":return"polygon";case"freehandPolyline":return"polyline";case"text":return"point";default:return e}}function t(e){return!!e&&("draw-2d"===e.type||"draw-3d"===e.type)}function r(e){if(e.length>1)return!1;const n=e.at(0)?.geometry;return"point"===n?.type||"multipoint"===n?.type&&n.points.length<2}export{n as getDrawToolGeometryTypeFromCreateTool,e as getModeFromCreateOptions,r as graphicsHaveTooFewVerticesForBox,t as isDrawGraphicTool};
|
|
2
|
+
function e(e,n){if("freehandPolygon"===n||"freehandPolyline"===n)return"freehand";return e??("rectangle"===n||"circle"===n?"hybrid":"click")}function n(e){switch(e){case"freehandPolygon":return"polygon";case"freehandPolyline":return"polyline";case"text":return"point";default:return e}}function t(e){return!!e&&("draw-2d"===e.type||"draw-3d"===e.type)}function r(e){if(e.length>1)return!1;const n=e.at(0)?.geometry;return"point"===n?.type||"multipoint"===n?.type&&n.points.length<2}function o(e){return"string"==typeof e?e:e.find(e=>e?.legacyCreateTool)?.legacyCreateTool??e.at(0)?.geometryType}export{n as getDrawToolGeometryTypeFromCreateTool,o as getLegacyTool,e as getModeFromCreateOptions,r as graphicsHaveTooFewVerticesForBox,t as isDrawGraphicTool};
|
package/widgets/Sketch.d.ts
CHANGED
|
@@ -158,6 +158,19 @@ export interface SketchProperties extends WidgetProperties, Partial<Pick<Sketch,
|
|
|
158
158
|
* @since 4.24
|
|
159
159
|
*/
|
|
160
160
|
tooltipOptions?: SketchTooltipOptionsProperties;
|
|
161
|
+
/**
|
|
162
|
+
* Starting with 5.0, `arcgis-sketch` and [SketchViewModel](https://developers.arcgis.com/javascript/latest/references/core/widgets/Sketch/SketchViewModel/)
|
|
163
|
+
* ara transitioning to a next generation geometry creation experience. This
|
|
164
|
+
* new experience enables the use of advanced curve creation tools and the
|
|
165
|
+
* combination of multiple create tools to define a single geometry.
|
|
166
|
+
*
|
|
167
|
+
* As of 5.0, this experience is only available in 2D (`arcgis-map`).
|
|
168
|
+
*
|
|
169
|
+
* @deprecated
|
|
170
|
+
* @default false
|
|
171
|
+
* @since 5.0
|
|
172
|
+
*/
|
|
173
|
+
useLegacyCreateTools?: boolean;
|
|
161
174
|
/**
|
|
162
175
|
* Options to configure how values are displayed and input when creating or updating graphics.
|
|
163
176
|
*
|
|
@@ -502,6 +515,17 @@ export default class Sketch extends Widget<SketchProperties> {
|
|
|
502
515
|
*/
|
|
503
516
|
get icon(): Icon["icon"];
|
|
504
517
|
set icon(value: Icon["icon"] | null | undefined);
|
|
518
|
+
/**
|
|
519
|
+
* Use this property to determine if the next generation geometry creation
|
|
520
|
+
* has been disabled. This can happen when
|
|
521
|
+
* [useLegacyCreateTools](https://developers.arcgis.com/javascript/latest/references/core/widgets/Sketch/#useLegacyCreateTools) is true,
|
|
522
|
+
* or `arcgis-sketch` is used with a non-2D (`arcgis-map`) view.
|
|
523
|
+
*
|
|
524
|
+
* @deprecated
|
|
525
|
+
* @default false
|
|
526
|
+
* @since 5.0
|
|
527
|
+
*/
|
|
528
|
+
get isUsingLegacyCreateTools(): boolean;
|
|
505
529
|
/**
|
|
506
530
|
* The Sketch widget's default label.
|
|
507
531
|
*
|
|
@@ -648,6 +672,19 @@ export default class Sketch extends Widget<SketchProperties> {
|
|
|
648
672
|
set tooltipOptions(value: SketchTooltipOptionsProperties);
|
|
649
673
|
/** An array of [graphics](https://developers.arcgis.com/javascript/latest/references/core/Graphic/) that are being updated by the Sketch widget. */
|
|
650
674
|
get updateGraphics(): Collection<Graphic>;
|
|
675
|
+
/**
|
|
676
|
+
* Starting with 5.0, `arcgis-sketch` and [SketchViewModel](https://developers.arcgis.com/javascript/latest/references/core/widgets/Sketch/SketchViewModel/)
|
|
677
|
+
* ara transitioning to a next generation geometry creation experience. This
|
|
678
|
+
* new experience enables the use of advanced curve creation tools and the
|
|
679
|
+
* combination of multiple create tools to define a single geometry.
|
|
680
|
+
*
|
|
681
|
+
* As of 5.0, this experience is only available in 2D (`arcgis-map`).
|
|
682
|
+
*
|
|
683
|
+
* @deprecated
|
|
684
|
+
* @default false
|
|
685
|
+
* @since 5.0
|
|
686
|
+
*/
|
|
687
|
+
get useLegacyCreateTools(): boolean;
|
|
651
688
|
/**
|
|
652
689
|
* Options to configure how values are displayed and input when creating or updating graphics.
|
|
653
690
|
*
|
package/widgets/Sketch.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import{substitute as t}from"../intl.js";import{isSome as o}from"../core/arrayUtils.js";import{deprecateWidget as i}from"../core/deprecate.js";import{handlesGroup as l}from"../core/handleUtils.js";import s from"../core/Logger.js";import{removeMaybe as n,destroyMaybe as r}from"../core/maybe.js";import{ignoreAbortErrors as a}from"../core/promiseUtils.js";import{watch as p,syncAndInitial as c,when as d}from"../core/reactiveUtils.js";import{property as h,subclass as u}from"../core/accessorSupport/decorators.js";import{symbolTypes as v}from"../symbols/support/typeUtils.js";import m from"../views/interactive/sketch/SketchLabelOptions.js";import g from"../views/interactive/sketch/SketchTooltipOptions.js";import y from"../views/interactive/sketch/SketchValueOptions.js";import f from"./Widget.js";import b from"./Sketch/SketchViewModel.js";import _ from"./Sketch/VisibleElements.js";import w from"./Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js";import{loadCalciteComponents as T}from"./support/componentsUtils.js";import M from"./support/SelectionToolbar.js";import C from"./support/SketchTooltipControls.js";import O from"./support/SnappingControls.js";import{tsx as S,messageBundle as k,vmEvent as P}from"./support/widget.js";import x from"./support/SelectionToolbar/VisibleElements.js";import E from"./support/SketchTooltipControls/VisibleElements.js";const I="esri-sketch",R={base:I,vertical:`${I}--vertical`,docked:`${I}-bar`,floating:`${I}-pad`,chipHorizontal:`${I}__selection-count-chip--horizontal`,chipVertical:`${I}__selection-count-chip--vertical`,chipVerticalSmall:`${I}__selection-count-chip--vertical--s`,popoverWrapper:`${I}__popover-wrapper`},G={point:"pin",polyline:"line",polygon:"polygon",rectangle:"rectangle",circle:"circle",multipoint:"pins",mesh:"i3d-building",freehandPolygon:"freehand-area",freehandPolyline:"freehand",text:"add-text"};let j=class extends f{constructor(e,t){super(e,t),this._selectionToolbar=null,this._viewModelHandlesGroup=null,this._popoverElement=null,this.availableCreateTools=["point","polyline","polygon","rectangle","circle"],this.customToolOptions=null,this.customActions=null,this.toolbarKind="floating",this.contextualToolLocation="separate",this.groupCollapsePriorities=null,this.groupAllowCollapseOptions=null,this.messages=null,this.messagesCommon=null,this.visibleElements=new _,this._defaultViewModel=null,this._activeCustomToolOptions=null,this._calcitePopoverReferenceElement=null,this._relativeLocation="top",this._popoverOpen=!1,!0!==e?.suppressDeprecationWarning&&(this.announceDeprecation=()=>{i(s.getLogger(this),"Sketch","arcgis-sketch",{version:"5.0"})}),this._activateCreateTool=this._activateCreateTool.bind(this),this.viewModel=e?.viewModel||(this._defaultViewModel=new b({creationMode:e?.creationMode??"continuous"}))}normalizeCtorArgs(e={}){const{suppressDeprecationWarning:t,...o}=e;return o}initialize(){const{layer:e,view:t}=this,o="2d"===t?.type,i=new M({persistSelection:!1,visibleElements:new x({chip:!1,lassoTool:o,operationTypeControls:!1,pan:!1,pointTool:!1,rectangleTool:o}),view:t,sources:e?[e]:null,scale:this.scale});this.addHandles([p(()=>this.viewModel,e=>{this._viewModelHandlesGroup=n(this._viewModelHandlesGroup),e&&(this._viewModelHandlesGroup=l([e.on("create",()=>this.scheduleRender()),e.on("update",()=>this.scheduleRender()),e.on("delete",e=>this.emit("delete",e)),e.on("undo",()=>this.scheduleRender()),e.on("redo",()=>this.scheduleRender()),p(()=>e.layer,e=>{this._selectionToolbar&&(this._selectionToolbar.sources=e?[e]:null)}),p(()=>e.view,e=>{this._selectionToolbar&&(this._selectionToolbar.view=e)}),p(()=>e.state,()=>this.notifyChange("state"))]))},c),d(()=>i.activeOperation,()=>{this.viewModel.cancel(),this._activeCustomToolOptions=null}),i.on("complete",e=>this._onSelectionOperationComplete(e)),p(()=>{const{view:e,visibleElements:{selectionTools:t}}=this;return{lassoTool:"3d"!==e?.type&&!!t?.["lasso-selection"],rectangleTool:"3d"!==e?.type&&!!t?.["rectangle-selection"]}},e=>{Object.assign(i.visibleElements,e)},c)]),this._selectionToolbar=i}loadDependencies(){return T({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),popover:()=>import("@esri/calcite-components/dist/components/calcite-popover")})}destroy(){this._selectionToolbar?.destroy(),this._viewModelHandlesGroup=n(this._viewModelHandlesGroup)}get activeTool(){const e=this._selectionToolbar?.activeOperation;if(e)switch(e.toolName){case"lasso":return"lasso-selection";case"rectangle":return"rectangle-selection";case"default":return"custom-selection"}const t=this._effectiveAvailableCreateTools,{activeTool:o,activeCreateToolDrawMode:i}=this.viewModel;return"polygon"===o&&"freehand"===i&&t?.includes("freehandPolygon")?"freehandPolygon":"polyline"===o&&"freehand"===i&&t?.includes("freehandPolyline")?"freehandPolyline":this.viewModel.activeTool}get activeTooltip(){return this.viewModel.activeTooltip}get createGraphic(){return this.viewModel.createGraphic}get creationMode(){return this.viewModel.creationMode}set creationMode(e){this.viewModel.creationMode=e}get defaultCreateOptions(){return this.viewModel.defaultCreateOptions}set defaultCreateOptions(e){this.viewModel.defaultCreateOptions=e}get defaultUpdateOptions(){return this.viewModel.defaultUpdateOptions}set defaultUpdateOptions(e){this.viewModel.defaultUpdateOptions=e}get icon(){return"pencil"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}set layout(e){this._set("layout",e),this._selectionToolbar&&(this._selectionToolbar.layout=e)}get pointSymbol(){return this.viewModel.pointSymbol}set pointSymbol(e){this.viewModel.pointSymbol=e}get polygonSymbol(){return this.viewModel.polygonSymbol}set polygonSymbol(e){this.viewModel.polygonSymbol=e}get polylineSymbol(){return this.viewModel.polylineSymbol}set polylineSymbol(e){this.viewModel.polylineSymbol=e}get textSymbol(){return this.viewModel.textSymbol}set textSymbol(e){this.viewModel.textSymbol=e}set scale(e){this._set("scale",e),this._selectionToolbar&&(this._selectionToolbar.scale=e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get state(){return this._selectionToolbar?.activeOperation?"active":this.viewModel.state}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}get updateGraphics(){return this.viewModel.updateGraphics}get valueOptions(){return this.viewModel.valueOptions}set valueOptions(e){this.viewModel.valueOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){const t=this._get("viewModel");e!==t&&(t&&t===this._defaultViewModel&&r(t),this._set("viewModel",e),e.addHandles(d(()=>e.pluginManager,e=>e.sketch=this,{once:!0,initial:!0,sync:!0})))}get _effectiveAvailableCreateTools(){const{availableCreateTools:e,view:t,visibleElements:o}=this,i=e?.filter(e=>!!o.createTools?.[e]);return"3d"===t?.type?i?.filter(e=>"multipoint"!==e):i}create(e,t,o){const i=o?.createOptions??t;return this._activeCustomToolOptions=o,a(this.viewModel.create(e,i))}update(e,t){return a(this.viewModel.update(e,t))}complete(){this.viewModel.complete()}cancel(){this._selectionToolbar?.cancel(),this.viewModel.cancel(),this._activeCustomToolOptions=null}undo(){this.viewModel.undo(),this.view?.focus()}redo(){this.viewModel.redo(),this.view?.focus()}delete(){this.viewModel.delete()}duplicate(){return this.viewModel.duplicate()}dismissFloatingElements(){this._popoverOpen=!1}render(){const{toolbarKind:e,layout:t,scale:o}=this,i=this.customActions?.filter(e=>"selection-toolbar"===e.position);return S("div",null,S("div",{classes:{[R.base]:!0,[R.floating]:"floating"===e,[R.docked]:"docked"===e,[R.vertical]:"vertical"===t}},S(w,{barStyle:e,layout:t,scale:o},this._renderSelectionSetItemGroupInline(),S("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionTools")??!0,"group-kind":"split-button",key:"selection-split-button",priority:this.groupCollapsePriorities?.get("selectionTools")??0},this._renderDefaultSelectionButton(),this._selectionToolbar?.render(),i?.map(e=>this._renderToolbarItem(e))),this._renderCreateToolActionGroup(),this._renderUndoRedoMenuItemGroup(),this._renderSettingsMenuItemGroup()),this._renderSelectionSetToolbar(),this._renderSettingsMenuPopover()))}_renderSettingsMenuPopover(){const{messagesCommon:e,snappingOptions:t,view:o,viewModel:i,visibleElements:l}=this;if(!this._calcitePopoverReferenceElement)return;const s={directionModePicker:l.directionModePicker,labelsToggle:l.labelsToggle,tooltipsToggle:l.tooltipsToggle},n="horizontal"===this.layout?"top"===this._relativeLocation?"bottom-end":"top-end":"right-end";return S("calcite-popover",{afterCreate:e=>this._popoverElement=e,closable:!0,heading:e.settings,label:e.settings,open:this._popoverOpen,overlayPositioning:"fixed",placement:n,referenceElement:this._calcitePopoverReferenceElement,scale:this.scale,topLayerDisabled:this.topLayerDisabled,onCalcitePopoverBeforeClose:e=>this._beforePopoverClose(e.target),onCalcitePopoverBeforeOpen:e=>this._remeasurePopoverSizes(e.currentTarget),onCalcitePopoverClose:e=>this._refocusOnView(e.target)},S("div",{class:R.popoverWrapper},Object.values(s).includes(!0)?S(C,{sketchOptions:i.sketchOptions,visibleElements:new E(s)}):void 0,l.snappingControls&&o&&t?S(O,{snappingManager:this.viewModel.snappingManager,snappingOptions:t,view:o,visibleElements:l.snappingControlsElements}):void 0))}_beforePopoverClose(e){e===this._popoverElement&&(this._popoverOpen=!1)}_renderSelectionSetToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSelectionSetItemGroup();return e?.length?S(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSelectionSetItemGroupInline(){return"separate"===this.contextualToolLocation?[]:this._renderSelectionSetItemGroup()}_renderUndoRedoMenuItemGroup(){return S("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("undoRedo")??!0,"group-kind":"split-button",key:"undo-redo-menu",priority:this.groupCollapsePriorities?.get("undoRedo")??10,slot:"actions-end"},this._renderUndoButton(),this._renderRedoButton())}_renderSettingsMenuItemGroup(){const e=[],t=[];this.customActions?.forEach(o=>{"settings-before"===o.position?t.push(o):"settings-after"===o.position&&e.push(o)});const i=[...t.map(e=>this._renderToolbarItem(e)),this._renderSettingsMenuButton(),...e.map(e=>this._renderToolbarItem(e))].filter(o);if(i.length)return S("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("settings")??!1,"group-kind":"overflow-group",key:"settings-menu",priority:this.groupCollapsePriorities?.get("settings")??1e3,slot:"actions-end"},i)}_renderSelectionSetItemGroup(){if(!this.updateGraphics.length)return[];const e="inline-end"===this.contextualToolLocation?"actions-end":void 0,t=this.customActions?.filter(e=>"before-selection-set"===e.position),o=this.customActions?.filter(e=>"after-selection-set"===e.position),i=this.groupCollapsePriorities?.get("selectionSet")??100;return[S("div",{"group-kind":"measured-content",key:"selection-count-chip-group",priority:i,slot:e},this._renderFeatureCountChip()),S("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionSet")??!1,"group-kind":"overflow-group",key:"selection-set-tool-group",priority:i,slot:e},t?.map(e=>this._renderToolbarItem(e)),this._renderDuplicateButton(),this._renderDeleteButton(),o?.map(e=>this._renderToolbarItem(e)))]}_renderDefaultSelectionButton(){if(!this.viewModel.updateOnGraphicClick)return[];const{messages:e,state:t}=this;return this._renderToolbarItem({id:"pointer-select",text:e.selectFeature,icon:"cursor",onclick:this._activateDefaultSelectTool,active:"ready"===t})}_renderCreateToolActionGroup(){const e=this._effectiveAvailableCreateTools?.flatMap(e=>this._renderBuiltInCreateToolItem(e))??[],t=this.customToolOptions?.flatMap(e=>this._renderCustomToolItem(e))??[];return S("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("createTools")??!0,"group-kind":"overflow-group",key:"create-tools-group",priority:this.groupCollapsePriorities?.get("createTools")??100},e,t)}_renderBuiltInCreateToolItem(e){return this._renderToolbarItem({id:`${e}-button`,text:this.messages.draw[e],icon:G[e],onclick:()=>this._activateCreateTool(e),active:this.activeTool===e&&!this._activeCustomToolOptions})}_renderCustomToolItem(e){const{toolKey:t}=e;return this._renderToolbarItem({id:`custom-${e.toolKey}`,text:e.label,icon:e.icon,onclick:()=>this._activateCreateTool(e.toolName,null,e),active:this._activeCustomToolOptions?.toolKey===t})}_renderUndoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"undo-button",text:this.messages.undo,icon:"undo",disabled:!this.viewModel.canUndo(),onclick:this.undo,flipRTL:!0}):[]}_renderRedoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"redo-button",text:this.messages.redo,icon:"redo",disabled:!this.viewModel.canRedo(),onclick:this.redo,flipRTL:!0}):[]}_renderSettingsMenuButton(){return this.visibleElements.settingsMenu?this._renderToolbarItem({id:"settings-menu-action",text:this.messagesCommon.settings,icon:"gear",active:this._popoverOpen,onclick:()=>this._popoverOpen=!this._popoverOpen,afterCreate:e=>this._calcitePopoverReferenceElement=e,afterUpdate:e=>this._calcitePopoverReferenceElement=e,afterRemoved:()=>this._calcitePopoverReferenceElement=null}):[]}_renderFeatureCountChip(){if(!this.visibleElements.selectionCountLabel)return[];const{layout:e,messages:o,scale:i,id:l,updateGraphics:{length:s}}=this,n=t(o.selectedCount,{count:s}),r="l"===i?999:99,a=s>r?t(o.selectedCountTruncated,{truncated:r}):s,p="l"!==i&&"vertical"===e,c=p?`${l}-selection-chip-small`:`${l}-selection-chip`;return[p?S("span",{classes:{[R.chipVertical]:!0,[R.chipVerticalSmall]:"s"===this.scale},id:c,tabIndex:0,title:n},a):S("calcite-chip",{appearance:"outline",class:"horizontal"===e?R.chipHorizontal:R.chipVertical,id:c,kind:"brand",label:n,scale:"l"===i?"m":"s",tabIndex:0,title:"vertical"===e?n:void 0},"vertical"===e?a:n)]}_renderDuplicateButton(){if(!this.visibleElements.duplicateButton)return[];const{messages:e}=this;return this._renderToolbarItem({id:"duplicate",text:this.updateGraphics.length>1?e.duplicateFeatures:e.duplicateFeature,icon:"copy",onclick:this._onDuplicateSelect})}_renderDeleteButton(){if(!this.visibleElements.deleteButton)return[];const{messages:e}=this,t=this.updateGraphics.length>1?e.deleteFeatures:e.deleteFeature;return this._renderToolbarItem({id:"delete",text:t,icon:"trash",onclick:this.delete})}_renderToolbarItem({id:e,text:t,icon:o,disabled:i,onclick:l,active:s,flipRTL:n,afterCreate:r,afterUpdate:a,afterRemoved:p}){const c=`${this.id}-${e}`;return[S("calcite-action",{active:s,afterCreate:r,afterRemoved:p,afterUpdate:a,bind:this,"data-testid":e,disabled:i||"disabled"===this.state,icon:o,iconFlipRtl:n??!1,id:c,key:e,onclick:l,scale:this.scale,text:t,title:t})]}_remeasurePopoverSizes(e){try{const t=e.parentElement,o=this?.view?.container?.getBoundingClientRect(),i=t?.style;if(!(t&&o&&i&&this.view?.container?.contains(t)))return;const l=this._calcitePopoverReferenceElement;if(!l)return;const{bottom:s,top:n}=l.getBoundingClientRect();if("horizontal"===this.layout){const e=s<o.height/2;e!==("top"===this._relativeLocation)&&(this._relativeLocation=e?"top":"bottom"),e?(i?.setProperty("--sketch-view-height-offset",s-o.top+"px"),i?.setProperty("--sketch-view-margin-offset","30px")):(i?.setProperty("--sketch-view-height-offset",o.bottom-n+"px"),i?.setProperty("--sketch-view-margin-offset","15px"))}else"vertical"===this.layout&&(i.setProperty("--sketch-view-height-offset","15px"),i.setProperty("--sketch-view-margin-offset","15px"));const r=e.shadowRoot?.querySelector("div.header")?.getBoundingClientRect().height;i.setProperty("--sketch-popover-header-offset",`${r}px`)}catch(t){s.getLogger(this.declaredClass).warnOnce("Sketch failed to lay out settings menu.",t)}}_activateCreateTool(e,t,o){const i=this._activeCustomToolOptions;if(o||i){if(o?.toolKey===i?.toolKey)return void this.cancel()}else if(this.activeTool===e)return void this.cancel();this._selectionToolbar?.cancel(),this.create(e,t,o)}_onDuplicateSelect(){const e=this.duplicate(),t=this.viewModel.activeTool;"transform"!==t&&"reshape"!==t||this.update(e,{tool:t})}_onSelectionOperationComplete(e){const{viewModel:{defaultUpdateOptions:t}}=this,{selection:o}=e;if(!e.aborted&&o.length){const e=t.tool,i=o.length>1&&"reshape"===e?"transform":e;this.update(o,{...t,tool:i})}this.notifyChange("state")}_activateDefaultSelectTool(){this.cancel(),this.view?.focus()}_refocusOnView(e){this.activeTool&&e===this._popoverElement&&this.view?.focus()}};e([h()],j.prototype,"activeTool",null),e([h({readOnly:!0})],j.prototype,"activeTooltip",null),e([h({cast:e=>{if(!e?.length)return null;const t=new Set(["point","polyline","polygon","rectangle","circle","multipoint","freehandPolyline","freehandPolygon","mesh","text"]);return e.filter(e=>t.has(e))}})],j.prototype,"availableCreateTools",void 0),e([h({readOnly:!0})],j.prototype,"createGraphic",null),e([h()],j.prototype,"creationMode",null),e([h()],j.prototype,"customToolOptions",void 0),e([h()],j.prototype,"customActions",void 0),e([h()],j.prototype,"defaultCreateOptions",null),e([h()],j.prototype,"defaultUpdateOptions",null),e([h()],j.prototype,"icon",null),e([h()],j.prototype,"label",null),e([h({type:m})],j.prototype,"labelOptions",null),e([h()],j.prototype,"layer",null),e([h({type:["horizontal","vertical"],value:"horizontal"})],j.prototype,"layout",null),e([h({types:v})],j.prototype,"pointSymbol",null),e([h({types:v})],j.prototype,"polygonSymbol",null),e([h({types:v})],j.prototype,"polylineSymbol",null),e([h()],j.prototype,"textSymbol",null),e([h({value:"m"})],j.prototype,"scale",null),e([h()],j.prototype,"toolbarKind",void 0),e([h()],j.prototype,"contextualToolLocation",void 0),e([h()],j.prototype,"groupCollapsePriorities",void 0),e([h()],j.prototype,"groupAllowCollapseOptions",void 0),e([h(),k("esri/widgets/Sketch/t9n/Sketch")],j.prototype,"messages",void 0),e([h(),k("esri/t9n/common")],j.prototype,"messagesCommon",void 0),e([h()],j.prototype,"snappingOptions",null),e([h()],j.prototype,"state",null),e([h({type:g})],j.prototype,"tooltipOptions",null),e([h({readOnly:!0})],j.prototype,"updateGraphics",null),e([h({type:y,nonNullable:!0})],j.prototype,"valueOptions",null),e([h()],j.prototype,"view",null),e([h({type:b}),P(["create","update","undo","redo"])],j.prototype,"viewModel",null),e([h({type:_,nonNullable:!0})],j.prototype,"visibleElements",void 0),e([h()],j.prototype,"_effectiveAvailableCreateTools",null),e([h()],j.prototype,"_defaultViewModel",void 0),e([h()],j.prototype,"_activeCustomToolOptions",void 0),e([h()],j.prototype,"_calcitePopoverReferenceElement",void 0),e([h()],j.prototype,"_relativeLocation",void 0),e([h()],j.prototype,"_popoverOpen",void 0),j=e([u("esri.widgets.Sketch")],j);const B=j;export{B as default};
|
|
2
|
+
import{__decorate as e}from"tslib";import{substitute as t}from"../intl.js";import{isSome as o}from"../core/arrayUtils.js";import{deprecateWidget as i}from"../core/deprecate.js";import{handlesGroup as l}from"../core/handleUtils.js";import s from"../core/Logger.js";import{removeMaybe as n,destroyMaybe as r}from"../core/maybe.js";import{ignoreAbortErrors as a}from"../core/promiseUtils.js";import{watch as p,syncAndInitial as c,when as d}from"../core/reactiveUtils.js";import{property as u,subclass as h}from"../core/accessorSupport/decorators.js";import{symbolTypes as v}from"../symbols/support/typeUtils.js";import m from"../views/interactive/sketch/SketchLabelOptions.js";import g from"../views/interactive/sketch/SketchTooltipOptions.js";import y from"../views/interactive/sketch/SketchValueOptions.js";import f from"./Widget.js";import b from"./Sketch/SketchViewModel.js";import _ from"./Sketch/VisibleElements.js";import w from"./Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js";import{loadCalciteComponents as T}from"./support/componentsUtils.js";import M from"./support/SelectionToolbar.js";import C from"./support/SketchTooltipControls.js";import S from"./support/SnappingControls.js";import{tsx as O,messageBundle as k,vmEvent as P}from"./support/widget.js";import I from"./support/SelectionToolbar/VisibleElements.js";import L from"./support/SketchTooltipControls/VisibleElements.js";const x="esri-sketch",E={base:x,vertical:`${x}--vertical`,docked:`${x}-bar`,floating:`${x}-pad`,chipHorizontal:`${x}__selection-count-chip--horizontal`,chipVertical:`${x}__selection-count-chip--vertical`,chipVerticalSmall:`${x}__selection-count-chip--vertical--s`,popoverWrapper:`${x}__popover-wrapper`},R={point:"pin",polyline:"line",polygon:"polygon",rectangle:"rectangle",circle:"circle",multipoint:"pins",mesh:"i3d-building",freehandPolygon:"freehand-area",freehandPolyline:"freehand",text:"add-text"};let G=class extends f{constructor(e,t){super(e,t),this._selectionToolbar=null,this._viewModelHandlesGroup=null,this._popoverElement=null,this.availableCreateTools=["point","polyline","polygon","rectangle","circle"],this.customToolOptions=null,this.customActions=null,this.toolbarKind="floating",this.contextualToolLocation="separate",this.groupCollapsePriorities=null,this.groupAllowCollapseOptions=null,this.messages=null,this.messagesCommon=null,this.visibleElements=new _,this._defaultViewModel=null,this._activeCustomToolOptions=null,this._calcitePopoverReferenceElement=null,this._relativeLocation="top",this._popoverOpen=!1,!0!==e?.suppressDeprecationWarning&&(this.announceDeprecation=()=>{i(s.getLogger(this),"Sketch","arcgis-sketch",{version:"5.0"})}),this._activateCreateTool=this._activateCreateTool.bind(this),this.viewModel=e?.viewModel||(this._defaultViewModel=new b({creationMode:e?.creationMode??"continuous",useLegacyCreateTools:e?.useLegacyCreateTools??"2d"!==e?.view?.type}))}normalizeCtorArgs(e={}){const{suppressDeprecationWarning:t,...o}=e;return o}initialize(){const{layer:e,view:t}=this,o="2d"===t?.type,i=new M({persistSelection:!1,visibleElements:new I({chip:!1,lassoTool:o,operationTypeControls:!1,pan:!1,pointTool:!1,rectangleTool:o}),view:t,sources:e?[e]:null,scale:this.scale});this.addHandles([p(()=>this.viewModel,e=>{this._viewModelHandlesGroup=n(this._viewModelHandlesGroup),e&&(this._viewModelHandlesGroup=l([e.on("create",()=>this.scheduleRender()),e.on("update",()=>this.scheduleRender()),e.on("delete",e=>this.emit("delete",e)),e.on("undo",()=>this.scheduleRender()),e.on("redo",()=>this.scheduleRender()),p(()=>e.layer,e=>{this._selectionToolbar&&(this._selectionToolbar.sources=e?[e]:null)}),p(()=>e.view,e=>{this._selectionToolbar&&(this._selectionToolbar.view=e)}),p(()=>e.state,()=>this.notifyChange("state"))]))},c),d(()=>i.activeOperation,()=>{this.viewModel.cancel(),this._activeCustomToolOptions=null}),i.on("complete",e=>this._onSelectionOperationComplete(e)),p(()=>{const{view:e,visibleElements:{selectionTools:t}}=this;return{lassoTool:"3d"!==e?.type&&!!t?.["lasso-selection"],rectangleTool:"3d"!==e?.type&&!!t?.["rectangle-selection"]}},e=>{Object.assign(i.visibleElements,e)},c)]),this._selectionToolbar=i}loadDependencies(){return T({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),popover:()=>import("@esri/calcite-components/dist/components/calcite-popover")})}destroy(){this._selectionToolbar?.destroy(),this._viewModelHandlesGroup=n(this._viewModelHandlesGroup)}get activeTool(){const e=this._selectionToolbar?.activeOperation;if(e)switch(e.toolName){case"lasso":return"lasso-selection";case"rectangle":return"rectangle-selection";case"default":return"custom-selection"}const{availableCreateTools:t}=this,{activeTool:o,activeCreateToolDrawMode:i}=this.viewModel;return"polygon"===o&&"freehand"===i&&t?.includes("freehandPolygon")?"freehandPolygon":"polyline"===o&&"freehand"===i&&t?.includes("freehandPolyline")?"freehandPolyline":this.viewModel.activeTool}get activeTooltip(){return this.viewModel.activeTooltip}get createGraphic(){return this.viewModel.createGraphic}get creationMode(){return this.viewModel.creationMode}set creationMode(e){this.viewModel.creationMode=e}get defaultCreateOptions(){return this.viewModel.defaultCreateOptions}set defaultCreateOptions(e){this.viewModel.defaultCreateOptions=e}get defaultUpdateOptions(){return this.viewModel.defaultUpdateOptions}set defaultUpdateOptions(e){this.viewModel.defaultUpdateOptions=e}get icon(){return"pencil"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}set layout(e){this._set("layout",e),this._selectionToolbar&&(this._selectionToolbar.layout=e)}get pointSymbol(){return this.viewModel.pointSymbol}set pointSymbol(e){this.viewModel.pointSymbol=e}get polygonSymbol(){return this.viewModel.polygonSymbol}set polygonSymbol(e){this.viewModel.polygonSymbol=e}get polylineSymbol(){return this.viewModel.polylineSymbol}set polylineSymbol(e){this.viewModel.polylineSymbol=e}get textSymbol(){return this.viewModel.textSymbol}set textSymbol(e){this.viewModel.textSymbol=e}set scale(e){this._set("scale",e),this._selectionToolbar&&(this._selectionToolbar.scale=e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get state(){return this._selectionToolbar?.activeOperation?"active":this.viewModel.state}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}get updateGraphics(){return this.viewModel.updateGraphics}get valueOptions(){return this.viewModel.valueOptions}set valueOptions(e){this.viewModel.valueOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){const t=this._get("viewModel");e!==t&&(t&&t===this._defaultViewModel&&r(t),t?.pluginManager?.sketch===this&&(t.pluginManager.sketch=null),this._set("viewModel",e),e.addHandles(p(()=>e.pluginManager,e=>{e&&(e.sketch=this)},c)))}get useLegacyCreateTools(){return this.viewModel.useLegacyCreateTools}set useLegacyCreateTools(e){this._set("useLegacyCreateTools",e)}get isUsingLegacyCreateTools(){return this.viewModel.isUsingLegacyCreateTools}get _effectiveAvailableCreateTools(){if(this.viewModel.effectiveAvailablePlugins?.length)return this.viewModel.effectiveAvailablePlugins;const{availableCreateTools:e,view:t,visibleElements:o}=this,i=e?.filter(e=>!!o.createTools?.[e]);return"3d"===t?.type?i?.filter(e=>"multipoint"!==e):i}create(e,t,o){const i=o?.createOptions??t;return this._activeCustomToolOptions=o,a(this.viewModel.create(e,i))}update(e,t){return a(this.viewModel.update(e,t))}complete(){this.viewModel.complete()}cancel(){this._selectionToolbar?.cancel(),this.viewModel.cancel(),this._activeCustomToolOptions=null}undo(){this.viewModel.undo(),this.view?.focus()}redo(){this.viewModel.redo(),this.view?.focus()}delete(){this.viewModel.delete()}duplicate(){return this.viewModel.duplicate()}dismissFloatingElements(){this._popoverOpen=!1}render(){const{toolbarKind:e,layout:t,scale:o}=this;return O("div",null,O("div",{classes:{[E.base]:!0,[E.floating]:"floating"===e,[E.docked]:"docked"===e,[E.vertical]:"vertical"===t}},O(w,{barStyle:e,layout:t,scale:o},this._renderSelectionSetItemGroupInline(),this._renderSelectionToolsOrBack(),this._renderCreateToolActionGroup(),this._renderUndoRedoMenuItemGroup(),this._renderSettingsMenuItemGroup()),this._renderSelectionSetToolbar(),this._renderSettingsMenuPopover()))}_renderSelectionToolsOrBack(){if(!this.viewModel.isUsingLegacyCreateTools&&this.viewModel.firstPluginWithSwappableLeaf)return this._renderBackButton();const e=this.customActions?.filter(e=>"selection-toolbar"===e.position);return O("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionTools")??!0,"group-kind":"split-button",key:"selection-split-button",priority:this.groupCollapsePriorities?.get("selectionTools")??0},this._renderDefaultSelectionButton(),this._selectionToolbar?.render(),e?.map(e=>this._renderToolbarItem(e)))}_renderSettingsMenuPopover(){const{messagesCommon:e,snappingOptions:t,view:o,viewModel:i,visibleElements:l}=this;if(!this._calcitePopoverReferenceElement)return;const s={directionModePicker:l.directionModePicker,labelsToggle:l.labelsToggle,tooltipsToggle:l.tooltipsToggle},n="horizontal"===this.layout?"top"===this._relativeLocation?"bottom-end":"top-end":"right-end";return O("calcite-popover",{afterCreate:e=>this._popoverElement=e,closable:!0,heading:e.settings,label:e.settings,open:this._popoverOpen,overlayPositioning:"fixed",placement:n,referenceElement:this._calcitePopoverReferenceElement,scale:this.scale,topLayerDisabled:this.topLayerDisabled,onCalcitePopoverBeforeClose:e=>this._beforePopoverClose(e.target),onCalcitePopoverBeforeOpen:e=>this._remeasurePopoverSizes(e.currentTarget),onCalcitePopoverClose:e=>this._refocusOnView(e.target)},O("div",{class:E.popoverWrapper},Object.values(s).includes(!0)?O(C,{sketchOptions:i.sketchOptions,visibleElements:new L(s)}):void 0,l.snappingControls&&o&&t?O(S,{snappingManager:this.viewModel.snappingManager,snappingOptions:t,view:o,visibleElements:l.snappingControlsElements}):void 0))}_beforePopoverClose(e){e===this._popoverElement&&(this._popoverOpen=!1)}_renderSelectionSetToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSelectionSetItemGroup();return e?.length?O(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSelectionSetItemGroupInline(){return"separate"===this.contextualToolLocation?[]:this._renderSelectionSetItemGroup()}_renderUndoRedoMenuItemGroup(){return O("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("undoRedo")??!0,"group-kind":"split-button",key:"undo-redo-menu",priority:this.groupCollapsePriorities?.get("undoRedo")??10,slot:"actions-end"},this._renderUndoButton(),this._renderRedoButton())}_renderSettingsMenuItemGroup(){const e=[],t=[];this.customActions?.forEach(o=>{"settings-before"===o.position?t.push(o):"settings-after"===o.position&&e.push(o)});const i=[...t.map(e=>this._renderToolbarItem(e)),this._renderSettingsMenuButton(),...e.map(e=>this._renderToolbarItem(e))].filter(o);if(i.length)return O("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("settings")??!1,"group-kind":"overflow-group",key:"settings-menu",priority:this.groupCollapsePriorities?.get("settings")??1e3,slot:"actions-end"},i)}_renderSelectionSetItemGroup(){if(!this.updateGraphics.length)return[];const e="inline-end"===this.contextualToolLocation?"actions-end":void 0,t=this.customActions?.filter(e=>"before-selection-set"===e.position),o=this.customActions?.filter(e=>"after-selection-set"===e.position),i=this.groupCollapsePriorities?.get("selectionSet")??100;return[O("div",{"group-kind":"measured-content",key:"selection-count-chip-group",priority:i,slot:e},this._renderFeatureCountChip()),O("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionSet")??!1,"group-kind":"overflow-group",key:"selection-set-tool-group",priority:i,slot:e},t?.map(e=>this._renderToolbarItem(e)),this._renderDuplicateButton(),this._renderDeleteButton(),o?.map(e=>this._renderToolbarItem(e)))]}_renderDefaultSelectionButton(){if(!this.viewModel.updateOnGraphicClick)return[];const{messages:e,state:t}=this;return this._renderToolbarItem({id:"pointer-select",text:e.selectFeature,icon:"cursor",onclick:this._activateDefaultSelectTool,active:"ready"===t})}_renderBackButton(){const{viewModel:e,isUsingLegacyCreateTools:t}=this;if(!t&&e.multiplePluginsActive&&e.firstPluginWithSwappableLeaf&&e.rootPlugins&&!(e.rootPlugins.length<2&&e.rootPlugins.includes(e.firstPluginWithSwappableLeaf)))return O("div",{"allow-collapse":!1,"group-kind":"overflow-group",key:"back-button-group"},O("calcite-action",{icon:"chevron-left",onclick:()=>{this.viewModel?.cancel()},scale:this.scale,text:this.messagesCommon.back}))}_renderCreateToolActionGroup(){const e=this.customToolOptions?.flatMap(e=>this._renderCustomToolItem(e))??[],t=this._effectiveAvailableCreateTools,o=t?.filter(e=>"string"==typeof e),i=o?.map(e=>this._renderCreateToolItem(e)),l=t?.filter(e=>"string"!=typeof e).map(e=>this._renderCreateToolItem(e));return[i?.length||e?.length||l?.length?O("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("createTools")??!0,"group-kind":"overflow-group",key:"create-tools-group",priority:this.groupCollapsePriorities?.get("createTools")??100},i,e,l):void 0]}_renderCreateToolItem(e){return"string"==typeof e?this._renderBuiltInCreateToolItem(e):this._renderDrawToolPluginItem(e)}_renderDrawToolPluginItem(e){const{icon:t,localizationKey:o,uniqueId:i,hidden:l}=e;if(l)return[];const s=this.messages.digitizers,n=s?.[o]??o,r=this.viewModel.drawTool?.pluginStack.some(e=>!e.configuration?.hidden&&e.configuration?.uniqueId===i);return this._renderToolbarItem({id:`${o}-button`,text:n,icon:t,onclick:()=>this._activatePlugin([e]),active:r})}_renderBuiltInCreateToolItem(e){return this._renderToolbarItem({id:`${e}-button`,text:this.messages.draw[e],icon:R[e],onclick:()=>this._activateCreateTool(e),active:this.activeTool===e&&!this._activeCustomToolOptions})}_renderCustomToolItem(e){const{toolKey:t}=e;return this._renderToolbarItem({id:`custom-${e.toolKey}`,text:e.label,icon:e.icon,onclick:()=>this._activateCreateTool(e.toolName,null,e),active:this._activeCustomToolOptions?.toolKey===t})}_renderUndoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"undo-button",text:this.messages.undo,icon:"undo",disabled:!this.viewModel.canUndo(),onclick:this.undo,flipRTL:!0}):[]}_renderRedoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"redo-button",text:this.messages.redo,icon:"redo",disabled:!this.viewModel.canRedo(),onclick:this.redo,flipRTL:!0}):[]}_renderSettingsMenuButton(){return this.visibleElements.settingsMenu?this._renderToolbarItem({id:"settings-menu-action",text:this.messagesCommon.settings,icon:"gear",active:this._popoverOpen,onclick:()=>this._popoverOpen=!this._popoverOpen,afterCreate:e=>this._calcitePopoverReferenceElement=e,afterUpdate:e=>this._calcitePopoverReferenceElement=e,afterRemoved:()=>this._calcitePopoverReferenceElement=null}):[]}_renderFeatureCountChip(){if(!this.visibleElements.selectionCountLabel)return[];const{layout:e,messages:o,scale:i,id:l,updateGraphics:{length:s}}=this,n=t(o.selectedCount,{count:s}),r="l"===i?999:99,a=s>r?t(o.selectedCountTruncated,{truncated:r}):s,p="l"!==i&&"vertical"===e,c=p?`${l}-selection-chip-small`:`${l}-selection-chip`;return[p?O("span",{classes:{[E.chipVertical]:!0,[E.chipVerticalSmall]:"s"===this.scale},id:c,tabIndex:0,title:n},a):O("calcite-chip",{appearance:"outline",class:"horizontal"===e?E.chipHorizontal:E.chipVertical,id:c,kind:"brand",label:n,scale:"l"===i?"m":"s",tabIndex:0,title:"vertical"===e?n:void 0},"vertical"===e?a:n)]}_renderDuplicateButton(){if(!this.visibleElements.duplicateButton)return[];const{messages:e}=this;return this._renderToolbarItem({id:"duplicate",text:this.updateGraphics.length>1?e.duplicateFeatures:e.duplicateFeature,icon:"copy",onclick:this._onDuplicateSelect})}_renderDeleteButton(){if(!this.visibleElements.deleteButton)return[];const{messages:e}=this,t=this.updateGraphics.length>1?e.deleteFeatures:e.deleteFeature;return this._renderToolbarItem({id:"delete",text:t,icon:"trash",onclick:this.delete})}_renderToolbarItem({id:e,text:t,icon:o,disabled:i,onclick:l,active:s,flipRTL:n,afterCreate:r,afterUpdate:a,afterRemoved:p}){const c=`${this.id}-${e}`;return[O("calcite-action",{active:s,afterCreate:r,afterRemoved:p,afterUpdate:a,bind:this,"data-testid":e,disabled:i||"disabled"===this.state,icon:o,iconFlipRtl:n??!1,id:c,key:e,onclick:l,scale:this.scale,text:t,title:t})]}_remeasurePopoverSizes(e){try{const t=e.parentElement,o=this?.view?.container?.getBoundingClientRect(),i=t?.style;if(!(t&&o&&i&&this.view?.container?.contains(t)))return;const l=this._calcitePopoverReferenceElement;if(!l)return;const{bottom:s,top:n}=l.getBoundingClientRect();if("horizontal"===this.layout){const e=s<o.height/2;e!==("top"===this._relativeLocation)&&(this._relativeLocation=e?"top":"bottom"),e?(i?.setProperty("--sketch-view-height-offset",s-o.top+"px"),i?.setProperty("--sketch-view-margin-offset","30px")):(i?.setProperty("--sketch-view-height-offset",o.bottom-n+"px"),i?.setProperty("--sketch-view-margin-offset","15px"))}else"vertical"===this.layout&&(i.setProperty("--sketch-view-height-offset","15px"),i.setProperty("--sketch-view-margin-offset","15px"));const r=e.shadowRoot?.querySelector("div.header")?.getBoundingClientRect().height;i.setProperty("--sketch-popover-header-offset",`${r}px`)}catch(t){s.getLogger(this.declaredClass).warnOnce("Sketch failed to lay out settings menu.",t)}}_activateCreateTool(e,t,o){const i=this._activeCustomToolOptions;if(o||i){if(o?.toolKey===i?.toolKey)return void this.cancel()}else if(this.activeTool===e)return void this.cancel();this._selectionToolbar?.cancel(),this.create(e,t,o)}_activatePlugin(e){this._selectionToolbar?.cancel(),this.viewModel.firstPluginWithSwappableLeaf?(this.viewModel.drawTool?.replaceLeaf(e),this.view?.ready&&this.view.focus()):this._activateCreateTool(e)}_onDuplicateSelect(){const e=this.duplicate(),t=this.viewModel.activeTool;"transform"!==t&&"reshape"!==t||this.update(e,{tool:t})}_onSelectionOperationComplete(e){const{viewModel:{defaultUpdateOptions:t}}=this,{selection:o}=e;if(!e.aborted&&o.length){const e=t.tool,i=o.length>1&&"reshape"===e?"transform":e;this.update(o,{...t,tool:i})}this.notifyChange("state")}_activateDefaultSelectTool(){this.cancel(),this.view?.focus()}_refocusOnView(e){this.activeTool&&e===this._popoverElement&&this.view?.focus()}};e([u()],G.prototype,"activeTool",null),e([u({readOnly:!0})],G.prototype,"activeTooltip",null),e([u({cast:e=>{if(!e?.length)return null;const t=new Set(["point","polyline","polygon","rectangle","circle","multipoint","freehandPolyline","freehandPolygon","mesh","text"]);return e.filter(e=>t.has(e))}})],G.prototype,"availableCreateTools",void 0),e([u({readOnly:!0})],G.prototype,"createGraphic",null),e([u()],G.prototype,"creationMode",null),e([u()],G.prototype,"customToolOptions",void 0),e([u()],G.prototype,"customActions",void 0),e([u()],G.prototype,"defaultCreateOptions",null),e([u()],G.prototype,"defaultUpdateOptions",null),e([u()],G.prototype,"icon",null),e([u()],G.prototype,"label",null),e([u({type:m})],G.prototype,"labelOptions",null),e([u()],G.prototype,"layer",null),e([u({type:["horizontal","vertical"],value:"horizontal"})],G.prototype,"layout",null),e([u({types:v})],G.prototype,"pointSymbol",null),e([u({types:v})],G.prototype,"polygonSymbol",null),e([u({types:v})],G.prototype,"polylineSymbol",null),e([u()],G.prototype,"textSymbol",null),e([u({value:"m"})],G.prototype,"scale",null),e([u()],G.prototype,"toolbarKind",void 0),e([u()],G.prototype,"contextualToolLocation",void 0),e([u()],G.prototype,"groupCollapsePriorities",void 0),e([u()],G.prototype,"groupAllowCollapseOptions",void 0),e([u(),k("esri/widgets/Sketch/t9n/Sketch")],G.prototype,"messages",void 0),e([u(),k("esri/t9n/common")],G.prototype,"messagesCommon",void 0),e([u()],G.prototype,"snappingOptions",null),e([u()],G.prototype,"state",null),e([u({type:g})],G.prototype,"tooltipOptions",null),e([u({readOnly:!0})],G.prototype,"updateGraphics",null),e([u({type:y,nonNullable:!0})],G.prototype,"valueOptions",null),e([u()],G.prototype,"view",null),e([u({type:b}),P(["create","update","undo","redo"])],G.prototype,"viewModel",null),e([u({type:_,nonNullable:!0})],G.prototype,"visibleElements",void 0),e([u({constructOnly:!0,value:!1})],G.prototype,"useLegacyCreateTools",null),e([u()],G.prototype,"isUsingLegacyCreateTools",null),e([u()],G.prototype,"_effectiveAvailableCreateTools",null),e([u()],G.prototype,"_defaultViewModel",void 0),e([u()],G.prototype,"_activeCustomToolOptions",void 0),e([u()],G.prototype,"_calcitePopoverReferenceElement",void 0),e([u()],G.prototype,"_relativeLocation",void 0),e([u()],G.prototype,"_popoverOpen",void 0),G=e([h("esri.widgets.Sketch")],G);const B=G;export{B as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1072,3447,9062],{1873(e,t,r){r.d(t,{$y:()=>R,Ak:()=>V,FM:()=>h,G_:()=>p,Rw:()=>j,Vb:()=>d,b3:()=>S,gJ:()=>u,jM:()=>A,lv:()=>O,oZ:()=>Z,qg:()=>y,sU:()=>L,z9:()=>c,zS:()=>E});var i=r(9760),n=r(84892);const s=/\s*(\+|-)?((\d+(\.\d+)?)|(\.\d+))\s*/gi,o=new Set(["esriFieldTypeDate","esriFieldTypeInteger","esriFieldTypeSmallInteger","esriFieldTypeSingle","esriFieldTypeDouble","esriFieldTypeLong","esriFieldTypeOID","esriFieldTypeBigInteger"]),l=new Set(["esriFieldTypeTimeOnly","esriFieldTypeDateOnly"]),a=["min","max","avg","stddev","count","sum","variance","nullcount","median"];function u(e){return null==e||"string"==typeof e&&!e?"<Null>":e}function d(e){const t=null!=e.normalizationField||null!=e.normalizationType,r=null!=e.minValue||null!=e.maxValue,i=!!e.sqlExpression&&e.supportsSQLExpression;return!t&&!r&&!i}function c(e){const{outStatisticTypes:t}=e,r=e.returnDistinct?[...new Set(e.values)]:e.values,i=r.filter(e=>null!=e).sort(),n=i.length,s={count:n,min:i[0],max:i[n-1]};return e.supportsNullCount&&(s.nullcount=r.length-n),!e.percentileParams||t?.include?.length&&!t.include.includes("median")||t?.exclude?.length&&t.exclude.includes("median")||(s.median=y(r,e.percentileParams)),s}function p(e){const{values:t,useSampleStdDev:r,supportsNullCount:i,outStatisticTypes:n}=e;let s=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,l=null,a=null,u=null,d=null,c=0;const p=null==e.minValue?-1/0:e.minValue,h=null==e.maxValue?1/0:e.maxValue;for(const e of t)Number.isFinite(e)?e>=p&&e<=h&&(l=null===l?e:l+e,s=Math.min(s,e),o=Math.max(o,e),c++):"string"==typeof e&&c++;if(c&&null!=l){a=l/c;let e=0;for(const r of t)Number.isFinite(r)&&r>=p&&r<=h&&(e+=(r-a)**2);d=r?c>1?e/(c-1):0:c>0?e/c:0,u=Math.sqrt(d)}else s=null,o=null;const f={avg:a,count:c,max:o,min:s,stddev:u,sum:l,variance:d};return i&&(f.nullcount=t.length-c),!e.percentileParams||n?.include?.length&&!n.include.includes("median")||n?.exclude?.length&&n.exclude.includes("median")||(f.median=y(t,e.percentileParams)),f}function y(e,t){const{fieldType:r,value:i,orderBy:n,isDiscrete:s}=t,o=h(r,"desc"===n,"case-insensitive");if(0===(e=[...e].filter(e=>null!=e).sort((e,t)=>o(e,t))).length)return null;if(i<=0)return e[0];if(i>=1)return e[e.length-1];const l=(e.length-1)*i,a=Math.floor(l),u=a+1,d=l%1,c=e[a],p=e[u];return u>=e.length||s||"string"==typeof c||"string"==typeof p?c:c*(1-d)+p*d}function h(e,t,r="case-sensitive"){if(e){if(o.has(e))return F(t);if(l.has(e))return C(t,!0);if("esriFieldTypeTimestampOffset"===e)return function(e){return e?w:v}(t);const i=C(t,"case-sensitive"===r);if("esriFieldTypeString"===e)return i;if("esriFieldTypeGUID"===e||"esriFieldTypeGlobalID"===e)return(e,t)=>i(T(e),T(t))}const i=t?1:-1,n=F(t),s=C(t,"case-sensitive"===r),a=g(t);return(e,t)=>"number"==typeof e&&"number"==typeof t?n(e,t):"string"==typeof e&&"string"==typeof t?s(e,t):a(e,t)??i}const f=(e,t)=>null==e?null==t?0:1:null==t?-1:null,m=(e,t)=>null==e?null==t?0:-1:null==t?1:null;function g(e){return e?f:m}const v=(e,t)=>m(e,t)??(e===t?0:new Date(e).getTime()-new Date(t).getTime()),w=(e,t)=>f(e,t)??(e===t?0:new Date(t).getTime()-new Date(e).getTime()),b=(e,t)=>m(e,t)??(e===t?0:e<t?-1:1),_=(e,t)=>f(e,t)??(e===t?0:e<t?1:-1);function C(e,t){if(t)return e?_:b;const r=g(e);return e?(e,t)=>{const i=r(e,t);return null!=i?i:(e=e.toUpperCase())>(t=t.toUpperCase())?-1:e<t?1:0}:(e,t)=>{const i=r(e,t);return null!=i?i:(e=e.toUpperCase())<(t=t.toUpperCase())?-1:e>t?1:0}}const M=(e,t)=>f(e,t)??t-e,x=(e,t)=>m(e,t)??e-t;function F(e){return e?M:x}function T(e){return e.slice(24,36)+e.slice(19,23)+e.slice(16,18)+e.slice(14,16)+e.slice(11,13)+e.slice(9,11)+e.slice(6,8)+e.slice(4,6)+e.slice(2,4)+e.slice(0,2)}function Z(e,t,r){let i;for(i in e)t?.include?.length&&!t.include.includes(i)||t?.exclude?.length&&t.exclude.includes(i)?delete e[i]:a.includes(i)&&(Number.isFinite(e[i])||(e[i]=null));return r?(["avg","stddev","variance"].forEach(t=>{null!=e[t]&&(e[t]=Math.ceil(e[t]??0))}),e):e}function S(e){const t={};for(let r of e)(null==r||"string"==typeof r&&""===r.trim())&&(r=null),null==t[r]?t[r]={count:1,data:r}:t[r].count++;return{count:t}}function I(e){return"coded-value"!==e?.type?[]:e.codedValues.map(e=>e.code)}function O(e,t,r,i){const n=e.count,s=[];if(r&&t){const e=[],r=I(t[0]);for(const n of r)if(t[1]){const r=I(t[1]);for(const s of r)if(t[2]){const r=I(t[2]);for(const t of r)e.push(`${u(n)}${i}${u(s)}${i}${u(t)}`)}else e.push(`${u(n)}${i}${u(s)}`)}else e.push(n);for(const t of e)n.hasOwnProperty(t)||(n[t]={data:t,count:0})}for(const e in n){const t=n[e];s.push({value:t.data,count:t.count,label:t.label})}return{uniqueValueInfos:s}}function E(e,t,r,i){let n=null;switch(t){case"log":0!==e&&(n=Math.log(e)*Math.LOG10E);break;case"percent-of-total":Number.isFinite(i)&&0!==i&&(n=e/i*100);break;case"field":Number.isFinite(r)&&0!==r&&(n=e/r);break;case"natural-log":e>0&&(n=Math.log(e));break;case"square-root":e>0&&(n=e**.5)}return n}function j(e,t,r){const s=function(e){const{breakCount:t,field:r,normalizationField:n,normalizationType:s}=e,o=e.classificationMethod||"equal-interval",l="standard-deviation"===o?e.standardDeviationInterval||1:void 0,a="defined-interval"===o?e.definedInterval:void 0;return new i.A({breakCount:t,classificationField:r,classificationMethod:o,normalizationField:"field"===s?n:void 0,normalizationType:s,standardDeviationInterval:l,definedInterval:a})}({field:t.field,normalizationType:t.normalizationType,normalizationField:t.normalizationField,classificationMethod:t.classificationMethod,standardDeviationInterval:t.standardDeviationInterval,definedInterval:t.definedInterval,breakCount:t.numClasses||5});return e=function(e,t,r){const i=t??-1/0,n=r??1/0;return e.filter(e=>Number.isFinite(e)&&e>=i&&e<=n)}(e,t.minValue,t.maxValue),(0,n.t)({definition:s,values:e,normalizationTotal:t.normalizationTotal},r)}function A(e,t){let r=e.classBreaks;const i=r.length,n=r[0]?.minValue,o=r[i-1]?.maxValue,l="standard-deviation"===t,a=s;return r=r.map(e=>{const t=e.label,r={minValue:e.minValue,maxValue:e.maxValue,label:t};if(l&&t){const e=t.match(a),i=e?.map(e=>+e.trim())??[];2===i.length?(r.minStdDev=i[0],r.maxStdDev=i[1],i[0]<0&&i[1]>0&&(r.hasAvg=!0)):1===i.length&&(t.includes("<")?(r.minStdDev=null,r.maxStdDev=i[0]):t.includes(">")&&(r.minStdDev=i[0],r.maxStdDev=null))}return r}),{minValue:n,maxValue:o,classBreakInfos:r,normalizationTotal:e.normalizationTotal}}function R(e,t){const r=L(e,t);if(null==r.min&&null==r.max)return{bins:[],minValue:r.min,maxValue:r.max,normalizationTotal:t.normalizationTotal};const i=r.intervals,n=r.min??0,s=r.max??0,o=i.map((e,t)=>({minValue:i[t][0],maxValue:i[t][1],count:0}));for(const t of e)if(null!=t&&t>=n&&t<=s){const e=V(i,t);e>-1&&o[e].count++}return{bins:o,minValue:n,maxValue:s,normalizationTotal:t.normalizationTotal}}function L(e,t,r=!1){const{field:i,classificationMethod:n,standardDeviationInterval:s,definedInterval:o,normalizationType:l,normalizationField:a,normalizationTotal:u,minValue:c,maxValue:y}=t,h=t.numBins||10;let f=null,m=null,g=null;if(n&&"equal-interval"!==n||l){const{classBreaks:t}=j(e,{field:i,normalizationType:l,normalizationField:a,normalizationTotal:u,classificationMethod:n,standardDeviationInterval:s,definedInterval:o,minValue:c,maxValue:y,numClasses:h},null!=c&&null!=y?[c,y]:void 0);f=t[0]?.minValue,m=t[t.length-1]?.maxValue,g=t.map(e=>[e.minValue,e.maxValue])}else{if(null!=c&&null!=y)f=c,m=y;else{const t=p({values:e,minValue:c,maxValue:y,useSampleStdDev:!l,supportsNullCount:d({normalizationType:l,normalizationField:a,minValue:c,maxValue:y})});f=t.min??null,m=t.max??null}g=function(e,t,r){const i=(t-e)/r,n=[];let s,o=e;for(let e=1;e<=r;e++)s=o+i,s=Number(s.toFixed(16)),n.push([o,e===r?t:s]),o=s;return n}(f??0,m??0,h)}if(r&&g.length){const e=g.at(-1)[1];g.push([e,e])}return{min:f,max:m,intervals:g}}function V(e,t){let r=-1;for(let i=e.length-1;i>=0;i--)if(t>=e[i][0]){r=i;break}return r}},22671(e,t,r){r.d(t,{A:()=>v});var i,n=r(5482),s=r(52106),o=r(66552),l=r(25482),a=r(4718),u=r(91429),d=r(16930),c=r(60408),p=r(65864),y=r(50498),h=r(20437),f=r(36005),m=r(43937);const g=new o.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let v=i=class extends l.o{constructor(e){super(e),this.displayFieldName=null,this.exceededTransferLimit=!1,this.features=[],this.fields=null,this.geometryType=null,this.hasM=!1,this.hasZ=!1,this.queryGeometry=null,this.spatialReference=null}readFeatures(e,t){return this.readFeaturesWithClass(e,t,s.A)}writeGeometryType(e,t,r,i){if(e)return void g.write(e,t,r,i);const{features:n}=this;if(n)for(const e of n)if(null!=e?.geometry)return void g.write(e.geometry.type,t,r,i)}readQueryGeometry(e,t){if(!e)return null;const r=!!e.spatialReference,i=(0,p.rS)(e);return i&&!r&&t.spatialReference&&(i.spatialReference=d.A.fromJSON(t.spatialReference)),i}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:r}=this;if(r)for(const e of r)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new i(this.cloneProperties())}cloneProperties(){return(0,a.o8)({displayFieldName:this.displayFieldName,exceededTransferLimit:this.exceededTransferLimit,features:this.features,fields:this.fields,geometryType:this.geometryType,hasM:this.hasM,hasZ:this.hasZ,queryGeometry:this.queryGeometry,spatialReference:this.spatialReference,transform:this.transform})}toJSON(e){const t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let r=0;r<t.features.length;r++){const i=t.features[r];if(i.geometry){const t=e?.[r];i.geometry=t?.toJSON()||i.geometry}}return t}quantize(e){const{scale:[t,r],translate:[i,n]}=e,s=this.features,o=this._getQuantizationFunction(this.geometryType,e=>Math.round((e-i)/t),e=>Math.round((n-e)/r));for(let e=0,t=s.length;e<t;e++)o?.(s[e].geometry)||(s.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:r}=this;if(!r)return this;const{translate:[i,n],scale:[s,o]}=r;let l=null,a=null;if(this.hasZ&&null!=r?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=r;l=r=>r*t+e}if(this.hasM&&null!=r?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=r;a=r=>null==r?r:r*t+e}const u=this._getHydrationFunction(e,e=>e*s+i,e=>n-e*o,l,a);for(const{geometry:e}of t)null!=e&&u&&u(e);return this.transform=null,this}readFeaturesWithClass(e,t,r){const i=d.A.fromJSON(t.spatialReference),n=[];for(let t=0;t<e.length;t++){const s=e[t],o=r.fromJSON(s),l=s.geometry?.spatialReference;null==o.geometry||l||(o.geometry.spatialReference=i);const a=s.aggregateGeometries,u=o.aggregateGeometries;if(a&&null!=u)for(const e in u){const t=u[e],r=a[e],n=r?.spatialReference;null==t||n||(t.spatialReference=i)}n.push(o)}return n}_quantizePoints(e,t,r){let i,n;const s=[];for(let o=0,l=e.length;o<l;o++){const l=e[o];if(o>0){const e=t(l[0]),o=r(l[1]);e===i&&o===n||(s.push([e-i,o-n]),i=e,n=o)}else i=t(l[0]),n=r(l[1]),s.push([i,n])}return s.length>0?s:null}_getQuantizationFunction(e,t,r){return"point"===e?e=>(e.x=t(e.x),e.y=r(e.y),e):"polyline"===e||"polygon"===e?e=>{const i=(0,c.Bi)(e)?e.rings:e.paths,n=[];for(let e=0,s=i.length;e<s;e++){const s=i[e],o=this._quantizePoints(s,t,r);o&&n.push(o)}return n.length>0?((0,c.Bi)(e)?e.rings=n:e.paths=n,e):null}:"multipoint"===e?e=>{const i=this._quantizePoints(e.points,t,r);return i&&i.length>0?(e.points=i,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,r,i,n){return"point"===e?e=>{e.x=t(e.x),e.y=r(e.y),i&&(e.z=i(e.z))}:"polyline"===e||"polygon"===e?e=>{const s=(0,c.Bi)(e)?e.rings:e.paths;let o,l;for(let e=0,i=s.length;e<i;e++){const i=s[e];for(let e=0,n=i.length;e<n;e++){const n=i[e];e>0?(o+=n[0],l+=n[1]):(o=n[0],l=n[1]),n[0]=t(o),n[1]=r(l)}}if(i&&n)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2]),r[3]=n(r[3])}}else if(i)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2])}}else if(n)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=n(r[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=r(e.ymin),e.xmax=t(e.xmax),e.ymax=r(e.ymax),i&&null!=e.zmax&&null!=e.zmin&&(e.zmax=i(e.zmax),e.zmin=i(e.zmin)),n&&null!=e.mmax&&null!=e.mmin&&(e.mmax=n(e.mmax),e.mmin=n(e.mmin))}:"multipoint"===e?e=>{const s=e.points;let o,l;for(let e=0,i=s.length;e<i;e++){const i=s[e];e>0?(o+=i[0],l+=i[1]):(o=i[0],l=i[1]),i[0]=t(o),i[1]=r(l)}if(i&&n)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=i(t[2]),t[3]=n(t[3])}else if(i)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=i(t[2])}else if(n)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=n(t[2])}}:null}};(0,n.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],v.prototype,"displayFieldName",void 0),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"exceededTransferLimit",void 0),(0,n.Cg)([(0,u.MZ)({type:[s.A],json:{write:!0}})],v.prototype,"features",void 0),(0,n.Cg)([(0,f.w)("features")],v.prototype,"readFeatures",null),(0,n.Cg)([(0,u.MZ)({type:[h.A],json:{write:!0}})],v.prototype,"fields",void 0),(0,n.Cg)([(0,u.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:g.read}}})],v.prototype,"geometryType",void 0),(0,n.Cg)([(0,m.K)("geometryType")],v.prototype,"writeGeometryType",null),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasM",void 0),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasZ",void 0),(0,n.Cg)([(0,u.MZ)({types:y.yR,json:{write:!0}})],v.prototype,"queryGeometry",void 0),(0,n.Cg)([(0,f.w)("queryGeometry")],v.prototype,"readQueryGeometry",null),(0,n.Cg)([(0,u.MZ)({type:d.A,json:{write:!0}})],v.prototype,"spatialReference",void 0),(0,n.Cg)([(0,m.K)("spatialReference")],v.prototype,"writeSpatialReference",null),(0,n.Cg)([(0,u.MZ)({json:{write:!0}})],v.prototype,"transform",void 0),v=i=(0,n.Cg)([(0,u.$K)("esri.rest.support.FeatureSet")],v),v.prototype.toJSON.isDefaultToJSON=!0},32587(e,t,r){r.d(t,{A:()=>s});var i=r(62788),n=r(95488);class s{constructor(e){this._observable=new n.I,this._notifyPending=!1,this._batchDepth=0,this._map=new Map(e)}get size(){return(0,i.gc)(this._observable),this._map.size}batch(e){try{this._batchDepth++,e()}finally{this._batchDepth--,this._notifyPending&&0===this._batchDepth&&(this._notifyPending=!1,this._notify())}}clear(){this._map.size>0&&(this._map.clear(),this._notify())}delete(e){const t=this._map.delete(e);return t&&this._notify(),t}entries(){return(0,i.gc)(this._observable),this._map.entries()}forEach(e,t){(0,i.gc)(this._observable),this._map.forEach((r,i)=>e.call(t,r,i,this),t)}get(e){return(0,i.gc)(this._observable),this._map.get(e)}has(e){return(0,i.gc)(this._observable),this._map.has(e)}keys(){return(0,i.gc)(this._observable),this._map.keys()}set(e,t){return this._map.set(e,t),this._notify(),this}transformValues(e,t=this._map.keys()){this.batch(()=>{for(const r of t){if(!this._map.has(r))continue;const t=this._map.get(r),i=e(t,r);i!==t&&this.set(r,i)}})}values(){return(0,i.gc)(this._observable),this._map.values()}[Symbol.iterator](){return(0,i.gc)(this._observable),this._map[Symbol.iterator]()}[Symbol.dispose](){this._observable.destroy()}get[Symbol.toStringTag](){return this._map[Symbol.toStringTag]}_notify(){this._batchDepth>0?this._notifyPending=!0:this._observable.notify()}}},32756(e,t,r){r.d(t,{Rr:()=>l,fY:()=>u,ne:()=>a});var i=r(5482),n=r(93637),s=r(91429),o=r(91880);function l(e,t,r){if(!e)return null;const i=e.find(e=>!!e.field);if(!i)return null;const n=new o.A;return n.read(i,r),[n]}const a={type:[o.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:l},write:{writer:function(e,t,r,i){const s=e.find(e=>!!e.field);s&&(0,n.sM)(r,[s.toJSON()],t)}}}},u=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.orderBy=null}};return(0,i.Cg)([(0,s.MZ)(a)],r.prototype,"orderBy",void 0),r=(0,i.Cg)([(0,s.$K)("esri.layers.mixins.OrderedLayer")],r),r}},33143(e,t,r){r.d(t,{A:()=>c});var i=r(5482),n=r(69540),s=r(25482),o=r(91429),l=r(8631),a=r(29005),u=r(36005),d=r(43937);let c=class extends((0,n.OU)(s.o)){constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const r of Object.keys(e))t[r]=(0,l.r)(e[r]);return t}writeDomains(e,t){const r={};for(const t of Object.keys(e))e[t]&&(r[t]=e[t]?.toJSON());t.domains=r}};(0,i.Cg)([(0,o.MZ)({json:{write:!0}})],c.prototype,"id",void 0),(0,i.Cg)([(0,o.MZ)({json:{write:!0}})],c.prototype,"name",void 0),(0,i.Cg)([(0,o.MZ)({json:{write:!0}})],c.prototype,"domains",void 0),(0,i.Cg)([(0,u.w)("domains")],c.prototype,"readDomains",null),(0,i.Cg)([(0,d.K)("domains")],c.prototype,"writeDomains",null),(0,i.Cg)([(0,o.MZ)({type:[a.A],json:{write:!0}})],c.prototype,"templates",void 0),c=(0,i.Cg)([(0,o.$K)("esri.layers.support.FeatureType")],c)},44794(e,t,r){r.d(t,{v:()=>l});var i=r(4718),n=r(62788),s=r(95488);class o{constructor(e,t){this._observable=new s.I,this._value=e,this._equalityFunction=t}get value(){return(0,n.gc)(this._observable),this._value}set value(e){this._equalityFunction(e,this._value)||(this._value=e,this._observable.notify())}mutate(e){e(this._value),this._observable.notify()}}function l(e,t=i.gh){return new o(e,t)}},46140(e,t,r){r.d(t,{A:()=>n});var i=r(49186);class n{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new i.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new n(this.major,this.minor,this._context)}static parse(e,t=""){const[r,s]=e.split("."),o=/^\s*\d+\s*$/;if(!r?.match||!o.test(r))throw new i.A((t&&t+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:e});if(!s?.match||!o.test(s))throw new i.A((t&&t+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:e});const l=parseInt(r,10),a=parseInt(s,10);return new n(l,a,t)}}},55674(e,t,r){r.d(t,{Ad:()=>y,Gj:()=>m,QY:()=>p,lL:()=>g,xR:()=>h});var i=r(66131),n=r(49186),s=(r(44208),r(44729)),o=r(15032),l=r(65864),a=r(95466),u=r(43668),d=r(98623);const c=["geometry","scale","timeProperties"];function p(e,t){if(null!=t)for(const r of c)t.hasArcadeDependency(r)&&e.add(r);return e}function y(e,t){return f.create(e,t,null,["$feature","$view"])}function h(e,t,r){return f.create(e,t,r,["$feature","$view","$config"])}class f{static async create(e,t,r,i){const{arcade:s,Dictionary:o}=await(0,u.l)();let l;try{l=s.parseScript(e)}catch(t){throw new n.A("arcade-bad-expression","Failed to parse arcade script",{script:e,error:t})}const a=s.scriptUsesGeometryEngine(l);a&&await s.enableGeometrySupport(),await s.loadDependentModules(new Set,l,null,!1,a);const d={vars:i.reduce((e,t)=>({...e,[t]:null}),{}),spatialReference:t,useAsync:!1},c=s.compileScript(l,d);let p=null;null!=r&&(p=new o(r),p.immutable=!0);const y=new o;return y.immutable=!1,y.setField("scale",0),new f(e,s,l,c,t,y,p,o)}constructor(e,t,r,i,n,s,o,l){this.script=e,this._arcade=t,this._syntaxTree=r,this._compiled=i,this._spatialReference=n,this._viewDict=s,this._configDict=o,this._dictionaryCtor=l,this._dependencies=new Map,this._featureReader=new m,this._dependencies.set("geometry",t.scriptTouchesGeometry(this._syntaxTree)),this._dependencies.set("scale",this._arcade.referencesMember(this._syntaxTree,"scale")),this._dependencies.set("timeProperties",this._arcade.scriptUsesViewProperties(this._syntaxTree,["timeProperties"]))}evaluate(e,t){const r=t.$view?.timeZone;if(t.$view){let e;if(this._viewDict.setField("scale",t.$view.scale),null!=t.$view.timeProperties){const{currentStart:n,currentEnd:s}=t.$view.timeProperties;e=new this._dictionaryCtor({currentStart:null!=n?null!=r?i.lY.epochToArcadeDate(n,r):i.lY.unknownEpochToArcadeDate(n):void 0,currentEnd:null!=s?null!=r?i.lY.epochToArcadeDate(s,r):i.lY.unknownEpochToArcadeDate(s):void 0,startIncluded:!0,endIncluded:!0})}this._viewDict.setField("timeProperties",e)}return this._compiled({vars:{$view:this._viewDict,$config:this._configDict,$feature:e},spatialReference:this._spatialReference,timeZone:r})}repurposeFeature(e,t){return this._featureReader.bind(e,t,this._spatialReference),this._featureReader}references(e){return this._dependencies.get(e)??!1}}class m{constructor(){this._boundTarget=null,this._boundSchema={fields:null,fieldsIndex:null,spatialReference:null,get geometryType(){return null},get objectIdField(){return null}},this.arcadeDeclaredClass="esri.arcade.Feature",this._contextTimeZone=null}bind(e,t,r){const i=t??new a.A(g(e.attributes));this._boundTarget=e,this._boundSchema.fields=i.fields,this._boundSchema.fieldsIndex=i,this._boundSchema.spatialReference=r}_getField(e){return this._boundSchema.fieldsIndex.get(e)}get contextTimeZone(){return this._contextTimeZone}set contextTimeZone(e){this._contextTimeZone=e}readArcadeFeature(){return this}hasField(e){return this._boundSchema.fieldsIndex.has(e)}geometry(){if("fromJSON"in this._boundTarget)return this._boundTarget.geometry;const e=(0,l.rS)(this._boundTarget.geometry);if(e){if(!this._boundSchema.spatialReference)throw new Error("InternalError: Expected spatial reference to be defined");e.spatialReference=this._boundSchema.spatialReference}return e}_hasGeometry(){return null!=this._boundTarget.geometry}isUnknownDateTimeField(e){return this._boundSchema.fieldsIndex.getTimeZone(e)===d.L5}field(e,t=!0){const r=this._getField(e);if(r){const t=this._boundTarget.attributes[r.name];if(null==t)return null;switch(r.type){case"date-only":case"esriFieldTypeDateOnly":return s.n.fromReader(t);case"time-only":case"esriFieldTypeTimeOnly":return o.k.fromReader(t);case"esriFieldTypeTimestampOffset":case"timestamp-offset":return i.lY.fromReaderAsTimeStampOffset(t);case"date":case"esriFieldTypeDate":return this.isUnknownDateTimeField(e)?i.lY.unknownEpochToArcadeDate(t):i.lY.epochToArcadeDate(t,this.contextTimeZone??d.qU);default:return t}}if(t)throw new Error(`Field ${e} does not exist`);return null}setField(e,t){throw new Error("Unable to update feature attribute values, feature is readonly")}keys(){return this._boundSchema.fieldsIndex.fields.map(e=>e.name)}isEmpty(){return this._boundSchema.fields.length<=0&&!this._hasGeometry()}castToText(e=!1){return JSON.stringify(this._boundTarget)}gdbVersion(){return null}fullSchema(){return this._boundSchema}castAsJson(e=null){return{attributes:this._boundTarget.attributes,geometry:!0===e?.keepGeometryType?this.geometry():this.geometry()?.toJSON()??null}}castAsJsonAsync(e=null,t=null){return Promise.resolve(this.castAsJson(t))}}function g(e){const t=[];for(const r in e)t.push({name:r,alias:r,type:"string"==typeof e[r]?"esriFieldTypeString":"esriFieldTypeDouble"});return t}},58501(e,t,r){r.d(t,{q:()=>n});var i=r(62815);function n(e,t,r){if(!r?.features||!r.hasZ)return;const n=(0,i.N)(r.geometryType,t,e.outSpatialReference);if(n)for(const e of r.features)n(e.geometry)}},61760(e,t,r){r.d(t,{PU:()=>o,YW:()=>a,ex:()=>n,hv:()=>l,zp:()=>s}),r(34727);var i=r(90629);r(78955),r(91829);const n=2.4;function s(e){return(0,i.PN)(e*n)}function o(e){return(0,i.Lz)(e)/n}function l(e,t,r){const i=Math.sqrt(e**2+t**2)/r;return i>1?0:3/(Math.PI*r**2)*(1-i**2)**2}function a(e){return"function"==typeof e?e:e?t=>+t[e]:()=>1}},62815(e,t,r){r.d(t,{N:()=>o,d:()=>l});var i=r(86211),n=r(73941),s=r(21325);function o(e,t,r){const i=l(t,r);if(1!==i)switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){null!=e?.z&&(e.z*=t)}(e,i);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e)for(const r of e.paths)for(const e of r)e.length>2&&(e[2]*=t)}(e,i);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e)for(const r of e.rings)for(const e of r)e.length>2&&(e[2]*=t)}(e,i);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const r of e.points)r.length>2&&(r[2]*=t)}(e,i);case"extent":case"esriGeometryEnvelope":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,i);default:return}}function l(e,t){return null==e||null==t||t.vcsWkid||(0,s.aI)(e,t)||(0,n.xP)(e)||(0,n.xP)(t)?1:(0,i.G9)(e)/(0,i.G9)(t)}},73681(e,t,r){r.d(t,{n:()=>a});var i=r(49186),n=r(53966),s=r(46140),o=r(95466),l=r(55674);class a{static async from(e,t,r){const o=e.dictionary_version?s.A.parse(e.dictionary_version):null,d=new Set(e.itemsNames),c={};if(t)for(const e in t)c[e]=t[e];if(e.authoringInfo.configuration)for(const t of e.authoringInfo.configuration)c.hasOwnProperty(t.name)||(c[t.name]=t.value);const p=new Set(e.authoringInfo.symbol);for(const e of Object.keys(r))p.delete(e);p.size&&n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("missing-fields: fieldMap entries for the following symbol fields are missing",{symbolFields:p});const y=await(0,l.xR)(e.expression,null,c);if(!y)throw new i.A("dictionary-renderer:expression-error","Unable to create dictionary renderer expression");const h=!o||!o.greaterEqual(4,0);h&&n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("Dictionary script does not support native field types. Applying fallback",{version:o});const f=new u(r,h);return new a(h,d,y,f)}constructor(e,t,r,i){this._requiresFieldCoercionToString=e,this._itemNames=t,this._compiled=r,this._reader=i}get itemNames(){return this._itemNames}evaluate(e,t,r,i){try{return this._reader.bind(e,r,i),this._compiled.evaluate(this._reader,{$view:{scale:t}})}catch(e){n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("arcade: dictionary script evaluation failed",{error:e})}return null}createDictionaryFieldsIndex(e){if(!this._requiresFieldCoercionToString)return new o.A(e);const t=e.map(e=>({...e,type:"esriFieldTypeString"}));return new o.A(t)}}class u extends l.Gj{constructor(e,t){super(),this._fieldMap=e,this._requiresFieldCoercionToString=t}_getField(e){const t=this._fieldMap[e]??e;return this._boundSchema.fieldsIndex.get(t)}field(e){if(!this._requiresFieldCoercionToString)return super.field(e,!1);const t=this._getField(e);return null==t||null==this._boundTarget.attributes[t.name]?"":""+this._boundTarget.attributes[t.name]}}},83508(e,t,r){r.r(t),r.d(t,{default:()=>fe});var i=r(5482),n=r(11254),s=r(7762),o=r(49186),l=r(91869),a=r(25728),u=r(74887),d=r(84952),c=r(91429),p=r(4146),y=r(36563),h=r(66344),f=r(32587),m=r(36708),g=r(44794),v=r(56507),w=r(63074),b=r(25036),_=r(10873),C=r(91880),M=r(1873);let x=class extends((0,b.j)((0,w.dM)((0,a.M)(p.A)))){constructor(e){super(e),this._layerCache=new h.q(20,e=>e.destroy()),this._oidToReference=new f.A,this._layerToReference=new Map,this.legendEnabled=!0,this.layers=new s.A,this.maximumVisibleSublayers=10,this.opacity=1,this.parent=null,this.persistenceEnabled=!0,this.title="Layers in view",this.type="catalog-dynamic-group",this.visible=!0}initialize(){this.addHandles([this.layers.on("after-add",({item:e})=>{e.parent=this}),this.layers.on("after-remove",({item:e})=>{e.parent=null}),(0,m.wB)(()=>this._orderBy,()=>{this._updateLayerSortValues(),this._sortAllLayers()})])}load(e){return this.addResolvingPromise(this.parent.load()),Promise.resolve(this)}destroy(){this._layerCache.destroy(),this._oidToReference.clear(),this._layerToReference.clear()}get _orderBy(){return this.parent?this.parent.orderBy?.find(e=>!e.valueExpression&&e.field)??new C.A({field:this.parent.objectIdField}):null}get _referenceComparator(){const e=this._orderBy;if(!this.parent||!e)return()=>0;const t=this.parent.fieldsIndex.get(e.field),r=(0,M.FM)(t?.toJSON().type,"descending"===e.order,"case-sensitive"),i=(0,M.FM)("esriFieldTypeOID","descending"===e.order);return(e,t)=>r(t.sortValue,e.sortValue)||i(t.objectId,e.objectId)}get fullExtent(){return this.parent?.fullExtent??null}get updating(){return(0,l.Bs)(this._oidToReference,({pending:e})=>null!=e)}acquireLayer(e){if(this.destroyed)return(0,y.hA)();const t=this._getLayerReference(e);return t.count++,(0,y.hA)(()=>{t.count--,t.count||this._destroyLayerReference(t)})}_getLayerReference(e){const t=e.getObjectId();return(0,l.tE)(this._oidToReference,t,()=>{const t=e.getObjectId(),r=`${t}`,i=e.getAttribute(this.parent.itemSourceField),n=new F(e,t,i),s=this._layerCache.pop(r);return s?(this._addLayer(n,s),n):(n.pending=this.parent.createLayerFromFootprint(e).then(e=>{n.count?this._addLayer(n,e):(this.destroyed||this._layerCache.get(r)||this._layerCache.put(r,e),n.layer=null)}).catch(()=>{}).finally(()=>{n.pending=null}),n)})}_destroyLayerReference(e){e.layer&&(this._layerToReference.delete(e.layer),this.layers.remove(e.layer),this.destroyed?e.layer.destroy():this._layerCache.put(`${e.objectId}`,e.layer),e.layer=null),this._oidToReference.delete(e.objectId)}_addLayer(e,t){e.layer=t,t.persistenceEnabled=!1,this._layerToReference.set(t,e),this._updateLayerSortValue(e),this.layers.add(t),this._sortAllLayers()}_updateLayerSortValues(){for(const e of this._layerToReference.values())this._updateLayerSortValue(e)}_updateLayerSortValue(e){this._orderBy&&(e.sortValue=e.footprint.getAttribute(this._orderBy.field))}_sortAllLayers(){this.layers.sort((e,t)=>this._referenceComparator(this._layerToReference.get(e),this._layerToReference.get(t)))}};(0,i.Cg)([(0,c.MZ)()],x.prototype,"_orderBy",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],x.prototype,"_referenceComparator",null),(0,i.Cg)([(0,c.MZ)(_.fV)],x.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,c.MZ)({type:["show","hide","hide-children"],json:{write:!0}})],x.prototype,"listMode",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],x.prototype,"fullExtent",null),(0,i.Cg)([(0,c.MZ)({type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}},write:{ignoreOrigin:!0,isRequired:!0}}})],x.prototype,"id",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],x.prototype,"layers",void 0),(0,i.Cg)([(0,c.MZ)({type:v.jz,range:{min:0,max:50},json:{write:!0,default:10}})],x.prototype,"maximumVisibleSublayers",void 0),(0,i.Cg)([(0,c.MZ)(_.ke)],x.prototype,"opacity",void 0),(0,i.Cg)([(0,c.MZ)({clonable:!1})],x.prototype,"parent",void 0),(0,i.Cg)([(0,c.MZ)({type:String,nonNullable:!0,json:{write:{ignoreOrigin:!0,isRequired:!0}}})],x.prototype,"title",void 0),(0,i.Cg)([(0,c.MZ)({json:{read:!1}})],x.prototype,"type",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],x.prototype,"updating",null),(0,i.Cg)([(0,c.MZ)({type:Boolean,json:{name:"visibility",write:!0}})],x.prototype,"visible",void 0),x=(0,i.Cg)([(0,c.$K)("esri.layers.catalog.CatalogDynamicGroupLayer")],x);class F{constructor(e,t,r){this.footprint=e,this.objectId=t,this.itemSource=r,this.count=0,this.layer=null,this.sortValue=void 0,this._pending=(0,g.v)(null)}get pending(){return this._pending.value}set pending(e){this._pending.value=e}}var T=r(37838),Z=r(4718),S=r(78247),I=r(55156),O=r(60950),E=r(89808),j=r(99959);const A=Symbol("isCatalogGraphicOrigin");var R;class L extends j.A{get[(R=A,O.ym)](){return this.layer}get[I.e](){return this.layer}get[E.Q](){return this.layer}constructor(e){super(),this[R]=!0,this.type="catalog",this.layer=e}get id(){return this.layer.id}}var V=r(87718),D=r(30524),P=r(46499),N=r(39383),z=r(96576),q=r(41214),G=r(30291),k=r(94985);let $=class extends((0,b.j)((0,V.F)((0,w.dM)((0,a.M)(p.A))))){constructor(e){super(e),this.attributeTableTemplate=null,this.charts=null,this.editingEnabled=!0,this.elevationInfo=null,this.formTemplate=null,this.graphicOrigin=new L(this),this.labelingInfo=null,this.labelsVisible=!0,this.legendEnabled=!0,this.maxScale=0,this.minScale=0,this.opacity=1,this.parent=null,this.persistenceEnabled=!0,this.popupEnabled=!0,this.popupTemplate=null,this.title="Footprints",this.type="catalog-footprint",this.visible=!0}load(e){return this.addResolvingPromise(this._doLoad(e)),Promise.resolve(this)}async _doLoad(e){await this.parent.load(e),(0,D.yp)(this.renderer,this.fieldsIndex),this.addHandles([this.parent.on("apply-edits",e=>this.emit("apply-edits",e)),this.parent.on("edits",e=>this.emit("edits",e)),this.parent.on("refresh",e=>this.emit("refresh",e))])}get apiKey(){return this.parent?.apiKey}get capabilities(){return this.parent?.capabilities}get customParameters(){return this.parent?.customParameters}get dateFieldsTimeZone(){return this.parent?.dateFieldsTimeZone??null}get datesInUnknownTimezone(){return this.parent?.datesInUnknownTimezone??!1}get definitionExpression(){return this.parent?.definitionExpression}get editingInfo(){return this.parent?.editingInfo}get effectiveCapabilities(){return this.parent?.effectiveCapabilities}get createQueryVersion(){return this.parent?.createQueryVersion}get defaultPopupTemplate(){return this.createPopupTemplate()}get displayField(){return this.parent?.displayField}get displayFilterEnabled(){return this.parent?.displayFilterEnabled??!0}get displayFilterInfo(){return this.parent?.displayFilterInfo??null}get effectiveEditingEnabled(){return!1}get fields(){return this.parent?.fields}get fieldsIndex(){return this.parent?.fieldsIndex}get fullExtent(){return this.parent?.fullExtent}get geometryFieldsInfo(){return this.parent?.geometryFieldsInfo}get geometryType(){return this.parent?.geometryType}get globalIdField(){return this.parent?.globalIdField}get hasM(){return this.parent?.hasM??!1}get hasZ(){return this.parent?.hasZ??!1}get objectIdField(){return this.parent?.objectIdField}get orderBy(){return this.parent?.orderBy??null}get outFields(){return this.parent?.outFields}get parsedUrl(){return this.parent?.parsedUrl??null}get preferredTimeZone(){return this.parent?.preferredTimeZone??null}set renderer(e){(0,D.yp)(e,this.fieldsIndex),this._set("renderer",e)}get renderer(){return this._isOverridden("renderer")?this._get("renderer"):function(){const e=new k.A({style:"solid",color:[0,0,0,0],outline:{style:"solid",color:[96,96,96,.75],width:.75}});return new z.A({symbol:e})}()}get returnM(){return this.parent?.returnM}get returnZ(){return this.parent?.returnZ}get source(){return this.parent?.source}get timeExtent(){return this.parent?.timeExtent}get timeInfo(){return this.parent?.timeInfo}get timeOffset(){return this.parent?.timeOffset}get typeIdField(){return this.parent?.typeIdField}get types(){return this.parent?.types}get useViewTime(){return this.parent?.useViewTime??!0}get version(){return this.parent?.version}async applyEdits(e,t){return await this.load(),this.parent.applyEdits(e,t)}createPopupTemplate(e){const t={fields:this.fields,objectIdField:this.objectIdField,title:this.title};return(0,G.tn)(t,e)}createQuery(){return this.parent?.createQuery()}getField(e){return this.parent?.getField(e)}getFieldDomain(e,t){return this.parent?.getFieldDomain(e,t)}async queryExtent(e,t){return await this.load(),this.parent.queryExtent(e,t)}async queryFeatures(e,t){return await this.load(),this.parent.queryFeatures(e,t)}async queryFeatureCount(e,t){return await this.load(),this.parent.queryFeatureCount(e,t)}async queryObjectIds(e,t){return await this.load(),this.parent.queryObjectIds(e,t)}async queryAttributeBins(e,t){return await this.load(),this.parent.queryAttributeBins(e,t)}};(0,i.Cg)([(0,c.MZ)(_.zQ)],$.prototype,"attributeTableTemplate",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"apiKey",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"capabilities",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"customParameters",null),(0,i.Cg)([(0,c.MZ)()],$.prototype,"dateFieldsTimeZone",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"datesInUnknownTimezone",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"definitionExpression",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"editingInfo",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"effectiveCapabilities",null),(0,i.Cg)([(0,c.MZ)({json:{origins:{"web-scene":{write:!1}},write:!0}})],$.prototype,"charts",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"createQueryVersion",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"displayField",null),(0,i.Cg)([(0,c.MZ)({type:Boolean,nonNullable:!0,json:{name:"enableEditing",write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],$.prototype,"editingEnabled",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"effectiveEditingEnabled",null),(0,i.Cg)([(0,c.MZ)((()=>{const e=(0,Z.o8)(_.Yj);return e.json.origins["web-map"]={read:!1,write:!1},e})())],$.prototype,"elevationInfo",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"fields",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"fieldsIndex",null),(0,i.Cg)([(0,c.MZ)({type:S.A,json:{name:"formInfo",write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],$.prototype,"formTemplate",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"fullExtent",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"geometryFieldsInfo",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"geometryType",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"globalIdField",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0,clonable:!1})],$.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"hasM",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"hasZ",null),(0,i.Cg)([(0,c.MZ)({type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}},write:{ignoreOrigin:!0,isRequired:!0}}})],$.prototype,"id",void 0),(0,i.Cg)([(0,c.MZ)({type:[P.A],json:{name:"layerDefinition.drawingInfo.labelingInfo",read:N.w,write:!0}})],$.prototype,"labelingInfo",void 0),(0,i.Cg)([(0,c.MZ)(_.kF)],$.prototype,"labelsVisible",void 0),(0,i.Cg)([(0,c.MZ)(_.fV)],$.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,c.MZ)({type:["show","hide"],json:{write:!0}})],$.prototype,"listMode",void 0),(0,i.Cg)([(0,c.MZ)((()=>{const e=(0,Z.o8)(_.hG);return e.json.origins.service.read=!1,e})())],$.prototype,"maxScale",void 0),(0,i.Cg)([(0,c.MZ)((()=>{const e=(0,Z.o8)(_.hn);return e.json.origins.service.read=!1,e})())],$.prototype,"minScale",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"objectIdField",null),(0,i.Cg)([(0,c.MZ)(_.ke)],$.prototype,"opacity",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"orderBy",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"outFields",null),(0,i.Cg)([(0,c.MZ)({clonable:!1})],$.prototype,"parent",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"parsedUrl",null),(0,i.Cg)([(0,c.MZ)(_.M6)],$.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,c.MZ)({type:T.A,json:{name:"popupInfo",write:!0}})],$.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"preferredTimeZone",null),(0,i.Cg)([(0,c.MZ)({types:q.Hg,json:{origins:{"web-scene":{types:q.XJ}},name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy(e,t){return{ignoreOrigin:this.originIdOf(t)<3}}}}})],$.prototype,"renderer",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"returnM",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"returnZ",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"source",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"timeExtent",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"timeInfo",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"timeOffset",null),(0,i.Cg)([(0,c.MZ)({type:String,nonNullable:!0,json:{write:{ignoreOrigin:!0,isRequired:!0}}})],$.prototype,"title",void 0),(0,i.Cg)([(0,c.MZ)({json:{read:!1}})],$.prototype,"type",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"typeIdField",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"types",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],$.prototype,"useViewTime",null),(0,i.Cg)([(0,c.MZ)({type:Boolean,json:{name:"visibility",write:!0}})],$.prototype,"visible",void 0),$=(0,i.Cg)([(0,c.$K)("esri.layers.catalog.CatalogFootprintLayer")],$);var B=r(72593),U=r(52136),J=r(18768),Q=r(69208),K=r(6455),Y=r(47685),H=r(10086),W=r(16131),X=r(32756),ee=r(8303),te=r(54310),re=r(82935),ie=r(15426),ne=r(33143),se=r(17036),oe=r(91908),le=r(20655),ae=r(80812),ue=r(39131),de=r(61956);const ce=(0,se.p)();function pe(e,t,r,i){const n=e.write({},i);(function(e){if(null==e)return!0;const t=Object.keys(e);return!t.length||1===t.length&&"id"===t[0]})(n)||(t[r]=n)}let ye=class extends((0,K.FJ)((0,H.j)((0,Y.w6)((0,w.dM)((0,X.fY)((0,re.e)((0,b.j)((0,te.J)((0,J.b)((0,W.q)((0,ee.A)((0,a.M)((0,Q.d)((0,U.p)(p.A))))))))))))))){constructor(e){super(e),this.legendEnabled=!0,this._portals=new Map,this._layerToFootprint=new WeakMap,this.drawOrderField="cd_draworder",this.dynamicGroupLayer=new x({parent:this}),this.elevationInfo=null,this.fields=null,this.fieldsIndex=null,this.floorInfo=null,this.footprintLayer=new $({parent:this}),this.itemNameField="cd_itemname",this.itemSourceField="cd_itemsource",this.itemTypeField="cd_itemtype",this.layers=new s.A([this.dynamicGroupLayer,this.footprintLayer]),this.maxScaleField="cd_maxscale",this.minScaleField="cd_minscale",this.orderBy=null,this.outFields=null,this.supportedSourceTypes=new Set(["Catalog Layer"]),this.source=new B.default({layer:this,supportedSourceTypes:this.supportedSourceTypes}),this.type="catalog",this.typeIdField=null,this.types=null}load(e){const t=null!=e?e.signal:null,r=this.loadFromPortal({supportedTypes:["Feature Service"]},e).catch(u.QP).then(async()=>{const{url:e,source:r,portalItem:i}=this;if(!e)throw new o.A("catalog-layer:missing-url","Catalog layer must be created with a url");if(null==this.layerId){const r=await this._fetchFirstValidLayerId(t);if(null==r)throw new o.A("catalog-layer:missing-layerId","There is no Catalog Layer in the service",{service:e});this.layerId=r}await r.load({signal:t});const{sourceJSON:n}=r;n&&(this.sourceJSON=n,this.read(n,{origin:"service",portalItem:i,portal:i?.portal,url:this.parsedUrl}))}).then(()=>{const e=[this.itemNameField,this.itemSourceField,this.itemTypeField,this.minScaleField,this.maxScaleField],t=e.filter(e=>!this.fieldsIndex.has(e));if(t.length)throw new o.A("catalog-layer:missing-fields","There are missing fields to operate properly",{requiredFields:e,missingFields:t})}).then(()=>(0,ie.VA)(this,"load",e));return this.addResolvingPromise(r),Promise.resolve(this)}destroy(){this.footprintLayer.destroy(),this.dynamicGroupLayer.destroy();for(const e of this._portals.values())e.destroy();this._portals.clear()}get createQueryVersion(){return this.commitProperty("definitionExpression"),this.commitProperty("timeExtent"),this.commitProperty("timeOffset"),this.commitProperty("geometryType"),this.commitProperty("capabilities"),(this._get("createQueryVersion")??0)+1}get editingEnabled(){return this.loaded&&null!=this.capabilities&&this.capabilities.operations.supportsEditing&&this.userHasEditingPrivileges}get effectiveEditingEnabled(){return!1}async applyEdits(e,t){return(0,ie.ct)(this,e,t)}async createLayerFromFootprint(e){const t=await this._createLayer(e);return this._configureLayer(t,e),this._layerToFootprint.set(t,e),t}createFootprintFromLayer(e){return this._layerToFootprint.get(e)?.clone()}createQuery(){const e=new de.A,t=this.capabilities?.query;e.returnGeometry=!0,t&&(e.compactGeometryEnabled=t.supportsCompactGeometry,e.defaultSpatialReferenceEnabled=t.supportsDefaultSpatialReference),e.outFields=["*"];const{timeOffset:r,timeExtent:i}=this;return e.timeExtent=null!=r&&null!=i?i.offset(-r.value,r.unit):i||null,e.where=this.definitionExpression||"1=1",e}getFeatureType(e){return(0,ie.xd)(this.types,this.typeIdField,e)}getFieldDomain(e,t){const r=t?.feature,i=this.getFeatureType(r);if(i){const t=i.domains&&i.domains[e];if(t&&"inherited"!==t.type)return t}return this.getField(e)?.domain}async hasDataChanged(){return(0,ie.jp)(this)}async queryFeatures(e,t){const r=await this.load(),i=await r.source.queryFeatures(de.A.from(e)??r.createQuery(),t),n=r.footprintLayer.graphicOrigin;if(i?.features)for(const e of i.features)e.layer=e.sourceLayer=r.footprintLayer,e.origin=n;return i}async queryObjectIds(e,t){return(await this.load()).source.queryObjectIds(de.A.from(e)??this.createQuery(),t)}async queryFeatureCount(e,t){return(await this.load()).source.queryFeatureCount(de.A.from(e)??this.createQuery(),t)}async queryExtent(e,t){return(await this.load()).source.queryExtent(de.A.from(e)??this.createQuery(),t)}serviceSupportsSpatialReference(e){return this.loaded&&(0,oe.D)(this,e)}read(e,t){if(super.read(e,t),e){const{footprintLayer:r,dynamicGroupLayer:i}=e;r&&this.footprintLayer.read(r,t),i&&this.dynamicGroupLayer.read(i,t)}}async queryAttributeBins(e,t){const{source:i,capabilities:n}=await this.load();(0,ie.ZJ)(e,n,"CatalogLayer");const s=await r.e(6956).then(r.bind(r,14575)),o=await i.queryAttributeBins(s.default.from(e),t);if(o.features)for(const e of o.features)e.layer=e.sourceLayer=this.footprintLayer;return o}async _fetchFirstValidLayerId(e){const{data:t}=await(0,n.A)(this.url,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});if(this.applyPreferredHost(t),Array.isArray(t?.layers))return t.layers.find(({type:e})=>!!e&&this.supportedSourceTypes.has(e))?.id}async _createLayer(e){const t=e.getAttribute(this.itemSourceField);if(!t)throw new o.A("catalog-layer:item-source-missing",`The footprint is missing the "${this.itemSourceField}" attribute`);const i=JSON.parse(t);if(function(e){return"object"==typeof e&&null!=e&&"itemId"in e&&"portalUrl"in e}(i)){const{itemId:e,portalUrl:t}=i,r=(0,ue.qG)(t),n=this.portalItem?.portal,s=le.A.getDefault();let o,a=!0;n&&(0,d.ut)(t,n.url)?o=n:(0,d.ut)(t,s.url)?o=s:(o=(0,l.tE)(this._portals,r,()=>new le.A({url:r})),a=!1);const u=await p.A.fromPortalItem(new ae.default({id:e,portal:o}));return a||await he(u),u}if(function(e){return"object"==typeof e&&null!=e&&"url"in e}(i))return p.A.fromArcGISServerUrl({url:i.url});const{default:n}=await r.e(7546).then(r.bind(r,45165));return new n}_configureLayer(e,t){const r=t.getAttribute(this.itemNameField);r&&(e.title=r);const i=t.getAttribute(this.maxScaleField);null!=i&&"maxScale"in e&&(e.maxScale=i);const n=t.getAttribute(this.minScaleField);null!=n&&"minScale"in e&&(e.minScale=n)}};async function he(e){if("portalItem"in e&&e.portalItem){try{await e.load()}catch{}e.portalItem=null,"group"===e.type&&await Promise.allSettled([...e.layers.map(e=>he(e)),...e.tables.map(e=>he(e))])}}(0,i.Cg)([(0,c.MZ)(_.fV)],ye.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"createQueryVersion",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"drawOrderField",void 0),(0,i.Cg)([(0,c.MZ)({type:x,readOnly:!0,json:{read:!1,write:{ignoreOrigin:!0,writer:pe}}})],ye.prototype,"dynamicGroupLayer",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"editingEnabled",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"effectiveEditingEnabled",null),(0,i.Cg)([(0,c.MZ)({json:{origins:{"web-scene":{name:"layerDefinition.elevationInfo",read:!1,write:!1}}}})],ye.prototype,"elevationInfo",void 0),(0,i.Cg)([(0,c.MZ)({...ce.fields,readOnly:!0,json:{origins:{service:{read:!0}},read:!1}})],ye.prototype,"fields",void 0),(0,i.Cg)([(0,c.MZ)(ce.fieldsIndex)],ye.prototype,"fieldsIndex",void 0),(0,i.Cg)([(0,c.MZ)({json:{origins:{"web-scene":{name:"layerDefinition.floorInfo",read:!1,write:!1}}}})],ye.prototype,"floorInfo",void 0),(0,i.Cg)([(0,c.MZ)({type:$,readOnly:!0,json:{read:!1,write:{ignoreOrigin:!0,writer:pe}}})],ye.prototype,"footprintLayer",void 0),(0,i.Cg)([(0,c.MZ)(_.id)],ye.prototype,"id",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"itemNameField",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"itemSourceField",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"itemTypeField",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"layers",void 0),(0,i.Cg)([(0,c.MZ)({type:["show","hide","hide-children"]})],ye.prototype,"listMode",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"maxScaleField",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"minScaleField",void 0),(0,i.Cg)([(0,c.MZ)({value:"CatalogLayer",type:["CatalogLayer"]})],ye.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,c.MZ)({json:{origins:{"web-scene":{name:"layerDefinition.orderBy",write:!0,read:!0}}}})],ye.prototype,"orderBy",void 0),(0,i.Cg)([(0,c.MZ)(ce.outFields)],ye.prototype,"outFields",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ye.prototype,"source",void 0),(0,i.Cg)([(0,c.MZ)({json:{read:!1}})],ye.prototype,"type",void 0),(0,i.Cg)([(0,c.MZ)({type:String})],ye.prototype,"typeIdField",void 0),(0,i.Cg)([(0,c.MZ)({type:[ne.A]})],ye.prototype,"types",void 0),ye=(0,i.Cg)([(0,c.$K)("esri.layers.CatalogLayer")],ye);const fe=ye},87718(e,t,r){r.d(t,{F:()=>T,Y:()=>F});var i,n=r(5482),s=r(91429),o=r(49186),l=r(25482),a=r(93637),u=r(76369),d=r(66552),c=r(4718),p=r(50498),y=r(61956),h=r(79677);const f=new d.J({esriSpatialRelIntersects:"intersects",esriSpatialRelContains:"contains",esriSpatialRelCrosses:"crosses",esriSpatialRelDisjoint:"disjoint",esriSpatialRelEnvelopeIntersects:"envelope-intersects",esriSpatialRelIndexIntersects:"index-intersects",esriSpatialRelOverlaps:"overlaps",esriSpatialRelTouches:"touches",esriSpatialRelWithin:"within",esriSpatialRelRelation:"relation"}),m=new d.J({esriSRUnit_Meter:"meters",esriSRUnit_Kilometer:"kilometers",esriSRUnit_Foot:"feet",esriSRUnit_StatuteMile:"miles",esriSRUnit_NauticalMile:"nautical-miles",esriSRUnit_USNauticalMile:"us-nautical-miles"});let g=i=class extends l.o{constructor(e){super(e),this.where=null,this.geometry=null,this.spatialRelationship="intersects",this.distance=void 0,this.objectIds=null,this.units=null,this.timeExtent=null}createQuery(e={}){const{where:t,geometry:r,spatialRelationship:i,timeExtent:n,objectIds:s,units:o,distance:l}=this;return new y.A({geometry:(0,c.o8)(r),objectIds:(0,c.o8)(s),spatialRelationship:i,timeExtent:(0,c.o8)(n),where:t,units:o,distance:l,...e})}clone(){const{where:e,geometry:t,spatialRelationship:r,timeExtent:n,objectIds:s,units:o,distance:l}=this;return new i({geometry:(0,c.o8)(t),objectIds:(0,c.o8)(s),spatialRelationship:r,timeExtent:(0,c.o8)(n),where:e,units:o,distance:l})}};(0,n.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],g.prototype,"where",void 0),(0,n.Cg)([(0,s.MZ)({types:p.yR,json:{write:!0}})],g.prototype,"geometry",void 0),(0,n.Cg)([(0,s.MZ)({type:f.apiValues,json:{name:"spatialRel",read:{reader:f.read},write:{allowNull:!1,writer:f.write,overridePolicy(){return{enabled:null!=this.geometry}}}}})],g.prototype,"spatialRelationship",void 0),(0,n.Cg)([(0,s.MZ)({type:Number,json:{write:{overridePolicy(e){return{enabled:null!=e&&null!=this.geometry}}}}})],g.prototype,"distance",void 0),(0,n.Cg)([(0,s.MZ)({type:[Number],json:{write:!0}})],g.prototype,"objectIds",void 0),(0,n.Cg)([(0,s.MZ)({type:m.apiValues,json:{read:m.read,write:{writer:m.write,overridePolicy(e){return{enabled:null!=e&&null!=this.geometry}}}}})],g.prototype,"units",void 0),(0,n.Cg)([(0,s.MZ)({type:h.A,json:{write:!0}})],g.prototype,"timeExtent",void 0),g=i=(0,n.Cg)([(0,s.$K)("esri.layers.support.FeatureFilter")],g);const v=g;var w;const b={read:{reader:u.LF},write:{writer:u.M9,overridePolicy(){return{allowNull:null!=this.excludedEffect,isRequired:null==this.excludedEffect}}}},_={read:{reader:u.LF},write:{writer:u.M9,overridePolicy(){return{allowNull:null!=this.includedEffect,isRequired:null==this.includedEffect}}}},C={name:"showExcludedLabels",default:!0};let M=w=class extends l.o{constructor(e){super(e),this.filter=null,this.includedEffect=null,this.excludedEffect=null,this.excludedLabelsVisible=!1}write(e,t){const r=super.write(e,t);if(t?.origin){if(r.filter){const e=Object.keys(r.filter);if(e.length>1||"where"!==e[0])return t.messages?.push(new o.A("web-document-write:unsupported-feature-effect","Invalid feature effect 'filter'. A filter can only contain a 'where' property",{layer:t.layer,effect:this})),null}if("showExcludedLabels"in r)return t.messages?.push(new o.A("web-document-write:unsupported-feature-effect","Invalid value for property 'excludedLabelsVisible' which should always be 'true'",{layer:t.layer,effect:this})),null}return r}clone(){return new w({filter:null!=this.filter?this.filter.clone():null,includedEffect:this.includedEffect,excludedEffect:this.excludedEffect,excludedLabelsVisible:this.excludedLabelsVisible})}};(0,n.Cg)([(0,s.MZ)({type:v,json:{write:{allowNull:!0,writer(e,t,r,i){const n=e?.write({},i);n&&0!==Object.keys(n).length?(0,a.sM)(r,n,t):(0,a.sM)(r,null,t)}}}})],M.prototype,"filter",void 0),(0,n.Cg)([(0,s.MZ)({json:{read:u.LF,write:{writer:u.M9,allowNull:!0},origins:{"web-map":b,"portal-item":b}}})],M.prototype,"includedEffect",void 0),(0,n.Cg)([(0,s.MZ)({json:{read:u.LF,write:{writer:u.M9,allowNull:!0},origins:{"web-map":_,"portal-item":_}}})],M.prototype,"excludedEffect",void 0),(0,n.Cg)([(0,s.MZ)({type:Boolean,json:{write:!0,name:"showExcludedLabels",origins:{"web-map":C,"portal-item":C}}})],M.prototype,"excludedLabelsVisible",void 0),M=w=(0,n.Cg)([(0,s.$K)("esri.layers.support.FeatureEffect")],M);const x={write:{allowNull:!0}},F={type:M,json:{origins:{"web-map":x,"portal-item":x}}},T=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.featureEffect=null}};return(0,n.Cg)([(0,s.MZ)(F)],r.prototype,"featureEffect",void 0),r=(0,n.Cg)([(0,s.$K)("esri.layers.mixins.FeatureEffectLayer")],r),r}},91880(e,t,r){r.d(t,{A:()=>u});var i,n=r(5482),s=r(66552),o=r(25482),l=r(91429);const a=new s.J({asc:"ascending",desc:"descending"});let u=class extends o.o{static{i=this}constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new i({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,n.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],u.prototype,"field",void 0),(0,n.Cg)([(0,l.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],u.prototype,"valueExpression",void 0),(0,n.Cg)([(0,l.MZ)({type:a.apiValues,json:{type:a.jsonValues,read:a.read,write:a.write}})],u.prototype,"order",void 0),u=i=(0,n.Cg)([(0,l.$K)("esri.layers.support.OrderByInfo")],u)},96520(e,t,r){r.d(t,{u:()=>o});var i=r(86211),n=r(21325);function s(e,t,r){if(null==e.hasM||e.hasZ)for(const e of t)for(const t of e)t.length>2&&(t[2]*=r)}function o(e,t,r){if(!e&&!t||!r)return;const n=(0,i.G9)(r);l(e,r,n),l(t,r,n)}function l(e,t,r){if(e)for(const i of e)a(i.geometry,t,r)}function a(e,t,r){if(!e?.spatialReference||(0,n.aI)(e.spatialReference,t))return;const o=(0,i.G9)(e.spatialReference)/r;if(1!==o)if("x"in e)null!=e.z&&(e.z*=o);else if("rings"in e)s(e,e.rings,o);else if("paths"in e)s(e,e.paths,o);else if("points"in e&&(null==e.hasM||e.hasZ))for(const t of e.points)t.length>2&&(t[2]*=o)}}}]);
|