@angular/core 7.2.0-rc.0 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/bundles/core-testing.umd.js +190 -128
  2. package/bundles/core-testing.umd.js.map +1 -1
  3. package/bundles/core-testing.umd.min.js +10 -10
  4. package/bundles/core-testing.umd.min.js.map +1 -1
  5. package/bundles/core.umd.js +1772 -1324
  6. package/bundles/core.umd.js.map +1 -1
  7. package/bundles/core.umd.min.js +110 -124
  8. package/bundles/core.umd.min.js.map +1 -1
  9. package/core.metadata.json +1 -1
  10. package/esm2015/index.js +2 -2
  11. package/esm2015/public_api.js +2 -2
  12. package/esm2015/src/change_detection/constants.js +3 -3
  13. package/esm2015/src/core.js +2 -2
  14. package/esm2015/src/core_render3_private_export.js +2 -2
  15. package/esm2015/src/debug/debug_node.js +6 -6
  16. package/esm2015/src/render3/bindings.js +3 -3
  17. package/esm2015/src/render3/component.js +8 -6
  18. package/esm2015/src/render3/component_ref.js +5 -5
  19. package/esm2015/src/render3/context_discovery.js +2 -2
  20. package/esm2015/src/render3/definition.js +3 -10
  21. package/esm2015/src/render3/di.js +107 -93
  22. package/esm2015/src/render3/discovery_utils.js +5 -5
  23. package/esm2015/src/render3/empty.js +28 -0
  24. package/esm2015/src/render3/features/inherit_definition_feature.js +3 -3
  25. package/esm2015/src/render3/hooks.js +14 -12
  26. package/esm2015/src/render3/i18n.js +3 -3
  27. package/esm2015/src/render3/index.js +2 -2
  28. package/esm2015/src/render3/instructions.js +319 -370
  29. package/esm2015/src/render3/interfaces/container.js +10 -1
  30. package/esm2015/src/render3/interfaces/definition.js +1 -6
  31. package/esm2015/src/render3/interfaces/injector.js +1 -2
  32. package/esm2015/src/render3/interfaces/node.js +37 -2
  33. package/esm2015/src/render3/interfaces/styling.js +304 -113
  34. package/esm2015/src/render3/interfaces/view.js +15 -7
  35. package/esm2015/src/render3/jit/compiler_facade_interface.js +3 -1
  36. package/esm2015/src/render3/jit/directive.js +6 -7
  37. package/esm2015/src/render3/jit/environment.js +3 -1
  38. package/esm2015/src/render3/jit/module.js +11 -9
  39. package/esm2015/src/render3/node_manipulation.js +5 -22
  40. package/esm2015/src/render3/node_selector_matcher.js +2 -2
  41. package/esm2015/src/render3/pipe.js +2 -2
  42. package/esm2015/src/render3/pure_function.js +3 -3
  43. package/esm2015/src/render3/query.js +3 -3
  44. package/esm2015/src/render3/state.js +14 -20
  45. package/esm2015/src/render3/styling/class_and_style_bindings.js +893 -213
  46. package/esm2015/src/render3/styling/util.js +37 -14
  47. package/esm2015/src/render3/util.js +21 -5
  48. package/esm2015/src/render3/view_engine_compatibility.js +5 -6
  49. package/esm2015/src/render3/view_ref.js +6 -16
  50. package/esm2015/src/sanitization/inert_body.js +4 -4
  51. package/esm2015/src/version.js +1 -1
  52. package/esm2015/testing/src/r3_test_bed.js +234 -152
  53. package/esm2015/testing/src/resolvers.js +12 -5
  54. package/esm2015/testing/src/testing_internal.js +2 -2
  55. package/esm5/src/change_detection/constants.js +3 -3
  56. package/esm5/src/core_render3_private_export.js +2 -2
  57. package/esm5/src/debug/debug_node.js +6 -6
  58. package/esm5/src/render3/bindings.js +3 -3
  59. package/esm5/src/render3/component.js +8 -6
  60. package/esm5/src/render3/component_ref.js +5 -5
  61. package/esm5/src/render3/context_discovery.js +2 -2
  62. package/esm5/src/render3/definition.js +3 -8
  63. package/esm5/src/render3/di.js +94 -84
  64. package/esm5/src/render3/discovery_utils.js +5 -5
  65. package/esm5/src/render3/empty.js +22 -0
  66. package/esm5/src/render3/features/inherit_definition_feature.js +3 -3
  67. package/esm5/src/render3/hooks.js +11 -9
  68. package/esm5/src/render3/i18n.js +3 -3
  69. package/esm5/src/render3/index.js +2 -2
  70. package/esm5/src/render3/instructions.js +282 -282
  71. package/esm5/src/render3/interfaces/container.js +9 -1
  72. package/esm5/src/render3/interfaces/definition.js +1 -1
  73. package/esm5/src/render3/interfaces/injector.js +1 -1
  74. package/esm5/src/render3/interfaces/node.js +1 -1
  75. package/esm5/src/render3/interfaces/styling.js +1 -1
  76. package/esm5/src/render3/interfaces/view.js +1 -1
  77. package/esm5/src/render3/jit/compiler_facade_interface.js +1 -1
  78. package/esm5/src/render3/jit/directive.js +6 -6
  79. package/esm5/src/render3/jit/environment.js +3 -1
  80. package/esm5/src/render3/jit/module.js +10 -8
  81. package/esm5/src/render3/node_manipulation.js +5 -21
  82. package/esm5/src/render3/node_selector_matcher.js +2 -2
  83. package/esm5/src/render3/pipe.js +2 -2
  84. package/esm5/src/render3/pure_function.js +3 -3
  85. package/esm5/src/render3/query.js +3 -3
  86. package/esm5/src/render3/state.js +14 -19
  87. package/esm5/src/render3/styling/class_and_style_bindings.js +681 -210
  88. package/esm5/src/render3/styling/util.js +26 -13
  89. package/esm5/src/render3/util.js +20 -5
  90. package/esm5/src/render3/view_engine_compatibility.js +5 -6
  91. package/esm5/src/render3/view_ref.js +6 -15
  92. package/esm5/src/sanitization/inert_body.js +4 -4
  93. package/esm5/src/version.js +1 -1
  94. package/esm5/testing/src/r3_test_bed.js +174 -127
  95. package/esm5/testing/src/resolvers.js +11 -6
  96. package/esm5/testing/src/testing_internal.js +2 -2
  97. package/fesm2015/core.js +2304 -1731
  98. package/fesm2015/core.js.map +1 -1
  99. package/fesm2015/testing.js +223 -150
  100. package/fesm2015/testing.js.map +1 -1
  101. package/fesm5/core.js +1777 -1331
  102. package/fesm5/core.js.map +1 -1
  103. package/fesm5/testing.js +181 -130
  104. package/fesm5/testing.js.map +1 -1
  105. package/package.json +1 -1
  106. package/src/change_detection/constants.d.ts +2 -2
  107. package/src/core_render3_private_export.d.ts +1 -1
  108. package/src/render3/definition.d.ts +2 -4
  109. package/src/render3/di.d.ts +4 -3
  110. package/src/render3/empty.d.ts +16 -0
  111. package/src/render3/hooks.d.ts +3 -3
  112. package/src/render3/index.d.ts +1 -1
  113. package/src/render3/instructions.d.ts +117 -72
  114. package/src/render3/interfaces/container.d.ts +1 -0
  115. package/src/render3/interfaces/definition.d.ts +0 -3
  116. package/src/render3/interfaces/injector.d.ts +0 -1
  117. package/src/render3/interfaces/node.d.ts +37 -2
  118. package/src/render3/interfaces/styling.d.ts +392 -117
  119. package/src/render3/interfaces/view.d.ts +14 -6
  120. package/src/render3/jit/compiler_facade_interface.d.ts +2 -0
  121. package/src/render3/node_manipulation.d.ts +0 -7
  122. package/src/render3/state.d.ts +3 -4
  123. package/src/render3/styling/class_and_style_bindings.d.ts +114 -43
  124. package/src/render3/styling/util.d.ts +5 -2
  125. package/src/render3/util.d.ts +7 -0
  126. package/testing/src/r3_test_bed.d.ts +15 -0
  127. package/testing/testing.metadata.json +1 -1
  128. package/testing.d.ts +1 -1
