Adds a gulp task which builds the .ts files (in the cjs build only). The new files have extension .ts since they are now valid typescript. Unfortunately until Typescript can emit System.require, we have to keep the old .es6 version so traceur works inside the Karma preprocessor. This should be fixed soon.
77 lines
2.2 KiB
TypeScript
77 lines
2.2 KiB
TypeScript
// Extend the ES5 standard library with some ES6 features we polyfill at runtime
|
|
// by loading traceur-runtime.js
|
|
|
|
// These are mostly copied from lib.es6.d.ts
|
|
|
|
interface String {
|
|
/**
|
|
* Returns true if the sequence of elements of searchString converted to a String is the
|
|
* same as the corresponding elements of this object (converted to a String) starting at
|
|
* position. Otherwise returns false.
|
|
*/
|
|
startsWith(searchString: string, position ?: number): boolean;
|
|
}
|
|
|
|
interface NumberConstructor {
|
|
/**
|
|
* Returns true if the value passed is an integer, false otherwise.
|
|
* @param number A numeric value.
|
|
*/
|
|
isInteger(number: number): boolean;
|
|
}
|
|
|
|
interface Array<T> {
|
|
/**
|
|
* Returns the this object after filling the section identified by start and end with value
|
|
* @param value value to fill array section with
|
|
* @param start index to start filling the array at. If start is negative, it is treated as
|
|
* length+start where length is the length of the array.
|
|
* @param end index to stop filling the array at. If end is negative, it is treated as
|
|
* length+end.
|
|
*/
|
|
fill(value: T, start ?: number, end ?: number): T[];
|
|
}
|
|
|
|
// Copied from lib.dom.d.ts and modified
|
|
interface Map<K, V> {
|
|
clear(): void;
|
|
delete (key: K): boolean;
|
|
forEach(callbackfn: (value: V, index: K, map: Map<K, V>) => void, thisArg ?: any): void;
|
|
get(key: K): V;
|
|
has(key: K): boolean;
|
|
set(key: K, value: V): Map<K, V>;
|
|
size: number;
|
|
}
|
|
declare var Map: {
|
|
new<K, V>(): Map<K, V>;
|
|
// alexeagle: PATCHED
|
|
new<K, V>(m: Map<K, V>): Map<K, V>;
|
|
new<K, V>(l: List<any>): Map<K, V>;
|
|
prototype: Map<any, any>;
|
|
};
|
|
|
|
interface Set<T> {
|
|
add(value: T): Set<T>;
|
|
clear(): void;
|
|
delete (value: T): boolean;
|
|
forEach(callbackfn: (value: T, index: T, set: Set<T>) => void, thisArg ?: any): void;
|
|
has(value: T): boolean;
|
|
size: number;
|
|
}
|
|
declare var Set: {
|
|
new<T>(): Set<T>;
|
|
// alexeagle PATCHED
|
|
new<T>(s: Set<T>): Set<T>;
|
|
new<T>(l: List<T>): Set<T>;
|
|
prototype: Set<any>;
|
|
};
|
|
|
|
interface SymbolConstructor {
|
|
/**
|
|
* A method that returns the default iterator for an object.Called by the semantics of the
|
|
* for-of statement.
|
|
*/
|
|
iterator: symbol;
|
|
}
|
|
declare var Symbol: SymbolConstructor;
|