Skip to content

Commit bc212e9

Browse files
committed
c94442a fix(forms): improve error message when ngFormModel is missing a form
1 parent a53602e commit bc212e9

341 files changed

Lines changed: 18543 additions & 25577 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

BUILD_INFO

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
Wed Apr 20 20:15:38 UTC 2016
2-
aeca0f006ae50d222b4bf0d0054137758cda562a
1+
Wed Apr 20 20:22:29 UTC 2016
2+
c94442a9f03d4c787758aaced3f9339986e7fdd8

_analyzer.dart

Lines changed: 455 additions & 465 deletions
Large diffs are not rendered by default.

lib/angular2.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ export 'package:angular2/instrumentation.dart';
1111
export 'package:angular2/src/core/angular_entrypoint.dart'
1212
show AngularEntrypoint;
1313
export 'package:angular2/src/core/application_tokens.dart'
14-
hide APP_COMPONENT_REF_PROMISE, APP_ID_RANDOM_PROVIDER;
14+
hide APP_ID_RANDOM_PROVIDER;
1515
export 'package:angular2/src/platform/dom/dom_tokens.dart';
1616
export 'package:angular2/src/platform/dom/dom_adapter.dart';
1717
export 'package:angular2/src/platform/dom/events/event_manager.dart';
18-
export 'package:angular2/src/compiler/url_resolver.dart';
18+
export 'package:angular2/src/compiler/compiler.dart'
19+
show UrlResolver, DirectiveResolver, ViewResolver;

lib/compiler.dart

Lines changed: 31 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,34 @@
55
*/
66
library angular2.compiler;
77

8-
export "src/compiler/url_resolver.dart";
9-
export "src/compiler/xhr.dart";
10-
export "src/compiler/compiler.dart";
8+
export "package:angular2/src/compiler/compiler.dart"
9+
show
10+
PLATFORM_DIRECTIVES,
11+
PLATFORM_PIPES,
12+
COMPILER_PROVIDERS,
13+
TEMPLATE_TRANSFORMS,
14+
CompilerConfig,
15+
RenderTypes,
16+
UrlResolver,
17+
DEFAULT_PACKAGE_URL_PROVIDER,
18+
createOfflineCompileUrlResolver,
19+
XHR,
20+
ViewResolver,
21+
DirectiveResolver,
22+
PipeResolver,
23+
SourceModule,
24+
NormalizedComponentWithViewDirectives,
25+
OfflineCompiler,
26+
CompileMetadataWithIdentifier,
27+
CompileMetadataWithType,
28+
CompileIdentifierMetadata,
29+
CompileDiDependencyMetadata,
30+
CompileProviderMetadata,
31+
CompileFactoryMetadata,
32+
CompileTokenMetadata,
33+
CompileTypeMetadata,
34+
CompileQueryMetadata,
35+
CompileTemplateMetadata,
36+
CompileDirectiveMetadata,
37+
CompilePipeMetadata;
38+
export "package:angular2/src/compiler/template_ast.dart";

lib/core.dart

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,18 @@ export 'package:angular2/src/facade/lang.dart' show enableProdMode;
77
export './src/core/di.dart' hide ForwardRefFn, resolveForwardRef, forwardRef;
88
export './src/facade/facade.dart';
99
export './src/core/application_ref.dart'
10-
show platform, createNgZone, PlatformRef, ApplicationRef;
11-
export './src/core/application_tokens.dart'
1210
show
13-
APP_ID,
14-
APP_COMPONENT,
15-
APP_INITIALIZER,
16-
PACKAGE_ROOT_URL,
17-
PLATFORM_INITIALIZER;
11+
createPlatform,
12+
assertPlatform,
13+
disposePlatform,
14+
getPlatform,
15+
coreLoadAndBootstrap,
16+
coreBootstrap,
17+
createNgZone,
18+
PlatformRef,
19+
ApplicationRef;
20+
export './src/core/application_tokens.dart'
21+
show APP_ID, APP_INITIALIZER, PACKAGE_ROOT_URL, PLATFORM_INITIALIZER;
1822
export './src/core/zone.dart';
1923
export './src/core/render.dart';
2024
export './src/core/linker.dart';

lib/extract_messages.dart

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
import 'package:build/build.dart';
22
import 'package:analyzer/src/generated/element.dart';
33
import 'src/transform/common/url_resolver.dart';
4+
45
import 'dart:async';
56
import 'package:angular2/i18n.dart';
6-
import 'package:angular2/src/core/change_detection/parser/parser.dart';
7-
import 'package:angular2/src/core/change_detection/parser/lexer.dart';
8-
import 'package:angular2/src/core/reflection/reflector.dart';
9-
import 'package:angular2/src/core/reflection/reflection_capabilities.dart';
7+
import 'package:angular2/src/compiler/expression_parser/parser.dart';
8+
import 'package:angular2/src/compiler/expression_parser/lexer.dart';
109
import 'package:angular2/src/compiler/html_parser.dart';
1110

