/*
All material copyright Esri, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
*/
import{FeatureTechnique as e}from"../FeatureTechnique.js";import{isHittest as t,getSelectionDefines as r,getFeatureUniforms as s,resolveDynamicUniforms as i,getFeaturePipelineState as o}from"../featureTechniqueUtils.js";import{getAntialiasingControls as n}from"../line/utils.js";import{OutlineFillShader as a}from"../shaders/OutlineFillShader.js";class u extends e{constructor(){super(...arguments),this.type=25,this.shaders={geometry:new a}}render(e,a){const{painter:u,pixelRatio:m}=e,p=a.instance.getInput();u.setShader({shader:this.shaders.geometry,uniforms:{...i(e,a.target,p.uniforms),...s(e,a.target),antialiasingControls:n(m)},defines:{...r(e)},optionalAttributes:p.optionalAttributes,useComputeBuffer:t(e)}),u.setPipelineState(o(e)),u.submitDraw(e,a)}}export{u as OutlineFillTechnique};
