From 4f7339468c742999b04c526ce7df395015d03b40 Mon Sep 17 00:00:00 2001 From: Tung Nguyen Date: Thu, 1 Jun 2023 04:58:14 +0700 Subject: [PATCH] chore: feature updates - add a flag to enable/disable queue auto processing - add queue button placement setting - add a flag to hide the custom checkpoint select - rewrite frontend code in typescript - extract serialization logic to task_helpers - bugs fixing --- .gitignore | 3 +- javascript/extension.mjs | 34722 +++++++++++++++++++++++++++++++++++ scripts/api.py | 19 +- scripts/db/__init__.py | 6 +- scripts/db/task.py | 6 + scripts/models.py | 2 + scripts/task_helpers.py | 441 + scripts/task_runner.py | 203 +- scripts/task_scheduler.py | 107 +- style.css | 431 +- ui/.eslintrc.cjs | 14 + ui/.gitignore | 24 + ui/package.json | 35 + ui/postcss.config.js | 6 + ui/src/extension/index.css | 160 + ui/src/extension/index.ts | 470 + ui/src/vite-env.d.ts | 1 + ui/tailwind.config.js | 8 + ui/tsconfig.json | 25 + ui/tsconfig.node.json | 10 + ui/vite.config.ts | 21 + ui/vite.extension.ts | 15 + ui/yarn.lock | 1904 ++ 23 files changed, 38042 insertions(+), 591 deletions(-) create mode 100644 javascript/extension.mjs create mode 100644 scripts/task_helpers.py create mode 100644 ui/.eslintrc.cjs create mode 100644 ui/.gitignore create mode 100644 ui/package.json create mode 100644 ui/postcss.config.js create mode 100644 ui/src/extension/index.css create mode 100644 ui/src/extension/index.ts create mode 100644 ui/src/vite-env.d.ts create mode 100644 ui/tailwind.config.js create mode 100644 ui/tsconfig.json create mode 100644 ui/tsconfig.node.json create mode 100644 ui/vite.config.ts create mode 100644 ui/vite.extension.ts create mode 100644 ui/yarn.lock diff --git a/.gitignore b/.gitignore index 6ec740a..319c701 100644 --- a/.gitignore +++ b/.gitignore @@ -36,5 +36,4 @@ notification.mp3 *.sql *.db *.sqlite -*.sqlite3 -tailwind.* \ No newline at end of file +*.sqlite3 \ No newline at end of file diff --git a/javascript/extension.mjs b/javascript/extension.mjs new file mode 100644 index 0000000..ac056d6 --- /dev/null +++ b/javascript/extension.mjs @@ -0,0 +1,34722 @@ +var Cn = function(n, t) { + return Cn = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, r) { + e.__proto__ = r; + } || function(e, r) { + for (var i in r) + Object.prototype.hasOwnProperty.call(r, i) && (e[i] = r[i]); + }, Cn(n, t); +}; +function _t(n, t) { + if (typeof t != "function" && t !== null) + throw new TypeError("Class extends value " + String(t) + " is not a constructor or null"); + Cn(n, t); + function e() { + this.constructor = n; + } + n.prototype = t === null ? Object.create(t) : (e.prototype = t.prototype, new e()); +} +function Ou(n, t, e, r) { + function i(o) { + return o instanceof e ? o : new e(function(s) { + s(o); + }); + } + return new (e || (e = Promise))(function(o, s) { + function a(c) { + try { + u(r.next(c)); + } catch (p) { + s(p); + } + } + function l(c) { + try { + u(r.throw(c)); + } catch (p) { + s(p); + } + } + function u(c) { + c.done ? o(c.value) : i(c.value).then(a, l); + } + u((r = r.apply(n, t || [])).next()); + }); +} +function Ma(n, t) { + var e = { label: 0, sent: function() { + if (o[0] & 1) + throw o[1]; + return o[1]; + }, trys: [], ops: [] }, r, i, o, s; + return s = { next: a(0), throw: a(1), return: a(2) }, typeof Symbol == "function" && (s[Symbol.iterator] = function() { + return this; + }), s; + function a(u) { + return function(c) { + return l([u, c]); + }; + } + function l(u) { + if (r) + throw new TypeError("Generator is already executing."); + for (; s && (s = 0, u[0] && (e = 0)), e; ) + try { + if (r = 1, i && (o = u[0] & 2 ? i.return : u[0] ? i.throw || ((o = i.return) && o.call(i), 0) : i.next) && !(o = o.call(i, u[1])).done) + return o; + switch (i = 0, o && (u = [u[0] & 2, o.value]), u[0]) { + case 0: + case 1: + o = u; + break; + case 4: + return e.label++, { value: u[1], done: !1 }; + case 5: + e.label++, i = u[1], u = [0]; + continue; + case 7: + u = e.ops.pop(), e.trys.pop(); + continue; + default: + if (o = e.trys, !(o = o.length > 0 && o[o.length - 1]) && (u[0] === 6 || u[0] === 2)) { + e = 0; + continue; + } + if (u[0] === 3 && (!o || u[1] > o[0] && u[1] < o[3])) { + e.label = u[1]; + break; + } + if (u[0] === 6 && e.label < o[1]) { + e.label = o[1], o = u; + break; + } + if (o && e.label < o[2]) { + e.label = o[2], e.ops.push(u); + break; + } + o[2] && e.ops.pop(), e.trys.pop(); + continue; + } + u = t.call(n, e); + } catch (c) { + u = [6, c], i = 0; + } finally { + r = o = 0; + } + if (u[0] & 5) + throw u[1]; + return { value: u[0] ? u[1] : void 0, done: !0 }; + } +} +function tr(n) { + var t = typeof Symbol == "function" && Symbol.iterator, e = t && n[t], r = 0; + if (e) + return e.call(n); + if (n && typeof n.length == "number") + return { + next: function() { + return n && r >= n.length && (n = void 0), { value: n && n[r++], done: !n }; + } + }; + throw new TypeError(t ? "Object is not iterable." : "Symbol.iterator is not defined."); +} +function St(n, t) { + var e = typeof Symbol == "function" && n[Symbol.iterator]; + if (!e) + return n; + var r = e.call(n), i, o = [], s; + try { + for (; (t === void 0 || t-- > 0) && !(i = r.next()).done; ) + o.push(i.value); + } catch (a) { + s = { error: a }; + } finally { + try { + i && !i.done && (e = r.return) && e.call(r); + } finally { + if (s) + throw s.error; + } + } + return o; +} +function Gt(n, t, e) { + if (e || arguments.length === 2) + for (var r = 0, i = t.length, o; r < i; r++) + (o || !(r in t)) && (o || (o = Array.prototype.slice.call(t, 0, r)), o[r] = t[r]); + return n.concat(o || Array.prototype.slice.call(t)); +} +function Xt(n) { + return this instanceof Xt ? (this.v = n, this) : new Xt(n); +} +function Tu(n, t, e) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var r = e.apply(n, t || []), i, o = []; + return i = {}, s("next"), s("throw"), s("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function s(d) { + r[d] && (i[d] = function(v) { + return new Promise(function(f, y) { + o.push([d, v, f, y]) > 1 || a(d, v); + }); + }); + } + function a(d, v) { + try { + l(r[d](v)); + } catch (f) { + p(o[0][3], f); + } + } + function l(d) { + d.value instanceof Xt ? Promise.resolve(d.value.v).then(u, c) : p(o[0][2], d); + } + function u(d) { + a("next", d); + } + function c(d) { + a("throw", d); + } + function p(d, v) { + d(v), o.shift(), o.length && a(o[0][0], o[0][1]); + } +} +function bu(n) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var t = n[Symbol.asyncIterator], e; + return t ? t.call(n) : (n = typeof tr == "function" ? tr(n) : n[Symbol.iterator](), e = {}, r("next"), r("throw"), r("return"), e[Symbol.asyncIterator] = function() { + return this; + }, e); + function r(o) { + e[o] = n[o] && function(s) { + return new Promise(function(a, l) { + s = n[o](s), i(a, l, s.done, s.value); + }); + }; + } + function i(o, s, a, l) { + Promise.resolve(l).then(function(u) { + o({ value: u, done: a }); + }, s); + } +} +function ee(n) { + return typeof n == "function"; +} +function Ia(n) { + var t = function(r) { + Error.call(r), r.stack = new Error().stack; + }, e = n(t); + return e.prototype = Object.create(Error.prototype), e.prototype.constructor = e, e; +} +var yo = Ia(function(n) { + return function(e) { + n(this), this.message = e ? e.length + ` errors occurred during unsubscription: +` + e.map(function(r, i) { + return i + 1 + ") " + r.toString(); + }).join(` + `) : "", this.name = "UnsubscriptionError", this.errors = e; + }; +}); +function Mi(n, t) { + if (n) { + var e = n.indexOf(t); + 0 <= e && n.splice(e, 1); + } +} +var Ur = function() { + function n(t) { + this.initialTeardown = t, this.closed = !1, this._parentage = null, this._finalizers = null; + } + return n.prototype.unsubscribe = function() { + var t, e, r, i, o; + if (!this.closed) { + this.closed = !0; + var s = this._parentage; + if (s) + if (this._parentage = null, Array.isArray(s)) + try { + for (var a = tr(s), l = a.next(); !l.done; l = a.next()) { + var u = l.value; + u.remove(this); + } + } catch (y) { + t = { error: y }; + } finally { + try { + l && !l.done && (e = a.return) && e.call(a); + } finally { + if (t) + throw t.error; + } + } + else + s.remove(this); + var c = this.initialTeardown; + if (ee(c)) + try { + c(); + } catch (y) { + o = y instanceof yo ? y.errors : [y]; + } + var p = this._finalizers; + if (p) { + this._finalizers = null; + try { + for (var d = tr(p), v = d.next(); !v.done; v = d.next()) { + var f = v.value; + try { + Ds(f); + } catch (y) { + o = o ?? [], y instanceof yo ? o = Gt(Gt([], St(o)), St(y.errors)) : o.push(y); + } + } + } catch (y) { + r = { error: y }; + } finally { + try { + v && !v.done && (i = d.return) && i.call(d); + } finally { + if (r) + throw r.error; + } + } + } + if (o) + throw new yo(o); + } + }, n.prototype.add = function(t) { + var e; + if (t && t !== this) + if (this.closed) + Ds(t); + else { + if (t instanceof n) { + if (t.closed || t._hasParent(this)) + return; + t._addParent(this); + } + (this._finalizers = (e = this._finalizers) !== null && e !== void 0 ? e : []).push(t); + } + }, n.prototype._hasParent = function(t) { + var e = this._parentage; + return e === t || Array.isArray(e) && e.includes(t); + }, n.prototype._addParent = function(t) { + var e = this._parentage; + this._parentage = Array.isArray(e) ? (e.push(t), e) : e ? [e, t] : t; + }, n.prototype._removeParent = function(t) { + var e = this._parentage; + e === t ? this._parentage = null : Array.isArray(e) && Mi(e, t); + }, n.prototype.remove = function(t) { + var e = this._finalizers; + e && Mi(e, t), t instanceof n && t._removeParent(this); + }, n.EMPTY = function() { + var t = new n(); + return t.closed = !0, t; + }(), n; +}(), xa = Ur.EMPTY; +function Na(n) { + return n instanceof Ur || n && "closed" in n && ee(n.remove) && ee(n.add) && ee(n.unsubscribe); +} +function Ds(n) { + ee(n) ? n() : n.unsubscribe(); +} +var Ga = { + onUnhandledError: null, + onStoppedNotification: null, + Promise: void 0, + useDeprecatedSynchronousErrorHandling: !1, + useDeprecatedNextContext: !1 +}, mn = { + setTimeout: function(n, t) { + for (var e = [], r = 2; r < arguments.length; r++) + e[r - 2] = arguments[r]; + var i = mn.delegate; + return i != null && i.setTimeout ? i.setTimeout.apply(i, Gt([n, t], St(e))) : setTimeout.apply(void 0, Gt([n, t], St(e))); + }, + clearTimeout: function(n) { + var t = mn.delegate; + return ((t == null ? void 0 : t.clearTimeout) || clearTimeout)(n); + }, + delegate: void 0 +}; +function Ha(n) { + mn.setTimeout(function() { + throw n; + }); +} +function wn() { +} +function Di(n) { + n(); +} +var kn = function(n) { + _t(t, n); + function t(e) { + var r = n.call(this) || this; + return r.isStopped = !1, e ? (r.destination = e, Na(e) && e.add(r)) : r.destination = Fu, r; + } + return t.create = function(e, r, i) { + return new Sn(e, r, i); + }, t.prototype.next = function(e) { + this.isStopped || this._next(e); + }, t.prototype.error = function(e) { + this.isStopped || (this.isStopped = !0, this._error(e)); + }, t.prototype.complete = function() { + this.isStopped || (this.isStopped = !0, this._complete()); + }, t.prototype.unsubscribe = function() { + this.closed || (this.isStopped = !0, n.prototype.unsubscribe.call(this), this.destination = null); + }, t.prototype._next = function(e) { + this.destination.next(e); + }, t.prototype._error = function(e) { + try { + this.destination.error(e); + } finally { + this.unsubscribe(); + } + }, t.prototype._complete = function() { + try { + this.destination.complete(); + } finally { + this.unsubscribe(); + } + }, t; +}(Ur), Pu = Function.prototype.bind; +function Co(n, t) { + return Pu.call(n, t); +} +var Du = function() { + function n(t) { + this.partialObserver = t; + } + return n.prototype.next = function(t) { + var e = this.partialObserver; + if (e.next) + try { + e.next(t); + } catch (r) { + Jr(r); + } + }, n.prototype.error = function(t) { + var e = this.partialObserver; + if (e.error) + try { + e.error(t); + } catch (r) { + Jr(r); + } + else + Jr(t); + }, n.prototype.complete = function() { + var t = this.partialObserver; + if (t.complete) + try { + t.complete(); + } catch (e) { + Jr(e); + } + }, n; +}(), Sn = function(n) { + _t(t, n); + function t(e, r, i) { + var o = n.call(this) || this, s; + if (ee(e) || !e) + s = { + next: e ?? void 0, + error: r ?? void 0, + complete: i ?? void 0 + }; + else { + var a; + o && Ga.useDeprecatedNextContext ? (a = Object.create(e), a.unsubscribe = function() { + return o.unsubscribe(); + }, s = { + next: e.next && Co(e.next, a), + error: e.error && Co(e.error, a), + complete: e.complete && Co(e.complete, a) + }) : s = e; + } + return o.destination = new Du(s), o; + } + return t; +}(kn); +function Jr(n) { + Ha(n); +} +function Au(n) { + throw n; +} +var Fu = { + closed: !0, + next: wn, + error: Au, + complete: wn +}, Un = function() { + return typeof Symbol == "function" && Symbol.observable || "@@observable"; +}(); +function Lu(n) { + return n; +} +function Mu(n) { + return n.length === 0 ? Lu : n.length === 1 ? n[0] : function(e) { + return n.reduce(function(r, i) { + return i(r); + }, e); + }; +} +var tt = function() { + function n(t) { + t && (this._subscribe = t); + } + return n.prototype.lift = function(t) { + var e = new n(); + return e.source = this, e.operator = t, e; + }, n.prototype.subscribe = function(t, e, r) { + var i = this, o = xu(t) ? t : new Sn(t, e, r); + return Di(function() { + var s = i, a = s.operator, l = s.source; + o.add(a ? a.call(o, l) : l ? i._subscribe(o) : i._trySubscribe(o)); + }), o; + }, n.prototype._trySubscribe = function(t) { + try { + return this._subscribe(t); + } catch (e) { + t.error(e); + } + }, n.prototype.forEach = function(t, e) { + var r = this; + return e = As(e), new e(function(i, o) { + var s = new Sn({ + next: function(a) { + try { + t(a); + } catch (l) { + o(l), s.unsubscribe(); + } + }, + error: o, + complete: i + }); + r.subscribe(s); + }); + }, n.prototype._subscribe = function(t) { + var e; + return (e = this.source) === null || e === void 0 ? void 0 : e.subscribe(t); + }, n.prototype[Un] = function() { + return this; + }, n.prototype.pipe = function() { + for (var t = [], e = 0; e < arguments.length; e++) + t[e] = arguments[e]; + return Mu(t)(this); + }, n.prototype.toPromise = function(t) { + var e = this; + return t = As(t), new t(function(r, i) { + var o; + e.subscribe(function(s) { + return o = s; + }, function(s) { + return i(s); + }, function() { + return r(o); + }); + }); + }, n.create = function(t) { + return new n(t); + }, n; +}(); +function As(n) { + var t; + return (t = n ?? Ga.Promise) !== null && t !== void 0 ? t : Promise; +} +function Iu(n) { + return n && ee(n.next) && ee(n.error) && ee(n.complete); +} +function xu(n) { + return n && n instanceof kn || Iu(n) && Na(n); +} +function Nu(n) { + return ee(n == null ? void 0 : n.lift); +} +function no(n) { + return function(t) { + if (Nu(t)) + return t.lift(function(e) { + try { + return n(e, this); + } catch (r) { + this.error(r); + } + }); + throw new TypeError("Unable to lift unknown Observable type"); + }; +} +function rr(n, t, e, r, i) { + return new Gu(n, t, e, r, i); +} +var Gu = function(n) { + _t(t, n); + function t(e, r, i, o, s, a) { + var l = n.call(this, e) || this; + return l.onFinalize = s, l.shouldUnsubscribe = a, l._next = r ? function(u) { + try { + r(u); + } catch (c) { + e.error(c); + } + } : n.prototype._next, l._error = o ? function(u) { + try { + o(u); + } catch (c) { + e.error(c); + } finally { + this.unsubscribe(); + } + } : n.prototype._error, l._complete = i ? function() { + try { + i(); + } catch (u) { + e.error(u); + } finally { + this.unsubscribe(); + } + } : n.prototype._complete, l; + } + return t.prototype.unsubscribe = function() { + var e; + if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) { + var r = this.closed; + n.prototype.unsubscribe.call(this), !r && ((e = this.onFinalize) === null || e === void 0 || e.call(this)); + } + }, t; +}(kn), Hu = Ia(function(n) { + return function() { + n(this), this.name = "ObjectUnsubscribedError", this.message = "object unsubscribed"; + }; +}), Va = function(n) { + _t(t, n); + function t() { + var e = n.call(this) || this; + return e.closed = !1, e.currentObservers = null, e.observers = [], e.isStopped = !1, e.hasError = !1, e.thrownError = null, e; + } + return t.prototype.lift = function(e) { + var r = new Fs(this, this); + return r.operator = e, r; + }, t.prototype._throwIfClosed = function() { + if (this.closed) + throw new Hu(); + }, t.prototype.next = function(e) { + var r = this; + Di(function() { + var i, o; + if (r._throwIfClosed(), !r.isStopped) { + r.currentObservers || (r.currentObservers = Array.from(r.observers)); + try { + for (var s = tr(r.currentObservers), a = s.next(); !a.done; a = s.next()) { + var l = a.value; + l.next(e); + } + } catch (u) { + i = { error: u }; + } finally { + try { + a && !a.done && (o = s.return) && o.call(s); + } finally { + if (i) + throw i.error; + } + } + } + }); + }, t.prototype.error = function(e) { + var r = this; + Di(function() { + if (r._throwIfClosed(), !r.isStopped) { + r.hasError = r.isStopped = !0, r.thrownError = e; + for (var i = r.observers; i.length; ) + i.shift().error(e); + } + }); + }, t.prototype.complete = function() { + var e = this; + Di(function() { + if (e._throwIfClosed(), !e.isStopped) { + e.isStopped = !0; + for (var r = e.observers; r.length; ) + r.shift().complete(); + } + }); + }, t.prototype.unsubscribe = function() { + this.isStopped = this.closed = !0, this.observers = this.currentObservers = null; + }, Object.defineProperty(t.prototype, "observed", { + get: function() { + var e; + return ((e = this.observers) === null || e === void 0 ? void 0 : e.length) > 0; + }, + enumerable: !1, + configurable: !0 + }), t.prototype._trySubscribe = function(e) { + return this._throwIfClosed(), n.prototype._trySubscribe.call(this, e); + }, t.prototype._subscribe = function(e) { + return this._throwIfClosed(), this._checkFinalizedStatuses(e), this._innerSubscribe(e); + }, t.prototype._innerSubscribe = function(e) { + var r = this, i = this, o = i.hasError, s = i.isStopped, a = i.observers; + return o || s ? xa : (this.currentObservers = null, a.push(e), new Ur(function() { + r.currentObservers = null, Mi(a, e); + })); + }, t.prototype._checkFinalizedStatuses = function(e) { + var r = this, i = r.hasError, o = r.thrownError, s = r.isStopped; + i ? e.error(o) : s && e.complete(); + }, t.prototype.asObservable = function() { + var e = new tt(); + return e.source = this, e; + }, t.create = function(e, r) { + return new Fs(e, r); + }, t; +}(tt), Fs = function(n) { + _t(t, n); + function t(e, r) { + var i = n.call(this) || this; + return i.destination = e, i.source = r, i; + } + return t.prototype.next = function(e) { + var r, i; + (i = (r = this.destination) === null || r === void 0 ? void 0 : r.next) === null || i === void 0 || i.call(r, e); + }, t.prototype.error = function(e) { + var r, i; + (i = (r = this.destination) === null || r === void 0 ? void 0 : r.error) === null || i === void 0 || i.call(r, e); + }, t.prototype.complete = function() { + var e, r; + (r = (e = this.destination) === null || e === void 0 ? void 0 : e.complete) === null || r === void 0 || r.call(e); + }, t.prototype._subscribe = function(e) { + var r, i; + return (i = (r = this.source) === null || r === void 0 ? void 0 : r.subscribe(e)) !== null && i !== void 0 ? i : xa; + }, t; +}(Va), Ba = { + now: function() { + return (Ba.delegate || Date).now(); + }, + delegate: void 0 +}, Vu = function(n) { + _t(t, n); + function t(e, r) { + return n.call(this) || this; + } + return t.prototype.schedule = function(e, r) { + return this; + }, t; +}(Ur), Ii = { + setInterval: function(n, t) { + for (var e = [], r = 2; r < arguments.length; r++) + e[r - 2] = arguments[r]; + var i = Ii.delegate; + return i != null && i.setInterval ? i.setInterval.apply(i, Gt([n, t], St(e))) : setInterval.apply(void 0, Gt([n, t], St(e))); + }, + clearInterval: function(n) { + var t = Ii.delegate; + return ((t == null ? void 0 : t.clearInterval) || clearInterval)(n); + }, + delegate: void 0 +}, Bu = function(n) { + _t(t, n); + function t(e, r) { + var i = n.call(this, e, r) || this; + return i.scheduler = e, i.work = r, i.pending = !1, i; + } + return t.prototype.schedule = function(e, r) { + var i; + if (r === void 0 && (r = 0), this.closed) + return this; + this.state = e; + var o = this.id, s = this.scheduler; + return o != null && (this.id = this.recycleAsyncId(s, o, r)), this.pending = !0, this.delay = r, this.id = (i = this.id) !== null && i !== void 0 ? i : this.requestAsyncId(s, this.id, r), this; + }, t.prototype.requestAsyncId = function(e, r, i) { + return i === void 0 && (i = 0), Ii.setInterval(e.flush.bind(e, this), i); + }, t.prototype.recycleAsyncId = function(e, r, i) { + if (i === void 0 && (i = 0), i != null && this.delay === i && this.pending === !1) + return r; + r != null && Ii.clearInterval(r); + }, t.prototype.execute = function(e, r) { + if (this.closed) + return new Error("executing a cancelled action"); + this.pending = !1; + var i = this._execute(e, r); + if (i) + return i; + this.pending === !1 && this.id != null && (this.id = this.recycleAsyncId(this.scheduler, this.id, null)); + }, t.prototype._execute = function(e, r) { + var i = !1, o; + try { + this.work(e); + } catch (s) { + i = !0, o = s || new Error("Scheduled action threw falsy error"); + } + if (i) + return this.unsubscribe(), o; + }, t.prototype.unsubscribe = function() { + if (!this.closed) { + var e = this, r = e.id, i = e.scheduler, o = i.actions; + this.work = this.state = this.scheduler = null, this.pending = !1, Mi(o, this), r != null && (this.id = this.recycleAsyncId(i, r, null)), this.delay = null, n.prototype.unsubscribe.call(this); + } + }, t; +}(Vu), Ls = function() { + function n(t, e) { + e === void 0 && (e = n.now), this.schedulerActionCtor = t, this.now = e; + } + return n.prototype.schedule = function(t, e, r) { + return e === void 0 && (e = 0), new this.schedulerActionCtor(this, t).schedule(r, e); + }, n.now = Ba.now, n; +}(), Wu = function(n) { + _t(t, n); + function t(e, r) { + r === void 0 && (r = Ls.now); + var i = n.call(this, e, r) || this; + return i.actions = [], i._active = !1, i; + } + return t.prototype.flush = function(e) { + var r = this.actions; + if (this._active) { + r.push(e); + return; + } + var i; + this._active = !0; + do + if (i = e.execute(e.state, e.delay)) + break; + while (e = r.shift()); + if (this._active = !1, i) { + for (; e = r.shift(); ) + e.unsubscribe(); + throw i; + } + }, t; +}(Ls), Wa = new Wu(Bu), ju = Wa; +function ku(n) { + return n && ee(n.schedule); +} +var ja = function(n) { + return n && typeof n.length == "number" && typeof n != "function"; +}; +function Uu(n) { + return ee(n == null ? void 0 : n.then); +} +function zu(n) { + return ee(n[Un]); +} +function Ku(n) { + return Symbol.asyncIterator && ee(n == null ? void 0 : n[Symbol.asyncIterator]); +} +function $u(n) { + return new TypeError("You provided " + (n !== null && typeof n == "object" ? "an invalid object" : "'" + n + "'") + " where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable."); +} +function Yu() { + return typeof Symbol != "function" || !Symbol.iterator ? "@@iterator" : Symbol.iterator; +} +var qu = Yu(); +function Qu(n) { + return ee(n == null ? void 0 : n[qu]); +} +function Xu(n) { + return Tu(this, arguments, function() { + var e, r, i, o; + return Ma(this, function(s) { + switch (s.label) { + case 0: + e = n.getReader(), s.label = 1; + case 1: + s.trys.push([1, , 9, 10]), s.label = 2; + case 2: + return [4, Xt(e.read())]; + case 3: + return r = s.sent(), i = r.value, o = r.done, o ? [4, Xt(void 0)] : [3, 5]; + case 4: + return [2, s.sent()]; + case 5: + return [4, Xt(i)]; + case 6: + return [4, s.sent()]; + case 7: + return s.sent(), [3, 2]; + case 8: + return [3, 10]; + case 9: + return e.releaseLock(), [7]; + case 10: + return [2]; + } + }); + }); +} +function Ju(n) { + return ee(n == null ? void 0 : n.getReader); +} +function so(n) { + if (n instanceof tt) + return n; + if (n != null) { + if (zu(n)) + return Zu(n); + if (ja(n)) + return ec(n); + if (Uu(n)) + return tc(n); + if (Ku(n)) + return ka(n); + if (Qu(n)) + return rc(n); + if (Ju(n)) + return ic(n); + } + throw $u(n); +} +function Zu(n) { + return new tt(function(t) { + var e = n[Un](); + if (ee(e.subscribe)) + return e.subscribe(t); + throw new TypeError("Provided object does not correctly implement Symbol.observable"); + }); +} +function ec(n) { + return new tt(function(t) { + for (var e = 0; e < n.length && !t.closed; e++) + t.next(n[e]); + t.complete(); + }); +} +function tc(n) { + return new tt(function(t) { + n.then(function(e) { + t.closed || (t.next(e), t.complete()); + }, function(e) { + return t.error(e); + }).then(null, Ha); + }); +} +function rc(n) { + return new tt(function(t) { + var e, r; + try { + for (var i = tr(n), o = i.next(); !o.done; o = i.next()) { + var s = o.value; + if (t.next(s), t.closed) + return; + } + } catch (a) { + e = { error: a }; + } finally { + try { + o && !o.done && (r = i.return) && r.call(i); + } finally { + if (e) + throw e.error; + } + } + t.complete(); + }); +} +function ka(n) { + return new tt(function(t) { + oc(n, t).catch(function(e) { + return t.error(e); + }); + }); +} +function ic(n) { + return ka(Xu(n)); +} +function oc(n, t) { + var e, r, i, o; + return Ou(this, void 0, void 0, function() { + var s, a; + return Ma(this, function(l) { + switch (l.label) { + case 0: + l.trys.push([0, 5, 6, 11]), e = bu(n), l.label = 1; + case 1: + return [4, e.next()]; + case 2: + if (r = l.sent(), !!r.done) + return [3, 4]; + if (s = r.value, t.next(s), t.closed) + return [2]; + l.label = 3; + case 3: + return [3, 1]; + case 4: + return [3, 11]; + case 5: + return a = l.sent(), i = { error: a }, [3, 11]; + case 6: + return l.trys.push([6, , 9, 10]), r && !r.done && (o = e.return) ? [4, o.call(e)] : [3, 8]; + case 7: + l.sent(), l.label = 8; + case 8: + return [3, 10]; + case 9: + if (i) + throw i.error; + return [7]; + case 10: + return [7]; + case 11: + return t.complete(), [2]; + } + }); + }); +} +function nc(n, t, e, r, i) { + r === void 0 && (r = 0), i === void 0 && (i = !1); + var o = t.schedule(function() { + e(), i ? n.add(this.schedule(null, r)) : this.unsubscribe(); + }, r); + if (n.add(o), !i) + return o; +} +function sc(n) { + return n instanceof Date && !isNaN(n); +} +function Ua(n, t) { + return no(function(e, r) { + var i = 0; + e.subscribe(rr(r, function(o) { + r.next(n.call(t, o, i++)); + })); + }); +} +var ac = Array.isArray; +function lc(n, t) { + return ac(t) ? n.apply(void 0, Gt([], St(t))) : n(t); +} +function uc(n) { + return Ua(function(t) { + return lc(n, t); + }); +} +function cc(n, t, e, r, i, o, s, a) { + var l = [], u = 0, c = 0, p = !1, d = function() { + p && !l.length && !u && t.complete(); + }, v = function(y) { + return u < r ? f(y) : l.push(y); + }, f = function(y) { + o && t.next(y), u++; + var C = !1; + so(e(y, c++)).subscribe(rr(t, function(m) { + i == null || i(m), o ? v(m) : t.next(m); + }, function() { + C = !0; + }, void 0, function() { + if (C) + try { + u--; + for (var m = function() { + var w = l.shift(); + s ? nc(t, s, function() { + return f(w); + }) : f(w); + }; l.length && u < r; ) + m(); + d(); + } catch (w) { + t.error(w); + } + })); + }; + return n.subscribe(rr(t, v, function() { + p = !0, d(); + })), function() { + a == null || a(); + }; +} +function za(n, t, e) { + return e === void 0 && (e = 1 / 0), ee(t) ? za(function(r, i) { + return Ua(function(o, s) { + return t(r, o, i, s); + })(so(n(r, i))); + }, e) : (typeof t == "number" && (e = t), no(function(r, i) { + return cc(r, i, n, e); + })); +} +var pc = ["addListener", "removeListener"], dc = ["addEventListener", "removeEventListener"], hc = ["on", "off"]; +function En(n, t, e, r) { + if (ee(e) && (r = e, e = void 0), r) + return En(n, t, e).pipe(uc(r)); + var i = St(gc(n) ? dc.map(function(a) { + return function(l) { + return n[a](t, l, e); + }; + }) : fc(n) ? pc.map(Ms(n, t)) : vc(n) ? hc.map(Ms(n, t)) : [], 2), o = i[0], s = i[1]; + if (!o && ja(n)) + return za(function(a) { + return En(a, t, e); + })(so(n)); + if (!o) + throw new TypeError("Invalid event target"); + return new tt(function(a) { + var l = function() { + for (var u = [], c = 0; c < arguments.length; c++) + u[c] = arguments[c]; + return a.next(1 < u.length ? u : u[0]); + }; + return o(l), function() { + return s(l); + }; + }); +} +function Ms(n, t) { + return function(e) { + return function(r) { + return n[e](t, r); + }; + }; +} +function fc(n) { + return ee(n.addListener) && ee(n.removeListener); +} +function vc(n) { + return ee(n.on) && ee(n.off); +} +function gc(n) { + return ee(n.addEventListener) && ee(n.removeEventListener); +} +function yc(n, t, e) { + n === void 0 && (n = 0), e === void 0 && (e = ju); + var r = -1; + return t != null && (ku(t) ? e = t : r = t), new tt(function(i) { + var o = sc(n) ? +n - e.now() : n; + o < 0 && (o = 0); + var s = 0; + return e.schedule(function() { + i.closed || (i.next(s++), 0 <= r ? this.schedule(void 0, r) : i.complete()); + }, o); + }); +} +function Cc(n, t) { + return n === void 0 && (n = 0), t === void 0 && (t = Wa), n < 0 && (n = 0), yc(n, n, t); +} +function mc(n) { + return no(function(t, e) { + var r = !1, i = null, o = null, s = function() { + if (o == null || o.unsubscribe(), o = null, r) { + r = !1; + var a = i; + i = null, e.next(a); + } + }; + t.subscribe(rr(e, function(a) { + o == null || o.unsubscribe(), r = !0, i = a, o = rr(e, s, wn), so(n(a)).subscribe(o); + }, function() { + s(), e.complete(); + }, void 0, function() { + i = o = null; + })); + }); +} +function wc() { + return no(function(n, t) { + var e, r = !1; + n.subscribe(rr(t, function(i) { + var o = e; + e = i, r && t.next([o, i]), r = !0; + })); + }); +} +/** + * @ag-grid-community/all-modules - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +function wt(n) { + return n == null || n === "" ? null : n; +} +function O(n, t) { + return t === void 0 && (t = !1), n != null && (n !== "" || t); +} +function x(n) { + return !O(n); +} +function De(n) { + return n == null || n.length === 0; +} +function zn(n) { + return n != null && typeof n.toString == "function" ? n.toString() : null; +} +function He(n) { + if (n !== void 0) { + if (n === null || n === "") + return null; + if (typeof n == "number") + return isNaN(n) ? void 0 : n; + var t = parseInt(n, 10); + return isNaN(t) ? void 0 : t; + } +} +function Qe(n) { + if (n !== void 0) + return n === null || n === "" ? !1 : typeof n == "boolean" ? n : /true/i.test(n); +} +function Sc(n) { + if (!(n == null || n === "")) + return n; +} +function Ec(n, t) { + return n == null && t == null ? !0 : n == null && t != null || n != null && t == null ? !1 : n === t; +} +function _c(n, t) { + var e = n ? JSON.stringify(n) : null, r = t ? JSON.stringify(t) : null; + return e === r; +} +function Rc(n, t, e) { + e === void 0 && (e = !1); + var r = n == null, i = t == null; + if (n && n.toNumber && (n = n.toNumber()), t && t.toNumber && (t = t.toNumber()), r && i) + return 0; + if (r) + return -1; + if (i) + return 1; + function o(s, a) { + return s > a ? 1 : s < a ? -1 : 0; + } + if (typeof n != "string" || !e) + return o(n, t); + try { + return n.localeCompare(t); + } catch { + return o(n, t); + } +} +function zr(n) { + if (n instanceof Set || n instanceof Map) { + var t = []; + return n.forEach(function(e) { + return t.push(e); + }), t; + } + return Object.values(n); +} +var Oc = /* @__PURE__ */ Object.freeze({ + __proto__: null, + makeNull: wt, + exists: O, + missing: x, + missingOrEmpty: De, + toStringOrNull: zn, + attrToNumber: He, + attrToBoolean: Qe, + attrToString: Sc, + referenceCompare: Ec, + jsonEquals: _c, + defaultComparator: Rc, + values: zr +}); +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +var Tc = ( + /** @class */ + function() { + function n() { + this.existingKeys = {}; + } + return n.prototype.addExistingKeys = function(t) { + for (var e = 0; e < t.length; e++) + this.existingKeys[t[e]] = !0; + }, n.prototype.getUniqueKey = function(t, e) { + t = zn(t); + for (var r = 0; ; ) { + var i = void 0; + if (t ? (i = t, r !== 0 && (i += "_" + r)) : e ? (i = e, r !== 0 && (i += "_" + r)) : i = "" + r, !this.existingKeys[i]) + return this.existingKeys[i] = !0, i; + r++; + } + }, n; + }() +); +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +function J(n, t) { + n != null && (Array.isArray(n) ? n.forEach(function(e, r) { + return t("" + r, e); + }) : Object.keys(n).forEach(function(e) { + return t(e, n[e]); + })); +} +function Kn(n) { + for (var t = {}, e = Object.keys(n), r = 0; r < e.length; r++) { + var i = e[r], o = n[i]; + t[i] = o; + } + return t; +} +function bc(n) { + return JSON.parse(JSON.stringify(n)); +} +function xi(n, t) { + if (n) { + var e = n, r = {}; + return Object.keys(e).forEach(function(i) { + if (!(t && t.indexOf(i) >= 0)) { + var o = e[i], s = Gi(o) && o.constructor === Object; + s ? r[i] = xi(o) : r[i] = o; + } + }), r; + } +} +function Ka(n, t) { + return n[t]; +} +function $a(n, t, e) { + n[t] = e; +} +function Pc(n, t) { + for (var e = [], r = 2; r < arguments.length; r++) + e[r - 2] = arguments[r]; + e.forEach(function(i) { + return Ya(n, t, i); + }); +} +function Ya(n, t, e, r) { + var i = Ka(n, e); + i !== void 0 && $a(t, e, r ? r(i) : i); +} +function qa(n) { + var t = {}; + return n.filter(function(e) { + return e != null; + }).forEach(function(e) { + Object.keys(e).forEach(function(r) { + return t[r] = null; + }); + }), Object.keys(t); +} +function rt(n) { + if (!n) + return []; + var t = Object; + if (typeof t.values == "function") + return t.values(n); + var e = []; + for (var r in n) + n.hasOwnProperty(r) && n.propertyIsEnumerable(r) && e.push(n[r]); + return e; +} +function Oe(n, t, e, r) { + e === void 0 && (e = !0), r === void 0 && (r = !1), O(t) && J(t, function(i, o) { + var s = n[i]; + if (s !== o) { + if (r) { + var a = s == null && o != null; + if (a) { + var l = typeof o == "object" && o.constructor === Object, u = l; + u && (s = {}, n[i] = s); + } + } + Gi(o) && Gi(s) && !Array.isArray(s) ? Oe(s, o, e, r) : (e || o !== void 0) && (n[i] = o); + } + }); +} +function Dc(n) { + return x(n) || Object.keys(n).length === 0; +} +function Ac(n, t, e) { + if (n == null) + return e; + for (var r = t.split("."), i = n; r.length > 1; ) + if (i = i[r.shift()], i == null) + return e; + var o = i[r[0]]; + return o ?? e; +} +function Fc(n, t, e) { + if (n != null) { + var r = t.split("."), i = n; + r.forEach(function(o, s) { + i[o] || (i[o] = {}), s < r.length - 1 && (i = i[o]); + }), i[r[r.length - 1]] = e; + } +} +function Ni(n, t, e) { + if (!(!t || !n)) { + if (!e) + return n[t]; + for (var r = t.split("."), i = n, o = 0; o < r.length; o++) { + if (i == null) + return; + i = i[r[o]]; + } + return i; + } +} +function Qa(n, t) { + Object.keys(n).forEach(function(i) { + var o = n[i]; + typeof o == "object" && (n[i] = void 0); + }); + var e = Object.getPrototypeOf(n), r = {}; + Object.keys(e).forEach(function(i) { + var o = e[i]; + if (typeof o == "function") { + var s = function() { + console.warn("AG Grid: " + t + " function " + i + `() cannot be called as the grid has been destroyed. + Please don't call grid API functions on destroyed grids - as a matter of fact you shouldn't + be keeping the API reference, your application has a memory leak! Remove the API reference + when the grid is destroyed.`); + }; + r[i] = { value: s, writable: !0 }; + } + }), Object.defineProperties(n, r); +} +function Gi(n) { + return typeof n == "object" && n !== null; +} +var Lc = /* @__PURE__ */ Object.freeze({ + __proto__: null, + iterateObject: J, + cloneObject: Kn, + deepCloneObject: bc, + deepCloneDefinition: xi, + getProperty: Ka, + setProperty: $a, + copyPropertiesIfPresent: Pc, + copyPropertyIfPresent: Ya, + getAllKeysInObjects: qa, + getAllValuesInObject: rt, + mergeDeep: Oe, + missingOrEmptyObject: Dc, + get: Ac, + set: Fc, + getValueUsingField: Ni, + removeAllReferences: Qa, + isNonNullObject: Gi +}); +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +var Is = {}; +function K(n, t) { + Is[t] || (n(), Is[t] = !0); +} +function ao(n) { + if (n.name) + return n.name; + var t = /function\s+([^\(]+)/.exec(n.toString()); + return t && t.length === 2 ? t[1].trim() : null; +} +function lo(n) { + return !!(n && n.constructor && n.call && n.apply); +} +function Xa(n) { + Ja(n, 400); +} +var mo = [], wo = !1; +function _n(n) { + mo.push(n), !wo && (wo = !0, window.setTimeout(function() { + var t = mo.slice(); + mo.length = 0, wo = !1, t.forEach(function(e) { + return e(); + }); + }, 0)); +} +function Ja(n, t) { + t === void 0 && (t = 0), n.length > 0 && window.setTimeout(function() { + return n.forEach(function(e) { + return e(); + }); + }, t); +} +function Ze(n, t) { + var e; + return function() { + for (var r = [], i = 0; i < arguments.length; i++) + r[i] = arguments[i]; + var o = this; + window.clearTimeout(e), e = window.setTimeout(function() { + n.apply(o, r); + }, t); + }; +} +function Rn(n, t) { + var e = 0; + return function() { + for (var r = [], i = 0; i < arguments.length; i++) + r[i] = arguments[i]; + var o = this, s = (/* @__PURE__ */ new Date()).getTime(); + s - e < t || (e = s, n.apply(o, r)); + }; +} +function Za(n, t, e, r) { + e === void 0 && (e = 100); + var i = (/* @__PURE__ */ new Date()).getTime(), o = null, s = !1, a = function() { + var l = (/* @__PURE__ */ new Date()).getTime() - i > e; + (n() || l) && (t(), s = !0, o != null && (window.clearInterval(o), o = null), l && r && console.warn(r)); + }; + a(), s || (o = window.setInterval(a, 10)); +} +function Mc() { + for (var n = [], t = 0; t < arguments.length; t++) + n[t] = arguments[t]; + return function(e) { + return n.reduce(function(r, i) { + return i(r); + }, e); + }; +} +function el(n) { + n && n(); +} +var Ic = function() { +}, xc = /* @__PURE__ */ Object.freeze({ + __proto__: null, + doOnce: K, + getFunctionName: ao, + isFunction: lo, + executeInAWhile: Xa, + executeNextVMTurn: _n, + executeAfter: Ja, + debounce: Ze, + throttle: Rn, + waitUntil: Za, + compose: Mc, + callIfPresent: el, + noop: Ic +}); +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +var Nc = function(n, t) { + var e = typeof Symbol == "function" && n[Symbol.iterator]; + if (!e) + return n; + var r = e.call(n), i, o = [], s; + try { + for (; (t === void 0 || t-- > 0) && !(i = r.next()).done; ) + o.push(i.value); + } catch (a) { + s = { error: a }; + } finally { + try { + i && !i.done && (e = r.return) && e.call(r); + } finally { + if (s) + throw s.error; + } + } + return o; +}, Gc = function() { + for (var n = [], t = 0; t < arguments.length; t++) + n = n.concat(Nc(arguments[t])); + return n; +}, Hc = ( + /** @class */ + function() { + function n(t, e) { + if (this.beanWrappers = {}, this.destroyed = !1, !(!t || !t.beanClasses)) { + this.contextParams = t, this.logger = e, this.logger.log(">> creating ag-Application Context"), this.createBeans(); + var r = this.getBeanInstances(); + this.wireBeans(r), this.logger.log(">> ag-Application Context ready - component is alive"); + } + } + return n.prototype.getBeanInstances = function() { + return zr(this.beanWrappers).map(function(t) { + return t.beanInstance; + }); + }, n.prototype.createBean = function(t, e) { + if (!t) + throw Error("Can't wire to bean since it is null"); + return this.wireBeans([t], e), t; + }, n.prototype.wireBeans = function(t, e) { + this.autoWireBeans(t), this.methodWireBeans(t), this.callLifeCycleMethods(t, "preConstructMethods"), O(e) && t.forEach(e), this.callLifeCycleMethods(t, "postConstructMethods"); + }, n.prototype.createBeans = function() { + var t = this; + this.contextParams.beanClasses.forEach(this.createBeanWrapper.bind(this)), J(this.beanWrappers, function(r, i) { + var o; + i.bean.__agBeanMetaData && i.bean.__agBeanMetaData.autowireMethods && i.bean.__agBeanMetaData.autowireMethods.agConstructor && (o = i.bean.__agBeanMetaData.autowireMethods.agConstructor); + var s = t.getBeansForParameters(o, i.bean.name), a = new (i.bean.bind.apply(i.bean, Gc([null], s)))(); + i.beanInstance = a; + }); + var e = Object.keys(this.beanWrappers).join(", "); + this.logger.log("created beans: " + e); + }, n.prototype.createBeanWrapper = function(t) { + var e = t.__agBeanMetaData; + if (!e) { + var r = void 0; + t.prototype.constructor ? r = ao(t.prototype.constructor) : r = "" + t, console.error("Context item " + r + " is not a bean"); + return; + } + var i = { + bean: t, + beanInstance: null, + beanName: e.beanName + }; + this.beanWrappers[e.beanName] = i; + }, n.prototype.autoWireBeans = function(t) { + var e = this; + t.forEach(function(r) { + e.forEachMetaDataInHierarchy(r, function(i, o) { + var s = i.agClassAttributes; + s && s.forEach(function(a) { + var l = e.lookupBeanInstance(o, a.beanName, a.optional); + r[a.attributeName] = l; + }); + }); + }); + }, n.prototype.methodWireBeans = function(t) { + var e = this; + t.forEach(function(r) { + e.forEachMetaDataInHierarchy(r, function(i, o) { + J(i.autowireMethods, function(s, a) { + if (s !== "agConstructor") { + var l = e.getBeansForParameters(a, o); + r[s].apply(r, l); + } + }); + }); + }); + }, n.prototype.forEachMetaDataInHierarchy = function(t, e) { + for (var r = Object.getPrototypeOf(t); r != null; ) { + var i = r.constructor; + if (i.hasOwnProperty("__agBeanMetaData")) { + var o = i.__agBeanMetaData, s = this.getBeanName(i); + e(o, s); + } + r = Object.getPrototypeOf(r); + } + }, n.prototype.getBeanName = function(t) { + if (t.__agBeanMetaData && t.__agBeanMetaData.beanName) + return t.__agBeanMetaData.beanName; + var e = t.toString(), r = e.substring(9, e.indexOf("(")); + return r; + }, n.prototype.getBeansForParameters = function(t, e) { + var r = this, i = []; + return t && J(t, function(o, s) { + var a = r.lookupBeanInstance(e, s); + i[Number(o)] = a; + }), i; + }, n.prototype.lookupBeanInstance = function(t, e, r) { + if (r === void 0 && (r = !1), e === "context") + return this; + if (this.contextParams.providedBeanInstances && this.contextParams.providedBeanInstances.hasOwnProperty(e)) + return this.contextParams.providedBeanInstances[e]; + var i = this.beanWrappers[e]; + return i ? i.beanInstance : (r || console.error("AG Grid: unable to find bean reference " + e + " while initialising " + t), null); + }, n.prototype.callLifeCycleMethods = function(t, e) { + var r = this; + t.forEach(function(i) { + return r.callLifeCycleMethodsOnBean(i, e); + }); + }, n.prototype.callLifeCycleMethodsOnBean = function(t, e, r) { + var i = {}; + this.forEachMetaDataInHierarchy(t, function(s) { + var a = s[e]; + a && a.forEach(function(l) { + l != r && (i[l] = !0); + }); + }); + var o = Object.keys(i); + o.forEach(function(s) { + return t[s](); + }); + }, n.prototype.getBean = function(t) { + return this.lookupBeanInstance("getBean", t, !0); + }, n.prototype.destroy = function() { + if (!this.destroyed) { + this.logger.log(">> Shutting down ag-Application Context"); + var t = this.getBeanInstances(); + this.destroyBeans(t), this.contextParams.providedBeanInstances = null, this.destroyed = !0, this.logger.log(">> ag-Application Context shut down - component is dead"); + } + }, n.prototype.destroyBean = function(t) { + t && this.destroyBeans([t]); + }, n.prototype.destroyBeans = function(t) { + var e = this; + return t ? (t.forEach(function(r) { + e.callLifeCycleMethodsOnBean(r, "preDestroyMethods", "destroy"); + var i = r; + typeof i.destroy == "function" && i.destroy(); + }), []) : []; + }, n; + }() +); +function xs(n, t, e) { + var r = Ht(n.constructor); + r.preConstructMethods || (r.preConstructMethods = []), r.preConstructMethods.push(t); +} +function b(n, t, e) { + var r = Ht(n.constructor); + r.postConstructMethods || (r.postConstructMethods = []), r.postConstructMethods.push(t); +} +function ve(n, t, e) { + var r = Ht(n.constructor); + r.preDestroyMethods || (r.preDestroyMethods = []), r.preDestroyMethods.push(t); +} +function A(n) { + return function(t) { + var e = Ht(t); + e.beanName = n; + }; +} +function h(n) { + return function(t, e, r) { + tl(t, n, !1, t, e, null); + }; +} +function Y(n) { + return function(t, e, r) { + tl(t, n, !0, t, e, null); + }; +} +function tl(n, t, e, r, i, o) { + if (t === null) { + console.error("AG Grid: Autowired name should not be null"); + return; + } + if (typeof o == "number") { + console.error("AG Grid: Autowired should be on an attribute"); + return; + } + var s = Ht(n.constructor); + s.agClassAttributes || (s.agClassAttributes = []), s.agClassAttributes.push({ + attributeName: i, + beanName: t, + optional: e + }); +} +function me(n) { + return function(t, e, r) { + var i = typeof t == "function" ? t : t.constructor, o; + if (typeof r == "number") { + var s = void 0; + e ? (o = Ht(i), s = e) : (o = Ht(i), s = "agConstructor"), o.autowireMethods || (o.autowireMethods = {}), o.autowireMethods[s] || (o.autowireMethods[s] = {}), o.autowireMethods[s][r] = n; + } + }; +} +function Ht(n) { + return n.hasOwnProperty("__agBeanMetaData") || (n.__agBeanMetaData = {}), n.__agBeanMetaData; +} +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +var Ns = function(n, t, e, r) { + var i = arguments.length, o = i < 3 ? t : r === null ? r = Object.getOwnPropertyDescriptor(t, e) : r, s; + if (typeof Reflect == "object" && typeof Reflect.decorate == "function") + o = Reflect.decorate(n, t, e, r); + else + for (var a = n.length - 1; a >= 0; a--) + (s = n[a]) && (o = (i < 3 ? s(o) : i > 3 ? s(t, e, o) : s(t, e)) || o); + return i > 3 && o && Object.defineProperty(t, e, o), o; +}, Zr = function(n, t) { + return function(e, r) { + t(e, r, n); + }; +}, Rt = ( + /** @class */ + function() { + function n() { + this.allSyncListeners = /* @__PURE__ */ new Map(), this.allAsyncListeners = /* @__PURE__ */ new Map(), this.globalSyncListeners = /* @__PURE__ */ new Set(), this.globalAsyncListeners = /* @__PURE__ */ new Set(), this.asyncFunctionsQueue = [], this.scheduled = !1, this.firedEvents = {}; + } + return n.prototype.setBeans = function(t, e, r, i) { + if (i === void 0 && (i = null), this.frameworkOverrides = r, this.gridOptionsService = e, i) { + var o = e.useAsyncEvents(); + this.addGlobalListener(i, o); + } + }, n.prototype.getListeners = function(t, e, r) { + var i = e ? this.allAsyncListeners : this.allSyncListeners, o = i.get(t); + return !o && r && (o = /* @__PURE__ */ new Set(), i.set(t, o)), o; + }, n.prototype.noRegisteredListenersExist = function() { + return this.allSyncListeners.size === 0 && this.allAsyncListeners.size === 0 && this.globalSyncListeners.size === 0 && this.globalAsyncListeners.size === 0; + }, n.prototype.addEventListener = function(t, e, r) { + r === void 0 && (r = !1), this.getListeners(t, r, !0).add(e); + }, n.prototype.removeEventListener = function(t, e, r) { + r === void 0 && (r = !1); + var i = this.getListeners(t, r, !1); + if (i && (i.delete(e), i.size === 0)) { + var o = r ? this.allAsyncListeners : this.allSyncListeners; + o.delete(t); + } + }, n.prototype.addGlobalListener = function(t, e) { + e === void 0 && (e = !1), (e ? this.globalAsyncListeners : this.globalSyncListeners).add(t); + }, n.prototype.removeGlobalListener = function(t, e) { + e === void 0 && (e = !1), (e ? this.globalAsyncListeners : this.globalSyncListeners).delete(t); + }, n.prototype.dispatchEvent = function(t) { + var e = t; + if (this.gridOptionsService) { + var r = this.gridOptionsService, i = r.api, o = r.columnApi, s = r.context; + e.api = i, e.columnApi = o, e.context = s; + } + this.dispatchToListeners(e, !0), this.dispatchToListeners(e, !1), this.firedEvents[e.type] = !0; + }, n.prototype.dispatchEventOnce = function(t) { + this.firedEvents[t.type] || this.dispatchEvent(t); + }, n.prototype.dispatchToListeners = function(t, e) { + var r = this, i = t.type; + if (e && "event" in t) { + var o = t.event; + o instanceof Event && (t.eventPath = o.composedPath()); + } + var s = function(u) { + return u.forEach(function(c) { + e ? r.dispatchAsync(function() { + return c(t); + }) : c(t); + }); + }, a = this.getListeners(i, e, !1); + a && s(a); + var l = e ? this.globalAsyncListeners : this.globalSyncListeners; + l.forEach(function(u) { + e ? r.dispatchAsync(function() { + return r.frameworkOverrides.dispatchEvent(i, function() { + return u(i, t); + }, !0); + }) : r.frameworkOverrides.dispatchEvent(i, function() { + return u(i, t); + }, !0); + }); + }, n.prototype.dispatchAsync = function(t) { + this.asyncFunctionsQueue.push(t), this.scheduled || (window.setTimeout(this.flushAsyncQueue.bind(this), 0), this.scheduled = !0); + }, n.prototype.flushAsyncQueue = function() { + this.scheduled = !1; + var t = this.asyncFunctionsQueue.slice(); + this.asyncFunctionsQueue = [], t.forEach(function(e) { + return e(); + }); + }, Ns([ + Zr(0, me("loggerFactory")), + Zr(1, me("gridOptionsService")), + Zr(2, me("frameworkOverrides")), + Zr(3, me("globalEventListener")) + ], n.prototype, "setBeans", null), n = Ns([ + A("eventService") + ], n), n; + }() +); +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +var F; +(function(n) { + n.CommunityCoreModule = "@ag-grid-community/core", n.InfiniteRowModelModule = "@ag-grid-community/infinite-row-model", n.ClientSideRowModelModule = "@ag-grid-community/client-side-row-model", n.CsvExportModule = "@ag-grid-community/csv-export", n.EnterpriseCoreModule = "@ag-grid-enterprise/core", n.RowGroupingModule = "@ag-grid-enterprise/row-grouping", n.ColumnsToolPanelModule = "@ag-grid-enterprise/column-tool-panel", n.FiltersToolPanelModule = "@ag-grid-enterprise/filter-tool-panel", n.MenuModule = "@ag-grid-enterprise/menu", n.SetFilterModule = "@ag-grid-enterprise/set-filter", n.MultiFilterModule = "@ag-grid-enterprise/multi-filter", n.StatusBarModule = "@ag-grid-enterprise/status-bar", n.SideBarModule = "@ag-grid-enterprise/side-bar", n.RangeSelectionModule = "@ag-grid-enterprise/range-selection", n.MasterDetailModule = "@ag-grid-enterprise/master-detail", n.RichSelectModule = "@ag-grid-enterprise/rich-select", n.GridChartsModule = "@ag-grid-enterprise/charts", n.ViewportRowModelModule = "@ag-grid-enterprise/viewport-row-model", n.ServerSideRowModelModule = "@ag-grid-enterprise/server-side-row-model", n.ExcelExportModule = "@ag-grid-enterprise/excel-export", n.ClipboardModule = "@ag-grid-enterprise/clipboard", n.SparklinesModule = "@ag-grid-enterprise/sparklines", n.AngularModule = "@ag-grid-community/angular", n.ReactModule = "@ag-grid-community/react", n.VueModule = "@ag-grid-community/vue"; +})(F || (F = {})); +/** + * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue + * @version v29.3.5 + * @link https://www.ag-grid.com/ + * @license MIT + */ +var Vc = function(n, t) { + var e = typeof Symbol == "function" && n[Symbol.iterator]; + if (!e) + return n; + var r = e.call(n), i, o = [], s; + try { + for (; (t === void 0 || t-- > 0) && !(i = r.next()).done; ) + o.push(i.value); + } catch (a) { + s = { error: a }; + } finally { + try { + i && !i.done && (e = r.return) && e.call(r); + } finally { + if (s) + throw s.error; + } + } + return o; +}, N = ( + /** @class */ + function() { + function n() { + } + return n.register = function(t, e) { + e === void 0 && (e = !0), n.runVersionChecks(t), n.modulesMap[t.moduleName] = t, n.setModuleBased(e); + }, n.runVersionChecks = function(t) { + if (n.currentModuleVersion || (n.currentModuleVersion = t.version), t.version ? t.version !== n.currentModuleVersion && console.error("AG Grid: You are using incompatible versions of AG Grid modules. Major and minor versions should always match across modules. '" + t.moduleName + "' is version " + t.version + " but the other modules are version " + this.currentModuleVersion + ". Please update all modules to the same version.") : console.error("AG Grid: You are using incompatible versions of AG Grid modules. Major and minor versions should always match across modules. '" + t.moduleName + "' is incompatible. Please update all modules to the same version."), t.validate) { + var e = t.validate(); + if (!e.isValid) { + var r = e; + console.error("AG Grid: " + r.message); + } + } + }, n.setModuleBased = function(t) { + n.moduleBased === void 0 ? n.moduleBased = t : n.moduleBased !== t && K(function() { + console.warn("AG Grid: You are mixing modules (i.e. @ag-grid-community/core) and packages (ag-grid-community) - you can only use one or the other of these mechanisms."), console.warn("Please see https://www.ag-grid.com/javascript-grid/packages-modules/ for more information."); + }, "ModulePackageCheck"); + }, n.setIsBundled = function() { + n.isBundled = !0; + }, n.registerModules = function(t, e) { + e === void 0 && (e = !0), n.setModuleBased(e), t && t.forEach(function(r) { + return n.register(r, e); + }); + }, n.assertRegistered = function(t, e) { + var r; + if (this.isRegistered(t)) + return !0; + var i = e + t, o; + if (n.isBundled) + o = "AG Grid: unable to use " + e + ` as 'ag-grid-enterprise' has not been loaded. Check you are using the Enterprise bundle: + +