refactor: fix typos (#18000)

This commit is contained in:
Victor Berchet 2017-07-07 16:55:17 -07:00 committed by Jason Aden
parent 9dd550fa1e
commit c723d42d0a
41 changed files with 48 additions and 50 deletions

View File

@ -96,7 +96,7 @@ This section describes how each of the aforementioned sub-tasks is accomplished:
5. **Deploy the artifacts to the corresponding PR's directory.** 5. **Deploy the artifacts to the corresponding PR's directory.**
With the preceeding steps, we have verified that the uploaded artifacts have been uploaded by With the preceding steps, we have verified that the uploaded artifacts have been uploaded by
Travis. Additionally, we have determined whether the PR can be trusted to have its previews Travis. Additionally, we have determined whether the PR can be trusted to have its previews
publicly accessible or whether further verification is necessary. The artifacts will be stored to publicly accessible or whether further verification is necessary. The artifacts will be stored to
the PR's directory, but will not be publicly accessible unless the PR has been verified. the PR's directory, but will not be publicly accessible unless the PR has been verified.

View File

@ -6,7 +6,7 @@ import { Hero } from './hero';
const HEROES = [ const HEROES = [
new Hero('Windstorm', 'Weather mastery'), new Hero('Windstorm', 'Weather mastery'),
new Hero('Mr. Nice', 'Killing them with kindness'), new Hero('Mr. Nice', 'Killing them with kindness'),
new Hero('Magneta', 'Manipulates metalic objects') new Hero('Magneta', 'Manipulates metallic objects')
]; ];
@Injectable() @Injectable()

View File

@ -39,7 +39,7 @@ if (!/e2e/.test(location.search)) {
directives.push(CountdownLocalVarParentComponent); directives.push(CountdownLocalVarParentComponent);
directives.push(CountdownViewChildParentComponent); directives.push(CountdownViewChildParentComponent);
} else { } else {
// In e2e test use CUSTOM_ELEMENTS_SCHEMA to supress unknown element errors // In e2e test use CUSTOM_ELEMENTS_SCHEMA to suppress unknown element errors
schemas.push(CUSTOM_ELEMENTS_SCHEMA); schemas.push(CUSTOM_ELEMENTS_SCHEMA);
} }

View File

@ -1,5 +1,5 @@
{ {
"description": "Hierachical Dependency Injection", "description": "Hierarchical Dependency Injection",
"basePath": "src/", "basePath": "src/",
"files":[ "files":[
"!**/*.d.ts", "!**/*.d.ts",

View File

@ -85,7 +85,7 @@ describe('Pipes', function () {
return resetEle.click(); return resetEle.click();
}) })
.then(function() { .then(function() {
expect(flyingHeroesEle.count()).toEqual(2, 'reset should restore orginal flying heroes'); expect(flyingHeroesEle.count()).toEqual(2, 'reset should restore original flying heroes');
}); });
}); });

View File

@ -273,7 +273,7 @@ export class InnerCompWithExternalTemplateComponent { }
@Component({ @Component({
selector: 'bad-template-comp', selector: 'bad-template-comp',
templateUrl: './non-existant.html' templateUrl: './non-existent.html'
}) })
export class BadTemplateUrlComponent { } export class BadTemplateUrlComponent { }

View File

