@arcgis/core 4.23.0-next.20220126 → 4.23.0-next.20220130
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/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/02fbc76dfdc20e628c61.js +1 -0
- package/assets/esri/core/workers/chunks/0453fad5cb819797b4f6.js +1 -0
- package/assets/esri/core/workers/chunks/0463ba46df855a92b9c0.js +1 -0
- package/assets/esri/core/workers/chunks/0cd0a6eef51fc5b9ea61.js +1 -0
- package/assets/esri/core/workers/chunks/{97ec9eef0048760fa260.js → 0d02c6ad1f4688bfa374.js} +1 -1
- package/assets/esri/core/workers/chunks/0d684f16f37d5dc385dd.js +1 -0
- package/assets/esri/core/workers/chunks/0e17691520d890d34efb.js +1 -0
- package/assets/esri/core/workers/chunks/16b6d0f8378582c051c3.js +1 -0
- package/assets/esri/core/workers/chunks/{0ce1dc14280d6f188468.js → 17de7a324dfa7f57ad5d.js} +1 -1
- package/assets/esri/core/workers/chunks/{b313ab14a643273e7d09.js → 1877ab1b6a115dbba1c5.js} +1 -1
- package/assets/esri/core/workers/chunks/{c36f84daa7736878418d.js → 197ec52641aed20029c6.js} +1 -1
- package/assets/esri/core/workers/chunks/1b2a961f776a0b57e57a.js +1 -0
- package/assets/esri/core/workers/chunks/1b3fd66577b19aa5f2b6.js +1 -0
- package/assets/esri/core/workers/chunks/1c733b7db092a2a88ef3.js +1 -0
- package/assets/esri/core/workers/chunks/1f8c6a179e39fd4c5e6f.js +1 -0
- package/assets/esri/core/workers/chunks/2076fcbae63f1bfb7143.js +1 -0
- package/assets/esri/core/workers/chunks/{9387db408f496e7dd003.js → 214910032945dd2d86b0.js} +1 -1
- package/assets/esri/core/workers/chunks/27474b007988855bea9d.js +1 -0
- package/assets/esri/core/workers/chunks/281b89dbf5574fc642ae.js +1 -0
- package/assets/esri/core/workers/chunks/2c8fe9bc988c3c5760a5.js +1 -0
- package/assets/esri/core/workers/chunks/34b59d7099904dcb28b5.js +1 -0
- package/assets/esri/core/workers/chunks/357033117dfe61eb81ea.js +1 -0
- package/assets/esri/core/workers/chunks/{b2ebe4f6d100e15b512d.js → 37c03cfc19086ce631c6.js} +1 -1
- package/assets/esri/core/workers/chunks/386f86f961146f530aa7.js +1 -0
- package/assets/esri/core/workers/chunks/{e6165e17fbb07bfc40a1.js → 391e96192d1ec4e55ce2.js} +1 -1
- package/assets/esri/core/workers/chunks/44f0c3663b293afbd172.js +1 -0
- package/assets/esri/core/workers/chunks/483d5d8593d96d0f0b15.js +1 -0
- package/assets/esri/core/workers/chunks/{c959e0d1cf7dce0421b9.js → 48fa8aed6c24877b44c4.js} +1 -1
- package/assets/esri/core/workers/chunks/{438f0b5ae5c53ae4f06a.js → 4954fd86b48cc68b737c.js} +1 -1
- package/assets/esri/core/workers/chunks/49a1a633bb0d93764aae.js +1 -0
- package/assets/esri/core/workers/chunks/4ba6de8aa7e2960bad49.js +1 -0
- package/assets/esri/core/workers/chunks/4be35af7d6babbfe9d84.js +1 -0
- package/assets/esri/core/workers/chunks/5457962a70bd3c557a75.js +1 -0
- package/assets/esri/core/workers/chunks/57856b4a9b8784a69844.js +1 -0
- package/assets/esri/core/workers/chunks/{b9c177524b3e7de1ffd1.js → 5790d171072b3c7d108f.js} +1 -1
- package/assets/esri/core/workers/chunks/{5dfe1f8d520025e2118b.js → 57b349d1dbc0bed75b79.js} +1 -1
- package/assets/esri/core/workers/chunks/{97a28641b3b2fd31bea2.js → 5bcb3240b3c005e5fe72.js} +1 -1
- package/assets/esri/core/workers/chunks/5d11b97b667921d67ae7.js +1 -0
- package/assets/esri/core/workers/chunks/5dbe555a5a662ff3d9ce.js +1 -0
- package/assets/esri/core/workers/chunks/5ec98f4ddac707d0fbd1.js +1 -0
- package/assets/esri/core/workers/chunks/64b7e8d812ea8fcf269e.js +1 -0
- package/assets/esri/core/workers/chunks/{ba5eb394f098968c22d2.js → 655b55ac0cd533d7e9d7.js} +1 -1
- package/assets/esri/core/workers/chunks/{b0b036ad3ad3cd956747.js → 69fd99b7c76e9992ccf3.js} +1 -1
- package/assets/esri/core/workers/chunks/75d812955a473d0e8960.js +1 -0
- package/assets/esri/core/workers/chunks/7903a3e2e0faff0f86c0.js +1 -0
- package/assets/esri/core/workers/chunks/{cc146c57bbdac8029fd8.js → 7a5f5acfbd4ca1a5c1f3.js} +1 -1
- package/assets/esri/core/workers/chunks/83d00afae4406ec78bc9.js +1 -0
- package/assets/esri/core/workers/chunks/{434b16731c6a81f868ef.js → 85b1f36790df95b17659.js} +1 -1
- package/assets/esri/core/workers/chunks/89820b200ee44e678af5.js +1 -0
- package/assets/esri/core/workers/chunks/918bb7a7d901544a7367.js +1 -0
- package/assets/esri/core/workers/chunks/{94b8dbf859df71858d1c.js → 929c9b7cdab7c4ca3d87.js} +1 -1
- package/assets/esri/core/workers/chunks/949b2269457302ffc64b.js +1 -0
- package/assets/esri/core/workers/chunks/{601e697dc7414bda128a.js → 952980635afc7ec81804.js} +1 -1
- package/assets/esri/core/workers/chunks/9876a1bae350795fab36.js +1 -0
- package/assets/esri/core/workers/chunks/99619fcb772807c74f3b.js +1 -0
- package/assets/esri/core/workers/chunks/{010a71c2aa1b7681e191.js → 9d11f84e6c893b9d0019.js} +1 -1
- package/assets/esri/core/workers/chunks/a1930e4f035bc9aa1ae5.js +1 -0
- package/assets/esri/core/workers/chunks/a8692bffb76444c34760.js +1 -0
- package/assets/esri/core/workers/chunks/{f760a3e030b0f358a92a.js → aeaa1667c2d9f1b3366b.js} +1 -1
- package/assets/esri/core/workers/chunks/{3f343f792fd9f44d6f25.js → b3f5e91116112b0b612a.js} +1 -1
- package/assets/esri/core/workers/chunks/b97953694f42bfec1b3c.js +1 -0
- package/assets/esri/core/workers/chunks/b9e9cb354822c6d995a4.js +1 -0
- package/assets/esri/core/workers/chunks/ba762bcfd74af0bb8218.js +1 -0
- package/assets/esri/core/workers/chunks/{e4b84ca8ddfd48dd79b1.js → bac9fc90e6756e211160.js} +1 -1
- package/assets/esri/core/workers/chunks/{4c76146014dc15143ba3.js → be588873c16770ceb9ef.js} +1 -1
- package/assets/esri/core/workers/chunks/bf97a933ea3b220115e1.js +1 -0
- package/assets/esri/core/workers/chunks/bfedd6ebff817c9b31c0.js +1 -0
- package/assets/esri/core/workers/chunks/c093dff4592832ac0973.js +1 -0
- package/assets/esri/core/workers/chunks/c1135cb02ec46c491459.js +1 -0
- package/assets/esri/core/workers/chunks/{e4e2036373166c1d5cf5.js → c2253a9f29c1aabb2b75.js} +1 -1
- package/assets/esri/core/workers/chunks/d04fca5d46cca02500b7.js +1 -0
- package/assets/esri/core/workers/chunks/d08efbc349dd9f999497.js +1 -0
- package/assets/esri/core/workers/chunks/d1fe53b597351dc58305.js +1 -0
- package/assets/esri/core/workers/chunks/{a8b13fb804bb775e4967.js → db3c729ce0c0b2690dc9.js} +1 -1
- package/assets/esri/core/workers/chunks/dd13772a5e2eccc6a2bc.js +1 -0
- package/assets/esri/core/workers/chunks/dedc333a61081772ca7b.js +1 -0
- package/assets/esri/core/workers/chunks/{6f50a9647f026a8d4729.js → e0c8d61c7a85ce15499a.js} +1 -1
- package/assets/esri/core/workers/chunks/{199670a3a564ebe3bd79.js → e218bde41ffbcc5194f5.js} +1 -1
- package/assets/esri/core/workers/chunks/e21b211913aefde47e30.js +1 -0
- package/assets/esri/core/workers/chunks/e287f49184d076af17e2.js +1 -0
- package/assets/esri/core/workers/chunks/{bde1d5b0a7717350986e.js → e4019b63a1fe74e2c842.js} +1 -1
- package/assets/esri/core/workers/chunks/e8e775758b79c5a084c8.js +1 -0
- package/assets/esri/core/workers/chunks/e93dfdede0532a89ffa5.js +1 -0
- package/assets/esri/core/workers/chunks/ea595b0df5050eda2a13.js +1 -0
- package/assets/esri/core/workers/chunks/eb82ff10cef2bde6e57f.js +1 -0
- package/assets/esri/core/workers/chunks/ebc6f4764b82d4104c65.js +1 -0
- package/assets/esri/core/workers/chunks/{1305ef8717da6e902a55.js → ec10151a2a95e95a0bb5.js} +1 -1
- package/assets/esri/core/workers/chunks/eccba071ced2d922bb85.js +1 -0
- package/assets/esri/core/workers/chunks/ee6e0db58dc64410e687.js +1 -0
- package/assets/esri/core/workers/chunks/f0a9f161805fc7a30fc5.js +1 -0
- package/assets/esri/core/workers/chunks/f2124f4d0f2b8a91f0ea.js +1 -0
- package/assets/esri/core/workers/chunks/ff6abdc72076f3994659.js +981 -0
- package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
- package/assets/esri/themes/base/widgets/_Weather.scss +1 -1
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/dark-blue/main.css +1 -1
- package/assets/esri/themes/dark-green/main.css +1 -1
- package/assets/esri/themes/dark-purple/main.css +1 -1
- package/assets/esri/themes/dark-red/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/assets/esri/themes/light-blue/main.css +1 -1
- package/assets/esri/themes/light-green/main.css +1 -1
- package/assets/esri/themes/light-purple/main.css +1 -1
- package/assets/esri/themes/light-red/main.css +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ar.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_bg.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_bs.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ca.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_cs.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_da.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_de.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_el.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_en.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_es.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_et.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_fi.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_fr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_he.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_hr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_hu.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_id.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_it.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ja.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ko.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_lt.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_lv.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_nb.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_nl.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_pl.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_pt-BR.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_pt-PT.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ro.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ru.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sk.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sl.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sv.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_th.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_tr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_uk.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_vi.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_zh-CN.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_zh-HK.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_zh-TW.json +1 -1
- package/chunks/BlendLayers.glsl.js +2 -2
- package/chunks/ChapmanAtmosphere.glsl.js +17 -17
- package/chunks/CheckerBoard.glsl.js +3 -3
- package/chunks/Clouds.glsl.js +2 -2
- package/chunks/CloudsComposition.glsl.js +1 -1
- package/chunks/ColorMaterial.glsl.js +12 -12
- package/chunks/ComponentShader.glsl.js +3 -3
- package/chunks/Compositing.glsl.js +1 -1
- package/chunks/DefaultMaterial.glsl.js +33 -33
- package/chunks/EdgeShaderProgram.glsl.js +7 -7
- package/chunks/Fog.glsl.js +10 -12
- package/chunks/HUDMaterial.glsl.js +2 -2
- package/chunks/HighlightComposition.glsl.js +5 -5
- package/chunks/ImageMaterial.glsl.js +6 -6
- package/chunks/LaserlinePath.glsl.js +8 -8
- package/chunks/LineCallout.glsl.js +6 -6
- package/chunks/MeasurementArrow.glsl.js +1 -1
- package/chunks/NativeLine.glsl.js +1 -1
- package/chunks/Path.glsl.js +5 -5
- package/chunks/Pattern.glsl.js +9 -9
- package/chunks/PointRenderer.glsl.js +14 -14
- package/chunks/Precipitation.glsl.js +91 -0
- package/chunks/RealisticTree.glsl.js +21 -21
- package/chunks/RibbonLine.glsl.js +11 -11
- package/chunks/SMAA.glsl.js +40 -40
- package/chunks/ShadedColorMaterial.glsl.js +12 -12
- package/chunks/ShadowCast.glsl.js +6 -6
- package/chunks/ShadowHighlight.glsl.js +4 -4
- package/chunks/SimpleAtmosphere.glsl.js +3 -3
- package/chunks/SlicePlaneMaterial.glsl.js +3 -3
- package/chunks/Stars.glsl.js +3 -3
- package/chunks/Terrain.glsl.js +11 -11
- package/chunks/TextureOnly.glsl.js +2 -2
- package/chunks/WaterSurface.glsl.js +5 -5
- package/chunks/boundedPlane.js +1 -1
- package/chunks/vxlLayer.js +1 -1
- package/core/accessorSupport/watch.js +1 -1
- package/core/clock.js +1 -1
- package/core/jsonMap.js +1 -1
- package/core/loadAll.js +1 -1
- package/core/promiseUtils.js +1 -1
- package/core/reactiveUtils.js +1 -1
- package/form/ExpressionInfo.js +1 -1
- package/geometry/support/frustum.js +1 -1
- package/geometry/support/plane.js +1 -1
- package/interfaces.d.ts +232 -38
- package/layers/VectorTileLayer.js +1 -1
- package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
- package/layers/graphics/featureConversionUtils.js +1 -1
- package/layers/support/LayerContingentValuesCache.js +1 -1
- package/layers/support/TileInfo.js +1 -1
- package/package.json +1 -1
- package/rest/print.js +1 -1
- package/smartMapping/statistics/support/predominanceUtils.d.ts +4 -0
- package/support/arcadeOnDemand.js +1 -1
- package/support/featureFlags.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/FillSymbol3DLayer.js +1 -1
- package/symbols/IconSymbol3DLayer.js +1 -1
- package/symbols/ObjectSymbol3DLayer.js +1 -1
- package/symbols/Symbol3D.js +1 -1
- package/symbols/WebStyleSymbol.js +1 -1
- package/symbols/cim/CIMSymbolRasterizer.js +1 -1
- package/symbols/support/IconSymbol3DLayerResource.js +1 -1
- package/symbols/support/ObjectSymbol3DLayerResource.js +1 -1
- package/symbols/support/Symbol3DAnchorPosition2D.js +1 -1
- package/symbols/support/Symbol3DAnchorPosition3D.js +1 -1
- package/symbols/support/Symbol3DFillMaterial.js +1 -1
- package/symbols/support/Symbol3DIconOutline.js +1 -1
- package/symbols/support/Symbol3DOutline.js +1 -1
- package/symbols/support/Thumbnail.js +1 -1
- package/symbols/support/webStyleSymbolUtils.js +1 -1
- package/views/2d/MapViewConstraints.js +1 -1
- package/views/2d/engine/vectorTiles/SchemaHelper.js +1 -1
- package/views/2d/viewpointUtils.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.glsl.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.js +1 -1
- package/views/3d/environment/CloudsComposition.glsl.js +1 -1
- package/views/3d/environment/CloudsGenerator.js +1 -1
- package/views/3d/environment/CloudsPresets.js +1 -1
- package/views/3d/environment/EnvironmentRenderer.js +1 -1
- package/views/3d/environment/Fog.glsl.js +1 -1
- package/views/3d/environment/Fog.js +1 -1
- package/views/3d/environment/PanoramicAtmosphere.js +1 -1
- package/views/3d/environment/Precipitation.glsl.js +5 -0
- package/views/3d/environment/Precipitation.js +5 -0
- package/views/3d/environment/PrecipitationTechnique.js +5 -0
- package/views/3d/environment/RainyWeather.js +1 -1
- package/views/3d/environment/SimpleAtmosphere.glsl.js +1 -1
- package/views/3d/environment/SimpleAtmosphere.js +1 -1
- package/views/3d/environment/SnowyWeather.js +5 -0
- package/views/3d/environment/Stars.glsl.js +1 -1
- package/views/3d/environment/Stars.js +1 -1
- package/views/3d/environment/weather.js +1 -1
- package/views/3d/interactive/analysisTools/slice/SliceTool.js +1 -1
- package/views/3d/interactive/analysisTools/slice/sliceToolUtils.js +1 -1
- package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.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/PointVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
- package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
- package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
- package/views/3d/layers/GraphicsLayerView3D.js +1 -1
- package/views/3d/layers/GraphicsView3D.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/VectorTileLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Deconflictor.js +1 -1
- package/views/3d/layers/graphics/ElevationAligners.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
- package/views/3d/layers/graphics/graphicUtils.js +1 -1
- package/views/3d/layers/graphics/lineUtils.js +1 -1
- package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
- package/views/3d/layers/graphics/polygonUtils.js +1 -1
- package/views/3d/layers/graphics/symbolComplexity.js +1 -1
- package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
- package/views/3d/layers/i3s/PointRenderer.js +1 -1
- package/views/3d/layers/support/HeatmapFeatureProcessor.js +5 -0
- package/views/3d/layers/support/overlayImageUtils.js +1 -1
- package/views/3d/layers/support/patternUtils.js +1 -1
- package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
- package/views/3d/support/FrustumExtentIntersection.js +1 -1
- package/views/3d/support/LaserLineRenderer.js +1 -1
- package/views/3d/support/LaserlinePathData.js +1 -1
- package/views/3d/support/sunUtils.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/PatchGeometryFactory.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/Tile.js +1 -1
- package/views/3d/terrain/terrainUtils.js +1 -1
- package/views/3d/terrain/tileUtils.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +10 -10
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
- package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js +3 -3
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +12 -12
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +16 -16
- package/views/3d/webgl-engine/core/shaderLibrary/default/RealisticTree.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +3 -3
- package/views/3d/webgl-engine/core/shaderLibrary/raster/BasicGrid.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeMaterialColor.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeShadingNormal.glsl.js +10 -11
- package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadBaseColorTexture.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/shading/Reprojection.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js +10 -10
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/Terrain.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/util/BlendLayers.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
- package/views/3d/webgl-engine/lib/Camera.js +1 -1
- package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
- package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
- package/views/3d/webgl-engine/lib/Geometry.js +1 -1
- package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
- package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
- package/views/3d/webgl-engine/lib/MagnifierHelper.js +1 -1
- package/views/3d/webgl-engine/lib/Material.js +1 -1
- package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
- package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
- package/views/3d/webgl-engine/lib/SmaaRenderPass.js +1 -1
- package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
- package/views/3d/webgl-engine/lib/Texture.js +1 -1
- package/views/3d/webgl-engine/lib/TextureUniformName.js +4 -0
- package/views/3d/webgl-engine/lib/UniformName.js +4 -0
- package/views/3d/webgl-engine/lib/VertexAttribute.js +5 -0
- package/views/3d/webgl-engine/lib/basicInterfaces.js +1 -1
- package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
- package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
- package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/VisualVariableMaterialParameters.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/internal/DefaultBufferWriter.js +1 -1
- package/views/3d/webgl-engine/materials/internal/MaterialUtil.js +1 -1
- package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
- package/views/3d/webgl-engine/materials/internal/waterMaterialUtils.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoard.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HighlightComposition.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/HighlightTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LaserlinePath.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/LaserlinePathTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/Magnifier.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/MeasurementArrow.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/SMAA.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowCastTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowHighlightTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/AdjustProjectedPosition.glsl.js +10 -10
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/DiscardShortEdges.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeShaderProgram.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +21 -21
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineAmplitude.glsl.js +6 -6
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineOffset.glsl.js +13 -13
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/UnpackAttributes.glsl.js +6 -6
- package/views/MapView.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/View.js +1 -1
- package/views/input/recognizers/DoubleTapDrag.js +1 -1
- package/views/input/recognizers/ImmediateDoubleClick.js +1 -1
- package/views/input/recognizers/PointerClickHoldAndDrag.js +1 -1
- package/views/input/recognizers/SingleAndDoubleClick.js +1 -1
- package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
- package/views/support/DefaultsFromMap.js +1 -1
- package/views/support/WatchUpdatingTracking.js +1 -1
- package/views/support/projectionUtils.js +5 -0
- package/views/webgl/BufferObject.js +1 -1
- package/views/webgl/InstanceCounter.js +1 -1
- package/views/webgl/Program.js +1 -1
- package/webdoc/support/{Thumbnail.js → SlideThumbnail.js} +1 -1
- package/webmap/Bookmark.js +1 -1
- package/webmap/Version.js +1 -1
- package/webscene/Slide.js +1 -1
- package/webscene/Version.js +1 -1
- package/webscene/support/SlideVisibleLayer.js +1 -1
- package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.js +1 -1
- package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
- package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
- package/widgets/BasemapGallery/support/basemapCompatibilityUtils.js +1 -1
- package/widgets/BasemapGallery.js +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
- package/widgets/Bookmarks.js +1 -1
- package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.js +1 -1
- package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
- package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
- package/widgets/Search/support/locatorUtils.js +1 -1
- package/widgets/Search.js +1 -1
- package/widgets/Slice/SliceViewModel.js +1 -1
- package/widgets/TimeSlider.js +1 -1
- package/widgets/Weather/WeatherViewModel.js +1 -1
- package/widgets/Weather/css.js +1 -1
- package/widgets/Weather/enums.js +5 -0
- package/widgets/Weather.js +1 -1
- package/widgets/support/InteractiveToolViewModel.js +1 -1
- package/assets/esri/core/workers/chunks/00c5bb5eecb0e89266df.js +0 -1
- package/assets/esri/core/workers/chunks/021a37e2b191298e80b7.js +0 -1
- package/assets/esri/core/workers/chunks/1370c92c40fd6271553c.js +0 -1
- package/assets/esri/core/workers/chunks/14bef72154b3a19561a7.js +0 -1
- package/assets/esri/core/workers/chunks/18668dc45eb9e35530df.js +0 -1
- package/assets/esri/core/workers/chunks/1e4d37c2b9dc83d20a11.js +0 -1
- package/assets/esri/core/workers/chunks/1fbcc8424452d0256bd6.js +0 -1
- package/assets/esri/core/workers/chunks/208a7e24e19fc5633dd7.js +0 -1
- package/assets/esri/core/workers/chunks/22b09e276c9b9f22f0f8.js +0 -1
- package/assets/esri/core/workers/chunks/23b15e7c2f96d260e16c.js +0 -1
- package/assets/esri/core/workers/chunks/25a3e9bc0b4c7e0d3165.js +0 -1
- package/assets/esri/core/workers/chunks/2792ca40f1e92849247c.js +0 -1
- package/assets/esri/core/workers/chunks/2a96f1bba9ce6883e5e0.js +0 -1
- package/assets/esri/core/workers/chunks/3231ee3e090bb4cac3fc.js +0 -1
- package/assets/esri/core/workers/chunks/36a3f6fb4d1d18fcb642.js +0 -1
- package/assets/esri/core/workers/chunks/36e250278b5622ccf068.js +0 -1
- package/assets/esri/core/workers/chunks/395ba088d4864588ff66.js +0 -1
- package/assets/esri/core/workers/chunks/3aa4194dc5497c57647f.js +0 -1
- package/assets/esri/core/workers/chunks/3cc77692b2eee27b9c9e.js +0 -1
- package/assets/esri/core/workers/chunks/40a1e713f63ec77110c0.js +0 -1
- package/assets/esri/core/workers/chunks/4385a268c2a64281d1c1.js +0 -1
- package/assets/esri/core/workers/chunks/46b4bb66a54bbd8e2e57.js +0 -1
- package/assets/esri/core/workers/chunks/4bfbf5a34c9207fdcf44.js +0 -1
- package/assets/esri/core/workers/chunks/5a4a5585ec8027079f32.js +0 -1
- package/assets/esri/core/workers/chunks/5d4863a92b03bebc1b54.js +0 -1
- package/assets/esri/core/workers/chunks/5d991b74d958005c26c4.js +0 -1
- package/assets/esri/core/workers/chunks/634b5ccd7a3ac67f855d.js +0 -1
- package/assets/esri/core/workers/chunks/662d13f68cf3ec92439b.js +0 -1
- package/assets/esri/core/workers/chunks/663ad15b86936eb06b69.js +0 -1
- package/assets/esri/core/workers/chunks/7bc5cc5dbf1b7b70ddac.js +0 -1
- package/assets/esri/core/workers/chunks/7d661129a0d8c466eeec.js +0 -1
- package/assets/esri/core/workers/chunks/8070972c0efb78523b68.js +0 -1
- package/assets/esri/core/workers/chunks/85e27fd949475f9a6bbc.js +0 -1
- package/assets/esri/core/workers/chunks/8b6ab6202a40fe622833.js +0 -1
- package/assets/esri/core/workers/chunks/96ab518eb6ba11333dee.js +0 -1
- package/assets/esri/core/workers/chunks/9796d54ff12b6429164a.js +0 -1
- package/assets/esri/core/workers/chunks/98986e6601b0366376b4.js +0 -1
- package/assets/esri/core/workers/chunks/9cdcf9309d6feda70185.js +0 -1
- package/assets/esri/core/workers/chunks/aa861b8eae6c85f3dad4.js +0 -1
- package/assets/esri/core/workers/chunks/aace7e1fef256bb961c9.js +0 -1
- package/assets/esri/core/workers/chunks/ad081d8e49e7f90c3c26.js +0 -1
- package/assets/esri/core/workers/chunks/af5694b4d278cf1db2d9.js +0 -1
- package/assets/esri/core/workers/chunks/afbb4f802ca5774f0326.js +0 -1
- package/assets/esri/core/workers/chunks/b2c5f92e3d7606297ca9.js +0 -1
- package/assets/esri/core/workers/chunks/b8316c6469a543029bc6.js +0 -1
- package/assets/esri/core/workers/chunks/ba615f118a3a8970ef25.js +0 -1
- package/assets/esri/core/workers/chunks/ba6654a885be4b7a43f0.js +0 -1
- package/assets/esri/core/workers/chunks/bf0a65b4be31959f921d.js +0 -1
- package/assets/esri/core/workers/chunks/c11474b702dfb94e8e87.js +0 -1
- package/assets/esri/core/workers/chunks/c890c7fca27170e3341f.js +0 -1
- package/assets/esri/core/workers/chunks/c976785f2391c77d8a30.js +0 -1
- package/assets/esri/core/workers/chunks/ca2f5faa01d99c21ec14.js +0 -1
- package/assets/esri/core/workers/chunks/cef4af64860ebbfc1c47.js +0 -1
- package/assets/esri/core/workers/chunks/cfbffa429d88e7709c3f.js +0 -1
- package/assets/esri/core/workers/chunks/d24c4fbc567486b1188f.js +0 -1
- package/assets/esri/core/workers/chunks/de6cff7b6cbbf99b20d1.js +0 -981
- package/assets/esri/core/workers/chunks/e4f93c55eaefab4192b5.js +0 -1
- package/assets/esri/core/workers/chunks/e59764ee8cf25d4f74e2.js +0 -1
- package/assets/esri/core/workers/chunks/ec89466f76d0ba22525e.js +0 -1
- package/assets/esri/core/workers/chunks/ee45618c45806ab654cb.js +0 -1
- package/assets/esri/core/workers/chunks/f467c8f1fce22f6f599c.js +0 -1
- package/assets/esri/core/workers/chunks/f4baa5ea2e42b1317941.js +0 -1
- package/assets/esri/core/workers/chunks/face43cf5abcd2f5bd9d.js +0 -1
- package/assets/esri/core/workers/chunks/ffaf091c6023225cf5aa.js +0 -1
package/webmap/Bookmark.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../chunks/tslib.es6.js";import t from"../TimeExtent.js";import o from"../Viewpoint.js";import{deprecatedProperty as r}from"../core/deprecate.js";import i from"../core/Error.js";import{IdentifiableMixin as n}from"../core/Identifiable.js";import{JSONSupport as s}from"../core/JSONSupport.js";import{clone as p}from"../core/lang.js";import m from"../core/Logger.js";import{isSome as a,isNone as c}from"../core/maybe.js";import{property as l}from"../core/accessorSupport/decorators/property.js";import{cast as u}from"../core/accessorSupport/decorators/cast.js";import{reader as w}from"../core/accessorSupport/decorators/reader.js";import{subclass as y}from"../core/accessorSupport/decorators/subclass.js";import{writer as
|
|
5
|
+
import{_ as e}from"../chunks/tslib.es6.js";import t from"../TimeExtent.js";import o from"../Viewpoint.js";import{deprecatedProperty as r}from"../core/deprecate.js";import i from"../core/Error.js";import{IdentifiableMixin as n}from"../core/Identifiable.js";import{JSONSupport as s}from"../core/JSONSupport.js";import{clone as p}from"../core/lang.js";import m from"../core/Logger.js";import{isSome as a,isNone as c}from"../core/maybe.js";import{property as l}from"../core/accessorSupport/decorators/property.js";import{cast as u}from"../core/accessorSupport/decorators/cast.js";import{reader as w}from"../core/accessorSupport/decorators/reader.js";import{subclass as y}from"../core/accessorSupport/decorators/subclass.js";import{writer as d}from"../core/accessorSupport/decorators/writer.js";import{ensureType as h}from"../core/accessorSupport/ensureType.js";import f from"../geometry/Extent.js";import{SlideThumbnail as j}from"../webdoc/support/SlideThumbnail.js";var v;const b="esri.webmap.Bookmark",x=m.getLogger(b);let g=v=class extends(n(s)){constructor(e){super(e),this.name=null,this.thumbnail=new j,this.timeExtent=null}set extent(e){r(x,"extent",{replacement:"viewpoint",version:"4.17"}),this._set("viewpoint",new o({targetGeometry:e.clone()})),this._set("extent",e)}castThumbnail(e){return"string"==typeof e?new j({url:e}):h(j,e)}set viewpoint(e){const{targetGeometry:t,scale:o}=e;a(t)&&("extent"===t.type?this._set("extent",t.clone()):"point"===t.type&&c(o)&&x.warn("Bookmark.viewpoint should include 'scale' when its targetGeometry is a point.",e)),this._set("viewpoint",e)}readViewpoint(e,t){const{extent:r,viewpoint:i}=t;return o.fromJSON(i||{targetGeometry:r})}writeViewpoint(e,t,o,r){if(!e)return;const{targetGeometry:n}=e;if(a(n)&&"extent"!==n.type){const e="Bookmark.viewpoint cannot be written to JSON when the viewpoint's targetGeometry is not an extent.";null!=r&&r.messages?r.messages.push(new i("property:unsupported",e)):x.error(e)}else t[o]=e.toJSON()}clone(){return new v(p({name:this.name,thumbnail:this.thumbnail,timeExtent:this.timeExtent,viewpoint:this.viewpoint}))}};e([l({type:f,nonNullable:!0,json:{read:!1,write:{isRequired:!0}}})],g.prototype,"extent",null),e([l({type:String,nonNullable:!0,json:{write:{isRequired:!0}}})],g.prototype,"name",void 0),e([l({type:j,json:{write:{overridePolicy:e=>({enabled:!(!e||!e.url)})}}})],g.prototype,"thumbnail",void 0),e([u("thumbnail")],g.prototype,"castThumbnail",null),e([l({type:t,json:{write:!0}})],g.prototype,"timeExtent",void 0),e([l({type:o,nonNullable:!0,json:{write:!0}})],g.prototype,"viewpoint",null),e([w("viewpoint",["extent","viewpoint"])],g.prototype,"readViewpoint",null),e([d("viewpoint")],g.prototype,"writeViewpoint",null),g=v=e([y(b)],g);const S=g;export{S as default};
|
package/webmap/Version.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{Version as
|
|
5
|
+
import{Version as r}from"../core/Version.js";class s extends r{constructor(r,s){super(r,s,"webmap")}}export{s as Version};
|
package/webscene/Slide.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../chunks/tslib.es6.js";import t from"../Basemap.js";import i from"../Viewpoint.js";import{result as r}from"../core/asyncUtils.js";import s from"../core/Collection.js";import{referenceSetter as n}from"../core/collectionUtils.js";import{JSONSupport as o}from"../core/JSONSupport.js";import a from"../core/Logger.js";import{isSome as l}from"../core/maybe.js";import{eachAlways as p,onAbortOrThrow as m,isAbortError as h,all as c}from"../core/promiseUtils.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import"../core/has.js";import{cast as d}from"../core/accessorSupport/decorators/cast.js";import{subclass as y}from"../core/accessorSupport/decorators/subclass.js";import{ensureType as g}from"../core/accessorSupport/ensureType.js";import{h as v}from"../chunks/vec3.js";import{c as b}from"../chunks/vec3f64.js";import w from"../layers/Layer.js";import{isOperationalLayer as f}from"../layers/mixins/OperationalLayer.js";import{ensureType as L,clonePreservingTiledLayers as j}from"../support/basemapUtils.js";import{moduloPositive as T}from"../views/3d/support/mathUtils.js";import{toCamera as _}from"../views/3d/support/viewpointUtils.js";import{TaskPriority as C}from"../views/support/Scheduler.js";import S
|
|
5
|
+
import{_ as e}from"../chunks/tslib.es6.js";import t from"../Basemap.js";import i from"../Viewpoint.js";import{result as r}from"../core/asyncUtils.js";import s from"../core/Collection.js";import{referenceSetter as n}from"../core/collectionUtils.js";import{JSONSupport as o}from"../core/JSONSupport.js";import a from"../core/Logger.js";import{isSome as l}from"../core/maybe.js";import{eachAlways as p,onAbortOrThrow as m,isAbortError as h,all as c}from"../core/promiseUtils.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import"../core/has.js";import{cast as d}from"../core/accessorSupport/decorators/cast.js";import{subclass as y}from"../core/accessorSupport/decorators/subclass.js";import{ensureType as g}from"../core/accessorSupport/ensureType.js";import{h as v}from"../chunks/vec3.js";import{c as b}from"../chunks/vec3f64.js";import w from"../layers/Layer.js";import{isOperationalLayer as f}from"../layers/mixins/OperationalLayer.js";import{ensureType as L,clonePreservingTiledLayers as j}from"../support/basemapUtils.js";import{moduloPositive as T}from"../views/3d/support/mathUtils.js";import{toCamera as _}from"../views/3d/support/viewpointUtils.js";import{TaskPriority as C}from"../views/support/Scheduler.js";import{SlideThumbnail as S}from"../webdoc/support/SlideThumbnail.js";import U from"./Lighting.js";import V from"./support/Description.js";import{SlideEnvironment as x}from"./support/SlideEnvironment.js";import D from"./support/SlideGround.js";import{SlideVisibleLayer as E}from"./support/SlideVisibleLayer.js";import I from"./support/Title.js";let k=0;const O=s.ofType(E),R=a.getLogger("esri.webscene.Slide");let A=class extends o{constructor(e){super(e),this.id=Date.now().toString(16)+"-slide-"+k++,this.title=new I,this.description=new V,this.thumbnail=new S,this.viewpoint=null,this.basemap=null,this.ground=null,this.environment=new x,this.visibleLayers=new O}destroy(){this.visibleLayers.removeAll(),this.basemap=null,this.thumbnail&&this.thumbnail.destroy(),this.description=null,this.title=null,this.thumbnail=null}castTitle(e){return"string"==typeof e?new I({text:e}):g(I,e)}castDescription(e){return"string"==typeof e?new V({text:e}):g(V,e)}castThumbnail(e){return"string"==typeof e?new S({url:e}):g(S,e)}castBasemap(e){return L(e)}set visibleLayers(e){this._set("visibleLayers",n(e,this._get("visibleLayers"),O))}castVisibleLayers(e){return e&&"function"==typeof e.map?e.map((e=>{if("string"==typeof e)return{id:e};if(e instanceof w){const t=M(e);return{id:e.id,sublayerIds:t}}return e.id?{id:e.id,sublayerIds:e.sublayerIds}:(R.warn('Invalid visible layer, expected { id }, Layer or "id"'),e)})):null}clone(){return new(0,this.constructor)({id:this.id,title:this.title.clone(),thumbnail:this.thumbnail.clone(),description:this.description&&this.description.clone()||null,viewpoint:this.viewpoint&&this.viewpoint.clone()||null,basemap:this.basemap&&this.basemap.clone()||null,ground:this.ground&&this.ground.clone()||null,visibleLayers:this.visibleLayers.clone(),environment:this.environment&&this.environment.clone()||null})}_updateVisibleLayersFrom(e){const t=[];return p(this._getLayers(e.map).map((i=>e.whenLayerView(i).then((e=>{if(e.visible){const r=M(i);t.push(new E({id:e.layer.id,sublayerIds:r}))}})))).toArray()).then((()=>{this.visibleLayers.removeAll(),this.visibleLayers.addMany(t)}))}updateFrom(e,t){return t={screenshot:{format:"png",quality:80,width:120,height:75,disableDecorations:!0,...t&&t.screenshot}},e.when((()=>(this.viewpoint=e.viewpoint.clone(),this.environment.lighting=U.prototype.clone.apply(e.environment.lighting),this.basemap=e.map.basemap&&e.map.basemap.clone()||null,this.ground=e.map.ground?D.fromGround(e.map.ground):null,this._updateVisibleLayersFrom(e)))).then((()=>e.takeScreenshot(t.screenshot))).then((e=>(this.thumbnail=new S({url:e.dataUrl}),this)))}async applyTo(e,t){l(this._applyToController)&&this._applyToController.abort();let i=new AbortController;this._applyToController=i;const s=m(t,(()=>i.abort())),n=e.resourceController.scheduler.registerTask(C.SLIDE);let o=!1;t={animate:!0,...t,signal:this._applyToController.signal};const a=async()=>{await c([n.schedule((()=>o=this._setViewpointOfInterest(e,t))),n.schedule((()=>this._applyBasemap(e,t)),t.signal)]),await c([n.schedule((()=>this._applyLayerVisibility(e)),t.signal),n.schedule((()=>this._applyGround(e)),t.signal),n.schedule((()=>this._applyViewpoint(e,t)),t.signal)])},p=await r(e.addUpdatingPromise(a()));if(o&&(e.contentCamera=null),n.remove(),this._applyToController===i&&(this._applyToController=null),i=null,null==s||s.remove(),!1===p.ok)throw p.error;return this}async _applyBasemap(e,t){if(this.basemap){try{await this.basemap.load(t)}catch(i){if(h(i))throw i}e.map.basemap=j(this.basemap,e.map.basemap)}}_applyGround(e){this.ground&&(e.map.ground=this.ground.cloneAndApplyTo(e.map.ground))}_getLayers(e){const t=new s;return this._collectLayers(e,t),this._collectLayers(e.ground,t),t}_collectLayers(e,t){e.layers.forEach((e=>{f(e)&&(t.add(e),"layers"in e&&this._collectLayers(e,t))}))}_applyLayerVisibility(e){if(!this.visibleLayers)return;this._getLayers(e.map).forEach((e=>{const t=this.visibleLayers.find((t=>t.id===e.id));e.visible=null!=t;const i=t&&t.sublayerIds,r=q(e);i&&r&&r.forEach((e=>e.visible=i.indexOf(e.id)>=0))}))}_setViewpointOfInterest(e,t){if(e.state.fixedContentCamera||!this.viewpoint||t.ignoreViewpoint||!t.useDestinationCamera)return!1;const i=_(e,this.viewpoint);return e.contentCamera=i,l(i)}async _applyViewpoint(e,t){if(this.viewpoint&&!t.ignoreViewpoint){if(l(this.viewpoint.camera)&&(this.viewpoint.camera.fov=e.camera.fov),t.animate&&this.get("environment.lighting.date"))return void await this._animateToLighting(e,t);t.animate&&(e.environment.applyLighting(this.environment.lighting.clone()),await e.goTo(this.viewpoint,t)),e.viewpoint=this.viewpoint}e.environment.applyLighting(this.environment.lighting.clone())}async _animateToLighting(e,t){let i=null;"global"===e.viewingMode&&(i=this._animateLightingWithCamera(e)),e.environment.lighting.cameraTrackingEnabled=!1,e.environment.lighting.directShadowsEnabled=this.environment.lighting.directShadowsEnabled,null!=this.environment.lighting.displayUTCOffset&&(e.environment.lighting.displayUTCOffset=this.environment.lighting.displayUTCOffset);const r=e.goTo(this.viewpoint,t),s=()=>{i&&i.remove(),e.environment.lighting.cameraTrackingEnabled=!0};return r.then((()=>{e.environment.applyLighting(this.environment.lighting.clone()),s()}),(e=>{throw s(),e}))}_getTime(e){return[e.getTime(),3600*e.getUTCHours()+60*e.getUTCMinutes()+e.getUTCSeconds()]}_setTime(e,t,i){return e.setTime(t),e.setUTCHours(i/3600),e.setUTCMinutes(i%3600/60),e.setUTCSeconds(i%3600%60),e}_animateLightingWithCamera(e){const t=new Date(e.environment.lighting.date.toString()),[i,r]=this._getTime(t),[s,n]=this._getTime(this.environment.lighting.date),o=G(r,n),a=e.renderCoordsHelper,p=b();a.toRenderCoords(e.camera.position,p);const m=b(),h=b();l(this.viewpoint.camera)&&a.toRenderCoords(this.viewpoint.camera.position,m);const c=new Date;return e.watch("camera",(t=>{a.toRenderCoords(t.position,h);const n=v(p,h),l=v(m,h);let u=0;n+l!==0&&(u=n/(n+l));const d=i+(s-i)*u,y=H(r,o*u);e.environment.lighting.date=this._setTime(c,d,y)}))}static createFrom(e,t){return(new this).updateFrom(e,t)}};function q(e){if("building-scene"===e.type||"map-image"===e.type)return e.allSublayers.toArray()}function M(e){const t=q(e);if(t)return t.filter((e=>e.visible)).map((e=>e.id))}e([u({type:String,json:{write:{isRequired:!0}}})],A.prototype,"id",void 0),e([u({type:I,json:{default:()=>new I({text:""}),write:{isRequired:!0}}})],A.prototype,"title",void 0),e([d("title")],A.prototype,"castTitle",null),e([u({type:V,json:{write:{overridePolicy:e=>({enabled:!(!e||!e.text)})}}})],A.prototype,"description",void 0),e([d("description")],A.prototype,"castDescription",null),e([u({type:S,json:{default:()=>new S({url:""}),write:{isRequired:!0}}})],A.prototype,"thumbnail",void 0),e([d("thumbnail")],A.prototype,"castThumbnail",null),e([u({type:i,nonNullable:!0,json:{write:{isRequired:!0}}})],A.prototype,"viewpoint",void 0),e([u({type:t,json:{read:{source:"baseMap"},write:{target:"baseMap"}}})],A.prototype,"basemap",void 0),e([d("basemap")],A.prototype,"castBasemap",null),e([u({type:D,json:{write:!0}})],A.prototype,"ground",void 0),e([u({type:O,json:{write:{isRequired:!0}}})],A.prototype,"visibleLayers",null),e([d("visibleLayers")],A.prototype,"castVisibleLayers",null),e([u({type:x,json:{write:!0}})],A.prototype,"environment",void 0),A=e([y("esri.webscene.Slide")],A);const B=86400,F=43200;function G(e,t){let i=t-e;return i>F&&(i-=B),i<-F&&(i+=B),i}function H(e,t){return T(e+t,B)}const N=A;export{N as default};
|
package/webscene/Version.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{Version as s}from"../core/Version.js";class e extends s{constructor(s,e){super(s,e,"webscene")}get supportsGround(){return this.since(1,8)}get supportsVisibleElevationLayersInSlides(){return this.lessThan(1,8)}}export{e as Version
|
|
5
|
+
import{Version as s}from"../core/Version.js";class e extends s{constructor(s,e){super(s,e,"webscene")}get supportsGround(){return this.since(1,8)}get supportsVisibleElevationLayersInSlides(){return this.lessThan(1,8)}}export{e as Version};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as r}from"../../chunks/tslib.es6.js";import{JSONSupport as s}from"../../core/JSONSupport.js";import{clone as e}from"../../core/lang.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import{Integer as t}from"../../core/accessorSupport/ensureType.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";var i;let c=i=class extends s{constructor(r){super(r),this.id="",this.sublayerIds=null}clone(){return new i({id:this.id,sublayerIds:e(this.sublayerIds)})}};r([o({type:String,json:{write:!0}})],c.prototype,"id",void 0),r([o({type:[t],json:{read:{source:"subLayerIds"},write:{target:"subLayerIds"}}})],c.prototype,"sublayerIds",void 0),c=i=r([p("esri.webscene.support.SlideVisibleLayer")],c);
|
|
5
|
+
import{_ as r}from"../../chunks/tslib.es6.js";import{JSONSupport as s}from"../../core/JSONSupport.js";import{clone as e}from"../../core/lang.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import{Integer as t}from"../../core/accessorSupport/ensureType.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";var i;let c=i=class extends s{constructor(r){super(r),this.id="",this.sublayerIds=null}clone(){return new i({id:this.id,sublayerIds:e(this.sublayerIds)})}};r([o({type:String,json:{write:!0}})],c.prototype,"id",void 0),r([o({type:[t],json:{read:{source:"subLayerIds"},write:{target:"subLayerIds"}}})],c.prototype,"sublayerIds",void 0),c=i=r([p("esri.webscene.support.SlideVisibleLayer")],c);export{c as SlideVisibleLayer};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../analysis/AreaMeasurement.js";import s from"../../core/Logger.js";import{isNone as i,isSome as r,unwrap as n}from"../../core/maybe.js";import{measurementAreaUnits as o}from"../../core/unitUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import{defaultUnitPropertyMetadata as u}from"../../properties/defaultUnit.js";import p from"../../views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js";import{InteractiveAnalysisViewModel as d}from"../support/InteractiveAnalysisViewModel.js";const
|
|
5
|
+
import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../analysis/AreaMeasurement.js";import s from"../../core/Logger.js";import{isNone as i,isSome as r,unwrap as n}from"../../core/maybe.js";import{measurementAreaUnits as o}from"../../core/unitUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import{defaultUnitPropertyMetadata as u}from"../../properties/defaultUnit.js";import p from"../../views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js";import{InteractiveAnalysisViewModel as d}from"../support/InteractiveAnalysisViewModel.js";const h=s.getLogger("esri.widgets.AreaMeasurement3D.AreaMeasurement3DViewModel");let c=class extends d{constructor(e){super(e),this.analysisView=null,this.logger=h,this.supportedViewType="3d",this.unsupportedErrorMessage="AreaMeasurement3DViewModel is only supported in 3D views.",this._userUnitOptions=null,this._userUnit=null}initialize(){this.analysis.unit=this.unit}get state(){return this.disabled?"disabled":i(this.tool)?"ready":this.tool.state}get measurement(){if(i(this.tool)||this.disabled||this.tool.destroyed||"pending"===this.tool.toolState)return null;const e=this.tool.measurementView;if("pending"===e.state||"destroyed"===e.state)return null;const t=e.analysisVisualization,s=t.viewData,r=s.measurementData,n=s.validMeasurement,o="euclidean"===s.mode,a=0===(o?r.intersectingSegments:r.geodesicIntersectingSegments).size,l=a?n?"available":"unavailable":"invalid";return{mode:o?"euclidean":"geodesic",area:{text:a&&n?t.areaLabel:null,state:l},perimeterLength:{text:a&&n?t.perimeterLengthLabel:null,state:l}}}set unitOptions(e){this._userUnitOptions=e,this._set("unitOptions",this._filteredOrAllUnits(this._userUnitOptions))}get unitOptions(){return this._filteredOrAllUnits(this._userUnitOptions)}set unit(e){this._userUnit=e?this._findSelectableUnit(e,this._userUnit):null,this.analysis.unit=this._userUnit}get unit(){return r(this._userUnit)?(this._userUnit=this._findSelectableUnit(this._userUnit,this.defaultUnit),this._userUnit):this._findSelectableUnit(this.defaultUnit)}get ready(){return r(this.analysisView)}start(){return this.clear(),this.createTool()}clear(){this.removeTool(),this.analysis.geometry=null}constructAnalysis(){return new t}constructTool(){return new p({view:n(this.view),analysis:this.analysis,visible:this.visible})}_findSelectableUnit(e,t){const s=this.unitOptions;return-1!==s.indexOf(e)?e:r(t)?this._findSelectableUnit(t):s[0]}_filteredOrAllUnits(e){if(i(e))return o.slice();const t=e.filter((e=>-1!==o.indexOf(e)));return 0===t.length?o.slice():t}async onConnectToAnalysisView(e){r(this.view)&&this.view.ready&&(this.analysisView=e)}onDisconnectFromAnalysisView(){this.analysisView=null}};e([a({readOnly:!0})],c.prototype,"state",null),e([a({readOnly:!0})],c.prototype,"measurement",null),e([a()],c.prototype,"unitOptions",null),e([a()],c.prototype,"unit",null),e([a()],c.prototype,"analysisView",void 0),e([a()],c.prototype,"ready",null),e([a(u)],c.prototype,"defaultUnit",void 0),e([a()],c.prototype,"_userUnit",void 0),c=e([l("esri.widgets.AreaMeasurement3D.AreaMeasurement3DViewModel")],c);const m=c;export{m as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as
|
|
5
|
+
import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../core/Collection.js";import{HandleOwnerMixin as i}from"../../core/HandleOwner.js";import s from"../../core/Loadable.js";import{isSome as r}from"../../core/maybe.js";import{watch as a,on as o}from"../../core/reactiveUtils.js";import{property as p}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{cast as c}from"../../core/accessorSupport/decorators/cast.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import{i as l,l as m}from"../../chunks/pe.js";import{canProjectWithoutEngine as u}from"../../geometry/projection.js";import{equals as h}from"../../geometry/support/spatialReferenceUtils.js";import{contentEquals as v}from"../../support/basemapUtils.js";import{default3DCompatibility as d,default2DCompatibility as f}from"./support/basemapCompatibilityUtils.js";import y from"./support/BasemapGalleryItem.js";import b from"./support/LocalBasemapsSource.js";import w from"./support/PortalBasemapsSource.js";const j=t.ofType(y);function _(e){return e&&"esri.portal.Portal"===e.declaredClass}function B(e){return e&&!(e instanceof w)&&(!!e.portal||!!e.query)}function g(e){return e&&"basemaps"in e&&"state"in e&&"refresh"in e}let F=class extends(i(s)){constructor(e){super(e),this.items=new j,this.source=new w,this.view=null}initialize(){const e=()=>this._recreateItems();this.handles.add([a((()=>"ready"===this.state?this.compatibilityFunction:null),(()=>this._updateItems())),o((()=>{var e;return null==(e=this.source)?void 0:e.basemaps}),"change",e,{onListenerAdd:e})])}get activeBasemap(){var e,t,i;return null!=(e=null==(t=this.view)||null==(i=t.map)?void 0:i.basemap)?e:null}set activeBasemap(e){if(!this.view.map)return;if(!e)return this.view.map.basemap=e,void this._clearOverride("activeBasemap");const{spatialReference:t}=this.items.find((t=>t.basemap===e));if("spatialReferenceLocked"in this.view&&!this.view.spatialReferenceLocked){const i=this.view.spatialReference;if(r(t)&&!h(i,t)&&!u(this.view.spatialReference,t)&&!l())return this._override("activeBasemap",e),void m().then((()=>{this._get("activeBasemap")===e&&(this.view.map.basemap=e,this.view.spatialReference=t,this._clearOverride("activeBasemap"))}),(()=>{}));this.view.map.basemap=e,this._clearOverride("activeBasemap"),r(t)&&!h(this.view.spatialReference,t)&&(this.view.spatialReference=t)}else this.view.map.basemap=e,this._clearOverride("activeBasemap")}get compatibilityFunction(){if(void 0===this._get("compatibilityFunction")){var e;return"3d"===(null==(e=this.view)?void 0:e.type)?d:f}return this._get("compatibilityFunction")}set compatibilityFunction(e){this._set("compatibilityFunction",e)}castSource(e){return Array.isArray(e)||t.isCollection(e)?new b({basemaps:e}):_(e)?new w({portal:e}):B(e)?new w(e):g(e)?e:null}get state(){var e;return null!=(e=this.view)&&e.ready&&this.source?"ready":"disabled"}basemapEquals(e,t){return v(e,t)}refresh(){this._recreateItems()}load(e){return this.addResolvingPromise(s.isLoadable(this.source)?this.source.load(e):null),Promise.resolve(this)}_recreateItems(){var e;const t=null==(e=this.source)?void 0:e.basemaps,{view:i,compatibilityFunction:s}=this;this.items.removeAll().forEach((e=>e.destroy())),t&&this.items.addMany(t.map((e=>new y({basemap:e,compatibilityFunction:s,view:i}))))}_updateItems(){for(const e of this.items)e.compatibilityFunction=this.compatibilityFunction,e.view=this.view}};e([p()],F.prototype,"activeBasemap",null),e([p()],F.prototype,"compatibilityFunction",null),e([p({readOnly:!0,type:j})],F.prototype,"items",void 0),e([p()],F.prototype,"source",void 0),e([c("source")],F.prototype,"castSource",null),e([p({readOnly:!0})],F.prototype,"state",null),e([p()],F.prototype,"view",void 0),F=e([n("esri.widgets.BasemapGallery.BasemapGalleryViewModel")],F);const R=F;export{R as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as
|
|
5
|
+
import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../core/Accessor.js";import{HandleOwnerMixin as r}from"../../../core/HandleOwner.js";import{isAbortError as s}from"../../../core/promiseUtils.js";import{watch as a,whenOnce as i}from"../../../core/reactiveUtils.js";import{property as l}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import"../../../core/accessorSupport/ensureType.js";import{subclass as o}from"../../../core/accessorSupport/decorators/subclass.js";let n=class extends(r(t)){constructor(e){super(e),this.compatibilityFunction=null,this.error=null,this.state="loading",this.view=null}initialize(){const e=()=>this.refresh();this.handles.add([a((()=>{var e;return null==(e=this.basemap)?void 0:e.loadStatus}),e),a((()=>this.compatibilityFunction),e),a((()=>{var e;return this.view&&"basemapTerrain"in this.view&&(null==(e=this.view.basemapTerrain)?void 0:e.tilingScheme)}),e),a((()=>{var e;return null==(e=this.view)?void 0:e.ready}),e),a((()=>{var e;return null==(e=this.view)?void 0:e.spatialReference}),e)]),this.refresh()}destroy(){this._cancelRefresh(),this.basemap=null,this.compatibilityFunction=null,this.view=null}set basemap(e){const t=this._get("basemap");t&&t.cancelLoad(),e&&e.load().catch((()=>{})),this._set("basemap",e)}get spatialReference(){return this.spatialReferenceTask.spatialReference}get spatialReferenceTask(){var e,t;const{basemap:r,view:s}=this;if(!r||!s)return{spatialReference:null,updating:!1};if("not-loaded"===r.loadStatus)return r.load(),{spatialReference:null,updating:!0};if(r.spatialReference)return{spatialReference:r.spatialReference,updating:!1};if(0===r.baseLayers.length)return{spatialReference:null,updating:!1};const a=r.baseLayers.getItemAt(0);if("not-loaded"===a.loadStatus)return a.load(),{spatialReference:null,updating:!0};const i=(("supportedSpatialReferences"in a?a.supportedSpatialReferences:null)||["tileInfo"in a?a.tileInfo.spatialReference:a.spatialReference]).filter(Boolean);return{spatialReference:null!=(e=null!=(t=i.find((e=>s.spatialReference.equals(e))))?t:i[0])?e:null,updating:!1}}refresh(){var e;this._cancelRefresh(),this._set("state","loading");const t=null==(e=this.basemap)?void 0:e.loadStatus;if("loaded"!==t&&"failed"!==t)return;if(!this.compatibilityFunction)return void("loaded"===t?(this._set("state","ready"),this._set("error",null)):(this._set("state","error"),this._set("error",this.basemap.loadError)));const r=new AbortController,{signal:a}=r;this.compatibilityFunction(this,{signal:a}).then((()=>i((()=>!this.spatialReferenceTask.updating),a))).then((()=>{this._set("state","ready"),this._set("error",null)})).catch((e=>{s(e)||(this._set("state","error"),this._set("error",e))})),this._refreshController=r}_cancelRefresh(){this._refreshController&&(this._refreshController.abort(),this._refreshController=null)}};e([l()],n.prototype,"basemap",null),e([l()],n.prototype,"compatibilityFunction",void 0),e([l({readOnly:!0})],n.prototype,"error",void 0),e([l({readOnly:!0})],n.prototype,"spatialReference",null),e([l({readOnly:!0})],n.prototype,"spatialReferenceTask",null),e([l({readOnly:!0})],n.prototype,"state",void 0),e([l()],n.prototype,"view",void 0),n=e([o("esri.widgets.BasemapGallery.support.BasemapGalleryItem")],n);const p=n;export{p as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../core/Error.js";import{throwIfAborted as
|
|
5
|
+
import e from"../../../core/Error.js";import{throwIfAborted as t}from"../../../core/promiseUtils.js";import{isTiledLayer as a}from"../../../layers/support/layerUtils.js";import{stringFromViewingMode as i,ViewingMode as r}from"../../../views/ViewingMode.js";import{checkIfTileInfoSupportedForView as n}from"../../../views/3d/terrain/terrainUtils.js";import o from"../../../views/3d/terrain/TilingScheme.js";import{isSpatialReferenceSupported as l}from"../../../views/support/spatialReferenceSupport.js";async function s(e,a={}){await m(e,a),t(a)}async function p(e,i={}){const{basemap:r,view:n}=e;if("spatialReferenceLocked"in n&&!n.spatialReferenceLocked)return;if(await r.load(i),t(i),0===r.baseLayers.length)return;const o=r.baseLayers.getItemAt(0);if(!a(o))return;if(r.spatialReference){if(n.spatialReference.equals(r.spatialReference))return;c()}await o.load(i),t(i);const l=(("supportedSpatialReferences"in o?o.supportedSpatialReferences:null)||["tileInfo"in o?o.tileInfo.spatialReference:null]).filter(Boolean);0!==l.length&&l.every((e=>!n.spatialReference.equals(e)))&&c()}function c(){throw new e("basemap-compatibility:incompatible-spatial-reference","Basemap spatial reference is not compatible with the view")}async function m(t,a){const{basemap:i,view:r}=t;if(await i.load(a),0===i.baseLayers.length)return;const n=f(i.baseLayers.concat(i.referenceLayers));if(n.length)throw n[0];const o=i.baseLayers.getItemAt(0);try{await o.load(a)}catch(l){const t="basemap-compatibility:unknown-error",a="Unknown basemap compatibility error",{name:i=t,message:r=a,details:n}=l;throw new e(i,r,n)}u(o,r)}function f(t){const a=["ArcGISTiledImageServiceLayer","ArcGISTiledMapServiceLayer","OpenStreetMap","VectorTileLayer","WebTiledLayer"];return t.toArray().filter((e=>-1===a.indexOf(e.operationalLayerType))).map((t=>new e("basemap-compatibility:unsupported-basemap-layer-type","Unsupported basemap layer type ${operationalLayerType}",{layer:t,operationalLayerType:t.operationalLayerType||"unknown"})))}function u(t,a){const s=t.tileInfo;if(!s)return;const p=a.state.viewingMode;if(!p)return;if(!l(s.spatialReference,p))throw new e(`basemapgalleryitem:spatial-reference-unsupported-${i(p)}`,`Basemap spatial reference is unsupported in ${i(p)} mode`);if(p===r.Global){let a=n(s,t.fullExtent,null,r.Global);if(a&&t.tileInfo.getOrCreateCompatible(256)&&!n(t.tileInfo.getOrCreateCompatible(256),t.fullExtent,null,r.Global)&&(a=null),a){const t=s.spatialReference.isWebMercator?"web-mercator":"wgs84";throw new e(`basemapgalleryitem:tiling-scheme-unsupported-${t}-global`,"Basemap tiling scheme is unsupported in global mode",{error:a})}}else if(o.checkUnsupported(s))throw new e("basemapgalleryitem:tiling-scheme-unsupported-local","Basemap tiling scheme is unsupported in local mode");const c=a.get("basemapTerrain.tilingScheme");if(c&&!c.compatibleWith(s)&&(!t.tileInfo.getOrCreateCompatible(256)||!c.compatibleWith(t.tileInfo.getOrCreateCompatible(256))))throw new e("basemapgalleryitem:tiling-scheme-incompatible","Basemap tiling scheme is incompatible with the view")}export{p as default2DCompatibility,s as default3DCompatibility};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../chunks/tslib.es6.js";import{getAssetUrl as s}from"../assets.js";import a from"../core/Handles.js";import{on as t,whenOnce as i}from"../core/watchUtils.js";import{aliasOf as r}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as o}from"../core/accessorSupport/decorators/property.js";import{subclass as l}from"../core/accessorSupport/decorators/subclass.js";import m from"./Widget.js";import d from"./BasemapGallery/BasemapGalleryViewModel.js";import{Heading as p}from"./support/Heading.js";import{accessibleHandler as c}from"./support/decorators/accessibleHandler.js";import{messageBundle as n}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{tsx as g}from"./support/jsxFactory.js";import"./support/widgetUtils.js";const h={base:"esri-basemap-gallery esri-widget esri-widget--panel-height-only",sourceLoading:"esri-basemap-gallery--source-loading",loader:"esri-basemap-gallery__loader",item:"esri-basemap-gallery__item",itemContainer:"esri-basemap-gallery__item-container",itemTitle:"esri-basemap-gallery__item-title",itemThumbnail:"esri-basemap-gallery__item-thumbnail",selectedItem:"esri-basemap-gallery__item--selected",itemLoading:"esri-basemap-gallery__item--loading",itemError:"esri-basemap-gallery__item--error",emptyMessage:"esri-widget__content--empty",widgetIcon:"esri-icon-basemap",disabled:"esri-disabled"};let y=class extends m{constructor(e,s){super(e,s),this._handles=new a,this.activeBasemap=null,this.disabled=!1,this.headingLevel=2,this.iconClass=h.widgetIcon,this.label=void 0,this.messages=null,this.source=null,this.view=null,this.viewModel=new d}initialize(){const e=this._handles;this.own([t(this,"viewModel.items","change",(s=>{const a="basemap-gallery-item-changes",{added:t,moved:i}=s;e.remove(a),e.add([...t,...i].map((e=>e.watch("state",(()=>this.scheduleRender())))),a),this.scheduleRender()})),e,i(this,"source",(()=>this.viewModel.load()))])}render(){const e="loading"===this.get("source.state"),s=this.disabled||"disabled"===this.get("viewModel.state"),a=this.get("viewModel.items").toArray().map(this._renderBasemapGalleryItem,this),t={[h.sourceLoading]:e,[h.disabled]:s},i=e?g("div",{class:h.loader,key:"esri-basemap-gallery__loader"}):null,r=e?null:a.length>0?g("ul",{class:h.itemContainer,key:"esri-basemap-gallery__item-container",role:"menu"},a):g("div",{class:h.emptyMessage,key:"esri-basemap-gallery__empty-message"},g(p,{level:this.headingLevel},this.messages.noBasemaps));return g("div",{class:this.classes(h.base,t)},i,r)}_handleClick(e){const s=e.currentTarget["data-item"];"ready"===s.state&&(this.activeBasemap=s.basemap)}_renderBasemapGalleryItem(e){const a=e.get("basemap.thumbnailUrl")||s("esri/themes/base/images/basemap-toggle-64.svg"),t=e.get("basemap.title"),i=e.get("basemap.portalItem.snippet"),r=e.get("error.message")||i||t,{viewModel:o}=this,l=!this.disabled&&"ready"===o.state&&"ready"===e.state?0:-1,m=o.basemapEquals(e.basemap,this.activeBasemap),d={[h.selectedItem]:m,[h.itemLoading]:"loading"===e.state,[h.itemError]:"error"===e.state};return g("li",{"aria-selected":m.toString(),bind:this,class:this.classes(h.item,d),"data-item":e,onkeydown:this._handleClick,onclick:this._handleClick,role:"menuitem",tabIndex:l,title:r},g("img",{alt:"",class:h.itemThumbnail,src:a}),g("div",{class:h.itemTitle},t))}};e([r("viewModel.activeBasemap")],y.prototype,"activeBasemap",void 0),e([o()],y.prototype,"disabled",void 0),e([o()],y.prototype,"headingLevel",void 0),e([o()],y.prototype,"iconClass",void 0),e([o({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],y.prototype,"label",void 0),e([o(),n("esri/widgets/BasemapGallery/t9n/BasemapGallery")],y.prototype,"messages",void 0),e([r("viewModel.source")],y.prototype,"source",void 0),e([r("viewModel.view")],y.prototype,"view",void 0),e([o()],y.prototype,"viewModel",void 0),e([c()],y.prototype,"_handleClick",null),y=e([l("esri.widgets.BasemapGallery")],y);const b=y;export{b as default};
|
|
5
|
+
import{_ as e}from"../chunks/tslib.es6.js";import{getAssetUrl as s}from"../assets.js";import a from"../core/Handles.js";import{on as t,whenOnce as i}from"../core/watchUtils.js";import{aliasOf as r}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as o}from"../core/accessorSupport/decorators/property.js";import{subclass as l}from"../core/accessorSupport/decorators/subclass.js";import m from"./Widget.js";import d from"./BasemapGallery/BasemapGalleryViewModel.js";import{Heading as p}from"./support/Heading.js";import{accessibleHandler as c}from"./support/decorators/accessibleHandler.js";import{messageBundle as n}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{tsx as g}from"./support/jsxFactory.js";import"./support/widgetUtils.js";const h={base:"esri-basemap-gallery esri-widget esri-widget--panel-height-only",sourceLoading:"esri-basemap-gallery--source-loading",loader:"esri-basemap-gallery__loader",item:"esri-basemap-gallery__item",itemContainer:"esri-basemap-gallery__item-container",itemTitle:"esri-basemap-gallery__item-title",itemThumbnail:"esri-basemap-gallery__item-thumbnail",selectedItem:"esri-basemap-gallery__item--selected",itemLoading:"esri-basemap-gallery__item--loading",itemError:"esri-basemap-gallery__item--error",emptyMessage:"esri-widget__content--empty",widgetIcon:"esri-icon-basemap",disabled:"esri-disabled"};let y=class extends m{constructor(e,s){super(e,s),this._handles=new a,this.activeBasemap=null,this.disabled=!1,this.headingLevel=2,this.iconClass=h.widgetIcon,this.label=void 0,this.messages=null,this.source=null,this.view=null,this.viewModel=new d}initialize(){const e=this._handles;this.own([t(this,"viewModel.items","change",(s=>{const a="basemap-gallery-item-changes",{added:t,moved:i}=s;e.remove(a),e.add([...t,...i].map((e=>e.watch("state",(()=>this.scheduleRender())))),a),this.scheduleRender()})),e,i(this,"source",(()=>this.viewModel.load()))])}render(){const e="loading"===this.get("source.state"),s=this.disabled||"disabled"===this.get("viewModel.state"),a=this.get("viewModel.items").toArray().map(this._renderBasemapGalleryItem,this),t={[h.sourceLoading]:e,[h.disabled]:s},i=e?g("div",{class:h.loader,key:"esri-basemap-gallery__loader"}):null,r=e?null:a.length>0?g("ul",{class:h.itemContainer,key:"esri-basemap-gallery__item-container",role:"menu"},a):g("div",{class:h.emptyMessage,key:"esri-basemap-gallery__empty-message"},g(p,{level:this.headingLevel},this.messages.noBasemaps));return g("div",{class:this.classes(h.base,t)},i,r)}_handleClick(e){const s=e.currentTarget["data-item"];"ready"===s.state&&(this.viewModel.activeBasemap=s.basemap)}_renderBasemapGalleryItem(e){const a=e.get("basemap.thumbnailUrl")||s("esri/themes/base/images/basemap-toggle-64.svg"),t=e.get("basemap.title"),i=e.get("basemap.portalItem.snippet"),r=e.get("error.message")||i||t,{viewModel:o}=this,l=!this.disabled&&"ready"===o.state&&"ready"===e.state?0:-1,m=o.basemapEquals(e.basemap,this.activeBasemap),d={[h.selectedItem]:m,[h.itemLoading]:"loading"===e.state,[h.itemError]:"error"===e.state};return g("li",{"aria-selected":m.toString(),bind:this,class:this.classes(h.item,d),"data-item":e,onkeydown:this._handleClick,onclick:this._handleClick,role:"menuitem",tabIndex:l,title:r},g("img",{alt:"",class:h.itemThumbnail,src:a}),g("div",{class:h.itemTitle},t))}};e([r("viewModel.activeBasemap")],y.prototype,"activeBasemap",void 0),e([o()],y.prototype,"disabled",void 0),e([o()],y.prototype,"headingLevel",void 0),e([o()],y.prototype,"iconClass",void 0),e([o({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],y.prototype,"label",void 0),e([o(),n("esri/widgets/BasemapGallery/t9n/BasemapGallery")],y.prototype,"messages",void 0),e([r("viewModel.source")],y.prototype,"source",void 0),e([r("viewModel.view")],y.prototype,"view",void 0),e([o()],y.prototype,"viewModel",void 0),e([c()],y.prototype,"_handleClick",null),y=e([l("esri.widgets.BasemapGallery")],y);const b=y;export{b as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as t}from"../../chunks/tslib.es6.js";import e from"../../Viewpoint.js";import o from"../../core/Collection.js";import i from"../../core/Error.js";import r from"../../core/Evented.js";import a from"../../core/Logger.js";import{isSome as s}from"../../core/maybe.js";import{property as n}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{cast as c}from"../../core/accessorSupport/decorators/cast.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import p
|
|
5
|
+
import{_ as t}from"../../chunks/tslib.es6.js";import e from"../../Viewpoint.js";import o from"../../core/Collection.js";import i from"../../core/Error.js";import r from"../../core/Evented.js";import a from"../../core/Logger.js";import{isSome as s}from"../../core/maybe.js";import{property as n}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import{cast as c}from"../../core/accessorSupport/decorators/cast.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import{SlideThumbnail as p}from"../../webdoc/support/SlideThumbnail.js";import m from"../../webmap/Bookmark.js";import{GoToMixin as u}from"../support/GoTo.js";const k="esri.widgets.Bookmarks.BookmarksViewModel",d=a.getLogger(k),v=o.ofType(m),w={width:128,height:128,format:"png"},h={takeScreenshot:!0,captureViewpoint:!0,captureRotation:!0,captureScale:!0,captureTimeExtent:!0},b={time:!0};let f=class extends(u(r.EventedAccessor)){constructor(t){super(t),this.abilities={...b},this.activeBookmark=null}destroy(){this.view=null,this._set("activeBookmark",null)}castAbilities(t){return{...b,...t}}set bookmarks(t){void 0!==t?this._override("bookmarks",t):this._clearOverride("bookmarks")}get bookmarks(){return this.get("view.map.bookmarks")||new v}set defaultCreateOptions(t){this._set("defaultCreateOptions",{...h,...t})}get defaultCreateOptions(){return h}set defaultEditOptions(t){this._set("defaultEditOptions",{...h,...t})}get defaultEditOptions(){return h}get state(){const t=this.get("view");return t&&!t.ready?"loading":"ready"}get view(){return this._get("view")}set view(t){t&&"2d"!==t.type&&d.error(new i("view:invalid-view","SceneView is not supported",{view:t})),this._set("view",t)}async createBookmark(t){const{view:e,defaultCreateOptions:o,abilities:r}=this;if(!e){const t=new i("create-bookmark:invalid-view","Cannot create a bookmark without a view.");return d.error(t),Promise.reject(t)}const{takeScreenshot:a,screenshotSettings:n,captureViewpoint:c,captureRotation:l,captureScale:p,captureTimeExtent:u}={...o,...t},k=a?await this._createThumbnail(n):void 0,v=r.time&&u&&s(e.timeExtent)?e.timeExtent.clone():void 0;return new m({...k&&{thumbnail:k},...u&&{timeExtent:v},...c&&{viewpoint:this._createViewpoint({view:e,captureScale:p,captureRotation:l})}})}async editBookmark(t,e){const{view:o,defaultEditOptions:r}=this;if(!o){const t=new i("edit-bookmark:invalid-view","Cannot edit a bookmark without a view.");return d.error(t),Promise.reject(t)}const{takeScreenshot:a,screenshotSettings:n,captureViewpoint:c,captureRotation:l,captureScale:p,captureTimeExtent:m}={...r,...e},u=a?await this._createThumbnail(n):void 0;return u&&(t.thumbnail=u),c&&(t.viewpoint=this._createViewpoint({view:o,captureScale:p,captureRotation:l})),m&&s(o.timeExtent)&&(t.timeExtent=o.timeExtent.clone()),this.emit("bookmark-edit",{bookmark:t}),t}goTo(t){const{abilities:e,view:o}=this;if(!o){const t=new i("go-to:invalid-view","Cannot go to a bookmark without a view");return d.error(t),Promise.reject(t)}const r=null==t?void 0:t.viewpoint;if(!r){const e=new i("go-to:invalid-bookmark","Cannot go to a bookmark that does not contain a 'viewpoint'.",{bookmark:t});return d.error(e),Promise.reject(e)}this._set("activeBookmark",t);const a={target:r},s=this.callGoTo(a),n=null==t?void 0:t.timeExtent;return e.time&&n&&(o.timeExtent=n),this.emit("bookmark-select",{bookmark:t}),s.catch((()=>{})).then((()=>this._set("activeBookmark",null))),s}async _createThumbnail(t){const e=await this.view.takeScreenshot({...w,...t});return new p({url:e.dataUrl})}_createViewpoint({view:t,captureRotation:o,captureScale:i}){var r,a;const s=null==(r=t.viewpoint)?void 0:r.clone();return new e({targetGeometry:null==(a=t.extent)?void 0:a.clone(),rotation:o&&(null==s?void 0:s.rotation)||0,scale:i&&(null==s?void 0:s.scale)||0})}};t([n()],f.prototype,"abilities",void 0),t([c("abilities")],f.prototype,"castAbilities",null),t([n({readOnly:!0})],f.prototype,"activeBookmark",void 0),t([n({type:v})],f.prototype,"bookmarks",null),t([n()],f.prototype,"defaultCreateOptions",null),t([n()],f.prototype,"defaultEditOptions",null),t([n({readOnly:!0})],f.prototype,"state",null),t([n({value:null})],f.prototype,"view",null),f=t([l(k)],f);const g=f;export{g as default};
|
package/widgets/Bookmarks.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as t}from"../chunks/tslib.es6.js";import{eventKey as e}from"../core/events.js";import o from"../core/Handles.js";import{isSome as i,isNone as r}from"../core/maybe.js";import{init as s,on as a,watch as n}from"../core/watchUtils.js";import{aliasOf as d}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import{cast as l}from"../core/accessorSupport/decorators/cast.js";import{property as k}from"../core/accessorSupport/decorators/property.js";import{subclass as m}from"../core/accessorSupport/decorators/subclass.js";import{formatDate as u,convertDateFormatToIntlOptions as c}from"../intl/date.js";import h from"../webdoc/support/Thumbnail.js";import b from"./Widget.js";import _ from"./Bookmarks/BookmarksUserState.js";import p from"./Bookmarks/BookmarksViewModel.js";import g from"./FeatureTable/Grid/support/ButtonMenu.js";import B from"./FeatureTable/Grid/support/ButtonMenuItem.js";import{Heading as v}from"./support/Heading.js";import{isActivationKey as f}from"./support/widgetUtils.js";import{messageBundle as E}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{vmEvent as I}from"./support/decorators/vmEvent.js";import{tsx as y}from"./support/jsxFactory.js";import w from"sortablejs";function S(t,e,o){t.splice(o,0,t.splice(e,1)[0])}const x="bookmarks",A="data-bookmark-uid",T={base:"esri-bookmarks esri-widget--panel",loaderContainer:"esri-bookmarks__loader-container",loader:"esri-bookmarks__loader",fadeIn:"esri-bookmarks--fade-in",bookmarkList:"esri-bookmarks__list",bookmarkListSortable:"esri-bookmarks__list--sortable",bookmark:"esri-bookmarks__bookmark",bookmarkButton:"esri-bookmarks__bookmark-button",bookmarkImageContainer:"esri-bookmarks__bookmark-image-container",bookmarkEditButtonContainer:"esri-bookmarks__bookmark-edit-button-container",bookmarkEditButton:"esri-bookmarks__bookmark-edit-button",bookmarkDragHandle:"esri-bookmarks_bookmark-drag-handle",bookmarkDragHandleIcon:"esri-bookmarks_bookmark-drag-handle-icon",bookmarkIcon:"esri-bookmarks__bookmark-icon",bookmarkImage:"esri-bookmarks__image",bookmarkLabel:"esri-bookmarks__bookmark-label",bookmarkName:"esri-bookmarks__bookmark-name",bookmarkTimeExtent:"esri-bookmarks__bookmark-time-extent",bookmarkActive:"esri-bookmarks__bookmark--active",noBookmarksContainer:"esri-widget__content--empty",noBookmarksHeader:"esri-bookmarks__no-bookmarks-heading",noBookmarksIcon:"esri-widget__no-bookmark-icon",noBookmarksDescription:"esri-bookmarks__no-bookmarks-description",addingBookmark:"esri-bookmarks__adding-bookmark",addBookmark:"esri-bookmarks__add-bookmark",addBookmarkButton:"esri-bookmarks__add-bookmark-button",addBookmarkIcon:"esri-bookmarks__add-bookmark-icon",authoringCard:"esri-bookmarks__authoring-card",authoringContainer:"esri-bookmarks__authoring-container",authoringForm:"esri-bookmarks__authoring-form",authoringLabel:"esri-bookmarks__authoring-label",authoringActions:"esri-bookmarks__authoring-actions",authoringInputInvalid:"esri-bookmarks__authoring-input--invalid",authoringDeleteButton:"esri-bookmarks__authoring-delete-button",authoringCancelButton:"esri-bookmarks__authoring-cancel-button",timeExtentContainer:"esri-bookmarks__time-extent-container",timeExtent:"esri-bookmarks__time-extent",timeExtentGroup:"esri-bookmarks__time-extent-group",timeExtentDate:"esri-bookmarks__time-extent-date",timeExtentTime:"esri-bookmarks__time-extent-time",esriWidget:"esri-widget",esriWidgetDisabled:"esri-widget--disabled",esriButton:"esri-button",esriButtonTertiary:"esri-button--tertiary",esriInput:"esri-input",iconHandle:"esri-icon-handle-vertical",iconPlus:"esri-icon-plus",iconEdit:"esri-icon-edit",iconHandleHorizontal:"esri-icon-handle-horizontal",iconRefresh:"esri-icon-refresh",iconLink:"esri-icon-link",iconRemove:"esri-icon-erase",widgetIcon:"esri-icon-bookmark",header:"esri-widget__heading",loading:"esri-icon-loading-indicator",rotating:"esri-rotating"},C={addBookmark:!0,thumbnail:!0,time:!0},U=/^https:\/\/.*/i,M="esri.widgets.Bookmarks";let N=class extends b{constructor(t,e){super(t,e),this._handles=new o,this._addInputNode=null,this._editInputNode=null,this._urlEditInputNode=null,this._addBookmarkButtonNode=null,this._focusAddBookmarkButton=!1,this._focusEditInputBox=!1,this._focusAddInputBox=!1,this._focusUrlEditInputBox=!1,this._sortable=null,this._sortableNode=null,this._focusSortUid=null,this._selectedSortUid=null,this._sortableSavedItems=null,this._editIncludeTimeExtent=null,this._userState=null,this.defaultCreateOptions=null,this.defaultEditOptions=null,this.bookmarks=null,this.disabled=!1,this.editingEnabled=!1,this.headingLevel=2,this.goToOverride=null,this.iconClass=T.widgetIcon,this.label=void 0,this.messages=null,this.messagesCommon=null,this.messagesUnits=null,this.view=null,this.viewModel=new p,this.visibleElements={...C}}initialize(){this.own([s(this,"viewModel.bookmarks",(()=>this._bookmarksInitialized())),s(this,"editingEnabled",(()=>this._toggleSorting()))])}destroy(){this._destroySortable(),this._handles.destroy(),this._handles=null,this._editMenu.destroy()}loadDependencies(){return Promise.all([import("@esri/calcite-components/dist/components/calcite-label.js"),import("@esri/calcite-components/dist/components/calcite-switch.js")])}get _editMenuItems(){var t,e;const{messages:o,_userState:i}=this,r=null==i||null==(t=i.editedBookmark)||null==(e=t.thumbnail)?void 0:e.url;return[new B({label:null==o?void 0:o.menu.refreshThumbnail,iconClass:T.iconRefresh,clickFunction:()=>this._refreshThumbnail()}),new B({label:U.test(r)?null==o?void 0:o.menu.editImageUrl:null==o?void 0:o.menu.useImageUrl,iconClass:T.iconLink,clickFunction:()=>this._startUseImageUrl()}),r?new B({label:null==o?void 0:o.menu.removeThumbnail,iconClass:T.iconRemove,clickFunction:()=>this._removeThumbnail()}):null].filter(Boolean)}get _editMenu(){const{_editMenuItems:t,messages:e}=this,o=this._get("_editMenu");o&&o.destroy();const i=new g({iconClass:T.iconHandleHorizontal,label:null==e?void 0:e.menu.label});return i.items=t,i}castVisibleElements(t){return{...C,...t}}endAddBookmark(){this._userState=null}goTo(t){return this.viewModel.goTo(t)}render(){const{state:t}=this.viewModel,e="loading"===t?this.renderLoading():this.renderBookmarks();return y("div",{class:this.classes(T.base,T.esriWidget,{[T.esriWidgetDisabled]:this.disabled})},e)}startAddBookmark(){this._userState=new _({state:"add"}),this._focusAddInputBox=!0,this.scheduleRender()}renderLoading(){return y("div",{class:T.loaderContainer,key:"loader"},y("div",{class:T.loader}))}renderNoBookmarksContainer(){const{messages:t}=this;return y("div",{class:T.noBookmarksContainer,key:"no-bookmarks"},y("span",{"aria-hidden":"true",class:this.classes(T.noBookmarksIcon,T.widgetIcon)}),y(v,{level:this.headingLevel,class:this.classes(T.header,T.noBookmarksHeader)},null==t?void 0:t.noBookmarksHeading),y("p",{class:T.noBookmarksDescription},null==t?void 0:t.noBookmarksDescription))}renderAddBookmarkLoading(){var t;return y("div",{key:"adding-bookmark",class:T.addingBookmark},y("span",{"aria-hidden":"true",class:this.classes(T.loading,T.rotating)}),null==(t=this.messages)?void 0:t.addingBookmark)}renderBookmarkItems(t){if(!t)return null;const{_userState:e,editingEnabled:o}=this;return t.map((t=>o&&t&&e&&("edit"===e.state||"edit-thumbnail"===e.state)&&e.bookmark===t?"edit-thumbnail"===e.state?this.renderEditingBookmarkUrl(e.editedBookmark):this.renderEditingBookmark(e.editedBookmark):this.renderBookmark(t))).toArray()}renderBookmarksContainer(t){var e;const{_userState:o,editingEnabled:i}=this,r="add"===(null==o?void 0:o.state),s=i&&!r?this.renderAddBookmarkButton():null,a=i?r&&o.loading?this.renderAddBookmarkLoading():"add"===(null==o?void 0:o.state)?this.renderAddingBookmark():null:null;return[y("ul",{key:"bookmark-list","aria-label":null==(e=this.messages)?void 0:e.widgetLabel,class:this.classes(T.bookmarkList,{[T.bookmarkListSortable]:this.editingEnabled}),afterCreate:this._sortNodeCreated,afterRemoved:this._destroySortable,"data-node-ref":"_sortableNode",bind:this},this.renderBookmarkItems(t)),s,a]}renderAddBookmarkButton(){var t;return this.visibleElements.addBookmark?y("div",{key:"add-bookmark-item",class:T.addBookmark},y("button",{class:this.classes(T.esriButton,T.esriButtonTertiary,T.addBookmarkButton),onclick:this.startAddBookmark,afterCreate:this._storeAddBookmarkButton,afterUpdate:this._storeAddBookmarkButton,"data-node-ref":"_addBookmarkButtonNode",bind:this,type:"button"},y("span",{"aria-hidden":"true",class:this.classes(T.addBookmarkIcon,T.iconPlus)}),null==(t=this.messages)?void 0:t.addBookmark)):null}renderBookmarks(){const{bookmarks:t}=this.viewModel,e=t&&t.filter(Boolean),o=e&&e.length,i=o||this.editingEnabled?this.renderBookmarksContainer(e):null;return[o?null:this.renderNoBookmarksContainer(),i]}renderEditContainer(t){const{messagesCommon:e}=this;return y("div",{class:T.bookmarkEditButtonContainer,key:"edit-container"},y("button",{title:null==e?void 0:e.edit,"aria-label":null==e?void 0:e.edit,"data-bookmark":t,onclick:this._showEditBookmarkForm,bind:this,class:T.bookmarkEditButton,type:"button"},y("span",{"aria-hidden":"true",class:T.iconEdit})))}renderDragHandle(t){const{messagesCommon:e}=this,o={[A]:t.uid};return y("div",{role:"button",tabIndex:0,key:"drag-handle",bind:this,class:T.bookmarkDragHandle,onkeydown:this._dragHandleKeydown,afterCreate:this._focusDragHandle,afterUpdate:this._focusDragHandle,onblur:this._dragHandleBlur,"aria-pressed":this._selectedSortUid===t.uid?"true":"false","aria-label":null==e?void 0:e.dragHandleLabel,title:null==e?void 0:e.dragHandleTitle,...o},y("span",{"aria-hidden":"true",class:this.classes(T.bookmarkDragHandleIcon,T.iconHandle)}))}renderBookmarkImageIcon(){return y("span",{"aria-hidden":"true",class:this.classes(T.bookmarkIcon,T.widgetIcon)})}renderBookmarkImage(t){const{visibleElements:e}=this,{thumbnail:o}=t,i=o&&o.url||"";return e.thumbnail&&i?y("img",{src:i,alt:"",class:T.bookmarkImage}):null}renderBookmarkTimeSwitch(t){const{messages:e}=this,{timeExtent:o}=t,{view:i}=this.viewModel;return i.timeExtent||o?y("calcite-label",{layout:"inline-space-between","disable-spacing":"true"},e.includeTimeExtent,y("calcite-switch",{scale:"s",checked:!!o,onCalciteSwitchChange:t=>this._editIncludeTimeExtent=!!t.detail.switched})):null}renderBookmarkTimeExtent(t){const{visibleElements:e}=this,{timeExtent:o}=t;return o?y("span",{class:T.timeExtent},[i(o.start)&&y("span",{key:"start-date-group",class:T.timeExtentGroup},y("span",{key:"start-date",class:T.timeExtentDate},this._formatDate(o.start)),e.time&&y("span",{key:"start-time",class:T.timeExtentTime},this._formatTime(o.start))),i(o.end)&&(r(o.start)||o.start.getTime()!==o.end.getTime())&&y("span",{key:"end-date-group",class:T.timeExtentGroup},y("span",{key:"end-date",class:T.timeExtentDate},this._formatDate(o.end)),e.time&&y("span",{key:"end-time",class:T.timeExtentTime},this._formatTime(o.end)))]):null}renderBookmarkButton(t){const{messagesCommon:e}=this,{name:o,timeExtent:i}=t,{abilities:r}=this.viewModel,s=o||(null==e?void 0:e.untitled),a=y("div",{class:T.bookmarkImageContainer},this.renderBookmarkImage(t)||this.renderBookmarkImageIcon()),n=r.time&&i?y("span",{key:"time-extent",class:T.bookmarkTimeExtent},this.renderBookmarkTimeExtent(t)):null;return y("button",{key:"bookmark-button",class:T.bookmarkButton,bind:this,"data-bookmark":t,onclick:this._goToBookmark,type:"button"},a,y("div",{class:T.bookmarkLabel},y("span",{key:"bookmark-title",class:T.bookmarkName},s),n))}renderBookmark(t){const{activeBookmark:e}=this.viewModel,o={[T.bookmarkActive]:e===t},i=this.editingEnabled?this.renderEditContainer(t):null,r={[A]:t.uid},s=this.editingEnabled?this.renderDragHandle(t):null;return y("li",{key:t,class:this.classes(T.bookmark,o),...r},s,this.renderBookmarkButton(t),i)}renderEditingBookmarkName(t){const{messages:e,_userState:o}=this,i="name-required"===o.validationState;return y("label",{class:T.authoringLabel},null==e?void 0:e.title,i?y("strong",null,null==e?void 0:e.invalidTitle):null,y("input",{required:!0,bind:this,class:this.classes(T.esriInput,i?T.authoringInputInvalid:null),type:"text",value:t.name,afterCreate:this._storeEditInput,afterUpdate:this._focusEditInput,"data-bookmark":t,"data-node-ref":"_editInputNode",placeholder:null==e?void 0:e.titlePlaceholder}))}renderEditingBookmarkUrlActions(){const{messagesCommon:t}=this;return y("div",{class:T.authoringActions},y("input",{type:"button",value:null==t?void 0:t.back,class:this.classes(T.esriButton,T.esriButtonTertiary),onclick:this._closeUrlEditBookmarkForm,bind:this}),y("input",{class:T.esriButton,type:"submit",value:null==t?void 0:t.add}))}renderEditingBookmarkActions(){const{messagesCommon:t}=this,{bookmark:e}=this._userState;return y("div",{class:T.authoringActions},y("input",{type:"button",value:null==t?void 0:t.delete,class:this.classes(T.esriButton,T.esriButtonTertiary,T.authoringDeleteButton),"data-bookmark":e,onclick:this._deleteBookmark,bind:this}),y("input",{type:"button",value:null==t?void 0:t.cancel,class:this.classes(T.esriButton,T.esriButtonTertiary),onclick:this._closeEditBookmarkForm,bind:this}),y("input",{class:T.esriButton,type:"submit",value:null==t?void 0:t.save}))}renderEditingBookmarkUrlInput(t){var e;const{messages:o,_userState:i}=this,r=null==(e=t.thumbnail)?void 0:e.url,s=U.test(r)?r:null,a="absolute-url-required"===i.validationState;return y("label",{class:T.authoringLabel},a?y("strong",null,null==o?void 0:o.invalidImageUrl):null,y("input",{required:!0,bind:this,class:this.classes(T.esriInput,a?T.authoringInputInvalid:null),type:"text",value:s,afterCreate:this._storeUrlEditInput,afterUpdate:this._focusUrlEditInput,"data-bookmark":t,"data-node-ref":"_urlEditInputNode",title:null==o?void 0:o.imageUrlTooltip,placeholder:o&&`https://<${o.imageUrlPlaceholder}>`}))}renderEditingBookmarkUrl(t){const e={[A]:t.uid};return y("li",{key:"edit-bookmark-url-form",class:T.authoringCard,...e},y("form",{class:T.authoringForm,onsubmit:this._editBookmarkUrlSubmit,bind:this},this.renderEditingBookmarkUrlInput(t),this.renderEditingBookmarkUrlActions()))}renderEditingBookmark(t){const e={[A]:t.uid},{abilities:o}=this.viewModel,i=o.time?y("div",{key:"edit-bookmark-time-container",class:T.timeExtentContainer},this.renderBookmarkTimeSwitch(t),this._editIncludeTimeExtent&&this.renderBookmarkTimeExtent(t)):null;return y("li",{key:"edit-bookmark-form",class:T.authoringCard,...e},y("form",{class:T.authoringForm,onsubmit:this._editBookmarkSubmit,bind:this},y("div",{class:T.authoringContainer},y("div",{class:T.bookmarkImageContainer},this.renderBookmarkImage(t),this._editMenu.render()),this.renderEditingBookmarkName(t)),i,this.renderEditingBookmarkActions()))}renderAddingBookmarkName(){const{_userState:t,messages:e}=this,o="name-required"===t.validationState;return y("label",{class:T.authoringLabel},null==e?void 0:e.title,o?y("strong",null,null==e?void 0:e.invalidTitle):null,y("input",{required:!0,bind:this,class:this.classes(T.esriInput,o?T.authoringInputInvalid:null),type:"text",afterCreate:this._storeAddInput,afterUpdate:this._focusAddInput,"data-node-ref":"_addInputNode",value:"",placeholder:null==e?void 0:e.titlePlaceholder}))}renderAddingBookmarkActions(){const{messagesCommon:t}=this;return y("div",{class:this.classes(T.authoringActions)},y("input",{type:"button",value:null==t?void 0:t.cancel,class:this.classes(T.esriButton,T.esriButtonTertiary,T.authoringCancelButton),onclick:this._endAddBookmark.bind(this),bind:this}),y("input",{class:T.esriButton,type:"submit",value:null==t?void 0:t.add}))}renderAddingBookmark(){return y("div",{key:"add-bookmark-form",class:T.authoringCard},y("form",{class:T.authoringForm,onsubmit:this._addBookmarkSubmit,bind:this},this.renderAddingBookmarkName(),this.renderAddingBookmarkActions()))}_formatDate(t){return t?u(t,c("short-date")):null}_formatTime(t){return t?u(t,c("long-time")):null}_dragHandleBlur(){this._selectedSortUid=null,this.scheduleRender()}_dragHandleKeydown(t){const{_sortableSavedItems:o}=this,i=["ArrowDown","ArrowUp","Escape","Tab"," ","Enter"],r=e(t);if(-1===i.indexOf(r))return;const{_sortable:s,_selectedSortUid:a}=this,n=s.toArray(),d=t.target.getAttribute(A),l=n.indexOf(d);if(f(r)){const t=a&&a===d;return this._selectedSortUid=t?null:d,this._sortableSavedItems=t?null:this._sortable.toArray(),void this.scheduleRender()}if("Tab"===r)return this._selectedSortUid=null,void this.scheduleRender();if("Escape"===r&&o)return t.stopPropagation(),this._selectedSortUid=null,this._updateSortItems(o,s,d),void this.scheduleRender();if(-1===l||!a)return;const k="ArrowUp"===r?l-1:l+1;k>=n.length||k<=-1||(S(n,l,k),this._updateSortItems(n,s,d))}_updateSortItems(t,e,o){e.sort(t),this._sortBookmarks(e),this._focusSortUid=o,this._selectedSortUid=o}_focusDragHandle(t){const{_focusSortUid:e}=this;if(!t||!e)return;t.getAttribute(A)===e&&(t.focus(),this._focusSortUid=null)}_toggleSorting(){const{_sortable:t,_sortableNode:e,editingEnabled:o}=this;if(e)if(t)t.option("disabled",!o);else{const t=w.create(e,{dataIdAttr:A,handle:`.${T.bookmarkDragHandle}`,group:x,disabled:!o,onSort:()=>this._sortBookmarks(t)});this._sortable=t}}_sortNodeCreated(t){this._sortableNode=t,this._toggleSorting()}_sortBookmarks(t){const{bookmarks:e}=this.viewModel;if(!e)return;const o=t.toArray();e.sort(((t,e)=>{const i=o.indexOf(t.uid),r=o.indexOf(e.uid);return i>r?1:i<r?-1:0}))}_destroySortable(){const{_sortable:t}=this;t&&t.destroy(),this._sortable=null}_endAddBookmark(){this._focusAddBookmarkButton=!0,this.endAddBookmark()}_bookmarksInitialized(){const t="bookmarks-init",{_handles:e}=this;e.remove(t),e.add(a(this,"viewModel.bookmarks","change",(()=>this._bookmarksChanged())),t)}_bookmarksChanged(){const t="bookmarks-change",{bookmarks:e}=this.viewModel,{_handles:o}=this;o.remove(t);const i=e.map((t=>n(t,["active","name","thumbnail.url"],(()=>this.scheduleRender()))));o.add(i,t),this.scheduleRender()}_showEditBookmarkForm(t){const e=t.currentTarget["data-bookmark"];this._editIncludeTimeExtent=!!e.timeExtent,this._focusEditInputBox=!0,this._userState=new _({bookmark:e,state:"edit"}),this.viewModel.goTo(e),this.scheduleRender()}_closeUrlEditBookmarkForm(){this._focusEditInputBox=!0,this._userState.state="edit"}_closeEditBookmarkForm(){this._userState=null}_addBookmarkSubmit(t){t.preventDefault();const{_addInputNode:e,_userState:o}=this,i=e&&e.value.trim();i?(o.loading=!0,this.viewModel.createBookmark().then((t=>{t.name=i,this.viewModel.bookmarks.add(t),this._endAddBookmark()}))):o.validationState="name-required"}async _editBookmarkAndClose(t,e){const{viewModel:o}=this;await o.editBookmark(t,{...o.defaultEditOptions,...e}),this._closeEditBookmarkForm()}_editBookmarkSubmit(t){t.preventDefault();const{_editInputNode:e,_userState:o,_editIncludeTimeExtent:i}=this,r=e&&e.value.trim();r?(o.bookmark.name=r,o.bookmark.thumbnail=o.editedBookmark.thumbnail,i||(o.bookmark.timeExtent=null),this._editBookmarkAndClose(o.bookmark,{takeScreenshot:!1,captureTimeExtent:i})):o.validationState="name-required"}_storeAddBookmarkButton(t){this._addBookmarkButtonNode=t,this._focusAddBookmark()}_storeEditInput(t){this._editInputNode=t,this._focusEditInput()}_storeAddInput(t){this._addInputNode=t,this._focusAddInput()}_storeUrlEditInput(t){this._urlEditInputNode=t,this._focusUrlEditInput()}_focusUrlEditInput(){this._urlEditInputNode&&this._focusUrlEditInputBox&&(this._focusUrlEditInputBox=!1,this._urlEditInputNode.focus())}_focusAddInput(){this._addInputNode&&this._focusAddInputBox&&(this._focusAddInputBox=!1,this._addInputNode.focus())}_focusAddBookmark(){this._addBookmarkButtonNode&&this._focusAddBookmarkButton&&(this._focusAddBookmarkButton=!1,this._addBookmarkButtonNode.focus())}_focusEditInput(){this._editInputNode&&this._focusEditInputBox&&(this._focusEditInputBox=!1,this._editInputNode.focus())}_deleteBookmark(t){const e=t.currentTarget["data-bookmark"];this.viewModel.bookmarks.remove(e)}_goToBookmark(t){const e=t.currentTarget["data-bookmark"];this.endAddBookmark(),this._closeEditBookmarkForm(),this.viewModel.goTo(e)}async _refreshThumbnail(){const{_userState:t,_editMenu:e,viewModel:o}=this;t.validationState=void 0,await o.editBookmark(this._userState.editedBookmark,{takeScreenshot:!0,captureViewpoint:!1,captureRotation:!1,captureScale:!1,captureTimeExtent:!1}),e.open=!1,this._focusEditInputBox=!0,this.scheduleRender()}_removeThumbnail(){const{_userState:t,_editMenu:e}=this;t.editedBookmark.thumbnail=null,t.validationState=void 0,e.open=!1,this._focusEditInputBox=!0,this.scheduleRender()}_startUseImageUrl(){this._userState.state="edit-thumbnail",this._editMenu.open=!1,this._focusUrlEditInputBox=!0,this.scheduleRender()}_editBookmarkUrlSubmit(t){t.preventDefault();const{_urlEditInputNode:e,_userState:o}=this,i=e.value;U.test(i)?(i&&(o.editedBookmark.thumbnail=new h({url:i})),this._closeUrlEditBookmarkForm()):o.validationState="absolute-url-required"}};t([k()],N.prototype,"_editIncludeTimeExtent",void 0),t([k({type:_})],N.prototype,"_userState",void 0),t([k({readOnly:!0})],N.prototype,"_editMenuItems",null),t([k({readOnly:!0})],N.prototype,"_editMenu",null),t([d("viewModel.defaultCreateOptions")],N.prototype,"defaultCreateOptions",void 0),t([d("viewModel.defaultEditOptions")],N.prototype,"defaultEditOptions",void 0),t([d("viewModel.bookmarks")],N.prototype,"bookmarks",void 0),t([k()],N.prototype,"disabled",void 0),t([k()],N.prototype,"editingEnabled",void 0),t([k()],N.prototype,"headingLevel",void 0),t([d("viewModel.goToOverride")],N.prototype,"goToOverride",void 0),t([k()],N.prototype,"iconClass",void 0),t([k({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],N.prototype,"label",void 0),t([k(),E("esri/widgets/Bookmarks/t9n/Bookmarks")],N.prototype,"messages",void 0),t([k(),E("esri/t9n/common")],N.prototype,"messagesCommon",void 0),t([k(),E("esri/core/t9n/Units")],N.prototype,"messagesUnits",void 0),t([k()],N.prototype,"uiStrings",void 0),t([d("viewModel.view")],N.prototype,"view",void 0),t([k({type:p}),I(["select-bookmark","bookmark-edit","bookmark-select"])],N.prototype,"viewModel",void 0),t([k()],N.prototype,"visibleElements",void 0),t([l("visibleElements")],N.prototype,"castVisibleElements",null),t([k()],N.prototype,"endAddBookmark",null),t([k()],N.prototype,"startAddBookmark",null),N=t([m(M)],N);const j=N;export{j as default};
|
|
5
|
+
import{_ as t}from"../chunks/tslib.es6.js";import{eventKey as e}from"../core/events.js";import o from"../core/Handles.js";import{isSome as i,isNone as r}from"../core/maybe.js";import{init as s,on as a,watch as n}from"../core/watchUtils.js";import{aliasOf as d}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import{cast as l}from"../core/accessorSupport/decorators/cast.js";import{property as k}from"../core/accessorSupport/decorators/property.js";import{subclass as m}from"../core/accessorSupport/decorators/subclass.js";import{formatDate as u,convertDateFormatToIntlOptions as c}from"../intl/date.js";import{SlideThumbnail as h}from"../webdoc/support/SlideThumbnail.js";import b from"./Widget.js";import _ from"./Bookmarks/BookmarksUserState.js";import p from"./Bookmarks/BookmarksViewModel.js";import g from"./FeatureTable/Grid/support/ButtonMenu.js";import B from"./FeatureTable/Grid/support/ButtonMenuItem.js";import{Heading as v}from"./support/Heading.js";import{isActivationKey as f}from"./support/widgetUtils.js";import{messageBundle as E}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{vmEvent as I}from"./support/decorators/vmEvent.js";import{tsx as y}from"./support/jsxFactory.js";import w from"sortablejs";function S(t,e,o){t.splice(o,0,t.splice(e,1)[0])}const x="bookmarks",A="data-bookmark-uid",T={base:"esri-bookmarks esri-widget--panel",loaderContainer:"esri-bookmarks__loader-container",loader:"esri-bookmarks__loader",fadeIn:"esri-bookmarks--fade-in",bookmarkList:"esri-bookmarks__list",bookmarkListSortable:"esri-bookmarks__list--sortable",bookmark:"esri-bookmarks__bookmark",bookmarkButton:"esri-bookmarks__bookmark-button",bookmarkImageContainer:"esri-bookmarks__bookmark-image-container",bookmarkEditButtonContainer:"esri-bookmarks__bookmark-edit-button-container",bookmarkEditButton:"esri-bookmarks__bookmark-edit-button",bookmarkDragHandle:"esri-bookmarks_bookmark-drag-handle",bookmarkDragHandleIcon:"esri-bookmarks_bookmark-drag-handle-icon",bookmarkIcon:"esri-bookmarks__bookmark-icon",bookmarkImage:"esri-bookmarks__image",bookmarkLabel:"esri-bookmarks__bookmark-label",bookmarkName:"esri-bookmarks__bookmark-name",bookmarkTimeExtent:"esri-bookmarks__bookmark-time-extent",bookmarkActive:"esri-bookmarks__bookmark--active",noBookmarksContainer:"esri-widget__content--empty",noBookmarksHeader:"esri-bookmarks__no-bookmarks-heading",noBookmarksIcon:"esri-widget__no-bookmark-icon",noBookmarksDescription:"esri-bookmarks__no-bookmarks-description",addingBookmark:"esri-bookmarks__adding-bookmark",addBookmark:"esri-bookmarks__add-bookmark",addBookmarkButton:"esri-bookmarks__add-bookmark-button",addBookmarkIcon:"esri-bookmarks__add-bookmark-icon",authoringCard:"esri-bookmarks__authoring-card",authoringContainer:"esri-bookmarks__authoring-container",authoringForm:"esri-bookmarks__authoring-form",authoringLabel:"esri-bookmarks__authoring-label",authoringActions:"esri-bookmarks__authoring-actions",authoringInputInvalid:"esri-bookmarks__authoring-input--invalid",authoringDeleteButton:"esri-bookmarks__authoring-delete-button",authoringCancelButton:"esri-bookmarks__authoring-cancel-button",timeExtentContainer:"esri-bookmarks__time-extent-container",timeExtent:"esri-bookmarks__time-extent",timeExtentGroup:"esri-bookmarks__time-extent-group",timeExtentDate:"esri-bookmarks__time-extent-date",timeExtentTime:"esri-bookmarks__time-extent-time",esriWidget:"esri-widget",esriWidgetDisabled:"esri-widget--disabled",esriButton:"esri-button",esriButtonTertiary:"esri-button--tertiary",esriInput:"esri-input",iconHandle:"esri-icon-handle-vertical",iconPlus:"esri-icon-plus",iconEdit:"esri-icon-edit",iconHandleHorizontal:"esri-icon-handle-horizontal",iconRefresh:"esri-icon-refresh",iconLink:"esri-icon-link",iconRemove:"esri-icon-erase",widgetIcon:"esri-icon-bookmark",header:"esri-widget__heading",loading:"esri-icon-loading-indicator",rotating:"esri-rotating"},C={addBookmark:!0,thumbnail:!0,time:!0},U=/^https:\/\/.*/i,M="esri.widgets.Bookmarks";let N=class extends b{constructor(t,e){super(t,e),this._handles=new o,this._addInputNode=null,this._editInputNode=null,this._urlEditInputNode=null,this._addBookmarkButtonNode=null,this._focusAddBookmarkButton=!1,this._focusEditInputBox=!1,this._focusAddInputBox=!1,this._focusUrlEditInputBox=!1,this._sortable=null,this._sortableNode=null,this._focusSortUid=null,this._selectedSortUid=null,this._sortableSavedItems=null,this._editIncludeTimeExtent=null,this._userState=null,this.defaultCreateOptions=null,this.defaultEditOptions=null,this.bookmarks=null,this.disabled=!1,this.editingEnabled=!1,this.headingLevel=2,this.goToOverride=null,this.iconClass=T.widgetIcon,this.label=void 0,this.messages=null,this.messagesCommon=null,this.messagesUnits=null,this.view=null,this.viewModel=new p,this.visibleElements={...C}}initialize(){this.own([s(this,"viewModel.bookmarks",(()=>this._bookmarksInitialized())),s(this,"editingEnabled",(()=>this._toggleSorting()))])}destroy(){this._destroySortable(),this._handles.destroy(),this._handles=null,this._editMenu.destroy()}loadDependencies(){return Promise.all([import("@esri/calcite-components/dist/components/calcite-label.js"),import("@esri/calcite-components/dist/components/calcite-switch.js")])}get _editMenuItems(){var t,e;const{messages:o,_userState:i}=this,r=null==i||null==(t=i.editedBookmark)||null==(e=t.thumbnail)?void 0:e.url;return[new B({label:null==o?void 0:o.menu.refreshThumbnail,iconClass:T.iconRefresh,clickFunction:()=>this._refreshThumbnail()}),new B({label:U.test(r)?null==o?void 0:o.menu.editImageUrl:null==o?void 0:o.menu.useImageUrl,iconClass:T.iconLink,clickFunction:()=>this._startUseImageUrl()}),r?new B({label:null==o?void 0:o.menu.removeThumbnail,iconClass:T.iconRemove,clickFunction:()=>this._removeThumbnail()}):null].filter(Boolean)}get _editMenu(){const{_editMenuItems:t,messages:e}=this,o=this._get("_editMenu");o&&o.destroy();const i=new g({iconClass:T.iconHandleHorizontal,label:null==e?void 0:e.menu.label});return i.items=t,i}castVisibleElements(t){return{...C,...t}}endAddBookmark(){this._userState=null}goTo(t){return this.viewModel.goTo(t)}render(){const{state:t}=this.viewModel,e="loading"===t?this.renderLoading():this.renderBookmarks();return y("div",{class:this.classes(T.base,T.esriWidget,{[T.esriWidgetDisabled]:this.disabled})},e)}startAddBookmark(){this._userState=new _({state:"add"}),this._focusAddInputBox=!0,this.scheduleRender()}renderLoading(){return y("div",{class:T.loaderContainer,key:"loader"},y("div",{class:T.loader}))}renderNoBookmarksContainer(){const{messages:t}=this;return y("div",{class:T.noBookmarksContainer,key:"no-bookmarks"},y("span",{"aria-hidden":"true",class:this.classes(T.noBookmarksIcon,T.widgetIcon)}),y(v,{level:this.headingLevel,class:this.classes(T.header,T.noBookmarksHeader)},null==t?void 0:t.noBookmarksHeading),y("p",{class:T.noBookmarksDescription},null==t?void 0:t.noBookmarksDescription))}renderAddBookmarkLoading(){var t;return y("div",{key:"adding-bookmark",class:T.addingBookmark},y("span",{"aria-hidden":"true",class:this.classes(T.loading,T.rotating)}),null==(t=this.messages)?void 0:t.addingBookmark)}renderBookmarkItems(t){if(!t)return null;const{_userState:e,editingEnabled:o}=this;return t.map((t=>o&&t&&e&&("edit"===e.state||"edit-thumbnail"===e.state)&&e.bookmark===t?"edit-thumbnail"===e.state?this.renderEditingBookmarkUrl(e.editedBookmark):this.renderEditingBookmark(e.editedBookmark):this.renderBookmark(t))).toArray()}renderBookmarksContainer(t){var e;const{_userState:o,editingEnabled:i}=this,r="add"===(null==o?void 0:o.state),s=i&&!r?this.renderAddBookmarkButton():null,a=i?r&&o.loading?this.renderAddBookmarkLoading():"add"===(null==o?void 0:o.state)?this.renderAddingBookmark():null:null;return[y("ul",{key:"bookmark-list","aria-label":null==(e=this.messages)?void 0:e.widgetLabel,class:this.classes(T.bookmarkList,{[T.bookmarkListSortable]:this.editingEnabled}),afterCreate:this._sortNodeCreated,afterRemoved:this._destroySortable,"data-node-ref":"_sortableNode",bind:this},this.renderBookmarkItems(t)),s,a]}renderAddBookmarkButton(){var t;return this.visibleElements.addBookmark?y("div",{key:"add-bookmark-item",class:T.addBookmark},y("button",{class:this.classes(T.esriButton,T.esriButtonTertiary,T.addBookmarkButton),onclick:this.startAddBookmark,afterCreate:this._storeAddBookmarkButton,afterUpdate:this._storeAddBookmarkButton,"data-node-ref":"_addBookmarkButtonNode",bind:this,type:"button"},y("span",{"aria-hidden":"true",class:this.classes(T.addBookmarkIcon,T.iconPlus)}),null==(t=this.messages)?void 0:t.addBookmark)):null}renderBookmarks(){const{bookmarks:t}=this.viewModel,e=t&&t.filter(Boolean),o=e&&e.length,i=o||this.editingEnabled?this.renderBookmarksContainer(e):null;return[o?null:this.renderNoBookmarksContainer(),i]}renderEditContainer(t){const{messagesCommon:e}=this;return y("div",{class:T.bookmarkEditButtonContainer,key:"edit-container"},y("button",{title:null==e?void 0:e.edit,"aria-label":null==e?void 0:e.edit,"data-bookmark":t,onclick:this._showEditBookmarkForm,bind:this,class:T.bookmarkEditButton,type:"button"},y("span",{"aria-hidden":"true",class:T.iconEdit})))}renderDragHandle(t){const{messagesCommon:e}=this,o={[A]:t.uid};return y("div",{role:"button",tabIndex:0,key:"drag-handle",bind:this,class:T.bookmarkDragHandle,onkeydown:this._dragHandleKeydown,afterCreate:this._focusDragHandle,afterUpdate:this._focusDragHandle,onblur:this._dragHandleBlur,"aria-pressed":this._selectedSortUid===t.uid?"true":"false","aria-label":null==e?void 0:e.dragHandleLabel,title:null==e?void 0:e.dragHandleTitle,...o},y("span",{"aria-hidden":"true",class:this.classes(T.bookmarkDragHandleIcon,T.iconHandle)}))}renderBookmarkImageIcon(){return y("span",{"aria-hidden":"true",class:this.classes(T.bookmarkIcon,T.widgetIcon)})}renderBookmarkImage(t){const{visibleElements:e}=this,{thumbnail:o}=t,i=o&&o.url||"";return e.thumbnail&&i?y("img",{src:i,alt:"",class:T.bookmarkImage}):null}renderBookmarkTimeSwitch(t){const{messages:e}=this,{timeExtent:o}=t,{view:i}=this.viewModel;return i.timeExtent||o?y("calcite-label",{layout:"inline-space-between","disable-spacing":"true"},e.includeTimeExtent,y("calcite-switch",{scale:"s",checked:!!o,onCalciteSwitchChange:t=>this._editIncludeTimeExtent=!!t.detail.switched})):null}renderBookmarkTimeExtent(t){const{visibleElements:e}=this,{timeExtent:o}=t;return o?y("span",{class:T.timeExtent},[i(o.start)&&y("span",{key:"start-date-group",class:T.timeExtentGroup},y("span",{key:"start-date",class:T.timeExtentDate},this._formatDate(o.start)),e.time&&y("span",{key:"start-time",class:T.timeExtentTime},this._formatTime(o.start))),i(o.end)&&(r(o.start)||o.start.getTime()!==o.end.getTime())&&y("span",{key:"end-date-group",class:T.timeExtentGroup},y("span",{key:"end-date",class:T.timeExtentDate},this._formatDate(o.end)),e.time&&y("span",{key:"end-time",class:T.timeExtentTime},this._formatTime(o.end)))]):null}renderBookmarkButton(t){const{messagesCommon:e}=this,{name:o,timeExtent:i}=t,{abilities:r}=this.viewModel,s=o||(null==e?void 0:e.untitled),a=y("div",{class:T.bookmarkImageContainer},this.renderBookmarkImage(t)||this.renderBookmarkImageIcon()),n=r.time&&i?y("span",{key:"time-extent",class:T.bookmarkTimeExtent},this.renderBookmarkTimeExtent(t)):null;return y("button",{key:"bookmark-button",class:T.bookmarkButton,bind:this,"data-bookmark":t,onclick:this._goToBookmark,type:"button"},a,y("div",{class:T.bookmarkLabel},y("span",{key:"bookmark-title",class:T.bookmarkName},s),n))}renderBookmark(t){const{activeBookmark:e}=this.viewModel,o={[T.bookmarkActive]:e===t},i=this.editingEnabled?this.renderEditContainer(t):null,r={[A]:t.uid},s=this.editingEnabled?this.renderDragHandle(t):null;return y("li",{key:t,class:this.classes(T.bookmark,o),...r},s,this.renderBookmarkButton(t),i)}renderEditingBookmarkName(t){const{messages:e,_userState:o}=this,i="name-required"===o.validationState;return y("label",{class:T.authoringLabel},null==e?void 0:e.title,i?y("strong",null,null==e?void 0:e.invalidTitle):null,y("input",{required:!0,bind:this,class:this.classes(T.esriInput,i?T.authoringInputInvalid:null),type:"text",value:t.name,afterCreate:this._storeEditInput,afterUpdate:this._focusEditInput,"data-bookmark":t,"data-node-ref":"_editInputNode",placeholder:null==e?void 0:e.titlePlaceholder}))}renderEditingBookmarkUrlActions(){const{messagesCommon:t}=this;return y("div",{class:T.authoringActions},y("input",{type:"button",value:null==t?void 0:t.back,class:this.classes(T.esriButton,T.esriButtonTertiary),onclick:this._closeUrlEditBookmarkForm,bind:this}),y("input",{class:T.esriButton,type:"submit",value:null==t?void 0:t.add}))}renderEditingBookmarkActions(){const{messagesCommon:t}=this,{bookmark:e}=this._userState;return y("div",{class:T.authoringActions},y("input",{type:"button",value:null==t?void 0:t.delete,class:this.classes(T.esriButton,T.esriButtonTertiary,T.authoringDeleteButton),"data-bookmark":e,onclick:this._deleteBookmark,bind:this}),y("input",{type:"button",value:null==t?void 0:t.cancel,class:this.classes(T.esriButton,T.esriButtonTertiary),onclick:this._closeEditBookmarkForm,bind:this}),y("input",{class:T.esriButton,type:"submit",value:null==t?void 0:t.save}))}renderEditingBookmarkUrlInput(t){var e;const{messages:o,_userState:i}=this,r=null==(e=t.thumbnail)?void 0:e.url,s=U.test(r)?r:null,a="absolute-url-required"===i.validationState;return y("label",{class:T.authoringLabel},a?y("strong",null,null==o?void 0:o.invalidImageUrl):null,y("input",{required:!0,bind:this,class:this.classes(T.esriInput,a?T.authoringInputInvalid:null),type:"text",value:s,afterCreate:this._storeUrlEditInput,afterUpdate:this._focusUrlEditInput,"data-bookmark":t,"data-node-ref":"_urlEditInputNode",title:null==o?void 0:o.imageUrlTooltip,placeholder:o&&`https://<${o.imageUrlPlaceholder}>`}))}renderEditingBookmarkUrl(t){const e={[A]:t.uid};return y("li",{key:"edit-bookmark-url-form",class:T.authoringCard,...e},y("form",{class:T.authoringForm,onsubmit:this._editBookmarkUrlSubmit,bind:this},this.renderEditingBookmarkUrlInput(t),this.renderEditingBookmarkUrlActions()))}renderEditingBookmark(t){const e={[A]:t.uid},{abilities:o}=this.viewModel,i=o.time?y("div",{key:"edit-bookmark-time-container",class:T.timeExtentContainer},this.renderBookmarkTimeSwitch(t),this._editIncludeTimeExtent&&this.renderBookmarkTimeExtent(t)):null;return y("li",{key:"edit-bookmark-form",class:T.authoringCard,...e},y("form",{class:T.authoringForm,onsubmit:this._editBookmarkSubmit,bind:this},y("div",{class:T.authoringContainer},y("div",{class:T.bookmarkImageContainer},this.renderBookmarkImage(t),this._editMenu.render()),this.renderEditingBookmarkName(t)),i,this.renderEditingBookmarkActions()))}renderAddingBookmarkName(){const{_userState:t,messages:e}=this,o="name-required"===t.validationState;return y("label",{class:T.authoringLabel},null==e?void 0:e.title,o?y("strong",null,null==e?void 0:e.invalidTitle):null,y("input",{required:!0,bind:this,class:this.classes(T.esriInput,o?T.authoringInputInvalid:null),type:"text",afterCreate:this._storeAddInput,afterUpdate:this._focusAddInput,"data-node-ref":"_addInputNode",value:"",placeholder:null==e?void 0:e.titlePlaceholder}))}renderAddingBookmarkActions(){const{messagesCommon:t}=this;return y("div",{class:this.classes(T.authoringActions)},y("input",{type:"button",value:null==t?void 0:t.cancel,class:this.classes(T.esriButton,T.esriButtonTertiary,T.authoringCancelButton),onclick:this._endAddBookmark.bind(this),bind:this}),y("input",{class:T.esriButton,type:"submit",value:null==t?void 0:t.add}))}renderAddingBookmark(){return y("div",{key:"add-bookmark-form",class:T.authoringCard},y("form",{class:T.authoringForm,onsubmit:this._addBookmarkSubmit,bind:this},this.renderAddingBookmarkName(),this.renderAddingBookmarkActions()))}_formatDate(t){return t?u(t,c("short-date")):null}_formatTime(t){return t?u(t,c("long-time")):null}_dragHandleBlur(){this._selectedSortUid=null,this.scheduleRender()}_dragHandleKeydown(t){const{_sortableSavedItems:o}=this,i=["ArrowDown","ArrowUp","Escape","Tab"," ","Enter"],r=e(t);if(-1===i.indexOf(r))return;const{_sortable:s,_selectedSortUid:a}=this,n=s.toArray(),d=t.target.getAttribute(A),l=n.indexOf(d);if(f(r)){const t=a&&a===d;return this._selectedSortUid=t?null:d,this._sortableSavedItems=t?null:this._sortable.toArray(),void this.scheduleRender()}if("Tab"===r)return this._selectedSortUid=null,void this.scheduleRender();if("Escape"===r&&o)return t.stopPropagation(),this._selectedSortUid=null,this._updateSortItems(o,s,d),void this.scheduleRender();if(-1===l||!a)return;const k="ArrowUp"===r?l-1:l+1;k>=n.length||k<=-1||(S(n,l,k),this._updateSortItems(n,s,d))}_updateSortItems(t,e,o){e.sort(t),this._sortBookmarks(e),this._focusSortUid=o,this._selectedSortUid=o}_focusDragHandle(t){const{_focusSortUid:e}=this;if(!t||!e)return;t.getAttribute(A)===e&&(t.focus(),this._focusSortUid=null)}_toggleSorting(){const{_sortable:t,_sortableNode:e,editingEnabled:o}=this;if(e)if(t)t.option("disabled",!o);else{const t=w.create(e,{dataIdAttr:A,handle:`.${T.bookmarkDragHandle}`,group:x,disabled:!o,onSort:()=>this._sortBookmarks(t)});this._sortable=t}}_sortNodeCreated(t){this._sortableNode=t,this._toggleSorting()}_sortBookmarks(t){const{bookmarks:e}=this.viewModel;if(!e)return;const o=t.toArray();e.sort(((t,e)=>{const i=o.indexOf(t.uid),r=o.indexOf(e.uid);return i>r?1:i<r?-1:0}))}_destroySortable(){const{_sortable:t}=this;t&&t.destroy(),this._sortable=null}_endAddBookmark(){this._focusAddBookmarkButton=!0,this.endAddBookmark()}_bookmarksInitialized(){const t="bookmarks-init",{_handles:e}=this;e.remove(t),e.add(a(this,"viewModel.bookmarks","change",(()=>this._bookmarksChanged())),t)}_bookmarksChanged(){const t="bookmarks-change",{bookmarks:e}=this.viewModel,{_handles:o}=this;o.remove(t);const i=e.map((t=>n(t,["active","name","thumbnail.url"],(()=>this.scheduleRender()))));o.add(i,t),this.scheduleRender()}_showEditBookmarkForm(t){const e=t.currentTarget["data-bookmark"];this._editIncludeTimeExtent=!!e.timeExtent,this._focusEditInputBox=!0,this._userState=new _({bookmark:e,state:"edit"}),this.viewModel.goTo(e),this.scheduleRender()}_closeUrlEditBookmarkForm(){this._focusEditInputBox=!0,this._userState.state="edit"}_closeEditBookmarkForm(){this._userState=null}_addBookmarkSubmit(t){t.preventDefault();const{_addInputNode:e,_userState:o}=this,i=e&&e.value.trim();i?(o.loading=!0,this.viewModel.createBookmark().then((t=>{t.name=i,this.viewModel.bookmarks.add(t),this._endAddBookmark()}))):o.validationState="name-required"}async _editBookmarkAndClose(t,e){const{viewModel:o}=this;await o.editBookmark(t,{...o.defaultEditOptions,...e}),this._closeEditBookmarkForm()}_editBookmarkSubmit(t){t.preventDefault();const{_editInputNode:e,_userState:o,_editIncludeTimeExtent:i}=this,r=e&&e.value.trim();r?(o.bookmark.name=r,o.bookmark.thumbnail=o.editedBookmark.thumbnail,i||(o.bookmark.timeExtent=null),this._editBookmarkAndClose(o.bookmark,{takeScreenshot:!1,captureTimeExtent:i})):o.validationState="name-required"}_storeAddBookmarkButton(t){this._addBookmarkButtonNode=t,this._focusAddBookmark()}_storeEditInput(t){this._editInputNode=t,this._focusEditInput()}_storeAddInput(t){this._addInputNode=t,this._focusAddInput()}_storeUrlEditInput(t){this._urlEditInputNode=t,this._focusUrlEditInput()}_focusUrlEditInput(){this._urlEditInputNode&&this._focusUrlEditInputBox&&(this._focusUrlEditInputBox=!1,this._urlEditInputNode.focus())}_focusAddInput(){this._addInputNode&&this._focusAddInputBox&&(this._focusAddInputBox=!1,this._addInputNode.focus())}_focusAddBookmark(){this._addBookmarkButtonNode&&this._focusAddBookmarkButton&&(this._focusAddBookmarkButton=!1,this._addBookmarkButtonNode.focus())}_focusEditInput(){this._editInputNode&&this._focusEditInputBox&&(this._focusEditInputBox=!1,this._editInputNode.focus())}_deleteBookmark(t){const e=t.currentTarget["data-bookmark"];this.viewModel.bookmarks.remove(e)}_goToBookmark(t){const e=t.currentTarget["data-bookmark"];this.endAddBookmark(),this._closeEditBookmarkForm(),this.viewModel.goTo(e)}async _refreshThumbnail(){const{_userState:t,_editMenu:e,viewModel:o}=this;t.validationState=void 0,await o.editBookmark(this._userState.editedBookmark,{takeScreenshot:!0,captureViewpoint:!1,captureRotation:!1,captureScale:!1,captureTimeExtent:!1}),e.open=!1,this._focusEditInputBox=!0,this.scheduleRender()}_removeThumbnail(){const{_userState:t,_editMenu:e}=this;t.editedBookmark.thumbnail=null,t.validationState=void 0,e.open=!1,this._focusEditInputBox=!0,this.scheduleRender()}_startUseImageUrl(){this._userState.state="edit-thumbnail",this._editMenu.open=!1,this._focusUrlEditInputBox=!0,this.scheduleRender()}_editBookmarkUrlSubmit(t){t.preventDefault();const{_urlEditInputNode:e,_userState:o}=this,i=e.value;U.test(i)?(i&&(o.editedBookmark.thumbnail=new h({url:i})),this._closeUrlEditBookmarkForm()):o.validationState="absolute-url-required"}};t([k()],N.prototype,"_editIncludeTimeExtent",void 0),t([k({type:_})],N.prototype,"_userState",void 0),t([k({readOnly:!0})],N.prototype,"_editMenuItems",null),t([k({readOnly:!0})],N.prototype,"_editMenu",null),t([d("viewModel.defaultCreateOptions")],N.prototype,"defaultCreateOptions",void 0),t([d("viewModel.defaultEditOptions")],N.prototype,"defaultEditOptions",void 0),t([d("viewModel.bookmarks")],N.prototype,"bookmarks",void 0),t([k()],N.prototype,"disabled",void 0),t([k()],N.prototype,"editingEnabled",void 0),t([k()],N.prototype,"headingLevel",void 0),t([d("viewModel.goToOverride")],N.prototype,"goToOverride",void 0),t([k()],N.prototype,"iconClass",void 0),t([k({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],N.prototype,"label",void 0),t([k(),E("esri/widgets/Bookmarks/t9n/Bookmarks")],N.prototype,"messages",void 0),t([k(),E("esri/t9n/common")],N.prototype,"messagesCommon",void 0),t([k(),E("esri/core/t9n/Units")],N.prototype,"messagesUnits",void 0),t([k()],N.prototype,"uiStrings",void 0),t([d("viewModel.view")],N.prototype,"view",void 0),t([k({type:p}),I(["select-bookmark","bookmark-edit","bookmark-select"])],N.prototype,"viewModel",void 0),t([k()],N.prototype,"visibleElements",void 0),t([l("visibleElements")],N.prototype,"castVisibleElements",null),t([k()],N.prototype,"endAddBookmark",null),t([k()],N.prototype,"startAddBookmark",null),N=t([m(M)],N);const j=N;export{j as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as t}from"../../chunks/tslib.es6.js";import e from"../../analysis/DirectLineMeasurement.js";import i from"../../core/Logger.js";import{isNone as s,isSome as r,unwrap as n}from"../../core/maybe.js";import{measurementLengthUnits as
|
|
5
|
+
import{_ as t}from"../../chunks/tslib.es6.js";import e from"../../analysis/DirectLineMeasurement.js";import i from"../../core/Logger.js";import{isNone as s,isSome as r,unwrap as n}from"../../core/maybe.js";import{measurementLengthUnits as a}from"../../core/unitUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import{defaultUnitPropertyMetadata as u}from"../../properties/defaultUnit.js";import c from"../../views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js";import{InteractiveAnalysisViewModel as p}from"../support/InteractiveAnalysisViewModel.js";const d=i.getLogger("esri.widgets.DirectLineMeasurement3D.DirectLineMeasurement3DViewModel");let h=class extends p{constructor(t){super(t),this.analysisView=null,this.logger=d,this.supportedViewType="3d",this.unsupportedErrorMessage="DirectLineMeasurement3DViewModel is only supported in 3D views.",this._userUnit=null,this._userUnitOptions=null}get state(){return this.disabled?"disabled":s(this.tool)?"ready":this.tool.state}get measurement(){if(s(this.tool))return null;const t={mode:"euclidean",directDistance:{text:null,state:"unavailable"},horizontalDistance:{text:null,state:"unavailable"},verticalDistance:{text:null,state:"unavailable"}},e=this.tool.measurementView.analysisView;if(s(e))return t;const i=e.actualVisualizedMeasurement,n=this.tool.measurementView,a=r(e.result)?"available":"unavailable";switch(i){case"euclidean":return{mode:"euclidean",directDistance:{text:n.directLabelText,state:a},horizontalDistance:{text:n.horizontalLabelText,state:a},verticalDistance:{text:n.verticalLabelText,state:a}};case"geodesic":return{mode:"geodesic",directDistance:{text:null,state:"unavailable"},horizontalDistance:{text:n.horizontalLabelText,state:a},verticalDistance:{text:n.verticalLabelText,state:a}};default:return t}}set unitOptions(t){this._userUnitOptions=t,this._set("unitOptions",this._filteredOrAllUnits(this._userUnitOptions))}get unitOptions(){return this._filteredOrAllUnits(this._userUnitOptions)}set unit(t){this._userUnit=t?this._findSelectableUnit(t,this._userUnit):null,this.analysis.unit=t}get unit(){return this._userUnit?(this._userUnit=this._findSelectableUnit(this._userUnit,this.defaultUnit),this._userUnit):this._findSelectableUnit(this.defaultUnit)}get ready(){return r(this.analysisView)}start(){return this.clear(),this.createTool()}clear(){this.removeTool(),this.analysis.startPoint=null,this.analysis.endPoint=null}constructAnalysis(){return new e}constructTool(){return new c({view:n(this.view),analysis:this.analysis,visible:this.visible})}_findSelectableUnit(t,e){const i=this.unitOptions;return-1!==i.indexOf(t)?t:e?this._findSelectableUnit(e):i[0]}_filteredOrAllUnits(t){if(!t)return a.slice();const e=t.filter((t=>-1!==a.indexOf(t)));return 0===e.length?a.slice():e}onConnectToAnalysisView(t){r(this.view)&&this.view.ready&&(this.analysisView=t)}onDisconnectFromAnalysisView(){this.analysisView=null}};t([o({readOnly:!0})],h.prototype,"state",null),t([o({readOnly:!0})],h.prototype,"measurement",null),t([o()],h.prototype,"unitOptions",null),t([o()],h.prototype,"unit",null),t([o()],h.prototype,"analysisView",void 0),t([o()],h.prototype,"ready",null),t([o(u)],h.prototype,"defaultUnit",void 0),t([o()],h.prototype,"_userUnit",void 0),t([o()],h.prototype,"_userUnitOptions",void 0),h=t([l("esri.widgets.DirectLineMeasurement3D.DirectLineMeasurement3DViewModel")],h);const m=h;export{m as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../chunks/tslib.es6.js";import"../../core/has.js";import t from"../../core/Evented.js";import{HandleOwnerMixin as
|
|
5
|
+
import{_ as e}from"../../chunks/tslib.es6.js";import"../../core/has.js";import t from"../../core/Evented.js";import{HandleOwnerMixin as r}from"../../core/HandleOwner.js";import{isSome as s,isNone as o}from"../../core/maybe.js";import l from"../../core/ObjectPool.js";import{when as a}from"../../core/watchUtils.js";import{property as i}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/accessorSupport/ensureType.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import p from"./TemplateItem.js";import u from"./TemplateItemGroup.js";var m;const y=({layer:e})=>({key:e,label:e.title}),c=({layer:e})=>({key:e.geometryType,label:e.geometryType});let h=m=class extends(r(t.EventedAccessor)){constructor(e){super(e),this._itemPool=new l(p),this._groupPool=new l(u),this.filterFunction=null,this.selectedItem=null}initialize(){this._get("groupBy")||(this.groupBy="layer")}destroy(){this._templateToLayer.clear()}get _templateToLayer(){const e=new Map;for(const[t,r]of this._featureTemplatesByLayer)for(const s of r)e.set(s,t);return e}set groupBy(e){if(this._set("groupBy",e),"function"!=typeof e)switch(e){case"none":this._groupByFunction=null;break;case"layer":this._groupByFunction=y;break;case"geometry":this._groupByFunction=c}else this._groupByFunction=t=>this._ensureGroupByObject(e(t))}set layers(e){const t="layers";if(this.handles.remove(t),e){const t=()=>this.notifyChange("state");this.handles.add(e.map((e=>a(e,"loadStatus",t))),"layers")}this._set("layers",e)}get layers(){return this._get("layers")}get state(){const{layers:e}=this;return e&&0!==e.length?e.some((e=>"loading"===e.loadStatus||"not-loaded"===e.loadStatus))?"loading":"ready":"disabled"}get _featureTemplatesByLayer(){if(!this.layers)return new Map;const e=[];for(const t of this.layers){const r="templates"in t&&t.templates?t.templates:[],s="types"in t&&t.types?f(t.types):[];e.push([t,[...r,...s]])}return new Map(e)}get numberOfFeatureTemplates(){return Array.from(this._featureTemplatesByLayer.values()).reduce(((e,t)=>e+t.length),0)}get items(){if(0===this.numberOfFeatureTemplates)return this._releasePreviousItems(),[];const e=this._featureTemplatesByLayer,t=[],r=s(this.filterFunction)?this.filterFunction:m._nullFilterFunction;for(const[s,o]of e){const{loadStatus:e,capabilities:{operations:{supportsEditing:l,supportsAdd:a}}}=s;if("loaded"===e&&l&&a)for(const i of o)t.push({layer:s,template:i,matchesFilter:r({label:i.name})})}if(o(this._groupByFunction)){const e=t.filter((({matchesFilter:e})=>e)).map((({template:e,layer:t})=>this._createItem(e,t)));return this._releasePreviousItems(),e}const l=new Map;for(const o of t){const{template:e,layer:t}=o,r=this._groupByFunction({template:e,layer:t}),{key:a,label:i}=s(r.key)?r:m.nullGroupBy;l.has(a)||l.set(a,{label:i,templateItemInfos:[]}),l.get(a).templateItemInfos.push(o)}const a=[];for(const s of l.values()){const{label:e,templateItemInfos:t}=s,o=t.filter((({matchesFilter:e})=>e)),l=r({label:e})?t:t.length>0?o:[];if(l.length>0){const t=l.map((({template:e,layer:t})=>this._createItem(e,t)));a.push(this._createGroup(e,t))}}return 1===a.length&&a[0].label===m.nullGroupBy.label?(this._releasePreviousItems(),a[0].items):(this._releasePreviousItems(),a)}refresh(){this.notifyChange("items")}select(e){const t=(null==e?void 0:e.clone())||null;this._set("selectedItem",t),this.emit("select",{item:t,template:(null==t?void 0:t.template)||null})}_createItem(e,t){const r=this._itemPool.acquire();return r.set({template:e,layer:t}),r}_createGroup(e,t){const r=this._groupPool.acquire();return r.set("label",e),r.items=t,r}_releasePreviousItems(){this._destroyItems(this._get("items"))}_destroyItems(e){if(!e)return;e[0]instanceof p?e.forEach((e=>this._destroyItem(e))):e.forEach((e=>this._destroyGroup(e)))}_destroyGroup(e){e.items.forEach((e=>this._destroyItem(e))),e.items.length=0,this._groupPool.release(e)}_destroyItem(e){e.layer=null,e.template=null,this._itemPool.release(e)}_ensureGroupByObject(e){return"string"==typeof e?{key:e,label:e}:e}};function f(e){return e.reduce(((e,t)=>[...e,...t.templates]),[])}h.nullGroupBy={key:Symbol(),label:"Other"},h._nullFilterFunction=e=>!0,e([i()],h.prototype,"_groupByFunction",void 0),e([i({readOnly:!0})],h.prototype,"_templateToLayer",null),e([i()],h.prototype,"filterFunction",void 0),e([i()],h.prototype,"groupBy",null),e([i()],h.prototype,"layers",null),e([i()],h.prototype,"state",null),e([i({readOnly:!0})],h.prototype,"_featureTemplatesByLayer",null),e([i({readOnly:!0})],h.prototype,"numberOfFeatureTemplates",null),e([i({readOnly:!0})],h.prototype,"items",null),e([i({readOnly:!0})],h.prototype,"selectedItem",void 0),e([i()],h.prototype,"select",null),h=m=e([n("esri.widgets.FeatureTemplates.FeatureTemplatesViewModel")],h);const d=h;export{d as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../analysis/LineOfSight.js";import s from"../../analysis/LineOfSightTarget.js";import i from"../../core/Collection.js";import{castForReferenceSetter as o,referenceSetter as r}from"../../core/collectionUtils.js";import n from"../../core/Handles.js";import{handlesGroup as a}from"../../core/handleUtils.js";import l from"../../core/Logger.js";import{destroyMaybe as c,isNone as h,isSome as d,applySome as g,unwrap as
|
|
5
|
+
import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../analysis/LineOfSight.js";import s from"../../analysis/LineOfSightTarget.js";import i from"../../core/Collection.js";import{castForReferenceSetter as o,referenceSetter as r}from"../../core/collectionUtils.js";import n from"../../core/Handles.js";import{handlesGroup as a}from"../../core/handleUtils.js";import l from"../../core/Logger.js";import{destroyMaybe as c,isNone as h,isSome as d,applySome as g,unwrap as m}from"../../core/maybe.js";import{whenOnce as y,watch as T,sync as p}from"../../core/reactiveUtils.js";import{property as v}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as w}from"../../core/accessorSupport/decorators/subclass.js";import{LineOfSightTool as u}from"../../views/3d/interactive/analysisTools/lineOfSight/LineOfSightTool.js";import f from"./LineOfSightTarget.js";import{InteractiveAnalysisViewModel as _}from"../support/InteractiveAnalysisViewModel.js";const M=l.getLogger("esri.widgets.LineOfSight.LineOfSightViewModel"),V=i.ofType(f);let j=class extends _{constructor(e){super(e),this.analysisView=null,this.logger=M,this.supportedViewType="3d",this.unsupportedErrorMessage="LineOfSightViewModel is only supported in 3D views.",this._handles=new n,this._vmTargetsToConnection=new Map,this._analysisTargetsToConnection=new Map}initialize(){this._handles.add([this.targets.on("after-add",(e=>this._onViewModelTargetAdded(e.item))),this.targets.on("after-remove",(e=>this._onViewModelTargetRemoved(e.item))),this.analysis.targets.on("after-add",(e=>this._onAnalysisTargetAdded(e.item))),this.analysis.targets.on("after-remove",(e=>this._onAnalysisTargetRemoved(e.item)))])}destroy(){this._analysisTargetsToConnection.forEach((e=>e.remove())),this._handles=c(this._handles)}get state(){return this.disabled||!this.ready?"disabled":h(this.tool)||"pending"===this.tool.toolState?"ready":this.tool.state}get observer(){return this.analysis.observer}set observer(e){this.analysis.observer=e}get targets(){return this._get("targets")||new V}set targets(e){this._set("targets",r(e,this.targets,V))}get ready(){return d(this.analysisView)}async start(){return this.ready||await y((()=>this.ready)),this.createTool()}clear(){this.removeTool(),this.observer=null,this.targets.removeAll()}continue(){d(this.tool)&&this.tool.continue()}stop(){d(this.tool)&&this.tool.stop()}get testInfo(){return{getAnalysisTargetFromViewModelTarget:e=>g(this._vmTargetsToConnection.get(e),(e=>e.analysisTarget))}}constructAnalysis(){return new t}constructTool(){return new u({view:m(this.view),analysis:this.analysis,visible:this.visible})}async onConnectToAnalysisView(e){this.analysisView=e,this._handles.add([this.analysisView.on("result-changed",(e=>{const t=this._analysisTargetsToConnection.get(e.target);d(e.result)?(t.viewModelTarget.intersectedGraphic=e.result.intersectedGraphic,t.viewModelTarget.intersectedLocation=m(e.result.intersectedLocation),t.viewModelTarget.visible=e.result.visible):(t.viewModelTarget.intersectedGraphic=null,t.viewModelTarget.intersectedLocation=null,t.viewModelTarget.visible=void 0)}))],"view")}onDisconnectFromAnalysisView(){this.analysisView=null,null!=this._handles&&this._handles.remove("view")}_onViewModelTargetAdded(e){if(this._vmTargetsToConnection.get(e))return;const t=new s({location:e.location});this._connectViewModelWithAnalysisTarget(e,t),this.analysis.targets.add(t)}_onViewModelTargetRemoved(e){const t=this._vmTargetsToConnection.get(e);t&&(t.remove(),this.analysis.targets.remove(t.analysisTarget))}_onAnalysisTargetAdded(e){if(this._analysisTargetsToConnection.get(e))return;const t=new f({location:g(e.location,(e=>e.clone()))});this._connectViewModelWithAnalysisTarget(t,e),this.targets.add(t)}_onAnalysisTargetRemoved(e){const t=this._analysisTargetsToConnection.get(e);t&&(t.remove(),this.targets.remove(t.viewModelTarget))}_connectViewModelWithAnalysisTarget(e,t){let s=!1;const i=a([T((()=>t.location),(t=>{s||(s=!0,e.location=g(t,(e=>e.clone())),s=!1)}),p),T((()=>e.location),(e=>{s||(s=!0,t.location=g(e,(e=>e.clone())),s=!1)}),p)]),o={analysisTarget:t,viewModelTarget:e,remove:()=>{i.remove(),this._vmTargetsToConnection.delete(e),this._analysisTargetsToConnection.delete(t)}};this._vmTargetsToConnection.set(e,o),this._analysisTargetsToConnection.set(t,o)}};e([v({readOnly:!0})],j.prototype,"state",null),e([v()],j.prototype,"observer",null),e([v({type:V,cast:o,nonNullable:!0})],j.prototype,"targets",null),e([v()],j.prototype,"analysisView",void 0),e([v()],j.prototype,"ready",null),j=e([w("esri.widgets.lineOfSight.LineOfSightViewModel")],j);const b=j;export{b as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../Graphic.js";import{unwrap as o,isSome as t}from"../../../core/maybe.js";import r from"../../../geometry/Polygon.js";import{addressToLocations as s}from"../../../rest/locator/addressToLocations.js";import{locationToAddress as n}from"../../../rest/locator/locationToAddress.js";import{suggestLocations as i}from"../../../rest/locator/suggestLocations.js";import c from"../../../rest/support/AddressToLocationsParameters.js";import a from"../../../rest/support/LocationToAddressParameters.js";import l from"../../../rest/support/SuggestLocationsParameters.js";import{createExtentFromGeometry as u,scaleExtent as m}from"./geometryUtils.js";const f="Single Line Input",d=3e5;function g(e,o){return e.location?
|
|
5
|
+
import e from"../../../Graphic.js";import{unwrap as o,isSome as t}from"../../../core/maybe.js";import r from"../../../geometry/Polygon.js";import{addressToLocations as s}from"../../../rest/locator/addressToLocations.js";import{locationToAddress as n}from"../../../rest/locator/locationToAddress.js";import{suggestLocations as i}from"../../../rest/locator/suggestLocations.js";import c from"../../../rest/support/AddressToLocationsParameters.js";import a from"../../../rest/support/LocationToAddressParameters.js";import l from"../../../rest/support/SuggestLocationsParameters.js";import{createExtentFromGeometry as u,scaleExtent as m}from"./geometryUtils.js";const f="Single Line Input",d=3e5;function g(e,o){return e.location?h(e,o):I(e,o)}function p(e,o){if(o.localSearchDisabled)return null;const t=null==e?void 0:e.scale;return"number"==typeof t&&t<=d?e.get("extent.center"):null}function y(e,t){const{source:r,spatialReference:s,view:n,suggestTerm:c,maxSuggestions:a,sourceIndex:u}=e,m=new l,{apiKey:f,url:d}=r,g=j(r,n),y=t&&t.signal;if(!d)return Promise.resolve(null);f&&(m.apiKey=f),r.categories&&(m.categories=r.categories),s&&(m.outSpatialReference=s);const x=p(n,r);x&&(m.location=x);if(!c.trim())return Promise.resolve(null);const{prefix:v="",suffix:S=""}=r,w=`${v}${c}${S}`;return m.text=w,g&&(m.searchExtent=o(g)),m.maxSuggestions=a,r.countryCode&&(m.countryCode=r.countryCode),i(d,m,{signal:y}).then((e=>b(e,u)))}function x(e){return!!e&&/(?:geocode\-api\.arcgis\.com\/arcgis\/rest\/services\/world\/geocodeserver).*/gi.test(e)}function v(e){return!!e&&/(?:\/servers\/[\da-z\.-]+\/rest\/services\/world\/geocodeserver).*/gi.test(e)}function S(e){return!!e&&/(?:arcgis\.com\/arcgis\/rest\/services\/world\/geocodeserver).*/gi.test(e)}const w="https://geocode-api.arcgis.com/arcgis/rest/services/World/GeocodeServer";function h(e,o){const{source:t,spatialReference:r,location:s,sourceIndex:i,view:c}=e,{apiKey:l,url:u,zoomScale:m,defaultZoomScale:f}=t,d=c&&c.scale,g=o&&o.signal,p=new a;return p.location=s,l&&(p.apiKey=l),r&&(p.outSpatialReference=r),n(u,p,{signal:g}).then((e=>L([e],{sourceIndex:i,scale:d,view:c,zoomScale:m,defaultZoomScale:f}))).catch((()=>[]))}function j(e,o){const{filter:t,withinViewEnabled:r}=e,s=o&&o.scale,n=o&&o.extent,i=t&&t.geometry;return u(i,o,s)||(r&&n?n:void 0)}function I(e,t){const{source:r,suggestResult:n,spatialReference:i,view:a,maxResults:l,sourceIndex:u}=e,m=r&&r.zoomScale,d=r&&r.defaultZoomScale;if(!n.text.trim())return Promise.resolve(null);const g=!n.key&&r.prefix?r.prefix:"",y=!n.key&&r.suffix?r.suffix:"",x=`${g}${n.text}${y}`,v=new c,{apiKey:S,url:w}=r,h=a&&a.scale,I=j(r,a),$=t&&t.signal;if(S&&(v.apiKey=S),!w)return Promise.resolve(null);r.categories&&(v.categories=r.categories),r.locationType&&(v.locationType=r.locationType),i&&(v.outSpatialReference=i);const b=p(a,r);b&&(v.location=b),v.maxLocations=l,I&&(v.searchExtent=o(I)),r.countryCode&&(v.countryCode=r.countryCode);const{key:K}=n,P=`${K}`;return K&&(v.magicKey=P),v.address={},v.address[r.singleLineFieldName||f]=x,r.outFields&&(v.outFields=r.outFields),s(w,v,{signal:$}).then((e=>L(e,{key:P,scale:h,sourceIndex:u,view:a,zoomScale:m,defaultZoomScale:d})))}function $(e,o){return{text:e.text,key:e.magicKey,sourceIndex:o}}function b(e,o){return e.map((e=>$(e,o)))}function K(o,s){const{key:n,scale:i,sourceIndex:c,view:a,zoomScale:l,defaultZoomScale:f}=s,{attributes:d,extent:g,location:p,address:y}=o,x=new e({geometry:p,attributes:d}),v=g||p,S=u(v,a,i),w="number"==typeof l?m(S,a,l):"number"==typeof f&&"point"===v.type?m(S,a,f):S,h=p?`${p.x},${p.y}`:"",j=y||h,I=x.clone();return t(w)&&(I.geometry=r.fromExtent(w)),{extent:w,feature:x,target:I,key:n,name:j,sourceIndex:c}}function L(e,o){return e.filter(Boolean).map((e=>K(e,o)))}export{p as getLocation,g as getResults,y as getSuggestions,S as isArcGISWorldGeocoder,x as isMeteredArcGISWorldGeocoder,v as isProxiedArcGISWorldGeocoder,w as meteredArcGISLocatorUrl};
|