lwc 2.13.4 → 2.14.2
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 +488 -547
- package/dist/engine-dom/iife/es2017/engine-dom.js +488 -546
- package/dist/engine-dom/iife/es2017/engine-dom.min.js +1 -1
- package/dist/engine-dom/iife/es2017/engine-dom_debug.js +430 -490
- package/dist/engine-dom/iife/es5/engine-dom.js +600 -715
- package/dist/engine-dom/iife/es5/engine-dom.min.js +1 -1
- package/dist/engine-dom/iife/es5/engine-dom_debug.js +535 -655
- package/dist/engine-dom/umd/es2017/engine-dom.js +488 -546
- package/dist/engine-dom/umd/es2017/engine-dom.min.js +1 -1
- package/dist/engine-dom/umd/es2017/engine-dom_debug.js +430 -490
- package/dist/engine-dom/umd/es5/engine-dom.js +600 -715
- package/dist/engine-dom/umd/es5/engine-dom.min.js +1 -1
- package/dist/engine-dom/umd/es5/engine-dom_debug.js +535 -655
- package/dist/engine-server/commonjs/es2017/engine-server.js +371 -450
- package/dist/engine-server/commonjs/es2017/engine-server.min.js +1 -1
- package/dist/engine-server/esm/es2017/engine-server.js +371 -451
- package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +3 -3
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +3 -3
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +3 -3
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +3 -3
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +3 -3
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +3 -3
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +3 -3
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +3 -3
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +3 -3
- package/dist/wire-service/esm/es2017/wire-service.js +2 -2
- package/dist/wire-service/iife/es2017/wire-service.js +2 -2
- package/dist/wire-service/iife/es2017/wire-service_debug.js +2 -2
- package/dist/wire-service/iife/es5/wire-service.js +2 -2
- package/dist/wire-service/iife/es5/wire-service_debug.js +2 -2
- package/dist/wire-service/umd/es2017/wire-service.js +2 -2
- package/dist/wire-service/umd/es2017/wire-service_debug.js +2 -2
- package/dist/wire-service/umd/es5/wire-service.js +2 -2
- package/dist/wire-service/umd/es5/wire-service_debug.js +2 -2
- package/package.json +7 -7
|
@@ -368,9 +368,9 @@
|
|
|
368
368
|
*/
|
|
369
369
|
// Increment whenever the LWC template compiler changes
|
|
370
370
|
|
|
371
|
-
var LWC_VERSION = "2.
|
|
371
|
+
var LWC_VERSION = "2.14.2";
|
|
372
372
|
var LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
|
|
373
|
-
/** version: 2.
|
|
373
|
+
/** version: 2.14.2 */
|
|
374
374
|
|
|
375
375
|
/*
|
|
376
376
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -549,8 +549,33 @@
|
|
|
549
549
|
setFeatureFlag(name, value);
|
|
550
550
|
}
|
|
551
551
|
}
|
|
552
|
-
/** version: 2.
|
|
552
|
+
/** version: 2.14.2 */
|
|
553
553
|
|
|
554
|
+
/*
|
|
555
|
+
* Copyright (c) 2018, salesforce.com, inc.
|
|
556
|
+
* All rights reserved.
|
|
557
|
+
* SPDX-License-Identifier: MIT
|
|
558
|
+
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
559
|
+
*/
|
|
560
|
+
// @ts-ignore
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
if (process.env.NODE_ENV !== 'production' && typeof __karma__ !== 'undefined') {
|
|
564
|
+
window.addEventListener('test-dummy-flag', function () {
|
|
565
|
+
var hasFlag = false;
|
|
566
|
+
|
|
567
|
+
if (runtimeFlags.DUMMY_TEST_FLAG) {
|
|
568
|
+
hasFlag = true;
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
window.dispatchEvent(new CustomEvent('has-dummy-flag', {
|
|
572
|
+
detail: {
|
|
573
|
+
package: '@lwc/engine-dom',
|
|
574
|
+
hasFlag: hasFlag
|
|
575
|
+
}
|
|
576
|
+
}));
|
|
577
|
+
});
|
|
578
|
+
}
|
|
554
579
|
/* proxy-compat-disable */
|
|
555
580
|
|
|
556
581
|
/*
|
|
@@ -702,237 +727,6 @@
|
|
|
702
727
|
}
|
|
703
728
|
|
|
704
729
|
return list;
|
|
705
|
-
} //
|
|
706
|
-
// Primitives
|
|
707
|
-
//
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
var ssr$1;
|
|
711
|
-
|
|
712
|
-
function setSsr(ssrImpl) {
|
|
713
|
-
ssr$1 = ssrImpl;
|
|
714
|
-
}
|
|
715
|
-
|
|
716
|
-
var isNativeShadowDefined$1;
|
|
717
|
-
|
|
718
|
-
function setIsNativeShadowDefined(isNativeShadowDefinedImpl) {
|
|
719
|
-
isNativeShadowDefined$1 = isNativeShadowDefinedImpl;
|
|
720
|
-
}
|
|
721
|
-
|
|
722
|
-
var isSyntheticShadowDefined$1;
|
|
723
|
-
|
|
724
|
-
function setIsSyntheticShadowDefined(isSyntheticShadowDefinedImpl) {
|
|
725
|
-
isSyntheticShadowDefined$1 = isSyntheticShadowDefinedImpl;
|
|
726
|
-
}
|
|
727
|
-
|
|
728
|
-
var HTMLElementExported$1;
|
|
729
|
-
|
|
730
|
-
function setHTMLElement(HTMLElementImpl) {
|
|
731
|
-
HTMLElementExported$1 = HTMLElementImpl;
|
|
732
|
-
}
|
|
733
|
-
|
|
734
|
-
var insert$1;
|
|
735
|
-
|
|
736
|
-
function setInsert(insertImpl) {
|
|
737
|
-
insert$1 = insertImpl;
|
|
738
|
-
}
|
|
739
|
-
|
|
740
|
-
var remove$1;
|
|
741
|
-
|
|
742
|
-
function setRemove(removeImpl) {
|
|
743
|
-
remove$1 = removeImpl;
|
|
744
|
-
}
|
|
745
|
-
|
|
746
|
-
var createElement$2;
|
|
747
|
-
|
|
748
|
-
function setCreateElement(createElementImpl) {
|
|
749
|
-
createElement$2 = createElementImpl;
|
|
750
|
-
}
|
|
751
|
-
|
|
752
|
-
var createText$1;
|
|
753
|
-
|
|
754
|
-
function setCreateText(createTextImpl) {
|
|
755
|
-
createText$1 = createTextImpl;
|
|
756
|
-
}
|
|
757
|
-
|
|
758
|
-
var createComment$1;
|
|
759
|
-
|
|
760
|
-
function setCreateComment(createCommentImpl) {
|
|
761
|
-
createComment$1 = createCommentImpl;
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
var nextSibling$1;
|
|
765
|
-
|
|
766
|
-
function setNextSibling(nextSiblingImpl) {
|
|
767
|
-
nextSibling$1 = nextSiblingImpl;
|
|
768
|
-
}
|
|
769
|
-
|
|
770
|
-
var attachShadow$1;
|
|
771
|
-
|
|
772
|
-
function setAttachShadow(attachShadowImpl) {
|
|
773
|
-
attachShadow$1 = attachShadowImpl;
|
|
774
|
-
}
|
|
775
|
-
|
|
776
|
-
var getProperty$1;
|
|
777
|
-
|
|
778
|
-
function setGetProperty(getPropertyImpl) {
|
|
779
|
-
getProperty$1 = getPropertyImpl;
|
|
780
|
-
}
|
|
781
|
-
|
|
782
|
-
var setProperty$1;
|
|
783
|
-
|
|
784
|
-
function setSetProperty(setPropertyImpl) {
|
|
785
|
-
setProperty$1 = setPropertyImpl;
|
|
786
|
-
}
|
|
787
|
-
|
|
788
|
-
var setText$1;
|
|
789
|
-
|
|
790
|
-
function setSetText(setTextImpl) {
|
|
791
|
-
setText$1 = setTextImpl;
|
|
792
|
-
}
|
|
793
|
-
|
|
794
|
-
var getAttribute$1;
|
|
795
|
-
|
|
796
|
-
function setGetAttribute(getAttributeImpl) {
|
|
797
|
-
getAttribute$1 = getAttributeImpl;
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
var setAttribute$1;
|
|
801
|
-
|
|
802
|
-
function setSetAttribute(setAttributeImpl) {
|
|
803
|
-
setAttribute$1 = setAttributeImpl;
|
|
804
|
-
}
|
|
805
|
-
|
|
806
|
-
var removeAttribute$1;
|
|
807
|
-
|
|
808
|
-
function setRemoveAttribute(removeAttributeImpl) {
|
|
809
|
-
removeAttribute$1 = removeAttributeImpl;
|
|
810
|
-
}
|
|
811
|
-
|
|
812
|
-
var addEventListener$1;
|
|
813
|
-
|
|
814
|
-
function setAddEventListener(addEventListenerImpl) {
|
|
815
|
-
addEventListener$1 = addEventListenerImpl;
|
|
816
|
-
}
|
|
817
|
-
|
|
818
|
-
var removeEventListener$1;
|
|
819
|
-
|
|
820
|
-
function setRemoveEventListener(removeEventListenerImpl) {
|
|
821
|
-
removeEventListener$1 = removeEventListenerImpl;
|
|
822
|
-
}
|
|
823
|
-
|
|
824
|
-
var dispatchEvent$1;
|
|
825
|
-
|
|
826
|
-
function setDispatchEvent(dispatchEventImpl) {
|
|
827
|
-
dispatchEvent$1 = dispatchEventImpl;
|
|
828
|
-
}
|
|
829
|
-
|
|
830
|
-
var getClassList$1;
|
|
831
|
-
|
|
832
|
-
function setGetClassList(getClassListImpl) {
|
|
833
|
-
getClassList$1 = getClassListImpl;
|
|
834
|
-
}
|
|
835
|
-
|
|
836
|
-
var setCSSStyleProperty$1;
|
|
837
|
-
|
|
838
|
-
function setSetCSSStyleProperty(setCSSStylePropertyImpl) {
|
|
839
|
-
setCSSStyleProperty$1 = setCSSStylePropertyImpl;
|
|
840
|
-
}
|
|
841
|
-
|
|
842
|
-
var getBoundingClientRect$1;
|
|
843
|
-
|
|
844
|
-
function setGetBoundingClientRect(getBoundingClientRectImpl) {
|
|
845
|
-
getBoundingClientRect$1 = getBoundingClientRectImpl;
|
|
846
|
-
}
|
|
847
|
-
|
|
848
|
-
var querySelector$1;
|
|
849
|
-
|
|
850
|
-
function setQuerySelector(querySelectorImpl) {
|
|
851
|
-
querySelector$1 = querySelectorImpl;
|
|
852
|
-
}
|
|
853
|
-
|
|
854
|
-
var querySelectorAll$1;
|
|
855
|
-
|
|
856
|
-
function setQuerySelectorAll(querySelectorAllImpl) {
|
|
857
|
-
querySelectorAll$1 = querySelectorAllImpl;
|
|
858
|
-
}
|
|
859
|
-
|
|
860
|
-
var getElementsByTagName$1;
|
|
861
|
-
|
|
862
|
-
function setGetElementsByTagName(getElementsByTagNameImpl) {
|
|
863
|
-
getElementsByTagName$1 = getElementsByTagNameImpl;
|
|
864
|
-
}
|
|
865
|
-
|
|
866
|
-
var getElementsByClassName$1;
|
|
867
|
-
|
|
868
|
-
function setGetElementsByClassName(getElementsByClassNameImpl) {
|
|
869
|
-
getElementsByClassName$1 = getElementsByClassNameImpl;
|
|
870
|
-
}
|
|
871
|
-
|
|
872
|
-
var getChildren$1;
|
|
873
|
-
|
|
874
|
-
function setGetChildren(getChildrenImpl) {
|
|
875
|
-
getChildren$1 = getChildrenImpl;
|
|
876
|
-
}
|
|
877
|
-
|
|
878
|
-
var getChildNodes$1;
|
|
879
|
-
|
|
880
|
-
function setGetChildNodes(getChildNodesImpl) {
|
|
881
|
-
getChildNodes$1 = getChildNodesImpl;
|
|
882
|
-
}
|
|
883
|
-
|
|
884
|
-
var getFirstChild$1;
|
|
885
|
-
|
|
886
|
-
function setGetFirstChild(getFirstChildImpl) {
|
|
887
|
-
getFirstChild$1 = getFirstChildImpl;
|
|
888
|
-
}
|
|
889
|
-
|
|
890
|
-
var getFirstElementChild$1;
|
|
891
|
-
|
|
892
|
-
function setGetFirstElementChild(getFirstElementChildImpl) {
|
|
893
|
-
getFirstElementChild$1 = getFirstElementChildImpl;
|
|
894
|
-
}
|
|
895
|
-
|
|
896
|
-
var getLastChild$1;
|
|
897
|
-
|
|
898
|
-
function setGetLastChild(getLastChildImpl) {
|
|
899
|
-
getLastChild$1 = getLastChildImpl;
|
|
900
|
-
}
|
|
901
|
-
|
|
902
|
-
var getLastElementChild$1;
|
|
903
|
-
|
|
904
|
-
function setGetLastElementChild(getLastElementChildImpl) {
|
|
905
|
-
getLastElementChild$1 = getLastElementChildImpl;
|
|
906
|
-
}
|
|
907
|
-
|
|
908
|
-
var isConnected$1;
|
|
909
|
-
|
|
910
|
-
function setIsConnected(isConnectedImpl) {
|
|
911
|
-
isConnected$1 = isConnectedImpl;
|
|
912
|
-
}
|
|
913
|
-
|
|
914
|
-
var insertStylesheet$1;
|
|
915
|
-
|
|
916
|
-
function setInsertStylesheet(insertStylesheetImpl) {
|
|
917
|
-
insertStylesheet$1 = insertStylesheetImpl;
|
|
918
|
-
}
|
|
919
|
-
|
|
920
|
-
var assertInstanceOfHTMLElement$1;
|
|
921
|
-
|
|
922
|
-
function setAssertInstanceOfHTMLElement(assertInstanceOfHTMLElementImpl) {
|
|
923
|
-
assertInstanceOfHTMLElement$1 = assertInstanceOfHTMLElementImpl;
|
|
924
|
-
}
|
|
925
|
-
|
|
926
|
-
var defineCustomElement$1;
|
|
927
|
-
|
|
928
|
-
function setDefineCustomElement(defineCustomElementImpl) {
|
|
929
|
-
defineCustomElement$1 = defineCustomElementImpl;
|
|
930
|
-
}
|
|
931
|
-
|
|
932
|
-
var getCustomElement$1;
|
|
933
|
-
|
|
934
|
-
function setGetCustomElement(getCustomElementImpl) {
|
|
935
|
-
getCustomElement$1 = getCustomElementImpl;
|
|
936
730
|
}
|
|
937
731
|
/*
|
|
938
732
|
* Copyright (c) 2019, salesforce.com, inc.
|
|
@@ -2585,7 +2379,9 @@
|
|
|
2585
2379
|
var bridge = def.bridge;
|
|
2586
2380
|
|
|
2587
2381
|
if (process.env.NODE_ENV !== 'production') {
|
|
2588
|
-
|
|
2382
|
+
var _assertInstanceOfHTMLElement = vm.renderer.assertInstanceOfHTMLElement;
|
|
2383
|
+
|
|
2384
|
+
_assertInstanceOfHTMLElement(vm.elm, "Component creation requires a DOM element to be associated to ".concat(vm, "."));
|
|
2589
2385
|
}
|
|
2590
2386
|
|
|
2591
2387
|
var component = this;
|
|
@@ -2629,13 +2425,14 @@
|
|
|
2629
2425
|
};
|
|
2630
2426
|
|
|
2631
2427
|
function doAttachShadow(vm) {
|
|
2632
|
-
var _attachShadow
|
|
2428
|
+
var _attachShadow;
|
|
2633
2429
|
|
|
2634
2430
|
var elm = vm.elm,
|
|
2635
2431
|
mode = vm.mode,
|
|
2636
2432
|
shadowMode = vm.shadowMode,
|
|
2637
|
-
ctor = vm.def.ctor
|
|
2638
|
-
|
|
2433
|
+
ctor = vm.def.ctor,
|
|
2434
|
+
attachShadow = vm.renderer.attachShadow;
|
|
2435
|
+
var shadowRoot = attachShadow(elm, (_attachShadow = {}, _defineProperty(_attachShadow, KEY__SYNTHETIC_MODE, shadowMode === 1), _defineProperty(_attachShadow, "delegatesFocus", Boolean(ctor.delegatesFocus)), _defineProperty(_attachShadow, "mode", mode), _attachShadow));
|
|
2639
2436
|
vm.shadowRoot = shadowRoot;
|
|
2640
2437
|
associateVM(shadowRoot, vm);
|
|
2641
2438
|
|
|
@@ -2656,14 +2453,15 @@
|
|
|
2656
2453
|
LightningElement.prototype = {
|
|
2657
2454
|
constructor: LightningElement,
|
|
2658
2455
|
dispatchEvent: function dispatchEvent(event) {
|
|
2659
|
-
var
|
|
2660
|
-
|
|
2661
|
-
|
|
2662
|
-
return dispatchEvent
|
|
2456
|
+
var vm = getAssociatedVM(this);
|
|
2457
|
+
var elm = vm.elm,
|
|
2458
|
+
dispatchEvent = vm.renderer.dispatchEvent;
|
|
2459
|
+
return dispatchEvent(elm, event);
|
|
2663
2460
|
},
|
|
2664
2461
|
addEventListener: function addEventListener(type, listener, options) {
|
|
2665
2462
|
var vm = getAssociatedVM(this);
|
|
2666
|
-
var elm = vm.elm
|
|
2463
|
+
var elm = vm.elm,
|
|
2464
|
+
addEventListener = vm.renderer.addEventListener;
|
|
2667
2465
|
|
|
2668
2466
|
if (process.env.NODE_ENV !== 'production') {
|
|
2669
2467
|
var _vmBeingRendered2 = getVMBeingRendered();
|
|
@@ -2674,99 +2472,105 @@
|
|
|
2674
2472
|
}
|
|
2675
2473
|
|
|
2676
2474
|
var wrappedListener = getWrappedComponentsListener(vm, listener);
|
|
2677
|
-
addEventListener
|
|
2475
|
+
addEventListener(elm, type, wrappedListener, options);
|
|
2678
2476
|
},
|
|
2679
2477
|
removeEventListener: function removeEventListener(type, listener, options) {
|
|
2680
2478
|
var vm = getAssociatedVM(this);
|
|
2681
|
-
var elm = vm.elm
|
|
2479
|
+
var elm = vm.elm,
|
|
2480
|
+
removeEventListener = vm.renderer.removeEventListener;
|
|
2682
2481
|
var wrappedListener = getWrappedComponentsListener(vm, listener);
|
|
2683
|
-
removeEventListener
|
|
2482
|
+
removeEventListener(elm, type, wrappedListener, options);
|
|
2684
2483
|
},
|
|
2685
2484
|
hasAttribute: function hasAttribute(name) {
|
|
2686
|
-
var
|
|
2687
|
-
|
|
2688
|
-
|
|
2689
|
-
return !isNull(getAttribute
|
|
2485
|
+
var vm = getAssociatedVM(this);
|
|
2486
|
+
var elm = vm.elm,
|
|
2487
|
+
getAttribute = vm.renderer.getAttribute;
|
|
2488
|
+
return !isNull(getAttribute(elm, name));
|
|
2690
2489
|
},
|
|
2691
2490
|
hasAttributeNS: function hasAttributeNS(namespace, name) {
|
|
2692
|
-
var
|
|
2693
|
-
|
|
2694
|
-
|
|
2695
|
-
return !isNull(getAttribute
|
|
2491
|
+
var vm = getAssociatedVM(this);
|
|
2492
|
+
var elm = vm.elm,
|
|
2493
|
+
getAttribute = vm.renderer.getAttribute;
|
|
2494
|
+
return !isNull(getAttribute(elm, name, namespace));
|
|
2696
2495
|
},
|
|
2697
2496
|
removeAttribute: function removeAttribute(name) {
|
|
2698
|
-
var
|
|
2699
|
-
|
|
2700
|
-
|
|
2497
|
+
var vm = getAssociatedVM(this);
|
|
2498
|
+
var elm = vm.elm,
|
|
2499
|
+
removeAttribute = vm.renderer.removeAttribute;
|
|
2701
2500
|
unlockAttribute(elm, name);
|
|
2702
|
-
removeAttribute
|
|
2501
|
+
removeAttribute(elm, name);
|
|
2703
2502
|
lockAttribute();
|
|
2704
2503
|
},
|
|
2705
2504
|
removeAttributeNS: function removeAttributeNS(namespace, name) {
|
|
2706
|
-
var
|
|
2707
|
-
elm =
|
|
2505
|
+
var _getAssociatedVM = getAssociatedVM(this),
|
|
2506
|
+
elm = _getAssociatedVM.elm,
|
|
2507
|
+
removeAttribute = _getAssociatedVM.renderer.removeAttribute;
|
|
2708
2508
|
|
|
2709
2509
|
unlockAttribute(elm, name);
|
|
2710
|
-
removeAttribute
|
|
2510
|
+
removeAttribute(elm, name, namespace);
|
|
2711
2511
|
lockAttribute();
|
|
2712
2512
|
},
|
|
2713
2513
|
getAttribute: function getAttribute(name) {
|
|
2714
|
-
var
|
|
2715
|
-
|
|
2716
|
-
|
|
2717
|
-
return getAttribute
|
|
2514
|
+
var vm = getAssociatedVM(this);
|
|
2515
|
+
var elm = vm.elm;
|
|
2516
|
+
var getAttribute = vm.renderer.getAttribute;
|
|
2517
|
+
return getAttribute(elm, name);
|
|
2718
2518
|
},
|
|
2719
2519
|
getAttributeNS: function getAttributeNS(namespace, name) {
|
|
2720
|
-
var
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
return getAttribute
|
|
2520
|
+
var vm = getAssociatedVM(this);
|
|
2521
|
+
var elm = vm.elm;
|
|
2522
|
+
var getAttribute = vm.renderer.getAttribute;
|
|
2523
|
+
return getAttribute(elm, name, namespace);
|
|
2724
2524
|
},
|
|
2725
2525
|
setAttribute: function setAttribute(name, value) {
|
|
2726
2526
|
var vm = getAssociatedVM(this);
|
|
2727
|
-
var elm = vm.elm
|
|
2527
|
+
var elm = vm.elm,
|
|
2528
|
+
setAttribute = vm.renderer.setAttribute;
|
|
2728
2529
|
|
|
2729
2530
|
if (process.env.NODE_ENV !== 'production') {
|
|
2730
2531
|
assert.isFalse(isBeingConstructed(vm), "Failed to construct '".concat(getComponentTag(vm), "': The result must not have attributes."));
|
|
2731
2532
|
}
|
|
2732
2533
|
|
|
2733
2534
|
unlockAttribute(elm, name);
|
|
2734
|
-
setAttribute
|
|
2535
|
+
setAttribute(elm, name, value);
|
|
2735
2536
|
lockAttribute();
|
|
2736
2537
|
},
|
|
2737
2538
|
setAttributeNS: function setAttributeNS(namespace, name, value) {
|
|
2738
2539
|
var vm = getAssociatedVM(this);
|
|
2739
|
-
var elm = vm.elm
|
|
2540
|
+
var elm = vm.elm,
|
|
2541
|
+
setAttribute = vm.renderer.setAttribute;
|
|
2740
2542
|
|
|
2741
2543
|
if (process.env.NODE_ENV !== 'production') {
|
|
2742
2544
|
assert.isFalse(isBeingConstructed(vm), "Failed to construct '".concat(getComponentTag(vm), "': The result must not have attributes."));
|
|
2743
2545
|
}
|
|
2744
2546
|
|
|
2745
2547
|
unlockAttribute(elm, name);
|
|
2746
|
-
setAttribute
|
|
2548
|
+
setAttribute(elm, name, value, namespace);
|
|
2747
2549
|
lockAttribute();
|
|
2748
2550
|
},
|
|
2749
2551
|
getBoundingClientRect: function getBoundingClientRect() {
|
|
2750
2552
|
var vm = getAssociatedVM(this);
|
|
2751
|
-
var elm = vm.elm
|
|
2553
|
+
var elm = vm.elm,
|
|
2554
|
+
getBoundingClientRect = vm.renderer.getBoundingClientRect;
|
|
2752
2555
|
|
|
2753
2556
|
if (process.env.NODE_ENV !== 'production') {
|
|
2754
2557
|
warnIfInvokedDuringConstruction(vm, 'getBoundingClientRect()');
|
|
2755
2558
|
}
|
|
2756
2559
|
|
|
2757
|
-
return getBoundingClientRect
|
|
2560
|
+
return getBoundingClientRect(elm);
|
|
2758
2561
|
},
|
|
2759
2562
|
|
|
2760
2563
|
get isConnected() {
|
|
2761
|
-
var
|
|
2762
|
-
|
|
2763
|
-
|
|
2764
|
-
return isConnected
|
|
2564
|
+
var vm = getAssociatedVM(this);
|
|
2565
|
+
var elm = vm.elm,
|
|
2566
|
+
isConnected = vm.renderer.isConnected;
|
|
2567
|
+
return isConnected(elm);
|
|
2765
2568
|
},
|
|
2766
2569
|
|
|
2767
2570
|
get classList() {
|
|
2768
2571
|
var vm = getAssociatedVM(this);
|
|
2769
|
-
var elm = vm.elm
|
|
2572
|
+
var elm = vm.elm,
|
|
2573
|
+
getClassList = vm.renderer.getClassList;
|
|
2770
2574
|
|
|
2771
2575
|
if (process.env.NODE_ENV !== 'production') {
|
|
2772
2576
|
// TODO [#1290]: this still fails in dev but works in production, eventually, we should
|
|
@@ -2774,7 +2578,7 @@
|
|
|
2774
2578
|
assert.isFalse(isBeingConstructed(vm), "Failed to construct ".concat(vm, ": The result must not have attributes. Adding or tampering with classname in constructor is not allowed in a web component, use connectedCallback() instead."));
|
|
2775
2579
|
}
|
|
2776
2580
|
|
|
2777
|
-
return getClassList
|
|
2581
|
+
return getClassList(elm);
|
|
2778
2582
|
},
|
|
2779
2583
|
|
|
2780
2584
|
get template() {
|
|
@@ -2797,97 +2601,97 @@
|
|
|
2797
2601
|
return null;
|
|
2798
2602
|
},
|
|
2799
2603
|
|
|
2800
|
-
|
|
2604
|
+
get children() {
|
|
2801
2605
|
var vm = getAssociatedVM(this);
|
|
2802
|
-
|
|
2803
|
-
},
|
|
2804
|
-
toString: function toString() {
|
|
2805
|
-
var vm = getAssociatedVM(this);
|
|
2806
|
-
return "[object ".concat(vm.def.name, "]");
|
|
2807
|
-
}
|
|
2808
|
-
};
|
|
2809
|
-
var queryAndChildGetterDescriptors = create(null); // The reason we don't just call `import * as renderer from '../renderer'` here is that the bundle size
|
|
2810
|
-
// is smaller if we reference each function individually. Otherwise Rollup will create one big frozen
|
|
2811
|
-
// object representing the renderer, with a lot of methods we don't actually need.
|
|
2606
|
+
var renderer = vm.renderer;
|
|
2812
2607
|
|
|
2813
|
-
|
|
2608
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
2609
|
+
warnIfInvokedDuringConstruction(vm, 'children');
|
|
2610
|
+
}
|
|
2814
2611
|
|
|
2815
|
-
|
|
2816
|
-
|
|
2817
|
-
case 'children':
|
|
2818
|
-
return getChildren$1;
|
|
2612
|
+
return renderer.getChildren(vm.elm);
|
|
2613
|
+
},
|
|
2819
2614
|
|
|
2820
|
-
|
|
2821
|
-
|
|
2615
|
+
get childNodes() {
|
|
2616
|
+
var vm = getAssociatedVM(this);
|
|
2617
|
+
var renderer = vm.renderer;
|
|
2822
2618
|
|
|
2823
|
-
|
|
2824
|
-
|
|
2619
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
2620
|
+
warnIfInvokedDuringConstruction(vm, 'childNodes');
|
|
2621
|
+
}
|
|
2825
2622
|
|
|
2826
|
-
|
|
2827
|
-
|
|
2623
|
+
return renderer.getChildNodes(vm.elm);
|
|
2624
|
+
},
|
|
2828
2625
|
|
|
2829
|
-
|
|
2830
|
-
|
|
2626
|
+
get firstChild() {
|
|
2627
|
+
var vm = getAssociatedVM(this);
|
|
2628
|
+
var renderer = vm.renderer;
|
|
2831
2629
|
|
|
2832
|
-
|
|
2833
|
-
|
|
2834
|
-
|
|
2835
|
-
} // Generic passthrough for child getters on HTMLElement to the relevant Renderer APIs
|
|
2630
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
2631
|
+
warnIfInvokedDuringConstruction(vm, 'firstChild');
|
|
2632
|
+
}
|
|
2836
2633
|
|
|
2634
|
+
return renderer.getFirstChild(vm.elm);
|
|
2635
|
+
},
|
|
2837
2636
|
|
|
2838
|
-
|
|
2839
|
-
|
|
2840
|
-
|
|
2841
|
-
get: function get() {
|
|
2842
|
-
var vm = getAssociatedVM(this);
|
|
2843
|
-
var elm = vm.elm;
|
|
2637
|
+
get firstElementChild() {
|
|
2638
|
+
var vm = getAssociatedVM(this);
|
|
2639
|
+
var renderer = vm.renderer;
|
|
2844
2640
|
|
|
2845
|
-
|
|
2846
|
-
|
|
2847
|
-
|
|
2641
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
2642
|
+
warnIfInvokedDuringConstruction(vm, 'firstElementChild');
|
|
2643
|
+
}
|
|
2848
2644
|
|
|
2849
|
-
|
|
2850
|
-
|
|
2851
|
-
configurable: true,
|
|
2852
|
-
enumerable: true
|
|
2853
|
-
};
|
|
2854
|
-
};
|
|
2645
|
+
return renderer.getFirstElementChild(vm.elm);
|
|
2646
|
+
},
|
|
2855
2647
|
|
|
2856
|
-
|
|
2857
|
-
|
|
2858
|
-
|
|
2648
|
+
get lastChild() {
|
|
2649
|
+
var vm = getAssociatedVM(this);
|
|
2650
|
+
var renderer = vm.renderer;
|
|
2859
2651
|
|
|
2860
|
-
|
|
2652
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
2653
|
+
warnIfInvokedDuringConstruction(vm, 'lastChild');
|
|
2654
|
+
}
|
|
2861
2655
|
|
|
2862
|
-
|
|
2863
|
-
|
|
2864
|
-
case 'getElementsByClassName':
|
|
2865
|
-
return getElementsByClassName$1;
|
|
2656
|
+
return renderer.getLastChild(vm.elm);
|
|
2657
|
+
},
|
|
2866
2658
|
|
|
2867
|
-
|
|
2868
|
-
|
|
2659
|
+
get lastElementChild() {
|
|
2660
|
+
var vm = getAssociatedVM(this);
|
|
2661
|
+
var renderer = vm.renderer;
|
|
2869
2662
|
|
|
2870
|
-
|
|
2871
|
-
|
|
2663
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
2664
|
+
warnIfInvokedDuringConstruction(vm, 'lastElementChild');
|
|
2665
|
+
}
|
|
2872
2666
|
|
|
2873
|
-
|
|
2874
|
-
|
|
2875
|
-
}
|
|
2876
|
-
} // Generic passthrough for query APIs on HTMLElement to the relevant Renderer APIs
|
|
2667
|
+
return renderer.getLastElementChild(vm.elm);
|
|
2668
|
+
},
|
|
2877
2669
|
|
|
2670
|
+
render: function render() {
|
|
2671
|
+
var vm = getAssociatedVM(this);
|
|
2672
|
+
return vm.def.template;
|
|
2673
|
+
},
|
|
2674
|
+
toString: function toString() {
|
|
2675
|
+
var vm = getAssociatedVM(this);
|
|
2676
|
+
return "[object ".concat(vm.def.name, "]");
|
|
2677
|
+
}
|
|
2678
|
+
};
|
|
2679
|
+
var queryAndChildGetterDescriptors = create(null);
|
|
2680
|
+
var queryMethods = ['getElementsByClassName', 'getElementsByTagName', 'querySelector', 'querySelectorAll']; // Generic passthrough for query APIs on HTMLElement to the relevant Renderer APIs
|
|
2878
2681
|
|
|
2879
|
-
var
|
|
2880
|
-
var queryMethod = _queryMethods[
|
|
2682
|
+
var _loop = function _loop() {
|
|
2683
|
+
var queryMethod = _queryMethods[_i7];
|
|
2881
2684
|
queryAndChildGetterDescriptors[queryMethod] = {
|
|
2882
2685
|
value: function value(arg) {
|
|
2883
2686
|
var vm = getAssociatedVM(this);
|
|
2884
|
-
var elm = vm.elm
|
|
2687
|
+
var elm = vm.elm,
|
|
2688
|
+
renderer = vm.renderer;
|
|
2885
2689
|
|
|
2886
2690
|
if (process.env.NODE_ENV !== 'production') {
|
|
2887
2691
|
warnIfInvokedDuringConstruction(vm, "".concat(queryMethod, "()"));
|
|
2888
2692
|
}
|
|
2889
2693
|
|
|
2890
|
-
return
|
|
2694
|
+
return renderer[queryMethod](elm, arg);
|
|
2891
2695
|
},
|
|
2892
2696
|
configurable: true,
|
|
2893
2697
|
enumerable: true,
|
|
@@ -2895,8 +2699,8 @@
|
|
|
2895
2699
|
};
|
|
2896
2700
|
};
|
|
2897
2701
|
|
|
2898
|
-
for (var
|
|
2899
|
-
|
|
2702
|
+
for (var _i7 = 0, _queryMethods = queryMethods; _i7 < _queryMethods.length; _i7++) {
|
|
2703
|
+
_loop();
|
|
2900
2704
|
}
|
|
2901
2705
|
|
|
2902
2706
|
defineProperties(LightningElement.prototype, queryAndChildGetterDescriptors);
|
|
@@ -3418,8 +3222,8 @@
|
|
|
3418
3222
|
}
|
|
3419
3223
|
|
|
3420
3224
|
if (!isUndefined$1(fields)) {
|
|
3421
|
-
for (var
|
|
3422
|
-
var _fieldName2 = fields[
|
|
3225
|
+
for (var _i8 = 0, n = fields.length; _i8 < n; _i8++) {
|
|
3226
|
+
var _fieldName2 = fields[_i8];
|
|
3423
3227
|
descriptor = getOwnPropertyDescriptor$1(proto, _fieldName2);
|
|
3424
3228
|
|
|
3425
3229
|
if (process.env.NODE_ENV !== 'production') {
|
|
@@ -3475,9 +3279,9 @@
|
|
|
3475
3279
|
*/
|
|
3476
3280
|
|
|
3477
3281
|
|
|
3478
|
-
var warned = false;
|
|
3282
|
+
var warned = false; // @ts-ignore
|
|
3479
3283
|
|
|
3480
|
-
if (process.env.NODE_ENV
|
|
3284
|
+
if (process.env.NODE_ENV !== 'production' && typeof __karma__ !== 'undefined') {
|
|
3481
3285
|
// @ts-ignore
|
|
3482
3286
|
window.__lwcResetWarnedOnVersionMismatch = function () {
|
|
3483
3287
|
warned = false;
|
|
@@ -3722,8 +3526,8 @@
|
|
|
3722
3526
|
superObservedAttributes = _SuperClass$observedA === void 0 ? [] : _SuperClass$observedA;
|
|
3723
3527
|
var descriptors = create(null); // expose getters and setters for each public props on the new Element Bridge
|
|
3724
3528
|
|
|
3725
|
-
for (var
|
|
3726
|
-
var _propName = props[
|
|
3529
|
+
for (var _i9 = 0, len = props.length; _i9 < len; _i9 += 1) {
|
|
3530
|
+
var _propName = props[_i9];
|
|
3727
3531
|
attributeToPropMap[htmlPropertyToAttribute(_propName)] = _propName;
|
|
3728
3532
|
descriptors[_propName] = {
|
|
3729
3533
|
get: createGetter(_propName),
|
|
@@ -3734,8 +3538,8 @@
|
|
|
3734
3538
|
} // expose public methods as props on the new Element Bridge
|
|
3735
3539
|
|
|
3736
3540
|
|
|
3737
|
-
for (var
|
|
3738
|
-
var methodName = methods[
|
|
3541
|
+
for (var _i10 = 0, _len3 = methods.length; _i10 < _len3; _i10 += 1) {
|
|
3542
|
+
var methodName = methods[_i10];
|
|
3739
3543
|
descriptors[methodName] = {
|
|
3740
3544
|
value: createMethodCaller(methodName),
|
|
3741
3545
|
writable: true,
|
|
@@ -4323,12 +4127,15 @@
|
|
|
4323
4127
|
*/
|
|
4324
4128
|
|
|
4325
4129
|
|
|
4326
|
-
function getUpgradableConstructor(tagName) {
|
|
4327
|
-
|
|
4130
|
+
function getUpgradableConstructor(tagName, renderer) {
|
|
4131
|
+
var getCustomElement = renderer.getCustomElement,
|
|
4132
|
+
RendererHTMLElement = renderer.HTMLElementExported,
|
|
4133
|
+
defineCustomElement = renderer.defineCustomElement; // Should never get a tag with upper case letter at this point, the compiler should
|
|
4328
4134
|
// produce only tags with lowercase letters
|
|
4329
4135
|
// But, for backwards compatibility, we will lower case the tagName
|
|
4136
|
+
|
|
4330
4137
|
tagName = tagName.toLowerCase();
|
|
4331
|
-
var CE = getCustomElement
|
|
4138
|
+
var CE = getCustomElement(tagName);
|
|
4332
4139
|
|
|
4333
4140
|
if (!isUndefined$1(CE)) {
|
|
4334
4141
|
return CE;
|
|
@@ -4339,8 +4146,8 @@
|
|
|
4339
4146
|
*/
|
|
4340
4147
|
|
|
4341
4148
|
|
|
4342
|
-
CE = /*#__PURE__*/function (
|
|
4343
|
-
_inherits(LWCUpgradableElement,
|
|
4149
|
+
CE = /*#__PURE__*/function (_RendererHTMLElement) {
|
|
4150
|
+
_inherits(LWCUpgradableElement, _RendererHTMLElement);
|
|
4344
4151
|
|
|
4345
4152
|
var _super5 = _createSuper(LWCUpgradableElement);
|
|
4346
4153
|
|
|
@@ -4359,9 +4166,9 @@
|
|
|
4359
4166
|
}
|
|
4360
4167
|
|
|
4361
4168
|
return _createClass(LWCUpgradableElement);
|
|
4362
|
-
}(
|
|
4169
|
+
}(RendererHTMLElement);
|
|
4363
4170
|
|
|
4364
|
-
defineCustomElement
|
|
4171
|
+
defineCustomElement(tagName, CE);
|
|
4365
4172
|
return CE;
|
|
4366
4173
|
}
|
|
4367
4174
|
/*
|
|
@@ -4394,7 +4201,7 @@
|
|
|
4394
4201
|
|
|
4395
4202
|
var ColonCharCode = 58;
|
|
4396
4203
|
|
|
4397
|
-
function patchAttributes(oldVnode, vnode) {
|
|
4204
|
+
function patchAttributes(oldVnode, vnode, renderer) {
|
|
4398
4205
|
var attrs = vnode.data.attrs;
|
|
4399
4206
|
|
|
4400
4207
|
if (isUndefined$1(attrs)) {
|
|
@@ -4408,6 +4215,8 @@
|
|
|
4408
4215
|
}
|
|
4409
4216
|
|
|
4410
4217
|
var elm = vnode.elm;
|
|
4218
|
+
var setAttribute = renderer.setAttribute,
|
|
4219
|
+
removeAttribute = renderer.removeAttribute;
|
|
4411
4220
|
|
|
4412
4221
|
for (var key in attrs) {
|
|
4413
4222
|
var cur = attrs[key];
|
|
@@ -4418,14 +4227,14 @@
|
|
|
4418
4227
|
|
|
4419
4228
|
if (StringCharCodeAt.call(key, 3) === ColonCharCode) {
|
|
4420
4229
|
// Assume xml namespace
|
|
4421
|
-
setAttribute
|
|
4230
|
+
setAttribute(elm, key, cur, XML_NAMESPACE);
|
|
4422
4231
|
} else if (StringCharCodeAt.call(key, 5) === ColonCharCode) {
|
|
4423
4232
|
// Assume xlink namespace
|
|
4424
|
-
setAttribute
|
|
4233
|
+
setAttribute(elm, key, cur, XLINK_NAMESPACE);
|
|
4425
4234
|
} else if (isNull(cur) || isUndefined$1(cur)) {
|
|
4426
|
-
removeAttribute
|
|
4235
|
+
removeAttribute(elm, key);
|
|
4427
4236
|
} else {
|
|
4428
|
-
setAttribute
|
|
4237
|
+
setAttribute(elm, key, cur);
|
|
4429
4238
|
}
|
|
4430
4239
|
|
|
4431
4240
|
lockAttribute();
|
|
@@ -4446,7 +4255,7 @@
|
|
|
4446
4255
|
return sel === 'input' && (key === 'value' || key === 'checked');
|
|
4447
4256
|
}
|
|
4448
4257
|
|
|
4449
|
-
function patchProps(oldVnode, vnode) {
|
|
4258
|
+
function patchProps(oldVnode, vnode, renderer) {
|
|
4450
4259
|
var props = vnode.data.props;
|
|
4451
4260
|
|
|
4452
4261
|
if (isUndefined$1(props)) {
|
|
@@ -4462,13 +4271,15 @@
|
|
|
4462
4271
|
var isFirstPatch = isNull(oldVnode);
|
|
4463
4272
|
var elm = vnode.elm,
|
|
4464
4273
|
sel = vnode.sel;
|
|
4274
|
+
var getProperty = renderer.getProperty,
|
|
4275
|
+
setProperty = renderer.setProperty;
|
|
4465
4276
|
|
|
4466
4277
|
for (var key in props) {
|
|
4467
4278
|
var cur = props[key]; // Set the property if it's the first time is is patched or if the previous property is
|
|
4468
4279
|
// different than the one previously set.
|
|
4469
4280
|
|
|
4470
|
-
if (isFirstPatch || cur !== (isLiveBindingProp(sel, key) ? getProperty
|
|
4471
|
-
setProperty
|
|
4281
|
+
if (isFirstPatch || cur !== (isLiveBindingProp(sel, key) ? getProperty(elm, key) : oldProps[key])) {
|
|
4282
|
+
setProperty(elm, key, cur);
|
|
4472
4283
|
}
|
|
4473
4284
|
}
|
|
4474
4285
|
}
|
|
@@ -4525,7 +4336,7 @@
|
|
|
4525
4336
|
return map;
|
|
4526
4337
|
}
|
|
4527
4338
|
|
|
4528
|
-
function patchClassAttribute(oldVnode, vnode) {
|
|
4339
|
+
function patchClassAttribute(oldVnode, vnode, renderer) {
|
|
4529
4340
|
var elm = vnode.elm,
|
|
4530
4341
|
newClass = vnode.data.className;
|
|
4531
4342
|
var oldClass = isNull(oldVnode) ? undefined : oldVnode.data.className;
|
|
@@ -4534,7 +4345,8 @@
|
|
|
4534
4345
|
return;
|
|
4535
4346
|
}
|
|
4536
4347
|
|
|
4537
|
-
var
|
|
4348
|
+
var getClassList = renderer.getClassList;
|
|
4349
|
+
var classList = getClassList(elm);
|
|
4538
4350
|
var newClassMap = getMapFromClassName(newClass);
|
|
4539
4351
|
var oldClassMap = getMapFromClassName(oldClass);
|
|
4540
4352
|
var name;
|
|
@@ -4561,7 +4373,7 @@
|
|
|
4561
4373
|
// The style property is a string when defined via an expression in the template.
|
|
4562
4374
|
|
|
4563
4375
|
|
|
4564
|
-
function patchStyleAttribute(oldVnode, vnode) {
|
|
4376
|
+
function patchStyleAttribute(oldVnode, vnode, renderer) {
|
|
4565
4377
|
var elm = vnode.elm,
|
|
4566
4378
|
newStyle = vnode.data.style;
|
|
4567
4379
|
var oldStyle = isNull(oldVnode) ? undefined : oldVnode.data.style;
|
|
@@ -4570,10 +4382,13 @@
|
|
|
4570
4382
|
return;
|
|
4571
4383
|
}
|
|
4572
4384
|
|
|
4385
|
+
var setAttribute = renderer.setAttribute,
|
|
4386
|
+
removeAttribute = renderer.removeAttribute;
|
|
4387
|
+
|
|
4573
4388
|
if (!isString(newStyle) || newStyle === '') {
|
|
4574
|
-
removeAttribute
|
|
4389
|
+
removeAttribute(elm, 'style');
|
|
4575
4390
|
} else {
|
|
4576
|
-
setAttribute
|
|
4391
|
+
setAttribute(elm, 'style', newStyle);
|
|
4577
4392
|
}
|
|
4578
4393
|
}
|
|
4579
4394
|
/*
|
|
@@ -4584,7 +4399,7 @@
|
|
|
4584
4399
|
*/
|
|
4585
4400
|
|
|
4586
4401
|
|
|
4587
|
-
function applyEventListeners(vnode) {
|
|
4402
|
+
function applyEventListeners(vnode, renderer) {
|
|
4588
4403
|
var elm = vnode.elm,
|
|
4589
4404
|
on = vnode.data.on;
|
|
4590
4405
|
|
|
@@ -4592,9 +4407,11 @@
|
|
|
4592
4407
|
return;
|
|
4593
4408
|
}
|
|
4594
4409
|
|
|
4410
|
+
var addEventListener = renderer.addEventListener;
|
|
4411
|
+
|
|
4595
4412
|
for (var name in on) {
|
|
4596
4413
|
var handler = on[name];
|
|
4597
|
-
addEventListener
|
|
4414
|
+
addEventListener(elm, name, handler);
|
|
4598
4415
|
}
|
|
4599
4416
|
}
|
|
4600
4417
|
/*
|
|
@@ -4608,7 +4425,7 @@
|
|
|
4608
4425
|
// different classnames properties individually instead of via a string.
|
|
4609
4426
|
|
|
4610
4427
|
|
|
4611
|
-
function applyStaticClassAttribute(vnode) {
|
|
4428
|
+
function applyStaticClassAttribute(vnode, renderer) {
|
|
4612
4429
|
var elm = vnode.elm,
|
|
4613
4430
|
classMap = vnode.data.classMap;
|
|
4614
4431
|
|
|
@@ -4616,7 +4433,8 @@
|
|
|
4616
4433
|
return;
|
|
4617
4434
|
}
|
|
4618
4435
|
|
|
4619
|
-
var
|
|
4436
|
+
var getClassList = renderer.getClassList;
|
|
4437
|
+
var classList = getClassList(elm);
|
|
4620
4438
|
|
|
4621
4439
|
for (var name in classMap) {
|
|
4622
4440
|
classList.add(name);
|
|
@@ -4633,7 +4451,7 @@
|
|
|
4633
4451
|
// different style properties individually instead of via a string.
|
|
4634
4452
|
|
|
4635
4453
|
|
|
4636
|
-
function applyStaticStyleAttribute(vnode) {
|
|
4454
|
+
function applyStaticStyleAttribute(vnode, renderer) {
|
|
4637
4455
|
var elm = vnode.elm,
|
|
4638
4456
|
styleDecls = vnode.data.styleDecls;
|
|
4639
4457
|
|
|
@@ -4641,13 +4459,15 @@
|
|
|
4641
4459
|
return;
|
|
4642
4460
|
}
|
|
4643
4461
|
|
|
4644
|
-
|
|
4645
|
-
|
|
4462
|
+
var setCSSStyleProperty = renderer.setCSSStyleProperty;
|
|
4463
|
+
|
|
4464
|
+
for (var _i11 = 0; _i11 < styleDecls.length; _i11++) {
|
|
4465
|
+
var _styleDecls$_i = _slicedToArray(styleDecls[_i11], 3),
|
|
4646
4466
|
prop = _styleDecls$_i[0],
|
|
4647
4467
|
value = _styleDecls$_i[1],
|
|
4648
4468
|
important = _styleDecls$_i[2];
|
|
4649
4469
|
|
|
4650
|
-
setCSSStyleProperty
|
|
4470
|
+
setCSSStyleProperty(elm, prop, value, important);
|
|
4651
4471
|
}
|
|
4652
4472
|
}
|
|
4653
4473
|
/*
|
|
@@ -4658,15 +4478,17 @@
|
|
|
4658
4478
|
*/
|
|
4659
4479
|
|
|
4660
4480
|
|
|
4661
|
-
function patchChildren(c1, c2, parent) {
|
|
4481
|
+
function patchChildren(c1, c2, parent, renderer) {
|
|
4662
4482
|
if (hasDynamicChildren(c2)) {
|
|
4663
|
-
updateDynamicChildren(c1, c2, parent);
|
|
4483
|
+
updateDynamicChildren(c1, c2, parent, renderer);
|
|
4664
4484
|
} else {
|
|
4665
|
-
updateStaticChildren(c1, c2, parent);
|
|
4485
|
+
updateStaticChildren(c1, c2, parent, renderer);
|
|
4666
4486
|
}
|
|
4667
4487
|
}
|
|
4668
4488
|
|
|
4669
|
-
function patch(n1, n2) {
|
|
4489
|
+
function patch(n1, n2, renderer) {
|
|
4490
|
+
var _a, _b;
|
|
4491
|
+
|
|
4670
4492
|
if (n1 === n2) {
|
|
4671
4493
|
return;
|
|
4672
4494
|
}
|
|
@@ -4687,112 +4509,123 @@
|
|
|
4687
4509
|
case 0
|
|
4688
4510
|
/* Text */
|
|
4689
4511
|
:
|
|
4690
|
-
|
|
4512
|
+
// VText has no special capability, fallback to the owner's renderer
|
|
4513
|
+
patchText(n1, n2, renderer);
|
|
4691
4514
|
break;
|
|
4692
4515
|
|
|
4693
4516
|
case 1
|
|
4694
4517
|
/* Comment */
|
|
4695
4518
|
:
|
|
4696
|
-
|
|
4519
|
+
// VComment has no special capability, fallback to the owner's renderer
|
|
4520
|
+
patchComment(n1, n2, renderer);
|
|
4697
4521
|
break;
|
|
4698
4522
|
|
|
4699
4523
|
case 2
|
|
4700
4524
|
/* Element */
|
|
4701
4525
|
:
|
|
4702
|
-
patchElement(n1, n2);
|
|
4526
|
+
patchElement(n1, n2, (_a = n2.data.renderer) !== null && _a !== void 0 ? _a : renderer);
|
|
4703
4527
|
break;
|
|
4704
4528
|
|
|
4705
4529
|
case 3
|
|
4706
4530
|
/* CustomElement */
|
|
4707
4531
|
:
|
|
4708
|
-
patchCustomElement(n1, n2);
|
|
4532
|
+
patchCustomElement(n1, n2, (_b = n2.data.renderer) !== null && _b !== void 0 ? _b : renderer);
|
|
4709
4533
|
break;
|
|
4710
4534
|
}
|
|
4711
4535
|
}
|
|
4712
4536
|
|
|
4713
|
-
function mount(node, parent, anchor) {
|
|
4537
|
+
function mount(node, parent, renderer, anchor) {
|
|
4538
|
+
var _a, _b;
|
|
4539
|
+
|
|
4714
4540
|
switch (node.type) {
|
|
4715
4541
|
case 0
|
|
4716
4542
|
/* Text */
|
|
4717
4543
|
:
|
|
4718
|
-
|
|
4544
|
+
// VText has no special capability, fallback to the owner's renderer
|
|
4545
|
+
mountText(node, parent, anchor, renderer);
|
|
4719
4546
|
break;
|
|
4720
4547
|
|
|
4721
4548
|
case 1
|
|
4722
4549
|
/* Comment */
|
|
4723
4550
|
:
|
|
4724
|
-
|
|
4551
|
+
// VComment has no special capability, fallback to the owner's renderer
|
|
4552
|
+
mountComment(node, parent, anchor, renderer);
|
|
4725
4553
|
break;
|
|
4726
4554
|
|
|
4727
4555
|
case 2
|
|
4728
4556
|
/* Element */
|
|
4729
4557
|
:
|
|
4730
|
-
|
|
4558
|
+
// If the vnode data has a renderer override use it, else fallback to owner's renderer
|
|
4559
|
+
mountElement(node, parent, anchor, (_a = node.data.renderer) !== null && _a !== void 0 ? _a : renderer);
|
|
4731
4560
|
break;
|
|
4732
4561
|
|
|
4733
4562
|
case 3
|
|
4734
4563
|
/* CustomElement */
|
|
4735
4564
|
:
|
|
4736
|
-
|
|
4565
|
+
// If the vnode data has a renderer override use it, else fallback to owner's renderer
|
|
4566
|
+
mountCustomElement(node, parent, anchor, (_b = node.data.renderer) !== null && _b !== void 0 ? _b : renderer);
|
|
4737
4567
|
break;
|
|
4738
4568
|
}
|
|
4739
4569
|
}
|
|
4740
4570
|
|
|
4741
|
-
function patchText(n1, n2) {
|
|
4571
|
+
function patchText(n1, n2, renderer) {
|
|
4742
4572
|
n2.elm = n1.elm;
|
|
4743
4573
|
|
|
4744
4574
|
if (n2.text !== n1.text) {
|
|
4745
|
-
updateTextContent(n2);
|
|
4575
|
+
updateTextContent(n2, renderer);
|
|
4746
4576
|
}
|
|
4747
4577
|
}
|
|
4748
4578
|
|
|
4749
|
-
function mountText(
|
|
4750
|
-
var owner =
|
|
4751
|
-
var
|
|
4752
|
-
|
|
4753
|
-
|
|
4579
|
+
function mountText(vnode, parent, anchor, renderer) {
|
|
4580
|
+
var owner = vnode.owner;
|
|
4581
|
+
var createText = renderer.createText;
|
|
4582
|
+
var textNode = vnode.elm = createText(vnode.text);
|
|
4583
|
+
linkNodeToShadow(textNode, owner, renderer);
|
|
4584
|
+
insertNode(textNode, parent, anchor, renderer);
|
|
4754
4585
|
}
|
|
4755
4586
|
|
|
4756
|
-
function patchComment(n1, n2) {
|
|
4587
|
+
function patchComment(n1, n2, renderer) {
|
|
4757
4588
|
n2.elm = n1.elm; // FIXME: Comment nodes should be static, we shouldn't need to diff them together. However
|
|
4758
4589
|
// it is the case today.
|
|
4759
4590
|
|
|
4760
4591
|
if (n2.text !== n1.text) {
|
|
4761
|
-
updateTextContent(n2);
|
|
4592
|
+
updateTextContent(n2, renderer);
|
|
4762
4593
|
}
|
|
4763
4594
|
}
|
|
4764
4595
|
|
|
4765
|
-
function mountComment(
|
|
4766
|
-
var owner =
|
|
4767
|
-
var
|
|
4768
|
-
|
|
4769
|
-
|
|
4596
|
+
function mountComment(vnode, parent, anchor, renderer) {
|
|
4597
|
+
var owner = vnode.owner;
|
|
4598
|
+
var createComment = renderer.createComment;
|
|
4599
|
+
var commentNode = vnode.elm = createComment(vnode.text);
|
|
4600
|
+
linkNodeToShadow(commentNode, owner, renderer);
|
|
4601
|
+
insertNode(commentNode, parent, anchor, renderer);
|
|
4770
4602
|
}
|
|
4771
4603
|
|
|
4772
|
-
function mountElement(vnode, parent, anchor) {
|
|
4604
|
+
function mountElement(vnode, parent, anchor, renderer) {
|
|
4773
4605
|
var sel = vnode.sel,
|
|
4774
4606
|
owner = vnode.owner,
|
|
4775
4607
|
svg = vnode.data.svg;
|
|
4608
|
+
var createElement = renderer.createElement;
|
|
4776
4609
|
var namespace = isTrue(svg) ? SVG_NAMESPACE : undefined;
|
|
4777
|
-
var elm = createElement
|
|
4778
|
-
linkNodeToShadow(elm, owner);
|
|
4779
|
-
fallbackElmHook(elm, vnode);
|
|
4610
|
+
var elm = createElement(sel, namespace);
|
|
4611
|
+
linkNodeToShadow(elm, owner, renderer);
|
|
4612
|
+
fallbackElmHook(elm, vnode, renderer);
|
|
4780
4613
|
vnode.elm = elm;
|
|
4781
|
-
patchElementPropsAndAttrs$1(null, vnode);
|
|
4782
|
-
insertNode(elm, parent, anchor);
|
|
4783
|
-
mountVNodes(vnode.children, elm, null);
|
|
4614
|
+
patchElementPropsAndAttrs$1(null, vnode, renderer);
|
|
4615
|
+
insertNode(elm, parent, anchor, renderer);
|
|
4616
|
+
mountVNodes(vnode.children, elm, renderer, null);
|
|
4784
4617
|
}
|
|
4785
4618
|
|
|
4786
|
-
function patchElement(n1, n2) {
|
|
4619
|
+
function patchElement(n1, n2, renderer) {
|
|
4787
4620
|
var elm = n2.elm = n1.elm;
|
|
4788
|
-
patchElementPropsAndAttrs$1(n1, n2);
|
|
4789
|
-
patchChildren(n1.children, n2.children, elm);
|
|
4621
|
+
patchElementPropsAndAttrs$1(n1, n2, renderer);
|
|
4622
|
+
patchChildren(n1.children, n2.children, elm, renderer);
|
|
4790
4623
|
}
|
|
4791
4624
|
|
|
4792
|
-
function mountCustomElement(vnode, parent, anchor) {
|
|
4625
|
+
function mountCustomElement(vnode, parent, anchor, renderer) {
|
|
4793
4626
|
var sel = vnode.sel,
|
|
4794
4627
|
owner = vnode.owner;
|
|
4795
|
-
var UpgradableConstructor = getUpgradableConstructor(sel);
|
|
4628
|
+
var UpgradableConstructor = getUpgradableConstructor(sel, renderer);
|
|
4796
4629
|
/**
|
|
4797
4630
|
* Note: if the upgradable constructor does not expect, or throw when we new it
|
|
4798
4631
|
* with a callback as the first argument, we could implement a more advanced
|
|
@@ -4803,9 +4636,9 @@
|
|
|
4803
4636
|
var vm;
|
|
4804
4637
|
var elm = new UpgradableConstructor(function (elm) {
|
|
4805
4638
|
// the custom element from the registry is expecting an upgrade callback
|
|
4806
|
-
vm = createViewModelHook(elm, vnode);
|
|
4639
|
+
vm = createViewModelHook(elm, vnode, renderer);
|
|
4807
4640
|
});
|
|
4808
|
-
linkNodeToShadow(elm, owner);
|
|
4641
|
+
linkNodeToShadow(elm, owner, renderer);
|
|
4809
4642
|
vnode.elm = elm;
|
|
4810
4643
|
vnode.vm = vm;
|
|
4811
4644
|
|
|
@@ -4815,8 +4648,8 @@
|
|
|
4815
4648
|
throw new TypeError("Incorrect Component Constructor");
|
|
4816
4649
|
}
|
|
4817
4650
|
|
|
4818
|
-
patchElementPropsAndAttrs$1(null, vnode);
|
|
4819
|
-
insertNode(elm, parent, anchor);
|
|
4651
|
+
patchElementPropsAndAttrs$1(null, vnode, renderer);
|
|
4652
|
+
insertNode(elm, parent, anchor, renderer);
|
|
4820
4653
|
|
|
4821
4654
|
if (vm) {
|
|
4822
4655
|
if (process.env.NODE_ENV !== 'production') {
|
|
@@ -4828,17 +4661,17 @@
|
|
|
4828
4661
|
runConnectedCallback(vm);
|
|
4829
4662
|
}
|
|
4830
4663
|
|
|
4831
|
-
mountVNodes(vnode.children, elm, null);
|
|
4664
|
+
mountVNodes(vnode.children, elm, renderer, null);
|
|
4832
4665
|
|
|
4833
4666
|
if (vm) {
|
|
4834
4667
|
appendVM(vm);
|
|
4835
4668
|
}
|
|
4836
4669
|
}
|
|
4837
4670
|
|
|
4838
|
-
function patchCustomElement(n1, n2) {
|
|
4671
|
+
function patchCustomElement(n1, n2, renderer) {
|
|
4839
4672
|
var elm = n2.elm = n1.elm;
|
|
4840
4673
|
var vm = n2.vm = n1.vm;
|
|
4841
|
-
patchElementPropsAndAttrs$1(n1, n2);
|
|
4674
|
+
patchElementPropsAndAttrs$1(n1, n2, renderer);
|
|
4842
4675
|
|
|
4843
4676
|
if (!isUndefined$1(vm)) {
|
|
4844
4677
|
// in fallback mode, the allocation will always set children to
|
|
@@ -4848,7 +4681,7 @@
|
|
|
4848
4681
|
// will happen, but in native, it does allocate the light dom
|
|
4849
4682
|
|
|
4850
4683
|
|
|
4851
|
-
patchChildren(n1.children, n2.children, elm);
|
|
4684
|
+
patchChildren(n1.children, n2.children, elm, renderer);
|
|
4852
4685
|
|
|
4853
4686
|
if (!isUndefined$1(vm)) {
|
|
4854
4687
|
// this will probably update the shadowRoot, but only if the vm is in a dirty state
|
|
@@ -4857,38 +4690,45 @@
|
|
|
4857
4690
|
}
|
|
4858
4691
|
}
|
|
4859
4692
|
|
|
4860
|
-
function mountVNodes(vnodes, parent, anchor) {
|
|
4861
|
-
var start = arguments.length >
|
|
4862
|
-
var end = arguments.length >
|
|
4693
|
+
function mountVNodes(vnodes, parent, renderer, anchor) {
|
|
4694
|
+
var start = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
|
4695
|
+
var end = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : vnodes.length;
|
|
4863
4696
|
|
|
4864
4697
|
for (; start < end; ++start) {
|
|
4865
4698
|
var vnode = vnodes[start];
|
|
4866
4699
|
|
|
4867
4700
|
if (isVNode(vnode)) {
|
|
4868
|
-
mount(vnode, parent, anchor);
|
|
4701
|
+
mount(vnode, parent, renderer, anchor);
|
|
4869
4702
|
}
|
|
4870
4703
|
}
|
|
4871
4704
|
}
|
|
4872
4705
|
|
|
4873
|
-
function unmount(vnode, parent) {
|
|
4874
|
-
var doRemove = arguments.length >
|
|
4706
|
+
function unmount(vnode, parent, renderer) {
|
|
4707
|
+
var doRemove = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
4875
4708
|
var type = vnode.type,
|
|
4876
4709
|
elm = vnode.elm,
|
|
4877
4710
|
sel = vnode.sel; // When unmounting a VNode subtree not all the elements have to removed from the DOM. The
|
|
4878
4711
|
// subtree root, is the only element worth unmounting from the subtree.
|
|
4879
4712
|
|
|
4880
4713
|
if (doRemove) {
|
|
4881
|
-
|
|
4714
|
+
// The vnode might or might not have a data.renderer associated to it
|
|
4715
|
+
// but the removal used here is from the owner instead.
|
|
4716
|
+
removeNode(elm, parent, renderer);
|
|
4882
4717
|
}
|
|
4883
4718
|
|
|
4884
|
-
var removeChildren = sel === 'slot'; // slot content is removed to trigger slotchange event when removing slot
|
|
4885
|
-
|
|
4886
4719
|
switch (type) {
|
|
4887
4720
|
case 2
|
|
4888
4721
|
/* Element */
|
|
4889
4722
|
:
|
|
4890
|
-
|
|
4891
|
-
|
|
4723
|
+
{
|
|
4724
|
+
// Slot content is removed to trigger slotchange event when removing slot.
|
|
4725
|
+
// Only required for synthetic shadow.
|
|
4726
|
+
var shouldRemoveChildren = sel === 'slot' && vnode.owner.shadowMode === 1
|
|
4727
|
+
/* Synthetic */
|
|
4728
|
+
;
|
|
4729
|
+
unmountVNodes(vnode.children, elm, renderer, shouldRemoveChildren);
|
|
4730
|
+
break;
|
|
4731
|
+
}
|
|
4892
4732
|
|
|
4893
4733
|
case 3
|
|
4894
4734
|
/* CustomElement */
|
|
@@ -4904,16 +4744,16 @@
|
|
|
4904
4744
|
}
|
|
4905
4745
|
}
|
|
4906
4746
|
|
|
4907
|
-
function unmountVNodes(vnodes, parent) {
|
|
4908
|
-
var doRemove = arguments.length >
|
|
4909
|
-
var start = arguments.length >
|
|
4910
|
-
var end = arguments.length >
|
|
4747
|
+
function unmountVNodes(vnodes, parent, renderer) {
|
|
4748
|
+
var doRemove = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
4749
|
+
var start = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
|
4750
|
+
var end = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : vnodes.length;
|
|
4911
4751
|
|
|
4912
4752
|
for (; start < end; ++start) {
|
|
4913
4753
|
var ch = vnodes[start];
|
|
4914
4754
|
|
|
4915
4755
|
if (isVNode(ch)) {
|
|
4916
|
-
unmount(ch, parent, doRemove);
|
|
4756
|
+
unmount(ch, parent, renderer, doRemove);
|
|
4917
4757
|
}
|
|
4918
4758
|
}
|
|
4919
4759
|
}
|
|
@@ -4931,22 +4771,26 @@
|
|
|
4931
4771
|
} // Set the scope token class for *.scoped.css styles
|
|
4932
4772
|
|
|
4933
4773
|
|
|
4934
|
-
function setScopeTokenClassIfNecessary(elm, owner) {
|
|
4774
|
+
function setScopeTokenClassIfNecessary(elm, owner, renderer) {
|
|
4935
4775
|
var cmpTemplate = owner.cmpTemplate,
|
|
4936
4776
|
context = owner.context;
|
|
4777
|
+
var getClassList = renderer.getClassList;
|
|
4937
4778
|
var token = cmpTemplate === null || cmpTemplate === void 0 ? void 0 : cmpTemplate.stylesheetToken;
|
|
4938
4779
|
|
|
4939
4780
|
if (!isUndefined$1(token) && context.hasScopedStyles) {
|
|
4940
|
-
|
|
4781
|
+
// TODO [#2762]: this dot notation with add is probably problematic
|
|
4782
|
+
// probably we should have a renderer api for just the add operation
|
|
4783
|
+
getClassList(elm).add(token);
|
|
4941
4784
|
}
|
|
4942
4785
|
}
|
|
4943
4786
|
|
|
4944
|
-
function linkNodeToShadow(elm, owner) {
|
|
4787
|
+
function linkNodeToShadow(elm, owner, renderer) {
|
|
4945
4788
|
var renderRoot = owner.renderRoot,
|
|
4946
4789
|
renderMode = owner.renderMode,
|
|
4947
|
-
shadowMode = owner.shadowMode;
|
|
4790
|
+
shadowMode = owner.shadowMode;
|
|
4791
|
+
var isSyntheticShadowDefined = renderer.isSyntheticShadowDefined; // TODO [#1164]: this should eventually be done by the polyfill directly
|
|
4948
4792
|
|
|
4949
|
-
if (isSyntheticShadowDefined
|
|
4793
|
+
if (isSyntheticShadowDefined) {
|
|
4950
4794
|
if (shadowMode === 1
|
|
4951
4795
|
/* Synthetic */
|
|
4952
4796
|
|| renderMode === 0
|
|
@@ -4957,63 +4801,64 @@
|
|
|
4957
4801
|
}
|
|
4958
4802
|
}
|
|
4959
4803
|
|
|
4960
|
-
function updateTextContent(vnode) {
|
|
4804
|
+
function updateTextContent(vnode, renderer) {
|
|
4961
4805
|
var elm = vnode.elm,
|
|
4962
4806
|
text = vnode.text;
|
|
4807
|
+
var setText = renderer.setText;
|
|
4963
4808
|
|
|
4964
4809
|
if (process.env.NODE_ENV !== 'production') {
|
|
4965
4810
|
unlockDomMutation();
|
|
4966
4811
|
}
|
|
4967
4812
|
|
|
4968
|
-
setText
|
|
4813
|
+
setText(elm, text);
|
|
4969
4814
|
|
|
4970
4815
|
if (process.env.NODE_ENV !== 'production') {
|
|
4971
4816
|
lockDomMutation();
|
|
4972
4817
|
}
|
|
4973
4818
|
}
|
|
4974
4819
|
|
|
4975
|
-
function insertNode(node, parent, anchor) {
|
|
4820
|
+
function insertNode(node, parent, anchor, renderer) {
|
|
4976
4821
|
if (process.env.NODE_ENV !== 'production') {
|
|
4977
4822
|
unlockDomMutation();
|
|
4978
4823
|
}
|
|
4979
4824
|
|
|
4980
|
-
insert
|
|
4825
|
+
renderer.insert(node, parent, anchor);
|
|
4981
4826
|
|
|
4982
4827
|
if (process.env.NODE_ENV !== 'production') {
|
|
4983
4828
|
lockDomMutation();
|
|
4984
4829
|
}
|
|
4985
4830
|
}
|
|
4986
4831
|
|
|
4987
|
-
function removeNode(node, parent) {
|
|
4832
|
+
function removeNode(node, parent, renderer) {
|
|
4988
4833
|
if (process.env.NODE_ENV !== 'production') {
|
|
4989
4834
|
unlockDomMutation();
|
|
4990
4835
|
}
|
|
4991
4836
|
|
|
4992
|
-
remove
|
|
4837
|
+
renderer.remove(node, parent);
|
|
4993
4838
|
|
|
4994
4839
|
if (process.env.NODE_ENV !== 'production') {
|
|
4995
4840
|
lockDomMutation();
|
|
4996
4841
|
}
|
|
4997
4842
|
}
|
|
4998
4843
|
|
|
4999
|
-
function patchElementPropsAndAttrs$1(oldVnode, vnode) {
|
|
4844
|
+
function patchElementPropsAndAttrs$1(oldVnode, vnode, renderer) {
|
|
5000
4845
|
if (isNull(oldVnode)) {
|
|
5001
|
-
applyEventListeners(vnode);
|
|
5002
|
-
applyStaticClassAttribute(vnode);
|
|
5003
|
-
applyStaticStyleAttribute(vnode);
|
|
4846
|
+
applyEventListeners(vnode, renderer);
|
|
4847
|
+
applyStaticClassAttribute(vnode, renderer);
|
|
4848
|
+
applyStaticStyleAttribute(vnode, renderer);
|
|
5004
4849
|
} // Attrs need to be applied to element before props IE11 will wipe out value on radio inputs if
|
|
5005
4850
|
// value is set before type=radio.
|
|
5006
4851
|
|
|
5007
4852
|
|
|
5008
|
-
patchClassAttribute(oldVnode, vnode);
|
|
5009
|
-
patchStyleAttribute(oldVnode, vnode);
|
|
5010
|
-
patchAttributes(oldVnode, vnode);
|
|
5011
|
-
patchProps(oldVnode, vnode);
|
|
4853
|
+
patchClassAttribute(oldVnode, vnode, renderer);
|
|
4854
|
+
patchStyleAttribute(oldVnode, vnode, renderer);
|
|
4855
|
+
patchAttributes(oldVnode, vnode, renderer);
|
|
4856
|
+
patchProps(oldVnode, vnode, renderer);
|
|
5012
4857
|
}
|
|
5013
4858
|
|
|
5014
|
-
function fallbackElmHook(elm, vnode) {
|
|
4859
|
+
function fallbackElmHook(elm, vnode, renderer) {
|
|
5015
4860
|
var owner = vnode.owner;
|
|
5016
|
-
setScopeTokenClassIfNecessary(elm, owner);
|
|
4861
|
+
setScopeTokenClassIfNecessary(elm, owner, renderer);
|
|
5017
4862
|
|
|
5018
4863
|
if (owner.shadowMode === 1
|
|
5019
4864
|
/* Synthetic */
|
|
@@ -5080,7 +4925,7 @@
|
|
|
5080
4925
|
}
|
|
5081
4926
|
}
|
|
5082
4927
|
|
|
5083
|
-
function createViewModelHook(elm, vnode) {
|
|
4928
|
+
function createViewModelHook(elm, vnode, renderer) {
|
|
5084
4929
|
var vm = getAssociatedVMIfPresent(elm); // There is a possibility that a custom element is registered under tagName, in which case, the
|
|
5085
4930
|
// initialization is already carry on, and there is nothing else to do here since this hook is
|
|
5086
4931
|
// called right after invoking `document.createElement`.
|
|
@@ -5093,7 +4938,7 @@
|
|
|
5093
4938
|
mode = vnode.mode,
|
|
5094
4939
|
ctor = vnode.ctor,
|
|
5095
4940
|
owner = vnode.owner;
|
|
5096
|
-
setScopeTokenClassIfNecessary(elm, owner);
|
|
4941
|
+
setScopeTokenClassIfNecessary(elm, owner, renderer);
|
|
5097
4942
|
|
|
5098
4943
|
if (owner.shadowMode === 1
|
|
5099
4944
|
/* Synthetic */
|
|
@@ -5106,7 +4951,7 @@
|
|
|
5106
4951
|
}
|
|
5107
4952
|
}
|
|
5108
4953
|
|
|
5109
|
-
vm = createVM(elm, ctor, {
|
|
4954
|
+
vm = createVM(elm, ctor, renderer, {
|
|
5110
4955
|
mode: mode,
|
|
5111
4956
|
owner: owner,
|
|
5112
4957
|
tagName: sel
|
|
@@ -5125,8 +4970,8 @@
|
|
|
5125
4970
|
var oldSlots = vm.cmpSlots;
|
|
5126
4971
|
var cmpSlots = vm.cmpSlots = create(null);
|
|
5127
4972
|
|
|
5128
|
-
for (var
|
|
5129
|
-
var vnode = children[
|
|
4973
|
+
for (var _i12 = 0, len = children.length; _i12 < len; _i12 += 1) {
|
|
4974
|
+
var vnode = children[_i12];
|
|
5130
4975
|
|
|
5131
4976
|
if (isNull(vnode)) {
|
|
5132
4977
|
continue;
|
|
@@ -5152,8 +4997,8 @@
|
|
|
5152
4997
|
return;
|
|
5153
4998
|
}
|
|
5154
4999
|
|
|
5155
|
-
for (var
|
|
5156
|
-
var key = oldKeys[
|
|
5000
|
+
for (var _i13 = 0, _len4 = oldKeys.length; _i13 < _len4; _i13 += 1) {
|
|
5001
|
+
var key = oldKeys[_i13];
|
|
5157
5002
|
|
|
5158
5003
|
if (isUndefined$1(cmpSlots[key]) || oldSlots[key].length !== cmpSlots[key].length) {
|
|
5159
5004
|
markComponentAsDirty(vm);
|
|
@@ -5203,7 +5048,7 @@
|
|
|
5203
5048
|
return map;
|
|
5204
5049
|
}
|
|
5205
5050
|
|
|
5206
|
-
function updateDynamicChildren(oldCh, newCh, parent) {
|
|
5051
|
+
function updateDynamicChildren(oldCh, newCh, parent, renderer) {
|
|
5207
5052
|
var oldStartIdx = 0;
|
|
5208
5053
|
var newStartIdx = 0;
|
|
5209
5054
|
var oldEndIdx = oldCh.length - 1;
|
|
@@ -5229,23 +5074,23 @@
|
|
|
5229
5074
|
} else if (!isVNode(newEndVnode)) {
|
|
5230
5075
|
newEndVnode = newCh[--newEndIdx];
|
|
5231
5076
|
} else if (isSameVnode(oldStartVnode, newStartVnode)) {
|
|
5232
|
-
patch(oldStartVnode, newStartVnode);
|
|
5077
|
+
patch(oldStartVnode, newStartVnode, renderer);
|
|
5233
5078
|
oldStartVnode = oldCh[++oldStartIdx];
|
|
5234
5079
|
newStartVnode = newCh[++newStartIdx];
|
|
5235
5080
|
} else if (isSameVnode(oldEndVnode, newEndVnode)) {
|
|
5236
|
-
patch(oldEndVnode, newEndVnode);
|
|
5081
|
+
patch(oldEndVnode, newEndVnode, renderer);
|
|
5237
5082
|
oldEndVnode = oldCh[--oldEndIdx];
|
|
5238
5083
|
newEndVnode = newCh[--newEndIdx];
|
|
5239
5084
|
} else if (isSameVnode(oldStartVnode, newEndVnode)) {
|
|
5240
5085
|
// Vnode moved right
|
|
5241
|
-
patch(oldStartVnode, newEndVnode);
|
|
5242
|
-
insertNode(oldStartVnode.elm, parent, nextSibling
|
|
5086
|
+
patch(oldStartVnode, newEndVnode, renderer);
|
|
5087
|
+
insertNode(oldStartVnode.elm, parent, renderer.nextSibling(oldEndVnode.elm), renderer);
|
|
5243
5088
|
oldStartVnode = oldCh[++oldStartIdx];
|
|
5244
5089
|
newEndVnode = newCh[--newEndIdx];
|
|
5245
5090
|
} else if (isSameVnode(oldEndVnode, newStartVnode)) {
|
|
5246
5091
|
// Vnode moved left
|
|
5247
|
-
patch(oldEndVnode, newStartVnode);
|
|
5248
|
-
insertNode(newStartVnode.elm, parent, oldStartVnode.elm);
|
|
5092
|
+
patch(oldEndVnode, newStartVnode, renderer);
|
|
5093
|
+
insertNode(newStartVnode.elm, parent, oldStartVnode.elm, renderer);
|
|
5249
5094
|
oldEndVnode = oldCh[--oldEndIdx];
|
|
5250
5095
|
newStartVnode = newCh[++newStartIdx];
|
|
5251
5096
|
} else {
|
|
@@ -5257,7 +5102,7 @@
|
|
|
5257
5102
|
|
|
5258
5103
|
if (isUndefined$1(idxInOld)) {
|
|
5259
5104
|
// New element
|
|
5260
|
-
mount(newStartVnode, parent, oldStartVnode.elm);
|
|
5105
|
+
mount(newStartVnode, parent, renderer, oldStartVnode.elm);
|
|
5261
5106
|
newStartVnode = newCh[++newStartIdx];
|
|
5262
5107
|
} else {
|
|
5263
5108
|
elmToMove = oldCh[idxInOld];
|
|
@@ -5265,9 +5110,9 @@
|
|
|
5265
5110
|
if (isVNode(elmToMove)) {
|
|
5266
5111
|
if (elmToMove.sel !== newStartVnode.sel) {
|
|
5267
5112
|
// New element
|
|
5268
|
-
mount(newStartVnode, parent, oldStartVnode.elm);
|
|
5113
|
+
mount(newStartVnode, parent, renderer, oldStartVnode.elm);
|
|
5269
5114
|
} else {
|
|
5270
|
-
patch(elmToMove, newStartVnode); // Delete the old child, but copy the array since it is read-only.
|
|
5115
|
+
patch(elmToMove, newStartVnode, renderer); // Delete the old child, but copy the array since it is read-only.
|
|
5271
5116
|
// The `oldCh` will be GC'ed after `updateDynamicChildren` is complete,
|
|
5272
5117
|
// so we only care about the `oldCh` object inside this function.
|
|
5273
5118
|
// To avoid cloning over and over again, we check `clonedOldCh`
|
|
@@ -5280,7 +5125,7 @@
|
|
|
5280
5125
|
|
|
5281
5126
|
|
|
5282
5127
|
oldCh[idxInOld] = undefined;
|
|
5283
|
-
insertNode(elmToMove.elm, parent, oldStartVnode.elm);
|
|
5128
|
+
insertNode(elmToMove.elm, parent, oldStartVnode.elm, renderer);
|
|
5284
5129
|
}
|
|
5285
5130
|
}
|
|
5286
5131
|
|
|
@@ -5293,35 +5138,35 @@
|
|
|
5293
5138
|
if (oldStartIdx > oldEndIdx) {
|
|
5294
5139
|
// There's some cases in which the sub array of vnodes to be inserted is followed by null(s) and an
|
|
5295
5140
|
// already processed vnode, in such cases the vnodes to be inserted should be before that processed vnode.
|
|
5296
|
-
var
|
|
5141
|
+
var _i14 = newEndIdx;
|
|
5297
5142
|
var n;
|
|
5298
5143
|
|
|
5299
5144
|
do {
|
|
5300
|
-
n = newCh[++
|
|
5301
|
-
} while (!isVNode(n) &&
|
|
5145
|
+
n = newCh[++_i14];
|
|
5146
|
+
} while (!isVNode(n) && _i14 < newChEnd);
|
|
5302
5147
|
|
|
5303
5148
|
before = isVNode(n) ? n.elm : null;
|
|
5304
|
-
mountVNodes(newCh, parent, before, newStartIdx, newEndIdx + 1);
|
|
5149
|
+
mountVNodes(newCh, parent, renderer, before, newStartIdx, newEndIdx + 1);
|
|
5305
5150
|
} else {
|
|
5306
|
-
unmountVNodes(oldCh, parent, true, oldStartIdx, oldEndIdx + 1);
|
|
5151
|
+
unmountVNodes(oldCh, parent, renderer, true, oldStartIdx, oldEndIdx + 1);
|
|
5307
5152
|
}
|
|
5308
5153
|
}
|
|
5309
5154
|
}
|
|
5310
5155
|
|
|
5311
|
-
function updateStaticChildren(c1, c2, parent) {
|
|
5156
|
+
function updateStaticChildren(c1, c2, parent, renderer) {
|
|
5312
5157
|
var c1Length = c1.length;
|
|
5313
5158
|
var c2Length = c2.length;
|
|
5314
5159
|
|
|
5315
5160
|
if (c1Length === 0) {
|
|
5316
5161
|
// the old list is empty, we can directly insert anything new
|
|
5317
|
-
mountVNodes(c2, parent, null);
|
|
5162
|
+
mountVNodes(c2, parent, renderer, null);
|
|
5318
5163
|
return;
|
|
5319
5164
|
}
|
|
5320
5165
|
|
|
5321
5166
|
if (c2Length === 0) {
|
|
5322
5167
|
// the old list is nonempty and the new list is empty so we can directly remove all old nodes
|
|
5323
5168
|
// this is the case in which the dynamic children of an if-directive should be removed
|
|
5324
|
-
unmountVNodes(c1, parent, true);
|
|
5169
|
+
unmountVNodes(c1, parent, renderer, true);
|
|
5325
5170
|
return;
|
|
5326
5171
|
} // if the old list is not empty, the new list MUST have the same
|
|
5327
5172
|
// amount of nodes, that's why we call this static children
|
|
@@ -5329,22 +5174,22 @@
|
|
|
5329
5174
|
|
|
5330
5175
|
var anchor = null;
|
|
5331
5176
|
|
|
5332
|
-
for (var
|
|
5333
|
-
var n1 = c1[
|
|
5334
|
-
var n2 = c2[
|
|
5177
|
+
for (var _i15 = c2Length - 1; _i15 >= 0; _i15 -= 1) {
|
|
5178
|
+
var n1 = c1[_i15];
|
|
5179
|
+
var n2 = c2[_i15];
|
|
5335
5180
|
|
|
5336
5181
|
if (n2 !== n1) {
|
|
5337
5182
|
if (isVNode(n1)) {
|
|
5338
5183
|
if (isVNode(n2)) {
|
|
5339
5184
|
// both vnodes are equivalent, and we just need to patch them
|
|
5340
|
-
patch(n1, n2);
|
|
5185
|
+
patch(n1, n2, renderer);
|
|
5341
5186
|
anchor = n2.elm;
|
|
5342
5187
|
} else {
|
|
5343
5188
|
// removing the old vnode since the new one is null
|
|
5344
|
-
unmount(n1, parent, true);
|
|
5189
|
+
unmount(n1, parent, renderer, true);
|
|
5345
5190
|
}
|
|
5346
5191
|
} else if (isVNode(n2)) {
|
|
5347
|
-
mount(n2, parent, anchor);
|
|
5192
|
+
mount(n2, parent, renderer, anchor);
|
|
5348
5193
|
anchor = n2.elm;
|
|
5349
5194
|
}
|
|
5350
5195
|
}
|
|
@@ -5879,7 +5724,11 @@
|
|
|
5879
5724
|
var elm = vm.elm,
|
|
5880
5725
|
context = vm.context,
|
|
5881
5726
|
renderMode = vm.renderMode,
|
|
5882
|
-
shadowMode = vm.shadowMode
|
|
5727
|
+
shadowMode = vm.shadowMode,
|
|
5728
|
+
_vm$renderer = vm.renderer,
|
|
5729
|
+
getClassList = _vm$renderer.getClassList,
|
|
5730
|
+
removeAttribute = _vm$renderer.removeAttribute,
|
|
5731
|
+
setAttribute = _vm$renderer.setAttribute;
|
|
5883
5732
|
var newStylesheets = template.stylesheets,
|
|
5884
5733
|
newStylesheetToken = template.stylesheetToken;
|
|
5885
5734
|
var isSyntheticShadow = renderMode === 1
|
|
@@ -5898,11 +5747,11 @@
|
|
|
5898
5747
|
|
|
5899
5748
|
if (!isUndefined$1(oldToken)) {
|
|
5900
5749
|
if (oldHasTokenInClass) {
|
|
5901
|
-
getClassList
|
|
5750
|
+
getClassList(elm).remove(makeHostToken(oldToken));
|
|
5902
5751
|
}
|
|
5903
5752
|
|
|
5904
5753
|
if (oldHasTokenInAttribute) {
|
|
5905
|
-
removeAttribute
|
|
5754
|
+
removeAttribute(elm, makeHostToken(oldToken));
|
|
5906
5755
|
}
|
|
5907
5756
|
} // Apply the new template styling token to the host element, if the new template has any
|
|
5908
5757
|
// associated stylesheets. In the case of light DOM, also ensure there is at least one scoped stylesheet.
|
|
@@ -5915,12 +5764,12 @@
|
|
|
5915
5764
|
|
|
5916
5765
|
if (!isUndefined$1(newToken)) {
|
|
5917
5766
|
if (hasScopedStyles) {
|
|
5918
|
-
getClassList
|
|
5767
|
+
getClassList(elm).add(makeHostToken(newToken));
|
|
5919
5768
|
newHasTokenInClass = true;
|
|
5920
5769
|
}
|
|
5921
5770
|
|
|
5922
5771
|
if (isSyntheticShadow) {
|
|
5923
|
-
setAttribute
|
|
5772
|
+
setAttribute(elm, makeHostToken(newToken), '');
|
|
5924
5773
|
newHasTokenInAttribute = true;
|
|
5925
5774
|
}
|
|
5926
5775
|
} // Update the styling tokens present on the context object.
|
|
@@ -5935,8 +5784,8 @@
|
|
|
5935
5784
|
var content = [];
|
|
5936
5785
|
var root;
|
|
5937
5786
|
|
|
5938
|
-
for (var
|
|
5939
|
-
var stylesheet = stylesheets[
|
|
5787
|
+
for (var _i16 = 0; _i16 < stylesheets.length; _i16++) {
|
|
5788
|
+
var stylesheet = stylesheets[_i16];
|
|
5940
5789
|
|
|
5941
5790
|
if (isArray$1(stylesheet)) {
|
|
5942
5791
|
ArrayPush$1.apply(content, evaluateStylesheetsContent(stylesheet, stylesheetToken, vm));
|
|
@@ -6041,17 +5890,20 @@
|
|
|
6041
5890
|
|
|
6042
5891
|
function createStylesheet(vm, stylesheets) {
|
|
6043
5892
|
var renderMode = vm.renderMode,
|
|
6044
|
-
shadowMode = vm.shadowMode
|
|
5893
|
+
shadowMode = vm.shadowMode,
|
|
5894
|
+
_vm$renderer2 = vm.renderer,
|
|
5895
|
+
ssr = _vm$renderer2.ssr,
|
|
5896
|
+
insertStylesheet = _vm$renderer2.insertStylesheet;
|
|
6045
5897
|
|
|
6046
5898
|
if (renderMode === 1
|
|
6047
5899
|
/* Shadow */
|
|
6048
5900
|
&& shadowMode === 1
|
|
6049
5901
|
/* Synthetic */
|
|
6050
5902
|
) {
|
|
6051
|
-
for (var
|
|
6052
|
-
insertStylesheet
|
|
5903
|
+
for (var _i17 = 0; _i17 < stylesheets.length; _i17++) {
|
|
5904
|
+
insertStylesheet(stylesheets[_i17]);
|
|
6053
5905
|
}
|
|
6054
|
-
} else if (ssr
|
|
5906
|
+
} else if (ssr || vm.hydrated) {
|
|
6055
5907
|
// Note: We need to ensure that during hydration, the stylesheets method is the same as those in ssr.
|
|
6056
5908
|
// This works in the client, because the stylesheets are created, and cached in the VM
|
|
6057
5909
|
// the first time the VM renders.
|
|
@@ -6064,8 +5916,8 @@
|
|
|
6064
5916
|
|
|
6065
5917
|
var target = isNull(root) ? undefined : root.shadowRoot;
|
|
6066
5918
|
|
|
6067
|
-
for (var
|
|
6068
|
-
insertStylesheet
|
|
5919
|
+
for (var _i18 = 0; _i18 < stylesheets.length; _i18++) {
|
|
5920
|
+
insertStylesheet(stylesheets[_i18], target);
|
|
6069
5921
|
}
|
|
6070
5922
|
}
|
|
6071
5923
|
|
|
@@ -6341,8 +6193,8 @@
|
|
|
6341
6193
|
var stylesheets = template.stylesheets;
|
|
6342
6194
|
|
|
6343
6195
|
if (!isUndefined$1(stylesheets)) {
|
|
6344
|
-
for (var
|
|
6345
|
-
if (isTrue(stylesheets[
|
|
6196
|
+
for (var _i19 = 0; _i19 < stylesheets.length; _i19++) {
|
|
6197
|
+
if (isTrue(stylesheets[_i19][KEY__SCOPED_CSS])) {
|
|
6346
6198
|
return true;
|
|
6347
6199
|
}
|
|
6348
6200
|
}
|
|
@@ -6563,8 +6415,8 @@
|
|
|
6563
6415
|
assert.isTrue(isObject(service), "Invalid service declaration, ".concat(service, ": service must be an object"));
|
|
6564
6416
|
}
|
|
6565
6417
|
|
|
6566
|
-
for (var
|
|
6567
|
-
var hookName = hooks[
|
|
6418
|
+
for (var _i20 = 0; _i20 < hooks.length; ++_i20) {
|
|
6419
|
+
var hookName = hooks[_i20];
|
|
6568
6420
|
|
|
6569
6421
|
if (hookName in service) {
|
|
6570
6422
|
var l = Services[hookName];
|
|
@@ -6587,8 +6439,8 @@
|
|
|
6587
6439
|
def = vm.def,
|
|
6588
6440
|
context = vm.context;
|
|
6589
6441
|
|
|
6590
|
-
for (var
|
|
6591
|
-
cbs[
|
|
6442
|
+
for (var _i21 = 0, len = cbs.length; _i21 < len; ++_i21) {
|
|
6443
|
+
cbs[_i21].call(undefined, component, {}, def, context);
|
|
6592
6444
|
}
|
|
6593
6445
|
}
|
|
6594
6446
|
/*
|
|
@@ -6692,9 +6544,19 @@
|
|
|
6692
6544
|
resetComponentStateWhenRemoved(vm);
|
|
6693
6545
|
}
|
|
6694
6546
|
|
|
6695
|
-
function
|
|
6696
|
-
var
|
|
6547
|
+
function getNearestShadowAncestor(vm) {
|
|
6548
|
+
var ancestor = vm.owner;
|
|
6549
|
+
|
|
6550
|
+
while (!isNull(ancestor) && ancestor.renderMode === 0
|
|
6551
|
+
/* Light */
|
|
6552
|
+
) {
|
|
6553
|
+
ancestor = ancestor.owner;
|
|
6554
|
+
}
|
|
6555
|
+
|
|
6556
|
+
return ancestor;
|
|
6557
|
+
}
|
|
6697
6558
|
|
|
6559
|
+
function createVM(elm, ctor, renderer, options) {
|
|
6698
6560
|
var mode = options.mode,
|
|
6699
6561
|
owner = options.owner,
|
|
6700
6562
|
tagName = options.tagName,
|
|
@@ -6722,8 +6584,6 @@
|
|
|
6722
6584
|
cmpTemplate: null,
|
|
6723
6585
|
hydrated: Boolean(hydrated),
|
|
6724
6586
|
renderMode: def.renderMode,
|
|
6725
|
-
shadowMode: computeShadowMode(def, owner),
|
|
6726
|
-
nearestShadowMode: (owner === null || owner === void 0 ? void 0 : owner.shadowRoot) ? owner.shadowMode : (_a = owner === null || owner === void 0 ? void 0 : owner.nearestShadowMode) !== null && _a !== void 0 ? _a : null,
|
|
6727
6587
|
context: {
|
|
6728
6588
|
stylesheetToken: undefined,
|
|
6729
6589
|
hasTokenInClass: undefined,
|
|
@@ -6736,14 +6596,17 @@
|
|
|
6736
6596
|
},
|
|
6737
6597
|
// Properties set right after VM creation.
|
|
6738
6598
|
tro: null,
|
|
6599
|
+
shadowMode: null,
|
|
6739
6600
|
// Properties set by the LightningElement constructor.
|
|
6740
6601
|
component: null,
|
|
6741
6602
|
shadowRoot: null,
|
|
6742
6603
|
renderRoot: null,
|
|
6743
6604
|
callHook: callHook,
|
|
6744
6605
|
setHook: setHook,
|
|
6745
|
-
getHook: getHook
|
|
6606
|
+
getHook: getHook,
|
|
6607
|
+
renderer: renderer
|
|
6746
6608
|
};
|
|
6609
|
+
vm.shadowMode = computeShadowMode(vm, renderer);
|
|
6747
6610
|
vm.tro = getTemplateReactiveObserver(vm);
|
|
6748
6611
|
|
|
6749
6612
|
if (process.env.NODE_ENV !== 'production') {
|
|
@@ -6768,12 +6631,13 @@
|
|
|
6768
6631
|
return vm;
|
|
6769
6632
|
}
|
|
6770
6633
|
|
|
6771
|
-
function computeShadowMode(
|
|
6772
|
-
var
|
|
6773
|
-
|
|
6634
|
+
function computeShadowMode(vm, renderer) {
|
|
6635
|
+
var def = vm.def;
|
|
6636
|
+
var isSyntheticShadowDefined = renderer.isSyntheticShadowDefined,
|
|
6637
|
+
isNativeShadowDefined = renderer.isNativeShadowDefined;
|
|
6774
6638
|
var shadowMode;
|
|
6775
6639
|
|
|
6776
|
-
if (isSyntheticShadowDefined
|
|
6640
|
+
if (isSyntheticShadowDefined) {
|
|
6777
6641
|
if (def.renderMode === 0
|
|
6778
6642
|
/* Light */
|
|
6779
6643
|
) {
|
|
@@ -6782,7 +6646,7 @@
|
|
|
6782
6646
|
shadowMode = 0
|
|
6783
6647
|
/* Native */
|
|
6784
6648
|
;
|
|
6785
|
-
} else if (isNativeShadowDefined
|
|
6649
|
+
} else if (isNativeShadowDefined) {
|
|
6786
6650
|
// Not combined with above condition because @lwc/features only supports identifiers in
|
|
6787
6651
|
// the if-condition.
|
|
6788
6652
|
if (runtimeFlags.ENABLE_MIXED_SHADOW_MODE) {
|
|
@@ -6793,13 +6657,23 @@
|
|
|
6793
6657
|
/* Native */
|
|
6794
6658
|
;
|
|
6795
6659
|
} else {
|
|
6796
|
-
|
|
6797
|
-
|
|
6798
|
-
|
|
6799
|
-
|
|
6800
|
-
|
|
6801
|
-
|
|
6802
|
-
|
|
6660
|
+
var shadowAncestor = getNearestShadowAncestor(vm);
|
|
6661
|
+
|
|
6662
|
+
if (!isNull(shadowAncestor) && shadowAncestor.shadowMode === 0
|
|
6663
|
+
/* Native */
|
|
6664
|
+
) {
|
|
6665
|
+
// Transitive support for native Shadow DOM. A component in native mode
|
|
6666
|
+
// transitively opts all of its descendants into native.
|
|
6667
|
+
shadowMode = 0
|
|
6668
|
+
/* Native */
|
|
6669
|
+
;
|
|
6670
|
+
} else {
|
|
6671
|
+
// Synthetic if neither this component nor any of its ancestors are configured
|
|
6672
|
+
// to be native.
|
|
6673
|
+
shadowMode = 1
|
|
6674
|
+
/* Synthetic */
|
|
6675
|
+
;
|
|
6676
|
+
}
|
|
6803
6677
|
}
|
|
6804
6678
|
} else {
|
|
6805
6679
|
shadowMode = 1
|
|
@@ -6863,7 +6737,8 @@
|
|
|
6863
6737
|
|
|
6864
6738
|
function patchShadowRoot(vm, newCh) {
|
|
6865
6739
|
var renderRoot = vm.renderRoot,
|
|
6866
|
-
oldCh = vm.children
|
|
6740
|
+
oldCh = vm.children,
|
|
6741
|
+
renderer = vm.renderer; // caching the new children collection
|
|
6867
6742
|
|
|
6868
6743
|
vm.children = newCh;
|
|
6869
6744
|
|
|
@@ -6878,7 +6753,7 @@
|
|
|
6878
6753
|
, vm);
|
|
6879
6754
|
}, function () {
|
|
6880
6755
|
// job
|
|
6881
|
-
patchChildren(oldCh, newCh, renderRoot);
|
|
6756
|
+
patchChildren(oldCh, newCh, renderRoot, renderer);
|
|
6882
6757
|
}, function () {
|
|
6883
6758
|
// post
|
|
6884
6759
|
logOperationEnd(2
|
|
@@ -6900,9 +6775,10 @@
|
|
|
6900
6775
|
}
|
|
6901
6776
|
|
|
6902
6777
|
function runRenderedCallback(vm) {
|
|
6903
|
-
var renderedCallback = vm.def.renderedCallback
|
|
6778
|
+
var renderedCallback = vm.def.renderedCallback,
|
|
6779
|
+
ssr = vm.renderer.ssr;
|
|
6904
6780
|
|
|
6905
|
-
if (isTrue(ssr
|
|
6781
|
+
if (isTrue(ssr)) {
|
|
6906
6782
|
return;
|
|
6907
6783
|
}
|
|
6908
6784
|
|
|
@@ -6939,19 +6815,19 @@
|
|
|
6939
6815
|
});
|
|
6940
6816
|
rehydrateQueue = []; // reset to a new queue
|
|
6941
6817
|
|
|
6942
|
-
for (var
|
|
6943
|
-
var vm = vms[
|
|
6818
|
+
for (var _i22 = 0, len = vms.length; _i22 < len; _i22 += 1) {
|
|
6819
|
+
var vm = vms[_i22];
|
|
6944
6820
|
|
|
6945
6821
|
try {
|
|
6946
6822
|
rehydrate(vm);
|
|
6947
6823
|
} catch (error) {
|
|
6948
|
-
if (
|
|
6824
|
+
if (_i22 + 1 < len) {
|
|
6949
6825
|
// pieces of the queue are still pending to be rehydrated, those should have priority
|
|
6950
6826
|
if (rehydrateQueue.length === 0) {
|
|
6951
6827
|
addCallbackToNextTick(flushRehydrationQueue);
|
|
6952
6828
|
}
|
|
6953
6829
|
|
|
6954
|
-
ArrayUnshift.apply(rehydrateQueue, ArraySlice.call(vms,
|
|
6830
|
+
ArrayUnshift.apply(rehydrateQueue, ArraySlice.call(vms, _i22 + 1));
|
|
6955
6831
|
} // we need to end the measure before throwing.
|
|
6956
6832
|
|
|
6957
6833
|
|
|
@@ -7055,8 +6931,8 @@
|
|
|
7055
6931
|
var vCustomElementCollection = vm.velements; // Reporting disconnection for every child in inverse order since they are
|
|
7056
6932
|
// inserted in reserved order.
|
|
7057
6933
|
|
|
7058
|
-
for (var
|
|
7059
|
-
var elm = vCustomElementCollection[
|
|
6934
|
+
for (var _i23 = vCustomElementCollection.length - 1; _i23 >= 0; _i23 -= 1) {
|
|
6935
|
+
var elm = vCustomElementCollection[_i23].elm; // There are two cases where the element could be undefined:
|
|
7060
6936
|
// * when there is an error during the construction phase, and an error
|
|
7061
6937
|
// boundary picks it, there is a possibility that the VCustomElement
|
|
7062
6938
|
// is not properly initialized, and therefore is should be ignored.
|
|
@@ -7090,8 +6966,8 @@
|
|
|
7090
6966
|
|
|
7091
6967
|
|
|
7092
6968
|
function recursivelyDisconnectChildren(vnodes) {
|
|
7093
|
-
for (var
|
|
7094
|
-
var vnode = vnodes[
|
|
6969
|
+
for (var _i24 = 0, len = vnodes.length; _i24 < len; _i24 += 1) {
|
|
6970
|
+
var vnode = vnodes[_i24];
|
|
7095
6971
|
|
|
7096
6972
|
if (!isNull(vnode) && !isUndefined$1(vnode.elm)) {
|
|
7097
6973
|
switch (vnode.type) {
|
|
@@ -7120,13 +6996,14 @@
|
|
|
7120
6996
|
|
|
7121
6997
|
function resetComponentRoot(vm) {
|
|
7122
6998
|
var children = vm.children,
|
|
7123
|
-
renderRoot = vm.renderRoot
|
|
6999
|
+
renderRoot = vm.renderRoot,
|
|
7000
|
+
remove = vm.renderer.remove;
|
|
7124
7001
|
|
|
7125
|
-
for (var
|
|
7126
|
-
var child = children[
|
|
7002
|
+
for (var _i25 = 0, len = children.length; _i25 < len; _i25++) {
|
|
7003
|
+
var child = children[_i25];
|
|
7127
7004
|
|
|
7128
7005
|
if (!isNull(child) && !isUndefined$1(child.elm)) {
|
|
7129
|
-
remove
|
|
7006
|
+
remove(child.elm, renderRoot);
|
|
7130
7007
|
}
|
|
7131
7008
|
}
|
|
7132
7009
|
|
|
@@ -7136,7 +7013,9 @@
|
|
|
7136
7013
|
}
|
|
7137
7014
|
|
|
7138
7015
|
function scheduleRehydration(vm) {
|
|
7139
|
-
|
|
7016
|
+
var ssr = vm.renderer.ssr;
|
|
7017
|
+
|
|
7018
|
+
if (isTrue(ssr) || isTrue(vm.isScheduled)) {
|
|
7140
7019
|
return;
|
|
7141
7020
|
}
|
|
7142
7021
|
|
|
@@ -7323,7 +7202,8 @@
|
|
|
7323
7202
|
var elm = vm.elm,
|
|
7324
7203
|
_vm$context = vm.context,
|
|
7325
7204
|
wiredConnecting = _vm$context.wiredConnecting,
|
|
7326
|
-
wiredDisconnecting = _vm$context.wiredDisconnecting
|
|
7205
|
+
wiredDisconnecting = _vm$context.wiredDisconnecting,
|
|
7206
|
+
dispatchEvent = vm.renderer.dispatchEvent; // waiting for the component to be connected to formally request the context via the token
|
|
7327
7207
|
|
|
7328
7208
|
ArrayPush$1.call(wiredConnecting, function () {
|
|
7329
7209
|
// This event is responsible for connecting the host element with another
|
|
@@ -7343,7 +7223,7 @@
|
|
|
7343
7223
|
ArrayPush$1.call(wiredDisconnecting, disconnectCallback);
|
|
7344
7224
|
}
|
|
7345
7225
|
});
|
|
7346
|
-
dispatchEvent
|
|
7226
|
+
dispatchEvent(elm, contextRegistrationEvent);
|
|
7347
7227
|
});
|
|
7348
7228
|
}
|
|
7349
7229
|
|
|
@@ -7497,8 +7377,8 @@
|
|
|
7497
7377
|
function connectWireAdapters(vm) {
|
|
7498
7378
|
var wiredConnecting = vm.context.wiredConnecting;
|
|
7499
7379
|
|
|
7500
|
-
for (var
|
|
7501
|
-
wiredConnecting[
|
|
7380
|
+
for (var _i26 = 0, len = wiredConnecting.length; _i26 < len; _i26 += 1) {
|
|
7381
|
+
wiredConnecting[_i26]();
|
|
7502
7382
|
}
|
|
7503
7383
|
}
|
|
7504
7384
|
|
|
@@ -7506,8 +7386,8 @@
|
|
|
7506
7386
|
var wiredDisconnecting = vm.context.wiredDisconnecting;
|
|
7507
7387
|
runWithBoundaryProtection(vm, vm, noop, function () {
|
|
7508
7388
|
// job
|
|
7509
|
-
for (var
|
|
7510
|
-
wiredDisconnecting[
|
|
7389
|
+
for (var _i27 = 0, len = wiredDisconnecting.length; _i27 < len; _i27 += 1) {
|
|
7390
|
+
wiredDisconnecting[_i27]();
|
|
7511
7391
|
}
|
|
7512
7392
|
}, noop);
|
|
7513
7393
|
}
|
|
@@ -7607,95 +7487,107 @@
|
|
|
7607
7487
|
function hydrateVM(vm) {
|
|
7608
7488
|
var children = renderComponent(vm);
|
|
7609
7489
|
vm.children = children;
|
|
7610
|
-
var parentNode = vm.renderRoot
|
|
7611
|
-
|
|
7490
|
+
var parentNode = vm.renderRoot,
|
|
7491
|
+
getFirstChild = vm.renderer.getFirstChild;
|
|
7492
|
+
hydrateChildren(getFirstChild(parentNode), children, parentNode, vm);
|
|
7612
7493
|
runRenderedCallback(vm);
|
|
7613
7494
|
}
|
|
7614
7495
|
|
|
7615
|
-
function hydrateNode(node, vnode) {
|
|
7496
|
+
function hydrateNode(node, vnode, renderer) {
|
|
7497
|
+
var _a, _b;
|
|
7498
|
+
|
|
7616
7499
|
var hydratedNode;
|
|
7617
7500
|
|
|
7618
7501
|
switch (vnode.type) {
|
|
7619
7502
|
case 0
|
|
7620
7503
|
/* Text */
|
|
7621
7504
|
:
|
|
7622
|
-
|
|
7505
|
+
// VText has no special capability, fallback to the owner's renderer
|
|
7506
|
+
hydratedNode = hydrateText(node, vnode, renderer);
|
|
7623
7507
|
break;
|
|
7624
7508
|
|
|
7625
7509
|
case 1
|
|
7626
7510
|
/* Comment */
|
|
7627
7511
|
:
|
|
7628
|
-
|
|
7512
|
+
// VComment has no special capability, fallback to the owner's renderer
|
|
7513
|
+
hydratedNode = hydrateComment(node, vnode, renderer);
|
|
7629
7514
|
break;
|
|
7630
7515
|
|
|
7631
7516
|
case 2
|
|
7632
7517
|
/* Element */
|
|
7633
7518
|
:
|
|
7634
|
-
hydratedNode = hydrateElement(node, vnode);
|
|
7519
|
+
hydratedNode = hydrateElement(node, vnode, (_a = vnode.data.renderer) !== null && _a !== void 0 ? _a : renderer);
|
|
7635
7520
|
break;
|
|
7636
7521
|
|
|
7637
7522
|
case 3
|
|
7638
7523
|
/* CustomElement */
|
|
7639
7524
|
:
|
|
7640
|
-
hydratedNode = hydrateCustomElement(node, vnode);
|
|
7525
|
+
hydratedNode = hydrateCustomElement(node, vnode, (_b = vnode.data.renderer) !== null && _b !== void 0 ? _b : renderer);
|
|
7641
7526
|
break;
|
|
7642
7527
|
}
|
|
7643
7528
|
|
|
7644
|
-
return nextSibling
|
|
7529
|
+
return renderer.nextSibling(hydratedNode);
|
|
7645
7530
|
}
|
|
7646
7531
|
|
|
7647
|
-
function hydrateText(node, vnode) {
|
|
7532
|
+
function hydrateText(node, vnode, renderer) {
|
|
7648
7533
|
var _a;
|
|
7649
7534
|
|
|
7650
7535
|
if (!hasCorrectNodeType(vnode, node, 3
|
|
7651
7536
|
/* TEXT */
|
|
7652
|
-
)) {
|
|
7653
|
-
return handleMismatch(node, vnode);
|
|
7537
|
+
, renderer)) {
|
|
7538
|
+
return handleMismatch(node, vnode, renderer);
|
|
7654
7539
|
}
|
|
7655
7540
|
|
|
7656
7541
|
if (process.env.NODE_ENV !== 'production') {
|
|
7657
|
-
var
|
|
7542
|
+
var _getProperty = renderer.getProperty;
|
|
7543
|
+
|
|
7544
|
+
var nodeValue = _getProperty(node, 'nodeValue');
|
|
7658
7545
|
|
|
7659
7546
|
if (nodeValue !== vnode.text && !(nodeValue === "\u200D" && vnode.text === '')) {
|
|
7660
7547
|
logWarn('Hydration mismatch: text values do not match, will recover from the difference', vnode.owner);
|
|
7661
7548
|
}
|
|
7662
7549
|
}
|
|
7663
7550
|
|
|
7664
|
-
setText
|
|
7551
|
+
var setText = renderer.setText;
|
|
7552
|
+
setText(node, (_a = vnode.text) !== null && _a !== void 0 ? _a : null);
|
|
7665
7553
|
vnode.elm = node;
|
|
7666
7554
|
return node;
|
|
7667
7555
|
}
|
|
7668
7556
|
|
|
7669
|
-
function hydrateComment(node, vnode) {
|
|
7557
|
+
function hydrateComment(node, vnode, renderer) {
|
|
7670
7558
|
var _a;
|
|
7671
7559
|
|
|
7672
7560
|
if (!hasCorrectNodeType(vnode, node, 8
|
|
7673
7561
|
/* COMMENT */
|
|
7674
|
-
)) {
|
|
7675
|
-
return handleMismatch(node, vnode);
|
|
7562
|
+
, renderer)) {
|
|
7563
|
+
return handleMismatch(node, vnode, renderer);
|
|
7676
7564
|
}
|
|
7677
7565
|
|
|
7678
7566
|
if (process.env.NODE_ENV !== 'production') {
|
|
7679
|
-
var
|
|
7567
|
+
var _getProperty2 = renderer.getProperty;
|
|
7568
|
+
|
|
7569
|
+
var nodeValue = _getProperty2(node, 'nodeValue');
|
|
7680
7570
|
|
|
7681
7571
|
if (nodeValue !== vnode.text) {
|
|
7682
7572
|
logWarn('Hydration mismatch: comment values do not match, will recover from the difference', vnode.owner);
|
|
7683
7573
|
}
|
|
7684
7574
|
}
|
|
7685
7575
|
|
|
7686
|
-
setProperty
|
|
7576
|
+
var setProperty = renderer.setProperty;
|
|
7577
|
+
setProperty(node, 'nodeValue', (_a = vnode.text) !== null && _a !== void 0 ? _a : null);
|
|
7687
7578
|
vnode.elm = node;
|
|
7688
7579
|
return node;
|
|
7689
7580
|
}
|
|
7690
7581
|
|
|
7691
|
-
function hydrateElement(elm, vnode) {
|
|
7582
|
+
function hydrateElement(elm, vnode, renderer) {
|
|
7692
7583
|
if (!hasCorrectNodeType(vnode, elm, 1
|
|
7693
7584
|
/* ELEMENT */
|
|
7694
|
-
) || !isMatchingElement(vnode, elm)) {
|
|
7695
|
-
return handleMismatch(elm, vnode);
|
|
7585
|
+
, renderer) || !isMatchingElement(vnode, elm, renderer)) {
|
|
7586
|
+
return handleMismatch(elm, vnode, renderer);
|
|
7696
7587
|
}
|
|
7697
7588
|
|
|
7698
7589
|
vnode.elm = elm;
|
|
7590
|
+
var owner = vnode.owner;
|
|
7699
7591
|
var context = vnode.data.context;
|
|
7700
7592
|
var isDomManual = Boolean(!isUndefined$1(context) && !isUndefined$1(context.lwc) && context.lwc.dom === "manual"
|
|
7701
7593
|
/* Manual */
|
|
@@ -7705,42 +7597,44 @@
|
|
|
7705
7597
|
// it may be that this element has lwc:inner-html, we need to diff and in case are the same,
|
|
7706
7598
|
// remove the innerHTML from props so it reuses the existing dom elements.
|
|
7707
7599
|
var props = vnode.data.props;
|
|
7600
|
+
var _getProperty3 = renderer.getProperty;
|
|
7708
7601
|
|
|
7709
7602
|
if (!isUndefined$1(props) && !isUndefined$1(props.innerHTML)) {
|
|
7710
|
-
if (
|
|
7603
|
+
if (_getProperty3(elm, 'innerHTML') === props.innerHTML) {
|
|
7711
7604
|
// Do a shallow clone since VNodeData may be shared across VNodes due to hoist optimization
|
|
7712
7605
|
vnode.data = Object.assign(Object.assign({}, vnode.data), {
|
|
7713
7606
|
props: cloneAndOmitKey(props, 'innerHTML')
|
|
7714
7607
|
});
|
|
7715
7608
|
} else {
|
|
7716
7609
|
if (process.env.NODE_ENV !== 'production') {
|
|
7717
|
-
logWarn("Mismatch hydrating element <".concat(
|
|
7610
|
+
logWarn("Mismatch hydrating element <".concat(_getProperty3(elm, 'tagName').toLowerCase(), ">: innerHTML values do not match for element, will recover from the difference"), owner);
|
|
7718
7611
|
}
|
|
7719
7612
|
}
|
|
7720
7613
|
}
|
|
7721
7614
|
}
|
|
7722
7615
|
|
|
7723
|
-
patchElementPropsAndAttrs(vnode);
|
|
7616
|
+
patchElementPropsAndAttrs(vnode, renderer);
|
|
7724
7617
|
|
|
7725
7618
|
if (!isDomManual) {
|
|
7726
|
-
|
|
7619
|
+
var _getFirstChild = renderer.getFirstChild;
|
|
7620
|
+
hydrateChildren(_getFirstChild(elm), vnode.children, elm, owner);
|
|
7727
7621
|
}
|
|
7728
7622
|
|
|
7729
7623
|
return elm;
|
|
7730
7624
|
}
|
|
7731
7625
|
|
|
7732
|
-
function hydrateCustomElement(elm, vnode) {
|
|
7626
|
+
function hydrateCustomElement(elm, vnode, renderer) {
|
|
7733
7627
|
if (!hasCorrectNodeType(vnode, elm, 1
|
|
7734
7628
|
/* ELEMENT */
|
|
7735
|
-
) || !isMatchingElement(vnode, elm)) {
|
|
7736
|
-
return handleMismatch(elm, vnode);
|
|
7629
|
+
, renderer) || !isMatchingElement(vnode, elm, renderer)) {
|
|
7630
|
+
return handleMismatch(elm, vnode, renderer);
|
|
7737
7631
|
}
|
|
7738
7632
|
|
|
7739
7633
|
var sel = vnode.sel,
|
|
7740
7634
|
mode = vnode.mode,
|
|
7741
7635
|
ctor = vnode.ctor,
|
|
7742
7636
|
owner = vnode.owner;
|
|
7743
|
-
var vm = createVM(elm, ctor, {
|
|
7637
|
+
var vm = createVM(elm, ctor, renderer, {
|
|
7744
7638
|
mode: mode,
|
|
7745
7639
|
owner: owner,
|
|
7746
7640
|
tagName: sel,
|
|
@@ -7749,7 +7643,7 @@
|
|
|
7749
7643
|
vnode.elm = elm;
|
|
7750
7644
|
vnode.vm = vm;
|
|
7751
7645
|
allocateChildren(vnode, vm);
|
|
7752
|
-
patchElementPropsAndAttrs(vnode); // Insert hook section:
|
|
7646
|
+
patchElementPropsAndAttrs(vnode, renderer); // Insert hook section:
|
|
7753
7647
|
|
|
7754
7648
|
if (process.env.NODE_ENV !== 'production') {
|
|
7755
7649
|
assert.isTrue(vm.state === 0
|
|
@@ -7762,9 +7656,10 @@
|
|
|
7762
7656
|
if (vm.renderMode !== 0
|
|
7763
7657
|
/* Light */
|
|
7764
7658
|
) {
|
|
7765
|
-
// VM is not rendering in Light DOM, we can proceed and hydrate the slotted content.
|
|
7659
|
+
var _getFirstChild2 = renderer.getFirstChild; // VM is not rendering in Light DOM, we can proceed and hydrate the slotted content.
|
|
7766
7660
|
// Note: for Light DOM, this is handled while hydrating the VM
|
|
7767
|
-
|
|
7661
|
+
|
|
7662
|
+
hydrateChildren(_getFirstChild2(elm), vnode.children, elm, vm);
|
|
7768
7663
|
}
|
|
7769
7664
|
|
|
7770
7665
|
hydrateVM(vm);
|
|
@@ -7775,13 +7670,14 @@
|
|
|
7775
7670
|
var hasWarned = false;
|
|
7776
7671
|
var nextNode = node;
|
|
7777
7672
|
var anchor = null;
|
|
7673
|
+
var renderer = owner.renderer;
|
|
7778
7674
|
|
|
7779
|
-
for (var
|
|
7780
|
-
var childVnode = children[
|
|
7675
|
+
for (var _i28 = 0; _i28 < children.length; _i28++) {
|
|
7676
|
+
var childVnode = children[_i28];
|
|
7781
7677
|
|
|
7782
7678
|
if (!isNull(childVnode)) {
|
|
7783
7679
|
if (nextNode) {
|
|
7784
|
-
nextNode = hydrateNode(nextNode, childVnode);
|
|
7680
|
+
nextNode = hydrateNode(nextNode, childVnode, renderer);
|
|
7785
7681
|
anchor = childVnode.elm;
|
|
7786
7682
|
} else {
|
|
7787
7683
|
hasMismatch = true;
|
|
@@ -7793,7 +7689,7 @@
|
|
|
7793
7689
|
}
|
|
7794
7690
|
}
|
|
7795
7691
|
|
|
7796
|
-
mount(childVnode, parentNode, anchor);
|
|
7692
|
+
mount(childVnode, parentNode, renderer, anchor);
|
|
7797
7693
|
anchor = childVnode.elm;
|
|
7798
7694
|
}
|
|
7799
7695
|
}
|
|
@@ -7806,38 +7702,40 @@
|
|
|
7806
7702
|
if (!hasWarned) {
|
|
7807
7703
|
logError("Hydration mismatch: incorrect number of rendered nodes. Server rendered more nodes than the client.", owner);
|
|
7808
7704
|
}
|
|
7809
|
-
}
|
|
7705
|
+
} // nextSibling is mostly harmless, and since we don't have
|
|
7706
|
+
// a good reference to what element to act upon, we instead
|
|
7707
|
+
// rely on the vm's associated renderer for navigating to the
|
|
7708
|
+
// next node in the list to be hydrated.
|
|
7709
|
+
|
|
7710
|
+
|
|
7711
|
+
var _nextSibling = renderer.nextSibling;
|
|
7810
7712
|
|
|
7811
7713
|
do {
|
|
7812
7714
|
var current = nextNode;
|
|
7813
|
-
nextNode =
|
|
7814
|
-
removeNode(current, parentNode);
|
|
7715
|
+
nextNode = _nextSibling(nextNode);
|
|
7716
|
+
removeNode(current, parentNode, renderer);
|
|
7815
7717
|
} while (nextNode);
|
|
7816
7718
|
}
|
|
7817
7719
|
}
|
|
7818
7720
|
|
|
7819
|
-
function handleMismatch(node, vnode,
|
|
7721
|
+
function handleMismatch(node, vnode, renderer) {
|
|
7820
7722
|
hasMismatch = true;
|
|
7821
|
-
|
|
7822
|
-
|
|
7823
|
-
|
|
7824
|
-
|
|
7825
|
-
}
|
|
7826
|
-
}
|
|
7827
|
-
|
|
7828
|
-
var parentNode = getProperty$1(node, 'parentNode');
|
|
7829
|
-
mount(vnode, parentNode, node);
|
|
7830
|
-
removeNode(node, parentNode);
|
|
7723
|
+
var getProperty = renderer.getProperty;
|
|
7724
|
+
var parentNode = getProperty(node, 'parentNode');
|
|
7725
|
+
mount(vnode, parentNode, renderer, node);
|
|
7726
|
+
removeNode(node, parentNode, renderer);
|
|
7831
7727
|
return vnode.elm;
|
|
7832
7728
|
}
|
|
7833
7729
|
|
|
7834
|
-
function patchElementPropsAndAttrs(vnode) {
|
|
7835
|
-
applyEventListeners(vnode);
|
|
7836
|
-
patchProps(null, vnode);
|
|
7730
|
+
function patchElementPropsAndAttrs(vnode, renderer) {
|
|
7731
|
+
applyEventListeners(vnode, renderer);
|
|
7732
|
+
patchProps(null, vnode, renderer);
|
|
7837
7733
|
}
|
|
7838
7734
|
|
|
7839
|
-
function hasCorrectNodeType(vnode, node, nodeType) {
|
|
7840
|
-
|
|
7735
|
+
function hasCorrectNodeType(vnode, node, nodeType, renderer) {
|
|
7736
|
+
var getProperty = renderer.getProperty;
|
|
7737
|
+
|
|
7738
|
+
if (getProperty(node, 'nodeType') !== nodeType) {
|
|
7841
7739
|
if (process.env.NODE_ENV !== 'production') {
|
|
7842
7740
|
logError('Hydration mismatch: incorrect node type received', vnode.owner);
|
|
7843
7741
|
}
|
|
@@ -7848,37 +7746,43 @@
|
|
|
7848
7746
|
return true;
|
|
7849
7747
|
}
|
|
7850
7748
|
|
|
7851
|
-
function isMatchingElement(vnode, elm) {
|
|
7852
|
-
|
|
7749
|
+
function isMatchingElement(vnode, elm, renderer) {
|
|
7750
|
+
var getProperty = renderer.getProperty;
|
|
7751
|
+
|
|
7752
|
+
if (vnode.sel.toLowerCase() !== getProperty(elm, 'tagName').toLowerCase()) {
|
|
7853
7753
|
if (process.env.NODE_ENV !== 'production') {
|
|
7854
|
-
logError("Hydration mismatch: expecting element with tag \"".concat(vnode.sel.toLowerCase(), "\" but found \"").concat(getProperty
|
|
7754
|
+
logError("Hydration mismatch: expecting element with tag \"".concat(vnode.sel.toLowerCase(), "\" but found \"").concat(getProperty(elm, 'tagName').toLowerCase(), "\"."), vnode.owner);
|
|
7855
7755
|
}
|
|
7856
7756
|
|
|
7857
7757
|
return false;
|
|
7858
7758
|
}
|
|
7859
7759
|
|
|
7860
|
-
var hasIncompatibleAttrs = validateAttrs(vnode, elm);
|
|
7861
|
-
var hasIncompatibleClass = validateClassAttr(vnode, elm);
|
|
7862
|
-
var hasIncompatibleStyle = validateStyleAttr(vnode, elm);
|
|
7760
|
+
var hasIncompatibleAttrs = validateAttrs(vnode, elm, renderer);
|
|
7761
|
+
var hasIncompatibleClass = validateClassAttr(vnode, elm, renderer);
|
|
7762
|
+
var hasIncompatibleStyle = validateStyleAttr(vnode, elm, renderer);
|
|
7863
7763
|
return hasIncompatibleAttrs && hasIncompatibleClass && hasIncompatibleStyle;
|
|
7864
7764
|
}
|
|
7865
7765
|
|
|
7866
|
-
function validateAttrs(vnode, elm) {
|
|
7766
|
+
function validateAttrs(vnode, elm, renderer) {
|
|
7867
7767
|
var _vnode$data$attrs = vnode.data.attrs,
|
|
7868
7768
|
attrs = _vnode$data$attrs === void 0 ? {} : _vnode$data$attrs;
|
|
7869
7769
|
var nodesAreCompatible = true; // Validate attributes, though we could always recovery from those by running the update mods.
|
|
7870
7770
|
// Note: intentionally ONLY matching vnodes.attrs to elm.attrs, in case SSR is adding extra attributes.
|
|
7871
7771
|
|
|
7872
|
-
for (var
|
|
7873
|
-
var _Object$entries$_i = _slicedToArray(_Object$entries[
|
|
7772
|
+
for (var _i29 = 0, _Object$entries = Object.entries(attrs); _i29 < _Object$entries.length; _i29++) {
|
|
7773
|
+
var _Object$entries$_i = _slicedToArray(_Object$entries[_i29], 2),
|
|
7874
7774
|
attrName = _Object$entries$_i[0],
|
|
7875
7775
|
attrValue = _Object$entries$_i[1];
|
|
7876
7776
|
|
|
7877
|
-
var
|
|
7777
|
+
var owner = vnode.owner;
|
|
7778
|
+
var _getAttribute = renderer.getAttribute;
|
|
7779
|
+
|
|
7780
|
+
var elmAttrValue = _getAttribute(elm, attrName);
|
|
7878
7781
|
|
|
7879
7782
|
if (String(attrValue) !== elmAttrValue) {
|
|
7880
7783
|
if (process.env.NODE_ENV !== 'production') {
|
|
7881
|
-
|
|
7784
|
+
var _getProperty4 = renderer.getProperty;
|
|
7785
|
+
logError("Mismatch hydrating element <".concat(_getProperty4(elm, 'tagName').toLowerCase(), ">: attribute \"").concat(attrName, "\" has different values, expected \"").concat(attrValue, "\" but found \"").concat(elmAttrValue, "\""), owner);
|
|
7882
7786
|
}
|
|
7883
7787
|
|
|
7884
7788
|
nodesAreCompatible = false;
|
|
@@ -7888,20 +7792,22 @@
|
|
|
7888
7792
|
return nodesAreCompatible;
|
|
7889
7793
|
}
|
|
7890
7794
|
|
|
7891
|
-
function validateClassAttr(vnode, elm) {
|
|
7795
|
+
function validateClassAttr(vnode, elm, renderer) {
|
|
7892
7796
|
var _vnode$data = vnode.data,
|
|
7893
7797
|
className = _vnode$data.className,
|
|
7894
7798
|
classMap = _vnode$data.classMap;
|
|
7799
|
+
var getProperty = renderer.getProperty,
|
|
7800
|
+
getClassList = renderer.getClassList;
|
|
7895
7801
|
var nodesAreCompatible = true;
|
|
7896
7802
|
var vnodeClassName;
|
|
7897
7803
|
|
|
7898
|
-
if (!isUndefined$1(className) && String(className) !== getProperty
|
|
7804
|
+
if (!isUndefined$1(className) && String(className) !== getProperty(elm, 'className')) {
|
|
7899
7805
|
// className is used when class is bound to an expr.
|
|
7900
7806
|
nodesAreCompatible = false;
|
|
7901
7807
|
vnodeClassName = className;
|
|
7902
7808
|
} else if (!isUndefined$1(classMap)) {
|
|
7903
7809
|
// classMap is used when class is set to static value.
|
|
7904
|
-
var classList = getClassList
|
|
7810
|
+
var classList = getClassList(elm);
|
|
7905
7811
|
var computedClassName = ''; // all classes from the vnode should be in the element.classList
|
|
7906
7812
|
|
|
7907
7813
|
for (var name in classMap) {
|
|
@@ -7921,18 +7827,19 @@
|
|
|
7921
7827
|
|
|
7922
7828
|
if (!nodesAreCompatible) {
|
|
7923
7829
|
if (process.env.NODE_ENV !== 'production') {
|
|
7924
|
-
logError("Mismatch hydrating element <".concat(getProperty
|
|
7830
|
+
logError("Mismatch hydrating element <".concat(getProperty(elm, 'tagName').toLowerCase(), ">: attribute \"class\" has different values, expected \"").concat(vnodeClassName, "\" but found \"").concat(getProperty(elm, 'className'), "\""), vnode.owner);
|
|
7925
7831
|
}
|
|
7926
7832
|
}
|
|
7927
7833
|
|
|
7928
7834
|
return nodesAreCompatible;
|
|
7929
7835
|
}
|
|
7930
7836
|
|
|
7931
|
-
function validateStyleAttr(vnode, elm) {
|
|
7837
|
+
function validateStyleAttr(vnode, elm, renderer) {
|
|
7932
7838
|
var _vnode$data2 = vnode.data,
|
|
7933
7839
|
style = _vnode$data2.style,
|
|
7934
7840
|
styleDecls = _vnode$data2.styleDecls;
|
|
7935
|
-
var
|
|
7841
|
+
var getAttribute = renderer.getAttribute;
|
|
7842
|
+
var elmStyle = getAttribute(elm, 'style') || '';
|
|
7936
7843
|
var vnodeStyle;
|
|
7937
7844
|
var nodesAreCompatible = true;
|
|
7938
7845
|
|
|
@@ -7943,8 +7850,8 @@
|
|
|
7943
7850
|
var parsedVnodeStyle = parseStyleText(elmStyle);
|
|
7944
7851
|
var expectedStyle = []; // styleMap is used when style is set to static value.
|
|
7945
7852
|
|
|
7946
|
-
for (var
|
|
7947
|
-
var _styleDecls$_i2 = _slicedToArray(styleDecls[
|
|
7853
|
+
for (var _i30 = 0, n = styleDecls.length; _i30 < n; _i30++) {
|
|
7854
|
+
var _styleDecls$_i2 = _slicedToArray(styleDecls[_i30], 3),
|
|
7948
7855
|
prop = _styleDecls$_i2[0],
|
|
7949
7856
|
value = _styleDecls$_i2[1],
|
|
7950
7857
|
important = _styleDecls$_i2[2];
|
|
@@ -7970,7 +7877,8 @@
|
|
|
7970
7877
|
|
|
7971
7878
|
if (!nodesAreCompatible) {
|
|
7972
7879
|
if (process.env.NODE_ENV !== 'production') {
|
|
7973
|
-
|
|
7880
|
+
var _getProperty5 = renderer.getProperty;
|
|
7881
|
+
logError("Mismatch hydrating element <".concat(_getProperty5(elm, 'tagName').toLowerCase(), ">: attribute \"style\" has different values, expected \"").concat(vnodeStyle, "\" but found \"").concat(elmStyle, "\"."), vnode.owner);
|
|
7974
7882
|
}
|
|
7975
7883
|
}
|
|
7976
7884
|
|
|
@@ -8045,7 +7953,7 @@
|
|
|
8045
7953
|
_step3;
|
|
8046
7954
|
|
|
8047
7955
|
try {
|
|
8048
|
-
var
|
|
7956
|
+
var _loop2 = function _loop2() {
|
|
8049
7957
|
var prop = _step3.value;
|
|
8050
7958
|
var originalArrayMethod = getOriginalArrayMethod(prop);
|
|
8051
7959
|
|
|
@@ -8057,7 +7965,7 @@
|
|
|
8057
7965
|
};
|
|
8058
7966
|
|
|
8059
7967
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
8060
|
-
|
|
7968
|
+
_loop2();
|
|
8061
7969
|
}
|
|
8062
7970
|
} catch (err) {
|
|
8063
7971
|
_iterator3.e(err);
|
|
@@ -8078,7 +7986,7 @@
|
|
|
8078
7986
|
_step4;
|
|
8079
7987
|
|
|
8080
7988
|
try {
|
|
8081
|
-
var
|
|
7989
|
+
var _loop3 = function _loop3() {
|
|
8082
7990
|
var prop = _step4.value;
|
|
8083
7991
|
var value = tmpl[prop];
|
|
8084
7992
|
defineProperty(tmpl, prop, {
|
|
@@ -8098,7 +8006,7 @@
|
|
|
8098
8006
|
};
|
|
8099
8007
|
|
|
8100
8008
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
8101
|
-
|
|
8009
|
+
_loop3();
|
|
8102
8010
|
}
|
|
8103
8011
|
} catch (err) {
|
|
8104
8012
|
_iterator4.e(err);
|
|
@@ -8148,7 +8056,7 @@
|
|
|
8148
8056
|
|
|
8149
8057
|
return ctor;
|
|
8150
8058
|
}
|
|
8151
|
-
/* version: 2.
|
|
8059
|
+
/* version: 2.14.2 */
|
|
8152
8060
|
|
|
8153
8061
|
/*
|
|
8154
8062
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -8327,7 +8235,7 @@
|
|
|
8327
8235
|
try {
|
|
8328
8236
|
// dereference HTMLElement global because babel wraps globals in compat mode with a
|
|
8329
8237
|
// _wrapNativeSuper()
|
|
8330
|
-
// This is a problem because LWCUpgradableElement extends renderer.
|
|
8238
|
+
// This is a problem because LWCUpgradableElement extends renderer.HTMLElementExported which does not
|
|
8331
8239
|
// get wrapped by babel.
|
|
8332
8240
|
var HTMLElementAlias = HTMLElement; // In case we use compat mode with a modern browser, the compat mode transformation
|
|
8333
8241
|
// invokes the DOM api with an .apply() or .call() to initialize any DOM api sub-classing,
|
|
@@ -8403,6 +8311,11 @@
|
|
|
8403
8311
|
}
|
|
8404
8312
|
|
|
8405
8313
|
var ssr = false;
|
|
8314
|
+
|
|
8315
|
+
function isHydrating() {
|
|
8316
|
+
return hydrating;
|
|
8317
|
+
}
|
|
8318
|
+
|
|
8406
8319
|
var isNativeShadowDefined = _globalThis[KEY__IS_NATIVE_SHADOW_ROOT_DEFINED];
|
|
8407
8320
|
var isSyntheticShadowDefined = hasOwnProperty$1.call(Element.prototype, KEY__SHADOW_TOKEN);
|
|
8408
8321
|
|
|
@@ -8548,75 +8461,47 @@
|
|
|
8548
8461
|
}
|
|
8549
8462
|
|
|
8550
8463
|
var HTMLElementExported = HTMLElementConstructor;
|
|
8551
|
-
|
|
8552
|
-
|
|
8553
|
-
|
|
8554
|
-
|
|
8555
|
-
|
|
8556
|
-
|
|
8557
|
-
|
|
8558
|
-
|
|
8559
|
-
|
|
8560
|
-
|
|
8561
|
-
|
|
8562
|
-
|
|
8563
|
-
|
|
8564
|
-
|
|
8565
|
-
|
|
8566
|
-
|
|
8567
|
-
|
|
8568
|
-
|
|
8569
|
-
|
|
8570
|
-
|
|
8571
|
-
|
|
8572
|
-
|
|
8573
|
-
|
|
8574
|
-
|
|
8575
|
-
|
|
8576
|
-
|
|
8577
|
-
|
|
8578
|
-
|
|
8579
|
-
|
|
8580
|
-
|
|
8581
|
-
|
|
8582
|
-
|
|
8583
|
-
|
|
8584
|
-
|
|
8585
|
-
|
|
8586
|
-
|
|
8587
|
-
|
|
8588
|
-
|
|
8589
|
-
|
|
8590
|
-
|
|
8591
|
-
|
|
8592
|
-
setSetText(setText);
|
|
8593
|
-
setSsr(ssr);
|
|
8594
|
-
setAddEventListener(addEventListener);
|
|
8595
|
-
setInsertStylesheet(insertStylesheet);
|
|
8596
|
-
/*
|
|
8597
|
-
* Copyright (c) 2018, salesforce.com, inc.
|
|
8598
|
-
* All rights reserved.
|
|
8599
|
-
* SPDX-License-Identifier: MIT
|
|
8600
|
-
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
8601
|
-
*/
|
|
8602
|
-
// @ts-ignore
|
|
8603
|
-
|
|
8604
|
-
if (process.env.NODE_ENV !== 'production' && typeof __karma__ !== 'undefined') {
|
|
8605
|
-
window.addEventListener('test-dummy-flag', function () {
|
|
8606
|
-
var hasFlag = false;
|
|
8607
|
-
|
|
8608
|
-
if (runtimeFlags.DUMMY_TEST_FLAG) {
|
|
8609
|
-
hasFlag = true;
|
|
8610
|
-
}
|
|
8611
|
-
|
|
8612
|
-
window.dispatchEvent(new CustomEvent('has-dummy-flag', {
|
|
8613
|
-
detail: {
|
|
8614
|
-
package: '@lwc/engine-dom',
|
|
8615
|
-
hasFlag: hasFlag
|
|
8616
|
-
}
|
|
8617
|
-
}));
|
|
8618
|
-
});
|
|
8619
|
-
}
|
|
8464
|
+
var renderer = {
|
|
8465
|
+
ssr: ssr,
|
|
8466
|
+
isNativeShadowDefined: isNativeShadowDefined,
|
|
8467
|
+
isSyntheticShadowDefined: isSyntheticShadowDefined,
|
|
8468
|
+
HTMLElementExported: HTMLElementExported,
|
|
8469
|
+
isHydrating: isHydrating,
|
|
8470
|
+
insert: insert,
|
|
8471
|
+
remove: remove,
|
|
8472
|
+
createElement: createElement$1,
|
|
8473
|
+
createText: createText,
|
|
8474
|
+
createComment: createComment,
|
|
8475
|
+
nextSibling: nextSibling,
|
|
8476
|
+
attachShadow: attachShadow,
|
|
8477
|
+
getProperty: getProperty,
|
|
8478
|
+
setProperty: setProperty,
|
|
8479
|
+
setText: setText,
|
|
8480
|
+
getAttribute: getAttribute,
|
|
8481
|
+
setAttribute: setAttribute,
|
|
8482
|
+
removeAttribute: removeAttribute,
|
|
8483
|
+
addEventListener: addEventListener,
|
|
8484
|
+
removeEventListener: removeEventListener,
|
|
8485
|
+
dispatchEvent: dispatchEvent,
|
|
8486
|
+
getClassList: getClassList,
|
|
8487
|
+
setCSSStyleProperty: setCSSStyleProperty,
|
|
8488
|
+
getBoundingClientRect: getBoundingClientRect,
|
|
8489
|
+
querySelector: querySelector,
|
|
8490
|
+
querySelectorAll: querySelectorAll,
|
|
8491
|
+
getElementsByTagName: getElementsByTagName,
|
|
8492
|
+
getElementsByClassName: getElementsByClassName,
|
|
8493
|
+
getChildren: getChildren,
|
|
8494
|
+
getChildNodes: getChildNodes,
|
|
8495
|
+
getFirstChild: getFirstChild,
|
|
8496
|
+
getFirstElementChild: getFirstElementChild,
|
|
8497
|
+
getLastChild: getLastChild,
|
|
8498
|
+
getLastElementChild: getLastElementChild,
|
|
8499
|
+
isConnected: isConnected,
|
|
8500
|
+
insertStylesheet: insertStylesheet,
|
|
8501
|
+
assertInstanceOfHTMLElement: assertInstanceOfHTMLElement,
|
|
8502
|
+
defineCustomElement: defineCustomElement,
|
|
8503
|
+
getCustomElement: getCustomElement
|
|
8504
|
+
};
|
|
8620
8505
|
/*
|
|
8621
8506
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
8622
8507
|
* All rights reserved.
|
|
@@ -8624,7 +8509,6 @@
|
|
|
8624
8509
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
8625
8510
|
*/
|
|
8626
8511
|
|
|
8627
|
-
|
|
8628
8512
|
function resetShadowRootAndLightDom(element, Ctor) {
|
|
8629
8513
|
if (element.shadowRoot) {
|
|
8630
8514
|
var shadowRoot = element.shadowRoot;
|
|
@@ -8642,15 +8526,15 @@
|
|
|
8642
8526
|
}
|
|
8643
8527
|
|
|
8644
8528
|
function createVMWithProps(element, Ctor, props) {
|
|
8645
|
-
var vm = createVM(element, Ctor, {
|
|
8529
|
+
var vm = createVM(element, Ctor, renderer, {
|
|
8646
8530
|
mode: 'open',
|
|
8647
8531
|
owner: null,
|
|
8648
8532
|
tagName: element.tagName.toLowerCase(),
|
|
8649
8533
|
hydrated: true
|
|
8650
8534
|
});
|
|
8651
8535
|
|
|
8652
|
-
for (var
|
|
8653
|
-
var _Object$entries2$_i = _slicedToArray(_Object$entries2[
|
|
8536
|
+
for (var _i31 = 0, _Object$entries2 = Object.entries(props); _i31 < _Object$entries2.length; _i31++) {
|
|
8537
|
+
var _Object$entries2$_i = _slicedToArray(_Object$entries2[_i31], 2),
|
|
8654
8538
|
key = _Object$entries2$_i[0],
|
|
8655
8539
|
value = _Object$entries2$_i[1];
|
|
8656
8540
|
|
|
@@ -8762,7 +8646,7 @@
|
|
|
8762
8646
|
hydrateComponent(_assertThisInitialized(_this6), Ctor, {});
|
|
8763
8647
|
hydratedCustomElements.add(_assertThisInitialized(_this6));
|
|
8764
8648
|
} else {
|
|
8765
|
-
createVM(_assertThisInitialized(_this6), Ctor, {
|
|
8649
|
+
createVM(_assertThisInitialized(_this6), Ctor, renderer, {
|
|
8766
8650
|
mode: 'open',
|
|
8767
8651
|
owner: null,
|
|
8768
8652
|
tagName: _this6.tagName
|
|
@@ -8874,7 +8758,7 @@
|
|
|
8874
8758
|
throw new TypeError("\"createElement\" function expects an \"is\" option with a valid component constructor.");
|
|
8875
8759
|
}
|
|
8876
8760
|
|
|
8877
|
-
var UpgradableConstructor = getUpgradableConstructor(sel);
|
|
8761
|
+
var UpgradableConstructor = getUpgradableConstructor(sel, renderer);
|
|
8878
8762
|
var wasComponentUpgraded = false; // the custom element from the registry is expecting an upgrade callback
|
|
8879
8763
|
|
|
8880
8764
|
/**
|
|
@@ -8885,7 +8769,7 @@
|
|
|
8885
8769
|
*/
|
|
8886
8770
|
|
|
8887
8771
|
var element = new UpgradableConstructor(function (elm) {
|
|
8888
|
-
createVM(elm, Ctor, {
|
|
8772
|
+
createVM(elm, Ctor, renderer, {
|
|
8889
8773
|
tagName: sel,
|
|
8890
8774
|
mode: options.mode !== 'closed' ? 'open' : 'closed',
|
|
8891
8775
|
owner: null
|
|
@@ -8982,7 +8866,7 @@
|
|
|
8982
8866
|
});
|
|
8983
8867
|
freeze(LightningElement);
|
|
8984
8868
|
seal(LightningElement.prototype);
|
|
8985
|
-
/* version: 2.
|
|
8869
|
+
/* version: 2.14.2 */
|
|
8986
8870
|
|
|
8987
8871
|
exports.LightningElement = LightningElement;
|
|
8988
8872
|
exports.__unstable__ProfilerControl = profilerControl;
|
|
@@ -9001,6 +8885,7 @@
|
|
|
9001
8885
|
exports.registerComponent = registerComponent;
|
|
9002
8886
|
exports.registerDecorators = registerDecorators;
|
|
9003
8887
|
exports.registerTemplate = registerTemplate;
|
|
8888
|
+
exports.renderer = renderer;
|
|
9004
8889
|
exports.sanitizeAttribute = sanitizeAttribute;
|
|
9005
8890
|
exports.setFeatureFlag = setFeatureFlag;
|
|
9006
8891
|
exports.setFeatureFlagForTest = setFeatureFlagForTest;
|