@@ -77,7 +77,8 @@ export declare function setIsParent(value: boolean): void;
77
77
  export declare function getOrCreateCurrentQueries(QueryType: {
78
78
  new (parent: null, shallow: null, deep: null): LQueries;
79
79
  }): LQueries;
80
- export declare function getCreationMode(): boolean;
80
+ /** Checks whether a given view is in creation mode */
81
+ export declare function isCreationMode(view?: LView): boolean;
81
82
  export declare function getContextLView(): LView;
82
83
  export declare function getCheckNoChangesMode(): boolean;
83
84
  export declare function setCheckNoChangesMode(mode: boolean): void;
@@ -108,7 +109,5 @@ export declare function resetComponentState(): void;
108
109
  * the direction of traversal (up or down the view tree) a bit clearer.
109
110
  *
110
111
  * @param newView New state to become active
111
- * @param creationOnly An optional boolean to indicate that the view was processed in creation mode
112
- * only, i.e. the first update will be done later. Only possible for dynamically created views.
113
112
  */
114
- export declare function leaveView(newView: LView, creationOnly?: boolean): void;
113
+ export declare function leaveView(newView: LView): void;
@@ -1,44 +1,68 @@
1
1
  /**
2
- * @license
3
- * Copyright Google Inc. All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
2
+ * @license
3
+ * Copyright Google Inc. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
8
  import { StyleSanitizeFn } from '../../sanitization/style_sanitizer';
9
- import { InitialStylingFlags } from '../interfaces/definition';
9
+ import { TAttributes } from '../interfaces/node';
10
10
  import { BindingStore, BindingType, Player, PlayerBuilder, PlayerFactory } from '../interfaces/player';
11
- import { Renderer3 } from '../interfaces/renderer';
11
+ import { RElement, Renderer3 } from '../interfaces/renderer';
12
12
  import { StylingContext } from '../interfaces/styling';
13
13
  import { LView, RootContext } from '../interfaces/view';
14
14
  import { NO_CHANGE } from '../tokens';
15
15
  import { BoundPlayerFactory } from './player_factory';
16
16
  /**
17
- * Creates a styling context template where styling information is stored.
18
- * Any styles that are later referenced using `updateStyleProp` must be
19
- * passed in within this function. Initial values for those styles are to
20
- * be declared after all initial style properties are declared (this change in
21
- * mode between declarations and initial styles is made possible using a special
22
- * enum value found in `definition.ts`).
17
+ * This file includes the code to power all styling-binding operations in Angular.
23
18
  *
24
- * @param initialStyleDeclarations a list of style declarations and initial style values
25
- * that are used later within the styling context.
19
+ * These include:
20
+ * [style]="myStyleObj"
21
+ * [class]="myClassObj"
22
+ * [style.prop]="myPropValue"
23
+ * [class.name]="myClassValue"
26
24
  *
27
- * -> ['width', 'height', SPECIAL_ENUM_VAL, 'width', '100px']
28
- * This implies that `width` and `height` will be later styled and that the `width`
29
- * property has an initial value of `100px`.
25
+ * There are many different ways in which these functions below are called. Please see
26
+ * `interfaces/styles.ts` to get a better idea of how the styling algorithm works.
27
+ */
28
+ /**
29
+ * Creates a new StylingContext an fills it with the provided static styling attribute values.
30
+ */
31
+ export declare function initializeStaticContext(attrs: TAttributes): StylingContext;
32
+ /**
33
+ * Designed to update an existing styling context with new static styling
34
+ * data (classes and styles).
35
+ *
36
+ * @param context the existing styling context
37
+ * @param attrs an array of new static styling attributes that will be
38
+ * assigned to the context
39
+ * @param directive the directive instance with which static data is associated with.
40
+ */
41
+ export declare function patchContextWithStaticAttrs(context: StylingContext, attrs: TAttributes, directive: any): void;
42
+ /**
43
+ * Runs through the initial styling data present in the context and renders
44
+ * them via the renderer on the element.
45
+ */
46
+ export declare function renderInitialStylesAndClasses(element: RElement, context: StylingContext, renderer: Renderer3): void;
47
+ export declare function allowNewBindingsForStylingContext(context: StylingContext): boolean;
48
+ /**
49
+ * Adds in new binding values to a styling context.
30
50
  *
31
- * @param initialClassDeclarations a list of class declarations and initial class values
32
- * that are used later within the styling context.
51
+ * If a directive value is provided then all provided class/style binding names will
52
+ * reference the provided directive.
33
53
  *
34
- * -> ['foo', 'bar', SPECIAL_ENUM_VAL, 'foo', true]
35
- * This implies that `foo` and `bar` will be later styled and that the `foo`
36
- * class will be applied to the element as an initial class since it's true
54
+ * @param context the existing styling context
55
+ * @param directiveRef the directive that the new bindings will reference
56
+ * @param classBindingNames an array of class binding names that will be added to the context
57
+ * @param styleBindingNames an array of style binding names that will be added to the context
58
+ * @param styleSanitizer an optional sanitizer that handle all sanitization on for each of
59
+ * the bindings added to the context. Note that if a directive is provided then the sanitizer
60
+ * instance will only be active if and when the directive updates the bindings that it owns.
37
61
  */
