made with esnextbin
Last active
December 10, 2016 16:21
-
-
Save davidchase/d183ffbfa498f4606934d35599ce7977 to your computer and use it in GitHub Desktop.
esnextbin sketch
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!doctype html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<title>ESNextbin Sketch</title> | |
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.min.css"> | |
</head> | |
<body> | |
<input type="text" value="Some Value" class="inputy" /> | |
</body> | |
</html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Task from 'data.task' | |
const tryCatch = function(f){ | |
try { | |
return f() | |
} catch (err) { | |
return err | |
} | |
} | |
const promiseToTask = promise => { | |
return new Task((rej, res) => { | |
return promise.then(res).catch(rej) | |
}) | |
} | |
const e = tryCatch(async() => await(await fetch('https://jsonplaceholder.typicode.com/users')).json()) | |
promiseToTask(e).rejectedMap(e => 'oops').fork(console.warn, console.log) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"name": "esnextbin-sketch", | |
"version": "0.0.0", | |
"dependencies": { | |
"data.task": "3.1.1", | |
"babel-runtime": "6.20.0" | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
'use strict'; | |
var _regenerator = require('babel-runtime/regenerator'); | |
var _regenerator2 = _interopRequireDefault(_regenerator); | |
var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator'); | |
var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2); | |
var _data = require('data.task'); | |
var _data2 = _interopRequireDefault(_data); | |
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | |
var tryCatch = function tryCatch(f) { | |
try { | |
return f(); | |
} catch (err) { | |
return err; | |
} | |
}; | |
var promiseToTask = function promiseToTask(promise) { | |
return new _data2.default(function (rej, res) { | |
return promise.then(res).catch(rej); | |
}); | |
}; | |
var e = tryCatch((0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee() { | |
return _regenerator2.default.wrap(function _callee$(_context) { | |
while (1) { | |
switch (_context.prev = _context.next) { | |
case 0: | |
_context.next = 2; | |
return fetch('https://jsonplaceholder.typicode.com/users'); | |
case 2: | |
_context.next = 4; | |
return _context.sent.json(); | |
case 4: | |
return _context.abrupt('return', _context.sent); | |
case 5: | |
case 'end': | |
return _context.stop(); | |
} | |
} | |
}, _callee, undefined); | |
}))); | |
promiseToTask(e).rejectedMap(function (e) { | |
return 'oops'; | |
}).fork(console.warn, console.log); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment