@arcgis/core 4.34.0-next.23 → 4.34.0-next.25

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 (438) hide show
  1. package/Basemap.js +1 -1
  2. package/analysis/VolumeMeasurement/CutFillOptions.d.ts +4 -0
  3. package/analysis/VolumeMeasurement/CutFillOptions.js +1 -1
  4. package/analysis/VolumeMeasurementAnalysis.js +1 -1
  5. package/applications/Components/imageryUtils.d.ts +4 -0
  6. package/applications/Components/imageryUtils.js +5 -0
  7. package/arcade/parser.js +1 -1
  8. package/arcade/validation/arcadeValidator.js +1 -1
  9. package/assets/esri/core/workers/RemoteClient.js +1 -1
  10. package/assets/esri/core/workers/chunks/026fbeb0ff5b9e6c74df.js +1 -0
  11. package/assets/esri/core/workers/chunks/{0867aa688fa8938906da.js → 03bef3f4b6b09b1e864b.js} +1 -1
  12. package/assets/esri/core/workers/chunks/06cdbccc9f325dcc303d.js +1 -0
  13. package/assets/esri/core/workers/chunks/07613c89255bdab6b7c6.js +1 -0
  14. package/assets/esri/core/workers/chunks/09618761df5c4fdd52a0.js +1 -0
  15. package/assets/esri/core/workers/chunks/0ae00339991f5387203e.js +1 -0
  16. package/assets/esri/core/workers/chunks/0b4b294f3ce74fde5620.js +1 -0
  17. package/assets/esri/core/workers/chunks/{146520d263b910b5bdc7.js → 0e96a3b7228f1ff8e6c5.js} +1 -1
  18. package/assets/esri/core/workers/chunks/109ef17dd4f9430bb686.js +1 -0
  19. package/assets/esri/core/workers/chunks/1597aca21334cab3b802.js +1 -0
  20. package/assets/esri/core/workers/chunks/196564ad230bef6b59cf.js +1 -0
  21. package/assets/esri/core/workers/chunks/19f8d551cbebc11db1eb.js +1 -0
  22. package/assets/esri/core/workers/chunks/1ceee047e3fa617b0600.js +1 -0
  23. package/assets/esri/core/workers/chunks/1d27701832ea139fcc20.js +1 -0
  24. package/assets/esri/core/workers/chunks/1f296f85becf1ca6714d.js +1 -0
  25. package/assets/esri/core/workers/chunks/1f8d7bd44d53c30df383.js +1 -0
  26. package/assets/esri/core/workers/chunks/1fabb5ec59da698c1618.js +1 -0
  27. package/assets/esri/core/workers/chunks/{919d2fd7ebc0c840a759.js → 219b2911668db120452b.js} +1 -1
  28. package/assets/esri/core/workers/chunks/234cbc290b074eeb5dd6.js +1 -0
  29. package/assets/esri/core/workers/chunks/29ae5723fa35aa73ff9b.js +1 -0
  30. package/assets/esri/core/workers/chunks/2b4b073254fe8b6a081c.js +1 -0
  31. package/assets/esri/core/workers/chunks/30293b88501b5d6162fc.js +1 -0
  32. package/assets/esri/core/workers/chunks/31533f5e8b76b307f61c.js +1 -0
  33. package/assets/esri/core/workers/chunks/347117e61e1c6edd074f.js +1 -0
  34. package/assets/esri/core/workers/chunks/3616eb2607843524483f.js +1 -0
  35. package/assets/esri/core/workers/chunks/36648facd56ee91afc7c.js +1 -0
  36. package/assets/esri/core/workers/chunks/394477e88be0c6790f02.js +1 -0
  37. package/assets/esri/core/workers/chunks/3b80b01551d124534a1b.js +1 -0
  38. package/assets/esri/core/workers/chunks/{89d91ce2f566dd3f57f7.js → 3be9ec0503a669bcfce6.js} +1 -1
  39. package/assets/esri/core/workers/chunks/3c9cf06ac6aa1db6c4f6.js +1 -0
  40. package/assets/esri/core/workers/chunks/40fc7c43feaeef8b814d.js +1 -0
  41. package/assets/esri/core/workers/chunks/42cddc8f8c8d73e22ee2.js +1 -0
  42. package/assets/esri/core/workers/chunks/437a4100a837ee16df7c.js +1 -0
  43. package/assets/esri/core/workers/chunks/{63cc4647b7775ff8aedf.js → 44d28849e59f62616e72.js} +1 -1
  44. package/assets/esri/core/workers/chunks/453e536f566d80a9863b.js +1 -0
  45. package/assets/esri/core/workers/chunks/472c677a74d779ce62d7.js +1 -0
  46. package/assets/esri/core/workers/chunks/4b68b6985430c42316b7.js +1 -0
  47. package/assets/esri/core/workers/chunks/{6bb1ecaa0afc2c7de79e.js → 4cc3eeb0b824c53793d0.js} +1 -1
  48. package/assets/esri/core/workers/chunks/4ce671bc4d36387b55fa.js +1 -0
  49. package/assets/esri/core/workers/chunks/51cfa2f70ec222e1582b.js +1 -0
  50. package/assets/esri/core/workers/chunks/5284d46aecd6fe0345b8.js +1 -0
  51. package/assets/esri/core/workers/chunks/567385709e18ace93b1e.js +1 -0
  52. package/assets/esri/core/workers/chunks/5a9b27f2b343cd5b0852.js +1 -0
  53. package/assets/esri/core/workers/chunks/{4c2f3e43992a918e4c2d.js → 5ef3256c32c4b622bd11.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{5ce62d9fff80d014d186.js → 60aeb7a5ccd8bc71be02.js} +1 -1
  55. package/assets/esri/core/workers/chunks/{55e9b02d70812f7cdac2.js → 63966066a963e9a1fb14.js} +1 -1
  56. package/assets/esri/core/workers/chunks/63f50ff2ae94f684d56b.js +1 -0
  57. package/assets/esri/core/workers/chunks/{8bf04be4052bf148777a.js → 6a1cf6b0ffdf6080b5c4.js} +1 -1
  58. package/assets/esri/core/workers/chunks/6deaa08e3a61a455e564.js +1 -0
  59. package/assets/esri/core/workers/chunks/6e9b4bfe2a1497c96100.js +1 -0
  60. package/assets/esri/core/workers/chunks/6efc3d120c9c2c09cb06.js +1 -0
  61. package/assets/esri/core/workers/chunks/7338ce95bceb2c7fab87.js +1 -0
  62. package/assets/esri/core/workers/chunks/{c64fa94cba71ba2794e2.js → 771012f129890f9a089c.js} +1 -1
  63. package/assets/esri/core/workers/chunks/{d1b363c418a67b087306.js → 780ff9314f26ae62f75f.js} +1 -1
  64. package/assets/esri/core/workers/chunks/820cf4337b248a0cb63c.js +1 -0
  65. package/assets/esri/core/workers/chunks/{b57c0ef7bc57e3c91257.js → 865fccacf44ae5b70eba.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{fedbf639a0788417a70f.js → 86abfce1f2ac93cc4d54.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{c94cc026c4ed330408fb.js → 8894483b91bcda845b6f.js} +1 -1
  68. package/assets/esri/core/workers/chunks/{f050ab9d100012b77bb9.js → 8c5b1114cc2a58305a81.js} +1 -1
  69. package/assets/esri/core/workers/chunks/{6ca764b4baadef5c1515.js → 92737419b66894799a34.js} +1 -1
  70. package/assets/esri/core/workers/chunks/9511e55e4fabb3235eac.js +1 -0
  71. package/assets/esri/core/workers/chunks/{f43110391f124b8a179c.js → 9a78cb291c966f8ddda6.js} +2 -2
  72. package/assets/esri/core/workers/chunks/9f8341caab3b1d02f387.js +1 -0
  73. package/assets/esri/core/workers/chunks/a08d018d8c137fc4ca17.js +1 -0
  74. package/assets/esri/core/workers/chunks/{7051bcc178eb512819f6.js → a55338add265d330124b.js} +1 -1
  75. package/assets/esri/core/workers/chunks/afe4fd3b1b3521712edd.js +1 -0
  76. package/assets/esri/core/workers/chunks/{9991bd3c7991bffd8260.js → b37f3c416cefc1a6ea2c.js} +1 -1
  77. package/assets/esri/core/workers/chunks/{6782114a752b9cc59168.js → b6b8272a74a5c24a6b86.js} +1 -1
  78. package/assets/esri/core/workers/chunks/b9f66d735a7e63417b3d.js +1 -0
  79. package/assets/esri/core/workers/chunks/bb50b4a3af627f91d789.js +1 -0
  80. package/assets/esri/core/workers/chunks/{f42155b7a4e6c5e80757.js → bbc2a4976d044b990193.js} +1 -1
  81. package/assets/esri/core/workers/chunks/bbf2c31d217de1b8ba6e.js +1 -0
  82. package/assets/esri/core/workers/chunks/be3977f7fe0c46a1b493.js +1 -0
  83. package/assets/esri/core/workers/chunks/befba7ceeb26a38732c1.js +1 -0
  84. package/assets/esri/core/workers/chunks/bf3fc71881aa559fc931.js +1 -0
  85. package/assets/esri/core/workers/chunks/c19421707257fc93acb9.js +1 -0
  86. package/assets/esri/core/workers/chunks/c1fb5290e0e259b74389.js +1 -0
  87. package/assets/esri/core/workers/chunks/c361bf4d41a1843d4640.js +1 -0
  88. package/assets/esri/core/workers/chunks/c51099eab5a99c88e5de.js +1 -0
  89. package/assets/esri/core/workers/chunks/c56b05a8be498b6f3ee7.js +1 -0
  90. package/assets/esri/core/workers/chunks/c82e78590c2fabc67609.js +1 -0
  91. package/assets/esri/core/workers/chunks/{cab1a1067f44ce374673.js → c9e580867f7ac17be329.js} +1 -1
  92. package/assets/esri/core/workers/chunks/{92ad9098006568358550.js → cafcb46d723d38b377a9.js} +1 -1
  93. package/assets/esri/core/workers/chunks/{1d75cb1747ffb7b8b050.js → cb81d448ed6bad205346.js} +1 -1
  94. package/assets/esri/core/workers/chunks/{0f6203ae32663b2b52db.js → d08a523b548e892e1222.js} +1 -1
  95. package/assets/esri/core/workers/chunks/d29ae64703a947bfb83b.js +1 -0
  96. package/assets/esri/core/workers/chunks/d2ce360961ca4b58666c.js +1 -0
  97. package/assets/esri/core/workers/chunks/{04c17957c15234ca0321.js → d81260303a11d3fbe940.js} +1 -1
  98. package/assets/esri/core/workers/chunks/de1457b07f4e263f1524.js +1 -0
  99. package/assets/esri/core/workers/chunks/{6bf43bc3714d7b3878fa.js → e547318638c8f496c1a0.js} +1 -1
  100. package/assets/esri/core/workers/chunks/e8e993fb8697b8f3e0c7.js +346 -0
  101. package/assets/esri/core/workers/chunks/{53781ccca16e53d4a8c3.js → f291ccf9da6aa7d7ae23.js} +1 -1
  102. package/assets/esri/core/workers/chunks/f61a8cc7e2b198e521ba.js +1 -0
  103. package/assets/esri/core/workers/chunks/f9442a281cb91c64c7cd.js +1 -0
  104. package/assets/esri/core/workers/chunks/fb785bc38323cce6e549.js +1 -0
  105. package/assets/esri/core/workers/chunks/{c3213b487c11076985af.js → fbf3240b36718fa5dc76.js} +1 -1
  106. package/assets/esri/rest/knowledgeGraph/wasmInterface/arcgis-knowledge-client-core-simd.wasm +0 -0
  107. package/assets/esri/rest/knowledgeGraph/wasmInterface/arcgis-knowledge-client-core.wasm +0 -0
  108. package/chunks/Bufferer-Dw9Qi4T1.js +1 -1
  109. package/chunks/ComponentShader.glsl.js +36 -36
  110. package/chunks/Envelope.js +1 -1
  111. package/chunks/MultiPathImpl.js +1 -1
  112. package/chunks/OperatorClip.js +1 -1
  113. package/chunks/ProjectionTransformation.js +1 -1
  114. package/chunks/RibbonLine.glsl.js +40 -33
  115. package/chunks/index.js +1 -1
  116. package/chunks/persistableUrlUtils.js +1 -1
  117. package/config.js +1 -1
  118. package/core/AsyncUpdate.js +1 -1
  119. package/core/Clonable.js +1 -1
  120. package/core/Evented.js +1 -1
  121. package/core/Identifiable.js +1 -1
  122. package/core/JSONSupport.js +1 -1
  123. package/core/Loadable.js +1 -1
  124. package/core/MapUtils.js +1 -1
  125. package/core/MemCache.js +1 -1
  126. package/core/MemCachePool.js +1 -1
  127. package/core/MultiOriginJSONSupport.js +1 -1
  128. package/core/ObjectPool.js +1 -1
  129. package/core/Promise.js +1 -1
  130. package/core/ReadOnlyMultiOriginJSONSupport.js +1 -1
  131. package/core/accessorSupport/overrideDefaultsFrom.js +1 -1
  132. package/core/quantity.d.ts +1 -0
  133. package/geometry/operators/gx/operatorOffset.js +1 -1
  134. package/geometry/operators/support/jsonConverter.js +1 -1
  135. package/geometry/support/buffer/BufferPool.js +1 -1
  136. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  137. package/interfaces.d.ts +211 -8
  138. package/kernel.js +1 -1
  139. package/layers/CatalogLayer.js +1 -1
  140. package/layers/FeatureLayer.js +1 -1
  141. package/layers/GeoJSONLayer.js +1 -1
  142. package/layers/SubtypeGroupLayer.js +1 -1
  143. package/layers/knowledgeGraph/KnowledgeGraphSublayerBase.js +1 -1
  144. package/layers/mixins/APIKeyMixin.js +1 -1
  145. package/layers/mixins/ArcGISCachedService.js +1 -1
  146. package/layers/mixins/ArcGISImageService.js +1 -1
  147. package/layers/mixins/ArcGISMapService.js +1 -1
  148. package/layers/mixins/ArcGISService.js +1 -1
  149. package/layers/mixins/BlendLayer.js +1 -1
  150. package/layers/mixins/CustomParametersMixin.js +1 -1
  151. package/layers/mixins/DisplayFilteredLayer.js +1 -1
  152. package/layers/mixins/EditBusLayer.js +1 -1
  153. package/layers/mixins/FeatureEffectLayer.js +1 -1
  154. package/layers/mixins/FeatureLayerBase.js +1 -1
  155. package/layers/mixins/FeatureReductionLayer.js +1 -1
  156. package/layers/mixins/ImageryTileMixin.js +1 -1
  157. package/layers/mixins/OperationalLayer.js +1 -1
  158. package/layers/mixins/OrderedLayer.js +1 -1
  159. package/layers/mixins/PortalLayer.js +1 -1
  160. package/layers/mixins/PublishableLayer.js +1 -1
  161. package/layers/mixins/RasterJobHandlerMixin.js +1 -1
  162. package/layers/mixins/RasterPresetRendererMixin.js +1 -1
  163. package/layers/mixins/RefreshableLayer.js +1 -1
  164. package/layers/mixins/ScaleRangeLayer.js +1 -1
  165. package/layers/mixins/SceneService.js +1 -1
  166. package/layers/mixins/SublayersOwner.js +1 -1
  167. package/layers/mixins/TemporalLayer.js +1 -1
  168. package/layers/mixins/TemporalSceneLayer.js +1 -1
  169. package/layers/mixins/TrackableLayer.js +1 -1
  170. package/layers/ogc/wfsUtils.js +1 -1
  171. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  172. package/layers/orientedImagery/core/bestImageUtils.js +1 -1
  173. package/layers/support/ControlPointsGeoreference.js +1 -1
  174. package/layers/support/PixelBlock.js +1 -1
  175. package/layers/support/RasterJobHandler.js +1 -1
  176. package/layers/support/RasterWorker.js +1 -1
  177. package/layers/support/Sublayer.js +1 -1
  178. package/layers/support/arcgisLayerUrl.js +1 -1
  179. package/layers/support/multiLayerServiceUtils.js +1 -1
  180. package/layers/support/rasterDatasets/pixelReader.js +5 -0
  181. package/layers/support/rasterFormats/pixelRangeUtils.js +1 -1
  182. package/layers/support/rasterFunctions/clipUtils.js +1 -1
  183. package/layers/support/rasterFunctions/pixelUtils.js +1 -1
  184. package/layers/support/rasterFunctions/rasterFunctionHelper.js +1 -1
  185. package/layers/video/VideoController.js +1 -1
  186. package/networks/support/UtilityNetworkLookupHelper.js +1 -1
  187. package/package.json +1 -1
  188. package/renderers/mixins/VisualVariablesMixin.js +1 -1
  189. package/renderers/support/DictionaryControlString.js +1 -1
  190. package/rest/support/CameraInfoMixin.js +1 -1
  191. package/rest/support/NormalizationBinParametersMixin.js +1 -1
  192. package/smartMapping/renderers/color.js +1 -1
  193. package/smartMapping/renderers/heatmap.js +1 -1
  194. package/smartMapping/renderers/pieChart.js +1 -1
  195. package/smartMapping/renderers/size.js +1 -1
  196. package/smartMapping/renderers/support/regenerateUtils.js +1 -1
  197. package/smartMapping/renderers/support/rendererUtils.js +1 -1
  198. package/smartMapping/renderers/type.js +1 -1
  199. package/smartMapping/symbology/color.js +1 -1
  200. package/smartMapping/symbology/support/utils.js +1 -1
  201. package/support/LayersMixin.js +1 -1
  202. package/support/TablesMixin.js +1 -1
  203. package/support/revision.js +1 -1
  204. package/symbols/cim/cimAnalyzer.js +1 -1
  205. package/symbols/support/utils.js +1 -1
  206. package/views/2d/engine/ParentChildStage.js +1 -1
  207. package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
  208. package/views/2d/engine/webgl/meshing/Mesh.js +1 -1
  209. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriterInputEvaluator.js +1 -1
  210. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/processor/MultiRasterMixin.js +1 -1
  211. package/views/2d/engine/webgl/shaderGraph/techniques/videoScreenRenderer/VideoScreenTechnique.js +1 -1
  212. package/views/2d/engine/webgl/shaderGraph/typed/TypedShaderProgram.js +1 -1
  213. package/views/2d/engine/webgl/textureUtils.js +1 -1
  214. package/views/2d/layers/BitmapTileLayerView2D.js +1 -1
  215. package/views/2d/layers/LayerView2D.js +1 -1
  216. package/views/2d/layers/MediaLayerView2D.js +1 -1
  217. package/views/2d/layers/TileLayerView2D.js +1 -1
  218. package/views/2d/layers/features/FeatureContainer.js +1 -1
  219. package/views/2d/layers/features/processor/ClusterStrategy.js +1 -1
  220. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  221. package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
  222. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  223. package/views/2d/layers/features/support/FeatureFilterEvaluator.js +1 -1
  224. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  225. package/views/2d/layers/support/DebugOverlay.js +1 -1
  226. package/views/3d/analysis/AnalysisView3D.js +1 -1
  227. package/views/3d/analysis/VolumeMeasurement/CutFillVolumeMeasurementController.js +5 -0
  228. package/views/3d/analysis/VolumeMeasurementAnalysisView3D.js +1 -1
  229. package/views/3d/analysis/images/heading-rotate-svg.js +1 -1
  230. package/views/3d/analysis/images/tilt-rotate-svg.js +1 -1
  231. package/views/3d/glTF/DefaultLoadingContext.js +1 -1
  232. package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
  233. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
  234. package/views/3d/layers/BuildingSublayerView3D.js +1 -1
  235. package/views/3d/layers/ElevationLayerView3D.js +1 -1
  236. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  237. package/views/3d/layers/FlowSubView3D.js +1 -1
  238. package/views/3d/layers/I3SMeshView3D.js +1 -1
  239. package/views/3d/layers/ImageryLayerView3D.js +1 -1
  240. package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
  241. package/views/3d/layers/LayerView3D.js +1 -1
  242. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  243. package/views/3d/layers/StreamLayerView3D.js +1 -1
  244. package/views/3d/layers/TiledLayerView3D.js +1 -1
  245. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  246. package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
  247. package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
  248. package/views/3d/layers/graphics/Labeler.js +1 -1
  249. package/views/3d/layers/graphics/StreamController.js +5 -0
  250. package/views/3d/layers/graphics/StreamGraphics3DGraphicsPipeline.js +1 -1
  251. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  252. package/views/3d/layers/graphics/pipeline/Tile3DManager.js +1 -1
  253. package/views/3d/layers/graphics/wosrLoader.js +1 -1
  254. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  255. package/views/3d/layers/i3s/I3SNodeLoader.js +1 -1
  256. package/views/3d/layers/support/DefinitionExpressionSceneLayerView.js +1 -1
  257. package/views/3d/layers/support/PopupSceneLayerView.js +1 -1
  258. package/views/3d/layers/support/TemporalSceneLayerView.js +1 -1
  259. package/views/3d/layers/support/fetchTile.js +1 -1
  260. package/views/3d/state/ViewStateManager.js +1 -1
  261. package/views/3d/support/MemoryController.js +1 -1
  262. package/views/3d/support/ResourceController.js +1 -1
  263. package/views/3d/support/StreamDataLoader.js +1 -1
  264. package/views/3d/support/StreamDataRequester.js +5 -0
  265. package/views/3d/support/StreamTextureCollection.js +1 -1
  266. package/views/3d/support/engineContent/line.js +1 -1
  267. package/views/3d/support/flow/FlowSubViewExtent3D.js +1 -1
  268. package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
  269. package/views/3d/support/flow/StreamlinesResources3D.js +1 -1
  270. package/views/3d/support/flow/geometryUtils.js +1 -1
  271. package/views/3d/support/index.js +1 -1
  272. package/views/3d/terrain/OverlayRenderer.js +1 -1
  273. package/views/3d/terrain/TerrainRenderer.js +1 -1
  274. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  275. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
  276. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +3 -3
  277. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  278. package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
  279. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  280. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  281. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  282. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  283. package/views/3d/webgl-engine/lib/VertexAttribute.js +1 -1
  284. package/views/3d/webgl-engine/materials/DefaultLayouts.js +1 -1
  285. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  286. package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
  287. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  288. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  289. package/views/3d/webgl-engine/shaders/AnimatedLine.glsl.js +17 -0
  290. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  291. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  292. package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
  293. package/views/BreakpointsOwner.js +1 -1
  294. package/views/DOMContainer.js +1 -1
  295. package/views/PopupView.js +1 -1
  296. package/views/VideoView.js +1 -1
  297. package/views/Viewport2DBaseMixin.js +1 -1
  298. package/views/Viewport2DMixin.js +1 -1
  299. package/views/draw/DrawGraphicTool.js +1 -1
  300. package/views/draw/DrawScreenTool.js +1 -1
  301. package/views/draw/DrawTool.js +1 -1
  302. package/views/draw/MultipointDrawAction.js +1 -1
  303. package/views/draw/PointDrawAction.js +1 -1
  304. package/views/draw/PolygonDrawAction.js +1 -1
  305. package/views/draw/PolylineDrawAction.js +1 -1
  306. package/views/interactive/tooltip/infos/TooltipInfoWithCoordinates.js +1 -1
  307. package/views/layers/CatalogDynamicGroupLayerView.js +1 -1
  308. package/views/layers/CatalogFootprintLayerView.js +1 -1
  309. package/views/layers/CatalogLayerView.js +1 -1
  310. package/views/layers/DimensionLayerView.js +1 -1
  311. package/views/layers/FeatureLayerView.js +1 -1
  312. package/views/layers/ImageryLayerView.js +1 -1
  313. package/views/layers/ImageryTileLayerView.js +1 -1
  314. package/views/layers/LineOfSightLayerView.js +1 -1
  315. package/views/layers/MapImageLayerView.js +1 -1
  316. package/views/layers/MediaLayerView.js +1 -1
  317. package/views/layers/OGCFeatureLayerView.js +1 -1
  318. package/views/layers/PointCloudLayerView.js +1 -1
  319. package/views/layers/RefreshableLayerView.js +1 -1
  320. package/views/layers/StreamLayerView.js +1 -1
  321. package/views/layers/ViewshedLayerView.js +1 -1
  322. package/views/layers/WMSLayerView.js +1 -1
  323. package/views/magnifier/mask-svg.js +1 -1
  324. package/views/magnifier/overlay-svg.js +1 -1
  325. package/views/support/Scheduler.js +1 -1
  326. package/views/video/VideoOperationalDataView.js +1 -1
  327. package/views/webgl/BufferObject.js +1 -1
  328. package/views/webgl/Program.js +1 -1
  329. package/views/webgl/Renderbuffer.js +1 -1
  330. package/views/webgl/Texture.js +1 -1
  331. package/views/webgl/Util.js +1 -1
  332. package/webmap/Bookmark.js +1 -1
  333. package/webscene/SunLighting.js +1 -1
  334. package/webscene/VirtualLighting.js +1 -1
  335. package/webscene/spec-certification/spec.js +1 -1
  336. package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
  337. package/widgets/BasemapLayerList.js +1 -1
  338. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  339. package/widgets/Directions/DirectionsSearchTool.js +1 -1
  340. package/widgets/Editor/EditorViewModel.js +1 -1
  341. package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
  342. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  343. package/widgets/Editor/support/SketchController.js +1 -1
  344. package/widgets/Editor/workflowUtils.js +1 -1
  345. package/widgets/Editor.js +1 -1
  346. package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
  347. package/widgets/Feature/support/FeatureContentMixin.js +1 -1
  348. package/widgets/Feature/support/arcadeFeatureUtils.js +1 -1
  349. package/widgets/FeatureTable/support/EditableColumnTemplateMixin.js +1 -1
  350. package/widgets/LayerList.js +1 -1
  351. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  352. package/widgets/OrientedImageryViewer/components/ImageViewer.js +1 -1
  353. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  354. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  355. package/widgets/OrientedImageryViewer/mixins/ImageMeasurementMixin.js +1 -1
  356. package/widgets/OrientedImageryViewer/mixins/SketchHandlerMixin.js +1 -1
  357. package/widgets/OrientedImageryViewer/mixins/TriangulatedImageMeasurementMixin.js +1 -1
  358. package/widgets/OrientedImageryViewer/mixins/TriangulatedSketchHandlerMixin.js +1 -1
  359. package/widgets/OrientedImageryViewer/navigation/NavigationManager.js +1 -1
  360. package/widgets/OrientedImageryViewer/navigation/queries.js +1 -1
  361. package/widgets/OrientedImageryViewer/navigation/utils.js +1 -1
  362. package/widgets/OrientedImageryViewer.js +1 -1
  363. package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
  364. package/widgets/PanoramicViewer/PanoramicZoomConditions.js +1 -1
  365. package/widgets/PanoramicViewer.js +1 -1
  366. package/widgets/Print.js +1 -1
  367. package/widgets/Sketch/SketchViewModel.js +1 -1
  368. package/widgets/Sketch/support/ResponsiveToolbar/ToolbarGroupBase.js +1 -1
  369. package/widgets/Slider/SliderViewModel.js +1 -1
  370. package/widgets/support/GoTo.js +1 -1
  371. package/widgets/support/SelectionList.js +1 -1
  372. package/assets/esri/core/workers/chunks/00eef04fd026adaf0df8.js +0 -1
  373. package/assets/esri/core/workers/chunks/0202c2ac73354e3970b2.js +0 -1
  374. package/assets/esri/core/workers/chunks/02dc6e31b1244e5bb785.js +0 -1
  375. package/assets/esri/core/workers/chunks/080c79d6caca3b6a2db2.js +0 -1
  376. package/assets/esri/core/workers/chunks/084236ca316aad980192.js +0 -1
  377. package/assets/esri/core/workers/chunks/0b484224a92b52c34330.js +0 -1
  378. package/assets/esri/core/workers/chunks/0ba6177ba118a0f032e2.js +0 -1
  379. package/assets/esri/core/workers/chunks/16a78f5a82f5ca163816.js +0 -1
  380. package/assets/esri/core/workers/chunks/19ae76283a0cb0fe4dee.js +0 -346
  381. package/assets/esri/core/workers/chunks/1cc30073f8200b67cff6.js +0 -1
  382. package/assets/esri/core/workers/chunks/242b216d61940aebe8e1.js +0 -1
  383. package/assets/esri/core/workers/chunks/32756905bcf11699b3f7.js +0 -1
  384. package/assets/esri/core/workers/chunks/35d238a5a6501f89bed7.js +0 -1
  385. package/assets/esri/core/workers/chunks/3fcd73ba832cb53d3a07.js +0 -1
  386. package/assets/esri/core/workers/chunks/40c1d65039c8f1d6afa0.js +0 -1
  387. package/assets/esri/core/workers/chunks/496e02cfe3d84010f675.js +0 -1
  388. package/assets/esri/core/workers/chunks/49dce142ad1ea4c01d00.js +0 -1
  389. package/assets/esri/core/workers/chunks/4b89d5b9e35bf79b321e.js +0 -1
  390. package/assets/esri/core/workers/chunks/54a49a25845897a15ab1.js +0 -1
  391. package/assets/esri/core/workers/chunks/573a8393bec916dcf16f.js +0 -1
  392. package/assets/esri/core/workers/chunks/576e408fb0834f3948e8.js +0 -1
  393. package/assets/esri/core/workers/chunks/5e805c9e9012dd39ec86.js +0 -1
  394. package/assets/esri/core/workers/chunks/6136bf09950adc46bc33.js +0 -1
  395. package/assets/esri/core/workers/chunks/666afe669866c44830bd.js +0 -1
  396. package/assets/esri/core/workers/chunks/6a0fbc54638f7de138c1.js +0 -1
  397. package/assets/esri/core/workers/chunks/81006d9eed65bbb82962.js +0 -1
  398. package/assets/esri/core/workers/chunks/843b6029d4c13115e1ac.js +0 -1
  399. package/assets/esri/core/workers/chunks/86d6007c45f2aa643ac8.js +0 -1
  400. package/assets/esri/core/workers/chunks/8ea34878a1ef24b4ded3.js +0 -1
  401. package/assets/esri/core/workers/chunks/8eea6251aa09725e654e.js +0 -1
  402. package/assets/esri/core/workers/chunks/90145d49a0cec902435c.js +0 -1
  403. package/assets/esri/core/workers/chunks/916691122d7fb38497d6.js +0 -1
  404. package/assets/esri/core/workers/chunks/9ae18a17f62d91167202.js +0 -1
  405. package/assets/esri/core/workers/chunks/9c510df592befb9ff892.js +0 -1
  406. package/assets/esri/core/workers/chunks/9f91d519da67714f915f.js +0 -1
  407. package/assets/esri/core/workers/chunks/a6a7279b09d7962147ec.js +0 -1
  408. package/assets/esri/core/workers/chunks/aba520714efc01bead36.js +0 -1
  409. package/assets/esri/core/workers/chunks/acb9c166259872828646.js +0 -1
  410. package/assets/esri/core/workers/chunks/accff253af360c34e8a8.js +0 -1
  411. package/assets/esri/core/workers/chunks/ad3871f497ecea1a08c9.js +0 -1
  412. package/assets/esri/core/workers/chunks/ae6eed26fc932bc08356.js +0 -1
  413. package/assets/esri/core/workers/chunks/b4bb461955a4c2bce072.js +0 -1
  414. package/assets/esri/core/workers/chunks/b98279213f45a0c27600.js +0 -1
  415. package/assets/esri/core/workers/chunks/ba5b24beebeb703b5919.js +0 -1
  416. package/assets/esri/core/workers/chunks/bd7d19ba0c7d9143a455.js +0 -1
  417. package/assets/esri/core/workers/chunks/bffaf1f20f18c75fad4e.js +0 -1
  418. package/assets/esri/core/workers/chunks/c4f8da6c238eb5e91f91.js +0 -1
  419. package/assets/esri/core/workers/chunks/cd64181298d82c8d0e9d.js +0 -1
  420. package/assets/esri/core/workers/chunks/cdabea4718a7e7d34cb8.js +0 -1
  421. package/assets/esri/core/workers/chunks/ce7155ae63e7bb74be00.js +0 -1
  422. package/assets/esri/core/workers/chunks/d45383d76ba99718b6d9.js +0 -1
  423. package/assets/esri/core/workers/chunks/d915d0a30d9beb24bd3a.js +0 -1
  424. package/assets/esri/core/workers/chunks/dc6538a2d5a1e60d0209.js +0 -1
  425. package/assets/esri/core/workers/chunks/dca633ae3bfd4a3f9bb3.js +0 -1
  426. package/assets/esri/core/workers/chunks/def8a854a05f17d3538e.js +0 -1
  427. package/assets/esri/core/workers/chunks/dfa7976085f7408a366c.js +0 -1
  428. package/assets/esri/core/workers/chunks/e0a5b499b3ae38c21278.js +0 -1
  429. package/assets/esri/core/workers/chunks/e1a20ba7d6279f59adc0.js +0 -1
  430. package/assets/esri/core/workers/chunks/e49a135a2933306a6105.js +0 -1
  431. package/assets/esri/core/workers/chunks/e9a9174c4d1a0a9effb6.js +0 -1
  432. package/assets/esri/core/workers/chunks/edead1a123860cc74b1b.js +0 -1
  433. package/assets/esri/core/workers/chunks/f3d5d92e0aefc2593208.js +0 -1
  434. package/assets/esri/core/workers/chunks/f90573c9dc36e51cd588.js +0 -1
  435. package/assets/esri/core/workers/chunks/fa9658dbfb921f9c13af.js +0 -1
  436. package/assets/esri/core/workers/chunks/fb5e2b1ced03eef28e96.js +0 -1
  437. package/assets/esri/core/workers/chunks/fd8f4eabb8bbc593dd9c.js +0 -1
  438. package/layers/graphics/controllers/StreamController.js +0 -5
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{ObjectAndLayerIdColor as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{RibbonVertexPosition as n}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{LineStipple as r,computePixelSize as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{MarkerSizing as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js";import{PiUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{terrainDepthTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import{ColorConversion as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as p,addPixelRatio as c}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float2BindUniform as m}from"../views/3d/webgl-engine/core/shaderModules/Float2BindUniform.js";import{Float4BindUniform as v}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4PassUniform as f}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as g}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as h}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as D}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as S}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{VertexAttribute as u}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{LineMarkerSpace as x}from"../views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js";import{outputColorHighlightOID as L}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOID.glsl.js";import{CapType as w}from"../views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js";import{ShaderBuilder as b}from"../views/webgl/ShaderBuilder.js";import{alphaCutoff as y}from"../webscene/support/AlphaCutoff.js";const j=1;function P(P){const C=new b,{attributes:F,varyings:A,vertex:R,fragment:z}=C,{applyMarkerOffset:T,draped:V,output:W,capType:E,stippleEnabled:O,falloffEnabled:M,roundJoins:N,wireframe:_,innerColorEnabled:I}=P;z.include(s),C.include(n,P),C.include(r,P),C.include(t,P),C.include(l,P);const k=T&&!V;k&&(R.uniforms.add(new h("markerScale",e=>e.markerScale)),C.include(a,{space:x.World})),p(R,P),R.uniforms.add(new S("inverseProjectionMatrix",e=>e.camera.inverseProjectionMatrix),new m("nearFar",e=>e.camera.nearFar),new h("miterLimit",e=>"miter"!==e.join?0:e.miterLimit),new v("viewport",e=>e.camera.fullViewport)),R.constants.add("LARGE_HALF_FLOAT","float",65500),F.add(u.POSITION,"vec3"),F.add(u.PREVIOUSDELTA,"vec4"),F.add(u.NEXTDELTA,"vec4"),F.add(u.LINEPARAMETERS,"vec2"),F.add(u.U0,"float"),A.add("vColor","vec4"),A.add("vpos","vec3",{invariant:!0}),A.add("vLineDistance","float"),A.add("vLineWidth","float");const U=O;U&&A.add("vLineSizeInv","float");const B=E===w.ROUND,$=O&&B,H=M||$;H&&A.add("vLineDistanceNorm","float"),B&&(A.add("vSegmentSDF","float"),A.add("vReverseSegmentSDF","float")),R.code.add(D`vec2 perpendicular(vec2 v) {
5
+ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{ObjectAndLayerIdColor as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{RibbonVertexPosition as n}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{LineStipple as r,computePixelSize as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{MarkerSizing as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js";import{PiUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{terrainDepthTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import{ColorConversion as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as p,addPixelRatio as c}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float2BindUniform as m}from"../views/3d/webgl-engine/core/shaderModules/Float2BindUniform.js";import{Float4BindUniform as f}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4PassUniform as v}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as g}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as h}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as D,If as S}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as u}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{VertexAttribute as x}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{AnimatedLine as L,Animation as w}from"../views/3d/webgl-engine/shaders/AnimatedLine.glsl.js";import{LineMarkerSpace as b}from"../views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js";import{outputColorHighlightOID as y}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOID.glsl.js";import{CapType as j}from"../views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js";import{ShaderBuilder as C}from"../views/webgl/ShaderBuilder.js";import{alphaCutoff as P}from"../webscene/support/AlphaCutoff.js";const A=1;function F(F){const R=new C,{attributes:z,varyings:T,vertex:V,fragment:W}=R,{applyMarkerOffset:E,draped:O,output:M,capType:N,stippleEnabled:_,falloffEnabled:I,roundJoins:k,wireframe:$,innerColorEnabled:U,animation:B}=F;W.include(s),R.include(n,F),R.include(r,F),R.include(t,F),R.include(l,F),R.include(L,F);const H=E&&!O;H&&(V.uniforms.add(new h("markerScale",e=>e.markerScale)),R.include(a,{space:b.World})),p(V,F),V.uniforms.add(new u("inverseProjectionMatrix",e=>e.camera.inverseProjectionMatrix),new m("nearFar",e=>e.camera.nearFar),new h("miterLimit",e=>"miter"!==e.join?0:e.miterLimit),new f("viewport",e=>e.camera.fullViewport)),V.constants.add("LARGE_HALF_FLOAT","float",65500),z.add(x.POSITION,"vec3"),z.add(x.PREVIOUSDELTA,"vec4"),z.add(x.NEXTDELTA,"vec4"),z.add(x.LINEPARAMETERS,"vec2"),z.add(x.U0,"float"),T.add("vColor","vec4"),T.add("vpos","vec3",{invariant:!0}),T.add("vLineDistance","float"),T.add("vLineWidth","float");const J=_;J&&T.add("vLineSizeInv","float");const G=N===j.ROUND,q=_&&G,X=I||q;X&&T.add("vLineDistanceNorm","float"),G&&(T.add("vSegmentSDF","float"),T.add("vReverseSegmentSDF","float")),V.code.add(D`vec2 perpendicular(vec2 v) {
6
6
  return vec2(v.y, -v.x);
7
7
  }
8
8
  float interp(float ncp, vec4 a, vec4 b) {
@@ -13,11 +13,11 @@ float s = sin(a);
13
13
  float c = cos(a);
14
14
  mat2 m = mat2(c, -s, s, c);
15
15
  return m * v;
16
- }`),R.code.add(D`vec4 projectAndScale(vec4 pos) {
16
+ }`),V.code.add(D`vec4 projectAndScale(vec4 pos) {
17
17
  vec4 posNdc = proj * pos;
18
18
  posNdc.xy *= viewport.zw / posNdc.w;
19
19
  return posNdc;
20
- }`),R.code.add(D`void clipAndTransform(inout vec4 pos, inout vec4 prev, inout vec4 next, in bool isStartVertex) {
20
+ }`),V.code.add(D`void clipAndTransform(inout vec4 pos, inout vec4 prev, inout vec4 next, in bool isStartVertex) {
21
21
  float vnp = nearFar[0] * 0.99;
22
22
  if(pos.z > -nearFar[0]) {
23
23
  if (!isStartVertex) {
@@ -47,7 +47,7 @@ forwardViewPosDepth(pos.xyz);
47
47
  pos = projectAndScale(pos);
48
48
  next = projectAndScale(next);
49
49
  prev = projectAndScale(prev);
50
- }`),c(R),R.constants.add("aaWidth","float",O?0:1).main.add(D`
50
+ }`),c(V),V.constants.add("aaWidth","float",_?0:1).main.add(D`
51
51
  // unpack values from vertex type
52
52
  bool isStartVertex = abs(abs(lineParameters.y)-3.0) == 1.0;
53
53
  vec3 prevPosition = position + previousDelta.xyz * previousDelta.w;
@@ -73,25 +73,25 @@ prev = projectAndScale(prev);
73
73
 
74
74
  float lineWidth = lineSize * pixelRatio;
75
75
  vLineWidth = lineWidth;
76
- ${U?D`vLineSizeInv = 1.0 / lineSize;`:""}
76
+ ${J?D`vLineSizeInv = 1.0 / lineSize;`:""}
77
77
 
78
78
  vec4 pos = view * vec4(position, 1.0);
79
79
  vec4 prev = view * vec4(prevPosition, 1.0);
80
80
  vec4 next = view * vec4(nextPosition, 1.0);
81
- `),k&&R.main.add(D`vec4 other = isStartVertex ? next : prev;
81
+ `),H&&V.main.add(D`vec4 other = isStartVertex ? next : prev;
82
82
  bool markersHidden = areWorldMarkersHidden(pos, other);
83
83
  if(!isJoin && !markersHidden) {
84
84
  pos.xyz += normalize(other.xyz - pos.xyz) * getWorldMarkerSize(pos) * 0.5;
85
- }`),R.main.add(D`clipAndTransform(pos, prev, next, isStartVertex);
85
+ }`),V.main.add(D`clipAndTransform(pos, prev, next, isStartVertex);
86
86
  vec2 left = (pos.xy - prev.xy);
87
87
  vec2 right = (next.xy - pos.xy);
88
88
  float leftLen = length(left);
89
- float rightLen = length(right);`);(O||B)&&R.main.add(D`
89
+ float rightLen = length(right);`);(_||G)&&V.main.add(D`
90
90
  float isEndVertex = float(!isStartVertex);
91
91
  vec2 segmentOrigin = mix(pos.xy, prev.xy, isEndVertex);
92
92
  vec2 segment = mix(right, left, isEndVertex);
93
- ${B?D`vec2 segmentEnd = mix(next.xy, pos.xy, isEndVertex);`:""}
94
- `),R.main.add(D`left = (leftLen > 0.001) ? left/leftLen : vec2(0.0, 0.0);
93
+ ${G?D`vec2 segmentEnd = mix(next.xy, pos.xy, isEndVertex);`:""}
94
+ `),V.main.add(D`left = (leftLen > 0.001) ? left/leftLen : vec2(0.0, 0.0);
95
95
  right = (rightLen > 0.001) ? right/rightLen : vec2(0.0, 0.0);
96
96
  vec2 capDisplacementDir = vec2(0, 0);
97
97
  vec2 joinDisplacementDir = vec2(0, 0);
@@ -108,18 +108,18 @@ displacementLen = min(displacementLen, min(leftLen, rightLen)/abs(nDotSeg));
108
108
  }
109
109
  }
110
110
  float subdivisionFactor = lineParameters.x;
111
- if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),N?R.main.add(D`
111
+ if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),k?V.main.add(D`
112
112
  vec2 startDir = leftLen < 0.001 ? right : left;
113
113
  startDir = perpendicular(startDir);
114
114
 
115
115
  vec2 endDir = rightLen < 0.001 ? left : right;
116
116
  endDir = perpendicular(endDir);
117
117
 
118
- float factor = ${O?D`min(1.0, subdivisionFactor * ${D.float((j+2)/(j+1))})`:D`subdivisionFactor`};
118
+ float factor = ${_?D`min(1.0, subdivisionFactor * ${D.float((A+2)/(A+1))})`:D`subdivisionFactor`};
119
119
 
120
120
  float rotationAngle = acos(clamp(dot(startDir, endDir), -1.0, 1.0));
121
121
  joinDisplacementDir = rotate(startDir, -sign(lineParameters.y) * factor * rotationAngle);
122
- `):R.main.add(D`if (leftLen < 0.001) {
122
+ `):V.main.add(D`if (leftLen < 0.001) {
123
123
  joinDisplacementDir = right;
124
124
  }
125
125
  else if (rightLen < 0.001) {
@@ -128,7 +128,7 @@ joinDisplacementDir = left;
128
128
  else {
129
129
  joinDisplacementDir = (isStartVertex || subdivisionFactor > 0.0) ? right : left;
130
130
  }
131
- joinDisplacementDir = perpendicular(joinDisplacementDir);`);const J=E!==w.BUTT;return R.main.add(D`
131
+ joinDisplacementDir = perpendicular(joinDisplacementDir);`);const K=N!==j.BUTT;return V.main.add(D`
132
132
  displacementLen = lineWidth;
133
133
  }
134
134
  } else {
@@ -136,27 +136,27 @@ joinDisplacementDir = perpendicular(joinDisplacementDir);`);const J=E!==w.BUTT;r
136
136
  joinDisplacementDir = isStartVertex ? right : left;
137
137
  joinDisplacementDir = perpendicular(joinDisplacementDir);
138
138
 
139
- ${J?D`capDisplacementDir = isStartVertex ? -right : left;`:""}
139
+ ${K?D`capDisplacementDir = isStartVertex ? -right : left;`:""}
140
140
  }
141
- `),R.main.add(D`
141
+ `),V.main.add(D`
142
142
  // Displacement (in pixels) caused by join/or cap
143
143
  vec2 dpos = joinDisplacementDir * sign(lineParameters.y) * displacementLen + capDisplacementDir * displacementLen;
144
144
  float lineDistNorm = sign(lineParameters.y) * pos.w;
145
145
 
146
146
  vLineDistance = lineWidth * lineDistNorm;
147
- ${H?D`vLineDistanceNorm = lineDistNorm;`:""}
147
+ ${X?D`vLineDistanceNorm = lineDistNorm;`:""}
148
148
 
149
149
  pos.xy += dpos;
150
- `),B&&R.main.add(D`vec2 segmentDir = normalize(segment);
150
+ `),G&&V.main.add(D`vec2 segmentDir = normalize(segment);
151
151
  vSegmentSDF = (isJoin && isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentOrigin, segmentDir) * pos.w) ;
152
- vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),O&&(V?R.uniforms.add(new g("worldToScreenRatio",e=>1/e.screenToPCSRatio)):R.main.add(D`vec3 segmentCenter = mix((nextPosition + position) * 0.5, (position + prevPosition) * 0.5, isEndVertex);
153
- float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),R.main.add(D`float segmentLengthScreenDouble = length(segment);
152
+ vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),_&&(O?V.uniforms.add(new g("worldToScreenRatio",e=>1/e.screenToPCSRatio)):V.main.add(D`vec3 segmentCenter = mix((nextPosition + position) * 0.5, (position + prevPosition) * 0.5, isEndVertex);
153
+ float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),V.main.add(D`float segmentLengthScreenDouble = length(segment);
154
154
  float segmentLengthScreen = segmentLengthScreenDouble * 0.5;
155
155
  float discreteWorldToScreenRatio = discretizeWorldToScreenRatio(worldToScreenRatio);
156
156
  float segmentLengthRender = length(mix(nextPosition - position, position - prevPosition, isEndVertex));
157
- vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),V?R.main.add(D`float segmentLengthPseudoScreen = segmentLengthScreen / pixelRatio * discreteWorldToScreenRatio / worldToScreenRatio;
158
- float startPseudoScreen = u0 * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):R.main.add(D`float startPseudoScreen = mix(u0, u0 - segmentLengthRender, isEndVertex) * discreteWorldToScreenRatio;
159
- float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),R.uniforms.add(new h("stipplePatternPixelSize",e=>o(e))),R.main.add(D`float patternLength = lineSize * stipplePatternPixelSize;
157
+ vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),O?V.main.add(D`float segmentLengthPseudoScreen = segmentLengthScreen / pixelRatio * discreteWorldToScreenRatio / worldToScreenRatio;
158
+ float startPseudoScreen = u0 * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):V.main.add(D`float startPseudoScreen = mix(u0, u0 - segmentLengthRender, isEndVertex) * discreteWorldToScreenRatio;
159
+ float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),V.uniforms.add(new h("stipplePatternPixelSize",e=>o(e))),V.main.add(D`float patternLength = lineSize * stipplePatternPixelSize;
160
160
  vStippleDistanceLimits = computeStippleDistanceLimits(startPseudoScreen, segmentLengthPseudoScreen, segmentLengthScreen, patternLength);
161
161
  vStippleDistance = mix(vStippleDistanceLimits.x, vStippleDistanceLimits.y, isEndVertex);
162
162
  if (segmentLengthScreenDouble >= 0.001) {
@@ -170,21 +170,21 @@ vStippleDistanceLimits = isJoin ?
170
170
  vStippleDistanceLimits :
171
171
  isStartVertex ?
172
172
  vec2(-1e34, vStippleDistanceLimits.y) :
173
- vec2(vStippleDistanceLimits.x, 1e34);`)),R.main.add(D`
173
+ vec2(vStippleDistanceLimits.x, 1e34);`)),V.main.add(D`
174
174
  // Convert back into NDC
175
175
  pos.xy = (pos.xy / viewport.zw) * pos.w;
176
176
 
177
177
  vColor = getColor();
178
178
  vColor.a *= coverage;
179
179
 
180
- ${_&&!V?"pos.z -= 0.001 * pos.w;":""}
180
+ ${$&&!O?"pos.z -= 0.001 * pos.w;":""}
181
181
 
182
182
  // transform final position to camera space for slicing
183
183
  vpos = (inverseProjectionMatrix * pos).xyz;
184
184
  gl_Position = pos;
185
185
  forwardObjectAndLayerIdColor();
186
- }`),C.fragment.include(i,P),C.include(L,P),z.include(d),z.main.add(D`discardBySlice(vpos);
187
- discardByTerrainDepth();`),_?z.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0, 1.0);`):(B&&z.main.add(D`
186
+ }`),R.fragment.include(i,F),R.include(y,F),W.include(d),W.main.add(D`discardBySlice(vpos);
187
+ discardByTerrainDepth();`),$?W.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0, 1.0);`):(G&&W.main.add(D`
188
188
  float sdf = min(vSegmentSDF, vReverseSegmentSDF);
189
189
  vec2 fragmentPosition = vec2(
190
190
  min(sdf, 0.0),
@@ -195,10 +195,10 @@ discardByTerrainDepth();`),_?z.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0,
195
195
  float fragmentCapSDF = (fragmentRadius - vLineWidth) * 0.5; // Divide by 2 to transform from double pixel scale
196
196
  float capCoverage = clamp(0.5 - fragmentCapSDF, 0.0, 1.0);
197
197
 
198
- if (capCoverage < ${D.float(y)}) {
198
+ if (capCoverage < ${D.float(P)}) {
199
199
  discard;
200
200
  }
201
- `),$?z.main.add(D`
201
+ `),q?W.main.add(D`
202
202
  vec2 stipplePosition = vec2(
203
203
  min(getStippleSDF() * 2.0 - 1.0, 0.0),
204
204
  vLineDistanceNorm * gl_FragCoord.w
@@ -206,11 +206,18 @@ discardByTerrainDepth();`),_?z.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0,
206
206
  float stippleRadius = length(stipplePosition * vLineWidth);
207
207
  float stippleCapSDF = (stippleRadius - vLineWidth) * 0.5; // Divide by 2 to transform from double pixel scale
208
208
  float stippleCoverage = clamp(0.5 - stippleCapSDF, 0.0, 1.0);
209
- float stippleAlpha = step(${D.float(y)}, stippleCoverage);
210
- `):z.main.add(D`float stippleAlpha = getStippleAlpha();`),W!==e.ObjectAndLayerIdColor&&z.main.add(D`discardByStippleAlpha(stippleAlpha, ${D.float(y)});`),z.uniforms.add(new f("intrinsicColor",e=>e.color)),z.main.add(D`vec4 color = intrinsicColor * vColor;`),I&&(z.uniforms.add(new f("innerColor",e=>e.innerColor??e.color),new h("innerWidth",(e,i)=>e.innerWidth*i.camera.pixelRatio)),z.main.add(D`float distToInner = abs(vLineDistance * gl_FragCoord.w) - innerWidth;
209
+ float stippleAlpha = step(${D.float(P)}, stippleCoverage);
210
+ `):W.main.add(D`float stippleAlpha = getStippleAlpha();`),M!==e.ObjectAndLayerIdColor&&W.main.add(D`discardByStippleAlpha(stippleAlpha, ${D.float(P)});`),W.uniforms.add(new v("intrinsicColor",e=>e.color)),W.main.add(D`vec4 color = intrinsicColor * vColor;`),U&&(W.uniforms.add(new v("innerColor",e=>e.innerColor??e.color),new h("innerWidth",(e,i)=>e.innerWidth*i.camera.pixelRatio)),W.main.add(D`float distToInner = abs(vLineDistance * gl_FragCoord.w) - innerWidth;
211
211
  float innerAA = clamp(0.5 - distToInner, 0.0, 1.0);
212
212
  float innerAlpha = innerColor.a + color.a * (1.0 - innerColor.a);
213
- color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),z.main.add(D`vec4 finalColor = blendStipple(color, stippleAlpha);`),M&&(z.uniforms.add(new h("falloff",e=>e.falloff)),z.main.add(D`finalColor.a *= pow(max(0.0, 1.0 - abs(vLineDistanceNorm * gl_FragCoord.w)), falloff);`)),O||z.main.add(D`float featherStartDistance = max(vLineWidth - 2.0, 0.0);
213
+ color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),W.main.add(D`vec4 finalColor = blendStipple(color, stippleAlpha);`),I&&(W.uniforms.add(new h("falloff",e=>e.falloff)),W.main.add(D`finalColor.a *= pow(max(0.0, 1.0 - abs(vLineDistanceNorm * gl_FragCoord.w)), falloff);`)),_||W.main.add(D`float featherStartDistance = max(vLineWidth - 2.0, 0.0);
214
214
  float value = abs(vLineDistance) * gl_FragCoord.w;
215
215
  float feather = (value - featherStartDistance) / (vLineWidth - featherStartDistance);
216
- finalColor.a *= 1.0 - clamp(feather, 0.0, 1.0);`)),z.main.add(D`outputColorHighlightOID(finalColor, vpos, finalColor.rgb);`),C}const C=Object.freeze(Object.defineProperty({__proto__:null,build:P,ribbonlineNumRoundJoinSubdivisions:j},Symbol.toStringTag,{value:"Module"}));export{C as R,P as b,j as r};
216
+ finalColor.a *= 1.0 - clamp(feather, 0.0, 1.0);`),B!==w.None&&W.main.add(D`
217
+ finalColor = animate(finalColor);
218
+
219
+ ${S(M!==e.ObjectAndLayerIdColor,D`
220
+ if (finalColor.a <= ${D.float(P)}) {
221
+ discard;
222
+ }`)}
223
+ `)),W.main.add(D`outputColorHighlightOID(finalColor, vpos, finalColor.rgb);`),R}const R=Object.freeze(Object.defineProperty({__proto__:null,build:F,ribbonlineNumRoundJoinSubdivisions:A},Symbol.toStringTag,{value:"Module"}));export{R,F as b,A as r};
package/chunks/index.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.34/esri/copyright.txt for details.
4
4
  */
5
- var e={False:"false",Null:"null",True:"true"},t={Break:"break",Continue:"continue",Else:"else",For:"for",Function:"function",If:"if",Import:"import",Export:"export",In:"in",Return:"return",Var:"var",While:"while"},u={From:"from",Of:"of"},i={AssignmentExpression:"AssignmentExpression",ArrayExpression:"ArrayExpression",BlockComment:"BlockComment",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",ContinueStatement:"ContinueStatement",EmptyStatement:"EmptyStatement",ExpressionStatement:"ExpressionStatement",ExportNamedDeclaration:"ExportNamedDeclaration",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",Identifier:"Identifier",IfStatement:"IfStatement",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",LineComment:"LineComment",Literal:"Literal",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",ObjectExpression:"ObjectExpression",Program:"Program",Property:"Property",ReturnStatement:"ReturnStatement",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement"},r=["++","--"],n=["-","+","!","~"],s=["=","/=","*=","%=","+=","-="],a=["||","&&"],D=["|","&",">>","<<",">>>","^","==","!=","<","<=",">",">=","+","-","*","/","%"],o={"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},h={BooleanLiteral:1,EOF:2,Identifier:3,Keyword:4,NullLiteral:5,NumericLiteral:6,Punctuator:7,StringLiteral:8,Template:10},c=["Unknown","Boolean","<end>","Identifier","Keyword","Null","Numeric","Punctuator","String","RegularExpression","Template"],l={InvalidModuleUri:"InvalidModuleUri",ForInOfLoopInitializer:"ForInOfLoopInitializer",IdentifierExpected:"IdentifierExpected",InvalidEscapedReservedWord:"InvalidEscapedReservedWord",InvalidExpression:"InvalidExpression",InvalidFunctionIdentifier:"InvalidFunctionIdentifier",InvalidHexEscapeSequence:"InvalidHexEscapeSequence",InvalidLeftHandSideInAssignment:"InvalidLeftHandSideInAssignment",InvalidLeftHandSideInForIn:"InvalidLeftHandSideInForIn",InvalidTemplateHead:"InvalidTemplateHead",InvalidVariableAssignment:"InvalidVariableAssignment",KeyMustBeString:"KeyMustBeString",NoFunctionInsideBlock:"NoFunctionInsideBlock",NoFunctionInsideFunction:"NoFunctionInsideFunction",ModuleExportRootOnly:"ModuleExportRootOnly",ModuleImportRootOnly:"ModuleImportRootOnly",PunctuatorExpected:"PunctuatorExpected",TemplateOctalLiteral:"TemplateOctalLiteral",UnexpectedBoolean:"UnexpectedBoolean",UnexpectedEndOfScript:"UnexpectedEndOfScript",UnexpectedIdentifier:"UnexpectedIdentifier",UnexpectedKeyword:"UnexpectedKeyword",UnexpectedNull:"UnexpectedNull",UnexpectedNumber:"UnexpectedNumber",UnexpectedPunctuator:"UnexpectedPunctuator",UnexpectedString:"UnexpectedString",UnexpectedTemplate:"UnexpectedTemplate",UnexpectedToken:"UnexpectedToken"},d={[l.InvalidModuleUri]:"Module uri must be a text literal.",[l.ForInOfLoopInitializer]:"for-in loop variable declaration may not have an initializer.",[l.IdentifierExpected]:"'${value}' is an invalid identifier.",[l.InvalidEscapedReservedWord]:"Keyword cannot contain escaped characters.",[l.InvalidExpression]:"Invalid expression.",[l.InvalidFunctionIdentifier]:"'${value}' is an invalid function identifier.",[l.InvalidHexEscapeSequence]:"Invalid hexadecimal escape sequence.",[l.InvalidLeftHandSideInAssignment]:"Invalid left-hand side in assignment.",[l.InvalidLeftHandSideInForIn]:"Invalid left-hand side in for-in.",[l.InvalidTemplateHead]:"Invalid template structure.",[l.InvalidVariableAssignment]:"Invalid variable assignment.",[l.KeyMustBeString]:"Object property keys must be a word starting with a letter.",[l.NoFunctionInsideBlock]:"Functions cannot be declared inside of code blocks.",[l.NoFunctionInsideFunction]:"Functions cannot be declared inside another function.",[l.ModuleExportRootOnly]:"Module exports cannot be declared inside of code blocks.",[l.ModuleImportRootOnly]:"Module import cannot be declared inside of code blocks.",[l.PunctuatorExpected]:"'${value}' expected.",[l.TemplateOctalLiteral]:"Octal literals are not allowed in template literals.",[l.UnexpectedBoolean]:"Unexpected boolean literal.",[l.UnexpectedEndOfScript]:"Unexpected end of Arcade expression.",[l.UnexpectedIdentifier]:"Unexpected identifier.",[l.UnexpectedKeyword]:"Unexpected keyword.",[l.UnexpectedNull]:"Unexpected null literal.",[l.UnexpectedNumber]:"Unexpected number.",[l.UnexpectedPunctuator]:"Unexpected punctuator.",[l.UnexpectedString]:"Unexpected text literal.",[l.UnexpectedTemplate]:"Unexpected quasi '${value}'.",[l.UnexpectedToken]:"Unexpected token '${value}'."},C=class e extends Error{constructor({code:t,index:u,line:i,column:r,len:n=0,description:s,data:a}){super(s??t),this.declaredRootClass="esri.arcade.lib.diagnostic",this.name="ParsingError",this.code=t,this.index=u,this.line=i,this.column=r,this.len=n,this.data=a,this.description=s,this.range={start:{line:i,column:r-1},end:{line:i,column:r+n}},Error.captureStackTrace?.(this,e)}};function F(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.Program}function p(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.BlockStatement}function E(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.BlockComment}function A(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.EmptyStatement}function m(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.VariableDeclaration}function x(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.Identifier}function B(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.VariableDeclarator}function f(e,t){return t.loc.end.line===e.loc.start.line&&t.loc.end.column<=e.loc.start.column}function k(e,t){return e.range[0]>=t.range[0]&&e.range[1]<=t.range[1]}var g=class{constructor(){this.comments=[],this._nodeStack=[],this._newComments=[]}insertInnerComments(e){if(!p(e)||0!==e.body.length)return;let t=[];for(let u=this._newComments.length-1;u>=0;u--){let i=this._newComments[u];e.range[1]>=i.range[0]&&(t.unshift(i),this._newComments.splice(u,1))}t.length&&(e.innerComments=t)}attachTrailingComments(e){let t=this._nodeStack.at(-1);if(!t)return;if(p(e)&&k(t,e))for(let i=this._newComments.length-1;i>=0;i--){let u=this._newComments[i];k(u,e)&&(t.trailingComments=[...t.trailingComments??[],u],this._newComments.splice(i,1))}let u=[];if(this._newComments.length>0)for(let i=this._newComments.length-1;i>=0;i--){let r=this._newComments[i];f(r,t)?(t.trailingComments=[...t.trailingComments??[],r],this._newComments.splice(i,1)):f(r,e)&&(u.unshift(r),this._newComments.splice(i,1))}if(t.trailingComments){f(t.trailingComments[0],e)&&(u=[...u,...t.trailingComments],delete t.trailingComments)}u.length>0&&(e.trailingComments=u)}attachLeadingComments(e){let t;for(;this._nodeStack.length>0;){let u=this._nodeStack[this._nodeStack.length-1];if(!(e.range[0]<=u.range[0]))break;t=u,this._nodeStack.pop()}let u=[],i=[];if(null!=t){if(!t.leadingComments)return;for(let r=t.leadingComments.length-1;r>=0;r--){let n=t.leadingComments[r];e.range[0]>=n.range[1]?(u.unshift(n),t.leadingComments.splice(r,1)):B(e)&&!E(n)&&(i.unshift(n),t.leadingComments.splice(r,1))}return 0===t.leadingComments.length&&delete t.leadingComments,u.length&&(e.leadingComments=u),void(i.length&&(e.trailingComments=[...i,...e.trailingComments??[]]))}for(let r=this._newComments.length-1;r>=0;r--){let t=this._newComments[r];e.range[0]>=t.range[0]&&(u.unshift(t),this._newComments.splice(r,1))}u.length&&(e.leadingComments=u)}attachComments(e){if(F(e)&&e.body.length>0){let t=this._nodeStack.at(-1);return t?(t.trailingComments=[...t.trailingComments??[],...this._newComments],this._newComments.length=0,void this._nodeStack.pop()):(e.trailingComments=[...this._newComments],void(this._newComments.length=0))}this.attachTrailingComments(e),this.attachLeadingComments(e),this.insertInnerComments(e),this._nodeStack.push(e)}collectComment(e){this.comments.push(e),this._newComments.push(e)}},S=/\$\{(.*?)\}/gu;function w(e,t){let u=d[e];return t?u.replace(S,(e,u)=>t[u]?.toString()??""):u}var y=class{constructor(e=!1){this.tolerant=e,this.errors=[]}recordError(e){this.errors.push(e)}tolerate(e){if(!this.tolerant)throw e;this.recordError(e)}throwError(e){throw e.description??(e.description=w(e.code,e.data)),new C(e)}tolerateError(e){e.description??(e.description=w(e.code,e.data));let t=new C(e);if(!this.tolerant)throw t;this.recordError(t)}};function I(e,t){if(!e)throw new Error(`ASSERT: ${t}`)}var T={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7C6\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB67\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDEC0-\uDEEB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/u,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05EF-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u07FD\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D3-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u09FE\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CD0-\u1CD2\u1CD4-\u1CFA\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7C6\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB67\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD27\uDD30-\uDD39\uDF00-\uDF1C\uDF27\uDF30-\uDF50\uDFE0-\uDFF6]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD44-\uDD46\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDC9-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3B-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5E\uDC5F\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDC00-\uDC3A\uDCA0-\uDCE9\uDCFF\uDDA0-\uDDA7\uDDAA-\uDDD7\uDDDA-\uDDE1\uDDE3\uDDE4\uDE00-\uDE3E\uDE47\uDE50-\uDE99\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD8E\uDD90\uDD91\uDD93-\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF4F-\uDF87\uDF8F-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDD00-\uDD2C\uDD30-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4B\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/u},b={fromCodePoint:e=>e<65536?String.fromCharCode(e):String.fromCharCode(55296+(e-65536>>10))+String.fromCharCode(56320+(e-65536&1023)),isWhiteSpace:e=>32===e||9===e||11===e||12===e||160===e||e>=5760&&[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(e),isLineTerminator:e=>10===e||13===e||8232===e||8233===e,isIdentifierStart:e=>36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||92===e||e>=128&&T.NonAsciiIdentifierStart.test(b.fromCodePoint(e)),isIdentifierPart:e=>36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||92===e||e>=128&&T.NonAsciiIdentifierPart.test(b.fromCodePoint(e)),isDecimalDigit:e=>e>=48&&e<=57,isHexDigit:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,isOctalDigit:e=>e>=48&&e<=55};function L(e){return"0123456789abcdef".indexOf(e.toLowerCase())}function v(e){return"01234567".indexOf(e)}var N=[[],[],[]];r.forEach(e=>N[e.length-1]?.push(e)),n.forEach(e=>N[e.length-1]?.push(e)),a.forEach(e=>N[e.length-1]?.push(e)),s.forEach(e=>N[e.length-1]?.push(e)),D.forEach(e=>N[e.length-1]?.push(e));var U=class{constructor(e,t){this.source=e,this.errorHandler=t,this._length=e.length,this.index=0,this.lineNumber=1,this.lineStart=0,this.curlyStack=[]}saveState(){return{index:this.index,lineNumber:this.lineNumber,lineStart:this.lineStart,curlyStack:this.curlyStack.slice()}}restoreState(e){this.index=e.index,this.lineNumber=e.lineNumber,this.lineStart=e.lineStart,this.curlyStack=e.curlyStack}eof(){return this.index>=this._length}throwUnexpectedToken(e=l.UnexpectedToken){this.errorHandler.throwError({code:e,index:this.index,line:this.lineNumber,column:this.index-this.lineStart+1,data:{value:this.source.charAt(this.index)}})}tolerateUnexpectedToken(e=l.UnexpectedToken){this.errorHandler.tolerateError({code:e,index:this.index,line:this.lineNumber,column:this.index-this.lineStart+1})}skipSingleLineComment(e){let t=[],u=this.index-e,i={start:{line:this.lineNumber,column:this.index-this.lineStart-e},end:{line:0,column:0}};for(;!this.eof();){let r=this.source.charCodeAt(this.index);if(this.index+=1,b.isLineTerminator(r)){i.end={line:this.lineNumber,column:this.index-this.lineStart-1};let n={multiLine:!1,start:u+e,end:this.index-1,range:[u,this.index-1],loc:i};return t.push(n),13===r&&10===this.source.charCodeAt(this.index)&&(this.index+=1),this.lineNumber+=1,this.lineStart=this.index,t}}i.end={line:this.lineNumber,column:this.index-this.lineStart};let r={multiLine:!1,start:u+e,end:this.index,range:[u,this.index],loc:i};return t.push(r),t}skipMultiLineComment(){let e=[],t=this.index-2,u={start:{line:this.lineNumber,column:this.index-this.lineStart-2},end:{line:0,column:0}};for(;!this.eof();){let i=this.source.charCodeAt(this.index);if(b.isLineTerminator(i))13===i&&10===this.source.charCodeAt(this.index+1)&&(this.index+=1),this.lineNumber+=1,this.index+=1,this.lineStart=this.index;else if(42===i){if(47===this.source.charCodeAt(this.index+1)){this.index+=2,u.end={line:this.lineNumber,column:this.index-this.lineStart};let i={multiLine:!0,start:t+2,end:this.index-2,range:[t,this.index],loc:u};return e.push(i),e}this.index+=1}else this.index+=1}u.end={line:this.lineNumber,column:this.index-this.lineStart};let i={multiLine:!0,start:t+2,end:this.index,range:[t,this.index],loc:u};return e.push(i),this.tolerateUnexpectedToken(),e}scanComments(){let e=[];for(;!this.eof();){let t=this.source.charCodeAt(this.index);if(b.isWhiteSpace(t))this.index+=1;else if(b.isLineTerminator(t))this.index+=1,13===t&&10===this.source.charCodeAt(this.index)&&(this.index+=1),this.lineNumber+=1,this.lineStart=this.index;else{if(47!==t)break;if(t=this.source.charCodeAt(this.index+1),47===t){this.index+=2;let t=this.skipSingleLineComment(2);e=[...e,...t]}else{if(42!==t)break;{this.index+=2;let t=this.skipMultiLineComment();e=[...e,...t]}}}}return e}isKeyword(e){switch((e=e.toLowerCase()).length){case 2:return e===t.If||e===t.In;case 3:return e===t.Var||e===t.For;case 4:return e===t.Else;case 5:return e===t.Break||e===t.While;case 6:return e===t.Return||e===t.Import||e===t.Export;case 8:return e===t.Function||e===t.Continue;default:return!1}}codePointAt(e){let t=this.source.charCodeAt(e);if(t>=55296&&t<=56319){let u=this.source.charCodeAt(e+1);u>=56320&&u<=57343&&(t=1024*(t-55296)+u-56320+65536)}return t}scanHexEscape(e){let t="u"===e?4:2,u=0;for(let i=0;i<t;i++){if(this.eof()||!b.isHexDigit(this.source.charCodeAt(this.index)))return null;u=16*u+L(this.source[this.index]??""),this.index+=1}return String.fromCharCode(u)}scanUnicodeCodePointEscape(){let e=this.source[this.index],t=0;for("}"===e&&this.throwUnexpectedToken();!this.eof()&&(e=this.source[this.index]??"",this.index+=1,b.isHexDigit(e.charCodeAt(0)));)t=16*t+L(e);return(t>1114111||"}"!==e)&&this.throwUnexpectedToken(),b.fromCodePoint(t)}getIdentifier(){let e=this.index;for(this.index+=1;!this.eof();){let t=this.source.charCodeAt(this.index);if(92===t)return this.index=e,this.getComplexIdentifier();if(t>=55296&&t<57343)return this.index=e,this.getComplexIdentifier();if(!b.isIdentifierPart(t))break;this.index+=1}return this.source.slice(e,this.index)}getComplexIdentifier(){let e,t=this.codePointAt(this.index),u=b.fromCodePoint(t);for(this.index+=u.length,92===t&&(117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),this.index+=1,"{"===this.source[this.index]?(this.index+=1,e=this.scanUnicodeCodePointEscape()):(e=this.scanHexEscape("u"),(null===e||"\\"===e||!b.isIdentifierStart(e.charCodeAt(0)))&&this.throwUnexpectedToken()),u=e);!this.eof()&&(t=this.codePointAt(this.index),b.isIdentifierPart(t));)e=b.fromCodePoint(t),u+=e,this.index+=e.length,92===t&&(u=u.substring(0,u.length-1),117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),this.index+=1,"{"===this.source[this.index]?(this.index+=1,e=this.scanUnicodeCodePointEscape()):(e=this.scanHexEscape("u"),(null===e||"\\"===e||!b.isIdentifierPart(e.charCodeAt(0)))&&this.throwUnexpectedToken()),u+=e);return u}octalToDecimal(e){let t="0"!==e,u=v(e);return!this.eof()&&b.isOctalDigit(this.source.charCodeAt(this.index))&&(t=!0,u=8*u+v(this.source[this.index]??""),this.index+=1,"0123".includes(e)&&!this.eof()&&b.isOctalDigit(this.source.charCodeAt(this.index))&&(u=8*u+v(this.source[this.index]??""),this.index+=1)),{code:u,octal:t}}scanIdentifier(){let t,u=this.index,i=92===this.source.charCodeAt(u)?this.getComplexIdentifier():this.getIdentifier();if(t=1===i.length?h.Identifier:this.isKeyword(i)?h.Keyword:i.toLowerCase()===e.Null?h.NullLiteral:i.toLowerCase()===e.True||i.toLowerCase()===e.False?h.BooleanLiteral:h.Identifier,t!==h.Identifier&&u+i.length!==this.index){let e=this.index;this.index=u,this.tolerateUnexpectedToken(l.InvalidEscapedReservedWord),this.index=e}return{type:t,value:i,lineNumber:this.lineNumber,lineStart:this.lineStart,start:u,end:this.index}}scanPunctuator(){let e=this.index,t=this.source[this.index]??"";switch(t){case"(":case"{":"{"===t&&this.curlyStack.push("{"),this.index+=1;break;case".":case")":case";":case",":case"[":case"]":case":":case"?":case"~":this.index+=1;break;case"}":this.index+=1,this.curlyStack.pop();break;default:for(let e=N.length;e>0;e--)if(t=this.source.substring(this.index,this.index+e),N[e-1]?.includes(t)){this.index+=e;break}}return this.index===e&&this.throwUnexpectedToken(),{type:h.Punctuator,value:t,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanHexLiteral(e){let t="";for(;!this.eof()&&b.isHexDigit(this.source.charCodeAt(this.index));)t+=this.source[this.index],this.index+=1;return 0===t.length&&this.throwUnexpectedToken(),b.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:h.NumericLiteral,value:Number.parseInt(`0x${t}`,16),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanBinaryLiteral(e){let t="";for(;!this.eof();){let e=this.source[this.index];if("0"!==e&&"1"!==e)break;t+=this.source[this.index],this.index+=1}if(0===t.length&&this.throwUnexpectedToken(),!this.eof()){let e=this.source.charCodeAt(this.index);(b.isIdentifierStart(e)||b.isDecimalDigit(e))&&this.throwUnexpectedToken()}return{type:h.NumericLiteral,value:Number.parseInt(t,2),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanOctalLiteral(e,t){let u="",i=!1;for(b.isOctalDigit(e.charCodeAt(0))&&(i=!0,u=`0${this.source[this.index]}`),this.index+=1;!this.eof()&&b.isOctalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;return!i&&0===u.length&&this.throwUnexpectedToken(),(b.isIdentifierStart(this.source.charCodeAt(this.index))||b.isDecimalDigit(this.source.charCodeAt(this.index)))&&this.throwUnexpectedToken(),{type:h.NumericLiteral,value:Number.parseInt(u,8),lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}}scanNumericLiteral(){let e=this.index,t=this.source[e]??"";I(b.isDecimalDigit(t.charCodeAt(0))||"."===t,"Numeric literal must start with a decimal digit or a decimal point");let u="";if("."!==t){if(u=this.source[this.index]??"",this.index+=1,t=this.source[this.index]??"","0"===u){if("x"===t||"X"===t)return this.index+=1,this.scanHexLiteral(e);if("b"===t||"B"===t)return this.index+=1,this.scanBinaryLiteral(e);if("o"===t||"O"===t)return this.scanOctalLiteral(t,e)}for(;b.isDecimalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;t=this.source[this.index]??""}if("."===t){for(u+=this.source[this.index],this.index+=1;b.isDecimalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;t=this.source[this.index]??""}if("e"===t||"E"===t)if(u+=this.source[this.index],this.index+=1,t=this.source[this.index]??"",("+"===t||"-"===t)&&(u+=this.source[this.index],this.index+=1),b.isDecimalDigit(this.source.charCodeAt(this.index)))for(;b.isDecimalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;else this.throwUnexpectedToken();return b.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:h.NumericLiteral,value:Number.parseFloat(u),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanStringLiteral(){let e=this.index,t=this.source[e];I("'"===t||'"'===t,"String literal must starts with a quote"),this.index+=1;let u=!1,i="";for(;!this.eof();){let e=this.source[this.index]??"";if(this.index+=1,e===t){t="";break}if("\\"===e)if(e=this.source[this.index]??"",this.index+=1,e&&b.isLineTerminator(e.charCodeAt(0)))this.lineNumber+=1,"\r"===e&&"\n"===this.source[this.index]&&(this.index+=1),this.lineStart=this.index;else switch(e){case"u":if("{"===this.source[this.index])this.index+=1,i+=this.scanUnicodeCodePointEscape();else{let t=this.scanHexEscape(e);null===t&&this.throwUnexpectedToken(),i+=t}break;case"x":{let t=this.scanHexEscape(e);null===t&&this.throwUnexpectedToken(l.InvalidHexEscapeSequence),i+=t;break}case"n":i+="\n";break;case"r":i+="\r";break;case"t":i+="\t";break;case"b":i+="\b";break;case"f":i+="\f";break;case"v":i+="\v";break;case"8":case"9":i+=e,this.tolerateUnexpectedToken();break;default:if(e&&b.isOctalDigit(e.charCodeAt(0))){let t=this.octalToDecimal(e);u=t.octal||u,i+=String.fromCharCode(t.code)}else i+=e}else{if(b.isLineTerminator(e.charCodeAt(0)))break;i+=e}}return""!==t&&(this.index=e,this.throwUnexpectedToken()),{type:h.StringLiteral,value:i,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanTemplate(){let e="",t=!1,u=this.index,i="`"===this.source[u],r=!1,n=2;for(this.index+=1;!this.eof();){let u=this.source[this.index]??"";if(this.index+=1,"`"===u){n=1,r=!0,t=!0;break}if("$"!==u)if("\\"!==u)b.isLineTerminator(u.charCodeAt(0))?(this.lineNumber+=1,"\r"===u&&"\n"===this.source[this.index]&&(this.index+=1),this.lineStart=this.index,e+="\n"):e+=u;else if(u=this.source[this.index]??"",this.index+=1,b.isLineTerminator(u.charCodeAt(0)))this.lineNumber+=1,"\r"===u&&"\n"===this.source[this.index]&&(this.index+=1),this.lineStart=this.index;else switch(u){case"n":e+="\n";break;case"r":e+="\r";break;case"t":e+="\t";break;case"u":if("{"===this.source[this.index])this.index+=1,e+=this.scanUnicodeCodePointEscape();else{let t=this.index,i=this.scanHexEscape(u);null!==i?e+=i:(this.index=t,e+=u)}break;case"x":{let t=this.scanHexEscape(u);null===t&&this.throwUnexpectedToken(l.InvalidHexEscapeSequence),e+=t;break}case"b":e+="\b";break;case"f":e+="\f";break;case"v":e+="\v";break;default:"0"===u?(b.isDecimalDigit(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(l.TemplateOctalLiteral),e+="\0"):b.isOctalDigit(u.charCodeAt(0))?this.throwUnexpectedToken(l.TemplateOctalLiteral):e+=u}else{if("{"===this.source[this.index]){this.curlyStack.push("${"),this.index+=1,t=!0;break}e+=u}}return t||this.throwUnexpectedToken(),i||this.curlyStack.pop(),{type:h.Template,value:this.source.slice(u+1,this.index-n),cooked:e,head:i,tail:r,lineNumber:this.lineNumber,lineStart:this.lineStart,start:u,end:this.index}}lex(){if(this.eof())return{type:h.EOF,value:"",lineNumber:this.lineNumber,lineStart:this.lineStart,start:this.index,end:this.index};let e=this.source.charCodeAt(this.index);return b.isIdentifierStart(e)?this.scanIdentifier():40===e||41===e||59===e?this.scanPunctuator():39===e||34===e?this.scanStringLiteral():46===e?b.isDecimalDigit(this.source.charCodeAt(this.index+1))?this.scanNumericLiteral():this.scanPunctuator():b.isDecimalDigit(e)?this.scanNumericLiteral():96===e||125===e&&"${"===this.curlyStack[this.curlyStack.length-1]?this.scanTemplate():e>=55296&&e<57343&&b.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()}},P={None:0,Function:1,IfClause:2,ForLoop:4,ForOfLoop:8,WhileLoop:16},M={AsObject:0,Automatic:1};function O(e,t=0){let u=e.start-e.lineStart,i=e.lineNumber;return u<0&&(u+=t,i-=1),{index:e.start,line:i,column:u}}function R(e){return[{index:e.range[0],...e.loc.start},{index:e.range[1],...e.loc.end}]}function z(e){return e in o?o[e]:0}var K=class{constructor(e,t={},u){this.delegate=u,this.hasLineTerminator=!1,this.options={tokens:"boolean"==typeof t.tokens&&t.tokens,comments:"boolean"==typeof t.comments&&t.comments,tolerant:"boolean"==typeof t.tolerant&&t.tolerant},this.options.comments&&(this.commentHandler=new g),this.errorHandler=new y(this.options.tolerant),this.scanner=new U(e,this.errorHandler),this.context={isAssignmentTarget:!1,blockContext:P.None,curlyParsingType:M.AsObject},this.rawToken={type:h.EOF,value:"",lineNumber:this.scanner.lineNumber,lineStart:0,start:0,end:0},this.tokens=[],this.startMarker={index:0,line:this.scanner.lineNumber,column:0},this.endMarker={index:0,line:this.scanner.lineNumber,column:0},this.readNextRawToken(),this.endMarker={index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}throwIfInvalidType(e,t,{validTypes:u,invalidTypes:i}){u?.some(t=>e.type===t)||i?.some(t=>e.type===t)&&this.throwError(l.InvalidExpression,t)}throwError(e,t,u=this.endMarker){let{index:i,line:r,column:n}=t,s=u.index-i-1;this.errorHandler.throwError({code:e,index:i,line:r,column:n+1,len:s})}tolerateError(e,t){throw new Error("######################################### !!!")}unexpectedTokenError(e={}){let t,{rawToken:u}=e,{code:i,data:r}=e;if(u){if(!i)switch(u.type){case h.EOF:i=l.UnexpectedEndOfScript;break;case h.Identifier:i=l.UnexpectedIdentifier;break;case h.NumericLiteral:i=l.UnexpectedNumber;break;case h.StringLiteral:i=l.UnexpectedString;break;case h.Template:i=l.UnexpectedTemplate}t=u.value.toString()}else t="ILLEGAL";i??(i=l.UnexpectedToken),r??(r={value:t});let n=w(i,r);if(u){let e=u.start,t=u.lineNumber,s=u.start-u.lineStart+1;return new C({code:i,index:e,line:t,column:s,len:u.end-u.start-1,data:r,description:n})}let{index:s,line:a}=this.endMarker;return new C({code:i,index:s,line:a,column:this.endMarker.column+1,data:r,description:n})}throwUnexpectedToken(e={}){throw e.rawToken??(e.rawToken=this.rawToken),this.unexpectedTokenError(e)}collectComments(e){let{commentHandler:t}=this;!t||!e.length||e.forEach(e=>{let u={type:e.multiLine?i.BlockComment:i.LineComment,value:this.getSourceValue(e),range:e.range,loc:e.loc};t.collectComment(u)})}peekAhead(e){let t=()=>(this.scanner.scanComments(),this.scanner.lex()),u=this.scanner.saveState(),i=e.call(this,t);return this.scanner.restoreState(u),i}getSourceValue(e){return this.scanner.source.slice(e.start,e.end)}convertToToken(e){return{type:c[e.type],value:this.getSourceValue(e),range:[e.start,e.end],loc:{start:{line:this.startMarker.line,column:this.startMarker.column},end:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}}}readNextRawToken(){this.endMarker.index=this.scanner.index,this.endMarker.line=this.scanner.lineNumber,this.endMarker.column=this.scanner.index-this.scanner.lineStart;let e=this.rawToken;this.collectComments(this.scanner.scanComments()),this.scanner.index!==this.startMarker.index&&(this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart),this.rawToken=this.scanner.lex(),this.hasLineTerminator=e.lineNumber!==this.rawToken.lineNumber,this.options.tokens&&this.rawToken.type!==h.EOF&&this.tokens.push(this.convertToToken(this.rawToken))}captureStartMarker(){return{index:this.startMarker.index,line:this.startMarker.line,column:this.startMarker.column}}getItemLocation(e){return{range:[e.index,this.endMarker.index],loc:{start:{line:e.line,column:e.column},end:{line:this.endMarker.line,column:this.endMarker.column}}}}finalize(e){return(this.delegate??this.commentHandler)&&(this.commentHandler?.attachComments(e),this.delegate?.(e)),e}expectPunctuator(e){let t=this.rawToken;this.matchPunctuator(e)?this.readNextRawToken():this.throwUnexpectedToken({rawToken:t,code:l.PunctuatorExpected,data:{value:e}})}expectKeyword(e){this.rawToken.type!==h.Keyword||this.rawToken.value.toLowerCase()!==e.toString()?this.throwUnexpectedToken({rawToken:this.rawToken}):this.readNextRawToken()}expectContextualKeyword(e){this.rawToken.type!==h.Identifier||this.rawToken.value.toLowerCase()!==e?this.throwUnexpectedToken({rawToken:this.rawToken}):this.readNextRawToken()}matchKeyword(e){return this.rawToken.type===h.Keyword&&this.rawToken.value.toLowerCase()===e}matchContextualKeyword(e){return this.rawToken.type===h.Identifier&&this.rawToken.value===e}matchPunctuator(e){return this.rawToken.type===h.Punctuator&&this.rawToken.value===e}getMatchingPunctuator(e){if("string"==typeof e&&(e=e.split("")),this.rawToken.type===h.Punctuator&&e.length)return e.find(this.matchPunctuator.bind(this))}isolateCoverGrammar(e){let t=this.context.isAssignmentTarget;this.context.isAssignmentTarget=!0;let u=e.call(this);return this.context.isAssignmentTarget=t,u}inheritCoverGrammar(e){var t;let u=this.context.isAssignmentTarget;this.context.isAssignmentTarget=!0;let i=e.call(this);return(t=this.context).isAssignmentTarget&&(t.isAssignmentTarget=u),i}withBlockContext(e,t){let u=this.context.blockContext;this.context.blockContext|=e;let i=this.context.curlyParsingType;this.context.curlyParsingType=M.Automatic;let r=t.call(this);return this.context.blockContext=u,this.context.curlyParsingType=i,r}consumeSemicolon(){if(this.matchPunctuator(";"))this.readNextRawToken();else if(!this.hasLineTerminator){if(this.rawToken.type===h.EOF||this.matchPunctuator("}"))return this.endMarker.index=this.startMarker.index,this.endMarker.line=this.startMarker.line,void(this.endMarker.column=this.startMarker.column);this.throwUnexpectedToken({rawToken:this.rawToken})}}parsePrimaryExpression(){let t=this.captureStartMarker(),u=this.rawToken;switch(u.type){case h.Identifier:return this.readNextRawToken(),this.finalize({type:i.Identifier,name:u.value,...this.getItemLocation(t)});case h.NumericLiteral:case h.StringLiteral:return this.context.isAssignmentTarget=!1,this.readNextRawToken(),this.finalize({type:i.Literal,value:u.value,raw:this.getSourceValue(u),isString:"string"==typeof u.value,...this.getItemLocation(t)});case h.BooleanLiteral:return this.context.isAssignmentTarget=!1,this.readNextRawToken(),this.finalize({type:i.Literal,value:u.value.toLowerCase()===e.True,raw:this.getSourceValue(u),isString:!1,...this.getItemLocation(t)});case h.NullLiteral:return this.context.isAssignmentTarget=!1,this.readNextRawToken(),this.finalize({type:i.Literal,value:null,raw:this.getSourceValue(u),isString:!1,...this.getItemLocation(t)});case h.Template:return this.parseTemplateLiteral();case h.Punctuator:switch(u.value){case"(":return this.inheritCoverGrammar(this.parseGroupExpression.bind(this));case"[":return this.inheritCoverGrammar(this.parseArrayInitializer.bind(this));case"{":return this.inheritCoverGrammar(this.parseObjectExpression.bind(this));default:return this.throwUnexpectedToken({rawToken:this.rawToken})}case h.Keyword:return this.context.isAssignmentTarget=!1,this.throwUnexpectedToken({rawToken:this.rawToken});default:return this.throwUnexpectedToken({rawToken:this.rawToken})}}parseArrayInitializer(){let e=this.captureStartMarker();this.expectPunctuator("[");let t=[];for(;!this.matchPunctuator("]");){let e=this.captureStartMarker();this.matchPunctuator(",")?(this.readNextRawToken(),this.throwError(l.InvalidExpression,e)):(t.push(this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this))),this.matchPunctuator("]")||this.expectPunctuator(","))}return this.expectPunctuator("]"),this.finalize({type:i.ArrayExpression,elements:t,...this.getItemLocation(e)})}parseObjectPropertyKey(){let e=this.captureStartMarker(),t=this.rawToken;switch(t.type){case h.StringLiteral:return this.readNextRawToken(),this.finalize({type:i.Literal,value:t.value,raw:this.getSourceValue(t),isString:!0,...this.getItemLocation(e)});case h.Identifier:case h.BooleanLiteral:case h.NullLiteral:case h.Keyword:return this.readNextRawToken(),this.finalize({type:i.Identifier,name:t.value,...this.getItemLocation(e)});default:this.throwError(l.KeyMustBeString,e)}}parseObjectProperty(){let e=this.rawToken,t=this.captureStartMarker(),u=this.parseObjectPropertyKey(),r=!1,n=null;return this.matchPunctuator(":")?(this.readNextRawToken(),n=this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this))):e.type===h.Identifier?(r=!0,n=this.finalize({type:i.Identifier,name:e.value,...this.getItemLocation(t)})):this.throwUnexpectedToken({rawToken:this.rawToken}),this.finalize({type:i.Property,kind:"init",key:u,value:n,shorthand:r,...this.getItemLocation(t)})}parseObjectExpression(){let e=this.captureStartMarker();this.expectPunctuator("{");let t=[];for(;!this.matchPunctuator("}");)t.push(this.parseObjectProperty()),this.matchPunctuator("}")||this.expectPunctuator(",");return this.expectPunctuator("}"),this.finalize({type:i.ObjectExpression,properties:t,...this.getItemLocation(e)})}parseTemplateElement(e=!1){let t=this.rawToken;t.type!==h.Template&&this.throwUnexpectedToken({rawToken:t}),e&&!t.head&&this.throwUnexpectedToken({code:l.InvalidTemplateHead,rawToken:t});let u=this.captureStartMarker();this.readNextRawToken();let{value:r,cooked:n,tail:s}=t,a=this.finalize({type:i.TemplateElement,value:{raw:r,cooked:n},tail:s,...this.getItemLocation(u)});return a.loc.start.column+=1,a.loc.end.column-=s?1:2,a}parseTemplateLiteral(){let e=this.captureStartMarker(),t=[],u=[],r=this.parseTemplateElement(!0);for(u.push(r);!r.tail;)t.push(this.parseExpression()),r=this.parseTemplateElement(),u.push(r);return this.finalize({type:i.TemplateLiteral,quasis:u,expressions:t,...this.getItemLocation(e)})}parseGroupExpression(){this.expectPunctuator("(");let e=this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this));return this.expectPunctuator(")"),e}parseArguments(){this.expectPunctuator("(");let e=[];if(!this.matchPunctuator(")"))for(;;){let t=this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this));if(e.push(t),this.matchPunctuator(")")||(this.expectPunctuator(","),this.matchPunctuator(")")))break}return this.expectPunctuator(")"),e}parseMemberName(){let e=this.rawToken,t=this.captureStartMarker();return this.readNextRawToken(),e.type!==h.NullLiteral&&e.type!==h.Identifier&&e.type!==h.Keyword&&e.type!==h.BooleanLiteral&&this.throwUnexpectedToken({rawToken:e}),this.finalize({type:i.Identifier,name:e.value,...this.getItemLocation(t)})}parseLeftHandSideExpression(){let e,t=this.captureStartMarker(),u=this.inheritCoverGrammar(this.parsePrimaryExpression.bind(this)),r=this.captureStartMarker();for(;e=this.getMatchingPunctuator("([.");)switch(e){case"(":{this.context.isAssignmentTarget=!1,u.type!==i.Identifier&&u.type!==i.MemberExpression&&this.throwError(l.IdentifierExpected,t,r);let e=this.parseArguments();u=this.finalize({type:i.CallExpression,callee:u,arguments:e,...this.getItemLocation(t)});continue}case"[":{this.context.isAssignmentTarget=!0,this.expectPunctuator("[");let e=this.isolateCoverGrammar(()=>this.parseExpression());this.expectPunctuator("]"),u=this.finalize({type:i.MemberExpression,computed:!0,object:u,property:e,...this.getItemLocation(t)});continue}case".":{this.context.isAssignmentTarget=!0,this.expectPunctuator(".");let e=this.parseMemberName();u=this.finalize({type:i.MemberExpression,computed:!1,object:u,property:e,...this.getItemLocation(t)});continue}}return u}parseUpdateExpression(){let e=this.captureStartMarker(),t=this.getMatchingPunctuator(r);if(t){this.readNextRawToken();let u=this.captureStartMarker(),r=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this));return r.type!==i.Identifier&&r.type!==i.MemberExpression&&r.type!==i.CallExpression&&this.throwError(l.InvalidExpression,u),this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInAssignment,e),this.context.isAssignmentTarget=!1,this.finalize({type:i.UpdateExpression,operator:t,argument:r,prefix:!0,...this.getItemLocation(e)})}let u=this.captureStartMarker(),n=this.inheritCoverGrammar(this.parseLeftHandSideExpression.bind(this)),s=this.captureStartMarker();return this.hasLineTerminator||(t=this.getMatchingPunctuator(r),!t)?n:(n.type!==i.Identifier&&n.type!==i.MemberExpression&&this.throwError(l.InvalidExpression,u,s),this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInAssignment,e),this.readNextRawToken(),this.context.isAssignmentTarget=!1,this.finalize({type:i.UpdateExpression,operator:t,argument:n,prefix:!1,...this.getItemLocation(e)}))}parseUnaryExpression(){let e=this.getMatchingPunctuator(n);if(e){let t=this.captureStartMarker();this.readNextRawToken();let u=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this));return this.context.isAssignmentTarget=!1,this.finalize({type:i.UnaryExpression,operator:e,argument:u,prefix:!0,...this.getItemLocation(t)})}return this.parseUpdateExpression()}parseBinaryExpression(){let e=this.rawToken,t=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this));if(this.rawToken.type!==h.Punctuator)return t;let u=this.rawToken.value,i=z(u);if(0===i)return t;this.readNextRawToken(),this.context.isAssignmentTarget=!1;let r=[e,this.rawToken],n=t,s=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this)),a=[n,u,s],D=[i];for(;this.rawToken.type===h.Punctuator&&(i=z(this.rawToken.value))>0;){for(;a.length>2&&i<=D[D.length-1];){s=a.pop();let e=a.pop();D.pop(),n=a.pop(),r.pop();let t=r[r.length-1],u=O(t,t.lineStart);a.push(this.finalize(this.createBinaryOrLogicalExpression(u,e,n,s)))}a.push(this.rawToken.value),D.push(i),r.push(this.rawToken),this.readNextRawToken(),a.push(this.inheritCoverGrammar(this.parseUnaryExpression.bind(this)))}let o=a.length-1;t=a[o];let c=r.pop();for(;o>1;){let e=r.pop();if(!e)break;let u=c?.lineStart,i=O(e,u),n=a[o-1];t=this.finalize(this.createBinaryOrLogicalExpression(i,n,a[o-2],t)),o-=2,c=e}return t}createBinaryOrLogicalExpression(e,t,u,r){let n=a.includes(t)?i.LogicalExpression:i.BinaryExpression;return n===i.BinaryExpression||((u.type===i.AssignmentExpression||u.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,...R(u)),(r.type===i.AssignmentExpression||r.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,...R(u))),{type:n,operator:t,left:u,right:r,...this.getItemLocation(e)}}parseAssignmentExpression(){let e=this.captureStartMarker(),t=this.inheritCoverGrammar(this.parseBinaryExpression.bind(this)),u=this.captureStartMarker(),r=this.getMatchingPunctuator(s);if(!r)return t;t.type!==i.Identifier&&t.type!==i.MemberExpression&&this.throwError(l.InvalidExpression,e,u),this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInAssignment,e),this.matchPunctuator("=")||(this.context.isAssignmentTarget=!1),this.readNextRawToken();let n=this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this));return this.finalize({type:i.AssignmentExpression,left:t,operator:r,right:n,...this.getItemLocation(e)})}parseExpression(){return this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this))}parseStatements(e){let t=[];for(;this.rawToken.type!==h.EOF&&!this.matchPunctuator(e);){let e=this.parseStatementListItem();A(e)||t.push(e)}return t}parseStatementListItem(){return this.context.isAssignmentTarget=!0,this.matchKeyword(t.Function)?this.parseFunctionDeclaration():this.matchKeyword(t.Export)?this.parseExportDeclaration():this.matchKeyword(t.Import)?this.parseImportDeclaration():this.parseStatement()}parseBlock(){let e=this.captureStartMarker();this.expectPunctuator("{");let t=this.parseStatements("}");return this.expectPunctuator("}"),this.finalize({type:i.BlockStatement,body:t,...this.getItemLocation(e)})}parseObjectStatement(){let e=this.captureStartMarker(),t=this.parseObjectExpression();return this.finalize({type:i.ExpressionStatement,expression:t,...this.getItemLocation(e)})}parseBlockOrObjectStatement(){return this.context.curlyParsingType===M.AsObject||this.peekAhead(e=>{let t=e();return!(t.type!==h.Identifier&&t.type!==h.StringLiteral||(t=e(),t.type!==h.Punctuator||":"!==t.value))})?this.parseObjectStatement():this.parseBlock()}parseIdentifier(){let e=this.rawToken;if(e.type!==h.Identifier)return null;let t=this.captureStartMarker();return this.readNextRawToken(),this.finalize({type:i.Identifier,name:e.value,...this.getItemLocation(t)})}parseVariableDeclarator(){let e=this.captureStartMarker(),t=this.parseIdentifier();t||this.throwUnexpectedToken({code:l.IdentifierExpected});let u=null;if(this.matchPunctuator("=")){this.readNextRawToken();let e=this.rawToken;try{u=this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this))}catch{this.throwUnexpectedToken({rawToken:e,code:l.InvalidVariableAssignment})}}return this.finalize({type:i.VariableDeclarator,id:t,init:u,...this.getItemLocation(e)})}parseVariableDeclarators(){let e=[this.parseVariableDeclarator()];for(;this.matchPunctuator(",");)this.readNextRawToken(),e.push(this.parseVariableDeclarator());return e}parseVariableDeclaration(){let e=this.captureStartMarker();this.expectKeyword(t.Var);let u=this.parseVariableDeclarators();return this.consumeSemicolon(),this.finalize({type:i.VariableDeclaration,declarations:u,kind:"var",...this.getItemLocation(e)})}parseEmptyStatement(){let e=this.captureStartMarker();return this.expectPunctuator(";"),this.finalize({type:i.EmptyStatement,...this.getItemLocation(e)})}parseExpressionStatement(){let e=this.captureStartMarker(),t=this.parseExpression();return this.consumeSemicolon(),this.finalize({type:i.ExpressionStatement,expression:t,...this.getItemLocation(e)})}parseIfClause(){return this.withBlockContext(P.IfClause,this.parseStatement.bind(this))}parseIfStatement(){let e=this.captureStartMarker();this.expectKeyword(t.If),this.expectPunctuator("(");let u=this.captureStartMarker(),r=this.parseExpression(),n=this.captureStartMarker();this.expectPunctuator(")"),(r.type===i.AssignmentExpression||r.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,u,n);let s=this.parseIfClause(),a=null;return this.matchKeyword(t.Else)&&(this.readNextRawToken(),a=this.parseIfClause()),this.finalize({type:i.IfStatement,test:r,consequent:s,alternate:a,...this.getItemLocation(e)})}parseWhileStatement(){let e=this.captureStartMarker();this.expectKeyword(t.While),this.expectPunctuator("(");let u=this.captureStartMarker(),r=this.parseExpression(),n=this.captureStartMarker();this.expectPunctuator(")"),(r.type===i.AssignmentExpression||r.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,u,n);let s=this.withBlockContext(P.WhileLoop,this.parseStatement.bind(this));return this.finalize({type:i.WhileStatement,test:r,body:s,...this.getItemLocation(e)})}parseForStatement(){let e=i.ForStatement,r=null,n=null,s=null,a=null,D=null,o=this.captureStartMarker();if(this.expectKeyword(t.For),this.expectPunctuator("("),this.matchKeyword(t.Var)){let n=this.captureStartMarker();this.readNextRawToken();let s=this.parseVariableDeclarators();r=this.finalize({type:i.VariableDeclaration,declarations:s,kind:"var",...this.getItemLocation(n)});let D=this.matchKeyword(t.In),o=this.matchContextualKeyword(u.Of);1===s.length&&(D||o)&&(s[0].init&&this.throwError(l.ForInOfLoopInitializer,n),e=D?i.ForInStatement:i.ForOfStatement,a=r)}else if(!this.matchPunctuator(";")){let n=this.context.isAssignmentTarget,s=this.captureStartMarker();r=this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this));let D=this.matchKeyword(t.In),o=this.matchContextualKeyword(u.Of);D||o?(this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInForIn,s),r.type!==i.Identifier&&this.throwError(l.InvalidLeftHandSideInForIn,s),e=D?i.ForInStatement:i.ForOfStatement,a=r):this.context.isAssignmentTarget=n}e===i.ForStatement?(this.expectPunctuator(";"),n=this.matchPunctuator(";")?null:this.isolateCoverGrammar(this.parseExpression.bind(this)),this.expectPunctuator(";"),s=this.matchPunctuator(")")?null:this.isolateCoverGrammar(this.parseExpression.bind(this))):(this.readNextRawToken(),D=this.parseExpression()),this.expectPunctuator(")");let h=this.withBlockContext(e===i.ForOfStatement?P.ForOfLoop:P.ForLoop,()=>this.isolateCoverGrammar(this.parseStatement.bind(this)));return e===i.ForInStatement||e===i.ForOfStatement?this.finalize({type:e,left:a,right:D,body:h,...this.getItemLocation(o)}):this.finalize({type:e,init:r,test:n,update:s,body:h,...this.getItemLocation(o)})}parseContinueStatement(){let e=this.captureStartMarker();return this.expectKeyword(t.Continue),this.consumeSemicolon(),this.finalize({type:i.ContinueStatement,...this.getItemLocation(e)})}parseBreakStatement(){let e=this.captureStartMarker();return this.expectKeyword(t.Break),this.consumeSemicolon(),this.finalize({type:i.BreakStatement,...this.getItemLocation(e)})}parseReturnStatement(){let e=this.captureStartMarker();this.expectKeyword(t.Return);let u=(this.matchPunctuator(";")||this.matchPunctuator("}")||this.hasLineTerminator||this.rawToken.type===h.EOF)&&this.rawToken.type!==h.StringLiteral&&this.rawToken.type!==h.Template?null:this.parseExpression();return this.consumeSemicolon(),this.finalize({type:i.ReturnStatement,argument:u,...this.getItemLocation(e)})}parseStatement(){switch(this.rawToken.type){case h.BooleanLiteral:case h.NullLiteral:case h.NumericLiteral:case h.StringLiteral:case h.Template:case h.Identifier:return this.parseExpressionStatement();case h.Punctuator:return"{"===this.rawToken.value?this.parseBlockOrObjectStatement():"("===this.rawToken.value?this.parseExpressionStatement():";"===this.rawToken.value?this.parseEmptyStatement():this.parseExpressionStatement();case h.Keyword:switch(this.rawToken.value.toLowerCase()){case t.Break:return this.parseBreakStatement();case t.Continue:return this.parseContinueStatement();case t.For:return this.parseForStatement();case t.Function:return this.parseFunctionDeclaration();case t.If:return this.parseIfStatement();case t.Return:return this.parseReturnStatement();case t.Var:return this.parseVariableDeclaration();case t.While:return this.parseWhileStatement();default:return this.parseExpressionStatement()}default:return this.throwUnexpectedToken({rawToken:this.rawToken})}}parseFormalParameters(){let e=[];if(this.expectPunctuator("("),!this.matchPunctuator(")"))for(;this.rawToken.type!==h.EOF;){let t=this.parseIdentifier();if(t||this.throwUnexpectedToken({rawToken:this.rawToken,code:l.IdentifierExpected}),e.push(t),this.matchPunctuator(")")||(this.expectPunctuator(","),this.matchPunctuator(")")))break}return this.expectPunctuator(")"),e}parseFunctionDeclaration(){(this.context.blockContext&P.Function)===P.Function&&this.throwUnexpectedToken({code:l.NoFunctionInsideFunction}),((this.context.blockContext&P.WhileLoop)===P.WhileLoop||(this.context.blockContext&P.ForOfLoop)===P.ForOfLoop||(this.context.blockContext&P.IfClause)===P.IfClause)&&this.throwUnexpectedToken({code:l.NoFunctionInsideBlock});let e=this.captureStartMarker();this.expectKeyword(t.Function);let u=this.parseIdentifier();u||this.throwUnexpectedToken({code:l.InvalidFunctionIdentifier});let r=this.parseFormalParameters(),n=this.context.blockContext;this.context.blockContext|=P.Function;let s=this.parseBlock();return this.context.blockContext=n,this.finalize({type:i.FunctionDeclaration,id:u,params:r,body:s,...this.getItemLocation(e)})}parseScript(){let e=this.captureStartMarker(),t=this.parseStatements(),u=this.finalize({type:i.Program,body:t,...this.getItemLocation(e)});return this.options.tokens&&(u.tokens=this.tokens),this.options.tolerant&&(u.errors=this.errorHandler.errors),u}parseExportDeclaration(){this.context.blockContext!==P.None&&this.throwUnexpectedToken({code:l.ModuleExportRootOnly});let e=null,u=this.captureStartMarker();return this.expectKeyword(t.Export),this.matchKeyword(t.Var)?e=this.parseVariableDeclaration():this.matchKeyword("function")?e=this.parseFunctionDeclaration():this.throwUnexpectedToken({code:l.InvalidExpression}),this.finalize({type:i.ExportNamedDeclaration,declaration:e,specifiers:[],source:null,...this.getItemLocation(u)})}parseModuleSpecifier(){let e=this.captureStartMarker(),t=this.rawToken;if(t.type===h.StringLiteral)return this.readNextRawToken(),this.finalize({type:i.Literal,value:t.value,raw:this.getSourceValue(t),isString:!0,...this.getItemLocation(e)});this.throwError(l.InvalidModuleUri,e)}parseDefaultSpecifier(){let e=this.captureStartMarker(),t=this.parseIdentifier();return t||this.throwUnexpectedToken({code:l.IdentifierExpected}),this.finalize({type:i.ImportDefaultSpecifier,local:t,...this.getItemLocation(e)})}parseImportDeclaration(){this.context.blockContext!==P.None&&this.throwUnexpectedToken({code:l.ModuleImportRootOnly});let e=this.captureStartMarker();this.expectKeyword(t.Import);let r=this.parseDefaultSpecifier();this.expectContextualKeyword(u.From);let n=this.parseModuleSpecifier();return this.finalize({type:i.ImportDeclaration,specifiers:[r],source:n,...this.getItemLocation(e)})}};function H(e,t,u){return new K(e,t,u).parseScript()}export{d as $,x as B,C as F,p as V,A as Y,i as a,m as f,H as i,t as l,l as o};
5
+ const e={False:"false",Null:"null",True:"true"},t={Break:"break",Continue:"continue",Else:"else",For:"for",Function:"function",If:"if",Import:"import",Export:"export",In:"in",Return:"return",Var:"var",While:"while"},u={From:"from",Of:"of"},i={AssignmentExpression:"AssignmentExpression",ArrayExpression:"ArrayExpression",BlockComment:"BlockComment",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",ContinueStatement:"ContinueStatement",EmptyStatement:"EmptyStatement",ExpressionStatement:"ExpressionStatement",ExportNamedDeclaration:"ExportNamedDeclaration",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",Identifier:"Identifier",IfStatement:"IfStatement",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",LineComment:"LineComment",Literal:"Literal",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",ObjectExpression:"ObjectExpression",Program:"Program",Property:"Property",ReturnStatement:"ReturnStatement",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement"},n=["++","--"],r=["-","+","!","~"],s=["=","/=","*=","%=","+=","-="],a=["||","&&"],o=["|","&",">>","<<",">>>","^","==","!=","<","<=",">",">=","+","-","*","/","%"],D={"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},h={BooleanLiteral:1,EOF:2,Identifier:3,Keyword:4,NullLiteral:5,NumericLiteral:6,Punctuator:7,StringLiteral:8,Template:10},c=["Unknown","Boolean","<end>","Identifier","Keyword","Null","Numeric","Punctuator","String","RegularExpression","Template"],l={InvalidModuleUri:"InvalidModuleUri",ForInOfLoopInitializer:"ForInOfLoopInitializer",IdentifierExpected:"IdentifierExpected",InvalidEscapedReservedWord:"InvalidEscapedReservedWord",InvalidExpression:"InvalidExpression",InvalidFunctionIdentifier:"InvalidFunctionIdentifier",InvalidHexEscapeSequence:"InvalidHexEscapeSequence",InvalidLeftHandSideInAssignment:"InvalidLeftHandSideInAssignment",InvalidLeftHandSideInForIn:"InvalidLeftHandSideInForIn",InvalidTemplateHead:"InvalidTemplateHead",InvalidVariableAssignment:"InvalidVariableAssignment",KeyMustBeString:"KeyMustBeString",NoFunctionInsideBlock:"NoFunctionInsideBlock",NoFunctionInsideFunction:"NoFunctionInsideFunction",ModuleExportRootOnly:"ModuleExportRootOnly",ModuleImportRootOnly:"ModuleImportRootOnly",PunctuatorExpected:"PunctuatorExpected",TemplateOctalLiteral:"TemplateOctalLiteral",UnexpectedBoolean:"UnexpectedBoolean",UnexpectedEndOfScript:"UnexpectedEndOfScript",UnexpectedIdentifier:"UnexpectedIdentifier",UnexpectedKeyword:"UnexpectedKeyword",UnexpectedNull:"UnexpectedNull",UnexpectedNumber:"UnexpectedNumber",UnexpectedPunctuator:"UnexpectedPunctuator",UnexpectedString:"UnexpectedString",UnexpectedTemplate:"UnexpectedTemplate",UnexpectedToken:"UnexpectedToken"},d={[l.InvalidModuleUri]:"Module uri must be a text literal.",[l.ForInOfLoopInitializer]:"for-in loop variable declaration may not have an initializer.",[l.IdentifierExpected]:"'${value}' is an invalid identifier.",[l.InvalidEscapedReservedWord]:"Keyword cannot contain escaped characters.",[l.InvalidExpression]:"Invalid expression.",[l.InvalidFunctionIdentifier]:"'${value}' is an invalid function identifier.",[l.InvalidHexEscapeSequence]:"Invalid hexadecimal escape sequence.",[l.InvalidLeftHandSideInAssignment]:"Invalid left-hand side in assignment.",[l.InvalidLeftHandSideInForIn]:"Invalid left-hand side in for-in.",[l.InvalidTemplateHead]:"Invalid template structure.",[l.InvalidVariableAssignment]:"Invalid variable assignment.",[l.KeyMustBeString]:"Object property keys must be a word starting with a letter.",[l.NoFunctionInsideBlock]:"Functions cannot be declared inside of code blocks.",[l.NoFunctionInsideFunction]:"Functions cannot be declared inside another function.",[l.ModuleExportRootOnly]:"Module exports cannot be declared inside of code blocks.",[l.ModuleImportRootOnly]:"Module import cannot be declared inside of code blocks.",[l.PunctuatorExpected]:"'${value}' expected.",[l.TemplateOctalLiteral]:"Octal literals are not allowed in template literals.",[l.UnexpectedBoolean]:"Unexpected boolean literal.",[l.UnexpectedEndOfScript]:"Unexpected end of Arcade expression.",[l.UnexpectedIdentifier]:"Unexpected identifier.",[l.UnexpectedKeyword]:"Unexpected keyword.",[l.UnexpectedNull]:"Unexpected null literal.",[l.UnexpectedNumber]:"Unexpected number.",[l.UnexpectedPunctuator]:"Unexpected punctuator.",[l.UnexpectedString]:"Unexpected text literal.",[l.UnexpectedTemplate]:"Unexpected quasi '${value}'.",[l.UnexpectedToken]:"Unexpected token '${value}'."};class C extends Error{constructor({code:e,index:t,line:u,column:i,len:n=0,description:r,data:s}){super(r??e),this.declaredRootClass="esri.arcade.lib.diagnostic",this.name="ParsingError",this.code=e,this.index=t,this.line=u,this.column=i,this.len=n,this.data=s,this.description=r,this.range={start:{line:u,column:i-1},end:{line:u,column:i+n}},Error.captureStackTrace?.(this,C)}}function F(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.Program}function p(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.BlockStatement}function E(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.BlockComment}function A(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.EmptyStatement}function m(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.VariableDeclaration}function x(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.Identifier}function B(e){return!!e&&"object"==typeof e&&"type"in e&&e.type===i.VariableDeclarator}function f(e,t){return t.loc.end.line===e.loc.start.line&&t.loc.end.column<=e.loc.start.column}function k(e,t){return e.range[0]>=t.range[0]&&e.range[1]<=t.range[1]}class g{constructor(){this.comments=[],this._nodeStack=[],this._newComments=[]}insertInnerComments(e){if(!p(e)||0!==e.body.length)return;const t=[];for(let u=this._newComments.length-1;u>=0;u--){const i=this._newComments[u];e.range[1]>=i.range[0]&&(t.unshift(i),this._newComments.splice(u,1))}t.length&&(e.innerComments=t)}attachTrailingComments(e){const t=this._nodeStack.at(-1);if(!t)return;if(p(e)&&k(t,e))for(let i=this._newComments.length-1;i>=0;i--){const u=this._newComments[i];k(u,e)&&(t.trailingComments=[...t.trailingComments??[],u],this._newComments.splice(i,1))}let u=[];if(this._newComments.length>0)for(let i=this._newComments.length-1;i>=0;i--){const n=this._newComments[i];f(n,t)?(t.trailingComments=[...t.trailingComments??[],n],this._newComments.splice(i,1)):f(n,e)&&(u.unshift(n),this._newComments.splice(i,1))}if(t.trailingComments){f(t.trailingComments[0],e)&&(u=[...u,...t.trailingComments],delete t.trailingComments)}u.length>0&&(e.trailingComments=u)}attachLeadingComments(e){let t;for(;this._nodeStack.length>0;){const u=this._nodeStack[this._nodeStack.length-1];if(!(e.range[0]<=u.range[0]))break;t=u,this._nodeStack.pop()}const u=[],i=[];if(null!=t){if(!t.leadingComments)return;for(let n=t.leadingComments.length-1;n>=0;n--){const r=t.leadingComments[n];e.range[0]>=r.range[1]?(u.unshift(r),t.leadingComments.splice(n,1)):B(e)&&!E(r)&&(i.unshift(r),t.leadingComments.splice(n,1))}return 0===t.leadingComments.length&&delete t.leadingComments,u.length&&(e.leadingComments=u),void(i.length&&(e.trailingComments=[...i,...e.trailingComments??[]]))}for(let n=this._newComments.length-1;n>=0;n--){const t=this._newComments[n];e.range[0]>=t.range[0]&&(u.unshift(t),this._newComments.splice(n,1))}u.length&&(e.leadingComments=u)}attachComments(e){if(F(e)&&e.body.length>0){const t=this._nodeStack.at(-1);return t?(t.trailingComments=[...t.trailingComments??[],...this._newComments],this._newComments.length=0,void this._nodeStack.pop()):(e.trailingComments=[...this._newComments],void(this._newComments.length=0))}this.attachTrailingComments(e),this.attachLeadingComments(e),this.insertInnerComments(e),this._nodeStack.push(e)}collectComment(e){this.comments.push(e),this._newComments.push(e)}}const S=/\$\{(.*?)\}/gu;function w(e,t){const u=d[e];return t?u.replace(S,(e,u)=>t[u]?.toString()??""):u}class y{constructor(e=!1){this.tolerant=e,this.errors=[]}recordError(e){this.errors.push(e)}tolerate(e){if(!this.tolerant)throw e;this.recordError(e)}throwError(e){throw e.description??=w(e.code,e.data),new C(e)}tolerateError(e){e.description??=w(e.code,e.data);const t=new C(e);if(!this.tolerant)throw t;this.recordError(t)}}function I(e,t){if(!e)throw new Error(`ASSERT: ${t}`)}const T={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7C6\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB67\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDEC0-\uDEEB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/u,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05EF-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u07FD\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D3-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u09FE\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CD0-\u1CD2\u1CD4-\u1CFA\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7C6\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB67\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD27\uDD30-\uDD39\uDF00-\uDF1C\uDF27\uDF30-\uDF50\uDFE0-\uDFF6]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD44-\uDD46\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDC9-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3B-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5E\uDC5F\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDC00-\uDC3A\uDCA0-\uDCE9\uDCFF\uDDA0-\uDDA7\uDDAA-\uDDD7\uDDDA-\uDDE1\uDDE3\uDDE4\uDE00-\uDE3E\uDE47\uDE50-\uDE99\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD8E\uDD90\uDD91\uDD93-\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF4F-\uDF87\uDF8F-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDD00-\uDD2C\uDD30-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4B\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/u},b={fromCodePoint:e=>e<65536?String.fromCharCode(e):String.fromCharCode(55296+(e-65536>>10))+String.fromCharCode(56320+(e-65536&1023)),isWhiteSpace:e=>32===e||9===e||11===e||12===e||160===e||e>=5760&&[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(e),isLineTerminator:e=>10===e||13===e||8232===e||8233===e,isIdentifierStart:e=>36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||92===e||e>=128&&T.NonAsciiIdentifierStart.test(b.fromCodePoint(e)),isIdentifierPart:e=>36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||92===e||e>=128&&T.NonAsciiIdentifierPart.test(b.fromCodePoint(e)),isDecimalDigit:e=>e>=48&&e<=57,isHexDigit:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,isOctalDigit:e=>e>=48&&e<=55};function L(e){return"0123456789abcdef".indexOf(e.toLowerCase())}function v(e){return"01234567".indexOf(e)}const N=[[],[],[]];n.forEach(e=>N[e.length-1]?.push(e)),r.forEach(e=>N[e.length-1]?.push(e)),a.forEach(e=>N[e.length-1]?.push(e)),s.forEach(e=>N[e.length-1]?.push(e)),o.forEach(e=>N[e.length-1]?.push(e));class U{constructor(e,t){this.source=e,this.errorHandler=t,this._length=e.length,this.index=0,this.lineNumber=1,this.lineStart=0,this.curlyStack=[]}saveState(){return{index:this.index,lineNumber:this.lineNumber,lineStart:this.lineStart,curlyStack:this.curlyStack.slice()}}restoreState(e){this.index=e.index,this.lineNumber=e.lineNumber,this.lineStart=e.lineStart,this.curlyStack=e.curlyStack}eof(){return this.index>=this._length}throwUnexpectedToken(e=l.UnexpectedToken){this.errorHandler.throwError({code:e,index:this.index,line:this.lineNumber,column:this.index-this.lineStart+1,data:{value:this.source.charAt(this.index)}})}tolerateUnexpectedToken(e=l.UnexpectedToken){this.errorHandler.tolerateError({code:e,index:this.index,line:this.lineNumber,column:this.index-this.lineStart+1})}skipSingleLineComment(e){const t=[],u=this.index-e,i={start:{line:this.lineNumber,column:this.index-this.lineStart-e},end:{line:0,column:0}};for(;!this.eof();){const n=this.source.charCodeAt(this.index);if(this.index+=1,b.isLineTerminator(n)){i.end={line:this.lineNumber,column:this.index-this.lineStart-1};const r={multiLine:!1,start:u+e,end:this.index-1,range:[u,this.index-1],loc:i};return t.push(r),13===n&&10===this.source.charCodeAt(this.index)&&(this.index+=1),this.lineNumber+=1,this.lineStart=this.index,t}}i.end={line:this.lineNumber,column:this.index-this.lineStart};const n={multiLine:!1,start:u+e,end:this.index,range:[u,this.index],loc:i};return t.push(n),t}skipMultiLineComment(){const e=[],t=this.index-2,u={start:{line:this.lineNumber,column:this.index-this.lineStart-2},end:{line:0,column:0}};for(;!this.eof();){const i=this.source.charCodeAt(this.index);if(b.isLineTerminator(i))13===i&&10===this.source.charCodeAt(this.index+1)&&(this.index+=1),this.lineNumber+=1,this.index+=1,this.lineStart=this.index;else if(42===i){if(47===this.source.charCodeAt(this.index+1)){this.index+=2,u.end={line:this.lineNumber,column:this.index-this.lineStart};const i={multiLine:!0,start:t+2,end:this.index-2,range:[t,this.index],loc:u};return e.push(i),e}this.index+=1}else this.index+=1}u.end={line:this.lineNumber,column:this.index-this.lineStart};const i={multiLine:!0,start:t+2,end:this.index,range:[t,this.index],loc:u};return e.push(i),this.tolerateUnexpectedToken(),e}scanComments(){let e=[];for(;!this.eof();){let t=this.source.charCodeAt(this.index);if(b.isWhiteSpace(t))this.index+=1;else if(b.isLineTerminator(t))this.index+=1,13===t&&10===this.source.charCodeAt(this.index)&&(this.index+=1),this.lineNumber+=1,this.lineStart=this.index;else{if(47!==t)break;if(t=this.source.charCodeAt(this.index+1),47===t){this.index+=2;const t=this.skipSingleLineComment(2);e=[...e,...t]}else{if(42!==t)break;{this.index+=2;const t=this.skipMultiLineComment();e=[...e,...t]}}}}return e}isKeyword(e){switch((e=e.toLowerCase()).length){case 2:return e===t.If||e===t.In;case 3:return e===t.Var||e===t.For;case 4:return e===t.Else;case 5:return e===t.Break||e===t.While;case 6:return e===t.Return||e===t.Import||e===t.Export;case 8:return e===t.Function||e===t.Continue;default:return!1}}codePointAt(e){let t=this.source.charCodeAt(e);if(t>=55296&&t<=56319){const u=this.source.charCodeAt(e+1);u>=56320&&u<=57343&&(t=1024*(t-55296)+u-56320+65536)}return t}scanHexEscape(e){const t="u"===e?4:2;let u=0;for(let i=0;i<t;i++){if(this.eof()||!b.isHexDigit(this.source.charCodeAt(this.index)))return null;u=16*u+L(this.source[this.index]??""),this.index+=1}return String.fromCharCode(u)}scanUnicodeCodePointEscape(){let e=this.source[this.index],t=0;for("}"===e&&this.throwUnexpectedToken();!this.eof()&&(e=this.source[this.index]??"",this.index+=1,b.isHexDigit(e.charCodeAt(0)));)t=16*t+L(e);return(t>1114111||"}"!==e)&&this.throwUnexpectedToken(),b.fromCodePoint(t)}getIdentifier(){const e=this.index;for(this.index+=1;!this.eof();){const t=this.source.charCodeAt(this.index);if(92===t)return this.index=e,this.getComplexIdentifier();if(t>=55296&&t<57343)return this.index=e,this.getComplexIdentifier();if(!b.isIdentifierPart(t))break;this.index+=1}return this.source.slice(e,this.index)}getComplexIdentifier(){let e,t=this.codePointAt(this.index),u=b.fromCodePoint(t);for(this.index+=u.length,92===t&&(117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),this.index+=1,"{"===this.source[this.index]?(this.index+=1,e=this.scanUnicodeCodePointEscape()):(e=this.scanHexEscape("u"),(null===e||"\\"===e||!b.isIdentifierStart(e.charCodeAt(0)))&&this.throwUnexpectedToken()),u=e);!this.eof()&&(t=this.codePointAt(this.index),b.isIdentifierPart(t));)e=b.fromCodePoint(t),u+=e,this.index+=e.length,92===t&&(u=u.substring(0,u.length-1),117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),this.index+=1,"{"===this.source[this.index]?(this.index+=1,e=this.scanUnicodeCodePointEscape()):(e=this.scanHexEscape("u"),(null===e||"\\"===e||!b.isIdentifierPart(e.charCodeAt(0)))&&this.throwUnexpectedToken()),u+=e);return u}octalToDecimal(e){let t="0"!==e,u=v(e);return!this.eof()&&b.isOctalDigit(this.source.charCodeAt(this.index))&&(t=!0,u=8*u+v(this.source[this.index]??""),this.index+=1,"0123".includes(e)&&!this.eof()&&b.isOctalDigit(this.source.charCodeAt(this.index))&&(u=8*u+v(this.source[this.index]??""),this.index+=1)),{code:u,octal:t}}scanIdentifier(){let t;const u=this.index,i=92===this.source.charCodeAt(u)?this.getComplexIdentifier():this.getIdentifier();if(t=1===i.length?h.Identifier:this.isKeyword(i)?h.Keyword:i.toLowerCase()===e.Null?h.NullLiteral:i.toLowerCase()===e.True||i.toLowerCase()===e.False?h.BooleanLiteral:h.Identifier,t!==h.Identifier&&u+i.length!==this.index){const e=this.index;this.index=u,this.tolerateUnexpectedToken(l.InvalidEscapedReservedWord),this.index=e}return{type:t,value:i,lineNumber:this.lineNumber,lineStart:this.lineStart,start:u,end:this.index}}scanPunctuator(){const e=this.index;let t=this.source[this.index]??"";switch(t){case"(":case"{":"{"===t&&this.curlyStack.push("{"),this.index+=1;break;case".":case")":case";":case",":case"[":case"]":case":":case"?":case"~":this.index+=1;break;case"}":this.index+=1,this.curlyStack.pop();break;default:for(let e=N.length;e>0;e--)if(t=this.source.substring(this.index,this.index+e),N[e-1]?.includes(t)){this.index+=e;break}}return this.index===e&&this.throwUnexpectedToken(),{type:h.Punctuator,value:t,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanHexLiteral(e){let t="";for(;!this.eof()&&b.isHexDigit(this.source.charCodeAt(this.index));)t+=this.source[this.index],this.index+=1;return 0===t.length&&this.throwUnexpectedToken(),b.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:h.NumericLiteral,value:Number.parseInt(`0x${t}`,16),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanBinaryLiteral(e){let t="";for(;!this.eof();){const e=this.source[this.index];if("0"!==e&&"1"!==e)break;t+=this.source[this.index],this.index+=1}if(0===t.length&&this.throwUnexpectedToken(),!this.eof()){const e=this.source.charCodeAt(this.index);(b.isIdentifierStart(e)||b.isDecimalDigit(e))&&this.throwUnexpectedToken()}return{type:h.NumericLiteral,value:Number.parseInt(t,2),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanOctalLiteral(e,t){let u="",i=!1;for(b.isOctalDigit(e.charCodeAt(0))&&(i=!0,u=`0${this.source[this.index]}`),this.index+=1;!this.eof()&&b.isOctalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;return!i&&0===u.length&&this.throwUnexpectedToken(),(b.isIdentifierStart(this.source.charCodeAt(this.index))||b.isDecimalDigit(this.source.charCodeAt(this.index)))&&this.throwUnexpectedToken(),{type:h.NumericLiteral,value:Number.parseInt(u,8),lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}}scanNumericLiteral(){const e=this.index;let t=this.source[e]??"";I(b.isDecimalDigit(t.charCodeAt(0))||"."===t,"Numeric literal must start with a decimal digit or a decimal point");let u="";if("."!==t){if(u=this.source[this.index]??"",this.index+=1,t=this.source[this.index]??"","0"===u){if("x"===t||"X"===t)return this.index+=1,this.scanHexLiteral(e);if("b"===t||"B"===t)return this.index+=1,this.scanBinaryLiteral(e);if("o"===t||"O"===t)return this.scanOctalLiteral(t,e)}for(;b.isDecimalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;t=this.source[this.index]??""}if("."===t){for(u+=this.source[this.index],this.index+=1;b.isDecimalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;t=this.source[this.index]??""}if("e"===t||"E"===t)if(u+=this.source[this.index],this.index+=1,t=this.source[this.index]??"",("+"===t||"-"===t)&&(u+=this.source[this.index],this.index+=1),b.isDecimalDigit(this.source.charCodeAt(this.index)))for(;b.isDecimalDigit(this.source.charCodeAt(this.index));)u+=this.source[this.index],this.index+=1;else this.throwUnexpectedToken();return b.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:h.NumericLiteral,value:Number.parseFloat(u),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanStringLiteral(){const e=this.index;let t=this.source[e];I("'"===t||'"'===t,"String literal must starts with a quote"),this.index+=1;let u=!1,i="";for(;!this.eof();){let e=this.source[this.index]??"";if(this.index+=1,e===t){t="";break}if("\\"===e)if(e=this.source[this.index]??"",this.index+=1,e&&b.isLineTerminator(e.charCodeAt(0)))this.lineNumber+=1,"\r"===e&&"\n"===this.source[this.index]&&(this.index+=1),this.lineStart=this.index;else switch(e){case"u":if("{"===this.source[this.index])this.index+=1,i+=this.scanUnicodeCodePointEscape();else{const t=this.scanHexEscape(e);null===t&&this.throwUnexpectedToken(),i+=t}break;case"x":{const t=this.scanHexEscape(e);null===t&&this.throwUnexpectedToken(l.InvalidHexEscapeSequence),i+=t;break}case"n":i+="\n";break;case"r":i+="\r";break;case"t":i+="\t";break;case"b":i+="\b";break;case"f":i+="\f";break;case"v":i+="\v";break;case"8":case"9":i+=e,this.tolerateUnexpectedToken();break;default:if(e&&b.isOctalDigit(e.charCodeAt(0))){const t=this.octalToDecimal(e);u=t.octal||u,i+=String.fromCharCode(t.code)}else i+=e}else{if(b.isLineTerminator(e.charCodeAt(0)))break;i+=e}}return""!==t&&(this.index=e,this.throwUnexpectedToken()),{type:h.StringLiteral,value:i,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}}scanTemplate(){let e="",t=!1;const u=this.index,i="`"===this.source[u];let n=!1,r=2;for(this.index+=1;!this.eof();){let u=this.source[this.index]??"";if(this.index+=1,"`"===u){r=1,n=!0,t=!0;break}if("$"!==u)if("\\"!==u)b.isLineTerminator(u.charCodeAt(0))?(this.lineNumber+=1,"\r"===u&&"\n"===this.source[this.index]&&(this.index+=1),this.lineStart=this.index,e+="\n"):e+=u;else if(u=this.source[this.index]??"",this.index+=1,b.isLineTerminator(u.charCodeAt(0)))this.lineNumber+=1,"\r"===u&&"\n"===this.source[this.index]&&(this.index+=1),this.lineStart=this.index;else switch(u){case"n":e+="\n";break;case"r":e+="\r";break;case"t":e+="\t";break;case"u":if("{"===this.source[this.index])this.index+=1,e+=this.scanUnicodeCodePointEscape();else{const t=this.index,i=this.scanHexEscape(u);null!==i?e+=i:(this.index=t,e+=u)}break;case"x":{const t=this.scanHexEscape(u);null===t&&this.throwUnexpectedToken(l.InvalidHexEscapeSequence),e+=t;break}case"b":e+="\b";break;case"f":e+="\f";break;case"v":e+="\v";break;default:"0"===u?(b.isDecimalDigit(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(l.TemplateOctalLiteral),e+="\0"):b.isOctalDigit(u.charCodeAt(0))?this.throwUnexpectedToken(l.TemplateOctalLiteral):e+=u}else{if("{"===this.source[this.index]){this.curlyStack.push("${"),this.index+=1,t=!0;break}e+=u}}return t||this.throwUnexpectedToken(),i||this.curlyStack.pop(),{type:h.Template,value:this.source.slice(u+1,this.index-r),cooked:e,head:i,tail:n,lineNumber:this.lineNumber,lineStart:this.lineStart,start:u,end:this.index}}lex(){if(this.eof())return{type:h.EOF,value:"",lineNumber:this.lineNumber,lineStart:this.lineStart,start:this.index,end:this.index};const e=this.source.charCodeAt(this.index);return b.isIdentifierStart(e)?this.scanIdentifier():40===e||41===e||59===e?this.scanPunctuator():39===e||34===e?this.scanStringLiteral():46===e?b.isDecimalDigit(this.source.charCodeAt(this.index+1))?this.scanNumericLiteral():this.scanPunctuator():b.isDecimalDigit(e)?this.scanNumericLiteral():96===e||125===e&&"${"===this.curlyStack[this.curlyStack.length-1]?this.scanTemplate():e>=55296&&e<57343&&b.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()}}const P={None:0,Function:1,IfClause:2,ForLoop:4,ForOfLoop:8,WhileLoop:16},M={AsObject:0,Automatic:1};function O(e,t=0){let u=e.start-e.lineStart,i=e.lineNumber;return u<0&&(u+=t,i-=1),{index:e.start,line:i,column:u}}function R(e){return[{index:e.range[0],...e.loc.start},{index:e.range[1],...e.loc.end}]}function z(e){return e in D?D[e]:0}class K{constructor(e,t={},u){this.delegate=u,this.hasLineTerminator=!1,this.options={tokens:"boolean"==typeof t.tokens&&t.tokens,comments:"boolean"==typeof t.comments&&t.comments,tolerant:"boolean"==typeof t.tolerant&&t.tolerant},this.options.comments&&(this.commentHandler=new g),this.errorHandler=new y(this.options.tolerant),this.scanner=new U(e,this.errorHandler),this.context={isAssignmentTarget:!1,blockContext:P.None,curlyParsingType:M.AsObject},this.rawToken={type:h.EOF,value:"",lineNumber:this.scanner.lineNumber,lineStart:0,start:0,end:0},this.tokens=[],this.startMarker={index:0,line:this.scanner.lineNumber,column:0},this.endMarker={index:0,line:this.scanner.lineNumber,column:0},this.readNextRawToken(),this.endMarker={index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}throwIfInvalidType(e,t,{validTypes:u,invalidTypes:i}){u?.some(t=>e.type===t)||i?.some(t=>e.type===t)&&this.throwError(l.InvalidExpression,t)}throwError(e,t,u=this.endMarker){const{index:i,line:n,column:r}=t,s=u.index-i-1;this.errorHandler.throwError({code:e,index:i,line:n,column:r+1,len:s})}tolerateError(e,t){throw new Error("######################################### !!!")}unexpectedTokenError(e={}){const{rawToken:t}=e;let u,{code:i,data:n}=e;if(t){if(!i)switch(t.type){case h.EOF:i=l.UnexpectedEndOfScript;break;case h.Identifier:i=l.UnexpectedIdentifier;break;case h.NumericLiteral:i=l.UnexpectedNumber;break;case h.StringLiteral:i=l.UnexpectedString;break;case h.Template:i=l.UnexpectedTemplate}u=t.value.toString()}else u="ILLEGAL";i??=l.UnexpectedToken,n??={value:u};const r=w(i,n);if(t){const e=t.start,u=t.lineNumber,s=t.start-t.lineStart+1;return new C({code:i,index:e,line:u,column:s,len:t.end-t.start-1,data:n,description:r})}const{index:s,line:a}=this.endMarker;return new C({code:i,index:s,line:a,column:this.endMarker.column+1,data:n,description:r})}throwUnexpectedToken(e={}){throw e.rawToken??=this.rawToken,this.unexpectedTokenError(e)}collectComments(e){const{commentHandler:t}=this;!t||!e.length||e.forEach(e=>{const u={type:e.multiLine?i.BlockComment:i.LineComment,value:this.getSourceValue(e),range:e.range,loc:e.loc};t.collectComment(u)})}peekAhead(e){const t=()=>(this.scanner.scanComments(),this.scanner.lex()),u=this.scanner.saveState(),i=e.call(this,t);return this.scanner.restoreState(u),i}getSourceValue(e){return this.scanner.source.slice(e.start,e.end)}convertToToken(e){return{type:c[e.type],value:this.getSourceValue(e),range:[e.start,e.end],loc:{start:{line:this.startMarker.line,column:this.startMarker.column},end:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}}}readNextRawToken(){this.endMarker.index=this.scanner.index,this.endMarker.line=this.scanner.lineNumber,this.endMarker.column=this.scanner.index-this.scanner.lineStart;const e=this.rawToken;this.collectComments(this.scanner.scanComments()),this.scanner.index!==this.startMarker.index&&(this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart),this.rawToken=this.scanner.lex(),this.hasLineTerminator=e.lineNumber!==this.rawToken.lineNumber,this.options.tokens&&this.rawToken.type!==h.EOF&&this.tokens.push(this.convertToToken(this.rawToken))}captureStartMarker(){return{index:this.startMarker.index,line:this.startMarker.line,column:this.startMarker.column}}getItemLocation(e){return{range:[e.index,this.endMarker.index],loc:{start:{line:e.line,column:e.column},end:{line:this.endMarker.line,column:this.endMarker.column}}}}finalize(e){return(this.delegate??this.commentHandler)&&(this.commentHandler?.attachComments(e),this.delegate?.(e)),e}expectPunctuator(e){const t=this.rawToken;this.matchPunctuator(e)?this.readNextRawToken():this.throwUnexpectedToken({rawToken:t,code:l.PunctuatorExpected,data:{value:e}})}expectKeyword(e){this.rawToken.type!==h.Keyword||this.rawToken.value.toLowerCase()!==e.toString()?this.throwUnexpectedToken({rawToken:this.rawToken}):this.readNextRawToken()}expectContextualKeyword(e){this.rawToken.type!==h.Identifier||this.rawToken.value.toLowerCase()!==e?this.throwUnexpectedToken({rawToken:this.rawToken}):this.readNextRawToken()}matchKeyword(e){return this.rawToken.type===h.Keyword&&this.rawToken.value.toLowerCase()===e}matchContextualKeyword(e){return this.rawToken.type===h.Identifier&&this.rawToken.value===e}matchPunctuator(e){return this.rawToken.type===h.Punctuator&&this.rawToken.value===e}getMatchingPunctuator(e){if("string"==typeof e&&(e=e.split("")),this.rawToken.type===h.Punctuator&&e.length)return e.find(this.matchPunctuator.bind(this))}isolateCoverGrammar(e){const t=this.context.isAssignmentTarget;this.context.isAssignmentTarget=!0;const u=e.call(this);return this.context.isAssignmentTarget=t,u}inheritCoverGrammar(e){const t=this.context.isAssignmentTarget;this.context.isAssignmentTarget=!0;const u=e.call(this);return this.context.isAssignmentTarget&&=t,u}withBlockContext(e,t){const u=this.context.blockContext;this.context.blockContext|=e;const i=this.context.curlyParsingType;this.context.curlyParsingType=M.Automatic;const n=t.call(this);return this.context.blockContext=u,this.context.curlyParsingType=i,n}consumeSemicolon(){if(this.matchPunctuator(";"))this.readNextRawToken();else if(!this.hasLineTerminator){if(this.rawToken.type===h.EOF||this.matchPunctuator("}"))return this.endMarker.index=this.startMarker.index,this.endMarker.line=this.startMarker.line,void(this.endMarker.column=this.startMarker.column);this.throwUnexpectedToken({rawToken:this.rawToken})}}parsePrimaryExpression(){const t=this.captureStartMarker(),u=this.rawToken;switch(u.type){case h.Identifier:return this.readNextRawToken(),this.finalize({type:i.Identifier,name:u.value,...this.getItemLocation(t)});case h.NumericLiteral:case h.StringLiteral:return this.context.isAssignmentTarget=!1,this.readNextRawToken(),this.finalize({type:i.Literal,value:u.value,raw:this.getSourceValue(u),isString:"string"==typeof u.value,...this.getItemLocation(t)});case h.BooleanLiteral:return this.context.isAssignmentTarget=!1,this.readNextRawToken(),this.finalize({type:i.Literal,value:u.value.toLowerCase()===e.True,raw:this.getSourceValue(u),isString:!1,...this.getItemLocation(t)});case h.NullLiteral:return this.context.isAssignmentTarget=!1,this.readNextRawToken(),this.finalize({type:i.Literal,value:null,raw:this.getSourceValue(u),isString:!1,...this.getItemLocation(t)});case h.Template:return this.parseTemplateLiteral();case h.Punctuator:switch(u.value){case"(":return this.inheritCoverGrammar(this.parseGroupExpression.bind(this));case"[":return this.inheritCoverGrammar(this.parseArrayInitializer.bind(this));case"{":return this.inheritCoverGrammar(this.parseObjectExpression.bind(this));default:return this.throwUnexpectedToken({rawToken:this.rawToken})}case h.Keyword:return this.context.isAssignmentTarget=!1,this.throwUnexpectedToken({rawToken:this.rawToken});default:return this.throwUnexpectedToken({rawToken:this.rawToken})}}parseArrayInitializer(){const e=this.captureStartMarker();this.expectPunctuator("[");const t=[];for(;!this.matchPunctuator("]");){const e=this.captureStartMarker();this.matchPunctuator(",")?(this.readNextRawToken(),this.throwError(l.InvalidExpression,e)):(t.push(this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this))),this.matchPunctuator("]")||this.expectPunctuator(","))}return this.expectPunctuator("]"),this.finalize({type:i.ArrayExpression,elements:t,...this.getItemLocation(e)})}parseObjectPropertyKey(){const e=this.captureStartMarker(),t=this.rawToken;switch(t.type){case h.StringLiteral:return this.readNextRawToken(),this.finalize({type:i.Literal,value:t.value,raw:this.getSourceValue(t),isString:!0,...this.getItemLocation(e)});case h.Identifier:case h.BooleanLiteral:case h.NullLiteral:case h.Keyword:return this.readNextRawToken(),this.finalize({type:i.Identifier,name:t.value,...this.getItemLocation(e)});default:this.throwError(l.KeyMustBeString,e)}}parseObjectProperty(){const e=this.rawToken,t=this.captureStartMarker(),u=this.parseObjectPropertyKey();let n=!1,r=null;return this.matchPunctuator(":")?(this.readNextRawToken(),r=this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this))):e.type===h.Identifier?(n=!0,r=this.finalize({type:i.Identifier,name:e.value,...this.getItemLocation(t)})):this.throwUnexpectedToken({rawToken:this.rawToken}),this.finalize({type:i.Property,kind:"init",key:u,value:r,shorthand:n,...this.getItemLocation(t)})}parseObjectExpression(){const e=this.captureStartMarker();this.expectPunctuator("{");const t=[];for(;!this.matchPunctuator("}");)t.push(this.parseObjectProperty()),this.matchPunctuator("}")||this.expectPunctuator(",");return this.expectPunctuator("}"),this.finalize({type:i.ObjectExpression,properties:t,...this.getItemLocation(e)})}parseTemplateElement(e=!1){const t=this.rawToken;t.type!==h.Template&&this.throwUnexpectedToken({rawToken:t}),e&&!t.head&&this.throwUnexpectedToken({code:l.InvalidTemplateHead,rawToken:t});const u=this.captureStartMarker();this.readNextRawToken();const{value:n,cooked:r,tail:s}=t,a=this.finalize({type:i.TemplateElement,value:{raw:n,cooked:r},tail:s,...this.getItemLocation(u)});return a.loc.start.column+=1,a.loc.end.column-=s?1:2,a}parseTemplateLiteral(){const e=this.captureStartMarker(),t=[],u=[];let n=this.parseTemplateElement(!0);for(u.push(n);!n.tail;)t.push(this.parseExpression()),n=this.parseTemplateElement(),u.push(n);return this.finalize({type:i.TemplateLiteral,quasis:u,expressions:t,...this.getItemLocation(e)})}parseGroupExpression(){this.expectPunctuator("(");const e=this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this));return this.expectPunctuator(")"),e}parseArguments(){this.expectPunctuator("(");const e=[];if(!this.matchPunctuator(")"))for(;;){const t=this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this));if(e.push(t),this.matchPunctuator(")")||(this.expectPunctuator(","),this.matchPunctuator(")")))break}return this.expectPunctuator(")"),e}parseMemberName(){const e=this.rawToken,t=this.captureStartMarker();return this.readNextRawToken(),e.type!==h.NullLiteral&&e.type!==h.Identifier&&e.type!==h.Keyword&&e.type!==h.BooleanLiteral&&this.throwUnexpectedToken({rawToken:e}),this.finalize({type:i.Identifier,name:e.value,...this.getItemLocation(t)})}parseLeftHandSideExpression(){const e=this.captureStartMarker();let t=this.inheritCoverGrammar(this.parsePrimaryExpression.bind(this));const u=this.captureStartMarker();let n;for(;n=this.getMatchingPunctuator("([.");)switch(n){case"(":{this.context.isAssignmentTarget=!1,t.type!==i.Identifier&&t.type!==i.MemberExpression&&this.throwError(l.IdentifierExpected,e,u);const n=this.parseArguments();t=this.finalize({type:i.CallExpression,callee:t,arguments:n,...this.getItemLocation(e)});continue}case"[":{this.context.isAssignmentTarget=!0,this.expectPunctuator("[");const u=this.isolateCoverGrammar(()=>this.parseExpression());this.expectPunctuator("]"),t=this.finalize({type:i.MemberExpression,computed:!0,object:t,property:u,...this.getItemLocation(e)});continue}case".":{this.context.isAssignmentTarget=!0,this.expectPunctuator(".");const u=this.parseMemberName();t=this.finalize({type:i.MemberExpression,computed:!1,object:t,property:u,...this.getItemLocation(e)});continue}}return t}parseUpdateExpression(){const e=this.captureStartMarker();let t=this.getMatchingPunctuator(n);if(t){this.readNextRawToken();const u=this.captureStartMarker(),n=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this));return n.type!==i.Identifier&&n.type!==i.MemberExpression&&n.type!==i.CallExpression&&this.throwError(l.InvalidExpression,u),this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInAssignment,e),this.context.isAssignmentTarget=!1,this.finalize({type:i.UpdateExpression,operator:t,argument:n,prefix:!0,...this.getItemLocation(e)})}const u=this.captureStartMarker(),r=this.inheritCoverGrammar(this.parseLeftHandSideExpression.bind(this)),s=this.captureStartMarker();return this.hasLineTerminator||(t=this.getMatchingPunctuator(n),!t)?r:(r.type!==i.Identifier&&r.type!==i.MemberExpression&&this.throwError(l.InvalidExpression,u,s),this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInAssignment,e),this.readNextRawToken(),this.context.isAssignmentTarget=!1,this.finalize({type:i.UpdateExpression,operator:t,argument:r,prefix:!1,...this.getItemLocation(e)}))}parseUnaryExpression(){const e=this.getMatchingPunctuator(r);if(e){const t=this.captureStartMarker();this.readNextRawToken();const u=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this));return this.context.isAssignmentTarget=!1,this.finalize({type:i.UnaryExpression,operator:e,argument:u,prefix:!0,...this.getItemLocation(t)})}return this.parseUpdateExpression()}parseBinaryExpression(){const e=this.rawToken;let t=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this));if(this.rawToken.type!==h.Punctuator)return t;const u=this.rawToken.value;let i=z(u);if(0===i)return t;this.readNextRawToken(),this.context.isAssignmentTarget=!1;const n=[e,this.rawToken];let r=t,s=this.inheritCoverGrammar(this.parseUnaryExpression.bind(this));const a=[r,u,s],o=[i];for(;this.rawToken.type===h.Punctuator&&(i=z(this.rawToken.value))>0;){for(;a.length>2&&i<=o[o.length-1];){s=a.pop();const e=a.pop();o.pop(),r=a.pop(),n.pop();const t=n[n.length-1],u=O(t,t.lineStart);a.push(this.finalize(this.createBinaryOrLogicalExpression(u,e,r,s)))}a.push(this.rawToken.value),o.push(i),n.push(this.rawToken),this.readNextRawToken(),a.push(this.inheritCoverGrammar(this.parseUnaryExpression.bind(this)))}let D=a.length-1;t=a[D];let c=n.pop();for(;D>1;){const e=n.pop();if(!e)break;const u=c?.lineStart,i=O(e,u),r=a[D-1];t=this.finalize(this.createBinaryOrLogicalExpression(i,r,a[D-2],t)),D-=2,c=e}return t}createBinaryOrLogicalExpression(e,t,u,n){const r=a.includes(t)?i.LogicalExpression:i.BinaryExpression;return r===i.BinaryExpression||((u.type===i.AssignmentExpression||u.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,...R(u)),(n.type===i.AssignmentExpression||n.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,...R(u))),{type:r,operator:t,left:u,right:n,...this.getItemLocation(e)}}parseAssignmentExpression(){const e=this.captureStartMarker(),t=this.inheritCoverGrammar(this.parseBinaryExpression.bind(this)),u=this.captureStartMarker(),n=this.getMatchingPunctuator(s);if(!n)return t;t.type!==i.Identifier&&t.type!==i.MemberExpression&&this.throwError(l.InvalidExpression,e,u),this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInAssignment,e),this.matchPunctuator("=")||(this.context.isAssignmentTarget=!1),this.readNextRawToken();const r=this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this));return this.finalize({type:i.AssignmentExpression,left:t,operator:n,right:r,...this.getItemLocation(e)})}parseExpression(){return this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this))}parseStatements(e){const t=[];for(;this.rawToken.type!==h.EOF&&!this.matchPunctuator(e);){const e=this.parseStatementListItem();A(e)||t.push(e)}return t}parseStatementListItem(){return this.context.isAssignmentTarget=!0,this.matchKeyword(t.Function)?this.parseFunctionDeclaration():this.matchKeyword(t.Export)?this.parseExportDeclaration():this.matchKeyword(t.Import)?this.parseImportDeclaration():this.parseStatement()}parseBlock(){const e=this.captureStartMarker();this.expectPunctuator("{");const t=this.parseStatements("}");return this.expectPunctuator("}"),this.finalize({type:i.BlockStatement,body:t,...this.getItemLocation(e)})}parseObjectStatement(){const e=this.captureStartMarker(),t=this.parseObjectExpression();return this.finalize({type:i.ExpressionStatement,expression:t,...this.getItemLocation(e)})}parseBlockOrObjectStatement(){return this.context.curlyParsingType===M.AsObject||this.peekAhead(e=>{let t=e();return!(t.type!==h.Identifier&&t.type!==h.StringLiteral||(t=e(),t.type!==h.Punctuator||":"!==t.value))})?this.parseObjectStatement():this.parseBlock()}parseIdentifier(){const e=this.rawToken;if(e.type!==h.Identifier)return null;const t=this.captureStartMarker();return this.readNextRawToken(),this.finalize({type:i.Identifier,name:e.value,...this.getItemLocation(t)})}parseVariableDeclarator(){const e=this.captureStartMarker(),t=this.parseIdentifier();t||this.throwUnexpectedToken({code:l.IdentifierExpected});let u=null;if(this.matchPunctuator("=")){this.readNextRawToken();const e=this.rawToken;try{u=this.isolateCoverGrammar(this.parseAssignmentExpression.bind(this))}catch{this.throwUnexpectedToken({rawToken:e,code:l.InvalidVariableAssignment})}}return this.finalize({type:i.VariableDeclarator,id:t,init:u,...this.getItemLocation(e)})}parseVariableDeclarators(){const e=[this.parseVariableDeclarator()];for(;this.matchPunctuator(",");)this.readNextRawToken(),e.push(this.parseVariableDeclarator());return e}parseVariableDeclaration(){const e=this.captureStartMarker();this.expectKeyword(t.Var);const u=this.parseVariableDeclarators();return this.consumeSemicolon(),this.finalize({type:i.VariableDeclaration,declarations:u,kind:"var",...this.getItemLocation(e)})}parseEmptyStatement(){const e=this.captureStartMarker();return this.expectPunctuator(";"),this.finalize({type:i.EmptyStatement,...this.getItemLocation(e)})}parseExpressionStatement(){const e=this.captureStartMarker(),t=this.parseExpression();return this.consumeSemicolon(),this.finalize({type:i.ExpressionStatement,expression:t,...this.getItemLocation(e)})}parseIfClause(){return this.withBlockContext(P.IfClause,this.parseStatement.bind(this))}parseIfStatement(){const e=this.captureStartMarker();this.expectKeyword(t.If),this.expectPunctuator("(");const u=this.captureStartMarker(),n=this.parseExpression(),r=this.captureStartMarker();this.expectPunctuator(")"),(n.type===i.AssignmentExpression||n.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,u,r);const s=this.parseIfClause();let a=null;return this.matchKeyword(t.Else)&&(this.readNextRawToken(),a=this.parseIfClause()),this.finalize({type:i.IfStatement,test:n,consequent:s,alternate:a,...this.getItemLocation(e)})}parseWhileStatement(){const e=this.captureStartMarker();this.expectKeyword(t.While),this.expectPunctuator("(");const u=this.captureStartMarker(),n=this.parseExpression(),r=this.captureStartMarker();this.expectPunctuator(")"),(n.type===i.AssignmentExpression||n.type===i.UpdateExpression)&&this.throwError(l.InvalidExpression,u,r);const s=this.withBlockContext(P.WhileLoop,this.parseStatement.bind(this));return this.finalize({type:i.WhileStatement,test:n,body:s,...this.getItemLocation(e)})}parseForStatement(){let e=i.ForStatement,n=null,r=null,s=null,a=null,o=null;const D=this.captureStartMarker();if(this.expectKeyword(t.For),this.expectPunctuator("("),this.matchKeyword(t.Var)){const r=this.captureStartMarker();this.readNextRawToken();const s=this.parseVariableDeclarators();n=this.finalize({type:i.VariableDeclaration,declarations:s,kind:"var",...this.getItemLocation(r)});const o=this.matchKeyword(t.In),D=this.matchContextualKeyword(u.Of);1===s.length&&(o||D)&&(s[0].init&&this.throwError(l.ForInOfLoopInitializer,r),e=o?i.ForInStatement:i.ForOfStatement,a=n)}else if(!this.matchPunctuator(";")){const r=this.context.isAssignmentTarget,s=this.captureStartMarker();n=this.inheritCoverGrammar(this.parseAssignmentExpression.bind(this));const o=this.matchKeyword(t.In),D=this.matchContextualKeyword(u.Of);o||D?(this.context.isAssignmentTarget||this.tolerateError(l.InvalidLeftHandSideInForIn,s),n.type!==i.Identifier&&this.throwError(l.InvalidLeftHandSideInForIn,s),e=o?i.ForInStatement:i.ForOfStatement,a=n):this.context.isAssignmentTarget=r}e===i.ForStatement?(this.expectPunctuator(";"),r=this.matchPunctuator(";")?null:this.isolateCoverGrammar(this.parseExpression.bind(this)),this.expectPunctuator(";"),s=this.matchPunctuator(")")?null:this.isolateCoverGrammar(this.parseExpression.bind(this))):(this.readNextRawToken(),o=this.parseExpression()),this.expectPunctuator(")");const h=this.withBlockContext(e===i.ForOfStatement?P.ForOfLoop:P.ForLoop,()=>this.isolateCoverGrammar(this.parseStatement.bind(this)));return e===i.ForInStatement||e===i.ForOfStatement?this.finalize({type:e,left:a,right:o,body:h,...this.getItemLocation(D)}):this.finalize({type:e,init:n,test:r,update:s,body:h,...this.getItemLocation(D)})}parseContinueStatement(){const e=this.captureStartMarker();return this.expectKeyword(t.Continue),this.consumeSemicolon(),this.finalize({type:i.ContinueStatement,...this.getItemLocation(e)})}parseBreakStatement(){const e=this.captureStartMarker();return this.expectKeyword(t.Break),this.consumeSemicolon(),this.finalize({type:i.BreakStatement,...this.getItemLocation(e)})}parseReturnStatement(){const e=this.captureStartMarker();this.expectKeyword(t.Return);const u=(this.matchPunctuator(";")||this.matchPunctuator("}")||this.hasLineTerminator||this.rawToken.type===h.EOF)&&this.rawToken.type!==h.StringLiteral&&this.rawToken.type!==h.Template?null:this.parseExpression();return this.consumeSemicolon(),this.finalize({type:i.ReturnStatement,argument:u,...this.getItemLocation(e)})}parseStatement(){switch(this.rawToken.type){case h.BooleanLiteral:case h.NullLiteral:case h.NumericLiteral:case h.StringLiteral:case h.Template:case h.Identifier:return this.parseExpressionStatement();case h.Punctuator:return"{"===this.rawToken.value?this.parseBlockOrObjectStatement():"("===this.rawToken.value?this.parseExpressionStatement():";"===this.rawToken.value?this.parseEmptyStatement():this.parseExpressionStatement();case h.Keyword:switch(this.rawToken.value.toLowerCase()){case t.Break:return this.parseBreakStatement();case t.Continue:return this.parseContinueStatement();case t.For:return this.parseForStatement();case t.Function:return this.parseFunctionDeclaration();case t.If:return this.parseIfStatement();case t.Return:return this.parseReturnStatement();case t.Var:return this.parseVariableDeclaration();case t.While:return this.parseWhileStatement();default:return this.parseExpressionStatement()}default:return this.throwUnexpectedToken({rawToken:this.rawToken})}}parseFormalParameters(){const e=[];if(this.expectPunctuator("("),!this.matchPunctuator(")"))for(;this.rawToken.type!==h.EOF;){const t=this.parseIdentifier();if(t||this.throwUnexpectedToken({rawToken:this.rawToken,code:l.IdentifierExpected}),e.push(t),this.matchPunctuator(")")||(this.expectPunctuator(","),this.matchPunctuator(")")))break}return this.expectPunctuator(")"),e}parseFunctionDeclaration(){(this.context.blockContext&P.Function)===P.Function&&this.throwUnexpectedToken({code:l.NoFunctionInsideFunction}),((this.context.blockContext&P.WhileLoop)===P.WhileLoop||(this.context.blockContext&P.ForOfLoop)===P.ForOfLoop||(this.context.blockContext&P.IfClause)===P.IfClause)&&this.throwUnexpectedToken({code:l.NoFunctionInsideBlock});const e=this.captureStartMarker();this.expectKeyword(t.Function);const u=this.parseIdentifier();u||this.throwUnexpectedToken({code:l.InvalidFunctionIdentifier});const n=this.parseFormalParameters(),r=this.context.blockContext;this.context.blockContext|=P.Function;const s=this.parseBlock();return this.context.blockContext=r,this.finalize({type:i.FunctionDeclaration,id:u,params:n,body:s,...this.getItemLocation(e)})}parseScript(){const e=this.captureStartMarker(),t=this.parseStatements(),u=this.finalize({type:i.Program,body:t,...this.getItemLocation(e)});return this.options.tokens&&(u.tokens=this.tokens),this.options.tolerant&&(u.errors=this.errorHandler.errors),u}parseExportDeclaration(){this.context.blockContext!==P.None&&this.throwUnexpectedToken({code:l.ModuleExportRootOnly});let e=null;const u=this.captureStartMarker();return this.expectKeyword(t.Export),this.matchKeyword(t.Var)?e=this.parseVariableDeclaration():this.matchKeyword("function")?e=this.parseFunctionDeclaration():this.throwUnexpectedToken({code:l.InvalidExpression}),this.finalize({type:i.ExportNamedDeclaration,declaration:e,specifiers:[],source:null,...this.getItemLocation(u)})}parseModuleSpecifier(){const e=this.captureStartMarker(),t=this.rawToken;if(t.type===h.StringLiteral)return this.readNextRawToken(),this.finalize({type:i.Literal,value:t.value,raw:this.getSourceValue(t),isString:!0,...this.getItemLocation(e)});this.throwError(l.InvalidModuleUri,e)}parseDefaultSpecifier(){const e=this.captureStartMarker(),t=this.parseIdentifier();return t||this.throwUnexpectedToken({code:l.IdentifierExpected}),this.finalize({type:i.ImportDefaultSpecifier,local:t,...this.getItemLocation(e)})}parseImportDeclaration(){this.context.blockContext!==P.None&&this.throwUnexpectedToken({code:l.ModuleImportRootOnly});const e=this.captureStartMarker();this.expectKeyword(t.Import);const n=this.parseDefaultSpecifier();this.expectContextualKeyword(u.From);const r=this.parseModuleSpecifier();return this.finalize({type:i.ImportDeclaration,specifiers:[n],source:r,...this.getItemLocation(e)})}}function H(e,t,u){return new K(e,t,u).parseScript()}export{p as P,H as U,d as Z,l as a,x as g,A as i,t as l,i as n,m as x,C as y};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{id as e}from"../kernel.js";import{isAbsolute as t,makeAbsolute as r,makeRelative as s,normalize as o,isDataProtocol as n,changeDomain as l,hasSameOrigin as a,getAppUrl as c,splitPathExtension as i}from"../core/urlUtils.js";import{normalizeArcGISOnlineOrgDomain as u}from"../portal/support/urlUtils.js";function p(e,t){const o=t?.url?.path;if(e&&o&&(e=r(e,o,{preserveProtocolRelative:!0}),t.portalItem&&t.readResourcePaths)){const r=s(e,t.portalItem.itemUrl);null!=r&&v.test(r)&&t.readResourcePaths.push(t.portalItem.resourceFromPath(r).path)}return(e=I(e,t?.portal))&&d.test(e)?R(e):e}function m(e,l,a=y.YES){if(null==(e=e&&d.test(e)?w(e):e))return e;!t(e)&&l?.blockedRelativeUrls&&l.blockedRelativeUrls.push(e);let c=r(e);if(l){const t=l.verifyItemRelativeUrls?.rootPath||l.url?.path;if(t){const r=I(t,l.portal),o=I(c,l.portal);c=s(o,r,r);null!=c&&c!==o&&c!==e&&l.verifyItemRelativeUrls&&l.verifyItemRelativeUrls.writtenUrls.push(c)}}return c=x(c,l?.portal),t(c)&&(c=o(c)),l?.resources&&l?.portalItem&&!t(c)&&!n(c)&&a===y.YES&&l.resources.toKeep.push({resource:l.portalItem.resourceFromPath(c),compress:!1}),c}function f(e,t,r){return p(e,r)}function h(e,t,r,s){const o=m(e,s);void 0!==o&&(t[r]=o)}const d=/\/items\/([^/]+)\/resources\/(.*)/,v=/^\.\/resources\//;function U(e){const t=e?.match(d)??null;return t?.[1]??null}function g(e){const t=e?.match(d)??null;if(null==t)return null;const r=t[2],s=r.lastIndexOf("/");if(-1===s){const{path:e,extension:t}=i(r);return{prefix:null,filename:e,extension:t}}const{path:o,extension:n}=i(r.slice(s+1));return{prefix:r.slice(0,s),filename:o,extension:n}}function x(e,t){return t&&!t.isPortal&&t.urlKey&&t.customBaseUrl?l(e,`${t.urlKey}.${t.customBaseUrl}`,t.portalHostname):e}function I(e,t){if(!t||t.isPortal||!t.urlKey||!t.customBaseUrl)return e;const r=`${t.urlKey}.${t.customBaseUrl}`,s=c();return a(s,`${s.scheme}://${r}`)?l(e,t.portalHostname,r):l(e,r,t.portalHostname)}function R(t){if(!t)return t||null;let r=t;return r&&e&&!e.findCredential(r)&&(r=u(r),r=r.replace(/^https?:\/\/www\.arcgis\.com/,"https://cdn.arcgis.com"),r=r.replace(/^https?:\/\/devext\.arcgis\.com/,"https://cdndev.arcgis.com"),r=r.replace(/^https?:\/\/qaext\.arcgis\.com/,"https://cdnqa.arcgis.com")),r}function w(t){if(!t)return t||null;let r=t;return r=r.replace(/^https?:\/\/cdn\.arcgis\.com/,"https://www.arcgis.com"),r=r.replace(/^https?:\/\/cdndev\.arcgis\.com/,"https://devext.arcgis.com"),r=r.replace(/^https?:\/\/cdnqa\.arcgis\.com/,"https://qaext.arcgis.com"),r&&e&&!e.findCredential(r)&&(r=u(r)),r}var y;!function(e){e[e.YES=0]="YES",e[e.NO=1]="NO"}(y||(y={}));const P=Object.freeze(Object.defineProperty({__proto__:null,get MarkKeep(){return y},ensureMainOnlineDomain:x,fromCDNUrl:w,fromJSON:p,itemIdFromResourceUrl:U,prefixAndFilenameFromResourceUrl:g,read:f,toCDNUrl:R,toJSON:m,write:h},Symbol.toStringTag,{value:"Module"}));export{y as M,R as a,P as b,w as c,x as e,p as f,U as i,g as p,f as r,m as t,h as w};
5
+ import{id as e}from"../kernel.js";import{makeAbsolute as t,makeRelative as r,isAbsolute as s,normalize as o,isDataProtocol as n,changeDomain as l,hasSameOrigin as a,getAppUrl as c,splitPathExtension as i}from"../core/urlUtils.js";import{normalizeArcGISOnlineOrgDomain as u}from"../portal/support/urlUtils.js";function p(e,s){const o=s?.url?.path;if(e&&o&&(e=t(e,o,{preserveProtocolRelative:!0}),s.portalItem&&s.readResourcePaths)){const t=r(e,s.portalItem.itemUrl);null!=t&&v.test(t)&&s.readResourcePaths.push(s.portalItem.resourceFromPath(t).path)}return(e=I(e,s?.portal))&&d.test(e)?R(e):e}function m(e,l,a=y.YES){if(null==(e=e&&d.test(e)?w(e):e))return e;!s(e)&&l?.blockedRelativeUrls&&l.blockedRelativeUrls.push(e);let c=t(e);if(l){const t=l.verifyItemRelativeUrls?.rootPath||l.url?.path;if(t){const s=I(t,l.portal),o=I(c,l.portal);c=r(o,s,s);null!=c&&c!==o&&c!==e&&l.verifyItemRelativeUrls&&l.verifyItemRelativeUrls.writtenUrls.push(c)}}return c=x(c,l?.portal),s(c)&&(c=o(c)),l?.resources&&l?.portalItem&&!s(c)&&!n(c)&&a===y.YES&&l.resources.toKeep.push({resource:l.portalItem.resourceFromPath(c),compress:!1}),c}function f(e,t,r){return p(e,r)}function h(e,t,r,s){const o=m(e,s);void 0!==o&&(t[r]=o)}const d=/\/items\/([^/]+)\/resources\/(.*)/,v=/^\.\/resources\//;function U(e){const t=e?.match(d)??null;return t?.[1]??null}function g(e){const t=e?.match(d)??null;if(null==t)return null;const r=t[2],s=r.lastIndexOf("/");if(-1===s){const{path:e,extension:t}=i(r);return{prefix:null,filename:e,extension:t}}const{path:o,extension:n}=i(r.slice(s+1));return{prefix:r.slice(0,s),filename:o,extension:n}}function x(e,t){return t&&!t.isPortal&&t.urlKey&&t.customBaseUrl?l(e,`${t.urlKey}.${t.customBaseUrl}`,t.portalHostname):e}function I(e,t){if(!t||t.isPortal||!t.urlKey||!t.customBaseUrl)return e;const r=`${t.urlKey}.${t.customBaseUrl}`,s=c();return a(s,`${s.scheme}://${r}`)?l(e,t.portalHostname,r):l(e,r,t.portalHostname)}function R(t){if(!t)return t||null;let r=t;return r&&e&&!e.findCredential(r)&&(r=u(r),r=r.replace(/^https?:\/\/www\.arcgis\.com/,"https://cdn.arcgis.com"),r=r.replace(/^https?:\/\/devext\.arcgis\.com/,"https://cdndev.arcgis.com"),r=r.replace(/^https?:\/\/qaext\.arcgis\.com/,"https://cdnqa.arcgis.com")),r}function w(t){if(!t)return t||null;let r=t;return r=r.replace(/^https?:\/\/cdn\.arcgis\.com/,"https://www.arcgis.com"),r=r.replace(/^https?:\/\/cdndev\.arcgis\.com/,"https://devext.arcgis.com"),r=r.replace(/^https?:\/\/cdnqa\.arcgis\.com/,"https://qaext.arcgis.com"),r&&e&&!e.findCredential(r)&&(r=u(r)),r}var y;!function(e){e[e.YES=0]="YES",e[e.NO=1]="NO"}(y||(y={}));const P=Object.freeze(Object.defineProperty({__proto__:null,get MarkKeep(){return y},ensureMainOnlineDomain:x,fromCDNUrl:w,fromJSON:p,itemIdFromResourceUrl:U,prefixAndFilenameFromResourceUrl:g,read:f,toCDNUrl:R,toJSON:m,write:h},Symbol.toStringTag,{value:"Module"}));export{y as M,R as a,P as b,w as c,x as e,p as f,U as i,g as p,f as r,m as t,h as w};
package/config.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.34/esri/copyright.txt for details.
4
4
  */
5
- import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="4.34.0-next.23";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s as default};
5
+ import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="4.34.0-next.25";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s 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.34/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../chunks/tslib.es6.js";import s from"./Accessor.js";import r from"./Logger.js";import{debounce as o}from"./promiseUtils.js";import{watch as e,initial as n}from"./reactiveUtils.js";import{property as i}from"./accessorSupport/decorators/property.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const c=s=>{let c=class extends s{constructor(){super(...arguments),this._numUpdating=0}get updating(){return this._numUpdating>0}autoUpdateAsync(t,s){const i=o(async s=>{++this._numUpdating;try{const r=await s;this.destroyed||this._set(t,r)}catch(o){r.getLogger(this).warn(`Async update of "${String(t)}" failed. Async update functions should not throw exceptions.`)}--this._numUpdating});return e(s,i,n)}};return t([i({readOnly:!0})],c.prototype,"updating",null),t([i()],c.prototype,"_numUpdating",void 0),c=t([p("esri.core.AsyncUpdate")],c),c};let a=class extends(c(s)){};a=t([p("esri.core.AsyncUpdate")],a);export{a as AsyncUpdate,c as AsyncUpdateMixin};
5
+ import{_ as t}from"../chunks/tslib.es6.js";import s from"./Accessor.js";import r from"./Logger.js";import{debounce as o}from"./promiseUtils.js";import{watch as e,initial as n}from"./reactiveUtils.js";import{property as i}from"./accessorSupport/decorators/property.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const c=s=>{const c=s;let a=class extends c{constructor(){super(...arguments),this._numUpdating=0}get updating(){return this._numUpdating>0}autoUpdateAsync(t,s){const i=o(async s=>{++this._numUpdating;try{const r=await s;this.destroyed||this._set(t,r)}catch(o){r.getLogger(this).warn(`Async update of "${String(t)}" failed. Async update functions should not throw exceptions.`)}--this._numUpdating});return e(s,i,n)}};return t([i({readOnly:!0})],a.prototype,"updating",null),t([i()],a.prototype,"_numUpdating",void 0),a=t([p("esri.core.AsyncUpdate")],a),a};let a=class extends(c(s)){};a=t([p("esri.core.AsyncUpdate")],a);export{a as AsyncUpdate,c as AsyncUpdateMixin};