38
- export declare function createStylingContextTemplate(initialClassDeclarations?: (string | boolean | InitialStylingFlags)[] | null, initialStyleDeclarations?: (string | boolean | InitialStylingFlags)[] | null, styleSanitizer?: StyleSanitizeFn | null, onlyProcessSingleClasses?: boolean): StylingContext;
62
+ export declare function updateContextWithBindings(context: StylingContext, directiveRef: any | null, classBindingNames?: string[] | null, styleBindingNames?: string[] | null, styleSanitizer?: StyleSanitizeFn | null, onlyProcessSingleClasses?: boolean): void;
39
63
  /**
40
64
  * Sets and resolves all `multi` styling on an `StylingContext` so that they can be
41
- * applied to the element once `renderStyleAndClassBindings` is called.
65
+ * applied to the element once `renderStyling` is called.
42
66
  *
43
67
  * All missing styles/class (any values that are not provided in the new `styles`
44
68
  * or `classes` params) will resolve to `null` within their respective positions
@@ -57,10 +81,20 @@ export declare function updateStylingMap(context: StylingContext, classesInput:
57
81
  [key: string]: any;
58
82
  } | BoundPlayerFactory<null | {
59
83
  [key: string]: any;
60
- }> | NO_CHANGE | null): void;
84
+ }> | NO_CHANGE | null, directiveRef?: any): void;
61
85
  /**
62
- * Sets and resolves a single styling property/value on the provided `StylingContext` so
63
- * that they can be applied to the element once `renderStyleAndClassBindings` is called.
86
+ * This method will toggle the referenced CSS class (by the provided index)
87
+ * within the given context.
88
+ *
89
+ * @param context The styling context that will be updated with the
90
+ * newly provided class value.
91
+ * @param offset The index of the CSS class which is being updated.
92
+ * @param addOrRemove Whether or not to add or remove the CSS class
93
+ */
94
+ export declare function updateClassProp(context: StylingContext, offset: number, addOrRemove: boolean | BoundPlayerFactory<boolean>, directiveRef?: any): void;
95
+ /**
96
+ * Sets and resolves a single style value on the provided `StylingContext` so
97
+ * that they can be applied to the element once `renderStyling` is called.
64
98
  *
65
99
  * Note that prop-level styling values are considered higher priority than any styling that
66
100
  * has been applied using `updateStylingMap`, therefore, when styling values are rendered
@@ -69,20 +103,14 @@ export declare function updateStylingMap(context: StylingContext, classesInput:
69
103
  *
70
104
  * @param context The styling context that will be updated with the
71
105
  * newly provided style value.
72
- * @param index The index of the property which is being updated.
106
+ * @param offset The index of the property which is being updated.
73
107
  * @param value The CSS style value that will be assigned
108
+ * @param directiveRef an optional reference to the directive responsible
109
+ * for this binding change. If present then style binding will only
110
+ * actualize if the directive has ownership over this binding
111
+ * (see styling.ts#directives for more information about the algorithm).
74
112
  */
