@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.
Files changed (523) hide show
  1. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/02fbc76dfdc20e628c61.js +1 -0
  4. package/assets/esri/core/workers/chunks/0453fad5cb819797b4f6.js +1 -0
  5. package/assets/esri/core/workers/chunks/0463ba46df855a92b9c0.js +1 -0
  6. package/assets/esri/core/workers/chunks/0cd0a6eef51fc5b9ea61.js +1 -0
  7. package/assets/esri/core/workers/chunks/{97ec9eef0048760fa260.js → 0d02c6ad1f4688bfa374.js} +1 -1
  8. package/assets/esri/core/workers/chunks/0d684f16f37d5dc385dd.js +1 -0
  9. package/assets/esri/core/workers/chunks/0e17691520d890d34efb.js +1 -0
  10. package/assets/esri/core/workers/chunks/16b6d0f8378582c051c3.js +1 -0
  11. package/assets/esri/core/workers/chunks/{0ce1dc14280d6f188468.js → 17de7a324dfa7f57ad5d.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{b313ab14a643273e7d09.js → 1877ab1b6a115dbba1c5.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{c36f84daa7736878418d.js → 197ec52641aed20029c6.js} +1 -1
  14. package/assets/esri/core/workers/chunks/1b2a961f776a0b57e57a.js +1 -0
  15. package/assets/esri/core/workers/chunks/1b3fd66577b19aa5f2b6.js +1 -0
  16. package/assets/esri/core/workers/chunks/1c733b7db092a2a88ef3.js +1 -0
  17. package/assets/esri/core/workers/chunks/1f8c6a179e39fd4c5e6f.js +1 -0
  18. package/assets/esri/core/workers/chunks/2076fcbae63f1bfb7143.js +1 -0
  19. package/assets/esri/core/workers/chunks/{9387db408f496e7dd003.js → 214910032945dd2d86b0.js} +1 -1
  20. package/assets/esri/core/workers/chunks/27474b007988855bea9d.js +1 -0
  21. package/assets/esri/core/workers/chunks/281b89dbf5574fc642ae.js +1 -0
  22. package/assets/esri/core/workers/chunks/2c8fe9bc988c3c5760a5.js +1 -0
  23. package/assets/esri/core/workers/chunks/34b59d7099904dcb28b5.js +1 -0
  24. package/assets/esri/core/workers/chunks/357033117dfe61eb81ea.js +1 -0
  25. package/assets/esri/core/workers/chunks/{b2ebe4f6d100e15b512d.js → 37c03cfc19086ce631c6.js} +1 -1
  26. package/assets/esri/core/workers/chunks/386f86f961146f530aa7.js +1 -0
  27. package/assets/esri/core/workers/chunks/{e6165e17fbb07bfc40a1.js → 391e96192d1ec4e55ce2.js} +1 -1
  28. package/assets/esri/core/workers/chunks/44f0c3663b293afbd172.js +1 -0
  29. package/assets/esri/core/workers/chunks/483d5d8593d96d0f0b15.js +1 -0
  30. package/assets/esri/core/workers/chunks/{c959e0d1cf7dce0421b9.js → 48fa8aed6c24877b44c4.js} +1 -1
  31. package/assets/esri/core/workers/chunks/{438f0b5ae5c53ae4f06a.js → 4954fd86b48cc68b737c.js} +1 -1
  32. package/assets/esri/core/workers/chunks/49a1a633bb0d93764aae.js +1 -0
  33. package/assets/esri/core/workers/chunks/4ba6de8aa7e2960bad49.js +1 -0
  34. package/assets/esri/core/workers/chunks/4be35af7d6babbfe9d84.js +1 -0
  35. package/assets/esri/core/workers/chunks/5457962a70bd3c557a75.js +1 -0
  36. package/assets/esri/core/workers/chunks/57856b4a9b8784a69844.js +1 -0
  37. package/assets/esri/core/workers/chunks/{b9c177524b3e7de1ffd1.js → 5790d171072b3c7d108f.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{5dfe1f8d520025e2118b.js → 57b349d1dbc0bed75b79.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{97a28641b3b2fd31bea2.js → 5bcb3240b3c005e5fe72.js} +1 -1
  40. package/assets/esri/core/workers/chunks/5d11b97b667921d67ae7.js +1 -0
  41. package/assets/esri/core/workers/chunks/5dbe555a5a662ff3d9ce.js +1 -0
  42. package/assets/esri/core/workers/chunks/5ec98f4ddac707d0fbd1.js +1 -0
  43. package/assets/esri/core/workers/chunks/64b7e8d812ea8fcf269e.js +1 -0
  44. package/assets/esri/core/workers/chunks/{ba5eb394f098968c22d2.js → 655b55ac0cd533d7e9d7.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{b0b036ad3ad3cd956747.js → 69fd99b7c76e9992ccf3.js} +1 -1
  46. package/assets/esri/core/workers/chunks/75d812955a473d0e8960.js +1 -0
  47. package/assets/esri/core/workers/chunks/7903a3e2e0faff0f86c0.js +1 -0
  48. package/assets/esri/core/workers/chunks/{cc146c57bbdac8029fd8.js → 7a5f5acfbd4ca1a5c1f3.js} +1 -1
  49. package/assets/esri/core/workers/chunks/83d00afae4406ec78bc9.js +1 -0
  50. package/assets/esri/core/workers/chunks/{434b16731c6a81f868ef.js → 85b1f36790df95b17659.js} +1 -1
  51. package/assets/esri/core/workers/chunks/89820b200ee44e678af5.js +1 -0
  52. package/assets/esri/core/workers/chunks/918bb7a7d901544a7367.js +1 -0
  53. package/assets/esri/core/workers/chunks/{94b8dbf859df71858d1c.js → 929c9b7cdab7c4ca3d87.js} +1 -1
  54. package/assets/esri/core/workers/chunks/949b2269457302ffc64b.js +1 -0
  55. package/assets/esri/core/workers/chunks/{601e697dc7414bda128a.js → 952980635afc7ec81804.js} +1 -1
  56. package/assets/esri/core/workers/chunks/9876a1bae350795fab36.js +1 -0
  57. package/assets/esri/core/workers/chunks/99619fcb772807c74f3b.js +1 -0
  58. package/assets/esri/core/workers/chunks/{010a71c2aa1b7681e191.js → 9d11f84e6c893b9d0019.js} +1 -1
  59. package/assets/esri/core/workers/chunks/a1930e4f035bc9aa1ae5.js +1 -0
  60. package/assets/esri/core/workers/chunks/a8692bffb76444c34760.js +1 -0
  61. package/assets/esri/core/workers/chunks/{f760a3e030b0f358a92a.js → aeaa1667c2d9f1b3366b.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{3f343f792fd9f44d6f25.js → b3f5e91116112b0b612a.js} +1 -1
  63. package/assets/esri/core/workers/chunks/b97953694f42bfec1b3c.js +1 -0
  64. package/assets/esri/core/workers/chunks/b9e9cb354822c6d995a4.js +1 -0
  65. package/assets/esri/core/workers/chunks/ba762bcfd74af0bb8218.js +1 -0
  66. package/assets/esri/core/workers/chunks/{e4b84ca8ddfd48dd79b1.js → bac9fc90e6756e211160.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{4c76146014dc15143ba3.js → be588873c16770ceb9ef.js} +1 -1
  68. package/assets/esri/core/workers/chunks/bf97a933ea3b220115e1.js +1 -0
  69. package/assets/esri/core/workers/chunks/bfedd6ebff817c9b31c0.js +1 -0
  70. package/assets/esri/core/workers/chunks/c093dff4592832ac0973.js +1 -0
  71. package/assets/esri/core/workers/chunks/c1135cb02ec46c491459.js +1 -0
  72. package/assets/esri/core/workers/chunks/{e4e2036373166c1d5cf5.js → c2253a9f29c1aabb2b75.js} +1 -1
  73. package/assets/esri/core/workers/chunks/d04fca5d46cca02500b7.js +1 -0
  74. package/assets/esri/core/workers/chunks/d08efbc349dd9f999497.js +1 -0
  75. package/assets/esri/core/workers/chunks/d1fe53b597351dc58305.js +1 -0
  76. package/assets/esri/core/workers/chunks/{a8b13fb804bb775e4967.js → db3c729ce0c0b2690dc9.js} +1 -1
  77. package/assets/esri/core/workers/chunks/dd13772a5e2eccc6a2bc.js +1 -0
  78. package/assets/esri/core/workers/chunks/dedc333a61081772ca7b.js +1 -0
  79. package/assets/esri/core/workers/chunks/{6f50a9647f026a8d4729.js → e0c8d61c7a85ce15499a.js} +1 -1
  80. package/assets/esri/core/workers/chunks/{199670a3a564ebe3bd79.js → e218bde41ffbcc5194f5.js} +1 -1
  81. package/assets/esri/core/workers/chunks/e21b211913aefde47e30.js +1 -0
  82. package/assets/esri/core/workers/chunks/e287f49184d076af17e2.js +1 -0
  83. package/assets/esri/core/workers/chunks/{bde1d5b0a7717350986e.js → e4019b63a1fe74e2c842.js} +1 -1
  84. package/assets/esri/core/workers/chunks/e8e775758b79c5a084c8.js +1 -0
  85. package/assets/esri/core/workers/chunks/e93dfdede0532a89ffa5.js +1 -0
  86. package/assets/esri/core/workers/chunks/ea595b0df5050eda2a13.js +1 -0
  87. package/assets/esri/core/workers/chunks/eb82ff10cef2bde6e57f.js +1 -0
  88. package/assets/esri/core/workers/chunks/ebc6f4764b82d4104c65.js +1 -0
  89. package/assets/esri/core/workers/chunks/{1305ef8717da6e902a55.js → ec10151a2a95e95a0bb5.js} +1 -1
  90. package/assets/esri/core/workers/chunks/eccba071ced2d922bb85.js +1 -0
  91. package/assets/esri/core/workers/chunks/ee6e0db58dc64410e687.js +1 -0
  92. package/assets/esri/core/workers/chunks/f0a9f161805fc7a30fc5.js +1 -0
  93. package/assets/esri/core/workers/chunks/f2124f4d0f2b8a91f0ea.js +1 -0
  94. package/assets/esri/core/workers/chunks/ff6abdc72076f3994659.js +981 -0
  95. package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
  96. package/assets/esri/themes/base/widgets/_Weather.scss +1 -1
  97. package/assets/esri/themes/dark/main.css +1 -1
  98. package/assets/esri/themes/dark-blue/main.css +1 -1
  99. package/assets/esri/themes/dark-green/main.css +1 -1
  100. package/assets/esri/themes/dark-purple/main.css +1 -1
  101. package/assets/esri/themes/dark-red/main.css +1 -1
  102. package/assets/esri/themes/light/main.css +1 -1
  103. package/assets/esri/themes/light/view.css +1 -1
  104. package/assets/esri/themes/light-blue/main.css +1 -1
  105. package/assets/esri/themes/light-green/main.css +1 -1
  106. package/assets/esri/themes/light-purple/main.css +1 -1
  107. package/assets/esri/themes/light-red/main.css +1 -1
  108. package/assets/esri/widgets/Weather/t9n/Weather.json +1 -1
  109. package/assets/esri/widgets/Weather/t9n/Weather_ar.json +1 -1
  110. package/assets/esri/widgets/Weather/t9n/Weather_bg.json +1 -1
  111. package/assets/esri/widgets/Weather/t9n/Weather_bs.json +1 -1
  112. package/assets/esri/widgets/Weather/t9n/Weather_ca.json +1 -1
  113. package/assets/esri/widgets/Weather/t9n/Weather_cs.json +1 -1
  114. package/assets/esri/widgets/Weather/t9n/Weather_da.json +1 -1
  115. package/assets/esri/widgets/Weather/t9n/Weather_de.json +1 -1
  116. package/assets/esri/widgets/Weather/t9n/Weather_el.json +1 -1
  117. package/assets/esri/widgets/Weather/t9n/Weather_en.json +1 -1
  118. package/assets/esri/widgets/Weather/t9n/Weather_es.json +1 -1
  119. package/assets/esri/widgets/Weather/t9n/Weather_et.json +1 -1
  120. package/assets/esri/widgets/Weather/t9n/Weather_fi.json +1 -1
  121. package/assets/esri/widgets/Weather/t9n/Weather_fr.json +1 -1
  122. package/assets/esri/widgets/Weather/t9n/Weather_he.json +1 -1
  123. package/assets/esri/widgets/Weather/t9n/Weather_hr.json +1 -1
  124. package/assets/esri/widgets/Weather/t9n/Weather_hu.json +1 -1
  125. package/assets/esri/widgets/Weather/t9n/Weather_id.json +1 -1
  126. package/assets/esri/widgets/Weather/t9n/Weather_it.json +1 -1
  127. package/assets/esri/widgets/Weather/t9n/Weather_ja.json +1 -1
  128. package/assets/esri/widgets/Weather/t9n/Weather_ko.json +1 -1
  129. package/assets/esri/widgets/Weather/t9n/Weather_lt.json +1 -1
  130. package/assets/esri/widgets/Weather/t9n/Weather_lv.json +1 -1
  131. package/assets/esri/widgets/Weather/t9n/Weather_nb.json +1 -1
  132. package/assets/esri/widgets/Weather/t9n/Weather_nl.json +1 -1
  133. package/assets/esri/widgets/Weather/t9n/Weather_pl.json +1 -1
  134. package/assets/esri/widgets/Weather/t9n/Weather_pt-BR.json +1 -1
  135. package/assets/esri/widgets/Weather/t9n/Weather_pt-PT.json +1 -1
  136. package/assets/esri/widgets/Weather/t9n/Weather_ro.json +1 -1
  137. package/assets/esri/widgets/Weather/t9n/Weather_ru.json +1 -1
  138. package/assets/esri/widgets/Weather/t9n/Weather_sk.json +1 -1
  139. package/assets/esri/widgets/Weather/t9n/Weather_sl.json +1 -1
  140. package/assets/esri/widgets/Weather/t9n/Weather_sr.json +1 -1
  141. package/assets/esri/widgets/Weather/t9n/Weather_sv.json +1 -1
  142. package/assets/esri/widgets/Weather/t9n/Weather_th.json +1 -1
  143. package/assets/esri/widgets/Weather/t9n/Weather_tr.json +1 -1
  144. package/assets/esri/widgets/Weather/t9n/Weather_uk.json +1 -1
  145. package/assets/esri/widgets/Weather/t9n/Weather_vi.json +1 -1
  146. package/assets/esri/widgets/Weather/t9n/Weather_zh-CN.json +1 -1
  147. package/assets/esri/widgets/Weather/t9n/Weather_zh-HK.json +1 -1
  148. package/assets/esri/widgets/Weather/t9n/Weather_zh-TW.json +1 -1
  149. package/chunks/BlendLayers.glsl.js +2 -2
  150. package/chunks/ChapmanAtmosphere.glsl.js +17 -17
  151. package/chunks/CheckerBoard.glsl.js +3 -3
  152. package/chunks/Clouds.glsl.js +2 -2
  153. package/chunks/CloudsComposition.glsl.js +1 -1
  154. package/chunks/ColorMaterial.glsl.js +12 -12
  155. package/chunks/ComponentShader.glsl.js +3 -3
  156. package/chunks/Compositing.glsl.js +1 -1
  157. package/chunks/DefaultMaterial.glsl.js +33 -33
  158. package/chunks/EdgeShaderProgram.glsl.js +7 -7
  159. package/chunks/Fog.glsl.js +10 -12
  160. package/chunks/HUDMaterial.glsl.js +2 -2
  161. package/chunks/HighlightComposition.glsl.js +5 -5
  162. package/chunks/ImageMaterial.glsl.js +6 -6
  163. package/chunks/LaserlinePath.glsl.js +8 -8
  164. package/chunks/LineCallout.glsl.js +6 -6
  165. package/chunks/MeasurementArrow.glsl.js +1 -1
  166. package/chunks/NativeLine.glsl.js +1 -1
  167. package/chunks/Path.glsl.js +5 -5
  168. package/chunks/Pattern.glsl.js +9 -9
  169. package/chunks/PointRenderer.glsl.js +14 -14
  170. package/chunks/Precipitation.glsl.js +91 -0
  171. package/chunks/RealisticTree.glsl.js +21 -21
  172. package/chunks/RibbonLine.glsl.js +11 -11
  173. package/chunks/SMAA.glsl.js +40 -40
  174. package/chunks/ShadedColorMaterial.glsl.js +12 -12
  175. package/chunks/ShadowCast.glsl.js +6 -6
  176. package/chunks/ShadowHighlight.glsl.js +4 -4
  177. package/chunks/SimpleAtmosphere.glsl.js +3 -3
  178. package/chunks/SlicePlaneMaterial.glsl.js +3 -3
  179. package/chunks/Stars.glsl.js +3 -3
  180. package/chunks/Terrain.glsl.js +11 -11
  181. package/chunks/TextureOnly.glsl.js +2 -2
  182. package/chunks/WaterSurface.glsl.js +5 -5
  183. package/chunks/boundedPlane.js +1 -1
  184. package/chunks/vxlLayer.js +1 -1
  185. package/core/accessorSupport/watch.js +1 -1
  186. package/core/clock.js +1 -1
  187. package/core/jsonMap.js +1 -1
  188. package/core/loadAll.js +1 -1
  189. package/core/promiseUtils.js +1 -1
  190. package/core/reactiveUtils.js +1 -1
  191. package/form/ExpressionInfo.js +1 -1
  192. package/geometry/support/frustum.js +1 -1
  193. package/geometry/support/plane.js +1 -1
  194. package/interfaces.d.ts +232 -38
  195. package/layers/VectorTileLayer.js +1 -1
  196. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  197. package/layers/graphics/featureConversionUtils.js +1 -1
  198. package/layers/support/LayerContingentValuesCache.js +1 -1
  199. package/layers/support/TileInfo.js +1 -1
  200. package/package.json +1 -1
  201. package/rest/print.js +1 -1
  202. package/smartMapping/statistics/support/predominanceUtils.d.ts +4 -0
  203. package/support/arcadeOnDemand.js +1 -1
  204. package/support/featureFlags.js +1 -1
  205. package/support/revision.js +1 -1
  206. package/symbols/FillSymbol3DLayer.js +1 -1
  207. package/symbols/IconSymbol3DLayer.js +1 -1
  208. package/symbols/ObjectSymbol3DLayer.js +1 -1
  209. package/symbols/Symbol3D.js +1 -1
  210. package/symbols/WebStyleSymbol.js +1 -1
  211. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  212. package/symbols/support/IconSymbol3DLayerResource.js +1 -1
  213. package/symbols/support/ObjectSymbol3DLayerResource.js +1 -1
  214. package/symbols/support/Symbol3DAnchorPosition2D.js +1 -1
  215. package/symbols/support/Symbol3DAnchorPosition3D.js +1 -1
  216. package/symbols/support/Symbol3DFillMaterial.js +1 -1
  217. package/symbols/support/Symbol3DIconOutline.js +1 -1
  218. package/symbols/support/Symbol3DOutline.js +1 -1
  219. package/symbols/support/Thumbnail.js +1 -1
  220. package/symbols/support/webStyleSymbolUtils.js +1 -1
  221. package/views/2d/MapViewConstraints.js +1 -1
  222. package/views/2d/engine/vectorTiles/SchemaHelper.js +1 -1
  223. package/views/2d/viewpointUtils.js +1 -1
  224. package/views/3d/environment/ChapmanAtmosphere.glsl.js +1 -1
  225. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  226. package/views/3d/environment/CloudsComposition.glsl.js +1 -1
  227. package/views/3d/environment/CloudsGenerator.js +1 -1
  228. package/views/3d/environment/CloudsPresets.js +1 -1
  229. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  230. package/views/3d/environment/Fog.glsl.js +1 -1
  231. package/views/3d/environment/Fog.js +1 -1
  232. package/views/3d/environment/PanoramicAtmosphere.js +1 -1
  233. package/views/3d/environment/Precipitation.glsl.js +5 -0
  234. package/views/3d/environment/Precipitation.js +5 -0
  235. package/views/3d/environment/PrecipitationTechnique.js +5 -0
  236. package/views/3d/environment/RainyWeather.js +1 -1
  237. package/views/3d/environment/SimpleAtmosphere.glsl.js +1 -1
  238. package/views/3d/environment/SimpleAtmosphere.js +1 -1
  239. package/views/3d/environment/SnowyWeather.js +5 -0
  240. package/views/3d/environment/Stars.glsl.js +1 -1
  241. package/views/3d/environment/Stars.js +1 -1
  242. package/views/3d/environment/weather.js +1 -1
  243. package/views/3d/interactive/analysisTools/slice/SliceTool.js +1 -1
  244. package/views/3d/interactive/analysisTools/slice/sliceToolUtils.js +1 -1
  245. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  246. package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.js +1 -1
  247. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  248. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  249. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  250. package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
  251. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  252. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  253. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  254. package/views/3d/layers/GraphicsView3D.js +1 -1
  255. package/views/3d/layers/I3SMeshView3D.js +1 -1
  256. package/views/3d/layers/VectorTileLayerView3D.js +1 -1
  257. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  258. package/views/3d/layers/graphics/ElevationAligners.js +1 -1
  259. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  260. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  261. package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
  262. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  263. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  264. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  265. package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
  266. package/views/3d/layers/graphics/graphicUtils.js +1 -1
  267. package/views/3d/layers/graphics/lineUtils.js +1 -1
  268. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  269. package/views/3d/layers/graphics/polygonUtils.js +1 -1
  270. package/views/3d/layers/graphics/symbolComplexity.js +1 -1
  271. package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
  272. package/views/3d/layers/i3s/PointRenderer.js +1 -1
  273. package/views/3d/layers/support/HeatmapFeatureProcessor.js +5 -0
  274. package/views/3d/layers/support/overlayImageUtils.js +1 -1
  275. package/views/3d/layers/support/patternUtils.js +1 -1
  276. package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
  277. package/views/3d/support/FrustumExtentIntersection.js +1 -1
  278. package/views/3d/support/LaserLineRenderer.js +1 -1
  279. package/views/3d/support/LaserlinePathData.js +1 -1
  280. package/views/3d/support/sunUtils.js +1 -1
  281. package/views/3d/terrain/OverlayRenderer.js +1 -1
  282. package/views/3d/terrain/PatchGeometryFactory.js +1 -1
  283. package/views/3d/terrain/TerrainRenderer.js +1 -1
  284. package/views/3d/terrain/TerrainSurface.js +1 -1
  285. package/views/3d/terrain/Tile.js +1 -1
  286. package/views/3d/terrain/terrainUtils.js +1 -1
  287. package/views/3d/terrain/tileUtils.js +1 -1
  288. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  289. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  290. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  291. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +10 -10
  292. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
  293. package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
  294. package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
  295. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  296. package/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js +2 -2
  297. package/views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js +2 -2
  298. package/views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js +2 -2
  299. package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +2 -2
  300. package/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js +4 -4
  301. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +1 -1
  302. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js +1 -1
  303. package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +1 -1
  304. package/views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js +1 -1
  305. package/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js +3 -3
  306. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js +1 -1
  307. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +6 -6
  308. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +12 -12
  309. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js +4 -4
  310. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js +1 -1
  311. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +16 -16
  312. package/views/3d/webgl-engine/core/shaderLibrary/default/RealisticTree.glsl.js +1 -1
  313. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +5 -5
  314. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +3 -3
  315. package/views/3d/webgl-engine/core/shaderLibrary/raster/BasicGrid.glsl.js +2 -2
  316. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeMaterialColor.glsl.js +6 -6
  317. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js +2 -2
  318. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeShadingNormal.glsl.js +10 -11
  319. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +2 -2
  320. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js +2 -2
  321. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js +2 -2
  322. package/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js +6 -6
  323. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadBaseColorTexture.glsl.js +4 -4
  324. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +6 -6
  325. package/views/3d/webgl-engine/core/shaderLibrary/shading/Reprojection.glsl.js +4 -4
  326. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +5 -5
  327. package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +1 -1
  328. package/views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js +10 -10
  329. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Terrain.glsl.js +1 -1
  330. package/views/3d/webgl-engine/core/shaderLibrary/util/BlendLayers.glsl.js +1 -1
  331. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +4 -4
  332. package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
  333. package/views/3d/webgl-engine/lib/Camera.js +1 -1
  334. package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
  335. package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
  336. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  337. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  338. package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
  339. package/views/3d/webgl-engine/lib/MagnifierHelper.js +1 -1
  340. package/views/3d/webgl-engine/lib/Material.js +1 -1
  341. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  342. package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
  343. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  344. package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
  345. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  346. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  347. package/views/3d/webgl-engine/lib/SmaaRenderPass.js +1 -1
  348. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  349. package/views/3d/webgl-engine/lib/Texture.js +1 -1
  350. package/views/3d/webgl-engine/lib/TextureUniformName.js +4 -0
  351. package/views/3d/webgl-engine/lib/UniformName.js +4 -0
  352. package/views/3d/webgl-engine/lib/VertexAttribute.js +5 -0
  353. package/views/3d/webgl-engine/lib/basicInterfaces.js +1 -1
  354. package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
  355. package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
  356. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
  357. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  358. package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
  359. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  360. package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
  361. package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
  362. package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
  363. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  364. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  365. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  366. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  367. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  368. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  369. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  370. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  371. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  372. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  373. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  374. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  375. package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
  376. package/views/3d/webgl-engine/materials/VisualVariableMaterialParameters.js +1 -1
  377. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  378. package/views/3d/webgl-engine/materials/internal/DefaultBufferWriter.js +1 -1
  379. package/views/3d/webgl-engine/materials/internal/MaterialUtil.js +1 -1
  380. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  381. package/views/3d/webgl-engine/materials/internal/waterMaterialUtils.js +1 -1
  382. package/views/3d/webgl-engine/shaders/CheckerBoard.glsl.js +1 -1
  383. package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
  384. package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
  385. package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
  386. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  387. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  388. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  389. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  390. package/views/3d/webgl-engine/shaders/HighlightComposition.glsl.js +1 -1
  391. package/views/3d/webgl-engine/shaders/HighlightTechnique.js +1 -1
  392. package/views/3d/webgl-engine/shaders/ImageMaterial.glsl.js +1 -1
  393. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  394. package/views/3d/webgl-engine/shaders/LaserlinePath.glsl.js +1 -1
  395. package/views/3d/webgl-engine/shaders/LaserlinePathTechnique.js +1 -1
  396. package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
  397. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  398. package/views/3d/webgl-engine/shaders/Magnifier.glsl.js +1 -1
  399. package/views/3d/webgl-engine/shaders/MeasurementArrow.glsl.js +1 -1
  400. package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
  401. package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
  402. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  403. package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
  404. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  405. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  406. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  407. package/views/3d/webgl-engine/shaders/SMAA.glsl.js +1 -1
  408. package/views/3d/webgl-engine/shaders/ShadedColorMaterial.glsl.js +1 -1
  409. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  410. package/views/3d/webgl-engine/shaders/ShadowCastTechnique.js +1 -1
  411. package/views/3d/webgl-engine/shaders/ShadowHighlightTechnique.js +1 -1
  412. package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
  413. package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
  414. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/AdjustProjectedPosition.glsl.js +10 -10
  415. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/DiscardShortEdges.glsl.js +1 -1
  416. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeShaderProgram.glsl.js +1 -1
  417. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +21 -21
  418. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineAmplitude.glsl.js +6 -6
  419. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineOffset.glsl.js +13 -13
  420. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/UnpackAttributes.glsl.js +6 -6
  421. package/views/MapView.js +1 -1
  422. package/views/SceneView.js +1 -1
  423. package/views/View.js +1 -1
  424. package/views/input/recognizers/DoubleTapDrag.js +1 -1
  425. package/views/input/recognizers/ImmediateDoubleClick.js +1 -1
  426. package/views/input/recognizers/PointerClickHoldAndDrag.js +1 -1
  427. package/views/input/recognizers/SingleAndDoubleClick.js +1 -1
  428. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  429. package/views/support/DefaultsFromMap.js +1 -1
  430. package/views/support/WatchUpdatingTracking.js +1 -1
  431. package/views/support/projectionUtils.js +5 -0
  432. package/views/webgl/BufferObject.js +1 -1
  433. package/views/webgl/InstanceCounter.js +1 -1
  434. package/views/webgl/Program.js +1 -1
  435. package/webdoc/support/{Thumbnail.js → SlideThumbnail.js} +1 -1
  436. package/webmap/Bookmark.js +1 -1
  437. package/webmap/Version.js +1 -1
  438. package/webscene/Slide.js +1 -1
  439. package/webscene/Version.js +1 -1
  440. package/webscene/support/SlideVisibleLayer.js +1 -1
  441. package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.js +1 -1
  442. package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
  443. package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
  444. package/widgets/BasemapGallery/support/basemapCompatibilityUtils.js +1 -1
  445. package/widgets/BasemapGallery.js +1 -1
  446. package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
  447. package/widgets/Bookmarks.js +1 -1
  448. package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.js +1 -1
  449. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  450. package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
  451. package/widgets/Search/support/locatorUtils.js +1 -1
  452. package/widgets/Search.js +1 -1
  453. package/widgets/Slice/SliceViewModel.js +1 -1
  454. package/widgets/TimeSlider.js +1 -1
  455. package/widgets/Weather/WeatherViewModel.js +1 -1
  456. package/widgets/Weather/css.js +1 -1
  457. package/widgets/Weather/enums.js +5 -0
  458. package/widgets/Weather.js +1 -1
  459. package/widgets/support/InteractiveToolViewModel.js +1 -1
  460. package/assets/esri/core/workers/chunks/00c5bb5eecb0e89266df.js +0 -1
  461. package/assets/esri/core/workers/chunks/021a37e2b191298e80b7.js +0 -1
  462. package/assets/esri/core/workers/chunks/1370c92c40fd6271553c.js +0 -1
  463. package/assets/esri/core/workers/chunks/14bef72154b3a19561a7.js +0 -1
  464. package/assets/esri/core/workers/chunks/18668dc45eb9e35530df.js +0 -1
  465. package/assets/esri/core/workers/chunks/1e4d37c2b9dc83d20a11.js +0 -1
  466. package/assets/esri/core/workers/chunks/1fbcc8424452d0256bd6.js +0 -1
  467. package/assets/esri/core/workers/chunks/208a7e24e19fc5633dd7.js +0 -1
  468. package/assets/esri/core/workers/chunks/22b09e276c9b9f22f0f8.js +0 -1
  469. package/assets/esri/core/workers/chunks/23b15e7c2f96d260e16c.js +0 -1
  470. package/assets/esri/core/workers/chunks/25a3e9bc0b4c7e0d3165.js +0 -1
  471. package/assets/esri/core/workers/chunks/2792ca40f1e92849247c.js +0 -1
  472. package/assets/esri/core/workers/chunks/2a96f1bba9ce6883e5e0.js +0 -1
  473. package/assets/esri/core/workers/chunks/3231ee3e090bb4cac3fc.js +0 -1
  474. package/assets/esri/core/workers/chunks/36a3f6fb4d1d18fcb642.js +0 -1
  475. package/assets/esri/core/workers/chunks/36e250278b5622ccf068.js +0 -1
  476. package/assets/esri/core/workers/chunks/395ba088d4864588ff66.js +0 -1
  477. package/assets/esri/core/workers/chunks/3aa4194dc5497c57647f.js +0 -1
  478. package/assets/esri/core/workers/chunks/3cc77692b2eee27b9c9e.js +0 -1
  479. package/assets/esri/core/workers/chunks/40a1e713f63ec77110c0.js +0 -1
  480. package/assets/esri/core/workers/chunks/4385a268c2a64281d1c1.js +0 -1
  481. package/assets/esri/core/workers/chunks/46b4bb66a54bbd8e2e57.js +0 -1
  482. package/assets/esri/core/workers/chunks/4bfbf5a34c9207fdcf44.js +0 -1
  483. package/assets/esri/core/workers/chunks/5a4a5585ec8027079f32.js +0 -1
  484. package/assets/esri/core/workers/chunks/5d4863a92b03bebc1b54.js +0 -1
  485. package/assets/esri/core/workers/chunks/5d991b74d958005c26c4.js +0 -1
  486. package/assets/esri/core/workers/chunks/634b5ccd7a3ac67f855d.js +0 -1
  487. package/assets/esri/core/workers/chunks/662d13f68cf3ec92439b.js +0 -1
  488. package/assets/esri/core/workers/chunks/663ad15b86936eb06b69.js +0 -1
  489. package/assets/esri/core/workers/chunks/7bc5cc5dbf1b7b70ddac.js +0 -1
  490. package/assets/esri/core/workers/chunks/7d661129a0d8c466eeec.js +0 -1
  491. package/assets/esri/core/workers/chunks/8070972c0efb78523b68.js +0 -1
  492. package/assets/esri/core/workers/chunks/85e27fd949475f9a6bbc.js +0 -1
  493. package/assets/esri/core/workers/chunks/8b6ab6202a40fe622833.js +0 -1
  494. package/assets/esri/core/workers/chunks/96ab518eb6ba11333dee.js +0 -1
  495. package/assets/esri/core/workers/chunks/9796d54ff12b6429164a.js +0 -1
  496. package/assets/esri/core/workers/chunks/98986e6601b0366376b4.js +0 -1
  497. package/assets/esri/core/workers/chunks/9cdcf9309d6feda70185.js +0 -1
  498. package/assets/esri/core/workers/chunks/aa861b8eae6c85f3dad4.js +0 -1
  499. package/assets/esri/core/workers/chunks/aace7e1fef256bb961c9.js +0 -1
  500. package/assets/esri/core/workers/chunks/ad081d8e49e7f90c3c26.js +0 -1
  501. package/assets/esri/core/workers/chunks/af5694b4d278cf1db2d9.js +0 -1
  502. package/assets/esri/core/workers/chunks/afbb4f802ca5774f0326.js +0 -1
  503. package/assets/esri/core/workers/chunks/b2c5f92e3d7606297ca9.js +0 -1
  504. package/assets/esri/core/workers/chunks/b8316c6469a543029bc6.js +0 -1
  505. package/assets/esri/core/workers/chunks/ba615f118a3a8970ef25.js +0 -1
  506. package/assets/esri/core/workers/chunks/ba6654a885be4b7a43f0.js +0 -1
  507. package/assets/esri/core/workers/chunks/bf0a65b4be31959f921d.js +0 -1
  508. package/assets/esri/core/workers/chunks/c11474b702dfb94e8e87.js +0 -1
  509. package/assets/esri/core/workers/chunks/c890c7fca27170e3341f.js +0 -1
  510. package/assets/esri/core/workers/chunks/c976785f2391c77d8a30.js +0 -1
  511. package/assets/esri/core/workers/chunks/ca2f5faa01d99c21ec14.js +0 -1
  512. package/assets/esri/core/workers/chunks/cef4af64860ebbfc1c47.js +0 -1
  513. package/assets/esri/core/workers/chunks/cfbffa429d88e7709c3f.js +0 -1
  514. package/assets/esri/core/workers/chunks/d24c4fbc567486b1188f.js +0 -1
  515. package/assets/esri/core/workers/chunks/de6cff7b6cbbf99b20d1.js +0 -981
  516. package/assets/esri/core/workers/chunks/e4f93c55eaefab4192b5.js +0 -1
  517. package/assets/esri/core/workers/chunks/e59764ee8cf25d4f74e2.js +0 -1
  518. package/assets/esri/core/workers/chunks/ec89466f76d0ba22525e.js +0 -1
  519. package/assets/esri/core/workers/chunks/ee45618c45806ab654cb.js +0 -1
  520. package/assets/esri/core/workers/chunks/f467c8f1fce22f6f599c.js +0 -1
  521. package/assets/esri/core/workers/chunks/f4baa5ea2e42b1317941.js +0 -1
  522. package/assets/esri/core/workers/chunks/face43cf5abcd2f5bd9d.js +0 -1
  523. package/assets/esri/core/workers/chunks/ffaf091c6023225cf5aa.js +0 -1
package/widgets/Search.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"../intl.js";import{eventKey as t}from"../core/events.js";import s from"../core/Handles.js";import{escapeRegExpString as i}from"../core/string.js";import{watch as r,on as n,init as o}from"../core/watchUtils.js";import{aliasOf as a}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import{subclass as l}from"../core/accessorSupport/decorators/subclass.js";import c from"./Widget.js";import d from"./Search/SearchResultRenderer.js";import h from"./Search/SearchViewModel.js";import{storeNode as g,keepMenuItemWithinView as p,isActivationKey as _}from"./support/widgetUtils.js";import{messageBundle as m}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{vmEvent as v}from"./support/decorators/vmEvent.js";import{tsx as M}from"./support/jsxFactory.js";import{substitute as I}from"../intl/substitute.js";const w={base:"esri-search esri-widget",loader:"esri-widget__loader",loaderText:"esri-widget__loader-text",loaderAnimation:"esri-widget__loader-animation",esriInput:"esri-input",hasMultipleSources:"esri-search--multiple-sources",isLoading:"esri-search--loading",isSearching:"esri-search--searching",showSuggestions:"esri-search--show-suggestions",showSources:"esri-search--sources",showWarning:"esri-search--warning",container:"esri-search__container",input:"esri-search__input",inputContainer:"esri-search__input-container",form:"esri-search__form",submitButton:"esri-search__submit-button",sourcesButton:"esri-search__sources-button",clearButton:"esri-search__clear-button",sourceName:"esri-search__source-name",suggestionsMenu:"esri-search__suggestions-menu",suggestionList:"esri-search__suggestions-list",suggestionListCurrentLocation:"esri-search__suggestions-list--current-location",sourcesMenu:"esri-search__sources-menu",source:"esri-search__source",warningMenu:"esri-search__warning-menu",warningMenuBody:"esri-search__warning-body",warningMenuHeader:"esri-search__warning-header",warningMenuText:"esri-search__warning-text",noValueText:"esri-search__no-value-text",esriWidgetDisabled:"esri-widget--disabled",button:"esri-widget--button",fallbackText:"esri-icon-font-fallback-text",header:"esri-widget__heading",locate:"esri-icon-locate-circled",menu:"esri-menu",menuList:"esri-menu__list",menuItem:"esri-menu__list-item",menuItemActive:"esri-menu__list-item--active",menuItemFocus:"esri-menu__list-item--focus",menuHeader:"esri-menu__header",loadingIcon:"esri-icon-loading-indicator esri-rotating",searchIcon:"esri-icon-search",dropdownIcon:"esri-icon-down-arrow esri-search__sources-button--down",dropupIcon:"esri-icon-up-arrow esri-search__sources-button--up",clearIcon:"esri-icon-close",noticeIcon:"esri-icon-notice-triangle",widgetIcon:"esri-icon-search",disabled:"esri-disabled"},S=/<[a-z/][\s\S]*>/i;let b=class extends c{constructor(e,t){super(e,t),this._activeMenuItemIndex=-1,this._handles=new s,this._inputNode=null,this._menuItemCount=0,this._sourceMenuButtonNode=null,this._sourceListNode=null,this._suggestionListNode=null,this._searchResultRenderer=new d,this._locateFailed=null,this._container=null,this.activeMenu="none",this.activeSource=null,this.activeSourceIndex=null,this.allPlaceholder=null,this.allSources=null,this.autoNavigate=null,this.autoSelect=null,this.defaultSources=null,this.disabled=!1,this.goToOverride=null,this.iconClass=w.widgetIcon,this.includeDefaultSources=null,this.label=void 0,this.locationEnabled=null,this.maxResults=null,this.maxSuggestions=null,this.messages=null,this.messagesCommon=null,this.minSuggestCharacters=null,this.popupEnabled=null,this.popupTemplate=null,this.portal=null,this.resultGraphic=null,this.resultGraphicEnabled=null,this.results=null,this.searchAllEnabled=null,this.searchTerm=null,this.selectedResult=null,this.sources=null,this.suggestions=null,this.suggestionsEnabled=null,this.view=null,this.viewModel=new h,this._clearActiveMenu=()=>{this.activeMenu="none"},this._removeActiveMenu=e=>{var t;const s=e.relatedTarget;s&&null!=(t=this._container)&&t.contains(s)||this._clearActiveMenu()},this.own(r(this,"searchTerm",(e=>{(e&&"warning"===this.activeMenu||!e&&!this.get("viewModel.selectedSuggestion.location"))&&this._clearActiveMenu()})),n(this,"viewModel.allSources","change",(()=>this._watchSourceChanges())),o(this,"activeMenu",(()=>this._resetActiveMenuItemIndex())),o(this,"viewModel.defaultPopupTemplate",(e=>{e&&(e.content=this._renderSearchResultsContent.bind(this))})))}destroy(){this._handles.destroy(),this._handles=null,this._cancelSuggest(),this._cancelSearch(),this._searchResultRenderer&&(this._searchResultRenderer.viewModel=null,this._searchResultRenderer.destroy(),this._searchResultRenderer=null)}get displayedSearchTerm(){return`${this.viewModel.searchTerm}`.trim()}get inputId(){return this._buildId("input")}get suggestionsMenuId(){return this._buildId("suggest-menu")}get sourceMenuId(){return this._buildId("source-menu")}get sourceMenuButtonId(){return this._buildId("source-menu-button")}clear(){}focus(){var e;null==(e=this._inputNode)||e.focus(),this.emit("search-focus")}blur(){var e;null==(e=this._inputNode)||e.blur(),this.emit("search-blur")}search(e){this._clearActiveMenu(),this._cancelSuggest(),this._cancelSearch();const t=new AbortController,{signal:s}=t;return this._searchController=t,this.viewModel.search(e,{signal:s}).catch((e=>{if(this._searchController===t)return this._clearActiveMenu(),this._searchController=null,e})).then((e=>{if(this._searchController===t)return this.activeMenu=e.numResults?"none":"warning",this._searchController=null,e}))}suggest(e){this._cancelSuggest();const t=new AbortController,{signal:s}=t;return this._suggestController=t,this.viewModel.suggest(e,null,{signal:s}).then((e=>{if(this._suggestController===t)return this._suggestController=null,e.numResults&&this._openSuggestionMenu(),this._scrollToTopSuggestion(),e})).catch((()=>{if(this._suggestController===t)return this._suggestController=null,null}))}render(){const{state:e}=this.viewModel,t={[w.disabled]:"disabled"===e,[w.esriWidgetDisabled]:this.disabled};return M("div",{class:this.classes(w.base,t)},"loading"===e?this.renderLoader():this.renderContainer())}renderSubmitButton(){const{messages:e}=this;return M("button",{"aria-label":e.searchButtonTitle,bind:this,class:this.classes(w.submitButton,w.button),key:"esri-search__submit-button",onclick:this._handleSearchButtonClick,title:e.searchButtonTitle,type:"button"},M("span",{"aria-hidden":"true",class:w.searchIcon}))}renderWarningMenu(){return M("div",{key:"esri-search__error-menu",class:this.classes(w.menu,w.warningMenu)},M("div",{class:w.warningMenuBody},this.renderWarning()))}renderSourceMenuButton(){const{messages:e,activeMenu:t,sourceMenuId:s,sourceMenuButtonId:i}=this,{activeSourceIndex:r,allSources:n}=this.viewModel;return n.length>1?M("button",{id:i,key:"esri-search__source-menu-button",bind:this,"aria-label":e.searchIn,title:e.searchIn,"aria-haspopup":"true","aria-expanded":("source"===t).toString(),"aria-controls":s,class:this.classes(w.sourcesButton,w.button),onclick:this._handleSourcesMenuToggleClick,onfocus:this._clearActiveMenu,afterCreate:g,"data-node-ref":"_sourceMenuButtonNode",type:"button"},M("span",{"aria-hidden":"true",class:w.dropdownIcon}),M("span",{"aria-hidden":"true",class:w.dropupIcon}),M("span",{class:w.sourceName},this._getSourceName(r))):null}renderSourcesList(){const{allSources:e,searchAllEnabled:t}=this.viewModel,{_activeMenuItemIndex:s,activeMenu:i,sourceMenuId:r,sourceMenuButtonId:n}=this,o="source"===i&&s>-1?this._buildId("source-item",s):null;return e.length>1?M("ul",{"aria-activedescendant":o,"aria-labelledby":n,id:r,role:"menu",bind:this,afterCreate:g,onkeydown:this._handleSourceMenuKeydown,onkeyup:this._handleSourceMenuKeyup,"data-node-ref":"_sourceListNode",class:w.menuList,tabIndex:-1},t?this.renderSource(h.ALL_INDEX):null,e.map(((e,t)=>this.renderSource(t))).toArray()):null}renderSourcesMenu(){const{allSources:e}=this.viewModel;return e.length>1?M("div",{key:"esri-search__source-menu",class:this.classes(w.menu,w.sourcesMenu)},this.renderSourcesList()):null}renderLoader(){const{messages:e,messagesCommon:t}=this;return M("div",{class:w.loader,key:"base-loader"},M("span",{"aria-hidden":"true",class:w.loaderAnimation}),M("span",{class:w.fallbackText},e.searchButtonTitle),M("span",{class:w.loaderText},t.loading))}renderContainer(){const{allSources:e,state:t}=this.viewModel,{activeMenu:s}=this,i={[w.hasMultipleSources]:e.length>1,[w.isLoading]:"loading"===t,[w.isSearching]:"searching"===t,[w.showWarning]:"warning"===s,[w.showSources]:"source"===s,[w.showSuggestions]:"suggestion"===s};return M("div",{tabIndex:-1,afterCreate:e=>{this._container=e,e.addEventListener("focusout",this._removeActiveMenu)},afterRemoved:e=>{e.removeEventListener("focusout",this._removeActiveMenu)},class:this.classes(i,w.container),key:"base-container"},this.renderSourceMenuButton(),this.renderSourcesMenu(),this.renderInputContainer(),this.renderSubmitButton(),this.renderWarningMenu())}renderClearButton(){return this.searchTerm?M("button",{bind:this,class:this.classes(w.clearButton,w.button),key:"esri-search__clear-button",onclick:this._handleClearButtonClick,onfocus:this._clearActiveMenu,title:this.messages.clearButtonTitle,type:"button"},M("span",{"aria-hidden":"true",class:w.clearIcon})):null}renderLocationGroup(){const{messages:e,locationEnabled:t,displayedSearchTerm:s}=this,i=t&&!s,r="suggestion"===this.activeMenu&&0===this._activeMenuItemIndex;return i?M("ul",{role:"group",key:"esri-search__suggestion-list-current-location",class:this.classes(w.menuList,w.suggestionList,w.suggestionListCurrentLocation)},M("li",{bind:this,"data-current-location-item":!0,onclick:this._handleUseCurrentLocationClick,id:this._buildId("suggestion-item",0),"aria-selected":("suggestion"===this.activeMenu&&0===this._activeMenuItemIndex).toString(),role:"option",class:this.classes(w.menuItem,r?w.menuItemFocus:null)},M("span",{"aria-hidden":"true",class:w.locate})," ",e.useCurrentLocation)):null}renderInput(){const{activeMenu:e,locationEnabled:t,displayedSearchTerm:s,messages:i,suggestionsMenuId:r,inputId:n,_activeMenuItemIndex:o}=this,{maxInputLength:a,placeholder:u,searchTerm:l,suggestionCount:c}=this.viewModel,d=!(!(t&&!s)&&!c),h="suggestion"===e&&o>-1?this._buildId("suggestion-item",o):null;return M("input",{"aria-activedescendant":h,"aria-autocomplete":"list","aria-expanded":(d&&"suggestion"===e).toString(),"aria-controls":d?r:null,"aria-haspopup":"listbox","aria-label":i.searchButtonTitle,bind:this,placeholder:u,maxlength:a,autocomplete:"off",type:"text",class:this.classes(w.esriInput,w.input),value:l,id:n,role:"combobox",onkeyup:this._handleInputKeyup,onclick:this._openSuggestionMenu,oninput:this._handleInputPaste,onpaste:this._handleInputPaste,afterCreate:g,"data-node-ref":"_inputNode",onfocus:this.focus,onblur:this.blur,title:l?"":u})}renderForm(){return M("form",{key:"esri-search__form",bind:this,class:w.form,onsubmit:this._formSubmit,role:"search"},this.renderInput())}renderSuggestList(e){const{sourceIndex:t}=e,s=e.results.length,i=e.results;return s?M("ul",{role:"group",key:`esri-search__suggestion-list-${t}`,class:this.classes(w.menuList,w.suggestionList)},i.map((e=>this.renderSuggestion(e,this._menuItemCount++)))):null}renderSuggestionsGroup(){const{suggestions:e}=this.viewModel;return e?e.map((e=>[this.renderSuggestionHeader(e),this.renderSuggestList(e)])):null}renderSuggestionsMenu(){const{displayedSearchTerm:e,locationEnabled:t,suggestionsMenuId:s,inputId:i}=this,{suggestionCount:r}=this.viewModel,n=t&&!e||r;return this._menuItemCount=0,n?M("div",{id:s,key:"esri-search__suggestions-menu",class:this.classes(w.menu,w.suggestionsMenu),role:"listbox","aria-labelledby":i,bind:this,afterCreate:g,"data-node-ref":"_suggestionListNode"},this.renderLocationGroup(),this.renderSuggestionsGroup()):null}renderInputContainer(){return M("div",{key:"esri-search__input-container",class:w.inputContainer},this.renderForm(),this.renderSuggestionsMenu(),this.renderClearButton())}renderSuggestionHeader(e){const{allSources:t,activeSourceIndex:s}=this.viewModel,{sourceIndex:i}=e,r=e.results.length,n=t.length>1&&s===h.ALL_INDEX;return r&&n?M("div",{key:`esri-search__suggestion-header-${i}`,class:w.menuHeader},this._getSourceName(i)):null}renderSuggestion(e,t){const{_activeMenuItemIndex:s,messages:i}=this,{searchTerm:r}=this.viewModel;if(r){const{text:n}=e,o=n||i.untitledResult,a=S.test(o),u=[];if(a)u.push(M("div",{innerHTML:o}));else{const e=this._splitResult(o,r),t=r.toLowerCase();e.forEach(((e,s)=>{e&&e.length&&(e.toLowerCase()===t?u.push(M("strong",{key:s},e)):u.push(e))}))}const l="suggestion"===this.activeMenu&&s===t;return M("li",{bind:this,id:this._buildId("suggestion-item",t),"aria-selected":("suggestion"===this.activeMenu&&this._activeMenuItemIndex===t).toString(),onclick:this._handleSuggestionClick,key:`esri-search__suggestion_${t}`,"data-suggestion":e,role:"option",class:this.classes(w.menuItem,l?w.menuItemFocus:null)},u)}}renderSource(e){const{activeSourceIndex:t,searchAllEnabled:s}=this.viewModel,i={[w.menuItemActive]:e===t,[w.menuItemFocus]:"source"===this.activeMenu&&e===(s?this._activeMenuItemIndex-1:this._activeMenuItemIndex)},r=s?e+1:e;return M("li",{bind:this,key:`esri-search__source-${e}`,id:this._buildId("source-item",r),"aria-checked":(e===t).toString(),onclick:this._handleSourceClick,"data-source-index":e,role:"menuitemradio",class:this.classes(w.source,w.menuItem,i)},this._getSourceName(e))}renderNoResultsWarning(e){const{messages:t}=this,s=e?I(t.noResultsFoundForValue,{value:`"${e}"`}):t.noResultsFound;return M("div",{key:"esri-search__no_results"},M("div",{class:w.warningMenuHeader},t.noResults),M("div",{class:w.warningMenuText},s))}renderEmptySearchWarning(){const{messages:e}=this;return M("div",{key:"esri-search__empty-search"},M("span",{"aria-hidden":"true",class:w.noticeIcon}),M("span",{class:w.noValueText},e.emptyValue))}renderLocateWarning(){const{messages:e}=this;return M("div",{key:"esri-search__locate-error"},M("span",{"aria-hidden":"true",class:w.noticeIcon}),M("span",{class:w.noValueText},e.locateError))}renderWarning(){var e;const{displayedSearchTerm:t,_locateFailed:s}=this,{viewModel:i}=this;return s?this.renderLocateWarning():null!=(e=i.selectedSuggestion)&&e.location||t?this.renderNoResultsWarning(t):this.renderEmptySearchWarning()}_resetActiveMenuItemIndex(){this._activeMenuItemIndex=-1}_buildId(e,t){return`${this.id}-${e}${void 0===t?"":`-${t}`}`}_watchSourceChanges(){const{_handles:e,viewModel:{allSources:t}}=this,s="sources";e.remove(s),t.forEach((t=>e.add(r(t,"name",(()=>this.scheduleRender())),s)))}_handleSourcesMenuToggleClick(){const e="source"===this.activeMenu;var t;(this.activeMenu=e?"none":"source",this.renderNow(),"source"===this.activeMenu)&&(null==(t=this._sourceListNode)||t.focus())}_handleClearButtonClick(){this.viewModel.clear(),this._focus()}_handleSearchButtonClick(){this.search()}_handleSuggestionClick(e){const t=e.currentTarget["data-suggestion"];t&&(this._focus(),this.search(t))}_handleUseCurrentLocationClick(){this._useCurrentLocation()}_useCurrentLocation(){this._focus("none"),this._cancelSuggest(),this._cancelSearch();const e=new AbortController,{signal:t}=e;this._searchController=e,this.viewModel.searchNearby({signal:t}).catch((()=>{this._locateFailed=!0,this.activeMenu="warning"})).then((()=>{this._searchController=null}))}_handleSourceClick(e){this._setSourceFromMenuItem(e.currentTarget)}_setSourceFromMenuItem(e){var t;if(!e)return;const s=e["data-source-index"];this.viewModel.activeSourceIndex=s,this._clearActiveMenu(),null==(t=this._sourceMenuButtonNode)||t.focus()}_cancelSuggest(){this._suggestController&&(this._suggestController.abort(),this._suggestController=null)}_cancelSearch(){this._searchController&&(this._searchController.abort(),this._searchController=null),this._locateFailed=!1}_handleInputKeyup(e){var s;const i=t(e);if(e.ctrlKey||e.metaKey||"Copy"===i||"ArrowLeft"===i||"ArrowRight"===i||"Shift"===i)return;if("Tab"===i||"Escape"===i||e.shiftKey&&"Tab"===i)return this._cancelSuggest(),void("Escape"===i&&this._clearActiveMenu());const r="Home"===i||"End"===i||"ArrowUp"===i||"ArrowDown"===i;if("Enter"===i&&this._activeMenuItemIndex<0)return void this._cancelSuggest();const n=null==(s=this._suggestionListNode)?void 0:s.getElementsByTagName("li");if(null!=n&&n.length){if("suggestion"!==this.activeMenu&&this._openSuggestionMenu(),r)return e.preventDefault(),this._cancelSuggest(),void this._handleItemNavigation(i,n,this._suggestionListNode);const t=n[this._activeMenuItemIndex];if("Enter"===i&&t){const e=t["data-suggestion"];return void(e?(this._focus(),this.search(e)):t["data-current-location-item"]&&this._useCurrentLocation())}}this.viewModel.searchTerm&&this.suggest()}_handleItemNavigation(e,t,s){const i=this._activeMenuItemIndex;"Home"===e&&(this._activeMenuItemIndex=0),"End"===e&&(this._activeMenuItemIndex=t.length-1),"ArrowUp"===e&&(this._activeMenuItemIndex=this._activeMenuItemIndex<=0?t.length-1:this._activeMenuItemIndex-1),"ArrowDown"===e&&(this._activeMenuItemIndex=this._activeMenuItemIndex===t.length-1?0:this._activeMenuItemIndex+1),i!==this._activeMenuItemIndex&&p(t[this._activeMenuItemIndex],s)}_scrollToTopSuggestion(){this._suggestionListNode&&(this._suggestionListNode.scrollTop=0)}_openSuggestionMenu(){this.activeMenu="suggestion"}_handleInputPaste(e){const t=e.target;this.viewModel.searchTerm!==t.value&&(this.viewModel.searchTerm=t.value),this.viewModel.searchTerm&&this.suggest()}_handleSourceMenuKeydown(e){const s=t(e);if(_(s)){e.preventDefault();const t=this._sourceListNode.getElementsByTagName("li")[this._activeMenuItemIndex];this._setSourceFromMenuItem(t)}else"ArrowUp"!==s&&"ArrowDown"!==s&&"End"!==s&&"Home"!==s||e.preventDefault()}_handleSourceMenuKeyup(e){var s;const i=t(e),r="ArrowUp"===i||"ArrowDown"===i||"End"===i||"Home"===i;var n;if(r&&e.preventDefault(),"Escape"===i)return this._clearActiveMenu(),void(null==(n=this._sourceMenuButtonNode)||n.focus());const o=null==(s=this._sourceListNode)?void 0:s.getElementsByTagName("li");return o&&0!==o.length&&r?("source"!==this.activeMenu&&(this.activeMenu="source"),void this._handleItemNavigation(i,o,this._sourceListNode.parentElement)):void 0}_focus(e){this.focus(),e&&(this.activeMenu=e)}_formSubmit(e){e.preventDefault(),-1===this._activeMenuItemIndex&&this.search()}_getSourceName(e){const{messages:t}=this,s=this.viewModel,{allSources:i}=s,r=i.getItemAt(e);return e===h.ALL_INDEX?t.all:r&&r.name||t.untitledSource}_splitResult(e,t){const s=i(t);return e.replace(new RegExp(`(^|)(${s})(|$)`,"ig"),"$1|$2|$3").split("|")}_renderSearchResultsContent(){return this._searchResultRenderer.showMoreResultsOpen=!1,this._searchResultRenderer.viewModel=this.viewModel,this._searchResultRenderer}};e([u()],b.prototype,"_activeMenuItemIndex",void 0),e([u()],b.prototype,"displayedSearchTerm",null),e([u({readOnly:!0})],b.prototype,"inputId",null),e([u({readOnly:!0})],b.prototype,"suggestionsMenuId",null),e([u({readOnly:!0})],b.prototype,"sourceMenuId",null),e([u({readOnly:!0})],b.prototype,"sourceMenuButtonId",null),e([u()],b.prototype,"activeMenu",void 0),e([a("viewModel.activeSource")],b.prototype,"activeSource",void 0),e([a("viewModel.activeSourceIndex")],b.prototype,"activeSourceIndex",void 0),e([a("viewModel.allPlaceholder")],b.prototype,"allPlaceholder",void 0),e([a("viewModel.allSources")],b.prototype,"allSources",void 0),e([a("viewModel.autoNavigate")],b.prototype,"autoNavigate",void 0),e([a("viewModel.autoSelect")],b.prototype,"autoSelect",void 0),e([a("viewModel.defaultSources")],b.prototype,"defaultSources",void 0),e([u()],b.prototype,"disabled",void 0),e([a("viewModel.goToOverride")],b.prototype,"goToOverride",void 0),e([u()],b.prototype,"iconClass",void 0),e([a("viewModel.includeDefaultSources")],b.prototype,"includeDefaultSources",void 0),e([u({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],b.prototype,"label",void 0),e([a("viewModel.locationEnabled")],b.prototype,"locationEnabled",void 0),e([a("viewModel.maxResults")],b.prototype,"maxResults",void 0),e([a("viewModel.maxSuggestions")],b.prototype,"maxSuggestions",void 0),e([u(),m("esri/widgets/Search/t9n/Search")],b.prototype,"messages",void 0),e([u(),m("esri/t9n/common")],b.prototype,"messagesCommon",void 0),e([a("viewModel.minSuggestCharacters")],b.prototype,"minSuggestCharacters",void 0),e([a("viewModel.popupEnabled")],b.prototype,"popupEnabled",void 0),e([a("viewModel.popupTemplate")],b.prototype,"popupTemplate",void 0),e([a("viewModel.portal")],b.prototype,"portal",void 0),e([a("viewModel.resultGraphic")],b.prototype,"resultGraphic",void 0),e([a("viewModel.resultGraphicEnabled")],b.prototype,"resultGraphicEnabled",void 0),e([a("viewModel.results")],b.prototype,"results",void 0),e([a("viewModel.searchAllEnabled")],b.prototype,"searchAllEnabled",void 0),e([a("viewModel.searchTerm")],b.prototype,"searchTerm",void 0),e([a("viewModel.selectedResult")],b.prototype,"selectedResult",void 0),e([a("viewModel.sources")],b.prototype,"sources",void 0),e([a("viewModel.suggestions")],b.prototype,"suggestions",void 0),e([a("viewModel.suggestionsEnabled")],b.prototype,"suggestionsEnabled",void 0),e([a("viewModel.view")],b.prototype,"view",void 0),e([v(["search-complete","search-clear","search-start","select-result","suggest-start","suggest-complete"]),u({type:h})],b.prototype,"viewModel",void 0),e([a("viewModel.clear")],b.prototype,"clear",null),b=e([l("esri.widgets.Search")],b);const y=b;export{y as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import"../intl.js";import{eventKey as t}from"../core/events.js";import s from"../core/Handles.js";import{escapeRegExpString as i}from"../core/string.js";import{watch as r,on as n,init as o}from"../core/watchUtils.js";import{aliasOf as a}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import{subclass as l}from"../core/accessorSupport/decorators/subclass.js";import c from"./Widget.js";import h from"./Search/SearchResultRenderer.js";import d from"./Search/SearchViewModel.js";import{storeNode as g,keepMenuItemWithinView as p,isActivationKey as _}from"./support/widgetUtils.js";import{messageBundle as m}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{vmEvent as v}from"./support/decorators/vmEvent.js";import{tsx as M}from"./support/jsxFactory.js";import{substitute as I}from"../intl/substitute.js";const w={base:"esri-search esri-widget",loader:"esri-widget__loader",loaderText:"esri-widget__loader-text",loaderAnimation:"esri-widget__loader-animation",esriInput:"esri-input",hasMultipleSources:"esri-search--multiple-sources",isLoading:"esri-search--loading",isSearching:"esri-search--searching",showSuggestions:"esri-search--show-suggestions",showSources:"esri-search--sources",showWarning:"esri-search--warning",container:"esri-search__container",input:"esri-search__input",inputContainer:"esri-search__input-container",form:"esri-search__form",submitButton:"esri-search__submit-button",sourcesButton:"esri-search__sources-button",clearButton:"esri-search__clear-button",sourceName:"esri-search__source-name",suggestionsMenu:"esri-search__suggestions-menu",suggestionList:"esri-search__suggestions-list",suggestionListCurrentLocation:"esri-search__suggestions-list--current-location",sourcesMenu:"esri-search__sources-menu",source:"esri-search__source",warningMenu:"esri-search__warning-menu",warningMenuBody:"esri-search__warning-body",warningMenuHeader:"esri-search__warning-header",warningMenuText:"esri-search__warning-text",noValueText:"esri-search__no-value-text",esriWidgetDisabled:"esri-widget--disabled",button:"esri-widget--button",fallbackText:"esri-icon-font-fallback-text",header:"esri-widget__heading",locate:"esri-icon-locate-circled",menu:"esri-menu",menuList:"esri-menu__list",menuItem:"esri-menu__list-item",menuItemActive:"esri-menu__list-item--active",menuItemFocus:"esri-menu__list-item--focus",menuHeader:"esri-menu__header",loadingIcon:"esri-icon-loading-indicator esri-rotating",searchIcon:"esri-icon-search",dropdownIcon:"esri-icon-down-arrow esri-search__sources-button--down",dropupIcon:"esri-icon-up-arrow esri-search__sources-button--up",clearIcon:"esri-icon-close",noticeIcon:"esri-icon-notice-triangle",widgetIcon:"esri-icon-search",disabled:"esri-disabled"},S=/<[a-z/][\s\S]*>/i;let b=class extends c{constructor(e,t){super(e,t),this._activeMenuItemIndex=-1,this._handles=new s,this._inputNode=null,this._menuItemCount=0,this._sourceMenuButtonNode=null,this._sourceListNode=null,this._suggestionListNode=null,this._searchResultRenderer=new h,this._locateFailed=null,this._container=null,this.activeMenu="none",this.activeSource=null,this.activeSourceIndex=null,this.allPlaceholder=null,this.allSources=null,this.autoNavigate=null,this.autoSelect=null,this.defaultSources=null,this.disabled=!1,this.goToOverride=null,this.iconClass=w.widgetIcon,this.includeDefaultSources=null,this.label=void 0,this.locationEnabled=null,this.maxResults=null,this.maxSuggestions=null,this.messages=null,this.messagesCommon=null,this.minSuggestCharacters=null,this.popupEnabled=null,this.popupTemplate=null,this.portal=null,this.resultGraphic=null,this.resultGraphicEnabled=null,this.results=null,this.searchAllEnabled=null,this.searchTerm=null,this.selectedResult=null,this.sources=null,this.suggestions=null,this.suggestionsEnabled=null,this.view=null,this.viewModel=new d,this._clearActiveMenu=()=>{this.activeMenu="none"},this._removeActiveMenu=e=>{var t;const s=e.relatedTarget;s&&null!=(t=this._container)&&t.contains(s)||this._clearActiveMenu()},this.own(r(this,"searchTerm",(e=>{(e&&"warning"===this.activeMenu||!e&&!this.get("viewModel.selectedSuggestion.location"))&&this._clearActiveMenu()})),n(this,"viewModel.allSources","change",(()=>this._watchSourceChanges())),o(this,"activeMenu",(()=>this._resetActiveMenuItemIndex())),o(this,"viewModel.defaultPopupTemplate",(e=>{e&&(e.content=this._renderSearchResultsContent.bind(this))})))}destroy(){this._handles.destroy(),this._handles=null,this._cancelSuggest(),this._cancelSearch(),this._searchResultRenderer&&(this._searchResultRenderer.viewModel=null,this._searchResultRenderer.destroy(),this._searchResultRenderer=null)}get displayedSearchTerm(){return`${this.viewModel.searchTerm}`.trim()}get inputId(){return this._buildId("input")}get suggestionsMenuId(){return this._buildId("suggest-menu")}get sourceMenuId(){return this._buildId("source-menu")}get sourceMenuButtonId(){return this._buildId("source-menu-button")}clear(){}focus(){var e;null==(e=this._inputNode)||e.focus(),this.emit("search-focus")}blur(){var e;null==(e=this._inputNode)||e.blur(),this.emit("search-blur")}search(e){this._clearActiveMenu(),this._cancelSuggest(),this._cancelSearch();const t=new AbortController,{signal:s}=t;return this._searchController=t,this.viewModel.search(e,{signal:s}).catch((e=>{if(this._searchController===t)return this._clearActiveMenu(),this._searchController=null,e})).then((e=>{if(this._searchController===t)return this.activeMenu=e.numResults?"none":"warning",this._searchController=null,e}))}suggest(e){this._cancelSuggest();const t=new AbortController,{signal:s}=t;return this._suggestController=t,this.viewModel.suggest(e,null,{signal:s}).then((e=>{if(this._suggestController===t)return this._suggestController=null,e.numResults&&this._openSuggestionMenu(),this._scrollToTopSuggestion(),e})).catch((()=>{if(this._suggestController===t)return this._suggestController=null,null}))}render(){const{state:e}=this.viewModel,t={[w.disabled]:"disabled"===e,[w.esriWidgetDisabled]:this.disabled};return M("div",{class:this.classes(w.base,t)},"loading"===e?this.renderLoader():this.renderContainer())}renderSubmitButton(){const{messages:e}=this;return M("button",{"aria-label":e.searchButtonTitle,bind:this,class:this.classes(w.submitButton,w.button),key:"esri-search__submit-button",onclick:this._handleSearchButtonClick,title:e.searchButtonTitle,type:"button"},M("span",{"aria-hidden":"true",class:w.searchIcon}))}renderWarningMenu(){return M("div",{key:"esri-search__error-menu",class:this.classes(w.menu,w.warningMenu)},M("div",{class:w.warningMenuBody},this.renderWarning()))}renderSourceMenuButton(){const{messages:e,activeMenu:t,sourceMenuId:s,sourceMenuButtonId:i}=this,{activeSourceIndex:r,allSources:n}=this.viewModel;return n.length>1?M("button",{id:i,key:"esri-search__source-menu-button",bind:this,"aria-label":e.searchIn,title:e.searchIn,"aria-haspopup":"true","aria-expanded":("source"===t).toString(),"aria-controls":s,class:this.classes(w.sourcesButton,w.button),onclick:this._handleSourcesMenuToggleClick,onfocus:this._handleSourcesMenuToggleFocus,afterCreate:g,"data-node-ref":"_sourceMenuButtonNode",type:"button"},M("span",{"aria-hidden":"true",class:w.dropdownIcon}),M("span",{"aria-hidden":"true",class:w.dropupIcon}),M("span",{class:w.sourceName},this._getSourceName(r))):null}renderSourcesList(){const{allSources:e,searchAllEnabled:t}=this.viewModel,{_activeMenuItemIndex:s,activeMenu:i,sourceMenuId:r,sourceMenuButtonId:n}=this,o="source"===i&&s>-1?this._buildId("source-item",s):null;return e.length>1?M("ul",{"aria-activedescendant":o,"aria-labelledby":n,id:r,role:"menu",bind:this,afterCreate:g,onkeydown:this._handleSourceMenuKeydown,onkeyup:this._handleSourceMenuKeyup,"data-node-ref":"_sourceListNode",class:w.menuList,tabIndex:-1},t?this.renderSource(d.ALL_INDEX):null,e.map(((e,t)=>this.renderSource(t))).toArray()):null}renderSourcesMenu(){const{allSources:e}=this.viewModel;return e.length>1?M("div",{key:"esri-search__source-menu",class:this.classes(w.menu,w.sourcesMenu)},this.renderSourcesList()):null}renderLoader(){const{messages:e,messagesCommon:t}=this;return M("div",{class:w.loader,key:"base-loader"},M("span",{"aria-hidden":"true",class:w.loaderAnimation}),M("span",{class:w.fallbackText},e.searchButtonTitle),M("span",{class:w.loaderText},t.loading))}renderContainer(){const{allSources:e,state:t}=this.viewModel,{activeMenu:s}=this,i={[w.hasMultipleSources]:e.length>1,[w.isLoading]:"loading"===t,[w.isSearching]:"searching"===t,[w.showWarning]:"warning"===s,[w.showSources]:"source"===s,[w.showSuggestions]:"suggestion"===s};return M("div",{tabIndex:-1,afterCreate:e=>{this._container=e,e.addEventListener("focusout",this._removeActiveMenu)},afterRemoved:e=>{e.removeEventListener("focusout",this._removeActiveMenu)},class:this.classes(i,w.container),key:"base-container"},this.renderSourceMenuButton(),this.renderSourcesMenu(),this.renderInputContainer(),this.renderSubmitButton(),this.renderWarningMenu())}renderClearButton(){return this.searchTerm?M("button",{bind:this,class:this.classes(w.clearButton,w.button),key:"esri-search__clear-button",onclick:this._handleClearButtonClick,onfocus:this._clearActiveMenu,title:this.messages.clearButtonTitle,type:"button"},M("span",{"aria-hidden":"true",class:w.clearIcon})):null}renderLocationGroup(){const{messages:e,locationEnabled:t,displayedSearchTerm:s}=this,i=t&&!s,r="suggestion"===this.activeMenu&&0===this._activeMenuItemIndex;return i?M("ul",{role:"group",key:"esri-search__suggestion-list-current-location",class:this.classes(w.menuList,w.suggestionList,w.suggestionListCurrentLocation)},M("li",{bind:this,"data-current-location-item":!0,onclick:this._handleUseCurrentLocationClick,id:this._buildId("suggestion-item",0),"aria-selected":("suggestion"===this.activeMenu&&0===this._activeMenuItemIndex).toString(),role:"option",class:this.classes(w.menuItem,r?w.menuItemFocus:null)},M("span",{"aria-hidden":"true",class:w.locate})," ",e.useCurrentLocation)):null}renderInput(){const{activeMenu:e,locationEnabled:t,displayedSearchTerm:s,messages:i,suggestionsMenuId:r,inputId:n,_activeMenuItemIndex:o}=this,{maxInputLength:a,placeholder:u,searchTerm:l,suggestionCount:c}=this.viewModel,h=!(!(t&&!s)&&!c),d="suggestion"===e&&o>-1?this._buildId("suggestion-item",o):null;return M("input",{"aria-activedescendant":d,"aria-autocomplete":"list","aria-expanded":(h&&"suggestion"===e).toString(),"aria-controls":h?r:null,"aria-haspopup":"listbox","aria-label":i.searchButtonTitle,bind:this,placeholder:u,maxlength:a,autocomplete:"off",type:"text",class:this.classes(w.esriInput,w.input),value:l,id:n,role:"combobox",onkeyup:this._handleInputKeyup,onclick:this._openSuggestionMenu,oninput:this._handleInputPaste,onpaste:this._handleInputPaste,afterCreate:g,"data-node-ref":"_inputNode",onfocus:this.focus,onblur:this.blur,title:l?"":u})}renderForm(){return M("form",{key:"esri-search__form",bind:this,class:w.form,onsubmit:this._formSubmit,role:"search"},this.renderInput())}renderSuggestList(e){const{sourceIndex:t}=e,s=e.results.length,i=e.results;return s?M("ul",{role:"group",key:`esri-search__suggestion-list-${t}`,class:this.classes(w.menuList,w.suggestionList)},i.map((e=>this.renderSuggestion(e,this._menuItemCount++)))):null}renderSuggestionsGroup(){const{suggestions:e}=this.viewModel;return e?e.map((e=>[this.renderSuggestionHeader(e),this.renderSuggestList(e)])):null}renderSuggestionsMenu(){const{displayedSearchTerm:e,locationEnabled:t,suggestionsMenuId:s,inputId:i}=this,{suggestionCount:r}=this.viewModel,n=t&&!e||r;return this._menuItemCount=0,n?M("div",{id:s,key:"esri-search__suggestions-menu",class:this.classes(w.menu,w.suggestionsMenu),role:"listbox","aria-labelledby":i,bind:this,afterCreate:g,"data-node-ref":"_suggestionListNode"},this.renderLocationGroup(),this.renderSuggestionsGroup()):null}renderInputContainer(){return M("div",{key:"esri-search__input-container",class:w.inputContainer},this.renderForm(),this.renderSuggestionsMenu(),this.renderClearButton())}renderSuggestionHeader(e){const{allSources:t,activeSourceIndex:s}=this.viewModel,{sourceIndex:i}=e,r=e.results.length,n=t.length>1&&s===d.ALL_INDEX;return r&&n?M("div",{key:`esri-search__suggestion-header-${i}`,class:w.menuHeader},this._getSourceName(i)):null}renderSuggestion(e,t){const{_activeMenuItemIndex:s,messages:i}=this,{searchTerm:r}=this.viewModel;if(r){const{text:n}=e,o=n||i.untitledResult,a=S.test(o),u=[];if(a)u.push(M("div",{innerHTML:o}));else{const e=this._splitResult(o,r),t=r.toLowerCase();e.forEach(((e,s)=>{e&&e.length&&(e.toLowerCase()===t?u.push(M("strong",{key:s},e)):u.push(e))}))}const l="suggestion"===this.activeMenu&&s===t;return M("li",{bind:this,id:this._buildId("suggestion-item",t),"aria-selected":("suggestion"===this.activeMenu&&this._activeMenuItemIndex===t).toString(),onclick:this._handleSuggestionClick,key:`esri-search__suggestion_${t}`,"data-suggestion":e,role:"option",class:this.classes(w.menuItem,l?w.menuItemFocus:null)},u)}}renderSource(e){const{activeSourceIndex:t,searchAllEnabled:s}=this.viewModel,i={[w.menuItemActive]:e===t,[w.menuItemFocus]:"source"===this.activeMenu&&e===(s?this._activeMenuItemIndex-1:this._activeMenuItemIndex)},r=s?e+1:e;return M("li",{bind:this,key:`esri-search__source-${e}`,id:this._buildId("source-item",r),"aria-checked":(e===t).toString(),onclick:this._handleSourceClick,"data-source-index":e,role:"menuitemradio",class:this.classes(w.source,w.menuItem,i)},this._getSourceName(e))}renderNoResultsWarning(e){const{messages:t}=this,s=e?I(t.noResultsFoundForValue,{value:`"${e}"`}):t.noResultsFound;return M("div",{key:"esri-search__no_results"},M("div",{class:w.warningMenuHeader},t.noResults),M("div",{class:w.warningMenuText},s))}renderEmptySearchWarning(){const{messages:e}=this;return M("div",{key:"esri-search__empty-search"},M("span",{"aria-hidden":"true",class:w.noticeIcon}),M("span",{class:w.noValueText},e.emptyValue))}renderLocateWarning(){const{messages:e}=this;return M("div",{key:"esri-search__locate-error"},M("span",{"aria-hidden":"true",class:w.noticeIcon}),M("span",{class:w.noValueText},e.locateError))}renderWarning(){var e;const{displayedSearchTerm:t,_locateFailed:s}=this,{viewModel:i}=this;return s?this.renderLocateWarning():null!=(e=i.selectedSuggestion)&&e.location||t?this.renderNoResultsWarning(t):this.renderEmptySearchWarning()}_resetActiveMenuItemIndex(){this._activeMenuItemIndex=-1}_buildId(e,t){return`${this.id}-${e}${void 0===t?"":`-${t}`}`}_watchSourceChanges(){const{_handles:e,viewModel:{allSources:t}}=this,s="sources";e.remove(s),t.forEach((t=>e.add(r(t,"name",(()=>this.scheduleRender())),s)))}_handleSourcesMenuToggleFocus(){"source"!==this.activeMenu&&this._clearActiveMenu()}_handleSourcesMenuToggleClick(){const e="source"===this.activeMenu;var t;(this.activeMenu=e?"none":"source",this.renderNow(),"source"===this.activeMenu)&&(null==(t=this._sourceListNode)||t.focus())}_handleClearButtonClick(){this.viewModel.clear(),this._focus()}_handleSearchButtonClick(){this.search()}_handleSuggestionClick(e){const t=e.currentTarget["data-suggestion"];t&&(this._focus(),this.search(t))}_handleUseCurrentLocationClick(){this._useCurrentLocation()}_useCurrentLocation(){this._focus("none"),this._cancelSuggest(),this._cancelSearch();const e=new AbortController,{signal:t}=e;this._searchController=e,this.viewModel.searchNearby({signal:t}).then((e=>{this.activeMenu=e.numResults?"none":"warning"})).catch((()=>{this._locateFailed=!0,this.activeMenu="warning"})).then((()=>{this._searchController=null}))}_handleSourceClick(e){this._setSourceFromMenuItem(e.currentTarget)}_setSourceFromMenuItem(e){var t;if(!e)return;const s=e["data-source-index"];this.viewModel.activeSourceIndex=s,this._clearActiveMenu(),null==(t=this._sourceMenuButtonNode)||t.focus()}_cancelSuggest(){this._suggestController&&(this._suggestController.abort(),this._suggestController=null)}_cancelSearch(){this._searchController&&(this._searchController.abort(),this._searchController=null),this._locateFailed=!1}_handleInputKeyup(e){var s;const i=t(e);if(e.ctrlKey||e.metaKey||"Copy"===i||"ArrowLeft"===i||"ArrowRight"===i||"Shift"===i)return;if("Tab"===i||"Escape"===i||e.shiftKey&&"Tab"===i)return this._cancelSuggest(),void("Escape"===i&&this._clearActiveMenu());const r="Home"===i||"End"===i||"ArrowUp"===i||"ArrowDown"===i;if("Enter"===i&&this._activeMenuItemIndex<0)return void this._cancelSuggest();const n=null==(s=this._suggestionListNode)?void 0:s.getElementsByTagName("li");if(null!=n&&n.length){if("suggestion"!==this.activeMenu&&this._openSuggestionMenu(),r)return e.preventDefault(),this._cancelSuggest(),void this._handleItemNavigation(i,n,this._suggestionListNode);const t=n[this._activeMenuItemIndex];if("Enter"===i&&t){const e=t["data-suggestion"];return void(e?(this._focus(),this.search(e)):t["data-current-location-item"]&&this._useCurrentLocation())}}this.viewModel.searchTerm&&this.suggest()}_handleItemNavigation(e,t,s){const i=this._activeMenuItemIndex;"Home"===e&&(this._activeMenuItemIndex=0),"End"===e&&(this._activeMenuItemIndex=t.length-1),"ArrowUp"===e&&(this._activeMenuItemIndex=this._activeMenuItemIndex<=0?t.length-1:this._activeMenuItemIndex-1),"ArrowDown"===e&&(this._activeMenuItemIndex=this._activeMenuItemIndex===t.length-1?0:this._activeMenuItemIndex+1),i!==this._activeMenuItemIndex&&p(t[this._activeMenuItemIndex],s)}_scrollToTopSuggestion(){this._suggestionListNode&&(this._suggestionListNode.scrollTop=0)}_openSuggestionMenu(){this.activeMenu="suggestion"}_handleInputPaste(e){const t=e.target;this.viewModel.searchTerm!==t.value&&(this.viewModel.searchTerm=t.value),this.viewModel.searchTerm&&this.suggest()}_handleSourceMenuKeydown(e){const s=t(e);if(_(s)){e.preventDefault();const t=this._sourceListNode.getElementsByTagName("li")[this._activeMenuItemIndex];this._setSourceFromMenuItem(t)}else"ArrowUp"!==s&&"ArrowDown"!==s&&"End"!==s&&"Home"!==s||e.preventDefault()}_handleSourceMenuKeyup(e){var s;const i=t(e),r="ArrowUp"===i||"ArrowDown"===i||"End"===i||"Home"===i;var n;if(r&&e.preventDefault(),"Escape"===i)return this._clearActiveMenu(),void(null==(n=this._sourceMenuButtonNode)||n.focus());const o=null==(s=this._sourceListNode)?void 0:s.getElementsByTagName("li");return o&&0!==o.length&&r?("source"!==this.activeMenu&&(this.activeMenu="source"),void this._handleItemNavigation(i,o,this._sourceListNode.parentElement)):void 0}_focus(e){this.focus(),e&&(this.activeMenu=e)}_formSubmit(e){e.preventDefault(),-1===this._activeMenuItemIndex&&this.search()}_getSourceName(e){const{messages:t}=this,s=this.viewModel,{allSources:i}=s,r=i.getItemAt(e);return e===d.ALL_INDEX?t.all:r&&r.name||t.untitledSource}_splitResult(e,t){const s=i(t);return e.replace(new RegExp(`(^|)(${s})(|$)`,"ig"),"$1|$2|$3").split("|")}_renderSearchResultsContent(){return this._searchResultRenderer.showMoreResultsOpen=!1,this._searchResultRenderer.viewModel=this.viewModel,this._searchResultRenderer}};e([u()],b.prototype,"_activeMenuItemIndex",void 0),e([u()],b.prototype,"displayedSearchTerm",null),e([u({readOnly:!0})],b.prototype,"inputId",null),e([u({readOnly:!0})],b.prototype,"suggestionsMenuId",null),e([u({readOnly:!0})],b.prototype,"sourceMenuId",null),e([u({readOnly:!0})],b.prototype,"sourceMenuButtonId",null),e([u()],b.prototype,"activeMenu",void 0),e([a("viewModel.activeSource")],b.prototype,"activeSource",void 0),e([a("viewModel.activeSourceIndex")],b.prototype,"activeSourceIndex",void 0),e([a("viewModel.allPlaceholder")],b.prototype,"allPlaceholder",void 0),e([a("viewModel.allSources")],b.prototype,"allSources",void 0),e([a("viewModel.autoNavigate")],b.prototype,"autoNavigate",void 0),e([a("viewModel.autoSelect")],b.prototype,"autoSelect",void 0),e([a("viewModel.defaultSources")],b.prototype,"defaultSources",void 0),e([u()],b.prototype,"disabled",void 0),e([a("viewModel.goToOverride")],b.prototype,"goToOverride",void 0),e([u()],b.prototype,"iconClass",void 0),e([a("viewModel.includeDefaultSources")],b.prototype,"includeDefaultSources",void 0),e([u({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],b.prototype,"label",void 0),e([a("viewModel.locationEnabled")],b.prototype,"locationEnabled",void 0),e([a("viewModel.maxResults")],b.prototype,"maxResults",void 0),e([a("viewModel.maxSuggestions")],b.prototype,"maxSuggestions",void 0),e([u(),m("esri/widgets/Search/t9n/Search")],b.prototype,"messages",void 0),e([u(),m("esri/t9n/common")],b.prototype,"messagesCommon",void 0),e([a("viewModel.minSuggestCharacters")],b.prototype,"minSuggestCharacters",void 0),e([a("viewModel.popupEnabled")],b.prototype,"popupEnabled",void 0),e([a("viewModel.popupTemplate")],b.prototype,"popupTemplate",void 0),e([a("viewModel.portal")],b.prototype,"portal",void 0),e([a("viewModel.resultGraphic")],b.prototype,"resultGraphic",void 0),e([a("viewModel.resultGraphicEnabled")],b.prototype,"resultGraphicEnabled",void 0),e([a("viewModel.results")],b.prototype,"results",void 0),e([a("viewModel.searchAllEnabled")],b.prototype,"searchAllEnabled",void 0),e([a("viewModel.searchTerm")],b.prototype,"searchTerm",void 0),e([a("viewModel.selectedResult")],b.prototype,"selectedResult",void 0),e([a("viewModel.sources")],b.prototype,"sources",void 0),e([a("viewModel.suggestions")],b.prototype,"suggestions",void 0),e([a("viewModel.suggestionsEnabled")],b.prototype,"suggestionsEnabled",void 0),e([a("viewModel.view")],b.prototype,"view",void 0),e([v(["search-complete","search-clear","search-start","select-result","suggest-start","suggest-complete"]),u({type:d})],b.prototype,"viewModel",void 0),e([a("viewModel.clear")],b.prototype,"clear",null),b=e([l("esri.widgets.Search")],b);const y=b;export{y 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 s from"../../analysis/Slice.js";import t from"../../core/Handles.js";import o from"../../core/Logger.js";import{isNone as i,isSome as r,destroyMaybe as l,applySome as a,unwrapOr as n,unwrap as d}from"../../core/maybe.js";import{ignoreAbortErrors as c}from"../../core/promiseUtils.js";import{watch as h,sync as p,whenOnce as u}from"../../core/reactiveUtils.js";import{property as y}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as m}from"../../core/accessorSupport/decorators/subclass.js";import w from"../../views/3d/interactive/analysisTools/slice/SliceTool.js";import{InteractiveAnalysisViewModel as g}from"../support/InteractiveAnalysisViewModel.js";const f=o.getLogger("esri.widgets.Slice.SliceViewModel"),x=new Set;let S=class extends g{constructor(e){super(e),this._handles=new t,this.analysisView=null,this.logger=f,this.supportedViewType="3d",this.unsupportedErrorMessage="SliceViewModel is only supported in 3D views.",this.ready=!1,x.add(this)}initialize(){this._handles.add(h((()=>this.shape),((e,s)=>{i(s)&&r(e)?i(this.tool)&&!this.creatingTool&&this.createTool():r(s)&&i(e)&&this.removeTool()}),p)),r(this.shape)&&this.createTool()}destroy(){this._handles=l(this._handles),x.delete(this)}get state(){return this.disabled||!this.ready?"disabled":i(this.tool)||"pending"===this.tool.toolState?"ready":this.tool.state}get shape(){return this.analysis.shape}set shape(e){this.analysis.shape=e}get tiltEnabled(){return this.analysis.tiltEnabled}set tiltEnabled(e){this.analysis.tiltEnabled=e}get layersMode(){const e=a(this.tool,(e=>e.layersMode));return n(e,"none")}get excludedLayers(){return this.analysis.excludedLayers}set excludedLayers(e){this.analysis.excludedLayers=e}get excludeGroundSurface(){return this.analysis.excludeGroundSurface}set excludeGroundSurface(e){this.analysis.excludeGroundSurface=e}async start(){return this.clear(),this.ready||await u((()=>this.ready)),x.forEach((e=>{e.view===this.view&&e!==this&&e.clear()})),this.createTool()}clear(){this.removeTool(),this.shape=null}enterExcludeLayerMode(){r(this.tool)&&this.tool.enterExcludeLayerMode()}exitExcludeLayerMode(){r(this.tool)&&this.tool.exitExcludeLayerMode()}_updateToolOrRecreate(e){r(this.tool)?e(this.tool):this.creatingTool&&c(this.createTool())}onConnectToAnalysisView(e){this.analysisView=e,this.ready=!0}onDisconnectFromAnalysisView(){this.ready=!1,this.analysisView=null}constructAnalysis(){return new s}constructTool(){return new w({view:d(this.view),analysis:this.analysis,visible:this.visible})}};e([y({readOnly:!0})],S.prototype,"state",null),e([y()],S.prototype,"shape",null),e([y()],S.prototype,"tiltEnabled",null),e([y()],S.prototype,"layersMode",null),e([y()],S.prototype,"excludedLayers",null),e([y({nonNullable:!0})],S.prototype,"excludeGroundSurface",null),e([y()],S.prototype,"analysisView",void 0),e([y()],S.prototype,"ready",void 0),S=e([m("esri.widgets.slice.SliceViewModel")],S);const v=S;export{v as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import s from"../../analysis/Slice.js";import t from"../../core/Handles.js";import o from"../../core/Logger.js";import{isNone as i,isSome as r,destroyMaybe as l,applySome as a,unwrapOr as n,unwrap as d}from"../../core/maybe.js";import{ignoreAbortErrors as c}from"../../core/promiseUtils.js";import{watch as h,sync as u,whenOnce as p}from"../../core/reactiveUtils.js";import{property as y}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as m}from"../../core/accessorSupport/decorators/subclass.js";import w from"../../views/3d/interactive/analysisTools/slice/SliceTool.js";import{InteractiveAnalysisViewModel as g}from"../support/InteractiveAnalysisViewModel.js";const f=o.getLogger("esri.widgets.Slice.SliceViewModel"),x=new Set;let S=class extends g{constructor(e){super(e),this.analysisView=null,this._handles=new t,this.logger=f,this.supportedViewType="3d",this.unsupportedErrorMessage="SliceViewModel is only supported in 3D views.",x.add(this)}initialize(){this._handles.add(h((()=>this.shape),((e,s)=>{i(s)&&r(e)?i(this.tool)&&!this.creatingTool&&this.createTool():r(s)&&i(e)&&this.removeTool()}),u)),r(this.shape)&&this.createTool()}destroy(){this._handles=l(this._handles),x.delete(this)}get state(){return this.disabled||!this.ready?"disabled":i(this.tool)||"pending"===this.tool.toolState?"ready":this.tool.state}get shape(){return this.analysis.shape}set shape(e){this.analysis.shape=e}get tiltEnabled(){return this.analysis.tiltEnabled}set tiltEnabled(e){this.analysis.tiltEnabled=e}get layersMode(){const e=a(this.tool,(e=>e.layersMode));return n(e,"none")}get excludedLayers(){return this.analysis.excludedLayers}set excludedLayers(e){this.analysis.excludedLayers=e}get excludeGroundSurface(){return this.analysis.excludeGroundSurface}set excludeGroundSurface(e){this.analysis.excludeGroundSurface=e}get ready(){return r(this.analysisView)}async start(){return this.clear(),this.ready||await p((()=>this.ready)),x.forEach((e=>{e.view===this.view&&e!==this&&e.clear()})),this.createTool()}clear(){this.removeTool(),this.shape=null}enterExcludeLayerMode(){r(this.tool)&&this.tool.enterExcludeLayerMode()}exitExcludeLayerMode(){r(this.tool)&&this.tool.exitExcludeLayerMode()}_updateToolOrRecreate(e){r(this.tool)?e(this.tool):this.creatingTool&&c(this.createTool())}onConnectToAnalysisView(e){this.analysisView=e}onDisconnectFromAnalysisView(){this.analysisView=null}constructAnalysis(){return new s}constructTool(){return new w({view:d(this.view),analysis:this.analysis,visible:this.visible})}};e([y({readOnly:!0})],S.prototype,"state",null),e([y()],S.prototype,"shape",null),e([y()],S.prototype,"tiltEnabled",null),e([y()],S.prototype,"layersMode",null),e([y()],S.prototype,"excludedLayers",null),e([y({nonNullable:!0})],S.prototype,"excludeGroundSurface",null),e([y()],S.prototype,"analysisView",void 0),e([y()],S.prototype,"ready",null),S=e([m("esri.widgets.slice.SliceViewModel")],S);const T=S;export{T 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"../TimeInterval.js";import{equals as i}from"../core/arrayUtils.js";import s from"../core/Collection.js";import{neverReached as n}from"../core/compilerUtils.js";import{on as o}from"../core/events.js";import{isSome as a,isNone as r,andThen as l}from"../core/maybe.js";import{throttle as m}from"../core/throttle.js";import{truncateDate as u,offsetDate as c}from"../core/timeUtils.js";import{init as d}from"../core/watchUtils.js";import{aliasOf as p}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as v}from"../core/accessorSupport/decorators/property.js";import{subclass as h}from"../core/accessorSupport/decorators/subclass.js";import{formatDate as w,convertDateFormatToIntlOptions as y}from"../intl/date.js";import f from"./Slider.js";import x from"./Widget.js";import{accessibleHandler as b}from"./support/decorators/accessibleHandler.js";import{messageBundle as _}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{vmEvent as g}from"./support/decorators/vmEvent.js";import{tsx as k}from"./support/jsxFactory.js";import"./support/widgetUtils.js";import{getCalciteThemeClass as j}from"./support/widgetThemeUtils.js";import T from"./TimeSlider/TimeSliderViewModel.js";const E="esri-time-slider",S={widgetIcon:"esri-icon-time-clock",esriWidget:"esri-widget",esriWidgetButton:"esri-widget--button",esriButtonDisabled:"esri-button--disabled",esriDisabled:"esri-disabled",timeSlider:`${E}`,timeSliderOutOfBounds:`${E}--out-of-bounds`,timeSliderMode:`${E}__mode--`,timeSliderLayout:`${E}__layout--`,timeSliderRow:`${E}__row`,animation:`${E}__animation`,animationButton:`${E}__animation-button`,animationPlay:"esri-icon-play",animationPause:"esri-icon-pause",timeExtent:`${E}__time-extent`,timeExtentGroup:`${E}__time-extent-group`,timeExtentDate:`${E}__time-extent-date`,timeExtentTime:`${E}__time-extent-time`,timeExtentSeparator:`${E}__time-extent-separator`,playbackControls:`${E}__playback-controls`,min:`${E}__min`,minDate:`${E}__min-date`,minTime:`${E}__min-time`,slider:`${E}__slider`,sliderMajorTick:"majorTick",sliderMinorTick:"minorTick",max:`${E}__max`,maxDate:`${E}__max-date`,maxTime:`${E}__max-time`,previous:`${E}__previous`,previousButton:`${E}__previous-button`,previousIcon:"esri-icon-reverse",next:`${E}__next`,nextButton:`${E}__next-button`,nextIcon:"esri-icon-forward",warning:`${E}__warning`,warningIcon:"esri-icon-notice-triangle",warningText:`${E}__warning-text`,hasActions:`${E}--has-actions`,actions:`${E}__actions`,actionsButton:`${E}__actions-button`},M=3,$=100,C=858,D=new s([{minor:new t({value:100,unit:"milliseconds"}),major:new t({value:1,unit:"seconds"}),format:{second:"numeric"}},{minor:new t({value:500,unit:"milliseconds"}),major:new t({value:5,unit:"seconds"}),format:{second:"numeric"}},{minor:new t({value:1,unit:"seconds"}),major:new t({value:20,unit:"seconds"}),format:{minute:"numeric",second:"numeric"}},{minor:new t({value:2,unit:"seconds"}),major:new t({value:30,unit:"seconds"}),format:{minute:"numeric",second:"numeric"}},{minor:new t({value:10,unit:"seconds"}),major:new t({value:1,unit:"minutes"}),format:{minute:"numeric"}},{minor:new t({value:15,unit:"seconds"}),major:new t({value:5,unit:"minutes"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:1,unit:"minutes"}),major:new t({value:20,unit:"minutes"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:5,unit:"minutes"}),major:new t({value:2,unit:"hours"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:15,unit:"minutes"}),major:new t({value:6,unit:"hours"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:1,unit:"hours"}),major:new t({value:1,unit:"days"}),format:{day:"numeric",month:"short"}},{minor:new t({value:6,unit:"hours"}),major:new t({value:1,unit:"weeks"}),format:{day:"numeric",month:"short"}},{minor:new t({value:1,unit:"days"}),major:new t({value:1,unit:"months"}),format:{month:"long"}},{minor:new t({value:2,unit:"days"}),major:new t({value:1,unit:"months"}),format:{month:"short"}},{minor:new t({value:3,unit:"days"}),major:new t({value:1,unit:"months"}),format:{month:"short"}},{minor:new t({value:4,unit:"days"}),major:new t({value:3,unit:"months"}),format:{month:"short",year:"numeric"}},{minor:new t({value:1,unit:"weeks"}),major:new t({value:1,unit:"years"}),format:{year:"numeric"}},{minor:new t({value:1,unit:"months"}),major:new t({value:1,unit:"years"}),format:{year:"numeric"}},{minor:new t({value:2,unit:"months"}),major:new t({value:2,unit:"years"}),format:{year:"numeric"}},{minor:new t({value:1,unit:"years"}),major:new t({value:1,unit:"decades"}),format:{year:"numeric"}},{minor:new t({value:2,unit:"years"}),major:new t({value:5,unit:"decades"}),format:{year:"numeric"}},{minor:new t({value:5,unit:"decades"}),major:new t({value:10,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:1,unit:"centuries"}),major:new t({value:10,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:2,unit:"centuries"}),major:new t({value:20,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:5,unit:"centuries"}),major:new t({value:50,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:10,unit:"centuries"}),major:new t({value:100,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:20,unit:"centuries"}),major:new t({value:200,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:50,unit:"centuries"}),major:new t({value:500,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:100,unit:"centuries"}),major:new t({value:1e3,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:200,unit:"centuries"}),major:new t({value:1e3,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:500,unit:"centuries"}),major:new t({value:5e3,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:1e3,unit:"centuries"}),major:new t({value:1e4,unit:"centuries"}),format:{era:"short",year:"numeric"}}]);let F=class extends x{constructor(e,t){super(e,t),this._ignoreNextSliderUpdate=!1,this._slider=new f({precision:0,visibleElements:{rangeLabels:!1},rangeLabelInputsEnabled:!1,thumbsConstrained:!1}),this._tickFormat=null,this.actions=null,this.disabled=!1,this.effectiveStops=null,this.fullTimeExtent=null,this.iconClass=S.widgetIcon,this.label=void 0,this.labelFormatFunction=null,this.loop=!1,this.messages=null,this.messagesCommon=null,this.mode="time-window",this.playRate=1e3,this.stops={count:10},this.tickConfigs=null,this.timeExtent=null,this.timeVisible=!1,this.view=null,this.viewModel=new T}initialize(){this.own([this._slider.watch("values",(e=>{if(this._ignoreNextSliderUpdate)return void(this._ignoreNextSliderUpdate=!1);const t=this.viewModel.valuesToTimeExtent(e);a(this.timeExtent)?a(t)?this.timeExtent.equals(t)||(this.timeExtent=t):this.timeExtent=null:a(t)&&(this.timeExtent=t)})),o(window,"resize",m((()=>this.scheduleRender()),$)),d(this,"effectiveStops",(()=>this._updateSliderSteps()))])}loadDependencies(){return Promise.all([import("@esri/calcite-components/dist/components/calcite-action.js"),import("@esri/calcite-components/dist/components/calcite-action-menu.js")])}destroy(){this._slider.destroy(),this._tickFormat=null}get interactive(){return!this.disabled&&this.viewModel&&"disabled"!==this.viewModel.state}set layout(e){-1===["auto","compact","wide"].indexOf(e)&&(e="auto"),this._set("layout",e)}static async getPropertiesFromWebMap(e,t){return T.getPropertiesFromWebMap(e,t)}next(){}play(){}previous(){}stop(){return null}render(){const{_slider:e,actions:t,domNode:s,effectiveStops:n,fullTimeExtent:o,interactive:m,messagesCommon:u,mode:c,tickConfigs:d,timeExtent:p,timeVisible:v,viewModel:{state:h,timeExtentValues:y}}=this;if(a(o)){const{start:t,end:i}=o;if(a(t)&&a(i)){const s=t.getTime(),n=i.getTime(),o=e.min!==s||e.max!==n;if(o&&(e.min=s,e.max=n),a(d))e.tickConfigs!==d&&(e.tickConfigs=d);else{var f;const t=(n-s)/((null==(f=e.trackElement)?void 0:f.offsetWidth)||400),i=D.find((e=>e.minor.toMilliseconds()>M*t)),a=this._tickFormat!==i&&null!=i;if(a&&(this._tickFormat=i),o||a){const t={mode:"position",values:this._getTickPositions(i.minor),labelsVisible:!1,tickCreatedFunction:(e,t)=>{t.classList.add(S.sliderMinorTick)}},s={mode:"position",values:this._getTickPositions(i.major),labelsVisible:!0,tickCreatedFunction:(e,t)=>{t.classList.add(S.sliderMajorTick)},labelFormatFunction:e=>w(e,i.format)};e.tickConfigs=[t,s]}}}}const x=r(this.fullTimeExtent)||r(this.timeExtent)||this.timeExtent.isAllTime||this.timeExtent.isEmpty||a(this.timeExtent.start)&&(this.timeExtent.start<this.fullTimeExtent.start||this.timeExtent.start>this.fullTimeExtent.end)||a(this.timeExtent.end)&&(this.timeExtent.end>this.fullTimeExtent.end||this.timeExtent.end<this.fullTimeExtent.start);if(x)switch(this._ignoreNextSliderUpdate=!0,c){case"time-window":e.values=[e.min,e.max];break;case"instant":case"cumulative-from-end":e.values=[e.min];break;case"cumulative-from-start":e.values=[e.max]}else a(y)?i(e.values,y)||(e.values=y):e.values=null;e.disabled=!m;const b="ready"===h,_="playing"===h,g=x||!m||r(n)||0===n.length,T="auto"===this.layout?s.clientWidth<C?"compact":"wide":this.layout,E=k("div",{class:S.animation},k("button",{"aria-disabled":g?"true":"false","aria-label":_?u.control.stop:u.control.play,bind:this,class:this.classes(S.esriWidgetButton,S.animationButton,g&&S.esriButtonDisabled),disabled:g,title:_?u.control.stop:u.control.play,onclick:this._playOrStopClick,type:"button"},k("div",{class:this.classes((b||g)&&S.animationPlay,_&&S.animationPause)}))),$=a(this.labelFormatFunction)?k("div",{key:"extent",bind:this,class:S.timeExtentDate,"data-type":"extent","data-layout":T,"data-date":l(p,(e=>[e.start,e.end])),afterCreate:this._createLabel,afterUpdate:this._createLabel}):r(p)||a(p)&&p.isAllTime?[k("div",{class:this.classes(S.warning,S.warningIcon)}),k("div",{key:"warning-text",class:S.warningText},this.messages.noTimeExtent)]:p.isEmpty?[k("div",{class:this.classes(S.warning,S.warningIcon)}),k("div",{key:"warning-text",class:S.warningText},this.messages.emptyTimeExtent)]:[a(p.start)&&k("div",{key:"start-date-group",class:S.timeExtentGroup},k("div",{key:"start-date",class:S.timeExtentDate},this._formatDate(p.start)),v&&k("div",{key:"start-time",class:S.timeExtentTime},this._formatTime(p.start))),a(p.start)&&a(p.end)&&p.start.getTime()!==p.end.getTime()&&k("div",{key:"separator",class:S.timeExtentSeparator},"–"),a(p.end)&&(r(p.start)||p.start.getTime()!==p.end.getTime())&&k("div",{key:"end-date-group",class:S.timeExtentGroup},k("div",{key:"end-date",class:S.timeExtentDate},this._formatDate(p.end)),v&&k("div",{key:"end-time",class:S.timeExtentTime},this._formatTime(p.end)))],F=k("div",{class:this.classes(S.timeExtent,!m&&S.esriButtonDisabled)},[$]),B=a(this.labelFormatFunction)?k("div",{key:"min-date",bind:this,class:S.minDate,"data-date":l(o,(e=>e.start)),"data-type":"min","data-layout":T,afterCreate:this._createLabel,afterUpdate:this._createLabel}):a(o)&&a(o.start)&&[k("div",{key:"min-date",class:S.minDate},this._formatDate(o.start)),v&&k("div",{key:"min-time",class:S.minTime},this._formatTime(o.start))],L=k("div",{class:this.classes(S.min,!m&&S.esriButtonDisabled)},[B]),U=k("div",{class:S.slider},e.render()),W=a(this.labelFormatFunction)?k("div",{key:"max-date",bind:this,class:S.maxDate,"data-date":l(o,(e=>e.end)),"data-type":"max","data-layout":T,afterCreate:this._createLabel,afterUpdate:this._createLabel}):a(o)&&a(o.end)&&[k("div",{key:"max-date",class:S.maxDate},this._formatDate(o.end)),v&&k("div",{key:"max-time",class:S.maxTime},this._formatTime(o.end))],I=k("div",{class:this.classes(S.max,!m&&S.esriButtonDisabled)},[W]),O=k("div",{class:S.previous},k("button",{"aria-disabled":g?"true":"false","aria-label":u.pagination.previous,bind:this,class:this.classes(S.esriWidgetButton,S.previousButton,(_||g)&&S.esriButtonDisabled),disabled:g,title:u.pagination.previous,onclick:this._previousClick,type:"button"},k("div",{class:S.previousIcon}))),P=k("div",{class:S.next},k("button",{"aria-disabled":g?"true":"false","aria-label":u.pagination.next,bind:this,class:this.classes(S.esriWidgetButton,S.nextButton,(_||g)&&S.esriButtonDisabled),disabled:g,title:u.pagination.next,onclick:this._nextClick,type:"button"},k("div",{class:S.nextIcon}))),A=(null==t?void 0:t.length)>0,R=A&&k("div",{class:S.actions,title:u.options},k("calcite-action-menu",{label:u.options,class:S.actionsButton},t.toArray().map((e=>k("calcite-action",{bind:this,icon:e.icon,id:e.id,onCalciteActionClick:()=>this.viewModel.triggerAction(e),text:e.title,textEnabled:!0})))));return k("div",{class:this.classes(S.timeSlider,S.esriWidget,`${S.timeSliderMode}${c}`,`${S.timeSliderLayout}${T}`,!m&&S.esriDisabled,x&&S.timeSliderOutOfBounds,A&&S.hasActions,j())},"wide"===T&&k("div",{class:S.timeSliderRow},k("div",{class:S.playbackControls},[E,F,L,U,I,O,P]),R),"compact"===T&&[k("div",{key:"time-slider-row-1",class:S.timeSliderRow},[F,R]),k("div",{key:"time-slider-row-2",class:S.timeSliderRow},[U]),k("div",{key:"time-slider-row-3",class:S.timeSliderRow},[L,O,E,P,I])])}updateWebDocument(e){var t;null==(t=this.viewModel)||t.updateWebDocument(e)}_createLabel(e){if(r(this.labelFormatFunction))return;const t=e.getAttribute("data-type"),i=e.getAttribute("data-layout"),s=e["data-date"];this.labelFormatFunction(s,t,e,i)}_getTickPositions(e){const{fullTimeExtent:t}=this;if(r(t)||r(t.start)||r(t.end))return[];const{start:i,end:s}=t,n=[],{value:o,unit:a}=e;let l=u(i,a);for(;l.getTime()<=s.getTime();)l.getTime()>=i.getTime()&&n.push(l.getTime()),l=c(l,o,a);return n}_formatDate(e){return e?w(e,y("short-date")):null}_formatTime(e){return e?w(e,y("long-time")):null}_updateSliderSteps(){this._slider.steps=a(this.effectiveStops)&&this.effectiveStops.length>0?this.effectiveStops.map((e=>e.getTime())):null}_playOrStopClick(){switch(this.viewModel.state){case"ready":this.viewModel.play();break;case"playing":this.viewModel.stop();break;case"disabled":break;default:n(this.viewModel.state)}}_previousClick(){this.viewModel.previous()}_nextClick(){this.viewModel.next()}};e([p("viewModel.actions")],F.prototype,"actions",void 0),e([v()],F.prototype,"disabled",void 0),e([p("viewModel.effectiveStops")],F.prototype,"effectiveStops",void 0),e([p("viewModel.fullTimeExtent")],F.prototype,"fullTimeExtent",void 0),e([v()],F.prototype,"iconClass",void 0),e([v({readOnly:!0})],F.prototype,"interactive",null),e([v({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],F.prototype,"label",void 0),e([v()],F.prototype,"labelFormatFunction",void 0),e([v({value:"auto"})],F.prototype,"layout",null),e([p("viewModel.loop")],F.prototype,"loop",void 0),e([v(),_("esri/widgets/TimeSlider/t9n/TimeSlider")],F.prototype,"messages",void 0),e([v(),_("esri/t9n/common")],F.prototype,"messagesCommon",void 0),e([p("viewModel.mode")],F.prototype,"mode",void 0),e([p("viewModel.playRate")],F.prototype,"playRate",void 0),e([p("viewModel.stops")],F.prototype,"stops",void 0),e([v()],F.prototype,"tickConfigs",void 0),e([p("viewModel.timeExtent")],F.prototype,"timeExtent",void 0),e([v({nonNullable:!0})],F.prototype,"timeVisible",void 0),e([p("viewModel.view")],F.prototype,"view",void 0),e([v({type:T}),g("trigger-action")],F.prototype,"viewModel",void 0),e([p("viewModel.next")],F.prototype,"next",null),e([p("viewModel.play")],F.prototype,"play",null),e([p("viewModel.previous")],F.prototype,"previous",null),e([p("viewModel.stop")],F.prototype,"stop",null),e([b()],F.prototype,"_playOrStopClick",null),e([b()],F.prototype,"_previousClick",null),e([b()],F.prototype,"_nextClick",null),F=e([h("esri.widgets.TimeSlider")],F);const B=F;export{B as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../TimeInterval.js";import{equals as i}from"../core/arrayUtils.js";import s from"../core/Collection.js";import{neverReached as n}from"../core/compilerUtils.js";import{isSome as o,isNone as a,andThen as r}from"../core/maybe.js";import{watch as l,initial as m}from"../core/reactiveUtils.js";import{truncateDate as u,offsetDate as d}from"../core/timeUtils.js";import{aliasOf as c}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as p}from"../core/accessorSupport/decorators/property.js";import{subclass as v}from"../core/accessorSupport/decorators/subclass.js";import{formatDate as h,convertDateFormatToIntlOptions as w}from"../intl/date.js";import y from"./Slider.js";import f from"./Widget.js";import{accessibleHandler as x}from"./support/decorators/accessibleHandler.js";import{messageBundle as b}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{vmEvent as _}from"./support/decorators/vmEvent.js";import{tsx as g}from"./support/jsxFactory.js";import{onResize as k}from"./support/widgetUtils.js";import{getCalciteThemeClass as j}from"./support/widgetThemeUtils.js";import T from"./TimeSlider/TimeSliderViewModel.js";const E="esri-time-slider",S={widgetIcon:"esri-icon-time-clock",esriWidget:"esri-widget",esriWidgetButton:"esri-widget--button",esriButtonDisabled:"esri-button--disabled",esriDisabled:"esri-disabled",timeSlider:`${E}`,timeSliderOutOfBounds:`${E}--out-of-bounds`,timeSliderMode:`${E}__mode--`,timeSliderLayout:`${E}__layout--`,timeSliderRow:`${E}__row`,animation:`${E}__animation`,animationButton:`${E}__animation-button`,animationPlay:"esri-icon-play",animationPause:"esri-icon-pause",timeExtent:`${E}__time-extent`,timeExtentGroup:`${E}__time-extent-group`,timeExtentDate:`${E}__time-extent-date`,timeExtentTime:`${E}__time-extent-time`,timeExtentSeparator:`${E}__time-extent-separator`,playbackControls:`${E}__playback-controls`,min:`${E}__min`,minDate:`${E}__min-date`,minTime:`${E}__min-time`,slider:`${E}__slider`,sliderMajorTick:"majorTick",sliderMinorTick:"minorTick",max:`${E}__max`,maxDate:`${E}__max-date`,maxTime:`${E}__max-time`,previous:`${E}__previous`,previousButton:`${E}__previous-button`,previousIcon:"esri-icon-reverse",next:`${E}__next`,nextButton:`${E}__next-button`,nextIcon:"esri-icon-forward",warning:`${E}__warning`,warningIcon:"esri-icon-notice-triangle",warningText:`${E}__warning-text`,hasActions:`${E}--has-actions`,actions:`${E}__actions`,actionsButton:`${E}__actions-button`},M=3,$=858,C=new s([{minor:new t({value:100,unit:"milliseconds"}),major:new t({value:1,unit:"seconds"}),format:{second:"numeric"}},{minor:new t({value:500,unit:"milliseconds"}),major:new t({value:5,unit:"seconds"}),format:{second:"numeric"}},{minor:new t({value:1,unit:"seconds"}),major:new t({value:20,unit:"seconds"}),format:{minute:"numeric",second:"numeric"}},{minor:new t({value:2,unit:"seconds"}),major:new t({value:30,unit:"seconds"}),format:{minute:"numeric",second:"numeric"}},{minor:new t({value:10,unit:"seconds"}),major:new t({value:1,unit:"minutes"}),format:{minute:"numeric"}},{minor:new t({value:15,unit:"seconds"}),major:new t({value:5,unit:"minutes"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:1,unit:"minutes"}),major:new t({value:20,unit:"minutes"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:5,unit:"minutes"}),major:new t({value:2,unit:"hours"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:15,unit:"minutes"}),major:new t({value:6,unit:"hours"}),format:{hour:"numeric",minute:"numeric"}},{minor:new t({value:1,unit:"hours"}),major:new t({value:1,unit:"days"}),format:{day:"numeric",month:"short"}},{minor:new t({value:6,unit:"hours"}),major:new t({value:1,unit:"weeks"}),format:{day:"numeric",month:"short"}},{minor:new t({value:1,unit:"days"}),major:new t({value:1,unit:"months"}),format:{month:"long"}},{minor:new t({value:2,unit:"days"}),major:new t({value:1,unit:"months"}),format:{month:"short"}},{minor:new t({value:3,unit:"days"}),major:new t({value:1,unit:"months"}),format:{month:"short"}},{minor:new t({value:4,unit:"days"}),major:new t({value:3,unit:"months"}),format:{month:"short",year:"numeric"}},{minor:new t({value:1,unit:"weeks"}),major:new t({value:1,unit:"years"}),format:{year:"numeric"}},{minor:new t({value:1,unit:"months"}),major:new t({value:1,unit:"years"}),format:{year:"numeric"}},{minor:new t({value:2,unit:"months"}),major:new t({value:2,unit:"years"}),format:{year:"numeric"}},{minor:new t({value:1,unit:"years"}),major:new t({value:1,unit:"decades"}),format:{year:"numeric"}},{minor:new t({value:2,unit:"years"}),major:new t({value:5,unit:"decades"}),format:{year:"numeric"}},{minor:new t({value:5,unit:"decades"}),major:new t({value:10,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:1,unit:"centuries"}),major:new t({value:10,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:2,unit:"centuries"}),major:new t({value:20,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:5,unit:"centuries"}),major:new t({value:50,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:10,unit:"centuries"}),major:new t({value:100,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:20,unit:"centuries"}),major:new t({value:200,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:50,unit:"centuries"}),major:new t({value:500,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:100,unit:"centuries"}),major:new t({value:1e3,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:200,unit:"centuries"}),major:new t({value:1e3,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:500,unit:"centuries"}),major:new t({value:5e3,unit:"centuries"}),format:{era:"short",year:"numeric"}},{minor:new t({value:1e3,unit:"centuries"}),major:new t({value:1e4,unit:"centuries"}),format:{era:"short",year:"numeric"}}]);let D=class extends f{constructor(e,t){super(e,t),this._ignoreNextSliderUpdate=!1,this._slider=new y({precision:0,visibleElements:{rangeLabels:!1},rangeLabelInputsEnabled:!1,thumbsConstrained:!1}),this._tickFormat=null,this.actions=null,this.disabled=!1,this.effectiveStops=null,this.fullTimeExtent=null,this.iconClass=S.widgetIcon,this.label=void 0,this.labelFormatFunction=null,this.loop=!1,this.messages=null,this.messagesCommon=null,this.mode="time-window",this.playRate=1e3,this.stops={count:10},this.tickConfigs=null,this.timeExtent=null,this.timeVisible=!1,this.view=null,this.viewModel=new T}initialize(){this.own([l((()=>this._slider.values),(e=>{if(this._ignoreNextSliderUpdate)return void(this._ignoreNextSliderUpdate=!1);const t=this.viewModel.valuesToTimeExtent(e);o(this.timeExtent)?o(t)?this.timeExtent.equals(t)||(this.timeExtent=t):this.timeExtent=null:o(t)&&(this.timeExtent=t)})),l((()=>this.effectiveStops),(()=>this._updateSliderSteps()),m)])}loadDependencies(){return Promise.all([import("@esri/calcite-components/dist/components/calcite-action.js"),import("@esri/calcite-components/dist/components/calcite-action-menu.js")])}destroy(){this._slider.destroy(),this._tickFormat=null}get interactive(){return!this.disabled&&this.viewModel&&"disabled"!==this.viewModel.state}set layout(e){-1===["auto","compact","wide"].indexOf(e)&&(e="auto"),this._set("layout",e)}static async getPropertiesFromWebMap(e,t){return T.getPropertiesFromWebMap(e,t)}next(){}play(){}previous(){}stop(){return null}render(){const{_slider:e,actions:t,domNode:s,effectiveStops:n,fullTimeExtent:l,interactive:m,messages:u,messagesCommon:d,mode:c,tickConfigs:p,timeExtent:v,timeVisible:w,viewModel:{state:y,timeExtentValues:f}}=this;if(o(l)){const{start:t,end:i}=l;if(o(t)&&o(i)){const s=t.getTime(),n=i.getTime(),a=e.min!==s||e.max!==n;if(a&&(e.min=s,e.max=n),o(p))e.tickConfigs!==p&&(e.tickConfigs=p);else{var x;const t=(n-s)/((null==(x=e.trackElement)?void 0:x.offsetWidth)||400),i=C.find((e=>e.minor.toMilliseconds()>M*t)),o=this._tickFormat!==i&&null!=i;if(o&&(this._tickFormat=i),a||o){const t={mode:"position",values:this._getTickPositions(i.minor),labelsVisible:!1,tickCreatedFunction:(e,t)=>{t.classList.add(S.sliderMinorTick)}},s={mode:"position",values:this._getTickPositions(i.major),labelsVisible:!0,tickCreatedFunction:(e,t)=>{t.classList.add(S.sliderMajorTick)},labelFormatFunction:e=>h(e,i.format)};e.tickConfigs=[t,s]}}}}const b=a(this.fullTimeExtent)||a(this.timeExtent)||this.timeExtent.isAllTime||this.timeExtent.isEmpty||o(this.timeExtent.start)&&(this.timeExtent.start<this.fullTimeExtent.start||this.timeExtent.start>this.fullTimeExtent.end)||o(this.timeExtent.end)&&(this.timeExtent.end>this.fullTimeExtent.end||this.timeExtent.end<this.fullTimeExtent.start);if(b)switch(this._ignoreNextSliderUpdate=!0,c){case"time-window":e.values=[e.min,e.max];break;case"instant":case"cumulative-from-end":e.values=[e.min];break;case"cumulative-from-start":e.values=[e.max]}else o(f)?i(e.values,f)||(e.values=f):e.values=null;e.disabled=!m;const _="ready"===y,T="playing"===y,E=b||!m||a(n)||0===n.length,D="auto"===this.layout?s.clientWidth<$?"compact":"wide":this.layout,F=g("div",{class:S.animation},g("button",{"aria-disabled":E?"true":"false","aria-label":T?d.control.stop:d.control.play,bind:this,class:this.classes(S.esriWidgetButton,S.animationButton,E&&S.esriButtonDisabled),disabled:E,title:T?d.control.stop:d.control.play,onclick:this._playOrStopClick,type:"button"},g("div",{class:this.classes((_||E)&&S.animationPlay,T&&S.animationPause)}))),B=o(this.labelFormatFunction)?g("div",{key:"extent",bind:this,class:S.timeExtentDate,"data-type":"extent","data-layout":D,"data-date":r(v,(e=>[e.start,e.end])),afterCreate:this._createLabel,afterUpdate:this._createLabel}):a(v)||o(v)&&v.isAllTime?[g("div",{class:this.classes(S.warning,S.warningIcon)}),g("div",{key:"warning-text",class:S.warningText},u.noTimeExtent)]:v.isEmpty?[g("div",{class:this.classes(S.warning,S.warningIcon)}),g("div",{key:"warning-text",class:S.warningText},u.emptyTimeExtent)]:[o(v.start)&&g("div",{key:"start-date-group",class:S.timeExtentGroup},g("div",{key:"start-date",class:S.timeExtentDate},this._formatDate(v.start)),w&&g("div",{key:"start-time",class:S.timeExtentTime},this._formatTime(v.start))),o(v.start)&&o(v.end)&&v.start.getTime()!==v.end.getTime()&&g("div",{key:"separator",class:S.timeExtentSeparator},"–"),o(v.end)&&(a(v.start)||v.start.getTime()!==v.end.getTime())&&g("div",{key:"end-date-group",class:S.timeExtentGroup},g("div",{key:"end-date",class:S.timeExtentDate},this._formatDate(v.end)),w&&g("div",{key:"end-time",class:S.timeExtentTime},this._formatTime(v.end)))],L=g("div",{class:this.classes(S.timeExtent,!m&&S.esriButtonDisabled)},[B]),U=o(this.labelFormatFunction)?g("div",{key:"min-date",bind:this,class:S.minDate,"data-date":r(l,(e=>e.start)),"data-type":"min","data-layout":D,afterCreate:this._createLabel,afterUpdate:this._createLabel}):o(l)&&o(l.start)&&[g("div",{key:"min-date",class:S.minDate},this._formatDate(l.start)),w&&g("div",{key:"min-time",class:S.minTime},this._formatTime(l.start))],W=g("div",{class:this.classes(S.min,!m&&S.esriButtonDisabled)},[U]),I=g("div",{class:S.slider},e.render()),O=o(this.labelFormatFunction)?g("div",{key:"max-date",bind:this,class:S.maxDate,"data-date":r(l,(e=>e.end)),"data-type":"max","data-layout":D,afterCreate:this._createLabel,afterUpdate:this._createLabel}):o(l)&&o(l.end)&&[g("div",{key:"max-date",class:S.maxDate},this._formatDate(l.end)),w&&g("div",{key:"max-time",class:S.maxTime},this._formatTime(l.end))],P=g("div",{class:this.classes(S.max,!m&&S.esriButtonDisabled)},[O]),A=g("div",{class:S.previous},g("button",{"aria-disabled":E?"true":"false","aria-label":d.pagination.previous,bind:this,class:this.classes(S.esriWidgetButton,S.previousButton,(T||E)&&S.esriButtonDisabled),disabled:E,title:d.pagination.previous,onclick:this._previousClick,type:"button"},g("div",{class:S.previousIcon}))),R=g("div",{class:S.next},g("button",{"aria-disabled":E?"true":"false","aria-label":d.pagination.next,bind:this,class:this.classes(S.esriWidgetButton,S.nextButton,(T||E)&&S.esriButtonDisabled),disabled:E,title:d.pagination.next,onclick:this._nextClick,type:"button"},g("div",{class:S.nextIcon}))),V=(null==t?void 0:t.length)>0,N=V&&g("div",{class:S.actions,title:d.options},g("calcite-action-menu",{label:d.options,class:S.actionsButton},t.toArray().map((e=>g("calcite-action",{bind:this,icon:e.icon,id:e.id,onCalciteActionClick:()=>this.viewModel.triggerAction(e),text:e.title,textEnabled:!0})))));return g("div",{class:this.classes(S.timeSlider,S.esriWidget,`${S.timeSliderMode}${c}`,`${S.timeSliderLayout}${D}`,!m&&S.esriDisabled,b&&S.timeSliderOutOfBounds,V&&S.hasActions,j()),afterCreate:e=>{this.own(k(e,(()=>this.scheduleRender())))},"aria-label":u.widgetLabel},"wide"===D&&g("div",{class:S.timeSliderRow},g("div",{class:S.playbackControls},[F,L,W,I,P,A,R]),N),"compact"===D&&[g("div",{key:"time-slider-row-1",class:S.timeSliderRow},[L,N]),g("div",{key:"time-slider-row-2",class:S.timeSliderRow},[I]),g("div",{key:"time-slider-row-3",class:S.timeSliderRow},[W,A,F,R,P])])}updateWebDocument(e){var t;null==(t=this.viewModel)||t.updateWebDocument(e)}_createLabel(e){if(a(this.labelFormatFunction))return;const t=e.getAttribute("data-type"),i=e.getAttribute("data-layout"),s=e["data-date"];this.labelFormatFunction(s,t,e,i)}_getTickPositions(e){const{fullTimeExtent:t}=this;if(a(t)||a(t.start)||a(t.end))return[];const{start:i,end:s}=t,n=[],{value:o,unit:r}=e;let l=u(i,r);for(;l.getTime()<=s.getTime();)l.getTime()>=i.getTime()&&n.push(l.getTime()),l=d(l,o,r);return n}_formatDate(e){return e?h(e,w("short-date")):null}_formatTime(e){return e?h(e,w("long-time")):null}_updateSliderSteps(){this._slider.steps=o(this.effectiveStops)&&this.effectiveStops.length>0?this.effectiveStops.map((e=>e.getTime())):null}_playOrStopClick(){switch(this.viewModel.state){case"ready":this.viewModel.play();break;case"playing":this.viewModel.stop();break;case"disabled":break;default:n(this.viewModel.state)}}_previousClick(){this.viewModel.previous()}_nextClick(){this.viewModel.next()}};e([c("viewModel.actions")],D.prototype,"actions",void 0),e([p()],D.prototype,"disabled",void 0),e([c("viewModel.effectiveStops")],D.prototype,"effectiveStops",void 0),e([c("viewModel.fullTimeExtent")],D.prototype,"fullTimeExtent",void 0),e([p()],D.prototype,"iconClass",void 0),e([p({readOnly:!0})],D.prototype,"interactive",null),e([p({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],D.prototype,"label",void 0),e([p()],D.prototype,"labelFormatFunction",void 0),e([p({value:"auto"})],D.prototype,"layout",null),e([c("viewModel.loop")],D.prototype,"loop",void 0),e([p(),b("esri/widgets/TimeSlider/t9n/TimeSlider")],D.prototype,"messages",void 0),e([p(),b("esri/t9n/common")],D.prototype,"messagesCommon",void 0),e([c("viewModel.mode")],D.prototype,"mode",void 0),e([c("viewModel.playRate")],D.prototype,"playRate",void 0),e([c("viewModel.stops")],D.prototype,"stops",void 0),e([p()],D.prototype,"tickConfigs",void 0),e([c("viewModel.timeExtent")],D.prototype,"timeExtent",void 0),e([p({nonNullable:!0})],D.prototype,"timeVisible",void 0),e([c("viewModel.view")],D.prototype,"view",void 0),e([p({type:T}),_("trigger-action")],D.prototype,"viewModel",void 0),e([c("viewModel.next")],D.prototype,"next",null),e([c("viewModel.play")],D.prototype,"play",null),e([c("viewModel.previous")],D.prototype,"previous",null),e([c("viewModel.stop")],D.prototype,"stop",null),e([x()],D.prototype,"_playOrStopClick",null),e([x()],D.prototype,"_previousClick",null),e([x()],D.prototype,"_nextClick",null),D=e([v("esri.widgets.TimeSlider")],D);const F=D;export{F 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"../../core/Accessor.js";import r from"../../core/Handles.js";import{isNone as s,applySome as i,destroyMaybe as n,unwrapOr as o,isSome as a}from"../../core/maybe.js";import{watch as h,syncAndInitial as c}from"../../core/reactiveUtils.js";import{property as l}from"../../core/accessorSupport/decorators/property.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";import y from"../../views/3d/environment/CloudyWeather.js";import w from"../../views/3d/environment/FoggyWeather.js";import m from"../../views/3d/environment/RainyWeather.js";import d from"../../views/3d/environment/SunnyWeather.js";let v=class extends t{constructor(e){super(e),this.view=null,this._handles=new r,this._settingWeather=!1,this._weatherByType={sunny:new d,cloudy:new y,rainy:new m,foggy:new w}}initialize(){this._handles.add([h((()=>i(this.view,(e=>e.environment.weather))),(e=>{this._settingWeather||s(e)||(this._weatherByType={...this._weatherByType,[e.type]:e})}),c)])}destroy(){this._handles=n(this._handles)}get state(){const e=this.error;if(s(e))return"ready";switch(e){case"not-visible":return"ready";case"invalid-view":case"local-scene":return"disabled"}}get error(){const e=this.view;return s(e)||!e.ready||"3d"!==e.type?"invalid-view":"local"===e.viewingMode?"local-scene":e.environmentManager.weatherVisible?null:"not-visible"}get current(){const e=i(this.view,(e=>e.environment.weather));return o(e,this._weatherByType.sunny)}set current(e){i(this.view,(t=>t.environment.weather=e))}get test(){return{...this._weatherByType}}setWeatherByType(e){a(this.view)&&(this._settingWeather=!0,this.view.environment.weather=this._weatherByType[e],this._settingWeather=!1)}};e([l()],v.prototype,"view",void 0),e([l()],v.prototype,"state",null),e([l()],v.prototype,"error",null),e([l()],v.prototype,"current",null),v=e([p("esri.widgets.Weather.WeatherViewModel")],v);const u=v;export{u as default};
5
+ import{_ as e}from"../../chunks/tslib.es6.js";import t from"../../core/Accessor.js";import r from"../../core/Handles.js";import{isNone as s,destroyMaybe as n,applySome as o,unwrapOr as i,isSome as a}from"../../core/maybe.js";import{watch as h,syncAndInitial as p}from"../../core/reactiveUtils.js";import{property as l}from"../../core/accessorSupport/decorators/property.js";import{subclass as m}from"../../core/accessorSupport/decorators/subclass.js";import c from"../../views/3d/environment/CloudyWeather.js";import y from"../../views/3d/environment/FoggyWeather.js";import u from"../../views/3d/environment/RainyWeather.js";import w from"../../views/3d/environment/SnowyWeather.js";import d from"../../views/3d/environment/SunnyWeather.js";import{WeatherState as v,WeatherError as _}from"./enums.js";let f=class extends t{constructor(e){super(e),this.view=null,this._handles=new r,this._settingWeather=!1,this._weatherByType={sunny:new d,cloudy:new c,rainy:new u,snowy:new w,foggy:new y}}initialize(){this._handles.add([h((()=>this.current),(e=>{this._settingWeather||s(e)||(this._weatherByType={...this._weatherByType,[e.type]:e})}),p)])}destroy(){this._handles=n(this._handles)}get state(){const e=this.view;if(s(e)||!e.ready)return v.Disabled;switch(this.error){case"unsupported-view":case"local-scene":return v.Error;default:return v.Ready}}get error(){const e=this.view;return s(e)||!e.ready?null:"3d"!==e.type?_.UnsupportedView:"local"===e.viewingMode?_.LocalScene:e.environmentManager.weatherVisible?null:_.NotVisible}get current(){const e=o(this._environment,(e=>e.weather));return i(e,this._weatherByType.sunny)}set current(e){o(this._environment,(t=>t.weather=e))}get test(){return{...this._weatherByType}}get _environment(){const e=this.view;return a(e)&&"3d"===e.type?e.environment:null}setWeatherByType(e){const t=this._environment;a(t)&&(this._settingWeather=!0,t.weather=this._weatherByType[e],this._settingWeather=!1)}};e([l()],f.prototype,"view",void 0),e([l()],f.prototype,"state",null),e([l()],f.prototype,"error",null),e([l()],f.prototype,"current",null),e([l()],f.prototype,"_environment",null),f=e([m("esri.widgets.Weather.WeatherViewModel")],f);const g=f;export{g 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
- const e="esri-weather",r={base:`${e}`,esriWidget:"esri-widget",esriWidgetDisabled:"esri-widget--disabled",widgetIcon:"esri-icon-partly-cloudy",content:`${e}__content`,selector:`${e}__selector`,error:`${e}__error`},i={base:`${`${e}__coverage-slider`}`};export{i as COVERAGE_SLIDER_CSS,r as CSS};
5
+ const e="esri-weather",r={base:`${e}`,esriWidget:"esri-widget",esriWidgetDisabled:"esri-widget--disabled",widgetIcon:"esri-icon-partly-cloudy",content:`${e}__content`,selector:`${e}__selector`,error:`${e}__error`,warning:`${e}__warning`},i={base:`${`${e}__coverage-slider`}`};export{i as COVERAGE_SLIDER_CSS,r as CSS};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
+ */
5
+ var e,o;!function(e){e.Disabled="disabled",e.Ready="ready",e.Error="error"}(e||(e={})),function(e){e.NotVisible="not-visible",e.LocalScene="local-scene",e.UnsupportedView="unsupported-view"}(o||(o={}));export{o as WeatherError,e as WeatherState};
@@ -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{applySome as r}from"../core/maybe.js";import{memoize as o}from"../core/memoize.js";import{aliasOf as t}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import{subclass as i}from"../core/accessorSupport/decorators/subclass.js";import{weatherTypes as l}from"../views/3d/environment/weather.js";import a from"./Widget.js";import{Heading as n}from"./support/Heading.js";import"./support/widgetUtils.js";import{messageBundle as c}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{tsx as d}from"./support/jsxFactory.js";import{CoverageSlider as p}from"./Weather/CoverageSlider.js";import{CSS as u}from"./Weather/css.js";import g from"./Weather/WeatherViewModel.js";const h={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",foggy:"fog"},v=Object.keys(l.typeMap);let m=class extends a{constructor(e){super(e),this.viewModel=new g,this.headingLevel=4,this.iconClass=u.widgetIcon,this.label=void 0,this._renderWeatherTypeButton=e=>{var r,o;const t=this.viewModel,s=null==(r=this.messages)||null==(o=r[e])?void 0:o.label,i="disabled"===t.state,l=!i&&t.current.type===e;return d("calcite-button",{appearance:l?"solid":"outline","aria-checked":l?"true":"false",color:l?"blue":"neutral",disabled:i,"icon-start":h[e],key:`${e}-type-button`,label:s,role:"radio",scale:"l",title:s,onclick:()=>{l||t.setWeatherByType(e)}})},this._getOnSunnyChange=o((e=>r=>{e.cloudCover=r})),this._getOnCloudyChange=o((e=>r=>{e.cloudCover=r})),this._getOnRainyChange=o((e=>r=>{e.cloudCover=r})),this._getOnFoggyChange=o((e=>r=>{e.fogStrength=r}))}render(){const e=this.messages,o="disabled"===this.viewModel.state;return d("div",{class:this.classes(u.base,u.esriWidget,o&&u.esriWidgetDisabled),role:"region","aria-label":null==e?void 0:e.widgetLabelAccessible},d(n,{level:this.headingLevel},null==e?void 0:e.widgetLabel),d("div",{class:u.content},d("div",{class:u.selector,role:"radiogroup","aria-label":null==e?void 0:e.weatherType},v.map(this._renderWeatherTypeButton)),this._renderOptions(),r(this.errorMessage,(e=>this._renderError(e)))))}async loadDependencies(){await Promise.all([import("@esri/calcite-components/dist/components/calcite-button.js"),import("@esri/calcite-components/dist/components/calcite-icon.js"),import("@esri/calcite-components/dist/components/calcite-label.js")])}get view(){var e;return null==(e=this.viewModel)?void 0:e.view}set view(e){this.viewModel&&(this.viewModel.view=e)}get errorMessage(){var e,r;switch(this.viewModel.error){case"local-scene":return null==(e=this.messages)?void 0:e.error.localScene;case"not-visible":return null==(r=this.messages)?void 0:r.error.notVisible;default:return null}}_renderOptions(){const e=this.viewModel,r="disabled"===e.state,o=e.current,t=this.messages;switch(o.type){case"sunny":return d(p,{key:"sunny-slider",disabled:r,label:null==t?void 0:t.sunny.cloudCover,value:o.cloudCover,onChange:this._getOnSunnyChange(o)});case"cloudy":return d(p,{key:"cloudy-slider",disabled:r,label:null==t?void 0:t.cloudy.cloudCover,value:o.cloudCover,onChange:this._getOnCloudyChange(o)});case"rainy":return d(p,{key:"rainy-slider",disabled:r,label:null==t?void 0:t.rainy.cloudCover,value:o.cloudCover,onChange:this._getOnRainyChange(o)});case"foggy":return d(p,{key:"foggy-slider",disabled:r,label:null==t?void 0:t.foggy.fogStrength,value:o.fogStrength,onChange:this._getOnFoggyChange(o)})}}_renderError(e){return d("div",{key:"error",class:u.error},d("calcite-icon",{icon:"exclamation-mark-triangle",scale:"s"}),e)}};e([s()],m.prototype,"viewModel",void 0),e([s()],m.prototype,"view",null),e([s()],m.prototype,"headingLevel",void 0),e([s()],m.prototype,"iconClass",void 0),e([t("messages.widgetLabel",{overridable:!0})],m.prototype,"label",void 0),e([s(),c("esri/widgets/Weather/t9n/Weather")],m.prototype,"messages",void 0),e([s()],m.prototype,"errorMessage",null),m=e([i("esri.widgets.Weather")],m);const y=m;export{y as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import{isSome as r}from"../core/maybe.js";import{memoize as o}from"../core/memoize.js";import{aliasOf as s}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as t}from"../core/accessorSupport/decorators/property.js";import{subclass as i}from"../core/accessorSupport/decorators/subclass.js";import{weatherTypes as n}from"../views/3d/environment/weather.js";import a from"./Widget.js";import{Heading as l}from"./support/Heading.js";import"./support/widgetUtils.js";import{messageBundle as d}from"./support/decorators/messageBundle.js";import"../core/Logger.js";import{tsx as c,tsxFragment as u}from"./support/jsxFactory.js";import{CoverageSlider as g}from"./Weather/CoverageSlider.js";import{CSS as p}from"./Weather/css.js";import{WeatherState as h}from"./Weather/enums.js";import v from"./Weather/WeatherViewModel.js";const y={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",snowy:"snow",foggy:"fog"},m=Object.keys(n.typeMap);let w=class extends a{constructor(e){super(e),this.viewModel=new v,this.headingLevel=4,this.iconClass=p.widgetIcon,this.label=void 0,this._renderWeatherTypeButton=e=>{var r,o;const s=this.viewModel,t=null==(r=this.messages)||null==(o=r[e])?void 0:o.label,i=s.state===h.Disabled,n=!i&&s.current.type===e;return c("calcite-button",{appearance:n?"solid":"outline","aria-checked":n?"true":"false",color:n?"blue":"neutral",disabled:i,"icon-start":y[e],key:`${e}-type-button`,label:t,role:"radio",scale:"l",title:t,onclick:()=>{n||s.setWeatherByType(e)}})},this._getOnSunnyChange=o((e=>r=>{e.cloudCover=r})),this._getOnCloudyChange=o((e=>r=>{e.cloudCover=r})),this._getOnRainyChange=o((e=>r=>{e.cloudCover=r})),this._getOnSnowyChange=o((e=>r=>{e.cloudCover=r})),this._getOnFoggyChange=o((e=>r=>{e.fogStrength=r}))}render(){var e;const r=this.viewModel.state===h.Disabled;return c("div",{class:this.classes(p.base,p.esriWidget,r&&p.esriWidgetDisabled),role:"region","aria-label":null==(e=this.messages)?void 0:e.widgetLabelAccessible},this._renderContent())}async loadDependencies(){await Promise.all([import("@esri/calcite-components/dist/components/calcite-button.js"),import("@esri/calcite-components/dist/components/calcite-icon.js"),import("@esri/calcite-components/dist/components/calcite-label.js")])}get view(){var e;return null==(e=this.viewModel)?void 0:e.view}set view(e){this.viewModel&&(this.viewModel.view=e)}get _errorMessage(){var e;const r=null==(e=this.messages)?void 0:e.error;switch(this.viewModel.error){case"unsupported-view":return r.unsupported;case"local-scene":return r.localScene;default:return null}}get _warningMessage(){var e;return"not-visible"===this.viewModel.error?null==(e=this.messages)?void 0:e.error.notVisible:null}_renderContent(){if(this.viewModel.state===h.Error)return c("div",{key:"error",class:p.error},this._errorMessage);const e=this.messages,o=this._warningMessage;return c(u,null,c(l,{level:this.headingLevel},null==e?void 0:e.widgetLabel),c("div",{class:p.content},c("div",{class:p.selector,role:"radiogroup","aria-label":null==e?void 0:e.weatherType},m.map(this._renderWeatherTypeButton)),this._renderOptions(),r(o)&&this._renderWarning(o)))}_renderOptions(){const e=this.viewModel,r=e.state===h.Disabled,o=e.current,s=this.messages;switch(o.type){case"sunny":return c(g,{key:"sunny-slider",disabled:r,label:null==s?void 0:s.sunny.cloudCover,value:o.cloudCover,onChange:this._getOnSunnyChange(o)});case"cloudy":return c(g,{key:"cloudy-slider",disabled:r,label:null==s?void 0:s.cloudy.cloudCover,value:o.cloudCover,onChange:this._getOnCloudyChange(o)});case"rainy":return c(g,{key:"rainy-slider",disabled:r,label:null==s?void 0:s.rainy.cloudCover,value:o.cloudCover,onChange:this._getOnRainyChange(o)});case"snowy":return c(g,{key:"snowy-slider",disabled:r,label:null==s?void 0:s.rainy.cloudCover,value:o.cloudCover,onChange:this._getOnSnowyChange(o)});case"foggy":return c(g,{key:"foggy-slider",disabled:r,label:null==s?void 0:s.foggy.fogStrength,value:o.fogStrength,onChange:this._getOnFoggyChange(o)})}}_renderWarning(e){return c("div",{key:"warning",class:p.warning},c("calcite-icon",{icon:"exclamation-mark-triangle",scale:"s"}),e)}};e([t()],w.prototype,"viewModel",void 0),e([t()],w.prototype,"view",null),e([t()],w.prototype,"headingLevel",void 0),e([t()],w.prototype,"iconClass",void 0),e([s("messages.widgetLabel",{overridable:!0})],w.prototype,"label",void 0),e([t(),d("esri/widgets/Weather/t9n/Weather")],w.prototype,"messages",void 0),e([t()],w.prototype,"_errorMessage",null),e([t()],w.prototype,"_warningMessage",null),w=e([i("esri.widgets.Weather")],w);const b=w;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"../../core/Accessor.js";import o from"../../core/Error.js";import r from"../../core/Handles.js";import{isSome as s,destroyMaybe as i,isNone as l,abortMaybe as a,unwrap as n,applySome as p}from"../../core/maybe.js";import{createTask as h,throwIfAborted as d,isAborted as c}from"../../core/promiseUtils.js";import{watch as u,syncAndInitial as v,when as w}from"../../core/reactiveUtils.js";import{property as m}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as y}from"../../core/accessorSupport/decorators/subclass.js";let T=class extends e{constructor(t){super(t),this.tool=null,this._baseHandles=new r,this._loggedUnsupportedErrorOnce=!1,this._toolCreationTask=null,t&&null!=t.visible&&(this.visible=t.visible)}initialize(){this._baseHandles.add(u((()=>({ready:s(this.view)&&this.view.ready,supported:this.supported})),(({ready:t,supported:e})=>{!t||e||this._loggedUnsupportedErrorOnce||(this.logError(this.unsupportedErrorMessage),this._loggedUnsupportedErrorOnce=!0)}),v))}destroy(){this.removeTool("Tool creation was interrupted by the view model being destroyed."),this.view=null,this._baseHandles=i(this._baseHandles)}get supported(){return l(this.view)||this.view.type===this.supportedViewType}get view(){return this._get("view")}set view(t){if(t===this.view)return;this.removeTool("Tool creation was interrupted by the view property changing."),this._set("view",t);const e="tools";this._baseHandles.remove(e),l(t)||this._baseHandles.add(t.tools.on("after-remove",(t=>{t.item===this.tool&&this._set("tool",null)})),e)}set visible(t){this._set("visible",t),s(this.tool)&&(this.tool.visible=t),t||(this._toolCreationTask=a(this._toolCreationTask),s(this.tool)&&this.tool.rejectCreation("Tool creation was interrupted by the tool being hidden."))}get active(){return s(this._toolCreationTask)&&!this._toolCreationTask.finished||s(this.tool)&&this.tool.active}get disabled(){return l(this.view)||!this.view.ready||!this.supported}get creatingTool(){return s(this._toolCreationTask)&&!this._toolCreationTask.finished}async createTool(){if(this.removeTool("Tool creation was interrupted by another tool being created."),l(this.view)||!this.supported)return Promise.reject(new o("tool:create","The view does not support the tool.",this.unsupportedErrorMessage));this._toolCreationTask=h((async t=>{await n(this.view).whenReady();const e="Tool creation was interrupted.";d(t,e);const o=this.constructTool();return await o.whenCreationStarted(),c(t)&&(o.destroy(),d(t,e)),o}));const t=await this._toolCreationTask.promise;this._set("tool",t),t.created?this.view.tools.add(t):(this.view.addAndActivateTool(t),w((()=>t.created),(()=>{t.active&&s(this.view)&&(this.view.activeTool=null)}),{initial:!0,once:!0}))}removeTool(t="Tool creation was interrupted by tool being removed."){this._toolCreationTask=a(this._toolCreationTask);const e=this.tool;if(l(e))return;e.rejectCreation(t);const o=p(this.view,(t=>t.tools));s(o)?o.remove(e):e.destroy(),this._set("tool",null)}logError(...t){this.logger.error(...t)}};t([m({constructOnly:!0})],T.prototype,"tool",void 0),t([m()],T.prototype,"supported",null),t([m({value:null})],T.prototype,"view",null),t([m({type:Boolean,value:!0})],T.prototype,"visible",null),t([m()],T.prototype,"active",null),t([m()],T.prototype,"disabled",null),t([m()],T.prototype,"_toolCreationTask",void 0),t([m({readOnly:!0})],T.prototype,"creatingTool",null),T=t([y("esri.widgets.support.InteractiveToolViewModel")],T);export{T as InteractiveToolViewModel};
5
+ import{_ as t}from"../../chunks/tslib.es6.js";import e from"../../core/Accessor.js";import o from"../../core/Error.js";import r from"../../core/Handles.js";import{isSome as s,destroyMaybe as i,isNone as l,abortMaybe as a,unwrap as n,applySome as p}from"../../core/maybe.js";import{createTask as h,throwIfAborted as d,isAborted as c}from"../../core/promiseUtils.js";import{watch as u,syncAndInitial as v,when as w}from"../../core/reactiveUtils.js";import{property as m}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as y}from"../../core/accessorSupport/decorators/subclass.js";let T=class extends e{constructor(t){super(t),this.tool=null,this._baseHandles=new r,this._loggedUnsupportedErrorOnce=!1,this._toolCreationTask=null,t&&null!=t.visible&&(this.visible=t.visible)}initialize(){this._baseHandles.add(u((()=>({ready:s(this.view)&&this.view.ready,supported:this.supported})),(({ready:t,supported:e})=>{!t||e||this._loggedUnsupportedErrorOnce||(this.logError(this.unsupportedErrorMessage),this._loggedUnsupportedErrorOnce=!0)}),v))}destroy(){this.removeTool("Tool creation was interrupted by the view model being destroyed."),this.view=null,this._baseHandles=i(this._baseHandles)}get supported(){return l(this.view)||this.view.type===this.supportedViewType}get view(){return this._get("view")}set view(t){if(t===this.view)return;this.removeTool("Tool creation was interrupted by the view property changing."),this._set("view",t);const e="tools";this._baseHandles.remove(e),l(t)||this._baseHandles.add(t.tools.on("after-remove",(t=>{t.item===this.tool&&this._set("tool",null)})),e)}set visible(t){this._set("visible",t),s(this.tool)&&(this.tool.visible=t),t||(this._toolCreationTask=a(this._toolCreationTask),s(this.tool)&&this.tool.rejectCreation("Tool creation was interrupted by the tool being hidden."))}get active(){return s(this._toolCreationTask)||s(this.tool)&&this.tool.active}get disabled(){return l(this.view)||!this.view.ready||!this.supported}get creatingTool(){return s(this._toolCreationTask)}async createTool(){if(this.removeTool("Tool creation was interrupted by another tool being created."),l(this.view)||!this.supported)return Promise.reject(new o("tool:create","The view does not support the tool.",this.unsupportedErrorMessage));this._toolCreationTask=h((async t=>{await n(this.view).whenReady();const e="Tool creation was interrupted.";d(t,e);const o=this.constructTool();return await o.whenCreationStarted(),c(t)&&(o.destroy(),d(t,e)),o}));const t=await this._toolCreationTask.promise;this._set("tool",t),this._toolCreationTask=null,t.created?this.view.tools.add(t):(this.view.addAndActivateTool(t),w((()=>t.created),(()=>{t.active&&s(this.view)&&(this.view.activeTool=null)}),{initial:!0,once:!0}))}removeTool(t="Tool creation was interrupted by tool being removed."){this._toolCreationTask=a(this._toolCreationTask);const e=this.tool;if(l(e))return;e.rejectCreation(t);const o=p(this.view,(t=>t.tools));s(o)?o.remove(e):e.destroy(),this._set("tool",null)}logError(...t){this.logger.error(...t)}};t([m({constructOnly:!0})],T.prototype,"tool",void 0),t([m()],T.prototype,"supported",null),t([m({value:null})],T.prototype,"view",null),t([m({type:Boolean,value:!0})],T.prototype,"visible",null),t([m()],T.prototype,"active",null),t([m()],T.prototype,"disabled",null),t([m()],T.prototype,"_toolCreationTask",void 0),t([m({readOnly:!0})],T.prototype,"creatingTool",null),T=t([y("esri.widgets.support.InteractiveToolViewModel")],T);export{T as InteractiveToolViewModel};