@lwc/ssr-runtime 8.3.0 → 8.4.0

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/index.js CHANGED
@@ -1,8 +1,6 @@
1
1
  /**
2
2
  * Copyright (c) 2024 Salesforce, Inc.
3
3
  */
4
- import { htmlPropertyToAttribute } from '@lwc/shared';
5
-
6
4
  /*
7
5
  * Copyright (c) 2024, Salesforce, Inc.
8
6
  * All rights reserved.
@@ -114,6 +112,224 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
114
112
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
115
113
  };
116
114
 
115
+ /**
116
+ * Copyright (c) 2024 Salesforce, Inc.
117
+ */
118
+ /*
119
+ * Copyright (c) 2018, salesforce.com, inc.
120
+ * All rights reserved.
121
+ * SPDX-License-Identifier: MIT
122
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
123
+ */
124
+ /**
125
+ *
126
+ * @param value
127
+ * @param msg
128
+ */
129
+
130
+ /*
131
+ * Copyright (c) 2024, Salesforce, Inc.
132
+ * All rights reserved.
133
+ * SPDX-License-Identifier: MIT
134
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
135
+ */
136
+ const {
137
+ /** Detached {@linkcode Object.assign}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign MDN Reference}. */
138
+ assign,
139
+ /** Detached {@linkcode Object.create}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create MDN Reference}. */
140
+ create,
141
+ /** Detached {@linkcode Object.defineProperties}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperties MDN Reference}. */
142
+ defineProperties,
143
+ /** Detached {@linkcode Object.defineProperty}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty MDN Reference}. */
144
+ defineProperty,
145
+ /** Detached {@linkcode Object.entries}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries MDN Reference}. */
146
+ entries,
147
+ /** Detached {@linkcode Object.freeze}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze MDN Reference}. */
148
+ freeze,
149
+ /** Detached {@linkcode Object.getOwnPropertyDescriptor}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor MDN Reference}. */
150
+ getOwnPropertyDescriptor,
151
+ /** Detached {@linkcode Object.getOwnPropertyDescriptors}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptors MDN Reference}. */
152
+ getOwnPropertyDescriptors,
153
+ /** Detached {@linkcode Object.getOwnPropertyNames}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNames MDN Reference}. */
154
+ getOwnPropertyNames,
155
+ /** Detached {@linkcode Object.getOwnPropertySymbols}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertySymbols MDN Reference}. */
156
+ getOwnPropertySymbols,
157
+ /** Detached {@linkcode Object.getPrototypeOf}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getPrototypeOf MDN Reference}. */
158
+ getPrototypeOf,
159
+ /** Detached {@linkcode Object.hasOwnProperty}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty MDN Reference}. */
160
+ hasOwnProperty,
161
+ /** Detached {@linkcode Object.isFrozen}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen MDN Reference}. */
162
+ isFrozen,
163
+ /** Detached {@linkcode Object.keys}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys MDN Reference}. */
164
+ keys,
165
+ /** Detached {@linkcode Object.seal}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/seal MDN Reference}. */
166
+ seal,
167
+ /** Detached {@linkcode Object.setPrototypeOf}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf MDN Reference}. */
168
+ setPrototypeOf, } = Object;
169
+ const {
170
+ /** Detached {@linkcode Array.isArray}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray MDN Reference}. */
171
+ isArray,
172
+ /** Detached {@linkcode Array.from}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from MDN Reference}. */
173
+ from: ArrayFrom, } = Array;
174
+ // For some reason, JSDoc don't get picked up for multiple renamed destructured constants (even
175
+ // though it works fine for one, e.g. isArray), so comments for these are added to the export
176
+ // statement, rather than this declaration.
177
+ const { concat: ArrayConcat, copyWithin: ArrayCopyWithin, every: ArrayEvery, fill: ArrayFill, filter: ArrayFilter, find: ArrayFind, findIndex: ArrayFindIndex, includes: ArrayIncludes, indexOf: ArrayIndexOf, join: ArrayJoin, map: ArrayMap, pop: ArrayPop, push: ArrayPush, reduce: ArrayReduce, reverse: ArrayReverse, shift: ArrayShift, slice: ArraySlice, some: ArraySome, sort: ArraySort, splice: ArraySplice, unshift: ArrayUnshift, forEach, // Weird anomaly!
178
+ } = Array.prototype;
179
+ // No JSDocs here - see comment for Array.prototype
180
+ const { charAt: StringCharAt, charCodeAt: StringCharCodeAt, replace: StringReplace, split: StringSplit, slice: StringSlice, toLowerCase: StringToLowerCase, trim: StringTrim, } = String.prototype;
181
+ /**
182
+ * Determines whether the argument is `null`.
183
+ * @param obj Value to test
184
+ * @returns `true` if the value is `null`.
185
+ */
186
+ function isNull(obj) {
187
+ return obj === null;
188
+ }
189
+ const OtS = {}.toString;
190
+ /**
191
+ * Converts the argument to a string, safely accounting for objects with "null" prototype.
192
+ * Note that `toString(null)` returns `"[object Null]"` rather than `"null"`.
193
+ * @param obj Value to convert to a string.
194
+ * @returns String representation of the value.
195
+ */
196
+ function toString(obj) {
197
+ if (obj?.toString) {
198
+ // Arrays might hold objects with "null" prototype So using
199
+ // Array.prototype.toString directly will cause an error Iterate through
200
+ // all the items and handle individually.
201
+ if (isArray(obj)) {
202
+ // This behavior is slightly different from Array#toString:
203
+ // 1. Array#toString calls `this.join`, rather than Array#join
204
+ // Ex: arr = []; arr.join = () => 1; arr.toString() === 1; toString(arr) === ''
205
+ // 2. Array#toString delegates to Object#toString if `this.join` is not a function
206
+ // Ex: arr = []; arr.join = 'no'; arr.toString() === '[object Array]; toString(arr) = ''
207
+ // 3. Array#toString converts null/undefined to ''
208
+ // Ex: arr = [null, undefined]; arr.toString() === ','; toString(arr) === '[object Null],undefined'
209
+ // 4. Array#toString converts recursive references to arrays to ''
210
+ // Ex: arr = [1]; arr.push(arr, 2); arr.toString() === '1,,2'; toString(arr) throws
211
+ // Ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/toString
212
+ return ArrayJoin.call(ArrayMap.call(obj, toString), ',');
213
+ }
214
+ return obj.toString();
215
+ }
216
+ else if (typeof obj === 'object') {
217
+ // This catches null and returns "[object Null]". Weird, but kept for backwards compatibility.
218
+ return OtS.call(obj);
219
+ }
220
+ else {
221
+ return String(obj);
222
+ }
223
+ }
224
+
225
+ /*
226
+ * Copyright (c) 2018, salesforce.com, inc.
227
+ * All rights reserved.
228
+ * SPDX-License-Identifier: MIT
229
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
230
+ */
231
+ /**
232
+ * According to the following list, there are 48 aria attributes of which two (ariaDropEffect and
233
+ * ariaGrabbed) are deprecated:
234
+ * https://www.w3.org/TR/wai-aria-1.1/#x6-6-definitions-of-states-and-properties-all-aria-attributes
235
+ *
236
+ * The above list of 46 aria attributes is consistent with the following resources:
237
+ * https://github.com/w3c/aria/pull/708/files#diff-eacf331f0ffc35d4b482f1d15a887d3bR11060
238
+ * https://wicg.github.io/aom/spec/aria-reflection.html
239
+ *
240
+ * NOTE: If you update this list, please update test files that implicitly reference this list!
241
+ * Searching the codebase for `aria-flowto` and `ariaFlowTo` should be good enough to find all usages.
242
+ */
243
+ const AriaPropertyNames = [
244
+ 'ariaActiveDescendant',
245
+ 'ariaAtomic',
246
+ 'ariaAutoComplete',
247
+ 'ariaBusy',
248
+ 'ariaChecked',
249
+ 'ariaColCount',
250
+ 'ariaColIndex',
251
+ 'ariaColIndexText',
252
+ 'ariaColSpan',
253
+ 'ariaControls',
254
+ 'ariaCurrent',
255
+ 'ariaDescribedBy',
256
+ 'ariaDescription',
257
+ 'ariaDetails',
258
+ 'ariaDisabled',
259
+ 'ariaErrorMessage',
260
+ 'ariaExpanded',
261
+ 'ariaFlowTo',
262
+ 'ariaHasPopup',
263
+ 'ariaHidden',
264
+ 'ariaInvalid',
265
+ 'ariaKeyShortcuts',
266
+ 'ariaLabel',
267
+ 'ariaLabelledBy',
268
+ 'ariaLevel',
269
+ 'ariaLive',
270
+ 'ariaModal',
271
+ 'ariaMultiLine',
272
+ 'ariaMultiSelectable',
273
+ 'ariaOrientation',
274
+ 'ariaOwns',
275
+ 'ariaPlaceholder',
276
+ 'ariaPosInSet',
277
+ 'ariaPressed',
278
+ 'ariaReadOnly',
279
+ 'ariaRelevant',
280
+ 'ariaRequired',
281
+ 'ariaRoleDescription',
282
+ 'ariaRowCount',
283
+ 'ariaRowIndex',
284
+ 'ariaRowIndexText',
285
+ 'ariaRowSpan',
286
+ 'ariaSelected',
287
+ 'ariaSetSize',
288
+ 'ariaSort',
289
+ 'ariaValueMax',
290
+ 'ariaValueMin',
291
+ 'ariaValueNow',
292
+ 'ariaValueText',
293
+ 'ariaBrailleLabel',
294
+ 'ariaBrailleRoleDescription',
295
+ 'role',
296
+ ];
297
+ const { AriaAttrNameToPropNameMap, AriaPropNameToAttrNameMap } = /*@__PURE__*/ (() => {
298
+ const AriaAttrNameToPropNameMap = create(null);
299
+ const AriaPropNameToAttrNameMap = create(null);
300
+ // Synthetic creation of all AOM property descriptors for Custom Elements
301
+ forEach.call(AriaPropertyNames, (propName) => {
302
+ const attrName = StringToLowerCase.call(StringReplace.call(propName, /^aria/, () => 'aria-'));
303
+ AriaAttrNameToPropNameMap[attrName] = propName;
304
+ AriaPropNameToAttrNameMap[propName] = attrName;
305
+ });
306
+ return { AriaAttrNameToPropNameMap, AriaPropNameToAttrNameMap };
307
+ })();
308
+
309
+ /*
310
+ * Copyright (c) 2020, salesforce.com, inc.
311
+ * All rights reserved.
312
+ * SPDX-License-Identifier: MIT
313
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
314
+ */
315
+ const ESCAPED_CHARS = {
316
+ '"': '"',
317
+ "'": ''',
318
+ '<': '&lt;',
319
+ '>': '&gt;',
320
+ '&': '&amp;',
321
+ };
322
+ /**
323
+ *
324
+ * @param str
325
+ * @param attrMode
326
+ */
327
+ function htmlEscape(str, attrMode = false) {
328
+ const searchValue = attrMode ? /["&]/g : /["'<>&]/g;
329
+ return str.replace(searchValue, (char) => ESCAPED_CHARS[char]);
330
+ }
331
+ /** version: 8.4.0 */
332
+
117
333
  /*
118
334
  * Copyright (c) 2024, Salesforce, Inc.
119
335
  * All rights reserved.
@@ -155,41 +371,70 @@ class MutationTracker {
155
371
  _MutationTracker_enabledSet = new WeakMap(), _MutationTracker_mutationMap = new WeakMap();
156
372
  const mutationTracker = new MutationTracker();
157
373
 
374
+ /*
375
+ * Copyright (c) 2024, Salesforce, Inc.
376
+ * All rights reserved.
377
+ * SPDX-License-Identifier: MIT
378
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
379
+ */
380
+ // Eventually include globals that also reflect
381
+ const attrsToProps = AriaAttrNameToPropNameMap;
382
+ function reflectAttrToProp(instance, attrName, attrValue) {
383
+ const reflectedPropName = attrsToProps[attrName];
384
+ // If it is a reflected property and it was not overridden by the instance
385
+ if (reflectedPropName && !hasOwnProperty.call(instance, reflectedPropName)) {
386
+ const currentValue = instance[reflectedPropName];
387
+ if (currentValue !== attrValue) {
388
+ instance[reflectedPropName] = attrValue;
389
+ }
390
+ }
391
+ }
392
+ const descriptors = create(null);
393
+ for (const [attrName, propName] of entries(attrsToProps)) {
394
+ descriptors[propName] = {
395
+ get() {
396
+ return this.getAttribute(attrName);
397
+ },
398
+ set(newValue) {
399
+ const currentValue = this.getAttribute(attrName);
400
+ if (newValue !== currentValue) {
401
+ // TODO [#3284]: According to the spec, IDL nullable type values
402
+ // (null and undefined) should remove the attribute; however, we
403
+ // only do so in the case of null for historical reasons.
404
+ // See also https://github.com/w3c/aria/issues/1858
405
+ if (isNull(newValue)) {
406
+ this.removeAttribute(attrName);
407
+ }
408
+ else {
409
+ this.setAttribute(attrName, toString(newValue));
410
+ }
411
+ }
412
+ },
413
+ configurable: true,
414
+ enumerable: true,
415
+ };
416
+ }
417
+
158
418
  /*
159
419
  * Copyright (c) 2024, salesforce.com, inc.
160
420
  * All rights reserved.
161
421
  * SPDX-License-Identifier: MIT
162
422
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
163
423
  */
164
- var _LightningElement_instances, _LightningElement_attrs, _LightningElement_classList, _LightningElement_setAttribute;
424
+ var _LightningElement_attrs, _LightningElement_classList;
165
425
  const SYMBOL__SET_INTERNALS = Symbol('set-internals');
166
426
  class LightningElement {
167
427
  constructor(propsAvailableAtConstruction) {
168
- _LightningElement_instances.add(this);
169
428
  this.isConnected = false;
170
429
  this.className = '';
171
430
  _LightningElement_attrs.set(this, void 0);
172
431
  _LightningElement_classList.set(this, null);
173
- Object.assign(this, propsAvailableAtConstruction);
432
+ assign(this, propsAvailableAtConstruction);
174
433
  }
175
- [(_LightningElement_attrs = new WeakMap(), _LightningElement_classList = new WeakMap(), _LightningElement_instances = new WeakSet(), SYMBOL__SET_INTERNALS)](props, reflectedProps, attrs) {
176
- Object.assign(this, props);
434
+ [(_LightningElement_attrs = new WeakMap(), _LightningElement_classList = new WeakMap(), SYMBOL__SET_INTERNALS)](props, attrs) {
177
435
  __classPrivateFieldSet(this, _LightningElement_attrs, attrs, "f");
178
- // Whenever a reflected prop changes, we'll update the original props object
179
- // that was passed in. That'll be referenced when the attrs are rendered later.
180
- for (const reflectedPropName of reflectedProps) {
181
- Object.defineProperty(this, reflectedPropName, {
182
- get() {
183
- return props[reflectedPropName] ?? null;
184
- },
185
- set(newValue) {
186
- props[reflectedPropName] = newValue;
187
- mutationTracker.add(this, htmlPropertyToAttribute(reflectedPropName));
188
- },
189
- enumerable: true,
190
- });
191
- }
192
- Object.defineProperty(this, 'className', {
436
+ assign(this, props);
437
+ defineProperty(this, 'className', {
193
438
  get() {
194
439
  return props.class ?? '';
195
440
  },
@@ -207,29 +452,29 @@ class LightningElement {
207
452
  return (__classPrivateFieldSet(this, _LightningElement_classList, new ClassList(this), "f"));
208
453
  }
209
454
  setAttribute(attrName, attrValue) {
210
- __classPrivateFieldGet(this, _LightningElement_instances, "m", _LightningElement_setAttribute).call(this, attrName, String(attrValue));
455
+ const normalizedName = StringToLowerCase.call(toString(attrName));
456
+ const normalizedValue = String(attrValue);
457
+ __classPrivateFieldGet(this, _LightningElement_attrs, "f")[normalizedName] = normalizedValue;
458
+ reflectAttrToProp(this, normalizedName, normalizedValue);
459
+ mutationTracker.add(this, normalizedName);
211
460
  }
212
461
  getAttribute(attrName) {
213
- if (this.hasAttribute(attrName)) {
214
- return __classPrivateFieldGet(this, _LightningElement_attrs, "f")[attrName];
462
+ const normalizedName = StringToLowerCase.call(toString(attrName));
463
+ if (hasOwnProperty.call(__classPrivateFieldGet(this, _LightningElement_attrs, "f"), normalizedName)) {
464
+ return __classPrivateFieldGet(this, _LightningElement_attrs, "f")[normalizedName];
215
465
  }
216
466
  return null;
217
467
  }
218
468
  hasAttribute(attrName) {
219
- return typeof attrName === 'string' && typeof __classPrivateFieldGet(this, _LightningElement_attrs, "f")[attrName] === 'string';
469
+ const normalizedName = StringToLowerCase.call(toString(attrName));
470
+ return hasOwnProperty.call(__classPrivateFieldGet(this, _LightningElement_attrs, "f"), normalizedName);
220
471
  }
221
472
  removeAttribute(attrName) {
222
- if (this.hasAttribute(attrName)) {
223
- // Reflected attributes use accessor methods to update their
224
- // corresponding properties so we can't simply `delete`. Instead,
225
- // we use `null` when we want to remove.
226
- __classPrivateFieldGet(this, _LightningElement_instances, "m", _LightningElement_setAttribute).call(this, attrName, null);
227
- }
228
- else {
229
- // This interprets the removal of a non-existing attribute as an
230
- // attribute mutation. We may want to revisit this.
231
- mutationTracker.add(this, attrName);
232
- }
473
+ const normalizedName = StringToLowerCase.call(toString(attrName));
474
+ delete __classPrivateFieldGet(this, _LightningElement_attrs, "f")[normalizedName];
475
+ reflectAttrToProp(this, normalizedName, null);
476
+ // Track mutations for removal of non-existing attributes
477
+ mutationTracker.add(this, normalizedName);
233
478
  }
234
479
  addEventListener(_type, _listener, _options) {
235
480
  // noop
@@ -305,10 +550,7 @@ class LightningElement {
305
550
  throw new Error('Method "setAttributeNS" not implemented.');
306
551
  }
307
552
  }
308
- _LightningElement_setAttribute = function _LightningElement_setAttribute(attrName, attrValue) {
309
- __classPrivateFieldGet(this, _LightningElement_attrs, "f")[attrName] = attrValue;
310
- mutationTracker.add(this, attrName);
311
- };
553
+ defineProperties(LightningElement.prototype, descriptors);
312
554
 
313
555
  /*
314
556
  * Copyright (c) 2024, salesforce.com, inc.
@@ -332,15 +574,49 @@ function* renderAttrs(instance, attrs) {
332
574
  }
333
575
  yield mutationTracker.renderMutatedAttrs(instance);
334
576
  }
577
+ function renderAttrsNoYield(emit, instance, attrs) {
578
+ if (!attrs) {
579
+ return;
580
+ }
581
+ for (const attrName of Object.getOwnPropertyNames(attrs)) {
582
+ const attrVal = attrs[attrName];
583
+ if (typeof attrVal === 'string') {
584
+ emit(attrVal === '' ? ` ${attrName}` : ` ${attrName}="${escapeAttrVal(attrVal)}"`);
585
+ }
586
+ else if (attrVal === null) {
587
+ emit('');
588
+ }
589
+ }
590
+ emit(mutationTracker.renderMutatedAttrs(instance));
591
+ }
335
592
  function* fallbackTmpl(_props, _attrs, _slotted, Cmp, _instance) {
336
593
  if (Cmp.renderMode !== 'light') {
337
594
  yield '<template shadowrootmode="open"></template>';
338
595
  }
339
596
  }
340
- async function serverSideRenderComponent(tagName, compiledGenerateMarkup, props) {
597
+ function fallbackTmplNoYield(emit, _props, _attrs, _slotted, Cmp, _instance) {
598
+ if (Cmp.renderMode !== 'light') {
599
+ emit('<template shadowrootmode="open"></template>');
600
+ }
601
+ }
602
+ async function serverSideRenderComponent(tagName, compiledGenerateMarkup, props, mode = 'asyncYield') {
341
603
  let markup = '';
342
- for await (const segment of compiledGenerateMarkup(tagName, props, null, null)) {
604
+ const emit = (segment) => {
343
605
  markup += segment;
606
+ };
607
+ if (mode === 'asyncYield') {
608
+ for await (const segment of compiledGenerateMarkup(tagName, props, null, null)) {
609
+ markup += segment;
610
+ }
611
+ }
612
+ else if (mode === 'async') {
613
+ await compiledGenerateMarkup(emit, tagName, props, null, null);
614
+ }
615
+ else if (mode === 'sync') {
616
+ compiledGenerateMarkup(emit, tagName, props, null, null);
617
+ }
618
+ else {
619
+ throw new Error(`Invalid mode: ${mode}`);
344
620
  }
345
621
  return markup;
346
622
  }
@@ -651,6 +927,6 @@ function validateStyleTextContents(contents) {
651
927
  }
652
928
  }
653
929
 
654
- export { ClassList, LightningElement, SYMBOL__SET_INTERNALS, api, createContextProvider, createElement, fallbackTmpl, freezeTemplate, getComponentDef, hot, isComponentConstructor, mutationTracker, parseFragment, parseSVGFragment, readonly, registerComponent, registerDecorators, registerTemplate, renderAttrs, serverSideRenderComponent as renderComponent, renderer, sanitizeAttribute, serverSideRenderComponent, setFeatureFlag, setFeatureFlagForTest, setHooks, swapComponent, swapStyle, swapTemplate, toIteratorDirective, track, unwrap, validateStyleTextContents, wire };
655
- /** version: 8.3.0 */
930
+ export { ClassList, LightningElement, SYMBOL__SET_INTERNALS, api, createContextProvider, createElement, fallbackTmpl, fallbackTmplNoYield, freezeTemplate, getComponentDef, hot, htmlEscape, isComponentConstructor, mutationTracker, parseFragment, parseSVGFragment, readonly, registerComponent, registerDecorators, registerTemplate, renderAttrs, renderAttrsNoYield, serverSideRenderComponent as renderComponent, renderer, sanitizeAttribute, serverSideRenderComponent, setFeatureFlag, setFeatureFlagForTest, setHooks, swapComponent, swapStyle, swapTemplate, toIteratorDirective, track, unwrap, validateStyleTextContents, wire };
931
+ /** version: 8.4.0 */
656
932
  //# sourceMappingURL=index.js.map