lwc 2.14.0 → 2.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/engine-dom/esm/es2017/engine-dom.js +637 -554
- package/dist/engine-dom/iife/es2017/engine-dom.js +639 -553
- package/dist/engine-dom/iife/es2017/engine-dom.min.js +1 -1
- package/dist/engine-dom/iife/es2017/engine-dom_debug.js +574 -497
- package/dist/engine-dom/iife/es5/engine-dom.js +807 -694
- package/dist/engine-dom/iife/es5/engine-dom.min.js +1 -1
- package/dist/engine-dom/iife/es5/engine-dom_debug.js +729 -634
- package/dist/engine-dom/umd/es2017/engine-dom.js +639 -553
- package/dist/engine-dom/umd/es2017/engine-dom.min.js +1 -1
- package/dist/engine-dom/umd/es2017/engine-dom_debug.js +574 -497
- package/dist/engine-dom/umd/es5/engine-dom.js +807 -694
- package/dist/engine-dom/umd/es5/engine-dom.min.js +1 -1
- package/dist/engine-dom/umd/es5/engine-dom_debug.js +729 -634
- package/dist/engine-server/commonjs/es2017/engine-server.js +494 -473
- package/dist/engine-server/commonjs/es2017/engine-server.min.js +1 -1
- package/dist/engine-server/esm/es2017/engine-server.js +492 -474
- package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +24 -4
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +24 -4
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.min.js +2 -2
- package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +24 -4
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +29 -3
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow.min.js +2 -2
- package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +29 -3
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +24 -4
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.min.js +2 -2
- package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +24 -4
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +29 -3
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow.min.js +2 -2
- package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +29 -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
|
@@ -292,6 +292,7 @@ var LWC = (function (exports) {
|
|
|
292
292
|
|
|
293
293
|
var KEY__IS_NATIVE_SHADOW_ROOT_DEFINED = '$isNativeShadowRootDefined$';
|
|
294
294
|
var KEY__SHADOW_RESOLVER = '$shadowResolver$';
|
|
295
|
+
var KEY__SHADOW_STATIC = '$shadowStaticNode$';
|
|
295
296
|
var KEY__SHADOW_TOKEN = '$shadowToken$';
|
|
296
297
|
var KEY__SYNTHETIC_MODE = '$$lwc-synthetic-mode';
|
|
297
298
|
var KEY__SCOPED_CSS = '$scoped$';
|
|
@@ -347,7 +348,7 @@ var LWC = (function (exports) {
|
|
|
347
348
|
var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace';
|
|
348
349
|
var SVG_NAMESPACE = 'http://www.w3.org/2000/svg';
|
|
349
350
|
var XLINK_NAMESPACE = 'http://www.w3.org/1999/xlink';
|
|
350
|
-
/** version: 2.
|
|
351
|
+
/** version: 2.15.0 */
|
|
351
352
|
|
|
352
353
|
/*
|
|
353
354
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -608,231 +609,6 @@ var LWC = (function (exports) {
|
|
|
608
609
|
|
|
609
610
|
return result;
|
|
610
611
|
}
|
|
611
|
-
// Primitives
|
|
612
|
-
//
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
var ssr$1;
|
|
616
|
-
|
|
617
|
-
function setSsr(ssrImpl) {
|
|
618
|
-
ssr$1 = ssrImpl;
|
|
619
|
-
}
|
|
620
|
-
|
|
621
|
-
var isNativeShadowDefined$1;
|
|
622
|
-
|
|
623
|
-
function setIsNativeShadowDefined(isNativeShadowDefinedImpl) {
|
|
624
|
-
isNativeShadowDefined$1 = isNativeShadowDefinedImpl;
|
|
625
|
-
}
|
|
626
|
-
|
|
627
|
-
var isSyntheticShadowDefined$1;
|
|
628
|
-
|
|
629
|
-
function setIsSyntheticShadowDefined(isSyntheticShadowDefinedImpl) {
|
|
630
|
-
isSyntheticShadowDefined$1 = isSyntheticShadowDefinedImpl;
|
|
631
|
-
}
|
|
632
|
-
|
|
633
|
-
var HTMLElementExported$1;
|
|
634
|
-
|
|
635
|
-
function setHTMLElement(HTMLElementImpl) {
|
|
636
|
-
HTMLElementExported$1 = HTMLElementImpl;
|
|
637
|
-
}
|
|
638
|
-
|
|
639
|
-
var insert$1;
|
|
640
|
-
|
|
641
|
-
function setInsert(insertImpl) {
|
|
642
|
-
insert$1 = insertImpl;
|
|
643
|
-
}
|
|
644
|
-
|
|
645
|
-
var remove$1;
|
|
646
|
-
|
|
647
|
-
function setRemove(removeImpl) {
|
|
648
|
-
remove$1 = removeImpl;
|
|
649
|
-
}
|
|
650
|
-
|
|
651
|
-
var createElement$2;
|
|
652
|
-
|
|
653
|
-
function setCreateElement(createElementImpl) {
|
|
654
|
-
createElement$2 = createElementImpl;
|
|
655
|
-
}
|
|
656
|
-
|
|
657
|
-
var createText$1;
|
|
658
|
-
|
|
659
|
-
function setCreateText(createTextImpl) {
|
|
660
|
-
createText$1 = createTextImpl;
|
|
661
|
-
}
|
|
662
|
-
|
|
663
|
-
var createComment$1;
|
|
664
|
-
|
|
665
|
-
function setCreateComment(createCommentImpl) {
|
|
666
|
-
createComment$1 = createCommentImpl;
|
|
667
|
-
}
|
|
668
|
-
|
|
669
|
-
var nextSibling$1;
|
|
670
|
-
|
|
671
|
-
function setNextSibling(nextSiblingImpl) {
|
|
672
|
-
nextSibling$1 = nextSiblingImpl;
|
|
673
|
-
}
|
|
674
|
-
|
|
675
|
-
var attachShadow$1;
|
|
676
|
-
|
|
677
|
-
function setAttachShadow(attachShadowImpl) {
|
|
678
|
-
attachShadow$1 = attachShadowImpl;
|
|
679
|
-
}
|
|
680
|
-
|
|
681
|
-
var getProperty$1;
|
|
682
|
-
|
|
683
|
-
function setGetProperty(getPropertyImpl) {
|
|
684
|
-
getProperty$1 = getPropertyImpl;
|
|
685
|
-
}
|
|
686
|
-
|
|
687
|
-
var setProperty$1;
|
|
688
|
-
|
|
689
|
-
function setSetProperty(setPropertyImpl) {
|
|
690
|
-
setProperty$1 = setPropertyImpl;
|
|
691
|
-
}
|
|
692
|
-
|
|
693
|
-
var setText$1;
|
|
694
|
-
|
|
695
|
-
function setSetText(setTextImpl) {
|
|
696
|
-
setText$1 = setTextImpl;
|
|
697
|
-
}
|
|
698
|
-
|
|
699
|
-
var getAttribute$1;
|
|
700
|
-
|
|
701
|
-
function setGetAttribute(getAttributeImpl) {
|
|
702
|
-
getAttribute$1 = getAttributeImpl;
|
|
703
|
-
}
|
|
704
|
-
|
|
705
|
-
var setAttribute$1;
|
|
706
|
-
|
|
707
|
-
function setSetAttribute(setAttributeImpl) {
|
|
708
|
-
setAttribute$1 = setAttributeImpl;
|
|
709
|
-
}
|
|
710
|
-
|
|
711
|
-
var removeAttribute$1;
|
|
712
|
-
|
|
713
|
-
function setRemoveAttribute(removeAttributeImpl) {
|
|
714
|
-
removeAttribute$1 = removeAttributeImpl;
|
|
715
|
-
}
|
|
716
|
-
|
|
717
|
-
var addEventListener$1;
|
|
718
|
-
|
|
719
|
-
function setAddEventListener(addEventListenerImpl) {
|
|
720
|
-
addEventListener$1 = addEventListenerImpl;
|
|
721
|
-
}
|
|
722
|
-
|
|
723
|
-
var removeEventListener$1;
|
|
724
|
-
|
|
725
|
-
function setRemoveEventListener(removeEventListenerImpl) {
|
|
726
|
-
removeEventListener$1 = removeEventListenerImpl;
|
|
727
|
-
}
|
|
728
|
-
|
|
729
|
-
var dispatchEvent$1;
|
|
730
|
-
|
|
731
|
-
function setDispatchEvent(dispatchEventImpl) {
|
|
732
|
-
dispatchEvent$1 = dispatchEventImpl;
|
|
733
|
-
}
|
|
734
|
-
|
|
735
|
-
var getClassList$1;
|
|
736
|
-
|
|
737
|
-
function setGetClassList(getClassListImpl) {
|
|
738
|
-
getClassList$1 = getClassListImpl;
|
|
739
|
-
}
|
|
740
|
-
|
|
741
|
-
var setCSSStyleProperty$1;
|
|
742
|
-
|
|
743
|
-
function setSetCSSStyleProperty(setCSSStylePropertyImpl) {
|
|
744
|
-
setCSSStyleProperty$1 = setCSSStylePropertyImpl;
|
|
745
|
-
}
|
|
746
|
-
|
|
747
|
-
var getBoundingClientRect$1;
|
|
748
|
-
|
|
749
|
-
function setGetBoundingClientRect(getBoundingClientRectImpl) {
|
|
750
|
-
getBoundingClientRect$1 = getBoundingClientRectImpl;
|
|
751
|
-
}
|
|
752
|
-
|
|
753
|
-
var querySelector$1;
|
|
754
|
-
|
|
755
|
-
function setQuerySelector(querySelectorImpl) {
|
|
756
|
-
querySelector$1 = querySelectorImpl;
|
|
757
|
-
}
|
|
758
|
-
|
|
759
|
-
var querySelectorAll$1;
|
|
760
|
-
|
|
761
|
-
function setQuerySelectorAll(querySelectorAllImpl) {
|
|
762
|
-
querySelectorAll$1 = querySelectorAllImpl;
|
|
763
|
-
}
|
|
764
|
-
|
|
765
|
-
var getElementsByTagName$1;
|
|
766
|
-
|
|
767
|
-
function setGetElementsByTagName(getElementsByTagNameImpl) {
|
|
768
|
-
getElementsByTagName$1 = getElementsByTagNameImpl;
|
|
769
|
-
}
|
|
770
|
-
|
|
771
|
-
var getElementsByClassName$1;
|
|
772
|
-
|
|
773
|
-
function setGetElementsByClassName(getElementsByClassNameImpl) {
|
|
774
|
-
getElementsByClassName$1 = getElementsByClassNameImpl;
|
|
775
|
-
}
|
|
776
|
-
|
|
777
|
-
var getChildren$1;
|
|
778
|
-
|
|
779
|
-
function setGetChildren(getChildrenImpl) {
|
|
780
|
-
getChildren$1 = getChildrenImpl;
|
|
781
|
-
}
|
|
782
|
-
|
|
783
|
-
var getChildNodes$1;
|
|
784
|
-
|
|
785
|
-
function setGetChildNodes(getChildNodesImpl) {
|
|
786
|
-
getChildNodes$1 = getChildNodesImpl;
|
|
787
|
-
}
|
|
788
|
-
|
|
789
|
-
var getFirstChild$1;
|
|
790
|
-
|
|
791
|
-
function setGetFirstChild(getFirstChildImpl) {
|
|
792
|
-
getFirstChild$1 = getFirstChildImpl;
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
var getFirstElementChild$1;
|
|
796
|
-
|
|
797
|
-
function setGetFirstElementChild(getFirstElementChildImpl) {
|
|
798
|
-
getFirstElementChild$1 = getFirstElementChildImpl;
|
|
799
|
-
}
|
|
800
|
-
|
|
801
|
-
var getLastChild$1;
|
|
802
|
-
|
|
803
|
-
function setGetLastChild(getLastChildImpl) {
|
|
804
|
-
getLastChild$1 = getLastChildImpl;
|
|
805
|
-
}
|
|
806
|
-
|
|
807
|
-
var getLastElementChild$1;
|
|
808
|
-
|
|
809
|
-
function setGetLastElementChild(getLastElementChildImpl) {
|
|
810
|
-
getLastElementChild$1 = getLastElementChildImpl;
|
|
811
|
-
}
|
|
812
|
-
|
|
813
|
-
var isConnected$1;
|
|
814
|
-
|
|
815
|
-
function setIsConnected(isConnectedImpl) {
|
|
816
|
-
isConnected$1 = isConnectedImpl;
|
|
817
|
-
}
|
|
818
|
-
|
|
819
|
-
var insertStylesheet$1;
|
|
820
|
-
|
|
821
|
-
function setInsertStylesheet(insertStylesheetImpl) {
|
|
822
|
-
insertStylesheet$1 = insertStylesheetImpl;
|
|
823
|
-
}
|
|
824
|
-
|
|
825
|
-
var defineCustomElement$1;
|
|
826
|
-
|
|
827
|
-
function setDefineCustomElement(defineCustomElementImpl) {
|
|
828
|
-
defineCustomElement$1 = defineCustomElementImpl;
|
|
829
|
-
}
|
|
830
|
-
|
|
831
|
-
var getCustomElement$1;
|
|
832
|
-
|
|
833
|
-
function setGetCustomElement(getCustomElementImpl) {
|
|
834
|
-
getCustomElement$1 = getCustomElementImpl;
|
|
835
|
-
}
|
|
836
612
|
/*
|
|
837
613
|
* Copyright (c) 2019, salesforce.com, inc.
|
|
838
614
|
* All rights reserved.
|
|
@@ -2010,13 +1786,14 @@ var LWC = (function (exports) {
|
|
|
2010
1786
|
};
|
|
2011
1787
|
|
|
2012
1788
|
function doAttachShadow(vm) {
|
|
2013
|
-
var _attachShadow
|
|
1789
|
+
var _attachShadow;
|
|
2014
1790
|
|
|
2015
1791
|
var elm = vm.elm,
|
|
2016
1792
|
mode = vm.mode,
|
|
2017
1793
|
shadowMode = vm.shadowMode,
|
|
2018
|
-
ctor = vm.def.ctor
|
|
2019
|
-
|
|
1794
|
+
ctor = vm.def.ctor,
|
|
1795
|
+
attachShadow = vm.renderer.attachShadow;
|
|
1796
|
+
var shadowRoot = attachShadow(elm, (_attachShadow = {}, _defineProperty(_attachShadow, KEY__SYNTHETIC_MODE, shadowMode === 1), _defineProperty(_attachShadow, "delegatesFocus", Boolean(ctor.delegatesFocus)), _defineProperty(_attachShadow, "mode", mode), _attachShadow));
|
|
2020
1797
|
vm.shadowRoot = shadowRoot;
|
|
2021
1798
|
associateVM(shadowRoot, vm);
|
|
2022
1799
|
|
|
@@ -2027,99 +1804,106 @@ var LWC = (function (exports) {
|
|
|
2027
1804
|
LightningElement.prototype = {
|
|
2028
1805
|
constructor: LightningElement,
|
|
2029
1806
|
dispatchEvent: function dispatchEvent(event) {
|
|
2030
|
-
var
|
|
2031
|
-
|
|
2032
|
-
|
|
2033
|
-
return dispatchEvent
|
|
1807
|
+
var vm = getAssociatedVM(this);
|
|
1808
|
+
var elm = vm.elm,
|
|
1809
|
+
dispatchEvent = vm.renderer.dispatchEvent;
|
|
1810
|
+
return dispatchEvent(elm, event);
|
|
2034
1811
|
},
|
|
2035
1812
|
addEventListener: function addEventListener(type, listener, options) {
|
|
2036
1813
|
var vm = getAssociatedVM(this);
|
|
2037
|
-
var elm = vm.elm
|
|
1814
|
+
var elm = vm.elm,
|
|
1815
|
+
addEventListener = vm.renderer.addEventListener;
|
|
2038
1816
|
|
|
2039
1817
|
var wrappedListener = getWrappedComponentsListener(vm, listener);
|
|
2040
|
-
addEventListener
|
|
1818
|
+
addEventListener(elm, type, wrappedListener, options);
|
|
2041
1819
|
},
|
|
2042
1820
|
removeEventListener: function removeEventListener(type, listener, options) {
|
|
2043
1821
|
var vm = getAssociatedVM(this);
|
|
2044
|
-
var elm = vm.elm
|
|
1822
|
+
var elm = vm.elm,
|
|
1823
|
+
removeEventListener = vm.renderer.removeEventListener;
|
|
2045
1824
|
var wrappedListener = getWrappedComponentsListener(vm, listener);
|
|
2046
|
-
removeEventListener
|
|
1825
|
+
removeEventListener(elm, type, wrappedListener, options);
|
|
2047
1826
|
},
|
|
2048
1827
|
hasAttribute: function hasAttribute(name) {
|
|
2049
|
-
var
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
return !isNull(getAttribute
|
|
1828
|
+
var vm = getAssociatedVM(this);
|
|
1829
|
+
var elm = vm.elm,
|
|
1830
|
+
getAttribute = vm.renderer.getAttribute;
|
|
1831
|
+
return !isNull(getAttribute(elm, name));
|
|
2053
1832
|
},
|
|
2054
1833
|
hasAttributeNS: function hasAttributeNS(namespace, name) {
|
|
2055
|
-
var
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
return !isNull(getAttribute
|
|
1834
|
+
var vm = getAssociatedVM(this);
|
|
1835
|
+
var elm = vm.elm,
|
|
1836
|
+
getAttribute = vm.renderer.getAttribute;
|
|
1837
|
+
return !isNull(getAttribute(elm, name, namespace));
|
|
2059
1838
|
},
|
|
2060
1839
|
removeAttribute: function removeAttribute(name) {
|
|
2061
|
-
var
|
|
2062
|
-
|
|
2063
|
-
|
|
1840
|
+
var vm = getAssociatedVM(this);
|
|
1841
|
+
var elm = vm.elm,
|
|
1842
|
+
removeAttribute = vm.renderer.removeAttribute;
|
|
2064
1843
|
unlockAttribute(elm, name);
|
|
2065
|
-
removeAttribute
|
|
1844
|
+
removeAttribute(elm, name);
|
|
2066
1845
|
lockAttribute();
|
|
2067
1846
|
},
|
|
2068
1847
|
removeAttributeNS: function removeAttributeNS(namespace, name) {
|
|
2069
|
-
var
|
|
2070
|
-
elm =
|
|
1848
|
+
var _getAssociatedVM = getAssociatedVM(this),
|
|
1849
|
+
elm = _getAssociatedVM.elm,
|
|
1850
|
+
removeAttribute = _getAssociatedVM.renderer.removeAttribute;
|
|
2071
1851
|
|
|
2072
1852
|
unlockAttribute(elm, name);
|
|
2073
|
-
removeAttribute
|
|
1853
|
+
removeAttribute(elm, name, namespace);
|
|
2074
1854
|
lockAttribute();
|
|
2075
1855
|
},
|
|
2076
1856
|
getAttribute: function getAttribute(name) {
|
|
2077
|
-
var
|
|
2078
|
-
|
|
2079
|
-
|
|
2080
|
-
return getAttribute
|
|
1857
|
+
var vm = getAssociatedVM(this);
|
|
1858
|
+
var elm = vm.elm;
|
|
1859
|
+
var getAttribute = vm.renderer.getAttribute;
|
|
1860
|
+
return getAttribute(elm, name);
|
|
2081
1861
|
},
|
|
2082
1862
|
getAttributeNS: function getAttributeNS(namespace, name) {
|
|
2083
|
-
var
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
return getAttribute
|
|
1863
|
+
var vm = getAssociatedVM(this);
|
|
1864
|
+
var elm = vm.elm;
|
|
1865
|
+
var getAttribute = vm.renderer.getAttribute;
|
|
1866
|
+
return getAttribute(elm, name, namespace);
|
|
2087
1867
|
},
|
|
2088
1868
|
setAttribute: function setAttribute(name, value) {
|
|
2089
1869
|
var vm = getAssociatedVM(this);
|
|
2090
|
-
var elm = vm.elm
|
|
1870
|
+
var elm = vm.elm,
|
|
1871
|
+
setAttribute = vm.renderer.setAttribute;
|
|
2091
1872
|
|
|
2092
1873
|
unlockAttribute(elm, name);
|
|
2093
|
-
setAttribute
|
|
1874
|
+
setAttribute(elm, name, value);
|
|
2094
1875
|
lockAttribute();
|
|
2095
1876
|
},
|
|
2096
1877
|
setAttributeNS: function setAttributeNS(namespace, name, value) {
|
|
2097
1878
|
var vm = getAssociatedVM(this);
|
|
2098
|
-
var elm = vm.elm
|
|
1879
|
+
var elm = vm.elm,
|
|
1880
|
+
setAttribute = vm.renderer.setAttribute;
|
|
2099
1881
|
|
|
2100
1882
|
unlockAttribute(elm, name);
|
|
2101
|
-
setAttribute
|
|
1883
|
+
setAttribute(elm, name, value, namespace);
|
|
2102
1884
|
lockAttribute();
|
|
2103
1885
|
},
|
|
2104
1886
|
getBoundingClientRect: function getBoundingClientRect() {
|
|
2105
1887
|
var vm = getAssociatedVM(this);
|
|
2106
|
-
var elm = vm.elm
|
|
1888
|
+
var elm = vm.elm,
|
|
1889
|
+
getBoundingClientRect = vm.renderer.getBoundingClientRect;
|
|
2107
1890
|
|
|
2108
|
-
return getBoundingClientRect
|
|
1891
|
+
return getBoundingClientRect(elm);
|
|
2109
1892
|
},
|
|
2110
1893
|
|
|
2111
1894
|
get isConnected() {
|
|
2112
|
-
var
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
return isConnected
|
|
1895
|
+
var vm = getAssociatedVM(this);
|
|
1896
|
+
var elm = vm.elm,
|
|
1897
|
+
isConnected = vm.renderer.isConnected;
|
|
1898
|
+
return isConnected(elm);
|
|
2116
1899
|
},
|
|
2117
1900
|
|
|
2118
1901
|
get classList() {
|
|
2119
1902
|
var vm = getAssociatedVM(this);
|
|
2120
|
-
var elm = vm.elm
|
|
1903
|
+
var elm = vm.elm,
|
|
1904
|
+
getClassList = vm.renderer.getClassList;
|
|
2121
1905
|
|
|
2122
|
-
return getClassList
|
|
1906
|
+
return getClassList(elm);
|
|
2123
1907
|
},
|
|
2124
1908
|
|
|
2125
1909
|
get template() {
|
|
@@ -2134,89 +1918,69 @@ var LWC = (function (exports) {
|
|
|
2134
1918
|
return null;
|
|
2135
1919
|
},
|
|
2136
1920
|
|
|
2137
|
-
|
|
2138
|
-
var vm = getAssociatedVM(this);
|
|
2139
|
-
return vm.def.template;
|
|
2140
|
-
},
|
|
2141
|
-
toString: function toString() {
|
|
1921
|
+
get children() {
|
|
2142
1922
|
var vm = getAssociatedVM(this);
|
|
2143
|
-
|
|
2144
|
-
}
|
|
2145
|
-
};
|
|
2146
|
-
var queryAndChildGetterDescriptors = create(null); // The reason we don't just call `import * as renderer from '../renderer'` here is that the bundle size
|
|
2147
|
-
// is smaller if we reference each function individually. Otherwise Rollup will create one big frozen
|
|
2148
|
-
// object representing the renderer, with a lot of methods we don't actually need.
|
|
1923
|
+
var renderer = vm.renderer;
|
|
2149
1924
|
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
function getChildGetter(methodName) {
|
|
2153
|
-
switch (methodName) {
|
|
2154
|
-
case 'children':
|
|
2155
|
-
return getChildren$1;
|
|
2156
|
-
|
|
2157
|
-
case 'childNodes':
|
|
2158
|
-
return getChildNodes$1;
|
|
2159
|
-
|
|
2160
|
-
case 'firstChild':
|
|
2161
|
-
return getFirstChild$1;
|
|
2162
|
-
|
|
2163
|
-
case 'firstElementChild':
|
|
2164
|
-
return getFirstElementChild$1;
|
|
1925
|
+
return renderer.getChildren(vm.elm);
|
|
1926
|
+
},
|
|
2165
1927
|
|
|
2166
|
-
|
|
2167
|
-
|
|
1928
|
+
get childNodes() {
|
|
1929
|
+
var vm = getAssociatedVM(this);
|
|
1930
|
+
var renderer = vm.renderer;
|
|
2168
1931
|
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
}
|
|
2172
|
-
} // Generic passthrough for child getters on HTMLElement to the relevant Renderer APIs
|
|
1932
|
+
return renderer.getChildNodes(vm.elm);
|
|
1933
|
+
},
|
|
2173
1934
|
|
|
1935
|
+
get firstChild() {
|
|
1936
|
+
var vm = getAssociatedVM(this);
|
|
1937
|
+
var renderer = vm.renderer;
|
|
2174
1938
|
|
|
2175
|
-
|
|
2176
|
-
|
|
2177
|
-
queryAndChildGetterDescriptors[childGetter] = {
|
|
2178
|
-
get: function get() {
|
|
2179
|
-
var vm = getAssociatedVM(this);
|
|
2180
|
-
var elm = vm.elm;
|
|
1939
|
+
return renderer.getFirstChild(vm.elm);
|
|
1940
|
+
},
|
|
2181
1941
|
|
|
2182
|
-
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
enumerable: true
|
|
2186
|
-
};
|
|
2187
|
-
};
|
|
1942
|
+
get firstElementChild() {
|
|
1943
|
+
var vm = getAssociatedVM(this);
|
|
1944
|
+
var renderer = vm.renderer;
|
|
2188
1945
|
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
}
|
|
1946
|
+
return renderer.getFirstElementChild(vm.elm);
|
|
1947
|
+
},
|
|
2192
1948
|
|
|
2193
|
-
|
|
1949
|
+
get lastChild() {
|
|
1950
|
+
var vm = getAssociatedVM(this);
|
|
1951
|
+
var renderer = vm.renderer;
|
|
2194
1952
|
|
|
2195
|
-
|
|
2196
|
-
|
|
2197
|
-
case 'getElementsByClassName':
|
|
2198
|
-
return getElementsByClassName$1;
|
|
1953
|
+
return renderer.getLastChild(vm.elm);
|
|
1954
|
+
},
|
|
2199
1955
|
|
|
2200
|
-
|
|
2201
|
-
|
|
1956
|
+
get lastElementChild() {
|
|
1957
|
+
var vm = getAssociatedVM(this);
|
|
1958
|
+
var renderer = vm.renderer;
|
|
2202
1959
|
|
|
2203
|
-
|
|
2204
|
-
|
|
1960
|
+
return renderer.getLastElementChild(vm.elm);
|
|
1961
|
+
},
|
|
2205
1962
|
|
|
2206
|
-
|
|
2207
|
-
|
|
1963
|
+
render: function render() {
|
|
1964
|
+
var vm = getAssociatedVM(this);
|
|
1965
|
+
return vm.def.template;
|
|
1966
|
+
},
|
|
1967
|
+
toString: function toString() {
|
|
1968
|
+
var vm = getAssociatedVM(this);
|
|
1969
|
+
return "[object ".concat(vm.def.name, "]");
|
|
2208
1970
|
}
|
|
2209
|
-
}
|
|
2210
|
-
|
|
1971
|
+
};
|
|
1972
|
+
var queryAndChildGetterDescriptors = create(null);
|
|
1973
|
+
var queryMethods = ['getElementsByClassName', 'getElementsByTagName', 'querySelector', 'querySelectorAll']; // Generic passthrough for query APIs on HTMLElement to the relevant Renderer APIs
|
|
2211
1974
|
|
|
2212
|
-
var
|
|
2213
|
-
var queryMethod = _queryMethods[
|
|
1975
|
+
var _loop = function _loop() {
|
|
1976
|
+
var queryMethod = _queryMethods[_i7];
|
|
2214
1977
|
queryAndChildGetterDescriptors[queryMethod] = {
|
|
2215
1978
|
value: function value(arg) {
|
|
2216
1979
|
var vm = getAssociatedVM(this);
|
|
2217
|
-
var elm = vm.elm
|
|
1980
|
+
var elm = vm.elm,
|
|
1981
|
+
renderer = vm.renderer;
|
|
2218
1982
|
|
|
2219
|
-
return
|
|
1983
|
+
return renderer[queryMethod](elm, arg);
|
|
2220
1984
|
},
|
|
2221
1985
|
configurable: true,
|
|
2222
1986
|
enumerable: true,
|
|
@@ -2224,8 +1988,8 @@ var LWC = (function (exports) {
|
|
|
2224
1988
|
};
|
|
2225
1989
|
};
|
|
2226
1990
|
|
|
2227
|
-
for (var
|
|
2228
|
-
|
|
1991
|
+
for (var _i7 = 0, _queryMethods = queryMethods; _i7 < _queryMethods.length; _i7++) {
|
|
1992
|
+
_loop();
|
|
2229
1993
|
}
|
|
2230
1994
|
|
|
2231
1995
|
defineProperties(LightningElement.prototype, queryAndChildGetterDescriptors);
|
|
@@ -2585,8 +2349,8 @@ var LWC = (function (exports) {
|
|
|
2585
2349
|
}
|
|
2586
2350
|
|
|
2587
2351
|
if (!isUndefined$1(fields)) {
|
|
2588
|
-
for (var
|
|
2589
|
-
var _fieldName2 = fields[
|
|
2352
|
+
for (var _i8 = 0, n = fields.length; _i8 < n; _i8++) {
|
|
2353
|
+
var _fieldName2 = fields[_i8];
|
|
2590
2354
|
descriptor = getOwnPropertyDescriptor$1(proto, _fieldName2);
|
|
2591
2355
|
// tracked property. This is only here for backward compatibility purposes.
|
|
2592
2356
|
|
|
@@ -2840,8 +2604,8 @@ var LWC = (function (exports) {
|
|
|
2840
2604
|
superObservedAttributes = _SuperClass$observedA === void 0 ? [] : _SuperClass$observedA;
|
|
2841
2605
|
var descriptors = create(null); // expose getters and setters for each public props on the new Element Bridge
|
|
2842
2606
|
|
|
2843
|
-
for (var
|
|
2844
|
-
var _propName = props[
|
|
2607
|
+
for (var _i9 = 0, len = props.length; _i9 < len; _i9 += 1) {
|
|
2608
|
+
var _propName = props[_i9];
|
|
2845
2609
|
attributeToPropMap[htmlPropertyToAttribute(_propName)] = _propName;
|
|
2846
2610
|
descriptors[_propName] = {
|
|
2847
2611
|
get: createGetter(_propName),
|
|
@@ -2852,8 +2616,8 @@ var LWC = (function (exports) {
|
|
|
2852
2616
|
} // expose public methods as props on the new Element Bridge
|
|
2853
2617
|
|
|
2854
2618
|
|
|
2855
|
-
for (var
|
|
2856
|
-
var methodName = methods[
|
|
2619
|
+
for (var _i10 = 0, _len3 = methods.length; _i10 < _len3; _i10 += 1) {
|
|
2620
|
+
var methodName = methods[_i10];
|
|
2857
2621
|
descriptors[methodName] = {
|
|
2858
2622
|
value: createMethodCaller(methodName),
|
|
2859
2623
|
writable: true,
|
|
@@ -3156,12 +2920,15 @@ var LWC = (function (exports) {
|
|
|
3156
2920
|
*/
|
|
3157
2921
|
|
|
3158
2922
|
|
|
3159
|
-
function getUpgradableConstructor(tagName) {
|
|
3160
|
-
|
|
2923
|
+
function getUpgradableConstructor(tagName, renderer) {
|
|
2924
|
+
var getCustomElement = renderer.getCustomElement,
|
|
2925
|
+
RendererHTMLElement = renderer.HTMLElementExported,
|
|
2926
|
+
defineCustomElement = renderer.defineCustomElement; // Should never get a tag with upper case letter at this point, the compiler should
|
|
3161
2927
|
// produce only tags with lowercase letters
|
|
3162
2928
|
// But, for backwards compatibility, we will lower case the tagName
|
|
2929
|
+
|
|
3163
2930
|
tagName = tagName.toLowerCase();
|
|
3164
|
-
var CE = getCustomElement
|
|
2931
|
+
var CE = getCustomElement(tagName);
|
|
3165
2932
|
|
|
3166
2933
|
if (!isUndefined$1(CE)) {
|
|
3167
2934
|
return CE;
|
|
@@ -3172,8 +2939,8 @@ var LWC = (function (exports) {
|
|
|
3172
2939
|
*/
|
|
3173
2940
|
|
|
3174
2941
|
|
|
3175
|
-
CE = /*#__PURE__*/function (
|
|
3176
|
-
_inherits(LWCUpgradableElement,
|
|
2942
|
+
CE = /*#__PURE__*/function (_RendererHTMLElement) {
|
|
2943
|
+
_inherits(LWCUpgradableElement, _RendererHTMLElement);
|
|
3177
2944
|
|
|
3178
2945
|
var _super5 = _createSuper(LWCUpgradableElement);
|
|
3179
2946
|
|
|
@@ -3192,9 +2959,9 @@ var LWC = (function (exports) {
|
|
|
3192
2959
|
}
|
|
3193
2960
|
|
|
3194
2961
|
return _createClass(LWCUpgradableElement);
|
|
3195
|
-
}(
|
|
2962
|
+
}(RendererHTMLElement);
|
|
3196
2963
|
|
|
3197
|
-
defineCustomElement
|
|
2964
|
+
defineCustomElement(tagName, CE);
|
|
3198
2965
|
return CE;
|
|
3199
2966
|
}
|
|
3200
2967
|
/*
|
|
@@ -3227,7 +2994,7 @@ var LWC = (function (exports) {
|
|
|
3227
2994
|
|
|
3228
2995
|
var ColonCharCode = 58;
|
|
3229
2996
|
|
|
3230
|
-
function patchAttributes(oldVnode, vnode) {
|
|
2997
|
+
function patchAttributes(oldVnode, vnode, renderer) {
|
|
3231
2998
|
var attrs = vnode.data.attrs;
|
|
3232
2999
|
|
|
3233
3000
|
if (isUndefined$1(attrs)) {
|
|
@@ -3241,6 +3008,8 @@ var LWC = (function (exports) {
|
|
|
3241
3008
|
}
|
|
3242
3009
|
|
|
3243
3010
|
var elm = vnode.elm;
|
|
3011
|
+
var setAttribute = renderer.setAttribute,
|
|
3012
|
+
removeAttribute = renderer.removeAttribute;
|
|
3244
3013
|
|
|
3245
3014
|
for (var key in attrs) {
|
|
3246
3015
|
var cur = attrs[key];
|
|
@@ -3251,14 +3020,14 @@ var LWC = (function (exports) {
|
|
|
3251
3020
|
|
|
3252
3021
|
if (StringCharCodeAt.call(key, 3) === ColonCharCode) {
|
|
3253
3022
|
// Assume xml namespace
|
|
3254
|
-
setAttribute
|
|
3023
|
+
setAttribute(elm, key, cur, XML_NAMESPACE);
|
|
3255
3024
|
} else if (StringCharCodeAt.call(key, 5) === ColonCharCode) {
|
|
3256
3025
|
// Assume xlink namespace
|
|
3257
|
-
setAttribute
|
|
3026
|
+
setAttribute(elm, key, cur, XLINK_NAMESPACE);
|
|
3258
3027
|
} else if (isNull(cur) || isUndefined$1(cur)) {
|
|
3259
|
-
removeAttribute
|
|
3028
|
+
removeAttribute(elm, key);
|
|
3260
3029
|
} else {
|
|
3261
|
-
setAttribute
|
|
3030
|
+
setAttribute(elm, key, cur);
|
|
3262
3031
|
}
|
|
3263
3032
|
|
|
3264
3033
|
lockAttribute();
|
|
@@ -3279,7 +3048,7 @@ var LWC = (function (exports) {
|
|
|
3279
3048
|
return sel === 'input' && (key === 'value' || key === 'checked');
|
|
3280
3049
|
}
|
|
3281
3050
|
|
|
3282
|
-
function patchProps(oldVnode, vnode) {
|
|
3051
|
+
function patchProps(oldVnode, vnode, renderer) {
|
|
3283
3052
|
var props = vnode.data.props;
|
|
3284
3053
|
|
|
3285
3054
|
if (isUndefined$1(props)) {
|
|
@@ -3295,13 +3064,15 @@ var LWC = (function (exports) {
|
|
|
3295
3064
|
var isFirstPatch = isNull(oldVnode);
|
|
3296
3065
|
var elm = vnode.elm,
|
|
3297
3066
|
sel = vnode.sel;
|
|
3067
|
+
var getProperty = renderer.getProperty,
|
|
3068
|
+
setProperty = renderer.setProperty;
|
|
3298
3069
|
|
|
3299
3070
|
for (var key in props) {
|
|
3300
3071
|
var cur = props[key]; // Set the property if it's the first time is is patched or if the previous property is
|
|
3301
3072
|
// different than the one previously set.
|
|
3302
3073
|
|
|
3303
|
-
if (isFirstPatch || cur !== (isLiveBindingProp(sel, key) ? getProperty
|
|
3304
|
-
setProperty
|
|
3074
|
+
if (isFirstPatch || cur !== (isLiveBindingProp(sel, key) ? getProperty(elm, key) : oldProps[key])) {
|
|
3075
|
+
setProperty(elm, key, cur);
|
|
3305
3076
|
}
|
|
3306
3077
|
}
|
|
3307
3078
|
}
|
|
@@ -3353,7 +3124,7 @@ var LWC = (function (exports) {
|
|
|
3353
3124
|
return map;
|
|
3354
3125
|
}
|
|
3355
3126
|
|
|
3356
|
-
function patchClassAttribute(oldVnode, vnode) {
|
|
3127
|
+
function patchClassAttribute(oldVnode, vnode, renderer) {
|
|
3357
3128
|
var elm = vnode.elm,
|
|
3358
3129
|
newClass = vnode.data.className;
|
|
3359
3130
|
var oldClass = isNull(oldVnode) ? undefined : oldVnode.data.className;
|
|
@@ -3362,7 +3133,8 @@ var LWC = (function (exports) {
|
|
|
3362
3133
|
return;
|
|
3363
3134
|
}
|
|
3364
3135
|
|
|
3365
|
-
var
|
|
3136
|
+
var getClassList = renderer.getClassList;
|
|
3137
|
+
var classList = getClassList(elm);
|
|
3366
3138
|
var newClassMap = getMapFromClassName(newClass);
|
|
3367
3139
|
var oldClassMap = getMapFromClassName(oldClass);
|
|
3368
3140
|
var name;
|
|
@@ -3389,7 +3161,7 @@ var LWC = (function (exports) {
|
|
|
3389
3161
|
// The style property is a string when defined via an expression in the template.
|
|
3390
3162
|
|
|
3391
3163
|
|
|
3392
|
-
function patchStyleAttribute(oldVnode, vnode) {
|
|
3164
|
+
function patchStyleAttribute(oldVnode, vnode, renderer) {
|
|
3393
3165
|
var elm = vnode.elm,
|
|
3394
3166
|
newStyle = vnode.data.style;
|
|
3395
3167
|
var oldStyle = isNull(oldVnode) ? undefined : oldVnode.data.style;
|
|
@@ -3398,10 +3170,13 @@ var LWC = (function (exports) {
|
|
|
3398
3170
|
return;
|
|
3399
3171
|
}
|
|
3400
3172
|
|
|
3173
|
+
var setAttribute = renderer.setAttribute,
|
|
3174
|
+
removeAttribute = renderer.removeAttribute;
|
|
3175
|
+
|
|
3401
3176
|
if (!isString(newStyle) || newStyle === '') {
|
|
3402
|
-
removeAttribute
|
|
3177
|
+
removeAttribute(elm, 'style');
|
|
3403
3178
|
} else {
|
|
3404
|
-
setAttribute
|
|
3179
|
+
setAttribute(elm, 'style', newStyle);
|
|
3405
3180
|
}
|
|
3406
3181
|
}
|
|
3407
3182
|
/*
|
|
@@ -3412,7 +3187,7 @@ var LWC = (function (exports) {
|
|
|
3412
3187
|
*/
|
|
3413
3188
|
|
|
3414
3189
|
|
|
3415
|
-
function applyEventListeners(vnode) {
|
|
3190
|
+
function applyEventListeners(vnode, renderer) {
|
|
3416
3191
|
var elm = vnode.elm,
|
|
3417
3192
|
on = vnode.data.on;
|
|
3418
3193
|
|
|
@@ -3420,9 +3195,11 @@ var LWC = (function (exports) {
|
|
|
3420
3195
|
return;
|
|
3421
3196
|
}
|
|
3422
3197
|
|
|
3198
|
+
var addEventListener = renderer.addEventListener;
|
|
3199
|
+
|
|
3423
3200
|
for (var name in on) {
|
|
3424
3201
|
var handler = on[name];
|
|
3425
|
-
addEventListener
|
|
3202
|
+
addEventListener(elm, name, handler);
|
|
3426
3203
|
}
|
|
3427
3204
|
}
|
|
3428
3205
|
/*
|
|
@@ -3436,7 +3213,7 @@ var LWC = (function (exports) {
|
|
|
3436
3213
|
// different classnames properties individually instead of via a string.
|
|
3437
3214
|
|
|
3438
3215
|
|
|
3439
|
-
function applyStaticClassAttribute(vnode) {
|
|
3216
|
+
function applyStaticClassAttribute(vnode, renderer) {
|
|
3440
3217
|
var elm = vnode.elm,
|
|
3441
3218
|
classMap = vnode.data.classMap;
|
|
3442
3219
|
|
|
@@ -3444,7 +3221,8 @@ var LWC = (function (exports) {
|
|
|
3444
3221
|
return;
|
|
3445
3222
|
}
|
|
3446
3223
|
|
|
3447
|
-
var
|
|
3224
|
+
var getClassList = renderer.getClassList;
|
|
3225
|
+
var classList = getClassList(elm);
|
|
3448
3226
|
|
|
3449
3227
|
for (var name in classMap) {
|
|
3450
3228
|
classList.add(name);
|
|
@@ -3461,7 +3239,7 @@ var LWC = (function (exports) {
|
|
|
3461
3239
|
// different style properties individually instead of via a string.
|
|
3462
3240
|
|
|
3463
3241
|
|
|
3464
|
-
function applyStaticStyleAttribute(vnode) {
|
|
3242
|
+
function applyStaticStyleAttribute(vnode, renderer) {
|
|
3465
3243
|
var elm = vnode.elm,
|
|
3466
3244
|
styleDecls = vnode.data.styleDecls;
|
|
3467
3245
|
|
|
@@ -3469,13 +3247,15 @@ var LWC = (function (exports) {
|
|
|
3469
3247
|
return;
|
|
3470
3248
|
}
|
|
3471
3249
|
|
|
3472
|
-
|
|
3473
|
-
|
|
3250
|
+
var setCSSStyleProperty = renderer.setCSSStyleProperty;
|
|
3251
|
+
|
|
3252
|
+
for (var _i11 = 0; _i11 < styleDecls.length; _i11++) {
|
|
3253
|
+
var _styleDecls$_i = _slicedToArray(styleDecls[_i11], 3),
|
|
3474
3254
|
prop = _styleDecls$_i[0],
|
|
3475
3255
|
value = _styleDecls$_i[1],
|
|
3476
3256
|
important = _styleDecls$_i[2];
|
|
3477
3257
|
|
|
3478
|
-
setCSSStyleProperty
|
|
3258
|
+
setCSSStyleProperty(elm, prop, value, important);
|
|
3479
3259
|
}
|
|
3480
3260
|
}
|
|
3481
3261
|
/*
|
|
@@ -3486,15 +3266,17 @@ var LWC = (function (exports) {
|
|
|
3486
3266
|
*/
|
|
3487
3267
|
|
|
3488
3268
|
|
|
3489
|
-
function patchChildren(c1, c2, parent) {
|
|
3269
|
+
function patchChildren(c1, c2, parent, renderer) {
|
|
3490
3270
|
if (hasDynamicChildren(c2)) {
|
|
3491
|
-
updateDynamicChildren(c1, c2, parent);
|
|
3271
|
+
updateDynamicChildren(c1, c2, parent, renderer);
|
|
3492
3272
|
} else {
|
|
3493
|
-
updateStaticChildren(c1, c2, parent);
|
|
3273
|
+
updateStaticChildren(c1, c2, parent, renderer);
|
|
3494
3274
|
}
|
|
3495
3275
|
}
|
|
3496
3276
|
|
|
3497
|
-
function patch(n1, n2) {
|
|
3277
|
+
function patch(n1, n2, renderer) {
|
|
3278
|
+
var _a, _b;
|
|
3279
|
+
|
|
3498
3280
|
if (n1 === n2) {
|
|
3499
3281
|
return;
|
|
3500
3282
|
}
|
|
@@ -3503,112 +3285,159 @@ var LWC = (function (exports) {
|
|
|
3503
3285
|
case 0
|
|
3504
3286
|
/* Text */
|
|
3505
3287
|
:
|
|
3506
|
-
|
|
3288
|
+
// VText has no special capability, fallback to the owner's renderer
|
|
3289
|
+
patchText(n1, n2, renderer);
|
|
3507
3290
|
break;
|
|
3508
3291
|
|
|
3509
3292
|
case 1
|
|
3510
3293
|
/* Comment */
|
|
3511
3294
|
:
|
|
3512
|
-
|
|
3295
|
+
// VComment has no special capability, fallback to the owner's renderer
|
|
3296
|
+
patchComment(n1, n2, renderer);
|
|
3297
|
+
break;
|
|
3298
|
+
|
|
3299
|
+
case 4
|
|
3300
|
+
/* Static */
|
|
3301
|
+
:
|
|
3302
|
+
n2.elm = n1.elm;
|
|
3513
3303
|
break;
|
|
3514
3304
|
|
|
3515
3305
|
case 2
|
|
3516
3306
|
/* Element */
|
|
3517
3307
|
:
|
|
3518
|
-
patchElement(n1, n2);
|
|
3308
|
+
patchElement(n1, n2, (_a = n2.data.renderer) !== null && _a !== void 0 ? _a : renderer);
|
|
3519
3309
|
break;
|
|
3520
3310
|
|
|
3521
3311
|
case 3
|
|
3522
3312
|
/* CustomElement */
|
|
3523
3313
|
:
|
|
3524
|
-
patchCustomElement(n1, n2);
|
|
3314
|
+
patchCustomElement(n1, n2, (_b = n2.data.renderer) !== null && _b !== void 0 ? _b : renderer);
|
|
3525
3315
|
break;
|
|
3526
3316
|
}
|
|
3527
3317
|
}
|
|
3528
3318
|
|
|
3529
|
-
function mount(node, parent, anchor) {
|
|
3319
|
+
function mount(node, parent, renderer, anchor) {
|
|
3320
|
+
var _a, _b;
|
|
3321
|
+
|
|
3530
3322
|
switch (node.type) {
|
|
3531
3323
|
case 0
|
|
3532
3324
|
/* Text */
|
|
3533
3325
|
:
|
|
3534
|
-
|
|
3326
|
+
// VText has no special capability, fallback to the owner's renderer
|
|
3327
|
+
mountText(node, parent, anchor, renderer);
|
|
3535
3328
|
break;
|
|
3536
3329
|
|
|
3537
3330
|
case 1
|
|
3538
3331
|
/* Comment */
|
|
3539
3332
|
:
|
|
3540
|
-
|
|
3333
|
+
// VComment has no special capability, fallback to the owner's renderer
|
|
3334
|
+
mountComment(node, parent, anchor, renderer);
|
|
3335
|
+
break;
|
|
3336
|
+
|
|
3337
|
+
case 4
|
|
3338
|
+
/* Static */
|
|
3339
|
+
:
|
|
3340
|
+
// VStatic cannot have a custom renderer associated to them, using owner's renderer
|
|
3341
|
+
mountStatic(node, parent, anchor, renderer);
|
|
3541
3342
|
break;
|
|
3542
3343
|
|
|
3543
3344
|
case 2
|
|
3544
3345
|
/* Element */
|
|
3545
3346
|
:
|
|
3546
|
-
|
|
3347
|
+
// If the vnode data has a renderer override use it, else fallback to owner's renderer
|
|
3348
|
+
mountElement(node, parent, anchor, (_a = node.data.renderer) !== null && _a !== void 0 ? _a : renderer);
|
|
3547
3349
|
break;
|
|
3548
3350
|
|
|
3549
3351
|
case 3
|
|
3550
3352
|
/* CustomElement */
|
|
3551
3353
|
:
|
|
3552
|
-
|
|
3354
|
+
// If the vnode data has a renderer override use it, else fallback to owner's renderer
|
|
3355
|
+
mountCustomElement(node, parent, anchor, (_b = node.data.renderer) !== null && _b !== void 0 ? _b : renderer);
|
|
3553
3356
|
break;
|
|
3554
3357
|
}
|
|
3555
3358
|
}
|
|
3556
3359
|
|
|
3557
|
-
function patchText(n1, n2) {
|
|
3360
|
+
function patchText(n1, n2, renderer) {
|
|
3558
3361
|
n2.elm = n1.elm;
|
|
3559
3362
|
|
|
3560
3363
|
if (n2.text !== n1.text) {
|
|
3561
|
-
updateTextContent(n2);
|
|
3364
|
+
updateTextContent(n2, renderer);
|
|
3562
3365
|
}
|
|
3563
3366
|
}
|
|
3564
3367
|
|
|
3565
|
-
function mountText(
|
|
3566
|
-
var owner =
|
|
3567
|
-
var
|
|
3568
|
-
|
|
3569
|
-
|
|
3368
|
+
function mountText(vnode, parent, anchor, renderer) {
|
|
3369
|
+
var owner = vnode.owner;
|
|
3370
|
+
var createText = renderer.createText;
|
|
3371
|
+
var textNode = vnode.elm = createText(vnode.text);
|
|
3372
|
+
linkNodeToShadow(textNode, owner, renderer);
|
|
3373
|
+
insertNode(textNode, parent, anchor, renderer);
|
|
3570
3374
|
}
|
|
3571
3375
|
|
|
3572
|
-
function patchComment(n1, n2) {
|
|
3376
|
+
function patchComment(n1, n2, renderer) {
|
|
3573
3377
|
n2.elm = n1.elm; // FIXME: Comment nodes should be static, we shouldn't need to diff them together. However
|
|
3574
3378
|
// it is the case today.
|
|
3575
3379
|
|
|
3576
3380
|
if (n2.text !== n1.text) {
|
|
3577
|
-
updateTextContent(n2);
|
|
3381
|
+
updateTextContent(n2, renderer);
|
|
3578
3382
|
}
|
|
3579
3383
|
}
|
|
3580
3384
|
|
|
3581
|
-
function mountComment(
|
|
3582
|
-
var owner =
|
|
3583
|
-
var
|
|
3584
|
-
|
|
3585
|
-
|
|
3385
|
+
function mountComment(vnode, parent, anchor, renderer) {
|
|
3386
|
+
var owner = vnode.owner;
|
|
3387
|
+
var createComment = renderer.createComment;
|
|
3388
|
+
var commentNode = vnode.elm = createComment(vnode.text);
|
|
3389
|
+
linkNodeToShadow(commentNode, owner, renderer);
|
|
3390
|
+
insertNode(commentNode, parent, anchor, renderer);
|
|
3586
3391
|
}
|
|
3587
3392
|
|
|
3588
|
-
function mountElement(vnode, parent, anchor) {
|
|
3393
|
+
function mountElement(vnode, parent, anchor, renderer) {
|
|
3589
3394
|
var sel = vnode.sel,
|
|
3590
3395
|
owner = vnode.owner,
|
|
3591
3396
|
svg = vnode.data.svg;
|
|
3397
|
+
var createElement = renderer.createElement;
|
|
3592
3398
|
var namespace = isTrue(svg) ? SVG_NAMESPACE : undefined;
|
|
3593
|
-
var elm = createElement
|
|
3594
|
-
linkNodeToShadow(elm, owner);
|
|
3595
|
-
fallbackElmHook(elm, vnode);
|
|
3399
|
+
var elm = createElement(sel, namespace);
|
|
3400
|
+
linkNodeToShadow(elm, owner, renderer);
|
|
3401
|
+
fallbackElmHook(elm, vnode, renderer);
|
|
3596
3402
|
vnode.elm = elm;
|
|
3597
|
-
patchElementPropsAndAttrs$1(null, vnode);
|
|
3598
|
-
insertNode(elm, parent, anchor);
|
|
3599
|
-
mountVNodes(vnode.children, elm, null);
|
|
3403
|
+
patchElementPropsAndAttrs$1(null, vnode, renderer);
|
|
3404
|
+
insertNode(elm, parent, anchor, renderer);
|
|
3405
|
+
mountVNodes(vnode.children, elm, renderer, null);
|
|
3600
3406
|
}
|
|
3601
3407
|
|
|
3602
|
-
function patchElement(n1, n2) {
|
|
3408
|
+
function patchElement(n1, n2, renderer) {
|
|
3603
3409
|
var elm = n2.elm = n1.elm;
|
|
3604
|
-
patchElementPropsAndAttrs$1(n1, n2);
|
|
3605
|
-
patchChildren(n1.children, n2.children, elm);
|
|
3410
|
+
patchElementPropsAndAttrs$1(n1, n2, renderer);
|
|
3411
|
+
patchChildren(n1.children, n2.children, elm, renderer);
|
|
3606
3412
|
}
|
|
3607
3413
|
|
|
3608
|
-
function
|
|
3414
|
+
function mountStatic(vnode, parent, anchor, renderer) {
|
|
3415
|
+
var owner = vnode.owner;
|
|
3416
|
+
var cloneNode = renderer.cloneNode,
|
|
3417
|
+
isSyntheticShadowDefined = renderer.isSyntheticShadowDefined;
|
|
3418
|
+
var elm = vnode.elm = cloneNode(vnode.fragment, true);
|
|
3419
|
+
linkNodeToShadow(elm, owner, renderer); // Marks this node as Static to propagate the shadow resolver. must happen after elm is assigned to the proper shadow
|
|
3420
|
+
|
|
3421
|
+
var renderMode = owner.renderMode,
|
|
3422
|
+
shadowMode = owner.shadowMode;
|
|
3423
|
+
|
|
3424
|
+
if (isSyntheticShadowDefined) {
|
|
3425
|
+
if (shadowMode === 1
|
|
3426
|
+
/* Synthetic */
|
|
3427
|
+
|| renderMode === 0
|
|
3428
|
+
/* Light */
|
|
3429
|
+
) {
|
|
3430
|
+
elm[KEY__SHADOW_STATIC] = true;
|
|
3431
|
+
}
|
|
3432
|
+
}
|
|
3433
|
+
|
|
3434
|
+
insertNode(elm, parent, anchor, renderer);
|
|
3435
|
+
}
|
|
3436
|
+
|
|
3437
|
+
function mountCustomElement(vnode, parent, anchor, renderer) {
|
|
3609
3438
|
var sel = vnode.sel,
|
|
3610
3439
|
owner = vnode.owner;
|
|
3611
|
-
var UpgradableConstructor = getUpgradableConstructor(sel);
|
|
3440
|
+
var UpgradableConstructor = getUpgradableConstructor(sel, renderer);
|
|
3612
3441
|
/**
|
|
3613
3442
|
* Note: if the upgradable constructor does not expect, or throw when we new it
|
|
3614
3443
|
* with a callback as the first argument, we could implement a more advanced
|
|
@@ -3619,9 +3448,9 @@ var LWC = (function (exports) {
|
|
|
3619
3448
|
var vm;
|
|
3620
3449
|
var elm = new UpgradableConstructor(function (elm) {
|
|
3621
3450
|
// the custom element from the registry is expecting an upgrade callback
|
|
3622
|
-
vm = createViewModelHook(elm, vnode);
|
|
3451
|
+
vm = createViewModelHook(elm, vnode, renderer);
|
|
3623
3452
|
});
|
|
3624
|
-
linkNodeToShadow(elm, owner);
|
|
3453
|
+
linkNodeToShadow(elm, owner, renderer);
|
|
3625
3454
|
vnode.elm = elm;
|
|
3626
3455
|
vnode.vm = vm;
|
|
3627
3456
|
|
|
@@ -3631,25 +3460,25 @@ var LWC = (function (exports) {
|
|
|
3631
3460
|
throw new TypeError("Incorrect Component Constructor");
|
|
3632
3461
|
}
|
|
3633
3462
|
|
|
3634
|
-
patchElementPropsAndAttrs$1(null, vnode);
|
|
3635
|
-
insertNode(elm, parent, anchor);
|
|
3463
|
+
patchElementPropsAndAttrs$1(null, vnode, renderer);
|
|
3464
|
+
insertNode(elm, parent, anchor, renderer);
|
|
3636
3465
|
|
|
3637
3466
|
if (vm) {
|
|
3638
3467
|
|
|
3639
3468
|
runConnectedCallback(vm);
|
|
3640
3469
|
}
|
|
3641
3470
|
|
|
3642
|
-
mountVNodes(vnode.children, elm, null);
|
|
3471
|
+
mountVNodes(vnode.children, elm, renderer, null);
|
|
3643
3472
|
|
|
3644
3473
|
if (vm) {
|
|
3645
3474
|
appendVM(vm);
|
|
3646
3475
|
}
|
|
3647
3476
|
}
|
|
3648
3477
|
|
|
3649
|
-
function patchCustomElement(n1, n2) {
|
|
3478
|
+
function patchCustomElement(n1, n2, renderer) {
|
|
3650
3479
|
var elm = n2.elm = n1.elm;
|
|
3651
3480
|
var vm = n2.vm = n1.vm;
|
|
3652
|
-
patchElementPropsAndAttrs$1(n1, n2);
|
|
3481
|
+
patchElementPropsAndAttrs$1(n1, n2, renderer);
|
|
3653
3482
|
|
|
3654
3483
|
if (!isUndefined$1(vm)) {
|
|
3655
3484
|
// in fallback mode, the allocation will always set children to
|
|
@@ -3659,7 +3488,7 @@ var LWC = (function (exports) {
|
|
|
3659
3488
|
// will happen, but in native, it does allocate the light dom
|
|
3660
3489
|
|
|
3661
3490
|
|
|
3662
|
-
patchChildren(n1.children, n2.children, elm);
|
|
3491
|
+
patchChildren(n1.children, n2.children, elm, renderer);
|
|
3663
3492
|
|
|
3664
3493
|
if (!isUndefined$1(vm)) {
|
|
3665
3494
|
// this will probably update the shadowRoot, but only if the vm is in a dirty state
|
|
@@ -3668,38 +3497,45 @@ var LWC = (function (exports) {
|
|
|
3668
3497
|
}
|
|
3669
3498
|
}
|
|
3670
3499
|
|
|
3671
|
-
function mountVNodes(vnodes, parent, anchor) {
|
|
3672
|
-
var start = arguments.length >
|
|
3673
|
-
var end = arguments.length >
|
|
3500
|
+
function mountVNodes(vnodes, parent, renderer, anchor) {
|
|
3501
|
+
var start = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
|
3502
|
+
var end = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : vnodes.length;
|
|
3674
3503
|
|
|
3675
3504
|
for (; start < end; ++start) {
|
|
3676
3505
|
var vnode = vnodes[start];
|
|
3677
3506
|
|
|
3678
3507
|
if (isVNode(vnode)) {
|
|
3679
|
-
mount(vnode, parent, anchor);
|
|
3508
|
+
mount(vnode, parent, renderer, anchor);
|
|
3680
3509
|
}
|
|
3681
3510
|
}
|
|
3682
3511
|
}
|
|
3683
3512
|
|
|
3684
|
-
function unmount(vnode, parent) {
|
|
3685
|
-
var doRemove = arguments.length >
|
|
3513
|
+
function unmount(vnode, parent, renderer) {
|
|
3514
|
+
var doRemove = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
3686
3515
|
var type = vnode.type,
|
|
3687
3516
|
elm = vnode.elm,
|
|
3688
3517
|
sel = vnode.sel; // When unmounting a VNode subtree not all the elements have to removed from the DOM. The
|
|
3689
3518
|
// subtree root, is the only element worth unmounting from the subtree.
|
|
3690
3519
|
|
|
3691
3520
|
if (doRemove) {
|
|
3692
|
-
|
|
3521
|
+
// The vnode might or might not have a data.renderer associated to it
|
|
3522
|
+
// but the removal used here is from the owner instead.
|
|
3523
|
+
removeNode(elm, parent, renderer);
|
|
3693
3524
|
}
|
|
3694
3525
|
|
|
3695
|
-
var removeChildren = sel === 'slot'; // slot content is removed to trigger slotchange event when removing slot
|
|
3696
|
-
|
|
3697
3526
|
switch (type) {
|
|
3698
3527
|
case 2
|
|
3699
3528
|
/* Element */
|
|
3700
3529
|
:
|
|
3701
|
-
|
|
3702
|
-
|
|
3530
|
+
{
|
|
3531
|
+
// Slot content is removed to trigger slotchange event when removing slot.
|
|
3532
|
+
// Only required for synthetic shadow.
|
|
3533
|
+
var shouldRemoveChildren = sel === 'slot' && vnode.owner.shadowMode === 1
|
|
3534
|
+
/* Synthetic */
|
|
3535
|
+
;
|
|
3536
|
+
unmountVNodes(vnode.children, elm, renderer, shouldRemoveChildren);
|
|
3537
|
+
break;
|
|
3538
|
+
}
|
|
3703
3539
|
|
|
3704
3540
|
case 3
|
|
3705
3541
|
/* CustomElement */
|
|
@@ -3715,16 +3551,16 @@ var LWC = (function (exports) {
|
|
|
3715
3551
|
}
|
|
3716
3552
|
}
|
|
3717
3553
|
|
|
3718
|
-
function unmountVNodes(vnodes, parent) {
|
|
3719
|
-
var doRemove = arguments.length >
|
|
3720
|
-
var start = arguments.length >
|
|
3721
|
-
var end = arguments.length >
|
|
3554
|
+
function unmountVNodes(vnodes, parent, renderer) {
|
|
3555
|
+
var doRemove = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
3556
|
+
var start = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
|
3557
|
+
var end = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : vnodes.length;
|
|
3722
3558
|
|
|
3723
3559
|
for (; start < end; ++start) {
|
|
3724
3560
|
var ch = vnodes[start];
|
|
3725
3561
|
|
|
3726
3562
|
if (isVNode(ch)) {
|
|
3727
|
-
unmount(ch, parent, doRemove);
|
|
3563
|
+
unmount(ch, parent, renderer, doRemove);
|
|
3728
3564
|
}
|
|
3729
3565
|
}
|
|
3730
3566
|
}
|
|
@@ -3742,22 +3578,26 @@ var LWC = (function (exports) {
|
|
|
3742
3578
|
} // Set the scope token class for *.scoped.css styles
|
|
3743
3579
|
|
|
3744
3580
|
|
|
3745
|
-
function setScopeTokenClassIfNecessary(elm, owner) {
|
|
3581
|
+
function setScopeTokenClassIfNecessary(elm, owner, renderer) {
|
|
3746
3582
|
var cmpTemplate = owner.cmpTemplate,
|
|
3747
3583
|
context = owner.context;
|
|
3584
|
+
var getClassList = renderer.getClassList;
|
|
3748
3585
|
var token = cmpTemplate === null || cmpTemplate === void 0 ? void 0 : cmpTemplate.stylesheetToken;
|
|
3749
3586
|
|
|
3750
3587
|
if (!isUndefined$1(token) && context.hasScopedStyles) {
|
|
3751
|
-
|
|
3588
|
+
// TODO [#2762]: this dot notation with add is probably problematic
|
|
3589
|
+
// probably we should have a renderer api for just the add operation
|
|
3590
|
+
getClassList(elm).add(token);
|
|
3752
3591
|
}
|
|
3753
3592
|
}
|
|
3754
3593
|
|
|
3755
|
-
function linkNodeToShadow(elm, owner) {
|
|
3594
|
+
function linkNodeToShadow(elm, owner, renderer) {
|
|
3756
3595
|
var renderRoot = owner.renderRoot,
|
|
3757
3596
|
renderMode = owner.renderMode,
|
|
3758
|
-
shadowMode = owner.shadowMode;
|
|
3597
|
+
shadowMode = owner.shadowMode;
|
|
3598
|
+
var isSyntheticShadowDefined = renderer.isSyntheticShadowDefined; // TODO [#1164]: this should eventually be done by the polyfill directly
|
|
3759
3599
|
|
|
3760
|
-
if (isSyntheticShadowDefined
|
|
3600
|
+
if (isSyntheticShadowDefined) {
|
|
3761
3601
|
if (shadowMode === 1
|
|
3762
3602
|
/* Synthetic */
|
|
3763
3603
|
|| renderMode === 0
|
|
@@ -3768,41 +3608,42 @@ var LWC = (function (exports) {
|
|
|
3768
3608
|
}
|
|
3769
3609
|
}
|
|
3770
3610
|
|
|
3771
|
-
function updateTextContent(vnode) {
|
|
3611
|
+
function updateTextContent(vnode, renderer) {
|
|
3772
3612
|
var elm = vnode.elm,
|
|
3773
3613
|
text = vnode.text;
|
|
3614
|
+
var setText = renderer.setText;
|
|
3774
3615
|
|
|
3775
|
-
setText
|
|
3616
|
+
setText(elm, text);
|
|
3776
3617
|
}
|
|
3777
3618
|
|
|
3778
|
-
function insertNode(node, parent, anchor) {
|
|
3619
|
+
function insertNode(node, parent, anchor, renderer) {
|
|
3779
3620
|
|
|
3780
|
-
insert
|
|
3621
|
+
renderer.insert(node, parent, anchor);
|
|
3781
3622
|
}
|
|
3782
3623
|
|
|
3783
|
-
function removeNode(node, parent) {
|
|
3624
|
+
function removeNode(node, parent, renderer) {
|
|
3784
3625
|
|
|
3785
|
-
remove
|
|
3626
|
+
renderer.remove(node, parent);
|
|
3786
3627
|
}
|
|
3787
3628
|
|
|
3788
|
-
function patchElementPropsAndAttrs$1(oldVnode, vnode) {
|
|
3629
|
+
function patchElementPropsAndAttrs$1(oldVnode, vnode, renderer) {
|
|
3789
3630
|
if (isNull(oldVnode)) {
|
|
3790
|
-
applyEventListeners(vnode);
|
|
3791
|
-
applyStaticClassAttribute(vnode);
|
|
3792
|
-
applyStaticStyleAttribute(vnode);
|
|
3631
|
+
applyEventListeners(vnode, renderer);
|
|
3632
|
+
applyStaticClassAttribute(vnode, renderer);
|
|
3633
|
+
applyStaticStyleAttribute(vnode, renderer);
|
|
3793
3634
|
} // Attrs need to be applied to element before props IE11 will wipe out value on radio inputs if
|
|
3794
3635
|
// value is set before type=radio.
|
|
3795
3636
|
|
|
3796
3637
|
|
|
3797
|
-
patchClassAttribute(oldVnode, vnode);
|
|
3798
|
-
patchStyleAttribute(oldVnode, vnode);
|
|
3799
|
-
patchAttributes(oldVnode, vnode);
|
|
3800
|
-
patchProps(oldVnode, vnode);
|
|
3638
|
+
patchClassAttribute(oldVnode, vnode, renderer);
|
|
3639
|
+
patchStyleAttribute(oldVnode, vnode, renderer);
|
|
3640
|
+
patchAttributes(oldVnode, vnode, renderer);
|
|
3641
|
+
patchProps(oldVnode, vnode, renderer);
|
|
3801
3642
|
}
|
|
3802
3643
|
|
|
3803
|
-
function fallbackElmHook(elm, vnode) {
|
|
3644
|
+
function fallbackElmHook(elm, vnode, renderer) {
|
|
3804
3645
|
var owner = vnode.owner;
|
|
3805
|
-
setScopeTokenClassIfNecessary(elm, owner);
|
|
3646
|
+
setScopeTokenClassIfNecessary(elm, owner, renderer);
|
|
3806
3647
|
|
|
3807
3648
|
if (owner.shadowMode === 1
|
|
3808
3649
|
/* Synthetic */
|
|
@@ -3855,7 +3696,7 @@ var LWC = (function (exports) {
|
|
|
3855
3696
|
}
|
|
3856
3697
|
}
|
|
3857
3698
|
|
|
3858
|
-
function createViewModelHook(elm, vnode) {
|
|
3699
|
+
function createViewModelHook(elm, vnode, renderer) {
|
|
3859
3700
|
var vm = getAssociatedVMIfPresent(elm); // There is a possibility that a custom element is registered under tagName, in which case, the
|
|
3860
3701
|
// initialization is already carry on, and there is nothing else to do here since this hook is
|
|
3861
3702
|
// called right after invoking `document.createElement`.
|
|
@@ -3868,7 +3709,7 @@ var LWC = (function (exports) {
|
|
|
3868
3709
|
mode = vnode.mode,
|
|
3869
3710
|
ctor = vnode.ctor,
|
|
3870
3711
|
owner = vnode.owner;
|
|
3871
|
-
setScopeTokenClassIfNecessary(elm, owner);
|
|
3712
|
+
setScopeTokenClassIfNecessary(elm, owner, renderer);
|
|
3872
3713
|
|
|
3873
3714
|
if (owner.shadowMode === 1
|
|
3874
3715
|
/* Synthetic */
|
|
@@ -3881,7 +3722,7 @@ var LWC = (function (exports) {
|
|
|
3881
3722
|
}
|
|
3882
3723
|
}
|
|
3883
3724
|
|
|
3884
|
-
vm = createVM(elm, ctor, {
|
|
3725
|
+
vm = createVM(elm, ctor, renderer, {
|
|
3885
3726
|
mode: mode,
|
|
3886
3727
|
owner: owner,
|
|
3887
3728
|
tagName: sel
|
|
@@ -3896,8 +3737,8 @@ var LWC = (function (exports) {
|
|
|
3896
3737
|
var oldSlots = vm.cmpSlots;
|
|
3897
3738
|
var cmpSlots = vm.cmpSlots = create(null);
|
|
3898
3739
|
|
|
3899
|
-
for (var
|
|
3900
|
-
var vnode = children[
|
|
3740
|
+
for (var _i12 = 0, len = children.length; _i12 < len; _i12 += 1) {
|
|
3741
|
+
var vnode = children[_i12];
|
|
3901
3742
|
|
|
3902
3743
|
if (isNull(vnode)) {
|
|
3903
3744
|
continue;
|
|
@@ -3923,8 +3764,8 @@ var LWC = (function (exports) {
|
|
|
3923
3764
|
return;
|
|
3924
3765
|
}
|
|
3925
3766
|
|
|
3926
|
-
for (var
|
|
3927
|
-
var key = oldKeys[
|
|
3767
|
+
for (var _i13 = 0, _len4 = oldKeys.length; _i13 < _len4; _i13 += 1) {
|
|
3768
|
+
var key = oldKeys[_i13];
|
|
3928
3769
|
|
|
3929
3770
|
if (isUndefined$1(cmpSlots[key]) || oldSlots[key].length !== cmpSlots[key].length) {
|
|
3930
3771
|
markComponentAsDirty(vm);
|
|
@@ -3974,7 +3815,7 @@ var LWC = (function (exports) {
|
|
|
3974
3815
|
return map;
|
|
3975
3816
|
}
|
|
3976
3817
|
|
|
3977
|
-
function updateDynamicChildren(oldCh, newCh, parent) {
|
|
3818
|
+
function updateDynamicChildren(oldCh, newCh, parent, renderer) {
|
|
3978
3819
|
var oldStartIdx = 0;
|
|
3979
3820
|
var newStartIdx = 0;
|
|
3980
3821
|
var oldEndIdx = oldCh.length - 1;
|
|
@@ -4000,23 +3841,23 @@ var LWC = (function (exports) {
|
|
|
4000
3841
|
} else if (!isVNode(newEndVnode)) {
|
|
4001
3842
|
newEndVnode = newCh[--newEndIdx];
|
|
4002
3843
|
} else if (isSameVnode(oldStartVnode, newStartVnode)) {
|
|
4003
|
-
patch(oldStartVnode, newStartVnode);
|
|
3844
|
+
patch(oldStartVnode, newStartVnode, renderer);
|
|
4004
3845
|
oldStartVnode = oldCh[++oldStartIdx];
|
|
4005
3846
|
newStartVnode = newCh[++newStartIdx];
|
|
4006
3847
|
} else if (isSameVnode(oldEndVnode, newEndVnode)) {
|
|
4007
|
-
patch(oldEndVnode, newEndVnode);
|
|
3848
|
+
patch(oldEndVnode, newEndVnode, renderer);
|
|
4008
3849
|
oldEndVnode = oldCh[--oldEndIdx];
|
|
4009
3850
|
newEndVnode = newCh[--newEndIdx];
|
|
4010
3851
|
} else if (isSameVnode(oldStartVnode, newEndVnode)) {
|
|
4011
3852
|
// Vnode moved right
|
|
4012
|
-
patch(oldStartVnode, newEndVnode);
|
|
4013
|
-
insertNode(oldStartVnode.elm, parent, nextSibling
|
|
3853
|
+
patch(oldStartVnode, newEndVnode, renderer);
|
|
3854
|
+
insertNode(oldStartVnode.elm, parent, renderer.nextSibling(oldEndVnode.elm), renderer);
|
|
4014
3855
|
oldStartVnode = oldCh[++oldStartIdx];
|
|
4015
3856
|
newEndVnode = newCh[--newEndIdx];
|
|
4016
3857
|
} else if (isSameVnode(oldEndVnode, newStartVnode)) {
|
|
4017
3858
|
// Vnode moved left
|
|
4018
|
-
patch(oldEndVnode, newStartVnode);
|
|
4019
|
-
insertNode(newStartVnode.elm, parent, oldStartVnode.elm);
|
|
3859
|
+
patch(oldEndVnode, newStartVnode, renderer);
|
|
3860
|
+
insertNode(newStartVnode.elm, parent, oldStartVnode.elm, renderer);
|
|
4020
3861
|
oldEndVnode = oldCh[--oldEndIdx];
|
|
4021
3862
|
newStartVnode = newCh[++newStartIdx];
|
|
4022
3863
|
} else {
|
|
@@ -4028,7 +3869,7 @@ var LWC = (function (exports) {
|
|
|
4028
3869
|
|
|
4029
3870
|
if (isUndefined$1(idxInOld)) {
|
|
4030
3871
|
// New element
|
|
4031
|
-
mount(newStartVnode, parent, oldStartVnode.elm);
|
|
3872
|
+
mount(newStartVnode, parent, renderer, oldStartVnode.elm);
|
|
4032
3873
|
newStartVnode = newCh[++newStartIdx];
|
|
4033
3874
|
} else {
|
|
4034
3875
|
elmToMove = oldCh[idxInOld];
|
|
@@ -4036,9 +3877,9 @@ var LWC = (function (exports) {
|
|
|
4036
3877
|
if (isVNode(elmToMove)) {
|
|
4037
3878
|
if (elmToMove.sel !== newStartVnode.sel) {
|
|
4038
3879
|
// New element
|
|
4039
|
-
mount(newStartVnode, parent, oldStartVnode.elm);
|
|
3880
|
+
mount(newStartVnode, parent, renderer, oldStartVnode.elm);
|
|
4040
3881
|
} else {
|
|
4041
|
-
patch(elmToMove, newStartVnode); // Delete the old child, but copy the array since it is read-only.
|
|
3882
|
+
patch(elmToMove, newStartVnode, renderer); // Delete the old child, but copy the array since it is read-only.
|
|
4042
3883
|
// The `oldCh` will be GC'ed after `updateDynamicChildren` is complete,
|
|
4043
3884
|
// so we only care about the `oldCh` object inside this function.
|
|
4044
3885
|
// To avoid cloning over and over again, we check `clonedOldCh`
|
|
@@ -4051,7 +3892,7 @@ var LWC = (function (exports) {
|
|
|
4051
3892
|
|
|
4052
3893
|
|
|
4053
3894
|
oldCh[idxInOld] = undefined;
|
|
4054
|
-
insertNode(elmToMove.elm, parent, oldStartVnode.elm);
|
|
3895
|
+
insertNode(elmToMove.elm, parent, oldStartVnode.elm, renderer);
|
|
4055
3896
|
}
|
|
4056
3897
|
}
|
|
4057
3898
|
|
|
@@ -4064,35 +3905,35 @@ var LWC = (function (exports) {
|
|
|
4064
3905
|
if (oldStartIdx > oldEndIdx) {
|
|
4065
3906
|
// There's some cases in which the sub array of vnodes to be inserted is followed by null(s) and an
|
|
4066
3907
|
// already processed vnode, in such cases the vnodes to be inserted should be before that processed vnode.
|
|
4067
|
-
var
|
|
3908
|
+
var _i14 = newEndIdx;
|
|
4068
3909
|
var n;
|
|
4069
3910
|
|
|
4070
3911
|
do {
|
|
4071
|
-
n = newCh[++
|
|
4072
|
-
} while (!isVNode(n) &&
|
|
3912
|
+
n = newCh[++_i14];
|
|
3913
|
+
} while (!isVNode(n) && _i14 < newChEnd);
|
|
4073
3914
|
|
|
4074
3915
|
before = isVNode(n) ? n.elm : null;
|
|
4075
|
-
mountVNodes(newCh, parent, before, newStartIdx, newEndIdx + 1);
|
|
3916
|
+
mountVNodes(newCh, parent, renderer, before, newStartIdx, newEndIdx + 1);
|
|
4076
3917
|
} else {
|
|
4077
|
-
unmountVNodes(oldCh, parent, true, oldStartIdx, oldEndIdx + 1);
|
|
3918
|
+
unmountVNodes(oldCh, parent, renderer, true, oldStartIdx, oldEndIdx + 1);
|
|
4078
3919
|
}
|
|
4079
3920
|
}
|
|
4080
3921
|
}
|
|
4081
3922
|
|
|
4082
|
-
function updateStaticChildren(c1, c2, parent) {
|
|
3923
|
+
function updateStaticChildren(c1, c2, parent, renderer) {
|
|
4083
3924
|
var c1Length = c1.length;
|
|
4084
3925
|
var c2Length = c2.length;
|
|
4085
3926
|
|
|
4086
3927
|
if (c1Length === 0) {
|
|
4087
3928
|
// the old list is empty, we can directly insert anything new
|
|
4088
|
-
mountVNodes(c2, parent, null);
|
|
3929
|
+
mountVNodes(c2, parent, renderer, null);
|
|
4089
3930
|
return;
|
|
4090
3931
|
}
|
|
4091
3932
|
|
|
4092
3933
|
if (c2Length === 0) {
|
|
4093
3934
|
// the old list is nonempty and the new list is empty so we can directly remove all old nodes
|
|
4094
3935
|
// this is the case in which the dynamic children of an if-directive should be removed
|
|
4095
|
-
unmountVNodes(c1, parent, true);
|
|
3936
|
+
unmountVNodes(c1, parent, renderer, true);
|
|
4096
3937
|
return;
|
|
4097
3938
|
} // if the old list is not empty, the new list MUST have the same
|
|
4098
3939
|
// amount of nodes, that's why we call this static children
|
|
@@ -4100,22 +3941,22 @@ var LWC = (function (exports) {
|
|
|
4100
3941
|
|
|
4101
3942
|
var anchor = null;
|
|
4102
3943
|
|
|
4103
|
-
for (var
|
|
4104
|
-
var n1 = c1[
|
|
4105
|
-
var n2 = c2[
|
|
3944
|
+
for (var _i15 = c2Length - 1; _i15 >= 0; _i15 -= 1) {
|
|
3945
|
+
var n1 = c1[_i15];
|
|
3946
|
+
var n2 = c2[_i15];
|
|
4106
3947
|
|
|
4107
3948
|
if (n2 !== n1) {
|
|
4108
3949
|
if (isVNode(n1)) {
|
|
4109
3950
|
if (isVNode(n2)) {
|
|
4110
3951
|
// both vnodes are equivalent, and we just need to patch them
|
|
4111
|
-
patch(n1, n2);
|
|
3952
|
+
patch(n1, n2, renderer);
|
|
4112
3953
|
anchor = n2.elm;
|
|
4113
3954
|
} else {
|
|
4114
3955
|
// removing the old vnode since the new one is null
|
|
4115
|
-
unmount(n1, parent, true);
|
|
3956
|
+
unmount(n1, parent, renderer, true);
|
|
4116
3957
|
}
|
|
4117
3958
|
} else if (isVNode(n2)) {
|
|
4118
|
-
mount(n2, parent, anchor);
|
|
3959
|
+
mount(n2, parent, renderer, anchor);
|
|
4119
3960
|
anchor = n2.elm;
|
|
4120
3961
|
}
|
|
4121
3962
|
}
|
|
@@ -4133,6 +3974,20 @@ var LWC = (function (exports) {
|
|
|
4133
3974
|
|
|
4134
3975
|
function addVNodeToChildLWC(vnode) {
|
|
4135
3976
|
ArrayPush$1.call(getVMBeingRendered().velements, vnode);
|
|
3977
|
+
} // [st]atic node
|
|
3978
|
+
|
|
3979
|
+
|
|
3980
|
+
function st(fragment, key) {
|
|
3981
|
+
return {
|
|
3982
|
+
type: 4
|
|
3983
|
+
/* Static */
|
|
3984
|
+
,
|
|
3985
|
+
sel: undefined,
|
|
3986
|
+
key: key,
|
|
3987
|
+
elm: undefined,
|
|
3988
|
+
fragment: fragment,
|
|
3989
|
+
owner: getVMBeingRendered()
|
|
3990
|
+
};
|
|
4136
3991
|
} // [h]tml node
|
|
4137
3992
|
|
|
4138
3993
|
|
|
@@ -4499,6 +4354,7 @@ var LWC = (function (exports) {
|
|
|
4499
4354
|
co: co,
|
|
4500
4355
|
dc: dc,
|
|
4501
4356
|
ti: ti,
|
|
4357
|
+
st: st,
|
|
4502
4358
|
gid: gid,
|
|
4503
4359
|
fid: fid,
|
|
4504
4360
|
shc: shc
|
|
@@ -4527,7 +4383,11 @@ var LWC = (function (exports) {
|
|
|
4527
4383
|
var elm = vm.elm,
|
|
4528
4384
|
context = vm.context,
|
|
4529
4385
|
renderMode = vm.renderMode,
|
|
4530
|
-
shadowMode = vm.shadowMode
|
|
4386
|
+
shadowMode = vm.shadowMode,
|
|
4387
|
+
_vm$renderer = vm.renderer,
|
|
4388
|
+
getClassList = _vm$renderer.getClassList,
|
|
4389
|
+
removeAttribute = _vm$renderer.removeAttribute,
|
|
4390
|
+
setAttribute = _vm$renderer.setAttribute;
|
|
4531
4391
|
var newStylesheets = template.stylesheets,
|
|
4532
4392
|
newStylesheetToken = template.stylesheetToken;
|
|
4533
4393
|
var isSyntheticShadow = renderMode === 1
|
|
@@ -4546,11 +4406,11 @@ var LWC = (function (exports) {
|
|
|
4546
4406
|
|
|
4547
4407
|
if (!isUndefined$1(oldToken)) {
|
|
4548
4408
|
if (oldHasTokenInClass) {
|
|
4549
|
-
getClassList
|
|
4409
|
+
getClassList(elm).remove(makeHostToken(oldToken));
|
|
4550
4410
|
}
|
|
4551
4411
|
|
|
4552
4412
|
if (oldHasTokenInAttribute) {
|
|
4553
|
-
removeAttribute
|
|
4413
|
+
removeAttribute(elm, makeHostToken(oldToken));
|
|
4554
4414
|
}
|
|
4555
4415
|
} // Apply the new template styling token to the host element, if the new template has any
|
|
4556
4416
|
// associated stylesheets. In the case of light DOM, also ensure there is at least one scoped stylesheet.
|
|
@@ -4563,12 +4423,12 @@ var LWC = (function (exports) {
|
|
|
4563
4423
|
|
|
4564
4424
|
if (!isUndefined$1(newToken)) {
|
|
4565
4425
|
if (hasScopedStyles) {
|
|
4566
|
-
getClassList
|
|
4426
|
+
getClassList(elm).add(makeHostToken(newToken));
|
|
4567
4427
|
newHasTokenInClass = true;
|
|
4568
4428
|
}
|
|
4569
4429
|
|
|
4570
4430
|
if (isSyntheticShadow) {
|
|
4571
|
-
setAttribute
|
|
4431
|
+
setAttribute(elm, makeHostToken(newToken), '');
|
|
4572
4432
|
newHasTokenInAttribute = true;
|
|
4573
4433
|
}
|
|
4574
4434
|
} // Update the styling tokens present on the context object.
|
|
@@ -4583,8 +4443,8 @@ var LWC = (function (exports) {
|
|
|
4583
4443
|
var content = [];
|
|
4584
4444
|
var root;
|
|
4585
4445
|
|
|
4586
|
-
for (var
|
|
4587
|
-
var stylesheet = stylesheets[
|
|
4446
|
+
for (var _i16 = 0; _i16 < stylesheets.length; _i16++) {
|
|
4447
|
+
var stylesheet = stylesheets[_i16];
|
|
4588
4448
|
|
|
4589
4449
|
if (isArray$1(stylesheet)) {
|
|
4590
4450
|
ArrayPush$1.apply(content, evaluateStylesheetsContent(stylesheet, stylesheetToken, vm));
|
|
@@ -4681,31 +4541,33 @@ var LWC = (function (exports) {
|
|
|
4681
4541
|
|
|
4682
4542
|
function createStylesheet(vm, stylesheets) {
|
|
4683
4543
|
var renderMode = vm.renderMode,
|
|
4684
|
-
shadowMode = vm.shadowMode
|
|
4544
|
+
shadowMode = vm.shadowMode,
|
|
4545
|
+
_vm$renderer2 = vm.renderer,
|
|
4546
|
+
ssr = _vm$renderer2.ssr,
|
|
4547
|
+
insertStylesheet = _vm$renderer2.insertStylesheet;
|
|
4685
4548
|
|
|
4686
4549
|
if (renderMode === 1
|
|
4687
4550
|
/* Shadow */
|
|
4688
4551
|
&& shadowMode === 1
|
|
4689
4552
|
/* Synthetic */
|
|
4690
4553
|
) {
|
|
4691
|
-
for (var
|
|
4692
|
-
insertStylesheet
|
|
4554
|
+
for (var _i17 = 0; _i17 < stylesheets.length; _i17++) {
|
|
4555
|
+
insertStylesheet(stylesheets[_i17]);
|
|
4693
4556
|
}
|
|
4694
|
-
} else if (ssr
|
|
4557
|
+
} else if (ssr || vm.hydrated) {
|
|
4695
4558
|
// Note: We need to ensure that during hydration, the stylesheets method is the same as those in ssr.
|
|
4696
4559
|
// This works in the client, because the stylesheets are created, and cached in the VM
|
|
4697
4560
|
// the first time the VM renders.
|
|
4698
4561
|
// native shadow or light DOM, SSR
|
|
4699
|
-
|
|
4700
|
-
return createInlineStyleVNode(combinedStylesheetContent);
|
|
4562
|
+
return ArrayMap.call(stylesheets, createInlineStyleVNode);
|
|
4701
4563
|
} else {
|
|
4702
4564
|
// native shadow or light DOM, DOM renderer
|
|
4703
4565
|
var root = getNearestNativeShadowComponent(vm); // null root means a global style
|
|
4704
4566
|
|
|
4705
4567
|
var target = isNull(root) ? undefined : root.shadowRoot;
|
|
4706
4568
|
|
|
4707
|
-
for (var
|
|
4708
|
-
insertStylesheet
|
|
4569
|
+
for (var _i18 = 0; _i18 < stylesheets.length; _i18++) {
|
|
4570
|
+
insertStylesheet(stylesheets[_i18], target);
|
|
4709
4571
|
}
|
|
4710
4572
|
}
|
|
4711
4573
|
|
|
@@ -4809,6 +4671,91 @@ var LWC = (function (exports) {
|
|
|
4809
4671
|
}
|
|
4810
4672
|
}
|
|
4811
4673
|
|
|
4674
|
+
function buildParseFragmentFn(createFragmentFn) {
|
|
4675
|
+
return function (strings) {
|
|
4676
|
+
for (var _len5 = arguments.length, keys = new Array(_len5 > 1 ? _len5 - 1 : 0), _key3 = 1; _key3 < _len5; _key3++) {
|
|
4677
|
+
keys[_key3 - 1] = arguments[_key3];
|
|
4678
|
+
}
|
|
4679
|
+
|
|
4680
|
+
var cache = create(null);
|
|
4681
|
+
return function () {
|
|
4682
|
+
var _getVMBeingRendered = getVMBeingRendered(),
|
|
4683
|
+
_getVMBeingRendered$c = _getVMBeingRendered.context,
|
|
4684
|
+
hasScopedStyles = _getVMBeingRendered$c.hasScopedStyles,
|
|
4685
|
+
stylesheetToken = _getVMBeingRendered$c.stylesheetToken,
|
|
4686
|
+
shadowMode = _getVMBeingRendered.shadowMode,
|
|
4687
|
+
renderer = _getVMBeingRendered.renderer;
|
|
4688
|
+
|
|
4689
|
+
var hasStyleToken = !isUndefined$1(stylesheetToken);
|
|
4690
|
+
var isSyntheticShadow = shadowMode === 1
|
|
4691
|
+
/* Synthetic */
|
|
4692
|
+
;
|
|
4693
|
+
var cacheKey = 0;
|
|
4694
|
+
|
|
4695
|
+
if (hasStyleToken && hasScopedStyles) {
|
|
4696
|
+
cacheKey |= 1
|
|
4697
|
+
/* HAS_SCOPED_STYLE */
|
|
4698
|
+
;
|
|
4699
|
+
}
|
|
4700
|
+
|
|
4701
|
+
if (hasStyleToken && isSyntheticShadow) {
|
|
4702
|
+
cacheKey |= 2
|
|
4703
|
+
/* SHADOW_MODE_SYNTHETIC */
|
|
4704
|
+
;
|
|
4705
|
+
}
|
|
4706
|
+
|
|
4707
|
+
if (!isUndefined$1(cache[cacheKey])) {
|
|
4708
|
+
return cache[cacheKey];
|
|
4709
|
+
}
|
|
4710
|
+
|
|
4711
|
+
var classToken = hasScopedStyles && hasStyleToken ? ' ' + stylesheetToken : '';
|
|
4712
|
+
var classAttrToken = hasScopedStyles && hasStyleToken ? " class=\"".concat(stylesheetToken, "\"") : '';
|
|
4713
|
+
var attrToken = hasStyleToken && isSyntheticShadow ? ' ' + stylesheetToken : '';
|
|
4714
|
+
var htmlFragment = '';
|
|
4715
|
+
|
|
4716
|
+
for (var _i19 = 0, n = keys.length; _i19 < n; _i19++) {
|
|
4717
|
+
switch (keys[_i19]) {
|
|
4718
|
+
case 0:
|
|
4719
|
+
// styleToken in existing class attr
|
|
4720
|
+
htmlFragment += strings[_i19] + classToken;
|
|
4721
|
+
break;
|
|
4722
|
+
|
|
4723
|
+
case 1:
|
|
4724
|
+
// styleToken for added class attr
|
|
4725
|
+
htmlFragment += strings[_i19] + classAttrToken;
|
|
4726
|
+
break;
|
|
4727
|
+
|
|
4728
|
+
case 2:
|
|
4729
|
+
// styleToken as attr
|
|
4730
|
+
htmlFragment += strings[_i19] + attrToken;
|
|
4731
|
+
break;
|
|
4732
|
+
|
|
4733
|
+
case 3:
|
|
4734
|
+
// ${1}${2}
|
|
4735
|
+
htmlFragment += strings[_i19] + classAttrToken + attrToken;
|
|
4736
|
+
break;
|
|
4737
|
+
}
|
|
4738
|
+
}
|
|
4739
|
+
|
|
4740
|
+
htmlFragment += strings[strings.length - 1];
|
|
4741
|
+
cache[cacheKey] = createFragmentFn(htmlFragment, renderer);
|
|
4742
|
+
return cache[cacheKey];
|
|
4743
|
+
};
|
|
4744
|
+
};
|
|
4745
|
+
} // Note: at the moment this code executes, we don't have a renderer yet.
|
|
4746
|
+
|
|
4747
|
+
|
|
4748
|
+
var parseFragment = buildParseFragmentFn(function (html, renderer) {
|
|
4749
|
+
var createFragment = renderer.createFragment;
|
|
4750
|
+
return createFragment(html);
|
|
4751
|
+
});
|
|
4752
|
+
var parseSVGFragment = buildParseFragmentFn(function (html, renderer) {
|
|
4753
|
+
var createFragment = renderer.createFragment,
|
|
4754
|
+
getFirstChild = renderer.getFirstChild;
|
|
4755
|
+
var fragment = createFragment('<svg>' + html + '</svg>');
|
|
4756
|
+
return getFirstChild(fragment);
|
|
4757
|
+
});
|
|
4758
|
+
|
|
4812
4759
|
function evaluateTemplate(vm, html) {
|
|
4813
4760
|
|
|
4814
4761
|
var isUpdatingTemplateInception = isUpdatingTemplate;
|
|
@@ -4856,7 +4803,7 @@ var LWC = (function (exports) {
|
|
|
4856
4803
|
// re-rendering.
|
|
4857
4804
|
|
|
4858
4805
|
var stylesheetsContent = getStylesheetsContent(vm, html);
|
|
4859
|
-
context.
|
|
4806
|
+
context.styleVNodes = stylesheetsContent.length === 0 ? null : createStylesheet(vm, stylesheetsContent);
|
|
4860
4807
|
}
|
|
4861
4808
|
|
|
4862
4809
|
if ("production" !== 'production') ; // right before producing the vnodes, we clear up all internal references
|
|
@@ -4867,10 +4814,10 @@ var LWC = (function (exports) {
|
|
|
4867
4814
|
|
|
4868
4815
|
isUpdatingTemplate = true;
|
|
4869
4816
|
vnodes = html.call(undefined, api, component, cmpSlots, context.tplCache);
|
|
4870
|
-
var
|
|
4817
|
+
var styleVNodes = context.styleVNodes;
|
|
4871
4818
|
|
|
4872
|
-
if (!isNull(
|
|
4873
|
-
ArrayUnshift.
|
|
4819
|
+
if (!isNull(styleVNodes)) {
|
|
4820
|
+
ArrayUnshift.apply(vnodes, styleVNodes);
|
|
4874
4821
|
}
|
|
4875
4822
|
});
|
|
4876
4823
|
}, function () {
|
|
@@ -5194,9 +5141,19 @@ var LWC = (function (exports) {
|
|
|
5194
5141
|
resetComponentStateWhenRemoved(vm);
|
|
5195
5142
|
}
|
|
5196
5143
|
|
|
5197
|
-
function
|
|
5198
|
-
var
|
|
5144
|
+
function getNearestShadowAncestor(vm) {
|
|
5145
|
+
var ancestor = vm.owner;
|
|
5146
|
+
|
|
5147
|
+
while (!isNull(ancestor) && ancestor.renderMode === 0
|
|
5148
|
+
/* Light */
|
|
5149
|
+
) {
|
|
5150
|
+
ancestor = ancestor.owner;
|
|
5151
|
+
}
|
|
5199
5152
|
|
|
5153
|
+
return ancestor;
|
|
5154
|
+
}
|
|
5155
|
+
|
|
5156
|
+
function createVM(elm, ctor, renderer, options) {
|
|
5200
5157
|
var mode = options.mode,
|
|
5201
5158
|
owner = options.owner,
|
|
5202
5159
|
tagName = options.tagName,
|
|
@@ -5224,28 +5181,29 @@ var LWC = (function (exports) {
|
|
|
5224
5181
|
cmpTemplate: null,
|
|
5225
5182
|
hydrated: Boolean(hydrated),
|
|
5226
5183
|
renderMode: def.renderMode,
|
|
5227
|
-
shadowMode: computeShadowMode(def, owner),
|
|
5228
|
-
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,
|
|
5229
5184
|
context: {
|
|
5230
5185
|
stylesheetToken: undefined,
|
|
5231
5186
|
hasTokenInClass: undefined,
|
|
5232
5187
|
hasTokenInAttribute: undefined,
|
|
5233
5188
|
hasScopedStyles: undefined,
|
|
5234
|
-
|
|
5189
|
+
styleVNodes: null,
|
|
5235
5190
|
tplCache: EmptyObject,
|
|
5236
5191
|
wiredConnecting: EmptyArray,
|
|
5237
5192
|
wiredDisconnecting: EmptyArray
|
|
5238
5193
|
},
|
|
5239
5194
|
// Properties set right after VM creation.
|
|
5240
5195
|
tro: null,
|
|
5196
|
+
shadowMode: null,
|
|
5241
5197
|
// Properties set by the LightningElement constructor.
|
|
5242
5198
|
component: null,
|
|
5243
5199
|
shadowRoot: null,
|
|
5244
5200
|
renderRoot: null,
|
|
5245
5201
|
callHook: callHook,
|
|
5246
5202
|
setHook: setHook,
|
|
5247
|
-
getHook: getHook
|
|
5203
|
+
getHook: getHook,
|
|
5204
|
+
renderer: renderer
|
|
5248
5205
|
};
|
|
5206
|
+
vm.shadowMode = computeShadowMode(vm, renderer);
|
|
5249
5207
|
vm.tro = getTemplateReactiveObserver(vm);
|
|
5250
5208
|
|
|
5251
5209
|
|
|
@@ -5258,12 +5216,13 @@ var LWC = (function (exports) {
|
|
|
5258
5216
|
return vm;
|
|
5259
5217
|
}
|
|
5260
5218
|
|
|
5261
|
-
function computeShadowMode(
|
|
5262
|
-
var
|
|
5263
|
-
|
|
5219
|
+
function computeShadowMode(vm, renderer) {
|
|
5220
|
+
var def = vm.def;
|
|
5221
|
+
var isSyntheticShadowDefined = renderer.isSyntheticShadowDefined,
|
|
5222
|
+
isNativeShadowDefined = renderer.isNativeShadowDefined;
|
|
5264
5223
|
var shadowMode;
|
|
5265
5224
|
|
|
5266
|
-
if (isSyntheticShadowDefined
|
|
5225
|
+
if (isSyntheticShadowDefined) {
|
|
5267
5226
|
if (def.renderMode === 0
|
|
5268
5227
|
/* Light */
|
|
5269
5228
|
) {
|
|
@@ -5272,7 +5231,7 @@ var LWC = (function (exports) {
|
|
|
5272
5231
|
shadowMode = 0
|
|
5273
5232
|
/* Native */
|
|
5274
5233
|
;
|
|
5275
|
-
} else if (isNativeShadowDefined
|
|
5234
|
+
} else if (isNativeShadowDefined) {
|
|
5276
5235
|
// Not combined with above condition because @lwc/features only supports identifiers in
|
|
5277
5236
|
// the if-condition.
|
|
5278
5237
|
if (runtimeFlags.ENABLE_MIXED_SHADOW_MODE) {
|
|
@@ -5283,13 +5242,23 @@ var LWC = (function (exports) {
|
|
|
5283
5242
|
/* Native */
|
|
5284
5243
|
;
|
|
5285
5244
|
} else {
|
|
5286
|
-
|
|
5287
|
-
|
|
5288
|
-
|
|
5289
|
-
|
|
5290
|
-
|
|
5291
|
-
|
|
5292
|
-
|
|
5245
|
+
var shadowAncestor = getNearestShadowAncestor(vm);
|
|
5246
|
+
|
|
5247
|
+
if (!isNull(shadowAncestor) && shadowAncestor.shadowMode === 0
|
|
5248
|
+
/* Native */
|
|
5249
|
+
) {
|
|
5250
|
+
// Transitive support for native Shadow DOM. A component in native mode
|
|
5251
|
+
// transitively opts all of its descendants into native.
|
|
5252
|
+
shadowMode = 0
|
|
5253
|
+
/* Native */
|
|
5254
|
+
;
|
|
5255
|
+
} else {
|
|
5256
|
+
// Synthetic if neither this component nor any of its ancestors are configured
|
|
5257
|
+
// to be native.
|
|
5258
|
+
shadowMode = 1
|
|
5259
|
+
/* Synthetic */
|
|
5260
|
+
;
|
|
5261
|
+
}
|
|
5293
5262
|
}
|
|
5294
5263
|
} else {
|
|
5295
5264
|
shadowMode = 1
|
|
@@ -5337,7 +5306,8 @@ var LWC = (function (exports) {
|
|
|
5337
5306
|
|
|
5338
5307
|
function patchShadowRoot(vm, newCh) {
|
|
5339
5308
|
var renderRoot = vm.renderRoot,
|
|
5340
|
-
oldCh = vm.children
|
|
5309
|
+
oldCh = vm.children,
|
|
5310
|
+
renderer = vm.renderer; // caching the new children collection
|
|
5341
5311
|
|
|
5342
5312
|
vm.children = newCh;
|
|
5343
5313
|
|
|
@@ -5352,7 +5322,7 @@ var LWC = (function (exports) {
|
|
|
5352
5322
|
, vm);
|
|
5353
5323
|
}, function () {
|
|
5354
5324
|
// job
|
|
5355
|
-
patchChildren(oldCh, newCh, renderRoot);
|
|
5325
|
+
patchChildren(oldCh, newCh, renderRoot, renderer);
|
|
5356
5326
|
}, function () {
|
|
5357
5327
|
// post
|
|
5358
5328
|
logOperationEnd(2
|
|
@@ -5374,9 +5344,10 @@ var LWC = (function (exports) {
|
|
|
5374
5344
|
}
|
|
5375
5345
|
|
|
5376
5346
|
function runRenderedCallback(vm) {
|
|
5377
|
-
var renderedCallback = vm.def.renderedCallback
|
|
5347
|
+
var renderedCallback = vm.def.renderedCallback,
|
|
5348
|
+
ssr = vm.renderer.ssr;
|
|
5378
5349
|
|
|
5379
|
-
if (isTrue(ssr
|
|
5350
|
+
if (isTrue(ssr)) {
|
|
5380
5351
|
return;
|
|
5381
5352
|
}
|
|
5382
5353
|
|
|
@@ -5585,13 +5556,14 @@ var LWC = (function (exports) {
|
|
|
5585
5556
|
|
|
5586
5557
|
function resetComponentRoot(vm) {
|
|
5587
5558
|
var children = vm.children,
|
|
5588
|
-
renderRoot = vm.renderRoot
|
|
5559
|
+
renderRoot = vm.renderRoot,
|
|
5560
|
+
remove = vm.renderer.remove;
|
|
5589
5561
|
|
|
5590
5562
|
for (var _i26 = 0, len = children.length; _i26 < len; _i26++) {
|
|
5591
5563
|
var child = children[_i26];
|
|
5592
5564
|
|
|
5593
5565
|
if (!isNull(child) && !isUndefined$1(child.elm)) {
|
|
5594
|
-
remove
|
|
5566
|
+
remove(child.elm, renderRoot);
|
|
5595
5567
|
}
|
|
5596
5568
|
}
|
|
5597
5569
|
|
|
@@ -5601,7 +5573,9 @@ var LWC = (function (exports) {
|
|
|
5601
5573
|
}
|
|
5602
5574
|
|
|
5603
5575
|
function scheduleRehydration(vm) {
|
|
5604
|
-
|
|
5576
|
+
var ssr = vm.renderer.ssr;
|
|
5577
|
+
|
|
5578
|
+
if (isTrue(ssr) || isTrue(vm.isScheduled)) {
|
|
5605
5579
|
return;
|
|
5606
5580
|
}
|
|
5607
5581
|
|
|
@@ -5768,7 +5742,8 @@ var LWC = (function (exports) {
|
|
|
5768
5742
|
var elm = vm.elm,
|
|
5769
5743
|
_vm$context = vm.context,
|
|
5770
5744
|
wiredConnecting = _vm$context.wiredConnecting,
|
|
5771
|
-
wiredDisconnecting = _vm$context.wiredDisconnecting
|
|
5745
|
+
wiredDisconnecting = _vm$context.wiredDisconnecting,
|
|
5746
|
+
dispatchEvent = vm.renderer.dispatchEvent; // waiting for the component to be connected to formally request the context via the token
|
|
5772
5747
|
|
|
5773
5748
|
ArrayPush$1.call(wiredConnecting, function () {
|
|
5774
5749
|
// This event is responsible for connecting the host element with another
|
|
@@ -5788,7 +5763,7 @@ var LWC = (function (exports) {
|
|
|
5788
5763
|
ArrayPush$1.call(wiredDisconnecting, disconnectCallback);
|
|
5789
5764
|
}
|
|
5790
5765
|
});
|
|
5791
|
-
dispatchEvent
|
|
5766
|
+
dispatchEvent(elm, contextRegistrationEvent);
|
|
5792
5767
|
});
|
|
5793
5768
|
}
|
|
5794
5769
|
|
|
@@ -6042,79 +6017,103 @@ var LWC = (function (exports) {
|
|
|
6042
6017
|
function hydrateVM(vm) {
|
|
6043
6018
|
var children = renderComponent(vm);
|
|
6044
6019
|
vm.children = children;
|
|
6045
|
-
var parentNode = vm.renderRoot
|
|
6046
|
-
|
|
6020
|
+
var parentNode = vm.renderRoot,
|
|
6021
|
+
getFirstChild = vm.renderer.getFirstChild;
|
|
6022
|
+
hydrateChildren(getFirstChild(parentNode), children, parentNode, vm);
|
|
6047
6023
|
runRenderedCallback(vm);
|
|
6048
6024
|
}
|
|
6049
6025
|
|
|
6050
|
-
function hydrateNode(node, vnode) {
|
|
6026
|
+
function hydrateNode(node, vnode, renderer) {
|
|
6027
|
+
var _a, _b;
|
|
6028
|
+
|
|
6051
6029
|
var hydratedNode;
|
|
6052
6030
|
|
|
6053
6031
|
switch (vnode.type) {
|
|
6054
6032
|
case 0
|
|
6055
6033
|
/* Text */
|
|
6056
6034
|
:
|
|
6057
|
-
|
|
6035
|
+
// VText has no special capability, fallback to the owner's renderer
|
|
6036
|
+
hydratedNode = hydrateText(node, vnode, renderer);
|
|
6058
6037
|
break;
|
|
6059
6038
|
|
|
6060
6039
|
case 1
|
|
6061
6040
|
/* Comment */
|
|
6062
6041
|
:
|
|
6063
|
-
|
|
6042
|
+
// VComment has no special capability, fallback to the owner's renderer
|
|
6043
|
+
hydratedNode = hydrateComment(node, vnode, renderer);
|
|
6044
|
+
break;
|
|
6045
|
+
|
|
6046
|
+
case 4
|
|
6047
|
+
/* Static */
|
|
6048
|
+
:
|
|
6049
|
+
// VStatic are cacheable and cannot have custom renderer associated to them
|
|
6050
|
+
hydratedNode = hydrateStaticElement(node, vnode, renderer);
|
|
6064
6051
|
break;
|
|
6065
6052
|
|
|
6066
6053
|
case 2
|
|
6067
6054
|
/* Element */
|
|
6068
6055
|
:
|
|
6069
|
-
hydratedNode = hydrateElement(node, vnode);
|
|
6056
|
+
hydratedNode = hydrateElement(node, vnode, (_a = vnode.data.renderer) !== null && _a !== void 0 ? _a : renderer);
|
|
6070
6057
|
break;
|
|
6071
6058
|
|
|
6072
6059
|
case 3
|
|
6073
6060
|
/* CustomElement */
|
|
6074
6061
|
:
|
|
6075
|
-
hydratedNode = hydrateCustomElement(node, vnode);
|
|
6062
|
+
hydratedNode = hydrateCustomElement(node, vnode, (_b = vnode.data.renderer) !== null && _b !== void 0 ? _b : renderer);
|
|
6076
6063
|
break;
|
|
6077
6064
|
}
|
|
6078
6065
|
|
|
6079
|
-
return nextSibling
|
|
6066
|
+
return renderer.nextSibling(hydratedNode);
|
|
6080
6067
|
}
|
|
6081
6068
|
|
|
6082
|
-
function hydrateText(node, vnode) {
|
|
6069
|
+
function hydrateText(node, vnode, renderer) {
|
|
6083
6070
|
var _a;
|
|
6084
6071
|
|
|
6085
6072
|
if (!hasCorrectNodeType(vnode, node, 3
|
|
6086
6073
|
/* TEXT */
|
|
6087
|
-
)) {
|
|
6088
|
-
return handleMismatch(node, vnode);
|
|
6074
|
+
, renderer)) {
|
|
6075
|
+
return handleMismatch(node, vnode, renderer);
|
|
6089
6076
|
}
|
|
6090
6077
|
|
|
6091
|
-
setText
|
|
6078
|
+
var setText = renderer.setText;
|
|
6079
|
+
setText(node, (_a = vnode.text) !== null && _a !== void 0 ? _a : null);
|
|
6092
6080
|
vnode.elm = node;
|
|
6093
6081
|
return node;
|
|
6094
6082
|
}
|
|
6095
6083
|
|
|
6096
|
-
function hydrateComment(node, vnode) {
|
|
6084
|
+
function hydrateComment(node, vnode, renderer) {
|
|
6097
6085
|
var _a;
|
|
6098
6086
|
|
|
6099
6087
|
if (!hasCorrectNodeType(vnode, node, 8
|
|
6100
6088
|
/* COMMENT */
|
|
6101
|
-
)) {
|
|
6102
|
-
return handleMismatch(node, vnode);
|
|
6089
|
+
, renderer)) {
|
|
6090
|
+
return handleMismatch(node, vnode, renderer);
|
|
6103
6091
|
}
|
|
6104
6092
|
|
|
6105
|
-
setProperty
|
|
6093
|
+
var setProperty = renderer.setProperty;
|
|
6094
|
+
setProperty(node, 'nodeValue', (_a = vnode.text) !== null && _a !== void 0 ? _a : null);
|
|
6106
6095
|
vnode.elm = node;
|
|
6107
6096
|
return node;
|
|
6108
6097
|
}
|
|
6109
6098
|
|
|
6110
|
-
function
|
|
6099
|
+
function hydrateStaticElement(elm, vnode, renderer) {
|
|
6100
|
+
if (!areCompatibleNodes(vnode.fragment, elm, vnode, renderer)) {
|
|
6101
|
+
return handleMismatch(elm, vnode, renderer);
|
|
6102
|
+
}
|
|
6103
|
+
|
|
6104
|
+
vnode.elm = elm;
|
|
6105
|
+
return elm;
|
|
6106
|
+
}
|
|
6107
|
+
|
|
6108
|
+
function hydrateElement(elm, vnode, renderer) {
|
|
6111
6109
|
if (!hasCorrectNodeType(vnode, elm, 1
|
|
6112
6110
|
/* ELEMENT */
|
|
6113
|
-
) || !isMatchingElement(vnode, elm)) {
|
|
6114
|
-
return handleMismatch(elm, vnode);
|
|
6111
|
+
, renderer) || !isMatchingElement(vnode, elm, renderer)) {
|
|
6112
|
+
return handleMismatch(elm, vnode, renderer);
|
|
6115
6113
|
}
|
|
6116
6114
|
|
|
6117
6115
|
vnode.elm = elm;
|
|
6116
|
+
var owner = vnode.owner;
|
|
6118
6117
|
var context = vnode.data.context;
|
|
6119
6118
|
var isDomManual = Boolean(!isUndefined$1(context) && !isUndefined$1(context.lwc) && context.lwc.dom === "manual"
|
|
6120
6119
|
/* Manual */
|
|
@@ -6124,9 +6123,10 @@ var LWC = (function (exports) {
|
|
|
6124
6123
|
// it may be that this element has lwc:inner-html, we need to diff and in case are the same,
|
|
6125
6124
|
// remove the innerHTML from props so it reuses the existing dom elements.
|
|
6126
6125
|
var props = vnode.data.props;
|
|
6126
|
+
var _getProperty3 = renderer.getProperty;
|
|
6127
6127
|
|
|
6128
6128
|
if (!isUndefined$1(props) && !isUndefined$1(props.innerHTML)) {
|
|
6129
|
-
if (
|
|
6129
|
+
if (_getProperty3(elm, 'innerHTML') === props.innerHTML) {
|
|
6130
6130
|
// Do a shallow clone since VNodeData may be shared across VNodes due to hoist optimization
|
|
6131
6131
|
vnode.data = Object.assign(Object.assign({}, vnode.data), {
|
|
6132
6132
|
props: cloneAndOmitKey(props, 'innerHTML')
|
|
@@ -6135,27 +6135,28 @@ var LWC = (function (exports) {
|
|
|
6135
6135
|
}
|
|
6136
6136
|
}
|
|
6137
6137
|
|
|
6138
|
-
patchElementPropsAndAttrs(vnode);
|
|
6138
|
+
patchElementPropsAndAttrs(vnode, renderer);
|
|
6139
6139
|
|
|
6140
6140
|
if (!isDomManual) {
|
|
6141
|
-
|
|
6141
|
+
var _getFirstChild = renderer.getFirstChild;
|
|
6142
|
+
hydrateChildren(_getFirstChild(elm), vnode.children, elm, owner);
|
|
6142
6143
|
}
|
|
6143
6144
|
|
|
6144
6145
|
return elm;
|
|
6145
6146
|
}
|
|
6146
6147
|
|
|
6147
|
-
function hydrateCustomElement(elm, vnode) {
|
|
6148
|
+
function hydrateCustomElement(elm, vnode, renderer) {
|
|
6148
6149
|
if (!hasCorrectNodeType(vnode, elm, 1
|
|
6149
6150
|
/* ELEMENT */
|
|
6150
|
-
) || !isMatchingElement(vnode, elm)) {
|
|
6151
|
-
return handleMismatch(elm, vnode);
|
|
6151
|
+
, renderer) || !isMatchingElement(vnode, elm, renderer)) {
|
|
6152
|
+
return handleMismatch(elm, vnode, renderer);
|
|
6152
6153
|
}
|
|
6153
6154
|
|
|
6154
6155
|
var sel = vnode.sel,
|
|
6155
6156
|
mode = vnode.mode,
|
|
6156
6157
|
ctor = vnode.ctor,
|
|
6157
6158
|
owner = vnode.owner;
|
|
6158
|
-
var vm = createVM(elm, ctor, {
|
|
6159
|
+
var vm = createVM(elm, ctor, renderer, {
|
|
6159
6160
|
mode: mode,
|
|
6160
6161
|
owner: owner,
|
|
6161
6162
|
tagName: sel,
|
|
@@ -6164,16 +6165,17 @@ var LWC = (function (exports) {
|
|
|
6164
6165
|
vnode.elm = elm;
|
|
6165
6166
|
vnode.vm = vm;
|
|
6166
6167
|
allocateChildren(vnode, vm);
|
|
6167
|
-
patchElementPropsAndAttrs(vnode); // Insert hook section:
|
|
6168
|
+
patchElementPropsAndAttrs(vnode, renderer); // Insert hook section:
|
|
6168
6169
|
|
|
6169
6170
|
runConnectedCallback(vm);
|
|
6170
6171
|
|
|
6171
6172
|
if (vm.renderMode !== 0
|
|
6172
6173
|
/* Light */
|
|
6173
6174
|
) {
|
|
6174
|
-
// VM is not rendering in Light DOM, we can proceed and hydrate the slotted content.
|
|
6175
|
+
var _getFirstChild2 = renderer.getFirstChild; // VM is not rendering in Light DOM, we can proceed and hydrate the slotted content.
|
|
6175
6176
|
// Note: for Light DOM, this is handled while hydrating the VM
|
|
6176
|
-
|
|
6177
|
+
|
|
6178
|
+
hydrateChildren(_getFirstChild2(elm), vnode.children, elm, vm);
|
|
6177
6179
|
}
|
|
6178
6180
|
|
|
6179
6181
|
hydrateVM(vm);
|
|
@@ -6183,18 +6185,19 @@ var LWC = (function (exports) {
|
|
|
6183
6185
|
function hydrateChildren(node, children, parentNode, owner) {
|
|
6184
6186
|
var nextNode = node;
|
|
6185
6187
|
var anchor = null;
|
|
6188
|
+
var renderer = owner.renderer;
|
|
6186
6189
|
|
|
6187
6190
|
for (var _i29 = 0; _i29 < children.length; _i29++) {
|
|
6188
6191
|
var childVnode = children[_i29];
|
|
6189
6192
|
|
|
6190
6193
|
if (!isNull(childVnode)) {
|
|
6191
6194
|
if (nextNode) {
|
|
6192
|
-
nextNode = hydrateNode(nextNode, childVnode);
|
|
6195
|
+
nextNode = hydrateNode(nextNode, childVnode, renderer);
|
|
6193
6196
|
anchor = childVnode.elm;
|
|
6194
6197
|
} else {
|
|
6195
6198
|
hasMismatch = true;
|
|
6196
6199
|
|
|
6197
|
-
mount(childVnode, parentNode, anchor);
|
|
6200
|
+
mount(childVnode, parentNode, renderer, anchor);
|
|
6198
6201
|
anchor = childVnode.elm;
|
|
6199
6202
|
}
|
|
6200
6203
|
}
|
|
@@ -6202,31 +6205,39 @@ var LWC = (function (exports) {
|
|
|
6202
6205
|
|
|
6203
6206
|
if (nextNode) {
|
|
6204
6207
|
hasMismatch = true;
|
|
6208
|
+
// a good reference to what element to act upon, we instead
|
|
6209
|
+
// rely on the vm's associated renderer for navigating to the
|
|
6210
|
+
// next node in the list to be hydrated.
|
|
6211
|
+
|
|
6212
|
+
|
|
6213
|
+
var _nextSibling = renderer.nextSibling;
|
|
6205
6214
|
|
|
6206
6215
|
do {
|
|
6207
6216
|
var current = nextNode;
|
|
6208
|
-
nextNode =
|
|
6209
|
-
removeNode(current, parentNode);
|
|
6217
|
+
nextNode = _nextSibling(nextNode);
|
|
6218
|
+
removeNode(current, parentNode, renderer);
|
|
6210
6219
|
} while (nextNode);
|
|
6211
6220
|
}
|
|
6212
6221
|
}
|
|
6213
6222
|
|
|
6214
|
-
function handleMismatch(node, vnode,
|
|
6223
|
+
function handleMismatch(node, vnode, renderer) {
|
|
6215
6224
|
hasMismatch = true;
|
|
6216
|
-
|
|
6217
|
-
var parentNode = getProperty
|
|
6218
|
-
mount(vnode, parentNode, node);
|
|
6219
|
-
removeNode(node, parentNode);
|
|
6225
|
+
var getProperty = renderer.getProperty;
|
|
6226
|
+
var parentNode = getProperty(node, 'parentNode');
|
|
6227
|
+
mount(vnode, parentNode, renderer, node);
|
|
6228
|
+
removeNode(node, parentNode, renderer);
|
|
6220
6229
|
return vnode.elm;
|
|
6221
6230
|
}
|
|
6222
6231
|
|
|
6223
|
-
function patchElementPropsAndAttrs(vnode) {
|
|
6224
|
-
applyEventListeners(vnode);
|
|
6225
|
-
patchProps(null, vnode);
|
|
6232
|
+
function patchElementPropsAndAttrs(vnode, renderer) {
|
|
6233
|
+
applyEventListeners(vnode, renderer);
|
|
6234
|
+
patchProps(null, vnode, renderer);
|
|
6226
6235
|
}
|
|
6227
6236
|
|
|
6228
|
-
function hasCorrectNodeType(vnode, node, nodeType) {
|
|
6229
|
-
|
|
6237
|
+
function hasCorrectNodeType(vnode, node, nodeType, renderer) {
|
|
6238
|
+
var getProperty = renderer.getProperty;
|
|
6239
|
+
|
|
6240
|
+
if (getProperty(node, 'nodeType') !== nodeType) {
|
|
6230
6241
|
|
|
6231
6242
|
return false;
|
|
6232
6243
|
}
|
|
@@ -6234,19 +6245,21 @@ var LWC = (function (exports) {
|
|
|
6234
6245
|
return true;
|
|
6235
6246
|
}
|
|
6236
6247
|
|
|
6237
|
-
function isMatchingElement(vnode, elm) {
|
|
6238
|
-
|
|
6248
|
+
function isMatchingElement(vnode, elm, renderer) {
|
|
6249
|
+
var getProperty = renderer.getProperty;
|
|
6250
|
+
|
|
6251
|
+
if (vnode.sel.toLowerCase() !== getProperty(elm, 'tagName').toLowerCase()) {
|
|
6239
6252
|
|
|
6240
6253
|
return false;
|
|
6241
6254
|
}
|
|
6242
6255
|
|
|
6243
|
-
var hasIncompatibleAttrs = validateAttrs(vnode, elm);
|
|
6244
|
-
var hasIncompatibleClass = validateClassAttr(vnode, elm);
|
|
6245
|
-
var hasIncompatibleStyle = validateStyleAttr(vnode, elm);
|
|
6256
|
+
var hasIncompatibleAttrs = validateAttrs(vnode, elm, renderer);
|
|
6257
|
+
var hasIncompatibleClass = validateClassAttr(vnode, elm, renderer);
|
|
6258
|
+
var hasIncompatibleStyle = validateStyleAttr(vnode, elm, renderer);
|
|
6246
6259
|
return hasIncompatibleAttrs && hasIncompatibleClass && hasIncompatibleStyle;
|
|
6247
6260
|
}
|
|
6248
6261
|
|
|
6249
|
-
function validateAttrs(vnode, elm) {
|
|
6262
|
+
function validateAttrs(vnode, elm, renderer) {
|
|
6250
6263
|
var _vnode$data$attrs = vnode.data.attrs,
|
|
6251
6264
|
attrs = _vnode$data$attrs === void 0 ? {} : _vnode$data$attrs;
|
|
6252
6265
|
var nodesAreCompatible = true; // Validate attributes, though we could always recovery from those by running the update mods.
|
|
@@ -6257,7 +6270,10 @@ var LWC = (function (exports) {
|
|
|
6257
6270
|
attrName = _Object$entries$_i[0],
|
|
6258
6271
|
attrValue = _Object$entries$_i[1];
|
|
6259
6272
|
|
|
6260
|
-
|
|
6273
|
+
vnode.owner;
|
|
6274
|
+
var _getAttribute = renderer.getAttribute;
|
|
6275
|
+
|
|
6276
|
+
var elmAttrValue = _getAttribute(elm, attrName);
|
|
6261
6277
|
|
|
6262
6278
|
if (String(attrValue) !== elmAttrValue) {
|
|
6263
6279
|
|
|
@@ -6268,18 +6284,20 @@ var LWC = (function (exports) {
|
|
|
6268
6284
|
return nodesAreCompatible;
|
|
6269
6285
|
}
|
|
6270
6286
|
|
|
6271
|
-
function validateClassAttr(vnode, elm) {
|
|
6287
|
+
function validateClassAttr(vnode, elm, renderer) {
|
|
6272
6288
|
var _vnode$data = vnode.data,
|
|
6273
6289
|
className = _vnode$data.className,
|
|
6274
6290
|
classMap = _vnode$data.classMap;
|
|
6291
|
+
var getProperty = renderer.getProperty,
|
|
6292
|
+
getClassList = renderer.getClassList;
|
|
6275
6293
|
var nodesAreCompatible = true;
|
|
6276
6294
|
|
|
6277
|
-
if (!isUndefined$1(className) && String(className) !== getProperty
|
|
6295
|
+
if (!isUndefined$1(className) && String(className) !== getProperty(elm, 'className')) {
|
|
6278
6296
|
// className is used when class is bound to an expr.
|
|
6279
6297
|
nodesAreCompatible = false;
|
|
6280
6298
|
} else if (!isUndefined$1(classMap)) {
|
|
6281
6299
|
// classMap is used when class is set to static value.
|
|
6282
|
-
var classList = getClassList
|
|
6300
|
+
var classList = getClassList(elm);
|
|
6283
6301
|
var computedClassName = ''; // all classes from the vnode should be in the element.classList
|
|
6284
6302
|
|
|
6285
6303
|
for (var name in classMap) {
|
|
@@ -6300,11 +6318,12 @@ var LWC = (function (exports) {
|
|
|
6300
6318
|
return nodesAreCompatible;
|
|
6301
6319
|
}
|
|
6302
6320
|
|
|
6303
|
-
function validateStyleAttr(vnode, elm) {
|
|
6321
|
+
function validateStyleAttr(vnode, elm, renderer) {
|
|
6304
6322
|
var _vnode$data2 = vnode.data,
|
|
6305
6323
|
style = _vnode$data2.style,
|
|
6306
6324
|
styleDecls = _vnode$data2.styleDecls;
|
|
6307
|
-
var
|
|
6325
|
+
var getAttribute = renderer.getAttribute;
|
|
6326
|
+
var elmStyle = getAttribute(elm, 'style') || '';
|
|
6308
6327
|
var nodesAreCompatible = true;
|
|
6309
6328
|
|
|
6310
6329
|
if (!isUndefined$1(style) && style !== elmStyle) {
|
|
@@ -6340,6 +6359,57 @@ var LWC = (function (exports) {
|
|
|
6340
6359
|
|
|
6341
6360
|
return nodesAreCompatible;
|
|
6342
6361
|
}
|
|
6362
|
+
|
|
6363
|
+
function areCompatibleNodes(client, ssr, vnode, renderer) {
|
|
6364
|
+
var getProperty = renderer.getProperty,
|
|
6365
|
+
getAttribute = renderer.getAttribute;
|
|
6366
|
+
|
|
6367
|
+
if (getProperty(client, 'nodeType') === 3
|
|
6368
|
+
/* TEXT */
|
|
6369
|
+
) {
|
|
6370
|
+
if (!hasCorrectNodeType(vnode, ssr, 3
|
|
6371
|
+
/* TEXT */
|
|
6372
|
+
, renderer)) {
|
|
6373
|
+
return false;
|
|
6374
|
+
}
|
|
6375
|
+
|
|
6376
|
+
return getProperty(client, 'nodeValue') === getProperty(ssr, 'nodeValue');
|
|
6377
|
+
}
|
|
6378
|
+
|
|
6379
|
+
if (getProperty(client, 'nodeType') === 8
|
|
6380
|
+
/* COMMENT */
|
|
6381
|
+
) {
|
|
6382
|
+
if (!hasCorrectNodeType(vnode, ssr, 8
|
|
6383
|
+
/* COMMENT */
|
|
6384
|
+
, renderer)) {
|
|
6385
|
+
return false;
|
|
6386
|
+
}
|
|
6387
|
+
|
|
6388
|
+
return getProperty(client, 'nodeValue') === getProperty(ssr, 'nodeValue');
|
|
6389
|
+
}
|
|
6390
|
+
|
|
6391
|
+
if (!hasCorrectNodeType(vnode, ssr, 1
|
|
6392
|
+
/* ELEMENT */
|
|
6393
|
+
, renderer)) {
|
|
6394
|
+
return false;
|
|
6395
|
+
}
|
|
6396
|
+
|
|
6397
|
+
var isCompatibleElements = true;
|
|
6398
|
+
|
|
6399
|
+
if (getProperty(client, 'tagName') !== getProperty(ssr, 'tagName')) {
|
|
6400
|
+
|
|
6401
|
+
return false;
|
|
6402
|
+
}
|
|
6403
|
+
|
|
6404
|
+
var clientAttrsNames = getProperty(client, 'getAttributeNames').call(client);
|
|
6405
|
+
clientAttrsNames.forEach(function (attrName) {
|
|
6406
|
+
if (getAttribute(client, attrName) !== getAttribute(ssr, attrName)) {
|
|
6407
|
+
logError("Mismatch hydrating element <".concat(getProperty(client, 'tagName').toLowerCase(), ">: attribute \"").concat(attrName, "\" has different values, expected \"").concat(getAttribute(client, attrName), "\" but found \"").concat(getAttribute(ssr, attrName), "\""), vnode.owner);
|
|
6408
|
+
isCompatibleElements = false;
|
|
6409
|
+
}
|
|
6410
|
+
});
|
|
6411
|
+
return isCompatibleElements;
|
|
6412
|
+
}
|
|
6343
6413
|
/*
|
|
6344
6414
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
6345
6415
|
* All rights reserved.
|
|
@@ -6387,7 +6457,7 @@ var LWC = (function (exports) {
|
|
|
6387
6457
|
|
|
6388
6458
|
return ctor;
|
|
6389
6459
|
}
|
|
6390
|
-
/* version: 2.
|
|
6460
|
+
/* version: 2.15.0 */
|
|
6391
6461
|
|
|
6392
6462
|
/*
|
|
6393
6463
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
@@ -6557,7 +6627,7 @@ var LWC = (function (exports) {
|
|
|
6557
6627
|
try {
|
|
6558
6628
|
// dereference HTMLElement global because babel wraps globals in compat mode with a
|
|
6559
6629
|
// _wrapNativeSuper()
|
|
6560
|
-
// This is a problem because LWCUpgradableElement extends renderer.
|
|
6630
|
+
// This is a problem because LWCUpgradableElement extends renderer.HTMLElementExported which does not
|
|
6561
6631
|
// get wrapped by babel.
|
|
6562
6632
|
var HTMLElementAlias = HTMLElement; // In case we use compat mode with a modern browser, the compat mode transformation
|
|
6563
6633
|
// invokes the DOM api with an .apply() or .call() to initialize any DOM api sub-classing,
|
|
@@ -6633,9 +6703,22 @@ var LWC = (function (exports) {
|
|
|
6633
6703
|
}
|
|
6634
6704
|
|
|
6635
6705
|
var ssr = false;
|
|
6706
|
+
|
|
6707
|
+
function isHydrating() {
|
|
6708
|
+
return hydrating;
|
|
6709
|
+
}
|
|
6710
|
+
|
|
6636
6711
|
var isNativeShadowDefined = _globalThis[KEY__IS_NATIVE_SHADOW_ROOT_DEFINED];
|
|
6637
6712
|
var isSyntheticShadowDefined = hasOwnProperty$1.call(Element.prototype, KEY__SHADOW_TOKEN);
|
|
6638
6713
|
|
|
6714
|
+
function cloneNode(node, deep) {
|
|
6715
|
+
return node.cloneNode(deep);
|
|
6716
|
+
}
|
|
6717
|
+
|
|
6718
|
+
function createFragment(html) {
|
|
6719
|
+
return document.createRange().createContextualFragment(html).firstChild;
|
|
6720
|
+
}
|
|
6721
|
+
|
|
6639
6722
|
function createElement$1(tagName, namespace) {
|
|
6640
6723
|
return isUndefined$1(namespace) ? document.createElement(tagName) : document.createElementNS(namespace, tagName);
|
|
6641
6724
|
}
|
|
@@ -6767,44 +6850,54 @@ var LWC = (function (exports) {
|
|
|
6767
6850
|
return node.isConnected;
|
|
6768
6851
|
}
|
|
6769
6852
|
|
|
6853
|
+
function assertInstanceOfHTMLElement(elm, msg) {
|
|
6854
|
+
assert.invariant(elm instanceof HTMLElement, msg);
|
|
6855
|
+
}
|
|
6856
|
+
|
|
6770
6857
|
var HTMLElementExported = HTMLElementConstructor;
|
|
6771
|
-
|
|
6772
|
-
|
|
6773
|
-
|
|
6774
|
-
|
|
6775
|
-
|
|
6776
|
-
|
|
6777
|
-
|
|
6778
|
-
|
|
6779
|
-
|
|
6780
|
-
|
|
6781
|
-
|
|
6782
|
-
|
|
6783
|
-
|
|
6784
|
-
|
|
6785
|
-
|
|
6786
|
-
|
|
6787
|
-
|
|
6788
|
-
|
|
6789
|
-
|
|
6790
|
-
|
|
6791
|
-
|
|
6792
|
-
|
|
6793
|
-
|
|
6794
|
-
|
|
6795
|
-
|
|
6796
|
-
|
|
6797
|
-
|
|
6798
|
-
|
|
6799
|
-
|
|
6800
|
-
|
|
6801
|
-
|
|
6802
|
-
|
|
6803
|
-
|
|
6804
|
-
|
|
6805
|
-
|
|
6806
|
-
|
|
6807
|
-
|
|
6858
|
+
var renderer = {
|
|
6859
|
+
ssr: ssr,
|
|
6860
|
+
isNativeShadowDefined: isNativeShadowDefined,
|
|
6861
|
+
isSyntheticShadowDefined: isSyntheticShadowDefined,
|
|
6862
|
+
HTMLElementExported: HTMLElementExported,
|
|
6863
|
+
isHydrating: isHydrating,
|
|
6864
|
+
insert: insert,
|
|
6865
|
+
remove: remove,
|
|
6866
|
+
cloneNode: cloneNode,
|
|
6867
|
+
createFragment: createFragment,
|
|
6868
|
+
createElement: createElement$1,
|
|
6869
|
+
createText: createText,
|
|
6870
|
+
createComment: createComment,
|
|
6871
|
+
nextSibling: nextSibling,
|
|
6872
|
+
attachShadow: attachShadow,
|
|
6873
|
+
getProperty: getProperty,
|
|
6874
|
+
setProperty: setProperty,
|
|
6875
|
+
setText: setText,
|
|
6876
|
+
getAttribute: getAttribute,
|
|
6877
|
+
setAttribute: setAttribute,
|
|
6878
|
+
removeAttribute: removeAttribute,
|
|
6879
|
+
addEventListener: addEventListener,
|
|
6880
|
+
removeEventListener: removeEventListener,
|
|
6881
|
+
dispatchEvent: dispatchEvent,
|
|
6882
|
+
getClassList: getClassList,
|
|
6883
|
+
setCSSStyleProperty: setCSSStyleProperty,
|
|
6884
|
+
getBoundingClientRect: getBoundingClientRect,
|
|
6885
|
+
querySelector: querySelector,
|
|
6886
|
+
querySelectorAll: querySelectorAll,
|
|
6887
|
+
getElementsByTagName: getElementsByTagName,
|
|
6888
|
+
getElementsByClassName: getElementsByClassName,
|
|
6889
|
+
getChildren: getChildren,
|
|
6890
|
+
getChildNodes: getChildNodes,
|
|
6891
|
+
getFirstChild: getFirstChild,
|
|
6892
|
+
getFirstElementChild: getFirstElementChild,
|
|
6893
|
+
getLastChild: getLastChild,
|
|
6894
|
+
getLastElementChild: getLastElementChild,
|
|
6895
|
+
isConnected: isConnected,
|
|
6896
|
+
insertStylesheet: insertStylesheet,
|
|
6897
|
+
assertInstanceOfHTMLElement: assertInstanceOfHTMLElement,
|
|
6898
|
+
defineCustomElement: defineCustomElement,
|
|
6899
|
+
getCustomElement: getCustomElement
|
|
6900
|
+
};
|
|
6808
6901
|
/*
|
|
6809
6902
|
* Copyright (c) 2018, salesforce.com, inc.
|
|
6810
6903
|
* All rights reserved.
|
|
@@ -6812,7 +6905,6 @@ var LWC = (function (exports) {
|
|
|
6812
6905
|
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
|
|
6813
6906
|
*/
|
|
6814
6907
|
|
|
6815
|
-
|
|
6816
6908
|
function resetShadowRootAndLightDom(element, Ctor) {
|
|
6817
6909
|
if (element.shadowRoot) {
|
|
6818
6910
|
var shadowRoot = element.shadowRoot;
|
|
@@ -6830,7 +6922,7 @@ var LWC = (function (exports) {
|
|
|
6830
6922
|
}
|
|
6831
6923
|
|
|
6832
6924
|
function createVMWithProps(element, Ctor, props) {
|
|
6833
|
-
var vm = createVM(element, Ctor, {
|
|
6925
|
+
var vm = createVM(element, Ctor, renderer, {
|
|
6834
6926
|
mode: 'open',
|
|
6835
6927
|
owner: null,
|
|
6836
6928
|
tagName: element.tagName.toLowerCase(),
|
|
@@ -6946,7 +7038,7 @@ var LWC = (function (exports) {
|
|
|
6946
7038
|
hydrateComponent(_assertThisInitialized(_this6), Ctor, {});
|
|
6947
7039
|
hydratedCustomElements.add(_assertThisInitialized(_this6));
|
|
6948
7040
|
} else {
|
|
6949
|
-
createVM(_assertThisInitialized(_this6), Ctor, {
|
|
7041
|
+
createVM(_assertThisInitialized(_this6), Ctor, renderer, {
|
|
6950
7042
|
mode: 'open',
|
|
6951
7043
|
owner: null,
|
|
6952
7044
|
tagName: _this6.tagName
|
|
@@ -7055,7 +7147,7 @@ var LWC = (function (exports) {
|
|
|
7055
7147
|
throw new TypeError("\"createElement\" function expects an \"is\" option with a valid component constructor.");
|
|
7056
7148
|
}
|
|
7057
7149
|
|
|
7058
|
-
var UpgradableConstructor = getUpgradableConstructor(sel);
|
|
7150
|
+
var UpgradableConstructor = getUpgradableConstructor(sel, renderer);
|
|
7059
7151
|
var wasComponentUpgraded = false; // the custom element from the registry is expecting an upgrade callback
|
|
7060
7152
|
|
|
7061
7153
|
/**
|
|
@@ -7066,7 +7158,7 @@ var LWC = (function (exports) {
|
|
|
7066
7158
|
*/
|
|
7067
7159
|
|
|
7068
7160
|
var element = new UpgradableConstructor(function (elm) {
|
|
7069
|
-
createVM(elm, Ctor, {
|
|
7161
|
+
createVM(elm, Ctor, renderer, {
|
|
7070
7162
|
tagName: sel,
|
|
7071
7163
|
mode: options.mode !== 'closed' ? 'open' : 'closed',
|
|
7072
7164
|
owner: null
|
|
@@ -7163,7 +7255,7 @@ var LWC = (function (exports) {
|
|
|
7163
7255
|
});
|
|
7164
7256
|
freeze(LightningElement);
|
|
7165
7257
|
seal(LightningElement.prototype);
|
|
7166
|
-
/* version: 2.
|
|
7258
|
+
/* version: 2.15.0 */
|
|
7167
7259
|
|
|
7168
7260
|
exports.LightningElement = LightningElement;
|
|
7169
7261
|
exports.__unstable__ProfilerControl = profilerControl;
|
|
@@ -7177,11 +7269,14 @@ var LWC = (function (exports) {
|
|
|
7177
7269
|
exports.hydrateComponent = hydrateComponent;
|
|
7178
7270
|
exports.isComponentConstructor = isComponentConstructor;
|
|
7179
7271
|
exports.isNodeFromTemplate = isNodeShadowed;
|
|
7272
|
+
exports.parseFragment = parseFragment;
|
|
7273
|
+
exports.parseSVGFragment = parseSVGFragment;
|
|
7180
7274
|
exports.readonly = readonly;
|
|
7181
7275
|
exports.register = register;
|
|
7182
7276
|
exports.registerComponent = registerComponent;
|
|
7183
7277
|
exports.registerDecorators = registerDecorators;
|
|
7184
7278
|
exports.registerTemplate = registerTemplate;
|
|
7279
|
+
exports.renderer = renderer;
|
|
7185
7280
|
exports.sanitizeAttribute = sanitizeAttribute;
|
|
7186
7281
|
exports.setFeatureFlag = setFeatureFlag;
|
|
7187
7282
|
exports.setFeatureFlagForTest = setFeatureFlagForTest;
|