diff --git a/packages/bazel/src/schematics/ng-new/schema.d.ts b/packages/bazel/src/schematics/ng-new/schema.d.ts index 3d26236a7c..48c3575c50 100644 --- a/packages/bazel/src/schematics/ng-new/schema.d.ts +++ b/packages/bazel/src/schematics/ng-new/schema.d.ts @@ -95,16 +95,16 @@ export interface CommitObject { * The file extension or preprocessor to use for style files. */ export declare enum Style { - Css = "css", - Sass = "sass", - Scss = "scss", + Css = 'css', + Sass = 'sass', + Scss = 'scss', } /** * The view encapsulation strategy to use in the initial project. */ export declare enum ViewEncapsulation { - Emulated = "Emulated", - Native = "Native", - None = "None", - ShadowDom = "ShadowDom" + Emulated = 'Emulated', + Native = 'Native', + None = 'None', + ShadowDom = 'ShadowDom' } diff --git a/packages/compiler/src/render3/view/template.ts b/packages/compiler/src/render3/view/template.ts index bb8354335f..926da4be14 100644 --- a/packages/compiler/src/render3/view/template.ts +++ b/packages/compiler/src/render3/view/template.ts @@ -458,10 +458,7 @@ export class TemplateDefinitionBuilder implements t.Visitor, LocalResolver if (bindings.size) { const chainBindings: ChainableBindingInstruction[] = []; bindings.forEach(binding => { - chainBindings.push({ - sourceSpan: span, - value: () => this.convertPropertyBinding(binding) - }); + chainBindings.push({sourceSpan: span, value: () => this.convertPropertyBinding(binding)}); }); this.updateInstructionChain(index, R3.i18nExp, chainBindings); this.updateInstruction(index, span, R3.i18nApply, [o.literal(index)]); @@ -779,8 +776,11 @@ export class TemplateDefinitionBuilder implements t.Visitor, LocalResolver } else { // [prop]="value" // Collect all the properties so that we can chain into a single function at the end. - propertyBindings.push( - {name: attrName, sourceSpan: input.sourceSpan, value: () => this.convertPropertyBinding(value), params}); + propertyBindings.push({ + name: attrName, + sourceSpan: input.sourceSpan, + value: () => this.convertPropertyBinding(value), params + }); } } else if (inputType === BindingType.Attribute) { if (value instanceof Interpolation && getInterpolationArgsLength(value) > 1) { @@ -1038,8 +1038,11 @@ export class TemplateDefinitionBuilder implements t.Visitor, LocalResolver if (value !== undefined) { this.allocateBindingSlots(value); - propertyBindings.push( - {name: input.name, sourceSpan: input.sourceSpan, value: () => this.convertPropertyBinding(value)}); + propertyBindings.push({ + name: input.name, + sourceSpan: input.sourceSpan, + value: () => this.convertPropertyBinding(value) + }); } } }); diff --git a/packages/core/src/metadata/directives.ts b/packages/core/src/metadata/directives.ts index ef6e0010b0..1177981427 100644 --- a/packages/core/src/metadata/directives.ts +++ b/packages/core/src/metadata/directives.ts @@ -174,11 +174,13 @@ export interface Directive { * * @Component({ * selector: 'main', - * template: ` {{ bankName }} ` + * template: ` + * {{ bankName }} + * ` * }) * class MainComponent { * bankName: string; - * + * * onBankNameChange(bankName: string) { * this.bankName = bankName; * } diff --git a/packages/core/src/render3/i18n.ts b/packages/core/src/render3/i18n.ts index 5467796939..a24d51b4c3 100644 --- a/packages/core/src/render3/i18n.ts +++ b/packages/core/src/render3/i18n.ts @@ -7,16 +7,18 @@ */ import '../util/ng_i18n_closure_mode'; + import {getPluralCase} from '../i18n/localization'; import {SRCSET_ATTRS, URI_ATTRS, VALID_ATTRS, VALID_ELEMENTS, getTemplateContent} from '../sanitization/html_sanitizer'; import {InertBodyHelper} from '../sanitization/inert_body'; import {_sanitizeUrl, sanitizeSrcset} from '../sanitization/url_sanitizer'; import {addAllToArray} from '../util/array_utils'; import {assertDataInRange, assertDefined, assertEqual, assertGreaterThan} from '../util/assert'; + import {attachPatchData} from './context_discovery'; import {bind, setDelayProjection, ɵɵload} from './instructions/all'; import {attachI18nOpCodesDebug} from './instructions/lview_debug'; -import {allocExpando, elementAttributeInternal, elementPropertyInternal, getOrCreateTNode, setInputsForProperty, textBindingInternal, TsickleIssue1009} from './instructions/shared'; +import {TsickleIssue1009, allocExpando, elementAttributeInternal, elementPropertyInternal, getOrCreateTNode, setInputsForProperty, textBindingInternal} from './instructions/shared'; import {LContainer, NATIVE} from './interfaces/container'; import {COMMENT_MARKER, ELEMENT_MARKER, I18nMutateOpCode, I18nMutateOpCodes, I18nUpdateOpCode, I18nUpdateOpCodes, IcuType, TI18n, TIcu} from './interfaces/i18n'; import {TElementNode, TIcuContainerNode, TNode, TNodeFlags, TNodeType, TProjectionNode} from './interfaces/node'; diff --git a/packages/core/src/render3/node_manipulation.ts b/packages/core/src/render3/node_manipulation.ts index 5eb681aed2..ef5eace965 100644 --- a/packages/core/src/render3/node_manipulation.ts +++ b/packages/core/src/render3/node_manipulation.ts @@ -771,8 +771,8 @@ function executeActionOnView( } /** - * `executeActionOnProjection` performs an operation on the projection specified by `action` (insert, - * detach, destroy) + * `executeActionOnProjection` performs an operation on the projection specified by `action` + * (insert, detach, destroy). * * Inserting a projection requires us to locate the projected nodes from the parent component. The * complication is that those nodes themselves could be re-projected from their parent component. @@ -844,8 +844,8 @@ function executeActionOnContainer( /** - * `executeActionOnElementContainer` performs an operation on the ng-container node and its child nodes - * as specified by the `action` (insert, detach, destroy) + * `executeActionOnElementContainer` performs an operation on the ng-container node and its child + * nodes as specified by the `action` (insert, detach, destroy). * * @param renderer Renderer to use * @param action action to perform (insert, detach, destroy) diff --git a/packages/zone.js/test/browser/browser.spec.ts b/packages/zone.js/test/browser/browser.spec.ts index bc41ea7810..5d42822d30 100644 --- a/packages/zone.js/test/browser/browser.spec.ts +++ b/packages/zone.js/test/browser/browser.spec.ts @@ -279,68 +279,68 @@ describe('Zone', function() { // TODO: JiaLiPassion, need to find out why the test bundle is not `use strict`. xit('event handler with null context should use event.target', - ifEnvSupports(canPatchOnProperty(Document.prototype, 'onmousedown'), function() { - const ieVer = getIEVersion(); - if (ieVer && ieVer === 9) { - // in ie9, this is window object even we call func.apply(undefined) - return; - } - const logs: string[] = []; - const EventTarget = (window as any)['EventTarget']; - let oriAddEventListener = EventTarget && EventTarget.prototype ? - (EventTarget.prototype as any)[zoneSymbol('addEventListener')] : - (HTMLSpanElement.prototype as any)[zoneSymbol('addEventListener')]; + ifEnvSupports(canPatchOnProperty(Document.prototype, 'onmousedown'), function() { + const ieVer = getIEVersion(); + if (ieVer && ieVer === 9) { + // in ie9, this is window object even we call func.apply(undefined) + return; + } + const logs: string[] = []; + const EventTarget = (window as any)['EventTarget']; + let oriAddEventListener = EventTarget && EventTarget.prototype ? + (EventTarget.prototype as any)[zoneSymbol('addEventListener')] : + (HTMLSpanElement.prototype as any)[zoneSymbol('addEventListener')]; - if (!oriAddEventListener) { - // no patched addEventListener found - return; - } - let handler1: Function; - let handler2: Function; + if (!oriAddEventListener) { + // no patched addEventListener found + return; + } + let handler1: Function; + let handler2: Function; - const listener = function() { logs.push('listener1'); }; + const listener = function() { logs.push('listener1'); }; - const listener1 = function() { logs.push('listener2'); }; + const listener1 = function() { logs.push('listener2'); }; - HTMLSpanElement.prototype.addEventListener = function( - eventName: string, callback: any) { - if (eventName === 'click') { - handler1 = callback; - } else if (eventName === 'mousedown') { - handler2 = callback; - } - return oriAddEventListener.apply(this, arguments); - }; + HTMLSpanElement.prototype.addEventListener = function( + eventName: string, callback: any) { + if (eventName === 'click') { + handler1 = callback; + } else if (eventName === 'mousedown') { + handler2 = callback; + } + return oriAddEventListener.apply(this, arguments); + }; - (HTMLSpanElement.prototype as any)[zoneSymbol('addEventListener')] = null; + (HTMLSpanElement.prototype as any)[zoneSymbol('addEventListener')] = null; - patchEventTarget(window, [HTMLSpanElement.prototype]); + patchEventTarget(window, [HTMLSpanElement.prototype]); - const span = document.createElement('span'); - document.body.appendChild(span); + const span = document.createElement('span'); + document.body.appendChild(span); - zone.run(function() { - span.addEventListener('click', listener); - span.onmousedown = listener1; - }); + zone.run(function() { + span.addEventListener('click', listener); + span.onmousedown = listener1; + }); - expect(handler1 !).toBe(handler2 !); + expect(handler1 !).toBe(handler2 !); - handler1 !.apply(null, [{type: 'click', target: span}]); + handler1 !.apply(null, [{type: 'click', target: span}]); - handler2 !.apply(null, [{type: 'mousedown', target: span}]); + handler2 !.apply(null, [{type: 'mousedown', target: span}]); - expect(hookSpy).toHaveBeenCalled(); - expect(logs).toEqual(['listener1', 'listener2']); - document.body.removeChild(span); - if (EventTarget) { - (EventTarget.prototype as any)[zoneSymbol('addEventListener')] = - oriAddEventListener; - } else { - (HTMLSpanElement.prototype as any)[zoneSymbol('addEventListener')] = - oriAddEventListener; - } - })); + expect(hookSpy).toHaveBeenCalled(); + expect(logs).toEqual(['listener1', 'listener2']); + document.body.removeChild(span); + if (EventTarget) { + (EventTarget.prototype as any)[zoneSymbol('addEventListener')] = + oriAddEventListener; + } else { + (HTMLSpanElement.prototype as any)[zoneSymbol('addEventListener')] = + oriAddEventListener; + } + })); it('SVGElement onclick should be in zone', ifEnvSupports(