UNPKG

ngx-decorate

Version:

Useful decorators for Angular 2 and above

65 lines 1.91 kB
import * as tslib_1 from "tslib"; import { _subscrToSubs, _unsubscribe } from '../lib/symbols'; /** @internal */ function unsubArray(props) { var e_1, _a; try { for (var props_1 = tslib_1.__values(props), props_1_1 = props_1.next(); !props_1_1.done; props_1_1 = props_1.next()) { var sub = props_1_1.value; sub.unsubscribe(); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (props_1_1 && !props_1_1.done && (_a = props_1.return)) _a.call(props_1); } finally { if (e_1) throw e_1.error; } } } /** @internal */ function processProp(prop) { if (prop) { if (Array.isArray(prop)) { unsubArray(prop); } else { prop.unsubscribe(); } } } /** @internal */ export function unsubscribe(self) { var e_2, _a, e_3, _b; if (self[_unsubscribe]) { try { for (var _c = tslib_1.__values(self[_unsubscribe]), _d = _c.next(); !_d.done; _d = _c.next()) { var prop = _d.value; processProp(self[prop]); } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (_d && !_d.done && (_a = _c.return)) _a.call(_c); } finally { if (e_2) throw e_2.error; } } } if (self[_subscrToSubs]) { try { for (var _e = tslib_1.__values(self[_subscrToSubs]), _f = _e.next(); !_f.done; _f = _e.next()) { var prop = _f.value; processProp(prop); } } catch (e_3_1) { e_3 = { error: e_3_1 }; } finally { try { if (_f && !_f.done && (_b = _e.return)) _b.call(_e); } finally { if (e_3) throw e_3.error; } } } } //# sourceMappingURL=unsubscribe.js.map