diff --git a/scriptjs/scriptjs-tests.ts b/scriptjs/scriptjs-tests.ts new file mode 100644 index 0000000000..4da747c978 --- /dev/null +++ b/scriptjs/scriptjs-tests.ts @@ -0,0 +1,29 @@ +/// + +import * as $script from 'scriptjs'; + +const callback = (): void => console.log('done'); + +function main(): void { + $script('foo.js', callback); + $script(['foo.js', 'bar.js'], callback); + + $script('foo.js', 'foo', callback); + $script(['foo.js', 'bar.js'], 'bundle', callback); + + $script('foo', callback); + $script('bundle', callback); + + $script.ready('foo', callback); + $script.ready('bundle', callback); + + $script.ready(['foo', 'bar', 'thunk'], callback, (missing: string[]): void => console.log('missing deps:', missing)); + + $script.path('/js/modules/'); + + $script.get('http://example.com/base.js', callback); + + $script.urlArgs('key=value&foo=bar'); + + $script.order(['foo.js', 'bar.js'], 'bundle', callback); +} diff --git a/scriptjs/scriptjs.d.ts b/scriptjs/scriptjs.d.ts new file mode 100644 index 0000000000..aa76b4517c --- /dev/null +++ b/scriptjs/scriptjs.d.ts @@ -0,0 +1,18 @@ +// Type definitions for scriptjs +// Project: https://github.com/ded/script.js +// Definitions by: Steve Lam +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +interface $script { + (paths:string | string[], idOrDone:string | (() => void), optDone?:() => void): $script; + get(path:string, fn:() => void): void; + order(scripts:string[], id:string, done:() => void): void; + path(p:string): void; + urlArgs(str:string): void; + ready(deps:string | string[], ready:() => void, req?:(missing:string[]) => void): $script; +} + +declare module 'scriptjs'{ + var $script: $script; + export = $script; +}