From 56ad17659ca740f5ac2becfd6dae1aaf868a49ef Mon Sep 17 00:00:00 2001 From: TeamworkGuy2 Date: Tue, 21 Jun 2016 21:42:55 +0000 Subject: [PATCH 1/2] Added babelify definition --- babelify/babelify-tests.ts | 23 +++++++++++++++++ babelify/babelify.d.ts | 53 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 babelify/babelify-tests.ts create mode 100644 babelify/babelify.d.ts diff --git a/babelify/babelify-tests.ts b/babelify/babelify-tests.ts new file mode 100644 index 0000000000..6ace8462a9 --- /dev/null +++ b/babelify/babelify-tests.ts @@ -0,0 +1,23 @@ +/// + +import babelify = require("babelify"); + +module BabelifyTest { + + export function whatDidTheEs6Say(srcPath: string, opts?: babelify.BabelifyOptions) { + opts.extensions = opts.extensions || undefined; + opts.sourceMapsAbsolute = opts.sourceMapsAbsolute || false; + var dst: NodeJS.ReadWriteStream; + + babelify(""); // 'opts' are optional + + babelify(srcPath, opts).on("error", function (err: any) { + console.error("babelify error: ", err); + }); + + babelify.configure(opts)(srcPath).pipe(dst); + } + +} + +export = BabelifyTest; \ No newline at end of file diff --git a/babelify/babelify.d.ts b/babelify/babelify.d.ts new file mode 100644 index 0000000000..daf380f065 --- /dev/null +++ b/babelify/babelify.d.ts @@ -0,0 +1,53 @@ +// Type definitions for babelify v7.3.0 +// Project: https://github.com/babel/babelify +// Definitions by: TeamworkGuy2 +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// +/// + +/** Browserify transform for Babel + */ +declare module 'babelify' { + import stream = require("stream"); + import babel = require("babel-core"); + + + /** In addition to the various purposes documented here, all of the babelify options are passed to babel which passes them on to babel.transform() when each file is transformed */ + interface babelifyOptions extends babel.TransformOptions { + /** These are passed to babel.util.canCompile() for each filename + * default: null (see babel. + */ + extensions?: string | string[]; + + /** if true, a 'sourceFileName' property with a value equal to the current file being transformed is included with the options passed to babel.transform() + * default: false + */ + sourceMapsAbsolute?: boolean; + } + + + class babelifyObject extends stream.Transform { + + _transform(buf: string | Buffer, encoding: string, callback: () => void): void; + + _flush(callback: () => void): void; + } + + + function Babelify(filename: string, opts?: babelifyOptions): babelifyObject; + + module Babelify { + export interface BabelifyConstructor { + (filename: string, opts: babelifyOptions): babelifyObject; + } + + export interface BabelifyOptions extends babelifyOptions { } + + export class BabelifyObject extends babelifyObject { } + + export function configure(opts: babelifyOptions): (filename: string) => babelifyObject; + } + + export = Babelify; +} From bd5ce2d36e55911ad469fbedbc483e1005384aef Mon Sep 17 00:00:00 2001 From: TeamworkGuy2 Date: Tue, 21 Jun 2016 21:58:37 +0000 Subject: [PATCH 2/2] simplify interfaces --- babelify/babelify.d.ts | 47 ++++++++++++++++++------------------------ 1 file changed, 20 insertions(+), 27 deletions(-) diff --git a/babelify/babelify.d.ts b/babelify/babelify.d.ts index daf380f065..2637814a64 100644 --- a/babelify/babelify.d.ts +++ b/babelify/babelify.d.ts @@ -13,40 +13,33 @@ declare module 'babelify' { import babel = require("babel-core"); - /** In addition to the various purposes documented here, all of the babelify options are passed to babel which passes them on to babel.transform() when each file is transformed */ - interface babelifyOptions extends babel.TransformOptions { - /** These are passed to babel.util.canCompile() for each filename - * default: null (see babel. - */ - extensions?: string | string[]; - - /** if true, a 'sourceFileName' property with a value equal to the current file being transformed is included with the options passed to babel.transform() - * default: false - */ - sourceMapsAbsolute?: boolean; - } - - - class babelifyObject extends stream.Transform { - - _transform(buf: string | Buffer, encoding: string, callback: () => void): void; - - _flush(callback: () => void): void; - } - - - function Babelify(filename: string, opts?: babelifyOptions): babelifyObject; + function Babelify(filename: string, opts?: Babelify.BabelifyOptions): Babelify.BabelifyObject; module Babelify { + export interface BabelifyConstructor { - (filename: string, opts: babelifyOptions): babelifyObject; + (filename: string, opts: Babelify.BabelifyOptions): Babelify.BabelifyObject; } - export interface BabelifyOptions extends babelifyOptions { } + /** In addition to the various purposes documented here, all of the babelify options are passed to babel which passes them on to babel.transform() when each file is transformed */ + export interface BabelifyOptions extends babel.TransformOptions { + /** These are passed to babel.util.canCompile() for each filename + * default: null + */ + extensions?: string | string[]; - export class BabelifyObject extends babelifyObject { } + /** if true, a 'sourceFileName' property with a value equal to the current file being transformed is included with the options passed to babel.transform() + * default: false + */ + sourceMapsAbsolute?: boolean; + } - export function configure(opts: babelifyOptions): (filename: string) => babelifyObject; + export class BabelifyObject extends stream.Transform { + _transform(buf: string | Buffer, encoding: string, callback: () => void): void; + _flush(callback: () => void): void; + } + + export function configure(opts: Babelify.BabelifyOptions): (filename: string) => Babelify.BabelifyObject; } export = Babelify;