es7-typescript-starter
Version:
An es7/typescript starter for building javascript libraries
54 lines • 2.4 kB
JavaScript
import * as tslib_1 from "tslib";
/**
* A sample async function (to demo Typescript's es7 async/await downleveling).
*
* ### Example (es imports)
* ```js
* import { asyncABC } from 'es7-typescript-starter'
* console.log(await asyncABC())
* // => ['a','b','c']
* ```
*
* ### Example (commonjs)
* ```js
* var double = require('es7-typescript-starter').asyncABC;
* asyncABC().then(console.log);
* // => ['a','b','c']
* ```
*
* @returns a Promise which should contain `['a','b','c']`
*/
/**
* A sample async function (to demo Typescript's es7 async/await downleveling).
*
* ### Example (es imports)
* ```js
* import { asyncABC } from 'es7-typescript-starter'
* console.log(await asyncABC())
* // => ['a','b','c']
* ```
*
* ### Example (commonjs)
* ```js
* var double = require('es7-typescript-starter').asyncABC;
* asyncABC().then(console.log);
* // => ['a','b','c']
* ```
*
* @returns a Promise which should contain `['a','b','c']`
*/ export function asyncABC() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
function somethingSlow(index) {
let storage = 'abc'.charAt(index);
return new Promise(resolve => {
// here we pretend to wait on the network
setTimeout(() => resolve(storage), 0);
});
}
let a = yield somethingSlow(0);
let b = yield somethingSlow(1);
let c = yield somethingSlow(2);
return [a, b, c];
});
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmNPcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2FzeW5jT3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHO0FBQ0gsQUFuQkE7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRyxDQUNILE1BQU07O1FBQ0osdUJBQXVCLEtBQWdCO1lBQ3JDLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDakMsTUFBTSxDQUFDLElBQUksT0FBTyxDQUFTLE9BQU87Z0JBQ2hDLHlDQUF5QztnQkFDekMsVUFBVSxDQUFDLE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQztRQUNELElBQUksQ0FBQyxHQUFHLE1BQU0sYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlCLElBQUksQ0FBQyxHQUFHLE1BQU0sYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlCLElBQUksQ0FBQyxHQUFHLE1BQU0sYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDbEIsQ0FBQztDQUFBIn0=