@google/earthengine 0.1.414 → 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]+/, "");
@@ -1224,7 +1251,7 @@ $jscomp.polyfill("String.prototype.padStart", function(orig) {
1224
1251
  return $jscomp.stringPadding(opt_padString, targetLength - string.length) + string;
1225
1252
  };
1226
1253
  }, "es8", "es3");
1227
- var CLOSURE_TOGGLE_ORDINALS = {GoogFlags__async_throw_on_unicode_to_byte__enable:!1, GoogFlags__client_only_wiz_direct_reactions__disable:!1, GoogFlags__client_only_wiz_flush_queue_fix__enable:!1, GoogFlags__client_only_wiz_ordered_reaction_execution__enable:!1, GoogFlags__jspb_enable_low_index_extension_writes__disable:!1, GoogFlags__jspb_readonly_repeated_fields__disable:!1, GoogFlags__jspb_stop_using_repeated_field_sets_from_gencode__disable:!1, GoogFlags__override_disable_toggles:!1, GoogFlags__testonly_debug_flag__enable:!1,
1254
+ var CLOSURE_TOGGLE_ORDINALS = {GoogFlags__async_throw_on_unicode_to_byte__enable:!1, GoogFlags__client_only_wiz_direct_reactions__disable:!1, GoogFlags__client_only_wiz_flush_queue_fix__disable:!1, GoogFlags__client_only_wiz_ordered_reaction_execution__disable:!1, GoogFlags__jspb_enable_low_index_extension_writes__disable:!1, GoogFlags__jspb_readonly_repeated_fields__disable:!1, GoogFlags__jspb_stop_using_repeated_field_sets_from_gencode__disable:!1, GoogFlags__override_disable_toggles:!1, GoogFlags__testonly_debug_flag__enable:!1,
1228
1255
  GoogFlags__testonly_disabled_flag__enable:!1, GoogFlags__testonly_stable_flag__disable:!1, GoogFlags__testonly_staging_flag__disable:!1, GoogFlags__use_toggles:!1, GoogFlags__use_user_agent_client_hints__enable:!1, GoogFlags__wiz_enable_native_promise__enable:!1};
1229
1256
  /*
1230
1257
 
@@ -2688,7 +2715,7 @@ goog.string.internal.caseInsensitiveEquals = function(str1, str2) {
2688
2715
  goog.string.internal.isEmptyOrWhitespace = function(str) {
2689
2716
  return /^[\s\xa0]*$/.test(str);
2690
2717
  };
2691
- goog.string.internal.trim = goog.TRUSTED_SITE && String.prototype.trim ? function(str) {
2718
+ goog.string.internal.trim = goog.TRUSTED_SITE && (goog.FEATURESET_YEAR >= 2018 || String.prototype.trim) ? function(str) {
2692
2719
  return str.trim();
2693
2720
  } : function(str) {
2694
2721
  return /^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(str)[1];
@@ -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;
@@ -5639,7 +5666,7 @@ goog.string.replaceAll = function(s, ss, replacement) {
5639
5666
  goog.string.regExpEscape = function(s) {
5640
5667
  return String(s).replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g, "\\$1").replace(/\x08/g, "\\x08");
5641
5668
  };
5642
- goog.string.repeat = String.prototype.repeat ? function(string, length) {
5669
+ goog.string.repeat = goog.FEATURESET_YEAR >= 2018 || String.prototype.repeat ? function(string, length) {
5643
5670
  return string.repeat(length);
5644
5671
  } : function(string, length) {
5645
5672
  return Array(length + 1).join(string);
@@ -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_) {
@@ -6854,9 +6881,10 @@ goog.debug.entryPointRegistry.unmonitorAllIfPossible = function(monitor) {
6854
6881
  }
6855
6882
  monitors.length--;
6856
6883
  };
6857
- 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:function(fn) {
6884
+ var module$contents$goog$events$BrowserFeature_purify = function(fn) {
6858
6885
  return {valueOf:fn}.valueOf();
6859
- }(function() {
6886
+ };
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() {
6860
6888
  if (!goog.global.addEventListener || !Object.defineProperty) {
6861
6889
  return !1;
6862
6890
  }
@@ -6883,8 +6911,8 @@ module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_user_agent_cl
6883
6911
  module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__async_throw_on_unicode_to_byte__enable = !1;
6884
6912
  module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__jspb_stop_using_repeated_field_sets_from_gencode__disable = !1;
6885
6913
  module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_direct_reactions__disable = !1;
6886
- module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_flush_queue_fix__enable = !1;
6887
- module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_ordered_reaction_execution__enable = !1;
6914
+ module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_flush_queue_fix__disable = !1;
6915
+ module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_ordered_reaction_execution__disable = !1;
6888
6916
  module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__jspb_enable_low_index_extension_writes__disable = !1;
6889
6917
  module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__wiz_enable_native_promise__enable = !1;
6890
6918
  module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__jspb_readonly_repeated_fields__disable = !1;
@@ -6898,8 +6926,9 @@ goog.flags.USE_USER_AGENT_CLIENT_HINTS = module$exports$closure$flags$flags$2eto
6898
6926
  goog.flags.ASYNC_THROW_ON_UNICODE_TO_BYTE = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__async_throw_on_unicode_to_byte__enable : goog.readFlagInternalDoNotUseOrElse(899588437, !1);
6899
6927
  goog.flags.JSPB_STOP_USING_REPEATED_FIELD_SETS_FROM_GENCODE = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__override_disable_toggles || !module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__jspb_stop_using_repeated_field_sets_from_gencode__disable : goog.readFlagInternalDoNotUseOrElse(188588736, !0);
6900
6928
  goog.flags.CLIENT_ONLY_WIZ_DIRECT_REACTIONS = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? goog.FLAGS_STAGING_DEFAULT && (module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__override_disable_toggles || !module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_direct_reactions__disable) : goog.readFlagInternalDoNotUseOrElse(641353869, module$contents$goog$flags_STAGING);
6901
- goog.flags.CLIENT_ONLY_WIZ_FLUSH_QUEUE_FIX = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? goog.DEBUG || module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_flush_queue_fix__enable : goog.readFlagInternalDoNotUseOrElse(644029907, goog.DEBUG);
6902
- goog.flags.CLIENT_ONLY_WIZ_ORDERED_REACTION_EXECUTION = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? goog.DEBUG || module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_ordered_reaction_execution__enable : goog.readFlagInternalDoNotUseOrElse(1822726157, goog.DEBUG);
6929
+ goog.flags.CLIENT_ONLY_WIZ_FLUSH_QUEUE_FIX = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? goog.FLAGS_STAGING_DEFAULT && (module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__override_disable_toggles || !module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_flush_queue_fix__disable) : goog.readFlagInternalDoNotUseOrElse(644029907, module$contents$goog$flags_STAGING);
6930
+ goog.flags.CLIENT_ONLY_WIZ_ORDERED_REACTION_EXECUTION = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? goog.FLAGS_STAGING_DEFAULT && (module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__override_disable_toggles || !module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__client_only_wiz_ordered_reaction_execution__disable) : goog.readFlagInternalDoNotUseOrElse(1822726157,
6931
+ module$contents$goog$flags_STAGING);
6903
6932
  goog.flags.JSPB_ENABLE_LOW_INDEX_EXTENSION_WRITES = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? goog.FLAGS_STAGING_DEFAULT && (module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__override_disable_toggles || !module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__jspb_enable_low_index_extension_writes__disable) : goog.readFlagInternalDoNotUseOrElse(645172343,
6904
6933
  module$contents$goog$flags_STAGING);
6905
6934
  goog.flags.WIZ_ENABLE_NATIVE_PROMISE = module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__use_toggles ? goog.DEBUG || module$exports$closure$flags$flags$2etoggles.TOGGLE_GoogFlags__wiz_enable_native_promise__enable : goog.readFlagInternalDoNotUseOrElse(651175828, goog.DEBUG);
@@ -7639,8 +7668,8 @@ goog.events.eventTypeHelpers = {};
7639
7668
  goog.events.eventTypeHelpers.getVendorPrefixedName = function(eventName) {
7640
7669
  return goog.userAgent.WEBKIT ? "webkit" + eventName : eventName.toLowerCase();
7641
7670
  };
7642
- goog.events.eventTypeHelpers.getPointerFallbackEventName = function(pointerEventName, msPointerEventName, fallbackEventName) {
7643
- 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;
7644
7673
  };
7645
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",
7646
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",
@@ -7670,15 +7699,12 @@ goog.inherits(goog.events.BrowserEvent, goog.events.Event);
7670
7699
  goog.events.BrowserEvent.USE_LAYER_XY_AS_OFFSET_XY = !1;
7671
7700
  goog.events.BrowserEvent.MouseButton = {LEFT:0, MIDDLE:1, RIGHT:2, BACK:3, FORWARD:4};
7672
7701
  goog.events.BrowserEvent.PointerType = {MOUSE:"mouse", PEN:"pen", TOUCH:"touch"};
7673
- goog.events.BrowserEvent.IEButtonMap = goog.debug.freeze([1, 4, 2]);
7674
- goog.events.BrowserEvent.IE_BUTTON_MAP = goog.events.BrowserEvent.IEButtonMap;
7675
- 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});
7676
7702
  goog.events.BrowserEvent.prototype.init = function(e, opt_currentTarget) {
7677
7703
  var type = this.type = e.type, relevantTouch = e.changedTouches && e.changedTouches.length ? e.changedTouches[0] : null;
7678
7704
  this.target = e.target || e.srcElement;
7679
7705
  this.currentTarget = opt_currentTarget;
7680
7706
  var relatedTarget = e.relatedTarget;
7681
- 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));
7682
7708
  this.relatedTarget = relatedTarget;
7683
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 ||
7684
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);
@@ -7717,7 +7743,7 @@ goog.events.BrowserEvent.prototype.getBrowserEvent = function() {
7717
7743
  return this.event_;
7718
7744
  };
7719
7745
  goog.events.BrowserEvent.getPointerType_ = function(e) {
7720
- return typeof e.pointerType === "string" ? e.pointerType : goog.events.BrowserEvent.IE_POINTER_TYPE_MAP[e.pointerType] || "";
7746
+ return e.pointerType;
7721
7747
  };
7722
7748
  goog.events.Listenable = function() {
7723
7749
  };
@@ -15285,18 +15311,6 @@ goog.asserts.dom.assertIsHtmlObjectElement = function(value) {
15285
15311
  return module$contents$goog$asserts$dom_assertIsHtmlElementOfType(value, goog.dom.TagName.OBJECT);
15286
15312
  };
15287
15313
  goog.asserts.dom.assertIsHtmlScriptElement = module$contents$goog$asserts$dom_assertIsHtmlScriptElement;
15288
- goog.dom.BrowserFeature = {};
15289
- goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;
15290
- goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = goog.FEATURESET_YEAR >= 2024;
15291
- goog.dom.BrowserFeature.detectOffscreenCanvas_ = function(contextName) {
15292
- try {
15293
- return !!(new self.OffscreenCanvas(0, 0)).getContext(contextName);
15294
- } catch (ex) {
15295
- }
15296
- return !1;
15297
- };
15298
- goog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_("2d"));
15299
- goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = !0;
15300
15314
  goog.dom.asserts = {};
15301
15315
  goog.dom.asserts.assertIsLocation = function(o) {
15302
15316
  if (module$exports$enable_goog_asserts.ENABLE_GOOG_ASSERTS) {
@@ -15643,11 +15657,11 @@ function module$contents$safevalues$builders$html_sanitizer$no_clobber_isElement
15643
15657
  }
15644
15658
  module$exports$safevalues$builders$html_sanitizer$no_clobber.isElement = module$contents$safevalues$builders$html_sanitizer$no_clobber_isElement;
15645
15659
  var module$exports$safevalues$builders$html_sanitizer$resource_url_policy = {}, module$contents$safevalues$builders$html_sanitizer$resource_url_policy_module = module$contents$safevalues$builders$html_sanitizer$resource_url_policy_module || {id:"third_party/javascript/safevalues/builders/html_sanitizer/resource_url_policy.closure.js"};
15646
- module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType = {STYLE_TAG:0, STYLE_ATTRIBUTE:1, HTML_ATTRIBUTE:2};
15647
- module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType[module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.STYLE_TAG] = "STYLE_TAG";
15660
+ module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType = {STYLE_ELEMENT:0, STYLE_ATTRIBUTE:1, HTML_ATTRIBUTE:2};
15661
+ module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType[module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.STYLE_ELEMENT] = "STYLE_ELEMENT";
15648
15662
  module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType[module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.STYLE_ATTRIBUTE] = "STYLE_ATTRIBUTE";
15649
15663
  module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType[module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.HTML_ATTRIBUTE] = "HTML_ATTRIBUTE";
15650
- function module$contents$safevalues$builders$html_sanitizer$resource_url_policy_StyleTagOrAttributeResourceUrlPolicyHints() {
15664
+ function module$contents$safevalues$builders$html_sanitizer$resource_url_policy_StyleElementOrAttributeResourceUrlPolicyHints() {
15651
15665
  }
15652
15666
  function module$contents$safevalues$builders$html_sanitizer$resource_url_policy_HtmlAttributeResourceUrlPolicyHints() {
15653
15667
  }
@@ -15716,13 +15730,6 @@ module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanit
15716
15730
  })}]];
15717
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),
15718
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));
15719
- 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() {
15720
- return module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_ELEMENTS.concat(["STYLE"]);
15721
- })), new Map(module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ELEMENT_POLICIES), new Set(module$contents$safevalues$internals$pure_pure(function() {
15722
- return module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_GLOBAL_ATTRIBUTES.concat(["id", "name", "class"]);
15723
- })), new Map(module$contents$safevalues$internals$pure_pure(function() {
15724
- 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}]]);
15725
- })));
15726
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),
15727
15734
  new Set(module$contents$safevalues$internals$pure_pure(function() {
15728
15735
  return module$contents$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table_ALLOWED_GLOBAL_ATTRIBUTES.concat(["class", "id", "name"]);
@@ -15739,11 +15746,14 @@ module$exports$safevalues$builders$html_sanitizer$sanitizer_table$default_saniti
15739
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"};
15740
15747
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizer = function() {
15741
15748
  };
15749
+ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.CssSanitizer = function() {
15750
+ };
15742
15751
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl = function(sanitizerTable, token, styleElementSanitizer, styleAttributeSanitizer, resourceUrlPolicy) {
15743
15752
  this.sanitizerTable = sanitizerTable;
15744
15753
  this.styleElementSanitizer = styleElementSanitizer;
15745
15754
  this.styleAttributeSanitizer = styleAttributeSanitizer;
15746
15755
  this.resourceUrlPolicy = resourceUrlPolicy;
15756
+ this.SHADOW_DOM_INTERNAL_CSS = ":host{display:block;clip-path:inset(0);overflow:hidden}";
15747
15757
  this.changes = [];
15748
15758
  module$contents$safevalues$internals$secrets_ensureTokenIsValid(token);
15749
15759
  };
@@ -15761,11 +15771,21 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15761
15771
  };
15762
15772
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl.prototype.sanitizeToFragment = function(html) {
15763
15773
  var inertDocument = document.implementation.createHTMLDocument("");
15764
- 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;
15765
15785
  };
15766
15786
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl.prototype.sanitizeToFragmentInternal = function(html, inertDocument) {
15767
- 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) {
15768
- 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);
15769
15789
  }), currentNode = treeWalker.nextNode(), sanitizedFragment = inertDocument.createDocumentFragment(), sanitizedParent = sanitizedFragment; currentNode !== null;) {
15770
15790
  var sanitizedNode = void 0;
15771
15791
  if (module$contents$safevalues$builders$html_sanitizer$no_clobber_isText(currentNode)) {
@@ -15800,8 +15820,8 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15800
15820
  return this.createTextNode(textNode.data);
15801
15821
  };
15802
15822
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerImpl.prototype.sanitizeElementNode = function(elementNode, inertDocument) {
15803
- 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()) {
15804
- 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);
15805
15825
  if (this.satisfiesAllConditions(policy.conditions, dirtyAttributes)) {
15806
15826
  switch(policy.policyAction) {
15807
15827
  case module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP:
@@ -15825,7 +15845,7 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15825
15845
  break;
15826
15846
  case module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP_AND_USE_RESOURCE_URL_POLICY:
15827
15847
  if (this.resourceUrlPolicy) {
15828
- var hints = {type:module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.HTML_ATTRIBUTE, attributeName:name, tagName:elementName}, url = module$contents$safevalues$builders$html_sanitizer$resource_url_policy_parseUrl(value), sanitizedUrl = this.resourceUrlPolicy(url, hints);
15848
+ var hints = {type:module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.HTML_ATTRIBUTE, attributeName:name, elementName:elementName}, url = module$contents$safevalues$builders$html_sanitizer$resource_url_policy_parseUrl(value), sanitizedUrl = this.resourceUrlPolicy(url, hints);
15829
15849
  sanitizedUrl && module$contents$safevalues$builders$html_sanitizer$html_sanitizer_setAttribute(newNode, name, sanitizedUrl.toString());
15830
15850
  } else {
15831
15851
  module$contents$safevalues$builders$html_sanitizer$html_sanitizer_setAttribute(newNode, name, value);
@@ -15833,9 +15853,9 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15833
15853
  break;
15834
15854
  case module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP_AND_USE_RESOURCE_URL_POLICY_FOR_SRCSET:
15835
15855
  if (this.resourceUrlPolicy) {
15836
- for (var hints$jscomp$0 = {type:module$exports$safevalues$builders$html_sanitizer$resource_url_policy.ResourceUrlPolicyHintsType.HTML_ATTRIBUTE, attributeName:name, tagName: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 =
15837
15857
  $jscomp$iter$31.next()) {
15838
- 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);
15839
15859
  sanitizedUrl$jscomp$0 && sanitizedSrcset.parts.push({url:sanitizedUrl$jscomp$0.toString(), descriptor:part.descriptor});
15840
15860
  }
15841
15861
  module$contents$safevalues$builders$html_sanitizer$html_sanitizer_setAttribute(newNode, name, module$contents$safevalues$builders$html_sanitizer$html_sanitizer_serializeSrcset(sanitizedSrcset));
@@ -15879,8 +15899,8 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.HtmlSanitizerIm
15879
15899
  if (!conditions) {
15880
15900
  return !0;
15881
15901
  }
15882
- 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()) {
15883
- 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;
15884
15904
  if (value && !expectedValues.has(value)) {
15885
15905
  return !1;
15886
15906
  }
@@ -15895,8 +15915,8 @@ function module$contents$safevalues$builders$html_sanitizer$html_sanitizer_Srcse
15895
15915
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer.Srcset = function() {
15896
15916
  };
15897
15917
  function module$contents$safevalues$builders$html_sanitizer$html_sanitizer_parseSrcset(srcset) {
15898
- 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()) {
15899
- 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;
15900
15920
  parts.push({url:url__tsickle_destructured_3, descriptor:descriptor__tsickle_destructured_4});
15901
15921
  }
15902
15922
  return {parts:parts};
@@ -15947,14 +15967,600 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer.superLenientlyS
15947
15967
  function module$contents$safevalues$builders$html_sanitizer$html_sanitizer_checkExhaustive(value, msg) {
15948
15968
  throw Error(msg === void 0 ? "unexpected value " + value + "!" : msg);
15949
15969
  }
15950
- ;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"};
15951
- 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() {
15952
16558
  this.calledBuild = !1;
15953
16559
  this.sanitizerTable = module$exports$safevalues$builders$html_sanitizer$sanitizer_table$default_sanitizer_table.DEFAULT_SANITIZER_TABLE;
15954
16560
  };
15955
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.onlyAllowElements = function(elementSet) {
15956
- 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()) {
15957
- 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;
15958
16564
  element = element.toUpperCase();
15959
16565
  if (!this.sanitizerTable.isAllowedElement(element)) {
15960
16566
  throw Error("Element: " + element + ", is not allowed by html5_contract.textpb");
@@ -15965,15 +16571,15 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
15965
16571
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(allowedElements, allowedElementPolicies, this.sanitizerTable.allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
15966
16572
  return this;
15967
16573
  };
15968
- 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) {
15969
16575
  var allowedElements = new Set(this.sanitizerTable.allowedElements), allowedElementPolicies = new Map(this.sanitizerTable.elementPolicies);
15970
16576
  element = element.toUpperCase();
15971
16577
  if (!module$contents$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table_isCustomElement(element)) {
15972
16578
  throw Error("Element: " + element + " is not a custom element");
15973
16579
  }
15974
16580
  if (allowedAttributes) {
15975
- 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()) {
15976
- 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});
15977
16583
  }
15978
16584
  allowedElementPolicies.set(element, elementPolicy);
15979
16585
  } else {
@@ -15982,16 +16588,16 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
15982
16588
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(allowedElements, allowedElementPolicies, this.sanitizerTable.allowedGlobalAttributes, this.sanitizerTable.globalAttributePolicies);
15983
16589
  return this;
15984
16590
  };
15985
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.onlyAllowAttributes = function(attributeSet) {
15986
- 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()) {
15987
- 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;
15988
16594
  this.sanitizerTable.allowedGlobalAttributes.has(attribute) && allowedGlobalAttributes.add(attribute);
15989
16595
  this.sanitizerTable.globalAttributePolicies.has(attribute) && globalAttributePolicies.set(attribute, this.sanitizerTable.globalAttributePolicies.get(attribute));
15990
16596
  }
15991
- 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()) {
15992
- 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$ =
15993
- $jscomp$iter$38.next()) {
15994
- 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;
15995
16601
  attributeSet.has(attribute$jscomp$0) && newElementPolicy.set(attribute$jscomp$0, attributePolicy);
15996
16602
  }
15997
16603
  elementPolicies.set(elementName, newElementPolicy);
@@ -15999,9 +16605,9 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
15999
16605
  this.sanitizerTable = new module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.SanitizerTable(this.sanitizerTable.allowedElements, elementPolicies, allowedGlobalAttributes, globalAttributePolicies);
16000
16606
  return this;
16001
16607
  };
16002
- module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.allowDataAttributes = function(attributes) {
16003
- 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()) {
16004
- 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;
16005
16611
  if (attribute.indexOf("data-") !== 0) {
16006
16612
  throw Error("data attribute: " + attribute + ' does not begin with the prefix "data-"');
16007
16613
  }
@@ -16010,34 +16616,38 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
16010
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);
16011
16617
  return this;
16012
16618
  };
16013
- 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() {
16014
16620
  var globalAttributePolicies = new Map(this.sanitizerTable.globalAttributePolicies);
16015
16621
  globalAttributePolicies.set("style", {policyAction:module$exports$safevalues$builders$html_sanitizer$sanitizer_table$sanitizer_table.AttributePolicyAction.KEEP_AND_SANITIZE_STYLE});
16016
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);
16017
16623
  return this;
16018
16624
  };
16019
- 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() {
16020
16626
  var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes);
16021
16627
  allowedGlobalAttributes.add("class");
16022
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);
16023
16629
  return this;
16024
16630
  };
16025
- 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() {
16026
16632
  var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes);
16027
16633
  allowedGlobalAttributes.add("id");
16028
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);
16029
16635
  return this;
16030
16636
  };
16031
- 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() {
16032
16638
  var allowedGlobalAttributes = new Set(this.sanitizerTable.allowedGlobalAttributes);
16033
16639
  allowedGlobalAttributes.add("aria-activedescendant").add("aria-controls").add("aria-labelledby").add("aria-owns").add("for").add("list");
16034
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);
16035
16641
  return this;
16036
16642
  };
16037
- 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) {
16038
16644
  this.resourceUrlPolicy = resourceUrlPolicy;
16039
16645
  return this;
16040
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);
16041
16651
  module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSanitizerBuilder.prototype.build = function() {
16042
16652
  if (this.calledBuild) {
16043
16653
  throw Error("this sanitizer has already called build");
@@ -16045,6 +16655,44 @@ module$exports$safevalues$builders$html_sanitizer$html_sanitizer_builder.HtmlSan
16045
16655
  this.calledBuild = !0;
16046
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);
16047
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
+ };
16048
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;
16049
16697
  function module$contents$safevalues$builders$resource_url_builders_hasValidOrigin(base) {
16050
16698
  if (!/^https:\/\//.test(base) && !/^\/\//.test(base)) {
@@ -16950,7 +17598,7 @@ goog.dom.flattenElement = function(element) {
16950
17598
  }
16951
17599
  };
16952
17600
  goog.dom.getChildren = function(element) {
16953
- 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) {
16954
17602
  return node.nodeType == goog.dom.NodeType.ELEMENT;
16955
17603
  });
16956
17604
  };
@@ -16961,7 +17609,7 @@ goog.dom.getLastElementChild = function(node) {
16961
17609
  return node.lastElementChild !== void 0 ? node.lastElementChild : goog.dom.getNextElementNode_(node.lastChild, !1);
16962
17610
  };
16963
17611
  goog.dom.getNextElementSibling = function(node) {
16964
- 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);
16965
17613
  };
16966
17614
  goog.dom.getPreviousElementSibling = function(node) {
16967
17615
  return node.previousElementSibling !== void 0 ? node.previousElementSibling : goog.dom.getNextElementNode_(node.previousSibling, !1);
@@ -17006,18 +17654,13 @@ goog.dom.isWindow = function(obj) {
17006
17654
  return goog.isObject(obj) && obj.window == obj;
17007
17655
  };
17008
17656
  goog.dom.getParentElement = function(element) {
17009
- var parent;
17010
- if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && (parent = element.parentElement)) {
17011
- return parent;
17012
- }
17013
- parent = element.parentNode;
17014
- return goog.dom.isElement(parent) ? parent : null;
17657
+ return element.parentElement || null;
17015
17658
  };
17016
17659
  goog.dom.contains = function(parent, descendant) {
17017
17660
  if (!parent || !descendant) {
17018
17661
  return !1;
17019
17662
  }
17020
- if (parent.contains && descendant.nodeType == goog.dom.NodeType.ELEMENT) {
17663
+ if (goog.FEATURESET_YEAR > 2018 || parent.contains && descendant.nodeType == goog.dom.NodeType.ELEMENT) {
17021
17664
  return parent == descendant || parent.contains(descendant);
17022
17665
  }
17023
17666
  if (typeof parent.compareDocumentPosition != "undefined") {
@@ -17275,6 +17918,9 @@ goog.dom.getNodeAtOffset = function(parent, offset, opt_result) {
17275
17918
  return cur;
17276
17919
  };
17277
17920
  goog.dom.isNodeList = function(val) {
17921
+ if (goog.FEATURESET_YEAR >= 2018) {
17922
+ return !!val && typeof val.length == "number" && typeof val.item == "function";
17923
+ }
17278
17924
  if (val && typeof val.length == "number") {
17279
17925
  if (goog.isObject(val)) {
17280
17926
  return typeof val.item == "function" || typeof val.item == "string";
@@ -18817,7 +19463,7 @@ goog.net.XhrIo.prototype.send = function(url, opt_method, opt_content, opt_heade
18817
19463
  headers.set(key, opt_headers[key]);
18818
19464
  }
18819
19465
  } else if (typeof opt_headers.keys === "function" && typeof opt_headers.get === "function") {
18820
- 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()) {
18821
19467
  var key$jscomp$0 = $jscomp$key$m71669834$54$key.value;
18822
19468
  headers.set(key$jscomp$0, opt_headers.get(key$jscomp$0));
18823
19469
  }
@@ -18829,7 +19475,7 @@ goog.net.XhrIo.prototype.send = function(url, opt_method, opt_content, opt_heade
18829
19475
  return goog.string.caseInsensitiveEquals(goog.net.XhrIo.CONTENT_TYPE_HEADER, header);
18830
19476
  }), contentIsFormData = goog.global.FormData && content instanceof goog.global.FormData;
18831
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);
18832
- 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()) {
18833
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;
18834
19480
  this.xhr_.setRequestHeader(key$jscomp$1, value);
18835
19481
  }
@@ -19145,7 +19791,7 @@ var $jscomp$templatelit$m1153655765$99 = $jscomp.createTemplateTagFirstArg(["htt
19145
19791
  ee.apiclient = {};
19146
19792
  var module$contents$ee$apiclient_apiclient = {};
19147
19793
  ee.apiclient.VERSION = module$exports$ee$apiVersion.V1;
19148
- ee.apiclient.API_CLIENT_VERSION = "0.1.414";
19794
+ ee.apiclient.API_CLIENT_VERSION = "0.1.416";
19149
19795
  ee.apiclient.NULL_VALUE = module$exports$eeapiclient$domain_object.NULL_VALUE;
19150
19796
  ee.apiclient.PromiseRequestService = module$exports$eeapiclient$promise_request_service.PromiseRequestService;
19151
19797
  ee.apiclient.MakeRequestParams = module$contents$eeapiclient$request_params_MakeRequestParams;
@@ -19314,7 +19960,7 @@ module$contents$ee$apiclient_BatchRequestService.prototype.send = function(param
19314
19960
  module$contents$ee$apiclient_BatchRequestService.prototype.makeRequest = function(params) {
19315
19961
  };
19316
19962
  module$contents$ee$apiclient_apiclient.parseBatchReply = function(contentType, responseText, handle) {
19317
- 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()) {
19318
19964
  var groups = $jscomp$key$m1153655765$100$part.value.split("\r\n\r\n");
19319
19965
  if (!(groups.length < 3)) {
19320
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");
@@ -19443,8 +20089,8 @@ module$contents$ee$apiclient_apiclient.send = function(path, params, callback, m
19443
20089
  var profileHookAtCallTime = module$contents$ee$apiclient_apiclient.profileHook_, contentType = "application/x-www-form-urlencoded";
19444
20090
  body && (contentType = "application/json", method && method.startsWith("multipart") && (contentType = method, method = "POST"));
19445
20091
  method = method || "POST";
19446
- var headers = {"Content-Type":contentType}, version = "0.1.414";
19447
- version === "0.1.414" && (version = "latest");
20092
+ var headers = {"Content-Type":contentType}, version = "0.1.416";
20093
+ version === "0.1.416" && (version = "latest");
19448
20094
  headers[module$contents$ee$apiclient_apiclient.API_CLIENT_VERSION_HEADER] = "ee-js/" + version;
19449
20095
  var authToken = module$contents$ee$apiclient_apiclient.getAuthToken();
19450
20096
  if (authToken != null) {
@@ -19577,7 +20223,7 @@ module$contents$ee$apiclient_apiclient.handleAuthResult_ = function(success, err
19577
20223
  }
19578
20224
  };
19579
20225
  module$contents$ee$apiclient_apiclient.makeRequest_ = function(params) {
19580
- 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()) {
19581
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;
19582
20228
  request.set(name, item);
19583
20229
  }
@@ -19932,7 +20578,7 @@ ee.rpc_convert.algorithms = function(result) {
19932
20578
  algorithm.deprecated && (internalAlgorithm.deprecated = algorithm.deprecationReason);
19933
20579
  algorithm.sourceCodeUri && (internalAlgorithm.sourceCodeUri = algorithm.sourceCodeUri);
19934
20580
  return internalAlgorithm;
19935
- }, 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()) {
19936
20582
  var algorithm = $jscomp$key$m29782521$48$algorithm.value, name = algorithm.name.replace(/^algorithms\//, "");
19937
20583
  internalAlgorithms[name] = convertAlgorithm(algorithm);
19938
20584
  }
@@ -20082,9 +20728,9 @@ ee.rpc_convert.getListToListAssets = function(param) {
20082
20728
  param.bbox && (assetsRequest.region = ee.rpc_convert.boundingBoxToGeoJson(param.bbox));
20083
20729
  param.region && (assetsRequest.region = param.region);
20084
20730
  param.bbox && param.region && console.warn("Multiple request parameters converted to region");
20085
- 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) {
20086
20732
  return !allKeys.includes(k);
20087
- })), $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()) {
20088
20734
  console.warn("Unrecognized key " + $jscomp$key$m29782521$49$key.value + " ignored");
20089
20735
  }
20090
20736
  return ee.rpc_convert.processListImagesParams(assetsRequest);
@@ -20308,7 +20954,7 @@ ee.rpc_convert.parseFilterParamsFromListImages_ = function(params) {
20308
20954
  })) {
20309
20955
  throw Error('Filter parameter "properties" must be an array of strings');
20310
20956
  }
20311
- 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()) {
20312
20958
  queryStrings.push($jscomp$key$m29782521$50$propertyQuery.value.trim().replace(/^(properties\.)?/, "properties."));
20313
20959
  }
20314
20960
  delete params.properties;
@@ -20645,7 +21291,7 @@ ee.Serializer.encodeCloudApiPretty = function(obj) {
20645
21291
  if (!goog.isObject(object)) {
20646
21292
  return object;
20647
21293
  }
20648
- 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()) {
20649
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;
20650
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 ?
20651
21297
  null : val : walkObject(val)) : ret[key] = walkObject(val);
@@ -20769,7 +21415,7 @@ ExpressionOptimizer.prototype.optimizeValue = function(value, depth) {
20769
21415
  return storeInSourceMap(value, optimized$jscomp$1);
20770
21416
  }
20771
21417
  if (value.dictionaryValue != null) {
20772
- 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()) {
20773
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;
20774
21420
  values[k] = this.optimizeValue(v, depth + 3);
20775
21421
  constantValues !== null && isConst(values[k]) ? constantValues[k] = serializeConst(values[k].constantValue) : constantValues = null;
@@ -20781,7 +21427,7 @@ ExpressionOptimizer.prototype.optimizeValue = function(value, depth) {
20781
21427
  return storeInSourceMap(value, optimized$jscomp$2);
20782
21428
  }
20783
21429
  if (value.functionInvocationValue != null) {
20784
- 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()) {
20785
21431
  var k$jscomp$0 = $jscomp$key$m759255156$30$k.value;
20786
21432
  args[k$jscomp$0] = this.optimizeValue(inv.arguments[k$jscomp$0], depth + 3);
20787
21433
  }
@@ -21679,7 +22325,7 @@ ee.data.createAsset = function(value, opt_path, opt_force, opt_properties, opt_c
21679
22325
  value.gcsLocation && !value.cloudStorageLocation && (value.cloudStorageLocation = value.gcsLocation, delete value.gcsLocation);
21680
22326
  value.cloudStorageLocation && (value.cloudStorageLocation = new module$exports$eeapiclient$ee_api_client.CloudStorageLocation(value.cloudStorageLocation));
21681
22327
  opt_properties && !value.properties && (value.properties = Object.assign({}, opt_properties));
21682
- 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()) {
21683
22329
  var prop = $jscomp$key$m1075644492$123$prop.value;
21684
22330
  if (value[prop]) {
21685
22331
  var $jscomp$compprop17 = {};
@@ -23952,7 +24598,7 @@ module$contents$ee$batch_Export.prefixImageFormatOptions_ = function(taskConfig,
23952
24598
  })) {
23953
24599
  throw Error("Parameter specified at least twice: once in config, and once in config format options.");
23954
24600
  }
23955
- 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()) {
23956
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;
23957
24603
  if (!module$contents$goog$array_contains(validOptionKeys, key)) {
23958
24604
  var validKeysMsg = validOptionKeys.join(", ");
@@ -26973,28 +27619,29 @@ ee.data.Profiler.Format.prototype.toString = function() {
26973
27619
  ee.data.Profiler.Format.TEXT = new ee.data.Profiler.Format("text");
26974
27620
  ee.data.Profiler.Format.JSON = new ee.data.Profiler.Format("json");
26975
27621
  (function() {
26976
- var exportedFnInfo = {}, orderedFnNames = "ee.ApiFunction._call ee.ApiFunction._apply ee.ApiFunction.lookup 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.batch.Export.videoMap.toCloudStorage ee.Collection.prototype.map ee.Collection.prototype.iterate ee.Collection.prototype.limit ee.Collection.prototype.filterDate ee.Collection.prototype.sort ee.Collection.prototype.filterMetadata ee.Collection.prototype.filterBounds ee.Collection.prototype.filter ee.ComputedObject.prototype.evaluate ee.ComputedObject.prototype.aside ee.ComputedObject.prototype.getInfo ee.ComputedObject.prototype.serialize ee.data.computeValue ee.data.setDefaultWorkloadTag ee.data.getInfo ee.data.getThumbId ee.data.createAsset ee.data.cancelTask ee.data.resetWorkloadTag ee.data.getVideoThumbId ee.data.getTaskStatus ee.data.updateTask ee.data.updateAsset ee.data.getList ee.data.getFilmstripThumbId ee.data.startIngestion ee.data.startProcessing ee.data.createFolder ee.data.makeThumbUrl ee.data.setAssetAcl ee.data.authenticateViaOauth ee.data.renameAsset ee.data.getMapId ee.data.listAssets ee.data.getTaskList ee.data.setAssetProperties ee.data.getTableDownloadId ee.data.authenticate ee.data.copyAsset ee.data.listBuckets ee.data.getTileUrl ee.data.makeTableDownloadUrl ee.data.getTaskListWithLimit ee.data.listOperations ee.data.startTableIngestion ee.data.getAssetRootQuota ee.data.deleteAsset ee.data.getWorkloadTag ee.data.getDownloadId ee.data.cancelOperation ee.data.getFeatureViewTilesKey ee.data.makeDownloadUrl ee.data.listImages ee.data.authenticateViaPopup ee.data.getAssetAcl ee.data.listFeatures ee.data.getAsset ee.data.getAssetRoots ee.data.setWorkloadTag ee.data.getOperation ee.data.authenticateViaPrivateKey ee.data.createAssetHome ee.data.newTaskId ee.Date ee.Deserializer.decodeCloudApi ee.Deserializer.fromCloudApiJSON ee.Deserializer.decode ee.Deserializer.fromJSON ee.Dictionary ee.reset ee.Algorithms ee.InitState ee.apply ee.TILE_SIZE ee.initialize ee.call ee.Element.prototype.set ee.Encodable.SourceFrame ee.Feature.prototype.getMapId ee.Feature.prototype.getMap ee.Feature ee.Feature.prototype.getInfo ee.FeatureCollection.prototype.getDownloadURL ee.FeatureCollection.prototype.getMap ee.FeatureCollection ee.FeatureCollection.prototype.getInfo ee.FeatureCollection.prototype.select ee.FeatureCollection.prototype.getMapId ee.Filter ee.Filter.eq ee.Filter.date ee.Filter.bounds ee.Filter.metadata ee.Filter.and ee.Filter.inList ee.Filter.prototype.not ee.Filter.gt ee.Filter.lt ee.Filter.neq ee.Filter.or ee.Filter.lte ee.Filter.gte ee.Function.prototype.apply ee.Function.prototype.call ee.Geometry.MultiPolygon ee.Geometry.MultiLineString ee.Geometry.prototype.toGeoJSON ee.Geometry.LinearRing ee.Geometry.MultiPoint ee.Geometry.prototype.toGeoJSONString ee.Geometry.BBox ee.Geometry.LineString ee.Geometry.Rectangle ee.Geometry ee.Geometry.Point ee.Geometry.Polygon ee.Geometry.prototype.serialize ee.Image.prototype.getMap ee.Image.prototype.getThumbId ee.Image.prototype.getThumbURL ee.Image.prototype.clip ee.Image ee.Image.cat ee.Image.prototype.select ee.Image.prototype.getInfo ee.Image.prototype.getMapId ee.Image.rgb ee.Image.prototype.expression ee.Image.prototype.rename ee.Image.prototype.getDownloadURL ee.ImageCollection.prototype.getMap ee.ImageCollection.prototype.getFilmstripThumbURL ee.ImageCollection.prototype.linkCollection ee.ImageCollection.prototype.first ee.ImageCollection.prototype.getMapId ee.ImageCollection.prototype.getInfo ee.ImageCollection.prototype.getVideoThumbURL ee.ImageCollection.prototype.select ee.ImageCollection ee.List ee.Number ee.Serializer.toReadableJSON ee.Serializer.toReadableCloudApiJSON ee.Serializer.encodeCloudApiPretty ee.Serializer.encode ee.Serializer.toCloudApiJSON ee.Serializer.toJSON ee.Serializer.encodeCloudApi ee.String ee.Terrain".split(" "),
26977
- orderedParamLists = [["name", "var_args"], ["name", "namedArgs"], ["name"], "collection opt_description opt_table opt_overwrite opt_append opt_selectors opt_maxVertices opt_priority".split(" "), "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(" "),
26978
- "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(" "),
26979
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(" "),
26980
- "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(" "), ["algorithm", "opt_dropNulls"], ["algorithm", "opt_first"], ["max", "opt_property", "opt_ascending"], ["start", "opt_end"], ["property", "opt_ascending"],
26981
- ["name", "operator", "value"], ["geometry"], ["filter"], ["callback"], ["func", "var_args"], ["opt_callback"], ["legacy"], ["obj", "opt_callback"], ["tag"], ["id", "opt_callback"], ["params", "opt_callback"], ["value", "opt_path", "opt_force", "opt_properties", "opt_callback"], ["taskId", "opt_callback"], ["opt_resetDefault"], ["params", "opt_callback"], ["taskId", "opt_callback"], ["taskId", "action", "opt_callback"], ["assetId", "asset", "updateFields", "opt_callback"], ["params", "opt_callback"],
26982
- ["params", "opt_callback"], ["taskId", "request", "opt_callback"], ["taskId", "params", "opt_callback"], ["path", "opt_force", "opt_callback"], ["id"], ["assetId", "aclUpdate", "opt_callback"], "clientId success opt_error opt_extraScopes opt_onImmediateFailed opt_suppressDefaultScopes".split(" "), ["sourceId", "destinationId", "opt_callback"], ["params", "opt_callback"], ["parent", "opt_params", "opt_callback"], ["opt_callback"], ["assetId", "properties", "opt_callback"], ["params", "opt_callback"],
26983
- ["clientId", "success", "opt_error", "opt_extraScopes", "opt_onImmediateFailed"], ["sourceId", "destinationId", "opt_overwrite", "opt_callback"], ["project", "opt_callback"], ["id", "x", "y", "z"], ["id"], ["opt_limit", "opt_callback"], ["opt_limit", "opt_callback"], ["taskId", "request", "opt_callback"], ["rootId", "opt_callback"], ["assetId", "opt_callback"], [], ["params", "opt_callback"], ["operationName", "opt_callback"], ["params", "opt_callback"], ["id"], ["parent", "opt_params", "opt_callback"],
26984
- ["opt_success", "opt_error"], ["assetId", "opt_callback"], ["asset", "params", "opt_callback"], ["id", "opt_callback"], ["opt_callback"], ["tag"], ["operationName", "opt_callback"], ["privateKey", "opt_success", "opt_error", "opt_extraScopes", "opt_suppressDefaultScopes"], ["requestedId", "opt_callback"], ["opt_count", "opt_callback"], ["date", "opt_tz"], ["json"], ["json"], ["json"], ["json"], ["opt_dict"], [], [], [], ["func", "namedArgs"], [], "opt_baseurl opt_tileurl opt_successCallback opt_errorCallback opt_xsrfToken opt_project".split(" "),
26985
- ["func", "var_args"], ["var_args"], [], ["opt_visParams", "opt_callback"], ["opt_visParams", "opt_callback"], ["geometry", "opt_properties"], ["opt_callback"], ["opt_format", "opt_selectors", "opt_filename", "opt_callback"], ["opt_visParams", "opt_callback"], ["args", "opt_column"], ["opt_callback"], ["propertySelectors", "opt_newProperties", "opt_retainGeometry"], ["opt_visParams", "opt_callback"], ["opt_filter"], ["name", "value"], ["start", "opt_end"], ["geometry", "opt_errorMargin"], ["name",
26986
- "operator", "value"], ["var_args"], ["opt_leftField", "opt_rightValue", "opt_rightField", "opt_leftValue"], [], ["name", "value"], ["name", "value"], ["name", "value"], ["var_args"], ["name", "value"], ["name", "value"], ["namedArgs"], ["var_args"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError", "opt_evenOdd"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], [], ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["coords", "opt_proj"], [], ["west", "south", "east", "north"],
26987
- ["coords", "opt_proj", "opt_geodesic", "opt_maxError"], ["coords", "opt_proj", "opt_geodesic", "opt_evenOdd"], ["geoJson", "opt_proj", "opt_geodesic", "opt_evenOdd"], ["coords", "opt_proj"], ["coords", "opt_proj", "opt_geodesic", "opt_maxError", "opt_evenOdd"], ["legacy"], ["opt_visParams", "opt_callback"], ["params", "opt_callback"], ["params", "opt_callback"], ["geometry"], ["opt_args"], ["var_args"], ["var_args"], ["opt_callback"], ["opt_visParams", "opt_callback"], ["r", "g", "b"], ["expression",
26988
- "opt_map"], ["var_args"], ["params", "opt_callback"], ["opt_visParams", "opt_callback"], ["params", "opt_callback"], ["imageCollection", "opt_linkedBands", "opt_linkedProperties", "opt_matchPropertyName"], [], ["opt_visParams", "opt_callback"], ["opt_callback"], ["params", "opt_callback"], ["selectors", "opt_names"], ["args"], ["list"], ["number"], ["obj"], ["obj"], ["obj"], ["obj", "opt_isCompound"], ["obj"], ["obj"], ["obj"], ["string"], []];
26989
- [ee.ApiFunction._call, ee.ApiFunction._apply, ee.ApiFunction.lookup, 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, module$contents$ee$batch_Export.table.toAsset,
26990
- module$contents$ee$batch_Export.classifier.toAsset, module$contents$ee$batch_Export.image.toAsset, module$contents$ee$batch_Export.map.toCloudStorage, module$contents$ee$batch_Export.videoMap.toCloudStorage, ee.Collection.prototype.map, ee.Collection.prototype.iterate, ee.Collection.prototype.limit, ee.Collection.prototype.filterDate, ee.Collection.prototype.sort, ee.Collection.prototype.filterMetadata, ee.Collection.prototype.filterBounds, ee.Collection.prototype.filter, ee.ComputedObject.prototype.evaluate,
26991
- ee.ComputedObject.prototype.aside, ee.ComputedObject.prototype.getInfo, ee.ComputedObject.prototype.serialize, ee.data.computeValue, ee.data.setDefaultWorkloadTag, ee.data.getInfo, ee.data.getThumbId, ee.data.createAsset, ee.data.cancelTask, ee.data.resetWorkloadTag, ee.data.getVideoThumbId, ee.data.getTaskStatus, ee.data.updateTask, ee.data.updateAsset, ee.data.getList, ee.data.getFilmstripThumbId, ee.data.startIngestion, ee.data.startProcessing, ee.data.createFolder, ee.data.makeThumbUrl, ee.data.setAssetAcl,
26992
- ee.data.authenticateViaOauth, ee.data.renameAsset, ee.data.getMapId, ee.data.listAssets, ee.data.getTaskList, ee.data.setAssetProperties, ee.data.getTableDownloadId, ee.data.authenticate, ee.data.copyAsset, ee.data.listBuckets, ee.data.getTileUrl, ee.data.makeTableDownloadUrl, ee.data.getTaskListWithLimit, ee.data.listOperations, ee.data.startTableIngestion, ee.data.getAssetRootQuota, ee.data.deleteAsset, ee.data.getWorkloadTag, ee.data.getDownloadId, ee.data.cancelOperation, ee.data.getFeatureViewTilesKey,
26993
- ee.data.makeDownloadUrl, ee.data.listImages, ee.data.authenticateViaPopup, ee.data.getAssetAcl, ee.data.listFeatures, ee.data.getAsset, ee.data.getAssetRoots, ee.data.setWorkloadTag, ee.data.getOperation, ee.data.authenticateViaPrivateKey, ee.data.createAssetHome, ee.data.newTaskId, ee.Date, ee.Deserializer.decodeCloudApi, ee.Deserializer.fromCloudApiJSON, ee.Deserializer.decode, ee.Deserializer.fromJSON, ee.Dictionary, ee.reset, ee.Algorithms, ee.InitState, ee.apply, ee.TILE_SIZE, ee.initialize,
26994
- ee.call, ee.Element.prototype.set, ee.Encodable.SourceFrame, ee.Feature.prototype.getMapId, ee.Feature.prototype.getMap, ee.Feature, ee.Feature.prototype.getInfo, ee.FeatureCollection.prototype.getDownloadURL, ee.FeatureCollection.prototype.getMap, ee.FeatureCollection, ee.FeatureCollection.prototype.getInfo, ee.FeatureCollection.prototype.select, ee.FeatureCollection.prototype.getMapId, ee.Filter, ee.Filter.eq, ee.Filter.date, ee.Filter.bounds, ee.Filter.metadata, ee.Filter.and, ee.Filter.inList,
26995
- ee.Filter.prototype.not, ee.Filter.gt, ee.Filter.lt, ee.Filter.neq, ee.Filter.or, ee.Filter.lte, ee.Filter.gte, ee.Function.prototype.apply, ee.Function.prototype.call, ee.Geometry.MultiPolygon, ee.Geometry.MultiLineString, ee.Geometry.prototype.toGeoJSON, ee.Geometry.LinearRing, ee.Geometry.MultiPoint, ee.Geometry.prototype.toGeoJSONString, ee.Geometry.BBox, ee.Geometry.LineString, ee.Geometry.Rectangle, ee.Geometry, ee.Geometry.Point, ee.Geometry.Polygon, ee.Geometry.prototype.serialize, ee.Image.prototype.getMap,
26996
- ee.Image.prototype.getThumbId, ee.Image.prototype.getThumbURL, ee.Image.prototype.clip, ee.Image, ee.Image.cat, ee.Image.prototype.select, ee.Image.prototype.getInfo, ee.Image.prototype.getMapId, ee.Image.rgb, ee.Image.prototype.expression, ee.Image.prototype.rename, ee.Image.prototype.getDownloadURL, ee.ImageCollection.prototype.getMap, ee.ImageCollection.prototype.getFilmstripThumbURL, ee.ImageCollection.prototype.linkCollection, ee.ImageCollection.prototype.first, ee.ImageCollection.prototype.getMapId,
26997
- ee.ImageCollection.prototype.getInfo, ee.ImageCollection.prototype.getVideoThumbURL, ee.ImageCollection.prototype.select, ee.ImageCollection, ee.List, ee.Number, ee.Serializer.toReadableJSON, ee.Serializer.toReadableCloudApiJSON, ee.Serializer.encodeCloudApiPretty, ee.Serializer.encode, ee.Serializer.toCloudApiJSON, ee.Serializer.toJSON, ee.Serializer.encodeCloudApi, 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) {
26998
27645
  fn && (exportedFnInfo[fn.toString()] = {name:orderedFnNames[i], paramNames:orderedParamLists[i]});
26999
27646
  });
27000
27647
  goog.global.EXPORTED_FN_INFO = exportedFnInfo;