{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/GeometryUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/BackgroundPrograms.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushBitmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushClip.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLBackground.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLCircle.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLFill.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLLine.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLSymbol.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrush.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushFill.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLabel.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLine.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushMarker.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushText.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/raster/BrushRasterBitmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/brushes.js","webpack:///./node_modules/@arcgis/core/views/webgl/ShaderCompiler.js","webpack:///./node_modules/@arcgis/core/chunks/vec4f32.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/TileInfoPrograms.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushInfo.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/VertexStream.js","webpack:///./node_modules/@arcgis/core/views/webgl/reservedWordsGLSL3.js","webpack:///./node_modules/@arcgis/core/views/webgl/ShaderTranspiler.js","webpack:///./node_modules/@arcgis/core/views/webgl/Program.js","webpack:///./node_modules/@arcgis/core/chunks/earcut.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/Mesh2D.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/ClippingInfo.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/WGLContainer.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/shaderRepository.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/resolver.js","webpack:///./node_modules/@arcgis/core/views/webgl/programUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushStencil.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrush.js"],"names":["Number","POSITIVE_INFINITY","t","Math","PI","o","c","N","LN2","a","n","h","M","P","log","g","r","e","shaders","vertexShader","fragmentShader","attributes","Map","nearest","defines","samplingMode","mips","bilinear","bicubic","trilinear","i","state","resolution","pixelRatio","round","rotation","isSourceScaled","super","arguments","this","_desc","vsPath","fsPath","_quad","dispose","context","setBlendingEnabled","blendFunction","setBlendFunctionSeparate","setColorMask","setStencilWriteMask","setStencilTestEnabled","setStencilFunction","stencilRef","s","renderingOptions","painter","source","timeline","begin","name","d","materialManager","getProgram","coordScale","l","computedOpacity","m","transforms","p","setSamplingProfile","bind","useProgram","setUniformMatrix3fv","dvs","setUniform1i","setUniform2fv","setUniform1f","draw","end","geometry","location","count","type","_color","_program","setFaceCullingEnabled","setStencilOp","getVAO","bufferLayouts","indexBuffer","setUniform4fv","displayMat3","bindVAO","drawElements","size","_patternMatrix","_programOptions","id","pattern","_vao","styleLayerUID","f","_loadWGLResources","displayLevel","u","styleLayer","backgroundMaterial","_","vectorTilesMaterialManager","getPaintValue","b","j","v","window","devicePixelRatio","x","spriteMosaic","y","w","U","drawPhase","HITTEST","k","L","getMaterialProgram","getMosaicItemPosition","tl","br","page","getPageSize","setUniform4f","z","coordRange","max","key","level","drawArrays","Int8Array","createVertex","getAttributeLocations","getLayoutInfo","requiredLevel","some","layerData","get","circleIndexCount","circleMaterial","displayViewMat3","has","setDataUniforms","prepareForRendering","circleVertexArrayObject","Uint32Array","BYTES_PER_ELEMENT","circleIndexStart","triangleCount","_fillProgramOptions","_outlineProgramOptions","renderPass","fillIndexCount","outlineIndexCount","getPaintProperty","isDataDriven","getValue","_drawFill","hasDataDrivenOutlineColor","outlineUsesFillColor","_drawOutline","E","fillMaterial","T","D","I","S","fillVertexArrayObject","patternMap","fillIndexStart","outlineMaterial","outlineVertexArrayObject","outlineIndexStart","sdf","lineIndexCount","lineMaterial","V","getDashKey","getLayoutValue","lineVertexArrayObject","lineIndexStart","_iconProgramOptions","_sdfProgramOptions","_spritesTextureSize","_drawIcons","_drawText","iconMaterial","iconPerPageElementsMap","isIconSDF","updateOpacityInfo","iconVertexArrayObject","performance","now","lastOpacityUpdate","_renderIconRange","getWidth","getHeight","glyphMosaic","textMaterial","glyphPerPageElementsMap","O","_glyphTextureSize","width","height","R","A","F","W","textVertexArrayObject","forEach","_renderGlyphRange","indexOf","getGeometryType","commit","getGeometry","attributeView","bindTextures","forEachCommand","drawGeometry","data","dotDensity","normalized","_dotTextureSize","_dotTextures","_dotSamplers","Int32Array","_disposeTextures","FILL","rendererInfo","load","materialKey","_setSharedUniforms","textureBinding","textureManager","vvColor","setUniform1fv","vvColorValues","vvColors","vvOpacity","vvOpacityValues","vvOpacities","ddDotSize","ddDotScale","scale","setUniformMatrix4fv","ddColors","ddActiveDots","ddBackgroundColor","ddDotValue","_bindDotDensityTextures","length","_createDotDensityTextures","ddSeed","setUniform1iv","bindTexture","_seed","_allocDotDensityTexture","Float32Array","getFloat","wrapMode","pixelFormat","dataType","LABEL","mapAligned","abs","vvSizeMinMaxValue","vvSizeScaleStops","vvSizeScaleStopsValue","vvSizeFieldStops","getSizeVVFieldStops","values","sizes","vvSizeUnitValue","vvSizeUnitValueToPixelsRatio","floor","LINE","MARKER","vvRotation","vvMaterialParameters","vvRotationType","TEXT","lut","stretch","hillshade","_rendererUniformInfos","suspended","capabilities","textureFloat","textureFloatLinear","updateTexture","getShaderVariations","symbolizerParameters","drawWithProgram","transformGrid","opacity","getUniformInfos","names","textures","getTextures","u_coordScale","u_dvsMat3","colormap","colormapOffset","join","set","interpolation","push","isRendereredSource","marker","line","fill","text","label","clip","stencil","bitmap","raster","tileInfo","vtlBackground","vtlFill","vtlLine","vtlCircle","vtlSymbol","readFile","resolve","read","Error","exec","path","start","index","slice","Object","freeze","__proto__","create","clone","fromValues","createView","zeros","ones","unitX","unitY","unitZ","unitW","ZEROS","ONES","UNIT_X","UNIT_Y","UNIT_Z","UNIT_W","_outlineProgram","_tileInfoProgram","_outlineVertexArrayObject","_tileInfoVertexArrayObject","_canvas","isReady","setUniform2f","_getTexture","descriptor","offset","stride","divisor","texture","triangleCountReportedInDebug","document","createElement","setAttribute","getContext","font","textAlign","textBaseline","clearRect","fillStyle","fillRect","fillText","target","rctx","_vertexBuffer","Uint16Array","_count","unbind","G","X","replace","C","position","column","$","Z","q","B","test","concat","map","splice","match","toString","parseInt","trim","_context","_locations","_vShader","_fShader","_nameToUniformLocation","_nameToUniform1","_nameToUniform1v","_nameToUniform2","_nameToUniform3","_nameToUniform4","_nameToUniformMatrix3","_nameToUniformMatrix4","console","error","gl","createProgram","attachShader","bindAttribLocation","linkProgram","getProgramParameter","LINK_STATUS","VALIDATE_STATUS","getError","getProgramInfoLog","_glName","instanceCounter","increment","Program","deleteShader","deleteProgram","decrement","getUniformLocation","_getUniformLocation","uniform1i","uniform1iv","Array","from","uniform2iv","uniform3iv","uniform4iv","uniform1f","uniform1fv","uniform2f","uniform2fv","uniform3f","uniform3fv","uniform4f","uniform4fv","uniformMatrix3fv","uniformMatrix4fv","locations","webglVersion","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","exports","next","prev","steiner","prevZ","nextZ","sort","min","deviation","flatten","vertices","holes","dimensions","getLogger","coords","lengths","_cache","indices","primitiveType","isMapSpace","fromScreenExtent","xmin","ymin","xmax","ymax","fromPolygon","fromMapExtent","fromRect","toScreen","vertexBuffers","createIndex","keys","reduce","parseFloat","_clip","stage","_handle","watch","_invalidate","ready","mesh","destroy","vao","_destroyGL","remove","_lastWidth","_lastHeight","_createMesh","getIndexBuffer","getVertexBuffers","requestRender","left","right","top","bottom","_createScreenRect","fromPath","fromGeometry","constructor","_clips","children","clips","_updateClippingInfo","createRenderParams","globalOpacity","profiler","recordContainerStart","beforeRenderLayer","_clippingInfos","updateTransforms","renderChildren","compositeLayer","recordContainerEnd","_renderPasses","prepareRenderPasses","beforeRender","render","afterRender","requireFBO","requiresDedicatedFBO","registerRenderPass","brushes","MAP","LABEL_ALPHA","DEBUG","HIGHLIGHT","setTransform","onAttach","onDetach","items","fromClipArea","background","bitBlit","blend","filtering","fx","integrate","highlight","magnifier","materials","icon","blit","bloom","composite","gaussianBlur","luminosityHighPass","blur","dra","sobel","filterEffect","pp","common","util","split","resolveIncludes","toFixed","options","value","_initialized","_solidProgram","_solidVertexArrayObject","setDepthWriteEnabled","setDepthTestEnabled","setStencilFunctionSeparate","_initialize"],"mappings":"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","file":"js/chunk-6c292e34.401a727c.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nconst n=Number.POSITIVE_INFINITY,t=Math.PI,r=2*t,u=t/2,o=128/t,e=t/128,c=256/360,f=t/180,i=1.414213562,I=1/i,N=1/Math.LN2;function a(n,t){return(n%=t)>=0?n:n+t}function h(n){return a(n*o,256)}function M(n){return a(n*c,256)}function P(n){return Math.log(n)*N}function T(n){return n*n}function b(n,t,r){return n*(1-r)+t*r}function g(n,t,r){return n>=t&&n<=r||n>=r&&n<=t}export{e as C_256_TO_RAD,r as C_2PI,c as C_DEG_TO_256,f as C_DEG_TO_RAD,n as C_INFINITY,t as C_PI,u as C_PI_BY_2,o as C_RAD_TO_256,i as C_SQRT2,I as C_SQRT2_INV,g as between,M as degToByte,b as interpolate,P as log2,a as positiveMod,h as radToByte,T as sqr};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{resolveIncludes as r}from\"./sources/resolver.js\";const e={shaders:{vertexShader:r(\"background/background.vert\"),fragmentShader:r(\"background/background.frag\")},attributes:new Map([[\"a_pos\",0]])};export{e as background};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{TEXTURE_BINDING_BITMAP as e}from\"../definitions.js\";import t from\"../VertexStream.js\";import i from\"./WGLBrush.js\";const s={nearest:{defines:[],samplingMode:9728,mips:!1},bilinear:{defines:[],samplingMode:9729,mips:!1},bicubic:{defines:[\"bicubic\"],samplingMode:9729,mips:!1},trilinear:{defines:[],samplingMode:9987,mips:!0}},n=(e,t,i)=>{if(\"dynamic\"===i.samplingMode){const{state:i}=e,n=t.resolution/t.pixelRatio/i.resolution,a=Math.round(e.pixelRatio)!==e.pixelRatio,r=n>1.05||n<.95;return i.rotation||r||a||t.isSourceScaled||t.rotation?s.bilinear:s.nearest}return s[i.samplingMode]};class a extends i{constructor(){super(...arguments),this._desc={vsPath:\"raster/bitmap\",fsPath:\"raster/bitmap\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])}}dispose(){this._quad&&this._quad.dispose()}prepareState({context:e},t){e.setBlendingEnabled(!0),\"additive\"===t.blendFunction?e.setBlendFunctionSeparate(1,1,1,1):e.setBlendFunctionSeparate(1,771,1,771),e.setColorMask(!0,!0,!0,!0),e.setStencilWriteMask(0),e.setStencilTestEnabled(!0),e.setStencilFunction(514,t.stencilRef,255)}draw(i,s){const{context:a,renderingOptions:r,painter:o}=i;if(!s.source)return;i.timeline.begin(this.name),this._quad||(this._quad=new t(a,[0,0,1,0,0,1,1,1]));const d=n(i,s,r),c=o.materialManager.getProgram(i,this._desc,d.defines),{coordScale:l,computedOpacity:m,transforms:p}=s;s.setSamplingProfile(d),s.bind(i.context,e),a.useProgram(c),c.setUniformMatrix3fv(\"u_dvsMat3\",p.dvs),c.setUniform1i(\"u_texture\",e),c.setUniform2fv(\"u_coordScale\",l),c.setUniform1f(\"u_opacity\",m),this._quad.draw(),i.timeline.end(this.name)}}export default a;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as t}from\"../../../../../core/maybe.js\";import{f as r}from\"../../../../../chunks/vec4f32.js\";import{createProgramDescriptor as s}from\"../Utils.js\";import e from\"./WGLBrush.js\";import{background as o}from\"../shaders/BackgroundPrograms.js\";import{createProgram as i}from\"../../../../webgl/programUtils.js\";const a=()=>s(\"clip\",{geometry:[{location:0,name:\"a_pos\",count:2,type:5122}]});class n extends e{constructor(){super(...arguments),this._color=r(0,1,0,1)}dispose(){this._program&&this._program.dispose()}prepareState({context:t}){t.setStencilTestEnabled(!0),t.setBlendingEnabled(!1),t.setFaceCullingEnabled(!1),t.setColorMask(!1,!1,!1,!1),t.setStencilOp(7680,7680,7681),t.setStencilWriteMask(255),t.setStencilFunction(519,0,255)}draw(r,s){const{context:e,state:n}=r,m=a(),p=s.getVAO(e,n,m.attributes,m.bufferLayouts);t(p.indexBuffer)||(this._program||(this._program=i(e,o)),e.useProgram(this._program),this._program.setUniform2fv(\"u_coord_range\",[1,1]),this._program.setUniform4fv(\"u_color\",this._color),this._program.setUniformMatrix3fv(\"u_dvsMat3\",n.displayMat3),e.bindVAO(p),e.drawElements(4,p.indexBuffer.size,5125,0),e.bindVAO())}}export default n;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{nextPowerOfTwo as t}from\"../../../../../core/mathUtils.js\";import{isSome as r}from\"../../../../../core/maybe.js\";import{c as e}from\"../../../../../chunks/mat3f32.js\";import{f as o}from\"../../../../../chunks/vec4f32.js\";import i from\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/enums.js\";import\"../../../../webgl/RenderingContext.js\";import\"../../../../../chunks/builtins.js\";import\"../../../../webgl/Texture.js\";import s from\"../../../../webgl/VertexArrayObject.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as a,VTL_HIGH_RES_CUTOFF as n}from\"../definitions.js\";import{WGLDrawPhase as c}from\"../enums.js\";import{u32to4Xu8 as m}from\"../number.js\";import f from\"./WGLBrush.js\";class l extends f{constructor(){super(...arguments),this._color=o(1,0,0,1),this._patternMatrix=e(),this._programOptions={id:!1,pattern:!1}}dispose(){this._vao&&(this._vao.dispose(),this._vao=null)}drawMany(e,o){const{context:i,painter:s,styleLayerUID:f}=e;this._loadWGLResources(e);const l=e.displayLevel,u=e.styleLayer,p=u.backgroundMaterial,_=s.vectorTilesMaterialManager,d=u.getPaintValue(\"background-color\",l),g=u.getPaintValue(\"background-opacity\",l),h=u.getPaintValue(\"background-pattern\",l),b=void 0!==h,j=d[3]*g,v=1|window.devicePixelRatio,x=e.spriteMosaic;let y,M;const w=v>n?2:1,U=e.drawPhase===c.HITTEST,k=this._programOptions;k.id=U,k.pattern=b;const L=_.getMaterialProgram(i,p,k);if(i.bindVAO(this._vao),i.useProgram(L),b){const t=x.getMosaicItemPosition(h,!0);if(r(t)){const{tl:e,br:o,page:s}=t;y=o[0]-e[0],M=o[1]-e[1];const n=x.getPageSize(s);r(n)&&(x.bind(i,9729,s,a),L.setUniform4f(\"u_tlbr\",e[0],e[1],o[0],o[1]),L.setUniform2fv(\"u_mosaicSize\",n),L.setUniform1i(\"u_texture\",a))}L.setUniform1f(\"u_opacity\",g)}else this._color[0]=j*d[0],this._color[1]=j*d[1],this._color[2]=j*d[2],this._color[3]=j,L.setUniform4fv(\"u_color\",this._color);if(L.setUniform1f(\"u_depth\",u.z||0),U){const t=m(f+1);L.setUniform4fv(\"u_id\",t)}for(const r of o){if(L.setUniform1f(\"u_coord_range\",r.coordRange[0]),L.setUniformMatrix3fv(\"u_dvsMat3\",r.transforms.dvs),b){const e=Math.max(2**(Math.round(l)-r.key.level),1),o=w*r.size[0]*e,i=o/t(y),s=o/t(M);this._patternMatrix[0]=i,this._patternMatrix[4]=s,L.setUniformMatrix3fv(\"u_pattern_matrix\",this._patternMatrix)}i.setStencilFunction(514,r.stencilRef,255),i.drawArrays(5,0,4)}}_loadWGLResources(t){if(this._vao)return;const{context:r,styleLayer:e}=t,o=e.backgroundMaterial,a=new Int8Array([0,0,1,0,0,1,1,1]),n=i.createVertex(r,35044,a),c=new s(r,o.getAttributeLocations(),o.getLayoutInfo(),{geometry:n});this._vao=c}}export{l as WGLBrushVTLBackground};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as e}from\"../../../../../core/maybe.js\";import{WGLDrawPhase as t}from\"../enums.js\";import{u32to4Xu8 as r}from\"../number.js\";import a from\"./WGLBrush.js\";class i extends a{constructor(){super(...arguments),this._programOptions={id:!1}}dispose(){}drawMany(a,i){const{context:n,displayLevel:s,requiredLevel:o,state:l,drawPhase:c,painter:u,spriteMosaic:d,styleLayerUID:f}=a;if(!i.some((e=>{var t,r;return null!=(t=null==(r=e.layerData.get(f))?void 0:r.circleIndexCount)&&t})))return;const m=a.styleLayer,p=m.circleMaterial,y=u.vectorTilesMaterialManager,v=1.2,g=m.getPaintValue(\"circle-translate\",s),M=m.getPaintValue(\"circle-translate-anchor\",s),x=c===t.HITTEST,_=this._programOptions;_.id=x;const U=y.getMaterialProgram(n,p,_);n.useProgram(U),U.setUniformMatrix3fv(\"u_displayMat3\",1===M?l.displayMat3:l.displayViewMat3),U.setUniform2fv(\"u_circleTranslation\",g),U.setUniform1f(\"u_depth\",m.z),U.setUniform1f(\"u_antialiasingWidth\",v);let h=-1;if(x){const e=r(f+1);U.setUniform4fv(\"u_id\",e)}for(const t of i){if(!t.layerData.has(f))continue;t.key.level!==h&&(h=t.key.level,p.setDataUniforms(U,s,m,h,d));const r=t.layerData.get(f);if(!r.circleIndexCount)continue;r.prepareForRendering(n);const a=r.circleVertexArrayObject;e(a)||(n.bindVAO(a),U.setUniformMatrix3fv(\"u_dvsMat3\",t.transforms.dvs),o!==t.key.level?n.setStencilFunction(514,t.stencilRef,255):n.setStencilFunction(516,255,255),n.drawElements(4,r.circleIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*r.circleIndexStart),t.triangleCount+=r.circleIndexCount/3)}}}export{i as WGLBrushVTLCircle};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as t,isSome as e}from\"../../../../../core/maybe.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as i,VTL_HIGH_RES_CUTOFF as a}from\"../definitions.js\";import{WGLDrawPhase as n}from\"../enums.js\";import{u32to4Xu8 as r}from\"../number.js\";import o from\"./WGLBrush.js\";const l=1/65536;class s extends o{constructor(){super(...arguments),this._fillProgramOptions={id:!1,pattern:!1},this._outlineProgramOptions={id:!1}}dispose(){}drawMany(t,e){const{displayLevel:i,drawPhase:a,renderPass:o,spriteMosaic:l,styleLayerUID:s}=t;let f=!1;for(const n of e)if(n.layerData.has(s)){const t=n.layerData.get(s);if(t.fillIndexCount>0||t.outlineIndexCount>0){f=!0;break}}if(!f)return;const u=t.styleLayer,c=u.getPaintProperty(\"fill-pattern\"),d=void 0!==c,m=d&&c.isDataDriven;let p;if(d&&!m){const t=c.getValue(i);p=l.getMosaicItemPosition(t,!0)}const y=!d&&u.getPaintValue(\"fill-antialias\",i);let g=!0,M=1;if(!d){const t=u.getPaintProperty(\"fill-color\"),e=u.getPaintProperty(\"fill-opacity\");if(!(null!=t&&t.isDataDriven||null!=e&&e.isDataDriven)){const t=u.getPaintValue(\"fill-color\",i);M=u.getPaintValue(\"fill-opacity\",i)*t[3],M>=1&&(g=!1)}}if(g&&\"opaque\"===o)return;let _;a===n.HITTEST&&(_=r(s+1));const v=u.getPaintValue(\"fill-translate\",i),P=u.getPaintValue(\"fill-translate-anchor\",i);(g||\"translucent\"!==o)&&this._drawFill(t,s,u,e,v,P,d,p,m,_);const x=!u.hasDataDrivenOutlineColor&&u.outlineUsesFillColor&&M<1;y&&\"opaque\"!==o&&!x&&this._drawOutline(t,s,u,e,v,P,_)}_drawFill(r,o,s,f,u,c,d,m,p,y){if(d&&t(m))return;const{context:g,displayLevel:M,state:_,drawPhase:v,painter:P,pixelRatio:x,spriteMosaic:U}=r,E=s.fillMaterial,h=P.vectorTilesMaterialManager,T=x>a?2:1,D=v===n.HITTEST,I=this._fillProgramOptions;I.id=D,I.pattern=d;const w=h.getMaterialProgram(g,E,I);if(g.useProgram(w),e(m)){const{page:t}=m,a=U.getPageSize(t);e(a)&&(U.bind(g,9729,t,i),w.setUniform2fv(\"u_mosaicSize\",a),w.setUniform1i(\"u_texture\",i))}w.setUniformMatrix3fv(\"u_displayMat3\",1===c?_.displayMat3:_.displayViewMat3),w.setUniform2fv(\"u_fillTranslation\",u),w.setUniform1f(\"u_depth\",s.z+l),D&&w.setUniform4fv(\"u_id\",y);let S=-1;for(const a of f){if(!a.layerData.has(o))continue;a.key.level!==S&&(S=a.key.level,E.setDataUniforms(w,M,s,S,U));const n=a.layerData.get(o);if(!n.fillIndexCount)continue;n.prepareForRendering(g);const r=n.fillVertexArrayObject;if(!t(r)){if(g.bindVAO(r),w.setUniformMatrix3fv(\"u_dvsMat3\",a.transforms.dvs),g.setStencilFunction(514,a.stencilRef,255),d){const t=Math.max(2**(Math.round(M)-a.key.level),1),e=a.coordRange[0]/(T*a.size[0]*t);w.setUniform1f(\"u_patternFactor\",e)}if(p){const t=n.patternMap;if(!t)continue;for(const[a,n]of t){const t=U.getPageSize(a);e(t)&&(U.bind(g,9729,a,i),w.setUniform2fv(\"u_mosaicSize\",t),w.setUniform1i(\"u_texture\",i),g.drawElements(4,n[1],5125,Uint32Array.BYTES_PER_ELEMENT*n[0]))}}else g.drawElements(4,n.fillIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*n.fillIndexStart);a.triangleCount+=n.fillIndexCount/3}}}_drawOutline(e,i,a,r,o,s,f){const{context:u,displayLevel:c,state:d,drawPhase:m,painter:p,pixelRatio:y,spriteMosaic:g}=e,M=a.outlineMaterial,_=p.vectorTilesMaterialManager,v=.75/y,P=m===n.HITTEST,x=this._outlineProgramOptions;x.id=P;const U=_.getMaterialProgram(u,M,x);u.useProgram(U),U.setUniformMatrix3fv(\"u_displayMat3\",1===s?d.displayMat3:d.displayViewMat3),U.setUniform2fv(\"u_fillTranslation\",o),U.setUniform1f(\"u_depth\",a.z+l),U.setUniform1f(\"u_outline_width\",v),P&&U.setUniform4fv(\"u_id\",f);let E=-1;for(const n of r){if(!n.layerData.has(i))continue;n.key.level!==E&&(E=n.key.level,M.setDataUniforms(U,c,a,E,g));const e=n.layerData.get(i);if(e.prepareForRendering(u),!e.outlineIndexCount)continue;const r=e.outlineVertexArrayObject;t(r)||(u.bindVAO(r),U.setUniformMatrix3fv(\"u_dvsMat3\",n.transforms.dvs),u.setStencilFunction(514,n.stencilRef,255),u.drawElements(4,e.outlineIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*e.outlineIndexStart),n.triangleCount+=e.outlineIndexCount/3)}}}export{s as WGLBrushVTLFill};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../../../core/maybe.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as i}from\"../definitions.js\";import{WGLDrawPhase as n}from\"../enums.js\";import{u32to4Xu8 as a}from\"../number.js\";import r from\"./WGLBrush.js\";class o extends r{constructor(){super(...arguments),this._programOptions={id:!1,pattern:!1,sdf:!1}}dispose(){}drawMany(r,o){const{context:s,displayLevel:l,state:f,drawPhase:m,painter:u,pixelRatio:c,spriteMosaic:d,styleLayerUID:p}=r;if(!o.some((e=>{var t,i;return null!=(t=null==(i=e.layerData.get(p))?void 0:i.lineIndexCount)&&t})))return;const g=r.styleLayer,y=g.lineMaterial,M=u.vectorTilesMaterialManager,v=g.getPaintValue(\"line-translate\",l),_=g.getPaintValue(\"line-translate-anchor\",l),U=g.getPaintProperty(\"line-pattern\"),x=void 0!==U,P=x&&U.isDataDriven;let E,D;if(x&&!P){const e=U.getValue(l);E=d.getMosaicItemPosition(e)}let V=!1;if(!x){const e=g.getPaintProperty(\"line-dasharray\");if(D=void 0!==e,V=D&&e.isDataDriven,D&&!V){const t=e.getValue(l),i=g.getDashKey(t,g.getLayoutValue(\"line-cap\",l));E=d.getMosaicItemPosition(i)}}const h=1/c,I=m===n.HITTEST,S=this._programOptions;S.id=I,S.pattern=x,S.sdf=D;const T=M.getMaterialProgram(s,y,S);if(s.useProgram(T),T.setUniformMatrix3fv(\"u_displayViewMat3\",f.displayViewMat3),T.setUniformMatrix3fv(\"u_displayMat3\",1===_?f.displayMat3:f.displayViewMat3),T.setUniform2fv(\"u_lineTranslation\",v),T.setUniform1f(\"u_depth\",g.z),T.setUniform1f(\"u_antialiasing\",h),I){const e=a(p+1);T.setUniform4fv(\"u_id\",e)}if(E&&e(E)){const{page:t}=E,n=d.getPageSize(t);e(n)&&(d.bind(s,9729,t,i),T.setUniform2fv(\"u_mosaicSize\",n),T.setUniform1i(\"u_texture\",i))}let w=-1;for(const n of o){if(!n.layerData.has(p))continue;n.key.level!==w&&(w=n.key.level,y.setDataUniforms(T,l,g,w,d));const a=2**(l-w)/c;T.setUniform1f(\"u_zoomFactor\",a);const r=n.layerData.get(p);if(!r.lineIndexCount)continue;r.prepareForRendering(s);const o=r.lineVertexArrayObject;if(!t(o)){if(s.bindVAO(o),T.setUniformMatrix3fv(\"u_dvsMat3\",n.transforms.dvs),s.setStencilFunction(514,n.stencilRef,255),P||V){const t=r.patternMap;if(!t)continue;for(const[n,a]of t){const t=d.getPageSize(n);e(t)&&(d.bind(s,9729,n,i),T.setUniform2fv(\"u_mosaicSize\",t),T.setUniform1i(\"u_texture\",i),s.drawElements(4,a[1],5125,Uint32Array.BYTES_PER_ELEMENT*a[0]))}}else s.drawElements(4,r.lineIndexCount,5125,Uint32Array.BYTES_PER_ELEMENT*r.lineIndexStart);n.triangleCount+=r.lineIndexCount/3}}}}export{o as WGLBrushVTLLine};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as e}from\"../../../../../core/maybe.js\";import{c as t,f as a}from\"../../../../../chunks/vec2f32.js\";import{FADE_DURATION as i}from\"../../vectorTiles/decluttering/config.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as r,VTL_TEXTURE_BINDING_UNIT_GLYPHS as s}from\"../definitions.js\";import{WGLDrawPhase as n}from\"../enums.js\";import{degToByte as o}from\"../GeometryUtils.js\";import{u32to4Xu8 as l}from\"../number.js\";import f from\"./WGLBrush.js\";const c=1/65536;class p extends f{constructor(){super(...arguments),this._iconProgramOptions={id:!1,sdf:!1},this._sdfProgramOptions={id:!1},this._spritesTextureSize=t()}dispose(){}drawMany(e,t){const{drawPhase:a,styleLayerUID:i}=e,r=e.styleLayer;let s;a===n.HITTEST&&(s=l(i+1)),this._drawIcons(e,r,t,s),this._drawText(e,r,t,s)}_drawIcons(t,a,s,l){const{context:f,displayLevel:c,drawPhase:p,painter:u,spriteMosaic:m,state:g,styleLayerUID:y}=t,d=a.iconMaterial,_=u.vectorTilesMaterialManager;let h,M=!1;for(const e of s)if(e.layerData.has(y)&&(h=e.layerData.get(y),h.iconPerPageElementsMap.size>0)){M=!0;break}if(!M)return;const U=a.getPaintValue(\"icon-translate\",c),P=a.getPaintValue(\"icon-translate-anchor\",c);let x=a.getLayoutValue(\"icon-rotation-alignment\",c);2===x&&(x=0===a.getLayoutValue(\"symbol-placement\",c)?1:0);const v=0===x,T=a.getLayoutValue(\"icon-keep-upright\",c)&&v,E=h.isIconSDF,D=p===n.HITTEST,V=this._iconProgramOptions;V.id=D,V.sdf=E;const S=_.getMaterialProgram(f,d,V);f.useProgram(S),S.setUniformMatrix3fv(\"u_displayViewMat3\",0===x?g.displayViewMat3:g.displayMat3),S.setUniformMatrix3fv(\"u_displayMat3\",1===P?g.displayMat3:g.displayViewMat3),S.setUniform2fv(\"u_iconTranslation\",U),S.setUniform1f(\"u_depth\",a.z),S.setUniform1f(\"u_mapRotation\",o(g.rotation)),S.setUniform1f(\"u_keepUpright\",T?1:0),S.setUniform1f(\"u_level\",10*c),S.setUniform1i(\"u_texture\",r),S.setUniform1f(\"u_fadeDuration\",i/1e3),D&&S.setUniform4fv(\"u_id\",l);let w=-1;for(const i of s){if(!i.layerData.has(y))continue;if(i.key.level!==w&&(w=i.key.level,d.setDataUniforms(S,c,a,w,m)),h=i.layerData.get(y),0===h.iconPerPageElementsMap.size)continue;h.prepareForRendering(f),h.updateOpacityInfo();const r=h.iconVertexArrayObject;if(!e(r)){f.bindVAO(r),S.setUniformMatrix3fv(\"u_dvsMat3\",i.transforms.dvs),S.setUniform1f(\"u_time\",(performance.now()-h.lastOpacityUpdate)/1e3);for(const[e,a]of h.iconPerPageElementsMap)this._renderIconRange(t,S,a,e,i)}}}_renderIconRange(e,t,a,i,s){const{context:n,spriteMosaic:o}=e;this._spritesTextureSize[0]=o.getWidth(i)/4,this._spritesTextureSize[1]=o.getHeight(i)/4,t.setUniform2fv(\"u_mosaicSize\",this._spritesTextureSize),o.bind(n,9729,i,r),n.setStencilTestEnabled(!0),n.setStencilFunction(516,255,255),n.setStencilWriteMask(0),n.drawElements(4,a[1],5125,Uint32Array.BYTES_PER_ELEMENT*a[0]),s.triangleCount+=a[1]/3}_drawText(t,r,l,f){const{context:p,displayLevel:u,drawPhase:m,glyphMosaic:g,painter:y,pixelRatio:d,spriteMosaic:_,state:h,styleLayerUID:M}=t,U=r.textMaterial,P=y.vectorTilesMaterialManager;let x,v=!1;for(const e of l)if(e.layerData.has(M)&&(x=e.layerData.get(M),x.glyphPerPageElementsMap.size>0)){v=!0;break}if(!v)return;const T=r.getPaintProperty(\"text-opacity\");if(T&&!T.isDataDriven&&0===T.getValue(u))return;const E=r.getPaintProperty(\"text-color\"),D=!E||E.isDataDriven||E.getValue(u)[3]>0,V=r.getPaintProperty(\"text-halo-width\"),S=r.getPaintProperty(\"text-halo-color\"),w=(!V||V.isDataDriven||V.getValue(u)>0)&&(!S||S.isDataDriven||S.getValue(u)[3]>0);if(!D&&!w)return;const L=24/8;let z=r.getLayoutValue(\"text-rotation-alignment\",u);2===z&&(z=0===r.getLayoutValue(\"symbol-placement\",u)?1:0);const b=0===z,k=r.getLayoutValue(\"text-keep-upright\",u)&&b,I=m===n.HITTEST,O=.8*L/d;this._glyphTextureSize||(this._glyphTextureSize=a(g.width/4,g.height/4));const R=r.getPaintValue(\"text-translate\",u),j=r.getPaintValue(\"text-translate-anchor\",u),A=this._sdfProgramOptions;A.id=I;const F=P.getMaterialProgram(p,U,A);p.useProgram(F),F.setUniformMatrix3fv(\"u_displayViewMat3\",0===z?h.displayViewMat3:h.displayMat3),F.setUniformMatrix3fv(\"u_displayMat3\",1===j?h.displayMat3:h.displayViewMat3),F.setUniform2fv(\"u_textTranslation\",R),F.setUniform1f(\"u_depth\",r.z+c),F.setUniform2fv(\"u_mosaicSize\",this._glyphTextureSize),F.setUniform1f(\"u_mapRotation\",o(h.rotation)),F.setUniform1f(\"u_keepUpright\",k?1:0),F.setUniform1f(\"u_level\",10*u),F.setUniform1i(\"u_texture\",s),F.setUniform1f(\"u_antialiasingWidth\",O),F.setUniform1f(\"u_fadeDuration\",i/1e3),I&&F.setUniform4fv(\"u_id\",f);let W=-1;for(const a of l){if(!a.layerData.has(M))continue;if(a.key.level!==W&&(W=a.key.level,U.setDataUniforms(F,u,r,W,_)),x=a.layerData.get(M),0===x.glyphPerPageElementsMap.size)continue;x.prepareForRendering(p),x.updateOpacityInfo();const t=x.textVertexArrayObject;if(e(t))continue;p.bindVAO(t),F.setUniformMatrix3fv(\"u_dvsMat3\",a.transforms.dvs),p.setStencilTestEnabled(!0),p.setStencilFunction(516,255,255),p.setStencilWriteMask(0);const i=(performance.now()-x.lastOpacityUpdate)/1e3;F.setUniform1f(\"u_time\",i),x.glyphPerPageElementsMap.forEach(((e,t)=>{this._renderGlyphRange(p,e,t,g,F,w,D,a)}))}}_renderGlyphRange(e,t,a,i,r,n,o,l){i.bind(e,9729,a,s),n&&(r.setUniform1f(\"u_halo\",1),e.drawElements(4,t[1],5125,Uint32Array.BYTES_PER_ELEMENT*t[0]),l.triangleCount+=t[1]/3),o&&(r.setUniform1f(\"u_halo\",0),e.drawElements(4,t[1],5125,Uint32Array.BYTES_PER_ELEMENT*t[0]),l.triangleCount+=t[1]/3)}}export{p as WGLBrushVTLSymbol};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as t}from\"../../../../../core/maybe.js\";import{MIN_MAX_ZOOM_PRECISION_FACTOR as e,TEXTURE_BINDING_ATTRIBUTE_DATA_0 as i,TEXTURE_BINDING_ATTRIBUTE_DATA_1 as r,TEXTURE_BINDING_ATTRIBUTE_DATA_2 as s,TEXTURE_BINDING_ATTRIBUTE_DATA_3 as a}from\"../definitions.js\";import n from\"./WGLBrush.js\";class o extends n{prepareState({context:t},e,i){const r=i&&-1!==i.indexOf(\"id\");t.setBlendingEnabled(!r),t.setBlendFunctionSeparate(1,771,1,771),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!0),t.setStencilFunction(514,e.stencilRef,255)}draw(e,i,r){const s=this.getGeometryType();i.commit(e);const a=i.getGeometry(s);t(a)||(e.timeline.begin(this.name),e.attributeView.bindTextures(e.context),a.forEachCommand((t=>this.drawGeometry(e,i,t,r))))}_setSharedUniforms(t,n,o){const{displayLevel:m,pixelRatio:u,state:f}=n;t.setUniform1f(\"u_pixelRatio\",u),t.setUniformMatrix3fv(\"u_dvsMat3\",o.transforms.dvs),t.setUniformMatrix3fv(\"u_displayViewMat3\",f.displayViewMat3),t.setUniform1f(\"u_currentZoom\",Math.round(m*e)),t.setUniform1i(\"u_attributeTextureSize\",n.attributeView.size),t.setUniform1i(\"u_attributeData0\",i),t.setUniform1i(\"u_attributeData1\",r),t.setUniform1i(\"u_attributeData2\",s),t.setUniform1i(\"u_attributeData3\",a)}}export default o;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"../../../../../core/RandomLCG.js\";import\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/enums.js\";import\"../../../../webgl/RenderingContext.js\";import\"../../../../../chunks/builtins.js\";import t from\"../../../../webgl/Texture.js\";import\"../../../../webgl/VertexArrayObject.js\";import{TEXTURE_BINDING_RENDERER_0 as o,TEXTURE_BINDING_RENDERER_1 as i,TILE_SIZE as r}from\"../definitions.js\";import{WGLGeometryType as s}from\"../enums.js\";import{createProgramDescriptor as a}from\"../Utils.js\";import n from\"./WGLGeometryBrush.js\";import{FillMaterialKey as l}from\"../materialKey/MaterialKey.js\";const u=e=>a(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},...e.dotDensity?[]:[{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_tlbr\",count:4,type:5123},{location:4,name:\"a_aux1\",count:4,type:5121},{location:5,name:\"a_aux2\",count:2,type:5123},{location:6,name:\"a_aux3\",count:4,type:5121},{location:7,name:\"a_zoomRange\",count:2,type:5123}],...e.dotDensity?[{location:2,name:\"a_inverseArea\",count:1,type:5126}]:[]]});class d extends n{constructor(){super(...arguments),this._dotTextureSize=0,this._dotTextures=null,this._dotSamplers=new Int32Array([o,i])}dispose(){this._disposeTextures()}getGeometryType(){return s.FILL}drawGeometry(e,t,o,i){const{context:s,painter:a,rendererInfo:n,requiredLevel:d}=e,m=l.load(o.materialKey),{bufferLayouts:c,attributes:f}=u(m),_=a.materialManager.getMaterialProgram(e,m,\"materials/fill\",f,i);if(s.useProgram(_),this._setSharedUniforms(_,e,t),m.textureBinding){a.textureManager.bindTextures(s,_,m);const o=1/2**(d-t.key.level)/e.pixelRatio;_.setUniform1f(\"u_zoomFactor\",o)}if(m.vvColor&&(_.setUniform1fv(\"u_vvColorValues\",n.vvColorValues),_.setUniform4fv(\"u_vvColors\",n.vvColors)),m.vvOpacity&&(_.setUniform1fv(\"u_vvOpacityValues\",n.vvOpacityValues),_.setUniform1fv(\"u_vvOpacities\",n.vvOpacities)),m.dotDensity){const o=r/n.ddDotSize,i=o*window.devicePixelRatio*o*window.devicePixelRatio,a=1/2**(d-t.key.level),l=1/a*(1/a),u=n.ddDotScale?e.state.scale/n.ddDotScale:1;_.setUniform1f(\"u_tileZoomFactor\",a),_.setUniform1f(\"u_tileDotsOverArea\",i/(r*window.devicePixelRatio*r*window.devicePixelRatio)),_.setUniformMatrix4fv(\"u_dotColors\",n.ddColors),_.setUniform4fv(\"u_isActive\",n.ddActiveDots),_.setUniform4fv(\"u_dotBackgroundColor\",n.ddBackgroundColor),_.setUniform1f(\"u_dotValue\",Math.max(1,n.ddDotValue*u*l)),this._bindDotDensityTextures(s,_,n,o)}o.draw(s,c,f)}_disposeTextures(){if(this._dotTextures){for(let e=0;et(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:5121,normalized:!0},{location:4,name:\"a_texAndSize\",count:4,type:5121},{location:5,name:\"a_refSymbolAndPlacementOffset\",count:4,type:5121},{location:6,name:\"a_glyphData\",count:4,type:5121},{location:7,name:\"a_vertexOffset\",count:2,type:5122},{location:8,name:\"a_texCoords\",count:2,type:5123}]});class n extends a{dispose(){}getGeometryType(){return e.LABEL}drawGeometry(e,t,a,n){const{context:s,painter:l,state:r,rendererInfo:m}=e,u=o.load(a.materialKey),f=u.mapAligned?1:0;if(!f&&Math.abs(t.key.level-Math.round(100*e.displayLevel)/100)>=1)return;const{bufferLayouts:c,attributes:p}=i(u),v=l.materialManager.getMaterialProgram(e,u,\"materials/label\",p,n);e.context.setStencilFunction(514,0,255),s.useProgram(v),this._setSharedUniforms(v,e,t),l.textureManager.bindTextures(s,v,u);const d=1===f?r.displayViewMat3:r.displayMat3;if(u.vvSizeMinMaxValue&&v.setUniform4fv(\"u_vvSizeMinMaxValue\",m.vvSizeMinMaxValue),u.vvSizeScaleStops&&v.setUniform1f(\"u_vvSizeScaleStopsValue\",m.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=m.getSizeVVFieldStops(t.key.level);v.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),v.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&v.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",m.vvSizeUnitValueToPixelsRatio),v.setUniform1f(\"u_mapRotation\",Math.floor(r.rotation/360*254)),v.setUniform1f(\"u_mapAligned\",f),v.setUniformMatrix3fv(\"u_displayMat3\",d),v.setUniform1f(\"u_opacity\",1),v.setUniform2fv(\"u_screenSize\",e.state.size),v.setUniform1f(\"u_isHalo\",1),a.draw(s,c,p),v.setUniform1f(\"u_isHalo\",0),a.draw(s,c,p),s.setStencilTestEnabled(!0),s.setBlendingEnabled(!0)}}export default n;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{WGLGeometryType as e}from\"../enums.js\";import{createProgramDescriptor as t}from\"../Utils.js\";import a from\"./WGLGeometryBrush.js\";import{LineMaterialKey as o}from\"../materialKey/MaterialKey.js\";const i=e=>t(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_offsetAndNormal\",count:4,type:5120},{location:4,name:\"a_accumulatedDistanceAndHalfWidth\",count:2,type:5123},{location:5,name:\"a_tlbr\",count:4,type:5123},{location:6,name:\"a_segmentDirection\",count:4,type:5120},{location:7,name:\"a_aux\",count:2,type:5123},{location:8,name:\"a_zoomRange\",count:2,type:5123}]});class n extends a{dispose(){}getGeometryType(){return e.LINE}drawGeometry(e,t,a,n){const{context:l,painter:r,rendererInfo:s,displayLevel:v}=e,u=o.load(a.materialKey),{bufferLayouts:m,attributes:c}=i(u),f=r.materialManager.getMaterialProgram(e,u,\"materials/line\",c,n),p=1/e.pixelRatio,S=0;l.useProgram(f),this._setSharedUniforms(f,e,t),u.textureBinding&&r.textureManager.bindTextures(l,f,u);const d=2**(v-t.key.level)/e.pixelRatio;if(f.setUniform1f(\"u_zoomFactor\",d),f.setUniform1f(\"u_blur\",S+p),f.setUniform1f(\"u_antialiasing\",p),u.vvSizeMinMaxValue&&f.setUniform4fv(\"u_vvSizeMinMaxValue\",s.vvSizeMinMaxValue),u.vvSizeScaleStops&&f.setUniform1f(\"u_vvSizeScaleStopsValue\",s.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=s.getSizeVVFieldStops(t.key.level);f.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),f.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&f.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",s.vvSizeUnitValueToPixelsRatio),u.vvColor&&(f.setUniform1fv(\"u_vvColorValues\",s.vvColorValues),f.setUniform4fv(\"u_vvColors\",s.vvColors)),u.vvOpacity&&(f.setUniform1fv(\"u_vvOpacityValues\",s.vvOpacityValues),f.setUniform1fv(\"u_vvOpacities\",s.vvOpacities)),l.setFaceCullingEnabled(!1),a.draw(l,m,c)}}export default n;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{WGLGeometryType as e}from\"../enums.js\";import{createProgramDescriptor as t}from\"../Utils.js\";import o from\"./WGLGeometryBrush.js\";import{MarkerMaterialKey as a}from\"../materialKey/MaterialKey.js\";const i=e=>t(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_vertexOffset\",count:2,type:5122},{location:2,name:\"a_texCoords\",count:2,type:5123},{location:3,name:\"a_bitSetAndDistRatio\",count:2,type:5123},{location:4,name:\"a_id\",count:4,type:5121},{location:5,name:\"a_color\",count:4,type:5121,normalized:!0},{location:6,name:\"a_outlineColor\",count:4,type:5121,normalized:!0},{location:7,name:\"a_sizeAndOutlineWidth\",count:4,type:5121},{location:8,name:\"a_zoomRange\",count:2,type:5123}]});class n extends o{dispose(){}getGeometryType(){return e.MARKER}drawGeometry(e,t,o,n){const{context:r,painter:s,rendererInfo:v,state:l}=e,u=a.load(o.materialKey),{bufferLayouts:m,attributes:p}=i(u),c=s.materialManager.getMaterialProgram(e,u,\"materials/icon\",p,n);r.useProgram(c),u.textureBinding&&s.textureManager.bindTextures(r,c,u,!0),this._setSharedUniforms(c,e,t);const f=u.vvRotation?l.displayViewMat3:l.displayMat3;if(c.setUniformMatrix3fv(\"u_displayMat3\",f),u.vvSizeMinMaxValue&&c.setUniform4fv(\"u_vvSizeMinMaxValue\",v.vvSizeMinMaxValue),u.vvSizeScaleStops&&c.setUniform1f(\"u_vvSizeScaleStopsValue\",v.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=v.getSizeVVFieldStops(t.key.level);c.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),c.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&c.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",v.vvSizeUnitValueToPixelsRatio),u.vvColor&&(c.setUniform1fv(\"u_vvColorValues\",v.vvColorValues),c.setUniform4fv(\"u_vvColors\",v.vvColors)),u.vvOpacity&&(c.setUniform1fv(\"u_vvOpacityValues\",v.vvOpacityValues),c.setUniform1fv(\"u_vvOpacities\",v.vvOpacities)),u.vvRotation&&c.setUniform1f(\"u_vvRotationType\",\"geographic\"===v.vvMaterialParameters.vvRotationType?0:1),o.draw(r,m,p)}}export default n;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{WGLGeometryType as e}from\"../enums.js\";import{createProgramDescriptor as t}from\"../Utils.js\";import a from\"./WGLGeometryBrush.js\";import{TextMaterialKey as o}from\"../materialKey/MaterialKey.js\";const i=e=>t(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:5122},{location:1,name:\"a_id\",count:4,type:5121},{location:2,name:\"a_color\",count:4,type:5121,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:5121,normalized:!0},{location:4,name:\"a_texFontSize\",count:4,type:5121},{location:5,name:\"a_aux\",count:4,type:5120},{location:6,name:\"a_zoomRange\",count:2,type:5123},{location:7,name:\"a_vertexOffset\",count:2,type:5122},{location:8,name:\"a_texCoords\",count:2,type:5123}]});class r extends a{dispose(){}getGeometryType(){return e.TEXT}drawGeometry(e,t,a,r){const{context:s,painter:n,rendererInfo:v,state:l}=e,u=o.load(a.materialKey),{bufferLayouts:m,attributes:f}=i(u),p=n.materialManager.getMaterialProgram(e,u,\"materials/text\",f,r);if(s.useProgram(p),this._setSharedUniforms(p,e,t),n.textureManager.bindTextures(s,p,u),p.setUniformMatrix3fv(\"u_displayMat3\",l.displayMat3),p.setUniformMatrix3fv(\"u_displayViewMat3\",l.displayViewMat3),u.vvSizeMinMaxValue&&p.setUniform4fv(\"u_vvSizeMinMaxValue\",v.vvSizeMinMaxValue),u.vvSizeScaleStops&&p.setUniform1f(\"u_vvSizeScaleStopsValue\",v.vvSizeScaleStopsValue),u.vvSizeFieldStops){const e=v.getSizeVVFieldStops(t.key.level);p.setUniform1fv(\"u_vvSizeFieldStopsValues\",e.values),p.setUniform1fv(\"u_vvSizeFieldStopsSizes\",e.sizes)}u.vvSizeUnitValue&&p.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",v.vvSizeUnitValueToPixelsRatio),u.vvColor&&(p.setUniform1fv(\"u_vvColorValues\",v.vvColorValues),p.setUniform4fv(\"u_vvColors\",v.vvColors)),u.vvOpacity&&(p.setUniform1fv(\"u_vvOpacityValues\",v.vvOpacityValues),p.setUniform1fv(\"u_vvOpacities\",v.vvOpacities)),u.vvRotation&&p.setUniform1f(\"u_vvRotationType\",\"geographic\"===v.vvMaterialParameters.vvRotationType?0:1),p.setUniform1f(\"u_isHalo\",1),a.draw(s,m,f),p.setUniform1f(\"u_isHalo\",0),a.draw(s,m,f)}}export default r;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport t from\"../../VertexStream.js\";import e from\"../WGLBrush.js\";import{setTextures as r,getCommonUniforms as s,setUniforms as a,getColormapUniforms as i,getStretchUniforms as o,getShadedReliefUniforms as n,getUniformLocationInfos as h,getBasicGridUniforms as c}from\"../../../../../webgl/rasterUtils.js\";class l extends e{constructor(){super(...arguments),this._desc={lut:{vsPath:\"raster/lut\",fsPath:\"raster/lut\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])},stretch:{vsPath:\"raster/stretch\",fsPath:\"raster/stretch\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])},hillshade:{vsPath:\"raster/hillshade\",fsPath:\"raster/hillshade\",attributes:new Map([[\"a_position\",0],[\"a_texcoord\",1]])}},this._rendererUniformInfos=new Map}dispose(){this._quad&&this._quad.dispose()}prepareState({context:t},e){t.setBlendingEnabled(!0),t.setBlendFunctionSeparate(1,771,1,771),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!0),t.setStencilFunction(514,e.stencilRef,255)}draw(t,e){var r;if(!e.source)return;if(e.suspended)return;t.timeline.begin(this.name);const s=!(null!=(r=t.context.capabilities.textureFloat)&&r.textureFloatLinear);e.updateTexture(t);const a=this.getShaderVariations(e,s),i=t.painter.materialManager.getProgram(t,this._desc[e.symbolizerParameters.type],a);this.drawWithProgram(t.context,i,e),t.timeline.end(this.name)}drawWithProgram(e,h,l,d=1,u=[0,0],p=!1){this._quad||(this._quad=new t(e,[0,0,1,0,0,1,1,1]));const{symbolizerParameters:m,transformGrid:f,width:g,height:_,opacity:b}=l,x=m.type;e.useProgram(h);const P=this.getShaderVariations(l),w=this.getUniformInfos(x,e,h,P),{names:S,textures:y}=l.getTextures();r(e,h,S,y);const M=c(d,u),U=s(f,[g,_],[l.source.width,l.source.height],b,p);if(a(h,w,{u_coordScale:l.coordScale,u_dvsMat3:l.transforms.dvs,...M,...U}),m.colormap){const{colormap:t,colormapOffset:e}=m,r=i(t,e);a(h,w,r)}if(\"stretch\"===m.type){const t=o(m);a(h,w,t)}else if(\"hillshade\"===m.type){const t=n(m);a(h,w,t)}this._quad.draw()}getUniformInfos(t,e,r,s){const a=s.length>0?t+\"-\"+s.join(\"-\"):t;if(this._rendererUniformInfos.has(a))return this._rendererUniformInfos.get(a);const i=h(e,r);return this._rendererUniformInfos.set(a,i),i}getShaderVariations(t,e=!1){const r=[];return\"cubic\"===t.interpolation?r.push(\"bicubic\"):e&&\"bilinear\"===t.interpolation&&r.push(\"bilinear\"),t.isRendereredSource?r.push(\"noop\"):t.symbolizerParameters.colormap&&r.push(\"applyColormap\"),t.transformGrid&&r.push(\"applyProjection\"),r}}export default l;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport r from\"./webgl/brushes/BrushBitmap.js\";import s from\"./webgl/brushes/BrushClip.js\";import e from\"./webgl/brushes/WGLBrushInfo.js\";import l from\"./webgl/brushes/WGLBrushStencil.js\";import{WGLBrushVTLBackground as o}from\"./webgl/brushes/WGLBrushVTLBackground.js\";import{WGLBrushVTLCircle as t}from\"./webgl/brushes/WGLBrushVTLCircle.js\";import{WGLBrushVTLFill as m}from\"./webgl/brushes/WGLBrushVTLFill.js\";import{WGLBrushVTLLine as b}from\"./webgl/brushes/WGLBrushVTLLine.js\";import{WGLBrushVTLSymbol as i}from\"./webgl/brushes/WGLBrushVTLSymbol.js\";import u from\"./webgl/brushes/WGLGeometryBrushFill.js\";import h from\"./webgl/brushes/WGLGeometryBrushLabel.js\";import L from\"./webgl/brushes/WGLGeometryBrushLine.js\";import p from\"./webgl/brushes/WGLGeometryBrushMarker.js\";import B from\"./webgl/brushes/WGLGeometryBrushText.js\";import f from\"./webgl/brushes/raster/BrushRasterBitmap.js\";const g={marker:p,line:L,fill:u,text:B,label:h,clip:s,stencil:l,bitmap:r,raster:f,tileInfo:e,vtlBackground:o,vtlFill:m,vtlLine:b,vtlCircle:t,vtlSymbol:i},G={vtlBackground:o,vtlFill:m,vtlLine:b,vtlCircle:t,vtlSymbol:i};export{g as brushes,G as vtlBrushes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nclass e{constructor(e){this.readFile=e}resolveIncludes(e){return this.resolve(e)}resolve(e,t=new Map){if(t.has(e))return t.get(e);const r=this.read(e);if(!r)throw new Error(`cannot find shader file ${e}`);const s=/^[^\\S\\n]*#include\\s+<(\\S+)>[^\\S\\n]?/gm;let n=s.exec(r);const l=[];for(;null!=n;)l.push({path:n[1],start:n.index,length:n[0].length}),n=s.exec(r);let a=0,h=\"\";return l.forEach((e=>{h+=r.slice(a,e.start),h+=t.has(e.path)?\"\":this.resolve(e.path,t),a=e.start+e.length})),h+=r.slice(a),t.set(e,h),h}read(e){return this.readFile(e)}}export default e;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nfunction n(){return new Float32Array(4)}function r(n){const r=new Float32Array(4);return r[0]=n[0],r[1]=n[1],r[2]=n[2],r[3]=n[3],r}function t(n,r,t,a){const e=new Float32Array(4);return e[0]=n,e[1]=r,e[2]=t,e[3]=a,e}function a(n,r){return new Float32Array(n,r,4)}function e(){return n()}function u(){return t(1,1,1,1)}function o(){return t(1,0,0,0)}function s(){return t(0,1,0,0)}function c(){return t(0,0,1,0)}function i(){return t(0,0,0,1)}const f=e(),l=u(),_=o(),w=s(),N=c(),U=i();var y=Object.freeze({__proto__:null,create:n,clone:r,fromValues:t,createView:a,zeros:e,ones:u,unitX:o,unitY:s,unitZ:c,unitW:i,ZEROS:f,ONES:l,UNIT_X:_,UNIT_Y:w,UNIT_Z:N,UNIT_W:U});export{l as O,_ as U,f as Z,r as a,a as b,n as c,s as d,c as e,t as f,i as g,w as h,N as i,U as j,u as o,o as u,y as v,e as z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{resolveIncludes as e}from\"./sources/resolver.js\";const r={shaders:{vertexShader:e(\"tileInfo/tileInfo.vert\"),fragmentShader:e(\"tileInfo/tileInfo.frag\")},attributes:new Map([[\"a_pos\",0]])};export{r as tileInfo};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{f as t}from\"../../../../../chunks/vec4f32.js\";import e from\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/enums.js\";import\"../../../../webgl/RenderingContext.js\";import\"../../../../../chunks/builtins.js\";import{createProgram as r}from\"../../../../webgl/programUtils.js\";import i from\"../../../../webgl/Texture.js\";import o from\"../../../../webgl/VertexArrayObject.js\";import s from\"./WGLBrush.js\";import{background as n}from\"../shaders/BackgroundPrograms.js\";import{tileInfo as a}from\"../shaders/TileInfoPrograms.js\";const l=300,u=32;class m extends s{constructor(){super(...arguments),this._color=t(1,0,0,1)}dispose(){this._outlineProgram&&(this._outlineProgram.dispose(),this._outlineProgram=null),this._tileInfoProgram&&(this._tileInfoProgram.dispose(),this._tileInfoProgram=null),this._outlineVertexArrayObject&&(this._outlineVertexArrayObject.dispose(),this._outlineVertexArrayObject=null),this._tileInfoVertexArrayObject&&(this._tileInfoVertexArrayObject.dispose(),this._tileInfoVertexArrayObject=null),this._canvas=null}prepareState({context:t}){t.setBlendingEnabled(!0),t.setBlendFunctionSeparate(1,771,1,771),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!1)}draw(t,e){const{context:r}=t;if(!e.isReady)return;this._loadWGLResources(r),r.bindVAO(this._outlineVertexArrayObject),r.useProgram(this._outlineProgram),this._outlineProgram.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),this._outlineProgram.setUniform2f(\"u_coord_range\",e.coordRange[0],e.coordRange[1]),this._outlineProgram.setUniform1f(\"u_depth\",0),this._outlineProgram.setUniform4fv(\"u_color\",this._color),r.drawArrays(3,0,4),r.bindVAO();const i=this._getTexture(r,e);i&&(r.bindVAO(this._tileInfoVertexArrayObject),r.useProgram(this._tileInfoProgram),r.bindTexture(i,0),this._tileInfoProgram.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),this._tileInfoProgram.setUniform1f(\"u_depth\",0),this._tileInfoProgram.setUniform2f(\"u_coord_ratio\",e.coordRange[0]/e.size[0],e.coordRange[1]/e.size[1]),this._tileInfoProgram.setUniform2f(\"u_delta\",8,8),this._tileInfoProgram.setUniform2f(\"u_dimensions\",i.descriptor.width,i.descriptor.height),r.drawArrays(5,0,4),r.bindVAO())}_loadWGLResources(t){if(this._outlineProgram&&this._tileInfoProgram)return;const i=r(t,n),s=r(t,a),l={geometry:[{name:\"a_pos\",count:2,type:5120,offset:0,stride:2,normalized:!1,divisor:0}]},u=new Int8Array([0,0,1,0,1,1,0,1]),m=e.createVertex(t,35044,u),c=new o(t,n.attributes,l,{geometry:m}),f=new Int8Array([0,0,1,0,0,1,1,1]),g=e.createVertex(t,35044,f),d=new o(t,a.attributes,l,{geometry:g});this._outlineProgram=i,this._tileInfoProgram=s,this._outlineVertexArrayObject=c,this._tileInfoVertexArrayObject=d}_getTexture(t,e){if(e.texture&&e.triangleCountReportedInDebug===e.triangleCount)return e.texture;e.triangleCountReportedInDebug=e.triangleCount,this._canvas||(this._canvas=document.createElement(\"canvas\"),this._canvas.setAttribute(\"id\",\"canvas2d\"),this._canvas.setAttribute(\"width\",`${l}`),this._canvas.setAttribute(\"height\",`${u}`),this._canvas.setAttribute(\"style\",\"display:none\"));const r=e.triangleCount;let o=e.key.id;e.triangleCount>0&&(o+=`, ${r}`);const s=this._canvas,n=s.getContext(\"2d\");return n.font=\"24px sans-serif\",n.textAlign=\"left\",n.textBaseline=\"top\",n.clearRect(0,0,l,u),r>1e5?(n.fillStyle=\"red\",n.fillRect(0,0,l,u),n.fillStyle=\"black\"):(n.clearRect(0,0,l,u),n.fillStyle=\"blue\"),n.fillText(o,0,0),e.texture=new i(t,{target:3553,pixelFormat:6408,dataType:5121,samplingMode:9728,wrapMode:33071},s),e.texture}}export default m;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport t from\"../../../webgl/BufferObject.js\";import\"../../../webgl/FramebufferObject.js\";import\"../../../../core/has.js\";import\"../../../webgl/enums.js\";import\"../../../webgl/RenderingContext.js\";import\"../../../../chunks/builtins.js\";import\"../../../webgl/Texture.js\";import e from\"../../../webgl/VertexArrayObject.js\";class r{constructor(r,i){this.rctx=r,this._vertexBuffer=t.createVertex(r,35044,new Uint16Array(i)),this._vao=new e(r,new Map([[\"a_position\",0]]),{geometry:[{name:\"a_position\",count:2,type:5122,offset:0,stride:4,normalized:!1}]},{geometry:this._vertexBuffer}),this._count=i.length/2}bind(){this._vao.bind()}unbind(){this._vao.unbind()}dispose(){this._vao.dispose(!1),this._vertexBuffer.dispose()}draw(){this.rctx.bindVAO(this._vao),this.rctx.drawArrays(5,0,this._count)}}export default r;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nvar e=[\"layout\",\"centroid\",\"smooth\",\"case\",\"mat2x2\",\"mat2x3\",\"mat2x4\",\"mat3x2\",\"mat3x3\",\"mat3x4\",\"mat4x2\",\"mat4x3\",\"mat4x4\",\"uint\",\"uvec2\",\"uvec3\",\"uvec4\",\"samplerCubeShadow\",\"sampler2DArray\",\"sampler2DArrayShadow\",\"isampler2D\",\"isampler3D\",\"isamplerCube\",\"isampler2DArray\",\"usampler2D\",\"usampler3D\",\"usamplerCube\",\"usampler2DArray\",\"coherent\",\"restrict\",\"readonly\",\"writeonly\",\"resource\",\"atomic_uint\",\"noperspective\",\"patch\",\"sample\",\"subroutine\",\"common\",\"partition\",\"active\",\"filter\",\"image1D\",\"image2D\",\"image3D\",\"imageCube\",\"iimage1D\",\"iimage2D\",\"iimage3D\",\"iimageCube\",\"uimage1D\",\"uimage2D\",\"uimage3D\",\"uimageCube\",\"image1DArray\",\"image2DArray\",\"iimage1DArray\",\"iimage2DArray\",\"uimage1DArray\",\"uimage2DArray\",\"image1DShadow\",\"image2DShadow\",\"image1DArrayShadow\",\"image2DArrayShadow\",\"imageBuffer\",\"iimageBuffer\",\"uimageBuffer\",\"sampler1DArray\",\"sampler1DArrayShadow\",\"isampler1D\",\"isampler1DArray\",\"usampler1D\",\"usampler1DArray\",\"isampler2DRect\",\"usampler2DRect\",\"samplerBuffer\",\"isamplerBuffer\",\"usamplerBuffer\",\"sampler2DMS\",\"isampler2DMS\",\"usampler2DMS\",\"sampler2DMSArray\",\"isampler2DMSArray\",\"usampler2DMSArray\",\"trunc\",\"round\",\"roundEven\",\"isnan\",\"isinf\",\"floatBitsToInt\",\"floatBitsToUint\",\"intBitsToFloat\",\"uintBitsToFloat\",\"packSnorm2x16\",\"unpackSnorm2x16\",\"packUnorm2x16\",\"unpackUnorm2x16\",\"packHalf2x16\",\"unpackHalf2x16\",\"outerProduct\",\"transpose\",\"determinant\",\"inverse\",\"texture\",\"textureSize\",\"textureProj\",\"textureLod\",\"textureOffset\",\"texelFetch\",\"texelFetchOffset\",\"textureProjOffset\",\"textureLodOffset\",\"textureProjLod\",\"textureProjLodOffset\",\"textureGrad\",\"textureGradOffset\",\"textureProjGrad\",\"textureProjGradOffset\"];export default e;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport t from\"./reservedWordsGLSL3.js\";import{o as e,l as a,b as r}from\"../../chunks/builtins.js\";var n=999,o=9999,i=0,s=1,c=2,d=3,p=4,f=5,u=6,l=7,h=8,y=9,w=10,g=11,k=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"];function m(){var t,m,b,_=0,v=0,x=n,j=[],E=[],O=1,L=0,D=0,G=!1,T=!1,X=\"\";return function(t){return E=[],null!==t?P(t.replace?t.replace(/\\r\\n/g,\"\\n\"):t):C()};function F(t){t.length&&E.push({type:k[x],data:t,position:D,line:O,column:L})}function P(e){var a;for(_=0,b=(X+=e).length;t=X[_],_0)continue;r=t.slice(0,1).join(\"\")}return F(r),D+=r.length,(j=j.slice(r.length)).length}}function W(){return/[^a-fA-F0-9]/.test(t)?(F(j.join(\"\")),x=n,_):(j.push(t),m=t,_+1)}function Z(){return\".\"===t||/[eE]/.test(t)?(j.push(t),x=f,m=t,_+1):\"x\"===t&&1===j.length&&\"0\"===j[0]?(x=g,j.push(t),m=t,_+1):/[^\\d]/.test(t)?(F(j.join(\"\")),x=n,_):(j.push(t),m=t,_+1)}function q(){return\"f\"===t&&(j.push(t),m=t,_+=1),/[eE]/.test(t)||\"-\"===t&&/[eE]/.test(m)?(j.push(t),m=t,_+1):/[^\\d]/.test(t)?(F(j.join(\"\")),x=n,_):(j.push(t),m=t,_+1)}function B(){if(/[^\\d\\w_]/.test(t)){var e=j.join(\"\");return x=a.indexOf(e)>-1?h:r.indexOf(e)>-1?l:u,F(j.join(\"\")),x=n,_}return j.push(t),m=t,_+1}}function b(t){var e=m(),a=[];return a=(a=a.concat(e(t))).concat(e(null))}function _(t){return b(t)}function v(t){return t.map((t=>\"eof\"!==t.type?t.data:\"\")).join(\"\")}const x=[\"GL_OES_standard_derivatives\",\"GL_EXT_frag_depth\",\"GL_EXT_draw_buffers\",\"GL_EXT_shader_texture_lod\"];function j(t,e=\"100\",a=\"300 es\"){const r=/^\\s*\\#version\\s+([0-9]+(\\s+[a-zA-Z]+)?)\\s*/;for(const n of t)if(\"preprocessor\"===n.type){const t=r.exec(n.data);if(t){const r=t[1].replace(/\\s\\s+/g,\" \");if(r===a)return r;if(r===e)return n.data=\"#version \"+a,e;throw new Error(\"unknown glsl version: \"+r)}}return t.splice(0,0,{type:\"preprocessor\",data:\"#version \"+a},{type:\"whitespace\",data:\"\\n\"}),null}function E(t,e){for(let a=e-1;a>=0;a--){const e=t[a];if(\"whitespace\"!==e.type&&\"block-comment\"!==e.type){if(\"keyword\"!==e.type)break;if(\"attribute\"===e.data||\"in\"===e.data)return!0}}return!1}function O(t,e,a,r){r=r||a;for(const n of t)if(\"ident\"===n.type&&n.data===a){r in e?e[r]++:e[r]=0;return O(t,e,r+\"_\"+e[r],r)}return a}function L(t,e,a=\"afterVersion\"){function r(t,e){for(let a=e;ae=0){if(35633===a&&E(r,c))throw new Error(\"attribute in vertex shader uses a name that is a reserved word in glsl 300 es\");e.data in s||(s[e.data]=O(r,i,e.data)),e.data=s[e.data]}}}for(let t=r.length-1;t>=0;--t){const e=r[t];if(\"preprocessor\"===e.type){const a=e.data.match(/\\#extension\\s+(.*)\\:/);if(a&&a[1]&&x.indexOf(a[1].trim())>=0){const e=r[t+1];r.splice(t,e&&\"whitespace\"===e.type?2:1)}const n=e.data.match(/\\#ifdef\\s+(.*)/);n&&n[1]&&x.indexOf(n[1].trim())>=0&&(e.data=\"#if 1\");const o=e.data.match(/\\#ifndef\\s+(.*)/);o&&o[1]&&x.indexOf(o[1].trim())>=0&&(e.data=\"#if 0\")}}return v(r)}export{X as transpileShader};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isNone as t}from\"../../core/maybe.js\";import{ResourceType as o}from\"./enums.js\";import{webglValidateShadersEnabled as i}from\"./RenderingContext.js\";import{transpileShader as r}from\"./ShaderTranspiler.js\";class n{constructor(t,r,n,e){this._context=t,this._locations=e,this._vShader=null,this._fShader=null,this._nameToUniformLocation={},this._nameToUniform1={},this._nameToUniform1v={},this._nameToUniform2={},this._nameToUniform3={},this._nameToUniform4={},this._nameToUniformMatrix3={},this._nameToUniformMatrix4={},t||console.error(\"RenderingContext isn't initialized!\"),0===r.length&&console.error(\"Shaders source should not be empty!\"),this._vShader=s(this._context,35633,r),this._fShader=s(this._context,35632,n),this._vShader&&this._fShader||console.error(\"Error loading shaders!\");const m=this._context.gl,a=m.createProgram();m.attachShader(a,this._vShader),m.attachShader(a,this._fShader),e.forEach(((t,o)=>m.bindAttribLocation(a,t,o))),m.linkProgram(a),i()&&!m.getProgramParameter(a,m.LINK_STATUS)&&console.error(\"Could not initialize shader\\nVALIDATE_STATUS: \"+m.getProgramParameter(a,m.VALIDATE_STATUS)+\", gl error [\"+m.getError()+\"]infoLog: \"+m.getProgramInfoLog(a)),this._glName=a,this._context.instanceCounter.increment(o.Program,this)}get glName(){return this._glName}dispose(){const t=this._context.gl;if(this._vShader){const o=this._vShader;t.deleteShader(o),this._vShader=null}if(this._fShader){const o=this._fShader;t.deleteShader(o),this._fShader=null}this._glName&&(t.deleteProgram(this._glName),this._glName=null,this._context.instanceCounter.decrement(o.Program,this))}_getUniformLocation(t){return void 0===this._nameToUniformLocation[t]&&(this._nameToUniformLocation[t]=this._context.gl.getUniformLocation(this._glName,t)),this._nameToUniformLocation[t]}hasUniform(t){return null!==this._getUniformLocation(t)}setUniform1i(t,o){const i=this._nameToUniform1[t];if(void 0===i||o!==i){this._context.useProgram(this);this._context.gl.uniform1i(this._getUniformLocation(t),o),this._nameToUniform1[t]=o}}setUniform1iv(t,o){const i=this._nameToUniform1v[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform1iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform1v[t]=Array.from(o):h(o,i)}}setUniform2iv(t,o){const i=this._nameToUniform2[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform2iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform2[t]=Array.from(o):h(o,i)}}setUniform3iv(t,o){const i=this._nameToUniform3[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform3iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform3[t]=Array.from(o):h(o,i)}}setUniform4iv(t,o){const i=this._nameToUniform4[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform4iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform4[t]=Array.from(o):h(o,i)}}setUniform1f(t,o){const i=this._nameToUniform1[t];if(void 0===i||o!==i){this._context.useProgram(this);this._context.gl.uniform1f(this._getUniformLocation(t),o),this._nameToUniform1[t]=o}}setUniform1fv(t,o){const i=this._nameToUniform1v[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform1fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform1v[t]=Array.from(o):h(o,i)}}setUniform2f(t,o,i){const r=this._nameToUniform2[t];if(void 0===r||o!==r[0]||i!==r[1]){this._context.useProgram(this);this._context.gl.uniform2f(this._getUniformLocation(t),o,i),void 0===r?this._nameToUniform2[t]=[o,i]:(r[0]=o,r[1]=i)}}setUniform2fv(t,o){const i=this._nameToUniform2[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform2fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform2[t]=Array.from(o):h(o,i)}}setUniform3f(t,o,i,r){const n=this._nameToUniform3[t];if(void 0===n||o!==n[0]||i!==n[1]||r!==n[2]){this._context.useProgram(this);this._context.gl.uniform3f(this._getUniformLocation(t),o,i,r),void 0===n?this._nameToUniform3[t]=[o,i,r]:(n[0]=o,n[1]=i,n[2]=r)}}setUniform3fv(t,o){const i=this._nameToUniform3[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform3fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform3[t]=Array.from(o):h(o,i)}}setUniform4f(t,o,i,r,n){const e=this._nameToUniform4[t];if(void 0===e||o!==e[0]||i!==e[1]||r!==e[2]||n!==e[3]){this._context.useProgram(this);this._context.gl.uniform4f(this._getUniformLocation(t),o,i,r,n),void 0===e?this._nameToUniform4[t]=[o,i,r,n]:(e[0]=o,e[1]=i,e[2]=r,e[3]=n)}}setUniform4fv(t,o){const i=this._nameToUniform4[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform4fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform4[t]=Array.from(o):h(o,i)}}setUniformMatrix3fv(t,o,i=!1){const r=this._nameToUniformMatrix3[t];if(f(r,o)){this._context.useProgram(this);this._context.gl.uniformMatrix3fv(this._getUniformLocation(t),i,o),void 0===r?this._nameToUniformMatrix3[t]=Array.from(o):h(o,r)}}setUniformMatrix4fv(t,o,i=!1){const r=this._nameToUniformMatrix4[t];if(c(r,o)){this._context.useProgram(this);this._context.gl.uniformMatrix4fv(this._getUniformLocation(t),i,o),void 0===r?this._nameToUniformMatrix4[t]=Array.from(o):h(o,r)}}assertCompatibleVertexAttributeLocations(t){t.locations!==this._locations&&console.error(\"VertexAttributeLocations are incompatible\")}stop(){}}function e(o,i){if(t(o)||o.length!==i.length)return!0;for(let t=0;t\"\\n\"+a(o++)+\":\"))}function a(t){return t>=1e3?t.toString():(\" \"+t).slice(-3)}function h(t,o){for(let i=0;i80*x){i=u=e[0],v=y=e[1];for(var Z=x;Zu&&(u=o),p>y&&(y=p);a=0!==(a=Math.max(u-i,y-v))?1/a:0}return r(s,c,x,i,v,a),c}function n(e,n,t,r,x){var i,v;if(x===D(e,n,t,r)>0)for(i=n;i=n;i-=r)v=A(i,e[i],e[i+1],v);return v&&w(v,v.next)&&(B(v),v=v.next),v}function t(e,n){if(!e)return e;n||(n=e);var t,r=e;do{if(t=!1,r.steiner||!w(r,r.next)&&0!==d(r.prev,r,r.next))r=r.next;else{if(B(r),(r=n=r.prev)===r.next)break;t=!0}}while(t||r!==n);return n}function r(e,n,f,y,o,p,a){if(e){!a&&p&&h(e,y,o,p);for(var l,s,c=e;e.prev!==e.next;)if(l=e.prev,s=e.next,p?i(e,y,o,p):x(e))n.push(l.i/f),n.push(e.i/f),n.push(s.i/f),B(e),e=s.next,c=s.next;else if((e=s)===c){a?1===a?r(e=v(t(e),n,f),n,f,y,o,p,2):2===a&&u(e,n,f,y,o,p):r(t(e),n,f,y,o,p,1);break}}}function x(e){var n=e.prev,t=e,r=e.next;if(d(n,t,r)>=0)return!1;for(var x=e.next.next;x!==e.prev;){if(Z(n.x,n.y,t.x,t.y,r.x,r.y,x.x,x.y)&&d(x.prev,x,x.next)>=0)return!1;x=x.next}return!0}function i(e,n,t,r){var x=e.prev,i=e,v=e.next;if(d(x,i,v)>=0)return!1;for(var u=x.xi.x?x.x>v.x?x.x:v.x:i.x>v.x?i.x:v.x,o=x.y>i.y?x.y>v.y?x.y:v.y:i.y>v.y?i.y:v.y,p=s(u,f,n,t,r),a=s(y,o,n,t,r),h=e.prevZ,l=e.nextZ;h&&h.z>=p&&l&&l.z<=a;){if(h!==e.prev&&h!==e.next&&Z(x.x,x.y,i.x,i.y,v.x,v.y,h.x,h.y)&&d(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,l!==e.prev&&l!==e.next&&Z(x.x,x.y,i.x,i.y,v.x,v.y,l.x,l.y)&&d(l.prev,l,l.next)>=0)return!1;l=l.nextZ}for(;h&&h.z>=p;){if(h!==e.prev&&h!==e.next&&Z(x.x,x.y,i.x,i.y,v.x,v.y,h.x,h.y)&&d(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;l&&l.z<=a;){if(l!==e.prev&&l!==e.next&&Z(x.x,x.y,i.x,i.y,v.x,v.y,l.x,l.y)&&d(l.prev,l,l.next)>=0)return!1;l=l.nextZ}return!0}function v(e,n,r){var x=e;do{var i=x.prev,v=x.next.next;!w(i,v)&&M(i,x,x.next,v)&&k(i,v)&&k(v,i)&&(n.push(i.i/r),n.push(x.i/r),n.push(v.i/r),B(x),B(x.next),x=e=v),x=x.next}while(x!==e);return t(x)}function u(e,n,x,i,v,u){var f=e;do{for(var y=f.next.next;y!==f.prev;){if(f.i!==y.i&&g(f,y)){var o=q(f,y);return f=t(f,f.next),o=t(o,o.next),r(f,n,x,i,v,u),void r(o,n,x,i,v,u)}y=y.next}f=f.next}while(f!==e)}function f(e,r,x,i){var v,u,f,p=[];for(v=0,u=r.length;v=r.next.y&&r.next.y!==r.y){var u=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(u<=x&&u>v){if(v=u,u===x){if(i===r.y)return r;if(i===r.next.y)return r.next}t=r.x=r.x&&r.x>=o&&x!==r.x&&Z(it.x||r.x===t.x&&a(t,r)))&&(t=r,h=f)),r=r.next}while(r!==y);return t}function a(e,n){return d(e.prev,e,n.prev)<0&&d(n.next,e,e.next)<0}function h(e,n,t,r){var x=e;do{if(null===x.z&&(x.z=s(x.x,x.y,n,t,r)),x.prev.next!==x||x.next.prev!==x)return x.prev.next=x,x.next.prev=x,h(e,n,t,r);x.prevZ=x.prev,x.nextZ=x.next,x=x.next}while(x!==e);x.prevZ.nextZ=null,x.prevZ=null,l(x)}function l(e){var n,t,r,x,i,v,u,f,y=1;do{for(t=e,e=null,i=null,v=0;t;){for(v++,r=t,u=0,n=0;n0||f>0&&r;)0!==u&&(0===f||!r||t.z<=r.z)?(x=t,t=t.nextZ,u--):(x=r,r=r.nextZ,f--),i?i.nextZ=x:e=x,x.prevZ=i,i=x;t=r}i.nextZ=null,y*=2}while(v>1);return e}function s(e,n,t,r,x){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-t)*x)|e<<8))|e<<4))|e<<2))|e<<1))|(n=1431655765&((n=858993459&((n=252645135&((n=16711935&((n=32767*(n-r)*x)|n<<8))|n<<4))|n<<2))|n<<1))<<1}function c(e){var n=e,t=e;do{(n.x=0&&(e-v)*(r-u)-(t-v)*(n-u)>=0&&(t-v)*(i-u)-(x-v)*(r-u)>=0}function g(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!m(e,n)&&(k(e,n)&&k(n,e)&&j(e,n)&&(d(e.prev,e,n.prev)||d(e,n.prev,n))||w(e,n)&&d(e.prev,e,e.next)>0&&d(n.prev,n,n.next)>0)}function d(e,n,t){return(n.y-e.y)*(t.x-n.x)-(n.x-e.x)*(t.y-n.y)}function w(e,n){return e.x===n.x&&e.y===n.y}function M(e,n,t,r){var x=b(d(e,n,t)),i=b(d(e,n,r)),v=b(d(t,r,e)),u=b(d(t,r,n));return x!==i&&v!==u||!(0!==x||!z(e,t,n))||!(0!==i||!z(e,r,n))||!(0!==v||!z(t,e,r))||!(0!==u||!z(t,n,r))}function z(e,n,t){return n.x<=Math.max(e.x,t.x)&&n.x>=Math.min(e.x,t.x)&&n.y<=Math.max(e.y,t.y)&&n.y>=Math.min(e.y,t.y)}function b(e){return e>0?1:e<0?-1:0}function m(e,n){var t=e;do{if(t.i!==e.i&&t.next.i!==e.i&&t.i!==n.i&&t.next.i!==n.i&&M(t,t.next,e,n))return!0;t=t.next}while(t!==e);return!1}function k(e,n){return d(e.prev,e,e.next)<0?d(e,n,e.next)>=0&&d(e,e.prev,n)>=0:d(e,n,e.prev)<0||d(e,e.next,n)<0}function j(e,n){var t=e,r=!1,x=(e.x+n.x)/2,i=(e.y+n.y)/2;do{t.y>i!=t.next.y>i&&t.next.y!==t.y&&x<(t.next.x-t.x)*(i-t.y)/(t.next.y-t.y)+t.x&&(r=!r),t=t.next}while(t!==e);return r}function q(e,n){var t=new C(e.i,e.x,e.y),r=new C(n.i,n.x,n.y),x=e.next,i=n.prev;return e.next=n,n.prev=e,t.next=x,x.prev=t,r.next=t,t.prev=r,i.next=r,r.prev=i,r}function A(e,n,t,r){var x=new C(e,n,t);return r?(x.next=r.next,x.prev=r,r.next.prev=x,r.next=x):(x.prev=x,x.next=x),x}function B(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function C(e,n,t){this.i=e,this.x=n,this.y=t,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function D(e,n,t,r){for(var x=0,i=n,v=t-r;i0&&(r+=e[x-1].length,t.holes.push(r))}return t},e}())&&(e.exports=n);var r=t.exports;export{r as e};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"../../../../core/Error.js\";import t from\"../../../../core/Logger.js\";import{isSome as r}from\"../../../../core/maybe.js\";import{e as n}from\"../../../../chunks/earcut.js\";import{s as o}from\"../../../../chunks/vec2.js\";import{a as s}from\"../../../../chunks/vec2f64.js\";import{convertFromNestedArray as c,convertFromPolygon as i}from\"../../../../layers/graphics/featureConversionUtils.js\";import a from\"../../../../layers/graphics/OptimizedGeometry.js\";import{i1616to32 as f}from\"./number.js\";import h from\"../../../webgl/BufferObject.js\";const m=t.getLogger(\"esri.views.2d.engine.webgl.Mesh2D\"),u=t=>{switch(t.BYTES_PER_ELEMENT){case 1:return 5121;case 2:return 5123;case 4:return 5125;default:throw new e(\"Cannot get DataType of array\")}},y=(e,t,r,n)=>{let o=0;for(let s=1;s0:o<0},x=({coords:e,lengths:t},r)=>{const o=[];for(let s=0,c=0;s({...r,[n]:h.createVertex(e,t,this.vertices[n])})),{})),this._cache.vertexBuffers}}export default g;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport t from\"../../../../core/Error.js\";import e from\"../../../../core/Logger.js\";import{isSome as r,isNone as s}from\"../../../../core/maybe.js\";import{DisplayObject as i}from\"../DisplayObject.js\";import h from\"./Mesh2D.js\";import o from\"../../../webgl/VertexArrayObject.js\";const a=e.getLogger(\"esri.views.2d.engine.webgl.ClippingInfo\"),c=t=>parseFloat(t)/100;class n extends i{constructor(t,e){super(),this._clip=e,this._cache={},this.stage=t,this._handle=e.watch(\"version\",(()=>this._invalidate())),this.ready()}static fromClipArea(t,e){return new n(t,e)}_destroyGL(){r(this._cache.mesh)&&(this._cache.mesh.destroy(),this._cache.mesh=null),r(this._cache.vao)&&(this._cache.vao.dispose(),this._cache.vao=null)}destroy(){this._destroyGL(),this._handle.remove()}getVAO(t,e,r,i){const[h,a]=e.size;if(\"geometry\"!==this._clip.type&&this._lastWidth===h&&this._lastHeight===a||(this._lastWidth=h,this._lastHeight=a,this._destroyGL()),s(this._cache.vao)){const s=this._createMesh(e,this._clip),h=s.getIndexBuffer(t),a=s.getVertexBuffers(t);this._cache.mesh=s,this._cache.vao=new o(t,r,i,a,h)}return this._cache.vao}_invalidate(){this._destroyGL(),this.requestRender()}_createScreenRect(t,e){const[r,s]=t.size,i=\"string\"==typeof e.left?c(e.left)*r:e.left,h=\"string\"==typeof e.right?c(e.right)*r:e.right,o=\"string\"==typeof e.top?c(e.top)*s:e.top,a=\"string\"==typeof e.bottom?c(e.bottom)*s:e.bottom,n=i,p=o;return{x:n,y:p,width:Math.max(r-h-n,0),height:Math.max(s-a-p,0)}}_createMesh(e,r){switch(r.type){case\"rect\":return h.fromRect(this._createScreenRect(e,r));case\"path\":return h.fromPath(r);case\"geometry\":return h.fromGeometry(e,r);default:return a.error(new t(\"mapview-bad-type\",\"Unable to create ClippingInfo mesh from clip of type: ${clip.type}\")),h.fromRect({x:0,y:0,width:1,height:1})}}}export default n;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport\"../../../../core/has.js\";import{isNone as e,isSome as r}from\"../../../../core/maybe.js\";import{brushes as s}from\"../brushes.js\";import{Container as t}from\"../Container.js\";import i from\"./ClippingInfo.js\";import{WGLDrawPhase as n}from\"./enums.js\";class o extends t{constructor(){super(...arguments),this.name=this.constructor.name}set clips(e){this._clips=e,this.children.forEach((r=>r.clips=e)),this._updateClippingInfo()}doRender(e){const r=this.createRenderParams(e),{painter:s,globalOpacity:t,profiler:i,drawPhase:o}=r,a=o===n.LABEL?1:t*this.computedOpacity;i.recordContainerStart(this.name),s.beforeRenderLayer(r,this._clippingInfos?255:0,a),this.updateTransforms(e.state),this.renderChildren(r),s.compositeLayer(r,a),i.recordContainerEnd()}renderChildren(r){e(this._renderPasses)&&(this._renderPasses=this.prepareRenderPasses(r.painter));for(const e of this.children)e.beforeRender(r);for(const e of this._renderPasses)try{e.render(r)}catch(s){}for(const e of this.children)e.afterRender(r)}createRenderParams(e){return{...e,requireFBO:this.requiresDedicatedFBO}}prepareRenderPasses(e){return[e.registerRenderPass({name:\"clip\",brushes:[s.clip],target:()=>this._clippingInfos,drawPhase:n.MAP|n.LABEL|n.LABEL_ALPHA|n.DEBUG|n.HIGHLIGHT})]}updateTransforms(e){for(const r of this.children)r.setTransform(e)}onAttach(){super.onAttach(),this._updateClippingInfo()}onDetach(){super.onDetach(),this._updateClippingInfo()}_updateClippingInfo(){if(r(this._clippingInfos)&&(this._clippingInfos.forEach((e=>e.destroy())),this._clippingInfos=null),!this.stage)return;const e=this._clips;r(e)&&e.length&&(this._clippingInfos=e.items.map((e=>i.fromClipArea(this.stage,e)))),this.requestRender()}}export default o;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nvar e={background:{\"background.frag\":\"uniform lowp vec4 u_color;\\nvoid main() {\\ngl_FragColor = u_color;\\n}\",\"background.vert\":\"attribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform mediump vec2 u_coord_range;\\nuniform mediump float u_depth;\\nvoid main() {\\nvec3 v_pos = u_dvsMat3 * vec3(u_coord_range * a_pos, 1.0);\\ngl_Position = vec4(v_pos.xy, 0.0, 1.0);\\n}\"},bitBlit:{\"bitBlit.frag\":\"uniform lowp sampler2D u_tex;\\nuniform lowp float u_opacity;\\nvarying mediump vec2 v_uv;\\nvoid main() {\\nlowp vec4 color = texture2D(u_tex, v_uv);\\ngl_FragColor = color * u_opacity;\\n}\",\"bitBlit.vert\":\"attribute vec2 a_pos;\\nattribute vec2 a_tex;\\nvarying mediump vec2 v_uv;\\nvoid main(void) {\\ngl_Position = vec4(a_pos, 0.0, 1.0);\\nv_uv = a_tex;\\n}\"},blend:{\"blend.frag\":\"precision mediump float;\\nuniform sampler2D u_layerTexture;\\nuniform lowp float u_opacity;\\nuniform lowp float u_inFadeOpacity;\\n#ifndef NORMAL\\nuniform sampler2D u_backbufferTexture;\\n#endif\\nvarying mediump vec2 v_uv;\\nfloat rgb2v(in vec3 c) {\\nreturn max(c.x, max(c.y, c.z));\\n}\\nvec3 rgb2hsv(in vec3 c) {\\nvec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\\nvec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);\\nvec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);\\nfloat d = q.x - min(q.w, q.y);\\nfloat e = 1.0e-10;\\nreturn vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), min(d / (q.x + e), 1.0), q.x);\\n}\\nvec3 hsv2rgb(in vec3 c) {\\nvec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\\nvec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\\nreturn c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\\n}\\nvec3 tint(in vec3 Cb, in vec3 Cs) {\\nfloat vIn = rgb2v(Cb);\\nvec3 hsvTint = rgb2hsv(Cs);\\nvec3 hsvOut = vec3(hsvTint.x, hsvTint.y, vIn * hsvTint.z);\\nreturn hsv2rgb(hsvOut);\\n}\\nfloat overlay(in float Cb, in float Cs) {\\nreturn (1.0 - step(0.5, Cs)) * (1.0 - 2.0 * (1.0 - Cs ) * (1.0 - Cb)) + step(0.5, Cs) * (2.0 * Cs * Cb);\\n}\\nfloat colorDodge(in float Cb, in float Cs) {\\nreturn (Cb == 0.0) ? 0.0 : (Cs == 1.0) ? 1.0 : min(1.0, Cb / (1.0 - Cs));\\n}\\nfloat colorBurn(in float Cb, in float Cs) {\\nreturn (Cb == 1.0) ? 1.0 : (Cs == 0.0) ? 0.0 : 1.0 - min(1.0, (1.0 - Cb) / Cs);\\n}\\nfloat hardLight(in float Cb, in float Cs) {\\nreturn (1.0 - step(0.5, Cs)) * (2.0 * Cs * Cb) + step(0.5, Cs) * (1.0 - 2.0 * (1.0 - Cs) * (1.0 - Cb));\\n}\\nfloat reflectBlend(in float Cb, in float Cs) {\\nreturn (Cs == 1.0) ? Cs : min(Cb * Cb / (1.0 - Cs), 1.0);\\n}\\nfloat softLight(in float Cb, in float Cs) {\\nif (Cs <= 0.5) {\\nreturn Cb - (1.0 - 2.0 * Cs) * Cb * (1.0 - Cb);\\n}\\nif (Cb <= 0.25) {\\nreturn Cb + (2.0 * Cs - 1.0) * Cb * ((16.0 * Cb - 12.0) * Cb + 3.0);\\n}\\nreturn Cb + (2.0 * Cs - 1.0) * (sqrt(Cb) - Cb);\\n}\\nfloat vividLight(in float Cb, in float Cs) {\\nreturn (1.0 - step(0.5, Cs)) * colorBurn(Cb, 2.0 * Cs) + step(0.5, Cs) * colorDodge(Cb, (2.0 * (Cs - 0.5)));\\n}\\nfloat minv3(in vec3 c) {\\nreturn min(min(c.r, c.g), c.b);\\n}\\nfloat maxv3(in vec3 c) {\\nreturn max(max(c.r, c.g), c.b);\\n}\\nfloat lumv3(in vec3 c) {\\nreturn dot(c, vec3(0.3, 0.59, 0.11));\\n}\\nfloat satv3(vec3 c) {\\nreturn maxv3(c) - minv3(c);\\n}\\nvec3 clipColor(vec3 color) {\\nfloat lum = lumv3(color);\\nfloat mincol = minv3(color);\\nfloat maxcol = maxv3(color);\\nif (mincol < 0.0) {\\ncolor = lum + ((color - lum) * lum) / (lum - mincol);\\n}\\nif (maxcol > 1.0) {\\ncolor = lum + ((color - lum) * (1.0 - lum)) / (maxcol - lum);\\n}\\nreturn color;\\n}\\nvec3 setLum(vec3 cbase, vec3 clum) {\\nfloat lbase = lumv3(cbase);\\nfloat llum = lumv3(clum);\\nfloat ldiff = llum - lbase;\\nvec3 color = cbase + vec3(ldiff);\\nreturn clipColor(color);\\n}\\nvec3 setLumSat(vec3 cbase, vec3 csat, vec3 clum)\\n{\\nfloat minbase = minv3(cbase);\\nfloat sbase = satv3(cbase);\\nfloat ssat = satv3(csat);\\nvec3 color;\\nif (sbase > 0.0) {\\ncolor = (cbase - minbase) * ssat / sbase;\\n} else {\\ncolor = vec3(0.0);\\n}\\nreturn setLum(color, clum);\\n}\\nvoid main() {\\nvec4 src = texture2D(u_layerTexture, v_uv);\\n#ifdef NORMAL\\ngl_FragColor = src * u_opacity;\\n#else\\nvec4 dst = texture2D(u_backbufferTexture, v_uv);\\nvec3 Cs = src.a == 0.0 ? src.rgb : vec3(src.rgb / src.a);\\nvec3 Cb = dst.a == 0.0 ? dst.rgb : vec3(dst.rgb / dst.a);\\nfloat as = u_opacity * src.a;\\nfloat ab = dst.a;\\n#ifdef DESTINATION_OVER\\ngl_FragColor = vec4(as * Cs * (1.0 - ab) + ab * Cb, as + ab - as * ab);\\n#endif\\n#ifdef SOURCE_IN\\nvec4 color = vec4(as * Cs * ab, as * ab);\\nvec4 fadeColor = (1.0 - u_opacity) * u_inFadeOpacity * vec4(ab * Cb, ab);\\ngl_FragColor = color + fadeColor;\\n#endif\\n#ifdef DESTINATION_IN\\nvec4 color = vec4(ab * Cb * as, ab * as);\\nvec4 fadeColor = (1.0 - u_opacity) * u_inFadeOpacity * vec4(ab * Cb, ab);\\ngl_FragColor = color + fadeColor;\\n#endif\\n#ifdef SOURCE_OUT\\ngl_FragColor = vec4(as * Cs * (1.0 - ab), as * (1.0 - ab));\\n#endif\\n#ifdef DESTINATION_OUT\\ngl_FragColor = vec4(ab * Cb * (1.0 - as), ab * (1.0 - as));\\n#endif\\n#ifdef SOURCE_ATOP\\ngl_FragColor = vec4(as * Cs * ab + ab * Cb * (1.0 - as), ab);\\n#endif\\n#ifdef DESTINATION_ATOP\\ngl_FragColor = vec4(as * Cs * (1.0 - ab) + ab * Cb * as, as);\\n#endif\\n#ifdef XOR\\ngl_FragColor = vec4(as * Cs * (1.0 - ab) + ab * Cb * (1.0 - as),\\nas * (1.0 - ab) + ab * (1.0 - as));\\n#endif\\n#ifdef MULTIPLY\\ngl_FragColor = vec4(as * Cs * ab * Cb + (1.0 - ab) * as * Cs + (1.0 - as) * ab * Cb,\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SCREEN\\ngl_FragColor = vec4((Cs + Cb - Cs * Cb) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef OVERLAY\\nvec3 f = vec3(overlay(Cb.r, Cs.r), overlay(Cb.g, Cs.g), overlay(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef DARKEN\\ngl_FragColor = vec4(min(Cs, Cb) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef LIGHTER\\ngl_FragColor = vec4(as * Cs + ab * Cb, as + ab);\\n#endif\\n#ifdef LIGHTEN\\ngl_FragColor = vec4(max(Cs, Cb) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR_DODGE\\nvec3 f = vec3(colorDodge(Cb.r, Cs.r), colorDodge(Cb.g, Cs.g), colorDodge(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR_BURN\\nvec3 f = vec3(colorBurn(Cb.r, Cs.r), colorBurn(Cb.g, Cs.g), colorBurn(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef HARD_LIGHT\\nvec3 f = vec3(hardLight(Cb.r, Cs.r), hardLight(Cb.g, Cs.g), hardLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SOFT_LIGHT\\nvec3 f = vec3(softLight(Cb.r, Cs.r), softLight(Cb.g, Cs.g), softLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef DIFFERENCE\\ngl_FragColor = vec4(abs(Cb - Cs) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef EXCLUSION\\nvec3 f = Cs + Cb - 2.0 * Cs * Cb;\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef INVERT\\ngl_FragColor = vec4((1.0 - Cb) * as * ab + Cb * ab * (1.0 - as), ab);\\n#endif\\n#ifdef VIVID_LIGHT\\nvec3 f = vec3(vividLight(Cb.r, Cs.r),\\nvividLight(Cb.g, Cs.g),\\nvividLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef HUE\\nvec3 f = setLumSat(Cs,Cb,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SATURATION\\nvec3 f = setLumSat(Cb,Cs,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR\\nvec3 f = setLum(Cs,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef LUMINOSITY\\nvec3 f = setLum(Cb,Cs);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef PLUS\\ngl_FragColor = clamp(vec4(src.r + Cb.r, src.g + Cb.g, src.b + Cb.b, as + ab), 0.0, 1.0);\\n#endif\\n#ifdef MINUS\\ngl_FragColor = vec4(clamp(vec3(Cb.r - src.r, Cb.g - src.g, Cb.b - src.b), 0.0, 1.0), ab * as);\\n#endif\\n#ifdef AVERAGE\\nvec3 f = (Cb + Cs) / 2.0;\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef REFLECT\\nvec3 f = vec3(reflectBlend(Cb.r, Cs.r),\\nreflectBlend(Cb.g, Cs.g),\\nreflectBlend(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#endif\\n}\",\"blend.vert\":\"attribute vec2 a_position;\\nvarying mediump vec2 v_uv;\\nvoid main(void) {\\ngl_Position = vec4(a_position , 0.0, 1.0);\\nv_uv = (a_position + 1.0) / 2.0;\\n}\"},filtering:{\"bicubic.glsl\":\"vec4 computeWeights(float v) {\\nfloat b = 1.0 / 6.0;\\nfloat v2 = v * v;\\nfloat v3 = v2 * v;\\nfloat w0 = b * (-v3 + 3.0 * v2 - 3.0 * v + 1.0);\\nfloat w1 = b * (3.0 * v3 - 6.0 * v2 + 4.0);\\nfloat w2 = b * (-3.0 * v3 + 3.0 * v2 + 3.0 * v + 1.0);\\nfloat w3 = b * v3;\\nreturn vec4(w0, w1, w2, w3);\\n}\\nvec4 bicubicOffsetsAndWeights(float v) {\\nvec4 w = computeWeights(v);\\nfloat g0 = w.x + w.y;\\nfloat g1 = w.z + w.w;\\nfloat h0 = 1.0 - (w.y / g0) + v;\\nfloat h1 = 1.0 + (w.w / g1) - v;\\nreturn vec4(h0, h1, g0, g1);\\n}\\nvec4 sampleBicubicBSpline(sampler2D sampler, vec2 coords, vec2 texSize) {\\nvec2 eX = vec2(1.0 / texSize.x, 0.0);\\nvec2 eY = vec2(0.0, 1.0 / texSize.y);\\nvec2 texel = coords * texSize - 0.5;\\nvec3 hgX = bicubicOffsetsAndWeights(fract(texel).x).xyz;\\nvec3 hgY = bicubicOffsetsAndWeights(fract(texel).y).xyz;\\nvec2 coords10 = coords + hgX.x * eX;\\nvec2 coords00 = coords - hgX.y * eX;\\nvec2 coords11 = coords10 + hgY.x * eY;\\nvec2 coords01 = coords00 + hgY.x * eY;\\ncoords10 = coords10 - hgY.y * eY;\\ncoords00 = coords00 - hgY.y * eY;\\nvec4 color00 = texture2D(sampler, coords00);\\nvec4 color10 = texture2D(sampler, coords10);\\nvec4 color01 = texture2D(sampler, coords01);\\nvec4 color11 = texture2D(sampler, coords11);\\ncolor00 = mix(color00, color01, hgY.z);\\ncolor10 = mix(color10, color11, hgY.z);\\ncolor00 = mix(color00, color10, hgX.z);\\nreturn color00;\\n}\",\"bilinear.glsl\":\"vec4 sampleBilinear(sampler2D sampler, vec2 coords, vec2 texSize) {\\nvec2 texelStart = floor(coords * texSize);\\nvec2 coord0 = texelStart / texSize;\\nvec2 coord1 = (texelStart + vec2(1.0, 0.0)) / texSize;\\nvec2 coord2 = (texelStart + vec2(0.0, 1.0)) / texSize;\\nvec2 coord3 = (texelStart + vec2(1.0, 1.0)) / texSize;\\nvec4 color0 = texture2D(sampler, coord0);\\nvec4 color1 = texture2D(sampler, coord1);\\nvec4 color2 = texture2D(sampler, coord2);\\nvec4 color3 = texture2D(sampler, coord3);\\nvec2 blend = fract(coords * texSize);\\nvec4 color01 = mix(color0, color1, blend.x);\\nvec4 color23 = mix(color2, color3, blend.x);\\nreturn mix(color01, color23, blend.y);\\n}\",\"epx.glsl\":\"vec4 sampleEPX(sampler2D sampler, float size, vec2 coords, vec2 texSize) {\\nvec2 invSize = 1.0 / texSize;\\nvec2 texel = coords * texSize;\\nvec2 texel_i = floor(texel);\\nvec2 texel_frac = fract(texel);\\nvec4 colorP = texture2D(sampler, texel_i * invSize);\\nvec4 colorP1 = vec4(colorP);\\nvec4 colorP2 = vec4(colorP);\\nvec4 colorP3 = vec4(colorP);\\nvec4 colorP4 = vec4(colorP);\\nvec4 colorA = texture2D(sampler, (texel_i - vec2(0.0, 1.0)) * invSize);\\nvec4 colorB = texture2D(sampler, (texel_i + vec2(1.0, 0.0)) * invSize);\\nvec4 colorC = texture2D(sampler, (texel_i - vec2(1.0, 0.0)) * invSize);\\nvec4 colorD = texture2D(sampler, (texel_i + vec2(0.0, 1.0)) * invSize);\\nif (colorC == colorA && colorC != colorD && colorA != colorB) {\\ncolorP1 = colorA;\\n}\\nif (colorA == colorB && colorA != colorC && colorB != colorD) {\\ncolorP2 = colorB;\\n}\\nif (colorD == colorC && colorD != colorB && colorC != colorA) {\\ncolorP3 = colorC;\\n}\\nif (colorB == colorD && colorB != colorA && colorD != colorC) {\\ncolorP4 = colorD;\\n}\\nvec4 colorP12 = mix(colorP1, colorP2, texel_frac.x);\\nvec4 colorP34 = mix(colorP1, colorP2, texel_frac.x);\\nreturn mix(colorP12, colorP34, texel_frac.y);\\n}\"},fx:{integrate:{\"integrate.frag\":\"precision mediump float;\\nuniform lowp sampler2D u_sourceTexture;\\nuniform lowp sampler2D u_maskTexture;\\nuniform mediump float u_zoomLevel;\\nuniform highp float u_timeDelta;\\nuniform highp float u_animationTime;\\nvarying highp vec2 v_texcoord;\\n#include \\nvoid main()\\n{\\n#ifdef DELTA\\nvec4 texel = texture2D(u_sourceTexture, v_texcoord);\\nvec4 data0 = texture2D(u_maskTexture, v_texcoord);\\nfloat flags = data0.r * 255.0;\\nfloat groupMinZoom = data0.g * 255.0;\\nfloat isVisible = getFilterBit(flags, 0);\\nfloat wouldClip = step(groupMinZoom, u_zoomLevel);\\nfloat direction = wouldClip * 1.0 + (1.0 - wouldClip) * -1.0;\\nfloat dt = u_timeDelta / max(u_animationTime, 0.0001);\\nvec4 nextState = vec4(texel + direction * dt);\\ngl_FragColor = vec4(nextState);\\n#elif defined(UPDATE)\\nvec4 texel = texture2D(u_sourceTexture, v_texcoord);\\ngl_FragColor = texel;\\n#endif\\n}\",\"integrate.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos;\\ngl_Position = vec4(a_pos * 2.0 - 1.0, 0.0, 1.0);\\n}\"}},highlight:{\"blur.frag\":\"varying mediump vec2 v_texcoord;\\nuniform mediump vec4 u_direction;\\nuniform mediump mat4 u_channelSelector;\\nuniform mediump float u_sigma;\\nuniform sampler2D u_texture;\\nmediump float gauss1(mediump vec2 dir) {\\nreturn exp(-dot(dir, dir) / (2.0 * u_sigma * u_sigma));\\n}\\nmediump vec4 selectChannel(mediump vec4 sample) {\\nreturn u_channelSelector * sample;\\n}\\nvoid accumGauss1(mediump float i, inout mediump float tot, inout mediump float weight) {\\nmediump float w = gauss1(i * u_direction.xy);\\ntot += selectChannel(texture2D(u_texture, v_texcoord + i * u_direction.zw))[3] * w;\\nweight += w;\\n}\\nvoid main(void) {\\nmediump float tot = 0.0;\\nmediump float weight = 0.0;\\naccumGauss1(-5.0, tot, weight);\\naccumGauss1(-4.0, tot, weight);\\naccumGauss1(-3.0, tot, weight);\\naccumGauss1(-2.0, tot, weight);\\naccumGauss1(-1.0, tot, weight);\\naccumGauss1(0.0, tot, weight);\\naccumGauss1(1.0, tot, weight);\\naccumGauss1(2.0, tot, weight);\\naccumGauss1(3.0, tot, weight);\\naccumGauss1(4.0, tot, weight);\\naccumGauss1(5.0, tot, weight);\\ngl_FragColor = vec4(0.0, 0.0, 0.0, tot / weight);\\n}\",\"highlight.frag\":\"varying mediump vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform mediump float u_sigma;\\nuniform sampler2D u_shade;\\nuniform mediump vec2 u_minMaxDistance;\\nmediump float estimateDistance() {\\nmediump float y = texture2D(u_texture, v_texcoord)[3];\\nconst mediump float y0 = 0.5;\\nmediump float m0 = 1.0 / (sqrt(2.0 * 3.1415) * u_sigma);\\nmediump float d = (y - y0) / m0;\\nreturn d;\\n}\\nmediump vec4 shade(mediump float d) {\\nmediump float mappedDistance = (d - u_minMaxDistance.x) / (u_minMaxDistance.y - u_minMaxDistance.x);\\nmappedDistance = clamp(mappedDistance, 0.0, 1.0);\\nreturn texture2D(u_shade, vec2(mappedDistance, 0.5));\\n}\\nvoid main(void) {\\nmediump float d = estimateDistance();\\ngl_FragColor = shade(d);\\n}\",\"textured.vert\":\"attribute mediump vec2 a_position;\\nattribute mediump vec2 a_texcoord;\\nvarying mediump vec2 v_texcoord;\\nvoid main(void) {\\ngl_Position = vec4(a_position, 0.0, 1.0);\\nv_texcoord = a_texcoord;\\n}\"},magnifier:{\"magnifier.frag\":\"uniform lowp vec4 u_background;\\nuniform mediump sampler2D u_readbackTexture;\\nuniform mediump sampler2D u_maskTexture;\\nuniform mediump sampler2D u_overlayTexture;\\nuniform bool u_maskEnabled;\\nuniform bool u_overlayEnabled;\\nvarying mediump vec2 v_texCoord;\\nconst lowp float barrelFactor = 1.1;\\nlowp vec2 barrel(lowp vec2 uv) {\\nlowp vec2 uvn = uv * 2.0 - 1.0;\\nif (uvn.x == 0.0 && uvn.y == 0.0) {\\nreturn vec2(0.5, 0.5);\\n}\\nlowp float theta = atan(uvn.y, uvn.x);\\nlowp float r = pow(length(uvn), barrelFactor);\\nreturn r * vec2(cos(theta), sin(theta)) * 0.5 + 0.5;\\n}\\nvoid main(void)\\n{\\nlowp vec4 color = texture2D(u_readbackTexture, barrel(v_texCoord));\\ncolor = (color + (1.0 - color.a) * u_background);\\nlowp float mask = u_maskEnabled ? texture2D(u_maskTexture, v_texCoord).a : 1.0;\\ncolor *= mask;\\nlowp vec4 overlayColor = u_overlayEnabled ? texture2D(u_overlayTexture, v_texCoord) : vec4(0);\\ngl_FragColor = overlayColor + (1.0 - overlayColor.a) * color;\\n}\",\"magnifier.vert\":\"precision mediump float;\\nattribute mediump vec2 a_pos;\\nuniform mediump vec4 u_drawPos;\\nvarying mediump vec2 v_texCoord;\\nvoid main(void)\\n{\\nv_texCoord = a_pos;\\ngl_Position = vec4(u_drawPos.xy + vec2(a_pos - 0.5) * u_drawPos.zw, 0.0, 1.0);\\n}\"},materials:{\"attributeData.glsl\":\"uniform highp sampler2D u_attributeData0;\\nuniform highp sampler2D u_attributeData1;\\nuniform highp sampler2D u_attributeData2;\\nuniform highp sampler2D u_attributeData3;\\nuniform highp int u_attributeTextureSize;\\nhighp vec2 getAttributeDataCoords(in highp vec4 id) {\\nhighp vec4 texel = unpackDisplayIdTexel(id);\\nhighp float size = float(u_attributeTextureSize);\\nhighp float u32 = float(int(texel.r) + int(texel.g) * 256 + int(texel.b) * 256 * 256 + int(texel.a) * 256 * 256 * 256);\\nhighp float col = mod(u32, size);\\nhighp float row = (u32 - col) / size;\\nhighp float u = col / size;\\nhighp float v = row / size;\\nreturn vec2(u, v);\\n}\\nhighp vec4 getAttributeData0(in highp vec4 id) {\\nvec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData0, coords);\\n}\\nhighp vec4 getAttributeData1(in highp vec4 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData1, coords);\\n}\\nhighp vec4 getAttributeData2(in highp vec4 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData2, coords);\\n}\\nhighp vec4 getAttributeData3(in highp vec4 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData3, coords);\\n}\\nfloat u88VVToFloat(in vec2 v) {\\nbool isMagic = v.x == 255.0 && v.y == 255.0;\\nif (isMagic) {\\nreturn NAN_MAGIC_NUMBER;\\n}\\nreturn (v.x + v.y * float(0x100)) - 32768.0;\\n}\",\"constants.glsl\":\"const float C_DEG_TO_RAD = 3.14159265359 / 180.0;\\nconst float C_256_TO_RAD = 3.14159265359 / 128.0;\\nconst float SIGNED_BYTE_TO_UNSIGNED = 128.0;\\nconst float POSITION_PRECISION = 1.0 / 8.0;\\nconst float FILL_POSITION_PRECISION = 1.0 / 1.0;\\nconst float SOFT_EDGE_RATIO = 1.0;\\nconst float THIN_LINE_WIDTH_FACTOR = 1.1;\\nconst float THIN_LINE_HALF_WIDTH = 1.0;\\nconst float EXTRUDE_SCALE_PLACEMENT_PADDING = 1.0 / 4.0;\\nconst float OFFSET_PRECISION = 1.0 / 8.0;\\nconst float OUTLINE_SCALE = 1.0 / 5.0;\\nconst float SDF_FONT_SIZE = 24.0;\\nconst float MAX_SDF_DISTANCE = 8.0;\\nconst float PLACEMENT_PADDING = 8.0;\\nconst float EPSILON = 0.0000001;\\nconst int MAX_FILTER_COUNT = 2;\\nconst int ATTR_VV_SIZE = 0;\\nconst int ATTR_VV_COLOR = 1;\\nconst int ATTR_VV_OPACITY = 2;\\nconst int ATTR_VV_ROTATION = 3;\\nconst highp float NAN_MAGIC_NUMBER = 1e-30;\",fill:{\"common.glsl\":\"#ifdef PATTERN\\nuniform mediump vec2 u_mosaicSize;\\n#endif\\n#ifdef DOT_DENSITY\\nuniform lowp vec4 u_isActive[ 2 ];\\nuniform highp float u_dotValue;\\nuniform highp float u_tileDotsOverArea;\\nuniform highp float u_dotTextureDotCount;\\nuniform mediump float u_tileZoomFactor;\\n#endif\\nvarying vec3 v_pos;\\nvarying lowp float v_opacity;\\nvarying lowp vec4 v_color;\\nvarying highp vec4 v_id;\\nvarying highp float v_flags;\\n#ifdef PATTERN\\nvarying mediump vec4 v_tlbr;\\nvarying mediump vec2 v_tileTextureCoord;\\n#endif\\n#ifdef DOT_DENSITY\\nvarying highp vec2 v_dotTextureCoords;\\nvarying highp vec4 v_dotThresholds[ 2 ];\\n#endif\",\"fill.frag\":\"precision highp float;\\n#include \\n#include \\n#include \\n#ifdef PATTERN\\nuniform lowp sampler2D u_texture;\\n#endif\\n#ifdef DOT_DENSITY\\nuniform mediump mat4 u_dotColors[ 2 ];\\nuniform sampler2D u_dotTextures[ 2 ];\\nuniform vec4 u_dotBackgroundColor;\\n#endif\\nvoid main() {\\n#ifdef ID\\ngl_FragColor = v_id;\\n#elif defined(PATTERN)\\nmediump vec2 normalizedTextureCoord = mod(v_tileTextureCoord, 1.0);\\nmediump vec2 samplePos = mix(v_tlbr.xy, v_tlbr.zw, normalizedTextureCoord);\\nlowp vec4 color = texture2D(u_texture, samplePos);\\ngl_FragColor = v_opacity * v_color * color;\\n#elif defined(DOT_DENSITY) && !defined(HIGHLIGHT)\\nvec4 textureThresholds0 = texture2D(u_dotTextures[0], v_dotTextureCoords);\\nvec4 textureThresholds1 = texture2D(u_dotTextures[1], v_dotTextureCoords);\\nvec4 difference0 = v_dotThresholds[0] - textureThresholds0;\\nvec4 difference1 = v_dotThresholds[1] - textureThresholds1;\\n#ifdef DD_DOT_BLENDING\\nvec4 isPositive0 = step(0.0, difference0);\\nvec4 isPositive1 = step(0.0, difference1);\\nfloat weightSum = dot(isPositive0, difference0) + dot(isPositive1, difference1);\\nfloat lessThanEqZero = step(weightSum, 0.0);\\nfloat greaterThanZero = 1.0 - lessThanEqZero ;\\nfloat divisor = (weightSum + lessThanEqZero);\\nvec4 weights0 = difference0 * isPositive0 / divisor;\\nvec4 weights1 = difference1 * isPositive1 / divisor;\\nvec4 dotColor = u_dotColors[0] * weights0 + u_dotColors[1] * weights1;\\nvec4 preEffectColor = greaterThanZero * dotColor + lessThanEqZero * u_dotBackgroundColor;\\n#else\\nfloat diffMax = max(max4(difference0), max4(difference1));\\nfloat lessThanZero = step(diffMax, 0.0);\\nfloat greaterOrEqZero = 1.0 - lessThanZero;\\nvec4 isMax0 = step(diffMax, difference0);\\nvec4 isMax1 = step(diffMax, difference1);\\nvec4 dotColor = u_dotColors[0] * isMax0 + u_dotColors[1] * isMax1;\\nvec4 preEffectColor = greaterOrEqZero * dotColor + lessThanZero * u_dotBackgroundColor;\\n#endif\\ngl_FragColor = preEffectColor;\\n#else\\ngl_FragColor = v_opacity * v_color;\\n#endif\\n#ifdef HIGHLIGHT\\ngl_FragColor.a = 1.0;\\n#endif\\n}\",\"fill.vert\":\"precision highp float;\\n#ifdef DOT_DENSITY\\nattribute float a_inverseArea;\\nvec4 a_color = vec4(0.0, 0.0, 0.0, 1.0);\\nvec4 a_aux3 = vec4(0.0);\\nvec2 a_zoomRange = vec2(0.0, 10000.0);\\n#else\\nattribute vec4 a_color;\\nattribute vec4 a_tlbr;\\nattribute vec4 a_aux1;\\nattribute vec2 a_aux2;\\nattribute vec4 a_aux3;\\nattribute vec2 a_zoomRange;\\n#endif\\n#include \\n#include \\n#ifdef DOT_DENSITY\\nvec4 dotThreshold(vec4 featureAttrOverFeatureArea, float dotValue, float tileDotsOverArea) {\\nreturn featureAttrOverFeatureArea * (1.0 / dotValue) * (1.0 / tileDotsOverArea);\\n}\\n#endif\\nvoid main()\\n{\\nINIT;\\nfloat a_bitSet = a_aux3.a;\\nv_color = getColor(a_color, a_bitSet, 0);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_pos = u_dvsMat3 * vec3(a_pos * FILL_POSITION_PRECISION, 1.);\\nv_flags = getFilterFlags();\\n#ifdef PATTERN\\nvec2 aux2 = (1.0 / SIGNED_BYTE_TO_UNSIGNED) * a_aux2;\\nfloat width = u_zoomFactor * a_aux1.x * aux2.x;\\nfloat height = u_zoomFactor * a_aux1.y * aux2.y;\\nfloat angle = C_256_TO_RAD * a_aux3.z;\\nfloat sinA = sin(angle);\\nfloat cosA = cos(angle);\\nmat3 patternMatrix = mat3(cosA / width, sinA / height, 0,\\n-sinA / width, cosA / height, 0,\\n0, 0, 1);\\nvec2 symbolOffset = (a_aux1.zw - SIGNED_BYTE_TO_UNSIGNED) / vec2(width, height);\\nv_tileTextureCoord = (patternMatrix * vec3(a_pos * FILL_POSITION_PRECISION, 1.0)).xy - symbolOffset;\\nv_tlbr = a_tlbr / u_mosaicSize.xyxy;\\n#elif defined(DOT_DENSITY)\\nvec4 ddAttributeData0 = getAttributeData2(a_id) * u_isActive[0] * a_inverseArea;\\nvec4 ddAttributeData1 = getAttributeData3(a_id) * u_isActive[1] * a_inverseArea;\\nfloat size = u_tileZoomFactor * 512.0 * 1.0 / u_pixelRatio;\\nv_dotThresholds[0] = dotThreshold(ddAttributeData0, u_dotValue, u_tileDotsOverArea);\\nv_dotThresholds[1] = dotThreshold(ddAttributeData1, u_dotValue, u_tileDotsOverArea);\\nv_dotTextureCoords = (a_pos * FILL_POSITION_PRECISION + 0.5) / size;\\n#endif\\ngl_Position = vec4(clip(v_color, v_pos, v_flags, a_zoomRange), 1.0);\\n}\"},icon:{\"common.glsl\":\"uniform lowp vec2 u_mosaicSize;\\nvarying lowp vec4 v_color;\\nvarying highp vec4 v_id;\\nvarying highp vec4 v_sizeTex;\\nvarying mediump vec3 v_pos;\\nvarying highp float v_filters;\\nvarying lowp float v_opacity;\\n#ifdef SDF\\nvarying lowp vec4 v_outlineColor;\\nvarying mediump float v_outlineWidth;\\nvarying mediump float v_distRatio;\\nvarying mediump float v_overridingOutlineColor;\\nvarying mediump float v_isThin;\\n#endif\",\"icon.frag\":\"precision mediump float;\\n#include \\n#include \\n#include \\n#include \\n#include \\nuniform lowp sampler2D u_texture;\\nvoid main()\\n{\\nvec2 v_size = v_sizeTex.xy;\\nvec2 v_tex = v_sizeTex.zw;\\n#ifdef SDF\\nlowp vec4 fillPixelColor = v_color;\\nfloat d = 0.5 - rgba2float(texture2D(u_texture, v_tex));\\nfloat size = max(v_size.x, v_size.y);\\nfloat dist = d * size * SOFT_EDGE_RATIO * v_distRatio;\\nfillPixelColor *= clamp(0.5 - dist, 0.0, 1.0);\\nfloat outlineWidth = v_outlineWidth;\\n#ifdef HIGHLIGHT\\noutlineWidth = max(outlineWidth, 4.0 * v_isThin);\\n#endif\\nif (outlineWidth > 0.25) {\\nlowp vec4 outlinePixelColor = v_overridingOutlineColor * v_color + (1.0 - v_overridingOutlineColor) * v_outlineColor;\\nfloat clampedOutlineSize = min(outlineWidth, size);\\noutlinePixelColor *= clamp(0.5 - abs(dist) + clampedOutlineSize * 0.5, 0.0, 1.0);\\ngl_FragColor = v_opacity * ((1.0 - outlinePixelColor.a) * fillPixelColor + outlinePixelColor);\\n}\\nelse {\\ngl_FragColor = v_opacity * fillPixelColor;\\n}\\n#else\\nlowp vec4 texColor = texture2D(u_texture, v_tex);\\ngl_FragColor = v_opacity * texColor;\\n#endif\\n#ifdef HIGHLIGHT\\ngl_FragColor.a = step(1.0 / 255.0, gl_FragColor.a);\\n#endif\\n#ifdef ID\\nif (gl_FragColor.a < 1.0 / 255.0) {\\ndiscard;\\n}\\ngl_FragColor = v_id;\\n#endif\\n}\",\"icon.vert\":\"precision highp float;\\nattribute vec4 a_color;\\nattribute vec4 a_outlineColor;\\nattribute vec4 a_sizeAndOutlineWidth;\\nattribute vec2 a_vertexOffset;\\nattribute vec2 a_texCoords;\\nattribute vec2 a_bitSetAndDistRatio;\\nattribute vec2 a_zoomRange;\\n#include \\n#include \\nvec2 getMarkerSize(inout vec2 offset, inout vec2 baseSize, inout float outlineSize, in float referenceSize, in float bitSet) {\\n#ifdef VV_SIZE\\nfloat r = getSize(baseSize.y) / referenceSize;\\nbaseSize.xy *= r;\\noffset.xy *= r;\\nfloat scaleSymbolProportionally = getBit(bitSet, 3);\\noutlineSize *= scaleSymbolProportionally * (r - 1.0) + 1.0;\\n#endif\\nreturn baseSize;\\n}\\nvec3 getOffset(in vec2 in_offset, float a_bitSet) {\\nfloat isMapAligned = getBit(a_bitSet, 0);\\nvec3 offset = getRotation() * vec3(in_offset, 0.0);\\nreturn getMatrix(isMapAligned) * offset;\\n}\\nvoid main()\\n{\\nINIT;\\nvec2 a_size = a_sizeAndOutlineWidth.xy * a_sizeAndOutlineWidth.xy / 128.0;\\nvec2 a_offset = a_vertexOffset / 16.0;\\nfloat a_outlineSize = a_sizeAndOutlineWidth.z * a_sizeAndOutlineWidth.z / 128.0;\\nfloat a_bitSet = a_bitSetAndDistRatio.x;\\nvec2 v_size = getMarkerSize(a_offset, a_size, a_outlineSize, a_sizeAndOutlineWidth.w * a_sizeAndOutlineWidth.w / 128.0, a_bitSet);\\nvec2 v_tex = a_texCoords / u_mosaicSize;\\nv_color = getColor(a_color, a_bitSet, 1);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_filters = getFilterFlags();\\nv_pos = u_dvsMat3 * vec3(a_pos * POSITION_PRECISION, 1.0) + getOffset(a_offset, a_bitSet);\\nv_sizeTex = vec4(v_size.xy, v_tex.xy);\\n#ifdef SDF\\nv_isThin = getBit(a_bitSet, 2);\\n#ifdef VV_COLOR\\nv_overridingOutlineColor = v_isThin;\\n#else\\nv_overridingOutlineColor = 0.0;\\n#endif\\nv_outlineWidth = min(a_outlineSize, max(max(v_size.x, v_size.y) - 0.99, 0.0));\\nv_outlineColor = a_outlineColor;\\nv_distRatio = a_bitSetAndDistRatio.y / 126.0;\\n#endif\\ngl_Position = vec4(clip(v_color, v_pos, v_filters, a_zoomRange), 1.0);\\n}\"},label:{\"common.glsl\":\"uniform mediump float u_zoomLevel;\\nuniform mediump float u_mapRotation;\\nuniform mediump float u_mapAligned;\\nuniform mediump vec2 u_mosaicSize;\\nvarying mediump float v_antialiasingWidth;\\nvarying mediump float v_edgeDistanceOffset;\\nvarying mediump vec2 v_tex;\\nvarying mediump vec4 v_color;\\nvarying lowp vec4 v_animation;\",\"label.frag\":\"#include \",\"label.vert\":\"precision highp float;\\n#include \\n#include \\nattribute vec4 a_color;\\nattribute vec4 a_haloColor;\\nattribute vec4 a_texAndSize;\\nattribute vec4 a_refSymbolAndPlacementOffset;\\nattribute vec4 a_glyphData;\\nattribute vec2 a_vertexOffset;\\nattribute vec2 a_texCoords;\\nuniform float u_isHalo;\\nuniform float u_mapRotation;\\nuniform float u_mapAligned;\\nfloat getZ(in float minZoom, in float maxZoom, in float angle) {\\nfloat glyphAngle = angle * 360.0 / 254.0;\\nfloat mapAngle = u_mapRotation * 360.0 / 254.0;\\nfloat diffAngle = min(360.0 - abs(mapAngle - glyphAngle), abs(mapAngle - glyphAngle));\\nfloat z = 0.0;\\nz += u_mapAligned * (2.0 * (1.0 - step(minZoom, u_currentZoom)));\\nz += u_mapAligned * 2.0 * step(90.0, diffAngle);\\nz += 2.0 * (1.0 - step(u_currentZoom, maxZoom));\\nreturn z;\\n}\\nvoid main()\\n{\\nINIT;\\nfloat groupMinZoom = getMinZoom();\\nfloat glyphMinZoom = a_glyphData.x;\\nfloat glyphMaxZoom = a_glyphData.y;\\nfloat glyphAngle = a_glyphData.z;\\nfloat a_minZoom = max(groupMinZoom, glyphMinZoom);\\nfloat a_placementPadding = a_refSymbolAndPlacementOffset.x * EXTRUDE_SCALE_PLACEMENT_PADDING;\\nvec2 a_placementDir = unpack_u8_nf32(a_refSymbolAndPlacementOffset.zw);\\nfloat a_refSymbolSize = a_refSymbolAndPlacementOffset.y;\\nfloat fontSize = a_texAndSize.z;\\nfloat haloSize = a_texAndSize.w * OUTLINE_SCALE;\\nvec2 vertexOffset = a_vertexOffset * OFFSET_PRECISION;\\nvec3 pos = vec3(a_pos * POSITION_PRECISION, 1.0);\\nfloat z = getZ(a_minZoom, glyphMaxZoom, glyphAngle);\\nfloat fontScale = fontSize / SDF_FONT_SIZE;\\nfloat halfSize = getSize(a_refSymbolSize) / 2.0;\\nfloat animation = pow(getAnimationState(), vec4(2.0)).r;\\nv_color = animation * ((1.0 - u_isHalo) * a_color + (u_isHalo * a_haloColor));\\nv_opacity = 1.0;\\nv_tex = a_texCoords / u_mosaicSize;\\nv_edgeDistanceOffset = u_isHalo * haloSize / fontScale / MAX_SDF_DISTANCE;\\nv_antialiasingWidth = 0.105 * SDF_FONT_SIZE / fontSize / u_pixelRatio;\\nvec2 placementOffset = a_placementDir * (halfSize + a_placementPadding);\\nvec3 glyphOffset = u_displayMat3 * vec3(vertexOffset + placementOffset, 0.0);\\nvec3 v_pos = vec3((u_dvsMat3 * pos + glyphOffset).xy, z);\\ngl_Position = vec4(applyFilterLabels(v_color, v_pos, getFilterFlags()), 1.0);\\n#ifdef DEBUG\\nv_color = vec4(a_color.rgb, z == 0.0 ? 1.0 : 0.645);\\n#endif\\n}\"},line:{\"common.glsl\":\"varying lowp vec4 v_color;\\nvarying highp vec4 v_id;\\nvarying mediump vec2 v_normal;\\nvarying mediump float v_lineHalfWidth;\\nvarying lowp float v_opacity;\\nvarying highp vec3 v_pos;\\n#ifdef PATTERN\\nuniform mediump vec2 u_mosaicSize;\\nvarying mediump vec4 v_tlbr;\\nvarying mediump vec2 v_patternSize;\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nvarying highp float v_accumulatedDistance;\\n#endif\",\"line.frag\":\"precision lowp float;\\n#include \\n#include \\n#include \\nuniform lowp float u_blur;\\n#if defined(PATTERN) || defined(SDF)\\nuniform sampler2D u_texture;\\n#endif\\n#ifdef SDF\\nconst float sdfPatternHalfWidth = 15.5;\\nuniform mediump float u_antialiasing;\\n#endif\\nvoid main()\\n{\\nmediump float thinLineFactor = max(THIN_LINE_WIDTH_FACTOR * step(v_lineHalfWidth, THIN_LINE_HALF_WIDTH), 1.0);\\nmediump float fragDist = length(v_normal) * v_lineHalfWidth;\\nlowp float alpha = clamp(thinLineFactor * (v_lineHalfWidth - fragDist) / (u_blur + thinLineFactor - 1.0), 0.0, 1.0);\\n#if defined(SDF) && !defined(HIGHLIGHT)\\nmediump float lineHalfWidth = v_lineHalfWidth;\\nmediump float lineWidthRatio = max(lineHalfWidth - 0.55 * u_antialiasing, 0.25) / sdfPatternHalfWidth;\\nmediump float relativeTexX = mod(v_accumulatedDistance * 0.5 / (lineWidthRatio * v_patternSize.x), 1.0);\\nmediump float relativeTexY = 0.5 + 0.25 * v_normal.y;\\nmediump vec2 texCoord = mix(v_tlbr.xy, v_tlbr.zw, vec2(relativeTexX, relativeTexY));\\nmediump float d = rgba2float(texture2D(u_texture, texCoord)) - 0.5;\\nfloat dist = d * lineHalfWidth;\\nlowp vec4 fillPixelColor = v_opacity * alpha * clamp(0.5 - dist, 0.0, 1.0) * v_color;\\ngl_FragColor = fillPixelColor;\\n#elif defined(PATTERN) && !defined(HIGHLIGHT)\\nmediump float lineHalfWidth = v_lineHalfWidth;\\nmediump float adjustedPatternWidth = v_patternSize.x * 2.0 * lineHalfWidth / v_patternSize.y;\\nmediump float relativeTexX = mod(v_accumulatedDistance / adjustedPatternWidth, 1.0);\\nmediump float relativeTexY = 0.5 + 0.5 * v_normal.y;\\nmediump vec2 texCoord = mix(v_tlbr.xy, v_tlbr.zw, vec2(relativeTexY, relativeTexX));\\nlowp vec4 color = texture2D(u_texture, texCoord);\\ngl_FragColor = v_opacity * alpha * v_color * color;\\n#else\\ngl_FragColor = v_opacity * alpha * v_color;\\n#endif\\n#ifdef HIGHLIGHT\\ngl_FragColor.a = step(1.0 / 255.0, gl_FragColor.a);\\n#endif\\n#ifdef ID\\nif (gl_FragColor.a < 1.0 / 255.0) {\\ndiscard;\\n}\\ngl_FragColor = v_id;\\n#endif\\n}\",\"line.vert\":\"precision highp float;\\nattribute vec4 a_color;\\nattribute vec4 a_offsetAndNormal;\\nattribute vec2 a_accumulatedDistanceAndHalfWidth;\\nattribute vec4 a_tlbr;\\nattribute vec4 a_segmentDirection;\\nattribute vec2 a_aux;\\nattribute vec2 a_zoomRange;\\n#include \\n#include \\nconst float SCALE = 1.0 / 31.0;\\nconst float WIDTH_SCALE = 1.0 / 1024.0;\\nfloat getBaseLineHalfWidth(in float in_lineHalfWidth) {\\n#ifdef VV_SIZE\\nfloat referenceHalfWidth = a_aux.x * WIDTH_SCALE;\\nfloat lineWidth = 2.0 * in_lineHalfWidth;\\nreturn 0.5 * (in_lineHalfWidth / referenceHalfWidth) * getSize(lineWidth);\\n#else\\nreturn in_lineHalfWidth;\\n#endif\\n}\\nfloat getLineHalfWidth(in float baseWidth, in float aa) {\\nfloat halfWidth = max(baseWidth + aa, 0.45) + 0.1 * aa;\\n#ifdef HIGHLIGHT\\nhalfWidth = max(halfWidth, 2.0);\\n#endif\\nreturn halfWidth;\\n}\\nvec2 getDist(in vec2 offset, in float halfWidth) {\\nfloat thinLineFactor = max(THIN_LINE_WIDTH_FACTOR * step(halfWidth, THIN_LINE_HALF_WIDTH), 1.0);\\nreturn thinLineFactor * halfWidth * offset * SCALE;\\n}\\nvoid main()\\n{\\nINIT;\\nfloat a_bitSet = a_segmentDirection.w;\\nfloat a_accumulatedDist = a_accumulatedDistanceAndHalfWidth.x;\\nfloat a_lineHalfWidth = a_accumulatedDistanceAndHalfWidth.y * WIDTH_SCALE;\\nfloat aa = 0.5 * u_antialiasing;\\nvec2 a_offset = a_offsetAndNormal.xy;\\nfloat baseWidth = getBaseLineHalfWidth(a_lineHalfWidth);\\nfloat halfWidth = getLineHalfWidth(baseWidth, aa);\\nfloat z = 2.0 * step(baseWidth, 0.0);\\nvec2 dist = getDist(a_offset, halfWidth);\\nvec3 offset = u_displayViewMat3 * vec3(dist, 0.0);\\nvec3 pos = u_dvsMat3 * vec3(a_pos * POSITION_PRECISION, 1.0) + offset;\\nv_color = getColor(a_color, a_bitSet, 0);\\nv_opacity = getOpacity();\\nv_lineHalfWidth = halfWidth;\\nv_id = norm(a_id);\\nv_normal = a_offsetAndNormal.zw * SCALE;\\nv_pos = vec3(pos.xy, z);\\n#ifdef PATTERN\\nv_tlbr = a_tlbr / u_mosaicSize.xyxy;\\nv_patternSize = vec2(a_tlbr.z - a_tlbr.x, a_tlbr.w - a_tlbr.y);\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nv_accumulatedDistance = a_accumulatedDist * u_zoomFactor + dot(SCALE * a_segmentDirection.xy, dist);\\n#endif\\ngl_Position = vec4(clip(v_color, v_pos, getFilterFlags(), a_zoomRange), 1.0);\\n}\"},text:{\"common.glsl\":\"uniform highp vec2 u_mosaicSize;\\nvarying highp vec4 v_id;\\nvarying mediump vec3 v_pos;\\nvarying lowp float v_opacity;\\nvarying lowp vec4 v_color;\\nvarying highp vec2 v_tex;\\nvarying mediump float v_antialiasingWidth;\\nvarying mediump float v_edgeDistanceOffset;\\nvarying lowp float v_transparency;\",\"text.frag\":\"precision mediump float;\\n#include \\nuniform lowp sampler2D u_texture;\\nvoid main()\\n{\\nfloat SDF_CUTOFF = (2.0 / 8.0);\\nfloat SDF_BASE_EDGE_DIST = 1.0 - SDF_CUTOFF;\\nlowp float dist = texture2D(u_texture, v_tex).a;\\nmediump float edge = SDF_BASE_EDGE_DIST - v_edgeDistanceOffset;\\n#ifdef HIGHLIGHT\\nedge /= 2.0;\\n#endif\\nlowp float aa = v_antialiasingWidth;\\nlowp float alpha = smoothstep(edge - aa, edge + aa, dist);\\ngl_FragColor = alpha * v_color * v_opacity;\\n#ifdef ID\\nif (gl_FragColor.a < 1.0 / 255.0) {\\ndiscard;\\n}\\ngl_FragColor = v_id;\\n#endif\\n}\",\"text.vert\":\"precision highp float;\\n#include \\n#include \\n#include \\nattribute vec4 a_color;\\nattribute vec4 a_haloColor;\\nattribute vec4 a_texFontSize;\\nattribute vec4 a_aux;\\nattribute vec2 a_zoomRange;\\nattribute vec2 a_vertexOffset;\\nattribute vec2 a_texCoords;\\nuniform float u_isHalo;\\nfloat getTextSize(in float baseSize, in float referenceSize) {\\n#ifdef VV_SIZE\\nreturn getSize(baseSize);\\n#endif\\nreturn baseSize;\\n}\\nvoid main()\\n{\\nINIT;\\nfloat a_referenceSize = a_aux.z * a_aux.z / 256.0;\\nfloat a_bitSet = a_aux.w;\\nfloat a_fontSize = a_texFontSize.z;\\nvec2 a_offset = a_vertexOffset * OFFSET_PRECISION;\\nvec3 in_pos = vec3(a_pos * POSITION_PRECISION, 1.0);\\nfloat fontSize = getTextSize(a_fontSize, a_referenceSize);\\nfloat scaleFactor = fontSize / a_fontSize;\\nfloat fontScale = fontSize / SDF_FONT_SIZE;\\nvec3 offset = getRotation() * vec3(scaleFactor * a_offset, 0.0);\\nmat3 extrudeMatrix = getBit(a_bitSet, 0) == 1.0 ? u_displayViewMat3 : u_displayMat3;\\nv_color = u_isHalo * a_haloColor + (1.0 - u_isHalo) * getColor(a_color, a_bitSet, 1);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_tex = a_texCoords / u_mosaicSize;\\nv_pos = u_dvsMat3 * in_pos + extrudeMatrix * offset;\\nv_edgeDistanceOffset = u_isHalo * OUTLINE_SCALE * a_texFontSize.w / fontScale / MAX_SDF_DISTANCE;\\nv_antialiasingWidth = 0.105 * SDF_FONT_SIZE / fontSize / u_pixelRatio;\\ngl_Position = vec4(clip(v_color, v_pos, getFilterFlags(), a_zoomRange), 1.0);\\n}\"},\"utils.glsl\":\"float rshift(in float u32, in int amount) {\\nreturn floor(u32 / pow(2.0, float(amount)));\\n}\\nfloat getBit(in float bitset, in int bitIndex) {\\nfloat offset = pow(2.0, float(bitIndex));\\nreturn mod(floor(bitset / offset), 2.0);\\n}\\nfloat getFilterBit(in float bitset, in int bitIndex) {\\nreturn getBit(bitset, bitIndex + 1);\\n}\\nfloat getHighlightBit(in float bitset) {\\nreturn getBit(bitset, 0);\\n}\\nhighp vec4 unpackDisplayIdTexel(in highp vec4 bitset) {\\nfloat isAggregate = getBit(bitset.a, 7);\\nreturn (1.0 - isAggregate) * bitset + isAggregate * (vec4(bitset.rgba) - vec4(0.0, 0.0, 0.0, float(0x80)));\\n}\\nvec4 unpack(in float u32) {\\nfloat r = mod(rshift(u32, 0), 255.0);\\nfloat g = mod(rshift(u32, 8), 255.0);\\nfloat b = mod(rshift(u32, 16), 255.0);\\nfloat a = mod(rshift(u32, 24), 255.0);\\nreturn vec4(r, g, b, a);\\n}\\nvec4 norm(in vec4 v) {\\nreturn v /= 255.0;\\n}\\nfloat max4(vec4 target) {\\nreturn max(max(max(target.x, target.y), target.z), target.w);\\n}\\nvec2 unpack_u8_nf32(vec2 bytes) {\\nreturn (bytes - 127.0) / 127.0;\\n}\",\"vcommon.glsl\":\"#include \\n#include \\n#include \\n#include \\nattribute vec2 a_pos;\\nattribute highp vec4 a_id;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp mat3 u_displayMat3;\\nuniform highp mat3 u_displayViewMat3;\\nuniform highp float u_pixelRatio;\\nuniform mediump float u_zoomFactor;\\nuniform mediump float u_antialiasing;\\nuniform mediump float u_currentZoom;\\nvec4 VV_ADATA = vec4(0.0);\\nvoid loadVisualVariableData(inout vec4 target) {\\n#ifdef OES_TEXTURE_FLOAT\\ntarget.rgba = getAttributeData2(a_id);\\n#else\\nvec4 data0 = getAttributeData2(a_id);\\nvec4 data1 = getAttributeData3(a_id);\\ntarget.r = u88VVToFloat(data0.rg * 255.0);\\ntarget.g = u88VVToFloat(data0.ba * 255.0);\\ntarget.b = u88VVToFloat(data1.rg * 255.0);\\ntarget.a = u88VVToFloat(data1.ba * 255.0);\\n#endif\\n}\\n#ifdef VV\\n#define INIT loadVisualVariableData(VV_ADATA)\\n#else\\n#define INIT\\n#endif\\nvec4 getColor(in vec4 a_color, in float a_bitSet, int index) {\\n#ifdef VV_COLOR\\nfloat isColorLocked = getBit(a_bitSet, index);\\nreturn getVVColor(VV_ADATA[ATTR_VV_COLOR], a_color, isColorLocked);\\n#else\\nreturn a_color;\\n#endif\\n}\\nfloat getOpacity() {\\n#ifdef VV_OPACITY\\nreturn getVVOpacity(VV_ADATA[ATTR_VV_OPACITY]);\\n#else\\nreturn 1.0;\\n#endif\\n}\\nfloat getSize(in float in_size) {\\n#ifdef VV_SIZE\\nreturn getVVSize(in_size, VV_ADATA[ATTR_VV_SIZE]);\\n#else\\nreturn in_size;\\n#endif\\n}\\nmat3 getRotation() {\\n#ifdef VV_ROTATION\\nreturn getVVRotationMat3(mod(VV_ADATA[ATTR_VV_ROTATION], 360.0));\\n#else\\nreturn mat3(1.0);\\n#endif\\n}\\nfloat getFilterFlags() {\\n#ifdef IGNORES_SAMPLER_PRECISION\\nreturn ceil(getAttributeData0(a_id).x * 255.0);\\n#else\\nreturn getAttributeData0(a_id).x * 255.0;\\n#endif\\n}\\nvec4 getAnimationState() {\\nreturn getAttributeData1(a_id);\\n}\\nfloat getMinZoom() {\\nvec4 data0 = getAttributeData0(a_id) * 255.0;\\nreturn data0.g;\\n}\\nmat3 getMatrix(float isMapAligned) {\\nreturn isMapAligned * u_displayViewMat3 + (1.0 - isMapAligned) * u_displayMat3;\\n}\\nvec3 clip(inout vec4 color, inout vec3 pos, in float filterFlags, in vec2 minMaxZoom) {\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 0));\\n#ifdef INSIDE\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 1));\\n#elif defined(OUTSIDE)\\npos.z += 2.0 * getFilterBit(filterFlags, 1);\\n#elif defined(HIGHLIGHT)\\n#if !defined(HIGHLIGHT_ALL)\\npos.z += 2.0 * (1.0 - getHighlightBit(filterFlags));\\n#endif\\n#endif\\npos.z += 2.0 * (step(minMaxZoom.y, u_currentZoom) + (1.0 - step(minMaxZoom.x, u_currentZoom)));\\nreturn pos;\\n}\\nvec3 applyFilterLabels(inout vec4 color, inout vec3 pos, in float filterFlags) {\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 0));\\n#ifndef OUTSIDE_LABELS_VISIBLE\\npos.z += 2.0 * (1.0 - getFilterBit(filterFlags, 1));\\n#endif\\nreturn pos;\\n}\",\"vv.glsl\":\"#if defined(VV_SIZE_MIN_MAX_VALUE) || defined(VV_SIZE_SCALE_STOPS) || defined(VV_SIZE_FIELD_STOPS) || defined(VV_SIZE_UNIT_VALUE)\\n#define VV_SIZE\\n#endif\\n#if defined(VV_COLOR) || defined(VV_SIZE) || defined(VV_OPACITY) || defined(VV_ROTATION)\\n#define VV\\n#endif\\n#ifdef VV_COLOR\\nuniform highp float u_vvColorValues[8];\\nuniform vec4 u_vvColors[8];\\n#endif\\n#ifdef VV_SIZE_MIN_MAX_VALUE\\nuniform highp vec4 u_vvSizeMinMaxValue;\\n#endif\\n#ifdef VV_SIZE_SCALE_STOPS\\nuniform highp float u_vvSizeScaleStopsValue;\\n#endif\\n#ifdef VV_SIZE_FIELD_STOPS\\nuniform highp float u_vvSizeFieldStopsValues[6];\\nuniform float u_vvSizeFieldStopsSizes[6];\\n#endif\\n#ifdef VV_SIZE_UNIT_VALUE\\nuniform highp float u_vvSizeUnitValueWorldToPixelsRatio;\\n#endif\\n#ifdef VV_OPACITY\\nuniform highp float u_vvOpacityValues[8];\\nuniform float u_vvOpacities[8];\\n#endif\\n#ifdef VV_ROTATION\\nuniform lowp float u_vvRotationType;\\n#endif\\nbool isNan(float val) {\\nreturn (val == NAN_MAGIC_NUMBER);\\n}\\n#ifdef VV_SIZE_MIN_MAX_VALUE\\nfloat getVVMinMaxSize(float sizeValue, float fallback) {\\nif (isNan(sizeValue)) {\\nreturn fallback;\\n}\\nfloat interpolationRatio = (sizeValue - u_vvSizeMinMaxValue.x) / (u_vvSizeMinMaxValue.y - u_vvSizeMinMaxValue.x);\\ninterpolationRatio = clamp(interpolationRatio, 0.0, 1.0);\\nreturn u_vvSizeMinMaxValue.z + interpolationRatio * (u_vvSizeMinMaxValue.w - u_vvSizeMinMaxValue.z);\\n}\\n#endif\\n#ifdef VV_SIZE_FIELD_STOPS\\nconst int VV_SIZE_N = 6;\\nfloat getVVStopsSize(float sizeValue, float fallback) {\\nif (isNan(sizeValue)) {\\nreturn fallback;\\n}\\nif (sizeValue <= u_vvSizeFieldStopsValues[0]) {\\nreturn u_vvSizeFieldStopsSizes[0];\\n}\\nfor (int i = 1; i < VV_SIZE_N; ++i) {\\nif (u_vvSizeFieldStopsValues[i] >= sizeValue) {\\nfloat f = (sizeValue - u_vvSizeFieldStopsValues[i-1]) / (u_vvSizeFieldStopsValues[i] - u_vvSizeFieldStopsValues[i-1]);\\nreturn mix(u_vvSizeFieldStopsSizes[i-1], u_vvSizeFieldStopsSizes[i], f);\\n}\\n}\\nreturn u_vvSizeFieldStopsSizes[VV_SIZE_N - 1];\\n}\\n#endif\\n#ifdef VV_SIZE_UNIT_VALUE\\nfloat getVVUnitValue(float sizeValue, float fallback) {\\nif (isNan(sizeValue)) {\\nreturn fallback;\\n}\\nreturn u_vvSizeUnitValueWorldToPixelsRatio * sizeValue;\\n}\\n#endif\\n#ifdef VV_OPACITY\\nconst int VV_OPACITY_N = 8;\\nfloat getVVOpacity(float opacityValue) {\\nif (isNan(opacityValue)) {\\nreturn 1.0;\\n}\\nif (opacityValue <= u_vvOpacityValues[0]) {\\nreturn u_vvOpacities[0];\\n}\\nfor (int i = 1; i < VV_OPACITY_N; ++i) {\\nif (u_vvOpacityValues[i] >= opacityValue) {\\nfloat f = (opacityValue - u_vvOpacityValues[i-1]) / (u_vvOpacityValues[i] - u_vvOpacityValues[i-1]);\\nreturn mix(u_vvOpacities[i-1], u_vvOpacities[i], f);\\n}\\n}\\nreturn u_vvOpacities[VV_OPACITY_N - 1];\\n}\\n#endif\\n#ifdef VV_ROTATION\\nmat4 getVVRotation(float rotationValue) {\\nif (isNan(rotationValue)) {\\nreturn mat4(1, 0, 0, 0,\\n0, 1, 0, 0,\\n0, 0, 1, 0,\\n0, 0, 0, 1);\\n}\\nfloat rotation = rotationValue;\\nif (u_vvRotationType == 1.0) {\\nrotation = 90.0 - rotation;\\n}\\nfloat angle = C_DEG_TO_RAD * rotation;\\nfloat sinA = sin(angle);\\nfloat cosA = cos(angle);\\nreturn mat4(cosA, sinA, 0, 0,\\n-sinA, cosA, 0, 0,\\n0, 0, 1, 0,\\n0, 0, 0, 1);\\n}\\nmat3 getVVRotationMat3(float rotationValue) {\\nif (isNan(rotationValue)) {\\nreturn mat3(1, 0, 0,\\n0, 1, 0,\\n0, 0, 1);\\n}\\nfloat rotation = rotationValue;\\nif (u_vvRotationType == 1.0) {\\nrotation = 90.0 - rotation;\\n}\\nfloat angle = C_DEG_TO_RAD * -rotation;\\nfloat sinA = sin(angle);\\nfloat cosA = cos(angle);\\nreturn mat3(cosA, -sinA, 0,\\nsinA, cosA, 0,\\n0, 0, 1);\\n}\\n#endif\\n#ifdef VV_COLOR\\nconst int VV_COLOR_N = 8;\\nvec4 getVVColor(float colorValue, vec4 fallback, float isColorLocked) {\\nif (isNan(colorValue) || isColorLocked == 1.0) {\\nreturn fallback;\\n}\\nif (colorValue <= u_vvColorValues[0]) {\\nreturn u_vvColors[0];\\n}\\nfor (int i = 1; i < VV_COLOR_N; ++i) {\\nif (u_vvColorValues[i] >= colorValue) {\\nfloat f = (colorValue - u_vvColorValues[i-1]) / (u_vvColorValues[i] - u_vvColorValues[i-1]);\\nreturn mix(u_vvColors[i-1], u_vvColors[i], f);\\n}\\n}\\nreturn u_vvColors[VV_COLOR_N - 1];\\n}\\n#endif\\nfloat getVVSize(in float size, in float vvSize) {\\n#ifdef VV_SIZE_MIN_MAX_VALUE\\nreturn getVVMinMaxSize(vvSize, size);\\n#elif defined(VV_SIZE_SCALE_STOPS)\\nreturn u_vvSizeScaleStopsValue;\\n#elif defined(VV_SIZE_FIELD_STOPS)\\nfloat outSize = getVVStopsSize(vvSize, size);\\nreturn isNan(outSize) ? size : outSize;\\n#elif defined(VV_SIZE_UNIT_VALUE)\\nreturn getVVUnitValue(vvSize, size);\\n#else\\nreturn size;\\n#endif\\n}\"},\"post-processing\":{blit:{\"blit.frag\":\"precision mediump float;\\nuniform sampler2D u_texture;\\nvarying vec2 v_uv;\\nvoid main() {\\ngl_FragColor = texture2D(u_texture, v_uv);\\n}\"},bloom:{composite:{\"composite.frag\":\"precision mediump float;\\nvarying vec2 v_uv;\\nuniform sampler2D u_blurTexture1;\\nuniform sampler2D u_blurTexture2;\\nuniform sampler2D u_blurTexture3;\\nuniform sampler2D u_blurTexture4;\\nuniform sampler2D u_blurTexture5;\\nuniform float u_bloomStrength;\\nuniform float u_bloomRadius;\\nuniform float u_bloomFactors[NUMMIPS];\\nuniform vec3 u_bloomTintColors[NUMMIPS];\\nfloat lerpBloomFactor(const in float factor) {\\nfloat mirrorFactor = 1.2 - factor;\\nreturn mix(factor, mirrorFactor, u_bloomRadius);\\n}\\nvoid main() {\\ngl_FragColor = u_bloomStrength * (\\nlerpBloomFactor(u_bloomFactors[0]) * vec4(u_bloomTintColors[0], 1.0) * texture2D(u_blurTexture1, v_uv) +\\nlerpBloomFactor(u_bloomFactors[1]) * vec4(u_bloomTintColors[1], 1.0) * texture2D(u_blurTexture2, v_uv) +\\nlerpBloomFactor(u_bloomFactors[2]) * vec4(u_bloomTintColors[2], 1.0) * texture2D(u_blurTexture3, v_uv) +\\nlerpBloomFactor(u_bloomFactors[3]) * vec4(u_bloomTintColors[3], 1.0) * texture2D(u_blurTexture4, v_uv) +\\nlerpBloomFactor(u_bloomFactors[4]) * vec4(u_bloomTintColors[4], 1.0) * texture2D(u_blurTexture5, v_uv)\\n);\\n}\"},gaussianBlur:{\"gaussianBlur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nuniform vec2 u_direction;\\nvarying vec2 v_uv;\\n#define KERNEL_RADIUS RADIUS\\n#define SIGMA RADIUS\\nfloat gaussianPdf(in float x, in float sigma) {\\nreturn 0.39894 * exp(-0.5 * x * x / ( sigma * sigma)) / sigma;\\n}\\nvoid main() {\\nvec2 invSize = 1.0 / u_texSize;\\nfloat fSigma = float(SIGMA);\\nfloat weightSum = gaussianPdf(0.0, fSigma);\\nvec4 pixelColorSum = texture2D(u_colorTexture, v_uv) * weightSum;\\nfor (int i = 1; i < KERNEL_RADIUS; i ++) {\\nfloat x = float(i);\\nfloat w = gaussianPdf(x, fSigma);\\nvec2 uvOffset = u_direction * invSize * x;\\nvec4 sample1 = texture2D(u_colorTexture, v_uv + uvOffset);\\nvec4 sample2 = texture2D(u_colorTexture, v_uv - uvOffset);\\npixelColorSum += (sample1 + sample2) * w;\\nweightSum += 2.0 * w;\\n}\\ngl_FragColor = pixelColorSum /weightSum;\\n}\"},luminosityHighPass:{\"luminosityHighPass.frag\":\"precision mediump float;\\nuniform sampler2D u_texture;\\nuniform vec3 u_defaultColor;\\nuniform float u_defaultOpacity;\\nuniform float u_luminosityThreshold;\\nuniform float u_smoothWidth;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 texel = texture2D(u_texture, v_uv);\\nvec3 luma = vec3(0.299, 0.587, 0.114);\\nfloat v = dot(texel.xyz, luma);\\nvec4 outputColor = vec4(u_defaultColor.rgb, u_defaultOpacity);\\nfloat alpha = smoothstep(u_luminosityThreshold, u_luminosityThreshold + u_smoothWidth, v);\\ngl_FragColor = mix(outputColor, texel, alpha);\\n}\"}},blur:{gaussianBlur:{\"gaussianBlur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nuniform vec2 u_direction;\\nuniform float u_sigma;\\nvarying vec2 v_uv;\\n#define KERNEL_RADIUS RADIUS\\nfloat gaussianPdf(in float x, in float sigma) {\\nreturn 0.39894 * exp(-0.5 * x * x / ( sigma * sigma)) / sigma;\\n}\\nvoid main() {\\nvec2 invSize = 1.0 / u_texSize;\\nfloat fSigma = u_sigma;\\nfloat weightSum = gaussianPdf(0.0, fSigma);\\nvec4 pixelColorSum = texture2D(u_colorTexture, v_uv) * weightSum;\\nfor (int i = 1; i < KERNEL_RADIUS; i ++) {\\nfloat x = float(i);\\nfloat w = gaussianPdf(x, fSigma);\\nvec2 uvOffset = u_direction * invSize * x;\\nvec4 sample1 = texture2D(u_colorTexture, v_uv + uvOffset);\\nvec4 sample2 = texture2D(u_colorTexture, v_uv - uvOffset);\\npixelColorSum += (sample1 + sample2) * w;\\nweightSum += 2.0 * w;\\n}\\ngl_FragColor = pixelColorSum /weightSum;\\n}\"},\"radial-blur\":{\"radial-blur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nvarying vec2 v_uv;\\nconst float sampleDist = 1.0;\\nconst float sampleStrength = 2.2;\\nvoid main(void) {\\nfloat samples[10];\\nsamples[0] = -0.08;\\nsamples[1] = -0.05;\\nsamples[2] = -0.03;\\nsamples[3] = -0.02;\\nsamples[4] = -0.01;\\nsamples[5] = 0.01;\\nsamples[6] = 0.02;\\nsamples[7] = 0.03;\\nsamples[8] = 0.05;\\nsamples[9] = 0.08;\\nvec2 dir = 0.5 - v_uv;\\nfloat dist = sqrt(dir.x * dir.x + dir.y * dir.y);\\ndir = dir / dist;\\nvec4 color = texture2D(u_colorTexture,v_uv);\\nvec4 sum = color;\\nfor (int i = 0; i < 10; i++) {\\nsum += texture2D(u_colorTexture, v_uv + dir * samples[i] * sampleDist);\\n}\\nsum *= 1.0 / 11.0;\\nfloat t = dist * sampleStrength;\\nt = clamp(t, 0.0, 1.0);\\ngl_FragColor = mix(color, sum, t);\\n}\"}},dra:{\"dra.frag\":\"precision mediump float;\\nuniform sampler2D u_minColor;\\nuniform sampler2D u_maxColor;\\nuniform sampler2D u_texture;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 minColor = texture2D(u_minColor, vec2(0.5));\\nvec4 maxColor = texture2D(u_maxColor, vec2(0.5));\\nvec4 color = texture2D(u_texture, v_uv);\\nvec3 minColorUnpremultiply = minColor.rgb / minColor.a;\\nvec3 maxColorUnpremultiply = maxColor.rgb / maxColor.a;\\nvec3 colorUnpremultiply = color.rgb / color.a;\\nvec3 range = maxColorUnpremultiply - minColorUnpremultiply;\\ngl_FragColor = vec4(color.a * (colorUnpremultiply - minColorUnpremultiply) / range, color.a);\\n}\",\"min-max\":{\"min-max.frag\":\"#extension GL_EXT_draw_buffers : require\\nprecision mediump float;\\n#define CELL_SIZE 2\\nuniform sampler2D u_minTexture;\\nuniform sampler2D u_maxTexture;\\nuniform vec2 u_srcResolution;\\nuniform vec2 u_dstResolution;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec2 srcPixel = floor(gl_FragCoord.xy) * float(CELL_SIZE);\\nvec2 onePixel = vec2(1.0) / u_srcResolution;\\nvec2 uv = (srcPixel + 0.5) / u_srcResolution;\\nvec4 minColor = vec4(1.0);\\nvec4 maxColor = vec4(0.0);\\nfor (int y = 0; y < CELL_SIZE; ++y) {\\nfor (int x = 0; x < CELL_SIZE; ++x) {\\nvec2 offset = uv + vec2(x, y) * onePixel;\\nminColor = min(minColor, texture2D(u_minTexture, offset));\\nmaxColor = max(maxColor, texture2D(u_maxTexture, offset));\\n}\\n}\\ngl_FragData[0] = minColor;\\ngl_FragData[1] = maxColor;\\n}\"}},\"drop-shadow\":{composite:{\"composite.frag\":\"precision mediump float;\\nuniform sampler2D u_layerFBOTexture;\\nuniform sampler2D u_blurTexture;\\nuniform vec4 u_shadowColor;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 layerColor = texture2D(u_layerFBOTexture, v_uv);\\nvec4 blurColor = texture2D(u_blurTexture, v_uv);\\ngl_FragColor = ((1.0 - layerColor.a) * blurColor.a * u_shadowColor + layerColor);\\n}\"},\"drop-shadow.vert\":\"precision mediump float;\\nattribute vec2 a_position;\\nuniform highp mat3 u_displayViewMat3;\\nuniform highp vec2 u_offset;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec3 offset = u_displayViewMat3 * vec3(u_offset, 0.0);\\ngl_Position = vec4(a_position, 0.0, 1.0) + vec4(offset, 0.0);\\nv_uv = (a_position + 1.0) / 2.0;\\n}\"},\"edge-detect\":{\"frei-chen\":{\"frei-chen.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nvarying vec2 v_uv;\\nvec2 texel = vec2(1.0 / u_texSize.x, 1.0 / u_texSize.y);\\nmat3 G[9];\\nconst mat3 g0 = mat3( 0.3535533845424652, 0, -0.3535533845424652, 0.5, 0, -0.5, 0.3535533845424652, 0, -0.3535533845424652 );\\nconst mat3 g1 = mat3( 0.3535533845424652, 0.5, 0.3535533845424652, 0, 0, 0, -0.3535533845424652, -0.5, -0.3535533845424652 );\\nconst mat3 g2 = mat3( 0, 0.3535533845424652, -0.5, -0.3535533845424652, 0, 0.3535533845424652, 0.5, -0.3535533845424652, 0 );\\nconst mat3 g3 = mat3( 0.5, -0.3535533845424652, 0, -0.3535533845424652, 0, 0.3535533845424652, 0, 0.3535533845424652, -0.5 );\\nconst mat3 g4 = mat3( 0, -0.5, 0, 0.5, 0, 0.5, 0, -0.5, 0 );\\nconst mat3 g5 = mat3( -0.5, 0, 0.5, 0, 0, 0, 0.5, 0, -0.5 );\\nconst mat3 g6 = mat3( 0.1666666716337204, -0.3333333432674408, 0.1666666716337204, -0.3333333432674408, 0.6666666865348816, -0.3333333432674408, 0.1666666716337204, -0.3333333432674408, 0.1666666716337204 );\\nconst mat3 g7 = mat3( -0.3333333432674408, 0.1666666716337204, -0.3333333432674408, 0.1666666716337204, 0.6666666865348816, 0.1666666716337204, -0.3333333432674408, 0.1666666716337204, -0.3333333432674408 );\\nconst mat3 g8 = mat3( 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408, 0.3333333432674408 );\\nvoid main() {\\nG[0] = g0,\\nG[1] = g1,\\nG[2] = g2,\\nG[3] = g3,\\nG[4] = g4,\\nG[5] = g5,\\nG[6] = g6,\\nG[7] = g7,\\nG[8] = g8;\\nmat3 I;\\nfloat cnv[9];\\nvec3 sample;\\nfor (float i = 0.0; i < 3.0; i++) {\\nfor (float j = 0.0; j < 3.0; j++) {\\nsample = texture2D(u_colorTexture, v_uv + texel * vec2(i - 1.0,j - 1.0)).rgb;\\nI[int(i)][int(j)] = length(sample);\\n}\\n}\\nfor (int i = 0; i < 9; i++) {\\nfloat dp3 = dot(G[i][0], I[0]) + dot(G[i][1], I[1]) + dot(G[i][2], I[2]);\\ncnv[i] = dp3 * dp3;\\n}\\nfloat M = (cnv[0] + cnv[1]) + (cnv[2] + cnv[3]);\\nfloat S = (cnv[4] + cnv[5]) + (cnv[6] + cnv[7]) + (cnv[8] + M);\\ngl_FragColor = vec4(vec3(sqrt(M / S)), texture2D(u_colorTexture, v_uv).a);\\n}\"},sobel:{\"sobel.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nvarying vec2 v_uv;\\nuniform vec2 u_texSize;\\nvec2 texel = vec2(1.0 / u_texSize.x, 1.0 / u_texSize.y);\\nmat3 G[2];\\nconst mat3 g0 = mat3( 1.0, 2.0, 1.0, 0.0, 0.0, 0.0, -1.0, -2.0, -1.0 );\\nconst mat3 g1 = mat3( 1.0, 0.0, -1.0, 2.0, 0.0, -2.0, 1.0, 0.0, -1.0 );\\nvoid main() {\\nmat3 I;\\nfloat cnv[2];\\nvec3 sample;\\nG[0] = g0;\\nG[1] = g1;\\nfor (float i = 0.0; i < 3.0; i++) {\\nfor (float j = 0.0; j < 3.0; j++) {\\nsample = texture2D( u_colorTexture, v_uv + texel * vec2(i-1.0,j-1.0) ).rgb;\\nI[int(i)][int(j)] = length(sample);\\n}\\n}\\nfor (int i = 0; i < 2; i++) {\\nfloat dp3 = dot(G[i][0], I[0]) + dot(G[i][1], I[1]) + dot(G[i][2], I[2]);\\ncnv[i] = dp3 * dp3;\\n}\\ngl_FragColor = vec4(vec3(0.5 * sqrt(cnv[0] * cnv[0] + cnv[1] * cnv[1])), texture2D(u_colorTexture, v_uv).a);\\n}\"}},\"edge-enhance\":{\"edge-enhance.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nvarying vec2 v_uv;\\nuniform vec2 u_texSize;\\nvec2 texel = vec2(1.0 / u_texSize.x, 1.0 / u_texSize.y);\\nmat3 G[2];\\nconst mat3 g0 = mat3( 1.0, 0.0, -1.0, 1.0, 0.0, -1.0, 1.0, 0.0, -1.0 );\\nconst mat3 g1 = mat3( 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, -1.0, -1.0, -1.0 );\\nvoid main() {\\nmat3 I;\\nfloat cnv[2];\\nvec3 sample;\\nG[0] = g0;\\nG[1] = g1;\\nfor (float i = 0.0; i < 3.0; i++) {\\nfor (float j = 0.0; j < 3.0; j++) {\\nsample = texture2D( u_colorTexture, v_uv + texel * vec2(i-1.0,j-1.0) ).rgb;\\nI[int(i)][int(j)] = length(sample);\\n}\\n}\\nfor (int i = 0; i < 2; i++) {\\nfloat dp3 = dot(G[i][0], I[0]) + dot(G[i][1], I[1]) + dot(G[i][2], I[2]);\\ncnv[i] = dp3 * dp3;\\n}\\nvec4 color = texture2D(u_colorTexture, v_uv);\\ngl_FragColor = vec4(0.5 * sqrt(cnv[0] * cnv[0] + cnv[1] * cnv[1]) * color);\\n}\"},filterEffect:{\"filterEffect.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform mat4 u_coefficients;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 color = texture2D(u_colorTexture, v_uv);\\nvec4 rgbw = u_coefficients * vec4(color.a > 0.0 ? color.rgb / color.a : vec3(0.0), 1.0);\\nfloat a = color.a;\\ngl_FragColor = vec4(a * rgbw.rgb, a);\\n}\"},pp:{\"pp.vert\":\"precision mediump float;\\nattribute vec2 a_position;\\nvarying vec2 v_uv;\\nvoid main() {\\ngl_Position = vec4(a_position, 0.0, 1.0);\\nv_uv = (a_position + 1.0) / 2.0;\\n}\"}},raster:{bitmap:{\"bitmap.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform highp vec2 u_coordScale;\\nuniform lowp float u_opacity;\\n#include \\nvoid main() {\\n#ifdef BICUBIC\\nvec4 color = sampleBicubicBSpline(u_texture, v_texcoord, u_coordScale);\\n#else\\nvec4 color = texture2D(u_texture, v_texcoord);\\n#endif\\nfloat alpha = u_opacity * color.a;\\ngl_FragColor = vec4(alpha * color.rgb, alpha);\\n}\",\"bitmap.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"},common:{\"common.glsl\":\"uniform sampler2D u_image;\\nuniform int u_bandCount;\\nuniform bool u_isFloatTexture;\\nuniform bool u_flipY;\\nuniform float u_opacity;\\nuniform int u_resampling;\\nuniform vec2 u_srcImageSize;\\n#ifdef APPLY_PROJECTION\\n#include \\n#endif\\n#ifdef BICUBIC\\n#include \\n#endif\\n#ifdef BILINEAR\\n#include \\n#endif\\nvec2 getPixelLocation(vec2 coords) {\\nvec2 targetLocation = u_flipY ? vec2(coords.s, 1.0 - coords.t) : coords;\\n#ifdef APPLY_PROJECTION\\ntargetLocation = projectPixelLocation(targetLocation);\\n#endif\\nreturn targetLocation;\\n}\\nbool isOutside(vec2 coords){\\nif (coords.t>1.00001 ||coords.t<-0.00001 || coords.s>1.00001 ||coords.s<-0.00001) {\\nreturn true;\\n} else {\\nreturn false;\\n}\\n}\\nvec4 getPixel(vec2 pixelLocation) {\\n#ifdef BICUBIC\\nvec4 color = sampleBicubicBSpline(u_image, pixelLocation, u_srcImageSize);\\n#elif defined(BILINEAR)\\nvec4 color = sampleBilinear(u_image, pixelLocation, u_srcImageSize);\\n#else\\nvec4 color = texture2D(u_image, pixelLocation);\\n#endif\\nreturn color;\\n}\",\"contrastBrightness.glsl\":\"uniform float u_contrastOffset;\\nuniform float u_brightnessOffset;\\nvec4 adjustContrastBrightness(vec4 currentPixel, bool isFloat) {\\nvec4 pixelValue = isFloat ? currentPixel * 255.0 : currentPixel;\\nfloat maxI = 255.0;\\nfloat mid = 128.0;\\nfloat c = u_contrastOffset;\\nfloat b = u_brightnessOffset;\\nvec4 v;\\nif (c > 0.0 && c < 100.0) {\\nv = (200.0 * pixelValue - 100.0 * maxI + 2.0 * maxI * b) / (2.0 * (100.0 - c)) + mid;\\n} else if (c <= 0.0 && c > -100.0) {\\nv = (200.0 * pixelValue - 100.0 * maxI + 2.0 * maxI * b) * (100.0 + c) / 20000.0 + mid;\\n} else if (c == 100.0) {\\nv = (200.0 * pixelValue - 100.0 * maxI + (maxI + 1.0) * (100.0 - c) + 2.0 * maxI * b);\\nv = (sign(v) + 1.0) / 2.0;\\n} else if (c == -100.0) {\\nv = vec4(mid, mid, mid, currentPixel.a);\\n}\\nreturn vec4(v.r / 255.0, v.g / 255.0, v.b / 255.0, currentPixel.a);\\n}\",\"projection.glsl\":\"uniform sampler2D u_transformGrid;\\nuniform vec2 u_transformSpacing;\\nuniform vec2 u_transformGridSize;\\nuniform vec2 u_targetImageSize;\\nvec2 projectPixelLocation(vec2 coords) {\\nvec2 index_image = floor(coords * u_targetImageSize);\\nvec2 oneTransformPixel = vec2(0.25 / u_transformGridSize.s, 1.0 / u_transformGridSize.t);\\nvec2 index_transform = floor(index_image / u_transformSpacing) / u_transformGridSize;\\nvec2 pos = fract((index_image + vec2(0.5, 0.5)) / u_transformSpacing);\\nvec2 srcLocation;\\nvec2 transform_location = index_transform + oneTransformPixel * 0.5;\\nif (pos.s <= pos.t) {\\nvec4 ll_abc = texture2D(u_transformGrid, vec2(transform_location.s, transform_location.t));\\nvec4 ll_def = texture2D(u_transformGrid, vec2(transform_location.s + oneTransformPixel.s, transform_location.t));\\nsrcLocation.s = dot(ll_abc.rgb, vec3(pos, 1.0));\\nsrcLocation.t = dot(ll_def.rgb, vec3(pos, 1.0));\\n} else {\\nvec4 ur_abc = texture2D(u_transformGrid, vec2(transform_location.s + 2.0 * oneTransformPixel.s, transform_location.t));\\nvec4 ur_def = texture2D(u_transformGrid, vec2(transform_location.s + 3.0 * oneTransformPixel.s, transform_location.t));\\nsrcLocation.s = dot(ur_abc.rgb, vec3(pos, 1.0));\\nsrcLocation.t = dot(ur_def.rgb, vec3(pos, 1.0));\\n}\\nreturn srcLocation;\\n}\"},hillshade:{\"hillshade.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\n#include \\nuniform int u_hillshadeType;\\nuniform float u_sinZcosAs[6];\\nuniform float u_sinZsinAs[6];\\nuniform float u_cosZs[6];\\nuniform float u_weights[6];\\nuniform vec2 u_factor;\\nuniform float u_minValue;\\nuniform float u_maxValue;\\n#include \\nfloat getNeighborHoodAlpha(float a, float b, float c, float d, float e, float f, float g, float h, float i){\\nif (a == 0.0 || a == 0.0 || a==0.0 || a == 0.0 || a == 0.0 || a==0.0 || a == 0.0 || a == 0.0 || a==0.0) {\\nreturn 0.0;\\n}\\nelse {\\nreturn e;\\n}\\n}\\nvec3 rgb2hsv(vec3 c) {\\nvec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\\nvec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);\\nvec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);\\nfloat d = q.x - min(q.w, q.y);\\nfloat e = 1.0e-10;\\nreturn vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), min(d / (q.x + e), 1.0), q.x);\\n}\\nvec3 hsv2rgb(vec3 c) {\\nvec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\\nvec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\\nreturn c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\\n}\\nvec4 overlay(float val, float minValue, float maxValue, float hillshade) {\\nval = clamp((val - minValue) / (maxValue - minValue), 0.0, 1.0);\\nvec4 rgb = colorize(vec4(val, val, val, 1.0), 255.0);\\nvec3 hsv = rgb2hsv(rgb.xyz);\\nhsv.z = hillshade;\\nreturn vec4(hsv2rgb(hsv), 1.0) * rgb.a;\\n}\\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\nif (currentPixel.a == 0.0) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec2 axy = vec2(-1.0, -1.0);\\nvec2 bxy = vec2(0.0, -1.0);\\nvec2 cxy = vec2(1.0, -1.0);\\nvec2 dxy = vec2(-1.0, 0.0);\\nvec2 fxy = vec2(1.0, 0.0);\\nvec2 gxy = vec2(-1.0, 1.0);\\nvec2 hxy = vec2(0.0, 1.0);\\nvec2 ixy = vec2(1.0, 1.0);\\nvec2 onePixel = 1.0 / u_srcImageSize;\\nif (pixelLocation.s < onePixel.s) {\\naxy[0] = 1.0;\\ndxy[0] = 1.0;\\ngxy[0] = 1.0;\\n}\\nif (pixelLocation.t < onePixel.t) {\\naxy[1] = 1.0;\\nbxy[1] = 1.0;\\ncxy[1] = 1.0;\\n}\\nif (pixelLocation.s > 1.0 - onePixel.s) {\\ncxy[0] = -1.0;\\nfxy[0] = -1.0;\\nixy[0] = -1.0;\\n}\\nif (pixelLocation.t > 1.0 - onePixel.t) {\\ngxy[1] = -1.0;\\nhxy[1] = -1.0;\\nixy[1] = -1.0;\\n}\\nvec4 va = texture2D(u_image, pixelLocation + onePixel * axy);\\nvec4 vb = texture2D(u_image, pixelLocation + onePixel * bxy);\\nvec4 vc = texture2D(u_image, pixelLocation + onePixel * cxy);\\nvec4 vd = texture2D(u_image, pixelLocation + onePixel * dxy);\\nvec4 ve = texture2D(u_image, pixelLocation);\\nvec4 vf = texture2D(u_image, pixelLocation + onePixel * fxy);\\nvec4 vg = texture2D(u_image, pixelLocation + onePixel * gxy);\\nvec4 vh = texture2D(u_image, pixelLocation + onePixel * hxy);\\nvec4 vi = texture2D(u_image, pixelLocation + onePixel * ixy);\\nfloat dzx = (vc + 2.0 * vf + vi - va - 2.0 * vd - vg).r * u_factor.s;\\nfloat dzy = (vg + 2.0 * vh + vi - va - 2.0 * vb - vc).r * u_factor.t;\\nfloat dzd = sqrt(1.0 + dzx * dzx + dzy * dzy);\\nfloat hillshade = 0.0;\\nif (u_hillshadeType == 0){\\nfloat cosDelta = u_sinZsinAs[0] * dzy - u_sinZcosAs[0] * dzx;\\nfloat z = (u_cosZs[0] + cosDelta) / dzd;\\nif (z < 0.0) z = 0.0;\\nhillshade = z;\\n} else {\\nfor (int k = 0; k < 6; k++) {\\nfloat cosDelta = u_sinZsinAs[k] * dzy - u_sinZcosAs[k] * dzx;\\nfloat z = (u_cosZs[k] + cosDelta) / dzd;\\nif (z < 0.0) z = 0.0;\\nhillshade = hillshade + z * u_weights[k];\\nif (k == 5) break;\\n}\\n}\\nfloat alpha = getNeighborHoodAlpha(va.a, vb.a, vc.a, vd.a, ve.a, vf.a, vg.a, vh.a, vi.a);\\n#ifdef APPLY_COLORMAP\\ngl_FragColor = overlay(ve.r, u_minValue, u_maxValue, hillshade) * alpha * u_opacity;\\n#else\\ngl_FragColor = vec4(hillshade, hillshade, hillshade, 1.0) * alpha * u_opacity;\\n#endif\\n}\",\"hillshade.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"},lut:{\"colorize.glsl\":\"uniform sampler2D u_colormap;\\nuniform float u_colormapOffset;\\nuniform float u_colormapMaxIndex;\\nvec4 colorize(vec4 currentPixel, float scaleFactor) {\\nfloat clrIndex = clamp(currentPixel.r * scaleFactor - u_colormapOffset, 0.0, u_colormapMaxIndex);\\nvec2 clrPosition = vec2((clrIndex + 0.5) / (u_colormapMaxIndex + 1.0), 0.0);\\nvec4 color = texture2D(u_colormap, clrPosition);\\nvec4 result = vec4(color.rgb, color.a * currentPixel.a);\\nreturn result;\\n}\",\"lut.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\n#include \\n#include \\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\nvec4 result = colorize(currentPixel, 1.0);\\ngl_FragColor = vec4(result.xyz, 1.0) * result.a * u_opacity;\\n}\",\"lut.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform highp float u_scale;\\nuniform highp vec2 u_offset;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos * u_scale + u_offset;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"},stretch:{\"stretch.frag\":\"precision mediump float;\\nvarying highp vec2 v_texcoord;\\n#include \\nuniform float u_minCutOff[3];\\nuniform float u_maxCutOff[3];\\nuniform float u_minOutput;\\nuniform float u_maxOutput;\\nuniform float u_factor[3];\\nuniform bool u_useGamma;\\nuniform float u_gamma[3];\\nuniform float u_gammaCorrection[3];\\n#include \\nfloat stretchOneValue(float val, float minCutOff, float maxCutOff, float minOutput, float maxOutput, float factor, bool useGamma, float gamma, float gammaCorrection) {\\nif (val >= maxCutOff) {\\nreturn maxOutput;\\n} else if (val <= minCutOff) {\\nreturn minOutput;\\n}\\nfloat stretchedVal;\\nif (useGamma) {\\nfloat tempf = 1.0;\\nfloat outRange = maxOutput - minOutput;\\nfloat relativeVal = (val - minCutOff) / (maxCutOff - minCutOff);\\nif (gamma > 1.0) {\\ntempf -= pow(1.0 / outRange, relativeVal * gammaCorrection);\\n}\\nstretchedVal = (tempf * outRange * pow(relativeVal, 1.0 / gamma) + minOutput) / 255.0;\\n} else {\\nstretchedVal = minOutput + (val - minCutOff) * factor;\\n}\\nreturn stretchedVal;\\n}\\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\n#ifdef NOOP\\ngl_FragColor = vec4(currentPixel.rgb, 1.0) * currentPixel.a * u_opacity;\\nreturn;\\n#endif\\nif (u_bandCount == 1) {\\nfloat grayVal = stretchOneValue(currentPixel.r, u_minCutOff[0], u_maxCutOff[0], u_minOutput, u_maxOutput, u_factor[0], u_useGamma, u_gamma[0], u_gammaCorrection[0]);\\n#ifdef APPLY_COLORMAP\\nvec4 result = colorize(vec4(grayVal, grayVal, grayVal, 1.0), u_useGamma ? 255.0 : 1.0);\\ngl_FragColor = vec4(result.xyz, 1.0) * result.a * currentPixel.a * u_opacity;\\n#else\\ngl_FragColor = vec4(grayVal, grayVal, grayVal, 1.0) * currentPixel.a * u_opacity;\\n#endif\\n} else {\\nfloat redVal = stretchOneValue(currentPixel.r, u_minCutOff[0], u_maxCutOff[0], u_minOutput, u_maxOutput, u_factor[0], u_useGamma, u_gamma[0], u_gammaCorrection[0]);\\nfloat greenVal = stretchOneValue(currentPixel.g, u_minCutOff[1], u_maxCutOff[1], u_minOutput, u_maxOutput, u_factor[1], u_useGamma, u_gamma[1], u_gammaCorrection[1]);\\nfloat blueVal = stretchOneValue(currentPixel.b, u_minCutOff[2], u_maxCutOff[2], u_minOutput, u_maxOutput, u_factor[2], u_useGamma, u_gamma[2], u_gammaCorrection[2]);\\ngl_FragColor = vec4(redVal, greenVal, blueVal, 1.0) * currentPixel.a * u_opacity;\\n}\\n}\",\"stretch.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform highp float u_scale;\\nuniform highp vec2 u_offset;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos * u_scale + u_offset;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"}},stencil:{\"stencil.frag\":\"void main() {\\ngl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);\\n}\",\"stencil.vert\":\"attribute vec2 a_pos;\\nvoid main() {\\ngl_Position = vec4(a_pos, 0.0, 1.0);\\n}\"},tileInfo:{\"tileInfo.frag\":\"uniform mediump sampler2D u_texture;\\nvarying mediump vec2 v_tex;\\nvoid main(void) {\\nlowp vec4 color = texture2D(u_texture, v_tex);\\ngl_FragColor = 0.75 * color;\\n}\",\"tileInfo.vert\":\"attribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform mediump float u_depth;\\nuniform mediump vec2 u_coord_ratio;\\nuniform mediump vec2 u_delta;\\nuniform mediump vec2 u_dimensions;\\nvarying mediump vec2 v_tex;\\nvoid main() {\\nmediump vec2 offset = u_coord_ratio * vec2(u_delta + a_pos * u_dimensions);\\nvec3 v_pos = u_dvsMat3 * vec3(offset, 1.0);\\ngl_Position = vec4(v_pos.xy, 0.0, 1.0);\\nv_tex = a_pos;\\n}\"},util:{\"encoding.glsl\":\"const vec4 rgba2float_factors = vec4(\\n255.0 / (256.0),\\n255.0 / (256.0 * 256.0),\\n255.0 / (256.0 * 256.0 * 256.0),\\n255.0 / (256.0 * 256.0 * 256.0 * 256.0)\\n);\\nfloat rgba2float(vec4 rgba) {\\nreturn dot(rgba, rgba2float_factors);\\n}\"}};export default e;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport\"../../../../../webgl/BufferObject.js\";import\"../../../../../webgl/FramebufferObject.js\";import\"../../../../../../core/has.js\";import\"../../../../../webgl/enums.js\";import\"../../../../../webgl/RenderingContext.js\";import\"../../../../../../chunks/builtins.js\";import e from\"../../../../../webgl/ShaderCompiler.js\";import\"../../../../../webgl/Texture.js\";import\"../../../../../webgl/VertexArrayObject.js\";import r from\"./shaderRepository.js\";function t(e){let t=r;return e.split(\"/\").forEach((e=>{t&&(t=t[e])})),t}const o=new e(t);function s(e){return o.resolveIncludes(e)}export{s as resolveIncludes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{Program as e}from\"./Program.js\";function n(e){let n=\"\";for(const t in e){const o=e[t];if(\"boolean\"==typeof o)o&&(n+=`#define ${t}\\n`);else if(\"number\"==typeof o)n+=`#define ${t} ${o.toFixed()}\\n`;else if(\"object\"==typeof o){const e=o.options;let r=0;for(const t in e)n+=`#define ${e[t]} ${(r++).toFixed()}\\n`;n+=`#define ${t} ${e[o.value]}\\n`}}return n}function t(n,t,o,r){o=o||{},r=r||\"\";const f=\"function\"==typeof t.shaders?t.shaders(o):t.shaders;return new e(n,r+f.vertexShader,r+f.fragmentShader,t.attributes)}export{t as createProgram,n as glslifyDefineMap};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{f as t}from\"../../../../../chunks/vec4f32.js\";import e from\"../../../../webgl/BufferObject.js\";import\"../../../../webgl/FramebufferObject.js\";import\"../../../../../core/has.js\";import\"../../../../webgl/enums.js\";import\"../../../../webgl/RenderingContext.js\";import\"../../../../../chunks/builtins.js\";import{createProgram as r}from\"../../../../webgl/programUtils.js\";import\"../../../../webgl/Texture.js\";import i from\"../../../../webgl/VertexArrayObject.js\";import s from\"./WGLBrush.js\";import{background as o}from\"../shaders/BackgroundPrograms.js\";class a extends s{constructor(){super(...arguments),this._color=t(1,0,0,1),this._initialized=!1}dispose(){this._solidProgram&&(this._solidProgram.dispose(),this._solidProgram=null),this._solidVertexArrayObject&&(this._solidVertexArrayObject.dispose(),this._solidVertexArrayObject=null)}prepareState({context:t},e){t.setDepthWriteEnabled(!1),t.setDepthTestEnabled(!1),t.setStencilTestEnabled(!0),t.setBlendingEnabled(!1),t.setColorMask(!1,!1,!1,!1),t.setStencilOp(7680,7680,7681),t.setStencilWriteMask(255),t.setStencilFunctionSeparate(1032,516,e.stencilRef,255)}draw(t,e){const{context:r}=t;this._initialized||this._initialize(r),r.bindVAO(this._solidVertexArrayObject),r.useProgram(this._solidProgram),this._solidProgram.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),this._solidProgram.setUniform2fv(\"u_coord_range\",e.coordRange),this._solidProgram.setUniform1f(\"u_depth\",0),this._solidProgram.setUniform4fv(\"u_color\",this._color),r.drawArrays(5,0,4),r.bindVAO()}_initialize(t){if(this._initialized)return!0;const s=r(t,o);if(!s)return!1;const a={geometry:[{name:\"a_pos\",count:2,type:5120,offset:0,stride:2,normalized:!1,divisor:0}]},n=new Int8Array([0,0,1,0,0,1,1,1]),l=e.createVertex(t,35044,n),d=new i(t,o.attributes,a,{geometry:l});return this._solidProgram=s,this._solidVertexArrayObject=d,this._initialized=!0,!0}}export default a;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nclass r{constructor(){this.name=this.constructor.name||\"UnnamedBrush\"}prepareState(r,t,a){}draw(r,t,a){}drawMany(r,t,a){for(const s of t)this.draw(r,s,a)}}export default r;\n"],"sourceRoot":""}