75
- export declare function updateStyleProp(context: StylingContext, index: number, input: string | boolean | null | BoundPlayerFactory<string | boolean | null>): void;
76
- /**
77
- * This method will toggle the referenced CSS class (by the provided index)
78
- * within the given context.
79
- *
80
- * @param context The styling context that will be updated with the
81
- * newly provided class value.
82
- * @param index The index of the CSS class which is being updated.
83
- * @param addOrRemove Whether or not to add or remove the CSS class
84
- */
85
- export declare function updateClassProp(context: StylingContext, index: number, addOrRemove: boolean | BoundPlayerFactory<boolean>): void;
113
+ export declare function updateStyleProp(context: StylingContext, offset: number, input: string | boolean | null | BoundPlayerFactory<string | boolean | null>, directiveRef?: any): void;
86
114
  /**
87
115
  * Renders all queued styling using a renderer onto the given element.
88
116
  *
@@ -100,9 +128,12 @@ export declare function updateClassProp(context: StylingContext, index: number,
100
128
  * to this key/value map instead of being renderered via the renderer.
101
129
  * @param stylesStore if provided, the updated style values will be applied
102
130
  * to this key/value map instead of being renderered via the renderer.
131
+ * @param directiveRef an optional directive that will be used to target which
132
+ * styling values are rendered. If left empty, only the bindings that are
133
+ * registered on the template will be rendered.
103
134
  * @returns number the total amount of players that got queued for animation (if any)
104
135
  */
