This introduces the `BrowserModule` to be used for long form
bootstrap and offline compile bootstrap:
```
@AppModule({
  modules: [BrowserModule],
  precompile: [MainComponent],
  providers: […], // additional providers
  directives: […], // additional platform directives
  pipes: […] // additional platform pipes
})
class MyModule {
  constructor(appRef: ApplicationRef) {
    appRef.bootstrap(MainComponent);
  }
}
// offline compile
import {bootstrapModuleFactory} from ‘@angular/platform-browser’;
bootstrapModuleFactory(MyModuleNgFactory);
// runtime compile long form
import {bootstrapModule} from ‘@angular/platform-browser-dynamic’;
bootstrapModule(MyModule);
```
The short form, `bootstrap(...)`, can now creates a module on the fly,
given `directives`, `pipes, `providers`, `precompile` and `modules`
properties.
Related changes:
- make `SanitizationService`, `SecurityContext` public in `@angular/core` so that the offline compiler can resolve the token
- move `AnimationDriver` to `platform-browser` and make it
  public so that the offline compiler can resolve the token
BREAKING CHANGES:
- short form bootstrap does no longer allow
  to inject compiler internals (i.e. everything 
  from `@angular/compiler). Inject `Compiler` instead.
  To provide custom providers for the compiler,
  create a custom compiler via `browserCompiler({providers: [...]})`
  and pass that into the `bootstrap` method.
		
	
			
		
			
				
	
	
		
			95 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| /**
 | |
|  * @license
 | |
|  * Copyright Google Inc. All Rights Reserved.
 | |
|  *
 | |
|  * Use of this source code is governed by an MIT-style license that can be
 | |
|  * found in the LICENSE file at https://angular.io/license
 | |
|  */
 | |
| 
 | |
| import {__core_private__ as r, __core_private_types__ as t} from '@angular/core';
 | |
| 
 | |
| export var isDefaultChangeDetectionStrategy: typeof t.isDefaultChangeDetectionStrategy =
 | |
|     r.isDefaultChangeDetectionStrategy;
 | |
| export type ChangeDetectorStatus = t.ChangeDetectorStatus;
 | |
| export var ChangeDetectorStatus: typeof t.ChangeDetectorStatus = r.ChangeDetectorStatus;
 | |
| export var CHANGE_DETECTION_STRATEGY_VALUES: typeof t.CHANGE_DETECTION_STRATEGY_VALUES =
 | |
|     r.CHANGE_DETECTION_STRATEGY_VALUES;
 | |
| export var constructDependencies: typeof t.constructDependencies = r.constructDependencies;
 | |
| export type LifecycleHooks = t.LifecycleHooks;
 | |
| export var LifecycleHooks: typeof t.LifecycleHooks = r.LifecycleHooks;
 | |
| export var LIFECYCLE_HOOKS_VALUES: typeof t.LIFECYCLE_HOOKS_VALUES = r.LIFECYCLE_HOOKS_VALUES;
 | |
| export type ReflectorReader = t.ReflectorReader;
 | |
| export var ReflectorReader: typeof t.ReflectorReader = r.ReflectorReader;
 | |
| export var ReflectorComponentResolver: typeof t.ReflectorComponentResolver =
 | |
|     r.ReflectorComponentResolver;
 | |
| export type AppElement = t.AppElement;
 | |
| export var AppElement: typeof t.AppElement = r.AppElement;
 | |
| export var CodegenComponentFactoryResolver: typeof t.CodegenComponentFactoryResolver =
 | |
|     r.CodegenComponentFactoryResolver;
 | |
| export var AppView: typeof t.AppView = r.AppView;
 | |
| export type DebugAppView<T> = t.DebugAppView<T>;
 | |
| export var DebugAppView: typeof t.DebugAppView = r.DebugAppView;
 | |
| export var AppModuleInjector: typeof t.AppModuleInjector = r.AppModuleInjector;
 | |
| export type ViewType = t.ViewType;
 | |
| export var ViewType: typeof t.ViewType = r.ViewType;
 | |
| export var MAX_INTERPOLATION_VALUES: typeof t.MAX_INTERPOLATION_VALUES = r.MAX_INTERPOLATION_VALUES;
 | |
| export var checkBinding: typeof t.checkBinding = r.checkBinding;
 | |
| export var flattenNestedViewRenderNodes: typeof t.flattenNestedViewRenderNodes =
 | |
|     r.flattenNestedViewRenderNodes;
 | |
| export var interpolate: typeof t.interpolate = r.interpolate;
 | |
| export var ViewUtils: typeof t.ViewUtils = r.ViewUtils;
 | |
| export var VIEW_ENCAPSULATION_VALUES: typeof t.VIEW_ENCAPSULATION_VALUES =
 | |
