@arcgis/core 5.0.0-next.73 → 5.0.0-next.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/Color.d.ts +8 -0
  2. package/WebDocument2D.d.ts +5 -30
  3. package/analysis/ElevationProfile/ElevationProfileLineQuery.d.ts +1 -1
  4. package/assets/esri/core/workers/RemoteClient.js +1 -1
  5. package/assets/esri/core/workers/chunks/0b666327e8090a6e6f6a.js +1 -0
  6. package/assets/esri/core/workers/chunks/16a7edb381621085a631.js +1 -0
  7. package/assets/esri/core/workers/chunks/{e246b256347a281c13fd.js → 22288b62da20a7a78a4f.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{7e37a3005f2ad2c0a918.js → 23cf4cbc389d2b50e968.js} +1 -1
  9. package/assets/esri/core/workers/chunks/4750f55a289bc0cf3d77.js +1 -0
  10. package/assets/esri/core/workers/chunks/{935a6dccb88557f98189.js → 76b516b8c110ad983bf6.js} +8 -6
  11. package/assets/esri/core/workers/chunks/a5181292b309b8249bd8.js +1 -0
  12. package/assets/esri/core/workers/chunks/ae733ee050f27f7d8924.js +1 -0
  13. package/assets/esri/core/workers/chunks/{64985e9b6e2edb3ceb37.js → b498db9715a722c52995.js} +45 -58
  14. package/assets/esri/core/workers/chunks/befeca51530bba5e8073.js +1 -0
  15. package/assets/esri/core/workers/chunks/cd788ed111e1e35cf9c8.js +1 -0
  16. package/assets/esri/core/workers/chunks/f35021214e534d5e0446.js +1 -0
  17. package/assets/esri/themes/base/widgets/_FeatureTable.scss +99 -22
  18. package/assets/esri/themes/dark/main.css +1 -1
  19. package/assets/esri/themes/light/main.css +1 -1
  20. package/assets/esri/themes/light/view.css +1 -1
  21. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable.json +1 -1
  22. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ar.json +1 -1
  23. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_bg.json +1 -1
  24. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_bs.json +1 -1
  25. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ca.json +1 -1
  26. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_cs.json +1 -1
  27. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_da.json +1 -1
  28. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_de.json +1 -1
  29. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_el.json +1 -1
  30. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_en.json +1 -1
  31. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_es.json +1 -1
  32. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_et.json +1 -1
  33. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_fi.json +1 -1
  34. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_fr.json +1 -1
  35. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_he.json +1 -1
  36. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_hr.json +1 -1
  37. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_hu.json +1 -1
  38. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_id.json +1 -1
  39. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_it.json +1 -1
  40. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ja.json +1 -1
  41. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ko.json +1 -1
  42. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_lt.json +1 -1
  43. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_lv.json +1 -1
  44. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_nl.json +1 -1
  45. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_no.json +1 -1
  46. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pl.json +1 -1
  47. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pt-BR.json +1 -1
  48. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pt-PT.json +1 -1
  49. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ro.json +1 -1
  50. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ru.json +1 -1
  51. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sk.json +1 -1
  52. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sl.json +1 -1
  53. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sr.json +1 -1
  54. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sv.json +1 -1
  55. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_th.json +1 -1
  56. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_tr.json +1 -1
  57. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_uk.json +1 -1
  58. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_vi.json +1 -1
  59. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-CN.json +1 -1
  60. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-HK.json +1 -1
  61. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-TW.json +1 -1
  62. package/chunks/ComponentShader.glsl.js +1 -1
  63. package/chunks/GlowBlur.glsl.js +2 -3
  64. package/chunks/HUDMaterial.glsl.js +43 -56
  65. package/config.d.ts +6 -8
  66. package/config.js +1 -1
  67. package/core/Collection.d.ts +27 -1
  68. package/core/types.d.ts +0 -23
  69. package/core/urlUtils.d.ts +10 -0
  70. package/geometry/support/MeshTexture.d.ts +0 -2
  71. package/geometry/support/MeshVertexAttributes.d.ts +0 -2
  72. package/identity/IdentityManagerBase.d.ts +3 -6
  73. package/interfaces.d.ts +3 -3
  74. package/kernel.js +1 -1
  75. package/layers/BaseDynamicLayer.d.ts +1 -4
  76. package/layers/BaseElevationLayer.d.ts +3 -6
  77. package/layers/BuildingSceneLayer.d.ts +1 -4
  78. package/layers/CSVLayer.d.ts +1 -4
  79. package/layers/CatalogLayer.d.ts +1 -4
  80. package/layers/DimensionLayer.d.ts +1 -4
  81. package/layers/ElevationLayer.d.ts +3 -6
  82. package/layers/FeatureLayer.d.ts +1 -4
  83. package/layers/GaussianSplatLayer.d.ts +0 -1
  84. package/layers/GeoJSONLayer.d.ts +1 -4
  85. package/layers/GeoRSSLayer.d.ts +1 -4
  86. package/layers/GraphicsLayer.d.ts +1 -4
  87. package/layers/GroupLayer.d.ts +1 -4
  88. package/layers/ImageryLayer.d.ts +1 -4
  89. package/layers/ImageryTileLayer.d.ts +1 -4
  90. package/layers/IntegratedMesh3DTilesLayer.d.ts +1 -4
  91. package/layers/IntegratedMeshLayer.d.ts +1 -4
  92. package/layers/KMLLayer.d.ts +1 -4
  93. package/layers/Layer.d.ts +2 -6
  94. package/layers/LineOfSightLayer.d.ts +1 -4
  95. package/layers/MapImageLayer.d.ts +1 -4
  96. package/layers/MapNotesLayer.d.ts +1 -4
  97. package/layers/MediaLayer.d.ts +1 -4
  98. package/layers/OGCFeatureLayer.d.ts +1 -4
  99. package/layers/OrientedImageryLayer.d.ts +1 -4
  100. package/layers/ParquetLayer.d.ts +1 -4
  101. package/layers/PointCloudLayer.d.ts +1 -4
  102. package/layers/RouteLayer.d.ts +2 -5
  103. package/layers/SceneLayer.d.ts +1 -4
  104. package/layers/SubtypeGroupLayer.d.ts +1 -12
  105. package/layers/TileLayer.d.ts +1 -4
  106. package/layers/UnknownLayer.d.ts +1 -4
  107. package/layers/UnsupportedLayer.d.ts +1 -4
  108. package/layers/VectorTileLayer.d.ts +1 -4
  109. package/layers/VideoLayer.d.ts +1 -4
  110. package/layers/ViewshedLayer.d.ts +1 -4
  111. package/layers/VoxelLayer.d.ts +1 -4
  112. package/layers/WCSLayer.d.ts +1 -4
  113. package/layers/WFSLayer.d.ts +1 -4
  114. package/layers/WMSLayer.d.ts +1 -4
  115. package/layers/WMTSLayer.d.ts +1 -4
  116. package/layers/catalog/CatalogDynamicGroupLayer.d.ts +1 -4
  117. package/layers/catalog/CatalogFootprintLayer.d.ts +1 -4
  118. package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +1 -6
  119. package/layers/mixins/EditBusLayer.d.ts +0 -1
  120. package/layers/mixins/PublishableLayer.d.ts +15 -0
  121. package/layers/support/FeatureFilter.d.ts +0 -1
  122. package/layers/support/MosaicRule.d.ts +0 -4
  123. package/layers/support/PublishingInfo.d.ts +1 -1
  124. package/layers/support/types.d.ts +2 -2
  125. package/layers/types.d.ts +19 -6
  126. package/package.json +1 -1
  127. package/portal/PortalUser.d.ts +1 -1
  128. package/renderers/support/RendererLegendOptions.d.ts +0 -1
  129. package/request/types.d.ts +0 -1
  130. package/rest/support/NormalizationBinParametersMixin.d.ts +18 -20
  131. package/rest/support/PrintTemplate.d.ts +0 -1
  132. package/rest/support/RelationshipQuery.d.ts +1 -10
  133. package/rest/support/types.d.ts +29 -3
  134. package/smartMapping/heuristics/binLevel.d.ts +1 -1
  135. package/smartMapping/heuristics/scaleRange.d.ts +1 -1
  136. package/smartMapping/heuristics/sizeRange.d.ts +1 -1
  137. package/smartMapping/heuristics/types.d.ts +0 -2
  138. package/smartMapping/labels/bins.d.ts +1 -1
  139. package/smartMapping/labels/clusters.d.ts +1 -1
  140. package/smartMapping/popup/clusters.d.ts +1 -1
  141. package/smartMapping/popup/templates.d.ts +1 -1
  142. package/smartMapping/raster/renderers/classBreaks.d.ts +1 -1
  143. package/smartMapping/raster/renderers/colormap.d.ts +1 -1
  144. package/smartMapping/raster/renderers/flow.d.ts +0 -1
  145. package/smartMapping/raster/renderers/rgb.d.ts +1 -1
  146. package/smartMapping/raster/renderers/shadedRelief.d.ts +0 -1
  147. package/smartMapping/raster/renderers/stretch.d.ts +1 -1
  148. package/smartMapping/raster/renderers/uniqueValue.d.ts +0 -1
  149. package/smartMapping/raster/renderers/vectorField.d.ts +0 -1
  150. package/smartMapping/raster/support/utils.d.ts +0 -2
  151. package/smartMapping/renderers/color.d.ts +6 -6
  152. package/smartMapping/renderers/dotDensity.d.ts +0 -1
  153. package/smartMapping/renderers/heatmap.d.ts +1 -1
  154. package/smartMapping/renderers/location.d.ts +0 -1
  155. package/smartMapping/renderers/opacity.d.ts +1 -1
  156. package/smartMapping/renderers/pieChart.d.ts +0 -2
  157. package/smartMapping/renderers/predominance.d.ts +0 -1
  158. package/smartMapping/renderers/relationship.d.ts +0 -1
  159. package/smartMapping/renderers/size.d.ts +4 -6
  160. package/smartMapping/renderers/type.d.ts +9 -5
  161. package/smartMapping/renderers/univariateColorSize.d.ts +2 -2
  162. package/smartMapping/statistics/classBreaks.d.ts +1 -1
  163. package/smartMapping/statistics/heatmapStatistics.d.ts +1 -1
  164. package/smartMapping/statistics/histogram.d.ts +1 -1
  165. package/smartMapping/statistics/predominantCategories.d.ts +1 -1
  166. package/smartMapping/statistics/summaryStatistics.d.ts +1 -1
  167. package/smartMapping/statistics/summaryStatisticsForAge.d.ts +1 -1
  168. package/smartMapping/statistics/support/ageUtils.d.ts +1 -1
  169. package/smartMapping/statistics/types.d.ts +26 -8
  170. package/smartMapping/statistics/uniqueValues.d.ts +1 -1
  171. package/smartMapping/symbology/color.d.ts +4 -4
  172. package/smartMapping/symbology/dotDensity.d.ts +3 -3
  173. package/smartMapping/symbology/flow.d.ts +3 -3
  174. package/smartMapping/symbology/heatmap.d.ts +3 -3
  175. package/smartMapping/symbology/location.d.ts +1 -1
  176. package/smartMapping/symbology/pieChart.d.ts +3 -3
  177. package/smartMapping/symbology/predominance.d.ts +3 -3
  178. package/smartMapping/symbology/relationship.d.ts +3 -3
  179. package/smartMapping/symbology/size.d.ts +1 -1
  180. package/smartMapping/symbology/support/colorRamps.d.ts +1 -1
  181. package/smartMapping/symbology/type.d.ts +3 -3
  182. package/support/revision.js +1 -1
  183. package/symbols/cim/types.d.ts +0 -12
  184. package/symbols/support/symbolUtils.d.ts +1 -1
  185. package/views/2d/MapViewConstraints.d.ts +2 -10
  186. package/views/2d/engine/brushes.js +1 -1
  187. package/views/2d/engine/vectorTiles/GlyphMosaic.js +1 -1
  188. package/views/2d/engine/vectorTiles/MemoryBuffer.js +1 -1
  189. package/views/2d/engine/vectorTiles/RenderBucket.js +1 -1
  190. package/views/2d/engine/vectorTiles/SpriteMosaic.js +1 -1
  191. package/views/2d/engine/vectorTiles/VTLPainter3D.js +1 -1
  192. package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
  193. package/views/2d/engine/vectorTiles/VertexMemoryBuffer.js +1 -1
  194. package/views/2d/engine/vectorTiles/shaders/VTLBackgroundMaterial.js +1 -1
  195. package/views/2d/engine/vectorTiles/shaders/VTLCircleMaterial.js +1 -1
  196. package/views/2d/engine/vectorTiles/shaders/VTLFillMaterial.js +1 -1
  197. package/views/2d/engine/vectorTiles/shaders/VTLLineMaterial.js +1 -1
  198. package/views/2d/engine/vectorTiles/shaders/VTLMaterial.js +1 -1
  199. package/views/2d/engine/vectorTiles/shaders/VTLSymbolMaterial.js +1 -1
  200. package/views/2d/engine/vectorTiles/style/StyleLayer.js +1 -1
  201. package/views/2d/engine/webgl/Painter.js +1 -1
  202. package/views/2d/engine/webgl/RenderingDevice.js +5 -0
  203. package/views/2d/engine/webgl/WGLContainer.js +1 -1
  204. package/views/2d/engine/webgl/meshing/Mesh.js +1 -1
  205. package/views/2d/engine/webgl/number.js +1 -1
  206. package/views/2d/engine/webgl/shaderGraph/graph/glsl.js +1 -1
  207. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderBackground.js +5 -0
  208. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderCircle.js +5 -0
  209. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderFill.js +5 -0
  210. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderIcon.js +5 -0
  211. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderLine.js +5 -0
  212. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderOutline.js +5 -0
  213. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderText.js +5 -0
  214. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueBackground.js +5 -0
  215. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueCircle.js +5 -0
  216. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueFill.js +5 -0
  217. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueLine.js +5 -0
  218. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueSymbol.js +5 -0
  219. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniques.js +5 -0
  220. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  221. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  222. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  223. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  224. package/views/3d/layers/i3s/meshUtils.js +1 -1
  225. package/views/3d/state/NearFarHeuristic.js +1 -1
  226. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  227. package/views/3d/webgl-engine/collections/Component/Material/ComponentData.glsl.js +1 -1
  228. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  229. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  230. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +6 -4
  231. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +18 -14
  232. package/views/3d/webgl-engine/effects/glow/GlowBlur.glsl.js +1 -1
  233. package/views/3d/webgl-engine/effects/glow/GlowRenderNode.js +1 -1
  234. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechniqueConfiguration.js +1 -1
  235. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  236. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  237. package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.js +1 -1
  238. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +23 -20
  239. package/views/BreakpointsOwner.d.ts +2 -2
  240. package/views/LinkChartView.d.ts +0 -2
  241. package/views/View2D.d.ts +3 -15
  242. package/views/input/types.d.ts +2 -13
  243. package/views/layers/BuildingComponentSublayerView.d.ts +0 -1
  244. package/views/types.d.ts +2 -9
  245. package/views/webgl/RenderingContext.js +1 -1
  246. package/views/webgl/VertexArrayObject.js +1 -1
  247. package/views/webgl/renderState.js +1 -1
  248. package/webdoc/ips/SmoothingProperties.d.ts +1 -1
  249. package/webdoc/ips/SmoothingProperties.js +1 -1
  250. package/widgets/BasemapLayerList/BasemapLayerListVisibleElements.d.ts +10 -10
  251. package/widgets/BasemapLayerList/types.d.ts +6 -1
  252. package/widgets/Bookmarks/BookmarksVisibleElements.d.ts +0 -9
  253. package/widgets/Bookmarks/types.d.ts +0 -4
  254. package/widgets/CatalogLayerList/CatalogLayerListVisibleElements.d.ts +2 -2
  255. package/widgets/CatalogLayerList/types.d.ts +5 -1
  256. package/widgets/Editor/VisibleElements.d.ts +0 -11
  257. package/widgets/ElevationProfile/types.d.ts +1 -1
  258. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  259. package/widgets/FeatureTable/FieldColumn.d.ts +0 -1
  260. package/widgets/FeatureTable/VisibleElements.d.ts +2 -16
  261. package/widgets/FeatureTable/support/AttachmentsViewOptions.d.ts +5 -3
  262. package/widgets/FeatureTable/support/AttachmentsViewOptions.js +1 -1
  263. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  264. package/widgets/FeatureTable.js +1 -1
  265. package/widgets/Features/FeaturesViewModel.d.ts +3 -27
  266. package/widgets/Features/FeaturesVisibleElements.d.ts +4 -4
  267. package/widgets/LayerList/LayerListViewModel.d.ts +20 -5
  268. package/widgets/LayerList/LayerListVisibleElements.d.ts +10 -12
  269. package/widgets/LayerList/ListItem.d.ts +33 -0
  270. package/widgets/LayerList/ListItemPanel.d.ts +8 -2
  271. package/widgets/LayerList/types.d.ts +58 -15
  272. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  273. package/widgets/Popup/PopupVisibleElements.d.ts +6 -6
  274. package/widgets/Popup/types.d.ts +1 -1
  275. package/widgets/ScaleRangeSlider/ScaleRanges.d.ts +1 -1
  276. package/widgets/Sketch/CreateToolVisibilityMap.d.ts +0 -4
  277. package/widgets/Sketch/VisibleElements.d.ts +0 -2
  278. package/widgets/Sketch/types.d.ts +1 -1
  279. package/widgets/TableList/ListItemPanel.d.ts +8 -0
  280. package/widgets/TableList/TableListViewModel.d.ts +9 -14
  281. package/widgets/TableList/TableListVisibleElements.d.ts +9 -11
  282. package/widgets/TableList/types.d.ts +13 -7
  283. package/widgets/support/SnappingControls/VisibleElements.d.ts +0 -4
  284. package/widgets/types.d.ts +1 -9
  285. package/assets/esri/core/workers/chunks/1d8fc0239c907ff5d1e8.js +0 -1
  286. package/assets/esri/core/workers/chunks/562cddaf63985e53ee6e.js +0 -1
  287. package/assets/esri/core/workers/chunks/b899b4e7979c13b99526.js +0 -1
  288. package/assets/esri/core/workers/chunks/d0ae8752419d5b761190.js +0 -1
  289. package/assets/esri/core/workers/chunks/df2ba5f9d57080fca183.js +0 -1
  290. package/assets/esri/core/workers/chunks/ee175fd4ec706f7878c0.js +0 -1
  291. package/assets/esri/core/workers/chunks/fc00d7278b43df813c54.js +0 -1
  292. package/layers/mixins/ScaleRange.d.ts +0 -16
  293. package/views/2d/engine/vectorTiles/shaders/Programs.js +0 -5
  294. package/views/2d/engine/vectorTiles/shaders/VTLMaterialManager.js +0 -5
  295. package/views/2d/engine/vectorTiles/shaders/sources/resolver.js +0 -5
  296. package/views/2d/engine/vectorTiles/shaders/sources/shaderRepository.js +0 -5
  297. package/views/2d/engine/vtlBrushes.js +0 -5
  298. package/views/2d/engine/webgl/brushes/WGLBrushVTLBackground.js +0 -5
  299. package/views/2d/engine/webgl/brushes/WGLBrushVTLCircle.js +0 -5
  300. package/views/2d/engine/webgl/brushes/WGLBrushVTLFill.js +0 -5
  301. package/views/2d/engine/webgl/brushes/WGLBrushVTLLine.js +0 -5
  302. package/views/2d/engine/webgl/brushes/WGLBrushVTLSymbol.js +0 -5
  303. package/views/3d/webgl-engine/effects/glow/GlowPresets.glsl.js +0 -5
  304. package/widgets/FeatureTable/support/FeatureStore.d.ts +0 -1
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as t,__param as o}from"tslib";import{GraphShaderModule as e,FragmentOutput as i,location as r,uniform as p,option as l,define as s,input as n,VertexInput as a,UniformGroup as y,FragmentInput as c}from"../../../GraphShaderModule.js";import{Vec2 as d,Float as v,Mat3 as u,negate as x,Vec3 as h,Vec4 as w,fract as f,mix as m,texture2D as g,pow as T,ceil as M,log2 as b,abs as C,Sampler2D as O}from"../../../graph/glsl.js";class z extends a{}t([r(0,d)],z.prototype,"position",void 0),t([r(1,w)],z.prototype,"color",void 0),t([r(2,v)],z.prototype,"opacity",void 0),t([r(3,w)],z.prototype,"tlbr",void 0),t([r(4,w)],z.prototype,"colorTo",void 0),t([r(5,v)],z.prototype,"opacityTo",void 0);class S extends c{}class F extends y{}t([p(u)],F.prototype,"dvsMat",void 0),t([p(u)],F.prototype,"displayMat",void 0);class L extends y{}t([p(v)],L.prototype,"depth",void 0),t([p(d)],L.prototype,"fillTranslation",void 0);class j extends y{}t([p(d)],j.prototype,"mosaicSize",void 0),t([p(v)],j.prototype,"patternFactor",void 0),t([p(w)],j.prototype,"tlbr",void 0),t([p(O)],j.prototype,"texture",void 0);class B extends y{}t([p(v)],B.prototype,"value",void 0);class R extends y{}t([p(v)],R.prototype,"value",void 0);class G extends y{}t([p(w)],G.prototype,"value",void 0);class P extends y{}t([p(w)],P.prototype,"value",void 0);class V extends e{constructor(){super(...arguments),this.type="VTLShaderFill"}vertex(t){const o=this.getColor(t).multiply(this.getOpacity(t));let e=new d(0),i=this.getTLBR(t);if(1===this.fillType){const{mosaicSize:o,patternFactor:r}=this.patternOptions,p=k(i.z.subtract(i.x)),l=k(i.w.subtract(i.y)),s=new v(1).divide(p.multiply(r)),n=new v(1).divide(l.multiply(r));e=new u(s,new v(0),new v(0),new v(0),x(n),new v(0),new v(0),new v(0),new v(1)).multiply(new h(t.position,new v(1))).xy,i=i.divide(o.xyxy)}const r=this.transform.dvsMat.multiply(new h(t.position,1)).add(this.transform.displayMat.multiply(new h(this.config.fillTranslation,0)));return{glPosition:new w(r.xy,this.config.depth,1),color:o,tlbr:i,tileTextureCoord:e}}fragment(t){const o=new i;if(1===this.fillType){const{tlbr:e,tileTextureCoord:i}=t,{texture:r}=this.patternOptions,p=f(i),l=m(e.xy,e.zw,p),s=g(r,l);o.fragColor=t.color.a.multiply(s)}else o.fragColor=t.color;return o}getColor(t){return this.colorMix?.value&&t.color&&t.colorTo?m(t.color,t.colorTo,this.colorMix.value):t.color?t.color:this.color?.value||new w(0)}getOpacity(t){return this.opacityMix?.value&&t.opacity&&t.opacityTo?m(t.opacity,t.opacityTo,this.opacityMix.value):t.opacity?t.opacity:this.opacity?.value||new v(1)}getTLBR(t){return t.tlbr?t.tlbr:this.patternOptions?.tlbr||new w(0)}}function k(t){return T(new v(2),M(b(C(t))))}t([p(F)],V.prototype,"transform",void 0),t([p(L)],V.prototype,"config",void 0),t([l(j)],V.prototype,"patternOptions",void 0),t([l(B)],V.prototype,"opacity",void 0),t([l(R)],V.prototype,"opacityMix",void 0),t([l(G)],V.prototype,"color",void 0),t([l(P)],V.prototype,"colorMix",void 0),t([s],V.prototype,"fillType",void 0),t([o(0,n(z))],V.prototype,"vertex",null),t([o(0,n(S))],V.prototype,"fragment",null);export{V as VTLShaderFill};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o,__param as t}from"tslib";import{GraphShaderModule as e,FragmentOutput as i,location as l,uniform as p,option as r,define as a,input as s,VertexInput as d,UniformGroup as n,FragmentInput as y}from"../../../GraphShaderModule.js";import{mod as c,Float as v,unpackVec4 as h,clamp as u,step as w,abs as x,Vec3 as m,Vec4 as g,texture2D as f,max as T,ifElse as C,greaterThan as M,and as z,lessThan as W,equal as b,min as S,mix as O,Mat3 as I,Vec2 as B,Sampler2D as H}from"../../../graph/glsl.js";import{oneMinus as j,rgba2float as P}from"../utils.js";const V=new v(1/8),k=new v(120/86),A=new v(1/255.5),D=new v(16/86),R=new v(.248062016);class U extends d{}o([l(0,g)],U.prototype,"positionAndOffset",void 0),o([l(1,g)],U.prototype,"iconInfo",void 0),o([l(2,g)],U.prototype,"color",void 0),o([l(3,v)],U.prototype,"opacity",void 0),o([l(4,g)],U.prototype,"haloColor",void 0),o([l(5,v)],U.prototype,"haloWidth",void 0),o([l(6,v)],U.prototype,"haloBlur",void 0),o([l(7,v)],U.prototype,"size",void 0),o([l(8,g)],U.prototype,"colorTo",void 0),o([l(9,v)],U.prototype,"opacityTo",void 0),o([l(10,g)],U.prototype,"haloColorTo",void 0),o([l(11,v)],U.prototype,"haloWidthTo",void 0),o([l(12,v)],U.prototype,"haloBlurTo",void 0),o([l(13,v)],U.prototype,"sizeTo",void 0),o([l(14,v)],U.prototype,"opacityInfo",void 0);class G extends y{}class L extends n{}o([p(I)],L.prototype,"dvsMat3",void 0),o([p(I)],L.prototype,"displayMat3",void 0),o([p(I)],L.prototype,"displayViewMat3",void 0),o([p(v)],L.prototype,"mapRotation",void 0);class q extends n{}o([p(B)],q.prototype,"mosaicSize",void 0),o([p(H)],q.prototype,"texture",void 0);class E extends n{}o([p(B)],E.prototype,"iconTranslation",void 0),o([p(v)],E.prototype,"depth",void 0),o([p(v)],E.prototype,"level",void 0),o([p(v)],E.prototype,"keepUpright",void 0),o([p(v)],E.prototype,"fadeDuration",void 0),o([p(v)],E.prototype,"time",void 0),o([p(v)],E.prototype,"isStencilPass",void 0);class F extends n{}o([p(v)],F.prototype,"value",void 0);class J extends n{}o([p(v)],J.prototype,"value",void 0);class K extends n{}o([p(v)],K.prototype,"value",void 0);class N extends n{}o([p(v)],N.prototype,"value",void 0);class Q extends n{}o([p(g)],Q.prototype,"value",void 0);class X extends n{}o([p(v)],X.prototype,"value",void 0);class Y extends n{}o([p(g)],Y.prototype,"value",void 0);class Z extends n{}o([p(v)],Z.prototype,"value",void 0);class $ extends n{}o([p(v)],$.prototype,"value",void 0);class _ extends n{}o([p(v)],_.prototype,"value",void 0);class oo extends e{constructor(){super(...arguments),this.type="VTLShaderIcon",this.iconType=0}vertex(o){const t=this.getSize(o),e=this.getColor(o),i=this.getHaloColor(o),l=this.getHaloWidth(o);let p=this.getOpacity(o);const{iconInfo:r,opacityInfo:a,positionAndOffset:s}=o,{mapRotation:d,displayMat3:n,displayViewMat3:y,dvsMat3:f}=this.transform,{depth:T,fadeDuration:C,iconTranslation:M,keepUpright:z,level:W,time:b}=this.config,{mosaicSize:S}=this.page,O=c(a,new v(128)),I=a.subtract(O).divide(new v(128)),B=O.divide(new v(127)),[H,P]=h(r,8),A=u(B.add(new v(2).multiply(I.subtract(new v(.5)).multiply(b.divide(C)))),new v(0),new v(1));p=p.multiply(A);const D=P[1],R=P[2],U=P[3],G=H.xy.divide(S);let L=new v(0);const q=c(D.add(d),new v(256));L=L.add(new v(1).subtract(w(z,new v(0))).multiply(w(new v(64),q).multiply(j(w(new v(192),q))))),L=L.add(j(w(R,W))),L=L.add(w(U,W)),L=L.add(w(p,new v(0)));let E=V.multiply(s.zw);const F=x(E);1===this.iconType&&(E=E.multiply(k));const J=f.multiply(new m(s.xy,new v(1))).add(y.multiply(new m(t.multiply(E),0))).add(n.multiply(new m(M,0)));return{glPosition:new g(J.xy,T.add(L),new v(1)),color:e,opacity:p,haloWidth:l,haloColor:i,size:F,tex:G}}fragment(o){const t=new i,{color:e,tex:l,opacity:p,size:r,haloWidth:a,haloColor:s}=o,{texture:d}=this.page,{isStencilPass:n}=this.config;if(1===this.iconType){let o=e;const i=P(f(d,l)).subtract(new v(.5)).multiply(R).multiply(T(r.x,r.y));o=o.multiply(u(new v(.5).subtract(i),new v(0),new v(1))),t.fragColor=C(M(a,new v(.25)),this.getColorWithOutline(i,r,a,o,s,p),o.multiply(p))}else{const o=f(d,l);z(b(n,new v(1)),W(o.a,A)),t.discard=z(b(n,new v(1)),W(o.a,A)),t.fragColor=o.multiply(p)}return t}getColorWithOutline(o,t,e,i,l,p){const r=R.multiply(S(e,D.multiply(T(t.x,t.y))));let a=l;return a=a.multiply(u(new v(.5).subtract(x(o).subtract(r)),new v(0),new v(1))),p.multiply(to(i,a))}getSize(o){return this.sizeMix?.value&&o.size&&o.sizeTo?O(o.size,o.sizeTo,this.sizeMix.value):o.size?o.size:this.size?.value||new v(0)}getColor(o){return this.colorMix?.value&&o.color&&o.colorTo?O(o.color,o.colorTo,this.colorMix.value):o.color?o.color:this.color?.value||new g(0)}getOpacity(o){return this.opacityMix?.value&&o.opacity&&o.opacityTo?O(o.opacity,o.opacityTo,this.opacityMix.value):o.opacity?o.opacity:this.opacity?.value||new v(1)}getHaloColor(o){return this.haloColorMix?.value&&o.haloColor&&o.haloColorTo?O(o.haloColor,o.haloColorTo,this.haloColorMix.value):o.haloColor?o.haloColor:this.haloColor?.value||new g(1)}getHaloWidth(o){if(1===this.iconType){if(this.opacityMix?.value&&o.haloWidth&&o.haloWidthTo)return O(o.haloWidth,o.haloWidthTo,this.opacityMix.value);if(o.haloWidth)return o.haloWidth}return new v(0)}}function to(o,t){const e=t.a.add(o.a.multiply(j(t.a))),i=t.rgb.add(o.rgb.multiply(j(t.a)));return new g(i,e)}o([p(L)],oo.prototype,"transform",void 0),o([p(q)],oo.prototype,"page",void 0),o([p(E)],oo.prototype,"config",void 0),o([r(F)],oo.prototype,"size",void 0),o([r(J)],oo.prototype,"sizeMix",void 0),o([r(K)],oo.prototype,"opacity",void 0),o([r(N)],oo.prototype,"opacityMix",void 0),o([r(Q)],oo.prototype,"color",void 0),o([r(X)],oo.prototype,"colorMix",void 0),o([r(Y)],oo.prototype,"haloColor",void 0),o([r(Z)],oo.prototype,"haloColorMix",void 0),o([r($)],oo.prototype,"haloBlur",void 0),o([r(_)],oo.prototype,"haloBlurMix",void 0),o([a],oo.prototype,"iconType",void 0),o([t(0,s(U))],oo.prototype,"vertex",null),o([t(0,s(G))],oo.prototype,"fragment",null);export{oo as VTLShaderIcon};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as t,__param as o}from"tslib";import{GraphShaderModule as e,FragmentOutput as i,location as l,uniform as p,define as r,option as a,input as s,FragmentInput as d,VertexInput as y,UniformGroup as n}from"../../../GraphShaderModule.js";import{Vec2 as u,Float as v,Vec3 as c,Vec4 as h,dot as f,length as m,clamp as w,fract as x,mix as b,texture2D as g,Mat3 as T,Sampler2D as M}from"../../../graph/glsl.js";import{rgba2float as z}from"../utils.js";const I=1/31,L=15.5,S=8;class O extends y{}t([l(0,u)],O.prototype,"position",void 0),t([l(1,h)],O.prototype,"extrudeOffset",void 0),t([l(2,h)],O.prototype,"directionNormal",void 0),t([l(3,u)],O.prototype,"accumulatedDistance",void 0),t([l(4,h)],O.prototype,"color",void 0),t([l(5,v)],O.prototype,"width",void 0),t([l(6,v)],O.prototype,"opacity",void 0),t([l(7,v)],O.prototype,"blur",void 0),t([l(8,v)],O.prototype,"offset",void 0),t([l(9,h)],O.prototype,"tlbr",void 0),t([l(10,h)],O.prototype,"colorTo",void 0),t([l(11,v)],O.prototype,"widthTo",void 0),t([l(12,v)],O.prototype,"opacityTo",void 0),t([l(13,v)],O.prototype,"blurTo",void 0),t([l(14,v)],O.prototype,"offsetTo",void 0);class W extends n{}t([p(T)],W.prototype,"displayMat3",void 0),t([p(T)],W.prototype,"displayViewMat3",void 0),t([p(u)],W.prototype,"lineTranslation",void 0),t([p(v)],W.prototype,"depth",void 0),t([p(v)],W.prototype,"antialiasing",void 0);class R extends n{}t([p(u)],R.prototype,"mosaicSize",void 0),t([p(M)],R.prototype,"texture",void 0);class C extends n{}t([p(v)],C.prototype,"zoomFactor",void 0),t([p(T)],C.prototype,"dvsMat3",void 0);class D extends n{}t([p(h)],D.prototype,"value",void 0);class B extends n{}t([p(h)],B.prototype,"value",void 0);class j extends n{}t([p(v)],j.prototype,"value",void 0);class F extends n{}t([p(v)],F.prototype,"value",void 0);class N extends n{}t([p(v)],N.prototype,"value",void 0);class V extends n{}t([p(v)],V.prototype,"value",void 0);class G extends n{}t([p(v)],G.prototype,"value",void 0);class P extends n{}t([p(v)],P.prototype,"value",void 0);class k extends n{}t([p(v)],k.prototype,"value",void 0);class q extends n{}t([p(h)],q.prototype,"value",void 0);class A extends n{}t([p(h)],A.prototype,"value",void 0);class E extends e{constructor(){super(...arguments),this.type="VTLShaderLine"}vertex(t){const o=this.getColor(t).multiply(this.getOpacity(t)),e=this.getBlur(t).add(this.layerInfo.antialiasing),i=t.directionNormal.zw.multiply(I);let l=this.getTLBR(t);const p=this.getWidth(t);let r=new u(0),a=new v(1);1!==this.lineType&&2!==this.lineType||(r=new u(l.z.subtract(l.x),l.y.subtract(l.w)),l=l.divide(this.page.mosaicSize.xyxy),a=1===this.lineType?p.divide(r.y):p.divide(L).multiply(.5));const s=new v(p.add(this.layerInfo.antialiasing)).multiply(.5),d=t.directionNormal.xy.multiply(I),y=t.extrudeOffset.zw.multiply(I).multiply(this.getOffset(t)),n=s.multiply(I).multiply(t.extrudeOffset.xy),m=new v(S).divide(this.tileInfo.zoomFactor),w=this.tileInfo.dvsMat3.multiply(new c(t.position.add(y.multiply(m)),1)),x=new c(this.layerInfo.displayViewMat3.multiply(new c(n,0))).add(this.layerInfo.displayMat3.multiply(new c(this.layerInfo.lineTranslation,0))),b=w.add(x),g=new h(b.xy,this.layerInfo.depth,1);let T=new v(0);return 1!==this.lineType&&2!==this.lineType||(T=t.accumulatedDistance.x.multiply(this.tileInfo.zoomFactor.divide(new v(S))).add(f(d,n.add(y)))),{glPosition:g,color:o,tlbr:l,normal:i,patternSize:r,widthRatio:a,halfLineWidth:s,blur:e,accumulatedDistance:T}}fragment(t){const o=new i,e=m(t.normal).multiply(t.halfLineWidth),l=new v(t.halfLineWidth.subtract(e)).divide(t.blur),p=w(l,new v(0),new v(1));if(1===this.lineType){const e=x(t.accumulatedDistance.divide(t.patternSize.x.multiply(t.widthRatio))),i=new v(.5).add(t.normal.y.multiply(t.halfLineWidth.divide(t.patternSize.y.multiply(t.widthRatio)))),l=b(t.tlbr.xy,t.tlbr.zw,new u(e,i)),r=g(this.page.texture,l);o.fragColor=r.multiply(p).multiply(t.color.a)}else if(2===this.lineType){const e=x(t.accumulatedDistance.multiply(.5).divide(t.patternSize.x.multiply(t.widthRatio))),i=new v(.5).add(new v(.25).multiply(t.normal.y)),l=b(t.tlbr.xy,t.tlbr.zw,new u(e,i)),r=z(g(this.page.texture,l)).subtract(new v(.5)).multiply(t.halfLineWidth.add(this.layerInfo.antialiasing.multiply(.5)));o.fragColor=p.multiply(w(new v(.5).subtract(r),new v(0),new v(1))).multiply(t.color)}else o.fragColor=t.color.multiply(p);return o}getColor(t){return this.colorMix?.value&&t.color&&t.colorTo?b(t.color,t.colorTo,this.colorMix.value):t.color?t.color:this.color?.value||new h(0)}getWidth(t){return this.widthMix?.value&&t.width&&t.widthTo?b(t.width,t.widthTo,this.widthMix.value):t.width?t.width:this.width?.value||new v(0)}getBlur(t){return this.blurMix?.value&&t.blur&&t.blurTo?b(t.blur,t.blurTo,this.blurMix.value):t.blur?t.blur:this.blur?.value||new v(0)}getOpacity(t){return this.opacityMix?.value&&t.opacity&&t.opacityTo?b(t.opacity,t.opacityTo,this.opacityMix.value):t.opacity?t.opacity:this.opacity?.value||new v(1)}getOffset(t){return this.offsetMix?.value&&t.offset&&t.offsetTo?b(t.offset,t.offsetTo,this.offsetMix.value):t.offset?t.offset:this.offset?.value||new v(0)}getTLBR(t){return t.tlbr?t.tlbr:this.tlbr?.value||new h(0)}}t([r],E.prototype,"lineType",void 0),t([p(W)],E.prototype,"layerInfo",void 0),t([p(C)],E.prototype,"tileInfo",void 0),t([a(R)],E.prototype,"page",void 0),t([a(D)],E.prototype,"color",void 0),t([a(D)],E.prototype,"colorMix",void 0),t([a(j)],E.prototype,"width",void 0),t([a(F)],E.prototype,"widthMix",void 0),t([a(N)],E.prototype,"opacity",void 0),t([a(V)],E.prototype,"opacityMix",void 0),t([a(G)],E.prototype,"blur",void 0),t([a(P)],E.prototype,"blurMix",void 0),t([a(k)],E.prototype,"offset",void 0),t([a(q)],E.prototype,"offsetMix",void 0),t([a(A)],E.prototype,"tlbr",void 0),t([o(0,s(O))],E.prototype,"vertex",null),t([o(0,s(d))],E.prototype,"fragment",null);export{E as VTLShaderLine};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o,__param as t}from"tslib";import{GraphShaderModule as e,FragmentOutput as i,location as p,uniform as r,option as l,input as s,VertexInput as a,UniformGroup as n,FragmentInput as y}from"../../../GraphShaderModule.js";import{Float as c,Vec3 as d,Vec4 as v,length as u,smoothstep as m,mix as h,Vec2 as x,Mat3 as f}from"../../../graph/glsl.js";const g=new c(1/15);class w extends a{}o([p(0,x)],w.prototype,"position",void 0),o([p(1,x)],w.prototype,"offset",void 0),o([p(2,x)],w.prototype,"normal",void 0),o([p(3,v)],w.prototype,"color",void 0),o([p(4,c)],w.prototype,"opacity",void 0),o([p(5,v)],w.prototype,"colorTo",void 0),o([p(6,c)],w.prototype,"opacityTo",void 0);class M extends y{}class T extends n{}o([r(f)],T.prototype,"dvsMat3",void 0),o([r(f)],T.prototype,"displayMat3",void 0);class C extends n{}o([r(x)],C.prototype,"fillTranslation",void 0),o([r(c)],C.prototype,"depth",void 0),o([r(c)],C.prototype,"outlineWidth",void 0);class O extends n{}o([r(c)],O.prototype,"value",void 0);class j extends n{}o([r(c)],j.prototype,"value",void 0);class S extends n{}o([r(v)],S.prototype,"value",void 0);class W extends n{}o([r(c)],W.prototype,"value",void 0);class b extends e{constructor(){super(...arguments),this.type="VTLShaderOutline"}vertex(o){const t=this.getColor(o).multiply(this.getOpacity(o)),{normal:e,offset:i}=o,{dvsMat3:p,displayMat3:r}=this.transform,{depth:l,outlineWidth:s,fillTranslation:a}=this.config,n=s.multiply(g).multiply(i),y=new d(p.multiply(new d(o.position,1))).add(r.multiply(new d(n.add(a),0)));return{glPosition:new v(y.xy,l,new c(1)),color:t,normal:e}}fragment(o){const t=new i,{color:e,normal:p}=o,r=u(p),l=m(new c(1),new c(0),r);return t.fragColor=e.multiply(l),t}getColor(o){return this.colorMix?.value&&o.color&&o.colorTo?h(o.color,o.colorTo,this.colorMix.value):o.color?o.color:this.color?.value||new v(0)}getOpacity(o){return this.opacityMix?.value&&o.opacity&&o.opacityTo?h(o.opacity,o.opacityTo,this.opacityMix.value):o.opacity?o.opacity:this.opacity?.value||new c(1)}}o([r(T)],b.prototype,"transform",void 0),o([r(C)],b.prototype,"config",void 0),o([l(O)],b.prototype,"opacity",void 0),o([l(j)],b.prototype,"opacityMix",void 0),o([l(S)],b.prototype,"color",void 0),o([l(W)],b.prototype,"colorMix",void 0),o([t(0,s(w))],b.prototype,"vertex",null),o([t(0,s(M))],b.prototype,"fragment",null);export{b as VTLShaderOutline};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o,__param as t}from"tslib";import{GraphShaderModule as e,FragmentOutput as i,location as l,uniform as p,option as a,input as r,VertexInput as d,UniformGroup as s,FragmentInput as n}from"../../../GraphShaderModule.js";import{mod as y,Float as v,unpackVec4 as h,ifElse as u,greaterThan as c,clamp as x,step as w,lessThan as m,Vec3 as g,Vec4 as M,texture2D as T,smoothstep as f,mix as z,Mat3 as W,Vec2 as C,Sampler2D as B}from"../../../graph/glsl.js";import{oneMinus as S}from"../utils.js";class H extends d{}o([l(0,M)],H.prototype,"positionAndOffset",void 0),o([l(1,M)],H.prototype,"iconInfo",void 0),o([l(2,v)],H.prototype,"size",void 0),o([l(3,v)],H.prototype,"opacity",void 0),o([l(4,M)],H.prototype,"color",void 0),o([l(5,M)],H.prototype,"haloColor",void 0),o([l(6,v)],H.prototype,"haloWidth",void 0),o([l(7,v)],H.prototype,"haloBlur",void 0),o([l(8,v)],H.prototype,"sizeTo",void 0),o([l(9,v)],H.prototype,"opacityTo",void 0),o([l(10,M)],H.prototype,"colorTo",void 0),o([l(11,M)],H.prototype,"haloColorTo",void 0),o([l(12,v)],H.prototype,"haloWidthTo",void 0),o([l(13,v)],H.prototype,"haloBlurTo",void 0),o([l(14,v)],H.prototype,"opacityInfo",void 0);class b extends n{}class D extends s{}o([p(W)],D.prototype,"dvsMat3",void 0),o([p(W)],D.prototype,"displayMat3",void 0),o([p(W)],D.prototype,"displayViewMat3",void 0),o([p(v)],D.prototype,"mapRotation",void 0);class I extends s{}o([p(v)],I.prototype,"halo",void 0),o([p(v)],I.prototype,"depth",void 0),o([p(v)],I.prototype,"level",void 0),o([p(v)],I.prototype,"keepUpright",void 0),o([p(v)],I.prototype,"fadeDuration",void 0),o([p(v)],I.prototype,"time",void 0),o([p(v)],I.prototype,"isStencilPass",void 0),o([p(v)],I.prototype,"antialiasingWidth",void 0),o([p(C)],I.prototype,"textTranslation",void 0);class O extends s{}o([p(C)],O.prototype,"mosaicSize",void 0),o([p(B)],O.prototype,"texture",void 0);class j extends s{}o([p(v)],j.prototype,"value",void 0);class V extends s{}o([p(v)],V.prototype,"value",void 0);class k extends s{}o([p(M)],k.prototype,"value",void 0);class A extends s{}o([p(M)],A.prototype,"value",void 0);class P extends s{}o([p(M)],P.prototype,"value",void 0);class R extends s{}o([p(M)],R.prototype,"value",void 0);class U extends s{}o([p(v)],U.prototype,"value",void 0);class G extends s{}o([p(v)],G.prototype,"value",void 0);class L extends s{}o([p(v)],L.prototype,"value",void 0);class q extends s{}o([p(v)],q.prototype,"value",void 0);class E extends s{}o([p(v)],E.prototype,"value",void 0);class F extends s{}o([p(v)],F.prototype,"value",void 0);const J=new v(1/8),K=new v(1/24),N=new v(3),Q=new v(.75);class X extends e{constructor(){super(...arguments),this.type="VTLShaderText"}vertex(o){const t=this.getSize(o),e=this.getHaloColor(o),i=this.getColor(o);let l=this.getHaloWidth(o),p=this.getHaloBlur(o);const a=this.getOpacity(o),{iconInfo:r,opacityInfo:d,positionAndOffset:s}=o,{dvsMat3:n,displayViewMat3:T,displayMat3:f,mapRotation:z}=this.transform,{antialiasingWidth:W,depth:C,halo:B,level:H,keepUpright:b,fadeDuration:D,textTranslation:I,time:O}=this.config,{mosaicSize:j}=this.page,V=y(d,new v(128)),k=d.subtract(V).divide(new v(128)),A=V.divide(new v(127)),[P,R]=h(r,8);let U=u(c(B,new v(.5)),e.multiply(a),i.multiply(a));l=u(c(B,new v(.5)),l.multiply(N),new v(0)),p=u(c(B,new v(.5)),p.multiply(N),new v(0));const G=x(A.add(new v(2).multiply(k.subtract(new v(.5)).multiply(O.divide(D)))),new v(0),new v(1));U=U.multiply(G);const L=R[1],q=R[2],E=R[3],F=P.xy.divide(j),X=P.z,Y=P.w,Z=y(L.add(z),new v(256));let $=new v(0);$=u(m(X,Y),S(w(b,new v(0))).multiply(w(Y,Z).add(S(w(X,Z)))),S(w(b,new v(0))).multiply(w(Y,Z).multiply(S(w(X,Z))))),$=$.add(S(w(q,H))),$=$.add(w(E,H)),$=$.add(w(U[3],new v(0)));const _=Q.subtract(l.divide(t)),oo=W.add(p).divide(t),to=n.multiply(new g(s.xy,new v(1))).add(T.multiply(K).multiply(new g(J.multiply(t.multiply(s.zw)),new v(0)))).add(f.multiply(new g(I,0)));return{glPosition:new M(to.xy,C.add($),new v(1)),color:U,tex:F,edgeDistance:_,edgeWidth:oo}}fragment(o){const t=new i,{color:e,tex:l,edgeDistance:p,edgeWidth:a}=o,{texture:r}=this.page,d=T(r,l).a,s=f(p.subtract(a),p.add(a),d);return t.fragColor=e.multiply(s),t}getSize(o){return this.sizeMix?.value&&o.size&&o.sizeTo?z(o.size,o.sizeTo,this.sizeMix.value):o.size?o.size:this.size?.value||new v(0)}getHaloColor(o){return this.haloColorMix?.value&&o.haloColor&&o.haloColorTo?z(o.haloColor,o.haloColorTo,this.haloColorMix.value):o.haloColor?o.haloColor:this.haloColor?.value||new M(0)}getHaloBlur(o){return this.haloBlurMix?.value&&o.haloBlur&&o.haloBlurTo?z(o.haloBlur,o.haloBlurTo,this.haloBlurMix.value):o.haloBlur?o.haloBlur:this.haloBlur?.value||new v(0)}getHaloWidth(o){return this.haloWidthMix?.value&&o.haloWidth&&o.haloWidthTo?z(o.haloWidth,o.haloWidthTo,this.haloWidthMix.value):o.haloWidth?o.haloWidth:this.haloWidth?.value||new v(0)}getColor(o){return this.colorMix?.value&&o.color&&o.colorTo?z(o.color,o.colorTo,this.colorMix.value):o.color?o.color:this.color?.value||new M(0)}getOpacity(o){return this.opacityMix?.value&&o.opacity&&o.opacityTo?z(o.opacity,o.opacityTo,this.opacityMix.value):o.opacity?o.opacity:this.opacity?.value||new v(1)}}o([p(D)],X.prototype,"transform",void 0),o([p(I)],X.prototype,"config",void 0),o([p(O)],X.prototype,"page",void 0),o([a(E)],X.prototype,"size",void 0),o([a(k)],X.prototype,"color",void 0),o([a(P)],X.prototype,"haloColor",void 0),o([a(U)],X.prototype,"haloWidth",void 0),o([a(G)],X.prototype,"haloBlur",void 0),o([a(j)],X.prototype,"opacity",void 0),o([a(F)],X.prototype,"sizeMix",void 0),o([a(A)],X.prototype,"colorMix",void 0),o([a(R)],X.prototype,"haloColorMix",void 0),o([a(L)],X.prototype,"haloWidthMix",void 0),o([a(q)],X.prototype,"haloBlurMix",void 0),o([a(V)],X.prototype,"opacityMix",void 0),o([t(0,r(H))],X.prototype,"vertex",null),o([t(0,r(b))],X.prototype,"fragment",null);export{X as VTLShaderText};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{nextPowerOfTwo as t}from"../../../../../../../core/mathUtils.js";import{create as e}from"../../../../../../../core/libs/gl-matrix-2/factories/mat3f32.js";import{fromValues as r}from"../../../../../../../core/libs/gl-matrix-2/factories/vec4f32.js";import{vtlTextureBindingUnitSprites as s,vtlHighResCutoff as o}from"../../../definitions.js";import{Mesh as i}from"../../../meshing/Mesh.js";import{simplePipelineState as a}from"../../utils.js";import{Technique as n}from"../Technique.js";import{VTLShaderBackground as l}from"../shaders/vector-tiles/VTLShaderBackground.js";import{PrimitiveType as c}from"../../../../../../webgl/enums.js";class u extends n{constructor(){super(...arguments),this.type=35,this._color=r(1,0,0,1),this._patternMatrix=e(),this._mesh=null,this.shaders={background:new l}}render(r,i){if(0===i.tiles.length)return;this._loadResources(r);const{context:n,displayLevel:l,painter:c,spriteMosaic:u,state:h,styleLayer:m}=r,d=m,p=d.backgroundMaterial,f=d.getPaintValue("background-color",l),g=d.getPaintValue("background-opacity",l),y=d.getPaintValue("background-pattern",l),_=void 0!==y;let M,b;const x=(1|window.devicePixelRatio)>o?2:1,w={layerInfo:{depth:d.z,coordRange:i.tiles[0].rangeX},tileInfo:{dvsMat:h.displayViewMat3},solidColor:null,pattern:null,patternMat:{mat:e()}};if(_){const t=u.getMosaicItemPosition(y,!0);if(null!=t){const{tl:e,br:r,page:o}=t;M=r[0]-e[0],b=r[1]-e[1];const i=u.getPageSize(o);null!=i&&(u.bind(n,9729,o,s),w.pattern={tlbr:[e[0],e[1],r[0],r[1]],mosaicSize:i,texture:{texture:u.getTexture(o),unit:s},opacity:g})}}else{const t=f[3]*g;this._color[0]=t*f[0],this._color[1]=t*f[1],this._color[2]=t*f[2],this._color[3]=t,w.solidColor={color:this._color}}c.setPipelineState(a);for(const e of i.tiles){if(w.tileInfo.dvsMat=e.transforms.displayViewScreenMat3,w.layerInfo.coordRange=e.rangeX,_){const r=Math.max(2**(Math.round(l)-e.key.level),1),s=x*e.width*r,o=s/t(M),i=s/t(b);this._patternMatrix[0]=o,this._patternMatrix[4]=i,w.patternMat={mat:this._patternMatrix}}const r={shader:this.shaders.background,uniforms:w,defines:{renderMode:_?1:0},optionalAttributes:p.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:p.getPrecisionFactors()};c.submitDrawMeshUntyped(n,r,this._mesh,{stencilRef:e.stencilRef})}}shutdown(){this._mesh&&(this._mesh.destroy(),this._mesh=null)}_loadResources(t){if(this._mesh)return;const{context:e,styleLayer:r}=t,s=r,o=new Int16Array([0,0,1,0,0,1,1,1]),a=s.backgroundMaterial.geometryLayout;if(!a)return;const n={vertex:{geometryVB:{data:o,layout:a}},groups:[{primitive:c.TRIANGLE_STRIP}],parts:[{group:0,start:0,count:4}]};this._mesh=new i(e,n)}}export{u as VTLTechniqueBackground};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{simplePipelineState as e}from"../../utils.js";import{Technique as t}from"../Technique.js";import{VTLShaderCircle as s}from"../shaders/vector-tiles/VTLShaderCircle.js";class l extends t{constructor(){super(...arguments),this.type=36,this._mesh=null,this.shaders={circle:new s}}shutdown(){this._mesh&&(this._mesh.destroy(),this._mesh=null)}render(t,s){const{context:l,displayLevel:i,painter:r,requiredLevel:n,spriteMosaic:a,state:o,styleLayer:c,styleLayerUID:u}=t,{tiles:h}=s;if(!h.some(e=>e.layerData.get(u)?.circleIndexCount??!1))return;const d=c,{circleMaterial:f}=d,m=1.2,p=d.getPaintValue("circle-translate",i),y={transform:{dvsMat:null,displayMat:1===d.getPaintValue("circle-translate-anchor",i)?o.displayMat3:o.displayViewMat3},styleLayerConfig:{circleTranslation:p,depth:d.z,antialiasingWidth:m},radius:null,radiusMix:null,blur:null,blurMix:null,opacity:null,opacityMix:null,strokeOpacity:null,strokeOpacityMix:null,strokeWidth:null,strokeWidthMix:null,color:null,colorMix:null,strokeColor:null,strokeColorMix:null};let M=-1;for(const x of h){if(!x.layerData.has(u))continue;if(y.transform.dvsMat=x.transforms.displayViewScreenMat3,x.key.level!==M){M=x.key.level;const e=f.getUniforms();for(const t of e){const e=t.getValue(d,i,M,a);t.name in y&&(y[t.name]={value:e})}}const t=x.layerData.get(u);if(!t.circleIndexCount)continue;if(this._mesh=t.getMesh(l),!this._mesh)continue;const s=n!==x.key.level?514:516,o=n!==x.key.level?x.stencilRef:255;r.setPipelineState({...e,stencil:{write:!1,test:{compare:s,op:{fail:7680,zFail:7680,zPass:7681},mask:255}}}),r.setStencilRef(l,o);const c={shader:this.shaders.circle,uniforms:y,defines:null,optionalAttributes:f.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:f.getPrecisionFactors()};r.submitDrawMeshUntyped(l,c,this._mesh,{stencilRef:x.stencilRef})}}}export{l as VTLTechniqueCircle};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{vtlTextureBindingUnitSprites as t,vtlHighResCutoff as e}from"../../../definitions.js";import{Technique as i}from"../Technique.js";import{VTLShaderFill as l}from"../shaders/vector-tiles/VTLShaderFill.js";import{VTLShaderOutline as s}from"../shaders/vector-tiles/VTLShaderOutline.js";const n=1/65536;class a extends i{constructor(){super(...arguments),this.type=37,this._fillMesh=null,this._outlineMesh=null,this.shaders={fill:new l,outline:new s}}shutdown(){this._fillMesh&&(this._fillMesh.destroy(),this._fillMesh=null),this._outlineMesh&&(this._outlineMesh.destroy(),this._outlineMesh=null)}render(t,e){const{displayLevel:i,renderPass:l,spriteMosaic:s,styleLayer:n,styleLayerUID:a}=t,{tiles:o}=e;let r=!1;for(const x of o)if(x.layerData.has(a)){const t=x.layerData.get(a);if(t.fillIndexCount>0||t.outlineIndexCount>0){r=!0;break}}if(!r)return;const u=n,c=u.getPaintProperty("fill-pattern"),f=void 0!==c,p=f&&c.isDataDriven;let h;if(f&&!p){const t=c.getValue(i);h=s.getMosaicItemPosition(t,!0)}const d=!f&&u.getPaintValue("fill-antialias",i);let M=!0,y=1;if(!f){const t=u.getPaintProperty("fill-color"),e=u.getPaintProperty("fill-opacity");if(!t?.isDataDriven&&!e?.isDataDriven){const t=u.getPaintValue("fill-color",i);y=u.getPaintValue("fill-opacity",i)*t[3],y>=1&&(M=!1)}}if(M&&"opaque"===l)return;const g=u.getPaintValue("fill-translate",i),m=u.getPaintValue("fill-translate-anchor",i);(M||"translucent"!==l)&&this._drawFill(t,a,u,o,g,m,f,h,p);const v=!u.hasDataDrivenOutlineColor&&u.outlineUsesFillColor&&y<1;d&&"opaque"!==l&&!v&&this._drawOutline(t,a,u,o,g,m)}_drawFill(i,l,s,n,a,o,r,u,c){if(r&&!c&&null==u)return;const{context:f,displayLevel:p,state:h,painter:d,pixelRatio:M,spriteMosaic:y}=i,g=M>e?2:1,m=s.fillMaterial,v={transform:{dvsMat:null,displayMat:1===o?h.displayMat3:h.displayViewMat3},config:{depth:s.z,fillTranslation:a},patternOptions:c||r&&null!=u?{mosaicSize:[0,0],patternFactor:1,tlbr:[0,0,0,0],texture:{texture:null,unit:0}}:null,color:null,opacity:null,colorMix:null,opacityMix:null},x=r?1:0;if(null!=u){const{page:e,tl:i,br:l}=u,s=i[0],n=l[1],a=l[0],o=i[1],r=y.getPageSize(e);null!=r&&(y.bind(f,9729,e,t),v.patternOptions={mosaicSize:[r[0],r[1]],patternFactor:1,tlbr:[s,n,a,o],texture:{texture:y.getTexture(e),unit:t}})}let _=-1;for(const e of n){if(!e.layerData.has(l))continue;if(e.key.level!==_){_=e.key.level;const t=m.getUniforms();for(const e of t){const t=e.getValue(s,p,_,y);v[e.name]={value:t}}if(r&&null!=v.patternOptions){const t=Math.max(2**(Math.round(p)-e.key.level),1),i=e.rangeX/(g*e.width*t);v.patternOptions.patternFactor=i}}const i=e.layerData.get(l);if(this._fillMesh=i.getMesh(f,{value:0}),!this._fillMesh)continue;const{transform:n}=v;n.dvsMat=e.transforms.displayViewScreenMat3;const a={shader:this.shaders.fill,uniforms:v,defines:{fillType:x},optionalAttributes:m.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:m.getPrecisionFactors()};if(c){const l=v.patternOptions,s=i.patternMap;if(!s||null==l)continue;let n=0;for(const[i,o]of s){const s=y.getPageSize(i);null!=s&&(y.bind(f,9729,i,t),l.mosaicSize=s,l.texture={texture:y.getTexture(i),unit:t},d.submitDrawMeshUntyped(f,a,this._fillMesh,{stencilRef:e.stencilRef,parts:[n++]}))}}else d.submitDrawMeshUntyped(f,a,this._fillMesh,{stencilRef:e.stencilRef});e.triangleCount+=i.fillIndexCount/3}}_drawOutline(t,e,i,l,s,a){const{context:o,displayLevel:r,state:u,spriteMosaic:c,painter:f,pixelRatio:p}=t,h=i.outlineMaterial,d=.75/p,M={transform:{dvsMat3:null,displayMat3:1===a?u.displayMat3:u.displayViewMat3},config:{depth:i.z+n,fillTranslation:s,outlineWidth:d},color:null,opacity:null,colorMix:null,opacityMix:null};let y=-1;for(const n of l){if(!n.layerData.has(e))continue;if(n.key.level!==y){y=n.key.level;const t=h.getUniforms();for(const e of t){const t=e.getValue(i,r,y,c);e.name in M&&(M[e.name]={value:t})}}const t=n.layerData.get(e);if(this._outlineMesh=t.getMesh(o,{value:1}),null==this._outlineMesh)continue;const{transform:l}=M;l.dvsMat3=n.transforms.displayViewScreenMat3;const s={shader:this.shaders.outline,uniforms:M,defines:{},optionalAttributes:h.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:h.getPrecisionFactors()};f.submitDrawMeshUntyped(o,s,this._outlineMesh,{stencilRef:n.stencilRef}),n.triangleCount+=t.outlineIndexCount/3}}}export{a as VTLTechniqueFill};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{vtlTextureBindingUnitSprites as e}from"../../../definitions.js";import{Technique as t}from"../Technique.js";import{VTLShaderLine as i}from"../shaders/vector-tiles/VTLShaderLine.js";class s extends t{constructor(){super(...arguments),this.type=38,this._mesh=null,this.shaders={line:new i}}shutdown(){this._mesh&&(this._mesh.destroy(),this._mesh=null)}render(t,i){const{context:s,displayLevel:n,painter:l,pixelRatio:a,spriteMosaic:o,state:r,styleLayer:u,styleLayerUID:c}=t,{tiles:f}=i;if(!f.some(e=>e.layerData.get(c)?.lineIndexCount??!1))return;const h=u,p=h.lineMaterial,d=h.getPaintValue("line-translate",n),y=h.getPaintValue("line-translate-anchor",n),m=1/a,g={layerInfo:{displayViewMat3:r.displayViewMat3,displayMat3:1===y?r.displayMat3:r.displayViewMat3,lineTranslation:d,depth:h.z,antialiasing:m},tileInfo:{dvsMat3:null,zoomFactor:1},page:null,color:null,width:null,opacity:null,blur:null,offset:null,colorMix:null,widthMix:null,opacityMix:null,blurMix:null,offsetMix:null,tlbr:null},M=h.getPaintProperty("line-pattern"),x=void 0!==M,v=x&&M.isDataDriven;let D,P;if(x&&!v){const e=M.getValue(n);D=o.getMosaicItemPosition(e)}let V=!1;if(!x){const e=h.getPaintProperty("line-dasharray");if(P=void 0!==e,V=P&&e.isDataDriven,P&&!V){const t=e.getValue(n),i=h.getDashKey(t,h.getLayoutValue("line-cap",n));D=o.getMosaicItemPosition(i)}}const w=x?1:P?2:0;if(null!=D){const{page:t}=D,i=o.getPageSize(t);if(null!=i){o.bind(s,9729,t,e);const n={texture:{texture:o.getTexture(t),unit:e},mosaicSize:[i[0],i[1]]};g.page=n}}const{tileInfo:b}=g;let I=-1;for(const _ of f){if(!_.layerData.has(c))continue;if(b.dvsMat3=_.transforms.displayViewScreenMat3,_.key.level!==I){I=_.key.level;const e=p.getUniforms();for(const t of e){const e=t.getValue(h,n,I,o);t.name in g&&(g[t.name]={value:e})}}const t=2**(n-I)/a;b.zoomFactor=t;const i=_.layerData.get(c);if(!i.lineIndexCount)continue;if(this._mesh=i.getMesh(s),!this._mesh)continue;const r={shader:this.shaders.line,uniforms:g,defines:{lineType:w},optionalAttributes:p.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:p.getPrecisionFactors()};if(v||V){const t=i.patternMap;if(!t)continue;let n=0;for(const i of t.keys()){const t=o.getPageSize(i);null!=t&&(o.bind(s,9729,i,e),g.page={texture:{texture:o.getTexture(i),unit:e},mosaicSize:[t[0],t[1]]},l.submitDrawMeshUntyped(s,r,this._mesh,{stencilRef:_.stencilRef,parts:[n++]}))}}else l.submitDrawMeshUntyped(s,r,this._mesh,{stencilRef:_.stencilRef})}}}export{s as VTLTechniqueLine};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{fadeDuration as e}from"../../../../vectorTiles/decluttering/config.js";import{vtlTextureBindingUnitSprites as t,vtlTextureBindingUnitGlyphs as i}from"../../../definitions.js";import{degToByte as a}from"../../../GeometryUtils.js";import{Technique as s}from"../Technique.js";import{VTLShaderIcon as l}from"../shaders/vector-tiles/VTLShaderIcon.js";import{VTLShaderText as n}from"../shaders/vector-tiles/VTLShaderText.js";const o=1/65536;class r extends s{constructor(){super(...arguments),this.type=39,this._iconMesh=null,this._textMesh=null,this.shaders={icon:new l,text:new n}}shutdown(){this._iconMesh&&(this._iconMesh.destroy(),this._iconMesh=null),this._textMesh&&(this._textMesh.destroy(),this._textMesh=null)}render(e,t){const{painter:i}=e,a=e.styleLayer,{tiles:s}=t,l=i.getPipelineState();this._setRenderState(e),this._drawIcons(e,a,s),this._drawText(e,a,s),i.setPipelineState(l)}_drawIcons(i,s,l){const{context:n,displayLevel:o,spriteMosaic:r,state:c,styleLayerUID:u}=i,h=s.iconMaterial;let p,g=!1;for(const e of l)if(e.layerData.has(u)&&(p=e.layerData.get(u),p.iconPerPageElementsMap.size>0)){g=!0;break}if(!g)return;const d=s.getPaintValue("icon-translate",o),y=s.getPaintValue("icon-translate-anchor",o);let f=s.getLayoutValue("icon-rotation-alignment",o);2===f&&(f=0===s.getLayoutValue("symbol-placement",o)?1:0);const m=0===f,M=s.getLayoutValue("icon-keep-upright",o)&&m,x=p.isIconSDF,P={transform:{dvsMat3:null,displayViewMat3:0===f?c.displayViewMat3:c.displayMat3,displayMat3:1===y?c.displayMat3:c.displayViewMat3,mapRotation:a(c.rotation)},config:{depth:s.z,iconTranslation:d,level:10*o,keepUpright:M?1:0,fadeDuration:e/1e3,isStencilPass:i.stencilSymbols?1:0,time:null},page:{mosaicSize:null,texture:{texture:null,unit:t}},color:null,opacity:null,haloBlur:null,haloColor:null,haloWidth:null,size:null,colorMix:null,opacityMix:null,haloBlurMix:null,haloColorMix:null,haloWidthMix:null,sizeMix:null};let D=-1;for(const e of l)if(e.layerData.has(u)){if(e.key.level!==D){D=e.key.level;const t=h.getUniforms();for(const e of t){const t=e.getValue(s,o,D,r);P[e.name]={value:t}}}if(p=e.layerData.get(u),0!==p.iconPerPageElementsMap.size&&(this._iconMesh=p.getMesh(n,{value:0}),this._iconMesh)){p.updateOpacityInfo(),P.transform.dvsMat3=e.transforms.displayViewScreenMat3,P.config.time=(performance.now()-p.lastOpacityUpdate)/1e3;for(const[t,a]of p.iconPerPageElementsMap)this._renderIconRange(i,h,a,t,e,P,this._iconMesh,x)}}}_drawText(t,s,l){const{context:n,displayLevel:r,glyphMosaic:c,spriteMosaic:u,pixelRatio:h,state:p,styleLayerUID:g,requestRender:d,allowDelayedRender:y}=t,f=s.textMaterial;let m,M=!1;for(const e of l)if(e.layerData.has(g)&&(m=e.layerData.get(g),m.glyphPerPageElementsMap.size>0)){M=!0;break}if(!M)return;const x=s.getPaintProperty("text-opacity");if(x&&!x.isDataDriven&&0===x.getValue(r))return;const P=s.getPaintProperty("text-color"),D=P&&P.getValue(r),_=!P||P.isDataDriven||D&&4===D.length&&D[3]>0,w=s.getPaintProperty("text-halo-width"),V=s.getPaintProperty("text-halo-color"),v=V&&V.getValue(r),S=(!w||w.isDataDriven||w.getValue(r)>0)&&(!V||V.isDataDriven||v&&4===v.length&&v[3]>0);if(!_&&!S)return;const b=24/8;let z=s.getLayoutValue("text-rotation-alignment",r);2===z&&(z=0===s.getLayoutValue("symbol-placement",r)?1:0);const R=0===z,T=s.getLayoutValue("text-keep-upright",r)&&R,U=.8*b/h;this._glyphTextureSize||(this._glyphTextureSize=[c.width/4,c.height/4]);const L=s.getPaintValue("text-translate",r),k=s.getPaintValue("text-translate-anchor",r);if(y&&null!=d)return void d();const C={transform:{dvsMat3:null,displayViewMat3:0===z?p.displayViewMat3:p.displayMat3,displayMat3:1===k?p.displayMat3:p.displayViewMat3,mapRotation:a(p.rotation)},config:{depth:s.z+o,textTranslation:L,keepUpright:T?1:0,level:10*r,fadeDuration:e/1e3,antialiasingWidth:U,time:null,halo:null,isStencilPass:t.stencilSymbols?1:0},page:{mosaicSize:null,texture:{texture:null,unit:i}},size:null,color:null,haloColor:null,opacity:null,haloWidth:null,haloBlur:null,sizeMix:null,colorMix:null,haloColorMix:null,opacityMix:null,haloWidthMix:null,haloBlurMix:null};let I=-1;for(const e of l)if(e.layerData.has(g)){if(e.key.level!==I){I=e.key.level;const t=f.getUniforms();for(const e of t){const t=e.getValue(s,r,I,u);e.name in C&&(C[e.name]={value:t})}}m=e.layerData.get(g),0!==m.glyphPerPageElementsMap.size&&(C.transform.dvsMat3=e.transforms.displayViewScreenMat3,C.config.time=(performance.now()-m.lastOpacityUpdate)/1e3,this._textMesh=m.getMesh(n,{value:1}),this._textMesh&&(m.updateOpacityInfo(),m.glyphPerPageElementsMap.forEach((i,a)=>{this._renderGlyphRange(t,i,a,S,_,e,C,f,this._textMesh)})))}}_renderIconRange(e,i,a,s,l,n,o,r){const{context:c,is3D:u,painter:h,spriteMosaic:p}=e;p.bind(c,9729,s,t),n.page={mosaicSize:[p.getWidth(s)/4,p.getHeight(s)/4],texture:{texture:p.getTexture(s),unit:t}};const g={shader:this.shaders.icon,uniforms:n,defines:{iconType:r?1:0},optionalAttributes:i.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:i.getPrecisionFactors()};h.submitDrawMeshUntyped(c,g,o,{stencilRef:u?l.stencilRef:255}),l.triangleCount+=a[1]/3}_renderGlyphRange(e,t,a,s,l,n,o,r,c){const{context:u,is3D:h,painter:p,glyphMosaic:g}=e;g.bind(u,9729,a,i),o.page={mosaicSize:this._glyphTextureSize,texture:{texture:g.getTexture(a),unit:i}},s&&(o.config.halo=1,p.submitDrawMeshUntyped(u,{shader:this.shaders.text,uniforms:o,defines:null,optionalAttributes:r.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:r.getPrecisionFactors()},c,{stencilRef:h?n.stencilRef:255}),n.triangleCount+=t[1]/3),l&&(o.config.halo=0,p.submitDrawMeshUntyped(u,{shader:this.shaders.text,uniforms:o,defines:null,optionalAttributes:r.getUsedAttributes(),useComputeBuffer:!1,precisionFactors:r.getPrecisionFactors()},c,{stencilRef:h?n.stencilRef:255}),n.triangleCount+=t[1]/3)}_setRenderState(e){const{is3D:t,painter:i,stencilSymbols:a}=e;i.setPipelineState({color:{write:[!a,!a,!a,!a],blendMode:a?"none":"composite"},stencil:{write:!!a&&{mask:255},test:{compare:a?519:t?514:516,op:{fail:7680,zFail:7680,zPass:7681},mask:255}},depth:{write:!1,test:515}})}}export{r as VTLTechniqueSymbol};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{VTLTechniqueBackground as e}from"./VTLTechniqueBackground.js";import{VTLTechniqueCircle as o}from"./VTLTechniqueCircle.js";import{VTLTechniqueFill as t}from"./VTLTechniqueFill.js";import{VTLTechniqueLine as s}from"./VTLTechniqueLine.js";import{VTLTechniqueSymbol as n}from"./VTLTechniqueSymbol.js";const r=new Map([[0,e],[4,o],[1,t],[2,s],[3,n]]);class T{constructor(){this._styleLayerTypeToTechnique=new Map}getTechnique(e){return this._styleLayerTypeToTechnique.get(e)||null}startup(){for(const[e,o]of r){const t=new o;this._styleLayerTypeToTechnique.set(e,t)}}shutdown(e){for(const o of this._styleLayerTypeToTechnique.values())o.shutdown(e)}}export{T as VTLTechniquesRepo};