@lwc/shared 8.28.2 → 9.0.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
@@ -744,7 +744,12 @@ const AMBIGUOUS_PROP_SET = /*@__PURE__@*/ new Map([
744
744
  * by users on their components.
745
745
  * We throw for these.
746
746
  */
747
- const DISALLOWED_PROP_SET = /*@__PURE__@*/ new Set(['is', 'class', 'slot', 'style']);
747
+ const DISALLOWED_PROP_SET = /*@__PURE__@*/ new Set([
748
+ 'is',
749
+ 'class',
750
+ 'slot',
751
+ 'style',
752
+ ]);
748
753
 
749
754
  /*
750
755
  * Copyright (c) 2020, salesforce.com, inc.
@@ -776,7 +781,7 @@ function htmlEscape(str, attrMode = false) {
776
781
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
777
782
  */
778
783
  // Increment whenever the LWC template compiler changes
779
- const LWC_VERSION = "8.28.2";
784
+ const LWC_VERSION = "9.0.0";
780
785
  const LWC_VERSION_COMMENT = `LWC compiler v${LWC_VERSION}`;
781
786
  const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
782
787
 
@@ -997,5 +1002,5 @@ function normalizeTabIndex(value) {
997
1002
  }
998
1003
 
999
1004
  export { AMBIGUOUS_PROP_SET, AriaAttrNameToPropNameMap, AriaPropNameToAttrNameMap, ArrayConcat, ArrayCopyWithin, ArrayEvery, ArrayFill, ArrayFilter, ArrayFind, ArrayFindIndex, ArrayFrom, ArrayIncludes, ArrayIndexOf, ArrayJoin, ArrayMap, ArrayPop, ArrayPush, ArrayReduce, ArrayReverse, ArrayShift, ArraySlice, ArraySome, ArraySort, ArraySplice, ArrayUnshift, ContextEventName, DEFAULT_SSR_MODE, DISALLOWED_PROP_SET, HIGHEST_API_VERSION, HTML_NAMESPACE, ID_REFERENCING_ATTRIBUTES_SET, IMPORTANT_FLAG, KEY__LEGACY_SHADOW_TOKEN, KEY__LEGACY_SHADOW_TOKEN_PRIVATE, KEY__NATIVE_GET_ELEMENT_BY_ID, KEY__NATIVE_ONLY_CSS, KEY__NATIVE_QUERY_SELECTOR_ALL, KEY__SCOPED_CSS, KEY__SHADOW_RESOLVER, KEY__SHADOW_RESOLVER_PRIVATE, KEY__SHADOW_STATIC, KEY__SHADOW_STATIC_PRIVATE, KEY__SHADOW_TOKEN, KEY__SHADOW_TOKEN_PRIVATE, KEY__SYNTHETIC_MODE, LOWEST_API_VERSION, LWC_VERSION, LWC_VERSION_COMMENT, LWC_VERSION_COMMENT_REGEX, MATHML_NAMESPACE, REFLECTIVE_GLOBAL_PROPERTY_SET, SPECIAL_PROPERTY_ATTRIBUTE_MAPPING, SVG_NAMESPACE, StringCharAt, StringCharCodeAt, StringFromCharCode, StringReplace, StringSlice, StringSplit, StringToLowerCase, StringTrim, XLINK_NAMESPACE, XML_NAMESPACE, addTrustedContext, addTrustedSignal, arrayEvery, assert, assign, create, defineProperties, defineProperty, entries, flattenStylesheets, forEach, freeze, fromEntries, generateCustomElementTagName, getAPIVersionFromNumber, getContextKeys, getOwnPropertyDescriptor, getOwnPropertyDescriptors, getOwnPropertyNames, getOwnPropertySymbols, getPropertyDescriptor, getPrototypeOf, hasOwnProperty, htmlEscape, htmlPropertyToAttribute, isAPIFeatureEnabled, isAriaAttribute, isArray, isBoolean, isBooleanAttribute, isFalse, isFrozen, isFunction, isGlobalHtmlAttribute, isNull, isNumber, isObject, isString, isTrue, isTrustedContext, isTrustedSignal, isUndefined, isVoidElement, kebabCaseToCamelCase, keys, legacyIsTrustedSignal, minApiVersion, noop, normalizeClass, normalizeStyleAttributeValue, normalizeTabIndex, parseStyleText, sanitizeHtmlContent, seal, setContextKeys, setHooks, setPrototypeOf, setTrustedContextSet, setTrustedSignalSet, toString };
1000
- /** version: 8.28.2 */
1005
+ /** version: 9.0.0 */
1001
1006
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten."
5
5
  ],
6
6
  "name": "@lwc/shared",
7
- "version": "8.28.2",
7
+ "version": "9.0.0",
8
8
  "description": "Utilities and methods that are shared across packages",
9
9
  "keywords": [
10
10
  "lwc"
@@ -19,13 +19,17 @@
19
19
  "url": "https://github.com/salesforce/lwc/issues"
20
20
  },
21
21
  "license": "MIT",
22
+ "type": "module",
22
23
  "publishConfig": {
23
24
  "access": "public"
24
25
  },
26
+ "engines": {
27
+ "node": ">=16.6.0"
28
+ },
25
29
  "volta": {
26
30
  "extends": "../../../package.json"
27
31
  },
28
- "main": "dist/index.cjs.js",
32
+ "main": "dist/index.js",
29
33
  "module": "dist/index.js",
30
34
  "types": "dist/index.d.ts",
31
35
  "files": [
package/dist/index.cjs.js DELETED
@@ -1,1127 +0,0 @@
1
- /**
2
- * Copyright (c) 2026 Salesforce, Inc.
3
- */
4
- 'use strict';
5
-
6
- Object.defineProperty(exports, '__esModule', { value: true });
7
-
8
- /*
9
- * Copyright (c) 2018, salesforce.com, inc.
10
- * All rights reserved.
11
- * SPDX-License-Identifier: MIT
12
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
13
- */
14
- /**
15
- *
16
- * @param value
17
- * @param msg
18
- */
19
- function invariant(value, msg) {
20
- if (!value) {
21
- throw new Error(`Invariant Violation: ${msg}`);
22
- }
23
- }
24
- /**
25
- *
26
- * @param value
27
- * @param msg
28
- */
29
- function isTrue$1(value, msg) {
30
- if (!value) {
31
- throw new Error(`Assert Violation: ${msg}`);
32
- }
33
- }
34
- /**
35
- *
36
- * @param value
37
- * @param msg
38
- */
39
- function isFalse$1(value, msg) {
40
- if (value) {
41
- throw new Error(`Assert Violation: ${msg}`);
42
- }
43
- }
44
- /**
45
- *
46
- * @param msg
47
- */
48
- function fail(msg) {
49
- throw new Error(msg);
50
- }
51
-
52
- var assert = /*#__PURE__*/Object.freeze({
53
- __proto__: null,
54
- fail: fail,
55
- invariant: invariant,
56
- isFalse: isFalse$1,
57
- isTrue: isTrue$1
58
- });
59
-
60
- /*
61
- * Copyright (c) 2024, Salesforce, Inc.
62
- * All rights reserved.
63
- * SPDX-License-Identifier: MIT
64
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
65
- */
66
- const {
67
- /** Detached {@linkcode Object.assign}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign MDN Reference}. */
68
- assign,
69
- /** Detached {@linkcode Object.create}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create MDN Reference}. */
70
- create,
71
- /** Detached {@linkcode Object.defineProperties}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperties MDN Reference}. */
72
- defineProperties,
73
- /** Detached {@linkcode Object.defineProperty}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty MDN Reference}. */
74
- defineProperty,
75
- /** Detached {@linkcode Object.entries}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries MDN Reference}. */
76
- entries,
77
- /** Detached {@linkcode Object.freeze}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze MDN Reference}. */
78
- freeze,
79
- /** Detached {@linkcode Object.fromEntries}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/fromEntries MDN Reference}. */
80
- fromEntries,
81
- /** Detached {@linkcode Object.getOwnPropertyDescriptor}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor MDN Reference}. */
82
- getOwnPropertyDescriptor,
83
- /** Detached {@linkcode Object.getOwnPropertyDescriptors}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptors MDN Reference}. */
84
- getOwnPropertyDescriptors,
85
- /** Detached {@linkcode Object.getOwnPropertyNames}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNames MDN Reference}. */
86
- getOwnPropertyNames,
87
- /** Detached {@linkcode Object.getOwnPropertySymbols}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertySymbols MDN Reference}. */
88
- getOwnPropertySymbols,
89
- /** Detached {@linkcode Object.getPrototypeOf}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getPrototypeOf MDN Reference}. */
90
- getPrototypeOf,
91
- /** Detached {@linkcode Object.hasOwnProperty}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty MDN Reference}. */
92
- hasOwnProperty,
93
- /** Detached {@linkcode Object.isFrozen}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen MDN Reference}. */
94
- isFrozen,
95
- /** Detached {@linkcode Object.keys}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys MDN Reference}. */
96
- keys,
97
- /** Detached {@linkcode Object.seal}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/seal MDN Reference}. */
98
- seal,
99
- /** Detached {@linkcode Object.setPrototypeOf}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf MDN Reference}. */
100
- setPrototypeOf, } = Object;
101
- const {
102
- /** Detached {@linkcode Array.isArray}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray MDN Reference}. */
103
- isArray,
104
- /** Detached {@linkcode Array.from}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from MDN Reference}. */
105
- from: ArrayFrom, } = Array;
106
- // For some reason, JSDoc don't get picked up for multiple renamed destructured constants (even
107
- // though it works fine for one, e.g. isArray), so comments for these are added to the export
108
- // statement, rather than this declaration.
109
- 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!
110
- } = Array.prototype;
111
- // The type of the return value of Array.prototype.every is `this is T[]`. However, once this
112
- // Array method is pulled out of the prototype, the function is now referencing `this` where
113
- // `this` is meaningless, resulting in a TypeScript compilation error.
114
- //
115
- // Exposing this helper function is the closest we can get to preserving the usage patterns
116
- // of Array.prototype methods used elsewhere in the codebase.
117
- /**
118
- * Wrapper for {@linkcode Array.prototype.every} that correctly preserves the type predicate in the
119
- * return value; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every MDN Reference}.
120
- * @param arr Array to test.
121
- * @param predicate A function to execute for each element of the array.
122
- * @returns Whether all elements in the array pass the test provided by the predicate.
123
- */
124
- function arrayEvery(arr, predicate) {
125
- return ArrayEvery.call(arr, predicate);
126
- }
127
- /** Detached {@linkcode String.fromCharCode}; see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/fromCharCode MDN Reference}. */
128
- const { fromCharCode: StringFromCharCode } = String;
129
- // No JSDocs here - see comment for Array.prototype
130
- const { charAt: StringCharAt, charCodeAt: StringCharCodeAt, replace: StringReplace, split: StringSplit, slice: StringSlice, toLowerCase: StringToLowerCase, trim: StringTrim, } = String.prototype;
131
- /**
132
- * Determines whether the argument is `undefined`.
133
- * @param obj Value to test
134
- * @returns `true` if the value is `undefined`.
135
- */
136
- function isUndefined(obj) {
137
- return obj === undefined;
138
- }
139
- /**
140
- * Determines whether the argument is `null`.
141
- * @param obj Value to test
142
- * @returns `true` if the value is `null`.
143
- */
144
- function isNull(obj) {
145
- return obj === null;
146
- }
147
- /**
148
- * Determines whether the argument is `true`.
149
- * @param obj Value to test
150
- * @returns `true` if the value is `true`.
151
- */
152
- function isTrue(obj) {
153
- return obj === true;
154
- }
155
- /**
156
- * Determines whether the argument is `false`.
157
- * @param obj Value to test
158
- * @returns `true` if the value is `false`.
159
- */
160
- function isFalse(obj) {
161
- return obj === false;
162
- }
163
- /**
164
- * Determines whether the argument is a boolean.
165
- * @param obj Value to test
166
- * @returns `true` if the value is a boolean.
167
- */
168
- function isBoolean(obj) {
169
- return typeof obj === 'boolean';
170
- }
171
- /**
172
- * Determines whether the argument is a function.
173
- * @param obj Value to test
174
- * @returns `true` if the value is a function.
175
- */
176
- // Replacing `Function` with a narrower type that works for all our use cases is tricky...
177
- // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
178
- function isFunction(obj) {
179
- return typeof obj === 'function';
180
- }
181
- /**
182
- * Determines whether the argument is an object or null.
183
- * @param obj Value to test
184
- * @returns `true` if the value is an object or null.
185
- */
186
- function isObject(obj) {
187
- return typeof obj === 'object';
188
- }
189
- /**
190
- * Determines whether the argument is a string.
191
- * @param obj Value to test
192
- * @returns `true` if the value is a string.
193
- */
194
- function isString(obj) {
195
- return typeof obj === 'string';
196
- }
197
- /**
198
- * Determines whether the argument is a number.
199
- * @param obj Value to test
200
- * @returns `true` if the value is a number.
201
- */
202
- function isNumber(obj) {
203
- return typeof obj === 'number';
204
- }
205
- /** Does nothing! 🚀 */
206
- function noop() {
207
- /* Do nothing */
208
- }
209
- const OtS = {}.toString;
210
- /**
211
- * Converts the argument to a string, safely accounting for objects with "null" prototype.
212
- * Note that `toString(null)` returns `"[object Null]"` rather than `"null"`.
213
- * @param obj Value to convert to a string.
214
- * @returns String representation of the value.
215
- */
216
- function toString(obj) {
217
- if (obj?.toString) {
218
- // Arrays might hold objects with "null" prototype So using
219
- // Array.prototype.toString directly will cause an error Iterate through
220
- // all the items and handle individually.
221
- if (isArray(obj)) {
222
- // This behavior is slightly different from Array#toString:
223
- // 1. Array#toString calls `this.join`, rather than Array#join
224
- // Ex: arr = []; arr.join = () => 1; arr.toString() === 1; toString(arr) === ''
225
- // 2. Array#toString delegates to Object#toString if `this.join` is not a function
226
- // Ex: arr = []; arr.join = 'no'; arr.toString() === '[object Array]; toString(arr) = ''
227
- // 3. Array#toString converts null/undefined to ''
228
- // Ex: arr = [null, undefined]; arr.toString() === ','; toString(arr) === '[object Null],undefined'
229
- // 4. Array#toString converts recursive references to arrays to ''
230
- // Ex: arr = [1]; arr.push(arr, 2); arr.toString() === '1,,2'; toString(arr) throws
231
- // Ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/toString
232
- return ArrayJoin.call(ArrayMap.call(obj, toString), ',');
233
- }
234
- return obj.toString();
235
- }
236
- else if (typeof obj === 'object') {
237
- // This catches null and returns "[object Null]". Weird, but kept for backwards compatibility.
238
- return OtS.call(obj);
239
- }
240
- else {
241
- return String(obj);
242
- }
243
- }
244
- /**
245
- * Gets the property descriptor for the given object and property key. Similar to
246
- * {@linkcode Object.getOwnPropertyDescriptor}, but looks up the prototype chain.
247
- * @param o Value to get the property descriptor for
248
- * @param p Property key to get the descriptor for
249
- * @returns The property descriptor for the given object and property key.
250
- */
251
- function getPropertyDescriptor(o, p) {
252
- do {
253
- const d = getOwnPropertyDescriptor(o, p);
254
- if (!isUndefined(d)) {
255
- return d;
256
- }
257
- o = getPrototypeOf(o);
258
- } while (o !== null);
259
- }
260
-
261
- /*
262
- * Copyright (c) 2023, salesforce.com, inc.
263
- * All rights reserved.
264
- * SPDX-License-Identifier: MIT
265
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
266
- */
267
- // These must be updated when the enum is updated.
268
- // It's a bit annoying to do have to do this manually, but this makes the file tree-shakeable,
269
- // passing the `verify-treeshakeable.js` test.
270
- const allVersions = [
271
- 58 /* APIVersion.V58_244_SUMMER_23 */,
272
- 59 /* APIVersion.V59_246_WINTER_24 */,
273
- 60 /* APIVersion.V60_248_SPRING_24 */,
274
- 61 /* APIVersion.V61_250_SUMMER_24 */,
275
- 62 /* APIVersion.V62_252_WINTER_25 */,
276
- 63 /* APIVersion.V63_254_SPRING_25 */,
277
- 64 /* APIVersion.V64_256_SUMMER_25 */,
278
- 65 /* APIVersion.V65_258_WINTER_26 */,
279
- 66 /* APIVersion.V66_260_SPRING_26 */,
280
- ];
281
- const allVersionsSet = /*@__PURE__@*/ new Set(allVersions);
282
- const LOWEST_API_VERSION = allVersions[0];
283
- const HIGHEST_API_VERSION = allVersions[allVersions.length - 1];
284
- /**
285
- *
286
- * @param version
287
- */
288
- function getAPIVersionFromNumber(version) {
289
- if (!isNumber(version)) {
290
- // if version is unspecified, default to latest
291
- return HIGHEST_API_VERSION;
292
- }
293
- if (allVersionsSet.has(version)) {
294
- return version;
295
- }
296
- if (version < LOWEST_API_VERSION) {
297
- return LOWEST_API_VERSION;
298
- }
299
- // If it's a number, and it's within the bounds of our known versions, then we should find the
300
- // highest version lower than the requested number.
301
- // For instance, if we know about versions 1, 2, 5, and 6, and the user requests 3, then we should return 2.
302
- for (let i = 1; i < allVersions.length; i++) {
303
- if (allVersions[i] > version) {
304
- return allVersions[i - 1];
305
- }
306
- }
307
- // version > HIGHEST_API_VERSION, so fall back to highest
308
- return HIGHEST_API_VERSION;
309
- }
310
- /**
311
- * @param apiVersionFeature
312
- */
313
- function minApiVersion(apiVersionFeature) {
314
- switch (apiVersionFeature) {
315
- case 0 /* APIFeature.LOWERCASE_SCOPE_TOKENS */:
316
- case 1 /* APIFeature.TREAT_ALL_PARSE5_ERRORS_AS_ERRORS */:
317
- return 59 /* APIVersion.V59_246_WINTER_24 */;
318
- case 3 /* APIFeature.DISABLE_OBJECT_REST_SPREAD_TRANSFORMATION */:
319
- case 4 /* APIFeature.SKIP_UNNECESSARY_REGISTER_DECORATORS */:
320
- case 5 /* APIFeature.USE_COMMENTS_FOR_FRAGMENT_BOOKENDS */:
321
- case 2 /* APIFeature.USE_FRAGMENTS_FOR_LIGHT_DOM_SLOTS */:
322
- return 60 /* APIVersion.V60_248_SPRING_24 */;
323
- case 7 /* APIFeature.ENABLE_ELEMENT_INTERNALS_AND_FACE */:
324
- case 6 /* APIFeature.USE_LIGHT_DOM_SLOT_FORWARDING */:
325
- return 61 /* APIVersion.V61_250_SUMMER_24 */;
326
- case 8 /* APIFeature.ENABLE_THIS_DOT_HOST_ELEMENT */:
327
- case 9 /* APIFeature.ENABLE_THIS_DOT_STYLE */:
328
- case 10 /* APIFeature.TEMPLATE_CLASS_NAME_OBJECT_BINDING */:
329
- return 62 /* APIVersion.V62_252_WINTER_25 */;
330
- case 11 /* APIFeature.ENABLE_COMPLEX_TEMPLATE_EXPRESSIONS */:
331
- return 66 /* APIVersion.V66_260_SPRING_26 */;
332
- }
333
- }
334
- /**
335
- *
336
- * @param apiVersionFeature
337
- * @param apiVersion
338
- */
339
- function isAPIFeatureEnabled(apiVersionFeature, apiVersion) {
340
- return apiVersion >= minApiVersion(apiVersionFeature);
341
- }
342
-
343
- /*
344
- * Copyright (c) 2018, salesforce.com, inc.
345
- * All rights reserved.
346
- * SPDX-License-Identifier: MIT
347
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
348
- */
349
- /**
350
- * According to the following list, there are 48 aria attributes of which two (ariaDropEffect and
351
- * ariaGrabbed) are deprecated:
352
- * https://www.w3.org/TR/wai-aria-1.1/#x6-6-definitions-of-states-and-properties-all-aria-attributes
353
- *
354
- * The above list of 46 aria attributes is consistent with the following resources:
355
- * https://github.com/w3c/aria/pull/708/files#diff-eacf331f0ffc35d4b482f1d15a887d3bR11060
356
- * https://wicg.github.io/aom/spec/aria-reflection.html
357
- *
358
- * NOTE: If you update this list, please update test files that implicitly reference this list!
359
- * Searching the codebase for `aria-flowto` and `ariaFlowTo` should be good enough to find all usages.
360
- */
361
- const AriaPropertyNames = [
362
- 'ariaActiveDescendant',
363
- 'ariaAtomic',
364
- 'ariaAutoComplete',
365
- 'ariaBusy',
366
- 'ariaChecked',
367
- 'ariaColCount',
368
- 'ariaColIndex',
369
- 'ariaColIndexText',
370
- 'ariaColSpan',
371
- 'ariaControls',
372
- 'ariaCurrent',
373
- 'ariaDescribedBy',
374
- 'ariaDescription',
375
- 'ariaDetails',
376
- 'ariaDisabled',
377
- 'ariaErrorMessage',
378
- 'ariaExpanded',
379
- 'ariaFlowTo',
380
- 'ariaHasPopup',
381
- 'ariaHidden',
382
- 'ariaInvalid',
383
- 'ariaKeyShortcuts',
384
- 'ariaLabel',
385
- 'ariaLabelledBy',
386
- 'ariaLevel',
387
- 'ariaLive',
388
- 'ariaModal',
389
- 'ariaMultiLine',
390
- 'ariaMultiSelectable',
391
- 'ariaOrientation',
392
- 'ariaOwns',
393
- 'ariaPlaceholder',
394
- 'ariaPosInSet',
395
- 'ariaPressed',
396
- 'ariaReadOnly',
397
- 'ariaRelevant',
398
- 'ariaRequired',
399
- 'ariaRoleDescription',
400
- 'ariaRowCount',
401
- 'ariaRowIndex',
402
- 'ariaRowIndexText',
403
- 'ariaRowSpan',
404
- 'ariaSelected',
405
- 'ariaSetSize',
406
- 'ariaSort',
407
- 'ariaValueMax',
408
- 'ariaValueMin',
409
- 'ariaValueNow',
410
- 'ariaValueText',
411
- 'ariaBrailleLabel',
412
- 'ariaBrailleRoleDescription',
413
- 'role',
414
- ];
415
- const { AriaAttrNameToPropNameMap, AriaPropNameToAttrNameMap } = /*@__PURE__*/ (() => {
416
- const AriaAttrNameToPropNameMap = create(null);
417
- const AriaPropNameToAttrNameMap = create(null);
418
- // Synthetic creation of all AOM property descriptors for Custom Elements
419
- forEach.call(AriaPropertyNames, (propName) => {
420
- const attrName = StringToLowerCase.call(StringReplace.call(propName, /^aria/, () => 'aria-'));
421
- // These type assertions are because the map types are a 1:1 mapping of ariaX to aria-x.
422
- // TypeScript knows we have one of ariaX | ariaY and one of aria-x | aria-y, and tries to
423
- // prevent us from doing ariaX: aria-y, but we that it's safe.
424
- AriaAttrNameToPropNameMap[attrName] = propName;
425
- AriaPropNameToAttrNameMap[propName] = attrName;
426
- });
427
- return { AriaAttrNameToPropNameMap, AriaPropNameToAttrNameMap };
428
- })();
429
- /**
430
- *
431
- * @param attrName
432
- */
433
- function isAriaAttribute(attrName) {
434
- return attrName in AriaAttrNameToPropNameMap;
435
- }
436
- // These attributes take either an ID or a list of IDs as values.
437
- // This includes aria-* attributes as well as the special non-ARIA "for" attribute
438
- const ID_REFERENCING_ATTRIBUTES_SET = /*@__PURE__*/ new Set([
439
- 'aria-activedescendant',
440
- 'aria-controls',
441
- 'aria-describedby',
442
- 'aria-details',
443
- 'aria-errormessage',
444
- 'aria-flowto',
445
- 'aria-labelledby',
446
- 'aria-owns',
447
- 'for',
448
- 'popovertarget',
449
- ]);
450
-
451
- /*
452
- * Copyright (c) 2024, salesforce.com, inc.
453
- * All rights reserved.
454
- * SPDX-License-Identifier: MIT
455
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
456
- */
457
- const ContextEventName = 'lightning:context-request';
458
- let trustedContext;
459
- let contextKeys;
460
- function setContextKeys(config) {
461
- isFalse$1(contextKeys, '`setContextKeys` cannot be called more than once');
462
- contextKeys = config;
463
- }
464
- function getContextKeys() {
465
- return contextKeys;
466
- }
467
- function setTrustedContextSet(context) {
468
- isFalse$1(trustedContext, 'Trusted Context Set is already set!');
469
- trustedContext = context;
470
- }
471
- function addTrustedContext(contextParticipant) {
472
- // This should be a no-op when the trustedSignals set isn't set by runtime
473
- trustedContext?.add(contextParticipant);
474
- }
475
- function isTrustedContext(target) {
476
- if (!trustedContext) {
477
- // The runtime didn't set a trustedContext set
478
- // this check should only be performed for runtimes that care about filtering context participants to track
479
- return true;
480
- }
481
- return trustedContext.has(target);
482
- }
483
-
484
- /*
485
- * Copyright (c) 2023, Salesforce.com, inc.
486
- * All rights reserved.
487
- * SPDX-License-Identifier: MIT
488
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
489
- */
490
- const KEY__SHADOW_RESOLVER = '$shadowResolver$';
491
- const KEY__SHADOW_RESOLVER_PRIVATE = '$$ShadowResolverKey$$';
492
- const KEY__SHADOW_STATIC = '$shadowStaticNode$';
493
- const KEY__SHADOW_STATIC_PRIVATE = '$shadowStaticNodeKey$';
494
- const KEY__SHADOW_TOKEN = '$shadowToken$';
495
- const KEY__SHADOW_TOKEN_PRIVATE = '$$ShadowTokenKey$$';
496
- // TODO [#3733]: remove support for legacy scope tokens
497
- const KEY__LEGACY_SHADOW_TOKEN = '$legacyShadowToken$';
498
- const KEY__LEGACY_SHADOW_TOKEN_PRIVATE = '$$LegacyShadowTokenKey$$';
499
- const KEY__SYNTHETIC_MODE = '$$lwc-synthetic-mode';
500
- const KEY__SCOPED_CSS = '$scoped$';
501
- const KEY__NATIVE_ONLY_CSS = '$nativeOnly$';
502
- const KEY__NATIVE_GET_ELEMENT_BY_ID = '$nativeGetElementById$';
503
- const KEY__NATIVE_QUERY_SELECTOR_ALL = '$nativeQuerySelectorAll$';
504
-
505
- /*
506
- * Copyright (c) 2022, salesforce.com, inc.
507
- * All rights reserved.
508
- * SPDX-License-Identifier: MIT
509
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
510
- */
511
- const HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';
512
- const XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace';
513
- const SVG_NAMESPACE = 'http://www.w3.org/2000/svg';
514
- const MATHML_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';
515
- const XLINK_NAMESPACE = 'http://www.w3.org/1999/xlink';
516
-
517
- /*
518
- * Copyright (c) 2020, salesforce.com, inc.
519
- * All rights reserved.
520
- * SPDX-License-Identifier: MIT
521
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
522
- */
523
- // Void elements are elements that self-close even without an explicit solidus (slash),
524
- // e.g. `</tagName>` or `<tagName />`. For instance, `<meta>` closes on its own; no need for a slash.
525
- // These only come from HTML; there are no void elements in the SVG or MathML namespaces.
526
- // See: https://html.spec.whatwg.org/multipage/syntax.html#syntax-tags
527
- const VOID_ELEMENTS = [
528
- 'area',
529
- 'base',
530
- 'br',
531
- 'col',
532
- 'embed',
533
- 'hr',
534
- 'img',
535
- 'input',
536
- 'link',
537
- 'meta',
538
- 'source',
539
- 'track',
540
- 'wbr',
541
- ];
542
- // These elements have been deprecated but preserving their usage for backwards compatibility
543
- // until we can officially deprecate them from LWC.
544
- // See: https://html.spec.whatwg.org/multipage/obsolete.html#obsolete-but-conforming-features
545
- const DEPRECATED_VOID_ELEMENTS = ['param', 'keygen', 'menuitem'];
546
- const VOID_ELEMENTS_SET = /*@__PURE__*/ new Set([...VOID_ELEMENTS, ...DEPRECATED_VOID_ELEMENTS]);
547
- /**
548
- *
549
- * @param name
550
- * @param namespace
551
- */
552
- function isVoidElement(name, namespace) {
553
- return namespace === HTML_NAMESPACE && VOID_ELEMENTS_SET.has(name.toLowerCase());
554
- }
555
-
556
- /*
557
- * Copyright (c) 2020, salesforce.com, inc.
558
- * All rights reserved.
559
- * SPDX-License-Identifier: MIT
560
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
561
- */
562
- const CAMEL_REGEX = /-([a-z])/g;
563
- /**
564
- * Maps boolean attribute name to supported tags: 'boolean attr name' => Set of allowed tag names
565
- * that supports them.
566
- */
567
- const BOOLEAN_ATTRIBUTES = /*@__PURE__@*/ new Map([
568
- ['autofocus', /*@__PURE__@*/ new Set(['button', 'input', 'keygen', 'select', 'textarea'])],
569
- ['autoplay', /*@__PURE__@*/ new Set(['audio', 'video'])],
570
- ['checked', /*@__PURE__@*/ new Set(['command', 'input'])],
571
- [
572
- 'disabled',
573
- /*@__PURE__@*/ new Set([
574
- 'button',
575
- 'command',
576
- 'fieldset',
577
- 'input',
578
- 'keygen',
579
- 'optgroup',
580
- 'select',
581
- 'textarea',
582
- ]),
583
- ],
584
- ['formnovalidate', /*@__PURE__@*/ new Set(['button'])], // button[type=submit]
585
- ['hidden', /*@__PURE__@*/ new Set()], // Global attribute
586
- ['loop', /*@__PURE__@*/ new Set(['audio', 'bgsound', 'marquee', 'video'])],
587
- ['multiple', /*@__PURE__@*/ new Set(['input', 'select'])],
588
- ['muted', /*@__PURE__@*/ new Set(['audio', 'video'])],
589
- ['novalidate', /*@__PURE__@*/ new Set(['form'])],
590
- ['open', /*@__PURE__@*/ new Set(['details'])],
591
- ['readonly', /*@__PURE__@*/ new Set(['input', 'textarea'])],
592
- ['readonly', /*@__PURE__@*/ new Set(['input', 'textarea'])],
593
- ['required', /*@__PURE__@*/ new Set(['input', 'select', 'textarea'])],
594
- ['reversed', /*@__PURE__@*/ new Set(['ol'])],
595
- ['selected', /*@__PURE__@*/ new Set(['option'])],
596
- ]);
597
- /**
598
- *
599
- * @param attrName
600
- * @param tagName
601
- */
602
- function isBooleanAttribute(attrName, tagName) {
603
- const allowedTagNames = BOOLEAN_ATTRIBUTES.get(attrName);
604
- return (allowedTagNames !== undefined &&
605
- (allowedTagNames.size === 0 || allowedTagNames.has(tagName)));
606
- }
607
- // This list is based on https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes
608
- const GLOBAL_ATTRIBUTE = /*@__PURE__*/ new Set([
609
- 'accesskey',
610
- 'autocapitalize',
611
- 'autofocus',
612
- 'class',
613
- 'contenteditable',
614
- 'dir',
615
- 'draggable',
616
- 'enterkeyhint',
617
- 'exportparts',
618
- 'hidden',
619
- 'id',
620
- 'inputmode',
621
- 'is',
622
- 'itemid',
623
- 'itemprop',
624
- 'itemref',
625
- 'itemscope',
626
- 'itemtype',
627
- 'lang',
628
- 'nonce',
629
- 'part',
630
- 'popover',
631
- 'slot',
632
- 'spellcheck',
633
- 'style',
634
- 'tabindex',
635
- 'title',
636
- 'translate',
637
- ]);
638
- /**
639
- *
640
- * @param attrName
641
- */
642
- function isGlobalHtmlAttribute(attrName) {
643
- return GLOBAL_ATTRIBUTE.has(attrName);
644
- }
645
- // These are HTML standard prop/attribute IDL mappings, but are not predictable based on camel/kebab-case conversion
646
- const SPECIAL_PROPERTY_ATTRIBUTE_MAPPING = /*@__PURE__@*/ new Map([
647
- ['accessKey', 'accesskey'],
648
- ['readOnly', 'readonly'],
649
- ['tabIndex', 'tabindex'],
650
- ['bgColor', 'bgcolor'],
651
- ['colSpan', 'colspan'],
652
- ['rowSpan', 'rowspan'],
653
- ['contentEditable', 'contenteditable'],
654
- ['crossOrigin', 'crossorigin'],
655
- ['dateTime', 'datetime'],
656
- ['formAction', 'formaction'],
657
- ['isMap', 'ismap'],
658
- ['maxLength', 'maxlength'],
659
- ['minLength', 'minlength'],
660
- ['noValidate', 'novalidate'],
661
- ['useMap', 'usemap'],
662
- ['htmlFor', 'for'],
663
- ]);
664
- // Global properties that this framework currently reflects. For CSR, the native
665
- // descriptors for these properties are added from HTMLElement.prototype to
666
- // LightningElement.prototype. For SSR, in order to match CSR behavior, this
667
- // list is used to determine which attributes to reflect.
668
- const REFLECTIVE_GLOBAL_PROPERTY_SET = /*@__PURE__@*/ new Set([
669
- 'accessKey',
670
- 'dir',
671
- 'draggable',
672
- 'hidden',
673
- 'id',
674
- 'lang',
675
- 'spellcheck',
676
- 'tabIndex',
677
- 'title',
678
- ]);
679
- /**
680
- * Map associating previously transformed HTML property into HTML attribute.
681
- */
682
- const CACHED_PROPERTY_ATTRIBUTE_MAPPING = /*@__PURE__@*/ new Map();
683
- /**
684
- *
685
- * @param propName
686
- */
687
- function htmlPropertyToAttribute(propName) {
688
- const ariaAttributeName = AriaPropNameToAttrNameMap[propName];
689
- if (!isUndefined(ariaAttributeName)) {
690
- return ariaAttributeName;
691
- }
692
- const specialAttributeName = SPECIAL_PROPERTY_ATTRIBUTE_MAPPING.get(propName);
693
- if (!isUndefined(specialAttributeName)) {
694
- return specialAttributeName;
695
- }
696
- const cachedAttributeName = CACHED_PROPERTY_ATTRIBUTE_MAPPING.get(propName);
697
- if (!isUndefined(cachedAttributeName)) {
698
- return cachedAttributeName;
699
- }
700
- let attributeName = '';
701
- for (let i = 0, len = propName.length; i < len; i++) {
702
- const code = StringCharCodeAt.call(propName, i);
703
- if (code >= 65 && // "A"
704
- code <= 90 // "Z"
705
- ) {
706
- attributeName += '-' + StringFromCharCode(code + 32);
707
- }
708
- else {
709
- attributeName += StringFromCharCode(code);
710
- }
711
- }
712
- CACHED_PROPERTY_ATTRIBUTE_MAPPING.set(propName, attributeName);
713
- return attributeName;
714
- }
715
- /**
716
- * Map associating previously transformed kabab-case attributes into camel-case props.
717
- */
718
- const CACHED_KEBAB_CAMEL_MAPPING = /*@__PURE__@*/ new Map();
719
- /**
720
- *
721
- * @param attrName
722
- */
723
- function kebabCaseToCamelCase(attrName) {
724
- let result = CACHED_KEBAB_CAMEL_MAPPING.get(attrName);
725
- if (isUndefined(result)) {
726
- result = StringReplace.call(attrName, CAMEL_REGEX, (g) => g[1].toUpperCase());
727
- CACHED_KEBAB_CAMEL_MAPPING.set(attrName, result);
728
- }
729
- return result;
730
- }
731
- /**
732
- * This set is for attributes that have a camel cased property name
733
- * For example, div.tabIndex.
734
- * We do not want users to define `@api` properties with these names
735
- * Because the template will never call them. It'll always call the camel
736
- * cased version.
737
- */
738
- const AMBIGUOUS_PROP_SET = /*@__PURE__@*/ new Map([
739
- ['bgcolor', 'bgColor'],
740
- ['accesskey', 'accessKey'],
741
- ['contenteditable', 'contentEditable'],
742
- ['tabindex', 'tabIndex'],
743
- ['maxlength', 'maxLength'],
744
- ['maxvalue', 'maxValue'],
745
- ]);
746
- /**
747
- * This set is for attributes that can never be defined
748
- * by users on their components.
749
- * We throw for these.
750
- */
751
- const DISALLOWED_PROP_SET = /*@__PURE__@*/ new Set(['is', 'class', 'slot', 'style']);
752
-
753
- /*
754
- * Copyright (c) 2020, salesforce.com, inc.
755
- * All rights reserved.
756
- * SPDX-License-Identifier: MIT
757
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
758
- */
759
- const ESCAPED_CHARS = {
760
- '"': '&quot;',
761
- "'": '&#x27;',
762
- '<': '&lt;',
763
- '>': '&gt;',
764
- '&': '&amp;',
765
- };
766
- /**
767
- *
768
- * @param str
769
- * @param attrMode
770
- */
771
- function htmlEscape(str, attrMode = false) {
772
- const searchValue = attrMode ? /["&]/g : /["'<>&]/g;
773
- return str.replace(searchValue, (char) => ESCAPED_CHARS[char]);
774
- }
775
-
776
- /*
777
- * Copyright (c) 2018, salesforce.com, inc.
778
- * All rights reserved.
779
- * SPDX-License-Identifier: MIT
780
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
781
- */
782
- // Increment whenever the LWC template compiler changes
783
- const LWC_VERSION = "8.28.2";
784
- const LWC_VERSION_COMMENT = `LWC compiler v${LWC_VERSION}`;
785
- const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
786
-
787
- /*
788
- * Copyright (c) 2020, salesforce.com, inc.
789
- * All rights reserved.
790
- * SPDX-License-Identifier: MIT
791
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
792
- */
793
- /**
794
- * [ncls] - Normalize class name attribute.
795
- *
796
- * Transforms the provided class property value from an object/string into a string the diffing algo
797
- * can operate on.
798
- *
799
- * This implementation is borrowed from Vue:
800
- * https://github.com/vuejs/core/blob/e790e1bdd7df7be39e14780529db86e4da47a3db/packages/shared/src/normalizeProp.ts#L63-L82
801
- */
802
- function normalizeClass(value) {
803
- if (isUndefined(value) || isNull(value)) {
804
- // Returning undefined here improves initial render cost, because the old vnode's class will be considered
805
- // undefined in the `patchClassAttribute` routine, so `oldClass === newClass` will be true so we return early
806
- return undefined;
807
- }
808
- let res = '';
809
- if (isString(value)) {
810
- res = value;
811
- }
812
- else if (isArray(value)) {
813
- for (let i = 0; i < value.length; i++) {
814
- const normalized = normalizeClass(value[i]);
815
- if (normalized) {
816
- res += normalized + ' ';
817
- }
818
- }
819
- }
820
- else if (isObject(value) && !isNull(value)) {
821
- // Iterate own enumerable keys of the object
822
- const _keys = keys(value);
823
- for (let i = 0; i < _keys.length; i += 1) {
824
- const key = _keys[i];
825
- if (value[key]) {
826
- res += key + ' ';
827
- }
828
- }
829
- }
830
- return StringTrim.call(res);
831
- }
832
-
833
- /*
834
- * Copyright (c) 2024, Salesforce, Inc.
835
- * All rights reserved.
836
- * SPDX-License-Identifier: MIT
837
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
838
- */
839
- let hooksAreSet = false;
840
- let sanitizeHtmlContentImpl = () => {
841
- // locker-service patches this function during runtime to sanitize HTML content.
842
- throw new Error('sanitizeHtmlContent hook must be implemented.');
843
- };
844
- /**
845
- * EXPERIMENTAL: This function acts like a hook for Lightning Locker Service and other similar
846
- * libraries to sanitize HTML content. This hook process the content passed via the template to
847
- * lwc:inner-html directive.
848
- * It is meant to be overridden via `setHooks`; it throws an error by default.
849
- */
850
- const sanitizeHtmlContent = (value) => {
851
- return sanitizeHtmlContentImpl(value);
852
- };
853
- function setHooks(hooks) {
854
- isFalse$1(hooksAreSet, 'Hooks are already overridden, only one definition is allowed.');
855
- hooksAreSet = true;
856
- sanitizeHtmlContentImpl = hooks.sanitizeHtmlContent;
857
- }
858
-
859
- /*
860
- * Copyright (c) 2024, salesforce.com, inc.
861
- * All rights reserved.
862
- * SPDX-License-Identifier: MIT
863
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
864
- */
865
- const IMPORTANT_FLAG = /\s*!\s*important\s*$/i;
866
- const DECLARATION_DELIMITER = /;(?![^(]*\))/g;
867
- const PROPERTY_DELIMITER = /:(.+)/s; // `/s` (dotAll) required to match styles across newlines, e.g. `color: \n red;`
868
- // Borrowed from Vue template compiler.
869
- // https://github.com/vuejs/vue/blob/531371b818b0e31a989a06df43789728f23dc4e8/src/platforms/web/util/style.js#L5-L16
870
- function parseStyleText(cssText) {
871
- const styleMap = {};
872
- const declarations = cssText.split(DECLARATION_DELIMITER);
873
- for (const declaration of declarations) {
874
- if (declaration) {
875
- const [prop, value] = declaration.split(PROPERTY_DELIMITER);
876
- if (prop !== undefined && value !== undefined) {
877
- styleMap[prop.trim()] = value.trim();
878
- }
879
- }
880
- }
881
- return styleMap;
882
- }
883
- function normalizeStyleAttributeValue(style) {
884
- const styleMap = parseStyleText(style);
885
- const styles = Object.entries(styleMap).map(([key, value]) => {
886
- value = value.replace(IMPORTANT_FLAG, ' !important').trim();
887
- return `${key}: ${value};`;
888
- });
889
- return styles.join(' ');
890
- }
891
- function flattenStylesheets(stylesheets) {
892
- const list = [];
893
- for (const stylesheet of stylesheets) {
894
- if (!isArray(stylesheet)) {
895
- list.push(stylesheet);
896
- }
897
- else {
898
- list.push(...flattenStylesheets(stylesheet));
899
- }
900
- }
901
- return list;
902
- }
903
-
904
- /*
905
- * Copyright (c) 2024, salesforce.com, inc.
906
- * All rights reserved.
907
- * SPDX-License-Identifier: MIT
908
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
909
- */
910
- let trustedSignals;
911
- function setTrustedSignalSet(signals) {
912
- isFalse$1(trustedSignals, 'Trusted Signal Set is already set!');
913
- trustedSignals = signals;
914
- // Only used in LWC's integration tests. Contained within the set function as there are multiple imports of
915
- // this module. Placing it here ensures we reference the import where the trustedSignals set is maintained
916
- if (process.env.NODE_ENV === 'test-lwc-integration') {
917
- // Used to reset the global state between test runs
918
- globalThis.__lwcResetTrustedSignals = () => (trustedSignals = undefined);
919
- }
920
- }
921
- function addTrustedSignal(signal) {
922
- // This should be a no-op when the trustedSignals set isn't set by runtime
923
- trustedSignals?.add(signal);
924
- }
925
- /**
926
- * The legacy validation behavior was that this check should only
927
- * be performed for runtimes that have provided a trustedSignals set.
928
- * However, this resulted in a bug as all object values were
929
- * being considered signals in environments where the trustedSignals
930
- * set had not been defined. The runtime flag has been added as a killswitch
931
- * in case the fix needs to be reverted.
932
- */
933
- function legacyIsTrustedSignal(target) {
934
- if (!trustedSignals) {
935
- // The runtime didn't set a trustedSignals set
936
- // this check should only be performed for runtimes that care about filtering signals to track
937
- // our default behavior should be to track all signals
938
- return true;
939
- }
940
- return trustedSignals.has(target);
941
- }
942
- function isTrustedSignal(target) {
943
- if (!trustedSignals) {
944
- return false;
945
- }
946
- return trustedSignals.has(target);
947
- }
948
-
949
- /*
950
- * Copyright (c) 2024, salesforce.com, inc.
951
- * All rights reserved.
952
- * SPDX-License-Identifier: MIT
953
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
954
- */
955
- /**
956
- * Generates a custom element tag name given a namespace and component name.
957
- * Based on the LWC file system requirements, component names come from the file system name which is
958
- * camel cased. The component's name will be converted to kebab case when the tag name is produced.
959
- *
960
- * @param namespace component namespace
961
- * @param name component name
962
- * @returns component tag name
963
- */
964
- function generateCustomElementTagName(namespace = '', name = '') {
965
- if (!namespace || !name) {
966
- // TODO [#4824]: Make this an error rather than a warning
967
- // eslint-disable-next-line no-console
968
- console.warn('The namespace and name should both be non-empty strings. ' +
969
- 'You may get unexpected behavior at runtime. ' +
970
- 'Found: namespace=' +
971
- JSON.stringify(namespace) +
972
- ' and name=' +
973
- JSON.stringify(name));
974
- }
975
- const kebabCasedName = name.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
976
- return `${namespace}-${kebabCasedName}`;
977
- }
978
-
979
- /*
980
- * Copyright (c) 2024, Salesforce, Inc.
981
- * All rights reserved.
982
- * SPDX-License-Identifier: MIT
983
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
984
- */
985
- const DEFAULT_SSR_MODE = 'sync';
986
-
987
- /*
988
- * Copyright (c) 2025, salesforce.com, inc.
989
- * All rights reserved.
990
- * SPDX-License-Identifier: MIT
991
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
992
- */
993
- /**
994
- * Global HTML "tabindex" attribute is specially massaged into a stringified number
995
- * This follows the historical behavior in api.ts:
996
- * https://github.com/salesforce/lwc/blob/f34a347/packages/%40lwc/engine-core/src/framework/api.ts#L193-L211
997
- */
998
- function normalizeTabIndex(value) {
999
- const shouldNormalize = value > 0 && typeof value !== 'boolean';
1000
- return shouldNormalize ? 0 : value;
1001
- }
1002
-
1003
- exports.AMBIGUOUS_PROP_SET = AMBIGUOUS_PROP_SET;
1004
- exports.AriaAttrNameToPropNameMap = AriaAttrNameToPropNameMap;
1005
- exports.AriaPropNameToAttrNameMap = AriaPropNameToAttrNameMap;
1006
- exports.ArrayConcat = ArrayConcat;
1007
- exports.ArrayCopyWithin = ArrayCopyWithin;
1008
- exports.ArrayEvery = ArrayEvery;
1009
- exports.ArrayFill = ArrayFill;
1010
- exports.ArrayFilter = ArrayFilter;
1011
- exports.ArrayFind = ArrayFind;
1012
- exports.ArrayFindIndex = ArrayFindIndex;
1013
- exports.ArrayFrom = ArrayFrom;
1014
- exports.ArrayIncludes = ArrayIncludes;
1015
- exports.ArrayIndexOf = ArrayIndexOf;
1016
- exports.ArrayJoin = ArrayJoin;
1017
- exports.ArrayMap = ArrayMap;
1018
- exports.ArrayPop = ArrayPop;
1019
- exports.ArrayPush = ArrayPush;
1020
- exports.ArrayReduce = ArrayReduce;
1021
- exports.ArrayReverse = ArrayReverse;
1022
- exports.ArrayShift = ArrayShift;
1023
- exports.ArraySlice = ArraySlice;
1024
- exports.ArraySome = ArraySome;
1025
- exports.ArraySort = ArraySort;
1026
- exports.ArraySplice = ArraySplice;
1027
- exports.ArrayUnshift = ArrayUnshift;
1028
- exports.ContextEventName = ContextEventName;
1029
- exports.DEFAULT_SSR_MODE = DEFAULT_SSR_MODE;
1030
- exports.DISALLOWED_PROP_SET = DISALLOWED_PROP_SET;
1031
- exports.HIGHEST_API_VERSION = HIGHEST_API_VERSION;
1032
- exports.HTML_NAMESPACE = HTML_NAMESPACE;
1033
- exports.ID_REFERENCING_ATTRIBUTES_SET = ID_REFERENCING_ATTRIBUTES_SET;
1034
- exports.IMPORTANT_FLAG = IMPORTANT_FLAG;
1035
- exports.KEY__LEGACY_SHADOW_TOKEN = KEY__LEGACY_SHADOW_TOKEN;
1036
- exports.KEY__LEGACY_SHADOW_TOKEN_PRIVATE = KEY__LEGACY_SHADOW_TOKEN_PRIVATE;
1037
- exports.KEY__NATIVE_GET_ELEMENT_BY_ID = KEY__NATIVE_GET_ELEMENT_BY_ID;
1038
- exports.KEY__NATIVE_ONLY_CSS = KEY__NATIVE_ONLY_CSS;
1039
- exports.KEY__NATIVE_QUERY_SELECTOR_ALL = KEY__NATIVE_QUERY_SELECTOR_ALL;
1040
- exports.KEY__SCOPED_CSS = KEY__SCOPED_CSS;
1041
- exports.KEY__SHADOW_RESOLVER = KEY__SHADOW_RESOLVER;
1042
- exports.KEY__SHADOW_RESOLVER_PRIVATE = KEY__SHADOW_RESOLVER_PRIVATE;
1043
- exports.KEY__SHADOW_STATIC = KEY__SHADOW_STATIC;
1044
- exports.KEY__SHADOW_STATIC_PRIVATE = KEY__SHADOW_STATIC_PRIVATE;
1045
- exports.KEY__SHADOW_TOKEN = KEY__SHADOW_TOKEN;
1046
- exports.KEY__SHADOW_TOKEN_PRIVATE = KEY__SHADOW_TOKEN_PRIVATE;
1047
- exports.KEY__SYNTHETIC_MODE = KEY__SYNTHETIC_MODE;
1048
- exports.LOWEST_API_VERSION = LOWEST_API_VERSION;
1049
- exports.LWC_VERSION = LWC_VERSION;
1050
- exports.LWC_VERSION_COMMENT = LWC_VERSION_COMMENT;
1051
- exports.LWC_VERSION_COMMENT_REGEX = LWC_VERSION_COMMENT_REGEX;
1052
- exports.MATHML_NAMESPACE = MATHML_NAMESPACE;
1053
- exports.REFLECTIVE_GLOBAL_PROPERTY_SET = REFLECTIVE_GLOBAL_PROPERTY_SET;
1054
- exports.SPECIAL_PROPERTY_ATTRIBUTE_MAPPING = SPECIAL_PROPERTY_ATTRIBUTE_MAPPING;
1055
- exports.SVG_NAMESPACE = SVG_NAMESPACE;
1056
- exports.StringCharAt = StringCharAt;
1057
- exports.StringCharCodeAt = StringCharCodeAt;
1058
- exports.StringFromCharCode = StringFromCharCode;
1059
- exports.StringReplace = StringReplace;
1060
- exports.StringSlice = StringSlice;
1061
- exports.StringSplit = StringSplit;
1062
- exports.StringToLowerCase = StringToLowerCase;
1063
- exports.StringTrim = StringTrim;
1064
- exports.XLINK_NAMESPACE = XLINK_NAMESPACE;
1065
- exports.XML_NAMESPACE = XML_NAMESPACE;
1066
- exports.addTrustedContext = addTrustedContext;
1067
- exports.addTrustedSignal = addTrustedSignal;
1068
- exports.arrayEvery = arrayEvery;
1069
- exports.assert = assert;
1070
- exports.assign = assign;
1071
- exports.create = create;
1072
- exports.defineProperties = defineProperties;
1073
- exports.defineProperty = defineProperty;
1074
- exports.entries = entries;
1075
- exports.flattenStylesheets = flattenStylesheets;
1076
- exports.forEach = forEach;
1077
- exports.freeze = freeze;
1078
- exports.fromEntries = fromEntries;
1079
- exports.generateCustomElementTagName = generateCustomElementTagName;
1080
- exports.getAPIVersionFromNumber = getAPIVersionFromNumber;
1081
- exports.getContextKeys = getContextKeys;
1082
- exports.getOwnPropertyDescriptor = getOwnPropertyDescriptor;
1083
- exports.getOwnPropertyDescriptors = getOwnPropertyDescriptors;
1084
- exports.getOwnPropertyNames = getOwnPropertyNames;
1085
- exports.getOwnPropertySymbols = getOwnPropertySymbols;
1086
- exports.getPropertyDescriptor = getPropertyDescriptor;
1087
- exports.getPrototypeOf = getPrototypeOf;
1088
- exports.hasOwnProperty = hasOwnProperty;
1089
- exports.htmlEscape = htmlEscape;
1090
- exports.htmlPropertyToAttribute = htmlPropertyToAttribute;
1091
- exports.isAPIFeatureEnabled = isAPIFeatureEnabled;
1092
- exports.isAriaAttribute = isAriaAttribute;
1093
- exports.isArray = isArray;
1094
- exports.isBoolean = isBoolean;
1095
- exports.isBooleanAttribute = isBooleanAttribute;
1096
- exports.isFalse = isFalse;
1097
- exports.isFrozen = isFrozen;
1098
- exports.isFunction = isFunction;
1099
- exports.isGlobalHtmlAttribute = isGlobalHtmlAttribute;
1100
- exports.isNull = isNull;
1101
- exports.isNumber = isNumber;
1102
- exports.isObject = isObject;
1103
- exports.isString = isString;
1104
- exports.isTrue = isTrue;
1105
- exports.isTrustedContext = isTrustedContext;
1106
- exports.isTrustedSignal = isTrustedSignal;
1107
- exports.isUndefined = isUndefined;
1108
- exports.isVoidElement = isVoidElement;
1109
- exports.kebabCaseToCamelCase = kebabCaseToCamelCase;
1110
- exports.keys = keys;
1111
- exports.legacyIsTrustedSignal = legacyIsTrustedSignal;
1112
- exports.minApiVersion = minApiVersion;
1113
- exports.noop = noop;
1114
- exports.normalizeClass = normalizeClass;
1115
- exports.normalizeStyleAttributeValue = normalizeStyleAttributeValue;
1116
- exports.normalizeTabIndex = normalizeTabIndex;
1117
- exports.parseStyleText = parseStyleText;
1118
- exports.sanitizeHtmlContent = sanitizeHtmlContent;
1119
- exports.seal = seal;
1120
- exports.setContextKeys = setContextKeys;
1121
- exports.setHooks = setHooks;
1122
- exports.setPrototypeOf = setPrototypeOf;
1123
- exports.setTrustedContextSet = setTrustedContextSet;
1124
- exports.setTrustedSignalSet = setTrustedSignalSet;
1125
- exports.toString = toString;
1126
- /** version: 8.28.2 */
1127
- //# sourceMappingURL=index.cjs.js.map