Skip to content
This repository was archived by the owner on Dec 4, 2017. It is now read-only.

Commit c185c35

Browse files
Foxandxsswardbell
authored andcommitted
chore: use the provide object literal
closes #1594 replace `provide(...{use:...})` with `{provide: ..., use...}` syntax
1 parent 6f02f76 commit c185c35

38 files changed

+189
-524
lines changed

public/docs/_examples/cb-dependency-injection/e2e-spec.ts

+2-12
Original file line numberDiff line numberDiff line change
@@ -35,16 +35,11 @@ describe('Dependency Injection Cookbook', function () {
3535
expect(sortedHero).toBeDefined();
3636
});
3737

38-
it('should render Hero of the Month when DI deps are defined using provide()', function () {
38+
it('should render Hero of the Month', function () {
3939
let heroOfTheMonth = element.all(by.xpath('//h3[text()="Hero of the month"]')).get(0);
4040
expect(heroOfTheMonth).toBeDefined();
4141
});
4242

43-
it('should render Hero of the Month when DI deps are defined using provide object literal', function () {
44-
let heroOfTheMonth = element.all(by.xpath('//h3[text()="Hero of the month 2"]')).get(0);
45-
expect(heroOfTheMonth).toBeDefined();
46-
});
47-
4843
it('should render Hero Bios', function () {
4944
let heroBios = element.all(by.xpath('//h3[text()="Hero Bios"]')).get(0);
5045
expect(heroBios).toBeDefined();
@@ -60,16 +55,11 @@ describe('Dependency Injection Cookbook', function () {
6055
expect(magmaPhone).toBeDefined();
6156
});
6257

63-
it('should render Hero-of-the-Month runner-ups when DI deps are defined using provide()', function () {
58+
it('should render Hero-of-the-Month runner-ups', function () {
6459
let runnersUp = element(by.id('rups1')).getText();
6560
expect(runnersUp).toContain('RubberMan, Mr. Nice');
6661
});
6762

68-
it('should render Hero-of-the-Month runner-ups when DI deps are defined using provide object literal', function () {
69-
let runnersUp = element(by.id('rups2')).getText();
70-
expect(runnersUp).toContain('RubberMan, Mr. Nice');
71-
});
72-
7363
it('should render DateLogger log entry in Hero-of-the-Month', function () {
7464
let logs = element.all(by.id('logs')).get(0).getText();
7565
expect(logs).toContain('INFO: starting up at');

public/docs/_examples/cb-dependency-injection/ts/app/app.component.html

-4
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,6 @@ <h3>Hero Bios and Contacts</h3>
2323
<hero-of-the-month></hero-of-the-month>
2424
</div>
2525

26-
<div class="di-component">
27-
<hero-of-the-month-lit></hero-of-the-month-lit>
28-
</div>
29-
3026
<div class="di-component">
3127
<h3>Unsorted Heroes</h3>
3228
<unsorted-heroes></unsorted-heroes>

public/docs/_examples/cb-dependency-injection/ts/app/app.component.ts

+1-4
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,10 @@ import { HeroesBaseComponent,
99
import { HighlightDirective } from './highlight.directive';
1010
import { ParentFinderComponent } from './parent-finder.component';
1111

12-
// Object Literal syntax
13-
import { HeroOfTheMonthLiteralsComponent } from './hero-of-the-month-literals.component';
14-
1512
const DIRECTIVES = [
1613
HeroBiosComponent, HeroBiosAndContactsComponent,
1714
HeroesBaseComponent, SortedHeroesComponent,
18-
HeroOfTheMonthComponent, HeroOfTheMonthLiteralsComponent,
15+
HeroOfTheMonthComponent,
1916
HighlightDirective,
2017
ParentFinderComponent
2118
];

public/docs/_examples/cb-dependency-injection/ts/app/hero-of-the-month-literals.component.ts

-67
This file was deleted.

public/docs/_examples/cb-dependency-injection/ts/app/hero-of-the-month.component.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export const TITLE = new OpaqueToken('title');
77
// #enddocregion opaque-token
88

99
// #docregion hero-of-the-month
10-
import { Component, Inject, provide } from '@angular/core';
10+
import { Component, Inject } from '@angular/core';
1111

1212
import { DateLoggerService,
1313
MinimalLogger } from './date-logger.service';
@@ -40,20 +40,20 @@ const template = `
4040
template: template,
4141
providers: [
4242
// #docregion use-value
43-
provide(Hero, {useValue: someHero}),
43+
{ provide: Hero, useValue: someHero },
4444
// #docregion provide-opaque-token
45-
provide(TITLE, {useValue: 'Hero of the Month'}),
45+
{ provide: TITLE, useValue: 'Hero of the Month' },
4646
// #enddocregion provide-opaque-token
4747
// #enddocregion use-value
4848
// #docregion use-class
49-
provide(HeroService, {useClass: HeroService}),
50-
provide(LoggerService, {useClass: DateLoggerService}),
49+
{ provide: HeroService, useClass: HeroService },
50+
{ provide: LoggerService, useClass: DateLoggerService },
5151
// #enddocregion use-class
5252
// #docregion use-existing
53-
provide(MinimalLogger, {useExisting: LoggerService}),
53+
{ provide: MinimalLogger, useExisting: LoggerService },
5454
// #enddocregion use-existing
5555
// #docregion provide-opaque-token, use-factory
56-
provide(RUNNERS_UP, {useFactory: runnersUpFactory(2), deps: [Hero, HeroService]})
56+
{ provide: RUNNERS_UP, useFactory: runnersUpFactory(2), deps: [Hero, HeroService] }
5757
// #enddocregion provide-opaque-token, use-factory
5858
]
5959
})

public/docs/_examples/cb-dependency-injection/ts/app/main.ts

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// #docregion
22
import { bootstrap } from '@angular/platform-browser-dynamic';
3-
import { provide } from '@angular/core';
43
import { XHRBackend } from '@angular/http';
54
import { ROUTER_PROVIDERS } from '@angular/router-deprecated';
65
import { LocationStrategy,
@@ -15,10 +14,9 @@ import { AppComponent } from './app.component';
1514
// #docregion bootstrap
1615
bootstrap(AppComponent, [
1716
ROUTER_PROVIDERS,
18-
provide(LocationStrategy,
19-
{useClass: HashLocationStrategy}),
17+
{ provide: LocationStrategy, useClass: HashLocationStrategy },
2018

21-
provide(XHRBackend, { useClass: InMemoryBackendService }), // in-mem server
22-
provide(SEED_DATA, { useClass: HeroData }) // in-mem server data
19+
{ provide: XHRBackend, useClass: InMemoryBackendService }, // in-mem server
20+
{ provide: SEED_DATA, useClass: HeroData } // in-mem server data
2321
]).catch((err: any) => console.error(err));
2422
// #enddocregion bootstrap

public/docs/_examples/cb-dependency-injection/ts/app/parent-finder.component.ts

+8-5
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,17 @@ const DifferentParent = Parent;
2222
const provideParent =
2323
// #enddocregion provide-parent, provide-the-parent
2424
// #docregion provide-parent
25-
(component: any, parentType?: any) =>
26-
provide(parentType || Parent, { useExisting: forwardRef(() => component) });
25+
(component: any, parentType?: any) => {
26+
return { provide: parentType || Parent, useExisting: forwardRef(() => component) }
27+
};
2728
// #enddocregion provide-parent
2829

2930
// Simpler syntax version that always provides the component in the name of `Parent`.
3031
const provideTheParent =
3132
// #docregion provide-the-parent
32-
(component: any) => provide(Parent, { useExisting: forwardRef(() => component) });
33+
(component: any) => {
34+
return { provide: Parent, useExisting: forwardRef(() => component) }
35+
};
3336
// #enddocregion provide-the-parent
3437

3538

@@ -105,7 +108,7 @@ const templateB = `
105108
selector: 'barry',
106109
template: templateB,
107110
directives: C_DIRECTIVES,
108-
providers: [ provide(Parent, { useExisting: forwardRef(() => BarryComponent) }) ]
111+
providers: [{ provide: Parent, useExisting: forwardRef(() => BarryComponent) }]
109112
})
110113
export class BarryComponent implements Parent {
111114
name = 'Barry';
@@ -155,7 +158,7 @@ const B_DIRECTIVES = [ BarryComponent, BethComponent, BobComponent ];
155158
</div>`,
156159
// #enddocregion alex-1
157160
// #docregion alex-providers
158-
providers: [ provide(Parent, { useExisting: forwardRef(() => AlexComponent) }) ],
161+
providers: [{ provide: Parent, useExisting: forwardRef(() => AlexComponent) }],
159162
// #enddocregion alex-providers
160163
// #docregion alex-1
161164
directives: C_DIRECTIVES

public/docs/_examples/cb-ts-to-js/js/app/main.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
// #enddocregion appimport
55

66
// #docregion ng2import
7-
var provide =
8-
ng.core.provide;
97
var bootstrap =
108
ng.platformBrowserDynamic.bootstrap;
119
var LocationStrategy =
@@ -25,10 +23,10 @@
2523
bootstrap(app.HeroDIComponent, [app.DataService]);
2624
bootstrap(app.HeroDIInlineComponent, [app.DataService]);
2725
bootstrap(app.HeroDIInjectComponent, [
28-
ng.core.provide('heroName', {useValue: 'Windstorm'})
26+
{ provide: 'heroName', useValue: 'Windstorm' }
2927
]);
3028
bootstrap(app.HeroDIInjectComponent2, [
31-
ng.core.provide('heroName', {useValue: 'Bombasto'})
29+
{ provide: 'heroName', useValue: 'Bombasto' }
3230
]);
3331
bootstrap(app.HeroDIInjectAdditionalComponent);
3432
bootstrap(app.HeroIOComponent);

public/docs/_examples/cb-ts-to-js/ts/app/main.ts

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
// #docregion ng2import
2-
import { provide }
3-
from '@angular/core';
42
import { bootstrap }
53
from '@angular/platform-browser-dynamic';
64
import {
@@ -29,7 +27,7 @@ bootstrap(HeroComponent);
2927
bootstrap(HeroLifecycleComponent);
3028
bootstrap(HeroDIComponent, [DataService]);
3129
bootstrap(HeroDIInjectComponent, [
32-
provide('heroName', {useValue: 'Windstorm'})
30+
{ provide: 'heroName', useValue: 'Windstorm' }
3331
]);
3432
bootstrap(AppDIInjectAdditionalComponent);
3533
bootstrap(AppIOComponent);

public/docs/_examples/dependency-injection/dart/lib/providers_component.dart

-36
Original file line numberDiff line numberDiff line change
@@ -27,38 +27,6 @@ class ProviderComponent1 {
2727
}
2828
}
2929

30-
@Component(
31-
selector: 'provider-2',
32-
template: '{{log}}',
33-
providers:
34-
// #docregion providers-2
35-
const [const Provider(Logger, useClass: Logger)]
36-
// #enddocregion providers-2
37-
)
38-
class ProviderComponent2 {
39-
String log;
40-
41-
ProviderComponent2(Logger logger) {
42-
logger.log('Hello from logger provided with Provider class and useClass');
43-
log = logger.logs[0];
44-
}
45-
}
46-
47-
/// Component just used to ensure that shared E2E tests pass.
48-
@Component(
49-
selector: 'provider-3',
50-
template: '{{log}}',
51-
providers: const [const Provider(Logger, useClass: Logger)]
52-
)
53-
class ProviderComponent3 {
54-
String log;
55-
56-
ProviderComponent3(Logger logger) {
57-
logger.log('Hello from logger provided with useClass');
58-
log = logger.logs[0];
59-
}
60-
}
61-
6230
/// Component just used to ensure that shared E2E tests pass.
6331
@Component(
6432
selector: 'provider-3a',
@@ -282,8 +250,6 @@ class ProviderComponent10 implements OnInit {
282250
template: '''
283251
<h2>Provider variations</h2>
284252
<div id="p1"><provider-1></provider-1></div>
285-
<div id="p2"><provider-2></provider-2></div>
286-
<div id="p3"><provider-3></provider-3></div>
287253
<div id="p3a"><provider-3a></provider-3a></div>
288254
<div id="p4"><provider-4></provider-4></div>
289255
<div id="p5"><provider-5></provider-5></div>
@@ -295,8 +261,6 @@ class ProviderComponent10 implements OnInit {
295261
<div id="p10"><provider-10></provider-10></div>''',
296262
directives: const [
297263
ProviderComponent1,
298-
ProviderComponent2,
299-
ProviderComponent3,
300264
ProviderComponent3a,
301265
ProviderComponent4,
302266
ProviderComponent5,

public/docs/_examples/dependency-injection/e2e-spec.ts

+1-11
Original file line numberDiff line numberDiff line change
@@ -80,18 +80,8 @@ describe('Dependency Injection Tests', function () {
8080
expect(element(by.css('#p1')).getText()).toEqual(expectedMsg);
8181
});
8282

83-
it('P2 (Provider) displays as expected', function () {
84-
expectedMsg = 'Hello from logger provided with Provider class and useClass';
85-
expect(element(by.css('#p2')).getText()).toEqual(expectedMsg);
86-
});
87-
88-
it('P3 (provide) displays as expected', function () {
89-
expectedMsg = 'Hello from logger provided with useClass';
90-
expect(element(by.css('#p3')).getText()).toEqual(expectedMsg);
91-
});
92-
9383
it('P3a (provide) displays as expected', function () {
94-
expectedMsg = 'Hello from logger provided with {provide: Logger, useClass: Logger}';
84+
expectedMsg = 'Hello from logger provided with { provide: Logger, useClass: Logger }';
9585
expect(element(by.css('#p3a')).getText()).toEqual(expectedMsg);
9686
});
9787

public/docs/_examples/dependency-injection/ts/app/app.component.2.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { Component } from '@angular/core';
44
import { CarComponent } from './car/car.component';
55
import { HeroesComponent } from './heroes/heroes.component.1';
66

7-
import { provide, Inject } from '@angular/core';
7+
import { Inject } from '@angular/core';
88
import { APP_CONFIG, AppConfig,
99
HERO_DI_CONFIG } from './app.config';
1010
import { Logger } from './logger.service';
@@ -21,7 +21,7 @@ import { Logger } from './logger.service';
2121
providers: [
2222
Logger,
2323
// #docregion providers
24-
provide(APP_CONFIG, {useValue: HERO_DI_CONFIG})
24+
{ provide: APP_CONFIG, useValue: HERO_DI_CONFIG }
2525
// #enddocregion providers
2626
]
2727
})

public/docs/_examples/dependency-injection/ts/app/app.component.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// #docplaster
22
// #docregion
33
// #docregion imports
4-
import { Component, Inject, provide } from '@angular/core';
4+
import { Component, Inject } from '@angular/core';
55

66
import { CarComponent } from './car/car.component';
77
import { HeroesComponent } from './heroes/heroes.component';
@@ -37,7 +37,7 @@ import { ProvidersComponent } from './providers.component';
3737
providers: [
3838
Logger,
3939
UserService,
40-
provide(APP_CONFIG, {useValue: HERO_DI_CONFIG})
40+
{ provide: APP_CONFIG, useValue: HERO_DI_CONFIG }
4141
]
4242
// #enddocregion providers
4343
})

public/docs/_examples/dependency-injection/ts/app/heroes/hero.service.provider.ts

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
// #docregion
2-
import { provide } from '@angular/core';
3-
42
import { HeroService } from './hero.service';
53
import { Logger } from '../logger.service';
64
import { UserService } from '../user.service';
@@ -13,8 +11,8 @@ let heroServiceFactory = (logger: Logger, userService: UserService) => {
1311

1412
// #docregion provider
1513
export let heroServiceProvider =
16-
provide(HeroService, {
14+
{ provide: HeroService,
1715
useFactory: heroServiceFactory,
1816
deps: [Logger, UserService]
19-
});
17+
};
2018
// #enddocregion provider

0 commit comments

Comments
 (0)