/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
import{__decorate as e}from"tslib";import{subclass as r}from"../../../../core/accessorSupport/decorators.js";import{glLayout as t}from"../../support/buffer/glUtil.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as i}from"../core/shaderTechnique/ShaderTechnique.js";import{drawBuffers as n,depthWrite as p,depthTest as a,blending as l}from"../lib/OrderIndependentTransparency.js";import{L as c}from"../../../../chunks/LineCallout.glsl.js";import{makePipelineState as d,defaultDepthWrite as f,defaultColorWrite as m}from"../../../webgl/renderState.js";let u=class extends i{constructor(e,r){super(e,r,t(h)),this.shader=new o(c,()=>import("./LineCallout.glsl.js"))}initializePipeline(e){const{hudDepth:r,terrainDepthTest:t,oitPass:s,hasEmission:o}=e,i=t?519:513;return d(r?{depthTest:{func:i},depthWrite:f}:{blending:l(s,!0),depthTest:a(s,i),colorWrite:m,depthWrite:p(e),drawBuffers:n(s,o)})}};u=e([r("esri.views.3d.webgl-engine.shaders.LineCalloutTechnique")],u);const h=s().vec3f("position").vec3f("normal").vec2f16("uv0").vec4f("centerOffsetAndDistance");export{u as LineCalloutTechnique,h as layout};
