lwc 2.45.1 → 2.45.3
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/engine-dom/esm/es2017/engine-dom.js +101 -60
- package/dist/engine-dom/esm/es2017/engine-dom.js.map +1 -1
- package/dist/engine-dom/iife/es2017/engine-dom.js +101 -60
- package/dist/engine-dom/iife/es2017/engine-dom.js.map +1 -1
- package/dist/engine-dom/iife/es2017/engine-dom.min.js +1 -1
- package/dist/engine-dom/iife/es2017/engine-dom_debug.js +110 -58
- package/dist/engine-dom/iife/es2017/engine-dom_debug.js.map +1 -1
- package/dist/engine-dom/iife/es5/engine-dom.js +114 -62
- package/dist/engine-dom/iife/es5/engine-dom.js.map +1 -1
- package/dist/engine-dom/iife/es5/engine-dom.min.js +1 -1
- package/dist/engine-dom/iife/es5/engine-dom_debug.js +123 -60
- package/dist/engine-dom/iife/es5/engine-dom_debug.js.map +1 -1
- package/dist/engine-dom/umd/es2017/engine-dom.js +101 -60
- package/dist/engine-dom/umd/es2017/engine-dom.js.map +1 -1
- package/dist/engine-dom/umd/es2017/engine-dom.min.js +1 -1
- package/dist/engine-dom/umd/es2017/engine-dom_debug.js +110 -58
- package/dist/engine-dom/umd/es2017/engine-dom_debug.js.map +1 -1
- package/dist/engine-dom/umd/es5/engine-dom.js +114 -62
- package/dist/engine-dom/umd/es5/engine-dom.js.map +1 -1
- package/dist/engine-dom/umd/es5/engine-dom.min.js +1 -1
- package/dist/engine-dom/umd/es5/engine-dom_debug.js +123 -60
- package/dist/engine-dom/umd/es5/engine-dom_debug.js.map +1 -1
- package/dist/engine-server/commonjs/es2017/engine-server.js +7796 -92
- package/dist/engine-server/commonjs/es2017/engine-server.js.map +1 -1
- package/dist/engine-server/commonjs/es2017/engine-server.min.js +1 -1
- package/dist/engine-server/esm/es2017/engine-server.js +7795 -72
- package/dist/engine-server/esm/es2017/engine-server.js.map +1 -1
- package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +72 -13
- package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js.map +1 -1
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +72 -13
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js.map +1 -1
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.min.js +40 -2
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +56 -6
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js.map +1 -1
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +71 -12
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js.map +1 -1
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow.min.js +39 -1
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +43 -4
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js.map +1 -1
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +72 -13
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js.map +1 -1
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.min.js +40 -2
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +56 -6
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js.map +1 -1
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +71 -12
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js.map +1 -1
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow.min.js +39 -1
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +43 -4
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js.map +1 -1
- package/dist/wire-service/esm/es2017/wire-service.js +10 -4
- package/dist/wire-service/esm/es2017/wire-service.js.map +1 -1
- package/dist/wire-service/iife/es2017/wire-service.js +10 -4
- package/dist/wire-service/iife/es2017/wire-service.js.map +1 -1
- package/dist/wire-service/iife/es2017/wire-service_debug.js +10 -4
- package/dist/wire-service/iife/es2017/wire-service_debug.js.map +1 -1
- package/dist/wire-service/iife/es5/wire-service.js +10 -4
- package/dist/wire-service/iife/es5/wire-service.js.map +1 -1
- package/dist/wire-service/iife/es5/wire-service_debug.js +10 -4
- package/dist/wire-service/iife/es5/wire-service_debug.js.map +1 -1
- package/dist/wire-service/umd/es2017/wire-service.js +10 -4
- package/dist/wire-service/umd/es2017/wire-service.js.map +1 -1
- package/dist/wire-service/umd/es2017/wire-service_debug.js +10 -4
- package/dist/wire-service/umd/es2017/wire-service_debug.js.map +1 -1
- package/dist/wire-service/umd/es5/wire-service.js +10 -4
- package/dist/wire-service/umd/es5/wire-service.js.map +1 -1
- package/dist/wire-service/umd/es5/wire-service_debug.js +10 -4
- package/dist/wire-service/umd/es5/wire-service_debug.js.map +1 -1
- package/package.json +7 -7
|
@@ -32,9 +32,11 @@
|
|
|
32
32
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
33
33
|
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
34
34
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
35
|
-
/* proxy-compat-disable */
|
|
36
35
|
/**
|
|
37
|
-
* Copyright (C)
|
|
36
|
+
* Copyright (C) 2023 salesforce.com, inc.
|
|
37
|
+
*/
|
|
38
|
+
/**
|
|
39
|
+
* Copyright (C) 2023 salesforce.com, inc.
|
|
38
40
|
*/
|
|
39
41
|
/*
|
|
40
42
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -90,8 +92,10 @@
|
|
|
90
92
|
var isArray$1 = Array.isArray;
|
|
91
93
|
var _Array$prototype = Array.prototype,
|
|
92
94
|
ArrayCopyWithin = _Array$prototype.copyWithin,
|
|
95
|
+
ArrayEvery = _Array$prototype.every,
|
|
93
96
|
ArrayFill = _Array$prototype.fill,
|
|
94
97
|
ArrayFilter = _Array$prototype.filter,
|
|
98
|
+
ArrayIncludes = _Array$prototype.includes,
|
|
95
99
|
ArrayIndexOf = _Array$prototype.indexOf,
|
|
96
100
|
ArrayJoin = _Array$prototype.join,
|
|
97
101
|
ArrayMap = _Array$prototype.map,
|
|
@@ -105,6 +109,15 @@
|
|
|
105
109
|
ArraySplice = _Array$prototype.splice,
|
|
106
110
|
ArrayUnshift = _Array$prototype.unshift,
|
|
107
111
|
forEach = _Array$prototype.forEach;
|
|
112
|
+
// The type of the return value of Array.prototype.every is `this is T[]`. However, once this
|
|
113
|
+
// Array method is pulled out of the prototype, the function is now referencing `this` where
|
|
114
|
+
// `this` is meaningless, resulting in a TypeScript compilation error.
|
|
115
|
+
//
|
|
116
|
+
// Exposing this helper function is the closest we can get to preserving the usage patterns
|
|
117
|
+
// of Array.prototype methods used elsewhere in the codebase.
|
|
118
|
+
function arrayEvery(arr, predicate) {
|
|
119
|
+
return ArrayEvery.call(arr, predicate);
|
|
120
|
+
}
|
|
108
121
|
var StringFromCharCode = String.fromCharCode;
|
|
109
122
|
var _String$prototype = String.prototype,
|
|
110
123
|
StringCharCodeAt = _String$prototype.charCodeAt,
|
|
@@ -207,7 +220,7 @@
|
|
|
207
220
|
AriaPropNameToAttrNameMap = _ref.AriaPropNameToAttrNameMap;
|
|
208
221
|
// These attributes take either an ID or a list of IDs as values.
|
|
209
222
|
// This includes aria-* attributes as well as the special non-ARIA "for" attribute
|
|
210
|
-
var ID_REFERENCING_ATTRIBUTES_SET = new Set(['aria-activedescendant', 'aria-controls', 'aria-describedby', 'aria-details', 'aria-errormessage', 'aria-flowto', 'aria-labelledby', 'aria-owns', 'for']);
|
|
223
|
+
var ID_REFERENCING_ATTRIBUTES_SET = /*@__PURE__*/new Set(['aria-activedescendant', 'aria-controls', 'aria-describedby', 'aria-details', 'aria-errormessage', 'aria-flowto', 'aria-labelledby', 'aria-owns', 'for']);
|
|
211
224
|
|
|
212
225
|
/*
|
|
213
226
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -270,11 +283,11 @@
|
|
|
270
283
|
/**
|
|
271
284
|
* Map associating previously transformed HTML property into HTML attribute.
|
|
272
285
|
*/
|
|
273
|
-
var CACHED_PROPERTY_ATTRIBUTE_MAPPING = new Map();
|
|
286
|
+
var CACHED_PROPERTY_ATTRIBUTE_MAPPING = /*@__PURE__@*/new Map();
|
|
274
287
|
/**
|
|
275
288
|
* Map associating previously transformed HTML attribute into HTML property.
|
|
276
289
|
*/
|
|
277
|
-
var CACHED_ATTRIBUTE_PROPERTY_MAPPING = new Map();
|
|
290
|
+
var CACHED_ATTRIBUTE_PROPERTY_MAPPING = /*@__PURE__@*/new Map();
|
|
278
291
|
function htmlPropertyToAttribute(propName) {
|
|
279
292
|
var ariaAttributeName = AriaPropNameToAttrNameMap[propName];
|
|
280
293
|
if (!isUndefined$1(ariaAttributeName)) {
|
|
@@ -330,12 +343,12 @@
|
|
|
330
343
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
331
344
|
*/
|
|
332
345
|
// Increment whenever the LWC template compiler changes
|
|
333
|
-
var LWC_VERSION = "2.45.
|
|
346
|
+
var LWC_VERSION = "2.45.3";
|
|
334
347
|
var LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
|
|
335
|
-
/** version: 2.45.
|
|
348
|
+
/** version: 2.45.3 */
|
|
336
349
|
|
|
337
350
|
/**
|
|
338
|
-
* Copyright (C)
|
|
351
|
+
* Copyright (C) 2023 salesforce.com, inc.
|
|
339
352
|
*/
|
|
340
353
|
|
|
341
354
|
/*
|
|
@@ -412,10 +425,10 @@
|
|
|
412
425
|
setFeatureFlag(name, value);
|
|
413
426
|
}
|
|
414
427
|
}
|
|
415
|
-
/** version: 2.45.
|
|
428
|
+
/** version: 2.45.3 */
|
|
416
429
|
|
|
417
430
|
/**
|
|
418
|
-
* Copyright (C)
|
|
431
|
+
* Copyright (C) 2023 salesforce.com, inc.
|
|
419
432
|
*/
|
|
420
433
|
|
|
421
434
|
/*
|
|
@@ -476,7 +489,7 @@
|
|
|
476
489
|
}
|
|
477
490
|
}
|
|
478
491
|
}
|
|
479
|
-
/** version: 2.45.
|
|
492
|
+
/** version: 2.45.3 */
|
|
480
493
|
|
|
481
494
|
/*
|
|
482
495
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -490,7 +503,9 @@
|
|
|
490
503
|
applyAriaReflection();
|
|
491
504
|
}
|
|
492
505
|
|
|
493
|
-
|
|
506
|
+
/**
|
|
507
|
+
* Copyright (C) 2023 salesforce.com, inc.
|
|
508
|
+
*/
|
|
494
509
|
|
|
495
510
|
/*
|
|
496
511
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -943,19 +958,6 @@
|
|
|
943
958
|
*/
|
|
944
959
|
// These properties get added to LWCElement.prototype publicProps automatically
|
|
945
960
|
var defaultDefHTMLPropertyNames = ['accessKey', 'dir', 'draggable', 'hidden', 'id', 'lang', 'spellcheck', 'tabIndex', 'title'];
|
|
946
|
-
var controlledElement = null;
|
|
947
|
-
var controlledAttributeName;
|
|
948
|
-
function isAttributeLocked(elm, attrName) {
|
|
949
|
-
return elm !== controlledElement || attrName !== controlledAttributeName;
|
|
950
|
-
}
|
|
951
|
-
function lockAttribute(_elm, _key) {
|
|
952
|
-
controlledElement = null;
|
|
953
|
-
controlledAttributeName = undefined;
|
|
954
|
-
}
|
|
955
|
-
function unlockAttribute(elm, key) {
|
|
956
|
-
controlledElement = elm;
|
|
957
|
-
controlledAttributeName = key;
|
|
958
|
-
}
|
|
959
961
|
|
|
960
962
|
/*
|
|
961
963
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -994,6 +996,7 @@
|
|
|
994
996
|
* SPDX-License-Identifier: MIT
|
|
995
997
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
996
998
|
*/
|
|
999
|
+
/* eslint @lwc/lwc-internal/no-production-assert: "off" */
|
|
997
1000
|
function generateDataDescriptor(options) {
|
|
998
1001
|
return assign({
|
|
999
1002
|
configurable: true,
|
|
@@ -1939,6 +1942,14 @@
|
|
|
1939
1942
|
* SPDX-License-Identifier: MIT
|
|
1940
1943
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
1941
1944
|
*/
|
|
1945
|
+
/**
|
|
1946
|
+
* This module is responsible for producing the ComponentDef object that is always
|
|
1947
|
+
* accessible via `vm.def`. This is lazily created during the creation of the first
|
|
1948
|
+
* instance of a component class, and shared across all instances.
|
|
1949
|
+
*
|
|
1950
|
+
* This structure can be used to synthetically create proxies, and understand the
|
|
1951
|
+
* shape of a component. It is also used internally to apply extra optimizations.
|
|
1952
|
+
*/
|
|
1942
1953
|
/**
|
|
1943
1954
|
* This operation is called with a descriptor of an standard html property
|
|
1944
1955
|
* that a Custom Element can support (including AOM properties), which
|
|
@@ -2115,17 +2126,13 @@
|
|
|
2115
2126
|
var vm = getAssociatedVM(this);
|
|
2116
2127
|
var elm = vm.elm,
|
|
2117
2128
|
removeAttribute = vm.renderer.removeAttribute;
|
|
2118
|
-
unlockAttribute(elm, name);
|
|
2119
2129
|
removeAttribute(elm, name);
|
|
2120
|
-
lockAttribute();
|
|
2121
2130
|
},
|
|
2122
2131
|
removeAttributeNS: function removeAttributeNS(namespace, name) {
|
|
2123
2132
|
var _getAssociatedVM = getAssociatedVM(this),
|
|
2124
2133
|
elm = _getAssociatedVM.elm,
|
|
2125
2134
|
removeAttribute = _getAssociatedVM.renderer.removeAttribute;
|
|
2126
|
-
unlockAttribute(elm, name);
|
|
2127
2135
|
removeAttribute(elm, name, namespace);
|
|
2128
|
-
lockAttribute();
|
|
2129
2136
|
},
|
|
2130
2137
|
getAttribute: function getAttribute(name) {
|
|
2131
2138
|
var vm = getAssociatedVM(this);
|
|
@@ -2148,9 +2155,7 @@
|
|
|
2148
2155
|
logError("Failed to construct '".concat(getComponentTag(vm), "': The result must not have attributes."));
|
|
2149
2156
|
}
|
|
2150
2157
|
}
|
|
2151
|
-
unlockAttribute(elm, name);
|
|
2152
2158
|
setAttribute(elm, name, value);
|
|
2153
|
-
lockAttribute();
|
|
2154
2159
|
},
|
|
2155
2160
|
setAttributeNS: function setAttributeNS(namespace, name, value) {
|
|
2156
2161
|
var vm = getAssociatedVM(this);
|
|
@@ -2161,9 +2166,7 @@
|
|
|
2161
2166
|
logError("Failed to construct '".concat(getComponentTag(vm), "': The result must not have attributes."));
|
|
2162
2167
|
}
|
|
2163
2168
|
}
|
|
2164
|
-
unlockAttribute(elm, name);
|
|
2165
2169
|
setAttribute(elm, name, value, namespace);
|
|
2166
|
-
lockAttribute();
|
|
2167
2170
|
},
|
|
2168
2171
|
getBoundingClientRect: function getBoundingClientRect() {
|
|
2169
2172
|
var vm = getAssociatedVM(this);
|
|
@@ -2563,7 +2566,9 @@
|
|
|
2563
2566
|
});
|
|
2564
2567
|
runWithBoundaryProtection(vm, vm, noop, function () {
|
|
2565
2568
|
// job
|
|
2566
|
-
connector = new adapter(dataCallback
|
|
2569
|
+
connector = new adapter(dataCallback, {
|
|
2570
|
+
tagName: vm.tagName
|
|
2571
|
+
});
|
|
2567
2572
|
}, noop);
|
|
2568
2573
|
var updateConnectorConfig = function updateConnectorConfig(config) {
|
|
2569
2574
|
// every time the config is recomputed due to tracking,
|
|
@@ -3153,6 +3158,10 @@
|
|
|
3153
3158
|
* SPDX-License-Identifier: MIT
|
|
3154
3159
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
3155
3160
|
*/
|
|
3161
|
+
/**
|
|
3162
|
+
* This module is responsible for creating the base bridge class BaseBridgeElement
|
|
3163
|
+
* that represents the HTMLElement extension used for any LWC inserted in the DOM.
|
|
3164
|
+
*/
|
|
3156
3165
|
// A bridge descriptor is a descriptor whose job is just to get the component instance
|
|
3157
3166
|
// from the element instance, and get the value or set a new value on the component.
|
|
3158
3167
|
// This means that across different elements, similar names can get the exact same
|
|
@@ -3207,14 +3216,6 @@
|
|
|
3207
3216
|
}
|
|
3208
3217
|
return;
|
|
3209
3218
|
}
|
|
3210
|
-
if (!isAttributeLocked(this, attrName)) {
|
|
3211
|
-
// Ignore changes triggered by the engine itself during:
|
|
3212
|
-
// * diffing when public props are attempting to reflect to the DOM
|
|
3213
|
-
// * component via `this.setAttribute()`, should never update the prop
|
|
3214
|
-
// Both cases, the setAttribute call is always wrapped by the unlocking of the
|
|
3215
|
-
// attribute to be changed
|
|
3216
|
-
return;
|
|
3217
|
-
}
|
|
3218
3219
|
// Reflect attribute change to the corresponding property when changed from outside.
|
|
3219
3220
|
this[propName] = newValue;
|
|
3220
3221
|
};
|
|
@@ -3629,6 +3630,14 @@
|
|
|
3629
3630
|
* SPDX-License-Identifier: MIT
|
|
3630
3631
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
3631
3632
|
*/
|
|
3633
|
+
/**
|
|
3634
|
+
* This module is responsible for producing the ComponentDef object that is always
|
|
3635
|
+
* accessible via `vm.def`. This is lazily created during the creation of the first
|
|
3636
|
+
* instance of a component class, and shared across all instances.
|
|
3637
|
+
*
|
|
3638
|
+
* This structure can be used to synthetically create proxies, and understand the
|
|
3639
|
+
* shape of a component. It is also used internally to apply extra optimizations.
|
|
3640
|
+
*/
|
|
3632
3641
|
var CtorToDefMap = new WeakMap();
|
|
3633
3642
|
function getCtorProto(Ctor) {
|
|
3634
3643
|
var proto = getPrototypeOf$1(Ctor);
|
|
@@ -3827,9 +3836,9 @@
|
|
|
3827
3836
|
};
|
|
3828
3837
|
}
|
|
3829
3838
|
var publicMethods = {};
|
|
3830
|
-
for (var
|
|
3839
|
+
for (var _key in methods) {
|
|
3831
3840
|
// avoid leaking the reference to the public method descriptors
|
|
3832
|
-
publicMethods[
|
|
3841
|
+
publicMethods[_key] = methods[_key].value;
|
|
3833
3842
|
}
|
|
3834
3843
|
return {
|
|
3835
3844
|
ctor: ctor,
|
|
@@ -4088,7 +4097,6 @@
|
|
|
4088
4097
|
var cur = attrs[key];
|
|
4089
4098
|
var old = oldAttrs[key];
|
|
4090
4099
|
if (old !== cur) {
|
|
4091
|
-
unlockAttribute(elm, key);
|
|
4092
4100
|
if (StringCharCodeAt.call(key, 3) === ColonCharCode$1) {
|
|
4093
4101
|
// Assume xml namespace
|
|
4094
4102
|
setAttribute(elm, key, cur, XML_NAMESPACE);
|
|
@@ -4100,7 +4108,6 @@
|
|
|
4100
4108
|
} else {
|
|
4101
4109
|
setAttribute(elm, key, cur);
|
|
4102
4110
|
}
|
|
4103
|
-
lockAttribute();
|
|
4104
4111
|
}
|
|
4105
4112
|
}
|
|
4106
4113
|
}
|
|
@@ -5761,8 +5768,8 @@
|
|
|
5761
5768
|
}
|
|
5762
5769
|
function buildParseFragmentFn(createFragmentFn) {
|
|
5763
5770
|
return function (strings) {
|
|
5764
|
-
for (var _len3 = arguments.length, keys = new Array(_len3 > 1 ? _len3 - 1 : 0),
|
|
5765
|
-
keys[
|
|
5771
|
+
for (var _len3 = arguments.length, keys = new Array(_len3 > 1 ? _len3 - 1 : 0), _key2 = 1; _key2 < _len3; _key2++) {
|
|
5772
|
+
keys[_key2 - 1] = arguments[_key2];
|
|
5766
5773
|
}
|
|
5767
5774
|
var cache = create(null);
|
|
5768
5775
|
return function () {
|
|
@@ -7026,6 +7033,35 @@
|
|
|
7026
7033
|
}
|
|
7027
7034
|
return false;
|
|
7028
7035
|
}
|
|
7036
|
+
// The validationOptOut static property can be an array of attribute names.
|
|
7037
|
+
// Any attribute names specified in that array will not be validated, and the
|
|
7038
|
+
// LWC runtime will assume that VDOM attrs and DOM attrs are in sync.
|
|
7039
|
+
function getValidationPredicate(optOutStaticProp) {
|
|
7040
|
+
if (isUndefined$1(optOutStaticProp)) {
|
|
7041
|
+
return function (_attrName) {
|
|
7042
|
+
return true;
|
|
7043
|
+
};
|
|
7044
|
+
}
|
|
7045
|
+
// If validationOptOut is true, no attributes will be checked for correctness
|
|
7046
|
+
// and the runtime will assume VDOM attrs and DOM attrs are in sync.
|
|
7047
|
+
if (isTrue(optOutStaticProp)) {
|
|
7048
|
+
return function (_attrName) {
|
|
7049
|
+
return false;
|
|
7050
|
+
};
|
|
7051
|
+
}
|
|
7052
|
+
// If validationOptOut is an array of strings, attributes specified in the
|
|
7053
|
+
// array will be "opted out". Attributes not specified in the array will still
|
|
7054
|
+
// be validated.
|
|
7055
|
+
if (isArray$1(optOutStaticProp) && arrayEvery(optOutStaticProp, isString)) {
|
|
7056
|
+
return function (attrName) {
|
|
7057
|
+
return !ArrayIncludes.call(optOutStaticProp, attrName);
|
|
7058
|
+
};
|
|
7059
|
+
}
|
|
7060
|
+
logWarn('Validation opt out must be `true` or an array of attributes that should not be validated.');
|
|
7061
|
+
return function (_attrName) {
|
|
7062
|
+
return true;
|
|
7063
|
+
};
|
|
7064
|
+
}
|
|
7029
7065
|
function hydrateText(node, vnode, renderer) {
|
|
7030
7066
|
var _a;
|
|
7031
7067
|
if (!hasCorrectNodeType(vnode, node, 3 /* EnvNodeTypes.TEXT */, renderer)) {
|
|
@@ -7105,7 +7141,18 @@
|
|
|
7105
7141
|
return elm;
|
|
7106
7142
|
}
|
|
7107
7143
|
function hydrateCustomElement(elm, vnode, renderer) {
|
|
7108
|
-
|
|
7144
|
+
var validationOptOut = vnode.ctor.validationOptOut;
|
|
7145
|
+
var shouldValidateAttr = getValidationPredicate(validationOptOut);
|
|
7146
|
+
// The validationOptOut static property can be an array of attribute names.
|
|
7147
|
+
// Any attribute names specified in that array will not be validated, and the
|
|
7148
|
+
// LWC runtime will assume that VDOM attrs and DOM attrs are in sync.
|
|
7149
|
+
//
|
|
7150
|
+
// If validationOptOut is true, no attributes will be checked for correctness
|
|
7151
|
+
// and the runtime will assume VDOM attrs and DOM attrs are in sync.
|
|
7152
|
+
//
|
|
7153
|
+
// Therefore, if validationOptOut is falsey or an array of strings, we need to
|
|
7154
|
+
// examine some or all of the custom element's attributes.
|
|
7155
|
+
if (!hasCorrectNodeType(vnode, elm, 1 /* EnvNodeTypes.ELEMENT */, renderer) || !isMatchingElement(vnode, elm, renderer, shouldValidateAttr)) {
|
|
7109
7156
|
return handleMismatch(elm, vnode, renderer);
|
|
7110
7157
|
}
|
|
7111
7158
|
var sel = vnode.sel,
|
|
@@ -7139,14 +7186,12 @@
|
|
|
7139
7186
|
function hydrateChildren(node, children, parentNode, owner) {
|
|
7140
7187
|
var hasWarned = false;
|
|
7141
7188
|
var nextNode = node;
|
|
7142
|
-
var anchor = null;
|
|
7143
7189
|
var renderer = owner.renderer;
|
|
7144
7190
|
for (var _i36 = 0; _i36 < children.length; _i36++) {
|
|
7145
7191
|
var childVnode = children[_i36];
|
|
7146
7192
|
if (!isNull(childVnode)) {
|
|
7147
7193
|
if (nextNode) {
|
|
7148
7194
|
nextNode = hydrateNode(nextNode, childVnode, renderer);
|
|
7149
|
-
anchor = childVnode.elm;
|
|
7150
7195
|
} else {
|
|
7151
7196
|
hasMismatch = true;
|
|
7152
7197
|
if (process.env.NODE_ENV !== 'production') {
|
|
@@ -7155,8 +7200,8 @@
|
|
|
7155
7200
|
logError("Hydration mismatch: incorrect number of rendered nodes. Client produced more nodes than the server.", owner);
|
|
7156
7201
|
}
|
|
7157
7202
|
}
|
|
7158
|
-
mount(childVnode, parentNode, renderer,
|
|
7159
|
-
|
|
7203
|
+
mount(childVnode, parentNode, renderer, nextNode);
|
|
7204
|
+
nextNode = renderer.nextSibling(childVnode.elm);
|
|
7160
7205
|
}
|
|
7161
7206
|
}
|
|
7162
7207
|
}
|
|
@@ -7202,6 +7247,9 @@
|
|
|
7202
7247
|
return true;
|
|
7203
7248
|
}
|
|
7204
7249
|
function isMatchingElement(vnode, elm, renderer) {
|
|
7250
|
+
var shouldValidateAttr = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : function () {
|
|
7251
|
+
return true;
|
|
7252
|
+
};
|
|
7205
7253
|
var getProperty = renderer.getProperty;
|
|
7206
7254
|
if (vnode.sel.toLowerCase() !== getProperty(elm, 'tagName').toLowerCase()) {
|
|
7207
7255
|
if (process.env.NODE_ENV !== 'production') {
|
|
@@ -7209,10 +7257,10 @@
|
|
|
7209
7257
|
}
|
|
7210
7258
|
return false;
|
|
7211
7259
|
}
|
|
7212
|
-
var
|
|
7213
|
-
var
|
|
7214
|
-
var
|
|
7215
|
-
return
|
|
7260
|
+
var hasCompatibleAttrs = validateAttrs(vnode, elm, renderer, shouldValidateAttr);
|
|
7261
|
+
var hasCompatibleClass = shouldValidateAttr('class') ? validateClassAttr(vnode, elm, renderer) : true;
|
|
7262
|
+
var hasCompatibleStyle = shouldValidateAttr('style') ? validateStyleAttr(vnode, elm, renderer) : true;
|
|
7263
|
+
return hasCompatibleAttrs && hasCompatibleClass && hasCompatibleStyle;
|
|
7216
7264
|
}
|
|
7217
7265
|
function attributeValuesAreEqual(vnodeValue, value) {
|
|
7218
7266
|
var vnodeValueAsString = String(vnodeValue);
|
|
@@ -7227,7 +7275,7 @@
|
|
|
7227
7275
|
// In all other cases, the two values are not considered equal
|
|
7228
7276
|
return false;
|
|
7229
7277
|
}
|
|
7230
|
-
function validateAttrs(vnode, elm, renderer) {
|
|
7278
|
+
function validateAttrs(vnode, elm, renderer, shouldValidateAttr) {
|
|
7231
7279
|
var _vnode$data$attrs = vnode.data.attrs,
|
|
7232
7280
|
attrs = _vnode$data$attrs === void 0 ? {} : _vnode$data$attrs;
|
|
7233
7281
|
var nodesAreCompatible = true;
|
|
@@ -7237,6 +7285,9 @@
|
|
|
7237
7285
|
var _Object$entries$_i = _slicedToArray(_Object$entries[_i37], 2),
|
|
7238
7286
|
attrName = _Object$entries$_i[0],
|
|
7239
7287
|
attrValue = _Object$entries$_i[1];
|
|
7288
|
+
if (!shouldValidateAttr(attrName)) {
|
|
7289
|
+
continue;
|
|
7290
|
+
}
|
|
7240
7291
|
var owner = vnode.owner;
|
|
7241
7292
|
var getAttribute = renderer.getAttribute;
|
|
7242
7293
|
var elmAttrValue = getAttribute(elm, attrName);
|
|
@@ -7688,7 +7739,7 @@
|
|
|
7688
7739
|
}
|
|
7689
7740
|
return getReadOnlyProxy(obj);
|
|
7690
7741
|
}
|
|
7691
|
-
|
|
7742
|
+
/** version: 2.45.3 */
|
|
7692
7743
|
|
|
7693
7744
|
/*
|
|
7694
7745
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -7948,6 +7999,7 @@
|
|
|
7948
7999
|
* SPDX-License-Identifier: MIT
|
|
7949
8000
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
7950
8001
|
*/
|
|
8002
|
+
new WeakMap();
|
|
7951
8003
|
// Creates a custom element for compat (legacy) browser environments
|
|
7952
8004
|
var createCustomElementCompat = function createCustomElementCompat(tagName, upgradeCallback) {
|
|
7953
8005
|
var elm = document.createElement(tagName);
|
|
@@ -8075,7 +8127,7 @@
|
|
|
8075
8127
|
function rendererFactory(baseRenderer) {
|
|
8076
8128
|
var renderer = function (exports) {
|
|
8077
8129
|
/**
|
|
8078
|
-
* Copyright (C)
|
|
8130
|
+
* Copyright (C) 2023 salesforce.com, inc.
|
|
8079
8131
|
*/
|
|
8080
8132
|
/*
|
|
8081
8133
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -8114,7 +8166,7 @@
|
|
|
8114
8166
|
function isNull(obj) {
|
|
8115
8167
|
return obj === null;
|
|
8116
8168
|
}
|
|
8117
|
-
/** version: 2.45.
|
|
8169
|
+
/** version: 2.45.3 */
|
|
8118
8170
|
|
|
8119
8171
|
/*
|
|
8120
8172
|
* Copyright (c) 2023, salesforce.com, inc.
|
|
@@ -8756,7 +8808,7 @@
|
|
|
8756
8808
|
});
|
|
8757
8809
|
});
|
|
8758
8810
|
}
|
|
8759
|
-
|
|
8811
|
+
/** version: 2.45.3 */
|
|
8760
8812
|
|
|
8761
8813
|
exports.LightningElement = LightningElement;
|
|
8762
8814
|
exports.__unstable__ProfilerControl = profilerControl;
|