/* 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{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{drawBuffers as i}from"../lib/OrderIndependentTransparency.js";import{a as t}from"../../../../chunks/Compositing.glsl.js";import{makePipelineState as n,defaultColorWrite as a,premultipliedAlpha as c,unpremultipliedAlphaToPremultipliedAlpha as d}from"../../../webgl/renderState.js";let l=class extends o{constructor(){super(...arguments),this.shader=new s(t,()=>import("./Compositing.glsl.js"))}initializePipeline(e){const{blitMode:r,blendEmissive:s}=e;switch(r){case 0:case 3:return n({colorWrite:a,drawBuffers:i(0,s)});case 1:return n({blending:d,colorWrite:a,drawBuffers:i(0,s)});default:return n({blending:c,colorWrite:a,drawBuffers:i(0,s)})}}};l=e([r("esri.views.3d.webgl-engine.shaders.CompositingTechnique")],l);export{l as CompositingTechnique};
