// All material copyright ESRI, All Rights Reserved, unless otherwise specified. // See https://js.arcgis.com/4.7/esri/copyright.txt for details. //>>built define("require exports ./Dictionary ./Feature ./ImmutablePathArray ./ImmutablePointArray ./languageUtils ./treeAnalysis ./functions/date ./functions/geometry ./functions/geomsync ./functions/maths ./functions/stats ./functions/string ../geometry/Extent ../geometry/Geometry ../geometry/Multipoint ../geometry/Point ../geometry/Polygon ../geometry/Polyline ../geometry/SpatialReference".split(" "),function(la,n,u,y,E,Q,d,h,R,S,T,U,V,W,X,Y,Z,aa,ba,ca,da){function m(b,a,c){try{return c(b,null,a)}catch(e){throw e; }}function g(b,a){try{switch(a.type){case "EmptyStatement":return"lc.voidOperation";case "VariableDeclarator":return ea(b,a);case "VariableDeclaration":for(var c=[],e=0;e=e?(c.push(d[0]),d=d.slice(1)):(c.push(b[0]),b=b.slice(1))):0f.length)throw Error("Missing Parameters");if(2===f.length)return f[1];if(0===(f.length-1)%2)throw Error("Must have a default value result.");return I(b,f,1,f[0])})}catch(c){throw c;}};l.when=function(b,a){try{return m(b,a,function(a,e,f){if(3>f.length)throw Error("Missing Parameters"); if(0===f.length%2)throw Error("Must have a default value result.");a=f[0];if(!1===d.isBoolean(a))throw Error("WHEN needs boolean test conditions");return J(b,f,0,a)})}catch(c){throw c;}};l.top=function(b,a){return m(b,a,function(b,a,f){d.pcCheck(f,2,2);if(d.isArray(f[0]))return d.toNumber(f[1])>=f[0].length?f[0].slice(0):f[0].slice(0,d.toNumber(f[1]));if(d.isImmutableArray(f[0]))return d.toNumber(f[1])>=f[0].length()?f[0].slice(0):f[0].slice(0,d.toNumber(f[1]));throw Error("Top cannot accept this parameter type"); })};l.first=function(b,a){return m(b,a,function(b,a,f){d.pcCheck(f,1,1);return d.isArray(f[0])?0===f[0].length?null:f[0][0]:d.isImmutableArray(f[0])?0===f[0].length()?null:f[0].get(0):null})};l.sort=function(b,a){return m(b,a,function(b,a,f){d.pcCheck(f,1,2);a=f[0];d.isImmutableArray(a)&&(a=a.toArray());if(!1===d.isArray(a))throw Error("Illegal Argument");if(1a&&(a=b.length+a);if(0>a||a>=b.length)throw Error("Assignment outside of array bounds");f=d.toNumber(b[a]);b[a]="++"===c?f+1:f-1}else throw Error("Invalid Parameter");else if(b instanceof u){if(!1===d.isString(a))throw Error("Dictionary accessor must be a string");if(!0===b.hasField(a))f=d.toNumber(b.field(a)),b.setField(a,"++"===c?f+1:f-1);else throw Error("Invalid Parameter");}else if(b instanceof y){if(!1===d.isString(a))throw Error("Feature accessor must be a string"); if(!0===b.hasField(a))f=d.toNumber(b.field(a)),b.setField(a,"++"===c?f+1:f-1);else throw Error("Invalid Parameter");}else{if(d.isImmutableArray(b))throw Error("Array is Immutable");throw Error("Invalid Parameter");}return!1===e?f:"++"===c?f+1:f-1},assignmember:function(b,a,c,e){if(d.isArray(b))if(d.isNumber(a)){0>a&&(a=b.length+a);if(0>a||a>b.length)throw Error("Assignment outside of array bounds");if(a===b.length&&"\x3d"!==c)throw Error("Invalid Parameter");b[a]=this.assign(e,c,b[a])}else throw Error("Invalid Parameter"); else if(b instanceof u){if(!1===d.isString(a))throw Error("Dictionary accessor must be a string");if(!0===b.hasField(a))b.setField(a,this.assign(e,c,b.field(a)));else{if("\x3d"!==c)throw Error("Invalid Parameter");b.setField(a,this.assign(e,c,null))}}else if(b instanceof y){if(!1===d.isString(a))throw Error("Feature accessor must be a string");if(!0===b.hasField(a))b.setField(a,this.assign(e,c,b.field(a)));else{if("\x3d"!==c)throw Error("Invalid Parameter");b.setField(a,this.assign(e,c,null))}}else{if(d.isImmutableArray(b))throw Error("Array is Immutable"); throw Error("Invalid Parameter");}},member:function(b,a){if(null===b)throw Error(h.nodeErrorMessage("MemberExpression","RUNTIME","NOTFOUND"));if(b instanceof u||b instanceof y){if(d.isString(a))return b.field(a)}else if(b instanceof Y){if(d.isString(a))return ja(b,a,"MemberExpression")}else if(d.isArray(b)){if(d.isNumber(a)&&isFinite(a)&&Math.floor(a)===a){0>a&&(a=b.length+a);if(a>=b.length||0>a)throw Error(h.nodeErrorMessage("MemberExpression","RUNTIME","OUTOFBOUNDS"));return b[a]}}else if(d.isString(b)){if(d.isNumber(a)&& isFinite(a)&&Math.floor(a)===a){0>a&&(a=b.length+a);if(a>=b.length||0>a)throw Error(h.nodeErrorMessage("MemberExpression","RUNTIME","OUTOFBOUNDS"));return b[a]}}else if(d.isImmutableArray(b)&&d.isNumber(a)&&isFinite(a)&&Math.floor(a)===a){0>a&&(a=b.length()+a);if(a>=b.length()||0>a)throw Error(h.nodeErrorMessage("MemberExpression","RUNTIME","OUTOFBOUNDS"));return b.get(a)}throw Error(h.nodeErrorMessage("MemberExpression","RUNTIME","INVALIDTYPE"));},callfunc:function(b,a,c){return b instanceof d.NativeFunction? b.fn(c,a):b instanceof d.SizzleFunction?b.fn.apply(this,a):b.apply(this,a)}};n.compileScript=function(b,a){void 0===a&&(a=null);null===a&&(a={vars:{},customfunctions:{}});a={globalScope:ka(a.vars,l,a.customfunctions),localScope:null,console:N,symbols:{symbolCounter:0}};b=g(a,b.body[0].body);""===b&&(b="lc.voidOperation;");a={lc:d,lang:O,postProcess:function(a){a instanceof d.ReturnResult&&(a=a.value);a instanceof d.ImplicitResult&&(a=a.value);a===d.voidOperation&&(a=null);if(a===d.breakResult)throw Error("Cannot return BREAK"); if(a===d.continueResult)throw Error("Cannot return CONTINUE");if(d.isFunctionParameter(a))throw Error("Cannot return FUNCTION");return a},prepare:function(a,b){b||(b=new da({wkid:102100}));var c=a.vars,d=a.customfunctions,e=new D;c||(c={});d||(d={});var g=new u({newline:"\n",tab:"\t",singlequote:"'",doublequote:'"',forwardslash:"/",backwardslash:"\\"});g.immutable=!1;e._SymbolsMap={textformatting:1,infinity:1,pi:1};e.textformatting=g;e.infinity=Number.POSITIVE_INFINITY;e.pi=Math.PI;for(var h in d)e[h]= d[h],e._SymbolsMap[h]=1;for(h in c)e._SymbolsMap[h]=1,e[h]=c[h]&&"esri.Graphic"===c[h].declaredClass?y.createFromGraphic(c[h]):c[h];return{spatialReference:b,globalScope:e,localScope:null,console:a.console?a.console:N,symbols:{symbolCounter:0},depthCounter:1,applicationCache:void 0===a.applicationCache?null:a.applicationCache}}};return(new Function("context","spatialReference","var runtimeCtx\x3dthis.prepare(context, spatialReference);\n var lc \x3d this.lc; var lang \x3d this.lang; var gscope\x3druntimeCtx.globalScope; \n function mainBody() {\n var lastStatement\x3dlc.voidOperation;\n "+ b+"\n return lastStatement; } \n return this.postProcess(mainBody());")).bind(a)}});