@google/earthengine 0.1.415 → 0.1.416

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/main.js CHANGED
@@ -1199,6 +1199,33 @@ $jscomp.polyfill("Set", function(NativeSet) {
1199
1199
  };
1200
1200
  return PolyfillSet;
1201
1201
  }, "es6", "es3");
1202
+ $jscomp.polyfill("String.prototype.codePointAt", function(orig) {
1203
+ return orig ? orig : function(position) {
1204
+ var string = $jscomp.checkStringArgs(this, null, "codePointAt"), size = string.length;
1205
+ position = Number(position) || 0;
1206
+ if (position >= 0 && position < size) {
1207
+ position |= 0;
1208
+ var first = string.charCodeAt(position);
1209
+ if (first < 55296 || first > 56319 || position + 1 === size) {
1210
+ return first;
1211
+ }
1212
+ var second = string.charCodeAt(position + 1);
1213
+ return second < 56320 || second > 57343 ? first : (first - 55296) * 1024 + second + 9216;
1214
+ }
1215
+ };
1216
+ }, "es6", "es3");
1217
+ $jscomp.polyfill("String.fromCodePoint", function(orig) {
1218
+ return orig ? orig : function(var_args) {
1219
+ for (var result = "", i = 0; i < arguments.length; i++) {
1220
+ var code = Number(arguments[i]);
1221
+ if (code < 0 || code > 1114111 || code !== Math.floor(code)) {
1222
+ throw new RangeError("invalid_code_point " + code);
1223
+ }
1224
+ code <= 65535 ? result += String.fromCharCode(code) : (code -= 65536, result += String.fromCharCode(code >>> 10 & 1023 | 55296), result += String.fromCharCode(code & 1023 | 56320));
1225
+ }
1226
+ return result;
1227
+ };
1228
+ }, "es6", "es3");
1202
1229
  $jscomp.polyfill("String.prototype.trimLeft", function(orig) {
1203
1230
  function polyfill() {
1204
1231
  return this.replace(/^[\s\xa0]+/, "");
@@ -3351,7 +3378,7 @@ var module$contents$goog$array_map = goog.NATIVE_ARRAY_PROTOTYPES && (module$con
3351
3378
  goog.array.map = module$contents$goog$array_map;
3352
3379
  goog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(arr, f, val, opt_obj) {
3353
3380
  goog.asserts.assert(arr.length != null);
3354
- opt_obj && (f = goog.bind(f, opt_obj));
3381
+ opt_obj && (f = goog.TRUSTED_SITE ? f.bind(opt_obj) : goog.bind(f, opt_obj));
3355
3382
  return Array.prototype.reduce.call(arr, f, val);
3356
3383
  } : function(arr, f, val, opt_obj) {
3357
3384
  var rval = val;
@@ -3363,7 +3390,7 @@ goog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (module$contents$goog$array_
3363
3390
  goog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(arr, f, val, opt_obj) {
3364
3391
  goog.asserts.assert(arr.length != null);
3365
3392
  goog.asserts.assert(f != null);
3366
- opt_obj && (f = goog.bind(f, opt_obj));
3393
+ opt_obj && (f = goog.TRUSTED_SITE ? f.bind(opt_obj) : goog.bind(f, opt_obj));
3367
3394
  return Array.prototype.reduceRight.call(arr, f, val);
3368
3395
  } : function(arr, f, val, opt_obj) {
3369
3396
  var rval = val;
@@ -6786,7 +6813,7 @@ goog.Disposable.prototype.registerDisposable = function(disposable) {
6786
6813
  this.addOnDisposeCallback(goog.partial(module$contents$goog$dispose_dispose, disposable));
6787
6814
  };
6788
6815
  goog.Disposable.prototype.addOnDisposeCallback = function(callback, opt_scope) {
6789
- this.disposed_ ? opt_scope !== void 0 ? callback.call(opt_scope) : callback() : (this.onDisposeCallbacks_ || (this.onDisposeCallbacks_ = []), this.onDisposeCallbacks_.push(opt_scope !== void 0 ? goog.bind(callback, opt_scope) : callback));
6816
+ this.disposed_ ? opt_scope !== void 0 ? callback.call(opt_scope) : callback() : (this.onDisposeCallbacks_ || (this.onDisposeCallbacks_ = []), opt_scope && (callback = goog.TRUSTED_SITE ? callback.bind(opt_scope) : goog.bind(callback, opt_scope)), this.onDisposeCallbacks_.push(callback));
6790
6817
  };
6791
6818
  goog.Disposable.prototype.disposeInternal = function() {
6792
6819
  if (this.onDisposeCallbacks_) {
@@ -6857,7 +6884,7 @@ goog.debug.entryPointRegistry.unmonitorAllIfPossible = function(monitor) {
6857
6884
  var module$contents$goog$events$BrowserFeature_purify = function(fn) {
6858
6885
  return {valueOf:fn}.valueOf();
6859
6886
  };
6860
- goog.events.BrowserFeature = {TOUCH_ENABLED:"ontouchstart" in goog.global || !!(goog.global.document && document.documentElement && "ontouchstart" in document.documentElement) || !(!goog.global.navigator || !goog.global.navigator.maxTouchPoints && !goog.global.navigator.msMaxTouchPoints), POINTER_EVENTS:"PointerEvent" in goog.global, MSPOINTER_EVENTS:!1, PASSIVE_EVENTS:goog.FEATURESET_YEAR > 2018 || module$contents$goog$events$BrowserFeature_purify(function() {
6887
+ goog.events.BrowserFeature = {TOUCH_ENABLED:"ontouchstart" in goog.global || !!(goog.global.document && document.documentElement && "ontouchstart" in document.documentElement) || !!(goog.FEATURESET_YEAR < 2018 && goog.global.navigator && (goog.global.navigator.maxTouchPoints || goog.global.navigator.msMaxTouchPoints)), POINTER_EVENTS:goog.FEATURESET_YEAR >= 2019 || "PointerEvent" in goog.global, MSPOINTER_EVENTS:!1, PASSIVE_EVENTS:goog.FEATURESET_YEAR > 2018 || module$contents$goog$events$BrowserFeature_purify(function() {
6861
6888
  if (!goog.global.addEventListener || !Object.defineProperty) {
6862
6889
  return !1;
6863
6890
  }
@@ -7641,8 +7668,8 @@ goog.events.eventTypeHelpers = {};
7641
7668
  goog.events.eventTypeHelpers.getVendorPrefixedName = function(eventName) {
7642
7669
  return goog.userAgent.WEBKIT ? "webkit" + eventName : eventName.toLowerCase();
7643
7670
  };
7644
- goog.events.eventTypeHelpers.getPointerFallbackEventName = function(pointerEventName, msPointerEventName, fallbackEventName) {
7645
- return goog.events.BrowserFeature.POINTER_EVENTS ? pointerEventName : goog.events.BrowserFeature.MSPOINTER_EVENTS ? msPointerEventName : fallbackEventName;
7671
+ goog.events.eventTypeHelpers.getPointerFallbackEventName = function(pointerEventName, fallbackEventName) {
7672
+ return goog.events.BrowserFeature.POINTER_EVENTS ? pointerEventName : fallbackEventName;
7646
7673
  };
7647
7674
  goog.events.EventType = {CLICK:"click", RIGHTCLICK:"rightclick", DBLCLICK:"dblclick", AUXCLICK:"auxclick", MOUSEDOWN:"mousedown", MOUSEUP:"mouseup", MOUSEOVER:"mouseover", MOUSEOUT:"mouseout", MOUSEMOVE:"mousemove", MOUSEENTER:"mouseenter", MOUSELEAVE:"mouseleave", MOUSECANCEL:"mousecancel", SELECTIONCHANGE:"selectionchange", SELECTSTART:"selectstart", WHEEL:"wheel", KEYPRESS:"keypress", KEYDOWN:"keydown", KEYUP:"keyup", BLUR:"blur", FOCUS:"focus", DEACTIVATE:"deactivate", FOCUSIN:"focusin", FOCUSOUT:"focusout",
7648
7675
  CHANGE:"change", RESET:"reset", SELECT:"select", SUBMIT:"submit", INPUT:"input", PROPERTYCHANGE:"propertychange", DRAGSTART:"dragstart", DRAG:"drag", DRAGENTER:"dragenter", DRAGOVER:"dragover", DRAGLEAVE:"dragleave", DROP:"drop", DRAGEND:"dragend", TOUCHSTART:"touchstart", TOUCHMOVE:"touchmove", TOUCHEND:"touchend", TOUCHCANCEL:"touchcancel", BEFOREUNLOAD:"beforeunload", CONSOLEMESSAGE:"consolemessage", CONTEXTMENU:"contextmenu", DEVICECHANGE:"devicechange", DEVICEMOTION:"devicemotion", DEVICEORIENTATION:"deviceorientation",
@@ -7672,15 +7699,12 @@ goog.inherits(goog.events.BrowserEvent, goog.events.Event);
7672
7699
  goog.events.BrowserEvent.USE_LAYER_XY_AS_OFFSET_XY = !1;
7673
7700
  goog.events.BrowserEvent.MouseButton = {LEFT:0, MIDDLE:1, RIGHT:2, BACK:3, FORWARD:4};
7674
7701
  goog.events.BrowserEvent.PointerType = {MOUSE:"mouse", PEN:"pen", TOUCH:"touch"};
7675
- goog.events.BrowserEvent.IEButtonMap = goog.debug.freeze([1, 4, 2]);
7676
- goog.events.BrowserEvent.IE_BUTTON_MAP = goog.events.BrowserEvent.IEButtonMap;
7677
- goog.events.BrowserEvent.IE_POINTER_TYPE_MAP = goog.debug.freeze({2:goog.events.BrowserEvent.PointerType.TOUCH, 3:goog.events.BrowserEvent.PointerType.PEN, 4:goog.events.BrowserEvent.PointerType.MOUSE});
7678
7702
  goog.events.BrowserEvent.prototype.init = function(e, opt_currentTarget) {
7679
7703
  var type = this.type = e.type, relevantTouch = e.changedTouches && e.changedTouches.length ? e.changedTouches[0] : null;
7680
7704
  this.target = e.target || e.srcElement;
7681
7705
  this.currentTarget = opt_currentTarget;
7682
7706
  var relatedTarget = e.relatedTarget;
7683
- relatedTarget ? goog.userAgent.GECKO && (goog.reflect.canAccessProperty(relatedTarget, "nodeName") || (relatedTarget = null)) : type == goog.events.EventType.MOUSEOVER ? relatedTarget = e.fromElement : type == goog.events.EventType.MOUSEOUT && (relatedTarget = e.toElement);
7707
+ relatedTarget || (type == goog.events.EventType.MOUSEOVER ? relatedTarget = e.fromElement : type == goog.events.EventType.MOUSEOUT && (relatedTarget = e.toElement));
7684
7708
  this.relatedTarget = relatedTarget;
7685
7709
  relevantTouch ? (this.clientX = relevantTouch.clientX !== void 0 ? relevantTouch.clientX : relevantTouch.pageX, this.clientY = relevantTouch.clientY !== void 0 ? relevantTouch.clientY : relevantTouch.pageY, this.screenX = relevantTouch.screenX || 0, this.screenY = relevantTouch.screenY || 0) : (goog.events.BrowserEvent.USE_LAYER_XY_AS_OFFSET_XY ? (this.offsetX = e.layerX !== void 0 ? e.layerX : e.offsetX, this.offsetY = e.layerY !== void 0 ? e.layerY : e.offsetY) : (this.offsetX = goog.userAgent.WEBKIT ||
7686
7710
  e.offsetX !== void 0 ? e.offsetX : e.layerX, this.offsetY = goog.userAgent.WEBKIT || e.offsetY !== void 0 ? e.offsetY : e.layerY), this.clientX = e.clientX !== void 0 ? e.clientX : e.pageX, this.clientY = e.clientY !== void 0 ? e.clientY : e.pageY, this.screenX = e.screenX || 0, this.screenY = e.screenY || 0);
@@ -7719,7 +7743,7 @@ goog.events.BrowserEvent.prototype.getBrowserEvent = function() {
7719
7743
  return this.event_;
7720
7744
  };
7721
7745
  goog.events.BrowserEvent.getPointerType_ = function(e) {
7722
- return typeof e.pointerType === "string" ? e.pointerType : goog.events.BrowserEvent.IE_POINTER_TYPE_MAP[e.pointerType] || "";
7746
+ return e.pointerType;
7723
7747
  };
7724
7748
  goog.events.Listenable = function() {
7725
7749
  };
@@ -15287,18 +15311,6 @@ goog.asserts.dom.assertIsHtmlObjectElement = function(value) {
15287
15311
  return module$contents$goog$asserts$dom_assertIsHtmlElementOfType(value, goog.dom.TagName.OBJECT);
15288
15312
  };
15289
15313
  goog.asserts.dom.assertIsHtmlScriptElement = module$contents$goog$asserts$dom_assertIsHtmlScriptElement;
15290
- goog.dom.BrowserFeature = {};
15291
- goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;
15292
- goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = goog.FEATURESET_YEAR >= 2024;
15293
- goog.dom.BrowserFeature.detectOffscreenCanvas_ = function(contextName) {
15294
- try {
15295
- return !!(new self.OffscreenCanvas(0, 0)).getContext(contextName);
15296
- } catch (ex) {
15297
- }
15298
- return !1;
15299
- };
15300
- goog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_("2d"));
15301
- goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = !0;
15302
15314
  goog.dom.asserts = {};
15303
15315
  goog.dom.asserts.assertIsLocation = function(o) {
15304
15316
  if (module$exports$enable_goog_asserts.ENABLE_GOOG_ASSERTS) {
@@ -15718,13 +15730,6 @@ module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanit
15718
15730
  })}]];
15719
15731
  module$exports$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table.DEFAULT_SANITIZER_TABLE = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(new Set(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_ELEMENTS), new Map(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ELEMENT_POLICIES),
15720
15732
  new Set(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_GLOBAL_ATTRIBUTES), new Map(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_GLOBAL_ATTRIBUTE_POLICIES));
15721
- module$exports$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table.CSS_SANITIZER_TABLE = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(new Set(module$contents$safevalues$internals$pure_pure(function() {
15722
- return module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_ELEMENTS.concat(["STYLE"]);
15723
- })), new Map(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ELEMENT_POLICIES), new Set(module$contents$safevalues$internals$pure_pure(function() {
15724
- return module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_GLOBAL_ATTRIBUTES.concat(["id", "name", "class"]);
15725
- })), new Map(module$contents$safevalues$internals$pure_pure(function() {
15726
- return module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_GLOBAL_ATTRIBUTE_POLICIES.concat([["style", {policyAction:module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP_AND_SANITIZE_STYLE}]]);
15727
- })));
15728
15733
  module$exports$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table.LENIENT_SANITIZER_TABLE = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(new Set(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_ELEMENTS.concat(["BUTTON", "INPUT"])), new Map(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ELEMENT_POLICIES),
15729
15734
  new Set(module$contents$safevalues$internals$pure_pure(function() {
15730
15735
  return module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_GLOBAL_ATTRIBUTES.concat(["class", "id", "name"]);
@@ -15741,11 +15746,14 @@ module$exports$safevalues$builders$html_sanitizer$sanitizer_table$default_saniti
15741
15746
  var module$exports$safevalues$builders$html_sanitizer$html_sanitizer = {}, module$contents$safevalues$builders$html_sanitizer$html_sanitizer_module = module$contents$safevalues$builders$html_sanitizer$html_sanitizer_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/html_sanitizer.closure.js"};
15742
15747
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizer = function() {
15743
15748
  };
15749
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.CssSanitizer = function() {
15750
+ };
15744
15751
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl = function(sanitizerTable, token, styleElementSanitizer, styleAttributeSanitizer, resourceUrlPolicy) {
15745
15752
  this.sanitizerTable = sanitizerTable;
15746
15753
  this.styleElementSanitizer = styleElementSanitizer;
15747
15754
  this.styleAttributeSanitizer = styleAttributeSanitizer;
15748
15755
  this.resourceUrlPolicy = resourceUrlPolicy;
15756
+ this.SHADOW_DOM_INTERNAL_CSS = ":host{display:block;clip-path:inset(0);overflow:hidden}";
15749
15757
  this.changes = [];
15750
15758
  module$contents$safevalues$internals$secrets_ensureTokenIsValid(token);
15751
15759
  };
@@ -15763,11 +15771,21 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15763
15771
  };
15764
15772
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl.prototype.sanitizeToFragment = function(html) {
15765
15773
  var inertDocument = document.implementation.createHTMLDocument("");
15766
- return this.sanitizeToFragmentInternal(html, inertDocument);
15774
+ return this.styleElementSanitizer && this.styleAttributeSanitizer ? this.sanitizeWithCssToFragment(html, inertDocument) : this.sanitizeToFragmentInternal(html, inertDocument);
15775
+ };
15776
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl.prototype.sanitizeWithCssToFragment = function(htmlWithCss, inertDocument) {
15777
+ var elem = document.createElement("safevalues-with-css"), shadow = elem.attachShadow({mode:"closed"}), sanitized = this.sanitizeToFragmentInternal(htmlWithCss, inertDocument), internalStyle = document.createElement("style");
15778
+ internalStyle.textContent = this.SHADOW_DOM_INTERNAL_CSS;
15779
+ internalStyle.id = "safevalues-internal-style";
15780
+ shadow.appendChild(internalStyle);
15781
+ shadow.appendChild(sanitized);
15782
+ var fragment = inertDocument.createDocumentFragment();
15783
+ fragment.appendChild(elem);
15784
+ return fragment;
15767
15785
  };
15768
15786
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl.prototype.sanitizeToFragmentInternal = function(html, inertDocument) {
15769
- for (var $jscomp$this$m1085474118$10 = this, dirtyFragment = module$contents$safevalues$builders$html_sanitizer$inert_fragment_createInertFragment(html, inertDocument), treeWalker = document.createTreeWalker(dirtyFragment, 5, function(n) {
15770
- return $jscomp$this$m1085474118$10.nodeFilter(n);
15787
+ for (var $jscomp$this$m1085474118$13 = this, dirtyFragment = module$contents$safevalues$builders$html_sanitizer$inert_fragment_createInertFragment(html, inertDocument), treeWalker = document.createTreeWalker(dirtyFragment, 5, function(n) {
15788
+ return $jscomp$this$m1085474118$13.nodeFilter(n);
15771
15789
  }), currentNode = treeWalker.nextNode(), sanitizedFragment = inertDocument.createDocumentFragment(), sanitizedParent = sanitizedFragment; currentNode !== null;) {
15772
15790
  var sanitizedNode = void 0;
15773
15791
  if (module$contents$safevalues$builders$html_sanitizer$no_clobber_isText(currentNode)) {
@@ -15802,8 +15820,8 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15802
15820
  return this.createTextNode(textNode.data);
15803
15821
  };
15804
15822
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl.prototype.sanitizeElementNode = function(elementNode, inertDocument) {
15805
- for (var elementName = module$contents$safevalues$builders$html_sanitizer$no_clobber_getNodeName(elementNode), newNode = inertDocument.createElement(elementName), dirtyAttributes = elementNode.attributes, $jscomp$iter$32 = (0,$jscomp.makeIterator)(dirtyAttributes), $jscomp$key$m1085474118$31$ = $jscomp$iter$32.next(); !$jscomp$key$m1085474118$31$.done; $jscomp$key$m1085474118$31$ = $jscomp$iter$32.next()) {
15806
- var $jscomp$destructuring$var31 = $jscomp$key$m1085474118$31$.value, name = $jscomp$destructuring$var31.name, value = $jscomp$destructuring$var31.value, policy = this.sanitizerTable.getAttributePolicy(name, elementName);
15823
+ for (var elementName = module$contents$safevalues$builders$html_sanitizer$no_clobber_getNodeName(elementNode), newNode = inertDocument.createElement(elementName), dirtyAttributes = elementNode.attributes, $jscomp$iter$32 = (0,$jscomp.makeIterator)(dirtyAttributes), $jscomp$key$m1085474118$34$ = $jscomp$iter$32.next(); !$jscomp$key$m1085474118$34$.done; $jscomp$key$m1085474118$34$ = $jscomp$iter$32.next()) {
15824
+ var $jscomp$destructuring$var31 = $jscomp$key$m1085474118$34$.value, name = $jscomp$destructuring$var31.name, value = $jscomp$destructuring$var31.value, policy = this.sanitizerTable.getAttributePolicy(name, elementName);
15807
15825
  if (this.satisfiesAllConditions(policy.conditions, dirtyAttributes)) {
15808
15826
  switch(policy.policyAction) {
15809
15827
  case module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP:
@@ -15835,9 +15853,9 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15835
15853
  break;
15836
15854
  case module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP_AND_USE_RESOURCE_URL_POLICY_FOR_SRCSET:
15837
15855
  if (this.resourceUrlPolicy) {
15838
- for (var hints$jscomp$0 = {type:module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.HTML_ATTRIBUTE, attributeName:name, elementName:elementName}, srcset = module$contents$safevalues$builders$html_sanitizer$html_sanitizer_parseSrcset(value), sanitizedSrcset = {parts:[]}, $jscomp$iter$31 = (0,$jscomp.makeIterator)(srcset.parts), $jscomp$key$m1085474118$30$part = $jscomp$iter$31.next(); !$jscomp$key$m1085474118$30$part.done; $jscomp$key$m1085474118$30$part =
15856
+ for (var hints$jscomp$0 = {type:module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.HTML_ATTRIBUTE, attributeName:name, elementName:elementName}, srcset = module$contents$safevalues$builders$html_sanitizer$html_sanitizer_parseSrcset(value), sanitizedSrcset = {parts:[]}, $jscomp$iter$31 = (0,$jscomp.makeIterator)(srcset.parts), $jscomp$key$m1085474118$33$part = $jscomp$iter$31.next(); !$jscomp$key$m1085474118$33$part.done; $jscomp$key$m1085474118$33$part =
15839
15857
  $jscomp$iter$31.next()) {
15840
- var part = $jscomp$key$m1085474118$30$part.value, url$jscomp$0 = module$contents$safevalues$builders$html_sanitizer$resource_url_policy_parseUrl(part.url), sanitizedUrl$jscomp$0 = this.resourceUrlPolicy(url$jscomp$0, hints$jscomp$0);
15858
+ var part = $jscomp$key$m1085474118$33$part.value, url$jscomp$0 = module$contents$safevalues$builders$html_sanitizer$resource_url_policy_parseUrl(part.url), sanitizedUrl$jscomp$0 = this.resourceUrlPolicy(url$jscomp$0, hints$jscomp$0);
15841
15859
  sanitizedUrl$jscomp$0 && sanitizedSrcset.parts.push({url:sanitizedUrl$jscomp$0.toString(), descriptor:part.descriptor});
15842
15860
  }
15843
15861
  module$contents$safevalues$builders$html_sanitizer$html_sanitizer_setAttribute(newNode, name, module$contents$safevalues$builders$html_sanitizer$html_sanitizer_serializeSrcset(sanitizedSrcset));
@@ -15881,8 +15899,8 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15881
15899
  if (!conditions) {
15882
15900
  return !0;
15883
15901
  }
15884
- for (var $jscomp$iter$33 = (0,$jscomp.makeIterator)(conditions), $jscomp$key$m1085474118$32$ = $jscomp$iter$33.next(); !$jscomp$key$m1085474118$32$.done; $jscomp$key$m1085474118$32$ = $jscomp$iter$33.next()) {
15885
- var $jscomp$destructuring$var33 = (0,$jscomp.makeIterator)($jscomp$key$m1085474118$32$.value), attrName__tsickle_destructured_1 = $jscomp$destructuring$var33.next().value, expectedValues = $jscomp$destructuring$var33.next().value, $jscomp$optchain$tmpm1085474118$0 = void 0, value = ($jscomp$optchain$tmpm1085474118$0 = attrs.getNamedItem(attrName__tsickle_destructured_1)) == null ? void 0 : $jscomp$optchain$tmpm1085474118$0.value;
15902
+ for (var $jscomp$iter$33 = (0,$jscomp.makeIterator)(conditions), $jscomp$key$m1085474118$35$ = $jscomp$iter$33.next(); !$jscomp$key$m1085474118$35$.done; $jscomp$key$m1085474118$35$ = $jscomp$iter$33.next()) {
15903
+ var $jscomp$destructuring$var33 = (0,$jscomp.makeIterator)($jscomp$key$m1085474118$35$.value), attrName__tsickle_destructured_1 = $jscomp$destructuring$var33.next().value, expectedValues = $jscomp$destructuring$var33.next().value, $jscomp$optchain$tmpm1085474118$0 = void 0, value = ($jscomp$optchain$tmpm1085474118$0 = attrs.getNamedItem(attrName__tsickle_destructured_1)) == null ? void 0 : $jscomp$optchain$tmpm1085474118$0.value;
15886
15904
  if (value && !expectedValues.has(value)) {
15887
15905
  return !1;
15888
15906
  }
@@ -15897,8 +15915,8 @@ function module$contents$safevalues$builders$html_sanitizer$html_sanitizer_Srcse
15897
15915
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.Srcset = function() {
15898
15916
  };
15899
15917
  function module$contents$safevalues$builders$html_sanitizer$html_sanitizer_parseSrcset(srcset) {
15900
- for (var parts = [], $jscomp$iter$34 = (0,$jscomp.makeIterator)(srcset.split(",")), $jscomp$key$m1085474118$33$part = $jscomp$iter$34.next(); !$jscomp$key$m1085474118$33$part.done; $jscomp$key$m1085474118$33$part = $jscomp$iter$34.next()) {
15901
- var $jscomp$destructuring$var34 = (0,$jscomp.makeIterator)($jscomp$key$m1085474118$33$part.value.trim().split(/\s+/, 2)), url__tsickle_destructured_3 = $jscomp$destructuring$var34.next().value, descriptor__tsickle_destructured_4 = $jscomp$destructuring$var34.next().value;
15918
+ for (var parts = [], $jscomp$iter$34 = (0,$jscomp.makeIterator)(srcset.split(",")), $jscomp$key$m1085474118$36$part = $jscomp$iter$34.next(); !$jscomp$key$m1085474118$36$part.done; $jscomp$key$m1085474118$36$part = $jscomp$iter$34.next()) {
15919
+ var $jscomp$destructuring$var34 = (0,$jscomp.makeIterator)($jscomp$key$m1085474118$36$part.value.trim().split(/\s+/, 2)), url__tsickle_destructured_3 = $jscomp$destructuring$var34.next().value, descriptor__tsickle_destructured_4 = $jscomp$destructuring$var34.next().value;
15902
15920
  parts.push({url:url__tsickle_destructured_3, descriptor:descriptor__tsickle_destructured_4});
15903
15921
  }
15904
15922
  return {parts:parts};
@@ -15949,14 +15967,600 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.superLenientlyS
15949
15967
  function module$contents$safevalues$builders$html_sanitizer$html_sanitizer_checkExhaustive(value, msg) {
15950
15968
  throw Error(msg === void 0 ? "unexpected value " + value + "!" : msg);
15951
15969
  }
15952
- ;var module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder = {}, module$contents$safevalues$builders$html_sanitizer$html_sanitizer_builder_module = module$contents$safevalues$builders$html_sanitizer$html_sanitizer_builder_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/html_sanitizer_builder.closure.js"};
15953
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder = function() {
15970
+ ;var module$exports$safevalues$builders$html_sanitizer$css$allowlists = {}, module$contents$safevalues$builders$html_sanitizer$css$allowlists_module = module$contents$safevalues$builders$html_sanitizer$css$allowlists_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/css/allowlists.closure.js"};
15971
+ module$exports$safevalues$builders$html_sanitizer$css$allowlists.CSS_PROPERTY_ALLOWLIST = new Set("accent-color align-content align-items align-self alignment-baseline all appearance aspect-ratio backdrop-filter backface-visibility background background-attachment background-blend-mode background-clip background-color background-image background-origin background-position background-position-x background-position-y background-repeat background-size block-size border border-block border-block-color border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-block-style border-block-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-style border-bottom-width border-collapse border-color border-end-end-radius border-end-start-radius border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-inline border-inline-color border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-inline-style border-inline-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-spacing border-start-end-radius border-start-start-radius border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width bottom box-shadow box-sizing caption-side caret-color clear clip clip-path clip-rule color color-interpolation color-interpolation-filters color-scheme column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width columns contain contain-intrinsic-block-size contain-intrinsic-height contain-intrinsic-inline-size contain-intrinsic-size contain-intrinsic-width content content-visibility counter-increment counter-reset counter-set cx cy d display dominant-baseline empty-cells field-sizing fill fill-opacity fill-rule filter flex flex-basis flex-direction flex-flow flex-grow flex-shrink flex-wrap float flood-color flood-opacity font font-family font-feature-settings font-kerning font-optical-sizing font-palette font-size font-size-adjust font-stretch font-style font-synthesis font-synthesis-small-caps font-synthesis-style font-synthesis-weight font-variant font-variant-alternates font-variant-caps font-variant-east-asian font-variant-emoji font-variant-ligatures font-variant-numeric font-variant-position font-variation-settings font-weight forced-color-adjust gap grid grid-area grid-auto-columns grid-auto-flow grid-auto-rows grid-column grid-column-end grid-column-gap grid-column-start grid-gap grid-row grid-row-end grid-row-gap grid-row-start grid-template grid-template-areas grid-template-columns grid-template-rows height hyphenate-character hyphenate-limit-chars hyphens image-orientation image-rendering inline-size inset inset-area inset-block inset-block-end inset-block-start inset-inline inset-inline-end inset-inline-start isolation justify-content justify-items justify-self left letter-spacing lighting-color line-break line-clamp line-gap-override line-height list-style list-style-image list-style-position list-style-type margin margin-block margin-block-end margin-block-start margin-bottom margin-inline margin-inline-end margin-inline-start margin-left margin-right margin-top marker marker-end marker-mid marker-start mask mask-clip mask-composite mask-image mask-mode mask-origin mask-position mask-repeat mask-size mask-type max-block-size max-height max-inline-size max-width min-block-size min-height min-inline-size min-width mix-blend-mode object-fit object-position object-view-box opacity order orphans outline outline-color outline-offset outline-style outline-width overflow overflow-anchor overflow-block overflow-clip-margin overflow-inline overflow-wrap overflow-x overflow-y padding padding-block padding-block-end padding-block-start padding-bottom padding-inline padding-inline-end padding-inline-start padding-left padding-right padding-top paint-order perspective perspective-origin place-content place-items place-self position quotes r resize right rotate row-gap ruby-align ruby-position rx ry scale shape-image-threshold shape-margin shape-outside shape-rendering stop-color stop-opacity stroke stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width tab-size table-layout text-align text-align-last text-anchor text-autospace text-box-edge text-box-trim text-combine-upright text-decoration text-decoration-color text-decoration-line text-decoration-skip-ink text-decoration-style text-decoration-thickness text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-orientation text-overflow text-rendering text-shadow text-size-adjust text-spacing text-spacing-trim text-transform text-underline-offset text-underline-position text-wrap top transform transform-box transform-origin transform-style translate unicode-bidi vector-effect vertical-align visibility white-space white-space-collapse widows width will-change word-break word-spacing word-wrap writing-mode x y z-index zoom animation animation-composition animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-range animation-range-end animation-range-start animation-timeline animation-timing-function offset offset-anchor offset-distance offset-path offset-position offset-rotate transition transition-behavior transition-delay transition-duration transition-property transition-timing-function".split(" "));
15972
+ module$exports$safevalues$builders$html_sanitizer$css$allowlists.CSS_FUNCTION_ALLOWLIST = new Set("alpha cubic-bezier linear-gradient matrix perspective radial-gradient rect repeating-linear-gradient repeating-radial-gradient rgb rgba rotate rotate3d rotatex rotatey rotatez scale scale3d scalex scaley scalez skew skewx skewy steps translate translate3d translatex translatey translatez url".split(" "));
15973
+ var module$exports$safevalues$builders$html_sanitizer$css$tokens = {}, module$contents$safevalues$builders$html_sanitizer$css$tokens_module = module$contents$safevalues$builders$html_sanitizer$css$tokens_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/css/tokens.closure.js"};
15974
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind = {AT_KEYWORD:0, CDC:1, CDO:2, CLOSE_CURLY:3, CLOSE_PAREN:4, CLOSE_SQUARE:5, COLON:6, COMMA:7, DELIM:8, DIMENSION:9, EOF:10, FUNCTION:11, HASH:12, IDENT:13, NUMBER:14, OPEN_CURLY:15, OPEN_PAREN:16, OPEN_SQUARE:17, PERCENTAGE:18, SEMICOLON:19, STRING:20, WHITESPACE:21};
15975
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.AT_KEYWORD] = "AT_KEYWORD";
15976
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CDC] = "CDC";
15977
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CDO] = "CDO";
15978
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_CURLY] = "CLOSE_CURLY";
15979
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_PAREN] = "CLOSE_PAREN";
15980
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_SQUARE] = "CLOSE_SQUARE";
15981
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.COLON] = "COLON";
15982
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.COMMA] = "COMMA";
15983
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM] = "DELIM";
15984
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DIMENSION] = "DIMENSION";
15985
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.EOF] = "EOF";
15986
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.FUNCTION] = "FUNCTION";
15987
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.HASH] = "HASH";
15988
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.IDENT] = "IDENT";
15989
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.NUMBER] = "NUMBER";
15990
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_CURLY] = "OPEN_CURLY";
15991
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_PAREN] = "OPEN_PAREN";
15992
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_SQUARE] = "OPEN_SQUARE";
15993
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.PERCENTAGE] = "PERCENTAGE";
15994
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.SEMICOLON] = "SEMICOLON";
15995
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.STRING] = "STRING";
15996
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind[module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.WHITESPACE] = "WHITESPACE";
15997
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.AtKeywordToken = function() {
15998
+ };
15999
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CdcToken = function() {
16000
+ };
16001
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CdoToken = function() {
16002
+ };
16003
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CloseCurlyToken = function() {
16004
+ };
16005
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CloseParenToken = function() {
16006
+ };
16007
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CloseSquareToken = function() {
16008
+ };
16009
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.ColonToken = function() {
16010
+ };
16011
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.CommaToken = function() {
16012
+ };
16013
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.DelimToken = function() {
16014
+ };
16015
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.DimensionToken = function() {
16016
+ };
16017
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.EofToken = function() {
16018
+ };
16019
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.FunctionToken = function() {
16020
+ };
16021
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.HashToken = function() {
16022
+ };
16023
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.IdentToken = function() {
16024
+ };
16025
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.NumberToken = function() {
16026
+ };
16027
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.OpenCurlyToken = function() {
16028
+ };
16029
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.OpenParenToken = function() {
16030
+ };
16031
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.OpenSquareToken = function() {
16032
+ };
16033
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.PercentageToken = function() {
16034
+ };
16035
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.SemicolonToken = function() {
16036
+ };
16037
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.StringToken = function() {
16038
+ };
16039
+ module$exports$safevalues$builders$html_sanitizer$css$tokens.WhitespaceToken = function() {
16040
+ };
16041
+ var module$exports$safevalues$builders$html_sanitizer$css$serializer = {}, module$contents$safevalues$builders$html_sanitizer$css$serializer_module = module$contents$safevalues$builders$html_sanitizer$css$serializer_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/css/serializer.closure.js"};
16042
+ function module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeCodePoint(c) {
16043
+ return "\\" + c.codePointAt(0).toString(16) + " ";
16044
+ }
16045
+ function module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeString(str) {
16046
+ return '"' + str.replace(/[^A-Za-z0-9_/. :,?=%;-]/g, function(c) {
16047
+ return module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeCodePoint(c);
16048
+ }) + '"';
16049
+ }
16050
+ function module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(ident) {
16051
+ return (/^[^A-Za-z_]/.test(ident) ? module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeCodePoint(ident[0]) : ident[0]) + ident.slice(1).replace(/[^A-Za-z0-9_-]/g, function(c) {
16052
+ return module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeCodePoint(c);
16053
+ });
16054
+ }
16055
+ module$exports$safevalues$builders$html_sanitizer$css$serializer.escapeIdent = module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent;
16056
+ function module$contents$safevalues$builders$html_sanitizer$css$serializer_serializeToken(token) {
16057
+ switch(token.tokenKind) {
16058
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.AT_KEYWORD:
16059
+ return "@" + module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(token.name);
16060
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CDC:
16061
+ return "--\x3e";
16062
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CDO:
16063
+ return "\x3c!--";
16064
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_CURLY:
16065
+ return "}";
16066
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_PAREN:
16067
+ return ")";
16068
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_SQUARE:
16069
+ return "]";
16070
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.COLON:
16071
+ return ":";
16072
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.COMMA:
16073
+ return ",";
16074
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM:
16075
+ return token.codePoint === "\\" ? "\\\n" : token.codePoint;
16076
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DIMENSION:
16077
+ return token.repr + module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(token.dimension);
16078
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.EOF:
16079
+ return "";
16080
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.FUNCTION:
16081
+ return module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(token.lowercaseName) + "(";
16082
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.HASH:
16083
+ return "#" + module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(token.value);
16084
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.IDENT:
16085
+ return module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(token.ident);
16086
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.NUMBER:
16087
+ return token.repr;
16088
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_CURLY:
16089
+ return "{";
16090
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_PAREN:
16091
+ return "(";
16092
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_SQUARE:
16093
+ return "[";
16094
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.PERCENTAGE:
16095
+ return token.repr + "%";
16096
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.SEMICOLON:
16097
+ return ";";
16098
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.STRING:
16099
+ return module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeString(token.value);
16100
+ case module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.WHITESPACE:
16101
+ return " ";
16102
+ default:
16103
+ module$contents$safevalues$builders$html_sanitizer$css$serializer_checkExhaustive(token);
16104
+ }
16105
+ }
16106
+ module$exports$safevalues$builders$html_sanitizer$css$serializer.serializeToken = module$contents$safevalues$builders$html_sanitizer$css$serializer_serializeToken;
16107
+ function module$contents$safevalues$builders$html_sanitizer$css$serializer_serializeTokens(tokens) {
16108
+ return tokens.map(module$contents$safevalues$builders$html_sanitizer$css$serializer_serializeToken).join("");
16109
+ }
16110
+ module$exports$safevalues$builders$html_sanitizer$css$serializer.serializeTokens = module$contents$safevalues$builders$html_sanitizer$css$serializer_serializeTokens;
16111
+ function module$contents$safevalues$builders$html_sanitizer$css$serializer_checkExhaustive(value, msg) {
16112
+ throw Error(msg === void 0 ? "unexpected value " + value + "!" : msg);
16113
+ }
16114
+ ;var module$contents$safevalues$builders$html_sanitizer$css$tokenizer_module = module$contents$safevalues$builders$html_sanitizer$css$tokenizer_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/css/tokenizer.closure.js"}, module$contents$safevalues$builders$html_sanitizer$css$tokenizer_HEX_DIGIT_REGEX = /^[0-9a-fA-F]$/, module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer =
16115
+ function(css) {
16116
+ this.pos = 0;
16117
+ this.css = this.preprocess(css);
16118
+ };
16119
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.tokenize = function() {
16120
+ for (var tokens = [], lastToken = void 0;;) {
16121
+ var token = this.consumeToken();
16122
+ if (Array.isArray(token)) {
16123
+ tokens.push.apply(tokens, (0,$jscomp.arrayFromIterable)(token));
16124
+ } else {
16125
+ var $jscomp$optchain$tmpm282935782$0 = void 0;
16126
+ if (token.tokenKind !== module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.WHITESPACE || (($jscomp$optchain$tmpm282935782$0 = lastToken) == null ? void 0 : $jscomp$optchain$tmpm282935782$0.tokenKind) !== module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.WHITESPACE) {
16127
+ tokens.push(token);
16128
+ if (token.tokenKind === module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.EOF) {
16129
+ return tokens;
16130
+ }
16131
+ lastToken = token;
16132
+ }
16133
+ }
16134
+ }
16135
+ };
16136
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.nextInputCodePoint = function() {
16137
+ return this.css[this.pos];
16138
+ };
16139
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.nextTwoInputCodePoints = function() {
16140
+ return [this.css[this.pos], this.css[this.pos + 1]];
16141
+ };
16142
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.nextThreeInputCodePoints = function() {
16143
+ return [this.css[this.pos], this.css[this.pos + 1], this.css[this.pos + 2]];
16144
+ };
16145
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.currentInputCodePoint = function() {
16146
+ return this.css[this.pos - 1];
16147
+ };
16148
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.nextNInputCodePoints = function(n) {
16149
+ return this.css.slice(this.pos, this.pos + n);
16150
+ };
16151
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeTheNextInputCodePoint = function() {
16152
+ this.pos++;
16153
+ };
16154
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeNInputCodePoints = function(n) {
16155
+ this.pos += n;
16156
+ };
16157
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.reconsumeTheCurrentInputCodePoint = function() {
16158
+ this.pos--;
16159
+ };
16160
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.preprocess = function(css) {
16161
+ return css.replace(/[\x0d\x0c]|\x0d\x0a/g, "\n").replace(/\x00/g, "\ufffd");
16162
+ };
16163
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeToken = function() {
16164
+ if (this.consumeComments()) {
16165
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.WHITESPACE};
16166
+ }
16167
+ var codePoint = this.nextInputCodePoint();
16168
+ this.consumeTheNextInputCodePoint();
16169
+ if (codePoint === void 0) {
16170
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.EOF};
16171
+ }
16172
+ if (this.isWhitespace(codePoint)) {
16173
+ return this.consumeAsMuchWhitespaceAsPossible(), {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.WHITESPACE};
16174
+ }
16175
+ if (codePoint === "'" || codePoint === '"') {
16176
+ return this.consumeString(codePoint);
16177
+ }
16178
+ if (codePoint === "#") {
16179
+ return this.isIdentCodePoint(this.nextInputCodePoint()) || this.twoCodePointsAreValidEscape.apply(this, (0,$jscomp.arrayFromIterable)(this.nextTwoInputCodePoints())) ? {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.HASH, value:this.consumeIdentSequence()} : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM, codePoint:"#"};
16180
+ }
16181
+ if (codePoint === "(") {
16182
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_PAREN};
16183
+ }
16184
+ if (codePoint === ")") {
16185
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_PAREN};
16186
+ }
16187
+ if (codePoint === "+") {
16188
+ return this.streamStartsWithANumber() ? (this.reconsumeTheCurrentInputCodePoint(), this.consumeNumericToken()) : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM, codePoint:"+"};
16189
+ }
16190
+ if (codePoint === ",") {
16191
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.COMMA};
16192
+ }
16193
+ if (codePoint === "-") {
16194
+ return this.streamStartsWithANumber() ? (this.reconsumeTheCurrentInputCodePoint(), this.consumeNumericToken()) : this.nextNInputCodePoints(2) === "->" ? (this.consumeNInputCodePoints(2), {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CDC}) : this.streamStartsWithAnIdentSequence() ? (this.reconsumeTheCurrentInputCodePoint(), this.consumeIdentLikeToken()) : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM,
16195
+ codePoint:"-"};
16196
+ }
16197
+ if (codePoint === ".") {
16198
+ return this.streamStartsWithANumber() ? (this.reconsumeTheCurrentInputCodePoint(), this.consumeNumericToken()) : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM, codePoint:"."};
16199
+ }
16200
+ if (codePoint === ":") {
16201
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.COLON};
16202
+ }
16203
+ if (codePoint === ";") {
16204
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.SEMICOLON};
16205
+ }
16206
+ if (codePoint === "<") {
16207
+ return this.nextNInputCodePoints(3) === "!--" ? (this.consumeNInputCodePoints(3), {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CDO}) : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM, codePoint:"<"};
16208
+ }
16209
+ if (codePoint === "@") {
16210
+ if (this.threeCodePointsWouldStartAnIdentSequence.apply(this, (0,$jscomp.arrayFromIterable)(this.nextThreeInputCodePoints()))) {
16211
+ var ident = this.consumeIdentSequence();
16212
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.AT_KEYWORD, name:ident};
16213
+ }
16214
+ return {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM, codePoint:"@"};
16215
+ }
16216
+ return codePoint === "\\" ? this.streamStartsWithValidEscape() ? (this.reconsumeTheCurrentInputCodePoint(), this.consumeIdentLikeToken()) : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM, codePoint:"\\"} : codePoint === "[" ? {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_SQUARE} : codePoint === "]" ? {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_SQUARE} :
16217
+ codePoint === "{" ? {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.OPEN_CURLY} : codePoint === "}" ? {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_CURLY} : this.isDigit(codePoint) ? (this.reconsumeTheCurrentInputCodePoint(), this.consumeNumericToken()) : this.isIdentStartCodePoint(codePoint) ? (this.reconsumeTheCurrentInputCodePoint(), this.consumeIdentLikeToken()) :
16218
+ {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DELIM, codePoint:codePoint};
16219
+ };
16220
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeComments = function() {
16221
+ for (var anyComments = !1; this.nextNInputCodePoints(2) === "/*";) {
16222
+ anyComments = !0;
16223
+ this.consumeNInputCodePoints(2);
16224
+ var endIndex = this.css.indexOf("*/", this.pos);
16225
+ if (endIndex === -1) {
16226
+ this.pos = this.css.length;
16227
+ break;
16228
+ }
16229
+ this.pos = endIndex + 2;
16230
+ }
16231
+ return anyComments;
16232
+ };
16233
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeString = function(quote) {
16234
+ for (var stringToken = {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.STRING, value:""};;) {
16235
+ var codePoint = this.nextInputCodePoint();
16236
+ this.consumeTheNextInputCodePoint();
16237
+ if (codePoint === void 0 || codePoint === quote) {
16238
+ return stringToken;
16239
+ }
16240
+ if (this.isNewline(codePoint)) {
16241
+ return this.reconsumeTheCurrentInputCodePoint(), stringToken.value = "", stringToken;
16242
+ }
16243
+ if (codePoint === "\\") {
16244
+ if (this.nextInputCodePoint() !== void 0) {
16245
+ if (this.isNewline(this.nextInputCodePoint())) {
16246
+ this.consumeTheNextInputCodePoint();
16247
+ } else {
16248
+ var escapedCodePoint = this.consumeEscapedCodePoint();
16249
+ stringToken.value += escapedCodePoint;
16250
+ }
16251
+ }
16252
+ } else {
16253
+ stringToken.value += codePoint;
16254
+ }
16255
+ }
16256
+ };
16257
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeEscapedCodePoint = function() {
16258
+ var codePoint = this.nextInputCodePoint();
16259
+ this.consumeTheNextInputCodePoint();
16260
+ if (codePoint === void 0) {
16261
+ return "\ufffd";
16262
+ }
16263
+ if (this.isHexDigit(codePoint)) {
16264
+ for (var hexDigits = codePoint; this.isHexDigit(this.nextInputCodePoint()) && hexDigits.length < 6;) {
16265
+ hexDigits += this.nextInputCodePoint(), this.consumeTheNextInputCodePoint();
16266
+ }
16267
+ this.isWhitespace(this.nextInputCodePoint()) && this.consumeTheNextInputCodePoint();
16268
+ return String.fromCodePoint(parseInt(hexDigits, 16));
16269
+ }
16270
+ return codePoint;
16271
+ };
16272
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeAsMuchWhitespaceAsPossible = function() {
16273
+ for (; this.isWhitespace(this.nextInputCodePoint());) {
16274
+ this.consumeTheNextInputCodePoint();
16275
+ }
16276
+ };
16277
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeIdentSequence = function() {
16278
+ for (var result = "";;) {
16279
+ var codePoint = this.nextInputCodePoint();
16280
+ this.consumeTheNextInputCodePoint();
16281
+ var codePoint2 = this.nextInputCodePoint();
16282
+ if (this.isIdentCodePoint(codePoint)) {
16283
+ result += codePoint;
16284
+ } else if (this.twoCodePointsAreValidEscape(codePoint, codePoint2)) {
16285
+ result += this.consumeEscapedCodePoint();
16286
+ } else {
16287
+ return this.reconsumeTheCurrentInputCodePoint(), result;
16288
+ }
16289
+ }
16290
+ };
16291
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeIdentLikeToken = function() {
16292
+ var ident = this.consumeIdentSequence();
16293
+ if (/^url$/i.test(ident) && this.nextInputCodePoint() === "(") {
16294
+ for (this.consumeTheNextInputCodePoint(); this.nextTwoInputsPointsAreWhitespace();) {
16295
+ this.consumeTheNextInputCodePoint();
16296
+ }
16297
+ var nextTwo = this.nextTwoInputCodePoints();
16298
+ return this.isWhitespace(nextTwo[0]) && (nextTwo[1] === '"' || nextTwo[1] === "'") || nextTwo[0] === '"' || nextTwo[0] === "'" ? {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.FUNCTION, lowercaseName:"url"} : this.consumeUrlToken();
16299
+ }
16300
+ return this.nextInputCodePoint() === "(" ? (this.consumeTheNextInputCodePoint(), {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.FUNCTION, lowercaseName:ident.toLowerCase()}) : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.IDENT, ident:ident};
16301
+ };
16302
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeUrlToken = function() {
16303
+ var url = "";
16304
+ for (this.consumeAsMuchWhitespaceAsPossible();;) {
16305
+ var codePoint = this.nextInputCodePoint();
16306
+ this.consumeTheNextInputCodePoint();
16307
+ if (codePoint === ")" || codePoint === void 0) {
16308
+ return this.createFunctionUrlToken(url);
16309
+ }
16310
+ if (this.isWhitespace(codePoint)) {
16311
+ this.consumeAsMuchWhitespaceAsPossible();
16312
+ if (this.nextInputCodePoint() === ")" || this.nextInputCodePoint() === void 0) {
16313
+ return this.consumeTheNextInputCodePoint(), this.createFunctionUrlToken(url);
16314
+ }
16315
+ this.consumeRemnantsOfBadUrl();
16316
+ return this.createFunctionUrlToken("");
16317
+ }
16318
+ if (codePoint === '"' || codePoint === "'" || codePoint === "(" || this.isNonPrintableCodePoint(codePoint)) {
16319
+ return this.consumeRemnantsOfBadUrl(), this.createFunctionUrlToken("");
16320
+ }
16321
+ if (codePoint === "\\") {
16322
+ if (this.streamStartsWithValidEscape()) {
16323
+ url += this.consumeEscapedCodePoint();
16324
+ } else {
16325
+ return this.consumeRemnantsOfBadUrl(), this.createFunctionUrlToken("");
16326
+ }
16327
+ } else {
16328
+ url += codePoint;
16329
+ }
16330
+ }
16331
+ };
16332
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.createFunctionUrlToken = function(url) {
16333
+ return [{tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.FUNCTION, lowercaseName:"url"}, {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.STRING, value:url}, {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.CLOSE_PAREN}];
16334
+ };
16335
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeRemnantsOfBadUrl = function() {
16336
+ for (;;) {
16337
+ var codePoint = this.nextInputCodePoint();
16338
+ this.consumeTheNextInputCodePoint();
16339
+ if (codePoint === void 0 || codePoint === ")") {
16340
+ break;
16341
+ } else {
16342
+ this.streamStartsWithValidEscape() && this.consumeEscapedCodePoint();
16343
+ }
16344
+ }
16345
+ };
16346
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeNumber = function() {
16347
+ var repr = "", next = this.nextInputCodePoint();
16348
+ if (next === "+" || next === "-") {
16349
+ this.consumeTheNextInputCodePoint(), repr += next;
16350
+ }
16351
+ repr += this.consumeDigits();
16352
+ var next2 = this.css[this.pos + 1];
16353
+ this.nextInputCodePoint() === "." && this.isDigit(next2) && (this.consumeTheNextInputCodePoint(), repr += "." + this.consumeDigits());
16354
+ var next$jscomp$0 = this.nextInputCodePoint(), next2$jscomp$0 = this.css[this.pos + 1], next3 = this.css[this.pos + 2];
16355
+ if (next$jscomp$0 === "e" || next$jscomp$0 === "E") {
16356
+ next2$jscomp$0 !== "+" && next2$jscomp$0 !== "-" || !this.isDigit(next3) ? this.isDigit(next2$jscomp$0) && (this.consumeTheNextInputCodePoint(), repr += next$jscomp$0 + this.consumeDigits()) : (this.consumeNInputCodePoints(2), repr += next$jscomp$0 + next2$jscomp$0 + this.consumeDigits());
16357
+ }
16358
+ return repr;
16359
+ };
16360
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeDigits = function() {
16361
+ for (var repr = ""; this.isDigit(this.nextInputCodePoint());) {
16362
+ repr += this.nextInputCodePoint(), this.consumeTheNextInputCodePoint();
16363
+ }
16364
+ return repr;
16365
+ };
16366
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.consumeNumericToken = function() {
16367
+ var repr = this.consumeNumber();
16368
+ return this.threeCodePointsWouldStartAnIdentSequence.apply(this, (0,$jscomp.arrayFromIterable)(this.nextThreeInputCodePoints())) ? {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.DIMENSION, repr:repr, dimension:this.consumeIdentSequence()} : this.nextInputCodePoint() === "%" ? (this.consumeTheNextInputCodePoint(), {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.PERCENTAGE,
16369
+ repr:repr}) : {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.NUMBER, repr:repr};
16370
+ };
16371
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.nextTwoInputsPointsAreWhitespace = function() {
16372
+ var $jscomp$this$m282935782$26 = this;
16373
+ return this.nextTwoInputCodePoints().every(function(c) {
16374
+ return $jscomp$this$m282935782$26.isWhitespace(c);
16375
+ });
16376
+ };
16377
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.twoCodePointsAreValidEscape = function(codePoint1, codePoint2) {
16378
+ return codePoint1 === "\\" && codePoint2 !== "\n";
16379
+ };
16380
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.streamStartsWithValidEscape = function() {
16381
+ return this.twoCodePointsAreValidEscape(this.currentInputCodePoint(), this.nextInputCodePoint());
16382
+ };
16383
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.threeCodePointsWouldStartANumber = function(codePoint1, codePoint2, codePoint3) {
16384
+ return codePoint1 === "+" || codePoint1 === "-" ? this.isDigit(codePoint2) || codePoint2 === "." && this.isDigit(codePoint3) : codePoint1 === "." ? this.isDigit(codePoint2) : this.isDigit(codePoint1);
16385
+ };
16386
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.streamStartsWithANumber = function() {
16387
+ return this.threeCodePointsWouldStartANumber.apply(this, [this.currentInputCodePoint()].concat((0,$jscomp.arrayFromIterable)(this.nextTwoInputCodePoints())));
16388
+ };
16389
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.threeCodePointsWouldStartAnIdentSequence = function(codePoint1, codePoint2, codePoint3) {
16390
+ return codePoint1 === "-" ? this.isIdentStartCodePoint(codePoint2) || codePoint2 === "-" ? !0 : this.twoCodePointsAreValidEscape(codePoint2, codePoint3) ? !0 : !1 : this.isIdentStartCodePoint(codePoint1) ? !0 : codePoint1 === "\\" ? this.twoCodePointsAreValidEscape(codePoint1, codePoint2) : !1;
16391
+ };
16392
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.streamStartsWithAnIdentSequence = function() {
16393
+ return this.threeCodePointsWouldStartAnIdentSequence.apply(this, [this.currentInputCodePoint()].concat((0,$jscomp.arrayFromIterable)(this.nextTwoInputCodePoints())));
16394
+ };
16395
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.isDigit = function(codePoint) {
16396
+ return codePoint !== void 0 && codePoint >= "0" && codePoint <= "9";
16397
+ };
16398
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.isHexDigit = function(codePoint) {
16399
+ return codePoint !== void 0 && module$contents$safevalues$builders$html_sanitizer$css$tokenizer_HEX_DIGIT_REGEX.test(codePoint);
16400
+ };
16401
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.isNewline = function(codePoint) {
16402
+ return codePoint === "\n";
16403
+ };
16404
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.isWhitespace = function(codePoint) {
16405
+ return codePoint === " " || codePoint === "\t" || this.isNewline(codePoint);
16406
+ };
16407
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.isIdentCodePoint = function(codePoint) {
16408
+ return codePoint === void 0 ? !1 : /^([A-Za-z0-9_-]|[^\u0000-\u007f])$/.test(codePoint);
16409
+ };
16410
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.isIdentStartCodePoint = function(codePoint) {
16411
+ return codePoint === void 0 ? !1 : /^([A-Za-z_]|[^\u0000-\u007f])$/.test(codePoint);
16412
+ };
16413
+ module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer.prototype.isNonPrintableCodePoint = function(codePoint) {
16414
+ return codePoint === void 0 ? !1 : /[\x00-\x08\x0b\x0e-\x1f\x7f]/.test(codePoint);
16415
+ };
16416
+ function module$contents$safevalues$builders$html_sanitizer$css$tokenizer_tokenizeCss(css) {
16417
+ return (new module$contents$safevalues$builders$html_sanitizer$css$tokenizer_Tokenizer(css)).tokenize();
16418
+ }
16419
+ ;var module$exports$safevalues$builders$html_sanitizer$css$sanitizer = {}, module$contents$safevalues$builders$html_sanitizer$css$sanitizer_module = module$contents$safevalues$builders$html_sanitizer$css$sanitizer_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/css/sanitizer.closure.js"}, module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer =
16420
+ function(propertyAllowlist, functionAllowlist, resourceUrlPolicy, allowKeyframes, propertyDiscarders) {
16421
+ this.propertyAllowlist = propertyAllowlist;
16422
+ this.functionAllowlist = functionAllowlist;
16423
+ this.resourceUrlPolicy = resourceUrlPolicy;
16424
+ this.allowKeyframes = allowKeyframes;
16425
+ this.propertyDiscarders = propertyDiscarders;
16426
+ this.inertDocument = document.implementation.createHTMLDocument();
16427
+ };
16428
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.getStyleSheet = function(cssText) {
16429
+ var style = this.inertDocument.createElement("style"), safeStyle = module$contents$safevalues$internals$style_sheet_impl_createStyleSheetInternal(cssText);
16430
+ (0,module$exports$safevalues$dom$elements$style.setTextContent)(style, safeStyle);
16431
+ this.inertDocument.head.appendChild(style);
16432
+ var sheet = style.sheet;
16433
+ style.remove();
16434
+ return sheet;
16435
+ };
16436
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.getStyleDeclaration = function(cssText) {
16437
+ var div = this.inertDocument.createElement("div");
16438
+ div.style.cssText = cssText;
16439
+ this.inertDocument.body.appendChild(div);
16440
+ var style = div.style;
16441
+ div.remove();
16442
+ return style;
16443
+ };
16444
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.hasShadowDomEscapingTokens = function(token, nextToken) {
16445
+ return token.tokenKind !== module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.COLON ? !1 : nextToken.tokenKind === module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.IDENT && nextToken.ident.toLowerCase() === "host" || nextToken.tokenKind === module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.FUNCTION && (nextToken.lowercaseName === "host" ||
16446
+ nextToken.lowercaseName === "host-context") ? !0 : !1;
16447
+ };
16448
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeSelector = function(selector) {
16449
+ for (var tokens = module$contents$safevalues$builders$html_sanitizer$css$tokenizer_tokenizeCss(selector), i = 0; i < tokens.length - 1; i++) {
16450
+ if (this.hasShadowDomEscapingTokens(tokens[i], tokens[i + 1])) {
16451
+ return null;
16452
+ }
16453
+ }
16454
+ return module$contents$safevalues$builders$html_sanitizer$css$serializer_serializeTokens(tokens);
16455
+ };
16456
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeValue = function(propertyName, value, calledFromStyleElement) {
16457
+ for (var tokens = module$contents$safevalues$builders$html_sanitizer$css$tokenizer_tokenizeCss(value), i = 0; i < tokens.length; i++) {
16458
+ var token = tokens[i];
16459
+ if (token.tokenKind === module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.FUNCTION) {
16460
+ if (!this.functionAllowlist.has(token.lowercaseName)) {
16461
+ return null;
16462
+ }
16463
+ if (token.lowercaseName === "url") {
16464
+ var nextToken = tokens[i + 1], $jscomp$optchain$tmpm1577590584$0 = void 0;
16465
+ if ((($jscomp$optchain$tmpm1577590584$0 = nextToken) == null ? void 0 : $jscomp$optchain$tmpm1577590584$0.tokenKind) !== module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.STRING) {
16466
+ return null;
16467
+ }
16468
+ var parsedUrl = module$contents$safevalues$builders$html_sanitizer$resource_url_policy_parseUrl(nextToken.value);
16469
+ this.resourceUrlPolicy && (parsedUrl = this.resourceUrlPolicy(parsedUrl, {type:calledFromStyleElement ? module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.STYLE_ELEMENT : module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.STYLE_ATTRIBUTE, propertyName:propertyName}));
16470
+ if (!parsedUrl) {
16471
+ return null;
16472
+ }
16473
+ tokens[i + 1] = {tokenKind:module$exports$safevalues$builders$html_sanitizer$css$tokens.CssTokenKind.STRING, value:parsedUrl.toString()};
16474
+ i++;
16475
+ }
16476
+ }
16477
+ }
16478
+ return module$contents$safevalues$builders$html_sanitizer$css$serializer_serializeTokens(tokens);
16479
+ };
16480
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeKeyframeRule = function(rule) {
16481
+ var sanitizedProperties = this.sanitizeStyleDeclaration(rule.style, !0);
16482
+ return rule.keyText + " { " + sanitizedProperties + " }";
16483
+ };
16484
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeKeyframesRule = function(keyframesRule) {
16485
+ if (!this.allowKeyframes) {
16486
+ return null;
16487
+ }
16488
+ for (var keyframeRules = [], $jscomp$iter$35 = (0,$jscomp.makeIterator)(keyframesRule.cssRules), $jscomp$key$m1577590584$1$rule = $jscomp$iter$35.next(); !$jscomp$key$m1577590584$1$rule.done; $jscomp$key$m1577590584$1$rule = $jscomp$iter$35.next()) {
16489
+ var rule = $jscomp$key$m1577590584$1$rule.value;
16490
+ if (rule instanceof CSSKeyframeRule) {
16491
+ var sanitizedRule = this.sanitizeKeyframeRule(rule);
16492
+ sanitizedRule && keyframeRules.push(sanitizedRule);
16493
+ }
16494
+ }
16495
+ return "@keyframes " + module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(keyframesRule.name) + " { " + keyframeRules.join(" ") + " }";
16496
+ };
16497
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.isPropertyNameAllowed = function(name) {
16498
+ if (!this.propertyAllowlist.has(name)) {
16499
+ return !1;
16500
+ }
16501
+ for (var $jscomp$iter$36 = (0,$jscomp.makeIterator)(this.propertyDiscarders), $jscomp$key$m1577590584$2$discarder = $jscomp$iter$36.next(); !$jscomp$key$m1577590584$2$discarder.done; $jscomp$key$m1577590584$2$discarder = $jscomp$iter$36.next()) {
16502
+ var discarder = $jscomp$key$m1577590584$2$discarder.value;
16503
+ if (discarder(name)) {
16504
+ return !1;
16505
+ }
16506
+ }
16507
+ return !0;
16508
+ };
16509
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeProperty = function(name, value, isImportant, calledFromStyleElement) {
16510
+ if (!this.isPropertyNameAllowed(name)) {
16511
+ return null;
16512
+ }
16513
+ var sanitizedValue = this.sanitizeValue(name, value, calledFromStyleElement);
16514
+ return sanitizedValue ? module$contents$safevalues$builders$html_sanitizer$css$serializer_escapeIdent(name) + ": " + sanitizedValue + (isImportant ? " !important" : "") : null;
16515
+ };
16516
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeStyleDeclaration = function(style, calledFromStyleElement) {
16517
+ for (var sortedPropertyNames = [].concat((0,$jscomp.arrayFromIterable)(style)).sort(), sanitizedProperties = "", $jscomp$iter$37 = (0,$jscomp.makeIterator)(sortedPropertyNames), $jscomp$key$m1577590584$3$name = $jscomp$iter$37.next(); !$jscomp$key$m1577590584$3$name.done; $jscomp$key$m1577590584$3$name = $jscomp$iter$37.next()) {
16518
+ var name = $jscomp$key$m1577590584$3$name.value, value = style.getPropertyValue(name), isImportant = style.getPropertyPriority(name) === "important", sanitizedProperty = this.sanitizeProperty(name, value, isImportant, calledFromStyleElement);
16519
+ sanitizedProperty && (sanitizedProperties += sanitizedProperty + ";");
16520
+ }
16521
+ return sanitizedProperties;
16522
+ };
16523
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeStyleRule = function(rule) {
16524
+ var selector = this.sanitizeSelector(rule.selectorText);
16525
+ if (!selector) {
16526
+ return null;
16527
+ }
16528
+ var sanitizedProperties = this.sanitizeStyleDeclaration(rule.style, !0);
16529
+ return selector + " { " + sanitizedProperties + " }";
16530
+ };
16531
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeStyleElement = function(cssText) {
16532
+ for (var rules = this.getStyleSheet(cssText).cssRules, output = [], $jscomp$iter$38 = (0,$jscomp.makeIterator)(rules), $jscomp$key$m1577590584$4$rule = $jscomp$iter$38.next(); !$jscomp$key$m1577590584$4$rule.done; $jscomp$key$m1577590584$4$rule = $jscomp$iter$38.next()) {
16533
+ var rule = $jscomp$key$m1577590584$4$rule.value;
16534
+ if (rule instanceof CSSStyleRule) {
16535
+ var sanitizedRule = this.sanitizeStyleRule(rule);
16536
+ sanitizedRule && output.push(sanitizedRule);
16537
+ } else if (rule instanceof CSSKeyframesRule) {
16538
+ var sanitizedRule$jscomp$0 = this.sanitizeKeyframesRule(rule);
16539
+ sanitizedRule$jscomp$0 && output.push(sanitizedRule$jscomp$0);
16540
+ }
16541
+ }
16542
+ return output.join("\n");
16543
+ };
16544
+ module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer.prototype.sanitizeStyleAttribute = function(cssText) {
16545
+ var styleDeclaration = this.getStyleDeclaration(cssText);
16546
+ return this.sanitizeStyleDeclaration(styleDeclaration, !1);
16547
+ };
16548
+ function module$contents$safevalues$builders$html_sanitizer$css$sanitizer_sanitizeStyleElement(cssText, propertyAllowlist, functionAllowlist, resourceUrlPolicy, allowKeyframes, propertyDiscarders) {
16549
+ return (new module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer(propertyAllowlist, functionAllowlist, resourceUrlPolicy, allowKeyframes, propertyDiscarders)).sanitizeStyleElement(cssText);
16550
+ }
16551
+ module$exports$safevalues$builders$html_sanitizer$css$sanitizer.sanitizeStyleElement = module$contents$safevalues$builders$html_sanitizer$css$sanitizer_sanitizeStyleElement;
16552
+ function module$contents$safevalues$builders$html_sanitizer$css$sanitizer_sanitizeStyleAttribute(cssText, propertyAllowlist, functionAllowlist, resourceUrlPolicy, propertyDiscarders) {
16553
+ return (new module$contents$safevalues$builders$html_sanitizer$css$sanitizer_CssSanitizer(propertyAllowlist, functionAllowlist, resourceUrlPolicy, !1, propertyDiscarders)).sanitizeStyleAttribute(cssText);
16554
+ }
16555
+ module$exports$safevalues$builders$html_sanitizer$css$sanitizer.sanitizeStyleAttribute = module$contents$safevalues$builders$html_sanitizer$css$sanitizer_sanitizeStyleAttribute;
16556
+ var module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder = {}, module$contents$safevalues$builders$html_sanitizer$html_sanitizer_builder_module = module$contents$safevalues$builders$html_sanitizer$html_sanitizer_builder_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/html_sanitizer_builder.closure.js"};
16557
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder = function() {
15954
16558
  this.calledBuild = !1;
15955
16559
  this.sanitizerTable = module$exports$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table.DEFAULT_SANITIZER_TABLE;
15956
16560
  };
