@angular/core 8.0.0-rc.3 → 8.0.1
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/bundles/core-testing.umd.js +1 -24
- package/bundles/core-testing.umd.js.map +1 -1
- package/bundles/core-testing.umd.min.js +13 -13
- package/bundles/core-testing.umd.min.js.map +1 -1
- package/bundles/core.umd.js +123 -93
- package/bundles/core.umd.js.map +1 -1
- package/bundles/core.umd.min.js +116 -131
- package/bundles/core.umd.min.js.map +1 -1
- package/core.d.ts +32 -15
- package/core.metadata.json +1 -1
- package/esm2015/src/core_private_export.js +1 -1
- package/esm2015/src/di/injectable.js +1 -1
- package/esm2015/src/di/injector.js +3 -5
- package/esm2015/src/di/interface/defs.js +2 -2
- package/esm2015/src/di/jit/injectable.js +2 -2
- package/esm2015/src/metadata/di.js +1 -1
- package/esm2015/src/profile/profile.js +5 -1
- package/esm2015/src/profile/wtf_impl.js +2 -1
- package/esm2015/src/render3/component_ref.js +2 -4
- package/esm2015/src/render3/empty.js +5 -1
- package/esm2015/src/render3/index.js +1 -1
- package/esm2015/src/render3/instructions/all.js +2 -2
- package/esm2015/src/render3/instructions/projection.js +52 -13
- package/esm2015/src/render3/instructions/shared.js +7 -2
- package/esm2015/src/render3/interfaces/injector.js +3 -4
- package/esm2015/src/render3/interfaces/projection.js +1 -1
- package/esm2015/src/render3/jit/directive.js +2 -2
- package/esm2015/src/render3/jit/environment.js +13 -8
- package/esm2015/src/render3/jit/module.js +12 -9
- package/esm2015/src/render3/jit/pipe.js +2 -2
- package/esm2015/src/render3/node_selector_matcher.js +2 -27
- package/esm2015/src/render3/styling/class_and_style_bindings.js +2 -2
- package/esm2015/src/render3/util/misc_utils.js +8 -3
- package/esm2015/src/util/array_utils.js +16 -17
- package/esm2015/src/util/empty.js +5 -1
- package/esm2015/src/util/microtask.js +2 -2
- package/esm2015/src/util/ng_i18n_closure_mode.js +5 -1
- package/esm2015/src/version.js +1 -1
- package/esm2015/testing/src/r3_test_bed.js +1 -27
- package/esm2015/testing/src/test_bed.js +1 -18
- package/esm2015/testing/src/test_bed_common.js +1 -22
- package/esm5/src/core_private_export.js +1 -1
- package/esm5/src/di/injectable.js +1 -1
- package/esm5/src/di/injector.js +3 -4
- package/esm5/src/di/interface/defs.js +2 -2
- package/esm5/src/di/jit/injectable.js +2 -2
- package/esm5/src/metadata/di.js +1 -1
- package/esm5/src/profile/profile.js +5 -1
- package/esm5/src/profile/wtf_impl.js +1 -1
- package/esm5/src/render3/component_ref.js +2 -4
- package/esm5/src/render3/empty.js +5 -1
- package/esm5/src/render3/index.js +1 -1
- package/esm5/src/render3/instructions/projection.js +49 -14
- package/esm5/src/render3/instructions/shared.js +4 -2
- package/esm5/src/render3/interfaces/injector.js +3 -3
- package/esm5/src/render3/interfaces/projection.js +1 -1
- package/esm5/src/render3/jit/directive.js +2 -2
- package/esm5/src/render3/jit/environment.js +10 -8
- package/esm5/src/render3/jit/module.js +12 -9
- package/esm5/src/render3/jit/pipe.js +2 -2
- package/esm5/src/render3/node_selector_matcher.js +2 -23
- package/esm5/src/render3/styling/class_and_style_bindings.js +2 -2
- package/esm5/src/render3/util/misc_utils.js +8 -4
- package/esm5/src/util/array_utils.js +15 -16
- package/esm5/src/util/empty.js +5 -1
- package/esm5/src/util/microtask.js +2 -2
- package/esm5/src/util/ng_i18n_closure_mode.js +5 -1
- package/esm5/src/version.js +1 -1
- package/esm5/testing/src/r3_test_bed.js +1 -17
- package/esm5/testing/src/test_bed.js +1 -8
- package/esm5/testing/src/test_bed_common.js +1 -1
- package/fesm2015/core.js +133 -98
- package/fesm2015/core.js.map +1 -1
- package/fesm2015/testing.js +1 -44
- package/fesm2015/testing.js.map +1 -1
- package/fesm5/core.js +123 -93
- package/fesm5/core.js.map +1 -1
- package/fesm5/testing.js +1 -24
- package/fesm5/testing.js.map +1 -1
- package/package.json +2 -2
- package/schematics/migrations/injectable-pipe/index.js +7 -4
- package/schematics/migrations/move-document/index.js +7 -4
- package/schematics/migrations/static-queries/angular/directive_inputs.js +3 -2
- package/schematics/migrations/static-queries/angular/ng_query_visitor.d.ts +2 -0
- package/schematics/migrations/static-queries/angular/ng_query_visitor.js +21 -7
- package/schematics/migrations/static-queries/angular/query-definition.d.ts +9 -2
- package/schematics/migrations/static-queries/angular/query-definition.js +1 -1
- package/schematics/migrations/static-queries/index.d.ts +0 -5
- package/schematics/migrations/static-queries/index.js +105 -77
- package/schematics/migrations/static-queries/strategies/template_strategy/template_strategy.d.ts +2 -2
- package/schematics/migrations/static-queries/strategies/template_strategy/template_strategy.js +10 -19
- package/schematics/migrations/static-queries/strategies/test_strategy/test_strategy.d.ts +1 -1
- package/schematics/migrations/static-queries/strategies/test_strategy/test_strategy.js +2 -2
- package/schematics/migrations/static-queries/strategies/timing-strategy.d.ts +2 -2
- package/schematics/migrations/static-queries/strategies/timing-strategy.js +1 -1
- package/schematics/migrations/static-queries/strategies/usage_strategy/declaration_usage_visitor.d.ts +28 -5
- package/schematics/migrations/static-queries/strategies/usage_strategy/declaration_usage_visitor.js +107 -11
- package/schematics/migrations/static-queries/strategies/usage_strategy/usage_strategy.d.ts +6 -1
- package/schematics/migrations/static-queries/strategies/usage_strategy/usage_strategy.js +86 -66
- package/schematics/migrations/static-queries/transform.js +13 -10
- package/schematics/migrations/template-var-assignment/index.js +9 -7
- package/schematics/utils/ng_component_template.js +2 -1
- package/schematics/utils/project_tsconfig_paths.js +5 -3
- package/src/r3_symbols.d.ts +2 -2
- package/testing/testing.d.ts +5 -84
- package/testing/testing.metadata.json +1 -1
- package/testing.d.ts +1 -1
- package/schematics/utils/typescript/visit_nodes.d.ts +0 -13
- package/schematics/utils/typescript/visit_nodes.js +0 -26
package/fesm2015/core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v8.0.
|
|
2
|
+
* @license Angular v8.0.1
|
|
3
3
|
* (c) 2010-2019 Google LLC. https://angular.io/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -270,7 +270,7 @@ function fillProperties(target, source) {
|
|
|
270
270
|
* * `factory` gives the zero argument function which will create an instance of the injectable.
|
|
271
271
|
* The factory can call `inject` to access the `Injector` and request injection of dependencies.
|
|
272
272
|
*
|
|
273
|
-
* @
|
|
273
|
+
* @codeGenApi
|
|
274
274
|
*/
|
|
275
275
|
function ɵɵdefineInjectable(opts) {
|
|
276
276
|
return {
|
|
@@ -1084,7 +1084,7 @@ function compileInjectable(type, srcMeta) {
|
|
|
1084
1084
|
// Can't happen - either hasAProvider will be false, or one of the providers will be set.
|
|
1085
1085
|
throw new Error(`Unreachable state.`);
|
|
1086
1086
|
}
|
|
1087
|
-
def = getCompilerFacade().compileInjectable(angularCoreDiEnv, `ng
|
|
1087
|
+
def = getCompilerFacade().compileInjectable(angularCoreDiEnv, `ng:///${type.name}/ngInjectableDef.js`, compilerMeta);
|
|
1088
1088
|
}
|
|
1089
1089
|
return def;
|
|
1090
1090
|
}),
|
|
@@ -1439,8 +1439,6 @@ const NG_TOKEN_PATH = 'ngTokenPath';
|
|
|
1439
1439
|
/** @type {?} */
|
|
1440
1440
|
const NG_TEMP_TOKEN_PATH = 'ngTempTokenPath';
|
|
1441
1441
|
/** @type {?} */
|
|
1442
|
-
const NULL_INJECTOR = Injector.NULL;
|
|
1443
|
-
/** @type {?} */
|
|
1444
1442
|
const NEW_LINE = /\n/gm;
|
|
1445
1443
|
/** @type {?} */
|
|
1446
1444
|
const NO_NEW_LINE = 'ɵ';
|
|
@@ -1450,7 +1448,7 @@ class StaticInjector {
|
|
|
1450
1448
|
* @param {?=} parent
|
|
1451
1449
|
* @param {?=} source
|
|
1452
1450
|
*/
|
|
1453
|
-
constructor(providers, parent =
|
|
1451
|
+
constructor(providers, parent = Injector.NULL, source = null) {
|
|
1454
1452
|
this.parent = parent;
|
|
1455
1453
|
this.source = source;
|
|
1456
1454
|
/** @type {?} */
|
|
@@ -1673,7 +1671,7 @@ function resolveToken(token, record, records, parent, notFoundValue, flags) {
|
|
|
1673
1671
|
records,
|
|
1674
1672
|
// If we don't know how to resolve dependency and we should not check parent for it,
|
|
1675
1673
|
// than pass in Null injector.
|
|
1676
|
-
!childRecord && !(options & 4 /* CheckParent */) ?
|
|
1674
|
+
!childRecord && !(options & 4 /* CheckParent */) ? Injector.NULL : parent, options & 1 /* Optional */ ? null : Injector.THROW_IF_NOT_FOUND, InjectFlags.Default));
|
|
1677
1675
|
}
|
|
1678
1676
|
}
|
|
1679
1677
|
record.value = value = useNew ? new ((/** @type {?} */ (fn)))(...deps) : fn.apply(obj, deps);
|
|
@@ -3437,7 +3435,11 @@ const EMPTY_OBJ = {};
|
|
|
3437
3435
|
const EMPTY_ARRAY$1 = [];
|
|
3438
3436
|
// freezing the values prevents any code from accidentally inserting new values in
|
|
3439
3437
|
if (typeof ngDevMode !== 'undefined' && ngDevMode) {
|
|
3438
|
+
// These property accesses can be ignored because ngDevMode will be set to false
|
|
3439
|
+
// when optimizing code and the whole if statement will be dropped.
|
|
3440
|
+
// tslint:disable-next-line:no-toplevel-property-access
|
|
3440
3441
|
Object.freeze(EMPTY_OBJ);
|
|
3442
|
+
// tslint:disable-next-line:no-toplevel-property-access
|
|
3441
3443
|
Object.freeze(EMPTY_ARRAY$1);
|
|
3442
3444
|
}
|
|
3443
3445
|
|
|
@@ -3918,10 +3920,14 @@ function stringifyForError(value) {
|
|
|
3918
3920
|
}
|
|
3919
3921
|
return renderStringify(value);
|
|
3920
3922
|
}
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
+
const ɵ0$5 = /**
|
|
3924
|
+
* @return {?}
|
|
3925
|
+
*/
|
|
3926
|
+
() => (typeof requestAnimationFrame !== 'undefined' && requestAnimationFrame || // browser only
|
|
3923
3927
|
setTimeout // everything else
|
|
3924
3928
|
).bind(_global);
|
|
3929
|
+
/** @type {?} */
|
|
3930
|
+
const defaultScheduler = ((ɵ0$5))();
|
|
3925
3931
|
/**
|
|
3926
3932
|
*
|
|
3927
3933
|
* \@codeGenApi
|
|
@@ -4540,15 +4546,14 @@ class NodeInjectorFactory {
|
|
|
4540
4546
|
this.injectImpl = injectImplementation;
|
|
4541
4547
|
}
|
|
4542
4548
|
}
|
|
4543
|
-
/** @type {?} */
|
|
4544
|
-
const FactoryPrototype = NodeInjectorFactory.prototype;
|
|
4545
4549
|
/**
|
|
4546
4550
|
* @param {?} obj
|
|
4547
4551
|
* @return {?}
|
|
4548
4552
|
*/
|
|
4549
4553
|
function isFactory(obj) {
|
|
4550
4554
|
// See: https://jsperf.com/instanceof-vs-getprototypeof
|
|
4551
|
-
return obj !== null && typeof obj == 'object' &&
|
|
4555
|
+
return obj !== null && typeof obj == 'object' &&
|
|
4556
|
+
Object.getPrototypeOf(obj) == NodeInjectorFactory.prototype;
|
|
4552
4557
|
}
|
|
4553
4558
|
|
|
4554
4559
|
/**
|
|
@@ -5472,7 +5477,7 @@ RendererStyleFlags3[RendererStyleFlags3.DashCase] = 'DashCase';
|
|
|
5472
5477
|
function isProceduralRenderer(renderer) {
|
|
5473
5478
|
return !!(((/** @type {?} */ (renderer))).listen);
|
|
5474
5479
|
}
|
|
5475
|
-
const ɵ0$
|
|
5480
|
+
const ɵ0$6 = /**
|
|
5476
5481
|
* @param {?} hostElement
|
|
5477
5482
|
* @param {?} rendererType
|
|
5478
5483
|
* @return {?}
|
|
@@ -5480,7 +5485,7 @@ const ɵ0$5 = /**
|
|
|
5480
5485
|
(hostElement, rendererType) => { return document; };
|
|
5481
5486
|
/** @type {?} */
|
|
5482
5487
|
const domRendererFactory3 = {
|
|
5483
|
-
createRenderer: (ɵ0$
|
|
5488
|
+
createRenderer: (ɵ0$6)
|
|
5484
5489
|
};
|
|
5485
5490
|
|
|
5486
5491
|
/**
|
|
@@ -10994,7 +10999,7 @@ function getInitialStyleStringValue(context) {
|
|
|
10994
10999
|
return styleString;
|
|
10995
11000
|
}
|
|
10996
11001
|
/**
|
|
10997
|
-
* Returns the current cached
|
|
11002
|
+
* Returns the current cached multi-value for a given directiveIndex within the provided context.
|
|
10998
11003
|
* @param {?} context
|
|
10999
11004
|
* @param {?} entryIsClassBased
|
|
11000
11005
|
* @param {?} directiveIndex
|
|
@@ -11478,31 +11483,6 @@ function getProjectAsAttrValue(tNode) {
|
|
|
11478
11483
|
}
|
|
11479
11484
|
return null;
|
|
11480
11485
|
}
|
|
11481
|
-
/**
|
|
11482
|
-
* Checks a given node against matching projection selectors and returns
|
|
11483
|
-
* selector index (or 0 if none matched).
|
|
11484
|
-
*
|
|
11485
|
-
* This function takes into account the parsed ngProjectAs selector from the node's attributes.
|
|
11486
|
-
* If present, it will check whether the ngProjectAs selector matches any of the projection
|
|
11487
|
-
* selectors.
|
|
11488
|
-
* @param {?} tNode
|
|
11489
|
-
* @param {?} selectors
|
|
11490
|
-
* @return {?}
|
|
11491
|
-
*/
|
|
11492
|
-
function matchingProjectionSelectorIndex(tNode, selectors) {
|
|
11493
|
-
/** @type {?} */
|
|
11494
|
-
const ngProjectAsAttrVal = getProjectAsAttrValue(tNode);
|
|
11495
|
-
for (let i = 0; i < selectors.length; i++) {
|
|
11496
|
-
// If we ran into an `ngProjectAs` attribute, we should match its parsed selector
|
|
11497
|
-
// to the list of selectors, otherwise we fall back to matching against the node.
|
|
11498
|
-
if (ngProjectAsAttrVal === null ?
|
|
11499
|
-
isNodeMatchingSelectorList(tNode, selectors[i], /* isProjectionMode */ true) :
|
|
11500
|
-
isSelectorInSelectorList(ngProjectAsAttrVal, selectors[i])) {
|
|
11501
|
-
return i + 1; // first matching selector "captures" a given node
|
|
11502
|
-
}
|
|
11503
|
-
}
|
|
11504
|
-
return 0;
|
|
11505
|
-
}
|
|
11506
11486
|
/**
|
|
11507
11487
|
* @param {?} nodeAttrs
|
|
11508
11488
|
* @return {?}
|
|
@@ -11562,12 +11542,16 @@ function isSelectorInSelectorList(selector, list) {
|
|
|
11562
11542
|
* @fileoverview added by tsickle
|
|
11563
11543
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
11564
11544
|
*/
|
|
11545
|
+
const ɵ0$7 = /**
|
|
11546
|
+
* @return {?}
|
|
11547
|
+
*/
|
|
11548
|
+
() => Promise.resolve(null);
|
|
11565
11549
|
/**
|
|
11566
11550
|
* A permanent marker promise which signifies that the current CD tree is
|
|
11567
11551
|
* clean.
|
|
11568
11552
|
* @type {?}
|
|
11569
11553
|
*/
|
|
11570
|
-
const _CLEAN_PROMISE =
|
|
11554
|
+
const _CLEAN_PROMISE = ((ɵ0$7))();
|
|
11571
11555
|
/**
|
|
11572
11556
|
* Refreshes the view, executing the following steps in that order:
|
|
11573
11557
|
* triggers init hooks, refreshes dynamic embedded views, triggers content hooks, sets host
|
|
@@ -16125,6 +16109,41 @@ function ɵɵnextContext(level = 1) {
|
|
|
16125
16109
|
* @fileoverview added by tsickle
|
|
16126
16110
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
16127
16111
|
*/
|
|
16112
|
+
/**
|
|
16113
|
+
* Checks a given node against matching projection slots and returns the
|
|
16114
|
+
* determined slot index. Returns "null" if no slot matched the given node.
|
|
16115
|
+
*
|
|
16116
|
+
* This function takes into account the parsed ngProjectAs selector from the
|
|
16117
|
+
* node's attributes. If present, it will check whether the ngProjectAs selector
|
|
16118
|
+
* matches any of the projection slot selectors.
|
|
16119
|
+
* @param {?} tNode
|
|
16120
|
+
* @param {?} projectionSlots
|
|
16121
|
+
* @return {?}
|
|
16122
|
+
*/
|
|
16123
|
+
function matchingProjectionSlotIndex(tNode, projectionSlots) {
|
|
16124
|
+
/** @type {?} */
|
|
16125
|
+
let wildcardNgContentIndex = null;
|
|
16126
|
+
/** @type {?} */
|
|
16127
|
+
const ngProjectAsAttrVal = getProjectAsAttrValue(tNode);
|
|
16128
|
+
for (let i = 0; i < projectionSlots.length; i++) {
|
|
16129
|
+
/** @type {?} */
|
|
16130
|
+
const slotValue = projectionSlots[i];
|
|
16131
|
+
// The last wildcard projection slot should match all nodes which aren't matching
|
|
16132
|
+
// any selector. This is necessary to be backwards compatible with view engine.
|
|
16133
|
+
if (slotValue === '*') {
|
|
16134
|
+
wildcardNgContentIndex = i;
|
|
16135
|
+
continue;
|
|
16136
|
+
}
|
|
16137
|
+
// If we ran into an `ngProjectAs` attribute, we should match its parsed selector
|
|
16138
|
+
// to the list of selectors, otherwise we fall back to matching against the node.
|
|
16139
|
+
if (ngProjectAsAttrVal === null ?
|
|
16140
|
+
isNodeMatchingSelectorList(tNode, slotValue, /* isProjectionMode */ true) :
|
|
16141
|
+
isSelectorInSelectorList(ngProjectAsAttrVal, slotValue)) {
|
|
16142
|
+
return i; // first matching selector "captures" a given node
|
|
16143
|
+
}
|
|
16144
|
+
}
|
|
16145
|
+
return wildcardNgContentIndex;
|
|
16146
|
+
}
|
|
16128
16147
|
/**
|
|
16129
16148
|
* Instruction to distribute projectable nodes among <ng-content> occurrences in a given template.
|
|
16130
16149
|
* It takes all the selectors from the entire component's template and decides where
|
|
@@ -16144,32 +16163,36 @@ function ɵɵnextContext(level = 1) {
|
|
|
16144
16163
|
* template author).
|
|
16145
16164
|
*
|
|
16146
16165
|
* \@codeGenApi
|
|
16147
|
-
* @param {?=}
|
|
16166
|
+
* @param {?=} projectionSlots
|
|
16148
16167
|
* @return {?}
|
|
16149
16168
|
*/
|
|
16150
|
-
function ɵɵprojectionDef(
|
|
16169
|
+
function ɵɵprojectionDef(projectionSlots) {
|
|
16151
16170
|
/** @type {?} */
|
|
16152
16171
|
const componentNode = (/** @type {?} */ (findComponentView(getLView())[T_HOST]));
|
|
16153
16172
|
if (!componentNode.projection) {
|
|
16173
|
+
// If no explicit projection slots are defined, fall back to a single
|
|
16174
|
+
// projection slot with the wildcard selector.
|
|
16154
16175
|
/** @type {?} */
|
|
16155
|
-
const
|
|
16176
|
+
const numProjectionSlots = projectionSlots ? projectionSlots.length : 1;
|
|
16156
16177
|
/** @type {?} */
|
|
16157
16178
|
const projectionHeads = componentNode.projection =
|
|
16158
|
-
new Array(
|
|
16179
|
+
new Array(numProjectionSlots).fill(null);
|
|
16159
16180
|
/** @type {?} */
|
|
16160
16181
|
const tails = projectionHeads.slice();
|
|
16161
16182
|
/** @type {?} */
|
|
16162
16183
|
let componentChild = componentNode.child;
|
|
16163
16184
|
while (componentChild !== null) {
|
|
16164
16185
|
/** @type {?} */
|
|
16165
|
-
const
|
|
16166
|
-
if (
|
|
16167
|
-
|
|
16168
|
-
|
|
16169
|
-
|
|
16170
|
-
|
|
16186
|
+
const slotIndex = projectionSlots ? matchingProjectionSlotIndex(componentChild, projectionSlots) : 0;
|
|
16187
|
+
if (slotIndex !== null) {
|
|
16188
|
+
if (tails[slotIndex]) {
|
|
16189
|
+
(/** @type {?} */ (tails[slotIndex])).projectionNext = componentChild;
|
|
16190
|
+
}
|
|
16191
|
+
else {
|
|
16192
|
+
projectionHeads[slotIndex] = componentChild;
|
|
16193
|
+
}
|
|
16194
|
+
tails[slotIndex] = componentChild;
|
|
16171
16195
|
}
|
|
16172
|
-
tails[bucketIndex] = componentChild;
|
|
16173
16196
|
componentChild = componentChild.next;
|
|
16174
16197
|
}
|
|
16175
16198
|
}
|
|
@@ -18510,15 +18533,15 @@ const EMPTY_ARRAY$2 = (/** @type {?} */ ([]));
|
|
|
18510
18533
|
* A lazily initialized NullInjector.
|
|
18511
18534
|
* @type {?}
|
|
18512
18535
|
*/
|
|
18513
|
-
let NULL_INJECTOR
|
|
18536
|
+
let NULL_INJECTOR = undefined;
|
|
18514
18537
|
/**
|
|
18515
18538
|
* @return {?}
|
|
18516
18539
|
*/
|
|
18517
18540
|
function getNullInjector() {
|
|
18518
|
-
if (NULL_INJECTOR
|
|
18519
|
-
NULL_INJECTOR
|
|
18541
|
+
if (NULL_INJECTOR === undefined) {
|
|
18542
|
+
NULL_INJECTOR = new NullInjector();
|
|
18520
18543
|
}
|
|
18521
|
-
return NULL_INJECTOR
|
|
18544
|
+
return NULL_INJECTOR;
|
|
18522
18545
|
}
|
|
18523
18546
|
/**
|
|
18524
18547
|
* Create a new `Injector` which is configured using a `defType` of `InjectorType<any>`s.
|
|
@@ -20501,7 +20524,7 @@ class Version {
|
|
|
20501
20524
|
* \@publicApi
|
|
20502
20525
|
* @type {?}
|
|
20503
20526
|
*/
|
|
20504
|
-
const VERSION = new Version('8.0.
|
|
20527
|
+
const VERSION = new Version('8.0.1');
|
|
20505
20528
|
|
|
20506
20529
|
/**
|
|
20507
20530
|
* @fileoverview added by tsickle
|
|
@@ -25010,10 +25033,8 @@ class ComponentFactory$1 extends ComponentFactory {
|
|
|
25010
25033
|
this.ngModule = ngModule;
|
|
25011
25034
|
this.componentType = componentDef.type;
|
|
25012
25035
|
this.selector = (/** @type {?} */ (componentDef.selectors[0][0]));
|
|
25013
|
-
// The component definition does not include the wildcard ('*') selector in its list.
|
|
25014
|
-
// It is implicitly expected as the first item in the projectable nodes array.
|
|
25015
25036
|
this.ngContentSelectors =
|
|
25016
|
-
componentDef.ngContentSelectors ?
|
|
25037
|
+
componentDef.ngContentSelectors ? componentDef.ngContentSelectors : [];
|
|
25017
25038
|
this.isBoundToModule = !!ngModule;
|
|
25018
25039
|
}
|
|
25019
25040
|
/**
|
|
@@ -25183,9 +25204,13 @@ class ComponentRef$1 extends ComponentRef {
|
|
|
25183
25204
|
* NOTE: changes to the `ngI18nClosureMode` name must be synced with `compiler-cli/src/tooling.ts`.
|
|
25184
25205
|
*/
|
|
25185
25206
|
if (typeof ngI18nClosureMode === 'undefined') {
|
|
25207
|
+
// These property accesses can be ignored because ngI18nClosureMode will be set to false
|
|
25208
|
+
// when optimizing code and the whole if statement will be dropped.
|
|
25186
25209
|
// Make sure to refer to ngI18nClosureMode as ['ngI18nClosureMode'] for closure.
|
|
25210
|
+
// tslint:disable-next-line:no-toplevel-property-access
|
|
25187
25211
|
_global['ngI18nClosureMode'] =
|
|
25188
25212
|
// TODO(FW-1250): validate that this actually, you know, works.
|
|
25213
|
+
// tslint:disable-next-line:no-toplevel-property-access
|
|
25189
25214
|
typeof goog !== 'undefined' && typeof goog.getMsg === 'function';
|
|
25190
25215
|
}
|
|
25191
25216
|
|
|
@@ -25208,28 +25233,27 @@ function addAllToArray(items, arr) {
|
|
|
25208
25233
|
}
|
|
25209
25234
|
}
|
|
25210
25235
|
/**
|
|
25211
|
-
* Flattens an array
|
|
25236
|
+
* Flattens an array.
|
|
25212
25237
|
*/
|
|
25213
|
-
function flatten(list,
|
|
25214
|
-
|
|
25215
|
-
|
|
25216
|
-
|
|
25217
|
-
|
|
25238
|
+
function flatten(list, dst) {
|
|
25239
|
+
if (dst === undefined)
|
|
25240
|
+
dst = list;
|
|
25241
|
+
for (let i = 0; i < list.length; i++) {
|
|
25242
|
+
let item = list[i];
|
|
25218
25243
|
if (Array.isArray(item)) {
|
|
25219
|
-
|
|
25220
|
-
|
|
25221
|
-
|
|
25222
|
-
|
|
25223
|
-
|
|
25224
|
-
i++;
|
|
25244
|
+
// we need to inline it.
|
|
25245
|
+
if (dst === list) {
|
|
25246
|
+
// Our assumption that the list was already flat was wrong and
|
|
25247
|
+
// we need to clone flat since we need to write to it.
|
|
25248
|
+
dst = list.slice(0, i);
|
|
25225
25249
|
}
|
|
25250
|
+
flatten(item, dst);
|
|
25226
25251
|
}
|
|
25227
|
-
else {
|
|
25228
|
-
|
|
25229
|
-
i++;
|
|
25252
|
+
else if (dst !== list) {
|
|
25253
|
+
dst.push(item);
|
|
25230
25254
|
}
|
|
25231
25255
|
}
|
|
25232
|
-
return
|
|
25256
|
+
return dst;
|
|
25233
25257
|
}
|
|
25234
25258
|
|
|
25235
25259
|
/**
|
|
@@ -28724,13 +28748,10 @@ function noModuleError(id) {
|
|
|
28724
28748
|
* @fileoverview added by tsickle
|
|
28725
28749
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
28726
28750
|
*/
|
|
28727
|
-
/**
|
|
28728
|
-
*
|
|
28729
|
-
*
|
|
28730
|
-
* This should be kept up to date with the public exports of \@angular/core.
|
|
28731
|
-
* @type {?}
|
|
28751
|
+
const ɵ0$8 = /**
|
|
28752
|
+
* @return {?}
|
|
28732
28753
|
*/
|
|
28733
|
-
|
|
28754
|
+
() => ({
|
|
28734
28755
|
'ɵɵdefineBase': ɵɵdefineBase,
|
|
28735
28756
|
'ɵɵdefineComponent': ɵɵdefineComponent,
|
|
28736
28757
|
'ɵɵdefineDirective': ɵɵdefineDirective,
|
|
@@ -28855,7 +28876,14 @@ const angularCoreEnv = {
|
|
|
28855
28876
|
'ɵɵsanitizeUrl': ɵɵsanitizeUrl,
|
|
28856
28877
|
'ɵɵsanitizeUrlOrResourceUrl': ɵɵsanitizeUrlOrResourceUrl,
|
|
28857
28878
|
'ɵregisterNgModuleType': registerNgModuleType,
|
|
28858
|
-
};
|
|
28879
|
+
});
|
|
28880
|
+
/**
|
|
28881
|
+
* A mapping of the \@angular/core API surface used in generated expressions to the actual symbols.
|
|
28882
|
+
*
|
|
28883
|
+
* This should be kept up to date with the public exports of \@angular/core.
|
|
28884
|
+
* @type {?}
|
|
28885
|
+
*/
|
|
28886
|
+
const angularCoreEnv = ((ɵ0$8))();
|
|
28859
28887
|
|
|
28860
28888
|
/**
|
|
28861
28889
|
* @fileoverview added by tsickle
|
|
@@ -28950,13 +28978,15 @@ function compileNgModuleDefs(moduleType, ngModule) {
|
|
|
28950
28978
|
*/
|
|
28951
28979
|
() => {
|
|
28952
28980
|
if (ngModuleDef === null) {
|
|
28953
|
-
ngModuleDef = getCompilerFacade().compileNgModule(angularCoreEnv, `ng
|
|
28981
|
+
ngModuleDef = getCompilerFacade().compileNgModule(angularCoreEnv, `ng:///${moduleType.name}/ngModuleDef.js`, {
|
|
28954
28982
|
type: moduleType,
|
|
28955
|
-
bootstrap: flatten(ngModule.bootstrap || EMPTY_ARRAY$4
|
|
28983
|
+
bootstrap: flatten(ngModule.bootstrap || EMPTY_ARRAY$4).map(resolveForwardRef),
|
|
28956
28984
|
declarations: declarations.map(resolveForwardRef),
|
|
28957
|
-
imports: flatten(ngModule.imports || EMPTY_ARRAY$4
|
|
28985
|
+
imports: flatten(ngModule.imports || EMPTY_ARRAY$4)
|
|
28986
|
+
.map(resolveForwardRef)
|
|
28958
28987
|
.map(expandModuleWithProviders),
|
|
28959
|
-
exports: flatten(ngModule.exports || EMPTY_ARRAY$4
|
|
28988
|
+
exports: flatten(ngModule.exports || EMPTY_ARRAY$4)
|
|
28989
|
+
.map(resolveForwardRef)
|
|
28960
28990
|
.map(expandModuleWithProviders),
|
|
28961
28991
|
emitInline: true,
|
|
28962
28992
|
schemas: ngModule.schemas ? flatten(ngModule.schemas) : null,
|
|
@@ -28988,7 +29018,7 @@ function compileNgModuleDefs(moduleType, ngModule) {
|
|
|
28988
29018
|
(ngModule.exports || EMPTY_ARRAY$4).map(resolveForwardRef),
|
|
28989
29019
|
],
|
|
28990
29020
|
};
|
|
28991
|
-
ngInjectorDef = getCompilerFacade().compileInjector(angularCoreEnv, `ng
|
|
29021
|
+
ngInjectorDef = getCompilerFacade().compileInjector(angularCoreEnv, `ng:///${moduleType.name}/ngInjectorDef.js`, meta);
|
|
28992
29022
|
}
|
|
28993
29023
|
return ngInjectorDef;
|
|
28994
29024
|
}),
|
|
@@ -29013,14 +29043,14 @@ function verifySemanticsOfNgModuleDef(moduleType) {
|
|
|
29013
29043
|
const declarations = maybeUnwrapFn(ngModuleDef.declarations);
|
|
29014
29044
|
/** @type {?} */
|
|
29015
29045
|
const imports = maybeUnwrapFn(ngModuleDef.imports);
|
|
29016
|
-
flatten(imports
|
|
29046
|
+
flatten(imports).map(unwrapModuleWithProvidersImports).forEach(verifySemanticsOfNgModuleDef);
|
|
29017
29047
|
/** @type {?} */
|
|
29018
29048
|
const exports = maybeUnwrapFn(ngModuleDef.exports);
|
|
29019
29049
|
declarations.forEach(verifyDeclarationsHaveDefinitions);
|
|
29020
29050
|
/** @type {?} */
|
|
29021
29051
|
const combinedDeclarations = [
|
|
29022
29052
|
...declarations.map(resolveForwardRef),
|
|
29023
|
-
...flatten(imports.map(computeCombinedExports)
|
|
29053
|
+
...flatten(imports.map(computeCombinedExports)).map(resolveForwardRef),
|
|
29024
29054
|
];
|
|
29025
29055
|
exports.forEach(verifyExportsAreDeclaredOrReExported);
|
|
29026
29056
|
declarations.forEach(verifyDeclarationIsUnique);
|
|
@@ -29029,7 +29059,8 @@ function verifySemanticsOfNgModuleDef(moduleType) {
|
|
|
29029
29059
|
const ngModule = getAnnotation(moduleType, 'NgModule');
|
|
29030
29060
|
if (ngModule) {
|
|
29031
29061
|
ngModule.imports &&
|
|
29032
|
-
flatten(ngModule.imports
|
|
29062
|
+
flatten(ngModule.imports)
|
|
29063
|
+
.map(unwrapModuleWithProvidersImports)
|
|
29033
29064
|
.forEach(verifySemanticsOfNgModuleDef);
|
|
29034
29065
|
ngModule.bootstrap && ngModule.bootstrap.forEach(verifyCorrectBootstrapType);
|
|
29035
29066
|
ngModule.bootstrap && ngModule.bootstrap.forEach(verifyComponentIsPartOfNgModule);
|
|
@@ -29544,7 +29575,7 @@ function compileDirective(type, directive) {
|
|
|
29544
29575
|
/** @type {?} */
|
|
29545
29576
|
const name = type && type.name;
|
|
29546
29577
|
/** @type {?} */
|
|
29547
|
-
const sourceMapUrl = `ng
|
|
29578
|
+
const sourceMapUrl = `ng:///${name}/ngDirectiveDef.js`;
|
|
29548
29579
|
/** @type {?} */
|
|
29549
29580
|
const compiler = getCompilerFacade();
|
|
29550
29581
|
/** @type {?} */
|
|
@@ -29818,7 +29849,7 @@ function compilePipe(type, meta) {
|
|
|
29818
29849
|
/** @type {?} */
|
|
29819
29850
|
const typeName = type.name;
|
|
29820
29851
|
ngPipeDef =
|
|
29821
|
-
getCompilerFacade().compilePipe(angularCoreEnv, `ng
|
|
29852
|
+
getCompilerFacade().compilePipe(angularCoreEnv, `ng:///${typeName}/ngPipeDef.js`, {
|
|
29822
29853
|
type: type,
|
|
29823
29854
|
typeArgumentCount: 0,
|
|
29824
29855
|
name: typeName,
|
|
@@ -29839,7 +29870,7 @@ function compilePipe(type, meta) {
|
|
|
29839
29870
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
29840
29871
|
*/
|
|
29841
29872
|
// WARNING: interface has both a type and a value, skipping emit
|
|
29842
|
-
const ɵ0$
|
|
29873
|
+
const ɵ0$9 = /**
|
|
29843
29874
|
* @param {?=} dir
|
|
29844
29875
|
* @return {?}
|
|
29845
29876
|
*/
|
|
@@ -29855,7 +29886,7 @@ const ɵ0$6 = /**
|
|
|
29855
29886
|
* \@publicApi
|
|
29856
29887
|
* @type {?}
|
|
29857
29888
|
*/
|
|
29858
|
-
const Directive = makeDecorator('Directive', (ɵ0$
|
|
29889
|
+
const Directive = makeDecorator('Directive', (ɵ0$9), undefined, undefined, (ɵ1$2));
|
|
29859
29890
|
// WARNING: interface has both a type and a value, skipping emit
|
|
29860
29891
|
const ɵ2$2 = /**
|
|
29861
29892
|
* @param {?=} c
|
|
@@ -29993,7 +30024,7 @@ const SWITCH_COMPILE_PIPE = SWITCH_COMPILE_PIPE__PRE_R3__;
|
|
|
29993
30024
|
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
29994
30025
|
*/
|
|
29995
30026
|
// WARNING: interface has both a type and a value, skipping emit
|
|
29996
|
-
const ɵ0$
|
|
30027
|
+
const ɵ0$a = /**
|
|
29997
30028
|
* @param {?} ngModule
|
|
29998
30029
|
* @return {?}
|
|
29999
30030
|
*/
|
|
@@ -30017,7 +30048,7 @@ const ɵ0$7 = /**
|
|
|
30017
30048
|
* \@publicApi
|
|
30018
30049
|
* @type {?}
|
|
30019
30050
|
*/
|
|
30020
|
-
const NgModule = makeDecorator('NgModule', (ɵ0$
|
|
30051
|
+
const NgModule = makeDecorator('NgModule', (ɵ0$a), undefined, undefined, (ɵ1$3));
|
|
30021
30052
|
/**
|
|
30022
30053
|
* @param {?} moduleType
|
|
30023
30054
|
* @param {?} metadata
|
|
@@ -30490,6 +30521,7 @@ function noopScope(arg0, arg1) {
|
|
|
30490
30521
|
* an exception is expected during normal execution while profiling.
|
|
30491
30522
|
*
|
|
30492
30523
|
* \@publicApi
|
|
30524
|
+
* @deprecated the Web Tracing Framework is no longer supported in Angular
|
|
30493
30525
|
* @type {?}
|
|
30494
30526
|
*/
|
|
30495
30527
|
const wtfCreateScope = wtfEnabled ? createScope : (/**
|
|
@@ -30506,6 +30538,7 @@ const wtfCreateScope = wtfEnabled ? createScope : (/**
|
|
|
30506
30538
|
*
|
|
30507
30539
|
* Returns the `returnValue for easy chaining.
|
|
30508
30540
|
* \@publicApi
|
|
30541
|
+
* @deprecated the Web Tracing Framework is no longer supported in Angular
|
|
30509
30542
|
* @type {?}
|
|
30510
30543
|
*/
|
|
30511
30544
|
const wtfLeave = wtfEnabled ? leave : (/**
|
|
@@ -30526,6 +30559,7 @@ const wtfLeave = wtfEnabled ? leave : (/**
|
|
|
30526
30559
|
* });
|
|
30527
30560
|
* }
|
|
30528
30561
|
* \@publicApi
|
|
30562
|
+
* @deprecated the Web Tracing Framework is no longer supported in Angular
|
|
30529
30563
|
* @type {?}
|
|
30530
30564
|
*/
|
|
30531
30565
|
const wtfStartTimeRange = wtfEnabled ? startTimeRange : (/**
|
|
@@ -30539,6 +30573,7 @@ const wtfStartTimeRange = wtfEnabled ? startTimeRange : (/**
|
|
|
30539
30573
|
* [range] is the return value from [wtfStartTimeRange] Async ranges only work if WTF has been
|
|
30540
30574
|
* enabled.
|
|
30541
30575
|
* \@publicApi
|
|
30576
|
+
* @deprecated the Web Tracing Framework is no longer supported in Angular
|
|
30542
30577
|
* @type {?}
|
|
30543
30578
|
*/
|
|
30544
30579
|
const wtfEndTimeRange = wtfEnabled ? endTimeRange : (/**
|
|
@@ -30554,7 +30589,7 @@ const wtfEndTimeRange = wtfEnabled ? endTimeRange : (/**
|
|
|
30554
30589
|
* Use of this source code is governed by an MIT-style license that can be
|
|
30555
30590
|
* found in the LICENSE file at https://angular.io/license
|
|
30556
30591
|
*/
|
|
30557
|
-
const promise = Promise.resolve(0);
|
|
30592
|
+
const promise = (() => Promise.resolve(0))();
|
|
30558
30593
|
function scheduleMicroTask(fn) {
|
|
30559
30594
|
if (typeof Zone === 'undefined') {
|
|
30560
30595
|
// use promise to schedule microTask instead of use Zone
|