105
- export declare function renderStyleAndClassBindings(context: StylingContext, renderer: Renderer3, rootOrView: RootContext | LView, isFirstRender: boolean, classesStore?: BindingStore | null, stylesStore?: BindingStore | null): number;
136
+ export declare function renderStyling(context: StylingContext, renderer: Renderer3, rootOrView: RootContext | LView, isFirstRender: boolean, classesStore?: BindingStore | null, stylesStore?: BindingStore | null, directiveRef?: any): number;
106
137
  /**
107
138
  * This function renders a given CSS prop/value entry using the
108
139
  * provided renderer. If a `store` value is provided then
@@ -116,7 +147,8 @@ export declare function renderStyleAndClassBindings(context: StylingContext, ren
116
147
  * @param store an optional key/value map that will be used as a context to render styles on
117
148
  */
118
149
  export declare function setStyle(native: any, prop: string, value: string | null, renderer: Renderer3, sanitizer: StyleSanitizeFn | null, store?: BindingStore | null, playerBuilder?: ClassAndStylePlayerBuilder<any> | null): void;
119
- export declare function isClassBased(context: StylingContext, index: number): boolean;
150
+ export declare function isClassBasedValue(context: StylingContext, index: number): boolean;
151
+ export declare function directiveOwnerPointers(directiveIndex: number, playerIndex: number): number;
120
152
  export declare function getValue(context: StylingContext, index: number): string | boolean | null;
121
153
  export declare function getProp(context: StylingContext, index: number): string;
122
154
  export declare function isContextDirty(context: StylingContext): boolean;
@@ -133,3 +165,42 @@ export declare class ClassAndStylePlayerBuilder<T> implements PlayerBuilder {
133
165
  setValue(prop: string, value: any): void;
134
166
  buildPlayer(currentPlayer: Player | null, isFirstRender: boolean): Player | undefined | null;
135
167
  }
168
+ /**
169
+ * Used to provide a summary of the state of the styling context.
170
+ *
171
+ * This is an internal interface that is only used inside of test tooling to
172
+ * help summarize what's going on within the styling context. None of this code
173
+ * is designed to be exported publicly and will, therefore, be tree-shaken away
174
+ * during runtime.
175
+ */
176
+ export interface LogSummary {
177
+ name: string;
178
+ staticIndex: number;
179
+ dynamicIndex: number;
180
+ value: number;
181
+ flags: {
182
+ dirty: boolean;
183
+ class: boolean;
184
+ sanitize: boolean;
185
+ playerBuildersDirty: boolean;
186
+ onlyProcessSingleClasses: boolean;
187
+ bindingAllocationLocked: boolean;
188
+ };
189
+ }
190
+ /**
191
+ * This function is not designed to be used in production.
192
+ * It is a utility tool for debugging and testing and it
193
+ * will automatically be tree-shaken away during production.
194
+ */
195
+ export declare function generateConfigSummary(source: number): LogSummary;
196
+ export declare function generateConfigSummary(source: StylingContext): LogSummary;
197
+ export declare function generateConfigSummary(source: StylingContext, index: number): LogSummary;
198
+ export declare function getDirectiveIndexFromEntry(context: StylingContext, index: number): number;
199
+ export declare function compareLogSummaries(a: LogSummary, b: LogSummary): string[];
200
+ /**
201
+ * This function is only designed to be called for `[class]` bindings when
202
+ * `[ngClass]` (or something that uses `class` as an input) is present. Once
203
+ * directive host bindings fully work for `[class]` and `[style]` inputs
204
+ * then this can be deleted.
205
+ */
206
+ export declare function getInitialClassNameValue(context: StylingContext): string;
@@ -8,11 +8,12 @@
8
8
  import '../ng_dev_mode';
9
9
  import { StyleSanitizeFn } from '../../sanitization/style_sanitizer';