1211
/**
@@ -51,11 +50,11 @@ class I18nMessageExtractorBuilder implements Builder {
5150
}
5251

5352
class I18nMessageExtractor {
54-
final TransformerUrlResolver urlResovler = new TransformerUrlResolver();
53+
final urlResovler = createOfflineCompileUrlResolver();
5554
final List<Message> messages = [];
5655
final List errors = [];
5756
final HtmlParser htmlParser = new HtmlParser();
58-
final Parser parser = new Parser(new Lexer(), new Reflector(new ReflectionCapabilities()));
57+
final Parser parser = new Parser(new Lexer());
5958

6059
final Function readInput;
6160

lib/platform/browser.dart

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,24 @@ export "package:angular2/src/platform/browser_common.dart"
1616
DOCUMENT,
1717
enableDebugTools,
1818
disableDebugTools;
19-
import "package:angular2/src/facade/lang.dart" show Type, isPresent;
19+
import "package:angular2/src/facade/lang.dart" show Type, isPresent, isBlank;
2020
import "package:angular2/src/platform/browser_common.dart"
21-
show BROWSER_PROVIDERS, BROWSER_APP_COMMON_PROVIDERS;
21+
show
22+
BROWSER_PROVIDERS,
23+
BROWSER_APP_COMMON_PROVIDERS,
24+
BROWSER_PLATFORM_MARKER;
2225
import "package:angular2/compiler.dart" show COMPILER_PROVIDERS;
23-
import "package:angular2/core.dart" show ComponentRef, platform, reflector;
26+
import "package:angular2/core.dart"
27+
show
28+
ComponentRef,
29+
coreLoadAndBootstrap,
30+
reflector,
31+
ReflectiveInjector,
32+
PlatformRef,
33+
OpaqueToken,
34+
getPlatform,
35+
createPlatform,
36+
assertPlatform;
2437
import "package:angular2/src/core/reflection/reflection_capabilities.dart"
2538
show ReflectionCapabilities;
2639
import "package:angular2/src/platform/browser/xhr_impl.dart" show XHRImpl;
@@ -35,6 +48,13 @@ const List<dynamic> BROWSER_APP_PROVIDERS = const [
3548
COMPILER_PROVIDERS,
3649
const Provider(XHR, useClass: XHRImpl)
3750
];
51+
PlatformRef browserPlatform() {
52+
if (isBlank(getPlatform())) {
53+
createPlatform(ReflectiveInjector.resolveAndCreate(BROWSER_PROVIDERS));
54+
}
55+
return assertPlatform(BROWSER_PLATFORM_MARKER);
56+
}
57+
3858
/**
3959
* Bootstrapping for Angular applications.
4060
*
@@ -106,10 +126,9 @@ const List<dynamic> BROWSER_APP_PROVIDERS = const [
106126
Future<ComponentRef> bootstrap(Type appComponentType,
107127
[List<dynamic> customProviders]) {
108128
reflector.reflectionCapabilities = new ReflectionCapabilities();
109-
var appProviders = isPresent(customProviders)
110-
? [BROWSER_APP_PROVIDERS, customProviders]
111-
: BROWSER_APP_PROVIDERS;
112-
return platform(BROWSER_PROVIDERS)
113-
.application(appProviders)
114-
.bootstrap(appComponentType);
129+
var appInjector = ReflectiveInjector.resolveAndCreate([
130+
BROWSER_APP_PROVIDERS,
131+
isPresent(customProviders) ? customProviders : []
132+
], browserPlatform().injector);
133+
return coreLoadAndBootstrap(appInjector, appComponentType);
115134
}

lib/platform/browser_static.dart

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,35 @@ export "package:angular2/src/platform/browser_common.dart"
1414
Title,
1515
enableDebugTools,
1616
disableDebugTools;
17-
import "package:angular2/src/facade/lang.dart" show Type, isPresent;
17+
import "package:angular2/src/facade/lang.dart" show Type, isPresent, isBlank;
1818
import "package:angular2/src/platform/browser_common.dart"
19-
show BROWSER_PROVIDERS, BROWSER_APP_COMMON_PROVIDERS;
20-
import "package:angular2/core.dart" show ComponentRef, platform;
19+
show
20+
BROWSER_PROVIDERS,
21+
BROWSER_APP_COMMON_PROVIDERS,
22+
BROWSER_PLATFORM_MARKER;
23+
import "package:angular2/core.dart"
24+
show
25+
ComponentRef,
26+
coreLoadAndBootstrap,
27+
ReflectiveInjector,
28+
PlatformRef,
29+
getPlatform,
30+
createPlatform,
31+
assertPlatform;
2132

2233
/**
2334
* An array of providers that should be passed into `application()` when bootstrapping a component
2435
* when all templates
2536
* have been precompiled offline.
2637
*/
2738
const List<dynamic> BROWSER_APP_PROVIDERS = BROWSER_APP_COMMON_PROVIDERS;
39+
PlatformRef browserStaticPlatform() {
40+
if (isBlank(getPlatform())) {
41+
createPlatform(ReflectiveInjector.resolveAndCreate(BROWSER_PROVIDERS));
42+
}
43+
return assertPlatform(BROWSER_PLATFORM_MARKER);
44+
}
45+
2846
/**
2947
* See [bootstrap] for more information.
3048
*/
@@ -36,7 +54,7 @@ Future<ComponentRef> bootstrapStatic(Type appComponentType,
3654
var appProviders = isPresent(customProviders)
3755
? [BROWSER_APP_PROVIDERS, customProviders]
3856
: BROWSER_APP_PROVIDERS;
39-
return platform(BROWSER_PROVIDERS)
40-
.application(appProviders)
41-
.bootstrap(appComponentType);
57+
var appInjector = ReflectiveInjector.resolveAndCreate(
58+
appProviders, browserStaticPlatform().injector);
59+
return coreLoadAndBootstrap(appInjector, appComponentType);
4260
}

