@angular/core 4.4.3 → 4.4.7
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/@angular/core/testing.es5.js +13 -3
- package/@angular/core/testing.es5.js.map +1 -1
- package/@angular/core/testing.js +12 -3
- package/@angular/core/testing.js.map +1 -1
- package/@angular/core.es5.js +280 -279
- package/@angular/core.es5.js.map +1 -1
- package/@angular/core.js +280 -280
- package/@angular/core.js.map +1 -1
- package/bundles/core-testing.umd.js +14 -4
- package/bundles/core-testing.umd.js.map +1 -1
- package/bundles/core-testing.umd.min.js +3 -3
- package/bundles/core-testing.umd.min.js.map +1 -1
- package/bundles/core.umd.js +281 -280
- package/bundles/core.umd.js.map +1 -1
- package/bundles/core.umd.min.js +18 -18
- package/bundles/core.umd.min.js.map +1 -1
- package/core.metadata.json +1 -1
- package/package.json +1 -1
- package/src/animation/dsl.d.ts +28 -1
- package/src/change_detection/constants.d.ts +2 -2
- package/src/change_detection/differs/keyvalue_differs.d.ts +2 -2
- package/src/view/element.d.ts +2 -2
- package/src/view/ng_content.d.ts +1 -1
- package/src/view/provider.d.ts +4 -4
- package/src/view/pure_expression.d.ts +3 -3
- package/src/view/text.d.ts +1 -1
- package/src/view/types.d.ts +4 -2
- package/src/view/view.d.ts +1 -1
- package/testing/src/metadata_override.metadata.json +1 -0
- package/testing/src/test_bed.d.ts +25 -0
- package/testing/src/test_bed.metadata.json +1 -1
- package/testing.d.ts +1 -1
package/@angular/core.es5.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as tslib_1 from "tslib";
|
|
2
2
|
/**
|
|
3
|
-
* @license Angular v4.4.
|
|
3
|
+
* @license Angular v4.4.7
|
|
4
4
|
* (c) 2010-2017 Google, Inc. https://angular.io/
|
|
5
5
|
* License: MIT
|
|
6
6
|
*/
|
|
@@ -796,7 +796,7 @@ var Version = (function () {
|
|
|
796
796
|
/**
|
|
797
797
|
* \@stable
|
|
798
798
|
*/
|
|
799
|
-
var VERSION = new Version('4.4.
|
|
799
|
+
var VERSION = new Version('4.4.7');
|
|
800
800
|
/**
|
|
801
801
|
* @license
|
|
802
802
|
* Copyright Google Inc. All Rights Reserved.
|
|
@@ -6216,7 +6216,6 @@ var EventListener = (function () {
|
|
|
6216
6216
|
this.name = name;
|
|
6217
6217
|
this.callback = callback;
|
|
6218
6218
|
}
|
|
6219
|
-
;
|
|
6220
6219
|
return EventListener;
|
|
6221
6220
|
}());
|
|
6222
6221
|
/**
|
|
@@ -8573,7 +8572,7 @@ function checkAndUpdateBinding(view, def, bindingIdx, value) {
|
|
|
8573
8572
|
function checkBindingNoChanges(view, def, bindingIdx, value) {
|
|
8574
8573
|
var /** @type {?} */ oldValue = view.oldValues[def.bindingIndex + bindingIdx];
|
|
8575
8574
|
if ((view.state & 1 /* BeforeFirstCheck */) || !devModeEqual(oldValue, value)) {
|
|
8576
|
-
throw expressionChangedAfterItHasBeenCheckedError(Services.createDebugContext(view, def.
|
|
8575
|
+
throw expressionChangedAfterItHasBeenCheckedError(Services.createDebugContext(view, def.nodeIndex), oldValue, value, (view.state & 1 /* BeforeFirstCheck */) !== 0);
|
|
8577
8576
|
}
|
|
8578
8577
|
}
|
|
8579
8578
|
/**
|
|
@@ -8621,7 +8620,7 @@ function dispatchEvent(view, nodeIndex, eventName, event) {
|
|
|
8621
8620
|
function declaredViewContainer(view) {
|
|
8622
8621
|
if (view.parent) {
|
|
8623
8622
|
var /** @type {?} */ parentView = view.parent;
|
|
8624
|
-
return asElementData(parentView, /** @type {?} */ ((view.parentNodeDef)).
|
|
8623
|
+
return asElementData(parentView, /** @type {?} */ ((view.parentNodeDef)).nodeIndex);
|
|
8625
8624
|
}
|
|
8626
8625
|
return null;
|
|
8627
8626
|
}
|
|
@@ -8649,9 +8648,9 @@ function viewParentEl(view) {
|
|
|
8649
8648
|
function renderNode(view, def) {
|
|
8650
8649
|
switch (def.flags & 201347067 /* Types */) {
|
|
8651
8650
|
case 1 /* TypeElement */:
|
|
8652
|
-
return asElementData(view, def.
|
|
8651
|
+
return asElementData(view, def.nodeIndex).renderElement;
|
|
8653
8652
|
case 2 /* TypeText */:
|
|
8654
|
-
return asTextData(view, def.
|
|
8653
|
+
return asTextData(view, def.nodeIndex).renderText;
|
|
8655
8654
|
}
|
|
8656
8655
|
}
|
|
8657
8656
|
/**
|
|
@@ -8738,7 +8737,7 @@ function getParentRenderElement(view, renderHost, def) {
|
|
|
8738
8737
|
ViewEncapsulation.Native)) {
|
|
8739
8738
|
// only children of non components, or children of components with native encapsulation should
|
|
8740
8739
|
// be attached.
|
|
8741
|
-
return asElementData(view, /** @type {?} */ ((def.renderParent)).
|
|
8740
|
+
return asElementData(view, /** @type {?} */ ((def.renderParent)).nodeIndex).renderElement;
|
|
8742
8741
|
}
|
|
8743
8742
|
}
|
|
8744
8743
|
else {
|
|
@@ -8820,8 +8819,8 @@ function visitProjectedRenderNodes(view, ngContentIndex, action, parentNode, nex
|
|
|
8820
8819
|
}
|
|
8821
8820
|
var /** @type {?} */ hostView = ((compView)).parent;
|
|
8822
8821
|
var /** @type {?} */ hostElDef = viewParentEl(/** @type {?} */ ((compView)));
|
|
8823
|
-
var /** @type {?} */ startIndex = ((hostElDef)).
|
|
8824
|
-
var /** @type {?} */ endIndex = ((hostElDef)).
|
|
8822
|
+
var /** @type {?} */ startIndex = ((hostElDef)).nodeIndex + 1;
|
|
8823
|
+
var /** @type {?} */ endIndex = ((hostElDef)).nodeIndex + ((hostElDef)).childCount;
|
|
8825
8824
|
for (var /** @type {?} */ i = startIndex; i <= endIndex; i++) {
|
|
8826
8825
|
var /** @type {?} */ nodeDef = ((hostView)).def.nodes[i];
|
|
8827
8826
|
if (nodeDef.ngContentIndex === ngContentIndex) {
|
|
@@ -8862,7 +8861,7 @@ function visitRenderNode(view, nodeDef, action, parentNode, nextSibling, target)
|
|
|
8862
8861
|
execRenderNodeAction(view, rn, action, parentNode, nextSibling, target);
|
|
8863
8862
|
}
|
|
8864
8863
|
if (nodeDef.bindingFlags & (32 /* SyntheticHostProperty */)) {
|
|
8865
|
-
var /** @type {?} */ compView = asElementData(view, nodeDef.
|
|
8864
|
+
var /** @type {?} */ compView = asElementData(view, nodeDef.nodeIndex).componentView;
|
|
8866
8865
|
execRenderNodeAction(compView, rn, action, parentNode, nextSibling, target);
|
|
8867
8866
|
}
|
|
8868
8867
|
}
|
|
@@ -8870,13 +8869,13 @@ function visitRenderNode(view, nodeDef, action, parentNode, nextSibling, target)
|
|
|
8870
8869
|
execRenderNodeAction(view, rn, action, parentNode, nextSibling, target);
|
|
8871
8870
|
}
|
|
8872
8871
|
if (nodeDef.flags & 16777216 /* EmbeddedViews */) {
|
|
8873
|
-
var /** @type {?} */ embeddedViews = ((asElementData(view, nodeDef.
|
|
8872
|
+
var /** @type {?} */ embeddedViews = ((asElementData(view, nodeDef.nodeIndex).viewContainer))._embeddedViews;
|
|
8874
8873
|
for (var /** @type {?} */ k = 0; k < embeddedViews.length; k++) {
|
|
8875
8874
|
visitRootRenderNodes(embeddedViews[k], action, parentNode, nextSibling, target);
|
|
8876
8875
|
}
|
|
8877
8876
|
}
|
|
8878
8877
|
if (nodeDef.flags & 1 /* TypeElement */ && !((nodeDef.element)).name) {
|
|
8879
|
-
visitSiblingRenderNodes(view, action, nodeDef.
|
|
8878
|
+
visitSiblingRenderNodes(view, action, nodeDef.nodeIndex + 1, nodeDef.nodeIndex + nodeDef.childCount, parentNode, nextSibling, target);
|
|
8880
8879
|
}
|
|
8881
8880
|
}
|
|
8882
8881
|
}
|
|
@@ -9029,13 +9028,14 @@ function anchorDef(flags, matchedQueriesDsl, ngContentIndex, childCount, handleE
|
|
|
9029
9028
|
var /** @type {?} */ template = templateFactory ? resolveDefinition(templateFactory) : null;
|
|
9030
9029
|
return {
|
|
9031
9030
|
// will bet set by the view definition
|
|
9032
|
-
|
|
9031
|
+
nodeIndex: -1,
|
|
9033
9032
|
parent: null,
|
|
9034
9033
|
renderParent: null,
|
|
9035
9034
|
bindingIndex: -1,
|
|
9036
9035
|
outputIndex: -1,
|
|
9037
9036
|
// regular values
|
|
9038
9037
|
flags: flags,
|
|
9038
|
+
checkIndex: -1,
|
|
9039
9039
|
childFlags: 0,
|
|
9040
9040
|
directChildFlags: 0,
|
|
9041
9041
|
childMatchedQueries: 0, matchedQueries: matchedQueries, matchedQueryIds: matchedQueryIds, references: references, ngContentIndex: ngContentIndex, childCount: childCount,
|
|
@@ -9060,6 +9060,7 @@ function anchorDef(flags, matchedQueriesDsl, ngContentIndex, childCount, handleE
|
|
|
9060
9060
|
};
|
|
9061
9061
|
}
|
|
9062
9062
|
/**
|
|
9063
|
+
* @param {?} checkIndex
|
|
9063
9064
|
* @param {?} flags
|
|
9064
9065
|
* @param {?} matchedQueriesDsl
|
|
9065
9066
|
* @param {?} ngContentIndex
|
|
@@ -9073,7 +9074,7 @@ function anchorDef(flags, matchedQueriesDsl, ngContentIndex, childCount, handleE
|
|
|
9073
9074
|
* @param {?=} componentRendererType
|
|
9074
9075
|
* @return {?}
|
|
9075
9076
|
*/
|
|
9076
|
-
function elementDef(flags, matchedQueriesDsl, ngContentIndex, childCount, namespaceAndName, fixedAttrs, bindings, outputs, handleEvent, componentView, componentRendererType) {
|
|
9077
|
+
function elementDef(checkIndex, flags, matchedQueriesDsl, ngContentIndex, childCount, namespaceAndName, fixedAttrs, bindings, outputs, handleEvent, componentView, componentRendererType) {
|
|
9077
9078
|
if (fixedAttrs === void 0) { fixedAttrs = []; }
|
|
9078
9079
|
if (!handleEvent) {
|
|
9079
9080
|
handleEvent = NOOP;
|
|
@@ -9126,12 +9127,13 @@ function elementDef(flags, matchedQueriesDsl, ngContentIndex, childCount, namesp
|
|
|
9126
9127
|
flags |= 1 /* TypeElement */;
|
|
9127
9128
|
return {
|
|
9128
9129
|
// will bet set by the view definition
|
|
9129
|
-
|
|
9130
|
+
nodeIndex: -1,
|
|
9130
9131
|
parent: null,
|
|
9131
9132
|
renderParent: null,
|
|
9132
9133
|
bindingIndex: -1,
|
|
9133
9134
|
outputIndex: -1,
|
|
9134
9135
|
// regular values
|
|
9136
|
+
checkIndex: checkIndex,
|
|
9135
9137
|
flags: flags,
|
|
9136
9138
|
childFlags: 0,
|
|
9137
9139
|
directChildFlags: 0,
|
|
@@ -9203,7 +9205,7 @@ function createElement(view, renderHost, def) {
|
|
|
9203
9205
|
function listenToElementOutputs(view, compView, def, el) {
|
|
9204
9206
|
for (var /** @type {?} */ i = 0; i < def.outputs.length; i++) {
|
|
9205
9207
|
var /** @type {?} */ output = def.outputs[i];
|
|
9206
|
-
var /** @type {?} */ handleEventClosure = renderEventHandlerClosure(view, def.
|
|
9208
|
+
var /** @type {?} */ handleEventClosure = renderEventHandlerClosure(view, def.nodeIndex, elementEventFullName(output.target, output.eventName));
|
|
9207
9209
|
var /** @type {?} */ listenTarget = output.target;
|
|
9208
9210
|
var /** @type {?} */ listenerView = view;
|
|
9209
9211
|
if (output.target === 'component') {
|
|
@@ -9297,7 +9299,7 @@ function checkAndUpdateElementValue(view, def, bindingIdx, value) {
|
|
|
9297
9299
|
return false;
|
|
9298
9300
|
}
|
|
9299
9301
|
var /** @type {?} */ binding = def.bindings[bindingIdx];
|
|
9300
|
-
var /** @type {?} */ elData = asElementData(view, def.
|
|
9302
|
+
var /** @type {?} */ elData = asElementData(view, def.nodeIndex);
|
|
9301
9303
|
var /** @type {?} */ renderNode$$1 = elData.renderElement;
|
|
9302
9304
|
var /** @type {?} */ name = ((binding.name));
|
|
9303
9305
|
switch (binding.flags & 15 /* Types */) {
|
|
@@ -9405,7 +9407,7 @@ function setElementProperty(view, binding, renderNode$$1, name, value) {
|
|
|
9405
9407
|
* Use of this source code is governed by an MIT-style license that can be
|
|
9406
9408
|
* found in the LICENSE file at https://angular.io/license
|
|
9407
9409
|
*/
|
|
9408
|
-
var
|
|
9410
|
+
var UNDEFINED_VALUE = new Object();
|
|
9409
9411
|
var InjectorRefTokenKey$1 = tokenKey(Injector);
|
|
9410
9412
|
var NgModuleRefTokenKey = tokenKey(NgModuleRef);
|
|
9411
9413
|
/**
|
|
@@ -9450,8 +9452,9 @@ function initNgModule(data) {
|
|
|
9450
9452
|
var /** @type {?} */ providers = data._providers = new Array(def.providers.length);
|
|
9451
9453
|
for (var /** @type {?} */ i = 0; i < def.providers.length; i++) {
|
|
9452
9454
|
var /** @type {?} */ provDef = def.providers[i];
|
|
9453
|
-
|
|
9454
|
-
_createProviderInstance$1(data, provDef);
|
|
9455
|
+
if (!(provDef.flags & 4096 /* LazyProvider */)) {
|
|
9456
|
+
providers[i] = _createProviderInstance$1(data, provDef);
|
|
9457
|
+
}
|
|
9455
9458
|
}
|
|
9456
9459
|
}
|
|
9457
9460
|
/**
|
|
@@ -9480,11 +9483,11 @@ function resolveNgModuleDep(data, depDef, notFoundValue) {
|
|
|
9480
9483
|
var /** @type {?} */ providerDef = data._def.providersByKey[tokenKey$$1];
|
|
9481
9484
|
if (providerDef) {
|
|
9482
9485
|
var /** @type {?} */ providerInstance = data._providers[providerDef.index];
|
|
9483
|
-
if (providerInstance ===
|
|
9486
|
+
if (providerInstance === undefined) {
|
|
9484
9487
|
providerInstance = data._providers[providerDef.index] =
|
|
9485
9488
|
_createProviderInstance$1(data, providerDef);
|
|
9486
9489
|
}
|
|
9487
|
-
return providerInstance;
|
|
9490
|
+
return providerInstance === UNDEFINED_VALUE ? undefined : providerInstance;
|
|
9488
9491
|
}
|
|
9489
9492
|
return data._parent.get(depDef.token, notFoundValue);
|
|
9490
9493
|
}
|
|
@@ -9509,7 +9512,7 @@ function _createProviderInstance$1(ngModule, providerDef) {
|
|
|
9509
9512
|
injectable = providerDef.value;
|
|
9510
9513
|
break;
|
|
9511
9514
|
}
|
|
9512
|
-
return injectable;
|
|
9515
|
+
return injectable === undefined ? UNDEFINED_VALUE : injectable;
|
|
9513
9516
|
}
|
|
9514
9517
|
/**
|
|
9515
9518
|
* @param {?} ngModule
|
|
@@ -9519,29 +9522,22 @@ function _createProviderInstance$1(ngModule, providerDef) {
|
|
|
9519
9522
|
*/
|
|
9520
9523
|
function _createClass(ngModule, ctor, deps) {
|
|
9521
9524
|
var /** @type {?} */ len = deps.length;
|
|
9522
|
-
var /** @type {?} */ injectable;
|
|
9523
9525
|
switch (len) {
|
|
9524
9526
|
case 0:
|
|
9525
|
-
|
|
9526
|
-
break;
|
|
9527
|
+
return new ctor();
|
|
9527
9528
|
case 1:
|
|
9528
|
-
|
|
9529
|
-
break;
|
|
9529
|
+
return new ctor(resolveNgModuleDep(ngModule, deps[0]));
|
|
9530
9530
|
case 2:
|
|
9531
|
-
|
|
9532
|
-
new ctor(resolveNgModuleDep(ngModule, deps[0]), resolveNgModuleDep(ngModule, deps[1]));
|
|
9533
|
-
break;
|
|
9531
|
+
return new ctor(resolveNgModuleDep(ngModule, deps[0]), resolveNgModuleDep(ngModule, deps[1]));
|
|
9534
9532
|
case 3:
|
|
9535
|
-
|
|
9536
|
-
break;
|
|
9533
|
+
return new ctor(resolveNgModuleDep(ngModule, deps[0]), resolveNgModuleDep(ngModule, deps[1]), resolveNgModuleDep(ngModule, deps[2]));
|
|
9537
9534
|
default:
|
|
9538
9535
|
var /** @type {?} */ depValues = new Array(len);
|
|
9539
9536
|
for (var /** @type {?} */ i = 0; i < len; i++) {
|
|
9540
9537
|
depValues[i] = resolveNgModuleDep(ngModule, deps[i]);
|
|
9541
9538
|
}
|
|
9542
|
-
|
|
9539
|
+
return new (ctor.bind.apply(ctor, [void 0].concat(depValues)))();
|
|
9543
9540
|
}
|
|
9544
|
-
return injectable;
|
|
9545
9541
|
}
|
|
9546
9542
|
/**
|
|
9547
9543
|
* @param {?} ngModule
|
|
@@ -9551,29 +9547,22 @@ function _createClass(ngModule, ctor, deps) {
|
|
|
9551
9547
|
*/
|
|
9552
9548
|
function _callFactory(ngModule, factory, deps) {
|
|
9553
9549
|
var /** @type {?} */ len = deps.length;
|
|
9554
|
-
var /** @type {?} */ injectable;
|
|
9555
9550
|
switch (len) {
|
|
9556
9551
|
case 0:
|
|
9557
|
-
|
|
9558
|
-
break;
|
|
9552
|
+
return factory();
|
|
9559
9553
|
case 1:
|
|
9560
|
-
|
|
9561
|
-
break;
|
|
9554
|
+
return factory(resolveNgModuleDep(ngModule, deps[0]));
|
|
9562
9555
|
case 2:
|
|
9563
|
-
|
|
9564
|
-
factory(resolveNgModuleDep(ngModule, deps[0]), resolveNgModuleDep(ngModule, deps[1]));
|
|
9565
|
-
break;
|
|
9556
|
+
return factory(resolveNgModuleDep(ngModule, deps[0]), resolveNgModuleDep(ngModule, deps[1]));
|
|
9566
9557
|
case 3:
|
|
9567
|
-
|
|
9568
|
-
break;
|
|
9558
|
+
return factory(resolveNgModuleDep(ngModule, deps[0]), resolveNgModuleDep(ngModule, deps[1]), resolveNgModuleDep(ngModule, deps[2]));
|
|
9569
9559
|
default:
|
|
9570
9560
|
var /** @type {?} */ depValues = Array(len);
|
|
9571
9561
|
for (var /** @type {?} */ i = 0; i < len; i++) {
|
|
9572
9562
|
depValues[i] = resolveNgModuleDep(ngModule, deps[i]);
|
|
9573
9563
|
}
|
|
9574
|
-
|
|
9564
|
+
return factory.apply(void 0, depValues);
|
|
9575
9565
|
}
|
|
9576
|
-
return injectable;
|
|
9577
9566
|
}
|
|
9578
9567
|
/**
|
|
9579
9568
|
* @param {?} ngModule
|
|
@@ -9586,7 +9575,7 @@ function callNgModuleLifecycle(ngModule, lifecycles) {
|
|
|
9586
9575
|
var /** @type {?} */ provDef = def.providers[i];
|
|
9587
9576
|
if (provDef.flags & 131072 /* OnDestroy */) {
|
|
9588
9577
|
var /** @type {?} */ instance = ngModule._providers[i];
|
|
9589
|
-
if (instance && instance !==
|
|
9578
|
+
if (instance && instance !== UNDEFINED_VALUE) {
|
|
9590
9579
|
instance.ngOnDestroy();
|
|
9591
9580
|
}
|
|
9592
9581
|
}
|
|
@@ -9868,7 +9857,7 @@ var ComponentFactory_ = (function (_super) {
|
|
|
9868
9857
|
throw new Error('ngModule should be provided');
|
|
9869
9858
|
}
|
|
9870
9859
|
var /** @type {?} */ viewDef = resolveDefinition(this.viewDefFactory);
|
|
9871
|
-
var /** @type {?} */ componentNodeIndex = ((((viewDef.nodes[0].element)).componentProvider)).
|
|
9860
|
+
var /** @type {?} */ componentNodeIndex = ((((viewDef.nodes[0].element)).componentProvider)).nodeIndex;
|
|
9872
9861
|
var /** @type {?} */ view = Services.createRootView(injector, projectableNodes || [], rootSelectorOrNode, viewDef, ngModule, EMPTY_CONTEXT);
|
|
9873
9862
|
var /** @type {?} */ component = asProviderData(view, componentNodeIndex).instance;
|
|
9874
9863
|
if (rootSelectorOrNode) {
|
|
@@ -9898,7 +9887,7 @@ var ComponentRef_ = (function (_super) {
|
|
|
9898
9887
|
* @return {?}
|
|
9899
9888
|
*/
|
|
9900
9889
|
get: function () {
|
|
9901
|
-
return new ElementRef(asElementData(this._view, this._elDef.
|
|
9890
|
+
return new ElementRef(asElementData(this._view, this._elDef.nodeIndex).renderElement);
|
|
9902
9891
|
},
|
|
9903
9892
|
enumerable: true,
|
|
9904
9893
|
configurable: true
|
|
@@ -9919,7 +9908,6 @@ var ComponentRef_ = (function (_super) {
|
|
|
9919
9908
|
enumerable: true,
|
|
9920
9909
|
configurable: true
|
|
9921
9910
|
});
|
|
9922
|
-
;
|
|
9923
9911
|
Object.defineProperty(ComponentRef_.prototype, "hostView", {
|
|
9924
9912
|
/**
|
|
9925
9913
|
* @return {?}
|
|
@@ -9928,7 +9916,6 @@ var ComponentRef_ = (function (_super) {
|
|
|
9928
9916
|
enumerable: true,
|
|
9929
9917
|
configurable: true
|
|
9930
9918
|
});
|
|
9931
|
-
;
|
|
9932
9919
|
Object.defineProperty(ComponentRef_.prototype, "changeDetectorRef", {
|
|
9933
9920
|
/**
|
|
9934
9921
|
* @return {?}
|
|
@@ -9937,7 +9924,6 @@ var ComponentRef_ = (function (_super) {
|
|
|
9937
9924
|
enumerable: true,
|
|
9938
9925
|
configurable: true
|
|
9939
9926
|
});
|
|
9940
|
-
;
|
|
9941
9927
|
Object.defineProperty(ComponentRef_.prototype, "componentType", {
|
|
9942
9928
|
/**
|
|
9943
9929
|
* @return {?}
|
|
@@ -10044,7 +10030,6 @@ var ViewContainerRef_ = (function () {
|
|
|
10044
10030
|
enumerable: true,
|
|
10045
10031
|
configurable: true
|
|
10046
10032
|
});
|
|
10047
|
-
;
|
|
10048
10033
|
/**
|
|
10049
10034
|
* @template C
|
|
10050
10035
|
* @param {?} templateRef
|
|
@@ -10283,7 +10268,7 @@ var TemplateRef_ = (function (_super) {
|
|
|
10283
10268
|
* @return {?}
|
|
10284
10269
|
*/
|
|
10285
10270
|
get: function () {
|
|
10286
|
-
return new ElementRef(asElementData(this._parentView, this._def.
|
|
10271
|
+
return new ElementRef(asElementData(this._parentView, this._def.nodeIndex).renderElement);
|
|
10287
10272
|
},
|
|
10288
10273
|
enumerable: true,
|
|
10289
10274
|
configurable: true
|
|
@@ -10327,14 +10312,14 @@ var Injector_ = (function () {
|
|
|
10327
10312
|
function nodeValue(view, index) {
|
|
10328
10313
|
var /** @type {?} */ def = view.def.nodes[index];
|
|
10329
10314
|
if (def.flags & 1 /* TypeElement */) {
|
|
10330
|
-
var /** @type {?} */ elData = asElementData(view, def.
|
|
10315
|
+
var /** @type {?} */ elData = asElementData(view, def.nodeIndex);
|
|
10331
10316
|
return ((def.element)).template ? elData.template : elData.renderElement;
|
|
10332
10317
|
}
|
|
10333
10318
|
else if (def.flags & 2 /* TypeText */) {
|
|
10334
|
-
return asTextData(view, def.
|
|
10319
|
+
return asTextData(view, def.nodeIndex).renderText;
|
|
10335
10320
|
}
|
|
10336
10321
|
else if (def.flags & (20224 /* CatProvider */ | 16 /* TypePipe */)) {
|
|
10337
|
-
return asProviderData(view, def.
|
|
10322
|
+
return asProviderData(view, def.nodeIndex).instance;
|
|
10338
10323
|
}
|
|
10339
10324
|
throw new Error("Illegal state: read nodeValue for node index " + index);
|
|
10340
10325
|
}
|
|
@@ -10632,8 +10617,8 @@ var ViewContainerRefTokenKey = tokenKey(ViewContainerRef);
|
|
|
10632
10617
|
var TemplateRefTokenKey = tokenKey(TemplateRef);
|
|
10633
10618
|
var ChangeDetectorRefTokenKey = tokenKey(ChangeDetectorRef);
|
|
10634
10619
|
var InjectorRefTokenKey = tokenKey(Injector);
|
|
10635
|
-
var NOT_CREATED = new Object();
|
|
10636
10620
|
/**
|
|
10621
|
+
* @param {?} checkIndex
|
|
10637
10622
|
* @param {?} flags
|
|
10638
10623
|
* @param {?} matchedQueries
|
|
10639
10624
|
* @param {?} childCount
|
|
@@ -10643,7 +10628,7 @@ var NOT_CREATED = new Object();
|
|
|
10643
10628
|
* @param {?=} outputs
|
|
10644
10629
|
* @return {?}
|
|
10645
10630
|
*/
|
|
10646
|
-
function directiveDef(flags, matchedQueries, childCount, ctor, deps, props, outputs) {
|
|
10631
|
+
function directiveDef(checkIndex, flags, matchedQueries, childCount, ctor, deps, props, outputs) {
|
|
10647
10632
|
var /** @type {?} */ bindings = [];
|
|
10648
10633
|
if (props) {
|
|
10649
10634
|
for (var /** @type {?} */ prop in props) {
|
|
@@ -10664,7 +10649,7 @@ function directiveDef(flags, matchedQueries, childCount, ctor, deps, props, outp
|
|
|
10664
10649
|
}
|
|
10665
10650
|
}
|
|
10666
10651
|
flags |= 16384 /* TypeDirective */;
|
|
10667
|
-
return _def(flags, matchedQueries, childCount, ctor, ctor, deps, bindings, outputDefs);
|
|
10652
|
+
return _def(checkIndex, flags, matchedQueries, childCount, ctor, ctor, deps, bindings, outputDefs);
|
|
10668
10653
|
}
|
|
10669
10654
|
/**
|
|
10670
10655
|
* @param {?} flags
|
|
@@ -10674,7 +10659,7 @@ function directiveDef(flags, matchedQueries, childCount, ctor, deps, props, outp
|
|
|
10674
10659
|
*/
|
|
10675
10660
|
function pipeDef(flags, ctor, deps) {
|
|
10676
10661
|
flags |= 16 /* TypePipe */;
|
|
10677
|
-
return _def(flags, null, 0, ctor, ctor, deps);
|
|
10662
|
+
return _def(-1, flags, null, 0, ctor, ctor, deps);
|
|
10678
10663
|
}
|
|
10679
10664
|
/**
|
|
10680
10665
|
* @param {?} flags
|
|
@@ -10685,9 +10670,10 @@ function pipeDef(flags, ctor, deps) {
|
|
|
10685
10670
|
* @return {?}
|
|
10686
10671
|
*/
|
|
10687
10672
|
function providerDef(flags, matchedQueries, token, value, deps) {
|
|
10688
|
-
return _def(flags, matchedQueries, 0, token, value, deps);
|
|
10673
|
+
return _def(-1, flags, matchedQueries, 0, token, value, deps);
|
|
10689
10674
|
}
|
|
10690
10675
|
/**
|
|
10676
|
+
* @param {?} checkIndex
|
|
10691
10677
|
* @param {?} flags
|
|
10692
10678
|
* @param {?} matchedQueriesDsl
|
|
10693
10679
|
* @param {?} childCount
|
|
@@ -10698,7 +10684,7 @@ function providerDef(flags, matchedQueries, token, value, deps) {
|
|
|
10698
10684
|
* @param {?=} outputs
|
|
10699
10685
|
* @return {?}
|
|
10700
10686
|
*/
|
|
10701
|
-
function _def(flags, matchedQueriesDsl, childCount, token, value, deps, bindings, outputs) {
|
|
10687
|
+
function _def(checkIndex, flags, matchedQueriesDsl, childCount, token, value, deps, bindings, outputs) {
|
|
10702
10688
|
var _a = splitMatchedQueriesDsl(matchedQueriesDsl), matchedQueries = _a.matchedQueries, references = _a.references, matchedQueryIds = _a.matchedQueryIds;
|
|
10703
10689
|
if (!outputs) {
|
|
10704
10690
|
outputs = [];
|
|
@@ -10709,12 +10695,13 @@ function _def(flags, matchedQueriesDsl, childCount, token, value, deps, bindings
|
|
|
10709
10695
|
var /** @type {?} */ depDefs = splitDepsDsl(deps);
|
|
10710
10696
|
return {
|
|
10711
10697
|
// will bet set by the view definition
|
|
10712
|
-
|
|
10698
|
+
nodeIndex: -1,
|
|
10713
10699
|
parent: null,
|
|
10714
10700
|
renderParent: null,
|
|
10715
10701
|
bindingIndex: -1,
|
|
10716
10702
|
outputIndex: -1,
|
|
10717
10703
|
// regular values
|
|
10704
|
+
checkIndex: checkIndex,
|
|
10718
10705
|
flags: flags,
|
|
10719
10706
|
childFlags: 0,
|
|
10720
10707
|
directChildFlags: 0,
|
|
@@ -10734,7 +10721,7 @@ function _def(flags, matchedQueriesDsl, childCount, token, value, deps, bindings
|
|
|
10734
10721
|
* @return {?}
|
|
10735
10722
|
*/
|
|
10736
10723
|
function createProviderInstance(view, def) {
|
|
10737
|
-
return
|
|
10724
|
+
return _createProviderInstance(view, def);
|
|
10738
10725
|
}
|
|
10739
10726
|
/**
|
|
10740
10727
|
* @param {?} view
|
|
@@ -10765,7 +10752,7 @@ function createDirectiveInstance(view, def) {
|
|
|
10765
10752
|
if (def.outputs.length) {
|
|
10766
10753
|
for (var /** @type {?} */ i = 0; i < def.outputs.length; i++) {
|
|
10767
10754
|
var /** @type {?} */ output = def.outputs[i];
|
|
10768
|
-
var /** @type {?} */ subscription = instance[((output.propName))].subscribe(eventHandlerClosure(view, /** @type {?} */ ((def.parent)).
|
|
10755
|
+
var /** @type {?} */ subscription = instance[((output.propName))].subscribe(eventHandlerClosure(view, /** @type {?} */ ((def.parent)).nodeIndex, output.eventName)); /** @type {?} */
|
|
10769
10756
|
((view.disposables))[def.outputIndex + i] = subscription.unsubscribe.bind(subscription);
|
|
10770
10757
|
}
|
|
10771
10758
|
}
|
|
@@ -10804,7 +10791,7 @@ function eventHandlerClosure(view, index, eventName) {
|
|
|
10804
10791
|
* @return {?}
|
|
10805
10792
|
*/
|
|
10806
10793
|
function checkAndUpdateDirectiveInline(view, def, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9) {
|
|
10807
|
-
var /** @type {?} */ providerData = asProviderData(view, def.
|
|
10794
|
+
var /** @type {?} */ providerData = asProviderData(view, def.nodeIndex);
|
|
10808
10795
|
var /** @type {?} */ directive = providerData.instance;
|
|
10809
10796
|
var /** @type {?} */ changed = false;
|
|
10810
10797
|
var /** @type {?} */ changes = ((undefined));
|
|
@@ -10867,7 +10854,7 @@ function checkAndUpdateDirectiveInline(view, def, v0, v1, v2, v3, v4, v5, v6, v7
|
|
|
10867
10854
|
* @return {?}
|
|
10868
10855
|
*/
|
|
10869
10856
|
function checkAndUpdateDirectiveDynamic(view, def, values) {
|
|
10870
|
-
var /** @type {?} */ providerData = asProviderData(view, def.
|
|
10857
|
+
var /** @type {?} */ providerData = asProviderData(view, def.nodeIndex);
|
|
10871
10858
|
var /** @type {?} */ directive = providerData.instance;
|
|
10872
10859
|
var /** @type {?} */ changed = false;
|
|
10873
10860
|
var /** @type {?} */ changes = ((undefined));
|
|
@@ -10897,22 +10884,16 @@ function _createProviderInstance(view, def) {
|
|
|
10897
10884
|
// private services can see other private services
|
|
10898
10885
|
var /** @type {?} */ allowPrivateServices = (def.flags & 8192 /* PrivateProvider */) > 0;
|
|
10899
10886
|
var /** @type {?} */ providerDef = def.provider;
|
|
10900
|
-
var /** @type {?} */ injectable;
|
|
10901
10887
|
switch (def.flags & 201347067 /* Types */) {
|
|
10902
10888
|
case 512 /* TypeClassProvider */:
|
|
10903
|
-
|
|
10904
|
-
break;
|
|
10889
|
+
return createClass(view, /** @type {?} */ ((def.parent)), allowPrivateServices, /** @type {?} */ ((providerDef)).value, /** @type {?} */ ((providerDef)).deps);
|
|
10905
10890
|
case 1024 /* TypeFactoryProvider */:
|
|
10906
|
-
|
|
10907
|
-
break;
|
|
10891
|
+
return callFactory(view, /** @type {?} */ ((def.parent)), allowPrivateServices, /** @type {?} */ ((providerDef)).value, /** @type {?} */ ((providerDef)).deps);
|
|
10908
10892
|
case 2048 /* TypeUseExistingProvider */:
|
|
10909
|
-
|
|
10910
|
-
break;
|
|
10893
|
+
return resolveDep(view, /** @type {?} */ ((def.parent)), allowPrivateServices, /** @type {?} */ ((providerDef)).deps[0]);
|
|
10911
10894
|
case 256 /* TypeValueProvider */:
|
|
10912
|
-
|
|
10913
|
-
break;
|
|
10895
|
+
return ((providerDef)).value;
|
|
10914
10896
|
}
|
|
10915
|
-
return injectable;
|
|
10916
10897
|
}
|
|
10917
10898
|
/**
|
|
10918
10899
|
* @param {?} view
|
|
@@ -10924,28 +10905,22 @@ function _createProviderInstance(view, def) {
|
|
|
10924
10905
|
*/
|
|
10925
10906
|
function createClass(view, elDef, allowPrivateServices, ctor, deps) {
|
|
10926
10907
|
var /** @type {?} */ len = deps.length;
|
|
10927
|
-
var /** @type {?} */ injectable;
|
|
10928
10908
|
switch (len) {
|
|
10929
10909
|
case 0:
|
|
10930
|
-
|
|
10931
|
-
break;
|
|
10910
|
+
return new ctor();
|
|
10932
10911
|
case 1:
|
|
10933
|
-
|
|
10934
|
-
break;
|
|
10912
|
+
return new ctor(resolveDep(view, elDef, allowPrivateServices, deps[0]));
|
|
10935
10913
|
case 2:
|
|
10936
|
-
|
|
10937
|
-
break;
|
|
10914
|
+
return new ctor(resolveDep(view, elDef, allowPrivateServices, deps[0]), resolveDep(view, elDef, allowPrivateServices, deps[1]));
|
|
10938
10915
|
case 3:
|
|
10939
|
-
|
|
10940
|
-
break;
|
|
10916
|
+
return new ctor(resolveDep(view, elDef, allowPrivateServices, deps[0]), resolveDep(view, elDef, allowPrivateServices, deps[1]), resolveDep(view, elDef, allowPrivateServices, deps[2]));
|
|
10941
10917
|
default:
|
|
10942
10918
|
var /** @type {?} */ depValues = new Array(len);
|
|
10943
10919
|
for (var /** @type {?} */ i = 0; i < len; i++) {
|
|
10944
10920
|
depValues[i] = resolveDep(view, elDef, allowPrivateServices, deps[i]);
|
|
10945
10921
|
}
|
|
10946
|
-
|
|
10922
|
+
return new (ctor.bind.apply(ctor, [void 0].concat(depValues)))();
|
|
10947
10923
|
}
|
|
10948
|
-
return injectable;
|
|
10949
10924
|
}
|
|
10950
10925
|
/**
|
|
10951
10926
|
* @param {?} view
|
|
@@ -10957,28 +10932,22 @@ function createClass(view, elDef, allowPrivateServices, ctor, deps) {
|
|
|
10957
10932
|
*/
|
|
10958
10933
|
function callFactory(view, elDef, allowPrivateServices, factory, deps) {
|
|
10959
10934
|
var /** @type {?} */ len = deps.length;
|
|
10960
|
-
var /** @type {?} */ injectable;
|
|
10961
10935
|
switch (len) {
|
|
10962
10936
|
case 0:
|
|
10963
|
-
|
|
10964
|
-
break;
|
|
10937
|
+
return factory();
|
|
10965
10938
|
case 1:
|
|
10966
|
-
|
|
10967
|
-
break;
|
|
10939
|
+
return factory(resolveDep(view, elDef, allowPrivateServices, deps[0]));
|
|
10968
10940
|
case 2:
|
|
10969
|
-
|
|
10970
|
-
break;
|
|
10941
|
+
return factory(resolveDep(view, elDef, allowPrivateServices, deps[0]), resolveDep(view, elDef, allowPrivateServices, deps[1]));
|
|
10971
10942
|
case 3:
|
|
10972
|
-
|
|
10973
|
-
break;
|
|
10943
|
+
return factory(resolveDep(view, elDef, allowPrivateServices, deps[0]), resolveDep(view, elDef, allowPrivateServices, deps[1]), resolveDep(view, elDef, allowPrivateServices, deps[2]));
|
|
10974
10944
|
default:
|
|
10975
10945
|
var /** @type {?} */ depValues = Array(len);
|
|
10976
10946
|
for (var /** @type {?} */ i = 0; i < len; i++) {
|
|
10977
10947
|
depValues[i] = resolveDep(view, elDef, allowPrivateServices, deps[i]);
|
|
10978
10948
|
}
|
|
10979
|
-
|
|
10949
|
+
return factory.apply(void 0, depValues);
|
|
10980
10950
|
}
|
|
10981
|
-
return injectable;
|
|
10982
10951
|
}
|
|
10983
10952
|
// This default value is when checking the hierarchy for a token.
|
|
10984
10953
|
//
|
|
@@ -11037,12 +11006,12 @@ function resolveDep(view, elDef, allowPrivateServices, depDef, notFoundValue) {
|
|
|
11037
11006
|
return compView.renderer;
|
|
11038
11007
|
}
|
|
11039
11008
|
case ElementRefTokenKey:
|
|
11040
|
-
return new ElementRef(asElementData(view, elDef.
|
|
11009
|
+
return new ElementRef(asElementData(view, elDef.nodeIndex).renderElement);
|
|
11041
11010
|
case ViewContainerRefTokenKey:
|
|
11042
|
-
return asElementData(view, elDef.
|
|
11011
|
+
return asElementData(view, elDef.nodeIndex).viewContainer;
|
|
11043
11012
|
case TemplateRefTokenKey: {
|
|
11044
11013
|
if (((elDef.element)).template) {
|
|
11045
|
-
return asElementData(view, elDef.
|
|
11014
|
+
return asElementData(view, elDef.nodeIndex).template;
|
|
11046
11015
|
}
|
|
11047
11016
|
break;
|
|
11048
11017
|
}
|
|
@@ -11055,9 +11024,10 @@ function resolveDep(view, elDef, allowPrivateServices, depDef, notFoundValue) {
|
|
|
11055
11024
|
default:
|
|
11056
11025
|
var /** @type {?} */ providerDef_1 = (((allowPrivateServices ? ((elDef.element)).allProviders : ((elDef.element)).publicProviders)))[tokenKey$$1];
|
|
11057
11026
|
if (providerDef_1) {
|
|
11058
|
-
var /** @type {?} */ providerData = asProviderData(view, providerDef_1.
|
|
11059
|
-
if (providerData
|
|
11060
|
-
providerData
|
|
11027
|
+
var /** @type {?} */ providerData = asProviderData(view, providerDef_1.nodeIndex);
|
|
11028
|
+
if (!providerData) {
|
|
11029
|
+
providerData = { instance: _createProviderInstance(view, providerDef_1) };
|
|
11030
|
+
view.nodes[providerDef_1.nodeIndex] = (providerData);
|
|
11061
11031
|
}
|
|
11062
11032
|
return providerData.instance;
|
|
11063
11033
|
}
|
|
@@ -11088,7 +11058,7 @@ function resolveDep(view, elDef, allowPrivateServices, depDef, notFoundValue) {
|
|
|
11088
11058
|
function findCompView(view, elDef, allowPrivateServices) {
|
|
11089
11059
|
var /** @type {?} */ compView;
|
|
11090
11060
|
if (allowPrivateServices) {
|
|
11091
|
-
compView = asElementData(view, elDef.
|
|
11061
|
+
compView = asElementData(view, elDef.nodeIndex).componentView;
|
|
11092
11062
|
}
|
|
11093
11063
|
else {
|
|
11094
11064
|
compView = view;
|
|
@@ -11109,7 +11079,7 @@ function findCompView(view, elDef, allowPrivateServices) {
|
|
|
11109
11079
|
*/
|
|
11110
11080
|
function updateProp(view, providerData, def, bindingIdx, value, changes) {
|
|
11111
11081
|
if (def.flags & 32768 /* Component */) {
|
|
11112
|
-
var /** @type {?} */ compView = asElementData(view, /** @type {?} */ ((def.parent)).
|
|
11082
|
+
var /** @type {?} */ compView = asElementData(view, /** @type {?} */ ((def.parent)).nodeIndex).componentView;
|
|
11113
11083
|
if (compView.def.flags & 2 /* OnPush */) {
|
|
11114
11084
|
compView.state |= 8 /* ChecksEnabled */;
|
|
11115
11085
|
}
|
|
@@ -11155,7 +11125,7 @@ function callLifecycleHooksChildrenFirst(view, lifecycles) {
|
|
|
11155
11125
|
i += nodeDef.childCount;
|
|
11156
11126
|
}
|
|
11157
11127
|
while (parent && (parent.flags & 1 /* TypeElement */) &&
|
|
11158
|
-
i === parent.
|
|
11128
|
+
i === parent.nodeIndex + parent.childCount) {
|
|
11159
11129
|
// last child of an element
|
|
11160
11130
|
if (parent.directChildFlags & lifecycles) {
|
|
11161
11131
|
callElementProvidersLifecycles(view, parent, lifecycles);
|
|
@@ -11171,7 +11141,7 @@ function callLifecycleHooksChildrenFirst(view, lifecycles) {
|
|
|
11171
11141
|
* @return {?}
|
|
11172
11142
|
*/
|
|
11173
11143
|
function callElementProvidersLifecycles(view, elDef, lifecycles) {
|
|
11174
|
-
for (var /** @type {?} */ i = elDef.
|
|
11144
|
+
for (var /** @type {?} */ i = elDef.nodeIndex + 1; i <= elDef.nodeIndex + elDef.childCount; i++) {
|
|
11175
11145
|
var /** @type {?} */ nodeDef = view.def.nodes[i];
|
|
11176
11146
|
if (nodeDef.flags & lifecycles) {
|
|
11177
11147
|
callProviderLifecycles(view, i, nodeDef.flags & lifecycles);
|
|
@@ -11187,8 +11157,12 @@ function callElementProvidersLifecycles(view, elDef, lifecycles) {
|
|
|
11187
11157
|
* @return {?}
|
|
11188
11158
|
*/
|
|
11189
11159
|
function callProviderLifecycles(view, index, lifecycles) {
|
|
11190
|
-
var /** @type {?} */
|
|
11191
|
-
if (
|
|
11160
|
+
var /** @type {?} */ providerData = asProviderData(view, index);
|
|
11161
|
+
if (!providerData) {
|
|
11162
|
+
return;
|
|
11163
|
+
}
|
|
11164
|
+
var /** @type {?} */ provider = providerData.instance;
|
|
11165
|
+
if (!provider) {
|
|
11192
11166
|
return;
|
|
11193
11167
|
}
|
|
11194
11168
|
Services.setCurrentNode(view, index);
|
|
@@ -11229,13 +11203,14 @@ function queryDef(flags, id, bindings) {
|
|
|
11229
11203
|
}
|
|
11230
11204
|
return {
|
|
11231
11205
|
// will bet set by the view definition
|
|
11232
|
-
|
|
11206
|
+
nodeIndex: -1,
|
|
11233
11207
|
parent: null,
|
|
11234
11208
|
renderParent: null,
|
|
11235
11209
|
bindingIndex: -1,
|
|
11236
11210
|
outputIndex: -1,
|
|
11237
11211
|
// regular values
|
|
11238
|
-
|
|
11212
|
+
// TODO(vicb): check
|
|
11213
|
+
checkIndex: -1, flags: flags,
|
|
11239
11214
|
childFlags: 0,
|
|
11240
11215
|
directChildFlags: 0,
|
|
11241
11216
|
childMatchedQueries: 0,
|
|
@@ -11270,7 +11245,7 @@ function dirtyParentQueries(view) {
|
|
|
11270
11245
|
var /** @type {?} */ tplDef = ((view.parentNodeDef));
|
|
11271
11246
|
view = view.parent;
|
|
11272
11247
|
// content queries
|
|
11273
|
-
var /** @type {?} */ end = tplDef.
|
|
11248
|
+
var /** @type {?} */ end = tplDef.nodeIndex + tplDef.childCount;
|
|
11274
11249
|
for (var /** @type {?} */ i = 0; i <= end; i++) {
|
|
11275
11250
|
var /** @type {?} */ nodeDef = view.def.nodes[i];
|
|
11276
11251
|
if ((nodeDef.flags & 67108864 /* TypeContentQuery */) &&
|
|
@@ -11278,7 +11253,7 @@ function dirtyParentQueries(view) {
|
|
|
11278
11253
|
(((nodeDef.query)).filterId & queryIds) === ((nodeDef.query)).filterId) {
|
|
11279
11254
|
asQueryList(view, i).setDirty();
|
|
11280
11255
|
}
|
|
11281
|
-
if ((nodeDef.flags & 1 /* TypeElement */ && i + nodeDef.childCount < tplDef.
|
|
11256
|
+
if ((nodeDef.flags & 1 /* TypeElement */ && i + nodeDef.childCount < tplDef.nodeIndex) ||
|
|
11282
11257
|
!(nodeDef.childFlags & 67108864 /* TypeContentQuery */) ||
|
|
11283
11258
|
!(nodeDef.childFlags & 536870912 /* DynamicQuery */)) {
|
|
11284
11259
|
// skip elements that don't contain the template element or no query.
|
|
@@ -11304,7 +11279,7 @@ function dirtyParentQueries(view) {
|
|
|
11304
11279
|
* @return {?}
|
|
11305
11280
|
*/
|
|
11306
11281
|
function checkAndUpdateQuery(view, nodeDef) {
|
|
11307
|
-
var /** @type {?} */ queryList = asQueryList(view, nodeDef.
|
|
11282
|
+
var /** @type {?} */ queryList = asQueryList(view, nodeDef.nodeIndex);
|
|
11308
11283
|
if (!queryList.dirty) {
|
|
11309
11284
|
return;
|
|
11310
11285
|
}
|
|
@@ -11312,8 +11287,8 @@ function checkAndUpdateQuery(view, nodeDef) {
|
|
|
11312
11287
|
var /** @type {?} */ newValues = ((undefined));
|
|
11313
11288
|
if (nodeDef.flags & 67108864 /* TypeContentQuery */) {
|
|
11314
11289
|
var /** @type {?} */ elementDef_1 = ((((nodeDef.parent)).parent));
|
|
11315
|
-
newValues = calcQueryValues(view, elementDef_1.
|
|
11316
|
-
directiveInstance = asProviderData(view, /** @type {?} */ ((nodeDef.parent)).
|
|
11290
|
+
newValues = calcQueryValues(view, elementDef_1.nodeIndex, elementDef_1.nodeIndex + elementDef_1.childCount, /** @type {?} */ ((nodeDef.query)), []);
|
|
11291
|
+
directiveInstance = asProviderData(view, /** @type {?} */ ((nodeDef.parent)).nodeIndex).instance;
|
|
11317
11292
|
}
|
|
11318
11293
|
else if (nodeDef.flags & 134217728 /* TypeViewQuery */) {
|
|
11319
11294
|
newValues = calcQueryValues(view, 0, view.def.nodes.length - 1, /** @type {?} */ ((nodeDef.query)), []);
|
|
@@ -11399,25 +11374,18 @@ function calcQueryValues(view, startIndex, endIndex, queryDef, values) {
|
|
|
11399
11374
|
function getQueryValue(view, nodeDef, queryValueType) {
|
|
11400
11375
|
if (queryValueType != null) {
|
|
11401
11376
|
// a match
|
|
11402
|
-
var /** @type {?} */ value = void 0;
|
|
11403
11377
|
switch (queryValueType) {
|
|
11404
11378
|
case 1 /* RenderElement */:
|
|
11405
|
-
|
|
11406
|
-
break;
|
|
11379
|
+
return asElementData(view, nodeDef.nodeIndex).renderElement;
|
|
11407
11380
|
case 0 /* ElementRef */:
|
|
11408
|
-
|
|
11409
|
-
break;
|
|
11381
|
+
return new ElementRef(asElementData(view, nodeDef.nodeIndex).renderElement);
|
|
11410
11382
|
case 2 /* TemplateRef */:
|
|
11411
|
-
|
|
11412
|
-
break;
|
|
11383
|
+
return asElementData(view, nodeDef.nodeIndex).template;
|
|
11413
11384
|
case 3 /* ViewContainerRef */:
|
|
11414
|
-
|
|
11415
|
-
break;
|
|
11385
|
+
return asElementData(view, nodeDef.nodeIndex).viewContainer;
|
|
11416
11386
|
case 4 /* Provider */:
|
|
11417
|
-
|
|
11418
|
-
break;
|
|
11387
|
+
return asProviderData(view, nodeDef.nodeIndex).instance;
|
|
11419
11388
|
}
|
|
11420
|
-
return value;
|
|
11421
11389
|
}
|
|
11422
11390
|
}
|
|
11423
11391
|
/**
|
|
@@ -11435,12 +11403,13 @@ function getQueryValue(view, nodeDef, queryValueType) {
|
|
|
11435
11403
|
function ngContentDef(ngContentIndex, index) {
|
|
11436
11404
|
return {
|
|
11437
11405
|
// will bet set by the view definition
|
|
11438
|
-
|
|
11406
|
+
nodeIndex: -1,
|
|
11439
11407
|
parent: null,
|
|
11440
11408
|
renderParent: null,
|
|
11441
11409
|
bindingIndex: -1,
|
|
11442
11410
|
outputIndex: -1,
|
|
11443
11411
|
// regular values
|
|
11412
|
+
checkIndex: -1,
|
|
11444
11413
|
flags: 8 /* TypeNgContent */,
|
|
11445
11414
|
childFlags: 0,
|
|
11446
11415
|
directChildFlags: 0,
|
|
@@ -11482,25 +11451,28 @@ function appendNgContent(view, renderHost, def) {
|
|
|
11482
11451
|
* found in the LICENSE file at https://angular.io/license
|
|
11483
11452
|
*/
|
|
11484
11453
|
/**
|
|
11454
|
+
* @param {?} checkIndex
|
|
11485
11455
|
* @param {?} argCount
|
|
11486
11456
|
* @return {?}
|
|
11487
11457
|
*/
|
|
11488
|
-
function purePipeDef(argCount) {
|
|
11458
|
+
function purePipeDef(checkIndex, argCount) {
|
|
11489
11459
|
// argCount + 1 to include the pipe as first arg
|
|
11490
|
-
return _pureExpressionDef(128 /* TypePurePipe */, new Array(argCount + 1));
|
|
11460
|
+
return _pureExpressionDef(128 /* TypePurePipe */, checkIndex, new Array(argCount + 1));
|
|
11491
11461
|
}
|
|
11492
11462
|
/**
|
|
11463
|
+
* @param {?} checkIndex
|
|
11493
11464
|
* @param {?} argCount
|
|
11494
11465
|
* @return {?}
|
|
11495
11466
|
*/
|
|
11496
|
-
function pureArrayDef(argCount) {
|
|
11497
|
-
return _pureExpressionDef(32 /* TypePureArray */, new Array(argCount));
|
|
11467
|
+
function pureArrayDef(checkIndex, argCount) {
|
|
11468
|
+
return _pureExpressionDef(32 /* TypePureArray */, checkIndex, new Array(argCount));
|
|
11498
11469
|
}
|
|
11499
11470
|
/**
|
|
11471
|
+
* @param {?} checkIndex
|
|
11500
11472
|
* @param {?} propToIndex
|
|
11501
11473
|
* @return {?}
|
|
11502
11474
|
*/
|
|
11503
|
-
function pureObjectDef(propToIndex) {
|
|
11475
|
+
function pureObjectDef(checkIndex, propToIndex) {
|
|
11504
11476
|
var /** @type {?} */ keys = Object.keys(propToIndex);
|
|
11505
11477
|
var /** @type {?} */ nbKeys = keys.length;
|
|
11506
11478
|
var /** @type {?} */ propertyNames = new Array(nbKeys);
|
|
@@ -11509,14 +11481,15 @@ function pureObjectDef(propToIndex) {
|
|
|
11509
11481
|
var /** @type {?} */ index = propToIndex[key];
|
|
11510
11482
|
propertyNames[index] = key;
|
|
11511
11483
|
}
|
|
11512
|
-
return _pureExpressionDef(64 /* TypePureObject */, propertyNames);
|
|
11484
|
+
return _pureExpressionDef(64 /* TypePureObject */, checkIndex, propertyNames);
|
|
11513
11485
|
}
|
|
11514
11486
|
/**
|
|
11515
11487
|
* @param {?} flags
|
|
11488
|
+
* @param {?} checkIndex
|
|
11516
11489
|
* @param {?} propertyNames
|
|
11517
11490
|
* @return {?}
|
|
11518
11491
|
*/
|
|
11519
|
-
function _pureExpressionDef(flags, propertyNames) {
|
|
11492
|
+
function _pureExpressionDef(flags, checkIndex, propertyNames) {
|
|
11520
11493
|
var /** @type {?} */ bindings = new Array(propertyNames.length);
|
|
11521
11494
|
for (var /** @type {?} */ i = 0; i < propertyNames.length; i++) {
|
|
11522
11495
|
var /** @type {?} */ prop = propertyNames[i];
|
|
@@ -11531,12 +11504,13 @@ function _pureExpressionDef(flags, propertyNames) {
|
|
|
11531
11504
|
}
|
|
11532
11505
|
return {
|
|
11533
11506
|
// will bet set by the view definition
|
|
11534
|
-
|
|
11507
|
+
nodeIndex: -1,
|
|
11535
11508
|
parent: null,
|
|
11536
11509
|
renderParent: null,
|
|
11537
11510
|
bindingIndex: -1,
|
|
11538
11511
|
outputIndex: -1,
|
|
11539
11512
|
// regular values
|
|
11513
|
+
checkIndex: checkIndex,
|
|
11540
11514
|
flags: flags,
|
|
11541
11515
|
childFlags: 0,
|
|
11542
11516
|
directChildFlags: 0,
|
|
@@ -11603,7 +11577,7 @@ function checkAndUpdatePureExpressionInline(view, def, v0, v1, v2, v3, v4, v5, v
|
|
|
11603
11577
|
if (bindLen > 9 && checkAndUpdateBinding(view, def, 9, v9))
|
|
11604
11578
|
changed = true;
|
|
11605
11579
|
if (changed) {
|
|
11606
|
-
var /** @type {?} */ data = asPureExpressionData(view, def.
|
|
11580
|
+
var /** @type {?} */ data = asPureExpressionData(view, def.nodeIndex);
|
|
11607
11581
|
var /** @type {?} */ value = void 0;
|
|
11608
11582
|
switch (def.flags & 201347067 /* Types */) {
|
|
11609
11583
|
case 32 /* TypePureArray */:
|
|
@@ -11709,7 +11683,7 @@ function checkAndUpdatePureExpressionDynamic(view, def, values) {
|
|
|
11709
11683
|
}
|
|
11710
11684
|
}
|
|
11711
11685
|
if (changed) {
|
|
11712
|
-
var /** @type {?} */ data = asPureExpressionData(view, def.
|
|
11686
|
+
var /** @type {?} */ data = asPureExpressionData(view, def.nodeIndex);
|
|
11713
11687
|
var /** @type {?} */ value = void 0;
|
|
11714
11688
|
switch (def.flags & 201347067 /* Types */) {
|
|
11715
11689
|
case 32 /* TypePureArray */:
|
|
@@ -11739,32 +11713,33 @@ function checkAndUpdatePureExpressionDynamic(view, def, values) {
|
|
|
11739
11713
|
* found in the LICENSE file at https://angular.io/license
|
|
11740
11714
|
*/
|
|
11741
11715
|
/**
|
|
11716
|
+
* @param {?} checkIndex
|
|
11742
11717
|
* @param {?} ngContentIndex
|
|
11743
|
-
* @param {?}
|
|
11718
|
+
* @param {?} staticText
|
|
11744
11719
|
* @return {?}
|
|
11745
11720
|
*/
|
|
11746
|
-
function textDef(ngContentIndex,
|
|
11747
|
-
var /** @type {?} */ bindings = new Array(
|
|
11748
|
-
for (var /** @type {?} */ i = 1; i <
|
|
11721
|
+
function textDef(checkIndex, ngContentIndex, staticText) {
|
|
11722
|
+
var /** @type {?} */ bindings = new Array(staticText.length - 1);
|
|
11723
|
+
for (var /** @type {?} */ i = 1; i < staticText.length; i++) {
|
|
11749
11724
|
bindings[i - 1] = {
|
|
11750
11725
|
flags: 8 /* TypeProperty */,
|
|
11751
11726
|
name: null,
|
|
11752
11727
|
ns: null,
|
|
11753
11728
|
nonMinifiedName: null,
|
|
11754
11729
|
securityContext: null,
|
|
11755
|
-
suffix:
|
|
11730
|
+
suffix: staticText[i],
|
|
11756
11731
|
};
|
|
11757
11732
|
}
|
|
11758
|
-
var /** @type {?} */ flags = 2;
|
|
11759
11733
|
return {
|
|
11760
11734
|
// will bet set by the view definition
|
|
11761
|
-
|
|
11735
|
+
nodeIndex: -1,
|
|
11762
11736
|
parent: null,
|
|
11763
11737
|
renderParent: null,
|
|
11764
11738
|
bindingIndex: -1,
|
|
11765
11739
|
outputIndex: -1,
|
|
11766
11740
|
// regular values
|
|
11767
|
-
|
|
11741
|
+
checkIndex: checkIndex,
|
|
11742
|
+
flags: 2 /* TypeText */,
|
|
11768
11743
|
childFlags: 0,
|
|
11769
11744
|
directChildFlags: 0,
|
|
11770
11745
|
childMatchedQueries: 0,
|
|
@@ -11772,13 +11747,13 @@ function textDef(ngContentIndex, constants) {
|
|
|
11772
11747
|
matchedQueryIds: 0,
|
|
11773
11748
|
references: {}, ngContentIndex: ngContentIndex,
|
|
11774
11749
|
childCount: 0, bindings: bindings,
|
|
11775
|
-
bindingFlags:
|
|
11750
|
+
bindingFlags: 8 /* TypeProperty */,
|
|
11776
11751
|
outputs: [],
|
|
11777
11752
|
element: null,
|
|
11778
11753
|
provider: null,
|
|
11779
|
-
text: { prefix:
|
|
11754
|
+
text: { prefix: staticText[0] },
|
|
11780
11755
|
query: null,
|
|
11781
|
-
ngContent: null
|
|
11756
|
+
ngContent: null,
|
|
11782
11757
|
};
|
|
11783
11758
|
}
|
|
11784
11759
|
/**
|
|
@@ -11858,7 +11833,7 @@ function checkAndUpdateTextInline(view, def, v0, v1, v2, v3, v4, v5, v6, v7, v8,
|
|
|
11858
11833
|
value += _addInterpolationPart(v8, bindings[8]);
|
|
11859
11834
|
if (bindLen > 9)
|
|
11860
11835
|
value += _addInterpolationPart(v9, bindings[9]);
|
|
11861
|
-
var /** @type {?} */ renderNode$$1 = asTextData(view, def.
|
|
11836
|
+
var /** @type {?} */ renderNode$$1 = asTextData(view, def.nodeIndex).renderText;
|
|
11862
11837
|
view.renderer.setValue(renderNode$$1, value);
|
|
11863
11838
|
}
|
|
11864
11839
|
return changed;
|
|
@@ -11885,7 +11860,7 @@ function checkAndUpdateTextDynamic(view, def, values) {
|
|
|
11885
11860
|
value = value + _addInterpolationPart(values[i], bindings[i]);
|
|
11886
11861
|
}
|
|
11887
11862
|
value = ((def.text)).prefix + value;
|
|
11888
|
-
var /** @type {?} */ renderNode$$1 = asTextData(view, def.
|
|
11863
|
+
var /** @type {?} */ renderNode$$1 = asTextData(view, def.nodeIndex).renderText;
|
|
11889
11864
|
view.renderer.setValue(renderNode$$1, value);
|
|
11890
11865
|
}
|
|
11891
11866
|
return changed;
|
|
@@ -11921,33 +11896,19 @@ function viewDef(flags, nodes, updateDirectives, updateRenderer) {
|
|
|
11921
11896
|
var /** @type {?} */ viewRootNodeFlags = 0;
|
|
11922
11897
|
var /** @type {?} */ viewMatchedQueries = 0;
|
|
11923
11898
|
var /** @type {?} */ currentParent = null;
|
|
11899
|
+
var /** @type {?} */ currentRenderParent = null;
|
|
11924
11900
|
var /** @type {?} */ currentElementHasPublicProviders = false;
|
|
11925
11901
|
var /** @type {?} */ currentElementHasPrivateProviders = false;
|
|
11926
11902
|
var /** @type {?} */ lastRenderRootNode = null;
|
|
11927
11903
|
for (var /** @type {?} */ i = 0; i < nodes.length; i++) {
|
|
11928
|
-
while (currentParent && i > currentParent.index + currentParent.childCount) {
|
|
11929
|
-
var /** @type {?} */ newParent = currentParent.parent;
|
|
11930
|
-
if (newParent) {
|
|
11931
|
-
newParent.childFlags |= ((currentParent.childFlags));
|
|
11932
|
-
newParent.childMatchedQueries |= currentParent.childMatchedQueries;
|
|
11933
|
-
}
|
|
11934
|
-
currentParent = newParent;
|
|
11935
|
-
}
|
|
11936
11904
|
var /** @type {?} */ node = nodes[i];
|
|
11937
|
-
node.
|
|
11905
|
+
node.nodeIndex = i;
|
|
11938
11906
|
node.parent = currentParent;
|
|
11939
11907
|
node.bindingIndex = viewBindingCount;
|
|
11940
11908
|
node.outputIndex = viewDisposableCount;
|
|
11941
|
-
// renderParent needs to account for ng-container!
|
|
11942
|
-
var /** @type {?} */ currentRenderParent = void 0;
|
|
11943
|
-
if (currentParent && currentParent.flags & 1 /* TypeElement */ &&
|
|
11944
|
-
!((currentParent.element)).name) {
|
|
11945
|
-
currentRenderParent = currentParent.renderParent;
|
|
11946
|
-
}
|
|
11947
|
-
else {
|
|
11948
|
-
currentRenderParent = currentParent;
|
|
11949
|
-
}
|
|
11950
11909
|
node.renderParent = currentRenderParent;
|
|
11910
|
+
viewNodeFlags |= node.flags;
|
|
11911
|
+
viewMatchedQueries |= node.matchedQueryIds;
|
|
11951
11912
|
if (node.element) {
|
|
11952
11913
|
var /** @type {?} */ elDef = node.element;
|
|
11953
11914
|
elDef.publicProviders =
|
|
@@ -11956,24 +11917,11 @@ function viewDef(flags, nodes, updateDirectives, updateRenderer) {
|
|
|
11956
11917
|
// Note: We assume that all providers of an element are before any child element!
|
|
11957
11918
|
currentElementHasPublicProviders = false;
|
|
11958
11919
|
currentElementHasPrivateProviders = false;
|
|
11959
|
-
|
|
11960
|
-
|
|
11961
|
-
viewNodeFlags |= node.flags;
|
|
11962
|
-
viewMatchedQueries |= node.matchedQueryIds;
|
|
11963
|
-
if (node.element && node.element.template) {
|
|
11964
|
-
viewMatchedQueries |= node.element.template.nodeMatchedQueries;
|
|
11965
|
-
}
|
|
11966
|
-
if (currentParent) {
|
|
11967
|
-
currentParent.childFlags |= node.flags;
|
|
11968
|
-
currentParent.directChildFlags |= node.flags;
|
|
11969
|
-
currentParent.childMatchedQueries |= node.matchedQueryIds;
|
|
11970
|
-
if (node.element && node.element.template) {
|
|
11971
|
-
currentParent.childMatchedQueries |= node.element.template.nodeMatchedQueries;
|
|
11920
|
+
if (node.element.template) {
|
|
11921
|
+
viewMatchedQueries |= node.element.template.nodeMatchedQueries;
|
|
11972
11922
|
}
|
|
11973
11923
|
}
|
|
11974
|
-
|
|
11975
|
-
viewRootNodeFlags |= node.flags;
|
|
11976
|
-
}
|
|
11924
|
+
validateNode(currentParent, node, nodes.length);
|
|
11977
11925
|
viewBindingCount += node.bindings.length;
|
|
11978
11926
|
viewDisposableCount += node.outputs.length;
|
|
11979
11927
|
if (!currentRenderParent && (node.flags & 3 /* CatRenderNode */)) {
|
|
@@ -11997,7 +11945,7 @@ function viewDef(flags, nodes, updateDirectives, updateRenderer) {
|
|
|
11997
11945
|
if (!currentElementHasPrivateProviders) {
|
|
11998
11946
|
currentElementHasPrivateProviders = true; /** @type {?} */
|
|
11999
11947
|
((((
|
|
12000
|
-
// Use
|
|
11948
|
+
// Use prototypical inheritance to not get O(n^2) complexity...
|
|
12001
11949
|
currentParent)).element)).allProviders =
|
|
12002
11950
|
Object.create(/** @type {?} */ ((((currentParent)).element)).publicProviders);
|
|
12003
11951
|
} /** @type {?} */
|
|
@@ -12007,17 +11955,45 @@ function viewDef(flags, nodes, updateDirectives, updateRenderer) {
|
|
|
12007
11955
|
((((currentParent)).element)).componentProvider = node;
|
|
12008
11956
|
}
|
|
12009
11957
|
}
|
|
12010
|
-
if (
|
|
11958
|
+
if (currentParent) {
|
|
11959
|
+
currentParent.childFlags |= node.flags;
|
|
11960
|
+
currentParent.directChildFlags |= node.flags;
|
|
11961
|
+
currentParent.childMatchedQueries |= node.matchedQueryIds;
|
|
11962
|
+
if (node.element && node.element.template) {
|
|
11963
|
+
currentParent.childMatchedQueries |= node.element.template.nodeMatchedQueries;
|
|
11964
|
+
}
|
|
11965
|
+
}
|
|
11966
|
+
else {
|
|
11967
|
+
viewRootNodeFlags |= node.flags;
|
|
11968
|
+
}
|
|
11969
|
+
if (node.childCount > 0) {
|
|
12011
11970
|
currentParent = node;
|
|
11971
|
+
if (!isNgContainer(node)) {
|
|
11972
|
+
currentRenderParent = node;
|
|
11973
|
+
}
|
|
12012
11974
|
}
|
|
12013
|
-
|
|
12014
|
-
|
|
12015
|
-
|
|
12016
|
-
|
|
12017
|
-
|
|
12018
|
-
|
|
11975
|
+
else {
|
|
11976
|
+
// When the current node has no children, check if it is the last children of its parent.
|
|
11977
|
+
// When it is, propagate the flags up.
|
|
11978
|
+
// The loop is required because an element could be the last transitive children of several
|
|
11979
|
+
// elements. We loop to either the root or the highest opened element (= with remaining
|
|
11980
|
+
// children)
|
|
11981
|
+
while (currentParent && i === currentParent.nodeIndex + currentParent.childCount) {
|
|
11982
|
+
var /** @type {?} */ newParent = currentParent.parent;
|
|
11983
|
+
if (newParent) {
|
|
11984
|
+
newParent.childFlags |= currentParent.childFlags;
|
|
11985
|
+
newParent.childMatchedQueries |= currentParent.childMatchedQueries;
|
|
11986
|
+
}
|
|
11987
|
+
currentParent = newParent;
|
|
11988
|
+
// We also need to update the render parent & account for ng-container
|
|
11989
|
+
if (currentParent && isNgContainer(currentParent)) {
|
|
11990
|
+
currentRenderParent = currentParent.renderParent;
|
|
11991
|
+
}
|
|
11992
|
+
else {
|
|
11993
|
+
currentRenderParent = currentParent;
|
|
11994
|
+
}
|
|
11995
|
+
}
|
|
12019
11996
|
}
|
|
12020
|
-
currentParent = newParent;
|
|
12021
11997
|
}
|
|
12022
11998
|
var /** @type {?} */ handleEvent = function (view, nodeIndex, eventName, event) { return ((((nodes[nodeIndex].element)).handleEvent))(view, eventName, event); };
|
|
12023
11999
|
return {
|
|
@@ -12028,12 +12004,18 @@ function viewDef(flags, nodes, updateDirectives, updateRenderer) {
|
|
|
12028
12004
|
nodeMatchedQueries: viewMatchedQueries, flags: flags,
|
|
12029
12005
|
nodes: nodes,
|
|
12030
12006
|
updateDirectives: updateDirectives || NOOP,
|
|
12031
|
-
updateRenderer: updateRenderer || NOOP,
|
|
12032
|
-
handleEvent: handleEvent || NOOP,
|
|
12007
|
+
updateRenderer: updateRenderer || NOOP, handleEvent: handleEvent,
|
|
12033
12008
|
bindingCount: viewBindingCount,
|
|
12034
12009
|
outputCount: viewDisposableCount, lastRenderRootNode: lastRenderRootNode
|
|
12035
12010
|
};
|
|
12036
12011
|
}
|
|
12012
|
+
/**
|
|
12013
|
+
* @param {?} node
|
|
12014
|
+
* @return {?}
|
|
12015
|
+
*/
|
|
12016
|
+
function isNgContainer(node) {
|
|
12017
|
+
return (node.flags & 1 /* TypeElement */) !== 0 && ((node.element)).name === null;
|
|
12018
|
+
}
|
|
12037
12019
|
/**
|
|
12038
12020
|
* @param {?} parent
|
|
12039
12021
|
* @param {?} node
|
|
@@ -12048,28 +12030,28 @@ function validateNode(parent, node, nodeCount) {
|
|
|
12048
12030
|
}
|
|
12049
12031
|
if (template.lastRenderRootNode &&
|
|
12050
12032
|
template.lastRenderRootNode.flags & 16777216 /* EmbeddedViews */) {
|
|
12051
|
-
throw new Error("Illegal State: Last root node of a template can't have embedded views, at index " + node.
|
|
12033
|
+
throw new Error("Illegal State: Last root node of a template can't have embedded views, at index " + node.nodeIndex + "!");
|
|
12052
12034
|
}
|
|
12053
12035
|
}
|
|
12054
12036
|
if (node.flags & 20224 /* CatProvider */) {
|
|
12055
12037
|
var /** @type {?} */ parentFlags = parent ? parent.flags : 0;
|
|
12056
12038
|
if ((parentFlags & 1 /* TypeElement */) === 0) {
|
|
12057
|
-
throw new Error("Illegal State:
|
|
12039
|
+
throw new Error("Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index " + node.nodeIndex + "!");
|
|
12058
12040
|
}
|
|
12059
12041
|
}
|
|
12060
12042
|
if (node.query) {
|
|
12061
12043
|
if (node.flags & 67108864 /* TypeContentQuery */ &&
|
|
12062
12044
|
(!parent || (parent.flags & 16384 /* TypeDirective */) === 0)) {
|
|
12063
|
-
throw new Error("Illegal State: Content Query nodes need to be children of directives, at index " + node.
|
|
12045
|
+
throw new Error("Illegal State: Content Query nodes need to be children of directives, at index " + node.nodeIndex + "!");
|
|
12064
12046
|
}
|
|
12065
12047
|
if (node.flags & 134217728 /* TypeViewQuery */ && parent) {
|
|
12066
|
-
throw new Error("Illegal State: View Query nodes have to be top level nodes, at index " + node.
|
|
12048
|
+
throw new Error("Illegal State: View Query nodes have to be top level nodes, at index " + node.nodeIndex + "!");
|
|
12067
12049
|
}
|
|
12068
12050
|
}
|
|
12069
12051
|
if (node.childCount) {
|
|
12070
|
-
var /** @type {?} */ parentEnd = parent ? parent.
|
|
12071
|
-
if (node.
|
|
12072
|
-
throw new Error("Illegal State: childCount of node leads outside of parent, at index " + node.
|
|
12052
|
+
var /** @type {?} */ parentEnd = parent ? parent.nodeIndex + parent.childCount : nodeCount - 1;
|
|
12053
|
+
if (node.nodeIndex <= parentEnd && node.nodeIndex + node.childCount > parentEnd) {
|
|
12054
|
+
throw new Error("Illegal State: childCount of node leads outside of parent, at index " + node.nodeIndex + "!");
|
|
12073
12055
|
}
|
|
12074
12056
|
}
|
|
12075
12057
|
}
|
|
@@ -12158,7 +12140,7 @@ function createViewNodes(view) {
|
|
|
12158
12140
|
var /** @type {?} */ renderHost;
|
|
12159
12141
|
if (isComponentView(view)) {
|
|
12160
12142
|
var /** @type {?} */ hostDef = view.parentNodeDef;
|
|
12161
|
-
renderHost = asElementData(/** @type {?} */ ((view.parent)), /** @type {?} */ ((((hostDef)).parent)).
|
|
12143
|
+
renderHost = asElementData(/** @type {?} */ ((view.parent)), /** @type {?} */ ((((hostDef)).parent)).nodeIndex).renderElement;
|
|
12162
12144
|
}
|
|
12163
12145
|
var /** @type {?} */ def = view.def;
|
|
12164
12146
|
var /** @type {?} */ nodes = view.nodes;
|
|
@@ -12192,8 +12174,11 @@ function createViewNodes(view) {
|
|
|
12192
12174
|
case 1024 /* TypeFactoryProvider */:
|
|
12193
12175
|
case 2048 /* TypeUseExistingProvider */:
|
|
12194
12176
|
case 256 /* TypeValueProvider */: {
|
|
12195
|
-
|
|
12196
|
-
nodeData
|
|
12177
|
+
nodeData = nodes[i];
|
|
12178
|
+
if (!nodeData && !(nodeDef.flags & 4096 /* LazyProvider */)) {
|
|
12179
|
+
var /** @type {?} */ instance = createProviderInstance(view, nodeDef);
|
|
12180
|
+
nodeData = ({ instance: instance });
|
|
12181
|
+
}
|
|
12197
12182
|
break;
|
|
12198
12183
|
}
|
|
12199
12184
|
case 16 /* TypePipe */: {
|
|
@@ -12202,11 +12187,14 @@ function createViewNodes(view) {
|
|
|
12202
12187
|
break;
|
|
12203
12188
|
}
|
|
12204
12189
|
case 16384 /* TypeDirective */: {
|
|
12205
|
-
|
|
12206
|
-
nodeData
|
|
12190
|
+
nodeData = nodes[i];
|
|
12191
|
+
if (!nodeData) {
|
|
12192
|
+
var /** @type {?} */ instance = createDirectiveInstance(view, nodeDef);
|
|
12193
|
+
nodeData = ({ instance: instance });
|
|
12194
|
+
}
|
|
12207
12195
|
if (nodeDef.flags & 32768 /* Component */) {
|
|
12208
|
-
var /** @type {?} */ compView = asElementData(view, /** @type {?} */ ((nodeDef.parent)).
|
|
12209
|
-
initView(compView, instance, instance);
|
|
12196
|
+
var /** @type {?} */ compView = asElementData(view, /** @type {?} */ ((nodeDef.parent)).nodeIndex).componentView;
|
|
12197
|
+
initView(compView, nodeData.instance, nodeData.instance);
|
|
12210
12198
|
}
|
|
12211
12199
|
break;
|
|
12212
12200
|
}
|
|
@@ -12344,26 +12332,20 @@ function markProjectedViewsForCheck(view) {
|
|
|
12344
12332
|
* @return {?}
|
|
12345
12333
|
*/
|
|
12346
12334
|
function checkAndUpdateNodeInline(view, nodeDef, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9) {
|
|
12347
|
-
var /** @type {?} */ changed = false;
|
|
12348
12335
|
switch (nodeDef.flags & 201347067 /* Types */) {
|
|
12349
12336
|
case 1 /* TypeElement */:
|
|
12350
|
-
|
|
12351
|
-
break;
|
|
12337
|
+
return checkAndUpdateElementInline(view, nodeDef, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
|
|
12352
12338
|
case 2 /* TypeText */:
|
|
12353
|
-
|
|
12354
|
-
break;
|
|
12339
|
+
return checkAndUpdateTextInline(view, nodeDef, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
|
|
12355
12340
|
case 16384 /* TypeDirective */:
|
|
12356
|
-
|
|
12357
|
-
checkAndUpdateDirectiveInline(view, nodeDef, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
|
|
12358
|
-
break;
|
|
12341
|
+
return checkAndUpdateDirectiveInline(view, nodeDef, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
|
|
12359
12342
|
case 32 /* TypePureArray */:
|
|
12360
12343
|
case 64 /* TypePureObject */:
|
|
12361
12344
|
case 128 /* TypePurePipe */:
|
|
12362
|
-
|
|
12363
|
-
|
|
12364
|
-
|
|
12345
|
+
return checkAndUpdatePureExpressionInline(view, nodeDef, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
|
|
12346
|
+
default:
|
|
12347
|
+
throw 'unreachable';
|
|
12365
12348
|
}
|
|
12366
|
-
return changed;
|
|
12367
12349
|
}
|
|
12368
12350
|
/**
|
|
12369
12351
|
* @param {?} view
|
|
@@ -12372,34 +12354,20 @@ function checkAndUpdateNodeInline(view, nodeDef, v0, v1, v2, v3, v4, v5, v6, v7,
|
|
|
12372
12354
|
* @return {?}
|
|
12373
12355
|
*/
|
|
12374
12356
|
function checkAndUpdateNodeDynamic(view, nodeDef, values) {
|
|
12375
|
-
var /** @type {?} */ changed = false;
|
|
12376
12357
|
switch (nodeDef.flags & 201347067 /* Types */) {
|
|
12377
12358
|
case 1 /* TypeElement */:
|
|
12378
|
-
|
|
12379
|
-
break;
|
|
12359
|
+
return checkAndUpdateElementDynamic(view, nodeDef, values);
|
|
12380
12360
|
case 2 /* TypeText */:
|
|
12381
|
-
|
|
12382
|
-
break;
|
|
12361
|
+
return checkAndUpdateTextDynamic(view, nodeDef, values);
|
|
12383
12362
|
case 16384 /* TypeDirective */:
|
|
12384
|
-
|
|
12385
|
-
break;
|
|
12363
|
+
return checkAndUpdateDirectiveDynamic(view, nodeDef, values);
|
|
12386
12364
|
case 32 /* TypePureArray */:
|
|
12387
12365
|
case 64 /* TypePureObject */:
|
|
12388
12366
|
case 128 /* TypePurePipe */:
|
|
12389
|
-
|
|
12390
|
-
|
|
12391
|
-
|
|
12392
|
-
if (changed) {
|
|
12393
|
-
// Update oldValues after all bindings have been updated,
|
|
12394
|
-
// as a setter for a property might update other properties.
|
|
12395
|
-
var /** @type {?} */ bindLen = nodeDef.bindings.length;
|
|
12396
|
-
var /** @type {?} */ bindingStart = nodeDef.bindingIndex;
|
|
12397
|
-
var /** @type {?} */ oldValues = view.oldValues;
|
|
12398
|
-
for (var /** @type {?} */ i = 0; i < bindLen; i++) {
|
|
12399
|
-
oldValues[bindingStart + i] = values[i];
|
|
12400
|
-
}
|
|
12367
|
+
return checkAndUpdatePureExpressionDynamic(view, nodeDef, values);
|
|
12368
|
+
default:
|
|
12369
|
+
throw 'unreachable';
|
|
12401
12370
|
}
|
|
12402
|
-
return changed;
|
|
12403
12371
|
}
|
|
12404
12372
|
/**
|
|
12405
12373
|
* @param {?} view
|
|
@@ -12484,9 +12452,9 @@ function checkNoChangesNodeDynamic(view, nodeDef, values) {
|
|
|
12484
12452
|
* @return {?}
|
|
12485
12453
|
*/
|
|
12486
12454
|
function checkNoChangesQuery(view, nodeDef) {
|
|
12487
|
-
var /** @type {?} */ queryList = asQueryList(view, nodeDef.
|
|
12455
|
+
var /** @type {?} */ queryList = asQueryList(view, nodeDef.nodeIndex);
|
|
12488
12456
|
if (queryList.dirty) {
|
|
12489
|
-
throw expressionChangedAfterItHasBeenCheckedError(Services.createDebugContext(view, nodeDef.
|
|
12457
|
+
throw expressionChangedAfterItHasBeenCheckedError(Services.createDebugContext(view, nodeDef.nodeIndex), "Query " + ((nodeDef.query)).id + " not dirty", "Query " + ((nodeDef.query)).id + " dirty", (view.state & 1 /* BeforeFirstCheck */) !== 0);
|
|
12490
12458
|
}
|
|
12491
12459
|
}
|
|
12492
12460
|
/**
|
|
@@ -12679,7 +12647,7 @@ function execQueriesAction(view, queryFlags, staticDynamicQueryFlag, checkType)
|
|
|
12679
12647
|
for (var /** @type {?} */ i = 0; i < nodeCount; i++) {
|
|
12680
12648
|
var /** @type {?} */ nodeDef = view.def.nodes[i];
|
|
12681
12649
|
if ((nodeDef.flags & queryFlags) && (nodeDef.flags & staticDynamicQueryFlag)) {
|
|
12682
|
-
Services.setCurrentNode(view, nodeDef.
|
|
12650
|
+
Services.setCurrentNode(view, nodeDef.nodeIndex);
|
|
12683
12651
|
switch (checkType) {
|
|
12684
12652
|
case 0 /* CheckAndUpdate */:
|
|
12685
12653
|
checkAndUpdateQuery(view, nodeDef);
|
|
@@ -12900,7 +12868,7 @@ function applyProviderOverridesToView(def) {
|
|
|
12900
12868
|
}
|
|
12901
12869
|
if (lastElementDef && nodeDef.flags & 3840 /* CatProviderNoDirective */ &&
|
|
12902
12870
|
providerOverrides.has(/** @type {?} */ ((nodeDef.provider)).token)) {
|
|
12903
|
-
elIndicesWithOverwrittenProviders.push(/** @type {?} */ ((lastElementDef)).
|
|
12871
|
+
elIndicesWithOverwrittenProviders.push(/** @type {?} */ ((lastElementDef)).nodeIndex);
|
|
12904
12872
|
lastElementDef = null;
|
|
12905
12873
|
}
|
|
12906
12874
|
}
|
|
@@ -12919,9 +12887,6 @@ function applyProviderOverridesToView(def) {
|
|
|
12919
12887
|
return;
|
|
12920
12888
|
}
|
|
12921
12889
|
if (nodeDef.flags & 3840 /* CatProviderNoDirective */) {
|
|
12922
|
-
// Make all providers lazy, so that we don't get into trouble
|
|
12923
|
-
// with ordering problems of providers on the same element
|
|
12924
|
-
nodeDef.flags |= 4096 /* LazyProvider */;
|
|
12925
12890
|
var /** @type {?} */ provider = ((nodeDef.provider));
|
|
12926
12891
|
var /** @type {?} */ override = providerOverrides.get(provider.token);
|
|
12927
12892
|
if (override) {
|
|
@@ -12938,7 +12903,8 @@ function applyProviderOverridesToView(def) {
|
|
|
12938
12903
|
* @return {?}
|
|
12939
12904
|
*/
|
|
12940
12905
|
function applyProviderOverridesToNgModule(def) {
|
|
12941
|
-
|
|
12906
|
+
var _a = calcHasOverrides(def), hasOverrides = _a.hasOverrides, hasDeprecatedOverrides = _a.hasDeprecatedOverrides;
|
|
12907
|
+
if (!hasOverrides) {
|
|
12942
12908
|
return def;
|
|
12943
12909
|
}
|
|
12944
12910
|
// clone the whole view definition,
|
|
@@ -12950,8 +12916,20 @@ function applyProviderOverridesToNgModule(def) {
|
|
|
12950
12916
|
* @param {?} def
|
|
12951
12917
|
* @return {?}
|
|
12952
12918
|
*/
|
|
12953
|
-
function
|
|
12954
|
-
|
|
12919
|
+
function calcHasOverrides(def) {
|
|
12920
|
+
var /** @type {?} */ hasOverrides = false;
|
|
12921
|
+
var /** @type {?} */ hasDeprecatedOverrides = false;
|
|
12922
|
+
if (providerOverrides.size === 0) {
|
|
12923
|
+
return { hasOverrides: hasOverrides, hasDeprecatedOverrides: hasDeprecatedOverrides };
|
|
12924
|
+
}
|
|
12925
|
+
def.providers.forEach(function (node) {
|
|
12926
|
+
var /** @type {?} */ override = providerOverrides.get(node.token);
|
|
12927
|
+
if ((node.flags & 3840 /* CatProviderNoDirective */) && override) {
|
|
12928
|
+
hasOverrides = true;
|
|
12929
|
+
hasDeprecatedOverrides = hasDeprecatedOverrides || override.deprecatedBehavior;
|
|
12930
|
+
}
|
|
12931
|
+
});
|
|
12932
|
+
return { hasOverrides: hasOverrides, hasDeprecatedOverrides: hasDeprecatedOverrides };
|
|
12955
12933
|
}
|
|
12956
12934
|
/**
|
|
12957
12935
|
* @param {?} def
|
|
@@ -12960,9 +12938,12 @@ function applyProviderOverridesToNgModule(def) {
|
|
|
12960
12938
|
function applyProviderOverrides(def) {
|
|
12961
12939
|
for (var /** @type {?} */ i = 0; i < def.providers.length; i++) {
|
|
12962
12940
|
var /** @type {?} */ provider = def.providers[i];
|
|
12963
|
-
|
|
12964
|
-
|
|
12965
|
-
|
|
12941
|
+
if (hasDeprecatedOverrides) {
|
|
12942
|
+
// We had a bug where me made
|
|
12943
|
+
// all providers lazy. Keep this logic behind a flag
|
|
12944
|
+
// for migrating existing users.
|
|
12945
|
+
provider.flags |= 4096 /* LazyProvider */;
|
|
12946
|
+
}
|
|
12966
12947
|
var /** @type {?} */ override = providerOverrides.get(provider.token);
|
|
12967
12948
|
if (override) {
|
|
12968
12949
|
provider.flags = (provider.flags & ~3840 /* CatProviderNoDirective */) | override.flags;
|
|
@@ -12974,7 +12955,7 @@ function applyProviderOverridesToNgModule(def) {
|
|
|
12974
12955
|
}
|
|
12975
12956
|
/**
|
|
12976
12957
|
* @param {?} view
|
|
12977
|
-
* @param {?}
|
|
12958
|
+
* @param {?} checkIndex
|
|
12978
12959
|
* @param {?} argStyle
|
|
12979
12960
|
* @param {?=} v0
|
|
12980
12961
|
* @param {?=} v1
|
|
@@ -12988,16 +12969,16 @@ function applyProviderOverridesToNgModule(def) {
|
|
|
12988
12969
|
* @param {?=} v9
|
|
12989
12970
|
* @return {?}
|
|
12990
12971
|
*/
|
|
12991
|
-
function prodCheckAndUpdateNode(view,
|
|
12992
|
-
var /** @type {?} */ nodeDef = view.def.nodes[
|
|
12972
|
+
function prodCheckAndUpdateNode(view, checkIndex, argStyle, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9) {
|
|
12973
|
+
var /** @type {?} */ nodeDef = view.def.nodes[checkIndex];
|
|
12993
12974
|
checkAndUpdateNode(view, nodeDef, argStyle, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
|
|
12994
12975
|
return (nodeDef.flags & 224 /* CatPureExpression */) ?
|
|
12995
|
-
asPureExpressionData(view,
|
|
12976
|
+
asPureExpressionData(view, checkIndex).value :
|
|
12996
12977
|
undefined;
|
|
12997
12978
|
}
|
|
12998
12979
|
/**
|
|
12999
12980
|
* @param {?} view
|
|
13000
|
-
* @param {?}
|
|
12981
|
+
* @param {?} checkIndex
|
|
13001
12982
|
* @param {?} argStyle
|
|
13002
12983
|
* @param {?=} v0
|
|
13003
12984
|
* @param {?=} v1
|
|
@@ -13011,11 +12992,11 @@ function prodCheckAndUpdateNode(view, nodeIndex, argStyle, v0, v1, v2, v3, v4, v
|
|
|
13011
12992
|
* @param {?=} v9
|
|
13012
12993
|
* @return {?}
|
|
13013
12994
|
*/
|
|
13014
|
-
function prodCheckNoChangesNode(view,
|
|
13015
|
-
var /** @type {?} */ nodeDef = view.def.nodes[
|
|
12995
|
+
function prodCheckNoChangesNode(view, checkIndex, argStyle, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9) {
|
|
12996
|
+
var /** @type {?} */ nodeDef = view.def.nodes[checkIndex];
|
|
13016
12997
|
checkNoChangesNode(view, nodeDef, argStyle, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
|
|
13017
12998
|
return (nodeDef.flags & 224 /* CatPureExpression */) ?
|
|
13018
|
-
asPureExpressionData(view,
|
|
12999
|
+
asPureExpressionData(view, checkIndex).value :
|
|
13019
13000
|
undefined;
|
|
13020
13001
|
}
|
|
13021
13002
|
/**
|
|
@@ -13107,7 +13088,7 @@ function debugUpdateDirectives(view, checkType) {
|
|
|
13107
13088
|
debugSetCurrentNode(view, nextDirectiveWithBinding(view, nodeIndex));
|
|
13108
13089
|
}
|
|
13109
13090
|
return (nodeDef.flags & 224 /* CatPureExpression */) ?
|
|
13110
|
-
asPureExpressionData(view, nodeDef.
|
|
13091
|
+
asPureExpressionData(view, nodeDef.nodeIndex).value :
|
|
13111
13092
|
undefined;
|
|
13112
13093
|
}
|
|
13113
13094
|
}
|
|
@@ -13145,7 +13126,7 @@ function debugUpdateRenderer(view, checkType) {
|
|
|
13145
13126
|
debugSetCurrentNode(view, nextRenderNodeWithBinding(view, nodeIndex));
|
|
13146
13127
|
}
|
|
13147
13128
|
return (nodeDef.flags & 224 /* CatPureExpression */) ?
|
|
13148
|
-
asPureExpressionData(view, nodeDef.
|
|
13129
|
+
asPureExpressionData(view, nodeDef.nodeIndex).value :
|
|
13149
13130
|
undefined;
|
|
13150
13131
|
}
|
|
13151
13132
|
}
|
|
@@ -13171,7 +13152,7 @@ function debugCheckAndUpdateNode(view, nodeDef, argStyle, givenValues) {
|
|
|
13171
13152
|
}
|
|
13172
13153
|
}
|
|
13173
13154
|
var /** @type {?} */ elDef = ((nodeDef.parent));
|
|
13174
|
-
var /** @type {?} */ el = asElementData(view, elDef.
|
|
13155
|
+
var /** @type {?} */ el = asElementData(view, elDef.nodeIndex).renderElement;
|
|
13175
13156
|
if (!((elDef.element)).name) {
|
|
13176
13157
|
// a comment.
|
|
13177
13158
|
view.renderer.setValue(el, "bindings=" + JSON.stringify(bindingValues, null, 2));
|
|
@@ -13297,7 +13278,7 @@ var DebugContext_ = (function () {
|
|
|
13297
13278
|
*/
|
|
13298
13279
|
get: function () {
|
|
13299
13280
|
// Has to be done lazily as we use the DebugContext also during creation of elements...
|
|
13300
|
-
return asElementData(this.elView, this.elDef.
|
|
13281
|
+
return asElementData(this.elView, this.elDef.nodeIndex).componentView || this.view;
|
|
13301
13282
|
},
|
|
13302
13283
|
enumerable: true,
|
|
13303
13284
|
configurable: true
|
|
@@ -13333,7 +13314,7 @@ var DebugContext_ = (function () {
|
|
|
13333
13314
|
get: function () {
|
|
13334
13315
|
var /** @type {?} */ tokens = [];
|
|
13335
13316
|
if (this.elDef) {
|
|
13336
|
-
for (var /** @type {?} */ i = this.elDef.
|
|
13317
|
+
for (var /** @type {?} */ i = this.elDef.nodeIndex + 1; i <= this.elDef.nodeIndex + this.elDef.childCount; i++) {
|
|
13337
13318
|
var /** @type {?} */ childDef = this.elView.def.nodes[i];
|
|
13338
13319
|
if (childDef.flags & 20224 /* CatProvider */) {
|
|
13339
13320
|
tokens.push(/** @type {?} */ ((childDef.provider)).token);
|
|
@@ -13354,7 +13335,7 @@ var DebugContext_ = (function () {
|
|
|
13354
13335
|
var /** @type {?} */ references = {};
|
|
13355
13336
|
if (this.elDef) {
|
|
13356
13337
|
collectReferences(this.elView, this.elDef, references);
|
|
13357
|
-
for (var /** @type {?} */ i = this.elDef.
|
|
13338
|
+
for (var /** @type {?} */ i = this.elDef.nodeIndex + 1; i <= this.elDef.nodeIndex + this.elDef.childCount; i++) {
|
|
13358
13339
|
var /** @type {?} */ childDef = this.elView.def.nodes[i];
|
|
13359
13340
|
if (childDef.flags & 20224 /* CatProvider */) {
|
|
13360
13341
|
collectReferences(this.elView, childDef, references);
|
|
@@ -13403,11 +13384,11 @@ var DebugContext_ = (function () {
|
|
|
13403
13384
|
var /** @type {?} */ logNodeIndex;
|
|
13404
13385
|
if (this.nodeDef.flags & 2 /* TypeText */) {
|
|
13405
13386
|
logViewDef = this.view.def;
|
|
13406
|
-
logNodeIndex = this.nodeDef.
|
|
13387
|
+
logNodeIndex = this.nodeDef.nodeIndex;
|
|
13407
13388
|
}
|
|
13408
13389
|
else {
|
|
13409
13390
|
logViewDef = this.elView.def;
|
|
13410
|
-
logNodeIndex = this.elDef.
|
|
13391
|
+
logNodeIndex = this.elDef.nodeIndex;
|
|
13411
13392
|
}
|
|
13412
13393
|
// Note: we only generate a log function for text and element nodes
|
|
13413
13394
|
// to make the generated code as small as possible.
|
|
@@ -13455,7 +13436,7 @@ function findHostElement(view) {
|
|
|
13455
13436
|
view = ((view.parent));
|
|
13456
13437
|
}
|
|
13457
13438
|
if (view.parent) {
|
|
13458
|
-
return asElementData(view.parent, /** @type {?} */ ((viewParentEl(view))).
|
|
13439
|
+
return asElementData(view.parent, /** @type {?} */ ((viewParentEl(view))).nodeIndex);
|
|
13459
13440
|
}
|
|
13460
13441
|
return null;
|
|
13461
13442
|
}
|
|
@@ -13890,6 +13871,11 @@ var NgModuleFactory_ = (function (_super) {
|
|
|
13890
13871
|
* the
|
|
13891
13872
|
* trigger is bound to (in the form of `[\@triggerName]="expression"`.
|
|
13892
13873
|
*
|
|
13874
|
+
* Animation trigger bindings strigify values and then match the previous and current values against
|
|
13875
|
+
* any linked transitions. If a boolean value is provided into the trigger binding then it will both
|
|
13876
|
+
* be represented as `1` or `true` and `0` or `false` for a true and false boolean values
|
|
13877
|
+
* respectively.
|
|
13878
|
+
*
|
|
13893
13879
|
* ### Usage
|
|
13894
13880
|
*
|
|
13895
13881
|
* `trigger` will create an animation trigger reference based on the provided `name` value. The
|
|
@@ -14375,6 +14361,21 @@ function keyframes$1(steps) {
|
|
|
14375
14361
|
* ])
|
|
14376
14362
|
* ```
|
|
14377
14363
|
*
|
|
14364
|
+
* ### Boolean values
|
|
14365
|
+
* if a trigger binding value is a boolean value then it can be matched using a transition
|
|
14366
|
+
* expression that compares `true` and `false` or `1` and `0`.
|
|
14367
|
+
*
|
|
14368
|
+
* ```
|
|
14369
|
+
* // in the template
|
|
14370
|
+
* <div [\@openClose]="open ? true : false">...</div>
|
|
14371
|
+
*
|
|
14372
|
+
* // in the component metadata
|
|
14373
|
+
* trigger('openClose', [
|
|
14374
|
+
* state('true', style({ height: '*' })),
|
|
14375
|
+
* state('false', style({ height: '0px' })),
|
|
14376
|
+
* transition('false <=> true', animate(500))
|
|
14377
|
+
* ])
|
|
14378
|
+
* ```
|
|
14378
14379
|
* {\@example core/animation/ts/dsl/animation_example.ts region='Component'}
|
|
14379
14380
|
*
|
|
14380
14381
|
* \@experimental Animation support is experimental.
|
|
@@ -14399,7 +14400,7 @@ function transition$1(stateChangeExpr, steps, options) {
|
|
|
14399
14400
|
* var fadeAnimation = animation([
|
|
14400
14401
|
* style({ opacity: '{{ start }}' }),
|
|
14401
14402
|
* animate('{{ time }}',
|
|
14402
|
-
* style({ opacity: '{{ end }}'))
|
|
14403
|
+
* style({ opacity: '{{ end }}'}))
|
|
14403
14404
|
* ], { params: { time: '1000ms', start: 0, end: 1 }});
|
|
14404
14405
|
* ```
|
|
14405
14406
|
*
|