10
10
  import { LContext } from '../interfaces/context';
11
+ import { TAttributes, TNode } from '../interfaces/node';
11
12
  import { Player, PlayerContext } from '../interfaces/player';
12
13
  import { RElement } from '../interfaces/renderer';
13
- import { InitialStyles, StylingContext } from '../interfaces/styling';
14
+ import { InitialStylingValues, StylingContext } from '../interfaces/styling';
14
15
  import { LView, RootContext } from '../interfaces/view';
15
- export declare function createEmptyStylingContext(element?: RElement | null, sanitizer?: StyleSanitizeFn | null, initialStylingValues?: InitialStyles): StylingContext;
16
+ export declare function createEmptyStylingContext(element?: RElement | null, sanitizer?: StyleSanitizeFn | null, initialStyles?: InitialStylingValues | null, initialClasses?: InitialStylingValues | null): StylingContext;
16
17
  /**
17
18
  * Used clone a copy of a pre-computed template of a styling context.
18
19
  *
@@ -40,3 +41,5 @@ export declare function getOrCreatePlayerContext(target: {}, context?: LContext
40
41
  export declare function getPlayerContext(stylingContext: StylingContext): PlayerContext | null;
41
42
  export declare function allocPlayerContext(data: StylingContext): PlayerContext;
42
43
  export declare function throwInvalidRefError(): void;
44
+ export declare function hasStyling(attrs: TAttributes): boolean;
45
+ export declare function hasClassInput(tNode: TNode): boolean;
@@ -96,3 +96,10 @@ export declare const defaultScheduler: any;
96
96
  * @param arr The array to which you want to add the items
97
97
  */
98
98
  export declare function addAllToArray(items: any[], arr: any[]): void;
99
+ /**
100
+ * Given a current view, finds the nearest component's host (LElement).
101
+ *
102
+ * @param lView LView for which we want a host element node
103
+ * @returns The host node
104
+ */
105
+ export declare function findComponentView(lView: LView): LView;
@@ -99,12 +99,15 @@ export declare class TestBedRender3 implements Injector, TestBed {
99
99
  private _pipeOverrides;
100
100
  private _providerOverrides;
101
101
  private _rootProviderOverrides;
102
+ private _providerOverridesByToken;
103
+ private _templateOverrides;
102
104
  private _providers;
103
105
  private _declarations;
104
106
  private _imports;
105
107
  private _schemas;
106
108
  private _activeFixtures;
107
109
  private _moduleRef;
110
+ private _testModuleType;
108
111
  private _instantiated;
109
112
  /**
110
113
  * Initialize the environment for testing with a compiler factory, a PlatformRef, and an
@@ -161,8 +164,20 @@ export declare class TestBedRender3 implements Injector, TestBed {
161
164
  }): void;
162
165
  createComponent<T>(type: Type<T>): ComponentFixture<T>;
163
166
  private _initIfNeeded;
167
+ private _getProviderOverrides;
164
168
  private _getResolvers;
165
169
  private _assertNotInstantiated;
166
170
  private _createTestModule;
171
+ private _getMetaWithOverrides;
172
+ private _compileNgModule;
173
+ /**
174
+ * Compute the pair of transitive scopes (compilation scope and exported scope) for a given
175
+ * module.
176
+ *
177
+ * This operation is memoized and the result is cached on the module's definition. It can be
178
+ * called on modules with components that have not fully compiled yet, but the result should not
179
+ * be used until they have.
180
+ */
181
+ private _transitiveScopesFor;
167
182
  }
