@flexis/ui
Version:
Styleless React Components
23 lines • 1.55 kB
JavaScript
/**
* Decortor for wrap class method around `setImmediate`.
* @return Method decorator.
*/
export function SetImmediate() {
return (_, __, descriptor) => {
const method = descriptor.value;
descriptor.value =
function wrapper(...args) {
return new Promise((resolve, reject) => {
setImmediate(() => {
try {
resolve(Reflect.apply(method, this, args));
}
catch (err) {
reject(err);
}
});
});
};
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2V0SW1tZWRpYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvU2V0SW1tZWRpYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sVUFBVSxZQUFZO0lBQzNCLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLFVBQThCLEVBQUUsRUFBRTtRQUVoRCxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1FBRWhDLFVBQVUsQ0FBQyxLQUFLO1lBQ2hCLFNBQVMsT0FBTyxDQUFDLEdBQUcsSUFBSTtnQkFDdkIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtvQkFDdEMsWUFBWSxDQUFDLEdBQUcsRUFBRTt3QkFDakIsSUFBSTs0QkFDSCxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7eUJBQzNDO3dCQUFDLE9BQU8sR0FBRyxFQUFFOzRCQUNiLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQzt5QkFDWjtvQkFDRixDQUFDLENBQUMsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FBQztZQUNKLENBQUMsQ0FBQztJQUNILENBQUMsQ0FBQztBQUNILENBQUMifQ==