@arcgis/core 4.34.0-next.49 → 4.34.0-next.50

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 (196) hide show
  1. package/Basemap.js +1 -1
  2. package/Map.js +1 -1
  3. package/WebScene.js +1 -1
  4. package/analysis/ElevationProfileAnalysis.js +1 -1
  5. package/analysis/ElevationProfileLineInput.js +1 -1
  6. package/analysis/ElevationProfileViewOptions.d.ts +4 -0
  7. package/analysis/ElevationProfileViewOptions.js +5 -0
  8. package/assets/esri/core/workers/RemoteClient.js +1 -1
  9. package/assets/esri/core/workers/chunks/02902303e5585a16ebea.js +1 -0
  10. package/assets/esri/core/workers/chunks/037bc400257bc13b3ec8.js +1 -0
  11. package/assets/esri/core/workers/chunks/0f9813e7d4e2b47b2c39.js +1 -0
  12. package/assets/esri/core/workers/chunks/171ce8c64f322cd5d6d1.js +1 -0
  13. package/assets/esri/core/workers/chunks/{476a6e5ca558db2adaa1.js → 1ae15163af8875148fb8.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{e962e6b47cb7e5a71c24.js → 1e01aaebdeffdfc0c6bd.js} +1 -1
  15. package/assets/esri/core/workers/chunks/21a90083f29e44ccd735.js +1 -0
  16. package/assets/esri/core/workers/chunks/{fc6408208c850eec4019.js → 237c96d946efa5ed0386.js} +1 -1
  17. package/assets/esri/core/workers/chunks/2c0241a5958aef9cda61.js +1 -0
  18. package/assets/esri/core/workers/chunks/3167230555c63f943485.js +1 -0
  19. package/assets/esri/core/workers/chunks/32789077e37d5c8191e7.js +1 -0
  20. package/assets/esri/core/workers/chunks/{bd1c2afaf491d1c79a9e.js → 3e3886a51c0f8c86df75.js} +1 -1
  21. package/assets/esri/core/workers/chunks/4fc267552939583a81a0.js +1 -0
  22. package/assets/esri/core/workers/chunks/5691d504ffe5592bc40f.js +1 -0
  23. package/assets/esri/core/workers/chunks/6775d2ab5faf1fa161db.js +1 -0
  24. package/assets/esri/core/workers/chunks/6fff219dfaa86167c326.js +1 -0
  25. package/assets/esri/core/workers/chunks/{c660b6e67d5d13583f19.js → 854bfda25bb406814929.js} +1 -1
  26. package/assets/esri/core/workers/chunks/{e177d0ab454dfa024b39.js → 8c8c8f1058a4b58a3181.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{379a4f664e77ad1fffe9.js → 96a34b240d17147902f4.js} +1 -1
  28. package/assets/esri/core/workers/chunks/998c38974372720b1c52.js +1 -0
  29. package/assets/esri/core/workers/chunks/a3dce23ca98c9b0f945f.js +1 -0
  30. package/assets/esri/core/workers/chunks/a7530dcb08b43e37bbb2.js +1 -0
  31. package/assets/esri/core/workers/chunks/{d4766c97d97554b3b408.js → b29f0b32787edb4e75cf.js} +1 -1
  32. package/assets/esri/core/workers/chunks/b6a201e86f9caef45ff0.js +1 -0
  33. package/assets/esri/core/workers/chunks/{f42938e1602306cfa7a8.js → b8158c681456d4cf2395.js} +1 -1
  34. package/assets/esri/core/workers/chunks/bc931865a77fc48871d3.js +1 -0
  35. package/assets/esri/core/workers/chunks/c4651243525026e6ddde.js +1 -0
  36. package/assets/esri/core/workers/chunks/{50d526a16bc86a481055.js → cfc3f202e7313ca56823.js} +1 -1
  37. package/assets/esri/core/workers/chunks/e10c5405f956b2cc59e4.js +1 -0
  38. package/assets/esri/core/workers/chunks/e4069352d5d1104749ae.js +1 -0
  39. package/assets/esri/core/workers/chunks/{b287624909578d307e07.js → e5522c85ca4f0efab8ea.js} +1 -1
  40. package/assets/esri/core/workers/chunks/fb669a2e50ca7aacac25.js +1 -0
  41. package/assets/esri/images/portal/gaussiansplatlayer16.png +0 -0
  42. package/config.js +1 -1
  43. package/core/throttle.js +1 -1
  44. package/interfaces.d.ts +53 -52
  45. package/kernel.js +1 -1
  46. package/layers/ImageryLayer.js +1 -1
  47. package/layers/ImageryTileLayer.js +1 -1
  48. package/layers/IntegratedMesh3DTilesLayer.js +1 -1
  49. package/layers/Layer.js +1 -1
  50. package/layers/ParquetLayer.js +1 -1
  51. package/layers/graphics/data/QueryEngineCapabilities.js +1 -1
  52. package/layers/graphics/sources/OGCFeatureSource.js +1 -1
  53. package/layers/mixins/ArcGISImageService.js +1 -1
  54. package/layers/mixins/ImageryTileMixin.js +1 -1
  55. package/layers/support/capabilities.js +1 -1
  56. package/layers/support/serviceCapabilitiesUtils.js +1 -1
  57. package/package.json +1 -1
  58. package/portal/PortalItem.js +1 -1
  59. package/portal/schemas/definitions.js +1 -1
  60. package/renderers/FlowRenderer.js +1 -1
  61. package/renderers/support/AuthoringInfo.js +1 -1
  62. package/renderers/support/RasterPresetRenderer.js +1 -1
  63. package/renderers/support/rasterTypeUtils.js +1 -1
  64. package/support/revision.js +1 -1
  65. package/views/2d/engine/webgl/FeatureDisplayList.js +1 -1
  66. package/views/2d/engine/webgl/Painter.js +1 -1
  67. package/views/2d/engine/webgl/shaderGraph/techniques/TestTechnique.js +1 -1
  68. package/views/2d/engine/webgl/shaderGraph/techniques/bitmap/BitmapTechnique.js +1 -1
  69. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityTechnique.js +1 -1
  70. package/views/2d/engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js +1 -1
  71. package/views/2d/engine/webgl/shaderGraph/techniques/heatmap/HeatmapTechnique.js +1 -1
  72. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelTechnique.js +1 -1
  73. package/views/2d/engine/webgl/shaderGraph/techniques/line/GradientStrokeTechnique.js +1 -1
  74. package/views/2d/engine/webgl/shaderGraph/techniques/overlay/OverlayTechnique.js +1 -1
  75. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterColorizerTechnique.js +1 -1
  76. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  77. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  78. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  79. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  80. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  81. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  82. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  83. package/views/2d/layers/features/sources/FeatureSourceQueryInfo.js +1 -1
  84. package/views/3d/analysis/ElevationProfile/HoveredPointVisualization.js +5 -0
  85. package/views/3d/analysis/ElevationProfile/HoveredPointsVisualization.js +5 -0
  86. package/views/3d/analysis/ElevationProfile/InputVisualization.js +5 -0
  87. package/views/3d/analysis/ElevationProfile/ProfileLinesVisualization.js +5 -0
  88. package/views/3d/analysis/ElevationProfile/Visualization.js +5 -0
  89. package/views/3d/analysis/ElevationProfileAnalysisView3D.js +1 -1
  90. package/views/BasemapView.js +1 -1
  91. package/views/GroundView.js +1 -1
  92. package/views/View.js +1 -1
  93. package/views/analysis/ElevationProfile/ElevationProfileController.js +1 -1
  94. package/views/analysis/ElevationProfile/ElevationProfileLineComputation.js +1 -1
  95. package/views/analysis/ElevationProfile/ProfileGenerationError.js +1 -1
  96. package/views/analysis/ElevationProfile/geometryUtils.js +1 -1
  97. package/views/analysis/ElevationProfile/profileUtils.js +1 -1
  98. package/views/analysis/ElevationProfile/visualizationUtils.js +5 -0
  99. package/views/analysis/ElevationProfileResult.js +1 -1
  100. package/views/support/DefaultsFromMap.js +1 -1
  101. package/views/support/LayerViewManager.js +1 -1
  102. package/widgets/BasemapGallery/support/basemapCompatibilityUtils.js +1 -1
  103. package/arcade/validation/types.js +0 -4
  104. package/assets/esri/core/workers/chunks/04cbd3aa9965b2eb71ea.js +0 -1
  105. package/assets/esri/core/workers/chunks/08840c4d3df711065571.js +0 -1
  106. package/assets/esri/core/workers/chunks/0ebf666564d323d82259.js +0 -1
  107. package/assets/esri/core/workers/chunks/20ffac42ff5095af00fe.js +0 -1
  108. package/assets/esri/core/workers/chunks/2ae50b02cdf126a8b562.js +0 -1
  109. package/assets/esri/core/workers/chunks/6cd828cfe41e0cab2068.js +0 -1
  110. package/assets/esri/core/workers/chunks/892623d938583cd0f006.js +0 -1
  111. package/assets/esri/core/workers/chunks/8aa77a5e82c033512b45.js +0 -1
  112. package/assets/esri/core/workers/chunks/99daf4b144838fa9ca67.js +0 -1
  113. package/assets/esri/core/workers/chunks/9cbec2ffa445a72d4c33.js +0 -1
  114. package/assets/esri/core/workers/chunks/a34d98abcf958a632b0f.js +0 -1
  115. package/assets/esri/core/workers/chunks/a69258f34a5eb5a1954f.js +0 -1
  116. package/assets/esri/core/workers/chunks/b79aa5ba0424641f878b.js +0 -1
  117. package/assets/esri/core/workers/chunks/bb56defb6dfb9b2c1f27.js +0 -1
  118. package/assets/esri/core/workers/chunks/cf6330f721c6910d25ff.js +0 -1
  119. package/assets/esri/core/workers/chunks/cff15600d0ec7b19dffb.js +0 -1
  120. package/assets/esri/core/workers/chunks/d552b22219ec795aff89.js +0 -1
  121. package/assets/esri/core/workers/chunks/d62d41091f7ac5f77f16.js +0 -1
  122. package/assets/esri/core/workers/chunks/dbc9bb3011f16ce33f71.js +0 -1
  123. package/assets/esri/core/workers/chunks/e505a101621de39de280.js +0 -1
  124. package/assets/esri/core/workers/chunks/f2a2d3cda4a3dc0a8caf.js +0 -1
  125. package/core/ByteSizeUnit.js +0 -4
  126. package/core/ObservableChangesType.js +0 -4
  127. package/geometry/support/Axis.js +0 -4
  128. package/geometry/support/SupportedGCSWkids.js +0 -4
  129. package/geometry/support/meshUtils/exporters/gltf/gltftypes.js +0 -4
  130. package/geometry/support/meshUtils/exporters/gltf/types.js +0 -4
  131. package/layers/graphics/sources/interfaces.js +0 -4
  132. package/layers/orientedImagery/enums/CameraOrientationType.js +0 -4
  133. package/libs/basisu/TextureFormat.js +0 -4
  134. package/libs/i3s/enums.js +0 -4
  135. package/libs/lyr3d/enums.js +0 -4
  136. package/libs/vxl/enums.js +0 -4
  137. package/rest/knowledgeGraph/wasmInterface/KnowledgeWasmInterface.js +0 -4
  138. package/rest/knowledgeGraph/wasmInterface/WasmClientDataInterfaces.js +0 -4
  139. package/symbols/cim/enums.js +0 -4
  140. package/undoredo/OperationStatus.js +0 -4
  141. package/views/2d/engine/imagery/enums.js +0 -4
  142. package/views/2d/engine/vectorTiles/enums.js +0 -4
  143. package/views/2d/engine/vectorTiles/shaders/enums.js +0 -4
  144. package/views/2d/engine/webgl/enums.js +0 -4
  145. package/views/2d/engine/webgl/shaderGraph/techniques/TechniqueType.js +0 -4
  146. package/views/2d/engine/webgl/shaderGraph/techniques/animated/enums.js +0 -4
  147. package/views/2d/tiling/enums.js +0 -4
  148. package/views/3d/analysis/DirectLineMeasurement/interfaces.js +0 -4
  149. package/views/3d/analysis/interfaces.js +0 -4
  150. package/views/3d/camera/constraintUtils/ConstraintTypes.js +0 -4
  151. package/views/3d/camera/constraintUtils/InteractionType.js +0 -4
  152. package/views/3d/camera/constraintUtils/TiltMode.js +0 -4
  153. package/views/3d/glTF/internal/enums.js +0 -4
  154. package/views/3d/interactive/editingTools/GrabbingState.js +0 -4
  155. package/views/3d/interactive/editingTools/ManipulatorType.js +0 -4
  156. package/views/3d/layers/II3SMeshView3D.js +0 -4
  157. package/views/3d/layers/graphics/enums.js +0 -4
  158. package/views/3d/layers/graphics/interfaces.js +0 -4
  159. package/views/3d/layers/interfaces.js +0 -4
  160. package/views/3d/layers/support/I3SLayerView.js +0 -4
  161. package/views/3d/support/enums.js +0 -4
  162. package/views/3d/terrain/NeighborIndex.js +0 -4
  163. package/views/3d/terrain/OverlayContent.js +0 -4
  164. package/views/3d/terrain/TileFrustumVisibility.js +0 -4
  165. package/views/3d/terrain/TileUpdate.js +0 -4
  166. package/views/3d/terrain/TransparencyMode.js +0 -4
  167. package/views/3d/terrain/interfaces.js +0 -4
  168. package/views/3d/webgl-engine/collections/Component/Material/shader/VertexDiscardMode.js +0 -4
  169. package/views/3d/webgl-engine/core/renderPasses/RenderPassIdentifier.js +0 -4
  170. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDRenderStyle.js +0 -4
  171. package/views/3d/webgl-engine/core/shaderLibrary/terrain/BaseOpacityMode.js +0 -4
  172. package/views/3d/webgl-engine/core/shaderLibrary/terrain/BlendLayersOutput.js +0 -4
  173. package/views/3d/webgl-engine/core/shaderLibrary/terrain/PremultipliedAlphaSource.js +0 -4
  174. package/views/3d/webgl-engine/core/shaderLibrary/terrain/TileBlendInput.js +0 -4
  175. package/views/3d/webgl-engine/effects/focusArea/FocusAreaEffect.js +0 -4
  176. package/views/3d/webgl-engine/lib/IntersectableGeometry.js +0 -4
  177. package/views/3d/webgl-engine/lib/IntersectorType.js +0 -4
  178. package/views/3d/webgl-engine/lib/ModelDirtyTypes.js +0 -4
  179. package/views/3d/webgl-engine/lib/OITPass.js +0 -4
  180. package/views/3d/webgl-engine/lib/RenderSlot.js +0 -4
  181. package/views/3d/webgl-engine/lib/Update.js +0 -4
  182. package/views/3d/webgl-engine/lib/UpdatePolicy.js +0 -4
  183. package/views/3d/webgl-engine/lib/basicInterfaces.js +0 -4
  184. package/views/3d/webgl-engine/lib/edgeRendering/interfaces.js +0 -4
  185. package/views/3d/webgl-engine/materials/PatternStyle.js +0 -4
  186. package/views/input/IViewEvents.js +0 -4
  187. package/views/interactive/editGeometry/interfaces.js +0 -4
  188. package/views/interactive/interfaces.js +0 -4
  189. package/views/interactive/snapping/SnappingDomain.js +0 -4
  190. package/views/support/RenderState.js +0 -4
  191. package/views/webgl/BindType.js +0 -4
  192. package/views/webgl/FBOAttachmentType.js +0 -4
  193. package/webdoc/interfaces.js +0 -4
  194. package/widgets/ShadowCast/DurationMode.js +0 -4
  195. package/widgets/ShadowCast/ShadowCastState.js +0 -4
  196. package/widgets/Weather/enums.js +0 -4
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import t from"../Color.js";import{JSONMap as e}from"../core/jsonMap.js";import{JSONSupport as r}from"../core/JSONSupport.js";import{toPt as i}from"../core/screenUtils.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{enumeration as n}from"../core/accessorSupport/decorators/enumeration.js";import{subclass as p}from"../core/accessorSupport/decorators/subclass.js";import{VisualVariablesMixin as a}from"./mixins/VisualVariablesMixin.js";import l from"./support/AuthoringInfo.js";import m from"./support/RendererLegendOptions.js";var d;const h=new e({flow_from:"flow-from",flow_to:"flow-to"});let c=d=class extends(a(r)){constructor(o){super(o),this.density=.8,this.color=new t([255,255,255,1]),this.maxPathLength=200,this.trailWidth=1.5,this.flowSpeed=10,this.trailLength=100,this.smoothing=0,this.flowRepresentation="flow-from",this.type="flow",this.authoringInfo=null,this.legendOptions=null,this.trailCap="butt",this.background="none"}set visualVariables(o){super.visualVariables=o}clone(){const{density:o,maxPathLength:t,trailWidth:e,flowSpeed:r,trailLength:i,smoothing:s,flowRepresentation:n,trailCap:p,background:a}=this,l=this.color.clone(),m=(this.visualVariables||[]).map(o=>o.clone()),h=this.authoringInfo?.clone(),c=this.legendOptions?.clone();return new d({density:o,color:l,maxPathLength:t,trailWidth:e,flowSpeed:r,trailLength:i,trailCap:p,background:a,smoothing:s,flowRepresentation:n,visualVariables:m,authoringInfo:h,legendOptions:c})}getSymbol(o,t){}async getSymbolAsync(o,t){}getSymbols(){return[]}};o([s({type:Number,json:{write:!0}})],c.prototype,"density",void 0),o([s({type:t,json:{write:{allowNull:!0}}})],c.prototype,"color",void 0),o([s({type:Number,cast:i,json:{write:!0}})],c.prototype,"maxPathLength",void 0),o([s({type:Number,cast:i,json:{write:!0}})],c.prototype,"trailWidth",void 0),o([s({type:Number,json:{write:!0}})],c.prototype,"flowSpeed",void 0),o([s({type:Number,json:{write:!0}})],c.prototype,"trailLength",void 0),o([s({type:Number,cast:i,json:{write:!1}})],c.prototype,"smoothing",void 0),o([s({type:h.apiValues,json:{type:h.jsonValues,read:{reader:h.read},write:{writer:h.write}}})],c.prototype,"flowRepresentation",void 0),o([n({flowRenderer:"flow"})],c.prototype,"type",void 0),o([s({type:l,json:{write:!0}})],c.prototype,"authoringInfo",void 0),o([s({type:m,json:{write:!0}})],c.prototype,"legendOptions",void 0),o([s({type:String,json:{write:!0}})],c.prototype,"trailCap",void 0),o([s({type:String,json:{write:!0}})],c.prototype,"background",void 0),c=d=o([p("esri.renderers.FlowRenderer")],c);export{c as default};
5
+ import{__decorate as o}from"tslib";import t from"../Color.js";import{JSONMap as e}from"../core/jsonMap.js";import{JSONSupport as r}from"../core/JSONSupport.js";import{toPt as i}from"../core/screenUtils.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import{Integer as n}from"../core/accessorSupport/ensureType.js";import"../core/has.js";import"../core/RandomLCG.js";import{enumeration as p}from"../core/accessorSupport/decorators/enumeration.js";import{subclass as a}from"../core/accessorSupport/decorators/subclass.js";import{VisualVariablesMixin as l}from"./mixins/VisualVariablesMixin.js";import m from"./support/AuthoringInfo.js";import d from"./support/RendererLegendOptions.js";var c;const u=new e({flow_from:"flow-from",flow_to:"flow-to"});let h=c=class extends(l(r)){constructor(o){super(o),this.density=.8,this.color=new t([255,255,255,1]),this.maxPathLength=200,this.trailWidth=1.5,this.flowSpeed=10,this.trailLength=100,this.smoothing=0,this.flowRepresentation="flow-from",this.type="flow",this.authoringInfo=null,this.legendOptions=null,this.trailCap="butt",this.background="none"}set visualVariables(o){super.visualVariables=o}clone(){const{density:o,maxPathLength:t,trailWidth:e,flowSpeed:r,trailLength:i,smoothing:s,flowRepresentation:n,trailCap:p,background:a}=this,l=this.color.clone(),m=(this.visualVariables||[]).map(o=>o.clone()),d=this.authoringInfo?.clone(),u=this.legendOptions?.clone();return new c({density:o,color:l,maxPathLength:t,trailWidth:e,flowSpeed:r,trailLength:i,trailCap:p,background:a,smoothing:s,flowRepresentation:n,visualVariables:m,authoringInfo:d,legendOptions:u})}getSymbol(o,t){}async getSymbolAsync(o,t){}getSymbols(){return[]}};o([s({type:Number,json:{write:!0}})],h.prototype,"density",void 0),o([s({type:t,json:{type:[n],write:{allowNull:!0}}})],h.prototype,"color",void 0),o([s({type:Number,cast:i,json:{write:!0}})],h.prototype,"maxPathLength",void 0),o([s({type:Number,cast:i,json:{write:!0}})],h.prototype,"trailWidth",void 0),o([s({type:Number,json:{write:!0}})],h.prototype,"flowSpeed",void 0),o([s({type:Number,json:{write:!0}})],h.prototype,"trailLength",void 0),o([s({type:Number,cast:i,json:{write:!1}})],h.prototype,"smoothing",void 0),o([s({type:u.apiValues,json:{type:u.jsonValues,read:{reader:u.read},write:{writer:u.write}}})],h.prototype,"flowRepresentation",void 0),o([p({flowRenderer:"flow"}),s({json:{write:{isRequired:!0}}})],h.prototype,"type",void 0),o([s({type:m,json:{write:!0}})],h.prototype,"authoringInfo",void 0),o([s({type:d,json:{write:!0}})],h.prototype,"legendOptions",void 0),o([s({type:["butt","round"],json:{write:!0}})],h.prototype,"trailCap",void 0),o([s({type:String,json:{origins:{"web-scene":{write:!1}},write:!0}})],h.prototype,"background",void 0),h=c=o([a("esri.renderers.FlowRenderer")],h);export{h as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import{JSONMap as t}from"../../core/jsonMap.js";import{JSONSupport as i}from"../../core/JSONSupport.js";import{clone as s}from"../../core/lang.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import{Integer as l}from"../../core/accessorSupport/ensureType.js";import{reader as a}from"../../core/accessorSupport/decorators/reader.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{AuthoringInfoFieldInfo as n}from"./AuthoringInfoFieldInfo.js";import u from"./AuthoringInfoVisualVariable.js";import{fromJSON as p,types as d}from"../../rest/support/colorRamps.js";var c;const h=new t({esriClassifyDefinedInterval:"defined-interval",esriClassifyEqualInterval:"equal-interval",esriClassifyManual:"manual",esriClassifyNaturalBreaks:"natural-breaks",esriClassifyQuantile:"quantile",esriClassifyStandardDeviation:"standard-deviation"}),y=new t({classedSize:"class-breaks-size",classedColor:"class-breaks-color",univariateColorSize:"univariate-color-size",relationship:"relationship",predominance:"predominance",dotDensity:"dot-density",flow:"flow"}),m=new t({classedSize:"class-breaks-size",classedColor:"class-breaks-color",univariateColorSize:"univariate-color-size",relationship:"relationship",predominance:"predominance",dotDensity:"dot-density"}),f=["inches","feet","yards","miles","nautical-miles","millimeters","centimeters","decimeters","meters","kilometers"],v=["high-to-low","above-and-below","above","below"],w=["flow-line","wave-front"],b=["caret","circle-caret","arrow","circle-arrow","plus-minus","circle-plus-minus","square","circle","triangle","happy-sad","thumb","custom"];let g=c=class extends i{constructor(e){super(e),this.colorRamp=null,this.fadeRatio=null,this.isAutoGenerated=!1,this.lengthUnit=null,this.maxSliderValue=null,this.minSliderValue=null,this.visualVariables=null}get classificationMethod(){const e=this._get("classificationMethod"),t=this.type;return t&&"relationship"!==t?"class-breaks-size"===t||"class-breaks-color"===t?e||"manual":null:e}set classificationMethod(e){this._set("classificationMethod",e)}readColorRamp(e){return e?p(e):void 0}get fields(){return this.type&&"predominance"!==this.type?null:this._get("fields")}set fields(e){this._set("fields",e)}get field1(){return this.type&&"relationship"!==this.type?null:this._get("field1")}set field1(e){this._set("field1",e)}get field2(){return this.type&&"relationship"!==this.type?null:this._get("field2")}set field2(e){this._set("field2",e)}get flowTheme(){return"flow"===this.type?this._get("flowTheme"):null}set flowTheme(e){this._set("flowTheme",e)}get focus(){return this.type&&"relationship"!==this.type?null:this._get("focus")}set focus(e){this._set("focus",e)}get numClasses(){return this.type&&"relationship"!==this.type?null:this._get("numClasses")}set numClasses(e){this._set("numClasses",e)}get statistics(){return"univariate-color-size"===this.type&&"above-and-below"===this.univariateTheme?this._get("statistics"):null}set statistics(e){this._set("statistics",e)}get standardDeviationInterval(){const e=this.type;return e&&"relationship"!==e&&"class-breaks-size"!==e&&"class-breaks-color"!==e||this.classificationMethod&&"standard-deviation"!==this.classificationMethod?null:this._get("standardDeviationInterval")}set standardDeviationInterval(e){this._set("standardDeviationInterval",e)}get type(){return this._get("type")}set type(e){let t=e;"classed-size"===e?t="class-breaks-size":"classed-color"===e&&(t="class-breaks-color"),this._set("type",t)}get univariateSymbolStyle(){return"univariate-color-size"===this.type&&"above-and-below"===this.univariateTheme?this._get("univariateSymbolStyle"):null}set univariateSymbolStyle(e){this._set("univariateSymbolStyle",e)}get univariateTheme(){return"univariate-color-size"===this.type?this._get("univariateTheme"):null}set univariateTheme(e){this._set("univariateTheme",e)}clone(){return new c({classificationMethod:this.classificationMethod,colorRamp:s(this.colorRamp),fadeRatio:s(this.fadeRatio),fields:this.fields?.slice(),field1:s(this.field1),field2:s(this.field2),isAutoGenerated:this.isAutoGenerated,focus:this.focus,numClasses:this.numClasses,maxSliderValue:this.maxSliderValue,minSliderValue:this.minSliderValue,lengthUnit:this.lengthUnit,statistics:this.statistics,standardDeviationInterval:this.standardDeviationInterval,type:this.type,visualVariables:this.visualVariables&&this.visualVariables.map(e=>e.clone()),univariateSymbolStyle:this.univariateSymbolStyle,univariateTheme:this.univariateTheme,flowTheme:this.flowTheme})}};e([r({type:h.apiValues,value:null,json:{type:h.jsonValues,read:h.read,write:h.write,origins:{"web-document":{default:"manual",type:h.jsonValues,read:h.read,write:h.write}}}})],g.prototype,"classificationMethod",null),e([r({types:d,json:{write:!0}})],g.prototype,"colorRamp",void 0),e([a("colorRamp")],g.prototype,"readColorRamp",null),e([r({json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],g.prototype,"fadeRatio",void 0),e([r({type:[String],value:null,json:{write:!0}})],g.prototype,"fields",null),e([r({type:n,value:null,json:{write:!0}})],g.prototype,"field1",null),e([r({type:n,value:null,json:{write:!0}})],g.prototype,"field2",null),e([r({type:w,value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],g.prototype,"flowTheme",null),e([r({type:["HH","HL","LH","LL"],value:null,json:{write:!0}})],g.prototype,"focus",null),e([r({type:Boolean,json:{write:!0,default:!1,origins:{"web-scene":{write:!1}}}})],g.prototype,"isAutoGenerated",void 0),e([r({type:Number,value:null,json:{type:l,write:!0}})],g.prototype,"numClasses",null),e([r({type:f,json:{type:f,read:!1,write:!1,origins:{"web-scene":{read:!0,write:!0}}}})],g.prototype,"lengthUnit",void 0),e([r({type:Number,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],g.prototype,"maxSliderValue",void 0),e([r({type:Number,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],g.prototype,"minSliderValue",void 0),e([r({type:Object,value:null,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],g.prototype,"statistics",null),e([r({type:[.25,.33,.5,1],value:null,json:{type:[.25,.33,.5,1],write:!0}})],g.prototype,"standardDeviationInterval",null),e([r({type:y.apiValues,value:null,json:{type:y.jsonValues,read:y.read,write:y.write,origins:{"web-scene":{type:m.jsonValues,write:{writer:m.write,overridePolicy:e=>({enabled:"flow"!==e})}}}}})],g.prototype,"type",null),e([r({type:[u],json:{write:!0}})],g.prototype,"visualVariables",void 0),e([r({type:b,value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],g.prototype,"univariateSymbolStyle",null),e([r({type:v,value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],g.prototype,"univariateTheme",null),g=c=e([o("esri.renderers.support.AuthoringInfo")],g);export{g as default};
5
+ import{__decorate as e}from"tslib";import{JSONMap as t}from"../../core/jsonMap.js";import{JSONSupport as i}from"../../core/JSONSupport.js";import{clone as s}from"../../core/lang.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import{Integer as l}from"../../core/accessorSupport/ensureType.js";import{reader as a}from"../../core/accessorSupport/decorators/reader.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import{AuthoringInfoFieldInfo as n}from"./AuthoringInfoFieldInfo.js";import u from"./AuthoringInfoVisualVariable.js";import{fromJSON as p,types as d}from"../../rest/support/colorRamps.js";var c;const h=new t({esriClassifyDefinedInterval:"defined-interval",esriClassifyEqualInterval:"equal-interval",esriClassifyManual:"manual",esriClassifyNaturalBreaks:"natural-breaks",esriClassifyQuantile:"quantile",esriClassifyStandardDeviation:"standard-deviation"}),y=new t({classedSize:"class-breaks-size",classedColor:"class-breaks-color",univariateColorSize:"univariate-color-size",relationship:"relationship",predominance:"predominance",dotDensity:"dot-density",flow:"flow"}),m=["inches","feet","yards","miles","nautical-miles","millimeters","centimeters","decimeters","meters","kilometers"],f=["high-to-low","above-and-below","above","below"],v=["flow-line","wave-front"],w=["caret","circle-caret","arrow","circle-arrow","plus-minus","circle-plus-minus","square","circle","triangle","happy-sad","thumb","custom"];let b=c=class extends i{constructor(e){super(e),this.colorRamp=null,this.fadeRatio=null,this.isAutoGenerated=!1,this.lengthUnit=null,this.maxSliderValue=null,this.minSliderValue=null,this.visualVariables=null}get classificationMethod(){const e=this._get("classificationMethod"),t=this.type;return t&&"relationship"!==t?"class-breaks-size"===t||"class-breaks-color"===t?e||"manual":null:e}set classificationMethod(e){this._set("classificationMethod",e)}readColorRamp(e){return e?p(e):void 0}get fields(){return this.type&&"predominance"!==this.type?null:this._get("fields")}set fields(e){this._set("fields",e)}get field1(){return this.type&&"relationship"!==this.type?null:this._get("field1")}set field1(e){this._set("field1",e)}get field2(){return this.type&&"relationship"!==this.type?null:this._get("field2")}set field2(e){this._set("field2",e)}get flowTheme(){return"flow"===this.type?this._get("flowTheme"):null}set flowTheme(e){this._set("flowTheme",e)}get focus(){return this.type&&"relationship"!==this.type?null:this._get("focus")}set focus(e){this._set("focus",e)}get numClasses(){return this.type&&"relationship"!==this.type?null:this._get("numClasses")}set numClasses(e){this._set("numClasses",e)}get statistics(){return"univariate-color-size"===this.type&&"above-and-below"===this.univariateTheme?this._get("statistics"):null}set statistics(e){this._set("statistics",e)}get standardDeviationInterval(){const e=this.type;return e&&"relationship"!==e&&"class-breaks-size"!==e&&"class-breaks-color"!==e||this.classificationMethod&&"standard-deviation"!==this.classificationMethod?null:this._get("standardDeviationInterval")}set standardDeviationInterval(e){this._set("standardDeviationInterval",e)}get type(){return this._get("type")}set type(e){let t=e;"classed-size"===e?t="class-breaks-size":"classed-color"===e&&(t="class-breaks-color"),this._set("type",t)}get univariateSymbolStyle(){return"univariate-color-size"===this.type&&"above-and-below"===this.univariateTheme?this._get("univariateSymbolStyle"):null}set univariateSymbolStyle(e){this._set("univariateSymbolStyle",e)}get univariateTheme(){return"univariate-color-size"===this.type?this._get("univariateTheme"):null}set univariateTheme(e){this._set("univariateTheme",e)}clone(){return new c({classificationMethod:this.classificationMethod,colorRamp:s(this.colorRamp),fadeRatio:s(this.fadeRatio),fields:this.fields?.slice(),field1:s(this.field1),field2:s(this.field2),isAutoGenerated:this.isAutoGenerated,focus:this.focus,numClasses:this.numClasses,maxSliderValue:this.maxSliderValue,minSliderValue:this.minSliderValue,lengthUnit:this.lengthUnit,statistics:this.statistics,standardDeviationInterval:this.standardDeviationInterval,type:this.type,visualVariables:this.visualVariables&&this.visualVariables.map(e=>e.clone()),univariateSymbolStyle:this.univariateSymbolStyle,univariateTheme:this.univariateTheme,flowTheme:this.flowTheme})}};e([r({type:h.apiValues,value:null,json:{type:h.jsonValues,read:h.read,write:h.write,origins:{"web-document":{default:"manual",type:h.jsonValues,read:h.read,write:h.write}}}})],b.prototype,"classificationMethod",null),e([r({types:d,json:{write:!0}})],b.prototype,"colorRamp",void 0),e([a("colorRamp")],b.prototype,"readColorRamp",null),e([r({json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],b.prototype,"fadeRatio",void 0),e([r({type:[String],value:null,json:{write:!0}})],b.prototype,"fields",null),e([r({type:n,value:null,json:{write:!0}})],b.prototype,"field1",null),e([r({type:n,value:null,json:{write:!0}})],b.prototype,"field2",null),e([r({type:v,value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],b.prototype,"flowTheme",null),e([r({type:["HH","HL","LH","LL"],value:null,json:{write:!0}})],b.prototype,"focus",null),e([r({type:Boolean,json:{write:!0,default:!1,origins:{"web-scene":{write:!1}}}})],b.prototype,"isAutoGenerated",void 0),e([r({type:Number,value:null,json:{type:l,write:!0}})],b.prototype,"numClasses",null),e([r({type:m,json:{type:m,read:!1,write:!1,origins:{"web-scene":{read:!0,write:!0}}}})],b.prototype,"lengthUnit",void 0),e([r({type:Number,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],b.prototype,"maxSliderValue",void 0),e([r({type:Number,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],b.prototype,"minSliderValue",void 0),e([r({type:Object,value:null,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],b.prototype,"statistics",null),e([r({type:[.25,.33,.5,1],value:null,json:{type:[.25,.33,.5,1],write:!0}})],b.prototype,"standardDeviationInterval",null),e([r({type:y.apiValues,value:null,json:{type:y.jsonValues,read:y.read,write:y.write}})],b.prototype,"type",null),e([r({type:[u],json:{write:!0}})],b.prototype,"visualVariables",void 0),e([r({type:w,value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],b.prototype,"univariateSymbolStyle",null),e([r({type:f,value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],b.prototype,"univariateTheme",null),b=c=e([o("esri.renderers.support.AuthoringInfo")],b);export{b as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import{ClonableMixin as r}from"../../core/Clonable.js";import{JSONSupport as o}from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import{Integer as s}from"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{enumeration as i}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";import{websceneRasterRendererTypes as n,rasterRendererTypes as a}from"./rasterTypeUtils.js";let d=class extends(r(o)){constructor(e){super(e),this.name=void 0,this.method="none",this.value=void 0,this.bandIds=void 0,this.renderer=void 0}};e([t({type:String,json:{write:{isRequired:!0}}})],d.prototype,"name",void 0),e([t({type:["raster-function-template","variable","none"],json:{write:{isRequired:!0}}}),i({rasterFunctionTemplate:"raster-function-template",variable:"variable",none:"none"})],d.prototype,"method",void 0),e([t({type:String,json:{write:{isRequired:!0}}})],d.prototype,"value",void 0),e([t({type:[s],json:{write:{isRequired:!0}}})],d.prototype,"bandIds",void 0),e([t({types:a,json:{write:!0,origins:{"web-scene":{types:n,write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type&&"flow"!==e.type})}}}}})],d.prototype,"renderer",void 0),d=e([p("esri.renderers.support.RasterPresetRenderer")],d);export{d as default};
5
+ import{__decorate as e}from"tslib";import{ClonableMixin as r}from"../../core/Clonable.js";import{JSONSupport as o}from"../../core/JSONSupport.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import{Integer as s}from"../../core/accessorSupport/ensureType.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{enumeration as i}from"../../core/accessorSupport/decorators/enumeration.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";import{websceneRasterRendererTypes as n,rasterRendererTypes as a}from"./rasterTypeUtils.js";let d=class extends(r(o)){constructor(e){super(e),this.name=void 0,this.method="none",this.value=void 0,this.bandIds=void 0,this.renderer=void 0}};e([t({type:String,json:{write:{isRequired:!0}}})],d.prototype,"name",void 0),e([t({type:["raster-function-template","variable","none"],json:{write:{isRequired:!0}}}),i({rasterFunctionTemplate:"raster-function-template",variable:"variable",none:"none"})],d.prototype,"method",void 0),e([t({type:String,json:{write:{isRequired:!0}}})],d.prototype,"value",void 0),e([t({type:[s],json:{write:{isRequired:!0}}})],d.prototype,"bandIds",void 0),e([t({types:a,json:{write:!0,origins:{"web-scene":{types:n,write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type})}}}}})],d.prototype,"renderer",void 0),d=e([p("esri.renderers.support.RasterPresetRenderer")],d);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.34/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../core/Warning.js";import r from"../ClassBreaksRenderer.js";import t from"../FlowRenderer.js";import s from"../RasterColormapRenderer.js";import a from"../RasterShadedReliefRenderer.js";import o from"../RasterStretchRenderer.js";import n from"../UniqueValueRenderer.js";import i from"../VectorFieldRenderer.js";const l={key:"type",base:null,typeMap:{"unique-value":n,"class-breaks":r,"raster-colormap":s,"raster-stretch":o,"vector-field":i,"raster-shaded-relief":a,flow:t}},p={...l,typeMap:{...l.typeMap}};delete p.typeMap["vector-field"],delete p.typeMap.flow;const d={uniqueValue:n,classBreaks:r,rasterStretch:o,rasterColormap:s,vectorField:i,rasterShadedRelief:a,flowRenderer:t};function u(e){return e&&d[e.type]||null}function c(r,t){if(!r)return null;if("classBreaks"===r.type&&r.classificationMethod){const e=r.authoringInfo||{classificationMethod:""};e.classificationMethod=r.classificationMethod,r.authoringInfo=e}"vectorField"===r.type&&r.visualVariables&&!Array.isArray(r.visualVariables)&&(r.visualVariables=[r.visualVariables]);const s=u(r);if(s){const e=new s;return e.read(r,t),e}return t?.messages&&r&&t.messages.push(new e("renderer:unsupported","Renderers of type '"+(r.type||"unknown")+"' are not supported",{definition:r,context:t})),null}function f(e,r){return c(e,r)}export{f as fromJSON,l as rasterRendererTypes,c as read,p as websceneRasterRendererTypes};
5
+ import e from"../../core/Warning.js";import r from"../ClassBreaksRenderer.js";import t from"../FlowRenderer.js";import s from"../RasterColormapRenderer.js";import a from"../RasterShadedReliefRenderer.js";import o from"../RasterStretchRenderer.js";import n from"../UniqueValueRenderer.js";import i from"../VectorFieldRenderer.js";const l={key:"type",base:null,typeMap:{"class-breaks":r,flow:t,"raster-colormap":s,"raster-shaded-relief":a,"raster-stretch":o,"unique-value":n,"vector-field":i}},p={...l,typeMap:{...l.typeMap}};delete p.typeMap["vector-field"];const u={classBreaks:r,flowRenderer:t,rasterColormap:s,rasterShadedRelief:a,rasterStretch:o,uniqueValue:n,vectorField:i};function c(e){return e&&u[e.type]||null}function d(r,t){if(!r)return null;if("classBreaks"===r.type&&r.classificationMethod){const e=r.authoringInfo||{classificationMethod:""};e.classificationMethod=r.classificationMethod,r.authoringInfo=e}"vectorField"===r.type&&r.visualVariables&&!Array.isArray(r.visualVariables)&&(r.visualVariables=[r.visualVariables]);const s=c(r);if(s){const e=new s;return e.read(r,t),e}return t?.messages&&r&&t.messages.push(new e("renderer:unsupported","Renderers of type '"+(r.type||"unknown")+"' are not supported",{definition:r,context:t})),null}function f(e,r){return d(e,r)}export{f as fromJSON,l as rasterRendererTypes,d as read,p as websceneRasterRendererTypes};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- const e="20250730",d="f63eddc54e0d40fc73398057751ebc105ed9ed47";export{e as buildDate,d as commitHash};
5
+ const a="20250731",d="2926f45861591f7db5d28a8b7a1897173a31d215";export{a as buildDate,d as commitHash};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../core/has.js";import{List as t}from"./cpuMapped/FreeList.js";import{isHittest as e}from"./shaderGraph/techniques/featureTechniqueUtils.js";import{PrimitiveType as n,DataType as i}from"../../../webgl/enums.js";function a(t,e){return t<<16|255&e}function s(t){return 255&t}class r{constructor(t,e,n,i,a){this.instance=t,this.materialKey=e,this.target=n,this.start=i,this.count=a}get textureKey(){return s(this.materialKey)}get indexEnd(){return this.start+this.count}extend(t){this.count+=t}render(t){this.instance.techniqueRef.render(t,this)}get key(){return this.target.key}getStencilReference(){return this.target.stencilRef}getAttributePrecisionPackFactors(){const t=this.instance.instanceId;return this.target.getMesh(t).getAttributePrecisionPackFactors()}draw(t,n){e(t)?this.drawCompute(t.context,n):this.drawGeometry(t.context,n)}drawCompute(t,e){const a=this.instance.instanceId,s=this.target.getMesh(a).getComputeVAO(t,e),r=this.start*Uint32Array.BYTES_PER_ELEMENT/3;t.bindVAO(s,e.locations),t.drawElements(n.POINTS,this.count/3,i.UNSIGNED_INT,r),t.bindVAO(null)}drawGeometry(t,e){const a=this.instance.instanceId,s=this.target.getMesh(a).getGeometryVAO(t,e),r=this.start*Uint32Array.BYTES_PER_ELEMENT;t.bindVAO(s,e.locations),t.drawElements(n.TRIANGLES,this.count,i.UNSIGNED_INT,r),t.bindVAO(null)}}class d{constructor(){this._length=0,this._minOrderedLength=0,this._materialKeys=new Set}static fromDisplayEntities(t,e,n,i){const s=new d;for(const r of t.values())for(const t of r.records){const r=n.getInstance(t.instanceId),d=a(r.instanceId,t.textureKey);s.addRecord(r,d,t.indexStart,t.indexCount,t.vertexStart,t.vertexCount,e,i)}return s}get length(){return this._length}get minOrderedLength(){return this._minOrderedLength}get minUnorderedLength(){return this._materialKeys.size}render(t,e){const{drawPhase:n}=t;for(const i of this.infos()){const a=i.instance.techniqueRef;a.drawPhase&n&&(null==e||a.type===e)&&i.render(t)}}addRecord(e,n,i,a,s,d,h,l){let o=i,c=a;if(c||(o=s,c=d),!c)return;if(null==this._head){const i=new r(e,n,h,o,c);return this._head=new t(i),this._tail=this._head,this._length++,void this._minOrderedLength++}if(1===l)return this._insert(e,n,h,o,c,this._tail,null);let u=null,_=this._head;const g=e.instanceId,m=e.techniqueRef.symbologyPlane;if(2===l&&(2===m||3===m))return this._insert(e,n,h,o,c,this._tail,null);for(;_;){const t=_.data.instance,i=t.instanceId,a=t.techniqueRef.symbologyPlane,s=u?.data.instance.instanceId;if(m<a||g===s&&g!==i)return this._insert(e,n,h,o,c,u,_);u=_,_=_.next}this._insert(e,n,h,o,c,u,null)}*infos(){if(null!=this._head)for(const t of this._head.values())yield t}_insert(e,n,i,a,s,d,h){if(null==d&&null==h){const d=new r(e,n,i,a,s);return this._head=new t(d),this._tail=this._head,this._length++,void this._minOrderedLength++}return n!==this._tail.data.materialKey&&this._minOrderedLength++,this._materialKeys.add(n),null==d&&null!=h?this._insertAtHead(e,n,i,a,s,h):null!=d&&null==h?this._insertAtEnd(e,n,i,a,s,d):null!=d&&null!=h?this._insertAtMiddle(e,n,i,a,s,d,h):void 0}_insertAtHead(e,n,i,a,s,d){const h=a+s;if(n===d.data.materialKey&&i===d.data.target&&h===d.data.start)d.data.start=a,d.data.count+=s;else{const h=new r(e,n,i,a,s);this._head=new t(h),this._head.next=d,this._length++}}_insertAtEnd(e,n,i,a,s,d){if(d.data.materialKey===n&&d.data.indexEnd===a)d.data.count+=s;else{const h=new r(e,n,i,a,s);this._tail=new t(h),d.next=this._tail,this._length++}}_insertAtMiddle(e,n,i,a,s,d,h){const l=a+s;if(d.data.materialKey===n&&d.data.target===i&&d.data.indexEnd===a)d.data.count+=s,d.data.materialKey===h.data.materialKey&&d.data.target===h.data.target&&d.data.indexEnd===h.data.start&&(d.data.count+=h.data.count,d.next=h.next,this._length--);else if(n===h.data.materialKey&&i===h.data.target&&l===h.data.start)h.data.start=a,h.data.count+=s;else{const l=new r(e,n,i,a,s),o=new t(l);d.next=o,o.next=h,this._length++}}}export{d as DisplayList,r as DisplayListInfo};
5
+ import"../../../../core/has.js";import{List as t}from"./cpuMapped/FreeList.js";import{isHittest as e}from"./shaderGraph/techniques/featureTechniqueUtils.js";import{PrimitiveType as n,DataType as i}from"../../../webgl/enums.js";function a(t,e){return t<<16|255&e}function s(t){return 255&t}class r{constructor(t,e,n,i,a){this.instance=t,this.materialKey=e,this.target=n,this.start=i,this.count=a}get textureKey(){return s(this.materialKey)}get indexEnd(){return this.start+this.count}extend(t){this.count+=t}render(t){this.instance.techniqueRef.render(t,this)}getStencilReference(){return this.target.stencilRef}getAttributePrecisionPackFactors(){const t=this.instance.instanceId;return this.target.getMesh(t).getAttributePrecisionPackFactors()}draw(t,n){e(t)?this.drawCompute(t.context,n):this.drawGeometry(t.context,n)}drawCompute(t,e){const a=this.instance.instanceId,s=this.target.getMesh(a).getComputeVAO(t,e),r=this.start*Uint32Array.BYTES_PER_ELEMENT/3;t.bindVAO(s,e.locations),t.drawElements(n.POINTS,this.count/3,i.UNSIGNED_INT,r),t.bindVAO(null)}drawGeometry(t,e){const a=this.instance.instanceId,s=this.target.getMesh(a).getGeometryVAO(t,e),r=this.start*Uint32Array.BYTES_PER_ELEMENT;t.bindVAO(s,e.locations),t.drawElements(n.TRIANGLES,this.count,i.UNSIGNED_INT,r),t.bindVAO(null)}}class d{constructor(){this._length=0,this._minOrderedLength=0,this._materialKeys=new Set}static fromDisplayEntities(t,e,n,i){const s=new d;for(const r of t.values())for(const t of r.records){const r=n.getInstance(t.instanceId),d=a(r.instanceId,t.textureKey);s.addRecord(r,d,t.indexStart,t.indexCount,t.vertexStart,t.vertexCount,e,i)}return s}get length(){return this._length}get minOrderedLength(){return this._minOrderedLength}get minUnorderedLength(){return this._materialKeys.size}render(t,e){const{drawPhase:n}=t;for(const i of this.infos()){const a=i.instance.techniqueRef;a.drawPhase&n&&(null==e||a.type===e)&&i.render(t)}}addRecord(e,n,i,a,s,d,h,l){let o=i,c=a;if(c||(o=s,c=d),!c)return;if(null==this._head){const i=new r(e,n,h,o,c);return this._head=new t(i),this._tail=this._head,this._length++,void this._minOrderedLength++}if(1===l)return this._insert(e,n,h,o,c,this._tail,null);let u=null,_=this._head;const g=e.instanceId,m=e.techniqueRef.symbologyPlane;if(2===l&&(2===m||3===m))return this._insert(e,n,h,o,c,this._tail,null);for(;_;){const t=_.data.instance,i=t.instanceId,a=t.techniqueRef.symbologyPlane,s=u?.data.instance.instanceId;if(m<a||g===s&&g!==i)return this._insert(e,n,h,o,c,u,_);u=_,_=_.next}this._insert(e,n,h,o,c,u,null)}*infos(){if(null!=this._head)for(const t of this._head.values())yield t}_insert(e,n,i,a,s,d,h){if(null==d&&null==h){const d=new r(e,n,i,a,s);return this._head=new t(d),this._tail=this._head,this._length++,void this._minOrderedLength++}return n!==this._tail.data.materialKey&&this._minOrderedLength++,this._materialKeys.add(n),null==d&&null!=h?this._insertAtHead(e,n,i,a,s,h):null!=d&&null==h?this._insertAtEnd(e,n,i,a,s,d):null!=d&&null!=h?this._insertAtMiddle(e,n,i,a,s,d,h):void 0}_insertAtHead(e,n,i,a,s,d){const h=a+s;if(n===d.data.materialKey&&i===d.data.target&&h===d.data.start)d.data.start=a,d.data.count+=s;else{const h=new r(e,n,i,a,s);this._head=new t(h),this._head.next=d,this._length++}}_insertAtEnd(e,n,i,a,s,d){if(d.data.materialKey===n&&d.data.indexEnd===a)d.data.count+=s;else{const h=new r(e,n,i,a,s);this._tail=new t(h),d.next=this._tail,this._length++}}_insertAtMiddle(e,n,i,a,s,d,h){const l=a+s;if(d.data.materialKey===n&&d.data.target===i&&d.data.indexEnd===a)d.data.count+=s,d.data.materialKey===h.data.materialKey&&d.data.target===h.data.target&&d.data.indexEnd===h.data.start&&(d.data.count+=h.data.count,d.next=h.next,this._length--);else if(n===h.data.materialKey&&i===h.data.target&&l===h.data.start)h.data.start=a,h.data.count+=s;else{const l=new r(e,n,i,a,s),o=new t(l);d.next=o,o.next=h,this._length++}}}export{d as DisplayList,r as DisplayListInfo};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../core/has.js";import{disposeMaybe as e,destroyMaybe as t}from"../../../../core/maybe.js";import{brushes as s}from"../brushes.js";import r from"../vectorTiles/shaders/VTLMaterialManager.js";import{BitBlitRenderer as i}from"./BitBlitRenderer.js";import{backbufferStencilVisible as n}from"./definitions.js";import a from"./MaterialManager.js";import o from"./TextureManager.js";import{TextureUploadManager as l}from"./TextureUploadManager.js";import{WorldExtentRenderer as h}from"./WorldExtentClipRenderer.js";import{BlendEffect as f}from"./effects/BlendEffect.js";import{FeatureEffect as c}from"./effects/FeatureEffect.js";import d from"./effects/HighlightEffect.js";import{HittestEffect as p}from"./effects/HittestEffect.js";import{EffectManager as u}from"./effects/post-processing/EffectManager.js";import{SimpleMesh as b}from"./meshing/SimpleMesh.js";import m from"./painter/RenderPass.js";import{TechniqueProgramCache as _}from"./shaderGraph/techniques/TechniqueProgramCache.js";import{SizedDepthStencilFormat as g}from"../../../webgl/enums.js";import{FramebufferObject as w}from"../../../webgl/FramebufferObject.js";import{Renderbuffer as S}from"../../../webgl/Renderbuffer.js";import{RenderbufferDescriptor as M}from"../../../webgl/RenderbufferDescriptor.js";import{TextureDescriptor as E}from"../../../webgl/TextureDescriptor.js";class P{constructor(e,t){this.context=e,this._currentPipelineStateNeedsUpdate=!1,this._blitRenderer=new i,this._worldExtentRenderer=new h,this._brushCache=new Map,this._lastWidth=null,this._lastHeight=null,this._vtlMaterialManager=new r,this._blendEffect=new f,this._stencilBuf=null,this._prevBeforeLayerFBOStack=[],this._fboPool=[],this.effects={highlight:new d,hittest:new p,insideEffect:new c("inside"),outsideEffect:new c("outside")},this._programCache=new _,this.materialManager=new a(e),this.textureManager=new o(t),this.textureUploadManager=new l(t),this._effectsManager=new u,this._quadMesh=b.fromVertexStream(e,[0,0,1,0,0,1,1,1])}dispose(){if(this._programCache.destroy(),this.materialManager.dispose(),this.textureManager.dispose(),this.textureUploadManager.destroy(),this._blitRenderer=e(this._blitRenderer),this._worldExtentRenderer=e(this._worldExtentRenderer),this._quadMesh=t(this._quadMesh),this._brushCache&&(this._brushCache.forEach(e=>e.dispose()),this._brushCache.clear(),this._brushCache=null),this._fbos){let e;for(e in this._fbos)this._fbos[e]&&this._fbos[e].dispose()}for(const e of this._fboPool)e.dispose();if(this._fboPool.length=0,this.effects){let e;for(e in this.effects)this.effects[e]&&this.effects[e].dispose()}this._effectsManager.dispose(),this._blendEffect.dispose(this.context),this._vtlMaterialManager=e(this._vtlMaterialManager)}clearShaderCache(){this._programCache.destroy(),this._programCache=new _}get blitRenderer(){return this._blitRenderer}get vectorTilesMaterialManager(){return this._vtlMaterialManager}get quadMesh(){return this._quadMesh}getFbos(){if(!this._fbos)throw new Error("InternalError: Painter FBOs not initialized");return this._fbos}acquireFbo(e,t){let s;if(this._fboPool.length>0)s=this._fboPool.pop();else{const r=new E(e,t);r.samplingMode=9728,r.wrapMode=33071,s=new w(this.context,r,this._stencilBuf)}return s.width===e&&s.height===t||s.resize(e,t),s}releaseFbo(e){this._fboPool.push(e)}getSharedStencilBuffer(){return this._stencilBuf}beforeRenderPhases(e,t,s){const{context:r}=e;this._worldExtentRenderer.render(e,t,s);const{width:i,height:n}=r.getViewport();if(this.updateFBOs(i,n),this._prevFBO=r.getBoundFramebufferObject(),r.bindFramebuffer(this.getFbos().output),r.setColorMask(!0,!0,!0,!0),null!=t){const{r:e,g:s,b:i,a:n}=t;r.setClearColor(n*e/255,n*s/255,n*i/255,n)}else r.setClearColor(0,0,0,0);r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(16640),r.setDepthWriteEnabled(!1)}afterRenderPhases(e){const{context:t}=e;t.bindFramebuffer(this._prevFBO),t.setStencilFunction(514,n,255),t.setStencilTestEnabled(!0),t.setDepthTestEnabled(!1),this.blitTexture(t,this.getFbos().output.colorTexture,9728)}beforeRenderLayer(e,t,s){const{context:r,blendMode:i,effects:n,drawPhase:a,requireFBO:o}=e;if(r.setClearColor(0,0,0,0),o||C(a,i,n,s)){const e=r.getBoundFramebufferObject();this._prevBeforeLayerFBOStack.push(e);const{width:t,height:s}=r.getViewport(),i=this.acquireFbo(t,s);r.bindFramebuffer(i),r.setColorMask(!0,!0,!0,!0),r.setClearColor(0,0,0,0),r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(16640),r.setDepthWriteEnabled(!1)}r.setDepthWriteEnabled(!1),r.setDepthTestEnabled(!1),r.setStencilTestEnabled(!0),r.setClearStencil(t),r.setStencilWriteMask(255),r.clear(1024)}afterRenderLayer(e,t){const{context:s,blendMode:r,effects:i,requireFBO:n,drawPhase:a}=e;if(n||C(a,r,i,t)){const n=s.getBoundFramebufferObject();null!=i&&i.length>0&&1===a&&(s.setColorMask(!0,!0,!0,!0),this._applyEffects(e,i,n)),s.bindFramebuffer(this._prevBeforeLayerFBOStack.pop()),s.setStencilTestEnabled(!1),s.setStencilWriteMask(0),s.setBlendingEnabled(!0),s.setBlendFunctionSeparate(1,771,1,771),s.setColorMask(!0,!0,!0,!0);const o=null==r||16===a||2===a?"normal":r;this._blendEffect.draw(e,n.colorTexture,9728,o,t),this.releaseFbo(n)}}renderObject(e,t,r,i){const n=s[r];if(!n)return;let a=this._brushCache.get(n);void 0===a&&(a=new n,this._brushCache.set(n,a)),a.prepareState(e),a.draw(e,t,i)}renderObjects(e,t,r,i){const n=s[r];if(!n)return;let a=this._brushCache.get(n);void 0===a&&(a=new n,this._brushCache.set(n,a)),a.drawMany(e,t,i)}registerRenderPass(e){const t=e.brushes.map(e=>(this._brushCache.has(e)||this._brushCache.set(e,new e),this._brushCache.get(e)));return new m(t,e)}blitTexture(e,t,s,r=1){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(1,771,1,771),e.setColorMask(!0,!0,!0,!0),this._blitRenderer.render(e,t,s,r),this._currentPipelineStateNeedsUpdate=!0}getPostProcessingEffects(e){return this._effectsManager.getPostProcessingEffects(e)}updateFBOs(e,t){if(e!==this._lastWidth||t!==this._lastHeight){if(this._lastWidth=e,this._lastHeight=t,this._fbos){let s;for(s in this._fbos)this._fbos[s].resize(e,t);return}const s=new E(e,t);s.samplingMode=9728,s.wrapMode=33071;const r=new M(g.DEPTH24_STENCIL8,e,t);this._stencilBuf=new S(this.context,r),this._fbos={output:new w(this.context,s,this._stencilBuf),effect0:new w(this.context,s,this._stencilBuf)}}}_applyEffects(e,t,s){const{context:r}=e,i=this._effectsManager.getPostProcessingEffects(t);for(const{postProcessingEffect:n,effect:a}of i)r.bindFramebuffer(s),n.draw(e,s,a);this._currentPipelineStateNeedsUpdate=!0}setShader(e){return this._shaderState={shader:e.shader,uniforms:e.uniforms,defines:e.defines,optionalAttributes:e.optionalAttributes,useComputeBuffer:e.useComputeBuffer??!1},this._shaderState}setPipelineState(e){e!==this._currentPipelineState&&(this._currentPipelineState=e,this._currentPipelineStateNeedsUpdate=!0)}submitDraw(e,t){if(!this._shaderState)return null;const{shader:s,uniforms:r,defines:i,optionalAttributes:n}=this._shaderState,a=e.context,o=t.getAttributePrecisionPackFactors(),l=this._programCache.getProgram(s,o,r,i??{},n??{});return l.setUniforms(r),l.bind(a),this.updatePipelineState(a),this.setStencilRef(a,t),t.draw(e,s.locationInfo),l.cleanupTemporaryTextures(),{vertexShader:l.vertexShader,fragmentShader:l.fragmentShader}}submitDrawMesh(e,t,s,r){this.submitDrawMeshUntyped(e,t,s,r)}submitDrawMeshUntyped(e,t,s,r){const{shader:i,uniforms:n,defines:a,optionalAttributes:o}=this.setShader(t),l=this._programCache.getProgram(i,{},n,a??{},o??{});if(l.setUniforms(n),l.bind(e),this.updatePipelineState(e),r)for(const h of r)s.bind(e,t.shader.locationInfo,h),s.draw(e);else for(let h=0;h<s.parts.length;h++)s.bind(e,t.shader.locationInfo,h),s.draw(e);s.unbind(e),l.cleanupTemporaryTextures()}updatePipelineState(e){this._currentPipelineStateNeedsUpdate&&(this._currentPipelineStateNeedsUpdate=!1,this._updatePipelineState(e))}_updatePipelineState(e){if(null==this._currentPipelineState)throw new Error("Pipeline state not defined. Call setPipelineState before calling submitDraw ");const{color:t,depth:s,stencil:r}=this._currentPipelineState;if(t){const{blendMode:s,write:r}=t;switch(e.setColorMask(...r),e.setBlendingEnabled(!0),e.setBlendEquation(32774),s){case"composite":e.setBlendFunctionSeparate(1,771,1,771);break;case"additive":e.setBlendFunctionSeparate(1,1,1,1);break;case"custom":{const{blendParameters:s}=t,{dstAlpha:r,dstRGB:i,srcAlpha:n,srcRGB:a}=s;e.setBlendFunctionSeparate(a,i,n,r);break}case"delete":e.setBlendEquation(32779),e.setBlendFunctionSeparate(1,771,1,771)}}else e.setColorMask(!1,!1,!1,!1);if(s){const{test:t,write:r}=s;r?(e.setDepthWriteEnabled(!0),e.setDepthRange(r.zNear,r.zFar)):e.setDepthWriteEnabled(!1),t?(e.setDepthTestEnabled(!0),e.setDepthFunction(t)):e.setDepthTestEnabled(!1)}else e.setDepthTestEnabled(!1),e.setDepthWriteEnabled(!1);if(r){const{test:t,write:s}=r;if(t){const{compare:s,mask:r,op:i,ref:n}=t;e.setStencilTestEnabled(!0),"function"!=typeof n&&e.setStencilFunctionSeparate(1032,s,n,r),e.setStencilOpSeparate(1032,i.fail,i.zFail,i.zPass)}else e.setStencilTestEnabled(!1);if(s){const{mask:t}=s;e.setStencilWriteMask(t)}else e.setStencilWriteMask(0)}else e.setStencilTestEnabled(!1),e.setStencilWriteMask(0)}setStencilRef(e,t){if(null==this._currentPipelineState)throw new Error("Pipeline state not defined. Call setPipelineState before calling submitDraw ");const{stencil:s}=this._currentPipelineState;if(s){const{test:r}=s;if(r){const{compare:s,mask:i,ref:n}=r;let a=null;if("function"==typeof n?a=n(t):"number"==typeof n&&(a=n),null==a&&(a=t.getStencilReference()),null==a)throw new Error("InternalError: Stencil reference expected for target but not defined");e.setStencilFunctionSeparate(1032,s,a,i)}}}}function C(e,t,s,r){return 4!==e&&2!==e&&16!==e&&(1!==r||null!=t&&"normal"!==t||null!=s&&s.length>0)}export{P as default};
5
+ import"../../../../core/has.js";import{disposeMaybe as e,destroyMaybe as t}from"../../../../core/maybe.js";import{brushes as s}from"../brushes.js";import r from"../vectorTiles/shaders/VTLMaterialManager.js";import{BitBlitRenderer as i}from"./BitBlitRenderer.js";import{backbufferStencilVisible as n}from"./definitions.js";import a from"./MaterialManager.js";import o from"./TextureManager.js";import{TextureUploadManager as l}from"./TextureUploadManager.js";import{WorldExtentRenderer as h}from"./WorldExtentClipRenderer.js";import{BlendEffect as f}from"./effects/BlendEffect.js";import{FeatureEffect as c}from"./effects/FeatureEffect.js";import d from"./effects/HighlightEffect.js";import{HittestEffect as p}from"./effects/HittestEffect.js";import{EffectManager as u}from"./effects/post-processing/EffectManager.js";import{SimpleMesh as b}from"./meshing/SimpleMesh.js";import m from"./painter/RenderPass.js";import{TechniqueProgramCache as _}from"./shaderGraph/techniques/TechniqueProgramCache.js";import{SizedDepthStencilFormat as g}from"../../../webgl/enums.js";import{FramebufferObject as w}from"../../../webgl/FramebufferObject.js";import{Renderbuffer as S}from"../../../webgl/Renderbuffer.js";import{RenderbufferDescriptor as M}from"../../../webgl/RenderbufferDescriptor.js";import{TextureDescriptor as E}from"../../../webgl/TextureDescriptor.js";class P{constructor(e,t){this.context=e,this._currentPipelineStateNeedsUpdate=!1,this._blitRenderer=new i,this._worldExtentRenderer=new h,this._brushCache=new Map,this._lastWidth=null,this._lastHeight=null,this._vtlMaterialManager=new r,this._blendEffect=new f,this._stencilBuf=null,this._prevBeforeLayerFBOStack=[],this._fboPool=[],this.effects={highlight:new d,hittest:new p,insideEffect:new c("inside"),outsideEffect:new c("outside")},this._programCache=new _,this.materialManager=new a(e),this.textureManager=new o(t),this.textureUploadManager=new l(t),this._effectsManager=new u,this._quadMesh=b.fromVertexStream(e,[0,0,1,0,0,1,1,1])}dispose(){if(this._programCache.destroy(),this.materialManager.dispose(),this.textureManager.dispose(),this.textureUploadManager.destroy(),this._blitRenderer=e(this._blitRenderer),this._worldExtentRenderer=e(this._worldExtentRenderer),this._quadMesh=t(this._quadMesh),this._brushCache&&(this._brushCache.forEach(e=>e.dispose()),this._brushCache.clear(),this._brushCache=null),this._fbos){let e;for(e in this._fbos)this._fbos[e]&&this._fbos[e].dispose()}for(const e of this._fboPool)e.dispose();if(this._fboPool.length=0,this.effects){let e;for(e in this.effects)this.effects[e]&&this.effects[e].dispose()}this._effectsManager.dispose(),this._blendEffect.dispose(this.context),this._vtlMaterialManager=e(this._vtlMaterialManager)}clearShaderCache(){this._programCache.destroy(),this._programCache=new _}get blitRenderer(){return this._blitRenderer}get vectorTilesMaterialManager(){return this._vtlMaterialManager}get quadMesh(){return this._quadMesh}getFbos(){if(!this._fbos)throw new Error("InternalError: Painter FBOs not initialized");return this._fbos}acquireFbo(e,t){let s;if(this._fboPool.length>0)s=this._fboPool.pop();else{const r=new E(e,t);r.samplingMode=9728,r.wrapMode=33071,s=new w(this.context,r,this._stencilBuf)}return s.width===e&&s.height===t||s.resize(e,t),s}releaseFbo(e){this._fboPool.push(e)}getSharedStencilBuffer(){return this._stencilBuf}beforeRenderPhases(e,t,s){const{context:r}=e;this._worldExtentRenderer.render(e,t,s);const{width:i,height:n}=r.getViewport();if(this.updateFBOs(i,n),this._prevFBO=r.getBoundFramebufferObject(),r.bindFramebuffer(this.getFbos().output),r.setColorMask(!0,!0,!0,!0),null!=t){const{r:e,g:s,b:i,a:n}=t;r.setClearColor(n*e/255,n*s/255,n*i/255,n)}else r.setClearColor(0,0,0,0);r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(16640),r.setDepthWriteEnabled(!1)}afterRenderPhases(e){const{context:t}=e;t.bindFramebuffer(this._prevFBO),t.setStencilFunction(514,n,255),t.setStencilTestEnabled(!0),t.setDepthTestEnabled(!1),this.blitTexture(t,this.getFbos().output.colorTexture,9728)}beforeRenderLayer(e,t,s){const{context:r,blendMode:i,effects:n,drawPhase:a,requireFBO:o}=e;if(r.setClearColor(0,0,0,0),o||C(a,i,n,s)){const e=r.getBoundFramebufferObject();this._prevBeforeLayerFBOStack.push(e);const{width:t,height:s}=r.getViewport(),i=this.acquireFbo(t,s);r.bindFramebuffer(i),r.setColorMask(!0,!0,!0,!0),r.setClearColor(0,0,0,0),r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(16640),r.setDepthWriteEnabled(!1)}r.setDepthWriteEnabled(!1),r.setDepthTestEnabled(!1),r.setStencilTestEnabled(!0),r.setClearStencil(t),r.setStencilWriteMask(255),r.clear(1024)}afterRenderLayer(e,t){const{context:s,blendMode:r,effects:i,requireFBO:n,drawPhase:a}=e;if(n||C(a,r,i,t)){const n=s.getBoundFramebufferObject();null!=i&&i.length>0&&1===a&&(s.setColorMask(!0,!0,!0,!0),this._applyEffects(e,i,n)),s.bindFramebuffer(this._prevBeforeLayerFBOStack.pop()),s.setStencilTestEnabled(!1),s.setStencilWriteMask(0),s.setBlendingEnabled(!0),s.setBlendFunctionSeparate(1,771,1,771),s.setColorMask(!0,!0,!0,!0);const o=null==r||16===a||2===a?"normal":r;this._blendEffect.draw(e,n.colorTexture,9728,o,t),this.releaseFbo(n)}}renderObject(e,t,r,i){const n=s[r];if(!n)return;let a=this._brushCache.get(n);void 0===a&&(a=new n,this._brushCache.set(n,a)),a.prepareState(e),a.draw(e,t,i)}renderObjects(e,t,r,i){const n=s[r];if(!n)return;let a=this._brushCache.get(n);void 0===a&&(a=new n,this._brushCache.set(n,a)),a.drawMany(e,t,i)}registerRenderPass(e){const t=e.brushes.map(e=>(this._brushCache.has(e)||this._brushCache.set(e,new e),this._brushCache.get(e)));return new m(t,e)}blitTexture(e,t,s,r=1){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(1,771,1,771),e.setColorMask(!0,!0,!0,!0),this._blitRenderer.render(e,t,s,r),this._currentPipelineStateNeedsUpdate=!0}getPostProcessingEffects(e){return this._effectsManager.getPostProcessingEffects(e)}updateFBOs(e,t){if(e!==this._lastWidth||t!==this._lastHeight){if(this._lastWidth=e,this._lastHeight=t,this._fbos){let s;for(s in this._fbos)this._fbos[s].resize(e,t);return}const s=new E(e,t);s.samplingMode=9728,s.wrapMode=33071;const r=new M(g.DEPTH24_STENCIL8,e,t);this._stencilBuf=new S(this.context,r),this._fbos={output:new w(this.context,s,this._stencilBuf),effect0:new w(this.context,s,this._stencilBuf)}}}_applyEffects(e,t,s){const{context:r}=e,i=this._effectsManager.getPostProcessingEffects(t);for(const{postProcessingEffect:n,effect:a}of i)r.bindFramebuffer(s),n.draw(e,s,a);this._currentPipelineStateNeedsUpdate=!0}setShader(e){return this._shaderState={shader:e.shader,uniforms:e.uniforms,defines:e.defines,optionalAttributes:e.optionalAttributes,useComputeBuffer:e.useComputeBuffer??!1},this._shaderState}setPipelineState(e){e!==this._currentPipelineState&&(this._currentPipelineState=e,this._currentPipelineStateNeedsUpdate=!0)}submitDraw(e,t,s){let r=s?.stencilRef;if(!this._shaderState)return null;const{shader:i,uniforms:n,defines:a,optionalAttributes:o}=this._shaderState,l=e.context,h=t.getAttributePrecisionPackFactors(),f=this._programCache.getProgram(i,h,n,a??{},o??{});if(f.setUniforms(n),f.bind(l),this.updatePipelineState(l),null==r){const e=t.getStencilReference();null!=e&&(r=e)}return null!=r&&this.setStencilRef(l,r),t.draw(e,i.locationInfo),f.cleanupTemporaryTextures(),{vertexShader:f.vertexShader,fragmentShader:f.fragmentShader}}submitDrawMesh(e,t,s,r){this.submitDrawMeshUntyped(e,t,s,r)}submitDrawMeshUntyped(e,t,s,r){const i=r?.parts,n=r?.stencilRef,{shader:a,uniforms:o,defines:l,optionalAttributes:h}=this.setShader(t),f=this._programCache.getProgram(a,{},o,l??{},h??{});if(f.setUniforms(o),f.bind(e),this.updatePipelineState(e),this.setStencilRef(e,n),i)for(const c of i)s.bind(e,t.shader.locationInfo,c),s.draw(e);else for(let c=0;c<s.parts.length;c++)s.bind(e,t.shader.locationInfo,c),s.draw(e);s.unbind(e),f.cleanupTemporaryTextures()}updatePipelineState(e){this._currentPipelineStateNeedsUpdate&&(this._currentPipelineStateNeedsUpdate=!1,this._updatePipelineState(e))}_updatePipelineState(e){if(null==this._currentPipelineState)throw new Error("Pipeline state not defined. Call setPipelineState before calling submitDraw ");const{color:t,depth:s,stencil:r}=this._currentPipelineState;if(t){const{blendMode:s,write:r}=t;switch(e.setColorMask(...r),e.setBlendingEnabled(!0),e.setBlendEquation(32774),s){case"composite":e.setBlendFunctionSeparate(1,771,1,771);break;case"additive":e.setBlendFunctionSeparate(1,1,1,1);break;case"custom":{const{blendParameters:s}=t,{dstAlpha:r,dstRGB:i,srcAlpha:n,srcRGB:a}=s;e.setBlendFunctionSeparate(a,i,n,r);break}case"delete":e.setBlendEquation(32779),e.setBlendFunctionSeparate(1,771,1,771)}}else e.setColorMask(!1,!1,!1,!1);if(s){const{test:t,write:r}=s;r?(e.setDepthWriteEnabled(!0),e.setDepthRange(r.zNear,r.zFar)):e.setDepthWriteEnabled(!1),t?(e.setDepthTestEnabled(!0),e.setDepthFunction(t)):e.setDepthTestEnabled(!1)}else e.setDepthTestEnabled(!1),e.setDepthWriteEnabled(!1);if(r){const{test:t,write:s}=r;if(t){const{op:s}=t;e.setStencilTestEnabled(!0),e.setStencilOpSeparate(1032,s.fail,s.zFail,s.zPass)}else e.setStencilTestEnabled(!1);if(s){const{mask:t}=s;e.setStencilWriteMask(t)}else e.setStencilWriteMask(0)}else e.setStencilTestEnabled(!1),e.setStencilWriteMask(0)}setStencilRef(e,t){if(null==this._currentPipelineState)throw new Error("Pipeline state not defined. Call setPipelineState before calling submitDraw ");const{stencil:s}=this._currentPipelineState;if(s){const{test:r}=s;if(r){const{compare:s,mask:i}=r;if(null==t)throw new Error("InternalError: Stencil reference expected for target but not defined");e.setStencilFunctionSeparate(1032,s,t,i)}}}}function C(e,t,s,r){return 4!==e&&2!==e&&16!==e&&(1!==r||null!=t&&"normal"!==t||null!=s&&s.length>0)}export{P as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{FeatureTechnique as e}from"./FeatureTechnique.js";import{MeshWriter as t}from"./mesh/MeshWriter.js";import{TestShader as r}from"./shaders/TestShader.js";import{DataType as i}from"../../../../../webgl/enums.js";const o={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:{write:!1,test:{ref:e=>e.stencilRef,compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7681}}}};class s extends e{constructor(){super(...arguments),this.type=24,this.shaders={geometry:new r}}render(e,t){const{painter:r}=e,i=t.instance.getInput();r.setShader({shader:this.shaders.geometry,uniforms:{dataDrivenColor:i.uniforms.dataDrivenColor,view:{zoomLevel:1}},defines:{returnRed:!1},optionalAttributes:{},useComputeBuffer:!1}),r.setPipelineState(o),r.submitDraw(e,t)}}const n={createComputedParams:e=>e,optionalAttributes:{},attributes:{pos:{type:i.SHORT,count:2,pack:"position",packPrecisionFactor:10},id:{type:i.UNSIGNED_BYTE,count:3,pack:"id"},bitset:{type:i.UNSIGNED_BYTE,count:1},size:{type:i.UNSIGNED_BYTE,count:1,packPrecisionFactor:10,pack:e=>.2},offset:{type:i.INT,count:2,packPrecisionFactor:10,packAlternating:{count:4,pack:()=>[[-1,1],[1,1],[-1,-1],[1,-1]]}},color:{type:i.UNSIGNED_BYTE,count:4,normalized:!0,pack:({color:e})=>e}}};class a extends t{constructor(){super(...arguments),this.vertexSpec=n}_write(e,t){e.recordStart(this.instanceId,this.attributeLayout);const r=655360,i=e.vertexCount(),o=t.readXForDisplay(),s=t.readYForDisplay();this._writeVertex(e,r,o,s),e.indexWrite(i+0),e.indexWrite(i+1),e.indexWrite(i+2),e.indexWrite(i+1),e.indexWrite(i+3),e.indexWrite(i+2),e.recordEnd()}}export{a as TestMeshWriter,s as TestTechnique};
5
+ import{FeatureTechnique as e}from"./FeatureTechnique.js";import{MeshWriter as t}from"./mesh/MeshWriter.js";import{TestShader as r}from"./shaders/TestShader.js";import{DataType as o}from"../../../../../webgl/enums.js";const i={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:{write:!1,test:{compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7681}}}};class s extends e{constructor(){super(...arguments),this.type=24,this.shaders={geometry:new r}}render(e,t){const{painter:r}=e,o=t.instance.getInput();r.setShader({shader:this.shaders.geometry,uniforms:{dataDrivenColor:o.uniforms.dataDrivenColor,view:{zoomLevel:1}},defines:{returnRed:!1},optionalAttributes:{},useComputeBuffer:!1}),r.setPipelineState(i),r.submitDraw(e,t)}}const n={createComputedParams:e=>e,optionalAttributes:{},attributes:{pos:{type:o.SHORT,count:2,pack:"position",packPrecisionFactor:10},id:{type:o.UNSIGNED_BYTE,count:3,pack:"id"},bitset:{type:o.UNSIGNED_BYTE,count:1},size:{type:o.UNSIGNED_BYTE,count:1,packPrecisionFactor:10,pack:e=>.2},offset:{type:o.INT,count:2,packPrecisionFactor:10,packAlternating:{count:4,pack:()=>[[-1,1],[1,1],[-1,-1],[1,-1]]}},color:{type:o.UNSIGNED_BYTE,count:4,normalized:!0,pack:({color:e})=>e}}};class a extends t{constructor(){super(...arguments),this.vertexSpec=n}_write(e,t){e.recordStart(this.instanceId,this.attributeLayout);const r=655360,o=e.vertexCount(),i=t.readXForDisplay(),s=t.readYForDisplay();this._writeVertex(e,r,i,s),e.indexWrite(o+0),e.indexWrite(o+1),e.indexWrite(o+2),e.indexWrite(o+1),e.indexWrite(o+3),e.indexWrite(o+2),e.recordEnd()}}export{a as TestMeshWriter,s as TestTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{textureBindingBitmap as e}from"../../../definitions.js";import{Technique as i}from"../Technique.js";import{BitmapShader as t}from"../shaders/BitmapShader.js";const s={nearest:{samplingMode:9728,mips:!1},bilinear:{samplingMode:9729,mips:!1},bicubic:{samplingMode:9729,mips:!1},trilinear:{samplingMode:9987,mips:!0}},n=(e,i,t)=>{if("dynamic"===t.samplingMode){const{state:t}=e,n=i.resolution/i.pixelRatio/t.resolution,o=Math.round(e.pixelRatio)!==e.pixelRatio,r=n>1.05||n<.95;return t.rotation||r||o||i.isSourceScaled||i.rotation?s.bilinear:s.nearest}return s[t.samplingMode]};class o extends i{constructor(){super(...arguments),this.name="BrushBitmap",this.type=4,this.shaders={bitmap:new t}}render(i,t){const{context:o,renderingOptions:r,painter:a}=i;for(const c of t.bitmaps){const t=c.texture;if(!c.source||!c.isReady||null==t)continue;const p=n(i,c,r);i.timeline.begin(this.name),a.setPipelineState({depth:!1,stencil:{test:{mask:255,ref:c.stencilRef,compare:514,op:{fail:7680,zFail:7680,zPass:7680}},write:!1},color:{write:[!0,!0,!0,!0],blendMode:"additive"===c.blendFunction?"additive":"composite"}}),c.setSamplingProfile(p);const{coordScale:l,computedOpacity:m,transforms:d}=c,u={texture:{texture:t,unit:e},dvsMat3:d.displayViewScreenMat3,coordScale:l,opacity:m};a.submitDrawMesh(o,{shader:this.shaders.bitmap,uniforms:{config:u},defines:{bicubic:p===s.bicubic},optionalAttributes:null,useComputeBuffer:!1},a.quadMesh),i.timeline.end(this.name)}}}export{o as BitmapTechnique};
5
+ import{textureBindingBitmap as e}from"../../../definitions.js";import{Technique as i}from"../Technique.js";import{BitmapShader as t}from"../shaders/BitmapShader.js";const s={nearest:{samplingMode:9728,mips:!1},bilinear:{samplingMode:9729,mips:!1},bicubic:{samplingMode:9729,mips:!1},trilinear:{samplingMode:9987,mips:!0}},n=(e,i,t)=>{if("dynamic"===t.samplingMode){const{state:t}=e,n=i.resolution/i.pixelRatio/t.resolution,o=Math.round(e.pixelRatio)!==e.pixelRatio,a=n>1.05||n<.95;return t.rotation||a||o||i.isSourceScaled||i.rotation?s.bilinear:s.nearest}return s[t.samplingMode]};class o extends i{constructor(){super(...arguments),this.name="BrushBitmap",this.type=4,this.shaders={bitmap:new t}}render(i,t){const{context:o,renderingOptions:a,painter:r}=i;for(const p of t.bitmaps){const t=p.texture;if(!p.source||!p.isReady||null==t)continue;const c=n(i,p,a);i.timeline.begin(this.name),r.setPipelineState({depth:!1,stencil:{test:{mask:255,compare:514,op:{fail:7680,zFail:7680,zPass:7680}},write:!1},color:{write:[!0,!0,!0,!0],blendMode:"additive"===p.blendFunction?"additive":"composite"}}),p.setSamplingProfile(c);const{coordScale:m,computedOpacity:d,transforms:l}=p,u={texture:{texture:t,unit:e},dvsMat3:l.displayViewScreenMat3,coordScale:m,opacity:d};r.submitDrawMesh(o,{shader:this.shaders.bitmap,uniforms:{config:u},defines:{bicubic:c===s.bicubic},optionalAttributes:null,useComputeBuffer:!1},r.quadMesh,p),i.timeline.end(this.name)}}}export{o as BitmapTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{tileSize as e,textureBindingRenderer1 as t,textureBindingRenderer0 as i}from"../../../definitions.js";import{FeatureTechnique as o}from"../FeatureTechnique.js";import{isHighlight as r,isHittest as s,getSelectionDefines as n,getFeatureUniforms as a,getFeaturePipelineState as l,getViewUniforms as d}from"../featureTechniqueUtils.js";import{DotDensityPointShader as u}from"./DotDensityPointShader.js";import{DotDensityPolygonShader as c}from"./DotDensityPolygonShader.js";import{DotDensityResources as p}from"./DotDensityResources.js";import{FillShader as h}from"../shaders/FillShader.js";class m extends o{constructor(){super(...arguments),this.type=8,this.shaders={polygon:new c,point:new u,fill:new h},this._resources=new Map}render(e,t){r(e)||s(e)?this._renderPolygons(e,t):this._renderDotDensity(e,t)}_renderPolygons(e,t){const{painter:i}=e;i.setShader({shader:this.shaders.fill,uniforms:{...a(e,t.target),visualVariableColor:null,visualVariableOpacity:null},defines:{...n(e)},optionalAttributes:{zoomRange:!1},useComputeBuffer:s(e)}),i.setPipelineState(l(e)),i.submitDraw(e,t)}_renderDotDensity(o,r){const{context:s,painter:u,requiredLevel:c}=o,p=r.instance.getInput().uniforms,h=this._getOrCreateResourcesRecord(s),m=h.getDotDensityTextures(s,e,p.seed),f=1/2**(c-r.target.key.level),w=e,g=w*window.devicePixelRatio*w*window.devicePixelRatio,x=1/f*(1/f),D=p.dotScale?o.state.scale/p.dotScale:1,b=p.dotValue*D*x;u.setShader({shader:this.shaders.polygon,uniforms:{...a(o,r.target),instance:{isActive:p.isActive,colors:p.colors,dotValue:Math.max(1,b)},draw:{dotTexture0:{unit:i,texture:m[0]},dotTexture1:{unit:t,texture:m[1]},tileZoomFactor:f,pixelRatio:window.devicePixelRatio,tileDotsOverArea:g/(e*window.devicePixelRatio*e*window.devicePixelRatio)}},defines:{...n(o),blending:p.blending},optionalAttributes:{},useComputeBuffer:!1});const y=s.getViewport();s.setViewport(0,0,e,e);const v=s.getBoundFramebufferObject(),P=h.getFBO(s);s.bindFramebuffer(P),s.setClearColor(0,0,0,0),s.clear(16384),u.setPipelineState({color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:!1}),u.updatePipelineState(s),u.submitDraw(o,r),s.bindFramebuffer(v),s.setViewport(y.x,y.y,y.width,y.height);const R=h.getFBO(s).colorTexture,S={shader:this.shaders.point,uniforms:{view:d(o,r.target),instance:{dotSize:p.dotSize},draw:{locations:{unit:i,texture:R},tileZoomFactor:1,pixelRatio:window.devicePixelRatio}},defines:{...n(o)},optionalAttributes:{},useComputeBuffer:!1};u.setPipelineState(l(o)),u.submitDrawMesh(s,S,h.getDotDensityMesh(s))}shutdown(e){super.shutdown(e),this._resources.get(e)?.destroy(),this._resources.delete(e)}_getOrCreateResourcesRecord(e){let t=this._resources.get(e);return null==t&&(t=new p,this._resources.set(e,t)),t}}export{m as DotDensityTechnique};
5
+ import{tileSize as e,textureBindingRenderer1 as t,textureBindingRenderer0 as i}from"../../../definitions.js";import{FeatureTechnique as o}from"../FeatureTechnique.js";import{isHighlight as r,isHittest as s,getSelectionDefines as n,getFeatureUniforms as a,getFeaturePipelineState as l,getViewUniforms as d}from"../featureTechniqueUtils.js";import{DotDensityPointShader as u}from"./DotDensityPointShader.js";import{DotDensityPolygonShader as c}from"./DotDensityPolygonShader.js";import{DotDensityResources as p}from"./DotDensityResources.js";import{FillShader as h}from"../shaders/FillShader.js";class f extends o{constructor(){super(...arguments),this.type=8,this.shaders={polygon:new c,point:new u,fill:new h},this._resources=new Map}render(e,t){r(e)||s(e)?this._renderPolygons(e,t):this._renderDotDensity(e,t)}_renderPolygons(e,t){const{painter:i}=e;i.setShader({shader:this.shaders.fill,uniforms:{...a(e,t.target),visualVariableColor:null,visualVariableOpacity:null},defines:{...n(e)},optionalAttributes:{zoomRange:!1},useComputeBuffer:s(e)}),i.setPipelineState(l(e)),i.submitDraw(e,t)}_renderDotDensity(o,r){const{context:s,painter:u,requiredLevel:c}=o,p=r.instance.getInput().uniforms,h=this._getOrCreateResourcesRecord(s),f=h.getDotDensityTextures(s,e,p.seed),m=1/2**(c-r.target.key.level),w=e,g=w*window.devicePixelRatio*w*window.devicePixelRatio,x=1/m*(1/m),D=p.dotScale?o.state.scale/p.dotScale:1,b=p.dotValue*D*x;u.setShader({shader:this.shaders.polygon,uniforms:{...a(o,r.target),instance:{isActive:p.isActive,colors:p.colors,dotValue:Math.max(1,b)},draw:{dotTexture0:{unit:i,texture:f[0]},dotTexture1:{unit:t,texture:f[1]},tileZoomFactor:m,pixelRatio:window.devicePixelRatio,tileDotsOverArea:g/(e*window.devicePixelRatio*e*window.devicePixelRatio)}},defines:{...n(o),blending:p.blending},optionalAttributes:{},useComputeBuffer:!1});const y=s.getViewport();s.setViewport(0,0,e,e);const R=s.getBoundFramebufferObject(),v=h.getFBO(s);s.bindFramebuffer(v),s.setClearColor(0,0,0,0),s.clear(16384),u.setPipelineState({color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:!1}),u.updatePipelineState(s),u.submitDraw(o,r),s.bindFramebuffer(R),s.setViewport(y.x,y.y,y.width,y.height);const P=h.getFBO(s).colorTexture,S={shader:this.shaders.point,uniforms:{view:d(o,r.target),instance:{dotSize:p.dotSize},draw:{locations:{unit:i,texture:P},tileZoomFactor:1,pixelRatio:window.devicePixelRatio}},defines:{...n(o)},optionalAttributes:{},useComputeBuffer:!1};u.setPipelineState(l(o)),u.submitDrawMesh(s,S,h.getDotDensityMesh(s),{stencilRef:r.getStencilReference()})}shutdown(e){super.shutdown(e),this._resources.get(e)?.destroy(),this._resources.delete(e)}_getOrCreateResourcesRecord(e){let t=this._resources.get(e);return null==t&&(t=new p,this._resources.set(e,t)),t}}export{f as DotDensityTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{getMetersPerUnitForSR as t}from"../../../../../../core/unitUtils.js";import{maxRepresentableInt as e,tileSize as i}from"../../definitions.js";const o={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:{write:!1,test:{ref:t=>t.stencilRef,compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7681}}}},n={color:{write:[!0,!0,!0,!0],blendMode:"additive"},depth:!1,stencil:!1},s={...o,color:{write:[!0,!0,!0,!0],blendMode:"delete"}};function r({pixelRatio:e,state:i,displayLevel:o,requiredLevel:n},s){const r=1/2**(o-s.key.level),l=1/2**(n-s.key.level);return{displayMat3:i.displayMat3,displayViewMat3:i.displayViewMat3,displayViewScreenMat3:s.transforms.displayViewScreenMat3,viewMat3:i.viewMat3,tileMat3:s.transforms.tileMat3,displayZoomFactor:r,requiredZoomFactor:l,tileOffset:[s.x,s.y],currentScale:i.scale,currentZoom:o,metersPerSRUnit:t(i.spatialReference),rotation:i.rotation,pixelRatio:e}}function l(t){return"highlight"===t.passOptions?.type}function a(t){return"hittest"===t.passOptions?.type}function c(t){if(!a(t))return null;const{position:e,distance:i,smallSymbolDistance:o,smallSymbolSizeThreshold:n}=t.passOptions;return{position:e,distance:i,smallSymbolDistance:o,smallSymbolSizeThreshold:n}}function p(t){if(!l(t))return null;const{activeReasons:e,highlightAll:i}=t.passOptions;return{activeReasons:e,highlightAll:i?1:0}}function u(t,e,i){const o={};for(const n in i)"function"!=typeof i[n]?o[n]=i[n]:o[n]=i[n](t,e);return o}function f(t,e){const{attributeView:i,context:o}=t;return{storage:i.getUniforms(o),view:r(t,e),hittestRequest:c(t),highlight:p(t)}}function d(t){return{inside:2===t.selection,outside:3===t.selection}}function m(t){return a(t)?n:l(t)&&"clear"===t.passOptions.stepType?s:o}function h(t){const{row:o,col:n}=t.key,s=n*i,r=o*i;return{tileOffsetFromLocalOrigin:[s%e,r%e],maxIntsToLocalOrigin:[Math.floor(s/e),Math.floor(r/e)]}}export{m as getFeaturePipelineState,f as getFeatureUniforms,h as getLocalTileOffset,d as getSelectionDefines,r as getViewUniforms,l as isHighlight,a as isHittest,u as resolveDynamicUniforms};
5
+ import{getMetersPerUnitForSR as t}from"../../../../../../core/unitUtils.js";import{maxRepresentableInt as e,tileSize as i}from"../../definitions.js";const o={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:{write:!1,test:{compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7681}}}},n={color:{write:[!0,!0,!0,!0],blendMode:"additive"},depth:!1,stencil:!1},s={...o,color:{write:[!0,!0,!0,!0],blendMode:"delete"}};function r({pixelRatio:e,state:i,displayLevel:o,requiredLevel:n},s){const r=1/2**(o-s.key.level),l=1/2**(n-s.key.level);return{displayMat3:i.displayMat3,displayViewMat3:i.displayViewMat3,displayViewScreenMat3:s.transforms.displayViewScreenMat3,viewMat3:i.viewMat3,tileMat3:s.transforms.tileMat3,displayZoomFactor:r,requiredZoomFactor:l,tileOffset:[s.x,s.y],currentScale:i.scale,currentZoom:o,metersPerSRUnit:t(i.spatialReference),rotation:i.rotation,pixelRatio:e}}function l(t){return"highlight"===t.passOptions?.type}function a(t){return"hittest"===t.passOptions?.type}function c(t){if(!a(t))return null;const{position:e,distance:i,smallSymbolDistance:o,smallSymbolSizeThreshold:n}=t.passOptions;return{position:e,distance:i,smallSymbolDistance:o,smallSymbolSizeThreshold:n}}function p(t){if(!l(t))return null;const{activeReasons:e,highlightAll:i}=t.passOptions;return{activeReasons:e,highlightAll:i?1:0}}function u(t,e,i){const o={};for(const n in i)"function"!=typeof i[n]?o[n]=i[n]:o[n]=i[n](t,e);return o}function f(t,e){const{attributeView:i,context:o}=t;return{storage:i.getUniforms(o),view:r(t,e),hittestRequest:c(t),highlight:p(t)}}function d(t){return{inside:2===t.selection,outside:3===t.selection}}function m(t){return a(t)?n:l(t)&&"clear"===t.passOptions.stepType?s:o}function h(t){const{row:o,col:n}=t.key,s=n*i,r=o*i;return{tileOffsetFromLocalOrigin:[s%e,r%e],maxIntsToLocalOrigin:[Math.floor(s/e),Math.floor(r/e)]}}export{m as getFeaturePipelineState,f as getFeatureUniforms,h as getLocalTileOffset,d as getSelectionDefines,r as getViewUniforms,l as isHighlight,a as isHittest,u as resolveDynamicUniforms};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{FeatureTechnique as e}from"../FeatureTechnique.js";import{isHittest as t,getSelectionDefines as r,getFeatureUniforms as s}from"../featureTechniqueUtils.js";import{HeatmapResources as i}from"./HeatmapResources.js";import{HeatmapAccumulateShader as n}from"../shaders/HeatmapAccumulateShader.js";import{HeatmapResolveShader as o}from"../shaders/HeatmapResolveShader.js";class u extends e{constructor(){super(...arguments),this.type=13,this.drawPhase=73,this.shaders={accumulate:new n,resolve:new o},this._isBound=!1,this._resources=new Map}shutdown(e){super.shutdown(e),this._resources.get(e)?.destroy(),this._resources.delete(e),this._prevFBO=null,this._unbind()}render(e,i){const{context:n,painter:o,state:u}=e,a=i.instance.getInput(),{isFieldActive:l}=a.uniforms,h=this._getOrCreateResourcesRecord(n),f=h.loadQualityProfile(n);t(e)||this._bind(e,h,a),o.setShader({shader:this.shaders.accumulate,uniforms:{...s(e,i.target),kernelControls:{radius:p(a,u),isFieldActive:l?1:0}},defines:{...r(e),...f.defines},optionalAttributes:{},useComputeBuffer:t(e)});const m=t(e)?c:d;o.setPipelineState(m),o.submitDraw(e,i)}getStencilReference(e){return l(e)}renderResolvePass(e,r){if(t(e))return;const{context:s,painter:i}=e,n=this._resources.get(s);if(null==this._prevFBO||null==this._prevViewport||!n?.initialized)return;const{defines:o}=n.loadQualityProfile(s),{minDensity:u,maxDensity:a,radius:l}=r.getInput().uniforms,d=8,c=9,p=n.accumulateFramebuffer,f=n.resolveGradientTexture,m={shader:this.shaders.resolve,uniforms:{accumulatedDensity:{texture:{unit:d,texture:p.colorTexture},minAndInvRange:[u,1/(a-u)],normalization:3/(l*l*Math.PI)},gradient:{texture:{unit:c,texture:f}}},defines:o,optionalAttributes:{},useComputeBuffer:!1};s.bindFramebuffer(this._prevFBO),s.setViewport(0,0,this._prevViewport.width,this._prevViewport.height),s.bindTexture(p.colorTexture,d),s.bindTexture(f,c),i.setPipelineState(h),i.submitDrawMesh(s,m,i.quadMesh),this._unbind()}_getOrCreateResourcesRecord(e){let t=this._resources.get(e);return null==t&&(t=new i,this._resources.set(e,t)),t}_unbind(){this._prevFBO=null,this._prevViewport=null,this._isBound=!1}_bind(e,t,r){if(this._isBound)return;const{context:s,state:i,pixelRatio:n}=e,o=s.getBoundFramebufferObject(),u=s.getViewport();this._prevFBO=o,this._prevViewport=u;const{gradient:l,gradientHash:d}=r.uniforms;t.ensureResolveGradientTexture(s,d,l);const{width:c,height:h}=u,f=a(p(r,i),n),m=c*f,_=h*f,w=t.ensureAccumulateFBO(s,m,_);s.blitFramebuffer(o,w,1024),s.bindFramebuffer(w),s.setViewport(0,0,w.width,w.height),s.setColorMask(!0,!0,!0,!0),s.setClearColor(0,0,0,0),s.clear(16384),this._isBound=!0}}function a(e,t){const r=t>1.5?.25:.5;return e<1/(2*r)?1:r}function l(e){return e.key.level+1}const d={color:{write:[!0,!0,!0,!0],blendMode:"additive"},depth:!1,stencil:{write:!1,test:{ref:l,compare:518,mask:255,op:{fail:7680,zFail:7680,zPass:7681}}}},c={...d,stencil:!1},h={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:!1};function p(e,t){const{referenceScale:r,radius:s}=e.uniforms;return s*(0!==r?r/t.scale:1)}export{u as HeatmapTechnique};
5
+ import{FeatureTechnique as e}from"../FeatureTechnique.js";import{isHittest as t,getSelectionDefines as r,getFeatureUniforms as s}from"../featureTechniqueUtils.js";import{HeatmapResources as i}from"./HeatmapResources.js";import{HeatmapAccumulateShader as n}from"../shaders/HeatmapAccumulateShader.js";import{HeatmapResolveShader as o}from"../shaders/HeatmapResolveShader.js";class u extends e{constructor(){super(...arguments),this.type=13,this.drawPhase=73,this.shaders={accumulate:new n,resolve:new o},this._isBound=!1,this._resources=new Map}shutdown(e){super.shutdown(e),this._resources.get(e)?.destroy(),this._resources.delete(e),this._prevFBO=null,this._unbind()}render(e,i){const{context:n,painter:o,state:u}=e,a=i.instance.getInput(),{isFieldActive:l}=a.uniforms,h=this._getOrCreateResourcesRecord(n),f=h.loadQualityProfile(n);t(e)||this._bind(e,h,a),o.setShader({shader:this.shaders.accumulate,uniforms:{...s(e,i.target),kernelControls:{radius:p(a,u),isFieldActive:l?1:0}},defines:{...r(e),...f.defines},optionalAttributes:{},useComputeBuffer:t(e)});const m=t(e)?c:d;o.setPipelineState(m),o.submitDraw(e,i)}getStencilReference(e){return l(e)}renderResolvePass(e,r){if(t(e))return;const{context:s,painter:i}=e,n=this._resources.get(s);if(null==this._prevFBO||null==this._prevViewport||!n?.initialized)return;const{defines:o}=n.loadQualityProfile(s),{minDensity:u,maxDensity:a,radius:l}=r.getInput().uniforms,d=8,c=9,p=n.accumulateFramebuffer,f=n.resolveGradientTexture,m={shader:this.shaders.resolve,uniforms:{accumulatedDensity:{texture:{unit:d,texture:p.colorTexture},minAndInvRange:[u,1/(a-u)],normalization:3/(l*l*Math.PI)},gradient:{texture:{unit:c,texture:f}}},defines:o,optionalAttributes:{},useComputeBuffer:!1};s.bindFramebuffer(this._prevFBO),s.setViewport(0,0,this._prevViewport.width,this._prevViewport.height),s.bindTexture(p.colorTexture,d),s.bindTexture(f,c),i.setPipelineState(h),i.submitDrawMesh(s,m,i.quadMesh),this._unbind()}_getOrCreateResourcesRecord(e){let t=this._resources.get(e);return null==t&&(t=new i,this._resources.set(e,t)),t}_unbind(){this._prevFBO=null,this._prevViewport=null,this._isBound=!1}_bind(e,t,r){if(this._isBound)return;const{context:s,state:i,pixelRatio:n}=e,o=s.getBoundFramebufferObject(),u=s.getViewport();this._prevFBO=o,this._prevViewport=u;const{gradient:l,gradientHash:d}=r.uniforms;t.ensureResolveGradientTexture(s,d,l);const{width:c,height:h}=u,f=a(p(r,i),n),m=c*f,_=h*f,w=t.ensureAccumulateFBO(s,m,_);s.blitFramebuffer(o,w,1024),s.bindFramebuffer(w),s.setViewport(0,0,w.width,w.height),s.setColorMask(!0,!0,!0,!0),s.setClearColor(0,0,0,0),s.clear(16384),this._isBound=!0}}function a(e,t){const r=t>1.5?.25:.5;return e<1/(2*r)?1:r}function l(e){return e.key.level+1}const d={color:{write:[!0,!0,!0,!0],blendMode:"additive"},depth:!1,stencil:{write:!1,test:{compare:518,mask:255,op:{fail:7680,zFail:7680,zPass:7681}}}},c={...d,stencil:!1},h={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:!1};function p(e,t){const{referenceScale:r,radius:s}=e.uniforms;return s*(0!==r?r/t.scale:1)}export{u as HeatmapTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{FeatureTechnique as e}from"../FeatureTechnique.js";import{getSelectionDefines as t,getFeaturePipelineState as s,isHittest as r,getFeatureUniforms as a,resolveDynamicUniforms as i}from"../featureTechniqueUtils.js";import{TextShader as n}from"../text/TextShader.js";class o extends e{constructor(){super(...arguments),this.type=14,this.shaders={geometry:new n},this.drawPhase=14,this.symbologyPlane=3}render(e,n){const{context:o,painter:u}=e,d=t(e),m={...s(e),stencil:{write:!1,test:{ref:()=>255,compare:516,mask:255,op:{fail:7680,zFail:7680,zPass:7680}}}},p=n.instance.getInput(),c={shader:this.shaders.geometry,uniforms:{...i(e,n.target,p.uniforms),...a(e,n.target),mosaicInfo:u.textureManager.getMosaicInfo(o,n.textureKey)},defines:{...d,textRenderPassType:0,isBackgroundPass:!0,isLabel:!0},optionalAttributes:p.optionalAttributes,useComputeBuffer:r(e)};u.setPipelineState(m),u.setShader(c),u.submitDraw(e,n),u.setShader({...c,defines:{...d,textRenderPassType:2,isBackgroundPass:!1,isLabel:!0}}),u.submitDraw(e,n),u.setShader({...c,defines:{...d,textRenderPassType:0,isBackgroundPass:!1,isLabel:!0}}),u.submitDraw(e,n)}}export{o as LabelTechnique};
5
+ import{FeatureTechnique as e}from"../FeatureTechnique.js";import{getSelectionDefines as t,getFeaturePipelineState as s,isHittest as r,getFeatureUniforms as a,resolveDynamicUniforms as i}from"../featureTechniqueUtils.js";import{TextShader as n}from"../text/TextShader.js";class o extends e{constructor(){super(...arguments),this.type=14,this.shaders={geometry:new n},this.drawPhase=14,this.symbologyPlane=3}render(e,n){const{context:o,painter:u}=e,d=t(e),c={...s(e),stencil:{write:!1,test:{compare:516,mask:255,op:{fail:7680,zFail:7680,zPass:7680}}}},m=n.instance.getInput(),f={shader:this.shaders.geometry,uniforms:{...i(e,n.target,m.uniforms),...a(e,n.target),mosaicInfo:u.textureManager.getMosaicInfo(o,n.textureKey)},defines:{...d,textRenderPassType:0,isBackgroundPass:!0,isLabel:!0},optionalAttributes:m.optionalAttributes,useComputeBuffer:r(e)};u.setPipelineState(c),u.setShader(f),u.submitDraw(e,n,{stencilRef:255}),u.setShader({...f,defines:{...d,textRenderPassType:2,isBackgroundPass:!1,isLabel:!0}}),u.submitDraw(e,n,{stencilRef:255}),u.setShader({...f,defines:{...d,textRenderPassType:0,isBackgroundPass:!1,isLabel:!0}}),u.submitDraw(e,n,{stencilRef:255})}}export{o as LabelTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{FeatureTechnique as e}from"../FeatureTechnique.js";import{isHittest as t,getSelectionDefines as s,getFeatureUniforms as r,resolveDynamicUniforms as i,isHighlight as o,getFeaturePipelineState as a}from"../featureTechniqueUtils.js";import{getAntialiasingControls as n}from"./utils.js";import{GradientStrokeShader as p}from"../shaders/GradientStrokeShader.js";class c extends e{constructor(){super(...arguments),this.type=11,this.shaders={geometry:new p},this.symbologyPlane=1}_getShaderOptions(e,o,a){const{context:p,painter:c,pixelRatio:l}=e,h=o.instance.getInput();return{shader:this.shaders.geometry,uniforms:{...i(e,o.target,h.uniforms),...r(e,o.target),antialiasingControls:n(l),mosaicInfo:c.textureManager.getMosaicInfo(p,o.textureKey),technique:{isColorPass:a}},defines:{...s(e)},optionalAttributes:h.optionalAttributes,useComputeBuffer:t(e)}}render(e,s){const{painter:r}=e;if(t(e)||o(e)){const t=a(e);return r.setPipelineState(t),r.setShader(this._getShaderOptions(e,s,1)),void r.submitDraw(e,s)}e.context.setClearDepth(1),e.context.clear(256);const i={color:!1,depth:{write:{zNear:0,zFar:1},test:513},stencil:{write:!1,test:{ref:e=>e.stencilRef,compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7680}}}};r.setShader(this._getShaderOptions(e,s,0)),r.setPipelineState(i),r.submitDraw(e,s);const n={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:{write:!1,test:515},stencil:{write:!1,test:{ref:e=>e.stencilRef,compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7680}}}};r.setShader(this._getShaderOptions(e,s,1)),r.setPipelineState(n),r.submitDraw(e,s)}}export{c as GradientStrokeTechnique};
5
+ import{FeatureTechnique as t}from"../FeatureTechnique.js";import{isHittest as e,getSelectionDefines as s,getFeatureUniforms as r,resolveDynamicUniforms as i,isHighlight as o,getFeaturePipelineState as a}from"../featureTechniqueUtils.js";import{getAntialiasingControls as n}from"./utils.js";import{GradientStrokeShader as p}from"../shaders/GradientStrokeShader.js";class c extends t{constructor(){super(...arguments),this.type=11,this.shaders={geometry:new p},this.symbologyPlane=1}_getShaderOptions(t,o,a){const{context:p,painter:c,pixelRatio:h}=t,l=o.instance.getInput();return{shader:this.shaders.geometry,uniforms:{...i(t,o.target,l.uniforms),...r(t,o.target),antialiasingControls:n(h),mosaicInfo:c.textureManager.getMosaicInfo(p,o.textureKey),technique:{isColorPass:a}},defines:{...s(t)},optionalAttributes:l.optionalAttributes,useComputeBuffer:e(t)}}render(t,s){const{painter:r}=t;if(e(t)||o(t)){const e=a(t);return r.setPipelineState(e),r.setShader(this._getShaderOptions(t,s,1)),void r.submitDraw(t,s)}t.context.setClearDepth(1),t.context.clear(256);const i={color:!1,depth:{write:{zNear:0,zFar:1},test:513},stencil:{write:!1,test:{compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7680}}}};r.setShader(this._getShaderOptions(t,s,0)),r.setPipelineState(i),r.submitDraw(t,s);const n={color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:{write:!1,test:515},stencil:{write:!1,test:{compare:514,mask:255,op:{fail:7680,zFail:7680,zPass:7680}}}};r.setShader(this._getShaderOptions(t,s,1)),r.setPipelineState(n),r.submitDraw(t,s)}}export{c as GradientStrokeTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{destroyMaybe as e}from"../../../../../../../core/maybe.js";import{Mesh as t}from"../../../meshing/Mesh.js";import{simplePipelineState as s}from"../../utils.js";import{Technique as i}from"../Technique.js";import{OverlayShader as r}from"../shaders/OverlayShader.js";import{PrimitiveType as o,DataType as n}from"../../../../../../webgl/enums.js";import{VertexElementDescriptor as a}from"../../../../../../webgl/VertexElementDescriptor.js";class h extends i{constructor(){super(...arguments),this.type=20,this._mesh=null,this.shaders={overlay:new r}}render(e,t){const{context:i,painter:r}=e,o=this._getMesh(e,t);r.setPipelineState(s);const{isWrapAround:n,wrapAroundShift:a}=t.config,h={...t.config,wrapAroundShift:0},p={shader:this.shaders.overlay,uniforms:{transform:t.transform,config:h},defines:null,optionalAttributes:null,useComputeBuffer:!1};r.setPipelineState({...s,stencil:{write:!1,test:{compare:514,op:{fail:7680,zFail:7680,zPass:7681},ref:0,mask:255}}}),r.submitDrawMeshUntyped(i,p,o),n&&(h.wrapAroundShift=a,r.submitDrawMeshUntyped(i,p,o))}shutdown(){e(this._mesh)}_getMesh(e,s){const{context:i}=e;if(this._mesh){const e=this._mesh.vertexBuffers.get("positions");if(!e)throw new Error("Buffer not found");e.setData(s.position)}else{const e=null!=s.index?s.index.length:s.position.length/2;this._mesh=new t(i,{vertex:{positions:{data:s.position,layout:[new a("pos",2,n.FLOAT,0,8)]},uvs:{data:s.tex,layout:[new a("uv",2,n.UNSIGNED_SHORT,0,4)]}},index:null!=s.index?{index:{data:s.index}}:void 0,groups:[{index:null!=s.index?"index":void 0,primitive:o.TRIANGLE_STRIP}],parts:[{group:0,start:0,count:e}]})}return this._mesh}}export{h as OverlayTechnique};
5
+ import{destroyMaybe as e}from"../../../../../../../core/maybe.js";import{Mesh as t}from"../../../meshing/Mesh.js";import{simplePipelineState as s}from"../../utils.js";import{Technique as i}from"../Technique.js";import{OverlayShader as r}from"../shaders/OverlayShader.js";import{PrimitiveType as n,DataType as o}from"../../../../../../webgl/enums.js";import{VertexElementDescriptor as a}from"../../../../../../webgl/VertexElementDescriptor.js";class h extends i{constructor(){super(...arguments),this.type=20,this._mesh=null,this.shaders={overlay:new r}}render(e,t){const{context:i,painter:r}=e,n=this._getMesh(e,t);r.setPipelineState(s);const{isWrapAround:o,wrapAroundShift:a}=t.config,h={...t.config,wrapAroundShift:0},p={shader:this.shaders.overlay,uniforms:{transform:t.transform,config:h},defines:null,optionalAttributes:null,useComputeBuffer:!1};r.setPipelineState({...s,stencil:{write:!1,test:{compare:514,op:{fail:7680,zFail:7680,zPass:7681},mask:255}}}),r.submitDrawMeshUntyped(i,p,n,{stencilRef:0}),o&&(h.wrapAroundShift=a,r.submitDrawMeshUntyped(i,p,n,{stencilRef:0}))}shutdown(){e(this._mesh)}_getMesh(e,s){const{context:i}=e;if(this._mesh){const e=this._mesh.vertexBuffers.get("positions");if(!e)throw new Error("Buffer not found");e.setData(s.position)}else{const e=null!=s.index?s.index.length:s.position.length/2;this._mesh=new t(i,{vertex:{positions:{data:s.position,layout:[new a("pos",2,o.FLOAT,0,8)]},uvs:{data:s.tex,layout:[new a("uv",2,o.UNSIGNED_SHORT,0,4)]}},index:null!=s.index?{index:{data:s.index}}:void 0,groups:[{index:null!=s.index?"index":void 0,primitive:n.TRIANGLE_STRIP}],parts:[{group:0,start:0,count:e}]})}return this._mesh}}export{h as OverlayTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{Technique as e}from"../Technique.js";import{RasterColorizerLUTShader as i}from"../shaders/raster/RasterColorizerLUTShader.js";import{RasterColorizerShadedReliefShader as t}from"../shaders/raster/RasterColorizerShadedReliefShader.js";import{RasterColorizerStretchShader as o}from"../shaders/raster/RasterColorizerStretchShader.js";class r extends e{constructor(){super(...arguments),this.name="BrushRasterColorizer",this.type=0,this.shaders={lut:new i,stretch:new o,shadedRelief:new t}}render(e,i){for(const t of i.bitmaps){if(!t.source||t.suspended)continue;e.timeline.begin(this.name);const{painter:i}=e;i.setPipelineState({depth:!1,stencil:{test:{mask:255,ref:t.stencilRef,compare:514,op:{fail:7680,zFail:7680,zPass:7680}},write:!1},color:{write:[!0,!0,!0,!0],blendMode:"composite"}}),t.updateTexture(e),t.processedTexture||t.updateProcessedTexture();const{type:o}=t.symbolizerParameters,r="stretch"===o?this._getStretchOptions(t):"lut"===o?this._getLutOptions(t):this._getShadedReliefOptions(t);"bilinear"!==t.interpolation||e.context.capabilities.textureFloatLinear||(r.defines.bilinear=!0);const{pixelHighlightOptions:n}=e;if(n&&!t.isRendereredSource){const e=t.bandIds?.length?t.bandIds.indexOf(n.bandId):0;if(e>=0&&e<=2){r.defines.applyPixelHighlights=!0;const i=new Float32Array(9);i[3*e]=1,r.uniforms.highlightConfig={...n,bandSwap:i}}}i.submitDrawMesh(e.context,r,i.quadMesh),e.timeline.end(this.name)}}_getLutOptions(e){const{config:i,projectionConfig:t,colormapConfig:o,pixelMaskConfig:r,projectionDefines:n}=this._getCommonConfig(e),s=this._getInterpolationDefines("nearest",!1);return{shader:this.shaders.lut,uniforms:{projectionConfig:t,config:i,colormapConfig:o,pixelMaskConfig:r},defines:{...n,...s,applyPixelMask:!!r,applyPixelHighlights:!1},optionalAttributes:null,useComputeBuffer:!1}}_getStretchOptions(e){const i=e.symbolizerParameters,{config:t,projectionConfig:o,colormapConfig:r,pixelMaskConfig:n,projectionDefines:s}=this._getCommonConfig(e),a=this._getInterpolationDefines(e.interpolation,1===i.bandCount);return{shader:this.shaders.stretch,uniforms:{projectionConfig:o,config:t,stretchConfig:i,colormapConfig:r,pixelMaskConfig:n},defines:{...s,...a,isMultiband:i.bandCount>1,applyColormap:!!r,useGamma:i.useGamma,noOp:e.isRendereredSource&&!e.processed,applyPixelMask:!!n,applyPixelHighlights:!1},optionalAttributes:null,useComputeBuffer:!1}}_getShadedReliefOptions(e){const i=e.symbolizerParameters,{config:t,projectionConfig:o,colormapConfig:r,pixelMaskConfig:n,projectionDefines:s}=this._getCommonConfig(e),a=this._getInterpolationDefines(e.interpolation,!0);return{shader:this.shaders.shadedRelief,uniforms:{projectionConfig:o,config:t,hillshadeConfig:i,colormapConfig:r,pixelMaskConfig:n},defines:{...s,...a,isMultidirectional:i.hillshadeType>0,applyColormap:!!r,applyPixelMask:!!n,applyPixelHighlights:!1},optionalAttributes:null,useComputeBuffer:!1}}_getCommonConfig(e){const{coordScale:i,computedOpacity:t,transforms:o}=e,{names:r,textures:n}=e.getTextures({useProcessedTexture:e.processed}),s=n[r.indexOf("u_image")],a=e.getRasterTextureSize(),l={texture:{texture:s,unit:0},dvsMat3:o.displayViewScreenMat3,coordScale:i,srcImageSize:a,opacity:t},p=n[r.indexOf("u_transformGrid")],{transformGrid:f}=e,c=!(!p||!f),d=c?{transformTexture:{texture:p,unit:2},targetImageSize:[e.width,e.height],transformSpacing:f.spacing,transformGridSize:f.size}:void 0,u=n[r.indexOf("u_colormap")],{colormap:g,colormapOffset:m}=e.symbolizerParameters,h=u&&g?{colormapTexture:{texture:u,unit:1},colormapOffset:m??0,colormapMaxIndex:g.length/4-1}:void 0,C=n[r.indexOf("u_mask")];return{config:l,projectionConfig:d,colormapConfig:h,pixelMaskConfig:C?{maskTexture:{texture:C,unit:3}}:void 0,projectionDefines:{applyProjection:c,lookupProjection:c&&1===f.spacing[0]}}}_getInterpolationDefines(e,i){const t="bilinear"===e&&i;return{bilinear:t,bicubic:"cubic"===e,nearestOnEdge:t}}}export{r as RasterColorizerTechnique};
5
+ import{Technique as e}from"../Technique.js";import{RasterColorizerLUTShader as i}from"../shaders/raster/RasterColorizerLUTShader.js";import{RasterColorizerShadedReliefShader as t}from"../shaders/raster/RasterColorizerShadedReliefShader.js";import{RasterColorizerStretchShader as o}from"../shaders/raster/RasterColorizerStretchShader.js";class r extends e{constructor(){super(...arguments),this.name="BrushRasterColorizer",this.type=0,this.shaders={lut:new i,stretch:new o,shadedRelief:new t}}render(e,i){for(const t of i.bitmaps){if(!t.source||t.suspended)continue;e.timeline.begin(this.name);const{painter:i}=e;i.setPipelineState({depth:!1,stencil:{test:{mask:255,compare:514,op:{fail:7680,zFail:7680,zPass:7680}},write:!1},color:{write:[!0,!0,!0,!0],blendMode:"composite"}}),t.updateTexture(e),t.processedTexture||t.updateProcessedTexture();const{type:o}=t.symbolizerParameters,r="stretch"===o?this._getStretchOptions(t):"lut"===o?this._getLutOptions(t):this._getShadedReliefOptions(t);"bilinear"!==t.interpolation||e.context.capabilities.textureFloatLinear||(r.defines.bilinear=!0);const{pixelHighlightOptions:n}=e;if(n&&!t.isRendereredSource){const e=t.bandIds?.length?t.bandIds.indexOf(n.bandId):0;if(e>=0&&e<=2){r.defines.applyPixelHighlights=!0;const i=new Float32Array(9);i[3*e]=1,r.uniforms.highlightConfig={...n,bandSwap:i}}}i.submitDrawMesh(e.context,r,i.quadMesh,t),e.timeline.end(this.name)}}_getLutOptions(e){const{config:i,projectionConfig:t,colormapConfig:o,pixelMaskConfig:r,projectionDefines:n}=this._getCommonConfig(e),s=this._getInterpolationDefines("nearest",!1);return{shader:this.shaders.lut,uniforms:{projectionConfig:t,config:i,colormapConfig:o,pixelMaskConfig:r},defines:{...n,...s,applyPixelMask:!!r,applyPixelHighlights:!1},optionalAttributes:null,useComputeBuffer:!1}}_getStretchOptions(e){const i=e.symbolizerParameters,{config:t,projectionConfig:o,colormapConfig:r,pixelMaskConfig:n,projectionDefines:s}=this._getCommonConfig(e),a=this._getInterpolationDefines(e.interpolation,1===i.bandCount);return{shader:this.shaders.stretch,uniforms:{projectionConfig:o,config:t,stretchConfig:i,colormapConfig:r,pixelMaskConfig:n},defines:{...s,...a,isMultiband:i.bandCount>1,applyColormap:!!r,useGamma:i.useGamma,noOp:e.isRendereredSource&&!e.processed,applyPixelMask:!!n,applyPixelHighlights:!1},optionalAttributes:null,useComputeBuffer:!1}}_getShadedReliefOptions(e){const i=e.symbolizerParameters,{config:t,projectionConfig:o,colormapConfig:r,pixelMaskConfig:n,projectionDefines:s}=this._getCommonConfig(e),a=this._getInterpolationDefines(e.interpolation,!0);return{shader:this.shaders.shadedRelief,uniforms:{projectionConfig:o,config:t,hillshadeConfig:i,colormapConfig:r,pixelMaskConfig:n},defines:{...s,...a,isMultidirectional:i.hillshadeType>0,applyColormap:!!r,applyPixelMask:!!n,applyPixelHighlights:!1},optionalAttributes:null,useComputeBuffer:!1}}_getCommonConfig(e){const{coordScale:i,computedOpacity:t,transforms:o}=e,{names:r,textures:n}=e.getTextures({useProcessedTexture:e.processed}),s=n[r.indexOf("u_image")],a=e.getRasterTextureSize(),l={texture:{texture:s,unit:0},dvsMat3:o.displayViewScreenMat3,coordScale:i,srcImageSize:a,opacity:t},p=n[r.indexOf("u_transformGrid")],{transformGrid:c}=e,f=!(!p||!c),d=f?{transformTexture:{texture:p,unit:2},targetImageSize:[e.width,e.height],transformSpacing:c.spacing,transformGridSize:c.size}:void 0,u=n[r.indexOf("u_colormap")],{colormap:g,colormapOffset:m}=e.symbolizerParameters,h=u&&g?{colormapTexture:{texture:u,unit:1},colormapOffset:m??0,colormapMaxIndex:g.length/4-1}:void 0,C=n[r.indexOf("u_mask")];return{config:l,projectionConfig:d,colormapConfig:h,pixelMaskConfig:C?{maskTexture:{texture:C,unit:3}}:void 0,projectionDefines:{applyProjection:f,lookupProjection:f&&1===c.spacing[0]}}}_getInterpolationDefines(e,i){const t="bilinear"===e&&i;return{bilinear:t,bicubic:"cubic"===e,nearestOnEdge:t}}}export{r as RasterColorizerTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clone as e}from"../../../../../core/lang.js";import r from"../../../../../graphic/CatalogGraphicOrigin.js";import{isHostedAgolService as t}from"../../../../../layers/support/arcgisLayerUrl.js";import{getServiceGeometryType as o}from"./geometryUtils.js";import{getLayerDeconflictionEnabled as i,createLabelVVEvaluator as s}from"./labelingUtils.js";import{createFeatureSourceSchema as a}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as l}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as n}from"../support/rendererUtils.js";class p{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,t=i(r);return[{vvEvaluators:{0:s(r.renderer)},deconflictionEnabled:t}]}async createServiceOptions(r){const i=this.layer,{capabilities:s,editingInfo:a,objectIdField:l,globalIdField:n,datesInUnknownTimezone:p,dateFieldsTimeZone:c,orderBy:d,parsedUrl:u}=i,m=i.fieldsIndex.toJSON(),y=o(i),f=i.timeInfo?.toJSON(),h=i.spatialReference.toJSON(),g=e(u);let b=l;if(d?.length){const e=!d[0].valueExpression&&d[0].field;e&&(b=e)}const I=t(g.path),S=r.spatialReference.toJSON();return{type:"feature-service",source:g,isSourceHosted:I,orderByFields:b,outSpatialReference:S,metadata:{timeReferenceUnknownClient:p,dateFieldsTimeZone:c,globalIdField:n,fieldsIndex:m,geometryType:y,featureIdInfo:{type:"object-id",fieldName:l},timeInfo:f,spatialReference:h,outSpatialReference:S,subtypeField:null,subtypes:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:s.query.maxRecordCount,supportsCompactGeometry:s.query.supportsCompactGeometry,supportsDefaultSpatialReference:s.query.supportsDefaultSpatialReference,supportsFormatPBF:s.query.supportsFormatPBF,supportsMaxRecordCountFactor:s.query.supportsMaxRecordCountFactor,supportsQuantization:s.query.supportsQuantization,lastEditDate:a?.lastEditDate?.getTime(),snapshotInfo:null}}}createSourceSchema(e,r){const{definitionExpression:t,displayFilterInfo:o,customParameters:i,timeExtent:s,apiKey:l}=this.layer;return a({definitionExpression:t,displayFilterInfo:o,customParameters:i,timeExtent:s},e,r,l)}createProcessorSchema(e,r,t){const{fields:o,geometryType:i,orderBy:s,objectIdField:a,renderer:n,labelingInfo:p,labelsVisible:c}=this.layer,d={featureReduction:null,labelingInfoSource:this.layer.id,fields:o.map(e=>e.toJSON()),geometryType:i,labelingInfo:p,labelsVisible:c,objectIdField:a,orderBy:s??"default",renderer:n?.clone()};return l(e,r,d,t)}get hasRequiredSupport(){return n(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>this.layer.definitionExpression,()=>this.layer.outFields,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>this.layer.orderBy]}setGraphicOrigin(e){e.origin=new r(this.layer)}}export{p as CatalogFootprintLayerAdapter};
5
+ import{clone as e}from"../../../../../core/lang.js";import t from"../../../../../graphic/CatalogGraphicOrigin.js";import{isHostedAgolService as r}from"../../../../../layers/support/arcgisLayerUrl.js";import{getServiceGeometryType as o}from"./geometryUtils.js";import{getLayerDeconflictionEnabled as i,createLabelVVEvaluator as s}from"./labelingUtils.js";import{createFeatureSourceSchema as a}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as n}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as l}from"../support/rendererUtils.js";class p{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const t=this.layer,r=i(t);return[{vvEvaluators:{0:s(t.renderer)},deconflictionEnabled:r}]}async createServiceOptions(t){const i=this.layer,{capabilities:s,editingInfo:a,objectIdField:n,globalIdField:l,datesInUnknownTimezone:p,dateFieldsTimeZone:d,orderBy:u,parsedUrl:c}=i,m=i.fieldsIndex.toJSON(),y=o(i),f=i.timeInfo?.toJSON(),h=i.spatialReference.toJSON(),g=e(c);let b=n;if(u?.length){const e=!u[0].valueExpression&&u[0].field;e&&(b=e)}const I=r(g.path),S=t.spatialReference.toJSON();return{type:"feature-service",source:g,isSourceHosted:I,orderByFields:b,outSpatialReference:S,metadata:{timeReferenceUnknownClient:p,dateFieldsTimeZone:d,globalIdField:l,fieldsIndex:m,geometryType:y,featureIdInfo:{type:"object-id",fieldName:n},timeInfo:f,spatialReference:h,outSpatialReference:S,subtypeField:null,subtypes:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:s.query.maxRecordCount,supportsCompactGeometry:s.query.supportsCompactGeometry,supportsDefaultSpatialReference:s.query.supportsDefaultSpatialReference,supportsFormatPBF:s.query.supportsFormatPBF,supportsMaxRecordCountFactor:s.query.supportsMaxRecordCountFactor,supportsQuantization:s.query.supportsQuantization,supportsCentroidOnDegeneratedQuantizedGeometry:s.query.supportsCentroidOnDegeneratedQuantizedGeometry,supportsDegeneratedQuantizedGeometry:s.query.supportsDegeneratedQuantizedGeometry,lastEditDate:a?.lastEditDate?.getTime(),snapshotInfo:null}}}createSourceSchema(e,t){const{definitionExpression:r,displayFilterInfo:o,customParameters:i,timeExtent:s,apiKey:n}=this.layer;return a({definitionExpression:r,displayFilterInfo:o,customParameters:i,timeExtent:s},e,t,n)}createProcessorSchema(e,t,r){const{fields:o,geometryType:i,orderBy:s,objectIdField:a,renderer:l,labelingInfo:p,labelsVisible:d}=this.layer,u={featureReduction:null,labelingInfoSource:this.layer.id,fields:o.map(e=>e.toJSON()),geometryType:i,labelingInfo:p,labelsVisible:d,objectIdField:a,orderBy:s??"default",renderer:l?.clone()};return n(e,t,u,r)}get hasRequiredSupport(){return l(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>this.layer.definitionExpression,()=>this.layer.outFields,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>this.layer.orderBy]}setGraphicOrigin(e){e.origin=new t(this.layer)}}export{p as CatalogFootprintLayerAdapter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clone as e}from"../../../../../core/lang.js";import{isHostedAgolService as t}from"../../../../../layers/support/arcgisLayerUrl.js";import{getEffectiveFeatureReduction as r}from"./featureReductionUtils.js";import{createSnapshotInfo as i,createFeatureIdInfo as s}from"./featureServiceUtils.js";import{addFloorFilter as o,hasFloorFilter as a}from"./floorFilterUtils.js";import{getServiceGeometryType as l}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as n,getLayerDeconflictionEnabled as p,createLabelVVEvaluator as d}from"./labelingUtils.js";import{createFeatureSourceSchema as y}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as u}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as c}from"../support/rendererUtils.js";class m{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const t=this.layer,i=n(t,e)??p(t),s=r(t,e),o=[...t.labelingInfo||[],...s?.labelingInfo||[]];return[{vvEvaluators:{0:d(t.renderer)},deconflictionEnabled:i,labelingInfo:o}]}async createServiceOptions(r){const o=this.layer,{capabilities:a,editingInfo:n,typeIdField:p,globalIdField:d,datesInUnknownTimezone:y,dateFieldsTimeZone:u,orderBy:c,subtypeField:m,refreshInterval:f}=o,h=o.fieldsIndex.toJSON(),b=l(o),g=o.timeInfo?.toJSON(),I=o.spatialReference.toJSON(),S=o.types?.map(e=>e.toJSON()),F=e(this.layer.parsedUrl);this.layer.dynamicDataSource&&(F.query={layer:JSON.stringify({source:this.layer.dynamicDataSource})});let x=this.layer.objectIdField;if(c?.length){const e=!c[0].valueExpression&&c[0].field;e&&(x=e)}const R=t(F.path),j=i(R,!(null!=n?.lastEditDate)&&f>0,a,b,r.extent,o.fullExtent),E=r.spatialReference.toJSON();return{type:"feature-service",source:F,isSourceHosted:R,orderByFields:x,outSpatialReference:E,metadata:{typeIdField:p??void 0,types:S,timeReferenceUnknownClient:y,dateFieldsTimeZone:u,subtypeField:m,globalIdField:d,fieldsIndex:h,geometryType:b,featureIdInfo:s(o),timeInfo:g,spatialReference:I,outSpatialReference:E,subtypes:this.layer.subtypes?.map(e=>e.toJSON())},queryMetadata:{maxRecordCount:a.query.maxRecordCount,supportsCompactGeometry:a.query.supportsCompactGeometry,supportsDefaultSpatialReference:a.query.supportsDefaultSpatialReference,supportsFormatPBF:a.query.supportsFormatPBF,supportsMaxRecordCountFactor:a.query.supportsMaxRecordCountFactor,supportsQuantization:a.query.supportsQuantization,lastEditDate:n?.lastEditDate?.getTime(),snapshotInfo:j}}}createSourceSchema(e,t){const{apiKey:r,definitionExpression:i,displayFilterInfo:s,customParameters:o,gdbVersion:a,historicMoment:l,subtypeCode:n,subtypeField:p,timeExtent:d}=this.layer;return y({definitionExpression:i,displayFilterInfo:s,customParameters:o,gdbVersion:a,historicMoment:l,subtypeCode:n,subtypeField:p,timeExtent:d},e,t,r)}createProcessorSchema(e,t,i){const{fields:s,renderer:o,geometryType:a,labelingInfo:l,labelsVisible:n,orderBy:p,objectIdField:d,trackInfo:y}=this.layer,c={fields:s.map(e=>e.toJSON()),renderer:o?.clone(),labelingInfoSource:this.layer.id,featureReduction:r(this.layer,t),geometryType:a,labelingInfo:l,labelsVisible:n,objectIdField:d,orderBy:p??"default",trackInfo:y};return u(e,t,c,i)}get hasRequiredSupport(){return c(this.layer.renderer)}get timeOptions(){return this.layer}addFilters(e,t){return o(this.layer,e,t)}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>this.layer.definitionExpression,()=>r(this.layer,e),()=>a(this.layer,e)?e.floors:null,()=>this.layer.gdbVersion,()=>this.layer.historicMoment,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>this.layer.orderBy,()=>this.layer.outFields,()=>this.layer.renderer,()=>this.layer.subtypeCode,()=>this.layer.trackInfo]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{m as FeatureLayerAdapter};
5
+ import{clone as e}from"../../../../../core/lang.js";import{isHostedAgolService as t}from"../../../../../layers/support/arcgisLayerUrl.js";import{getEffectiveFeatureReduction as r}from"./featureReductionUtils.js";import{createSnapshotInfo as i,createFeatureIdInfo as o}from"./featureServiceUtils.js";import{addFloorFilter as s,hasFloorFilter as a}from"./floorFilterUtils.js";import{getServiceGeometryType as n}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as l,getLayerDeconflictionEnabled as p,createLabelVVEvaluator as d}from"./labelingUtils.js";import{createFeatureSourceSchema as u}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as y}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as c}from"../support/rendererUtils.js";class m{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const t=this.layer,i=l(t,e)??p(t),o=r(t,e),s=[...t.labelingInfo||[],...o?.labelingInfo||[]];return[{vvEvaluators:{0:d(t.renderer)},deconflictionEnabled:i,labelingInfo:s}]}async createServiceOptions(r){const s=this.layer,{capabilities:a,editingInfo:l,typeIdField:p,globalIdField:d,datesInUnknownTimezone:u,dateFieldsTimeZone:y,orderBy:c,subtypeField:m,refreshInterval:f}=s,h=s.fieldsIndex.toJSON(),g=n(s),b=s.timeInfo?.toJSON(),I=s.spatialReference.toJSON(),S=s.types?.map(e=>e.toJSON()),F=e(this.layer.parsedUrl);this.layer.dynamicDataSource&&(F.query={layer:JSON.stringify({source:this.layer.dynamicDataSource})});let x=this.layer.objectIdField;if(c?.length){const e=!c[0].valueExpression&&c[0].field;e&&(x=e)}const R=t(F.path),O=i(R,!(null!=l?.lastEditDate)&&f>0,a,g,r.extent,s.fullExtent),j=r.spatialReference.toJSON();return{type:"feature-service",source:F,isSourceHosted:R,orderByFields:x,outSpatialReference:j,metadata:{typeIdField:p??void 0,types:S,timeReferenceUnknownClient:u,dateFieldsTimeZone:y,subtypeField:m,globalIdField:d,fieldsIndex:h,geometryType:g,featureIdInfo:o(s),timeInfo:b,spatialReference:I,outSpatialReference:j,subtypes:this.layer.subtypes?.map(e=>e.toJSON())},queryMetadata:{maxRecordCount:a.query.maxRecordCount,supportsCompactGeometry:a.query.supportsCompactGeometry,supportsDefaultSpatialReference:a.query.supportsDefaultSpatialReference,supportsFormatPBF:a.query.supportsFormatPBF,supportsMaxRecordCountFactor:a.query.supportsMaxRecordCountFactor,supportsQuantization:a.query.supportsQuantization,supportsCentroidOnDegeneratedQuantizedGeometry:a.query.supportsCentroidOnDegeneratedQuantizedGeometry,supportsDegeneratedQuantizedGeometry:a.query.supportsDegeneratedQuantizedGeometry,lastEditDate:l?.lastEditDate?.getTime(),snapshotInfo:O}}}createSourceSchema(e,t){const{apiKey:r,definitionExpression:i,displayFilterInfo:o,customParameters:s,gdbVersion:a,historicMoment:n,subtypeCode:l,subtypeField:p,timeExtent:d}=this.layer;return u({definitionExpression:i,displayFilterInfo:o,customParameters:s,gdbVersion:a,historicMoment:n,subtypeCode:l,subtypeField:p,timeExtent:d},e,t,r)}createProcessorSchema(e,t,i){const{fields:o,renderer:s,geometryType:a,labelingInfo:n,labelsVisible:l,orderBy:p,objectIdField:d,trackInfo:u}=this.layer,c={fields:o.map(e=>e.toJSON()),renderer:s?.clone(),labelingInfoSource:this.layer.id,featureReduction:r(this.layer,t),geometryType:a,labelingInfo:n,labelsVisible:l,objectIdField:d,orderBy:p??"default",trackInfo:u};return y(e,t,c,i)}get hasRequiredSupport(){return c(this.layer.renderer)}get timeOptions(){return this.layer}addFilters(e,t){return s(this.layer,e,t)}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>this.layer.definitionExpression,()=>r(this.layer,e),()=>a(this.layer,e)?e.floors:null,()=>this.layer.gdbVersion,()=>this.layer.historicMoment,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>this.layer.orderBy,()=>this.layer.outFields,()=>this.layer.renderer,()=>this.layer.subtypeCode,()=>this.layer.trackInfo]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{m as FeatureLayerAdapter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../../../core/Error.js";import{getEffectiveFeatureReduction as t}from"./featureReductionUtils.js";import{getServiceGeometryType as r}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as o,getLayerDeconflictionEnabled as i,createLabelVVEvaluator as n}from"./labelingUtils.js";import{createFeatureSourceSchema as l}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as s}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as a}from"../support/rendererUtils.js";function u(t){if(!("openPorts"in t))throw new e("featurelayer:source-not-supported","source is not supported")}class p{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,l=o(r,e)??i(r),s=t(r,e),a=[...r.labelingInfo||[],...s?.labelingInfo||[]];return[{vvEvaluators:{0:n(r.renderer)},deconflictionEnabled:l,labelingInfo:a}]}async createServiceOptions(e){const t=this.layer,{capabilities:o,objectIdField:i}=t,n=t.fieldsIndex.toJSON(),l=r(t),s=t.timeInfo?.toJSON(),a=t.spatialReference.toJSON();u(t.source);const p=await t.source.openPorts(),c=i,d=e.spatialReference.toJSON();return{type:"memory",source:p,orderByFields:c,outSpatialReference:d,metadata:{fieldsIndex:n,geometryType:l,featureIdInfo:{type:"object-id",fieldName:t.objectIdField},timeInfo:s,spatialReference:a,outSpatialReference:d,subtypes:null,subtypeField:null,globalIdField:null,typeIdField:null,types:null,timeReferenceUnknownClient:"datesInUnknownTimezone"in t?t.datesInUnknownTimezone:null,dateFieldsTimeZone:"dateFieldsTimeZone"in t?t.dateFieldsTimeZone:null},queryMetadata:{maxRecordCount:o.query.maxRecordCount,supportsCompactGeometry:o.query.supportsCompactGeometry,supportsDefaultSpatialReference:o.query.supportsDefaultSpatialReference,supportsFormatPBF:o.query.supportsFormatPBF,supportsMaxRecordCountFactor:o.query.supportsMaxRecordCountFactor,supportsQuantization:o.query.supportsQuantization,lastEditDate:null,snapshotInfo:null}}}createSourceSchema(e,t){const{definitionExpression:r,timeExtent:o,displayFilterInfo:i}=this.layer;return l({customParameters:null,definitionExpression:r,displayFilterInfo:i,timeExtent:o},e,t,null)}createProcessorSchema(e,r,o){const{fields:i,renderer:n,geometryType:l,labelingInfo:a,labelsVisible:u,orderBy:p,objectIdField:c}=this.layer,d="trackInfo"in this.layer?this.layer.trackInfo:null,y={fields:i.map(e=>e.toJSON()),renderer:n?.clone(),labelingInfoSource:this.layer.id,featureReduction:t(this.layer,r),geometryType:l,labelingInfo:a,labelsVisible:u,objectIdField:c,orderBy:p??"default",trackInfo:d};return s(e,r,y,o)}get hasRequiredSupport(){return a(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.definitionExpression,()=>this.layer.displayFilterInfo,()=>this.layer.orderBy,()=>"outFields"in this.layer?this.layer.outFields:null,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>t(this.layer,e),()=>"trackInfo"in this.layer?this.layer.trackInfo:null]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{p as InMemoryLayerAdapter};
5
+ import e from"../../../../../core/Error.js";import{getEffectiveFeatureReduction as t}from"./featureReductionUtils.js";import{getServiceGeometryType as r}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as o,getLayerDeconflictionEnabled as i,createLabelVVEvaluator as n}from"./labelingUtils.js";import{createFeatureSourceSchema as s}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as l}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as a}from"../support/rendererUtils.js";function u(t){if(!("openPorts"in t))throw new e("featurelayer:source-not-supported","source is not supported")}class p{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,s=o(r,e)??i(r),l=t(r,e),a=[...r.labelingInfo||[],...l?.labelingInfo||[]];return[{vvEvaluators:{0:n(r.renderer)},deconflictionEnabled:s,labelingInfo:a}]}async createServiceOptions(e){const t=this.layer,{capabilities:o,objectIdField:i}=t,n=t.fieldsIndex.toJSON(),s=r(t),l=t.timeInfo?.toJSON(),a=t.spatialReference.toJSON();u(t.source);const p=await t.source.openPorts(),d=i,c=e.spatialReference.toJSON();return{type:"memory",source:p,orderByFields:d,outSpatialReference:c,metadata:{fieldsIndex:n,geometryType:s,featureIdInfo:{type:"object-id",fieldName:t.objectIdField},timeInfo:l,spatialReference:a,outSpatialReference:c,subtypes:null,subtypeField:null,globalIdField:null,typeIdField:null,types:null,timeReferenceUnknownClient:"datesInUnknownTimezone"in t?t.datesInUnknownTimezone:null,dateFieldsTimeZone:"dateFieldsTimeZone"in t?t.dateFieldsTimeZone:null},queryMetadata:{maxRecordCount:o.query.maxRecordCount,supportsCompactGeometry:o.query.supportsCompactGeometry,supportsDefaultSpatialReference:o.query.supportsDefaultSpatialReference,supportsFormatPBF:o.query.supportsFormatPBF,supportsMaxRecordCountFactor:o.query.supportsMaxRecordCountFactor,supportsQuantization:o.query.supportsQuantization,supportsCentroidOnDegeneratedQuantizedGeometry:o.query.supportsCentroidOnDegeneratedQuantizedGeometry,supportsDegeneratedQuantizedGeometry:o.query.supportsDegeneratedQuantizedGeometry,lastEditDate:null,snapshotInfo:null}}}createSourceSchema(e,t){const{definitionExpression:r,timeExtent:o,displayFilterInfo:i}=this.layer;return s({customParameters:null,definitionExpression:r,displayFilterInfo:i,timeExtent:o},e,t,null)}createProcessorSchema(e,r,o){const{fields:i,renderer:n,geometryType:s,labelingInfo:a,labelsVisible:u,orderBy:p,objectIdField:d}=this.layer,c="trackInfo"in this.layer?this.layer.trackInfo:null,y={fields:i.map(e=>e.toJSON()),renderer:n?.clone(),labelingInfoSource:this.layer.id,featureReduction:t(this.layer,r),geometryType:s,labelingInfo:a,labelsVisible:u,objectIdField:d,orderBy:p??"default",trackInfo:c};return l(e,r,y,o)}get hasRequiredSupport(){return a(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.definitionExpression,()=>this.layer.displayFilterInfo,()=>this.layer.orderBy,()=>"outFields"in this.layer?this.layer.outFields:null,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>t(this.layer,e),()=>"trackInfo"in this.layer?this.layer.trackInfo:null]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{p as InMemoryLayerAdapter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{sqlAnd as e}from"../../../../../core/sql.js";import{systemIsSpatialFieldName as r}from"../../../../../layers/knowledgeGraph/constants.js";import t from"../../../../../layers/support/FeatureFilter.js";import{getEffectiveFeatureReduction as o}from"./featureReductionUtils.js";import{getServiceGeometryType as i}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as s,getLayerDeconflictionEnabled as a,createLabelVVEvaluator as l}from"./labelingUtils.js";import{createFeatureSourceSchema as n}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as p}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as u}from"../support/rendererUtils.js";class c{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,t=s(r,e)??a(r);return[{vvEvaluators:{0:l(r.renderer)},deconflictionEnabled:t}]}async createServiceOptions(e){const r=this.layer,{capabilities:t,objectIdField:o}=r,s=r.fieldsIndex.toJSON(),a=i(r),l=r.spatialReference.toJSON(),n=await r.source.openPorts(),p=o,u=e.spatialReference.toJSON();return{type:"memory",source:n,orderByFields:p,outSpatialReference:u,metadata:{fieldsIndex:s,geometryType:a,featureIdInfo:{type:"object-id",fieldName:r.objectIdField},spatialReference:l,outSpatialReference:u,globalIdField:null,subtypeField:null,subtypes:null,timeInfo:r.timeInfo?.toJSON(),timeReferenceUnknownClient:null,dateFieldsTimeZone:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:t.query.maxRecordCount,supportsCompactGeometry:t.query.supportsCompactGeometry,supportsDefaultSpatialReference:t.query.supportsDefaultSpatialReference,supportsFormatPBF:t.query.supportsFormatPBF,supportsMaxRecordCountFactor:t.query.supportsMaxRecordCountFactor,supportsQuantization:t.query.supportsQuantization,lastEditDate:null,snapshotInfo:null}}}createSourceSchema(e,r){const{definitionExpression:t,displayFilterInfo:o}=this.layer;return n({definitionExpression:t,displayFilterInfo:o,customParameters:null},e,r,null)}createProcessorSchema(e,r,t){const{fields:i,renderer:s,geometryType:a,labelingInfo:l,labelsVisible:n,objectIdField:u}=this.layer,c={fields:i.map(e=>e.toJSON()),renderer:s?.clone(),labelingInfoSource:this.layer.id,featureReduction:o(this.layer,r),geometryType:a,labelingInfo:l,labelsVisible:n,objectIdField:u,orderBy:"default"};return p(e,r,c,t)}get hasRequiredSupport(){return u(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.definitionExpression,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>o(this.layer,e),()=>d(this.layer)]}hasFilters(e){return d(this.layer)}addFilters(o,i){if(d(this.layer)){const i=e(o?.where,`${r}=1`);if(!i)return o;o??=new t,o.where=i}return o}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}function d(e){return"link-chart"===e.parentCompositeLayer.type&&"hidden"===e.parentCompositeLayer.linkChart?.linkChartProperties.nonspatialDataDisplay?.mode}export{c as KnowledgeGraphSublayerAdapter};
5
+ import{sqlAnd as e}from"../../../../../core/sql.js";import{systemIsSpatialFieldName as r}from"../../../../../layers/knowledgeGraph/constants.js";import t from"../../../../../layers/support/FeatureFilter.js";import{getEffectiveFeatureReduction as o}from"./featureReductionUtils.js";import{getServiceGeometryType as i}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as s,getLayerDeconflictionEnabled as a,createLabelVVEvaluator as n}from"./labelingUtils.js";import{createFeatureSourceSchema as l}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as p}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as u}from"../support/rendererUtils.js";class d{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,t=s(r,e)??a(r);return[{vvEvaluators:{0:n(r.renderer)},deconflictionEnabled:t}]}async createServiceOptions(e){const r=this.layer,{capabilities:t,objectIdField:o}=r,s=r.fieldsIndex.toJSON(),a=i(r),n=r.spatialReference.toJSON(),l=await r.source.openPorts(),p=o,u=e.spatialReference.toJSON();return{type:"memory",source:l,orderByFields:p,outSpatialReference:u,metadata:{fieldsIndex:s,geometryType:a,featureIdInfo:{type:"object-id",fieldName:r.objectIdField},spatialReference:n,outSpatialReference:u,globalIdField:null,subtypeField:null,subtypes:null,timeInfo:r.timeInfo?.toJSON(),timeReferenceUnknownClient:null,dateFieldsTimeZone:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:t.query.maxRecordCount,supportsCompactGeometry:t.query.supportsCompactGeometry,supportsDefaultSpatialReference:t.query.supportsDefaultSpatialReference,supportsFormatPBF:t.query.supportsFormatPBF,supportsMaxRecordCountFactor:t.query.supportsMaxRecordCountFactor,supportsQuantization:t.query.supportsQuantization,supportsCentroidOnDegeneratedQuantizedGeometry:t.query.supportsCentroidOnDegeneratedQuantizedGeometry,supportsDegeneratedQuantizedGeometry:t.query.supportsDegeneratedQuantizedGeometry,lastEditDate:null,snapshotInfo:null}}}createSourceSchema(e,r){const{definitionExpression:t,displayFilterInfo:o}=this.layer;return l({definitionExpression:t,displayFilterInfo:o,customParameters:null},e,r,null)}createProcessorSchema(e,r,t){const{fields:i,renderer:s,geometryType:a,labelingInfo:n,labelsVisible:l,objectIdField:u}=this.layer,d={fields:i.map(e=>e.toJSON()),renderer:s?.clone(),labelingInfoSource:this.layer.id,featureReduction:o(this.layer,r),geometryType:a,labelingInfo:n,labelsVisible:l,objectIdField:u,orderBy:"default"};return p(e,r,d,t)}get hasRequiredSupport(){return u(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.definitionExpression,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>o(this.layer,e),()=>c(this.layer)]}hasFilters(e){return c(this.layer)}addFilters(o,i){if(c(this.layer)){const i=e(o?.where,`${r}=1`);if(!i)return o;o??=new t,o.where=i}return o}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}function c(e){return"link-chart"===e.parentCompositeLayer.type&&"hidden"===e.parentCompositeLayer.linkChart?.linkChartProperties.nonspatialDataDisplay?.mode}export{d as KnowledgeGraphSublayerAdapter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clone as e}from"../../../../../core/lang.js";import{getEffectiveFeatureReduction as r}from"./featureReductionUtils.js";import{getServiceGeometryType as t}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as o,getLayerDeconflictionEnabled as a,createLabelVVEvaluator as s}from"./labelingUtils.js";import{createFeatureSourceSchema as i}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as l}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as n}from"../support/rendererUtils.js";class u{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,t=o(r,e)??a(r);return[{vvEvaluators:{0:s(r.renderer)},deconflictionEnabled:t,labelingInfo:r.labelingInfo}]}async createServiceOptions(r){const o=this.layer,{capabilities:a}=o,s=o.fieldsIndex.toJSON(),i=t(o),l=o.timeInfo?.toJSON(),n=o.spatialReference.toJSON(),u=o.source.getSource(),c=this.layer.objectIdField,p=e(a);p.query.maxRecordCount=u.maxRecordCount;const d=r.spatialReference.toJSON();return{type:"ogc",source:u,orderByFields:c,outSpatialReference:d,metadata:{fieldsIndex:s,geometryType:i,featureIdInfo:{type:"object-id",fieldName:o.objectIdField},timeInfo:l,spatialReference:n,outSpatialReference:d,globalIdField:null,subtypeField:null,subtypes:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:p.query.maxRecordCount,supportsCompactGeometry:p.query.supportsCompactGeometry,supportsDefaultSpatialReference:p.query.supportsDefaultSpatialReference,supportsFormatPBF:p.query.supportsFormatPBF,supportsMaxRecordCountFactor:p.query.supportsMaxRecordCountFactor,supportsQuantization:p.query.supportsQuantization,lastEditDate:null,snapshotInfo:null}}}createSourceSchema(e,r){const{customParameters:t,timeExtent:o,apiKey:a}=this.layer;return i({customParameters:t,timeExtent:o},e,r,a)}createProcessorSchema(e,t,o){const{fields:a,renderer:s,geometryType:i,labelingInfo:n,labelsVisible:u,orderBy:c,objectIdField:p}=this.layer,d={fields:a.map(e=>e.toJSON()),renderer:s?.clone(),labelingInfoSource:this.layer.id,featureReduction:r(this.layer,t),geometryType:i,labelingInfo:n,labelsVisible:u,objectIdField:p,orderBy:c??"default"};return l(e,t,d,o)}get hasRequiredSupport(){return n(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>r(this.layer,e),()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>this.layer.orderBy,()=>this.layer.renderer]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{u as OGCFeatureLayerAdapter};
5
+ import{clone as e}from"../../../../../core/lang.js";import{getEffectiveFeatureReduction as t}from"./featureReductionUtils.js";import{getServiceGeometryType as r}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as o,getLayerDeconflictionEnabled as a,createLabelVVEvaluator as s}from"./labelingUtils.js";import{createFeatureSourceSchema as i}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as l}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as n}from"../support/rendererUtils.js";class u{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const t=this.layer,r=o(t,e)??a(t);return[{vvEvaluators:{0:s(t.renderer)},deconflictionEnabled:r,labelingInfo:t.labelingInfo}]}async createServiceOptions(t){const o=this.layer,{capabilities:a}=o,s=o.fieldsIndex.toJSON(),i=r(o),l=o.timeInfo?.toJSON(),n=o.spatialReference.toJSON(),u=o.source.getSource(),p=this.layer.objectIdField,c=e(a);c.query.maxRecordCount=u.maxRecordCount;const d=t.spatialReference.toJSON();return{type:"ogc",source:u,orderByFields:p,outSpatialReference:d,metadata:{fieldsIndex:s,geometryType:i,featureIdInfo:{type:"object-id",fieldName:o.objectIdField},timeInfo:l,spatialReference:n,outSpatialReference:d,globalIdField:null,subtypeField:null,subtypes:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:c.query.maxRecordCount,supportsCompactGeometry:c.query.supportsCompactGeometry,supportsDefaultSpatialReference:c.query.supportsDefaultSpatialReference,supportsFormatPBF:c.query.supportsFormatPBF,supportsMaxRecordCountFactor:c.query.supportsMaxRecordCountFactor,supportsQuantization:c.query.supportsQuantization,supportsCentroidOnDegeneratedQuantizedGeometry:c.query.supportsCentroidOnDegeneratedQuantizedGeometry,supportsDegeneratedQuantizedGeometry:c.query.supportsDegeneratedQuantizedGeometry,lastEditDate:null,snapshotInfo:null}}}createSourceSchema(e,t){const{customParameters:r,timeExtent:o,apiKey:a}=this.layer;return i({customParameters:r,timeExtent:o},e,t,a)}createProcessorSchema(e,r,o){const{fields:a,renderer:s,geometryType:i,labelingInfo:n,labelsVisible:u,orderBy:p,objectIdField:c}=this.layer,d={fields:a.map(e=>e.toJSON()),renderer:s?.clone(),labelingInfoSource:this.layer.id,featureReduction:t(this.layer,r),geometryType:i,labelingInfo:n,labelsVisible:u,objectIdField:c,orderBy:p??"default"};return l(e,r,d,o)}get hasRequiredSupport(){return n(this.layer.renderer)}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>t(this.layer,e),()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>this.layer.orderBy,()=>this.layer.renderer]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{u as OGCFeatureLayerAdapter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clone as e}from"../../../../../core/lang.js";import{isHostedAgolService as r}from"../../../../../layers/support/arcgisLayerUrl.js";import{getEffectiveFeatureReduction as t}from"./featureReductionUtils.js";import{createSnapshotInfo as o}from"./featureServiceUtils.js";import{addFloorFilter as i,hasFloorFilter as s}from"./floorFilterUtils.js";import{getServiceGeometryType as l}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as a,getLayerDeconflictionEnabled as n,createLabelVVEvaluator as p}from"./labelingUtils.js";import{createFeatureSourceSchema as u}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as d}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as c}from"../support/rendererUtils.js";class m{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,t=a(r,e)??n(r);return[{vvEvaluators:{0:p(r.renderer)},deconflictionEnabled:t}]}async createServiceOptions(t){const i=this.layer,{capabilities:s,globalIdField:a,orderBy:n,refreshInterval:p}=i,u=i.fieldsIndex.toJSON(),d=l(i),c=i.timeInfo?.toJSON(),m=i.spatialReference.toJSON(),y=e(this.layer.parsedUrl);let f=this.layer.objectIdField;if(n?.length){const e=!n[0].valueExpression&&n[0].field;e&&(f=e)}const h=p>0,b=r(y.path),g=t.spatialReference.toJSON(),I=o(b,h,s,d,t.extent,i.fullExtent);return{type:"feature-service",source:y,isSourceHosted:b,orderByFields:f,outSpatialReference:g,metadata:{globalIdField:a,fieldsIndex:u,geometryType:d,featureIdInfo:{type:"object-id",fieldName:i.objectIdField},timeInfo:c,spatialReference:m,outSpatialReference:g,timeReferenceUnknownClient:i.datesInUnknownTimezone,dateFieldsTimeZone:i.dateFieldsTimeZone,subtypeField:null,subtypes:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:s.query.maxRecordCount,supportsCompactGeometry:s.query.supportsCompactGeometry,supportsDefaultSpatialReference:s.query.supportsDefaultSpatialReference,supportsFormatPBF:s.query.supportsFormatPBF,supportsMaxRecordCountFactor:s.query.supportsMaxRecordCountFactor,supportsQuantization:s.query.supportsQuantization,lastEditDate:null,snapshotInfo:I}}}createSourceSchema(e,r){const{definitionExpression:t,displayFilterInfo:o,customParameters:i,timeExtent:s}=this.layer;return u({definitionExpression:t,displayFilterInfo:o,customParameters:i,timeExtent:s},e,r,null)}createProcessorSchema(e,r,o){const{fields:i,renderer:s,geometryType:l,labelingInfo:a,labelsVisible:n,orderBy:p,objectIdField:u}=this.layer,c={fields:i.map(e=>e.toJSON()),renderer:s?.clone(),labelingInfoSource:this.layer.id,featureReduction:t(this.layer,r),geometryType:l,labelingInfo:a,labelsVisible:n,objectIdField:u,orderBy:p??"default"};return d(e,r,c,o)}get hasRequiredSupport(){return c(this.layer.renderer)}get timeOptions(){return this.layer}addFilters(e,r){return i(this.layer,e,r)}getUpdateHashProperties(e){return[()=>this.layer.outFields,()=>this.layer.orderBy,()=>this.layer.definitionExpression,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>t(this.layer,e),()=>this.layer.customParameters,()=>s(this.layer,e)?e.floors:null]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{m as OrientedImageryLayerAdapter};
5
+ import{clone as e}from"../../../../../core/lang.js";import{isHostedAgolService as r}from"../../../../../layers/support/arcgisLayerUrl.js";import{getEffectiveFeatureReduction as t}from"./featureReductionUtils.js";import{createSnapshotInfo as o}from"./featureServiceUtils.js";import{addFloorFilter as i,hasFloorFilter as s}from"./floorFilterUtils.js";import{getServiceGeometryType as a}from"./geometryUtils.js";import{getFeatureReductionDeconflictionEnabled as l,getLayerDeconflictionEnabled as n,createLabelVVEvaluator as p}from"./labelingUtils.js";import{createFeatureSourceSchema as u}from"../schema/SourceSchema.js";import{createSimpleProcessorSchema as d}from"../schema/processor/SimpleProcessorSchema.js";import{isRendererSupported as c}from"../support/rendererUtils.js";class m{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer,t=l(r,e)??n(r);return[{vvEvaluators:{0:p(r.renderer)},deconflictionEnabled:t}]}async createServiceOptions(t){const i=this.layer,{capabilities:s,globalIdField:l,orderBy:n,refreshInterval:p}=i,u=i.fieldsIndex.toJSON(),d=a(i),c=i.timeInfo?.toJSON(),m=i.spatialReference.toJSON(),y=e(this.layer.parsedUrl);let f=this.layer.objectIdField;if(n?.length){const e=!n[0].valueExpression&&n[0].field;e&&(f=e)}const h=p>0,g=r(y.path),b=t.spatialReference.toJSON(),I=o(g,h,s,d,t.extent,i.fullExtent);return{type:"feature-service",source:y,isSourceHosted:g,orderByFields:f,outSpatialReference:b,metadata:{globalIdField:l,fieldsIndex:u,geometryType:d,featureIdInfo:{type:"object-id",fieldName:i.objectIdField},timeInfo:c,spatialReference:m,outSpatialReference:b,timeReferenceUnknownClient:i.datesInUnknownTimezone,dateFieldsTimeZone:i.dateFieldsTimeZone,subtypeField:null,subtypes:null,typeIdField:null,types:null},queryMetadata:{maxRecordCount:s.query.maxRecordCount,supportsCompactGeometry:s.query.supportsCompactGeometry,supportsDefaultSpatialReference:s.query.supportsDefaultSpatialReference,supportsFormatPBF:s.query.supportsFormatPBF,supportsMaxRecordCountFactor:s.query.supportsMaxRecordCountFactor,supportsQuantization:s.query.supportsQuantization,supportsCentroidOnDegeneratedQuantizedGeometry:s.query.supportsCentroidOnDegeneratedQuantizedGeometry,supportsDegeneratedQuantizedGeometry:s.query.supportsDegeneratedQuantizedGeometry,lastEditDate:null,snapshotInfo:I}}}createSourceSchema(e,r){const{definitionExpression:t,displayFilterInfo:o,customParameters:i,timeExtent:s}=this.layer;return u({definitionExpression:t,displayFilterInfo:o,customParameters:i,timeExtent:s},e,r,null)}createProcessorSchema(e,r,o){const{fields:i,renderer:s,geometryType:a,labelingInfo:l,labelsVisible:n,orderBy:p,objectIdField:u}=this.layer,c={fields:i.map(e=>e.toJSON()),renderer:s?.clone(),labelingInfoSource:this.layer.id,featureReduction:t(this.layer,r),geometryType:a,labelingInfo:l,labelsVisible:n,objectIdField:u,orderBy:p??"default"};return d(e,r,c,o)}get hasRequiredSupport(){return c(this.layer.renderer)}get timeOptions(){return this.layer}addFilters(e,r){return i(this.layer,e,r)}getUpdateHashProperties(e){return[()=>this.layer.outFields,()=>this.layer.orderBy,()=>this.layer.definitionExpression,()=>this.layer.renderer,()=>this.layer.labelsVisible?this.layer.labelingInfo:null,()=>t(this.layer,e),()=>this.layer.customParameters,()=>s(this.layer,e)?e.floors:null]}setGraphicOrigin(e){e.origin=this.layer.graphicOrigin}}export{m as OrientedImageryLayerAdapter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{clone as e}from"../../../../../core/lang.js";import{floatEqualAbsolute as r}from"../../../../../core/mathUtils.js";import{sqlAnd as t}from"../../../../../core/sql.js";import{isHostedAgolService as s}from"../../../../../layers/support/arcgisLayerUrl.js";import i from"../../../../../layers/support/FeatureFilter.js";import{createSnapshotInfo as a,createFeatureIdInfo as l}from"./featureServiceUtils.js";import{addFloorFilter as o,hasFloorFilter as n}from"./floorFilterUtils.js";import{getServiceGeometryType as u}from"./geometryUtils.js";import{getLayerDeconflictionEnabled as p}from"./labelingUtils.js";import{createFeatureSourceSchema as c}from"../schema/SourceSchema.js";import{createSubtypeProcessorSchema as y}from"../schema/processor/SubtypeProcessorSchema.js";class m{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const r=this.layer;return[{vvEvaluators:{},deconflictionEnabled:r.sublayers.some(e=>p(e)),labelingInfo:r.sublayers.toArray().filter(e=>!!e.labelingInfo).flatMap(e=>e.labelingInfo)}]}async createServiceOptions(r){const t=this.layer,{capabilities:i,datesInUnknownTimezone:o,dateFieldsTimeZone:n,editingInfo:p,globalIdField:c,objectIdField:y,refreshInterval:m,subtypeField:d}=t,f=t.fieldsIndex.toJSON(),b=u(t),h=t.timeInfo?.toJSON(),S=t.spatialReference.toJSON(),g=e(this.layer.parsedUrl),F=y,I=!(null!=p?.lastEditDate)&&m>0,x=s(g.path),R=r.spatialReference.toJSON(),j=a(x,I,i,b,r.extent,t.fullExtent);return{type:"feature-service",source:g,isSourceHosted:x,orderByFields:F,outSpatialReference:R,metadata:{timeReferenceUnknownClient:o,dateFieldsTimeZone:n,subtypeField:d,globalIdField:c,fieldsIndex:f,geometryType:b,featureIdInfo:l(this.layer),timeInfo:h,spatialReference:S,outSpatialReference:R,subtypes:this.layer.subtypes?.map(e=>e.toJSON()),typeIdField:null,types:null},queryMetadata:{maxRecordCount:i.query.maxRecordCount,supportsCompactGeometry:i.query.supportsCompactGeometry,supportsDefaultSpatialReference:i.query.supportsDefaultSpatialReference,supportsFormatPBF:i.query.supportsFormatPBF,supportsMaxRecordCountFactor:i.query.supportsMaxRecordCountFactor,supportsQuantization:i.query.supportsQuantization,lastEditDate:p?.lastEditDate?.getTime(),snapshotInfo:j}}}createSourceSchema(e,r){const{definitionExpression:t,customParameters:s,gdbVersion:i,historicMoment:a,subtypeField:l,timeExtent:o,apiKey:n,displayFilterInfo:u}=this.layer,p={queryScaleRanges:this.layer.sublayers.items.map(e=>({subtypeCode:e.subtypeCode,minScale:e.minScale,maxScale:e.maxScale})),definitionExpression:t,displayFilterInfo:u,customParameters:s,gdbVersion:i,historicMoment:a,subtypeField:l,timeExtent:o};return c(p,e,r,n)}createProcessorSchema(e,r,t){const s={labelingInfoSource:this.layer.id,subtypeField:this.layer.subtypeField,sublayers:Array.from(this.layer.sublayers,(e,r)=>({featureReduction:null,geometryType:this.layer.geometryType,labelingInfoSource:this.layer.id+`-${r}`,labelingInfo:e.labelingInfo,labelsVisible:e.labelsVisible,renderer:e.renderer,subtypeCode:e.subtypeCode,orderBy:null}))};return y(e,r,s,t)}addFilters(e,r){e=o(this.layer,e,r);const s=this.layer.sublayers.filter(e=>!d(e,r)).map(e=>e.subtypeCode);if(!s.length)return e;e??=new i;const a=`NOT ${this.layer.subtypeField} IN (${s.join(",")})`;return e.where=t(e.where,a),e}get hasRequiredSupport(){return!0}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>this.layer.definitionExpression,()=>n(this.layer,e)?e.floors:null,()=>this.layer.outFields,()=>this.layer.gdbVersion,()=>this.layer.historicMoment,()=>this.layer.sublayers.map(({renderer:e,labelsVisible:r,labelingInfo:t,visible:s,minScale:i,maxScale:a})=>({renderer:e,labelsVisible:r,labelingInfo:t,visible:s,minScale:i,maxScale:a}))]}setGraphicOrigin(e){const r=this.layer.findSublayerForFeature(e);e.layer=e.sourceLayer=r,e.origin=r?.graphicOrigin}}function d(e,t){return e.visible&&(0===e.minScale||r(t.scale,e.minScale)||t.scale<e.minScale)&&(0===e.maxScale||r(t.scale,e.maxScale)||t.scale>e.maxScale)}export{m as SubtypeGroupLayerAdapter};
5
+ import{clone as e}from"../../../../../core/lang.js";import{floatEqualAbsolute as t}from"../../../../../core/mathUtils.js";import{sqlAnd as r}from"../../../../../core/sql.js";import{isHostedAgolService as s}from"../../../../../layers/support/arcgisLayerUrl.js";import a from"../../../../../layers/support/FeatureFilter.js";import{createSnapshotInfo as i,createFeatureIdInfo as o}from"./featureServiceUtils.js";import{addFloorFilter as l,hasFloorFilter as n}from"./floorFilterUtils.js";import{getServiceGeometryType as u}from"./geometryUtils.js";import{getLayerDeconflictionEnabled as p}from"./labelingUtils.js";import{createFeatureSourceSchema as y}from"../schema/SourceSchema.js";import{createSubtypeProcessorSchema as c}from"../schema/processor/SubtypeProcessorSchema.js";class m{constructor(e){this.layer=e}getLabelingDeconflictionInfo(e){const t=this.layer;return[{vvEvaluators:{},deconflictionEnabled:t.sublayers.some(e=>p(e)),labelingInfo:t.sublayers.toArray().filter(e=>!!e.labelingInfo).flatMap(e=>e.labelingInfo)}]}async createServiceOptions(t){const r=this.layer,{capabilities:a,datesInUnknownTimezone:l,dateFieldsTimeZone:n,editingInfo:p,globalIdField:y,objectIdField:c,refreshInterval:m,subtypeField:d}=r,f=r.fieldsIndex.toJSON(),b=u(r),h=r.timeInfo?.toJSON(),g=r.spatialReference.toJSON(),S=e(this.layer.parsedUrl),F=c,I=!(null!=p?.lastEditDate)&&m>0,x=s(S.path),R=t.spatialReference.toJSON(),C=i(x,I,a,b,t.extent,r.fullExtent);return{type:"feature-service",source:S,isSourceHosted:x,orderByFields:F,outSpatialReference:R,metadata:{timeReferenceUnknownClient:l,dateFieldsTimeZone:n,subtypeField:d,globalIdField:y,fieldsIndex:f,geometryType:b,featureIdInfo:o(this.layer),timeInfo:h,spatialReference:g,outSpatialReference:R,subtypes:this.layer.subtypes?.map(e=>e.toJSON()),typeIdField:null,types:null},queryMetadata:{maxRecordCount:a.query.maxRecordCount,supportsCompactGeometry:a.query.supportsCompactGeometry,supportsDefaultSpatialReference:a.query.supportsDefaultSpatialReference,supportsFormatPBF:a.query.supportsFormatPBF,supportsMaxRecordCountFactor:a.query.supportsMaxRecordCountFactor,supportsQuantization:a.query.supportsQuantization,supportsCentroidOnDegeneratedQuantizedGeometry:a.query.supportsCentroidOnDegeneratedQuantizedGeometry,supportsDegeneratedQuantizedGeometry:a.query.supportsDegeneratedQuantizedGeometry,lastEditDate:p?.lastEditDate?.getTime(),snapshotInfo:C}}}createSourceSchema(e,t){const{definitionExpression:r,customParameters:s,gdbVersion:a,historicMoment:i,subtypeField:o,timeExtent:l,apiKey:n,displayFilterInfo:u}=this.layer,p={queryScaleRanges:this.layer.sublayers.items.map(e=>({subtypeCode:e.subtypeCode,minScale:e.minScale,maxScale:e.maxScale})),definitionExpression:r,displayFilterInfo:u,customParameters:s,gdbVersion:a,historicMoment:i,subtypeField:o,timeExtent:l};return y(p,e,t,n)}createProcessorSchema(e,t,r){const s={labelingInfoSource:this.layer.id,subtypeField:this.layer.subtypeField,sublayers:Array.from(this.layer.sublayers,(e,t)=>({featureReduction:null,geometryType:this.layer.geometryType,labelingInfoSource:this.layer.id+`-${t}`,labelingInfo:e.labelingInfo,labelsVisible:e.labelsVisible,renderer:e.renderer,subtypeCode:e.subtypeCode,orderBy:null}))};return c(e,t,s,r)}addFilters(e,t){e=l(this.layer,e,t);const s=this.layer.sublayers.filter(e=>!d(e,t)).map(e=>e.subtypeCode);if(!s.length)return e;e??=new a;const i=`NOT ${this.layer.subtypeField} IN (${s.join(",")})`;return e.where=r(e.where,i),e}get hasRequiredSupport(){return!0}get timeOptions(){return this.layer}getUpdateHashProperties(e){return[()=>this.layer.apiKey,()=>this.layer.customParameters,()=>this.layer.definitionExpression,()=>n(this.layer,e)?e.floors:null,()=>this.layer.outFields,()=>this.layer.gdbVersion,()=>this.layer.historicMoment,()=>this.layer.sublayers.map(({renderer:e,labelsVisible:t,labelingInfo:r,visible:s,minScale:a,maxScale:i})=>({renderer:e,labelsVisible:t,labelingInfo:r,visible:s,minScale:a,maxScale:i}))]}setGraphicOrigin(e){const t=this.layer.findSublayerForFeature(e);e.layer=e.sourceLayer=t,e.origin=t?.graphicOrigin}}function d(e,r){return e.visible&&(0===e.minScale||t(r.scale,e.minScale)||r.scale<e.minScale)&&(0===e.maxScale||t(r.scale,e.maxScale)||r.scale>e.maxScale)}export{m as SubtypeGroupLayerAdapter};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import has from"../../../../../core/has.js";import{sqlAnd as e}from"../../../../../core/sql.js";import t from"../../../../../geometry/SpatialReference.js";import{isHostedAgolService as r}from"../../../../../layers/support/arcgisLayerUrl.js";import{getClauseForScaleRange as a}from"../../../../../layers/support/displayFilterUtils.js";import i from"../../../../../rest/support/Query.js";import{T as s}from"../../../../../chunks/TimeExtent.js";const o=4;function n(e){switch(e.type){case"object-id":case"unique-id-simple":return`${e.fieldName} ASC`;case"unique-id-composite":return`${e.fieldNames.join(",")} ASC`}}function u(e,a,i){const o=n(i.featureIdInfo),u=e.source,l={returnCentroid:!(null!==u&&"object"==typeof u&&"path"in u&&r(u.path))&&"esriGeometryPolygon"===i.serviceGeometryType,returnGeometry:!0,timeReferenceUnknownClient:i.timeReferenceUnknownClient??void 0,outSpatialReference:t.fromJSON(e.outSpatialReference),orderByFields:"memory"===e.type?[]:[o],where:a.mutable.dataFilter.definitionExpression??"1=1",outFields:a.mutable.availableFields,multipatchOption:"esriGeometryMultiPatch"===i.serviceGeometryType?"xyFootprint":null};if("feature"===a.type){const{gdbVersion:e,historicMoment:t,timeExtent:r}=a.mutable.dataFilter;return{...l,gdbVersion:e,historicMoment:t?new Date(t):null,timeExtent:r?s.fromJSON(r):null,outFields:a.mutable.availableFields}}return l}class l{static fromSchema(e,t,r){const a="feature"===t.type?t.mutable.dataFilter.queryScaleRanges:[],i=t.mutable.displayFilterInfo;return new l(u(e,t,r),i,a,r.subtypeField,t.mutable.dataFilter.customParameters,r.geometryType,e.queryMetadata)}constructor(e,t,r,a,i,s,o){this._queryParams=e,this._displayFilter=t,this._queryScaleRanges=r,this._subtypeField=a,this._customParameters=i,this._geometryType=s,this._queryMetadata=o}get pageSize(){if(null==this._queryMetadata)throw new Error("InternalError: Service does not support paged queries");const e=this._queryMetadata.supportsMaxRecordCountFactor?o:null,t=(this._queryMetadata.maxRecordCount??8e3)*(e??1);return Math.min(8e3,t)}get objectIdsQueryPageSize(){return this._queryMetadata?.maxRecordCount??2e3}updateHistoricMoment(e){this._queryParams.historicMoment=e}updateFields(e){this._queryParams.outFields=e}createPatchFieldsQuery(e,t,r){if(!t.getSize())return null;const a=e.clone();if("*"===this._queryParams.outFields[0]){if("*"===(a.outFields??[])[0])return null;a.outFields=this._queryParams.outFields}else{const e=new Set(this._queryParams.outFields),r=[];for(const a of e)t.hasField(a)||r.push(a);if(0===r.length)return null;a.outFields=r}a.returnGeometry=!1,a.returnCentroid=!1,a.quantizationParameters=null,a.cacheHint=!0;const i={inner:a,customParameters:this._customParameters};if(has("esri-tiles-debug")&&null!=r){const e=r.chunkId.toString().replaceAll("/",".");i.customParameters=i.customParameters?{...i.customParameters,chunkId:e}:{chunkId:e}}return i}createQuery(e={}){if(!this._queryParams)throw new Error("InternalError: queryInfo should be defined");return{inner:new i({...this._queryParams,...e}),customParameters:this._customParameters}}createTileQuery(t,r){if(null==this._queryMetadata)throw new Error("InternalError: Service does not support tile queries");const i=this.createQuery(r),s=i.inner;if(this._queryScaleRanges.length){const r=this._queryScaleRanges.filter(e=>(!e.minScale||e.minScale>=t.maxScale)&&(!e.maxScale||e.maxScale<=t.minScale)).map(e=>e.subtypeCode);if(r.length){const t=`${this._subtypeField} IN (${r})`;s.where=e(s.where,t)}}if(this._displayFilter&&(s.where=e(s.where,a(this._displayFilter,t.minScale,t.maxScale))),s.quantizationParameters=r.quantizationParameters??t.getQuantizationParameters(),s.resultType="tile",s.geometry=t.extent,this._queryMetadata.supportsQuantization?"esriGeometryPolyline"===this._geometryType&&(s.maxAllowableOffset=t.resolution*has("feature-polyline-generalization-factor")):"esriGeometryPolyline"!==this._geometryType&&"esriGeometryPolygon"!==this._geometryType||(s.maxAllowableOffset=t.resolution,"esriGeometryPolyline"===this._geometryType&&(s.maxAllowableOffset*=has("feature-polyline-generalization-factor"))),s.defaultSpatialReferenceEnabled=this._queryMetadata.supportsDefaultSpatialReference,s.compactGeometryEnabled=this._queryMetadata.supportsCompactGeometry,this._queryMetadata.supportsMaxRecordCountFactor&&(s.maxRecordCountFactor=o),has("esri-tiles-debug")){const e=t.id.replaceAll("/",".");i.customParameters=i.customParameters?{...i.customParameters,tileId:e}:{tileId:e}}return i}createPagedTileQuery(e,t){const r=this.pageSize;return this.createTileQuery(e,{start:r*t,num:r,returnExceededLimitFeatures:!0})}createPagedQuery(e,t){const r=this.pageSize;return this.createQuery({start:r*e,num:r,returnExceededLimitFeatures:!0,maxRecordCountFactor:o,quantizationParameters:t,cacheHint:!0})}createObjectIdsQuery(e){return this.createQuery({objectIds:e,outFields:["*"]})}}export{l as FeatureSourceQueryInfo};
5
+ import has from"../../../../../core/has.js";import{sqlAnd as e}from"../../../../../core/sql.js";import t from"../../../../../geometry/SpatialReference.js";import{getClauseForScaleRange as r}from"../../../../../layers/support/displayFilterUtils.js";import a from"../../../../../rest/support/Query.js";import{T as i}from"../../../../../chunks/TimeExtent.js";const s=4;function o(e){switch(e.type){case"object-id":case"unique-id-simple":return`${e.fieldName} ASC`;case"unique-id-composite":return`${e.fieldNames.join(",")} ASC`}}function n(e,r,a){const s=o(a.featureIdInfo),n={returnCentroid:"esriGeometryPolygon"===a.serviceGeometryType&&!e.queryMetadata.supportsCentroidOnDegeneratedQuantizedGeometry&&!e.queryMetadata.supportsDegeneratedQuantizedGeometry,returnGeometry:!0,timeReferenceUnknownClient:a.timeReferenceUnknownClient??void 0,outSpatialReference:t.fromJSON(e.outSpatialReference),orderByFields:"memory"===e.type?[]:[s],where:r.mutable.dataFilter.definitionExpression??"1=1",outFields:r.mutable.availableFields,multipatchOption:"esriGeometryMultiPatch"===a.serviceGeometryType?"xyFootprint":null};if("feature"===r.type){const{gdbVersion:e,historicMoment:t,timeExtent:a}=r.mutable.dataFilter;return{...n,gdbVersion:e,historicMoment:t?new Date(t):null,timeExtent:a?i.fromJSON(a):null,outFields:r.mutable.availableFields}}return n}class u{static fromSchema(e,t,r){const a="feature"===t.type?t.mutable.dataFilter.queryScaleRanges:[],i=t.mutable.displayFilterInfo;return new u(n(e,t,r),i,a,r.subtypeField,t.mutable.dataFilter.customParameters,r.geometryType,e.queryMetadata)}constructor(e,t,r,a,i,s,o){this._queryParams=e,this._displayFilter=t,this._queryScaleRanges=r,this._subtypeField=a,this._customParameters=i,this._geometryType=s,this._queryMetadata=o}get pageSize(){if(null==this._queryMetadata)throw new Error("InternalError: Service does not support paged queries");const e=this._queryMetadata.supportsMaxRecordCountFactor?s:null,t=(this._queryMetadata.maxRecordCount??8e3)*(e??1);return Math.min(8e3,t)}get objectIdsQueryPageSize(){return this._queryMetadata?.maxRecordCount??2e3}updateHistoricMoment(e){this._queryParams.historicMoment=e}updateFields(e){this._queryParams.outFields=e}createPatchFieldsQuery(e,t,r){if(!t.getSize())return null;const a=e.clone();if("*"===this._queryParams.outFields[0]){if("*"===(a.outFields??[])[0])return null;a.outFields=this._queryParams.outFields}else{const e=new Set(this._queryParams.outFields),r=[];for(const a of e)t.hasField(a)||r.push(a);if(0===r.length)return null;a.outFields=r}a.returnGeometry=!1,a.returnCentroid=!1,a.quantizationParameters=null,a.cacheHint=!0;const i={inner:a,customParameters:this._customParameters};if(has("esri-tiles-debug")&&null!=r){const e=r.chunkId.toString().replaceAll("/",".");i.customParameters=i.customParameters?{...i.customParameters,chunkId:e}:{chunkId:e}}return i}createQuery(e={}){if(!this._queryParams)throw new Error("InternalError: queryInfo should be defined");return{inner:new a({...this._queryParams,...e}),customParameters:this._customParameters}}createTileQuery(t,a){if(null==this._queryMetadata)throw new Error("InternalError: Service does not support tile queries");const i=this.createQuery(a),o=i.inner;if(this._queryScaleRanges.length){const r=this._queryScaleRanges.filter(e=>(!e.minScale||e.minScale>=t.maxScale)&&(!e.maxScale||e.maxScale<=t.minScale)).map(e=>e.subtypeCode);if(r.length){const t=`${this._subtypeField} IN (${r})`;o.where=e(o.where,t)}}if(this._displayFilter&&(o.where=e(o.where,r(this._displayFilter,t.minScale,t.maxScale))),o.quantizationParameters=a.quantizationParameters??t.getQuantizationParameters(),o.resultType="tile",o.geometry=t.extent,this._queryMetadata.supportsQuantization?"esriGeometryPolyline"===this._geometryType&&(o.maxAllowableOffset=t.resolution*has("feature-polyline-generalization-factor")):"esriGeometryPolyline"!==this._geometryType&&"esriGeometryPolygon"!==this._geometryType||(o.maxAllowableOffset=t.resolution,"esriGeometryPolyline"===this._geometryType&&(o.maxAllowableOffset*=has("feature-polyline-generalization-factor"))),o.defaultSpatialReferenceEnabled=this._queryMetadata.supportsDefaultSpatialReference,o.compactGeometryEnabled=this._queryMetadata.supportsCompactGeometry,this._queryMetadata.supportsMaxRecordCountFactor&&(o.maxRecordCountFactor=s),has("esri-tiles-debug")){const e=t.id.replaceAll("/",".");i.customParameters=i.customParameters?{...i.customParameters,tileId:e}:{tileId:e}}return i}createPagedTileQuery(e,t){const r=this.pageSize;return this.createTileQuery(e,{start:r*t,num:r,returnExceededLimitFeatures:!0})}createPagedQuery(e,t){const r=this.pageSize;return this.createQuery({start:r*e,num:r,returnExceededLimitFeatures:!0,maxRecordCountFactor:s,quantizationParameters:t,cacheHint:!0})}createObjectIdsQuery(e){return this.createQuery({objectIds:e,outFields:["*"]})}}export{u as FeatureSourceQueryInfo};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import e from"../../../../Color.js";import t from"../../../../core/Accessor.js";import{watch as r,syncAndInitial as i}from"../../../../core/reactiveUtils.js";import{property as s}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/has.js";import"../../../../core/Logger.js";import"../../../../core/RandomLCG.js";import{subclass as n}from"../../../../core/accessorSupport/decorators/subclass.js";import{projectOrLoad as p}from"../../../../geometry/projectionUtils.js";import{getConfig as c}from"../../../analysis/ElevationProfile/constants.js";let l=class extends t{constructor(o){super(o),this.position=null,this.color=new e("#ffffff"),this.element=a()}initialize(){this.addHandles([r(()=>this._screenLocation,o=>{o&&(this.element.style.transform=`translate(${o.x}px, ${o.y}px)`)},i),r(()=>this.color.toCss(),o=>{this.element.style.background=o},i)]),this.view.surface?.appendChild(this.element)}destroy(){this.element.remove()}get _screenLocation(){const{position:o,view:e}=this;e.commitProperty("size"),e.commitProperty("camera");const t=e?.spatialReference,r=t?p(o,t).geometry:null;return r&&e?.ready?e.toScreen(r):null}};function a(){const o=document.createElement("div"),{size:e,borderStyle:t,borderColor:r,borderWidth:i,boxShadow:s}=c().hoveredPointsStyle,{style:n}=o;return n.display="block",n.position="absolute",n.top="0",n.left="0",n.contain="strict",n.boxSizing="border-box",n.width=`${e}px`,n.height=`${e}px`,n.marginTop=`-${e/2}px`,n.marginLeft=`-${e/2}px`,n.border=`${t} ${i}px ${r}`,n.borderRadius=`${e}px`,n.boxShadow=s,o}o([s()],l.prototype,"position",void 0),o([s({type:e})],l.prototype,"color",void 0),o([s()],l.prototype,"view",void 0),o([s()],l.prototype,"_screenLocation",null),l=o([n("esri.views.3d.analysis.ElevationProfile.HoveredPointVisualization")],l);export{l as HoveredPointVisualization};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import r from"../../../../core/Accessor.js";import t from"../../../../core/Collection.js";import{watch as e,syncAndInitial as s}from"../../../../core/reactiveUtils.js";import{property as i}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/has.js";import"../../../../core/Logger.js";import"../../../../core/RandomLCG.js";import{subclass as a}from"../../../../core/accessorSupport/decorators/subclass.js";import{HoveredPointVisualization as n}from"./HoveredPointVisualization.js";let p=class extends r{constructor(o){super(o),this._hoveredPoints=new t}initialize(){this.addHandles([e(()=>{const o=this.analysisViewData.analysis;return this.analysisViewData.hoveredPoints.map((r,t)=>r?{hoveredPoint:r,color:o.profiles.at(t).color}:null).filter(o=>!!o)},o=>this._update(o),s)])}destroy(){this._hoveredPoints.drain(o=>o.destroy())}_update(o){const{view:r,_hoveredPoints:t}=this,e=o.length;for(;t.length>e;)t.pop()?.destroy();for(;t.length<e;){const o=new n({view:r});t.push(o)}for(let s=0;s<e;++s){const r=o[s],i=t.at(e-1-s);i.position=r.hoveredPoint,i.color=r.color}}};o([i()],p.prototype,"view",void 0),o([i()],p.prototype,"analysisViewData",void 0),o([i()],p.prototype,"_hoveredPoints",void 0),p=o([a("esri.views.3d.analysis.ElevationProfile.HoveredPointsVisualization")],p);export{p as HoveredPointsVisualization};