168
183
  export declare function _getTestBedRender3(): TestBedRender3;
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"ɵangular_packages_core_testing_testing_a":{"__symbolic":"class","members":{"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_createCompilerAndModule":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"overrideProviderImpl":[{"__symbolic":"method"}],"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"getTestBed"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":241,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}}}},"async":{"__symbolic":"function"},"ComponentFixture":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ComponentRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":53,"character":40,"context":{"typeName":"T"},"module":"./src/component_fixture"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":53,"character":59},{"__symbolic":"reference","name":"boolean"}]}],"_tick":[{"__symbolic":"method"}],"detectChanges":[{"__symbolic":"method"}],"checkNoChanges":[{"__symbolic":"method"}],"autoDetectChanges":[{"__symbolic":"method"}],"isStable":[{"__symbolic":"method"}],"whenStable":[{"__symbolic":"method"}],"_getRenderer":[{"__symbolic":"method"}],"whenRenderingDone":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}]}},"resetFakeAsyncZone":{"__symbolic":"function"},"fakeAsync":{"__symbolic":"function"},"tick":{"__symbolic":"function"},"flush":{"__symbolic":"function"},"discardPeriodicTasks":{"__symbolic":"function"},"flushMicrotasks":{"__symbolic":"function"},"TestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":633,"character":4},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"},"elseExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_a"}},"getTestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":642,"character":41},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"},"elseExpression":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"inject":{"__symbolic":"function"},"InjectSetupWrapper":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":697,"character":34,"module":"./src/test_bed"}]}],"_addModule":[{"__symbolic":"method"}],"inject":[{"__symbolic":"method"}]}},"withModule":{"__symbolic":"function"},"TestComponentRenderer":{"__symbolic":"class","members":{"insertRootElement":[{"__symbolic":"method"}]}},"ComponentFixtureAutoDetect":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":27,"character":8},"arguments":["ComponentFixtureAutoDetect"]},"ComponentFixtureNoNgZone":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":32,"character":44},"arguments":["ComponentFixtureNoNgZone"]},"TestModuleMetadata":{"__symbolic":"interface"},"TestBedStatic":{"__symbolic":"interface"},"MetadataOverride":{"__symbolic":"interface"},"ɵMetadataOverrider":{"__symbolic":"class","members":{"overrideMetadata":[{"__symbolic":"method"}]}},"ɵTestingCompiler":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":22,"character":37},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":21,"character":1}}],"members":{"overrideModule":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"loadAotSummaries":[{"__symbolic":"method"}],"getComponentFactory":[{"__symbolic":"method"}],"getComponentFromError":[{"__symbolic":"method"}]}},"ɵTestingCompilerFactory":{"__symbolic":"class","members":{"createTestingCompiler":[{"__symbolic":"method"}]}},"ɵangular_packages_core_testing_testing_b":{"__symbolic":"class","members":{"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_getResolvers":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"_createTestModule":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":151,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"get"},"arguments":[{"__symbolic":"reference","name":"token"},{"__symbolic":"reference","name":"notFoundValue"}]}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"createComponent"},"arguments":[{"__symbolic":"reference","name":"component"}]}}}},"ɵangular_packages_core_testing_testing_c":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"binop","operator":"=","left":{"__symbolic":"error","message":"Reference to a local symbol","line":452,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":452,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"}}}}}},"origins":{"ɵangular_packages_core_testing_testing_a":"./src/test_bed","async":"./src/async","ComponentFixture":"./src/component_fixture","resetFakeAsyncZone":"./src/fake_async","fakeAsync":"./src/fake_async","tick":"./src/fake_async","flush":"./src/fake_async","discardPeriodicTasks":"./src/fake_async","flushMicrotasks":"./src/fake_async","TestBed":"./src/test_bed","getTestBed":"./src/test_bed","inject":"./src/test_bed","InjectSetupWrapper":"./src/test_bed","withModule":"./src/test_bed","TestComponentRenderer":"./src/test_bed_common","ComponentFixtureAutoDetect":"./src/test_bed_common","ComponentFixtureNoNgZone":"./src/test_bed_common","TestModuleMetadata":"./src/test_bed_common","TestBedStatic":"./src/test_bed_common","__core_private_testing_placeholder__":"./src/before_each","MetadataOverride":"./src/metadata_override","ɵMetadataOverrider":"./src/metadata_overrider","ɵTestingCompiler":"./src/test_compiler","ɵTestingCompilerFactory":"./src/test_compiler","ɵangular_packages_core_testing_testing_b":"./src/r3_test_bed","ɵangular_packages_core_testing_testing_c":"./src/r3_test_bed"},"importAs":"@angular/core/testing"}
1
+ {"__symbolic":"module","version":4,"metadata":{"ɵangular_packages_core_testing_testing_a":{"__symbolic":"class","members":{"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_createCompilerAndModule":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"overrideProviderImpl":[{"__symbolic":"method"}],"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"getTestBed"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":241,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}}}},"async":{"__symbolic":"function"},"ComponentFixture":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ComponentRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":53,"character":40,"context":{"typeName":"T"},"module":"./src/component_fixture"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":53,"character":59},{"__symbolic":"reference","name":"boolean"}]}],"_tick":[{"__symbolic":"method"}],"detectChanges":[{"__symbolic":"method"}],"checkNoChanges":[{"__symbolic":"method"}],"autoDetectChanges":[{"__symbolic":"method"}],"isStable":[{"__symbolic":"method"}],"whenStable":[{"__symbolic":"method"}],"_getRenderer":[{"__symbolic":"method"}],"whenRenderingDone":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}]}},"resetFakeAsyncZone":{"__symbolic":"function"},"fakeAsync":{"__symbolic":"function"},"tick":{"__symbolic":"function"},"flush":{"__symbolic":"function"},"discardPeriodicTasks":{"__symbolic":"function"},"flushMicrotasks":{"__symbolic":"function"},"TestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":633,"character":4},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"},"elseExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_a"}},"getTestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":642,"character":41},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"},"elseExpression":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"inject":{"__symbolic":"function"},"InjectSetupWrapper":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":697,"character":34,"module":"./src/test_bed"}]}],"_addModule":[{"__symbolic":"method"}],"inject":[{"__symbolic":"method"}]}},"withModule":{"__symbolic":"function"},"TestComponentRenderer":{"__symbolic":"class","members":{"insertRootElement":[{"__symbolic":"method"}]}},"ComponentFixtureAutoDetect":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":27,"character":8},"arguments":["ComponentFixtureAutoDetect"]},"ComponentFixtureNoNgZone":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":32,"character":44},"arguments":["ComponentFixtureNoNgZone"]},"TestModuleMetadata":{"__symbolic":"interface"},"TestBedStatic":{"__symbolic":"interface"},"MetadataOverride":{"__symbolic":"interface"},"ɵMetadataOverrider":{"__symbolic":"class","members":{"overrideMetadata":[{"__symbolic":"method"}]}},"ɵTestingCompiler":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":22,"character":37},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":21,"character":1}}],"members":{"overrideModule":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"loadAotSummaries":[{"__symbolic":"method"}],"getComponentFactory":[{"__symbolic":"method"}],"getComponentFromError":[{"__symbolic":"method"}]}},"ɵTestingCompilerFactory":{"__symbolic":"class","members":{"createTestingCompiler":[{"__symbolic":"method"}]}},"ɵangular_packages_core_testing_testing_b":{"__symbolic":"class","members":{"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_getProviderOverrides":[{"__symbolic":"method"}],"_getResolvers":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"_createTestModule":[{"__symbolic":"method"}],"_getMetaWithOverrides":[{"__symbolic":"method"}],"_compileNgModule":[{"__symbolic":"method"}],"_transitiveScopesFor":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":165,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"get"},"arguments":[{"__symbolic":"reference","name":"token"},{"__symbolic":"reference","name":"notFoundValue"}]}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"createComponent"},"arguments":[{"__symbolic":"reference","name":"component"}]}}}},"ɵangular_packages_core_testing_testing_c":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"binop","operator":"=","left":{"__symbolic":"error","message":"Reference to a local symbol","line":640,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":640,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"}}}}}},"origins":{"ɵangular_packages_core_testing_testing_a":"./src/test_bed","async":"./src/async","ComponentFixture":"./src/component_fixture","resetFakeAsyncZone":"./src/fake_async","fakeAsync":"./src/fake_async","tick":"./src/fake_async","flush":"./src/fake_async","discardPeriodicTasks":"./src/fake_async","flushMicrotasks":"./src/fake_async","TestBed":"./src/test_bed","getTestBed":"./src/test_bed","inject":"./src/test_bed","InjectSetupWrapper":"./src/test_bed","withModule":"./src/test_bed","TestComponentRenderer":"./src/test_bed_common","ComponentFixtureAutoDetect":"./src/test_bed_common","ComponentFixtureNoNgZone":"./src/test_bed_common","TestModuleMetadata":"./src/test_bed_common","TestBedStatic":"./src/test_bed_common","__core_private_testing_placeholder__":"./src/before_each","MetadataOverride":"./src/metadata_override","ɵMetadataOverrider":"./src/metadata_overrider","ɵTestingCompiler":"./src/test_compiler","ɵTestingCompilerFactory":"./src/test_compiler","ɵangular_packages_core_testing_testing_b":"./src/r3_test_bed","ɵangular_packages_core_testing_testing_c":"./src/r3_test_bed"},"importAs":"@angular/core/testing"}
package/testing.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v7.2.0-rc.0
2
+ * @license Angular v7.2.0
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */