{"version":3,"sources":["../node_modules/@arcgis/core/views/2d/layers/TileLayerView2D.js","../node_modules/@arcgis/core/views/layers/TileLayerView.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrush.js","../node_modules/@arcgis/core/views/webgl/BufferObject.js","../node_modules/@arcgis/core/views/webgl/VertexArrayObject.js","../node_modules/@arcgis/core/views/2d/engine/vectorTiles/style/StyleDefinition.js","../node_modules/@arcgis/core/chunks/vec4f32.js","../node_modules/@arcgis/core/views/webgl/FramebufferObject.js","../node_modules/@arcgis/core/views/2d/engine/webgl/VertexStream.js","../node_modules/@arcgis/core/views/webgl/ProgramTemplate.js","../node_modules/@arcgis/core/views/webgl/Renderbuffer.js","../node_modules/@arcgis/core/views/2d/engine/webgl/shaders/BackgroundPrograms.js","../node_modules/@arcgis/core/views/2d/engine/webgl/GeometryUtils.js","../node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/shaderRepository.js","../node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/resolver.js","../node_modules/@arcgis/core/views/webgl/Util.js","../node_modules/@arcgis/core/views/2d/engine/webgl/DefaultVertexAttributeLayouts.js","../node_modules/@arcgis/core/views/webgl/rasterUtils.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushStencil.js","../node_modules/@arcgis/core/chunks/earcut.js","../node_modules/@arcgis/core/views/2d/engine/webgl/shaders/TileInfoPrograms.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushInfo.js","../node_modules/@arcgis/core/views/2d/engine/imagery/BrushRasterBitmap.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushBitmap.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushClip.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushOverlay.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrush.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushFill.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushDotDensity.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushMarker.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushHeatmap.js","../node_modules/@arcgis/core/views/webgl/heatmapTextureUtils.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushPieChart.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLBackground.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLCircle.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLFill.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLLine.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLSymbol.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLabel.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLine.js","../node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushText.js","../node_modules/@arcgis/core/views/2d/engine/brushes.js","../node_modules/@arcgis/core/views/2d/engine/webgl/Mesh2D.js","../node_modules/@arcgis/core/views/2d/engine/webgl/ClippingInfo.js","../node_modules/@arcgis/core/views/2d/engine/webgl/WGLContainer.js","../node_modules/@arcgis/core/views/2d/engine/vectorTiles/decluttering/config.js","../node_modules/@arcgis/core/views/2d/engine/webgl/effects/Effect.js","../node_modules/@arcgis/core/views/webgl/reservedWordsGLSL3.js","../node_modules/@arcgis/core/views/webgl/testUtils.js","../node_modules/@arcgis/core/views/webgl/ShaderTranspiler.js","../node_modules/@arcgis/core/views/webgl/Program.js","../node_modules/@arcgis/core/views/layers/LayerView.js","../node_modules/@arcgis/core/views/layers/support/ClipArea.js","../node_modules/@arcgis/core/views/layers/support/ClipRect.js","../node_modules/@arcgis/core/views/layers/support/Geometry.js","../node_modules/@arcgis/core/views/layers/support/Path.js","../node_modules/@arcgis/core/views/2d/layers/LayerView2D.js","../node_modules/@arcgis/core/views/webgl/ShaderCompiler.js","../node_modules/@arcgis/core/views/2d/engine/flow/BrushFlow.js","../node_modules/@arcgis/core/views/2d/engine/imagery/BrushVectorField.js","../node_modules/@arcgis/core/chunks/builtins.js","../node_modules/@arcgis/core/views/2d/engine/imagery/RasterBitmap.js","../node_modules/@arcgis/core/views/2d/engine/webgl/TiledDisplayObject.js","../node_modules/@arcgis/core/views/2d/engine/webgl/TileContainer.js","../node_modules/@arcgis/core/views/layers/RefreshableLayerView.js","../node_modules/@arcgis/core/views/2d/engine/Bitmap.js","../node_modules/@arcgis/core/views/2d/engine/ImageryBitmapSource.js","../node_modules/@arcgis/core/renderers/support/clickToleranceUtils.js","../node_modules/@arcgis/core/views/2d/engine/BitmapTile.js","../node_modules/@arcgis/core/views/2d/engine/BitmapTileContainer.js","../node_modules/@arcgis/core/views/2d/layers/BitmapTileLayerView2D.js","../node_modules/@arcgis/core/views/2d/layers/support/imageUtils.js","../node_modules/@arcgis/core/views/support/drapedUtils.js"],"names":["_","I","arguments","_tileStrategy","_fetchQueue","layer","get","this","resampling","e","pause","state","update","resume","tileServers","_tileInfoView","p","tileInfo","fullExtent","f","tileInfoView","concurrency","length","process","t","fetchTile","m","cachePolicy","acquireTile","releaseTile","requestUpdate","handles","add","s","doRefresh","destroy","clear","container","removeAllChildren","l","spatialReference","w","view","a","attached","updateRequested","suspended","reset","tiles","forEach","_enqueueTileFetch","updating","_bitmapView","createTile","i","bitmap","getTileCoords","key","x","y","resolution","getTileResolution","size","width","height","addChild","abort","id","removeChild","once","tilemapCache","r","signal","resamplingLevel","_fetchImage","n","getTileParentId","u","c","fetchAvailabilityUpsample","level","row","col","o","has","push","source","getLogger","declaredClass","error","fetchImageBitmapTile","type","allSublayers","toArray","filter","minScale","maxScale","popupTemplate","popupEnabled","visible","map","createQuery","event","renderer","geometry","createFetchPopupFeaturesQueryGeometry","getRequiredFields","outFields","queryFeatures","features","then","concat","value","Boolean","prototype","g","d","h","V","name","constructor","brushEffect","draw","b","E","_context","bufferType","usage","_glName","_size","_indexType","instanceCounter","increment","BufferObject","gl","createBuffer","setData","ELEMENT_ARRAY_BUFFER","UNSIGNED_INT","ARRAY_BUFFER","deleteBuffer","decrement","warn","UNSIGNED_SHORT","_setBufferData","byteLength","getBoundVAO","_isVAOAware","bindVAO","bindBuffer","bufferData","WEBGL2","bufferSubData","BYTES_PER_ELEMENT","subarray","byteSize","COPY_READ_BUFFER","getBufferSubData","unbindBuffer","clientWaitAsync","getSubData","Error","UNIFORM_BUFFER","STREAM_READ","PIXEL_PACK_BUFFER","setSize","STREAM_DRAW","PIXEL_UNPACK_BUFFER","_locations","_layout","_buffers","_indexBuffer","_initialized","VertexArrayObject","Object","keys","reduce","capabilities","vao","deleteVertexArray","dispose","getOwnPropertyNames","createVertexArray","bindVertexArray","_bindLayout","initialize","glName","_unbindLayout","BACKGROUND","FILL","LINE","SYMBOL","CIRCLE","VISIBLE","NONE","POINT","LINE_CENTER","MAP","VIEWPORT","AUTO","LEFT","CENTER","RIGHT","TOP","BOTTOM","TOP_LEFT","TOP_RIGHT","BOTTOM_LEFT","BOTTOM_RIGHT","UPPERCASE","LOWERCASE","HORIZONTAL","VERTICAL","backgroundLayoutDefinition","visibility","values","default","fillLayoutDefinition","lineLayoutDefinition","BUTT","MITER","symbolLayoutDefinition","minimum","circleLayoutDefinition","backgroundPaintDefinition","maximum","fillPaintDefinition","linePaintDefinition","symbolPaintDefinition","rasterPaintDefinition","circlePaintDefinition","Float32Array","N","freeze","defineProperty","__proto__","create","clone","fromValues","createView","zeros","ones","unitX","unitY","unitZ","unitW","ZEROS","ONES","UNIT_X","UNIT_Y","UNIT_Z","UNIT_W","Symbol","toStringTag","_depthAttachment","_stencilAttachment","_colorAttachments","Map","_depthStencilTexture","_desc","FramebufferObject","Array","isArray","COLOR_ATTACHMENT0","C","descriptor","set","U","D","H","_validateColorAttachmentPoint","depthTexture","console","depthStencilTarget","DEPTH_STENCIL_RENDER_BUFFER","STENCIL_RENDER_BUFFER","DEPTH_RENDER_BUFFER","getBoundFramebufferObject","_disposeColorAttachments","_disposeDepthStencilAttachments","deleteFramebuffer","bindFramebuffer","F","depthStencilAttachment","_framebufferTexture2D","delete","pixelFormat","DEPTH_STENCIL","dataType","UNSIGNED_INT_24_8","DEPTH_STENCIL_TEXTURE","internalFormat","T","DEPTH_COMPONENT16","DEPTH_ATTACHMENT","DEPTH_STENCIL_ATTACHMENT","framebufferRenderbuffer","FRAMEBUFFER","RENDERBUFFER","_detachColorAttachment","detachDepthStencilBuffer","detachDepthStencilTexture","target","TEXTURE_2D","bindTexture","TEXTURE_UNIT_FOR_UPDATES","setActiveTexture","copyTexSubImage2D","readPixels","createPixelPack","getSubDataAsync","resize","createFramebuffer","colorTarget","RENDER_BUFFER","TEXTURE","CUBEMAP","S","TEXTURE_CUBE_MAP","A","RGBA4","P","STENCIL_INDEX8","STENCIL_ATTACHMENT","samplingMode","NEAREST","wrapMode","R","CLAMP_TO_EDGE","checkFramebufferStatus","FRAMEBUFFER_COMPLETE","framebufferTexture2D","_MAX_COLOR_ATTACHMENTS","drawBuffers","getParameter","MAX_COLOR_ATTACHMENTS","RGBA","UNSIGNED_BYTE","TEXTURE_CUBE_MAP_POSITIVE_X","_rctx","_vertexBuffer","createVertex","STATIC_DRAW","Uint16Array","_vao","SHORT","_count","drawArrays","TRIANGLE_STRIP","shaders","vertexShader","fragmentShader","attributes","Renderbuffer","createRenderbuffer","bindRenderbuffer","multisampled","renderbufferStorageMultisample","samples","renderbufferStorage","parameters","maxSamples","Math","min","deleteRenderbuffer","Number","POSITIVE_INFINITY","PI","LN2","M","log","background","bitBlit","blend","debug","overlay","dot","filtering","fx","integrate","heatmap","heatmapResolve","highlight","magnifier","materials","fill","hittest","icon","heatmapAccumulate","label","line","pie","shared","text","blit","bloom","composite","gaussianBlur","luminosityHighPass","blur","dra","sobel","filterEffect","pp","raster","common","flow","imagery","particles","streamlines","hillshade","lut","magdir","reproject","scalar","stretch","stencil","util","split","resolveIncludes","getError","NO_ERROR","INVALID_ENUM","INVALID_VALUE","INVALID_OPERATION","INVALID_FRAMEBUFFER_OPERATION","OUT_OF_MEMORY","CONTEXT_LOST_WEBGL","vertexBuffers","stride","layout","instancing","count","vertexAttribPointer","normalized","offset","enableVertexAttribArray","divisor","vertexAttribDivisor","disableVertexAttribArray","ALPHA","LUMINANCE","RED","RED_INTEGER","R8","R8I","R8UI","R8_SNORM","LUMINANCE_ALPHA","RG","RG_INTEGER","R16F","R16I","R16UI","RG8","RG8I","RG8UI","RG8_SNORM","RGB565","RGB5_A1","DEPTH_COMPONENT","RGB","RGB_INTEGER","RGB8","RGB8I","RGB8UI","RGB8_SNORM","SRGB8","DEPTH_COMPONENT24","RGBA_INTEGER","RGBA8","R32F","R11F_G11F_B10F","RG16F","R32I","R32UI","RG16I","RG16UI","RGBA8I","RGBA8UI","RGBA8_SNORM","SRGB8_ALPHA8","RGB9_E5","RGB10_A2UI","RGB10_A2","DEPTH_COMPONENT32F","DEPTH24_STENCIL8","DEPTH32F_STENCIL8","RGB16F","RGB16I","RGB16UI","RG32F","RG32I","RG32UI","RGBA16F","RGBA16I","RGBA16UI","RGB32F","RGB32I","RGB32UI","RGBA32F","RGBA32I","RGBA32UI","COMPRESSED_RGB_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT3_EXT","COMPRESSED_RGBA_S3TC_DXT5_EXT","COMPRESSED_R11_EAC","COMPRESSED_SIGNED_R11_EAC","COMPRESSED_RGB8_ETC2","COMPRESSED_SRGB8_ETC2","COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_RG11_EAC","COMPRESSED_SIGNED_RG11_EAC","COMPRESSED_RGBA8_ETC2_EAC","COMPRESSED_SRGB8_ALPHA8_ETC2_EAC","hasMipmap","BYTE","pixelType","FLOAT","pixels","getAsRGBAFloat","getAsRGBA","textureFloat","textureFloatLinear","LINEAR","flipped","spacing","offsets","coefficients","u_flipY","u_applyTransform","u_opacity","u_transformSpacing","u_transformGridSize","u_targetImageSize","u_srcImageSize","u_colormapOffset","u_colormapMaxIndex","u_scale","u_offset","u_bandCount","bandCount","u_minOutput","outMin","u_maxOutput","outMax","u_minCutOff","minCutOff","u_maxCutOff","maxCutOff","u_factor","factor","u_useGamma","useGamma","u_gamma","gamma","u_gammaCorrection","gammaCorrection","u_hillshadeType","hillshadeType","u_sinZcosAs","sinZcosAs","u_sinZsinAs","sinZsinAs","u_cosZs","cosZs","u_weights","weights","u_minValue","minValue","u_maxValue","maxValue","getProgramParameter","ACTIVE_UNIFORMS","getActiveUniform","location","getUniformLocation","info","setUniform1fv","setUniform1f","FLOAT_VEC2","setUniform2fv","FLOAT_VEC3","setUniform3fv","FLOAT_VEC4","setUniform4fv","FLOAT_MAT3","setUniformMatrix3fv","FLOAT_MAT4","setUniformMatrix4fv","INT","setUniform1iv","setUniform1i","BOOL","INT_VEC2","BOOL_VEC2","setUniform2iv","INT_VEC3","BOOL_VEC3","setUniform3iv","INT_VEC4","BOOL_VEC4","setUniform4iv","O","some","_color","_solidProgram","_solidVertexArrayObject","context","setDepthWriteEnabled","setDepthTestEnabled","setStencilTestEnabled","setBlendingEnabled","setColorMask","setStencilOp","KEEP","REPLACE","setStencilWriteMask","requestRender","allowDelayedRender","_initialize","isCompiled","setStencilFunctionSeparate","FRONT_AND_BACK","GREATER","stencilRef","useProgram","transforms","dvs","rangeX","rangeY","Int8Array","exports","v","next","prev","Z","max","B","steiner","prevZ","nextZ","z","j","sort","abs","k","q","deviation","flatten","vertices","holes","dimensions","_outlineProgram","_tileInfoProgram","_outlineVertexArrayObject","_tileInfoVertexArrayObject","_canvas","setBlendFunctionSeparate","ONE","ONE_MINUS_SRC_ALPHA","isReady","_loadWGLResources","setUniform2f","LINE_STRIP","_getTexture","texture","triangleCountReportedInDebug","triangleCount","document","createElement","setAttribute","getContext","font","textAlign","textBaseline","clearRect","fillStyle","fillRect","fillText","vsPath","fsPath","_rendererUniformInfos","_quad","timeline","painter","begin","setStencilFunction","EQUAL","updateTexture","_getShaderVariations","materialManager","getProgram","symbolizerParameters","_drawWithProgram","end","transformGrid","opacity","_getUniformInfos","getTextures","names","textures","u_coordScale","coordScale","u_dvsMat3","colormap","colormapOffset","join","interpolation","isRendereredSource","nearest","defines","mips","bilinear","bicubic","trilinear","LINEAR_MIPMAP_LINEAR","renderingOptions","pixelRatio","round","rotation","isSourceScaled","blendFunction","computedOpacity","setSamplingProfile","bind","_program","setFaceCullingEnabled","ALWAYS","getVAO","bufferLayouts","indexBuffer","displayMat3","drawElements","TRIANGLES","dvsMat3","isWrapAround","perspectiveTransform","tex","_computeDesc","includes","getGeometryType","commit","getGeometry","attributeView","bindTextures","forEachCommand","load","materialKey","symbologyType","supportsSymbology","drawGeometry","displayLevel","passOptions","position","distance","tileMat3","viewMat3","displayViewMat3","vvSizeMinMaxValue","vvSizeScaleStops","vvSizeScaleStopsValue","vvSizeFieldStops","getSizeVVFieldStops","sizes","vvSizeUnitValue","vvSizeUnitValueToPixelsRatio","vvColor","vvColorValues","vvColors","vvOpacity","vvOpacityValues","vvOpacities","vvRotation","vvMaterialParameters","vvRotationType","findIndex","strides","DOT_DENSITY","rendererInfo","requiredLevel","data","programSpec","SIMPLE","OUTLINE_FILL_SIMPLE","splice","shader","vertexLayout","hittestAttributes","L","_getTriangleDesc","POINTS","G","getMaterialProgram","_setSharedUniforms","textureBinding","textureManager","_setSizeVVUniforms","_setColorAndOpacityVVUniforms","indexCount","indexFrom","Uint32Array","_drawFills","_dotTextureSize","_dotTextures","_dotSamplers","Int32Array","_dotVAO","_dotDesc","_disposeTextures","_dotFBO","_drawDotLocations","_drawDotDensity","rendererSchema","_createDotDensityMesh","dotSize","window","devicePixelRatio","getViewport","dotScale","colors","activeDots","backgroundColor","dotValue","setViewport","_createFBO","setClearColor","COLOR_BUFFER_BIT","STENCIL_BUFFER_BIT","scale","_bindDotDensityTextures","colorTexture","_createDotDensityTextures","seed","Int16Array","_seed","_allocDotDensityTexture","getFloat","REPEAT","MARKER","HEATMAP","PIE_CHART","_setRotationVVUniforms","_drawMarkers","loadQualityProfile","referenceScale","radius","isFieldActive","GEQUAL","_prevFBO","_accumulateOutputTexture","_accumulateFramebuffer","_accumulateOutputStencilBuffer","_resolveGradientTexture","_tileQuad","_prevViewport","_loadResources","_updateResources","setBlendFunction","minDensity","densityRange","shadingRate","requiresSharedStencilBuffer","getSharedStencilBuffer","gradientHash","gradient","_prevGradientHash","errorOnce","blitFramebuffer","_qualityProfile","colorBufferFloat","textureHalfFloat","textureHalfFloatLinear","HALF_FLOAT","floatBlend","driverTest","floatBufferBlendWorking","warnOnce","WEBGL1","defaultColor","othersColor","outlineColor","holePercentage","sectorThreshold","outlineWidth","_patternMatrix","_programOptions","pattern","styleLayerUID","styleLayer","backgroundMaterial","vectorTilesMaterialManager","getPaintValue","spriteMosaic","drawPhase","HITTEST","getMosaicItemPosition","tl","br","page","getPageSize","setUniform4f","getAttributeLocations","getLayoutInfo","layerData","circleIndexCount","circleMaterial","setDataUniforms","prepareForRendering","circleVertexArrayObject","circleIndexStart","_fillProgramOptions","_outlineProgramOptions","renderPass","fillIndexCount","outlineIndexCount","getPaintProperty","isDataDriven","getValue","_drawFill","hasDataDrivenOutlineColor","outlineUsesFillColor","_drawOutline","fillMaterial","fillVertexArrayObject","patternMap","fillIndexStart","outlineMaterial","outlineVertexArrayObject","outlineIndexStart","sdf","lineIndexCount","lineMaterial","getDashKey","getLayoutValue","lineVertexArrayObject","lineIndexStart","_iconProgramOptions","_sdfProgramOptions","_spritesTextureSize","_drawIcons","_drawText","iconMaterial","iconPerPageElementsMap","isIconSDF","updateOpacityInfo","iconVertexArrayObject","performance","now","lastOpacityUpdate","_renderIconRange","getWidth","getHeight","glyphMosaic","textMaterial","glyphPerPageElementsMap","W","_glyphTextureSize","Y","textVertexArrayObject","_renderGlyphRange","LABEL","mapAligned","floor","TEXT","marker","clip","rasterVF","vtlBackground","vtlFill","vtlLine","vtlCircle","vtlSymbol","dotDensity","pieChart","coords","lengths","slice","_cache","indices","primitiveType","isMapSpace","createIndex","fromScreenExtent","xmin","ymin","xmax","ymax","path","fromPolygon","fromMapExtent","fromRect","toScreen","parseFloat","_clip","stage","_handle","version","_invalidate","ready","mesh","_destroyGL","remove","_lastWidth","_lastHeight","_createMesh","getIndexBuffer","getVertexBuffers","left","right","top","bottom","_createScreenRect","fromPath","fromGeometry","_clips","children","clips","_updateClippingInfo","updateTransforms","createRenderParams","globalOpacity","profiler","HIGHLIGHT","recordContainerStart","beforeRenderLayer","_clippingInfos","renderChildren","compositeLayer","recordContainerEnd","_renderPasses","prepareRenderPasses","render","requireFBO","requiresDedicatedFBO","registerRenderPass","brushes","LABEL_ALPHA","DEBUG","setTransform","items","fromClipArea","replace","X","column","$","test","indexOf","match","toString","parseInt","exec","VERTEX_SHADER","trim","FRAGMENT_SHADER","_uniformBlockBindings","_refCount","_compiled","_nameToUniformLocation","_nameToUniform1","_nameToUniform1v","_nameToUniform2","_nameToUniform3","_nameToUniform4","_nameToUniformMatrix3","_nameToUniformMatrix4","_vShader","_fShader","Shader","createProgram","attachShader","bindAttribLocation","linkProgram","LINK_STATUS","VALIDATE_STATUS","getShaderParameter","COMPILE_STATUS","getProgramInfoLog","getUniformBlockIndex","uniformBlockBinding","Program","getExtension","COMPLETION_STATUS_KHR","deleteShader","deleteProgram","numUniforms","_getUniformLocation","uniform1i","uniform1iv","uniform2iv","uniform3iv","uniform4iv","uniform1f","uniform1fv","uniform2f","uniform2fv","uniform3f","uniform3fv","uniform4f","uniform4fv","uniformMatrix3fv","uniformMatrix4fv","createShader","shaderSource","compileShader","getShaderInfoLog","enabled","compiledLOC","from","parent","when","catch","title","canResume","getSuspendInfo","legendEnabled","updatingHandles","isUpdating","_overrideIfSome","loaded","suspendInfo","viewNotReady","layerNotLoaded","layerInvisible","EventedMixin","readOnly","commitVersionProperties","_get","commitProperty","String","json","write","base","typeMap","extent","polygon","types","read","ofType","rect","lastUpdateId","moving","visibleAtCurrentScale","spatialReferenceLocked","spatialReferenceSupported","addResolvingPromise","Promise","reject","fadeTransitionEnabled","endTransitions","blendMode","effect","scaleRange","effectiveScaleRange","isVisibleAtScale","_set","whenLayerView","processAttach","processDetach","supportsSpatialReference","isResolved","destroyed","attach","detach","isFulfilled","resolve","spatialReferenceNotSupported","outsideScaleRange","_readFile","_resolve","_read","start","index","_visualState","time","displayData","resources","flowStyle","animated","beaufort_ft","beaufort_m","beaufort_km","beaufort_mi","beaufort_kn","classified_arrow","ocean_current_m","ocean_current_kn","single_arrow","wind_speed","validPixelCount","updateVectorFieldVAO","vaoData","_drawScalars","elementCount","_drawTriangles","dataRange","rotationType","style","symbolPercentRange","_getSymbolSize","symbolTileSize","stretchType","_textureInvalidated","_colormapTextureInvalidated","_supportsBilinearTexture","_symbolizerParameters","_source","rawPixelData","_suspended","_bandIds","_interpolation","_transformGrid","_rasterTexture","_transformGridTexture","_colormapTexture","_rasterTextureBandIds","invalidateTexture","_isBandIdschanged","setSamplingMode","_getTextureSamplingMethod","toScreenNoRotation","_isValidSource","_updateColormapTexture","_createOrDestroyRasterTexture","bandIds","_colormap","sortChildren","setStencilReference","getClosestInfoForScale","scaleToZoom","getStencilTarget","dataChanged","_sourceWidth","_sourceHeight","_height","_width","immutable","requestRenderOnSourceChangedEnabled","_texture","_uploadStatus","controller","HTMLImageElement","naturalHeight","naturalWidth","AbortController","resolver","promise","inFadeTransition","generateMipmap","_createTexture","getRenderedRasterPixels","renderedRasterPixels","textureUploadManager","enqueueTextureUpdate","isImmutable","pixelBlock","originalPixelBlock","createImageData","putImageData","Uint8Array","buffer","xoffset","yoffset","stops","maxSize","minSize","pointerType","visualVariables","symbol","uniqueValueInfos","classBreakInfos","beforeRender","afterRender","getTileBounds","record","getLODInfoAt","getXForColumn","getYForRow","drawImage","overlayPixelSizeInMapUnits","basemapSpatialReference","equals"],"mappings":"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","file":"static/js/58.fd6ebd44.chunk.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../chunks/tslib.es6.js\";import t from\"../../../core/Logger.js\";import{isAbortError as i}from\"../../../core/promiseUtils.js\";import{watch as s}from\"../../../core/reactiveUtils.js\";import{property as r}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as a}from\"../../../core/accessorSupport/decorators/subclass.js\";import{equals as l}from\"../../../geometry/support/spatialReferenceUtils.js\";import{BitmapTileLayerView2D as o}from\"./BitmapTileLayerView2D.js\";import{LayerView2DMixin as h}from\"./LayerView2D.js\";import{createBlankImage as n,resampleImage as c}from\"./support/imageUtils.js\";import p from\"../tiling/TileInfoView.js\";import u from\"../tiling/TileKey.js\";import f from\"../tiling/TileQueue.js\";import m from\"../tiling/TileStrategy.js\";import y from\"../../layers/LayerView.js\";import d from\"../../layers/RefreshableLayerView.js\";import g from\"../../layers/TileLayerView.js\";import{createQueryGeometry as w}from\"../../support/drapedUtils.js\";const _=[0,0];let I=class extends(g(d(o(h(y))))){constructor(){super(...arguments),this._tileStrategy=null,this._fetchQueue=null,this.layer=null}get resampling(){return!(\"resampling\"in this.layer)||!1!==this.layer.resampling}update(e){this._fetchQueue.pause(),this._fetchQueue.state=e.state,this._tileStrategy.update(e),this._fetchQueue.resume()}attach(){const e=\"tileServers\"in this.layer?this.layer.tileServers:null;this._tileInfoView=new p(this.layer.tileInfo,this.layer.fullExtent),this._fetchQueue=new f({tileInfoView:this._tileInfoView,concurrency:e&&10*e.length||10,process:(e,t)=>this.fetchTile(e,t)}),this._tileStrategy=new m({cachePolicy:\"keep\",resampling:this.resampling,acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),tileInfoView:this._tileInfoView}),this.requestUpdate(),this.handles.add(s((()=>this.resampling),(()=>{this.doRefresh()}))),super.attach()}detach(){super.detach(),this._tileStrategy.destroy(),this._fetchQueue.clear(),this.container.removeAllChildren(),this._fetchQueue=this._tileStrategy=this._tileInfoView=null}moveStart(){this.requestUpdate()}viewChange(){this.requestUpdate()}moveEnd(){this.requestUpdate()}supportsSpatialReference(e){return l(this.layer.tileInfo?.spatialReference,e)}createFetchPopupFeaturesQueryGeometry(e,t){return w(e,t,this.view)}async doRefresh(){!this.attached||this.updateRequested||this.suspended||(this._fetchQueue.reset(),this._tileStrategy.tiles.forEach((e=>this._enqueueTileFetch(e))))}isUpdating(){return this._fetchQueue?.updating??!1}acquireTile(e){const t=this._bitmapView.createTile(e),i=t.bitmap;return[i.x,i.y]=this._tileInfoView.getTileCoords(_,t.key),i.resolution=this._tileInfoView.getTileResolution(t.key),[i.width,i.height]=this._tileInfoView.tileInfo.size,this._enqueueTileFetch(t),this._bitmapView.addChild(t),this.requestUpdate(),t}releaseTile(e){this._fetchQueue.abort(e.key.id),this._bitmapView.removeChild(e),e.once(\"detach\",(()=>e.destroy())),this.requestUpdate()}async fetchTile(e,t={}){const s=\"tilemapCache\"in this.layer?this.layer.tilemapCache:null,{signal:r,resamplingLevel:a=0}=t;if(!s)try{return await this._fetchImage(e,r)}catch(h){if(!i(h)&&!this.resampling)return n(this._tileInfoView.tileInfo.size);if(a<3){const i=this._tileInfoView.getTileParentId(e.id);if(i){const s=new u(i),r=await this.fetchTile(s,{...t,resamplingLevel:a+1});return c(this._tileInfoView,r,s,e)}}throw h}const l=new u(0,0,0,0);let o;try{if(await s.fetchAvailabilityUpsample(e.level,e.row,e.col,l,{signal:r}),l.level!==e.level&&!this.resampling)return n(this._tileInfoView.tileInfo.size);o=await this._fetchImage(l,r)}catch(h){if(i(h))throw h;o=await this._fetchImage(e,r)}return this.resampling?c(this._tileInfoView,o,l,e):o}async _enqueueTileFetch(e){if(!this._fetchQueue.has(e.key.id)){try{const t=await this._fetchQueue.push(e.key);e.bitmap.source=t,e.bitmap.width=this._tileInfoView.tileInfo.size[0],e.bitmap.height=this._tileInfoView.tileInfo.size[1],e.once(\"attach\",(()=>this.requestUpdate()))}catch(s){i(s)||t.getLogger(this.declaredClass).error(s)}this.requestUpdate()}}async _fetchImage(e,t){return this.layer.fetchImageBitmapTile(e.level,e.row,e.col,{signal:t})}};e([r()],I.prototype,\"_fetchQueue\",void 0),e([r()],I.prototype,\"resampling\",null),I=e([a(\"esri.views.2d.layers.TileLayerView2D\")],I);const V=I;export{V as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../chunks/tslib.es6.js\";import r from\"../../core/Error.js\";import{isSome as t}from\"../../core/maybe.js\";import{eachAlways as o}from\"../../core/promiseUtils.js\";import{property as s}from\"../../core/accessorSupport/decorators/property.js\";import\"../../core/arrayUtils.js\";import\"../../core/accessorSupport/ensureType.js\";import{subclass as a}from\"../../core/accessorSupport/decorators/subclass.js\";import{calculateTolerance as p}from\"../../renderers/support/clickToleranceUtils.js\";const i=i=>{let c=class extends i{async fetchPopupFeatures(e,s){const{layer:a}=this;if(!e)throw new r(\"tilelayerview:fetchPopupFeatures\",\"Nothing to fetch without area\",{layer:a});if(\"tile\"!==a.type)throw new r(\"tilelayerview:fetchPopupFeatures\",\"Layer type should be 'tile'\",{type:a.type});const i=this.get(\"view.scale\"),c=a.allSublayers.toArray().filter((e=>{const r=0===e.minScale||i<=e.minScale,t=0===e.maxScale||i>=e.maxScale;return e.popupTemplate&&e.popupEnabled&&e.visible&&r&&t}));return o(c.map((async r=>{const o=r.createQuery(),a=t(s)?s.event:null,i=p({renderer:r.renderer,event:a});o.geometry=this.createFetchPopupFeaturesQueryGeometry(e,i),o.outFields=await r.popupTemplate.getRequiredFields();return(await r.queryFeatures(o)).features}))).then((e=>[].concat(...e.map((e=>e.value)).filter(Boolean))))}};return e([s()],c.prototype,\"layer\",void 0),c=e([a(\"esri.layers.mixins.TileLayerView\")],c),c};export{i as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nclass t{constructor(){this.name=this.constructor.name||\"UnnamedBrush\",this.brushEffect=null}prepareState(t,r){}draw(t,r,s){}drawMany(t,r,s){for(const a of r)a.visible&&this.draw(t,a,s)}}export{t as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isArrayLike as e}from\"../../core/arrayUtils.js\";import t from\"../../core/Logger.js\";import{nullifyNonNullableForDispose as r,isSome as i}from\"../../core/maybe.js\";import{isUint16Array as s,isUint32Array as n}from\"../../core/typedArrayUtil.js\";import{checkWebGLError as o}from\"./checkWebGLError.js\";import{ContextType as a}from\"./context-util.js\";import{ResourceType as f,BufferType as u,Usage as _,DataType as h}from\"./enums.js\";const c=t.getLogger(\"esri.views.webgl.BufferObject\");function b(t){return e(t)}class E{constructor(e,t,r,i){this._context=e,this.bufferType=t,this.usage=r,this._glName=null,this._size=-1,this._indexType=void 0,e.instanceCounter.increment(f.BufferObject,this),this._glName=this._context.gl.createBuffer(),o(this._context.gl),i&&this.setData(i)}static createIndex(e,t,r){return new E(e,u.ELEMENT_ARRAY_BUFFER,t,r)}static createVertex(e,t,r){return new E(e,u.ARRAY_BUFFER,t,r)}static createUniform(e,t,r){if(e.type!==a.WEBGL2)throw new Error(\"Uniform buffers are supported in WebGL2 only!\");return new E(e,u.UNIFORM_BUFFER,t,r)}static createPixelPack(e,t=_.STREAM_READ,r){if(e.type!==a.WEBGL2)throw new Error(\"Pixel pack buffers are supported in WebGL2 only!\");const i=new E(e,u.PIXEL_PACK_BUFFER,t);return r&&i.setSize(r),i}static createPixelUnpack(e,t=_.STREAM_DRAW,r){if(e.type!==a.WEBGL2)throw new Error(\"Pixel unpack buffers are supported in WebGL2 only!\");return new E(e,u.PIXEL_UNPACK_BUFFER,t,r)}get glName(){return this._glName}get size(){return this._size}get indexType(){return this._indexType}get byteSize(){return this.bufferType===u.ELEMENT_ARRAY_BUFFER?this._indexType===h.UNSIGNED_INT?4*this._size:2*this._size:this._size}get _isVAOAware(){return this.bufferType===u.ELEMENT_ARRAY_BUFFER||this.bufferType===u.ARRAY_BUFFER}dispose(){if(this._context?.gl){if(this._glName){this._context.gl.deleteBuffer(this._glName),this._glName=null}this._context.instanceCounter.decrement(f.BufferObject,this),this._context=r(this._context)}else this._glName&&c.warn(\"Leaked WebGL buffer object\")}setSize(e,t=null){if(e<=0&&c.error(\"Buffer size needs to be positive!\"),this.bufferType===u.ELEMENT_ARRAY_BUFFER&&i(t))switch(this._indexType=t,t){case h.UNSIGNED_SHORT:e*=2;break;case h.UNSIGNED_INT:e*=4}this._setBufferData(e)}setData(e){if(!e)return;let t=e.byteLength;this.bufferType===u.ELEMENT_ARRAY_BUFFER&&(s(e)&&(t/=2,this._indexType=h.UNSIGNED_SHORT),n(e)&&(t/=4,this._indexType=h.UNSIGNED_INT)),this._setBufferData(t,e)}_setBufferData(e,t=null){this._size=e;const r=this._context.getBoundVAO();this._isVAOAware&&this._context.bindVAO(null),this._context.bindBuffer(this);const s=this._context.gl;i(t)?s.bufferData(this.bufferType,t,this.usage):s.bufferData(this.bufferType,e,this.usage),o(s),this._isVAOAware&&this._context.bindVAO(r)}setSubData(e,t,r,i){if(!e)return;(t<0||t>=this._size)&&c.error(\"offset is out of range!\"),r>=i&&c.error(\"end must be bigger than start!\"),t+(i-r)>this._size&&c.error(\"An attempt to write beyond the end of the buffer!\");const s=this._context.getBoundVAO();this._isVAOAware&&this._context.bindVAO(null),this._context.bindBuffer(this);const n=this._context.gl;if(this._context.type===a.WEBGL2)n.bufferSubData(this.bufferType,t*e.BYTES_PER_ELEMENT,e,r,i-r);else{const s=0===r&&i===e.length?e:e.subarray(r,i);n.bufferSubData(this.bufferType,t*e.BYTES_PER_ELEMENT,s)}o(n),this._isVAOAware&&this._context.bindVAO(s)}getSubData(e,t=0,r,i){if(this._context.type!==a.WEBGL2)return void c.error(\"Get buffer subdata is supported in WebGL2 only!\");if(r<0||i<0)return void c.error(\"Problem getting subdata: offset and length were less than zero!\");const s=b(e)?e.BYTES_PER_ELEMENT:1;if(s*((r??0)+(i??0))>e.byteLength)return void c.error(\"Problem getting subdata: offset and length exceeded destination size!\");t+s*(i??0)>this.byteSize&&c.warn(\"Potential problem getting subdata: requested data exceeds buffer size!\");const n=this._context.gl;this._context.bindBuffer(this,u.COPY_READ_BUFFER),n.getBufferSubData(u.COPY_READ_BUFFER,t,e,r,i),this._context.unbindBuffer(u.COPY_READ_BUFFER)}async getSubDataAsync(e,t=0,r,i){this._context.type===a.WEBGL2?(await this._context.clientWaitAsync(),this.getSubData(e,t,r,i)):c.error(\"Get buffer subdata is supported in WebGL2 only!\")}}export{E as BufferObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport t from\"../../core/Logger.js\";import{isSome as e,disposeMaybe as i,nullifyNonNullableForDispose as r}from\"../../core/maybe.js\";import{ResourceType as s}from\"./enums.js\";import{bindVertexBufferLayout as n,unbindVertexBufferLayout as o}from\"./Util.js\";const f=t.getLogger(\"esri.views.webgl.VertexArrayObject\");class a{constructor(t,e,i,r,n=null){this._context=t,this._locations=e,this._layout=i,this._buffers=r,this._indexBuffer=n,this._glName=null,this._initialized=!1,t.instanceCounter.increment(s.VertexArrayObject,this)}get glName(){return this._glName}get context(){return this._context}get vertexBuffers(){return this._buffers}get indexBuffer(){return this._indexBuffer}get size(){return Object.keys(this._buffers).reduce(((t,e)=>t+this._buffers[e].size),e(this._indexBuffer)?this._indexBuffer.size:0)}get layout(){return this._layout}get locations(){return this._locations}dispose(t=!0){if(!this._context)return void((this._glName||t&&Object.getOwnPropertyNames(this._buffers).length>0)&&f.warn(\"Leaked WebGL VAO\"));if(this._glName){const t=this._context?.capabilities?.vao;t?(t.deleteVertexArray(this._glName),this._glName=null):f.warn(\"Leaked WebGL VAO\")}if(this._context.getBoundVAO()===this&&this._context.bindVAO(null),t){for(const t in this._buffers)this._buffers[t]?.dispose(),delete this._buffers[t];this._indexBuffer=i(this._indexBuffer)}this._context.instanceCounter.decrement(s.VertexArrayObject,this),this._context=r(this._context)}initialize(){if(this._initialized)return;const t=this._context.capabilities.vao;if(t){const e=t.createVertexArray();t.bindVertexArray(e),this._bindLayout(),t.bindVertexArray(null),this._glName=e}this._initialized=!0}bind(){this.initialize();const t=this._context.capabilities.vao;t?t.bindVertexArray(this.glName):(this._context.bindVAO(null),this._bindLayout())}_bindLayout(){const{_buffers:t,_layout:i,_indexBuffer:r}=this;t||f.error(\"Vertex buffer dictionary is empty!\");const s=this._context.gl;for(const e in t){const r=t[e];r||f.error(\"Vertex buffer is uninitialized!\");const s=i[e];s||f.error(\"Vertex element descriptor is empty!\"),n(this._context,this._locations,r,s)}if(e(r)){!!this._context.capabilities.vao?s.bindBuffer(s.ELEMENT_ARRAY_BUFFER,r.glName):this._context.bindBuffer(r)}}unbind(){this.initialize();const t=this._context.capabilities.vao;t?t.bindVertexArray(null):this._unbindLayout()}_unbindLayout(){const{_buffers:t,_layout:i}=this;t||f.error(\"Vertex buffer dictionary is empty!\");for(const e in t){const r=t[e];r||f.error(\"Vertex buffer is uninitialized!\");const s=i[e];o(this._context,this._locations,r,s)}e(this._indexBuffer)&&this._context.unbindBuffer(this._indexBuffer.bufferType)}}export{a as VertexArrayObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{CapType as e,JoinType as t}from\"../../../../../symbols/cim/enums.js\";var a,i,n,l,u,m,o,r,p;!function(e){e[e.BACKGROUND=0]=\"BACKGROUND\",e[e.FILL=1]=\"FILL\",e[e.LINE=2]=\"LINE\",e[e.SYMBOL=3]=\"SYMBOL\",e[e.CIRCLE=4]=\"CIRCLE\"}(a||(a={})),function(e){e[e.VISIBLE=0]=\"VISIBLE\",e[e.NONE=1]=\"NONE\"}(i||(i={})),function(e){e[e.POINT=0]=\"POINT\",e[e.LINE=1]=\"LINE\",e[e.LINE_CENTER=2]=\"LINE_CENTER\"}(n||(n={})),function(e){e[e.MAP=0]=\"MAP\",e[e.VIEWPORT=1]=\"VIEWPORT\",e[e.AUTO=2]=\"AUTO\"}(l||(l={})),function(e){e[e.AUTO=0]=\"AUTO\",e[e.LEFT=1]=\"LEFT\",e[e.CENTER=2]=\"CENTER\",e[e.RIGHT=3]=\"RIGHT\"}(u||(u={})),function(e){e[e.CENTER=0]=\"CENTER\",e[e.LEFT=1]=\"LEFT\",e[e.RIGHT=2]=\"RIGHT\",e[e.TOP=3]=\"TOP\",e[e.BOTTOM=4]=\"BOTTOM\",e[e.TOP_LEFT=5]=\"TOP_LEFT\",e[e.TOP_RIGHT=6]=\"TOP_RIGHT\",e[e.BOTTOM_LEFT=7]=\"BOTTOM_LEFT\",e[e.BOTTOM_RIGHT=8]=\"BOTTOM_RIGHT\"}(m||(m={})),function(e){e[e.NONE=0]=\"NONE\",e[e.UPPERCASE=1]=\"UPPERCASE\",e[e.LOWERCASE=2]=\"LOWERCASE\"}(o||(o={})),function(e){e[e.MAP=0]=\"MAP\",e[e.VIEWPORT=1]=\"VIEWPORT\"}(r||(r={})),function(e){e[e.HORIZONTAL=0]=\"HORIZONTAL\",e[e.VERTICAL=1]=\"VERTICAL\"}(p||(p={}));class f{}f.backgroundLayoutDefinition={visibility:{type:\"enum\",values:[\"visible\",\"none\"],default:i.VISIBLE}},f.fillLayoutDefinition={visibility:{type:\"enum\",values:[\"visible\",\"none\"],default:i.VISIBLE}},f.lineLayoutDefinition={visibility:{type:\"enum\",values:[\"visible\",\"none\"],default:i.VISIBLE},\"line-cap\":{type:\"enum\",values:[\"butt\",\"round\",\"square\"],default:e.BUTT},\"line-join\":{type:\"enum\",values:[\"bevel\",\"round\",\"miter\"],default:t.MITER},\"line-miter-limit\":{type:\"number\",default:2},\"line-round-limit\":{type:\"number\",default:1.05}},f.symbolLayoutDefinition={visibility:{type:\"enum\",values:[\"visible\",\"none\"],default:i.VISIBLE},\"symbol-avoid-edges\":{type:\"boolean\",default:!1},\"symbol-placement\":{type:\"enum\",values:[\"point\",\"line\",\"line-center\"],default:n.POINT},\"symbol-sort-key\":{type:\"number\",default:-1},\"symbol-spacing\":{type:\"number\",minimum:1,default:250},\"icon-allow-overlap\":{type:\"boolean\",default:!1},\"icon-anchor\":{type:\"enum\",values:[\"center\",\"left\",\"right\",\"top\",\"bottom\",\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"],default:m.CENTER},\"icon-ignore-placement\":{type:\"boolean\",default:!1},\"icon-image\":{type:\"string\"},\"icon-keep-upright\":{type:\"boolean\",default:!1},\"icon-offset\":{type:\"array\",value:\"number\",length:2,default:[0,0]},\"icon-optional\":{type:\"boolean\",default:!1},\"icon-padding\":{type:\"number\",minimum:0,default:2},\"icon-rotate\":{type:\"number\",default:0},\"icon-rotation-alignment\":{type:\"enum\",values:[\"map\",\"viewport\",\"auto\"],default:l.AUTO},\"icon-size\":{type:\"number\",minimum:0,default:1},\"text-allow-overlap\":{type:\"boolean\",default:!1},\"text-anchor\":{type:\"enum\",values:[\"center\",\"left\",\"right\",\"top\",\"bottom\",\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"],default:m.CENTER},\"text-field\":{type:\"string\"},\"text-font\":{type:\"array\",value:\"string\",default:[\"Open Sans Regular\",\"Arial Unicode MS Regular\"]},\"text-ignore-placement\":{type:\"boolean\",default:!1},\"text-justify\":{type:\"enum\",values:[\"auto\",\"left\",\"center\",\"right\"],default:u.CENTER},\"text-keep-upright\":{type:\"boolean\",default:!0},\"text-letter-spacing\":{type:\"number\",default:0},\"text-line-height\":{type:\"number\",default:1.2},\"text-max-angle\":{type:\"number\",minimum:0,default:45},\"text-max-width\":{type:\"number\",minimum:0,default:10},\"text-offset\":{type:\"array\",value:\"number\",length:2,default:[0,0]},\"text-optional\":{type:\"boolean\",default:!1},\"text-padding\":{type:\"number\",minimum:0,default:2},\"text-rotate\":{type:\"number\",default:0},\"text-rotation-alignment\":{type:\"enum\",values:[\"map\",\"viewport\",\"auto\"],default:l.AUTO},\"text-size\":{type:\"number\",minimum:0,default:16},\"text-transform\":{type:\"enum\",values:[\"none\",\"uppercase\",\"lowercase\"],default:o.NONE},\"text-writing-mode\":{type:\"array\",value:\"enum\",values:[\"horizontal\",\"vertical\"],default:[p.HORIZONTAL]}},f.circleLayoutDefinition={visibility:{type:\"enum\",values:[\"visible\",\"none\"],default:i.VISIBLE}},f.backgroundPaintDefinition={\"background-color\":{type:\"color\",default:[0,0,0,1]},\"background-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"background-pattern\":{type:\"string\"}},f.fillPaintDefinition={\"fill-antialias\":{type:\"boolean\",default:!0},\"fill-color\":{type:\"color\",default:[0,0,0,1]},\"fill-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"fill-outline-color\":{type:\"color\",default:[0,0,0,0]},\"fill-pattern\":{type:\"string\"},\"fill-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0]},\"fill-translate-anchor\":{type:\"enum\",values:[\"map\",\"viewport\"],default:r.MAP}},f.linePaintDefinition={\"line-blur\":{type:\"number\",minimum:0,default:0},\"line-color\":{type:\"color\",default:[0,0,0,1]},\"line-dasharray\":{type:\"array\",value:\"number\",default:[]},\"line-gap-width\":{type:\"number\",minimum:0,default:0},\"line-offset\":{type:\"number\",default:0},\"line-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"line-pattern\":{type:\"string\"},\"line-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0]},\"line-translate-anchor\":{type:\"enum\",values:[\"map\",\"viewport\"],default:r.MAP},\"line-width\":{type:\"number\",minimum:0,default:1}},f.symbolPaintDefinition={\"icon-color\":{type:\"color\",default:[0,0,0,1]},\"icon-halo-blur\":{type:\"number\",minimum:0,default:0},\"icon-halo-color\":{type:\"color\",default:[0,0,0,0]},\"icon-halo-width\":{type:\"number\",minimum:0,default:0},\"icon-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"icon-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0]},\"icon-translate-anchor\":{type:\"enum\",values:[\"map\",\"viewport\"],default:r.MAP},\"text-color\":{type:\"color\",default:[0,0,0,1]},\"text-halo-blur\":{type:\"number\",minimum:0,default:0},\"text-halo-color\":{type:\"color\",default:[0,0,0,0]},\"text-halo-width\":{type:\"number\",minimum:0,default:0},\"text-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"text-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0]},\"text-translate-anchor\":{type:\"enum\",values:[\"map\",\"viewport\"],default:r.MAP}},f.rasterPaintDefinition={\"raster-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"raster-hue-rotate\":{type:\"number\",default:0},\"raster-brightness-min\":{type:\"number\",minimum:0,maximum:1,default:0},\"raster-brightness-max\":{type:\"number\",minimum:0,maximum:1,default:1},\"raster-saturation\":{type:\"number\",minimum:-1,maximum:1,default:0},\"raster-contrast\":{type:\"number\",minimum:-1,maximum:1,default:0},\"raster-fade-duration\":{type:\"number\",minimum:0,default:300}},f.circlePaintDefinition={\"circle-blur\":{type:\"number\",minimum:0,default:0},\"circle-color\":{type:\"color\",default:[0,0,0,1]},\"circle-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"circle-radius\":{type:\"number\",minimum:0,default:5},\"circle-stroke-color\":{type:\"color\",default:[0,0,0,1]},\"circle-stroke-opacity\":{type:\"number\",minimum:0,maximum:1,default:1},\"circle-stroke-width\":{type:\"number\",minimum:0,default:0},\"circle-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0]},\"circle-translate-anchor\":{type:\"enum\",values:[\"map\",\"viewport\"],default:r.MAP}};export{l as RotationAlignment,f as StyleDefinition,a as StyleLayerType,m as SymbolAnchor,n as SymbolPlacement,u as TextJustification,o as TextTransform,p as TextWritingMode,r as TranslateAnchor,i as Visibility};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nfunction n(){return new Float32Array(4)}function t(n){const t=new Float32Array(4);return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t}function r(n,t,r,e){const a=new Float32Array(4);return a[0]=n,a[1]=t,a[2]=r,a[3]=e,a}function e(n,t){return new Float32Array(n,t,4)}function a(){return n()}function o(){return r(1,1,1,1)}function u(){return r(1,0,0,0)}function s(){return r(0,1,0,0)}function c(){return r(0,0,1,0)}function i(){return r(0,0,0,1)}const f=a(),l=o(),_=u(),y=s(),w=c(),N=i(),O=Object.freeze(Object.defineProperty({__proto__:null,create:n,clone:t,fromValues:r,createView:e,zeros:a,ones:o,unitX:u,unitY:s,unitZ:c,unitW:i,ZEROS:f,ONES:l,UNIT_X:_,UNIT_Y:y,UNIT_Z:w,UNIT_W:N},Symbol.toStringTag,{value:\"Module\"}));export{l as O,_ as U,f as Z,t as a,e as b,n as c,s as d,c as e,r as f,i as g,y as h,w as i,N as j,o,u,O as v,a as z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport t from\"../../core/Logger.js\";import{isSome as e,isNone as i}from\"../../core/maybe.js\";import{BufferObject as r}from\"./BufferObject.js\";import{webglDebugEnabled as h}from\"./checkWebGLError.js\";import{ContextType as s}from\"./context-util.js\";import{ResourceType as n,ColorAttachment as c,DepthStencilTargetType as o,PixelFormat as _,PixelType as a,DepthStencilAttachment as l,RenderbufferFormat as T,FramebufferTarget as E,TextureType as d,Usage as u,BufferType as f,TargetType as m,SizedPixelFormat as A,TextureSamplingMode as p,TextureWrapMode as R}from\"./enums.js\";import{Renderbuffer as g}from\"./Renderbuffer.js\";import{Texture as N}from\"./Texture.js\";import{getGpuMemoryUsage as F}from\"./Util.js\";class x{constructor(t,i,r=null,h=null){if(this._context=t,this._glName=null,this._depthAttachment=null,this._stencilAttachment=null,this._colorAttachments=new Map,this._depthStencilTexture=null,this._initialized=!1,this._desc={...i},t.instanceCounter.increment(n.FramebufferObject,this),e(r)){Array.isArray(r)||(r=[r]);for(let t=0;tt+F(i)),0)+F(this.depthStencilAttachment)}getColorTexture(t){const e=this._colorAttachments.get(t);return e&&b(e)?e:null}attachColorTexture(t,e=c.COLOR_ATTACHMENT0){if(!t)return;this._validateColorAttachmentPoint(e);U(t.descriptor,this._desc),this._disposeColorAttachments(),this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(t.glName,e)),this._colorAttachments.set(e,t)}detachColorTexture(t=c.COLOR_ATTACHMENT0){const e=this._colorAttachments.get(t);if(b(e)){const i=e;return this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,t)),this._colorAttachments.delete(t),i}}setColorTextureTarget(t,e=c.COLOR_ATTACHMENT0){const i=this._colorAttachments.get(e);b(i)&&this._framebufferTexture2D(i.glName,e,t)}attachDepthStencilTexture(t){if(i(t))return;const e=t.descriptor;e.pixelFormat!==_.DEPTH_STENCIL&&console.error(\"Depth/Stencil texture must have a pixel type of DEPTH_STENCIL!\"),e.dataType!==a.UNSIGNED_INT_24_8&&console.error(\"Depth/Stencil texture must have data type of UNSIGNED_INT_24_8!\"),this._context.capabilities.depthTexture||console.error(\"Extension WEBGL_depth_texture isn't supported therefore it is no possible to set the depth/stencil texture!\"),U(e,this._desc),this._desc.depthStencilTarget&&this._desc.depthStencilTarget!==o.DEPTH_STENCIL_TEXTURE&&(this._desc.depthStencilTarget=o.DEPTH_STENCIL_TEXTURE),this._disposeDepthStencilAttachments(),this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(t.glName,l)),this._depthStencilTexture=t}detachDepthStencilTexture(){const t=this._depthStencilTexture;return t&&this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,l)),this._depthStencilTexture=null,t}attachDepthStencilBuffer(t){if(i(t))return;const e=t.descriptor;if(e.internalFormat!==T.DEPTH_STENCIL&&e.internalFormat!==T.DEPTH_COMPONENT16&&console.error(\"Depth/Stencil buffer must have correct internalFormat\"),H(e,this._desc),this._disposeDepthStencilAttachments(),this._desc.depthStencilTarget=e.internalFormat===T.DEPTH_STENCIL?o.DEPTH_STENCIL_RENDER_BUFFER:o.DEPTH_RENDER_BUFFER,this._initialized){this._context.bindFramebuffer(this);const e=this._context.gl,i=this._desc.depthStencilTarget===o.DEPTH_RENDER_BUFFER?e.DEPTH_ATTACHMENT:e.DEPTH_STENCIL_ATTACHMENT;e.framebufferRenderbuffer(E.FRAMEBUFFER,i,e.RENDERBUFFER,t.glName)}this._depthAttachment=t}detachDepthStencilBuffer(){const t=this._context.gl,e=this._depthAttachment;if(e&&this._initialized){this._context.bindFramebuffer(this);const e=this._desc.depthStencilTarget===o.DEPTH_RENDER_BUFFER?t.DEPTH_ATTACHMENT:t.DEPTH_STENCIL_ATTACHMENT;t.framebufferRenderbuffer(E.FRAMEBUFFER,e,t.RENDERBUFFER,null)}return this._depthAttachment=null,e}detachAll(){this._colorAttachments.forEach(((t,e)=>this._detachColorAttachment(e))),this.detachDepthStencilBuffer(),this.detachDepthStencilTexture()}copyToTexture(t,e,i,r,h,s,n){(t<0||e<0||h<0||s<0)&&console.error(\"Offsets cannot be negative!\"),(i<=0||r<=0)&&console.error(\"Copy width and height must be greater than zero!\");const c=this._desc,o=n.descriptor;n.descriptor.target!==d.TEXTURE_2D&&console.error(\"Texture target must be TEXTURE_2D!\"),(null==c?.width||null==c?.height||null==o?.width||null==o?.height||t+i>c.width||e+r>c.height||h+i>o.width||s+r>o.height)&&console.error(\"Bad dimensions, the current input values will attempt to read or copy out of bounds!\");const _=this._context,a=_.bindTexture(n,N.TEXTURE_UNIT_FOR_UPDATES);_.setActiveTexture(N.TEXTURE_UNIT_FOR_UPDATES),_.bindFramebuffer(this),_.gl.copyTexSubImage2D(d.TEXTURE_2D,0,h,s,t,e,i,r),_.bindTexture(a,N.TEXTURE_UNIT_FOR_UPDATES)}readPixels(t,e,i,r,h,s,n){(i<=0||r<=0)&&console.error(\"Copy width and height must be greater than zero!\"),n||console.error(\"Target memory is not initialized!\"),this._context.bindFramebuffer(this);this._context.gl.readPixels(t,e,i,r,h,s,n)}async readPixelsAsync(t,e,i,n,c,o,_){if(this._context.type!==s.WEBGL2)return h()&&console.warn(\"Attempting to read pixels using pixel buffer object without WebGL2\"),void this.readPixels(t,e,i,n,c,o,_);const a=this._context.gl,l=r.createPixelPack(this._context,u.STREAM_READ,_.byteLength);this._context.bindBuffer(l),this._context.bindFramebuffer(this),a.readPixels(t,e,i,n,c,o,0),this._context.unbindBuffer(f.PIXEL_PACK_BUFFER),await l.getSubDataAsync(_),l.dispose()}resize(t,e){const i=this._desc;if(i.width!==t||i.height!==e){if(!this._initialized)return i.width=t,i.height=e,this._colorAttachments.forEach((i=>{i&&i.resize(t,e)})),void(this._depthStencilTexture&&this._depthStencilTexture.resize(t,e));i.width=t,i.height=e,this._colorAttachments.forEach((i=>{i&&i.resize(t,e)})),null!=this._depthStencilTexture?this._depthStencilTexture.resize(t,e):(this._depthAttachment||this._stencilAttachment)&&(this._depthAttachment&&this._depthAttachment.resize(t,e),this._stencilAttachment&&this._stencilAttachment.resize(t,e)),this._context.getBoundFramebufferObject()===this&&this._context.bindFramebuffer(null),this._initialized=!1}}initializeAndBind(t=E.FRAMEBUFFER){const e=this._context.gl;if(this._initialized)return void e.bindFramebuffer(t,this.glName);this._glName&&e.deleteFramebuffer(this._glName);const i=this._context,r=e.createFramebuffer(),s=this._desc,n=s.colorTarget??m.RENDER_BUFFER,l=s.width??1,u=s.height??1;if(e.bindFramebuffer(t,r),0===this._colorAttachments.size)if(n===m.TEXTURE||n===m.CUBEMAP)this._colorAttachments.set(c.COLOR_ATTACHMENT0,S(i,s,this.descriptor.colorTarget===m.CUBEMAP?d.TEXTURE_CUBE_MAP:d.TEXTURE_2D));else{const t=new g(i,{internalFormat:A.RGBA4,width:l,height:u});this._colorAttachments.set(c.COLOR_ATTACHMENT0,t)}this._colorAttachments.forEach(((i,r)=>{i&&(b(i)?this._framebufferTexture2D(i.glName,r,P(i),t):e.framebufferRenderbuffer(t,r,e.RENDERBUFFER,i.glName))}));const f=s.depthStencilTarget??o.NONE;switch(f){case o.DEPTH_RENDER_BUFFER:case o.DEPTH_STENCIL_RENDER_BUFFER:{this._depthAttachment||(this._depthAttachment=new g(i,{internalFormat:s.depthStencilTarget===o.DEPTH_RENDER_BUFFER?T.DEPTH_COMPONENT16:T.DEPTH_STENCIL,width:l,height:u}));const r=f===o.DEPTH_RENDER_BUFFER?e.DEPTH_ATTACHMENT:e.DEPTH_STENCIL_ATTACHMENT;e.framebufferRenderbuffer(t,r,e.RENDERBUFFER,this._depthAttachment.glName);break}case o.STENCIL_RENDER_BUFFER:this._stencilAttachment||(this._stencilAttachment=new g(i,{internalFormat:T.STENCIL_INDEX8,width:l,height:u})),e.framebufferRenderbuffer(t,e.STENCIL_ATTACHMENT,e.RENDERBUFFER,this._stencilAttachment.glName);break;case o.DEPTH_STENCIL_TEXTURE:if(!this._depthStencilTexture){i.capabilities.depthTexture||console.error(\"Extension WEBGL_depth_texture isn't supported therefore it is no possible to set the depth/stencil texture as an attachment!\");const t={target:d.TEXTURE_2D,pixelFormat:_.DEPTH_STENCIL,dataType:a.UNSIGNED_INT_24_8,samplingMode:p.NEAREST,wrapMode:R.CLAMP_TO_EDGE,width:l,height:u};this._depthStencilTexture=new N(i,t)}this._framebufferTexture2D(this._depthStencilTexture.glName,e.DEPTH_STENCIL_ATTACHMENT,P(this._depthStencilTexture),t)}if(h()){e.checkFramebufferStatus(t)!==e.FRAMEBUFFER_COMPLETE&&console.error(\"Framebuffer is incomplete!\")}this._glName=r,this._initialized=!0}_framebufferTexture2D(t,e=c.COLOR_ATTACHMENT0,i=d.TEXTURE_2D,r=E.FRAMEBUFFER,h=0){this._context.gl.framebufferTexture2D(r,e,i,t,h)}_detachColorAttachment(t){h()&&console.warn(\"Detaching an FBO attachment can be a slow due to invalidating framebuffer completeness!\");const e=this._context.gl,i=this._colorAttachments.get(t);return b(i)?this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,t)):this._initialized&&(this._context.bindFramebuffer(this),e.framebufferRenderbuffer(E.FRAMEBUFFER,t,e.RENDERBUFFER,null)),this._colorAttachments.delete(t),i}_disposeColorAttachments(){this._colorAttachments.forEach(((t,e)=>{this._detachColorAttachment(e),t.dispose()})),this._colorAttachments.clear()}_disposeDepthStencilAttachments(){const t=this._context.gl;if(this._depthAttachment){if(this._initialized){this._context.bindFramebuffer(this);const e=this._desc.depthStencilTarget===o.DEPTH_RENDER_BUFFER?t.DEPTH_ATTACHMENT:t.DEPTH_STENCIL_ATTACHMENT;t.framebufferRenderbuffer(E.FRAMEBUFFER,e,t.RENDERBUFFER,null)}this._depthAttachment.dispose(),this._depthAttachment=null}this._stencilAttachment&&(this._initialized&&(this._context.bindFramebuffer(this),t.framebufferRenderbuffer(E.FRAMEBUFFER,t.STENCIL_ATTACHMENT,t.RENDERBUFFER,null)),this._stencilAttachment.dispose(),this._stencilAttachment=null),this._depthStencilTexture&&(this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,t.DEPTH_STENCIL_ATTACHMENT)),this._depthStencilTexture.dispose(),this._depthStencilTexture=null)}_validateColorAttachmentPoint(e){if(-1===x._MAX_COLOR_ATTACHMENTS){const t=this._context.capabilities.drawBuffers;if(t){const e=this._context.gl;x._MAX_COLOR_ATTACHMENTS=e.getParameter(t.MAX_COLOR_ATTACHMENTS)}else x._MAX_COLOR_ATTACHMENTS=1}const i=e-c.COLOR_ATTACHMENT0;i+1>x._MAX_COLOR_ATTACHMENTS&&t.getLogger(\"esri.views.webgl.FrameBufferObject\").error(\"esri.FrameBufferObject\",`illegal attachment point for color attachment: ${i+1}. Implementation supports up to ${x._MAX_COLOR_ATTACHMENTS} color attachments`)}}function b(t){return null!=t&&\"type\"in t&&\"texture\"===t.type}function D(t){return null!=t&&\"type\"in t&&\"renderbuffer\"===t.type}function C(t){return b(t)||null!=t&&\"pixelFormat\"in t}function S(t,e,i){return new N(t,{target:i,pixelFormat:_.RGBA,dataType:a.UNSIGNED_BYTE,samplingMode:p.NEAREST,wrapMode:R.CLAMP_TO_EDGE,width:e.width,height:e.height})}function U(t,e){t.target!==d.TEXTURE_2D&&t.target!==d.TEXTURE_CUBE_MAP&&console.error(\"Texture type must be TEXTURE_2D or TEXTURE_CUBE_MAP!\"),void 0!==e.width&&e.width>=0&&void 0!==e.height&&e.height>=0?e.width===t.width&&e.height===t.height||console.error(\"Color attachment texture must match the framebuffer's!\"):(e.width=t.width,e.height=t.height)}function H(t,e){void 0!==e.width&&e.width>=0&&void 0!==e.height&&e.height>=0?e.width===t.width&&e.height===t.height||console.error(\"Renderbuffer dimensions must match the framebuffer's!\"):(e.width=t.width,e.height=t.height)}function P(t){return t.descriptor.target===d.TEXTURE_CUBE_MAP?d.TEXTURE_CUBE_MAP_POSITIVE_X:d.TEXTURE_2D}x._MAX_COLOR_ATTACHMENTS=-1;export{x as FramebufferObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{BufferObject as t}from\"../../../webgl/BufferObject.js\";import{Usage as e,DataType as r,PrimitiveType as s}from\"../../../webgl/enums.js\";import{VertexArrayObject as i}from\"../../../webgl/VertexArrayObject.js\";import{VertexElementDescriptor as o}from\"../../../webgl/VertexElementDescriptor.js\";class n{constructor(s,n){this._rctx=s,this._vertexBuffer=t.createVertex(s,e.STATIC_DRAW,new Uint16Array(n)),this._vao=new i(s,new Map([[\"a_position\",0]]),{geometry:[new o(\"a_position\",2,r.SHORT,0,4)]},{geometry:this._vertexBuffer}),this._count=n.length/2}bind(){this._rctx.bindVAO(this._vao)}unbind(){this._rctx.bindVAO(null)}dispose(){this._vao.dispose(!1),this._vertexBuffer.dispose()}draw(){this._rctx.bindVAO(this._vao),this._rctx.drawArrays(s.TRIANGLE_STRIP,0,this._count)}}export{n as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{Program as r}from\"./Program.js\";function e(e,t,a=\"\"){return new r(e,a+t.shaders.vertexShader,a+t.shaders.fragmentShader,t.attributes)}export{e as createProgram};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{nullifyNonNullableForDispose as e}from\"../../core/maybe.js\";import{ContextType as t}from\"./context-util.js\";import{ResourceType as r}from\"./enums.js\";class s{constructor(e,s){this._context=e,this._desc=s,this.type=\"renderbuffer\",this._context.instanceCounter.increment(r.Renderbuffer,this);const i=this._context.gl;this.glName=i.createRenderbuffer(),this._context.bindRenderbuffer(this);const{width:n,height:o,internalFormat:h,multisampled:c}=s;if(c){if(this._context.type!==t.WEBGL2)throw new Error(\"Multisampled renderbuffers are not supported in WebGL1!\");i.renderbufferStorageMultisample(i.RENDERBUFFER,this.samples,h,n,o)}else i.renderbufferStorage(i.RENDERBUFFER,h,n,o)}get descriptor(){return this._desc}get samples(){const e=this._desc.samples,t=this._context.parameters.maxSamples;return e?Math.min(e,t):t}resize(e,t){const r=this._desc;if(r.width===e&&r.height===t)return;r.width=e,r.height=t;const s=this._context.gl;if(this._context.bindRenderbuffer(this),r.multisampled){s.renderbufferStorageMultisample(s.RENDERBUFFER,this.samples,r.internalFormat,r.width,r.height)}else s.renderbufferStorage(s.RENDERBUFFER,r.internalFormat,r.width,r.height)}dispose(){this._context&&(this._context.gl.deleteRenderbuffer(this.glName),this._context.instanceCounter.decrement(r.Renderbuffer,this),this._context=e(this._context))}}export{s as Renderbuffer};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/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.25/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.25/esri/copyright.txt for details.\n*/\nconst 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 = clamp(vec3(colorDodge(Cb.r, Cs.r), colorDodge(Cb.g, Cs.g), colorDodge(Cb.b, Cs.b)), vec3(0.0), vec3(1.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 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(clamp(vividLight(Cb.r, Cs.r), 0.0, 1.0),\\nclamp(vividLight(Cb.g, Cs.g), 0.0, 1.0),\\nclamp(vividLight(Cb.b, Cs.b), 0.0, 1.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 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 = clamp(vec3(reflectBlend(Cb.r, Cs.r),\\nreflectBlend(Cb.g, Cs.g),\\nreflectBlend(Cb.b, Cs.b)), vec3(0.0), vec3(1.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#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}\"},debug:{overlay:{\"overlay.frag\":\"precision mediump float;\\nvarying vec4 v_color;\\nvoid main(void) {\\ngl_FragColor = v_color;\\n}\",\"overlay.vert\":\"attribute vec3 a_PositionAndFlags;\\nuniform mat3 u_dvsMat3;\\nuniform vec4 u_colors[4];\\nuniform float u_opacities[4];\\nvarying vec4 v_color;\\nvoid main(void) {\\nvec2 position = a_PositionAndFlags.xy;\\nfloat flags = a_PositionAndFlags.z;\\nint colorIndex = int(mod(flags, 4.0));\\nvec4 color;\\nfor (int i = 0; i < 4; i++) {\\ncolor = u_colors[i];\\nif (i == colorIndex) {\\nbreak;\\n}\\n}\\nint opacityIndex = int(mod(floor(flags / 4.0), 4.0));\\nfloat opacity;\\nfor (int i = 0; i < 4; i++) {\\nopacity = u_opacities[i];\\nif (i == opacityIndex) {\\nbreak;\\n}\\n}\\nv_color = color * opacity;\\ngl_Position = vec4((u_dvsMat3 * vec3(position, 1.0)).xy, 0.0, 1.0);\\n}\"}},dot:{dot:{\"dot.frag\":\"precision mediump float;\\nvarying vec4 v_color;\\nvarying float v_dotRatio;\\nvarying float v_invEdgeRatio;\\nuniform highp float u_tileZoomFactor;\\nvoid main()\\n{\\nfloat dist = length(gl_PointCoord - vec2(.5, .5)) * 2.;\\nfloat alpha = smoothstep(0., 1., v_invEdgeRatio * (dist - v_dotRatio) + 1.);\\ngl_FragColor = v_color * alpha;\\n}\",\"dot.vert\":\"precision highp float;\\nattribute vec2 a_pos;\\nuniform sampler2D u_texture;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp float u_tileZoomFactor;\\nuniform highp float u_dotSize;\\nuniform highp float u_pixelRatio;\\nvarying vec2 v_pos;\\nvarying vec4 v_color;\\nvarying float v_dotRatio;\\nvarying float v_invEdgeRatio;\\nconst float EPSILON = 0.000001;\\nvoid main()\\n{\\nmat3 tileToTileTexture = mat3( 1., 0., 0.,\\n0., -1., 0.,\\n0., 1., 1. );\\nvec3 texCoords = tileToTileTexture * vec3(a_pos.xy / 512., 1.);\\nv_color = texture2D(u_texture, texCoords.xy);\\nfloat smoothEdgeWidth = max(u_dotSize / 2., 1.) ;\\nfloat z = 0.;\\nz += 2.0 * step(v_color.a, EPSILON);\\ngl_PointSize = (smoothEdgeWidth + u_dotSize);\\ngl_Position = vec4((u_dvsMat3 * vec3(a_pos + .5, 1.)).xy, z, 1.);\\nv_dotRatio = u_dotSize / gl_PointSize;\\nv_invEdgeRatio = -1. / ( smoothEdgeWidth / gl_PointSize );\\ngl_PointSize *= (u_pixelRatio * u_tileZoomFactor);\\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);\\nvec4 color = mix(color01, color23, blend.y);\\n#ifdef NNEDGE\\nfloat alpha = floor(color0.a * color1.a * color2.a * color3.a + 0.5);\\ncolor = color * alpha + (1.0 - alpha) * texture2D(sampler, coords);\\n#endif\\nreturn color;\\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}\"}},heatmap:{heatmapResolve:{\"heatmapResolve.frag\":\"precision highp float;\\n#ifdef HEATMAP_PRECISION_HALF_FLOAT\\n#define COMPRESSION_FACTOR 4.0\\n#else\\n#define COMPRESSION_FACTOR 1.0\\n#endif\\nuniform sampler2D u_texture;\\nuniform sampler2D u_gradient;\\nuniform vec2 u_densityMinAndInvRange;\\nuniform float u_densityNormalization;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 data = texture2D(u_texture, v_uv);\\nfloat density = data.r * COMPRESSION_FACTOR;\\ndensity *= u_densityNormalization;\\ndensity = (density - u_densityMinAndInvRange.x) * u_densityMinAndInvRange.y;\\nvec4 color = texture2D(u_gradient, vec2(density, 0.5));\\ngl_FragColor = vec4(color.rgb * color.a, color.a);\\n}\",\"heatmapResolve.vert\":\"precision highp float;\\nattribute vec2 a_pos;\\nvarying vec2 v_uv;\\nvoid main() {\\nv_uv = a_pos;\\ngl_Position = vec4(a_pos * 2.0 - 1.0, 1., 1.);\\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 sampler2D u_attributeData4;\\nuniform highp sampler2D u_attributeData5;\\nuniform highp int u_attributeTextureSize;\\nhighp vec2 getAttributeDataCoords(in highp vec3 id) {\\nhighp vec3 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);\\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 vec2 getAttributeDataTextureCoords(in highp vec3 id) {\\nreturn (getAttributeDataCoords(id) * 2.0) - 1.0 + (.5 / vec2(u_attributeTextureSize));\\n}\\nhighp vec4 getAttributeData0(in highp vec3 id) {\\nvec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData0, coords);\\n}\\nhighp vec4 getAttributeData1(in highp vec3 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData1, coords);\\n}\\nhighp vec4 getAttributeData2(in highp vec3 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData2, coords);\\n}\\nhighp vec4 getAttributeData3(in highp vec3 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData3, coords);\\n}\\nhighp vec4 getAttributeData4(in highp vec3 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData4, coords);\\n}\\nhighp vec4 getAttributeData5(in highp vec3 id) {\\nhighp vec2 coords = getAttributeDataCoords(id);\\nreturn texture2D(u_attributeData5, 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}\",\"barycentric.glsl\":\"float inTriangle(vec3 bary) {\\nvec3 absBary = abs(bary);\\nreturn step((absBary.x + absBary.y + absBary.z), 1.05);\\n}\\nvec3 xyToBarycentric(in vec2 pos, in vec2 v0, in vec2 v1, in vec2 v2) {\\nmat3 xyToBarycentricMat3 = mat3(\\nv1.x * v2.y - v2.x * v1.y, v2.x * v0.y - v0.x * v2.y, v0.x * v1.y - v1.x * v0.y,\\nv1.y - v2.y, v2.y - v0.y, v0.y - v1.y,\\nv2.x - v1.x, v0.x - v2.x, v1.x - v0.x\\n);\\nfloat A2 = v0.x * (v1.y - v2.y) + v1.x * (v2.y - v0.y) + v2.x * (v0.y - v1.y);\\nreturn (1. / A2) * xyToBarycentricMat3 * vec3(1., pos);\\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 C_RAD_TO_DEG = 180.0 / 3.141592654;\\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.00001;\\nconst float EPSILON_HITTEST = 0.05;\\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;\\nconst int BITSET_GENERIC_LOCK_COLOR = 1;\\nconst int BITSET_GENERIC_CONSIDER_ALPHA_ONLY = 4;\\nconst int BITSET_MARKER_ALIGNMENT_MAP = 0;\\nconst int BITSET_MARKER_OUTLINE_ALLOW_COLOR_OVERRIDE = 2;\\nconst int BITSET_MARKER_SCALE_SYMBOLS_PROPORTIONALLY = 3;\\nconst int BITSET_TYPE_FILL_OUTLINE = 0;\\nconst int BITSET_FILL_RANDOM_PATTERN_OFFSET = 2;\\nconst int BITSET_LINE_SCALE_DASH = 2;\",fill:{\"common.glsl\":\"#include \\n#ifdef PATTERN\\nuniform mediump vec2 u_mosaicSize;\\nvarying mediump float v_sampleAlphaOnly;\\n#endif\\n#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_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 highp vec3 v_id;\\nvarying lowp vec4 v_color;\\nvarying lowp float v_opacity;\\nvarying mediump vec4 v_aux1;\\n#ifdef PATTERN\\nvarying mediump vec2 v_tileTextureCoord;\\n#endif\\n#ifdef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\nvarying lowp float v_isOutline;\\n#endif\\n#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_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#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_DOT_DENSITY\\nuniform mediump mat4 u_dotColors[ 2 ];\\nuniform sampler2D u_dotTextures[ 2 ];\\nuniform vec4 u_dotBackgroundColor;\\n#endif\\n#ifdef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\n#include \\n#include \\nlowp vec4 drawLine() {\\nfloat v_lineWidth = v_aux1.x;\\nvec2 v_normal = v_aux1.yz;\\nLineData inputs = LineData(\\nv_color,\\nv_normal,\\nv_lineWidth,\\nv_opacity,\\nv_id\\n);\\nreturn shadeLine(inputs);\\n}\\n#endif\\nlowp vec4 drawFill() {\\nlowp vec4 out_color = vec4(0.);\\n#ifdef HITTEST\\nout_color = v_color;\\n#elif defined(PATTERN)\\nmediump vec4 v_tlbr = v_aux1;\\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);\\n#ifdef VV_COLOR\\nif (v_sampleAlphaOnly > 0.5) {\\ncolor.rgb = vec3(color.a);\\n}\\n#endif\\nout_color = v_opacity * v_color * color;\\n#elif SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_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\\nout_color = preEffectColor;\\n#else\\nout_color = v_opacity * v_color;\\n#endif\\n#ifdef HIGHLIGHT\\nout_color.a = 1.0;\\n#endif\\nreturn out_color;\\n}\\nvoid main() {\\n#ifdef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\nif (v_isOutline > 0.5) {\\ngl_FragColor = drawLine();\\n} else {\\ngl_FragColor = drawFill();\\n}\\n#else\\ngl_FragColor = drawFill();\\n#endif\\n}\",\"fill.vert\":\"#include \\n#define PACKED_LINE\\nprecision highp float;\\nattribute float a_bitset;\\n#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_DOT_DENSITY\\nattribute float a_inverseArea;\\nvec4 a_color = vec4(0.0, 0.0, 0.0, 1.0);\\nvec2 a_zoomRange = vec2(0.0, 10000.0);\\n#else\\nattribute vec4 a_color;\\nattribute vec4 a_aux2;\\nattribute vec4 a_aux3;\\n#ifndef SYMBOLOGY_TYPE_IS_SIMPLE_LIKE\\nattribute vec4 a_aux1;\\nattribute vec2 a_zoomRange;\\n#else\\nvec2 a_zoomRange = vec2(0.0, 10000.0);\\n#endif\\n#endif\\nuniform vec2 u_tileOffset;\\n#include \\n#include \\n#include \\n#include \\nconst float INV_SCALE_COMPRESSION_FACTOR = 1.0 / 128.0;\\n#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_DOT_DENSITY\\nvec4 dotThreshold(vec4 featureAttrOverFeatureArea, float dotValue, float tileDotsOverArea) {\\nreturn featureAttrOverFeatureArea * (1.0 / dotValue) * (1.0 / tileDotsOverArea);\\n}\\n#endif\\n#ifdef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\n#include \\n#include \\nvoid drawLine(out lowp vec4 out_color, out highp vec3 out_pos) {\\nLineData outputs = buildLine(\\nout_pos,\\na_id,\\na_pos,\\na_color,\\n(a_aux3.xy - 128.) / 16.,\\n(a_aux3.zw - 128.) / 16.,\\n0.,\\na_aux2.z / 16.,\\na_bitset,\\nvec4(0.),\\nvec2(0.),\\na_aux2.w / 16.\\n);\\nv_id = outputs.id;\\nv_opacity = outputs.opacity;\\nv_aux1 = vec4(outputs.lineHalfWidth, outputs.normal, 0.);\\nout_color = outputs.color;\\n}\\n#endif\\nvoid drawFill(out lowp vec4 out_color, out highp vec3 out_pos) {\\nfloat a_bitSet = a_bitset;\\nout_color = getColor(a_color, a_bitSet, BITSET_GENERIC_LOCK_COLOR);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\n#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_DOT_DENSITY\\nmat3 tileToTileNormalized = mat3( 2. / 512., 0., 0.,\\n0., -2. / 512., 0.,\\n-1., 1., 1. );\\nout_pos = tileToTileNormalized * vec3((a_pos * FILL_POSITION_PRECISION), 1.);\\n#else\\nout_pos = u_dvsMat3 * vec3(a_pos * FILL_POSITION_PRECISION, 1.);\\n#endif\\n#ifdef PATTERN\\nvec4 a_tlbr = a_aux1;\\nfloat a_width = a_aux2.x;\\nfloat a_height = a_aux2.y;\\nvec2 a_offset = a_aux2.zw;\\nvec2 a_scale = a_aux3.xy;\\nfloat a_angle = a_aux3.z;\\nvec2 scale = INV_SCALE_COMPRESSION_FACTOR * a_scale;\\nfloat width = u_zoomFactor * a_width * scale.x;\\nfloat height = u_zoomFactor * a_height * scale.y;\\nfloat angle = C_256_TO_RAD * a_angle;\\nfloat sinA = sin(angle);\\nfloat cosA = cos(angle);\\nfloat dx = 0.0;\\nfloat dy = 0.0;\\nif (getBit(a_bitset, BITSET_FILL_RANDOM_PATTERN_OFFSET) > 0.5) {\\nfloat id = rgba2float(vec4(a_id, 0.0));\\ndx = rand(vec2(id, 0.0));\\ndy = rand(vec2(0.0, id));\\n}\\nmat3 patternMatrix = mat3(cosA / width, sinA / height, 0,\\n-sinA / width, cosA / height, 0,\\ndx, dy, 1);\\nvec2 tileOffset = vec2(u_tileOffset.x * cosA - u_tileOffset.y * sinA, u_tileOffset.x * sinA + u_tileOffset.y * cosA);\\ntileOffset = mod(tileOffset, vec2(a_aux2.x, a_aux2.y));\\nvec2 symbolOffset = (a_offset - tileOffset) / vec2(width, height);\\nv_tileTextureCoord = (patternMatrix * vec3(a_pos * FILL_POSITION_PRECISION, 1.0)).xy - symbolOffset;\\nv_aux1 = a_tlbr / u_mosaicSize.xyxy;\\nv_sampleAlphaOnly = getBit(a_bitset, BITSET_GENERIC_CONSIDER_ALPHA_ONLY);\\n#elif SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_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\\n}\\n#ifdef HITTEST\\nvoid draw(out lowp vec4 out_color, out highp vec3 out_pos) {\\n#ifdef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\nif (getBit(a_bitset, BITSET_TYPE_FILL_OUTLINE) > 0.5) {\\nout_pos = vec3(0., 0., 2.);\\nreturn;\\n}\\n#endif\\nhittestFill(out_color, out_pos);\\ngl_PointSize = 1.0;\\n}\\n#elif defined(SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE)\\nvoid draw(out lowp vec4 out_color, out highp vec3 out_pos) {\\nv_isOutline = getBit(a_bitset, BITSET_TYPE_FILL_OUTLINE);\\nif (v_isOutline > 0.5) {\\ndrawLine(out_color, out_pos);\\n} else {\\ndrawFill(out_color, out_pos);\\n}\\n}\\n#else\\n#define draw drawFill\\n#endif\\nvoid main()\\n{\\nINIT;\\nhighp vec3 pos = vec3(0.);\\nhighp vec4 color = vec4(0.);\\ndraw(color, pos);\\nv_color = color;\\ngl_Position = vec4(clip(v_color, pos, getFilterFlags(), a_zoomRange), 1.0);\\n}\",\"hittest.glsl\":\"#ifdef HITTEST\\n#include \\nattribute vec2 a_pos1;\\nattribute vec2 a_pos2;\\nvoid hittestFill(\\nout lowp vec4 out_color,\\nout highp vec3 out_pos\\n) {\\nvec3 pos = u_viewMat3 * u_tileMat3 * vec3(a_pos * FILL_POSITION_PRECISION, 1.);\\nvec3 pos1 = u_viewMat3 * u_tileMat3 * vec3(a_pos1 * FILL_POSITION_PRECISION, 1.);\\nvec3 pos2 = u_viewMat3 * u_tileMat3 * vec3(a_pos2 * FILL_POSITION_PRECISION, 1.);\\nfloat hittestDist = u_hittestDist;\\nfloat dist = distPointTriangle(u_hittestPos, pos.xy, pos1.xy, pos2.xy);\\nout_pos = vec3(getAttributeDataTextureCoords(a_id), 0.0);\\nif (dist < 0. || dist >= hittestDist) {\\nout_pos.z += 2.0;\\n}\\nout_color = vec4(1. / 255., 0, 0, dist == 0. ? (1. / 255.) : 0.);\\n}\\n#endif\"},hittest:{\"common.glsl\":\"#ifdef HITTEST\\nuniform float u_hittestDist;\\nuniform highp vec2 u_hittestPos;\\nfloat projectScalar(vec2 a, vec2 b) {\\nreturn dot(a, normalize(b));\\n}\\nfloat distPointSegment(vec2 p0, vec2 p1, vec2 p2) {\\nvec2 L = p2 - p1;\\nvec2 A = p0 - p1;\\nfloat projAL = projectScalar(A, L);\\nfloat t = clamp(projAL / length(L), 0., 1.);\\nreturn distance(p0, p1 + t * (p2 - p1));\\n}\\nvoid hittestMarker(out lowp vec4 out_color, out highp vec3 out_pos, in highp vec3 pos, float size) {\\nfloat dist = distance(pos, vec3(u_hittestPos, 1.));\\nout_pos = vec3(getAttributeDataTextureCoords(a_id), 0.0);\\nif ((dist - size) > u_hittestDist) {\\nout_pos.z += 2.0;\\n}\\nout_color = vec4(1. / 255., 0, 0, (dist - size) < 0. ? (1. / 255.) : 0.);\\n}\\nfloat intersectPointTriangleBary(vec2 p, vec2 a, vec2 b, vec2 c) {\\nreturn inTriangle(xyToBarycentric(p, a, b, c));\\n}\\nfloat distPointTriangle(vec2 p, vec2 a, vec2 b, vec2 c) {\\nvec2 ba = b - a;\\nvec2 ca = c - a;\\nfloat crossProduct = ba.x * ca.y - ca.x * ba.y;\\nbool isParallel = crossProduct < EPSILON_HITTEST && crossProduct > -EPSILON_HITTEST;\\nif (isParallel) {\\nreturn -1.;\\n}\\nif (intersectPointTriangleBary(p.xy, a, b, c) == 1.) {\\nreturn 0.;\\n}\\nfloat distAB = distPointSegment(p, a, b);\\nfloat distBC = distPointSegment(p, b, c);\\nfloat distCA = distPointSegment(p, c, a);\\nreturn min(min(distAB, distBC), distCA);\\n}\\n#endif\"},icon:{\"common.glsl\":\"#include \\nuniform lowp vec2 u_mosaicSize;\\nvarying lowp vec4 v_color;\\nvarying highp vec3 v_id;\\nvarying highp vec4 v_sizeTex;\\nvarying mediump vec3 v_pos;\\nvarying lowp float v_opacity;\\nuniform lowp sampler2D u_texture;\\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\\n#ifdef SDF\\nvec4 getColor(vec2 v_size, vec2 v_tex) {\\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);\\nreturn v_opacity * ((1.0 - outlinePixelColor.a) * fillPixelColor + outlinePixelColor);\\n}\\nreturn v_opacity * fillPixelColor;\\n}\\n#else\\nvec4 getColor(vec2 _v_size, vec2 v_tex) {\\nlowp vec4 texColor = texture2D(u_texture, v_tex);\\nreturn v_opacity * texColor * v_color;\\n}\\n#endif\",heatmapAccumulate:{\"common.glsl\":\"varying lowp vec4 v_hittestResult;\\nvarying mediump vec2 v_offsetFromCenter;\\nvarying highp float v_fieldValue;\",\"heatmapAccumulate.frag\":\"precision mediump float;\\n#include \\n#ifdef HEATMAP_PRECISION_HALF_FLOAT\\n#define COMPRESSION_FACTOR 0.25\\n#else\\n#define COMPRESSION_FACTOR 1.0\\n#endif\\nuniform lowp sampler2D u_texture;\\nvoid main() {\\n#ifdef HITTEST\\ngl_FragColor = v_hittestResult;\\n#else\\nfloat radius = length(v_offsetFromCenter);\\nfloat shapeWeight = step(radius, 1.0);\\nfloat oneMinusRadiusSquared = 1.0 - radius * radius;\\nfloat kernelWeight = oneMinusRadiusSquared * oneMinusRadiusSquared;\\ngl_FragColor = vec4(shapeWeight * kernelWeight * v_fieldValue * COMPRESSION_FACTOR);\\n#endif\\n}\",\"heatmapAccumulate.vert\":\"precision highp float;\\nattribute vec2 a_vertexOffset;\\nvec4 a_color = vec4(0.0);\\nvec2 a_zoomRange = vec2(0.0, 10000.0);\\nuniform float u_radius;\\nuniform float u_isFieldActive;\\n#include \\n#include \\n#include \\nvoid main() {\\nfloat filterFlags = getFilterFlags();\\n#ifdef HITTEST\\nhighp vec4 out_hittestResult = vec4(0.);\\nhighp vec3 out_pos = vec3(0.);\\nvec3 pos = u_viewMat3 * u_tileMat3 * vec3(a_pos * POSITION_PRECISION, 1.0);\\nhittestMarker(out_hittestResult, out_pos, pos, u_radius);\\nv_hittestResult = out_hittestResult;\\ngl_PointSize = 1.;\\ngl_Position = vec4(clip(a_color, out_pos, filterFlags, a_zoomRange), 1.0);\\n#else\\nv_offsetFromCenter = sign(a_vertexOffset);\\nv_fieldValue = getAttributeData2(a_id).x * u_isFieldActive + 1.0 - u_isFieldActive;\\nvec3 centerPos = u_dvsMat3 * vec3(a_pos * POSITION_PRECISION, 1.0);\\nvec3 vertexPos = centerPos + u_displayViewMat3 * vec3(v_offsetFromCenter, 0.0) * u_radius;\\ngl_Position = vec4(clip(a_color, vertexPos, filterFlags, a_zoomRange), 1.0);\\n#endif\\n}\"},\"hittest.glsl\":\"#ifdef HITTEST\\n#include \\nattribute vec2 a_vertexOffset1;\\nattribute vec2 a_vertexOffset2;\\nattribute vec2 a_texCoords1;\\nattribute vec2 a_texCoords2;\\nvec2 getTextureCoords(in vec3 bary, in vec2 texCoords0, in vec2 texCoords1, in vec2 texCoords2) {\\nreturn texCoords0 * bary.x + texCoords1 * bary.y + texCoords2 * bary.z;\\n}\\nvoid hittestIcon(\\ninout lowp vec4 out_color,\\nout highp vec3 out_pos,\\nin vec3 pos,\\nin vec3 offset,\\nin vec2 size,\\nin float scaleFactor,\\nin float isMapAligned\\n) {\\nout_pos = vec3(getAttributeDataTextureCoords(a_id), 0.0);\\nvec3 posBase = u_viewMat3 * u_tileMat3 * pos;\\nvec3 offset1 = scaleFactor * vec3(a_vertexOffset1 / 16.0, 0.);\\nvec3 offset2 = scaleFactor * vec3(a_vertexOffset2 / 16.0, 0.);\\nvec2 pos0 = (posBase + getMatrixNoDisplay(isMapAligned) * offset).xy;\\nvec2 pos1 = (posBase + getMatrixNoDisplay(isMapAligned) * offset1).xy;\\nvec2 pos2 = (posBase + getMatrixNoDisplay(isMapAligned) * offset2).xy;\\nvec3 bary0 = xyToBarycentric(u_hittestPos + vec2(-u_hittestDist, -u_hittestDist), pos0, pos1, pos2);\\nvec3 bary1 = xyToBarycentric(u_hittestPos + vec2(0., -u_hittestDist), pos0, pos1, pos2);\\nvec3 bary2 = xyToBarycentric(u_hittestPos + vec2(u_hittestDist, -u_hittestDist), pos0, pos1, pos2);\\nvec3 bary3 = xyToBarycentric(u_hittestPos + vec2(-u_hittestDist, 0.), pos0, pos1, pos2);\\nvec3 bary4 = xyToBarycentric(u_hittestPos, pos0, pos1, pos2);\\nvec3 bary5 = xyToBarycentric(u_hittestPos + vec2(u_hittestDist, 0.), pos0, pos1, pos2);\\nvec3 bary6 = xyToBarycentric(u_hittestPos + vec2(-u_hittestDist, u_hittestDist), pos0, pos1, pos2);\\nvec3 bary7 = xyToBarycentric(u_hittestPos + vec2(0., u_hittestDist), pos0, pos1, pos2);\\nvec3 bary8 = xyToBarycentric(u_hittestPos + vec2(u_hittestDist, u_hittestDist), pos0, pos1, pos2);\\nvec2 tex0 = a_texCoords / u_mosaicSize;\\nvec2 tex1 = a_texCoords1 / u_mosaicSize;\\nvec2 tex2 = a_texCoords2 / u_mosaicSize;\\nfloat alphaSum = 0.;\\nalphaSum += inTriangle(bary0) * getColor(size, getTextureCoords(bary0, tex0, tex1, tex2)).a;\\nalphaSum += inTriangle(bary1) * getColor(size, getTextureCoords(bary1, tex0, tex1, tex2)).a;\\nalphaSum += inTriangle(bary2) * getColor(size, getTextureCoords(bary2, tex0, tex1, tex2)).a;\\nalphaSum += inTriangle(bary3) * getColor(size, getTextureCoords(bary3, tex0, tex1, tex2)).a;\\nalphaSum += inTriangle(bary4) * getColor(size, getTextureCoords(bary4, tex0, tex1, tex2)).a;\\nalphaSum += inTriangle(bary5) * getColor(size, getTextureCoords(bary5, tex0, tex1, tex2)).a;\\nalphaSum += inTriangle(bary6) * getColor(size, getTextureCoords(bary6, tex0, tex1, tex2)).a;\\nalphaSum += inTriangle(bary7) * getColor(size, getTextureCoords(bary7, tex0, tex1, tex2)).a;\\nout_pos.z += step(alphaSum, .05) * 2.0;\\nout_color = vec4(1. / 255., 0., 0., alphaSum / 255.);\\n}\\n#endif\",\"icon.frag\":\"precision mediump float;\\n#include \\n#include \\n#include \\nvoid main()\\n{\\n#ifdef HITTEST\\nvec4 color = v_color;\\n#else\\nvec4 color = getColor(v_sizeTex.xy, v_sizeTex.zw);\\n#endif\\n#ifdef HIGHLIGHT\\ncolor.a = step(1.0 / 255.0, color.a);\\n#endif\\ngl_FragColor = color;\\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 \\n#include \\nfloat getMarkerScaleFactor(inout vec2 size, in float referenceSize) {\\n#ifdef VV_SIZE\\nfloat f = getSize(size.y) / size.y;\\nfloat sizeFactor = size.y / referenceSize;\\nreturn getSize(referenceSize) / referenceSize;\\n#else\\nreturn 1.;\\n#endif\\n}\\nvoid main()\\n{\\nINIT;\\nfloat a_bitSet = a_bitSetAndDistRatio.x;\\nvec3 pos = vec3(a_pos * POSITION_PRECISION, 1.0);\\nvec2 size = a_sizeAndOutlineWidth.xy * a_sizeAndOutlineWidth.xy / 128.0;\\nvec3 offset = vec3(a_vertexOffset / 16.0, 0.);\\nfloat outlineSize = a_sizeAndOutlineWidth.z * a_sizeAndOutlineWidth.z / 128.0;\\nfloat isMapAligned = getBit(a_bitSet, BITSET_MARKER_ALIGNMENT_MAP);\\nfloat referenceSize = a_sizeAndOutlineWidth.w * a_sizeAndOutlineWidth.w / 128.0;\\nfloat scaleSymbolProportionally = getBit(a_bitSet, BITSET_MARKER_SCALE_SYMBOLS_PROPORTIONALLY);\\nfloat scaleFactor = getMarkerScaleFactor(size, referenceSize);\\nsize.xy *= scaleFactor;\\noffset.xy *= scaleFactor;\\noutlineSize *= scaleSymbolProportionally * (scaleFactor - 1.0) + 1.0;\\nvec2 v_tex = a_texCoords / u_mosaicSize;\\nfloat filterFlags = getFilterFlags();\\nv_color = getColor(a_color, a_bitSet, BITSET_GENERIC_LOCK_COLOR);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_pos = u_dvsMat3 * pos + getMatrix(isMapAligned) * getRotation() * offset;\\nv_sizeTex = vec4(size.xy, v_tex.xy);\\n#ifdef SDF\\nv_isThin = getBit(a_bitSet, BITSET_MARKER_OUTLINE_ALLOW_COLOR_OVERRIDE);\\n#ifdef VV_COLOR\\nv_overridingOutlineColor = v_isThin;\\n#else\\nv_overridingOutlineColor = 0.0;\\n#endif\\nv_outlineWidth = min(outlineSize, max(max(size.x, size.y) - 0.99, 0.0));\\nv_outlineColor = a_outlineColor;\\nv_distRatio = a_bitSetAndDistRatio.y / 126.0;\\n#endif\\n#ifdef HITTEST\\nhighp vec4 out_color = vec4(0.);\\nhighp vec3 out_pos = vec3(0.);\\nhittestIcon(out_color, out_pos, pos, offset, size, scaleFactor, isMapAligned);\\nv_color = out_color;\\ngl_PointSize = 1.;\\ngl_Position = vec4(clip(v_color, out_pos, filterFlags, a_zoomRange), 1.0);\\n#else\\ngl_Position = vec4(clip(v_color, v_pos, filterFlags, a_zoomRange), 1.0);\\n#endif\\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(v_pos, 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 vec3 v_id;\\nvarying mediump vec2 v_normal;\\nvarying mediump float v_lineHalfWidth;\\nvarying lowp float v_opacity;\\n#ifdef PATTERN\\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\\n#ifdef SDF\\nvarying mediump float v_lineWidthRatio;\\n#endif\",\"hittest.glsl\":\"#include \\n#ifdef HITTEST\\nattribute vec2 a_pos1;\\nattribute vec2 a_pos2;\\nvoid hittestLine(out lowp vec4 out_color, out highp vec3 out_pos, float halfWidth) {\\nvec3 pos = u_viewMat3 * u_tileMat3 * vec3(a_pos * POSITION_PRECISION, 1.);\\nvec3 pos1 = u_viewMat3 * u_tileMat3 * vec3(a_pos1 * POSITION_PRECISION, 1.);\\nvec3 pos2 = u_viewMat3 * u_tileMat3 * vec3(a_pos2 * POSITION_PRECISION, 1.);\\nvec3 outTextureCoords = vec3(getAttributeDataTextureCoords(a_id), 0.0);\\nfloat dist = min(distPointSegment(u_hittestPos, pos.xy, pos1.xy),\\ndistPointSegment(u_hittestPos, pos.xy, pos2.xy)) - halfWidth;\\nout_pos = vec3(getAttributeDataTextureCoords(a_id), 0.0);\\nif (dist >= u_hittestDist) {\\nout_pos.z += 2.0;\\n}\\nout_color = vec4(1. / 255., 0, 0, dist <= 0. ? (1. / 255.) : 0.);\\n}\\n#endif\",\"line.frag\":\"precision lowp float;\\n#include \\n#include \\n#include \\n#include \\n#include \\n#include \\n#ifdef HITTEST\\nvoid main() {\\ngl_FragColor = v_color;\\n}\\n#else\\nvoid main() {\\nLineData inputs = LineData(\\nv_color,\\nv_normal,\\nv_lineHalfWidth,\\nv_opacity,\\n#ifndef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\n#ifdef PATTERN\\nv_tlbr,\\nv_patternSize,\\n#endif\\n#ifdef SDF\\nv_lineWidthRatio,\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nv_accumulatedDistance,\\n#endif\\n#endif\\nv_id\\n);\\ngl_FragColor = shadeLine(inputs);\\n}\\n#endif\",\"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 \\n#include \\n#include \\n#include \\n#include \\n#ifdef HITTEST\\nvoid draw() {\\nfloat aa = 0.5 * u_antialiasing;\\nfloat a_halfWidth = a_accumulatedDistanceAndHalfWidth.y / 16.;\\nfloat a_cimHalfWidth = a_aux.x / 16. ;\\nvec2 a_offset = a_offsetAndNormal.xy / 16.;\\nfloat baseWidth = getBaseLineHalfWidth(a_halfWidth, a_cimHalfWidth);\\nfloat halfWidth = getLineHalfWidth(baseWidth, aa);\\nhighp vec3 pos = vec3(0.);\\nv_color = vec4(0.);\\nhittestLine(v_color, pos, halfWidth);\\ngl_PointSize = 1.;\\ngl_Position = vec4(clip(v_color, pos, getFilterFlags(), a_zoomRange), 1.0);\\n}\\n#else\\nvoid draw()\\n{\\nhighp vec3 pos = vec3(0.);\\nLineData outputs = buildLine(\\npos,\\na_id,\\na_pos,\\na_color,\\na_offsetAndNormal.xy / 16.,\\na_offsetAndNormal.zw / 16.,\\na_accumulatedDistanceAndHalfWidth.x,\\na_accumulatedDistanceAndHalfWidth.y / 16.,\\na_segmentDirection.w,\\na_tlbr,\\na_segmentDirection.xy / 16.,\\na_aux.x / 16.\\n);\\nv_id = outputs.id;\\nv_color = outputs.color;\\nv_normal = outputs.normal;\\nv_lineHalfWidth = outputs.lineHalfWidth;\\nv_opacity = outputs.opacity;\\n#ifndef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\n#ifdef PATTERN\\nv_tlbr = outputs.tlbr;\\nv_patternSize = outputs.patternSize;\\n#endif\\n#ifdef SDF\\nv_lineWidthRatio = outputs.lineWidthRatio;\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nv_accumulatedDistance = outputs.accumulatedDistance;\\n#endif\\n#endif\\ngl_Position = vec4(clip(outputs.color, pos, getFilterFlags(), a_zoomRange), 1.0);\\n}\\n#endif\\nvoid main() {\\nINIT;\\ndraw();\\n}\"},pie:{\"pie.frag\":\"precision mediump float;\\n#include \\n#include \\n#include \\n#include \\nvarying float v_size;\\nvarying vec2 v_offset;\\nvarying vec2 v_filteredSectorToColorId[NUMBER_OF_FIELDS];\\nvarying float v_numOfEntries;\\nvarying float v_maxSectorAngle;\\nuniform lowp vec4 u_colors[NUMBER_OF_FIELDS];\\nuniform lowp vec4 u_defaultColor;\\nuniform lowp vec4 u_othersColor;\\nuniform lowp vec4 u_outlineColor;\\nuniform float u_donutRatio;\\nuniform float u_sectorThreshold;\\nstruct FilteredChartInfo {\\nfloat endSectorAngle;\\nint colorId;\\n};\\nlowp vec4 getSectorColor(in int index, in vec2 filteredSectorToColorId[NUMBER_OF_FIELDS]) {\\n#if __VERSION__ == 300\\nmediump int colorIndex = int(filteredSectorToColorId[index].y);\\nreturn u_colors[colorIndex];\\n#else\\nmediump int colorIndex;\\nfor (int i = 0; i < NUMBER_OF_FIELDS; ++i) {\\nif (i == index) {\\ncolorIndex = int(filteredSectorToColorId[i].y);\\n}\\n}\\nfor (int i = 0; i < NUMBER_OF_FIELDS; ++i) {\\nif (i == colorIndex) {\\nreturn u_colors[i];\\n}\\n}\\nreturn u_colors[NUMBER_OF_FIELDS - 1];\\n#endif\\n}\\nconst int OTHER_SECTOR_ID = 255;\\n#ifdef HITTEST\\nvec4 getColor() {\\nreturn v_color;\\n}\\n#else\\nvec4 getColor() {\\nfloat angle = 90.0 - C_RAD_TO_DEG * atan2(v_offset.y, v_offset.x);\\nif (angle < 0.0) {\\nangle += 360.0;\\n} else if (angle > 360.0) {\\nangle = mod(angle, 360.0);\\n}\\nint numOfEntries = int(v_numOfEntries);\\nfloat maxSectorAngle = v_maxSectorAngle;\\nlowp vec4 fillColor = (maxSectorAngle > 0.0 || u_sectorThreshold > 0.0) ? u_othersColor : u_defaultColor;\\nlowp vec4 prevColor = vec4(0.0);\\nlowp vec4 nextColor = vec4(0.0);\\nfloat startSectorAngle = 0.0;\\nfloat endSectorAngle = 0.0;\\nif (angle < maxSectorAngle) {\\nfor (int index = 0; index < NUMBER_OF_FIELDS; ++index) {\\nstartSectorAngle = endSectorAngle;\\nendSectorAngle = v_filteredSectorToColorId[index].x;\\nif (endSectorAngle > angle) {\\nfillColor = getSectorColor(index, v_filteredSectorToColorId);\\nprevColor = u_sectorThreshold != 0.0 && index == 0 && abs(360.0 - maxSectorAngle) < EPSILON ? u_othersColor :\\ngetSectorColor(index > 0 ? index - 1 : numOfEntries - 1, v_filteredSectorToColorId);\\nnextColor = u_sectorThreshold != 0.0 && abs(endSectorAngle - maxSectorAngle) < EPSILON ? u_othersColor :\\ngetSectorColor(index < numOfEntries - 1 ? index + 1 : 0, v_filteredSectorToColorId);\\nbreak;\\n}\\nif (index == numOfEntries - 1) {\\nbreak;\\n}\\n}\\n} else {\\nprevColor = getSectorColor(numOfEntries - 1, v_filteredSectorToColorId);\\nnextColor = getSectorColor(0, v_filteredSectorToColorId);\\nstartSectorAngle = maxSectorAngle;\\nendSectorAngle = 360.0;\\n}\\nlowp vec4 outlineColor = u_outlineColor;\\nfloat offset = length(v_offset);\\nfloat distanceSize = offset * v_size;\\nif (startSectorAngle != 0.0 || endSectorAngle != 360.0) {\\nfloat distanceToStartSector = (angle - startSectorAngle);\\nfloat distanceToEndSector = (endSectorAngle - angle);\\nfloat sectorThreshold = 0.6;\\nfloat beginSectorAlpha = smoothstep(0.0, sectorThreshold, distanceToStartSector * offset);\\nfloat endSectorAlpha = smoothstep(0.0, sectorThreshold, distanceToEndSector * offset);\\nif (endSectorAlpha > 0.0) {\\nfillColor = mix(nextColor, fillColor, endSectorAlpha);\\n} else if (beginSectorAlpha > 0.0) {\\nfillColor = mix(prevColor, fillColor, beginSectorAlpha);\\n}\\n}\\nfloat donutSize = u_donutRatio * (v_size - v_outlineWidth);\\nfloat endOfDonut = donutSize - v_outlineWidth;\\nfloat aaThreshold = 0.75;\\nfloat innerCircleAlpha = endOfDonut - aaThreshold > 0.0 ? smoothstep(endOfDonut - aaThreshold, endOfDonut + aaThreshold, distanceSize) : 1.0;\\nfloat outerCircleAlpha = 1.0 - smoothstep(v_size - aaThreshold, v_size + aaThreshold , distanceSize);\\nfloat circleAlpha = innerCircleAlpha * outerCircleAlpha;\\nfloat startOfOutline = v_size - v_outlineWidth;\\nif (startOfOutline > 0.0 && v_outlineWidth > 0.25) {\\nfloat outlineFactor = smoothstep(startOfOutline - aaThreshold, startOfOutline + aaThreshold, distanceSize);\\nfloat innerLineFactor = donutSize - aaThreshold > 0.0 ? 1.0 - smoothstep(donutSize - aaThreshold, donutSize + aaThreshold , distanceSize) : 0.0;\\nfillColor = mix(fillColor, outlineColor, innerLineFactor + outlineFactor);\\n}\\nreturn v_opacity * circleAlpha * fillColor;\\n}\\n#endif\\nvoid main()\\n{\\nvec4 color = getColor();\\n#ifdef HIGHLIGHT\\ncolor.a = step(1.0 / 255.0, color.a);\\n#endif\\ngl_FragColor = color;\\n}\",\"pie.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;\\nuniform float u_outlineWidth;\\nuniform mediump float u_sectorThreshold;\\nvarying float v_size;\\nvarying vec2 v_offset;\\nvarying vec2 v_filteredSectorToColorId[NUMBER_OF_FIELDS];\\nvarying float v_numOfEntries;\\nvarying float v_maxSectorAngle;\\nstruct FilteredChartInfo {\\nfloat endSectorAngle;\\nint colorId;\\n};\\nint filter(in float sectorAngle,\\nin int currentIndex,\\ninout FilteredChartInfo filteredInfo,\\ninout vec2 filteredSectorToColorId[NUMBER_OF_FIELDS]) {\\nif (sectorAngle > u_sectorThreshold * 360.0) {\\nfilteredInfo.endSectorAngle += sectorAngle;\\n#if __VERSION__ == 300\\nfilteredSectorToColorId[filteredInfo.colorId] = vec2(filteredInfo.endSectorAngle, currentIndex);\\n#else\\nfor (int i = 0; i < NUMBER_OF_FIELDS; i++) {\\nif (i == filteredInfo.colorId) {\\nfilteredSectorToColorId[i] = vec2(filteredInfo.endSectorAngle, currentIndex);\\n}\\n}\\n#endif\\n++filteredInfo.colorId;\\n}\\nreturn 0;\\n}\\nint filterValues(inout vec2 filteredSectorToColorId[NUMBER_OF_FIELDS],\\ninout FilteredChartInfo filteredInfo,\\nin float sectorAngles[NUMBER_OF_FIELDS]) {\\nfor (int index = 0; index < NUMBER_OF_FIELDS; ++index) {\\nfloat sectorValue = sectorAngles[index];\\nfilter(sectorValue, index, filteredInfo, filteredSectorToColorId);\\n}\\nreturn filteredInfo.colorId;\\n}\\n#include \\n#include \\n#include \\nvec2 getMarkerSize(inout vec2 offset, inout vec2 baseSize, inout float outlineSize, in float referenceSize, in float bitSet) {\\nvec2 outSize = baseSize;\\n#ifdef VV_SIZE\\nfloat r = 0.5 * getSize(referenceSize) / referenceSize;\\noutSize.xy *= r;\\noffset.xy *= r;\\nfloat scaleSymbolProportionally = getBit(bitSet, BITSET_MARKER_SCALE_SYMBOLS_PROPORTIONALLY);\\noutlineSize *= scaleSymbolProportionally * (r - 1.0) + 1.0;\\n#endif\\nreturn outSize;\\n}\\nvec3 getOffset(in vec2 in_offset, float a_bitSet) {\\nfloat isMapAligned = getBit(a_bitSet, BITSET_MARKER_ALIGNMENT_MAP);\\nvec3 offset = vec3(in_offset, 0.0);\\nreturn getMatrix(isMapAligned) * offset;\\n}\\nfloat filterNaNValues(in float value) {\\nreturn value != NAN_MAGIC_NUMBER && value > 0.0 ? value : 0.0;\\n}\\nvoid main()\\n{\\nINIT;\\nvec2 a_size = a_sizeAndOutlineWidth.xy * a_sizeAndOutlineWidth.xy / 128.0;\\nvec2 a_offset = a_vertexOffset / 16.0;\\nfloat outlineSize = u_outlineWidth;\\nfloat a_bitSet = a_bitSetAndDistRatio.x;\\nvec2 size = getMarkerSize(a_offset, a_size, outlineSize, a_sizeAndOutlineWidth.w * a_sizeAndOutlineWidth.w / 128.0, a_bitSet);\\nfloat filterFlags = getFilterFlags();\\nvec3 pos = vec3(a_pos * POSITION_PRECISION, 1.0);\\nv_opacity = getOpacity();\\nv_id = norm(a_id);\\nv_pos = u_dvsMat3 * pos + getOffset(a_offset, a_bitSet);\\nv_offset = sign(a_texCoords - 0.5);\\nv_size = max(size.x, size.y);\\nv_outlineWidth = outlineSize;\\nfloat attributeData[10];\\nvec4 attributeData0 = getAttributeData3(a_id);\\nattributeData[0] = filterNaNValues(attributeData0.x);\\nattributeData[1] = filterNaNValues(attributeData0.y);\\nattributeData[2] = filterNaNValues(attributeData0.z);\\nattributeData[3] = filterNaNValues(attributeData0.w);\\n#if (NUMBER_OF_FIELDS > 4)\\nvec4 attributeData1 = getAttributeData4(a_id);\\nattributeData[4] = filterNaNValues(attributeData1.x);\\nattributeData[5] = filterNaNValues(attributeData1.y);\\nattributeData[6] = filterNaNValues(attributeData1.z);\\nattributeData[7] = filterNaNValues(attributeData1.w);\\n#endif\\n#if (NUMBER_OF_FIELDS > 8)\\nvec4 attributeData2 = getAttributeData5(a_id);\\nattributeData[8] = filterNaNValues(attributeData2.x);\\nattributeData[9] = filterNaNValues(attributeData2.y);\\n#endif\\nfloat sum = 0.0;\\nfor (int i = 0; i < NUMBER_OF_FIELDS; ++i) {\\nsum += attributeData[i];\\n}\\nfloat sectorAngles[NUMBER_OF_FIELDS];\\nfor (int i = 0; i < NUMBER_OF_FIELDS; ++i) {\\nsectorAngles[i] = 360.0 * attributeData[i] / sum;\\n}\\nvec2 filteredSectorToColorId[NUMBER_OF_FIELDS];\\nFilteredChartInfo filteredInfo = FilteredChartInfo(0.0, 0);\\nint numOfEntries = filterValues(filteredSectorToColorId, filteredInfo, sectorAngles);\\nv_numOfEntries = float(numOfEntries);\\nv_maxSectorAngle = filteredInfo.endSectorAngle;\\n#if __VERSION__ == 300\\nv_filteredSectorToColorId = filteredSectorToColorId;\\n#else\\nfor (int i = 0; i < NUMBER_OF_FIELDS; ++i) {\\nif (i == numOfEntries) {\\nbreak;\\n}\\nv_filteredSectorToColorId[i] = filteredSectorToColorId[i];\\n}\\n#endif\\n#ifdef HITTEST\\nhighp vec3 out_pos = vec3(0.0);\\nv_color = vec4(0.0);\\nhittestMarker(v_color, out_pos, u_viewMat3 * u_tileMat3 * pos, v_size);\\ngl_PointSize = 1.0;\\ngl_Position = vec4(clip(v_color, out_pos, filterFlags, a_zoomRange), 1.0);\\n#else\\ngl_Position = vec4(clip(v_color, v_pos, filterFlags, a_zoomRange), 1.0);\\n#endif\\n}\"},shared:{line:{\"common.glsl\":\"#if !defined(SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE) && defined(PATTERN)\\nuniform mediump vec2 u_mosaicSize;\\nvarying mediump float v_sampleAlphaOnly;\\n#endif\\nstruct LineData {\\nlowp vec4 color;\\nmediump vec2 normal;\\nmediump float lineHalfWidth;\\nlowp float opacity;\\n#ifndef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\n#ifdef PATTERN\\nmediump vec4 tlbr;\\nmediump vec2 patternSize;\\n#endif\\n#ifdef SDF\\nmediump float lineWidthRatio;\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nhighp float accumulatedDistance;\\n#endif\\n#endif\\nhighp vec3 id;\\n};\",\"line.frag\":\"uniform lowp float u_blur;\\n#if !defined(SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE) && !defined(HIGHLIGHT)\\n#if defined(PATTERN) || defined(SDF)\\nuniform sampler2D u_texture;\\nuniform highp float u_pixelRatio;\\n#endif\\n#endif\\n#if defined(SDF) && !defined(HIGHLIGHT) && !defined(SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE)\\nlowp vec4 getLineColor(LineData line) {\\nmediump float adjustedPatternWidth = line.patternSize.x * 2.0 * line.lineWidthRatio;\\nmediump float relativeTexX = fract(line.accumulatedDistance / adjustedPatternWidth);\\nmediump float relativeTexY = 0.5 + 0.25 * line.normal.y;\\nmediump vec2 texCoord = mix(line.tlbr.xy, line.tlbr.zw, vec2(relativeTexX, relativeTexY));\\nmediump float d = rgba2float(texture2D(u_texture, texCoord)) - 0.5;\\nfloat dist = d * line.lineHalfWidth;\\nreturn line.opacity * clamp(0.5 - dist, 0.0, 1.0) * line.color;\\n}\\n#elif defined(PATTERN) && !defined(HIGHLIGHT) && !defined(SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE)\\nlowp vec4 getLineColor(LineData line) {\\nmediump float lineHalfWidth = line.lineHalfWidth;\\nmediump float adjustedPatternHeight = line.patternSize.y * 2.0 * lineHalfWidth / line.patternSize.x;\\nmediump float relativeTexY = fract(line.accumulatedDistance / adjustedPatternHeight);\\nmediump float relativeTexX = 0.5 + 0.5 * line.normal.y;\\nmediump vec2 texCoord = mix(line.tlbr.xy, line.tlbr.zw, vec2(relativeTexX, relativeTexY));\\nlowp vec4 color = texture2D(u_texture, texCoord);\\n#ifdef VV_COLOR\\nif (v_sampleAlphaOnly > 0.5) {\\ncolor.rgb = vec3(color.a);\\n}\\n#endif\\nreturn line.opacity * line.color * color;\\n}\\n#else\\nlowp vec4 getLineColor(LineData line) {\\nreturn line.opacity * line.color;\\n}\\n#endif\\nvec4 shadeLine(LineData line)\\n{\\nmediump float thinLineFactor = max(THIN_LINE_WIDTH_FACTOR * step(line.lineHalfWidth, THIN_LINE_HALF_WIDTH), 1.0);\\nmediump float fragDist = length(line.normal) * line.lineHalfWidth;\\nlowp float alpha = clamp(thinLineFactor * (line.lineHalfWidth - fragDist) / (u_blur + thinLineFactor - 1.0), 0.0, 1.0);\\nlowp vec4 out_color = getLineColor(line) * alpha;\\n#ifdef HIGHLIGHT\\nout_color.a = step(1.0 / 255.0, out_color.a);\\n#endif\\n#ifdef ID\\nif (out_color.a < 1.0 / 255.0) {\\ndiscard;\\n}\\nout_color = vec4(line.id, 0.0);\\n#endif\\nreturn out_color;\\n}\",\"line.vert\":\"float getBaseLineHalfWidth(in float lineHalfWidth, in float referenceHalfWidth) {\\n#ifdef VV_SIZE\\nfloat refLineWidth = 2.0 * referenceHalfWidth;\\nreturn 0.5 * (lineHalfWidth / max(referenceHalfWidth, EPSILON)) * getSize(refLineWidth);\\n#else\\nreturn 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;\\n}\\nLineData buildLine(\\nout vec3 out_pos,\\nin vec3 in_id,\\nin vec2 in_pos,\\nin vec4 in_color,\\nin vec2 in_offset,\\nin vec2 in_normal,\\nin float in_accumulatedDist,\\nin float in_lineHalfWidth,\\nin float in_bitSet,\\nin vec4 in_tlbr,\\nin vec2 in_segmentDirection,\\nin float in_referenceHalfWidth\\n)\\n{\\nfloat aa = 0.5 * u_antialiasing;\\nfloat baseWidth = getBaseLineHalfWidth(in_lineHalfWidth, in_referenceHalfWidth);\\nfloat halfWidth = getLineHalfWidth(baseWidth, aa);\\nfloat z = 2.0 * step(baseWidth, 0.0);\\nvec2 dist = getDist(in_offset, halfWidth);\\nvec3 offset = u_displayViewMat3 * vec3(dist, 0.0);\\nvec3 pos = u_dvsMat3 * vec3(in_pos * POSITION_PRECISION, 1.0) + offset;\\n#ifdef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\nvec4 color = in_color;\\nfloat opacity = 1.0;\\n#else\\nvec4 color = getColor(in_color, in_bitSet, BITSET_GENERIC_LOCK_COLOR);\\nfloat opacity = getOpacity();\\n#ifdef SDF\\nconst float SDF_PATTERN_HALF_WIDTH = 15.5;\\nfloat scaleDash = getBit(in_bitSet, BITSET_LINE_SCALE_DASH);\\nfloat lineWidthRatio = (scaleDash * max(halfWidth - 0.55 * u_antialiasing, 0.25) + (1.0 - scaleDash)) / SDF_PATTERN_HALF_WIDTH;\\n#endif\\n#endif\\n#if !defined(SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE) && defined(PATTERN)\\nv_sampleAlphaOnly = getBit(in_bitSet, BITSET_GENERIC_CONSIDER_ALPHA_ONLY);\\n#endif\\nout_pos = vec3(pos.xy, z);\\nreturn LineData(\\ncolor,\\nin_normal,\\nhalfWidth,\\nopacity,\\n#ifndef SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\n#ifdef PATTERN\\nin_tlbr / u_mosaicSize.xyxy,\\nvec2(in_tlbr.z - in_tlbr.x, in_tlbr.w - in_tlbr.y),\\n#endif\\n#ifdef SDF\\nlineWidthRatio,\\n#endif\\n#if defined(PATTERN) || defined(SDF)\\nin_accumulatedDist * u_zoomFactor + dot(in_segmentDirection, dist),\\n#endif\\n#endif\\nnorm(in_id)\\n);\\n}\"}},\"symbologyTypeUtils.glsl\":\"#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_OUTLINE_FILL || SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_OUTLINE_FILL_SIMPLE\\n#define SYMBOLOGY_TYPE_IS_OUTLINE_FILL_LIKE\\n#endif\\n#if SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_SIMPLE || SYMBOLOGY_TYPE == SYMBOLOGY_TYPE_OUTLINE_FILL_SIMPLE\\n#define SYMBOLOGY_TYPE_IS_SIMPLE_LIKE\\n#endif\",text:{\"common.glsl\":\"uniform highp vec2 u_mosaicSize;\\nvarying highp vec3 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;\",\"hittest.glsl\":\"#include \",\"text.frag\":\"precision mediump float;\\n#include \\nuniform lowp sampler2D u_texture;\\n#ifdef HITTEST\\nvec4 getColor() {\\nreturn v_color;\\n}\\n#else\\nvec4 getColor()\\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);\\nreturn alpha * v_color * v_opacity;\\n}\\n#endif\\nvoid main()\\n{\\ngl_FragColor = getColor();\\n}\",\"text.vert\":\"precision highp float;\\n#include \\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(inout vec2 offset, inout float baseSize, in float referenceSize) {\\n#ifdef VV_SIZE\\nfloat r = getSize(referenceSize) / referenceSize;\\nbaseSize *= r;\\noffset.xy *= r;\\nreturn 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_offset, a_fontSize, a_referenceSize);\\nfloat fontScale = fontSize / SDF_FONT_SIZE;\\nvec3 offset = getRotation() * vec3(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;\\n#ifdef HITTEST\\nhighp vec3 out_pos = vec3(0.);\\nv_color = vec4(0.);\\nhittestMarker(v_color, out_pos, u_viewMat3 * u_tileMat3 * vec3(a_pos * POSITION_PRECISION, 1.0)\\n+ u_tileMat3 * offset, fontSize / 2.);\\ngl_PointSize = 1.;\\ngl_Position = vec4(clip(v_color, out_pos, getFilterFlags(), a_zoomRange), 1.0);\\n#else\\ngl_Position = vec4(clip(v_color, v_pos, getFilterFlags(), a_zoomRange), 1.0);\\n#endif\\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 vec3 unpackDisplayIdTexel(in highp vec3 bitset) {\\nfloat isAggregate = getBit(bitset.b, 7);\\nreturn (1.0 - isAggregate) * bitset + isAggregate * (vec3(bitset.rgb) - vec3(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}\\nvec3 norm(in vec3 v) {\\nreturn v /= 255.0;\\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}\\nhighp float rand(in vec2 co) {\\nhighp float a = 12.9898;\\nhighp float b = 78.233;\\nhighp float c = 43758.5453;\\nhighp float dt = dot(co, vec2(a,b));\\nhighp float sn = mod(dt, 3.14);\\nreturn fract(sin(sn) * c);\\n}\",\"vcommon.glsl\":\"#include \\n#include \\n#include \\n#include \\n#include \\nattribute vec2 a_pos;\\nattribute highp vec3 a_id;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp mat3 u_displayMat3;\\nuniform highp mat3 u_displayViewMat3;\\nuniform highp mat3 u_tileMat3;\\nuniform highp mat3 u_viewMat3;\\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 SUPPORTS_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 getMatrixNoDisplay(float isMapAligned) {\\nreturn isMapAligned * u_viewMat3 * u_tileMat3 + (1.0 - isMapAligned) * u_tileMat3;\\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}\",\"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}\"},overlay:{overlay:{\"overlay.frag\":\"precision lowp float;\\nuniform lowp sampler2D u_texture;\\nuniform lowp float u_opacity;\\nvarying mediump vec2 v_uv;\\nvoid main() {\\nvec4 color = texture2D(u_texture, v_uv);\\ngl_FragColor = color * u_opacity;\\n}\",\"overlay.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nattribute vec2 a_uv;\\nuniform highp mat3 u_dvsMat3;\\nuniform mediump vec2 u_perspective;\\nvarying mediump vec2 v_uv;\\nvoid main(void) {\\nv_uv = a_uv;\\nfloat w = 1.0 + dot(a_uv, u_perspective);\\nvec3 pos = u_dvsMat3 * vec3(a_pos, 1.0);\\ngl_Position = vec4(w * pos.xy, 0.0, w);\\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() {\\nvec4 color = 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);\\ngl_FragColor = clamp(color, 0.0, 1.0);\\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;\\nuniform vec2 u_shadowOffset;\\nuniform highp mat3 u_displayViewMat3;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec3 offset = u_displayViewMat3 * vec3(u_shadowOffset, 0.0);\\nvec4 layerColor = texture2D(u_layerFBOTexture, v_uv);\\nvec4 blurColor = texture2D(u_blurTexture, v_uv - offset.xy / 2.0);\\ngl_FragColor = ((1.0 - layerColor.a) * blurColor.a * u_shadowColor + layerColor);\\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\\ngl_FragColor = vec4(color.rgb * u_opacity, color.a * u_opacity);\\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_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) {\\n#ifdef LOOKUP_PROJECTION\\nvec4 pv = texture2D(u_transformGrid, coords);\\nreturn vec2(pv.r, pv.g);\\n#endif\\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}\"},flow:{\"getFadeOpacity.glsl\":\"uniform float u_decayRate;\\nuniform float u_fadeToZero;\\nfloat getFadeOpacity(float x) {\\nfloat cutOff = mix(0.0, exp(-u_decayRate), u_fadeToZero);\\nreturn (exp(-u_decayRate * x) - cutOff) / (1.0 - cutOff);\\n}\",\"getFragmentColor.glsl\":\"vec4 getFragmentColor(vec4 color, float dist, float size, float featheringSize) {\\nfloat featheringStart = clamp(0.5 - featheringSize / size, 0.0, 0.5);\\nif (dist > featheringStart) {\\ncolor *= 1.0 - (dist - featheringStart) / (0.5 - featheringStart);\\n}\\nreturn color;\\n}\",imagery:{\"imagery.frag\":\"precision highp float;\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_Min;\\nuniform float u_Max;\\nuniform float u_featheringSize;\\n#include \\nfloat getIntensity(float v) {\\nreturn u_Min + v * (u_Max - u_Min);\\n}\\nvoid main(void) {\\nvec4 sampled = texture2D(u_texture, v_texcoord);\\nfloat intensity = getIntensity(sampled.r);\\ngl_FragColor = getColor(intensity);\\ngl_FragColor.a *= getOpacity(sampled.r);\\ngl_FragColor.a *= sampled.a;\\ngl_FragColor.rgb *= gl_FragColor.a;\\n}\",\"imagery.vert\":\"attribute vec2 a_position;\\nattribute vec2 a_texcoord;\\nuniform mat3 u_dvsMat3;\\nvarying vec2 v_texcoord;\\nvoid main(void) {\\nvec2 xy = (u_dvsMat3 * vec3(a_position, 1.0)).xy;\\ngl_Position = vec4(xy, 0.0, 1.0);\\nv_texcoord = a_texcoord;\\n}\"},particles:{\"particles.frag\":\"precision highp float;\\nvarying vec4 v_color;\\nvarying vec2 v_texcoord;\\nvarying float v_size;\\nuniform float u_featheringSize;\\n#include \\nvoid main(void) {\\ngl_FragColor = getFragmentColor(v_color, length(v_texcoord - 0.5), v_size, u_featheringSize);\\n}\",\"particles.vert\":\"attribute vec4 a_xyts0;\\nattribute vec4 a_xyts1;\\nattribute vec4 a_typeIdDurationSeed;\\nattribute vec4 a_extrudeInfo;\\nuniform mat3 u_dvsMat3;\\nuniform mat3 u_displayViewMat3;\\nuniform float u_time;\\nuniform float u_trailLength;\\nuniform float u_flowSpeed;\\nvarying vec4 v_color;\\nvarying vec2 v_texcoord;\\nvarying float v_size;\\nuniform float u_featheringSize;\\nuniform float u_introFade;\\n#include \\n#include \\nvoid main(void) {\\nvec2 position0 = a_xyts0.xy;\\nfloat t0 = a_xyts0.z;\\nfloat speed0 = a_xyts0.w;\\nvec2 position1 = a_xyts1.xy;\\nfloat t1 = a_xyts1.z;\\nfloat speed1 = a_xyts1.w;\\nfloat type = a_typeIdDurationSeed.x;\\nfloat id = a_typeIdDurationSeed.y;\\nfloat duration = a_typeIdDurationSeed.z;\\nfloat seed = a_typeIdDurationSeed.w;\\nvec2 e0 = a_extrudeInfo.xy;\\nvec2 e1 = a_extrudeInfo.zw;\\nfloat animationPeriod = duration + u_trailLength;\\nfloat scaledTime = u_time * u_flowSpeed;\\nfloat randomizedTime = scaledTime + seed * animationPeriod;\\nfloat t = mod(randomizedTime, animationPeriod);\\nfloat fUnclamped = (t - t0) / (t1 - t0);\\nfloat f = clamp(fUnclamped, 0.0, 1.0);\\nfloat clampedTime = mix(t0, t1, f);\\nfloat speed = mix(speed0, speed1, f);\\nvec2 extrude;\\nvec2 position;\\nfloat fadeOpacity;\\nfloat introOpacity;\\nif (type == 2.0) {\\nif (fUnclamped < 0.0 || (fUnclamped > 1.0 && t1 != duration)) {\\ngl_Position = vec4(0.0, 0.0, -2.0, 1.0);\\nreturn;\\n}\\nvec2 ortho = mix(e0, e1, f);\\nvec2 parallel;\\nparallel = normalize(position1 - position0) * 0.5;\\nif (id == 1.0) {\\nextrude = ortho;\\nv_texcoord = vec2(0.5, 0.0);\\n} else if (id == 2.0) {\\nextrude = -ortho;\\nv_texcoord = vec2(0.5, 1.0);\\n} else if (id == 3.0) {\\nextrude = ortho + parallel;\\nv_texcoord = vec2(1.0, 0.0);\\n} else if (id == 4.0) {\\nextrude = -ortho + parallel;\\nv_texcoord = vec2(1.0, 1.0);\\n}\\nfadeOpacity = getFadeOpacity((t - clampedTime) / u_trailLength);\\nintroOpacity = 1.0 - exp(-clampedTime);\\nv_size = getSize(speed);\\nv_color = getColor(speed);\\nv_color.a *= getOpacity(speed);\\nposition = mix(position0, position1, f);\\n} else {\\nif (fUnclamped < 0.0) {\\ngl_Position = vec4(0.0, 0.0, -2.0, 1.0);\\nreturn;\\n}\\nif (id == 1.0) {\\nextrude = e0;\\nv_texcoord = vec2(0.5, 0.0);\\nfadeOpacity = getFadeOpacity((t - t0) / u_trailLength);\\nintroOpacity = 1.0 - exp(-t0);\\nv_size = getSize(speed0);\\nv_color = getColor(speed0);\\nv_color.a *= getOpacity(speed0);\\nposition = position0;\\n} else if (id == 2.0) {\\nextrude = -e0;\\nv_texcoord = vec2(0.5, 1.0);\\nfadeOpacity = getFadeOpacity((t - t0) / u_trailLength);\\nintroOpacity = 1.0 - exp(-t0);\\nv_size = getSize(speed0);\\nv_color = getColor(speed0);\\nv_color.a *= getOpacity(speed0);\\nposition = position0;\\n} else if (id == 3.0) {\\nextrude = mix(e0, e1, f);\\nv_texcoord = vec2(0.5, 0.0);\\nfadeOpacity = getFadeOpacity((t - clampedTime) / u_trailLength);\\nintroOpacity = 1.0 - exp(-clampedTime);\\nv_size = getSize(speed);\\nv_color = getColor(speed);\\nv_color.a *= getOpacity(speed);\\nposition = mix(position0, position1, f);\\n} else if (id == 4.0) {\\nextrude = -mix(e0, e1, f);\\nv_texcoord = vec2(0.5, 1.0);\\nfadeOpacity = getFadeOpacity((t - clampedTime) / u_trailLength);\\nintroOpacity = 1.0 - exp(-clampedTime);\\nv_size = getSize(speed);\\nv_color = getColor(speed);\\nv_color.a *= getOpacity(speed);\\nposition = mix(position0, position1, f);\\n}\\n}\\nvec2 xy = (u_dvsMat3 * vec3(position, 1.0) + u_displayViewMat3 * vec3(extrude * v_size, 0.0)).xy;\\ngl_Position = vec4(xy, 0.0, 1.0);\\nv_color.a *= fadeOpacity;\\nv_color.a *= mix(1.0, introOpacity, u_introFade);\\nv_color.rgb *= v_color.a;\\n}\"},streamlines:{\"streamlines.frag\":\"precision highp float;\\nvarying float v_side;\\nvarying float v_time;\\nvarying float v_totalTime;\\nvarying float v_timeSeed;\\nvarying vec4 v_color;\\nvarying float v_size;\\nuniform float u_time;\\nuniform float u_trailLength;\\nuniform float u_flowSpeed;\\nuniform float u_featheringSize;\\nuniform float u_introFade;\\n#include \\n#include \\nvoid main(void) {\\nfloat t = mod(v_timeSeed * (v_totalTime + u_trailLength) + u_time * u_flowSpeed, v_totalTime + u_trailLength) - v_time;\\nvec4 color = v_color * step(0.0, t) * getFadeOpacity(t / u_trailLength);\\ncolor *= mix(1.0, 1.0 - exp(-v_time), u_introFade);\\ngl_FragColor = getFragmentColor(color, length((v_side + 1.0) / 2.0 - 0.5), v_size, u_featheringSize);\\n}\",\"streamlines.vert\":\"attribute vec3 a_positionAndSide;\\nattribute vec3 a_timeInfo;\\nattribute vec2 a_extrude;\\nattribute float a_speed;\\nuniform mat3 u_dvsMat3;\\nuniform mat3 u_displayViewMat3;\\nvarying float v_time;\\nvarying float v_totalTime;\\nvarying float v_timeSeed;\\nvarying vec4 v_color;\\nvarying float v_side;\\nvarying float v_size;\\nuniform float u_featheringSize;\\n#include \\nvoid main(void) {\\nvec4 lineColor = getColor(a_speed);\\nfloat lineOpacity = getOpacity(a_speed);\\nfloat lineSize = getSize(a_speed);\\nvec2 position = a_positionAndSide.xy;\\nv_side = a_positionAndSide.z;\\nvec2 xy = (u_dvsMat3 * vec3(position, 1.0) + u_displayViewMat3 * vec3(a_extrude * lineSize, 0.0)).xy;\\ngl_Position = vec4(xy, 0.0, 1.0);\\nv_time = a_timeInfo.x;\\nv_totalTime = a_timeInfo.y;\\nv_timeSeed = a_timeInfo.z;\\nv_color = lineColor;\\nv_color.a *= lineOpacity;\\nv_color.rgb *= v_color.a;\\nv_size = lineSize;\\n}\"},\"vv.glsl\":\"#define MAX_STOPS 8\\n#ifdef VV_COLOR\\nuniform float u_color_stops[MAX_STOPS];\\nuniform vec4 u_color_values[MAX_STOPS];\\nuniform int u_color_count;\\n#else\\nuniform vec4 u_color;\\n#endif\\n#ifdef VV_OPACITY\\nuniform float u_opacity_stops[MAX_STOPS];\\nuniform float u_opacity_values[MAX_STOPS];\\nuniform int u_opacity_count;\\n#else\\nuniform float u_opacity;\\n#endif\\n#ifdef VV_SIZE\\nuniform float u_size_stops[MAX_STOPS];\\nuniform float u_size_values[MAX_STOPS];\\nuniform int u_size_count;\\n#else\\nuniform float u_size;\\n#endif\\nuniform float u_featheringOffset;\\nvec4 getColor(float x) {\\n#ifdef VV_COLOR\\nvec4 color = u_color_values[0];\\n{\\nfor (int i = 1; i < MAX_STOPS; i++) {\\nif (i >= u_color_count) {\\nbreak;\\n}\\nfloat x1 = u_color_stops[i - 1];\\nif (x < x1) {\\nbreak;\\n}\\nfloat x2 = u_color_stops[i];\\nvec4 y2 = u_color_values[i];\\nif (x < x2) {\\nvec4 y1 = u_color_values[i - 1];\\ncolor = y1 + (y2 - y1) * (x - x1) / (x2 - x1);\\n} else {\\ncolor = y2;\\n}\\n}\\n}\\n#else\\nvec4 color = u_color;\\n#endif\\nreturn color;\\n}\\nfloat getOpacity(float x) {\\n#ifdef VV_OPACITY\\nfloat opacity = u_opacity_values[0];\\n{\\nfor (int i = 1; i < MAX_STOPS; i++) {\\nif (i >= u_opacity_count) {\\nbreak;\\n}\\nfloat x1 = u_opacity_stops[i - 1];\\nif (x < x1) {\\nbreak;\\n}\\nfloat x2 = u_opacity_stops[i];\\nfloat y2 = u_opacity_values[i];\\nif (x < x2) {\\nfloat y1 = u_opacity_values[i - 1];\\nopacity = y1 + (y2 - y1) * (x - x1) / (x2 - x1);\\n} else {\\nopacity = y2;\\n}\\n}\\n}\\n#else\\nfloat opacity = u_opacity;\\n#endif\\nreturn opacity;\\n}\\nfloat getSize(float x) {\\n#ifdef VV_SIZE\\nfloat size = u_size_values[0];\\n{\\nfor (int i = 1; i < MAX_STOPS; i++) {\\nif (i >= u_size_count) {\\nbreak;\\n}\\nfloat x1 = u_size_stops[i - 1];\\nif (x < x1) {\\nbreak;\\n}\\nfloat x2 = u_size_stops[i];\\nfloat y2 = u_size_values[i];\\nif (x < x2) {\\nfloat y1 = u_size_values[i - 1];\\nsize = y1 + (y2 - y1) * (x - x1) / (x2 - x1);\\n} else {\\nsize = y2;\\n}\\n}\\n}\\n#else\\nfloat size = u_size;\\n#endif\\nreturn size + 2.0 * u_featheringSize * u_featheringOffset;\\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}\"},magdir:{\"magdir.frag\":\"precision mediump float;\\nvarying vec4 v_color;\\nuniform lowp float u_opacity;\\nvoid main() {\\ngl_FragColor = v_color * u_opacity;\\n}\",\"magdir.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nattribute vec2 a_offset;\\nattribute vec2 a_vv;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform vec2 u_symbolSize;\\nuniform vec2 u_symbolPercentRange;\\nuniform vec2 u_dataRange;\\nuniform float u_rotation;\\nuniform vec4 u_colors[12];\\nvarying vec4 v_color;\\nvoid main()\\n{\\nfloat angle = a_offset.y + u_rotation;\\n#ifndef ROTATION_GEOGRAPHIC\\nangle = 3.14159265359 * 2.0 - angle - 3.14159265359 / 2.0;\\n#endif\\nvec2 offset = vec2(cos(angle), sin(angle)) * a_offset.x;\\n#ifdef DATA_RANGE\\nfloat valuePercentage = clamp((a_vv.y - u_dataRange.x) / (u_dataRange.y - u_dataRange.x), 0.0, 1.0);\\nfloat sizeRatio = u_symbolPercentRange.x + valuePercentage * (u_symbolPercentRange.y - u_symbolPercentRange.x);\\nfloat sizePercentage = clamp(sizeRatio, u_symbolPercentRange.x, u_symbolPercentRange.y);\\n#else\\nfloat sizePercentage = (u_symbolPercentRange.x + u_symbolPercentRange.y) / 2.0;\\n#endif\\nvec2 pos = a_pos + offset * sizePercentage * u_symbolSize;\\nv_color = u_colors[int(a_vv.x)];\\ngl_Position = vec4(u_dvsMat3 * vec3(pos * u_coordScale, 1.0), 1.0);\\n}\"},reproject:{\"reproject.frag\":\"precision mediump float;\\nvarying vec2 v_texcoord;\\n#include \\nvoid main() {\\nvec2 pixelLocation = getPixelLocation(v_texcoord);\\nif (isOutside(pixelLocation)) {\\ngl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);\\nreturn;\\n}\\nvec4 currentPixel = getPixel(pixelLocation);\\ngl_FragColor = vec4(currentPixel.rgb, 1.0) * currentPixel.a * u_opacity;\\n}\",\"reproject.vert\":\"precision mediump float;\\nattribute vec2 a_position;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_position;\\ngl_Position = vec4(2.0 * (a_position - 0.5), 0.0, 1.0);\\n}\"},scalar:{\"scalar.frag\":\"precision mediump float;\\nuniform lowp float u_opacity;\\nvarying vec2 v_pos;\\nconst vec4 outlineColor = vec4(0.2, 0.2, 0.2, 1.0);\\nconst float outlineSize = 0.02;\\nconst float innerRadius = 0.25;\\nconst float outerRadius = 0.42;\\nconst float innerSquareLength = 0.15;\\nvoid main() {\\nmediump float dist = length(v_pos);\\nmediump float fillalpha1 = smoothstep(outerRadius, outerRadius + outlineSize, dist);\\nfillalpha1 *= (1.0-smoothstep(outerRadius + outlineSize, outerRadius + 0.1 + outlineSize, dist));\\n#ifdef INNER_CIRCLE\\nmediump float fillalpha2 = smoothstep(innerRadius, innerRadius + outlineSize, dist);\\nfillalpha2 *= (1.0-smoothstep(innerRadius + outlineSize, innerRadius + 0.1 + outlineSize, dist));\\n#else\\nmediump float fillalpha2 = (abs(v_pos.x) < innerSquareLength ? 1.0 : 0.0) * (abs(v_pos.y) < innerSquareLength ? 1.0 : 0.0);\\n#endif\\ngl_FragColor = (fillalpha2 + fillalpha1) * outlineColor * u_opacity;\\n}\",\"scalar.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nattribute vec2 a_offset;\\nattribute vec2 a_vv;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nuniform vec2 u_symbolSize;\\nuniform vec2 u_symbolPercentRange;\\nuniform vec2 u_dataRange;\\nvarying vec2 v_pos;\\nvoid main()\\n{\\n#ifdef DATA_RANGE\\nfloat valuePercentage = clamp((a_vv.y - u_dataRange.x) / (u_dataRange.y - u_dataRange.x), 0.0, 1.0);\\nfloat sizeRatio = u_symbolPercentRange.x + valuePercentage * (u_symbolPercentRange.y - u_symbolPercentRange.x);\\nfloat sizePercentage = clamp(sizeRatio, u_symbolPercentRange.x, u_symbolPercentRange.y);\\n#else\\nfloat sizePercentage = (u_symbolPercentRange.x + u_symbolPercentRange.y) / 2.0;\\n#endif\\nvec2 size = u_symbolSize * sizePercentage;\\nvec2 pos = a_pos + a_offset * size;\\nv_pos = a_offset;\\ngl_Position = vec4(u_dvsMat3 * vec3(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;\\nuniform mat3 u_worldExtent;\\nvoid main() {\\ngl_Position = vec4(u_worldExtent * vec3(a_pos, 1.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:{\"atan2.glsl\":\"float atan2(in float y, in float x) {\\nfloat t0, t1, t2, t3, t4;\\nt3 = abs(x);\\nt1 = abs(y);\\nt0 = max(t3, t1);\\nt1 = min(t3, t1);\\nt3 = 1.0 / t0;\\nt3 = t1 * t3;\\nt4 = t3 * t3;\\nt0 = - 0.013480470;\\nt0 = t0 * t4 + 0.057477314;\\nt0 = t0 * t4 - 0.121239071;\\nt0 = t0 * t4 + 0.195635925;\\nt0 = t0 * t4 - 0.332994597;\\nt0 = t0 * t4 + 0.999995630;\\nt3 = t0 * t3;\\nt3 = (abs(y) > abs(x)) ? 1.570796327 - t3 : t3;\\nt3 = x < 0.0 ? 3.141592654 - t3 : t3;\\nt3 = y < 0.0 ? -t3 : t3;\\nreturn t3;\\n}\",\"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{e as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport r from\"./shaderRepository.js\";import{ShaderCompiler as e}from\"../../../../../webgl/ShaderCompiler.js\";function o(e){let o=r;return e.split(\"/\").forEach((r=>{o&&(o=o[r])})),o}const t=new e(o);function n(r){return t.resolveIncludes(r)}export{n as resolveIncludes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isNone as e}from\"../../core/maybe.js\";import{BufferType as r,CompressedTextureFormat as t,SizedPixelFormat as s,RenderbufferFormat as a,PixelFormat as c}from\"./enums.js\";function i(e){const r=e.gl;switch(r.getError()){case r.NO_ERROR:return null;case r.INVALID_ENUM:return\"An unacceptable value has been specified for an enumerated argument\";case r.INVALID_VALUE:return\"A numeric argument is out of range\";case r.INVALID_OPERATION:return\"The specified command is not allowed for the current state\";case r.INVALID_FRAMEBUFFER_OPERATION:return\"The currently bound framebuffer is not framebuffer complete\";case r.OUT_OF_MEMORY:return\"Not enough memory is left to execute the command\";case r.CONTEXT_LOST_WEBGL:return\"WebGL context is lost\"}return\"Unknown error\"}function n(e,r){return e.vertexBuffers[r].size/o(e.layout[r])}function o(e){return e[0].stride}function R(e,r,t,s,a=0){const c=e.gl,i=e.capabilities.instancing;e.bindBuffer(t);for(const n of s){const e=r.get(n.name);void 0===e&&console.error(`There is no location for vertex attribute '${n.name}' defined.`);const t=a*n.stride;if(n.count<=4)c.vertexAttribPointer(e,n.count,n.type,n.normalized,n.stride,n.offset+t),c.enableVertexAttribArray(e),n.divisor>0&&i&&i.vertexAttribDivisor(e,n.divisor);else if(9===n.count)for(let r=0;r<3;r++)c.vertexAttribPointer(e+r,3,n.type,n.normalized,n.stride,n.offset+12*r+t),c.enableVertexAttribArray(e+r),n.divisor>0&&i&&i.vertexAttribDivisor(e+r,n.divisor);else if(16===n.count)for(let r=0;r<4;r++)c.vertexAttribPointer(e+r,4,n.type,n.normalized,n.stride,n.offset+16*r+t),c.enableVertexAttribArray(e+r),n.divisor>0&&i&&i.vertexAttribDivisor(e+r,n.divisor);else console.error(\"Unsupported vertex attribute element count: \"+n.count)}}function E(e,t,s,a){const c=e.gl,i=e.capabilities.instancing;e.bindBuffer(s);for(const r of a){const e=t.get(r.name);if(r.count<=4)c.disableVertexAttribArray(e),r.divisor&&r.divisor>0&&i&&i.vertexAttribDivisor(e,0);else if(9===r.count)for(let t=0;t<3;t++)c.disableVertexAttribArray(e+t),r.divisor&&r.divisor>0&&i&&i.vertexAttribDivisor(e+t,0);else if(16===r.count)for(let t=0;t<4;t++)c.disableVertexAttribArray(e+t),r.divisor&&r.divisor>0&&i&&i.vertexAttribDivisor(e+t,0);else console.error(\"Unsupported vertex attribute element count: \"+r.count)}e.unbindBuffer(r.ARRAY_BUFFER)}function _(e){switch(e){case c.ALPHA:case c.LUMINANCE:case c.RED:case c.RED_INTEGER:case s.R8:case s.R8I:case s.R8UI:case s.R8_SNORM:case a.STENCIL_INDEX8:return 1;case c.LUMINANCE_ALPHA:case c.RG:case c.RG_INTEGER:case s.RGBA4:case s.R16F:case s.R16I:case s.R16UI:case s.RG8:case s.RG8I:case s.RG8UI:case s.RG8_SNORM:case s.RGB565:case s.RGB5_A1:case a.DEPTH_COMPONENT16:return 2;case c.DEPTH_COMPONENT:case c.RGB:case c.RGB_INTEGER:case s.RGB8:case s.RGB8I:case s.RGB8UI:case s.RGB8_SNORM:case s.SRGB8:case a.DEPTH_COMPONENT24:return 3;case c.DEPTH_STENCIL:case c.RGBA:case c.RGBA_INTEGER:case s.RGBA8:case s.R32F:case s.R11F_G11F_B10F:case s.RG16F:case s.R32I:case s.R32UI:case s.RG16I:case s.RG16UI:case s.RGBA8I:case s.RGBA8UI:case s.RGBA8_SNORM:case s.SRGB8_ALPHA8:case s.RGB9_E5:case s.RGB10_A2UI:case s.RGB10_A2:case a.DEPTH_STENCIL:case a.DEPTH_COMPONENT32F:case a.DEPTH24_STENCIL8:return 4;case a.DEPTH32F_STENCIL8:return 5;case s.RGB16F:case s.RGB16I:case s.RGB16UI:return 6;case s.RG32F:case s.RG32I:case s.RG32UI:case s.RGBA16F:case s.RGBA16I:case s.RGBA16UI:return 8;case s.RGB32F:case s.RGB32I:case s.RGB32UI:return 12;case s.RGBA32F:case s.RGBA32I:case s.RGBA32UI:return 16;case t.COMPRESSED_RGB_S3TC_DXT1_EXT:case t.COMPRESSED_RGBA_S3TC_DXT1_EXT:return.5;case t.COMPRESSED_RGBA_S3TC_DXT3_EXT:case t.COMPRESSED_RGBA_S3TC_DXT5_EXT:return 1;case t.COMPRESSED_R11_EAC:case t.COMPRESSED_SIGNED_R11_EAC:case t.COMPRESSED_RGB8_ETC2:case t.COMPRESSED_SRGB8_ETC2:case t.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:case t.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:return.5;case t.COMPRESSED_RG11_EAC:case t.COMPRESSED_SIGNED_RG11_EAC:case t.COMPRESSED_RGBA8_ETC2_EAC:case t.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:return 1}return 0}function u(r){if(e(r))return 0;if(\"descriptor\"in r)return r.glName?u(r.descriptor):0;const t=r.internalFormat||\"pixelFormat\"in r&&r.pixelFormat;if(!t)return 0;const s=\"hasMipmap\"in r&&r.hasMipmap?1.3:1,a=r.width*r.height;return _(t)*a*s}export{R as bindVertexBufferLayout,_ as getBytesPerElementFormat,i as getErrorString,u as getGpuMemoryUsage,o as getStride,E as unbindVertexBufferLayout,n as vertexCount};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{DataType as e}from\"../../../webgl/enums.js\";import{VertexElementDescriptor as o}from\"../../../webgl/VertexElementDescriptor.js\";const r={geometry:[new o(\"a_pos\",2,e.BYTE,0,2)]},t={geometry:[new o(\"a_pos\",2,e.BYTE,0,4),new o(\"a_tex\",2,e.BYTE,2,4)]},m={geometry:[new o(\"a_pos\",2,e.UNSIGNED_SHORT,0,4)]};export{r as Pos2b,m as Pos2us,t as PosTex2b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{Z as e}from\"../../chunks/vec2f64.js\";import{ContextType as t}from\"./context-util.js\";import{PixelType as n,TextureType as a,PixelFormat as r,SizedPixelFormat as i,TextureSamplingMode as o,TextureWrapMode as s,UniformType as u}from\"./enums.js\";import{Texture as f}from\"./Texture.js\";function m(e,u,m=\"nearest\",c=!1){const l=!(c&&\"u8\"===u.pixelType),_=l?n.FLOAT:n.UNSIGNED_BYTE,p=null==u.pixels||0===u.pixels.length?null:l?u.getAsRGBAFloat():u.getAsRGBA(),g=e.capabilities.textureFloat?.textureFloatLinear,T={width:u.width,height:u.height,target:a.TEXTURE_2D,pixelFormat:r.RGBA,internalFormat:e.type===t.WEBGL2&&l?i.RGBA32F:r.RGBA,samplingMode:!g||\"bilinear\"!==m&&\"cubic\"!==m?o.NEAREST:o.LINEAR,dataType:_,wrapMode:s.CLAMP_TO_EDGE,flipped:!1};return new f(e,T,p)}function c(e,u){const{spacing:m,offsets:c,coefficients:l,size:[_,p]}=u,g=m[0]>1,T={width:g?4*_:_,height:p,target:a.TEXTURE_2D,pixelFormat:r.RGBA,internalFormat:e.type===t.WEBGL2?i.RGBA32F:r.RGBA,dataType:n.FLOAT,samplingMode:o.NEAREST,wrapMode:s.CLAMP_TO_EDGE,flipped:!1},E=new Float32Array(g?_*p*16:2*c.length);if(g)for(let t=0,n=0;t{const r=t.get(a)||t.get(a+\"[0]\");r&&d(e,a,n[a],r)}))}function O(e,t,n,a){n.length===a.length&&(a.some((e=>null==e))||n.some((e=>null==e))||n.forEach(((n,r)=>{t.setUniform1i(n,r),e.bindTexture(a[r],r)})))}function d(e,t,n,a){if(null===a||null==n)return!1;const{info:r}=a;switch(r.type){case u.FLOAT:r.size>1?e.setUniform1fv(t,n):e.setUniform1f(t,n);break;case u.FLOAT_VEC2:e.setUniform2fv(t,n);break;case u.FLOAT_VEC3:e.setUniform3fv(t,n);break;case u.FLOAT_VEC4:e.setUniform4fv(t,n);break;case u.FLOAT_MAT3:e.setUniformMatrix3fv(t,n);break;case u.FLOAT_MAT4:e.setUniformMatrix4fv(t,n);break;case u.INT:r.size>1?e.setUniform1iv(t,n):e.setUniform1i(t,n);break;case u.BOOL:e.setUniform1i(t,n?1:0);break;case u.INT_VEC2:case u.BOOL_VEC2:e.setUniform2iv(t,n);break;case u.INT_VEC3:case u.BOOL_VEC3:e.setUniform3iv(t,n);break;case u.INT_VEC4:case u.BOOL_VEC4:e.setUniform4iv(t,n);break;default:return!1}return!0}export{l as createColormapTexture,m as createRasterTexture,c as createTransformTexture,g as getBasicGridUniforms,p as getColormapUniforms,_ as getCommonUniforms,E as getShadedReliefUniforms,T as getStretchUniforms,A as getUniformLocationInfos,O as setTextures,h as setUniforms};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as r}from\"../../../../../core/maybe.js\";import{f as e}from\"../../../../../chunks/vec4f32.js\";import{Pos2b as t}from\"../DefaultVertexAttributeLayouts.js\";import i from\"./WGLBrush.js\";import{background as s}from\"../shaders/BackgroundPrograms.js\";import{BufferObject as o}from\"../../../../webgl/BufferObject.js\";import{StencilOperation as a,Face as l,CompareFunction as n,PrimitiveType as d,Usage as m}from\"../../../../webgl/enums.js\";import{createProgram as _}from\"../../../../webgl/ProgramTemplate.js\";import{VertexArrayObject as c}from\"../../../../webgl/VertexArrayObject.js\";class h extends i{constructor(){super(...arguments),this._color=e(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:r}){r.setDepthWriteEnabled(!1),r.setDepthTestEnabled(!1),r.setStencilTestEnabled(!0),r.setBlendingEnabled(!1),r.setColorMask(!1,!1,!1,!1),r.setStencilOp(a.KEEP,a.KEEP,a.REPLACE),r.setStencilWriteMask(255)}draw(e,t){const{context:i,requestRender:s,allowDelayedRender:o}=e;this._initialized||this._initialize(i),o&&r(s)&&!this._solidProgram.isCompiled?s():(i.setStencilFunctionSeparate(l.FRONT_AND_BACK,n.GREATER,t.stencilRef,255),i.bindVAO(this._solidVertexArrayObject),i.useProgram(this._solidProgram),this._solidProgram.setUniformMatrix3fv(\"u_dvsMat3\",t.transforms.dvs),this._solidProgram.setUniform2fv(\"u_coord_range\",[t.rangeX,t.rangeY]),this._solidProgram.setUniform1f(\"u_depth\",0),this._solidProgram.setUniform4fv(\"u_color\",this._color),i.drawArrays(d.TRIANGLE_STRIP,0,4),i.bindVAO())}_initialize(r){if(this._initialized)return!0;const e=_(r,s);if(!e)return!1;const i=new Int8Array([0,0,1,0,0,1,1,1]),a=o.createVertex(r,m.STATIC_DRAW,i),l=new c(r,s.attributes,t,{geometry:a});return this._solidProgram=e,this._solidVertexArrayObject=l,this._initialized=!0,!0}}export{h as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nvar e,n,t,r={exports:{}};e=r,n=function(){function e(e,t,x){x=x||2;var i,u,v,o,y,p,a,l=t&&t.length,h=l?t[0]*x:e.length,s=n(e,0,h,x,!0),c=[];if(!s||s.next===s.prev)return c;if(l&&(s=f(e,t,s,x)),e.length>80*x){i=v=e[0],u=o=e[1];for(var Z=x;Zv&&(v=y),p>o&&(o=p);a=0!==(a=Math.max(v-i,o-u))?1/a:0}return r(s,c,x,i,u,a),c}function n(e,n,t,r,x){var i,u;if(x===E(e,n,t,r)>0)for(i=n;i=n;i-=r)u=B(i,e[i],e[i+1],u);if(u&&M(u,u.next)){var v=u.next;C(u),u=v}return u}function t(e,n){if(!e)return e;n||(n=e);var t,r=e;do{if(t=!1,r.steiner||!M(r,r.next)&&0!==w(r.prev,r,r.next))r=r.next;else{var x=r.prev;if(C(r),(r=n=x)===r.next)break;t=!0}}while(t||r!==n);return n}function r(e,n,f,o,y,p,a){if(e){!a&&p&&h(e,o,y,p);for(var l,s,c=e;e.prev!==e.next;)if(l=e.prev,s=e.next,p?i(e,o,y,p):x(e))n.push(l.i/f),n.push(e.i/f),n.push(s.i/f),C(e),e=s.next,c=s.next;else if((e=s)===c){a?1===a?r(e=u(t(e),n,f),n,f,o,y,p,2):2===a&&v(e,n,f,o,y,p):r(t(e),n,f,o,y,p,1);break}}}function x(e){var n=e.prev,t=e,r=e.next;if(w(n,t,r)>=0)return!1;for(var x=e.next.next;x!==e.prev;){if(g(n.x,n.y,t.x,t.y,r.x,r.y,x.x,x.y)&&w(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,u=e.next;if(w(x,i,u)>=0)return!1;for(var v=x.xi.x?x.x>u.x?x.x:u.x:i.x>u.x?i.x:u.x,y=x.y>i.y?x.y>u.y?x.y:u.y:i.y>u.y?i.y:u.y,p=c(v,f,n,t,r),a=c(o,y,n,t,r),l=e.prevZ,h=e.nextZ;l&&l.z>=p&&h&&h.z<=a;){if(l!==e.prev&&l!==e.next&&g(x.x,x.y,i.x,i.y,u.x,u.y,l.x,l.y)&&w(l.prev,l,l.next)>=0)return!1;if(l=l.prevZ,h!==e.prev&&h!==e.next&&g(x.x,x.y,i.x,i.y,u.x,u.y,h.x,h.y)&&w(h.prev,h,h.next)>=0)return!1;h=h.nextZ}for(;l&&l.z>=p;){if(l!==e.prev&&l!==e.next&&g(x.x,x.y,i.x,i.y,u.x,u.y,l.x,l.y)&&w(l.prev,l,l.next)>=0)return!1;l=l.prevZ}for(;h&&h.z<=a;){if(h!==e.prev&&h!==e.next&&g(x.x,x.y,i.x,i.y,u.x,u.y,h.x,h.y)&&w(h.prev,h,h.next)>=0)return!1;h=h.nextZ}return!0}function u(e,n,r){var x=e;do{var i=x.prev,u=x.next.next;!M(i,u)&&z(i,x,x.next,u)&&j(i,u)&&j(u,i)&&(n.push(i.i/r),n.push(x.i/r),n.push(u.i/r),C(x),C(x.next),x=e=u),x=x.next}while(x!==e);return t(x)}function v(e,n,x,i,u,v){var f=e;do{for(var o=f.next.next;o!==f.prev;){if(f.i!==o.i&&d(f,o)){var y=A(f,o);return f=t(f,f.next),y=t(y,y.next),r(f,n,x,i,u,v),void r(y,n,x,i,u,v)}o=o.next}f=f.next}while(f!==e)}function f(e,r,x,i){var u,v,f,y=[];for(u=0,v=r.length;u=r.next.y&&r.next.y!==r.y){var v=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(v<=x&&v>u){if(u=v,v===x){if(i===r.y)return r;if(i===r.next.y)return r.next}t=r.x=r.x&&r.x>=y&&x!==r.x&&g(it.x||r.x===t.x&&l(t,r)))&&(t=r,a=f)),r=r.next}while(r!==o);return t}function l(e,n){return w(e.prev,e,n.prev)<0&&w(n.next,e,e.next)<0}function h(e,n,t,r){var x=e;do{null===x.z&&(x.z=c(x.x,x.y,n,t,r)),x.prevZ=x.prev,x.nextZ=x.next,x=x.next}while(x!==e);x.prevZ.nextZ=null,x.prevZ=null,s(x)}function s(e){var n,t,r,x,i,u,v,f,o=1;do{for(t=e,e=null,i=null,u=0;t;){for(u++,r=t,v=0,n=0;n0||f>0&&r;)0!==v&&(0===f||!r||t.z<=r.z)?(x=t,t=t.nextZ,v--):(x=r,r=r.nextZ,f--),i?i.nextZ=x:e=x,x.prevZ=i,i=x;t=r}i.nextZ=null,o*=2}while(u>1);return e}function c(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 Z(e){var n=e,t=e;do{(n.x=0&&(e-u)*(r-v)-(t-u)*(n-v)>=0&&(t-u)*(i-v)-(x-u)*(r-v)>=0}function d(e,n){return e.next.i!==n.i&&e.prev.i!==n.i&&!k(e,n)&&(j(e,n)&&j(n,e)&&q(e,n)&&(w(e.prev,e,n.prev)||w(e,n.prev,n))||M(e,n)&&w(e.prev,e,e.next)>0&&w(n.prev,n,n.next)>0)}function w(e,n,t){return(n.y-e.y)*(t.x-n.x)-(n.x-e.x)*(t.y-n.y)}function M(e,n){return e.x===n.x&&e.y===n.y}function z(e,n,t,r){var x=m(w(e,n,t)),i=m(w(e,n,r)),u=m(w(t,r,e)),v=m(w(t,r,n));return x!==i&&u!==v||!(0!==x||!b(e,t,n))||!(0!==i||!b(e,r,n))||!(0!==u||!b(t,e,r))||!(0!==v||!b(t,n,r))}function b(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 m(e){return e>0?1:e<0?-1:0}function k(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&&z(t,t.next,e,n))return!0;t=t.next}while(t!==e);return!1}function j(e,n){return w(e.prev,e,e.next)<0?w(e,n,e.next)>=0&&w(e,e.prev,n)>=0:w(e,n,e.prev)<0||w(e,e.next,n)<0}function q(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 A(e,n){var t=new D(e.i,e.x,e.y),r=new D(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 B(e,n,t,r){var x=new D(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 C(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 D(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 E(e,n,t,r){for(var x=0,i=n,u=t-r;i0&&(r+=e[x-1].length,t.holes.push(r))}return t},e},void 0!==(t=n())&&(e.exports=t);const x=r.exports;export{x as e};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/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.25/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../../../core/maybe.js\";import{f as e}from\"../../../../../chunks/vec4f32.js\";import{Pos2b as r}from\"../DefaultVertexAttributeLayouts.js\";import i from\"./WGLBrush.js\";import{background as o}from\"../shaders/BackgroundPrograms.js\";import{tileInfo as s}from\"../shaders/TileInfoPrograms.js\";import{BufferObject as n}from\"../../../../webgl/BufferObject.js\";import{BlendFactor as a,PrimitiveType as l,Usage as u,TextureType as m,PixelFormat as _,PixelType as f,TextureSamplingMode as h,TextureWrapMode as c}from\"../../../../webgl/enums.js\";import{createProgram as g}from\"../../../../webgl/ProgramTemplate.js\";import{Texture as d}from\"../../../../webgl/Texture.js\";import{VertexArrayObject as p}from\"../../../../webgl/VertexArrayObject.js\";const A=300,b=32;class x extends i{constructor(){super(...arguments),this._color=e(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(a.ONE,a.ONE_MINUS_SRC_ALPHA,a.ONE,a.ONE_MINUS_SRC_ALPHA),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!1)}draw(e,r){const{context:i,requestRender:o,allowDelayedRender:s}=e;if(!r.isReady)return;if(this._loadWGLResources(i),s&&t(o)&&(!this._outlineProgram.isCompiled||!this._tileInfoProgram.isCompiled))return void o();i.bindVAO(this._outlineVertexArrayObject),i.useProgram(this._outlineProgram),this._outlineProgram.setUniformMatrix3fv(\"u_dvsMat3\",r.transforms.dvs),this._outlineProgram.setUniform2f(\"u_coord_range\",r.rangeX,r.rangeY),this._outlineProgram.setUniform1f(\"u_depth\",0),this._outlineProgram.setUniform4fv(\"u_color\",this._color),i.drawArrays(l.LINE_STRIP,0,4);const n=this._getTexture(i,r);n?(i.bindVAO(this._tileInfoVertexArrayObject),i.useProgram(this._tileInfoProgram),i.bindTexture(n,0),this._tileInfoProgram.setUniformMatrix3fv(\"u_dvsMat3\",r.transforms.dvs),this._tileInfoProgram.setUniform1f(\"u_depth\",0),this._tileInfoProgram.setUniform2f(\"u_coord_ratio\",r.rangeX/r.width,r.rangeY/r.height),this._tileInfoProgram.setUniform2f(\"u_delta\",8,8),this._tileInfoProgram.setUniform2f(\"u_dimensions\",n.descriptor.width,n.descriptor.height),i.drawArrays(l.TRIANGLE_STRIP,0,4),i.bindVAO()):i.bindVAO()}_loadWGLResources(t){if(this._outlineProgram&&this._tileInfoProgram)return;const e=g(t,o),i=g(t,s),a=new Int8Array([0,0,1,0,1,1,0,1]),l=n.createVertex(t,u.STATIC_DRAW,a),m=new p(t,o.attributes,r,{geometry:l}),_=new Int8Array([0,0,1,0,0,1,1,1]),f=n.createVertex(t,u.STATIC_DRAW,_),h=new p(t,s.attributes,r,{geometry:f});this._outlineProgram=e,this._tileInfoProgram=i,this._outlineVertexArrayObject=m,this._tileInfoVertexArrayObject=h}_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\",`${A}`),this._canvas.setAttribute(\"height\",`${b}`),this._canvas.setAttribute(\"style\",\"display:none\"));const r=e.triangleCount;let i=e.key.id;e.triangleCount>0&&(i+=`, ${r}`);const o=this._canvas,s=o.getContext(\"2d\");return s.font=\"24px sans-serif\",s.textAlign=\"left\",s.textBaseline=\"top\",s.clearRect(0,0,A,b),r>1e5?(s.fillStyle=\"red\",s.fillRect(0,0,A,b),s.fillStyle=\"black\"):(s.clearRect(0,0,A,b),s.fillStyle=\"blue\"),s.fillText(i,0,0),e.texture=new d(t,{target:m.TEXTURE_2D,pixelFormat:_.RGBA,dataType:f.UNSIGNED_BYTE,samplingMode:h.NEAREST,wrapMode:c.CLAMP_TO_EDGE},o),e.texture}}export{x as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../core/maybe.js\";import{hasSource as t}from\"./RasterBitmap.js\";import r from\"../webgl/VertexStream.js\";import s from\"../webgl/brushes/WGLBrush.js\";import{BlendFactor as a,CompareFunction as i}from\"../../../webgl/enums.js\";import{setTextures as o,getCommonUniforms as n,setUniforms as h,getColormapUniforms as l,getStretchUniforms as c,getShadedReliefUniforms as d,getUniformLocationInfos as p,getBasicGridUniforms as u}from\"../../../webgl/rasterUtils.js\";class m extends s{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:e}){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(a.ONE,a.ONE_MINUS_SRC_ALPHA,a.ONE,a.ONE_MINUS_SRC_ALPHA),e.setColorMask(!0,!0,!0,!0),e.setStencilWriteMask(0),e.setStencilTestEnabled(!0)}draw(e,r){if(!t(r)||r.suspended)return;const{timeline:s,context:a,painter:o}=e;s.begin(this.name),a.setStencilFunction(i.EQUAL,r.stencilRef,255);const n=!a.capabilities.textureFloat?.textureFloatLinear;r.updateTexture(e);const h=this._getShaderVariations(r,n),l=o.materialManager.getProgram(this._desc[r.symbolizerParameters.type],h);this._drawWithProgram(e,l,r),s.end(this.name)}_drawWithProgram({context:t,requestRender:s,allowDelayedRender:a},i,p,m=1,f=[0,0],_=!1){if(this._quad||(this._quad=new r(t,[0,0,1,0,0,1,1,1])),a&&e(s)&&!i.isCompiled)return void s();const{symbolizerParameters:g,transformGrid:b,width:P,height:w,opacity:S}=p,x=g.type;t.useProgram(i);const y=this._getShaderVariations(p),M=this._getUniformInfos(x,t,i,y),{names:U,textures:j}=p.getTextures();o(t,i,U,j);const I=u(m,f),E=n(b,[P,w],[p.source.width,p.source.height],S,_);if(h(i,M,{u_coordScale:p.coordScale,u_dvsMat3:p.transforms.dvs,...I,...E}),g.colormap){const{colormap:e,colormapOffset:t}=g,r=l(e,t);h(i,M,r)}if(\"stretch\"===g.type){const e=c(g);h(i,M,e)}else if(\"hillshade\"===g.type){const e=d(g);h(i,M,e)}this._quad.draw()}_getUniformInfos(e,t,r,s){const a=s.length>0?e+\"-\"+s.join(\"-\"):e;if(this._rendererUniformInfos.has(a))return this._rendererUniformInfos.get(a);const i=p(t,r);return this._rendererUniformInfos.set(a,i),i}_getShaderVariations(e,t=!1){const r=[],{interpolation:s}=e,{type:a,colormap:i}=e.symbolizerParameters;return\"cubic\"===s?r.push(\"bicubic\"):\"bilinear\"===s&&\"stretch\"===a&&null!=i?(r.push(\"bilinear\"),r.push(\"nnedge\")):t&&\"bilinear\"===s&&r.push(\"bilinear\"),e.isRendereredSource?r.push(\"noop\"):i&&r.push(\"applyColormap\"),e.transformGrid&&(r.push(\"applyProjection\"),1===e.transformGrid.spacing[0]&&r.push(\"lookupProjection\")),r}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../../core/maybe.js\";import{TEXTURE_BINDING_BITMAP as t}from\"../definitions.js\";import i from\"../VertexStream.js\";import s from\"./WGLBrush.js\";import{TextureSamplingMode as n,BlendFactor as r,CompareFunction as a}from\"../../../../webgl/enums.js\";const o={nearest:{defines:[],samplingMode:n.NEAREST,mips:!1},bilinear:{defines:[],samplingMode:n.LINEAR,mips:!1},bicubic:{defines:[\"bicubic\"],samplingMode:n.LINEAR,mips:!1},trilinear:{defines:[],samplingMode:n.LINEAR_MIPMAP_LINEAR,mips:!0}},d=(e,t,i)=>{if(\"dynamic\"===i.samplingMode){const{state:i}=e,s=t.resolution/t.pixelRatio/i.resolution,n=Math.round(e.pixelRatio)!==e.pixelRatio,r=s>1.05||s<.95;return i.rotation||r||n||t.isSourceScaled||t.rotation?o.bilinear:o.nearest}return o[i.samplingMode]};class m extends s{constructor(){super(...arguments),this._desc={vsPath:\"raster/bitmap\",fsPath:\"raster/bitmap\",attributes:new Map([[\"a_pos\",0]])}}dispose(){this._quad&&this._quad.dispose()}prepareState({context:e}){e.setBlendingEnabled(!0),e.setColorMask(!0,!0,!0,!0),e.setStencilWriteMask(0),e.setStencilTestEnabled(!0)}draw(s,n){const{context:o,renderingOptions:m,painter:l,requestRender:c,allowDelayedRender:p}=s;if(!n.source||!n.isReady)return;const u=d(s,n,m),f=l.materialManager.getProgram(this._desc,u.defines);if(p&&e(c)&&!f.isCompiled)return void c();s.timeline.begin(this.name),\"additive\"===n.blendFunction?o.setBlendFunctionSeparate(r.ONE,r.ONE,r.ONE,r.ONE):o.setBlendFunctionSeparate(r.ONE,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA),o.setStencilFunction(a.EQUAL,n.stencilRef,255),this._quad||(this._quad=new i(o,[0,0,1,0,0,1,1,1]));const{coordScale:_,computedOpacity:E,transforms:M}=n;n.setSamplingProfile(u),n.bind(s.context,t),o.useProgram(f),f.setUniformMatrix3fv(\"u_dvsMat3\",M.dvs),f.setUniform1i(\"u_texture\",t),f.setUniform2fv(\"u_coordScale\",_),f.setUniform1f(\"u_opacity\",E),this._quad.draw(),s.timeline.end(this.name)}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isNone as r,isSome as e}from\"../../../../../core/maybe.js\";import{f as t}from\"../../../../../chunks/vec4f32.js\";import{createProgramDescriptor as s}from\"../Utils.js\";import o from\"./WGLBrush.js\";import{background as i}from\"../shaders/BackgroundPrograms.js\";import{StencilOperation as a,CompareFunction as m,PrimitiveType as n,DataType as p}from\"../../../../webgl/enums.js\";import{createProgram as l}from\"../../../../webgl/ProgramTemplate.js\";const c=()=>s(\"clip\",{geometry:[{location:0,name:\"a_pos\",count:2,type:p.SHORT}]});class d extends o{constructor(){super(...arguments),this._color=t(0,1,0,1)}dispose(){this._program&&this._program.dispose()}prepareState({context:r}){r.setStencilTestEnabled(!0),r.setBlendingEnabled(!1),r.setFaceCullingEnabled(!1),r.setColorMask(!1,!1,!1,!1),r.setStencilOp(a.KEEP,a.KEEP,a.REPLACE),r.setStencilWriteMask(255),r.setStencilFunction(m.ALWAYS,0,255)}draw(t,s){const{context:o,state:a,requestRender:m,allowDelayedRender:d}=t,f=c(),g=s.getVAO(o,a,f.attributes,f.bufferLayouts);r(g.indexBuffer)||(this._program||(this._program=l(o,i)),d&&e(m)&&!this._program.isCompiled?m():(o.useProgram(this._program),this._program.setUniform2fv(\"u_coord_range\",[1,1]),this._program.setUniform4fv(\"u_color\",this._color),this._program.setUniformMatrix3fv(\"u_dvsMat3\",a.displayMat3),o.bindVAO(g),o.drawElements(n.TRIANGLES,g.indexBuffer.size,p.UNSIGNED_INT,0),o.bindVAO()))}}export{d as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../../core/maybe.js\";import{TEXTURE_BINDING_BITMAP as t}from\"../definitions.js\";import{createProgramDescriptor as r}from\"../Utils.js\";import s from\"./WGLBrush.js\";import{BlendFactor as o,CompareFunction as n,PrimitiveType as a,DataType as i}from\"../../../../webgl/enums.js\";const m=()=>r(\"overlay\",{geometry:[{location:0,name:\"a_pos\",count:2,type:i.FLOAT}],tex:[{location:1,name:\"a_uv\",count:2,type:i.UNSIGNED_SHORT}]});class u extends s{constructor(){super(...arguments),this._desc={vsPath:\"overlay/overlay\",fsPath:\"overlay/overlay\",attributes:new Map([[\"a_pos\",0],[\"a_uv\",1]])}}dispose(){}prepareState({context:e}){e.setBlendingEnabled(!0),e.setColorMask(!0,!0,!0,!0),e.setBlendFunctionSeparate(o.ONE,o.ONE_MINUS_SRC_ALPHA,o.ONE,o.ONE_MINUS_SRC_ALPHA),e.setStencilWriteMask(0),e.setStencilTestEnabled(!0),e.setStencilFunction(n.GREATER,255,255)}draw(r,s){const{context:o,painter:n,requestRender:i,allowDelayedRender:u}=r;if(!s.isReady)return;const{computedOpacity:c,dvsMat3:d,isWrapAround:l,perspectiveTransform:p,texture:f}=s;r.timeline.begin(this.name);const _=n.materialManager.getProgram(this._desc);if(u&&e(i)&&!_.isCompiled)return void i();const v=m(),y=s.getVAO(o,v.bufferLayouts,v.attributes);if(!y)return;o.bindVAO(y),o.useProgram(_),o.bindTexture(f,t),_.setUniformMatrix3fv(\"u_dvsMat3\",d),_.setUniform1i(\"u_texture\",t),_.setUniform1f(\"u_opacity\",c),_.setUniform2fv(\"u_perspective\",p);const A=l?10:4;o.drawArrays(a.TRIANGLE_STRIP,0,A),o.bindVAO(),r.timeline.end(this.name)}}export{u as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isNone as t,isSome as e}from\"../../../../../core/maybe.js\";import{MIN_MAX_ZOOM_PRECISION_FACTOR as i,TEXTURE_BINDING_ATTRIBUTE_DATA_0 as s,TEXTURE_BINDING_ATTRIBUTE_DATA_1 as o,TEXTURE_BINDING_ATTRIBUTE_DATA_2 as a,TEXTURE_BINDING_ATTRIBUTE_DATA_3 as r,TEXTURE_BINDING_ATTRIBUTE_DATA_4 as n,TEXTURE_BINDING_ATTRIBUTE_DATA_5 as m}from\"../definitions.js\";import u from\"./WGLBrush.js\";import{MaterialKeyBase as v}from\"../materialKey/MaterialKey.js\";import{BlendFactor as f,CompareFunction as l}from\"../../../../webgl/enums.js\";class p extends u{constructor(){super(...arguments),this._computeDesc=new Map}prepareState({context:t},e){e&&e.includes(\"hittest\")?t.setBlendFunctionSeparate(f.ONE,f.ONE,f.ONE,f.ONE):t.setBlendFunctionSeparate(f.ONE,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA),t.setBlendingEnabled(!0),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!0)}draw(e,i,s){const o=this.getGeometryType();i.commit(e);const a=i.getGeometry(o);t(a)||(e.timeline.begin(this.name),e.attributeView.bindTextures(e.context),e.context.setStencilFunction(l.EQUAL,i.stencilRef,255),a.forEachCommand((t=>{const o=v.load(t.materialKey).symbologyType;this.supportsSymbology(o)&&this.drawGeometry(e,i,t,s)})))}_setSharedUniforms(t,u,v){const{displayLevel:f,pixelRatio:l,state:p,passOptions:c}=u;e(c)&&\"hittest\"===c.type&&(t.setUniform2fv(\"u_hittestPos\",c.position),t.setUniform1f(\"u_hittestDist\",c.distance)),t.setUniform1f(\"u_pixelRatio\",l),t.setUniformMatrix3fv(\"u_tileMat3\",v.transforms.tileMat3),t.setUniformMatrix3fv(\"u_viewMat3\",p.viewMat3),t.setUniformMatrix3fv(\"u_dvsMat3\",v.transforms.dvs),t.setUniformMatrix3fv(\"u_displayViewMat3\",p.displayViewMat3),t.setUniform1f(\"u_currentZoom\",Math.round(f*i)),t.setUniform1i(\"u_attributeTextureSize\",u.attributeView.size),t.setUniform1i(\"u_attributeData0\",s),t.setUniform1i(\"u_attributeData1\",o),t.setUniform1i(\"u_attributeData2\",a),t.setUniform1i(\"u_attributeData3\",r),t.setUniform1i(\"u_attributeData4\",n),t.setUniform1i(\"u_attributeData5\",m)}_setSizeVVUniforms(t,e,i,s){if(t.vvSizeMinMaxValue&&e.setUniform4fv(\"u_vvSizeMinMaxValue\",i.vvSizeMinMaxValue),t.vvSizeScaleStops&&e.setUniform1f(\"u_vvSizeScaleStopsValue\",i.vvSizeScaleStopsValue),t.vvSizeFieldStops){const t=i.getSizeVVFieldStops(s.key.level);e.setUniform1fv(\"u_vvSizeFieldStopsValues\",t.values),e.setUniform1fv(\"u_vvSizeFieldStopsSizes\",t.sizes)}t.vvSizeUnitValue&&e.setUniform1f(\"u_vvSizeUnitValueWorldToPixelsRatio\",i.vvSizeUnitValueToPixelsRatio)}_setColorAndOpacityVVUniforms(t,e,i){t.vvColor&&(e.setUniform1fv(\"u_vvColorValues\",i.vvColorValues),e.setUniform4fv(\"u_vvColors\",i.vvColors)),t.vvOpacity&&(e.setUniform1fv(\"u_vvOpacityValues\",i.vvOpacityValues),e.setUniform1fv(\"u_vvOpacities\",i.vvOpacities))}_setRotationVVUniforms(t,e,i){t.vvRotation&&e.setUniform1f(\"u_vvRotationType\",\"geographic\"===i.vvMaterialParameters.vvRotationType?0:1)}_getTriangleDesc(t,e,i=[\"a_pos\"]){const s=e.bufferLayouts.geometry,o=i.map((t=>s.findIndex((e=>e.name===t)))),a=`${t}-${o.join(\"-\")}`;let r=this._computeDesc.get(a);if(!r){const t=e.strides,i=e.strides.geometry,n=new Map(e.attributes),m=s.map((t=>({...t}))),u=Math.max(...e.attributes.values()),v={geometry:m};let f=0;for(const e of o){const t=s[e];v.geometry.push({count:t.count,name:t.name+\"1\",divisor:t.divisor,normalized:t.normalized,offset:i+t.offset,stride:i,type:t.type}),v.geometry.push({count:t.count,name:t.name+\"2\",divisor:t.divisor,normalized:t.normalized,offset:2*i+t.offset,stride:i,type:t.type}),n.set(t.name+\"1\",u+ ++f),n.set(t.name+\"2\",u+ ++f)}r={bufferLayouts:v,attributes:n,strides:t},this._computeDesc.set(a,r)}return r}}export{p as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e,unwrapOr as t}from\"../../../../../core/maybe.js\";import{WGLGeometryType as o,WGLSymbologyType as r}from\"../enums.js\";import{createProgramDescriptor as a}from\"../Utils.js\";import i from\"./WGLGeometryBrush.js\";import{FillMaterialKey as n}from\"../materialKey/MaterialKey.js\";import{getTechniqueFromMaterialKey as s}from\"../techniques/utils.js\";import{PrimitiveType as m,DataType as l}from\"../../../../webgl/enums.js\";function u(e){const t={geometry:[{location:0,name:\"a_pos\",count:2,type:l.SHORT},{location:1,name:\"a_id\",count:3,type:l.UNSIGNED_BYTE},{location:2,name:\"a_bitset\",count:1,type:l.UNSIGNED_BYTE},{location:3,name:\"a_color\",count:4,type:l.UNSIGNED_BYTE,normalized:!0},{location:4,name:\"a_aux1\",count:4,type:l.UNSIGNED_SHORT},{location:5,name:\"a_aux2\",count:4,type:l.SHORT},{location:6,name:\"a_aux3\",count:4,type:l.UNSIGNED_BYTE},{location:7,name:\"a_zoomRange\",count:2,type:l.UNSIGNED_SHORT}]};switch(e.symbologyType){case r.SIMPLE:case r.OUTLINE_FILL_SIMPLE:t.geometry.splice(7,1),t.geometry.splice(4,1)}return{shader:\"materials/fill\",vertexLayout:t}}class c extends i{dispose(){}getGeometryType(){return o.FILL}supportsSymbology(e){return e!==r.DOT_DENSITY}drawGeometry(o,r,i,l){const{context:c,painter:y,rendererInfo:p,requiredLevel:_,passOptions:d,requestRender:f,allowDelayedRender:E}=o,S=n.load(i.materialKey),g=s(S.data),N=e(d)&&\"hittest\"===d.type,T=y.materialManager,{shader:I,vertexLayout:U,hittestAttributes:x}=t(g.programSpec,u(S));let L=m.TRIANGLES,h=a(S.data,U);N&&(h=this._getTriangleDesc(i.materialKey,h,x),L=m.POINTS);const{attributes:G,bufferLayouts:O}=h,b=T.getMaterialProgram(o,S,I,G,l);if(E&&e(f)&&!b.isCompiled)return void f();if(c.useProgram(b),this._setSharedUniforms(b,o,r),b.setUniform2f(\"u_tileOffset\",512*r.key.col,512*r.key.row),S.textureBinding){y.textureManager.bindTextures(c,b,S);const e=1/2**(_-r.key.level);b.setUniform1f(\"u_zoomFactor\",e)}const D=1/o.pixelRatio;b.setUniform1f(\"u_blur\",D),b.setUniform1f(\"u_antialiasing\",D),this._setSizeVVUniforms(S,b,p,r),this._setColorAndOpacityVVUniforms(S,b,p);const R=i.target.getVAO(c,O,G,N);let w=i.indexCount,j=i.indexFrom*Uint32Array.BYTES_PER_ELEMENT;N&&(w/=3,j/=3),c.bindVAO(R),this._drawFills(o,r,b,L,w,j)}_drawFills(e,t,o,r,a,i){e.context.drawElements(r,a,l.UNSIGNED_INT,i)}}export{c as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{disposeMaybe as e,isSome as t,isNone as o}from\"../../../../../core/maybe.js\";import r from\"../../../../../core/RandomLCG.js\";import{TEXTURE_BINDING_RENDERER_0 as s,TEXTURE_BINDING_RENDERER_1 as i,TILE_SIZE as n}from\"../definitions.js\";import{WGLGeometryType as d,WGLSymbologyType as a}from\"../enums.js\";import l from\"./WGLGeometryBrushFill.js\";import{assertRendererSchema as _}from\"../techniques/utils.js\";import{BufferObject as u}from\"../../../../webgl/BufferObject.js\";import{DataType as m,PrimitiveType as h,TextureType as c,PixelFormat as f,PixelType as T,TextureSamplingMode as p,TextureWrapMode as x,TargetType as w,DepthStencilTargetType as D,RenderbufferFormat as y,Usage as g}from\"../../../../webgl/enums.js\";import{FramebufferObject as S}from\"../../../../webgl/FramebufferObject.js\";import{Renderbuffer as E}from\"../../../../webgl/Renderbuffer.js\";import{Texture as b}from\"../../../../webgl/Texture.js\";import{VertexArrayObject as F}from\"../../../../webgl/VertexArrayObject.js\";class O extends l{constructor(){super(...arguments),this._dotTextureSize=0,this._dotTextures=null,this._dotSamplers=new Int32Array([s,i]),this._dotVAO=null,this._dotDesc={vsPath:\"dot/dot\",fsPath:\"dot/dot\",attributes:new Map([[\"a_pos\",0]])}}dispose(){super.dispose(),this._disposeTextures(),this._dotFBO=e(this._dotFBO),this._dotVAO=e(this._dotVAO)}getGeometryType(){return d.FILL}supportsSymbology(e){return e===a.DOT_DENSITY}_drawFills(e,o,r,s,i,n){const{passOptions:d}=e;if(t(d)&&\"hittest\"===d.type)super._drawFills(e,o,r,s,i,n);else{const t=this._drawDotLocations(e,o,r,i,n);this._drawDotDensity(e,o,t)}}_drawDotDensity(e,o,r){const{context:s,painter:i,rendererInfo:n,requestRender:d,allowDelayedRender:a}=e,l=i.materialManager.getProgram(this._dotDesc);if(a&&t(d)&&!l.isCompiled)return void d();const{rendererSchema:u}=n;_(u,\"dot-density\");const c=this._createDotDensityMesh(s,this._dotDesc.attributes,{geometry:[{name:\"a_pos\",count:2,type:m.SHORT,divisor:0,normalized:!1,offset:0,stride:4}]});s.setStencilTestEnabled(!0),s.useProgram(l),l.setUniform1f(\"u_tileZoomFactor\",1),l.setUniform1i(\"u_texture\",this._dotSamplers[0]),l.setUniform1f(\"u_dotSize\",Math.max(u.dotSize,1)),l.setUniform1f(\"u_pixelRatio\",window.devicePixelRatio),this._setSharedUniforms(l,e,o),s.bindTexture(r,this._dotSamplers[0]),s.bindVAO(c),s.drawArrays(h.POINTS,0,262144)}_drawDotLocations(e,t,o,r,s){const{context:i,rendererInfo:d,requiredLevel:a}=e,l=i.getViewport(),{rendererSchema:u}=d;_(u,\"dot-density\");const{dotScale:c,colors:f,activeDots:T,backgroundColor:p,dotValue:x}=u;i.setViewport(0,0,512,512);const w=i.getBoundFramebufferObject(),D=this._createFBO(i);i.bindFramebuffer(D),i.setClearColor(0,0,0,0),i.clear(i.gl.COLOR_BUFFER_BIT|i.gl.STENCIL_BUFFER_BIT),i.setStencilTestEnabled(!1);const y=1/2**(a-t.key.level),g=n,S=g*window.devicePixelRatio*g*window.devicePixelRatio,E=1/y*(1/y),b=c?e.state.scale/c:1;return o.setUniform1f(\"u_tileZoomFactor\",y),o.setUniform1f(\"u_tileDotsOverArea\",S/(n*window.devicePixelRatio*n*window.devicePixelRatio)),o.setUniformMatrix4fv(\"u_dotColors\",f),o.setUniform4fv(\"u_isActive\",T),o.setUniform4fv(\"u_dotBackgroundColor\",p),o.setUniform1f(\"u_dotValue\",Math.max(1,x*b*E)),this._bindDotDensityTextures(i,o,d,g),i.drawElements(h.TRIANGLES,r,m.UNSIGNED_INT,s),i.setViewport(l.x,l.y,l.width,l.height),i.bindFramebuffer(w),D.colorTexture}_createFBO(e){if(o(this._dotFBO)){const t=512,o=512,r={target:c.TEXTURE_2D,pixelFormat:f.RGBA,dataType:T.UNSIGNED_BYTE,samplingMode:p.NEAREST,wrapMode:x.CLAMP_TO_EDGE,width:t,height:o},s={colorTarget:w.TEXTURE,depthStencilTarget:D.DEPTH_STENCIL_RENDER_BUFFER},i=new E(e,{width:t,height:o,internalFormat:y.DEPTH_STENCIL});this._dotFBO=new S(e,s,r,i)}return this._dotFBO}_disposeTextures(){if(this._dotTextures){for(let e=0;es?2:1,R=e.drawPhase===a.HITTEST,k=this._programOptions;k.id=R,k.pattern=j;const T=y.getMaterialProgram(c,v,k);if(d&&r(_)&&!T.isCompiled)_();else{if(c.bindVAO(this._vao),c.useProgram(T),j){const t=L.getMosaicItemPosition(x,!0);if(r(t)){const{tl:e,br:o,page:s}=t;A=o[0]-e[0],P=o[1]-e[1];const a=L.getPageSize(s);r(a)&&(L.bind(c,f.LINEAR,s,i),T.setUniform4f(\"u_tlbr\",e[0],e[1],o[0],o[1]),T.setUniform2fv(\"u_mosaicSize\",a),T.setUniform1i(\"u_texture\",i))}T.setUniform1f(\"u_opacity\",M)}else this._color[0]=U*b[0],this._color[1]=U*b[1],this._color[2]=U*b[2],this._color[3]=U,T.setUniform4fv(\"u_color\",this._color);if(T.setUniform1f(\"u_depth\",g.z||0),R){const t=n(p+1);T.setUniform4fv(\"u_id\",t)}for(const r of o){if(T.setUniform1f(\"u_coord_range\",r.rangeX),T.setUniformMatrix3fv(\"u_dvsMat3\",r.transforms.dvs),j){const e=Math.max(2**(Math.round(h)-r.key.level),1),o=I*r.width*e,i=o/t(A),s=o/t(P);this._patternMatrix[0]=i,this._patternMatrix[4]=s,T.setUniformMatrix3fv(\"u_pattern_matrix\",this._patternMatrix)}c.setStencilFunction(l.EQUAL,0,255),c.drawArrays(u.TRIANGLE_STRIP,0,4)}}}_loadWGLResources(t){if(this._vao)return;const{context:r,styleLayer:e}=t,o=e.backgroundMaterial,i=new Int8Array([0,0,1,0,0,1,1,1]),s=m.createVertex(r,p.STATIC_DRAW,i),a=new _(r,o.getAttributeLocations(),o.getLayoutInfo(),{geometry:s});this._vao=a}}export{d as WGLBrushVTLBackground};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../../../core/maybe.js\";import{TranslateAnchor as r}from\"../../vectorTiles/style/StyleDefinition.js\";import{WGLDrawPhase as i}from\"../enums.js\";import{u32to4Xu8 as a}from\"../number.js\";import n from\"./WGLBrush.js\";import{CompareFunction as s,PrimitiveType as o,DataType as l}from\"../../../../webgl/enums.js\";class c extends n{constructor(){super(...arguments),this._programOptions={id:!1}}dispose(){}drawMany(n,c){const{context:m,displayLevel:d,requiredLevel:f,state:u,drawPhase:p,painter:y,spriteMosaic:g,styleLayerUID:v,requestRender:E,allowDelayedRender:M}=n;if(!c.some((e=>e.layerData.get(v)?.circleIndexCount??!1)))return;const T=n.styleLayer,x=T.circleMaterial,I=y.vectorTilesMaterialManager,U=1.2,_=T.getPaintValue(\"circle-translate\",d),R=T.getPaintValue(\"circle-translate-anchor\",d),h=p===i.HITTEST,D=this._programOptions;D.id=h;const L=I.getMaterialProgram(m,x,D);if(M&&e(E)&&!L.isCompiled)return void E();m.useProgram(L),L.setUniformMatrix3fv(\"u_displayMat3\",R===r.VIEWPORT?u.displayMat3:u.displayViewMat3),L.setUniform2fv(\"u_circleTranslation\",_),L.setUniform1f(\"u_depth\",T.z),L.setUniform1f(\"u_antialiasingWidth\",U);let S=-1;if(h){const e=a(v+1);L.setUniform4fv(\"u_id\",e)}for(const e of c){if(!e.layerData.has(v))continue;e.key.level!==S&&(S=e.key.level,x.setDataUniforms(L,d,T,S,g));const r=e.layerData.get(v);if(!r.circleIndexCount)continue;r.prepareForRendering(m);const i=r.circleVertexArrayObject;t(i)||(m.bindVAO(i),L.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),f!==e.key.level?m.setStencilFunction(s.EQUAL,e.stencilRef,255):m.setStencilFunction(s.GREATER,255,255),m.drawElements(o.TRIANGLES,r.circleIndexCount,l.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*r.circleIndexStart),e.triangleCount+=r.circleIndexCount/3)}}}export{c as WGLBrushVTLCircle};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isNone as t,isSome as e}from\"../../../../../core/maybe.js\";import{TranslateAnchor as i}from\"../../vectorTiles/style/StyleDefinition.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as r,VTL_HIGH_RES_CUTOFF as a}from\"../definitions.js\";import{WGLDrawPhase as n}from\"../enums.js\";import{u32to4Xu8 as o}from\"../number.js\";import l from\"./WGLBrush.js\";import{TextureSamplingMode as s,CompareFunction as f,PrimitiveType as u,DataType as d}from\"../../../../webgl/enums.js\";const c=1/65536;class m extends l{constructor(){super(...arguments),this._fillProgramOptions={id:!1,pattern:!1},this._outlineProgramOptions={id:!1}}dispose(){}drawMany(t,e){const{displayLevel:i,drawPhase:r,renderPass:a,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,d=u.getPaintProperty(\"fill-pattern\"),c=void 0!==d,m=c&&d.isDataDriven;let p;if(c&&!m){const t=d.getValue(i);p=l.getMosaicItemPosition(t,!0)}const y=!c&&u.getPaintValue(\"fill-antialias\",i);let g=!0,_=1;if(!c){const t=u.getPaintProperty(\"fill-color\"),e=u.getPaintProperty(\"fill-opacity\");if(!t?.isDataDriven&&!e?.isDataDriven){const t=u.getPaintValue(\"fill-color\",i);_=u.getPaintValue(\"fill-opacity\",i)*t[3],_>=1&&(g=!1)}}if(g&&\"opaque\"===a)return;let E;r===n.HITTEST&&(E=o(s+1));const v=u.getPaintValue(\"fill-translate\",i),M=u.getPaintValue(\"fill-translate-anchor\",i);(g||\"translucent\"!==a)&&this._drawFill(t,s,u,e,v,M,c,p,m,E);const P=!u.hasDataDrivenOutlineColor&&u.outlineUsesFillColor&&_<1;y&&\"opaque\"!==a&&!P&&this._drawOutline(t,s,u,e,v,M,E)}_drawFill(o,l,m,p,y,g,_,E,v,M){if(_&&!v&&t(E))return;const{context:P,displayLevel:I,state:T,drawPhase:U,painter:x,pixelRatio:D,spriteMosaic:h,requestRender:S,allowDelayedRender:R}=o,w=m.fillMaterial,N=x.vectorTilesMaterialManager,L=D>a?2:1,A=U===n.HITTEST,C=this._fillProgramOptions;C.id=A,C.pattern=_;const V=N.getMaterialProgram(P,w,C);if(R&&e(S)&&!V.isCompiled)return void S();if(P.useProgram(V),e(E)){const{page:t}=E,i=h.getPageSize(t);e(i)&&(h.bind(P,s.LINEAR,t,r),V.setUniform2fv(\"u_mosaicSize\",i),V.setUniform1i(\"u_texture\",r))}V.setUniformMatrix3fv(\"u_displayMat3\",g===i.VIEWPORT?T.displayMat3:T.displayViewMat3),V.setUniform2fv(\"u_fillTranslation\",y),V.setUniform1f(\"u_depth\",m.z+c),A&&V.setUniform4fv(\"u_id\",M);let O=-1;for(const i of p){if(!i.layerData.has(l))continue;i.key.level!==O&&(O=i.key.level,w.setDataUniforms(V,I,m,O,h));const a=i.layerData.get(l);if(!a.fillIndexCount)continue;a.prepareForRendering(P);const n=a.fillVertexArrayObject;if(!t(n)){if(P.bindVAO(n),V.setUniformMatrix3fv(\"u_dvsMat3\",i.transforms.dvs),P.setStencilFunction(f.EQUAL,i.stencilRef,255),_){const t=Math.max(2**(Math.round(I)-i.key.level),1),e=i.rangeX/(L*i.width*t);V.setUniform1f(\"u_patternFactor\",e)}if(v){const t=a.patternMap;if(!t)continue;for(const[i,a]of t){const t=h.getPageSize(i);e(t)&&(h.bind(P,s.LINEAR,i,r),V.setUniform2fv(\"u_mosaicSize\",t),V.setUniform1i(\"u_texture\",r),P.drawElements(u.TRIANGLES,a[1],d.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*a[0]))}}else P.drawElements(u.TRIANGLES,a.fillIndexCount,d.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*a.fillIndexStart);i.triangleCount+=a.fillIndexCount/3}}}_drawOutline(r,a,o,l,s,m,p){const{context:y,displayLevel:g,state:_,drawPhase:E,painter:v,pixelRatio:M,spriteMosaic:P,requestRender:I,allowDelayedRender:T}=r,U=o.outlineMaterial,x=v.vectorTilesMaterialManager,D=.75/M,h=E===n.HITTEST,S=this._outlineProgramOptions;S.id=h;const R=x.getMaterialProgram(y,U,S);if(T&&e(I)&&!R.isCompiled)return void I();y.useProgram(R),R.setUniformMatrix3fv(\"u_displayMat3\",m===i.VIEWPORT?_.displayMat3:_.displayViewMat3),R.setUniform2fv(\"u_fillTranslation\",s),R.setUniform1f(\"u_depth\",o.z+c),R.setUniform1f(\"u_outline_width\",D),h&&R.setUniform4fv(\"u_id\",p);let w=-1;for(const e of l){if(!e.layerData.has(a))continue;e.key.level!==w&&(w=e.key.level,U.setDataUniforms(R,g,o,w,P));const i=e.layerData.get(a);if(i.prepareForRendering(y),!i.outlineIndexCount)continue;const r=i.outlineVertexArrayObject;t(r)||(y.bindVAO(r),R.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),y.setStencilFunction(f.EQUAL,e.stencilRef,255),y.drawElements(u.TRIANGLES,i.outlineIndexCount,d.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*i.outlineIndexStart),e.triangleCount+=i.outlineIndexCount/3)}}}export{m as WGLBrushVTLFill};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../../../core/maybe.js\";import{TranslateAnchor as i}from\"../../vectorTiles/style/StyleDefinition.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as n}from\"../definitions.js\";import{WGLDrawPhase as r}from\"../enums.js\";import{u32to4Xu8 as a}from\"../number.js\";import o from\"./WGLBrush.js\";import{TextureSamplingMode as s,CompareFunction as l,PrimitiveType as f,DataType as m}from\"../../../../webgl/enums.js\";class u extends o{constructor(){super(...arguments),this._programOptions={id:!1,pattern:!1,sdf:!1}}dispose(){}drawMany(o,u){const{context:c,displayLevel:d,state:p,drawPhase:y,painter:g,pixelRatio:E,spriteMosaic:M,styleLayerUID:_,requestRender:v,allowDelayedRender:U}=o;if(!u.some((e=>e.layerData.get(_)?.lineIndexCount??!1)))return;const I=o.styleLayer,P=I.lineMaterial,x=g.vectorTilesMaterialManager,T=I.getPaintValue(\"line-translate\",d),D=I.getPaintValue(\"line-translate-anchor\",d),S=I.getPaintProperty(\"line-pattern\"),L=void 0!==S,N=L&&S.isDataDriven;let R,V;if(L&&!N){const e=S.getValue(d);R=M.getMosaicItemPosition(e)}let h=!1;if(!L){const e=I.getPaintProperty(\"line-dasharray\");if(V=void 0!==e,h=V&&e.isDataDriven,V&&!h){const t=e.getValue(d),i=I.getDashKey(t,I.getLayoutValue(\"line-cap\",d));R=M.getMosaicItemPosition(i)}}const w=1/E,A=y===r.HITTEST,j=this._programOptions;j.id=A,j.pattern=L,j.sdf=V;const b=x.getMaterialProgram(c,P,j);if(U&&e(v)&&!b.isCompiled)return void v();if(c.useProgram(b),b.setUniformMatrix3fv(\"u_displayViewMat3\",p.displayViewMat3),b.setUniformMatrix3fv(\"u_displayMat3\",D===i.VIEWPORT?p.displayMat3:p.displayViewMat3),b.setUniform2fv(\"u_lineTranslation\",T),b.setUniform1f(\"u_depth\",I.z),b.setUniform1f(\"u_antialiasing\",w),A){const e=a(_+1);b.setUniform4fv(\"u_id\",e)}if(R&&e(R)){const{page:t}=R,i=M.getPageSize(t);e(i)&&(M.bind(c,s.LINEAR,t,n),b.setUniform2fv(\"u_mosaicSize\",i),b.setUniform1i(\"u_texture\",n))}let z=-1;for(const i of u){if(!i.layerData.has(_))continue;i.key.level!==z&&(z=i.key.level,P.setDataUniforms(b,d,I,z,M));const r=2**(d-z)/E;b.setUniform1f(\"u_zoomFactor\",r);const a=i.layerData.get(_);if(!a.lineIndexCount)continue;a.prepareForRendering(c);const o=a.lineVertexArrayObject;if(!t(o)){if(c.bindVAO(o),b.setUniformMatrix3fv(\"u_dvsMat3\",i.transforms.dvs),c.setStencilFunction(l.EQUAL,i.stencilRef,255),N||h){const t=a.patternMap;if(!t)continue;for(const[i,r]of t){const t=M.getPageSize(i);e(t)&&(M.bind(c,s.LINEAR,i,n),b.setUniform2fv(\"u_mosaicSize\",t),b.setUniform1i(\"u_texture\",n),c.drawElements(f.TRIANGLES,r[1],m.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*r[0]))}}else c.drawElements(f.TRIANGLES,a.lineIndexCount,m.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*a.lineIndexStart);i.triangleCount+=a.lineIndexCount/3}}}}export{u as WGLBrushVTLLine};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../../../core/maybe.js\";import{c as i,f as a}from\"../../../../../chunks/vec2f32.js\";import{FADE_DURATION as r}from\"../../vectorTiles/decluttering/config.js\";import{RotationAlignment as s,SymbolPlacement as n,TranslateAnchor as o}from\"../../vectorTiles/style/StyleDefinition.js\";import{VTL_TEXTURE_BINDING_UNIT_SPRITES as l,VTL_TEXTURE_BINDING_UNIT_GLYPHS as f}from\"../definitions.js\";import{WGLDrawPhase as u}from\"../enums.js\";import{degToByte as m}from\"../GeometryUtils.js\";import{u32to4Xu8 as p}from\"../number.js\";import c from\"./WGLBrush.js\";import{TextureSamplingMode as d,CompareFunction as y,PrimitiveType as g,DataType as _}from\"../../../../webgl/enums.js\";const h=1/65536;class M extends c{constructor(){super(...arguments),this._iconProgramOptions={id:!1,sdf:!1},this._sdfProgramOptions={id:!1},this._spritesTextureSize=i()}dispose(){}drawMany(e,t){const{drawPhase:i,styleLayerUID:a}=e,r=e.styleLayer;let s;i===u.HITTEST&&(s=p(a+1)),this._drawIcons(e,r,t,s),this._drawText(e,r,t,s)}_drawIcons(i,a,f,p){const{context:c,displayLevel:d,drawPhase:y,painter:g,spriteMosaic:_,state:h,styleLayerUID:M,requestRender:P,allowDelayedRender:T}=i,U=a.iconMaterial,E=g.vectorTilesMaterialManager;let x,v=!1;for(const e of f)if(e.layerData.has(M)&&(x=e.layerData.get(M),x.iconPerPageElementsMap.size>0)){v=!0;break}if(!v)return;const D=a.getPaintValue(\"icon-translate\",d),I=a.getPaintValue(\"icon-translate-anchor\",d);let R=a.getLayoutValue(\"icon-rotation-alignment\",d);R===s.AUTO&&(R=a.getLayoutValue(\"symbol-placement\",d)===n.POINT?s.VIEWPORT:s.MAP);const S=R===s.MAP,V=a.getLayoutValue(\"icon-keep-upright\",d)&&S,w=x.isIconSDF,A=y===u.HITTEST,L=this._iconProgramOptions;L.id=A,L.sdf=w;const O=E.getMaterialProgram(c,U,L);if(T&&e(P)&&!O.isCompiled)return void P();c.useProgram(O),O.setUniformMatrix3fv(\"u_displayViewMat3\",R===s.MAP?h.displayViewMat3:h.displayMat3),O.setUniformMatrix3fv(\"u_displayMat3\",I===o.VIEWPORT?h.displayMat3:h.displayViewMat3),O.setUniform2fv(\"u_iconTranslation\",D),O.setUniform1f(\"u_depth\",a.z),O.setUniform1f(\"u_mapRotation\",m(h.rotation)),O.setUniform1f(\"u_keepUpright\",V?1:0),O.setUniform1f(\"u_level\",10*d),O.setUniform1i(\"u_texture\",l),O.setUniform1f(\"u_fadeDuration\",r/1e3),A&&O.setUniform4fv(\"u_id\",p);let N=-1;for(const e of f){if(!e.layerData.has(M))continue;if(e.key.level!==N&&(N=e.key.level,U.setDataUniforms(O,d,a,N,_)),x=e.layerData.get(M),0===x.iconPerPageElementsMap.size)continue;x.prepareForRendering(c),x.updateOpacityInfo();const r=x.iconVertexArrayObject;if(!t(r)){c.bindVAO(r),O.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),O.setUniform1f(\"u_time\",(performance.now()-x.lastOpacityUpdate)/1e3);for(const[t,a]of x.iconPerPageElementsMap)this._renderIconRange(i,O,a,t,e)}}}_renderIconRange(e,t,i,a,r){const{context:s,spriteMosaic:n}=e;this._spritesTextureSize[0]=n.getWidth(a)/4,this._spritesTextureSize[1]=n.getHeight(a)/4,t.setUniform2fv(\"u_mosaicSize\",this._spritesTextureSize),n.bind(s,d.LINEAR,a,l),s.setStencilTestEnabled(!0),s.setStencilFunction(y.GREATER,255,255),s.setStencilWriteMask(0),s.drawElements(g.TRIANGLES,i[1],_.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*i[0]),r.triangleCount+=i[1]/3}_drawText(i,l,p,c){const{context:d,displayLevel:g,drawPhase:_,glyphMosaic:M,painter:P,pixelRatio:T,spriteMosaic:U,state:E,styleLayerUID:x,requestRender:v,allowDelayedRender:D}=i,I=l.textMaterial,R=P.vectorTilesMaterialManager;let S,V=!1;for(const e of p)if(e.layerData.has(x)&&(S=e.layerData.get(x),S.glyphPerPageElementsMap.size>0)){V=!0;break}if(!V)return;const w=l.getPaintProperty(\"text-opacity\");if(w&&!w.isDataDriven&&0===w.getValue(g))return;const A=l.getPaintProperty(\"text-color\"),L=!A||A.isDataDriven||A.getValue(g)[3]>0,O=l.getPaintProperty(\"text-halo-width\"),N=l.getPaintProperty(\"text-halo-color\"),b=(!O||O.isDataDriven||O.getValue(g)>0)&&(!N||N.isDataDriven||N.getValue(g)[3]>0);if(!L&&!b)return;const z=24/8;let k=l.getLayoutValue(\"text-rotation-alignment\",g);k===s.AUTO&&(k=l.getLayoutValue(\"symbol-placement\",g)===n.POINT?s.VIEWPORT:s.MAP);const j=k===s.MAP,G=l.getLayoutValue(\"text-keep-upright\",g)&&j,W=_===u.HITTEST,C=.8*z/T;this._glyphTextureSize||(this._glyphTextureSize=a(M.width/4,M.height/4));const F=l.getPaintValue(\"text-translate\",g),B=l.getPaintValue(\"text-translate-anchor\",g),H=this._sdfProgramOptions;H.id=W;const Y=R.getMaterialProgram(d,I,H);if(D&&e(v)&&!Y.isCompiled)return void v();d.useProgram(Y),Y.setUniformMatrix3fv(\"u_displayViewMat3\",k===s.MAP?E.displayViewMat3:E.displayMat3),Y.setUniformMatrix3fv(\"u_displayMat3\",B===o.VIEWPORT?E.displayMat3:E.displayViewMat3),Y.setUniform2fv(\"u_textTranslation\",F),Y.setUniform1f(\"u_depth\",l.z+h),Y.setUniform2fv(\"u_mosaicSize\",this._glyphTextureSize),Y.setUniform1f(\"u_mapRotation\",m(E.rotation)),Y.setUniform1f(\"u_keepUpright\",G?1:0),Y.setUniform1f(\"u_level\",10*g),Y.setUniform1i(\"u_texture\",f),Y.setUniform1f(\"u_antialiasingWidth\",C),Y.setUniform1f(\"u_fadeDuration\",r/1e3),W&&Y.setUniform4fv(\"u_id\",c);let q=-1;for(const e of p){if(!e.layerData.has(x))continue;if(e.key.level!==q&&(q=e.key.level,I.setDataUniforms(Y,g,l,q,U)),S=e.layerData.get(x),0===S.glyphPerPageElementsMap.size)continue;S.prepareForRendering(d),S.updateOpacityInfo();const i=S.textVertexArrayObject;if(t(i))continue;d.bindVAO(i),Y.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),d.setStencilTestEnabled(!0),d.setStencilFunction(y.GREATER,255,255),d.setStencilWriteMask(0);const a=(performance.now()-S.lastOpacityUpdate)/1e3;Y.setUniform1f(\"u_time\",a),S.glyphPerPageElementsMap.forEach(((t,i)=>{this._renderGlyphRange(d,t,i,M,Y,b,L,e)}))}}_renderGlyphRange(e,t,i,a,r,s,n,o){a.bind(e,d.LINEAR,i,f),s&&(r.setUniform1f(\"u_halo\",1),e.drawElements(g.TRIANGLES,t[1],_.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*t[0]),o.triangleCount+=t[1]/3),n&&(r.setUniform1f(\"u_halo\",0),e.drawElements(g.TRIANGLES,t[1],_.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*t[0]),o.triangleCount+=t[1]/3)}}export{M as WGLBrushVTLSymbol};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../../core/maybe.js\";import{WGLGeometryType as t}from\"../enums.js\";import{createProgramDescriptor as o}from\"../Utils.js\";import a from\"./WGLGeometryBrush.js\";import{LabelMaterialKey as n}from\"../materialKey/MaterialKey.js\";import{CompareFunction as r,PrimitiveType as i,DataType as s}from\"../../../../webgl/enums.js\";const m=e=>o(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:s.SHORT},{location:1,name:\"a_id\",count:4,type:s.UNSIGNED_BYTE},{location:2,name:\"a_color\",count:4,type:s.UNSIGNED_BYTE,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:s.UNSIGNED_BYTE,normalized:!0},{location:4,name:\"a_texAndSize\",count:4,type:s.UNSIGNED_BYTE},{location:5,name:\"a_refSymbolAndPlacementOffset\",count:4,type:s.UNSIGNED_BYTE},{location:6,name:\"a_glyphData\",count:4,type:s.UNSIGNED_BYTE},{location:7,name:\"a_vertexOffset\",count:2,type:s.SHORT},{location:8,name:\"a_texCoords\",count:2,type:s.UNSIGNED_SHORT}]});class l extends a{dispose(){}getGeometryType(){return t.LABEL}supportsSymbology(e){return!0}drawGeometry(t,o,a,l){const{context:d,painter:u,state:c,rendererInfo:f,requestRender:p,allowDelayedRender:y}=t,_=n.load(a.materialKey),E=_.mapAligned?1:0;if(!E&&Math.abs(o.key.level-Math.round(100*t.displayLevel)/100)>=1)return;const{bufferLayouts:N,attributes:S}=m(_),U=u.materialManager.getMaterialProgram(t,_,\"materials/label\",S,l);if(y&&e(p)&&!U.isCompiled)return void p();t.context.setStencilFunction(r.EQUAL,0,255),d.useProgram(U),this._setSharedUniforms(U,t,o),u.textureManager.bindTextures(d,U,_);const T=1===E?c.displayViewMat3:c.displayMat3;this._setSizeVVUniforms(_,U,f,o),U.setUniform1f(\"u_mapRotation\",Math.floor(c.rotation/360*254)),U.setUniform1f(\"u_mapAligned\",E),U.setUniformMatrix3fv(\"u_displayMat3\",T),U.setUniform1f(\"u_opacity\",1),U.setUniform2fv(\"u_screenSize\",t.state.size),U.setUniform1f(\"u_isHalo\",1);const g=a.target.getVAO(d,N,S),G=a.indexFrom*Uint32Array.BYTES_PER_ELEMENT;d.bindVAO(g),d.drawElements(i.TRIANGLES,a.indexCount,s.UNSIGNED_INT,G),U.setUniform1f(\"u_isHalo\",0),d.drawElements(i.TRIANGLES,a.indexCount,s.UNSIGNED_INT,G),d.setStencilTestEnabled(!0),d.setBlendingEnabled(!0)}}export{l as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../../core/maybe.js\";import{WGLGeometryType as t}from\"../enums.js\";import{createProgramDescriptor as o}from\"../Utils.js\";import a from\"./WGLGeometryBrush.js\";import{LineMaterialKey as n}from\"../materialKey/MaterialKey.js\";import{PrimitiveType as r,DataType as i}from\"../../../../webgl/enums.js\";const s=e=>o(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:i.SHORT},{location:1,name:\"a_id\",count:4,type:i.UNSIGNED_BYTE},{location:2,name:\"a_color\",count:4,type:i.UNSIGNED_BYTE,normalized:!0},{location:3,name:\"a_offsetAndNormal\",count:4,type:i.BYTE},{location:4,name:\"a_accumulatedDistanceAndHalfWidth\",count:2,type:i.UNSIGNED_SHORT},{location:5,name:\"a_tlbr\",count:4,type:i.UNSIGNED_SHORT},{location:6,name:\"a_segmentDirection\",count:4,type:i.BYTE},{location:7,name:\"a_aux\",count:2,type:i.UNSIGNED_SHORT},{location:8,name:\"a_zoomRange\",count:2,type:i.UNSIGNED_SHORT}]});class m extends a{dispose(){}getGeometryType(){return t.LINE}supportsSymbology(e){return!0}drawGeometry(t,o,a,m){const{context:l,painter:c,rendererInfo:u,displayLevel:p,passOptions:d,requestRender:y,allowDelayedRender:_}=t,f=n.load(a.materialKey),E=e(d)&&\"hittest\"===d.type;let N=s(f),g=r.TRIANGLES;E&&(N=this._getTriangleDesc(a.materialKey,N),g=r.POINTS);const{attributes:S,bufferLayouts:T}=N,U=c.materialManager.getMaterialProgram(t,f,\"materials/line\",S,m);if(_&&e(y)&&!U.isCompiled)return void y();const G=1/t.pixelRatio,I=0;l.useProgram(U),this._setSharedUniforms(U,t,o),f.textureBinding&&c.textureManager.bindTextures(l,U,f);const D=2**(p-o.key.level);U.setUniform1f(\"u_zoomFactor\",D),U.setUniform1f(\"u_blur\",I+G),U.setUniform1f(\"u_antialiasing\",G),this._setSizeVVUniforms(f,U,u,o),this._setColorAndOpacityVVUniforms(f,U,u),l.setFaceCullingEnabled(!1);const R=a.target.getVAO(l,T,S,E);let b=a.indexCount,x=a.indexFrom*Uint32Array.BYTES_PER_ELEMENT;E&&(b/=3,x/=3),l.bindVAO(R),l.drawElements(g,b,i.UNSIGNED_INT,x)}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../../../core/maybe.js\";import{WGLGeometryType as e}from\"../enums.js\";import{createProgramDescriptor as o}from\"../Utils.js\";import a from\"./WGLGeometryBrush.js\";import{TextMaterialKey as r}from\"../materialKey/MaterialKey.js\";import{PrimitiveType as n,DataType as i}from\"../../../../webgl/enums.js\";const s=t=>o(t.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:i.SHORT},{location:1,name:\"a_id\",count:4,type:i.UNSIGNED_BYTE},{location:2,name:\"a_color\",count:4,type:i.UNSIGNED_BYTE,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:i.UNSIGNED_BYTE,normalized:!0},{location:4,name:\"a_texFontSize\",count:4,type:i.UNSIGNED_BYTE},{location:5,name:\"a_aux\",count:4,type:i.BYTE},{location:6,name:\"a_zoomRange\",count:2,type:i.UNSIGNED_SHORT},{location:7,name:\"a_vertexOffset\",count:2,type:i.SHORT},{location:8,name:\"a_texCoords\",count:2,type:i.UNSIGNED_SHORT}]});class m extends a{dispose(){}getGeometryType(){return e.TEXT}supportsSymbology(t){return!0}drawGeometry(e,o,a,m){const{context:l,painter:p,rendererInfo:u,state:d,passOptions:y,requestRender:_,allowDelayedRender:c}=e,f=r.load(a.materialKey),E=t(y)&&\"hittest\"===y.type,{bufferLayouts:N,attributes:S}=s(f),T=p.materialManager.getMaterialProgram(e,f,\"materials/text\",S,m);if(c&&t(_)&&!T.isCompiled)return void _();l.useProgram(T);let U=n.TRIANGLES;E&&(U=n.POINTS),this._setSharedUniforms(T,e,o),p.textureManager.bindTextures(l,T,f),T.setUniformMatrix3fv(\"u_displayMat3\",d.displayMat3),T.setUniformMatrix3fv(\"u_displayViewMat3\",d.displayViewMat3),this._setSizeVVUniforms(f,T,u,o),this._setColorAndOpacityVVUniforms(f,T,u),this._setRotationVVUniforms(f,T,u),T.setUniform1f(\"u_isHalo\",1);const x=a.target.getVAO(l,N,S),G=a.indexFrom*Uint32Array.BYTES_PER_ELEMENT;l.bindVAO(x),l.drawElements(n.TRIANGLES,a.indexCount,i.UNSIGNED_INT,G),T.setUniform1f(\"u_isHalo\",0),l.drawElements(U,a.indexCount,i.UNSIGNED_INT,G)}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport r from\"./flow/BrushFlow.js\";import s from\"./imagery/BrushRasterBitmap.js\";import e from\"./imagery/BrushVectorField.js\";import o from\"./webgl/brushes/BrushBitmap.js\";import m from\"./webgl/brushes/BrushClip.js\";import t from\"./webgl/brushes/BrushOverlay.js\";import l from\"./webgl/brushes/WGLBrushDotDensity.js\";import i from\"./webgl/brushes/WGLBrushHeatmap.js\";import h from\"./webgl/brushes/WGLBrushInfo.js\";import b from\"./webgl/brushes/WGLBrushPieChart.js\";import u from\"./webgl/brushes/WGLBrushStencil.js\";import{WGLBrushVTLBackground as p}from\"./webgl/brushes/WGLBrushVTLBackground.js\";import{WGLBrushVTLCircle as f}from\"./webgl/brushes/WGLBrushVTLCircle.js\";import{WGLBrushVTLFill as B}from\"./webgl/brushes/WGLBrushVTLFill.js\";import{WGLBrushVTLLine as L}from\"./webgl/brushes/WGLBrushVTLLine.js\";import{WGLBrushVTLSymbol as a}from\"./webgl/brushes/WGLBrushVTLSymbol.js\";import g from\"./webgl/brushes/WGLGeometryBrushFill.js\";import j from\"./webgl/brushes/WGLGeometryBrushLabel.js\";import w from\"./webgl/brushes/WGLGeometryBrushLine.js\";import G from\"./webgl/brushes/WGLGeometryBrushMarker.js\";import W from\"./webgl/brushes/WGLGeometryBrushText.js\";const n={marker:G,line:w,fill:g,text:W,label:j,clip:m,stencil:u,bitmap:o,overlay:t,raster:s,rasterVF:e,flow:r,tileInfo:h,vtlBackground:p,vtlFill:B,vtlLine:L,vtlCircle:f,vtlSymbol:a,dotDensity:l,heatmap:i,pieChart:b};export{n as brushes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/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 s}from\"../../../../chunks/earcut.js\";import{s as o}from\"../../../../chunks/vec2.js\";import{a as n}from\"../../../../chunks/vec2f64.js\";import{convertFromNestedArray as i,convertFromPolygon as c}from\"../../../../layers/graphics/featureConversionUtils.js\";import a from\"../../../../layers/graphics/OptimizedGeometry.js\";import{i1616to32 as f}from\"./number.js\";import{BufferObject as h}from\"../../../webgl/BufferObject.js\";import{PrimitiveType as m,Usage as u,DataType as y}from\"../../../webgl/enums.js\";const x=t=>{switch(t.BYTES_PER_ELEMENT){case 1:return y.UNSIGNED_BYTE;case 2:return y.UNSIGNED_SHORT;case 4:return y.UNSIGNED_INT;default:throw new e(\"Cannot get DataType of array\")}},g=(e,t,r,s)=>{let o=0;for(let n=1;n0:o<0},p=({coords:e,lengths:t},r)=>{const o=[];for(let n=0,i=0;n({...r,[s]:h.createVertex(e,t,this.vertices[s])})),{})),this._cache.vertexBuffers}}export{l as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/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{watch as i}from\"../../../../core/reactiveUtils.js\";import{c as o}from\"../../../../chunks/mat3f32.js\";import{DisplayObject as h}from\"../DisplayObject.js\";import a from\"./Mesh2D.js\";import{VertexArrayObject as c}from\"../../../webgl/VertexArrayObject.js\";const n=t=>parseFloat(t)/100;class m extends h{constructor(t,e){super(),this._clip=e,this._cache={},this.stage=t,this._handle=i((()=>e.version),(()=>this._invalidate())),this.ready()}static fromClipArea(t,e){return new m(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[o,h]=e.size;if(\"geometry\"!==this._clip.type&&this._lastWidth===o&&this._lastHeight===h||(this._lastWidth=o,this._lastHeight=h,this._destroyGL()),s(this._cache.vao)){const s=this._createMesh(e,this._clip),o=s.getIndexBuffer(t),h=s.getVertexBuffers(t);this._cache.mesh=s,this._cache.vao=new c(t,r,i,h,o)}return this._cache.vao}_createTransforms(){return{dvs:o()}}_invalidate(){this._destroyGL(),this.requestRender()}_createScreenRect(t,e){const[r,s]=t.size,i=\"string\"==typeof e.left?n(e.left)*r:e.left,o=\"string\"==typeof e.right?n(e.right)*r:e.right,h=\"string\"==typeof e.top?n(e.top)*s:e.top,a=\"string\"==typeof e.bottom?n(e.bottom)*s:e.bottom,c=i,m=h;return{x:c,y:m,width:Math.max(r-o-c,0),height:Math.max(s-a-m,0)}}_createMesh(r,s){switch(s.type){case\"rect\":return a.fromRect(this._createScreenRect(r,s));case\"path\":return a.fromPath(s);case\"geometry\":return a.fromGeometry(r,s);default:return e.getLogger(\"esri.views.2d.engine.webgl.ClippingInfo\").error(new t(\"mapview-bad-type\",\"Unable to create ClippingInfo mesh from clip of type: ${clip.type}\")),a.fromRect({x:0,y:0,width:1,height:1})}}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport\"../../../../core/has.js\";import{isNone as e,isSome as r}from\"../../../../core/maybe.js\";import{c as s}from\"../../../../chunks/mat3f32.js\";import{brushes as t}from\"../brushes.js\";import{Container as i}from\"../Container.js\";import n from\"./ClippingInfo.js\";import{WGLDrawPhase as a}from\"./enums.js\";class o extends i{constructor(){super(...arguments),this.name=this.constructor.name}set clips(e){this._clips=e,this.children.forEach((r=>r.clips=e)),this._updateClippingInfo()}beforeRender(e){super.beforeRender(e),this.updateTransforms(e.state)}_createTransforms(){return{dvs:s()}}doRender(e){const r=this.createRenderParams(e),{painter:s,globalOpacity:t,profiler:i,drawPhase:n}=r,o=n===a.LABEL||n===a.HIGHLIGHT?1:t*this.computedOpacity;i.recordContainerStart(this.name),s.beforeRenderLayer(r,this._clippingInfos?255:0,o),this.renderChildren(r),s.compositeLayer(r,o),i.recordContainerEnd()}renderChildren(r){e(this._renderPasses)&&(this._renderPasses=this.prepareRenderPasses(r.painter));for(const e of this._renderPasses)try{e.render(r)}catch(s){}}createRenderParams(e){return e.requireFBO=this.requiresDedicatedFBO,e}prepareRenderPasses(e){return[e.registerRenderPass({name:\"clip\",brushes:[t.clip],target:()=>this._clippingInfos,drawPhase:a.MAP|a.LABEL|a.LABEL_ALPHA|a.DEBUG|a.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=>n.fromClipArea(this.stage,e)))),this.requestRender()}}export{o as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nconst o=!0,t=32,c=1.5,e=200;export{t as COLLISION_GRID_CELL_SIZE,c as DECLUTTER_BUDGET,o as DECLUTTER_TILES,e as FADE_DURATION};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nclass t{constructor(){this.name=this.constructor.name}createOptions(t,r){return null}}export{t as Effect};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nconst 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{e as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nconst e={enableCache:!1};export{e as shaderTranspiler};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isSome as t}from\"../../core/maybe.js\";import{ShaderType as e}from\"./enums.js\";import a from\"./reservedWordsGLSL3.js\";import{shaderTranspiler as r}from\"./testUtils.js\";import{o as n,l as o,b as i}from\"../../chunks/builtins.js\";var s=999,c=9999,p=0,u=1,d=2,f=3,l=4,h=5,y=6,w=7,g=8,m=9,b=10,k=11,E=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"];function _(){var t,e,a,r=0,_=0,v=s,j=[],x=[],D=1,R=0,T=0,A=!1,G=!1,S=\"\";return function(t){return x=[],null!==t?F(t.replace?t.replace(/\\r\\n/g,\"\\n\"):t):L()};function X(t){t.length&&x.push({type:E[v],data:t,position:T,line:D,column:R})}function F(e){var n;for(r=0,a=(S+=e).length;t=S[r],r0)continue;a=t.slice(0,1).join(\"\")}return X(a),T+=a.length,(j=j.slice(a.length)).length}}function $(){return/[^a-fA-F0-9]/.test(t)?(X(j.join(\"\")),v=s,r):(j.push(t),e=t,r+1)}function z(){return\".\"===t||/[eE]/.test(t)?(j.push(t),v=h,e=t,r+1):\"x\"===t&&1===j.length&&\"0\"===j[0]?(v=k,j.push(t),e=t,r+1):/[^\\d]/.test(t)?(X(j.join(\"\")),v=s,r):(j.push(t),e=t,r+1)}function I(){return\"f\"===t&&(j.push(t),e=t,r+=1),/[eE]/.test(t)||\"-\"===t&&/[eE]/.test(e)?(j.push(t),e=t,r+1):/[^\\d]/.test(t)?(X(j.join(\"\")),v=s,r):(j.push(t),e=t,r+1)}function U(){if(/[^\\d\\w_]/.test(t)){var a=j.join(\"\");return v=o.indexOf(a)>-1?g:i.indexOf(a)>-1?w:y,X(j.join(\"\")),v=s,r}return j.push(t),e=t,r+1}}function v(t){var e=_(),a=[];return a=(a=a.concat(e(t))).concat(e(null))}function j(t){return v(t)}function x(t){return t.map((t=>\"eof\"!==t.type?t.data:\"\")).join(\"\")}const D=[\"GL_OES_standard_derivatives\",\"GL_EXT_frag_depth\",\"GL_EXT_draw_buffers\",\"GL_EXT_shader_texture_lod\"];function R(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 T(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 A(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 A(t,e,r+\"_\"+e[r],r)}return a}function G(t,e,a=\"afterVersion\"){function r(t,e){for(let a=e;ae=0;--t){const e=i[t];if(\"preprocessor\"===e.type){const a=e.data.match(/\\#extension\\s+(.*)\\:/);if(a&&a[1]&&D.includes(a[1].trim())){const e=i[t+1];i.splice(t,e&&\"whitespace\"===e.type?2:1)}const r=e.data.match(/\\#ifdef\\s+(.*)/);r&&r[1]&&D.includes(r[1].trim())&&(e.data=\"#if 1\");const n=e.data.match(/\\#ifndef\\s+(.*)/);n&&n[1]&&D.includes(n[1].trim())&&(e.data=\"#if 0\")}}return M(r,x(i))}const C=new Map;function H(t){return r.enableCache?C.get(t):null}function M(t,e){return r.enableCache&&C.set(t,e),e}export{L as transpileShader};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{update as t}from\"../../core/arrayUtils.js\";import\"../../core/has.js\";import{isSome as o,isNone as i}from\"../../core/maybe.js\";import{webglValidateShadersEnabled as e}from\"./checkWebGLError.js\";import{ContextType as n}from\"./context-util.js\";import{ShaderType as r,ResourceType as s}from\"./enums.js\";import{transpileShader as m}from\"./ShaderTranspiler.js\";const a=4294967295;class h{constructor(t,o,i,a,h=new Map){this._context=t,this._locations=a,this._uniformBlockBindings=h,this._refCount=1,this._compiled=!1,this._nameToUniformLocation={},this._nameToUniform1={},this._nameToUniform1v=new Map,this._nameToUniform2=new Map,this._nameToUniform3=new Map,this._nameToUniform4=new Map,this._nameToUniformMatrix3=new Map,this._nameToUniformMatrix4=new Map,t||console.error(\"RenderingContext isn't initialized!\"),0===o.length&&console.error(\"Shaders source should not be empty!\"),this._context.type===n.WEBGL2&&(o=m(o,r.VERTEX_SHADER),i=m(i,r.FRAGMENT_SHADER)),this._vShader=f(this._context,r.VERTEX_SHADER,o),this._fShader=f(this._context,r.FRAGMENT_SHADER,i),this._vShader&&this._fShader||console.error(\"Error loading shaders!\"),this._context.instanceCounter.increment(s.Shader,this),e()&&(this.vertexShader=o,this.fragmentShader=i)}get glName(){if(o(this._glName))return this._glName;if(i(this._vShader))return null;const t=this._context.gl,r=t.createProgram();if(t.attachShader(r,this._vShader),t.attachShader(r,this._fShader),this._locations.forEach(((o,i)=>t.bindAttribLocation(r,o,i))),t.linkProgram(r),e()&&!t.getProgramParameter(r,t.LINK_STATUS)&&console.error(`Could not link shader\\nvalidated: ${t.getProgramParameter(r,t.VALIDATE_STATUS)}, gl error ${t.getError()}, vertex: ${t.getShaderParameter(this._vShader,t.COMPILE_STATUS)}, fragment: ${t.getShaderParameter(this._fShader,t.COMPILE_STATUS)}, info log: ${t.getProgramInfoLog(r)}, vertex source: ${this.vertexShader}, fragment source: ${this.fragmentShader}`),this._context.type===n.WEBGL2){const o=t;for(const[t,i]of this._uniformBlockBindings){const e=o.getUniformBlockIndex(r,t);e0)return;const t=this._context.gl;this._vShader&&(t.deleteShader(this._vShader),this._vShader=null,this._context.instanceCounter.decrement(s.Shader,this)),this._fShader&&(t.deleteShader(this._fShader),this._fShader=null),this._glName&&(t.deleteProgram(this._glName),this._glName=null,this._context.instanceCounter.decrement(s.Program,this))}ref(){++this._refCount}_getUniformLocation(t){return void 0===this._nameToUniformLocation[t]&&(++l.numUniforms,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];void 0!==i&&o===i||(this._context.gl.uniform1i(this._getUniformLocation(t),o),this._nameToUniform1[t]=o)}setUniform1iv(t,o){g(this._nameToUniform1v,t,o)&&this._context.gl.uniform1iv(this._getUniformLocation(t),o)}setUniform2iv(t,o){g(this._nameToUniform2,t,o)&&this._context.gl.uniform2iv(this._getUniformLocation(t),o)}setUniform3iv(t,o){g(this._nameToUniform3,t,o)&&this._context.gl.uniform3iv(this._getUniformLocation(t),o)}setUniform4iv(t,o){g(this._nameToUniform4,t,o)&&this._context.gl.uniform4iv(this._getUniformLocation(t),o)}setUniform1f(t,o){const i=this._nameToUniform1[t];void 0!==i&&o===i||(this._context.gl.uniform1f(this._getUniformLocation(t),o),this._nameToUniform1[t]=o)}setUniform1fv(t,o){g(this._nameToUniform1v,t,o)&&this._context.gl.uniform1fv(this._getUniformLocation(t),o)}setUniform2f(t,o,i){const e=this._nameToUniform2.get(t);void 0===e?(this._context.gl.uniform2f(this._getUniformLocation(t),o,i),this._nameToUniform2.set(t,[o,i])):o===e[0]&&i===e[1]||(this._context.gl.uniform2f(this._getUniformLocation(t),o,i),e[0]=o,e[1]=i)}setUniform2fv(t,o){g(this._nameToUniform2,t,o)&&this._context.gl.uniform2fv(this._getUniformLocation(t),o)}setUniform3f(t,o,i,e){const n=this._nameToUniform3.get(t);void 0===n?(this._context.gl.uniform3f(this._getUniformLocation(t),o,i,e),this._nameToUniform3[t]=[o,i,e]):o===n[0]&&i===n[1]&&e===n[2]||(this._context.gl.uniform3f(this._getUniformLocation(t),o,i,e),n[0]=o,n[1]=i,n[2]=e)}setUniform3fv(t,o){g(this._nameToUniform3,t,o)&&this._context.gl.uniform3fv(this._getUniformLocation(t),o)}setUniform4f(t,o,i,e,n){const r=this._nameToUniform4.get(t);void 0===r?(this._context.gl.uniform4f(this._getUniformLocation(t),o,i,e,n),this._nameToUniform4.set(t,[o,i,e,n])):void 0!==r&&o===r[0]&&i===r[1]&&e===r[2]&&n===r[3]||(this._context.gl.uniform4f(this._getUniformLocation(t),o,i,e,n),r[0]=o,r[1]=i,r[2]=e,r[3]=n)}setUniform4fv(t,o){g(this._nameToUniform4,t,o)&&this._context.gl.uniform4fv(this._getUniformLocation(t),o)}setUniformMatrix3fv(t,o,i=!1){g(this._nameToUniformMatrix3,t,o)&&this._context.gl.uniformMatrix3fv(this._getUniformLocation(t),i,o)}setUniformMatrix4fv(t,o,i=!1){g(this._nameToUniformMatrix4,t,o)&&this._context.gl.uniformMatrix4fv(this._getUniformLocation(t),i,o)}stop(){}}function f(t,o,i){const n=t.gl,s=n.createShader(o);return n.shaderSource(s,i),n.compileShader(s),e()&&!n.getShaderParameter(s,n.COMPILE_STATUS)&&(console.error(\"Compile error in \".concat(o===r.VERTEX_SHADER?\"vertex\":\"fragment\",\" shader\")),console.error(n.getShaderInfoLog(s)),console.error(_(i))),l.enabled&&(l.compiledLOC+=i.match(/\\n/g).length+1),s}function _(t){let o=2;return t.replace(/\\n/g,(()=>\"\\n\"+c(o++)+\":\"))}function c(t){return t>=1e3?t.toString():(\" \"+t).slice(-3)}function g(o,i,e){const n=o.get(i);return n?t(n,e):(o.set(i,Array.from(e)),!0)}const l={compiledLOC:0,numUniforms:0,enabled:!1};export{h as Program,l as test};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../chunks/tslib.es6.js\";import t from\"../../core/Accessor.js\";import r from\"../../core/Evented.js\";import{HandleOwnerMixin as s}from\"../../core/HandleOwner.js\";import{IdentifiableMixin as i}from\"../../core/Identifiable.js\";import o from\"../../core/Logger.js\";import{unwrapOr as n}from\"../../core/maybe.js\";import{EsriPromiseMixin as l}from\"../../core/Promise.js\";import{property as a}from\"../../core/accessorSupport/decorators/property.js\";import\"../../core/arrayUtils.js\";import\"../../core/accessorSupport/ensureType.js\";import{subclass as p}from\"../../core/accessorSupport/decorators/subclass.js\";let d=class extends(s(i(l(r.EventedMixin(t))))){constructor(e){super(e),this.layer=null,this.parent=null}initialize(){this.when().catch((e=>{if(\"layerview:create-error\"!==e.name){const t=this.layer&&this.layer.id||\"no id\",r=this.layer&&this.layer.title||\"no title\";o.getLogger(this.declaredClass).error(\"#resolve()\",`Failed to resolve layer view (layer title: '${r}', id: '${t}')`,e)}}))}get fullOpacity(){return n(this.get(\"layer.opacity\"),1)*n(this.get(\"parent.fullOpacity\"),1)}get suspended(){return!this.canResume()}get suspendInfo(){return this.getSuspendInfo()}get legendEnabled(){return!this.suspended&&!0===this.layer?.legendEnabled}get updating(){return!(!this.updatingHandles?.updating&&!this.isUpdating())}get updatingProgress(){return this.updating?0:1}get visible(){return!0===this.layer?.visible}set visible(e){this._overrideIfSome(\"visible\",e)}canResume(){return this.visible&&this.layer?.loaded&&!this.parent?.suspended&&this.view?.ready||!1}getSuspendInfo(){const e=this.parent&&this.parent.suspended?this.parent.suspendInfo:{},t=this;return t.view&&t.view.ready||(e.viewNotReady=!0),this.layer&&this.layer.loaded||(e.layerNotLoaded=!0),this.visible||(e.layerInvisible=!0),e}isUpdating(){return!1}};e([a()],d.prototype,\"fullOpacity\",null),e([a()],d.prototype,\"layer\",void 0),e([a()],d.prototype,\"parent\",void 0),e([a({readOnly:!0})],d.prototype,\"suspended\",null),e([a({readOnly:!0})],d.prototype,\"suspendInfo\",null),e([a({readOnly:!0})],d.prototype,\"legendEnabled\",null),e([a({type:Boolean,readOnly:!0})],d.prototype,\"updating\",null),e([a({readOnly:!0})],d.prototype,\"updatingProgress\",null),e([a()],d.prototype,\"visible\",null),e([a()],d.prototype,\"view\",void 0),d=e([p(\"esri.views.layers.LayerView\")],d);const u=d;export{u as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as r}from\"../../../chunks/tslib.es6.js\";import{JSONSupport as s}from\"../../../core/JSONSupport.js\";import{property as o}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as e}from\"../../../core/accessorSupport/decorators/subclass.js\";let t=class extends s{get version(){return this.commitVersionProperties(),(this._get(\"version\")||0)+1}};r([o({readOnly:!0})],t.prototype,\"version\",null),t=r([e(\"esri.views.layers.support.ClipArea\")],t);const p=t;export{p as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as t}from\"../../../chunks/tslib.es6.js\";import{property as o}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as r}from\"../../../core/accessorSupport/decorators/subclass.js\";import e from\"./ClipArea.js\";var s;let i=s=class extends e{constructor(t){super(t),this.type=\"rect\",this.left=null,this.right=null,this.top=null,this.bottom=null}clone(){return new s({left:this.left,right:this.right,top:this.top,bottom:this.bottom})}commitVersionProperties(){this.commitProperty(\"left\"),this.commitProperty(\"right\"),this.commitProperty(\"top\"),this.commitProperty(\"bottom\")}};t([o({type:[Number,String],json:{write:!0}})],i.prototype,\"left\",void 0),t([o({type:[Number,String],json:{write:!0}})],i.prototype,\"right\",void 0),t([o({type:[Number,String],json:{write:!0}})],i.prototype,\"top\",void 0),t([o({type:[Number,String],json:{write:!0}})],i.prototype,\"bottom\",void 0),i=s=t([r(\"esri.views.layers.support.ClipRect\")],i);const p=i;export{p as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as r}from\"../../../chunks/tslib.es6.js\";import\"../../../geometry.js\";import{property as e}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as o}from\"../../../core/accessorSupport/decorators/subclass.js\";import t from\"../../../geometry/Geometry.js\";import{fromJSON as s}from\"../../../geometry/support/jsonUtils.js\";import p from\"./ClipArea.js\";import m from\"../../../geometry/Extent.js\";import i from\"../../../geometry/Polygon.js\";var y;const c={base:t,key:\"type\",typeMap:{extent:m,polygon:i}};let n=y=class extends p{constructor(r){super(r),this.type=\"geometry\",this.geometry=null}clone(){return new y({geometry:this.geometry?.clone()??null})}commitVersionProperties(){this.commitProperty(\"geometry\")}};r([e({types:c,json:{read:s,write:!0}})],n.prototype,\"geometry\",void 0),n=y=r([o(\"esri.views.layers.support.Geometry\")],n);const a=n;export{a as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as r}from\"../../../chunks/tslib.es6.js\";import{property as s}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as o}from\"../../../core/accessorSupport/decorators/subclass.js\";import t from\"./ClipArea.js\";let e=class extends t{constructor(r){super(r),this.type=\"path\",this.path=[]}commitVersionProperties(){this.commitProperty(\"path\")}};r([s({type:[[[Number]]],json:{write:!0}})],e.prototype,\"path\",void 0),e=r([o(\"esri.views.layers.support.Path\")],e);const p=e;export{p as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../chunks/tslib.es6.js\";import t from\"../../../core/Collection.js\";import{referenceSetter as s}from\"../../../core/collectionUtils.js\";import i from\"../../../core/Error.js\";import{watch as r,syncAndInitial as a,on as o}from\"../../../core/reactiveUtils.js\";import{property as n}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as p}from\"../../../core/accessorSupport/decorators/subclass.js\";import{Container as c}from\"../engine/Container.js\";import h from\"../../layers/support/ClipRect.js\";import l from\"../../layers/support/Geometry.js\";import d from\"../../layers/support/Path.js\";const u=t.ofType({key:\"type\",base:null,typeMap:{rect:h,path:d,geometry:l}}),y=t=>{let h=class extends t{constructor(){super(...arguments),this.attached=!1,this.clips=new u,this.lastUpdateId=-1,this.moving=!1,this.updateRequested=!1,this.visibleAtCurrentScale=!1}initialize(){const e=this.view?.spatialReferenceLocked??!0,t=this.view?.spatialReference;t&&e&&!this.spatialReferenceSupported?this.addResolvingPromise(Promise.reject(new i(\"layerview:spatial-reference-incompatible\",\"The spatial reference of this layer does not meet the requirements of the view\",{layer:this.layer}))):(this.container||(this.container=new c),this.container.fadeTransitionEnabled=!0,this.container.visible=!1,this.container.endTransitions(),this.handles.add([r((()=>this.suspended),(e=>{this.container&&(this.container.visible=!e),this.view&&!e&&this.updateRequested&&this.view.requestUpdate()}),a),r((()=>this.layer?.opacity??1),(e=>{this.container&&(this.container.opacity=e)}),a),r((()=>this.layer&&\"blendMode\"in this.layer?this.layer.blendMode:\"normal\"),(e=>{this.container&&(this.container.blendMode=e)}),a),r((()=>this.layer&&\"effect\"in this.layer?this.layer.effect:null),(e=>{this.container&&(this.container.effect=e)}),a),o((()=>this.clips),\"change\",(()=>{this.container&&(this.container.clips=this.clips)}),a),r((()=>({scale:this.view?.scale,scaleRange:this.layer&&\"effectiveScaleRange\"in this.layer?this.layer.effectiveScaleRange:null})),(({scale:e})=>{const t=e&&this.isVisibleAtScale(e);t!==this.visibleAtCurrentScale&&this._set(\"visibleAtCurrentScale\",t)}),a)]),this.view?.whenLayerView?this.view.whenLayerView(this.layer).then((e=>{e===this&&this.processAttach()}),(()=>{})):this.when().then((()=>{this.processAttach()}),(()=>{})))}destroy(){this.processDetach(),this.updateRequested=!1}get spatialReferenceSupported(){const e=this.view?.spatialReference;return null==e||this.supportsSpatialReference(e)}get updating(){return this.spatialReferenceSupported&&(!this.attached||!this.suspended&&(this.updateRequested||this.isUpdating())||!!this.updatingHandles?.updating)}processAttach(){this.isResolved()&&!this.attached&&!this.destroyed&&this.spatialReferenceSupported&&(this.attach(),this.attached=!0,this.requestUpdate())}processDetach(){this.attached&&(this.attached=!1,this.detach(),this.updateRequested=!1)}isVisibleAtScale(e){const t=this.layer&&\"effectiveScaleRange\"in this.layer?this.layer.effectiveScaleRange:null;if(!t)return!0;const{minScale:s,maxScale:i}=t;return(0===s||e<=s)&&(0===i||e>=i)}requestUpdate(){this.destroyed||this.updateRequested||(this.updateRequested=!0,this.suspended||this.view.requestUpdate())}processUpdate(e){!this.isFulfilled()||this.isResolved()?(this._set(\"updateParameters\",e),this.updateRequested&&!this.suspended&&(this.updateRequested=!1,this.update(e))):this.updateRequested=!1}hitTest(e,t){return Promise.resolve(null)}supportsSpatialReference(e){return!0}canResume(){return!!this.spatialReferenceSupported&&(!!super.canResume()&&this.visibleAtCurrentScale)}getSuspendInfo(){const e=super.getSuspendInfo(),t=!this.spatialReferenceSupported,s=this.visibleAtCurrentScale;return t&&(e.spatialReferenceNotSupported=t),s&&(e.outsideScaleRange=s),e}};return e([n()],h.prototype,\"attached\",void 0),e([n({type:u,set(e){const t=s(e,this._get(\"clips\"),u);this._set(\"clips\",t)}})],h.prototype,\"clips\",void 0),e([n()],h.prototype,\"container\",void 0),e([n()],h.prototype,\"moving\",void 0),e([n({readOnly:!0})],h.prototype,\"spatialReferenceSupported\",null),e([n({readOnly:!0})],h.prototype,\"updateParameters\",void 0),e([n()],h.prototype,\"updateRequested\",void 0),e([n()],h.prototype,\"updating\",null),e([n()],h.prototype,\"view\",void 0),e([n({readOnly:!0})],h.prototype,\"visibleAtCurrentScale\",void 0),h=e([p(\"esri.views.2d.layers.LayerView2D\")],h),h};export{y as LayerView2DMixin};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/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{e as ShaderCompiler};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isNone as t,isSome as e}from\"../../../../core/maybe.js\";import{c as s}from\"../../../../chunks/mat3f32.js\";import a from\"../webgl/brushes/WGLBrush.js\";import{CompareFunction as r}from\"../../../webgl/enums.js\";class i extends a{constructor(){super(...arguments),this._visualState={time:0,dvsMat3:s(),displayViewMat3:s()}}dispose(){}prepareState(t){const{context:e}=t;e.setColorMask(!0,!0,!0,!0),e.setStencilFunction(r.EQUAL,0,255)}draw(s,a){const{requestRender:r,allowDelayedRender:i}=s,{displayData:o}=a;if(t(o))return;if(\"loaded\"===o.state.name&&o.attach(s),\"attached\"!==o.state.name)return;const l=o.state.resources;i&&!l.ready&&e(r)?r():(this._visualState.time=s.time/1e3,this._visualState.dvsMat3=a.transforms.dvs,this._visualState.displayViewMat3=s.state.displayViewMat3,o.flowStyle.render(s,this._visualState,l),o.flowStyle.animated&&e(r)&&r())}}export{i as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isNone as e,isSome as t}from\"../../../../core/maybe.js\";import a from\"../webgl/brushes/WGLBrush.js\";import{BlendFactor as r,StencilOperation as s,CompareFunction as o,PrimitiveType as n,DataType as i}from\"../../../webgl/enums.js\";const l=new Float32Array([.27058823529411763,.4588235294117647,.7098039215686275,1,.396078431372549,.5372549019607843,.7215686274509804,1,.5176470588235295,.6196078431372549,.7294117647058823,1,.6352941176470588,.7058823529411765,.7411764705882353,1,.7529411764705882,.8,.7450980392156863,1,.8705882352941177,.8901960784313725,.7490196078431373,1,1,1,.7490196078431373,1,1,.8627450980392157,.6313725490196078,1,.9803921568627451,.7254901960784313,.5176470588235295,1,.9607843137254902,.596078431372549,.4117647058823529,1,.9294117647058824,.4588235294117647,.3176470588235294,1,.9098039215686274,.08235294117647059,.08235294117647059,1]),c={beaufort_ft:l,beaufort_m:l,beaufort_km:l,beaufort_mi:l,beaufort_kn:new Float32Array([.1568627450980392,.5725490196078431,.7803921568627451,1,.34901960784313724,.6352941176470588,.7294117647058823,1,.5058823529411764,.7019607843137254,.6705882352941176,1,.6274509803921569,.7607843137254902,.6078431372549019,1,.7490196078431373,.8313725490196079,.5411764705882353,1,.8549019607843137,.9019607843137255,.4666666666666667,1,.9803921568627451,.9803921568627451,.39215686274509803,1,.9882352941176471,.8352941176470589,.3254901960784314,1,.9882352941176471,.7019607843137254,.4,1,.9803921568627451,.5529411764705883,.20392156862745098,1,.9686274509803922,.43137254901960786,.16470588235294117,1,.9411764705882353,.2784313725490196,.11372549019607843,1]),classified_arrow:new Float32Array([.2196078431372549,.6588235294117647,0,1,.5450980392156862,1.2117647058823529,0,1,1,1,0,1,1,.5019607843137255,0,1,1,0,0,1]),ocean_current_m:new Float32Array([.3058823529411765,.10196078431372549,.6,1,.7019607843137254,.10588235294117647,.10196078431372549,1,.792156862745098,.5019607843137255,.10196078431372549,1,.6941176470588235,.6941176470588235,.6941176470588235,1]),ocean_current_kn:new Float32Array([0,0,0,1,0,.1450980392156863,.39215686274509803,1,.3058823529411765,.10196078431372549,.6,1,.592156862745098,0,.39215686274509803,1,.7019607843137254,.10588235294117647,.10196078431372549,1,.6941176470588235,.3058823529411765,.10196078431372549,1,.792156862745098,.5019607843137255,.10196078431372549,1,.6941176470588235,.7019607843137254,.20392156862745098,1,.6941176470588235,.6941176470588235,.6941176470588235,1]),single_arrow:new Float32Array([0,92/255,230/255,1]),wind_speed:new Float32Array([0,0,0,1])};class d extends a{constructor(){super(...arguments),this._desc={magdir:{vsPath:\"raster/magdir\",fsPath:\"raster/magdir\",attributes:new Map([[\"a_pos\",0],[\"a_offset\",1],[\"a_vv\",2]])},scalar:{vsPath:\"raster/scalar\",fsPath:\"raster/scalar\",attributes:new Map([[\"a_pos\",0],[\"a_offset\",1],[\"a_vv\",2]])}}}dispose(){}prepareState({context:e}){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(r.ONE,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA),e.setColorMask(!0,!0,!0,!0),e.setStencilWriteMask(0),e.setStencilTestEnabled(!0),e.setStencilOp(s.KEEP,s.KEEP,s.REPLACE)}draw(t,a){if(e(a.source)||0===a.source.validPixelCount)return;const{context:r,timeline:s}=t;if(s.begin(this.name),r.setStencilFunction(o.EQUAL,a.stencilRef,255),a.updateVectorFieldVAO(t),\"scalar\"===t.renderPass){const e=a.vaoData.scalar;e&&this._drawScalars(t,a,e.vao,e.elementCount)}else{const e=a.vaoData.magdir;e&&this._drawTriangles(t,a,e.vao,e.elementCount)}s.end(this.name)}_drawTriangles(e,a,r,s){const{context:o,painter:l,requestRender:d,allowDelayedRender:m}=e,{symbolizerParameters:f}=a,u=f.dataRange?[\"dataRange\"]:[];\"geographic\"===f.rotationType&&u.push(\"rotationGeographic\");const _=l.materialManager.getProgram(this._desc.magdir,u);if(m&&t(d)&&!_.isCompiled)return void d();o.useProgram(_);const{coordScale:g,opacity:p,transforms:y}=a;_.setUniform2fv(\"u_coordScale\",g),_.setUniform1f(\"u_opacity\",p),_.setUniformMatrix3fv(\"u_dvsMat3\",y.dvs);const{style:v,dataRange:b,rotation:S,symbolPercentRange:h}=f;_.setUniform4fv(\"u_colors\",c[v]||c.single_arrow),_.setUniform2fv(\"u_dataRange\",b),_.setUniform1f(\"u_rotation\",S),_.setUniform2fv(\"u_symbolPercentRange\",h);const w=this._getSymbolSize(e,a);_.setUniform2fv(\"u_symbolSize\",w),o.bindVAO(r),o.drawElements(n.TRIANGLES,s,i.UNSIGNED_INT,0)}_drawScalars(e,a,r,s){const{context:o,painter:l,requestRender:c,allowDelayedRender:d}=e,{symbolizerParameters:m}=a,f=[];\"wind_speed\"===m.style?f.push(\"innerCircle\"):m.dataRange&&f.push(\"dataRange\"),\"geographic\"===m.rotationType&&f.push(\"rotationGeographic\");const u=l.materialManager.getProgram(this._desc.scalar,f);if(d&&t(c)&&!u.isCompiled)return void c();o.useProgram(u);const{coordScale:_,opacity:g,transforms:p}=a;u.setUniform2fv(\"u_coordScale\",_),u.setUniform1f(\"u_opacity\",g),u.setUniformMatrix3fv(\"u_dvsMat3\",p.dvs);const{dataRange:y,symbolPercentRange:v}=m;u.setUniform2fv(\"u_dataRange\",y),u.setUniform2fv(\"u_symbolPercentRange\",v);const b=this._getSymbolSize(e,a);u.setUniform2fv(\"u_symbolSize\",b),o.bindVAO(r),o.drawElements(n.TRIANGLES,s,i.UNSIGNED_INT,0)}_getSymbolSize(e,t){const a=t.key?2**(e.displayLevel-t.key.level):t.resolution/e.state.resolution,{symbolTileSize:r}=t.symbolizerParameters;return[r/(Math.round((t.width-t.offset[0])/r)*r)/a,r/(Math.round((t.height-t.offset[1])/r)*r)/a]}}export{d as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nvar e,r={exports:{}};void 0!==(e=[\"precision\",\"highp\",\"mediump\",\"lowp\",\"attribute\",\"const\",\"uniform\",\"varying\",\"break\",\"continue\",\"do\",\"for\",\"while\",\"if\",\"else\",\"in\",\"out\",\"inout\",\"float\",\"int\",\"void\",\"bool\",\"true\",\"false\",\"discard\",\"return\",\"mat2\",\"mat3\",\"mat4\",\"vec2\",\"vec3\",\"vec4\",\"ivec2\",\"ivec3\",\"ivec4\",\"bvec2\",\"bvec3\",\"bvec4\",\"sampler1D\",\"sampler2D\",\"sampler3D\",\"samplerCube\",\"sampler1DShadow\",\"sampler2DShadow\",\"struct\",\"asm\",\"class\",\"union\",\"enum\",\"typedef\",\"template\",\"this\",\"packed\",\"goto\",\"switch\",\"default\",\"inline\",\"noinline\",\"volatile\",\"public\",\"static\",\"extern\",\"external\",\"interface\",\"long\",\"short\",\"double\",\"half\",\"fixed\",\"unsigned\",\"input\",\"output\",\"hvec2\",\"hvec3\",\"hvec4\",\"dvec2\",\"dvec3\",\"dvec4\",\"fvec2\",\"fvec3\",\"fvec4\",\"sampler2DRect\",\"sampler3DRect\",\"sampler2DRectShadow\",\"sizeof\",\"cast\",\"namespace\",\"using\"])&&(r.exports=e);const t=r.exports;var o,l={exports:{}};o=l,function(e){var r=[\"<<=\",\">>=\",\"++\",\"--\",\"<<\",\">>\",\"<=\",\">=\",\"==\",\"!=\",\"&&\",\"||\",\"+=\",\"-=\",\"*=\",\"/=\",\"%=\",\"&=\",\"^^\",\"^=\",\"|=\",\"(\",\")\",\"[\",\"]\",\".\",\"!\",\"~\",\"*\",\"/\",\"%\",\"+\",\"-\",\"<\",\">\",\"&\",\"^\",\"|\",\"?\",\":\",\"=\",\",\",\";\",\"{\",\"}\"];void 0!==r&&(o.exports=r)}();const a=l.exports;var g={exports:{}};!function(e){!function(r){var t=function(){return[\"abs\",\"acos\",\"all\",\"any\",\"asin\",\"atan\",\"ceil\",\"clamp\",\"cos\",\"cross\",\"dFdx\",\"dFdy\",\"degrees\",\"distance\",\"dot\",\"equal\",\"exp\",\"exp2\",\"faceforward\",\"floor\",\"fract\",\"gl_BackColor\",\"gl_BackLightModelProduct\",\"gl_BackLightProduct\",\"gl_BackMaterial\",\"gl_BackSecondaryColor\",\"gl_ClipPlane\",\"gl_ClipVertex\",\"gl_Color\",\"gl_DepthRange\",\"gl_DepthRangeParameters\",\"gl_EyePlaneQ\",\"gl_EyePlaneR\",\"gl_EyePlaneS\",\"gl_EyePlaneT\",\"gl_Fog\",\"gl_FogCoord\",\"gl_FogFragCoord\",\"gl_FogParameters\",\"gl_FragColor\",\"gl_FragCoord\",\"gl_FragData\",\"gl_FragDepth\",\"gl_FragDepthEXT\",\"gl_FrontColor\",\"gl_FrontFacing\",\"gl_FrontLightModelProduct\",\"gl_FrontLightProduct\",\"gl_FrontMaterial\",\"gl_FrontSecondaryColor\",\"gl_LightModel\",\"gl_LightModelParameters\",\"gl_LightModelProducts\",\"gl_LightProducts\",\"gl_LightSource\",\"gl_LightSourceParameters\",\"gl_MaterialParameters\",\"gl_MaxClipPlanes\",\"gl_MaxCombinedTextureImageUnits\",\"gl_MaxDrawBuffers\",\"gl_MaxFragmentUniformComponents\",\"gl_MaxLights\",\"gl_MaxTextureCoords\",\"gl_MaxTextureImageUnits\",\"gl_MaxTextureUnits\",\"gl_MaxVaryingFloats\",\"gl_MaxVertexAttribs\",\"gl_MaxVertexTextureImageUnits\",\"gl_MaxVertexUniformComponents\",\"gl_ModelViewMatrix\",\"gl_ModelViewMatrixInverse\",\"gl_ModelViewMatrixInverseTranspose\",\"gl_ModelViewMatrixTranspose\",\"gl_ModelViewProjectionMatrix\",\"gl_ModelViewProjectionMatrixInverse\",\"gl_ModelViewProjectionMatrixInverseTranspose\",\"gl_ModelViewProjectionMatrixTranspose\",\"gl_MultiTexCoord0\",\"gl_MultiTexCoord1\",\"gl_MultiTexCoord2\",\"gl_MultiTexCoord3\",\"gl_MultiTexCoord4\",\"gl_MultiTexCoord5\",\"gl_MultiTexCoord6\",\"gl_MultiTexCoord7\",\"gl_Normal\",\"gl_NormalMatrix\",\"gl_NormalScale\",\"gl_ObjectPlaneQ\",\"gl_ObjectPlaneR\",\"gl_ObjectPlaneS\",\"gl_ObjectPlaneT\",\"gl_Point\",\"gl_PointCoord\",\"gl_PointParameters\",\"gl_PointSize\",\"gl_Position\",\"gl_ProjectionMatrix\",\"gl_ProjectionMatrixInverse\",\"gl_ProjectionMatrixInverseTranspose\",\"gl_ProjectionMatrixTranspose\",\"gl_SecondaryColor\",\"gl_TexCoord\",\"gl_TextureEnvColor\",\"gl_TextureMatrix\",\"gl_TextureMatrixInverse\",\"gl_TextureMatrixInverseTranspose\",\"gl_TextureMatrixTranspose\",\"gl_Vertex\",\"greaterThan\",\"greaterThanEqual\",\"inversesqrt\",\"length\",\"lessThan\",\"lessThanEqual\",\"log\",\"log2\",\"matrixCompMult\",\"max\",\"min\",\"mix\",\"mod\",\"normalize\",\"not\",\"notEqual\",\"pow\",\"radians\",\"reflect\",\"refract\",\"sign\",\"sin\",\"smoothstep\",\"sqrt\",\"step\",\"tan\",\"texture2D\",\"texture2DLod\",\"texture2DProj\",\"texture2DProjLod\",\"textureCube\",\"textureCubeLod\",\"texture2DLodEXT\",\"texture2DProjLodEXT\",\"textureCubeLodEXT\",\"texture2DGradEXT\",\"texture2DProjGradEXT\",\"textureCubeGradEXT\",\"textureSize\",\"texelFetch\"]}();void 0!==t&&(e.exports=t)}()}(g);const i=g.exports;export{i as b,t as l,a as o};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../../core/maybe.js\";import{g as e,h as r,r as s,k as i,m as a}from\"../../../../chunks/mat3.js\";import{c as o}from\"../../../../chunks/mat3f32.js\";import{f as u}from\"../../../../chunks/vec2f32.js\";import{extractBands as n}from\"../../../../layers/support/rasterFunctions/pixelUtils.js\";import{DisplayObject as h}from\"../DisplayObject.js\";import{TextureSamplingMode as l}from\"../../../webgl/enums.js\";import{createTransformTexture as d,createRasterTexture as _,createColormapTexture as m}from\"../../../webgl/rasterUtils.js\";const x={bandCount:3,outMin:0,outMax:1,minCutOff:[0,0,0],maxCutOff:[255,255,255],factor:[1/255,1/255,1/255],useGamma:!1,gamma:[1,1,1],gammaCorrection:[1,1,1],colormap:null,colormapOffset:null,stretchType:\"none\",type:\"stretch\"};class p extends h{constructor(t=null,e=null,r=null){super(),this._textureInvalidated=!0,this._colormapTextureInvalidated=!0,this._supportsBilinearTexture=!0,this.stencilRef=0,this.coordScale=[1,1],this._symbolizerParameters=null,this.height=null,this.isRendereredSource=!1,this.pixelRatio=1,this.resolution=0,this.rotation=0,this._source=null,this.rawPixelData=null,this._suspended=!1,this._bandIds=null,this._interpolation=null,this._transformGrid=null,this.width=null,this.x=0,this.y=0,this.source=t,this.transformGrid=e,this.interpolation=r}destroy(){this.getTextures()?.textures.forEach((t=>t.dispose())),this._rasterTexture=null,this._transformGridTexture=null,this._colormapTexture=null}get symbolizerParameters(){return this._symbolizerParameters||x}set symbolizerParameters(t){this._symbolizerParameters!==t&&(this._symbolizerParameters=t,this._colormapTextureInvalidated=!0)}get source(){return this._source}set source(t){this._source!==t&&(this._source=t,this._rasterTexture&&(this._rasterTexture.dispose(),this._rasterTexture=null,this._rasterTextureBandIds=null),this.invalidateTexture())}get suspended(){return this._suspended}set suspended(t){this._suspended&&!t&&this.stage&&(this.ready(),this.requestRender()),this._suspended=t}get bandIds(){return this._bandIds}set bandIds(t){this._bandIds=t,this._isBandIdschanged(t)&&this.invalidateTexture()}get interpolation(){return this._interpolation||\"nearest\"}set interpolation(t){this._interpolation=t,this._rasterTexture&&this._rasterTexture.setSamplingMode(\"bilinear\"===this._getTextureSamplingMethod(t)?l.LINEAR:l.NEAREST)}get transformGrid(){return this._transformGrid}set transformGrid(t){this._transformGrid=t,this._transformGridTexture&&(this._transformGridTexture.dispose(),this._transformGridTexture=null)}invalidateTexture(){this._textureInvalidated||(this._textureInvalidated=!0,this.requestRender())}_createTransforms(){return{dvs:o()}}setTransform(t){const o=e(this.transforms.dvs),[n,h]=t.toScreenNoRotation([0,0],[this.x,this.y]),l=this.resolution/this.pixelRatio/t.resolution,d=l*this.width,_=l*this.height,m=Math.PI*this.rotation/180;r(o,o,u(n,h)),r(o,o,u(d/2,_/2)),s(o,o,-m),r(o,o,u(-d/2,-_/2)),i(o,o,u(d,_)),a(this.transforms.dvs,t.displayViewMat3,o)}getTextures(){if(!this._rasterTexture)return null;const t=[],e=[];return this._transformGridTexture&&(e.push(this._transformGridTexture),t.push(\"u_transformGrid\")),this._rasterTexture&&(e.push(this._rasterTexture),t.push(\"u_image\")),this._colormapTexture&&(e.push(this._colormapTexture),t.push(\"u_colormap\")),{names:t,textures:e}}onAttach(){this.invalidateTexture()}onDetach(){this.invalidateTexture()}updateTexture({context:t}){if(!this.stage)return this._rasterTexture?.dispose(),this._transformGridTexture?.dispose(),this._colormapTexture?.dispose(),this._rasterTexture=null,this._rasterTextureBandIds=null,this._transformGridTexture=null,void(this._colormapTexture=null);const e=this._isValidSource(this.source);e&&this._colormapTextureInvalidated&&(this._colormapTextureInvalidated=!1,this._updateColormapTexture(t)),this._textureInvalidated&&(this._textureInvalidated=!1,this._createOrDestroyRasterTexture(t),this._rasterTexture&&(e?this.transformGrid&&!this._transformGridTexture&&(this._transformGridTexture=d(t,this.transformGrid)):this._rasterTexture.setData(null)),this.suspended||(this.ready(),this.requestRender()))}_createOrDestroyRasterTexture(e){const r=t(this.source)?n(this.source,this.bandIds):null;if(!this._isValidSource(r))return void(this._rasterTexture&&(this._rasterTexture.dispose(),this._rasterTextureBandIds=null,this._rasterTexture=null));const s=!this._isBandIdschanged(this.bandIds);if(this._rasterTexture){if(s)return;this._rasterTexture.dispose(),this._rasterTextureBandIds=null,this._rasterTexture=null}this._supportsBilinearTexture=e.capabilities.textureFloat?.textureFloatLinear;const i=this._getTextureSamplingMethod(this.interpolation),a=this.isRendereredSource||!e.capabilities.textureFloat?.textureFloat;this._rasterTexture=_(e,r,i,a),this._rasterTextureBandIds=this.bandIds?[...this.bandIds]:null}_isBandIdschanged(t){const e=this._rasterTextureBandIds;return!(null==e&&null==t||e&&t&&e.join(\"\")===t.join(\"\"))}_isValidSource(e){return t(e)&&e.pixels?.length>0}_getTextureSamplingMethod(e){const{type:r,colormap:s}=this.symbolizerParameters,i=\"lut\"===r||\"stretch\"===r&&t(s);return!this._supportsBilinearTexture||i||\"bilinear\"!==e&&\"cubic\"!==e?\"nearest\":\"bilinear\"}_updateColormapTexture(t){const e=this._colormap,r=this.symbolizerParameters.colormap;return r?e?r.length!==e.length||r.some(((t,r)=>t!==e[r]))?(this._colormapTexture&&(this._colormapTexture.dispose(),this._colormapTexture=null),this._colormapTexture=m(t,r),void(this._colormap=r)):void 0:(this._colormapTexture=m(t,r),void(this._colormap=r)):(this._colormapTexture&&(this._colormapTexture.dispose(),this._colormapTexture=null),void(this._colormap=null))}}class c extends p{get source(){return this._source}}function T(e){return t(e.source)}export{p as RasterBitmap,c as RasterBitmapWithSource,T as hasSource};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{s as t,m as s}from\"../../../../chunks/mat3.js\";import{DisplayObject as i}from\"../DisplayObject.js\";import e from\"../../tiling/TileKey.js\";class r extends i{constructor(t,s,i,r,h,o,n=h,a=o){super(),this.triangleCountReportedInDebug=0,this.triangleCount=0,this.texture=null,this.key=new e(t),this.resolution=s,this.x=i,this.y=r,this.width=h,this.height=o,this.rangeX=n,this.rangeY=a}destroy(){this.texture&&(this.texture.dispose(),this.texture=null)}setTransform(i){const e=this.resolution/(i.resolution*i.pixelRatio),r=this.transforms.tileMat3,[h,o]=i.toScreenNoRotation([0,0],[this.x,this.y]),n=this.width/this.rangeX*e,a=this.height/this.rangeY*e;t(r,n,0,0,0,a,0,h,o,1),s(this.transforms.dvs,i.displayViewMat3,r)}}export{r as TiledDisplayObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport has from\"../../../../core/has.js\";import{WGLDrawPhase as e}from\"./enums.js\";import r from\"./WGLContainer.js\";import s from\"./brushes/WGLBrushInfo.js\";import t from\"./brushes/WGLBrushStencil.js\";const n=(e,r)=>e.key.level-r.key.level!=0?e.key.level-r.key.level:e.key.row-r.key.row!=0?e.key.row-r.key.row:e.key.col-r.key.col;class i extends r{constructor(e){super(),this._tileInfoView=e}get requiresDedicatedFBO(){return!1}renderChildren(e){this.sortChildren(n),this.setStencilReference(e),super.renderChildren(e)}createRenderParams(e){const{state:r}=e,s=super.createRenderParams(e);return s.requiredLevel=this._tileInfoView.getClosestInfoForScale(r.scale).level,s.displayLevel=this._tileInfoView.tileInfo.scaleToZoom(r.scale),s}prepareRenderPasses(r){const n=super.prepareRenderPasses(r);return n.push(r.registerRenderPass({name:\"stencil\",brushes:[t],drawPhase:e.DEBUG|e.MAP|e.HIGHLIGHT,target:()=>this.getStencilTarget()})),has(\"esri-tiles-debug\")&&n.push(r.registerRenderPass({name:\"tileInfo\",brushes:[s],drawPhase:e.DEBUG,target:()=>this.children})),n}getStencilTarget(){return this.children}setStencilReference(e){let r=1;for(const s of this.children)s.stencilRef=r++}}export{i as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as r}from\"../../chunks/tslib.es6.js\";import e from\"../../core/Logger.js\";import{isAbortError as s}from\"../../core/promiseUtils.js\";import{on as o}from\"../../core/reactiveUtils.js\";import{property as t}from\"../../core/accessorSupport/decorators/property.js\";import\"../../core/arrayUtils.js\";import\"../../core/accessorSupport/ensureType.js\";import{subclass as a}from\"../../core/accessorSupport/decorators/subclass.js\";const i=i=>{let c=class extends i{initialize(){this.handles.add(o((()=>this.layer),\"refresh\",(r=>{this.doRefresh(r.dataChanged).catch((r=>{s(r)||e.getLogger(this.declaredClass).error(r)}))})),\"RefreshableLayerView\")}};return r([t()],c.prototype,\"layer\",void 0),c=r([a(\"esri.layers.mixins.RefreshableLayerView\")],c),c};export{i as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as t,applySome as e}from\"../../../core/maybe.js\";import{createResolver as s,onAbortOrThrow as i,throwIfNotAbortError as r}from\"../../../core/promiseUtils.js\";import{g as h,h as o,r as u,k as a,m as n}from\"../../../chunks/mat3.js\";import{c as d}from\"../../../chunks/mat3f32.js\";import{f as l}from\"../../../chunks/vec2f32.js\";import{DisplayObject as c}from\"./DisplayObject.js\";import _ from\"./ImageryBitmapSource.js\";import{ContextType as m}from\"../../webgl/context-util.js\";import{TextureType as p,PixelFormat as g,SizedPixelFormat as x,PixelType as f,TextureWrapMode as b}from\"../../webgl/enums.js\";import{Texture as w}from\"../../webgl/Texture.js\";function S(t){return t&&\"render\"in t}function T(t){const e=document.createElement(\"canvas\");return e.width=t.width,e.height=t.height,t.render(e.getContext(\"2d\")),e}function v(t){return S(t)?t instanceof _?e(t.getRenderedRasterPixels(),(t=>t.renderedRasterPixels)):T(t):t}class R extends c{constructor(t=null,e){super(),this.blendFunction=\"standard\",this._sourceWidth=0,this._sourceHeight=0,this._textureInvalidated=!1,this.stencilRef=0,this.coordScale=[1,1],this._height=void 0,this.pixelRatio=1,this.resolution=0,this.rotation=0,this._source=null,this._width=void 0,this.x=0,this.y=0,this.immutable=e.immutable??!1,this.requestRenderOnSourceChangedEnabled=e.requestRenderOnSourceChangedEnabled??!0,this.source=t,this.requestRender=this.requestRender.bind(this)}destroy(){this._texture&&(this._texture.dispose(),this._texture=null),t(this._uploadStatus)&&(this._uploadStatus.controller.abort(),this._uploadStatus=null)}get isSourceScaled(){return this.width!==this._sourceWidth||this.height!==this._sourceHeight}get height(){return void 0!==this._height?this._height:this._sourceHeight}set height(t){this._height=t}get source(){return this._source}set source(t){null==t&&null==this._source||(this._source=t,this._source instanceof HTMLImageElement?(this._sourceHeight=this._source.naturalHeight,this._sourceWidth=this._source.naturalWidth):(this._sourceHeight=this._source.height,this._sourceWidth=this._source.width),this.invalidateTexture())}get width(){return void 0!==this._width?this._width:this._sourceWidth}set width(t){this._width=t}beforeRender(t){super.beforeRender(t),this.updateTexture(t)}async setSourceAsync(e,r){t(this._uploadStatus)&&this._uploadStatus.controller.abort();const h=new AbortController,o=s();return i(r,(()=>h.abort())),i(h,(t=>o.reject(t))),this._uploadStatus={controller:h,resolver:o},this.source=e,o.promise}invalidateTexture(){this._textureInvalidated||(this._textureInvalidated=!0,this.requestRenderOnSourceChangedEnabled&&this.requestRender())}updateTransitionProperties(t,e){t>=64&&(this.fadeTransitionEnabled=!1,this.inFadeTransition=!1),super.updateTransitionProperties(t,e)}setTransform(t){const e=h(this.transforms.dvs),[s,i]=t.toScreenNoRotation([0,0],[this.x,this.y]),r=this.resolution/this.pixelRatio/t.resolution,d=r*this.width,c=r*this.height,_=Math.PI*this.rotation/180;o(e,e,l(s,i)),o(e,e,l(d/2,c/2)),u(e,e,-_),o(e,e,l(-d/2,-c/2)),a(e,e,l(d,c)),n(this.transforms.dvs,t.displayViewMat3,e)}setSamplingProfile(t){this._texture&&(t.mips&&!this._texture.descriptor.hasMipmap&&this._texture.generateMipmap(),this._texture.setSamplingMode(t.samplingMode))}bind(t,e){this._texture&&t.bindTexture(this._texture,e)}async updateTexture({context:e,painter:s}){if(!this._textureInvalidated)return;if(this._textureInvalidated=!1,this._texture||(this._texture=this._createTexture(e)),!this.source)return void this._texture.setData(null);this._texture.resize(this._sourceWidth,this._sourceHeight);const i=v(this.source);try{if(t(this._uploadStatus)){const{controller:t,resolver:e}=this._uploadStatus,r={signal:t.signal},{width:h,height:o}=this,u=this._texture,a=s.textureUploadManager;await a.enqueueTextureUpdate({data:i,texture:u,width:h,height:o},r),e.resolve(),this._uploadStatus=null}else this._texture.setData(i);this.ready()}catch(h){r(h)}}onDetach(){this.destroy()}_createTransforms(){return{dvs:d()}}_createTexture(t){const e=this.immutable&&t.type===m.WEBGL2;return new w(t,{target:p.TEXTURE_2D,pixelFormat:g.RGBA,internalFormat:e?x.RGBA8:g.RGBA,dataType:f.UNSIGNED_BYTE,wrapMode:b.CLAMP_TO_EDGE,isImmutable:e,width:this._sourceWidth,height:this._sourceHeight})}}export{R as Bitmap,S as isImageSource,T as rasterize};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../core/maybe.js\";class i{constructor(e,t,i){this.pixelBlock=e,this.extent=t,this.originalPixelBlock=i}get width(){return e(this.pixelBlock)?this.pixelBlock.width:0}get height(){return e(this.pixelBlock)?this.pixelBlock.height:0}render(e){const i=this.pixelBlock;if(t(i))return;const l=this.filter({pixelBlock:i});if(t(l.pixelBlock))return;const r=l.pixelBlock.getAsRGBA(),o=e.createImageData(l.pixelBlock.width,l.pixelBlock.height);o.data.set(r),e.putImageData(o,0,0)}getRenderedRasterPixels(){const e=this.filter({pixelBlock:this.pixelBlock});return t(e.pixelBlock)?null:{width:e.pixelBlock.width,height:e.pixelBlock.height,renderedRasterPixels:new Uint8Array(e.pixelBlock.getAsRGBA().buffer)}}}export{i as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nfunction t(t,e){return e?\"xoffset\"in e&&e.xoffset?Math.max(t,Math.abs(e.xoffset)):\"yoffset\"in e&&e.yoffset?Math.max(t,Math.abs(e.yoffset||0)):t:t}function e(t){let e=0,n=0;for(let r=0;r\"size\"===t.type)).map((e=>{const{maxSize:r,minSize:s}=e;return(n(r,t)+n(s,t))/2}));let s=0;const o=r.length;if(0===o)return t;for(let n=0;n{e=t(e,n.symbol)})),e}if(\"class-breaks\"===n.type){let e=o;return n.classBreakInfos.forEach((n=>{e=t(e,n.symbol)})),e}return\"dot-density\"===n.type||n.type,o}export{s as calculateTolerance};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{c as e}from\"../../../chunks/mat3f32.js\";import{Bitmap as t}from\"./Bitmap.js\";import{TiledDisplayObject as s}from\"./webgl/TiledDisplayObject.js\";class r extends s{constructor(e,s,r,i,a,n,m=null){super(e,s,r,i,a,n),this.bitmap=new t(m,{immutable:!1,requestRenderOnSourceChangedEnabled:!1}),this.bitmap.coordScale=[a,n],this.bitmap.once(\"isReady\",(()=>this.ready()))}destroy(){super.destroy(),this.bitmap.destroy()}beforeRender(e){super.beforeRender(e),this.bitmap.beforeRender(e)}afterRender(e){super.afterRender(e),this.bitmap.afterRender(e)}set stencilRef(e){this.bitmap.stencilRef=e}get stencilRef(){return this.bitmap.stencilRef}_createTransforms(){return{dvs:e(),tileMat3:e()}}setTransform(e){super.setTransform(e),this.bitmap.transforms.dvs=this.transforms.dvs}onAttach(){this.bitmap.stage=this.stage}onDetach(){this.bitmap&&(this.bitmap.stage=null)}}export{r as BitmapTile};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{create as e}from\"../../../geometry/support/aaBoundingRect.js\";import{BitmapTile as i}from\"./BitmapTile.js\";import{brushes as r}from\"./brushes.js\";import{WGLDrawPhase as t}from\"./webgl/enums.js\";import s from\"./webgl/TileContainer.js\";class n extends s{get requiresDedicatedFBO(){return this.children.some((e=>\"additive\"===e.bitmap.blendFunction))}createTile(r){const t=this._tileInfoView.getTileBounds(e(),r),s=this._tileInfoView.getTileResolution(r.level),[n,o]=this._tileInfoView.tileInfo.size;return new i(r,s,t[0],t[3],n,o)}prepareRenderPasses(e){const i=e.registerRenderPass({name:\"bitmap (tile)\",brushes:[r.bitmap],target:()=>this.children.map((e=>e.bitmap)),drawPhase:t.MAP});return[...super.prepareRenderPasses(e),i]}doRender(e){this.visible&&e.drawPhase===t.MAP&&super.doRender(e)}}export{n as BitmapTileContainer};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../chunks/tslib.es6.js\";import\"../../../core/Logger.js\";import\"../../../core/accessorSupport/ensureType.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/Error.js\";import\"../../../core/has.js\";import{subclass as i}from\"../../../core/accessorSupport/decorators/subclass.js\";import{BitmapTileContainer as r}from\"../engine/BitmapTileContainer.js\";const t=t=>{let s=class extends t{attach(){this.view.timeline.record(`${this.layer.title} (BitmapTileLayer) Attach`),this._bitmapView=new r(this._tileInfoView),this.container.addChild(this._bitmapView)}detach(){this.container.removeChild(this._bitmapView),this._bitmapView?.removeAllChildren()}};return s=e([i(\"esri.views.2d.layers.BitmapTileLayerView2D\")],s),s};export{t as BitmapTileLayerView2D};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nfunction e(e){return e instanceof HTMLImageElement?e.naturalWidth:e.width}function t(e){return e instanceof HTMLImageElement?e.naturalHeight:e.height}function n(n,l,r,u){if(r.level===u.level)return l;const i=n.tileInfo.size,a=n.getTileResolution(r.level),c=n.getTileResolution(u.level);let g=n.getLODInfoAt(u.level);const h=g.getXForColumn(u.col),d=g.getYForRow(u.row);g=n.getLODInfoAt(r.level);const f=g.getXForColumn(r.col),s=g.getYForRow(r.row),m=e(l)/i[0],v=t(l)/i[1],w=Math.round(m*((h-f)/a)),I=Math.round(v*(-(d-s)/a)),M=Math.round(m*i[0]*(c/a)),F=Math.round(v*i[1]*(c/a)),L=o(i);return L.getContext(\"2d\").drawImage(l,w,I,M,F,0,0,i[0],i[1]),L}function o(e){const t=document.createElement(\"canvas\");return[t.width,t.height]=e,t}export{o as createBlankImage,n as resampleImage};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.25/esri/copyright.txt for details.\n*/\nimport\"../../geometry.js\";import{isSome as e,isNone as t}from\"../../core/maybe.js\";import{getMetersPerUnitForSR as r}from\"../../core/unitUtils.js\";import{calculateTolerance as n}from\"../../renderers/support/clickToleranceUtils.js\";import i from\"../../geometry/Extent.js\";function a(t,n,a,o=new i){let s;if(\"2d\"===a.type)s=n*a.resolution;else if(\"3d\"===a.type){const i=a.overlayPixelSizeInMapUnits(t),o=a.basemapSpatialReference;s=e(o)&&!o.equals(a.spatialReference)?r(o)/r(a.spatialReference):n*i}const m=t.x-s,p=t.y-s,c=t.x+s,l=t.y+s,{spatialReference:f}=a;return o.xmin=Math.min(m,c),o.ymin=Math.min(p,l),o.xmax=Math.max(m,c),o.ymax=Math.max(p,l),o.spatialReference=f,o}function o(e,r,i){const o=i.toMap(e);if(t(o))return!1;return a(o,n(),i,s).intersects(r)}const s=new i;export{a as createQueryGeometry,o as intersectsDrapedGeometry};\n"],"sourceRoot":""}