lib/platform/testing/browser_static.dart

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,11 @@ library angular2.platform.testing.browser_static;
33
import "package:angular2/core.dart"
44
show
55
APP_ID,
6-
DirectiveResolver,
76
NgZone,
87
Provider,
9-
ViewResolver,
108
PLATFORM_COMMON_PROVIDERS,
119
PLATFORM_INITIALIZER;
10+
import "package:angular2/compiler.dart" show DirectiveResolver, ViewResolver;
1211
import "package:angular2/src/platform/browser_common.dart"
1312
show BROWSER_APP_COMMON_PROVIDERS;
1413
import "package:angular2/src/platform/browser/browser_adapter.dart"

lib/platform/worker_app.dart

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
library angular2.platform.worker_app;
22

3+
import "package:angular2/src/platform/worker_app_common.dart";
4+
import "package:angular2/src/platform/worker_app.dart";
5+
import 'package:angular2/core.dart';
6+
import 'package:angular2/src/facade/lang.dart';
7+
import 'dart:isolate';
8+
import 'dart:async';
9+
310
export "package:angular2/src/platform/worker_app_common.dart"
411
show WORKER_APP_PLATFORM, WORKER_APP_APPLICATION_COMMON;
512
export "package:angular2/src/core/angular_entrypoint.dart"
@@ -14,3 +21,30 @@ export 'package:angular2/src/web_workers/shared/serializer.dart' show PRIMITIVE;
1421
export 'package:angular2/src/web_workers/shared/message_bus.dart';
1522
export 'package:angular2/src/web_workers/worker/router_providers.dart'
1623
show WORKER_APP_ROUTER;
24+
25+
PlatformRef _platform = null;
26+
SendPort _renderSendPort = null;
27+
28+
PlatformRef workerAppPlatform(SendPort renderSendPort) {
29+
if (isBlank(getPlatform())) {
30+
createPlatform(ReflectiveInjector.resolveAndCreate([
31+
WORKER_APP_PLATFORM,
32+
new Provider(RENDER_SEND_PORT, useValue: renderSendPort)
33+
]));
34+
}
35+
var platform = assertPlatform(WORKER_APP_PLATFORM_MARKER);
36+
if (platform.injector.get(RENDER_SEND_PORT, null) != renderSendPort) {
37+
throw 'Platform has already been created with a different SendPort. Please distroy it first.';
38+
}
39+
return platform;
40+
}
41+
42+
Future<ComponentRef> bootstrapApp(
43+
SendPort renderSendPort, Type appComponentType,
44+
[List<dynamic /*Type | Provider | any[]*/ > customProviders]) {
45+
var appInjector = ReflectiveInjector.resolveAndCreate([
46+
WORKER_APP_APPLICATION,
47+
isPresent(customProviders) ? customProviders : []
48+
], workerAppPlatform(renderSendPort).injector);
49+
return coreLoadAndBootstrap(appInjector, appComponentType);
50+
}

0 commit comments

Comments
 (0)