diff --git a/gulpfile.js b/gulpfile.js index bb5f6df5ee..f7efa9374a 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -760,10 +760,10 @@ gulp.task('!pre.test.typings', ['docs/typings'], function() { }); // ----------------- -// TODO: Use a version of TypeScript that matches what is used by DefinitelyTyped. gulp.task('test.typings', ['!pre.test.typings'], function() { return gulp.src(['typing_spec/*.ts', 'dist/docs/typings/angular2/angular2.d.ts']) .pipe(tsc({target: 'ES5', module: 'commonjs', + experimentalDecorators: true, noImplicitAny: true, // Don't use the version of typescript that gulp-typescript depends on, we need 1.5 // see https://github.com/ivogabe/gulp-typescript#typescript-version diff --git a/modules/angular2/annotations.ts b/modules/angular2/annotations.ts index 3e0ec2f922..efa3a48e90 100644 --- a/modules/angular2/annotations.ts +++ b/modules/angular2/annotations.ts @@ -27,12 +27,7 @@ export { } from 'angular2/src/core/compiler/interfaces'; -export { - Class, - ClassDefinition, - ParameterDecorator, - TypeDecorator -} from 'angular2/src/util/decorators'; +export {Class, ClassDefinition, TypeDecorator} from 'angular2/src/util/decorators'; export { Attribute, diff --git a/modules/angular2/src/core/annotations/decorators.ts b/modules/angular2/src/core/annotations/decorators.ts index d030609589..ccc294d613 100644 --- a/modules/angular2/src/core/annotations/decorators.ts +++ b/modules/angular2/src/core/annotations/decorators.ts @@ -1,13 +1,7 @@ import {ComponentAnnotation, DirectiveAnnotation, LifecycleEvent} from './annotations'; import {ViewAnnotation} from './view'; import {AttributeAnnotation, QueryAnnotation, ViewQueryAnnotation} from './di'; -import { - makeDecorator, - makeParamDecorator, - TypeDecorator, - ParameterDecorator, - Class -} from '../../util/decorators'; +import {makeDecorator, makeParamDecorator, TypeDecorator, Class} from '../../util/decorators'; import {Type} from 'angular2/src/facade/lang'; import {ViewEncapsulation} from 'angular2/src/render/api'; diff --git a/modules/angular2/src/facade/intl.ts b/modules/angular2/src/facade/intl.ts index e2b0690af6..27ed8d1dc2 100644 --- a/modules/angular2/src/facade/intl.ts +++ b/modules/angular2/src/facade/intl.ts @@ -8,6 +8,9 @@ declare module Intl { currency?: string; currencyDisplay?: string; useGrouping?: boolean; + minimumIntegerDigits?: number; + minimumFractionDigits?: number; + maximumFractionDigits?: number; } interface NumberFormat { diff --git a/modules/angular2/src/facade/lang.ts b/modules/angular2/src/facade/lang.ts index be0a883816..df5956b56a 100644 --- a/modules/angular2/src/facade/lang.ts +++ b/modules/angular2/src/facade/lang.ts @@ -59,18 +59,18 @@ export function CONST_EXPR(expr: T): T { return expr; } -export function CONST():(target: T) => T { +export function CONST(): ClassDecorator { return (target) => target; } -export function ABSTRACT():(target: T) => T { +export function ABSTRACT(): ClassDecorator { return (t) => t; } // Note: This is only a marker annotation needed for ts2dart. // This is written so that is can be used as a Traceur annotation // or a Typescript decorator. -export function IMPLEMENTS(_):(target: T) => T { +export function IMPLEMENTS(_): ClassDecorator { return (t) => t; } diff --git a/modules/angular2/src/mock/location_mock.ts b/modules/angular2/src/mock/location_mock.ts index e8ecb12253..6cf0d9c2ca 100644 --- a/modules/angular2/src/mock/location_mock.ts +++ b/modules/angular2/src/mock/location_mock.ts @@ -6,7 +6,7 @@ import {List, ListWrapper} from 'angular2/src/facade/collection'; import {Location} from 'angular2/src/router/location'; -@proxy +@proxy() @IMPLEMENTS(Location) export class SpyLocation extends SpyObject { urlChanges: List; diff --git a/modules/angular2/src/router/route_config_impl.ts b/modules/angular2/src/router/route_config_impl.ts index 175a288ef0..0a4a6cb8c9 100644 --- a/modules/angular2/src/router/route_config_impl.ts +++ b/modules/angular2/src/router/route_config_impl.ts @@ -22,10 +22,15 @@ export class Route implements RouteDefinition { path: string; component: Type; as: string; + // added next two properties to work around https://github.com/Microsoft/TypeScript/issues/4107 + loader: Function; + redirectTo: string; constructor({path, component, as}: {path: string, component: Type, as?: string}) { this.path = path; this.component = component; this.as = as; + this.loader = null; + this.redirectTo = null; } } diff --git a/modules/angular2/src/test_lib/spies.dart b/modules/angular2/src/test_lib/spies.dart index a287e3b5f5..a5e67df025 100644 --- a/modules/angular2/src/test_lib/spies.dart +++ b/modules/angular2/src/test_lib/spies.dart @@ -4,32 +4,32 @@ import 'package:angular2/src/change_detection/change_detection.dart'; import 'package:angular2/di.dart'; import './test_lib.dart'; -@proxy +@proxy() class SpyChangeDetector extends SpyObject implements ChangeDetector { noSuchMethod(m) => super.noSuchMethod(m); } -@proxy +@proxy() class SpyProtoChangeDetector extends SpyObject implements ProtoChangeDetector { noSuchMethod(m) => super.noSuchMethod(m); } -@proxy +@proxy() class SpyPipe extends SpyObject implements Pipe { noSuchMethod(m) => super.noSuchMethod(m); } -@proxy +@proxy() class SpyPipeFactory extends SpyObject implements PipeFactory { noSuchMethod(m) => super.noSuchMethod(m); } -@proxy +@proxy() class SpyDependencyProvider extends SpyObject implements DependencyProvider { noSuchMethod(m) => super.noSuchMethod(m); } -@proxy +@proxy() class SpyChangeDetectorRef extends SpyObject implements ChangeDetectorRef { noSuchMethod(m) => super.noSuchMethod(m); } diff --git a/modules/angular2/src/test_lib/test_lib.ts b/modules/angular2/src/test_lib/test_lib.ts index 02e13ae546..bb323e4196 100644 --- a/modules/angular2/src/test_lib/test_lib.ts +++ b/modules/angular2/src/test_lib/test_lib.ts @@ -12,7 +12,9 @@ import {createTestInjector, FunctionWithParamTokens, inject} from './test_inject export {inject} from './test_injector'; -export function proxy() {} +export function proxy(): ClassDecorator { + return (t) => t; +} var _global: jasmine.GlobalPolluter = (typeof window === 'undefined' ? global : window); diff --git a/modules/angular2/src/util/decorators.ts b/modules/angular2/src/util/decorators.ts index afd7a4b82f..b9da7c39d1 100644 --- a/modules/angular2/src/util/decorators.ts +++ b/modules/angular2/src/util/decorators.ts @@ -49,6 +49,12 @@ export interface TypeDecorator { */ (type: T): T; + // Make TypeDecorator assignable to built-in ParameterDecorator type. + // ParameterDecorator is declared in lib.d.ts as a `declare type` + // so we cannot declare this interface as a subtype. + // see https://github.com/angular/angular/issues/3379#issuecomment-126169417 + (target: Object, propertyKey: string | symbol, parameterIndex: number): void; + /** * Storage for the accumulated annotations so far used by the DSL syntax. * @@ -62,17 +68,6 @@ export interface TypeDecorator { Class(obj: ClassDefinition): Type; } -/** - * An interface implemented by all Angular parameter decorators, which allows them to be used as ES7 - * decorators. - */ -export interface ParameterDecorator { - /** - * Invoke as ES7 decorator. - */ - (cls: Type, unusedKey: any, index: number): void; -} - function extractAnnotation(annotation: any): any { if (isFunction(annotation) && annotation.hasOwnProperty('annotation')) { // it is a decorator, extract annotation diff --git a/modules/angular2/test/change_detection/pipes/observable_pipe_spec.ts b/modules/angular2/test/change_detection/pipes/observable_pipe_spec.ts index cc32b55930..48056be290 100644 --- a/modules/angular2/test/change_detection/pipes/observable_pipe_spec.ts +++ b/modules/angular2/test/change_detection/pipes/observable_pipe_spec.ts @@ -117,7 +117,7 @@ export function main() { }); } -@proxy +@proxy() @IMPLEMENTS(ChangeDetectorRef) class SpyChangeDetectorRef extends SpyObject { constructor() { super(ChangeDetectorRef); } diff --git a/modules/angular2/test/change_detection/pipes/promise_pipe_spec.ts b/modules/angular2/test/change_detection/pipes/promise_pipe_spec.ts index db9b00c8a2..b2f143cb02 100644 --- a/modules/angular2/test/change_detection/pipes/promise_pipe_spec.ts +++ b/modules/angular2/test/change_detection/pipes/promise_pipe_spec.ts @@ -119,7 +119,7 @@ export function main() { }); } -@proxy +@proxy() @IMPLEMENTS(ChangeDetectorRef) class SpyChangeDetectorRef extends SpyObject { constructor() { super(ChangeDetectorRef); } diff --git a/modules/angular2/test/core/compiler/compiler_spec.ts b/modules/angular2/test/core/compiler/compiler_spec.ts index f8db16d467..31cabbe4e2 100644 --- a/modules/angular2/test/core/compiler/compiler_spec.ts +++ b/modules/angular2/test/core/compiler/compiler_spec.ts @@ -658,14 +658,14 @@ class DirectiveWithAttributes { constructor(@Attribute('someAttr') someAttr: String) {} } -@proxy +@proxy() @IMPLEMENTS(RenderCompiler) class SpyRenderCompiler extends SpyObject { constructor() { super(RenderCompiler); } noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(DirectiveResolver) class SpyDirectiveResolver extends SpyObject { constructor() { super(DirectiveResolver); } @@ -719,4 +719,4 @@ function collectEmbeddedPvs(pv: AppProtoView, target: AppProtoView[] = null): Ap } }); return target; -} \ No newline at end of file +} diff --git a/modules/angular2/test/core/compiler/element_injector_spec.ts b/modules/angular2/test/core/compiler/element_injector_spec.ts index f1c1e0ef13..98666ee6f7 100644 --- a/modules/angular2/test/core/compiler/element_injector_spec.ts +++ b/modules/angular2/test/core/compiler/element_injector_spec.ts @@ -48,7 +48,7 @@ import {ElementRef} from 'angular2/src/core/compiler/element_ref'; import {DynamicChangeDetector, ChangeDetectorRef, Parser, Lexer} from 'angular2/src/change_detection/change_detection'; import {QueryList} from 'angular2/src/core/compiler/query_list'; -@proxy +@proxy() @IMPLEMENTS(AppView) class DummyView extends SpyObject { changeDetector; @@ -59,7 +59,7 @@ class DummyView extends SpyObject { noSuchMethod(m) { return super.noSuchMethod(m); } } -@proxy +@proxy() @IMPLEMENTS(ElementRef) class DummyElementRef extends SpyObject { boundElementIndex: number = 0; diff --git a/modules/angular2/test/core/compiler/integration_dart_spec.dart b/modules/angular2/test/core/compiler/integration_dart_spec.dart index 27e11cee07..afb798559e 100644 --- a/modules/angular2/test/core/compiler/integration_dart_spec.dart +++ b/modules/angular2/test/core/compiler/integration_dart_spec.dart @@ -227,7 +227,7 @@ class ThrowingComponent2 { } } -@proxy +@proxy() class PropModel implements Map { final String foo = 'foo-prop'; diff --git a/modules/angular2/test/core/compiler/proto_view_factory_spec.ts b/modules/angular2/test/core/compiler/proto_view_factory_spec.ts index 157523a224..655fad5b46 100644 --- a/modules/angular2/test/core/compiler/proto_view_factory_spec.ts +++ b/modules/angular2/test/core/compiler/proto_view_factory_spec.ts @@ -199,7 +199,7 @@ function createRenderViewportElementBinder(nestedProtoView) { return new renderApi.ElementBinder({nestedProtoView: nestedProtoView}); } -@proxy +@proxy() @IMPLEMENTS(ChangeDetection) class ChangeDetectionSpy extends SpyObject { constructor() { super(ChangeDetection); } diff --git a/modules/angular2/test/core/compiler/view_container_ref_spec.ts b/modules/angular2/test/core/compiler/view_container_ref_spec.ts index 4438308d7d..60d549e236 100644 --- a/modules/angular2/test/core/compiler/view_container_ref_spec.ts +++ b/modules/angular2/test/core/compiler/view_container_ref_spec.ts @@ -62,7 +62,7 @@ export function main() { }); } -@proxy +@proxy() @IMPLEMENTS(AppView) class AppViewSpy extends SpyObject { viewContainers: AppViewContainer[] = [null]; @@ -70,7 +70,7 @@ class AppViewSpy extends SpyObject { noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(AppViewManager) class AppViewManagerSpy extends SpyObject { constructor() { super(AppViewManager); } diff --git a/modules/angular2/test/core/compiler/view_manager_spec.ts b/modules/angular2/test/core/compiler/view_manager_spec.ts index 6b09185436..501a3bdbb5 100644 --- a/modules/angular2/test/core/compiler/view_manager_spec.ts +++ b/modules/angular2/test/core/compiler/view_manager_spec.ts @@ -507,21 +507,21 @@ export function main() { }); } -@proxy +@proxy() @IMPLEMENTS(Renderer) class SpyRenderer extends SpyObject { constructor() { super(Renderer); } noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(AppViewPool) class SpyAppViewPool extends SpyObject { constructor() { super(AppViewPool); } noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(AppViewListener) class SpyAppViewListener extends SpyObject { constructor() { super(AppViewListener); } diff --git a/modules/angular2/test/core/compiler/view_manager_utils_spec.ts b/modules/angular2/test/core/compiler/view_manager_utils_spec.ts index 4e9530e989..6771483f79 100644 --- a/modules/angular2/test/core/compiler/view_manager_utils_spec.ts +++ b/modules/angular2/test/core/compiler/view_manager_utils_spec.ts @@ -353,7 +353,7 @@ export function createEmbeddedPv(binders: ElementBinder[] = null) { class SomeComponent { } -@proxy +@proxy() @IMPLEMENTS(ProtoElementInjector) class SpyProtoElementInjector extends SpyObject { index: number; @@ -361,21 +361,21 @@ class SpyProtoElementInjector extends SpyObject { noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(ElementInjector) class SpyElementInjector extends SpyObject { constructor(public parent: ElementInjector) { super(ElementInjector); } noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(PreBuiltObjects) class SpyPreBuiltObjects extends SpyObject { constructor() { super(PreBuiltObjects); } noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(Injector) class SpyInjector extends SpyObject { constructor() { super(Injector); } diff --git a/modules/angular2/test/router/router_link_spec.ts b/modules/angular2/test/router/router_link_spec.ts index 7a215df68b..f90e8e1d3b 100644 --- a/modules/angular2/test/router/router_link_spec.ts +++ b/modules/angular2/test/router/router_link_spec.ts @@ -79,7 +79,7 @@ class TestComponent { } -@proxy +@proxy() @IMPLEMENTS(Location) class DummyLocation extends SpyObject { noSuchMethod(m) { return super.noSuchMethod(m) } @@ -92,7 +92,7 @@ function makeDummyLocation() { } -@proxy +@proxy() @IMPLEMENTS(Router) class DummyRouter extends SpyObject { noSuchMethod(m) { return super.noSuchMethod(m) } diff --git a/modules/angular2/test/router/router_spec.ts b/modules/angular2/test/router/router_spec.ts index 726a423046..bacf063268 100644 --- a/modules/angular2/test/router/router_spec.ts +++ b/modules/angular2/test/router/router_spec.ts @@ -161,7 +161,7 @@ export function main() { }); } -@proxy +@proxy() @IMPLEMENTS(RouterOutlet) class DummyOutlet extends SpyObject { noSuchMethod(m) { return super.noSuchMethod(m) } diff --git a/modules/angular2/test/services/ruler_spec.ts b/modules/angular2/test/services/ruler_spec.ts index 2f805331e7..d6a0bc8ef5 100644 --- a/modules/angular2/test/services/ruler_spec.ts +++ b/modules/angular2/test/services/ruler_spec.ts @@ -58,7 +58,7 @@ export function main() { }); } -@proxy +@proxy() @IMPLEMENTS(ElementRef) class SpyElementRef extends SpyObject { nativeElement; @@ -66,7 +66,7 @@ class SpyElementRef extends SpyObject { noSuchMethod(m) { return super.noSuchMethod(m) } } -@proxy +@proxy() @IMPLEMENTS(DomAdapter) class SpyDomAdapter extends SpyObject { constructor() { super(DomAdapter); } diff --git a/modules/angular2/test/test_lib/test_lib_spec.ts b/modules/angular2/test/test_lib/test_lib_spec.ts index be71ce3496..9c887eb8fa 100644 --- a/modules/angular2/test/test_lib/test_lib_spec.ts +++ b/modules/angular2/test/test_lib/test_lib_spec.ts @@ -21,7 +21,7 @@ class TestObj { someComplexFunc(a) { return a; } } -@proxy +@proxy() @IMPLEMENTS(TestObj) class SpyTestObj extends SpyObject { constructor() { super(TestObj); } diff --git a/modules/angular2/test/util/decorators_spec.ts b/modules/angular2/test/util/decorators_spec.ts index 85c734ea0a..e29e4ae910 100644 --- a/modules/angular2/test/util/decorators_spec.ts +++ b/modules/angular2/test/util/decorators_spec.ts @@ -69,8 +69,8 @@ export function main() { var i0, i1; var MyClass = (TestDecorator('test-works')) - .Class({ - extends: Class({ + .Class({ + extends: Class({ constructor: function() {}, extendWorks: function() { return 'extend ' + this.arg; } }), @@ -121,7 +121,7 @@ export function main() { }); it('should ensure that only Function|Arrays are supported', () => { - expect(() => { Class({constructor: function() {}, method: 'non_function'}); }) + expect(() => { Class({constructor: function() {}, method: 'non_function'}); }) .toThrowError( "Only Function or Array is supported in Class definition for key 'method' is 'non_function'"); }); diff --git a/npm-shrinkwrap.clean.json b/npm-shrinkwrap.clean.json index e13cc8fde6..4920a24851 100644 --- a/npm-shrinkwrap.clean.json +++ b/npm-shrinkwrap.clean.json @@ -10788,8 +10788,8 @@ } }, "typescript": { - "version": "1.5.0", - "resolved": "git://github.com/alexeagle/TypeScript.git#be9a7edff73ac2592e508732c771c85357041385" + "version": "1.5.3", + "resolved": "git://github.com/alexeagle/TypeScript.git#076bca017732cc9c44000ca0866199be64e21810" }, "vinyl": { "version": "0.4.6", diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index fe5d7334ba..28b0507fb9 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -3367,105 +3367,105 @@ }, "conventional-changelog": { "version": "0.2.1", - "from": "conventional-changelog@0.2.1", + "from": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-0.2.1.tgz", "resolved": "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-0.2.1.tgz", "dependencies": { "add-stream": { "version": "1.0.0", - "from": "add-stream@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz", "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz" }, "compare-func": { "version": "1.3.1", - "from": "compare-func@>=1.3.1 <2.0.0", + "from": "https://registry.npmjs.org/compare-func/-/compare-func-1.3.1.tgz", "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-1.3.1.tgz", "dependencies": { "array-ify": { "version": "1.0.0", - "from": "array-ify@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz" }, "dot-prop": { "version": "2.2.0", - "from": "dot-prop@>=2.0.0 <3.0.0", + "from": "https://registry.npmjs.org/dot-prop/-/dot-prop-2.2.0.tgz", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-2.2.0.tgz" } } }, "conventional-changelog-writer": { "version": "0.2.1", - "from": "conventional-changelog-writer@>=0.2.0 <0.3.0", + "from": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-0.2.1.tgz", "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-0.2.1.tgz", "dependencies": { "conventional-commits-filter": { "version": "0.1.0", - "from": "conventional-commits-filter@>=0.1.0 <0.2.0", + "from": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-0.1.0.tgz", "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-0.1.0.tgz", "dependencies": { "is-subset": { "version": "0.1.1", - "from": "is-subset@>=0.1.1 <0.2.0", + "from": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz", "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz" }, "modify-values": { "version": "1.0.0", - "from": "modify-values@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.0.tgz", "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.0.tgz" } } }, "handlebars": { "version": "3.0.3", - "from": "handlebars@>=3.0.3 <4.0.0", + "from": "https://registry.npmjs.org/handlebars/-/handlebars-3.0.3.tgz", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-3.0.3.tgz", "dependencies": { "optimist": { "version": "0.6.1", - "from": "optimist@>=0.6.1 <0.7.0", + "from": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", "dependencies": { "wordwrap": { "version": "0.0.3", - "from": "wordwrap@>=0.0.2 <0.1.0", + "from": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz" }, "minimist": { "version": "0.0.10", - "from": "minimist@>=0.0.1 <0.1.0", + "from": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz" } } }, "source-map": { "version": "0.1.43", - "from": "source-map@>=0.1.40 <0.2.0", + "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", "dependencies": { "amdefine": { "version": "1.0.0", - "from": "amdefine@>=0.0.4", + "from": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.0.tgz", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.0.tgz" } } }, "uglify-js": { "version": "2.3.6", - "from": "uglify-js@>=2.3.0 <2.4.0", + "from": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz", "dependencies": { "async": { "version": "0.2.10", - "from": "async@>=0.2.6 <0.3.0", + "from": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz" }, "optimist": { "version": "0.3.7", - "from": "optimist@>=0.3.5 <0.4.0", + "from": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", "dependencies": { "wordwrap": { "version": "0.0.3", - "from": "wordwrap@>=0.0.2 <0.1.0", + "from": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz" } } @@ -3476,12 +3476,12 @@ }, "split": { "version": "1.0.0", - "from": "split@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/split/-/split-1.0.0.tgz", "resolved": "https://registry.npmjs.org/split/-/split-1.0.0.tgz", "dependencies": { "through": { "version": "2.3.8", - "from": "through@>=2.0.0 <3.0.0", + "from": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" } } @@ -3490,46 +3490,46 @@ }, "conventional-commits-parser": { "version": "0.0.19", - "from": "conventional-commits-parser@0.0.19", + "from": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-0.0.19.tgz", "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-0.0.19.tgz", "dependencies": { "JSONStream": { "version": "1.0.4", - "from": "JSONStream@>=1.0.4 <2.0.0", + "from": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.0.4.tgz", "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.0.4.tgz", "dependencies": { "jsonparse": { "version": "1.0.0", - "from": "jsonparse@>=1.0.0 <1.1.0", + "from": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.0.0.tgz", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.0.0.tgz" }, "through": { "version": "2.3.8", - "from": "through@>=2.2.7 <3.0.0", + "from": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" } } }, "is-text-path": { "version": "1.0.1", - "from": "is-text-path@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz", "dependencies": { "text-extensions": { "version": "1.3.2", - "from": "text-extensions@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.3.2.tgz", "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.3.2.tgz" } } }, "split": { "version": "1.0.0", - "from": "split@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/split/-/split-1.0.0.tgz", "resolved": "https://registry.npmjs.org/split/-/split-1.0.0.tgz", "dependencies": { "through": { "version": "2.3.8", - "from": "through@>=2.0.0 <3.0.0", + "from": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" } } @@ -3538,51 +3538,51 @@ }, "dateformat": { "version": "1.0.11", - "from": "dateformat@>=1.0.11 <2.0.0", + "from": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.11.tgz", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.11.tgz", "dependencies": { "get-stdin": { "version": "4.0.1", - "from": "get-stdin@*", + "from": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" } } }, "get-pkg-repo": { "version": "0.1.0", - "from": "get-pkg-repo@>=0.1.0 <0.2.0", + "from": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-0.1.0.tgz", "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-0.1.0.tgz", "dependencies": { "hosted-git-info": { "version": "2.1.4", - "from": "hosted-git-info@>=2.1.4 <3.0.0", + "from": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.1.4.tgz", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.1.4.tgz" }, "normalize-package-data": { "version": "2.3.1", - "from": "normalize-package-data@>=2.3.0 <3.0.0", + "from": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.1.tgz", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.1.tgz", "dependencies": { "validate-npm-package-license": { "version": "2.0.0", - "from": "validate-npm-package-license@>=2.0.0 <3.0.0", + "from": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-2.0.0.tgz", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-2.0.0.tgz", "dependencies": { "spdx": { "version": "0.4.1", - "from": "spdx@>=0.4.0 <0.5.0", + "from": "https://registry.npmjs.org/spdx/-/spdx-0.4.1.tgz", "resolved": "https://registry.npmjs.org/spdx/-/spdx-0.4.1.tgz", "dependencies": { "spdx-license-ids": { "version": "1.0.2", - "from": "spdx-license-ids@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.2.tgz", "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.0.2.tgz" } } }, "spdx-correct": { "version": "1.0.0", - "from": "spdx-correct@>=1.0.0 <1.1.0", + "from": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.0.tgz", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.0.tgz" } } @@ -3593,201 +3593,201 @@ }, "git-raw-commits": { "version": "0.1.0", - "from": "git-raw-commits@0.1.0", + "from": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-0.1.0.tgz", "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-0.1.0.tgz", "dependencies": { "dargs": { "version": "4.0.1", - "from": "dargs@>=4.0.1 <5.0.0", + "from": "https://registry.npmjs.org/dargs/-/dargs-4.0.1.tgz", "resolved": "https://registry.npmjs.org/dargs/-/dargs-4.0.1.tgz", "dependencies": { "number-is-nan": { "version": "1.0.0", - "from": "number-is-nan@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz" } } }, "lodash.template": { "version": "3.6.2", - "from": "lodash.template@>=3.6.1 <4.0.0", + "from": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", "dependencies": { "lodash._basecopy": { "version": "3.0.1", - "from": "lodash._basecopy@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz" }, "lodash._basetostring": { "version": "3.0.1", - "from": "lodash._basetostring@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz" }, "lodash._basevalues": { "version": "3.0.0", - "from": "lodash._basevalues@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz" }, "lodash._isiterateecall": { "version": "3.0.9", - "from": "lodash._isiterateecall@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz" }, "lodash._reinterpolate": { "version": "3.0.0", - "from": "lodash._reinterpolate@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz" }, "lodash.escape": { "version": "3.0.0", - "from": "lodash.escape@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.0.0.tgz", "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.0.0.tgz" }, "lodash.keys": { "version": "3.1.2", - "from": "lodash.keys@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", "dependencies": { "lodash._getnative": { "version": "3.9.1", - "from": "lodash._getnative@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz" }, "lodash.isarguments": { "version": "3.0.4", - "from": "lodash.isarguments@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.0.4.tgz", "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.0.4.tgz" }, "lodash.isarray": { "version": "3.0.4", - "from": "lodash.isarray@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz" } } }, "lodash.restparam": { "version": "3.6.1", - "from": "lodash.restparam@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz" }, "lodash.templatesettings": { "version": "3.1.0", - "from": "lodash.templatesettings@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.0.tgz", "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.0.tgz" } } }, "split2": { "version": "1.0.0", - "from": "split2@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/split2/-/split2-1.0.0.tgz", "resolved": "https://registry.npmjs.org/split2/-/split2-1.0.0.tgz" } } }, "git-semver-tags": { "version": "1.0.0", - "from": "git-semver-tags@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-1.0.0.tgz", "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-1.0.0.tgz" }, "lodash": { "version": "3.10.0", - "from": "lodash@>=3.9.3 <4.0.0", + "from": "https://registry.npmjs.org/lodash/-/lodash-3.10.0.tgz", "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.0.tgz" }, "meow": { "version": "3.3.0", - "from": "meow@>=3.3.0 <4.0.0", + "from": "https://registry.npmjs.org/meow/-/meow-3.3.0.tgz", "resolved": "https://registry.npmjs.org/meow/-/meow-3.3.0.tgz", "dependencies": { "camelcase-keys": { "version": "1.0.0", - "from": "camelcase-keys@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-1.0.0.tgz", "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-1.0.0.tgz", "dependencies": { "camelcase": { "version": "1.1.0", - "from": "camelcase@>=1.0.1 <2.0.0", + "from": "https://registry.npmjs.org/camelcase/-/camelcase-1.1.0.tgz", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.1.0.tgz" }, "map-obj": { "version": "1.0.1", - "from": "map-obj@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz" } } }, "object-assign": { "version": "3.0.0", - "from": "object-assign@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz" } } }, "q": { "version": "1.4.1", - "from": "q@>=1.4.1 <2.0.0", + "from": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz" }, "semver": { "version": "5.0.1", - "from": "semver@>=5.0.1 <6.0.0", + "from": "https://registry.npmjs.org/semver/-/semver-5.0.1.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-5.0.1.tgz" }, "tempfile": { "version": "1.1.1", - "from": "tempfile@>=1.1.1 <2.0.0", + "from": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-1.1.1.tgz", "dependencies": { "os-tmpdir": { "version": "1.0.1", - "from": "os-tmpdir@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.1.tgz", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.1.tgz" }, "uuid": { "version": "2.0.1", - "from": "uuid@>=2.0.1 <3.0.0", + "from": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz" } } }, "through2": { "version": "2.0.0", - "from": "through2@>=2.0.0 <3.0.0", + "from": "https://registry.npmjs.org/through2/-/through2-2.0.0.tgz", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.0.tgz", "dependencies": { "readable-stream": { "version": "2.0.2", - "from": "readable-stream@>=2.0.0 <2.1.0", + "from": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.2.tgz", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.2.tgz", "dependencies": { "core-util-is": { "version": "1.0.1", - "from": "core-util-is@>=1.0.0 <1.1.0", + "from": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz" }, "inherits": { "version": "2.0.1", - "from": "inherits@>=2.0.1 <2.1.0", + "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" }, "isarray": { "version": "0.0.1", - "from": "isarray@0.0.1", + "from": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" }, "process-nextick-args": { "version": "1.0.2", - "from": "process-nextick-args@>=1.0.0 <1.1.0", + "from": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.2.tgz", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.2.tgz" }, "string_decoder": { "version": "0.10.31", - "from": "string_decoder@>=0.10.0 <0.11.0", + "from": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" }, "util-deprecate": { "version": "1.0.1", - "from": "util-deprecate@>=1.0.1 <1.1.0", + "from": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.1.tgz", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.1.tgz" } } @@ -15752,7 +15752,7 @@ }, "ts2dart": { "version": "0.7.0", - "from": "ts2dart@0.7.0", + "from": "https://registry.npmjs.org/ts2dart/-/ts2dart-0.7.0.tgz", "resolved": "https://registry.npmjs.org/ts2dart/-/ts2dart-0.7.0.tgz", "dependencies": { "source-map": { @@ -16679,9 +16679,9 @@ } }, "typescript": { - "version": "1.5.0", - "from": "git://github.com/alexeagle/TypeScript.git#be9a7edff73ac2592e508732c771c85357041385", - "resolved": "git://github.com/alexeagle/TypeScript.git#be9a7edff73ac2592e508732c771c85357041385" + "version": "1.5.3", + "from": "alexeagle/TypeScript#1.5_error_is_class", + "resolved": "git://github.com/alexeagle/TypeScript.git#076bca017732cc9c44000ca0866199be64e21810" }, "vinyl": { "version": "0.4.6", diff --git a/package.json b/package.json index c11a9c6339..e52dae1dc8 100644 --- a/package.json +++ b/package.json @@ -127,7 +127,7 @@ "through2": "^0.6.1", "ts2dart": "^0.7.0", "tsd": "^0.6.3", - "typescript": "alexeagle/TypeScript#error_is_class", + "typescript": "alexeagle/TypeScript#1.5_error_is_class", "vinyl": "^0.4.6", "walk-sync": "^0.1.3", "which": "~1", diff --git a/tools/broccoli/trees/node_tree.ts b/tools/broccoli/trees/node_tree.ts index 70fcba72b5..1e73fc4826 100644 --- a/tools/broccoli/trees/node_tree.ts +++ b/tools/broccoli/trees/node_tree.ts @@ -30,6 +30,7 @@ module.exports = function makeNodeTree(destinationPath) { var typescriptTree = compileWithTypescript(modulesTree, { allowNonTsExtensions: false, emitDecoratorMetadata: true, + experimentalDecorators: true, declaration: true, mapRoot: '', /* force sourcemaps to use relative path */ module: 'commonjs',