|     r.VIEW_ENCAPSULATION_VALUES;
 | |
| export var DebugContext: typeof t.DebugContext = r.DebugContext;
 | |
| export var StaticNodeDebugInfo: typeof t.StaticNodeDebugInfo = r.StaticNodeDebugInfo;
 | |
| export var devModeEqual: typeof t.devModeEqual = r.devModeEqual;
 | |
| export var uninitialized: typeof t.uninitialized = r.uninitialized;
 | |
| export var ValueUnwrapper: typeof t.ValueUnwrapper = r.ValueUnwrapper;
 | |
| export var TemplateRef_: typeof t.TemplateRef_ = r.TemplateRef_;
 | |
| export type RenderDebugInfo = t.RenderDebugInfo;
 | |
| export var RenderDebugInfo: typeof t.RenderDebugInfo = r.RenderDebugInfo;
 | |
| export var createProvider: typeof t.createProvider = r.createProvider;
 | |
| export var isProviderLiteral: typeof t.isProviderLiteral = r.isProviderLiteral;
 | |
| export var EMPTY_ARRAY: typeof t.EMPTY_ARRAY = r.EMPTY_ARRAY;
 | |
| export var EMPTY_MAP: typeof t.EMPTY_MAP = r.EMPTY_MAP;
 | |
| export var pureProxy1: typeof t.pureProxy1 = r.pureProxy1;
 | |
| export var pureProxy2: typeof t.pureProxy2 = r.pureProxy2;
 | |
| export var pureProxy3: typeof t.pureProxy3 = r.pureProxy3;
 | |
| export var pureProxy4: typeof t.pureProxy4 = r.pureProxy4;
 | |
| export var pureProxy5: typeof t.pureProxy5 = r.pureProxy5;
 | |
| export var pureProxy6: typeof t.pureProxy6 = r.pureProxy6;
 | |
| export var pureProxy7: typeof t.pureProxy7 = r.pureProxy7;
 | |
| export var pureProxy8: typeof t.pureProxy8 = r.pureProxy8;
 | |
| export var pureProxy9: typeof t.pureProxy9 = r.pureProxy9;
 | |
| export var pureProxy10: typeof t.pureProxy10 = r.pureProxy10;
 | |
| export var castByValue: typeof t.castByValue = r.castByValue;
 | |
| export type Console = t.Console;
 | |
| export var Console: typeof t.Console = r.Console;
 | |
| export var reflector: t.Reflector = r.reflector;
 | |
| export var Reflector: typeof t.Reflector = r.Reflector;
 | |
| export type Reflector = t.Reflector;
 | |
| export type NoOpAnimationPlayer = t.NoOpAnimationPlayer;
 | |
| export var NoOpAnimationPlayer: typeof t.NoOpAnimationPlayer = r.NoOpAnimationPlayer;
 | |
| export type AnimationPlayer = t.AnimationPlayer;
 | |
| export var AnimationPlayer: typeof t.AnimationPlayer = r.AnimationPlayer;
 | |
| export type AnimationSequencePlayer = t.AnimationSequencePlayer;
 | |
| export var AnimationSequencePlayer: typeof t.AnimationSequencePlayer = r.AnimationSequencePlayer;
 | |
| export type AnimationGroupPlayer = t.AnimationGroupPlayer;
 | |
| export var AnimationGroupPlayer: typeof t.AnimationGroupPlayer = r.AnimationGroupPlayer;
 | |
| export type AnimationKeyframe = t.AnimationKeyframe;
 | |
| export var AnimationKeyframe: typeof t.AnimationKeyframe = r.AnimationKeyframe;
 | |
| export type AnimationStyles = t.AnimationStyles;
 | |
| export var AnimationStyles: typeof t.AnimationStyles = r.AnimationStyles;
 | |
| export var ANY_STATE = r.ANY_STATE;
 | |
| export var DEFAULT_STATE = r.DEFAULT_STATE;
 | |
| export var EMPTY_STATE = r.EMPTY_STATE;
 | |
| export var FILL_STYLE_FLAG = r.FILL_STYLE_FLAG;
 | |
| export var prepareFinalAnimationStyles: typeof t.prepareFinalAnimationStyles =
 | |
|     r.prepareFinalAnimationStyles;
 | |
| export var balanceAnimationKeyframes: typeof t.balanceAnimationKeyframes =
 | |
|     r.balanceAnimationKeyframes;
 | |
| export var flattenStyles: typeof t.flattenStyles = r.flattenStyles;
 | |
| export var clearStyles: typeof t.clearStyles = r.clearStyles;
 | |
| export var collectAndResolveStyles: typeof r.collectAndResolveStyles = r.collectAndResolveStyles;
 | |
| export var renderStyles: typeof t.renderStyles = r.renderStyles;
 |