MCPcopy
hub / github.com/wilsonpage/fastdom / create

Function create

extensions/fastdom-promised.js:55–70  ·  view source on GitHub ↗

* Create a fastdom task wrapped in * a 'cancellable' Promise. * * @param {FastDom} fastdom * @param {String} type - 'measure'|'mutate' * @param {Function} fn * @return {Promise}

(promised, type, fn, ctx)

Source from the content-addressed store, hash-verified

53 * @return {Promise}
54 */
55function create(promised, type, fn, ctx) {
56 var tasks = promised._tasks;
57 var fastdom = promised.fastdom;
58 var task;
59
60 var promise = new Promise(function(resolve, reject) {
61 task = fastdom[type](function() {
62 tasks.delete(promise);
63 try { resolve(ctx ? fn.call(ctx) : fn()); }
64 catch (e) { reject(e); }
65 }, ctx);
66 });
67
68 tasks.set(promise, task);
69 return promise;
70}
71
72// Expose to CJS, AMD or global
73if ((typeof define)[0] == 'f') define(function() { return exports; });

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…