@flexis/ui
Version:
Styleless React Components
32 lines (28 loc) • 1.73 kB
JavaScript
import _Reflect$apply from "@babel/runtime-corejs3/core-js-stable/reflect/apply";
import _setImmediate from "@babel/runtime-corejs3/core-js-stable/set-immediate";
import _Promise from "@babel/runtime-corejs3/core-js-stable/promise";
/**
* Decortor for wrap class method around `setImmediate`.
* @return Method decorator.
*/
export function SetImmediate() {
return function (_, __, descriptor) {
var method = descriptor.value;
descriptor.value = function wrapper() {
var _this = this;
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return new _Promise(function (resolve, reject) {
_setImmediate(function () {
try {
resolve(_Reflect$apply(method, _this, args));
} catch (err) {
reject(err);
}
});
});
};
};
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL1NldEltbWVkaWF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7QUFJQSxPQUFNLFNBQVUsWUFBVixHQUFzQjtBQUMzQixTQUFPLFVBQUMsQ0FBRCxFQUFJLEVBQUosRUFBUSxVQUFSLEVBQTBDO0FBRWhELFFBQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxLQUExQjs7QUFFQSxJQUFBLFVBQVUsQ0FBQyxLQUFYLEdBQ0EsU0FBUyxPQUFULEdBQXdCO0FBQUE7O0FBQUEsd0NBQUosSUFBSTtBQUFKLFFBQUEsSUFBSTtBQUFBOztBQUN2QixhQUFPLGFBQVksVUFBQyxPQUFELEVBQVUsTUFBVixFQUFvQjtBQUN0QyxzQkFBYSxZQUFLO0FBQ2pCLGNBQUk7QUFDSCxZQUFBLE9BQU8sQ0FBQyxlQUFjLE1BQWQsRUFBc0IsS0FBdEIsRUFBNEIsSUFBNUIsQ0FBRCxDQUFQO0FBQ0EsV0FGRCxDQUVFLE9BQU8sR0FBUCxFQUFZO0FBQ2IsWUFBQSxNQUFNLENBQUMsR0FBRCxDQUFOO0FBQ0E7QUFDRCxTQU5EO0FBT0EsT0FSTSxDQUFQO0FBU0EsS0FYRDtBQVlBLEdBaEJEO0FBaUJBIiwic291cmNlUm9vdCI6IiJ9