@tko/build.reference 4.0.0-beta1.4 → 4.0.0-beta1.6

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/dist/browser.js CHANGED
@@ -1,9 +1,11 @@
1
- // @tko/build.reference 🥊 4.0.0-beta1.4 IIFE
1
+ "use strict";
2
+ // @tko/build.reference 🥊 4.0.0-beta1.6 IIFE
2
3
  var tko = (() => {
3
4
  var __defProp = Object.defineProperty;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __pow = Math.pow;
7
9
  var __export = (target, all) => {
8
10
  for (var name in all)
9
11
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -16,7 +18,7 @@ var tko = (() => {
16
18
  }
17
19
  return to;
18
20
  };
19
- var __toCommonJS = (mod2) => __copyProps(__defProp({}, "__esModule", { value: true }), mod2);
21
+ var __toCommonJS = (mod3) => __copyProps(__defProp({}, "__esModule", { value: true }), mod3);
20
22
 
21
23
  // src/index.ts
22
24
  var src_exports = {};
@@ -262,8 +264,8 @@ var tko = (() => {
262
264
 
263
265
  // ../../packages/utils/dist/ie.js
264
266
  var ieVersion = options_default.document && function() {
265
- var version2 = 3, div2 = options_default.document.createElement("div"), iElems = div2.getElementsByTagName("i");
266
- while (div2.innerHTML = "<!--[if gt IE " + ++version2 + "]><i></i><![endif]-->", iElems[0]) {
267
+ var version2 = 3, div3 = options_default.document.createElement("div"), iElems = div3.getElementsByTagName("i");
268
+ while (div3.innerHTML = "<!--[if gt IE " + ++version2 + "]><i></i><![endif]-->", iElems[0]) {
267
269
  }
268
270
  if (!version2) {
269
271
  const userAgent = window.navigator.userAgent;
@@ -1066,17 +1068,17 @@ var tko = (() => {
1066
1068
  function simpleHtmlParse(html2, documentContext) {
1067
1069
  documentContext || (documentContext = document);
1068
1070
  var windowContext = documentContext["parentWindow"] || documentContext["defaultView"] || window;
1069
- var tags = stringTrim(html2).toLowerCase(), div2 = documentContext.createElement("div"), wrap = getWrap(tags), depth = wrap[0];
1071
+ var tags = stringTrim(html2).toLowerCase(), div3 = documentContext.createElement("div"), wrap = getWrap(tags), depth = wrap[0];
1070
1072
  var markup = "ignored<div>" + wrap[1] + html2 + wrap[2] + "</div>";
1071
1073
  if (typeof windowContext["innerShiv"] === "function") {
1072
- div2.appendChild(windowContext["innerShiv"](markup));
1074
+ div3.appendChild(windowContext["innerShiv"](markup));
1073
1075
  } else {
1074
- div2.innerHTML = markup;
1076
+ div3.innerHTML = markup;
1075
1077
  }
1076
1078
  while (depth--) {
1077
- div2 = div2.lastChild;
1079
+ div3 = div3.lastChild;
1078
1080
  }
1079
- return makeArray(div2.lastChild.childNodes);
1081
+ return makeArray(div3.lastChild.childNodes);
1080
1082
  }
1081
1083
  function templateHtmlParse(html2, documentContext) {
1082
1084
  if (!documentContext) {
@@ -1298,10 +1300,10 @@ var tko = (() => {
1298
1300
  var w = options_default.global;
1299
1301
  if (w && w.MutationObserver && !(w.navigator && w.navigator.standalone)) {
1300
1302
  options_default.taskScheduler = function(callback) {
1301
- var div2 = w.document.createElement("div");
1302
- new w.MutationObserver(callback).observe(div2, { attributes: true });
1303
+ var div3 = w.document.createElement("div");
1304
+ new w.MutationObserver(callback).observe(div3, { attributes: true });
1303
1305
  return function() {
1304
- div2.classList.toggle("foo");
1306
+ div3.classList.toggle("foo");
1305
1307
  };
1306
1308
  }(scheduledProcess);
1307
1309
  } else if (w && w.document && "onreadystatechange" in w.document.createElement("script")) {
@@ -2087,7 +2089,7 @@ var tko = (() => {
2087
2089
  }
2088
2090
 
2089
2091
  // ../../packages/utils.parser/dist/operators.js
2090
- var __pow = Math.pow;
2092
+ var __pow2 = Math.pow;
2091
2093
  function LAMBDA() {
2092
2094
  }
2093
2095
  function unwrapOrCall(a, b) {
@@ -2113,7 +2115,7 @@ var tko = (() => {
2113
2115
  return --b;
2114
2116
  },
2115
2117
  "**": function exp(a, b) {
2116
- return __pow(a, b);
2118
+ return __pow2(a, b);
2117
2119
  },
2118
2120
  "*": function mul(a, b) {
2119
2121
  return a * b;
@@ -2146,10 +2148,10 @@ var tko = (() => {
2146
2148
  return a >= b;
2147
2149
  },
2148
2150
  "==": function equal(a, b) {
2149
- return a === b;
2151
+ return a == b;
2150
2152
  },
2151
2153
  "!=": function ne(a, b) {
2152
- return a !== b;
2154
+ return a != b;
2153
2155
  },
2154
2156
  "===": function sequal(a, b) {
2155
2157
  return a === b;
@@ -2176,13 +2178,13 @@ var tko = (() => {
2176
2178
  return a != null ? a : b;
2177
2179
  },
2178
2180
  ".": function member(a, b) {
2179
- return a[b];
2181
+ return a == null ? void 0 : a[b];
2180
2182
  },
2181
- "?.": function optionalMember(a, b) {
2183
+ "?.": function omember(a, b) {
2182
2184
  return a == null ? void 0 : a[b];
2183
2185
  },
2184
- "[": function member2(a, b) {
2185
- return a[b];
2186
+ "[": function bmember(a, b) {
2187
+ return a == null ? void 0 : a[b];
2186
2188
  },
2187
2189
  ",": function comma(a, b) {
2188
2190
  return b;
@@ -2363,7 +2365,7 @@ var tko = (() => {
2363
2365
  value2 = value2.apply(lastValue || $data, member3);
2364
2366
  lastValue = value2;
2365
2367
  } else if (value2 === null || value2 === void 0) {
2366
- throw new Error(`dereference of null value in ${JSON.stringify(this, null, 2)} context: ${JSON.stringify($context, null, 2)}`);
2368
+ return value2;
2367
2369
  } else {
2368
2370
  lastValue = value2;
2369
2371
  value2 = Node2.value_of(value2[member3], $context, globals, node);
@@ -2579,7 +2581,9 @@ ${name} ${msg} of
2579
2581
  this.white();
2580
2582
  ch = this.next();
2581
2583
  if (ch !== ":" && ch !== ",") {
2582
- this.error("Object name: " + name + " missing closing " + enclosedBy);
2584
+ this.error(
2585
+ "Object name: " + name + " missing closing " + enclosedBy
2586
+ );
2583
2587
  }
2584
2588
  return name;
2585
2589
  } else if (ch === ":" || ch <= " " || ch === "," || ch === "|") {
@@ -2847,13 +2851,13 @@ ${name} ${msg} of
2847
2851
  }
2848
2852
  ch = this.white();
2849
2853
  }
2850
- var filter = function filter2(value2, ignored, context, globals, node) {
2854
+ function filter(value2, ignored, context, globals, node) {
2851
2855
  var argValues = [value2];
2852
2856
  for (var i = 0, j = args.length; i < j; ++i) {
2853
2857
  argValues.push(Node2.value_of(args[i], context, globals, node));
2854
2858
  }
2855
- return nextFilter(options_default.filters[name].apply(context, argValues));
2856
- };
2859
+ return nextFilter(options_default.filters[name].apply(context, argValues), ignored, context, globals, node);
2860
+ }
2857
2861
  filter.precedence = 1;
2858
2862
  return filter;
2859
2863
  }
@@ -2888,7 +2892,7 @@ ${name} ${msg} of
2888
2892
  if (op === operators["?"]) {
2889
2893
  this.ternary(nodes);
2890
2894
  break;
2891
- } else if (op === operators["."]) {
2895
+ } else if (op === operators["."] || op === operators["?."]) {
2892
2896
  nodes.push(op);
2893
2897
  nodes.push(this.member());
2894
2898
  op = null;
@@ -2930,12 +2934,12 @@ ${name} ${msg} of
2930
2934
  return this.expression(filterable, false);
2931
2935
  }
2932
2936
  ternary(nodes) {
2933
- var ternary2 = new Ternary();
2934
- ternary2.yes = this.singleValueExpression();
2937
+ var ternary3 = new Ternary();
2938
+ ternary3.yes = this.singleValueExpression();
2935
2939
  this.next(":");
2936
- ternary2.no = this.singleValueExpression();
2940
+ ternary3.no = this.singleValueExpression();
2937
2941
  nodes.push(operators["?"]);
2938
- nodes.push(ternary2);
2942
+ nodes.push(ternary3);
2939
2943
  }
2940
2944
  funcArguments() {
2941
2945
  let args = [];
@@ -4276,13 +4280,17 @@ ${name} ${msg} of
4276
4280
  const provider = getBindingProvider();
4277
4281
  const getBindings = provider.getBindingAccessors;
4278
4282
  if (isProviderForNode(provider, node)) {
4279
- var bindingsUpdater = computed(function() {
4280
- bindings6 = sourceBindings ? sourceBindings(bindingContext2, node) : getBindings.call(provider, node, bindingContext2);
4281
- if (bindings6 && bindingContext2[contextSubscribeSymbol]) {
4282
- bindingContext2[contextSubscribeSymbol]();
4283
- }
4284
- return bindings6;
4285
- }, null, { disposeWhenNodeIsRemoved: node });
4283
+ var bindingsUpdater = computed(
4284
+ function() {
4285
+ bindings6 = sourceBindings ? sourceBindings(bindingContext2, node) : getBindings.call(provider, node, bindingContext2);
4286
+ if (bindings6 && bindingContext2[contextSubscribeSymbol]) {
4287
+ bindingContext2[contextSubscribeSymbol]();
4288
+ }
4289
+ return bindings6;
4290
+ },
4291
+ null,
4292
+ { disposeWhenNodeIsRemoved: node }
4293
+ );
4286
4294
  if (!bindings6 || !bindingsUpdater.isActive()) {
4287
4295
  bindingsUpdater = null;
4288
4296
  }
@@ -4290,9 +4298,10 @@ ${name} ${msg} of
4290
4298
  }
4291
4299
  var bindingHandlerThatControlsDescendantBindings;
4292
4300
  if (bindings6) {
4293
- let allBindings = function() {
4301
+ let allBindings2 = function() {
4294
4302
  return objectMap(bindingsUpdater ? bindingsUpdater() : bindings6, evaluateValueAccessor);
4295
4303
  };
4304
+ var allBindings = allBindings2;
4296
4305
  const $component = bindingContext2.$component || {};
4297
4306
  const allBindingHandlers = {};
4298
4307
  data_exports.set(node, "bindingHandlers", allBindingHandlers);
@@ -4304,8 +4313,8 @@ ${name} ${msg} of
4304
4313
  return valueAccessor(optionalValue);
4305
4314
  }
4306
4315
  } : (bindingKey) => bindings6[bindingKey];
4307
- allBindings.has = (key) => key in bindings6;
4308
- allBindings.get = (key) => bindings6[key] && evaluateValueAccessor(getValueAccessor(key));
4316
+ allBindings2.has = (key) => key in bindings6;
4317
+ allBindings2.get = (key) => bindings6[key] && evaluateValueAccessor(getValueAccessor(key));
4309
4318
  if (bindingEvent.childrenComplete in bindings6) {
4310
4319
  bindingEvent.subscribe(node, bindingEvent.childrenComplete, () => {
4311
4320
  const callback = evaluateValueAccessor(bindings6[bindingEvent.childrenComplete]);
@@ -4321,33 +4330,38 @@ ${name} ${msg} of
4321
4330
  const bindingsGenerated = topologicalSortBindings(bindings6, $component);
4322
4331
  const nodeAsyncBindingPromises = /* @__PURE__ */ new Set();
4323
4332
  for (const [key, BindingHandlerClass] of bindingsGenerated) {
4324
- let reportBindingError = function(during, errorCaptured) {
4333
+ let reportBindingError2 = function(during, errorCaptured) {
4325
4334
  onBindingError({
4326
4335
  during,
4327
4336
  errorCaptured,
4328
4337
  bindings: bindings6,
4329
- allBindings,
4338
+ allBindings: allBindings2,
4330
4339
  bindingKey: key,
4331
4340
  bindingContext: bindingContext2,
4332
4341
  element: node,
4333
4342
  valueAccessor: getValueAccessor(key)
4334
4343
  });
4335
4344
  };
4345
+ var reportBindingError = reportBindingError2;
4336
4346
  if (node.nodeType === 8 && !BindingHandlerClass.allowVirtualElements) {
4337
4347
  throw new Error(`The binding '${key}' cannot be used with virtual elements`);
4338
4348
  }
4339
4349
  try {
4340
- const bindingHandler = dependencyDetection_exports.ignore(() => new BindingHandlerClass({
4341
- allBindings,
4342
- $element: node,
4343
- $context: bindingContext2,
4344
- onError: reportBindingError,
4345
- valueAccessor(...v) {
4346
- return getValueAccessor(key)(...v);
4347
- }
4348
- }));
4350
+ const bindingHandler = dependencyDetection_exports.ignore(
4351
+ () => new BindingHandlerClass({
4352
+ allBindings: allBindings2,
4353
+ $element: node,
4354
+ $context: bindingContext2,
4355
+ onError: reportBindingError2,
4356
+ valueAccessor(...v) {
4357
+ return getValueAccessor(key)(...v);
4358
+ }
4359
+ })
4360
+ );
4349
4361
  if (bindingHandler.onValueChange) {
4350
- dependencyDetection_exports.ignore(() => bindingHandler.computed("onValueChange"));
4362
+ dependencyDetection_exports.ignore(
4363
+ () => bindingHandler.computed("onValueChange")
4364
+ );
4351
4365
  }
4352
4366
  allBindingHandlers[key] = bindingHandler;
4353
4367
  if (bindingHandler.controlsDescendants) {
@@ -4361,7 +4375,7 @@ ${name} ${msg} of
4361
4375
  nodeAsyncBindingPromises.add(bindingHandler.bindingCompleted);
4362
4376
  }
4363
4377
  } catch (err) {
4364
- reportBindingError("creation", err);
4378
+ reportBindingError2("creation", err);
4365
4379
  }
4366
4380
  }
4367
4381
  triggerDescendantsComplete(node, bindings6, nodeAsyncBindingPromises);
@@ -4868,15 +4882,19 @@ ${name} ${msg} of
4868
4882
  return !firstTargetNode || !domNodeIsAttachedToDocument(firstTargetNode);
4869
4883
  };
4870
4884
  var activelyDisposeWhenNodeIsRemoved = firstTargetNode && renderMode === "replaceNode" ? firstTargetNode.parentNode : firstTargetNode;
4871
- return computed(function() {
4872
- var bindingContext2 = dataOrBindingContext && dataOrBindingContext instanceof bindingContext ? dataOrBindingContext : new bindingContext(dataOrBindingContext, null, null, null, { "exportDependencies": true });
4873
- var templateName = resolveTemplateName(template, bindingContext2.$data, bindingContext2);
4874
- const renderedNodesArray = executeTemplate(targetNodeOrNodeArray, renderMode, templateName, bindingContext2, options3, afterBindingCallback);
4875
- if (renderMode === "replaceNode") {
4876
- targetNodeOrNodeArray = renderedNodesArray;
4877
- firstTargetNode = getFirstNodeFromPossibleArray(targetNodeOrNodeArray);
4878
- }
4879
- }, null, { disposeWhen: whenToDispose, disposeWhenNodeIsRemoved: activelyDisposeWhenNodeIsRemoved });
4885
+ return computed(
4886
+ function() {
4887
+ var bindingContext2 = dataOrBindingContext && dataOrBindingContext instanceof bindingContext ? dataOrBindingContext : new bindingContext(dataOrBindingContext, null, null, null, { "exportDependencies": true });
4888
+ var templateName = resolveTemplateName(template, bindingContext2.$data, bindingContext2);
4889
+ const renderedNodesArray = executeTemplate(targetNodeOrNodeArray, renderMode, templateName, bindingContext2, options3, afterBindingCallback);
4890
+ if (renderMode === "replaceNode") {
4891
+ targetNodeOrNodeArray = renderedNodesArray;
4892
+ firstTargetNode = getFirstNodeFromPossibleArray(targetNodeOrNodeArray);
4893
+ }
4894
+ },
4895
+ null,
4896
+ { disposeWhen: whenToDispose, disposeWhenNodeIsRemoved: activelyDisposeWhenNodeIsRemoved }
4897
+ );
4880
4898
  } else {
4881
4899
  return memoization_exports.memoize(function(domNode) {
4882
4900
  renderTemplate(template, dataOrBindingContext, options3, domNode, "replaceNode");
@@ -4888,9 +4906,13 @@ ${name} ${msg} of
4888
4906
  function executeTemplateForArrayItem(arrayValue, index) {
4889
4907
  if (options3.as) {
4890
4908
  if (options_default.createChildContextWithAs) {
4891
- arrayItemContext = parentBindingContext.createChildContext(arrayValue, options3.as, (context) => {
4892
- context.$index = index;
4893
- });
4909
+ arrayItemContext = parentBindingContext.createChildContext(
4910
+ arrayValue,
4911
+ options3.as,
4912
+ (context) => {
4913
+ context.$index = index;
4914
+ }
4915
+ );
4894
4916
  } else {
4895
4917
  arrayItemContext = parentBindingContext.extend({
4896
4918
  [options3.as]: arrayValue,
@@ -5191,14 +5213,19 @@ ${name} ${msg} of
5191
5213
  };
5192
5214
  }
5193
5215
  create(...additionalProperties) {
5194
- const instance = Object.assign({
5195
- get getBindingHandler() {
5196
- return options_default.getBindingHandler;
5216
+ const instance = Object.assign(
5217
+ {
5218
+ get getBindingHandler() {
5219
+ return options_default.getBindingHandler;
5220
+ },
5221
+ set getBindingHandler(fn) {
5222
+ options_default.set("getBindingHandler", fn);
5223
+ }
5197
5224
  },
5198
- set getBindingHandler(fn) {
5199
- options_default.set("getBindingHandler", fn);
5200
- }
5201
- }, knockout, this.providedProperties, ...additionalProperties);
5225
+ knockout,
5226
+ this.providedProperties,
5227
+ ...additionalProperties
5228
+ );
5202
5229
  instance.options.knockoutInstance = instance;
5203
5230
  return instance;
5204
5231
  }
@@ -5211,11 +5238,15 @@ ${name} ${msg} of
5211
5238
  this[nameOrObject] = value2;
5212
5239
  } else if (typeof nameOrObject === "object") {
5213
5240
  if (value2 !== void 0) {
5214
- options_default.onError(new Error("Given extraneous `value` parameter (first param should be a string, but it was an object)." + nameOrObject));
5241
+ options_default.onError(
5242
+ new Error("Given extraneous `value` parameter (first param should be a string, but it was an object)." + nameOrObject)
5243
+ );
5215
5244
  }
5216
5245
  Object.assign(this, nameOrObject);
5217
5246
  } else {
5218
- options_default.onError(new Error("Given a bad binding handler type: " + nameOrObject));
5247
+ options_default.onError(
5248
+ new Error("Given a bad binding handler type: " + nameOrObject)
5249
+ );
5219
5250
  }
5220
5251
  }
5221
5252
  get(nameOrDotted) {
@@ -5261,7 +5292,10 @@ ${name} ${msg} of
5261
5292
  }
5262
5293
  }
5263
5294
  makeAccessorsFromFunction(callback) {
5264
- return objectMap(dependencyDetection_exports.ignore(callback), (value2, key) => () => callback()[key]);
5295
+ return objectMap(
5296
+ dependencyDetection_exports.ignore(callback),
5297
+ (value2, key) => () => callback()[key]
5298
+ );
5265
5299
  }
5266
5300
  makeValueAccessor(value2) {
5267
5301
  return () => value2;
@@ -5735,7 +5769,10 @@ ${name} ${msg} of
5735
5769
  if (!accessors || Object.keys(accessors).length === 0) {
5736
5770
  return { $raw: {} };
5737
5771
  }
5738
- const $raw = objectMap(accessors, (value2) => computed(value2, null, { disposeWhenNodeIsRemoved: node }));
5772
+ const $raw = objectMap(
5773
+ accessors,
5774
+ (value2) => computed(value2, null, { disposeWhenNodeIsRemoved: node })
5775
+ );
5739
5776
  const params = objectMap($raw, (v) => this.makeParamValue(node, v));
5740
5777
  return Object.assign({ $raw }, params);
5741
5778
  }
@@ -6673,7 +6710,10 @@ ${name} ${msg} of
6673
6710
  constructor(...args) {
6674
6711
  super(...args);
6675
6712
  if (ieVersion < 11) {
6676
- this.addEventListener("propertychange", (event) => event.propertyName === "value" && this.updateModel(event));
6713
+ this.addEventListener(
6714
+ "propertychange",
6715
+ (event) => event.propertyName === "value" && this.updateModel(event)
6716
+ );
6677
6717
  }
6678
6718
  if (ieVersion >= 8 && ieVersion < 10) {
6679
6719
  this.watchForSelectionChangeEvent();
@@ -6759,7 +6799,10 @@ ${name} ${msg} of
6759
6799
  constructor(...args) {
6760
6800
  super(...args);
6761
6801
  if (this.isCheckboxOrRadio) {
6762
- applyBindingAccessorsToNode(this.$element, { checkedValue: this.valueAccessor });
6802
+ applyBindingAccessorsToNode(
6803
+ this.$element,
6804
+ { checkedValue: this.valueAccessor }
6805
+ );
6763
6806
  return;
6764
6807
  }
6765
6808
  this.propertyChangedFired = false;
@@ -7128,7 +7171,9 @@ ${name} ${msg} of
7128
7171
  this.container = virtualElements_exports.isStartComment(this.$element) ? this.$element.parentNode : this.$element;
7129
7172
  this.generateContext = this.createContextGenerator(this.as);
7130
7173
  this.$indexHasBeenRequested = false;
7131
- this.templateNode = makeTemplateNode(settings.templateNode || (settings.name ? document.getElementById(settings.name).cloneNode(true) : this.$element));
7174
+ this.templateNode = makeTemplateNode(
7175
+ settings.templateNode || (settings.name ? document.getElementById(settings.name).cloneNode(true) : this.$element)
7176
+ );
7132
7177
  ["afterAdd", "beforeRemove", "afterQueueFlush", "beforeQueueFlush"].forEach((p) => {
7133
7178
  this[p] = settings[p] || this.allBindings.get(p);
7134
7179
  });
@@ -7283,7 +7328,10 @@ ${name} ${msg} of
7283
7328
  var templateClone = this.templateNode.cloneNode(true);
7284
7329
  children = virtualElements_exports.childNodes(templateClone);
7285
7330
  this.updateFirstLastNodesList(index + i, children);
7286
- const bindingResult = applyBindingsToDescendants(this.generateContext(valuesToAdd[i]), templateClone);
7331
+ const bindingResult = applyBindingsToDescendants(
7332
+ this.generateContext(valuesToAdd[i]),
7333
+ templateClone
7334
+ );
7287
7335
  asyncBindingResults.push(bindingResult);
7288
7336
  }
7289
7337
  allChildNodes.push(...children);
@@ -7607,7 +7655,11 @@ ${name} ${msg} of
7607
7655
  adds.forEach((change) => this.addChange(...change));
7608
7656
  }
7609
7657
  addChange(index, jsx) {
7610
- this.nodeArrayOrObservableAtIndex.splice(index, 0, this.injectNode(jsx, this.lastNodeFor(index)));
7658
+ this.nodeArrayOrObservableAtIndex.splice(
7659
+ index,
7660
+ 0,
7661
+ this.injectNode(jsx, this.lastNodeFor(index))
7662
+ );
7611
7663
  }
7612
7664
  injectNode(jsx, nextNode) {
7613
7665
  let nodeArrayOrObservable;
@@ -7618,7 +7670,9 @@ ${name} ${msg} of
7618
7670
  } else if (typeof jsx !== "string" && isIterable(jsx)) {
7619
7671
  nodeArrayOrObservable = [];
7620
7672
  for (const child of jsx) {
7621
- nodeArrayOrObservable.unshift(this.injectNode(child, nextNode));
7673
+ nodeArrayOrObservable.unshift(
7674
+ this.injectNode(child, nextNode)
7675
+ );
7622
7676
  }
7623
7677
  } else {
7624
7678
  const $context = contextFor(this.parentNode);
@@ -7642,7 +7696,9 @@ ${name} ${msg} of
7642
7696
  return node.nodeType === 1 || node.nodeType === 8;
7643
7697
  }
7644
7698
  delChange(index) {
7645
- this.removeNodeArrayOrObservable(this.nodeArrayOrObservableAtIndex[index]);
7699
+ this.removeNodeArrayOrObservable(
7700
+ this.nodeArrayOrObservableAtIndex[index]
7701
+ );
7646
7702
  this.nodeArrayOrObservableAtIndex.splice(index, 1);
7647
7703
  }
7648
7704
  getSubscriptionsForNode(node) {
@@ -7709,9 +7765,11 @@ ${name} ${msg} of
7709
7765
  node[ORIGINAL_JSX_SYM] = jsx;
7710
7766
  if (isObservable(jsx.attributes)) {
7711
7767
  const subscriptions = this.getSubscriptionsForNode(node);
7712
- subscriptions.push(jsx.attributes.subscribe((attrs) => {
7713
- this.updateAttributes(node, unwrap(attrs));
7714
- }));
7768
+ subscriptions.push(
7769
+ jsx.attributes.subscribe((attrs) => {
7770
+ this.updateAttributes(node, unwrap(attrs));
7771
+ })
7772
+ );
7715
7773
  }
7716
7774
  this.updateAttributes(node, unwrap(jsx.attributes));
7717
7775
  this.addDisposable(new JsxObserver(jsx.children, node, null, xmlns, this.noInitialBinding));
@@ -7730,7 +7788,9 @@ ${name} ${msg} of
7730
7788
  for (const [name, value2] of Object.entries(attributes || {})) {
7731
7789
  toRemove.delete(name);
7732
7790
  if (isObservable(value2)) {
7733
- subscriptions.push(value2.subscribe((attr2) => this.setNodeAttribute(node, name, value2)));
7791
+ subscriptions.push(
7792
+ value2.subscribe((attr2) => this.setNodeAttribute(node, name, value2))
7793
+ );
7734
7794
  }
7735
7795
  this.setNodeAttribute(node, name, value2);
7736
7796
  }
@@ -7838,7 +7898,9 @@ ${name} ${msg} of
7838
7898
  var ComponentBinding = class extends DescendantBindingHandler {
7839
7899
  constructor(params) {
7840
7900
  super(params);
7841
- this.originalChildNodes = makeArray(virtualElements_exports.childNodes(this.$element));
7901
+ this.originalChildNodes = makeArray(
7902
+ virtualElements_exports.childNodes(this.$element)
7903
+ );
7842
7904
  this.computed("computeApplyComponent");
7843
7905
  }
7844
7906
  cloneTemplateIntoElement(componentName, template, element) {
@@ -7893,7 +7955,9 @@ ${name} ${msg} of
7893
7955
  const ctxExtender = (ctx) => Object.assign(ctx, {
7894
7956
  $component,
7895
7957
  $componentTemplateNodes: this.originalChildNodes,
7896
- $componentTemplateSlotNodes: this.makeTemplateSlotNodes(this.originalChildNodes)
7958
+ $componentTemplateSlotNodes: this.makeTemplateSlotNodes(
7959
+ this.originalChildNodes
7960
+ )
7897
7961
  });
7898
7962
  return this.$context.createChildContext($component, void 0, ctxExtender);
7899
7963
  }
@@ -8048,7 +8112,434 @@ ${name} ${msg} of
8048
8112
  return (+unwrap(value2)).toLocaleString();
8049
8113
  };
8050
8114
 
8115
+ // ../../packages/utils.parser/src/operators.ts
8116
+ function LAMBDA2() {
8117
+ }
8118
+ function unwrapOrCall2(a, b) {
8119
+ while (typeof b === "function") {
8120
+ b = b();
8121
+ }
8122
+ return b;
8123
+ }
8124
+ var operators2 = {
8125
+ "@": unwrapOrCall2,
8126
+ "#": (a, b) => () => unwrap(b),
8127
+ "=>": LAMBDA2,
8128
+ "!": function not2(a, b) {
8129
+ return !b;
8130
+ },
8131
+ "!!": function notnot2(a, b) {
8132
+ return !!b;
8133
+ },
8134
+ "++": function preinc3(a, b) {
8135
+ return ++b;
8136
+ },
8137
+ "--": function preinc4(a, b) {
8138
+ return --b;
8139
+ },
8140
+ "**": function exp2(a, b) {
8141
+ return __pow(a, b);
8142
+ },
8143
+ "*": function mul2(a, b) {
8144
+ return a * b;
8145
+ },
8146
+ "/": function div2(a, b) {
8147
+ return a / b;
8148
+ },
8149
+ "%": function mod2(a, b) {
8150
+ return a % b;
8151
+ },
8152
+ "+": function add2(a, b) {
8153
+ return a + b;
8154
+ },
8155
+ "-": function sub2(a, b) {
8156
+ return (a || 0) - (b || 0);
8157
+ },
8158
+ "&-": function neg2(a, b) {
8159
+ return -1 * b;
8160
+ },
8161
+ "<": function lt2(a, b) {
8162
+ return a < b;
8163
+ },
8164
+ "<=": function le2(a, b) {
8165
+ return a <= b;
8166
+ },
8167
+ ">": function gt2(a, b) {
8168
+ return a > b;
8169
+ },
8170
+ ">=": function ge2(a, b) {
8171
+ return a >= b;
8172
+ },
8173
+ "==": function equal2(a, b) {
8174
+ return a == b;
8175
+ },
8176
+ "!=": function ne2(a, b) {
8177
+ return a != b;
8178
+ },
8179
+ "===": function sequal2(a, b) {
8180
+ return a === b;
8181
+ },
8182
+ "!==": function sne2(a, b) {
8183
+ return a !== b;
8184
+ },
8185
+ "&": function bitAnd2(a, b) {
8186
+ return a & b;
8187
+ },
8188
+ "^": function xor2(a, b) {
8189
+ return a ^ b;
8190
+ },
8191
+ "|": function bitOr2(a, b) {
8192
+ return a | b;
8193
+ },
8194
+ "&&": function logicAnd2(a, b) {
8195
+ return a && b;
8196
+ },
8197
+ "||": function logicOr2(a, b) {
8198
+ return a || b;
8199
+ },
8200
+ "??": function nullishCoalesce2(a, b) {
8201
+ return a != null ? a : b;
8202
+ },
8203
+ ".": function member2(a, b) {
8204
+ return a == null ? void 0 : a[b];
8205
+ },
8206
+ "?.": function omember2(a, b) {
8207
+ return a == null ? void 0 : a[b];
8208
+ },
8209
+ "[": function bmember2(a, b) {
8210
+ return a == null ? void 0 : a[b];
8211
+ },
8212
+ ",": function comma2(a, b) {
8213
+ return b;
8214
+ },
8215
+ "call": function callOp2(a, b) {
8216
+ return a.apply(null, b);
8217
+ }
8218
+ };
8219
+ operators2["@"].precedence = 21;
8220
+ operators2["#"].precedence = 21;
8221
+ operators2["."].precedence = 19;
8222
+ operators2["["].precedence = 19;
8223
+ operators2["?."].precedence = 19;
8224
+ operators2["!"].precedence = 16;
8225
+ operators2["!!"].precedence = 16;
8226
+ operators2["++"].precedence = 16;
8227
+ operators2["--"].precedence = 16;
8228
+ operators2["&-"].precedence = 16;
8229
+ operators2["**"].precedent = 15;
8230
+ operators2["%"].precedence = 14;
8231
+ operators2["*"].precedence = 14;
8232
+ operators2["/"].precedence = 14;
8233
+ operators2["+"].precedence = 13;
8234
+ operators2["-"].precedence = 13;
8235
+ operators2["|"].precedence = 12;
8236
+ operators2["^"].precedence = 11;
8237
+ operators2["&"].precedence = 10;
8238
+ operators2["<"].precedence = 11;
8239
+ operators2["<="].precedence = 11;
8240
+ operators2[">"].precedence = 11;
8241
+ operators2[">="].precedence = 11;
8242
+ operators2["=="].precedence = 10;
8243
+ operators2["!="].precedence = 10;
8244
+ operators2["==="].precedence = 10;
8245
+ operators2["!=="].precedence = 10;
8246
+ operators2["&&"].precedence = 6;
8247
+ operators2["||"].precedence = 5;
8248
+ operators2["??"].precedence = 5;
8249
+ operators2["&&"].earlyOut = (a) => !a;
8250
+ operators2["||"].earlyOut = (a) => a;
8251
+ operators2["??"].earlyOut = (a) => a;
8252
+ operators2[","].precedence = 2;
8253
+ operators2["call"].precedence = 1;
8254
+ operators2["=>"].precedence = 1;
8255
+
8256
+ // ../../packages/utils.parser/src/Node.ts
8257
+ var IS_EXPR_OR_IDENT2 = Symbol("Node - Is Expression Or Identifier");
8258
+ var Node3 = class {
8259
+ constructor(lhs, op, rhs) {
8260
+ this.lhs = lhs;
8261
+ this.op = op;
8262
+ this.rhs = rhs;
8263
+ }
8264
+ static get operators() {
8265
+ return operators2;
8266
+ }
8267
+ get_leaf_value(leaf, context, globals, node) {
8268
+ if (typeof leaf === "function") {
8269
+ return unwrap(leaf());
8270
+ }
8271
+ if (typeof leaf !== "object" || leaf === null) {
8272
+ return leaf;
8273
+ }
8274
+ if (leaf[Node3.isExpressionOrIdentifierSymbol]) {
8275
+ return unwrap(leaf.get_value(void 0, context, globals, node));
8276
+ }
8277
+ return leaf;
8278
+ }
8279
+ get_value(notused, context, globals, node) {
8280
+ var node = this;
8281
+ if (node.op === LAMBDA2) {
8282
+ return (...args) => {
8283
+ let lambdaContext = context;
8284
+ if (node.lhs) {
8285
+ lambdaContext = node.lhs.extendContext(context, args);
8286
+ }
8287
+ return node.get_leaf_value(node.rhs, lambdaContext, globals, node);
8288
+ };
8289
+ }
8290
+ const lhv = node.get_leaf_value(node.lhs, context, globals, node);
8291
+ const earlyOut = node.op.earlyOut;
8292
+ if (earlyOut && earlyOut(lhv)) {
8293
+ return lhv;
8294
+ }
8295
+ const rhv = node.get_leaf_value(node.rhs, context, globals, node);
8296
+ return node.op(lhv, rhv, context, globals);
8297
+ }
8298
+ static get isExpressionOrIdentifierSymbol() {
8299
+ return IS_EXPR_OR_IDENT2;
8300
+ }
8301
+ get [IS_EXPR_OR_IDENT2]() {
8302
+ return true;
8303
+ }
8304
+ static value_of(item, context, globals, node) {
8305
+ if (item && item[Node3.isExpressionOrIdentifierSymbol]) {
8306
+ return item.get_value(item, context, globals, node);
8307
+ }
8308
+ return item;
8309
+ }
8310
+ static create_root(nodes, debug = false) {
8311
+ const out = [];
8312
+ const ops = [];
8313
+ for (let i = 0; i < nodes.length; i += 2) {
8314
+ out.push(nodes[i]);
8315
+ const op = nodes[i + 1];
8316
+ const prec = (op == null ? void 0 : op.precedence) || 0;
8317
+ while (ops.length && prec <= ops[ops.length - 1].precedence) {
8318
+ const rhs = out.pop();
8319
+ const lhs = out.pop();
8320
+ out.push(new Node3(lhs, ops.pop(), rhs));
8321
+ }
8322
+ ops.push(op);
8323
+ }
8324
+ if (out.length !== 1) {
8325
+ throw new Error(`unexpected nodes remain in shunting yard output stack: ${out}`);
8326
+ }
8327
+ return out[0];
8328
+ }
8329
+ };
8330
+ operators2["?"] = function ternary2(a, b, context, globals, node) {
8331
+ return Node3.value_of(a ? b.yes : b.no, context, globals, node);
8332
+ };
8333
+ operators2["?"].precedence = 4;
8334
+
8335
+ // ../../packages/utils.parser/src/Expression.ts
8336
+ var Expression3 = class {
8337
+ constructor(nodes) {
8338
+ this.nodes = nodes;
8339
+ this.root = Node3.create_root(nodes);
8340
+ }
8341
+ get_value(parent, context, globals, node) {
8342
+ if (!this.root) {
8343
+ this.root = Node3.create_root(this.nodes);
8344
+ }
8345
+ return this.root.get_value(parent, context, globals, node);
8346
+ }
8347
+ };
8348
+ Expression3.prototype[Node3.isExpressionOrIdentifierSymbol] = true;
8349
+
8350
+ // ../../packages/utils.parser/src/Arguments.ts
8351
+ var Arguments2 = class {
8352
+ constructor(parser, args) {
8353
+ this.parser = parser;
8354
+ this.args = args;
8355
+ }
8356
+ get_value(parent, context, globals, node) {
8357
+ var deReffedArgs = [];
8358
+ for (var i = 0, j = this.args.length; i < j; ++i) {
8359
+ deReffedArgs.push(Node3.value_of(this.args[i], context, globals, node));
8360
+ }
8361
+ return deReffedArgs;
8362
+ }
8363
+ get [Node3.isExpressionOrIdentifierSymbol]() {
8364
+ return true;
8365
+ }
8366
+ };
8367
+
8368
+ // ../../packages/utils.parser/src/identifierExpressions.ts
8369
+ var IDStart2 = /[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
8370
+ var IDContinue2 = /[\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
8371
+
8372
+ // ../../packages/utils.parser/src/Identifier.ts
8373
+ var Identifier2 = class {
8374
+ constructor(parser, token, dereferences) {
8375
+ this.token = token;
8376
+ this.dereferences = dereferences;
8377
+ this.parser = parser;
8378
+ }
8379
+ dereference(value2, $context, globals, node) {
8380
+ let member3;
8381
+ let refs = this.dereferences || [];
8382
+ const $data = $context.$data || {};
8383
+ let lastValue;
8384
+ let i, n;
8385
+ for (i = 0, n = refs.length; i < n; ++i) {
8386
+ member3 = Node3.value_of(refs[i], $context, globals, node);
8387
+ if (typeof value2 === "function" && refs[i] instanceof Arguments2) {
8388
+ value2 = value2.apply(lastValue || $data, member3);
8389
+ lastValue = value2;
8390
+ } else if (value2 === null || value2 === void 0) {
8391
+ return value2;
8392
+ } else {
8393
+ lastValue = value2;
8394
+ value2 = Node3.value_of(value2[member3], $context, globals, node);
8395
+ }
8396
+ }
8397
+ if (typeof value2 === "function" && n > 0 && lastValue !== value2 && !hasOwnProperty(lastValue, member3)) {
8398
+ return value2.bind(lastValue);
8399
+ }
8400
+ return value2;
8401
+ }
8402
+ get_value(parent, context, globals, node) {
8403
+ const intermediate = parent && !(parent instanceof Identifier2) ? Node3.value_of(parent, context, globals, node)[this.token] : context.lookup(this.token, globals, node);
8404
+ return this.dereference(intermediate, context, globals, node);
8405
+ }
8406
+ assign(object2, property, value2) {
8407
+ if (isWriteableObservable(object2[property])) {
8408
+ object2[property](value2);
8409
+ } else if (!isObservable(object2[property])) {
8410
+ object2[property] = value2;
8411
+ }
8412
+ }
8413
+ set_value(new_value, $context, globals) {
8414
+ const $data = $context.$data || {};
8415
+ const refs = this.dereferences || [];
8416
+ let leaf = this.token;
8417
+ let i, n, root;
8418
+ if (isObjectLike($data) && leaf in $data) {
8419
+ root = $data;
8420
+ } else if (leaf in $context) {
8421
+ root = $context;
8422
+ } else if (leaf in globals) {
8423
+ root = globals;
8424
+ } else {
8425
+ throw new Error("Identifier::set_value -- The property '" + leaf + "' does not exist on the $data, $context, or globals.");
8426
+ }
8427
+ n = refs.length;
8428
+ if (n === 0) {
8429
+ this.assign(root, leaf, new_value);
8430
+ return;
8431
+ }
8432
+ root = root[leaf];
8433
+ for (i = 0; i < n - 1; ++i) {
8434
+ leaf = refs[i];
8435
+ if (leaf instanceof Arguments2) {
8436
+ root = root();
8437
+ } else {
8438
+ root = root[Node3.value_of(leaf)];
8439
+ }
8440
+ }
8441
+ if (refs[i] === true) {
8442
+ throw new Error("Cannot assign a value to a function.");
8443
+ }
8444
+ if (refs[i]) {
8445
+ this.assign(root, Node3.value_of(refs[i]), new_value);
8446
+ }
8447
+ }
8448
+ static is_valid_start_char(ch) {
8449
+ return IDStart2.test(ch);
8450
+ }
8451
+ static is_valid_continue_char(ch) {
8452
+ return IDContinue2.test(ch);
8453
+ }
8454
+ get [Node3.isExpressionOrIdentifierSymbol]() {
8455
+ return true;
8456
+ }
8457
+ };
8458
+
8459
+ // ../../packages/utils.parser/src/Parameters.ts
8460
+ var Parameters2 = class {
8461
+ constructor(parser, node) {
8462
+ if (node instanceof Expression3) {
8463
+ node = node.root;
8464
+ }
8465
+ try {
8466
+ this.names = Parameters2.nodeTreeToNames(node);
8467
+ } catch (e) {
8468
+ parser.error(e);
8469
+ }
8470
+ }
8471
+ extendContext(context, args) {
8472
+ if (!this.names) {
8473
+ return context;
8474
+ } else {
8475
+ const newValues = {};
8476
+ this.names.forEach((name, index) => {
8477
+ newValues[name] = args[index];
8478
+ });
8479
+ return context.extend(newValues);
8480
+ }
8481
+ }
8482
+ get [Node3.isExpressionOrIdentifierSymbol]() {
8483
+ return true;
8484
+ }
8485
+ static nodeTreeToNames(node) {
8486
+ const names = [];
8487
+ while (node) {
8488
+ if (node instanceof Identifier2) {
8489
+ names.push(node.token);
8490
+ node = null;
8491
+ } else if (this.isCommaNode(node)) {
8492
+ names.push(node.rhs.token);
8493
+ node = node.lhs;
8494
+ } else {
8495
+ throw new Error(`only simple identifiers allowed in lambda parameter list but found ${JSON.stringify(node, null, 2)}`);
8496
+ }
8497
+ }
8498
+ names.reverse();
8499
+ return names;
8500
+ }
8501
+ static isCommaNode(node) {
8502
+ return node instanceof Node3 && node.op === operators2[","] && node.rhs instanceof Identifier2;
8503
+ }
8504
+ };
8505
+
8506
+ // ../../packages/utils.parser/src/Ternary.ts
8507
+ var Ternary2 = class {
8508
+ constructor(yes, no) {
8509
+ Object.assign(this, { yes, no });
8510
+ }
8511
+ get_value() {
8512
+ return this;
8513
+ }
8514
+ get [Node3.isExpressionOrIdentifierSymbol]() {
8515
+ return true;
8516
+ }
8517
+ };
8518
+
8519
+ // ../../packages/utils.parser/src/preparse.ts
8520
+ var specials2 = ",\"'`{}()/:[\\]";
8521
+ var bindingToken2 = RegExp([
8522
+ '"(?:\\\\.|[^"])*"',
8523
+ "'(?:\\\\.|[^'])*'",
8524
+ "`(?:\\\\.|[^`])*`",
8525
+ "/\\*(?:[^*]|\\*+[^*/])*\\*+/",
8526
+ "//.*\n",
8527
+ "/(?:\\\\.|[^/])+/\\w*",
8528
+ "[^\\s:,/][^" + specials2 + "]*[^\\s" + specials2 + "]",
8529
+ "[^\\s]"
8530
+ ].join("|"), "g");
8531
+
8532
+ // ../../packages/utils.parser/src/index.ts
8533
+ function overloadOperator(op, fn, precedence) {
8534
+ operators2[op] = fn;
8535
+ if (Number.isInteger(precedence)) {
8536
+ operators2[op].precedence = precedence;
8537
+ }
8538
+ }
8539
+
8051
8540
  // src/index.ts
8541
+ overloadOperator("==", (a, b) => a === b);
8542
+ overloadOperator("!=", (a, b) => a !== b);
8052
8543
  var builder = new Builder({
8053
8544
  filters,
8054
8545
  provider: new MultiProvider({
@@ -8071,7 +8562,7 @@ ${name} ${msg} of
8071
8562
  { each: bindings4.foreach }
8072
8563
  ]
8073
8564
  });
8074
- var version = "4.0.0-beta1.4";
8565
+ var version = "4.0.0-beta1.6";
8075
8566
  var src_default = builder.create({
8076
8567
  jsx: {
8077
8568
  createElement,