// All material copyright Esri, All Rights Reserved, unless otherwise specified. // See https://js.arcgis.com/4.30/esri/copyright.txt for details. //>>built require({cache:{"esri/layers/support/rasterFunctions/creators/createAppearenceFunctions":function(){define(["exports","./utils"],function(a,p){function f(g,b){const {raster:e,dynamicRangeAdjustment:h,gamma:r,useGamma:z,outputMin:B=0,outputMax:k=255}=b;return{raster:e,stretchType:g,min:B,max:k,useGamma:!!z,gamma:r,dra:!!h}}const c={"user-defined":-1,"line-detection-horizontal":0,"line-detection-vertical":1,"line-detection-left-diagonal":2,"line-detection-right-diagonal":3,"gradient-north":4,"gradient-west":5, "gradient-east":6,"gradient-south":7,"gradient-north-east":8,"gradient-north-west":9,"smooth-arithmetic-mean":10,smoothing3x3:11,smoothing5x5:12,sharpening3x3:13,sharpening5x5:14,laplacian3x3:15,laplacian5x5:16,"sobel-horizontal":17,"sobel-vertical":18,sharpen:19,sharpen2:20,"point-spread":21,none:255};a.contrastBrightness=function(g){const {contrastOffset:b,brightnessOffset:e,raster:h,outputPixelType:r}=g;return p.createRasterFunction("ContrastBrightness",{contrastOffset:b,brightnessOffset:e,raster:h}, r)};a.convolution=function(g){const {raster:b,outputPixelType:e}=g;if("convolutionType"in g&&"user-defined"!==g.convolutionType)return p.createRasterFunction("Convolution",{type:c[g.convolutionType]??255,raster:b},e);const {rows:h,cols:r,kernel:z}=g;return p.createRasterFunction("Convolution",{type:-1,rows:h,cols:r,kernel:z,raster:b},e)};a.stretchHistogramEqualization=function(g){const b=f(4,g);return p.createRasterFunction("Stretch",b,g.outputPixelType)};a.stretchMinMax=function(g){const b=f(5,g); b.statistics=g.statistics?.map(e=>[e.min,e.max,e.avg??0,e.stddev??-1]);return p.createRasterFunction("Stretch",b,g.outputPixelType)};a.stretchNone=function(g){const b=f(0,g);return p.createRasterFunction("Stretch",b,g.outputPixelType)};a.stretchPercentClip=function(g){const b=f(6,g);b.minPercent=g.minPercent??.25;b.maxPercent=g.maxPercent??.25;return p.createRasterFunction("Stretch",b,g.outputPixelType)};a.stretchStandardDeviation=function(g){const b=f(3,g);b.statistics=g.statistics?.map(e=>[e.min, e.max,e.avg??0,e.stddev??-1]);b.numberOfStandardDeviations=g.numberOfStandardDeviations??2;return p.createRasterFunction("Stretch",b,g.outputPixelType)};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/rasterFunctions/creators/utils":function(){define(["exports","../../RasterFunction"],function(a,p){a.createRasterFunction=function(f,c,g){Object.keys(c).forEach(b=>{null==c[b]&&delete c[b]});g||="unknown";return new p({functionName:f,functionArguments:c,outputPixelType:g})}; Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/RasterFunction":function(){define("../../chunks/tslib.es6 ../../core/JSONSupport ../../core/lang ../../core/accessorSupport/decorators/property ../../core/has ../../core/Logger ../../core/accessorSupport/decorators/enumeration ../../core/accessorSupport/decorators/reader ../../core/accessorSupport/decorators/subclass ../../core/accessorSupport/decorators/writer ./RasterFunctionTemplate".split(" "),function(a,p,f, c,g,b,e,h,r,z,B){var k;const q=new Set(["raster","raster2","dem","fillraster"]),A=new Set(["rasters"]),x=m=>m?.rasterFunction?t.fromJSON(m):m,v=m=>m&&m instanceof t?m.toJSON():m,u=m=>m?.functionName&&!m.declaredClass?new t(m):m;g={types:{key:"type",base:null,typeMap:{RasterFunctionTemplate:B}},json:{write:!0,name:"rasterFunctionDefinition"}};let t=k=class extends p.JSONSupport{constructor(m){super(m);this.functionName=null;this.outputPixelType="unknown";this.functionDefinition=this.variableName=null}set functionArguments(m){if(m){const d= Object.keys(m);if(d.some(l=>{var n;if(n=q.has(l.toLowerCase()))l=m[l],n=l?.functionName&&!l.declaredClass;return n})||d.some(l=>A.has(l.toLowerCase())&&Array.isArray(m[l])&&m[l].some(n=>n?.functionName&&!n.declaredClass))){m=f.clone(m);for(const l of d)q.has(l.toLowerCase())?m[l]=u(m[l]):A.has(l.toLowerCase())&&Array.isArray(m[l])&&(m[l]=m[l].map(n=>u(n)))}}this._set("functionArguments",m)}readFunctionArguments(m){if(null==m)var d=null;else{m=f.clone(m);var l={};for(d of Object.keys(m))q.has(d.toLowerCase())? l[d]=x(m[d]):A.has(d.toLowerCase())&&Array.isArray(m[d])?l[d]=m[d].map(x):l[d]=m[d];d=l}return d}writeFunctionArguments(m,d,l){const n={};for(const y of Object.keys(m))q.has(y.toLowerCase())?n[y]=v(m[y]):A.has(y.toLowerCase())&&Array.isArray(m[y])?n[y]=m[y].map(v):n[y]=v(m[y]);d[l]=n}readFunctionName(m,d){m=d.rasterFunctionInfos;const l=d.name;return l?l:m?.length&&"None"!==m[0].name?m[0].name:d.rasterFunctionDefinition?d.rasterFunctionDefinition.name:d.rasterFunction}get rasterFunctionDefinition(){return this.functionDefinition?.toJSON()}set rasterFunctionDefinition(m){this.functionDefinition= m?B.fromJSON(m):null}get hasClipFunction(){return this.rasterFunctionDefinition?JSON.stringify(this.rasterFunctionDefinition).includes('"type":"ClipFunction"'):JSON.stringify(this).includes('"rasterFunction":"Clip"')}clone(){return new k({functionName:this.functionName,functionArguments:f.clone(this.functionArguments),outputPixelType:this.outputPixelType,variableName:this.variableName,rasterFunctionDefinition:f.clone(this.rasterFunctionDefinition)})}};a.__decorate([c.property({json:{type:Object,name:"rasterFunctionArguments"}})], t.prototype,"functionArguments",null);a.__decorate([h.reader("functionArguments")],t.prototype,"readFunctionArguments",null);a.__decorate([z.writer("functionArguments")],t.prototype,"writeFunctionArguments",null);a.__decorate([c.property({json:{type:String,write:{target:"rasterFunction"}}})],t.prototype,"functionName",void 0);a.__decorate([h.reader("functionName",["rasterFunction","rasterFunctionInfos","rasterFunctionDefinition"])],t.prototype,"readFunctionName",null);a.__decorate([e.enumeration({C128:"c128", C64:"c64",F32:"f32",F64:"f64",S16:"s16",S32:"s32",S8:"s8",U1:"u1",U16:"u16",U2:"u2",U32:"u32",U4:"u4",U8:"u8",UNKNOWN:"unknown"},{ignoreUnknown:!1}),c.property({json:{default:"unknown"}})],t.prototype,"outputPixelType",void 0);a.__decorate([c.property({type:String,json:{read:!0,write:!0}})],t.prototype,"variableName",void 0);a.__decorate([c.property()],t.prototype,"rasterFunctionDefinition",null);a.__decorate([c.property(g)],t.prototype,"functionDefinition",void 0);a.__decorate([c.property()],t.prototype, "hasClipFunction",null);return t=k=a.__decorate([r.subclass("esri.layers.support.RasterFunction")],t)})},"esri/layers/support/RasterFunctionTemplate":function(){define("../../chunks/tslib.es6 ../../core/jsonMap ../../core/JSONSupport ../../core/accessorSupport/decorators/property ../../core/accessorSupport/ensureType ../../core/RandomLCG ../../core/has ../../core/accessorSupport/decorators/subclass ./RasterFunctionInfo ./RasterFunctionProperties".split(" "),function(a,p,f,c,g,b,e,h,r,z){p=new p.JSONMap({0:"mosaic", 1:"item",2:"item-group"},{useNumericKeys:!0});f=class extends f.JSONSupport{constructor(){super(...arguments);this.functionType="mosaic";this.type="RasterFunctionTemplate"}};a.__decorate([c.property({type:[String],json:{write:!0}})],f.prototype,"aliases",void 0);a.__decorate([c.property({type:Object,json:{write:!0}})],f.prototype,"arguments",void 0);a.__decorate([c.property({type:String,json:{write:!0}})],f.prototype,"description",void 0);a.__decorate([c.property({type:r,json:{write:!0,name:"function"}})], f.prototype,"functionInfo",void 0);a.__decorate([c.property({type:p.apiValues,json:{type:[0,1,2],read:p.read,write:p.write}})],f.prototype,"functionType",void 0);a.__decorate([c.property({type:String,json:{write:!0}})],f.prototype,"group",void 0);a.__decorate([c.property({type:String,json:{write:!0}})],f.prototype,"help",void 0);a.__decorate([c.property({type:Number,json:{type:g.Integer,write:!0,name:"_object_id"}})],f.prototype,"id",void 0);a.__decorate([c.property({type:String,json:{write:!0}})], f.prototype,"name",void 0);a.__decorate([c.property({type:String,json:{write:!0,name:"definition"}})],f.prototype,"queryDefinition",void 0);a.__decorate([c.property({type:String,json:{write:!0}})],f.prototype,"tag",void 0);a.__decorate([c.property({type:z,json:{write:!0}})],f.prototype,"properties",void 0);a.__decorate([c.property({type:String,json:{write:!0}})],f.prototype,"thumbnail",void 0);a.__decorate([c.property({type:String,json:{write:!0}})],f.prototype,"thumbnailEx",void 0);a.__decorate([c.property({json:{type:["RasterFunctionTemplate"], write:!0}})],f.prototype,"type",void 0);return f=a.__decorate([h.subclass("esri.layers.support.RasterFunctionTemplate")],f)})},"esri/layers/support/RasterFunctionInfo":function(){define("../../chunks/tslib.es6 ../../core/JSONSupport ../../core/accessorSupport/decorators/property ../../core/accessorSupport/ensureType ../../core/RandomLCG ../../core/has ../../core/accessorSupport/decorators/subclass ./rasterEnums".split(" "),function(a,p,f,c,g,b,e,h){p=class extends p.JSONSupport{constructor(){super(...arguments); this.pixelType="unknown"}};a.__decorate([f.property({type:String,json:{write:!0}})],p.prototype,"name",void 0);a.__decorate([f.property({type:String,json:{write:!0}})],p.prototype,"description",void 0);a.__decorate([f.property({type:c.Integer,json:{type:c.Integer,write:!0,name:"_object_id"}})],p.prototype,"id",void 0);a.__decorate([f.property({type:String,json:{type:h.pixelTypeKebabDict.jsonValues,read:h.pixelTypeKebabDict.read,write:h.pixelTypeKebabDict.write}})],p.prototype,"pixelType",void 0); a.__decorate([f.property({type:String,json:{write:!0}})],p.prototype,"type",void 0);return p=a.__decorate([e.subclass("esri.layers.support.RasterFunctionInfo")],p)})},"esri/layers/support/rasterEnums":function(){define(["exports","../../core/jsonMap"],function(a,p){const f=p.strict()({RSP_NearestNeighbor:"nearest",RSP_BilinearInterpolation:"bilinear",RSP_CubicConvolution:"cubic",RSP_Majority:"majority"}),c=p.strict()({esriNoDataMatchAny:"any",esriNoDataMatchAll:"all"});p=p.strict()({U1:"u1",U2:"u2", U4:"u4",U8:"u8",S8:"s8",U16:"u16",S16:"s16",U32:"u32",S32:"s32",F32:"f32",F64:"f64",C64:"c64",C128:"c128",UNKNOWN:"unknown"});a.interpolationKebab=f;a.noDataInterpretationKebab=c;a.pixelTypeKebabDict=p;Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/RasterFunctionProperties":function(){define("../../chunks/tslib.es6 ../../core/JSONSupport ../../core/accessorSupport/decorators/property ../../core/accessorSupport/ensureType ../../core/RandomLCG ../../core/has ../../core/accessorSupport/decorators/subclass ./RasterFunctionVariable".split(" "), function(a,p,f,c,g,b,e,h){g={key:"type",base:null,typeMap:{RasterFunctionVariable:h}};p=class extends p.JSONSupport{};a.__decorate([f.property({types:g,json:{types:g,name:"MatchVariable"}})],p.prototype,"matchVariable",void 0);a.__decorate([f.property({types:g,json:{types:g,name:"UnionDimension"}})],p.prototype,"unionDimension",void 0);a.__decorate([f.property({type:Number,json:{type:c.Integer,write:!0,name:"_object_id"}})],p.prototype,"id",void 0);a.__decorate([f.property({type:String,json:{write:!0}})], p.prototype,"type",void 0);return p=a.__decorate([e.subclass("esri.layers.support.RasterFunctionProperties")],p)})},"esri/layers/support/RasterFunctionVariable":function(){define("../../chunks/tslib.es6 ../../core/JSONSupport ../../core/accessorSupport/decorators/property ../../core/accessorSupport/ensureType ../../core/RandomLCG ../../core/has ../../core/accessorSupport/decorators/subclass".split(" "),function(a,p,f,c,g,b,e){p=class extends p.JSONSupport{constructor(){super(...arguments);this.isPublic= this.isDataset=!1;this.type="RasterFunctionVariable"}};a.__decorate([f.property({type:String,json:{write:!0}})],p.prototype,"name",void 0);a.__decorate([f.property({type:Number,json:{type:c.Integer,write:!0,name:"_object_id"}})],p.prototype,"id",void 0);a.__decorate([f.property({type:Boolean,json:{write:!0}})],p.prototype,"isDataset",void 0);a.__decorate([f.property({type:Boolean,json:{write:!0}})],p.prototype,"isPublic",void 0);a.__decorate([f.property({json:{write:!0}})],p.prototype,"value",void 0); a.__decorate([f.property({type:String,json:{write:!0}})],p.prototype,"type",void 0);return p=a.__decorate([e.subclass("esri.layers.support.RasterFunctionVariable")],p)})},"esri/layers/support/rasterFunctions/creators/createBandIndexFunctions":function(){define(["exports","./utils"],function(a,p){function f(c,g,b,e=[]){const {raster:h,outputPixelType:r}=c;c={raster:h,method:g,bandIndexes:b.map(z=>z+1).concat(e).join(" ")};return p.createRasterFunction("BandArithmetic",c,r)}a.bandArithmeticBAI=function(c){const {redBandId:g, nirBandId:b}=c;return f(c,24,[g,b])};a.bandArithmeticCIg=function(c){const {nirBandId:g,greenBandId:b}=c;return f(c,17,[g,b])};a.bandArithmeticCIre=function(c){const {nirBandId:g,reBandId:b}=c;return f(c,16,[g,b])};a.bandArithmeticClayMinerals=function(c){const {swir1BandId:g,swir2BandId:b}=c;return f(c,22,[g,b])};a.bandArithmeticCustom=function(c){const {raster:g,bandIndexes:b,outputPixelType:e}=c;return p.createRasterFunction("BandArithmetic",{raster:g,method:0,bandIndexes:b},e)};a.bandArithmeticEVI= function(c){const {nirBandId:g,redBandId:b,blueBandId:e}=c;return f(c,19,[g,b,e])};a.bandArithmeticFerrousMinerals=function(c){const {swirBandId:g,nirBandId:b}=c;return f(c,21,[g,b])};a.bandArithmeticGEMI=function(c){const {nirBandId:g,redBandId:b}=c;return f(c,5,[g,b])};a.bandArithmeticGNDVI=function(c){const {nirBandId:g,greenBandId:b}=c;return f(c,10,[g,b])};a.bandArithmeticGVITM=function(c){return f(c,7,c.bandIds)};a.bandArithmeticIronOxide=function(c){const {redBandId:g,blueBandId:b}=c;return f(c, 20,[g,b])};a.bandArithmeticMNDWI=function(c){const {greenBandId:g,swirBandId:b}=c;return f(c,29,[g,b])};a.bandArithmeticMSAVI=function(c){const {nirBandId:g,redBandId:b}=c;return f(c,4,[g,b])};a.bandArithmeticMTVI2=function(c){const {nirBandId:g,redBandId:b,greenBandId:e}=c;return f(c,14,[g,b,e])};a.bandArithmeticNBR=function(c){const {nirBandId:g,swirBandId:b}=c;return f(c,25,[g,b])};a.bandArithmeticNDBI=function(c){const {swirBandId:g,nirBandId:b}=c;return f(c,26,[g,b])};a.bandArithmeticNDMI=function(c){const {nirBandId:g, swirBandId:b}=c;return f(c,27,[g,b])};a.bandArithmeticNDSI=function(c){const {greenBandId:g,swirBandId:b}=c;return f(c,28,[g,b])};a.bandArithmeticNDVI=function(c){const {nirBandId:g,redBandId:b,scientificOutput:e=!0,raster:h,outputPixelType:r}=c;return p.createRasterFunction("NDVI",{raster:h,visibleBandID:b,infraredBandID:g,scientificOutput:e},r)};a.bandArithmeticNDVIre=function(c){const {nirBandId:g,reBandId:b}=c;return f(c,12,[g,b])};a.bandArithmeticNDWI=function(c){const {nirBandId:g,greenBandId:b}= c;return f(c,18,[g,b])};a.bandArithmeticPVI=function(c){const {nirBandId:g,redBandId:b,slope:e=.3,gradient:h=.5}=c;return f(c,6,[g,b],[e,h])};a.bandArithmeticRTVICore=function(c){const {nirBandId:g,reBandId:b,greenBandId:e}=c;return f(c,15,[g,b,e])};a.bandArithmeticSAVI=function(c){const {nirBandId:g,redBandId:b,factor:e=.33}=c;return f(c,2,[g,b],[e])};a.bandArithmeticSR=function(c){const {nirBandId:g,redBandId:b}=c;return f(c,11,[g,b])};a.bandArithmeticSRre=function(c){const {nirBandId:g,reBandId:b}= c;return f(c,13,[g,b])};a.bandArithmeticSultan=function(c){return f(c,8,c.bandIds)};a.bandArithmeticTSAVI=function(c){const {nirBandId:g,redBandId:b,slope:e=.33,intercept:h=.5,factor:r=1.5}=c;return f(c,3,[g,b],[e,h,r])};a.bandArithmeticVARI=function(c){const {redBandId:g,greenBandId:b,blueBandId:e}=c;return f(c,9,[g,b,e])};a.bandArithmeticWNDWI=function(c){const {greenBandId:g,nirBandId:b,swirBandId:e,alpha:h=.5}=c;return f(c,23,[g,b,e],[h])};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})}, "esri/layers/support/rasterFunctions/creators/createDataManagementFunctions":function(){define(["exports","../../../../colorUtils","../../rasterFunctionConstants","./utils","../../../../renderers/support/colorRampUtils"],function(a,p,f,c,g){function b(h){const r=h.colormap.map(k=>{if("value"in k){const q="string"===typeof k.color?p.getNamedColor(k.color)??p.hex2rgba(k.color):k.color;k=[k.value,...q];k[4]&&1>=k[4]&&(k[4]=Math.round(255*k[4]))}return k}),{raster:z,outputPixelType:B}=h;return c.createRasterFunction("Colormap", {colormap:r,raster:z},B)}function e(h){const {colorRampName:r}=h,z=Object.values(f.colormapName).find(A=>A.toLowerCase()===r?.toLowerCase()),B=g.colorRampDict.toJSON(r),{raster:k,outputPixelType:q="unknown"}=h;return c.createRasterFunction("Colormap",z?{colormapName:z,raster:k}:{colorRampName:B,raster:k},q)}a.clip=function(h){const {geometry:r,keepOutside:z,outputPixelType:B="unknown",raster:k}=h;h="declaredClass"in r?r.toJSON():r;return c.createRasterFunction("Clip",{clippingGeometry:h,clippingType:z? 2:1,raster:k},B)};a.colormap=function(h){if("colormap"in h)h=b(h);else if("colorRamp"in h){const {raster:r,colorRamp:z,outputPixelType:B}=h;h={colorRamp:"toJSON"in z?z.toJSON():z,raster:r};h=c.createRasterFunction("Colormap",h,B)}else h=e(h);return h};a.compositeBands=function(h){const {rasters:r,outputPixelType:z}=h;return c.createRasterFunction("CompositeBand",{rasters:r},z)};a.extractBand=function(h){const {raster:r,outputPixelType:z="unknown"}=h,B={raster:r,missingBandAction:"fail"===h.missingBandAction? 1:0};"bandIds"in h?B.bandIds=h.bandIds:"bandNames"in h?B.bandNames=h.bandNames:"bandWavelengths"in h&&(B.bandWavelengths=h.bandWavelengths);return c.createRasterFunction("ExtractBand",B,z)};a.grayscale=function(h){const {weights:r,outputPixelType:z="unknown",raster:B}=h;return c.createRasterFunction("Grayscale",{conversionParameters:r,raster:B},z)};a.mask=function(h){const {raster:r,outputPixelType:z="unknown"}=h,B=h.includedRanges?.flatMap(q=>q),k=h.noDataValues?.map(q=>q.join(" "));return c.createRasterFunction("Mask", {raster:r,includedRanges:B,noDataInterpretation:"match-all"===h.noDataInterpretation?1:0,noDataValues:k},z)};a.remap=function(h){const {allowUnmatched:r,raster:z,rangeMaps:B,outputPixelType:k}=h;var q=B?.filter(({output:x})=>null!=x);h=q?.flatMap(({range:x})=>x);q=q?.map(({output:x})=>x);const A=B?.filter(x=>null==x.output)?.flatMap(({range:x})=>x);return c.createRasterFunction("Remap",{allowUnmatched:r,raster:z,inputRanges:h,outputValues:q,noDataRanges:A},k)};a.statisticsHistogram=function(h){const {raster:r, histograms:z,outputPixelType:B}=h;h=h.statistics?.map(k=>({min:k.min,max:k.max,mean:k.avg,standardDeviation:k.stddev}));return c.createRasterFunction("StatisticsHistograms",{raster:r,statistics:h,histograms:z},B)};a.table=function(h){const {raster:r,attributeTable:z,outputPixelType:B="unknown"}=h;h="toJSON"in z?z.toJSON():z;return c.createRasterFunction("Table",{raster:r,attributeTableAsRecordSet:h},B)};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/rasterFunctionConstants":function(){define(["exports"], function(a){const p={plus:1,minus:2,times:3,sqrt:4,power:5,abs:10,divide:23,exp:25,exp10:26,exp2:27,int:30,float:32,ln:35,log10:36,log2:37,mod:44,negate:45,roundDown:48,roundUp:49,square:53,floatDivide:64,floorDivide:65},f={bitwiseAnd:11,bitwiseLeftShift:12,bitwiseNot:13,bitwiseOr:14,bitwiseRightShift:15,bitwiseXOr:16,booleanAnd:17,booleanNot:18,booleanOr:19,booleanXOr:20,equalTo:24,greaterThan:28,greaterThanEqual:29,lessThan:33,lessThanEqual:34,isNull:31,notEqual:46},c={acos:6,asin:7,atan:8,atanh:9, cos:21,cosh:22,sin:51,sinh:52,tan:56,tanh:57,acosh:59,asinh:60,atan2:61},g={majority:38,max:39,mean:40,med:41,min:42,minority:43,range:47,stddev:54,sum:55,variety:58,majorityIgnoreNoData:66,maxIgnoreNoData:67,meanIgnoreNoData:68,medIgnoreNoData:69,minIgnoreNoData:70,minorityIgnoreNoData:71,rangeIgnoreNoData:72,stddevIgnoreNoData:73,sumIgnoreNoData:74,varietyIgnoreNoData:75},b={setNull:50,conditional:78},e={...p,...f,...c,...g,...b};a.arithmeticOperation={plus:1,minus:2,multiply:3,divide:4,power:5, mod:6};a.bandIndexType={userDefined:0,NDVI:1,SAVI:2,TSAVI:3,MSAVI:4,GEMI:5,PVI:6,GVITM:7,Sultan:8,VARI:9,GNDVI:10,SR:11,NDVIRe:12,SRRe:13,MTVI2:14,RTVICore:15,CIRe:16,CIG:17,NDWI:18,EVI:19,ironOxide:20,ferrousMinerals:21,clayMinerals:22,WNDWI:23,BAI:24,NBR:25,NDBI:26,NDMI:27,NDSI:28,MNDWI:29};a.cellStatisticalOperation=g;a.clippingType={outside:1,inside:2};a.colorRampName={aspect:"Aspect",blackToWhite:"Black to White",blueBright:"Blue Bright",blueLightToDark:"Blue Light to Dark",blueGreenBright:"Blue-Green Bright", blueGreenLightToDark:"Blue-Green Light to Dark",brownLightToDark:"Brown Light to Dark",brownToBlueGreenDivergingBright:"Brown to Blue Green Diverging, Bright",brownToBlueGreenDivergingDark:"Brown to Blue Green Diverging, Dark",coefficientBias:"Coefficient Bias",coldToHotDiverging:"Cold to Hot Diverging",conditionNumber:"Condition Number",cyanToPurple:"Cyan to Purple",cyanLightToBlueDark:"Cyan-Light to Blue-Dark",distance:"Distance",elevation1:"Elevation #1",elevation2:"Elevation #2",errors:"Errors", grayLightToDark:"Gray Light to Dark",greenBright:"Green Bright",greenLightToDark:"Green Light to Dark",greenToBlue:"Green to Blue",orangeBright:"Orange Bright",orangeLightToDark:"Orange Light to Dark",partialSpectrum:"Partial Spectrum",partialSpectrum1Diverging:"Partial Spectrum 1 Diverging",partialSpectrum2Diverging:"Partial Spectrum 2 Diverging",pinkToYellowGreenDivergingBright:"Pink to YellowGreen Diverging, Bright",pinkToYellowGreenDivergingDark:"Pink to YellowGreen Diverging, Dark",precipitation:"Precipitation", prediction:"Prediction",purpleBright:"Purple Bright",purpleToGreenDivergingBright:"Purple to Green Diverging, Bright",purpleToGreenDivergingDark:"Purple to Green Diverging, Dark",purpleBlueBright:"Purple-Blue Bright",purpleBlueLightToDark:"Purple-Blue Light to Dark",purpleRedBright:"Purple-Red Bright",purpleRedLightToDark:"Purple-Red Light to Dark",redBright:"Red Bright",redLightToDark:"Red Light to Dark",redToBlueDivergingBright:"Red to Blue Diverging, Bright",redToBlueDivergingDark:"Red to Blue Diverging, Dark", redToGreen:"Red to Green",redToGreenDivergingBright:"Red to Green Diverging, Bright",redToGreenDivergingDark:"Red to Green Diverging, Dark",slope:"Slope",spectrumFullBright:"Spectrum-Full Bright",spectrumFullDark:"Spectrum-Full Dark",spectrumFullLight:"Spectrum-Full Light",surface:"Surface",temperature:"Temperature",whiteToBlack:"White to Black",yellowToDarkRed:"Yellow to Dark Red",yellowToGreenToDarkBlue:"Yellow to Green to Dark Blue",yellowToRed:"Yellow to Red",yellowGreenBright:"Yellow-Green Bright", yellowGreenLightToDark:"Yellow-Green Light to Dark"};a.colormapName={random:"Random",NDVI:"NDVI",NDVI2:"NDVI2",NDVI3:"NDVI3",elevation:"Elevation",gray:"Gray",hillshade:"Hillshade"};a.computeChangeMethod={difference:0,relativeDifference:1,categorical:2,spectralEuclidianDistance:3,spectralAngleDifference:4,bandWithMostChange:5};a.convolutionKernel={userDefined:-1,lineDetectionHorizontal:0,lineDetectionVertical:1,lineDetectionLeftDiagonal:2,lineDetectionRightDiagonal:3,gradientNorth:4,gradientWest:5, gradientEast:6,gradientSouth:7,gradientNorthEast:8,gradientNorthWest:9,smoothArithmeticMean:10,smoothing3x3:11,smoothing5x5:12,sharpening3x3:13,sharpening5x5:14,laplacian3x3:15,laplacian5x5:16,sobelHorizontal:17,sobelVertical:18,sharpen:19,sharpen2:20,pointSpread:21,none:255};a.curvatureType={standard:0,platform:1,profile:2};a.localArithmeticOperation=p;a.localConditionalOperation=b;a.localLogicalOperation=f;a.localOperators=e;a.localTrigonometricOperation=c;a.missingBandAction={bestMatch:0,fail:1}; a.noDataInterpretation={matchAny:0,matchAll:1};a.slopeType={degree:1,percentRise:2,adjusted:3};a.statisticsType={min:1,max:2,mean:3,standardDeviation:4,median:5,majority:6,minority:7};a.stretchType={none:0,standardDeviation:3,histogramEqualization:4,minMax:5,percentClip:6,sigmoid:9};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/renderers/support/colorRampUtils":function(){define(["exports","../../Color","../../core/colorUtils","../../core/jsonMap","../../core/JSONSupport"], function(a,p,f,c,g){function b(d,l){if(!d||!l||d.length!==l.length)return!1;for(let n=0;nl[n]+2||d[n]e(l));return d}return e(d)}function r(d,l){if(d){l=l??t;var n=null;"algorithmic"===d.type?l.some(y=>{if(b(d.fromColor.toRgb(), y.fromColor)&&b(d.toColor.toRgb(),y.toColor))return n=y.id,!0}):"multipart"===d.type&&l.some(y=>{const w=d.colorRamps,U=y.colorRamps;if(w&&U&&w.length===U.length&&!U.some((da,ea)=>{if(!b(w[ea].fromColor.toRgb(),(new p(da.fromColor)).toRgb())||!b(w[ea].toColor.toRgb(),(new p(da.toColor)).toRgb()))return!0})){if(n)return!0;n=y.id}});return n}}function z(d,l,n=!1){if(d){var y=!1,w=r(d,l);null!=w||n||(y=!0,d=h(d),w=r(d,l));return w?{id:w,inverted:y}:void 0}}function B(d,l=!1){return(d="string"===typeof d? d:z(d,void 0,l)?.id)?m.toJSON(d):null}function k(d){d=d||{};const l=d.numColors||256;return{...d,numColors:l,distanceOffset:d.distanceOffset||0,interpolateAlpha:!!d.interpolateAlpha,distanceInterval:d.distanceInterval||1/(l-1),isCustomInterval:null!=d.isCustomInterval?d.isCustomInterval:null!==d.distanceInterval&&d.distanceInterval!==1/(l-1),weights:d.weights}}function q(d,l){let {fromColor:n,toColor:y}=d;n=[...n];y=[...y];3===n.length&&(n=n.concat([255]));3===y.length&&(y=y.concat([255]));d=d.algorithm|| "esriCIELabAlgorithm";var w=k(l);const {numColors:U,distanceOffset:da,isCustomInterval:ea,interpolateAlpha:Y}=w;if(1===U&&0===da)return[n];if(2===U&&0===da&&!ea)return[n,y];var C={r:n[0],g:n[1],b:n[2]};l={r:y[0],g:y[1],b:y[2]};if("esriCIELabAlgorithm"===d){d=f.toLAB(C);l=f.toLAB(l);const {numColors:fa,distanceOffset:V,distanceInterval:I,isCustomInterval:N}=w;let {l:E,a:J,b:F}=d;d=(l.l-E)*I;C=(l.a-J)*I;w=(l.b-F)*I;var D=[];if(V){var K=V/I;E+=K*d;J+=K*C;F+=K*w}for(K=0;KD?w=(w-C)*I:(D=360-D,w=C>w?D*I:-D*I);D=(l.s-d.s)*I;K=(l.v-d.v)*I;let {s:E,v:J}=d;d=C;V&&(C=V/I,d=(d+C*w+360)%360,E+=C*D,J+=C*K);C=[];for(var aa=0;aaK+aa);l=l.map(K=>K/D)}else{l=[];for(var w=0;w{y.unshift(w);n||y.pop()});return d};a.convertColorRampToColors=x;a.convertRGBATo32Bit= function(d){d=d.reverse().map(l=>{l=l.toString(16);return 2>l.length?"0"+l:l});return 4294967295&Number.parseInt(d.join(""),16)};a.getColorRampId=z;a.getColorRampJSON=function(d,l="esriCIELabAlgorithm"){const n=t.find(({id:y})=>y===d);return n?n.colorRamps?{type:"multipart",colorRamps:n.colorRamps.map(y=>({type:"algorithmic",algorithm:l,fromColor:[...y.fromColor],toColor:[...y.toColor]}))}:{type:"algorithmic",algorithm:l,fromColor:[...n.fromColor],toColor:[...n.toColor]}:null};a.getColorRampName= B;a.getRFxArgColorRampValue=function(d){const l=B(d);return l?"algorithmic"===d.type?{...u(d),Name:l}:d.colorRamps?(d=d.colorRamps.map(u),{type:"MultiPartColorRamp",NumColorRamps:d.length,ArrayOfColorRamp:d,Name:l}):null:null};a.predefinedJsonColorRamps=t;a.rasterColormapNames="random ndvi ndvi2 ndvi3 elevation gray hillshade".split(" ");Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/rasterFunctions/creators/createLocalFunctions":function(){define(["exports", "./utils"],function(a,p){function f(b,e,h="unknown"){let r;"object"==typeof e&&("raster"in e||!("rasterFunction"in e||"functionName"in e))?(r=[e.raster??"$$"],h=e.outputPixelType??"unknown"):r=[e];return p.createRasterFunction("Local",{operation:b,rasters:r},h)}function c(b,e,h,r="unknown"){"object"==typeof e&&"raster"in e?(h=[e.raster,e.raster2],r=e.outputPixelType??"unknown"):h=[e,h];return p.createRasterFunction("Local",{operation:b,rasters:h},r)}const g={majority:38,max:39,mean:40,median:41,min:42, minority:43,range:47,stddev:54,sum:55,variety:58};a.abs=function(b,e="unknown"){return f(10,b,e)};a.acos=function(b,e="unknown"){return f(6,b,e)};a.acosh=function(b,e="unknown"){return f(59,b,e)};a.asin=function(b,e="unknown"){return f(7,b,e)};a.asinh=function(b,e="unknown"){return f(60,b,e)};a.atan=function(b,e="unknown"){return f(8,b,e)};a.atan2=function(b,e,h="unknown"){return c(61,b,e,h)};a.atanh=function(b,e="unknown"){return f(9,b,e)};a.bitwiseAnd=function(b,e,h="unknown"){return c(11,b,e,h)}; a.bitwiseLeftShift=function(b,e,h="unknown"){return c(12,b,e,h)};a.bitwiseNot=function(b,e="unknown"){return f(13,b,e)};a.bitwiseOr=function(b,e,h="unknown"){return c(14,b,e,h)};a.bitwiseRightShift=function(b,e,h="unknown"){return c(15,b,e,h)};a.bitwiseXor=function(b,e,h="unknown"){return c(16,b,e,h)};a.booleanAnd=function(b,e,h="unknown"){return c(17,b,e,h)};a.booleanNot=function(b,e="unknown"){return f(18,b,e)};a.booleanOr=function(b,e,h="unknown"){return c(19,b,e,h)};a.booleanXor=function(b,e, h="unknown"){return c(20,b,e,h)};a.cellStatistics=function(b){const {rasters:e,statType:h,processAsMultiband:r=!0,outputPixelType:z}=b;return p.createRasterFunction("Local",{operation:g[h],processAsMultiband:r,rasters:e},z)};a.conditional=function(b,e,h,r){"object"==typeof b&&"raster"in b&&"trueRaster"in b?(e=[b.raster,b.trueRaster,b.falseRaster],r=b.outputPixelType??"unknown"):e=[b,e,h];return p.createRasterFunction("Local",{operation:78,rasters:e},r)};a.cos=function(b,e="unknown"){return f(21,b, e)};a.cosh=function(b,e="unknown"){return f(22,b,e)};a.divide=function(b,e,h="unknown"){return c(23,b,e,h)};a.equalTo=function(b,e,h="unknown"){return c(24,b,e,h)};a.exp=function(b,e="unknown"){return f(25,b,e)};a.exp10=function(b,e="unknown"){return f(26,b,e)};a.exp2=function(b,e="unknown"){return f(27,b,e)};a.float=function(b,e="unknown"){return f(32,b,e)};a.greaterThan=function(b,e,h="unknown"){return c(28,b,e,h)};a.greaterThanEqual=function(b,e,h="unknown"){return c(29,b,e,h)};a.int=function(b, e="unknown"){return f(30,b,e)};a.isNull=function(b,e="unknown"){return f(31,b,e)};a.lessThan=function(b,e,h="unknown"){return c(33,b,e,h)};a.lessThanEqual=function(b,e,h="unknown"){return c(34,b,e,h)};a.log=function(b,e="unknown"){return f(35,b,e)};a.log10=function(b,e="unknown"){return f(36,b,e)};a.log2=function(b,e="unknown"){return f(37,b,e)};a.minus=function(b,e,h="unknown"){return c(2,b,e,h)};a.mod=function(b,e,h="unknown"){return c(44,b,e,h)};a.negate=function(b,e="unknown"){return f(45,b,e)}; a.notEqual=function(b,e,h="unknown"){return c(46,b,e,h)};a.plus=function(b,e,h="unknown"){return c(1,b,e,h)};a.power=function(b,e,h="unknown"){return c(5,b,e,h)};a.roundDown=function(b,e="unknown"){return f(48,b,e)};a.roundUp=function(b,e="unknown"){return f(49,b,e)};a.setNull=function(b,e,h="unknown"){"object"==typeof b&&"raster"in b?(e=[b.raster,b.falseRaster],h=b.outputPixelType??"unknown"):e=[b,e];return p.createRasterFunction("Local",{operation:50,rasters:e},h)};a.sin=function(b,e="unknown"){return f(51, b,e)};a.sinh=function(b,e="unknown"){return f(52,b,e)};a.sqrt=function(b,e="unknown"){return f(4,b,e)};a.square=function(b,e="unknown"){return f(53,b,e)};a.tan=function(b,e="unknown"){return f(56,b,e)};a.tanh=function(b,e="unknown"){return f(57,b,e)};a.times=function(b,e,h="unknown"){return c(3,b,e,h)};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/rasterFunctions/creators/createSurfaceFunctions":function(){define(["exports","./utils"],function(a,p){a.aspect= function(f){const {raster:c,outputPixelType:g}=f;return p.createRasterFunction("Aspect",{raster:c},g)};a.curvature=function(f){const {raster:c,zFactor:g,outputPixelType:b="unknown"}=f;return p.createRasterFunction("Curvature",{raster:c,curvatureType:"standard"===f.curvatureType?0:"platform"===f.curvatureType?1:2,zFactor:g},b)};a.slope=function(f){const {raster:c,zFactor:g,removeEdgeEffect:b,outputPixelType:e="unknown"}=f,h="degree"===f.slopeType?1:"percent-rise"===f.slopeType?2:3,r={raster:c,slopeType:h, zFactor:g,removeEdgeEffect:b};3===h&&(r.psPower=f.pixelSizePower,r.psZFactor=f.pixelSizeZFactor);return p.createRasterFunction("Slope",r,e)};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/rasterFunctions/creators/createStatisticsFunctions":function(){define(["exports","../focalStatUtils","./utils"],function(a,p,f){a.statistics=function(c){const {rows:g,cols:b,fillNoDataOnly:e=!1,raster:h,outputPixelType:r}=c;c=p.statisticsTypeMap.toJSON(c.statisticsType);return f.createRasterFunction("Statistics", {rows:g,cols:b,fillNoDataOnly:e,statisticsType:c,raster:h},r)};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/rasterFunctions/focalStatUtils":function(){define(["exports","../../../core/has","../../../core/jsonMap","../PixelBlock","./mirror"],function(a,p,f,c,g){function b(e,h){const {fillNoDataOnly:r}=h,{band:z,width:B,height:k,mask:q,outBand:A}=e;if(r&&!q)A.set(z);else{var {kernelRows:x,kernelCols:v}=h;e=Math.floor(x/2);h=Math.floor(v/2);var u=A.slice(),t=new Uint32Array(B* k);for(var m=e;my-w),q?(u[d+l]=n[Math.floor((n.length-1)/2)],t[d+l]=n.length):A[d+l]=n[Math.floor((n.length-1)/2)])}}if(q)for(m=e;mM&&(M=ka,ca=H);F?(ia[L+G]=ca,ja[L+G]=X.size):ba[L+G]=ca}}if(F)for(let T=Z;T k.length)return k[0];const q=k[0].length,A=(new Uint8Array(q)).fill(255);for(let x=0;x{var x=this.mask;let v=Infinity,u=-Infinity;const t=A.length;let m,d=0;if(null!=x)for(m=0;mu?d:u);else for(m=0;mu?d:u;return new r.SimpleBandStatistics(v,u)});var k=this.mask,q=0;if(null!=k)for(let A=0;AA?A:ln>=q.length),u=x===k.length&&!k.some((n,y)=>n!==y);if(v||u)return this;x=this.bandMasks?.length=== x?k.map(n=>this.bandMasks[n]):void 0;let {mask:t,validPixelCount:m}=this;const {width:d,height:l}=this;x?.length&&(t=B.combineBandMasks(x),m=t.filter(n=>!!n).length);return new B({pixelType:this.pixelType,width:d,height:l,mask:t,bandMasks:x,validPixelCount:m,maskIsAlpha:this.maskIsAlpha,pixels:k.map(n=>q[n]),statistics:A&&k.map(n=>A[n])})}clone(){const k=new B({width:this.width,height:this.height,pixelType:this.pixelType,maskIsAlpha:this.maskIsAlpha,validPixelCount:this.validPixelCount});null!=this.mask&& (k.mask=new Uint8Array(this.mask));this.bandMasks&&(k.bandMasks=this.bandMasks.map(x=>new Uint8Array(x)));let q;const A=B.getPixelArrayConstructor(this.pixelType);if(this.pixels&&0t+Number.EPSILON|| xc?-128<=c&&128>g?"s8":-32768<=c&&32768>g?"s16":"s32":256>g?"u8":65536>g?"u16":"u32"};a.getPixelValueRange=p;a.isIntegerPixelType=function(c){return(c?.startsWith("s")||c?.startsWith("u"))??!1};Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/rasterFunctions/mirror":function(){define(["exports"],function(a){a.mirror=function(p,f,c,g,b){g=Math.floor(g/2);for(var e=0;e