diff --git a/CONTRIBUTING b/CONTRIBUTING index e4b541261..17d504f30 100644 --- a/CONTRIBUTING +++ b/CONTRIBUTING @@ -1,26 +1 @@ -All contributors to the Earth Engine API libraries must sign a CLA. - -What is a CLA? ----------------------------------------- - -A CLA (Contributor License Agreement) basically says that you own the -rights to any code you contribute, and that you give us permission to -use that code in the Earth Engine API libraries. You maintain the -copyright on that code. - -Where do I sign up? ----------------------------------------- - -If you own all the rights to your code, you can fill out an individual CLA. -http://code.google.com/legal/individual-cla-v1.0.html - -If your employer has any rights to your code, then they also need to fill -out a corporate CLA. If you don't know if your employer has any rights -to your code, you should ask before signing anything. -http://code.google.com/legal/corporate-cla-v1.0.html - -CLA Signers ----------------------------------------- - -By default, anyone with an @google.com email address already has a CLA -signed for them. Congratulations! +The Earth Engine API clients are not currently accepting pull requests. diff --git a/README.md b/README.md index 5dca45979..922489d19 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,4 @@ -Google Earth Engine API -======================= +# Google Earth Engine API Python and JavaScript client libraries for calling the Google Earth Engine API. @@ -39,3 +38,11 @@ Map.addLayer( {min: 0, max: [0.18, 20, -0.18], bands: ['scale', 'offset', 'scale']}, 'stable lights trend'); ``` + +## NOTICE + +In order to be more responsive to bug reports and feature requests, we are +currently using the Google Issue Tracker rather than the GitHub Issue tracker. +Please see the [Get Help](https://developers.google.com/earth-engine/help) page +of the Earth Engine documentation for details on how to browse and submit issues +to Issue Tracker. diff --git a/javascript/build/ee_api_js.js b/javascript/build/ee_api_js.js index 767e2d8b9..d35e75707 100644 --- a/javascript/build/ee_api_js.js +++ b/javascript/build/ee_api_js.js @@ -1,477 +1,478 @@ -(function(){/* - - Copyright The Closure Library Authors. - SPDX-License-Identifier: Apache-2.0 -*/ -var h,aa=function(a){var b=0;return function(){return b>>0)+"_",d=0,e=function(g){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(g||"")+"_"+d++,g)};return e}); +da("Symbol",function(a){if(a)return a;var b=function(g,f){this.Xi=g;ba(this,"description",{configurable:!0,writable:!0,value:f})};b.prototype.toString=function(){return this.Xi};var c="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",d=0,e=function(g){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(g||"")+"_"+d++,g)};return e}); da("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;cb||1342177279>>=1)c+=c;return d}}); -var ra=function(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c=e}});da("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=qa(this,b,"startsWith");b+="";var e=d.length,g=b.length;c=Math.max(0,Math.min(c|0,d.length));for(var f=0;f=g}}); +da("Map",function(a){if(function(){if(!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var l=Object.seal({x:4}),m=new a(n([[l,"s"]]));if("s"!=m.get(l)||1!=m.size||m.get({x:4})||m.set({x:4},"t")!=m||2!=m.size)return!1;var p=m.entries(),v=p.next();if(v.done||v.value[0]!=l||"s"!=v.value[1])return!1;v=p.next();return v.done||4!=v.value[0].x||"t"!=v.value[1]||!p.next().done?!1:!0}catch(y){return!1}}())return a;var b=new WeakMap,c=function(l){this[0]={};this[1]= +g();this.size=0;if(l){l=n(l);for(var m;!(m=l.next()).done;)m=m.value,this.set(m[0],m[1])}};c.prototype.set=function(l,m){l=0===l?0:l;var p=d(this,l);p.list||(p.list=this[0][p.id]=[]);p.da?p.da.value=m:(p.da={next:this[1],kb:this[1].kb,head:this[1],key:l,value:m},p.list.push(p.da),this[1].kb.next=p.da,this[1].kb=p.da,this.size++);return this};c.prototype.delete=function(l){l=d(this,l);return l.da&&l.list?(l.list.splice(l.index,1),l.list.length||delete this[0][l.id],l.da.kb.next=l.da.next,l.da.next.kb= +l.da.kb,l.da.head=null,this.size--,!0):!1};c.prototype.clear=function(){this[0]={};this[1]=this[1].kb=g();this.size=0};c.prototype.has=function(l){return!!d(this,l).da};c.prototype.get=function(l){return(l=d(this,l).da)&&l.value};c.prototype.entries=function(){return e(this,function(l){return[l.key,l.value]})};c.prototype.keys=function(){return e(this,function(l){return l.key})};c.prototype.values=function(){return e(this,function(l){return l.value})};c.prototype.forEach=function(l,m){for(var p=this.entries(), +v;!(v=p.next()).done;)v=v.value,l.call(m,v[1],v[0],this)};c.prototype[Symbol.iterator]=c.prototype.entries;var d=function(l,m){var p=m&&typeof m;"object"==p||"function"==p?b.has(m)?p=b.get(m):(p=""+ ++f,b.set(m,p)):p="p_"+m;var v=l[0][p];if(v&&ha(l[0],p))for(l=0;lb||1342177279>>=1)c+=c;return d}}); +var sa=function(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c=e}});da("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=ra(this,b,"startsWith");b+="";var e=d.length,g=b.length;c=Math.max(0,Math.min(c|0,d.length));for(var f=0;f=g}}); da("Object.entries",function(a){return a?a:function(b){var c=[],d;for(d in b)ha(b,d)&&c.push([d,b[d]]);return c}});da("Object.is",function(a){return a?a:function(b,c){return b===c?0!==b||1/b===1/c:b!==b&&c!==c}});da("Array.prototype.includes",function(a){return a?a:function(b,c){var d=this;d instanceof String&&(d=String(d));var e=d.length;c=c||0;for(0>c&&(c=Math.max(c+e,0));c>>0),xa=0,za=function(a,b,c){return a.call.apply(a.bind, -arguments)},Aa=function(a,b,c){if(!a)throw Error();if(2c&&(c=Math.max(0,a.length+c));if("string"===typeof a)return"string"!==typeof b|| -1!=b.length?-1:a.lastIndexOf(b,c);for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1},Ra=Array.prototype.forEach?function(a,b){z(null!=a.length);Array.prototype.forEach.call(a,b,void 0)}:function(a,b){for(var c=a.length,d="string"===typeof a?a.split(""):a,e=0;e=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)} -function cb(a){var b=[];if(0>a-0)return[];for(var c=0;c>>0),$b=function(a){z(a,"Listener can not be null.");if("function"===typeof a)return a;z(a.handleEvent,"An object listener must have handleEvent method.");a[hc]||(a[hc]=function(b){return a.handleEvent(b)}); -return a[hc]};var A=function(){y.call(this);this.Ha=new Sb(this);this.Ik=this;this.Nf=null};x(A,y);A.prototype[xb]=!0;h=A.prototype;h.addEventListener=function(a,b,c,d){Zb(this,a,b,c,d)};h.removeEventListener=function(a,b,c,d){fc(this,a,b,c,d)}; -h.dispatchEvent=function(a){ic(this);var b=this.Nf;if(b){var c=[];for(var d=1;b;b=b.Nf)c.push(b),z(1E3>++d,"infinite loop")}b=this.Ik;d=a.type||a;if("string"===typeof a)a=new Ea(a,b);else if(a instanceof Ea)a.target=a.target||b;else{var e=a;a=new Ea(d,b);Rb(a,e)}e=!0;if(c)for(var g=c.length-1;!a.Zc&&0<=g;g--){var f=a.currentTarget=c[g];e=jc(f,d,!0,a)&&e}a.Zc||(f=a.currentTarget=b,e=jc(f,d,!0,a)&&e,a.Zc||(e=jc(f,d,!1,a)&&e));if(c)for(g=0;!a.Zc&&g=a.length)return pc;if(b in a)return{value:a[b++],done:!1};b++}};return c}throw Error("Not implemented");},rc=function(a,b){if(ua(a))Ra(a,b);else for(a=qc(a);;){var c=a.next();if(c.done)break;b.call(void 0,c.value,void 0,a)}};var vc=function(a){if(a instanceof sc||a instanceof tc||a instanceof uc)return a;if("function"==typeof a.next)return new sc(function(){return a});if("function"==typeof a[Symbol.iterator])return new sc(function(){return a[Symbol.iterator]()});if("function"==typeof a.Ca)return new sc(function(){return a.Ca()});throw Error("Not an iterator or iterable.");},sc=function(a){this.nf=a};sc.prototype.Ca=function(){return new tc(this.nf())};sc.prototype[Symbol.iterator]=function(){return new uc(this.nf())}; -sc.prototype.sg=function(){return new uc(this.nf())};var tc=function(a){this.Pc=a};p(tc,oc);tc.prototype.next=function(){return this.Pc.next()};tc.prototype[Symbol.iterator]=function(){return new uc(this.Pc)};tc.prototype.sg=function(){return new uc(this.Pc)};var uc=function(a){sc.call(this,function(){return a});this.Pc=a};p(uc,sc);uc.prototype.next=function(){return this.Pc.next()};var wc=function(a,b){this.A={};this.K=[];this.jd=this.size=0;var c=arguments.length;if(12*this.size&&xc(this),!0):!1};var xc=function(a){if(a.size!=a.K.length){for(var b=0,c=0;b=d.K.length)return pc;var g=d.K[b++];return{value:a?g:d.A[g],done:!1}};return e};h.lb=function(a){this.size=a};var yc=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};var Ac=function(a){if(a.R&&"function"==typeof a.R)a=a.R();else if(ua(a)||"string"===typeof a)a=a.length;else{var b=0,c;for(c in a)b++;a=b}return a},Bc=function(a){if(a.Z&&"function"==typeof a.Z)return a.Z();if("undefined"!==typeof Map&&a instanceof Map||"undefined"!==typeof Set&&a instanceof Set)return Array.from(a.values());if("string"===typeof a)return a.split("");if(ua(a)){for(var b=[],c=a.length,d=0;dc)return!1;!(b instanceof Fc)&&5e&&(e+=d);return[a.fl,c,e,b.y].join("/")};Kc.prototype.Kc=function(){return this.yb.length};var Mc=function(a){Ea.call(this,"tileevent");this.count=a};x(Mc,Ea);var Nc=function(){},Oc=new Nc;function Pc(a){return Object.assign({},{P:{},Gl:{},keys:[],La:{},s:{},J:{},nh:!1},a)}var C=function(){this.h={}},E=function(a,b){return a.h.hasOwnProperty(b)?a.h[b]:null},F=function(a,b){return null!=a.h[b]};function Qc(a,b){return E(b,a)}function Rc(a,b,c){b[a]=c}function Sc(){return{}}function Tc(a,b){var c=new a;return null==b?c:Uc(b,Vc,Wc,Xc,a)}function Vc(a,b){return b[a]}function Wc(a,b,c){b.h[a]=c} -function Xc(a){if(null==a)throw Error("Cannot deserialize, target constructor was null.");return new a} -function Uc(a,b,c,d,e){e=d(e);for(var g=Yc(a,e),f=g.P||{},l=g.s||{},m=g.La||{},q=n(g.keys||[]),v=q.next(),B={};!v.done;B={Tc:B.Tc},v=q.next()){v=v.value;var D=b(v,a);if(null!=D){var Q=void 0;if(f.hasOwnProperty(v)){if(g.nh&&0===D.length)continue;Q=Zc(D,b,c,d,!0,!0,f[v])}else if(l.hasOwnProperty(v))Q=Zc(D,b,c,d,!1,!0,l[v]);else if(m.hasOwnProperty(v))B.Tc=m[v],Q=B.Tc.oa?D.map(function(Y){return function(T){return $c(T,Y.Tc,b,c,d)}}(B)):$c(D,B.Tc,b,c,d);else if(Array.isArray(D)){if(g.nh&&0===D.length)continue; -Q=Zc(D,b,c,d,!0,!1)}else Q=D instanceof Nc?null:D;c(v,e,Q)}}return e}function $c(a,b,c,d,e){for(var g={},f=n(Object.keys(a)),l=f.next();!l.done;l=f.next()){l=l.value;var m=a[l];null!=m&&(g[l]=Zc(m,c,d,e,b.qa,b.pa,b.ja))}return g} -function Zc(a,b,c,d,e,g,f){if(g&&null==f)throw Error("Cannot deserialize a reference object without a constructor.");return null==a?a:e&&g?a.map(function(l){return Uc(l,b,c,d,f)}):e&&!g?a.map(function(l){return l}):!e&&g?Uc(a,b,c,d,f):a instanceof Nc?null:"object"===typeof a?JSON.parse(JSON.stringify(a)):a}function Yc(a,b){if(b instanceof C)a=Pc(b.i());else if(a instanceof C)a=Pc(a.i());else throw Error("Cannot find ClassMetadata.");return a};var ad;var dd=function(a,b){this.jg=a===bd&&b||"";this.uk=cd};dd.prototype.pc=!0;dd.prototype.oc=function(){return this.jg};dd.prototype.toString=function(){return"Const{"+this.jg+"}"};var ed=function(a){if(a instanceof dd&&a.constructor===dd&&a.uk===cd)return a.jg;Ka("expected object of type Const, got '"+a+"'");return"type_error:Const"},cd={},bd={};var gd=function(a,b){if(b!==fd)throw Error("TrustedResourceUrl is not meant to be built directly");this.Pf=a};gd.prototype.toString=function(){return this.Pf+""};gd.prototype.pc=!0;gd.prototype.oc=function(){return this.Pf.toString()}; -var hd=function(a){if(a instanceof gd&&a.constructor===gd)return a.Pf;Ka("expected object of type TrustedResourceUrl, got '%s' of type %s",a,ta(a));return"type_error:TrustedResourceUrl"},md=function(a){var b=ed(id);if(!jd.test(b))throw Error("Invalid TrustedResourceUrl format: "+b);var c=b.replace(kd,function(d,e){if(!Object.prototype.hasOwnProperty.call(a,e))throw Error('Found marker, "'+e+'", in format string, "'+b+'", but no valid label mapping found in args: '+JSON.stringify(a));d=a[e];return d instanceof -dd?ed(d):encodeURIComponent(String(d))});return ld(c)},kd=/%{(\w+)}/g,jd=RegExp("^((https:)?//[0-9a-z.:[\\]-]+/|/[^/\\\\]|[^:/\\\\%]+/|[^:/\\\\%]*[?#]|about:blank#)","i"),fd={},ld=function(a){if(void 0===ad){var b=null;var c=r.trustedTypes;if(c&&c.createPolicy)try{b=c.createPolicy("goog#html",{createHTML:Ca,createScript:Ca,createScriptURL:Ca})}catch(d){r.console&&r.console.error(d.message)}ad=b}a=(b=ad)?b.createScriptURL(a):a;return new gd(a,fd)};var od=function(a,b){if(b!==nd)throw Error("SafeUrl is not meant to be built directly");this.Of=a};od.prototype.toString=function(){return this.Of.toString()};od.prototype.pc=!0;od.prototype.oc=function(){return this.Of.toString()};var pd=function(a){if(a instanceof od&&a.constructor===od)return a.Of;Ka("expected object of type SafeUrl, got '"+a+"' of type "+ta(a));return"type_error:SafeUrl"},nd={},qd=new od("about:invalid#zClosurez",nd);new od("about:blank",nd);var rd={},sd=function(){if(rd!==rd)throw Error("SafeStyle is not meant to be built directly");this.ii="";this.pc=!0};sd.prototype.oc=function(){return this.ii};sd.prototype.toString=function(){return this.ii.toString()};new sd;var td={},ud=function(){if(td!==td)throw Error("SafeStyleSheet is not meant to be built directly");this.hi="";this.pc=!0};ud.prototype.toString=function(){return this.hi.toString()};ud.prototype.oc=function(){return this.hi};new ud;var vd={},wd=function(){var a=r.trustedTypes&&r.trustedTypes.emptyHTML||"";if(vd!==vd)throw Error("SafeHtml is not meant to be built directly");this.gi=a;this.pc=!0};wd.prototype.oc=function(){return this.gi.toString()};wd.prototype.toString=function(){return this.gi.toString()};new wd;var yd=function(a,b){if(!t(a)||!t(a)||!t(a)||1!==a.nodeType||a.namespaceURI&&"http://www.w3.org/1999/xhtml"!==a.namespaceURI||a.tagName.toUpperCase()!=="SCRIPT".toString()){var c="SCRIPT".toString()+"; got: ";if(t(a))try{var d=a.constructor.displayName||a.constructor.name||Object.prototype.toString.call(a)}catch(e){d=""}else d=void 0===a?"undefined":null===a?"null":typeof a;Ka("Argument is not an HTML Element with tag name "+(c+d))}a:{c=(a.ownerDocument&&a.ownerDocument.defaultView|| -r).document;if(c.querySelector&&(c=c.querySelector("script[nonce]"))&&(c=c.nonce||c.getAttribute("nonce"))&&xd.test(c))break a;c=""}c&&a.setAttribute("nonce",c);a.src=hd(b)},xd=/^[\w+/_-]+[=]{0,2}$/;var zd=function(a,b){for(var c=a.split("%s"),d="",e=Array.prototype.slice.call(arguments,1);e.length&&1b)throw Error("Bad port number "+b);a.uc=b}else a.uc=null};Dd.prototype.getPath=function(){return this.Wb};Dd.prototype.setPath=function(a,b){Fd(this);this.Wb=b?Id(a,!0):a;return this};var Hd=function(a,b,c){Fd(a);b instanceof Jd?(a.Aa=b,a.Aa.cg(a.ya)):(c||(b=Kd(b,Pd)),a.Aa=new Jd(b,a.ya))};Dd.prototype.getQuery=function(){return this.Aa.toString()}; -Dd.prototype.removeParameter=function(a){Fd(this);this.Aa.remove(a);return this};var Fd=function(a){if(a.al)throw Error("Tried to modify a read-only Uri");};Dd.prototype.cg=function(a){this.ya=a;this.Aa&&this.Aa.cg(a)}; -var Qd=function(a){return a instanceof Dd?a.clone():new Dd(a)},Id=function(a,b){return a?b?decodeURI(a.replace(/%25/g,"%2525")):decodeURIComponent(a):""},Kd=function(a,b,c){return"string"===typeof a?(a=encodeURI(a).replace(b,Rd),c&&(a=a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),a):null},Rd=function(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)},Ld=/[#\/\?@]/g,Nd=/[#\?:]/g,Md=/[#\?]/g,Pd=/[#\?@]/g,Od=/#/g,Jd=function(a,b){this.X=this.M=null;this.sa=a||null;this.ya=!!b},Sd= -function(a){a.M||(a.M=new Map,a.X=0,a.sa&&Cd(a.sa,function(b,c){a.add(decodeURIComponent(b.replace(/\+/g," ")),c)}))};h=Jd.prototype;h.R=function(){Sd(this);return this.X};h.add=function(a,b){Sd(this);this.sa=null;a=Td(this,a);var c=this.M.get(a);c||this.M.set(a,c=[]);c.push(b);this.X=La(this.X)+1;return this};h.remove=function(a){Sd(this);a=Td(this,a);return this.M.has(a)?(this.sa=null,this.X=La(this.X)-this.M.get(a).length,this.M.delete(a)):!1};h.clear=function(){this.M=this.sa=null;this.X=0}; -h.isEmpty=function(){Sd(this);return 0==this.X};h.Nb=function(a){Sd(this);a=Td(this,a);return this.M.has(a)};h.Fc=function(a){var b=this.Z();return Xa(b,a)};h.forEach=function(a,b){Sd(this);this.M.forEach(function(c,d){c.forEach(function(e){a.call(b,e,d,this)},this)},this)};h.rb=function(){Sd(this);for(var a=Array.from(this.M.values()),b=Array.from(this.M.keys()),c=[],d=0;d