/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["exports","./Bloom","./Blur","./Colorize","./DropShadow","./Opacity"],(function(e,o,t,c,r,n){"use strict";function s(e){switch(e){case"bloom":case"blur":case"opacity":case"drop-shadow":return e;default:return"colorize"}}const f={colorize:()=>new c.Colorize,blur:()=>new t.Blur,bloom:()=>new o.Bloom,opacity:()=>new n.Opacity,"drop-shadow":()=>new r.DropShadow};let i=function(){function e(){this._effectMap=new Map}var o=e.prototype;return o.dispose=function(){this._effectMap.forEach((e=>e.dispose())),this._effectMap.clear()},o.getPostProcessingEffects=function(e){if(!e||0===e.length)return[];const o=[];for(const t of e){const e=s(t.type);let c=this._effectMap.get(e);c||(c=f[e](),this._effectMap.set(e,c)),o.push({postProcessingEffect:c,effect:t})}return o},e}();e.EffectManager=i,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
