@arcgis/core 4.34.0-next.74 → 4.34.0-next.75
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/PopupTemplate.js +1 -1
- package/applications/Components/QuantityFormatter.js +1 -1
- package/arcade/Pixel.js +5 -0
- package/arcade/featureSetUtils.js +1 -1
- package/arcade/featureset/actions/GroupBy.js +1 -1
- package/arcade/featureset/actions/OrderBy.js +1 -1
- package/arcade/functions/featuresetbase.js +1 -1
- package/arcade/functions/featuresetstring.js +1 -1
- package/arcade/functions/fieldStats.js +1 -1
- package/arcade/functions/geometry.js +1 -1
- package/arcade/functions/maths.js +1 -1
- package/arcade/functions/string.js +1 -1
- package/arcade/languageUtils.js +1 -1
- package/arcade.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/009556f323e58271bc7a.js +1 -0
- package/assets/esri/core/workers/chunks/{11acefc48c0354e675df.js → 0309d008e50e55c7ff1d.js} +1 -1
- package/assets/esri/core/workers/chunks/{dd447dfc50ee7f511b84.js → 19c1f1431c0b2f4525a2.js} +1 -1
- package/assets/esri/core/workers/chunks/{7219ceab0b6fae2e69b6.js → 280af3640f8e93c1024e.js} +2 -2
- package/assets/esri/core/workers/chunks/{5a476e6743902e35f81a.js.LICENSE.txt → 280af3640f8e93c1024e.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/{e3ad0a390387c5847aca.js → 356c96fad88558be9054.js} +1 -1
- package/assets/esri/core/workers/chunks/{ada8e07ff12bc5d4a1d9.js → 37ff19a9c5c99bd4e7c7.js} +1 -1
- package/assets/esri/core/workers/chunks/{d12f373fcf5848ddcd8a.js → 3f523bc8551e712c9bd4.js} +1 -1
- package/assets/esri/core/workers/chunks/{5b7e5ec6aea1f7f9b005.js → 3fecfe4f8ca2a5fd7360.js} +1 -1
- package/assets/esri/core/workers/chunks/{78b33c6d73824085c6d1.js → 48449abe795cb7a831eb.js} +1 -1
- package/assets/esri/core/workers/chunks/541bffd61006d0e36166.js +1 -0
- package/assets/esri/core/workers/chunks/{f4e9640306f64b1af7a3.js → 65ec21d29e8563fdbc55.js} +1 -1
- package/assets/esri/core/workers/chunks/67d9cfe02613cb73ee37.js.LICENSE.txt +1 -1
- package/assets/esri/core/workers/chunks/{fb669a2e50ca7aacac25.js → 71fef0a33b7ed9456e47.js} +1 -1
- package/assets/esri/core/workers/chunks/7430c462c350fdd26349.js +1 -0
- package/assets/esri/core/workers/chunks/{ff3fe5c97a98c8cab4ac.js → 7a23b127f551bf13ef54.js} +2 -2
- package/assets/esri/core/workers/chunks/{ff3fe5c97a98c8cab4ac.js.LICENSE.txt → 7a23b127f551bf13ef54.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/{9c00c2263e52ad51c2a2.js → 8e428b0f33ef4688415e.js} +1 -1
- package/assets/esri/core/workers/chunks/{d682dd49bb9ee7f48f93.js → 9304c3cdf732745577fd.js} +1 -1
- package/assets/esri/core/workers/chunks/93b2e0a300b2758a1ca4.js +1 -0
- package/assets/esri/core/workers/chunks/{8d642b34d40edfe02d8e.js → 9c64b78c5c9b35b31d98.js} +2 -2
- package/assets/esri/core/workers/chunks/{8d642b34d40edfe02d8e.js.LICENSE.txt → 9c64b78c5c9b35b31d98.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/{6dc62c170e9583222df2.js → a25b75de1bca1dd21941.js} +1 -1
- package/assets/esri/core/workers/chunks/a6533bab3b2fbc1e2a47.js +1 -0
- package/assets/esri/core/workers/chunks/{5c53deb45bc142219c76.js → b15ff6c9ef2de8a49853.js} +2 -2
- package/assets/esri/core/workers/chunks/{5c53deb45bc142219c76.js.LICENSE.txt → b15ff6c9ef2de8a49853.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/bccecd678faff927ac76.js +1 -0
- package/assets/esri/core/workers/chunks/{ce1f4508487298ab57b6.js → bd2dc1282c49125ede89.js} +1 -1
- package/assets/esri/core/workers/chunks/{f542bdc994a5ea3aa9d1.js → c38360d912f256519e06.js} +1 -1
- package/assets/esri/core/workers/chunks/cd1869e183001266c4c1.js +2 -0
- package/assets/esri/core/workers/chunks/{626c18c1bbc50b3b16b2.js.LICENSE.txt → cd1869e183001266c4c1.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/{90321feb56f3a84f6e58.js → d153b29c542c37ae1636.js} +2 -2
- package/assets/esri/core/workers/chunks/{90321feb56f3a84f6e58.js.LICENSE.txt → d153b29c542c37ae1636.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/d55c55d39a253630d228.js +1 -0
- package/assets/esri/core/workers/chunks/{49f7a5523462aebf90fc.js → d66cdb9bb494da19696b.js} +2 -2
- package/assets/esri/core/workers/chunks/{49f7a5523462aebf90fc.js.LICENSE.txt → d66cdb9bb494da19696b.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/ed773dab5965e42a2879.js +2 -0
- package/assets/esri/core/workers/chunks/{7219ceab0b6fae2e69b6.js.LICENSE.txt → ed773dab5965e42a2879.js.LICENSE.txt} +1 -1
- package/assets/esri/images/portal/xrexperience16.png +0 -0
- package/chunks/Fog.glsl.js +6 -6
- package/chunks/GlowComposition.glsl.js +31 -12
- package/chunks/LineMarker.glsl.js +37 -36
- package/chunks/RibbonLine.glsl.js +83 -83
- package/chunks/array.js +1 -1
- package/chunks/languageUtils.js +1 -1
- package/config.js +1 -1
- package/core/quantityFormatUtils.js +1 -1
- package/core/unitFormatUtils.js +1 -1
- package/core/unitUtils.js +1 -1
- package/form/FormTemplate.js +1 -1
- package/geometry/support/curves/circleUtils.js +1 -1
- package/geometry/support/curves/circularArcUtils.js +1 -1
- package/geometry/support/curves/closestPointOnCurve.js +1 -1
- package/geometry/support/curves/curveExtent.js +1 -1
- package/geometry/support/curves/lineUtils.js +5 -0
- package/interfaces.d.ts +270 -18
- package/kernel.js +1 -1
- package/layers/ImageryLayer.js +1 -1
- package/layers/ImageryTileLayer.js +1 -1
- package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
- package/layers/support/fieldUtils.js +1 -1
- package/package.json +2 -2
- package/portal/PortalItem.js +1 -1
- package/renderers/ClassBreaksRenderer.js +1 -1
- package/renderers/DictionaryRenderer.js +1 -1
- package/renderers/DotDensityRenderer.js +1 -1
- package/renderers/HeatmapRenderer.js +1 -1
- package/renderers/PieChartRenderer.js +1 -1
- package/renderers/UniqueValueRenderer.js +1 -1
- package/renderers/mixins/VisualVariablesMixin.js +1 -1
- package/support/arcadeUtils.js +1 -1
- package/support/loadArcade.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/CIMSymbol.js +1 -1
- package/symbols/support/FeatureExpressionInfo.js +1 -1
- package/views/2d/layers/LayerView2D.js +1 -1
- package/views/3d/analysis/Dimension/DimensionVisualization.js +1 -1
- package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
- package/views/3d/analysis/Dimension/lengthDimensionManipulatorUtils.js +1 -1
- package/views/3d/analysis/Slice/ResizeManipulator.js +1 -1
- package/views/3d/analysis/Slice/RotateManipulator.js +1 -1
- package/views/3d/analysis/Slice/ShiftManipulator.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedFieldOfViewManipulation.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementTool.js +1 -1
- package/views/3d/environment/Fog.js +1 -1
- package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/MarkerVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
- package/views/3d/layers/FlowSubView3D.js +1 -1
- package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/support/Tiles3DIntersectionHandler.js +1 -1
- package/views/3d/state/SurfaceCollisionConstraint.js +1 -1
- package/views/3d/state/ViewStateManager.js +1 -1
- package/views/3d/state/controllers/SurfaceCollisionCorrectionController.js +1 -1
- package/views/3d/support/flow/FlowSubViewExtent3D.js +1 -1
- package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
- package/views/3d/support/flow/FlowWorker.js +1 -1
- package/views/3d/support/flow/geometryUtils.js +1 -1
- package/views/3d/support/flow/loadUtils.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +23 -13
- package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +36 -23
- package/views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js +11 -11
- package/views/3d/webgl-engine/core/shaderLibrary/util/NoPerspective.glsl.js +5 -0
- package/views/3d/webgl-engine/effects/glow/GlowComposition.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/glow/GlowPresets.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/glow/GlowRenderNode.js +1 -1
- package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
- package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
- package/views/GroundView.js +1 -1
- package/views/interactive/snapping/allLayerSnapping.js +1 -1
- package/views/layers/ImageryLayerView.js +1 -1
- package/views/support/LayerViewManager.js +1 -1
- package/widgets/Feature/support/arcadeFeatureUtils.js +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/assets/esri/core/workers/chunks/5a476e6743902e35f81a.js +0 -2
- package/assets/esri/core/workers/chunks/5a95688651d7e8b7101d.js +0 -1
- package/assets/esri/core/workers/chunks/626c18c1bbc50b3b16b2.js +0 -2
- package/assets/esri/core/workers/chunks/6da298da2ec09cced0b5.js +0 -1
- package/assets/esri/core/workers/chunks/8b1d2bbb2b2eb1830921.js +0 -1
- package/assets/esri/core/workers/chunks/a2f4b6d8da93f106852c.js +0 -1
- package/assets/esri/core/workers/chunks/d305ca524837c5dc81c8.js +0 -1
- package/assets/esri/core/workers/chunks/e6f2ac738df16fb5e13a.js +0 -1
- package/assets/esri/core/workers/chunks/e8d25d4ca9b335883f34.js +0 -1
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../../Color.js";import{addTokenParameter as i}from"../../../kernel.js";import s from"../../../request.js";import l from"../../../core/Accessor.js";import{isSome as r}from"../../../core/arrayUtils.js";import n from"../../../core/Collection.js";import has from"../../../core/has.js";import{JSONMap as a}from"../../../core/jsonMap.js";import o from"../../../core/Logger.js";import{clamp as u}from"../../../core/mathUtils.js";import{debounce as c,timeout as d}from"../../../core/promiseUtils.js";import{on as y,watch as h,initial as f,whenOnce as p}from"../../../core/reactiveUtils.js";import{px2pt as m}from"../../../core/screenUtils.js";import{parseWhereClause as g}from"../../../core/sql.js";import{addQueryParameters as b}from"../../../core/urlUtils.js";import{property as _}from"../../../core/accessorSupport/decorators/property.js";import{subclass as S}from"../../../core/accessorSupport/decorators/subclass.js";import{EffectView as w}from"../../../layers/effects/EffectView.js";import{getEffectiveDisplayFilter as v}from"../../../layers/support/displayFilterUtils.js";import{ExportImageParameters as L}from"../../../layers/support/ExportImageParameters.js";import{collectFields as E,collectArcadeFieldNames as F}from"../../../layers/support/fieldUtils.js";import{isFeatureLayer as C}from"../../../layers/support/layerUtils.js";import{getPixelValueRange as I}from"../../../layers/support/rasterFormats/pixelRangeUtils.js";import{fromJSON as R}from"../../../renderers/support/jsonUtils.js";import{isSupportedRenderer3D as V}from"../../../renderers/support/rendererConversion.js";import D from"../../../renderers/visualVariables/SizeVariable.js";import x from"../../../renderers/visualVariables/support/SizeVariableLegendOptions.js";import{updateReferenceSizeSymbol as z}from"../../../smartMapping/renderers/support/referenceSizeUtils.js";import T from"../../../symbols/SimpleFillSymbol.js";import j from"../../../symbols/SimpleMarkerSymbol.js";import{applyCIMSymbolColor as O}from"../../../symbols/support/cimSymbolUtils.js";import{renderSymbol as M}from"../../../symbols/support/renderUtils.js";import{renderColorRampPreviewHTML as P,renderDotDensityPreviewHTML as k,renderPieChartPreviewHTML as U,renderPreviewHTML as A}from"../../../symbols/support/symbolUtils.js";import{getCSSFilterFromEffectList as B,isVolumetricSymbol as q}from"../../../symbols/support/utils.js";import{getEffectiveClusterSizeVariable as N}from"./clusterUtils.js";import{getColorFromPointCloudStops as $,getRampStopsForPointCloud as H,getStretchRampStops as W,getRampStops as G}from"./colorRampUtils.js";import{getHeatmapRampStops as Q}from"./heatmapRampUtils.js";import{getRotationAngleForFocus as J,getRelationshipRampElement as Z}from"./relationshipRampUtils.js";import{getRampStops as K,realWorldMaxSize as X,realWorldMinSize as Y}from"./sizeRampUtils.js";import{mergeWhereClauses as ee,specialCharsLessThan as te,specialCharsGreaterThan as ie,getAuthoringInfoVisualVariableByTheme as se,getSymbolForFlowRenderer as le,getMedianColor as re,rgbImgSource as ne,getDateFormatOptions as ae}from"./utils.js";import{formatNumberLabel as oe}from"../../smartMapping/support/utils.js";const ue=16,ce="https://utility.arcgis.com/sharing/tools/legend",de="esri.layers.ImageryLayer",ye="esri.layers.ImageryTileLayer",he="esri.layers.WCSLayer",fe=/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i,pe=new a({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryMultiPatch:"multipatch"}),me=new j({size:6,outline:{color:[128,128,128,.5],width:.5}}),ge=new T({style:"solid"});function be(e){return"flow"===e.type}function _e(e){return"vector-field"===e.type}function Se(e){return"raster-colormap"===e.type}function we(e){return"raster-stretch"===e.type}function ve(e){return"raster-shaded-relief"===e.type}function Le(e){return"esri.renderers.SimpleRenderer"===e.declaredClass}function Ee(e){return"esri.renderers.ClassBreaksRenderer"===e.declaredClass}function Fe(e){return"esri.renderers.UniqueValueRenderer"===e.declaredClass}function Ce(e){return"esri.renderers.HeatmapRenderer"===e.declaredClass}function Ie(e){return Ve(e)||De(e)||xe(e)||Re(e)}function Re(e){return"esri.renderers.PointCloudRGBRenderer"===e.declaredClass}function Ve(e){return"esri.renderers.PointCloudClassBreaksRenderer"===e.declaredClass}function De(e){return"esri.renderers.PointCloudStretchRenderer"===e.declaredClass}function xe(e){return"esri.renderers.PointCloudUniqueValueRenderer"===e.declaredClass}function ze(e){return"esri.renderers.DotDensityRenderer"===e.declaredClass}function Te(e){return"esri.renderers.PieChartRenderer"===e.declaredClass}function je(e,t){return Le(e)||Ee(e)||Fe(e)||Ce(e)||ze(e)||Te(e)?"2d"===t.type||V(e):we(e)||Se(e)||ve(e)||Ve(e)||De(e)||xe(e)||_e(e)||be(e)}function Oe(e){return"esri.layers.BuildingSceneLayer"===e.declaredClass}function Me(e){return"esri.layers.SubtypeGroupLayer"===e.declaredClass}function Pe(e){return"esri.layers.VoxelLayer"===e.declaredClass}function ke(e){return"esri.layers.WMSLayer"===e.declaredClass}function Ue(e){return"esri.layers.WMTSLayer"===e.declaredClass}function Ae(e){return"esri.layers.MapImageLayer"===e.declaredClass}function Be(e){return"esri.layers.TileLayer"===e.declaredClass}function qe(e){return e.declaredClass===de}function Ne(e){return e.declaredClass===ye}function $e(e){return e.declaredClass===he}function He(e){return"stretch-ramp"===e.type}function We(e){const t="authoringInfo"in e?e?.authoringInfo:null;return"univariate-color-size"===t?.type}function Ge(e){const t="authoringInfo"in e?e?.authoringInfo:null;return"univariate-color-size"===t?.type&&"above-and-below"===t?.univariateTheme}function Qe(e){return"sublayers"in e}function Je(e){return e&&"symbol"in e}function Ze(e,t){const{field:i,field2:s,field3:l,fieldDelimiter:r,valueExpression:n}=e;if(!i)return null;const a=!(!i&&!n||!s&&!l)?t?.toString().split(r||""):[t],o=i?{[i]:a?.[0]}:null;return o&&(s&&(o[s]=a?.[1]),l&&(o[l]=a?.[2])),o}const Ke=new j({style:"path",path:"M10,5 L5,0 0,5 M5,0 L5,15",size:15,outline:{width:1,color:[85,85,85,1]}});let Xe={};const Ye=new WeakMap;let et=class extends l{constructor(e){super(e),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._loading=!1,this._webStyleSymbolCache=new Map,this._dotDensityUrlCache=new Map,this._scaleDrivenSizeVariable=null,this._hasClusterSizeVariable=!1,this._layerDefinitionExpression=null,this._layerDefinitionExpressionClause=null,this._layerDisplayFilter=null,this._layerDisplayFilterClause=null,this.children=new n,this.layerView=null,this.layer=null,this.legendElements=[],this.parent=null,this.hideLayersNotInCurrentView=!1,this.keepCacheOnDestroy=!1,this.respectLayerDefinitionExpression=!1,this.respectLayerVisibility=!0,this.sublayerIds=[],this.title=null,this.view=null}initialize(){const e=()=>this.notifyChange("ready");this.addHandles([y(()=>this.children,"change",t=>{const{added:i,removed:s}=t;i.forEach(t=>{const i=`activeLayerInfo-ready-watcher-${t.layer.uid}`;this.addHandles(h(()=>t.ready,e,f),i)}),s.forEach(e=>this.removeHandles(e.layer.uid)),e()})]),this.keepCacheOnDestroy||(Xe={})}destroy(){this._webStyleSymbolCache=null,this._dotDensityUrlCache=null,this._scaleDrivenSizeVariable=null,this.keepCacheOnDestroy||(Xe=null),this._layerDefinitionExpressionClause=null}get cssEffectFilter(){const{layer:e,scale:t}=this,i="effect"in e?e.effect:null;if(!i)return null;const s=new w({effect:i});return s.endTransition(),s.scale=t,B(s,!0)}get loading(){return this.children.length>0?this.children.some(e=>e.loading):this._loading}get opacity(){const e=this.layer.opacity,t=this.parent?.opacity,i=this.layer.parent,s=i&&"uid"in i?this._getParentLayerOpacity(i):null;return null!=t?t*e:null!=s?s*e:e}get ready(){return null===this.layer||(this.children.length>0?this._isGroupActive():this.legendElements.length>0)}get scale(){return this.view?.scale??0}get isScaleDriven(){const e=this.layer;if(null===e)return!1;if("effect"in e&&e.effect&&Array.isArray(e.effect))return!0;if("featureReduction"in e&&e.featureReduction){if("cluster"===e.featureReduction.type)return!0;if("binning"===e.featureReduction.type&&"renderer"in e.featureReduction&&e.featureReduction.renderer)return this._isRendererScaleDriven(e.featureReduction.renderer)}return"renderer"in e&&e.renderer?!!("displayFilterInfo"in e&&e.displayFilterInfo&&Fe(e.renderer))||this._isRendererScaleDriven(e.renderer):this._isLayerScaleDriven(this.layer)}get version(){return this._get("version")+1}async buildLegendElementsForFeatureCollections(e){this._loading=!0;if(!(!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView()))return this.legendElements=[],this._loading=!1,void this.notifyChange("ready");const t=Array.from(e,e=>{if(C(e))return this._getRendererLegendElements(e.renderer,{title:e.title});if(e.featureSet?.features.length){const t=e.layerDefinition,i=t?.drawingInfo,s=i&&R(i.renderer),l=pe.read(t.geometryType);return s?this._getRendererLegendElements(s,{title:e.name,geometryType:l}):(o.getLogger(this).warn("drawingInfo not available!"),null)}return null});try{const e=[],i=await Promise.allSettled(t);for(const t of i)if("fulfilled"===t.status)for(const i of t.value??[])e.push(i);this.legendElements=e}catch(i){o.getLogger(this).warn("error while building legend for layer!",i)}finally{this._loading=!1,this.notifyChange("ready")}}async buildLegendElementsForRenderer(e){try{this._loading=!0;const t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getRendererLegendElements(e):[]}catch(t){o.getLogger(this).warn("error while building legend for layer!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async buildLegendElementsForFeatureReduction(e){try{this._loading=!0;const t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getLegendElementsForFeatureReduction(e):[]}catch(t){o.getLogger(this).warn("error while building legend for layer!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async buildLegendElementsForTools(){this._loading=!0;const e=this.layer;if(Pe(e))await this._constructLegendElementsForVoxelLayer();else if(Ue(e))this._constructLegendElementsForWMTSlayer();else if(ke(e))await this._constructLegendElementsForWMSSublayers();else if(Oe(e))await this._constructLegendElementsForBuildingSceneLayer();else if(Ae(e)||Be(e)||Me(e))await this._constructLegendElementsForSublayers();else{this.removeHandles("imageryLayers-watcher");let t="default";if(qe(e)){const i=e;t=(i?.rasterFunction?.functionName||"default")+"_"+(e.bandIds?.length?e.bandIds.join(""):"###")}if(Ne(e)||"link-chart"===e.type)return;await this._getLegendLayers(`${e.uid}-${t}`).then(async t=>{this.legendElements=[];const i=t.map(async t=>{if(qe(e)){const t=h(()=>[e.rasterFunction,e.bandIds],()=>c(async()=>{Xe.default=null,e.renderer?await this.buildLegendElementsForRenderer(e.renderer):await this.buildLegendElementsForTools()})());this.addHandles(t,"imageryLayers-watcher")}const i=this._generateSymbolTableElementForLegendLayer(t);i?.infos.length&&(qe(e)&&(i.title=e.title),this.legendElements.push(i))});await Promise.allSettled(i)}).catch(e=>{o.getLogger(this).warn("Request to server for legend has failed!",e)})}this._loading=!1,this.notifyChange("ready")}async _isLayerInCurrentView(e){const t=this.layer,i=this.layerView,s=i&&"createQuery"in i&&"queryFeatureCount"in i;if(!s&&!(i&&"createQuery"in t&&"queryFeatureCount"in t))return!0;await p(()=>!i.updating);const l=s?"createQuery"in i&&i.createQuery():"createQuery"in t&&t.createQuery();if(!l)return!0;l.geometry=this.view.extent,e&&(l.where=ee(l.where,e));return 0!==(s?"queryFeatureCount"in i&&await i.queryFeatureCount(l):"queryFeatureCount"in t&&await t.queryFeatureCount(l))}_getParentLayerOpacity(e){let t=1;const i=e.parent;return i&&"uid"in i&&(t=this._getParentLayerOpacity(i)),e.opacity*t}_isGroupActive(){return this.children.some(e=>e.ready)}_isRendererScaleDriven(e){if("dot-density"===e.type)return!0;const t="valueExpression"in e?e.valueExpression:null;if(fe.test(t))return!0;const i="visualVariables"in e?e.visualVariables:null;return!!i?.some(e=>this._isScaleDrivenSizeVariable(e))||this._hasScaleDrivenSymbols(e)}_hasScaleDrivenSymbols(e){switch(e.type){case"simple":return this._isScaleDrivenSymbol(e.symbol);case"class-breaks":return this._isScaleDrivenSymbol(e.defaultSymbol)||e.classBreakInfos.some(e=>this._isScaleDrivenSymbol(e.symbol));case"unique-value":return this._isScaleDrivenSymbol(e.defaultSymbol)||!!e.uniqueValueInfos?.some(e=>this._isScaleDrivenSymbol(e.symbol))}return!1}_isScaleDrivenSymbol(e){if("cim"===e?.type){const{primitiveOverrides:t,minScale:i,maxScale:s}=e.data,l=t?.some(e=>(e.valueExpressionInfo?.expression||"").includes("$view.scale"))??!1;return null!=i||null!=s||l}return!1}_isScaleDrivenSizeVariable(e){if(e&&"size"!==e.type)return!1;const t=e,i=t.minSize,s=t.maxSize;return!("object"!=typeof i||!i||!this._isScaleDrivenSizeVariable(i))||(!("object"!=typeof s||!s||!this._isScaleDrivenSizeVariable(s))||fe.test(t.valueExpression))}_isLayerScaleDriven(e){if("minScale"in e&&e.minScale>0||"maxScale"in e&&e.maxScale>0)return!0;if("sublayers"in e&&e.sublayers)return e.sublayers.some(e=>this._isLayerScaleDriven(e));const t=e.parent;if(!1===e.loaded&&t&&Ae(t)&&"source"in e&&e.source&&"map-layer"===e.source.type)for(const i of t.sourceJSON.layers??[])if(i.id===e.source.mapLayerId&&(i.minScale>0||i.maxScale>0))return!0;return!1}async _constructLegendElementsForVoxelLayer(){this._loading=!0,this.legendElements=[],this.removeHandles("voxel-style-watcher"),this.removeHandles("voxel-current-variable");const e=this.layer;this.addHandles(h(()=>e.currentVariableId,()=>this._constructLegendElementsForVoxelLayer()),"voxel-current-variable"),this.addHandles(h(()=>e.getVariableStyles(),()=>this._constructLegendElementsForVoxelLayer()),"voxel-style-watcher");const t=e.getVariableStyle(null),i=[];if(t)if(t.uniqueValues?.length){const e=[];t.uniqueValues.forEach(t=>{t.enabled&&e.push({label:t.label||`${t.value}`,value:t.value,symbol:new T({color:t.color,outline:null})})}),e.length&&i.push({type:"symbol-table",title:t.label,infos:e})}else if(t.transferFunction){const{colorStops:e,stretchRange:s}=t.transferFunction,l=e.toArray().reverse(),r=s.map((e,t)=>`${0===t?te:ie} ${oe(e)}`).reverse(),n=l.map(e=>({color:e.color,value:null,label:null}));n[0].label=r[0],n[n.length-1].label=r[1],i.push({type:"color-ramp",title:t.label,infos:n,preview:P(l.map(e=>e.color))})}await this._generatePreviewsForLegendElements(i,{opacity:e.opacity}),this.legendElements=i,this._loading=!1,this.notifyChange("ready")}_constructLegendElementsForWMTSlayer(){this._loading=!0,this.legendElements=[],this.removeHandles("wmts-activeLayer-watcher");const e=this.layer.activeLayer;this.addHandles(h(()=>{const{layer:e}=this;return e&&"activeLayer"in e&&e.activeLayer},()=>this._constructLegendElementsForWMTSlayer()),"wmts-activeLayer-watcher");const t=e.styleId?e.styles?.find(({id:t})=>t===e.styleId)?.legendUrl:void 0;t&&(this.legendElements=[{type:"symbol-table",title:e.title,infos:[{src:t,opacity:this.opacity}]}]),this._loading=!1,this.notifyChange("ready")}async _constructLegendElementsForWMSSublayers(){this._loading=!0,this.legendElements=[],this.removeHandles("wms-sublayers-watcher");const e=this.layer;let t=null;(e.customParameters||e.customLayerParameters)&&(t={...e.customParameters,...e.customLayerParameters}),this.addHandles(h(()=>{const{layer:e}=this;return e&&"sublayers"in e&&e.sublayers},()=>this._constructLegendElementsForWMSSublayers()),"wms-sublayers-watcher"),this.legendElements=await this._generateLegendElementsForWMSSublayers(e.sublayers,t),this._loading=!1,this.notifyChange("ready")}async _generateLegendElementsForWMSSublayers(e,t){const i=this.layer,s=[];this.addHandles(e.on("change",()=>this._constructLegendElementsForWMSSublayers()),"wms-sublayers-watcher");const l=this.sublayerIds?.map(e=>i.findSublayerById(e))?.filter(r)??[],n=l.length?l:e.toArray();for(const r of n){const e=h(()=>[r.title,r.visible,r.legendEnabled],()=>this._constructLegendElementsForWMSSublayers());if(this.addHandles(e,"wms-sublayers-watcher"),!this.respectLayerVisibility||r.visible&&r.legendEnabled){const e=await this._generateSymbolTableElementForWMSSublayer(r,t);e?.infos.length&&s.unshift(e)}}return s}async _generateSymbolTableElementForWMSSublayer(e,t){if(!e.legendUrl&&e.sublayers){const i=(await this._generateLegendElementsForWMSSublayers(e.sublayers,t)).filter(e=>e);return{type:"symbol-table",title:e.title,infos:i}}return this._generateSymbolTableElementForLegendUrl(e,t)}async _generateSymbolTableElementForLegendUrl(e,t){let i=e.legendUrl;if(!i)return;const l={type:"symbol-table",title:e.title||e.name||String(e.id??""),infos:[]};t&&(i=b(i,t));let r=null;const n=e.layer?.opacity;try{r=(await s(i,{responseType:"image"})).data,r&&(r.style.opacity=n)}catch{}return l.infos.push({src:i,preview:r,opacity:n}),l}_getLegendLayers(e,t){const i=Xe&&Xe[e];return i?Promise.resolve(i):this._legendRequest(t).then(t=>{const i=t.layers;return Xe[e]=i,i})}_legendRequest(e){const t=this.layer;let i={f:"json",dynamicLayers:e};if(qe(t)){const e=t.exportImageServiceParameters.rasterFunction;if(e&&(i.renderingRule=JSON.stringify(e.functionDefinition?.toJSON()||e.toJSON())),t.bandIds&&(i.bandIds=t.bandIds.join()),t.raster||t.viewId||t.customParameters){const{raster:e,viewId:s,customParameters:l}=t;i={raster:e,viewId:s,...i,...l}}}let l=t.url.replace(/(\/)+$/,"");if("version"in t&&+t.version>=10.01){const e=l.indexOf("?");e>-1?l=l.slice(0,e)+"/legend"+l.slice(e):l+="/legend"}else{const e=l.toLowerCase().indexOf("/rest/"),t=-1===e?l:l.slice(0,e)+l.slice(e+5);l=ce+"?soapUrl="+encodeURI(t)+"&returnbytes=true"}return s(l,{query:i}).then(e=>e.data)}async _constructLegendElementsForBuildingSceneLayer(){this._loading=!0,this.legendElements=[],this.removeHandles("sublayers-watcher");const e=this.layer;this.addHandles(h(()=>e.sublayers,()=>this._constructLegendElementsForBuildingSceneLayer()),"sublayers-watcher");try{this.legendElements=await this._generateLegendElementsForBuildingSublayers(e.sublayers,this.opacity)}catch(t){o.getLogger(this).warn("Request to server for legend has failed!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async _generateLegendElementsForBuildingSublayers(e,t){let i=[];this.addHandles(e.on("change",()=>this._constructLegendElementsForBuildingSceneLayer()),"sublayers-watcher");const s=e.toArray();for(const l of s){const e=h(()=>["renderer"in l&&l.renderer,l.opacity,l.title,l.visible],()=>this._constructLegendElementsForBuildingSceneLayer());if(this.addHandles(e,"sublayers-watcher"),!this.respectLayerVisibility||l.visible){const e=null!=l?.opacity?l.opacity:null,s=null!=e?e*t:t;if("building-group"===l.type){const e={type:"symbol-table",title:l.title,infos:[]},t=await this._generateLegendElementsForBuildingSublayers(l.sublayers,s);e.infos.push(...t),i=[e,...i]}else if(l.renderer){i=[...await this._getRendererLegendElements(l.renderer,{title:l.title,opacity:s,sublayer:l}),...i]}}}return i.filter(e=>!!e&&(!("infos"in e)||!e.infos||e.infos.length>0))}async _constructLegendElementsForSublayers(){this._loading=!0,this.removeHandles("sublayers-watcher");const e=this.layer;if(!(Ae(e)||Be(e)||Me(e))||this.hideLayersNotInCurrentView&&!await this._isLayerInCurrentView())return this.legendElements=[],this._loading=!1,void this.notifyChange("ready");this.addHandles(h(()=>e.sublayers,()=>this._constructLegendElementsForSublayers),"sublayers-watcher");try{this.legendElements=await this._generateLegendElementsForSublayers(e.sublayers,this.opacity)}catch(t){o.getLogger(this).warn("Request to server for legend has failed!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async _generateLegendElementsForSublayers(e,t,i){const s=this.layer;let l=[];this.addHandles(e.on("change",()=>this._constructLegendElementsForSublayers()),"sublayers-watcher");let n=e.toArray();!i&&this.sublayerIds&&this.sublayerIds.length&&(n=Me(s)?this.sublayerIds.map(e=>s.findSublayerForSubtypeCode(e)).filter(r):this.sublayerIds.map(e=>s.findSublayerById(e)).filter(r));for(const r of n){const e=h(()=>[r.renderer,r.opacity,r.title,r.visible,r.legendEnabled],()=>this._constructLegendElementsForSublayers());this.addHandles(e,"sublayers-watcher");const s=r.createQuery().where,n=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView(s),a=!this.respectLayerVisibility||r.visible&&r.legendEnabled&&this._isSublayerInScale(r);if(n&&a){const e=null!=r?.opacity?r.opacity:null,s=null!=e?e*t:t,n=!Qe(r)||r.originIdOf("renderer")>2&&!r.sublayers;if(r.renderer&&n){await r.load();l=[...await this._getRendererLegendElements(r.renderer,{title:r.title,opacity:s,sublayer:r}),...l]}else if(Qe(r)){const e=await this._generateSymbolTableElementForSublayer(r,s,i);e&&l.unshift(e)}}}return l.filter(e=>!!e&&(!("infos"in e)||!e.infos||e.infos.length>0))}async _generateSymbolTableElementForSublayer(e,t,i){if(!i){i=new Map;const t=this.layer,s=e.source;let l=null;if(!(!s||"map-layer"===s.type&&s.mapLayerId===e.id&&(!s.gdbVersion||s.gdbVersion===("gdbVersion"in t&&t.gdbVersion)))||e.originIdOf("renderer")>2||e.originIdOf("labelingInfo")>2||e.originIdOf("labelsVisible")>2){const e=new L({layer:this.layer});l=e.hasDynamicLayers?e.dynamicLayers:null,e.destroy()}const r=l||`${t.uid}-default`;(await this._getLegendLayers(r,l)).forEach(e=>i.set(e.layerId,e))}const s=i.get(e.id);if((!s||s?.subLayerIds&&s.defaultVisibility)&&e.sublayers){const s=await this._generateLegendElementsForSublayers(e.sublayers,t,i);return{type:"symbol-table",title:e.title,infos:s}}return this._generateSymbolTableElementForLegendLayer(s,e,t)}_generateSymbolTableElementForLegendLayer(e,t,i){if(!e?.legend||this.respectLayerVisibility&&!this._isLegendLayerInScale(e,t))return null;const s=t?.renderer;let l=t?.title||e.layerName;if(s&&(!t||t?.originIdOf("renderer")>2)){const e=t?.title||this._getRendererTitle(s,t);e&&(l&&"string"!=typeof e&&"title"in e&&(e.title=l),l=e)}const r={type:"symbol-table",title:l,legendType:e.legendType||null,infos:[]},n=t?this._sanitizeLegendForSublayer(e.legend.slice(),t):e.legend;return e.legendGroups&&e.legendGroups.length>0?e.legendGroups.forEach(s=>{const l={type:"symbol-table",title:s.heading,legendType:e.legendType||null,infos:this._generateSymbolTableElementInfosForLegendLayer(n.filter(e=>e.groupId===s.id),e.layerId,s.heading||r.title||t?.title,i)};l.infos?.length>0&&r.infos.push(l)}):r.infos=this._generateSymbolTableElementInfosForLegendLayer(n,e.layerId,r.title||t?.title,i),r.infos.length>0?r:null}_generateSymbolTableElementInfosForLegendLayer(e,t,s,l){return e.map(e=>{let r=e.url;if(e.imageData&&e.imageData.length>0)r=`data:image/png;base64,${e.imageData}`;else{if(r.startsWith("http"))return null;r=i(`${this.layer.url}/${t}/images/${r}`)}let n=e.label;return"<all other values>"===n&&(n="others"),{previewAriaLabel:n||s,label:n,src:r,opacity:l??this.opacity,width:e.width,height:e.height}}).filter(r)}_isSublayerInScale(e){const t=e.minScale||0,i=e.maxScale||0;return!(t>0&&t<this.scale||i>this.scale)}_isLegendLayerInScale(e,t){const i=t||this.layer;let s=null,l=null,r=!0;return!i.minScale&&0!==i.minScale||!i.maxScale&&0!==i.maxScale?(0===e.minScale&&i.tileInfo&&(s=i.tileInfo.lods[0].scale),0===e.maxScale&&i.tileInfo&&(l=i.tileInfo.lods[i.tileInfo.lods.length-1].scale)):(s=Math.min(i.minScale,e.minScale)||i.minScale||e.minScale,l=Math.max(i.maxScale,e.maxScale)),(s>0&&s<this.scale||l>this.scale)&&(r=!1),r}_sanitizeLegendForSublayer(e,t){if("version"in this.layer&&+this.layer.version<10.1||0===e.length)return e;const i=t.renderer,s=e.some(e=>e.values);let l=0,r=null;return s&&e.some((e,t)=>(e.values||(l=t,r=e,r.label||(r.label="others")),null!=r)),i?"unique-value"===i.type?r&&(e.splice(l,1),e.push(r)):"class-breaks"===i.type&&(r&&e.splice(l,1),i.legendOptions?.order||e.reverse(),r&&e.push(r)):r&&(e.splice(l,1),e.push(r)),e}async _getRendererLegendElements(e,t={}){if(!je(e,this.view))return o.getLogger(this).warn(`Renderer of type '${e.type}' not supported!`),[];if(Ie(e))return this._constructPointCloudRendererLegendElements(e,t);if(ze(e))return this._constructDotDensityRendererLegendElements(e);const i=await this._loadRenderer(e);return Te(i)?this._constructPieChartRendererLegendElements(i):this._constructRendererLegendElements(i,t)}async _getLegendElementsForFeatureReduction(e){let t=null;return"binning"===e.type?t=e.renderer:"cluster"===e.type&&(t=this._getClusterRenderer(e)),t?this._getRendererLegendElements(t,{isFeatureReductionRenderer:!0}):[]}_getPointCloudRendererTitle(e){return(e.legendOptions?.title||e.field)??""}async _constructPointCloudRendererLegendElements(e,t={}){const i=t.title,s=[];let l=null,r=null;if(Ve(e))l={type:"symbol-table",title:i||this._getPointCloudRendererTitle(e),infos:[]},e.colorClassBreakInfos.forEach(e=>{l.infos.unshift({label:e.label||e.minValue+" - "+e.maxValue,value:[e.minValue,e.maxValue],symbol:this._getAppliedCloneSymbol(me,e.color)})});else if(De(e)){const t=e.stops;let s=null;if(t?.length&&(1===t.length&&(s=t[0].color),!s)){const e=t[0].value,i=t[t.length-1].value;if(null!=e&&null!=i){s=$(e+(i-e)/2,t)}}l={type:"symbol-table",title:null,infos:[{label:null,value:null,symbol:this._getAppliedCloneSymbol(me,s||me.color)}]};const n=H(e.stops??[])??[];r={type:"color-ramp",title:i||this._getPointCloudRendererTitle(e),infos:n,preview:P(n.map(e=>e.color))}}else xe(e)&&(l={type:"symbol-table",title:i||this._getPointCloudRendererTitle(e),infos:[]},e.colorUniqueValueInfos?.forEach(e=>{l.infos.push({label:e.label||e.values.join(", "),value:e.values.join(", "),symbol:this._getAppliedCloneSymbol(me,e.color)})}));return l?.infos.length&&s.push(l),r?.infos.length&&s.push(r),await this._generatePreviewsForLegendElements(s,{opacity:this.opacity,symbolConfig:{applyColorModulation:!!e.colorModulation}}),s}async _getElementInfoForDotDensity(e,t){const{color:i,label:s,valueExpressionTitle:l}=t,{backgroundColor:r,outline:n,dotSize:a}=e,o=this.cssEffectFilter,u=a+"-"+i+"-"+r+"-"+(n&&JSON.stringify(n.toJSON()))+"-"+o,c=this._dotDensityUrlCache,d=c.has(u)?c.get(u):k(e,i);c.set(u,d);const y={shape:{type:"image",x:0,y:0,width:d.width,height:d.height,src:d.src},fill:null,stroke:null,offset:[0,0]},h=M([[y]],[d.width,d.height],{cssEffectFilter:this.cssEffectFilter});return{opacity:1,src:d.src,preview:h,width:d.width,height:d.height,previewAriaLabel:s||l}}async _constructDotDensityRendererLegendElements(e){const t=e.calculateDotValue(this.view.scale),i=e.legendOptions?.unit,s={type:"symbol-table",title:{value:t&&Math.round(t),unit:i||""},infos:[]};for(const l of e.attributes){const t=await this._getElementInfoForDotDensity(e,l);t.label=l.label||l.valueExpressionTitle||l.field,s.infos.push(t)}return[s]}async _constructPieChartRendererLegendElements(e){const t=[];let i=null;const s=e.outline;e.attributes.forEach(e=>{const i=new j({color:e.color,outline:s}),l=e.label||e.valueExpressionTitle||e.field;t.push({label:l,symbol:i})});const l=t.length?[...t]:[];if(e.othersCategory?.color&&0!==e.othersCategory?.threshold){const l=new j({color:e.othersCategory.color,outline:s});i=e.othersCategory.label||"Other",t.push({label:i,symbol:l})}if(e.defaultColor?.a){const i=new j({color:e.defaultColor,outline:s});t.push({label:e.defaultLabel,symbol:i})}const r=await this._getVisualVariableLegendElements(e,this.layer)||[];if(t.length){r.unshift({type:"symbol-table",title:null,infos:t});const n=l.filter(e=>e.label!==i).map(e=>e.symbol.color).filter(Boolean),a=U(n,{holePercentage:e.holePercentage,backgroundColor:e.backgroundFillSymbol?.color,cssEffectFilter:this.cssEffectFilter,outline:s});r.unshift({type:"pie-chart-ramp",title:this._getRendererTitle(e,this.layer),infos:t,preview:a})}return await this._generatePreviewsForLegendElements(r,{opacity:this.layer.opacity,cssEffectFilter:this.cssEffectFilter}),r}async _getWhereClause(e,t,i){const s=await g(e,i),l=new Set,{field:r,field2:n,field3:a}=t;E(l,i,[r,n,a]),await F(l,i,t.valueExpression);const o=new Set(Array.from(l,e=>e.toLowerCase())),u=s?.fieldNames.map(e=>e.toLowerCase());return u?.some(e=>!o.has(e))?null:s}async _processDefinitionExpression(e,t){if(!("definitionExpression"in e))return;const i=e.definitionExpression;i&&this.respectLayerDefinitionExpression?this._layerDefinitionExpression!==i&&(this._layerDefinitionExpressionClause=await this._getWhereClause(i,t,e.fieldsIndex)):this._layerDefinitionExpressionClause=null,this._layerDefinitionExpression=i}async _processDisplayFilter(e,t){if(!("displayFilterInfo"in e))return;const i=e.displayFilterInfo?v(e.displayFilterInfo,this.view):null;return i?.where?this._layerDisplayFilter?.id!==i?.id&&(this._layerDisplayFilterClause=await this._getWhereClause(i.where,t,e.fieldsIndex)):this._layerDisplayFilterClause=null,this._layerDisplayFilter=i,i}async _constructRendererLegendElements(e,t={}){const{title:i,sublayer:s,isFeatureReductionRenderer:l}=t,r=s||this.layer,n=se(e,"reference-size"),a=se(e,"spike"),o=l&&"renderer"in r&&r.renderer?r.renderer:e;let u=null;Fe(o)&&(await this._processDefinitionExpression(r,o),u=await this._processDisplayFilter(r,o)),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._scaleDrivenSizeVariable=null;const c=await this._getVisualVariableLegendElements(e,r)||[],d={type:"symbol-table",title:i||this._getRendererTitle(e,r),infos:[]};let y=null,h=!1;const f=new Set;if(be(e)&&!this._hasSizeRamp){const t=await le(e);d.infos.push({label:null,symbol:t})}else if(We(e)){let t=i;const s=Ge(e)?"univariate-above-and-below-ramp":"univariate-color-size-ramp",l=c.findIndex(e=>"color-ramp"===e.type),r=-1!==l?c.splice(l,1)[0]:null,n=c.findIndex(e=>"size-ramp"===e.type),a=-1!==n?c.splice(n,1)[0]:null,o=[];r&&(t=r.title,o.push(r)),a&&(t=a.title,o.push(a)),o.length>0&&c.push({type:s,title:t,infos:o})}else if(Ce(e)){const t=Q(e);c.push({type:"heatmap-ramp",title:i||this._getRendererTitle(e,r),infos:t,preview:P(t.map(e=>e.color),{cssEffectFilter:this.cssEffectFilter})})}else if(Fe(e)){const t=e.authoringInfo;if(t&&"relationship"===t.type){const{numClasses:i,field1:s,field2:l}=t,n=t.focus;if(i&&s&&l){const t=[s,l];let a=J(n)||0;for(const e of t){const{field:t,normalizationField:i,label:s}=e,l=s||{field:this._getFieldAlias(t,r),normField:i&&this._getFieldAlias(i,r)},n=Ke.clone();n.angle=a,d.infos.push({label:l,symbol:n}),f.add(n),a+=90}const o=Z({focus:n,numClasses:i,infos:e.uniqueValueInfos??[]});c.unshift(o)}}else if(qe(this.layer)||Ne(this.layer)){const{uniqueValueInfos:t}=e;if(t)for(const e of t)e.symbol&&await this._checkClausesForUVR(o,e.value)&&d.infos.push({label:e.label||e.value,value:e.value,symbol:e.symbol})}else{const{field:t,field2:s,field3:l,fieldDelimiter:a,valueExpression:c,defaultSymbol:y}=e,f=!(!t&&!c||!s&&!l),p=u?u.title:null,m=[],{uniqueValueGroups:g}=e;if(g)for(const e of g){const i={type:"symbol-table",title:p||e.heading,infos:[]},{classes:u}=e;if(u)for(const e of u){const{symbol:u,values:d}=e;if(u){const y=[],h=[];for(const e of d??[]){const{value:i,value2:n,value3:o}=e,u=[],d=[];(t||c)&&(u.push(i),d.push(this._getDomainName(t,i,r))),s&&(u.push(n),d.push(this._getDomainName(s,n,r))),l&&(u.push(o),d.push(this._getDomainName(l,o,r))),y.push(f?u.join(a||""):u[0]),h.push(d.join(" - "))}const p=y.join(", ");let m=e.label;if(!m){const e=h.filter(Boolean);m=e.length?e.join(", "):p}let g=u;"cim"===g.type&&n&&(g=g.clone(),z(g,{innerDotSize:.5*ue,outerRingSize:ue}));let b=!1;for(const e of y)if(b=await this._checkClausesForUVR(o,e),b)break;b&&i.infos.push({label:m,value:p,symbol:g})}}i.infos.length&&m.push(i)}if(m.length){const t=m[0];if(1===m.length&&"title"in t&&!t.title){const e=t.infos?.filter(Je)??[];d.infos.push(...e)}else y&&(m.push({type:"symbol-table",infos:[{label:e.defaultLabel||"others",symbol:y}]}),h=!0),d.infos.push(...m);i||e.legendOptions?.title||e.valueExpressionTitle||(d.title=null)}}e.defaultSymbol&&!h&&(d.infos.push({label:e.defaultLabel||"others",symbol:e.defaultSymbol}),h=!0)}else if(Ee(e)){if(!n&&!a){y=this._isUnclassedRenderer(e);if(!y||!this._hasSizeRamp){const t=e.classBreakInfos.filter(({symbol:e})=>e),i="ascending-values"===e.legendOptions?.order;for(const{label:e,minValue:s,maxValue:l,symbol:n}of t){const t=e||(y?null:`${s} - ${l}`),a={previewAriaLabel:t||d.title||r.title,label:t,value:[s,l],symbol:n};i?d.infos.push(a):d.infos.unshift(a)}y&&(d.title=null),this._updateInfosForClassedSizeRenderer(e,d.infos)}e.defaultSymbol&&!y&&(d.infos.push({label:e.defaultLabel||"others",symbol:e.defaultSymbol}),h=!0)}}else if(we(e))if(Ne(this.layer)||$e(this.layer)){const t=await this._constructTileImageryStretchRendererElements(e);He(t)?c.push(t):d.infos=t}else{const t=this.layer;let i,s;e.customStatistics?.length&&({min:i,max:s}=e.customStatistics[0]);let l=[],r=t.serviceRasterInfo;if(t.rasterFunction)try{r=await t.generateRasterInfo(t.rasterFunction)}catch{}const n=I(r.pixelType);if(1===r.bandCount){const l=t.bandIds?.[0]||0;i=null!=i?i:r.statistics?r.statistics[l].min:n[0],s=null!=s?s:r.statistics?r.statistics[l].max:n[1],i||s?c.push(await this._getStretchLegendElements(e,{min:i,max:s})):this._getServerSideLegend()}else if(t.bandIds&&1===t.bandIds.length)i=null!=i?i:r.statistics?r.statistics[t.bandIds[0]].min:n[0],s=null!=s?s:r.statistics?r.statistics[t.bandIds[0]].max:n[1],i||s?c.push(await this._getStretchLegendElements(e,{min:i,max:s})):this._getServerSideLegend();else if(r.bandCount>=3){const{bandInfos:e}=r,{bandIds:i}=t;e.length>=r.bandCount?3===i?.length?(l=i.map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(l)):"lerc"===t.format?(l=[0,1,2].map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(l)):this._getServerSideLegend():"lerc"===t.format?(l=["band1","band2","band3"],d.infos=this._createSymbolTableElementMultiBand(l)):this._getServerSideLegend()}else this._getServerSideLegend()}else if(Se(e))e.colormapInfos.forEach(e=>{d.infos.push({label:e.label,value:e.value,symbol:this._getAppliedCloneSymbol(ge,e.color)})});else if(Le(e)){let i=e.symbol;switch(t.geometryType){case"point":i="pointSymbol"in r?r.pointSymbol:null;break;case"polyline":i="lineSymbol"in r?r.lineSymbol:null;break;case"polygon":i="polygonSymbol"in r?r.polygonSymbol:null}const s=this._hasClusterSizeVariable&&this._getClusterSymbol()||!this._hasSizeRamp;e.symbol&&s&&d.infos.push({previewAriaLabel:e.label||d.title||r.title,label:e.label,symbol:i})}else if(_e(e)){e.outputUnit&&(this.title="("+e.toJSON().outputUnit+")"),d.title=e.attributeField;const t=e.getClassBreakInfos();t?.length?t.forEach(e=>{d.infos.push({label:e.minValue+" - "+e.maxValue,symbol:e.symbol})}):d.infos.push({label:e.attributeField,symbol:e.getDefaultSymbol()})}else ve(e)&&c.push(await this._getStretchLegendElements(e,{min:0,max:255}));const p=e.defaultSymbol;!p||h||Le(e)||y&&!this._hasColorRamp&&!this._hasSizeRamp&&!this._hasOpacityRamp||c.push({type:"symbol-table",infos:[{label:e.defaultLabel||"others",symbol:p}]}),d.infos.length&&c.unshift(d);const m=null==t.opacity?this.opacity:t.opacity,g=this._isTallSymbol("visualVariables"in e?e.visualVariables:null),b=qe(this.layer)||Ne(this.layer);return await this._generatePreviewsForLegendElements(c,{opacity:m,symbolConfig:{isTall:g,isSquareFill:b},cssEffectFilter:this.cssEffectFilter},{arrowMarkerSymbols:f}),e=null,c}async _waitForLayerViewUpdate(e){const t=new AbortController,i=p(()=>!e.updating,t.signal);await d(i,5e3,t)}async _checkFeatureCountForExpression(e){const t=this.layerView;if(!(t&&"createQuery"in t&&"queryFeatureCount"in t))return!0;try{await this._waitForLayerViewUpdate(t);const i=t.createQuery();i.where=ee(i.where,e);return await t.queryFeatureCount(i)>0}catch{return!0}}async _checkClausesForUVR(e,t){const i=Ze(e,t);if(!i)return!0;return(!!!(!this._layerDefinitionExpressionClause&&this._layerDefinitionExpression&&this.respectLayerDefinitionExpression||!this._layerDisplayFilterClause&&this._layerDisplayFilter?.where)||await this._checkFeatureCountForExpression(`${e.field} = ${t}`))&&(!this._layerDefinitionExpressionClause||this._layerDefinitionExpressionClause.testFeature(i))&&(!this._layerDisplayFilterClause||this._layerDisplayFilterClause.testFeature(i))}_getServerSideLegend(){setTimeout(()=>this.buildLegendElementsForTools(),0)}_getAllInfos(e){const t=e?.infos;return t?t.reduce((e,t)=>e.concat(this._getAllInfos(t)),[]):[e]}async _constructTileImageryStretchRendererElements(e){const t=this.layer,i=t.symbolizer.rasterInfo??t.raster.rasterInfo;let s,l;const r=e?.customStatistics?.length?e.customStatistics:i?.statistics;if(r)({min:s,max:l}=r[0]);else{const e=I(i.pixelType);s=e[0],l=e[1]}if(t.hasStandardTime()&&(s=t.getStandardTimeValue(s),l=t.getStandardTimeValue(l)),1===i.bandCount||1===t.bandIds?.length)return this._getStretchLegendElements(e,{min:s,max:l});const n=(t?.bandIds?.length?t.bandIds:Array.from(Array(Math.min(i.bandCount,3)).keys())).map(e=>i.bandInfos[e].name);return n.length<3?n.push(n[1]):n.length>3&&n.splice(3),this._createSymbolTableElementMultiBand(n)}async _getStretchLegendElements(e,t){const i=e.colorRamp,s=W(i,t);return{type:"stretch-ramp",title:"",infos:s,preview:P(s.map(e=>e.color))}}_getClusterSymbol(){const e=this.layer,t="featureReduction"in e&&e.featureReduction,i=t&&"symbol"in t&&t.renderer;return i&&!0!==i?.authoringInfo?.isAutoGenerated?null:t&&"symbol"in t?t.symbol:null}async _getSizeLegendElement(e,t,i,s){return{type:"size-ramp",title:this._hasClusterSizeVariable?this._getClusterTitle(t):e,infos:await K(i,t,await re(i),this.scale,this.view,s,this._hasClusterSizeVariable?this._getClusterSymbol():null)}}_createSymbolTableElementMultiBand(e){const t=[],i=["red","green","blue"];return e.forEach((e,s)=>{t.push({label:{colorName:i[s],bandName:e},src:ne[s],opacity:this.opacity??1})}),t}_updateInfosForClassedSizeRenderer(e,t){const i=e.authoringInfo&&"class-breaks-size"===e.authoringInfo.type,s=e.classBreakInfos.some(e=>q(e.symbol));if(i&&s){const i=X,s=Y,l=e.classBreakInfos.length,r=(i-s)/(l>1?l-1:l);t.forEach((e,t)=>{e.size=i-r*t})}}_isTallSymbol(e){let t=!1,i=!1;if(e)for(let s=0;s<e.length&&(!t||!i);s++){const l=e[s];"size"===l.type&&("height"===l.axis&&(t=!0),"width-and-depth"===l.axis&&(i=!0))}return t&&i}async _generatePreviewsForLegendElements(e,t,i){const s=[];for(const l of e)for(const e of l.infos??[])if("infos"in e&&e.infos&&s.push(this._generatePreviewsForLegendElements([e],t,i)),Je(e)&&e.symbol&&!e.preview){let r=!0;if("cim"===e.symbol.type){const{minScale:t,maxScale:i}=e.symbol.data;(t&&t<this.scale||i&&i>this.scale)&&(r=!1)}r&&s.push(this._generateSymbolPreviewForInfo(e,{...t,clipBloomEffect:"theme"in l&&"spike"===l.theme,cssEffectFilter:i?.arrowMarkerSymbols?.has(e.symbol)?null:t.cssEffectFilter},i?{applyScaleDrivenSize:!i.arrowMarkerSymbols?.has(e.symbol)}:void 0))}await Promise.all(s)}async _getSize(e,t){let i=null==e.size&&this._hasSizeRamp?m(22):e.size;if(this._scaleDrivenSizeVariable&&t?.applyScaleDrivenSize){const{getSize:t}=await import("../../../renderers/visualVariables/support/visualVariableUtils.js");i=t(this._scaleDrivenSizeVariable,null,{view:this.view.type,scale:this.scale,shape:"simple-marker"===e.symbol.type?e.symbol.style:null})}return i}_getPreviewCIMOptions(e){return{style:"legend",cimOptions:{allowScalingUp:this._hasSizeRamp||!(!this._scaleDrivenSizeVariable||!e?.applyScaleDrivenSize),viewParams:this.isScaleDriven?{viewingMode:"2d"===this.view?.type?"map":this.view?.viewingMode,scale:this.view?.scale}:null}}}async _generateSymbolPreviewForInfo(e,t={},i){const{symbol:s}=e;try{if(t.size=await this._getSize(e,i),t.scale=!1,"cim"===s.type){const e=this._getPreviewCIMOptions(i);t={...t,...e}}e.preview=await A(s,t)}catch{e.preview=null,o.getLogger(this).warn(`Generating symbol preview failed for symbol type: ${s?.type}`)}}_getClusterRenderer(e){this._hasClusterSizeVariable=!1;const t="renderer"in this.layer?this.layer.renderer:null,i=e.renderer?.clone()||t?.clone(),s=N(e,this.layerView,this.view);if(s&&null!=i&&"visualVariables"in i){const t=i.visualVariables?.some(e=>"size"===e.type&&"outline"!==e.target&&!fe.test(e.valueExpression));if(!t){if("clusterMinSize"in e&&"clusterMaxSize"in e){const{clusterMinSize:t,clusterMaxSize:i}=e;s.legendOptions=new x({showLegend:t!==i})}const t=i.visualVariables||[];i.visualVariables=t.concat([s]),this._hasClusterSizeVariable=!0}}return i}async _loadRenderer(e){if(Ye.has(e))return Ye.get(e);const t=[],i=e.clone(),s=await re(i);if(Ee(i)||Fe(i)){const e=(i.classBreakInfos||i.uniqueValueInfos).map(e=>this._fetchSymbol(e.symbol,s).then(t=>{e.symbol=t}).catch(()=>{e.symbol=null}));Array.prototype.push.apply(t,e)}return t.push(this._fetchSymbol(i.symbol||i.defaultSymbol,i.defaultSymbol?null:s).then(e=>{this._applySymbolToRenderer(i,e,Le(i))}).catch(()=>{this._applySymbolToRenderer(i,null,Le(i))})),await Promise.allSettled(t),Ye.set(e,i),i}_applySymbolToRenderer(e,t,i){i?e.symbol=t:e.defaultSymbol=t}async _fetchSymbol(e,t){if(!e)throw new Error;if("web-style"===e.type){const i=this._webStyleSymbolCache;try{const s=await e.fetchSymbol({cache:i});return this._getAppliedCloneSymbol(s,t)}catch{throw o.getLogger(this).warn("Fetching web-style failed!"),new Error}}return this._getAppliedCloneSymbol(e,t)}_getAppliedCloneSymbol(e,i){if(!e||!i)return e;const s=e.clone(),l=i&&i.toRgba();return s.type.includes("3d")?this._applyColorTo3dSymbol(s,l):"cim"===s.type?O(s,i):s.color&&(s.color=new t(l||s.color)),s}_applyColorTo3dSymbol(e,i){i&&e.symbolLayers.forEach(e=>{e&&(e.material||(e.material={}),e.material.color=new t(i))})}async _getVisualVariableLegendElements(e,t){if(!("visualVariables"in e)||"vector-field"===e.type)return null;const i=e.visualVariables??[],s=[],l=[],n=[],a=se(e,"reference-size")??se(e,"spike");let o;if(2===a?.sizeStops?.length&&(Ee(e)||Fe(e))){const[e,t]=a.sizeStops;o=new D({field:a.field??void 0,normalizationField:a.normalizationField,minSize:u(e.size,10,100),maxSize:u(t.size,50,150),minDataValue:e.value,maxDataValue:t.value}),l.push(o)}for(const r of i)"color"===r.type?s.push(r):"size"===r.type?l.push(r):"opacity"===r.type&&n.push(r);const c=[...s,...l,...n];let d,y;if(0===s.length&&Ee(e)&&e.classBreakInfos&&1===e.classBreakInfos.length){const t=e.classBreakInfos[0];d=t&&t.symbol}if(0===s.length&&Le(e)&&(d=e.symbol),d)if(d.type.includes("3d")){const e=d.symbolLayers.at(0);"water"===e.type?null!=e.color&&(y=e.color):null!=e.material?.color&&(y=e.material.color)}else d.url||(y=d.color);const h=this.cssEffectFilter;return(await Promise.all(c.map(async i=>{if(!i.legendOptions||!1!==i.legendOptions.showLegend){const s=be(e)?i.field:this._getRampTitle(i,t);let l=null;const r=ae(t,i,this.view.timeZone);if("color"===i.type){const e=await G(i,null,r)??[];l={type:"color-ramp",title:s,infos:e,preview:P(e.map(e=>e.color),{cssEffectFilter:h})},this._hasColorRamp||(this._hasColorRamp=e.length>0)}else if("size"===i.type&&"outline"!==i.target)fe.test(i.valueExpression)?this._hasClusterSizeVariable||(this._scaleDrivenSizeVariable=i):(l=await this._getSizeLegendElement(s,i,e,r),o===i&&"spike"===a?.theme&&(l.theme=a.theme),this._hasSizeRamp||(this._hasSizeRamp=!(null==l.infos||!l.infos.length)));else if("opacity"===i.type){const e=await G(i,y,r)??[];l={type:"opacity-ramp",title:s,infos:e,preview:P(e.map(e=>e.color),{cssEffectFilter:h})},this._hasOpacityRamp||(this._hasOpacityRamp=e.length>0)}return l?.infos?l:null}}))).filter(r)}_getDomainName(e,t,i){if(e&&"function"!=typeof e){const s="getField"in i&&i.getField?.(e),l=s&&"getFieldDomain"in i&&i.getFieldDomain?i.getFieldDomain(s.name,{excludeImpliedDomains:has("esri-widget-legacy-field-domain-calculation")}):null;return"coded-value"===l?.type?l.getName(t):null}return null}_getClusterTitle(e){const t=this.layer,i=e.field;if("featureReduction"in t&&t.featureReduction&&"cluster"===t.featureReduction.type){const e=t.featureReduction,s="popupTemplate"in e&&e.popupTemplate,l=s&&s.fieldInfos;if(l)for(const t of l)if(t.fieldName===i)return"cluster_count"===i?t.label||{showCount:!0}:t.label}return{showCount:!0}}_getRampTitle(e,t){let i=e.field,s=e.normalizationField,l=!1,r=!1,n=!1,a=null;i="function"==typeof i?null:i,s="function"==typeof s?null:s;const o=e.legendOptions?.title;if(null!=o)a=o;else if(e.valueExpressionTitle)a=e.valueExpressionTitle;else{if("renderer"in t&&t.renderer&&"authoringInfo"in t.renderer&&t.renderer.authoringInfo?.visualVariables){const e=t.renderer.authoringInfo.visualVariables;for(let t=0;t<e.length;t++){const i=e[t];if("color"===i.type){if("ratio"===i.style){l=!0;break}if("percent"===i.style){r=!0;break}if("percent-of-total"===i.style){n=!0;break}}}}a={field:i&&this._getFieldAlias(i,t),normField:s&&this._getFieldAlias(s,t),ratio:l,ratioPercent:r,ratioPercentTotal:n}}return a}_getRendererTitle(e,t){const i=e;if(i.legendOptions?.title)return i.legendOptions.title;if(i.valueExpressionTitle)return i.valueExpressionTitle;let s=i.field,l=null,r=null;if(Ee(i)&&(l=i.normalizationField,r="percent-of-total"===i.normalizationType),s="function"==typeof s?null:s,l="function"==typeof l?null:l,Fe(i)){const{field2:e,field3:l,fieldDelimiter:r}=i;let n=s&&this._getFieldAlias(s,t);return e&&(n=`<${n}>${r}<${this._getFieldAlias(e,t)}>`,l&&(n=`${n}${r}<${this._getFieldAlias(l,t)}>`)),n}let n=null;return(s||l)&&(n={field:s&&this._getFieldAlias(s,t),normField:l&&this._getFieldAlias(l,t),normByPct:r}),n}_getFieldAlias(e,t){const i="popupTemplate"in t?t.popupTemplate:null,s=i?.fieldInfos;let l=s?.find(t=>e===t.fieldName),r=null;"getField"in t&&t.getField?r=t.getField(e):"fieldsIndex"in t&&t.fieldsIndex&&(r=t.fieldsIndex.get(e));let n=null;const a="featureReduction"in t&&t.featureReduction;a&&(l??="popupTemplate"in a?a.popupTemplate?.fieldInfos?.find(t=>e?.toLowerCase()===t.fieldName?.toLowerCase()):void 0,"fields"in a&&a.fields&&(n=a.fields.find(t=>t.name?.toLowerCase()===e?.toLowerCase())));const o=l||r||n;let u=null;return o&&(u=l?.label||r?.alias||n?.alias||"name"in o&&o.name||"fieldName"in o&&o.fieldName||null),u}_isUnclassedRenderer(e){const t=e.visualVariables;let i=!1;return Ee(e)&&e.classBreakInfos&&1===e.classBreakInfos.length&&t&&(i=e.field?t.some(t=>!(!t||e.field!==t.field||(e.normalizationField||t.normalizationField)&&e.normalizationField!==t.normalizationField)):!!t.length),i}};e([_()],et.prototype,"_loading",void 0),e([_()],et.prototype,"children",void 0),e([_({readOnly:!0})],et.prototype,"cssEffectFilter",null),e([_()],et.prototype,"layerView",void 0),e([_()],et.prototype,"layer",void 0),e([_()],et.prototype,"legendElements",void 0),e([_({readOnly:!0})],et.prototype,"loading",null),e([_({readOnly:!0})],et.prototype,"opacity",null),e([_()],et.prototype,"parent",void 0),e([_({readOnly:!0,dependsOn:[]})],et.prototype,"ready",null),e([_()],et.prototype,"hideLayersNotInCurrentView",void 0),e([_()],et.prototype,"keepCacheOnDestroy",void 0),e([_()],et.prototype,"respectLayerDefinitionExpression",void 0),e([_()],et.prototype,"respectLayerVisibility",void 0),e([_({readOnly:!0})],et.prototype,"scale",null),e([_()],et.prototype,"sublayerIds",void 0),e([_({readOnly:!0})],et.prototype,"isScaleDriven",null),e([_()],et.prototype,"title",void 0),e([_({readOnly:!0,dependsOn:["ready"],value:0})],et.prototype,"version",null),e([_()],et.prototype,"view",void 0),et=e([S("esri.widgets.Legend.support.ActiveLayerInfo")],et);export{et as default};
|
|
5
|
+
import{__decorate as e}from"tslib";import t from"../../../Color.js";import{addTokenParameter as i}from"../../../kernel.js";import s from"../../../request.js";import l from"../../../core/Accessor.js";import{isSome as r}from"../../../core/arrayUtils.js";import n from"../../../core/Collection.js";import has from"../../../core/has.js";import{JSONMap as a}from"../../../core/jsonMap.js";import o from"../../../core/Logger.js";import{clamp as u}from"../../../core/mathUtils.js";import{debounce as c,timeout as d}from"../../../core/promiseUtils.js";import{on as y,watch as h,initial as f,whenOnce as p}from"../../../core/reactiveUtils.js";import{px2pt as m}from"../../../core/screenUtils.js";import{parseWhereClause as g}from"../../../core/sql.js";import{addQueryParameters as b}from"../../../core/urlUtils.js";import{property as _}from"../../../core/accessorSupport/decorators/property.js";import{subclass as S}from"../../../core/accessorSupport/decorators/subclass.js";import{EffectView as w}from"../../../layers/effects/EffectView.js";import{getEffectiveDisplayFilter as v}from"../../../layers/support/displayFilterUtils.js";import{ExportImageParameters as L}from"../../../layers/support/ExportImageParameters.js";import{collectFields as E,collectArcadeFieldNames as F}from"../../../layers/support/fieldUtils.js";import{isFeatureLayer as C}from"../../../layers/support/layerUtils.js";import{getPixelValueRange as I}from"../../../layers/support/rasterFormats/pixelRangeUtils.js";import{fromJSON as R}from"../../../renderers/support/jsonUtils.js";import{isSupportedRenderer3D as V}from"../../../renderers/support/rendererConversion.js";import D from"../../../renderers/visualVariables/SizeVariable.js";import x from"../../../renderers/visualVariables/support/SizeVariableLegendOptions.js";import{updateReferenceSizeSymbol as z}from"../../../smartMapping/renderers/support/referenceSizeUtils.js";import T from"../../../symbols/SimpleFillSymbol.js";import j from"../../../symbols/SimpleMarkerSymbol.js";import{applyCIMSymbolColor as O}from"../../../symbols/support/cimSymbolUtils.js";import{renderSymbol as M}from"../../../symbols/support/renderUtils.js";import{renderColorRampPreviewHTML as P,renderDotDensityPreviewHTML as k,renderPieChartPreviewHTML as U,renderPreviewHTML as A}from"../../../symbols/support/symbolUtils.js";import{getCSSFilterFromEffectList as B,isVolumetricSymbol as q}from"../../../symbols/support/utils.js";import{getEffectiveClusterSizeVariable as N}from"./clusterUtils.js";import{getColorFromPointCloudStops as $,getRampStopsForPointCloud as H,getStretchRampStops as W,getRampStops as G}from"./colorRampUtils.js";import{getHeatmapRampStops as Q}from"./heatmapRampUtils.js";import{getRotationAngleForFocus as J,getRelationshipRampElement as Z}from"./relationshipRampUtils.js";import{getRampStops as K,realWorldMaxSize as X,realWorldMinSize as Y}from"./sizeRampUtils.js";import{mergeWhereClauses as ee,specialCharsLessThan as te,specialCharsGreaterThan as ie,getAuthoringInfoVisualVariableByTheme as se,getSymbolForFlowRenderer as le,getMedianColor as re,rgbImgSource as ne,getDateFormatOptions as ae}from"./utils.js";import{formatNumberLabel as oe}from"../../smartMapping/support/utils.js";const ue=16,ce="https://utility.arcgis.com/sharing/tools/legend",de="esri.layers.ImageryLayer",ye="esri.layers.ImageryTileLayer",he="esri.layers.WCSLayer",fe=/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i,pe=new a({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryMultiPatch:"multipatch"}),me=new j({size:6,outline:{color:[128,128,128,.5],width:.5}}),ge=new T({style:"solid"});function be(e){return"flow"===e.type}function _e(e){return"vector-field"===e.type}function Se(e){return"raster-colormap"===e.type}function we(e){return"raster-stretch"===e.type}function ve(e){return"raster-shaded-relief"===e.type}function Le(e){return"esri.renderers.SimpleRenderer"===e.declaredClass}function Ee(e){return"esri.renderers.ClassBreaksRenderer"===e.declaredClass}function Fe(e){return"esri.renderers.UniqueValueRenderer"===e.declaredClass}function Ce(e){return"esri.renderers.HeatmapRenderer"===e.declaredClass}function Ie(e){return Ve(e)||De(e)||xe(e)||Re(e)}function Re(e){return"esri.renderers.PointCloudRGBRenderer"===e.declaredClass}function Ve(e){return"esri.renderers.PointCloudClassBreaksRenderer"===e.declaredClass}function De(e){return"esri.renderers.PointCloudStretchRenderer"===e.declaredClass}function xe(e){return"esri.renderers.PointCloudUniqueValueRenderer"===e.declaredClass}function ze(e){return"esri.renderers.DotDensityRenderer"===e.declaredClass}function Te(e){return"esri.renderers.PieChartRenderer"===e.declaredClass}function je(e,t){return Le(e)||Ee(e)||Fe(e)||Ce(e)||ze(e)||Te(e)?"2d"===t.type||V(e):we(e)||Se(e)||ve(e)||Ve(e)||De(e)||xe(e)||_e(e)||be(e)}function Oe(e){return"esri.layers.BuildingSceneLayer"===e.declaredClass}function Me(e){return"esri.layers.SubtypeGroupLayer"===e.declaredClass}function Pe(e){return"esri.layers.VoxelLayer"===e.declaredClass}function ke(e){return"esri.layers.WMSLayer"===e.declaredClass}function Ue(e){return"esri.layers.WMTSLayer"===e.declaredClass}function Ae(e){return"esri.layers.MapImageLayer"===e.declaredClass}function Be(e){return"esri.layers.TileLayer"===e.declaredClass}function qe(e){return e.declaredClass===de}function Ne(e){return e.declaredClass===ye}function $e(e){return e.declaredClass===he}function He(e){return"stretch-ramp"===e.type}function We(e){const t="authoringInfo"in e?e?.authoringInfo:null;return"univariate-color-size"===t?.type}function Ge(e){const t="authoringInfo"in e?e?.authoringInfo:null;return"univariate-color-size"===t?.type&&"above-and-below"===t?.univariateTheme}function Qe(e){return"sublayers"in e}function Je(e){return e&&"symbol"in e}function Ze(e,t){const{field:i,field2:s,field3:l,fieldDelimiter:r,valueExpression:n}=e;if(!i)return null;const a=!(!i&&!n||!s&&!l)?t?.toString().split(r||""):[t],o=i?{[i]:a?.[0]}:null;return o&&(s&&(o[s]=a?.[1]),l&&(o[l]=a?.[2])),o}const Ke=new j({style:"path",path:"M10,5 L5,0 0,5 M5,0 L5,15",size:15,outline:{width:1,color:[85,85,85,1]}});let Xe={};const Ye=new WeakMap;let et=class extends l{constructor(e){super(e),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._loading=!1,this._webStyleSymbolCache=new Map,this._dotDensityUrlCache=new Map,this._scaleDrivenSizeVariable=null,this._hasClusterSizeVariable=!1,this._layerDefinitionExpression=null,this._layerDefinitionExpressionClause=null,this._layerDisplayFilter=null,this._layerDisplayFilterClause=null,this.children=new n,this.layerView=null,this.layer=null,this.legendElements=[],this.parent=null,this.hideLayersNotInCurrentView=!1,this.keepCacheOnDestroy=!1,this.respectLayerDefinitionExpression=!1,this.respectLayerVisibility=!0,this.sublayerIds=[],this.title=null,this.view=null}initialize(){const e=()=>this.notifyChange("ready");this.addHandles([y(()=>this.children,"change",t=>{const{added:i,removed:s}=t;i.forEach(t=>{const i=`activeLayerInfo-ready-watcher-${t.layer.uid}`;this.addHandles(h(()=>t.ready,e,f),i)}),s.forEach(e=>this.removeHandles(e.layer.uid)),e()})]),this.keepCacheOnDestroy||(Xe={})}destroy(){this._webStyleSymbolCache=null,this._dotDensityUrlCache=null,this._scaleDrivenSizeVariable=null,this.keepCacheOnDestroy||(Xe=null),this._layerDefinitionExpressionClause=null}get cssEffectFilter(){const{layer:e,scale:t}=this,i="effect"in e?e.effect:null;if(!i)return null;const s=new w({effect:i});return s.endTransition(),s.scale=t,B(s,!0)}get loading(){return this.children.length>0?this.children.some(e=>e.loading):this._loading}get opacity(){const e=this.layer.opacity,t=this.parent?.opacity,i=this.layer.parent,s=i&&"uid"in i?this._getParentLayerOpacity(i):null;return null!=t?t*e:null!=s?s*e:e}get ready(){return null===this.layer||(this.children.length>0?this._isGroupActive():this.legendElements.length>0)}get scale(){return this.view?.scale??0}get isScaleDriven(){const e=this.layer;if(null===e)return!1;if("effect"in e&&e.effect&&Array.isArray(e.effect))return!0;if("featureReduction"in e&&e.featureReduction){if("cluster"===e.featureReduction.type)return!0;if("binning"===e.featureReduction.type&&"renderer"in e.featureReduction&&e.featureReduction.renderer)return this._isRendererScaleDriven(e.featureReduction.renderer)}return"renderer"in e&&e.renderer?!!("displayFilterInfo"in e&&e.displayFilterInfo&&Fe(e.renderer))||this._isRendererScaleDriven(e.renderer):this._isLayerScaleDriven(this.layer)}get version(){return this._get("version")+1}async buildLegendElementsForFeatureCollections(e){this._loading=!0;if(!(!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView()))return this.legendElements=[],this._loading=!1,void this.notifyChange("ready");const t=Array.from(e,e=>{if(C(e))return this._getRendererLegendElements(e.renderer,{title:e.title});if(e.featureSet?.features.length){const t=e.layerDefinition,i=t?.drawingInfo,s=i&&R(i.renderer),l=pe.read(t.geometryType);return s?this._getRendererLegendElements(s,{title:e.name,geometryType:l}):(o.getLogger(this).warn("drawingInfo not available!"),null)}return null});try{const e=[],i=await Promise.allSettled(t);for(const t of i)if("fulfilled"===t.status)for(const i of t.value??[])e.push(i);this.legendElements=e}catch(i){o.getLogger(this).warn("error while building legend for layer!",i)}finally{this._loading=!1,this.notifyChange("ready")}}async buildLegendElementsForRenderer(e){try{this._loading=!0;const t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getRendererLegendElements(e):[]}catch(t){o.getLogger(this).warn("error while building legend for layer!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async buildLegendElementsForFeatureReduction(e){try{this._loading=!0;const t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getLegendElementsForFeatureReduction(e):[]}catch(t){o.getLogger(this).warn("error while building legend for layer!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async buildLegendElementsForTools(){this._loading=!0;const e=this.layer;if(Pe(e))await this._constructLegendElementsForVoxelLayer();else if(Ue(e))this._constructLegendElementsForWMTSlayer();else if(ke(e))await this._constructLegendElementsForWMSSublayers();else if(Oe(e))await this._constructLegendElementsForBuildingSceneLayer();else if(Ae(e)||Be(e)||Me(e))await this._constructLegendElementsForSublayers();else{this.removeHandles("imageryLayers-watcher");let t="default";if(qe(e)){const i=e;t=(i?.rasterFunction?.functionName||"default")+"_"+(e.bandIds?.length?e.bandIds.join(""):"###")}if(Ne(e)||"link-chart"===e.type)return;await this._getLegendLayers(`${e.uid}-${t}`).then(async t=>{this.legendElements=[];const i=t.map(async t=>{if(qe(e)){const t=h(()=>[e.rasterFunction,e.bandIds],()=>c(async()=>{Xe.default=null,e.renderer?await this.buildLegendElementsForRenderer(e.renderer):await this.buildLegendElementsForTools()})());this.addHandles(t,"imageryLayers-watcher")}const i=this._generateSymbolTableElementForLegendLayer(t);i?.infos.length&&(qe(e)&&(i.title=e.title),this.legendElements.push(i))});await Promise.allSettled(i)}).catch(e=>{o.getLogger(this).warn("Request to server for legend has failed!",e)})}this._loading=!1,this.notifyChange("ready")}async _isLayerInCurrentView(e){const t=this.layer,i=this.layerView,s=i&&"createQuery"in i&&"queryFeatureCount"in i;if(!s&&!(i&&"createQuery"in t&&"queryFeatureCount"in t))return!0;await p(()=>!i.updating);const l=s?"createQuery"in i&&i.createQuery():"createQuery"in t&&t.createQuery();if(!l)return!0;l.geometry=this.view.extent,e&&(l.where=ee(l.where,e));return 0!==(s?"queryFeatureCount"in i&&await i.queryFeatureCount(l):"queryFeatureCount"in t&&await t.queryFeatureCount(l))}_getParentLayerOpacity(e){let t=1;const i=e.parent;return i&&"uid"in i&&(t=this._getParentLayerOpacity(i)),e.opacity*t}_isGroupActive(){return this.children.some(e=>e.ready)}_isRendererScaleDriven(e){if("dot-density"===e.type)return!0;const t="valueExpression"in e?e.valueExpression:null;if(fe.test(t))return!0;const i="visualVariables"in e?e.visualVariables:null;return!!i?.some(e=>this._isScaleDrivenSizeVariable(e))||this._hasScaleDrivenSymbols(e)}_hasScaleDrivenSymbols(e){switch(e.type){case"simple":return this._isScaleDrivenSymbol(e.symbol);case"class-breaks":return this._isScaleDrivenSymbol(e.defaultSymbol)||e.classBreakInfos.some(e=>this._isScaleDrivenSymbol(e.symbol));case"unique-value":return this._isScaleDrivenSymbol(e.defaultSymbol)||!!e.uniqueValueInfos?.some(e=>this._isScaleDrivenSymbol(e.symbol))}return!1}_isScaleDrivenSymbol(e){if("cim"===e?.type){const{primitiveOverrides:t,minScale:i,maxScale:s}=e.data,l=t?.some(e=>(e.valueExpressionInfo?.expression||"").includes("$view.scale"))??!1;return null!=i||null!=s||l}return!1}_isScaleDrivenSizeVariable(e){if(e&&"size"!==e.type)return!1;const t=e,i=t.minSize,s=t.maxSize;return!("object"!=typeof i||!i||!this._isScaleDrivenSizeVariable(i))||(!("object"!=typeof s||!s||!this._isScaleDrivenSizeVariable(s))||fe.test(t.valueExpression))}_isLayerScaleDriven(e){if("minScale"in e&&e.minScale>0||"maxScale"in e&&e.maxScale>0)return!0;if("sublayers"in e&&e.sublayers)return e.sublayers.some(e=>this._isLayerScaleDriven(e));const t=e.parent;if(!1===e.loaded&&t&&Ae(t)&&"source"in e&&e.source&&"map-layer"===e.source.type)for(const i of t.sourceJSON.layers??[])if(i.id===e.source.mapLayerId&&(i.minScale>0||i.maxScale>0))return!0;return!1}async _constructLegendElementsForVoxelLayer(){this._loading=!0,this.legendElements=[],this.removeHandles("voxel-style-watcher"),this.removeHandles("voxel-current-variable");const e=this.layer;this.addHandles(h(()=>e.currentVariableId,()=>this._constructLegendElementsForVoxelLayer()),"voxel-current-variable"),this.addHandles(h(()=>e.getVariableStyles(),()=>this._constructLegendElementsForVoxelLayer()),"voxel-style-watcher");const t=e.getVariableStyle(null),i=[];if(t)if(t.uniqueValues?.length){const e=[];t.uniqueValues.forEach(t=>{t.enabled&&e.push({label:t.label||`${t.value}`,value:t.value,symbol:new T({color:t.color,outline:null})})}),e.length&&i.push({type:"symbol-table",title:t.label,infos:e})}else if(t.transferFunction){const{colorStops:e,stretchRange:s}=t.transferFunction,l=e.toArray().reverse(),r=s.map((e,t)=>`${0===t?te:ie} ${oe(e)}`).reverse(),n=l.map(e=>({color:e.color,value:null,label:null}));n[0].label=r[0],n[n.length-1].label=r[1],i.push({type:"color-ramp",title:t.label,infos:n,preview:P(l.map(e=>e.color))})}await this._generatePreviewsForLegendElements(i,{opacity:e.opacity}),this.legendElements=i,this._loading=!1,this.notifyChange("ready")}_constructLegendElementsForWMTSlayer(){this._loading=!0,this.legendElements=[],this.removeHandles("wmts-activeLayer-watcher");const e=this.layer.activeLayer;this.addHandles(h(()=>{const{layer:e}=this;return e&&"activeLayer"in e&&e.activeLayer},()=>this._constructLegendElementsForWMTSlayer()),"wmts-activeLayer-watcher");const t=e.styleId?e.styles?.find(({id:t})=>t===e.styleId)?.legendUrl:void 0;t&&(this.legendElements=[{type:"symbol-table",title:e.title,infos:[{src:t,opacity:this.opacity}]}]),this._loading=!1,this.notifyChange("ready")}async _constructLegendElementsForWMSSublayers(){this._loading=!0,this.legendElements=[],this.removeHandles("wms-sublayers-watcher");const e=this.layer;let t=null;(e.customParameters||e.customLayerParameters)&&(t={...e.customParameters,...e.customLayerParameters}),this.addHandles(h(()=>{const{layer:e}=this;return e&&"sublayers"in e&&e.sublayers},()=>this._constructLegendElementsForWMSSublayers()),"wms-sublayers-watcher"),this.legendElements=await this._generateLegendElementsForWMSSublayers(e.sublayers,t),this._loading=!1,this.notifyChange("ready")}async _generateLegendElementsForWMSSublayers(e,t){const i=this.layer,s=[];this.addHandles(e.on("change",()=>this._constructLegendElementsForWMSSublayers()),"wms-sublayers-watcher");const l=this.sublayerIds?.map(e=>i.findSublayerById(e))?.filter(r)??[],n=l.length?l:e.toArray();for(const r of n){const e=h(()=>[r.title,r.visible,r.legendEnabled],()=>this._constructLegendElementsForWMSSublayers());if(this.addHandles(e,"wms-sublayers-watcher"),!this.respectLayerVisibility||r.visible&&r.legendEnabled){const e=await this._generateSymbolTableElementForWMSSublayer(r,t);e?.infos.length&&s.unshift(e)}}return s}async _generateSymbolTableElementForWMSSublayer(e,t){if(!e.legendUrl&&e.sublayers){const i=(await this._generateLegendElementsForWMSSublayers(e.sublayers,t)).filter(e=>e);return{type:"symbol-table",title:e.title,infos:i}}return this._generateSymbolTableElementForLegendUrl(e,t)}async _generateSymbolTableElementForLegendUrl(e,t){let i=e.legendUrl;if(!i)return;const l={type:"symbol-table",title:e.title||e.name||String(e.id??""),infos:[]};t&&(i=b(i,t));let r=null;const n=e.layer?.opacity;try{r=(await s(i,{responseType:"image"})).data,r&&(r.style.opacity=n)}catch{}return l.infos.push({src:i,preview:r,opacity:n}),l}_getLegendLayers(e,t){const i=Xe&&Xe[e];return i?Promise.resolve(i):this._legendRequest(t).then(t=>{const i=t.layers;return Xe[e]=i,i})}_legendRequest(e){const t=this.layer;let i={f:"json",dynamicLayers:e};if(qe(t)){const e=t.exportImageServiceParameters.rasterFunction;if(e&&(i.renderingRule=JSON.stringify(e.functionDefinition?.toJSON()||e.toJSON())),t.bandIds&&(i.bandIds=t.bandIds.join()),t.raster||t.viewId||t.customParameters){const{raster:e,viewId:s,customParameters:l}=t;i={raster:e,viewId:s,...i,...l}}}let l=t.url.replace(/(\/)+$/,"");if("version"in t&&+t.version>=10.01){const e=l.indexOf("?");e>-1?l=l.slice(0,e)+"/legend"+l.slice(e):l+="/legend"}else{const e=l.toLowerCase().indexOf("/rest/"),t=-1===e?l:l.slice(0,e)+l.slice(e+5);l=ce+"?soapUrl="+encodeURI(t)+"&returnbytes=true"}return s(l,{query:i}).then(e=>e.data)}async _constructLegendElementsForBuildingSceneLayer(){this._loading=!0,this.legendElements=[],this.removeHandles("sublayers-watcher");const e=this.layer;this.addHandles(h(()=>e.sublayers,()=>this._constructLegendElementsForBuildingSceneLayer()),"sublayers-watcher");try{this.legendElements=await this._generateLegendElementsForBuildingSublayers(e.sublayers,this.opacity)}catch(t){o.getLogger(this).warn("Request to server for legend has failed!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async _generateLegendElementsForBuildingSublayers(e,t){let i=[];this.addHandles(e.on("change",()=>this._constructLegendElementsForBuildingSceneLayer()),"sublayers-watcher");const s=e.toArray();for(const l of s){const e=h(()=>["renderer"in l&&l.renderer,l.opacity,l.title,l.visible],()=>this._constructLegendElementsForBuildingSceneLayer());if(this.addHandles(e,"sublayers-watcher"),!this.respectLayerVisibility||l.visible){const e=null!=l?.opacity?l.opacity:null,s=null!=e?e*t:t;if("building-group"===l.type){const e={type:"symbol-table",title:l.title,infos:[]},t=await this._generateLegendElementsForBuildingSublayers(l.sublayers,s);e.infos.push(...t),i=[e,...i]}else if(l.renderer){i=[...await this._getRendererLegendElements(l.renderer,{title:l.title,opacity:s,sublayer:l}),...i]}}}return i.filter(e=>!!e&&(!("infos"in e)||!e.infos||e.infos.length>0))}async _constructLegendElementsForSublayers(){this._loading=!0,this.removeHandles("sublayers-watcher");const e=this.layer;if(!(Ae(e)||Be(e)||Me(e))||this.hideLayersNotInCurrentView&&!await this._isLayerInCurrentView())return this.legendElements=[],this._loading=!1,void this.notifyChange("ready");this.addHandles(h(()=>e.sublayers,()=>this._constructLegendElementsForSublayers),"sublayers-watcher");try{this.legendElements=await this._generateLegendElementsForSublayers(e.sublayers,this.opacity)}catch(t){o.getLogger(this).warn("Request to server for legend has failed!",t)}finally{this._loading=!1,this.notifyChange("ready")}}async _generateLegendElementsForSublayers(e,t,i){const s=this.layer;let l=[];this.addHandles(e.on("change",()=>this._constructLegendElementsForSublayers()),"sublayers-watcher");let n=e.toArray();!i&&this.sublayerIds&&this.sublayerIds.length&&(n=Me(s)?this.sublayerIds.map(e=>s.findSublayerForSubtypeCode(e)).filter(r):this.sublayerIds.map(e=>s.findSublayerById(e)).filter(r));for(const r of n){const e=h(()=>[r.renderer,r.opacity,r.title,r.visible,r.legendEnabled],()=>this._constructLegendElementsForSublayers());this.addHandles(e,"sublayers-watcher");const s=r.createQuery().where,n=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView(s),a=!this.respectLayerVisibility||r.visible&&r.legendEnabled&&this._isSublayerInScale(r);if(n&&a){const e=null!=r?.opacity?r.opacity:null,s=null!=e?e*t:t,n=!Qe(r)||r.originIdOf("renderer")>2&&!r.sublayers;if(r.renderer&&n){await r.load();l=[...await this._getRendererLegendElements(r.renderer,{title:r.title,opacity:s,sublayer:r}),...l]}else if(Qe(r)){const e=await this._generateSymbolTableElementForSublayer(r,s,i);e&&l.unshift(e)}}}return l.filter(e=>!!e&&(!("infos"in e)||!e.infos||e.infos.length>0))}async _generateSymbolTableElementForSublayer(e,t,i){if(!i){i=new Map;const t=this.layer,s=e.source;let l=null;if(!(!s||"map-layer"===s.type&&s.mapLayerId===e.id&&(!s.gdbVersion||s.gdbVersion===("gdbVersion"in t&&t.gdbVersion)))||e.originIdOf("renderer")>2||e.originIdOf("labelingInfo")>2||e.originIdOf("labelsVisible")>2){const e=new L({layer:this.layer});l=e.hasDynamicLayers?e.dynamicLayers:null,e.destroy()}const r=l||`${t.uid}-default`;(await this._getLegendLayers(r,l)).forEach(e=>i.set(e.layerId,e))}const s=i.get(e.id);if((!s||s?.subLayerIds&&s.defaultVisibility)&&e.sublayers){const s=await this._generateLegendElementsForSublayers(e.sublayers,t,i);return{type:"symbol-table",title:e.title,infos:s}}return this._generateSymbolTableElementForLegendLayer(s,e,t)}_generateSymbolTableElementForLegendLayer(e,t,i){if(!e?.legend||this.respectLayerVisibility&&!this._isLegendLayerInScale(e,t))return null;const s=t?.renderer;let l=t?.title||e.layerName;if(s&&(!t||t?.originIdOf("renderer")>2)){const e=t?.title||this._getRendererTitle(s,t);e&&(l&&"string"!=typeof e&&"title"in e&&(e.title=l),l=e)}const r={type:"symbol-table",title:l,legendType:e.legendType||null,infos:[]},n=t?this._sanitizeLegendForSublayer(e.legend.slice(),t):e.legend;return e.legendGroups&&e.legendGroups.length>0?e.legendGroups.forEach(s=>{const l={type:"symbol-table",title:s.heading,legendType:e.legendType||null,infos:this._generateSymbolTableElementInfosForLegendLayer(n.filter(e=>e.groupId===s.id),e.layerId,s.heading||r.title||t?.title,i)};l.infos?.length>0&&r.infos.push(l)}):r.infos=this._generateSymbolTableElementInfosForLegendLayer(n,e.layerId,r.title||t?.title,i),r.infos.length>0?r:null}_generateSymbolTableElementInfosForLegendLayer(e,t,s,l){return e.map(e=>{let r=e.url;if(e.imageData&&e.imageData.length>0)r=`data:image/png;base64,${e.imageData}`;else{if(r.startsWith("http"))return null;r=i(`${this.layer.url}/${t}/images/${r}`)}let n=e.label;return"<all other values>"===n&&(n="others"),{previewAriaLabel:n||s,label:n,src:r,opacity:l??this.opacity,width:e.width,height:e.height}}).filter(r)}_isSublayerInScale(e){const t=e.minScale||0,i=e.maxScale||0;return!(t>0&&t<this.scale||i>this.scale)}_isLegendLayerInScale(e,t){const i=t||this.layer;let s=null,l=null,r=!0;return!i.minScale&&0!==i.minScale||!i.maxScale&&0!==i.maxScale?(0===e.minScale&&i.tileInfo&&(s=i.tileInfo.lods[0].scale),0===e.maxScale&&i.tileInfo&&(l=i.tileInfo.lods[i.tileInfo.lods.length-1].scale)):(s=Math.min(i.minScale,e.minScale)||i.minScale||e.minScale,l=Math.max(i.maxScale,e.maxScale)),(s>0&&s<this.scale||l>this.scale)&&(r=!1),r}_sanitizeLegendForSublayer(e,t){if("version"in this.layer&&+this.layer.version<10.1||0===e.length)return e;const i=t.renderer,s=e.some(e=>e.values);let l=0,r=null;return s&&e.some((e,t)=>(e.values||(l=t,r=e,r.label||(r.label="others")),null!=r)),i?"unique-value"===i.type?r&&(e.splice(l,1),e.push(r)):"class-breaks"===i.type&&(r&&e.splice(l,1),i.legendOptions?.order||e.reverse(),r&&e.push(r)):r&&(e.splice(l,1),e.push(r)),e}async _getRendererLegendElements(e,t={}){if(!je(e,this.view))return o.getLogger(this).warn(`Renderer of type '${e.type}' not supported!`),[];if(Ie(e))return this._constructPointCloudRendererLegendElements(e,t);if(ze(e))return this._constructDotDensityRendererLegendElements(e);const i=await this._loadRenderer(e);return Te(i)?this._constructPieChartRendererLegendElements(i):this._constructRendererLegendElements(i,t)}async _getLegendElementsForFeatureReduction(e){let t=null;return"binning"===e.type?t=e.renderer:"cluster"===e.type&&(t=this._getClusterRenderer(e)),t?this._getRendererLegendElements(t,{isFeatureReductionRenderer:!0}):[]}_getPointCloudRendererTitle(e){return(e.legendOptions?.title||e.field)??""}async _constructPointCloudRendererLegendElements(e,t={}){const i=t.title,s=[];let l=null,r=null;if(Ve(e))l={type:"symbol-table",title:i||this._getPointCloudRendererTitle(e),infos:[]},e.colorClassBreakInfos.forEach(e=>{l.infos.unshift({label:e.label||e.minValue+" - "+e.maxValue,value:[e.minValue,e.maxValue],symbol:this._getAppliedCloneSymbol(me,e.color)})});else if(De(e)){const t=e.stops;let s=null;if(t?.length&&(1===t.length&&(s=t[0].color),!s)){const e=t[0].value,i=t[t.length-1].value;if(null!=e&&null!=i){s=$(e+(i-e)/2,t)}}l={type:"symbol-table",title:null,infos:[{label:null,value:null,symbol:this._getAppliedCloneSymbol(me,s||me.color)}]};const n=H(e.stops??[])??[];r={type:"color-ramp",title:i||this._getPointCloudRendererTitle(e),infos:n,preview:P(n.map(e=>e.color))}}else xe(e)&&(l={type:"symbol-table",title:i||this._getPointCloudRendererTitle(e),infos:[]},e.colorUniqueValueInfos?.forEach(e=>{l.infos.push({label:e.label||e.values.join(", "),value:e.values.join(", "),symbol:this._getAppliedCloneSymbol(me,e.color)})}));return l?.infos.length&&s.push(l),r?.infos.length&&s.push(r),await this._generatePreviewsForLegendElements(s,{opacity:this.opacity,symbolConfig:{applyColorModulation:!!e.colorModulation}}),s}async _getElementInfoForDotDensity(e,t){const{color:i,label:s,valueExpressionTitle:l}=t,{backgroundColor:r,outline:n,dotSize:a}=e,o=this.cssEffectFilter,u=a+"-"+i+"-"+r+"-"+(n&&JSON.stringify(n.toJSON()))+"-"+o,c=this._dotDensityUrlCache,d=c.has(u)?c.get(u):k(e,i);c.set(u,d);const y={shape:{type:"image",x:0,y:0,width:d.width,height:d.height,src:d.src},fill:null,stroke:null,offset:[0,0]},h=M([[y]],[d.width,d.height],{cssEffectFilter:this.cssEffectFilter});return{opacity:1,src:d.src,preview:h,width:d.width,height:d.height,previewAriaLabel:s||l}}async _constructDotDensityRendererLegendElements(e){const t=e.calculateDotValue(this.view.scale),i=e.legendOptions?.unit,s={type:"symbol-table",title:{value:t&&Math.round(t),unit:i||""},infos:[]};for(const l of e.attributes){const t=await this._getElementInfoForDotDensity(e,l);t.label=l.label||l.valueExpressionTitle||l.field,s.infos.push(t)}return[s]}async _constructPieChartRendererLegendElements(e){const t=[];let i=null;const s=e.outline;e.attributes.forEach(e=>{const i=new j({color:e.color,outline:s}),l=e.label||e.valueExpressionTitle||e.field;t.push({label:l,symbol:i})});const l=t.length?[...t]:[];if(e.othersCategory?.color&&0!==e.othersCategory?.threshold){const l=new j({color:e.othersCategory.color,outline:s});i=e.othersCategory.label||"Other",t.push({label:i,symbol:l})}if(e.defaultColor?.a){const i=new j({color:e.defaultColor,outline:s});t.push({label:e.defaultLabel,symbol:i})}const r=await this._getVisualVariableLegendElements(e,this.layer)||[];if(t.length){r.unshift({type:"symbol-table",title:null,infos:t});const n=l.filter(e=>e.label!==i).map(e=>e.symbol.color).filter(Boolean),a=U(n,{holePercentage:e.holePercentage,backgroundColor:e.backgroundFillSymbol?.color,cssEffectFilter:this.cssEffectFilter,outline:s});r.unshift({type:"pie-chart-ramp",title:this._getRendererTitle(e,this.layer),infos:t,preview:a})}return await this._generatePreviewsForLegendElements(r,{opacity:this.layer.opacity,cssEffectFilter:this.cssEffectFilter}),r}async _getWhereClause(e,t,i){const s=await g(e,i),l=new Set,{field:r,field2:n,field3:a}=t;E(l,i,[r,n,a]),await F(l,i,null,t.valueExpression);const o=new Set(Array.from(l,e=>e.toLowerCase())),u=s?.fieldNames.map(e=>e.toLowerCase());return u?.some(e=>!o.has(e))?null:s}async _processDefinitionExpression(e,t){if(!("definitionExpression"in e))return;const i=e.definitionExpression;i&&this.respectLayerDefinitionExpression?this._layerDefinitionExpression!==i&&(this._layerDefinitionExpressionClause=await this._getWhereClause(i,t,e.fieldsIndex)):this._layerDefinitionExpressionClause=null,this._layerDefinitionExpression=i}async _processDisplayFilter(e,t){if(!("displayFilterInfo"in e))return;const i=e.displayFilterInfo?v(e.displayFilterInfo,this.view):null;return i?.where?this._layerDisplayFilter?.id!==i?.id&&(this._layerDisplayFilterClause=await this._getWhereClause(i.where,t,e.fieldsIndex)):this._layerDisplayFilterClause=null,this._layerDisplayFilter=i,i}async _constructRendererLegendElements(e,t={}){const{title:i,sublayer:s,isFeatureReductionRenderer:l}=t,r=s||this.layer,n=se(e,"reference-size"),a=se(e,"spike"),o=l&&"renderer"in r&&r.renderer?r.renderer:e;let u=null;Fe(o)&&(await this._processDefinitionExpression(r,o),u=await this._processDisplayFilter(r,o)),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._scaleDrivenSizeVariable=null;const c=await this._getVisualVariableLegendElements(e,r)||[],d={type:"symbol-table",title:i||this._getRendererTitle(e,r),infos:[]};let y=null,h=!1;const f=new Set;if(be(e)&&!this._hasSizeRamp){const t=await le(e);d.infos.push({label:null,symbol:t})}else if(We(e)){let t=i;const s=Ge(e)?"univariate-above-and-below-ramp":"univariate-color-size-ramp",l=c.findIndex(e=>"color-ramp"===e.type),r=-1!==l?c.splice(l,1)[0]:null,n=c.findIndex(e=>"size-ramp"===e.type),a=-1!==n?c.splice(n,1)[0]:null,o=[];r&&(t=r.title,o.push(r)),a&&(t=a.title,o.push(a)),o.length>0&&c.push({type:s,title:t,infos:o})}else if(Ce(e)){const t=Q(e);c.push({type:"heatmap-ramp",title:i||this._getRendererTitle(e,r),infos:t,preview:P(t.map(e=>e.color),{cssEffectFilter:this.cssEffectFilter})})}else if(Fe(e)){const t=e.authoringInfo;if(t&&"relationship"===t.type){const{numClasses:i,field1:s,field2:l}=t,n=t.focus;if(i&&s&&l){const t=[s,l];let a=J(n)||0;for(const e of t){const{field:t,normalizationField:i,label:s}=e,l=s||{field:this._getFieldAlias(t,r),normField:i&&this._getFieldAlias(i,r)},n=Ke.clone();n.angle=a,d.infos.push({label:l,symbol:n}),f.add(n),a+=90}const o=Z({focus:n,numClasses:i,infos:e.uniqueValueInfos??[]});c.unshift(o)}}else if(qe(this.layer)||Ne(this.layer)){const{uniqueValueInfos:t}=e;if(t)for(const e of t)e.symbol&&await this._checkClausesForUVR(o,e.value)&&d.infos.push({label:e.label||e.value,value:e.value,symbol:e.symbol})}else{const{field:t,field2:s,field3:l,fieldDelimiter:a,valueExpression:c,defaultSymbol:y}=e,f=!(!t&&!c||!s&&!l),p=u?u.title:null,m=[],{uniqueValueGroups:g}=e;if(g)for(const e of g){const i={type:"symbol-table",title:p||e.heading,infos:[]},{classes:u}=e;if(u)for(const e of u){const{symbol:u,values:d}=e;if(u){const y=[],h=[];for(const e of d??[]){const{value:i,value2:n,value3:o}=e,u=[],d=[];(t||c)&&(u.push(i),d.push(this._getDomainName(t,i,r))),s&&(u.push(n),d.push(this._getDomainName(s,n,r))),l&&(u.push(o),d.push(this._getDomainName(l,o,r))),y.push(f?u.join(a||""):u[0]),h.push(d.join(" - "))}const p=y.join(", ");let m=e.label;if(!m){const e=h.filter(Boolean);m=e.length?e.join(", "):p}let g=u;"cim"===g.type&&n&&(g=g.clone(),z(g,{innerDotSize:.5*ue,outerRingSize:ue}));let b=!1;for(const e of y)if(b=await this._checkClausesForUVR(o,e),b)break;b&&i.infos.push({label:m,value:p,symbol:g})}}i.infos.length&&m.push(i)}if(m.length){const t=m[0];if(1===m.length&&"title"in t&&!t.title){const e=t.infos?.filter(Je)??[];d.infos.push(...e)}else y&&(m.push({type:"symbol-table",infos:[{label:e.defaultLabel||"others",symbol:y}]}),h=!0),d.infos.push(...m);i||e.legendOptions?.title||e.valueExpressionTitle||(d.title=null)}}e.defaultSymbol&&!h&&(d.infos.push({label:e.defaultLabel||"others",symbol:e.defaultSymbol}),h=!0)}else if(Ee(e)){if(!n&&!a){y=this._isUnclassedRenderer(e);if(!y||!this._hasSizeRamp){const t=e.classBreakInfos.filter(({symbol:e})=>e),i="ascending-values"===e.legendOptions?.order;for(const{label:e,minValue:s,maxValue:l,symbol:n}of t){const t=e||(y?null:`${s} - ${l}`),a={previewAriaLabel:t||d.title||r.title,label:t,value:[s,l],symbol:n};i?d.infos.push(a):d.infos.unshift(a)}y&&(d.title=null),this._updateInfosForClassedSizeRenderer(e,d.infos)}e.defaultSymbol&&!y&&(d.infos.push({label:e.defaultLabel||"others",symbol:e.defaultSymbol}),h=!0)}}else if(we(e))if(Ne(this.layer)||$e(this.layer)){const t=await this._constructTileImageryStretchRendererElements(e);He(t)?c.push(t):d.infos=t}else{const t=this.layer;let i,s;e.customStatistics?.length&&({min:i,max:s}=e.customStatistics[0]);let l=[],r=t.serviceRasterInfo;if(t.rasterFunction)try{r=await t.generateRasterInfo(t.rasterFunction)}catch{}const n=I(r.pixelType);if(1===r.bandCount){const l=t.bandIds?.[0]||0;i=null!=i?i:r.statistics?r.statistics[l].min:n[0],s=null!=s?s:r.statistics?r.statistics[l].max:n[1],i||s?c.push(await this._getStretchLegendElements(e,{min:i,max:s})):this._getServerSideLegend()}else if(t.bandIds&&1===t.bandIds.length)i=null!=i?i:r.statistics?r.statistics[t.bandIds[0]].min:n[0],s=null!=s?s:r.statistics?r.statistics[t.bandIds[0]].max:n[1],i||s?c.push(await this._getStretchLegendElements(e,{min:i,max:s})):this._getServerSideLegend();else if(r.bandCount>=3){const{bandInfos:e}=r,{bandIds:i}=t;e.length>=r.bandCount?3===i?.length?(l=i.map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(l)):"lerc"===t.format?(l=[0,1,2].map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(l)):this._getServerSideLegend():"lerc"===t.format?(l=["band1","band2","band3"],d.infos=this._createSymbolTableElementMultiBand(l)):this._getServerSideLegend()}else this._getServerSideLegend()}else if(Se(e))e.colormapInfos.forEach(e=>{d.infos.push({label:e.label,value:e.value,symbol:this._getAppliedCloneSymbol(ge,e.color)})});else if(Le(e)){let i=e.symbol;switch(t.geometryType){case"point":i="pointSymbol"in r?r.pointSymbol:null;break;case"polyline":i="lineSymbol"in r?r.lineSymbol:null;break;case"polygon":i="polygonSymbol"in r?r.polygonSymbol:null}const s=this._hasClusterSizeVariable&&this._getClusterSymbol()||!this._hasSizeRamp;e.symbol&&s&&d.infos.push({previewAriaLabel:e.label||d.title||r.title,label:e.label,symbol:i})}else if(_e(e)){e.outputUnit&&(this.title="("+e.toJSON().outputUnit+")"),d.title=e.attributeField;const t=e.getClassBreakInfos();t?.length?t.forEach(e=>{d.infos.push({label:e.minValue+" - "+e.maxValue,symbol:e.symbol})}):d.infos.push({label:e.attributeField,symbol:e.getDefaultSymbol()})}else ve(e)&&c.push(await this._getStretchLegendElements(e,{min:0,max:255}));const p=e.defaultSymbol;!p||h||Le(e)||y&&!this._hasColorRamp&&!this._hasSizeRamp&&!this._hasOpacityRamp||c.push({type:"symbol-table",infos:[{label:e.defaultLabel||"others",symbol:p}]}),d.infos.length&&c.unshift(d);const m=null==t.opacity?this.opacity:t.opacity,g=this._isTallSymbol("visualVariables"in e?e.visualVariables:null),b=qe(this.layer)||Ne(this.layer);return await this._generatePreviewsForLegendElements(c,{opacity:m,symbolConfig:{isTall:g,isSquareFill:b},cssEffectFilter:this.cssEffectFilter},{arrowMarkerSymbols:f}),e=null,c}async _waitForLayerViewUpdate(e){const t=new AbortController,i=p(()=>!e.updating,t.signal);await d(i,5e3,t)}async _checkFeatureCountForExpression(e){const t=this.layerView;if(!(t&&"createQuery"in t&&"queryFeatureCount"in t))return!0;try{await this._waitForLayerViewUpdate(t);const i=t.createQuery();i.where=ee(i.where,e);return await t.queryFeatureCount(i)>0}catch{return!0}}async _checkClausesForUVR(e,t){const i=Ze(e,t);if(!i)return!0;return(!!!(!this._layerDefinitionExpressionClause&&this._layerDefinitionExpression&&this.respectLayerDefinitionExpression||!this._layerDisplayFilterClause&&this._layerDisplayFilter?.where)||await this._checkFeatureCountForExpression(`${e.field} = ${t}`))&&(!this._layerDefinitionExpressionClause||this._layerDefinitionExpressionClause.testFeature(i))&&(!this._layerDisplayFilterClause||this._layerDisplayFilterClause.testFeature(i))}_getServerSideLegend(){setTimeout(()=>this.buildLegendElementsForTools(),0)}_getAllInfos(e){const t=e?.infos;return t?t.reduce((e,t)=>e.concat(this._getAllInfos(t)),[]):[e]}async _constructTileImageryStretchRendererElements(e){const t=this.layer,i=t.symbolizer.rasterInfo??t.raster.rasterInfo;let s,l;const r=e?.customStatistics?.length?e.customStatistics:i?.statistics;if(r)({min:s,max:l}=r[0]);else{const e=I(i.pixelType);s=e[0],l=e[1]}if(t.hasStandardTime()&&(s=t.getStandardTimeValue(s),l=t.getStandardTimeValue(l)),1===i.bandCount||1===t.bandIds?.length)return this._getStretchLegendElements(e,{min:s,max:l});const n=(t?.bandIds?.length?t.bandIds:Array.from(Array(Math.min(i.bandCount,3)).keys())).map(e=>i.bandInfos[e].name);return n.length<3?n.push(n[1]):n.length>3&&n.splice(3),this._createSymbolTableElementMultiBand(n)}async _getStretchLegendElements(e,t){const i=e.colorRamp,s=W(i,t);return{type:"stretch-ramp",title:"",infos:s,preview:P(s.map(e=>e.color))}}_getClusterSymbol(){const e=this.layer,t="featureReduction"in e&&e.featureReduction,i=t&&"symbol"in t&&t.renderer;return i&&!0!==i?.authoringInfo?.isAutoGenerated?null:t&&"symbol"in t?t.symbol:null}async _getSizeLegendElement(e,t,i,s){return{type:"size-ramp",title:this._hasClusterSizeVariable?this._getClusterTitle(t):e,infos:await K(i,t,await re(i),this.scale,this.view,s,this._hasClusterSizeVariable?this._getClusterSymbol():null)}}_createSymbolTableElementMultiBand(e){const t=[],i=["red","green","blue"];return e.forEach((e,s)=>{t.push({label:{colorName:i[s],bandName:e},src:ne[s],opacity:this.opacity??1})}),t}_updateInfosForClassedSizeRenderer(e,t){const i=e.authoringInfo&&"class-breaks-size"===e.authoringInfo.type,s=e.classBreakInfos.some(e=>q(e.symbol));if(i&&s){const i=X,s=Y,l=e.classBreakInfos.length,r=(i-s)/(l>1?l-1:l);t.forEach((e,t)=>{e.size=i-r*t})}}_isTallSymbol(e){let t=!1,i=!1;if(e)for(let s=0;s<e.length&&(!t||!i);s++){const l=e[s];"size"===l.type&&("height"===l.axis&&(t=!0),"width-and-depth"===l.axis&&(i=!0))}return t&&i}async _generatePreviewsForLegendElements(e,t,i){const s=[];for(const l of e)for(const e of l.infos??[])if("infos"in e&&e.infos&&s.push(this._generatePreviewsForLegendElements([e],t,i)),Je(e)&&e.symbol&&!e.preview){let r=!0;if("cim"===e.symbol.type){const{minScale:t,maxScale:i}=e.symbol.data;(t&&t<this.scale||i&&i>this.scale)&&(r=!1)}r&&s.push(this._generateSymbolPreviewForInfo(e,{...t,clipBloomEffect:"theme"in l&&"spike"===l.theme,cssEffectFilter:i?.arrowMarkerSymbols?.has(e.symbol)?null:t.cssEffectFilter},i?{applyScaleDrivenSize:!i.arrowMarkerSymbols?.has(e.symbol)}:void 0))}await Promise.all(s)}async _getSize(e,t){let i=null==e.size&&this._hasSizeRamp?m(22):e.size;if(this._scaleDrivenSizeVariable&&t?.applyScaleDrivenSize){const{getSize:t}=await import("../../../renderers/visualVariables/support/visualVariableUtils.js");i=t(this._scaleDrivenSizeVariable,null,{view:this.view.type,scale:this.scale,shape:"simple-marker"===e.symbol.type?e.symbol.style:null})}return i}_getPreviewCIMOptions(e){return{style:"legend",cimOptions:{allowScalingUp:this._hasSizeRamp||!(!this._scaleDrivenSizeVariable||!e?.applyScaleDrivenSize),viewParams:this.isScaleDriven?{viewingMode:"2d"===this.view?.type?"map":this.view?.viewingMode,scale:this.view?.scale}:null}}}async _generateSymbolPreviewForInfo(e,t={},i){const{symbol:s}=e;try{if(t.size=await this._getSize(e,i),t.scale=!1,"cim"===s.type){const e=this._getPreviewCIMOptions(i);t={...t,...e}}e.preview=await A(s,t)}catch{e.preview=null,o.getLogger(this).warn(`Generating symbol preview failed for symbol type: ${s?.type}`)}}_getClusterRenderer(e){this._hasClusterSizeVariable=!1;const t="renderer"in this.layer?this.layer.renderer:null,i=e.renderer?.clone()||t?.clone(),s=N(e,this.layerView,this.view);if(s&&null!=i&&"visualVariables"in i){const t=i.visualVariables?.some(e=>"size"===e.type&&"outline"!==e.target&&!fe.test(e.valueExpression));if(!t){if("clusterMinSize"in e&&"clusterMaxSize"in e){const{clusterMinSize:t,clusterMaxSize:i}=e;s.legendOptions=new x({showLegend:t!==i})}const t=i.visualVariables||[];i.visualVariables=t.concat([s]),this._hasClusterSizeVariable=!0}}return i}async _loadRenderer(e){if(Ye.has(e))return Ye.get(e);const t=[],i=e.clone(),s=await re(i);if(Ee(i)||Fe(i)){const e=(i.classBreakInfos||i.uniqueValueInfos).map(e=>this._fetchSymbol(e.symbol,s).then(t=>{e.symbol=t}).catch(()=>{e.symbol=null}));Array.prototype.push.apply(t,e)}return t.push(this._fetchSymbol(i.symbol||i.defaultSymbol,i.defaultSymbol?null:s).then(e=>{this._applySymbolToRenderer(i,e,Le(i))}).catch(()=>{this._applySymbolToRenderer(i,null,Le(i))})),await Promise.allSettled(t),Ye.set(e,i),i}_applySymbolToRenderer(e,t,i){i?e.symbol=t:e.defaultSymbol=t}async _fetchSymbol(e,t){if(!e)throw new Error;if("web-style"===e.type){const i=this._webStyleSymbolCache;try{const s=await e.fetchSymbol({cache:i});return this._getAppliedCloneSymbol(s,t)}catch{throw o.getLogger(this).warn("Fetching web-style failed!"),new Error}}return this._getAppliedCloneSymbol(e,t)}_getAppliedCloneSymbol(e,i){if(!e||!i)return e;const s=e.clone(),l=i&&i.toRgba();return s.type.includes("3d")?this._applyColorTo3dSymbol(s,l):"cim"===s.type?O(s,i):s.color&&(s.color=new t(l||s.color)),s}_applyColorTo3dSymbol(e,i){i&&e.symbolLayers.forEach(e=>{e&&(e.material||(e.material={}),e.material.color=new t(i))})}async _getVisualVariableLegendElements(e,t){if(!("visualVariables"in e)||"vector-field"===e.type)return null;const i=e.visualVariables??[],s=[],l=[],n=[],a=se(e,"reference-size")??se(e,"spike");let o;if(2===a?.sizeStops?.length&&(Ee(e)||Fe(e))){const[e,t]=a.sizeStops;o=new D({field:a.field??void 0,normalizationField:a.normalizationField,minSize:u(e.size,10,100),maxSize:u(t.size,50,150),minDataValue:e.value,maxDataValue:t.value}),l.push(o)}for(const r of i)"color"===r.type?s.push(r):"size"===r.type?l.push(r):"opacity"===r.type&&n.push(r);const c=[...s,...l,...n];let d,y;if(0===s.length&&Ee(e)&&e.classBreakInfos&&1===e.classBreakInfos.length){const t=e.classBreakInfos[0];d=t&&t.symbol}if(0===s.length&&Le(e)&&(d=e.symbol),d)if(d.type.includes("3d")){const e=d.symbolLayers.at(0);"water"===e.type?null!=e.color&&(y=e.color):null!=e.material?.color&&(y=e.material.color)}else d.url||(y=d.color);const h=this.cssEffectFilter;return(await Promise.all(c.map(async i=>{if(!i.legendOptions||!1!==i.legendOptions.showLegend){const s=be(e)?i.field:this._getRampTitle(i,t);let l=null;const r=ae(t,i,this.view.timeZone);if("color"===i.type){const e=await G(i,null,r)??[];l={type:"color-ramp",title:s,infos:e,preview:P(e.map(e=>e.color),{cssEffectFilter:h})},this._hasColorRamp||(this._hasColorRamp=e.length>0)}else if("size"===i.type&&"outline"!==i.target)fe.test(i.valueExpression)?this._hasClusterSizeVariable||(this._scaleDrivenSizeVariable=i):(l=await this._getSizeLegendElement(s,i,e,r),o===i&&"spike"===a?.theme&&(l.theme=a.theme),this._hasSizeRamp||(this._hasSizeRamp=!(null==l.infos||!l.infos.length)));else if("opacity"===i.type){const e=await G(i,y,r)??[];l={type:"opacity-ramp",title:s,infos:e,preview:P(e.map(e=>e.color),{cssEffectFilter:h})},this._hasOpacityRamp||(this._hasOpacityRamp=e.length>0)}return l?.infos?l:null}}))).filter(r)}_getDomainName(e,t,i){if(e&&"function"!=typeof e){const s="getField"in i&&i.getField?.(e),l=s&&"getFieldDomain"in i&&i.getFieldDomain?i.getFieldDomain(s.name,{excludeImpliedDomains:has("esri-widget-legacy-field-domain-calculation")}):null;return"coded-value"===l?.type?l.getName(t):null}return null}_getClusterTitle(e){const t=this.layer,i=e.field;if("featureReduction"in t&&t.featureReduction&&"cluster"===t.featureReduction.type){const e=t.featureReduction,s="popupTemplate"in e&&e.popupTemplate,l=s&&s.fieldInfos;if(l)for(const t of l)if(t.fieldName===i)return"cluster_count"===i?t.label||{showCount:!0}:t.label}return{showCount:!0}}_getRampTitle(e,t){let i=e.field,s=e.normalizationField,l=!1,r=!1,n=!1,a=null;i="function"==typeof i?null:i,s="function"==typeof s?null:s;const o=e.legendOptions?.title;if(null!=o)a=o;else if(e.valueExpressionTitle)a=e.valueExpressionTitle;else{if("renderer"in t&&t.renderer&&"authoringInfo"in t.renderer&&t.renderer.authoringInfo?.visualVariables){const e=t.renderer.authoringInfo.visualVariables;for(let t=0;t<e.length;t++){const i=e[t];if("color"===i.type){if("ratio"===i.style){l=!0;break}if("percent"===i.style){r=!0;break}if("percent-of-total"===i.style){n=!0;break}}}}a={field:i&&this._getFieldAlias(i,t),normField:s&&this._getFieldAlias(s,t),ratio:l,ratioPercent:r,ratioPercentTotal:n}}return a}_getRendererTitle(e,t){const i=e;if(i.legendOptions?.title)return i.legendOptions.title;if(i.valueExpressionTitle)return i.valueExpressionTitle;let s=i.field,l=null,r=null;if(Ee(i)&&(l=i.normalizationField,r="percent-of-total"===i.normalizationType),s="function"==typeof s?null:s,l="function"==typeof l?null:l,Fe(i)){const{field2:e,field3:l,fieldDelimiter:r}=i;let n=s&&this._getFieldAlias(s,t);return e&&(n=`<${n}>${r}<${this._getFieldAlias(e,t)}>`,l&&(n=`${n}${r}<${this._getFieldAlias(l,t)}>`)),n}let n=null;return(s||l)&&(n={field:s&&this._getFieldAlias(s,t),normField:l&&this._getFieldAlias(l,t),normByPct:r}),n}_getFieldAlias(e,t){const i="popupTemplate"in t?t.popupTemplate:null,s=i?.fieldInfos;let l=s?.find(t=>e===t.fieldName),r=null;"getField"in t&&t.getField?r=t.getField(e):"fieldsIndex"in t&&t.fieldsIndex&&(r=t.fieldsIndex.get(e));let n=null;const a="featureReduction"in t&&t.featureReduction;a&&(l??="popupTemplate"in a?a.popupTemplate?.fieldInfos?.find(t=>e?.toLowerCase()===t.fieldName?.toLowerCase()):void 0,"fields"in a&&a.fields&&(n=a.fields.find(t=>t.name?.toLowerCase()===e?.toLowerCase())));const o=l||r||n;let u=null;return o&&(u=l?.label||r?.alias||n?.alias||"name"in o&&o.name||"fieldName"in o&&o.fieldName||null),u}_isUnclassedRenderer(e){const t=e.visualVariables;let i=!1;return Ee(e)&&e.classBreakInfos&&1===e.classBreakInfos.length&&t&&(i=e.field?t.some(t=>!(!t||e.field!==t.field||(e.normalizationField||t.normalizationField)&&e.normalizationField!==t.normalizationField)):!!t.length),i}};e([_()],et.prototype,"_loading",void 0),e([_()],et.prototype,"children",void 0),e([_({readOnly:!0})],et.prototype,"cssEffectFilter",null),e([_()],et.prototype,"layerView",void 0),e([_()],et.prototype,"layer",void 0),e([_()],et.prototype,"legendElements",void 0),e([_({readOnly:!0})],et.prototype,"loading",null),e([_({readOnly:!0})],et.prototype,"opacity",null),e([_()],et.prototype,"parent",void 0),e([_({readOnly:!0,dependsOn:[]})],et.prototype,"ready",null),e([_()],et.prototype,"hideLayersNotInCurrentView",void 0),e([_()],et.prototype,"keepCacheOnDestroy",void 0),e([_()],et.prototype,"respectLayerDefinitionExpression",void 0),e([_()],et.prototype,"respectLayerVisibility",void 0),e([_({readOnly:!0})],et.prototype,"scale",null),e([_()],et.prototype,"sublayerIds",void 0),e([_({readOnly:!0})],et.prototype,"isScaleDriven",null),e([_()],et.prototype,"title",void 0),e([_({readOnly:!0,dependsOn:["ready"],value:0})],et.prototype,"version",null),e([_()],et.prototype,"view",void 0),et=e([S("esri.widgets.Legend.support.ActiveLayerInfo")],et);export{et as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 5a476e6743902e35f81a.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1436],{4643:(t,e,n)=>{n.d(e,{c:()=>o});var s=n(46337);function o(t,e,n){if(s.S$)return;const o=function(t){class e extends window.MutationObserver{constructor(t){super(t),this.observedEntry=[],this.callback=t}observe(t,e){return this.observedEntry.push({target:t,options:e}),super.observe(t,e)}unobserve(t){const e=this.observedEntry.filter(e=>e.target!==t);this.observedEntry=[],this.callback(super.takeRecords(),this),this.disconnect(),e.forEach(t=>this.observe(t.target,t.options))}}return"intersection"===t?window.IntersectionObserver:"mutation"===t?e:window.ResizeObserver}(t);return new o(e,n)}},20307:(t,e,n)=>{n.d(e,{u:()=>i});var s=n(60178),o=n(83623),r=n(79e3);const i=()=>(0,s.aK)((t,e)=>{let n;function s(){n?.abort()}return e.onLoad(()=>{t.listen("focus",()=>{n=new AbortController,t.el.addEventListener("focusout",s,{signal:n.signal})})}),e.onDisconnected(()=>{t.el.removeEventListener("focusout",s)}),async(e,i)=>{if(t.disabled)return;const c=function(t){if(t)return function(t){return"target"in t&&("includeContainer"in t||"strategy"in t)}(t)?t:{target:t}}(e());if(!c)return;const{target:a,includeContainer:l,strategy:u}=c,h=(0,r.k)(t.el),d=h.activeElement;return await(0,o.c)(t),d!==h.activeElement||n&&!n?.signal.aborted?void 0:(t.el.removeEventListener("focus",s),(0,r.b)(a,l,u,t.el,i))}})},32239:(t,e,n)=>{var s=n(34088),o=n(46337),r=n(32906),i=n(79e3),c=n(4643),a=n(84137);const l="flip-rtl",u="svg",h={},d={},p={s:16,m:24,l:32};function b({icon:t,scale:e}){const n=p[e],s=function(t){const e=!isNaN(Number(t.charAt(0))),n=t.split("-");if(n.length>0){const e=/[a-z]/i;t=n.map((t,n)=>t.replace(e,function(t,e){return 0===n&&0===e?t:t.toUpperCase()})).join("")}return e?`i${t}`:t}(t),o="F"===s.charAt(s.length-1);return`${o?s.substring(0,s.length-1):s}${n}${o?"F":""}`}function f(t){return h[t]}const v=o.AH`:host{--calcite-internal-color-focus: var( --calcite-color-focus, var(--calcite-ui-focus-color, var(--calcite-color-brand)) )}:host{display:inline-flex;color:var(--calcite-icon-color, var(--calcite-ui-icon-color, currentColor))}:host([scale=s]){inline-size:16px;block-size:16px;min-inline-size:16px;min-block-size:16px}:host([scale=m]){inline-size:24px;block-size:24px;min-inline-size:24px;min-block-size:24px}:host([scale=l]){inline-size:32px;block-size:32px;min-inline-size:32px;min-block-size:32px}.flip-rtl{transform:scaleX(-1)}.svg{display:block}:host([hidden]){display:none}[hidden]{display:none}`;class g extends r.WF{constructor(){super(...arguments),this.visible=!1,this.flipRtl=!1,this.icon=null,this.preload=!1,this.scale="m"}static{this.properties={pathData:[16,{},{state:!0}],visible:[16,{},{state:!0}],flipRtl:[7,{},{reflect:!0,type:Boolean}],icon:[3,{},{reflect:!0}],preload:[7,{},{reflect:!0,type:Boolean}],scale:[3,{},{reflect:!0}],textLabel:1}}static{this.styles=v}connectedCallback(){if(super.connectedCallback(),this.preload)return this.visible=!0,void this.loadIconPathData();this.visible||this.waitUntilVisible(()=>{this.visible=!0,this.loadIconPathData()})}willUpdate(t){(t.has("icon")&&(this.hasUpdated||null!==this.icon)||t.has("scale")&&(this.hasUpdated||"m"!==this.scale))&&this.loadIconPathData()}disconnectedCallback(){super.disconnectedCallback(),this.intersectionObserver?.disconnect(),this.intersectionObserver=null}async loadIconPathData(){const{icon:t,scale:e,visible:n}=this;if(o.S$||!t||!n)return;const r={icon:t,scale:e},i=f(b(r))||await async function(t){const e=b(t),n=f(e);if(n)return n;d[e]||(d[e]=fetch((0,s.g)(`./assets/icon/${e}.json`)).then(t=>t.json()).catch(()=>(a.l.error(`${t.icon} (${t.scale}) icon failed to load`),"")));const o=await d[e];return h[e]=o,o}(r);t===this.icon&&(this.pathData=i)}waitUntilVisible(t){this.intersectionObserver=(0,c.c)("intersection",e=>{e.forEach(e=>{e.isIntersecting&&(this.intersectionObserver.disconnect(),this.intersectionObserver=null,t())})},{rootMargin:"50px"}),this.intersectionObserver?this.intersectionObserver.observe(this.el):t()}render(){const{el:t,flipRtl:e,pathData:n,scale:s,textLabel:c}=this,a=(0,i.g)(t),h=p[s],d=!!c,b=[].concat(n||"");return this.el.ariaHidden=(0,i.t)(!d),this.el.ariaLabel=d?c:null,this.el.role=d?"img":null,o.qy`<svg aria-hidden=true class=${(0,r.CP)({[l]:"rtl"===a&&e,[u]:!0})} fill=currentColor height=100% viewBox=${`0 0 ${h} ${h}`} width=100% xmlns=http://www.w3.org/2000/svg>${b.map(t=>"string"==typeof t?o.JW`<path d=${t??o.s6} />`:o.JW`<path d=${t.d??o.s6} opacity=${("opacity"in t?t.opacity:1)??o.s6} />`)}</svg>`}}(0,s.c)("calcite-icon",g)},60178:(t,e,n)=>{n.d(e,{aK:()=>g,yr:()=>k,oW:()=>y});var s=n(55333),o=n(94667);var r=n(46337);const i={},c=t=>{const e=t.join(","),n=i[e];if(void 0!==n)return n;const s=new Set,o=new MutationObserver(t=>s.forEach(e=>e(t)));globalThis.document&&o.observe(document.documentElement,{attributes:!0,attributeFilter:t,subtree:!0});const r={subscribe:t=>(s.add(t),()=>{s.delete(t),0===s.size&&(o.disconnect(),i[e]=void 0)})};return i[e]=r,r},a=(t,e,n)=>{const s=((t,e)=>{let n=t;for(;n;){const t=n.closest?.(e);if(t)return t;const s=n.getRootNode?.();if(s===globalThis.document)return;n=s.host}})(t,`[${e}]`);return s?.getAttribute(e)??n},l="ar,bg,bs,ca,cs,da,de,el,en,es,et,fi,fr,he,hr,hu,id,it,ja,ko,lt,lv,nl,nb,no,pl,pt-BR,pt-PT,ro,ru,sk,sl,sr,sv,th,tr,uk,vi,zh-CN,zh-HK,zh-TW".split(","),u=new Set(l),h="en",d={pt:"pt-PT",nb:"no",nn:"no",zh:"zh-CN"},p={},b=async(t,e)=>{const n=`${e}${t}.json`;try{const t=await fetch(n);if(t.ok)return await t.json()}catch(t){return console.error(t),{}}return t===h?{}:await b(h,e)},f=t=>{const e=a(t,"lang",globalThis.navigator?.language||h);return{lang:e,t9nLocale:v(e)}},v=t=>{const[e,n]=t.split("-"),s=e.toLowerCase();let o=s;return n&&(o=`${s}-${n.toUpperCase()}`),o=d[o]??o,u.has(o)?o:n?v(s):h},g=t=>e=>w(e,t);class m extends s.C{constructor(t,e){super(t);const n=this.exports;try{(0,o.s)(this.component);const t=e(this.component,this),s=this.exports!==n;if((0,o.i)(t)){s||this.setProvisionalExports(t);const e=t.then(t=>{this.exports=t,super.catchUpLifecycle()}).catch(t=>{this.P.reject(t),console.error(t)});this.onLoad(async()=>await e)}else s&&void 0===t||(this.exports=t),queueMicrotask(()=>super.catchUpLifecycle())}catch(t){this.P.reject(t),console.error(t)}}catchUpLifecycle(){}}const w=(x=m,(...t)=>{const e=(0,o.d)(),n=new x(...t),r=n.exports;(0,o.b)(e.at(-1));const i=n.component.manager;i.W(n,r),n.watchExports(i.W.bind(i,n)),(0,o.j)(n);const c=[n.component,...e].reverse();return(0,s.t)(c,t=>void 0===t?void 0:((t,{host:e,key:n,isReactive:s},r)=>{const i=e,c=i[n]!==t.exports,a=i[n]!==r,l=r!==t.exports;if(c&&!a&&l&&(i[n]=t.exports),e===t.component){if(s){const e=t.component.manager;a&&e.W(t,i[n]),t.onUpdate(s=>{if(s.has(n)){const s=i[n];s!==t.exports&&e.W(t,s)}})}t.O=s?void 0:n}const u=t.component.constructor.elementProperties.get(n)?.readOnly;t.watchExports(()=>{i[n]!==t.exports&&(u?(0,o.f)(()=>{i[n]=t.exports}):i[n]=t.exports)})})(n,t,r),r)});var x;const y=(t,e)=>new $(t,e);class $ extends s.C{#t;#e;#n;constructor(t,e){super(),r.S$||(this.#e=t,this.#n=e,this.#t=new MutationObserver(n=>{n.forEach(n=>{t.includes(n.attributeName)&&e.call(this.component,this.component.el.getAttribute(n.attributeName),n.oldValue,n.attributeName)})}))}hostConnected(){this.#e.forEach(t=>{this.component.el.hasAttribute(t)&&this.#n.call(this.component,null,this.component.el.getAttribute(t),t)}),this.#t.observe(this.component.el,{attributes:!0,attributeOldValue:!0,attributeFilter:this.#e})}hostDisconnected(){this.#t.disconnect()}}const k=t=>(e={})=>w(void 0,(n,s)=>{const o=f(n.el),r={_lang:o.lang,_t9nLocale:o.t9nLocale,_loading:!0},i=n;s.onLifecycle(()=>((e,o,r,l)=>{let u;const h=()=>(async(t,e,n=t.localName.split("-").slice(1).join("-"))=>{const{lang:s,t9nLocale:o}=f(t),r=`${e}/${n}/t9n`,i=null===n?{}:await(async(t,e,n="")=>{const s=`${e}/${n}`,o=`${s}${t}.json`;return p[o]??(p[o]=b(t,s)),await p[o]})(o,r,"messages.");return{lang:s,t9nLocale:o,t9nStrings:i}})(e,t("./assets"),l).then(t=>{u?.lang===t.lang&&u.t9nLocale===t.t9nLocale&&u.t9nStrings===t.t9nStrings||(({t9nLocale:t,t9nStrings:e,lang:o})=>{const r={...e,_lang:o,_t9nLocale:t,_loading:!1};s.exports=r;const c=e.componentLabel;"string"==typeof c&&"label"in n&&null==n.label&&(n.label??=c),a(i.messageOverrides)})(t),u=t}).catch(console.error);return queueMicrotask(h),((t,e,n)=>(0,c(e).subscribe)(e=>{const s=e.some(e=>((t,e)=>{let n=t;for(;n;){if(n===e)return!0;if(!n.parentNode)return!1;n=n.parentNode instanceof ShadowRoot?n.parentNode.host:n.parentNode}return!1})(t,e.target));s&&n()}))(e,["lang"],h)})(n.el,0,0,e.name));const a=t=>{const e=s.exports,n=e._original??e,o=C(n,t);t&&(o._original=n),s.exports=o};return"messageOverrides"in i&&s.onUpdate(t=>{t.has("messageOverrides")&&a(i.messageOverrides)}),e.blocking?(s.setProvisionalExports(r,!1),s.ready):r}),C=(t,e)=>{if(!e)return t;const n={...t};return Object.entries(e).forEach(([e,s])=>{n[e]="object"==typeof s?C(t[e],s):s??t[e]}),n}},75572:(t,e,n)=>{n.d(e,{u:()=>r});var s=n(60178),o=n(34088);const r=(0,s.yr)(o.g)},83623:(t,e,n)=>{function s(t){return"l"===t?"m":"s"}async function o(t){await t.componentOnReady(),await t.updateComplete}n.d(e,{c:()=>o,g:()=>s}),n(84137)},84137:(t,e,n)=>{n.d(e,{l:()=>a});var s=n(34088);const o=new Set,r={trace:0,debug:1,info:2,warn:4,error:8,off:10};function i(t,...e){(function(t){return r[t]>=r[s.l]})(t)&&console[t].call(this,"%ccalcite","background: #007AC2; color: #fff; border-radius: 4px; padding: 2px 4px;",...e)}let c;const a={debug:t=>i("debug",t),info:t=>i("info",t),warn:t=>i("warn",t),error:t=>i("error",t),trace:t=>i("trace",t),deprecated:function(t,{component:e,name:n,suggested:s,removalVersion:r}){const a=`${t}:${"component"===t?"":e}${n}`;if(o.has(a))return;o.add(a);const l=Array.isArray(s);l&&!c&&(c=new Intl.ListFormat("en",{style:"long",type:"disjunction"})),i("warn",`[${n}] ${t} is deprecated and will be removed in ${"future"===r?"a future version":`v${r}`}.${s?` Use ${l?c.format(s.map(t=>`"${t}"`)):`"${s}"`} instead.`:""}`)}}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1882],{513:(t,n,e)=>{e.d(n,{KP:()=>i,X0:()=>c,fM:()=>u,mq:()=>o,zW:()=>h});var r=e(19419),s=e(15507);class i{constructor(t,n,e,r,s,i){this.cx=t,this.cy=n,this.radius=e,this.thetaStart=r,this.thetaEnd=s,this.isInvalid=i}}function a(t,n){const{cx:e,cy:r,radius:s}=t;return[e+s*Math.cos(n),r+s*Math.sin(n)]}function o(t,n){const{thetaStart:e,thetaEnd:r}=t;return a(t,e*(1-n)+r*n)}function u(t,n){const{cx:e,cy:r,thetaStart:i,thetaEnd:o}=t,[u,c]=n,h=(0,s.Pf)((0,s.yN)(i,o),Math.atan2(c-r,u-e)),l=a(t,h);return{t:(h-i)/(o-i),curvePoint:l,distance:Math.sqrt((0,s.kb)(n,l))}}function c(t,n){const{cx:e,cy:i,radius:o,thetaStart:u,thetaEnd:c}=n;(0,r.tK)(t,a(n,u)),(0,r.tK)(t,a(n,c));const h=(0,s.yN)(u,c),l=Math.PI/2;let f=0;for(const n of[[e+o,i],[e,i+o],[e-o,i],[e,i-o]])f=(0,s.Cp)(h,f),f>h.min&&f<h.max&&(0,r.tK)(t,n),f+=l;return t}function h(t){const{radius:n,thetaStart:e,thetaEnd:r}=t;return n*Math.abs(r-e)}},4305:(t,n,e)=>{e.d(n,{jK:()=>h,lM:()=>f,m_:()=>l,ty:()=>m});var r=e(34727),s=e(19419),i=e(15507);const a=[0,0];function o(t){const n=1-t,e=n*n,r=t*t;return[e*n,3*t*e,3*r*n,r*t]}function u(t,n,e,r,s){const[i,a,u,c]=o(s);return[t[0]*i+n[0]*a+e[0]*u+r[0]*c,t[1]*i+n[1]*a+e[1]*u+r[1]*c]}function c(t,n,e,r,s){const[i,a,u,c]=o(s);return t*i+n*a+e*u+r*c}function h(t,n,e){const r=t,[s,o,u]=n.b,c=(0,i.RS)([0,0],r,o,e),h=(0,i.RS)(a,o,u,e),l=(0,i.RS)([0,0],u,s,e),f=(0,i.RS)([0,0],c,h,e),p=(0,i.RS)([0,0],h,l,e);return[{b:[(0,i.RS)([],f,p,e),c,f]},{b:[[...s],p,l]}]}function l(t,n,e){const s=t,[a,o,c]=n.b,h=(0,i.R)(e,[.1,.5,.9],t=>{const n=1-t,[e,r]=u(s,o,c,a,t);return[e,r,3*n*n*(o[0]-s[0])+6*n*t*(c[0]-o[0])+3*t*t*(a[0]-c[0]),3*n*n*(o[1]-s[1])+6*n*t*(c[1]-o[1])+3*t*t*(a[1]-c[1]),6*n*(c[0]-2*o[0]+s[0])+6*t*(a[0]-2*c[0]+o[0]),6*n*(c[1]-2*o[1]+s[1])+6*t*(a[1]-2*c[1]+o[1])]}).map(t=>Math.min(1,Math.max(0,t)));h.push(0,1);let l=1/0;const f=h.map(t=>{const n=u(s,o,c,a,t),[r,i]=n,h=e[0]-r,f=e[1]-i,p=Math.sqrt(h*h+f*f);return l=Math.min(p,l),{t,curvePoint:n,distance:p}}),p=[];for(const t of f){const{t:n,distance:e}=t;(0,r.b6)(e,l)&&!p.some(({t})=>(0,r.Sp)(t,n))&&p.push(t)}return p}function f(t,n,e){const r=n,[i,a,o]=e.b;if((0,s.tK)(t,r),(0,s.tK)(t,i),(0,s.Rj)(t,a[0],a[1])&&(0,s.Rj)(t,o[0],o[1]))return t;for(const n of p(r[0],a[0],o[0],i[0]))n>0&&n<1&&(0,s.nw)(t,c(r[0],a[0],o[0],i[0],n));for(const n of p(r[1],a[1],o[1],i[1]))n>0&&n<1&&(0,s.IO)(t,c(r[1],a[1],o[1],i[1],n));return t}function p(t,n,e,r){const s=3*(3*(n-e)-t+r),i=6*(t-2*n+e),a=3*(n-t);if(0===s)return 0!==i?[-a/i]:[];const o=Math.sqrt(i*i-4*s*a);return[(-i+o)/(2*s),(-i-o)/(2*s)]}function m(t,n,e){let r=0,s=[n];for(let n=0;n<16;n++){let n=t;const a=[];for(const t of s)a.push(...h(n,t,.5)),n=t.b[0];s=a,n=t,r=0;let o=0;for(const t of s){const[e,s,a]=t.b,u=Math.sqrt((0,i.kb)(n,e));r+=(u+(Math.sqrt((0,i.kb)(n,s))+Math.sqrt((0,i.kb)(s,a))+Math.sqrt((0,i.kb)(a,e))))/2,o+=u,n=e}if(r-o<e)return r}return r}},6606:(t,n,e)=>{e.d(n,{Rg:()=>x,LJ:()=>P,z8:()=>v,B$:()=>b,Pj:()=>A,Yz:()=>I});var r=e(19419),s=e(4305),i=e(513),a=e(50954),o=e(52006),u=e(49663),c=e(46068);function h(t,n,e){if((0,o.Xq)(e))return t;if((0,o.n1)(e))return(0,s.lM)(t,n,e);if((0,o.aO)(e)){const s=(0,a.pM)(n,e);if(s.isInvalid){const[s,i]=e.c;return(0,r.tK)(t,n),(0,r.tK)(t,s),(0,r.tK)(t,i),t}return(0,i.X0)(t,s)}if((0,o.DA)(e)){const s=(0,u.i)(n,e);if(s.isInvalid){const[s,i]=e.a;return(0,r.tK)(t,n),(0,r.tK)(t,s),t}return(0,i.X0)(t,s)}return(0,c.DL)(t,n,e)}function l(t){return void 0!==t.xmin&&void 0!==t.ymin&&void 0!==t.xmax&&void 0!==t.ymax}function f(t){return void 0!==t.points}function p(t){return void 0!==t.x&&void 0!==t.y}function m(t){return void 0!==t.paths}function g(t){return void 0!==t.rings}function M(t){return function(n,e){return null==n?e:null==e?n:t(n,e)}}const y=M(Math.min),d=M(Math.max);function x(t,n){return m(n)?I(t,n.curvePaths??n.paths,!1,!1)??t:g(n)?I(t,n.curveRings??n.rings,!1,!1)??t:f(n)?A(t,n.points,!1,!1,!1,!1):l(n)?R(t,n):(p(n)&&(t[0]=n.x,t[1]=n.y,t[2]=n.x,t[3]=n.y),t)}function v(t){let n,e,s,i;for(t.reset(),n=s=1/0,e=i=-1/0;t.nextPath();){const r=b(t);n=Math.min(r[0],n),s=Math.min(r[1],s),e=Math.max(r[2],e),i=Math.max(r[3],i)}return(0,r.vt)([n,s,e,i])}function b(t){let n,e,s,i;for(n=s=1/0,e=i=-1/0;t.nextPoint();)n=Math.min(t.x,n),s=Math.min(t.y,s),e=Math.max(t.x,e),i=Math.max(t.y,i);return(0,r.vt)([n,s,e,i])}function P(t,n){return m(n)?I(t,n.curvePaths??n.paths,!0,!1)??t:g(n)?I(t,n.curveRings??n.rings,!0,!1)??t:f(n)?A(t,n.points,!0,!1,!0,!1):l(n)?R(t,n,0,0,!0,!1):(p(n)&&(t[0]=n.x,t[1]=n.y,t[2]=n.z,t[3]=n.x,t[4]=n.y,t[5]=n.z),t)}function I(t,n,e,s){const i=e?3:2;if(!n.length||!n[0].length)return null;let a,u,c,l,[f,p]=(0,o.yP)(n[0][0]),m=f,g=p;for(let t=0;t<n.length;t++){const M=n[t];for(let t=0;t<M.length;t++){const n=(0,o.yP)(M[t]),[x,v]=n;if(f=y(f,x),p=y(p,v),m=d(m,x),g=d(g,v),e&&n.length>2){const t=n[2];a=y(a,t),u=d(u,t)}if(s&&n.length>i){const t=n[i];c=y(a,t),l=d(u,t)}const b=M[t];if((0,o.Xq)(b)||t<1)continue;const P=(0,o.yP)(M[t-1]),I=(0,r.fA)(f,p,m,g);[f,p,m,g]=h(I,P,b)}}return e?s?(t[0]=f,t[1]=p,t[2]=a,t[3]=c,t[4]=m,t[5]=g,t[6]=u,t[7]=l,t.length=8,t):(t[0]=f,t[1]=p,t[2]=a,t[3]=m,t[4]=g,t[5]=u,t.length=6,t):s?(t[0]=f,t[1]=p,t[2]=c,t[3]=m,t[4]=g,t[5]=l,t.length=6,t):(t[0]=f,t[1]=p,t[2]=m,t[3]=g,t.length=4,t)}function R(t,n,e,r,s,i){const a=n.xmin,o=n.xmax,u=n.ymin,c=n.ymax;let h=n.zmin,l=n.zmax,f=n.mmin,p=n.mmax;return s?(h=h||0,l=l||0,i?(f=f||0,p=p||0,t[0]=a,t[1]=u,t[2]=h,t[3]=f,t[4]=o,t[5]=c,t[6]=l,t[7]=p,t):(t[0]=a,t[1]=u,t[2]=h,t[3]=o,t[4]=c,t[5]=l,t)):i?(f=f||0,p=p||0,t[0]=a,t[1]=u,t[2]=f,t[3]=o,t[4]=c,t[5]=p,t):(t[0]=a,t[1]=u,t[2]=o,t[3]=c,t)}function A(t,n,e,r,s,i){const a=e?3:2,o=r&&i,u=e&&s;if(!n.length||!n[0].length)return null;let c,h,l,f,[p,m]=n[0],[g,M]=n[0];for(let t=0;t<n.length;t++){const e=n[t],[r,s]=e;if(p=y(p,r),m=y(m,s),g=d(g,r),M=d(M,s),u&&e.length>2){const t=e[2];c=y(c,t),h=d(h,t)}if(o&&e.length>a){const t=e[a];l=y(c,t),f=d(h,t)}}return s?(c=c||0,h=h||0,i?(l=l||0,f=f||0,t[0]=p,t[1]=m,t[2]=c,t[3]=l,t[4]=g,t[5]=M,t[6]=h,t[7]=f,t):(t[0]=p,t[1]=m,t[2]=c,t[3]=g,t[4]=M,t[5]=h,t)):i?(l=l||0,f=f||0,t[0]=p,t[1]=m,t[2]=l,t[3]=g,t[4]=M,t[5]=f,t):(t[0]=p,t[1]=m,t[2]=g,t[3]=M,t)}},12359:(t,n,e)=>{e.d(n,{IK:()=>h,TP:()=>f,Ve:()=>o,Z4:()=>i,l8:()=>a,w2:()=>c});var r=e(51118),s=e(95108);function i(t){return t?t.hasZ?[t.xmax-t.xmin/2,t.ymax-t.ymin/2,t.zmax-t.zmin/2]:[t.xmax-t.xmin/2,t.ymax-t.ymin/2]:null}function a(t){return function(t,n){if(!t?.length)return null;const e=[],r=[],i=n?[1/0,-1/0,1/0,-1/0,1/0,-1/0]:[1/0,-1/0,1/0,-1/0];for(let e=0,s=t.length;e<s;e++){const s=u(t[e],n,i);s&&r.push(s)}if(r.sort((t,e)=>{let r=t[2]-e[2];return 0===r&&n&&(r=t[4]-e[4]),r}),r.length&&(e[0]=r[0][0],e[1]=r[0][1],n&&(e[2]=r[0][3]),(e[0]<i[0]||e[0]>i[1]||e[1]<i[2]||e[1]>i[3]||n&&(e[2]<i[4]||e[2]>i[5]))&&(e.length=0)),!e.length){const r=t[0]&&t[0].length?function(t,n){const e=n?[0,0,0]:[0,0],r=n?[0,0,0]:[0,0];let i=0,a=0,o=0,u=0;for(let c=0,h=t.length;c<h-1;c++){const h=t[c],l=t[c+1];if(h&&l){e[0]=h[0],e[1]=h[1],r[0]=l[0],r[1]=l[1],n&&h.length>2&&l.length>2&&(e[2]=h[2],r[2]=l[2]);const t=(0,s.R3)(e,r);if(t){i+=t;const e=(0,s.t9)(h,l);a+=t*e[0],o+=t*e[1],n&&e.length>2&&(u+=t*e[2])}}}return i>0?n?[a/i,o/i,u/i]:[a/i,o/i]:t.length?t[0]:null}(t[0],n):null;if(!r)return null;e[0]=r[0],e[1]=r[1],n&&r.length>2&&(e[2]=r[2])}return e}(t.rings,t.hasZ??!1)}function o(t){const n=a(t);if(!n)return null;const{hasZ:e,spatialReference:r}=t,[s,i,o]=n;return isNaN(s)||isNaN(i)||e&&isNaN(o)?null:{x:s,y:i,z:e?o:void 0,spatialReference:r}}function u(t,n,e){let r=0,s=0,i=0,a=0,o=0;const u=t.length?t[0][0]:0,c=t.length?t[0][1]:0,h=t.length&&n?t[0][2]:0;for(let l=0;l<t.length;l++){const f=t[l],p=t[(l+1)%t.length],[m,g,M]=f,y=m-u,d=g-c,[x,v,b]=p,P=x-u,I=v-c,R=y*I-P*d;if(a+=R,r+=(y+P)*R,s+=(d+I)*R,n&&f.length>2&&p.length>2){const t=M-h,n=b-h,e=y*n-P*t;i+=(t+n)*e,o+=e}m<e[0]&&(e[0]=m),m>e[1]&&(e[1]=m),g<e[2]&&(e[2]=g),g>e[3]&&(e[3]=g),n&&(M<e[4]&&(e[4]=M),M>e[5]&&(e[5]=M))}if(a>0&&(a*=-1),o>0&&(o*=-1),!a)return null;a*=.5,o*=.5;const l=[r/(6*a)+u,s/(6*a)+c,a];return n&&(e[4]===e[5]||0===o?(l[3]=(e[4]+e[5])/2,l[4]=0):(l[3]=i/(6*o)+h,l[4]=o)),l}function c(t,n){let e=0,r=0,s=0;t.nextPoint();const i=t.pathSize?t.x:0,a=t.pathSize?t.y:0;for(let o=0;o<t.pathSize;o++){t.seekInPath(o);const u=[t.x,t.y];t.seekInPath((o+1)%t.pathSize);const c=[t.x,t.y],[h,l]=u,f=h-i,p=l-a,[m,g]=c,M=m-i,y=g-a,d=f*y-M*p;s+=d,e+=(f+M)*d,r+=(p+y)*d,h<n[0]&&(n[0]=h),h>n[1]&&(n[1]=h),l<n[2]&&(n[2]=l),l>n[3]&&(n[3]=l)}return s>0&&(s*=-1),s?(s*=.5,[e/(6*s)+i,r/(6*s)+a,s]):null}function h(t){const{hasZ:n,totalSize:e}=t;if(0===e)return null;const i=[],a=[],o=n?[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY]:[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY];for(t.reset();t.nextPath();){const n=u((0,r.A)(t),t.hasZ,o);n&&a.push(n)}if(a.sort((t,e)=>{let r=t[2]-e[2];return 0===r&&n&&(r=t[4]-e[4]),r}),a.length&&(i[0]=a[0][0],i[1]=a[0][1],n&&(i[2]=a[0][3]),(i[0]<o[0]||i[0]>o[1]||i[1]<o[2]||i[1]>o[3]||n&&(i[2]<o[4]||i[2]>o[5]))&&(i.length=0)),!i.length){t.reset(),t.nextPath();const e=t.pathSize?function(t){const{hasZ:n}=t,e=n?[0,0,0]:[0,0],r=n?[0,0,0]:[0,0];let i=0,a=0,o=0,u=0;if(t.nextPoint()){let c=t.x,h=t.y,l=t.z;for(;t.nextPoint();){const f=t.x,p=t.y,m=t.z;e[0]=c,e[1]=h,r[0]=f,r[1]=p,n&&(e[2]=l,r[2]=m);const g=(0,s.R3)(e,r);if(g){i+=g;const t=(0,s.t9)(e,r);a+=g*t[0],o+=g*t[1],n&&t.length>2&&(u+=g*t[2])}c=f,h=p,l=m}}return i>0?n?[a/i,o/i,u/i]:[a/i,o/i]:t.pathSize?(t.seekPathStart(),t.nextPoint(),[t.x,t.y]):null}(t):null;if(!e)return null;i[0]=e[0],i[1]=e[1],n&&e.length>2&&(i[2]=e[2])}return i}const l=1e-6;function f(t){let n=0;for(t.reset();t.nextPath();)n+=t.getCurrentRingArea();if(n<l){const n=h(t);return n?[n[0],n[1]]:null}const e=[0,0];if(t.reset(),!t.nextPath()||!t.nextPoint())return null;const r=[t.x,t.y];for(t.reset();t.nextPath();)m(e,r,t);return e[0]*=1/n,e[1]*=1/n,e[0]+=r[0],e[1]+=r[1],e}const p=1/3;function m(t,n,e){if(!t||!e||e.pathSize<3)return null;e.nextPoint();const r=e.x,s=e.y;e.nextPoint();let i,a=e.x-r,o=e.y-s,u=0,c=0;for(;e.nextPoint();)u=e.x-r,c=e.y-s,i=.5*p*(u*o-c*a),t[0]+=i*(a+u),t[1]+=i*(o+c),a=u,o=c;const h=e.getCurrentRingArea(),l=[r,s];return l[0]-=n[0],l[1]-=n[1],l[0]*=h,l[1]*=h,t[0]+=l[0],t[1]+=l[1],t}},15507:(t,n,e)=>{e.d(n,{Cp:()=>m,Gz:()=>p,M_:()=>o,Pf:()=>g,R:()=>M,RS:()=>i,kb:()=>a,t7:()=>c,yN:()=>f});var r=e(34727),s=e(37585);function i(t,n,e,r){return t[0]=n[0]*(1-r)+e[0]*r,t[1]=n[1]*(1-r)+e[1]*r,t}function a(t,n){return(0,s.hG)(t,n)}function o(t,n,e,r,s){const[i,a]=n,[o,u]=e,[c,h]=r,[l,f]=s,p=(i-o)*(h-f)-(a-u)*(c-l);if(0===p)return null;const m=(i*u-a*o)*(c-l)-(i-o)*(c*f-h*l),g=(i*u-a*o)*(h-f)-(a-u)*(c*f-h*l);return t[0]=m/p,t[1]=g/p,t}const u=2*Math.PI;function c(t,n){const e=Math.atan2(t,n);return e<0?e+u:e}function h(t){return Math.abs(t)%u}function l(t){const n=h(t);return n<Math.PI?n:u-n}function f(t,n){return{min:Math.min(t,n),max:Math.max(t,n)}}function p(t,n,e,s){if((0,r.Sp)(h(t-n),0))return e?[t,t]:[t,s?t-u:t+u];const[i,a]=s?[t-u,t]:[t,t+u];return[t,m({min:i,max:a},n)]}function m({min:t,max:n},e){let r;return r=n-e,r>=u?(r-=r%u,e+r):(r=e-t,r>=u?(r-=r%u,e-r):e)}function g(t,n){const e=m(t,n);return e>t.min&&e<t.max?e:l(e-t.min)<l(e-t.max)?t.min:t.max}function M(t,n,e,r=10){return n.map(n=>{let s=n;for(let n=0;n<r;n++){const[n,r,i,a,o,u]=e(s),c=t[0]-n,h=t[1]-r,l=-i,f=-a;s+=-(2*c*l+2*h*f)/(2*l*l+2*c*-o+2*f*f+2*h*-u||1e-6)}return s})}},29242:(t,n,e)=>{function r(){return[1,0,0,0,1,0,0,0,1]}function s(t,n,e,r,s,i,a,o,u){return[t,n,e,r,s,i,a,o,u]}e.d(n,{fA:()=>s,vt:()=>r,zK:()=>i});const i=[1,0,0,0,1,0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:i,clone:function(t){return[t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8]]},create:r,fromValues:s},Symbol.toStringTag,{value:"Module"}))},34304:(t,n,e)=>{e.d(n,{DF:()=>u,FD:()=>s,Ov:()=>i,ct:()=>c});let r=1e-6;function s(){return r}const i=Math.random,a=Math.PI/180,o=180/Math.PI;function u(t){return t*a}function c(t){return t*o}Object.freeze(Object.defineProperty({__proto__:null,RANDOM:i,equals:function(t,n){return Math.abs(t-n)<=r*Math.max(1,Math.abs(t),Math.abs(n))},getEpsilon:s,setEpsilon:function(t){r=t},toDegree:c,toRadian:u},Symbol.toStringTag,{value:"Module"}))},37585:(t,n,e)=>{e.d(n,{C:()=>s,Cc:()=>M,Io:()=>l,S8:()=>g,WQ:()=>a,aI:()=>v,e$:()=>d,hG:()=>f,hZ:()=>i,hs:()=>h,jb:()=>P,l0:()=>y,t2:()=>x});var r=e(34304);function s(t,n){return t[0]=n[0],t[1]=n[1],t}function i(t,n,e){return t[0]=n,t[1]=e,t}function a(t,n,e){return t[0]=n[0]+e[0],t[1]=n[1]+e[1],t}function o(t,n,e){return t[0]=n[0]-e[0],t[1]=n[1]-e[1],t}function u(t,n,e){return t[0]=n[0]*e[0],t[1]=n[1]*e[1],t}function c(t,n,e){return t[0]=n[0]/e[0],t[1]=n[1]/e[1],t}function h(t,n,e){return t[0]=n[0]*e,t[1]=n[1]*e,t}function l(t,n){const e=n[0]-t[0],r=n[1]-t[1];return Math.sqrt(e*e+r*r)}function f(t,n){const e=n[0]-t[0],r=n[1]-t[1];return e*e+r*r}function p(t){const n=t[0],e=t[1];return Math.sqrt(n*n+e*e)}function m(t){const n=t[0],e=t[1];return n*n+e*e}function g(t,n){const e=n[0],r=n[1];let s=e*e+r*r;return s>0&&(s=1/Math.sqrt(s),t[0]=n[0]*s,t[1]=n[1]*s),t}function M(t,n,e,r){const s=n[0],i=n[1];return t[0]=s+r*(e[0]-s),t[1]=i+r*(e[1]-i),t}function y(t,n,e){const r=n[0],s=n[1];return t[0]=e[0]*r+e[2]*s+e[4],t[1]=e[1]*r+e[3]*s+e[5],t}function d(t,n,e,r){const s=n[0]-e[0],i=n[1]-e[1],a=Math.sin(r),o=Math.cos(r);return t[0]=s*o-i*a+e[0],t[1]=s*a+i*o+e[1],t}function x(t,n){return t[0]===n[0]&&t[1]===n[1]}function v(t,n){const e=t[0],s=t[1],i=n[0],a=n[1],o=(0,r.FD)();return Math.abs(e-i)<=o*Math.max(1,Math.abs(e),Math.abs(i))&&Math.abs(s-a)<=o*Math.max(1,Math.abs(s),Math.abs(a))}const b=p,P=o,I=u,R=c,A=l,w=f,N=m;Object.freeze(Object.defineProperty({__proto__:null,add:a,angle:function(t,n){const e=t[0],r=t[1],s=n[0],i=n[1];let a=e*e+r*r;a>0&&(a=1/Math.sqrt(a));let o=s*s+i*i;o>0&&(o=1/Math.sqrt(o));const u=(e*s+r*i)*a*o;return u>1?0:u<-1?Math.PI:Math.acos(u)},ceil:function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t},copy:s,cross:function(t,n,e){const r=n[0]*e[1]-n[1]*e[0];return t[0]=t[1]=0,t[2]=r,t},dist:A,distance:l,div:R,divide:c,dot:function(t,n){return t[0]*n[0]+t[1]*n[1]},equals:v,exactEquals:x,floor:function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t},inverse:function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t},len:b,length:p,lerp:M,max:function(t,n,e){return t[0]=Math.max(n[0],e[0]),t[1]=Math.max(n[1],e[1]),t},min:function(t,n,e){return t[0]=Math.min(n[0],e[0]),t[1]=Math.min(n[1],e[1]),t},mul:I,multiply:u,negate:function(t,n){return t[0]=-n[0],t[1]=-n[1],t},normalize:g,projectAndScale:function(t,n,e,r,s){let i=n[0]-e[0],a=n[1]-e[1];const o=(r[0]*i+r[1]*a)*(s-1);return i=r[0]*o,a=r[1]*o,t[0]=n[0]+i,t[1]=n[1]+a,t},random:function(t,n=1){const e=2*(0,r.Ov)()*Math.PI;return t[0]=Math.cos(e)*n,t[1]=Math.sin(e)*n,t},rotate:d,round:function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t},scale:h,scaleAndAdd:function(t,n,e,r){return t[0]=n[0]+e[0]*r,t[1]=n[1]+e[1]*r,t},set:i,sqrDist:w,sqrLen:N,squaredDistance:f,squaredLength:m,str:function(t){return"vec2("+t[0]+", "+t[1]+")"},sub:P,subtract:o,transformMat2:function(t,n,e){const r=n[0],s=n[1];return t[0]=e[0]*r+e[2]*s,t[1]=e[1]*r+e[3]*s,t},transformMat2d:y,transformMat3:function(t,n,e){const r=n[0],s=n[1];return t[0]=e[0]*r+e[3]*s+e[6],t[1]=e[1]*r+e[4]*s+e[7],t},transformMat4:function(t,n,e){const r=n[0],s=n[1];return t[0]=e[0]*r+e[4]*s+e[12],t[1]=e[1]*r+e[5]*s+e[13],t}},Symbol.toStringTag,{value:"Module"}))},39829:(t,n,e)=>{e.d(n,{A:()=>R});var r,s=e(31635),i=e(4576),a=e(51447),o=e(4718),u=e(53966),c=e(10107),h=(e(44208),e(40608)),l=e(43937),f=e(5443),p=e(91075),m=e(86738),g=e(16930),M=e(12359),y=e(94078),d=e(95108),x=e(90634),v=e(12176),b=e(28735),P=e(56993);function I(t){return!Array.isArray(t[0])}let R=r=class extends p.A{static fromExtent(t){const n=t.clone().normalize(),{spatialReference:e}=t;let s=!1,i=!1;for(const t of n)t.hasZ&&(s=!0),t.hasM&&(i=!0);const a={rings:n.map(t=>{const n=[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]];if(s&&t.hasZ){const e=t.zmin+.5*(t.zmax-t.zmin);for(let t=0;t<n.length;t++)n[t].push(e)}if(i&&t.hasM){const e=t.mmin+.5*(t.mmax-t.mmin);for(let t=0;t<n.length;t++)n[t].push(e)}return n}),spatialReference:e};return s&&(a.hasZ=!0),i&&(a.hasM=!0),new r(a)}constructor(t){super(function(t){if(!t)return;let{rings:n,hasM:e,hasZ:r,spatialReference:s}=t;switch(n??=[],function(t){return"number"==typeof t[0]?.[0]}(n)&&(n=[n]),n[0]?.[0]?.length){case 4:r??=!0,e??=!0;break;case 3:r??=!0!==e,e??=!r;break;default:r??=!1,e??=!1}return s??=g.A.WGS84,{...t,hasM:e,hasZ:r,rings:n,spatialReference:s}}(t)),this.curveRings=void 0,this.rings=[],this.type="polygon"}get cache(){return this.commitProperty("curveRings"),this.commitProperty("hasM"),this.commitProperty("hasZ"),this.commitProperty("rings"),this.commitProperty("spatialReference"),{}}get centroid(){(0,a.Lx)(u.A.getLogger(this),"centroid",{replacement:"Please use centroidOperator.execute() instead.",version:"4.34",warnOnce:!0});const t=(0,M.Ve)(this);return t?m.A.fromJSON(t):null}writeCurveRings(t,n){n.curveRings=(0,o.o8)(t)}get extent(){const t=(0,x.v)(this),{spatialReference:n}=this;return t?new f.A({...t,spatialReference:n}):null}get isSelfIntersecting(){return(0,a.Lx)(u.A.getLogger(this),"isSelfIntersecting",{replacement:"Please use simplifyOperator.isSimple() instead.",version:"4.33",warnOnce:!0}),(0,v.A3)(this.rings)}writeRings(t,n){n.rings=(0,o.o8)(this.rings)}addRing(t){if(!t)return;const n=this.rings,e=n.length;if(I(t)){const r=[];for(let n=0,e=t.length;n<e;n++)r[n]=t[n].toArray();n[e]=r}else n[e]=t.slice();return this.notifyChange("rings"),this}clone(){const t=new r;return t.spatialReference=this.spatialReference,t.rings=(0,o.o8)(this.rings),t.curveRings=(0,o.o8)(this.curveRings),t.hasZ=this.hasZ,t.hasM=this.hasM,t}equals(t){if(this===t)return!0;if(null==t)return!1;const n=this.spatialReference,e=t.spatialReference;if(null!=n!=(null!=e))return!1;if(null!=n&&null!=e&&!n.equals(e))return!1;if(this.rings.length!==t.rings.length)return!1;const r=([t,n,e,r],[s,i,a,o])=>t===s&&n===i&&(null==e&&null==a||e===a)&&(null==r&&null==o||r===o);for(let n=0;n<this.rings.length;n++){const e=this.rings[n],s=t.rings[n];if(!(0,i.aI)(e,s,r))return!1}return!0}contains(t){if(!t)return!1;const n=(0,b.Cv)(t,this.spatialReference);return(0,y.m3)(this,null!=n?n:t)}isClockwise(t){const n=I(t)?t.map(t=>this.hasZ?this.hasM?[t.x,t.y,t.z,t.m]:[t.x,t.y,t.z]:[t.x,t.y]):t;return(0,d.$3)(n)}getPoint(t,n){if(!this._validateInputs(t,n))return null;const e=this.rings[t][n],r=this.hasZ,s=this.hasM;return r&&!s?new m.A(e[0],e[1],e[2],void 0,this.spatialReference):s&&!r?new m.A(e[0],e[1],void 0,e[2],this.spatialReference):r&&s?new m.A(e[0],e[1],e[2],e[3],this.spatialReference):new m.A(e[0],e[1],this.spatialReference)}insertPoint(t,n,e){return this._validateInputs(t,n,!0)?((0,P.h)(this,e),Array.isArray(e)||(e=e.toArray()),this.rings[t].splice(n,0,e),this.notifyChange("rings"),this):this}removePoint(t,n){if(!this._validateInputs(t,n))return null;const e=new m.A(this.rings[t].splice(n,1)[0],this.spatialReference);return this.notifyChange("rings"),e}removeRing(t){if(!this._validateInputs(t,null))return null;const n=this.rings.splice(t,1)[0],e=this.spatialReference,r=n.map(t=>new m.A(t,e));return this.notifyChange("rings"),r}setPoint(t,n,e){return this._validateInputs(t,n)?((0,P.h)(this,e),Array.isArray(e)||(e=e.toArray()),this.rings[t][n]=e,this.notifyChange("rings"),this):this}_validateInputs(t,n,e=!1){if(null==t||t<0||t>=this.rings.length)return!1;if(null!=n){const r=this.rings[t];if(e&&(n<0||n>r.length))return!1;if(!e&&(n<0||n>=r.length))return!1}return!0}toJSON(t){return this.write({},t)}};(0,s.Cg)([(0,c.MZ)({readOnly:!0})],R.prototype,"cache",null),(0,s.Cg)([(0,c.MZ)({readOnly:!0})],R.prototype,"centroid",null),(0,s.Cg)([(0,c.MZ)({json:{write:!0,origins:{"portal-item":{write:!1},"web-map":{write:!1},"web-scene":{write:!1}}}})],R.prototype,"curveRings",void 0),(0,s.Cg)([(0,l.K)("curveRings")],R.prototype,"writeCurveRings",null),(0,s.Cg)([(0,c.MZ)({readOnly:!0})],R.prototype,"extent",null),(0,s.Cg)([(0,c.MZ)({readOnly:!0})],R.prototype,"isSelfIntersecting",null),(0,s.Cg)([(0,c.MZ)({type:[[[Number]]],json:{write:{isRequired:!0}}})],R.prototype,"rings",void 0),(0,s.Cg)([(0,l.K)("rings")],R.prototype,"writeRings",null),R=r=(0,s.Cg)([(0,h.$)("esri.geometry.Polygon")],R),R.prototype.toJSON.isDefaultToJSON=!0},46068:(t,n,e)=>{e.d(n,{DL:()=>p,ED:()=>l,SW:()=>u,pb:()=>f,xm:()=>m}),e(77690);var r=e(29242),s=(e(37585),e(19419)),i=e(52006),a=e(15507);class o{constructor(t,n,e,r,s,i,a,o,u){this.cx=t,this.cy=n,this.a=e,this.b=r,this.cosR=s,this.sinR=i,this.u1=a,this.u2=o,this.isInvalid=u}}function u(t,n){const[e,r,s,i,u,c,h]=n.a,[l,f]=t,[p,m]=e,[g,M]=r,y=c*h,d=Math.cos(u),x=Math.sin(u),[v,b]=(0,a.Gz)((0,a.t7)(1/y*(f-M)*d-1/y*(l-g)*x,1/c*(f-M)*x+1/c*(l-g)*d),Math.atan2(1/y*(m-M)*d-1/y*(p-g)*x,1/c*(m-M)*x+1/c*(p-g)*d),s,i);return new o(g,M,c,y,d,x,v,b,0===c||0===y)}function c(t,n){const{a:e,b:r,cosR:s,sinR:i,cx:a,cy:o}=t,u=Math.cos(n),c=Math.sin(n);return[e*u*s-r*c*i+a,e*u*i+r*c*s+o]}function h(t,n){const{u1:e,u2:r}=t;return c(t,e*(1-n)+r*n)}function l(t,n,e){if(e<0||e>1)return[];if(0===e||1===e)return[(0,i.tk)(n)];const[r,[s,a],o,u,c,l,f]=n.a,{u1:p,u2:m}=t,g=p*(1-e)+m*e;return[{a:[[...h(t,e)],[s,a],Math.abs(g-p)<Math.PI?1:0,u,c,l,f]},{a:[[...r],[s,a],Math.abs(m-g)<Math.PI?1:0,u,c,l,f]}]}function f(t,n){const{a:e,b:r,cosR:s,sinR:i,u1:o,u2:u}=t,h=Math.PI/6,l=(0,a.R)(n,[1*h,2*h,4*h,5*h,7*h,8*h,10*h,11*h],n=>{const a=Math.cos(n),o=Math.sin(n),[u,h]=c(t,n);return[u,h,-e*s*o-r*i*a,-e*i*o+r*s*a,-e*s*a+r*i*o,-e*i*a-r*s*o]}),f=(0,a.yN)(o,u),p=new Set(l.map(t=>(0,a.Cp)(f,t)).filter(t=>t>f.min&&t<f.max));p.add(o),p.add(u);let m,g,M=1/0;for(const e of p){const r=c(t,e),[s,i]=r,a=n[0]-s,h=n[1]-i,l=a*a+h*h;l<M&&(m=(e-o)/(u-o),g=r,M=l)}return{t:m,curvePoint:g,distance:Math.sqrt(M)}}function p(t,n,e){const r=u(n,e),{a:i,b:o,u1:h,u2:l,cosR:f,sinR:p,isInvalid:m}=r,g=e.a[0];if((0,s.tK)(t,n),(0,s.tK)(t,g),m)return t;const M=Math.atan2(-o*p,i*f),y=M+Math.PI,d=Math.atan2(o*f,i*p),x=d+Math.PI,v=(0,a.yN)(h,l);for(const n of[M,y,d,x].map(t=>(0,a.Cp)(v,t)))n>v.min&&n<v.max&&(0,s.tK)(t,c(r,n));return t}function m(t,n,e){const[r,s,i,o,l,f,p]=n.a,m=u(t,n),{u1:g,u2:M,isInvalid:y}=m,d=M-g;if(y)return Math.sqrt((0,a.kb)(t,r));const x=[0,0];let v=0,b=[h(m,0),h(m,.25),h(m,.5),h(m,.75),h(m,1)];for(let t=0;t<14;t++){const t=b.length-1,n=d/(2*t),r=[];for(let e=0;e<t;e++)r.push(b[e]),r.push(c(m,g+(2*e+1)*n));r.push(b[b.length-1]),b=r,v=0;let i=0;for(let t=1;t<b.length;t++){const n=b[t-1],e=b[t];if(v+=Math.sqrt((0,a.kb)(n,e)),t>1){const r=b[t-2],o=(0,a.M_)(x,r,n,s,e);i+=o?Math.sqrt((0,a.kb)(n,o)):Math.abs(e[0]-n[0])+Math.abs(e[1]-n[1])}else i+=v}if(i-v<e)return v}return v}(0,r.vt)(),(0,r.vt)(),(0,r.vt)(),(0,r.vt)()},48526:(t,n,e)=>{e.d(n,{A:()=>g});var r,s=e(31635),i=e(4718),a=e(10107),o=(e(44208),e(53966),e(40608)),u=e(43937),c=e(5443),h=e(91075),l=e(86738),f=e(16930),p=e(90634),m=e(56993);let g=r=class extends h.A{constructor(t){super(function(t){if(!t)return;let{points:n,hasM:e,hasZ:r,spatialReference:s}=t;switch(n??=[],n?.at(0)?.length){case 4:r??=!0,e??=!0;break;case 3:r??=!0!==e,e??=!r;break;default:r??=!1,e??=!1}return s??=f.A.WGS84,{...t,hasM:e,hasZ:r,points:n,spatialReference:s}}(t)),this.points=[],this.type="multipoint"}get cache(){return this.commitProperty("points"),this.commitProperty("hasZ"),this.commitProperty("hasM"),this.commitProperty("spatialReference"),{}}get extent(){const t=(0,p.ge)(this);return t?new c.A({...t,spatialReference:this.spatialReference}):null}writePoints(t,n){n.points=(0,i.o8)(this.points)}clone(){const{points:t,spatialReference:n,hasM:e,hasZ:s}=this;return new r({points:(0,i.o8)(t),spatialReference:n.clone(),hasM:e,hasZ:s})}addPoint(t){return(0,m.h)(this,t),Array.isArray(t)?this.points.push(t):this.points.push(t.toArray()),this.notifyChange("points"),this}getPoint(t){if(!this._validateInputs(t))return null;const n=this.points[t],e={x:n[0],y:n[1],spatialReference:this.spatialReference};let r=2;return this.hasZ&&(e.z=n[2],r=3),this.hasM&&(e.m=n[r]),new l.A(e)}removePoint(t){if(!this._validateInputs(t))return null;const n=new l.A(this.points.splice(t,1)[0],this.spatialReference);return this.notifyChange("points"),n}setPoint(t,n){return this._validateInputs(t)?((0,m.h)(this,n),Array.isArray(n)||(n=n.toArray()),this.points[t]=n,this.notifyChange("points"),this):this}toJSON(t){return this.write({},t)}_validateInputs(t){return null!=t&&t>=0&&t<this.points.length}};(0,s.Cg)([(0,a.MZ)({readOnly:!0})],g.prototype,"cache",null),(0,s.Cg)([(0,a.MZ)({readOnly:!0})],g.prototype,"extent",null),(0,s.Cg)([(0,a.MZ)({type:[[Number]],json:{write:{isRequired:!0}}})],g.prototype,"points",void 0),(0,s.Cg)([(0,u.K)("points")],g.prototype,"writePoints",null),g=r=(0,s.Cg)([(0,o.$)("esri.geometry.Multipoint")],g),g.prototype.toJSON.isDefaultToJSON=!0},49663:(t,n,e)=>{e.d(n,{i:()=>a,x:()=>o});var r=e(34727),s=e(513),i=e(15507);function a(t,n){const[e,a,o,u]=n.a,[c,h]=t,[l,f]=e,[p,m]=a,g=c-p,M=h-m,y=Math.sqrt(g*g+M*M),d=l-p,x=f-m,v=Math.sqrt(d*d+x*x),b=0===y||0===v||!(0,r.b6)(y,v),P=y,[I,R]=(0,i.Gz)((0,i.t7)(h-m,c-p),Math.atan2(f-m,l-p),o,u);return new s.KP(p,m,P,I,R,b)}function o(t,n,e){const{cx:r,cy:i,thetaStart:a,thetaEnd:o}=t,[u,c,h,l]=n.a,f=a*(1-e)+o*e;return[{a:[(0,s.mq)(t,e),[r,i],Math.abs(f-a)<Math.PI?1:0,l]},{a:[[...u],[r,i],Math.abs(o-f)<Math.PI?1:0,l]}]}},50954:(t,n,e)=>{e.d(n,{GX:()=>h,pM:()=>c});var r=e(77690),s=e(29242),i=e(513),a=e(15507);const o=(0,s.vt)();function u(t,n,e){const[s,i]=t,[a,u]=n,[c,h]=e,l=s*s+i*i,f=a*a+u*u,p=c*c+h*h;(0,r.hZ)(o,s,a,c,i,u,h,1,1,1);const m=(0,r.a4)(o);if(0===m)return null;(0,r.hZ)(o,l,f,p,i,u,h,1,1,1);const g=(0,r.a4)(o);return(0,r.hZ)(o,l,f,p,s,a,c,1,1,1),[g/m*.5,(0,r.a4)(o)/m*-.5]}function c(t,n){const[e,r]=n.c,s=u(t,r,e),o=null==s,c=s??(0,a.RS)([],t,e,.5),[h,l]=t,[f,p]=r,[m,g]=e,[M,y]=c,d=h-M,x=l-y,v=Math.sqrt(d*d+x*x),b=(0,a.t7)(l-y,h-M),P=(0,a.t7)(p-y,f-M);let I=(0,a.t7)(g-y,m-M);return(P-b)*(I-P)<0&&(I+=2*Math.sign(b-I)*Math.PI),new i.KP(M,y,v,b,I,o)}function h(t,n,e){const r=(0,i.mq)(t,e/2),s=(0,i.mq)(t,e),a=(0,i.mq)(t,(e+1)/2);return[{c:[s,r]},{c:[[...n.c[0]],a]}]}},51118:(t,n,e)=>{function r(t){const n=[];for(t.reset();t.nextPath();){const e=[];for(;t.nextPoint();)e.push([t.x,t.y]);n.push(e)}return t.reset(),n}function s(t){const n=[];for(;t.nextPoint();)n.push([t.x,t.y]);return t.seekPathStart(),n}e.d(n,{A:()=>s,x:()=>r})},52006:(t,n,e)=>{function r(t){return"b"in t}function s(t){return"c"in t}function i(t){return Array.isArray(t)}function a(t){return"a"in t&&4===t.a.length}function o(t){return i(t)?t:r(t)?t.b[0]:s(t)?t.c[0]:t.a[0]}function u(t){if(r(t)){const[n,e,r]=t.b;return{b:[[...n],[...e],[...r]]}}if(s(t)){const[n,e]=t.c;return{c:[[...n],[...e]]}}if(i(t))return[...t];if(a(t)){const[n,e,r,s]=t.a;return{a:[[...n],[...e],r,s]}}if(function(t){return"a"in t&&7===t.a.length}(t)){const[n,e,r,s,i,a,o]=t.a;return{a:[[...n],[...e],r,s,i,a,o]}}return t}e.d(n,{DA:()=>a,Xq:()=>i,aO:()=>s,n1:()=>r,tk:()=>u,yP:()=>o})},56993:(t,n,e)=>{function r(t,n,e=!1){let{hasM:r,hasZ:s}=t;Array.isArray(n)?4!==n.length||r||s?3===n.length&&e&&!r?(s=!0,r=!1):3===n.length&&r&&s&&(r=!1,s=!1):(r=!0,s=!0):(s=!s&&n.hasZ&&(!r||n.hasM),r=!r&&n.hasM&&(!s||n.hasZ)),t.hasZ=s,t.hasM=r}e.d(n,{h:()=>r})},77690:(t,n,e)=>{e.d(n,{B8:()=>o,Ge:()=>p,I0:()=>f,KC:()=>u,a4:()=>c,hZ:()=>i,hs:()=>l,lw:()=>h,mg:()=>a,z0:()=>s});var r=e(34304);function s(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[4],t[4]=n[5],t[5]=n[6],t[6]=n[8],t[7]=n[9],t[8]=n[10],t}function i(t,n,e,r,s,i,a,o,u,c){return t[0]=n,t[1]=e,t[2]=r,t[3]=s,t[4]=i,t[5]=a,t[6]=o,t[7]=u,t[8]=c,t}function a(t,n){if(t===n){const e=n[1],r=n[2],s=n[5];t[1]=n[3],t[2]=n[6],t[3]=e,t[5]=n[7],t[6]=r,t[7]=s}else t[0]=n[0],t[1]=n[3],t[2]=n[6],t[3]=n[1],t[4]=n[4],t[5]=n[7],t[6]=n[2],t[7]=n[5],t[8]=n[8];return t}function o(t,n){const e=n[0],r=n[1],s=n[2],i=n[3],a=n[4],o=n[5],u=n[6],c=n[7],h=n[8],l=h*a-o*c,f=-h*i+o*u,p=c*i-a*u;let m=e*l+r*f+s*p;return m?(m=1/m,t[0]=l*m,t[1]=(-h*r+s*c)*m,t[2]=(o*r-s*a)*m,t[3]=f*m,t[4]=(h*e-s*u)*m,t[5]=(-o*e+s*i)*m,t[6]=p*m,t[7]=(-c*e+r*u)*m,t[8]=(a*e-r*i)*m,t):null}function u(t,n){const e=n[0],r=n[1],s=n[2],i=n[3],a=n[4],o=n[5],u=n[6],c=n[7],h=n[8];return t[0]=a*h-o*c,t[1]=s*c-r*h,t[2]=r*o-s*a,t[3]=o*u-i*h,t[4]=e*h-s*u,t[5]=s*i-e*o,t[6]=i*c-a*u,t[7]=r*u-e*c,t[8]=e*a-r*i,t}function c(t){const n=t[0],e=t[1],r=t[2],s=t[3],i=t[4],a=t[5],o=t[6],u=t[7],c=t[8];return n*(c*i-a*u)+e*(-c*s+a*o)+r*(u*s-i*o)}function h(t,n,e){const r=n[0],s=n[1],i=n[2],a=n[3],o=n[4],u=n[5],c=n[6],h=n[7],l=n[8],f=e[0],p=e[1],m=e[2],g=e[3],M=e[4],y=e[5],d=e[6],x=e[7],v=e[8];return t[0]=f*r+p*a+m*c,t[1]=f*s+p*o+m*h,t[2]=f*i+p*u+m*l,t[3]=g*r+M*a+y*c,t[4]=g*s+M*o+y*h,t[5]=g*i+M*u+y*l,t[6]=d*r+x*a+v*c,t[7]=d*s+x*o+v*h,t[8]=d*i+x*u+v*l,t}function l(t,n,e){const r=e[0],s=e[1],i=e[2];return t[0]=r*n[0],t[1]=r*n[1],t[2]=r*n[2],t[3]=s*n[3],t[4]=s*n[4],t[5]=s*n[5],t[6]=i*n[6],t[7]=i*n[7],t[8]=i*n[8],t}function f(t,n){const e=n[0],r=n[1],s=n[2],i=n[3],a=e+e,o=r+r,u=s+s,c=e*a,h=r*a,l=r*o,f=s*a,p=s*o,m=s*u,g=i*a,M=i*o,y=i*u;return t[0]=1-l-m,t[3]=h-y,t[6]=f+M,t[1]=h+y,t[4]=1-c-m,t[7]=p-g,t[2]=f-M,t[5]=p+g,t[8]=1-c-l,t}function p(t,n){const e=n[0],r=n[1],s=n[2],i=n[3],a=n[4],o=n[5],u=n[6],c=n[7],h=n[8],l=n[9],f=n[10],p=n[11],m=n[12],g=n[13],M=n[14],y=n[15],d=e*o-r*a,x=e*u-s*a,v=e*c-i*a,b=r*u-s*o,P=r*c-i*o,I=s*c-i*u,R=h*g-l*m,A=h*M-f*m,w=h*y-p*m,N=l*M-f*g,S=l*y-p*g,Z=f*y-p*M;let C=d*Z-x*S+v*N+b*w-P*A+I*R;return C?(C=1/C,t[0]=(o*Z-u*S+c*N)*C,t[1]=(u*w-a*Z-c*A)*C,t[2]=(a*S-o*w+c*R)*C,t[3]=(s*S-r*Z-i*N)*C,t[4]=(e*Z-s*w+i*A)*C,t[5]=(r*w-e*S-i*R)*C,t[6]=(g*I-M*P+y*b)*C,t[7]=(M*v-m*I-y*x)*C,t[8]=(m*P-g*v+y*d)*C,t):null}function m(t,n,e){return t[0]=n[0]-e[0],t[1]=n[1]-e[1],t[2]=n[2]-e[2],t[3]=n[3]-e[3],t[4]=n[4]-e[4],t[5]=n[5]-e[5],t[6]=n[6]-e[6],t[7]=n[7]-e[7],t[8]=n[8]-e[8],t}const g=h,M=m;Object.freeze(Object.defineProperty({__proto__:null,add:function(t,n,e){return t[0]=n[0]+e[0],t[1]=n[1]+e[1],t[2]=n[2]+e[2],t[3]=n[3]+e[3],t[4]=n[4]+e[4],t[5]=n[5]+e[5],t[6]=n[6]+e[6],t[7]=n[7]+e[7],t[8]=n[8]+e[8],t},adjoint:u,copy:function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t},determinant:c,equals:function(t,n){const e=t[0],s=t[1],i=t[2],a=t[3],o=t[4],u=t[5],c=t[6],h=t[7],l=t[8],f=n[0],p=n[1],m=n[2],g=n[3],M=n[4],y=n[5],d=n[6],x=n[7],v=n[8],b=(0,r.FD)();return Math.abs(e-f)<=b*Math.max(1,Math.abs(e),Math.abs(f))&&Math.abs(s-p)<=b*Math.max(1,Math.abs(s),Math.abs(p))&&Math.abs(i-m)<=b*Math.max(1,Math.abs(i),Math.abs(m))&&Math.abs(a-g)<=b*Math.max(1,Math.abs(a),Math.abs(g))&&Math.abs(o-M)<=b*Math.max(1,Math.abs(o),Math.abs(M))&&Math.abs(u-y)<=b*Math.max(1,Math.abs(u),Math.abs(y))&&Math.abs(c-d)<=b*Math.max(1,Math.abs(c),Math.abs(d))&&Math.abs(h-x)<=b*Math.max(1,Math.abs(h),Math.abs(x))&&Math.abs(l-v)<=b*Math.max(1,Math.abs(l),Math.abs(v))},exactEquals:function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]&&t[6]===n[6]&&t[7]===n[7]&&t[8]===n[8]},frob:function(t){return Math.sqrt(t[0]**2+t[1]**2+t[2]**2+t[3]**2+t[4]**2+t[5]**2+t[6]**2+t[7]**2+t[8]**2)},fromMat2d:function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=0,t[3]=n[2],t[4]=n[3],t[5]=0,t[6]=n[4],t[7]=n[5],t[8]=1,t},fromMat4:s,fromQuat:f,fromRotation:function(t,n){const e=Math.sin(n),r=Math.cos(n);return t[0]=r,t[1]=e,t[2]=0,t[3]=-e,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},fromScaling:function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=0,t[4]=n[1],t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},fromTranslation:function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=n[0],t[7]=n[1],t[8]=1,t},identity:function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},invert:o,isOrthoNormal:function(t){const n=(0,r.FD)(),e=t[0],s=t[1],i=t[2],a=t[3],o=t[4],u=t[5],c=t[6],h=t[7],l=t[8];return Math.abs(1-(e*e+a*a+c*c))<=n&&Math.abs(1-(s*s+o*o+h*h))<=n&&Math.abs(1-(i*i+u*u+l*l))<=n},mul:g,multiply:h,multiplyScalar:function(t,n,e){return t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t[3]=n[3]*e,t[4]=n[4]*e,t[5]=n[5]*e,t[6]=n[6]*e,t[7]=n[7]*e,t[8]=n[8]*e,t},multiplyScalarAndAdd:function(t,n,e,r){return t[0]=n[0]+e[0]*r,t[1]=n[1]+e[1]*r,t[2]=n[2]+e[2]*r,t[3]=n[3]+e[3]*r,t[4]=n[4]+e[4]*r,t[5]=n[5]+e[5]*r,t[6]=n[6]+e[6]*r,t[7]=n[7]+e[7]*r,t[8]=n[8]+e[8]*r,t},normalFromMat4:p,normalFromMat4Legacy:function(t,n){const e=n[0],r=n[1],s=n[2],i=n[4],a=n[5],o=n[6],u=n[8],c=n[9],h=n[10],l=h*a-o*c,f=-h*i+o*u,p=c*i-a*u,m=e*l+r*f+s*p;if(!m)return null;const g=1/m;return t[0]=l*g,t[1]=(-h*r+s*c)*g,t[2]=(o*r-s*a)*g,t[3]=f*g,t[4]=(h*e-s*u)*g,t[5]=(-o*e+s*i)*g,t[6]=p*g,t[7]=(-c*e+r*u)*g,t[8]=(a*e-r*i)*g,t},projection:function(t,n,e){return t[0]=2/n,t[1]=0,t[2]=0,t[3]=0,t[4]=-2/e,t[5]=0,t[6]=-1,t[7]=1,t[8]=1,t},rotate:function(t,n,e){const r=n[0],s=n[1],i=n[2],a=n[3],o=n[4],u=n[5],c=n[6],h=n[7],l=n[8],f=Math.sin(e),p=Math.cos(e);return t[0]=p*r+f*a,t[1]=p*s+f*o,t[2]=p*i+f*u,t[3]=p*a-f*r,t[4]=p*o-f*s,t[5]=p*u-f*i,t[6]=c,t[7]=h,t[8]=l,t},scale:l,scaleByVec2:function(t,n,e){const r=e[0],s=e[1];return t[0]=r*n[0],t[1]=r*n[1],t[2]=r*n[2],t[3]=s*n[3],t[4]=s*n[4],t[5]=s*n[5],t},set:i,str:function(t){return"mat3("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+", "+t[8]+")"},sub:M,subtract:m,translate:function(t,n,e){const r=n[0],s=n[1],i=n[2],a=n[3],o=n[4],u=n[5],c=n[6],h=n[7],l=n[8],f=e[0],p=e[1];return t[0]=r,t[1]=s,t[2]=i,t[3]=a,t[4]=o,t[5]=u,t[6]=f*r+p*a+c,t[7]=f*s+p*o+h,t[8]=f*i+p*u+l,t},transpose:a},Symbol.toStringTag,{value:"Module"}))},82799:(t,n,e)=>{e.d(n,{A:()=>g});var r,s=e(31635),i=e(4718),a=e(10107),o=(e(44208),e(53966),e(40608)),u=e(43937),c=e(5443),h=e(91075),l=e(86738),f=e(16930),p=e(90634),m=e(56993);let g=r=class extends h.A{constructor(t){super(function(t){if(!t)return;let{paths:n,hasM:e,hasZ:r,spatialReference:s}=t;switch(n??=[],function(t){return"number"==typeof t[0]?.[0]}(n)&&(n=[n]),n[0]?.[0]?.length){case 4:r??=!0,e??=!0;break;case 3:r??=!0!==e,e??=!r;break;default:r??=!1,e??=!1}return s??=f.A.WGS84,{...t,hasM:e,hasZ:r,paths:n,spatialReference:s}}(t)),this.curvePaths=void 0,this.paths=[],this.type="polyline"}get cache(){return this.commitProperty("curvePaths"),this.commitProperty("hasM"),this.commitProperty("hasZ"),this.commitProperty("paths"),this.commitProperty("spatialReference"),{}}writeCurvePaths(t,n){n.curvePaths=(0,i.o8)(t)}get extent(){const t=(0,p.Z3)(this),{spatialReference:n}=this;return t?new c.A({...t,spatialReference:n}):null}writePaths(t,n){n.paths=(0,i.o8)(this.paths)}addPath(t){if(!t)return;const n=this.paths,e=n.length;if(function(t){return!Array.isArray(t[0])}(t)){const r=[];for(let n=0,e=t.length;n<e;n++)r[n]=t[n].toArray();n[e]=r}else n[e]=t.slice();return this.notifyChange("paths"),this}clone(){const t=new r;return t.spatialReference=this.spatialReference,t.paths=(0,i.o8)(this.paths),t.curvePaths=(0,i.o8)(this.curvePaths),t.hasZ=this.hasZ,t.hasM=this.hasM,t}getPoint(t,n){if(!this._validateInputs(t,n))return null;const e=this.paths[t][n],r=this.hasZ,s=this.hasM;return r&&!s?new l.A(e[0],e[1],e[2],void 0,this.spatialReference):s&&!r?new l.A(e[0],e[1],void 0,e[2],this.spatialReference):r&&s?new l.A(e[0],e[1],e[2],e[3],this.spatialReference):new l.A(e[0],e[1],this.spatialReference)}insertPoint(t,n,e){return this._validateInputs(t,n,!0)?((0,m.h)(this,e),Array.isArray(e)||(e=e.toArray()),this.paths[t].splice(n,0,e),this.notifyChange("paths"),this):this}removePath(t){if(!this._validateInputs(t,null))return null;const n=this.paths.splice(t,1)[0],e=this.spatialReference,r=n.map(t=>new l.A(t,e));return this.notifyChange("paths"),r}removePoint(t,n){if(!this._validateInputs(t,n))return null;const e=new l.A(this.paths[t].splice(n,1)[0],this.spatialReference);return this.notifyChange("paths"),e}setPoint(t,n,e){return this._validateInputs(t,n)?((0,m.h)(this,e),Array.isArray(e)||(e=e.toArray()),this.paths[t][n]=e,this.notifyChange("paths"),this):this}_validateInputs(t,n,e=!1){if(null==t||t<0||t>=this.paths.length)return!1;if(null!=n){const r=this.paths[t];if(e&&(n<0||n>r.length))return!1;if(!e&&(n<0||n>=r.length))return!1}return!0}toJSON(t){return this.write({},t)}};(0,s.Cg)([(0,a.MZ)({readOnly:!0})],g.prototype,"cache",null),(0,s.Cg)([(0,a.MZ)({json:{write:!0,origins:{"portal-item":{write:!1},"web-map":{write:!1},"web-scene":{write:!1}}}})],g.prototype,"curvePaths",void 0),(0,s.Cg)([(0,u.K)("curvePaths")],g.prototype,"writeCurvePaths",null),(0,s.Cg)([(0,a.MZ)({readOnly:!0})],g.prototype,"extent",null),(0,s.Cg)([(0,a.MZ)({type:[[[Number]]],json:{write:{isRequired:!0}}})],g.prototype,"paths",void 0),(0,s.Cg)([(0,u.K)("paths")],g.prototype,"writePaths",null),g=r=(0,s.Cg)([(0,o.$)("esri.geometry.Polyline")],g),g.prototype.toJSON.isDefaultToJSON=!0},90634:(t,n,e)=>{e.d(n,{HA:()=>h,Z3:()=>p,ge:()=>l,v:()=>f});var r=e(6606);const s=[];function i(t,n,e,r){return{xmin:t,ymin:n,xmax:e,ymax:r}}function a(t,n,e,r,s,i){return{xmin:t,ymin:n,zmin:e,xmax:r,ymax:s,zmax:i}}function o(t,n,e,r,s,i){return{xmin:t,ymin:n,mmin:e,xmax:r,ymax:s,mmax:i}}function u(t,n,e,r,s,i,a,o){return{xmin:t,ymin:n,zmin:e,mmin:r,xmax:s,ymax:i,zmax:a,mmax:o}}function c(t,n=!1,e=!1){return n?e?u(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7]):a(t[0],t[1],t[2],t[3],t[4],t[5]):e?o(t[0],t[1],t[2],t[3],t[4],t[5]):i(t[0],t[1],t[2],t[3])}function h(t){return t?function(t){return void 0!==t.xmin&&void 0!==t.ymin&&void 0!==t.xmax&&void 0!==t.ymax}(t)?t:function(t){return void 0!==t.x&&void 0!==t.y}(t)?function(t){const{x:n,y:e,z:r,m:s}=t,c=null!=s;return null!=r?c?u(n,e,r,s,n,e,r,s):a(n,e,r,n,e,r):c?o(n,e,s,n,e,s):i(n,e,n,e)}(t):function(t){return void 0!==t.rings}(t)?f(t):function(t){return void 0!==t.paths}(t)?p(t):function(t){return void 0!==t.points}(t)?l(t):null:null}function l(t){const{hasZ:n,hasM:e,points:i}=t,a=(0,r.Pj)(s,i,n??!1,e??!1,n??!1,e??!1);return a?c(a,n,e):null}function f(t){const{hasZ:n,hasM:e,rings:i,curveRings:a}=t,o=(0,r.Yz)(s,a??i,n??!1,e??!1);return o?c(o,n,e):null}function p(t){const{hasZ:n,hasM:e,paths:i,curvePaths:a}=t,o=(0,r.Yz)(s,a??i,n??!1,e??!1);return o?c(o,n,e):null}},95108:(t,n,e)=>{e.d(n,{$3:()=>c,Ng:()=>a,R3:()=>s,Yl:()=>u,gR:()=>i,m3:()=>l,t9:()=>o});var r=e(4576);function s(t,n){const e=n[0]-t[0],r=n[1]-t[1];if(t.length>2&&n.length>2){const s=t[2]-n[2];return Math.sqrt(e*e+r*r+s*s)}return Math.sqrt(e*e+r*r)}function i(t,n,e,r){const[s,i]=n,[a,o]=e,[u,c]=r,h=u-a,l=c-o,f=h*h+l*l,p=(s-a)*h+(i-o)*l,m=Math.min(1,Math.max(0,p/f));return t[0]=a+h*m,t[1]=o+l*m,t}function a(t,n,e,r,s,i){let a=e,o=r,u=s-a,c=i-o;if(0!==u||0!==c){const e=((t-a)*u+(n-o)*c)/(u*u+c*c);e>1?(a=s,o=i):e>0&&(a+=u*e,o+=c*e)}return u=t-a,c=n-o,u*u+c*c}function o(t,n){return function(t,n,e){const r=t[0]+e*(n[0]-t[0]),s=t[1]+e*(n[1]-t[1]);return t.length>2&&n.length>2?[r,s,t[2]+e*(n[2]-t[2])]:[r,s]}(t,n,.5)}function u(t){const n=t.length;let e=0;for(let r=0;r<n-1;++r)e+=s(t[r],t[r+1]);return e}function c(t,n=0,e=1){let r=0;const s=t.length;let i=t[0];for(let a=1;a<s;a++){const s=t[a];r+=(s[n]-i[n])*(s[e]+i[e]),i=s}if(h(t)){const s=t[0];r+=(s[n]-i[n])*(s[e]+i[e])}return r>=0}function h(t){const n=t.length;return n>0&&!(0,r.aI)(t[0],t[n-1])}function l(t){if("rings"in t)for(const n of t.rings)h(n)&&n.push(n[0].slice())}e(21325)}}]);
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 626c18c1bbc50b3b16b2.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[168],{4489:(t,e,s)=>{s.d(e,{K:()=>i.K});var i=s(48015)},7804:(t,e,s)=>{s.d(e,{OA:()=>i,WL:()=>n,u$:()=>o});const i={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},o=t=>(...e)=>({_$litDirective$:t,values:e});class n{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}},14813:(t,e,s)=>{s.d(e,{Qu:()=>n,qu:()=>o});var i=s(34088);let o=!1;const n=t=>{o=!0,(0,i.s)(t)}},18504:(t,e,s)=>{s.d(e,{Rt:()=>n,mY:()=>c});var i=s(36752);const{I:o}=i.ge,n=t=>void 0===t.strings,r={},c=(t,e=r)=>t._$AH=e},20150:(t,e,s)=>{s.d(e,{eg:()=>o});const i=(t,e)=>{let s=t;for(;s;){const t=s.closest?.(e);if(t)return t;const i=s.getRootNode?.();if(i===globalThis.document)return;s=i.host}};function o(t){const e=i(t,".calcite-mode-dark, .calcite-mode-light, .calcite-mode-auto");return e?.classList.contains("calcite-mode-dark")||e?.classList.contains("calcite-mode-auto")&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}},27757:(t,e,s)=>{s.d(e,{c:()=>i,o:()=>o});class i{constructor(){this.promise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}}const o=(t,e)=>{const s=e>n?r:e/c;let i=0;const o=setInterval(()=>{i+=s,i>=e&&(clearInterval(o),t())},s);return o},n=4e3,r=2e3,c=4},32906:(t,e,s)=>{s.d(e,{WF:()=>T,lh:()=>i.c,le:()=>L,s6:()=>P,CP:()=>k,zl:()=>O,Bq:()=>M,pf:()=>R});var i=s(55333),o=s(50842);o.W3,o.Ec;var n=s(27757);const r=t=>{let e=t;for(;e=e.parentNode??e.host;)if(e?.constructor?.lumina){const s=e;return s.manager?.loadedCalled||(s.J??s._offspring).push(t),(s.I??s._postLoad).promise}return!1},c={};function a(){}const h=Object.defineProperty,l=globalThis.HTMLElement??a;class d extends l{constructor(){super(),this.#t={},this.#e=[],this.I=new n.c,this.H=new n.c,this.J=[];const t=this,e=t.constructor;t._offspring=t.J,t._postLoad=t.I,e.C?.forEach(e=>{Object.hasOwn(t,e)&&(t.#t[e]=t[e],delete t[e])}),e.A?t.#s({a:e.A}):e.B.then(async s=>{await e.K.p,t.#s(await(s.default?.then(t=>"function"==typeof t?{a:t}:t)??s))}).catch(e=>{t.H.reject(e),setTimeout(()=>{throw e})})}static{this.lumina=!0}static F(){for(const t of this.C??[])h(this.prototype,t,{configurable:!0,enumerable:!0,get(){return this.#t[t]},set(e){this.#t[t]=e}});for(const t of this.E??[])h(this.prototype,t,{async value(...e){this.#i||await this.H.promise;const s=this.#i;return await s[t](...e)},configurable:!0});for(const t of this.D??[])h(this.prototype,t,{value(...e){return this.#i[t](...e)},configurable:!0})}#i;#t;#e;get manager(){return this.#i?.manager}attributeChangedCallback(t,e,s){this.#i?.attributeChangedCallback(t,e,s),this.#i||this.#e.push(t)}connectedCallback(){this.#i?this.#i.connectedCallback?.():queueMicrotask(()=>this.G=r(this))}disconnectedCallback(){this.#i?.disconnectedCallback?.()}async componentOnReady(){return await this.H.promise,this}#s(t){const e=this.constructor,s=e.L,i=this.#t,o=Object.values(t).find(t=>t.L===s),n=`${s}--lazy`;let r=o;for(;r&&!Object.hasOwn(r,"lumina");)r=Object.getPrototypeOf(r);p(r),!e.A&&(e.A=o,customElements.define(n,o)),o.N=this;const c=document.createElement(n);o.N=void 0,this.#i=c,this.#t=c,this.#e.forEach(t=>c.attributeChangedCallback(t,null,this.getAttribute(t))),Object.entries(i).forEach(u,c);const a=this.isConnected;(a||this.G)&&(c.connectedCallback?.(),a||c.disconnectedCallback())}addController(){}requestUpdate(){this.#i?.requestUpdate()}}function u([t,e]){this[t]=e}const p=t=>{const e=t.prototype,s=Element.prototype;Object.hasOwn(e,"isConnected")||(e.setAttribute=function(t,e){s.setAttribute.call(this.el,t,e)},e.removeAttribute=function(t){s.removeAttribute.call(this.el,t)},h(e,"isConnected",{get(){return Reflect.get(s,"isConnected",this.el)}}))};var f=s(62550);const m=/[A-Z]+(?![a-z])|[A-Z]/gu;crypto;var g=s(46337),y=s(94667),$=s(36752),A=s(7804);const _=(0,A.u$)(class extends A.WL{constructor(t){if(super(t),t.type!==A.OA.ATTRIBUTE||"class"!==t.name||t.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter(e=>t[e]).join(" ")+" "}update(t,[e]){if(void 0===this.st){this.st=new Set,void 0!==t.strings&&(this.nt=new Set(t.strings.join(" ").split(/\s/).filter(t=>""!==t)));for(const t in e)e[t]&&!this.nt?.has(t)&&this.st.add(t);return this.render(e)}const s=t.element.classList;for(const t of this.st)t in e||(s.remove(t),this.st.delete(t));for(const t in e){const i=!!e[t];i===this.st.has(t)||this.nt?.has(t)||(i?(s.add(t),this.st.add(t)):(s.remove(t),this.st.delete(t)))}return $.c0}}),v="important",b=" !"+v,E=(0,A.u$)(class extends A.WL{constructor(t){if(super(t),t.type!==A.OA.ATTRIBUTE||"style"!==t.name||t.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(t){return Object.keys(t).reduce((e,s)=>{const i=t[s];return null==i?e:e+`${s=s.includes("-")?s:s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${i};`},"")}update(t,[e]){const{style:s}=t.element;if(void 0===this.ft)return this.ft=new Set(Object.keys(e)),this.render(e);for(const t of this.ft)null==e[t]&&(this.ft.delete(t),t.includes("-")?s.removeProperty(t):s[t]=null);for(const t in e){const i=e[t];if(null!=i){this.ft.add(t);const e="string"==typeof i&&i.endsWith(b);t.includes("-")||e?s.setProperty(t,e?i.slice(0,-11):i,e?v:""):s[t]=i}}return $.c0}});s(80538);var C=s(4489);class U extends i.G{constructor(t){super(t),this.destroyed=!1,this.R=!1,this.V=g.s6,this.T=[],this.#o=new WeakMap,this.#n=t,this.exports=void 0,this.hasDestroy=S in t&&"function"==typeof t.destroy,g.WF.prototype.addController.call(t,{hostConnected:()=>{if(this.destroyed){const e=t.el.localName;throw t.el.remove(),new Error(`The ${e} component has already been destroyed. It cannot be used again. If you meant to disconnect and reconnect a component without automatic destroy, set the ${S} prop.`)}void 0!==this.#r&&clearTimeout(this.#r),(0,i.p)();for(const e of t.M)"triggerConnected"in e?e.triggerConnected():(0,f.UF)(e.hostConnected,e)},hostDisconnected:()=>{for(const e of t.M)"triggerDisconnected"in e?e.triggerDisconnected():(0,f.UF)(e.hostDisconnected,e);this.hasDestroy&&!this.destroyed&&this.U()},hostUpdate:()=>{for(const e of t.M)"triggerUpdate"in e?e.triggerUpdate(this.Q):(0,f.UF)(e.hostUpdate,e,this.Q)},hostUpdated:()=>{for(const e of t.M)"triggerUpdated"in e?e.triggerUpdated(this.Q):(0,f.UF)(e.hostUpdated,e,this.Q);this.Q=void 0}}),queueMicrotask(()=>this.R=!0),(0,y.s)(t)}#r;#n;async destroy(){if(!this.destroyed){this.#n.el.isConnected&&(this.hasDestroy=!1,this.#n.el.remove()),this.#r=void 0,this.destroyed=!0;for(const t of this.#n.M)"triggerDestroy"in t?t.triggerDestroy():(0,f.UF)(t.hostDestroy,t);this.#n.M.splice(0)}}U(){if(void 0!==this.#r&&clearTimeout(this.#r),!this.#n.el.isConnected&&!this.#n.autoDestroyDisabled){const t=()=>{this.#n.destroy()};this.#r=(0,n.o)(t,w)}}S(t,e){const s=this.T;this.V=g.s6,this.T=[],s.forEach(s=>s(t,e))}#o;W(t,e){("object"==typeof e&&null!==e||"function"==typeof e)&&this.#o.set(e,t)}X(t){return"object"==typeof t&&null!==t||"function"==typeof t?this.#o.get(t):void 0}}let w=1e3;const S="autoDestroyDisabled";class T extends g.WF{constructor(){super(),this.M=[],this.manager=new U(this);const t=this,e=t.constructor,s=e.N,i=e.K.o,o=T.prototype.shouldUpdate;t.#c=s?.H??new n.c,t.I=s?.I??new n.c,t.J=s?.J??[],t._offspring=t.J,t._postLoad=t.I,t.el=s??t,t.#a=t.enableUpdating,t.enableUpdating=a,t.shouldUpdate!==o&&(t.#h=t.shouldUpdate,t.shouldUpdate=o),i&&(t.#l=new Map,e.elementProperties.forEach((e,s)=>t.#l.set(s,i()))),g.S$&&t.el.setAttribute(e.K.hydratedAttribute,"")}static finalizeStyles(t){const e=super.finalizeStyles(t),s=this.shadowRootOptions===c;return void 0===this.K?.commonStyles||s?e:[this.K.commonStyles,...e]}static createProperty(t,e){const s="number"==typeof e?e:Array.isArray(e)?e[0]:0,i=Array.isArray(e)?e[1]:void 0,o=i?.hasChanged??g.Ec,n={attribute:!!(1&s&&"string"==typeof t)&&(r=t,r.replace(m,(t,e)=>`${0===e?"":"-"}${t.toLowerCase()}`)),reflect:!!(2&s),type:4&s?Boolean:8&s?Number:void 0,state:!!(16&s),readOnly:!!(32&s),noAccessor:!!(64&s),c:!1,...i,hasChanged(t,e){const s=o(t,e);return n.c=s,s}};var r;super.createProperty(t,n)}static getPropertyDescriptor(t,e,s){const o=this.K,n=super.getPropertyDescriptor(t,e,s);return s.d=n,{...n,get(){return o.t?.(this.#l.get(t)),n.get?.call(this)},set(e){const o=this.manager;if(s.readOnly&&!y.a&&(o.R||o.connectedCalled))throw Error(`Cannot assign to read-only property "${t}" of ${this.el.localName}. Trying to assign "${e}"`);n.set.call(this,e??void 0),s.c&&this.#l?.get(t)?.notify(),o.T.length>0&&((0,i.p)(),o?.S(t,e))}}}static{this.lumina=!0}#l;#h;#a;#c;#d;connectedCallback(){if(this.el.hasAttribute("defer-hydration"))return;const t=this.constructor.K.c?.(()=>this.requestUpdate());this.#d=t;const e=!this.manager.connectedCalled;super.connectedCallback(),e?queueMicrotask(()=>this.#u().catch(t=>{this.#c.reject(t),setTimeout(()=>{throw t})})):t&&this.requestUpdate()}#p(t){try{this.#d.clear(),this.constructor.K.r(this.#d,()=>super.update(t))}catch(t){throw this.#d.clear(),t}}disconnectedCallback(){super.disconnectedCallback(),this.#d?.destroy(),this.#d=void 0}createRenderRoot(){const t=this.el.shadowRoot,e=this.constructor,s=e.shadowRootOptions,i=t??(s===c?this.el:this.el.attachShadow(s));if(this.isConnected){const t=i.getRootNode();t.adoptedStyleSheets=[...t.adoptedStyleSheets,...e.elementStyles.map(t=>"styleSheet"in t?t.styleSheet:t)]}return i}async#u(){const t=this.el.G??r(this.el);t&&await t;const e=[];for(const t of this.M)"triggerLoad"in t?e.push(t.triggerLoad()):e.push((0,f.ao)(t.hostLoad,t));await Promise.all(e),await(this.load?.()),this.manager.hasDestroy&&this.manager.onUpdate(t=>t.has(S)&&this.manager.U()),this.#a(!0),this.performUpdate(),this.I.resolve(),await Promise.resolve();const s=this.J.filter(t=>!t.manager?.loadedCalled);s.length&&await Promise.allSettled(s.map(async t=>await t.componentOnReady())),this.J.length=0,this.el.setAttribute(this.constructor.K.hydratedAttribute,"");for(const t of this.M)"triggerLoaded"in t?t.triggerLoaded():(0,f.UF)(t.hostLoaded,t);this.loaded?.(),this.#c.resolve()}shouldUpdate(t){return this.manager.Q=t,this.#h?.(t)??!0}update(t){this.#d?this.#p(t):super.update(t)}listen(t,e,s){const i=e?.bind(this)??e;this.manager.onLifecycle(()=>(this.el.addEventListener(t,i,s),()=>this.el.removeEventListener(t,i,s)))}listenOn(t,e,s,i){const o=s?.bind(this)??s;this.manager.onLifecycle(()=>(t.addEventListener(e,o,i),()=>t.removeEventListener(e,o,i)))}async componentOnReady(){return await this.#c.promise,this}addController(t){this.M.push(t),!(y.c in t)&&this.renderRoot&&this.el.isConnected&&t.hostConnected?.()}removeController(t){this.M.splice(this.M.indexOf(t),1),t.controllerRemoved?.()}}const L=t=>{let e;const s=t=>{e=new URL(t,globalThis.location?.href||void 0).href},i={...t,getAssetPath(t){const s=new URL(t,e);return s.origin!==globalThis.location?.origin?s.href:s.pathname},setAssetPath:s,customElement(t,e){e.K=i,e.L=t,customElements.get(t)||customElements.define(t,e)}};return s(t.defaultAssetPath),i},k=t=>"object"==typeof t&&null!=t?_(t):t,O=t=>"object"==typeof t&&null!=t?E(t):t;class x extends A.WL{#f;#m;constructor(t){super(t);const e=this;this.#m=function(t){return e.#f.call(this,t)}}render(t){return"function"==typeof t?(this.#f=t,(0,C.K)(this.#m)):(0,C.K)(t)}}(0,A.u$)(x);const P=g.s6;function M(t,e,s){null==s?t.removeAttribute(e):t.setAttribute(e,s)}const R={toAttribute:t=>!0===t?"":!1===t?null:t}},34088:(t,e,s)=>{s.d(e,{C:()=>c,D:()=>a,a:()=>h,c:()=>g,f:()=>u,g:()=>y,l:()=>p,s:()=>$}),Object(function(){var t=new Error("Cannot find module '../calcite/calcite.css'");throw t.code="MODULE_NOT_FOUND",t}());var i=s(32906),o=s(46337);const n="calcite-mode-auto",r="calcite-mode-dark",c={autoMode:n,darkMode:r,lightMode:"calcite-mode-light",rtl:"calcite--rtl",calciteAnimate:"calcite-animate",calciteAnimateInUp:"calcite-animate__in-up",calciteAnimateInDown:"calcite-animate__in-down",calciteAnimateInRight:"calcite-animate__in-right",calciteAnimateInLeft:"calcite-animate__in-left"},a={filter:250,nextTick:0,resize:150,reposition:100},h=25;function l(){const{classList:t}=document.body,e=window.matchMedia("(prefers-color-scheme: dark)").matches,s=()=>t.contains(r)||t.contains(n)&&e?"dark":"light",i=t=>document.body.dispatchEvent(new CustomEvent("calciteModeChange",{bubbles:!0,detail:{mode:t}})),o=t=>{c!==t&&i(t),c=t};let c=s();i(c),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",t=>o(t.matches?"dark":"light")),new MutationObserver(()=>o(s())).observe(document.body,{attributes:!0,attributeFilter:["class"]})}const d=globalThis.calciteConfig,u=d?.focusTrapStack||[],p=d?.logLevel||"info",f="3.3.0-next.95";o.S$||("interactive"===document.readyState?l():document.addEventListener("DOMContentLoaded",l,{once:!0})),queueMicrotask(function(){if(d&&d.version)return;console.info(`Using Calcite Components ${f} [Date: 2025-09-03, Revision: 4ff34176e]`);const t=d||globalThis.calciteConfig||{};Object.defineProperty(t,"version",{value:f,writable:!1}),globalThis.calciteConfig=t});const m=(0,i.le)({defaultAssetPath:"https://cdn.jsdelivr.net/npm/@esri/calcite-components@3.3.0-next.95/dist/calcite/",hydratedAttribute:"calcite-hydrated"}),{customElement:g,getAssetPath:y,setAssetPath:$}=m},36752:(t,e,s)=>{s.d(e,{JW:()=>U,XX:()=>q,c0:()=>S,ej:()=>w,ge:()=>F,qy:()=>C,s6:()=>T});const i=globalThis,o=i.trustedTypes,n=o?o.createPolicy("lit-html",{createHTML:t=>t}):void 0,r="$lit$",c=`lit$${Math.random().toFixed(9).slice(2)}$`,a="?"+c,h=`<${a}>`,l=document,d=()=>l.createComment(""),u=t=>null===t||"object"!=typeof t&&"function"!=typeof t,p=Array.isArray,f=t=>p(t)||"function"==typeof t?.[Symbol.iterator],m="[ \t\n\f\r]",g=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,y=/-->/g,$=/>/g,A=RegExp(`>|${m}(?:([^\\s"'>=/]+)(${m}*=${m}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),_=/'/g,v=/"/g,b=/^(?:script|style|textarea|title)$/i,E=t=>(e,...s)=>({_$litType$:t,strings:e,values:s}),C=E(1),U=E(2),w=E(3),S=Symbol.for("lit-noChange"),T=Symbol.for("lit-nothing"),L=new WeakMap,k=l.createTreeWalker(l,129);function O(t,e){if(!p(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==n?n.createHTML(e):e}const x=(t,e)=>{const s=t.length-1,i=[];let o,n=2===e?"<svg>":3===e?"<math>":"",a=g;for(let e=0;e<s;e++){const s=t[e];let l,d,u=-1,p=0;for(;p<s.length&&(a.lastIndex=p,d=a.exec(s),null!==d);)p=a.lastIndex,a===g?"!--"===d[1]?a=y:void 0!==d[1]?a=$:void 0!==d[2]?(b.test(d[2])&&(o=RegExp("</"+d[2],"g")),a=A):void 0!==d[3]&&(a=A):a===A?">"===d[0]?(a=o??g,u=-1):void 0===d[1]?u=-2:(u=a.lastIndex-d[2].length,l=d[1],a=void 0===d[3]?A:'"'===d[3]?v:_):a===v||a===_?a=A:a===y||a===$?a=g:(a=A,o=void 0);const f=a===A&&t[e+1].startsWith("/>")?" ":"";n+=a===g?s+h:u>=0?(i.push(l),s.slice(0,u)+r+s.slice(u)+c+f):s+c+(-2===u?e:f)}return[O(t,n+(t[s]||"<?>")+(2===e?"</svg>":3===e?"</math>":"")),i]};class P{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,h=0;const l=t.length-1,u=this.parts,[p,f]=x(t,e);if(this.el=P.createElement(p,s),k.currentNode=this.el.content,2===e||3===e){const t=this.el.content.firstChild;t.replaceWith(...t.childNodes)}for(;null!==(i=k.nextNode())&&u.length<l;){if(1===i.nodeType){if(i.hasAttributes())for(const t of i.getAttributeNames())if(t.endsWith(r)){const e=f[h++],s=i.getAttribute(t).split(c),o=/([.?@])?(.*)/.exec(e);u.push({type:1,index:n,name:o[2],strings:s,ctor:"."===o[1]?H:"?"===o[1]?j:"@"===o[1]?I:N}),i.removeAttribute(t)}else t.startsWith(c)&&(u.push({type:6,index:n}),i.removeAttribute(t));if(b.test(i.tagName)){const t=i.textContent.split(c),e=t.length-1;if(e>0){i.textContent=o?o.emptyScript:"";for(let s=0;s<e;s++)i.append(t[s],d()),k.nextNode(),u.push({type:2,index:++n});i.append(t[e],d())}}}else if(8===i.nodeType)if(i.data===a)u.push({type:2,index:n});else{let t=-1;for(;-1!==(t=i.data.indexOf(c,t+1));)u.push({type:7,index:n}),t+=c.length-1}n++}}static createElement(t,e){const s=l.createElement("template");return s.innerHTML=t,s}}function M(t,e,s=t,i){if(e===S)return e;let o=void 0!==i?s._$Co?.[i]:s._$Cl;const n=u(e)?void 0:e._$litDirective$;return o?.constructor!==n&&(o?._$AO?.(!1),void 0===n?o=void 0:(o=new n(t),o._$AT(t,s,i)),void 0!==i?(s._$Co??=[])[i]=o:s._$Cl=o),void 0!==o&&(e=M(t,o._$AS(t,e.values),o,i)),e}class R{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:e},parts:s}=this._$AD,i=(t?.creationScope??l).importNode(e,!0);k.currentNode=i;let o=k.nextNode(),n=0,r=0,c=s[0];for(;void 0!==c;){if(n===c.index){let e;2===c.type?e=new D(o,o.nextSibling,this,t):1===c.type?e=new c.ctor(o,c.name,c.strings,this,t):6===c.type&&(e=new W(o,this,t)),this._$AV.push(e),c=s[++r]}n!==c?.index&&(o=k.nextNode(),n++)}return k.currentNode=l,i}p(t){let e=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}}class D{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,i){this.type=2,this._$AH=T,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t?.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=M(this,t,e),u(t)?t===T||null==t||""===t?(this._$AH!==T&&this._$AR(),this._$AH=T):t!==this._$AH&&t!==S&&this._(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):f(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==T&&u(this._$AH)?this._$AA.nextSibling.data=t:this.T(l.createTextNode(t)),this._$AH=t}$(t){const{values:e,_$litType$:s}=t,i="number"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=P.createElement(O(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===i)this._$AH.p(e);else{const t=new R(i,this),s=t.u(this.options);t.p(e),this.T(s),this._$AH=t}}_$AC(t){let e=L.get(t.strings);return void 0===e&&L.set(t.strings,e=new P(t)),e}k(t){p(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let s,i=0;for(const o of t)i===e.length?e.push(s=new D(this.O(d()),this.O(d()),this,this.options)):s=e[i],s._$AI(o),i++;i<e.length&&(this._$AR(s&&s._$AB.nextSibling,i),e.length=i)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){void 0===this._$AM&&(this._$Cv=t,this._$AP?.(t))}}class N{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,i,o){this.type=1,this._$AH=T,this._$AN=void 0,this.element=t,this.name=e,this._$AM=i,this.options=o,s.length>2||""!==s[0]||""!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=T}_$AI(t,e=this,s,i){const o=this.strings;let n=!1;if(void 0===o)t=M(this,t,e,0),n=!u(t)||t!==this._$AH&&t!==S,n&&(this._$AH=t);else{const i=t;let r,c;for(t=o[0],r=0;r<o.length-1;r++)c=M(this,i[s+r],e,r),c===S&&(c=this._$AH[r]),n||=!u(c)||c!==this._$AH[r],c===T?t=T:t!==T&&(t+=(c??"")+o[r+1]),this._$AH[r]=c}n&&!i&&this.j(t)}j(t){t===T?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}}class H extends N{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===T?void 0:t}}class j extends N{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==T)}}class I extends N{constructor(t,e,s,i,o){super(t,e,s,i,o),this.type=5}_$AI(t,e=this){if((t=M(this,t,e,0)??T)===S)return;const s=this._$AH,i=t===T&&s!==T||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,o=t!==T&&(s===T||i);i&&this.element.removeEventListener(this.name,this,s),o&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}}class W{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){M(this,t)}}const F={M:r,P:c,A:a,C:1,L:x,R,D:f,V:M,I:D,H:N,N:j,U:I,B:H,F:W},B=i.litHtmlPolyfillSupport;B?.(P,D),(i.litHtmlVersions??=[]).push("3.3.1");const q=(t,e,s)=>{const i=s?.renderBefore??e;let o=i._$litPart$;if(void 0===o){const t=s?.renderBefore??null;i._$litPart$=o=new D(e.insertBefore(d(),t),t,void 0,s??{})}return o._$AI(t),o}},46337:(t,e,s)=>{s.d(e,{WF:()=>r,AH:()=>i.AH,qy:()=>o.qy,S$:()=>a,Ec:()=>i.Ec,s6:()=>o.s6,JW:()=>o.JW});var i=s(50842),o=s(36752);const n=globalThis;class r extends i.mN{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=(0,o.XX)(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return o.c0}}r._$litElement$=!0,r.finalized=!0,n.litElementHydrateSupport?.({LitElement:r});const c=n.litElementPolyfillSupport;c?.({LitElement:r}),(n.litElementVersions??=[]).push("4.2.1");const a=!1},48015:(t,e,s)=>{s.d(e,{_:()=>p,K:()=>g});var i=s(36752),o=s(18504),n=s(7804);const r=(t,e)=>{const s=t._$AN;if(void 0===s)return!1;for(const t of s)t._$AO?.(e,!1),r(t,e);return!0},c=t=>{let e,s;do{if(void 0===(e=t._$AM))break;s=e._$AN,s.delete(t),t=e}while(0===s?.size)},a=t=>{for(let e;e=t._$AM;t=e){let s=e._$AN;if(void 0===s)e._$AN=s=new Set;else if(s.has(t))break;s.add(t),d(e)}};function h(t){void 0!==this._$AN?(c(this),this._$AM=t,a(this)):this._$AM=t}function l(t,e=!1,s=0){const i=this._$AH,o=this._$AN;if(void 0!==o&&0!==o.size)if(e)if(Array.isArray(i))for(let t=s;t<i.length;t++)r(i[t],!1),c(i[t]);else null!=i&&(r(i,!1),c(i));else r(this,t)}const d=t=>{t.type==n.OA.CHILD&&(t._$AP??=l,t._$AQ??=h)};class u extends n.WL{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),a(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(r(this,t),c(this))}setValue(t){if((0,o.Rt)(this._$Ct))this._$Ct._$AI(t,this);else{const e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}}const p=()=>new f;class f{}const m=new WeakMap,g=(0,n.u$)(class extends u{render(t){return i.s6}update(t,[e]){const s=e!==this.G;return s&&void 0!==this.G&&this.rt(void 0),(s||this.lt!==this.ct)&&(this.G=e,this.ht=t.options?.host,this.rt(this.ct=t.element)),i.s6}rt(t){if(this.isConnected||(t=void 0),"function"==typeof this.G){const e=this.ht??globalThis;let s=m.get(e);void 0===s&&(s=new WeakMap,m.set(e,s)),void 0!==s.get(this.G)&&this.G.call(this.ht,void 0),s.set(this.G,t),void 0!==t&&this.G.call(this.ht,t)}else this.G.value=t}get lt(){return"function"==typeof this.G?m.get(this.ht??globalThis)?.get(this.G):this.G?.value}disconnected(){this.lt===this.ct&&this.rt(void 0)}reconnected(){this.rt(this.ct)}})},50842:(t,e,s)=>{s.d(e,{mN:()=>U,AH:()=>a,W3:()=>b,Ec:()=>E});const i=globalThis,o=i.ShadowRoot&&(void 0===i.ShadyCSS||i.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,n=Symbol(),r=new WeakMap;class c{constructor(t,e,s){if(this._$cssResult$=!0,s!==n)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(o&&void 0===t){const s=void 0!==e&&1===e.length;s&&(t=r.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&r.set(e,t))}return t}toString(){return this.cssText}}const a=(t,...e)=>{const s=1===t.length?t[0]:e.reduce((e,s,i)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+t[i+1],t[0]);return new c(s,t,n)},h=(t,e)=>{if(o)t.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(const s of e){const e=document.createElement("style"),o=i.litNonce;void 0!==o&&e.setAttribute("nonce",o),e.textContent=s.cssText,t.appendChild(e)}},l=o?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return(t=>new c("string"==typeof t?t:t+"",void 0,n))(e)})(t):t,{is:d,defineProperty:u,getOwnPropertyDescriptor:p,getOwnPropertyNames:f,getOwnPropertySymbols:m,getPrototypeOf:g}=Object,y=globalThis,$=y.trustedTypes,A=$?$.emptyScript:"",_=y.reactiveElementPolyfillSupport,v=(t,e)=>t,b={toAttribute(t,e){switch(e){case Boolean:t=t?A:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let s=t;switch(e){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},E=(t,e)=>!d(t,e),C={attribute:!0,type:String,converter:b,reflect:!1,useDefault:!1,hasChanged:E};Symbol.metadata??=Symbol("metadata"),y.litPropertyMetadata??=new WeakMap;class U extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=C){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);void 0!==i&&u(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:o}=p(this.prototype,t)??{get(){return this[e]},set(t){this[e]=t}};return{get:i,set(e){const n=i?.call(this);o?.call(this,e),this.requestUpdate(t,n,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??C}static _$Ei(){if(this.hasOwnProperty(v("elementProperties")))return;const t=g(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(v("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(v("properties"))){const t=this.properties,e=[...f(t),...m(t)];for(const s of e)this.createProperty(s,t[s])}const t=this[Symbol.metadata];if(null!==t){const e=litPropertyMetadata.get(t);if(void 0!==e)for(const[t,s]of e)this.elementProperties.set(t,s)}this._$Eh=new Map;for(const[t,e]of this.elementProperties){const s=this._$Eu(t,e);void 0!==s&&this._$Eh.set(s,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const t of s)e.unshift(l(t))}else void 0!==t&&e.push(l(t));return e}static _$Eu(t,e){const s=e.attribute;return!1===s?void 0:"string"==typeof s?s:"string"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return h(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ET(t,e){const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(void 0!==i&&!0===s.reflect){const o=(void 0!==s.converter?.toAttribute?s.converter:b).toAttribute(e,s.type);this._$Em=t,null==o?this.removeAttribute(i):this.setAttribute(i,o),this._$Em=null}}_$AK(t,e){const s=this.constructor,i=s._$Eh.get(t);if(void 0!==i&&this._$Em!==i){const t=s.getPropertyOptions(i),o="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:b;this._$Em=i;const n=o.fromAttribute(e,t.type);this[i]=n??this._$Ej?.get(i)??n,this._$Em=null}}requestUpdate(t,e,s){if(void 0!==t){const i=this.constructor,o=this[t];if(s??=i.getPropertyOptions(t),!((s.hasChanged??E)(o,e)||s.useDefault&&s.reflect&&o===this._$Ej?.get(t)&&!this.hasAttribute(i._$Eu(t,s))))return;this.C(t,e,s)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,e,{useDefault:s,reflect:i,wrapped:o},n){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,n??e??this[t]),!0!==o||void 0!==n)||(this._$AL.has(t)||(this.hasUpdated||s||(e=void 0),this._$AL.set(t,e)),!0===i&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,e]of this._$Ep)this[t]=e;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[e,s]of t){const{wrapped:t}=s,i=this[e];!0!==t||this._$AL.has(e)||void 0===i||this.C(e,void 0,s,i)}}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(t=>t.hostUpdate?.()),this.update(e)):this._$EM()}catch(e){throw t=!1,this._$EM(),e}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(t){}firstUpdated(t){}}U.elementStyles=[],U.shadowRootOptions={mode:"open"},U[v("elementProperties")]=new Map,U[v("finalized")]=new Map,_?.({ReactiveElement:U}),(y.reactiveElementVersions??=[]).push("2.1.1")},55333:(t,e,s)=>{s.d(e,{C:()=>p,G:()=>m,c:()=>d,p:()=>a,t:()=>l});var i=s(62550),o=s(94667),n=s(46337),r=s(27757);let c;const a=()=>{c?.forEach(({callbacks:t},e)=>{const s=Object.keys(e);t.forEach(t=>t(s))}),c=void 0},h=(t,e,s)=>{const o=t.manager;return o.V!==n.s6&&o.V!==s&&o.S(void 0,void 0),0===o.T.length&&queueMicrotask(()=>o.S(void 0,void 0)),o.V=s,o.T.push((t,o)=>(0,i.UF)(e,void 0,s===o?t:void 0)),s},l=(t=[(0,o.r)(),...(0,o.d)()],e,s)=>{const n=Array.isArray(t)?t:[t];let r=n.length+1;const l=t=>{r-=1,void 0!==t&&(r=Math.min(r,0)),0===r&&e(t)};n.forEach(t=>((t,e,s)=>{const o=Object.keys(t),n=o.length;void 0===c&&queueMicrotask(a),c??=new Map;let r=c.get(t);return void 0===r&&(r={callbacks:[],keyCount:n},c.set(t,r)),r.keyCount!==n&&(r.callbacks.forEach(t=>t(o)),r.callbacks=[],r.keyCount=n),r.callbacks.push(o=>{const r=t=>(0,i.UF)(e,null,t),c=o[n];void 0===c?r(void 0):t[c]===s?r(c):r(void 0)}),s})(t,e=>l(void 0===e?void 0:{key:e,host:t,isReactive:!1}),s));for(const t of n)if("manager"in t&&t.manager.component===t){h(t,e=>l(void 0===e?void 0:{key:e,host:t,isReactive:!0}),s);break}return s},d=((t="",e={},s=(0,o.r)())=>{const i={emit:i=>{""===t&&a();const o=new CustomEvent(t,{detail:i,cancelable:!0,bubbles:!0,composed:!0,...e});return s.el.dispatchEvent(o),o}};return""===t&&l(void 0,e=>t=e.key,i),i}).bind(null,"");var u;u=o.c;class p{constructor(t){this.#g=[],this.#y=[],this.#$=[],this.#A=[],this.#_=[],this.#v=[],this.#b=[],this.#E=[],this.#C=[],this.#U=!1,this.P=new r.c,this.connectedCalled=!1,this.loadedCalled=!1,this[u]=!0,this.#w=[];const e=this,s=t??(0,o.r)(new.target.name);e.#n=s,e.ready=e.P.promise,e.#S=g(e),e.component=s,e.#n.addController(e),void 0===e.#n.manager||((0,o.b)(e),queueMicrotask(()=>e.catchUpLifecycle()))}#g;#y;#$;#A;#_;#v;#b;#E;#C;#U;#n;catchUpLifecycle(){const{manager:t}=this.#n;!t.connectedCalled||this.connectedCalled||this.triggerConnected(),!t.#U||this.triggerLoad().then(()=>t.loadedCalled&&this.triggerLoaded()).catch(console.error)}#S;get exports(){return this.#S}set exports(t){const e=this.#S;e!==t&&(this.#S=t,this.#w.forEach(i.UF),this.connectedCalled&&!1!==this.O&&this.#n.requestUpdate(this.O,e)),this.P.resolve(t)}setProvisionalExports(t,e=!0){this.#S=e?g(t):t,this.#w.forEach(i.UF)}#w;watchExports(t){const e=()=>t(this.#S);return this.#w.push(e),()=>{this.#w.splice(this.#w.indexOf(e),1)}}get use(){return(0,o.s)(this.#n),o.u}get useRef(){return(0,o.s)(this.#n),o.k}get useRefSync(){return(0,o.s)(this.#n),o.l}controllerRemoved(){this.#n.el.isConnected&&this.triggerDisconnected(),this.triggerDestroy()}onConnected(t){this.#g.push(t)}onDisconnected(t){this.#y.push(t)}onLoad(t){this.#$.push(t)}onLoaded(t){this.#A.push(t)}onUpdate(t){this.#_.push(t)}onUpdated(t){this.#v.push(t)}onDestroy(t){this.#b.push(t)}onLifecycle(t){this.#E.push(t),this.connectedCalled&&this.#n.el.isConnected&&this.#T(t)}triggerConnected(){const t=this;t.hostConnected&&(0,i.UF)(t.hostConnected,t),t.#g.forEach(i.UF),t.triggerLifecycle(),t.connectedCalled=!0}triggerDisconnected(){const t=this;t.hostDisconnected&&(0,i.UF)(t.hostDisconnected,t),t.#y.forEach(i.UF),t.#C.forEach(i.UF),t.#C=[]}async triggerLoad(){if(this.#U)return;this.#U=!0;const t=this;t.hostLoad&&await(0,i.ao)(t.hostLoad,t),this.#$.length>0&&await Promise.allSettled(this.#$.map(i.ao)),this.P.resolve(this.#S)}triggerLoaded(){this.loadedCalled||(this.hostLoaded&&(0,i.UF)(this.hostLoaded,this),this.#A.forEach(i.UF),this.loadedCalled=!0)}triggerUpdate(t){this.hostUpdate&&(0,i.UF)(this.hostUpdate,this,t),this.#_.forEach(f,t)}triggerUpdated(t){this.hostUpdated&&(0,i.UF)(this.hostUpdated,this,t),this.#v.forEach(f,t)}triggerDestroy(){this.hostDestroy&&(0,i.UF)(this.hostDestroy,this),this.#b.forEach(i.UF)}triggerLifecycle(){this.hostLifecycle&&this.#T(()=>this.hostLifecycle()),this.#E.forEach(this.#T,this)}#T(t){(0,o.s)(this.#n);const e=(0,i.UF)(t);(Array.isArray(e)?e:[e]).forEach(t=>{"function"==typeof t?this.#C.push(t):"object"==typeof t&&"function"==typeof t.remove&&this.#C.push(t.remove)})}}function f(t){(0,i.UF)(t,void 0,this)}const m=p,g=t=>{if("object"!=typeof t&&"function"!=typeof t||null===t)return t;const e=new Proxy(t,{get(t,s,i){if("exports"!==s&&"_exports"!==s||!(s in t)||t[s]!==e)return s in t||s in Promise.prototype||"symbol"==typeof s?"function"==typeof t?t[s]:Reflect.get(t,s,i):void 0}});return e}},62550:(t,e,s)=>{s.d(e,{UF:()=>i,ao:()=>o});const i=(t,e,...s)=>{try{return t?.call(e,...s)}catch(e){console.error(e,t)}},o=async(t,e,...s)=>{try{const i=t?.call(e,...s);return await i}catch(e){console.error(e,t)}}},80538:(t,e,s)=>{s.d(e,{V:()=>r});var i=s(36752),o=s(7804),n=s(18504);const r=(0,o.u$)(class extends o.WL{constructor(t){if(super(t),t.type!==o.OA.PROPERTY&&t.type!==o.OA.ATTRIBUTE&&t.type!==o.OA.BOOLEAN_ATTRIBUTE)throw Error("The `live` directive is not allowed on child or event bindings");if(!(0,n.Rt)(t))throw Error("`live` bindings can only contain a single expression")}render(t){return t}update(t,[e]){if(e===i.c0||e===i.s6)return e;const s=t.element,r=t.name;if(t.type===o.OA.PROPERTY){if(e===s[r])return i.c0}else if(t.type===o.OA.BOOLEAN_ATTRIBUTE){if(!!e===s.hasAttribute(r))return i.c0}else if(t.type===o.OA.ATTRIBUTE&&s.getAttribute(r)===e+"")return i.c0;return(0,n.mY)(t),e}})},94667:(t,e,s)=>{s.d(e,{a:()=>g,b:()=>h,c:()=>i,d:()=>l,f:()=>y,i:()=>o,j:()=>u,k:()=>f,l:()=>m,r:()=>c,s:()=>r,u:()=>p});const i=Symbol.for("controller"),o=t=>"function"==typeof t?.then;let n;const r=t=>{n!==t&&(n=t,queueMicrotask(()=>n===t?n=void 0:0))},c=t=>n;let a=[];const h=t=>{if(void 0===t)return void(a=[]);const e=a.indexOf(t);a=-1===e?[...a,t]:a.slice(0,e+1),queueMicrotask(()=>a=[])},l=()=>a;let d;const u=t=>{d!==t&&(d=t,queueMicrotask(()=>d===t?d=void 0:0))},p=async(t,e)=>{const s=m(t);if(void 0===s)return t;if(await s.ready,"function"==typeof e){const t=s.watchExports(s=>e(s,t))}return s.exports},f=async t=>{const e=m(t);return await e.ready,e},m=t=>{const e=c().manager.X(t);if(void 0!==e)return e;if((t=>"object"==typeof t&&null!==t&&(i in t||"hostConnected"in t||"hostDisconnected"in t||"hostUpdate"in t||"hostUpdated"in t))(t))return t;const s=(()=>{const t=d;return d=void 0,t})();return void 0!==s?s:void 0};let g=!1;const y=t=>{g=!0;try{return t()}finally{g=!1}}}}]);
|