@arcgis/core 4.24.0-next.20220511 → 4.24.0-next.20220512

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 (231) hide show
  1. package/assets/components/assets/icon/compactness16.json +1 -0
  2. package/assets/components/assets/icon/compactness24.json +1 -0
  3. package/assets/components/assets/icon/compactness32.json +1 -0
  4. package/assets/components/assets/icon/configure16.json +1 -0
  5. package/assets/components/assets/icon/configure24.json +1 -0
  6. package/assets/components/assets/icon/configure32.json +1 -0
  7. package/assets/components/assets/icon/debugScript16.json +1 -0
  8. package/assets/components/assets/icon/debugScript24.json +1 -0
  9. package/assets/components/assets/icon/debugScript32.json +1 -0
  10. package/assets/components/assets/icon/dissolveFeatures16.json +1 -0
  11. package/assets/components/assets/icon/dissolveFeatures24.json +1 -0
  12. package/assets/components/assets/icon/dissolveFeatures32.json +1 -0
  13. package/assets/components/assets/icon/distanceType16.json +1 -0
  14. package/assets/components/assets/icon/distanceType24.json +1 -0
  15. package/assets/components/assets/icon/distanceType32.json +1 -0
  16. package/assets/components/assets/icon/gridDiamond16.json +1 -0
  17. package/assets/components/assets/icon/gridDiamond24.json +1 -0
  18. package/assets/components/assets/icon/gridDiamond32.json +1 -0
  19. package/assets/components/assets/icon/gridHexagon16.json +1 -0
  20. package/assets/components/assets/icon/gridHexagon24.json +1 -0
  21. package/assets/components/assets/icon/gridHexagon32.json +1 -0
  22. package/assets/components/assets/icon/gridTriangle16.json +1 -0
  23. package/assets/components/assets/icon/gridTriangle24.json +1 -0
  24. package/assets/components/assets/icon/gridTriangle32.json +1 -0
  25. package/assets/components/assets/icon/insets16.json +1 -0
  26. package/assets/components/assets/icon/insets24.json +1 -0
  27. package/assets/components/assets/icon/insets32.json +1 -0
  28. package/assets/components/assets/icon/maximumTerritoryDistance16.json +1 -0
  29. package/assets/components/assets/icon/maximumTerritoryDistance24.json +1 -0
  30. package/assets/components/assets/icon/maximumTerritoryDistance32.json +1 -0
  31. package/assets/components/assets/icon/minDistanceBetweenCenters16.json +1 -0
  32. package/assets/components/assets/icon/minDistanceBetweenCenters24.json +1 -0
  33. package/assets/components/assets/icon/minDistanceBetweenCenters32.json +1 -0
  34. package/assets/components/assets/icon/numberOfTerritories16.json +1 -0
  35. package/assets/components/assets/icon/numberOfTerritories24.json +1 -0
  36. package/assets/components/assets/icon/numberOfTerritories32.json +1 -0
  37. package/assets/components/assets/icon/overlapFeatures16.json +1 -0
  38. package/assets/components/assets/icon/overlapFeatures24.json +1 -0
  39. package/assets/components/assets/icon/overlapFeatures32.json +1 -0
  40. package/assets/components/assets/icon/profileVariables16.json +1 -0
  41. package/assets/components/assets/icon/profileVariables24.json +1 -0
  42. package/assets/components/assets/icon/profileVariables32.json +1 -0
  43. package/assets/components/assets/icon/rasterAnalysis16.json +1 -0
  44. package/assets/components/assets/icon/rasterAnalysis24.json +1 -0
  45. package/assets/components/assets/icon/rasterAnalysis32.json +1 -0
  46. package/assets/components/assets/icon/recurrence16.json +1 -0
  47. package/assets/components/assets/icon/recurrence24.json +1 -0
  48. package/assets/components/assets/icon/recurrence32.json +1 -0
  49. package/assets/components/assets/icon/splitFeatures16.json +1 -0
  50. package/assets/components/assets/icon/splitFeatures24.json +1 -0
  51. package/assets/components/assets/icon/splitFeatures32.json +1 -0
  52. package/assets/components/assets/icon/territoryBufferDistance16.json +1 -0
  53. package/assets/components/assets/icon/territoryBufferDistance24.json +1 -0
  54. package/assets/components/assets/icon/territoryBufferDistance32.json +1 -0
  55. package/assets/components/assets/icon/testData16.json +1 -0
  56. package/assets/components/assets/icon/testData24.json +1 -0
  57. package/assets/components/assets/icon/testData32.json +1 -0
  58. package/assets/esri/core/workers/RemoteClient.js +1 -1
  59. package/assets/esri/core/workers/chunks/07eda3e958d29f86b37e.js +1 -0
  60. package/assets/esri/core/workers/chunks/0ecaa28b8bff1d779d66.js +1 -0
  61. package/assets/esri/core/workers/chunks/{adae54f116f311d72d97.js → 1aba8c73c62a64e0658c.js} +1 -1
  62. package/assets/esri/core/workers/chunks/1d109cd048170e2d529a.js +1 -0
  63. package/assets/esri/core/workers/chunks/366e5c1abd1ab6d3e548.js +1 -0
  64. package/assets/esri/core/workers/chunks/3e94e35f44aadbb332ff.js +1 -0
  65. package/assets/esri/core/workers/chunks/46411f32b29a0e783105.js +1 -0
  66. package/assets/esri/core/workers/chunks/4d1c87e3e0a02efcc082.js +1 -0
  67. package/assets/esri/core/workers/chunks/{b089058b64db3912478f.js → 5e46e60fab93ad034d3a.js} +1 -1
  68. package/assets/esri/core/workers/chunks/6281b15009712a5dee3c.js +1 -0
  69. package/assets/esri/core/workers/chunks/66f627d68dbb0fdb725f.js +1 -0
  70. package/assets/esri/core/workers/chunks/672da24bbf86718bf48d.js +1 -0
  71. package/assets/esri/core/workers/chunks/733625d85602127d62cd.js +1 -0
  72. package/assets/esri/core/workers/chunks/{c51c9b5da855f84b9a48.js → 7391422fc51acb96a25d.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{f435dc615fdc8917f6ca.js → 7cf3cff7b28ff007dbad.js} +1 -1
  74. package/assets/esri/core/workers/chunks/7ea06c86adfc827fda08.js +1 -0
  75. package/assets/esri/core/workers/chunks/{a054a52712a118c6d505.js → 82bc24bdc9c6ebaf58c0.js} +1 -1
  76. package/assets/esri/core/workers/chunks/8965ab74e03506e3475e.js +1 -0
  77. package/assets/esri/core/workers/chunks/{5405f478af3563580926.js → 8b497d9c37a8f577a467.js} +1 -1
  78. package/assets/esri/core/workers/chunks/919d0d8b1c2176760973.js +1 -0
  79. package/assets/esri/core/workers/chunks/ab2a0480dc2b608deda3.js +1 -0
  80. package/assets/esri/core/workers/chunks/ab97a35f7a7d5cf1da19.js +2 -0
  81. package/assets/esri/core/workers/chunks/{dcd0653191cd4a1ccaae.js.LICENSE.txt → ab97a35f7a7d5cf1da19.js.LICENSE.txt} +1 -1
  82. package/assets/esri/core/workers/chunks/ae554c88e862a5761f2e.js +1 -0
  83. package/assets/esri/core/workers/chunks/ae5ce55cd1a32525f101.js +1 -0
  84. package/assets/esri/core/workers/chunks/b597c04a4abb98e29d1c.js +1 -0
  85. package/assets/esri/core/workers/chunks/{287c484fd40eee643f3a.js → b78c3e9d31c4a562cdf0.js} +1 -1
  86. package/assets/esri/core/workers/chunks/be4bf1e4cbe2a593f8b3.js +1 -0
  87. package/assets/esri/core/workers/chunks/{b7572b0921b23aef8b9d.js → c40d9caf5189be2c698e.js} +1 -1
  88. package/assets/esri/core/workers/chunks/{b28539c5a6bedb71b038.js → d63f736b3560c577a8a4.js} +1 -1
  89. package/assets/esri/core/workers/chunks/d869dabe937d3b60504e.js +1 -0
  90. package/assets/esri/core/workers/chunks/dd6c9a114ad38cf622ba.js +1 -0
  91. package/assets/esri/core/workers/chunks/e6b0f74226b9394bfa7a.js +1 -0
  92. package/assets/esri/themes/base/widgets/_Editor.scss +3 -2
  93. package/assets/esri/themes/dark/main.css +1 -1
  94. package/assets/esri/themes/light/main.css +1 -1
  95. package/assets/esri/themes/light/view.css +1 -1
  96. package/assets/esri/views/interactive/tooltip/t9n/Tooltip.json +1 -0
  97. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_en.json +1 -0
  98. package/chunks/EdgeShader.glsl.js +3 -4
  99. package/interfaces.d.ts +463 -30
  100. package/layers/FeatureLayer.js +1 -1
  101. package/layers/GeoJSONLayer.js +1 -1
  102. package/layers/OGCFeatureLayer.js +1 -1
  103. package/layers/RouteLayer.js +1 -1
  104. package/layers/SceneLayer.js +1 -1
  105. package/layers/StreamLayer.js +1 -1
  106. package/layers/SubtypeGroupLayer.js +1 -1
  107. package/layers/WFSLayer.js +1 -1
  108. package/layers/buildingSublayers/BuildingComponentSublayer.js +1 -1
  109. package/layers/mixins/ArcGISImageService.js +1 -1
  110. package/layers/save/featureLayerUtils.js +1 -1
  111. package/layers/support/AggregateField.d.ts +4 -0
  112. package/layers/support/AggregateField.js +1 -1
  113. package/layers/support/FeatureReductionBinning.d.ts +4 -0
  114. package/layers/support/FeatureReductionBinning.js +1 -1
  115. package/layers/support/OutStatistic.d.ts +4 -0
  116. package/layers/support/Sublayer.js +1 -1
  117. package/layers/support/SubtypeSublayer.js +1 -1
  118. package/layers/support/rasterDatasets/ImageServerRaster.js +1 -1
  119. package/layers/support/rasterDatasets/wcsCoverageParser.js +1 -1
  120. package/layers/support/rasterFormats/TiffDecoder.js +1 -1
  121. package/package.json +3 -3
  122. package/portal/support/portalItemUtils.js +1 -1
  123. package/renderers/PieChartRenderer.d.ts +4 -0
  124. package/renderers/PieChartRenderer.js +5 -0
  125. package/renderers/Renderer.js +1 -1
  126. package/renderers/support/AuthoringInfo.js +1 -1
  127. package/renderers/support/RasterSymbolizer.js +1 -1
  128. package/renderers/support/clickToleranceUtils.js +1 -1
  129. package/renderers/support/rasterRendererHelper.js +1 -1
  130. package/renderers/support/types.js +1 -1
  131. package/renderers/support/utils.js +1 -1
  132. package/renderers.js +1 -1
  133. package/request.js +1 -1
  134. package/rest/imageService/fetchRasterInfo.js +5 -0
  135. package/rest/imageService/getCatalogItemRasterInfo.js +5 -0
  136. package/rest/print.js +1 -1
  137. package/smartMapping/renderers/color.js +1 -1
  138. package/smartMapping/renderers/dotDensity.js +1 -1
  139. package/smartMapping/renderers/heatmap.js +1 -1
  140. package/smartMapping/renderers/location.js +1 -1
  141. package/smartMapping/renderers/size.js +1 -1
  142. package/smartMapping/renderers/type.js +1 -1
  143. package/support/arcadeUtils.js +1 -1
  144. package/support/revision.js +1 -1
  145. package/symbols/cim/CIMSymbolHelper.js +1 -1
  146. package/symbols/cim/CurveHelper.js +1 -1
  147. package/symbols/cim/ExpandedCIM.js +1 -1
  148. package/symbols/cim/cimAnalyzer.js +1 -1
  149. package/symbols/cim/placements/PlacementInsidePolygon.js +1 -1
  150. package/views/2d/engine/brushes.js +1 -1
  151. package/views/2d/engine/vectorTiles/GlyphSource.js +1 -1
  152. package/views/2d/engine/vectorTiles/style/Filter.js +1 -1
  153. package/views/2d/engine/vectorTiles/style/StyleRepository.js +1 -1
  154. package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
  155. package/views/2d/engine/webgl/Painter.js +1 -1
  156. package/views/2d/engine/webgl/Utils.js +1 -1
  157. package/views/2d/engine/webgl/brushes/WGLBrushPieChart.js +5 -0
  158. package/views/2d/engine/webgl/brushes/WGLGeometryBrush.js +1 -1
  159. package/views/2d/engine/webgl/brushes/WGLGeometryBrushFill.js +1 -1
  160. package/views/2d/engine/webgl/brushes/WGLGeometryBrushMarker.js +1 -1
  161. package/views/2d/engine/webgl/color.js +1 -1
  162. package/views/2d/engine/webgl/definitions.js +1 -1
  163. package/views/2d/engine/webgl/enums.js +1 -1
  164. package/views/2d/engine/webgl/mesh/templates/WGLBaseFillTemplate.js +1 -1
  165. package/views/2d/engine/webgl/mesh/templates/WGLBaseLineTemplate.js +1 -1
  166. package/views/2d/engine/webgl/mesh/templates/WGLDynamicFillTemplate.js +1 -1
  167. package/views/2d/engine/webgl/mesh/templates/WGLFillTemplate.js +1 -1
  168. package/views/2d/engine/webgl/mesh/templates/WGLMarkerTemplate.js +1 -1
  169. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  170. package/views/2d/engine/webgl/techniques/dotDensity/TechniqueDotDensity.js +1 -1
  171. package/views/2d/engine/webgl/techniques/pieChart/TechniquePieChart.js +5 -0
  172. package/views/2d/engine/webgl/techniques/utils.js +1 -1
  173. package/views/2d/engine/webgl/util/Matcher.js +1 -1
  174. package/views/2d/layers/features/schemaUtils.js +1 -1
  175. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  176. package/views/2d/layers/features/tileRenderers/SymbolTileRenderer.js +1 -1
  177. package/views/2d/layers/features/tileRenderers/support/WGLFeatureView.js +1 -1
  178. package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
  179. package/views/3d/analysis/Dimensioning/DimensioningTool.js +1 -1
  180. package/views/3d/analysis/Dimensioning/LengthDimensionVisualization.js +1 -1
  181. package/views/3d/environment/SnowyWeather.d.ts +4 -0
  182. package/views/3d/layers/I3SMeshView3D.js +1 -1
  183. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  184. package/views/3d/terrain/TerrainRenderer.js +1 -1
  185. package/views/3d/terrain/TerrainSurface.js +1 -1
  186. package/views/3d/terrain/TileRenderer.js +1 -1
  187. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  188. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +5 -5
  189. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  190. package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
  191. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechniqueConfiguration.js +1 -1
  192. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  193. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +37 -31
  194. package/views/draw/DrawOperation.js +1 -1
  195. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  196. package/views/interactive/snapping/SceneSnappingEngine.js +5 -0
  197. package/views/interactive/snapping/SnappingManager.js +1 -1
  198. package/views/interactive/snapping/snappingFactory.js +5 -0
  199. package/views/interactive/tooltip/content/TooltipContent.js +1 -1
  200. package/views/interactive/tooltip/content/TooltipContentDrawPoint.js +1 -1
  201. package/views/interactive/tooltip/content/TooltipContentDrawPolygon.js +1 -1
  202. package/views/interactive/tooltip/content/TooltipContentDrawPolyline.js +1 -1
  203. package/views/interactive/tooltip/content/TooltipContentTranslateVertex.js +1 -1
  204. package/widgets/Editor/workflowUtils.js +1 -1
  205. package/widgets/Editor.js +1 -1
  206. package/widgets/Popup/PopupViewModel.js +1 -1
  207. package/widgets/Popup/actionUtils.js +1 -1
  208. package/widgets/Sketch/SketchViewModel.js +1 -1
  209. package/assets/esri/core/workers/chunks/0564f1cfa3d17ff1aad3.js +0 -1
  210. package/assets/esri/core/workers/chunks/0806d5d706a864542bfb.js +0 -1
  211. package/assets/esri/core/workers/chunks/52478ee2d2a1354b6900.js +0 -1
  212. package/assets/esri/core/workers/chunks/5759af97f96f24c40105.js +0 -1
  213. package/assets/esri/core/workers/chunks/7bc828fbdd54c0b28aac.js +0 -1
  214. package/assets/esri/core/workers/chunks/875f26ee040f3d75c0db.js +0 -1
  215. package/assets/esri/core/workers/chunks/88384e7cafbfd2348598.js +0 -1
  216. package/assets/esri/core/workers/chunks/89acd5f888d6b8df4aad.js +0 -1
  217. package/assets/esri/core/workers/chunks/9d7533aaeac3b8d145c4.js +0 -1
  218. package/assets/esri/core/workers/chunks/a3bb600bfcb0282622f1.js +0 -1
  219. package/assets/esri/core/workers/chunks/b50ae3dc7e43ff452568.js +0 -1
  220. package/assets/esri/core/workers/chunks/b5b7bcbc19b3430903ee.js +0 -1
  221. package/assets/esri/core/workers/chunks/b758f3c419edc2306784.js +0 -1
  222. package/assets/esri/core/workers/chunks/cf47b605c31063e88357.js +0 -1
  223. package/assets/esri/core/workers/chunks/cfbb332d144e65a4a55d.js +0 -1
  224. package/assets/esri/core/workers/chunks/db937849b2c1af87b481.js +0 -1
  225. package/assets/esri/core/workers/chunks/dc3ed59f450283d97a19.js +0 -1
  226. package/assets/esri/core/workers/chunks/dcd0653191cd4a1ccaae.js +0 -2
  227. package/assets/esri/core/workers/chunks/dfb6a28039e5d5ce6fd4.js +0 -1
  228. package/assets/esri/core/workers/chunks/e4fdd1eaf987977d0a51.js +0 -1
  229. package/assets/esri/core/workers/chunks/f7e0bb11ba3677069c94.js +0 -1
  230. package/assets/esri/core/workers/chunks/f7f3dde4c8f9c687cc1e.js +0 -1
  231. package/assets/esri/core/workers/chunks/fc6beaf9466ea3898549.js +0 -1
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{isSome as e,unwrapOr as t}from"../../../../../core/maybe.js";import{WGLGeometryType as o,WGLSymbologyType as r}from"../enums.js";import{createProgramDescriptor as a}from"../Utils.js";import i from"./WGLGeometryBrush.js";import{FillMaterialKey as n}from"../materialKey/MaterialKey.js";import{getTechniqueFromMaterialKey as s}from"../techniques/utils.js";import{PrimitiveType as m,DataType as l}from"../../../../webgl/enums.js";function u(e){const t={geometry:[{location:0,name:"a_pos",count:2,type:l.SHORT},{location:1,name:"a_id",count:3,type:l.UNSIGNED_BYTE},{location:2,name:"a_bitset",count:1,type:l.UNSIGNED_BYTE},{location:3,name:"a_color",count:4,type:l.UNSIGNED_BYTE,normalized:!0},{location:4,name:"a_aux1",count:4,type:l.UNSIGNED_SHORT},{location:5,name:"a_aux2",count:4,type:l.UNSIGNED_BYTE},{location:6,name:"a_aux3",count:4,type:l.UNSIGNED_BYTE},{location:7,name:"a_zoomRange",count:2,type:l.UNSIGNED_SHORT}]};switch(e.symbologyType){case r.SIMPLE:case r.OUTLINE_FILL_SIMPLE:t.geometry.splice(7,1),t.geometry.splice(4,1)}return{shader:"materials/fill",vertexLayout:t}}class c extends i{dispose(){}getGeometryType(){return o.FILL}supportsSymbology(e){return e!==r.DOT_DENSITY}drawGeometry(o,r,i,l){const{context:c,painter:y,rendererInfo:p,requiredLevel:_,passOptions:f,requestRender:d}=o,E=n.load(i.materialKey),N=s(E.data),S=e(f)&&"hittest"===f.type,g=y.materialManager,{shader:T,vertexLayout:I,hittestAttributes:U}=t(N.programSpec,u(E));let x=m.TRIANGLES,L=a(E.data,I);S&&(L=this._getTriangleDesc(i.materialKey,L,U),x=m.POINTS);const{attributes:h,bufferLayouts:G}=L,b=g.getMaterialProgram(o,E,T,h,l);if(e(d)&&!S&&!b.isCompiled)return void d();if(c.useProgram(b),this._setSharedUniforms(b,o,r),b.setUniform2f("u_tileOffset",512*r.key.col,512*r.key.row),E.textureBinding){y.textureManager.bindTextures(c,b,E);const e=1/2**(_-r.key.level);b.setUniform1f("u_zoomFactor",e)}const D=1/o.pixelRatio;b.setUniform1f("u_blur",D),b.setUniform1f("u_antialiasing",D),this._setSizeVVUniforms(E,b,p,r),this._setColorAndOpacityVVUniforms(E,b,p);const O=i.target.getVAO(c,G,h,S);let B=i.indexCount,R=i.indexFrom*Uint32Array.BYTES_PER_ELEMENT;S&&(B/=3,R/=3),c.bindVAO(O),this._drawFills(o,r,b,x,B,R)}_drawFills(e,t,o,r,a,i){e.context.drawElements(r,a,l.UNSIGNED_INT,i)}}export{c as default};
5
+ import{isSome as e,unwrapOr as t}from"../../../../../core/maybe.js";import{WGLGeometryType as o,WGLSymbologyType as r}from"../enums.js";import{createProgramDescriptor as a}from"../Utils.js";import i from"./WGLGeometryBrush.js";import{FillMaterialKey as n}from"../materialKey/MaterialKey.js";import{getTechniqueFromMaterialKey as s}from"../techniques/utils.js";import{PrimitiveType as m,DataType as l}from"../../../../webgl/enums.js";function u(e){const t={geometry:[{location:0,name:"a_pos",count:2,type:l.SHORT},{location:1,name:"a_id",count:3,type:l.UNSIGNED_BYTE},{location:2,name:"a_bitset",count:1,type:l.UNSIGNED_BYTE},{location:3,name:"a_color",count:4,type:l.UNSIGNED_BYTE,normalized:!0},{location:4,name:"a_aux1",count:4,type:l.UNSIGNED_SHORT},{location:5,name:"a_aux2",count:4,type:l.SHORT},{location:6,name:"a_aux3",count:4,type:l.UNSIGNED_BYTE},{location:7,name:"a_zoomRange",count:2,type:l.UNSIGNED_SHORT}]};switch(e.symbologyType){case r.SIMPLE:case r.OUTLINE_FILL_SIMPLE:t.geometry.splice(7,1),t.geometry.splice(4,1)}return{shader:"materials/fill",vertexLayout:t}}class c extends i{dispose(){}getGeometryType(){return o.FILL}supportsSymbology(e){return e!==r.DOT_DENSITY}drawGeometry(o,r,i,l){const{context:c,painter:y,rendererInfo:p,requiredLevel:_,passOptions:f,requestRender:d}=o,E=n.load(i.materialKey),S=s(E.data),g=e(f)&&"hittest"===f.type,N=y.materialManager,{shader:T,vertexLayout:I,hittestAttributes:U}=t(S.programSpec,u(E));let x=m.TRIANGLES,L=a(E.data,I);g&&(L=this._getTriangleDesc(i.materialKey,L,U),x=m.POINTS);const{attributes:h,bufferLayouts:G}=L,O=N.getMaterialProgram(o,E,T,h,l);if(e(d)&&!g&&!O.isCompiled)return void d();if(c.useProgram(O),this._setSharedUniforms(O,o,r),O.setUniform2f("u_tileOffset",512*r.key.col,512*r.key.row),E.textureBinding){y.textureManager.bindTextures(c,O,E);const e=1/2**(_-r.key.level);O.setUniform1f("u_zoomFactor",e)}const b=1/o.pixelRatio;O.setUniform1f("u_blur",b),O.setUniform1f("u_antialiasing",b),this._setSizeVVUniforms(E,O,p,r),this._setColorAndOpacityVVUniforms(E,O,p);const D=i.target.getVAO(c,G,h,g);let R=i.indexCount,j=i.indexFrom*Uint32Array.BYTES_PER_ELEMENT;g&&(R/=3,j/=3),c.bindVAO(D),this._drawFills(o,r,O,x,R,j)}_drawFills(e,t,o,r,a,i){e.context.drawElements(r,a,l.UNSIGNED_INT,i)}}export{c 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.24/esri/copyright.txt for details.
4
4
  */
5
- import{isSome as t,unwrapOr as e}from"../../../../../core/maybe.js";import{WGLGeometryType as o,WGLSymbologyType as a}from"../enums.js";import{createProgramDescriptor as r}from"../Utils.js";import i from"./WGLGeometryBrush.js";import{MarkerMaterialKey as n}from"../materialKey/MaterialKey.js";import{getTechniqueFromMaterialKey as s}from"../techniques/utils.js";import{DataType as m,PrimitiveType as l}from"../../../../webgl/enums.js";const u={shader:"materials/icon",vertexLayout:{geometry:[{location:0,name:"a_pos",count:2,type:m.SHORT},{location:1,name:"a_vertexOffset",count:2,type:m.SHORT},{location:2,name:"a_texCoords",count:2,type:m.UNSIGNED_SHORT},{location:3,name:"a_bitSetAndDistRatio",count:2,type:m.UNSIGNED_SHORT},{location:4,name:"a_id",count:4,type:m.UNSIGNED_BYTE},{location:5,name:"a_color",count:4,type:m.UNSIGNED_BYTE,normalized:!0},{location:6,name:"a_outlineColor",count:4,type:m.UNSIGNED_BYTE,normalized:!0},{location:7,name:"a_sizeAndOutlineWidth",count:4,type:m.UNSIGNED_BYTE},{location:8,name:"a_zoomRange",count:2,type:m.UNSIGNED_SHORT}]},hittestAttributes:["a_vertexOffset","a_texCoords"]};class d extends i{dispose(){}getGeometryType(){return o.MARKER}supportsSymbology(t){return t!==a.HEATMAP}drawGeometry(o,a,i,m){const{context:d,painter:c,rendererInfo:p,state:y,passOptions:_,requestRender:f}=o,E=n.load(i.materialKey),S=s(E.data),N=t(_)&&"hittest"===_.type,{shader:T,vertexLayout:g,hittestAttributes:x}=e(S.programSpec,u);let h=l.TRIANGLES,U=r(E.data,g);N&&(U=this._getTriangleDesc(i.materialKey,U,x),h=l.POINTS);const{attributes:R,bufferLayouts:G}=U,M=c.materialManager.getMaterialProgram(o,E,T,R,m);if(t(f)&&!N&&!M.isCompiled)return void f();d.useProgram(M),E.textureBinding&&c.textureManager.bindTextures(d,M,E,!0),this._setSharedUniforms(M,o,a);const O=E.vvRotation?y.displayViewMat3:y.displayMat3;M.setUniformMatrix3fv("u_displayMat3",O),this._setSizeVVUniforms(E,M,p,a),this._setColorAndOpacityVVUniforms(E,M,p),this._setRotationVVUniforms(E,M,p);const A=i.target.getVAO(d,G,R,N);let I=i.indexCount,b=i.indexFrom*Uint32Array.BYTES_PER_ELEMENT;N&&(I/=3,b/=3),d.bindVAO(A),this._drawMarkers(o,a,M,h,I,b,N)}_drawMarkers(t,e,o,a,r,i,n){t.context.drawElements(a,r,m.UNSIGNED_INT,i)}}export{d as default};
5
+ import{isSome as t,unwrapOr as e}from"../../../../../core/maybe.js";import{WGLGeometryType as o,WGLSymbologyType as a}from"../enums.js";import{createProgramDescriptor as r}from"../Utils.js";import i from"./WGLGeometryBrush.js";import{MarkerMaterialKey as n}from"../materialKey/MaterialKey.js";import{getTechniqueFromMaterialKey as s}from"../techniques/utils.js";import{DataType as m,PrimitiveType as l}from"../../../../webgl/enums.js";const u={shader:"materials/icon",vertexLayout:{geometry:[{location:0,name:"a_pos",count:2,type:m.SHORT},{location:1,name:"a_vertexOffset",count:2,type:m.SHORT},{location:2,name:"a_texCoords",count:2,type:m.UNSIGNED_SHORT},{location:3,name:"a_bitSetAndDistRatio",count:2,type:m.UNSIGNED_SHORT},{location:4,name:"a_id",count:4,type:m.UNSIGNED_BYTE},{location:5,name:"a_color",count:4,type:m.UNSIGNED_BYTE,normalized:!0},{location:6,name:"a_outlineColor",count:4,type:m.UNSIGNED_BYTE,normalized:!0},{location:7,name:"a_sizeAndOutlineWidth",count:4,type:m.UNSIGNED_BYTE},{location:8,name:"a_zoomRange",count:2,type:m.UNSIGNED_SHORT}]},hittestAttributes:["a_vertexOffset","a_texCoords"]};class d extends i{dispose(){}getGeometryType(){return o.MARKER}supportsSymbology(t){return t!==a.HEATMAP&&t!==a.PIE_CHART}drawGeometry(o,a,i,m){const{context:d,painter:c,rendererInfo:p,state:y,passOptions:_,requestRender:f}=o,E=n.load(i.materialKey),S=s(E.data),N=t(_)&&"hittest"===_.type,{shader:T,vertexLayout:g,hittestAttributes:x}=e(S.programSpec,u);let h=l.TRIANGLES,R=r(E.data,g);N&&(R=this._getTriangleDesc(i.materialKey,R,x),h=l.POINTS);const{attributes:U,bufferLayouts:A}=R,O=c.materialManager.getMaterialProgram(o,E,T,U,m);if(t(f)&&!N&&!O.isCompiled)return void f();d.useProgram(O),E.textureBinding&&c.textureManager.bindTextures(d,O,E,!0),this._setSharedUniforms(O,o,a);const G=E.vvRotation?y.displayViewMat3:y.displayMat3;O.setUniformMatrix3fv("u_displayMat3",G),this._setSizeVVUniforms(E,O,p,a),this._setColorAndOpacityVVUniforms(E,O,p),this._setRotationVVUniforms(E,O,p);const I=i.target.getVAO(d,A,U,N);let M=i.indexCount,b=i.indexFrom*Uint32Array.BYTES_PER_ELEMENT;N&&(M/=3,b/=3),d.bindVAO(I),this._drawMarkers(o,a,O,h,M,b,N),d.bindVAO(null)}_drawMarkers(t,e,o,a,r,i,n){t.context.drawElements(a,r,m.UNSIGNED_INT,i)}}export{d as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{i8888to32 as r}from"./number.js";const n=[255,255,255,1],t=[0,0,0,0];function u(r,n){return Array.isArray(n)?(r[0]=n[0],r[1]=n[1],r[2]=n[2],r[3]=n[3]):(r[0]=n.r,r[1]=n.g,r[2]=n.b,r[3]=n.a),r}function o(r,n=0,t=!1){const u=r[n+3];return r[n+0]*=u,r[n+1]*=u,r[n+2]*=u,t||(r[n+3]*=255),r}function c(r){return o(u([],r))}function e(n){return o(u(t,n)),r(t[0],t[1],t[2],t[3])}function i(n){if(!n)return 0;const{r:t,g:u,b:o,a:c}=n;return r(t*c,u*c,o*c,255*c)}function f(n){if(!n)return 0;const[t,u,o,c]=n;return r(t*(c/255),u*(c/255),o*(c/255),c)}export{c as copyAndPremultiply,o as premultiplyAlpha,i as premultiplyAlphaRGBA,f as premultiplyAlphaRGBAArray,e as premultiplyAlphaUint32,n as white};
5
+ import{isNone as r}from"../../../../core/maybe.js";import{i8888to32 as n}from"./number.js";const t=[255,255,255,1],o=[0,0,0,0];function u(r,n){return Array.isArray(n)?(r[0]=n[0],r[1]=n[1],r[2]=n[2],r[3]=n[3]):(r[0]=n.r,r[1]=n.g,r[2]=n.b,r[3]=n.a),r}function i(r,n=0,t=!1){const o=r[n+3];return r[n+0]*=o,r[n+1]*=o,r[n+2]*=o,t||(r[n+3]*=255),r}function c(r){return i(u([],r))}function e(r){return i(u(o,r)),n(o[0],o[1],o[2],o[3])}function f(r){if(!r)return 0;const{r:t,g:o,b:u,a:i}=r;return n(t*i,o*i,u*i,255*i)}function s(r){if(!r)return 0;const[t,o,u,i]=r;return n(t*(i/255),o*(i/255),u*(i/255),i)}function a(n,t,o=0){if(r(t))return n[o+0]=0,n[o+1]=0,n[o+2]=0,void(n[o+3]=0);const{r:u,g:i,b:c,a:e}=t;n[o+0]=u*e/255,n[o+1]=i*e/255,n[o+2]=c*e/255,n[o+3]=e}export{c as copyAndPremultiply,i as premultiplyAlpha,f as premultiplyAlphaRGBA,s as premultiplyAlphaRGBAArray,e as premultiplyAlphaUint32,t as white,a as writeColor};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- const t=8,e=t-2,c=1e-30,h=64,i=4294967295,o=512,a=256,d=256/360,n=!1,p=128,r=8,s=29,f=1,g=16,l=16,m=o/p,v=8,w=50,x=10,b=24,j=8,k={metrics:{width:15,height:17,left:0,top:-7,advance:14}},q=1024,u=0,y=0,z=0,A=1,B=2,C=3,D=4,E=12,F=5,G=6,H=5,I=6,J=0,K=1,L=2,M=3,N=3,O=4,P=2,Q=1,R=2,S=4,T=!1,U=1.05,V=3,W=5,X=6,Y=1.15,Z=2,$=2,_=8,tt=500,et=4,ct=128,ht=10,it=2,ot=0,at=1,dt=4,nt=8,pt=4,rt=1;export{d as ANGLE_FACTOR_256,K as ATTRIBUTE_DATA_ANIMATION,N as ATTRIBUTE_DATA_DD0,O as ATTRIBUTE_DATA_DD1,J as ATTRIBUTE_DATA_FILTER_FLAGS,L as ATTRIBUTE_DATA_GPGPU,M as ATTRIBUTE_DATA_VV,q as ATTRIBUTE_STORE_TEXTURE_SIZE,k as AVERAGE_GLYPH_MOSAIC_ITEM,it as BITSET_GENERIC_LOCK_COLOR,pt as BITSET_LINE_SCALE_DASH,at as BITSET_MARKER_ALIGNMENT_MAP,ot as BITSET_MARKER_ALIGNMENT_SCREEN,dt as BITSET_MARKER_OUTLINE_ALLOW_COLOR_OVERRIDE,nt as BITSET_MARKER_SCALE_SYMBOLS_PROPORTIONALLY,rt as BITSET_TYPE_FILL_OUTLINE,ct as BUFFER_DATA_MINIMUM_SIZE,et as BUFFER_DATA_POOL_SIZE,l as COLLISION_BOX_PADDING,p as COLLISION_BUCKET_SIZE,g as COLLISION_EARLY_REJECT_BUCKET_SIZE,f as COLLISION_MAX_ZOOM_DELTA,v as COLLISION_PLACEMENT_PADDING,m as COLLISION_TILE_BOX_SIZE,n as DEBUG_LABELS,_ as DISPLAY_RECORD_INT_PER_ELEMENT,r as DOT_DENSITY_MAX_FIELDS,S as EFFECT_FLAG_0,T as ENABLE_EARLY_LABEL_DISCARD,h as EXTRUDE_SCALE,R as FILTER_FLAG_0,b as GLYPH_SIZE,x as HEURISTIC_GLYPHS_PER_FEATURE,w as HEURISTIC_GLYPHS_PER_LINE,Q as HIGHLIGHT_FLAG,V as HITTEST_RADIUS,s as MAGIC_LABEL_LINE_HEIGHT,P as MAX_FILTERS,Z as MAX_GPU_UPLOADS_PER_FRAME,ht as MIN_MAX_ZOOM_PRECISION_FACTOR,c as NAN_MAGIC_NUMBER,tt as PATCH_PIXEL_BUFFER_ALLOC_SIZE,i as PICTURE_FILL_COLOR,a as RASTER_TILE_SIZE,$ as SPRITE_PADDING,A as TEXTURE_BINDING_ATTRIBUTE_DATA_0,B as TEXTURE_BINDING_ATTRIBUTE_DATA_1,C as TEXTURE_BINDING_ATTRIBUTE_DATA_2,D as TEXTURE_BINDING_ATTRIBUTE_DATA_3,z as TEXTURE_BINDING_BITMAP,y as TEXTURE_BINDING_GLYPH_ATLAS,E as TEXTURE_BINDING_GPGPU,F as TEXTURE_BINDING_HIGHLIGHT_0,G as TEXTURE_BINDING_HIGHLIGHT_1,H as TEXTURE_BINDING_RENDERER_0,I as TEXTURE_BINDING_RENDERER_1,u as TEXTURE_BINDING_SPRITE_ATLAS,j as TEXT_PLACEMENT_PADDING,U as THIN_LINE_HALF_WIDTH_THRESHOLD,o as TILE_SIZE,Y as VTL_HIGH_RES_CUTOFF,X as VTL_TEXTURE_BINDING_UNIT_GLYPHS,W as VTL_TEXTURE_BINDING_UNIT_SPRITES,e as WEBGL_MAX_INNER_STOPS,t as WEBGL_MAX_STOPS};
5
+ const t=8,e=t-2,c=1e-30,h=64,i=4294967295,o=512,a=256,d=256/360,n=!1,p=128,r=8,s=10,f=29,g=1,l=16,m=16,v=o/p,w=8,x=50,b=10,j=24,k=8,q={metrics:{width:15,height:17,left:0,top:-7,advance:14}},u=1024,y=0,z=0,A=0,B=1,C=2,D=3,E=4,F=5,G=6,H=12,I=5,J=6,K=5,L=6,M=0,N=1,O=2,P=3,Q=3,R=4,S=2,T=1,U=2,V=4,W=!1,X=1.05,Y=3,Z=5,$=6,_=1.15,tt=2,et=2,ct=8,ht=500,it=4,ot=128,at=10,dt=1024,nt=2,pt=0,rt=1,st=4,ft=8,gt=4,lt=1,mt=4;export{d as ANGLE_FACTOR_256,N as ATTRIBUTE_DATA_ANIMATION,Q as ATTRIBUTE_DATA_DD0,R as ATTRIBUTE_DATA_DD1,M as ATTRIBUTE_DATA_FILTER_FLAGS,O as ATTRIBUTE_DATA_GPGPU,P as ATTRIBUTE_DATA_VV,u as ATTRIBUTE_STORE_TEXTURE_SIZE,q as AVERAGE_GLYPH_MOSAIC_ITEM,mt as BITSET_FILL_RANDOM_PATTERN_OFFSET,nt as BITSET_GENERIC_LOCK_COLOR,gt as BITSET_LINE_SCALE_DASH,rt as BITSET_MARKER_ALIGNMENT_MAP,pt as BITSET_MARKER_ALIGNMENT_SCREEN,st as BITSET_MARKER_OUTLINE_ALLOW_COLOR_OVERRIDE,ft as BITSET_MARKER_SCALE_SYMBOLS_PROPORTIONALLY,lt as BITSET_TYPE_FILL_OUTLINE,ot as BUFFER_DATA_MINIMUM_SIZE,it as BUFFER_DATA_POOL_SIZE,s as CHART_MAX_FIELDS,m as COLLISION_BOX_PADDING,p as COLLISION_BUCKET_SIZE,l as COLLISION_EARLY_REJECT_BUCKET_SIZE,g as COLLISION_MAX_ZOOM_DELTA,w as COLLISION_PLACEMENT_PADDING,v as COLLISION_TILE_BOX_SIZE,n as DEBUG_LABELS,ct as DISPLAY_RECORD_INT_PER_ELEMENT,r as DOT_DENSITY_MAX_FIELDS,V as EFFECT_FLAG_0,W as ENABLE_EARLY_LABEL_DISCARD,h as EXTRUDE_SCALE,U as FILTER_FLAG_0,j as GLYPH_SIZE,b as HEURISTIC_GLYPHS_PER_FEATURE,x as HEURISTIC_GLYPHS_PER_LINE,T as HIGHLIGHT_FLAG,Y as HITTEST_RADIUS,f as MAGIC_LABEL_LINE_HEIGHT,S as MAX_FILTERS,tt as MAX_GPU_UPLOADS_PER_FRAME,at as MIN_MAX_ZOOM_PRECISION_FACTOR,c as NAN_MAGIC_NUMBER,ht as PATCH_PIXEL_BUFFER_ALLOC_SIZE,i as PICTURE_FILL_COLOR,dt as RANDOM_INSIDE_POLYGON_TEXTURE_SIZE,a as RASTER_TILE_SIZE,et as SPRITE_PADDING,B as TEXTURE_BINDING_ATTRIBUTE_DATA_0,C as TEXTURE_BINDING_ATTRIBUTE_DATA_1,D as TEXTURE_BINDING_ATTRIBUTE_DATA_2,E as TEXTURE_BINDING_ATTRIBUTE_DATA_3,F as TEXTURE_BINDING_ATTRIBUTE_DATA_4,G as TEXTURE_BINDING_ATTRIBUTE_DATA_5,A as TEXTURE_BINDING_BITMAP,z as TEXTURE_BINDING_GLYPH_ATLAS,H as TEXTURE_BINDING_GPGPU,I as TEXTURE_BINDING_HIGHLIGHT_0,J as TEXTURE_BINDING_HIGHLIGHT_1,K as TEXTURE_BINDING_RENDERER_0,L as TEXTURE_BINDING_RENDERER_1,y as TEXTURE_BINDING_SPRITE_ATLAS,k as TEXT_PLACEMENT_PADDING,X as THIN_LINE_HALF_WIDTH_THRESHOLD,o as TILE_SIZE,_ as VTL_HIGH_RES_CUTOFF,$ as VTL_TEXTURE_BINDING_UNIT_GLYPHS,Z as VTL_TEXTURE_BINDING_UNIT_SPRITES,e as WEBGL_MAX_INNER_STOPS,t as WEBGL_MAX_STOPS};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- var E,L,T,I,A,_,S,O,N;!function(E){E[E.FILL=0]="FILL",E[E.LINE=1]="LINE",E[E.MARKER=2]="MARKER",E[E.TEXT=3]="TEXT",E[E.LABEL=4]="LABEL"}(E||(E={})),function(E){E[E.SUCCEEDED=0]="SUCCEEDED",E[E.FAILED_OUT_OF_MEMORY=1]="FAILED_OUT_OF_MEMORY"}(L||(L={})),function(E){E[E.NONE=0]="NONE",E[E.MAP=1]="MAP",E[E.LABEL=2]="LABEL",E[E.LABEL_ALPHA=4]="LABEL_ALPHA",E[E.HITTEST=8]="HITTEST",E[E.HIGHLIGHT=16]="HIGHLIGHT",E[E.CLIP=32]="CLIP",E[E.DEBUG=64]="DEBUG",E[E.NUM_DRAW_PHASES=9]="NUM_DRAW_PHASES"}(T||(T={})),function(E){E[E.SIZE=0]="SIZE",E[E.COLOR=1]="COLOR",E[E.OPACITY=2]="OPACITY",E[E.ROTATION=3]="ROTATION"}(I||(I={})),function(E){E[E.NONE=0]="NONE",E[E.OPACITY=1]="OPACITY",E[E.COLOR=2]="COLOR",E[E.ROTATION=4]="ROTATION",E[E.SIZE_MINMAX_VALUE=8]="SIZE_MINMAX_VALUE",E[E.SIZE_SCALE_STOPS=16]="SIZE_SCALE_STOPS",E[E.SIZE_FIELD_STOPS=32]="SIZE_FIELD_STOPS",E[E.SIZE_UNIT_VALUE=64]="SIZE_UNIT_VALUE"}(A||(A={})),function(E){E[E.MINMAX_TARGETS_OUTLINE=128]="MINMAX_TARGETS_OUTLINE",E[E.SCALE_TARGETS_OUTLINE=256]="SCALE_TARGETS_OUTLINE",E[E.FIELD_TARGETS_OUTLINE=512]="FIELD_TARGETS_OUTLINE",E[E.UNIT_TARGETS_OUTLINE=1024]="UNIT_TARGETS_OUTLINE"}(_||(_={})),function(E){E[E.SPRITE=0]="SPRITE",E[E.GLYPH=1]="GLYPH"}(S||(S={})),function(E){E[E.DEFAULT=0]="DEFAULT",E[E.SIMPLE=1]="SIMPLE",E[E.DOT_DENSITY=2]="DOT_DENSITY",E[E.OUTLINE_FILL=3]="OUTLINE_FILL",E[E.OUTLINE_FILL_SIMPLE=4]="OUTLINE_FILL_SIMPLE",E[E.HEATMAP=5]="HEATMAP"}(O||(O={})),function(E){E[E.GAUSSIAN_BLUR=0]="GAUSSIAN_BLUR",E[E.KERNEL_DENSITY=1]="KERNEL_DENSITY"}(N||(N={}));export{N as HeatmapMode,S as MosaicType,I as VVType,T as WGLDrawPhase,L as WGLGeometryTransactionStatus,E as WGLGeometryType,O as WGLSymbologyType,A as WGLVVFlag,_ as WGLVVTarget};
5
+ var E,T,I,L,A,_,S,O,N;!function(E){E[E.FILL=0]="FILL",E[E.LINE=1]="LINE",E[E.MARKER=2]="MARKER",E[E.TEXT=3]="TEXT",E[E.LABEL=4]="LABEL"}(E||(E={})),function(E){E[E.SUCCEEDED=0]="SUCCEEDED",E[E.FAILED_OUT_OF_MEMORY=1]="FAILED_OUT_OF_MEMORY"}(T||(T={})),function(E){E[E.NONE=0]="NONE",E[E.MAP=1]="MAP",E[E.LABEL=2]="LABEL",E[E.LABEL_ALPHA=4]="LABEL_ALPHA",E[E.HITTEST=8]="HITTEST",E[E.HIGHLIGHT=16]="HIGHLIGHT",E[E.CLIP=32]="CLIP",E[E.DEBUG=64]="DEBUG",E[E.NUM_DRAW_PHASES=9]="NUM_DRAW_PHASES"}(I||(I={})),function(E){E[E.SIZE=0]="SIZE",E[E.COLOR=1]="COLOR",E[E.OPACITY=2]="OPACITY",E[E.ROTATION=3]="ROTATION"}(L||(L={})),function(E){E[E.NONE=0]="NONE",E[E.OPACITY=1]="OPACITY",E[E.COLOR=2]="COLOR",E[E.ROTATION=4]="ROTATION",E[E.SIZE_MINMAX_VALUE=8]="SIZE_MINMAX_VALUE",E[E.SIZE_SCALE_STOPS=16]="SIZE_SCALE_STOPS",E[E.SIZE_FIELD_STOPS=32]="SIZE_FIELD_STOPS",E[E.SIZE_UNIT_VALUE=64]="SIZE_UNIT_VALUE"}(A||(A={})),function(E){E[E.MINMAX_TARGETS_OUTLINE=128]="MINMAX_TARGETS_OUTLINE",E[E.SCALE_TARGETS_OUTLINE=256]="SCALE_TARGETS_OUTLINE",E[E.FIELD_TARGETS_OUTLINE=512]="FIELD_TARGETS_OUTLINE",E[E.UNIT_TARGETS_OUTLINE=1024]="UNIT_TARGETS_OUTLINE"}(_||(_={})),function(E){E[E.SPRITE=0]="SPRITE",E[E.GLYPH=1]="GLYPH"}(S||(S={})),function(E){E[E.DEFAULT=0]="DEFAULT",E[E.SIMPLE=1]="SIMPLE",E[E.DOT_DENSITY=2]="DOT_DENSITY",E[E.OUTLINE_FILL=3]="OUTLINE_FILL",E[E.OUTLINE_FILL_SIMPLE=4]="OUTLINE_FILL_SIMPLE",E[E.HEATMAP=5]="HEATMAP",E[E.PIE_CHART=6]="PIE_CHART"}(O||(O={})),function(E){E[E.GAUSSIAN_BLUR=0]="GAUSSIAN_BLUR",E[E.KERNEL_DENSITY=1]="KERNEL_DENSITY"}(N||(N={}));export{N as HeatmapMode,S as MosaicType,L as VVType,I as WGLDrawPhase,T as WGLGeometryTransactionStatus,E as WGLGeometryType,O as WGLSymbologyType,A as WGLVVFlag,_ as WGLVVTarget};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{isSome as e,isNone as t}from"../../../../../../core/maybe.js";import{deltaDecodeGeometry as r,convertFromGeometry as i}from"../../../../../../layers/graphics/featureConversionUtils.js";import{WGLGeometryType as s,WGLSymbologyType as o}from"../../enums.js";import{i1616to32 as n}from"../../number.js";import{FillMaterialKey as l,hasOutlineFillSymbology as m,hasSimpleSymbology as a}from"../../materialKey/MaterialKey.js";import{triangulate as h,triangulateLibtess as y,clipMarshall as c}from"./templateUtils.js";import p from"./WGLLineTemplate.js";const x=100,_=1,f=f=>class extends f{constructor(...e){super(...e),this.forceLibtess=!1,this._bitset=0,this._lineTemplate=null,this.geometryType=s.FILL}_maybeAddLineTemplate(e){this._lineTemplate=p.fromFillOutline(e)}_write(t,r,i,s){const o="esriGeometryPoint"===r.geometryType,n=l.load(this._materialKey);t.recordStart(r.getDisplayId(),this._materialKey,this.geometryType,o),this._writeGeometry(t,r,n,s,o),m(n)&&e(this._lineTemplate)&&this._lineTemplate.writeGeometry(t,r,s,o),t.recordEnd()}_writeGeometry(e,r,i,s,o){const n=this._getGeometry(r,s,o);if(t(n))return;const l=[];if(!(n.maxLength>x)&&!this.forceLibtess&&h(l,n))return void(l.length&&this._writeVertices(e,r,n.coords,n.lengths,i,l));const m=y(n);this._writeVertices(e,r,m,[m.length/2],i)}_writeVertex(e,t,r,i,s,l){const m=n(_*i,_*s);if(e.vertexBounds(i,s,0,0),e.vertexWrite(m),e.vertexWrite(t),r.symbologyType===o.DOT_DENSITY)e.vertexWriteF32(1/Math.abs(l.readGeometryArea()));else{e.vertexWrite(this.fillColor);const t=a(r);t||(e.vertexWrite(this.tl),e.vertexWrite(this.br)),e.vertexWrite(this.aux2),e.vertexWrite(this.aux3),t||e.vertexWrite(this._minMaxZoom)}}_writeVertices(e,t,r,i,s,n){const l=t.getDisplayId(),m=this._bitset<<24|l,a=i.reduce(((e,t)=>e+t)),h=s.symbologyType===o.DOT_DENSITY?4:10,y=e.vertexCount();e.vertexEnsureSize(h*a);let c=0;if(n)for(const o of n){const i=r[2*o],n=r[2*o+1];this._writeVertex(e,m,s,i,n,t),c++}else for(let o=0;o<r.length;o+=2){const i=Math.round(r[o]),n=Math.round(r[o+1]);this._writeVertex(e,m,s,i,n,t),c++}e.indexEnsureSize(c);for(let o=0;o<c;o++)e.indexWrite(o+y)}_getGeometry(e,t,s){const o=t?r(i(t),2):e.readGeometryForDisplay();if(!o)return null;return c(o,s?256:8)}};export{f as default};
5
+ import{isSome as e,isNone as t}from"../../../../../../core/maybe.js";import{deltaDecodeGeometry as r,convertFromGeometry as i}from"../../../../../../layers/graphics/featureConversionUtils.js";import{WGLGeometryType as s,WGLSymbologyType as o}from"../../enums.js";import{i1616to32 as m}from"../../number.js";import{getStrides as l}from"../../Utils.js";import{FillMaterialKey as n,hasOutlineFillSymbology as a,hasSimpleSymbology as h}from"../../materialKey/MaterialKey.js";import{triangulate as y,triangulateLibtess as p,clipMarshall as c}from"./templateUtils.js";import x from"./WGLLineTemplate.js";const _=100,f=1,u=u=>class extends u{constructor(...e){super(...e),this.forceLibtess=!1,this._bitset=0,this._lineTemplate=null,this.geometryType=s.FILL}_maybeAddLineTemplate(e){this._lineTemplate=x.fromFillOutline(e)}_write(t,r,i,s){const o="esriGeometryPoint"===r.geometryType,m=n.load(this._materialKey);t.recordStart(r.getDisplayId(),this._materialKey,this.geometryType,o),this._writeGeometry(t,r,m,s,o),a(m)&&e(this._lineTemplate)&&this._lineTemplate.writeGeometry(t,r,s,o),t.recordEnd()}_writeGeometry(e,r,i,s,o){const m=this._getGeometry(r,s,o);if(t(m))return;const l=[];if(!(m.maxLength>_)&&!this.forceLibtess&&y(l,m))return void(l.length&&this._writeVertices(e,r,m.coords,m.lengths,i,l));const n=p(m);this._writeVertices(e,r,n,[n.length/2],i)}_writeVertex(e,t,r,i,s,l){const n=m(f*i,f*s);if(e.vertexBounds(i,s,0,0),e.vertexWrite(n),e.vertexWrite(t),r.symbologyType===o.DOT_DENSITY)e.vertexWriteF32(1/Math.abs(l.readGeometryArea()));else{e.vertexWrite(this.fillColor);const t=h(r);t||(e.vertexWrite(this.tl),e.vertexWrite(this.br)),e.vertexWrite(this.aux2_1),e.vertexWrite(this.aux2_2),e.vertexWrite(this.aux3),t||e.vertexWrite(this._minMaxZoom)}}_writeVertices(e,t,r,i,s,o){const m=t.getDisplayId(),n=this._bitset<<24|m,a=i.reduce(((e,t)=>e+t)),h=l(s.geometryType,s.symbologyType).geometry/4,y=e.vertexCount();e.vertexEnsureSize(h*a);let p=0;if(o)for(const l of o){const i=r[2*l],o=r[2*l+1];this._writeVertex(e,n,s,i,o,t),p++}else for(let l=0;l<r.length;l+=2){const i=Math.round(r[l]),o=Math.round(r[l+1]);this._writeVertex(e,n,s,i,o,t),p++}e.indexEnsureSize(p);for(let l=0;l<p;l++)e.indexWrite(l+y)}_getGeometry(e,t,s){const o=t?r(i(t),2):e.readGeometryForDisplay();if(!o)return null;return c(o,s?256:8)}};export{u 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.24/esri/copyright.txt for details.
4
4
  */
5
- import{isNone as e}from"../../../../../../core/maybe.js";import{THIN_LINE_HALF_WIDTH_THRESHOLD as t}from"../../definitions.js";import{WGLGeometryType as i}from"../../enums.js";import{i8888to32 as r,i1616to32 as s}from"../../number.js";import{LineTessellation as o}from"../../TurboLine.js";import{LineMaterialKey as n,FillMaterialKey as l,hasOutlineFillSymbology as a,hasSimpleSymbology as h}from"../../materialKey/MaterialKey.js";import{clipLinesMarshall as d}from"./templateUtils.js";const m=8,x=16,p=65535,f=r=>class extends r{constructor(...e){super(...e),this.tessellationProperties={},this._tessellationOptions={halfWidth:0,pixelCoordRatio:1,offset:0},this.geometryType=i.LINE}writeGeometry(e,t,i,r){this._writeGeometry(e,t,i,r)}_initializeTessellator(e){const i=n.load(this._materialKey),r=l.load(this._materialKey),s=this._tessellationOptions,h=i.vvSizeFieldStops||i.vvSizeMinMaxValue||i.vvSizeScaleStops||i.vvSizeUnitValue,d=this.tessellationProperties._halfWidth<t&&!e&&!h;this.tessellationProperties.minMaxZoom=this._minMaxZoom,s.wrapDistance=p,s.textured=this._isDashed||this._hasPattern,s.offset=this.tessellationProperties.offset,s.halfWidth=this.tessellationProperties._halfWidth;const m=d?0:1,x=a(r)?v:_;this._lineTessellator=new o(x(this.tessellationProperties,m,m),u(this.tessellationProperties),d)}_write(e,t,i,r){const s="esriGeometryPoint"===t.geometryType;e.recordStart(t.getDisplayId(),this._materialKey,this.geometryType,s),this._writeGeometry(e,t,r,s),e.recordEnd()}_writeGeometry(t,i,r,s){const o=r??i.readLegacyGeometryForDisplay(),n=this._getLines(o,s);e(n)||this._writeVertices(t,i,n)}_getLines(t,i){if(e(t))return null;const r=t.paths||t.rings;if(e(r))return null;return d(r,i?256:16)}_writeVertices(e,t,i){const r=t.getDisplayId(),s=e.vertexCount(),o=this.tessellationProperties,h=this._tessellationOptions;o.out=e,o.id=r,o.indexCount=0,o.vertexCount=0,o.offset=s,h.capType=this._capType,h.joinType=this._joinType;const d=l.load(this._materialKey);this.tessellationProperties.key=a(d)?d:n.load(this._materialKey);for(const{line:n,start:l}of i)h.initialDistance=l%p,this._lineTessellator.tessellate(n,h)}},_=(e,t,i)=>(o,n,l,a,h,d,p,f,_,v,u)=>{const c=s(u,Math.ceil(x*e._halfWidth)),y=r(Math.round(x*p),Math.round(x*f),Math.round(x*_),Math.round(x*v)),W=r(x*h,x*d,0,e._bitset),M=e.out;return M.vertexBounds(o,n,t,i),M.vertexWrite(s(m*o,m*n)),M.vertexWrite(e.id),M.vertexWrite(e._fillColor),M.vertexWrite(y),M.vertexWrite(c),M.vertexWrite(e._tl),M.vertexWrite(e._br),M.vertexWrite(W),M.vertexWrite(s(Math.ceil(x*e._halfReferenceWidth),0)),M.vertexWrite(e.minMaxZoom),M.vertexEnd(),e.offset+e.vertexCount++},v=(e,t,i)=>(o,n,l,a,d,p,f,_,v,u,c)=>{const y=r(0,0,x*e._halfWidth,x*e._halfReferenceWidth),W=r(x*f+128,x*_+128,x*v+128,x*u+128),M=e.out,P=e._bitset<<24|e.id;M.vertexBounds(o,n,t,i),M.vertexWrite(s(m*o,m*n)),M.vertexWrite(P),M.vertexWrite(e._fillColor);const T=h(e.key);return T||(M.vertexWrite(0),M.vertexWrite(0)),M.vertexWrite(y),M.vertexWrite(W),T||M.vertexWrite(e.minMaxZoom),M.vertexEnd(),e.offset+e.vertexCount++},u=e=>(t,i,r)=>{const s=e.out;s.indexWrite(t),s.indexWrite(i),s.indexWrite(r),e.indexCount+=3};export{f as default};
5
+ import{isNone as e}from"../../../../../../core/maybe.js";import{THIN_LINE_HALF_WIDTH_THRESHOLD as t}from"../../definitions.js";import{WGLGeometryType as i}from"../../enums.js";import{i1616to32 as r,i8888to32 as s}from"../../number.js";import{LineTessellation as o}from"../../TurboLine.js";import{LineMaterialKey as n,FillMaterialKey as l,hasOutlineFillSymbology as a,hasSimpleSymbology as h}from"../../materialKey/MaterialKey.js";import{clipLinesMarshall as d}from"./templateUtils.js";const m=8,x=16,p=65535,f=r=>class extends r{constructor(...e){super(...e),this.tessellationProperties={},this._tessellationOptions={halfWidth:0,pixelCoordRatio:1,offset:0},this.geometryType=i.LINE}writeGeometry(e,t,i,r){this._writeGeometry(e,t,i,r)}_initializeTessellator(e){const i=n.load(this._materialKey),r=l.load(this._materialKey),s=this._tessellationOptions,h=i.vvSizeFieldStops||i.vvSizeMinMaxValue||i.vvSizeScaleStops||i.vvSizeUnitValue,d=this.tessellationProperties._halfWidth<t&&!e&&!h;this.tessellationProperties.minMaxZoom=this._minMaxZoom,s.wrapDistance=p,s.textured=this._isDashed||this._hasPattern,s.offset=this.tessellationProperties.offset,s.halfWidth=this.tessellationProperties._halfWidth;const m=d?0:1,x=a(r)?v:_;this._lineTessellator=new o(x(this.tessellationProperties,m,m),u(this.tessellationProperties),d)}_write(e,t,i,r){const s="esriGeometryPoint"===t.geometryType;e.recordStart(t.getDisplayId(),this._materialKey,this.geometryType,s),this._writeGeometry(e,t,r,s),e.recordEnd()}_writeGeometry(t,i,r,s){const o=r??i.readLegacyGeometryForDisplay(),n=this._getLines(o,s);e(n)||this._writeVertices(t,i,n)}_getLines(t,i){if(e(t))return null;const r=t.paths||t.rings;if(e(r))return null;return d(r,i?256:16)}_writeVertices(e,t,i){const r=t.getDisplayId(),s=e.vertexCount(),o=this.tessellationProperties,h=this._tessellationOptions;o.out=e,o.id=r,o.indexCount=0,o.vertexCount=0,o.offset=s,h.capType=this._capType,h.joinType=this._joinType;const d=l.load(this._materialKey);this.tessellationProperties.key=a(d)?d:n.load(this._materialKey);for(const{line:n,start:l}of i)h.initialDistance=l%p,this._lineTessellator.tessellate(n,h)}},_=(e,t,i)=>(o,n,l,a,h,d,p,f,_,v,u)=>{const c=r(u,Math.ceil(x*e._halfWidth)),y=s(Math.round(x*p),Math.round(x*f),Math.round(x*_),Math.round(x*v)),W=s(x*h,x*d,0,e._bitset),M=e.out;return M.vertexBounds(o,n,t,i),M.vertexWrite(r(m*o,m*n)),M.vertexWrite(e.id),M.vertexWrite(e._fillColor),M.vertexWrite(y),M.vertexWrite(c),M.vertexWrite(e._tl),M.vertexWrite(e._br),M.vertexWrite(W),M.vertexWrite(r(Math.ceil(x*e._halfReferenceWidth),0)),M.vertexWrite(e.minMaxZoom),M.vertexEnd(),e.offset+e.vertexCount++},v=(e,t,i)=>(o,n,l,a,d,p,f,_,v,u,c)=>{const y=r(x*e._halfWidth,x*e._halfReferenceWidth),W=s(x*f+128,x*_+128,x*v+128,x*u+128),M=e.out,P=e._bitset<<24|e.id;M.vertexBounds(o,n,t,i),M.vertexWrite(r(m*o,m*n)),M.vertexWrite(P),M.vertexWrite(e._fillColor);const T=h(e.key);return T||(M.vertexWrite(0),M.vertexWrite(0)),M.vertexWrite(0),M.vertexWrite(y),M.vertexWrite(W),T||M.vertexWrite(e.minMaxZoom),M.vertexEnd(),e.offset+e.vertexCount++},u=e=>(t,i,r)=>{const s=e.out;s.indexWrite(t),s.indexWrite(i),s.indexWrite(r),e.indexCount+=3};export{f as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{isSome as t}from"../../../../../../core/maybe.js";import{pt2px as e}from"../../../../../../core/screenUtils.js";import{premultiplyAlphaRGBA as s}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as i,SPRITE_PADDING as r}from"../../definitions.js";import{radToByte as o}from"../../GeometryUtils.js";import{i1616to32 as a,i8888to32 as l}from"../../number.js";import{FillMaterialKey as n}from"../../materialKey/MaterialKey.js";import{isFunction as c,getMinMaxZoom as h}from"./util.js";import f from"./WGLBaseFillTemplate.js";import m from"./WGLDynamicMeshTemplate.js";import{ok as p}from"../../util/Result.js";const _=128;class y extends(f(m)){constructor(r,l,h){if(super(r),this._minMaxZoom=a(Math.round(l*i),Math.round(h*i)),c(r.color)){const t=(t,e,i)=>{const o=r.color(t,e,i);return o&&s(o)||0};this._dynamicPropertyMap.set("fillColor",t)}else{const t=r.color;this.fillColor=t&&s(t)||0}const f="CIMMarkerPlacementInsidePolygon"===r.cim.placement?.type&&r.cim.placement.shiftOddRows?2:1,m=r.height;if(c(m)){const t=(t,e,s)=>m(t,e,s)*f;this._dynamicPropertyMap.set("_height",t)}else this._height=(m||0)*f;const p=r.offsetX;if(c(p)){const t=(t,s,i)=>{let r=e(p(t,s,i))+_;return r>255?r=255:r<0&&(r=0),r};this._dynamicPropertyMap.set("_offsetX",t)}else{let t=e(p||0)+_;t>255?t=255:t<0&&(t=0),this._offsetX=t}const y=r.offsetY;if(c(y)){const t=(t,s,i)=>{let r=e(-y(t,s,i))+_;return r>255?r=255:r<0&&(r=0),r};this._dynamicPropertyMap.set("_offsetY",t)}else{let t=e(-y||0)+_;t>255?t=255:t<0&&(t=0),this._offsetY=t}const d=r.scaleX;c(d)?this._dynamicPropertyMap.set("_scaleX",d):this._scaleX=d||1;const u=r.angle;if(c(u)){const t=(t,e,s)=>o(u(t,e,s));this._dynamicPropertyMap.set("_angle",t)}else this._angle=o(u)||0;if(t(r.effects)){const t=r.effects;c(t)?this._dynamicPropertyMap.set("_effects",t):this._effects=t}this._cimFillLayer=r,this._fillMaterialKey=n.load(r.materialKey)}static fromCIMFill(t,e){const[s,i]=h(t.scaleInfo,e);return new y(t,s,i)}bindFeature(t,s,i){const o=t.readLegacyFeature();this._dynamicPropertyMap.forEach(((t,e)=>{this[e]=t(o,s,i)}));const n=this._fillMaterialKey,c=this._materialCache,h=(0,this._cimFillLayer.materialHash)(o,s,i),f=c.get(h);let m=null;if(f&&p(f.spriteMosaicItem)&&(m=f.spriteMosaicItem),m){const{rect:t,width:s,height:i}=m,o=t.x+r,c=t.y+r,h=o+s,f=c+i;let p=Math.round(e(this._height));p>255?p=255:p<=0&&(p=f-c);let _=Math.round(e(this._height/i*s||0));_>255?_=255:_<=0&&(_=h-o);const y=this._scaleX,d=1;this.tl=a(o,c),this.br=a(h,f),this.aux2=l(_,p,this._offsetX,this._offsetY),this.aux3=l(y,d,this._angle,0),n.sdf=m.sdf,n.pattern=!0,n.textureBinding=m.textureBinding}else this.tl=0,this.br=0,this.aux2=0,this.aux3=0,n.sdf=!1,n.pattern=!1,n.textureBinding=0;this._materialKey=n.data}}export{y as default};
5
+ import{isSome as t}from"../../../../../../core/maybe.js";import{pt2px as e}from"../../../../../../core/screenUtils.js";import{premultiplyAlphaRGBA as s}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as i,SPRITE_PADDING as o}from"../../definitions.js";import{radToByte as r}from"../../GeometryUtils.js";import{i1616to32 as a,i8888to32 as l}from"../../number.js";import{FillMaterialKey as h}from"../../materialKey/MaterialKey.js";import{isFunction as n,getMinMaxZoom as c}from"./util.js";import f from"./WGLBaseFillTemplate.js";import m from"./WGLDynamicMeshTemplate.js";import{ok as p}from"../../util/Result.js";class _ extends(f(m)){constructor(o,l,c){if(super(o),this._minMaxZoom=a(Math.round(l*i),Math.round(c*i)),n(o.color)){const t=(t,e,i)=>{const r=o.color(t,e,i);return r&&s(r)||0};this._dynamicPropertyMap.set("fillColor",t)}else{const t=o.color;this.fillColor=t&&s(t)||0}const f="CIMMarkerPlacementInsidePolygon"===o.cim.placement?.type&&o.cim.placement.shiftOddRows?2:1,m=o.height;if(n(m)){const t=(t,e,s)=>m(t,e,s)*f;this._dynamicPropertyMap.set("_height",t)}else this._height=(m||0)*f;const p=o.offsetX;if(n(p)){const t=(t,s,i)=>e(p(t,s,i));this._dynamicPropertyMap.set("_offsetX",t)}else this._offsetX=e(p||0);const _=o.offsetY;if(n(_)){const t=(t,s,i)=>e(-_(t,s,i));this._dynamicPropertyMap.set("_offsetY",t)}else this._offsetY=e(-_||0);const y=o.scaleX;n(y)?this._dynamicPropertyMap.set("_scaleX",y):this._scaleX=y||1;const d=o.angle;if(n(d)){const t=(t,e,s)=>r(d(t,e,s));this._dynamicPropertyMap.set("_angle",t)}else this._angle=r(d)||0;if(t(o.effects)){const t=o.effects;n(t)?this._dynamicPropertyMap.set("_effects",t):this._effects=t}this._cimFillLayer=o,this._fillMaterialKey=h.load(o.materialKey)}static fromCIMFill(t,e){const[s,i]=c(t.scaleInfo,e);return new _(t,s,i)}bindFeature(t,s,i){const r=t.readLegacyFeature();this._dynamicPropertyMap.forEach(((t,e)=>{this[e]=t(r,s,i)}));const h=this._fillMaterialKey,n=this._materialCache,c=(0,this._cimFillLayer.materialHash)(r,s,i),f=n.get(c);let m=null;if(f&&p(f.spriteMosaicItem)&&(m=f.spriteMosaicItem),m){const{rect:t,width:s,height:i}=m,r=t.x+o,n=t.y+o,c=r+s,f=n+i;let p=Math.round(e(this._height));p<=0&&(p=f-n);let _=Math.round(e(this._height/i*s||0));_<=0&&(_=c-r);const y=this._scaleX,d=1;this.tl=a(r,n),this.br=a(c,f),this.aux2_1=a(_,p),this.aux2_2=a(this._offsetX,this._offsetY),this.aux3=l(y,d,this._angle,0),h.sdf=m.sdf,h.pattern=!0,h.textureBinding=m.textureBinding}else this.tl=0,this.br=0,this.aux2_1=0,this.aux2_2=0,this.aux3=0,h.sdf=!1,h.pattern=!1,h.textureBinding=0;this._materialKey=h.data}}export{_ 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.24/esri/copyright.txt for details.
4
4
  */
5
- import{pt2px as t}from"../../../../../../core/screenUtils.js";import{premultiplyAlphaRGBAArray as e,premultiplyAlphaRGBA as o}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as r,BITSET_GENERIC_LOCK_COLOR as l,SPRITE_PADDING as i,PICTURE_FILL_COLOR as s}from"../../definitions.js";import{degToByte as n}from"../../GeometryUtils.js";import{i8888to32 as a,i1616to32 as m}from"../../number.js";import{FillMaterialKey as c}from"../../materialKey/MaterialKey.js";import{getMinMaxZoom as f,DEFAULT_MIN_ZOOM as h,DEFAULT_MAX_ZOOM as u}from"./util.js";import d from"./WGLBaseFillTemplate.js";import p from"./WGLMeshTemplate.js";const y=128;class x extends(d(p)){constructor(t,e,o,l,i,s,n,f,h,u,d,p,y,x,M,j){super(),this._effects=x;const w=c.load(t);e&&(w.sdf=e.sdf,w.pattern=!0,w.textureBinding=e.textureBinding),this.fillColor=o,this.tl=l,this.br=i,this.aux2=a(s,n,f,h),this.aux3=a(u,d,p,0),this._bitset=y,this._minMaxZoom=m(Math.round(M*r),Math.round(j*r)),this._materialKey=w.data}static fromCIMFill(e,r,s){const a=e.color,c=a&&o(a)||0,h=e.materialKey,[u,d]=f(e.scaleInfo,s);if(!r)return new x(h,null,c,0,0,0,0,0,0,0,0,0,e.colorLocked?l:0,e.effects,u,d);const{rect:p,width:M,height:j}=r,w=e.scaleX||1,g=p.x+i,K=p.y+i,L=g+M,_=K+j,b=e.height,F=w*b;let T=Math.round(b);T>255?T=255:T<=0&&(T=_-K);let B=Math.round(F);B>255?B=255:B<=0&&(B=L-g);let G=t(e.offsetX||0)+y;G>255&&(G=255);let S=t(-e.offsetY||0)+y;S>255&&(S=255);const k=m(g,K),A=m(L,_);return new x(h,r,c,k,A,B,T,G,S,y,y,n(e.angle),e.colorLocked?l:0,e.effects,u,d)}static fromSimpleFill(t,o,r=!1){const{color:s}=t,n=s&&"esriSFSNull"!==t.style&&e(s)||0,a=r?l:0,c=t.materialKey;let f;if(o){const{rect:t,width:e,height:r}=o,l=t.x+i,s=t.y+i,d=l+e,p=s+r,M=m(l,s),j=m(d,p);f=new x(c,o,n,M,j,e,r,0,0,y,y,0,a,null,h,u)}else f=new x(c,null,n,0,0,0,0,0,0,0,0,0,a,null,h,u);return f._maybeAddLineTemplate(t),f}static fromPictureFill(e,o,r=!1){const n=s,{rect:a,width:c,height:f}=o,d=a.x+i,p=a.y+i,M=d+c,j=p+f,w=m(d,p),g=m(M,j);let K=Math.round(t(e.width));K>255&&(K=255);let L=Math.round(t(e.height));L>255&&(L=255);let _=t(e.xoffset)+y;_>255&&(_=255);let b=t(-e.yoffset)+y;b>255&&(b=255);const F=e.materialKey,T=r?l:0,B=new x(F,o,n,w,g,K,L,_,b,y*e.xscale,y*e.yscale,0,T,null,h,u);return B._maybeAddLineTemplate(e),B}}export{x as default};
5
+ import{pt2px as t}from"../../../../../../core/screenUtils.js";import{premultiplyAlphaRGBAArray as e,premultiplyAlphaRGBA as r}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as i,BITSET_GENERIC_LOCK_COLOR as o,BITSET_FILL_RANDOM_PATTERN_OFFSET as s,SPRITE_PADDING as l,PICTURE_FILL_COLOR as a}from"../../definitions.js";import{degToByte as n}from"../../GeometryUtils.js";import{i1616to32 as m,i8888to32 as f}from"../../number.js";import{FillMaterialKey as c}from"../../materialKey/MaterialKey.js";import{getMinMaxZoom as h,DEFAULT_MIN_ZOOM as u,DEFAULT_MAX_ZOOM as d}from"./util.js";import p from"./WGLBaseFillTemplate.js";import y from"./WGLMeshTemplate.js";const x=128;class M extends(p(y)){constructor(t,e,r,o,s,l,a,n,h,u,d,p,y,x,M,j){super(),this._effects=x;const w=c.load(t);e&&(w.sdf=e.sdf,w.pattern=!0,w.textureBinding=e.textureBinding),this.fillColor=r,this.tl=o,this.br=s,this.aux2_1=m(l,a),this.aux2_2=m(n,h),this.aux3=f(u,d,p,0),this._bitset=y,this._minMaxZoom=m(Math.round(M*i),Math.round(j*i)),this._materialKey=w.data}static fromCIMFill(e,i,a){const f=e.color,c=f&&r(f)||0,u=e.materialKey,[d,p]=h(e.scaleInfo,a),y=(e.colorLocked?o:0)|(e.applyRandomOffset?s:0);if(!i)return new M(u,null,c,0,0,0,0,0,0,0,0,0,y,e.effects,d,p);const{rect:j,width:w,height:g}=i,_=e.scaleX||1,K=j.x+l,b=j.y+l,F=K+w,L=b+g,T=e.height,B=_*T;let G=Math.round(T);G<=0&&(G=L-b);let S=Math.round(B);S<=0&&(S=F-K);const A=t(e.offsetX||0),C=t(-e.offsetY||0),I=m(K,b),U=m(F,L);return new M(u,i,c,I,U,S,G,A,C,x,x,n(e.angle),y,e.effects,d,p)}static fromSimpleFill(t,r,i=!1){const{color:s}=t,a=s&&"esriSFSNull"!==t.style&&e(s)||0,n=i?o:0,f=t.materialKey;let c;if(r){const{rect:t,width:e,height:i}=r,o=t.x+l,s=t.y+l,h=o+e,p=s+i,y=m(o,s),j=m(h,p);c=new M(f,r,a,y,j,e,i,0,0,x,x,0,n,null,u,d)}else c=new M(f,null,a,0,0,0,0,0,0,0,0,0,n,null,u,d);return c._maybeAddLineTemplate(t),c}static fromPictureFill(e,r,i=!1){const s=a,{rect:n,width:f,height:c}=r,h=n.x+l,p=n.y+l,y=h+f,j=p+c,w=m(h,p),g=m(y,j),_=Math.round(t(e.width)),K=Math.round(t(e.height)),b=t(e.xoffset),F=t(-e.yoffset),L=e.materialKey,T=i?o:0,B=new M(L,r,s,w,g,_,K,b,F,x*e.xscale,x*e.yscale,0,T,null,u,d);return B._maybeAddLineTemplate(e),B}}export{M as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{unwrapOr as t}from"../../../../../../core/maybe.js";import{pt2px as e}from"../../../../../../core/screenUtils.js";import{c as o}from"../../../../../../chunks/mat2df32.js";import{c as s}from"../../../../../../chunks/vec2f32.js";import{Alignment as i,ExtremityPlacement as r}from"../../../../../../symbols/cim/enums.js";import{premultiplyAlphaRGBA as a,premultiplyAlphaRGBAArray as n}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as h,BITSET_MARKER_ALIGNMENT_MAP as l,BITSET_MARKER_ALIGNMENT_SCREEN as m,BITSET_GENERIC_LOCK_COLOR as c,BITSET_MARKER_OUTLINE_ALLOW_COLOR_OVERRIDE as f,BITSET_MARKER_SCALE_SYMBOLS_PROPORTIONALLY as d,SPRITE_PADDING as u,PICTURE_FILL_COLOR as M}from"../../definitions.js";import{i1616to32 as p,i8888to32 as x}from"../../number.js";import{MarkerMaterialKey as y}from"../../materialKey/MaterialKey.js";import{getMinMaxZoom as S,DEFAULT_MIN_ZOOM as _,DEFAULT_MAX_ZOOM as g}from"./util.js";import V from"./WGLBaseMarkerTemplate.js";import z from"./WGLMeshTemplate.js";class B extends(V(z)){constructor(t,e,r,a,n,M,S,_,g,V,z,B,b,k,w,j,L,C,P,R,E,v,A){super(),this.angle=a,this.height=S,this.width=M,this.xOffset=e*P,this.yOffset=r*P,this._markerPlacement=R,this._effects=E,this._anchorX=.5-(.5+j)*w.width/w.width,this._anchorY=.5-(.5+L)*w.height/w.height,this._minMaxZoom=p(Math.round(v*h),Math.round(A*h));const K=(k===i.MAP?l:m)|(z?c:0)|(b?f:0)|(B?d:0),U=w&&w.sdf,W=y.load(t);W.sdf=U,W.pattern=!0,W.textureBinding=w.textureBinding,this._materialKey=W.data,this._fillColor=n,this._outlineColor=g,this._sizeOutlineWidth=x(Math.round(Math.min(Math.sqrt(128*M),255)),Math.round(Math.min(Math.sqrt(128*S),255)),Math.round(Math.min(Math.sqrt(128*V),255)),Math.round(Math.min(Math.sqrt(128*_),255)));const X=w.rect.x+u,q=w.rect.y+u,T=X+w.width,Y=q+w.height;this._offsets.xUpperLeft=X,this._offsets.yUpperLeft=q,this._offsets.xUpperRight=T,this._offsets.yUpperRight=q,this._offsets.xBottomLeft=X,this._offsets.yBottomLeft=Y,this._offsets.xBottomRight=T,this._offsets.yBottomRight=Y,this._texUpperLeft=p(X,q),this._texUpperRight=p(T,q),this._texBottomLeft=p(X,Y),this._texBottomRight=p(T,Y),M*=C,S*=C,M*=P,S*=P;const N=Math.round(64*C);this._bitestAndDistRatio=p(K,N),this._computedWidth=M,this._computedHeight=S;const H=s(),I=o();this._applyTransformation(I,H)}static fromCIMMarker(o,s,r){const n=s&&s.width||1,h=s&&s.height||1,l=o.size,m=n/h*o.scaleX,c=o.scaleSymbolsProportionally&&o.frameHeight?l/o.frameHeight:1;let f=a(o.color);const d=a(o.outlineColor),u=e(l),M=u*m,p=e(o.offsetX||0),x=e(o.offsetY||0),y=e(o.outlineWidth||0)*c,_=o.alignment||i.SCREEN,g=e(o.referenceSize),[V,z]=S(o.scaleInfo,r);s.sdf||0!==f||(f=-1);let b=o.rotation||0;o.rotateClockwise||(b=-b);let k=0,w=0;const j=o.anchorPoint;j&&(o.isAbsoluteAnchorPoint?l&&(k=-j.x/(l*m),w=j.y/l):(k=j.x,w=j.y));const L=new B(o.materialKey,p,x,b,f,M,u,g,d,y,o.colorLocked,o.scaleSymbolsProportionally,!1,_,s,k,w,o.sizeRatio,t(o.scaleFactor,1),o.markerPlacement,o.effects,V,z);return L._vertexBoundsScaleX=o.maxVVSize?o.maxVVSize/M:1,L._vertexBoundsScaleY=o.maxVVSize?o.maxVVSize/u:1,L}static fromPictureMarker(t,o){const s=Math.round(e(t.width)),r=Math.round(e(t.height)),a=M,n=Math.round(e(t.xoffset||0)),h=Math.round(e(t.yoffset||0)),l=new B(t.materialKey,n,h,t.angle,a,s,r,r,0,0,!1,!1,!1,i.SCREEN,o,0,0,1,1,null,null,_,g);return l._vertexBoundsScaleX=t.maxVVSize?t.maxVVSize/t.width:1,l._vertexBoundsScaleY=t.maxVVSize?t.maxVVSize/t.height:1,l}static fromSimpleMarker(t,o){const s=n(t.color),r=Math.round(e(t.size)),a=r,h=Math.round(e(t.xoffset||0)),l=Math.round(e(t.yoffset||0)),m=t.style,c=t.outline,f=0|(c&&c.color&&n(c.color)),d=0|(c&&c.width&&Math.round(e(c.width))),u=new B(t.materialKey,h,l,t.angle,s,r,a,a,f,d,!1,!1,"esriSMSCross"===m||"esriSMSX"===m,i.SCREEN,o,0,0,126/64,1,null,null,_,g);return u.boundsType="esriSMSCircle"===m?"circle":"square",u._vertexBoundsScaleX=t.maxVVSize?t.maxVVSize/t.size:1,u._vertexBoundsScaleY=t.maxVVSize?t.maxVVSize/t.size:1,u}static fromLineSymbolMarker(t,o){const s=n(t.color),a=6,h=Math.round(e(a*t.lineWidth)),l=h,m="cross"===t.style||"x"===t.style;let c;switch(t.placement){case"begin-end":c=r.Both;break;case"begin":c=r.JustBegin;break;case"end":c=r.JustEnd;break;default:c=r.None}const f={type:"CIMMarkerPlacementAtExtremities",angleToLine:!0,offset:0,extremityPlacement:c,offsetAlongLine:0},d=new B(t.materialKey,0,0,0,s,h,l,l/a,s,m?Math.round(e(t.lineWidth)):0,!1,!1,m,i.MAP,o,0,0,126/64,1,f,null,_,g);return d.boundsType="circle"===t.style?"circle":"square",d}}export{B as default};
5
+ import{unwrapOr as t}from"../../../../../../core/maybe.js";import{pt2px as e}from"../../../../../../core/screenUtils.js";import{c as o}from"../../../../../../chunks/mat2df32.js";import{c as s}from"../../../../../../chunks/vec2f32.js";import{Alignment as i,ExtremityPlacement as r}from"../../../../../../symbols/cim/enums.js";import{premultiplyAlphaRGBA as a,premultiplyAlphaRGBAArray as n}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as h,BITSET_MARKER_ALIGNMENT_MAP as l,BITSET_MARKER_ALIGNMENT_SCREEN as m,BITSET_GENERIC_LOCK_COLOR as f,BITSET_MARKER_OUTLINE_ALLOW_COLOR_OVERRIDE as c,BITSET_MARKER_SCALE_SYMBOLS_PROPORTIONALLY as u,SPRITE_PADDING as d,PICTURE_FILL_COLOR as p}from"../../definitions.js";import{WGLSymbologyType as x}from"../../enums.js";import{i1616to32 as M,i8888to32 as y}from"../../number.js";import{MarkerMaterialKey as _}from"../../materialKey/MaterialKey.js";import{getMinMaxZoom as S,DEFAULT_MIN_ZOOM as g,DEFAULT_MAX_ZOOM as V}from"./util.js";import z from"./WGLBaseMarkerTemplate.js";import B from"./WGLMeshTemplate.js";class b extends(z(B)){constructor(t,e,r,a,n,p,S,g,V,z,B,b,k,w,L,R,j,C,P,E,U,A,T){super(),this.angle=a,this.height=S,this.width=p,this.xOffset=e*P,this.yOffset=r*P,this._markerPlacement=E,this._effects=U,this._anchorX=.5-(.5+R)*L.width/L.width,this._anchorY=.5-(.5+j)*L.height/L.height,this._minMaxZoom=M(Math.round(A*h),Math.round(T*h));const v=(w===i.MAP?l:m)|(B?f:0)|(k?c:0)|(b?u:0),K=L&&L.sdf,W=_.load(t);W.sdf=K,W.pattern=!0,W.textureBinding=L.textureBinding,this._materialKey=W.data,this._fillColor=n,this._outlineColor=V,this._sizeOutlineWidth=y(Math.round(Math.min(Math.sqrt(128*p),255)),Math.round(Math.min(Math.sqrt(128*S),255)),Math.round(Math.min(Math.sqrt(128*z),255)),Math.round(Math.min(Math.sqrt(128*g),255)));const X=L.rect.x+d,q=L.rect.y+d,Y=X+L.width,H=q+L.height;this._offsets.xUpperLeft=X,this._offsets.yUpperLeft=q,this._offsets.xUpperRight=Y,this._offsets.yUpperRight=q,this._offsets.xBottomLeft=X,this._offsets.yBottomLeft=H,this._offsets.xBottomRight=Y,this._offsets.yBottomRight=H,W.symbologyType===x.PIE_CHART?(this._texUpperLeft=M(0,1),this._texUpperRight=M(1,1),this._texBottomLeft=M(0,0),this._texBottomRight=M(1,0)):(this._texUpperLeft=M(X,q),this._texUpperRight=M(Y,q),this._texBottomLeft=M(X,H),this._texBottomRight=M(Y,H)),p*=C,S*=C,p*=P,S*=P;const I=Math.round(64*C);this._bitestAndDistRatio=M(v,I),this._computedWidth=p,this._computedHeight=S;const N=s(),O=o();this._applyTransformation(O,N)}static fromCIMMarker(o,s,r){const n=s&&s.width||1,h=s&&s.height||1,l=o.size,m=n/h*o.scaleX,f=o.scaleSymbolsProportionally&&o.frameHeight?l/o.frameHeight:1;let c=a(o.color);const u=a(o.outlineColor),d=e(l),p=d*m,x=e(o.offsetX||0),M=e(o.offsetY||0),y=e(o.outlineWidth||0)*f,_=o.alignment||i.SCREEN,g=e(o.referenceSize),[V,z]=S(o.scaleInfo,r);s.sdf||0!==c||(c=-1);let B=o.rotation||0;o.rotateClockwise||(B=-B);let k=0,w=0;const L=o.anchorPoint;L&&(o.isAbsoluteAnchorPoint?l&&(k=-L.x/(l*m),w=L.y/l):(k=L.x,w=L.y));const R=new b(o.materialKey,x,M,B,c,p,d,g,u,y,o.colorLocked,o.scaleSymbolsProportionally,!1,_,s,k,w,o.sizeRatio,t(o.scaleFactor,1),o.markerPlacement,o.effects,V,z);return R._vertexBoundsScaleX=o.maxVVSize?o.maxVVSize/p:1,R._vertexBoundsScaleY=o.maxVVSize?o.maxVVSize/d:1,R}static fromPictureMarker(t,o){const s=Math.round(e(t.width)),r=Math.round(e(t.height)),a=p,n=Math.round(e(t.xoffset||0)),h=Math.round(e(t.yoffset||0)),l=new b(t.materialKey,n,h,t.angle,a,s,r,r,0,0,!1,!1,!1,i.SCREEN,o,0,0,1,1,null,null,g,V);return l._vertexBoundsScaleX=t.maxVVSize?t.maxVVSize/t.width:1,l._vertexBoundsScaleY=t.maxVVSize?t.maxVVSize/t.height:1,l}static fromSimpleMarker(t,o){const s=n(t.color),r=Math.round(e(t.size)),a=r,h=Math.round(e(t.xoffset||0)),l=Math.round(e(t.yoffset||0)),m=t.style,f=t.outline,c=0|(f&&f.color&&n(f.color)),u=0|(f&&f.width&&Math.round(e(f.width))),d=new b(t.materialKey,h,l,t.angle,s,r,a,a,c,u,!1,!1,"esriSMSCross"===m||"esriSMSX"===m,i.SCREEN,o,0,0,126/64,1,null,null,g,V);return d.boundsType="esriSMSCircle"===m?"circle":"square",d._vertexBoundsScaleX=t.maxVVSize?t.maxVVSize/t.size:1,d._vertexBoundsScaleY=t.maxVVSize?t.maxVVSize/t.size:1,d}static fromLineSymbolMarker(t,o){const s=n(t.color),a=6,h=Math.round(e(a*t.lineWidth)),l=h,m="cross"===t.style||"x"===t.style;let f;switch(t.placement){case"begin-end":f=r.Both;break;case"begin":f=r.JustBegin;break;case"end":f=r.JustEnd;break;default:f=r.None}const c={type:"CIMMarkerPlacementAtExtremities",angleToLine:!0,offset:0,extremityPlacement:f,offsetAlongLine:0},u=new b(t.materialKey,0,0,0,s,h,l,l/a,s,m?Math.round(e(t.lineWidth)):0,!1,!1,m,i.MAP,o,0,0,126/64,1,c,null,g,V);return u.boundsType="circle"===t.style?"circle":"square",u}}export{b as default};