15957
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.onlyAllowElements = function(elementSet) {
15958
- for (var allowedElements = new Set(), allowedElementPolicies = new Map(), $jscomp$iter$35 = (0,$jscomp.makeIterator)(elementSet), $jscomp$key$435282654$0$element = $jscomp$iter$35.next(); !$jscomp$key$435282654$0$element.done; $jscomp$key$435282654$0$element = $jscomp$iter$35.next()) {
15959
- var element = $jscomp$key$435282654$0$element.value;
16561
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.onlyAllowElements = function(elementSet) {
16562
+ for (var allowedElements = new Set(), allowedElementPolicies = new Map(), $jscomp$iter$39 = (0,$jscomp.makeIterator)(elementSet), $jscomp$key$435282654$21$element = $jscomp$iter$39.next(); !$jscomp$key$435282654$21$element.done; $jscomp$key$435282654$21$element = $jscomp$iter$39.next()) {
16563
+ var element = $jscomp$key$435282654$21$element.value;
15960
16564
  element = element.toUpperCase();
15961
16565
  if (!this.sanitizerTable.isAllowedElement(element)) {
15962
16566
  throw Error("Element: " + element + ", is not allowed by html5_contract.textpb");
@@ -15967,15 +16571,15 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
15967
16571
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(allowedElements, allowedElementPolicies, this.sanitizerTable.allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
15968
16572
  return this;
15969
16573
  };
15970
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.allowCustomElement = function(element, allowedAttributes) {
16574
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.allowCustomElement = function(element, allowedAttributes) {
15971
16575
  var allowedElements = new Set(this.sanitizerTable.allowedElements), allowedElementPolicies = new Map(this.sanitizerTable.elementPolicies);
15972
16576
  element = element.toUpperCase();
15973
16577
  if (!module$contents$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table_isCustomElement(element)) {
15974
16578
  throw Error("Element: " + element + " is not a custom element");
15975
16579
  }
15976
16580
  if (allowedAttributes) {
15977
- for (var elementPolicy = new Map(), $jscomp$iter$36 = (0,$jscomp.makeIterator)(allowedAttributes), $jscomp$key$435282654$1$attribute = $jscomp$iter$36.next(); !$jscomp$key$435282654$1$attribute.done; $jscomp$key$435282654$1$attribute = $jscomp$iter$36.next()) {
15978
- elementPolicy.set($jscomp$key$435282654$1$attribute.value.toLowerCase(), {policyAction:module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP});
16581
+ for (var elementPolicy = new Map(), $jscomp$iter$40 = (0,$jscomp.makeIterator)(allowedAttributes), $jscomp$key$435282654$22$attribute = $jscomp$iter$40.next(); !$jscomp$key$435282654$22$attribute.done; $jscomp$key$435282654$22$attribute = $jscomp$iter$40.next()) {
16582
+ elementPolicy.set($jscomp$key$435282654$22$attribute.value.toLowerCase(), {policyAction:module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP});
15979
16583
  }
15980
16584
  allowedElementPolicies.set(element, elementPolicy);
15981
16585
  } else {
@@ -15984,16 +16588,16 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
15984
16588
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(allowedElements, allowedElementPolicies, this.sanitizerTable.allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
15985
16589
  return this;
15986
16590
  };
15987
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.onlyAllowAttributes = function(attributeSet) {
15988
- for (var allowedGlobalAttributes = new Set(), globalAttributePolicies = new Map(), elementPolicies = new Map(), $jscomp$iter$37 = (0,$jscomp.makeIterator)(attributeSet), $jscomp$key$435282654$2$attribute = $jscomp$iter$37.next(); !$jscomp$key$435282654$2$attribute.done; $jscomp$key$435282654$2$attribute = $jscomp$iter$37.next()) {
15989
- var attribute = $jscomp$key$435282654$2$attribute.value;
16591
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.onlyAllowAttributes = function(attributeSet) {
16592
+ for (var allowedGlobalAttributes = new Set(), globalAttributePolicies = new Map(), elementPolicies = new Map(), $jscomp$iter$41 = (0,$jscomp.makeIterator)(attributeSet), $jscomp$key$435282654$23$attribute = $jscomp$iter$41.next(); !$jscomp$key$435282654$23$attribute.done; $jscomp$key$435282654$23$attribute = $jscomp$iter$41.next()) {
16593
+ var attribute = $jscomp$key$435282654$23$attribute.value;
15990
16594
  this.sanitizerTable.allowedGlobalAttributes.has(attribute) && allowedGlobalAttributes.add(attribute);
15991
16595
  this.sanitizerTable.globalAttributePolicies.has(attribute) && globalAttributePolicies.set(attribute, this.sanitizerTable.globalAttributePolicies.get(attribute));
15992
16596
  }
15993
- for (var $jscomp$iter$39 = (0,$jscomp.makeIterator)(this.sanitizerTable.elementPolicies.entries()), $jscomp$key$435282654$4$ = $jscomp$iter$39.next(); !$jscomp$key$435282654$4$.done; $jscomp$key$435282654$4$ = $jscomp$iter$39.next()) {
15994
- for (var $jscomp$destructuring$var37 = (0,$jscomp.makeIterator)($jscomp$key$435282654$4$.value), elementName__tsickle_destructured_1 = $jscomp$destructuring$var37.next().value, originalElementPolicy__tsickle_destructured_2 = $jscomp$destructuring$var37.next().value, elementName = elementName__tsickle_destructured_1, newElementPolicy = new Map(), $jscomp$iter$38 = (0,$jscomp.makeIterator)(originalElementPolicy__tsickle_destructured_2.entries()), $jscomp$key$435282654$3$ = $jscomp$iter$38.next(); !$jscomp$key$435282654$3$.done; $jscomp$key$435282654$3$ =
15995
- $jscomp$iter$38.next()) {
15996
- var $jscomp$destructuring$var39 = (0,$jscomp.makeIterator)($jscomp$key$435282654$3$.value), attribute__tsickle_destructured_3 = $jscomp$destructuring$var39.next().value, attributePolicy__tsickle_destructured_4 = $jscomp$destructuring$var39.next().value, attribute$jscomp$0 = attribute__tsickle_destructured_3, attributePolicy = attributePolicy__tsickle_destructured_4;
16597
+ for (var $jscomp$iter$43 = (0,$jscomp.makeIterator)(this.sanitizerTable.elementPolicies.entries()), $jscomp$key$435282654$25$ = $jscomp$iter$43.next(); !$jscomp$key$435282654$25$.done; $jscomp$key$435282654$25$ = $jscomp$iter$43.next()) {
16598
+ for (var $jscomp$destructuring$var37 = (0,$jscomp.makeIterator)($jscomp$key$435282654$25$.value), elementName__tsickle_destructured_1 = $jscomp$destructuring$var37.next().value, originalElementPolicy__tsickle_destructured_2 = $jscomp$destructuring$var37.next().value, elementName = elementName__tsickle_destructured_1, newElementPolicy = new Map(), $jscomp$iter$42 = (0,$jscomp.makeIterator)(originalElementPolicy__tsickle_destructured_2.entries()), $jscomp$key$435282654$24$ = $jscomp$iter$42.next(); !$jscomp$key$435282654$24$.done; $jscomp$key$435282654$24$ =
16599
+ $jscomp$iter$42.next()) {
16600
+ var $jscomp$destructuring$var39 = (0,$jscomp.makeIterator)($jscomp$key$435282654$24$.value), attribute__tsickle_destructured_3 = $jscomp$destructuring$var39.next().value, attributePolicy__tsickle_destructured_4 = $jscomp$destructuring$var39.next().value, attribute$jscomp$0 = attribute__tsickle_destructured_3, attributePolicy = attributePolicy__tsickle_destructured_4;
15997
16601
  attributeSet.has(attribute$jscomp$0) && newElementPolicy.set(attribute$jscomp$0, attributePolicy);
15998
16602
  }
15999
16603
  elementPolicies.set(elementName, newElementPolicy);
@@ -16001,9 +16605,9 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
16001
16605
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(this.sanitizerTable.allowedElements, elementPolicies, allowedGlobalAttributes, globalAttributePolicies);
16002
16606
  return this;
16003
16607
  };
16004
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.allowDataAttributes = function(attributes) {
16005
- for (var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes), $jscomp$iter$40 = (0,$jscomp.makeIterator)(attributes), $jscomp$key$435282654$5$attribute = $jscomp$iter$40.next(); !$jscomp$key$435282654$5$attribute.done; $jscomp$key$435282654$5$attribute = $jscomp$iter$40.next()) {
16006
- var attribute = $jscomp$key$435282654$5$attribute.value;
16608
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.allowDataAttributes = function(attributes) {
16609
+ for (var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes), $jscomp$iter$44 = (0,$jscomp.makeIterator)(attributes), $jscomp$key$435282654$26$attribute = $jscomp$iter$44.next(); !$jscomp$key$435282654$26$attribute.done; $jscomp$key$435282654$26$attribute = $jscomp$iter$44.next()) {
16610
+ var attribute = $jscomp$key$435282654$26$attribute.value;
16007
16611
  if (attribute.indexOf("data-") !== 0) {
16008
16612
  throw Error("data attribute: " + attribute + ' does not begin with the prefix "data-"');
16009
16613
  }
@@ -16012,34 +16616,38 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
16012
16616
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(this.sanitizerTable.allowedElements, this.sanitizerTable.elementPolicies, allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
16013
16617
  return this;
16014
16618
  };
16015
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.allowStyleAttributes = function() {
16619
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.allowStyleAttributes = function() {
16016
16620
  var globalAttributePolicies = new Map(this.sanitizerTable.globalAttributePolicies);
16017
16621
  globalAttributePolicies.set("style", {policyAction:module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP_AND_SANITIZE_STYLE});
16018
16622
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(this.sanitizerTable.allowedElements, this.sanitizerTable.elementPolicies, this.sanitizerTable.allowedGlobalAttributes, globalAttributePolicies);
16019
16623
  return this;
16020
16624
  };
16021
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.allowClassAttributes = function() {
16625
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.allowClassAttributes = function() {
16022
16626
  var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes);
16023
16627
  allowedGlobalAttributes.add("class");
16024
16628
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(this.sanitizerTable.allowedElements, this.sanitizerTable.elementPolicies, allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
16025
16629
  return this;
16026
16630
  };
16027
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.allowIdAttributes = function() {
16631
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.allowIdAttributes = function() {
16028
16632
  var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes);
16029
16633
  allowedGlobalAttributes.add("id");
16030
16634
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(this.sanitizerTable.allowedElements, this.sanitizerTable.elementPolicies, allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
16031
16635
  return this;
16032
16636
  };
16033
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.allowIdReferenceAttributes = function() {
16637
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.allowIdReferenceAttributes = function() {
16034
16638
  var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes);
16035
16639
  allowedGlobalAttributes.add("aria-activedescendant").add("aria-controls").add("aria-labelledby").add("aria-owns").add("for").add("list");
16036
16640
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(this.sanitizerTable.allowedElements, this.sanitizerTable.elementPolicies, allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
16037
16641
  return this;
16038
16642
  };
16039
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.withResourceUrlPolicy = function(resourceUrlPolicy) {
16643
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.prototype.withResourceUrlPolicy = function(resourceUrlPolicy) {
16040
16644
  this.resourceUrlPolicy = resourceUrlPolicy;
16041
16645
  return this;
16042
16646
  };
16647
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder = function() {
16648
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.apply(this, arguments);
16649
+ };
16650
+ $jscomp.inherits(module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder, module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder);
16043
16651
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.build = function() {
16044
16652
  if (this.calledBuild) {
16045
16653
  throw Error("this sanitizer has already called build");
@@ -16047,6 +16655,44 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
16047
16655
  this.calledBuild = !0;
16048
16656
  return new module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl(this.sanitizerTable, module$exports$safevalues$internals$secrets.secretToken, void 0, void 0, this.resourceUrlPolicy);
16049
16657
  };
16658
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.CssSanitizerBuilder = function() {
16659
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder.apply(this, arguments);
16660
+ this.transitionsAllowed = this.animationsAllowed = !1;
16661
+ };
16662
+ $jscomp.inherits(module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.CssSanitizerBuilder, module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.BaseSanitizerBuilder);
16663
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.CssSanitizerBuilder.prototype.allowAnimations = function() {
16664
+ this.animationsAllowed = !0;
16665
+ return this;
16666
+ };
16667
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.CssSanitizerBuilder.prototype.allowTransitions = function() {
16668
+ this.transitionsAllowed = !0;
16669
+ return this;
16670
+ };
16671
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.CssSanitizerBuilder.prototype.build = function() {
16672
+ var $jscomp$this$435282654$17 = this;
16673
+ this.extendSanitizerTableForCss();
16674
+ var propertyDiscarders = [];
16675
+ this.animationsAllowed || propertyDiscarders.push(function(property) {
16676
+ return /^(animation|offset)(-|$)/.test(property);
16677
+ });
16678
+ this.transitionsAllowed || propertyDiscarders.push(function(property) {
16679
+ return /^transition(-|$)/.test(property);
16680
+ });
16681
+ return new module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl(this.sanitizerTable, module$exports$safevalues$internals$secrets.secretToken, function(cssText) {
16682
+ return module$contents$safevalues$builders$html_sanitizer$css$sanitizer_sanitizeStyleElement(cssText, module$exports$safevalues$builders$html_sanitizer$css$allowlists.CSS_PROPERTY_ALLOWLIST, module$exports$safevalues$builders$html_sanitizer$css$allowlists.CSS_FUNCTION_ALLOWLIST, $jscomp$this$435282654$17.resourceUrlPolicy, $jscomp$this$435282654$17.animationsAllowed, propertyDiscarders);
16683
+ }, function(cssText) {
16684
+ return module$contents$safevalues$builders$html_sanitizer$css$sanitizer_sanitizeStyleAttribute(cssText, module$exports$safevalues$builders$html_sanitizer$css$allowlists.CSS_PROPERTY_ALLOWLIST, module$exports$safevalues$builders$html_sanitizer$css$allowlists.CSS_FUNCTION_ALLOWLIST, $jscomp$this$435282654$17.resourceUrlPolicy, propertyDiscarders);
16685
+ }, this.resourceUrlPolicy);
16686
+ };
16687
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.CssSanitizerBuilder.prototype.extendSanitizerTableForCss = function() {
16688
+ var allowedElements = new Set(this.sanitizerTable.allowedElements), allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes), globalAttributePolicies = new Map(this.sanitizerTable.globalAttributePolicies);
16689
+ allowedElements.add("STYLE");
16690
+ globalAttributePolicies.set("style", {policyAction:module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP_AND_SANITIZE_STYLE});
16691
+ allowedGlobalAttributes.add("id");
16692
+ allowedGlobalAttributes.add("name");
16693
+ allowedGlobalAttributes.add("class");
16694
+ this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(allowedElements, this.sanitizerTable.elementPolicies, allowedGlobalAttributes, globalAttributePolicies);
16695
+ };
16050
16696
  var module$exports$safevalues$builders$resource_url_builders = {}, module$contents$safevalues$builders$resource_url_builders_module = module$contents$safevalues$builders$resource_url_builders_module || {id:"third_party/javascript/safevalues/builders/resource_url_builders.closure.js"}, module$contents$safevalues$builders$resource_url_builders_Primitive;
16051
16697
  function module$contents$safevalues$builders$resource_url_builders_hasValidOrigin(base) {
16052
16698
  if (!/^https:\/\//.test(base) && !/^\/\//.test(base)) {
@@ -16952,7 +17598,7 @@ goog.dom.flattenElement = function(element) {
16952
17598
  }
16953
17599
  };
16954
17600
  goog.dom.getChildren = function(element) {
16955
- return element.children != void 0 ? element.children : Array.prototype.filter.call(element.childNodes, function(node) {
17601
+ return goog.FEATURESET_YEAR > 2018 || element.children != void 0 ? element.children : Array.prototype.filter.call(element.childNodes, function(node) {
16956
17602
  return node.nodeType == goog.dom.NodeType.ELEMENT;
16957
17603
  });
16958
17604
  };
@@ -16963,7 +17609,7 @@ goog.dom.getLastElementChild = function(node) {
16963
17609
  return node.lastElementChild !== void 0 ? node.lastElementChild : goog.dom.getNextElementNode_(node.lastChild, !1);
16964
17610
  };
16965
17611
  goog.dom.getNextElementSibling = function(node) {
16966
- return node.nextElementSibling !== void 0 ? node.nextElementSibling : goog.dom.getNextElementNode_(node.nextSibling, !0);
17612
+ return goog.FEATURESET_YEAR > 2018 || node.nextElementSibling !== void 0 ? node.nextElementSibling : goog.dom.getNextElementNode_(node.nextSibling, !0);
16967
17613
  };
16968
17614
  goog.dom.getPreviousElementSibling = function(node) {
16969
17615
  return node.previousElementSibling !== void 0 ? node.previousElementSibling : goog.dom.getNextElementNode_(node.previousSibling, !1);
@@ -17008,18 +17654,13 @@ goog.dom.isWindow = function(obj) {
17008
17654
  return goog.isObject(obj) && obj.window == obj;
17009
17655
  };
17010
17656
  goog.dom.getParentElement = function(element) {
17011
- var parent;
17012
- if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && (parent = element.parentElement)) {
17013
- return parent;
17014
- }
17015
- parent = element.parentNode;
17016
- return goog.dom.isElement(parent) ? parent : null;
17657
+ return element.parentElement || null;
17017
17658
  };
17018
17659
  goog.dom.contains = function(parent, descendant) {
17019
17660
  if (!parent || !descendant) {
17020
17661
  return !1;
17021
17662
  }
17022
- if (parent.contains && descendant.nodeType == goog.dom.NodeType.ELEMENT) {
17663
+ if (goog.FEATURESET_YEAR > 2018 || parent.contains && descendant.nodeType == goog.dom.NodeType.ELEMENT) {
17023
17664
  return parent == descendant || parent.contains(descendant);
17024
17665
  }
17025
17666
  if (typeof parent.compareDocumentPosition != "undefined") {
@@ -17277,6 +17918,9 @@ goog.dom.getNodeAtOffset = function(parent, offset, opt_result) {
17277
17918
  return cur;
17278
17919
  };
17279
17920
  goog.dom.isNodeList = function(val) {
17921
+ if (goog.FEATURESET_YEAR >= 2018) {
17922
+ return !!val && typeof val.length == "number" && typeof val.item == "function";
17923
+ }
17280
17924
  if (val && typeof val.length == "number") {
17281
17925
  if (goog.isObject(val)) {
17282
17926
  return typeof val.item == "function" || typeof val.item == "string";
@@ -18819,7 +19463,7 @@ goog.net.XhrIo.prototype.send = function(url, opt_method, opt_content, opt_heade
18819
19463
  headers.set(key, opt_headers[key]);
18820
19464
  }
18821
19465
  } else if (typeof opt_headers.keys === "function" && typeof opt_headers.get === "function") {
18822
- for (var $jscomp$iter$41 = (0,$jscomp.makeIterator)(opt_headers.keys()), $jscomp$key$m71669834$54$key = $jscomp$iter$41.next(); !$jscomp$key$m71669834$54$key.done; $jscomp$key$m71669834$54$key = $jscomp$iter$41.next()) {
19466
+ for (var $jscomp$iter$45 = (0,$jscomp.makeIterator)(opt_headers.keys()), $jscomp$key$m71669834$54$key = $jscomp$iter$45.next(); !$jscomp$key$m71669834$54$key.done; $jscomp$key$m71669834$54$key = $jscomp$iter$45.next()) {
18823
19467
  var key$jscomp$0 = $jscomp$key$m71669834$54$key.value;
18824
19468
  headers.set(key$jscomp$0, opt_headers.get(key$jscomp$0));
18825
19469
  }
@@ -18831,7 +19475,7 @@ goog.net.XhrIo.prototype.send = function(url, opt_method, opt_content, opt_heade
18831
19475
  return goog.string.caseInsensitiveEquals(goog.net.XhrIo.CONTENT_TYPE_HEADER, header);
18832
19476
  }), contentIsFormData = goog.global.FormData && content instanceof goog.global.FormData;
18833
19477
  !module$contents$goog$array_contains(goog.net.XhrIo.METHODS_WITH_FORM_DATA, method) || contentTypeKey || contentIsFormData || headers.set(goog.net.XhrIo.CONTENT_TYPE_HEADER, goog.net.XhrIo.FORM_CONTENT_TYPE);
18834
- for (var $jscomp$iter$42 = (0,$jscomp.makeIterator)(headers), $jscomp$key$m71669834$55$ = $jscomp$iter$42.next(); !$jscomp$key$m71669834$55$.done; $jscomp$key$m71669834$55$ = $jscomp$iter$42.next()) {
19478
+ for (var $jscomp$iter$46 = (0,$jscomp.makeIterator)(headers), $jscomp$key$m71669834$55$ = $jscomp$iter$46.next(); !$jscomp$key$m71669834$55$.done; $jscomp$key$m71669834$55$ = $jscomp$iter$46.next()) {
18835
19479
  var $jscomp$destructuring$var41 = (0,$jscomp.makeIterator)($jscomp$key$m71669834$55$.value), key$jscomp$1 = $jscomp$destructuring$var41.next().value, value = $jscomp$destructuring$var41.next().value;
18836
19480
  this.xhr_.setRequestHeader(key$jscomp$1, value);
18837
19481
  }
@@ -19147,7 +19791,7 @@ var $jscomp$templatelit$m1153655765$99 = $jscomp.createTemplateTagFirstArg(["htt
19147
19791
  ee.apiclient = {};
19148
19792
  var module$contents$ee$apiclient_apiclient = {};
19149
19793
  ee.apiclient.VERSION = module$exports$ee$apiVersion.V1;
19150
- ee.apiclient.API_CLIENT_VERSION = "0.1.415";
19794
+ ee.apiclient.API_CLIENT_VERSION = "0.1.416";
19151
19795
  ee.apiclient.NULL_VALUE = module$exports$eeapiclient$domain_object.NULL_VALUE;
19152
19796
  ee.apiclient.PromiseRequestService = module$exports$eeapiclient$promise_request_service.PromiseRequestService;
19153
19797
  ee.apiclient.MakeRequestParams = module$contents$eeapiclient$request_params_MakeRequestParams;
@@ -19316,7 +19960,7 @@ module$contents$ee$apiclient_BatchRequestService.prototype.send = function(param
19316
19960
  module$contents$ee$apiclient_BatchRequestService.prototype.makeRequest = function(params) {
19317
19961
  };
19318
19962
  module$contents$ee$apiclient_apiclient.parseBatchReply = function(contentType, responseText, handle) {
19319
- for (var boundary = contentType.split("; boundary=")[1], $jscomp$iter$43 = (0,$jscomp.makeIterator)(responseText.split("--" + boundary)), $jscomp$key$m1153655765$100$part = $jscomp$iter$43.next(); !$jscomp$key$m1153655765$100$part.done; $jscomp$key$m1153655765$100$part = $jscomp$iter$43.next()) {
19963
+ for (var boundary = contentType.split("; boundary=")[1], $jscomp$iter$47 = (0,$jscomp.makeIterator)(responseText.split("--" + boundary)), $jscomp$key$m1153655765$100$part = $jscomp$iter$47.next(); !$jscomp$key$m1153655765$100$part.done; $jscomp$key$m1153655765$100$part = $jscomp$iter$47.next()) {
19320
19964
  var groups = $jscomp$key$m1153655765$100$part.value.split("\r\n\r\n");
19321
19965
  if (!(groups.length < 3)) {
19322
19966
  var id = groups[0].match(/\r\nContent-ID: <response-([^>]*)>/)[1], status = Number(groups[1].match(/^HTTP\S*\s(\d+)\s/)[1]), text = groups.slice(2).join("\r\n\r\n");
@@ -19445,8 +20089,8 @@ module$contents$ee$apiclient_apiclient.send = function(path, params, callback, m
19445
20089
  var profileHookAtCallTime = module$contents$ee$apiclient_apiclient.profileHook_, contentType = "application/x-www-form-urlencoded";
19446
20090
  body && (contentType = "application/json", method && method.startsWith("multipart") && (contentType = method, method = "POST"));
19447
20091
  method = method || "POST";
19448
- var headers = {"Content-Type":contentType}, version = "0.1.415";
19449
- version === "0.1.415" && (version = "latest");
20092
+ var headers = {"Content-Type":contentType}, version = "0.1.416";
20093
+ version === "0.1.416" && (version = "latest");
19450
20094
  headers[module$contents$ee$apiclient_apiclient.API_CLIENT_VERSION_HEADER] = "ee-js/" + version;
19451
20095
  var authToken = module$contents$ee$apiclient_apiclient.getAuthToken();
19452
20096
  if (authToken != null) {
@@ -19579,7 +20223,7 @@ module$contents$ee$apiclient_apiclient.handleAuthResult_ = function(success, err
19579
20223
  }
19580
20224
  };
19581
20225
  module$contents$ee$apiclient_apiclient.makeRequest_ = function(params) {
19582
- for (var request = new goog.Uri.QueryData(), $jscomp$iter$44 = (0,$jscomp.makeIterator)(Object.entries(params)), $jscomp$key$m1153655765$101$ = $jscomp$iter$44.next(); !$jscomp$key$m1153655765$101$.done; $jscomp$key$m1153655765$101$ = $jscomp$iter$44.next()) {
20226
+ for (var request = new goog.Uri.QueryData(), $jscomp$iter$48 = (0,$jscomp.makeIterator)(Object.entries(params)), $jscomp$key$m1153655765$101$ = $jscomp$iter$48.next(); !$jscomp$key$m1153655765$101$.done; $jscomp$key$m1153655765$101$ = $jscomp$iter$48.next()) {
19583
20227
  var $jscomp$destructuring$var49 = (0,$jscomp.makeIterator)($jscomp$key$m1153655765$101$.value), name = $jscomp$destructuring$var49.next().value, item = $jscomp$destructuring$var49.next().value;
19584
20228
  request.set(name, item);
19585
20229
  }
@@ -19934,7 +20578,7 @@ ee.rpc_convert.algorithms = function(result) {
19934
20578
  algorithm.deprecated && (internalAlgorithm.deprecated = algorithm.deprecationReason);
19935
20579
  algorithm.sourceCodeUri && (internalAlgorithm.sourceCodeUri = algorithm.sourceCodeUri);
19936
20580
  return internalAlgorithm;
19937
- }, internalAlgorithms = {}, $jscomp$iter$45 = (0,$jscomp.makeIterator)(result.algorithms || []), $jscomp$key$m29782521$48$algorithm = $jscomp$iter$45.next(); !$jscomp$key$m29782521$48$algorithm.done; $jscomp$key$m29782521$48$algorithm = $jscomp$iter$45.next()) {
20581
+ }, internalAlgorithms = {}, $jscomp$iter$49 = (0,$jscomp.makeIterator)(result.algorithms || []), $jscomp$key$m29782521$48$algorithm = $jscomp$iter$49.next(); !$jscomp$key$m29782521$48$algorithm.done; $jscomp$key$m29782521$48$algorithm = $jscomp$iter$49.next()) {
19938
20582
  var algorithm = $jscomp$key$m29782521$48$algorithm.value, name = algorithm.name.replace(/^algorithms\//, "");
19939
20583
  internalAlgorithms[name] = convertAlgorithm(algorithm);
19940
20584
  }
@@ -20084,9 +20728,9 @@ ee.rpc_convert.getListToListAssets = function(param) {
20084
20728
  param.bbox && (assetsRequest.region = ee.rpc_convert.boundingBoxToGeoJson(param.bbox));
20085
20729
  param.region && (assetsRequest.region = param.region);
20086
20730
  param.bbox && param.region && console.warn("Multiple request parameters converted to region");
20087
- for (var allKeys = "id num starttime endtime bbox region".split(" "), $jscomp$iter$46 = (0,$jscomp.makeIterator)(Object.keys(param).filter(function(k) {
20731
+ for (var allKeys = "id num starttime endtime bbox region".split(" "), $jscomp$iter$50 = (0,$jscomp.makeIterator)(Object.keys(param).filter(function(k) {
20088
20732
  return !allKeys.includes(k);
20089
- })), $jscomp$key$m29782521$49$key = $jscomp$iter$46.next(); !$jscomp$key$m29782521$49$key.done; $jscomp$key$m29782521$49$key = $jscomp$iter$46.next()) {
20733
+ })), $jscomp$key$m29782521$49$key = $jscomp$iter$50.next(); !$jscomp$key$m29782521$49$key.done; $jscomp$key$m29782521$49$key = $jscomp$iter$50.next()) {
20090
20734
  console.warn("Unrecognized key " + $jscomp$key$m29782521$49$key.value + " ignored");
20091
20735
  }
20092
20736
  return ee.rpc_convert.processListImagesParams(assetsRequest);
@@ -20310,7 +20954,7 @@ ee.rpc_convert.parseFilterParamsFromListImages_ = function(params) {
20310
20954
  })) {
20311
20955
  throw Error('Filter parameter "properties" must be an array of strings');
20312
20956
  }
20313
- for (var $jscomp$iter$47 = (0,$jscomp.makeIterator)(params.properties), $jscomp$key$m29782521$50$propertyQuery = $jscomp$iter$47.next(); !$jscomp$key$m29782521$50$propertyQuery.done; $jscomp$key$m29782521$50$propertyQuery = $jscomp$iter$47.next()) {
20957
+ for (var $jscomp$iter$51 = (0,$jscomp.makeIterator)(params.properties), $jscomp$key$m29782521$50$propertyQuery = $jscomp$iter$51.next(); !$jscomp$key$m29782521$50$propertyQuery.done; $jscomp$key$m29782521$50$propertyQuery = $jscomp$iter$51.next()) {
20314
20958
  queryStrings.push($jscomp$key$m29782521$50$propertyQuery.value.trim().replace(/^(properties\.)?/, "properties."));
20315
20959
  }
20316
20960
  delete params.properties;
@@ -20647,7 +21291,7 @@ ee.Serializer.encodeCloudApiPretty = function(obj) {
20647
21291
  if (!goog.isObject(object)) {
20648
21292
  return object;
20649
21293
  }
20650
- for (var ret = Array.isArray(object) ? [] : {}, isNode = object instanceof Object.getPrototypeOf(module$exports$eeapiclient$ee_api_client.ValueNode), $jscomp$iter$48 = (0,$jscomp.makeIterator)(Object.entries(isNode ? object.Serializable$values : object)), $jscomp$key$m759255156$28$ = $jscomp$iter$48.next(); !$jscomp$key$m759255156$28$.done; $jscomp$key$m759255156$28$ = $jscomp$iter$48.next()) {
21294
+ for (var ret = Array.isArray(object) ? [] : {}, isNode = object instanceof Object.getPrototypeOf(module$exports$eeapiclient$ee_api_client.ValueNode), $jscomp$iter$52 = (0,$jscomp.makeIterator)(Object.entries(isNode ? object.Serializable$values : object)), $jscomp$key$m759255156$28$ = $jscomp$iter$52.next(); !$jscomp$key$m759255156$28$.done; $jscomp$key$m759255156$28$ = $jscomp$iter$52.next()) {
20651
21295
  var $jscomp$destructuring$var53 = (0,$jscomp.makeIterator)($jscomp$key$m759255156$28$.value), key = $jscomp$destructuring$var53.next().value, val = $jscomp$destructuring$var53.next().value;
20652
21296
  isNode ? val !== null && (ret[key] = key === "functionDefinitionValue" && val.body != null ? {argumentNames:val.argumentNames, body:walkObject(values[val.body])} : key === "functionInvocationValue" && val.functionReference != null ? {arguments:module$contents$goog$object_map(val.arguments, walkObject), functionReference:walkObject(values[val.functionReference])} : key === "constantValue" ? val === module$exports$eeapiclient$domain_object.NULL_VALUE ?
20653
21297
  null : val : walkObject(val)) : ret[key] = walkObject(val);
@@ -20771,7 +21415,7 @@ ExpressionOptimizer.prototype.optimizeValue = function(value, depth) {
20771
21415
  return storeInSourceMap(value, optimized$jscomp$1);
20772
21416
  }
20773
21417
  if (value.dictionaryValue != null) {
20774
- for (var values = {}, constantValues = {}, $jscomp$iter$49 = (0,$jscomp.makeIterator)(Object.entries(value.dictionaryValue.values || {})), $jscomp$key$m759255156$29$ = $jscomp$iter$49.next(); !$jscomp$key$m759255156$29$.done; $jscomp$key$m759255156$29$ = $jscomp$iter$49.next()) {
21418
+ for (var values = {}, constantValues = {}, $jscomp$iter$53 = (0,$jscomp.makeIterator)(Object.entries(value.dictionaryValue.values || {})), $jscomp$key$m759255156$29$ = $jscomp$iter$53.next(); !$jscomp$key$m759255156$29$.done; $jscomp$key$m759255156$29$ = $jscomp$iter$53.next()) {
20775
21419
  var $jscomp$destructuring$var55 = (0,$jscomp.makeIterator)($jscomp$key$m759255156$29$.value), k = $jscomp$destructuring$var55.next().value, v = $jscomp$destructuring$var55.next().value;
20776
21420
  values[k] = this.optimizeValue(v, depth + 3);
20777
21421
  constantValues !== null && isConst(values[k]) ? constantValues[k] = serializeConst(values[k].constantValue) : constantValues = null;
@@ -20783,7 +21427,7 @@ ExpressionOptimizer.prototype.optimizeValue = function(value, depth) {
20783
21427
  return storeInSourceMap(value, optimized$jscomp$2);
20784
21428
  }
20785
21429
  if (value.functionInvocationValue != null) {
20786
- for (var inv = value.functionInvocationValue, args = {}, $jscomp$iter$50 = (0,$jscomp.makeIterator)(Object.keys(inv.arguments || {})), $jscomp$key$m759255156$30$k = $jscomp$iter$50.next(); !$jscomp$key$m759255156$30$k.done; $jscomp$key$m759255156$30$k = $jscomp$iter$50.next()) {
21430
+ for (var inv = value.functionInvocationValue, args = {}, $jscomp$iter$54 = (0,$jscomp.makeIterator)(Object.keys(inv.arguments || {})), $jscomp$key$m759255156$30$k = $jscomp$iter$54.next(); !$jscomp$key$m759255156$30$k.done; $jscomp$key$m759255156$30$k = $jscomp$iter$54.next()) {
20787
21431
  var k$jscomp$0 = $jscomp$key$m759255156$30$k.value;
20788
21432
  args[k$jscomp$0] = this.optimizeValue(inv.arguments[k$jscomp$0], depth + 3);
20789
21433
  }
@@ -21681,7 +22325,7 @@ ee.data.createAsset = function(value, opt_path, opt_force, opt_properties, opt_c
21681
22325
  value.gcsLocation && !value.cloudStorageLocation && (value.cloudStorageLocation = value.gcsLocation, delete value.gcsLocation);
21682
22326
  value.cloudStorageLocation && (value.cloudStorageLocation = new module$exports$eeapiclient$ee_api_client.CloudStorageLocation(value.cloudStorageLocation));
21683
22327
  opt_properties && !value.properties && (value.properties = Object.assign({}, opt_properties));
21684
- for (var $jscomp$iter$51 = (0,$jscomp.makeIterator)(["title", "description"]), $jscomp$key$m1075644492$123$prop = $jscomp$iter$51.next(); !$jscomp$key$m1075644492$123$prop.done; $jscomp$key$m1075644492$123$prop = $jscomp$iter$51.next()) {
22328
+ for (var $jscomp$iter$55 = (0,$jscomp.makeIterator)(["title", "description"]), $jscomp$key$m1075644492$123$prop = $jscomp$iter$55.next(); !$jscomp$key$m1075644492$123$prop.done; $jscomp$key$m1075644492$123$prop = $jscomp$iter$55.next()) {
21685
22329
  var prop = $jscomp$key$m1075644492$123$prop.value;
21686
22330
  if (value[prop]) {
21687
22331
  var $jscomp$compprop17 = {};
@@ -23954,7 +24598,7 @@ module$contents$ee$batch_Export.prefixImageFormatOptions_ = function(taskConfig,
23954
24598
  })) {
23955
24599
  throw Error("Parameter specified at least twice: once in config, and once in config format options.");
23956
24600
  }
23957
- for (var prefix = module$contents$ee$batch_FORMAT_PREFIX_MAP[imageFormat], validOptionKeys = module$contents$ee$batch_FORMAT_OPTIONS_MAP[imageFormat], prefixedOptions = {}, $jscomp$iter$52 = (0,$jscomp.makeIterator)(Object.entries(formatOptions)), $jscomp$key$1827622838$35$ = $jscomp$iter$52.next(); !$jscomp$key$1827622838$35$.done; $jscomp$key$1827622838$35$ = $jscomp$iter$52.next()) {
24601
+ for (var prefix = module$contents$ee$batch_FORMAT_PREFIX_MAP[imageFormat], validOptionKeys = module$contents$ee$batch_FORMAT_OPTIONS_MAP[imageFormat], prefixedOptions = {}, $jscomp$iter$56 = (0,$jscomp.makeIterator)(Object.entries(formatOptions)), $jscomp$key$1827622838$35$ = $jscomp$iter$56.next(); !$jscomp$key$1827622838$35$.done; $jscomp$key$1827622838$35$ = $jscomp$iter$56.next()) {
23958
24602
  var $jscomp$destructuring$var60 = (0,$jscomp.makeIterator)($jscomp$key$1827622838$35$.value), key = $jscomp$destructuring$var60.next().value, value = $jscomp$destructuring$var60.next().value;
23959
24603
  if (!module$contents$goog$array_contains(validOptionKeys, key)) {
23960
24604
  var validKeysMsg = validOptionKeys.join(", ");
@@ -26975,29 +27619,29 @@ ee.data.Profiler.Format.prototype.toString = function() {
26975
27619
  ee.data.Profiler.Format.TEXT = new ee.data.Profiler.Format("text");
26976
27620
  ee.data.Profiler.Format.JSON = new ee.data.Profiler.Format("json");
26977
27621
  (function() {
26978
- var exportedFnInfo = {}, orderedFnNames = "ee.ApiFunction._apply ee.ApiFunction.lookup ee.ApiFunction._call ee.batch.Export.image.toCloudStorage ee.batch.Export.video.toCloudStorage ee.batch.Export.table.toFeatureView ee.batch.Export.video.toDrive ee.batch.Export.table.toDrive ee.batch.Export.image.toDrive ee.batch.Export.table.toCloudStorage ee.batch.Export.table.toAsset ee.batch.Export.classifier.toAsset ee.batch.Export.image.toAsset ee.batch.Export.map.toCloudStorage ee.batch.Export.videoMap.toCloudStorage ee.batch.Export.table.toBigQuery ee.Collection.prototype.map ee.Collection.prototype.iterate ee.Collection.prototype.limit ee.Collection.prototype.sort ee.Collection.prototype.filterMetadata ee.Collection.prototype.filterBounds ee.Collection.prototype.filterDate ee.Collection.prototype.filter ee.ComputedObject.prototype.serialize ee.ComputedObject.prototype.getInfo ee.ComputedObject.prototype.aside ee.ComputedObject.prototype.evaluate ee.data.cancelTask ee.data.getVideoThumbId ee.data.resetWorkloadTag ee.data.getFilmstripThumbId ee.data.getTaskStatus ee.data.updateAsset ee.data.updateTask ee.data.getList ee.data.startProcessing ee.data.startIngestion ee.data.createFolder ee.data.authenticateViaOauth ee.data.makeThumbUrl ee.data.setAssetAcl ee.data.getMapId ee.data.listAssets ee.data.renameAsset ee.data.authenticate ee.data.getTaskList ee.data.setAssetProperties ee.data.copyAsset ee.data.getTileUrl ee.data.getTableDownloadId ee.data.listBuckets ee.data.makeTableDownloadUrl ee.data.getTaskListWithLimit ee.data.deleteAsset ee.data.startTableIngestion ee.data.getAssetRootQuota ee.data.cancelOperation ee.data.listOperations ee.data.getDownloadId ee.data.authenticateViaPopup ee.data.makeDownloadUrl ee.data.getFeatureViewTilesKey ee.data.getAssetAcl ee.data.getWorkloadTag ee.data.listImages ee.data.listFeatures ee.data.getAssetRoots ee.data.getAsset ee.data.authenticateViaPrivateKey ee.data.getOperation ee.data.setWorkloadTag ee.data.createAssetHome ee.data.newTaskId ee.data.createAsset ee.data.computeValue ee.data.getInfo ee.data.getThumbId ee.data.setDefaultWorkloadTag ee.Date ee.Deserializer.fromJSON ee.Deserializer.decodeCloudApi ee.Deserializer.fromCloudApiJSON ee.Deserializer.decode ee.Dictionary ee.InitState ee.apply ee.TILE_SIZE ee.initialize ee.reset ee.call ee.Algorithms ee.Element.prototype.set ee.Encodable.SourceFrame ee.Feature ee.Feature.prototype.getInfo ee.Feature.prototype.getMapId ee.Feature.prototype.getMap ee.FeatureCollection ee.FeatureCollection.prototype.getInfo ee.FeatureCollection.prototype.getMapId ee.FeatureCollection.prototype.select ee.FeatureCollection.prototype.getDownloadURL ee.FeatureCollection.prototype.getMap ee.Filter.prototype.not ee.Filter.lte ee.Filter.gte ee.Filter.eq ee.Filter ee.Filter.date ee.Filter.metadata ee.Filter.bounds ee.Filter.and ee.Filter.gt ee.Filter.neq ee.Filter.lt ee.Filter.inList ee.Filter.or ee.Function.prototype.apply ee.Function.prototype.call ee.Geometry.BBox ee.Geometry.Rectangle ee.Geometry ee.Geometry.MultiPoint ee.Geometry.prototype.toGeoJSON ee.Geometry.MultiLineString ee.Geometry.Point ee.Geometry.prototype.toGeoJSONString ee.Geometry.LinearRing ee.Geometry.MultiPolygon ee.Geometry.LineString ee.Geometry.Polygon ee.Geometry.prototype.serialize ee.Image ee.Image.prototype.getThumbURL ee.Image.prototype.getMapId ee.Image.prototype.getMap ee.Image.prototype.rename ee.Image.prototype.getDownloadURL ee.Image.prototype.getThumbId ee.Image.rgb ee.Image.prototype.clip ee.Image.cat ee.Image.prototype.select ee.Image.prototype.expression ee.Image.prototype.getInfo ee.ImageCollection.prototype.getMap ee.ImageCollection ee.ImageCollection.prototype.getVideoThumbURL ee.ImageCollection.prototype.getMapId ee.ImageCollection.prototype.getFilmstripThumbURL ee.ImageCollection.prototype.getInfo ee.ImageCollection.prototype.select ee.ImageCollection.prototype.linkCollection ee.ImageCollection.prototype.first ee.List ee.Number ee.Serializer.toJSON ee.Serializer.toCloudApiJSON ee.Serializer.encodeCloudApi ee.Serializer.toReadableJSON ee.Serializer.toReadableCloudApiJSON ee.Serializer.encodeCloudApiPretty ee.Serializer.encode ee.String ee.Terrain".split(" "),
26979
- orderedParamLists = [["name", "namedArgs"], ["name"], ["name", "var_args"], "image opt_description opt_bucket opt_fileNamePrefix opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_shardSize opt_fileDimensions opt_skipEmptyTiles opt_fileFormat opt_formatOptions opt_priority".split(" "), "collection opt_description opt_bucket opt_fileNamePrefix opt_framesPerSecond opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_maxFrames opt_priority".split(" "),
26980
- "collection opt_description opt_assetId opt_maxFeaturesPerTile opt_thinningStrategy opt_thinningRanking opt_zOrderRanking opt_priority".split(" "), "collection opt_description opt_folder opt_fileNamePrefix opt_framesPerSecond opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_maxFrames opt_priority".split(" "), "collection opt_description opt_folder opt_fileNamePrefix opt_fileFormat opt_selectors opt_maxVertices opt_priority".split(" "), "image opt_description opt_folder opt_fileNamePrefix opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_shardSize opt_fileDimensions opt_skipEmptyTiles opt_fileFormat opt_formatOptions opt_priority".split(" "),
27622
+ var exportedFnInfo = {}, orderedFnNames = "ee.ApiFunction._apply ee.ApiFunction.lookup ee.ApiFunction._call ee.batch.Export.videoMap.toCloudStorage ee.batch.Export.table.toBigQuery ee.batch.Export.image.toCloudStorage ee.batch.Export.video.toCloudStorage ee.batch.Export.table.toFeatureView ee.batch.Export.video.toDrive ee.batch.Export.table.toDrive ee.batch.Export.image.toDrive ee.batch.Export.table.toCloudStorage ee.batch.Export.table.toAsset ee.batch.Export.classifier.toAsset ee.batch.Export.image.toAsset ee.batch.Export.map.toCloudStorage ee.Collection.prototype.filter ee.Collection.prototype.filterDate ee.Collection.prototype.map ee.Collection.prototype.iterate ee.Collection.prototype.limit ee.Collection.prototype.sort ee.Collection.prototype.filterMetadata ee.Collection.prototype.filterBounds ee.ComputedObject.prototype.evaluate ee.ComputedObject.prototype.aside ee.ComputedObject.prototype.getInfo ee.ComputedObject.prototype.serialize ee.data.createAssetHome ee.data.createAsset ee.data.newTaskId ee.data.getInfo ee.data.computeValue ee.data.setDefaultWorkloadTag ee.data.cancelTask ee.data.resetWorkloadTag ee.data.getThumbId ee.data.getVideoThumbId ee.data.updateAsset ee.data.updateTask ee.data.getTaskStatus ee.data.getList ee.data.startIngestion ee.data.getFilmstripThumbId ee.data.createFolder ee.data.startProcessing ee.data.authenticateViaOauth ee.data.setAssetAcl ee.data.makeThumbUrl ee.data.getMapId ee.data.renameAsset ee.data.listAssets ee.data.getTaskList ee.data.setAssetProperties ee.data.copyAsset ee.data.authenticate ee.data.listBuckets ee.data.getTileUrl ee.data.getTableDownloadId ee.data.makeTableDownloadUrl ee.data.getTaskListWithLimit ee.data.startTableIngestion ee.data.getAssetRootQuota ee.data.listOperations ee.data.deleteAsset ee.data.getDownloadId ee.data.cancelOperation ee.data.authenticateViaPopup ee.data.listImages ee.data.getAssetAcl ee.data.getWorkloadTag ee.data.getFeatureViewTilesKey ee.data.listFeatures ee.data.makeDownloadUrl ee.data.getAsset ee.data.getAssetRoots ee.data.setWorkloadTag ee.data.getOperation ee.data.authenticateViaPrivateKey ee.Date ee.Deserializer.decodeCloudApi ee.Deserializer.fromCloudApiJSON ee.Deserializer.decode ee.Deserializer.fromJSON ee.Dictionary ee.Algorithms ee.InitState ee.apply ee.TILE_SIZE ee.initialize ee.call ee.reset ee.Element.prototype.set ee.Encodable.SourceFrame ee.Feature.prototype.getInfo ee.Feature.prototype.getMapId ee.Feature.prototype.getMap ee.Feature ee.FeatureCollection.prototype.getDownloadURL ee.FeatureCollection.prototype.getMap ee.FeatureCollection ee.FeatureCollection.prototype.getInfo ee.FeatureCollection.prototype.getMapId ee.FeatureCollection.prototype.select ee.Filter.gte ee.Filter ee.Filter.eq ee.Filter.date ee.Filter.metadata ee.Filter.bounds ee.Filter.and ee.Filter.prototype.not ee.Filter.gt ee.Filter.lt ee.Filter.neq ee.Filter.inList ee.Filter.or ee.Filter.lte ee.Function.prototype.call ee.Function.prototype.apply ee.Geometry.prototype.toGeoJSON ee.Geometry.LinearRing ee.Geometry.MultiPoint ee.Geometry.Rectangle ee.Geometry.BBox ee.Geometry.prototype.toGeoJSONString ee.Geometry.Polygon ee.Geometry.LineString ee.Geometry ee.Geometry.prototype.serialize ee.Geometry.Point ee.Geometry.MultiLineString ee.Geometry.MultiPolygon ee.Image.rgb ee.Image.prototype.clip ee.Image.prototype.getInfo ee.Image.prototype.getMapId ee.Image.prototype.getDownloadURL ee.Image.prototype.rename ee.Image.prototype.getMap ee.Image.prototype.getThumbId ee.Image.prototype.select ee.Image.prototype.getThumbURL ee.Image.cat ee.Image ee.Image.prototype.expression ee.ImageCollection.prototype.getInfo ee.ImageCollection.prototype.select ee.ImageCollection.prototype.getVideoThumbURL ee.ImageCollection.prototype.getMap ee.ImageCollection.prototype.linkCollection ee.ImageCollection.prototype.getFilmstripThumbURL ee.ImageCollection.prototype.getMapId ee.ImageCollection.prototype.first ee.ImageCollection ee.List ee.Number ee.Serializer.toReadableJSON ee.Serializer.encode ee.Serializer.toReadableCloudApiJSON ee.Serializer.toCloudApiJSON ee.Serializer.encodeCloudApiPretty ee.Serializer.toJSON ee.Serializer.encodeCloudApi ee.String ee.Terrain".split(" "),
27623
+ orderedParamLists = [["name", "namedArgs"], ["name"], ["name", "var_args"], "collection opt_description opt_bucket opt_fileNamePrefix opt_framesPerSecond opt_writePublicTiles opt_minZoom opt_maxZoom opt_scale opt_region opt_skipEmptyTiles opt_minTimeMachineZoomSubset opt_maxTimeMachineZoomSubset opt_tileWidth opt_tileHeight opt_tileStride opt_videoFormat opt_version opt_mapsApiKey opt_bucketCorsUris opt_priority".split(" "), "collection opt_description opt_table opt_overwrite opt_append opt_selectors opt_maxVertices opt_priority".split(" "),
27624
+ "image opt_description opt_bucket opt_fileNamePrefix opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_shardSize opt_fileDimensions opt_skipEmptyTiles opt_fileFormat opt_formatOptions opt_priority".split(" "), "collection opt_description opt_bucket opt_fileNamePrefix opt_framesPerSecond opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_maxFrames opt_priority".split(" "), "collection opt_description opt_assetId opt_maxFeaturesPerTile opt_thinningStrategy opt_thinningRanking opt_zOrderRanking opt_priority".split(" "),
27625
+ "collection opt_description opt_folder opt_fileNamePrefix opt_framesPerSecond opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_maxFrames opt_priority".split(" "), "collection opt_description opt_folder opt_fileNamePrefix opt_fileFormat opt_selectors opt_maxVertices opt_priority".split(" "), "image opt_description opt_folder opt_fileNamePrefix opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_shardSize opt_fileDimensions opt_skipEmptyTiles opt_fileFormat opt_formatOptions opt_priority".split(" "),
26981
27626
  "collection opt_description opt_bucket opt_fileNamePrefix opt_fileFormat opt_selectors opt_maxVertices opt_priority".split(" "), ["collection", "opt_description", "opt_assetId", "opt_maxVertices", "opt_priority"], ["classifier", "opt_description", "opt_assetId", "opt_priority"], "image opt_description opt_assetId opt_pyramidingPolicy opt_dimensions opt_region opt_scale opt_crs opt_crsTransform opt_maxPixels opt_shardSize opt_priority".split(" "), "image opt_description opt_bucket opt_fileFormat opt_path opt_writePublicTiles opt_scale opt_maxZoom opt_minZoom opt_region opt_skipEmptyTiles opt_mapsApiKey opt_bucketCorsUris opt_priority".split(" "),
26982
- "collection opt_description opt_bucket opt_fileNamePrefix opt_framesPerSecond opt_writePublicTiles opt_minZoom opt_maxZoom opt_scale opt_region opt_skipEmptyTiles opt_minTimeMachineZoomSubset opt_maxTimeMachineZoomSubset opt_tileWidth opt_tileHeight opt_tileStride opt_videoFormat opt_version opt_mapsApiKey opt_bucketCorsUris opt_priority".split(" "), "collection opt_description opt_table opt_overwrite opt_append opt_selectors opt_maxVertices opt_priority".split(" "), ["algorithm", "opt_dropNulls"],
26983
- ["algorithm", "opt_first"], ["max", "opt_property", "opt_ascending"], ["property", "opt_ascending"], ["name", "operator", "value"], ["geometry"], ["start", "opt_end"], ["filter"], ["legacy"], ["opt_callback"], ["func", "var_args"], ["callback"], ["taskId", "opt_callback"], ["params", "opt_callback"], ["opt_resetDefault"], ["params", "opt_callback"], ["taskId", "opt_callback"], ["assetId", "asset", "updateFields", "opt_callback"], ["taskId", "action", "opt_callback"], ["params", "opt_callback"],
26984
- ["taskId", "params", "opt_callback"], ["taskId", "request", "opt_callback"], ["path", "opt_force", "opt_callback"], "clientId success opt_error opt_extraScopes opt_onImmediateFailed opt_suppressDefaultScopes".split(" "), ["id"], ["assetId", "aclUpdate", "opt_callback"], ["params", "opt_callback"], ["parent", "opt_params", "opt_callback"], ["sourceId", "destinationId", "opt_callback"], ["clientId", "success", "opt_error", "opt_extraScopes", "opt_onImmediateFailed"], ["opt_callback"], ["assetId",
26985
- "properties", "opt_callback"], ["sourceId", "destinationId", "opt_overwrite", "opt_callback"], ["id", "x", "y", "z"], ["params", "opt_callback"], ["project", "opt_callback"], ["id"], ["opt_limit", "opt_callback"], ["assetId", "opt_callback"], ["taskId", "request", "opt_callback"], ["rootId", "opt_callback"], ["operationName", "opt_callback"], ["opt_limit", "opt_callback"], ["params", "opt_callback"], ["opt_success", "opt_error"], ["id"], ["params", "opt_callback"], ["assetId", "opt_callback"],
26986
- [], ["parent", "opt_params", "opt_callback"], ["asset", "params", "opt_callback"], ["opt_callback"], ["id", "opt_callback"], ["privateKey", "opt_success", "opt_error", "opt_extraScopes", "opt_suppressDefaultScopes"], ["operationName", "opt_callback"], ["tag"], ["requestedId", "opt_callback"], ["opt_count", "opt_callback"], ["value", "opt_path", "opt_force", "opt_properties", "opt_callback"], ["obj", "opt_callback"], ["id", "opt_callback"], ["params", "opt_callback"], ["tag"], ["date", "opt_tz"],
26987
- ["json"], ["json"], ["json"], ["json"], ["opt_dict"], [], ["func", "namedArgs"], [], "opt_baseurl opt_tileurl opt_successCallback opt_errorCallback opt_xsrfToken opt_project".split(" "), [], ["func", "var_args"], [], ["var_args"], [], ["geometry", "opt_properties"], ["opt_callback"], ["opt_visParams", "opt_callback"], ["opt_visParams", "opt_callback"], ["args", "opt_column"], ["opt_callback"], ["opt_visParams", "opt_callback"], ["propertySelectors", "opt_newProperties", "opt_retainGeometry"], ["opt_format",
26988
- "opt_selectors", "opt_filename", "opt_callback"], ["opt_visParams", "opt_callback"], [], ["name", "value"], ["name", "value"], ["name", "value"], ["opt_filter"], ["start", "opt_end"], ["name", "operator", "value"], ["geometry", "opt_errorMargin"], ["var_args"], ["name", "value"], ["name", "value"], ["name", "value"], ["opt_leftField", "opt_rightValue", "opt_rightField", "opt_leftValue"], ["var_args"], ["namedArgs"], ["var_args"], ["west", "south", "east", "north"], ["coords", "opt_proj", "opt_geodesic",
26989
- "opt_evenOdd"], ["geoJson", "opt_proj", "opt_geodesic", "opt_evenOdd"], ["coords", "opt_proj"], [], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["coords", "opt_proj"], [], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError", "opt_evenOdd"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError", "opt_evenOdd"], ["legacy"], ["opt_args"], ["params", "opt_callback"], ["opt_visParams",
26990
- "opt_callback"], ["opt_visParams", "opt_callback"], ["var_args"], ["params", "opt_callback"], ["params", "opt_callback"], ["r", "g", "b"], ["geometry"], ["var_args"], ["var_args"], ["expression", "opt_map"], ["opt_callback"], ["opt_visParams", "opt_callback"], ["args"], ["params", "opt_callback"], ["opt_visParams", "opt_callback"], ["params", "opt_callback"], ["opt_callback"], ["selectors", "opt_names"], ["imageCollection", "opt_linkedBands", "opt_linkedProperties", "opt_matchPropertyName"], [],
26991
- ["list"], ["number"], ["obj"], ["obj"], ["obj"], ["obj"], ["obj"], ["obj"], ["obj", "opt_isCompound"], ["string"], []];
26992
- [ee.ApiFunction._apply, ee.ApiFunction.lookup, ee.ApiFunction._call, module$contents$ee$batch_Export.image.toCloudStorage, module$contents$ee$batch_Export.video.toCloudStorage, module$contents$ee$batch_Export.table.toFeatureView, module$contents$ee$batch_Export.video.toDrive, module$contents$ee$batch_Export.table.toDrive, module$contents$ee$batch_Export.image.toDrive, module$contents$ee$batch_Export.table.toCloudStorage, module$contents$ee$batch_Export.table.toAsset, module$contents$ee$batch_Export.classifier.toAsset,
26993
- module$contents$ee$batch_Export.image.toAsset, module$contents$ee$batch_Export.map.toCloudStorage, module$contents$ee$batch_Export.videoMap.toCloudStorage, module$contents$ee$batch_Export.table.toBigQuery, ee.Collection.prototype.map, ee.Collection.prototype.iterate, ee.Collection.prototype.limit, ee.Collection.prototype.sort, ee.Collection.prototype.filterMetadata, ee.Collection.prototype.filterBounds, ee.Collection.prototype.filterDate, ee.Collection.prototype.filter, ee.ComputedObject.prototype.serialize,
26994
- ee.ComputedObject.prototype.getInfo, ee.ComputedObject.prototype.aside, ee.ComputedObject.prototype.evaluate, ee.data.cancelTask, ee.data.getVideoThumbId, ee.data.resetWorkloadTag, ee.data.getFilmstripThumbId, ee.data.getTaskStatus, ee.data.updateAsset, ee.data.updateTask, ee.data.getList, ee.data.startProcessing, ee.data.startIngestion, ee.data.createFolder, ee.data.authenticateViaOauth, ee.data.makeThumbUrl, ee.data.setAssetAcl, ee.data.getMapId, ee.data.listAssets, ee.data.renameAsset, ee.data.authenticate,
26995
- ee.data.getTaskList, ee.data.setAssetProperties, ee.data.copyAsset, ee.data.getTileUrl, ee.data.getTableDownloadId, ee.data.listBuckets, ee.data.makeTableDownloadUrl, ee.data.getTaskListWithLimit, ee.data.deleteAsset, ee.data.startTableIngestion, ee.data.getAssetRootQuota, ee.data.cancelOperation, ee.data.listOperations, ee.data.getDownloadId, ee.data.authenticateViaPopup, ee.data.makeDownloadUrl, ee.data.getFeatureViewTilesKey, ee.data.getAssetAcl, ee.data.getWorkloadTag, ee.data.listImages, ee.data.listFeatures,
26996
- ee.data.getAssetRoots, ee.data.getAsset, ee.data.authenticateViaPrivateKey, ee.data.getOperation, ee.data.setWorkloadTag, ee.data.createAssetHome, ee.data.newTaskId, ee.data.createAsset, ee.data.computeValue, ee.data.getInfo, ee.data.getThumbId, ee.data.setDefaultWorkloadTag, ee.Date, ee.Deserializer.fromJSON, ee.Deserializer.decodeCloudApi, ee.Deserializer.fromCloudApiJSON, ee.Deserializer.decode, ee.Dictionary, ee.InitState, ee.apply, ee.TILE_SIZE, ee.initialize, ee.reset, ee.call, ee.Algorithms,
26997
- ee.Element.prototype.set, ee.Encodable.SourceFrame, ee.Feature, ee.Feature.prototype.getInfo, ee.Feature.prototype.getMapId, ee.Feature.prototype.getMap, ee.FeatureCollection, ee.FeatureCollection.prototype.getInfo, ee.FeatureCollection.prototype.getMapId, ee.FeatureCollection.prototype.select, ee.FeatureCollection.prototype.getDownloadURL, ee.FeatureCollection.prototype.getMap, ee.Filter.prototype.not, ee.Filter.lte, ee.Filter.gte, ee.Filter.eq, ee.Filter, ee.Filter.date, ee.Filter.metadata, ee.Filter.bounds,
26998
- ee.Filter.and, ee.Filter.gt, ee.Filter.neq, ee.Filter.lt, ee.Filter.inList, ee.Filter.or, ee.Function.prototype.apply, ee.Function.prototype.call, ee.Geometry.BBox, ee.Geometry.Rectangle, ee.Geometry, ee.Geometry.MultiPoint, ee.Geometry.prototype.toGeoJSON, ee.Geometry.MultiLineString, ee.Geometry.Point, ee.Geometry.prototype.toGeoJSONString, ee.Geometry.LinearRing, ee.Geometry.MultiPolygon, ee.Geometry.LineString, ee.Geometry.Polygon, ee.Geometry.prototype.serialize, ee.Image, ee.Image.prototype.getThumbURL,
26999
- ee.Image.prototype.getMapId, ee.Image.prototype.getMap, ee.Image.prototype.rename, ee.Image.prototype.getDownloadURL, ee.Image.prototype.getThumbId, ee.Image.rgb, ee.Image.prototype.clip, ee.Image.cat, ee.Image.prototype.select, ee.Image.prototype.expression, ee.Image.prototype.getInfo, ee.ImageCollection.prototype.getMap, ee.ImageCollection, ee.ImageCollection.prototype.getVideoThumbURL, ee.ImageCollection.prototype.getMapId, ee.ImageCollection.prototype.getFilmstripThumbURL, ee.ImageCollection.prototype.getInfo,
27000
- ee.ImageCollection.prototype.select, ee.ImageCollection.prototype.linkCollection, ee.ImageCollection.prototype.first, ee.List, ee.Number, ee.Serializer.toJSON, ee.Serializer.toCloudApiJSON, ee.Serializer.encodeCloudApi, ee.Serializer.toReadableJSON, ee.Serializer.toReadableCloudApiJSON, ee.Serializer.encodeCloudApiPretty, ee.Serializer.encode, ee.String, ee.Terrain].forEach(function(fn, i) {
27627
+ ["filter"], ["start", "opt_end"], ["algorithm", "opt_dropNulls"], ["algorithm", "opt_first"], ["max", "opt_property", "opt_ascending"], ["property", "opt_ascending"], ["name", "operator", "value"], ["geometry"], ["callback"], ["func", "var_args"], ["opt_callback"], ["legacy"], ["requestedId", "opt_callback"], ["value", "opt_path", "opt_force", "opt_properties", "opt_callback"], ["opt_count", "opt_callback"], ["id", "opt_callback"], ["obj", "opt_callback"], ["tag"], ["taskId", "opt_callback"], ["opt_resetDefault"],
27628
+ ["params", "opt_callback"], ["params", "opt_callback"], ["assetId", "asset", "updateFields", "opt_callback"], ["taskId", "action", "opt_callback"], ["taskId", "opt_callback"], ["params", "opt_callback"], ["taskId", "request", "opt_callback"], ["params", "opt_callback"], ["path", "opt_force", "opt_callback"], ["taskId", "params", "opt_callback"], "clientId success opt_error opt_extraScopes opt_onImmediateFailed opt_suppressDefaultScopes".split(" "), ["assetId", "aclUpdate", "opt_callback"], ["id"],
27629
+ ["params", "opt_callback"], ["sourceId", "destinationId", "opt_callback"], ["parent", "opt_params", "opt_callback"], ["opt_callback"], ["assetId", "properties", "opt_callback"], ["sourceId", "destinationId", "opt_overwrite", "opt_callback"], ["clientId", "success", "opt_error", "opt_extraScopes", "opt_onImmediateFailed"], ["project", "opt_callback"], ["id", "x", "y", "z"], ["params", "opt_callback"], ["id"], ["opt_limit", "opt_callback"], ["taskId", "request", "opt_callback"], ["rootId", "opt_callback"],
27630
+ ["opt_limit", "opt_callback"], ["assetId", "opt_callback"], ["params", "opt_callback"], ["operationName", "opt_callback"], ["opt_success", "opt_error"], ["parent", "opt_params", "opt_callback"], ["assetId", "opt_callback"], [], ["params", "opt_callback"], ["asset", "params", "opt_callback"], ["id"], ["id", "opt_callback"], ["opt_callback"], ["tag"], ["operationName", "opt_callback"], ["privateKey", "opt_success", "opt_error", "opt_extraScopes", "opt_suppressDefaultScopes"], ["date", "opt_tz"],
27631
+ ["json"], ["json"], ["json"], ["json"], ["opt_dict"], [], [], ["func", "namedArgs"], [], "opt_baseurl opt_tileurl opt_successCallback opt_errorCallback opt_xsrfToken opt_project".split(" "), ["func", "var_args"], [], ["var_args"], [], ["opt_callback"], ["opt_visParams", "opt_callback"], ["opt_visParams", "opt_callback"], ["geometry", "opt_properties"], ["opt_format", "opt_selectors", "opt_filename", "opt_callback"], ["opt_visParams", "opt_callback"], ["args", "opt_column"], ["opt_callback"], ["opt_visParams",
27632
+ "opt_callback"], ["propertySelectors", "opt_newProperties", "opt_retainGeometry"], ["name", "value"], ["opt_filter"], ["name", "value"], ["start", "opt_end"], ["name", "operator", "value"], ["geometry", "opt_errorMargin"], ["var_args"], [], ["name", "value"], ["name", "value"], ["name", "value"], ["opt_leftField", "opt_rightValue", "opt_rightField", "opt_leftValue"], ["var_args"], ["name", "value"], ["var_args"], ["namedArgs"], [], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["coords",
27633
+ "opt_proj"], ["coords", "opt_proj", "opt_geodesic", "opt_evenOdd"], ["west", "south", "east", "north"], [], ["coords", "opt_proj", "opt_geodesic", "opt_maxError", "opt_evenOdd"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["geoJson", "opt_proj", "opt_geodesic", "opt_evenOdd"], ["legacy"], ["coords", "opt_proj"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError", "opt_evenOdd"], ["r", "g", "b"], ["geometry"], ["opt_callback"],
27634
+ ["opt_visParams", "opt_callback"], ["params", "opt_callback"], ["var_args"], ["opt_visParams", "opt_callback"], ["params", "opt_callback"], ["var_args"], ["params", "opt_callback"], ["var_args"], ["opt_args"], ["expression", "opt_map"], ["opt_callback"], ["selectors", "opt_names"], ["params", "opt_callback"], ["opt_visParams", "opt_callback"], ["imageCollection", "opt_linkedBands", "opt_linkedProperties", "opt_matchPropertyName"], ["params", "opt_callback"], ["opt_visParams", "opt_callback"], [],
27635
+ ["args"], ["list"], ["number"], ["obj"], ["obj", "opt_isCompound"], ["obj"], ["obj"], ["obj"], ["obj"], ["obj"], ["string"], []];
27636
+ [ee.ApiFunction._apply, ee.ApiFunction.lookup, ee.ApiFunction._call, module$contents$ee$batch_Export.videoMap.toCloudStorage, module$contents$ee$batch_Export.table.toBigQuery, module$contents$ee$batch_Export.image.toCloudStorage, module$contents$ee$batch_Export.video.toCloudStorage, module$contents$ee$batch_Export.table.toFeatureView, module$contents$ee$batch_Export.video.toDrive, module$contents$ee$batch_Export.table.toDrive, module$contents$ee$batch_Export.image.toDrive, module$contents$ee$batch_Export.table.toCloudStorage,
27637
+ module$contents$ee$batch_Export.table.toAsset, module$contents$ee$batch_Export.classifier.toAsset, module$contents$ee$batch_Export.image.toAsset, module$contents$ee$batch_Export.map.toCloudStorage, ee.Collection.prototype.filter, ee.Collection.prototype.filterDate, ee.Collection.prototype.map, ee.Collection.prototype.iterate, ee.Collection.prototype.limit, ee.Collection.prototype.sort, ee.Collection.prototype.filterMetadata, ee.Collection.prototype.filterBounds, ee.ComputedObject.prototype.evaluate,
27638
+ ee.ComputedObject.prototype.aside, ee.ComputedObject.prototype.getInfo, ee.ComputedObject.prototype.serialize, ee.data.createAssetHome, ee.data.createAsset, ee.data.newTaskId, ee.data.getInfo, ee.data.computeValue, ee.data.setDefaultWorkloadTag, ee.data.cancelTask, ee.data.resetWorkloadTag, ee.data.getThumbId, ee.data.getVideoThumbId, ee.data.updateAsset, ee.data.updateTask, ee.data.getTaskStatus, ee.data.getList, ee.data.startIngestion, ee.data.getFilmstripThumbId, ee.data.createFolder, ee.data.startProcessing,
27639
+ ee.data.authenticateViaOauth, ee.data.setAssetAcl, ee.data.makeThumbUrl, ee.data.getMapId, ee.data.renameAsset, ee.data.listAssets, ee.data.getTaskList, ee.data.setAssetProperties, ee.data.copyAsset, ee.data.authenticate, ee.data.listBuckets, ee.data.getTileUrl, ee.data.getTableDownloadId, ee.data.makeTableDownloadUrl, ee.data.getTaskListWithLimit, ee.data.startTableIngestion, ee.data.getAssetRootQuota, ee.data.listOperations, ee.data.deleteAsset, ee.data.getDownloadId, ee.data.cancelOperation,
27640
+ ee.data.authenticateViaPopup, ee.data.listImages, ee.data.getAssetAcl, ee.data.getWorkloadTag, ee.data.getFeatureViewTilesKey, ee.data.listFeatures, ee.data.makeDownloadUrl, ee.data.getAsset, ee.data.getAssetRoots, ee.data.setWorkloadTag, ee.data.getOperation, ee.data.authenticateViaPrivateKey, ee.Date, ee.Deserializer.decodeCloudApi, ee.Deserializer.fromCloudApiJSON, ee.Deserializer.decode, ee.Deserializer.fromJSON, ee.Dictionary, ee.Algorithms, ee.InitState, ee.apply, ee.TILE_SIZE, ee.initialize,
27641
+ ee.call, ee.reset, ee.Element.prototype.set, ee.Encodable.SourceFrame, ee.Feature.prototype.getInfo, ee.Feature.prototype.getMapId, ee.Feature.prototype.getMap, ee.Feature, ee.FeatureCollection.prototype.getDownloadURL, ee.FeatureCollection.prototype.getMap, ee.FeatureCollection, ee.FeatureCollection.prototype.getInfo, ee.FeatureCollection.prototype.getMapId, ee.FeatureCollection.prototype.select, ee.Filter.gte, ee.Filter, ee.Filter.eq, ee.Filter.date, ee.Filter.metadata, ee.Filter.bounds, ee.Filter.and,
27642
+ ee.Filter.prototype.not, ee.Filter.gt, ee.Filter.lt, ee.Filter.neq, ee.Filter.inList, ee.Filter.or, ee.Filter.lte, ee.Function.prototype.call, ee.Function.prototype.apply, ee.Geometry.prototype.toGeoJSON, ee.Geometry.LinearRing, ee.Geometry.MultiPoint, ee.Geometry.Rectangle, ee.Geometry.BBox, ee.Geometry.prototype.toGeoJSONString, ee.Geometry.Polygon, ee.Geometry.LineString, ee.Geometry, ee.Geometry.prototype.serialize, ee.Geometry.Point, ee.Geometry.MultiLineString, ee.Geometry.MultiPolygon, ee.Image.rgb,
27643
+ ee.Image.prototype.clip, ee.Image.prototype.getInfo, ee.Image.prototype.getMapId, ee.Image.prototype.getDownloadURL, ee.Image.prototype.rename, ee.Image.prototype.getMap, ee.Image.prototype.getThumbId, ee.Image.prototype.select, ee.Image.prototype.getThumbURL, ee.Image.cat, ee.Image, ee.Image.prototype.expression, ee.ImageCollection.prototype.getInfo, ee.ImageCollection.prototype.select, ee.ImageCollection.prototype.getVideoThumbURL, ee.ImageCollection.prototype.getMap, ee.ImageCollection.prototype.linkCollection,
27644
+ ee.ImageCollection.prototype.getFilmstripThumbURL, ee.ImageCollection.prototype.getMapId, ee.ImageCollection.prototype.first, ee.ImageCollection, ee.List, ee.Number, ee.Serializer.toReadableJSON, ee.Serializer.encode, ee.Serializer.toReadableCloudApiJSON, ee.Serializer.toCloudApiJSON, ee.Serializer.encodeCloudApiPretty, ee.Serializer.toJSON, ee.Serializer.encodeCloudApi, ee.String, ee.Terrain].forEach(function(fn, i) {
27001
27645
  fn && (exportedFnInfo[fn.toString()] = {name:orderedFnNames[i], paramNames:orderedParamLists[i]});
27002
27646
  });
27003
27647
  goog.global.EXPORTED_FN_INFO = exportedFnInfo;