@ -227,7 +227,7 @@ function heroModuleSetup() {
// #enddocregion route-no-id // #enddocregion route-no-id
// #docregion route-bad-id // #docregion route-bad-id
describe('when navigate to non-existant hero id', () => { describe('when navigate to non-existent hero id', () => {
beforeEach( async(() => { beforeEach( async(() => {
activatedRoute.testParamMap = { id: 99999 }; activatedRoute.testParamMap = { id: 99999 };
createComponent(); createComponent();

View File

@ -244,7 +244,7 @@ You can limit the scope of an injected service to a *branch* of the application
by providing that service *at the sub-root component for that branch*. by providing that service *at the sub-root component for that branch*.
This example shows how similar providing a service to a sub-root component is This example shows how similar providing a service to a sub-root component is
to providing a service in the root `AppComponent`. The syntax is the same. to providing a service in the root `AppComponent`. The syntax is the same.
Here, the `HeroService` is availble to the `HeroesBaseComponent` because it is in the `providers` array: Here, the `HeroService` is available to the `HeroesBaseComponent` because it is in the `providers` array:
<code-example path="dependency-injection-in-action/src/app/sorted-heroes.component.ts" region="injection" title="src/app/sorted-heroes.component.ts (HeroesBaseComponent excerpt)"> <code-example path="dependency-injection-in-action/src/app/sorted-heroes.component.ts" region="injection" title="src/app/sorted-heroes.component.ts (HeroesBaseComponent excerpt)">

View File

@ -320,7 +320,7 @@ Read more about `ngIf` and `*` in the [ngIf section](guide/template-syntax#ngIf)
The template expression inside the double quotes, The template expression inside the double quotes,
`*ngIf="heros.length > 3"`, looks and behaves much like TypeScript. `*ngIf="heroes.length > 3"`, looks and behaves much like TypeScript.
When the component's list of heroes has more than three items, Angular adds the paragraph When the component's list of heroes has more than three items, Angular adds the paragraph
to the DOM and the message appears. If there are three or fewer items, Angular omits the to the DOM and the message appears. If there are three or fewer items, Angular omits the
paragraph, so no message appears. For more information, paragraph, so no message appears. For more information,

View File

@ -168,10 +168,8 @@ on custom validation directives.
* Binding to the new `formErrors.name` property is sufficient to display all name validation error messages. * Binding to the new `formErrors.name` property is sufficient to display all name validation error messages.
{@a component-class} {@a component-class}
### Component class ### Component class
The original component code for Template 1 stayed the same; however, The original component code for Template 1 stayed the same; however,
Template 2 requires some changes in the component. This section covers the code Template 2 requires some changes in the component. This section covers the code

View File

@ -614,7 +614,7 @@ If you do not bind the value, the select shows the first option from the data mo
The component _class_ defines control properties without regard for their representation in the template. The component _class_ defines control properties without regard for their representation in the template.
You define the `state`, `power`, and `sidekick` controls the same way you defined the `name` control. You define the `state`, `power`, and `sidekick` controls the same way you defined the `name` control.
You tie these controls to the template HTML elements in the same way, You tie these controls to the template HTML elements in the same way,
specifiying the `FormControl` name with the `formControlName` directive. specifying the `FormControl` name with the `formControlName` directive.
See the API reference for more information about See the API reference for more information about
[radio buttons](api/forms/RadioControlValueAccessor "API: RadioControlValueAccessor"), [radio buttons](api/forms/RadioControlValueAccessor "API: RadioControlValueAccessor"),
@ -1220,7 +1220,7 @@ Place a button on the form so the user can add a new _secret lair_ and wire it t
Be sure to **add the `type="button"` attribute**. Be sure to **add the `type="button"` attribute**.
In fact, you should always specify a button's `type`. In fact, you should always specify a button's `type`.
Without an explict type, the button type defaults to "submit". Without an explicit type, the button type defaults to "submit".
When you later add a _form submit_ action, every "submit" button triggers the submit action which When you later add a _form submit_ action, every "submit" button triggers the submit action which
might do something like save the current changes. might do something like save the current changes.
You do not want to save changes when the user clicks the _Add a Secret Lair_ button. You do not want to save changes when the user clicks the _Add a Secret Lair_ button.

View File

@ -199,7 +199,7 @@ If you do, this page can help you understand their purpose.
A list of files that you can delete if you want to purge your setup of the A list of files that you can delete if you want to purge your setup of the
original QuickStart Seed testing and git maintainence artifacts. original QuickStart Seed testing and git maintenance artifacts.
See instructions in the optional See instructions in the optional
[_Deleting non-essential files_](guide/setup#non-essential "Setup: Deleting non-essential files") section. [_Deleting non-essential files_](guide/setup#non-essential "Setup: Deleting non-essential files") section.
*Do this only in the beginning to avoid accidentally deleting your own tests and git setup!* *Do this only in the beginning to avoid accidentally deleting your own tests and git setup!*

View File

@ -3127,7 +3127,7 @@ that may need features from another common module; for example,
**Why?** A lazy loaded feature module that imports that shared module will make its own copy of the service and likely have undesireable results. **Why?** A lazy loaded feature module that imports that shared module will make its own copy of the service and likely have undesirable results.
</div> </div>
@ -3377,7 +3377,7 @@ Yet they're too big and messy to leave loose in the root folder.
**Why?** A lazily loaded feature module that directly imports the `CoreModule` will make its own copy of services and likely have undesireable results. **Why?** A lazily loaded feature module that directly imports the `CoreModule` will make its own copy of services and likely have undesirable results.
</div> </div>

View File

@ -431,7 +431,7 @@ by calling the `@Inject()` decorator with the injection token.
In the following example, the token is the string `'heroName'`. In the following example, the token is the string `'heroName'`.
The other JavaScript dialects add a `parameters` array to the class constructor function. The other JavaScript dialects add a `parameters` array to the class constructor function.
Each item constrains a new instance of `Inject`: Each item contains a new instance of `Inject`:
* _Plain ES6_&mdash;each item is a new instance of `Inject(token)` in a sub-array. * _Plain ES6_&mdash;each item is a new instance of `Inject(token)` in a sub-array.
* _ES5_&mdash;simply list the string tokens. * _ES5_&mdash;simply list the string tokens.

View File

@ -259,7 +259,7 @@
<path d="M15.1748197,2.88436401 L12.7958773,15.1229617" id="Line-Copy-9"></path> <path d="M15.1748197,2.88436401 L12.7958773,15.1229617" id="Line-Copy-9"></path>
<path d="M1.2029061,0.773628441 L0.767790904,13.2336973" id="Line-Copy-10"></path> <path d="M1.2029061,0.773628441 L0.767790904,13.2336973" id="Line-Copy-10"></path>
</g> </g>
<g id="speed-guage" transform="translate(17.000000, 0.000000)"> <g id="speed-gauge" transform="translate(17.000000, 0.000000)">
<mask id="mask-29" fill="white"> <mask id="mask-29" fill="white">
<use xlink:href="#path-28"></use> <use xlink:href="#path-28"></use>
</mask> </mask>

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

@ -2,7 +2,7 @@
Media queries Media queries
To use these, put this snippet in the approriate selector: To use these, put this snippet in the appropriate selector:
@include bp(tiny) { @include bp(tiny) {
background-color: purple; background-color: purple;

View File

@ -101,7 +101,7 @@ describe('addNotYetDocumentedProperty', function() {
}); });
it('should not mark documents explicity tagged as `@noDescription`', function() { it('should not mark documents explicitly tagged as `@noDescription`', function() {
var a, a1, a2, b, b1, b2, c, c1, c2; var a, a1, a2, b, b1, b2, c, c1, c2;
var docs = [ var docs = [
a = { a = {

View File

@ -21,7 +21,7 @@ module.exports = function() {
if (newLines.length > 0) { if (newLines.length > 0) {
newLines.pop(); newLines.pop();
} else { } else {
// wierd case - first expression in str is an @example // weird case - first expression in str is an @example
// in this case the :marked appear above the str passed in, // in this case the :marked appear above the str passed in,
// so we need to put 'something' into the markdown tag. // so we need to put 'something' into the markdown tag.
newLines.push(sp + '.'); // '.' is a dummy char newLines.push(sp + '.'); // '.' is a dummy char

View File

@ -45,7 +45,7 @@ computing the changes being slow, or due to the act of applying those changes
to the UI. For your application to be performant it is important that the to the UI. For your application to be performant it is important that the
process of computing changes is very fast. For best results it should be under process of computing changes is very fast. For best results it should be under
3 milliseconds in order to leave room for the application logic, the UI updates 3 milliseconds in order to leave room for the application logic, the UI updates
and browser's rendering pipeline to fit withing the 16 millisecond frame and browser's rendering pipeline to fit within the 16 millisecond frame
(assuming the 60 FPS target frame rate). (assuming the 60 FPS target frame rate).
Change detection profiler repeatedly performs change detection without invoking Change detection profiler repeatedly performs change detection without invoking

View File

@ -2,7 +2,7 @@
"name": "language_service_plugin", "name": "language_service_plugin",
"version": "0.0.0", "version": "0.0.0",
"license": "MIT", "license": "MIT",
"decription": "Angular Langauge Service plugin integration test", "decription": "Angular Language Service plugin integration test",
"dependencies": { "dependencies": {
"@angular/animations": "file:../../dist/packages-dist/animations", "@angular/animations": "file:../../dist/packages-dist/animations",
"@angular/common": "file:../../dist/packages-dist/common", "@angular/common": "file:../../dist/packages-dist/common",

View File

@ -203,7 +203,7 @@ export function main() {
/Unable to listen on the animation trigger "myTrigger" because the provided event is undefined!/); /Unable to listen on the animation trigger "myTrigger" because the provided event is undefined!/);
}); });
it('should retain event listeners and call them for sucessive animation state changes', it('should retain event listeners and call them for successive animation state changes',
() => { () => {
const engine = makeEngine(); const engine = makeEngine();
const trig = trigger( const trig = trigger(
@ -282,7 +282,7 @@ export function main() {
'* => *', [style({height: '0px'}), animate(1234, style({height: '100px'}))]) '* => *', [style({height: '0px'}), animate(1234, style({height: '100px'}))])
])); ]));
// we do this so that the next transition has a starting value that isnt null // we do this so that the next transition has a starting value that isn't null
setProperty(element, engine, 'myTrigger', '123'); setProperty(element, engine, 'myTrigger', '123');
engine.flush(); engine.flush();

View File

@ -110,7 +110,7 @@ export class ChromeDriverExtension extends WebDriverExtension {
categories, name, ['benchmark'], categories, name, ['benchmark'],
'BenchmarkInstrumentation::ImplThreadRenderingStats')) { 'BenchmarkInstrumentation::ImplThreadRenderingStats')) {
// TODO(goderbauer): Instead of BenchmarkInstrumentation::ImplThreadRenderingStats the // TODO(goderbauer): Instead of BenchmarkInstrumentation::ImplThreadRenderingStats the
// following events should be used (if available) for more accurate measurments: // following events should be used (if available) for more accurate measurements:
// 1st choice: vsync_before - ground truth on Android // 1st choice: vsync_before - ground truth on Android
// 2nd choice: BenchmarkInstrumentation::DisplayRenderingStats - available on systems with // 2nd choice: BenchmarkInstrumentation::DisplayRenderingStats - available on systems with
// new surfaces framework (not broadly enabled yet) // new surfaces framework (not broadly enabled yet)

View File

@ -45,7 +45,7 @@ import {Directive, EmbeddedViewRef, Input, TemplateRef, ViewContainerRef} from '
* A common pattern is that we need to show a set of properties from the same object. If the * A common pattern is that we need to show a set of properties from the same object. If the
* object is undefined, then we have to use the safe-traversal-operator `?.` to guard against * object is undefined, then we have to use the safe-traversal-operator `?.` to guard against
* dereferencing a `null` value. This is especially the case when waiting on async data such as * dereferencing a `null` value. This is especially the case when waiting on async data such as
* when using the `async` pipe as shown in folowing example: * when using the `async` pipe as shown in following example:
* *
* ``` * ```
* Hello {{ (userStream|async)?.last }}, {{ (userStream|async)?.first }}! * Hello {{ (userStream|async)?.last }}, {{ (userStream|async)?.first }}!

View File

@ -166,7 +166,7 @@ class ToJsonSerializer extends ValueTransformer {
__symbol: index, __symbol: index,
name: symbol.name, name: symbol.name,
// We convert the source filenames tinto output filenames, // We convert the source filenames tinto output filenames,
// as the generated summary file will be used when teh current // as the generated summary file will be used when the current
// compilation unit is used as a library // compilation unit is used as a library
filePath: this.summaryResolver.getLibraryFileName(symbol.filePath), filePath: this.summaryResolver.getLibraryFileName(symbol.filePath),
importAs: importAs importAs: importAs

View File

@ -417,7 +417,7 @@ export function main() {
expect((ast.rootNodes[0] as html.Element).attrs[0].valueSpan).toBeUndefined(); expect((ast.rootNodes[0] as html.Element).attrs[0].valueSpan).toBeUndefined();
}); });
it('should report a value span for an attibute with a value', () => { it('should report a value span for an attribute with a value', () => {
const ast = parser.parse('<div bar="12"></div>', 'TestComp'); const ast = parser.parse('<div bar="12"></div>', 'TestComp');
const attr = (ast.rootNodes[0] as html.Element).attrs[0]; const attr = (ast.rootNodes[0] as html.Element).attrs[0];
expect(attr.valueSpan !.start.offset).toEqual(9); expect(attr.valueSpan !.start.offset).toEqual(9);

View File

@ -89,7 +89,7 @@ export interface ViewHandleEventFn {
} }
/** /**
* Bitmask for ViewDefintion.flags. * Bitmask for ViewDefinition.flags.
*/ */
export const enum ViewFlags { export const enum ViewFlags {
None = 0, None = 0,

View File

@ -242,14 +242,14 @@ function declareTests({useJit}: {useJit: boolean}) {
return MyComponent; return MyComponent;
} }
const HeroComponent = ComponentFactory('my-hero', 'my hero'); const HeroComponent = ComponentFactory('my-hero', 'my hero');
const VillianComponent = ComponentFactory('a-villian', 'a villian'); const VillainComponent = ComponentFactory('a-villain', 'a villain');
const MainComponent = ComponentFactory( const MainComponent = ComponentFactory(
'my-app', 'I was saved by <my-hero></my-hero> from <a-villian></a-villian>.'); 'my-app', 'I was saved by <my-hero></my-hero> from <a-villain></a-villain>.');
TestBed.configureTestingModule( TestBed.configureTestingModule(
{declarations: [HeroComponent, VillianComponent, MainComponent]}); {declarations: [HeroComponent, VillainComponent, MainComponent]});
const fixture = TestBed.createComponent(MainComponent); const fixture = TestBed.createComponent(MainComponent);
expect(fixture.nativeElement).toHaveText('I was saved by my hero from a villian.'); expect(fixture.nativeElement).toHaveText('I was saved by my hero from a villain.');
}); });
it('should allow to use the renderer outside of views', () => { it('should allow to use the renderer outside of views', () => {

View File

@ -123,7 +123,7 @@ export function main() {
}); });
it('should ensure that we dont accidently patch native objects', () => { it('should ensure that we dont accidentally patch native objects', () => {
expect(() => { expect(() => {
(<Function>Class)({constructor: Object}); (<Function>Class)({constructor: Object});
}).toThrowError('Can not use native Object as constructor'); }).toThrowError('Can not use native Object as constructor');

View File

@ -172,7 +172,7 @@ export function main() {
.toThrowError('No provider for Dep!'); .toThrowError('No provider for Dep!');
}); });
it('should inject from a parent elment in a parent view', () => { it('should inject from a parent element in a parent view', () => {
createAndGetRootNodes(compViewDef([ createAndGetRootNodes(compViewDef([
elementDef( elementDef(
NodeFlags.None, null !, null !, 1, 'div', null !, null !, null !, null !, NodeFlags.None, null !, null !, 1, 'div', null !, null !, null !, null !,

View File

@ -25,7 +25,7 @@ export {
/** /**
* The information `LanguageService` needs from the `LanguageServiceHost` to describe the content of * The information `LanguageService` needs from the `LanguageServiceHost` to describe the content of
* a template and the langauge context the template is in. * a template and the language context the template is in.
* *
* A host interface; see `LanguageSeriviceHost`. * A host interface; see `LanguageSeriviceHost`.
* *

View File

@ -30,7 +30,7 @@ describe('service without angular', () => {
() => expect(() => ngService.getDiagnostics(fileName)).not.toThrow()); () => expect(() => ngService.getDiagnostics(fileName)).not.toThrow());
it('should not crash a completion', it('should not crash a completion',
() => expect(() => ngService.getCompletionsAt(fileName, position)).not.toThrow()); () => expect(() => ngService.getCompletionsAt(fileName, position)).not.toThrow());
it('should not crash a get defintion', it('should not crash a get definition',
() => expect(() => ngService.getDefinitionAt(fileName, position)).not.toThrow()); () => expect(() => ngService.getDefinitionAt(fileName, position)).not.toThrow());
it('should not crash a hover', () => expect(() => ngService.getHoverAt(fileName, position))); it('should not crash a hover', () => expect(() => ngService.getHoverAt(fileName, position)));
}); });

View File

@ -142,7 +142,7 @@ describe('plugin', () => {
it('should reference the component', it('should reference the component',
() => { contains('app/parsing-cases.ts', 'test-comp-after-test', 'name'); }); () => { contains('app/parsing-cases.ts', 'test-comp-after-test', 'name'); });
// TODO: Enable when we have a flag that indicates the project targets the DOM // TODO: Enable when we have a flag that indicates the project targets the DOM
// it('should refernce the element if no component', () => { // it('should reference the element if no component', () => {
// contains('app/parsing-cases.ts', 'test-comp-after-div', 'innerText'); // contains('app/parsing-cases.ts', 'test-comp-after-div', 'innerText');
// }); // });
}); });
@ -163,7 +163,7 @@ describe('plugin', () => {
'app/expression-cases.ts', 'myField', 'app/expression-cases.ts', 'myField',
'Identifier \'myField\' refers to a private member of the component'); 'Identifier \'myField\' refers to a private member of the component');
}); });
it('should report numeric operator erros', it('should report numeric operator errors',
() => { expectSemanticError('app/expression-cases.ts', 'mod', 'Expected a numeric type'); }); () => { expectSemanticError('app/expression-cases.ts', 'mod', 'Expected a numeric type'); });
describe('in ngFor', () => { describe('in ngFor', () => {
function expectError(locationMarker: string, message: string) { function expectError(locationMarker: string, message: string) {

View File

@ -31,7 +31,7 @@ class FancyService {
class ExternalTemplateComp { class ExternalTemplateComp {
} }
@Component({selector: 'bad-template-comp', templateUrl: 'non-existant.html'}) @Component({selector: 'bad-template-comp', templateUrl: 'non-existent.html'})
class BadTemplateUrl { class BadTemplateUrl {
} }
@ -110,7 +110,7 @@ export function main() {
() => { done.fail('Expected test to fail, but it did not'); }, () => { done.fail('Expected test to fail, but it did not'); },
(err: any) => { (err: any) => {
expect(err.message) expect(err.message)
.toEqual('Uncaught (in promise): Failed to load non-existant.html'); .toEqual('Uncaught (in promise): Failed to load non-existent.html');
done(); done();
}); });
restoreJasmineIt(); restoreJasmineIt();

View File

@ -102,7 +102,7 @@ const HTML_ATTRS = tagSet(
'scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,' + 'scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,' +
'valign,value,vspace,width'); 'valign,value,vspace,width');
// NB: This currently conciously doesn't support SVG. SVG sanitization has had several security // NB: This currently consciously doesn't support SVG. SVG sanitization has had several security
// issues in the past, so it seems safer to leave it out if possible. If support for binding SVG via // issues in the past, so it seems safer to leave it out if possible. If support for binding SVG via
// innerHTML is required, SVG attributes should be added here. // innerHTML is required, SVG attributes should be added here.

View File

@ -84,7 +84,7 @@ export interface MessageBusSink {
* Sets up a new channel on the MessageBusSink. * Sets up a new channel on the MessageBusSink.
* MUST be called before calling to on the channel. * MUST be called before calling to on the channel.
* If runInZone is true the sink will buffer messages and send only once the zone exits. * If runInZone is true the sink will buffer messages and send only once the zone exits.
* if runInZone is false the sink will send messages immediatly. * if runInZone is false the sink will send messages immediately.
*/ */
initChannel(channel: string, runInZone: boolean): void; initChannel(channel: string, runInZone: boolean): void;

View File

@ -142,7 +142,7 @@ export function main() {
}), }),
500); 500);
it('should send messages immediatly when run outside the zone', it('should send messages immediately when run outside the zone',
inject([AsyncTestCompleter, NgZone], (async: AsyncTestCompleter, zone: MockNgZone) => { inject([AsyncTestCompleter, NgZone], (async: AsyncTestCompleter, zone: MockNgZone) => {
bus = createConnectedMessageBus(); bus = createConnectedMessageBus();
setup(false, zone); setup(false, zone);

View File

@ -149,7 +149,7 @@ export class UrlSegmentGroup {
forEach(children, (v: any, k: any) => v.parent = this); forEach(children, (v: any, k: any) => v.parent = this);
} }
/** Wether the segment has child segments */ /** Whether the segment has child segments */
hasChildren(): boolean { return this.numberOfChildren > 0; } hasChildren(): boolean { return this.numberOfChildren > 0; }
/** Number of child segments */ /** Number of child segments */

View File

@ -509,7 +509,7 @@ describe('Integration', () => {
expect(fixture.nativeElement).toHaveText('team 22 [ user victor, right: simple ]'); expect(fixture.nativeElement).toHaveText('team 22 [ user victor, right: simple ]');
}))); })));
it('should support secondary routes in seperate commands', it('should support secondary routes in separate commands',
fakeAsync(inject([Router], (router: Router) => { fakeAsync(inject([Router], (router: Router) => {
const fixture = createRoot(router, RootCmp); const fixture = createRoot(router, RootCmp);

View File

@ -375,7 +375,7 @@ export class Evaluator {
if (expression && this.isFoldable(propertyAccessExpression.expression)) if (expression && this.isFoldable(propertyAccessExpression.expression))
return (<any>expression)[<string>member]; return (<any>expression)[<string>member];
if (isMetadataModuleReferenceExpression(expression)) { if (isMetadataModuleReferenceExpression(expression)) {
// A select into a module refrence and be converted into a reference to the symbol // A select into a module reference and be converted into a reference to the symbol
// in the module // in the module
return recordEntry( return recordEntry(
{__symbolic: 'reference', module: expression.module, name: member}, node); {__symbolic: 'reference', module: expression.module, name: member}, node);

View File

@ -28,7 +28,7 @@ interface Options extends ts.CompilerOptions {
// Whether to generate a flat module index of the given name and the corresponding // Whether to generate a flat module index of the given name and the corresponding
// flat module metadata. This option is intended to be used when creating flat // flat module metadata. This option is intended to be used when creating flat
// modules similar to how `@angular/core` and `@angular/common` are packaged. // modules similar to how `@angular/core` and `@angular/common` are packaged.
// When this option is used the `package.json` for the library should refered to the // When this option is used the `package.json` for the library should referred to the
// generated flat module index instead of the library index file. When using this // generated flat module index instead of the library index file. When using this
// option only one .metadata.json file is produced that contains all the metadata // option only one .metadata.json file is produced that contains all the metadata
// necessary for symbols exported from the library index. // necessary for symbols exported from the library index.

View File

@ -920,7 +920,7 @@ const FILES: Directory = {
} }
getHeroes() { getHeroes() {
this._heroService.getHeroesSlowly().then(heros => this.heroes = heros); this._heroService.getHeroesSlowly().then(heroes => this.heroes = heroes);
} }
}`, }`,
'hero.ts': ` 'hero.ts': `