{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/RasterVFDisplayObject.js","webpack:///./node_modules/@arcgis/core/layers/support/rasterFunctions/vectorFieldUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/GeometryUtils.js","webpack:///./node_modules/@arcgis/core/layers/support/rasterDatasets/EphemeralBlockCache.js","webpack:///./node_modules/@arcgis/core/layers/support/rasterDatasets/RawBlockCache.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/BackgroundPrograms.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/dataUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/DefaultVertexAttributeLayouts.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/BrushRasterBitmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushBitmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushClip.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/BrushOverlay.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrush.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushFill.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushDotDensity.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushMarker.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushHeatmap.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushPieChart.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLBackground.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLCircle.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLFill.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLLine.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushVTLSymbol.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLabel.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushLine.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLGeometryBrushText.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/brushes.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/BrushVectorField.js","webpack:///./node_modules/@arcgis/core/layers/support/PixelBlock.js","webpack:///./node_modules/@arcgis/core/views/2d/layers/support/util.js","webpack:///./node_modules/@arcgis/core/views/webgl/ShaderCompiler.js","webpack:///./node_modules/@arcgis/core/chunks/vec4f32.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/TileContainer.js","webpack:///./node_modules/@arcgis/core/views/webgl/ProgramTemplate.js","webpack:///./node_modules/@arcgis/core/views/layers/RefreshableLayerView.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/TileInfoPrograms.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushInfo.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/VertexStream.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/utils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/styles/Imagery.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/styles/Particles.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/styles/Stack.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/styles/Streamlines.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/createFlowStyle.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/FlowContainer.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/FlowDisplayData.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/FlowDisplayObject.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/FlowStrategy.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/FlowView2D.js","webpack:///./node_modules/@arcgis/core/views/webgl/reservedWordsGLSL3.js","webpack:///./node_modules/@arcgis/core/views/webgl/testUtils.js","webpack:///./node_modules/@arcgis/core/views/webgl/ShaderTranspiler.js","webpack:///./node_modules/@arcgis/core/views/webgl/Program.js","webpack:///./node_modules/@arcgis/core/chunks/earcut.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/Mesh2D.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/ClippingInfo.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/WGLContainer.js","webpack:///./node_modules/@arcgis/core/layers/support/rasterFunctions/pixelUtils.js","webpack:///./node_modules/@arcgis/core/views/layers/support/popupUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/RasterTile.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/RasterTileContainer.js","webpack:///./node_modules/@arcgis/core/views/2d/layers/imagery/BaseImageryTileSubView2D.js","webpack:///./node_modules/@arcgis/core/views/2d/layers/imagery/ImageryTileView2D.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/RasterVFTile.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/RasterVFTileContainer.js","webpack:///./node_modules/@arcgis/core/views/2d/layers/imagery/VectorFieldTileView2D.js","webpack:///./node_modules/@arcgis/core/views/layers/ImageryTileLayerView.js","webpack:///./node_modules/@arcgis/core/views/2d/layers/ImageryTileLayerView2D.js","webpack:///./node_modules/@arcgis/core/layers/support/rasterFunctions/rasterProjectionHelper.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/shaderRepository.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/shaders/sources/resolver.js","webpack:///./node_modules/@arcgis/core/views/webgl/rasterUtils.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/flow/BrushFlow.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/vectorTiles/decluttering/config.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/TiledDisplayObject.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrushStencil.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/vectorTiles/style/StyleDefinition.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/webgl/brushes/WGLBrush.js","webpack:///./node_modules/@arcgis/core/views/2d/engine/imagery/RasterBitmap.js"],"names":["y","m","constructor","t","super","this","_source","_symbolizerParameters","_vaoInvalidated","coordScale","height","stencilRef","resolution","pixelRatio","x","rotation","rawPixelData","width","source","destroy","vaoData","magdir","vao","dispose","scalar","JSON","stringify","invalidateVAO","requestRender","updateVectorFieldVAO","s","e","style","symbolizerParameters","l","_createVectorFieldVAO","context","h","a","r","ready","_createTransforms","dvs","n","setTransform","transforms","toScreenNoRotation","u","d","Math","PI","c","i","o","displayViewMat3","onAttach","onDetach","vertexData","indexData","createVertex","v","STATIC_DRAW","Float32Array","createIndex","Uint32Array","geometry","location","name","count","type","f","FLOAT","normalized","_","attributes","bufferLayouts","elementCount","length","Map","set","esriMetersPerSecond","esriKilometersPerHour","esriKnots","esriFeetPerSecond","esriMilesPerHour","get","sqrt","atan2","cos","sin","p","clone","pixels","pixelType","startsWith","createEmptyBand","M","g","mask","validPixelCount","maskIsAlpha","updateStatistics","spatialReference","equals","extent","round","xmin","ymax","xmax","ymin","floor","ceil","w","k","P","b","I","A","U","S","push","D","F","j","N","J","O","q","B","E","pennants","barbs","shaft","min","inputUnit","outputUnit","breakValues","fromJSON","filter","random","Number","MAX_VALUE","Uint8Array","max","POSITIVE_INFINITY","LN2","log","_timer","_cachedBlocks","_size","_duration","_interval","decreaseRefCount","has","refCount","delete","controller","abort","getBlock","ts","Date","now","block","putBlock","_trim","_updateTimer","deleteBlock","updateMaxSize","empty","clear","_clearTimer","getCurrentSize","size","setInterval","Array","from","clearInterval","rasterInfo","cache","some","isResolved","isRejected","then","catch","normalize","transform","Set","inverseTransform","pyramidLevel","pyramidResolution","excessiveReading","storageInfo","R","origin","C","pyramidBlockWidth","blockWidth","pyramidBlockHeight","blockHeight","$","H","add","forEach","shaders","vertexShader","fragmentShader","getLogger","async","performance","info","buffer","byteLength","Promise","resolve","data","smoothing","interpolate","velocityScale","speed","verticesPerLine","minSpeedThreshold","segmentLength","acos","maxTurnAngle","collisions","lineCollisionWidth","Int32Array","lineSpacing","sort","getFloat","density","exp","reduce","startVertex","numberOfVertices","totalTime","timeSeed","lineVertices","lineDescriptors","V","L","fill","valid","all","requestProjectedLocalDirections","signal","timeExtent","load","dataType","fetchImage","pixelData","pixelBlock","fetchPixels","BYTE","UNSIGNED_SHORT","arguments","_desc","lut","vsPath","fsPath","stretch","hillshade","_rendererUniformInfos","_quad","prepareState","setBlendingEnabled","setBlendFunctionSeparate","ONE","ONE_MINUS_SRC_ALPHA","setColorMask","setStencilWriteMask","setStencilTestEnabled","setStencilFunction","EQUAL","draw","suspended","timeline","painter","begin","capabilities","textureFloat","textureFloatLinear","updateTexture","_getShaderVariations","materialManager","getProgram","_drawWithProgram","end","isCompiled","transformGrid","opacity","useProgram","_getUniformInfos","names","textures","getTextures","u_coordScale","u_dvsMat3","colormap","colormapOffset","join","interpolation","isRendereredSource","spacing","nearest","defines","samplingMode","NEAREST","mips","bilinear","LINEAR","bicubic","trilinear","LINEAR_MIPMAP_LINEAR","state","isSourceScaled","blendFunction","renderingOptions","computedOpacity","setSamplingProfile","bind","setUniformMatrix3fv","setUniform1i","setUniform2fv","setUniform1f","SHORT","_color","_program","setFaceCullingEnabled","setStencilOp","KEEP","REPLACE","ALWAYS","getVAO","indexBuffer","setUniform4fv","displayMat3","bindVAO","drawElements","TRIANGLES","UNSIGNED_INT","tex","GREATER","isReady","dvsMat3","isWrapAround","texture","bindTexture","drawArrays","TRIANGLE_STRIP","_computeDesc","includes","getGeometryType","commit","getGeometry","attributeView","bindTextures","forEachCommand","materialKey","symbologyType","supportsSymbology","drawGeometry","_setSharedUniforms","displayLevel","passOptions","position","distance","tileMat3","viewMat3","_setSizeVVUniforms","vvSizeMinMaxValue","vvSizeScaleStops","vvSizeScaleStopsValue","vvSizeFieldStops","getSizeVVFieldStops","key","level","setUniform1fv","values","sizes","vvSizeUnitValue","vvSizeUnitValueToPixelsRatio","_setColorAndOpacityVVUniforms","vvColor","vvColorValues","vvColors","vvOpacity","vvOpacityValues","vvOpacities","_setRotationVVUniforms","vvRotation","vvMaterialParameters","vvRotationType","_getTriangleDesc","map","findIndex","strides","divisor","offset","stride","UNSIGNED_BYTE","SIMPLE","OUTLINE_FILL_SIMPLE","splice","shader","vertexLayout","FILL","DOT_DENSITY","rendererInfo","requiredLevel","T","hittestAttributes","programSpec","POINTS","G","getMaterialProgram","setUniform2f","col","row","textureBinding","textureManager","target","indexCount","indexFrom","BYTES_PER_ELEMENT","_drawFills","_dotTextureSize","_dotTextures","_dotSamplers","_dotVAO","_dotDesc","_disposeTextures","_dotFBO","_drawDotLocations","_drawDotDensity","rendererSchema","_createDotDensityMesh","dotSize","window","devicePixelRatio","getViewport","dotScale","colors","activeDots","backgroundColor","dotValue","setViewport","getBoundFramebufferObject","_createFBO","bindFramebuffer","setClearColor","gl","COLOR_BUFFER_BIT","STENCIL_BUFFER_BIT","scale","setUniformMatrix4fv","_bindDotDensityTextures","colorTexture","TEXTURE_2D","pixelFormat","RGBA","wrapMode","CLAMP_TO_EDGE","colorTarget","TEXTURE","depthStencilTarget","DEPTH_STENCIL_RENDER_BUFFER","internalFormat","DEPTH_STENCIL","_createDotDensityTextures","seed","setUniform1iv","Int16Array","_seed","_allocDotDensityTexture","REPEAT","MARKER","HEATMAP","PIE_CHART","_drawMarkers","_accumulateOutputTexture","_accumulateFramebuffer","_resolveGradientTexture","_tileQuad","_loadQualityProfile","_prepareAccumulatePass","_drawResolvePass","referenceScale","radius","isFieldActive","_loadResources","_updateResources","setBlendFunction","minDensity","densityRange","WEBGL2","shadingRate","RED","R32F","R16F","gradientHash","gradient","_prevGradientHash","resize","setData","_qualityProfile","colorBufferFloat","textureHalfFloat","textureHalfFloatLinear","HALF_FLOAT","floatBlend","error","warnOnce","defaultColor","othersColor","outlineColor","holePercentage","sectorThreshold","outlineWidth","_patternMatrix","_programOptions","id","pattern","_vao","drawMany","styleLayerUID","_loadWGLResources","styleLayer","backgroundMaterial","vectorTilesMaterialManager","getPaintValue","spriteMosaic","drawPhase","HITTEST","getMosaicItemPosition","tl","br","page","getPageSize","setUniform4f","z","rangeX","Int8Array","getAttributeLocations","getLayoutInfo","layerData","circleIndexCount","circleMaterial","VIEWPORT","setDataUniforms","prepareForRendering","circleVertexArrayObject","circleIndexStart","triangleCount","_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","AUTO","POINT","MAP","isIconSDF","updateOpacityInfo","iconVertexArrayObject","lastOpacityUpdate","_renderIconRange","getWidth","getHeight","glyphMosaic","textMaterial","glyphPerPageElementsMap","W","_glyphTextureSize","Y","textVertexArrayObject","_renderGlyphRange","LABEL","mapAligned","abs","LINE","TEXT","marker","line","text","label","clip","stencil","bitmap","overlay","raster","rasterVF","flow","tileInfo","vtlBackground","vtlFill","vtlLine","vtlCircle","vtlSymbol","dotDensity","heatmap","pieChart","beaufort_ft","beaufort_m","beaufort_km","beaufort_mi","beaufort_kn","classified_arrow","ocean_current_m","ocean_current_kn","single_arrow","wind_speed","_drawScalars","_drawTriangles","dataRange","rotationType","symbolPercentRange","_getSymbolSize","symbolTileSize","statistics","getPixelArrayConstructor","Uint16Array","Float64Array","castPixelType","toLowerCase","getPlaneCount","addData","minValue","maxValue","getAsRGBA","ArrayBuffer","_fillFromNon8Bit","_fillFrom8Bit","Uint8ClampedArray","getAsRGBAFloat","_fillFrom32Bit","_calculateBandStatistics","clamp","extractBands","slice","json","write","prototype","esriGeometryPoint","esriGeometryMultipoint","esriGeometryPolyline","esriGeometryPolygon","esriGeometryMultiPatch","mesh","toJSON","bandCount","attributeTable","readFile","resolveIncludes","_resolve","_read","Error","exec","path","start","index","Object","freeze","defineProperty","__proto__","create","fromValues","createView","zeros","ones","unitX","unitY","unitZ","unitW","ZEROS","ONES","UNIT_X","UNIT_Y","UNIT_Z","UNIT_W","Symbol","toStringTag","value","_tileInfoView","renderChildren","sortChildren","setStencilReference","createRenderParams","getClosestInfoForScale","scaleToZoom","prepareRenderPasses","registerRenderPass","brushes","DEBUG","HIGHLIGHT","getStencilTarget","children","updateTransforms","getTileResolution","initialize","handles","layer","doRefresh","dataChanged","declaredClass","_outlineProgram","_tileInfoProgram","_outlineVertexArrayObject","_tileInfoVertexArrayObject","_canvas","rangeY","LINE_STRIP","_getTexture","descriptor","triangleCountReportedInDebug","document","createElement","setAttribute","getContext","font","textAlign","textBaseline","clearRect","fillStyle","fillRect","fillText","rctx","_vertexBuffer","_count","unbind","maxPathLength","flowRepresentation","kind","toRgba","hasVisualVariables","trailWidth","getVisualVariablesForType","stops","minDataValue","maxDataValue","minSize","maxSize","color","apply","setUniform3fv","simulationSettings","loadImagery","createFlowMesh","_params","animated","isCompatible","render","program","vertexArray","_flowData","_values","attach","flipped","detach","flowSpeed","time","trailLength","featheringSize","featheringOffset","introFade","fadeToZero","decayRate","_vertexData","_indexData","_styles","resources","background","trailCap","flowStyle","doRender","AbortController","abortController","update","_displayData","displayData","toScreen","_flowDisplayObject","_loading","flowContainer","addChild","_clear","removeAllChildren","expand","centerAt","_loadImagery","_createFlowMesh","meshType","flowData","attached","container","redrawOrRefetch","_updateVisualization","_strategy","updating","multidimensionalDefinition","mosaicRule","renderingRule","definitionExpression","removeAll","stationary","layerView","requestUpdate","hitTest","moveEnd","renderer","enableCache","exports","replace","column","X","test","indexOf","concat","match","toString","parseInt","VERTEX_SHADER","trim","FRAGMENT_SHADER","_context","_locations","_uniformBlockBindings","_refCount","_compiled","_nameToUniformLocation","_nameToUniform1","_nameToUniform1v","_nameToUniform2","_nameToUniform3","_nameToUniform4","_nameToUniformMatrix3","_nameToUniformMatrix4","console","_vShader","_fShader","instanceCounter","increment","Shader","_glName","createProgram","attachShader","bindAttribLocation","linkProgram","getProgramParameter","LINK_STATUS","VALIDATE_STATUS","getError","getShaderParameter","COMPILE_STATUS","getProgramInfoLog","getUniformBlockIndex","uniformBlockBinding","Program","getExtension","glName","COMPLETION_STATUS_KHR","deleteShader","decrement","deleteProgram","ref","_getUniformLocation","numUniforms","getUniformLocation","hasUniform","uniform1i","uniform1iv","setUniform2iv","uniform2iv","setUniform3iv","uniform3iv","setUniform4iv","uniform4iv","uniform1f","uniform1fv","uniform2f","uniform2fv","setUniform3f","uniform3f","uniform3fv","uniform4f","uniform4fv","uniformMatrix3fv","uniformMatrix4fv","stop","createShader","shaderSource","compileShader","getShaderInfoLog","enabled","compiledLOC","next","prev","Z","steiner","prevZ","nextZ","deviation","flatten","vertices","holes","dimensions","coords","lengths","_cache","indices","primitiveType","isMapSpace","fromScreenExtent","fromPolygon","fromMapExtent","fromRect","vertexBuffers","getIndexBuffer","getVertexBuffers","keys","parseFloat","_clip","stage","_handle","version","_invalidate","_destroyGL","remove","_lastWidth","_lastHeight","_createMesh","_createScreenRect","left","right","top","bottom","fromPath","fromGeometry","_clips","clips","_updateClippingInfo","globalOpacity","profiler","recordContainerStart","beforeRenderLayer","_clippingInfos","compositeLayer","recordContainerEnd","_renderPasses","beforeRender","afterRender","requireFBO","requiresDedicatedFBO","LABEL_ALPHA","items","fromClipArea","indexed2DColormap","alphaSpecified","fillUnspecified","indexedColormap","mappedColor","find","clipOffset","clipSize","mosaic","hasGCSSShiftTransform","halfWorldWidth","resolutionX","startX","rightPadding","leftMargin","alignmentInfo","blockWidths","done","cols","rows","offsets_x","offsets_y","offsets_xi","offsets_yi","gridWidth","coefficients","isNaN","popupTemplate","getRequiredFields","fieldsIndex","lastEditInfoEnabled","objectIdField","typeIdField","globalIdField","relationships","keyField","defaultPopupTemplateEnabled","defaultPopupTemplate","once","isCustomTilingScheme","createTile","_getTileBounds","visible","getTileBounds","world","lodAt","_emptyTilePixelBlock","_tileStrategy","_fetchQueue","_blockCacheRegistryUrl","_blockCacheRegistryId","_srcResolutions","previousLOD","_needBlockCacheUpdate","_globalSymbolizerParams","_symbolizerParams","_abortController","_isCustomTilingScheme","_globalUpdateRequested","updatingHandles","addPromise","_redrawImage","_get","_set","useProgressiveUpdate","_getCacheSize","cachePolicy","acquireTile","releaseTile","cacheSize","tileInfoView","pause","resume","ioConfig","sampling","hasTilingEffects","_updateSymbolizerParams","updateCacheSize","supportsTextureFloat","useWebGLForProcessing","_initializeTileInfo","fullExtent","_computeFetchConcurrency","concurrency","process","_fetchTile1","_updateBlockCacheRegistry","_enqueueTileFetch","removeChild","createEmptyTilePixelBlock","canUseWebGLForProcessing","isWrappable","view","allowPartialFill","datumTransformation","registryId","requestRawData","srcResolution","disableWrapAround","fetchTile","scales","srcResolutions","blockBoundary","maxCol","minCol","maxRow","minRow","_enqueueTileFetch1","bandIds","moving","getTileCoords","updateTileSource","symbolizerParams","globalSymbolizerParams","updateRenderer","_updateGlobalSymbolizerParams","updateTileSymbolizerParameters","local","global","symbolizer","generateWebGLParameters","isGCS","isGeographic","factor","outMin","outMax","url","normalizeRasterFetchOptions","multidimensionalInfo","getSliceIndex","reset","tiles","canRenderInWebGL","_getLayerInterpolation","applyRenderer","invalidateTexture","colorRamp","tileData","symbolTypes","convertVectorFieldData","_getTileSymbolOffset","_sampleVectorFieldData","_updateSymbolType","_rasterFieldPrefix","_getfullExtent","projectFullExtent","dynamicRangeAdjustment","supportsSpatialReference","popupEnabled","magdirValue","identify","hasStandardTime","getStandardTimeValue","ObjectId","_formatAttributeValue","features","Value","VALUE","String","hasOwnProperty","sourceLayer","fieldInfos","_getFieldInfo","format","_formatDelimitedString","_formatNumberFromString","fieldName","split","readOnly","_useWebGLForProcessing","_useProgressiveUpdate","subview","notifyChange","isUpdating","increaseRasterJobHandlerUsage","_updateSubview","blendMode","effect","decreaseRasterJobHandlerUsage","_detachSubview","moveStart","viewChange","mapPoint","graphic","_attachSubview","addChildAt","None","North","South","Both","3395","3410","3857","3975","4087","4088","6933","32662","53001","53002","53003","53004","53016","53017","53034","53079","53080","54001","54002","54003","54004","54016","54017","54034","54079","54080","54100","54101","center","K","inSR","outSR","preferPE","points","isWebMercator","isWGS84","NaN","wkid","coordsys","fromString","PE_TYPE_GEOGCS","PE_TYPE_PROJCS","wkt","projToGeog","steps","geogtran","PE_TYPE_GEOGTRAN","geogToGeog","isInverse","PE_TRANSFORM_2_TO_1","PE_TRANSFORM_1_TO_2","isEnvelope","bbox","geogToProj","xres","yres","usePixelCenter","gcs","pcs","generate","horizonGcsGenerate","horizonPcsGenerate","getInclusive","getKind","getNorthPoleLocation","getSouthPoleLocation","isPannableRectangle","getCoord","isPannable","coef","poleLocation","rings","originX","pyramidsInfo","nativePixelSize","maximumPyramidLevel","pyramidScalingFactor","datsetColumnCount","worldColumnCountFromOrigin","originColumnOffset","Q","getGeogcs","getCode","isAdaptive","outofBoundPointCount","offsets","projectedExtent","srcBufferExtent","includeGCSGrid","gcsGrid","pixelSize","rasterTransform","hasWrapAround","ee","te","pyramidResolutions","ne","projectedPixelSize","bitBlit","blend","dot","filtering","fx","integrate","heatmapResolve","highlight","magnifier","materials","hittest","icon","heatmapAccumulate","pie","shared","blit","bloom","composite","gaussianBlur","luminosityHighPass","blur","dra","sobel","filterEffect","pp","common","imagery","particles","streamlines","reproject","util","RGBA32F","u_flipY","u_applyTransform","u_opacity","u_transformSpacing","u_transformGridSize","u_targetImageSize","u_srcImageSize","u_colormapOffset","u_colormapMaxIndex","u_scale","u_offset","u_bandCount","u_minOutput","u_maxOutput","u_minCutOff","minCutOff","u_maxCutOff","maxCutOff","u_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","u_maxValue","ACTIVE_UNIFORMS","getActiveUniform","FLOAT_VEC2","FLOAT_VEC3","FLOAT_VEC4","FLOAT_MAT3","FLOAT_MAT4","INT","BOOL","INT_VEC2","BOOL_VEC2","INT_VEC3","BOOL_VEC3","INT_VEC4","BOOL_VEC4","_visualState","_initialized","_solidProgram","_solidVertexArrayObject","setDepthWriteEnabled","setDepthTestEnabled","setStencilFunctionSeparate","FRONT_AND_BACK","_initialize","BACKGROUND","SYMBOL","CIRCLE","VISIBLE","NONE","LINE_CENTER","LEFT","CENTER","RIGHT","TOP","BOTTOM","TOP_LEFT","TOP_RIGHT","BOTTOM_LEFT","BOTTOM_RIGHT","UPPERCASE","LOWERCASE","HORIZONTAL","VERTICAL","backgroundLayoutDefinition","visibility","default","fillLayoutDefinition","lineLayoutDefinition","BUTT","MITER","symbolLayoutDefinition","minimum","circleLayoutDefinition","backgroundPaintDefinition","maximum","fillPaintDefinition","linePaintDefinition","symbolPaintDefinition","rasterPaintDefinition","circlePaintDefinition","stretchType","_textureInvalidated","_colormapTextureInvalidated","_supportsBilinearTexture","_suspended","_bandIds","_interpolation","_transformGrid","_rasterTexture","_transformGridTexture","_colormapTexture","_rasterTextureBandIds","_isBandIdschanged","setSamplingMode","_getTextureSamplingMethod","_isValidSource","_updateColormapTexture","_createOrDestroyRasterTexture","_colormap"],"mappings":"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","file":"js/chunk-5e1a8e82.e8c7fa94.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport\"../../../../core/has.js\";import{isSome as t,isNone as e}from\"../../../../core/maybe.js\";import{b as s,c as a,r,j as i,m as o}from\"../../../../chunks/mat3.js\";import{c as n}from\"../../../../chunks/mat3f32.js\";import{f as c}from\"../../../../chunks/vec2f32.js\";import{createVFMesh as l,createVFMeshScalar as h}from\"../../../../layers/support/rasterFunctions/vectorFieldUtils.js\";import{DisplayObject as m}from\"../DisplayObject.js\";import{createProgramDescriptor as u}from\"../webgl/Utils.js\";import{BufferObject as d}from\"../../../webgl/BufferObject.js\";import{Usage as v,DataType as f}from\"../../../webgl/enums.js\";import{VertexArrayObject as _}from\"../../../webgl/VertexArrayObject.js\";class y extends m{constructor(t=null){super(),this._source=null,this._symbolizerParameters=null,this._vaoInvalidated=!0,this.coordScale=[1,1],this.height=null,this.stencilRef=0,this.resolution=null,this.pixelRatio=1,this.x=0,this.y=0,this.rotation=0,this.rawPixelData=null,this.width=null,this.source=t}destroy(){t(this.vaoData)&&(this.vaoData.magdir?.vao.dispose(),this.vaoData.scalar?.vao.dispose(),this.vaoData=null)}get symbolizerParameters(){return this._symbolizerParameters}set symbolizerParameters(t){JSON.stringify(this._symbolizerParameters)!==JSON.stringify(t)&&(this._symbolizerParameters=t,this.invalidateVAO())}get source(){return this._source}set source(t){this._source=t,this.invalidateVAO()}invalidateVAO(){!this._vaoInvalidated&&t(this.vaoData)&&(this.vaoData.magdir?.vao.dispose(),this.vaoData.scalar?.vao.dispose(),this.vaoData=null,this._vaoInvalidated=!0,this.requestRender())}updateVectorFieldVAO(s){if(this._vaoInvalidated){if(this._vaoInvalidated=!1,t(this.source)&&e(this.vaoData)){const{style:t}=this.symbolizerParameters;switch(t){case\"beaufort_ft\":case\"beaufort_km\":case\"beaufort_kn\":case\"beaufort_m\":case\"beaufort_mi\":case\"classified_arrow\":case\"ocean_current_kn\":case\"ocean_current_m\":case\"single_arrow\":{const t=l(this.source,this.symbolizerParameters),e=this._createVectorFieldVAO(s.context,t);this.vaoData={magdir:e}}break;case\"simple_scalar\":{const t=h(this.source,this.symbolizerParameters),e=this._createVectorFieldVAO(s.context,t);this.vaoData={scalar:e}}break;case\"wind_speed\":{const t=l(this.source,this.symbolizerParameters),e=this._createVectorFieldVAO(s.context,t),a=h(this.source,this.symbolizerParameters),r=this._createVectorFieldVAO(s.context,a);this.vaoData={magdir:e,scalar:r}}}}this.ready(),this.requestRender()}}_createTransforms(){return{dvs:n()}}setTransform(t){const e=s(this.transforms.dvs),[n,l]=t.toScreenNoRotation([0,0],[this.x,this.y]),h=this.resolution/this.pixelRatio/t.resolution,m=h*this.width,u=h*this.height,d=Math.PI*this.rotation/180;a(e,e,c(n,l)),a(e,e,c(m/2,u/2)),r(e,e,-d),a(e,e,c(-m/2,-u/2)),i(e,e,c(m,u)),o(this.transforms.dvs,t.displayViewMat3,e)}onAttach(){this.invalidateVAO()}onDetach(){this.invalidateVAO()}_createVectorFieldVAO(t,e){const{vertexData:s,indexData:a}=e,r=d.createVertex(t,v.STATIC_DRAW,new Float32Array(s)),i=d.createIndex(t,v.STATIC_DRAW,new Uint32Array(a)),o=u(\"vector-field\",{geometry:[{location:0,name:\"a_pos\",count:2,type:f.FLOAT,normalized:!1},{location:1,name:\"a_offset\",count:2,type:f.FLOAT,normalized:!1},{location:2,name:\"a_vv\",count:2,type:f.FLOAT,normalized:!1}]});return{vao:new _(t,o.attributes,o.bufferLayouts,{geometry:r},i),elementCount:a.length}}}export{y as RasterVFDisplayObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{JSONMap as t}from\"../../../core/jsonMap.js\";import{isNone as e,unwrap as n}from\"../../../core/maybe.js\";import r from\"../PixelBlock.js\";import{isValidPixelBlock as o}from\"./pixelUtils.js\";const a=new Map;a.set(\"meter-per-second\",1),a.set(\"kilometer-per-hour\",.277778),a.set(\"knots\",.514444),a.set(\"feet-per-second\",.3048),a.set(\"mile-per-hour\",.44704);const s=180/Math.PI,i=5,h=new t({esriMetersPerSecond:\"meter-per-second\",esriKilometersPerHour:\"kilometer-per-hour\",esriKnots:\"knots\",esriFeetPerSecond:\"feet-per-second\",esriMilesPerHour:\"mile-per-hour\"});function l(t,e){return a.get(t)/a.get(e)||1}function c(t){return(450-t)%360}function u(t,e=\"geographic\"){const[n,r]=t,o=Math.sqrt(n*n+r*r);let a=Math.atan2(r,n)*s;return a=(360+a)%360,\"geographic\"===e&&(a=c(a)),[o,a]}function f(t,e=\"geographic\"){let n=t[1];\"geographic\"===e&&(n=c(n)),n%=360;const r=t[0];return[r*Math.cos(n/s),r*Math.sin(n/s)]}function p(t,r,a,s=\"geographic\"){if(!o(t)||e(a))return t;const i=\"vector-magdir\"===r?t.clone():n(m(t,r)),h=i.pixels[1];for(let e=0;e0){const[r,o]=w(g,b,e,l),[a,s]=w(d,M,e,l);U.push(r),U.push(o),U.push(t),U.push(n),U.push(a),U.push(s)}else{const[r,o]=w(g,x,e,l),[a,s]=w(k,y,e,l),[i,h]=w(I,v,e,l);S.push(t),S.push(n),S.push(i),S.push(h),S.push(a),S.push(s),S.push(r),S.push(o)}b+=a,M+=a,x+=a,y+=a,v+=a}const[D,F]=w(c+r/2,u+s,e,l),j=r/2+f,[N,J]=w(c+j,u+s,e,l),[O,q]=w(c+r/2,u-h,e,l),[B,E]=w(c+j,u-h,e,l);return{pennants:U,barbs:S,shaft:[D,F,N,J,O,q,B,E]}}function w(t,e,n,r=1){const o=Math.sqrt(t*t+e*e)/r,a=(2*Math.PI+Math.atan2(e,t))%(2*Math.PI);return[o,(2*Math.PI+a-n)%(2*Math.PI)]}const y=[0,1,3,6,10,16,21,27,33,40,47,55,63],P=[0,.5,1,1.5,2],b=[0,.25,.5,1,1.5,2,2.5,3,3.5,4];function I(t,e,n,r){const o=l(r||\"knots\",n);let a;for(a=1;at>0)).length:p*m,w=new Float32Array(k*l),y=new Uint32Array(c*k);for(let h=0;h=i){const n=(c[e]+360)%360/180*Math.PI??2*Math.PI*Math.random(),{pennants:a,barbs:s,shaft:i}=_[Math.min(Math.floor(l/5),29)];if(a.length+s.length===0)continue;let M=f.length/u;const g=(t+.5)/r,x=(h+.5)/o;for(let t=0;t=(P-M)*(b-g)*(1-a)){w[o]=1;const[t,n]=u([x[o]/e,k[o]/e]);x[o]=t,k[o]=n}else w[o]=0,x[o]=0,k[o]=0}const P=new r({width:d,height:M,pixels:[x,k],mask:w});return P.updateStatistics(),P}export{p as convertToLocalDirections,m as convertVectorFieldData,d as convertVectorFieldUnit,D as createVFMesh,S as createVFMeshScalar,l as getUnitConversionFactor,F as sampleVectorField,M as snapImageToSymbolTile,h as unitKebabDict,u as uvComponentToVector};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/esri/copyright.txt for details.\n*/\nclass t{constructor(t=15e3,e=5e3){this._timer=null,this._cachedBlocks=new Map,this._size=-1,this._duration=t,this._interval=Math.min(t,e)}decreaseRefCount(t,e){const s=t+\"/\"+e,r=this._cachedBlocks;if(r.has(s)){const t=r.get(s);return t.refCount--,t.refCount<=0&&(r.delete(s),t.controller&&t.controller.abort()),t.refCount}return 0}getBlock(t,e){const s=t+\"/\"+e,r=this._cachedBlocks;if(r.has(s)){const t=r.get(s);return t.ts=Date.now(),t.refCount++,r.delete(s),r.set(s,t),t.block}return null}putBlock(t,e,s,r=null){const i=this._cachedBlocks,c=t+\"/\"+e;if(i.has(c)){const t=i.get(c);t.ts=Date.now(),t.refCount++}else i.set(c,{block:s,ts:Date.now(),refCount:1,controller:r});this._trim(),this._updateTimer()}deleteBlock(t,e){const s=this._cachedBlocks,r=t+\"/\"+e;s.has(r)&&s.delete(r)}updateMaxSize(t){this._size=t,this._trim()}empty(){this._cachedBlocks.clear(),this._clearTimer()}getCurrentSize(){return this._cachedBlocks.size}_updateTimer(){if(null!=this._timer)return;const t=this._cachedBlocks;this._timer=setInterval((()=>{const e=Array.from(t),s=Date.now();for(let r=0;r=t.size)return;const e=Array.from(t);for(let s=0;snull!=e))||c.delete(e)}}function f(e){c.delete(e)}function h(e,t,n){if(!c.has(e))return null==t?a.decreaseRefCount(e,n):0;const o=c.get(e);if(null==o[t])return a.decreaseRefCount(e,n);const r=o[t].cache;if(r.has(n)){const e=r.get(n);if(e.refCount--,0===e.refCount){r.delete(n);for(let e=0;ei.isResolved=!0)).catch((()=>i.isRejected=!0)),l[t].cache.set(n,i)}function d(e,t,n){if(!c.has(e))return void(null==t&&a.deleteBlock(e,n));const o=c.get(e);null!=o[t]?o[t].cache.delete(n):a.deleteBlock(e,n)}function y(e,t){if(!c.has(e))return null;const n=c.get(e);return null==n[t]?null:n[t]}function g(t,c,a,i,s,u,f=null){const h=y(t,c),m=h.extent,{cache:x,rasterInfo:d}=h;if(m&&m.xmin===a.xmin&&m.xmax===a.xmax&&m.ymin===a.ymin&&m.ymax===a.ymax)return;const g=a.clone().normalize(),{spatialReference:p,transform:k}=d,M=new Set;for(let y=0;y0?R.pyramidBlockWidth:R.blockWidth,w=h>0?R.pyramidBlockHeight:R.blockHeight,$=1,I=Math.max(0,Math.floor(j.x/b)-$),H=Math.max(0,Math.floor(j.y/w)-$),E=Math.floor((j.x+v-1)/b)+$,P=Math.floor((j.y+B-1)/w)+$;for(let e=H;e<=P;e++)for(let t=I;t<=E;t++)M.add(`${h}/${e}/${t}`)}x.forEach(((e,t)=>{if(!M.has(t)){const e=x.get(t);(null==e||e.isResolved||e.isRejected)&&x.delete(t)}})),h.extent={xmin:a.xmin,ymin:a.ymin,xmax:a.xmax,ymax:a.ymax}}export{h as decreaseRefCount,d as deleteBlock,f as deleteRaster,m as getBlock,i as getRasterId,x as putBlock,s as register,u as unregister,g as update};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/esri/copyright.txt for details.\n*/\nimport\"../../../../geometry.js\";import t from\"../../../../core/has.js\";import e from\"../../../../core/Logger.js\";import{deg2rad as n}from\"../../../../core/mathUtils.js\";import{isNone as r,isSome as o}from\"../../../../core/maybe.js\";import{throwIfAborted as i}from\"../../../../core/promiseUtils.js\";import l from\"../../../../core/RandomLCG.js\";import{getInfo as a}from\"../../../../geometry/support/spatialReferenceUtils.js\";import s from\"../../../../geometry/Extent.js\";const c=e.getLogger(\"esri.views.2d.engine.flow.dataUtils\"),f=10;async function u(e,n,r,o){const l=performance.now(),a=h(n,r),s=performance.now(),u=d(n,a,r.width,r.height),m=performance.now(),w=p(u,!0),x=performance.now(),M=\"Streamlines\"===e?g(w,f):y(w),A=performance.now();return t(\"esri-2d-profiler\")&&(c.info(\"I.1\",\"_createFlowFieldFromData (ms)\",Math.round(s-l)),c.info(\"I.2\",\"_getStreamlines (ms)\",Math.round(m-s)),c.info(\"I.3\",\"createAnimatedLinesData (ms)\",Math.round(x-m)),c.info(\"I.4\",\"create{Streamlines|Particles}Mesh (ms)\",Math.round(A-x)),c.info(\"I.5\",\"createFlowMesh (ms)\",Math.round(A-l)),c.info(\"I.6\",\"Mesh size (bytes)\",M.vertexData.buffer.byteLength+M.indexData.buffer.byteLength)),await Promise.resolve(),i(o),M}function h(t,e){const n=w(e.data,e.width,e.height,t.smoothing);if(t.interpolate){return(t,r)=>{const o=Math.floor(t),i=Math.floor(r);if(o<0||o>=e.width)return[0,0];if(i<0||i>=e.height)return[0,0];const l=t-o,a=r-i,s=o,c=i,f=o{const o=Math.round(t),i=Math.round(r);return o<0||o>=e.width||i<0||i>=e.height?[0,0]:[n[2*(i*e.width+o)+0],n[2*(i*e.width+o)+1]]}}function m(t,e,n,r,o,i,l,a,s){const c=[];let f=n,u=r,h=0,[m,d]=e(f,u);m*=t.velocityScale,d*=t.velocityScale;const w=Math.sqrt(m*m+d*d);let p,g;c.push({x:f,y:u,t:h,speed:w});for(let y=0;yt.maxTurnAngle)return c;if(t.collisions){const t=Math.round(f*s),e=Math.round(u*s);if(t<0||t>l-1||e<0||e>a-1)return c;const n=i[e*l+t];if(-1!==n&&n!==o)return c;i[e*l+t]=o}c.push({x:f,y:u,t:h,speed:m}),p=d,g=w}return c}function d(t,e,n,r){const o=[],i=new l,a=1/Math.max(t.lineCollisionWidth,1),s=Math.round(n*a),c=Math.round(r*a),f=new Int32Array(s*c);for(let l=0;lt.sort-e.sort));for(const{x:l,y:h}of u)if(i.getFloat()=e)continue;const s=i[a+o];r+=s*t[2*(c*e+(n+a))+0],l+=s*t[2*(c*e+(n+a))+1]}a[2*(c*e+n)+0]=r,a[2*(c*e+n)+1]=l}const s=new Float32Array(t.length);for(let c=0;c=n)continue;const f=i[s+o];r+=f*a[2*((t+s)*e+c)+0],l+=f*a[2*((t+s)*e+c)+1]}s[2*(t*e+c)+0]=r,s[2*(t*e+c)+1]=l}return s}function p(t,e){const n=new l,r=t.reduce(((t,e)=>t+e.length),0),o=new Float32Array(4*r),i=new Array(t.length);let a=0,s=0;for(const l of t){const t=a;for(const e of l)o[4*a+0]=e.x,o[4*a+1]=e.y,o[4*a+2]=e.t,o[4*a+3]=e.speed,a++;i[s++]={startVertex:t,numberOfVertices:l.length,totalTime:l[l.length-1].t,timeSeed:e?n.getFloat():0}}return{lineVertices:o,lineDescriptors:i}}function g(t,e){const n=9,{lineVertices:r,lineDescriptors:o}=t;let i=0,l=0;for(const m of o){i+=2*m.numberOfVertices;l+=6*(m.numberOfVertices-1)}const a=new Float32Array(i*n),s=new Uint32Array(l);let c=0,f=0;function u(){s[f++]=c-2,s[f++]=c,s[f++]=c-1,s[f++]=c,s[f++]=c+1,s[f++]=c-1}function h(t,e,r,o,i,l,s,f){const u=c*n;let h=0;a[u+h++]=t,a[u+h++]=e,a[u+h++]=1,a[u+h++]=r,a[u+h++]=l,a[u+h++]=s,a[u+h++]=o/2,a[u+h++]=i/2,a[u+h++]=f,c++,a[u+h++]=t,a[u+h++]=e,a[u+h++]=-1,a[u+h++]=r,a[u+h++]=l,a[u+h++]=s,a[u+h++]=-o/2,a[u+h++]=-i/2,a[u+h++]=f,c++}for(const m of o){const{totalTime:t,timeSeed:n}=m;let o=null,i=null,l=null,a=null,s=null,c=null;for(let f=0;f0){y=d-o,x=w-i;const r=Math.sqrt(y*y+x*x);if(y/=r,x/=r,f>1){let t=y+s,n=x+c;const r=Math.sqrt(t*t+n*n);t/=r,n/=r;const o=Math.min(1/(t*y+n*x),e);t*=o,n*=o,M=-n,A=t}else M=-x,A=y;null!==M&&null!==A&&(h(o,i,l,M,A,t,n,g),u())}o=d,i=w,l=p,s=y,c=x,a=g}h(o,i,l,-c,s,t,n,a)}return{vertexData:a,indexData:s}}function y(t){const e=16,n=1,r=2,{lineVertices:o,lineDescriptors:i}=t;let l=0,a=0;for(const j of i){const t=j.numberOfVertices-1;l+=4*t*2,a+=6*t*2}const s=new Float32Array(l*e),c=new Uint32Array(a);let f,u,h,m,d,w,p,g,y,x,M,A,I,V,F=0,D=0;function b(){c[D++]=F-8,c[D++]=F-7,c[D++]=F-6,c[D++]=F-7,c[D++]=F-5,c[D++]=F-6,c[D++]=F-4,c[D++]=F-3,c[D++]=F-2,c[D++]=F-3,c[D++]=F-1,c[D++]=F-2}function v(t,o,i,l,a,c,f,u,h,m,d,w,p,g){const y=F*e;let x=0;for(const e of[n,r])for(const n of[1,2,3,4])s[y+x++]=t,s[y+x++]=o,s[y+x++]=i,s[y+x++]=l,s[y+x++]=f,s[y+x++]=u,s[y+x++]=h,s[y+x++]=m,s[y+x++]=e,s[y+x++]=n,s[y+x++]=p,s[y+x++]=g,s[y+x++]=a/2,s[y+x++]=c/2,s[y+x++]=d/2,s[y+x++]=w/2,F++}function S(t,e){let n=y+M,r=x+A;const o=Math.sqrt(n*n+r*r);n/=o,r/=o;const i=y*n+x*r;n/=i,r/=i;let l=M+I,a=A+V;const s=Math.sqrt(l*l+a*a);l/=s,a/=s;const c=M*l+A*a;l/=c,a/=c,v(f,u,h,m,-r,n,d,w,p,g,-a,l,t,e),b()}function k(t,e,n,r,o,i){if(y=M,x=A,M=I,A=V,null==y&&null==x&&(y=M,x=A),null!=d&&null!=w){I=t-d,V=e-w;const n=Math.sqrt(I*I+V*V);I/=n,V/=n}null!=y&&null!=x&&S(o,i),f=d,u=w,h=p,m=g,d=t,w=e,p=n,g=r}function L(t,e){y=M,x=A,M=I,A=V,null==y&&null==x&&(y=M,x=A),null!=y&&null!=x&&S(t,e)}for(const j of i){f=null,u=null,h=null,m=null,d=null,w=null,p=null,g=null,y=null,x=null,M=null,A=null,I=null,V=null;const{totalTime:t,timeSeed:e}=j;for(let n=0;n=r||(V.data[2*(e*r+F+n)+0]=t.data[2*(e*t.width+n)+0],V.data[2*(e*r+F+n)+1]=t.data[2*(e*t.width+n)+1],V.mask[e*r+F+n]=t.mask[e*t.width+n]);F+=t.width}return t(\"esri-2d-profiler\")&&c.info(\"I.10\",\"loadImagery, general exit (ms)\",Math.round(performance.now()-f)),V}async function A(t,e,n,i,l,a){const s={requestProjectedLocalDirections:!0,signal:a};if(o(l)&&(s.timeExtent=l),\"imagery\"===t.type){await t.load({signal:a});const o=t.rasterInfo.dataType,l=await t.fetchImage(e,n,i,s);return!l||r(l.pixelData)||r(l.pixelData.pixelBlock)?{data:new Float32Array(n*i*2),mask:new Uint8Array(n*i),width:n,height:i}:x(o,l.pixelData.pixelBlock)}await t.load({signal:a});const c=t.rasterInfo.dataType,f=await t.fetchPixels(e,n,i,s);return!f||r(f.pixelBlock)?{data:new Float32Array(n*i*2),mask:new Uint8Array(n*i),width:n,height:i}:x(c,f.pixelBlock)}export{p as createAnimatedLinesData,u as createFlowMesh,y as createParticlesMesh,g as createStreamlinesMesh,M as loadImagery};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/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 p,getUniformLocationInfos as d,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},t){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),e.setStencilFunction(i.EQUAL,t.stencilRef,255)}draw(e,r){if(!t(r)||r.suspended)return;const{timeline:s,context:a,painter:i,requestRender:o}=e;s.begin(this.name);const n=!a.capabilities.textureFloat?.textureFloatLinear;r.updateTexture(e);const h=this._getShaderVariations(r,n),l=i.materialManager.getProgram(this._desc[r.symbolizerParameters.type],h);this._drawWithProgram(a,l,r,o),s.end(this.name)}_drawWithProgram(t,s,a,i,d=1,m=[0,0],f=!1){if(this._quad||(this._quad=new r(t,[0,0,1,0,0,1,1,1])),e(i)&&!s.isCompiled)return void i();const{symbolizerParameters:_,transformGrid:g,width:b,height:P,opacity:S}=a,w=_.type;t.useProgram(s);const x=this._getShaderVariations(a),y=this._getUniformInfos(w,t,s,x),{names:M,textures:U}=a.getTextures();o(t,s,M,U);const j=u(d,m),I=n(g,[b,P],[a.source.width,a.source.height],S,f);if(h(s,y,{u_coordScale:a.coordScale,u_dvsMat3:a.transforms.dvs,...j,...I}),_.colormap){const{colormap:e,colormapOffset:t}=_,r=l(e,t);h(s,y,r)}if(\"stretch\"===_.type){const e=c(_);h(s,y,e)}else if(\"hillshade\"===_.type){const e=p(_);h(s,y,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=d(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.24/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},t){e.setBlendingEnabled(!0),\"additive\"===t.blendFunction?e.setBlendFunctionSeparate(r.ONE,r.ONE,r.ONE,r.ONE):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.setStencilFunction(a.EQUAL,t.stencilRef,255)}draw(s,n){const{context:r,renderingOptions:a,painter:o,requestRender:m}=s;if(!n.source)return;const c=d(s,n,a),l=o.materialManager.getProgram(this._desc,c.defines);if(e(m)&&!l.isCompiled)return void m();s.timeline.begin(this.name),this._quad||(this._quad=new i(r,[0,0,1,0,0,1,1,1]));const{coordScale:p,computedOpacity:u,transforms:f}=n;n.setSamplingProfile(c),n.bind(s.context,t),r.useProgram(l),l.setUniformMatrix3fv(\"u_dvsMat3\",f.dvs),l.setUniform1i(\"u_texture\",t),l.setUniform2fv(\"u_coordScale\",p),l.setUniform1f(\"u_opacity\",u),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.24/esri/copyright.txt for details.\n*/\nimport{isNone as r,isSome as t}from\"../../../../../core/maybe.js\";import{f as e}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,DataType as n,PrimitiveType 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:n.SHORT}]});class f extends o{constructor(){super(...arguments),this._color=e(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(e,s){const{context:o,state:a,requestRender:m}=e,f=c(),d=s.getVAO(o,a,f.attributes,f.bufferLayouts);r(d.indexBuffer)||(this._program||(this._program=l(o,i)),!t(m)||this._program.isCompiled?(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(d),o.drawElements(p.TRIANGLES,d.indexBuffer.size,n.UNSIGNED_INT,0),o.bindVAO()):m())}}export{f as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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,DataType as a,PrimitiveType as i}from\"../../../../webgl/enums.js\";const u=()=>r(\"overlay\",{geometry:[{location:0,name:\"a_pos\",count:2,type:a.FLOAT}],tex:[{location:1,name:\"a_uv\",count:2,type:a.UNSIGNED_SHORT}]});class m 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:a}=r;if(!s.isReady)return;const{computedOpacity:m,dvsMat3:c,isWrapAround:d,texture:l}=s;r.timeline.begin(this.name);const p=n.materialManager.getProgram(this._desc);if(e(a)&&!p.isCompiled)return void a();const f=u(),_=s.getVAO(o,f.bufferLayouts,f.attributes);if(!_)return;o.bindVAO(_),o.useProgram(p),o.bindTexture(l,t),p.setUniformMatrix3fv(\"u_dvsMat3\",c),p.setUniform1i(\"u_texture\",t),p.setUniform1f(\"u_opacity\",m);const y=d?10:4;o.drawArrays(i.TRIANGLE_STRIP,0,y),o.bindVAO(),r.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.24/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,i){i&&i.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),t.setStencilFunction(l.EQUAL,e.stencilRef,255)}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),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.24/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:f,requestRender:d}=o,E=n.load(i.materialKey),S=s(E.data),g=e(f)&&\"hittest\"===f.type,N=y.materialManager,{shader:T,vertexLayout:I,hittestAttributes:U}=t(S.programSpec,u(E));let x=m.TRIANGLES,L=a(E.data,I);g&&(L=this._getTriangleDesc(i.materialKey,L,U),x=m.POINTS);const{attributes:h,bufferLayouts:G}=L,O=N.getMaterialProgram(o,E,T,h,l);if(e(d)&&!g&&!O.isCompiled)return void d();if(c.useProgram(O),this._setSharedUniforms(O,o,r),O.setUniform2f(\"u_tileOffset\",512*r.key.col,512*r.key.row),E.textureBinding){y.textureManager.bindTextures(c,O,E);const e=1/2**(_-r.key.level);O.setUniform1f(\"u_zoomFactor\",e)}const b=1/o.pixelRatio;O.setUniform1f(\"u_blur\",b),O.setUniform1f(\"u_antialiasing\",b),this._setSizeVVUniforms(E,O,p,r),this._setColorAndOpacityVVUniforms(E,O,p);const D=i.target.getVAO(c,G,h,g);let R=i.indexCount,j=i.indexFrom*Uint32Array.BYTES_PER_ELEMENT;g&&(R/=3,j/=3),c.bindVAO(D),this._drawFills(o,r,O,x,R,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.24/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 g,Usage as y}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}=e,a=i.materialManager.getProgram(this._dotDesc);if(t(d)&&!a.isCompiled)return void d();const{rendererSchema:l}=n;_(l,\"dot-density\");const u=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(a),a.setUniform1f(\"u_tileZoomFactor\",1),a.setUniform1i(\"u_texture\",this._dotSamplers[0]),a.setUniform1f(\"u_dotSize\",Math.max(l.dotSize,1)),a.setUniform1f(\"u_pixelRatio\",window.devicePixelRatio),this._setSharedUniforms(a,e,o),s.bindTexture(r,this._dotSamplers[0]),s.bindVAO(u),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 g=1/2**(a-t.key.level),y=n,S=y*window.devicePixelRatio*y*window.devicePixelRatio,E=1/g*(1/g),b=c?e.state.scale/c:1;return o.setUniform1f(\"u_tileZoomFactor\",g),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,y),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:g.DEPTH_STENCIL});this._dotFBO=new S(e,s,r,i)}return this._dotFBO}_disposeTextures(){if(this._dotTextures){for(let e=0;es?2:1,I=e.drawPhase===a.HITTEST,R=this._programOptions;R.id=I,R.pattern=x;const k=v.getMaterialProgram(c,g,R);if(!r(_)||I||k.isCompiled){if(c.bindVAO(this._vao),c.useProgram(k),x){const t=L.getMosaicItemPosition(M,!0);if(r(t)){const{tl:e,br:o,page:s}=t;w=o[0]-e[0],A=o[1]-e[1];const a=L.getPageSize(s);r(a)&&(L.bind(c,f.LINEAR,s,i),k.setUniform4f(\"u_tlbr\",e[0],e[1],o[0],o[1]),k.setUniform2fv(\"u_mosaicSize\",a),k.setUniform1i(\"u_texture\",i))}k.setUniform1f(\"u_opacity\",y)}else this._color[0]=j*b[0],this._color[1]=j*b[1],this._color[2]=j*b[2],this._color[3]=j,k.setUniform4fv(\"u_color\",this._color);if(k.setUniform1f(\"u_depth\",h.z||0),I){const t=n(p+1);k.setUniform4fv(\"u_id\",t)}for(const r of o){if(k.setUniform1f(\"u_coord_range\",r.rangeX),k.setUniformMatrix3fv(\"u_dvsMat3\",r.transforms.dvs),x){const e=Math.max(2**(Math.round(d)-r.key.level),1),o=P*r.width*e,i=o/t(w),s=o/t(A);this._patternMatrix[0]=i,this._patternMatrix[4]=s,k.setUniformMatrix3fv(\"u_pattern_matrix\",this._patternMatrix)}c.setStencilFunction(l.EQUAL,r.stencilRef,255),c.drawArrays(u.TRIANGLE_STRIP,0,4)}}else _()}_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.24/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 n}from\"../number.js\";import a from\"./WGLBrush.js\";import{CompareFunction as s,PrimitiveType as o,DataType as l}from\"../../../../webgl/enums.js\";class c extends a{constructor(){super(...arguments),this._programOptions={id:!1}}dispose(){}drawMany(a,c){const{context:m,displayLevel:f,requiredLevel:u,state:d,drawPhase:p,painter:y,spriteMosaic:g,styleLayerUID:v,requestRender:E}=a;if(!c.some((e=>e.layerData.get(v)?.circleIndexCount??!1)))return;const M=a.styleLayer,T=M.circleMaterial,x=y.vectorTilesMaterialManager,I=1.2,U=M.getPaintValue(\"circle-translate\",f),_=M.getPaintValue(\"circle-translate-anchor\",f),h=p===i.HITTEST,L=this._programOptions;L.id=h;const R=x.getMaterialProgram(m,T,L);if(!h&&e(E)&&!R.isCompiled)return void E();m.useProgram(R),R.setUniformMatrix3fv(\"u_displayMat3\",_===r.VIEWPORT?d.displayMat3:d.displayViewMat3),R.setUniform2fv(\"u_circleTranslation\",U),R.setUniform1f(\"u_depth\",M.z),R.setUniform1f(\"u_antialiasingWidth\",I);let S=-1;if(h){const e=n(v+1);R.setUniform4fv(\"u_id\",e)}for(const e of c){if(!e.layerData.has(v))continue;e.key.level!==S&&(S=e.key.level,T.setDataUniforms(R,f,M,S,g));const r=e.layerData.get(v);if(!r.circleIndexCount)continue;r.prepareForRendering(m);const i=r.circleVertexArrayObject;t(i)||(m.bindVAO(i),R.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),u!==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.24/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 n}from\"../definitions.js\";import{WGLDrawPhase as a}from\"../enums.js\";import{u32to4Xu8 as o}from\"../number.js\";import s from\"./WGLBrush.js\";import{TextureSamplingMode as l,CompareFunction as f,PrimitiveType as u,DataType as d}from\"../../../../webgl/enums.js\";const c=1/65536;class m extends s{constructor(){super(...arguments),this._fillProgramOptions={id:!1,pattern:!1},this._outlineProgramOptions={id:!1}}dispose(){}drawMany(t,e){const{displayLevel:i,drawPhase:r,renderPass:n,spriteMosaic:s,styleLayerUID:l}=t;let f=!1;for(const a of e)if(a.layerData.has(l)){const t=a.layerData.get(l);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=s.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\"===n)return;let E;r===a.HITTEST&&(E=o(l+1));const v=u.getPaintValue(\"fill-translate\",i),M=u.getPaintValue(\"fill-translate-anchor\",i);(g||\"translucent\"!==n)&&this._drawFill(t,l,u,e,v,M,c,p,m,E);const P=!u.hasDataDrivenOutlineColor&&u.outlineUsesFillColor&&_<1;y&&\"opaque\"!==n&&!P&&this._drawOutline(t,l,u,e,v,M,E)}_drawFill(o,s,m,p,y,g,_,E,v,M){if(_&&!v&&t(E))return;const{context:P,displayLevel:I,state:T,drawPhase:U,painter:x,pixelRatio:h,spriteMosaic:D,requestRender:S}=o,R=m.fillMaterial,N=x.vectorTilesMaterialManager,w=h>n?2:1,L=U===a.HITTEST,A=this._fillProgramOptions;A.id=L,A.pattern=_;const C=N.getMaterialProgram(P,R,A);if(e(S)&&!L&&!C.isCompiled)return void S();if(P.useProgram(C),e(E)){const{page:t}=E,i=D.getPageSize(t);e(i)&&(D.bind(P,l.LINEAR,t,r),C.setUniform2fv(\"u_mosaicSize\",i),C.setUniform1i(\"u_texture\",r))}C.setUniformMatrix3fv(\"u_displayMat3\",g===i.VIEWPORT?T.displayMat3:T.displayViewMat3),C.setUniform2fv(\"u_fillTranslation\",y),C.setUniform1f(\"u_depth\",m.z+c),L&&C.setUniform4fv(\"u_id\",M);let V=-1;for(const i of p){if(!i.layerData.has(s))continue;i.key.level!==V&&(V=i.key.level,R.setDataUniforms(C,I,m,V,D));const n=i.layerData.get(s);if(!n.fillIndexCount)continue;n.prepareForRendering(P);const a=n.fillVertexArrayObject;if(!t(a)){if(P.bindVAO(a),C.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/(w*i.width*t);C.setUniform1f(\"u_patternFactor\",e)}if(v){const t=n.patternMap;if(!t)continue;for(const[i,n]of t){const t=D.getPageSize(i);e(t)&&(D.bind(P,l.LINEAR,i,r),C.setUniform2fv(\"u_mosaicSize\",t),C.setUniform1i(\"u_texture\",r),P.drawElements(u.TRIANGLES,n[1],d.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*n[0]))}}else P.drawElements(u.TRIANGLES,n.fillIndexCount,d.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*n.fillIndexStart);i.triangleCount+=n.fillIndexCount/3}}}_drawOutline(r,n,o,s,l,m,p){const{context:y,displayLevel:g,state:_,drawPhase:E,painter:v,pixelRatio:M,spriteMosaic:P,requestRender:I}=r,T=o.outlineMaterial,U=v.vectorTilesMaterialManager,x=.75/M,h=E===a.HITTEST,D=this._outlineProgramOptions;D.id=h;const S=U.getMaterialProgram(y,T,D);if(e(I)&&!h&&!S.isCompiled)return void I();y.useProgram(S),S.setUniformMatrix3fv(\"u_displayMat3\",m===i.VIEWPORT?_.displayMat3:_.displayViewMat3),S.setUniform2fv(\"u_fillTranslation\",l),S.setUniform1f(\"u_depth\",o.z+c),S.setUniform1f(\"u_outline_width\",x),h&&S.setUniform4fv(\"u_id\",p);let R=-1;for(const e of s){if(!e.layerData.has(n))continue;e.key.level!==R&&(R=e.key.level,T.setDataUniforms(S,g,o,R,P));const i=e.layerData.get(n);if(i.prepareForRendering(y),!i.outlineIndexCount)continue;const r=i.outlineVertexArrayObject;t(r)||(y.bindVAO(r),S.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.24/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:g,painter:y,pixelRatio:E,spriteMosaic:M,styleLayerUID:_,requestRender:v}=o;if(!u.some((e=>e.layerData.get(_)?.lineIndexCount??!1)))return;const U=o.styleLayer,I=U.lineMaterial,P=y.vectorTilesMaterialManager,x=U.getPaintValue(\"line-translate\",d),T=U.getPaintValue(\"line-translate-anchor\",d),S=U.getPaintProperty(\"line-pattern\"),D=void 0!==S,L=D&&S.isDataDriven;let N,R;if(D&&!L){const e=S.getValue(d);N=M.getMosaicItemPosition(e)}let V=!1;if(!D){const e=U.getPaintProperty(\"line-dasharray\");if(R=void 0!==e,V=R&&e.isDataDriven,R&&!V){const t=e.getValue(d),i=U.getDashKey(t,U.getLayoutValue(\"line-cap\",d));N=M.getMosaicItemPosition(i)}}const h=1/E,A=g===r.HITTEST,j=this._programOptions;j.id=A,j.pattern=D,j.sdf=R;const w=P.getMaterialProgram(c,I,j);if(e(v)&&!A&&!w.isCompiled)return void v();if(c.useProgram(w),w.setUniformMatrix3fv(\"u_displayViewMat3\",p.displayViewMat3),w.setUniformMatrix3fv(\"u_displayMat3\",T===i.VIEWPORT?p.displayMat3:p.displayViewMat3),w.setUniform2fv(\"u_lineTranslation\",x),w.setUniform1f(\"u_depth\",U.z),w.setUniform1f(\"u_antialiasing\",h),A){const e=a(_+1);w.setUniform4fv(\"u_id\",e)}if(N&&e(N)){const{page:t}=N,i=M.getPageSize(t);e(i)&&(M.bind(c,s.LINEAR,t,n),w.setUniform2fv(\"u_mosaicSize\",i),w.setUniform1i(\"u_texture\",n))}let b=-1;for(const i of u){if(!i.layerData.has(_))continue;i.key.level!==b&&(b=i.key.level,I.setDataUniforms(w,d,U,b,M));const r=2**(d-b)/E;w.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),w.setUniformMatrix3fv(\"u_dvsMat3\",i.transforms.dvs),c.setStencilFunction(l.EQUAL,i.stencilRef,255),L||V){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),w.setUniform2fv(\"u_mosaicSize\",t),w.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.24/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 g,PrimitiveType as y,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:g,painter:y,spriteMosaic:_,state:h,styleLayerUID:M,requestRender:P}=i,T=a.iconMaterial,U=y.vectorTilesMaterialManager;let E,x=!1;for(const e of f)if(e.layerData.has(M)&&(E=e.layerData.get(M),E.iconPerPageElementsMap.size>0)){x=!0;break}if(!x)return;const v=a.getPaintValue(\"icon-translate\",d),I=a.getPaintValue(\"icon-translate-anchor\",d);let S=a.getLayoutValue(\"icon-rotation-alignment\",d);S===s.AUTO&&(S=a.getLayoutValue(\"symbol-placement\",d)===n.POINT?s.VIEWPORT:s.MAP);const D=S===s.MAP,V=a.getLayoutValue(\"icon-keep-upright\",d)&&D,R=E.isIconSDF,w=g===u.HITTEST,A=this._iconProgramOptions;A.id=w,A.sdf=R;const L=U.getMaterialProgram(c,T,A);if(e(P)&&!w&&!L.isCompiled)return void P();c.useProgram(L),L.setUniformMatrix3fv(\"u_displayViewMat3\",S===s.MAP?h.displayViewMat3:h.displayMat3),L.setUniformMatrix3fv(\"u_displayMat3\",I===o.VIEWPORT?h.displayMat3:h.displayViewMat3),L.setUniform2fv(\"u_iconTranslation\",v),L.setUniform1f(\"u_depth\",a.z),L.setUniform1f(\"u_mapRotation\",m(h.rotation)),L.setUniform1f(\"u_keepUpright\",V?1:0),L.setUniform1f(\"u_level\",10*d),L.setUniform1i(\"u_texture\",l),L.setUniform1f(\"u_fadeDuration\",r/1e3),w&&L.setUniform4fv(\"u_id\",p);let O=-1;for(const e of f){if(!e.layerData.has(M))continue;if(e.key.level!==O&&(O=e.key.level,T.setDataUniforms(L,d,a,O,_)),E=e.layerData.get(M),0===E.iconPerPageElementsMap.size)continue;E.prepareForRendering(c),E.updateOpacityInfo();const r=E.iconVertexArrayObject;if(!t(r)){c.bindVAO(r),L.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),L.setUniform1f(\"u_time\",(performance.now()-E.lastOpacityUpdate)/1e3);for(const[t,a]of E.iconPerPageElementsMap)this._renderIconRange(i,L,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(g.GREATER,255,255),s.setStencilWriteMask(0),s.drawElements(y.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:y,drawPhase:_,glyphMosaic:M,painter:P,pixelRatio:T,spriteMosaic:U,state:E,styleLayerUID:x,requestRender:v}=i,I=l.textMaterial,S=P.vectorTilesMaterialManager;let D,V=!1;for(const e of p)if(e.layerData.has(x)&&(D=e.layerData.get(x),D.glyphPerPageElementsMap.size>0)){V=!0;break}if(!V)return;const R=l.getPaintProperty(\"text-opacity\");if(R&&!R.isDataDriven&&0===R.getValue(y))return;const w=l.getPaintProperty(\"text-color\"),A=!w||w.isDataDriven||w.getValue(y)[3]>0,L=l.getPaintProperty(\"text-halo-width\"),O=l.getPaintProperty(\"text-halo-color\"),N=(!L||L.isDataDriven||L.getValue(y)>0)&&(!O||O.isDataDriven||O.getValue(y)[3]>0);if(!A&&!N)return;const b=24/8;let z=l.getLayoutValue(\"text-rotation-alignment\",y);z===s.AUTO&&(z=l.getLayoutValue(\"symbol-placement\",y)===n.POINT?s.VIEWPORT:s.MAP);const k=z===s.MAP,j=l.getLayoutValue(\"text-keep-upright\",y)&&k,G=_===u.HITTEST,W=.8*b/T;this._glyphTextureSize||(this._glyphTextureSize=a(M.width/4,M.height/4));const C=l.getPaintValue(\"text-translate\",y),F=l.getPaintValue(\"text-translate-anchor\",y),B=this._sdfProgramOptions;B.id=G;const H=S.getMaterialProgram(d,I,B);if(e(v)&&!G&&!H.isCompiled)return void v();d.useProgram(H),H.setUniformMatrix3fv(\"u_displayViewMat3\",z===s.MAP?E.displayViewMat3:E.displayMat3),H.setUniformMatrix3fv(\"u_displayMat3\",F===o.VIEWPORT?E.displayMat3:E.displayViewMat3),H.setUniform2fv(\"u_textTranslation\",C),H.setUniform1f(\"u_depth\",l.z+h),H.setUniform2fv(\"u_mosaicSize\",this._glyphTextureSize),H.setUniform1f(\"u_mapRotation\",m(E.rotation)),H.setUniform1f(\"u_keepUpright\",j?1:0),H.setUniform1f(\"u_level\",10*y),H.setUniform1i(\"u_texture\",f),H.setUniform1f(\"u_antialiasingWidth\",W),H.setUniform1f(\"u_fadeDuration\",r/1e3),G&&H.setUniform4fv(\"u_id\",c);let Y=-1;for(const e of p){if(!e.layerData.has(x))continue;if(e.key.level!==Y&&(Y=e.key.level,I.setDataUniforms(H,y,l,Y,U)),D=e.layerData.get(x),0===D.glyphPerPageElementsMap.size)continue;D.prepareForRendering(d),D.updateOpacityInfo();const i=D.textVertexArrayObject;if(t(i))continue;d.bindVAO(i),H.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),d.setStencilTestEnabled(!0),d.setStencilFunction(g.GREATER,255,255),d.setStencilWriteMask(0);const a=(performance.now()-D.lastOpacityUpdate)/1e3;H.setUniform1f(\"u_time\",a),D.glyphPerPageElementsMap.forEach(((t,i)=>{this._renderGlyphRange(d,t,i,M,H,N,A,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(y.TRIANGLES,t[1],_.UNSIGNED_INT,Uint32Array.BYTES_PER_ELEMENT*t[0]),o.triangleCount+=t[1]/3),n&&(r.setUniform1f(\"u_halo\",0),e.drawElements(y.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.24/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{DataType as r,CompareFunction as i,PrimitiveType as s}from\"../../../../webgl/enums.js\";const m=e=>o(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:r.SHORT},{location:1,name:\"a_id\",count:4,type:r.UNSIGNED_BYTE},{location:2,name:\"a_color\",count:4,type:r.UNSIGNED_BYTE,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:r.UNSIGNED_BYTE,normalized:!0},{location:4,name:\"a_texAndSize\",count:4,type:r.UNSIGNED_BYTE},{location:5,name:\"a_refSymbolAndPlacementOffset\",count:4,type:r.UNSIGNED_BYTE},{location:6,name:\"a_glyphData\",count:4,type:r.UNSIGNED_BYTE},{location:7,name:\"a_vertexOffset\",count:2,type:r.SHORT},{location:8,name:\"a_texCoords\",count:2,type:r.UNSIGNED_SHORT}]});class l extends a{dispose(){}getGeometryType(){return t.LABEL}supportsSymbology(e){return!0}drawGeometry(t,o,a,l){const{context:u,painter:p,state:c,rendererInfo:d,passOptions:f,requestRender:y}=t,_=n.load(a.materialKey),E=e(f)&&\"hittest\"===f.type,N=_.mapAligned?1:0;if(!N&&Math.abs(o.key.level-Math.round(100*t.displayLevel)/100)>=1)return;const{bufferLayouts:S,attributes:U}=m(_),T=p.materialManager.getMaterialProgram(t,_,\"materials/label\",U,l);if(e(y)&&!E&&!T.isCompiled)return void y();t.context.setStencilFunction(i.EQUAL,0,255),u.useProgram(T),this._setSharedUniforms(T,t,o),p.textureManager.bindTextures(u,T,_);const g=1===N?c.displayViewMat3:c.displayMat3;this._setSizeVVUniforms(_,T,d,o),T.setUniform1f(\"u_mapRotation\",Math.floor(c.rotation/360*254)),T.setUniform1f(\"u_mapAligned\",N),T.setUniformMatrix3fv(\"u_displayMat3\",g),T.setUniform1f(\"u_opacity\",1),T.setUniform2fv(\"u_screenSize\",t.state.size),T.setUniform1f(\"u_isHalo\",1);const G=a.target.getVAO(u,S,U),I=a.indexFrom*Uint32Array.BYTES_PER_ELEMENT;u.bindVAO(G),u.drawElements(s.TRIANGLES,a.indexCount,r.UNSIGNED_INT,I),T.setUniform1f(\"u_isHalo\",0),u.drawElements(s.TRIANGLES,a.indexCount,r.UNSIGNED_INT,I),u.setStencilTestEnabled(!0),u.setBlendingEnabled(!0)}}export{l as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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{DataType as r,PrimitiveType as i}from\"../../../../webgl/enums.js\";const s=e=>o(e.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:r.SHORT},{location:1,name:\"a_id\",count:4,type:r.UNSIGNED_BYTE},{location:2,name:\"a_color\",count:4,type:r.UNSIGNED_BYTE,normalized:!0},{location:3,name:\"a_offsetAndNormal\",count:4,type:r.BYTE},{location:4,name:\"a_accumulatedDistanceAndHalfWidth\",count:2,type:r.UNSIGNED_SHORT},{location:5,name:\"a_tlbr\",count:4,type:r.UNSIGNED_SHORT},{location:6,name:\"a_segmentDirection\",count:4,type:r.BYTE},{location:7,name:\"a_aux\",count:2,type:r.UNSIGNED_SHORT},{location:8,name:\"a_zoomRange\",count:2,type:r.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:y,requestRender:d}=t,_=n.load(a.materialKey),f=e(y)&&\"hittest\"===y.type;let E=s(_),N=i.TRIANGLES;f&&(E=this._getTriangleDesc(a.materialKey,E),N=i.POINTS);const{attributes:g,bufferLayouts:S}=E,T=c.materialManager.getMaterialProgram(t,_,\"materials/line\",g,m);if(e(d)&&!f&&!T.isCompiled)return void d();const U=1/t.pixelRatio,G=0;l.useProgram(T),this._setSharedUniforms(T,t,o),_.textureBinding&&c.textureManager.bindTextures(l,T,_);const I=2**(p-o.key.level);T.setUniform1f(\"u_zoomFactor\",I),T.setUniform1f(\"u_blur\",G+U),T.setUniform1f(\"u_antialiasing\",U),this._setSizeVVUniforms(_,T,u,o),this._setColorAndOpacityVVUniforms(_,T,u),l.setFaceCullingEnabled(!1);const b=a.target.getVAO(l,S,g,f);let x=a.indexCount,D=a.indexFrom*Uint32Array.BYTES_PER_ELEMENT;f&&(x/=3,D/=3),l.bindVAO(b),l.drawElements(N,x,r.UNSIGNED_INT,D)}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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{DataType as n,PrimitiveType as i}from\"../../../../webgl/enums.js\";const s=t=>o(t.data,{geometry:[{location:0,name:\"a_pos\",count:2,type:n.SHORT},{location:1,name:\"a_id\",count:4,type:n.UNSIGNED_BYTE},{location:2,name:\"a_color\",count:4,type:n.UNSIGNED_BYTE,normalized:!0},{location:3,name:\"a_haloColor\",count:4,type:n.UNSIGNED_BYTE,normalized:!0},{location:4,name:\"a_texFontSize\",count:4,type:n.UNSIGNED_BYTE},{location:5,name:\"a_aux\",count:4,type:n.BYTE},{location:6,name:\"a_zoomRange\",count:2,type:n.UNSIGNED_SHORT},{location:7,name:\"a_vertexOffset\",count:2,type:n.SHORT},{location:8,name:\"a_texCoords\",count:2,type:n.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:y,passOptions:d,requestRender:_}=e,c=r.load(a.materialKey),f=t(d)&&\"hittest\"===d.type,{bufferLayouts:E,attributes:N}=s(c),S=p.materialManager.getMaterialProgram(e,c,\"materials/text\",N,m);if(t(_)&&!f&&!S.isCompiled)return void _();l.useProgram(S);let T=i.TRIANGLES;f&&(T=i.POINTS),this._setSharedUniforms(S,e,o),p.textureManager.bindTextures(l,S,c),S.setUniformMatrix3fv(\"u_displayMat3\",y.displayMat3),S.setUniformMatrix3fv(\"u_displayViewMat3\",y.displayViewMat3),this._setSizeVVUniforms(c,S,u,o),this._setColorAndOpacityVVUniforms(c,S,u),this._setRotationVVUniforms(c,S,u),S.setUniform1f(\"u_isHalo\",1);const U=a.target.getVAO(l,E,N),x=a.indexFrom*Uint32Array.BYTES_PER_ELEMENT;l.bindVAO(U),l.drawElements(i.TRIANGLES,a.indexCount,n.UNSIGNED_INT,x),S.setUniform1f(\"u_isHalo\",0),l.drawElements(T,a.indexCount,n.UNSIGNED_INT,x)}}export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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 l from\"./webgl/brushes/BrushClip.js\";import t from\"./webgl/brushes/BrushOverlay.js\";import m from\"./webgl/brushes/WGLBrushDotDensity.js\";import i from\"./webgl/brushes/WGLBrushHeatmap.js\";import b from\"./webgl/brushes/WGLBrushInfo.js\";import h 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 n from\"./webgl/brushes/WGLGeometryBrushText.js\";const W={marker:G,line:w,fill:g,text:n,label:j,clip:l,stencil:u,bitmap:o,overlay:t,raster:s,rasterVF:e,flow:r,tileInfo:b,vtlBackground:p,vtlFill:B,vtlLine:L,vtlCircle:f,vtlSymbol:a,dotDensity:m,heatmap:i,pieChart:h},y={vtlBackground:p,vtlFill:B,vtlLine:L,vtlCircle:f,vtlSymbol:a};export{W as brushes,y as vtlBrushes};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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 m 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},t){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),e.setStencilFunction(o.EQUAL,t.stencilRef,255)}draw(t,a){if(e(a.source)||0===a.source.validPixelCount)return;const{timeline:r}=t;if(r.begin(this.name),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)}r.end(this.name)}_drawTriangles(e,a,r,s){const{context:o,painter:l,requestRender:m}=e,{symbolizerParameters:d}=a,f=d.dataRange?[\"dataRange\"]:[];\"geographic\"===d.rotationType&&f.push(\"rotationGeographic\");const u=l.materialManager.getProgram(this._desc.magdir,f);if(t(m)&&!u.isCompiled)return void m();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{style:y,dataRange:v,rotation:b,symbolPercentRange:S}=d;u.setUniform4fv(\"u_colors\",c[y]||c.single_arrow),u.setUniform2fv(\"u_dataRange\",v),u.setUniform1f(\"u_rotation\",b),u.setUniform2fv(\"u_symbolPercentRange\",S);const h=this._getSymbolSize(e,a);u.setUniform2fv(\"u_symbolSize\",h),o.bindVAO(r),o.drawElements(n.TRIANGLES,s,i.UNSIGNED_INT,0)}_drawScalars(e,a,r,s){const{context:o,painter:l,requestRender:c}=e,{symbolizerParameters:m}=a,d=[];\"wind_speed\"===m.style?d.push(\"innerCircle\"):m.dataRange&&d.push(\"dataRange\"),\"geographic\"===m.rotationType&&d.push(\"rotationGeographic\");const f=l.materialManager.getProgram(this._desc.scalar,d);if(t(c)&&!f.isCompiled)return void c();o.useProgram(f);const{coordScale:u,opacity:_,transforms:g}=a;f.setUniform2fv(\"u_coordScale\",u),f.setUniform1f(\"u_opacity\",_),f.setUniformMatrix3fv(\"u_dvsMat3\",g.dvs);const{dataRange:p,symbolPercentRange:y}=m;f.setUniform2fv(\"u_dataRange\",p),f.setUniform2fv(\"u_symbolPercentRange\",y);const v=this._getSymbolSize(e,a);f.setUniform2fv(\"u_symbolSize\",v),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{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as t}from\"../../chunks/tslib.es6.js\";import\"../../core/has.js\";import e from\"../../core/Error.js\";import{JSONSupport as s}from\"../../core/JSONSupport.js\";import{clone as i}from\"../../core/lang.js\";import l from\"../../core/Logger.js\";import{isNone as r}from\"../../core/maybe.js\";import{property as a}from\"../../core/accessorSupport/decorators/property.js\";import{cast as o}from\"../../core/accessorSupport/decorators/cast.js\";import{subclass as h}from\"../../core/accessorSupport/decorators/subclass.js\";var n;const p=l.getLogger(\"esri.layers.support.PixelBlock\");let c=n=class extends s{constructor(t){super(t),this.width=null,this.height=null,this.pixelType=\"f32\",this.validPixelCount=null,this.mask=null,this.maskIsAlpha=!1,this.pixels=null,this.statistics=null}static createEmptyBand(t,e){return new(n.getPixelArrayConstructor(t))(e)}static getPixelArrayConstructor(t){let e;switch(t){case\"u1\":case\"u2\":case\"u4\":case\"u8\":e=Uint8Array;break;case\"u16\":e=Uint16Array;break;case\"u32\":e=Uint32Array;break;case\"s8\":e=Int8Array;break;case\"s16\":e=Int16Array;break;case\"s32\":e=Int32Array;break;case\"f32\":case\"c64\":case\"c128\":case\"unknown\":e=Float32Array;break;case\"f64\":e=Float64Array}return e}castPixelType(t){if(!t)return\"f32\";let e=t.toLowerCase();return[\"u1\",\"u2\",\"u4\"].includes(e)?e=\"u8\":[\"unknown\",\"u8\",\"s8\",\"u16\",\"s16\",\"u32\",\"s32\",\"f32\",\"f64\"].includes(e)||(e=\"f32\"),e}getPlaneCount(){return this.pixels&&this.pixels.length}addData(t){if(!t.pixels||t.pixels.length!==this.width*this.height)throw new e(\"pixelblock:invalid-or-missing-pixels\",\"add data requires valid pixels array that has same length defined by pixel block width * height\");this.pixels||(this.pixels=[]),this.statistics||(this.statistics=[]),this.pixels.push(t.pixels),this.statistics.push(t.statistics||{minValue:null,maxValue:null})}getAsRGBA(){const t=new ArrayBuffer(this.width*this.height*4);switch(this.pixelType){case\"s8\":case\"s16\":case\"u16\":case\"s32\":case\"u32\":case\"f32\":case\"f64\":this._fillFromNon8Bit(t);break;default:this._fillFrom8Bit(t)}return new Uint8ClampedArray(t)}getAsRGBAFloat(){const t=new Float32Array(this.width*this.height*4);return this._fillFrom32Bit(t),t}updateStatistics(){this.statistics=this.pixels.map((t=>this._calculateBandStatistics(t,this.mask)));const t=this.mask;let e=0;if(t)for(let s=0;si?i:ht>=this.pixels.length)),i=e===t.length&&!t.some(((t,e)=>t!==e));return s||i?this:new n({pixelType:this.pixelType,width:this.width,height:this.height,mask:this.mask,validPixelCount:this.validPixelCount,maskIsAlpha:this.maskIsAlpha,pixels:t.map((t=>this.pixels[t])),statistics:this.statistics&&t.map((t=>this.statistics[t]))})}clone(){const t=new n({width:this.width,height:this.height,pixelType:this.pixelType,maskIsAlpha:this.maskIsAlpha,validPixelCount:this.validPixelCount});let e;this.mask&&(this.mask instanceof Uint8Array?t.mask=new Uint8Array(this.mask):t.mask=this.mask.slice(0));const s=n.getPixelArrayConstructor(this.pixelType);if(this.pixels&&this.pixels.length>0){t.pixels=[];const i=this.pixels[0].slice;for(e=0;e=3?(r=i[1],a=i[2]):2===i.length&&(r=i[1]);const h=new Uint32Array(t),n=this.width*this.height;if(l.length===n)if(e&&e.length===n)if(s)for(o=0;o0)a=i.map((t=>t.minValue)).reduce(((t,e)=>Math.min(t,e))),o=i.map((t=>t.maxValue-t.minValue)).reduce(((t,e)=>Math.max(t,e))),r=255/o;else{let t=255;\"s8\"===l?(a=-128,t=127):\"u16\"===l?t=65535:\"s16\"===l?(a=-32768,t=32767):\"u32\"===l?t=4294967295:\"s32\"===l?(a=-2147483648,t=2147483647):\"f32\"===l?(a=-34e38,t=34e38):\"f64\"===l&&(a=-Number.MAX_VALUE,t=Number.MAX_VALUE),r=255/(t-a)}const h=new Uint32Array(t),n=this.width*this.height;let c,u,m,x,f;if(c=u=m=e[0],c.length!==n)return p.error(\"getAsRGBA()\",\"Unable to convert to RGBA. The pixelblock is invalid.\");if(e.length>=2)if(u=e[1],e.length>=3&&(m=e[2]),s&&s.length===n)for(x=0;x=3?(l=e[1],r=e[2]):2===e.length&&(l=e[1]);const o=this.width*this.height;if(i.length!==o)return p.error(\"getAsRGBAFloat()\",\"Unable to convert to RGBA. The pixelblock is invalid.\");let h=0;if(s&&s.length===o)for(a=0;ai?a:i);else for(r=0;ri?a:i;return{minValue:s,maxValue:i}}};t([a({json:{write:!0}})],c.prototype,\"width\",void 0),t([a({json:{write:!0}})],c.prototype,\"height\",void 0),t([a({json:{write:!0}})],c.prototype,\"pixelType\",void 0),t([o(\"pixelType\")],c.prototype,\"castPixelType\",null),t([a({json:{write:!0}})],c.prototype,\"validPixelCount\",void 0),t([a({json:{write:!0}})],c.prototype,\"mask\",void 0),t([a({json:{write:!0}})],c.prototype,\"maskIsAlpha\",void 0),t([a({json:{write:!0}})],c.prototype,\"pixels\",void 0),t([a({json:{write:!0}})],c.prototype,\"statistics\",void 0),c=n=t([h(\"esri.layers.support.PixelBlock\")],c);const u=c;export{u as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{JSONMap as t}from\"../../../../core/jsonMap.js\";const o=new t({esriGeometryPoint:\"point\",esriGeometryMultipoint:\"multipoint\",esriGeometryPolyline:\"polyline\",esriGeometryPolygon:\"polygon\",esriGeometryMultiPatch:\"multipatch\",mesh:\"mesh\"});function e(t){return o.toJSON(t)}function n(t,o,e){const n=[],r=[];let l=0,i=0;for(const s of t){const t=i;let u=s[0][0],c=s[0][1];n[i++]=u,n[i++]=c;let p=0;for(let o=1;o0?(t-l>0&&(e(l,t,n,r),l=t),r.length=0):p<0&&t-l>0?r.push(.5*(t-l)):i=t}i-l>0&&e(l,i,n,r)}function r(t){const{bandCount:o,attributeTable:e,colormap:n,pixelType:r}=t.rasterInfo;return 1===o&&(null!=e||null!=n||\"u8\"===r||\"s8\"===r)}export{n as analyzeRings,r as canUseMajorityInterpolationOnDataSource,e as toJSONGeometryType};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/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.24/esri/copyright.txt for details.\n*/\nimport e from\"../../../../core/has.js\";import{WGLDrawPhase as r}from\"./enums.js\";import s from\"./WGLContainer.js\";import t from\"./brushes/WGLBrushInfo.js\";import n from\"./brushes/WGLBrushStencil.js\";const i=(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 o extends s{constructor(e){super(),this._tileInfoView=e}get requiresDedicatedFBO(){return!1}renderChildren(e){this.sortChildren(i),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(s){const i=super.prepareRenderPasses(s);return i.push(s.registerRenderPass({name:\"stencil\",brushes:[n],drawPhase:r.DEBUG|r.MAP|r.HIGHLIGHT,target:()=>this.getStencilTarget()})),e(\"esri-tiles-debug\")&&i.push(s.registerRenderPass({name:\"tileInfo\",brushes:[t],drawPhase:r.DEBUG,target:()=>this.children})),i}getStencilTarget(){return this.children}updateTransforms(e){for(const r of this.children){const s=this._tileInfoView.getTileResolution(r.key);r.setTransform(e,s)}}setStencilReference(e){let r=1;for(const s of this.children)s.stencilRef=r++}}export{o as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/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/has.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.24/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.24/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}=e;if(!r.isReady)return;if(this._loadWGLResources(i),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 s=this._getTexture(i,r);s?(i.bindVAO(this._tileInfoVertexArrayObject),i.useProgram(this._tileInfoProgram),i.bindTexture(s,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\",s.descriptor.width,s.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.24/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.24/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../core/maybe.js\";import{pt2px as t}from\"../../../../core/screenUtils.js\";function n(e){const n=i(a(e)),o=n,s=!0,r=Math.max(n/2,5),l=Math.round(t(e.maxPathLength)/r)+1,u=10,{density:c}=e;return{smoothing:t(e.smoothing),interpolate:!0,velocityScale:\"flow-from\"===e.flowRepresentation?1:-1,verticesPerLine:l,minSpeedThreshold:.001,segmentLength:r,maxTurnAngle:1,collisions:s,lineCollisionWidth:o,lineSpacing:u,density:c}}function i(e){return\"constant\"===e.kind?e.value[0]:e.values[e.values.length-1]}function o(e){const t=e.toRgba();return[t[0]/255,t[1]/255,t[2]/255,t[3]]}function s(e){return{kind:\"constant\",value:[.1,.1,.1,1]}}function a(e){if(!e.hasVisualVariables(\"size\"))return{kind:\"constant\",value:[t(e.trailWidth)]};const n=e.getVisualVariablesForType(\"size\")[0],i=[],o=[];let s;if(n.stops){for(const e of n.stops)i.push(e.value),o.push(t(e.size));s=n.stops.length}else i.push(n.minDataValue,n.maxDataValue),o.push(t(n.minSize),t(n.maxSize)),s=2;return{kind:\"ramp\",stops:i,values:o,count:s}}function r(e){if(!e.hasVisualVariables(\"color\"))return{kind:\"constant\",value:o(e.color)};const t=e.getVisualVariablesForType(\"color\")[0],n=[],i=[];for(const s of t.stops)n.push(s.value),Array.prototype.push.apply(i,o(s.color));return{kind:\"ramp\",stops:n,values:i,count:t.stops.length}}function l(e){if(!e.hasVisualVariables(\"opacity\"))return{kind:\"constant\",value:[1]};const t=e.getVisualVariablesForType(\"opacity\")[0],n=[],i=[];for(const o of t.stops)n.push(o.value),i.push(o.opacity);return{kind:\"ramp\",stops:n,values:i,count:t.stops.length}}function u(e,t,n,i){switch(t){case\"int\":e.setUniform1iv(n,i);break;case\"float\":e.setUniform1fv(n,i);break;case\"vec2\":e.setUniform2fv(n,i);break;case\"vec3\":e.setUniform3fv(n,i);break;case\"vec4\":e.setUniform4fv(n,i)}}function c(e,t,n,i){\"constant\"===i.kind?u(e,n,`u_${t}`,i.value):(u(e,\"float\",`u_${t}_stops`,i.stops),u(e,n,`u_${t}_values`,i.values),e.setUniform1i(`u_${t}_count`,i.count))}function p(e,t){let n=!0;return n=n&&e.collisions===t.collisions,n=n&&e.density===t.density,n=n&&e.interpolate===t.interpolate,n=n&&e.lineCollisionWidth===t.lineCollisionWidth,n=n&&e.lineSpacing===t.lineSpacing,n=n&&e.maxTurnAngle===t.maxTurnAngle,n=n&&e.minSpeedThreshold===t.minSpeedThreshold,n=n&&e.segmentLength===t.segmentLength,n=n&&e.smoothing===t.smoothing,n=n&&e.velocityScale===t.velocityScale,n=n&&e.verticesPerLine===t.verticesPerLine,n}function f(t,n){return t===n||!(!e(t)||!e(n))&&t.equals(n)}function m(e,t){if(!p(e.simulationSettings,t.simulationSettings))return!1;if(!f(e.timeExtent,t.timeExtent))return!1;let n=!0;return n=n&&e.loadImagery===t.loadImagery,n=n&&e.createFlowMesh===t.createFlowMesh,n=n&&e.color.kind===t.color.kind,n=n&&e.opacity.kind===t.opacity.kind,n=n&&e.size.kind===t.size.kind,n}export{m as areStreamlinesCompatible,r as getColor,n as getFlowSimulationSettings,s as getForegroundColor,i as getMax,l as getOpacity,a as getSize,u as setUniform,c as setUniforms,f as timeExtentsEqual,o as toRgba};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{throwIfAborted as t}from\"../../../../../core/promiseUtils.js\";import{timeExtentsEqual as a,setUniforms as e}from\"../utils.js\";import{BufferObject as r}from\"../../../../webgl/BufferObject.js\";import{DataType as s,BlendFactor as i,PrimitiveType as o,Usage as n,PixelFormat as m,TextureSamplingMode as l,PixelType as p,TextureWrapMode as c}from\"../../../../webgl/enums.js\";import{Texture as h}from\"../../../../webgl/Texture.js\";import{VertexArrayObject as _}from\"../../../../webgl/VertexArrayObject.js\";import{VertexElementDescriptor as f}from\"../../../../webgl/VertexElementDescriptor.js\";class d{constructor(t){this._params=t,this.animated=!1}isCompatible(t){if(!(t instanceof d))return!1;if(!a(this._params.timeExtent,t._params.timeExtent))return!1;let e=!0;return e=e&&this._params.loadImagery===t._params.loadImagery,e=e&&this._params.color.kind===t._params.color.kind,e=e&&this._params.opacity.kind===t._params.opacity.kind,e}async load(a,e){const{extent:r,size:s}=a;t(e);const i=await this._params.loadImagery(r,s[0],s[1],this._params.timeExtent,e);return new g(i,{color:this._params.color,opacity:this._params.opacity})}render(t,a,r){const{context:s}=t,{program:n}=r;s.setFaceCullingEnabled(!1),s.setBlendingEnabled(!0),s.setBlendFunction(i.ONE,i.ONE_MINUS_SRC_ALPHA),s.useProgram(n),n.setUniformMatrix3fv(\"u_dvsMat3\",a.dvsMat3),s.bindTexture(r.texture,0),n.setUniform1i(\"u_texture\",0),n.setUniform1f(\"u_Min\",r.min),n.setUniform1f(\"u_Max\",r.max),e(n,\"color\",\"vec4\",this._params.color),e(n,\"opacity\",\"float\",this._params.opacity),s.bindVAO(r.vertexArray),s.drawArrays(o.TRIANGLE_STRIP,0,4)}}const u=new Map;u.set(\"a_position\",0),u.set(\"a_texcoord\",1);const w={geometry:[new f(\"a_position\",2,s.UNSIGNED_SHORT,0,8),new f(\"a_texcoord\",2,s.UNSIGNED_SHORT,4,8)]},x={vsPath:\"raster/flow/imagery\",fsPath:\"raster/flow/imagery\",attributes:u};class g{constructor(t,a){this._flowData=t,this._values=a}attach(t){const{context:a}=t,{width:e,height:s}=this._flowData,i=r.createVertex(a,n.STATIC_DRAW,new Uint16Array([0,0,0,1,e,0,1,1,0,s,0,0,e,s,1,0])),o=new _(a,u,w,{geometry:i}),f=[];\"ramp\"===this._values.color.kind&&f.push(\"vvColor\"),\"ramp\"===this._values.opacity.kind&&f.push(\"vvOpacity\");const d=t.painter.materialManager.getProgram(x,f);let g=1e6,y=-1e6;for(let r=0;r0}isCompatible(t){return t instanceof _&&e(this._params,t._params)}async load(e,a){const{extent:s,size:r}=e;t(a);const i=await this._params.loadImagery(s,r[0],r[1],this._params.timeExtent,a),{vertexData:o,indexData:n}=await this._params.createFlowMesh(\"Particles\",this._params.simulationSettings,i,a);return new c(o,n,{color:this._params.color,opacity:this._params.opacity,size:this._params.size})}render(t,e,s){const{context:n}=t,{program:m}=s;n.setFaceCullingEnabled(!1),n.setBlendingEnabled(!0),n.setBlendFunction(i.ONE,i.ONE_MINUS_SRC_ALPHA),n.useProgram(m),m.setUniform1f(\"u_time\",e.time),m.setUniform1f(\"u_trailLength\",this._params.trailLength),m.setUniform1f(\"u_flowSpeed\",this._params.flowSpeed),m.setUniform1f(\"u_featheringSize\",this._params.featheringSize),m.setUniform1f(\"u_featheringOffset\",this._params.featheringOffset),m.setUniform1f(\"u_introFade\",this._params.introFade?1:0),m.setUniform1f(\"u_fadeToZero\",this._params.fadeToZero?1:0),m.setUniform1f(\"u_decayRate\",this._params.decayRate),m.setUniformMatrix3fv(\"u_dvsMat3\",e.dvsMat3),m.setUniformMatrix3fv(\"u_displayViewMat3\",e.displayViewMat3),a(m,\"color\",\"vec4\",this._params.color),a(m,\"opacity\",\"float\",this._params.opacity),a(m,\"size\",\"float\",this._params.size),n.bindVAO(s.vertexArray),n.drawElements(o.TRIANGLES,s.indexCount,r.UNSIGNED_INT,0)}}const l=new Map;l.set(\"a_xyts0\",0),l.set(\"a_xyts1\",1),l.set(\"a_typeIdDurationSeed\",2),l.set(\"a_extrudeInfo\",3);const h={geometry:[new p(\"a_xyts0\",4,r.FLOAT,0,64),new p(\"a_xyts1\",4,r.FLOAT,16,64),new p(\"a_typeIdDurationSeed\",4,r.FLOAT,32,64),new p(\"a_extrudeInfo\",4,r.FLOAT,48,64)]},f={vsPath:\"raster/flow/particles\",fsPath:\"raster/flow/particles\",attributes:l};class c{constructor(t,e,a){this._vertexData=t,this._indexData=e,this._values=a}attach(t){const{context:e}=t,a=s.createVertex(e,n.STATIC_DRAW,this._vertexData),r=s.createIndex(e,n.STATIC_DRAW,this._indexData),i=new m(e,l,h,{geometry:a},r),o=[];\"ramp\"===this._values.color.kind&&o.push(\"vvColor\"),\"ramp\"===this._values.opacity.kind&&o.push(\"vvOpacity\"),\"ramp\"===this._values.size.kind&&o.push(\"vvSize\");const p=t.painter.materialManager.getProgram(f,o);this.vertexArray=i,this.program=p,this.indexCount=this._indexData.length,this._vertexData=null,this._indexData=null}detach(){this.vertexArray.dispose()}get ready(){return this.program.isCompiled}}export{c as ParticlesResources,_ as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nclass t{constructor(t){this._styles=t}get animated(){return this._styles.reduce(((t,s)=>t||s.animated),!1)}isCompatible(s){if(!(s instanceof t))return!1;if(this._styles.length!==s._styles.length)return!1;const e=this._styles.length;for(let t=0;ts.load(t,e))));return new s(r)}render(t,s,e){for(let r=0;rt&&s.ready),!0)}}export{s as StackResources,t as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{throwIfAborted as t}from\"../../../../../core/promiseUtils.js\";import{areStreamlinesCompatible as e,setUniforms as a}from\"../utils.js\";import{BufferObject as s}from\"../../../../webgl/BufferObject.js\";import{DataType as r,BlendFactor as i,PrimitiveType as o,Usage as n}from\"../../../../webgl/enums.js\";import{VertexArrayObject as m}from\"../../../../webgl/VertexArrayObject.js\";import{VertexElementDescriptor as p}from\"../../../../webgl/VertexElementDescriptor.js\";class _{constructor(t){this._params=t}get animated(){return this._params.flowSpeed>0}isCompatible(t){return t instanceof _&&e(this._params,t._params)}async load(e,a){const{extent:s,size:r}=e;t(a);const i=await this._params.loadImagery(s,r[0],r[1],this._params.timeExtent,a),{vertexData:o,indexData:n}=await this._params.createFlowMesh(\"Streamlines\",this._params.simulationSettings,i,a);return new d(o,n,{color:this._params.color,opacity:this._params.opacity,size:this._params.size})}render(t,e,s){const{context:n}=t,{program:m}=s;n.setFaceCullingEnabled(!1),n.setBlendingEnabled(!0),n.setBlendFunction(i.ONE,i.ONE_MINUS_SRC_ALPHA),n.useProgram(m),m.setUniform1f(\"u_time\",e.time),m.setUniform1f(\"u_trailLength\",this._params.trailLength),m.setUniform1f(\"u_flowSpeed\",this._params.flowSpeed),m.setUniform1f(\"u_featheringSize\",this._params.featheringSize),m.setUniform1f(\"u_featheringOffset\",this._params.featheringOffset),m.setUniform1f(\"u_introFade\",this._params.introFade?1:0),m.setUniform1f(\"u_fadeToZero\",this._params.fadeToZero?1:0),m.setUniform1f(\"u_decayRate\",this._params.decayRate),m.setUniformMatrix3fv(\"u_dvsMat3\",e.dvsMat3),m.setUniformMatrix3fv(\"u_displayViewMat3\",e.displayViewMat3),a(m,\"color\",\"vec4\",this._params.color),a(m,\"opacity\",\"float\",this._params.opacity),a(m,\"size\",\"float\",this._params.size),n.bindVAO(s.vertexArray),n.drawElements(o.TRIANGLES,s.indexCount,r.UNSIGNED_INT,0)}}const l=new Map;l.set(\"a_positionAndSide\",0),l.set(\"a_timeInfo\",1),l.set(\"a_extrude\",2),l.set(\"a_speed\",3);const h={geometry:[new p(\"a_positionAndSide\",3,r.FLOAT,0,36),new p(\"a_timeInfo\",3,r.FLOAT,12,36),new p(\"a_extrude\",2,r.FLOAT,24,36),new p(\"a_speed\",1,r.FLOAT,32,36)]},f={vsPath:\"raster/flow/streamlines\",fsPath:\"raster/flow/streamlines\",attributes:l};class d{constructor(t,e,a){this._vertexData=t,this._indexData=e,this._values=a}attach(t){const{context:e}=t,a=s.createVertex(e,n.STATIC_DRAW,this._vertexData),r=s.createIndex(e,n.STATIC_DRAW,this._indexData),i=new m(e,l,h,{geometry:a},r),o=[];\"ramp\"===this._values.color.kind&&o.push(\"vvColor\"),\"ramp\"===this._values.opacity.kind&&o.push(\"vvOpacity\"),\"ramp\"===this._values.size.kind&&o.push(\"vvSize\");const p=t.painter.materialManager.getProgram(f,o);this.vertexArray=i,this.program=p,this.indexCount=this._indexData.length,this._vertexData=null,this._indexData=null}detach(){this.vertexArray.dispose()}get ready(){return this.program.isCompiled}}export{_ as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../core/maybe.js\";import{getFlowSimulationSettings as t,getOpacity as o,getSize as a,getColor as r,getMax as s,getForegroundColor as l}from\"./utils.js\";import n from\"./styles/Imagery.js\";import i from\"./styles/Particles.js\";import c from\"./styles/Stack.js\";import m from\"./styles/Streamlines.js\";const f=4,p=1,u=.5,y=!0,d=!0,g=2.3;function w(w,h){const{flowSpeed:j,trailLength:v}=w,S=t(w);let k=null;const x={opacity:o(w),size:a(w)};let I=r(w);if(\"none\"===w.background)x.color=I;else{\"constant\"===I.kind&&(I={kind:\"ramp\",stops:[0,1],values:[0,0,0,1,I.value[0],I.value[1],I.value[2],I.value[3]],count:2});const e={loadImagery:h.loadImagery,timeExtent:h.timeExtent,color:I,opacity:{kind:\"constant\",value:[1]}};k=new n(e),x.color=l()}const z={loadImagery:h.loadImagery,createFlowMesh:h.createFlowMesh,simulationSettings:S,timeExtent:h.timeExtent,trailLength:v,flowSpeed:j,featheringSize:p,featheringOffset:u,introFade:y,fadeToZero:d,decayRate:g,color:x.color,opacity:x.opacity,size:x.size},E=\"butt\"===w.trailCap||s(a(w))<=f?new m(z):new i(z);return e(k)?new c([k,E]):E}export{w as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport e from\"./BrushFlow.js\";import{WGLDrawPhase as r}from\"../webgl/enums.js\";import s from\"../webgl/WGLContainer.js\";class t extends s{constructor(){super(...arguments),this.flowStyle=null}get requiresDedicatedFBO(){return!1}doRender(e){super.doRender(e)}prepareRenderPasses(s){const t=s.registerRenderPass({name:\"flow\",brushes:[e],target:()=>this.children,drawPhase:r.MAP});return[...super.prepareRenderPasses(s),t]}}export{t as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport t from\"../../../../core/Logger.js\";const e=t.getLogger(\"esri.views.2d.engine.flow.FlowDisplayData\");class s{constructor(t,e,s,a){this.state={name:\"created\"},this.flowStyle=t,this.extent=e,this.size=s,this.pixelRatio=a}async load(){const t=new AbortController;this.state={name:\"loading\",abortController:t};const e={extent:this.extent,size:this.size,pixelRatio:this.pixelRatio},s=await this.flowStyle.load(e,t.signal);this.state={name:\"loaded\",resources:s}}attach(t){if(\"loaded\"!==this.state.name)return void e.error(\"Only loaded resources can be attached.\");const s=this.state.resources;s.attach(t),this.state={name:\"attached\",resources:s}}detach(){if(\"loading\"===this.state.name)return this.state.abortController.abort(),void(this.state={name:\"detached\"});\"attached\"===this.state.name&&(this.state.resources.detach(),this.state={name:\"detached\"})}update(t){if(!this.flowStyle.isCompatible(t.flowStyle))return!1;return!(!this.extent.equals(t.extent)||this.size[0]!==t.size[0]||this.size[1]!==t.size[1]||this.pixelRatio!==t.pixelRatio)&&(this.flowStyle=t.flowStyle,!0)}}export{s as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{deg2rad as t}from\"../../../../core/mathUtils.js\";import{isSome as s,isNone as a}from\"../../../../core/maybe.js\";import{h as e,d as i,c as r,r as o}from\"../../../../chunks/mat3.js\";import{c as n}from\"../../../../chunks/mat3f32.js\";import{DisplayObject as l}from\"../DisplayObject.js\";class m extends l{constructor(){super(...arguments),this._displayData=null}get displayData(){return this._displayData}set displayData(t){this._displayData=t,this.requestRender()}clear(){s(this._displayData)&&(this._displayData.detach(),this._displayData=null,this.requestRender())}setTransform(s){const{displayData:n}=this;if(a(n))return;const l=n.extent.xmin,m=n.extent.ymax,p=[0,0];s.toScreen(p,[l,m]);const c=(n.extent.xmax-n.extent.xmin)/n.size[0]/s.resolution,d=t(s.rotation),{dvs:h}=this.transforms;e(h,[-1,1,0]),i(h,h,[2/(s.size[0]*s.pixelRatio),-2/(s.size[1]*s.pixelRatio),1]),r(h,h,[p[0],p[1],0]),o(h,h,d),i(h,h,[c*s.pixelRatio,c*s.pixelRatio,1])}_createTransforms(){return{dvs:n()}}}export{m as FlowDisplayObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as t}from\"../../../../chunks/tslib.es6.js\";import\"../../../../geometry.js\";import o from\"../../../../core/Accessor.js\";import e from\"../../../../core/Logger.js\";import{deg2rad as i}from\"../../../../core/mathUtils.js\";import{isNone as r,isSome as s}from\"../../../../core/maybe.js\";import{isAbortError as a}from\"../../../../core/promiseUtils.js\";import{property as l}from\"../../../../core/accessorSupport/decorators/property.js\";import\"../../../../core/arrayUtils.js\";import\"../../../../core/has.js\";import\"../../../../core/accessorSupport/ensureType.js\";import{subclass as n}from\"../../../../core/accessorSupport/decorators/subclass.js\";import p from\"../../../../geometry/Point.js\";import c from\"./FlowDisplayData.js\";import{FlowDisplayObject as m}from\"./FlowDisplayObject.js\";import d from\"../../../../geometry/Extent.js\";const h=1.15,y=e.getLogger(\"esri.views.2d.engine.flow.FlowStrategy\");let f=class extends o{constructor(t){super(t),this._flowDisplayObject=new m,this._loading=null}initialize(){this.flowContainer.addChild(this._flowDisplayObject)}destroy(){this._clear(),this.flowContainer.removeAllChildren()}get updating(){return null!=this._loading}update(t){const{flowStyle:o}=this.flowContainer;if(r(o))return void this._clear();const{extent:e,rotation:i,resolution:l,pixelRatio:n}=t.state,p=g(e,i);p.expand(h);const m=[Math.round((p.xmax-p.xmin)/l),Math.round((p.ymax-p.ymin)/l)],d=new c(o,p,m,n);if(s(this._loading)){if(this._loading.update(d))return;this._loading.detach(),this._loading=null}!r(this._flowDisplayObject.displayData)&&this._flowDisplayObject.displayData.update(d)||(d.load().then((()=>{this._flowDisplayObject.clear(),this._flowDisplayObject.displayData=this._loading,this._loading=null}),(t=>{a(t)||(y.error(\"A resource failed to load.\",t),this._loading=null)})),this._loading=d)}_clear(){this._flowDisplayObject.clear(),s(this._loading)&&(this._loading.detach(),this._loading=null)}};t([l()],f.prototype,\"_loading\",void 0),t([l()],f.prototype,\"flowContainer\",void 0),t([l()],f.prototype,\"updating\",null),f=t([n(\"esri.views.2d.engine.flow.FlowStrategy\")],f);const u=f;function g(t,o){const e=new p({x:(t.xmax+t.xmin)/2,y:(t.ymax+t.ymin)/2,spatialReference:t.spatialReference}),r=t.xmax-t.xmin,s=t.ymax-t.ymin,a=Math.abs(Math.cos(i(o))),l=Math.abs(Math.sin(i(o))),n=a*r+l*s,c=l*r+a*s,m=new d({xmin:e.x-n/2,ymin:e.y-c/2,xmax:e.x+n/2,ymax:e.y+c/2,spatialReference:t.spatialReference});return m.centerAt(e),m}export{u as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as t}from\"../../../../chunks/tslib.es6.js\";import e from\"../../../../Graphic.js\";import{HandleOwner as i}from\"../../../../core/HandleOwner.js\";import{watch as r}from\"../../../../core/reactiveUtils.js\";import{property as o}from\"../../../../core/accessorSupport/decorators/property.js\";import\"../../../../core/arrayUtils.js\";import\"../../../../core/has.js\";import\"../../../../core/accessorSupport/ensureType.js\";import{subclass as s}from\"../../../../core/accessorSupport/decorators/subclass.js\";import a from\"./createFlowStyle.js\";import{loadImagery as n}from\"./dataUtils.js\";import l from\"./FlowContainer.js\";import p from\"./FlowStrategy.js\";let h=class extends i{constructor(){super(...arguments),this._loadImagery=(t,e,i,r,o)=>n(this.layer,t,e,i,r,o),this._createFlowMesh=(t,e,i,r)=>this.layer.createFlowMesh({meshType:t,flowData:i,simulationSettings:e},{signal:r}),this.attached=!1,this.container=null,this.layer=null,this.type=\"flow\",this.timeExtent=null,this.redrawOrRefetch=async()=>{this._updateVisualization()}}get updating(){return!this._strategy||this._strategy.updating}attach(){const{layer:t}=this,e=()=>{this._loadImagery=(e,i,r,o,s)=>n(t,e,i,r,o,s),this._updateVisualization()};\"multidimensionalDefinition\"in t?this.handles.add(r((()=>t.multidimensionalDefinition),e)):this.handles.add([r((()=>t.mosaicRule),e),r((()=>t.renderingRule),e),r((()=>t.definitionExpression),e)]),this.container=new l,this._strategy=new p({flowContainer:this.container}),this._updateVisualization()}detach(){this._strategy.destroy(),this.container.removeAllChildren(),this.container=null,this.handles.removeAll()}update(t){t.stationary?this._strategy.update(t):this.layerView.requestUpdate()}hitTest(t){return new e({attributes:{},geometry:t.clone(),layer:this.layer})}moveEnd(){}async doRefresh(){}_updateVisualization(){const{renderer:t}=this.layer;if(\"flow\"!==t.type)return;const e=a(t,{loadImagery:this._loadImagery,createFlowMesh:this._createFlowMesh,timeExtent:this.timeExtent});this.container.flowStyle=e,this.layerView.requestUpdate()}};t([o()],h.prototype,\"_strategy\",void 0),t([o()],h.prototype,\"attached\",void 0),t([o()],h.prototype,\"container\",void 0),t([o()],h.prototype,\"layer\",void 0),t([o()],h.prototype,\"layerView\",void 0),t([o()],h.prototype,\"type\",void 0),t([o()],h.prototype,\"updating\",null),t([o()],h.prototype,\"timeExtent\",void 0),h=t([s(\"esri.views.2d.engine.flow.FlowView2D\")],h);const d=h;export{d as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/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.24/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isSome as e}from\"../../core/maybe.js\";import{ShaderType as t}from\"./enums.js\";import r from\"./reservedWordsGLSL3.js\";import{shaderTranspiler as a}from\"./testUtils.js\";var o,n={exports:{}};void 0!==(o=[\"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\"])&&(n.exports=o);const i=n.exports;var l,s={exports:{}};l=s,function(e){var t=[\"<<=\",\">>=\",\"++\",\"--\",\"<<\",\">>\",\"<=\",\">=\",\"==\",\"!=\",\"&&\",\"||\",\"+=\",\"-=\",\"*=\",\"/=\",\"%=\",\"&=\",\"^^\",\"^=\",\"|=\",\"(\",\")\",\"[\",\"]\",\".\",\"!\",\"~\",\"*\",\"/\",\"%\",\"+\",\"-\",\"<\",\">\",\"&\",\"^\",\"|\",\"?\",\":\",\"=\",\",\",\";\",\"{\",\"}\"];void 0!==t&&(l.exports=t)}();const c=s.exports;var d={exports:{}};!function(e){!function(t){var r=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\"]}();void 0!==r&&(e.exports=r)}()}(d);const u=d.exports;var g=999,p=9999,f=0,_=1,h=2,x=3,m=4,y=5,w=6,M=7,v=8,T=9,b=10,P=11,E=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"];function C(){var e,t,r,a=0,o=0,n=g,l=[],s=[],d=1,C=0,k=0,j=!1,D=!1,F=\"\";return function(e){return s=[],null!==e?S(e.replace?e.replace(/\\r\\n/g,\"\\n\"):e):R()};function L(e){e.length&&s.push({type:E[n],data:e,position:k,line:d,column:C})}function S(t){var i;for(a=0,r=(F+=t).length;e=F[a],a0)continue;r=e.slice(0,1).join(\"\")}return L(r),k+=r.length,(l=l.slice(r.length)).length}}function q(){return/[^a-fA-F0-9]/.test(e)?(L(l.join(\"\")),n=g,a):(l.push(e),t=e,a+1)}function B(){return\".\"===e||/[eE]/.test(e)?(l.push(e),n=y,t=e,a+1):\"x\"===e&&1===l.length&&\"0\"===l[0]?(n=P,l.push(e),t=e,a+1):/[^\\d]/.test(e)?(L(l.join(\"\")),n=g,a):(l.push(e),t=e,a+1)}function H(){return\"f\"===e&&(l.push(e),t=e,a+=1),/[eE]/.test(e)||\"-\"===e&&/[eE]/.test(t)?(l.push(e),t=e,a+1):/[^\\d]/.test(e)?(L(l.join(\"\")),n=g,a):(l.push(e),t=e,a+1)}function N(){if(/[^\\d\\w_]/.test(e)){var r=l.join(\"\");return n=i.indexOf(r)>-1?v:u.indexOf(r)>-1?M:w,L(l.join(\"\")),n=g,a}return l.push(e),t=e,a+1}}function k(e){var t=C(),r=[];return r=(r=r.concat(t(e))).concat(t(null))}function j(e){return k(e)}function D(e){return e.map((e=>\"eof\"!==e.type?e.data:\"\")).join(\"\")}const F=[\"GL_OES_standard_derivatives\",\"GL_EXT_frag_depth\",\"GL_EXT_draw_buffers\",\"GL_EXT_shader_texture_lod\"];function L(e,t=\"100\",r=\"300 es\"){const a=/^\\s*\\#version\\s+([0-9]+(\\s+[a-zA-Z]+)?)\\s*/;for(const o of e)if(\"preprocessor\"===o.type){const e=a.exec(o.data);if(e){const a=e[1].replace(/\\s\\s+/g,\" \");if(a===r)return a;if(a===t)return o.data=\"#version \"+r,t;throw new Error(\"unknown glsl version: \"+a)}}return e.splice(0,0,{type:\"preprocessor\",data:\"#version \"+r},{type:\"whitespace\",data:\"\\n\"}),null}function S(e,t){for(let r=t-1;r>=0;r--){const t=e[r];if(\"whitespace\"!==t.type&&\"block-comment\"!==t.type){if(\"keyword\"!==t.type)break;if(\"attribute\"===t.data||\"in\"===t.data)return!0}}return!1}function R(e,t,r,a){a=a||r;for(const o of e)if(\"ident\"===o.type&&o.data===r){a in t?t[a]++:t[a]=0;return R(e,t,a+\"_\"+t[a],a)}return r}function V(e,t,r=\"afterVersion\"){function a(e,t){for(let r=t;rt=0;--e){const t=i[e];if(\"preprocessor\"===t.type){const r=t.data.match(/\\#extension\\s+(.*)\\:/);if(r&&r[1]&&F.includes(r[1].trim())){const t=i[e+1];i.splice(e,t&&\"whitespace\"===t.type?2:1)}const a=t.data.match(/\\#ifdef\\s+(.*)/);a&&a[1]&&F.includes(a[1].trim())&&(t.data=\"#if 1\");const o=t.data.match(/\\#ifndef\\s+(.*)/);o&&o[1]&&F.includes(o[1].trim())&&(t.data=\"#if 0\")}}return q(a,D(i))}const O=new Map;function U(e){return a.enableCache?O.get(e):null}function q(e,t){return a.enableCache&&O.set(e,t),t}export{I as transpileShader};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/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.24/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 o}from\"../../../../chunks/earcut.js\";import{a as s}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.getLogger(\"esri.views.2d.engine.webgl.Mesh2D\"),g=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\")}},p=(e,t,r,o)=>{let s=0;for(let n=1;n0:s<0},l=({coords:e,lengths:t},r)=>{const s=[];for(let n=0,i=0;n({...r,[o]:h.createVertex(e,t,this.vertices[o])})),{})),this._cache.vertexBuffers}}export{w as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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=e.getLogger(\"esri.views.2d.engine.webgl.ClippingInfo\"),m=t=>parseFloat(t)/100;class p 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 p(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?m(e.left)*r:e.left,o=\"string\"==typeof e.right?m(e.right)*r:e.right,h=\"string\"==typeof e.top?m(e.top)*s:e.top,a=\"string\"==typeof e.bottom?m(e.bottom)*s:e.bottom,c=i,n=h;return{x:c,y:n,width:Math.max(r-o-c,0),height:Math.max(s-a-n,0)}}_createMesh(e,r){switch(r.type){case\"rect\":return a.fromRect(this._createScreenRect(e,r));case\"path\":return a.fromPath(r);case\"geometry\":return a.fromGeometry(e,r);default:return n.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{p as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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 o}from\"./enums.js\";class a 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()}_createTransforms(){return{dvs:s()}}doRender(e){const r=this.createRenderParams(e),{painter:s,globalOpacity:t,profiler:i,drawPhase:n}=r,a=n===o.LABEL||n===o.HIGHLIGHT?1:t*this.computedOpacity;i.recordContainerStart(this.name),s.beforeRenderLayer(r,this._clippingInfos?255:0,a),this.updateTransforms(e.state),this.renderChildren(r),s.compositeLayer(r,a),i.recordContainerEnd()}renderChildren(r){e(this._renderPasses)&&(this._renderPasses=this.prepareRenderPasses(r.painter));for(const e of this.children)e.beforeRender(r);for(const e of this._renderPasses)try{e.render(r)}catch(s){}for(const e of this.children)e.afterRender(r)}createRenderParams(e){return e.requireFBO=this.requiresDedicatedFBO,e}prepareRenderPasses(e){return[e.registerRenderPass({name:\"clip\",brushes:[t.clip],target:()=>this._clippingInfos,drawPhase:o.MAP|o.LABEL|o.LABEL_ALPHA|o.DEBUG|o.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{a as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{isSome as t,isNone as e}from\"../../../core/maybe.js\";import n from\"../PixelBlock.js\";function i(e){return t(e)&&\"esri.layers.support.PixelBlock\"===e.declaredClass&&e.pixels&&e.pixels.length>0}function l(t,e){if(!e?.length||!i(t))return t;const l=t.pixels.length;return e&&e.some((t=>t>=l))||1===l&&1===e.length&&0===e[0]?t:l!==e.length||e.some(((t,e)=>t!==e))?new n({pixelType:t.pixelType,width:t.width,height:t.height,mask:t.mask,validPixelCount:t.validPixelCount,maskIsAlpha:t.maskIsAlpha,pixels:e.map((e=>t.pixels[e])),statistics:t.statistics&&e.map((e=>t.statistics[e]))}):t}function o(t){if(!t)return;const e=t.colormap;if(!e||0===e.length)return;const n=e.sort(((t,e)=>t[0]-e[0]));let i=0;n[0][0]<0&&(i=n[0][0]);const l=Math.max(256,n[n.length-1][0]-i+1),o=new Uint8Array(4*l),r=[];let s,a=0,h=0;const f=5===n[0].length;if(l>65536)return n.forEach((t=>{r[t[0]-i]=f?t.slice(1):t.slice(1).concat([255])})),{indexed2DColormap:r,offset:i,alphaSpecified:f};if(t.fillUnspecified)for(s=n[h],a=s[0]-i;ac?o[u]=0:(x[u]=s[g],m[u]=s[g+1],d[u]=s[g+2],o[u]=s[g+3]));else{for(o=new Uint8Array(r),u=0;uc?o[u]=0:(x[u]=s[g],m[u]=s[g+1],d[u]=s[g+2],o[u]=s[g+3]);n.mask=o}else if(o)for(u=0;ua)));const u=[];let p,x,m;if(h)if(null==o)for(f=0;f1;){if(f===c.value){d=!0;break}f>c.value?u=m:p=m,m=Math.floor((u+p)/2),c=e[Math.floor(m)]}d||(f===e[u].value?(c=e[u],d=!0):f===e[p].value?(c=e[p],d=!0):fe[u].value&&(ft.pixelBlock));if(!i||e(i.pixelBlock))return null;const l=(i.extent.xmax-i.extent.xmin)/i.pixelBlock.width,o=(i.extent.ymax-i.extent.ymin)/i.pixelBlock.height,r=.01*Math.min(l,o),s=t.sort(((t,e)=>Math.abs(t.extent.ymax-e.extent.ymax)>r?e.extent.ymax-t.extent.ymax:Math.abs(t.extent.xmin-e.extent.xmin)>r?t.extent.xmin-e.extent.xmin:0)),a=Math.min.apply(null,s.map((t=>t.extent.xmin))),h=Math.min.apply(null,s.map((t=>t.extent.ymin))),f=Math.max.apply(null,s.map((t=>t.extent.xmax))),c=Math.max.apply(null,s.map((t=>t.extent.ymax))),p={x:Math.round((n.xmin-a)/l),y:Math.round((c-n.ymax)/o)},x={width:Math.round((f-a)/l),height:Math.round((c-h)/o)},m={width:Math.round((n.xmax-n.xmin)/l),height:Math.round((n.ymax-n.ymin)/o)};if(Math.round(x.width/i.pixelBlock.width)*Math.round(x.height/i.pixelBlock.height)!==s.length||p.x<0||p.y<0||x.widtht.pixelBlock)),x,{clipOffset:p,clipSize:m})}}function c(t,e,n,i,l,o){const{width:r,height:s}=n.block,{x:a,y:f}=n.offset,{width:c,height:u}=n.mosaic,p=h(r,s,i,l,a,f,c,u);let x=0,m=0;if(o){const t=o.hasGCSSShiftTransform?360:o.halfWorldWidth,e=r*o.resolutionX,n=o.startX+i*e,l=n+e;nt?m=o.rightPadding:n>=t&&(x=o.leftMargin-o.rightPadding,m=0)}if(p.xmax-=m,\"number\"!=typeof e)for(let h=p.ymin;hi(t)));if(e(u))return null;const x=a?a.width:o.width,m=a?a.height:o.height,d=u.width,y=u.height,g=o.width/d,w=o.height/y,k={offset:s||{x:0,y:0},mosaic:a||o,block:{width:d,height:y}},M=u.pixelType,A=n.getPixelArrayConstructor(M),U=u.pixels.length,C=[];let T,S;for(let t=0;te(t)||t.mask&&t.mask.length>0))){B=new Uint8Array(x*m);for(let e=0;et(e)));if(e(s))return null;const a=l.some((e=>!t(e)||!!e.mask)),{width:h,height:f}=o,c=a?new Uint8Array(h*f):null,{blockWidths:u}=r,p=[],x=s.getPlaneCount(),m=n.getPixelArrayConstructor(s.pixelType);if(a)for(let t=0,e=0;tl||h>o)return t;if(0===r&&0===s&&a===l&&h===o)return t;t.mask||(t.mask=new Uint8Array(l*o));const f=t.mask;for(let i=0;i=h||e=a?0:1}return t.updateStatistics(),t}function m(t){if(!i(t))return null;const e=t.clone(),{width:n,height:l,pixels:o,mask:r}=t,s=o[0],a=e.pixels[0];for(let i=2;ie&&(n=o.value,e=i),o=l.next();return n}function y(t,e,n){if(0===n)return;const i=t.get(e);1===i?t.delete(e):t.set(e,i-1)}function g(t,e,n){0!==n&&t.set(e,t.has(e)?t.get(e)+1:1)}function w(t,e,l){let{x:o,y:r}=e;const{width:s,height:a}=l;if(0===o&&0===r&&a===t.height&&s===t.width)return t;const{width:h,height:f}=t,c=Math.max(0,r),u=Math.max(0,o),p=Math.min(o+s,h),x=Math.min(r+a,f);if(p<0||x<0||!i(t))return null;o=Math.max(0,-o),r=Math.max(0,-r);const{pixels:m,mask:d}=t,y=s*a,g=m.length,w=[];for(let i=0;i{const i=t instanceof Float32Array||t instanceof Float64Array?0:.5;for(let l=0;l{const{keyField:p}=e;f&&p&&l.fieldsIndex.has(p)&&!f.includes(p)&&f.push(p)})),f}function s(e,p){return e.popupTemplate?e.popupTemplate:l(p)&&p.defaultPopupTemplateEnabled&&l(e.defaultPopupTemplate)?e.defaultPopupTemplate:null}export{s as getFetchPopupTemplate,d as getRequiredFields};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{c as t}from\"../../../../chunks/mat3f32.js\";import{RasterBitmap as s}from\"./RasterBitmap.js\";import{TiledDisplayObject as e}from\"../webgl/TiledDisplayObject.js\";class i extends e{constructor(t,e,i,r,a,n=null){super(t,e,i,r,a),this.bitmap=new s(n,null,null),this.bitmap.coordScale=[r,a],this.bitmap.once(\"isReady\",(()=>this.ready()))}destroy(){super.destroy(),this.bitmap.destroy(),this.bitmap=null,this.stage=null}set stencilRef(t){this.bitmap.stencilRef=t}get stencilRef(){return this.bitmap.stencilRef}setTransform(t,s){super.setTransform(t,s),this.bitmap.transforms.dvs=this.transforms.dvs}_createTransforms(){return{dvs:t(),tileMat3:t()}}onAttach(){this.bitmap.stage=this.stage}onDetach(){this.bitmap.stage=null}}export{i as RasterTile};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{create as e}from\"../../../../geometry/support/aaBoundingRect.js\";import{getWorldWidth as s}from\"../../viewpointUtils.js\";import{brushes as r}from\"../brushes.js\";import{RasterTile as i}from\"./RasterTile.js\";import{WGLDrawPhase as t}from\"../webgl/enums.js\";import o from\"../webgl/TileContainer.js\";class n extends o{constructor(){super(...arguments),this.isCustomTilingScheme=!1}createTile(e){const s=this._getTileBounds(e),[r,t]=this._tileInfoView.tileInfo.size;return new i(e,s[0],s[3],r,t)}prepareRenderPasses(e){const s=e.registerRenderPass({name:\"imagery (tile)\",brushes:[r.raster],target:()=>this.children.map((e=>e.bitmap)),drawPhase:t.MAP});return[...super.prepareRenderPasses(e),s]}doRender(e){this.visible&&e.drawPhase===t.MAP&&super.doRender(e)}_getTileBounds(r){const i=this._tileInfoView.getTileBounds(e(),r);if(this.isCustomTilingScheme&&r.world){const{tileInfo:e}=this._tileInfoView,t=s(e.spatialReference);if(t){const{resolution:s}=e.lodAt(r.level),o=t/s%e.size[0],n=o?(e.size[0]-o)*s:0;i[0]-=n*r.world,i[2]-=n*r.world}}return i}}export{n as RasterTileContainer};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import\"../../../../geometry.js\";import{HandleOwner as t}from\"../../../../core/HandleOwner.js\";import i from\"../../../../core/Logger.js\";import{isSome as s,unwrap as r}from\"../../../../core/maybe.js\";import{debounce as l,isAbortError as a,eachAlways as o}from\"../../../../core/promiseUtils.js\";import{property as h}from\"../../../../core/accessorSupport/decorators/property.js\";import\"../../../../core/arrayUtils.js\";import\"../../../../core/has.js\";import\"../../../../core/accessorSupport/ensureType.js\";import{subclass as n}from\"../../../../core/accessorSupport/decorators/subclass.js\";import c from\"../../../../geometry/Point.js\";import u from\"../../../../layers/support/PixelBlock.js\";import p from\"../../../../layers/support/TileInfo.js\";import{update as y,unregister as d,register as g,getRasterId as m}from\"../../../../layers/support/rasterDatasets/RawBlockCache.js\";import{extractBands as _}from\"../../../../layers/support/rasterFunctions/pixelUtils.js\";import{getWorldWidth as f,computeProjectedScales as w}from\"../../../../layers/support/rasterFunctions/rasterProjectionHelper.js\";import\"../../tiling/PagedTileQueue.js\";import b from\"../../tiling/TileInfoView.js\";import\"../../tiling/TileKey.js\";import P from\"../../tiling/TileQueue.js\";import I from\"../../tiling/TileStrategy.js\";import{getWebGLCapabilities as C}from\"../../../webgl/capabilities.js\";import v from\"../../../../geometry/Extent.js\";const R=[0,0],T=i.getLogger(\"esri.views.2d.layers.ImageryTileLayerView2D\");let V=class extends t{constructor(){super(...arguments),this._emptyTilePixelBlock=null,this._tileStrategy=null,this._tileInfoView=null,this._fetchQueue=null,this._blockCacheRegistryUrl=null,this._blockCacheRegistryId=null,this._srcResolutions=null,this.previousLOD=null,this._needBlockCacheUpdate=!1,this._globalSymbolizerParams=null,this._symbolizerParams=null,this._abortController=null,this._isCustomTilingScheme=!1,this._globalUpdateRequested=!1,this.attached=!1,this.container=null,this.layer=null,this.timeExtent=null,this.redrawOrRefetch=l(((e,t)=>!this.previousLOD||this.layerView.suspended?Promise.resolve():e?this.updatingHandles.addPromise(this.doRefresh()):this.updatingHandles.addPromise(this._redrawImage(t))))}get useWebGLForProcessing(){return this._get(\"useWebGLForProcessing\")??!0}set useWebGLForProcessing(e){this._set(\"useWebGLForProcessing\",e)}get useProgressiveUpdate(){return null==this._get(\"useProgressiveUpdate\")||this._get(\"useProgressiveUpdate\")}set useProgressiveUpdate(e){if(this._tileStrategy&&this.useProgressiveUpdate!==e){this._tileStrategy.destroy(),this.container.removeAllChildren();const t=this._getCacheSize(e);this._tileStrategy=new I({cachePolicy:\"purge\",acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),cacheSize:t,tileInfoView:this._tileInfoView}),this._set(\"useProgressiveUpdate\",e),this.layerView.requestUpdate()}}update(e){this._fetchQueue.pause(),this._fetchQueue.state=e.state,this._tileStrategy.update(e),this._fetchQueue.resume();const{extent:t,resolution:i,scale:s}=e.state,r=this._tileInfoView.getClosestInfoForScale(s);if(this.layer.raster){if(!this.useProgressiveUpdate||this._needBlockCacheUpdate){const e=this._srcResolutions[r.level],s=t.toJSON?t:v.fromJSON(t);y(this._blockCacheRegistryUrl,this._blockCacheRegistryId,s,i,e,this.layer.raster.ioConfig.sampling)}this._needBlockCacheUpdate=!1,this.previousLOD?.level!==r.level&&(this.previousLOD=r,null==this._symbolizerParams||this.layerView.hasTilingEffects||this._updateSymbolizerParams(),this._tileStrategy.updateCacheSize(0))}}moveEnd(){!this.layerView.hasTilingEffects&&this.useProgressiveUpdate||(this._abortController&&this._abortController.abort(),this._abortController=new AbortController,0===this._fetchQueue.length&&this._redrawImage(this._abortController.signal).then((()=>{this._globalUpdateRequested=!1,this.layerView.requestUpdate()})));const e=this._getCacheSize(this.useProgressiveUpdate);this._tileStrategy.updateCacheSize(e),this.layerView.requestUpdate()}get updating(){return this._fetchQueue?.updating||this._globalUpdateRequested||!(!this.updatingHandles||!this.updatingHandles.updating)}attach(){C(\"2d\").supportsTextureFloat||(this.useWebGLForProcessing=!1),this._initializeTileInfo(),this._tileInfoView=new b(this.layerView.tileInfo,this.layerView.fullExtent);const e=this._computeFetchConcurrency();this._fetchQueue=new P({tileInfoView:this._tileInfoView,concurrency:e,process:(e,t)=>this._fetchTile1(e,t)});const t=this._getCacheSize(this.useProgressiveUpdate);this._tileStrategy=new I({cachePolicy:\"purge\",acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),cacheSize:t,tileInfoView:this._tileInfoView}),this._updateBlockCacheRegistry()}detach(){this._tileStrategy.destroy(),this._fetchQueue.clear(),this.container.removeAllChildren(),this._fetchQueue=this._tileStrategy=this._tileInfoView=null,d(this._blockCacheRegistryUrl,this._blockCacheRegistryId),this._blockCacheRegistryUrl=this._blockCacheRegistryId=null}acquireTile(e){const t=this.container.createTile(e);return this._enqueueTileFetch(t),this.layerView.requestUpdate(),this._needBlockCacheUpdate=!0,this._globalUpdateRequested=this.layerView.hasTilingEffects||!this.useProgressiveUpdate,t}releaseTile(e){this._fetchQueue.abort(e.key.id),this.container.removeChild(e),e.once(\"detach\",(()=>{e.destroy(),this.layerView.requestUpdate()})),this.layerView.requestUpdate()}createEmptyTilePixelBlock(e=null){const t=null==e||e.join(\",\")===this._tileInfoView.tileInfo.size.join(\",\");if(t&&s(this._emptyTilePixelBlock))return this._emptyTilePixelBlock;e=e||this._tileInfoView.tileInfo.size;const[i,r]=e,l=new u({width:i,height:r,pixels:[new Uint8Array(i*r)],mask:new Uint8Array(i*r),pixelType:\"u8\"});return t&&(this._emptyTilePixelBlock=l),l}_fetchTile1(e,t){const i=s(t)&&t.signal,l=this.canUseWebGLForProcessing(),{layerView:a}=this,o=!a.tileInfo.isWrappable&&s(f(a.view.spatialReference)),h={allowPartialFill:!0,datumTransformation:a.datumTransformation,interpolation:l?\"nearest\":this.layer.interpolation,registryId:this._blockCacheRegistryId,requestRawData:l,signal:r(i),srcResolution:this._srcResolutions[e.level],timeExtent:a.timeExtent,tileInfo:a.tileInfo,disableWrapAround:o};return this.fetchTile(e,h)}_getCacheSize(e){return e?40:0}_initializeTileInfo(){const e=this.layerView.view.spatialReference,t=new c({x:this.layerView.fullExtent.xmin,y:this.layerView.fullExtent.ymax,spatialReference:e}),{scales:i,srcResolutions:s,isCustomTilingScheme:r}=w(this.layer.rasterInfo,e),l=p.create({spatialReference:e,size:512,scales:i});(0===l.origin.x||l.origin.x>t.x)&&(l.origin=t),this._isCustomTilingScheme=r,this.layerView.set(\"tileInfo\",l),this._srcResolutions=s??[]}_computeFetchConcurrency(){const{blockBoundary:e}=this.layer.rasterInfo.storageInfo,t=e[e.length-1];return(t.maxCol-t.minCol+1)*(t.maxRow-t.minRow+1)>64?2:10}async _enqueueTileFetch(e,t){this.updatingHandles.addPromise(this._enqueueTileFetch1(e,t))}async _enqueueTileFetch1(e,t){if(!this._fetchQueue.has(e.key.id)){try{const t=await this._fetchQueue.push(e.key),{bandIds:s}=this.layer;let r=!this.useProgressiveUpdate||this.layerView.hasTilingEffects&&!this._globalSymbolizerParams;if(this._globalUpdateRequested&&!this.layerView.moving&&0===this._fetchQueue.length){r=!1;try{await this._redrawImage(this._abortController&&this._abortController.signal)}catch(i){a(i)&&T.error(i)}this._globalUpdateRequested=!1}!this.canUseWebGLForProcessing()&&\"rasterVF\"!==this.type||this.layerView.hasTilingEffects||null!=this._symbolizerParams||this._updateSymbolizerParams();const l=this._tileInfoView.getTileCoords(R,e.key),o=this._tileInfoView.getTileResolution(e.key);await this.updateTileSource(e,{source:t,symbolizerParams:this._symbolizerParams,globalSymbolizerParams:this._globalSymbolizerParams,suspended:r,bandIds:s,coords:l,resolution:o}),e.once(\"attach\",(()=>this.layerView.requestUpdate())),this.container.addChild(e)}catch(i){a(i)||T.error(i)}this.layerView.requestUpdate()}}async _redrawImage(e){if(0===this.container.children.length)return;await this.layer.updateRenderer(),this.layerView.hasTilingEffects?await this._updateGlobalSymbolizerParams(e):(this._updateSymbolizerParams(),this._globalSymbolizerParams=null);const t=this.container.children.map((async e=>this.updateTileSymbolizerParameters(e,{local:this._symbolizerParams,global:this._globalSymbolizerParams})));await o(t),this.container.requestRender()}async _updateGlobalSymbolizerParams(e){const t={srcResolution:this._srcResolutions[this.previousLOD.level],registryId:this._blockCacheRegistryId,signal:e},i=await this.layer.fetchPixels(this.layerView.view.extent,this.layerView.view.width,this.layerView.view.height,t);if(!i||!i.pixelBlock)return;const s=this.layer.symbolizer.generateWebGLParameters({pixelBlock:_(i.pixelBlock,this.layer.bandIds),isGCS:this.layerView.view.spatialReference.isGeographic,resolution:{x:this.previousLOD.resolution,y:this.previousLOD.resolution},bandIds:this.layer.bandIds});!this.canUseWebGLForProcessing()&&s&&\"stretch\"===s.type&&this.layer.renderer&&\"raster-stretch\"===this.layer.renderer.type&&(s.factor=s.factor.map((e=>255*e)),s.outMin=Math.round(255*s.outMin),s.outMax=Math.round(255*s.outMax)),this._globalSymbolizerParams=s}_updateSymbolizerParams(){this._symbolizerParams=this.layer.symbolizer.generateWebGLParameters({pixelBlock:null,isGCS:this.layerView.view.spatialReference.isGeographic,resolution:{x:this.previousLOD.resolution,y:this.previousLOD.resolution},bandIds:this.layer.bandIds})}_updateBlockCacheRegistry(e=!1){const{url:t,rasterInfo:i,raster:s}=this.layer,{multidimensionalDefinition:r}=this.layer.normalizeRasterFetchOptions({multidimensionalDefinition:this.layer.multidimensionalDefinition,timeExtent:this.layerView.timeExtent}),l=i?.multidimensionalInfo?s.getSliceIndex(r):null,a=m(t,l);if(a!==this._blockCacheRegistryUrl){if(null!=this._blockCacheRegistryUrl&&d(this._blockCacheRegistryUrl,this._blockCacheRegistryId),this._blockCacheRegistryId=g(a,this.layer.raster.rasterInfo),e){const e=this._tileInfoView.getClosestInfoForScale(this.layerView.view.scale),t=this._srcResolutions[e.level];y(a,this._blockCacheRegistryId,this.layerView.view.extent,this.layerView.view.resolution,t,this.layer.raster.ioConfig.sampling)}this._blockCacheRegistryUrl=a}}async doRefresh(){await this.layer.updateRenderer(),this.layerView.hasTilingEffects||this._updateSymbolizerParams(),this._updateBlockCacheRegistry(!0),this._fetchQueue.reset();const e=[];this._globalUpdateRequested=this.layerView.hasTilingEffects||!this.useProgressiveUpdate,this._tileStrategy.tiles.forEach((t=>e.push(this._enqueueTileFetch(t)))),await o(e)}};e([h()],V.prototype,\"_fetchQueue\",void 0),e([h()],V.prototype,\"_globalUpdateRequested\",void 0),e([h()],V.prototype,\"attached\",void 0),e([h()],V.prototype,\"container\",void 0),e([h()],V.prototype,\"layer\",void 0),e([h()],V.prototype,\"layerView\",void 0),e([h()],V.prototype,\"type\",void 0),e([h()],V.prototype,\"useWebGLForProcessing\",null),e([h()],V.prototype,\"useProgressiveUpdate\",null),e([h()],V.prototype,\"timeExtent\",void 0),e([h()],V.prototype,\"updating\",null),V=e([n(\"esri.views.2d.layers.imagery.BaseImageryTileSubView2D\")],V);export{V as BaseImageryTileSubView2D};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import{isSome as r}from\"../../../../core/maybe.js\";import{property as t}from\"../../../../core/accessorSupport/decorators/property.js\";import\"../../../../core/arrayUtils.js\";import\"../../../../core/has.js\";import\"../../../../core/accessorSupport/ensureType.js\";import{subclass as s}from\"../../../../core/accessorSupport/decorators/subclass.js\";import{RasterTileContainer as i}from\"../../engine/imagery/RasterTileContainer.js\";import{BaseImageryTileSubView2D as o}from\"./BaseImageryTileSubView2D.js\";import{canUseMajorityInterpolationOnDataSource as a}from\"../support/util.js\";let l=class extends o{constructor(){super(...arguments),this.container=null,this.layer=null,this.type=\"raster\"}attach(){super.attach(),this.container=new i(this._tileInfoView),this.container.isCustomTilingScheme=this._isCustomTilingScheme}detach(){super.detach(),this.container.removeAllChildren(),this.container=null}canUseWebGLForProcessing(){return this.useWebGLForProcessing&&this.layer.symbolizer.canRenderInWebGL&&!(\"majority\"===this.layer.interpolation&&a(this.layer))}fetchTile(e,r){return this.layer.fetchTile(e.level,e.row,e.col,r)}async updateTileSource(e,t){const{bandIds:s}=this.layer,i=this._getLayerInterpolation(),o=this.canUseWebGLForProcessing(),{source:a,globalSymbolizerParams:l,suspended:n,coords:c,resolution:p}=t,u=this.layerView.hasTilingEffects?l:t.symbolizerParams,{bitmap:m}=e;if([m.x,m.y]=c,m.resolution=p,a&&r(a)&&r(a.pixelBlock)){const e={extent:a.extent,pixelBlock:a.pixelBlock};if(m.rawPixelData=e,o)m.source=a.pixelBlock,m.isRendereredSource=!1;else{const r=await this.layer.applyRenderer(e,\"stretch\"===l?.type?l:null);m.source=r,m.isRendereredSource=!0}m.symbolizerParameters=o?u:null,o?m.transformGrid||(m.transformGrid=a.transformGrid):m.transformGrid=null}else{const e=this.createEmptyTilePixelBlock();m.source=e,m.symbolizerParameters=o?u:null,m.transformGrid=null}m.bandIds=o?s:null,m.width=this._tileInfoView.tileInfo.size[0],m.height=this._tileInfoView.tileInfo.size[1],m.interpolation=i,m.suspended=n,m.invalidateTexture()}async updateTileSymbolizerParameters(e,t){const{local:s,global:i}=t,{bandIds:o}=this.layer,a=this._getLayerInterpolation(),l=this.canUseWebGLForProcessing(),{bitmap:n}=e,{rawPixelData:c}=n;!l&&r(c)?(n.source=await this.layer.applyRenderer(c,\"stretch\"===i?.type?i:null),n.isRendereredSource=!0):(n.isRendereredSource&&r(c)&&(n.source=c.pixelBlock),n.isRendereredSource=!1),n.symbolizerParameters=l?this.layerView.hasTilingEffects?i:s:null,n.bandIds=l?o:null,n.interpolation=a,n.suspended=!1}_getLayerInterpolation(){const e=this.layer.renderer.type;if(\"raster-colormap\"===e||\"unique-value\"===e||\"class-breaks\"===e)return\"nearest\";const{interpolation:r}=this.layer,{renderer:t}=this.layer;return\"raster-stretch\"===t.type&&null!=t.colorRamp?\"bilinear\"===r||\"cubic\"===r?\"bilinear\":\"nearest\":r}};e([t()],l.prototype,\"container\",void 0),e([t()],l.prototype,\"layer\",void 0),e([t()],l.prototype,\"type\",void 0),l=e([s(\"esri.views.2d.layers.imagery.ImageryTileView2D\")],l);const n=l;export{n as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{s as t,m as s}from\"../../../../chunks/mat3.js\";import{c as e}from\"../../../../chunks/mat3f32.js\";import{RasterVFDisplayObject as a}from\"./RasterVFDisplayObject.js\";import{TiledDisplayObject as i}from\"../webgl/TiledDisplayObject.js\";class r extends i{constructor(t,s,e,i,r,o=null){super(t,s,e,i,r),this.tileData=new a(o),this.tileData.coordScale=[i,r],this.tileData.once(\"isReady\",(()=>this.ready()))}destroy(){super.destroy(),this.tileData.destroy(),this.tileData=null,this.stage=null}set stencilRef(t){this.tileData.stencilRef=t}get stencilRef(){return this.tileData.stencilRef}_createTransforms(){return{dvs:e(),tileMat3:e()}}setTransform(e,a){super.setTransform(e,a);const i=a/(e.resolution*e.pixelRatio),r=this.transforms.tileMat3,[o,l]=this.tileData.offset,h=[this.x+o*a,this.y-l*a],[n,f]=e.toScreenNoRotation([0,0],h),{symbolTileSize:m}=this.tileData.symbolizerParameters,c=Math.round((this.width-this.tileData.offset[0])/m)*m,D=Math.round((this.height-this.tileData.offset[1])/m)*m,d=c/this.rangeX*i,u=D/this.rangeY*i;t(r,d,0,0,0,u,0,n,f,1),s(this.transforms.dvs,e.displayViewMat3,r),this.tileData.transforms.dvs=this.transforms.dvs}onAttach(){this.tileData.stage=this.stage}onDetach(){this.tileData.stage=null}}export{r as RasterVFTile};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{create as e}from\"../../../../geometry/support/aaBoundingRect.js\";import s from\"./BrushVectorField.js\";import{RasterVFTile as r}from\"./RasterVFTile.js\";import{WGLDrawPhase as t}from\"../webgl/enums.js\";import i from\"../webgl/TileContainer.js\";class o extends i{constructor(){super(...arguments),this.isCustomTilingScheme=!1,this.symbolTypes=[\"triangle\"]}createTile(s){const t=this._tileInfoView.getTileBounds(e(),s),[i,o]=this._tileInfoView.tileInfo.size;return new r(s,t[0],t[3],i,o)}prepareRenderPasses(e){const r=e.registerRenderPass({name:\"imagery (vf tile)\",brushes:[s],target:()=>this.children.map((e=>e.tileData)),drawPhase:t.MAP});return[...super.prepareRenderPasses(e),r]}doRender(e){this.visible&&e.drawPhase===t.MAP&&this.symbolTypes.forEach((s=>{e.renderPass=s,super.doRender(e)}))}}export{o as RasterVFTileContainer};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import{isSome as t}from\"../../../../core/maybe.js\";import{watch as i}from\"../../../../core/reactiveUtils.js\";import{property as r}from\"../../../../core/accessorSupport/decorators/property.js\";import\"../../../../core/arrayUtils.js\";import\"../../../../core/has.js\";import\"../../../../core/accessorSupport/ensureType.js\";import{subclass as o}from\"../../../../core/accessorSupport/decorators/subclass.js\";import{sampleVectorField as s}from\"../../../../layers/support/rasterFunctions/vectorFieldUtils.js\";import{RasterVFTileContainer as l}from\"../../engine/imagery/RasterVFTileContainer.js\";import{BaseImageryTileSubView2D as a}from\"./BaseImageryTileSubView2D.js\";let c=class extends a{constructor(){super(...arguments),this._handle=null,this.container=null,this.layer=null,this.type=\"rasterVF\"}canUseWebGLForProcessing(){return!1}async fetchTile(e,t){t={...t,interpolation:\"nearest\",requestProjectedLocalDirections:!0};const i=await this.layer.fetchTile(e.level,e.row,e.col,t);return\"vector-magdir\"===this.layer.rasterInfo.dataType&&i?.pixelBlock&&(i.pixelBlock=await this.layer.convertVectorFieldData(i.pixelBlock,t)),i}updateTileSource(e,i){const r=i.symbolizerParams,{tileData:o}=e;o.key=e.key,o.width=this._tileInfoView.tileInfo.size[0],o.height=this._tileInfoView.tileInfo.size[1];const{symbolTileSize:s}=r,{source:l}=i;if(o.offset=this._getTileSymbolOffset(o.key,s),t(l)&&t(l.pixelBlock)){const e={extent:l.extent,pixelBlock:l.pixelBlock};o.rawPixelData=e,o.symbolizerParameters=r,o.source=this._sampleVectorFieldData(l.pixelBlock,r,o.offset)}else{const e=[Math.round((this._tileInfoView.tileInfo[0]-o.offset[0])/s),Math.round((this._tileInfoView.tileInfo[1]-o.offset[1])/s)],t=this.createEmptyTilePixelBlock(e);o.source=t,o.symbolizerParameters=r}return o.invalidateVAO(),Promise.resolve(null)}updateTileSymbolizerParameters(e,i){const r=i.local,{symbolTileSize:o}=r,{tileData:s}=e;s.offset=this._getTileSymbolOffset(s.key,o);const l=s.symbolizerParameters.symbolTileSize;return s.symbolizerParameters=r,t(s.rawPixelData?.pixelBlock)&&l!==o&&(s.source=this._sampleVectorFieldData(s.rawPixelData.pixelBlock,s.symbolizerParameters,s.offset)),Promise.resolve(null)}attach(){super.attach(),this.container=new l(this._tileInfoView),this.container.isCustomTilingScheme=this._isCustomTilingScheme,this._updateSymbolType(this.layer.renderer),this._handle=i((()=>this.layer.renderer),(e=>this._updateSymbolType(e)))}detach(){super.detach(),this.container.removeAllChildren(),this._handle.remove(),this._handle=null}_getTileSymbolOffset(e,t){const i=e.col*this._tileInfoView.tileInfo.size[0]%t,r=e.row*this._tileInfoView.tileInfo.size[1]%t;return[i>t/2?t-i:-i,r>t/2?t-r:-r]}_sampleVectorFieldData(e,t,i){const{symbolTileSize:r}=t;return s(e,\"vector-uv\",r,i)}_updateSymbolType(e){\"vector-field\"===e.type&&(this.container.symbolTypes=\"wind-barb\"===e.style?[\"scalar\",\"triangle\"]:\"simple-scalar\"===e.style?[\"scalar\"]:[\"triangle\"])}};e([r()],c.prototype,\"container\",void 0),e([r()],c.prototype,\"layer\",void 0),e([r()],c.prototype,\"type\",void 0),c=e([o(\"esri.views.2d.layers.imagery.VectorFieldTileView2D\")],c);const n=c;export{n as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as t}from\"../../chunks/tslib.es6.js\";import e from\"../../Graphic.js\";import r from\"../../core/Error.js\";import{unwrap as i,isNone as o}from\"../../core/maybe.js\";import{property as s}from\"../../core/accessorSupport/decorators/property.js\";import\"../../core/arrayUtils.js\";import\"../../core/has.js\";import\"../../core/accessorSupport/ensureType.js\";import{subclass as a}from\"../../core/accessorSupport/decorators/subclass.js\";import{combinedViewLayerTimeExtentProperty as n}from\"../../layers/support/commonProperties.js\";import{getDefaultDatumTransformationForDataset as l,projectExtent as u}from\"../../layers/support/rasterFunctions/rasterProjectionHelper.js\";import{getFetchPopupTemplate as p}from\"./support/popupUtils.js\";const m=m=>{let f=class extends m{constructor(){super(...arguments),this._rasterFieldPrefix=\"Raster.\",this.layer=null,this.view=null,this.tileInfo=null}get fullExtent(){return this._getfullExtent()}_getfullExtent(){return this.projectFullExtent(this.view.spatialReference)}get hasTilingEffects(){return this.layer.renderer&&\"dynamicRangeAdjustment\"in this.layer.renderer&&this.layer.renderer.dynamicRangeAdjustment}get datumTransformation(){return l(i(this.layer.fullExtent),this.view.spatialReference,!0)}supportsSpatialReference(t){return!!this.projectFullExtent(t)}projectFullExtent(t){const e=i(this.layer.fullExtent),r=l(e,t,!1);return u(e,t,r)}async fetchPopupFeatures(t,i){const{layer:s}=this;if(!t)throw new r(\"imageryTileLayerView:fetchPopupFeatures\",\"Nothing to fetch without area\",{layer:s});const{popupEnabled:a}=s,n=p(s,i);if(!a||o(n))throw new r(\"imageryTileLayerView:fetchPopupFeatures\",\"Missing required popupTemplate or popupEnabled\",{popupEnabled:a,popupTemplate:n});const l=[],{value:u,magdirValue:m}=await s.identify(t,{timeExtent:this.timeExtent});let f=\"\";if(u&&u.length){f=\"imagery-tile\"===s.type&&s.hasStandardTime()&&null!=u[0]?u.map((t=>s.getStandardTimeValue(t))).join(\", \"):u.join(\", \");const t={ObjectId:0},r=\"Raster.ServicePixelValue\";t[r]=this._formatAttributeValue(f,r);const i=s.rasterInfo?.attributeTable?.features;if(i&&i.length>0){const e=i.filter((t=>{const e=t.attributes.value||t.attributes.Value||t.attributes.VALUE;return String(e)===f}));if(e.length>0){const r=e[0];if(r)for(const e in r.attributes)if(r.attributes.hasOwnProperty(e)){const i=this._rasterFieldPrefix+e;t[i]=this._formatAttributeValue(r.attributes[e],i)}}}const o=s.rasterInfo.dataType;\"vector-magdir\"!==o&&\"vector-uv\"!==o||(t[\"Raster.Magnitude\"]=m?.[0],t[\"Raster.Direction\"]=m?.[1]);const a=new e(this.fullExtent.clone(),null,t);a.layer=s,a.sourceLayer=a.layer,l.push(a)}return l}_formatAttributeValue(t,e){if(\"string\"==typeof t){const r=this.layer.popupTemplate&&this.layer.popupTemplate.fieldInfos,i=this._getFieldInfo(r,e),o=i&&i.format;if(o){let e,r;return t.trim().includes(\",\")?(e=\",\",r=e+\" \",this._formatDelimitedString(t,e,r,o)):t.trim().includes(\" \")?(e=r=\" \",this._formatDelimitedString(t,e,r,o)):this._formatNumberFromString(t,o)}}return t}_getFieldInfo(t,e){if(!t||!t.length||!e)return;const r=e.toLowerCase();let i;return t.some((t=>!(!t.fieldName||t.fieldName.toLowerCase()!==r&&t.fieldName.toLowerCase()!==r.replace(/ /g,\"_\"))&&(i=t,!0))),i}_formatDelimitedString(t,e,r,i){return t&&e&&r&&i?t.trim().split(e).map((t=>this._formatNumberFromString(t,i))).join(r):t}_formatNumberFromString(t,e){if(!t||!e)return t;const r=Number(t);return isNaN(r)?t:e.format(r)}};return t([s()],f.prototype,\"layer\",void 0),t([s(n)],f.prototype,\"timeExtent\",void 0),t([s()],f.prototype,\"view\",void 0),t([s()],f.prototype,\"fullExtent\",null),t([s()],f.prototype,\"tileInfo\",void 0),t([s({readOnly:!0})],f.prototype,\"hasTilingEffects\",null),f=t([a(\"esri.views.layers.ImageryTileLayerView\")],f),f};export{m as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../chunks/tslib.es6.js\";import s from\"../../../Graphic.js\";import i from\"../../../core/Logger.js\";import{isAbortError as t}from\"../../../core/promiseUtils.js\";import{watch as r,syncAndInitial as o,initial as a}from\"../../../core/reactiveUtils.js\";import{property as n}from\"../../../core/accessorSupport/decorators/property.js\";import\"../../../core/arrayUtils.js\";import\"../../../core/has.js\";import\"../../../core/accessorSupport/ensureType.js\";import{subclass as h}from\"../../../core/accessorSupport/decorators/subclass.js\";import u from\"../engine/flow/FlowView2D.js\";import{LayerView2DMixin as l}from\"./LayerView2D.js\";import c from\"./imagery/ImageryTileView2D.js\";import d from\"./imagery/VectorFieldTileView2D.js\";import{canUseMajorityInterpolationOnDataSource as p}from\"./support/util.js\";import v from\"../../layers/ImageryTileLayerView.js\";import w from\"../../layers/LayerView.js\";import b from\"../../layers/RefreshableLayerView.js\";const m=i.getLogger(\"esri.views.2d.layers.ImageryTileLayerView2D\");let y=class extends(v(b(l(w)))){constructor(){super(...arguments),this._useWebGLForProcessing=!0,this._useProgressiveUpdate=!0,this.subview=null}get useWebGLForProcessing(){return this._useWebGLForProcessing}set useWebGLForProcessing(e){this._useWebGLForProcessing=e,this.subview&&\"useWebGLForProcessing\"in this.subview&&(this.subview.useWebGLForProcessing=e)}get useProgressiveUpdate(){return this._useWebGLForProcessing}set useProgressiveUpdate(e){this._useProgressiveUpdate=e,this.subview&&\"useProgressiveUpdate\"in this.subview&&(this.subview.useProgressiveUpdate=e)}update(e){this.subview.update(e),this.notifyChange(\"updating\")}isUpdating(){return!this.subview||this.subview.updating}attach(){this.layer.increaseRasterJobHandlerUsage(),this._updateSubview(),this.handles.add([r((()=>{const{layer:e}=this;return{bandIds:e.bandIds,renderer:e.renderer,interpolation:e.interpolation,multidimensionalDefinition:e.multidimensionalDefinition}}),((e,s)=>{const i=e.interpolation!==s.interpolation&&(\"majority\"===e.interpolation||\"majority\"===s.interpolation)&&p(this.layer),r=e.renderer!==s.renderer&&s.renderer?.type!==e.renderer?.type;r&&this._updateSubview();const o=e.multidimensionalDefinition!==s.multidimensionalDefinition||i||r;this.subview.redrawOrRefetch(o).catch((e=>{t(e)||m.error(e)})),this.notifyChange(\"updating\")})),r((()=>this.layer.blendMode??\"normal\"),(e=>{this.subview.container.blendMode=e}),o),r((()=>this.layer.effect??null),(e=>{this.subview.container.effect=e}),o),r((()=>this.timeExtent),(()=>{this.subview.timeExtent=this.timeExtent,this.subview.redrawOrRefetch(!0).catch((e=>{t(e)||m.error(e)}))}),a)],\"attach\")}detach(){this.handles.remove(\"attach\"),this.layer.decreaseRasterJobHandlerUsage(),this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null}moveStart(){this.requestUpdate()}viewChange(){this.requestUpdate()}moveEnd(){this.subview.moveEnd()}async hitTest(e,i){return[{type:\"graphic\",layer:this.layer,mapPoint:e,graphic:new s({attributes:{},geometry:e.clone()})}]}doRefresh(){return this.subview.doRefresh()}_updateSubview(){const e=\"vector-field\"===this.layer.renderer.type?\"rasterVF\":\"flow\"===this.layer.renderer.type?\"flow\":\"raster\";if(this.subview){if(this.subview.type===e)return void this._attachSubview(this.subview);this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null}const{layer:s}=this;let i;i=\"rasterVF\"===e?new d({layer:s,layerView:this}):\"flow\"===e?new u({layer:s,layerView:this}):new c({layer:s,layerView:this}),\"useWebGLForProcessing\"in i&&(i.useWebGLForProcessing=this._useWebGLForProcessing),\"useProgressiveUpdate\"in i&&(i.useProgressiveUpdate=this._useProgressiveUpdate),\"previousLOD\"in i&&(i.previousLOD=this.subview&&\"previousLOD\"in this.subview&&this.subview.previousLOD),this._attachSubview(i),this.subview=i,this.requestUpdate()}_attachSubview(e){e&&!e.attached&&(e.attach(),e.attached=!0,this.container.addChildAt(e.container,0),e.container.blendMode=this.layer.blendMode,e.container.effect=this.layer.effect)}_detachSubview(e){e?.attached&&(this.container.removeChild(e.container),e.detach(),e.attached=!1)}};e([n()],y.prototype,\"subview\",void 0),e([n()],y.prototype,\"useWebGLForProcessing\",null),e([n()],y.prototype,\"useProgressiveUpdate\",null),y=e([h(\"esri.views.2d.layers.ImageryTileLayerView2D\")],y);const g=y;export{g as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport\"../../../geometry.js\";import e from\"../../../core/Error.js\";import{isNone as t,isSome as n}from\"../../../core/maybe.js\";import{getMetersPerUnitForSR as o}from\"../../../core/unitUtils.js\";import{e as i,f as r,g as s,h as a,j as l}from\"../../../chunks/pe.js\";import{canProjectWithoutEngine as c,isLoaded as f,load as u,getTransformation as m,project as x}from\"../../../geometry/projection.js\";import h from\"../../../geometry/Extent.js\";import p from\"../../../geometry/Point.js\";import g from\"../../../geometry/Polygon.js\";import y from\"../../../geometry/SpatialReference.js\";var d;function M(e,t,n){return!c(e,t,n)}function w(t,n,o){const i=M(t,n,o);if(i&&!f())throw new e(\"rasterprojectionhelper-project\",\"projection engine is not loaded\");return i}!function(e){e[e.None=0]=\"None\",e[e.North=1]=\"North\",e[e.South=2]=\"South\",e[e.Both=3]=\"Both\"}(d||(d={}));const R=(e,t,n,o=0)=>{if(1===n[0])return[0,0];let i=1,r=-1,s=1,a=-1;for(let g=0;ge[g]?e[g]:i,r=r>e[g]?r:e[g],s=s>e[g+1]?e[g+1]:s,a=a>e[g+1]?a:e[g+1]);const{cols:l,rows:c}=t,f=(r-i)/l/n[0],u=(a-s)/c/n[1],m=2*o;let x=0,h=!1,p=[0,0];for(let g=0;gx&&(x=r+s,p=[r,s]),m&&x>m){h=!0;break}}if(h)break}return p},P={3395:20037508.342789244,3410:17334193.943686873,3857:20037508.342788905,3975:17367530.445161372,4087:20037508.342789244,4088:20015108.787169147,6933:17367530.445161372,32662:20037508.342789244,53001:20015086.79602057,53002:10007543.39801029,53003:20015086.79602057,53004:20015086.79602057,53016:14152803.599503474,53017:17333573.624304302,53034:20015086.79602057,53079:20015114.352186374,53080:20015114.352186374,54001:20037508.342789244,54002:10018754.171394624,54003:20037508.342789244,54004:20037508.342789244,54016:14168658.027268292,54017:17367530.44516137,54034:20037508.342789244,54079:20037508.342789244,54080:20037508.342789244,54100:20037508.342789244,54101:20037508.342789244},S=32,b=4,E=b,G=new Map,N=new Map;async function k(){if(f())return null;await u()}function T(e,t,n){if(!w(e.spatialReference,t))return null;return n?m(t,e.spatialReference,e):m(e.spatialReference,t,e)}function v(e,i,r,s=null){const a=e.spatialReference;if(a.equals(i))return e;w(a,i,s);const l=r.center,c=new h({xmin:l.x-e.x/2,xmax:l.x+e.x/2,ymin:l.y-e.y/2,ymax:l.y+e.y/2,spatialReference:a}),f=x(c,i,s),u=X(i);let m;if(t(f)||n(u)&&f.width>=u){const t=o(a)/o(i);m={x:e.x*t,y:e.y*t}}else m={x:f.width,y:f.height};return m}function C(e,t=.01){return o(e)?t/o(e):0}function _(e,t,o=null,i=!0){const r=e.spatialReference;if(r.equals(t))return e;w(r,t,o);const s=x(e,t,o);if(!i||!s)return s;const a=K(r,!0),l=K(t,!0),c=C(r);return c&&n(a)&&n(l)&&(s.x>0&&Math.abs(e.x-a[0])new p(t[0],t[1],e.inSR)));return x(n,e.outSR,e.datumTransformation).map((e=>e?[e.x,e.y]:[NaN,NaN]))}function W(e){const{inSR:t,outSR:o,datumTransformation:l}=e,c=L(t),{points:f,mask:u}=B(e,c);if(!t.isGeographic){const e=t.wkid?i.coordsys(t.wkid):i.fromString(t.isGeographic?r.PE_TYPE_GEOGCS:r.PE_TYPE_PROJCS,t.wkt);s.projToGeog(e,f.length,f)}if(n(l)&&l.steps.length&&l.steps.forEach((e=>{const t=e.wkid?i.geogtran(e.wkid):i.fromString(r.PE_TYPE_GEOGTRAN,e.wkt);a.geogToGeog(t,f.length,f,null,e.isInverse?r.PE_TRANSFORM_2_TO_1:r.PE_TRANSFORM_1_TO_2)})),!o.isGeographic){const e=L(o,!0),t=n(e)&&e.isEnvelope?[e.bbox[1],e.bbox[3]]:[-90,90];I(f,t);const a=o.wkid?i.coordsys(o.wkid):i.fromString(o.isGeographic?r.PE_TYPE_GEOGCS:r.PE_TYPE_PROJCS,o.wkt);s.geogToProj(a,f.length,f)}let m=f;if(u&&f.length!==u.length){m=[];for(let e=0,t=0;e1===e.getInclusive()&&1===e.getKind()));if(!s){if(s=i.find((e=>1===e.getInclusive()&&0===e.getKind())),!s)return null;r=!0}const a=n?0:(2===o.getNorthPoleLocation()?1:0)|(2===o.getSouthPoleLocation()?2:0),c=o.isPannableRectangle(),f=s.getCoord();if(r)return{isEnvelope:r,isPannable:c,vertices:f,coef:null,bbox:[f[0][0]-t,f[0][1]-t,f[1][0]+t,f[1][1]+t],poleLocation:a};let u=0;const m=[];let[x,h]=f[0],[p,g]=f[0];for(let l=0,y=f.length;le?p:e,g=g>t?g:t}return{isEnvelope:!1,isPannable:c,vertices:f,coef:m,bbox:[x,h,p,g],poleLocation:a}}function B(e,n){const o=[],{cols:i,rows:r,xres:s,yres:a,usePixelCenter:l}=e;let{xmin:c,ymax:f}=e;if(l&&(c+=s/2,f-=a/2),t(n)){for(let e=0;e=e&&i<=l;for(let e=0;e=t&&n<=m&&(o.push([i,n]),u[h]=1)}}return{points:o,mask:u}}const{coef:m}=n,x=[];for(let t=0;t=s&&e<=a){const t=i*e+r;n.push(t),o.push(l)}}let i=n;if(n.length>2){let e=2===o[0]?0:o[0],t=n[0];i=[];for(let r=1;re-t))}else n[0]>n[1]&&(i=[n[1],n[0]]);x.push(i)}for(let t=0,h=0;t=i[0]&&e<=i[1]&&(o.push([e,n]),u[h]=1);else if(i.length>2){let t=!1;for(let n=0;n=i[n]&&e<=i[n+1]){t=!0;break}t&&(o.push([e,n]),u[h]=1)}}}return{points:o,mask:u}}function I(e,t){const[n,o]=t;for(let i=0;io)&&(e[i]=[NaN,NaN])}}function Y(e){const n=X(e[0].spatialReference);if(e.length<2||t(n))return e[0];let{xmin:o,xmax:i,ymin:r,ymax:s}=e[0];for(let t=1;tC(s)){const{xmin:t,xmax:n}=e;for(let o=0;o<=a;o++){const i=0===o?t:-l/2,r=o===a?n-l*o:l/2;u[o]=new h({xmin:i,xmax:r,ymin:e.ymin,ymax:e.ymax,spatialReference:s})}}return Y(u.map((e=>J(e,o,i,r))).filter((e=>!!e)))}function q(e,n){const o=X(n);if(t(o))return null;let{xmin:i,ymin:r,xmax:s,ymax:a}=e;const l=e.spatialReference,c=new g({spatialReference:l,rings:[[[i,r],[s,r],[s,a],[i,a],[i,r]]]}),f=x(c,n);if(2!==f.rings.length||!f.rings[0].length||!f.rings[1].length)return null;const{rings:u}=f,m=C(l),p=new h({spatialReference:n});for(let t=0;t<2;t++){i=s=u[t][0][0],r=a=u[t][0][1];for(let e=0;eu[t][e][0]?u[t][e][0]:i,s=su[t][e][1]?u[t][e][1]:r,a=a=a.ymax))return null;if(!i||!a)return a;const l=K(s,!0),c=K(n,!0);if(t(l)||t(c))return a;const f=C(s,.001),u=C(s,500),m=C(n,.001);if(Math.abs(a.xmin-c[0])u){a.xmin=c[0];const t=[];t.push(new p(e.xmax,e.ymin,s)),t.push(new p(e.xmax,(e.ymin+e.ymax)/2,s)),t.push(new p(e.xmax,e.ymax,s));const i=t.map((e=>_(e,n,o))).filter((e=>!isNaN(e?.x))).map((e=>e.x));a.xmax=Math.max.apply(null,i)}if(iu){a.xmax=c[1];const t=[];t.push(new p(e.xmin,e.ymin,s)),t.push(new p(e.xmin,(e.ymin+e.ymax)/2,s)),t.push(new p(e.xmin,e.ymax,s));const i=t.map((e=>_(e,n,o))).filter((e=>!isNaN(e?.x))).map((e=>e.x));a.xmin=Math.min.apply(null,i)}}else{const e=C(n,.001);Math.abs(a.xmin-c[0])0&&i.outofBoundPointCountE)){M(c,f,e.datumTransformation)&&(c.isGeographic||n(L(c))),o=[b,b],i=Z({...e,spacing:o}),r={cols:i.size[0]+1,rows:i.size[1]+1},a=R(i.offsets,r,o,E)}if(i.error=a,o[0]>1&&(i.coefficients=$(i.offsets,r,s)),e.includeGCSGrid&&!c.isGeographic&&!c.isWebMercator)if(f.isGeographic)i.gcsGrid={offsets:i.offsets,coefficients:i.coefficients,spacing:o};else{const t=L(c);if(n(t)&&!t.isEnvelope){const t=Q(c),n=F(e.projectedExtent,t),{offsets:a}=Z({...e,srcBufferExtent:n,spacing:o}),l=$(a,r,s);i.gcsGrid={offsets:a,coefficients:l,spacing:o}}}return i}function Z(e){const{projectedExtent:t,srcBufferExtent:o,pixelSize:i,datumTransformation:r,rasterTransform:s}=e,a=t.spatialReference,l=o.spatialReference,c=w(a,l),{xmin:f,ymin:u,xmax:m,ymax:x}=t,h=X(l),g=n(h)&&(e.hasWrapAround||\"gcs-shift\"===s?.type),y=e.spacing||[S,S],d=y[0]*i.x,M=y[1]*i.y,R=1===y[0],P=Math.ceil((m-f)/d-.1/y[0])+(R?0:1),E=Math.ceil((x-u)/M-.1/y[1])+(R?0:1),G=j({cols:P,rows:E,xmin:f,ymax:x,xres:d,yres:M,inSR:a,outSR:l,datumTransformation:r,preferPE:y[0]<=b,usePixelCenter:R}),N=[];let k,T=0;const v=R?-1:NaN,{xmin:_,xmax:z,ymax:W,width:O,height:A}=o,B=C(l,500),I=n(h)&&_>0&&z>h/2;let Y=!1;if(c){const e=L(a);Y=n(e)&&e.poleLocation>0}for(let n=0;nz&&o[0]>h/2-B?o[0]-=h:g&&0===n&&o[0]<0&&I&&!s&&(o[0]+=h),!o||isNaN(o[0])||isNaN(o[1]))N.push(v),N.push(v),e.push(null),T++;else{if(s){const e=s.inverseTransform(new p({x:o[0],y:o[1],spatialReference:l}));o=[e.x,e.y]}e.push(o),n>0&&g&&k[t]&&o[0]z&&o[0]>h&&(o[0]-=h)),N.push((o[0]-_)/O),N.push((W-o[1])/A)}}k=e}return{offsets:N,error:null,coefficients:null,outofBoundPointCount:T,spacing:y,size:R?[P,E]:[P-1,E-1]}}function $(e,t,n){const{cols:o,rows:i}=t,r=new Float32Array((o-1)*(i-1)*2*6),s=new Float32Array([-0,-1,1,-1,1,-0,1,-0,-0]),a=new Float32Array([-1,1,0,0,-1,1,1,0,0]);for(let l=0;l=f)a=c.length,l=n/f>8;else{let e,t=u;for(let o=1;o<=c.length;o++){if(e=(c[o-1].x+c[o-1].y)/2,n<=e){n===e?a=o:\"down\"===i?(a=o-1,l=n/t>8):a=\"up\"===i||n-t>e-n||n/t>2?o:o-1;break}t=e}}const m=0===a?s:c[a-1];if(l){Math.min(m.x,m.y)*o(t.spatialReference)>19567&&(l=!1)}return{pyramidLevel:a,pyramidResolution:new p({x:m.x,y:m.y,spatialReference:t.spatialReference}),excessiveReading:l}}const f=Math.log(e.x/s.x)/Math.LN2,u=Math.log(e.y/s.y)/Math.LN2,m=t.storageInfo.maximumPyramidLevel||0;a=\"down\"===i?Math.floor(Math.min(f,u)):\"up\"===i?Math.ceil(Math.max(f,u)):Math.round((f+u)/2),a<0?a=0:a>m&&(l=a>m+3,a=m);const x=2**a;return{pyramidLevel:a,pyramidResolution:new p({x:x*t.nativePixelSize.x,y:x*t.nativePixelSize.y,spatialReference:t.spatialReference}),excessiveReading:l}}function ne(e,t,n=512,i=!0){const{extent:r,spatialReference:s,pixelSize:a}=e,l=v(new p({x:a.x,y:a.y,spatialReference:s}),t,r);if(null==l)return{projectedPixelSize:null,scales:null,srcResolutions:null,isCustomTilingScheme:!1};const c=(l.x+l.y)/2,f=o(t),u=c*f*96*39.37,m=t.isGeographic?256/n*295828763.7958547:256/n*591657527.591555;let x=\"vector-magdir\"===e.dataType||\"vector-uv\"===e.dataType;const h=F(r,t);x||i&&(t.isGeographic||t.isWebMercator)&&(x=h.xmin*h.xmax<0);let g,y=u;const d=1.001;if(x){y=m;const e=t.isGeographic?1341104507446289e-21:.29858214164761665,n=e*(96*f*39.37),o=t.isGeographic?4326:3857;g=v(new p({x:e,y:e,spatialReference:{wkid:o}}),s,h),g.x*=y/n,g.y*=y/n}else{g={x:a.x,y:a.y};const t=Math.ceil(Math.log(Math.min(e.width,e.height)/32)/Math.LN2);let n=0;for(;y=P;)y/=2,g.x/=2,g.y/=2,M.push(y),w.push({x:g.x,y:g.y});return{projectedPixelSize:l,scales:M,srcResolutions:w,isCustomTilingScheme:!x}}export{ne as computeProjectedScales,S as defaultGridSpacing,E as defaultProjectionToleranceInPixels,T as getDefaultDatumTransformationForDataset,j as getProjectedGridPoints,V as getProjectionOffsetGrid,H as getRasterDatasetAlignmentInfo,X as getWorldWidth,D as getWorldWrapCount,k as load,b as minimumGridSpacing,F as projectExtent,_ as projectPoint,v as projectResolution,M as requirePE,ee as snapExtent,te as snapPyramid};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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 = vec3(colorDodge(Cb.r, Cs.r), colorDodge(Cb.g, Cs.g), colorDodge(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR_BURN\\nvec3 f = vec3(colorBurn(Cb.r, Cs.r), colorBurn(Cb.g, Cs.g), colorBurn(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef HARD_LIGHT\\nvec3 f = vec3(hardLight(Cb.r, Cs.r), hardLight(Cb.g, Cs.g), hardLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SOFT_LIGHT\\nvec3 f = vec3(softLight(Cb.r, Cs.r), softLight(Cb.g, Cs.g), softLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef DIFFERENCE\\ngl_FragColor = vec4(abs(Cb - Cs) * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef EXCLUSION\\nvec3 f = Cs + Cb - 2.0 * Cs * Cb;\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef INVERT\\ngl_FragColor = vec4((1.0 - Cb) * as * ab + Cb * ab * (1.0 - as), ab);\\n#endif\\n#ifdef VIVID_LIGHT\\nvec3 f = vec3(vividLight(Cb.r, Cs.r),\\nvividLight(Cb.g, Cs.g),\\nvividLight(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef HUE\\nvec3 f = setLumSat(Cs,Cb,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef SATURATION\\nvec3 f = setLumSat(Cb,Cs,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef COLOR\\nvec3 f = setLum(Cs,Cb);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef LUMINOSITY\\nvec3 f = setLum(Cb,Cs);\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef PLUS\\ngl_FragColor = clamp(vec4(src.r + Cb.r, src.g + Cb.g, src.b + Cb.b, as + ab), 0.0, 1.0);\\n#endif\\n#ifdef MINUS\\ngl_FragColor = vec4(clamp(vec3(Cb.r - src.r, Cb.g - src.g, Cb.b - src.b), 0.0, 1.0), ab * as);\\n#endif\\n#ifdef AVERAGE\\nvec3 f = (Cb + Cs) / 2.0;\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#ifdef REFLECT\\nvec3 f = vec3(reflectBlend(Cb.r, Cs.r),\\nreflectBlend(Cb.g, Cs.g),\\nreflectBlend(Cb.b, Cs.b));\\ngl_FragColor = vec4(f * as * ab + Cs * as * (1.0 - ab) + Cb * ab *(1.0 - as),\\nas + ab * (1.0 - as));\\n#endif\\n#endif\\n}\",\"blend.vert\":\"attribute vec2 a_position;\\nvarying mediump vec2 v_uv;\\nvoid main(void) {\\ngl_Position = vec4(a_position , 0.0, 1.0);\\nv_uv = (a_position + 1.0) / 2.0;\\n}\"},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;\\nuniform highp mat3 u_dvsMat3;\\nvarying vec2 v_uv;\\nconst float UV_TO_TILE_SPACE = 512.;\\nvoid main() {\\nv_uv = a_pos;\\ngl_Position = vec4((u_dvsMat3 * vec3(a_pos * UV_TO_TILE_SPACE, 1.)).xy, 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 SIGNED_BYTE_TO_UNSIGNED = 128.0;\\nconst float POSITION_PRECISION = 1.0 / 8.0;\\nconst float FILL_POSITION_PRECISION = 1.0 / 1.0;\\nconst float SOFT_EDGE_RATIO = 1.0;\\nconst float THIN_LINE_WIDTH_FACTOR = 1.1;\\nconst float THIN_LINE_HALF_WIDTH = 1.0;\\nconst float EXTRUDE_SCALE_PLACEMENT_PADDING = 1.0 / 4.0;\\nconst float OFFSET_PRECISION = 1.0 / 8.0;\\nconst float OUTLINE_SCALE = 1.0 / 5.0;\\nconst float SDF_FONT_SIZE = 24.0;\\nconst float MAX_SDF_DISTANCE = 8.0;\\nconst float PLACEMENT_PADDING = 8.0;\\nconst float EPSILON = 0.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 \\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 = (1.0 / SIGNED_BYTE_TO_UNSIGNED) * 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;\\nconst float TILE_TO_CLIP_SPACE = 2.0 / 512.0;\\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 = vec3(a_pos * POSITION_PRECISION * TILE_TO_CLIP_SPACE - 1.0, 1.0);\\nvec3 vertexPos = centerPos + vec3(v_offsetFromCenter, 0.0) * u_radius * TILE_TO_CLIP_SPACE;\\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;\\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 adjustedPatternWidth = line.patternSize.x * 2.0 * lineHalfWidth / line.patternSize.y;\\nmediump float relativeTexX = fract(line.accumulatedDistance / adjustedPatternWidth);\\nmediump float relativeTexY = 0.5 + 0.5 * line.normal.y;\\nmediump vec2 texCoord = mix(line.tlbr.xy, line.tlbr.zw, vec2(relativeTexY, relativeTexX));\\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;\\nvarying mediump vec2 v_uv;\\nvoid main(void) {\\nv_uv = a_uv;\\nmediump vec3 pos = u_dvsMat3 * vec3(a_pos, 1.0);\\ngl_Position = vec4(pos.xy, 0.0, 1.0);\\n}\"}},\"post-processing\":{blit:{\"blit.frag\":\"precision mediump float;\\nuniform sampler2D u_texture;\\nvarying vec2 v_uv;\\nvoid main() {\\ngl_FragColor = texture2D(u_texture, v_uv);\\n}\"},bloom:{composite:{\"composite.frag\":\"precision mediump float;\\nvarying vec2 v_uv;\\nuniform sampler2D u_blurTexture1;\\nuniform sampler2D u_blurTexture2;\\nuniform sampler2D u_blurTexture3;\\nuniform sampler2D u_blurTexture4;\\nuniform sampler2D u_blurTexture5;\\nuniform float u_bloomStrength;\\nuniform float u_bloomRadius;\\nuniform float u_bloomFactors[NUMMIPS];\\nuniform vec3 u_bloomTintColors[NUMMIPS];\\nfloat lerpBloomFactor(const in float factor) {\\nfloat mirrorFactor = 1.2 - factor;\\nreturn mix(factor, mirrorFactor, u_bloomRadius);\\n}\\nvoid main() {\\ngl_FragColor = u_bloomStrength * (\\nlerpBloomFactor(u_bloomFactors[0]) * vec4(u_bloomTintColors[0], 1.0) * texture2D(u_blurTexture1, v_uv) +\\nlerpBloomFactor(u_bloomFactors[1]) * vec4(u_bloomTintColors[1], 1.0) * texture2D(u_blurTexture2, v_uv) +\\nlerpBloomFactor(u_bloomFactors[2]) * vec4(u_bloomTintColors[2], 1.0) * texture2D(u_blurTexture3, v_uv) +\\nlerpBloomFactor(u_bloomFactors[3]) * vec4(u_bloomTintColors[3], 1.0) * texture2D(u_blurTexture4, v_uv) +\\nlerpBloomFactor(u_bloomFactors[4]) * vec4(u_bloomTintColors[4], 1.0) * texture2D(u_blurTexture5, v_uv)\\n);\\n}\"},gaussianBlur:{\"gaussianBlur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nuniform vec2 u_direction;\\nvarying vec2 v_uv;\\n#define KERNEL_RADIUS RADIUS\\n#define SIGMA RADIUS\\nfloat gaussianPdf(in float x, in float sigma) {\\nreturn 0.39894 * exp(-0.5 * x * x / ( sigma * sigma)) / sigma;\\n}\\nvoid main() {\\nvec2 invSize = 1.0 / u_texSize;\\nfloat fSigma = float(SIGMA);\\nfloat weightSum = gaussianPdf(0.0, fSigma);\\nvec4 pixelColorSum = texture2D(u_colorTexture, v_uv) * weightSum;\\nfor (int i = 1; i < KERNEL_RADIUS; i ++) {\\nfloat x = float(i);\\nfloat w = gaussianPdf(x, fSigma);\\nvec2 uvOffset = u_direction * invSize * x;\\nvec4 sample1 = texture2D(u_colorTexture, v_uv + uvOffset);\\nvec4 sample2 = texture2D(u_colorTexture, v_uv - uvOffset);\\npixelColorSum += (sample1 + sample2) * w;\\nweightSum += 2.0 * w;\\n}\\ngl_FragColor = pixelColorSum /weightSum;\\n}\"},luminosityHighPass:{\"luminosityHighPass.frag\":\"precision mediump float;\\nuniform sampler2D u_texture;\\nuniform vec3 u_defaultColor;\\nuniform float u_defaultOpacity;\\nuniform float u_luminosityThreshold;\\nuniform float u_smoothWidth;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 texel = texture2D(u_texture, v_uv);\\nvec3 luma = vec3(0.299, 0.587, 0.114);\\nfloat v = dot(texel.xyz, luma);\\nvec4 outputColor = vec4(u_defaultColor.rgb, u_defaultOpacity);\\nfloat alpha = smoothstep(u_luminosityThreshold, u_luminosityThreshold + u_smoothWidth, v);\\ngl_FragColor = mix(outputColor, texel, alpha);\\n}\"}},blur:{gaussianBlur:{\"gaussianBlur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nuniform vec2 u_texSize;\\nuniform vec2 u_direction;\\nuniform float u_sigma;\\nvarying vec2 v_uv;\\n#define KERNEL_RADIUS RADIUS\\nfloat gaussianPdf(in float x, in float sigma) {\\nreturn 0.39894 * exp(-0.5 * x * x / ( sigma * sigma)) / sigma;\\n}\\nvoid main() {\\nvec2 invSize = 1.0 / u_texSize;\\nfloat fSigma = u_sigma;\\nfloat weightSum = gaussianPdf(0.0, fSigma);\\nvec4 pixelColorSum = texture2D(u_colorTexture, v_uv) * weightSum;\\nfor (int i = 1; i < KERNEL_RADIUS; i ++) {\\nfloat x = float(i);\\nfloat w = gaussianPdf(x, fSigma);\\nvec2 uvOffset = u_direction * invSize * x;\\nvec4 sample1 = texture2D(u_colorTexture, v_uv + uvOffset);\\nvec4 sample2 = texture2D(u_colorTexture, v_uv - uvOffset);\\npixelColorSum += (sample1 + sample2) * w;\\nweightSum += 2.0 * w;\\n}\\ngl_FragColor = pixelColorSum /weightSum;\\n}\"},\"radial-blur\":{\"radial-blur.frag\":\"precision mediump float;\\nuniform sampler2D u_colorTexture;\\nvarying vec2 v_uv;\\nconst float sampleDist = 1.0;\\nconst float sampleStrength = 2.2;\\nvoid main(void) {\\nfloat samples[10];\\nsamples[0] = -0.08;\\nsamples[1] = -0.05;\\nsamples[2] = -0.03;\\nsamples[3] = -0.02;\\nsamples[4] = -0.01;\\nsamples[5] = 0.01;\\nsamples[6] = 0.02;\\nsamples[7] = 0.03;\\nsamples[8] = 0.05;\\nsamples[9] = 0.08;\\nvec2 dir = 0.5 - v_uv;\\nfloat dist = sqrt(dir.x * dir.x + dir.y * dir.y);\\ndir = dir / dist;\\nvec4 color = texture2D(u_colorTexture,v_uv);\\nvec4 sum = color;\\nfor (int i = 0; i < 10; i++) {\\nsum += texture2D(u_colorTexture, v_uv + dir * samples[i] * sampleDist);\\n}\\nsum *= 1.0 / 11.0;\\nfloat t = dist * sampleStrength;\\nt = clamp(t, 0.0, 1.0);\\ngl_FragColor = mix(color, sum, t);\\n}\"}},dra:{\"dra.frag\":\"precision mediump float;\\nuniform sampler2D u_minColor;\\nuniform sampler2D u_maxColor;\\nuniform sampler2D u_texture;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec4 minColor = texture2D(u_minColor, vec2(0.5));\\nvec4 maxColor = texture2D(u_maxColor, vec2(0.5));\\nvec4 color = texture2D(u_texture, v_uv);\\nvec3 minColorUnpremultiply = minColor.rgb / minColor.a;\\nvec3 maxColorUnpremultiply = maxColor.rgb / maxColor.a;\\nvec3 colorUnpremultiply = color.rgb / color.a;\\nvec3 range = maxColorUnpremultiply - minColorUnpremultiply;\\ngl_FragColor = vec4(color.a * (colorUnpremultiply - minColorUnpremultiply) / range, color.a);\\n}\",\"min-max\":{\"min-max.frag\":\"#extension GL_EXT_draw_buffers : require\\nprecision mediump float;\\n#define CELL_SIZE 2\\nuniform sampler2D u_minTexture;\\nuniform sampler2D u_maxTexture;\\nuniform vec2 u_srcResolution;\\nuniform vec2 u_dstResolution;\\nvarying vec2 v_uv;\\nvoid main() {\\nvec2 srcPixel = floor(gl_FragCoord.xy) * float(CELL_SIZE);\\nvec2 onePixel = vec2(1.0) / u_srcResolution;\\nvec2 uv = (srcPixel + 0.5) / u_srcResolution;\\nvec4 minColor = vec4(1.0);\\nvec4 maxColor = vec4(0.0);\\nfor (int y = 0; y < CELL_SIZE; ++y) {\\nfor (int x = 0; x < CELL_SIZE; ++x) {\\nvec2 offset = uv + vec2(x, y) * onePixel;\\nminColor = min(minColor, texture2D(u_minTexture, offset));\\nmaxColor = max(maxColor, texture2D(u_maxTexture, offset));\\n}\\n}\\ngl_FragData[0] = minColor;\\ngl_FragData[1] = maxColor;\\n}\"}},\"drop-shadow\":{composite:{\"composite.frag\":\"precision mediump float;\\nuniform sampler2D u_layerFBOTexture;\\nuniform sampler2D u_blurTexture;\\nuniform vec4 u_shadowColor;\\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\\nfloat alpha = u_opacity * color.a;\\ngl_FragColor = vec4(alpha * color.rgb, alpha);\\n}\",\"bitmap.vert\":\"precision mediump float;\\nattribute vec2 a_pos;\\nuniform highp mat3 u_dvsMat3;\\nuniform highp vec2 u_coordScale;\\nvarying highp vec2 v_texcoord;\\nvoid main()\\n{\\nv_texcoord = a_pos;\\ngl_Position = vec4(u_dvsMat3 * vec3(a_pos * u_coordScale, 1.0), 1.0);\\n}\"},common:{\"common.glsl\":\"uniform sampler2D u_image;\\nuniform int u_bandCount;\\nuniform bool u_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.24/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.24/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,TargetType as u,DepthStencilTargetType as f,UniformType as m}from\"./enums.js\";import{FramebufferObject as c}from\"./FramebufferObject.js\";import{Texture as l}from\"./Texture.js\";function _(e,u,f=\"nearest\",m=!1){const c=!(m&&\"u8\"===u.pixelType),_=c?n.FLOAT:n.UNSIGNED_BYTE,p=null==u.pixels||0===u.pixels.length?null:c?u.getAsRGBAFloat():u.getAsRGBA(),E=e.capabilities.textureFloat?.textureFloatLinear,T={width:u.width,height:u.height,target:a.TEXTURE_2D,pixelFormat:r.RGBA,internalFormat:e.type===t.WEBGL2&&c?i.RGBA32F:r.RGBA,samplingMode:!E||\"bilinear\"!==f&&\"cubic\"!==f?o.NEAREST:o.LINEAR,dataType:_,wrapMode:s.CLAMP_TO_EDGE,flipped:!1};return new l(e,T,p)}function p(e,t,i,m){const _=m?n.UNSIGNED_BYTE:n.FLOAT,p={width:t,height:i,target:a.TEXTURE_2D,pixelFormat:r.RGBA,internalFormat:r.RGBA,samplingMode:o.NEAREST,dataType:_,wrapMode:s.CLAMP_TO_EDGE,flipped:!1},E=new l(e,p);return new c(e,{colorTarget:u.TEXTURE,depthStencilTarget:f.DEPTH_STENCIL_RENDER_BUFFER,width:t,height:i},E)}function E(e,u){const{spacing:f,offsets:m,coefficients:c,size:[_,p]}=u,E=f[0]>1,T={width:E?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},g=new Float32Array(E?_*p*16:2*m.length);if(E)for(let t=0,n=0;t{const r=t.get(a)||t.get(a+\"[0]\");r&&G(e,a,n[a],r)}))}function U(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 G(e,t,n,a){if(null===a||null==n)return!1;const{info:r}=a;switch(r.type){case m.FLOAT:r.size>1?e.setUniform1fv(t,n):e.setUniform1f(t,n);break;case m.FLOAT_VEC2:e.setUniform2fv(t,n);break;case m.FLOAT_VEC3:e.setUniform3fv(t,n);break;case m.FLOAT_VEC4:e.setUniform4fv(t,n);break;case m.FLOAT_MAT3:e.setUniformMatrix3fv(t,n);break;case m.FLOAT_MAT4:e.setUniformMatrix4fv(t,n);break;case m.INT:r.size>1?e.setUniform1iv(t,n):e.setUniform1i(t,n);break;case m.BOOL:e.setUniform1i(t,n?1:0);break;case m.INT_VEC2:case m.BOOL_VEC2:e.setUniform2iv(t,n);break;case m.INT_VEC3:case m.BOOL_VEC3:e.setUniform3iv(t,n);break;case m.INT_VEC4:case m.BOOL_VEC4:e.setUniform4iv(t,n);break;default:return!1}return!0}export{T as createColormapTexture,p as createFrameBuffer,_ as createRasterTexture,E as createTransformTexture,h as getBasicGridUniforms,A as getColormapUniforms,g as getCommonUniforms,O as getShadedReliefUniforms,d as getStretchUniforms,F as getUniformLocationInfos,U as setTextures,R as setUniforms};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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}=s,{displayData:i}=a;if(t(i))return;if(\"loaded\"===i.state.name&&i.attach(s),\"attached\"!==i.state.name)return;const o=i.state.resources;o.ready||!e(r)?(this._visualState.time=s.time/1e3,this._visualState.dvsMat3=a.transforms.dvs,this._visualState.displayViewMat3=s.state.displayViewMat3,i.flowStyle.render(s,this._visualState,o),i.flowStyle.animated&&e(r)&&r()):r()}}export{i as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/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.24/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=r,n=h){super(),this.triangleCountReportedInDebug=0,this.triangleCount=0,this.texture=null,this.key=new e(t),this.x=s,this.y=i,this.width=r,this.height=h,this.rangeX=o,this.rangeY=n}destroy(){this.texture&&(this.texture.dispose(),this.texture=null)}setTransform(i,e){const r=e/(i.resolution*i.pixelRatio),h=this.transforms.tileMat3,[o,n]=i.toScreenNoRotation([0,0],[this.x,this.y]),a=this.width/this.rangeX*r,l=this.height/this.rangeY*r;t(h,a,0,0,0,l,0,o,n,1),s(this.transforms.dvs,i.displayViewMat3,h)}}export{r as TiledDisplayObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{isSome as r}from\"../../../../../core/maybe.js\";import{f as t}from\"../../../../../chunks/vec4f32.js\";import{Pos2b as e}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=t(1,0,0,1),this._initialized=!1}dispose(){this._solidProgram&&(this._solidProgram.dispose(),this._solidProgram=null),this._solidVertexArrayObject&&(this._solidVertexArrayObject.dispose(),this._solidVertexArrayObject=null)}prepareState({context:r},t){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),r.setStencilFunctionSeparate(l.FRONT_AND_BACK,n.GREATER,t.stencilRef,255)}draw(t,e){const{context:i,requestRender:s}=t;this._initialized||this._initialize(i),!r(s)||this._solidProgram.isCompiled?(i.bindVAO(this._solidVertexArrayObject),i.useProgram(this._solidProgram),this._solidProgram.setUniformMatrix3fv(\"u_dvsMat3\",e.transforms.dvs),this._solidProgram.setUniform2fv(\"u_coord_range\",[e.rangeX,e.rangeY]),this._solidProgram.setUniform1f(\"u_depth\",0),this._solidProgram.setUniform4fv(\"u_color\",this._color),i.drawArrays(d.TRIANGLE_STRIP,0,4),i.bindVAO()):s()}_initialize(r){if(this._initialized)return!0;const t=_(r,s);if(!t)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,e,{geometry:a});return this._solidProgram=t,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.24/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.24/esri/copyright.txt for details.\n*/\nclass a{constructor(){this.name=this.constructor.name||\"UnnamedBrush\"}prepareState(a,r,t){}draw(a,r,t){}drawMany(a,r,t){for(const s of r)this.draw(a,s,t)}}export{a as default};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../../core/maybe.js\";import{b as e,c as r,r as s,j 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"],"sourceRoot":""}