+ <` + O + ' class="ag-filter-from ag-filter-filter" ref="eValue-index0-' + g + '">' + O + `>
+ <` + O + ' class="ag-filter-to ag-filter-filter" ref="eValue-index1-' + g + '">' + O + `>
+
`
+ );
+ }, f.prototype.getValues = function(d) {
+ var g = this, S = [];
+ return this.forEachInput(function(O, z, te, Fe) {
+ d === te && z < Fe && S.push(g.stringToFloat(O.getValue()));
+ }), S;
+ }, f.prototype.areSimpleModelsEqual = function(d, g) {
+ return d.filter === g.filter && d.filterTo === g.filterTo && d.type === g.type;
+ }, f.prototype.getFilterType = function() {
+ return "number";
+ }, f.prototype.stringToFloat = function(d) {
+ if (typeof d == "number")
+ return d;
+ var g = e(d);
+ return g != null && g.trim() === "" && (g = null), this.numberFilterParams.numberParser ? this.numberFilterParams.numberParser(g) : g == null || g.trim() === "-" ? null : parseFloat(g);
+ }, f.prototype.createCondition = function(d) {
+ var g = this.getConditionTypes()[d], S = {
+ filterType: this.getFilterType(),
+ type: g
+ }, O = this.getValues(d);
+ return O.length > 0 && (S.filter = O[0]), O.length > 1 && (S.filterTo = O[1]), S;
+ }, f.prototype.getInputs = function() {
+ return [
+ [this.eValueFrom1, this.eValueTo1],
+ [this.eValueFrom2, this.eValueTo2]
+ ];
+ }, f.prototype.getAllowedCharPattern = function() {
+ var d = (this.numberFilterParams || {}).allowedCharPattern;
+ return d || (!Tl() && !Rc() ? "\\d\\-\\." : null);
+ }, f.DEFAULT_FILTER_OPTIONS = [
+ $s.EQUALS,
+ $s.NOT_EQUAL,
+ $s.LESS_THAN,
+ $s.LESS_THAN_OR_EQUAL,
+ $s.GREATER_THAN,
+ $s.GREATER_THAN_OR_EQUAL,
+ $s.IN_RANGE,
+ $s.BLANK,
+ $s.NOT_BLANK
+ ], dg([
+ qr("eValue-index0-1")
+ ], f.prototype, "eValueFrom1", void 0), dg([
+ qr("eValue-index1-1")
+ ], f.prototype, "eValueTo1", void 0), dg([
+ qr("eValue-index0-2")
+ ], f.prototype, "eValueFrom2", void 0), dg([
+ qr("eValue-index1-2")
+ ], f.prototype, "eValueTo2", void 0), f;
+ }($s)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var H3 = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), Tu = function() {
+ return Tu = Object.assign || function(M) {
+ for (var f, d = 1, g = arguments.length; d < g; d++) {
+ f = arguments[d];
+ for (var S in f)
+ Object.prototype.hasOwnProperty.call(f, S) && (M[S] = f[S]);
+ }
+ return M;
+ }, Tu.apply(this, arguments);
+ }, IC = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Om = (
+ /** @class */
+ function(M) {
+ H3(f, M);
+ function f() {
+ return M.call(this, "textFilter") || this;
+ }
+ return f.trimInput = function(d) {
+ var g = d && d.trim();
+ return g === "" ? d : g;
+ }, f.prototype.getDefaultDebounceMs = function() {
+ return 500;
+ }, f.prototype.setParams = function(d) {
+ M.prototype.setParams.call(this, d), this.textFilterParams = d, this.matcher = this.getTextMatcher(), this.formatter = this.textFilterParams.textFormatter || (this.textFilterParams.caseSensitive ? f.DEFAULT_FORMATTER : f.DEFAULT_LOWERCASE_FORMATTER);
+ }, f.prototype.getTextMatcher = function() {
+ var d = this.textFilterParams.textCustomComparator;
+ return d ? (ho.doOnce(function() {
+ return console.warn("AG Grid - textCustomComparator is deprecated, use textMatcher instead.");
+ }, "textCustomComparator.deprecated"), function(g) {
+ var S = g.filterOption, O = g.value, z = g.filterText;
+ return d(S, O, z);
+ }) : this.textFilterParams.textMatcher || f.DEFAULT_MATCHER;
+ }, f.prototype.createCondition = function(d) {
+ var g = this.getConditionTypes()[d], S = {
+ filterType: this.getFilterType(),
+ type: g
+ }, O = this.getValues(d);
+ return O.length > 0 && (S.filter = O[0]), O.length > 1 && (S.filterTo = O[1]), S;
+ }, f.prototype.getFilterType = function() {
+ return "text";
+ }, f.prototype.areSimpleModelsEqual = function(d, g) {
+ return d.filter === g.filter && d.filterTo === g.filterTo && d.type === g.type;
+ }, f.prototype.getInputs = function() {
+ return [
+ [this.eValueFrom1, this.eValueTo1],
+ [this.eValueFrom2, this.eValueTo2]
+ ];
+ }, f.prototype.getValues = function(d) {
+ var g = this, S = [];
+ return this.forEachInput(function(O, z, te, Fe) {
+ if (d === te && z < Fe) {
+ var ze = e(O.getValue()), ht = (g.textFilterParams.trimInput ? f.trimInput(ze) : ze) || null;
+ S.push(ht), O.setValue(ht, !0);
+ }
+ }), S;
+ }, f.prototype.getDefaultFilterOptions = function() {
+ return f.DEFAULT_FILTER_OPTIONS;
+ }, f.prototype.createValueTemplate = function(d) {
+ var g = d === Hd.One ? "1" : "2";
+ return (
+ /* html */
+ `
+ '
+ )), z = O.getGui();
+ z.appendChild(this.maximizeIcon = Xl("maximize", this.gridOptionsWrapper)), this.maximizeIcon.classList.add("ag-panel-title-bar-button-icon"), z.appendChild(this.minimizeIcon = Xl("minimize", this.gridOptionsWrapper)), this.minimizeIcon.classList.add("ag-panel-title-bar-button-icon", "ag-hidden"), O.addManagedListener(z, "click", this.toggleMaximize.bind(this)), this.addTitleBarButton(O, 0), this.maximizeListeners.push(this.addManagedListener(S, "dblclick", this.toggleMaximize.bind(this))), this.resizeListenerDestroy = this.addManagedListener(this, "resize", function() {
+ g.isMaximized = !1, g.refreshMaximizeIcon();
+ });
+ }
+ }, YNt([
+ pe("popupService")
+ ], f.prototype, "popupService", void 0), f;
+ }(P_e)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var XNt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), lVe = (
+ /** @class */
+ function(M) {
+ XNt(f, M);
+ function f(d) {
+ var g = M.call(this, d, "ag-color-picker", "colorPicker") || this;
+ return d && d.color && (g.value = d.color), g;
+ }
+ return f.prototype.postConstruct = function() {
+ M.prototype.postConstruct.call(this), this.value && this.setValue(this.value);
+ }, f.prototype.showPicker = function() {
+ var d = this, g = this.getGui().getBoundingClientRect(), S = this.createBean(new O_e({
+ closable: !1,
+ modal: !0,
+ hideTitleBar: !0,
+ minWidth: 190,
+ width: 190,
+ height: 250,
+ x: g.right - 190,
+ y: g.top - 250
+ }));
+ this.isPickerDisplayed = !0, S.addCssClass("ag-color-dialog"), yo(this.eWrapper, !0);
+ var O = this.createBean(new HNt({ picker: this }));
+ return O.addDestroyFunc(function() {
+ S.isAlive() && d.destroyBean(S);
+ }), S.setParentComponent(this), S.setBodyComponent(O), O.setValue(this.getValue()), S.addDestroyFunc(function() {
+ d.isDestroyingPicker ? d.isDestroyingPicker = !1 : (d.isDestroyingPicker = !0, O.isAlive() && d.destroyBean(O)), d.isAlive() && (yo(d.eWrapper, !1), d.getFocusableElement().focus()), d.isPickerDisplayed = !1;
+ }), S;
+ }, f.prototype.setValue = function(d) {
+ return this.value === d ? this : (this.eDisplayField.style.backgroundColor = d, M.prototype.setValue.call(this, d));
+ }, f.prototype.getValue = function() {
+ return this.value;
+ }, f;
+ }(Uc)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var KNt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), fR = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, uVe = (
+ /** @class */
+ function(M) {
+ KNt(f, M);
+ function f(d) {
+ d === void 0 && (d = {});
+ var g = M.call(this, f.getTemplate(d)) || this;
+ g.suppressEnabledCheckbox = !0, g.suppressOpenCloseIcons = !1;
+ var S = d.title, O = d.enabled, z = d.items, te = d.suppressEnabledCheckbox, Fe = d.suppressOpenCloseIcons;
+ return g.title = S, g.cssIdentifier = d.cssIdentifier || "default", g.enabled = O ?? !0, g.items = z || [], g.alignItems = d.alignItems || "center", te != null && (g.suppressEnabledCheckbox = te), Fe != null && (g.suppressOpenCloseIcons = Fe), g;
+ }
+ return f.getTemplate = function(d) {
+ var g = d.cssIdentifier || "default", S = d.direction || "vertical";
+ return (
+ /* html */
+ '
`
+ );
+ }, f.prototype.postConstruct = function() {
+ if (this.items.length) {
+ var d = this.items;
+ this.items = [], this.addItems(d);
+ }
+ var g = this.gridOptionsWrapper.getLocaleTextFunc();
+ this.cbGroupEnabled.setLabel(g("enabled", "Enabled")), this.title && this.setTitle(this.title), this.enabled && this.setEnabled(this.enabled), this.setAlignItems(this.alignItems), this.hideEnabledCheckbox(this.suppressEnabledCheckbox), this.hideOpenCloseIcons(this.suppressOpenCloseIcons), this.setupExpandContract(), this.refreshAriaStatus(), this.refreshChildDisplay();
+ }, f.prototype.setupExpandContract = function() {
+ var d = this;
+ this.eGroupClosedIcon.appendChild(rt("columnSelectClosed", this.gridOptionsWrapper, null)), this.eGroupOpenedIcon.appendChild(rt("columnSelectOpen", this.gridOptionsWrapper, null)), this.addManagedListener(this.eTitleBar, "click", function() {
+ return d.toggleGroupExpand();
+ }), this.addManagedListener(this.eTitleBar, "keydown", function(g) {
+ switch (g.key) {
+ case Hr.ENTER:
+ case Hr.SPACE:
+ g.preventDefault(), d.toggleGroupExpand();
+ break;
+ case Hr.RIGHT:
+ case Hr.LEFT:
+ g.preventDefault(), d.toggleGroupExpand(g.key === Hr.RIGHT);
+ break;
+ }
+ });
+ }, f.prototype.refreshAriaStatus = function() {
+ this.suppressOpenCloseIcons || yo(this.eTitleBar, this.expanded);
+ }, f.prototype.refreshChildDisplay = function() {
+ var d = !this.suppressOpenCloseIcons;
+ al(this.eToolbar, this.expanded && !this.suppressEnabledCheckbox), al(this.eGroupOpenedIcon, d && this.expanded), al(this.eGroupClosedIcon, d && !this.expanded);
+ }, f.prototype.isExpanded = function() {
+ return this.expanded;
+ }, f.prototype.setAlignItems = function(d) {
+ this.alignItems !== d && this.removeCssClass("ag-group-item-alignment-" + this.alignItems), this.alignItems = d;
+ var g = "ag-group-item-alignment-" + this.alignItems;
+ return this.addCssClass(g), this;
+ }, f.prototype.toggleGroupExpand = function(d) {
+ return this.suppressOpenCloseIcons ? (this.expanded = !0, this.refreshChildDisplay(), al(this.eContainer, !0), this) : (d = d ?? !this.expanded, this.expanded === d ? this : (this.expanded = d, this.refreshAriaStatus(), this.refreshChildDisplay(), al(this.eContainer, d), this.dispatchEvent({ type: this.expanded ? f.EVENT_EXPANDED : f.EVENT_COLLAPSED }), this));
+ }, f.prototype.addItems = function(d) {
+ var g = this;
+ d.forEach(function(S) {
+ return g.addItem(S);
+ });
+ }, f.prototype.addItem = function(d) {
+ var g = this.eContainer, S = d instanceof ba ? d.getGui() : d;
+ S.classList.add("ag-group-item", "ag-" + this.cssIdentifier + "-group-item"), g.appendChild(S), this.items.push(S);
+ }, f.prototype.hideItem = function(d, g) {
+ var S = this.items[g];
+ S.classList.toggle("ag-hidden", d);
+ }, f.prototype.setTitle = function(d) {
+ return this.eTitle.innerText = d, this;
+ }, f.prototype.addCssClassToTitleBar = function(d) {
+ this.eTitleBar.classList.add(d);
+ }, f.prototype.setEnabled = function(d, g) {
+ return this.enabled = d, this.refreshDisabledStyles(), this.toggleGroupExpand(d), g || this.cbGroupEnabled.setValue(d), this;
+ }, f.prototype.isEnabled = function() {
+ return this.enabled;
+ }, f.prototype.onEnableChange = function(d) {
+ var g = this;
+ return this.cbGroupEnabled.onValueChange(function(S) {
+ g.setEnabled(S, !0), d(S);
+ }), this;
+ }, f.prototype.hideEnabledCheckbox = function(d) {
+ return this.suppressEnabledCheckbox = d, this.refreshChildDisplay(), this.refreshDisabledStyles(), this;
+ }, f.prototype.hideOpenCloseIcons = function(d) {
+ return this.suppressOpenCloseIcons = d, d && this.toggleGroupExpand(!0), this;
+ }, f.prototype.refreshDisabledStyles = function() {
+ this.addOrRemoveCssClass("ag-disabled", !this.enabled), this.suppressEnabledCheckbox && !this.enabled ? (this.eTitleBar.classList.add("ag-disabled-group-title-bar"), this.eTitleBar.removeAttribute("tabindex")) : (this.eTitleBar.classList.remove("ag-disabled-group-title-bar"), this.eTitleBar.setAttribute("tabindex", "0")), this.eContainer.classList.toggle("ag-disabled-group-container", !this.enabled);
+ }, f.EVENT_EXPANDED = "expanded", f.EVENT_COLLAPSED = "collapsed", fR([
+ qr("eTitleBar")
+ ], f.prototype, "eTitleBar", void 0), fR([
+ qr("eGroupOpenedIcon")
+ ], f.prototype, "eGroupOpenedIcon", void 0), fR([
+ qr("eGroupClosedIcon")
+ ], f.prototype, "eGroupClosedIcon", void 0), fR([
+ qr("eToolbar")
+ ], f.prototype, "eToolbar", void 0), fR([
+ qr("cbGroupEnabled")
+ ], f.prototype, "cbGroupEnabled", void 0), fR([
+ qr("eTitle")
+ ], f.prototype, "eTitle", void 0), fR([
+ qr("eContainer")
+ ], f.prototype, "eContainer", void 0), fR([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(ba)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var JNt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), cVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, hVe = (
+ /** @class */
+ function(M) {
+ JNt(f, M);
+ function f(d) {
+ var g = M.call(this) || this;
+ g.skipTabGuardFocus = !1;
+ var S = d.comp, O = d.eTopGuard, z = d.eBottomGuard, te = d.focusInnerElement, Fe = d.onFocusIn, ze = d.onFocusOut, ht = d.shouldStopEventPropagation, Lt = d.onTabKeyDown, ti = d.handleKeyDown, wi = d.eFocusableElement;
+ return g.comp = S, g.eTopGuard = O, g.eBottomGuard = z, g.providedFocusInnerElement = te, g.eFocusableElement = wi, g.providedFocusIn = Fe, g.providedFocusOut = ze, g.providedShouldStopEventPropagation = ht, g.providedOnTabKeyDown = Lt, g.providedHandleKeyDown = ti, g;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.createManagedBean(new R1(this.eFocusableElement, {
+ shouldStopEventPropagation: function() {
+ return d.shouldStopEventPropagation();
+ },
+ onTabKeyDown: function(g) {
+ return d.onTabKeyDown(g);
+ },
+ handleKeyDown: function(g) {
+ return d.handleKeyDown(g);
+ },
+ onFocusIn: function(g) {
+ return d.onFocusIn(g);
+ },
+ onFocusOut: function(g) {
+ return d.onFocusOut(g);
+ }
+ })), this.activateTabGuards(), [this.eTopGuard, this.eBottomGuard].forEach(function(g) {
+ return d.addManagedListener(g, "focus", d.onFocus.bind(d));
+ });
+ }, f.prototype.handleKeyDown = function(d) {
+ this.providedHandleKeyDown && this.providedHandleKeyDown(d);
+ }, f.prototype.tabGuardsAreActive = function() {
+ return !!this.eTopGuard && this.eTopGuard.hasAttribute("tabIndex");
+ }, f.prototype.shouldStopEventPropagation = function() {
+ return this.providedShouldStopEventPropagation ? this.providedShouldStopEventPropagation() : !1;
+ }, f.prototype.activateTabGuards = function() {
+ this.comp.setTabIndex(this.getGridTabIndex());
+ }, f.prototype.deactivateTabGuards = function() {
+ this.comp.setTabIndex();
+ }, f.prototype.onFocus = function(d) {
+ if (this.skipTabGuardFocus) {
+ this.skipTabGuardFocus = !1;
+ return;
+ }
+ var g = d.target === this.eBottomGuard;
+ this.providedFocusInnerElement ? this.providedFocusInnerElement(g) : this.focusInnerElement(g);
+ }, f.prototype.onFocusIn = function(d) {
+ this.providedFocusIn && this.providedFocusIn(d) || this.deactivateTabGuards();
+ }, f.prototype.onFocusOut = function(d) {
+ this.providedFocusOut && this.providedFocusOut(d) || this.eFocusableElement.contains(d.relatedTarget) || this.activateTabGuards();
+ }, f.prototype.onTabKeyDown = function(d) {
+ var g = this;
+ if (this.providedOnTabKeyDown) {
+ this.providedOnTabKeyDown(d);
+ return;
+ }
+ if (!d.defaultPrevented) {
+ var S = this.tabGuardsAreActive();
+ S && this.deactivateTabGuards();
+ var O = this.getNextFocusableElement(d.shiftKey);
+ S && setTimeout(function() {
+ return g.activateTabGuards();
+ }, 0), O && (O.focus(), d.preventDefault());
+ }
+ }, f.prototype.getGridTabIndex = function() {
+ return this.gridOptionsWrapper.getGridTabIndex();
+ }, f.prototype.focusInnerElement = function(d) {
+ d === void 0 && (d = !1);
+ var g = this.focusService.findFocusableElements(this.eFocusableElement);
+ this.tabGuardsAreActive() && (g.splice(0, 1), g.splice(g.length - 1, 1)), g.length && g[d ? g.length - 1 : 0].focus();
+ }, f.prototype.getNextFocusableElement = function(d) {
+ return this.focusService.findNextFocusableElement(this.eFocusableElement, !1, d);
+ }, f.prototype.forceFocusOutOfContainer = function(d) {
+ d === void 0 && (d = !1);
+ var g = d ? this.eTopGuard : this.eBottomGuard;
+ this.activateTabGuards(), this.skipTabGuardFocus = !0, g.focus();
+ }, cVe([
+ pe("focusService")
+ ], f.prototype, "focusService", void 0), cVe([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var ZNt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), QNt = function(M, f) {
+ var d = typeof Symbol == "function" && M[Symbol.iterator];
+ if (!d)
+ return M;
+ var g = d.call(M), S, O = [], z;
+ try {
+ for (; (f === void 0 || f-- > 0) && !(S = g.next()).done; )
+ O.push(S.value);
+ } catch (te) {
+ z = { error: te };
+ } finally {
+ try {
+ S && !S.done && (d = g.return) && d.call(g);
+ } finally {
+ if (z)
+ throw z.error;
+ }
+ }
+ return O;
+ }, ekt = function() {
+ for (var M = [], f = 0; f < arguments.length; f++)
+ M = M.concat(QNt(arguments[f]));
+ return M;
+ }, sW = (
+ /** @class */
+ function(M) {
+ ZNt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.initialiseTabGuard = function(d) {
+ this.eTopGuard = this.createTabGuard("top"), this.eBottomGuard = this.createTabGuard("bottom"), this.eFocusableElement = this.getFocusableElement();
+ var g = [this.eTopGuard, this.eBottomGuard], S = {
+ setTabIndex: function(O) {
+ g.forEach(function(z) {
+ return O != null ? z.setAttribute("tabIndex", O) : z.removeAttribute("tabIndex");
+ });
+ }
+ };
+ this.addTabGuards(this.eTopGuard, this.eBottomGuard), this.tabGuardCtrl = this.createManagedBean(new hVe({
+ comp: S,
+ eTopGuard: this.eTopGuard,
+ eBottomGuard: this.eBottomGuard,
+ eFocusableElement: this.eFocusableElement,
+ onFocusIn: d.onFocusIn,
+ onFocusOut: d.onFocusOut,
+ focusInnerElement: d.focusInnerElement,
+ handleKeyDown: d.handleKeyDown,
+ onTabKeyDown: d.onTabKeyDown,
+ shouldStopEventPropagation: d.shouldStopEventPropagation
+ }));
+ }, f.prototype.createTabGuard = function(d) {
+ var g = document.createElement("div");
+ return g.classList.add("ag-tab-guard", "ag-tab-guard-" + d), tr(g, "presentation"), g;
+ }, f.prototype.addTabGuards = function(d, g) {
+ this.eFocusableElement.insertAdjacentElement("afterbegin", d), this.eFocusableElement.insertAdjacentElement("beforeend", g);
+ }, f.prototype.removeAllChildrenExceptTabGuards = function() {
+ var d = [this.eTopGuard, this.eBottomGuard];
+ Su(this.getFocusableElement()), this.addTabGuards.apply(this, ekt(d));
+ }, f.prototype.forceFocusOutOfContainer = function(d) {
+ d === void 0 && (d = !1), this.tabGuardCtrl.forceFocusOutOfContainer(d);
+ }, f.prototype.appendChild = function(d, g) {
+ xt(d) || (d = d.getGui());
+ var S = this.eBottomGuard;
+ S ? S.insertAdjacentElement("beforebegin", d) : M.prototype.appendChild.call(this, d, g);
+ }, f;
+ }(ba)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var tkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), hne = function() {
+ return hne = Object.assign || function(M) {
+ for (var f, d = 1, g = arguments.length; d < g; d++) {
+ f = arguments[d];
+ for (var S in f)
+ Object.prototype.hasOwnProperty.call(f, S) && (M[S] = f[S]);
+ }
+ return M;
+ }, hne.apply(this, arguments);
+ }, dVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, pVe = (
+ /** @class */
+ function(M) {
+ tkt(f, M);
+ function f(d) {
+ d === void 0 && (d = 1);
+ var g = M.call(
+ this,
+ /* html */
+ ''
+ ) || this;
+ return g.level = d, g.menuItems = [], g;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.initialiseTabGuard({
+ onTabKeyDown: function(g) {
+ return d.onTabKeyDown(g);
+ },
+ handleKeyDown: function(g) {
+ return d.handleKeyDown(g);
+ }
+ });
+ }, f.prototype.onTabKeyDown = function(d) {
+ var g = this.getParentComponent(), S = g && g.getGui(), O = S && S.classList.contains("ag-focus-managed");
+ O || d.preventDefault(), d.shiftKey && this.closeIfIsChild(d);
+ }, f.prototype.handleKeyDown = function(d) {
+ switch (d.key) {
+ case Hr.UP:
+ case Hr.RIGHT:
+ case Hr.DOWN:
+ case Hr.LEFT:
+ d.preventDefault(), this.handleNavKey(d.key);
+ break;
+ case Hr.ESCAPE:
+ var g = this.findTopMenu();
+ g && this.focusService.focusInto(g.getGui());
+ break;
+ }
+ }, f.prototype.clearActiveItem = function() {
+ this.activeMenuItem && (this.activeMenuItem.deactivate(), this.activeMenuItem = null);
+ }, f.prototype.addMenuItems = function(d) {
+ var g = this;
+ d?.forEach(function(S) {
+ S === "separator" ? g.addSeparator() : typeof S == "string" ? console.warn("AG Grid: unrecognised menu item " + S) : g.addItem(S);
+ });
+ }, f.prototype.addItem = function(d) {
+ var g = this, S = this.createManagedBean(new I9(hne(hne({}, d), { isAnotherSubMenuOpen: function() {
+ return g.menuItems.some(function(O) {
+ return O.isSubMenuOpen();
+ });
+ } })));
+ S.setParentComponent(this), Ks(S.getGui(), this.level), this.menuItems.push(S), this.appendChild(S.getGui()), this.addManagedListener(S, I9.EVENT_MENU_ITEM_SELECTED, function(O) {
+ g.dispatchEvent(O);
+ }), this.addManagedListener(S, I9.EVENT_MENU_ITEM_ACTIVATED, function(O) {
+ g.activeMenuItem && g.activeMenuItem !== O.menuItem && g.activeMenuItem.deactivate(), g.activeMenuItem = O.menuItem;
+ });
+ }, f.prototype.activateFirstItem = function() {
+ var d = this.menuItems.filter(function(g) {
+ return !g.isDisabled();
+ })[0];
+ d && d.activate();
+ }, f.prototype.addSeparator = function() {
+ var d = (
+ /* html */
+ `
+ `
+ );
+ this.appendChild(gu(d));
+ }, f.prototype.findTopMenu = function() {
+ var d = this.getParentComponent();
+ if (!d && this instanceof f)
+ return this;
+ for (; ; ) {
+ var g = d && d.getParentComponent && d.getParentComponent();
+ if (!g || !(g instanceof f || g instanceof I9))
+ break;
+ d = g;
+ }
+ return d instanceof f ? d : void 0;
+ }, f.prototype.handleNavKey = function(d) {
+ switch (d) {
+ case Hr.UP:
+ case Hr.DOWN:
+ var g = this.findNextItem(d === Hr.UP);
+ g && g !== this.activeMenuItem && g.activate();
+ return;
+ }
+ var S = this.gridOptionsWrapper.isEnableRtl() ? Hr.RIGHT : Hr.LEFT;
+ d === S ? this.closeIfIsChild() : this.openChild();
+ }, f.prototype.closeIfIsChild = function(d) {
+ var g = this.getParentComponent();
+ g && g instanceof I9 && (d && d.preventDefault(), g.closeSubMenu(), g.getGui().focus());
+ }, f.prototype.openChild = function() {
+ this.activeMenuItem && this.activeMenuItem.openSubMenu(!0);
+ }, f.prototype.findNextItem = function(d) {
+ var g = this.menuItems.filter(function(Fe) {
+ return !Fe.isDisabled();
+ });
+ if (g.length) {
+ if (!this.activeMenuItem)
+ return d ? m(g) : g[0];
+ d && g.reverse();
+ for (var S, O = !1, z = 0; z < g.length; z++) {
+ var te = g[z];
+ if (!O) {
+ te === this.activeMenuItem && (O = !0);
+ continue;
+ }
+ S = te;
+ break;
+ }
+ return S || this.activeMenuItem;
+ }
+ }, f.prototype.destroy = function() {
+ this.clearActiveItem(), M.prototype.destroy.call(this);
+ }, dVe([
+ pe("focusService")
+ ], f.prototype, "focusService", void 0), dVe([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(sW)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var ikt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), rkt = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, fVe = (
+ /** @class */
+ function(M) {
+ ikt(f, M);
+ function f(d) {
+ var g = M.call(this) || this;
+ return g.wrappedComponent = d, g.setTemplateFromElement(d.getGui()), g;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.initialiseTabGuard({
+ onTabKeyDown: function(g) {
+ return d.onTabKeyDown(g);
+ },
+ handleKeyDown: function(g) {
+ return d.handleKeyDown(g);
+ }
+ });
+ }, f.prototype.handleKeyDown = function(d) {
+ d.key === Hr.ESCAPE && this.closePanel();
+ }, f.prototype.onTabKeyDown = function(d) {
+ d.defaultPrevented || (this.closePanel(), d.preventDefault());
+ }, f.prototype.closePanel = function() {
+ var d = this.parentComponent;
+ d.closeSubMenu(), setTimeout(function() {
+ return d.getGui().focus();
+ }, 0);
+ }, rkt([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(sW)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var nkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), mVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, I9 = (
+ /** @class */
+ function(M) {
+ nkt(f, M);
+ function f(d) {
+ var g = M.call(this) || this;
+ return g.params = d, g.isActive = !1, g.subMenuIsOpen = !1, g.setTemplate(
+ /* html */
+ '
'
+ ), g;
+ }
+ return f.prototype.init = function() {
+ var d = this;
+ this.addIcon(), this.addName(), this.addShortcut(), this.addSubMenu(), this.addTooltip();
+ var g = this.getGui();
+ this.params.disabled ? (this.addCssClass(this.getClassName("disabled")), vs(g, !0)) : (this.addGuiEventListener("click", function(S) {
+ return d.onItemSelected(S);
+ }), this.addGuiEventListener("keydown", function(S) {
+ (S.key === Hr.ENTER || S.key === Hr.SPACE) && (S.preventDefault(), d.onItemSelected(S));
+ }), this.addGuiEventListener("mousedown", function(S) {
+ S.stopPropagation(), S.preventDefault();
+ }), this.addGuiEventListener("mouseenter", function() {
+ return d.onMouseEnter();
+ }), this.addGuiEventListener("mouseleave", function() {
+ return d.onMouseLeave();
+ })), this.params.cssClasses && this.params.cssClasses.forEach(function(S) {
+ return d.addCssClass(S);
+ });
+ }, f.prototype.isDisabled = function() {
+ return !!this.params.disabled;
+ }, f.prototype.openSubMenu = function(d) {
+ var g = this;
+ if (d === void 0 && (d = !1), this.closeSubMenu(), !!this.params.subMenu) {
+ var S = gu(
+ /* html */
+ ''
+ ), O;
+ if (this.params.subMenu instanceof Array) {
+ var z = ur(this.getGui()), te = isNaN(z) ? 1 : z + 1, Fe = this.createBean(new pVe(te));
+ Fe.setParentComponent(this), Fe.addMenuItems(this.params.subMenu), S.appendChild(Fe.getGui()), this.addManagedListener(Fe, f.EVENT_MENU_ITEM_SELECTED, function(Rr) {
+ return g.dispatchEvent(Rr);
+ }), Fe.addGuiEventListener("mouseenter", function() {
+ return g.cancelDeactivate();
+ }), O = function() {
+ return g.destroyBean(Fe);
+ }, d && setTimeout(function() {
+ return Fe.activateFirstItem();
+ }, 0);
+ } else {
+ var ze = this.params.subMenu, ht = this.createBean(new fVe(ze));
+ ht.setParentComponent(this);
+ var Lt = ht.getGui(), ti = "mouseenter", wi = function() {
+ return g.cancelDeactivate();
+ };
+ Lt.addEventListener(ti, wi), O = function() {
+ return Lt.removeEventListener(ti, wi);
+ }, S.appendChild(Lt), ze.afterGuiAttached && setTimeout(function() {
+ return ze.afterGuiAttached();
+ }, 0);
+ }
+ var Ti = this.getGui(), qi = this.popupService.positionPopupForMenu.bind(this.popupService, { eventSource: Ti, ePopup: S }), dr = this.gridOptionsWrapper.getLocaleTextFunc(), kr = this.popupService.addPopup({
+ modal: !0,
+ eChild: S,
+ positionCallback: qi,
+ anchorToElement: Ti,
+ ariaLabel: dr("ariaLabelSubMenu", "SubMenu")
+ });
+ this.subMenuIsOpen = !0, yo(Ti, !0), this.hideSubMenu = function() {
+ kr && kr.hideFunc(), g.subMenuIsOpen = !1, yo(Ti, !1), O();
+ };
+ }
+ }, f.prototype.closeSubMenu = function() {
+ this.hideSubMenu && (this.hideSubMenu(), this.hideSubMenu = null, yo(this.getGui(), !1));
+ }, f.prototype.isSubMenuOpen = function() {
+ return this.subMenuIsOpen;
+ }, f.prototype.activate = function(d) {
+ var g = this;
+ this.cancelActivate(), !this.params.disabled && (this.isActive = !0, this.addCssClass(this.getClassName("active")), this.getGui().focus(), d && this.params.subMenu && window.setTimeout(function() {
+ g.isAlive() && g.isActive && g.openSubMenu();
+ }, 300), this.onItemActivated());
+ }, f.prototype.deactivate = function() {
+ this.cancelDeactivate(), this.removeCssClass(this.getClassName("active")), this.isActive = !1, this.subMenuIsOpen && this.hideSubMenu();
+ }, f.prototype.addIcon = function() {
+ if (!(!this.params.checked && !this.params.icon && this.params.isCompact)) {
+ var d = gu(
+ /* html */
+ '
'
+ );
+ this.params.checked ? d.appendChild(Xl("check", this.gridOptionsWrapper)) : this.params.icon && (xt(this.params.icon) ? d.appendChild(this.params.icon) : typeof this.params.icon == "string" ? d.innerHTML = this.params.icon : console.warn("AG Grid: menu item icon must be DOM node or string")), this.getGui().appendChild(d);
+ }
+ }, f.prototype.addName = function() {
+ if (!(!this.params.name && this.params.isCompact)) {
+ var d = gu(
+ /* html */
+ '
' + (this.params.name || "") + ""
+ );
+ this.getGui().appendChild(d);
+ }
+ }, f.prototype.addTooltip = function() {
+ this.params.tooltip && (this.tooltip = this.params.tooltip, this.gridOptionsWrapper.isEnableBrowserTooltips() ? this.getGui().setAttribute("title", this.tooltip) : this.createManagedBean(new Wg(this)));
+ }, f.prototype.getTooltipParams = function() {
+ return {
+ location: "menu",
+ value: this.tooltip
+ };
+ }, f.prototype.addShortcut = function() {
+ if (!(!this.params.shortcut && this.params.isCompact)) {
+ var d = gu(
+ /* html */
+ '
' + (this.params.shortcut || "") + ""
+ );
+ this.getGui().appendChild(d);
+ }
+ }, f.prototype.addSubMenu = function() {
+ if (!(!this.params.subMenu && this.params.isCompact)) {
+ var d = gu(
+ /* html */
+ '
'
+ ), g = this.getGui();
+ if (this.params.subMenu) {
+ var S = this.gridOptionsWrapper.isEnableRtl() ? "smallLeft" : "smallRight";
+ yo(g, !1), d.appendChild(Xl(S, this.gridOptionsWrapper));
+ }
+ g.appendChild(d);
+ }
+ }, f.prototype.onItemSelected = function(d) {
+ if (this.params.action ? this.params.action() : this.openSubMenu(d && d.type === "keydown"), !(this.params.subMenu && !this.params.action)) {
+ var g = {
+ type: f.EVENT_MENU_ITEM_SELECTED,
+ action: this.params.action,
+ checked: this.params.checked,
+ cssClasses: this.params.cssClasses,
+ disabled: this.params.disabled,
+ icon: this.params.icon,
+ name: this.params.name,
+ shortcut: this.params.shortcut,
+ subMenu: this.params.subMenu,
+ tooltip: this.params.tooltip,
+ event: d
+ };
+ this.dispatchEvent(g);
+ }
+ }, f.prototype.onItemActivated = function() {
+ var d = {
+ type: f.EVENT_MENU_ITEM_ACTIVATED,
+ menuItem: this
+ };
+ this.dispatchEvent(d);
+ }, f.prototype.cancelActivate = function() {
+ this.activateTimeoutId && (window.clearTimeout(this.activateTimeoutId), this.activateTimeoutId = 0);
+ }, f.prototype.cancelDeactivate = function() {
+ this.deactivateTimeoutId && (window.clearTimeout(this.deactivateTimeoutId), this.deactivateTimeoutId = 0);
+ }, f.prototype.onMouseEnter = function() {
+ var d = this;
+ this.cancelDeactivate(), this.params.isAnotherSubMenuOpen() ? this.activateTimeoutId = window.setTimeout(function() {
+ return d.activate(!0);
+ }, f.ACTIVATION_DELAY) : this.activate(!0);
+ }, f.prototype.onMouseLeave = function() {
+ var d = this;
+ this.cancelActivate(), this.isSubMenuOpen() ? this.deactivateTimeoutId = window.setTimeout(function() {
+ return d.deactivate();
+ }, f.ACTIVATION_DELAY) : this.deactivate();
+ }, f.prototype.getClassName = function(d) {
+ var g = this.params.isCompact ? "ag-compact-menu-option" : "ag-menu-option";
+ return d ? g + "-" + d : g;
+ }, f.EVENT_MENU_ITEM_SELECTED = "menuItemSelected", f.EVENT_MENU_ITEM_ACTIVATED = "menuItemActivated", f.ACTIVATION_DELAY = 80, mVe([
+ pe("popupService")
+ ], f.prototype, "popupService", void 0), mVe([
+ ct
+ ], f.prototype, "init", null), f;
+ }(ba)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var skt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), rw = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, okt = function(M, f) {
+ var d = typeof Symbol == "function" && M[Symbol.iterator];
+ if (!d)
+ return M;
+ var g = d.call(M), S, O = [], z;
+ try {
+ for (; (f === void 0 || f-- > 0) && !(S = g.next()).done; )
+ O.push(S.value);
+ } catch (te) {
+ z = { error: te };
+ } finally {
+ try {
+ S && !S.done && (d = g.return) && d.call(g);
+ } finally {
+ if (z)
+ throw z.error;
+ }
+ }
+ return O;
+ }, akt = function() {
+ for (var M = [], f = 0; f < arguments.length; f++)
+ M = M.concat(okt(arguments[f]));
+ return M;
+ }, A9 = (
+ /** @class */
+ function(M) {
+ skt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ d = f, f.addKeyboardModeEvents = function(g, S) {
+ var O = d.instancesMonitored.get(g);
+ O && O.length > 0 ? O.indexOf(S) === -1 && O.push(S) : (d.instancesMonitored.set(g, [S]), g.addEventListener("keydown", d.toggleKeyboardMode), g.addEventListener("mousedown", d.toggleKeyboardMode));
+ }, f.removeKeyboardModeEvents = function(g, S) {
+ var O = d.instancesMonitored.get(g), z = [];
+ O && O.length && (z = akt(O).filter(function(te) {
+ return te !== S;
+ }), d.instancesMonitored.set(g, z)), z.length === 0 && (g.removeEventListener("keydown", d.toggleKeyboardMode), g.removeEventListener("mousedown", d.toggleKeyboardMode));
+ }, f.toggleKeyboardMode = function(g) {
+ var S = d.keyboardModeActive, O = g.type === "keydown";
+ if (!(O && (g.ctrlKey || g.metaKey || g.altKey)) && !(S && O || !S && !O)) {
+ d.keyboardModeActive = O;
+ var z = g.target.ownerDocument;
+ if (z) {
+ var te = d.instancesMonitored.get(z);
+ te && te.forEach(function(Fe) {
+ Fe.dispatchEvent({ type: O ? ui.EVENT_KEYBOARD_FOCUS : ui.EVENT_MOUSE_FOCUS });
+ });
+ }
+ }
+ }, f.prototype.init = function() {
+ var g = this, S = this.clearFocusedCell.bind(this);
+ this.addManagedListener(this.eventService, ui.EVENT_COLUMN_PIVOT_MODE_CHANGED, S), this.addManagedListener(this.eventService, ui.EVENT_NEW_COLUMNS_LOADED, this.onColumnEverythingChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_GROUP_OPENED, S), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_ROW_GROUP_CHANGED, S), this.ctrlsService.whenReady(function(O) {
+ g.gridCtrl = O.gridCtrl;
+ var z = g.gridOptionsWrapper.getDocument();
+ d.addKeyboardModeEvents(z, g.gridCtrl), g.addDestroyFunc(function() {
+ return g.unregisterGridCompController(g.gridCtrl);
+ });
+ });
+ }, f.prototype.unregisterGridCompController = function(g) {
+ var S = this.gridOptionsWrapper.getDocument();
+ d.removeKeyboardModeEvents(S, g);
+ }, f.prototype.onColumnEverythingChanged = function() {
+ if (this.focusedCellPosition) {
+ var g = this.focusedCellPosition.column, S = this.columnModel.getGridColumn(g.getId());
+ g !== S && this.clearFocusedCell();
+ }
+ }, f.prototype.isKeyboardMode = function() {
+ return d.keyboardModeActive;
+ }, f.prototype.getFocusCellToUseAfterRefresh = function() {
+ var g = this.gridOptionsWrapper.getDocument();
+ return this.gridOptionsWrapper.isSuppressFocusAfterRefresh() || !this.focusedCellPosition || this.isDomDataMissingInHierarchy(g.activeElement, Jb.DOM_DATA_KEY_ROW_CTRL) ? null : this.focusedCellPosition;
+ }, f.prototype.getFocusHeaderToUseAfterRefresh = function() {
+ var g = this.gridOptionsWrapper.getDocument();
+ return this.gridOptionsWrapper.isSuppressFocusAfterRefresh() || !this.focusedHeaderPosition || this.isDomDataMissingInHierarchy(g.activeElement, GC.DOM_DATA_KEY_HEADER_CTRL) ? null : this.focusedHeaderPosition;
+ }, f.prototype.isDomDataMissingInHierarchy = function(g, S) {
+ for (var O = g; O; ) {
+ var z = this.gridOptionsWrapper.getDomData(O, S);
+ if (z)
+ return !1;
+ O = O.parentNode;
+ }
+ return !0;
+ }, f.prototype.clearFocusedCell = function() {
+ this.focusedCellPosition = null, this.onCellFocused(!1);
+ }, f.prototype.getFocusedCell = function() {
+ return this.focusedCellPosition;
+ }, f.prototype.setFocusedCell = function(g, S, O, z) {
+ z === void 0 && (z = !1);
+ var te = this.columnModel.getGridColumn(S);
+ if (!te) {
+ this.focusedCellPosition = null;
+ return;
+ }
+ this.focusedCellPosition = te ? { rowIndex: g, rowPinned: e(O), column: te } : null, this.onCellFocused(z);
+ }, f.prototype.isCellFocused = function(g) {
+ return this.focusedCellPosition == null ? !1 : this.focusedCellPosition.column === g.column && this.isRowFocused(g.rowIndex, g.rowPinned);
+ }, f.prototype.isRowNodeFocused = function(g) {
+ return this.isRowFocused(g.rowIndex, g.rowPinned);
+ }, f.prototype.isHeaderWrapperFocused = function(g) {
+ if (this.focusedHeaderPosition == null)
+ return !1;
+ var S = g.getColumnGroupChild(), O = g.getRowIndex(), z = g.getPinned(), te = this.focusedHeaderPosition, Fe = te.column, ze = te.headerRowIndex;
+ return S === Fe && O === ze && z == Fe.getPinned();
+ }, f.prototype.clearFocusedHeader = function() {
+ this.focusedHeaderPosition = null;
+ }, f.prototype.getFocusedHeader = function() {
+ return this.focusedHeaderPosition;
+ }, f.prototype.setFocusedHeader = function(g, S) {
+ this.focusedHeaderPosition = { headerRowIndex: g, column: S };
+ }, f.prototype.focusHeaderPosition = function(g) {
+ var S = g.direction, O = g.fromTab, z = g.allowUserOverride, te = g.event, Fe = g.headerPosition;
+ if (z) {
+ var ze = this.gridOptionsWrapper, ht = this.getFocusedHeader(), Lt = this.headerNavigationService.getHeaderRowCount();
+ if (O) {
+ var ti = ze.getTabToNextHeaderFunc();
+ if (ti) {
+ var wi = {
+ backwards: S === "Before",
+ previousHeaderPosition: ht,
+ nextHeaderPosition: Fe,
+ headerRowCount: Lt
+ };
+ Fe = ti(wi);
+ }
+ } else {
+ var ti = ze.getNavigateToNextHeaderFunc();
+ if (ti && te) {
+ var Ti = {
+ key: te.key,
+ previousHeaderPosition: ht,
+ nextHeaderPosition: Fe,
+ headerRowCount: Lt,
+ event: te
+ };
+ Fe = ti(Ti);
+ }
+ }
+ }
+ if (!Fe)
+ return !1;
+ if (Fe.headerRowIndex === -1)
+ return this.focusGridView(Fe.column);
+ this.headerNavigationService.scrollToColumn(Fe.column, S);
+ var qi = this.ctrlsService.getHeaderRowContainerCtrl(Fe.column.getPinned()), dr = qi.focusHeader(Fe.headerRowIndex, Fe.column, te);
+ return dr;
+ }, f.prototype.focusFirstHeader = function() {
+ var g = this.columnModel.getAllDisplayedColumns()[0];
+ return g ? (g.getParent() && (g = this.columnModel.getColumnGroupAtLevel(g, 0)), this.focusHeaderPosition({
+ headerPosition: { headerRowIndex: 0, column: g }
+ })) : !1;
+ }, f.prototype.focusLastHeader = function(g) {
+ var S = this.headerNavigationService.getHeaderRowCount() - 1, O = m(this.columnModel.getAllDisplayedColumns());
+ return this.focusHeaderPosition({
+ headerPosition: { headerRowIndex: S, column: O },
+ event: g
+ });
+ }, f.prototype.isAnyCellFocused = function() {
+ return !!this.focusedCellPosition;
+ }, f.prototype.isRowFocused = function(g, S) {
+ return this.focusedCellPosition == null ? !1 : this.focusedCellPosition.rowIndex === g && this.focusedCellPosition.rowPinned === e(S);
+ }, f.prototype.findFocusableElements = function(g, S, O) {
+ O === void 0 && (O = !1);
+ var z = Ue.FOCUSABLE_SELECTOR, te = Ue.FOCUSABLE_EXCLUDE;
+ S && (te += ", " + S), O && (te += ', [tabindex="-1"]');
+ var Fe = Array.prototype.slice.apply(g.querySelectorAll(z)), ze = Array.prototype.slice.apply(g.querySelectorAll(te));
+ if (!ze.length)
+ return Fe;
+ var ht = function(Lt, ti) {
+ return Lt.filter(function(wi) {
+ return ti.indexOf(wi) === -1;
+ });
+ };
+ return ht(Fe, ze);
+ }, f.prototype.focusInto = function(g, S, O) {
+ S === void 0 && (S = !1), O === void 0 && (O = !1);
+ var z = this.findFocusableElements(g, null, O), te = S ? m(z) : z[0];
+ return te ? (te.focus(), !0) : !1;
+ }, f.prototype.findNextFocusableElement = function(g, S, O) {
+ g === void 0 && (g = this.eGridDiv);
+ var z = this.findFocusableElements(g, S ? ':not([tabindex="-1"])' : null), te = this.gridOptionsWrapper.getDocument(), Fe = te.activeElement, ze;
+ S ? ze = z.findIndex(function(Lt) {
+ return Lt.contains(Fe);
+ }) : ze = z.indexOf(Fe);
+ var ht = ze + (O ? -1 : 1);
+ return ht < 0 || ht >= z.length ? null : z[ht];
+ }, f.prototype.isFocusUnderManagedComponent = function(g) {
+ var S = this.gridOptionsWrapper.getDocument(), O = g.querySelectorAll("." + R1.FOCUS_MANAGED_CLASS);
+ if (!O.length)
+ return !1;
+ for (var z = 0; z < O.length; z++)
+ if (O[z].contains(S.activeElement))
+ return !0;
+ return !1;
+ }, f.prototype.findTabbableParent = function(g, S) {
+ S === void 0 && (S = 5);
+ for (var O = 0; g && Rp(g) === null && ++O <= S; )
+ g = g.parentElement;
+ return Rp(g) === null ? null : g;
+ }, f.prototype.onCellFocused = function(g) {
+ var S = {
+ type: ui.EVENT_CELL_FOCUSED,
+ forceBrowserFocus: g,
+ rowIndex: null,
+ column: null,
+ floating: null,
+ api: this.gridApi,
+ columnApi: this.columnApi,
+ rowPinned: null,
+ isFullWidthCell: !1
+ };
+ if (this.focusedCellPosition) {
+ var O = S.rowIndex = this.focusedCellPosition.rowIndex, z = S.rowPinned = this.focusedCellPosition.rowPinned;
+ S.column = this.focusedCellPosition.column;
+ var te = this.rowRenderer.getRowByPosition({ rowIndex: O, rowPinned: z });
+ te && (S.isFullWidthCell = te.isFullWidth());
+ }
+ this.eventService.dispatchEvent(S);
+ }, f.prototype.focusGridView = function(g, S) {
+ if (this.gridOptionsWrapper.isSuppressCellFocus())
+ return S ? this.focusLastHeader() : this.focusNextGridCoreContainer(!1);
+ var O = S ? this.rowPositionUtils.getLastRow() : this.rowPositionUtils.getFirstRow();
+ if (!O)
+ return !1;
+ var z = O.rowIndex, te = O.rowPinned, Fe = this.getFocusedHeader();
+ if (!g && Fe && (g = Fe.column), z == null || !g)
+ return !1;
+ if (this.navigationService.ensureCellVisible({ rowIndex: z, column: g, rowPinned: te }), this.setFocusedCell(z, g, e(te), !0), this.rangeService) {
+ var ze = { rowIndex: z, rowPinned: te, column: g };
+ this.rangeService.setRangeToCell(ze);
+ }
+ return !0;
+ }, f.prototype.focusNextGridCoreContainer = function(g) {
+ return this.gridCtrl.focusNextInnerContainer(g) ? !0 : (!g && !this.gridCtrl.isDetailGrid() && this.gridCtrl.forceFocusOutOfContainer(), !1);
+ };
+ var d;
+ return f.AG_KEYBOARD_FOCUS = "ag-keyboard-focus", f.keyboardModeActive = !1, f.instancesMonitored = /* @__PURE__ */ new Map(), rw([
+ pe("eGridDiv")
+ ], f.prototype, "eGridDiv", void 0), rw([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), rw([
+ pe("headerNavigationService")
+ ], f.prototype, "headerNavigationService", void 0), rw([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), rw([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), rw([
+ pe("rowRenderer")
+ ], f.prototype, "rowRenderer", void 0), rw([
+ pe("rowPositionUtils")
+ ], f.prototype, "rowPositionUtils", void 0), rw([
+ Ae("rangeService")
+ ], f.prototype, "rangeService", void 0), rw([
+ pe("navigationService")
+ ], f.prototype, "navigationService", void 0), rw([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), rw([
+ ct
+ ], f.prototype, "init", null), f = d = rw([
+ Ne("focusService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var lkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), oW = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, mR;
+ (function(M) {
+ M[M.vertical = 0] = "vertical", M[M.horizontal = 1] = "horizontal";
+ })(mR || (mR = {}));
+ var ukt = 0, gVe = (
+ /** @class */
+ function(M) {
+ lkt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.popupList = [], d;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.ctrlsService.whenReady(function(g) {
+ d.gridCtrl = g.gridCtrl, d.addManagedListener(d.gridCtrl, ui.EVENT_KEYBOARD_FOCUS, function() {
+ d.popupList.forEach(function(S) {
+ return S.element.classList.add(A9.AG_KEYBOARD_FOCUS);
+ });
+ }), d.addManagedListener(d.gridCtrl, ui.EVENT_MOUSE_FOCUS, function() {
+ d.popupList.forEach(function(S) {
+ return S.element.classList.remove(A9.AG_KEYBOARD_FOCUS);
+ });
+ });
+ });
+ }, f.prototype.getPopupParent = function() {
+ var d = this.gridOptionsWrapper.getPopupParent();
+ return d || this.gridCtrl.getGui();
+ }, f.prototype.positionPopupForMenu = function(d) {
+ var g = d.eventSource.getBoundingClientRect(), S = this.getParentRect(), O = this.keepXYWithinBounds(d.ePopup, g.top - S.top, mR.vertical), z = d.ePopup.clientWidth > 0 ? d.ePopup.clientWidth : 200;
+ d.ePopup.style.minWidth = z + "px";
+ var te = S.right - S.left, Fe = te - z, ze;
+ this.gridOptionsWrapper.isEnableRtl() ? (ze = Lt(), ze < 0 && (ze = ht()), ze > Fe && (ze = 0)) : (ze = ht(), ze > Fe && (ze = Lt()), ze < 0 && (ze = 0)), d.ePopup.style.left = ze + "px", d.ePopup.style.top = O + "px";
+ function ht() {
+ return g.right - S.left - 2;
+ }
+ function Lt() {
+ return g.left - S.left - z;
+ }
+ }, f.prototype.positionPopupUnderMouseEvent = function(d) {
+ var g = d.ePopup, S = d.nudgeX, O = d.nudgeY, z = this.calculatePointerAlign(d.mouseEvent), te = z.x, Fe = z.y;
+ this.positionPopup({
+ ePopup: g,
+ x: te,
+ y: Fe,
+ nudgeX: S,
+ nudgeY: O,
+ keepWithinBounds: !0
+ }), this.callPostProcessPopup(d.type, d.ePopup, null, d.mouseEvent, d.column, d.rowNode);
+ }, f.prototype.calculatePointerAlign = function(d) {
+ var g = this.getParentRect();
+ return {
+ x: d.clientX - g.left,
+ y: d.clientY - g.top
+ };
+ }, f.prototype.positionPopupUnderComponent = function(d) {
+ var g = d.eventSource.getBoundingClientRect(), S = d.alignSide || "left", O = this.getParentRect(), z = g.left - O.left;
+ S === "right" && (z -= d.ePopup.offsetWidth - g.width), this.positionPopup({
+ ePopup: d.ePopup,
+ nudgeX: d.nudgeX,
+ nudgeY: d.nudgeY,
+ x: z,
+ y: g.top - O.top + g.height,
+ keepWithinBounds: d.keepWithinBounds
+ }), this.callPostProcessPopup(d.type, d.ePopup, d.eventSource, null, d.column, d.rowNode);
+ }, f.prototype.positionPopupOverComponent = function(d) {
+ var g = d.eventSource.getBoundingClientRect(), S = this.getParentRect();
+ this.positionPopup({
+ ePopup: d.ePopup,
+ nudgeX: d.nudgeX,
+ nudgeY: d.nudgeY,
+ x: g.left - S.left,
+ y: g.top - S.top,
+ keepWithinBounds: d.keepWithinBounds
+ }), this.callPostProcessPopup(d.type, d.ePopup, d.eventSource, null, d.column, d.rowNode);
+ }, f.prototype.callPostProcessPopup = function(d, g, S, O, z, te) {
+ var Fe = this.gridOptionsWrapper.getPostProcessPopupFunc();
+ if (Fe) {
+ var ze = {
+ column: z,
+ rowNode: te,
+ ePopup: g,
+ type: d,
+ eventSource: S,
+ mouseEvent: O
+ };
+ Fe(ze);
+ }
+ }, f.prototype.positionPopup = function(d) {
+ var g = d.ePopup, S = d.keepWithinBounds, O = d.nudgeX, z = d.nudgeY, te = d.x, Fe = d.y;
+ O && (te += O), z && (Fe += z), S && (te = this.keepXYWithinBounds(g, te, mR.horizontal), Fe = this.keepXYWithinBounds(g, Fe, mR.vertical)), g.style.left = te + "px", g.style.top = Fe + "px";
+ }, f.prototype.getActivePopups = function() {
+ return this.popupList.map(function(d) {
+ return d.element;
+ });
+ }, f.prototype.getPopupList = function() {
+ return this.popupList;
+ }, f.prototype.getParentRect = function() {
+ var d = this.gridOptionsWrapper.getDocument(), g = this.getPopupParent();
+ g === d.body && (g = d.documentElement);
+ var S = getComputedStyle(g), O = g.getBoundingClientRect();
+ return {
+ top: O.top + parseFloat(S.borderTopWidth) || 0,
+ left: O.left + parseFloat(S.borderLeftWidth) || 0,
+ right: O.right + parseFloat(S.borderRightWidth) || 0,
+ bottom: O.bottom + parseFloat(S.borderBottomWidth) || 0
+ };
+ }, f.prototype.keepXYWithinBounds = function(d, g, S) {
+ var O = S === mR.vertical, z = O ? "clientHeight" : "clientWidth", te = O ? "top" : "left", Fe = O ? "offsetHeight" : "offsetWidth", ze = O ? "scrollTop" : "scrollLeft", ht = this.gridOptionsWrapper.getDocument(), Lt = ht.documentElement, ti = this.getPopupParent(), wi = ti.getBoundingClientRect(), Ti = ht.documentElement.getBoundingClientRect(), qi = ti === ht.body, dr = d[Fe], kr = O ? Wo : lp, Rr = qi ? kr(Lt) + Lt[ze] : ti[z];
+ qi && (Rr -= Math.abs(Ti[te] - wi[te]));
+ var Vr = Rr - dr;
+ return Math.min(Math.max(g, 0), Math.abs(Vr));
+ }, f.prototype.keepPopupPositionedRelativeTo = function(d) {
+ var g = this, S = this.getPopupParent(), O = S.getBoundingClientRect(), z = d.element.getBoundingClientRect(), te = O.top - z.top, Fe = O.left - z.left, ze = te, ht = Fe, Lt = d.ePopup.style.top, ti = parseInt(Lt.substring(0, Lt.length - 1), 10), wi = d.ePopup.style.left, Ti = parseInt(wi.substring(0, wi.length - 1), 10);
+ return new Pm(function(qi) {
+ g.getFrameworkOverrides().setInterval(function() {
+ var dr = S.getBoundingClientRect(), kr = d.element.getBoundingClientRect(), Rr = kr.top == 0 && kr.left == 0 && kr.height == 0 && kr.width == 0;
+ if (Rr) {
+ d.hidePopup();
+ return;
+ }
+ var Vr = dr.top - kr.top;
+ if (Vr != ze) {
+ var An = g.keepXYWithinBounds(d.ePopup, ti + te - Vr, mR.vertical);
+ d.ePopup.style.top = An + "px";
+ }
+ ze = Vr;
+ var Js = dr.left - kr.left;
+ if (Js != ht) {
+ var Ya = g.keepXYWithinBounds(d.ePopup, Ti + Fe - Js, mR.horizontal);
+ d.ePopup.style.left = Ya + "px";
+ }
+ ht = Js;
+ }, 200).then(function(dr) {
+ var kr = function() {
+ dr != null && window.clearInterval(dr);
+ };
+ qi(kr);
+ });
+ });
+ }, f.prototype.addPopup = function(d) {
+ var g = this, S = d.modal, O = d.eChild, z = d.closeOnEsc, te = d.closedCallback, Fe = d.click, ze = d.alwaysOnTop, ht = d.afterGuiAttached, Lt = d.positionCallback, ti = d.anchorToElement, wi = d.ariaLabel, Ti = this.gridOptionsWrapper.getDocument(), qi = new Pm(function(Il) {
+ return Il(function() {
+ });
+ });
+ if (!Ti)
+ return console.warn("ag-grid: could not find the document, document is empty"), { hideFunc: function() {
+ }, stopAnchoringPromise: qi };
+ var dr = this.popupList.findIndex(function(Il) {
+ return Il.element === O;
+ });
+ if (dr !== -1) {
+ var kr = this.popupList[dr];
+ return { hideFunc: kr.hideFunc, stopAnchoringPromise: kr.stopAnchoringPromise };
+ }
+ var Rr = this.getPopupParent();
+ O.style.top == null && (O.style.top = "0px"), O.style.left == null && (O.style.left = "0px");
+ var Vr = document.createElement("div"), An = this.environment.getTheme().theme;
+ An && Vr.classList.add(An), Vr.classList.add("ag-popup"), O.classList.add(this.gridOptionsWrapper.isEnableRtl() ? "ag-rtl" : "ag-ltr", "ag-popup-child"), O.hasAttribute("role") || tr(O, "dialog"), $n(O, wi), this.focusService.isKeyboardMode() && O.classList.add(A9.AG_KEYBOARD_FOCUS), Vr.appendChild(O), Rr.appendChild(Vr), ze ? this.setAlwaysOnTop(Vr, !0) : this.bringPopupToFront(Vr);
+ var Js = !1, Ya = function(Il) {
+ if (Vr.contains(Ti.activeElement)) {
+ var kp = Il.key;
+ kp === Hr.ESCAPE && El({ keyboardEvent: Il });
+ }
+ }, Xa = function(Il) {
+ return El({ mouseEvent: Il });
+ }, po = function(Il) {
+ return El({ touchEvent: Il });
+ }, El = function(Il) {
+ Il === void 0 && (Il = {});
+ var kp = Il.mouseEvent, $p = Il.touchEvent, c2 = Il.keyboardEvent;
+ // we don't hide popup if the event was on the child, or any
+ // children of this child
+ g.isEventFromCurrentPopup({ mouseEvent: kp, touchEvent: $p }, O) || // if the event to close is actually the open event, then ignore it
+ g.isEventSameChainAsOriginalEvent({ originalMouseEvent: Fe, mouseEvent: kp, touchEvent: $p }) || // this method should only be called once. the client can have different
+ // paths, each one wanting to close, so this method may be called multiple times.
+ Js || (Js = !0, Rr.removeChild(Vr), Ti.removeEventListener("keydown", Ya), Ti.removeEventListener("mousedown", Xa), Ti.removeEventListener("touchstart", po), Ti.removeEventListener("contextmenu", Xa), g.eventService.removeEventListener(ui.EVENT_DRAG_STARTED, Xa), te && te(kp || $p || c2), g.popupList = g.popupList.filter(function(h2) {
+ return h2.element !== O;
+ }), qi && qi.then(function(h2) {
+ return h2 && h2();
+ }));
+ };
+ return ht && ht({ hidePopup: El }), window.setTimeout(function() {
+ z && Ti.addEventListener("keydown", Ya), S && (Ti.addEventListener("mousedown", Xa), g.eventService.addEventListener(ui.EVENT_DRAG_STARTED, Xa), Ti.addEventListener("touchstart", po), Ti.addEventListener("contextmenu", Xa));
+ }, 0), Lt && Lt(), ti && (qi = this.keepPopupPositionedRelativeTo({
+ element: ti,
+ ePopup: O,
+ hidePopup: El
+ })), this.popupList.push({
+ element: O,
+ wrapper: Vr,
+ hideFunc: El,
+ stopAnchoringPromise: qi,
+ instanceId: ukt++,
+ isAnchored: !!ti
+ }), {
+ hideFunc: El,
+ stopAnchoringPromise: qi
+ };
+ }, f.prototype.hasAnchoredPopup = function() {
+ return this.popupList.some(function(d) {
+ return d.isAnchored;
+ });
+ }, f.prototype.isEventFromCurrentPopup = function(d, g) {
+ var S = d.mouseEvent, O = d.touchEvent, z = S || O;
+ if (!z)
+ return !1;
+ var te = this.popupList.findIndex(function(ht) {
+ return ht.element === g;
+ });
+ if (te === -1)
+ return !1;
+ for (var Fe = te; Fe < this.popupList.length; Fe++) {
+ var ze = this.popupList[Fe];
+ if (jr(ze.element, z))
+ return !0;
+ }
+ return this.isElementWithinCustomPopup(z.target);
+ }, f.prototype.isElementWithinCustomPopup = function(d) {
+ for (var g = this.gridOptionsWrapper.getDocument(); d && d !== g.body; ) {
+ if (d.classList.contains("ag-custom-component-popup") || d.parentElement === null)
+ return !0;
+ d = d.parentElement;
+ }
+ return !1;
+ }, f.prototype.isEventSameChainAsOriginalEvent = function(d) {
+ var g = d.originalMouseEvent, S = d.mouseEvent, O = d.touchEvent, z = null;
+ if (S ? z = S : O && (z = O.touches[0]), z && g) {
+ var te = S ? S.screenX : 0, Fe = S ? S.screenY : 0, ze = Math.abs(g.screenX - te) < 5, ht = Math.abs(g.screenY - Fe) < 5;
+ if (ze && ht)
+ return !0;
+ }
+ return !1;
+ }, f.prototype.getWrapper = function(d) {
+ for (; !d.classList.contains("ag-popup") && d.parentElement; )
+ d = d.parentElement;
+ return d.classList.contains("ag-popup") ? d : null;
+ }, f.prototype.setAlwaysOnTop = function(d, g) {
+ var S = this.getWrapper(d);
+ S && (S.classList.toggle("ag-always-on-top", !!g), g && this.bringPopupToFront(S));
+ }, f.prototype.bringPopupToFront = function(d) {
+ var g = this.getPopupParent(), S = Array.prototype.slice.call(g.querySelectorAll(".ag-popup")), O = S.length, z = Array.prototype.slice.call(g.querySelectorAll(".ag-popup.ag-always-on-top")), te = z.length, Fe = this.getWrapper(d);
+ if (!(!Fe || O <= 1 || !g.contains(d))) {
+ var ze = S.indexOf(Fe), ht = Fe.querySelectorAll("div"), Lt = [];
+ if (ht.forEach(function(qi) {
+ qi.scrollTop !== 0 && Lt.push([qi, qi.scrollTop]);
+ }), te) {
+ var ti = Fe.classList.contains("ag-always-on-top");
+ ti ? ze !== O - 1 && m(z).insertAdjacentElement("afterend", Fe) : ze !== O - te - 1 && z[0].insertAdjacentElement("beforebegin", Fe);
+ } else
+ ze !== O - 1 && m(S).insertAdjacentElement("afterend", Fe);
+ for (; Lt.length; ) {
+ var wi = Lt.pop();
+ wi[0].scrollTop = wi[1];
+ }
+ var Ti = {
+ type: "popupToFront",
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ eWrapper: Fe
+ };
+ this.eventService.dispatchEvent(Ti);
+ }
+ }, oW([
+ pe("environment")
+ ], f.prototype, "environment", void 0), oW([
+ pe("focusService")
+ ], f.prototype, "focusService", void 0), oW([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), oW([
+ ct
+ ], f.prototype, "postConstruct", null), f = oW([
+ Ne("popupService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var ckt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), dne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, hkt = (
+ /** @class */
+ function(M) {
+ ckt(f, M);
+ function f(d, g, S) {
+ d === void 0 && (d = "default"), g === void 0 && (g = "listbox");
+ var O = M.call(this, f.getTemplate(d)) || this;
+ return O.cssIdentifier = d, O.ariaRole = g, O.listName = S, O.renderedRows = /* @__PURE__ */ new Map(), O.rowHeight = 20, O.isDestroyed = !1, O;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.addScrollListener(), this.rowHeight = this.getItemHeight(), this.addResizeObserver(), this.initialiseTabGuard({
+ onFocusIn: function(g) {
+ return d.onFocusIn(g);
+ },
+ onFocusOut: function(g) {
+ return d.onFocusOut(g);
+ },
+ focusInnerElement: function(g) {
+ return d.focusInnerElement(g);
+ },
+ onTabKeyDown: function(g) {
+ return d.onTabKeyDown(g);
+ },
+ handleKeyDown: function(g) {
+ return d.handleKeyDown(g);
+ }
+ }), this.setAriaProperties();
+ }, f.prototype.setAriaProperties = function() {
+ var d = this.gridOptionsWrapper.getLocaleTextFunc(), g = d("ariaDefaultListName", this.listName || "List"), S = this.eContainer;
+ tr(S, this.ariaRole), $n(S, g);
+ }, f.prototype.addResizeObserver = function() {
+ var d = this.drawVirtualRows.bind(this), g = this.resizeObserverService.observeResize(this.getGui(), d);
+ this.addDestroyFunc(g);
+ }, f.prototype.focusInnerElement = function(d) {
+ this.focusRow(d ? this.model.getRowCount() - 1 : 0);
+ }, f.prototype.onFocusIn = function(d) {
+ var g = d.target;
+ return g.classList.contains("ag-virtual-list-item") && (this.lastFocusedRowIndex = Jr(g) - 1), !1;
+ }, f.prototype.onFocusOut = function(d) {
+ return this.getFocusableElement().contains(d.relatedTarget) || (this.lastFocusedRowIndex = null), !1;
+ }, f.prototype.handleKeyDown = function(d) {
+ switch (d.key) {
+ case Hr.UP:
+ case Hr.DOWN:
+ this.navigate(d.key === Hr.UP) && d.preventDefault();
+ break;
+ }
+ }, f.prototype.onTabKeyDown = function(d) {
+ this.navigate(d.shiftKey) ? d.preventDefault() : this.focusService.focusInto(this.getGui(), !d.shiftKey);
+ }, f.prototype.navigate = function(d) {
+ if (this.lastFocusedRowIndex == null)
+ return !1;
+ var g = this.lastFocusedRowIndex + (d ? -1 : 1);
+ return g < 0 || g >= this.model.getRowCount() ? !1 : (this.focusRow(g), !0);
+ }, f.prototype.getLastFocusedRow = function() {
+ return this.lastFocusedRowIndex;
+ }, f.prototype.focusRow = function(d) {
+ var g = this;
+ this.ensureIndexVisible(d), window.setTimeout(function() {
+ var S = g.renderedRows.get(d);
+ S && S.eDiv.focus();
+ }, 10);
+ }, f.prototype.getComponentAt = function(d) {
+ var g = this.renderedRows.get(d);
+ return g && g.rowComponent;
+ }, f.getTemplate = function(d) {
+ return (
+ /* html */
+ `
+
`
+ );
+ }, f.prototype.getItemHeight = function() {
+ return this.gridOptionsWrapper.getListItemHeight();
+ }, f.prototype.ensureIndexVisible = function(d) {
+ var g = this.model.getRowCount();
+ if (typeof d != "number" || d < 0 || d >= g) {
+ console.warn("AG Grid: invalid row index for ensureIndexVisible: " + d);
+ return;
+ }
+ var S = d * this.rowHeight, O = S + this.rowHeight, z = this.getGui(), te = z.scrollTop, Fe = z.offsetHeight, ze = te + Fe, ht = te > S, Lt = ze < O;
+ if (ht)
+ z.scrollTop = S;
+ else if (Lt) {
+ var ti = O - Fe;
+ z.scrollTop = ti;
+ }
+ }, f.prototype.setComponentCreator = function(d) {
+ this.componentCreator = d;
+ }, f.prototype.getRowHeight = function() {
+ return this.rowHeight;
+ }, f.prototype.getScrollTop = function() {
+ return this.getGui().scrollTop;
+ }, f.prototype.setRowHeight = function(d) {
+ this.rowHeight = d, this.refresh();
+ }, f.prototype.refresh = function() {
+ var d = this;
+ if (!(this.model == null || this.isDestroyed)) {
+ var g = this.model.getRowCount();
+ this.eContainer.style.height = g * this.rowHeight + "px", nt(function() {
+ return d.eContainer.clientHeight >= g * d.rowHeight;
+ }, function() {
+ d.isDestroyed || (d.clearVirtualRows(), d.drawVirtualRows());
+ });
+ }
+ }, f.prototype.clearVirtualRows = function() {
+ var d = this;
+ this.renderedRows.forEach(function(g, S) {
+ return d.removeRow(S);
+ });
+ }, f.prototype.drawVirtualRows = function() {
+ var d = this.getGui(), g = d.scrollTop, S = g + d.offsetHeight, O = Math.floor(g / this.rowHeight), z = Math.floor(S / this.rowHeight);
+ this.ensureRowsRendered(O, z);
+ }, f.prototype.ensureRowsRendered = function(d, g) {
+ var S = this;
+ this.renderedRows.forEach(function(z, te) {
+ (te < d || te > g) && te !== S.lastFocusedRowIndex && S.removeRow(te);
+ });
+ for (var O = d; O <= g; O++)
+ this.renderedRows.has(O) || O < this.model.getRowCount() && this.insertRow(O);
+ }, f.prototype.insertRow = function(d) {
+ var g = this, S = this.model.getRow(d), O = document.createElement("div");
+ if (O.classList.add("ag-virtual-list-item", "ag-" + this.cssIdentifier + "-virtual-list-item"), tr(O, this.ariaRole === "tree" ? "treeitem" : "option"), Pr(O, this.model.getRowCount()), _h(O, d + 1), O.setAttribute("tabindex", "-1"), typeof this.model.isRowSelected == "function") {
+ var z = this.model.isRowSelected(d);
+ yl(O, !!z), Dc(O, z);
+ }
+ O.style.height = this.rowHeight + "px", O.style.top = this.rowHeight * d + "px";
+ var te = this.componentCreator(S, O);
+ te.addGuiEventListener("focusin", function() {
+ return g.lastFocusedRowIndex = d;
+ }), O.appendChild(te.getGui()), this.renderedRows.has(d - 1) ? this.renderedRows.get(d - 1).eDiv.insertAdjacentElement("afterend", O) : this.renderedRows.has(d + 1) ? this.renderedRows.get(d + 1).eDiv.insertAdjacentElement("beforebegin", O) : this.eContainer.appendChild(O), this.renderedRows.set(d, { rowComponent: te, eDiv: O });
+ }, f.prototype.removeRow = function(d) {
+ var g = this.renderedRows.get(d);
+ this.eContainer.removeChild(g.eDiv), this.destroyBean(g.rowComponent), this.renderedRows.delete(d);
+ }, f.prototype.addScrollListener = function() {
+ var d = this;
+ this.addGuiEventListener("scroll", function() {
+ return d.drawVirtualRows();
+ });
+ }, f.prototype.setModel = function(d) {
+ this.model = d;
+ }, f.prototype.destroy = function() {
+ this.isDestroyed || (this.clearVirtualRows(), this.isDestroyed = !0, M.prototype.destroy.call(this));
+ }, dne([
+ pe("resizeObserverService")
+ ], f.prototype, "resizeObserverService", void 0), dne([
+ pe("focusService")
+ ], f.prototype, "focusService", void 0), dne([
+ qr("eContainer")
+ ], f.prototype, "eContainer", void 0), dne([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(sW)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var dkt = ["mouseover", "mouseout", "mouseenter", "mouseleave"], pkt = ["touchstart", "touchend", "touchmove", "touchcancel"], yVe = (
+ /** @class */
+ function() {
+ function M() {
+ this.isOutsideAngular = function(f) {
+ return Ce(dkt, f);
+ };
+ }
+ return M.prototype.setTimeout = function(f, d) {
+ window.setTimeout(f, d);
+ }, M.prototype.setInterval = function(f, d) {
+ return new Pm(function(g) {
+ g(window.setInterval(f, d));
+ });
+ }, M.prototype.addEventListener = function(f, d, g, S) {
+ var O = Ce(pkt, d);
+ f.addEventListener(d, g, { capture: !!S, passive: O });
+ }, M.prototype.dispatchEvent = function(f, d, g) {
+ d();
+ }, M.prototype.frameworkComponent = function(f) {
+ return null;
+ }, M.prototype.isFrameworkComponent = function(f) {
+ return !1;
+ }, M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var fkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), aW = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, vVe = (
+ /** @class */
+ function(M) {
+ fkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.getNextCellToFocus = function(d, g, S) {
+ return S === void 0 && (S = !1), S ? this.getNextCellToFocusWithCtrlPressed(d, g) : this.getNextCellToFocusWithoutCtrlPressed(d, g);
+ }, f.prototype.getNextCellToFocusWithCtrlPressed = function(d, g) {
+ var S = d === Hr.UP, O = d === Hr.DOWN, z = d === Hr.LEFT, te, Fe;
+ if (S || O)
+ Fe = S ? this.paginationProxy.getPageFirstRow() : this.paginationProxy.getPageLastRow(), te = g.column;
+ else {
+ var ze = this.columnModel.getAllDisplayedColumns(), ht = this.gridOptionsWrapper.isEnableRtl();
+ Fe = g.rowIndex, te = z !== ht ? ze[0] : m(ze);
+ }
+ return {
+ rowIndex: Fe,
+ rowPinned: null,
+ column: te
+ };
+ }, f.prototype.getNextCellToFocusWithoutCtrlPressed = function(d, g) {
+ for (var S = g, O = !1; !O; ) {
+ switch (d) {
+ case Hr.UP:
+ S = this.getCellAbove(S);
+ break;
+ case Hr.DOWN:
+ S = this.getCellBelow(S);
+ break;
+ case Hr.RIGHT:
+ this.gridOptionsWrapper.isEnableRtl() ? S = this.getCellToLeft(S) : S = this.getCellToRight(S);
+ break;
+ case Hr.LEFT:
+ this.gridOptionsWrapper.isEnableRtl() ? S = this.getCellToRight(S) : S = this.getCellToLeft(S);
+ break;
+ default:
+ S = null, console.warn("AG Grid: unknown key for navigation " + d);
+ break;
+ }
+ S ? O = this.isCellGoodToFocusOn(S) : O = !0;
+ }
+ return S;
+ }, f.prototype.isCellGoodToFocusOn = function(d) {
+ var g = d.column, S;
+ switch (d.rowPinned) {
+ case Ue.PINNED_TOP:
+ S = this.pinnedRowModel.getPinnedTopRow(d.rowIndex);
+ break;
+ case Ue.PINNED_BOTTOM:
+ S = this.pinnedRowModel.getPinnedBottomRow(d.rowIndex);
+ break;
+ default:
+ S = this.rowModel.getRow(d.rowIndex);
+ break;
+ }
+ if (!S)
+ return !1;
+ var O = g.isSuppressNavigable(S);
+ return !O;
+ }, f.prototype.getCellToLeft = function(d) {
+ if (!d)
+ return null;
+ var g = this.columnModel.getDisplayedColBefore(d.column);
+ return g ? {
+ rowIndex: d.rowIndex,
+ column: g,
+ rowPinned: d.rowPinned
+ } : null;
+ }, f.prototype.getCellToRight = function(d) {
+ if (!d)
+ return null;
+ var g = this.columnModel.getDisplayedColAfter(d.column);
+ return g ? {
+ rowIndex: d.rowIndex,
+ column: g,
+ rowPinned: d.rowPinned
+ } : null;
+ }, f.prototype.getRowBelow = function(d) {
+ var g = d.rowIndex, S = d.rowPinned;
+ if (this.isLastRowInContainer(d))
+ switch (S) {
+ case Ue.PINNED_BOTTOM:
+ return null;
+ case Ue.PINNED_TOP:
+ return this.rowModel.isRowsToRender() ? { rowIndex: this.paginationProxy.getPageFirstRow(), rowPinned: null } : this.pinnedRowModel.isRowsToRender(Ue.PINNED_BOTTOM) ? { rowIndex: 0, rowPinned: Ue.PINNED_BOTTOM } : null;
+ default:
+ return this.pinnedRowModel.isRowsToRender(Ue.PINNED_BOTTOM) ? { rowIndex: 0, rowPinned: Ue.PINNED_BOTTOM } : null;
+ }
+ return { rowIndex: g + 1, rowPinned: S };
+ }, f.prototype.getCellBelow = function(d) {
+ if (!d)
+ return null;
+ var g = this.getRowBelow(d);
+ return g ? {
+ rowIndex: g.rowIndex,
+ column: d.column,
+ rowPinned: g.rowPinned
+ } : null;
+ }, f.prototype.isLastRowInContainer = function(d) {
+ var g = d.rowPinned, S = d.rowIndex;
+ if (g === Ue.PINNED_TOP) {
+ var O = this.pinnedRowModel.getPinnedTopRowData().length - 1;
+ return O <= S;
+ }
+ if (g === Ue.PINNED_BOTTOM) {
+ var z = this.pinnedRowModel.getPinnedBottomRowData().length - 1;
+ return z <= S;
+ }
+ var te = this.paginationProxy.getPageLastRow();
+ return te <= S;
+ }, f.prototype.getRowAbove = function(d) {
+ var g = d.rowIndex, S = d.rowPinned, O = S ? g === 0 : g === this.paginationProxy.getPageFirstRow();
+ return O ? S === Ue.PINNED_TOP ? null : S ? this.rowModel.isRowsToRender() ? this.getLastBodyCell() : this.pinnedRowModel.isRowsToRender(Ue.PINNED_TOP) ? this.getLastFloatingTopRow() : null : this.pinnedRowModel.isRowsToRender(Ue.PINNED_TOP) ? this.getLastFloatingTopRow() : null : { rowIndex: g - 1, rowPinned: S };
+ }, f.prototype.getCellAbove = function(d) {
+ if (!d)
+ return null;
+ var g = this.getRowAbove({ rowIndex: d.rowIndex, rowPinned: d.rowPinned });
+ return g ? {
+ rowIndex: g.rowIndex,
+ column: d.column,
+ rowPinned: g.rowPinned
+ } : null;
+ }, f.prototype.getLastBodyCell = function() {
+ var d = this.paginationProxy.getPageLastRow();
+ return { rowIndex: d, rowPinned: null };
+ }, f.prototype.getLastFloatingTopRow = function() {
+ var d = this.pinnedRowModel.getPinnedTopRowData().length - 1;
+ return { rowIndex: d, rowPinned: Ue.PINNED_TOP };
+ }, f.prototype.getNextTabbedCell = function(d, g) {
+ return g ? this.getNextTabbedCellBackwards(d) : this.getNextTabbedCellForwards(d);
+ }, f.prototype.getNextTabbedCellForwards = function(d) {
+ var g = this.columnModel.getAllDisplayedColumns(), S = d.rowIndex, O = d.rowPinned, z = this.columnModel.getDisplayedColAfter(d.column);
+ if (!z) {
+ z = g[0];
+ var te = this.getRowBelow(d);
+ if (r(te) || !te.rowPinned && !this.paginationProxy.isRowInPage(te))
+ return null;
+ S = te ? te.rowIndex : null, O = te ? te.rowPinned : null;
+ }
+ return { rowIndex: S, column: z, rowPinned: O };
+ }, f.prototype.getNextTabbedCellBackwards = function(d) {
+ var g = this.columnModel.getAllDisplayedColumns(), S = d.rowIndex, O = d.rowPinned, z = this.columnModel.getDisplayedColBefore(d.column);
+ if (!z) {
+ z = m(g);
+ var te = this.getRowAbove({ rowIndex: d.rowIndex, rowPinned: d.rowPinned });
+ if (r(te) || !te.rowPinned && !this.paginationProxy.isRowInPage(te))
+ return null;
+ S = te ? te.rowIndex : null, O = te ? te.rowPinned : null;
+ }
+ return { rowIndex: S, column: z, rowPinned: O };
+ }, aW([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), aW([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), aW([
+ pe("pinnedRowModel")
+ ], f.prototype, "pinnedRowModel", void 0), aW([
+ pe("paginationProxy")
+ ], f.prototype, "paginationProxy", void 0), f = aW([
+ Ne("cellNavigationService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var mkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), lW = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, gkt = function(M, f) {
+ return function(d, g) {
+ f(d, g, M);
+ };
+ }, _Ve = (
+ /** @class */
+ function(M) {
+ mkt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.consuming = !1, d;
+ }
+ return f.prototype.setBeans = function(d) {
+ this.logger = d.create("AlignedGridsService");
+ }, f.prototype.init = function() {
+ this.addManagedListener(this.eventService, ui.EVENT_COLUMN_MOVED, this.fireColumnEvent.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_VISIBLE, this.fireColumnEvent.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_PINNED, this.fireColumnEvent.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_GROUP_OPENED, this.fireColumnEvent.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_RESIZED, this.fireColumnEvent.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_BODY_SCROLL, this.fireScrollEvent.bind(this));
+ }, f.prototype.fireEvent = function(d) {
+ if (!this.consuming) {
+ var g = this.gridOptionsWrapper.getAlignedGrids();
+ g && g.forEach(function(S) {
+ if (S.api) {
+ var O = S.api.__getAlignedGridService();
+ d(O);
+ }
+ });
+ }
+ }, f.prototype.onEvent = function(d) {
+ this.consuming = !0, d(), this.consuming = !1;
+ }, f.prototype.fireColumnEvent = function(d) {
+ this.fireEvent(function(g) {
+ g.onColumnEvent(d);
+ });
+ }, f.prototype.fireScrollEvent = function(d) {
+ d.direction === "horizontal" && this.fireEvent(function(g) {
+ g.onScrollEvent(d);
+ });
+ }, f.prototype.onScrollEvent = function(d) {
+ var g = this;
+ this.onEvent(function() {
+ var S = g.ctrlsService.getGridBodyCtrl();
+ S.getScrollFeature().setHorizontalScrollPosition(d.left);
+ });
+ }, f.prototype.getMasterColumns = function(d) {
+ var g = [];
+ return d.columns ? d.columns.forEach(function(S) {
+ g.push(S);
+ }) : d.column && g.push(d.column), g;
+ }, f.prototype.getColumnIds = function(d) {
+ var g = [];
+ return d.columns ? d.columns.forEach(function(S) {
+ g.push(S.getColId());
+ }) : d.column && g.push(d.column.getColId()), g;
+ }, f.prototype.onColumnEvent = function(d) {
+ var g = this;
+ this.onEvent(function() {
+ switch (d.type) {
+ case ui.EVENT_COLUMN_MOVED:
+ case ui.EVENT_COLUMN_VISIBLE:
+ case ui.EVENT_COLUMN_PINNED:
+ case ui.EVENT_COLUMN_RESIZED:
+ var S = d;
+ g.processColumnEvent(S);
+ break;
+ case ui.EVENT_COLUMN_GROUP_OPENED:
+ var O = d;
+ g.processGroupOpenedEvent(O);
+ break;
+ case ui.EVENT_COLUMN_PIVOT_CHANGED:
+ console.warn("AG Grid: pivoting is not supported with aligned grids. You can only use one of these features at a time in a grid.");
+ break;
+ }
+ });
+ }, f.prototype.processGroupOpenedEvent = function(d) {
+ var g = d.columnGroup, S = null;
+ if (g) {
+ var O = g.getGroupId();
+ S = this.columnModel.getProvidedColumnGroup(O);
+ }
+ g && !S || (this.logger.log("onColumnEvent-> processing " + d + " expanded = " + g.isExpanded()), this.columnModel.setColumnGroupOpened(S, g.isExpanded(), "alignedGridChanged"));
+ }, f.prototype.processColumnEvent = function(d) {
+ var g = this, S = d.column, O = null;
+ if (S && (O = this.columnModel.getPrimaryColumn(S.getColId())), !(S && !O)) {
+ var z = this.getMasterColumns(d);
+ switch (d.type) {
+ case ui.EVENT_COLUMN_MOVED:
+ {
+ var te = d, Fe = d.columnApi.getColumnState(), ze = Fe.map(function(dr) {
+ return { colId: dr.colId };
+ });
+ this.columnModel.applyColumnState({ state: ze, applyOrder: !0 }, "alignedGridChanged"), this.logger.log("onColumnEvent-> processing " + d.type + " toIndex = " + te.toIndex);
+ }
+ break;
+ case ui.EVENT_COLUMN_VISIBLE:
+ {
+ var ht = d, Fe = d.columnApi.getColumnState(), ze = Fe.map(function(Rr) {
+ return { colId: Rr.colId, hide: Rr.hide };
+ });
+ this.columnModel.applyColumnState({ state: ze }, "alignedGridChanged"), this.logger.log("onColumnEvent-> processing " + d.type + " visible = " + ht.visible);
+ }
+ break;
+ case ui.EVENT_COLUMN_PINNED:
+ {
+ var Lt = d, Fe = d.columnApi.getColumnState(), ze = Fe.map(function(Rr) {
+ return { colId: Rr.colId, pinned: Rr.pinned };
+ });
+ this.columnModel.applyColumnState({ state: ze }, "alignedGridChanged"), this.logger.log("onColumnEvent-> processing " + d.type + " pinned = " + Lt.pinned);
+ }
+ break;
+ case ui.EVENT_COLUMN_RESIZED:
+ var ti = d;
+ z.forEach(function(dr) {
+ g.logger.log("onColumnEvent-> processing " + d.type + " actualWidth = " + dr.getActualWidth());
+ var kr = [{ key: dr.getColId(), newWidth: dr.getActualWidth() }];
+ g.columnModel.setColumnWidths(kr, !1, ti.finished, "alignedGridChanged");
+ });
+ break;
+ }
+ var wi = this.ctrlsService.getGridBodyCtrl(), Ti = wi.isVerticalScrollShowing(), qi = this.gridOptionsWrapper.getAlignedGrids();
+ qi && qi.forEach(function(dr) {
+ dr.api && dr.api.setAlwaysShowVerticalScroll(Ti);
+ });
+ }
+ }, lW([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), lW([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), lW([
+ gkt(0, yt("loggerFactory"))
+ ], f.prototype, "setBeans", null), lW([
+ ct
+ ], f.prototype, "init", null), f = lW([
+ Ne("alignedGridsService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var ykt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), P9 = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, vkt = function(M, f) {
+ return function(d, g) {
+ f(d, g, M);
+ };
+ }, bVe = (
+ /** @class */
+ function(M) {
+ ykt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.setBeans = function(d) {
+ this.logger = d.create("selectionService"), this.reset();
+ }, f.prototype.init = function() {
+ this.groupSelectsChildren = this.gridOptionsWrapper.isGroupSelectsChildren(), this.addManagedListener(this.eventService, ui.EVENT_ROW_SELECTED, this.onRowSelected.bind(this));
+ }, f.prototype.setLastSelectedNode = function(d) {
+ this.lastSelectedNode = d;
+ }, f.prototype.getLastSelectedNode = function() {
+ return this.lastSelectedNode;
+ }, f.prototype.getSelectedNodes = function() {
+ var d = [];
+ return I(this.selectedNodes, function(g, S) {
+ S && d.push(S);
+ }), d;
+ }, f.prototype.getSelectedRows = function() {
+ var d = [];
+ return I(this.selectedNodes, function(g, S) {
+ S && S.data && d.push(S.data);
+ }), d;
+ }, f.prototype.removeGroupsFromSelection = function() {
+ var d = this;
+ I(this.selectedNodes, function(g, S) {
+ S && S.group && (d.selectedNodes[S.id] = void 0);
+ });
+ }, f.prototype.updateGroupsFromChildrenSelections = function(d) {
+ if (this.gridOptionsWrapper.isGroupSelectsChildren() && this.rowModel.getType() === Ue.ROW_MODEL_TYPE_CLIENT_SIDE) {
+ var g = this.rowModel, S = g.getRootNode();
+ d || (d = new ane(!0, S), d.setInactive()), d.forEachChangedNodeDepthFirst(function(O) {
+ O !== S && O.calculateSelectedFromChildren();
+ });
+ }
+ }, f.prototype.getNodeForIdIfSelected = function(d) {
+ return this.selectedNodes[d];
+ }, f.prototype.clearOtherNodes = function(d) {
+ var g = this, S = {}, O = 0;
+ return I(this.selectedNodes, function(z, te) {
+ if (te && te.id !== d.id) {
+ var Fe = g.selectedNodes[te.id];
+ O += Fe.setSelectedParams({
+ newValue: !1,
+ clearSelection: !1,
+ suppressFinishActions: !0
+ }), g.groupSelectsChildren && te.parent && (S[te.parent.id] = te.parent);
+ }
+ }), I(S, function(z, te) {
+ te.calculateSelectedFromChildren();
+ }), O;
+ }, f.prototype.onRowSelected = function(d) {
+ var g = d.node;
+ this.groupSelectsChildren && g.group || (g.isSelected() ? this.selectedNodes[g.id] = g : this.selectedNodes[g.id] = void 0);
+ }, f.prototype.syncInRowNode = function(d, g) {
+ this.syncInOldRowNode(d, g), this.syncInNewRowNode(d);
+ }, f.prototype.syncInOldRowNode = function(d, g) {
+ var S = i(g) && d.id !== g.id;
+ if (S && g) {
+ var O = g.id, z = this.selectedNodes[O] == d;
+ z && (this.selectedNodes[g.id] = g);
+ }
+ }, f.prototype.syncInNewRowNode = function(d) {
+ i(this.selectedNodes[d.id]) ? (d.setSelectedInitialValue(!0), this.selectedNodes[d.id] = d) : d.setSelectedInitialValue(!1);
+ }, f.prototype.reset = function() {
+ this.logger.log("reset"), this.selectedNodes = {}, this.lastSelectedNode = null;
+ }, f.prototype.getBestCostNodeSelection = function() {
+ if (this.rowModel.getType() !== Ue.ROW_MODEL_TYPE_CLIENT_SIDE) {
+ console.warn("AG Grid: `getBestCostNodeSelection` is only available when using normal row model");
+ return;
+ }
+ var d = this.rowModel, g = d.getTopLevelNodes();
+ if (g === null) {
+ console.warn("AG Grid: `selectAll` not available doing `rowModel=virtual`");
+ return;
+ }
+ var S = [];
+ function O(z) {
+ for (var te = 0, Fe = z.length; te < Fe; te++) {
+ var ze = z[te];
+ if (ze.isSelected())
+ S.push(ze);
+ else {
+ var ht = ze;
+ ht.group && ht.children && O(ht.children);
+ }
+ }
+ }
+ return O(g), S;
+ }, f.prototype.setRowModel = function(d) {
+ this.rowModel = d;
+ }, f.prototype.isEmpty = function() {
+ var d = 0;
+ return I(this.selectedNodes, function(g, S) {
+ S && d++;
+ }), d === 0;
+ }, f.prototype.deselectAllRowNodes = function(d) {
+ d === void 0 && (d = !1);
+ var g = function(te) {
+ return te.selectThisNode(!1);
+ }, S = this.rowModel.getType() === Ue.ROW_MODEL_TYPE_CLIENT_SIDE;
+ if (d) {
+ if (!S) {
+ console.error("AG Grid: selecting just filtered only works with In Memory Row Model");
+ return;
+ }
+ var O = this.rowModel;
+ O.forEachNodeAfterFilter(g);
+ } else
+ I(this.selectedNodes, function(te, Fe) {
+ Fe && g(Fe);
+ }), this.reset();
+ S && this.groupSelectsChildren && this.updateGroupsFromChildrenSelections();
+ var z = {
+ type: ui.EVENT_SELECTION_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(z);
+ }, f.prototype.selectAllRowNodes = function(d) {
+ if (d === void 0 && (d = !1), this.rowModel.getType() !== Ue.ROW_MODEL_TYPE_CLIENT_SIDE)
+ throw new Error("selectAll only available with normal row model, ie not " + this.rowModel.getType());
+ var g = this.rowModel, S = function(z) {
+ return z.selectThisNode(!0);
+ };
+ d ? g.forEachNodeAfterFilter(S) : g.forEachNode(S), this.rowModel.getType() === Ue.ROW_MODEL_TYPE_CLIENT_SIDE && this.groupSelectsChildren && this.updateGroupsFromChildrenSelections();
+ var O = {
+ type: ui.EVENT_SELECTION_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(O);
+ }, f.prototype.selectNode = function(d, g) {
+ d && d.setSelectedParams({ newValue: !0, clearSelection: !g });
+ }, f.prototype.deselectIndex = function(d) {
+ var g = this.rowModel.getRow(d);
+ this.deselectNode(g);
+ }, f.prototype.deselectNode = function(d) {
+ d && d.setSelectedParams({ newValue: !1, clearSelection: !1 });
+ }, f.prototype.selectIndex = function(d, g) {
+ var S = this.rowModel.getRow(d);
+ this.selectNode(S, g);
+ }, P9([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), P9([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), P9([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), P9([
+ vkt(0, yt("loggerFactory"))
+ ], f.prototype, "setBeans", null), P9([
+ ct
+ ], f.prototype, "init", null), f = P9([
+ Ne("selectionService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var R_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, wVe = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.prototype.sizeColumnsToFit = function(f) {
+ typeof f > "u" && console.error("AG Grid: missing parameter to columnApi.sizeColumnsToFit(gridWidth)"), this.columnModel.sizeColumnsToFit(f, "api");
+ }, M.prototype.setColumnGroupOpened = function(f, d) {
+ this.columnModel.setColumnGroupOpened(f, d, "api");
+ }, M.prototype.getColumnGroup = function(f, d) {
+ return this.columnModel.getColumnGroup(f, d);
+ }, M.prototype.getProvidedColumnGroup = function(f) {
+ return this.columnModel.getProvidedColumnGroup(f);
+ }, M.prototype.getDisplayNameForColumn = function(f, d) {
+ return this.columnModel.getDisplayNameForColumn(f, d) || "";
+ }, M.prototype.getDisplayNameForColumnGroup = function(f, d) {
+ return this.columnModel.getDisplayNameForColumnGroup(f, d) || "";
+ }, M.prototype.getColumn = function(f) {
+ return this.columnModel.getPrimaryColumn(f);
+ }, M.prototype.applyColumnState = function(f) {
+ return this.columnModel.applyColumnState(f, "api");
+ }, M.prototype.getColumnState = function() {
+ return this.columnModel.getColumnState();
+ }, M.prototype.resetColumnState = function() {
+ this.columnModel.resetColumnState("api");
+ }, M.prototype.getColumnGroupState = function() {
+ return this.columnModel.getColumnGroupState();
+ }, M.prototype.setColumnGroupState = function(f) {
+ this.columnModel.setColumnGroupState(f, "api");
+ }, M.prototype.resetColumnGroupState = function() {
+ this.columnModel.resetColumnGroupState("api");
+ }, M.prototype.isPinning = function() {
+ return this.columnModel.isPinningLeft() || this.columnModel.isPinningRight();
+ }, M.prototype.isPinningLeft = function() {
+ return this.columnModel.isPinningLeft();
+ }, M.prototype.isPinningRight = function() {
+ return this.columnModel.isPinningRight();
+ }, M.prototype.getDisplayedColAfter = function(f) {
+ return this.columnModel.getDisplayedColAfter(f);
+ }, M.prototype.getDisplayedColBefore = function(f) {
+ return this.columnModel.getDisplayedColBefore(f);
+ }, M.prototype.setColumnVisible = function(f, d) {
+ this.columnModel.setColumnVisible(f, d, "api");
+ }, M.prototype.setColumnsVisible = function(f, d) {
+ this.columnModel.setColumnsVisible(f, d, "api");
+ }, M.prototype.setColumnPinned = function(f, d) {
+ this.columnModel.setColumnPinned(f, d, "api");
+ }, M.prototype.setColumnsPinned = function(f, d) {
+ this.columnModel.setColumnsPinned(f, d, "api");
+ }, M.prototype.getAllColumns = function() {
+ return this.columnModel.getAllPrimaryColumns();
+ }, M.prototype.getAllGridColumns = function() {
+ return this.columnModel.getAllGridColumns();
+ }, M.prototype.getDisplayedLeftColumns = function() {
+ return this.columnModel.getDisplayedLeftColumns();
+ }, M.prototype.getDisplayedCenterColumns = function() {
+ return this.columnModel.getDisplayedCenterColumns();
+ }, M.prototype.getDisplayedRightColumns = function() {
+ return this.columnModel.getDisplayedRightColumns();
+ }, M.prototype.getAllDisplayedColumns = function() {
+ return this.columnModel.getAllDisplayedColumns();
+ }, M.prototype.getAllDisplayedVirtualColumns = function() {
+ return this.columnModel.getViewportColumns();
+ }, M.prototype.moveColumn = function(f, d) {
+ typeof f == "number" ? (console.warn("AG Grid: you are using moveColumn(fromIndex, toIndex) - moveColumn takes a column key and a destination index, not two indexes, to move with indexes use moveColumnByIndex(from,to) instead"), this.columnModel.moveColumnByIndex(f, d, "api")) : this.columnModel.moveColumn(f, d, "api");
+ }, M.prototype.moveColumnByIndex = function(f, d) {
+ this.columnModel.moveColumnByIndex(f, d, "api");
+ }, M.prototype.moveColumns = function(f, d) {
+ this.columnModel.moveColumns(f, d, "api");
+ }, M.prototype.moveRowGroupColumn = function(f, d) {
+ this.columnModel.moveRowGroupColumn(f, d);
+ }, M.prototype.setColumnAggFunc = function(f, d) {
+ this.columnModel.setColumnAggFunc(f, d);
+ }, M.prototype.setColumnWidth = function(f, d, g, S) {
+ g === void 0 && (g = !0), this.columnModel.setColumnWidths([{ key: f, newWidth: d }], !1, g, S);
+ }, M.prototype.setColumnWidths = function(f, d, g) {
+ d === void 0 && (d = !0), this.columnModel.setColumnWidths(f, !1, d, g);
+ }, M.prototype.setPivotMode = function(f) {
+ this.columnModel.setPivotMode(f);
+ }, M.prototype.isPivotMode = function() {
+ return this.columnModel.isPivotMode();
+ }, M.prototype.getSecondaryPivotColumn = function(f, d) {
+ return this.columnModel.getSecondaryPivotColumn(f, d);
+ }, M.prototype.setValueColumns = function(f) {
+ this.columnModel.setValueColumns(f, "api");
+ }, M.prototype.getValueColumns = function() {
+ return this.columnModel.getValueColumns();
+ }, M.prototype.removeValueColumn = function(f) {
+ this.columnModel.removeValueColumn(f, "api");
+ }, M.prototype.removeValueColumns = function(f) {
+ this.columnModel.removeValueColumns(f, "api");
+ }, M.prototype.addValueColumn = function(f) {
+ this.columnModel.addValueColumn(f, "api");
+ }, M.prototype.addValueColumns = function(f) {
+ this.columnModel.addValueColumns(f, "api");
+ }, M.prototype.setRowGroupColumns = function(f) {
+ this.columnModel.setRowGroupColumns(f, "api");
+ }, M.prototype.removeRowGroupColumn = function(f) {
+ this.columnModel.removeRowGroupColumn(f, "api");
+ }, M.prototype.removeRowGroupColumns = function(f) {
+ this.columnModel.removeRowGroupColumns(f, "api");
+ }, M.prototype.addRowGroupColumn = function(f) {
+ this.columnModel.addRowGroupColumn(f, "api");
+ }, M.prototype.addRowGroupColumns = function(f) {
+ this.columnModel.addRowGroupColumns(f, "api");
+ }, M.prototype.getRowGroupColumns = function() {
+ return this.columnModel.getRowGroupColumns();
+ }, M.prototype.setPivotColumns = function(f) {
+ this.columnModel.setPivotColumns(f, "api");
+ }, M.prototype.removePivotColumn = function(f) {
+ this.columnModel.removePivotColumn(f, "api");
+ }, M.prototype.removePivotColumns = function(f) {
+ this.columnModel.removePivotColumns(f, "api");
+ }, M.prototype.addPivotColumn = function(f) {
+ this.columnModel.addPivotColumn(f, "api");
+ }, M.prototype.addPivotColumns = function(f) {
+ this.columnModel.addPivotColumns(f, "api");
+ }, M.prototype.getPivotColumns = function() {
+ return this.columnModel.getPivotColumns();
+ }, M.prototype.getLeftDisplayedColumnGroups = function() {
+ return this.columnModel.getDisplayedTreeLeft();
+ }, M.prototype.getCenterDisplayedColumnGroups = function() {
+ return this.columnModel.getDisplayedTreeCentre();
+ }, M.prototype.getRightDisplayedColumnGroups = function() {
+ return this.columnModel.getDisplayedTreeRight();
+ }, M.prototype.getAllDisplayedColumnGroups = function() {
+ return this.columnModel.getAllDisplayedTrees();
+ }, M.prototype.autoSizeColumn = function(f, d) {
+ return this.columnModel.autoSizeColumn(f, d, "api");
+ }, M.prototype.autoSizeColumns = function(f, d) {
+ this.columnModel.autoSizeColumns({ columns: f, skipHeader: d });
+ }, M.prototype.autoSizeAllColumns = function(f) {
+ this.columnModel.autoSizeAllColumns(f, "api");
+ }, M.prototype.setSecondaryColumns = function(f) {
+ this.columnModel.setSecondaryColumns(f, "api");
+ }, M.prototype.getSecondaryColumns = function() {
+ return this.columnModel.getSecondaryColumns();
+ }, M.prototype.getPrimaryColumns = function() {
+ return this.columnModel.getAllPrimaryColumns();
+ }, M.prototype.cleanDownReferencesToAvoidMemoryLeakInCaseApplicationIsKeepingReferenceToDestroyedGrid = function() {
+ setTimeout(ho.removeAllReferences.bind(window, this, "Column API"), 100);
+ }, M.prototype.columnGroupOpened = function(f, d) {
+ console.error("AG Grid: columnGroupOpened no longer exists, use setColumnGroupOpened"), this.setColumnGroupOpened(f, d);
+ }, M.prototype.hideColumns = function(f, d) {
+ console.error("AG Grid: hideColumns is deprecated, use setColumnsVisible"), this.columnModel.setColumnsVisible(f, !d, "api");
+ }, M.prototype.hideColumn = function(f, d) {
+ console.error("AG Grid: hideColumn is deprecated, use setColumnVisible"), this.columnModel.setColumnVisible(f, !d, "api");
+ }, M.prototype.setState = function(f) {
+ return console.error("AG Grid: setState is deprecated, use setColumnState"), this.setColumnState(f);
+ }, M.prototype.getState = function() {
+ return console.error("AG Grid: getState is deprecated, use getColumnState"), this.getColumnState();
+ }, M.prototype.resetState = function() {
+ console.error("AG Grid: resetState is deprecated, use resetColumnState"), this.resetColumnState();
+ }, M.prototype.getAggregationColumns = function() {
+ return console.error("AG Grid: getAggregationColumns is deprecated, use getValueColumns"), this.columnModel.getValueColumns();
+ }, M.prototype.removeAggregationColumn = function(f) {
+ console.error("AG Grid: removeAggregationColumn is deprecated, use removeValueColumn"), this.columnModel.removeValueColumn(f, "api");
+ }, M.prototype.removeAggregationColumns = function(f) {
+ console.error("AG Grid: removeAggregationColumns is deprecated, use removeValueColumns"), this.columnModel.removeValueColumns(f, "api");
+ }, M.prototype.addAggregationColumn = function(f) {
+ console.error("AG Grid: addAggregationColumn is deprecated, use addValueColumn"), this.columnModel.addValueColumn(f, "api");
+ }, M.prototype.addAggregationColumns = function(f) {
+ console.error("AG Grid: addAggregationColumns is deprecated, use addValueColumns"), this.columnModel.addValueColumns(f, "api");
+ }, M.prototype.setColumnAggFunction = function(f, d) {
+ console.error("AG Grid: setColumnAggFunction is deprecated, use setColumnAggFunc"), this.columnModel.setColumnAggFunc(f, d, "api");
+ }, M.prototype.getDisplayNameForCol = function(f) {
+ return console.error("AG Grid: getDisplayNameForCol is deprecated, use getDisplayNameForColumn"), this.getDisplayNameForColumn(f, null);
+ }, M.prototype.setColumnState = function(f) {
+ return console.error("AG Grid: setColumnState is deprecated, use applyColumnState"), this.columnModel.applyColumnState({ state: f, applyOrder: !0 }, "api");
+ }, M.prototype.getOriginalColumnGroup = function(f) {
+ return console.error("AG Grid: getOriginalColumnGroup is deprecated, use getProvidedColumnGroup"), this.columnModel.getProvidedColumnGroup(f);
+ }, R_e([
+ pe("columnModel")
+ ], M.prototype, "columnModel", void 0), R_e([
+ gt
+ ], M.prototype, "cleanDownReferencesToAvoidMemoryLeakInCaseApplicationIsKeepingReferenceToDestroyedGrid", null), M = R_e([
+ Ne("columnApi")
+ ], M), M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var _kt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), uW = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, xVe = (
+ /** @class */
+ function(M) {
+ _kt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.initialised = !1, d;
+ }
+ return f.prototype.init = function() {
+ var d = this;
+ this.cellExpressions = this.gridOptionsWrapper.isEnableCellExpressions(), this.initialised = !0, this.eventService.addEventListener(ui.EVENT_CELL_VALUE_CHANGED, function(g) {
+ return d.callColumnCellValueChangedHandler(g);
+ }, this.gridOptionsWrapper.useAsyncEvents());
+ }, f.prototype.getValue = function(d, g, S, O) {
+ if (S === void 0 && (S = !1), O === void 0 && (O = !1), this.initialised || this.init(), !!g) {
+ var z = d.getColDef(), te = z.field, Fe = d.getId(), ze = g.data, ht, Lt = g.groupData && g.groupData[Fe] !== void 0, ti = !O && g.aggData && g.aggData[Fe] !== void 0;
+ if (S && z.filterValueGetter ? ht = this.executeFilterValueGetter(z.filterValueGetter, ze, d, g) : this.gridOptionsWrapper.isTreeData() && ti ? ht = g.aggData[Fe] : this.gridOptionsWrapper.isTreeData() && z.valueGetter ? ht = this.executeValueGetter(z.valueGetter, ze, d, g) : this.gridOptionsWrapper.isTreeData() && te && ze ? ht = ke(ze, te, d.isFieldContainsDots()) : Lt ? ht = g.groupData[Fe] : ti ? ht = g.aggData[Fe] : z.valueGetter ? ht = this.executeValueGetter(z.valueGetter, ze, d, g) : te && ze && (ht = ke(ze, te, d.isFieldContainsDots())), this.cellExpressions && typeof ht == "string" && ht.indexOf("=") === 0) {
+ var wi = ht.substring(1);
+ ht = this.executeValueGetter(wi, ze, d, g);
+ }
+ if (ht == null) {
+ var Ti = this.getOpenedGroup(g, d);
+ if (Ti != null)
+ return Ti;
+ }
+ return ht;
+ }
+ }, f.prototype.getOpenedGroup = function(d, g) {
+ if (this.gridOptionsWrapper.isShowOpenedGroup()) {
+ var S = g.getColDef();
+ if (S.showRowGroup)
+ for (var O = g.getColDef().showRowGroup, z = d.parent; z != null; ) {
+ if (z.rowGroupColumn && (O === !0 || O === z.rowGroupColumn.getId()))
+ return z.key;
+ z = z.parent;
+ }
+ }
+ }, f.prototype.setValue = function(d, g, S, O) {
+ var z = this.columnModel.getPrimaryColumn(g);
+ if (!d || !z)
+ return !1;
+ r(d.data) && (d.data = {});
+ var te = z.getColDef(), Fe = te.field, ze = te.newValueHandler, ht = te.valueSetter;
+ if (r(Fe) && r(ze) && r(ht))
+ return console.warn("AG Grid: you need either field or valueSetter set on colDef for editing to work"), !1;
+ var Lt = {
+ node: d,
+ data: d.data,
+ oldValue: this.getValue(z, d),
+ newValue: S,
+ colDef: z.getColDef(),
+ column: z,
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext()
+ };
+ Lt.newValue = S;
+ var ti;
+ if (ze && i(ze) ? ti = ze(Lt) : i(ht) ? ti = this.expressionService.evaluate(ht, Lt) : ti = this.setValueUsingField(d.data, Fe, S, z.isFieldContainsDots()), ti === void 0 && (ti = !0), !ti)
+ return !1;
+ d.resetQuickFilterAggregateText(), this.valueCache.onDataChanged(), Lt.newValue = this.getValue(z, d);
+ var wi = {
+ type: ui.EVENT_CELL_VALUE_CHANGED,
+ event: null,
+ rowIndex: d.rowIndex,
+ rowPinned: d.rowPinned,
+ column: Lt.column,
+ api: Lt.api,
+ columnApi: Lt.columnApi,
+ colDef: Lt.colDef,
+ context: Lt.context,
+ data: d.data,
+ node: d,
+ oldValue: Lt.oldValue,
+ newValue: Lt.newValue,
+ value: Lt.newValue,
+ source: O
+ };
+ return this.eventService.dispatchEvent(wi), !0;
+ }, f.prototype.callColumnCellValueChangedHandler = function(d) {
+ var g = d.colDef.onCellValueChanged;
+ typeof g == "function" && g({
+ node: d.node,
+ data: d.data,
+ oldValue: d.oldValue,
+ newValue: d.newValue,
+ colDef: d.colDef,
+ column: d.column,
+ api: d.api,
+ columnApi: d.columnApi,
+ context: d.context
+ });
+ }, f.prototype.setValueUsingField = function(d, g, S, O) {
+ if (!g)
+ return !1;
+ var z = !1;
+ if (!O)
+ d[g] = S;
+ else
+ for (var te = g.split("."), Fe = d; te.length > 0 && Fe; ) {
+ var ze = te.shift();
+ te.length === 0 ? Fe[ze] = S : Fe = Fe[ze];
+ }
+ return !z;
+ }, f.prototype.executeFilterValueGetter = function(d, g, S, O) {
+ var z = {
+ data: g,
+ node: O,
+ column: S,
+ colDef: S.getColDef(),
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext(),
+ getValue: this.getValueCallback.bind(this, O)
+ };
+ return this.expressionService.evaluate(d, z);
+ }, f.prototype.executeValueGetter = function(d, g, S, O) {
+ var z = S.getId(), te = this.valueCache.getValue(O, z);
+ if (te !== void 0)
+ return te;
+ var Fe = {
+ data: g,
+ node: O,
+ column: S,
+ colDef: S.getColDef(),
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext(),
+ getValue: this.getValueCallback.bind(this, O)
+ }, ze = this.expressionService.evaluate(d, Fe);
+ return this.valueCache.setValue(O, z, ze), ze;
+ }, f.prototype.getValueCallback = function(d, g) {
+ var S = this.columnModel.getPrimaryColumn(g);
+ return S ? this.getValue(S, d) : null;
+ }, f.prototype.getKeyForNode = function(d, g) {
+ var S = this.getValue(d, g), O = d.getColDef().keyCreator, z = S;
+ if (O) {
+ var te = {
+ value: S,
+ colDef: d.getColDef(),
+ column: d,
+ node: g,
+ data: g.data,
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext()
+ };
+ z = O(te);
+ }
+ return typeof z == "string" || z == null || (z = String(z), z === "[object Object]" && Ge(function() {
+ console.warn("AG Grid: a column you are grouping or pivoting by has objects as values. If you want to group by complex objects then either a) use a colDef.keyCreator (se AG Grid docs) or b) to toString() on the object to return a key");
+ }, "getKeyForNode - warn about [object,object]")), z;
+ }, uW([
+ pe("expressionService")
+ ], f.prototype, "expressionService", void 0), uW([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), uW([
+ pe("valueCache")
+ ], f.prototype, "valueCache", void 0), uW([
+ ct
+ ], f.prototype, "init", null), f = uW([
+ Ne("valueService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var bkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), SVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, wkt = function(M, f) {
+ return function(d, g) {
+ f(d, g, M);
+ };
+ }, CVe = (
+ /** @class */
+ function(M) {
+ bkt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.expressionToFunctionCache = {}, d;
+ }
+ return f.prototype.setBeans = function(d) {
+ this.logger = d.create("ExpressionService");
+ }, f.prototype.evaluate = function(d, g) {
+ if (typeof d == "function") {
+ var S = d;
+ return S(g);
+ } else if (typeof d == "string") {
+ var O = d;
+ return this.evaluateExpression(O, g);
+ } else
+ console.error("AG Grid: value should be either a string or a function", d);
+ }, f.prototype.evaluateExpression = function(d, g) {
+ try {
+ var S = this.createExpressionFunction(d), O = S(g.value, g.context, g.oldValue, g.newValue, g.value, g.node, g.data, g.colDef, g.rowIndex, g.api, g.columnApi, g.getValue, g.column, g.columnGroup);
+ return O;
+ } catch (z) {
+ return console.log("Processing of the expression failed"), console.log("Expression = " + d), console.log("Params =", g), console.log("Exception = " + z), null;
+ }
+ }, f.prototype.createExpressionFunction = function(d) {
+ if (this.expressionToFunctionCache[d])
+ return this.expressionToFunctionCache[d];
+ var g = this.createFunctionBody(d), S = new Function("x, ctx, oldValue, newValue, value, node, data, colDef, rowIndex, api, columnApi, getValue, column, columnGroup", g);
+ return this.expressionToFunctionCache[d] = S, S;
+ }, f.prototype.createFunctionBody = function(d) {
+ return d.indexOf("return") >= 0 ? d : "return " + d + ";";
+ }, SVe([
+ wkt(0, yt("loggerFactory"))
+ ], f.prototype, "setBeans", null), f = SVe([
+ Ne("expressionService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var xkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), Skt = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, TVe = (
+ /** @class */
+ function(M) {
+ xkt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.templateCache = {}, d.waitingCallbacks = {}, d;
+ }
+ return f.prototype.getTemplate = function(d, g) {
+ var S = this.templateCache[d];
+ if (S)
+ return S;
+ var O = this.waitingCallbacks[d], z = this;
+ if (!O) {
+ O = [], this.waitingCallbacks[d] = O;
+ var te = new XMLHttpRequest();
+ te.onload = function() {
+ z.handleHttpResult(this, d);
+ }, te.open("GET", d), te.send();
+ }
+ return g && O.push(g), null;
+ }, f.prototype.handleHttpResult = function(d, g) {
+ if (d.status !== 200 || d.response === null) {
+ console.warn("AG Grid: Unable to get template error " + d.status + " - " + g);
+ return;
+ }
+ this.templateCache[g] = d.response || d.responseText;
+ for (var S = this.waitingCallbacks[g], O = 0; O < S.length; O++) {
+ var z = S[O];
+ z();
+ }
+ }, f = Skt([
+ Ne("templateService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Ckt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), EVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Tkt = function(M, f) {
+ return function(d, g) {
+ f(d, g, M);
+ };
+ }, IVe = (
+ /** @class */
+ function(M) {
+ Ckt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.setBeans = function(d) {
+ this.logging = d.isDebug();
+ }, f.prototype.create = function(d) {
+ return new pne(d, this.isLogging.bind(this));
+ }, f.prototype.isLogging = function() {
+ return this.logging;
+ }, EVe([
+ Tkt(0, yt("gridOptionsWrapper"))
+ ], f.prototype, "setBeans", null), f = EVe([
+ Ne("loggerFactory")
+ ], f), f;
+ }(ki)
+ ), pne = (
+ /** @class */
+ function() {
+ function M(f, d) {
+ this.name = f, this.isLoggingFunc = d;
+ }
+ return M.prototype.isLogging = function() {
+ return this.isLoggingFunc();
+ }, M.prototype.log = function(f) {
+ this.isLoggingFunc() && console.log("AG Grid." + this.name + ": " + f);
+ }, M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Ekt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), qL = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, AVe = (
+ /** @class */
+ function(M) {
+ Ekt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.setComp = function(d, g, S) {
+ var O = this;
+ this.view = d, this.eGridHostDiv = g, this.eGui = S, this.mouseEventService.stampTopLevelGridCompWithGridInstance(g), this.createManagedBean(new Y8(this.view)), this.addRtlSupport(), this.addManagedListener(this, ui.EVENT_KEYBOARD_FOCUS, function() {
+ O.view.addOrRemoveKeyboardFocusClass(!0);
+ }), this.addManagedListener(this, ui.EVENT_MOUSE_FOCUS, function() {
+ O.view.addOrRemoveKeyboardFocusClass(!1);
+ });
+ var z = this.resizeObserverService.observeResize(this.eGridHostDiv, this.onGridSizeChanged.bind(this));
+ this.addDestroyFunc(function() {
+ return z();
+ }), this.ctrlsService.registerGridCtrl(this);
+ }, f.prototype.isDetailGrid = function() {
+ var d, g, S = this.focusService.findTabbableParent(this.getGui());
+ return ((g = (d = S) === null || d === void 0 ? void 0 : d.getAttribute("row-id")) === null || g === void 0 ? void 0 : g.startsWith("detail")) || !1;
+ }, f.prototype.showDropZones = function() {
+ return si.isRegistered(t.ModuleNames.RowGroupingModule);
+ }, f.prototype.showSideBar = function() {
+ return si.isRegistered(t.ModuleNames.SideBarModule);
+ }, f.prototype.showStatusBar = function() {
+ return si.isRegistered(t.ModuleNames.StatusBarModule);
+ }, f.prototype.showWatermark = function() {
+ return si.isRegistered(t.ModuleNames.EnterpriseCoreModule);
+ }, f.prototype.onGridSizeChanged = function() {
+ var d = {
+ type: ui.EVENT_GRID_SIZE_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi,
+ clientWidth: this.eGridHostDiv.clientWidth,
+ clientHeight: this.eGridHostDiv.clientHeight
+ };
+ this.eventService.dispatchEvent(d);
+ }, f.prototype.addRtlSupport = function() {
+ var d = this.gridOptionsWrapper.isEnableRtl() ? "ag-rtl" : "ag-ltr";
+ this.view.setRtlClass(d);
+ }, f.prototype.destroyGridUi = function() {
+ this.view.destroyGridUi();
+ }, f.prototype.getGui = function() {
+ return this.eGui;
+ }, f.prototype.setResizeCursor = function(d) {
+ this.view.setCursor(d ? "ew-resize" : null);
+ }, f.prototype.disableUserSelect = function(d) {
+ this.view.setUserSelect(d ? "none" : null);
+ }, f.prototype.focusNextInnerContainer = function(d) {
+ var g = this.gridOptionsWrapper.getDocument(), S = this.view.getFocusableContainers(), O = S.findIndex(function(te) {
+ return te.contains(g.activeElement);
+ }), z = O + (d ? -1 : 1);
+ return z <= 0 || z >= S.length ? !1 : this.focusService.focusInto(S[z]);
+ }, f.prototype.focusInnerElement = function(d) {
+ var g = this.view.getFocusableContainers();
+ if (d) {
+ if (g.length > 1)
+ return this.focusService.focusInto(m(g), !0);
+ var S = m(this.columnModel.getAllDisplayedColumns());
+ if (this.focusService.focusGridView(S, !0))
+ return !0;
+ }
+ return this.focusService.focusFirstHeader();
+ }, f.prototype.forceFocusOutOfContainer = function(d) {
+ d === void 0 && (d = !1), this.view.forceFocusOutOfContainer(d);
+ }, qL([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), qL([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), qL([
+ pe("focusService")
+ ], f.prototype, "focusService", void 0), qL([
+ pe("resizeObserverService")
+ ], f.prototype, "resizeObserverService", void 0), qL([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), qL([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), qL([
+ pe("mouseEventService")
+ ], f.prototype, "mouseEventService", void 0), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Ikt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), cW = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, PVe = (
+ /** @class */
+ function(M) {
+ Ikt(f, M);
+ function f(d) {
+ var g = M.call(this, void 0) || this;
+ return g.eGridDiv = d, g;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.logger = this.loggerFactory.create("GridComp");
+ var g = {
+ destroyGridUi: function() {
+ return d.destroyBean(d);
+ },
+ setRtlClass: function(O) {
+ return d.addCssClass(O);
+ },
+ addOrRemoveKeyboardFocusClass: function(O) {
+ return d.addOrRemoveCssClass(A9.AG_KEYBOARD_FOCUS, O);
+ },
+ forceFocusOutOfContainer: this.forceFocusOutOfContainer.bind(this),
+ updateLayoutClasses: this.updateLayoutClasses.bind(this),
+ getFocusableContainers: this.getFocusableContainers.bind(this),
+ setUserSelect: function(O) {
+ d.getGui().style.userSelect = O ?? "", d.getGui().style.webkitUserSelect = O ?? "";
+ },
+ setCursor: function(O) {
+ d.getGui().style.cursor = O ?? "";
+ }
+ };
+ this.ctrl = this.createManagedBean(new AVe());
+ var S = this.createTemplate();
+ this.setTemplate(S), this.ctrl.setComp(g, this.eGridDiv, this.getGui()), this.insertGridIntoDom(), this.initialiseTabGuard({
+ // we want to override the default behaviour to do nothing for onTabKeyDown
+ onTabKeyDown: function() {
+ },
+ focusInnerElement: function(O) {
+ return d.ctrl.focusInnerElement(O);
+ }
+ });
+ }, f.prototype.insertGridIntoDom = function() {
+ var d = this, g = this.getGui();
+ this.eGridDiv.appendChild(g), this.addDestroyFunc(function() {
+ d.eGridDiv.removeChild(g), d.logger.log("Grid removed from DOM");
+ });
+ }, f.prototype.updateLayoutClasses = function(d, g) {
+ var S = this.eRootWrapperBody.classList;
+ S.toggle(t.LayoutCssClasses.AUTO_HEIGHT, g.autoHeight), S.toggle(t.LayoutCssClasses.NORMAL, g.normal), S.toggle(t.LayoutCssClasses.PRINT, g.print), this.addOrRemoveCssClass(t.LayoutCssClasses.AUTO_HEIGHT, g.autoHeight), this.addOrRemoveCssClass(t.LayoutCssClasses.NORMAL, g.normal), this.addOrRemoveCssClass(t.LayoutCssClasses.PRINT, g.print);
+ }, f.prototype.createTemplate = function() {
+ var d = this.ctrl.showDropZones() ? "
" : "", g = this.ctrl.showSideBar() ? '
' : "", S = this.ctrl.showStatusBar() ? '
' : "", O = this.ctrl.showWatermark() ? "
" : "", z = (
+ /* html */
+ `
+ ` + d + `
+
+ ` + S + `
+
+ ` + O + `
+
`
+ );
+ return z;
+ }, f.prototype.getFocusableElement = function() {
+ return this.eRootWrapperBody;
+ }, f.prototype.getFocusableContainers = function() {
+ var d = [
+ this.gridBodyComp.getGui()
+ ];
+ return this.sideBarComp && d.push(this.sideBarComp.getGui()), d.filter(function(g) {
+ return jc(g);
+ });
+ }, cW([
+ pe("loggerFactory")
+ ], f.prototype, "loggerFactory", void 0), cW([
+ qr("gridBody")
+ ], f.prototype, "gridBodyComp", void 0), cW([
+ qr("sideBar")
+ ], f.prototype, "sideBarComp", void 0), cW([
+ qr("rootWrapperBody")
+ ], f.prototype, "eRootWrapperBody", void 0), cW([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(sW)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Akt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), fne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, OVe = (
+ /** @class */
+ function(M) {
+ Akt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ d = f, f.prototype.progressSort = function(g, S, O) {
+ var z = this.getNextSortDirection(g);
+ this.setSortForColumn(g, z, S, O);
+ }, f.prototype.setSortForColumn = function(g, S, O, z) {
+ S !== Ue.SORT_ASC && S !== Ue.SORT_DESC && (S = null), g.setSort(S, z);
+ var te = (O || this.gridOptionsWrapper.isAlwaysMultiSort()) && !this.gridOptionsWrapper.isSuppressMultiSort();
+ te || this.clearSortBarThisColumn(g, z), this.updateSortIndex(g), this.dispatchSortChangedEvents(z);
+ }, f.prototype.updateSortIndex = function(g) {
+ var S = this.getColumnsWithSortingOrdered(), O = 0;
+ S.forEach(function(te) {
+ te !== g && (te.setSortIndex(O), O++);
+ }), g.getSort() && g.setSortIndex(O);
+ var z = this.columnModel.getPrimaryAndSecondaryAndAutoColumns();
+ z.filter(function(te) {
+ return te.getSort() == null;
+ }).forEach(function(te) {
+ return te.setSortIndex();
+ });
+ }, f.prototype.onSortChanged = function(g) {
+ this.dispatchSortChangedEvents(g);
+ }, f.prototype.isSortActive = function() {
+ var g = this.columnModel.getPrimaryAndSecondaryAndAutoColumns(), S = g.filter(function(O) {
+ return !!O.getSort();
+ });
+ return S && S.length > 0;
+ }, f.prototype.dispatchSortChangedEvents = function(g) {
+ var S = {
+ type: ui.EVENT_SORT_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi,
+ source: g
+ };
+ this.eventService.dispatchEvent(S);
+ }, f.prototype.clearSortBarThisColumn = function(g, S) {
+ this.columnModel.getPrimaryAndSecondaryAndAutoColumns().forEach(function(O) {
+ O !== g && O.setSort(void 0, S);
+ });
+ }, f.prototype.getNextSortDirection = function(g) {
+ var S;
+ if (g.getColDef().sortingOrder ? S = g.getColDef().sortingOrder : this.gridOptionsWrapper.getSortingOrder() ? S = this.gridOptionsWrapper.getSortingOrder() : S = d.DEFAULT_SORTING_ORDER, !Array.isArray(S) || S.length <= 0)
+ return console.warn("AG Grid: sortingOrder must be an array with at least one element, currently it's " + S), null;
+ var O = S.indexOf(g.getSort()), z = O < 0, te = O == S.length - 1, Fe;
+ return z || te ? Fe = S[0] : Fe = S[O + 1], d.DEFAULT_SORTING_ORDER.indexOf(Fe) < 0 ? (console.warn("AG Grid: invalid sort type " + Fe), null) : Fe;
+ }, f.prototype.getColumnsWithSortingOrdered = function() {
+ var g = this.columnModel.getPrimaryAndSecondaryAndAutoColumns(), S = g.filter(function(z) {
+ return !!z.getSort();
+ }), O = {};
+ return g.forEach(function(z, te) {
+ return O[z.getId()] = te;
+ }), S.sort(function(z, te) {
+ var Fe = z.getSortIndex(), ze = te.getSortIndex();
+ if (Fe != null && ze != null)
+ return Fe - ze;
+ if (Fe == null && ze == null) {
+ var ht = O[z.getId()], Lt = O[te.getId()];
+ return ht > Lt ? 1 : -1;
+ } else
+ return ze == null ? -1 : 1;
+ }), S;
+ }, f.prototype.getSortModel = function() {
+ return this.getColumnsWithSortingOrdered().map(function(g) {
+ return {
+ sort: g.getSort(),
+ colId: g.getId()
+ };
+ });
+ }, f.prototype.getSortOptions = function() {
+ return this.getColumnsWithSortingOrdered().map(function(g) {
+ return {
+ sort: g.getSort(),
+ column: g
+ };
+ });
+ };
+ var d;
+ return f.DEFAULT_SORTING_ORDER = [Ue.SORT_ASC, Ue.SORT_DESC, null], fne([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), fne([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), fne([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), f = d = fne([
+ Ne("sortController")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Pkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), M_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Okt = (
+ /** @class */
+ function(M) {
+ Pkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.setMouseOver = function(d) {
+ this.selectedColumns = d;
+ var g = {
+ type: ui.EVENT_COLUMN_HOVER_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(g);
+ }, f.prototype.clearMouseOver = function() {
+ this.selectedColumns = null;
+ var d = {
+ type: ui.EVENT_COLUMN_HOVER_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(d);
+ }, f.prototype.isHovered = function(d) {
+ return !!this.selectedColumns && this.selectedColumns.indexOf(d) >= 0;
+ }, M_e([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), M_e([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), f = M_e([
+ Ne("columnHoverService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Rkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), D_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Mkt = (
+ /** @class */
+ function(M) {
+ Rkt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.executeNextFuncs = [], d.executeLaterFuncs = [], d.active = !1, d.animationThreadCount = 0, d;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.ctrlsService.whenReady(function(g) {
+ return d.gridBodyCtrl = g.gridBodyCtrl;
+ });
+ }, f.prototype.isActive = function() {
+ return this.active;
+ }, f.prototype.start = function() {
+ this.active || this.gridOptionsWrapper.isSuppressColumnMoveAnimation() || this.gridOptionsWrapper.isEnableRtl() || (this.ensureAnimationCssClassPresent(), this.active = !0);
+ }, f.prototype.finish = function() {
+ this.active && (this.flush(), this.active = !1);
+ }, f.prototype.executeNextVMTurn = function(d) {
+ this.active ? this.executeNextFuncs.push(d) : d();
+ }, f.prototype.executeLaterVMTurn = function(d) {
+ this.active ? this.executeLaterFuncs.push(d) : d();
+ }, f.prototype.ensureAnimationCssClassPresent = function() {
+ var d = this;
+ this.animationThreadCount++;
+ var g = this.animationThreadCount;
+ this.gridBodyCtrl.setColumnMovingCss(!0), this.executeLaterFuncs.push(function() {
+ d.animationThreadCount === g && d.gridBodyCtrl.setColumnMovingCss(!1);
+ });
+ }, f.prototype.flush = function() {
+ var d = this.executeNextFuncs;
+ this.executeNextFuncs = [];
+ var g = this.executeLaterFuncs;
+ this.executeLaterFuncs = [], !(d.length === 0 && g.length === 0) && (window.setTimeout(function() {
+ return d.forEach(function(S) {
+ return S();
+ });
+ }, 0), window.setTimeout(function() {
+ return g.forEach(function(S) {
+ return S();
+ });
+ }, 300));
+ }, D_e([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), D_e([
+ ct
+ ], f.prototype, "postConstruct", null), f = D_e([
+ Ne("columnAnimationService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Dkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), F_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Fkt = (
+ /** @class */
+ function(M) {
+ Dkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ d = f, f.prototype.createAutoGroupColumns = function(g, S) {
+ var O = this, z = [], te = this.gridOptionsWrapper.isTreeData(), Fe = this.gridOptionsWrapper.isGroupMultiAutoColumn();
+ return te && Fe && (console.warn("AG Grid: you cannot mix groupMultiAutoColumn with treeData, only one column can be used to display groups when doing tree data"), Fe = !1), Fe ? S.forEach(function(ze, ht) {
+ z.push(O.createOneAutoGroupColumn(g, ze, ht));
+ }) : z.push(this.createOneAutoGroupColumn(g)), z;
+ }, f.prototype.createOneAutoGroupColumn = function(g, S, O) {
+ var z = this.generateDefaultColDef(S), te;
+ S ? te = Ue.GROUP_AUTO_COLUMN_ID + "-" + S.getId() : te = d.GROUP_AUTO_COLUMN_BUNDLE_ID;
+ var Fe = this.gridOptionsWrapper.getAutoGroupColumnDef();
+ if (he(z, Fe), z = this.columnFactory.mergeColDefs(z), z.colId = te, !this.gridOptionsWrapper.isTreeData()) {
+ var ze = r(z.field) && r(z.valueGetter) && r(z.filterValueGetter);
+ ze && (z.filter = !1);
+ }
+ O && O > 0 && (z.headerCheckboxSelection = !1);
+ var ht = g.find(function(ti) {
+ return ti.getId() == te;
+ });
+ if (ht)
+ return ht.setColDef(z, null), this.columnFactory.applyColumnState(ht, z), ht;
+ var Lt = new H(z, null, te, !0);
+ return this.context.createBean(Lt), Lt;
+ }, f.prototype.generateDefaultColDef = function(g) {
+ var S = this.gridOptionsWrapper.getAutoGroupColumnDef(), O = this.gridOptionsWrapper.getLocaleTextFunc(), z = {
+ headerName: O("group", "Group")
+ }, te = S && (S.cellRenderer || S.cellRendererFramework || S.cellRendererSelector);
+ if (te || (z.cellRenderer = "agGroupCellRenderer"), g) {
+ var Fe = g.getColDef();
+ Object.assign(z, {
+ // cellRendererParams.groupKey: colDefToCopy.field;
+ headerName: this.columnModel.getDisplayNameForColumn(g, "header"),
+ headerValueGetter: Fe.headerValueGetter
+ }), (Fe.cellRenderer || Fe.cellRendererFramework) && Object.assign(z, {
+ cellRendererParams: {
+ innerRenderer: Fe.cellRenderer,
+ innerRendererFramework: Fe.cellRendererFramework,
+ innerRendererParams: Fe.cellRendererParams
+ }
+ }), z.showRowGroup = g.getColId();
+ } else
+ z.showRowGroup = !0;
+ return z;
+ };
+ var d;
+ return f.GROUP_AUTO_COLUMN_BUNDLE_ID = Ue.GROUP_AUTO_COLUMN_ID, F_e([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), F_e([
+ pe("columnFactory")
+ ], f.prototype, "columnFactory", void 0), f = d = F_e([
+ Ne("autoGroupColService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Lkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), L_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Nkt = (
+ /** @class */
+ function(M) {
+ Lkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this;
+ this.ctrlsService.whenReady(function(g) {
+ d.centerRowContainerCon = g.centerRowContainerCtrl, d.addManagedListener(d.eventService, ui.EVENT_BODY_HEIGHT_CHANGED, d.onBodyHeightChanged.bind(d)), d.addManagedListener(d.eventService, ui.EVENT_SCROLL_VISIBILITY_CHANGED, d.onScrollVisibilityChanged.bind(d)), d.checkPageSize();
+ });
+ }, f.prototype.notActive = function() {
+ return !this.gridOptionsWrapper.isPaginationAutoPageSize();
+ }, f.prototype.onScrollVisibilityChanged = function() {
+ this.checkPageSize();
+ }, f.prototype.onBodyHeightChanged = function() {
+ this.checkPageSize();
+ }, f.prototype.checkPageSize = function() {
+ if (!this.notActive()) {
+ var d = this.gridOptionsWrapper.getRowHeightAsNumber(), g = this.centerRowContainerCon.getViewportSizeFeature().getBodyHeight();
+ if (g > 0) {
+ var S = Math.floor(g / d);
+ this.gridOptionsWrapper.setProperty("paginationPageSize", S);
+ }
+ }
+ }, L_e([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), L_e([
+ ct
+ ], f.prototype, "postConstruct", null), f = L_e([
+ Ne("paginationAutoPageSizeService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var kkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), RVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, MVe = (
+ /** @class */
+ function(M) {
+ kkt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.cacheVersion = 0, d;
+ }
+ return f.prototype.init = function() {
+ this.active = this.gridOptionsWrapper.isValueCache(), this.neverExpires = this.gridOptionsWrapper.isValueCacheNeverExpires();
+ }, f.prototype.onDataChanged = function() {
+ this.neverExpires || this.expire();
+ }, f.prototype.expire = function() {
+ this.cacheVersion++;
+ }, f.prototype.setValue = function(d, g, S) {
+ this.active && (d.__cacheVersion !== this.cacheVersion && (d.__cacheVersion = this.cacheVersion, d.__cacheData = {}), d.__cacheData[g] = S);
+ }, f.prototype.getValue = function(d, g) {
+ if (!(!this.active || d.__cacheVersion !== this.cacheVersion))
+ return d.__cacheData[g];
+ }, RVe([
+ ct
+ ], f.prototype, "init", null), f = RVe([
+ Ne("valueCache")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var $kt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), mne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Bkt = (
+ /** @class */
+ function(M) {
+ $kt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.init = function() {
+ this.rowModel.getType() === Ue.ROW_MODEL_TYPE_CLIENT_SIDE && (this.clientSideRowModel = this.rowModel), this.addManagedListener(this.eventService, ui.EVENT_CELL_VALUE_CHANGED, this.onCellValueChanged.bind(this));
+ }, f.prototype.onCellValueChanged = function(d) {
+ d.source !== Ue.SOURCE_PASTE && this.doChangeDetection(d.node, d.column);
+ }, f.prototype.doChangeDetection = function(d, g) {
+ if (!this.gridOptionsWrapper.isSuppressChangeDetection()) {
+ if (this.clientSideRowModel && !d.isRowPinned()) {
+ var S = this.gridOptionsWrapper.isAggregateOnlyChangedColumns(), O = new ane(S, this.clientSideRowModel.getRootNode());
+ O.addParentNode(d.parent, [g]), this.clientSideRowModel.doAggregate(O);
+ }
+ this.rowRenderer.refreshCells();
+ }
+ }, mne([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), mne([
+ pe("rowRenderer")
+ ], f.prototype, "rowRenderer", void 0), mne([
+ ct
+ ], f.prototype, "init", null), f = mne([
+ Ne("changeDetectionService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Vkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), DVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, jkt = (
+ /** @class */
+ function(M) {
+ Vkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.adaptFunction = function(d, g) {
+ var S = this.componentMetadataProvider.retrieve(d);
+ return S && S.functionAdapter ? S.functionAdapter(g) : null;
+ }, f.prototype.adaptCellRendererFunction = function(d) {
+ var g = (
+ /** @class */
+ function() {
+ function S() {
+ }
+ return S.prototype.refresh = function(O) {
+ return !1;
+ }, S.prototype.getGui = function() {
+ return this.eGui;
+ }, S.prototype.init = function(O) {
+ var z = d(O), te = typeof z;
+ if (te === "string" || te === "number" || te === "boolean") {
+ this.eGui = gu("
" + z + "");
+ return;
+ }
+ if (z == null) {
+ this.eGui = gu("
");
+ return;
+ }
+ this.eGui = z;
+ }, S;
+ }()
+ );
+ return g;
+ }, f.prototype.doesImplementIComponent = function(d) {
+ return d ? d.prototype && "getGui" in d.prototype : !1;
+ }, DVe([
+ pe("componentMetadataProvider")
+ ], f.prototype, "componentMetadataProvider", void 0), f = DVe([
+ Ne("agComponentUtils")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Gkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), N_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Ukt = (
+ /** @class */
+ function(M) {
+ Gkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.postConstruct = function() {
+ this.componentMetaData = {
+ dateComponent: {
+ mandatoryMethodList: ["getDate", "setDate"],
+ optionalMethodList: ["afterGuiAttached", "setInputPlaceholder", "setInputAriaLabel"]
+ },
+ detailCellRenderer: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["refresh"],
+ functionAdapter: this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)
+ },
+ headerComponent: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["refresh"]
+ },
+ headerGroupComponent: {
+ mandatoryMethodList: [],
+ optionalMethodList: []
+ },
+ loadingCellRenderer: {
+ mandatoryMethodList: [],
+ optionalMethodList: []
+ },
+ loadingOverlayComponent: {
+ mandatoryMethodList: [],
+ optionalMethodList: []
+ },
+ noRowsOverlayComponent: {
+ mandatoryMethodList: [],
+ optionalMethodList: []
+ },
+ floatingFilterComponent: {
+ mandatoryMethodList: ["onParentModelChanged"],
+ optionalMethodList: ["afterGuiAttached"]
+ },
+ floatingFilterWrapperComponent: {
+ mandatoryMethodList: [],
+ optionalMethodList: []
+ },
+ cellRenderer: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["refresh", "afterGuiAttached"],
+ functionAdapter: this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)
+ },
+ cellEditor: {
+ mandatoryMethodList: ["getValue"],
+ optionalMethodList: ["isPopup", "isCancelBeforeStart", "isCancelAfterEnd", "getPopupPosition", "focusIn", "focusOut", "afterGuiAttached"]
+ },
+ innerRenderer: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["afterGuiAttached"],
+ functionAdapter: this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)
+ },
+ fullWidthCellRenderer: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["refresh", "afterGuiAttached"],
+ functionAdapter: this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)
+ },
+ pinnedRowCellRenderer: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["refresh", "afterGuiAttached"],
+ functionAdapter: this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)
+ },
+ groupRowRenderer: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["afterGuiAttached"],
+ functionAdapter: this.agComponentUtils.adaptCellRendererFunction.bind(this.agComponentUtils)
+ },
+ filter: {
+ mandatoryMethodList: ["isFilterActive", "doesFilterPass", "getModel", "setModel"],
+ optionalMethodList: ["afterGuiAttached", "onNewRowsLoaded", "getModelAsString", "onFloatingFilterChanged"]
+ },
+ filterComponent: {
+ mandatoryMethodList: ["isFilterActive", "doesFilterPass", "getModel", "setModel"],
+ optionalMethodList: ["afterGuiAttached", "onNewRowsLoaded", "getModelAsString", "onFloatingFilterChanged"]
+ },
+ statusPanel: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["afterGuiAttached"]
+ },
+ toolPanel: {
+ mandatoryMethodList: [],
+ optionalMethodList: ["refresh", "afterGuiAttached"]
+ },
+ tooltipComponent: {
+ mandatoryMethodList: [],
+ optionalMethodList: []
+ }
+ };
+ }, f.prototype.retrieve = function(d) {
+ return this.componentMetaData[d];
+ }, N_e([
+ pe("agComponentUtils")
+ ], f.prototype, "agComponentUtils", void 0), N_e([
+ ct
+ ], f.prototype, "postConstruct", null), f = N_e([
+ Ne("componentMetadataProvider")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var zkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), FVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, k_e = 8, Hkt = 4, $_e = 4, B_e = 6, Wkt = {
+ // this item is required for custom themes
+ "ag-theme-custom": {
+ headerHeight: 25,
+ headerCellMinWidth: 24,
+ listItemHeight: Hkt * 5,
+ rowHeight: 25,
+ chartMenuPanelWidth: 220
+ },
+ "ag-theme-material": {
+ headerHeight: k_e * 7,
+ headerCellMinWidth: 48,
+ listItemHeight: k_e * 4,
+ rowHeight: k_e * 6,
+ chartMenuPanelWidth: 240
+ },
+ "ag-theme-balham": {
+ headerHeight: $_e * 8,
+ headerCellMinWidth: 24,
+ listItemHeight: $_e * 6,
+ rowHeight: $_e * 7,
+ chartMenuPanelWidth: 220
+ },
+ "ag-theme-alpine": {
+ headerHeight: B_e * 8,
+ headerCellMinWidth: 36,
+ listItemHeight: B_e * 4,
+ rowHeight: B_e * 7,
+ chartMenuPanelWidth: 240
+ }
+ }, LVe = {
+ headerHeight: ["ag-header-row"],
+ headerCellMinWidth: ["ag-header-cell"],
+ listItemHeight: ["ag-virtual-list-item"],
+ rowHeight: ["ag-row"],
+ chartMenuPanelWidth: ["ag-chart-docked-container"]
+ }, hW = {}, NVe = (
+ /** @class */
+ function(M) {
+ zkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.getSassVariable = function(d, g) {
+ var S = "ag-theme-" + (d.match("material") ? "material" : d.match("balham") ? "balham" : d.match("alpine") ? "alpine" : "custom"), O = Wkt[S][g], z = 0;
+ hW[d] || (hW[d] = {});
+ var te = hW[d][g];
+ if (te != null)
+ return te;
+ if (LVe[g]) {
+ var Fe = LVe[g], ze = document.createElement("div");
+ ze.classList.add(d), ze.style.position = "absolute";
+ var ht = Fe.reduce(function(ti, wi) {
+ var Ti = document.createElement("div");
+ return Ti.style.position = "static", Ti.classList.add(wi), ti.appendChild(Ti), Ti;
+ }, ze);
+ if (document.body) {
+ document.body.appendChild(ze);
+ var Lt = g.toLowerCase().indexOf("height") !== -1 ? "height" : "width";
+ z = parseInt(window.getComputedStyle(ht)[Lt], 10), document.body.removeChild(ze);
+ }
+ }
+ return hW[d][g] = z || O, hW[d][g];
+ }, f.prototype.isThemeDark = function() {
+ var d = this.getTheme().theme;
+ return !!d && d.indexOf("dark") >= 0;
+ }, f.prototype.chartMenuPanelWidth = function() {
+ var d = this.getTheme().themeFamily;
+ return this.getSassVariable(d, "chartMenuPanelWidth");
+ }, f.prototype.getTheme = function() {
+ for (var d = /\bag-(material|(?:theme-([\w\-]*)))\b/, g = this.eGridDiv, S = null; g && (S = d.exec(g.className), !S); )
+ g = g.parentElement || void 0;
+ if (!S)
+ return {};
+ var O = S[0], z = S[2] === void 0;
+ if (z) {
+ var te = O.replace("ag-", "ag-theme-");
+ Ge(function() {
+ return console.warn("AG Grid: As of v19 old theme are no longer provided. Please replace " + O + " with " + te + ".");
+ }, "using-old-theme");
+ }
+ return { theme: O, el: g, themeFamily: O.replace(/-dark$/, "") };
+ }, FVe([
+ pe("eGridDiv")
+ ], f.prototype, "eGridDiv", void 0), f = FVe([
+ Ne("environment")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var qkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), gne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Ykt = function(M, f) {
+ return function(d, g) {
+ f(d, g, M);
+ };
+ }, Xkt = (
+ /** @class */
+ function(M) {
+ qkt(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.scrollY = 0, d.uiBodyHeight = 0, d;
+ }
+ return f.prototype.agWire = function(d) {
+ this.logger = d.create("RowContainerHeightService");
+ }, f.prototype.postConstruct = function() {
+ this.addManagedListener(this.eventService, ui.EVENT_BODY_HEIGHT_CHANGED, this.updateOffset.bind(this)), this.maxDivHeight = kl(), this.logger.log("maxDivHeight = " + this.maxDivHeight);
+ }, f.prototype.isStretching = function() {
+ return this.stretching;
+ }, f.prototype.getDivStretchOffset = function() {
+ return this.divStretchOffset;
+ }, f.prototype.updateOffset = function() {
+ if (this.stretching) {
+ var d = this.ctrlsService.getGridBodyCtrl(), g = d.getScrollFeature().getVScrollPosition().top, S = this.getUiBodyHeight(), O = g !== this.scrollY || S !== this.uiBodyHeight;
+ O && (this.scrollY = g, this.uiBodyHeight = S, this.calculateOffset());
+ }
+ }, f.prototype.calculateOffset = function() {
+ this.setUiContainerHeight(this.maxDivHeight), this.pixelsToShave = this.modelHeight - this.uiContainerHeight, this.maxScrollY = this.uiContainerHeight - this.uiBodyHeight;
+ var d = this.scrollY / this.maxScrollY, g = d * this.pixelsToShave;
+ this.logger.log("Div Stretch Offset = " + g + " (" + this.pixelsToShave + " * " + d + ")"), this.setDivStretchOffset(g);
+ }, f.prototype.setUiContainerHeight = function(d) {
+ d !== this.uiContainerHeight && (this.uiContainerHeight = d, this.eventService.dispatchEvent({ type: ui.EVENT_ROW_CONTAINER_HEIGHT_CHANGED }));
+ }, f.prototype.clearOffset = function() {
+ this.setUiContainerHeight(this.modelHeight), this.pixelsToShave = 0, this.setDivStretchOffset(0);
+ }, f.prototype.setDivStretchOffset = function(d) {
+ var g = typeof d == "number" ? Math.floor(d) : null;
+ this.divStretchOffset !== g && (this.divStretchOffset = g, this.eventService.dispatchEvent({ type: ui.EVENT_HEIGHT_SCALE_CHANGED }));
+ }, f.prototype.setModelHeight = function(d) {
+ this.modelHeight = d, this.stretching = d != null && this.maxDivHeight > 0 && d > this.maxDivHeight, this.stretching ? this.calculateOffset() : this.clearOffset();
+ }, f.prototype.getUiContainerHeight = function() {
+ return this.uiContainerHeight;
+ }, f.prototype.getRealPixelPosition = function(d) {
+ return d - this.divStretchOffset;
+ }, f.prototype.getUiBodyHeight = function() {
+ var d = this.ctrlsService.getGridBodyCtrl(), g = d.getScrollFeature().getVScrollPosition();
+ return g.bottom - g.top;
+ }, f.prototype.getScrollPositionForPixel = function(d) {
+ if (this.pixelsToShave <= 0)
+ return d;
+ var g = this.modelHeight - this.getUiBodyHeight(), S = d / g, O = this.maxScrollY * S;
+ return O;
+ }, gne([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), gne([
+ Ykt(0, yt("loggerFactory"))
+ ], f.prototype, "agWire", null), gne([
+ ct
+ ], f.prototype, "postConstruct", null), f = gne([
+ Ne("rowContainerHeightService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Kkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), kVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, $Ve = (
+ /** @class */
+ function(M) {
+ Kkt(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.init = function() {
+ this.groupSelectsChildren = this.gridOptionsWrapper.isGroupSelectsChildren(), this.isRowSelectableFunc = this.gridOptionsWrapper.getIsRowSelectableFunc();
+ }, f.prototype.updateSelectableAfterGrouping = function(d) {
+ if (this.isRowSelectableFunc) {
+ var g = function(S) {
+ return S.childrenAfterGroup;
+ };
+ this.recurseDown(d.childrenAfterGroup, g);
+ }
+ }, f.prototype.recurseDown = function(d, g) {
+ var S = this;
+ d && d.forEach(function(O) {
+ if (O.group) {
+ O.hasChildren() && S.recurseDown(g(O), g);
+ var z;
+ if (S.groupSelectsChildren) {
+ var te = (g(O) || []).find(function(Fe) {
+ return Fe.selectable === !0;
+ });
+ z = i(te);
+ } else
+ z = S.isRowSelectableFunc ? S.isRowSelectableFunc(O) : !1;
+ O.setRowSelectable(z);
+ }
+ });
+ }, kVe([
+ ct
+ ], f.prototype, "init", null), f = kVe([
+ Ne("selectableService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Jkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), nw = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Zkt = (
+ /** @class */
+ function(M) {
+ Jkt(f, M);
+ function f() {
+ var d = M.call(this) || this;
+ return d.previousAndFirstButtonsDisabled = !1, d.nextButtonDisabled = !1, d.lastButtonDisabled = !1, d;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this, g = this.gridOptionsWrapper.isEnableRtl();
+ this.setTemplate(this.getTemplate()), this.btFirst.insertAdjacentElement("afterbegin", Xl(g ? "last" : "first", this.gridOptionsWrapper)), this.btPrevious.insertAdjacentElement("afterbegin", Xl(g ? "next" : "previous", this.gridOptionsWrapper)), this.btNext.insertAdjacentElement("afterbegin", Xl(g ? "previous" : "next", this.gridOptionsWrapper)), this.btLast.insertAdjacentElement("afterbegin", Xl(g ? "first" : "last", this.gridOptionsWrapper));
+ var S = this.gridOptionsWrapper.isPagination(), O = S && !this.gridOptionsWrapper.isSuppressPaginationPanel();
+ if (!O) {
+ this.setDisplayed(!1);
+ return;
+ }
+ this.addManagedListener(this.eventService, ui.EVENT_PAGINATION_CHANGED, this.onPaginationChanged.bind(this)), [
+ { el: this.btFirst, fn: this.onBtFirst.bind(this) },
+ { el: this.btPrevious, fn: this.onBtPrevious.bind(this) },
+ { el: this.btNext, fn: this.onBtNext.bind(this) },
+ { el: this.btLast, fn: this.onBtLast.bind(this) }
+ ].forEach(function(z) {
+ var te = z.el, Fe = z.fn;
+ d.addManagedListener(te, "click", Fe), d.addManagedListener(te, "keydown", function(ze) {
+ (ze.key === Hr.ENTER || ze.key === Hr.SPACE) && (ze.preventDefault(), Fe());
+ });
+ }), this.onPaginationChanged();
+ }, f.prototype.onPaginationChanged = function() {
+ this.enableOrDisableButtons(), this.updateRowLabels(), this.setCurrentPageLabel(), this.setTotalLabels();
+ }, f.prototype.onBtFirst = function() {
+ this.previousAndFirstButtonsDisabled || this.paginationProxy.goToFirstPage();
+ }, f.prototype.setCurrentPageLabel = function() {
+ var d = this.paginationProxy.getTotalPages() > 0, g = this.paginationProxy.getCurrentPage(), S = d ? g + 1 : 0;
+ this.lbCurrent.innerHTML = this.formatNumber(S);
+ }, f.prototype.formatNumber = function(d) {
+ var g = this.gridOptionsWrapper.getPaginationNumberFormatterFunc();
+ if (g) {
+ var S = { value: d };
+ return g(S);
+ }
+ var O = this.gridOptionsWrapper.getLocaleTextFunc(), z = O("thousandSeparator", ","), te = O("decimalSeparator", ".");
+ return Ot(d, z, te);
+ }, f.prototype.getTemplate = function() {
+ var d = this.gridOptionsWrapper.getLocaleTextFunc(), g = d("page", "Page"), S = d("to", "to"), O = d("of", "of"), z = d("firstPage", "First Page"), te = d("previousPage", "Previous Page"), Fe = d("nextPage", "Next Page"), ze = d("lastPage", "Last Page"), ht = this.getCompId();
+ return (
+ /* html */
+ '
+
+
+ ' + S + `
+
+ ' + O + `
+
+
+
+
+
+
+ ' + g + `
+
+ ' + O + `
+
+
+
+
+
+
`
+ );
+ }, f.prototype.onBtNext = function() {
+ this.nextButtonDisabled || this.paginationProxy.goToNextPage();
+ }, f.prototype.onBtPrevious = function() {
+ this.previousAndFirstButtonsDisabled || this.paginationProxy.goToPreviousPage();
+ }, f.prototype.onBtLast = function() {
+ this.lastButtonDisabled || this.paginationProxy.goToLastPage();
+ }, f.prototype.enableOrDisableButtons = function() {
+ var d = this.paginationProxy.getCurrentPage(), g = this.paginationProxy.isLastPageFound(), S = this.paginationProxy.getTotalPages();
+ this.previousAndFirstButtonsDisabled = d === 0, this.toggleButtonDisabled(this.btFirst, this.previousAndFirstButtonsDisabled), this.toggleButtonDisabled(this.btPrevious, this.previousAndFirstButtonsDisabled);
+ var O = this.isZeroPagesToDisplay(), z = g && d === S - 1;
+ this.nextButtonDisabled = z || O, this.lastButtonDisabled = !g || O || d === S - 1, this.toggleButtonDisabled(this.btNext, this.nextButtonDisabled), this.toggleButtonDisabled(this.btLast, this.lastButtonDisabled);
+ }, f.prototype.toggleButtonDisabled = function(d, g) {
+ vs(d, g), d.classList.toggle("ag-disabled", g), g ? d.removeAttribute("tabindex") : d.setAttribute("tabindex", "0");
+ }, f.prototype.updateRowLabels = function() {
+ var d = this.paginationProxy.getCurrentPage(), g = this.paginationProxy.getPageSize(), S = this.paginationProxy.isLastPageFound(), O = this.paginationProxy.isLastPageFound() ? this.paginationProxy.getMasterRowCount() : null, z, te;
+ this.isZeroPagesToDisplay() ? z = te = 0 : (z = g * d + 1, te = z + g - 1, S && te > O && (te = O)), this.lbFirstRowOnPage.innerHTML = this.formatNumber(z), this.rowNodeBlockLoader.isLoading() ? this.lbLastRowOnPage.innerHTML = "?" : this.lbLastRowOnPage.innerHTML = this.formatNumber(te);
+ }, f.prototype.isZeroPagesToDisplay = function() {
+ var d = this.paginationProxy.isLastPageFound(), g = this.paginationProxy.getTotalPages();
+ return d && g === 0;
+ }, f.prototype.setTotalLabels = function() {
+ var d = this.paginationProxy.isLastPageFound(), g = this.paginationProxy.getTotalPages(), S = d ? this.paginationProxy.getMasterRowCount() : null;
+ if (S === 1) {
+ var O = this.paginationProxy.getRow(0), z = O && O.group && !(O.groupData || O.aggData);
+ if (z) {
+ this.setTotalLabelsToZero();
+ return;
+ }
+ }
+ if (d)
+ this.lbTotal.innerHTML = this.formatNumber(g), this.lbRecordCount.innerHTML = this.formatNumber(S);
+ else {
+ var te = this.gridOptionsWrapper.getLocaleTextFunc()("more", "more");
+ this.lbTotal.innerHTML = te, this.lbRecordCount.innerHTML = te;
+ }
+ }, f.prototype.setTotalLabelsToZero = function() {
+ this.lbFirstRowOnPage.innerHTML = this.formatNumber(0), this.lbCurrent.innerHTML = this.formatNumber(0), this.lbLastRowOnPage.innerHTML = this.formatNumber(0), this.lbTotal.innerHTML = this.formatNumber(0), this.lbRecordCount.innerHTML = this.formatNumber(0);
+ }, nw([
+ pe("paginationProxy")
+ ], f.prototype, "paginationProxy", void 0), nw([
+ pe("rowNodeBlockLoader")
+ ], f.prototype, "rowNodeBlockLoader", void 0), nw([
+ qr("btFirst")
+ ], f.prototype, "btFirst", void 0), nw([
+ qr("btPrevious")
+ ], f.prototype, "btPrevious", void 0), nw([
+ qr("btNext")
+ ], f.prototype, "btNext", void 0), nw([
+ qr("btLast")
+ ], f.prototype, "btLast", void 0), nw([
+ qr("lbRecordCount")
+ ], f.prototype, "lbRecordCount", void 0), nw([
+ qr("lbFirstRowOnPage")
+ ], f.prototype, "lbFirstRowOnPage", void 0), nw([
+ qr("lbLastRowOnPage")
+ ], f.prototype, "lbLastRowOnPage", void 0), nw([
+ qr("lbCurrent")
+ ], f.prototype, "lbCurrent", void 0), nw([
+ qr("lbTotal")
+ ], f.prototype, "lbTotal", void 0), nw([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(ba)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var Qkt = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), O9 = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, R9;
+ (function(M) {
+ M[M.Loading = 0] = "Loading", M[M.NoRows = 1] = "NoRows";
+ })(R9 || (R9 = {}));
+ var e6t = (
+ /** @class */
+ function(M) {
+ Qkt(f, M);
+ function f() {
+ var d = M.call(this, f.TEMPLATE) || this;
+ return d.inProgress = !1, d.destroyRequested = !1, d.manuallyDisplayed = !1, d;
+ }
+ return f.prototype.updateLayoutClasses = function(d, g) {
+ var S = this.eOverlayWrapper.classList;
+ S.toggle(t.LayoutCssClasses.AUTO_HEIGHT, g.autoHeight), S.toggle(t.LayoutCssClasses.NORMAL, g.normal), S.toggle(t.LayoutCssClasses.PRINT, g.print);
+ }, f.prototype.postConstruct = function() {
+ this.createManagedBean(new Y8(this)), this.setDisplayed(!1), this.addManagedListener(this.eventService, ui.EVENT_ROW_DATA_CHANGED, this.onRowDataChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_ROW_DATA_UPDATED, this.onRowDataChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_NEW_COLUMNS_LOADED, this.onNewColumnsLoaded.bind(this)), this.gridOptionsWrapper.isRowModelDefault() && !this.gridOptionsWrapper.getRowData() && this.showLoadingOverlay(), this.gridApi.registerOverlayWrapperComp(this);
+ }, f.prototype.setWrapperTypeClass = function(d) {
+ var g = this.eOverlayWrapper.classList;
+ g.toggle("ag-overlay-loading-wrapper", d === R9.Loading), g.toggle("ag-overlay-no-rows-wrapper", d === R9.NoRows);
+ }, f.prototype.showLoadingOverlay = function() {
+ if (!this.gridOptionsWrapper.isSuppressLoadingOverlay()) {
+ var d = {}, g = this.userComponentFactory.getLoadingOverlayCompDetails(d), S = g.newAgStackInstance();
+ this.showOverlay(S, R9.Loading);
+ }
+ }, f.prototype.showNoRowsOverlay = function() {
+ if (!this.gridOptionsWrapper.isSuppressNoRowsOverlay()) {
+ var d = {}, g = this.userComponentFactory.getNoRowsOverlayCompDetails(d), S = g.newAgStackInstance();
+ this.showOverlay(S, R9.NoRows);
+ }
+ }, f.prototype.showOverlay = function(d, g) {
+ var S = this;
+ this.inProgress || (this.setWrapperTypeClass(g), this.destroyActiveOverlay(), this.inProgress = !0, d && d.then(function(O) {
+ S.inProgress = !1, S.eOverlayWrapper.appendChild(O.getGui()), S.activeOverlay = O, S.destroyRequested && (S.destroyRequested = !1, S.destroyActiveOverlay());
+ }), this.manuallyDisplayed = this.columnModel.isReady() && !this.paginationProxy.isEmpty(), this.setDisplayed(!0));
+ }, f.prototype.destroyActiveOverlay = function() {
+ if (this.inProgress) {
+ this.destroyRequested = !0;
+ return;
+ }
+ this.activeOverlay && (this.activeOverlay = this.getContext().destroyBean(this.activeOverlay), Su(this.eOverlayWrapper));
+ }, f.prototype.hideOverlay = function() {
+ this.manuallyDisplayed = !1, this.destroyActiveOverlay(), this.setDisplayed(!1);
+ }, f.prototype.destroy = function() {
+ this.destroyActiveOverlay(), M.prototype.destroy.call(this);
+ }, f.prototype.showOrHideOverlay = function() {
+ var d = this.paginationProxy.isEmpty(), g = this.gridOptionsWrapper.isSuppressNoRowsOverlay();
+ d && !g ? this.showNoRowsOverlay() : this.hideOverlay();
+ }, f.prototype.onRowDataChanged = function() {
+ this.showOrHideOverlay();
+ }, f.prototype.onNewColumnsLoaded = function() {
+ this.columnModel.isReady() && !this.paginationProxy.isEmpty() && !this.manuallyDisplayed && this.hideOverlay();
+ }, f.TEMPLATE = `
+
`, O9([
+ pe("userComponentFactory")
+ ], f.prototype, "userComponentFactory", void 0), O9([
+ pe("paginationProxy")
+ ], f.prototype, "paginationProxy", void 0), O9([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), O9([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), O9([
+ qr("eOverlayWrapper")
+ ], f.prototype, "eOverlayWrapper", void 0), O9([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(ba)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var t6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), yne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, BVe = (
+ /** @class */
+ function(M) {
+ t6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.getFirstRow = function() {
+ var d = 0, g;
+ return this.pinnedRowModel.getPinnedTopRowCount() ? g = Ue.PINNED_TOP : this.rowModel.getRowCount() ? (g = null, d = this.paginationProxy.getPageFirstRow()) : this.pinnedRowModel.getPinnedBottomRowCount() && (g = Ue.PINNED_BOTTOM), g === void 0 ? null : { rowIndex: d, rowPinned: g };
+ }, f.prototype.getLastRow = function() {
+ var d, g = null, S = this.pinnedRowModel.getPinnedBottomRowCount(), O = this.pinnedRowModel.getPinnedTopRowCount();
+ return S ? (g = Ue.PINNED_BOTTOM, d = S - 1) : this.rowModel.getRowCount() ? (g = null, d = this.paginationProxy.getPageLastRow()) : O && (g = Ue.PINNED_TOP, d = O - 1), d === void 0 ? null : { rowIndex: d, rowPinned: g };
+ }, f.prototype.getRowNode = function(d) {
+ switch (d.rowPinned) {
+ case Ue.PINNED_TOP:
+ return this.pinnedRowModel.getPinnedTopRowData()[d.rowIndex];
+ case Ue.PINNED_BOTTOM:
+ return this.pinnedRowModel.getPinnedBottomRowData()[d.rowIndex];
+ default:
+ return this.rowModel.getRow(d.rowIndex);
+ }
+ }, f.prototype.sameRow = function(d, g) {
+ return !d && !g ? !0 : d && !g || !d && g ? !1 : d.rowIndex === g.rowIndex && d.rowPinned == g.rowPinned;
+ }, f.prototype.before = function(d, g) {
+ switch (d.rowPinned) {
+ case Ue.PINNED_TOP:
+ if (g.rowPinned !== Ue.PINNED_TOP)
+ return !0;
+ break;
+ case Ue.PINNED_BOTTOM:
+ if (g.rowPinned !== Ue.PINNED_BOTTOM)
+ return !1;
+ break;
+ default:
+ if (i(g.rowPinned))
+ return g.rowPinned !== Ue.PINNED_TOP;
+ break;
+ }
+ return d.rowIndex < g.rowIndex;
+ }, yne([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), yne([
+ pe("pinnedRowModel")
+ ], f.prototype, "pinnedRowModel", void 0), yne([
+ pe("paginationProxy")
+ ], f.prototype, "paginationProxy", void 0), f = yne([
+ Ne("rowPositionUtils")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var i6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), r6t = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, VVe = (
+ /** @class */
+ function(M) {
+ i6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.createId = function(d) {
+ var g = d.rowIndex, S = d.rowPinned, O = d.column;
+ return this.createIdFromValues(g, O, S);
+ }, f.prototype.createIdFromValues = function(d, g, S) {
+ return d + "." + (S ?? "null") + "." + g.getId();
+ }, f.prototype.equals = function(d, g) {
+ var S = d.column === g.column, O = d.rowPinned === g.rowPinned, z = d.rowIndex === g.rowIndex;
+ return S && O && z;
+ }, f = r6t([
+ Ne("cellPositionUtils")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var n6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), vne = (
+ /** @class */
+ function() {
+ function M(f) {
+ this.cellValueChanges = f;
+ }
+ return M;
+ }()
+ ), V_e = (
+ /** @class */
+ function(M) {
+ n6t(f, M);
+ function f(d, g, S) {
+ var O = M.call(this, d) || this;
+ return O.initialRange = g, O.finalRange = S, O;
+ }
+ return f;
+ }(vne)
+ ), jVe = (
+ /** @class */
+ function() {
+ function M(f) {
+ this.actionStack = [], this.maxStackSize = f || M.DEFAULT_STACK_SIZE, this.actionStack = new Array(this.maxStackSize);
+ }
+ return M.prototype.pop = function() {
+ return this.actionStack.pop();
+ }, M.prototype.push = function(f) {
+ var d = f.cellValueChanges && f.cellValueChanges.length > 0;
+ d && (this.actionStack.length === this.maxStackSize && this.actionStack.shift(), this.actionStack.push(f));
+ }, M.prototype.clear = function() {
+ this.actionStack = [];
+ }, M.prototype.getCurrentStackSize = function() {
+ return this.actionStack.length;
+ }, M.DEFAULT_STACK_SIZE = 10, M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var s6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), gR = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, o6t = (
+ /** @class */
+ function(M) {
+ s6t(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.cellValueChanges = [], d.activeCellEdit = null, d.activeRowEdit = null, d.isPasting = !1, d.isFilling = !1, d.onCellValueChanged = function(g) {
+ var S = { column: g.column, rowIndex: g.rowIndex, rowPinned: g.rowPinned }, O = d.activeCellEdit !== null && d.cellPositionUtils.equals(d.activeCellEdit, S), z = d.activeRowEdit !== null && d.rowPositionUtils.sameRow(d.activeRowEdit, S), te = O || z || d.isPasting || d.isFilling;
+ if (te) {
+ var Fe = g.rowPinned, ze = g.rowIndex, ht = g.column, Lt = g.oldValue, ti = g.value, wi = {
+ rowPinned: Fe,
+ rowIndex: ze,
+ columnId: ht.getColId(),
+ newValue: ti,
+ oldValue: Lt
+ };
+ d.cellValueChanges.push(wi);
+ }
+ }, d.clearStacks = function() {
+ d.undoStack.clear(), d.redoStack.clear();
+ }, d;
+ }
+ return f.prototype.init = function() {
+ if (this.gridOptionsWrapper.isUndoRedoCellEditing()) {
+ var d = this.gridOptionsWrapper.getUndoRedoCellEditingLimit();
+ d <= 0 || (this.undoStack = new jVe(d), this.redoStack = new jVe(d), this.addRowEditingListeners(), this.addCellEditingListeners(), this.addPasteListeners(), this.addFillListeners(), this.addManagedListener(this.eventService, ui.EVENT_CELL_VALUE_CHANGED, this.onCellValueChanged), this.addManagedListener(this.eventService, ui.EVENT_MODEL_UPDATED, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_PIVOT_MODE_CHANGED, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_NEW_COLUMNS_LOADED, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_GROUP_OPENED, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_ROW_GROUP_CHANGED, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_MOVED, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_PINNED, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_VISIBLE, this.clearStacks), this.addManagedListener(this.eventService, ui.EVENT_ROW_DRAG_END, this.clearStacks));
+ }
+ }, f.prototype.getCurrentUndoStackSize = function() {
+ return this.undoStack ? this.undoStack.getCurrentStackSize() : 0;
+ }, f.prototype.getCurrentRedoStackSize = function() {
+ return this.redoStack ? this.redoStack.getCurrentStackSize() : 0;
+ }, f.prototype.undo = function() {
+ if (this.undoStack) {
+ var d = this.undoStack.pop();
+ !d || !d.cellValueChanges || (this.processAction(d, function(g) {
+ return g.oldValue;
+ }), d instanceof V_e ? this.processRangeAndCellFocus(d.cellValueChanges, d.initialRange) : this.processRangeAndCellFocus(d.cellValueChanges), this.redoStack.push(d));
+ }
+ }, f.prototype.redo = function() {
+ if (this.redoStack) {
+ var d = this.redoStack.pop();
+ !d || !d.cellValueChanges || (this.processAction(d, function(g) {
+ return g.newValue;
+ }), d instanceof V_e ? this.processRangeAndCellFocus(d.cellValueChanges, d.finalRange) : this.processRangeAndCellFocus(d.cellValueChanges), this.undoStack.push(d));
+ }
+ }, f.prototype.processAction = function(d, g) {
+ var S = this;
+ d.cellValueChanges.forEach(function(O) {
+ var z = O.rowIndex, te = O.rowPinned, Fe = O.columnId, ze = { rowIndex: z, rowPinned: te }, ht = S.getRowNode(ze);
+ ht.displayed && ht.setDataValue(Fe, g(O));
+ });
+ }, f.prototype.processRangeAndCellFocus = function(d, g) {
+ var S;
+ if (g) {
+ var O = g.startRow, z = g.endRow;
+ S = {
+ rowPinned: O.rowPinned,
+ rowIndex: O.rowIndex,
+ columnId: g.startColumn.getColId()
+ }, this.setLastFocusedCell(S);
+ var te = {
+ rowStartIndex: O.rowIndex,
+ rowStartPinned: O.rowPinned,
+ rowEndIndex: z.rowIndex,
+ rowEndPinned: z.rowPinned,
+ columnStart: g.startColumn,
+ columns: g.columns
+ };
+ this.gridApi.addCellRange(te);
+ return;
+ }
+ var Fe = d[0], ze = Fe.rowIndex, ht = Fe.rowPinned, Lt = { rowIndex: ze, rowPinned: ht }, ti = this.getRowNode(Lt);
+ S = {
+ rowPinned: Fe.rowPinned,
+ rowIndex: ti.rowIndex,
+ columnId: Fe.columnId
+ }, this.setLastFocusedCell(S);
+ }, f.prototype.setLastFocusedCell = function(d) {
+ var g = d.rowIndex, S = d.columnId, O = d.rowPinned;
+ this.gridApi.ensureIndexVisible(g), this.gridApi.ensureColumnVisible(S), si.isRegistered(t.ModuleNames.RangeSelectionModule) && this.gridApi.clearRangeSelection(), this.focusService.setFocusedCell(g, S, O, !0);
+ }, f.prototype.addRowEditingListeners = function() {
+ var d = this;
+ this.addManagedListener(this.eventService, ui.EVENT_ROW_EDITING_STARTED, function(g) {
+ d.activeRowEdit = { rowIndex: g.rowIndex, rowPinned: g.rowPinned };
+ }), this.addManagedListener(this.eventService, ui.EVENT_ROW_EDITING_STOPPED, function() {
+ var g = new vne(d.cellValueChanges);
+ d.pushActionsToUndoStack(g), d.activeRowEdit = null;
+ });
+ }, f.prototype.addCellEditingListeners = function() {
+ var d = this;
+ this.addManagedListener(this.eventService, ui.EVENT_CELL_EDITING_STARTED, function(g) {
+ d.activeCellEdit = { column: g.column, rowIndex: g.rowIndex, rowPinned: g.rowPinned };
+ }), this.addManagedListener(this.eventService, ui.EVENT_CELL_EDITING_STOPPED, function() {
+ d.activeCellEdit = null;
+ var g = !d.activeRowEdit && !d.isPasting && !d.isFilling;
+ if (g) {
+ var S = new vne(d.cellValueChanges);
+ d.pushActionsToUndoStack(S);
+ }
+ });
+ }, f.prototype.addPasteListeners = function() {
+ var d = this;
+ this.addManagedListener(this.eventService, ui.EVENT_PASTE_START, function() {
+ d.isPasting = !0;
+ }), this.addManagedListener(this.eventService, ui.EVENT_PASTE_END, function() {
+ var g = new vne(d.cellValueChanges);
+ d.pushActionsToUndoStack(g), d.isPasting = !1;
+ });
+ }, f.prototype.addFillListeners = function() {
+ var d = this;
+ this.addManagedListener(this.eventService, ui.EVENT_FILL_START, function() {
+ d.isFilling = !0;
+ }), this.addManagedListener(this.eventService, ui.EVENT_FILL_END, function(g) {
+ var S = new V_e(d.cellValueChanges, g.initialRange, g.finalRange);
+ d.pushActionsToUndoStack(S), d.isFilling = !1;
+ });
+ }, f.prototype.pushActionsToUndoStack = function(d) {
+ this.undoStack.push(d), this.cellValueChanges = [], this.redoStack.clear();
+ }, f.prototype.getRowNode = function(d) {
+ switch (d.rowPinned) {
+ case Ue.PINNED_TOP:
+ return this.pinnedRowModel.getPinnedTopRowData()[d.rowIndex];
+ case Ue.PINNED_BOTTOM:
+ return this.pinnedRowModel.getPinnedBottomRowData()[d.rowIndex];
+ default:
+ return this.rowModel.getRow(d.rowIndex);
+ }
+ }, gR([
+ pe("focusService")
+ ], f.prototype, "focusService", void 0), gR([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), gR([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), gR([
+ pe("pinnedRowModel")
+ ], f.prototype, "pinnedRowModel", void 0), gR([
+ pe("cellPositionUtils")
+ ], f.prototype, "cellPositionUtils", void 0), gR([
+ pe("rowPositionUtils")
+ ], f.prototype, "rowPositionUtils", void 0), gR([
+ ct
+ ], f.prototype, "init", null), f = gR([
+ Ne("undoRedoService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var a6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), j_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, GVe = (
+ /** @class */
+ function(M) {
+ a6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.findHeader = function(d, g) {
+ var S, O, z;
+ if (d.column instanceof Zt ? (O = "getDisplayedGroup" + g, S = this.columnModel[O](d.column)) : (z = "getDisplayedCol" + g, S = this.columnModel[z](d.column)), S)
+ return {
+ column: S,
+ headerRowIndex: d.headerRowIndex
+ };
+ }, f.prototype.findColAtEdgeForHeaderRow = function(d, g) {
+ var S = this.columnModel.getAllDisplayedColumns(), O = S[g === "start" ? 0 : S.length - 1];
+ if (O) {
+ var z = this.ctrlsService.getHeaderRowContainerCtrl(O.getPinned()), te = z.getRowType(d);
+ if (te == t.HeaderRowType.COLUMN_GROUP) {
+ var Fe = this.columnModel.getColumnGroupAtLevel(O, d);
+ return {
+ headerRowIndex: d,
+ column: Fe
+ };
+ }
+ return {
+ // if type==null, means the header level didn't exist
+ headerRowIndex: te == null ? -1 : d,
+ column: O
+ };
+ }
+ }, j_e([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), j_e([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), f = j_e([
+ Ne("headerPositionUtils")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var l6t = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, u6t = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.prototype.buildColumnDefs = function(f, d, g) {
+ var S = this, O = [], z = {};
+ return f.forEach(function(te) {
+ for (var Fe = S.createDefFromColumn(te, d, g), ze = !0, ht = Fe, Lt = te.getOriginalParent(); Lt; ) {
+ var ti = null;
+ if (Lt.isPadding()) {
+ Lt = Lt.getOriginalParent();
+ continue;
+ }
+ var wi = z[Lt.getGroupId()];
+ if (wi) {
+ wi.children.push(ht), ze = !1;
+ break;
+ }
+ ti = S.createDefFromGroup(Lt), ti && (ti.children = [ht], z[ti.groupId] = ti, ht = ti, Lt = Lt.getOriginalParent());
+ }
+ ze && O.push(ht);
+ }), O;
+ }, M.prototype.createDefFromGroup = function(f) {
+ var d = k(f.getColGroupDef(), ["children"]);
+ return d && (d.groupId = f.getGroupId()), d;
+ }, M.prototype.createDefFromColumn = function(f, d, g) {
+ var S = k(f.getColDef());
+ return S.colId = f.getColId(), S.width = f.getActualWidth(), S.rowGroup = f.isRowGroupActive(), S.rowGroupIndex = f.isRowGroupActive() ? d.indexOf(f) : null, S.pivot = f.isPivotActive(), S.pivotIndex = f.isPivotActive() ? g.indexOf(f) : null, S.aggFunc = f.isValueActive() ? f.getAggFunc() : null, S.hide = f.isVisible() ? void 0 : !0, S.pinned = f.isPinned() ? f.getPinned() : null, S.sort = f.getSort() ? f.getSort() : null, S.sortIndex = f.getSortIndex() != null ? f.getSortIndex() : null, S;
+ }, M = l6t([
+ Ne("columnDefFactory")
+ ], M), M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var G_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, c6t = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.prototype.getInitialRowClasses = function(f) {
+ var d = [];
+ return i(f.extraCssClass) && d.push(f.extraCssClass), d.push("ag-row"), d.push(f.rowFocused ? "ag-row-focus" : "ag-row-no-focus"), f.fadeRowIn && d.push("ag-opacity-zero"), d.push(f.rowIsEven ? "ag-row-even" : "ag-row-odd"), f.rowNode.isRowPinned() && d.push("ag-row-pinned"), f.rowNode.isSelected() && d.push("ag-row-selected"), f.rowNode.footer && d.push("ag-row-footer"), d.push("ag-row-level-" + f.rowLevel), f.rowNode.stub && d.push("ag-row-loading"), f.fullWidthRow && d.push("ag-full-width-row"), f.expandable && (d.push("ag-row-group"), d.push(f.rowNode.expanded ? "ag-row-group-expanded" : "ag-row-group-contracted")), f.rowNode.dragging && d.push("ag-row-dragging"), Je(d, this.processClassesFromGridOptions(f.rowNode)), Je(d, this.preProcessRowClassRules(f.rowNode)), d.push(f.printLayout ? "ag-row-position-relative" : "ag-row-position-absolute"), f.firstRowOnPage && d.push("ag-row-first"), f.lastRowOnPage && d.push("ag-row-last"), f.fullWidthRow && (f.pinned === Ue.PINNED_LEFT && d.push("ag-cell-last-left-pinned"), f.pinned === Ue.PINNED_RIGHT && d.push("ag-cell-first-right-pinned")), d;
+ }, M.prototype.processClassesFromGridOptions = function(f) {
+ var d = [], g = function(Fe) {
+ typeof Fe == "string" ? d.push(Fe) : Array.isArray(Fe) && Fe.forEach(function(ze) {
+ return d.push(ze);
+ });
+ }, S = this.gridOptionsWrapper.getRowClass();
+ if (S) {
+ if (typeof S == "function")
+ return console.warn("AG Grid: rowClass should not be a function, please use getRowClass instead"), [];
+ g(S);
+ }
+ var O = this.gridOptionsWrapper.getRowClassFunc();
+ if (O) {
+ var z = {
+ data: f.data,
+ node: f,
+ rowIndex: f.rowIndex
+ }, te = O(z);
+ g(te);
+ }
+ return d;
+ }, M.prototype.preProcessRowClassRules = function(f) {
+ var d = [];
+ return this.processRowClassRules(f, function(g) {
+ d.push(g);
+ }, function(g) {
+ }), d;
+ }, M.prototype.processRowClassRules = function(f, d, g) {
+ var S = {
+ data: f.data,
+ node: f,
+ rowIndex: f.rowIndex,
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext()
+ };
+ this.stylingService.processClassRules(this.gridOptionsWrapper.rowClassRules(), S, d, g);
+ }, M.prototype.calculateRowLevel = function(f) {
+ return f.group ? f.level : f.parent ? f.parent.level + 1 : 0;
+ }, G_e([
+ pe("stylingService")
+ ], M.prototype, "stylingService", void 0), G_e([
+ pe("gridOptionsWrapper")
+ ], M.prototype, "gridOptionsWrapper", void 0), M = G_e([
+ Ne("rowCssClassCalculator")
+ ], M), M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var _ne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, UVe = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.prototype.doFullSort = function(f, d) {
+ var g = function(O, z) {
+ return { currentPos: z, rowNode: O };
+ }, S = f.map(g);
+ return S.sort(this.compareRowNodes.bind(this, d)), S.map(function(O) {
+ return O.rowNode;
+ });
+ }, M.prototype.compareRowNodes = function(f, d, g) {
+ for (var S = d.rowNode, O = g.rowNode, z = 0, te = f.length; z < te; z++) {
+ var Fe = f[z], ze = Fe.sort === Ue.SORT_DESC, ht = this.getValue(S, Fe.column), Lt = this.getValue(O, Fe.column), ti = void 0, wi = this.getComparator(Fe, S);
+ wi ? ti = wi(ht, Lt, S, O, ze) : ti = ho.defaultComparator(ht, Lt, this.gridOptionsWrapper.isAccentedSort());
+ var Ti = !isNaN(ti);
+ if (Ti && ti !== 0)
+ return Fe.sort === Ue.SORT_ASC ? ti : ti * -1;
+ }
+ return d.currentPos - g.currentPos;
+ }, M.prototype.getComparator = function(f, d) {
+ var g = f.column, S = g.getColDef().comparator;
+ if (S != null)
+ return S;
+ if (d.rowGroupColumn)
+ return d.rowGroupColumn.getColDef().comparator;
+ if (g.getColDef().showRowGroup) {
+ var O = !d.group && g.getColDef().field;
+ if (O) {
+ var z = this.columnModel.getPrimaryColumn(O);
+ if (z)
+ return z.getColDef().comparator;
+ }
+ }
+ }, M.prototype.getValue = function(f, d) {
+ return this.valueService.getValue(d, f, !1, !1);
+ }, _ne([
+ pe("gridOptionsWrapper")
+ ], M.prototype, "gridOptionsWrapper", void 0), _ne([
+ pe("valueService")
+ ], M.prototype, "valueService", void 0), _ne([
+ pe("columnModel")
+ ], M.prototype, "columnModel", void 0), M = _ne([
+ Ne("rowNodeSorter")
+ ], M), M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var h6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), d6t = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, zVe = (
+ /** @class */
+ function(M) {
+ h6t(f, M);
+ function f() {
+ var g = M !== null && M.apply(this, arguments) || this;
+ return g.ready = !1, g.readyCallbacks = [], g;
+ }
+ d = f, f.prototype.checkReady = function() {
+ if (this.ready = this.gridCtrl != null && this.gridBodyCtrl != null && this.centerRowContainerCtrl != null && this.leftRowContainerCtrl != null && this.rightRowContainerCtrl != null && this.bottomCenterRowContainerCtrl != null && this.bottomLeftRowContainerCtrl != null && this.bottomRightRowContainerCtrl != null && this.topCenterRowContainerCtrl != null && this.topLeftRowContainerCtrl != null && this.topRightRowContainerCtrl != null && this.centerHeaderRowContainerCtrl != null && this.leftHeaderRowContainerCtrl != null && this.rightHeaderRowContainerCtrl != null && this.fakeHScrollCtrl != null && this.gridHeaderCtrl != null, this.ready) {
+ var g = this.createReadyParams();
+ this.readyCallbacks.forEach(function(S) {
+ return S(g);
+ }), this.readyCallbacks.length = 0;
+ }
+ }, f.prototype.whenReady = function(g) {
+ this.ready ? g(this.createReadyParams()) : this.readyCallbacks.push(g);
+ }, f.prototype.createReadyParams = function() {
+ return {
+ centerRowContainerCtrl: this.centerRowContainerCtrl,
+ leftRowContainerCtrl: this.leftRowContainerCtrl,
+ rightRowContainerCtrl: this.rightRowContainerCtrl,
+ bottomCenterRowContainerCtrl: this.bottomCenterRowContainerCtrl,
+ bottomLeftRowContainerCtrl: this.bottomLeftRowContainerCtrl,
+ bottomRightRowContainerCtrl: this.bottomRightRowContainerCtrl,
+ topCenterRowContainerCtrl: this.topCenterRowContainerCtrl,
+ topLeftRowContainerCtrl: this.topLeftRowContainerCtrl,
+ topRightRowContainerCtrl: this.topRightRowContainerCtrl,
+ centerHeaderRowContainerCtrl: this.centerHeaderRowContainerCtrl,
+ leftHeaderRowContainerCtrl: this.leftHeaderRowContainerCtrl,
+ rightHeaderRowContainerCtrl: this.rightHeaderRowContainerCtrl,
+ fakeHScrollCtrl: this.fakeHScrollCtrl,
+ gridBodyCtrl: this.gridBodyCtrl,
+ gridCtrl: this.gridCtrl,
+ gridHeaderCtrl: this.gridHeaderCtrl
+ };
+ }, f.prototype.registerFakeHScrollCtrl = function(g) {
+ this.fakeHScrollCtrl = g, this.checkReady();
+ }, f.prototype.registerGridHeaderCtrl = function(g) {
+ this.gridHeaderCtrl = g, this.checkReady();
+ }, f.prototype.registerCenterRowContainerCtrl = function(g) {
+ this.centerRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerLeftRowContainerCtrl = function(g) {
+ this.leftRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerRightRowContainerCtrl = function(g) {
+ this.rightRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerTopCenterRowContainerCtrl = function(g) {
+ this.topCenterRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerTopLeftRowContainerCon = function(g) {
+ this.topLeftRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerTopRightRowContainerCtrl = function(g) {
+ this.topRightRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerBottomCenterRowContainerCtrl = function(g) {
+ this.bottomCenterRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerBottomLeftRowContainerCtrl = function(g) {
+ this.bottomLeftRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerBottomRightRowContainerCtrl = function(g) {
+ this.bottomRightRowContainerCtrl = g, this.checkReady();
+ }, f.prototype.registerHeaderContainer = function(g, S) {
+ switch (S) {
+ case Ue.PINNED_LEFT:
+ this.leftHeaderRowContainerCtrl = g;
+ break;
+ case Ue.PINNED_RIGHT:
+ this.rightHeaderRowContainerCtrl = g;
+ break;
+ default:
+ this.centerHeaderRowContainerCtrl = g;
+ break;
+ }
+ this.checkReady();
+ }, f.prototype.registerGridBodyCtrl = function(g) {
+ this.gridBodyCtrl = g, this.checkReady();
+ }, f.prototype.registerGridCtrl = function(g) {
+ this.gridCtrl = g, this.checkReady();
+ }, f.prototype.getFakeHScrollCtrl = function() {
+ return this.fakeHScrollCtrl;
+ }, f.prototype.getGridHeaderCtrl = function() {
+ return this.gridHeaderCtrl;
+ }, f.prototype.getGridCtrl = function() {
+ return this.gridCtrl;
+ }, f.prototype.getCenterRowContainerCtrl = function() {
+ return this.centerRowContainerCtrl;
+ }, f.prototype.getTopCenterRowContainerCtrl = function() {
+ return this.topCenterRowContainerCtrl;
+ }, f.prototype.getBottomCenterRowContainerCtrl = function() {
+ return this.bottomCenterRowContainerCtrl;
+ }, f.prototype.getGridBodyCtrl = function() {
+ return this.gridBodyCtrl;
+ }, f.prototype.getHeaderRowContainerCtrls = function() {
+ return [this.leftHeaderRowContainerCtrl, this.rightHeaderRowContainerCtrl, this.centerHeaderRowContainerCtrl];
+ }, f.prototype.getHeaderRowContainerCtrl = function(g) {
+ switch (g) {
+ case Ue.PINNED_LEFT:
+ return this.leftHeaderRowContainerCtrl;
+ case Ue.PINNED_RIGHT:
+ return this.rightHeaderRowContainerCtrl;
+ default:
+ return this.centerHeaderRowContainerCtrl;
+ }
+ };
+ var d;
+ return f.NAME = "ctrlsService", f = d = d6t([
+ Ne(d.NAME)
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var p6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), f6t = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, m6t = (
+ /** @class */
+ function(M) {
+ p6t(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.registry = {}, d;
+ }
+ return f.prototype.register = function(d) {
+ this.registry[d.controllerName] = d.controllerClass;
+ }, f.prototype.getInstance = function(d) {
+ var g = this.registry[d];
+ if (g != null)
+ return new g();
+ }, f = f6t([
+ Ne("ctrlsFactory")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var g6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), bne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, y6t = (
+ /** @class */
+ function(M) {
+ g6t(f, M);
+ function f() {
+ return M.call(this) || this;
+ }
+ return f.prototype.setComp = function(d, g, S, O) {
+ this.view = d, this.eViewport = S, this.eContainer = O, this.eGui = g, this.addManagedListener(this.eventService, ui.EVENT_SCROLL_VISIBILITY_CHANGED, this.onScrollVisibilityChanged.bind(this)), this.onScrollVisibilityChanged();
+ var z = this.setFakeHScrollSpacerWidths.bind(this);
+ this.addManagedListener(this.eventService, ui.EVENT_DISPLAYED_COLUMNS_CHANGED, z), this.addManagedListener(this.eventService, ui.EVENT_DISPLAYED_COLUMNS_WIDTH_CHANGED, z), this.addManagedListener(this.gridOptionsWrapper, jn.PROP_DOM_LAYOUT, z), this.setFakeHScrollSpacerWidths(), this.invisibleScrollbar && (this.hideAndShowInvisibleScrollAsNeeded(), this.addActiveListenerToggles()), this.ctrlsService.registerFakeHScrollCtrl(this);
+ }, f.prototype.addActiveListenerToggles = function() {
+ var d = this, g = ["mouseenter", "mousedown", "touchstart"], S = ["mouseleave", "mouseup", "touchend"];
+ g.forEach(function(O) {
+ return d.addManagedListener(d.eGui, O, function() {
+ return d.view.addOrRemoveCssClass("ag-scrollbar-active", !0);
+ });
+ }), S.forEach(function(O) {
+ return d.addManagedListener(d.eGui, O, function() {
+ return d.view.addOrRemoveCssClass("ag-scrollbar-active", !1);
+ });
+ });
+ }, f.prototype.postConstruct = function() {
+ this.enableRtl = this.gridOptionsWrapper.isEnableRtl(), this.invisibleScrollbar = ou();
+ }, f.prototype.onScrollVisibilityChanged = function() {
+ this.setScrollVisible(), this.setFakeHScrollSpacerWidths();
+ }, f.prototype.hideAndShowInvisibleScrollAsNeeded = function() {
+ var d = this;
+ this.addManagedListener(this.eventService, ui.EVENT_BODY_SCROLL, function(g) {
+ g.direction === "horizontal" && d.view.addOrRemoveCssClass("ag-scrollbar-scrolling", !0);
+ }), this.addManagedListener(this.eventService, ui.EVENT_BODY_SCROLL_END, function() {
+ return d.view.addOrRemoveCssClass("ag-scrollbar-scrolling", !1);
+ });
+ }, f.prototype.setFakeHScrollSpacerWidths = function() {
+ var d = this.scrollVisibleService.isVerticalScrollShowing(), g = this.columnModel.getDisplayedColumnsRightWidth(), S = !this.enableRtl && d, O = this.gridOptionsWrapper.getScrollbarWidth();
+ S && (g += O), this.view.setRightSpacerFixedWidth(g), this.view.includeRightSpacerScrollerCss("ag-scroller-corner", g <= O);
+ var z = this.columnModel.getDisplayedColumnsLeftWidth(), te = this.enableRtl && d;
+ te && (z += O), this.view.setLeftSpacerFixedWidth(z), this.view.includeLeftSpacerScrollerCss("ag-scroller-corner", z <= O);
+ }, f.prototype.setScrollVisible = function() {
+ var d = this.scrollVisibleService.isHorizontalScrollShowing(), g = this.invisibleScrollbar, S = this.gridOptionsWrapper.isSuppressHorizontalScroll(), O = d && this.gridOptionsWrapper.getScrollbarWidth() || 0, z = O === 0 && g ? 15 : O, te = S ? 0 : z;
+ this.view.addOrRemoveCssClass("ag-scrollbar-invisible", g), this.view.setHeight(te), this.view.setViewportHeight(te), this.view.setContainerHeight(te);
+ }, f.prototype.getViewport = function() {
+ return this.eViewport;
+ }, f.prototype.getContainer = function() {
+ return this.eContainer;
+ }, bne([
+ pe("scrollVisibleService")
+ ], f.prototype, "scrollVisibleService", void 0), bne([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), bne([
+ pe("ctrlsService")
+ ], f.prototype, "ctrlsService", void 0), bne([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var v6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), dW = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, _6t = (
+ /** @class */
+ function(M) {
+ v6t(f, M);
+ function f() {
+ return M.call(this, f.TEMPLATE) || this;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this, g = {
+ addOrRemoveCssClass: function(O, z) {
+ return d.addOrRemoveCssClass(O, z);
+ },
+ setHeight: function(O) {
+ return Ui(d.getGui(), O);
+ },
+ setContainerHeight: function(O) {
+ return Ui(d.eContainer, O);
+ },
+ setViewportHeight: function(O) {
+ return Ui(d.eViewport, O);
+ },
+ setRightSpacerFixedWidth: function(O) {
+ return Wt(d.eRightSpacer, O);
+ },
+ setLeftSpacerFixedWidth: function(O) {
+ return Wt(d.eLeftSpacer, O);
+ },
+ includeLeftSpacerScrollerCss: function(O, z) {
+ return d.eLeftSpacer.classList.toggle(O, z);
+ },
+ includeRightSpacerScrollerCss: function(O, z) {
+ return d.eRightSpacer.classList.toggle(O, z);
+ }
+ }, S = this.createManagedBean(new y6t());
+ S.setComp(g, this.getGui(), this.eViewport, this.eContainer), this.createManagedBean(new kH(function(O) {
+ return d.eContainer.style.width = O + "px";
+ }));
+ }, f.TEMPLATE = `
`, dW([
+ qr("eLeftSpacer")
+ ], f.prototype, "eLeftSpacer", void 0), dW([
+ qr("eRightSpacer")
+ ], f.prototype, "eRightSpacer", void 0), dW([
+ qr("eViewport")
+ ], f.prototype, "eViewport", void 0), dW([
+ qr("eContainer")
+ ], f.prototype, "eContainer", void 0), dW([
+ ct
+ ], f.prototype, "postConstruct", null), f;
+ }(ba)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var b6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), U_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, w6t = (
+ /** @class */
+ function(M) {
+ b6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.postConstruct = function() {
+ var d = this.checkContainerWidths.bind(this);
+ this.addManagedListener(this.eventService, ui.EVENT_DISPLAYED_COLUMNS_CHANGED, d), this.addManagedListener(this.eventService, ui.EVENT_DISPLAYED_COLUMNS_WIDTH_CHANGED, d), this.addManagedListener(this.gridOptionsWrapper, jn.PROP_DOM_LAYOUT, d);
+ }, f.prototype.checkContainerWidths = function() {
+ var d = this.gridOptionsWrapper.getDomLayout() === Ue.DOM_LAYOUT_PRINT, g = d ? 0 : this.columnModel.getDisplayedColumnsLeftWidth(), S = d ? 0 : this.columnModel.getDisplayedColumnsRightWidth();
+ g != this.leftWidth && (this.leftWidth = g, this.eventService.dispatchEvent({ type: ui.EVENT_LEFT_PINNED_WIDTH_CHANGED })), S != this.rightWidth && (this.rightWidth = S, this.eventService.dispatchEvent({ type: ui.EVENT_RIGHT_PINNED_WIDTH_CHANGED }));
+ }, f.prototype.getPinnedRightWidth = function() {
+ return this.rightWidth;
+ }, f.prototype.getPinnedLeftWidth = function() {
+ return this.leftWidth;
+ }, U_e([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), U_e([
+ ct
+ ], f.prototype, "postConstruct", null), f = U_e([
+ Ne("pinnedWidthService")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var x6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), wne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, S6t = (
+ /** @class */
+ function(M) {
+ x6t(f, M);
+ function f() {
+ var d = M !== null && M.apply(this, arguments) || this;
+ return d.events = [], d;
+ }
+ return f.prototype.postConstruct = function() {
+ this.rowModel.getType() == Ue.ROW_MODEL_TYPE_CLIENT_SIDE && (this.clientSideRowModel = this.rowModel);
+ }, f.prototype.dispatchExpanded = function(d) {
+ var g = this;
+ if (this.clientSideRowModel == null) {
+ this.eventService.dispatchEvent(d);
+ return;
+ }
+ this.events.push(d);
+ var S = function() {
+ g.clientSideRowModel && g.clientSideRowModel.onRowGroupOpened(), g.events.forEach(function(O) {
+ return g.eventService.dispatchEvent(O);
+ }), g.events = [];
+ };
+ this.dispatchExpandedDebounced == null && (this.dispatchExpandedDebounced = this.animationFrameService.debounce(S)), this.dispatchExpandedDebounced();
+ }, wne([
+ pe("animationFrameService")
+ ], f.prototype, "animationFrameService", void 0), wne([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), wne([
+ ct
+ ], f.prototype, "postConstruct", null), f = wne([
+ Ne("rowNodeEventThrottle")
+ ], f), f;
+ }(ki)
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var C6t = function(M, f) {
+ var d = typeof Symbol == "function" && M[Symbol.iterator];
+ if (!d)
+ return M;
+ var g = d.call(M), S, O = [], z;
+ try {
+ for (; (f === void 0 || f-- > 0) && !(S = g.next()).done; )
+ O.push(S.value);
+ } catch (te) {
+ z = { error: te };
+ } finally {
+ try {
+ S && !S.done && (d = g.return) && d.call(g);
+ } finally {
+ if (z)
+ throw z.error;
+ }
+ }
+ return O;
+ }, HVe = function() {
+ for (var M = [], f = 0; f < arguments.length; f++)
+ M = M.concat(C6t(arguments[f]));
+ return M;
+ }, T6t = (
+ /** @class */
+ function() {
+ function M(f, d, g) {
+ if (!d) {
+ console.error("AG Grid: no gridOptions provided to the grid");
+ return;
+ }
+ this.gridOptions = d, new WVe().create(f, d, function(S) {
+ var O = new PVe(f);
+ S.createBean(O);
+ }, void 0, g);
+ }
+ return M.prototype.destroy = function() {
+ this.gridOptions && this.gridOptions.api && this.gridOptions.api.destroy();
+ }, M;
+ }()
+ ), WVe = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.prototype.create = function(f, d, g, S, O) {
+ var z = this, te = !!d.debug, Fe = this.getRegisteredModules(O), ze = this.createBeansList(d.rowModelType, Fe), ht = this.createProvidedBeans(f, d, O);
+ if (ze) {
+ var Lt = {
+ providedBeanInstances: ht,
+ beanClasses: ze,
+ debug: te
+ }, ti = new pne("AG Grid", function() {
+ return d.debug;
+ }), wi = new pne("Context", function() {
+ return Lt.debug;
+ }), Ti = new wt(Lt, wi), qi = Ti.getBean("beans");
+ this.registerModuleUserComponents(qi, Fe), this.registerStackComponents(qi, Fe), this.registerControllers(qi, Fe), g(Ti), qi.ctrlsService.whenReady(function() {
+ z.setColumnsAndData(qi), z.dispatchGridReadyEvent(qi, d);
+ var dr = si.isRegistered(t.ModuleNames.EnterpriseCoreModule);
+ ti.log("initialised successfully, enterprise = " + dr);
+ }), S && S(Ti);
+ }
+ }, M.prototype.registerControllers = function(f, d) {
+ d.forEach(function(g) {
+ g.controllers && g.controllers.forEach(function(S) {
+ return f.ctrlsFactory.register(S);
+ });
+ });
+ }, M.prototype.registerStackComponents = function(f, d) {
+ var g = this.createAgStackComponentsList(d);
+ f.agStackComponentsRegistry.setupComponents(g);
+ }, M.prototype.getRegisteredModules = function(f) {
+ var d = f ? f.modules : null, g = si.getRegisteredModules(), S = [], O = {};
+ function z(te, Fe) {
+ function ze(ht) {
+ O[ht.moduleName] || (O[ht.moduleName] = !0, S.push(ht), si.register(ht, te));
+ }
+ ze(Fe), Fe.dependantModules && Fe.dependantModules.forEach(z.bind(null, te));
+ }
+ return d && d.forEach(z.bind(null, !0)), g && g.forEach(z.bind(null, !si.isPackageBased())), S;
+ }, M.prototype.registerModuleUserComponents = function(f, d) {
+ var g = this.extractModuleEntity(d, function(S) {
+ return S.userComponents ? S.userComponents : [];
+ });
+ g.forEach(function(S) {
+ f.userComponentRegistry.registerDefaultComponent(S.componentName, S.componentClass);
+ });
+ }, M.prototype.createProvidedBeans = function(f, d, g) {
+ var S = g ? g.frameworkOverrides : null;
+ r(S) && (S = new yVe());
+ var O = {
+ gridOptions: d,
+ eGridDiv: f,
+ globalEventListener: g ? g.globalEventListener : null,
+ frameworkOverrides: S
+ };
+ return g && g.providedBeanInstances && Object.assign(O, g.providedBeanInstances), O;
+ }, M.prototype.createAgStackComponentsList = function(f) {
+ var d = [
+ { componentName: "AgCheckbox", componentClass: hA },
+ { componentName: "AgRadioButton", componentClass: tVe },
+ { componentName: "AgToggleButton", componentClass: iVe },
+ { componentName: "AgInputTextField", componentClass: A_e },
+ { componentName: "AgInputTextArea", componentClass: rVe },
+ { componentName: "AgInputNumberField", componentClass: nVe },
+ { componentName: "AgInputRange", componentClass: sVe },
+ { componentName: "AgSelect", componentClass: Kx },
+ { componentName: "AgSlider", componentClass: oVe },
+ { componentName: "AgAngleSelect", componentClass: aVe },
+ { componentName: "AgColorPicker", componentClass: lVe },
+ { componentName: "AgGridBody", componentClass: Gre },
+ { componentName: "AgHeaderRoot", componentClass: Np },
+ { componentName: "AgPagination", componentClass: Zkt },
+ { componentName: "AgOverlayWrapper", componentClass: e6t },
+ { componentName: "AgGroupComponent", componentClass: uVe },
+ { componentName: "AgPanel", componentClass: P_e },
+ { componentName: "AgDialog", componentClass: O_e },
+ { componentName: "AgRowContainer", componentClass: VL },
+ { componentName: "AgFakeHorizontalScroll", componentClass: _6t }
+ ], g = this.extractModuleEntity(f, function(S) {
+ return S.agStackComponents ? S.agStackComponents : [];
+ });
+ return d = d.concat(g), d;
+ }, M.prototype.createBeansList = function(f, d) {
+ var g = this.getRowModelClass(f, d);
+ if (g) {
+ var S = [
+ g,
+ J8,
+ BVe,
+ VVe,
+ GVe,
+ Nkt,
+ _9,
+ q0,
+ jkt,
+ Ukt,
+ Qv,
+ eR,
+ Xkt,
+ ku,
+ KBe,
+ vL,
+ ii,
+ mt,
+ jn,
+ gVe,
+ bVe,
+ gH,
+ ss,
+ Or,
+ ZBe,
+ one,
+ CVe,
+ Ki,
+ TVe,
+ _Ve,
+ p9,
+ MVe,
+ xVe,
+ IVe,
+ pd,
+ WL,
+ vf,
+ fg,
+ wVe,
+ A9,
+ BL,
+ NVe,
+ vVe,
+ Hh,
+ eVe,
+ GH,
+ OVe,
+ Okt,
+ Mkt,
+ $Ve,
+ Fkt,
+ Bkt,
+ zC,
+ o6t,
+ Lr,
+ u6t,
+ c6t,
+ JBe,
+ UVe,
+ zVe,
+ w6t,
+ S6t,
+ m6t
+ ], O = this.extractModuleEntity(d, function(te) {
+ return te.beans ? te.beans : [];
+ });
+ S.push.apply(S, HVe(O));
+ var z = [];
+ return S.forEach(function(te) {
+ z.indexOf(te) < 0 && z.push(te);
+ }), z;
+ }
+ }, M.prototype.extractModuleEntity = function(f, d) {
+ return [].concat.apply([], HVe(f.map(d)));
+ }, M.prototype.setColumnsAndData = function(f) {
+ var d = f.gridOptionsWrapper.getColumnDefs();
+ f.columnModel.setColumnDefs(d || [], "gridInitializing"), f.rowModel.start();
+ }, M.prototype.dispatchGridReadyEvent = function(f, d) {
+ var g = {
+ type: ui.EVENT_GRID_READY,
+ api: d.api,
+ columnApi: d.columnApi
+ };
+ f.eventService.dispatchEvent(g);
+ }, M.prototype.getRowModelClass = function(f, d) {
+ f || (f = Ue.ROW_MODEL_TYPE_CLIENT_SIDE);
+ var g = {};
+ d.forEach(function(O) {
+ I(O.rowModels, function(z, te) {
+ g[z] = te;
+ });
+ });
+ var S = g[f];
+ if (i(S))
+ return S;
+ si.isPackageBased() ? [Ue.ROW_MODEL_TYPE_VIEWPORT, Ue.ROW_MODEL_TYPE_SERVER_SIDE].includes(f) ? console.error('AG Grid: Row Model "' + f + `" not found. Please ensure the package 'ag-grid-enterprise' is imported. Please see: https://www.ag-grid.com/javascript-grid/packages/`) : console.error("AG Grid: could not find row model for rowModelType " + f) : f === Ue.ROW_MODEL_TYPE_INFINITE ? console.error('AG Grid: Row Model "Infinite" not found. Please ensure the ' + t.ModuleNames.InfiniteRowModelModule + " module is registered. Please see: https://www.ag-grid.com/javascript-grid/modules/") : f === Ue.ROW_MODEL_TYPE_VIEWPORT ? console.error('AG Grid: Row Model "Viewport" not found. Please ensure the AG Grid Enterprise Module ' + t.ModuleNames.ViewportRowModelModule + " module is registered. Please see: https://www.ag-grid.com/javascript-grid/modules/") : f === Ue.ROW_MODEL_TYPE_SERVER_SIDE ? console.error('AG Grid: Row Model "Server Side" not found. Please ensure the AG Grid Enterprise Module ' + t.ModuleNames.ServerSideRowModelModule + " module is registered. Please see: https://www.ag-grid.com/javascript-grid/modules/") : f === Ue.ROW_MODEL_TYPE_CLIENT_SIDE ? console.error('AG Grid: Row Model "Client Side" not found. Please ensure the ' + t.ModuleNames.ClientSideRowModelModule + " module is registered. Please see: https://www.ag-grid.com/javascript-grid/modules/") : console.error("AG Grid: could not find row model for rowModelType " + f);
+ }, M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ function E6t(M, f, d, g, S) {
+ S === void 0 && (S = !1), console.warn("AG Grid: Since ag-grid 11.0.0 defaultGroupComparator is not necessary. You can remove this from your colDef");
+ var O = i(d) && d.group, z = i(g) && g.group, te = O && z, Fe = !O && !z;
+ return te ? p(d.key, g.key, S) : Fe ? p(M, f, S) : O ? 1 : -1;
+ }
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var I6t = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.prototype.wrap = function(f, d, g, S) {
+ var O = this;
+ g === void 0 && (g = []);
+ var z = this.createWrapper(f, S);
+ return d.forEach(function(te) {
+ O.createMethod(z, te, !0);
+ }), g.forEach(function(te) {
+ O.createMethod(z, te, !1);
+ }), z;
+ }, M.prototype.unwrap = function(f) {
+ return f;
+ }, M.prototype.createMethod = function(f, d, g) {
+ f.addMethod(d, this.createMethodProxy(f, d, g));
+ }, M.prototype.createMethodProxy = function(f, d, g) {
+ return function() {
+ return f.hasMethod(d) ? f.callMethod(d, arguments) : (g && console.warn("AG Grid: Framework component is missing the method " + d + "()"), null);
+ };
+ }, M;
+ }()
+ );
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ (function(M) {
+ M.InsideBase = "insideBase", M.InsideEnd = "insideEnd", M.Center = "center", M.OutsideEnd = "outsideEnd";
+ })(t.BarColumnLabelPlacement || (t.BarColumnLabelPlacement = {}));
+ /**
+ * @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
+ * @version v27.3.0
+ * @link https://www.ag-grid.com/
+ * @license MIT
+ */
+ var M9 = typeof td > "u" ? {} : td;
+ M9.HTMLElement = typeof HTMLElement > "u" ? {} : HTMLElement, M9.HTMLButtonElement = typeof HTMLButtonElement > "u" ? {} : HTMLButtonElement, M9.HTMLSelectElement = typeof HTMLSelectElement > "u" ? {} : HTMLSelectElement, M9.HTMLInputElement = typeof HTMLInputElement > "u" ? {} : HTMLInputElement, M9.Node = typeof Node > "u" ? {} : Node, M9.MouseEvent = typeof MouseEvent > "u" ? {} : MouseEvent;
+ var A6t = function(M, f) {
+ var d = typeof Symbol == "function" && M[Symbol.iterator];
+ if (!d)
+ return M;
+ var g = d.call(M), S, O = [], z;
+ try {
+ for (; (f === void 0 || f-- > 0) && !(S = g.next()).done; )
+ O.push(S.value);
+ } catch (te) {
+ z = { error: te };
+ } finally {
+ try {
+ S && !S.done && (d = g.return) && d.call(g);
+ } finally {
+ if (z)
+ throw z.error;
+ }
+ }
+ return O;
+ }, P6t = function() {
+ for (var M = [], f = 0; f < arguments.length; f++)
+ M = M.concat(A6t(arguments[f]));
+ return M;
+ }, O6t = (
+ /** @class */
+ function() {
+ function M(f, d, g, S, O, z, te, Fe) {
+ this.nextId = 0, this.allNodesMap = {}, this.rootNode = f, this.gridOptionsWrapper = d, this.eventService = g, this.columnModel = S, this.gridApi = O, this.columnApi = z, this.beans = Fe, this.selectionService = te, this.rootNode.group = !0, this.rootNode.level = -1, this.rootNode.id = M.ROOT_NODE_ID, this.rootNode.allLeafChildren = [], this.rootNode.childrenAfterGroup = [], this.rootNode.childrenAfterSort = [], this.rootNode.childrenAfterAggFilter = [], this.rootNode.childrenAfterFilter = [], this.postConstruct();
+ }
+ return M.prototype.postConstruct = function() {
+ this.suppressParentsInRowNodes = this.gridOptionsWrapper.isSuppressParentsInRowNodes(), this.isRowMasterFunc = this.gridOptionsWrapper.getIsRowMasterFunc(), this.doingTreeData = this.gridOptionsWrapper.isTreeData(), this.doingMasterDetail = this.gridOptionsWrapper.isMasterDetail();
+ }, M.prototype.getCopyOfNodesMap = function() {
+ return ho.cloneObject(this.allNodesMap);
+ }, M.prototype.getRowNode = function(f) {
+ return this.allNodesMap[f];
+ }, M.prototype.setRowData = function(f) {
+ var d = this;
+ if (typeof f == "string") {
+ console.warn("AG Grid: rowData must be an array, however you passed in a string. If you are loading JSON, make sure you convert the JSON string to JavaScript objects first");
+ return;
+ }
+ var g = this.rootNode, S = this.rootNode.sibling;
+ g.childrenAfterFilter = null, g.childrenAfterGroup = null, g.childrenAfterAggFilter = null, g.childrenAfterSort = null, g.childrenMapped = null, g.updateHasChildren(), this.nextId = 0, this.allNodesMap = {}, f ? g.allLeafChildren = f.map(function(O) {
+ return d.createNode(O, d.rootNode, M.TOP_LEVEL);
+ }) : (g.allLeafChildren = [], g.childrenAfterGroup = []), S && (S.childrenAfterFilter = g.childrenAfterFilter, S.childrenAfterGroup = g.childrenAfterGroup, S.childrenAfterAggFilter = g.childrenAfterAggFilter, S.childrenAfterSort = g.childrenAfterSort, S.childrenMapped = g.childrenMapped, S.allLeafChildren = g.allLeafChildren);
+ }, M.prototype.updateRowData = function(f, d) {
+ var g = {
+ remove: [],
+ update: [],
+ add: []
+ }, S = [];
+ return this.executeRemove(f, g, S), this.executeUpdate(f, g, S), this.executeAdd(f, g), this.updateSelection(S), d && ho.sortRowNodesByOrder(this.rootNode.allLeafChildren, d), g;
+ }, M.prototype.updateSelection = function(f) {
+ var d = f.length > 0;
+ if (d && f.forEach(function(S) {
+ S.setSelected(!1, !1, !0);
+ }), this.selectionService.updateGroupsFromChildrenSelections(), d) {
+ var g = {
+ type: ui.EVENT_SELECTION_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(g);
+ }
+ }, M.prototype.executeAdd = function(f, d) {
+ var g = this, S = f.add, O = f.addIndex;
+ if (!ho.missingOrEmpty(S)) {
+ var z = S.map(function(ti) {
+ return g.createNode(ti, g.rootNode, M.TOP_LEVEL);
+ }), te = typeof O == "number" && O >= 0, Fe, ze;
+ if (te) {
+ var ht = this.rootNode.allLeafChildren, Lt = O === 0 ? 0 : ht.reduce(function(ti, wi, Ti) {
+ var qi, dr = wi.rowIndex, kr = (qi = ht[ti]) === null || qi === void 0 ? void 0 : qi.rowIndex, Rr = dr != null && kr != null && dr < O && dr > kr;
+ return Rr ? Ti : ti;
+ }, 0) + 1;
+ Fe = ht.slice(0, Lt), ze = ht.slice(Lt, ht.length);
+ } else
+ Fe = this.rootNode.allLeafChildren, ze = [];
+ this.rootNode.allLeafChildren = P6t(Fe, z, ze), this.rootNode.sibling && (this.rootNode.sibling.allLeafChildren = this.rootNode.allLeafChildren), d.add = z;
+ }
+ }, M.prototype.executeRemove = function(f, d, g) {
+ var S = this, O = f.remove;
+ if (!ho.missingOrEmpty(O)) {
+ var z = {};
+ O.forEach(function(te) {
+ var Fe = S.lookupRowNode(te);
+ Fe && (Fe.isSelected() && g.push(Fe), Fe.clearRowTopAndRowIndex(), z[Fe.id] = !0, delete S.allNodesMap[Fe.id], d.remove.push(Fe));
+ }), this.rootNode.allLeafChildren = this.rootNode.allLeafChildren.filter(function(te) {
+ return !z[te.id];
+ }), this.rootNode.sibling && (this.rootNode.sibling.allLeafChildren = this.rootNode.allLeafChildren);
+ }
+ }, M.prototype.executeUpdate = function(f, d, g) {
+ var S = this, O = f.update;
+ ho.missingOrEmpty(O) || O.forEach(function(z) {
+ var te = S.lookupRowNode(z);
+ te && (te.updateData(z), !te.selectable && te.isSelected() && g.push(te), S.setMasterForRow(te, z, M.TOP_LEVEL, !1), d.update.push(te));
+ });
+ }, M.prototype.lookupRowNode = function(f) {
+ var d = this.gridOptionsWrapper.getRowIdFunc(), g;
+ if (d) {
+ var S = d({ data: f, level: 0 });
+ if (g = this.allNodesMap[S], !g)
+ return console.error("AG Grid: could not find row id=" + S + ", data item was not found for this id"), null;
+ } else if (g = this.rootNode.allLeafChildren.find(function(O) {
+ return O.data === f;
+ }), !g)
+ return console.error("AG Grid: could not find data item as object was not found", f), console.error("Consider using getRowId to help the Grid find matching row data"), null;
+ return g || null;
+ }, M.prototype.createNode = function(f, d, g) {
+ var S = new oi(this.beans);
+ return S.group = !1, this.setMasterForRow(S, f, g, !0), d && !this.suppressParentsInRowNodes && (S.parent = d), S.level = g, S.setDataAndId(f, this.nextId.toString()), this.allNodesMap[S.id] && console.warn("AG Grid: duplicate node id '" + S.id + "' detected from getRowId callback, this could cause issues in your grid."), this.allNodesMap[S.id] = S, this.nextId++, S;
+ }, M.prototype.setMasterForRow = function(f, d, g, S) {
+ if (this.doingTreeData)
+ f.setMaster(!1), S && (f.expanded = !1);
+ else if (this.doingMasterDetail ? this.isRowMasterFunc ? f.setMaster(this.isRowMasterFunc(d)) : f.setMaster(!0) : f.setMaster(!1), S) {
+ var O = this.columnModel.getRowGroupColumns(), z = O ? O.length : 0, te = g + z;
+ f.expanded = f.master ? this.isExpanded(te) : !1;
+ }
+ }, M.prototype.isExpanded = function(f) {
+ var d = this.gridOptionsWrapper.getGroupDefaultExpanded();
+ return d === -1 ? !0 : f < d;
+ }, M.TOP_LEVEL = 0, M.ROOT_NODE_ID = "ROOT_NODE_ID", M;
+ }()
+ ), R6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), Kg = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, WC;
+ (function(M) {
+ M[M.Normal = 0] = "Normal", M[M.AfterFilter = 1] = "AfterFilter", M[M.AfterFilterAndSort = 2] = "AfterFilterAndSort", M[M.PivotNodes = 3] = "PivotNodes";
+ })(WC || (WC = {}));
+ var M6t = (
+ /** @class */
+ function(M) {
+ R6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.init = function() {
+ var d = this.refreshModel.bind(this, { step: t.ClientSideRowModelSteps.EVERYTHING }), g = !this.gridOptionsWrapper.isSuppressAnimationFrame(), S = this.refreshModel.bind(this, {
+ step: t.ClientSideRowModelSteps.EVERYTHING,
+ afterColumnsChanged: !0,
+ keepRenderedRows: !0,
+ animate: g
+ });
+ this.addManagedListener(this.eventService, ui.EVENT_NEW_COLUMNS_LOADED, S), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_ROW_GROUP_CHANGED, d), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_VALUE_CHANGED, this.onValueChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_PIVOT_CHANGED, this.refreshModel.bind(this, { step: t.ClientSideRowModelSteps.PIVOT })), this.addManagedListener(this.eventService, ui.EVENT_FILTER_CHANGED, this.onFilterChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_SORT_CHANGED, this.onSortChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_COLUMN_PIVOT_MODE_CHANGED, d);
+ var O = this.refreshModel.bind(this, {
+ step: t.ClientSideRowModelSteps.MAP,
+ keepRenderedRows: !0,
+ animate: g
+ });
+ this.addManagedListener(this.gridOptionsWrapper, jn.PROP_GROUP_REMOVE_SINGLE_CHILDREN, O), this.addManagedListener(this.gridOptionsWrapper, jn.PROP_GROUP_REMOVE_LOWEST_SINGLE_CHILDREN, O), this.rootNode = new oi(this.beans), this.nodeManager = new O6t(this.rootNode, this.gridOptionsWrapper, this.eventService, this.columnModel, this.gridApi, this.columnApi, this.selectionService, this.beans);
+ }, f.prototype.start = function() {
+ var d = this.gridOptionsWrapper.getRowData();
+ d && this.setRowData(d);
+ }, f.prototype.ensureRowHeightsValid = function(d, g, S, O) {
+ var z, te = !1;
+ do {
+ z = !1;
+ for (var Fe = this.getRowIndexAtPixel(d), ze = this.getRowIndexAtPixel(g), ht = Math.max(Fe, S), Lt = Math.min(ze, O), ti = ht; ti <= Lt; ti++) {
+ var wi = this.getRow(ti);
+ if (wi.rowHeightEstimated) {
+ var Ti = this.gridOptionsWrapper.getRowHeightForNode(wi);
+ wi.setRowHeight(Ti.height), z = !0, te = !0;
+ }
+ }
+ z && this.setRowTopAndRowIndex();
+ } while (z);
+ return te;
+ }, f.prototype.setRowTopAndRowIndex = function() {
+ for (var d = this.gridOptionsWrapper.getDefaultRowHeight(), g = 0, S = /* @__PURE__ */ new Set(), O = this.gridOptionsWrapper.getDomLayout() === Ue.DOM_LAYOUT_NORMAL, z = 0; z < this.rowsToDisplay.length; z++) {
+ var te = this.rowsToDisplay[z];
+ if (te.id != null && S.add(te.id), te.rowHeight == null) {
+ var Fe = this.gridOptionsWrapper.getRowHeightForNode(te, O, d);
+ te.setRowHeight(Fe.height, Fe.estimated);
+ }
+ te.setRowTop(g), te.setRowIndex(z), g += te.rowHeight;
+ }
+ return S;
+ }, f.prototype.clearRowTopAndRowIndex = function(d, g) {
+ var S = d.isActive(), O = function(te) {
+ te && te.id != null && !g.has(te.id) && te.clearRowTopAndRowIndex();
+ }, z = function(te) {
+ if (O(te), O(te.detailNode), O(te.sibling), te.hasChildren() && te.childrenAfterGroup) {
+ var Fe = te.level == -1, ze = S && !Fe && !te.expanded;
+ ze || te.childrenAfterGroup.forEach(z);
+ }
+ };
+ z(this.rootNode);
+ }, f.prototype.ensureRowsAtPixel = function(d, g, S) {
+ var O = this;
+ S === void 0 && (S = 0);
+ var z = this.getRowIndexAtPixel(g), te = this.getRow(z), Fe = !this.gridOptionsWrapper.isSuppressAnimationFrame();
+ return te === d[0] ? !1 : (d.forEach(function(ze) {
+ ho.removeFromArray(O.rootNode.allLeafChildren, ze);
+ }), d.forEach(function(ze, ht) {
+ ho.insertIntoArray(O.rootNode.allLeafChildren, ze, Math.max(z + S, 0) + ht);
+ }), this.refreshModel({
+ step: t.ClientSideRowModelSteps.EVERYTHING,
+ keepRenderedRows: !0,
+ keepEditingRows: !0,
+ animate: Fe
+ }), !0);
+ }, f.prototype.highlightRowAtPixel = function(d, g) {
+ var S = g != null ? this.getRowIndexAtPixel(g) : null, O = S != null ? this.getRow(S) : null;
+ if (!O || !d || O === d || g == null) {
+ this.lastHighlightedRow && (this.lastHighlightedRow.setHighlighted(null), this.lastHighlightedRow = null);
+ return;
+ }
+ var z = this.getHighlightPosition(g, O);
+ this.lastHighlightedRow && this.lastHighlightedRow !== O && (this.lastHighlightedRow.setHighlighted(null), this.lastHighlightedRow = null), O.setHighlighted(z), this.lastHighlightedRow = O;
+ }, f.prototype.getHighlightPosition = function(d, g) {
+ if (!g) {
+ var S = this.getRowIndexAtPixel(d);
+ if (g = this.getRow(S || 0), !g)
+ return t.RowHighlightPosition.Below;
+ }
+ var O = g.rowTop, z = g.rowHeight;
+ return d - O < z / 2 ? t.RowHighlightPosition.Above : t.RowHighlightPosition.Below;
+ }, f.prototype.getLastHighlightedRowNode = function() {
+ return this.lastHighlightedRow;
+ }, f.prototype.isLastRowIndexKnown = function() {
+ return !0;
+ }, f.prototype.getRowCount = function() {
+ return this.rowsToDisplay ? this.rowsToDisplay.length : 0;
+ }, f.prototype.getTopLevelRowCount = function() {
+ var d = this.rowsToDisplay && this.rowsToDisplay[0] === this.rootNode;
+ if (d)
+ return 1;
+ var g = this.rootNode.childrenAfterAggFilter;
+ return g ? g.length : 0;
+ }, f.prototype.getTopLevelRowDisplayedIndex = function(d) {
+ var g = this.rowsToDisplay && this.rowsToDisplay[0] === this.rootNode;
+ if (g)
+ return d;
+ var S = this.rootNode.childrenAfterSort[d];
+ if (this.gridOptionsWrapper.isGroupHideOpenParents())
+ for (; S.expanded && S.childrenAfterSort && S.childrenAfterSort.length > 0; )
+ S = S.childrenAfterSort[0];
+ return S.rowIndex;
+ }, f.prototype.getRowBounds = function(d) {
+ if (ho.missing(this.rowsToDisplay))
+ return null;
+ var g = this.rowsToDisplay[d];
+ return g ? {
+ rowTop: g.rowTop,
+ rowHeight: g.rowHeight
+ } : null;
+ }, f.prototype.onRowGroupOpened = function() {
+ var d = this.gridOptionsWrapper.isAnimateRows();
+ this.refreshModel({ step: t.ClientSideRowModelSteps.MAP, keepRenderedRows: !0, animate: d });
+ }, f.prototype.onFilterChanged = function(d) {
+ if (!d.afterDataChange) {
+ var g = this.gridOptionsWrapper.isAnimateRows(), S = d.columns.length === 0 || d.columns.some(function(z) {
+ return z.isPrimary();
+ }), O = S ? t.ClientSideRowModelSteps.FILTER : t.ClientSideRowModelSteps.FILTER_AGGREGATES;
+ this.refreshModel({ step: O, keepRenderedRows: !0, animate: g });
+ }
+ }, f.prototype.onSortChanged = function() {
+ var d = this.gridOptionsWrapper.isAnimateRows();
+ this.refreshModel({ step: t.ClientSideRowModelSteps.SORT, keepRenderedRows: !0, animate: d, keepEditingRows: !0 });
+ }, f.prototype.getType = function() {
+ return Ue.ROW_MODEL_TYPE_CLIENT_SIDE;
+ }, f.prototype.onValueChanged = function() {
+ this.columnModel.isPivotActive() ? this.refreshModel({ step: t.ClientSideRowModelSteps.PIVOT }) : this.refreshModel({ step: t.ClientSideRowModelSteps.AGGREGATE });
+ }, f.prototype.createChangePath = function(d) {
+ var g = ho.missingOrEmpty(d), S = new ane(!1, this.rootNode);
+ return (g || this.gridOptionsWrapper.isTreeData()) && S.setInactive(), S;
+ }, f.prototype.isSuppressModelUpdateAfterUpdateTransaction = function(d) {
+ if (!this.gridOptionsWrapper.isSuppressModelUpdateAfterUpdateTransaction() || d.rowNodeTransactions == null)
+ return !1;
+ var g = d.rowNodeTransactions.filter(function(O) {
+ return O.add != null && O.add.length > 0 || O.remove != null && O.remove.length > 0;
+ }), S = g == null || g.length == 0;
+ return S;
+ }, f.prototype.refreshModel = function(d) {
+ if (!this.isSuppressModelUpdateAfterUpdateTransaction(d)) {
+ var g = this.createChangePath(d.rowNodeTransactions);
+ switch (d.step) {
+ case t.ClientSideRowModelSteps.EVERYTHING:
+ this.doRowGrouping(d.groupState, d.rowNodeTransactions, d.rowNodeOrder, g, !!d.afterColumnsChanged);
+ case t.ClientSideRowModelSteps.FILTER:
+ this.doFilter(g);
+ case t.ClientSideRowModelSteps.PIVOT:
+ this.doPivot(g);
+ case t.ClientSideRowModelSteps.AGGREGATE:
+ this.doAggregate(g);
+ case t.ClientSideRowModelSteps.FILTER_AGGREGATES:
+ this.doFilterAggregates(g);
+ case t.ClientSideRowModelSteps.SORT:
+ this.doSort(d.rowNodeTransactions, g);
+ case t.ClientSideRowModelSteps.MAP:
+ this.doRowsToDisplay();
+ }
+ var S = this.setRowTopAndRowIndex();
+ this.clearRowTopAndRowIndex(g, S);
+ var O = {
+ type: ui.EVENT_MODEL_UPDATED,
+ api: this.gridApi,
+ columnApi: this.columnApi,
+ animate: d.animate,
+ keepRenderedRows: d.keepRenderedRows,
+ newData: d.newData,
+ newPage: !1
+ };
+ this.eventService.dispatchEvent(O);
+ }
+ }, f.prototype.isEmpty = function() {
+ var d = ho.missing(this.rootNode.allLeafChildren) || this.rootNode.allLeafChildren.length === 0;
+ return ho.missing(this.rootNode) || d || !this.columnModel.isReady();
+ }, f.prototype.isRowsToRender = function() {
+ return ho.exists(this.rowsToDisplay) && this.rowsToDisplay.length > 0;
+ }, f.prototype.getNodesInRangeForSelection = function(d, g) {
+ var S = !g, O = !1, z, te = [], Fe = this.gridOptionsWrapper.isGroupSelectsChildren();
+ return this.forEachNodeAfterFilterAndSort(function(ze) {
+ var ht = S && !O;
+ S || (ze === g || ze === d) && (S = !0);
+ var Lt = ze.group && Fe;
+ if (!Lt) {
+ var ti = S && !O, wi = ze.isParentOfNode(z);
+ (ti || wi) && te.push(ze);
+ }
+ ht && (ze === g || ze === d) && (O = !0, ze === g ? z = g : z = d);
+ }), te;
+ }, f.prototype.setDatasource = function(d) {
+ console.error("AG Grid: should never call setDatasource on clientSideRowController");
+ }, f.prototype.getTopLevelNodes = function() {
+ return this.rootNode ? this.rootNode.childrenAfterGroup : null;
+ }, f.prototype.getRootNode = function() {
+ return this.rootNode;
+ }, f.prototype.getRow = function(d) {
+ return this.rowsToDisplay[d];
+ }, f.prototype.isRowPresent = function(d) {
+ return this.rowsToDisplay.indexOf(d) >= 0;
+ }, f.prototype.getRowIndexAtPixel = function(d) {
+ if (this.isEmpty())
+ return -1;
+ var g = 0, S = this.rowsToDisplay.length - 1;
+ if (d <= 0)
+ return 0;
+ var O = ho.last(this.rowsToDisplay);
+ if (O.rowTop <= d)
+ return this.rowsToDisplay.length - 1;
+ for (; ; ) {
+ var z = Math.floor((g + S) / 2), te = this.rowsToDisplay[z];
+ if (this.isRowInPixel(te, d))
+ return z;
+ te.rowTop < d ? g = z + 1 : te.rowTop > d && (S = z - 1);
+ }
+ }, f.prototype.isRowInPixel = function(d, g) {
+ var S = d.rowTop, O = d.rowTop + d.rowHeight, z = S <= g && O > g;
+ return z;
+ }, f.prototype.forEachLeafNode = function(d) {
+ this.rootNode.allLeafChildren && this.rootNode.allLeafChildren.forEach(function(g, S) {
+ return d(g, S);
+ });
+ }, f.prototype.forEachNode = function(d) {
+ this.recursivelyWalkNodesAndCallback(this.rootNode.childrenAfterGroup, d, WC.Normal, 0);
+ }, f.prototype.forEachNodeAfterFilter = function(d) {
+ this.recursivelyWalkNodesAndCallback(this.rootNode.childrenAfterAggFilter, d, WC.AfterFilter, 0);
+ }, f.prototype.forEachNodeAfterFilterAndSort = function(d) {
+ this.recursivelyWalkNodesAndCallback(this.rootNode.childrenAfterSort, d, WC.AfterFilterAndSort, 0);
+ }, f.prototype.forEachPivotNode = function(d) {
+ this.recursivelyWalkNodesAndCallback([this.rootNode], d, WC.PivotNodes, 0);
+ }, f.prototype.recursivelyWalkNodesAndCallback = function(d, g, S, O) {
+ if (!d)
+ return O;
+ for (var z = 0; z < d.length; z++) {
+ var te = d[z];
+ if (g(te, O++), te.hasChildren()) {
+ var Fe = null;
+ switch (S) {
+ case WC.Normal:
+ Fe = te.childrenAfterGroup;
+ break;
+ case WC.AfterFilter:
+ Fe = te.childrenAfterAggFilter;
+ break;
+ case WC.AfterFilterAndSort:
+ Fe = te.childrenAfterSort;
+ break;
+ case WC.PivotNodes:
+ Fe = te.leafGroup ? null : te.childrenAfterSort;
+ break;
+ }
+ Fe && (O = this.recursivelyWalkNodesAndCallback(Fe, g, S, O));
+ }
+ }
+ return O;
+ }, f.prototype.doAggregate = function(d) {
+ this.aggregationStage && this.aggregationStage.execute({ rowNode: this.rootNode, changedPath: d });
+ }, f.prototype.doFilterAggregates = function(d) {
+ this.filterAggregatesStage ? this.filterAggregatesStage.execute({ rowNode: this.rootNode, changedPath: d }) : this.rootNode.childrenAfterAggFilter = this.rootNode.childrenAfterFilter;
+ }, f.prototype.expandOrCollapseAll = function(d) {
+ var g = this.gridOptionsWrapper.isTreeData(), S = this.columnModel.isPivotActive(), O = function(Fe) {
+ Fe && Fe.forEach(function(ze) {
+ var ht = function() {
+ ze.expanded = d, O(ze.childrenAfterGroup);
+ };
+ if (g) {
+ var Lt = ho.exists(ze.childrenAfterGroup);
+ Lt && ht();
+ return;
+ }
+ if (S) {
+ var ti = !ze.leafGroup;
+ ti && ht();
+ return;
+ }
+ var wi = ze.group;
+ wi && ht();
+ });
+ };
+ this.rootNode && O(this.rootNode.childrenAfterGroup), this.refreshModel({ step: t.ClientSideRowModelSteps.MAP });
+ var z = d ? "expandAll" : "collapseAll", te = {
+ api: this.gridApi,
+ columnApi: this.columnApi,
+ type: ui.EVENT_EXPAND_COLLAPSE_ALL,
+ source: z
+ };
+ this.eventService.dispatchEvent(te);
+ }, f.prototype.doSort = function(d, g) {
+ this.sortStage.execute({
+ rowNode: this.rootNode,
+ rowNodeTransactions: d,
+ changedPath: g
+ });
+ }, f.prototype.doRowGrouping = function(d, g, S, O, z) {
+ this.groupStage ? (g ? this.groupStage.execute({
+ rowNode: this.rootNode,
+ rowNodeTransactions: g,
+ rowNodeOrder: S,
+ changedPath: O
+ }) : (this.groupStage.execute({
+ rowNode: this.rootNode,
+ changedPath: O,
+ afterColumnsChanged: z
+ }), this.restoreGroupState(d)), this.gridOptionsWrapper.isGroupSelectsChildren() && this.selectionService.updateGroupsFromChildrenSelections(O)) : (this.rootNode.childrenAfterGroup = this.rootNode.allLeafChildren, this.rootNode.sibling && (this.rootNode.sibling.childrenAfterGroup = this.rootNode.childrenAfterGroup), this.rootNode.updateHasChildren());
+ }, f.prototype.restoreGroupState = function(d) {
+ d && ho.traverseNodesWithKey(this.rootNode.childrenAfterGroup, function(g, S) {
+ typeof d[S] == "boolean" && (g.expanded = d[S]);
+ });
+ }, f.prototype.doFilter = function(d) {
+ this.filterStage.execute({ rowNode: this.rootNode, changedPath: d });
+ }, f.prototype.doPivot = function(d) {
+ this.pivotStage && this.pivotStage.execute({ rowNode: this.rootNode, changedPath: d });
+ }, f.prototype.getGroupState = function() {
+ if (!this.rootNode.childrenAfterGroup || !this.gridOptionsWrapper.isRememberGroupStateWhenNewData())
+ return null;
+ var d = {};
+ return ho.traverseNodesWithKey(this.rootNode.childrenAfterGroup, function(g, S) {
+ return d[S] = g.expanded;
+ }), d;
+ }, f.prototype.getCopyOfNodesMap = function() {
+ return this.nodeManager.getCopyOfNodesMap();
+ }, f.prototype.getRowNode = function(d) {
+ var g = typeof d == "string" && d.indexOf(oi.ID_PREFIX_ROW_GROUP) == 0;
+ if (g) {
+ var S = void 0;
+ return this.forEachNode(function(O) {
+ O.id === d && (S = O);
+ }), S;
+ }
+ return this.nodeManager.getRowNode(d);
+ }, f.prototype.setRowData = function(d) {
+ var g = this.getGroupState();
+ this.nodeManager.setRowData(d), this.selectionService.reset(), this.filterManager.onNewRowsLoaded("rowDataUpdated");
+ var S = {
+ type: ui.EVENT_ROW_DATA_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(S), this.refreshModel({
+ step: t.ClientSideRowModelSteps.EVERYTHING,
+ groupState: g,
+ newData: !0
+ });
+ }, f.prototype.batchUpdateRowData = function(d, g) {
+ var S = this;
+ if (this.applyAsyncTransactionsTimeout == null) {
+ this.rowDataTransactionBatch = [];
+ var O = this.gridOptionsWrapper.getAsyncTransactionWaitMillis();
+ this.applyAsyncTransactionsTimeout = window.setTimeout(function() {
+ S.executeBatchUpdateRowData();
+ }, O);
+ }
+ this.rowDataTransactionBatch.push({ rowDataTransaction: d, callback: g });
+ }, f.prototype.flushAsyncTransactions = function() {
+ this.applyAsyncTransactionsTimeout != null && (clearTimeout(this.applyAsyncTransactionsTimeout), this.executeBatchUpdateRowData());
+ }, f.prototype.executeBatchUpdateRowData = function() {
+ var d = this;
+ this.valueCache.onDataChanged();
+ var g = [], S = [], O = !1;
+ if (this.rowDataTransactionBatch && this.rowDataTransactionBatch.forEach(function(te) {
+ var Fe = d.nodeManager.updateRowData(te.rowDataTransaction, void 0);
+ S.push(Fe), te.callback && g.push(te.callback.bind(null, Fe)), typeof te.rowDataTransaction.addIndex == "number" && (O = !0);
+ }), this.commonUpdateRowData(S, void 0, O), g.length > 0 && window.setTimeout(function() {
+ g.forEach(function(te) {
+ return te();
+ });
+ }, 0), S.length > 0) {
+ var z = {
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ type: ui.EVENT_ASYNC_TRANSACTIONS_FLUSHED,
+ results: S
+ };
+ this.eventService.dispatchEvent(z);
+ }
+ this.rowDataTransactionBatch = null, this.applyAsyncTransactionsTimeout = void 0;
+ }, f.prototype.updateRowData = function(d, g) {
+ this.valueCache.onDataChanged();
+ var S = this.nodeManager.updateRowData(d, g), O = typeof d.addIndex == "number";
+ return this.commonUpdateRowData([S], g, O), S;
+ }, f.prototype.createRowNodeOrder = function() {
+ var d = this.gridOptionsWrapper.isSuppressMaintainUnsortedOrder();
+ if (!d) {
+ var g = {};
+ if (this.rootNode && this.rootNode.allLeafChildren)
+ for (var S = 0; S < this.rootNode.allLeafChildren.length; S++) {
+ var O = this.rootNode.allLeafChildren[S];
+ g[O.id] = S;
+ }
+ return g;
+ }
+ }, f.prototype.commonUpdateRowData = function(d, g, S) {
+ var O = !this.gridOptionsWrapper.isSuppressAnimationFrame();
+ S && (g = this.createRowNodeOrder()), this.refreshModel({
+ step: t.ClientSideRowModelSteps.EVERYTHING,
+ rowNodeTransactions: d,
+ rowNodeOrder: g,
+ keepRenderedRows: !0,
+ keepEditingRows: !0,
+ animate: O
+ });
+ var z = {
+ type: ui.EVENT_ROW_DATA_UPDATED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(z);
+ }, f.prototype.doRowsToDisplay = function() {
+ this.rowsToDisplay = this.flattenStage.execute({ rowNode: this.rootNode });
+ }, f.prototype.onRowHeightChanged = function() {
+ this.refreshModel({ step: t.ClientSideRowModelSteps.MAP, keepRenderedRows: !0, keepEditingRows: !0 });
+ }, f.prototype.resetRowHeights = function() {
+ var d = !1;
+ this.forEachNode(function(g) {
+ g.setRowHeight(g.rowHeight, !0);
+ var S = g.detailNode;
+ S && S.setRowHeight(S.rowHeight, !0), d = !0;
+ }), d && this.onRowHeightChanged();
+ }, Kg([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), Kg([
+ pe("selectionService")
+ ], f.prototype, "selectionService", void 0), Kg([
+ pe("filterManager")
+ ], f.prototype, "filterManager", void 0), Kg([
+ pe("valueCache")
+ ], f.prototype, "valueCache", void 0), Kg([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), Kg([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), Kg([
+ pe("animationFrameService")
+ ], f.prototype, "animationFrameService", void 0), Kg([
+ pe("beans")
+ ], f.prototype, "beans", void 0), Kg([
+ pe("filterStage")
+ ], f.prototype, "filterStage", void 0), Kg([
+ pe("sortStage")
+ ], f.prototype, "sortStage", void 0), Kg([
+ pe("flattenStage")
+ ], f.prototype, "flattenStage", void 0), Kg([
+ Ae("groupStage")
+ ], f.prototype, "groupStage", void 0), Kg([
+ Ae("aggregationStage")
+ ], f.prototype, "aggregationStage", void 0), Kg([
+ Ae("pivotStage")
+ ], f.prototype, "pivotStage", void 0), Kg([
+ Ae("filterAggregatesStage")
+ ], f.prototype, "filterAggregatesStage", void 0), Kg([
+ ct
+ ], f.prototype, "init", null), f = Kg([
+ Ne("rowModel")
+ ], f), f;
+ }(ki)
+ ), D6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), qVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, F6t = (
+ /** @class */
+ function(M) {
+ D6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.execute = function(d) {
+ var g = d.changedPath;
+ this.filterService.filter(g);
+ }, qVe([
+ pe("filterService")
+ ], f.prototype, "filterService", void 0), f = qVe([
+ Ne("filterStage")
+ ], f), f;
+ }(ki)
+ ), L6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), xne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, N6t = (
+ /** @class */
+ function(M) {
+ L6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.execute = function(d) {
+ var g = this.sortController.getSortOptions(), S = ho.exists(g) && g.length > 0, O = S && ho.exists(d.rowNodeTransactions) && this.gridOptionsWrapper.isDeltaSort(), z = g.some(function(te) {
+ return !!te.column.getColDef().showRowGroup;
+ });
+ this.sortService.sort(g, S, O, d.rowNodeTransactions, d.changedPath, z);
+ }, xne([
+ pe("sortService")
+ ], f.prototype, "sortService", void 0), xne([
+ pe("sortController")
+ ], f.prototype, "sortController", void 0), xne([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), f = xne([
+ Ne("sortStage")
+ ], f), f;
+ }(ki)
+ ), k6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), z_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, $6t = (
+ /** @class */
+ function(M) {
+ k6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.execute = function(d) {
+ var g = d.rowNode, S = [], O = { value: 0 }, z = this.columnModel.isPivotMode(), te = z && g.leafGroup, Fe = te ? [g] : g.childrenAfterSort;
+ this.recursivelyAddToRowsToDisplay(Fe, S, O, z, 0);
+ var ze = S.length > 0, ht = !te && ze && this.gridOptionsWrapper.isGroupIncludeTotalFooter();
+ return ht && (this.ensureFooterNodeExists(g), this.addRowNodeToRowsToDisplay(g.sibling, S, O, 0)), S;
+ }, f.prototype.recursivelyAddToRowsToDisplay = function(d, g, S, O, z) {
+ if (!ho.missingOrEmpty(d))
+ for (var te = this.gridOptionsWrapper.isGroupHideOpenParents(), Fe = this.gridOptionsWrapper.isGroupRemoveSingleChildren(), ze = !Fe && this.gridOptionsWrapper.isGroupRemoveLowestSingleChildren(), ht = 0; ht < d.length; ht++) {
+ var Lt = d[ht], ti = Lt.hasChildren(), wi = O && !ti, Ti = Fe && ti && Lt.childrenAfterGroup.length === 1, qi = ze && ti && Lt.leafGroup && Lt.childrenAfterGroup.length === 1, dr = O && Lt.leafGroup, kr = te && Lt.expanded && !Lt.master && !dr, Rr = !wi && !kr && !Ti && !qi;
+ if (Rr && this.addRowNodeToRowsToDisplay(Lt, g, S, z), !(O && Lt.leafGroup)) {
+ if (ti) {
+ var Vr = Ti || qi;
+ if (Lt.expanded || Vr) {
+ var An = Vr ? z : z + 1;
+ this.recursivelyAddToRowsToDisplay(Lt.childrenAfterSort, g, S, O, An), this.gridOptionsWrapper.isGroupIncludeFooter() && (this.ensureFooterNodeExists(Lt), this.addRowNodeToRowsToDisplay(Lt.sibling, g, S, z));
+ }
+ } else if (Lt.master && Lt.expanded) {
+ var Js = this.createDetailNode(Lt);
+ this.addRowNodeToRowsToDisplay(Js, g, S, z);
+ }
+ }
+ }
+ }, f.prototype.addRowNodeToRowsToDisplay = function(d, g, S, O) {
+ var z = this.gridOptionsWrapper.isGroupMultiAutoColumn();
+ g.push(d), d.setUiLevel(z ? 0 : O);
+ }, f.prototype.ensureFooterNodeExists = function(d) {
+ if (!ho.exists(d.sibling)) {
+ var g = new oi(this.beans);
+ Object.keys(d).forEach(function(S) {
+ g[S] = d[S];
+ }), g.footer = !0, g.setRowTop(null), g.setRowIndex(null), g.oldRowTop = null, ho.exists(g.id) && (g.id = "rowGroupFooter_" + g.id), g.sibling = d, d.sibling = g;
+ }
+ }, f.prototype.createDetailNode = function(d) {
+ if (ho.exists(d.detailNode))
+ return d.detailNode;
+ var g = new oi(this.beans);
+ return g.detail = !0, g.selectable = !1, g.parent = d, ho.exists(d.id) && (g.id = "detail_" + d.id), g.data = d.data, g.level = d.level + 1, d.detailNode = g, g;
+ }, z_e([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), z_e([
+ pe("beans")
+ ], f.prototype, "beans", void 0), f = z_e([
+ Ne("flattenStage")
+ ], f), f;
+ }(ki)
+ ), B6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), Sne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, V6t = (
+ /** @class */
+ function(M) {
+ B6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.init = function() {
+ this.postSortFunc = this.gridOptionsWrapper.getPostSortFunc();
+ }, f.prototype.sort = function(d, g, S, O, z, te) {
+ var Fe = this, ze = this.gridOptionsWrapper.isGroupMaintainOrder(), ht = this.columnModel.getAllGridColumns().some(function(Ti) {
+ return Ti.isRowGroupActive();
+ }), Lt = {};
+ S && O && (Lt = this.calculateDirtyNodes(O));
+ var ti = this.columnModel.isPivotMode(), wi = function(Ti) {
+ Fe.pullDownGroupDataForHideOpenParents(Ti.childrenAfterAggFilter, !0);
+ var qi = ti && Ti.leafGroup, dr = ze && ht && !Ti.leafGroup && !te;
+ if (!g || dr || qi) {
+ var kr = Ti.childrenAfterAggFilter.slice(0);
+ if (ze && Ti.childrenAfterSort) {
+ var Rr = Ti.childrenAfterSort.reduce(function(An, Js, Ya) {
+ return An[Js.id] = Ya, An;
+ }, {});
+ kr.sort(function(An, Js) {
+ return (Rr[An.id] || 0) - (Rr[Js.id] || 0);
+ });
+ }
+ Ti.childrenAfterSort = kr;
+ } else
+ S ? Ti.childrenAfterSort = Fe.doDeltaSort(Ti, Lt, z, d) : Ti.childrenAfterSort = Fe.rowNodeSorter.doFullSort(Ti.childrenAfterAggFilter, d);
+ if (Ti.sibling && (Ti.sibling.childrenAfterSort = Ti.childrenAfterSort), Fe.updateChildIndexes(Ti), Fe.postSortFunc) {
+ var Vr = { nodes: Ti.childrenAfterSort };
+ Fe.postSortFunc(Vr);
+ }
+ };
+ z && z.forEachChangedNodeDepthFirst(wi), this.updateGroupDataForHideOpenParents(z);
+ }, f.prototype.calculateDirtyNodes = function(d) {
+ var g = {}, S = function(O) {
+ O && O.forEach(function(z) {
+ return g[z.id] = !0;
+ });
+ };
+ return d && d.forEach(function(O) {
+ S(O.add), S(O.update), S(O.remove);
+ }), g;
+ }, f.prototype.doDeltaSort = function(d, g, S, O) {
+ var z = this, te = d.childrenAfterAggFilter, Fe = d.childrenAfterSort;
+ if (!Fe)
+ return this.rowNodeSorter.doFullSort(te, O);
+ var ze = {}, ht = [];
+ te.forEach(function(Ti) {
+ g[Ti.id] || !S.canSkip(Ti) ? ht.push(Ti) : ze[Ti.id] = !0;
+ });
+ var Lt = Fe.filter(function(Ti) {
+ return ze[Ti.id];
+ }), ti = function(Ti, qi) {
+ return { currentPos: qi, rowNode: Ti };
+ }, wi = ht.map(ti).sort(function(Ti, qi) {
+ return z.rowNodeSorter.compareRowNodes(O, Ti, qi);
+ });
+ return this.mergeSortedArrays(O, wi, Lt.map(ti)).map(function(Ti) {
+ var qi = Ti.rowNode;
+ return qi;
+ });
+ }, f.prototype.mergeSortedArrays = function(d, g, S) {
+ for (var O = [], z = 0, te = 0; z < g.length && te < S.length; ) {
+ var Fe = this.rowNodeSorter.compareRowNodes(d, g[z], S[te]);
+ Fe < 0 ? O.push(g[z++]) : O.push(S[te++]);
+ }
+ for (; z < g.length; )
+ O.push(g[z++]);
+ for (; te < S.length; )
+ O.push(S[te++]);
+ return O;
+ }, f.prototype.updateChildIndexes = function(d) {
+ if (!ho.missing(d.childrenAfterSort))
+ for (var g = d.childrenAfterSort, S = 0; S < g.length; S++) {
+ var O = g[S], z = S === 0, te = S === d.childrenAfterSort.length - 1;
+ O.setFirstChild(z), O.setLastChild(te), O.setChildIndex(S);
+ }
+ }, f.prototype.updateGroupDataForHideOpenParents = function(d) {
+ var g = this;
+ if (this.gridOptionsWrapper.isGroupHideOpenParents()) {
+ if (this.gridOptionsWrapper.isTreeData()) {
+ var S = "AG Grid: The property hideOpenParents dose not work with Tree Data. This is because Tree Data has values at the group level, it doesn't make sense to hide them (as opposed to Row Grouping, which only has Aggregated Values at the group level).";
+ return ho.doOnce(function() {
+ return console.warn(S);
+ }, "sortService.hideOpenParentsWithTreeData"), !1;
+ }
+ var O = function(z) {
+ g.pullDownGroupDataForHideOpenParents(z.childrenAfterSort, !1), z.childrenAfterSort.forEach(function(te) {
+ te.hasChildren() && O(te);
+ });
+ };
+ d && d.executeFromRootNode(function(z) {
+ return O(z);
+ });
+ }
+ }, f.prototype.pullDownGroupDataForHideOpenParents = function(d, g) {
+ var S = this;
+ !this.gridOptionsWrapper.isGroupHideOpenParents() || ho.missing(d) || d.forEach(function(O) {
+ var z = S.columnModel.getGroupDisplayColumns();
+ z.forEach(function(te) {
+ var Fe = te.getColDef().showRowGroup;
+ if (typeof Fe != "string") {
+ console.error("AG Grid: groupHideOpenParents only works when specifying specific columns for colDef.showRowGroup");
+ return;
+ }
+ var ze = Fe, ht = S.columnModel.getPrimaryColumn(ze), Lt = ht === O.rowGroupColumn;
+ if (!Lt)
+ if (g)
+ O.setGroupValue(te.getId(), void 0);
+ else {
+ var ti = O.getFirstChildOfFirstChild(ht);
+ ti && O.setGroupValue(te.getId(), ti.key);
+ }
+ });
+ });
+ }, Sne([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), Sne([
+ pe("rowNodeSorter")
+ ], f.prototype, "rowNodeSorter", void 0), Sne([
+ ct
+ ], f.prototype, "init", null), f = Sne([
+ Ne("sortService")
+ ], f), f;
+ }(ki)
+ ), j6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), YVe = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, G6t = (
+ /** @class */
+ function(M) {
+ j6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.filter = function(d) {
+ var g = this.filterManager.isColumnFilterPresent() || this.filterManager.isQuickFilterPresent() || this.gridOptionsWrapper.isExternalFilterPresent();
+ this.filterNodes(g, d);
+ }, f.prototype.filterNodes = function(d, g) {
+ var S = this, O = function(ze, ht) {
+ ze.hasChildren() && d && !ht ? ze.childrenAfterFilter = ze.childrenAfterGroup.filter(function(Lt) {
+ var ti = Lt.childrenAfterFilter && Lt.childrenAfterFilter.length > 0, wi = Lt.data && S.filterManager.doesRowPassFilter({ rowNode: Lt });
+ return ti || wi;
+ }) : ze.childrenAfterFilter = ze.childrenAfterGroup, ze.sibling && (ze.sibling.childrenAfterFilter = ze.childrenAfterFilter);
+ };
+ if (this.doingTreeDataFiltering()) {
+ var z = function(ze, ht) {
+ if (ze.childrenAfterGroup)
+ for (var Lt = 0; Lt < ze.childrenAfterGroup.length; Lt++) {
+ var ti = ze.childrenAfterGroup[Lt], wi = ht || S.filterManager.doesRowPassFilter({ rowNode: ti });
+ ti.childrenAfterGroup ? z(ze.childrenAfterGroup[Lt], wi) : O(ti, wi);
+ }
+ O(ze, ht);
+ }, te = function(ze) {
+ return z(ze, !1);
+ };
+ g.executeFromRootNode(te);
+ } else {
+ var Fe = function(ze) {
+ return O(ze, !1);
+ };
+ g.forEachChangedNodeDepthFirst(Fe, !0);
+ }
+ }, f.prototype.doingTreeDataFiltering = function() {
+ return this.gridOptionsWrapper.isTreeData() && !this.gridOptionsWrapper.isExcludeChildrenWhenTreeDataFiltering();
+ }, YVe([
+ pe("filterManager")
+ ], f.prototype, "filterManager", void 0), f = YVe([
+ Ne("filterService")
+ ], f), f;
+ }(ki)
+ ), U6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), D9 = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, z6t = function(M, f) {
+ var d = typeof Symbol == "function" && M[Symbol.iterator];
+ if (!d)
+ return M;
+ var g = d.call(M), S, O = [], z;
+ try {
+ for (; (f === void 0 || f-- > 0) && !(S = g.next()).done; )
+ O.push(S.value);
+ } catch (te) {
+ z = { error: te };
+ } finally {
+ try {
+ S && !S.done && (d = g.return) && d.call(g);
+ } finally {
+ if (z)
+ throw z.error;
+ }
+ }
+ return O;
+ }, H6t = (
+ /** @class */
+ function(M) {
+ U6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.postConstruct = function() {
+ this.rowModel.getType() === Ue.ROW_MODEL_TYPE_CLIENT_SIDE && (this.clientSideRowModel = this.rowModel);
+ }, f.prototype.isActive = function() {
+ return this.gridOptionsWrapper.isImmutableData();
+ }, f.prototype.setRowData = function(d) {
+ var g = this.createTransactionForRowData(d);
+ if (g) {
+ var S = z6t(g, 2), O = S[0], z = S[1], te = this.clientSideRowModel.updateRowData(O, z);
+ te && this.rowRenderer.refreshFullWidthRows(te.update);
+ var Fe = {
+ type: ui.EVENT_ROW_DATA_CHANGED,
+ api: this.gridApi,
+ columnApi: this.columnApi
+ };
+ this.eventService.dispatchEvent(Fe);
+ }
+ }, f.prototype.createTransactionForRowData = function(d) {
+ if (ho.missing(this.clientSideRowModel)) {
+ console.error("AG Grid: ImmutableService only works with ClientSideRowModel");
+ return;
+ }
+ var g = this.gridOptionsWrapper.getRowIdFunc();
+ if (g == null) {
+ console.error("AG Grid: ImmutableService requires getRowId() callback to be implemented, your row data needs IDs!");
+ return;
+ }
+ var S = {
+ remove: [],
+ update: [],
+ add: []
+ }, O = this.clientSideRowModel.getCopyOfNodesMap(), z = this.gridOptionsWrapper.isSuppressMaintainUnsortedOrder(), te = z ? void 0 : {};
+ return ho.exists(d) && d.forEach(function(Fe, ze) {
+ var ht = g({ data: Fe, level: 0 }), Lt = O[ht];
+ if (te && (te[ht] = ze), Lt) {
+ var ti = Lt.data !== Fe;
+ ti && S.update.push(Fe), O[ht] = void 0;
+ } else
+ S.add.push(Fe);
+ }), ho.iterateObject(O, function(Fe, ze) {
+ ze && S.remove.push(ze.data);
+ }), [S, te];
+ }, D9([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), D9([
+ pe("rowRenderer")
+ ], f.prototype, "rowRenderer", void 0), D9([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), D9([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), D9([
+ ct
+ ], f.prototype, "postConstruct", null), f = D9([
+ Ne("immutableService")
+ ], f), f;
+ }(ki)
+ ), W6t = {
+ moduleName: t.ModuleNames.ClientSideRowModelModule,
+ beans: [F6t, N6t, $6t, V6t, G6t, H6t],
+ rowModels: { clientSide: M6t }
+ }, q6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), H_e = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, XVe = (
+ /** @class */
+ function(M) {
+ q6t(f, M);
+ function f(d, g, S) {
+ var O = M.call(this, d) || this;
+ return O.parentCache = g, O.params = S, O.startRow = d * S.blockSize, O.endRow = O.startRow + S.blockSize, O;
+ }
+ return f.prototype.postConstruct = function() {
+ this.createRowNodes();
+ }, f.prototype.getBlockStateJson = function() {
+ return {
+ id: "" + this.getId(),
+ state: {
+ blockNumber: this.getId(),
+ startRow: this.getStartRow(),
+ endRow: this.getEndRow(),
+ pageStatus: this.getState()
+ }
+ };
+ }, f.prototype.setDataAndId = function(d, g, S) {
+ !d.id && d.alreadyRendered && (d.alreadyRendered = !1), ho.exists(g) ? d.setDataAndId(g, S.toString()) : d.setDataAndId(void 0, void 0);
+ }, f.prototype.loadFromDatasource = function() {
+ var d = this, g = this.createLoadParams();
+ if (ho.missing(this.params.datasource.getRows)) {
+ console.warn("AG Grid: datasource is missing getRows method");
+ return;
+ }
+ window.setTimeout(function() {
+ d.params.datasource.getRows(g);
+ }, 0);
+ }, f.prototype.processServerFail = function() {
+ }, f.prototype.createLoadParams = function() {
+ var d = {
+ startRow: this.getStartRow(),
+ endRow: this.getEndRow(),
+ successCallback: this.pageLoaded.bind(this, this.getVersion()),
+ failCallback: this.pageLoadFailed.bind(this, this.getVersion()),
+ sortModel: this.params.sortModel,
+ filterModel: this.params.filterModel,
+ context: this.gridOptionsWrapper.getContext()
+ };
+ return d;
+ }, f.prototype.forEachNode = function(d, g, S) {
+ var O = this;
+ this.rowNodes.forEach(function(z, te) {
+ var Fe = O.startRow + te;
+ Fe < S && d(z, g.next());
+ });
+ }, f.prototype.getLastAccessed = function() {
+ return this.lastAccessed;
+ }, f.prototype.getRow = function(d, g) {
+ g === void 0 && (g = !1), g || (this.lastAccessed = this.params.lastAccessedSequence.next());
+ var S = d - this.startRow;
+ return this.rowNodes[S];
+ }, f.prototype.getStartRow = function() {
+ return this.startRow;
+ }, f.prototype.getEndRow = function() {
+ return this.endRow;
+ }, f.prototype.createRowNodes = function() {
+ this.rowNodes = [];
+ for (var d = 0; d < this.params.blockSize; d++) {
+ var g = this.startRow + d, S = new oi(this.beans);
+ S.setRowHeight(this.params.rowHeight), S.uiLevel = 0, S.setRowIndex(g), S.setRowTop(this.params.rowHeight * g), this.rowNodes.push(S);
+ }
+ }, f.prototype.processServerResult = function(d) {
+ var g = this;
+ this.rowNodes.forEach(function(O, z) {
+ var te = d.rowData ? d.rowData[z] : void 0;
+ g.setDataAndId(O, te, g.startRow + z);
+ });
+ var S = d.rowCount != null && d.rowCount >= 0 ? d.rowCount : void 0;
+ this.parentCache.pageLoaded(this, S);
+ }, f.prototype.destroyRowNodes = function() {
+ this.rowNodes.forEach(function(d) {
+ d.clearRowTopAndRowIndex();
+ });
+ }, H_e([
+ pe("beans")
+ ], f.prototype, "beans", void 0), H_e([
+ ct
+ ], f.prototype, "postConstruct", null), H_e([
+ gt
+ ], f.prototype, "destroyRowNodes", null), f;
+ }(lne)
+ ), Y6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), Cne = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, X6t = function(M, f) {
+ return function(d, g) {
+ f(d, g, M);
+ };
+ }, K6t = (
+ /** @class */
+ function(M) {
+ Y6t(f, M);
+ function f(d) {
+ var g = M.call(this) || this;
+ return g.lastRowIndexKnown = !1, g.blocks = {}, g.blockCount = 0, g.rowCount = d.initialRowCount, g.params = d, g;
+ }
+ return f.prototype.setBeans = function(d) {
+ this.logger = d.create("InfiniteCache");
+ }, f.prototype.getRow = function(d, g) {
+ g === void 0 && (g = !1);
+ var S = Math.floor(d / this.params.blockSize), O = this.blocks[S];
+ if (!O) {
+ if (g)
+ return;
+ O = this.createBlock(S);
+ }
+ return O.getRow(d);
+ }, f.prototype.createBlock = function(d) {
+ var g = this.createBean(new XVe(d, this, this.params));
+ return this.blocks[g.getId()] = g, this.blockCount++, this.purgeBlocksIfNeeded(g), this.params.rowNodeBlockLoader.addBlock(g), g;
+ }, f.prototype.refreshCache = function() {
+ var d = this.blockCount == 0;
+ if (d) {
+ this.purgeCache();
+ return;
+ }
+ this.getBlocksInOrder().forEach(function(g) {
+ return g.setStateWaitingToLoad();
+ }), this.params.rowNodeBlockLoader.checkBlockToLoad();
+ }, f.prototype.destroyAllBlocks = function() {
+ var d = this;
+ this.getBlocksInOrder().forEach(function(g) {
+ return d.destroyBlock(g);
+ });
+ }, f.prototype.getRowCount = function() {
+ return this.rowCount;
+ }, f.prototype.isLastRowIndexKnown = function() {
+ return this.lastRowIndexKnown;
+ }, f.prototype.pageLoaded = function(d, g) {
+ this.isAlive() && (this.logger.log("onPageLoaded: page = " + d.getId() + ", lastRow = " + g), this.checkRowCount(d, g), this.onCacheUpdated());
+ }, f.prototype.purgeBlocksIfNeeded = function(d) {
+ var g = this, S = this.getBlocksInOrder().filter(function(ze) {
+ return ze != d;
+ }), O = function(ze, ht) {
+ return ht.getLastAccessed() - ze.getLastAccessed();
+ };
+ S.sort(O);
+ var z = this.params.maxBlocksInCache > 0, te = z ? this.params.maxBlocksInCache - 1 : null, Fe = f.MAX_EMPTY_BLOCKS_TO_KEEP - 1;
+ S.forEach(function(ze, ht) {
+ var Lt = ze.getState() === XVe.STATE_WAITING_TO_LOAD && ht >= Fe, ti = z ? ht >= te : !1;
+ if (Lt || ti) {
+ if (g.isBlockCurrentlyDisplayed(ze) || g.isBlockFocused(ze))
+ return;
+ g.removeBlockFromCache(ze);
+ }
+ });
+ }, f.prototype.isBlockFocused = function(d) {
+ var g = this.focusService.getFocusCellToUseAfterRefresh();
+ if (!g || g.rowPinned != null)
+ return !1;
+ var S = d.getStartRow(), O = d.getEndRow(), z = g.rowIndex >= S && g.rowIndex < O;
+ return z;
+ }, f.prototype.isBlockCurrentlyDisplayed = function(d) {
+ var g = d.getStartRow(), S = d.getEndRow() - 1;
+ return this.rowRenderer.isRangeInRenderedViewport(g, S);
+ }, f.prototype.removeBlockFromCache = function(d) {
+ d && this.destroyBlock(d);
+ }, f.prototype.checkRowCount = function(d, g) {
+ if (typeof g == "number" && g >= 0)
+ this.rowCount = g, this.lastRowIndexKnown = !0;
+ else if (!this.lastRowIndexKnown) {
+ var S = (d.getId() + 1) * this.params.blockSize, O = S + this.params.overflowSize;
+ this.rowCount < O && (this.rowCount = O);
+ }
+ }, f.prototype.setRowCount = function(d, g) {
+ this.rowCount = d, ho.exists(g) && (this.lastRowIndexKnown = g), this.lastRowIndexKnown || this.rowCount % this.params.blockSize === 0 && this.rowCount++, this.onCacheUpdated();
+ }, f.prototype.forEachNodeDeep = function(d) {
+ var g = this, S = new Hv();
+ this.getBlocksInOrder().forEach(function(O) {
+ return O.forEachNode(d, S, g.rowCount);
+ });
+ }, f.prototype.getBlocksInOrder = function() {
+ var d = function(S, O) {
+ return S.getId() - O.getId();
+ }, g = ho.getAllValuesInObject(this.blocks).sort(d);
+ return g;
+ }, f.prototype.destroyBlock = function(d) {
+ delete this.blocks[d.getId()], this.destroyBean(d), this.blockCount--, this.params.rowNodeBlockLoader.removeBlock(d);
+ }, f.prototype.onCacheUpdated = function() {
+ if (this.isAlive()) {
+ this.destroyAllBlocksPastVirtualRowCount();
+ var d = {
+ type: ui.EVENT_STORE_UPDATED
+ };
+ this.eventService.dispatchEvent(d);
+ }
+ }, f.prototype.destroyAllBlocksPastVirtualRowCount = function() {
+ var d = this, g = [];
+ this.getBlocksInOrder().forEach(function(S) {
+ var O = S.getId() * d.params.blockSize;
+ O >= d.rowCount && g.push(S);
+ }), g.length > 0 && g.forEach(function(S) {
+ return d.destroyBlock(S);
+ });
+ }, f.prototype.purgeCache = function() {
+ var d = this;
+ this.getBlocksInOrder().forEach(function(g) {
+ return d.removeBlockFromCache(g);
+ }), this.lastRowIndexKnown = !1, this.rowCount === 0 && (this.rowCount = this.params.initialRowCount), this.onCacheUpdated();
+ }, f.prototype.getRowNodesInRange = function(d, g) {
+ var S = this, O = [], z = -1, te = !1, Fe = new Hv();
+ ho.missing(d) && (te = !0);
+ var ze = !1;
+ this.getBlocksInOrder().forEach(function(Lt) {
+ if (!ze) {
+ if (te && z + 1 !== Lt.getId()) {
+ ze = !0;
+ return;
+ }
+ z = Lt.getId(), Lt.forEachNode(function(ti) {
+ var wi = ti === d || ti === g;
+ (te || wi) && O.push(ti), wi && (te = !te);
+ }, Fe, S.rowCount);
+ }
+ });
+ var ht = ze || te;
+ return ht ? [] : O;
+ }, f.MAX_EMPTY_BLOCKS_TO_KEEP = 2, Cne([
+ pe("rowRenderer")
+ ], f.prototype, "rowRenderer", void 0), Cne([
+ pe("focusService")
+ ], f.prototype, "focusService", void 0), Cne([
+ X6t(0, yt("loggerFactory"))
+ ], f.prototype, "setBeans", null), Cne([
+ gt
+ ], f.prototype, "destroyAllBlocks", null), f;
+ }(ki)
+ ), J6t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), qC = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, Z6t = (
+ /** @class */
+ function(M) {
+ J6t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.getRowBounds = function(d) {
+ return {
+ rowHeight: this.rowHeight,
+ rowTop: this.rowHeight * d
+ };
+ }, f.prototype.ensureRowHeightsValid = function(d, g, S, O) {
+ return !1;
+ }, f.prototype.init = function() {
+ var d = this;
+ this.gridOptionsWrapper.isRowModelInfinite() && (this.rowHeight = this.gridOptionsWrapper.getRowHeightAsNumber(), this.addEventListeners(), this.addDestroyFunc(function() {
+ return d.destroyCache();
+ }), this.verifyProps());
+ }, f.prototype.verifyProps = function() {
+ if (this.gridOptionsWrapper.getInitialGroupOrderComparator() != null) {
+ var d = "AG Grid: initialGroupOrderComparator cannot be used with Infinite Row Model. If using Infinite Row Model, then sorting is done on the server side, nothing to do with the client.";
+ ho.doOnce(function() {
+ return console.warn(d);
+ }, "IRM.InitialGroupOrderComparator");
+ }
+ }, f.prototype.start = function() {
+ this.setDatasource(this.gridOptionsWrapper.getDatasource());
+ }, f.prototype.destroyDatasource = function() {
+ this.datasource && (this.getContext().destroyBean(this.datasource), this.rowRenderer.datasourceChanged(), this.datasource = null);
+ }, f.prototype.addEventListeners = function() {
+ this.addManagedListener(this.eventService, ui.EVENT_FILTER_CHANGED, this.onFilterChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_SORT_CHANGED, this.onSortChanged.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_NEW_COLUMNS_LOADED, this.onColumnEverything.bind(this)), this.addManagedListener(this.eventService, ui.EVENT_STORE_UPDATED, this.onCacheUpdated.bind(this));
+ }, f.prototype.onFilterChanged = function() {
+ this.reset();
+ }, f.prototype.onSortChanged = function() {
+ this.reset();
+ }, f.prototype.onColumnEverything = function() {
+ var d;
+ this.cacheParams ? d = this.isSortModelDifferent() : d = !0, d && this.reset();
+ }, f.prototype.isSortModelDifferent = function() {
+ return !ho.jsonEquals(this.cacheParams.sortModel, this.sortController.getSortModel());
+ }, f.prototype.getType = function() {
+ return Ue.ROW_MODEL_TYPE_INFINITE;
+ }, f.prototype.setDatasource = function(d) {
+ this.destroyDatasource(), this.datasource = d, d && this.reset();
+ }, f.prototype.isEmpty = function() {
+ return !this.infiniteCache;
+ }, f.prototype.isRowsToRender = function() {
+ return !!this.infiniteCache;
+ }, f.prototype.getNodesInRangeForSelection = function(d, g) {
+ return this.infiniteCache ? this.infiniteCache.getRowNodesInRange(d, g) : [];
+ }, f.prototype.reset = function() {
+ if (this.datasource) {
+ var d = this.gridOptionsWrapper.getRowIdFunc(), g = d != null;
+ g || this.selectionService.reset(), this.resetCache();
+ var S = this.createModelUpdatedEvent();
+ this.eventService.dispatchEvent(S);
+ }
+ }, f.prototype.createModelUpdatedEvent = function() {
+ return {
+ type: ui.EVENT_MODEL_UPDATED,
+ api: this.gridApi,
+ columnApi: this.columnApi,
+ // not sure if these should all be false - noticed if after implementing,
+ // maybe they should be true?
+ newPage: !1,
+ newData: !1,
+ keepRenderedRows: !0,
+ animate: !1
+ };
+ }, f.prototype.resetCache = function() {
+ this.destroyCache(), this.cacheParams = {
+ // the user provided datasource
+ datasource: this.datasource,
+ // sort and filter model
+ filterModel: this.filterManager.getFilterModel(),
+ sortModel: this.sortController.getSortModel(),
+ rowNodeBlockLoader: this.rowNodeBlockLoader,
+ // properties - this way we take a snapshot of them, so if user changes any, they will be
+ // used next time we create a new cache, which is generally after a filter or sort change,
+ // or a new datasource is set
+ initialRowCount: this.defaultIfInvalid(this.gridOptionsWrapper.getInfiniteInitialRowCount(), 1),
+ maxBlocksInCache: this.gridOptionsWrapper.getMaxBlocksInCache(),
+ rowHeight: this.gridOptionsWrapper.getRowHeightAsNumber(),
+ // if user doesn't provide overflow, we use default overflow of 1, so user can scroll past
+ // the current page and request first row of next page
+ overflowSize: this.defaultIfInvalid(this.gridOptionsWrapper.getCacheOverflowSize(), 1),
+ // page size needs to be 1 or greater. having it at 1 would be silly, as you would be hitting the
+ // server for one page at a time. so the default if not specified is 100.
+ blockSize: this.defaultIfInvalid(this.gridOptionsWrapper.getCacheBlockSize(), 100),
+ // the cache could create this, however it is also used by the pages, so handy to create it
+ // here as the settings are also passed to the pages
+ lastAccessedSequence: new Hv()
+ }, this.infiniteCache = this.createBean(new K6t(this.cacheParams));
+ }, f.prototype.defaultIfInvalid = function(d, g) {
+ return d > 0 ? d : g;
+ }, f.prototype.destroyCache = function() {
+ this.infiniteCache && (this.infiniteCache = this.destroyBean(this.infiniteCache));
+ }, f.prototype.onCacheUpdated = function() {
+ var d = this.createModelUpdatedEvent();
+ this.eventService.dispatchEvent(d);
+ }, f.prototype.getRow = function(d) {
+ if (this.infiniteCache && !(d >= this.infiniteCache.getRowCount()))
+ return this.infiniteCache.getRow(d);
+ }, f.prototype.getRowNode = function(d) {
+ var g;
+ return this.forEachNode(function(S) {
+ S.id === d && (g = S);
+ }), g;
+ }, f.prototype.forEachNode = function(d) {
+ this.infiniteCache && this.infiniteCache.forEachNodeDeep(d);
+ }, f.prototype.getTopLevelRowCount = function() {
+ return this.getRowCount();
+ }, f.prototype.getTopLevelRowDisplayedIndex = function(d) {
+ return d;
+ }, f.prototype.getRowIndexAtPixel = function(d) {
+ if (this.rowHeight !== 0) {
+ var g = Math.floor(d / this.rowHeight), S = this.getRowCount() - 1;
+ return g > S ? S : g;
+ }
+ return 0;
+ }, f.prototype.getRowCount = function() {
+ return this.infiniteCache ? this.infiniteCache.getRowCount() : 0;
+ }, f.prototype.isRowPresent = function(d) {
+ var g = this.getRowNode(d.id);
+ return !!g;
+ }, f.prototype.refreshCache = function() {
+ this.infiniteCache && this.infiniteCache.refreshCache();
+ }, f.prototype.purgeCache = function() {
+ this.infiniteCache && this.infiniteCache.purgeCache();
+ }, f.prototype.isLastRowIndexKnown = function() {
+ return this.infiniteCache ? this.infiniteCache.isLastRowIndexKnown() : !1;
+ }, f.prototype.setRowCount = function(d, g) {
+ this.infiniteCache && this.infiniteCache.setRowCount(d, g);
+ }, qC([
+ pe("filterManager")
+ ], f.prototype, "filterManager", void 0), qC([
+ pe("sortController")
+ ], f.prototype, "sortController", void 0), qC([
+ pe("selectionService")
+ ], f.prototype, "selectionService", void 0), qC([
+ pe("gridApi")
+ ], f.prototype, "gridApi", void 0), qC([
+ pe("columnApi")
+ ], f.prototype, "columnApi", void 0), qC([
+ pe("rowRenderer")
+ ], f.prototype, "rowRenderer", void 0), qC([
+ pe("rowNodeBlockLoader")
+ ], f.prototype, "rowNodeBlockLoader", void 0), qC([
+ ct
+ ], f.prototype, "init", null), qC([
+ gt
+ ], f.prototype, "destroyDatasource", null), f = qC([
+ Ne("rowModel")
+ ], f), f;
+ }(ki)
+ ), Q6t = {
+ moduleName: t.ModuleNames.InfiniteRowModelModule,
+ rowModels: { infinite: Z6t }
+ }, KVe = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.prototype.setBeans = function(f) {
+ this.beans = f;
+ }, M.prototype.getFileName = function(f) {
+ var d = this.getDefaultFileExtension();
+ return (f == null || !f.length) && (f = this.getDefaultFileName()), f.indexOf(".") === -1 ? f + "." + d : f;
+ }, M.prototype.getData = function(f) {
+ var d = this.createSerializingSession(f), g = this.beans.gridSerializer.serialize(d, f);
+ return g;
+ }, M;
+ }()
+ ), JVe = (
+ /** @class */
+ function() {
+ function M(f) {
+ this.groupColumns = [];
+ var d = f.columnModel, g = f.valueService, S = f.gridOptionsWrapper, O = f.processCellCallback, z = f.processHeaderCallback, te = f.processGroupHeaderCallback, Fe = f.processRowGroupCallback;
+ this.columnModel = d, this.valueService = g, this.gridOptionsWrapper = S, this.processCellCallback = O, this.processHeaderCallback = z, this.processGroupHeaderCallback = te, this.processRowGroupCallback = Fe;
+ }
+ return M.prototype.prepare = function(f) {
+ this.groupColumns = f.filter(function(d) {
+ return !!d.getColDef().showRowGroup;
+ });
+ }, M.prototype.extractHeaderValue = function(f) {
+ var d = this.getHeaderName(this.processHeaderCallback, f);
+ return d ?? "";
+ }, M.prototype.extractRowCellValue = function(f, d, g, S, O) {
+ var z = this.gridOptionsWrapper.isGroupMultiAutoColumn() ? O.rowGroupIndex : 0, te = (
+ // on group rows
+ O && O.group && // in the group column if groups appear in regular grid cells
+ (d === z && this.groupColumns.indexOf(f) !== -1 || d === 0 && this.gridOptionsWrapper.isGroupUseEntireRow(this.columnModel.isPivotMode()))
+ ), Fe;
+ te ? Fe = this.createValueForGroupNode(O) : Fe = this.valueService.getValue(f, O);
+ var ze = this.processCell(g, O, f, Fe, this.processCellCallback, S);
+ return ze ?? "";
+ }, M.prototype.getHeaderName = function(f, d) {
+ return f ? f({
+ column: d,
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext()
+ }) : this.columnModel.getDisplayNameForColumn(d, "csv", !0);
+ }, M.prototype.createValueForGroupNode = function(f) {
+ if (this.processRowGroupCallback)
+ return this.processRowGroupCallback({
+ node: f,
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext()
+ });
+ var d = [f.key];
+ if (!this.gridOptionsWrapper.isGroupMultiAutoColumn())
+ for (; f.parent; )
+ f = f.parent, d.push(f.key);
+ return d.reverse().join(" -> ");
+ }, M.prototype.processCell = function(f, d, g, S, O, z) {
+ return O ? O({
+ accumulatedRowIndex: f,
+ column: g,
+ node: d,
+ value: S,
+ api: this.gridOptionsWrapper.getApi(),
+ columnApi: this.gridOptionsWrapper.getColumnApi(),
+ context: this.gridOptionsWrapper.getContext(),
+ type: z
+ }) : S ?? "";
+ }, M;
+ }()
+ ), ZVe = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.download = function(f, d) {
+ var g = document.defaultView || window;
+ if (!g) {
+ console.warn("AG Grid: There is no `window` associated with the current `document`");
+ return;
+ }
+ var S = document.createElement("a"), O = g.URL.createObjectURL(d);
+ S.setAttribute("href", O), S.setAttribute("download", f), S.style.display = "none", document.body.appendChild(S), S.dispatchEvent(new MouseEvent("click", {
+ bubbles: !1,
+ cancelable: !0,
+ view: g
+ })), document.body.removeChild(S), g.setTimeout(function() {
+ g.URL.revokeObjectURL(O);
+ }, 0);
+ }, M;
+ }()
+ ), e$t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), QVe = `\r
+`, t$t = (
+ /** @class */
+ function(M) {
+ e$t(f, M);
+ function f(d) {
+ var g = M.call(this, d) || this;
+ g.isFirstLine = !0, g.result = "";
+ var S = d.suppressQuotes, O = d.columnSeparator;
+ return g.suppressQuotes = S, g.columnSeparator = O, g;
+ }
+ return f.prototype.addCustomContent = function(d) {
+ var g = this;
+ d && (typeof d == "string" ? (/^\s*\n/.test(d) || this.beginNewLine(), d = d.replace(/\r?\n/g, QVe), this.result += d) : d.forEach(function(S) {
+ g.beginNewLine(), S.forEach(function(O, z) {
+ z !== 0 && (g.result += g.columnSeparator), g.result += g.putInQuotes(O.data.value || ""), O.mergeAcross && g.appendEmptyCells(O.mergeAcross);
+ });
+ }));
+ }, f.prototype.onNewHeaderGroupingRow = function() {
+ return this.beginNewLine(), {
+ onColumn: this.onNewHeaderGroupingRowColumn.bind(this)
+ };
+ }, f.prototype.onNewHeaderGroupingRowColumn = function(d, g, S) {
+ g != 0 && (this.result += this.columnSeparator), this.result += this.putInQuotes(d), this.appendEmptyCells(S);
+ }, f.prototype.appendEmptyCells = function(d) {
+ for (var g = 1; g <= d; g++)
+ this.result += this.columnSeparator + this.putInQuotes("");
+ }, f.prototype.onNewHeaderRow = function() {
+ return this.beginNewLine(), {
+ onColumn: this.onNewHeaderRowColumn.bind(this)
+ };
+ }, f.prototype.onNewHeaderRowColumn = function(d, g) {
+ g != 0 && (this.result += this.columnSeparator), this.result += this.putInQuotes(this.extractHeaderValue(d));
+ }, f.prototype.onNewBodyRow = function() {
+ return this.beginNewLine(), {
+ onColumn: this.onNewBodyRowColumn.bind(this)
+ };
+ }, f.prototype.onNewBodyRowColumn = function(d, g, S) {
+ g != 0 && (this.result += this.columnSeparator), this.result += this.putInQuotes(this.extractRowCellValue(d, g, g, Ue.EXPORT_TYPE_CSV, S));
+ }, f.prototype.putInQuotes = function(d) {
+ if (this.suppressQuotes)
+ return d;
+ if (d == null)
+ return '""';
+ var g;
+ typeof d == "string" ? g = d : typeof d.toString == "function" ? g = d.toString() : (console.warn("AG Grid: unknown value type during csv conversion"), g = "");
+ var S = g.replace(/"/g, '""');
+ return '"' + S + '"';
+ }, f.prototype.parse = function() {
+ return this.result;
+ }, f.prototype.beginNewLine = function() {
+ this.isFirstLine || (this.result += QVe), this.isFirstLine = !1;
+ }, f;
+ }(JVe)
+ ), i$t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), F9 = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ }, eje = (
+ /** @class */
+ function(M) {
+ i$t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.postConstruct = function() {
+ this.setBeans({
+ gridSerializer: this.gridSerializer,
+ gridOptionsWrapper: this.gridOptionsWrapper
+ });
+ }, f.prototype.getMergedParams = function(d) {
+ var g = this.gridOptionsWrapper.getDefaultExportParams("csv");
+ return Object.assign({}, g, d);
+ }, f.prototype.export = function(d) {
+ if (this.isExportSuppressed())
+ return console.warn("AG Grid: Export cancelled. Export is not allowed as per your configuration."), "";
+ var g = this.getMergedParams(d), S = this.getData(g), O = new Blob(["\uFEFF", S], { type: "text/plain" });
+ return ZVe.download(this.getFileName(g.fileName), O), S;
+ }, f.prototype.exportDataAsCsv = function(d) {
+ return this.export(d);
+ }, f.prototype.getDataAsCsv = function(d) {
+ var g = this.getMergedParams(d);
+ return this.getData(g);
+ }, f.prototype.getDefaultFileName = function() {
+ return "export.csv";
+ }, f.prototype.getDefaultFileExtension = function() {
+ return "csv";
+ }, f.prototype.createSerializingSession = function(d) {
+ var g = this, S = g.columnModel, O = g.valueService, z = g.gridOptionsWrapper, te = d, Fe = te.processCellCallback, ze = te.processHeaderCallback, ht = te.processGroupHeaderCallback, Lt = te.processRowGroupCallback, ti = te.suppressQuotes, wi = te.columnSeparator;
+ return new t$t({
+ columnModel: S,
+ valueService: O,
+ gridOptionsWrapper: z,
+ processCellCallback: Fe || void 0,
+ processHeaderCallback: ze || void 0,
+ processGroupHeaderCallback: ht || void 0,
+ processRowGroupCallback: Lt || void 0,
+ suppressQuotes: ti || !1,
+ columnSeparator: wi || ","
+ });
+ }, f.prototype.isExportSuppressed = function() {
+ return this.gridOptionsWrapper.isSuppressCsvExport();
+ }, F9([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), F9([
+ pe("valueService")
+ ], f.prototype, "valueService", void 0), F9([
+ pe("gridSerializer")
+ ], f.prototype, "gridSerializer", void 0), F9([
+ pe("gridOptionsWrapper")
+ ], f.prototype, "gridOptionsWrapper", void 0), F9([
+ ct
+ ], f.prototype, "postConstruct", null), f = F9([
+ Ne("csvCreator")
+ ], f), f;
+ }(KVe)
+ ), r$t = function() {
+ var M = function(f, d) {
+ return M = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(g, S) {
+ g.__proto__ = S;
+ } || function(g, S) {
+ for (var O in S)
+ S.hasOwnProperty(O) && (g[O] = S[O]);
+ }, M(f, d);
+ };
+ return function(f, d) {
+ M(f, d);
+ function g() {
+ this.constructor = f;
+ }
+ f.prototype = d === null ? Object.create(d) : (g.prototype = d.prototype, new g());
+ };
+ }(), YL = function(M, f, d, g) {
+ var S = arguments.length, O = S < 3 ? f : g === null ? g = Object.getOwnPropertyDescriptor(f, d) : g, z;
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
+ O = Reflect.decorate(M, f, d, g);
+ else
+ for (var te = M.length - 1; te >= 0; te--)
+ (z = M[te]) && (O = (S < 3 ? z(O) : S > 3 ? z(f, d, O) : z(f, d)) || O);
+ return S > 3 && O && Object.defineProperty(f, d, O), O;
+ };
+ (function(M) {
+ M[M.HEADER_GROUPING = 0] = "HEADER_GROUPING", M[M.HEADER = 1] = "HEADER", M[M.BODY = 2] = "BODY";
+ })(t.RowType || (t.RowType = {}));
+ var tje = (
+ /** @class */
+ function(M) {
+ r$t(f, M);
+ function f() {
+ return M !== null && M.apply(this, arguments) || this;
+ }
+ return f.prototype.serialize = function(d, g) {
+ g === void 0 && (g = {});
+ var S = this.getColumnsToExport(g.allColumns, g.columnKeys), O = ho.compose(
+ // first pass, put in the header names of the cols
+ this.prepareSession(S),
+ this.prependContent(g),
+ this.exportColumnGroups(g, S),
+ this.exportHeaders(g, S),
+ this.processPinnedTopRows(g, S),
+ this.processRows(g, S),
+ this.processPinnedBottomRows(g, S),
+ this.appendContent(g)
+ );
+ return O(d).parse();
+ }, f.prototype.processRow = function(d, g, S, O) {
+ var z = this, te = g.shouldRowBeSkipped || function() {
+ return !1;
+ }, Fe = this.gridOptionsWrapper, ze = Fe.getContext(), ht = Fe.getApi(), Lt = Fe.getColumnApi(), ti = Fe.isGroupRemoveSingleChildren(), wi = Fe.isGroupHideOpenParents(), Ti = Fe.isGroupRemoveLowestSingleChildren(), qi = this.columnModel.isPivotMode() ? O.leafGroup : !O.group, dr = g.skipGroups || g.skipRowGroups, kr = Ti && O.leafGroup, Rr = O.allChildrenCount === 1 && (ti || kr);
+ dr && g.skipGroups && ho.doOnce(function() {
+ return console.warn("AG Grid: Since v25.2 `skipGroups` has been renamed to `skipRowGroups`.");
+ }, "gridSerializer-skipGroups");
+ var Vr = { rowIndex: O.rowIndex, rowPinned: O.rowPinned };
+ if (!(!qi && (g.skipRowGroups || Rr || wi) || g.onlySelected && !O.isSelected() || g.rowNodes && !g.rowNodes.some(function(po) {
+ return z.rowPositionUtils.sameRow(po, Vr);
+ }) || g.skipPinnedTop && O.rowPinned === "top" || g.skipPinnedBottom && O.rowPinned === "bottom")) {
+ var An = O.level === -1;
+ if (!(An && !O.leafGroup)) {
+ var Js = te({ node: O, api: ht, columnApi: Lt, context: ze });
+ if (!Js) {
+ var Ya = d.onNewBodyRow();
+ if (S.forEach(function(po, El) {
+ Ya.onColumn(po, El, O);
+ }), g.getCustomContentBelowRow) {
+ var Xa = g.getCustomContentBelowRow({ node: O, api: ht, columnApi: Lt, context: ze });
+ Xa && d.addCustomContent(Xa);
+ }
+ }
+ }
+ }
+ }, f.prototype.appendContent = function(d) {
+ return function(g) {
+ var S = d.customFooter || d.appendContent;
+ return S && (d.customFooter && ho.doOnce(function() {
+ return console.warn("AG Grid: Since version 25.2.0 the `customFooter` param has been deprecated. Use `appendContent` instead.");
+ }, "gridSerializer-customFooter"), g.addCustomContent(S)), g;
+ };
+ }, f.prototype.prependContent = function(d) {
+ return function(g) {
+ var S = d.customHeader || d.prependContent;
+ return S && (d.customHeader && ho.doOnce(function() {
+ return console.warn("AG Grid: Since version 25.2.0 the `customHeader` param has been deprecated. Use `prependContent` instead.");
+ }, "gridSerializer-customHeader"), g.addCustomContent(S)), g;
+ };
+ }, f.prototype.prepareSession = function(d) {
+ return function(g) {
+ return g.prepare(d), g;
+ };
+ }, f.prototype.exportColumnGroups = function(d, g) {
+ var S = this;
+ return function(O) {
+ if (d.skipColumnGroupHeaders)
+ d.columnGroups && ho.doOnce(function() {
+ return console.warn("AG Grid: Since v25.2 the `columnGroups` param has deprecated, and groups are exported by default.");
+ }, "gridSerializer-columnGroups");
+ else {
+ var z = new W(), te = S.displayedGroupCreator.createDisplayedGroups(g, S.columnModel.getGridBalancedTree(), z, null);
+ S.recursivelyAddHeaderGroups(te, O, d.processGroupHeaderCallback);
+ }
+ return O;
+ };
+ }, f.prototype.exportHeaders = function(d, g) {
+ return function(S) {
+ if (!d.skipHeader && !d.skipColumnHeaders) {
+ var O = S.onNewHeaderRow();
+ g.forEach(function(z, te) {
+ O.onColumn(z, te, void 0);
+ });
+ } else
+ d.skipHeader && ho.doOnce(function() {
+ return console.warn("AG Grid: Since v25.2 the `skipHeader` param has been renamed to `skipColumnHeaders`.");
+ }, "gridSerializer-skipHeader");
+ return S;
+ };
+ }, f.prototype.processPinnedTopRows = function(d, g) {
+ var S = this;
+ return function(O) {
+ var z = S.processRow.bind(S, O, d, g);
+ return S.pinnedRowModel.forEachPinnedTopRow(z), O;
+ };
+ }, f.prototype.processRows = function(d, g) {
+ var S = this;
+ return function(O) {
+ var z = S.rowModel, te = z.getType(), Fe = te === Ue.ROW_MODEL_TYPE_CLIENT_SIDE, ze = te === Ue.ROW_MODEL_TYPE_SERVER_SIDE, ht = !Fe && d.onlySelected, Lt = S.processRow.bind(S, O, d, g);
+ if (S.columnModel.isPivotMode())
+ Fe ? z.forEachPivotNode(Lt) : z.forEachNode(Lt);
+ else if (d.onlySelectedAllPages || ht) {
+ var ti = S.selectionService.getSelectedNodes();
+ ti.forEach(Lt);
+ } else
+ Fe || ze ? z.forEachNodeAfterFilterAndSort(Lt) : z.forEachNode(Lt);
+ return O;
+ };
+ }, f.prototype.processPinnedBottomRows = function(d, g) {
+ var S = this;
+ return function(O) {
+ var z = S.processRow.bind(S, O, d, g);
+ return S.pinnedRowModel.forEachPinnedBottomRow(z), O;
+ };
+ }, f.prototype.getColumnsToExport = function(d, g) {
+ d === void 0 && (d = !1);
+ var S = this.columnModel.isPivotMode();
+ if (g && g.length)
+ return this.columnModel.getGridColumns(g);
+ if (d && !S) {
+ var O = this.gridOptionsWrapper.isTreeData() ? this.columnModel.getGridColumns([Ue.GROUP_AUTO_COLUMN_ID]) : [];
+ return O.concat(this.columnModel.getAllPrimaryColumns() || []);
+ }
+ return this.columnModel.getAllDisplayedColumns();
+ }, f.prototype.recursivelyAddHeaderGroups = function(d, g, S) {
+ var O = [];
+ d.forEach(function(z) {
+ var te = z;
+ te.getChildren && te.getChildren().forEach(function(Fe) {
+ return O.push(Fe);
+ });
+ }), d.length > 0 && d[0] instanceof Zt && this.doAddHeaderHeader(g, d, S), O && O.length > 0 && this.recursivelyAddHeaderGroups(O, g, S);
+ }, f.prototype.doAddHeaderHeader = function(d, g, S) {
+ var O = this, z = d.onNewHeaderGroupingRow(), te = 0;
+ g.forEach(function(Fe) {
+ var ze = Fe, ht;
+ S ? ht = S({
+ columnGroup: ze,
+ api: O.gridOptionsWrapper.getApi(),
+ columnApi: O.gridOptionsWrapper.getColumnApi(),
+ context: O.gridOptionsWrapper.getContext()
+ }) : ht = O.columnModel.getDisplayNameForColumnGroup(ze, "header");
+ var Lt = ze.getLeafColumns().reduce(function(ti, wi, Ti, qi) {
+ var dr = ho.last(ti), kr = wi.getColumnGroupShow() === "open";
+ return kr ? (!dr || dr[1] != null) && (dr = [Ti], ti.push(dr)) : dr && dr[1] == null && (dr[1] = Ti - 1), Ti === qi.length - 1 && dr && dr[1] == null && (dr[1] = Ti), ti;
+ }, []);
+ z.onColumn(ht || "", te++, ze.getLeafColumns().length - 1, Lt);
+ });
+ }, YL([
+ pe("displayedGroupCreator")
+ ], f.prototype, "displayedGroupCreator", void 0), YL([
+ pe("columnModel")
+ ], f.prototype, "columnModel", void 0), YL([
+ pe("rowModel")
+ ], f.prototype, "rowModel", void 0), YL([
+ pe("pinnedRowModel")
+ ], f.prototype, "pinnedRowModel", void 0), YL([
+ pe("selectionService")
+ ], f.prototype, "selectionService", void 0), YL([
+ pe("rowPositionUtils")
+ ], f.prototype, "rowPositionUtils", void 0), f = YL([
+ Ne("gridSerializer")
+ ], f), f;
+ }(ki)
+ ), ije = {
+ moduleName: t.ModuleNames.CsvExportModule,
+ beans: [eje, tje]
+ }, Tne = `\r
+`, n$t = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.createHeader = function(f) {
+ f === void 0 && (f = {});
+ var d = "", g = "?>", S = ["version"];
+ f.version || (f.version = "1.0"), f.encoding && S.push("encoding"), f.standalone && S.push("standalone");
+ var O = S.map(function(z) {
+ return z + '="' + f[z] + '"';
+ }).join(" ");
+ return d + "xml " + O + " " + g;
+ }, M.createXml = function(f, d) {
+ var g = this, S = "";
+ f.properties && (f.properties.prefixedAttributes && f.properties.prefixedAttributes.forEach(function(z) {
+ Object.keys(z.map).forEach(function(te) {
+ S += g.returnAttributeIfPopulated(z.prefix + te, z.map[te], d);
+ });
+ }), f.properties.rawMap && Object.keys(f.properties.rawMap).forEach(function(z) {
+ S += g.returnAttributeIfPopulated(z, f.properties.rawMap[z], d);
+ }));
+ var O = "<" + f.name + S;
+ return !f.children && f.textNode == null ? O + "/>" + Tne : f.textNode != null ? O + ">" + f.textNode + "" + f.name + ">" + Tne : (O += ">" + Tne, f.children && f.children.forEach(function(z) {
+ O += g.createXml(z, d);
+ }), O + "" + f.name + ">" + Tne);
+ }, M.returnAttributeIfPopulated = function(f, d, g) {
+ if (!d && d !== "" && d !== 0)
+ return "";
+ var S = d;
+ return typeof d == "boolean" && g && (S = g(d)), " " + f + '="' + S + '"';
+ }, M;
+ }()
+ ), s$t = function(M) {
+ var f = typeof Symbol == "function" && Symbol.iterator, d = f && M[f], g = 0;
+ if (d)
+ return d.call(M);
+ if (M && typeof M.length == "number")
+ return {
+ next: function() {
+ return M && g >= M.length && (M = void 0), { value: M && M[g++], done: !M };
+ }
+ };
+ throw new TypeError(f ? "Object is not iterable." : "Symbol.iterator is not defined.");
+ }, o$t = new Uint32Array([
+ 0,
+ 1996959894,
+ 3993919788,
+ 2567524794,
+ 124634137,
+ 1886057615,
+ 3915621685,
+ 2657392035,
+ 249268274,
+ 2044508324,
+ 3772115230,
+ 2547177864,
+ 162941995,
+ 2125561021,
+ 3887607047,
+ 2428444049,
+ 498536548,
+ 1789927666,
+ 4089016648,
+ 2227061214,
+ 450548861,
+ 1843258603,
+ 4107580753,
+ 2211677639,
+ 325883990,
+ 1684777152,
+ 4251122042,
+ 2321926636,
+ 335633487,
+ 1661365465,
+ 4195302755,
+ 2366115317,
+ 997073096,
+ 1281953886,
+ 3579855332,
+ 2724688242,
+ 1006888145,
+ 1258607687,
+ 3524101629,
+ 2768942443,
+ 901097722,
+ 1119000684,
+ 3686517206,
+ 2898065728,
+ 853044451,
+ 1172266101,
+ 3705015759,
+ 2882616665,
+ 651767980,
+ 1373503546,
+ 3369554304,
+ 3218104598,
+ 565507253,
+ 1454621731,
+ 3485111705,
+ 3099436303,
+ 671266974,
+ 1594198024,
+ 3322730930,
+ 2970347812,
+ 795835527,
+ 1483230225,
+ 3244367275,
+ 3060149565,
+ 1994146192,
+ 31158534,
+ 2563907772,
+ 4023717930,
+ 1907459465,
+ 112637215,
+ 2680153253,
+ 3904427059,
+ 2013776290,
+ 251722036,
+ 2517215374,
+ 3775830040,
+ 2137656763,
+ 141376813,
+ 2439277719,
+ 3865271297,
+ 1802195444,
+ 476864866,
+ 2238001368,
+ 4066508878,
+ 1812370925,
+ 453092731,
+ 2181625025,
+ 4111451223,
+ 1706088902,
+ 314042704,
+ 2344532202,
+ 4240017532,
+ 1658658271,
+ 366619977,
+ 2362670323,
+ 4224994405,
+ 1303535960,
+ 984961486,
+ 2747007092,
+ 3569037538,
+ 1256170817,
+ 1037604311,
+ 2765210733,
+ 3554079995,
+ 1131014506,
+ 879679996,
+ 2909243462,
+ 3663771856,
+ 1141124467,
+ 855842277,
+ 2852801631,
+ 3708648649,
+ 1342533948,
+ 654459306,
+ 3188396048,
+ 3373015174,
+ 1466479909,
+ 544179635,
+ 3110523913,
+ 3462522015,
+ 1591671054,
+ 702138776,
+ 2966460450,
+ 3352799412,
+ 1504918807,
+ 783551873,
+ 3082640443,
+ 3233442989,
+ 3988292384,
+ 2596254646,
+ 62317068,
+ 1957810842,
+ 3939845945,
+ 2647816111,
+ 81470997,
+ 1943803523,
+ 3814918930,
+ 2489596804,
+ 225274430,
+ 2053790376,
+ 3826175755,
+ 2466906013,
+ 167816743,
+ 2097651377,
+ 4027552580,
+ 2265490386,
+ 503444072,
+ 1762050814,
+ 4150417245,
+ 2154129355,
+ 426522225,
+ 1852507879,
+ 4275313526,
+ 2312317920,
+ 282753626,
+ 1742555852,
+ 4189708143,
+ 2394877945,
+ 397917763,
+ 1622183637,
+ 3604390888,
+ 2714866558,
+ 953729732,
+ 1340076626,
+ 3518719985,
+ 2797360999,
+ 1068828381,
+ 1219638859,
+ 3624741850,
+ 2936675148,
+ 906185462,
+ 1090812512,
+ 3747672003,
+ 2825379669,
+ 829329135,
+ 1181335161,
+ 3412177804,
+ 3160834842,
+ 628085408,
+ 1382605366,
+ 3423369109,
+ 3138078467,
+ 570562233,
+ 1426400815,
+ 3317316542,
+ 2998733608,
+ 733239954,
+ 1555261956,
+ 3268935591,
+ 3050360625,
+ 752459403,
+ 1541320221,
+ 2607071920,
+ 3965973030,
+ 1969922972,
+ 40735498,
+ 2617837225,
+ 3943577151,
+ 1913087877,
+ 83908371,
+ 2512341634,
+ 3803740692,
+ 2075208622,
+ 213261112,
+ 2463272603,
+ 3855990285,
+ 2094854071,
+ 198958881,
+ 2262029012,
+ 4057260610,
+ 1759359992,
+ 534414190,
+ 2176718541,
+ 4139329115,
+ 1873836001,
+ 414664567,
+ 2282248934,
+ 4279200368,
+ 1711684554,
+ 285281116,
+ 2405801727,
+ 4167216745,
+ 1634467795,
+ 376229701,
+ 2685067896,
+ 3608007406,
+ 1308918612,
+ 956543938,
+ 2808555105,
+ 3495958263,
+ 1231636301,
+ 1047427035,
+ 2932959818,
+ 3654703836,
+ 1088359270,
+ 936918e3,
+ 2847714899,
+ 3736837829,
+ 1202900863,
+ 817233897,
+ 3183342108,
+ 3401237130,
+ 1404277552,
+ 615818150,
+ 3134207493,
+ 3453421203,
+ 1423857449,
+ 601450431,
+ 3009837614,
+ 3294710456,
+ 1567103746,
+ 711928724,
+ 3020668471,
+ 3272380065,
+ 1510334235,
+ 755167117
+ ]), a$t = (
+ /** @class */
+ function() {
+ function M() {
+ }
+ return M.addFolders = function(f) {
+ f.forEach(this.addFolder.bind(this));
+ }, M.addFolder = function(f) {
+ this.folders.push({
+ path: f,
+ created: /* @__PURE__ */ new Date(),
+ isBase64: !1
+ });
+ }, M.addFile = function(f, d, g) {
+ g === void 0 && (g = !1), this.files.push({
+ path: f,
+ created: /* @__PURE__ */ new Date(),
+ content: d,
+ isBase64: g
+ });
+ }, M.getContent = function(f) {
+ f === void 0 && (f = "application/zip");
+ var d = this.buildFileStream(), g = this.buildUint8Array(d);
+ return this.clearStream(), new Blob([g], { type: f });
+ }, M.clearStream = function() {
+ this.folders = [], this.files = [];
+ }, M.buildFileStream = function(f) {
+ var d, g;
+ f === void 0 && (f = "");
+ var S = this.folders.concat(this.files), O = S.length, z = "", te = 0, Fe = 0;
+ try {
+ for (var ze = s$t(S), ht = ze.next(); !ht.done; ht = ze.next()) {
+ var Lt = ht.value, ti = this.getHeader(Lt, te), wi = ti.fileHeader, Ti = ti.folderHeader, qi = ti.content;
+ te += wi.length + qi.length, Fe += Ti.length, f += wi + qi, z += Ti;
+ }
+ } catch (kr) {
+ d = { error: kr };
+ } finally {
+ try {
+ ht && !ht.done && (g = ze.return) && g.call(ze);
+ } finally {
+ if (d)
+ throw d.error;
+ }
+ }
+ var dr = this.buildFolderEnd(O, Fe, te);
+ return f + z + dr;
+ }, M.getHeader = function(f, d) {
+ var g = f.content, S = f.path, O = f.created, z = f.isBase64, te = ho.utf8_encode, Fe = ho.decToHex, ze = te(S), ht = ze !== S, Lt = this.convertTime(O), ti = this.convertDate(O), wi = "";
+ if (ht) {
+ var Ti = Fe(1, 1) + Fe(this.getFromCrc32Table(ze), 4) + ze;
+ wi = "up" + Fe(Ti.length, 2) + Ti;
+ }
+ var qi = g ? this.getConvertedContent(g, z) : { size: 0, content: "" }, dr = qi.size, kr = qi.content, Rr = `
+\0` + (ht ? "\0\b" : "\0\0") + "\0\0" + Fe(Lt, 2) + // last modified time
+ Fe(ti, 2) + // last modified date
+ Fe(dr ? this.getFromCrc32Table(kr) : 0, 4) + Fe(dr, 4) + // compressed size
+ Fe(dr, 4) + // uncompressed size
+ Fe(ze.length, 2) + // file name length
+ Fe(wi.length, 2), Vr = "PK" + Rr + ze + wi, An = "PK\0" + Rr + // file header
+ "\0\0\0\0\0\0" + (g ? "\0\0\0\0" : "\0\0\0") + // external file attributes
+ Fe(d, 4) + // relative offset of local header
+ ze + // file name
+ wi;
+ return { fileHeader: Vr, folderHeader: An, content: kr || "" };
+ }, M.getConvertedContent = function(f, d) {
+ return d === void 0 && (d = !1), d && (f = f.split(";base64,")[1]), f = d ? atob(f) : f, {
+ size: f.length,
+ content: f
+ };
+ }, M.buildFolderEnd = function(f, d, g) {
+ var S = ho.decToHex;
+ return "PK\0\0\0\0" + S(f, 2) + // total number of entries in the central folder
+ S(f, 2) + // total number of entries in the central folder
+ S(d, 4) + // size of the central folder
+ S(g, 4) + // central folder start offset
+ "\0\0";
+ }, M.buildUint8Array = function(f) {
+ for (var d = new Uint8Array(f.length), g = 0; g < d.length; g++)
+ d[g] = f.charCodeAt(g);
+ return d;
+ }, M.getFromCrc32Table = function(f) {
+ if (!f.length)
+ return 0;
+ for (var d = f.length, g = new Uint8Array(d), S = 0; S < d; S++)
+ g[S] = f.charCodeAt(S);
+ for (var O = -1, z = 0, te = 0, Fe = 0, S = 0; S < d; S++)
+ z = g[S], te = (O ^ z) & 255, Fe = o$t[te], O = O >>> 8 ^ Fe;
+ return O ^ -1;
+ }, M.convertTime = function(f) {
+ var d = f.getHours();
+ return d <<= 6, d = d | f.getMinutes(), d <<= 5, d = d | f.getSeconds() / 2, d;
+ }, M.convertDate = function(f) {
+ var d = f.getFullYear() - 1980;
+ return d <<= 4, d = d | f.getMonth() + 1, d <<= 5, d = d | f.getDate(), d;
+ }, M.folders = [], M.files = [], M;
+ }()
+ );
+ si.register(W6t, !1), si.register(Q6t, !1), si.register(ije, !1), t.AbstractHeaderCellCtrl = GC, t.AgAbstractField = mf, t.AgAngleSelect = aVe, t.AgCheckbox = hA, t.AgColorPicker = lVe, t.AgDialog = O_e, t.AgGroupComponent = uVe, t.AgInputNumberField = nVe, t.AgInputRange = sVe, t.AgInputTextArea = rVe, t.AgInputTextField = A_e, t.AgMenuItemComponent = I9, t.AgMenuList = pVe, t.AgMenuPanel = fVe, t.AgPanel = P_e, t.AgPromise = Pm, t.AgRadioButton = tVe, t.AgSelect = Kx, t.AgSlider = oVe, t.AgStackComponentsRegistry = Lr, t.AgToggleButton = iVe, t.AlignedGridsService = _Ve, t.AnimateShowChangeCellRenderer = Xb, t.AnimateSlideCellRenderer = Gt, t.AnimationFrameService = zC, t.AutoScrollService = xH, t.AutoWidthCalculator = WL, t.Autowired = pe, t.BaseComponentWrapper = I6t, t.BaseCreator = KVe, t.BaseGridSerializingSession = JVe, t.Bean = Ne, t.BeanStub = ki, t.Beans = J8, t.BodyDropPivotTarget = HH, t.BodyDropTarget = jL, t.CellComp = m9, t.CellCtrl = vo, t.CellNavigationService = vVe, t.CellPositionUtils = VVe, t.ChangedPath = ane, t.CheckboxSelectionComponent = Ku, t.ColDefUtil = _r, t.Color = os, t.Column = H, t.ColumnApi = wVe, t.ColumnFactory = Ki, t.ColumnGroup = Zt, t.ColumnKeyCreator = x, t.ColumnModel = ss, t.ColumnUtils = pd, t.Component = ba, t.ComponentUtil = pi, t.Constants = Ue, t.Context = wt, t.CssClassApplier = g9, t.CssClassManager = W0, t.CsvCreator = eje, t.CsvExportModule = ije, t.CtrlsService = zVe, t.CustomTooltipFeature = Wg, t.DateFilter = TC, t.DisplayedGroupCreator = ii, t.Downloader = ZVe, t.DragAndDropService = fg, t.DragService = vL, t.Environment = NVe, t.EventService = mt, t.Events = ui, t.ExpressionService = CVe, t.FilterManager = gH, t.FloatingFilterMapper = mH, t.FocusService = A9, t.Grid = T6t, t.GridApi = _9, t.GridBodyComp = Gre, t.GridBodyCtrl = TH, t.GridComp = PVe, t.GridCoreCreator = WVe, t.GridCtrl = AVe, t.GridHeaderComp = Np, t.GridHeaderCtrl = Fn, t.GridOptionsWrapper = jn, t.GridSerializer = tje, t.GroupCellRenderer = G8, t.GroupCellRendererCtrl = oA, t.GroupInstanceIdCreator = W, t.HeaderCellCtrl = U, t.HeaderFilterCellComp = W8, t.HeaderFilterCellCtrl = ZH, t.HeaderGroupCellCtrl = we, t.HeaderNavigationService = Or, t.HeaderPositionUtils = GVe, t.HeaderRowComp = XH, t.HeaderRowContainerComp = Ci, t.HeaderRowContainerCtrl = ai, t.HeaderRowCtrl = Ze, t.HorizontalResizeService = ku, t.KeyCode = Hr, t.LargeTextCellEditor = Qx, t.Logger = pne, t.LoggerFactory = IVe, t.ManagedFocusFeature = R1, t.ModuleRegistry = si, t.MouseEventService = BL, t.MoveColumnFeature = WH, t.NavigationService = p9, t.NumberFilter = z3, t.NumberSequence = Hv, t.Optional = Ae, t.PaginationProxy = ZBe, t.PinnedRowModel = KBe, t.PopupComponent = Zx, t.PopupEditorWrapper = f9, t.PopupSelectCellEditor = Yg, t.PopupService = gVe, t.PopupTextCellEditor = K3, t.PositionableFeature = HL, t.PostConstruct = ct, t.PreConstruct = le, t.PreDestroy = gt, t.PropertyKeys = Pi, t.ProvidedColumnGroup = Jt, t.ProvidedFilter = wC, t.Qualifier = yt, t.QuerySelector = O8, t.RefSelector = qr, t.ResizeObserverService = Qv, t.RowContainerComp = VL, t.RowContainerCtrl = sR, t.RowCtrl = Jb, t.RowNode = oi, t.RowNodeBlock = lne, t.RowNodeBlockLoader = JBe, t.RowNodeSorter = UVe, t.RowPositionUtils = BVe, t.RowRenderer = one, t.ScalarFilter = $s, t.ScrollVisibleService = GH, t.SelectCellEditor = qv, t.SelectableService = $Ve, t.SelectionService = bVe, t.SetLeftFeature = cR, t.SimpleFilter = Th, t.SortController = OVe, t.StandardMenuFactory = vf, t.StylingService = eVe, t.TabGuardComp = sW, t.TabGuardCtrl = hVe, t.TabbedLayout = au, t.TemplateService = TVe, t.TextCellEditor = Er, t.TextFilter = Om, t.TextFloatingFilter = mL, t.Timer = F3, t.TouchListener = pg, t.UserComponentFactory = eR, t.UserComponentRegistry = q0, t.ValueCache = MVe, t.ValueFormatterService = Hh, t.ValueService = xVe, t.VanillaFrameworkOverrides = yVe, t.VirtualList = hkt, t.XmlFactory = n$t, t.ZipContainer = a$t, t._ = ho, t.defaultGroupComparator = E6t, t.getRowContainerTypeForName = u9, t.simpleHttpRequest = dh, t.stringToArray = fs;
+})(NS);
+var mZ = globalThis && globalThis.__assign || function() {
+ return mZ = Object.assign || function(t) {
+ for (var e, i = 1, r = arguments.length; i < r; i++) {
+ e = arguments[i];
+ for (var n in e)
+ Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);
+ }
+ return t;
+ }, mZ.apply(this, arguments);
+}, t1r = globalThis && globalThis.__spreadArrays || function() {
+ for (var t = 0, e = 0, i = arguments.length; e < i; e++)
+ t += arguments[e].length;
+ for (var r = Array(t), n = 0, e = 0; e < i; e++)
+ for (var s = arguments[e], o = 0, a = s.length; o < a; o++, n++)
+ r[n] = s[o];
+ return r;
+}, YFt = (
+ /** @class */
+ function() {
+ function t() {
+ }
+ return t.getComponentDefinition = function(e, i) {
+ var r;
+ return typeof e == "string" ? r = this.searchForComponentInstance(i, e) : r = { extends: Kr(mZ({}, e)) }, r || console.error("Could not find component with name of " + e + ". Is it in Vue.components?"), r.extends ? (r.extends.setup && (r.setup = r.extends.setup), r.extends.props = this.addParamsToProps(r.extends.props)) : r.props = this.addParamsToProps(r.props), r;
+ }, t.addParamsToProps = function(e) {
+ return !e || Array.isArray(e) && e.indexOf("params") === -1 ? e = t1r(["params"], e || []) : typeof e == "object" && !e.params && (e.params = {
+ type: Object
+ }), e;
+ }, t.createAndMountComponent = function(e, i, r) {
+ var n = t.getComponentDefinition(e, r);
+ if (n) {
+ var s = this.mount(n, { params: Object.freeze(i) }, r), o = s.vNode, a = s.destroy, l = s.el;
+ return {
+ componentInstance: o.component.proxy,
+ element: l,
+ destroy: a
+ };
+ }
+ }, t.mount = function(e, i, r) {
+ var n = Dn(e, i);
+ n.appContext = r.$.appContext, n.appContext.provides = mZ(mZ({}, n.appContext.provides ? n.appContext.provides : {}), r.$parent.$options.provide ? r.$parent.$options.provide : {});
+ var s = document.createElement("div");
+ OS(n, s);
+ var o = function() {
+ s && OS(null, s), s = null, n = null;
+ };
+ return { vNode: n, destroy: o, el: s };
+ }, t.searchForComponentInstance = function(e, i, r, n) {
+ r === void 0 && (r = 10), n === void 0 && (n = !1);
+ for (var s = null, o = e.$parent, a = 0; !s && o && o.$options && ++a < r; ) {
+ var l = o;
+ s = l.$options && l.$options.components ? l.$options.components[i] : null, o = o.$parent;
+ }
+ if (!s) {
+ var c = e.$.appContext.components;
+ c && c[i] && (s = c[i]);
+ }
+ return !s && !n ? (console.error("Could not find component with name of " + i + ". Is it in Vue.components?"), null) : s;
+ }, t;
+ }()
+), yot = globalThis && globalThis.__extends || function() {
+ var t = function(e, i) {
+ return t = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, n) {
+ r.__proto__ = n;
+ } || function(r, n) {
+ for (var s in n)
+ Object.prototype.hasOwnProperty.call(n, s) && (r[s] = n[s]);
+ }, t(e, i);
+ };
+ return function(e, i) {
+ t(e, i);
+ function r() {
+ this.constructor = e;
+ }
+ e.prototype = i === null ? Object.create(i) : (r.prototype = i.prototype, new r());
+ };
+}(), i1r = (
+ /** @class */
+ function(t) {
+ yot(e, t);
+ function e(i) {
+ var r = t.call(this) || this;
+ return r.parent = i, r;
+ }
+ return e.prototype.createWrapper = function(i) {
+ var r = this, n = (
+ /** @class */
+ function(o) {
+ yot(a, o);
+ function a() {
+ return o !== null && o.apply(this, arguments) || this;
+ }
+ return a.prototype.init = function(l) {
+ o.prototype.init.call(this, l);
+ }, a.prototype.hasMethod = function(l) {
+ return s.getFrameworkComponentInstance()[l] != null;
+ }, a.prototype.callMethod = function(l, c) {
+ var h = this.getFrameworkComponentInstance(), p = s.getFrameworkComponentInstance();
+ return p[l].apply(h, c);
+ }, a.prototype.addMethod = function(l, c) {
+ s[l] = c;
+ }, a.prototype.overrideProcessing = function(l) {
+ return r.parent.autoParamsRefresh && l === "refresh";
+ }, a.prototype.processMethod = function(l, c) {
+ return l === "refresh" && (this.getFrameworkComponentInstance().params = c[0]), this.hasMethod(l) ? this.callMethod(l, c) : l === "refresh";
+ }, a.prototype.createComponent = function(l) {
+ return r.createComponent(i, l);
+ }, a;
+ }(r1r)
+ ), s = new n();
+ return s;
+ }, e.prototype.createComponent = function(i, r) {
+ return YFt.createAndMountComponent(i, r, this.parent);
+ }, e.prototype.createMethodProxy = function(i, r, n) {
+ return function() {
+ return i.overrideProcessing(r) ? i.processMethod(r, arguments) : i.hasMethod(r) ? i.callMethod(r, arguments) : (n && console.warn("AG Grid: Framework component is missing the method " + r + "()"), null);
+ };
+ }, e.prototype.destroy = function() {
+ this.parent = null;
+ }, e;
+ }(NS.BaseComponentWrapper)
+), r1r = (
+ /** @class */
+ function() {
+ function t() {
+ }
+ return t.prototype.getGui = function() {
+ return this.element;
+ }, t.prototype.destroy = function() {
+ this.getFrameworkComponentInstance() && typeof this.getFrameworkComponentInstance().destroy == "function" && this.getFrameworkComponentInstance().destroy(), this.unmount();
+ }, t.prototype.getFrameworkComponentInstance = function() {
+ return this.componentInstance;
+ }, t.prototype.init = function(e) {
+ var i = this.createComponent(e), r = i.componentInstance, n = i.element, s = i.destroy;
+ this.componentInstance = r, this.unmount = s, this.element = n.firstElementChild;
+ }, t;
+ }()
+), n1r = function(t) {
+ return t.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
+}, s1r = function(t) {
+ return "on" + t.charAt(0).toUpperCase() + t.substring(1, t.length);
+}, o1r = function() {
+ var t = {}, e = NS.ComponentUtil.PUBLIC_EVENTS.map(function(r) {
+ return s1r(n1r(r));
+ });
+ e.forEach(function(r) {
+ return t[r] = void 0;
+ });
+ var i = {};
+ return NS.ComponentUtil.ALL_PROPERTIES.filter(function(r) {
+ return r != "gridOptions";
+ }).forEach(function(r) {
+ t[r] = {}, i[r] = {
+ handler: function(n, s) {
+ this.processChanges(r, n, s);
+ },
+ deep: r !== "popupParent" && r !== "context"
+ };
+ }), [t, i];
+}, vot = (
+ /** @class */
+ function() {
+ function t() {
+ }
+ return t.hasChildColumns = function(e) {
+ return e && e.default && e.default.length > 0;
+ }, t.mapChildColumnDefs = function(e) {
+ return e.default.map(function(i) {
+ return t.toColDef(i);
+ });
+ }, t.toColDef = function(e) {
+ var i = t.createColDefFromGridColumn(e);
+ return e.children && e.children.length > 0 && (i.children = t.getChildColDefs(e.children)), i;
+ }, t.getChildColDefs = function(e) {
+ return e.map(function(i) {
+ return t.createColDefFromGridColumn(i);
+ });
+ }, t.createColDefFromGridColumn = function(e) {
+ var i = {};
+ return Object.assign(i, e.data.attrs), delete i.children, NS.ColDefUtil.BOOLEAN_PROPERTIES.forEach(function(r) {
+ var n = i;
+ n[r] === "" && (n[r] = !0);
+ }), i;
+ }, t;
+ }()
+), a1r = globalThis && globalThis.__extends || function() {
+ var t = function(e, i) {
+ return t = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(r, n) {
+ r.__proto__ = n;
+ } || function(r, n) {
+ for (var s in n)
+ Object.prototype.hasOwnProperty.call(n, s) && (r[s] = n[s]);
+ }, t(e, i);
+ };
+ return function(e, i) {
+ t(e, i);
+ function r() {
+ this.constructor = e;
+ }
+ e.prototype = i === null ? Object.create(i) : (r.prototype = i.prototype, new r());
+ };
+}(), l1r = (
+ /** @class */
+ function(t) {
+ a1r(e, t);
+ function e(i) {
+ var r = t.call(this) || this;
+ return r.parent = i, r;
+ }
+ return e.prototype.frameworkComponent = function(i) {
+ return YFt.searchForComponentInstance(this.parent, i, 10, !0) ? i : null;
+ }, e.prototype.isFrameworkComponent = function(i) {
+ return typeof i == "object";
+ }, e;
+ }(NS.VanillaFrameworkOverrides)
+), vme = globalThis && globalThis.__assign || function() {
+ return vme = Object.assign || function(t) {
+ for (var e, i = 1, r = arguments.length; i < r; i++) {
+ e = arguments[i];
+ for (var n in e)
+ Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);
+ }
+ return t;
+ }, vme.apply(this, arguments);
+}, u1r = ["rowDataChanged", "rowDataUpdated", "cellValueChanged", "rowValueChanged"], _ot = "onUpdate:modelValue", c1r = "update:modelValue", XFt = o1r(), h1r = XFt[0], d1r = XFt[1], p1r = Kr({
+ render: function() {
+ return JS("div");
+ },
+ props: vme({ gridOptions: {
+ type: Object,
+ default: function() {
+ return {};
+ }
+ }, autoParamsRefresh: {
+ type: Boolean,
+ default: function() {
+ return !1;
+ }
+ }, componentDependencies: {
+ type: Array,
+ default: function() {
+ return [];
+ }
+ }, plugins: [], modules: {
+ type: Array,
+ default: function() {
+ return [];
+ }
+ }, modelValue: {
+ type: Array,
+ default: void 0,
+ required: !1
+ } }, h1r),
+ data: function() {
+ return {
+ gridCreated: !1,
+ isDestroyed: !1,
+ gridReadyFired: !1,
+ emitRowModel: void 0
+ };
+ },
+ watch: vme({ modelValue: {
+ handler: function(t, e) {
+ this.processChanges("rowData", t, e);
+ },
+ deep: !0
+ } }, d1r),
+ methods: {
+ globalEventListener: function(t, e) {
+ this.isDestroyed || (t === "gridReady" && (this.gridReadyFired = !0), this.updateModelIfUsed(t));
+ },
+ processChanges: function(t, e, i) {
+ if (this.gridCreated) {
+ if (this.skipChange(t, e, i))
+ return;
+ var r = {};
+ r[t] = {
+ // decouple the row data - if we don't when the grid changes row data directly that'll trigger this component to react to rowData changes,
+ // which can reset grid state (ie row selection)
+ currentValue: t === "rowData" ? Object.isFrozen(e) ? e : ya(eo(e)) : e,
+ previousValue: i
+ }, NS.ComponentUtil.processOnChange(r, this.gridOptions, this.gridOptions.api, this.gridOptions.columnApi);
+ }
+ },
+ checkForBindingConflicts: function() {
+ var t = this;
+ (t.rowData || this.gridOptions.rowData) && t.modelValue && console.warn("AG Grid: Using both rowData and v-model. rowData will be ignored.");
+ },
+ getRowData: function() {
+ var t = [];
+ return this.gridOptions.api.forEachNode(function(e) {
+ t.push(e.data);
+ }), t;
+ },
+ updateModelIfUsed: function(t) {
+ this.gridReadyFired && this.$attrs[_ot] && u1r.indexOf(t) !== -1 && this.emitRowModel && this.emitRowModel();
+ },
+ getRowDataBasedOnBindings: function() {
+ var t = this, e = t.modelValue;
+ return e || (t.rowData ? t.rowData : t.gridOptions.rowData);
+ },
+ /*
+ * Prevents an infinite loop when using v-model for the rowData
+ */
+ skipChange: function(t, e, i) {
+ if (this.gridReadyFired && t === "rowData" && this.$attrs[_ot]) {
+ if (e === i)
+ return !0;
+ if (e && i) {
+ var r = e, n = i;
+ if (r.length === n.length) {
+ for (var s = 0; s < r.length; s++)
+ if (r[s] !== n[s])
+ return !1;
+ return !0;
+ }
+ }
+ }
+ return !1;
+ },
+ debounce: function(t, e) {
+ var i;
+ return function() {
+ var r = function() {
+ t();
+ };
+ window.clearTimeout(i), i = window.setTimeout(r, e);
+ };
+ }
+ },
+ mounted: function() {
+ var t = this;
+ this.emitRowModel = this.debounce(function() {
+ t.$emit(c1r, Object.freeze(t.getRowData()));
+ }, 20);
+ var e = new i1r(this), i = ya(NS.ComponentUtil.copyAttributesToGridOptions(eo(this.gridOptions), this));
+ this.checkForBindingConflicts();
+ var r = this.getRowDataBasedOnBindings();
+ i.rowData = r && (Object.isFrozen(r) ? r : ya(eo(r))), vot.hasChildColumns(this.$slots) && (i.columnDefs = vot.mapChildColumnDefs(this.$slots));
+ var n = {
+ globalEventListener: this.globalEventListener.bind(this),
+ frameworkOverrides: new l1r(this),
+ providedBeanInstances: {
+ frameworkComponentWrapper: e
+ },
+ modules: this.modules
+ };
+ new NS.Grid(this.$el, i, n), this.gridCreated = !0;
+ },
+ unmounted: function() {
+ this.gridCreated && (this.gridOptions.api && this.gridOptions.api.destroy(), this.isDestroyed = !0);
+ }
+});
+const f1r = /* @__PURE__ */ Dt("div", { class: "flex p-8" }, [
+ /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ fit: "",
+ height: "24px",
+ width: "24px",
+ preserveAspectRatio: "xMidYMid meet",
+ viewBox: "0 0 24 24",
+ focusable: "false",
+ class: "inline mr-1 fill-current"
+ }, [
+ /* @__PURE__ */ Dt("g", { id: "format-list-checks_cache966" }, [
+ /* @__PURE__ */ Dt("path", { d: "M3,5H9V11H3V5M5,7V9H7V7H5M11,7H21V9H11V7M11,15H21V17H11V15M5,20L1.5,16.5L2.91,15.09L5,17.17L9.59,12.59L11,14L5,20Z" })
+ ])
+ ])
+], -1), m1r = ["onClick"], g1r = { class: "md-icon-small inline" }, y1r = {
+ key: 0,
+ height: "18",
+ width: "18",
+ viewBox: "0 0 24 24",
+ class: "inline float-right"
+}, v1r = /* @__PURE__ */ Dt("g", { id: "done" }, [
+ /* @__PURE__ */ Dt("path", { d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z" })
+], -1), _1r = [
+ v1r
+], b1r = /* @__PURE__ */ Kr({
+ __name: "column-dropdown",
+ props: {
+ columnDefs: { type: Object, required: !0 },
+ columnApi: { type: Object },
+ systemCols: { type: Object }
+ },
+ setup(t) {
+ const e = Ys("iApi"), { t: i } = Xn();
+ return (r, n) => {
+ const s = Bo("dropdown-menu");
+ return qt(), In(s, {
+ class: "relative",
+ position: "bottom-end",
+ tooltip: gi(i)("grid.label.columns"),
+ "tooltip-placement": "bottom",
+ centered: !1
+ }, {
+ header: Sn(() => [
+ f1r
+ ]),
+ default: Sn(() => [
+ (qt(!0), li(Ws, null, nu(t.columnDefs.filter(
+ (o) => o.headerName && o.headerName.length > 0 && !(!gi(e).ui.exposeOids && t.systemCols?.has(o.headerName)) && !(!gi(e).ui.exposeMeasurements && (t.systemCols?.has(o.headerName) || t.systemCols?.has(o.field)))
+ ), (o) => (qt(), li("a", {
+ key: o.headerName,
+ onClick: (a) => {
+ t.columnApi?.setColumnVisible(o.field, o.hide), o.hide = !o.hide, r.$emit("refreshHeaders");
+ },
+ href: "javascript:;",
+ class: "flex leading-snug items-center w-256"
+ }, [
+ Dt("div", g1r, [
+ qs(vr(o.headerName) + " ", 1),
+ o.hide ? Xr("", !0) : (qt(), li("svg", y1r, _1r))
+ ])
+ ], 8, m1r))), 128))
+ ]),
+ _: 1
+ }, 8, ["tooltip"]);
+ };
+ }
+}), w1r = ".ag-root", x1r = ".ag-header-viewport .ag-header-row";
+class bot {
+ element;
+ agGrid;
+ headerRows;
+ agGridApi;
+ agColumnApi;
+ mousedown = !1;
+ /**
+ * Triggered by ag-grid whenever a key is pressed on a focused/active cell.
+ * For our use case we open a new browser tab (or window, it's based on the users browser settings)
+ * for each href attribute found in the cell content when the 'Enter' key is pressed.
+ *
+ * Note that for security/performance purposes some browsers limit the number
+ * of tabs that can be opened to one. The user can disable this limitation by
+ * allowing popups from the website hosting a ramp map (shows up as an icon in the url bar of chrome,
+ * other browser may vary).
+ */
+ static onCellKeyPress({ event: e }) {
+ function i(r) {
+ r.forEach((n) => {
+ n.href && window.open(n.href), n.childNodes.length > 0 && i(n.childNodes);
+ });
+ }
+ e.key == "Enter" && i(e.target.childNodes);
+ }
+ /**
+ * Initializes focus lists and listeners for grid keyboard navigation.
+ *
+ * @param {HTMLElement} element The grid element
+ * @param {GridApi} agGridApi The ag-grid grid api
+ * @param {ColumnApi} agColumnApi The ag-grid column api
+ */
+ constructor(e, i, r) {
+ this.element = e, this.agGridApi = i, this.agColumnApi = r, this.agGrid = this.element.querySelector(w1r), this.headerRows = Array.prototype.slice.call(
+ this.element.querySelectorAll(x1r)
+ ), this.element.querySelector(".ag-body-horizontal-scroll-viewport")?.setAttribute("tabindex", "-1"), this.initAccessibilityListeners(), this.initScrollListeners();
+ }
+ /**
+ * Set up the listeners for the grid
+ */
+ initAccessibilityListeners() {
+ Array.prototype.slice.call(
+ this.headerRows[0].querySelectorAll(".ag-header-cell")
+ ).forEach((i, r) => {
+ if (r < 3)
+ return;
+ const n = Array.prototype.slice.call(
+ i.querySelectorAll("button")
+ );
+ i.addEventListener("keydown", (s) => {
+ this.cellKeydownHandler(s, i, n);
+ }), i.addEventListener("blur", (s) => {
+ this.cellBlurHandler(s, i, n);
+ }), n[n.length - 1].addEventListener(
+ "keydown",
+ (s) => {
+ this.cellButtonTabHandler(s, i, n, !1);
+ }
+ ), n[0].addEventListener("keydown", (s) => {
+ this.cellButtonTabHandler(s, i, n, !0);
+ });
+ });
+ }
+ /**
+ * Remove all accessibility listeners from the grid
+ */
+ removeAccessibilityListeners() {
+ Array.prototype.slice.call(
+ this.headerRows[0].querySelectorAll(".ag-header-cell")
+ ).forEach((i, r) => {
+ if (r < 3)
+ return;
+ const n = Array.prototype.slice.call(
+ i.querySelectorAll("button")
+ );
+ i.removeEventListener("keydown", (s) => {
+ this.cellKeydownHandler(s, i, n);
+ }), i.removeEventListener("blur", (s) => {
+ this.cellBlurHandler(s, i, n);
+ }), n[n.length - 1].removeEventListener(
+ "keydown",
+ (s) => {
+ this.cellButtonTabHandler(s, i, n, !1);
+ }
+ ), n[0].removeEventListener(
+ "keydown",
+ (s) => {
+ this.cellButtonTabHandler(s, i, n, !0);
+ }
+ );
+ });
+ }
+ /**
+ * Makes `enter` allow navigation within the cell
+ *
+ * @param {KeyboardEvent} event The event to handle
+ * @param {HTMLElement} cell The grid header cell
+ * @param {HTMLElement[]} buttons The list of buttons in the cell
+ */
+ cellKeydownHandler(e, i, r) {
+ e.key === "Enter" && e.target === i && (e.preventDefault(), r.forEach((n) => {
+ n.setAttribute("tabindex", "0");
+ }), r[0].focus());
+ }
+ /**
+ * Removes ability to tab to inner items when focus leaves the cell (and inner items)
+ *
+ * @param {FocusEvent} event The event to handle
+ * @param {HTMLElement} cell The grid header cell
+ * @param {HTMLElement[]} buttons The list of buttons in the cell
+ */
+ cellBlurHandler(e, i, r) {
+ e.target === i && !r.includes(e.relatedTarget) && r.forEach((n) => {
+ n.setAttribute("tabindex", "-1");
+ });
+ }
+ /**
+ * Handles giving focus back to the cell after shift+tabbing on the first inner item or tabbing on the last
+ *
+ * @param event The event to handle
+ * @param cell The grid header cell
+ * @param buttons The list of buttons in the cell
+ * @param shift Whether to handle shift tab or regular tab
+ */
+ cellButtonTabHandler(e, i, r, n) {
+ e.key === "Tab" && (n && e.shiftKey || !n && !e.shiftKey) && (e.preventDefault(), i.focus(), r.forEach((s) => {
+ s.setAttribute("tabindex", "-1");
+ }));
+ }
+ // **** CLICK & DRAG SCROLLING ****
+ /**
+ * Initializes the handlers needed for click + drag scrolling
+ */
+ initScrollListeners() {
+ this.agGrid.style.cursor = "grab", this.agGrid.addEventListener("mousedown", (e) => {
+ this.scrollMouseDownHandler(e);
+ });
+ }
+ /**
+ * Removes the handlers for click + drag scrolling
+ */
+ removeScrollListeners() {
+ this.agGrid.style.cursor = "default", this.agGrid.removeEventListener("mousedown", (e) => {
+ this.scrollMouseDownHandler(e);
+ });
+ }
+ /**
+ * Handles starting click + drag scrolling on mousedown
+ *
+ * @param {MouseEvent} event The mousedown event
+ */
+ scrollMouseDownHandler(e) {
+ const i = this.element.querySelector(
+ ".ag-body-horizontal-scroll-viewport"
+ ), r = i.scrollLeft, n = e.clientX;
+ this.agGrid.style.cursor = "grabbing";
+ const s = (a) => {
+ const l = a.clientX - n;
+ i.scrollLeft = r - l;
+ }, o = () => {
+ this.agGrid.style.cursor = "grab", this.agGrid.removeEventListener(
+ "mousemove",
+ s
+ ), this.agGrid.removeEventListener("mouseup", o), this.agGrid.removeEventListener("mouseleave", o);
+ };
+ this.agGrid.addEventListener("mousemove", s), this.agGrid.addEventListener("mouseup", o), this.agGrid.addEventListener("mouseleave", o);
+ }
+}
+function S1r(t) {
+ const e = t.previousHeaderPosition.column, i = t.previousHeaderPosition.headerRowIndex;
+ let r = t.backwards ? i - 1 : i + 1;
+ return r === -1 ? null : (r === t.headerRowCount && (r = -1), { headerRowIndex: r, column: e });
+}
+function C1r(t) {
+ return t.backwards ? { column: t.previousCellPosition.column, rowIndex: -1 } : null;
+}
+const T1r = (t) => (Pc("data-v-81f67cc1"), t = t(), Oc(), t), E1r = { class: "h-full flex items-center justify-center" }, I1r = ["placeholder", "aria-label", "disabled"], A1r = /* @__PURE__ */ T1r(() => /* @__PURE__ */ Dt("span", { class: "w-12" }, null, -1)), P1r = ["placeholder", "aria-label", "disabled"], O1r = {
+ methods: {
+ onParentModelChanged() {
+ }
+ }
+}, R1r = /* @__PURE__ */ Kr({
+ ...O1r,
+ __name: "custom-number-filter",
+ props: ["params"],
+ setup(t) {
+ const e = t, i = V0(), { t: r } = Xn(), n = Si(""), s = Si(""), o = Si(
+ e.params.stateManager.columns[e.params.column.colDef.field].filter.static
+ ), a = () => {
+ n.value = n.value !== "" && !isNaN(n.value) ? n.value : null, e.params.parentFilterInstance((h) => {
+ c(h), e.params.stateManager.setColumnFilterValue(
+ e.params.column.colDef.field,
+ n.value,
+ "min"
+ );
+ });
+ }, l = () => {
+ s.value = s.value !== "" && !isNaN(s.value) ? s.value : null, e.params.parentFilterInstance((h) => {
+ c(h), e.params.stateManager.setColumnFilterValue(
+ e.params.column.colDef.field,
+ s.value,
+ "max"
+ );
+ });
+ }, c = (h) => {
+ (isNaN(n.value) || n.value === null) && (n.value = ""), (isNaN(s.value) || s.value === null) && (s.value = ""), s.value !== "" && n.value !== "" ? h.setModel({
+ filterType: "number",
+ type: "inRange",
+ filter: n.value,
+ filterTo: s.value
+ }) : n.value === "" ? h.setModel({
+ filterType: "number",
+ type: "lessThanOrEqual",
+ filter: s.value
+ }) : s.value === "" ? h.setModel({
+ filterType: "number",
+ type: "greaterThanOrEqual",
+ filter: n.value
+ }) : h.setModel(null), e.params.api.onFilterChanged();
+ };
+ return H0(() => {
+ n.value = e.params.stateManager.getColumnFilterValue(
+ e.params.column.colDef.field,
+ "min"
+ ), s.value = e.params.stateManager.getColumnFilterValue(
+ e.params.column.colDef.field,
+ "max"
+ ), a(), l();
+ }), (h, p) => (qt(), li("div", E1r, [
+ Gr(Dt("input", {
+ class: Gn(["rv-min rv-input bg-white text-black-75 h-24 py-16 px-8 border-2 rounded", {
+ "cursor-not-allowed": o.value
+ }]),
+ style: { width: "45%" },
+ type: "number",
+ "onUpdate:modelValue": p[0] || (p[0] = (y) => n.value = y),
+ onInput: p[1] || (p[1] = (y) => a()),
+ onMousedown: p[2] || (p[2] = Go(() => {
+ }, ["stop"])),
+ onKeypress: p[3] || (p[3] = Dh(Go(() => {
+ }, ["prevent"]), ["enter"])),
+ onKeyup: p[4] || (p[4] = Dh((y) => {
+ gi(i).mobileView && y.target.blur();
+ }, ["enter"])),
+ enterkeyhint: "done",
+ placeholder: gi(r)("grid.filters.number.min"),
+ "aria-label": gi(r)("grid.filters.number.min"),
+ disabled: o.value
+ }, null, 42, I1r), [
+ [Ax, n.value]
+ ]),
+ A1r,
+ Gr(Dt("input", {
+ class: Gn(["rv-max rv-input bg-white text-black-75 h-24 py-16 px-8 border-2 rounded", {
+ "cursor-not-allowed": o.value
+ }]),
+ style: { width: "45%" },
+ type: "number",
+ "onUpdate:modelValue": p[5] || (p[5] = (y) => s.value = y),
+ onInput: p[6] || (p[6] = (y) => l()),
+ onMousedown: p[7] || (p[7] = Go(() => {
+ }, ["stop"])),
+ onKeypress: p[8] || (p[8] = Dh(Go(() => {
+ }, ["prevent"]), ["enter"])),
+ onKeyup: p[9] || (p[9] = Dh((y) => {
+ gi(i).mobileView && y.target.blur();
+ }, ["enter"])),
+ enterkeyhint: "done",
+ placeholder: gi(r)("grid.filters.number.max"),
+ "aria-label": gi(r)("grid.filters.number.max"),
+ disabled: o.value
+ }, null, 42, P1r), [
+ [Ax, s.value]
+ ])
+ ]));
+ }
+});
+const M1r = /* @__PURE__ */ ol(R1r, [["__scopeId", "data-v-81f67cc1"]]), D1r = { class: "h-full flex items-center justify-center" }, F1r = ["placeholder", "aria-label", "disabled"], L1r = {
+ methods: {
+ onParentModelChanged() {
+ }
+ }
+}, N1r = /* @__PURE__ */ Kr({
+ ...L1r,
+ __name: "custom-text-filter",
+ props: ["params"],
+ setup(t) {
+ const e = t, i = V0(), { t: r } = Xn(), n = Si(""), s = Si(
+ e.params.stateManager.columns[e.params.column.colDef.field].filter.static
+ ), o = () => {
+ e.params.parentFilterInstance((a) => {
+ n.value = n.value ? n.value : "", a.setModel({
+ filterType: "text",
+ type: "contains",
+ filter: n.value
+ }), e.params.stateManager.setColumnFilterValue(
+ e.params.column.colDef.field,
+ n.value
+ ), e.params.api.onFilterChanged();
+ });
+ };
+ return H0(() => {
+ n.value = e.params.stateManager.getColumnFilterValue(
+ e.params.column.colDef.field
+ ), o();
+ }), (a, l) => (qt(), li("div", D1r, [
+ Gr(Dt("input", {
+ class: Gn(["rv-input w-full bg-white text-black-75 h-24 py-16 px-8 border-2 rounded", {
+ "cursor-not-allowed": s.value
+ }]),
+ type: "text",
+ onInput: l[0] || (l[0] = (c) => o()),
+ "onUpdate:modelValue": l[1] || (l[1] = (c) => n.value = c),
+ onMousedown: l[2] || (l[2] = Go(() => {
+ }, ["stop"])),
+ onKeypress: l[3] || (l[3] = Dh(Go(() => {
+ }, ["prevent"]), ["enter"])),
+ onKeyup: l[4] || (l[4] = Dh((c) => {
+ gi(i).mobileView && c.target.blur();
+ }, ["enter"])),
+ enterkeyhint: "done",
+ placeholder: gi(r)("grid.filters.column.label.text", [
+ t.params.column.colDef.headerName
+ ]),
+ "aria-label": gi(r)("grid.filters.column.label.text", [
+ t.params.column.colDef.headerName
+ ]),
+ disabled: s.value
+ }, null, 42, F1r), [
+ [Ax, n.value]
+ ])
+ ]));
+ }
+});
+const k1r = { class: "h-full flex items-center justify-center" }, $1r = ["aria-label", "disabled"], B1r = ["value"], V1r = {
+ methods: {
+ onParentModelChanged() {
+ }
+ }
+}, j1r = /* @__PURE__ */ Kr({
+ ...V1r,
+ __name: "custom-selector-filter",
+ props: ["params"],
+ setup(t) {
+ const e = t, i = Si(""), r = Si([]), n = Si(
+ e.params.stateManager.columns[e.params.column.colDef.field].filter.static
+ ), s = () => {
+ i.value = i.value ? i.value : "", e.params.parentFilterInstance((o) => {
+ i.value === "..." ? (o.setModel(null), i.value = "") : o.setModel({
+ filterType: "text",
+ type: "contains",
+ filter: i.value
+ }), e.params.stateManager.setColumnFilterValue(
+ e.params.column.colDef.field,
+ i.value
+ ), e.params.api.onFilterChanged();
+ });
+ };
+ return H0(() => {
+ i.value = e.params.stateManager.getColumnFilterValue(
+ e.params.column.colDef.field
+ );
+ let o = e.params.rowData;
+ o = o.map((a) => a[e.params.column.colId]), r.value = o.filter(
+ (a, l) => o.indexOf(a) === l
+ ), r.value.unshift("..."), s();
+ }), (o, a) => (qt(), li("div", k1r, [
+ Gr(Dt("select", {
+ class: Gn(["rv-input w-full bg-white text-black-75 h-24 py-0 px-8 border-2 rounded", {
+ "cursor-not-allowed": n.value
+ }]),
+ "onUpdate:modelValue": a[0] || (a[0] = (l) => i.value = l),
+ onChange: a[1] || (a[1] = (l) => s()),
+ onMousedown: a[2] || (a[2] = Go(() => {
+ }, ["stop"])),
+ "aria-label": i.value,
+ disabled: n.value
+ }, [
+ (qt(!0), li(Ws, null, nu(r.value, (l) => (qt(), li("option", {
+ value: l,
+ key: l
+ }, vr(l), 9, B1r))), 128))
+ ], 42, $1r), [
+ [Qye, i.value]
+ ])
+ ]));
+ }
+});
+const G1r = /* @__PURE__ */ ol(j1r, [["__scopeId", "data-v-401a2b3c"]]), U1r = (t) => (Pc("data-v-df09f5c8"), t = t(), Oc(), t), z1r = { class: "h-full flex items-center justify-center w-full" }, H1r = ["placeholder", "aria-label", "disabled"], W1r = /* @__PURE__ */ U1r(() => /* @__PURE__ */ Dt("span", { class: "w-12" }, null, -1)), q1r = ["placeholder", "aria-label", "disabled"], Y1r = {
+ methods: {
+ onParentModelChanged() {
+ }
+ }
+}, X1r = /* @__PURE__ */ Kr({
+ ...Y1r,
+ __name: "custom-date-filter",
+ props: ["params"],
+ setup(t) {
+ const e = t, i = V0(), { t: r } = Xn(), n = Si(""), s = Si(""), o = Si(
+ e.params.stateManager.columns[e.params.column.colDef.field].filter.static
+ ), a = () => {
+ e.params.parentFilterInstance((h) => {
+ c(h), e.params.stateManager.setColumnFilterValue(
+ e.params.column.colDef.field,
+ n.value,
+ "min"
+ );
+ });
+ }, l = () => {
+ e.params.parentFilterInstance((h) => {
+ c(h), e.params.stateManager.setColumnFilterValue(
+ e.params.column.colDef.field,
+ s.value,
+ "max"
+ );
+ });
+ }, c = (h) => {
+ s.value === "" && n.value === "" ? h.setModel(null) : s.value !== "" && n.value !== "" ? h.setModel({
+ filterType: "date",
+ type: "inRange",
+ dateFrom: n.value,
+ dateTo: s.value
+ }) : n.value === "" ? h.setModel({
+ filterType: "date",
+ type: "lessThan",
+ dateFrom: s.value
+ }) : s.value === "" && h.setModel({
+ filterType: "date",
+ type: "greaterThan",
+ dateFrom: n.value
+ }), e.params.api.onFilterChanged();
+ };
+ return H0(() => {
+ n.value = e.params.stateManager.getColumnFilterValue(
+ e.params.column.colDef.field,
+ "min"
+ ) || "", s.value = e.params.stateManager.getColumnFilterValue(
+ e.params.column.colDef.field,
+ "max"
+ ) || "", a(), l();
+ }), (h, p) => (qt(), li("div", z1r, [
+ Gr(Dt("input", {
+ class: Gn(["m-0 py-1 w-1/2 rv-input bg-white text-black-75 h-24 py-16 px-8 border-2 rounded", {
+ "cursor-not-allowed": o.value
+ }]),
+ type: "date",
+ placeholder: gi(r)("grid.filters.date.min"),
+ "aria-label": gi(r)("grid.filters.date.min"),
+ "onUpdate:modelValue": p[0] || (p[0] = (y) => n.value = y),
+ onInput: p[1] || (p[1] = (y) => a()),
+ onMousedown: p[2] || (p[2] = Go(() => {
+ }, ["stop"])),
+ onKeypress: p[3] || (p[3] = Dh(Go(() => {
+ }, ["prevent"]), ["enter"])),
+ onKeyup: p[4] || (p[4] = Dh((y) => {
+ gi(i).mobileView && y.target.blur();
+ }, ["enter"])),
+ enterkeyhint: "done",
+ disabled: o.value
+ }, null, 42, H1r), [
+ [Ax, n.value]
+ ]),
+ W1r,
+ Gr(Dt("input", {
+ class: Gn(["m-0 py-1 w-1/2 rv-input bg-white text-black-75 h-24 py-16 px-8 border-2 rounded", {
+ "cursor-not-allowed": o.value
+ }]),
+ type: "date",
+ placeholder: gi(r)("grid.filters.date.max"),
+ "aria-label": gi(r)("grid.filters.date.max"),
+ "onUpdate:modelValue": p[5] || (p[5] = (y) => s.value = y),
+ onInput: p[6] || (p[6] = (y) => l()),
+ onMousedown: p[7] || (p[7] = Go(() => {
+ }, ["stop"])),
+ onKeypress: p[8] || (p[8] = Dh(Go(() => {
+ }, ["prevent"]), ["enter"])),
+ onKeyup: p[9] || (p[9] = Dh((y) => {
+ gi(i).mobileView && y.target.blur();
+ }, ["enter"])),
+ enterkeyhint: "done",
+ disabled: o.value
+ }, null, 42, q1r), [
+ [Ax, s.value]
+ ])
+ ]));
+ }
+});
+const K1r = /* @__PURE__ */ ol(X1r, [["__scopeId", "data-v-df09f5c8"]]), J1r = ["content", "disabled"], Z1r = /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ "enable-background": "new 0 0 24 24",
+ class: "h-24 w-24 fill-current",
+ viewBox: "0 0 24 24"
+}, [
+ /* @__PURE__ */ Dt("g", null, [
+ /* @__PURE__ */ Dt("rect", {
+ fill: "none",
+ height: "24",
+ width: "24"
+ })
+ ]),
+ /* @__PURE__ */ Dt("g", null, [
+ /* @__PURE__ */ Dt("g", null, [
+ /* @__PURE__ */ Dt("path", { d: "M19.79,5.61C20.3,4.95,19.83,4,19,4H6.83l7.97,7.97L19.79,5.61z" }),
+ /* @__PURE__ */ Dt("path", { d: "M2.81,2.81L1.39,4.22L10,13v6c0,0.55,0.45,1,1,1h2c0.55,0,1-0.45,1-1v-2.17l5.78,5.78l1.41-1.41L2.81,2.81z" })
+ ])
+ ])
+], -1), Q1r = [
+ Z1r
+], ebr = /* @__PURE__ */ Kr({
+ __name: "clear-filter",
+ props: ["params"],
+ setup(t) {
+ const e = t, { t: i } = Xn(), r = Si(), n = () => e.params.clearFilters();
+ return sl(async () => {
+ await L0();
+ const s = r.value?.closest(".ag-header-cell"), o = s.closest(".ag-pinned-left-header");
+ s.addEventListener("keydown", async (a) => {
+ a.key === "Enter" && (a.stopPropagation(), n(), await L0(), o.querySelector(
+ ".ag-header-cell.ag-floating-filter"
+ ).focus());
+ }), s.addEventListener("focus", () => {
+ r.value._tippy.show();
+ }), s.addEventListener("blur", () => {
+ r.value._tippy.hide();
+ });
+ }), gl(() => {
+ const s = r.value?.closest(".ag-header-cell"), o = s.closest(".ag-pinned-left-header");
+ s.removeEventListener("keydown", async (a) => {
+ a.key === "Enter" && (a.stopPropagation(), n(), await L0(), o.querySelector(
+ ".ag-header-cell.ag-floating-filter"
+ ).focus());
+ }), s.removeEventListener("focus", () => {
+ r.value._tippy.show();
+ }), s.removeEventListener("blur", () => {
+ r.value._tippy.hide();
+ });
+ }), (s, o) => {
+ const a = qn("tippy");
+ return Gr((qt(), li("button", {
+ type: "button",
+ class: "clearFilterButton flex items-center justify-center w-full h-full disabled:opacity-30 disabled:cursor-default text-gray-500 hover:text-black",
+ onClick: n,
+ content: gi(i)("grid.filters.clear"),
+ disabled: !t.params.stateManager.filtered,
+ tabindex: "-1",
+ ref_key: "el",
+ ref: r
+ }, Q1r, 8, J1r)), [
+ [a, { placement: "bottom" }]
+ ]);
+ };
+ }
+}), tbr = {
+ key: 0,
+ class: "flex flex-1 items-center min-w-0",
+ "truncate-trigger": ""
+}, ibr = ["content"], rbr = {
+ key: 1,
+ class: "customHeaderLabel",
+ role: "columnheader"
+}, nbr = {
+ key: 2,
+ class: "flex"
+}, sbr = {
+ key: 0,
+ class: "w-24 inline-block"
+}, obr = {
+ key: 1,
+ class: "customSortDownLabel"
+}, abr = /* @__PURE__ */ Dt("div", { class: "md-icon-small" }, [
+ /* @__PURE__ */ Dt("svg", {
+ height: "24",
+ width: "24"
+ }, [
+ /* @__PURE__ */ Dt("g", { id: "arrow_upward" }, [
+ /* @__PURE__ */ Dt("path", { d: "M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z" })
+ ])
+ ])
+], -1), lbr = [
+ abr
+], ubr = {
+ key: 2,
+ class: "customSortUpLabel"
+}, cbr = /* @__PURE__ */ Dt("div", { class: "md-icon-small" }, [
+ /* @__PURE__ */ Dt("svg", {
+ height: "24",
+ width: "24"
+ }, [
+ /* @__PURE__ */ Dt("g", { id: "arrow_downward" }, [
+ /* @__PURE__ */ Dt("path", { d: "M20 12l-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z" })
+ ])
+ ])
+], -1), hbr = [
+ cbr
+], dbr = ["content", "disabled"], pbr = /* @__PURE__ */ Dt("div", { class: "inline-block" }, [
+ /* @__PURE__ */ Dt("svg", {
+ height: "24",
+ width: "24"
+ }, [
+ /* @__PURE__ */ Dt("g", { id: "keyboard_arrow_left" }, [
+ /* @__PURE__ */ Dt("path", { d: "M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z" })
+ ])
+ ])
+], -1), fbr = [
+ pbr
+], mbr = ["content", "disabled"], gbr = /* @__PURE__ */ Dt("div", { class: "inline-block" }, [
+ /* @__PURE__ */ Dt("svg", {
+ height: "24",
+ width: "24"
+ }, [
+ /* @__PURE__ */ Dt("g", { id: "keyboard_arrow_right" }, [
+ /* @__PURE__ */ Dt("path", { d: "M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z" })
+ ])
+ ])
+], -1), ybr = [
+ gbr
+], vbr = /* @__PURE__ */ Kr({
+ __name: "custom-header",
+ props: ["params"],
+ setup(t) {
+ const e = t, { t: i } = Xn(), r = Si(), n = Si(0), s = Si(!1), o = Si(!1), a = Si(!1), l = Si(null), c = () => {
+ const v = l.value.getAllDisplayedColumns(), x = v.indexOf(e.params.column);
+ o.value = x > 3 && !v[x - 1].colDef.isStatic, a.value = x < v.length - 1 && !v[x + 1].colDef.isStatic;
+ }, h = () => {
+ const v = l.value.getAllDisplayedColumns(), x = l.value.getAllGridColumns(), I = x.indexOf(
+ v[v.indexOf(e.params.column) - 1]
+ );
+ o.value && (l.value.moveColumn(e.params.column, I), e.params.api.ensureColumnVisible(x[I]), r.value?.closest(".ag-header-row")?.querySelector(`[col-id="${e.params.column.colId}"]`)?.querySelector(".move-left")?.focus());
+ }, p = () => {
+ const v = l.value.getAllDisplayedColumns(), x = l.value.getAllGridColumns(), I = x.indexOf(
+ v[v.indexOf(e.params.column) + 1]
+ );
+ a.value && (l.value.moveColumn(e.params.column, I), e.params.api.ensureColumnVisible(x[I]));
+ }, y = (v) => {
+ n.value = (n.value + 1) % 3, n.value === 1 ? e.params.setSort("asc", v.shiftKey) : n.value === 2 ? e.params.setSort("desc", v.shiftKey) : e.params.setSort("none", v.shiftKey);
+ };
+ return sl(() => {
+ s.value = e.params.column.colDef.sortable, l.value = e.params.columnApi, e.params.sort === "asc" ? (n.value = 1, e.params.setSort("asc")) : e.params.sort === "desc" && (n.value = 2, e.params.setSort("desc")), c(), e.params.column.addEventListener("leftChanged", () => {
+ c();
+ });
+ }), gl(() => {
+ e.params.column.removeEventListener("leftChanged", () => {
+ c();
+ });
+ }), (v, x) => {
+ const I = qn("truncate"), P = qn("tippy");
+ return qt(), li("div", {
+ class: "ag-custom-header flex flex-1 items-center h-full w-full",
+ ref_key: "el",
+ ref: r
+ }, [
+ s.value ? (qt(), li("div", tbr, [
+ Gr((qt(), li("button", {
+ type: "button",
+ onClick: x[0] || (x[0] = (F) => y(F)),
+ content: gi(i)(`grid.header.sort.${n.value}`),
+ class: "customHeaderLabel hover:bg-gray-300 font-bold p-8 max-w-full",
+ role: "columnheader",
+ tabindex: "-1"
+ }, [
+ Gr((qt(), li("div", null, [
+ qs(vr(t.params.displayName), 1)
+ ])), [
+ [I, { externalTrigger: !0 }]
+ ])
+ ], 8, ibr)), [
+ [P, { placement: "top", hideOnClick: !1 }]
+ ])
+ ])) : Gr((qt(), li("span", rbr, [
+ qs(vr(t.params.displayName), 1)
+ ])), [
+ [I]
+ ]),
+ s.value ? (qt(), li("div", nbr, [
+ t.params.enableSorting && n.value === 0 ? (qt(), li("span", sbr)) : Xr("", !0),
+ t.params.enableSorting && n.value === 1 ? (qt(), li("span", obr, lbr)) : Xr("", !0),
+ t.params.enableSorting && n.value === 2 ? (qt(), li("span", ubr, hbr)) : Xr("", !0),
+ Gr((qt(), li("button", {
+ type: "button",
+ content: gi(i)("grid.header.reorder.left"),
+ onClick: x[1] || (x[1] = (F) => h()),
+ class: "move-left opacity-60 hover:opacity-90 disabled:opacity-30 disabled:cursor-default",
+ tabindex: "-1",
+ disabled: !o.value
+ }, fbr, 8, dbr)), [
+ [P, { placement: "top" }]
+ ]),
+ Gr((qt(), li("button", {
+ type: "button",
+ content: gi(i)("grid.header.reorder.right"),
+ onClick: x[2] || (x[2] = (F) => p()),
+ class: "move-right opacity-60 hover:opacity-90 disabled:opacity-30 disabled:cursor-default",
+ tabindex: "-1",
+ disabled: !a.value
+ }, ybr, 8, mbr)), [
+ [P, { placement: "top" }]
+ ])
+ ])) : Xr("", !0)
+ ], 512);
+ };
+ }
+}), _br = ["content"], bbr = /* @__PURE__ */ Dt("svg", {
+ class: "m-auto",
+ xmlns: "http://www.w3.org/2000/svg",
+ height: "16",
+ viewBox: "0 0 24 24",
+ width: "16"
+}, [
+ /* @__PURE__ */ Dt("path", {
+ d: "M0 0h24v24H0z",
+ fill: "none"
+ }),
+ /* @__PURE__ */ Dt("path", {
+ style: { fill: "#979797" },
+ d: "M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z"
+ })
+], -1), wbr = [
+ bbr
+], xbr = /* @__PURE__ */ Kr({
+ __name: "details-button-renderer",
+ props: ["params"],
+ setup(t) {
+ const e = t, { t: i } = Xn(), r = Ys("iApi"), n = Si(), s = () => {
+ let o = Object.assign({}, e.params.data);
+ delete o.rvInteractive, delete o.rvSymbol;
+ const a = r.geo.layer.getLayer(
+ o.rvUid
+ );
+ delete o.rvUid, e.params.layerCols[a.id].forEach((l) => {
+ l.mappedAttr && (o[l.origAttr] = o[l.mappedAttr], delete o[l.mappedAttr]);
+ }), r.event.emit(an.DETAILS_TOGGLE, {
+ data: o,
+ uid: e.params.data.rvUid,
+ format: iF.ESRI
+ }), e.params.isTeleport && r.scrollToInstance();
+ };
+ return sl(() => {
+ e.params.eGridCell.addEventListener("keydown", (o) => {
+ o.key === "Enter" && s();
+ }), e.params.eGridCell.addEventListener("focus", () => {
+ n.value._tippy.show();
+ }), e.params.eGridCell.addEventListener("blur", () => {
+ n.value._tippy.hide();
+ });
+ }), gl(() => {
+ e.params.eGridCell.removeEventListener(
+ "keydown",
+ (o) => {
+ o.key === "Enter" && s();
+ }
+ ), e.params.eGridCell.removeEventListener("focus", () => {
+ n.value._tippy.show();
+ }), e.params.eGridCell.removeEventListener("blur", () => {
+ n.value._tippy.hide();
+ });
+ }), (o, a) => {
+ const l = qn("tippy");
+ return Gr((qt(), li("button", {
+ type: "button",
+ class: "flex items-center justify-center w-42 h-38",
+ content: gi(i)("grid.cells.details"),
+ onClick: s,
+ tabindex: "-1",
+ ref_key: "el",
+ ref: n
+ }, wbr, 8, _br)), [
+ [l, { placement: "top" }]
+ ]);
+ };
+ }
+}), Sbr = ["content"], Cbr = {
+ key: 0,
+ class: "m-auto animate-spin spinner h-20 w-20"
+}, Tbr = {
+ key: 1,
+ xmlns: "http://www.w3.org/2000/svg",
+ fill: "none",
+ viewBox: "0 0 24 24",
+ "stroke-width": "1.5",
+ stroke: "green",
+ class: "w-20 h-20"
+}, Ebr = /* @__PURE__ */ Dt("path", {
+ "stroke-linecap": "round",
+ "stroke-linejoin": "round",
+ d: "M4.5 12.75l6 6 9-13.5"
+}, null, -1), Ibr = [
+ Ebr
+], Abr = {
+ key: 2,
+ xmlns: "http://www.w3.org/2000/svg",
+ fill: "none",
+ viewBox: "0 0 24 24",
+ "stroke-width": "1.5",
+ stroke: "red",
+ class: "w-20 h-20"
+}, Pbr = /* @__PURE__ */ Dt("path", {
+ "stroke-linecap": "round",
+ "stroke-linejoin": "round",
+ d: "M6 18L18 6M6 6l12 12"
+}, null, -1), Obr = [
+ Pbr
+], Rbr = ["innerHTML"], Mbr = /* @__PURE__ */ Kr({
+ __name: "zoom-button-renderer",
+ props: ["params"],
+ setup(t) {
+ const e = t, i = Si("none"), r = Ys("iApi"), n = i1(), s = Si(), { t: o } = Xn(), a = zr(() => {
+ const h = n.getLayerByUid(
+ e.params.data.rvUid
+ );
+ return !!h && h.mapLayer;
+ }), l = () => {
+ if (i.value !== "none")
+ return;
+ i.value = "zooming";
+ const h = n.getLayerByUid(
+ e.params.data.rvUid
+ );
+ if (h === void 0 || !h.isLoaded) {
+ c("error");
+ return;
+ }
+ const p = e.params.layerCols[h.id].find(
+ (x) => x.origAttr === h.oidField
+ ), y = e.params.data[p.mappedAttr ?? p.origAttr], v = () => {
+ const x = { getGeom: !0 };
+ h.getGraphic(y, x).then((I) => {
+ I.geometry.invalid() ? (console.error(`Could not find graphic for objectid ${y}`), c("error")) : (r.geo.map.zoomMapTo(I.geometry), c("zoomed"), r.updateAlert(r.$i18n.t("grid.cells.alert.zoom")), e.params.isTeleport && r.scrollToInstance());
+ }).catch(() => {
+ c("error");
+ });
+ };
+ h.layerType === rn.FEATURE && h.geomType !== el.POINT ? h.getGraphicExtent(y).then((x) => {
+ r.geo.map.zoomMapTo(x), c("zoomed"), r.updateAlert(r.$i18n.t("grid.cells.alert.zoom")), e.params.isTeleport && r.scrollToInstance();
+ }).catch(() => {
+ v();
+ }) : v();
+ }, c = (h) => {
+ h === "zoomed" || h === "error" ? setTimeout(() => {
+ i.value = h, s.value?._tippy.show(), setTimeout(() => {
+ s.value?._tippy.hide(), i.value = "none";
+ }, 3e3);
+ }, 300) : i.value = h;
+ };
+ return sl(() => {
+ a.value && (e.params.eGridCell.addEventListener(
+ "keydown",
+ (h) => {
+ h.key === "Enter" && i.value === "none" && l();
+ }
+ ), e.params.eGridCell.addEventListener("focus", () => {
+ s.value?._tippy.show();
+ }), e.params.eGridCell.addEventListener("blur", () => {
+ s.value?._tippy.hide();
+ }));
+ }), gl(() => {
+ a.value && (e.params.eGridCell.removeEventListener(
+ "keydown",
+ (h) => {
+ h.key === "Enter" && l();
+ }
+ ), e.params.eGridCell.removeEventListener("focus", () => {
+ s.value?._tippy.show();
+ }), e.params.eGridCell.removeEventListener("blur", () => {
+ s.value?._tippy.hide();
+ }));
+ }), (h, p) => {
+ const y = qn("tippy");
+ return a.value ? Gr((qt(), li("button", {
+ key: 0,
+ type: "button",
+ class: "flex items-center justify-center w-42 h-38",
+ content: gi(o)(`grid.cells.zoom${i.value === "none" ? "" : `.${i.value}`}`),
+ onClick: l,
+ tabindex: "-1",
+ ref_key: "button",
+ ref: s
+ }, [
+ i.value === "zooming" ? (qt(), li("div", Cbr)) : i.value === "zoomed" ? (qt(), li("svg", Tbr, Ibr)) : i.value === "error" ? (qt(), li("svg", Abr, Obr)) : (qt(), li("span", {
+ key: 3,
+ innerHTML: gi(r).ui.getZoomIcon()
+ }, null, 8, Rbr))
+ ], 8, Sbr)), [
+ [y, { placement: "top" }]
+ ]) : Xr("", !0);
+ };
+ }
+}), Dbr = ["content"], Fbr = ["innerHTML"], Lbr = /* @__PURE__ */ Kr({
+ __name: "custom-button-renderer",
+ props: ["params"],
+ setup(t) {
+ const e = t, i = Ys("iApi"), r = Si(), n = zr(() => {
+ let o = Object.assign({}, e.params.data);
+ const a = i.geo.layer.getLayer(
+ o.rvUid
+ ), l = e.params.config.displayOn;
+ return !(!a || l === "geo" && !a.mapLayer || l === "data" && a.mapLayer);
+ }), s = () => {
+ let o = Object.assign({}, e.params.data);
+ const a = i.geo.layer.getLayer(
+ o.rvUid
+ ), l = e.params.layerCols[a.id].find(
+ (h) => h.origAttr === a.oidField
+ ), c = l.mappedAttr ? o[l.mappedAttr] : o[l.origAttr];
+ a.getGraphic(c, { getAttribs: !0 }).then((h) => {
+ i.event.emit(e.params.config.actionEvent, {
+ data: h.attributes,
+ layer: a,
+ uid: e.params.data.rvUid,
+ oid: c
+ });
+ });
+ };
+ return sl(() => {
+ e.params.eGridCell.addEventListener("keydown", (o) => {
+ o.key === "Enter" && s();
+ }), e.params.eGridCell.addEventListener("focus", () => {
+ r.value._tippy.show();
+ }), e.params.eGridCell.addEventListener("blur", () => {
+ r.value._tippy.hide();
+ });
+ }), gl(() => {
+ e.params.eGridCell.removeEventListener(
+ "keydown",
+ (o) => {
+ o.key === "Enter" && s();
+ }
+ ), e.params.eGridCell.removeEventListener("focus", () => {
+ r.value._tippy.show();
+ }), e.params.eGridCell.removeEventListener("blur", () => {
+ r.value._tippy.hide();
+ });
+ }), (o, a) => {
+ const l = qn("tippy");
+ return n.value ? Gr((qt(), li("button", {
+ key: 0,
+ type: "button",
+ class: "flex items-center justify-center w-42 h-38",
+ content: e.params.config.tooltip,
+ onClick: s,
+ tabindex: "-1",
+ ref_key: "el",
+ ref: r
+ }, [
+ Dt("span", {
+ innerHTML: e.params.config.icon
+ }, null, 8, Fbr)
+ ], 8, Dbr)), [
+ [l, { placement: "top" }]
+ ]) : Xr("", !0);
+ };
+ }
+}), Nbr = ["name", "content", "innerHTML"], kbr = ["content"], K2e = /* @__PURE__ */ Kr({
+ __name: "cell-renderer",
+ props: ["params"],
+ setup(t) {
+ const e = t, i = V0(), r = Ys("iApi"), { t: n } = Xn(), s = Si(), o = Si(), a = Si(!1), l = zr(() => i.mobileView), c = () => {
+ o.value?.textContent && (a.value = !0, s.value?._tippy.show(), navigator.clipboard.writeText(o.value?.textContent), setTimeout(() => {
+ a.value = !1;
+ }, 2e3));
+ }, h = zr(() => e.params.type === "number" ? e.params.value == null ? "" : r.ui.formatNumber(e.params.value) : e.params.type === "date" ? e.params.value == null ? "" : new Date(e.params.value).toISOString().slice(0, 10) : e.params.type === "string" ? !e.params.value || /
]*>[^<]+<\/a>/g.test(e.params.value) ? e.params.value : v0e(e.params.value, {
+ target: "_blank",
+ validate: {
+ url: (y) => /^https?:\/\//.test(y)
+ // only links that begin with a protocol will be hyperlinked
+ }
+ }) : ""), p = zr(() => /]*>[^<]+<\/a>/g.test(e.params.value) || /(http(s)?:\/\/.*)/g.test(e.params.value));
+ return sl(() => {
+ e.params.eGridCell.addEventListener("dblclick", () => {
+ c();
+ }), e.params.eGridCell.addEventListener("keydown", (y) => {
+ y.ctrlKey && y.code === "KeyC" && c();
+ }), e.params.eGridCell.addEventListener("blur", () => {
+ o.value._tippy.hide(), s.value?._tippy.hide();
+ }), e.params.eGridCell.addEventListener("focus", () => {
+ o.value?._tippy.show(), setTimeout(() => {
+ document.activeElement === e.params.eGridCell && s.value?._tippy.show();
+ }, 1e3), o.value._tippy.reference.clientWidth >= o.value._tippy.reference.scrollWidth && o.value._tippy.hide();
+ });
+ }), gl(() => {
+ e.params.eGridCell.removeEventListener("dblclick", () => {
+ c();
+ }), e.params.eGridCell.removeEventListener(
+ "keydown",
+ (y) => {
+ y.ctrlKey && y.code === "KeyC" && c();
+ }
+ ), e.params.eGridCell.removeEventListener("blur", () => {
+ o.value._tippy.hide(), s.value?._tippy.hide();
+ }), e.params.eGridCell.removeEventListener("focus", () => {
+ o.value._tippy.show(), s.value?._tippy.show();
+ });
+ }), (y, v) => {
+ const x = qn("truncate"), I = qn("tippy");
+ return qt(), li("div", null, [
+ Gr(Dt("div", {
+ name: h.value,
+ content: h.value,
+ tabindex: "-1",
+ innerHTML: h.value,
+ ref_key: "el",
+ ref: o
+ }, null, 8, Nbr), [
+ [x, {
+ options: {
+ placement: "top",
+ hideOnClick: !1,
+ theme: "ramp4",
+ maxWidth: l.value ? 300 : 700,
+ // remove this once scrollable tooltip option is implemented
+ animation: "scale",
+ interactive: p.value
+ }
+ }]
+ ]),
+ o.value?.textContent ? Gr((qt(), li("div", {
+ key: 0,
+ ref_key: "copyTooltip",
+ ref: s,
+ content: gi(n)(`grid.label.${a.value ? "copied" : "copy"}`)
+ }, null, 8, kbr)), [
+ [I, {
+ triggerTarget: o.value,
+ placement: "bottom",
+ theme: "ramp4",
+ hideOnClick: !1,
+ delay: [1e3, 0]
+ }]
+ ]) : Xr("", !0)
+ ]);
+ };
+ }
+}), zv = (t) => (Pc("data-v-974bca09"), t = t(), Oc(), t), $br = { class: "pl-8" }, Bbr = { class: "flex flex-col justify-center items-center h-full" }, Vbr = { class: "flex flex-row" }, jbr = { class: "font-bold text-2xl" }, Gbr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ class: "stroke-black stroke-1",
+ height: "50",
+ width: "25"
+}, [
+ /* @__PURE__ */ Dt("line", {
+ x1: "0",
+ y1: "50",
+ x2: "25",
+ y2: "0"
+ })
+], -1)), Ubr = { class: "mt-20 text-xl" }, zbr = { class: "my-20" }, Hbr = { class: "text-sm" }, Wbr = ["aria-label"], qbr = { class: "flex flex-wrap gap-y-8 items-center pl-8 pb-8" }, Ybr = { class: "flex flex-1 flex-col max-w-full mr-8" }, Xbr = { class: "w-full font-bold" }, Kbr = { class: "w-full text-sm" }, Jbr = { key: 0 }, Zbr = { class: "flex flex-1 grow-[1.4] items-center max-w-full" }, Qbr = { class: "flex flex-1 min-w-0 items-center pb-4 mr-8" }, ewr = ["aria-label", "placeholder"], twr = { class: "-ml-30" }, iwr = {
+ key: 0,
+ xmlns: "http://www.w3.org/2000/svg",
+ fit: "",
+ preserveAspectRatio: "xMidYMid meet",
+ viewBox: "0 0 24 24",
+ focusable: "false",
+ class: "fill-current w-24 h-24 flex-shrink-0"
+}, rwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("g", { id: "search_cache224" }, [
+ /* @__PURE__ */ Dt("path", { d: "M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z" })
+], -1)), nwr = [
+ rwr
+], swr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ "data-v-486a0302": "",
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 352 512",
+ class: "w-18 h-18 mt-2"
+}, [
+ /* @__PURE__ */ Dt("path", {
+ "data-v-486a0302": "",
+ d: "M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"
+ })
+], -1)), owr = [
+ swr
+], awr = { class: "pb-2 flex ml-auto justify-end" }, lwr = ["content", "aria-label"], uwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ height: "24px",
+ width: "24px",
+ viewBox: "0 0 24 24",
+ class: "inline fill-current"
+}, [
+ /* @__PURE__ */ Dt("g", { id: "filter_cache958" }, [
+ /* @__PURE__ */ Dt("path", { d: "M 14.7574,20.8284L 17.6036,17.9822L 14.7574,15.1716L 16.1716,13.7574L 19.0178,16.568L 21.8284,13.7574L 23.2426,15.1716L 20.432,17.9822L 23.2426,20.8284L 21.8284,22.2426L 19.0178,19.3964L 16.1716,22.2426L 14.7574,20.8284 Z M 2,2L 19.9888,2.00001L 20,2.00001L 20,2.01122L 20,3.99999L 19.9207,3.99999L 13,10.9207L 13,22.909L 8.99999,18.909L 8.99999,10.906L 2.09405,3.99999L 2,3.99999L 2,2 Z " })
+ ])
+], -1)), cwr = [
+ uwr
+], hwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current m-8 w-24 h-24"
+}, [
+ /* @__PURE__ */ Dt("path", { d: "M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z" })
+], -1)), dwr = { class: "md-icon-small inline items-start" }, pwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current inline w-20 h-20 mr-2 text-gray-500"
+}, [
+ /* @__PURE__ */ Dt("path", { d: "m 15.585999,21.223066 2.414,-2.414 v 1.811 A 3.616,3.616 0 0 0 21.2,15.309066 l 0.881,-0.881 a 4.82,4.82 0 0 1 -4.080001,7.4 v 1.811 z m -13.5859988,-9.224 a 10,10 0 1 1 19.9999998,0 c 0,0.172 0,0.346 -0.013,0.517 a 5.971,5.971 0 0 0 -2.014001,-1.184001 7.935,7.935 0 0 0 -4.973,-6.742999 v 0.41 a 2,2 0 0 1 -2,2 h -2 v 2 A 1,1 0 0 1 10,9.9990662 H 8.0000002 v 1.9999998 h 5.9999988 a 1,1 0 0 1 0.495,0.131 6,6 0 0 0 -0.184,9.6 10.009,10.009 0 0 1 -12.3109988,-9.731 z m 2,0 a 8,8 0 0 0 6.9999988,7.93 v -1.93 a 2,2 0 0 1 -1.9999988,-2 v -1 l -4.79,-4.79 a 8.07,8.07 0 0 0 -0.21,1.79 z m 9.1729988,5 a 4.827,4.827 0 0 1 4.827,-4.828 v -1.81 l 2.414,2.414 -2.414,2.413 v -1.809 a 3.623,3.623 0 0 0 -3.62,3.62 3.537,3.537 0 0 0 0.42,1.69 l -0.881,0.881 a 4.787,4.787 0 0 1 -0.746,-2.571 z" })
+], -1)), fwr = {
+ key: 0,
+ height: "18",
+ width: "18",
+ viewBox: "0 0 24 24",
+ class: "inline float-right"
+}, mwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("g", { id: "done" }, [
+ /* @__PURE__ */ Dt("path", { d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z" })
+], -1)), gwr = [
+ mwr
+], ywr = { class: "md-icon-small inline items-start" }, vwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current inline w-20 h-20 mr-2 text-gray-500"
+}, [
+ /* @__PURE__ */ Dt("path", { d: "M 3,2L 20.9888,2L 21,2L 21,2.01122L 21,3.99999L 20.9207,3.99999L 14,10.9207L 14,22.909L 9.99999,18.909L 10,10.906L 3.09405,3.99999L 3,3.99999L 3,2 Z " })
+], -1)), _wr = {
+ key: 0,
+ height: "18",
+ width: "18",
+ viewBox: "0 0 24 24",
+ class: "inline float-right"
+}, bwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("g", { id: "done" }, [
+ /* @__PURE__ */ Dt("path", { d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z" })
+], -1)), wwr = [
+ bwr
+], xwr = { class: "md-icon-small inline items-start" }, Swr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current inline w-20 h-20 mr-2 text-gray-500"
+}, [
+ /* @__PURE__ */ Dt("path", { d: "M 4 10 Z M 2 2 L 19.9888 2 L 20 2 L 20 2.0112 L 20 4 L 19.9207 4 L 13 10.9207 L 13 22.909 L 9 18.909 L 9 10.906 L 2.0941 4 L 2 4 L 2 2 Z M 24 13 L 21 14 L 18 13 L 15 14 V 22 L 18 21 l 3 1 l 3 -1 z M 21 21 l -3 -1 V 14 l 3 1.055 z" })
+], -1)), Cwr = {
+ key: 0,
+ height: "18",
+ width: "18",
+ viewBox: "0 0 24 24",
+ class: "inline float-right"
+}, Twr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("g", { id: "done" }, [
+ /* @__PURE__ */ Dt("path", { d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z" })
+], -1)), Ewr = [
+ Twr
+], Iwr = {
+ key: 0,
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current inline w-20 h-20 mr-2 text-gray-500"
+}, Awr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("path", { d: "M18,8H17V6A5,5 0 0,0 12,1A5,5 0 0,0 7,6V8H6A2,2 0 0,0 4,10V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V10A2,2 0 0,0 18,8M12,3A3,3 0 0,1 15,6V8H9V6A3,3 0 0,1 12,3Z" }, null, -1)), Pwr = [
+ Awr
+], Owr = {
+ key: 1,
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current inline w-20 h-20 mr-2 text-gray-500"
+}, Rwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("path", { d: "M18 1.5c2.9 0 5.25 2.35 5.25 5.25v3.75a.75.75 0 01-1.5 0V6.75a3.75 3.75 0 10-7.5 0v3a3 3 0 013 3v6.75a3 3 0 01-3 3H3.75a3 3 0 01-3-3v-6.75a3 3 0 013-3h9v-3c0-2.9 2.35-5.25 5.25-5.25z" }, null, -1)), Mwr = [
+ Rwr
+], Dwr = {
+ key: 2,
+ height: "18",
+ width: "18",
+ viewBox: "0 0 24 24",
+ class: "inline float-right"
+}, Fwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("g", { id: "done" }, [
+ /* @__PURE__ */ Dt("path", { d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z" })
+], -1)), Lwr = [
+ Fwr
+], Nwr = /* @__PURE__ */ zv(() => /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current inline w-20 h-20 mr-2 text-gray-500"
+}, [
+ /* @__PURE__ */ Dt("g", null, [
+ /* @__PURE__ */ Dt("path", { d: "M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6H6zm7 7V3.5L18.5 9H13z" })
+ ])
+], -1)), kwr = /* @__PURE__ */ Kr({
+ __name: "table-component",
+ props: {
+ panel: {
+ type: lG,
+ required: !0
+ },
+ gridId: {
+ type: String,
+ required: !0
+ }
+ },
+ setup(t) {
+ const e = t, i = [
+ Ev.OID,
+ Ev.DOUBLE,
+ Ev.SINGLE,
+ Ev.INTEGER
+ ], r = Ys("iApi"), n = O$(), s = V0(), o = zr(() => s.mobileView), a = Si(!o.value), l = Si(), { t: c } = Xn(), h = () => uf()?.proxy?.$forceUpdate(), p = Si({
+ id: "dummy",
+ layerIds: [],
+ state: new Fce(),
+ fieldMap: {}
+ }), y = Si(new NS.GridApi()), v = Si(), x = Si(), I = Si(!1), P = Si(!1), F = Si([]), k = Si(0), V = Si([]), j = Si([]), Y = Si(""), X = Si(new NS.ColumnApi()), Q = Si([]), re = Si([]), he = Si("OBJECTID"), fe = Si(
+ void 0
+ ), be = bot.onCellKeyPress, Se = Si({ firstRow: 0, lastRow: 0, visibleRows: 0 }), Me = Si({}), ke = r.geo.layer.getLayer(e.gridId), J = Si({}), ce = Si(n.grids[e.gridId].layerIds), xe = zr(() => n.grids[e.gridId] ? n.grids[e.gridId].layerIds.map((A) => r.geo.layer.getLayer(A)).filter((A) => A !== void 0) : []), Pe = Si(/* @__PURE__ */ new Set()), Oe = Si([]), Re = (A) => {
+ y.value = A.api, X.value = A.columnApi, Y.value = p.value.state.title || ke?.name || e.gridId, Mt(), re.value.length > 0 && X.value.autoSizeAllColumns(), V.value.push(
+ r.event.on(
+ an.FILTER_CHANGE,
+ ({ uid: ve, filterKey: H }) => {
+ H !== cm.GRID && ve && xe.value.map((T) => T.uid).includes(ve) && ct();
+ }
+ )
+ ), V.value.push(
+ r.event.on(
+ an.LAYER_VISIBILITYCHANGE,
+ ({ layer: ve }) => {
+ ve.uid && xe.value.map((H) => H.uid).includes(ve.uid) && ct();
+ }
+ )
+ ), V.value.push(
+ r.event.on(
+ an.LAYER_RELOAD_END,
+ (ve) => {
+ ve.loadPromise().then(() => {
+ xe.value.map((H) => H.uid).includes(ve.uid) && ct();
+ });
+ }
+ )
+ ), V.value.push(
+ r.event.on(an.CONFIG_CHANGE, () => {
+ y.value.redrawRows({
+ force: !0
+ });
+ })
+ ), V.value.push(
+ r.event.on(
+ an.MAP_EXTENTCHANGE,
+ ZS(100, () => {
+ p.value.state.filterByExtent && ct();
+ })
+ )
+ ), V.value.push(
+ r.event.on(
+ an.LAYER_REMOVE,
+ (ve) => {
+ ce.value.includes(ve.id) && xe.value.length !== 0 && si();
+ }
+ )
+ ), ct();
+ }, Ge = () => {
+ X.value.autoSizeAllColumns(), fe.value = new bot(
+ l.value,
+ y.value,
+ X.value
+ );
+ }, je = () => {
+ y.value.setQuickFilter(p.value.state.searchFilter);
+ }, et = () => {
+ p.value.state.searchFilter = "", je();
+ }, Qe = () => {
+ et(), Tt(), ct();
+ }, tt = () => {
+ p.value.state.filterByExtent = !p.value.state.filterByExtent, ct();
+ }, ft = () => {
+ let A = v.value.api.getColumnDefs();
+ p.value.state.colFilter = !p.value.state.colFilter, A.forEach((ve) => {
+ ve.floatingFilter = p.value.state.colFilter;
+ }), v.value.api.setColumnDefs(A);
+ }, Mt = () => {
+ y.value && !I.value && (p.value.state.searchFilter !== "" && je(), p.value.state.applyToMap && Ne(), L0(() => {
+ let A = X.value.getAllDisplayedColumns();
+ v.value.api.refreshCells({
+ columns: [A[0]]
+ // Limits the refresh action to the row number column.
+ }), kt();
+ }));
+ }, kt = () => {
+ Se.value.firstRow = y.value.getFirstDisplayedRow() + 1, Se.value.lastRow = y.value.getLastDisplayedRow() + 1, Se.value.visibleRows = y.value.getDisplayedRowCount();
+ }, Tt = () => {
+ y.value.setFilterModel({}), p.value.state.clearFilters(), y.value.refreshHeader();
+ }, It = () => {
+ a.value = !a.value;
+ let A = X.value.getAllDisplayedColumns();
+ X.value.setColumnsPinned(
+ A.slice(1, 3),
+ a.value ? "left" : ""
+ );
+ }, Nt = () => {
+ const A = X.value.getAllDisplayedColumns().filter((ve) => !ve.getColDef().preventExport);
+ y.value.exportDataAsCsv({
+ columnKeys: A,
+ suppressQuotes: !0,
+ processCellCallback: (ve) => {
+ let H = ve.column.getColDef().cellRendererParams;
+ return !ve.value || H && H.type === "number" ? ve.value : H && H.type === "date" ? `"${new Date(ve.value).toLocaleDateString("en-CA", {
+ timeZone: "UTC",
+ year: "numeric",
+ month: "2-digit",
+ day: "2-digit",
+ hour: "2-digit",
+ minute: "2-digit",
+ second: "2-digit"
+ })}"` : `"${ve.value.toString().replace(/"/g, '""')}"`;
+ }
+ });
+ }, nt = (A, ve) => {
+ A.floatingFilterComponent = "dateFloatingFilter", A.filterParams.comparator = function(H, T) {
+ let b = new Date(T);
+ return b.getUTCFullYear() > H.getUTCFullYear() ? 1 : b.getUTCFullYear() < H.getUTCFullYear() ? -1 : b.getUTCMonth() > H.getUTCMonth() ? 1 : b.getUTCMonth() < H.getUTCMonth() ? -1 : b.getUTCDate() - H.getUTCDate();
+ }, A.filterParams.inRangeInclusive = !0, A.floatingFilterComponentParams = {
+ suppressFilterButton: !0,
+ stateManager: ve
+ };
+ }, Ee = (A, ve, H) => {
+ A.floatingFilterComponent = "selectorFloatingFilter", A.filterParams.inRangeInclusive = !0, A.floatingFilterComponentParams = {
+ suppressFilterButton: !0,
+ stateManager: H,
+ rowData: ve
+ };
+ }, Be = (A, ve) => {
+ A.floatingFilterComponent = "numberFloatingFilter", A.filterParams.inRangeInclusive = !0, A.floatingFilterComponentParams = {
+ suppressFilterButton: !0,
+ stateManager: ve
+ };
+ }, at = (A, ve) => {
+ A.floatingFilterComponent = "textFloatingFilter", A.floatingFilterComponentParams = {
+ suppressFilterButton: !0,
+ stateManager: ve
+ }, A.filterParams.textMatcher = function(T) {
+ const b = T.filterText.replace(/\*/, "\\*");
+ return new RegExp(`^.*${b}.*`).test(T.value);
+ };
+ let H = function(T) {
+ let b = T.toLowerCase();
+ return b = b.replace(new RegExp("[àáâãäå]", "g"), "a"), b = b.replace(new RegExp("æ", "g"), "ae"), b = b.replace(new RegExp("ç", "g"), "c"), b = b.replace(new RegExp("[èéêë]", "g"), "e"), b = b.replace(new RegExp("[ìíîï]", "g"), "i"), b = b.replace(new RegExp("ñ", "g"), "n"), b = b.replace(new RegExp("[òóôõö]", "g"), "o"), b = b.replace(new RegExp("œ", "g"), "oe"), b = b.replace(new RegExp("[ùúûü]", "g"), "u"), b = b.replace(new RegExp("[ýÿ]", "g"), "y"), b;
+ };
+ A.filterParams.textFormatter = function(T) {
+ return H(T);
+ };
+ }, wt = (A, ve, H) => {
+ if (A.field === "rvRowIndex") {
+ let T = {
+ sortable: !1,
+ lockPosition: !0,
+ valueGetter: "node.rowIndex + 1",
+ suppressMovable: !0,
+ suppressMenu: !0,
+ floatingFilter: p.value.state.colFilter,
+ pinned: "left",
+ maxWidth: 42,
+ cellStyle: () => ({
+ "padding-left": "2px",
+ "padding-right": "2px",
+ display: "flex",
+ "justify-content": "center"
+ }),
+ floatingFilterComponent: "clearFloatingFilter",
+ floatingFilterComponentParams: {
+ stateManager: H,
+ clearFilters: Tt,
+ suppressFilterButton: !0
+ },
+ filter: !0,
+ preventExport: !0
+ };
+ ve.push(T);
+ }
+ if (A.field === "rvInteractive") {
+ const T = p.value.state.controls;
+ let b = {
+ sortable: !1,
+ pinned: o.value ? "" : "left",
+ filter: !1,
+ lockPosition: !0,
+ isStatic: !0,
+ maxWidth: 42,
+ cellStyle: () => ({
+ padding: "0px"
+ }),
+ cellRenderer: xbr,
+ cellRendererParams: {
+ $iApi: r,
+ t: c,
+ layerCols: J.value,
+ isTeleport: e.panel.teleport !== void 0
+ },
+ preventExport: !0
+ };
+ if (T.includes("details") && ve.push(b), mt.value) {
+ let m = {
+ sortable: !1,
+ pinned: o.value ? "" : "left",
+ filter: !1,
+ lockPosition: !0,
+ isStatic: !0,
+ maxWidth: 42,
+ cellStyle: () => ({
+ padding: "0px"
+ }),
+ cellRenderer: Mbr,
+ cellRendererParams: {
+ $iApi: r,
+ layerCols: J.value,
+ isTeleport: e.panel.teleport !== void 0
+ },
+ preventExport: !0
+ };
+ T.includes("zoom") && ve.push(m);
+ }
+ T.forEach(
+ (m) => {
+ if (m === "zoom" || m === "details")
+ return;
+ let _ = {
+ sortable: !1,
+ pinned: o.value ? "" : "left",
+ filter: !1,
+ lockPosition: !0,
+ isStatic: !0,
+ maxWidth: 42,
+ cellStyle: () => ({
+ padding: "0px"
+ }),
+ cellRenderer: Lbr,
+ cellRendererParams: {
+ $iApi: r,
+ t: c,
+ layerCols: J.value,
+ config: m
+ },
+ preventExport: !0
+ };
+ ve.push(_);
+ }
+ );
+ }
+ if (A.field === "rvSymbol") {
+ let T = {
+ sortable: !1,
+ filter: !1,
+ lockPosition: !0,
+ isStatic: !0,
+ maxWidth: 42,
+ cellRenderer: (b) => {
+ const m = r.geo.layer.getLayer(b.data.rvUid);
+ if (m === void 0)
+ return;
+ const _ = document.createElement("span"), C = b.data[he.value];
+ return m.getIcon(C).then((D) => {
+ _.innerHTML = D;
+ }), _;
+ },
+ cellStyle: () => ({
+ paddingTop: "3px",
+ textAlign: "center",
+ paddingLeft: "5px",
+ paddingRight: "0px"
+ }),
+ cellRendererParams: {
+ $iApi: r,
+ oidField: he.value
+ },
+ preventExport: !0
+ };
+ ve.push(T);
+ }
+ }, st = () => !Object.values(Me.value).every((A) => A === void 0), le = (A) => {
+ const ve = Me.value[A.data.rvUid];
+ return ve === void 0 || ve.includes(A.data[he.value]);
+ }, ct = async () => {
+ const A = new vm(), ve = Oe.value.slice().map((T) => T.getPromise());
+ Oe.value.push(A), await Promise.all(ve), await Promise.all(
+ xe.value.map(async (T) => {
+ T && T.visibility ? await T.getFilterOIDs(
+ [cm.GRID],
+ p.value.state.filterByExtent ? r.geo.map.getExtent() : void 0
+ ).then((b) => {
+ Me.value[T.uid] = b;
+ }) : Me.value[T.uid] = [];
+ })
+ ), y.value.onFilterChanged(), A.resolveMe();
+ const H = Oe.value.indexOf(A);
+ H === -1 ? console.error("Grid could not find filter blocker in filter queue") : Oe.value.splice(H, 1);
+ }, gt = () => {
+ p.value.state.applyToMap = !p.value.state.applyToMap, Ne();
+ }, Ne = () => {
+ xe.value.filter((A) => A.mapLayer).forEach((A) => {
+ if (!p.value.state.applyToMap)
+ A.setSqlFilter(cm.GRID, "");
+ else {
+ const ve = pe(A.id);
+ A.setSqlFilter(cm.GRID, ve);
+ }
+ });
+ }, pe = (A) => {
+ const ve = y.value.getFilterModel();
+ let H = [];
+ if (Object.keys(ve).forEach((T) => {
+ const b = Ue(A, T);
+ b ? H.push(Ae(b.origAttr, ve[T])) : H.push("1=2");
+ }), p.value.state.searchFilter && p.value.state.searchFilter.length > 0) {
+ const T = it(A) || "1=2";
+ T.length > 0 && H.push(`(${T})`);
+ }
+ return H.join(" AND ");
+ }, Ae = (A, ve) => {
+ switch (ve.filterType) {
+ case "number": {
+ switch (ve.type) {
+ case "greaterThanOrEqual":
+ return `${A} >= ${ve.filter}`;
+ case "lessThanOrEqual":
+ return `${A} <= ${ve.filter}`;
+ case "inRange":
+ return `${A} >= ${ve.filter} AND ${A} <= ${ve.filterTo}`;
+ }
+ break;
+ }
+ case "text": {
+ let H = ve.filter.replace(/'/g, /''/);
+ if (H !== "") {
+ const T = /\\[(!"#$&'+,.\\/:;<=>?@[\]^`{|}~)]/g;
+ let b = H, m = "", _ = T.exec(H), C = 0;
+ for (; _; )
+ m = m + H.substr(C, _.index - C) + _[0].slice(-1), C = _.index + 2, b = H.substr(_.index + 2), _ = T.exec(H);
+ m = m + b, m = m.replace(/%/g, "ௌ%"), m = m.replace(/_/g, "ௌ_"), m = `*${m}`;
+ let D = `UPPER(${A}) LIKE '${m.replace(/\*/g, "%").toUpperCase()}%'`;
+ return D.includes("ௌ%") || D.includes("ௌ_") ? `${D} ESCAPE 'ௌ'` : D;
+ }
+ break;
+ }
+ case "date": {
+ const H = new Date(ve.dateFrom ?? 0), T = new Date(ve.dateTo ?? 864e13), b = H ? `${H.getMonth() + 1}/${H.getDate()}/${H.getFullYear()}` : void 0, m = T ? `${T.getMonth() + 1}/${T.getDate()}/${T.getFullYear()}` : void 0;
+ switch (ve.type) {
+ case "greaterThan":
+ return `${A} >= DATE '${b}'`;
+ case "lessThan":
+ return `${A} <= DATE '${b}'`;
+ case "inRange":
+ return `${A} >= DATE '${b}' AND ${A} <= DATE '${m}'`;
+ }
+ }
+ }
+ }, it = (A) => {
+ const H = p.value.state.searchFilter.replace(/'/g, "''").split(" "), T = y.value.rowModel.rowsToDisplay, b = X.value.getAllDisplayedColumns().filter(
+ (_) => (_.colDef.filter === "agTextColumnFilter" || _.colDef.filter === "agNumberColumnFilter") && Ue(A, _.getColId())
+ );
+ let m = [];
+ return T.forEach((_) => {
+ let C = !0, D = "";
+ for (let L of H) {
+ const B = new RegExp(
+ `.*${L.split(" ").join(".*").toUpperCase()}`
+ ), q = `%${L.replace(/\*/g, "%").split(" ").join("%").toUpperCase()}`;
+ let Z = !1;
+ for (let ie of b) {
+ const se = ie.getColId(), de = Ue(A, ie.getColId())?.origAttr, Ce = ie.getColDef();
+ if (_.data[se] === void 0)
+ Z = !1;
+ else if (Ce.filter === "agTextColumnFilter") {
+ const Ve = _.data[se] === null ? null : _.data[se].toString();
+ if (Ve !== null && B.test(Ve.toUpperCase())) {
+ D ? D = D.concat(
+ " AND ",
+ `(UPPER(${de}) LIKE '${q}%')`
+ ) : D = D.concat(
+ "(",
+ `(UPPER(${de}) LIKE '${q}%')`
+ ), m.includes(D + ")") ? Z = !1 : Z = !0;
+ break;
+ }
+ } else if (Ce.filter === "agNumberColumnFilter") {
+ const Ve = _.data[se] === null ? null : _.data[se];
+ if (Ve !== null && B.test(Ve)) {
+ D ? D = D.concat(
+ " AND ",
+ `(${de} = ${Ve})`
+ ) : D = D.concat(
+ "(",
+ `(${de} = ${Ve})`
+ ), m.includes(D + ")") ? Z = !1 : Z = !0;
+ break;
+ }
+ }
+ }
+ if (!Z) {
+ C = !1;
+ break;
+ }
+ }
+ C && m.push(D + ")");
+ }), m.join(" OR ");
+ }, yt = (A) => {
+ [
+ "ArrowDown",
+ "Down",
+ "ArrowLeft",
+ "Left",
+ "ArrowUp",
+ "Up",
+ "ArrowRight",
+ "Right"
+ ].includes(A.key) && A.stopPropagation();
+ }, He = () => {
+ Ft(), e.panel.isOpen && e.panel.close();
+ }, Ft = () => {
+ (I.value || P.value) && xe.value.forEach((A) => {
+ A.abortAttributeLoad(), A.clearFeatureCache();
+ });
+ }, ei = zr(() => {
+ const A = xe.value.map((T) => T.visibility && T.canModifyLayer && T.mapLayer), ve = xe.value.some(
+ (T) => T.visibility && T.mapLayer && !T.canModifyLayer
+ ), H = A.some(Boolean);
+ return ve && H ? "partial" : H ? "enabled" : "disabled";
+ }), mt = zr(
+ () => xe.value.some(
+ (A) => A.isLoaded && A.supportsFeatures && A.mapLayer
+ )
+ ), Ue = (A, ve) => J.value[A].find(
+ (H) => (H.mappedAttr ?? H.origAttr) === ve
+ ), si = () => {
+ const A = xe.value.filter(
+ (ve) => ve && ve.supportsFeatures && ve.isLoaded
+ );
+ A.length === 0 && He(), k.value = A.reduce(
+ (ve, { featureCount: H }) => ve + H,
+ 0
+ ), F.value = new Array(xe.value.length).fill(0), A.forEach(
+ (ve, H) => F.value[H] += ve.downloadedAttributes()
+ ), A.forEach((ve, H) => {
+ j.value.push(
+ Fl(
+ () => ve.downloadedAttributes(),
+ (T) => {
+ F.value[H] = T;
+ }
+ )
+ );
+ }), Promise.all(A.map((ve) => ve.loadPromise())).then(() => {
+ const ve = A.map((H) => ya(H).getTabularAttributes());
+ Promise.all(ve).then((H) => {
+ if (A.every((b) => b.attribLoadAborted())) {
+ I.value = !1;
+ return;
+ }
+ const T = {
+ columns: [],
+ rows: [],
+ fields: [],
+ oidField: ""
+ };
+ H.forEach((b, m) => {
+ const _ = [], C = A[m].id;
+ b.columns.forEach((D) => {
+ p.value.fieldMap && p.value.fieldMap[D.data] ? (_.push({
+ origAttr: D.data,
+ mappedAttr: p.value.fieldMap[D.data]
+ }), D.data = p.value.fieldMap[D.data], D.title = D.data) : _.push({
+ origAttr: D.data,
+ mappedAttr: void 0
+ }), T.columns.map((L) => L.data).includes(D.data) || T.columns.push(D);
+ }), T.rows = T.rows.concat(
+ b.rows.map((D) => {
+ if (p.value.fieldMap)
+ for (const [L, B] of Object.entries(
+ p.value.fieldMap
+ ))
+ D[L] !== void 0 && D[B] === void 0 && (D[B] = D[L], delete D[L]);
+ return D;
+ })
+ ), T.fields = T.fields.concat(
+ b.fields.map((D) => ((!r.ui.exposeOids && D.type === "oid" || !r.ui.exposeMeasurements && (D.name.toLowerCase() === "shape_length" || D.name.toLowerCase() === "shape_area")) && Pe.value.add(D.name), {
+ name: p.value.fieldMap && p.value.fieldMap[D.name] ? p.value.fieldMap[D.name] : D.name,
+ type: D.type,
+ alias: D.alias ?? void 0,
+ length: D.length ?? void 0
+ }))
+ ), T.oidField = p.value.fieldMap && p.value.fieldMap[b.oidField] ? p.value.fieldMap[b.oidField] : b.oidField, J.value[C] = _;
+ }), he.value = T.oidField, [
+ "rvRowIndex",
+ "rvInteractive",
+ "rvSymbol",
+ ...T.columns
+ ].forEach((b) => {
+ p.value.state?.columns[b.data] === void 0 && (p.value.state.columns[b.data] = new qFt({
+ field: b.data,
+ title: b.title
+ })), (!r.ui.exposeOids || !r.ui.exposeMeasurements) && Pe.value.has(b.data) && (p.value.state.columns[b.data].visible = !1);
+ let m = p.value.state?.columns[b.data], _ = {
+ headerName: m.title ?? b.title,
+ headerComponent: "agColumnHeader",
+ headerComponentParams: {
+ sort: m.sort
+ },
+ field: b.data ?? b,
+ isSelector: m.filter.type === "selector",
+ sortable: !0,
+ lockPosition: !0,
+ filterParams: {},
+ floatingFilter: p.value.state.colFilter && m.searchable,
+ hide: !m?.visible,
+ minWidth: m.width,
+ maxWidth: m.width ?? 400,
+ cellRenderer: (D) => D.value,
+ suppressHeaderKeyboardEvent: (D) => {
+ const L = D.event;
+ return D.headerRowIndex === 0 && (L.key === "Enter" || !L.target.classList.contains("ag-header-cell") && L.key === "Tab");
+ }
+ }, C = T.fields.find(
+ (D) => D.name === _.field
+ );
+ b === "rvRowIndex" || b === "rvSymbol" || b === "rvInteractive" ? wt(
+ _,
+ Q.value,
+ p.value.state
+ ) : (i.indexOf(C.type) > -1 ? (Be(_, p.value.state), _.filter = "agNumberColumnFilter", _.autoHeight = !0, _.cellRenderer = m.template === "" ? K2e : r.component(m.template), _.cellRendererParams = {
+ type: "number"
+ }) : C.type === Ev.DATE ? (nt(_, p.value.state), _.filter = "agDateColumnFilter", _.autoHeight = !0, _.minWidth = 400, _.cellRenderer = m.template === "" ? K2e : r.component(m.template), _.cellRendererParams = {
+ type: "date"
+ }) : C.type === Ev.STRING && (_.isSelector ? Ee(
+ _,
+ T.rows,
+ p.value.state
+ ) : at(_, p.value.state), _.filter = "agTextColumnFilter", _.autoHeight = !0, _.cellRenderer = m.template === "" ? K2e : r.component(m.template), _.cellRendererParams = {
+ type: "string"
+ }), Q.value.push(_));
+ }), re.value = ya(T.rows), Q.value = ya(Q.value), Mt(), I.value = !1;
+ }).catch(() => {
+ P.value = !0, I.value = !1;
+ });
+ });
+ };
+ return H0(() => {
+ p.value = n.grids[e.gridId], I.value = !0, h(), Se.value = {
+ firstRow: 0,
+ lastRow: 0,
+ visibleRows: 0
+ }, x.value = {
+ agColumnHeader: vbr,
+ numberFloatingFilter: M1r,
+ textFloatingFilter: N1r,
+ selectorFloatingFilter: G1r,
+ dateFloatingFilter: K1r,
+ clearFloatingFilter: ebr
+ }, v.value = {
+ // lets header navigation be predictable, otherwise focus lists will be out of sync as soon as a column is shifted
+ ensureDomOrder: !0,
+ rowHeight: 40,
+ suppressRowTransform: !0,
+ onFilterChanged: () => {
+ Ne(), Mt();
+ },
+ onBodyScroll: () => {
+ [...document.querySelectorAll("[id^=tippy]")].forEach(
+ (A) => {
+ A._tippy && l.value?.contains(A._tippy.reference) && A._tippy.hide();
+ }
+ );
+ },
+ onBodyScrollEnd: () => {
+ kt();
+ },
+ rowBuffer: 0,
+ suppressColumnVirtualisation: !0,
+ // shift tab -> header, tab -> out of grid
+ tabToNextCell: C1r,
+ // tab vertically instead of horizontally
+ tabToNextHeader: S1r,
+ onModelUpdated: ZS(
+ 300,
+ () => X.value.autoSizeAllColumns()
+ )
+ }, si(), ei.value === "partial" && r.notify.show(
+ Mv.WARNING,
+ r.$i18n.t("layer.filterwarning")
+ ), j.value.push(
+ Fl(ei, (A) => {
+ A === "partial" && r.notify.show(
+ Mv.WARNING,
+ r.$i18n.t("layer.filterwarning")
+ );
+ })
+ );
+ }), gl(() => {
+ Ft(), V.value.forEach((A) => r.event.off(A)), j.value.forEach((A) => A()), fe.value?.removeAccessibilityListeners(), fe.value?.removeScrollListeners();
+ }), (A, ve) => {
+ const H = Bo("dropdown-menu"), T = qn("truncate"), b = qn("tippy");
+ return qt(), li("div", {
+ class: "flex flex-col w-full h-full bg-white",
+ ref_key: "el",
+ ref: l
+ }, [
+ Gr(Dt("div", null, [
+ Dt("p", $br, vr(gi(c)("grid.splash.error")), 1)
+ ], 512), [
+ [Rf, P.value]
+ ]),
+ Gr(Dt("div", Bbr, [
+ Dt("div", Vbr, [
+ Dt("span", jbr, vr(F.value.reduce((m, _) => m + _, 0)), 1),
+ Gbr,
+ Dt("span", Ubr, vr(k.value), 1)
+ ]),
+ Dt("div", zbr, [
+ Dt("span", Hbr, vr(F.value.reduce((m, _) => m + _, 0) < k.value ? gi(c)("grid.splash.loading") : gi(c)("grid.splash.building")), 1)
+ ]),
+ Dt("div", null, [
+ Dt("button", {
+ type: "button",
+ onClick: He,
+ class: "py-8 px-8 sm:px-16 bg-gray-300",
+ "aria-label": gi(c)("grid.splash.cancel")
+ }, vr(gi(c)("grid.splash.cancel")), 9, Wbr)
+ ])
+ ], 512), [
+ [Rf, I.value && !P.value]
+ ]),
+ Gr(Dt("div", qbr, [
+ Dt("div", Ybr, [
+ Gr((qt(), li("div", Xbr, [
+ qs(vr(Y.value), 1)
+ ])), [
+ [Rf, Y.value !== ""],
+ [T]
+ ]),
+ Gr((qt(), li("div", Kbr, [
+ qs(vr(gi(c)("grid.filters.label.info", {
+ range: `${Se.value.firstRow} - ${Se.value.lastRow}`,
+ total: Se.value.visibleRows
+ })) + " ", 1),
+ Se.value.visibleRows !== re.value.length ? (qt(), li("span", Jbr, vr(gi(c)("grid.filters.label.filtered", {
+ max: re.value.length
+ })), 1)) : Xr("", !0)
+ ])), [
+ [T]
+ ])
+ ]),
+ Dt("div", Zbr, [
+ Gr(Dt("div", Qbr, [
+ Gr(Dt("input", {
+ onInput: ve[0] || (ve[0] = (m) => je()),
+ onKeypress: ve[1] || (ve[1] = Dh(Go(() => {
+ }, ["prevent"]), ["enter"])),
+ onKeyup: ve[2] || (ve[2] = Dh((m) => {
+ gi(s).mobileView && m?.target?.blur();
+ }, ["enter"])),
+ enterkeyhint: "done",
+ "onUpdate:modelValue": ve[3] || (ve[3] = (m) => p.value.state.searchFilter = m),
+ class: "rv-global-search rv-input pr-32 min-w-0",
+ "aria-invalid": "false",
+ "aria-label": gi(c)("grid.filters.label.global"),
+ placeholder: gi(c)("grid.filters.label.global")
+ }, null, 40, ewr), [
+ [Ax, p.value.state.searchFilter]
+ ]),
+ Dt("div", twr, [
+ p.value.state.searchFilter.length < 3 ? (qt(), li("svg", iwr, nwr)) : (qt(), li("button", {
+ key: 1,
+ class: "flex justify-center fill-current ml-6 cursor-pointer",
+ onClick: ve[4] || (ve[4] = (m) => et())
+ }, owr))
+ ])
+ ], 512), [
+ [Rf, p.value.state.search]
+ ]),
+ Dt("div", awr, [
+ Dn(b1r, {
+ columnApi: X.value,
+ columnDefs: Q.value,
+ systemCols: Pe.value,
+ onRefreshHeaders: ve[5] || (ve[5] = (m) => y.value.refreshHeader())
+ }, null, 8, ["columnApi", "columnDefs", "systemCols"]),
+ Gr((qt(), li("button", {
+ type: "button",
+ class: "grid-clearall p-4 h-40 text-gray-500 hover:text-black",
+ onClick: ve[6] || (ve[6] = (m) => Qe()),
+ content: gi(c)("grid.clearAll"),
+ "aria-label": gi(c)("grid.clearAll")
+ }, cwr, 8, lwr)), [
+ [b, {
+ placement: "bottom"
+ }]
+ ]),
+ Dn(H, {
+ class: "h-40 w-40",
+ position: "bottom-end",
+ tooltip: gi(c)("panels.controls.optionsMenu"),
+ centered: !1
+ }, {
+ header: Sn(() => [
+ hwr
+ ]),
+ default: Sn(() => [
+ Dt("a", {
+ href: "javascript:;",
+ class: Gn(["flex leading-snug items-center w-256", {
+ hover: ei.value !== "disabled" ? "none" : "text-black",
+ disabled: ei.value === "disabled"
+ }]),
+ onClick: ve[7] || (ve[7] = (m) => ei.value !== "disabled" && gt())
+ }, [
+ Dt("div", dwr, [
+ pwr,
+ qs(" " + vr(gi(c)("grid.label.filters.apply")) + " ", 1),
+ ei.value !== "disabled" && p.value.state.applyToMap ? (qt(), li("svg", fwr, gwr)) : Xr("", !0)
+ ])
+ ], 2),
+ Dt("a", {
+ href: "javascript:;",
+ class: "flex leading-snug items-center w-256 hover:text-black",
+ onClick: ve[8] || (ve[8] = (m) => ft())
+ }, [
+ Dt("div", ywr, [
+ vwr,
+ qs(" " + vr(gi(c)("grid.label.filters.show")) + " ", 1),
+ p.value.state.colFilter ? (qt(), li("svg", _wr, wwr)) : Xr("", !0)
+ ])
+ ]),
+ Dt("a", {
+ href: "javascript:;",
+ class: Gn(["flex leading-snug items-center w-256", {
+ hover: ei.value !== "disabled" ? "none" : "text-black",
+ disabled: ei.value === "disabled"
+ }]),
+ onClick: ve[9] || (ve[9] = (m) => ei.value !== "disabled" && tt())
+ }, [
+ Dt("div", xwr, [
+ Swr,
+ qs(" " + vr(gi(c)("grid.filters.extent")) + " ", 1),
+ ei.value !== "disabled" && p.value.state.filterByExtent ? (qt(), li("svg", Cwr, Ewr)) : Xr("", !0)
+ ])
+ ], 2),
+ Dt("a", {
+ href: "javascript:;",
+ class: Gn(["flex leading-snug items-center w-256", { hover: "text-black" }]),
+ onClick: ve[10] || (ve[10] = (m) => It())
+ }, [
+ a.value ? (qt(), li("svg", Iwr, Pwr)) : a.value ? Xr("", !0) : (qt(), li("svg", Owr, Mwr)),
+ qs(" " + vr(gi(c)("grid.pinColumns")) + " ", 1),
+ a.value ? (qt(), li("svg", Dwr, Lwr)) : Xr("", !0)
+ ]),
+ Dt("a", {
+ href: "javascript:;",
+ class: Gn(["flex leading-snug items-center w-256", { hover: "text-black" }]),
+ onClick: ve[11] || (ve[11] = (m) => Nt())
+ }, [
+ Nwr,
+ qs(" " + vr(gi(c)("grid.export")), 1)
+ ])
+ ]),
+ _: 1
+ }, 8, ["tooltip"])
+ ])
+ ])
+ ], 512), [
+ [Rf, !I.value && !P.value]
+ ]),
+ Gr(Dn(gi(p1r), {
+ class: "ag-theme-material flex-grow",
+ enableCellTextSelection: "true",
+ gridOptions: v.value,
+ columnDefs: Q.value,
+ rowData: re.value,
+ components: x.value,
+ onGridReady: Re,
+ onKeydown: yt,
+ onFirstDataRendered: Ge,
+ onCellKeyPress: gi(be),
+ doesExternalFilterPass: le,
+ isExternalFilterPresent: st
+ }, null, 8, ["gridOptions", "columnDefs", "rowData", "components", "onCellKeyPress"]), [
+ [Rf, !I.value && !P.value]
+ ])
+ ], 512);
+ };
+ }
+});
+const $wr = /* @__PURE__ */ ol(kwr, [["__scopeId", "data-v-974bca09"]]), Bwr = /* @__PURE__ */ Kr({
+ __name: "screen",
+ props: {
+ panel: {
+ type: lG,
+ required: !0
+ }
+ },
+ setup(t) {
+ const e = O$(), { t: i } = Xn(), r = zr(() => e.currentId);
+ return (n, s) => {
+ const o = Bo("panel-screen");
+ return qt(), In(o, { panel: t.panel }, {
+ header: Sn(() => [
+ qs(vr(gi(i)("grid.title")), 1)
+ ]),
+ content: Sn(() => [
+ Dn($wr, {
+ class: "rv-grid",
+ gridId: r.value,
+ panel: t.panel
+ }, null, 8, ["gridId", "panel"])
+ ]),
+ _: 1
+ }, 8, ["panel"]);
+ };
+ }
+});
+const KFt = /* @__PURE__ */ ol(Bwr, [["__scopeId", "data-v-e4d6fbae"]]), Vwr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
+ __proto__: null,
+ default: KFt
+}, Symbol.toStringTag, { value: "Module" })), jwr = { en: { "grid.title": "Datatable", "grid.alertName": "Grid", "grid.splash.error": "Error: Failed to load the layer's data.", "grid.splash.loading": "Loading data...", "grid.splash.building": "Building table...", "grid.splash.cancel": "Cancel", "grid.clearAll": "Clear search and filters", "grid.pinColumns": "Pin columns", "grid.export": "Export", "grid.layer.loading": "The layer is loading...", "grid.label.columns": "Hide columns", "grid.label.copied": "Copied", "grid.label.copy": "Press ctrl + c or double click to copy", "grid.label.filters.show": "Show filters", "grid.label.filters.hide": "Hide filters", "grid.label.filters.apply": "Apply filters to map", "grid.header.sort.0": "Sort ascending", "grid.header.sort.1": "Sort descending", "grid.header.sort.2": "Sort default", "grid.header.reorder.left": "Move left", "grid.header.reorder.right": "Move right", "grid.filters.label.global": "Search table", "grid.filters.column.label.text": "Search {0}...", "grid.filters.clear": "Clear filters", "grid.filters.number.max": "Max", "grid.filters.number.min": "Min", "grid.filters.date.max": "Max Date", "grid.filters.date.min": "Min Date", "grid.filters.label.info": "{range} of {total} entries shown", "grid.filters.label.filtered": "(filtered from {max} total entries)", "grid.filters.extent": "Filter by extent", "grid.cells.zoom": "Zoom to feature", "grid.cells.zoom.zooming": "Zooming...", "grid.cells.zoom.error": "Zoom failed", "grid.cells.zoom.zoomed": "Zoomed", "grid.cells.alert.zoom": "Zoomed into feature", "grid.cells.details": "Details", "grid.button.title": "Grid" }, fr: { "grid.title": "Tableau de données", "grid.alertName": "Grille", "grid.splash.error": "Erreur : Échec du chargement des données de la couche.", "grid.splash.loading": "Chargement des données...", "grid.splash.building": "Création du tableau...", "grid.splash.cancel": "Annuler", "grid.clearAll": "Effacer la recherche et les filtres", "grid.pinColumns": "Épingler les colonnes", "grid.export": "Exporter", "grid.layer.loading": "La couche est en cours de téléchargement...", "grid.label.columns": "Masquer les colonnes", "grid.label.copied": "Copié", "grid.label.copy": "Appuyez sur ctrl + c ou double-cliquez pour copier", "grid.label.filters.show": "Afficher les filtres", "grid.label.filters.hide": "Masquer les filtres", "grid.label.filters.apply": "Appliquer les filtres à la carte", "grid.header.sort.0": "Tri ascendant", "grid.header.sort.1": "Tri descendant", "grid.header.sort.2": "Tri par défaut", "grid.header.reorder.left": "Déplacer vers la gauche", "grid.header.reorder.right": "Déplacer vers la droite", "grid.filters.label.global": "Tableau de recherche", "grid.filters.column.label.text": "Rechercher {0}...", "grid.filters.clear": "Supprimer les filtres", "grid.filters.number.max": "Max", "grid.filters.number.min": "Min", "grid.filters.date.max": "Max Date", "grid.filters.date.min": "Min Date", "grid.filters.label.info": "{range} de {total} saisies affichées", "grid.filters.label.filtered": "(filtré à partir d'un total de {max} saisies)", "grid.filters.extent": "Filtrer par étendue", "grid.cells.zoom": "Zoom à l'élément", "grid.cells.zoom.zooming": "Zoom...", "grid.cells.zoom.error": "Échec du zoom", "grid.cells.zoom.zoomed": "Zoomé", "grid.cells.alert.zoom": "Zoom sur la caractéristique", "grid.cells.details": "Détails", "grid.button.title": "Grille" } };
+class Gwr extends e1r {
+ async added() {
+ this.$iApi.panel.register(
+ {
+ grid: {
+ screens: {
+ "grid-screen": ya(KFt)
+ },
+ style: {
+ width: "450px"
+ },
+ controls: {
+ expand: !0
+ },
+ button: {
+ tooltip: "grid.button.title",
+ // https://fonts.google.com/icons?selected=Material%20Icons%3Atable_chart
+ icon: ''
+ },
+ expanded: !0,
+ alertName: "grid.alertName"
+ }
+ },
+ { i18n: { messages: jwr } }
+ ), this._parseConfig(this.config);
+ }
+ removed() {
+ this.$iApi.fixture.get("appbar") && Bg(this.$vApp.$pinia).removeButton("grid"), O$(this.$vApp.$pinia).$reset(), this.$iApi.panel.remove("grid");
+ }
+}
+const Uwr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
+ __proto__: null,
+ default: Gwr
+}, Symbol.toStringTag, { value: "Module" }));
+class zwr extends oc {
+ /**
+ * Toggles help panel
+ *
+ * @param {boolean} [open] force panel open or closed
+ * @memberof HelpAPI
+ */
+ toggleHelp(e) {
+ const i = this.$iApi.panel.get("help");
+ this.$iApi.panel.toggle(i, e);
+ }
+ /**
+ * Returns `HelpConfig` section of the global config file.
+ *
+ * @readonly
+ * @type {HelpConfig}
+ * @memberof HelpAPI
+ */
+ get config() {
+ return super.config;
+ }
+ /**
+ * Parses the help config JSON snippet from the config file and save to the fixture store.
+ *
+ * @param {HelpConfig} [helpConfig]
+ * @memberof HelpAPI
+ */
+ _parseConfig(e) {
+ const i = w0e(this.$vApp.$pinia);
+ i.location = e?.location ?? "./help/", this.handlePanelWidths(["help"]), this.handlePanelTeleports(["help"]);
+ }
+}
+const Hwr = (t) => (Pc("data-v-c2a24c78"), t = t(), Oc(), t), Wwr = { key: 0 }, qwr = ["content"], Ywr = { class: "text-lg text-left flex-grow" }, Xwr = /* @__PURE__ */ Hwr(() => /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ height: "24",
+ viewBox: "0 0 24 24",
+ width: "24"
+}, [
+ /* @__PURE__ */ Dt("path", {
+ d: "M0 0h24v24H0V0z",
+ fill: "none"
+ }),
+ /* @__PURE__ */ Dt("path", { d: "M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z" })
+], -1)), Kwr = [
+ Xwr
+], Jwr = ["innerHTML"], Zwr = /* @__PURE__ */ Kr({
+ __name: "section",
+ props: {
+ helpSection: {
+ type: Object,
+ required: !0
+ }
+ },
+ setup(t) {
+ const { t: e } = Xn();
+ return (i, r) => {
+ const n = qn("tippy");
+ return t.helpSection.drawn ? (qt(), li("div", Wwr, [
+ Dt("div", null, [
+ Gr((qt(), li("button", {
+ type: "button",
+ class: "help-section-header flex items-center py-15 px-25 hover:bg-gray-200 cursor-pointer select-none w-full",
+ onClick: r[0] || (r[0] = (s) => i.$emit("expand")),
+ content: gi(e)(
+ t.helpSection.expanded ? "help.section.collapse" : "help.section.expand"
+ )
+ }, [
+ Dt("span", Ywr, vr(t.helpSection.header), 1),
+ Dt("div", {
+ class: Gn(["dropdown-icon", { "transform -rotate-180": t.helpSection.expanded }])
+ }, Kwr, 2)
+ ], 8, qwr)), [
+ [n, { placement: "top-end", hideOnClick: !1 }]
+ ]),
+ Dn(M4, {
+ name: "help-item",
+ mode: "out-in"
+ }, {
+ default: Sn(() => [
+ Gr(Dt("div", {
+ innerHTML: t.helpSection.info,
+ class: "ramp-markdown section-body px-20 pt-5 ml-10 overflow-hidden"
+ }, null, 8, Jwr), [
+ [Rf, t.helpSection.expanded]
+ ])
+ ]),
+ _: 1
+ })
+ ])
+ ])) : Xr("", !0);
+ };
+ }
+});
+const Qwr = /* @__PURE__ */ ol(Zwr, [["__scopeId", "data-v-c2a24c78"]]);
+function JFt() {
+ return {
+ async: !1,
+ baseUrl: null,
+ breaks: !1,
+ extensions: null,
+ gfm: !0,
+ headerIds: !0,
+ headerPrefix: "",
+ highlight: null,
+ hooks: null,
+ langPrefix: "language-",
+ mangle: !0,
+ pedantic: !1,
+ renderer: null,
+ sanitize: !1,
+ sanitizer: null,
+ silent: !1,
+ smartypants: !1,
+ tokenizer: null,
+ walkTokens: null,
+ xhtml: !1
+ };
+}
+let E8 = JFt();
+function exr(t) {
+ E8 = t;
+}
+const ZFt = /[&<>"']/, txr = new RegExp(ZFt.source, "g"), QFt = /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, ixr = new RegExp(QFt.source, "g"), rxr = {
+ "&": "&",
+ "<": "<",
+ ">": ">",
+ '"': """,
+ "'": "'"
+}, wot = (t) => rxr[t];
+function m0(t, e) {
+ if (e) {
+ if (ZFt.test(t))
+ return t.replace(txr, wot);
+ } else if (QFt.test(t))
+ return t.replace(ixr, wot);
+ return t;
+}
+const nxr = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;
+function e4t(t) {
+ return t.replace(nxr, (e, i) => (i = i.toLowerCase(), i === "colon" ? ":" : i.charAt(0) === "#" ? i.charAt(1) === "x" ? String.fromCharCode(parseInt(i.substring(2), 16)) : String.fromCharCode(+i.substring(1)) : ""));
+}
+const sxr = /(^|[^\[])\^/g;
+function kh(t, e) {
+ t = typeof t == "string" ? t : t.source, e = e || "";
+ const i = {
+ replace: (r, n) => (n = n.source || n, n = n.replace(sxr, "$1"), t = t.replace(r, n), i),
+ getRegex: () => new RegExp(t, e)
+ };
+ return i;
+}
+const oxr = /[^\w:]/g, axr = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;
+function xot(t, e, i) {
+ if (t) {
+ let r;
+ try {
+ r = decodeURIComponent(e4t(i)).replace(oxr, "").toLowerCase();
+ } catch {
+ return null;
+ }
+ if (r.indexOf("javascript:") === 0 || r.indexOf("vbscript:") === 0 || r.indexOf("data:") === 0)
+ return null;
+ }
+ e && !axr.test(i) && (i = hxr(e, i));
+ try {
+ i = encodeURI(i).replace(/%25/g, "%");
+ } catch {
+ return null;
+ }
+ return i;
+}
+const Cae = {}, lxr = /^[^:]+:\/*[^/]*$/, uxr = /^([^:]+:)[\s\S]*$/, cxr = /^([^:]+:\/*[^/]*)[\s\S]*$/;
+function hxr(t, e) {
+ Cae[" " + t] || (lxr.test(t) ? Cae[" " + t] = t + "/" : Cae[" " + t] = Lce(t, "/", !0)), t = Cae[" " + t];
+ const i = t.indexOf(":") === -1;
+ return e.substring(0, 2) === "//" ? i ? e : t.replace(uxr, "$1") + e : e.charAt(0) === "/" ? i ? e : t.replace(cxr, "$1") + e : t + e;
+}
+const _me = { exec: function() {
+} };
+function Sot(t, e) {
+ const i = t.replace(/\|/g, (s, o, a) => {
+ let l = !1, c = o;
+ for (; --c >= 0 && a[c] === "\\"; )
+ l = !l;
+ return l ? "|" : " |";
+ }), r = i.split(/ \|/);
+ let n = 0;
+ if (r[0].trim() || r.shift(), r.length > 0 && !r[r.length - 1].trim() && r.pop(), r.length > e)
+ r.splice(e);
+ else
+ for (; r.length < e; )
+ r.push("");
+ for (; n < r.length; n++)
+ r[n] = r[n].trim().replace(/\\\|/g, "|");
+ return r;
+}
+function Lce(t, e, i) {
+ const r = t.length;
+ if (r === 0)
+ return "";
+ let n = 0;
+ for (; n < r; ) {
+ const s = t.charAt(r - n - 1);
+ if (s === e && !i)
+ n++;
+ else if (s !== e && i)
+ n++;
+ else
+ break;
+ }
+ return t.slice(0, r - n);
+}
+function dxr(t, e) {
+ if (t.indexOf(e[1]) === -1)
+ return -1;
+ const i = t.length;
+ let r = 0, n = 0;
+ for (; n < i; n++)
+ if (t[n] === "\\")
+ n++;
+ else if (t[n] === e[0])
+ r++;
+ else if (t[n] === e[1] && (r--, r < 0))
+ return n;
+ return -1;
+}
+function pxr(t) {
+ t && t.sanitize && !t.silent && console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options");
+}
+function Cot(t, e) {
+ if (e < 1)
+ return "";
+ let i = "";
+ for (; e > 1; )
+ e & 1 && (i += t), e >>= 1, t += t;
+ return i + t;
+}
+function Tot(t, e, i, r) {
+ const n = e.href, s = e.title ? m0(e.title) : null, o = t[1].replace(/\\([\[\]])/g, "$1");
+ if (t[0].charAt(0) !== "!") {
+ r.state.inLink = !0;
+ const a = {
+ type: "link",
+ raw: i,
+ href: n,
+ title: s,
+ text: o,
+ tokens: r.inlineTokens(o)
+ };
+ return r.state.inLink = !1, a;
+ }
+ return {
+ type: "image",
+ raw: i,
+ href: n,
+ title: s,
+ text: m0(o)
+ };
+}
+function fxr(t, e) {
+ const i = t.match(/^(\s+)(?:```)/);
+ if (i === null)
+ return e;
+ const r = i[1];
+ return e.split(`
+`).map((n) => {
+ const s = n.match(/^\s+/);
+ if (s === null)
+ return n;
+ const [o] = s;
+ return o.length >= r.length ? n.slice(r.length) : n;
+ }).join(`
+`);
+}
+class sBe {
+ constructor(e) {
+ this.options = e || E8;
+ }
+ space(e) {
+ const i = this.rules.block.newline.exec(e);
+ if (i && i[0].length > 0)
+ return {
+ type: "space",
+ raw: i[0]
+ };
+ }
+ code(e) {
+ const i = this.rules.block.code.exec(e);
+ if (i) {
+ const r = i[0].replace(/^ {1,4}/gm, "");
+ return {
+ type: "code",
+ raw: i[0],
+ codeBlockStyle: "indented",
+ text: this.options.pedantic ? r : Lce(r, `
+`)
+ };
+ }
+ }
+ fences(e) {
+ const i = this.rules.block.fences.exec(e);
+ if (i) {
+ const r = i[0], n = fxr(r, i[3] || "");
+ return {
+ type: "code",
+ raw: r,
+ lang: i[2] ? i[2].trim().replace(this.rules.inline._escapes, "$1") : i[2],
+ text: n
+ };
+ }
+ }
+ heading(e) {
+ const i = this.rules.block.heading.exec(e);
+ if (i) {
+ let r = i[2].trim();
+ if (/#$/.test(r)) {
+ const n = Lce(r, "#");
+ (this.options.pedantic || !n || / $/.test(n)) && (r = n.trim());
+ }
+ return {
+ type: "heading",
+ raw: i[0],
+ depth: i[1].length,
+ text: r,
+ tokens: this.lexer.inline(r)
+ };
+ }
+ }
+ hr(e) {
+ const i = this.rules.block.hr.exec(e);
+ if (i)
+ return {
+ type: "hr",
+ raw: i[0]
+ };
+ }
+ blockquote(e) {
+ const i = this.rules.block.blockquote.exec(e);
+ if (i) {
+ const r = i[0].replace(/^ *>[ \t]?/gm, ""), n = this.lexer.state.top;
+ this.lexer.state.top = !0;
+ const s = this.lexer.blockTokens(r);
+ return this.lexer.state.top = n, {
+ type: "blockquote",
+ raw: i[0],
+ tokens: s,
+ text: r
+ };
+ }
+ }
+ list(e) {
+ let i = this.rules.block.list.exec(e);
+ if (i) {
+ let r, n, s, o, a, l, c, h, p, y, v, x, I = i[1].trim();
+ const P = I.length > 1, F = {
+ type: "list",
+ raw: "",
+ ordered: P,
+ start: P ? +I.slice(0, -1) : "",
+ loose: !1,
+ items: []
+ };
+ I = P ? `\\d{1,9}\\${I.slice(-1)}` : `\\${I}`, this.options.pedantic && (I = P ? I : "[*+-]");
+ const k = new RegExp(`^( {0,3}${I})((?:[ ][^\\n]*)?(?:\\n|$))`);
+ for (; e && (x = !1, !(!(i = k.exec(e)) || this.rules.block.hr.test(e))); ) {
+ if (r = i[0], e = e.substring(r.length), h = i[2].split(`
+`, 1)[0].replace(/^\t+/, (j) => " ".repeat(3 * j.length)), p = e.split(`
+`, 1)[0], this.options.pedantic ? (o = 2, v = h.trimLeft()) : (o = i[2].search(/[^ ]/), o = o > 4 ? 1 : o, v = h.slice(o), o += i[1].length), l = !1, !h && /^ *$/.test(p) && (r += p + `
+`, e = e.substring(p.length + 1), x = !0), !x) {
+ const j = new RegExp(`^ {0,${Math.min(3, o - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), Y = new RegExp(`^ {0,${Math.min(3, o - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), X = new RegExp(`^ {0,${Math.min(3, o - 1)}}(?:\`\`\`|~~~)`), Q = new RegExp(`^ {0,${Math.min(3, o - 1)}}#`);
+ for (; e && (y = e.split(`
+`, 1)[0], p = y, this.options.pedantic && (p = p.replace(/^ {1,4}(?=( {4})*[^ ])/g, " ")), !(X.test(p) || Q.test(p) || j.test(p) || Y.test(e))); ) {
+ if (p.search(/[^ ]/) >= o || !p.trim())
+ v += `
+` + p.slice(o);
+ else {
+ if (l || h.search(/[^ ]/) >= 4 || X.test(h) || Q.test(h) || Y.test(h))
+ break;
+ v += `
+` + p;
+ }
+ !l && !p.trim() && (l = !0), r += y + `
+`, e = e.substring(y.length + 1), h = p.slice(o);
+ }
+ }
+ F.loose || (c ? F.loose = !0 : /\n *\n *$/.test(r) && (c = !0)), this.options.gfm && (n = /^\[[ xX]\] /.exec(v), n && (s = n[0] !== "[ ] ", v = v.replace(/^\[[ xX]\] +/, ""))), F.items.push({
+ type: "list_item",
+ raw: r,
+ task: !!n,
+ checked: s,
+ loose: !1,
+ text: v
+ }), F.raw += r;
+ }
+ F.items[F.items.length - 1].raw = r.trimRight(), F.items[F.items.length - 1].text = v.trimRight(), F.raw = F.raw.trimRight();
+ const V = F.items.length;
+ for (a = 0; a < V; a++)
+ if (this.lexer.state.top = !1, F.items[a].tokens = this.lexer.blockTokens(F.items[a].text, []), !F.loose) {
+ const j = F.items[a].tokens.filter((X) => X.type === "space"), Y = j.length > 0 && j.some((X) => /\n.*\n/.test(X.raw));
+ F.loose = Y;
+ }
+ if (F.loose)
+ for (a = 0; a < V; a++)
+ F.items[a].loose = !0;
+ return F;
+ }
+ }
+ html(e) {
+ const i = this.rules.block.html.exec(e);
+ if (i) {
+ const r = {
+ type: "html",
+ raw: i[0],
+ pre: !this.options.sanitizer && (i[1] === "pre" || i[1] === "script" || i[1] === "style"),
+ text: i[0]
+ };
+ if (this.options.sanitize) {
+ const n = this.options.sanitizer ? this.options.sanitizer(i[0]) : m0(i[0]);
+ r.type = "paragraph", r.text = n, r.tokens = this.lexer.inline(n);
+ }
+ return r;
+ }
+ }
+ def(e) {
+ const i = this.rules.block.def.exec(e);
+ if (i) {
+ const r = i[1].toLowerCase().replace(/\s+/g, " "), n = i[2] ? i[2].replace(/^<(.*)>$/, "$1").replace(this.rules.inline._escapes, "$1") : "", s = i[3] ? i[3].substring(1, i[3].length - 1).replace(this.rules.inline._escapes, "$1") : i[3];
+ return {
+ type: "def",
+ tag: r,
+ raw: i[0],
+ href: n,
+ title: s
+ };
+ }
+ }
+ table(e) {
+ const i = this.rules.block.table.exec(e);
+ if (i) {
+ const r = {
+ type: "table",
+ header: Sot(i[1]).map((n) => ({ text: n })),
+ align: i[2].replace(/^ *|\| *$/g, "").split(/ *\| */),
+ rows: i[3] && i[3].trim() ? i[3].replace(/\n[ \t]*$/, "").split(`
+`) : []
+ };
+ if (r.header.length === r.align.length) {
+ r.raw = i[0];
+ let n = r.align.length, s, o, a, l;
+ for (s = 0; s < n; s++)
+ /^ *-+: *$/.test(r.align[s]) ? r.align[s] = "right" : /^ *:-+: *$/.test(r.align[s]) ? r.align[s] = "center" : /^ *:-+ *$/.test(r.align[s]) ? r.align[s] = "left" : r.align[s] = null;
+ for (n = r.rows.length, s = 0; s < n; s++)
+ r.rows[s] = Sot(r.rows[s], r.header.length).map((c) => ({ text: c }));
+ for (n = r.header.length, o = 0; o < n; o++)
+ r.header[o].tokens = this.lexer.inline(r.header[o].text);
+ for (n = r.rows.length, o = 0; o < n; o++)
+ for (l = r.rows[o], a = 0; a < l.length; a++)
+ l[a].tokens = this.lexer.inline(l[a].text);
+ return r;
+ }
+ }
+ }
+ lheading(e) {
+ const i = this.rules.block.lheading.exec(e);
+ if (i)
+ return {
+ type: "heading",
+ raw: i[0],
+ depth: i[2].charAt(0) === "=" ? 1 : 2,
+ text: i[1],
+ tokens: this.lexer.inline(i[1])
+ };
+ }
+ paragraph(e) {
+ const i = this.rules.block.paragraph.exec(e);
+ if (i) {
+ const r = i[1].charAt(i[1].length - 1) === `
+` ? i[1].slice(0, -1) : i[1];
+ return {
+ type: "paragraph",
+ raw: i[0],
+ text: r,
+ tokens: this.lexer.inline(r)
+ };
+ }
+ }
+ text(e) {
+ const i = this.rules.block.text.exec(e);
+ if (i)
+ return {
+ type: "text",
+ raw: i[0],
+ text: i[0],
+ tokens: this.lexer.inline(i[0])
+ };
+ }
+ escape(e) {
+ const i = this.rules.inline.escape.exec(e);
+ if (i)
+ return {
+ type: "escape",
+ raw: i[0],
+ text: m0(i[1])
+ };
+ }
+ tag(e) {
+ const i = this.rules.inline.tag.exec(e);
+ if (i)
+ return !this.lexer.state.inLink && /^/i.test(i[0]) && (this.lexer.state.inLink = !1), !this.lexer.state.inRawBlock && /^<(pre|code|kbd|script)(\s|>)/i.test(i[0]) ? this.lexer.state.inRawBlock = !0 : this.lexer.state.inRawBlock && /^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0]) && (this.lexer.state.inRawBlock = !1), {
+ type: this.options.sanitize ? "text" : "html",
+ raw: i[0],
+ inLink: this.lexer.state.inLink,
+ inRawBlock: this.lexer.state.inRawBlock,
+ text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(i[0]) : m0(i[0]) : i[0]
+ };
+ }
+ link(e) {
+ const i = this.rules.inline.link.exec(e);
+ if (i) {
+ const r = i[2].trim();
+ if (!this.options.pedantic && /^$/.test(r))
+ return;
+ const o = Lce(r.slice(0, -1), "\\");
+ if ((r.length - o.length) % 2 === 0)
+ return;
+ } else {
+ const o = dxr(i[2], "()");
+ if (o > -1) {
+ const l = (i[0].indexOf("!") === 0 ? 5 : 4) + i[1].length + o;
+ i[2] = i[2].substring(0, o), i[0] = i[0].substring(0, l).trim(), i[3] = "";
+ }
+ }
+ let n = i[2], s = "";
+ if (this.options.pedantic) {
+ const o = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(n);
+ o && (n = o[1], s = o[3]);
+ } else
+ s = i[3] ? i[3].slice(1, -1) : "";
+ return n = n.trim(), /^$/.test(r) ? n = n.slice(1) : n = n.slice(1, -1)), Tot(i, {
+ href: n && n.replace(this.rules.inline._escapes, "$1"),
+ title: s && s.replace(this.rules.inline._escapes, "$1")
+ }, i[0], this.lexer);
+ }
+ }
+ reflink(e, i) {
+ let r;
+ if ((r = this.rules.inline.reflink.exec(e)) || (r = this.rules.inline.nolink.exec(e))) {
+ let n = (r[2] || r[1]).replace(/\s+/g, " ");
+ if (n = i[n.toLowerCase()], !n) {
+ const s = r[0].charAt(0);
+ return {
+ type: "text",
+ raw: s,
+ text: s
+ };
+ }
+ return Tot(r, n, r[0], this.lexer);
+ }
+ }
+ emStrong(e, i, r = "") {
+ let n = this.rules.inline.emStrong.lDelim.exec(e);
+ if (!n || n[3] && r.match(/[\p{L}\p{N}]/u))
+ return;
+ const s = n[1] || n[2] || "";
+ if (!s || s && (r === "" || this.rules.inline.punctuation.exec(r))) {
+ const o = n[0].length - 1;
+ let a, l, c = o, h = 0;
+ const p = n[0][0] === "*" ? this.rules.inline.emStrong.rDelimAst : this.rules.inline.emStrong.rDelimUnd;
+ for (p.lastIndex = 0, i = i.slice(-1 * e.length + o); (n = p.exec(i)) != null; ) {
+ if (a = n[1] || n[2] || n[3] || n[4] || n[5] || n[6], !a)
+ continue;
+ if (l = a.length, n[3] || n[4]) {
+ c += l;
+ continue;
+ } else if ((n[5] || n[6]) && o % 3 && !((o + l) % 3)) {
+ h += l;
+ continue;
+ }
+ if (c -= l, c > 0)
+ continue;
+ l = Math.min(l, l + c + h);
+ const y = e.slice(0, o + n.index + (n[0].length - a.length) + l);
+ if (Math.min(o, l) % 2) {
+ const x = y.slice(1, -1);
+ return {
+ type: "em",
+ raw: y,
+ text: x,
+ tokens: this.lexer.inlineTokens(x)
+ };
+ }
+ const v = y.slice(2, -2);
+ return {
+ type: "strong",
+ raw: y,
+ text: v,
+ tokens: this.lexer.inlineTokens(v)
+ };
+ }
+ }
+ }
+ codespan(e) {
+ const i = this.rules.inline.code.exec(e);
+ if (i) {
+ let r = i[2].replace(/\n/g, " ");
+ const n = /[^ ]/.test(r), s = /^ /.test(r) && / $/.test(r);
+ return n && s && (r = r.substring(1, r.length - 1)), r = m0(r, !0), {
+ type: "codespan",
+ raw: i[0],
+ text: r
+ };
+ }
+ }
+ br(e) {
+ const i = this.rules.inline.br.exec(e);
+ if (i)
+ return {
+ type: "br",
+ raw: i[0]
+ };
+ }
+ del(e) {
+ const i = this.rules.inline.del.exec(e);
+ if (i)
+ return {
+ type: "del",
+ raw: i[0],
+ text: i[2],
+ tokens: this.lexer.inlineTokens(i[2])
+ };
+ }
+ autolink(e, i) {
+ const r = this.rules.inline.autolink.exec(e);
+ if (r) {
+ let n, s;
+ return r[2] === "@" ? (n = m0(this.options.mangle ? i(r[1]) : r[1]), s = "mailto:" + n) : (n = m0(r[1]), s = n), {
+ type: "link",
+ raw: r[0],
+ text: n,
+ href: s,
+ tokens: [
+ {
+ type: "text",
+ raw: n,
+ text: n
+ }
+ ]
+ };
+ }
+ }
+ url(e, i) {
+ let r;
+ if (r = this.rules.inline.url.exec(e)) {
+ let n, s;
+ if (r[2] === "@")
+ n = m0(this.options.mangle ? i(r[0]) : r[0]), s = "mailto:" + n;
+ else {
+ let o;
+ do
+ o = r[0], r[0] = this.rules.inline._backpedal.exec(r[0])[0];
+ while (o !== r[0]);
+ n = m0(r[0]), r[1] === "www." ? s = "http://" + r[0] : s = r[0];
+ }
+ return {
+ type: "link",
+ raw: r[0],
+ text: n,
+ href: s,
+ tokens: [
+ {
+ type: "text",
+ raw: n,
+ text: n
+ }
+ ]
+ };
+ }
+ }
+ inlineText(e, i) {
+ const r = this.rules.inline.text.exec(e);
+ if (r) {
+ let n;
+ return this.lexer.state.inRawBlock ? n = this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(r[0]) : m0(r[0]) : r[0] : n = m0(this.options.smartypants ? i(r[0]) : r[0]), {
+ type: "text",
+ raw: r[0],
+ text: n
+ };
+ }
+ }
+}
+const zo = {
+ newline: /^(?: *(?:\n|$))+/,
+ code: /^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,
+ fences: /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,
+ hr: /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,
+ heading: /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,
+ blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,
+ list: /^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,
+ html: "^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",
+ def: /^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,
+ table: _me,
+ lheading: /^((?:.|\n(?!\n))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
+ // regex template, placeholders will be replaced according to different paragraph
+ // interruption rules of commonmark and the original markdown spec:
+ _paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,
+ text: /^[^\n]+/
+};
+zo._label = /(?!\s*\])(?:\\.|[^\[\]\\])+/;
+zo._title = /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;
+zo.def = kh(zo.def).replace("label", zo._label).replace("title", zo._title).getRegex();
+zo.bullet = /(?:[*+-]|\d{1,9}[.)])/;
+zo.listItemStart = kh(/^( *)(bull) */).replace("bull", zo.bullet).getRegex();
+zo.list = kh(zo.list).replace(/bull/g, zo.bullet).replace("hr", "\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def", "\\n+(?=" + zo.def.source + ")").getRegex();
+zo._tag = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul";
+zo._comment = /|$)/;
+zo.html = kh(zo.html, "i").replace("comment", zo._comment).replace("tag", zo._tag).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();
+zo.paragraph = kh(zo._paragraph).replace("hr", zo.hr).replace("heading", " {0,3}#{1,6} ").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", zo._tag).getRegex();
+zo.blockquote = kh(zo.blockquote).replace("paragraph", zo.paragraph).getRegex();
+zo.normal = { ...zo };
+zo.gfm = {
+ ...zo.normal,
+ table: "^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"
+ // Cells
+};
+zo.gfm.table = kh(zo.gfm.table).replace("hr", zo.hr).replace("heading", " {0,3}#{1,6} ").replace("blockquote", " {0,3}>").replace("code", " {4}[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", zo._tag).getRegex();
+zo.gfm.paragraph = kh(zo._paragraph).replace("hr", zo.hr).replace("heading", " {0,3}#{1,6} ").replace("|lheading", "").replace("table", zo.gfm.table).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", zo._tag).getRegex();
+zo.pedantic = {
+ ...zo.normal,
+ html: kh(
+ `^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?\\1> *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`
+ ).replace("comment", zo._comment).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
+ def: /^ *\[([^\]]+)\]: *([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
+ heading: /^(#{1,6})(.*)(?:\n+|$)/,
+ fences: _me,
+ // fences not supported
+ lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
+ paragraph: kh(zo.normal._paragraph).replace("hr", zo.hr).replace("heading", ` *#{1,6} *[^
+]`).replace("lheading", zo.lheading).replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").getRegex()
+};
+const Rs = {
+ escape: /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,
+ autolink: /^<(scheme:[^\s\x00-\x1f<>]*|email)>/,
+ url: _me,
+ tag: "^comment|^[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",
+ // CDATA section
+ link: /^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,
+ reflink: /^!?\[(label)\]\[(ref)\]/,
+ nolink: /^!?\[(ref)\](?:\[\])?/,
+ reflinkSearch: "reflink|nolink(?!\\()",
+ emStrong: {
+ lDelim: /^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,
+ // (1) and (2) can only be a Right Delimiter. (3) and (4) can only be Left. (5) and (6) can be either Left or Right.
+ // () Skip orphan inside strong () Consume to delim (1) #*** (2) a***#, a*** (3) #***a, ***a (4) ***# (5) #***# (6) a***a
+ rDelimAst: /^(?:[^_*\\]|\\.)*?\_\_(?:[^_*\\]|\\.)*?\*(?:[^_*\\]|\\.)*?(?=\_\_)|(?:[^*\\]|\\.)+(?=[^*])|[punct_](\*+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|(?:[^punct*_\s\\]|\\.)(\*+)(?=[^punct*_\s])/,
+ rDelimUnd: /^(?:[^_*\\]|\\.)*?\*\*(?:[^_*\\]|\\.)*?\_(?:[^_*\\]|\\.)*?(?=\*\*)|(?:[^_\\]|\\.)+(?=[^_])|[punct*](\_+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/
+ // ^- Not allowed for _
+ },
+ code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,
+ br: /^( {2,}|\\)\n(?!\s*$)/,
+ del: _me,
+ text: /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~";
+Rs.punctuation = kh(Rs.punctuation).replace(/punctuation/g, Rs._punctuation).getRegex();
+Rs.blockSkip = /\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;
+Rs.escapedEmSt = /(?:^|[^\\])(?:\\\\)*\\[*_]/g;
+Rs._comment = kh(zo._comment).replace("(?:-->|$)", "-->").getRegex();
+Rs.emStrong.lDelim = kh(Rs.emStrong.lDelim).replace(/punct/g, Rs._punctuation).getRegex();
+Rs.emStrong.rDelimAst = kh(Rs.emStrong.rDelimAst, "g").replace(/punct/g, Rs._punctuation).getRegex();
+Rs.emStrong.rDelimUnd = kh(Rs.emStrong.rDelimUnd, "g").replace(/punct/g, Rs._punctuation).getRegex();
+Rs._escapes = /\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;
+Rs._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;
+Rs._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;
+Rs.autolink = kh(Rs.autolink).replace("scheme", Rs._scheme).replace("email", Rs._email).getRegex();
+Rs._attribute = /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;
+Rs.tag = kh(Rs.tag).replace("comment", Rs._comment).replace("attribute", Rs._attribute).getRegex();
+Rs._label = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;
+Rs._href = /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;
+Rs._title = /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;
+Rs.link = kh(Rs.link).replace("label", Rs._label).replace("href", Rs._href).replace("title", Rs._title).getRegex();
+Rs.reflink = kh(Rs.reflink).replace("label", Rs._label).replace("ref", zo._label).getRegex();
+Rs.nolink = kh(Rs.nolink).replace("ref", zo._label).getRegex();
+Rs.reflinkSearch = kh(Rs.reflinkSearch, "g").replace("reflink", Rs.reflink).replace("nolink", Rs.nolink).getRegex();
+Rs.normal = { ...Rs };
+Rs.pedantic = {
+ ...Rs.normal,
+ strong: {
+ start: /^__|\*\*/,
+ middle: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,
+ endAst: /\*\*(?!\*)/g,
+ endUnd: /__(?!_)/g
+ },
+ em: {
+ start: /^_|\*/,
+ middle: /^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,
+ endAst: /\*(?!\*)/g,
+ endUnd: /_(?!_)/g
+ },
+ link: kh(/^!?\[(label)\]\((.*?)\)/).replace("label", Rs._label).getRegex(),
+ reflink: kh(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", Rs._label).getRegex()
+};
+Rs.gfm = {
+ ...Rs.normal,
+ escape: kh(Rs.escape).replace("])", "~|])").getRegex(),
+ _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,
+ url: /^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,
+ _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
+ del: /^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,
+ text: /^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\ 0.5 && (r = "x" + r.toString(16)), e += "" + r + ";";
+ return e;
+}
+class g4 {
+ constructor(e) {
+ this.tokens = [], this.tokens.links = /* @__PURE__ */ Object.create(null), this.options = e || E8, this.options.tokenizer = this.options.tokenizer || new sBe(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
+ inLink: !1,
+ inRawBlock: !1,
+ top: !0
+ };
+ const i = {
+ block: zo.normal,
+ inline: Rs.normal
+ };
+ this.options.pedantic ? (i.block = zo.pedantic, i.inline = Rs.pedantic) : this.options.gfm && (i.block = zo.gfm, this.options.breaks ? i.inline = Rs.breaks : i.inline = Rs.gfm), this.tokenizer.rules = i;
+ }
+ /**
+ * Expose Rules
+ */
+ static get rules() {
+ return {
+ block: zo,
+ inline: Rs
+ };
+ }
+ /**
+ * Static Lex Method
+ */
+ static lex(e, i) {
+ return new g4(i).lex(e);
+ }
+ /**
+ * Static Lex Inline Method
+ */
+ static lexInline(e, i) {
+ return new g4(i).inlineTokens(e);
+ }
+ /**
+ * Preprocessing
+ */
+ lex(e) {
+ e = e.replace(/\r\n|\r/g, `
+`), this.blockTokens(e, this.tokens);
+ let i;
+ for (; i = this.inlineQueue.shift(); )
+ this.inlineTokens(i.src, i.tokens);
+ return this.tokens;
+ }
+ /**
+ * Lexing
+ */
+ blockTokens(e, i = []) {
+ this.options.pedantic ? e = e.replace(/\t/g, " ").replace(/^ +$/gm, "") : e = e.replace(/^( *)(\t+)/gm, (a, l, c) => l + " ".repeat(c.length));
+ let r, n, s, o;
+ for (; e; )
+ if (!(this.options.extensions && this.options.extensions.block && this.options.extensions.block.some((a) => (r = a.call({ lexer: this }, e, i)) ? (e = e.substring(r.raw.length), i.push(r), !0) : !1))) {
+ if (r = this.tokenizer.space(e)) {
+ e = e.substring(r.raw.length), r.raw.length === 1 && i.length > 0 ? i[i.length - 1].raw += `
+` : i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.code(e)) {
+ e = e.substring(r.raw.length), n = i[i.length - 1], n && (n.type === "paragraph" || n.type === "text") ? (n.raw += `
+` + r.raw, n.text += `
+` + r.text, this.inlineQueue[this.inlineQueue.length - 1].src = n.text) : i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.fences(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.heading(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.hr(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.blockquote(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.list(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.html(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.def(e)) {
+ e = e.substring(r.raw.length), n = i[i.length - 1], n && (n.type === "paragraph" || n.type === "text") ? (n.raw += `
+` + r.raw, n.text += `
+` + r.raw, this.inlineQueue[this.inlineQueue.length - 1].src = n.text) : this.tokens.links[r.tag] || (this.tokens.links[r.tag] = {
+ href: r.href,
+ title: r.title
+ });
+ continue;
+ }
+ if (r = this.tokenizer.table(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.lheading(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (s = e, this.options.extensions && this.options.extensions.startBlock) {
+ let a = 1 / 0;
+ const l = e.slice(1);
+ let c;
+ this.options.extensions.startBlock.forEach(function(h) {
+ c = h.call({ lexer: this }, l), typeof c == "number" && c >= 0 && (a = Math.min(a, c));
+ }), a < 1 / 0 && a >= 0 && (s = e.substring(0, a + 1));
+ }
+ if (this.state.top && (r = this.tokenizer.paragraph(s))) {
+ n = i[i.length - 1], o && n.type === "paragraph" ? (n.raw += `
+` + r.raw, n.text += `
+` + r.text, this.inlineQueue.pop(), this.inlineQueue[this.inlineQueue.length - 1].src = n.text) : i.push(r), o = s.length !== e.length, e = e.substring(r.raw.length);
+ continue;
+ }
+ if (r = this.tokenizer.text(e)) {
+ e = e.substring(r.raw.length), n = i[i.length - 1], n && n.type === "text" ? (n.raw += `
+` + r.raw, n.text += `
+` + r.text, this.inlineQueue.pop(), this.inlineQueue[this.inlineQueue.length - 1].src = n.text) : i.push(r);
+ continue;
+ }
+ if (e) {
+ const a = "Infinite loop on byte: " + e.charCodeAt(0);
+ if (this.options.silent) {
+ console.error(a);
+ break;
+ } else
+ throw new Error(a);
+ }
+ }
+ return this.state.top = !0, i;
+ }
+ inline(e, i = []) {
+ return this.inlineQueue.push({ src: e, tokens: i }), i;
+ }
+ /**
+ * Lexing/Compiling
+ */
+ inlineTokens(e, i = []) {
+ let r, n, s, o = e, a, l, c;
+ if (this.tokens.links) {
+ const h = Object.keys(this.tokens.links);
+ if (h.length > 0)
+ for (; (a = this.tokenizer.rules.inline.reflinkSearch.exec(o)) != null; )
+ h.includes(a[0].slice(a[0].lastIndexOf("[") + 1, -1)) && (o = o.slice(0, a.index) + "[" + Cot("a", a[0].length - 2) + "]" + o.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex));
+ }
+ for (; (a = this.tokenizer.rules.inline.blockSkip.exec(o)) != null; )
+ o = o.slice(0, a.index) + "[" + Cot("a", a[0].length - 2) + "]" + o.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);
+ for (; (a = this.tokenizer.rules.inline.escapedEmSt.exec(o)) != null; )
+ o = o.slice(0, a.index + a[0].length - 2) + "++" + o.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex), this.tokenizer.rules.inline.escapedEmSt.lastIndex--;
+ for (; e; )
+ if (l || (c = ""), l = !1, !(this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some((h) => (r = h.call({ lexer: this }, e, i)) ? (e = e.substring(r.raw.length), i.push(r), !0) : !1))) {
+ if (r = this.tokenizer.escape(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.tag(e)) {
+ e = e.substring(r.raw.length), n = i[i.length - 1], n && r.type === "text" && n.type === "text" ? (n.raw += r.raw, n.text += r.text) : i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.link(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.reflink(e, this.tokens.links)) {
+ e = e.substring(r.raw.length), n = i[i.length - 1], n && r.type === "text" && n.type === "text" ? (n.raw += r.raw, n.text += r.text) : i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.emStrong(e, o, c)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.codespan(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.br(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.del(e)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (r = this.tokenizer.autolink(e, Eot)) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (!this.state.inLink && (r = this.tokenizer.url(e, Eot))) {
+ e = e.substring(r.raw.length), i.push(r);
+ continue;
+ }
+ if (s = e, this.options.extensions && this.options.extensions.startInline) {
+ let h = 1 / 0;
+ const p = e.slice(1);
+ let y;
+ this.options.extensions.startInline.forEach(function(v) {
+ y = v.call({ lexer: this }, p), typeof y == "number" && y >= 0 && (h = Math.min(h, y));
+ }), h < 1 / 0 && h >= 0 && (s = e.substring(0, h + 1));
+ }
+ if (r = this.tokenizer.inlineText(s, mxr)) {
+ e = e.substring(r.raw.length), r.raw.slice(-1) !== "_" && (c = r.raw.slice(-1)), l = !0, n = i[i.length - 1], n && n.type === "text" ? (n.raw += r.raw, n.text += r.text) : i.push(r);
+ continue;
+ }
+ if (e) {
+ const h = "Infinite loop on byte: " + e.charCodeAt(0);
+ if (this.options.silent) {
+ console.error(h);
+ break;
+ } else
+ throw new Error(h);
+ }
+ }
+ return i;
+ }
+}
+class oBe {
+ constructor(e) {
+ this.options = e || E8;
+ }
+ code(e, i, r) {
+ const n = (i || "").match(/\S*/)[0];
+ if (this.options.highlight) {
+ const s = this.options.highlight(e, n);
+ s != null && s !== e && (r = !0, e = s);
+ }
+ return e = e.replace(/\n$/, "") + `
+`, n ? '' + (r ? e : m0(e, !0)) + `
+` : "" + (r ? e : m0(e, !0)) + `
+`;
+ }
+ /**
+ * @param {string} quote
+ */
+ blockquote(e) {
+ return `
+${e}
+`;
+ }
+ html(e) {
+ return e;
+ }
+ /**
+ * @param {string} text
+ * @param {string} level
+ * @param {string} raw
+ * @param {any} slugger
+ */
+ heading(e, i, r, n) {
+ if (this.options.headerIds) {
+ const s = this.options.headerPrefix + n.slug(r);
+ return `${e}
+`;
+ }
+ return `${e}
+`;
+ }
+ hr() {
+ return this.options.xhtml ? `
+` : `
+`;
+ }
+ list(e, i, r) {
+ const n = i ? "ol" : "ul", s = i && r !== 1 ? ' start="' + r + '"' : "";
+ return "<" + n + s + `>
+` + e + "" + n + `>
+`;
+ }
+ /**
+ * @param {string} text
+ */
+ listitem(e) {
+ return `${e}
+`;
+ }
+ checkbox(e) {
+ return " ";
+ }
+ /**
+ * @param {string} text
+ */
+ paragraph(e) {
+ return `${e}
+`;
+ }
+ /**
+ * @param {string} header
+ * @param {string} body
+ */
+ table(e, i) {
+ return i && (i = `${i}`), `
+`;
+ }
+ /**
+ * @param {string} content
+ */
+ tablerow(e) {
+ return `
+${e}
+`;
+ }
+ tablecell(e, i) {
+ const r = i.header ? "th" : "td";
+ return (i.align ? `<${r} align="${i.align}">` : `<${r}>`) + e + `${r}>
+`;
+ }
+ /**
+ * span level renderer
+ * @param {string} text
+ */
+ strong(e) {
+ return `
${e}`;
+ }
+ /**
+ * @param {string} text
+ */
+ em(e) {
+ return `
${e}`;
+ }
+ /**
+ * @param {string} text
+ */
+ codespan(e) {
+ return `
${e}
`;
+ }
+ br() {
+ return this.options.xhtml ? "
" : "
";
+ }
+ /**
+ * @param {string} text
+ */
+ del(e) {
+ return `
${e}`;
+ }
+ /**
+ * @param {string} href
+ * @param {string} title
+ * @param {string} text
+ */
+ link(e, i, r) {
+ if (e = xot(this.options.sanitize, this.options.baseUrl, e), e === null)
+ return r;
+ let n = '
" + r + "", n;
+ }
+ /**
+ * @param {string} href
+ * @param {string} title
+ * @param {string} text
+ */
+ image(e, i, r) {
+ if (e = xot(this.options.sanitize, this.options.baseUrl, e), e === null)
+ return r;
+ let n = `
" : ">", n;
+ }
+ text(e) {
+ return e;
+ }
+}
+class t4t {
+ // no need for block level renderers
+ strong(e) {
+ return e;
+ }
+ em(e) {
+ return e;
+ }
+ codespan(e) {
+ return e;
+ }
+ del(e) {
+ return e;
+ }
+ html(e) {
+ return e;
+ }
+ text(e) {
+ return e;
+ }
+ link(e, i, r) {
+ return "" + r;
+ }
+ image(e, i, r) {
+ return "" + r;
+ }
+ br() {
+ return "";
+ }
+}
+class i4t {
+ constructor() {
+ this.seen = {};
+ }
+ /**
+ * @param {string} value
+ */
+ serialize(e) {
+ return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig, "").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, "").replace(/\s/g, "-");
+ }
+ /**
+ * Finds the next safe (unique) slug to use
+ * @param {string} originalSlug
+ * @param {boolean} isDryRun
+ */
+ getNextSafeSlug(e, i) {
+ let r = e, n = 0;
+ if (this.seen.hasOwnProperty(r)) {
+ n = this.seen[e];
+ do
+ n++, r = e + "-" + n;
+ while (this.seen.hasOwnProperty(r));
+ }
+ return i || (this.seen[e] = n, this.seen[r] = 0), r;
+ }
+ /**
+ * Convert string to unique id
+ * @param {object} [options]
+ * @param {boolean} [options.dryrun] Generates the next unique slug without
+ * updating the internal accumulator.
+ */
+ slug(e, i = {}) {
+ const r = this.serialize(e);
+ return this.getNextSafeSlug(r, i.dryrun);
+ }
+}
+class y4 {
+ constructor(e) {
+ this.options = e || E8, this.options.renderer = this.options.renderer || new oBe(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.textRenderer = new t4t(), this.slugger = new i4t();
+ }
+ /**
+ * Static Parse Method
+ */
+ static parse(e, i) {
+ return new y4(i).parse(e);
+ }
+ /**
+ * Static Parse Inline Method
+ */
+ static parseInline(e, i) {
+ return new y4(i).parseInline(e);
+ }
+ /**
+ * Parse Loop
+ */
+ parse(e, i = !0) {
+ let r = "", n, s, o, a, l, c, h, p, y, v, x, I, P, F, k, V, j, Y, X;
+ const Q = e.length;
+ for (n = 0; n < Q; n++) {
+ if (v = e[n], this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[v.type] && (X = this.options.extensions.renderers[v.type].call({ parser: this }, v), X !== !1 || !["space", "hr", "heading", "code", "table", "blockquote", "list", "html", "paragraph", "text"].includes(v.type))) {
+ r += X || "";
+ continue;
+ }
+ switch (v.type) {
+ case "space":
+ continue;
+ case "hr": {
+ r += this.renderer.hr();
+ continue;
+ }
+ case "heading": {
+ r += this.renderer.heading(
+ this.parseInline(v.tokens),
+ v.depth,
+ e4t(this.parseInline(v.tokens, this.textRenderer)),
+ this.slugger
+ );
+ continue;
+ }
+ case "code": {
+ r += this.renderer.code(
+ v.text,
+ v.lang,
+ v.escaped
+ );
+ continue;
+ }
+ case "table": {
+ for (p = "", h = "", a = v.header.length, s = 0; s < a; s++)
+ h += this.renderer.tablecell(
+ this.parseInline(v.header[s].tokens),
+ { header: !0, align: v.align[s] }
+ );
+ for (p += this.renderer.tablerow(h), y = "", a = v.rows.length, s = 0; s < a; s++) {
+ for (c = v.rows[s], h = "", l = c.length, o = 0; o < l; o++)
+ h += this.renderer.tablecell(
+ this.parseInline(c[o].tokens),
+ { header: !1, align: v.align[o] }
+ );
+ y += this.renderer.tablerow(h);
+ }
+ r += this.renderer.table(p, y);
+ continue;
+ }
+ case "blockquote": {
+ y = this.parse(v.tokens), r += this.renderer.blockquote(y);
+ continue;
+ }
+ case "list": {
+ for (x = v.ordered, I = v.start, P = v.loose, a = v.items.length, y = "", s = 0; s < a; s++)
+ k = v.items[s], V = k.checked, j = k.task, F = "", k.task && (Y = this.renderer.checkbox(V), P ? k.tokens.length > 0 && k.tokens[0].type === "paragraph" ? (k.tokens[0].text = Y + " " + k.tokens[0].text, k.tokens[0].tokens && k.tokens[0].tokens.length > 0 && k.tokens[0].tokens[0].type === "text" && (k.tokens[0].tokens[0].text = Y + " " + k.tokens[0].tokens[0].text)) : k.tokens.unshift({
+ type: "text",
+ text: Y
+ }) : F += Y), F += this.parse(k.tokens, P), y += this.renderer.listitem(F, j, V);
+ r += this.renderer.list(y, x, I);
+ continue;
+ }
+ case "html": {
+ r += this.renderer.html(v.text);
+ continue;
+ }
+ case "paragraph": {
+ r += this.renderer.paragraph(this.parseInline(v.tokens));
+ continue;
+ }
+ case "text": {
+ for (y = v.tokens ? this.parseInline(v.tokens) : v.text; n + 1 < Q && e[n + 1].type === "text"; )
+ v = e[++n], y += `
+` + (v.tokens ? this.parseInline(v.tokens) : v.text);
+ r += i ? this.renderer.paragraph(y) : y;
+ continue;
+ }
+ default: {
+ const re = 'Token with "' + v.type + '" type was not found.';
+ if (this.options.silent) {
+ console.error(re);
+ return;
+ } else
+ throw new Error(re);
+ }
+ }
+ }
+ return r;
+ }
+ /**
+ * Parse Inline Tokens
+ */
+ parseInline(e, i) {
+ i = i || this.renderer;
+ let r = "", n, s, o;
+ const a = e.length;
+ for (n = 0; n < a; n++) {
+ if (s = e[n], this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[s.type] && (o = this.options.extensions.renderers[s.type].call({ parser: this }, s), o !== !1 || !["escape", "html", "link", "image", "strong", "em", "codespan", "br", "del", "text"].includes(s.type))) {
+ r += o || "";
+ continue;
+ }
+ switch (s.type) {
+ case "escape": {
+ r += i.text(s.text);
+ break;
+ }
+ case "html": {
+ r += i.html(s.text);
+ break;
+ }
+ case "link": {
+ r += i.link(s.href, s.title, this.parseInline(s.tokens, i));
+ break;
+ }
+ case "image": {
+ r += i.image(s.href, s.title, s.text);
+ break;
+ }
+ case "strong": {
+ r += i.strong(this.parseInline(s.tokens, i));
+ break;
+ }
+ case "em": {
+ r += i.em(this.parseInline(s.tokens, i));
+ break;
+ }
+ case "codespan": {
+ r += i.codespan(s.text);
+ break;
+ }
+ case "br": {
+ r += i.br();
+ break;
+ }
+ case "del": {
+ r += i.del(this.parseInline(s.tokens, i));
+ break;
+ }
+ case "text": {
+ r += i.text(s.text);
+ break;
+ }
+ default: {
+ const l = 'Token with "' + s.type + '" type was not found.';
+ if (this.options.silent) {
+ console.error(l);
+ return;
+ } else
+ throw new Error(l);
+ }
+ }
+ }
+ return r;
+ }
+}
+class GDe {
+ constructor(e) {
+ this.options = e || E8;
+ }
+ static passThroughHooks = /* @__PURE__ */ new Set([
+ "preprocess",
+ "postprocess"
+ ]);
+ /**
+ * Process markdown before marked
+ */
+ preprocess(e) {
+ return e;
+ }
+ /**
+ * Process HTML after marked is finished
+ */
+ postprocess(e) {
+ return e;
+ }
+}
+function gxr(t, e, i) {
+ return (r) => {
+ if (r.message += `
+Please report this to https://github.com/markedjs/marked.`, t) {
+ const n = "
An error occurred:
" + m0(r.message + "", !0) + "
";
+ if (e)
+ return Promise.resolve(n);
+ if (i) {
+ i(null, n);
+ return;
+ }
+ return n;
+ }
+ if (e)
+ return Promise.reject(r);
+ if (i) {
+ i(r);
+ return;
+ }
+ throw r;
+ };
+}
+function r4t(t, e) {
+ return (i, r, n) => {
+ typeof r == "function" && (n = r, r = null);
+ const s = { ...r };
+ r = { ...Fo.defaults, ...s };
+ const o = gxr(r.silent, r.async, n);
+ if (typeof i > "u" || i === null)
+ return o(new Error("marked(): input parameter is undefined or null"));
+ if (typeof i != "string")
+ return o(new Error("marked(): input parameter is of type " + Object.prototype.toString.call(i) + ", string expected"));
+ if (pxr(r), r.hooks && (r.hooks.options = r), n) {
+ const a = r.highlight;
+ let l;
+ try {
+ r.hooks && (i = r.hooks.preprocess(i)), l = t(i, r);
+ } catch (p) {
+ return o(p);
+ }
+ const c = function(p) {
+ let y;
+ if (!p)
+ try {
+ r.walkTokens && Fo.walkTokens(l, r.walkTokens), y = e(l, r), r.hooks && (y = r.hooks.postprocess(y));
+ } catch (v) {
+ p = v;
+ }
+ return r.highlight = a, p ? o(p) : n(null, y);
+ };
+ if (!a || a.length < 3 || (delete r.highlight, !l.length))
+ return c();
+ let h = 0;
+ Fo.walkTokens(l, function(p) {
+ p.type === "code" && (h++, setTimeout(() => {
+ a(p.text, p.lang, function(y, v) {
+ if (y)
+ return c(y);
+ v != null && v !== p.text && (p.text = v, p.escaped = !0), h--, h === 0 && c();
+ });
+ }, 0));
+ }), h === 0 && c();
+ return;
+ }
+ if (r.async)
+ return Promise.resolve(r.hooks ? r.hooks.preprocess(i) : i).then((a) => t(a, r)).then((a) => r.walkTokens ? Promise.all(Fo.walkTokens(a, r.walkTokens)).then(() => a) : a).then((a) => e(a, r)).then((a) => r.hooks ? r.hooks.postprocess(a) : a).catch(o);
+ try {
+ r.hooks && (i = r.hooks.preprocess(i));
+ const a = t(i, r);
+ r.walkTokens && Fo.walkTokens(a, r.walkTokens);
+ let l = e(a, r);
+ return r.hooks && (l = r.hooks.postprocess(l)), l;
+ } catch (a) {
+ return o(a);
+ }
+ };
+}
+function Fo(t, e, i) {
+ return r4t(g4.lex, y4.parse)(t, e, i);
+}
+Fo.options = Fo.setOptions = function(t) {
+ return Fo.defaults = { ...Fo.defaults, ...t }, exr(Fo.defaults), Fo;
+};
+Fo.getDefaults = JFt;
+Fo.defaults = E8;
+Fo.use = function(...t) {
+ const e = Fo.defaults.extensions || { renderers: {}, childTokens: {} };
+ t.forEach((i) => {
+ const r = { ...i };
+ if (r.async = Fo.defaults.async || r.async || !1, i.extensions && (i.extensions.forEach((n) => {
+ if (!n.name)
+ throw new Error("extension name required");
+ if (n.renderer) {
+ const s = e.renderers[n.name];
+ s ? e.renderers[n.name] = function(...o) {
+ let a = n.renderer.apply(this, o);
+ return a === !1 && (a = s.apply(this, o)), a;
+ } : e.renderers[n.name] = n.renderer;
+ }
+ if (n.tokenizer) {
+ if (!n.level || n.level !== "block" && n.level !== "inline")
+ throw new Error("extension level must be 'block' or 'inline'");
+ e[n.level] ? e[n.level].unshift(n.tokenizer) : e[n.level] = [n.tokenizer], n.start && (n.level === "block" ? e.startBlock ? e.startBlock.push(n.start) : e.startBlock = [n.start] : n.level === "inline" && (e.startInline ? e.startInline.push(n.start) : e.startInline = [n.start]));
+ }
+ n.childTokens && (e.childTokens[n.name] = n.childTokens);
+ }), r.extensions = e), i.renderer) {
+ const n = Fo.defaults.renderer || new oBe();
+ for (const s in i.renderer) {
+ const o = n[s];
+ n[s] = (...a) => {
+ let l = i.renderer[s].apply(n, a);
+ return l === !1 && (l = o.apply(n, a)), l;
+ };
+ }
+ r.renderer = n;
+ }
+ if (i.tokenizer) {
+ const n = Fo.defaults.tokenizer || new sBe();
+ for (const s in i.tokenizer) {
+ const o = n[s];
+ n[s] = (...a) => {
+ let l = i.tokenizer[s].apply(n, a);
+ return l === !1 && (l = o.apply(n, a)), l;
+ };
+ }
+ r.tokenizer = n;
+ }
+ if (i.hooks) {
+ const n = Fo.defaults.hooks || new GDe();
+ for (const s in i.hooks) {
+ const o = n[s];
+ GDe.passThroughHooks.has(s) ? n[s] = (a) => {
+ if (Fo.defaults.async)
+ return Promise.resolve(i.hooks[s].call(n, a)).then((c) => o.call(n, c));
+ const l = i.hooks[s].call(n, a);
+ return o.call(n, l);
+ } : n[s] = (...a) => {
+ let l = i.hooks[s].apply(n, a);
+ return l === !1 && (l = o.apply(n, a)), l;
+ };
+ }
+ r.hooks = n;
+ }
+ if (i.walkTokens) {
+ const n = Fo.defaults.walkTokens;
+ r.walkTokens = function(s) {
+ let o = [];
+ return o.push(i.walkTokens.call(this, s)), n && (o = o.concat(n.call(this, s))), o;
+ };
+ }
+ Fo.setOptions(r);
+ });
+};
+Fo.walkTokens = function(t, e) {
+ let i = [];
+ for (const r of t)
+ switch (i = i.concat(e.call(Fo, r)), r.type) {
+ case "table": {
+ for (const n of r.header)
+ i = i.concat(Fo.walkTokens(n.tokens, e));
+ for (const n of r.rows)
+ for (const s of n)
+ i = i.concat(Fo.walkTokens(s.tokens, e));
+ break;
+ }
+ case "list": {
+ i = i.concat(Fo.walkTokens(r.items, e));
+ break;
+ }
+ default:
+ Fo.defaults.extensions && Fo.defaults.extensions.childTokens && Fo.defaults.extensions.childTokens[r.type] ? Fo.defaults.extensions.childTokens[r.type].forEach(function(n) {
+ i = i.concat(Fo.walkTokens(r[n], e));
+ }) : r.tokens && (i = i.concat(Fo.walkTokens(r.tokens, e)));
+ }
+ return i;
+};
+Fo.parseInline = r4t(g4.lexInline, y4.parseInline);
+Fo.Parser = y4;
+Fo.parser = y4.parse;
+Fo.Renderer = oBe;
+Fo.TextRenderer = t4t;
+Fo.Lexer = g4;
+Fo.lexer = g4.lex;
+Fo.Tokenizer = sBe;
+Fo.Slugger = i4t;
+Fo.Hooks = GDe;
+Fo.parse = Fo;
+Fo.options;
+Fo.setOptions;
+Fo.use;
+Fo.walkTokens;
+Fo.parseInline;
+y4.parse;
+g4.lex;
+const yxr = { class: "h-26 mb-8 mx-8" }, vxr = ["placeholder", "aria-label"], _xr = { key: 0 }, n4t = /* @__PURE__ */ Kr({
+ __name: "screen",
+ props: {
+ panel: {
+ type: Object,
+ required: !0
+ }
+ },
+ setup(t) {
+ const e = Ys("iApi"), i = w0e(), { t: r } = Xn(), n = zr(() => i.location), s = Si([]), o = Si([]), a = Si([]), l = Si(!1);
+ let c, h;
+ function p(I, P) {
+ const F = P.info.split(/(<[^>]*>)/);
+ for (const [k, V] of F.entries())
+ if (k % 2 === 0 && V.toLowerCase().indexOf(I.toLowerCase()) > -1)
+ return !0;
+ return !1;
+ }
+ function y(I, P) {
+ const k = o.value[P].split(/(<[^>]*>)/);
+ let V = "";
+ for (const [j, Y] of k.entries())
+ j % 2 === 0 ? V += Y.replace(
+ new RegExp(I, "gi"),
+ (X) => `
${X}`
+ ) : V += Y;
+ s.value[P].info = V;
+ }
+ function v(I, P) {
+ c = 0, P.forEach((F, k) => {
+ F.info = o.value[k], F.drawn = p(I, F) || F.header.toLowerCase().indexOf(I.toLowerCase()) > -1, c = F.drawn ? c + 1 : c, F.expanded = F.drawn && I.length > 2, F.drawn && I.length > 2 && y(I, k);
+ }), l.value = c === 0;
+ }
+ function x(I) {
+ I.expanded = !I.expanded;
+ }
+ return H0(() => {
+ a.value.push(
+ Fl(
+ () => e.language,
+ (I, P) => {
+ if (I === P)
+ return;
+ const F = new Fo.Renderer(), k = n.value.slice(-1) === "/" ? n.value : `${n.value}/`;
+ F.image = (V, j, Y) => (V.indexOf("http") === -1 && (V = `${k}images/` + V), `
`), dO.get(`${k}${I}.md`).then((V) => {
+ const j = /^#\s(.*)\n{2}(?:.+|\n(?!\n{2,}))*/gm;
+ let Y = V.data.replace(
+ new RegExp(String.fromCharCode(13), "g"),
+ ""
+ );
+ s.value = [];
+ let X;
+ for (; X = j.exec(Y); )
+ s.value.push({
+ header: X[1],
+ // parse markdown on info section, split/splice/join removes the header
+ // since we can't put info section into its own regex grouping
+ info: Fo(
+ X[0].split(`
+`).splice(2).join(`
+`),
+ {
+ renderer: F
+ }
+ ),
+ drawn: !0,
+ expanded: !1
+ }), o.value.push(
+ Fo(
+ X[0].split(`
+`).splice(2).join(`
+`),
+ {
+ renderer: F
+ }
+ )
+ );
+ });
+ },
+ { immediate: !0 }
+ )
+ );
+ }), gl(() => {
+ a.value.forEach((I) => I());
+ }), (I, P) => {
+ const F = Bo("panel-screen");
+ return qt(), In(F, { panel: t.panel }, {
+ header: Sn(() => [
+ qs(vr(gi(r)("help.title")), 1)
+ ]),
+ content: Sn(() => [
+ Dt("div", yxr, [
+ Gr(Dt("input", {
+ type: "search",
+ class: "rv-help-search-bar border-b w-full text-base py-8 outline-none focus:shadow-outline border-gray-600 h-full min-w-0",
+ placeholder: gi(r)("help.search"),
+ "onUpdate:modelValue": P[0] || (P[0] = (k) => mc(h) ? h.value = k : h = k),
+ "aria-label": gi(r)("help.search"),
+ onInput: P[1] || (P[1] = (k) => v(gi(h), s.value)),
+ onKeypress: P[2] || (P[2] = Dh(Go(() => {
+ }, ["prevent"]), ["enter"])),
+ enterkeyhint: "done"
+ }, null, 40, vxr), [
+ [Ax, gi(h)]
+ ])
+ ]),
+ l.value ? (qt(), li("div", _xr, [
+ Dt("p", null, vr(gi(r)("help.noResults")), 1)
+ ])) : Xr("", !0),
+ (qt(!0), li(Ws, null, nu(s.value, (k, V) => (qt(), In(Qwr, {
+ helpSection: k,
+ key: V,
+ onExpand: (j) => x(k)
+ }, null, 8, ["helpSection", "onExpand"]))), 128))
+ ]),
+ _: 1
+ }, 8, ["panel"]);
+ };
+ }
+}), bxr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
+ __proto__: null,
+ default: n4t
+}, Symbol.toStringTag, { value: "Module" })), wxr = /* @__PURE__ */ Dt("svg", {
+ xmlns: "http://www.w3.org/2000/svg",
+ viewBox: "0 0 24 24",
+ class: "fill-current w-32 h-20"
+}, [
+ /* @__PURE__ */ Dt("path", {
+ d: "M0 0h24v24H0z",
+ fill: "none"
+ }),
+ /* @__PURE__ */ Dt("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z" })
+], -1), xxr = /* @__PURE__ */ Kr({
+ __name: "nav-button",
+ setup(t) {
+ const e = Ys("iApi"), { t: i } = Xn(), r = () => e.event.emit(an.HELP_TOGGLE);
+ return (n, s) => {
+ const o = Bo("mapnav-button");
+ return qt(), In(o, {
+ onClickFunction: r,
+ tooltip: gi(i)("help.title")
+ }, {
+ default: Sn(() => [
+ wxr
+ ]),
+ _: 1
+ }, 8, ["tooltip"]);
+ };
+ }
+}), Sxr = { en: { "help.title": "Help", "help.search": "Search Help", "help.section.expand": "Expand section", "help.section.collapse": "Collapse section", "help.noResults": "Nothing is found. Please try a different search." }, fr: { "help.title": "Aide", "help.search": "Rechercher aide", "help.section.expand": "Développer une section", "help.section.collapse": "Réduire une section", "help.noResults": "Rien n'est trouvé. Essayez une autre recherche s'il vous plaît." } };
+class Cxr extends zwr {
+ added() {
+ this.$iApi.component("help-nav-button", xxr), this.$iApi.panel.register(
+ {
+ help: {
+ screens: {
+ "help-screen": ya(n4t)
+ },
+ style: {
+ "flex-grow": "1",
+ "max-width": "750px"
+ },
+ alertName: "help.title"
+ }
+ },
+ {
+ i18n: { messages: Sxr }
+ }
+ ), this._parseConfig(this.config);
+ const e = this.$vApp.$watch(
+ () => this.config,
+ (i) => this._parseConfig(i)
+ );
+ this.removed = () => {
+ e(), this.$iApi.fixture.get("mapnav") && $4(this.$vApp.$pinia).removeItem("help"), w0e(this.$vApp.$pinia).$reset(), this.$iApi.panel.remove("help");
+ };
+ }
+}
+const Txr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
+ __proto__: null,
+ default: Cxr
+}, Symbol.toStringTag, { value: "Module" }));
+class UDe extends cf {
+ config = {};
+ mode = h6.NONE;
+ constructor(e, i) {
+ super(i), this.config = e, this.mode = e.mode;
+ }
+ /**
+ * Adds the given graphics to the hilight layer.
+ */
+ async add(e) {
+ this.notImplementedError("addGraphics");
+ }
+ /**
+ * Removes the given graphics from the hilight layer.
+ */
+ async remove(e) {
+ this.notImplementedError("removeGraphics");
+ }
+ /**
+ * Reload the hilighter's map elements.
+ */
+ async reloadHilight(e) {
+ this.notImplementedError("reloadHilight");
+ }
+ /**
+ * Returns the Hilight layer.
+ */
+ async getHilightLayer() {
+ const e = await this.layerFetcher();
+ if (e) {
+ if (e.isLoaded && e instanceof yCt)
+ return e;
+ console.warn("Hilight layer exists but is in bad form.");
+ return;
+ } else {
+ console.warn("Hilight layer could not be fetched.");
+ return;
+ }
+ }
+ notImplementedError(e) {
+ console.warn(
+ `Hilight mode method ${e} was not implemented by subclass.`
+ );
+ }
+ /**
+ * Provides a short grace period to avoid scenarios where the layer is still getting created.
+ * Not overly long, as the highlight layer is a local graphics layer so no server lag involved.
+ *
+ * @returns Promise resolving in the LayerInstace, or undefined if we could not locate the layer.
+ */
+ layerFetcher() {
+ return new Promise((e) => {
+ let i = 0;
+ const r = setInterval(() => {
+ const n = this.$iApi.geo.layer.getLayer(yme);
+ if (n)
+ clearInterval(r), e(n);
+ else if (i += 125, i >= 1125) {
+ clearInterval(r), e(void 0);
+ return;
+ }
+ }, 125);
+ });
+ }
+}
+class aBe extends UDe {
+ /**
+ * Adds the given graphics to the hilight layer.
+ */
+ async add(e) {
+ const i = await this.getHilightLayer();
+ i && await i.addGraphic(e);
+ }
+ /**
+ * Removes the given graphics from the hilight layer.
+ */
+ async remove(e) {
+ const i = await this.getHilightLayer();
+ i && i.removeGraphic(e);
+ }
+ /**
+ * Reload the hilighter's map elements.
+ */
+ async reloadHilight(e) {
+ await this.remove(e), await this.add(e);
+ }
+}
+class Exr extends aBe {
+ handlers = [];
+ // TODO: make these configurable later
+ // See https://github.com/ramp4-pcar4/ramp4-pcar4/issues/1353
+ onOpacity;
+ offOpacity;
+ lastAdd = 0;
+ constructor(e, i) {
+ super(e, i), this.onOpacity = e.options?.onOpacity ?? 0.75, this.offOpacity = e.options?.offOpacity > 0.02 ? e.options.offOpacity : 0.02, this.$iApi.geo.map.created ? this.hilightSetup() : this.handlers.push(
+ this.$iApi.event.on(an.MAP_CREATED, () => {
+ this.hilightSetup();
+ })
+ ), this.handlers.push(
+ this.$iApi.event.on(an.MAP_BASEMAPCHANGE, () => {
+ this.getHilightLayer().then((r) => {
+ r && r.graphics.length === 0 && this.updateFogLayer();
+ });
+ })
+ );
+ }
+ async hilightSetup() {
+ const e = fm(this.$vApp.$pinia).activeBasemapConfig;
+ try {
+ const i = this.$iApi.geo.layer.createLayer({
+ id: W2e,
+ layerType: rn.TILE,
+ cosmetic: !0,
+ // TODO: what if there's more than 1 URL provided?
+ // See https://github.com/ramp4-pcar4/ramp4-pcar4/discussions/1352
+ url: e.layers[0].url
+ });
+ await this.$iApi.geo.map.addLayer(i), i.opacity = this.offOpacity, await this.reorderFogLayer();
+ } catch {
+ console.error(
+ "Something went wrong while setting up the hilighter."
+ );
+ }
+ }
+ async updateFogLayer() {
+ this.$iApi.geo.map.removeLayer(W2e), await this.hilightSetup();
+ }
+ async reorderFogLayer() {
+ const e = this.getFogLayer(), i = await this.getHilightLayer();
+ if (!i || !e)
+ return;
+ const r = this.$iApi.geo.layer.layerOrderIds(), n = r.indexOf(e.id), s = r.indexOf(i.id);
+ s < n && s > -1 && n > -1 && this.$iApi.geo.map.reorder(i, n, !1);
+ }
+ /**
+ * Adds the given graphics to the hilight layer.
+ */
+ async add(e) {
+ this.lastAdd = Date.now();
+ const i = this.getFogLayer();
+ i && (i.opacity = this.onOpacity, await super.add(e));
+ }
+ /**
+ * Removes the given graphics from the hilight layer.
+ */
+ async remove(e) {
+ await super.remove(e);
+ const i = this.getFogLayer();
+ if (!i)
+ return;
+ const r = Date.now();
+ setTimeout(() => {
+ this.lastAdd < r && (i.opacity = this.offOpacity);
+ }, 300);
+ }
+ async reloadHilight(e) {
+ await this.updateFogLayer(), await super.reloadHilight(e);
+ }
+ /**
+ * Returns the Hilight layer.
+ */
+ getFogLayer() {
+ const e = this.$iApi.geo.layer.getLayer(
+ W2e
+ );
+ if (e && e instanceof _Ct)
+ return e;
+ console.warn("Hilight fog layer could not be fetched.");
+ }
+}
+class Iot extends aBe {
+ handlers = [];
+ constructor(e, i) {
+ super(e, i), this.hilightSetup(e), this.handlers.push(
+ this.$iApi.event.on(an.MAP_CREATED, () => {
+ this.hilightSetup(e);
+ })
+ );
+ }
+ hilightSetup(e) {
+ this.$iApi.geo.map.viewPromise.then(() => {
+ this.$iApi.geo.map.esriView.highlightOptions = e.options;
+ });
+ }
+ /**
+ * Adds the given graphics to the hilight layer.
+ */
+ async add(e) {
+ await super.add(e);
+ const i = this.$iApi.geo.layer.getLayer(yme);
+ if (i && i.esriLayer && i.isLoaded && i instanceof vCt) {
+ const r = e instanceof Array ? e : [e];
+ this.$iApi.geo.map.esriView?.whenLayerView(i.esriLayer)?.then(function(n) {
+ n.highlight(
+ r.map(
+ (s) => i.getEsriGraphic(s.id)
+ )
+ );
+ });
+ }
+ }
+ /**
+ * Removes the given graphics from the hilight layer.
+ */
+ async remove(e) {
+ await super.remove(e);
+ }
+}
+class Ixr extends oc {
+ hilightMode = new UDe({}, this.$iApi);
+ initialized() {
+ this.initHilightLayer();
+ }
+ _parseConfig(e) {
+ if (e)
+ switch (e.mode) {
+ case h6.NONE:
+ this.hilightMode = new UDe(
+ e,
+ this.$iApi
+ );
+ break;
+ case h6.GLOW:
+ this.hilightMode = new Iot(
+ e,
+ this.$iApi
+ );
+ break;
+ case h6.LIFT:
+ this.hilightMode = new aBe(
+ e,
+ this.$iApi
+ );
+ break;
+ case h6.FOG:
+ this.hilightMode = new Exr(
+ e,
+ this.$iApi
+ );
+ break;
+ default:
+ console.error(
+ "Could not find hilight mode:",
+ e.mode
+ );
+ break;
+ }
+ else
+ this.hilightMode = new Iot(myr, this.$iApi);
+ }
+ /**
+ * Create the Hilight layer.
+ */
+ async initHilightLayer() {
+ const e = this.$iApi.geo.layer.createLayer({
+ id: yme,
+ layerType: rn.GRAPHIC,
+ cosmetic: !0,
+ url: ""
+ });
+ await this.$iApi.geo.map.addLayer(e);
+ }
+ /**
+ * Add the given Graphics to the Hilighter
+ *
+ * @param graphics Graphics to add
+ */
+ async addHilight(e) {
+ const i = e instanceof Array ? e : [e];
+ await this.hilightMode.add(i);
+ }
+ /**
+ * Remove the given Graphics from the Hilighter
+ *
+ * @param graphics Graphics to remove
+ */
+ async removeHilight(e) {
+ const i = e ? e instanceof Array ? e : [e] : void 0;
+ await this.hilightMode.remove(i);
+ }
+ async reloadHilight(e) {
+ const i = e instanceof Array ? e : [e];
+ await this.hilightMode.reloadHilight(i);
+ }
+ /**
+ * Return all Graphics that match the given origin/uid/oid
+ *
+ * @param origin Graphic origin
+ * @param uid Associated layer UID of the Graphic
+ * @param oid Associated OID of the Graphic
+ */
+ async getGraphicsByKey(e, i, r) {
+ const n = await this.getHilightLayer();
+ if (!n)
+ return [];
+ let s = n.graphics.map((o) => ({
+ ...this.deconstructGraphicKey(o.id),
+ og: o
+ }));
+ return e && (s = s.filter((o) => o.origin === e)), i && (s = s.filter((o) => o.uid === i)), r && (s = s.filter((o) => o.oid === r)), s.map((o) => o.og);
+ }
+ /**
+ * Return a well-formed graphic key
+ */
+ constructGraphicKey(e, i, r) {
+ return `${yme}~${e}~${i}~${r}`;
+ }
+ /**
+ * Return a deconstructed graphic key.
+ *
+ * @param key The graphic key to deconstruct
+ */
+ deconstructGraphicKey(e) {
+ const i = e.split("~");
+ return i.length !== 4 && console.warn("Malformed Hilight Graphic key provided:", e), { origin: i[1], uid: i[2], oid: parseInt(i[3]) };
+ }
+ /**
+ * Return the hilightLayer
+ */
+ async getHilightLayer() {
+ if (this.hilightMode)
+ return await this.hilightMode.getHilightLayer();
+ console.warn(
+ "API get layer request before highlight mode object exists"
+ );
+ }
+}
+class Axr extends Ixr {
+ async added() {
+ this._parseConfig(this.config);
+ const e = this.$vApp.$watch(
+ () => this.config,
+ (i) => this._parseConfig(i)
+ );
+ this.removed = () => {
+ e();
+ };
+ }
+}
+const Pxr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
+ __proto__: null,
+ default: Axr
+}, Symbol.toStringTag, { value: "Module" })), s4t = (t) => (Pc("data-v-fd14520e"), t = t(), Oc(), t), Oxr = ["content", "aria-label"], Rxr = /* @__PURE__ */ s4t(() => /* @__PURE__ */ Dt("svg", {
+ class: "fill-current w-20 h-20",
+ viewBox: "0 0 23 21"
+}, [
+ /* @__PURE__ */ Dt("path", { d: "M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z" })
+], -1)), Mxr = [
+ Rxr
+], Dxr = ["disabled", "aria-label"], Fxr = /* @__PURE__ */ s4t(() => /* @__PURE__ */ Dt("svg", {
+ class: "fill-current w-20 h-20",
+ viewBox: "0 0 23 21"
+}, [
+ /* @__PURE__ */ Dt("path", { d: "M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z" })
+], -1)), Lxr = [
+ Fxr
+], Nxr = /* @__PURE__ */ Kr({
+ __name: "reorder-button",
+ props: {
+ disabled: {
+ type: Boolean
+ },
+ direction: {
+ type: String,
+ required: !0
+ }
+ },
+ setup(t) {
+ const { t: e } = Xn();
+ return (i, r) => {
+ const n = qn("tippy"), s = qn("focus-item");
+ return t.disabled ? (qt(), li("button", {
+ key: 1,
+ type: "button",
+ class: Gn(`pb-10 text-gray-300 p-8 ${t.direction === "up" ? "rotate-180" : ""}`),
+ disabled: t.disabled,
+ "aria-label": gi(e)(`layer-reorder.move.${t.direction}`)
+ }, Lxr, 10, Dxr)) : Gr((qt(), li("button", {
+ key: 0,
+ type: "button",
+ class: Gn(`pb-10 text-gray-500 hover:text-black p-8 ${t.direction === "up" ? "rotate-180" : ""}`),
+ content: gi(e)(`layer-reorder.move.${t.direction}`),
+ "aria-label": gi(e)(`layer-reorder.move.${t.direction}`)
+ }, Mxr, 10, Oxr)), [
+ [n, {
+ placement: "top-start",
+ aria: "describedby"
+ }],
+ [s]
+ ]);
+ };
+ }
+});
+const Aot = /* @__PURE__ */ ol(Nxr, [["__scopeId", "data-v-fd14520e"]]);
+var o4t = { exports: {} };
+const lBe = /* @__PURE__ */ xye(Abi);
+/**!
+ * Sortable 1.14.0
+ * @author RubaXa
+ * @author owenm
+ * @license MIT
+ */
+function Pot(t, e) {
+ var i = Object.keys(t);
+ if (Object.getOwnPropertySymbols) {
+ var r = Object.getOwnPropertySymbols(t);
+ e && (r = r.filter(function(n) {
+ return Object.getOwnPropertyDescriptor(t, n).enumerable;
+ })), i.push.apply(i, r);
+ }
+ return i;
+}
+function TI(t) {
+ for (var e = 1; e < arguments.length; e++) {
+ var i = arguments[e] != null ? arguments[e] : {};
+ e % 2 ? Pot(Object(i), !0).forEach(function(r) {
+ kxr(t, r, i[r]);
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(i)) : Pot(Object(i)).forEach(function(r) {
+ Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(i, r));
+ });
+ }
+ return t;
+}
+function Nce(t) {
+ "@babel/helpers - typeof";
+ return typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? Nce = function(e) {
+ return typeof e;
+ } : Nce = function(e) {
+ return e && typeof Symbol == "function" && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
+ }, Nce(t);
+}
+function kxr(t, e, i) {
+ return e in t ? Object.defineProperty(t, e, {
+ value: i,
+ enumerable: !0,
+ configurable: !0,
+ writable: !0
+ }) : t[e] = i, t;
+}
+function jx() {
+ return jx = Object.assign || function(t) {
+ for (var e = 1; e < arguments.length; e++) {
+ var i = arguments[e];
+ for (var r in i)
+ Object.prototype.hasOwnProperty.call(i, r) && (t[r] = i[r]);
+ }
+ return t;
+ }, jx.apply(this, arguments);
+}
+function $xr(t, e) {
+ if (t == null)
+ return {};
+ var i = {}, r = Object.keys(t), n, s;
+ for (s = 0; s < r.length; s++)
+ n = r[s], !(e.indexOf(n) >= 0) && (i[n] = t[n]);
+ return i;
+}
+function Bxr(t, e) {
+ if (t == null)
+ return {};
+ var i = $xr(t, e), r, n;
+ if (Object.getOwnPropertySymbols) {
+ var s = Object.getOwnPropertySymbols(t);
+ for (n = 0; n < s.length; n++)
+ r = s[n], !(e.indexOf(r) >= 0) && Object.prototype.propertyIsEnumerable.call(t, r) && (i[r] = t[r]);
+ }
+ return i;
+}
+function Vxr(t) {
+ return jxr(t) || Gxr(t) || Uxr(t) || zxr();
+}
+function jxr(t) {
+ if (Array.isArray(t))
+ return zDe(t);
+}
+function Gxr(t) {
+ if (typeof Symbol < "u" && t[Symbol.iterator] != null || t["@@iterator"] != null)
+ return Array.from(t);
+}
+function Uxr(t, e) {
+ if (t) {
+ if (typeof t == "string")
+ return zDe(t, e);
+ var i = Object.prototype.toString.call(t).slice(8, -1);
+ if (i === "Object" && t.constructor && (i = t.constructor.name), i === "Map" || i === "Set")
+ return Array.from(t);
+ if (i === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))
+ return zDe(t, e);
+ }
+}
+function zDe(t, e) {
+ (e == null || e > t.length) && (e = t.length);
+ for (var i = 0, r = new Array(e); i < e; i++)
+ r[i] = t[i];
+ return r;
+}
+function zxr() {
+ throw new TypeError(`Invalid attempt to spread non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
+}
+var Hxr = "1.14.0";
+function BO(t) {
+ if (typeof window < "u" && window.navigator)
+ return !!/* @__PURE__ */ navigator.userAgent.match(t);
+}
+var M3 = BO(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i), ure = BO(/Edge/i), Oot = BO(/firefox/i), gZ = BO(/safari/i) && !BO(/chrome/i) && !BO(/android/i), a4t = BO(/iP(ad|od|hone)/i), Wxr = BO(/chrome/i) && BO(/android/i), l4t = {
+ capture: !1,
+ passive: !1
+};
+function _u(t, e, i) {
+ t.addEventListener(e, i, !M3 && l4t);
+}
+function Zl(t, e, i) {
+ t.removeEventListener(e, i, !M3 && l4t);
+}
+function bme(t, e) {
+ if (e) {
+ if (e[0] === ">" && (e = e.substring(1)), t)
+ try {
+ if (t.matches)
+ return t.matches(e);
+ if (t.msMatchesSelector)
+ return t.msMatchesSelector(e);
+ if (t.webkitMatchesSelector)
+ return t.webkitMatchesSelector(e);
+ } catch {
+ return !1;
+ }
+ return !1;
+ }
+}
+function qxr(t) {
+ return t.host && t !== document && t.host.nodeType ? t.host : t.parentNode;
+}
+function sS(t, e, i, r) {
+ if (t) {
+ i = i || document;
+ do {
+ if (e != null && (e[0] === ">" ? t.parentNode === i && bme(t, e) : bme(t, e)) || r && t === i)
+ return t;
+ if (t === i)
+ break;
+ } while (t = qxr(t));
+ }
+ return null;
+}
+var Rot = /\s+/g;
+function bp(t, e, i) {
+ if (t && e)
+ if (t.classList)
+ t.classList[i ? "add" : "remove"](e);
+ else {
+ var r = (" " + t.className + " ").replace(Rot, " ").replace(" " + e + " ", " ");
+ t.className = (r + (i ? " " + e : "")).replace(Rot, " ");
+ }
+}
+function Zs(t, e, i) {
+ var r = t && t.style;
+ if (r) {
+ if (i === void 0)
+ return document.defaultView && document.defaultView.getComputedStyle ? i = document.defaultView.getComputedStyle(t, "") : t.currentStyle && (i = t.currentStyle), e === void 0 ? i : i[e];
+ !(e in r) && e.indexOf("webkit") === -1 && (e = "-webkit-" + e), r[e] = i + (typeof i == "string" ? "" : "px");
+ }
+}
+function z6(t, e) {
+ var i = "";
+ if (typeof t == "string")
+ i = t;
+ else
+ do {
+ var r = Zs(t, "transform");
+ r && r !== "none" && (i = r + " " + i);
+ } while (!e && (t = t.parentNode));
+ var n = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix;
+ return n && new n(i);
+}
+function u4t(t, e, i) {
+ if (t) {
+ var r = t.getElementsByTagName(e), n = 0, s = r.length;
+ if (i)
+ for (; n < s; n++)
+ i(r[n], n);
+ return r;
+ }
+ return [];
+}
+function QE() {
+ var t = document.scrollingElement;
+ return t || document.documentElement;
+}
+function tp(t, e, i, r, n) {
+ if (!(!t.getBoundingClientRect && t !== window)) {
+ var s, o, a, l, c, h, p;
+ if (t !== window && t.parentNode && t !== QE() ? (s = t.getBoundingClientRect(), o = s.top, a = s.left, l = s.bottom, c = s.right, h = s.height, p = s.width) : (o = 0, a = 0, l = window.innerHeight, c = window.innerWidth, h = window.innerHeight, p = window.innerWidth), (e || i) && t !== window && (n = n || t.parentNode, !M3))
+ do
+ if (n && n.getBoundingClientRect && (Zs(n, "transform") !== "none" || i && Zs(n, "position") !== "static")) {
+ var y = n.getBoundingClientRect();
+ o -= y.top + parseInt(Zs(n, "border-top-width")), a -= y.left + parseInt(Zs(n, "border-left-width")), l = o + s.height, c = a + s.width;
+ break;
+ }
+ while (n = n.parentNode);
+ if (r && t !== window) {
+ var v = z6(n || t), x = v && v.a, I = v && v.d;
+ v && (o /= I, a /= x, p /= x, h /= I, l = o + h, c = a + p);
+ }
+ return {
+ top: o,
+ left: a,
+ bottom: l,
+ right: c,
+ width: p,
+ height: h
+ };
+ }
+}
+function Mot(t, e, i) {
+ for (var r = JD(t, !0), n = tp(t)[e]; r; ) {
+ var s = tp(r)[i], o = void 0;
+ if (i === "top" || i === "left" ? o = n >= s : o = n <= s, !o)
+ return r;
+ if (r === QE())
+ break;
+ r = JD(r, !1);
+ }
+ return !1;
+}
+function lz(t, e, i, r) {
+ for (var n = 0, s = 0, o = t.children; s < o.length; ) {
+ if (o[s].style.display !== "none" && o[s] !== ma.ghost && (r || o[s] !== ma.dragged) && sS(o[s], i.draggable, t, !1)) {
+ if (n === e)
+ return o[s];
+ n++;
+ }
+ s++;
+ }
+ return null;
+}
+function uBe(t, e) {
+ for (var i = t.lastElementChild; i && (i === ma.ghost || Zs(i, "display") === "none" || e && !bme(i, e)); )
+ i = i.previousElementSibling;
+ return i || null;
+}
+function Qp(t, e) {
+ var i = 0;
+ if (!t || !t.parentNode)
+ return -1;
+ for (; t = t.previousElementSibling; )
+ t.nodeName.toUpperCase() !== "TEMPLATE" && t !== ma.clone && (!e || bme(t, e)) && i++;
+ return i;
+}
+function Dot(t) {
+ var e = 0, i = 0, r = QE();
+ if (t)
+ do {
+ var n = z6(t), s = n.a, o = n.d;
+ e += t.scrollLeft * s, i += t.scrollTop * o;
+ } while (t !== r && (t = t.parentNode));
+ return [e, i];
+}
+function Yxr(t, e) {
+ for (var i in t)
+ if (t.hasOwnProperty(i)) {
+ for (var r in e)
+ if (e.hasOwnProperty(r) && e[r] === t[i][r])
+ return Number(i);
+ }
+ return -1;
+}
+function JD(t, e) {
+ if (!t || !t.getBoundingClientRect)
+ return QE();
+ var i = t, r = !1;
+ do
+ if (i.clientWidth < i.scrollWidth || i.clientHeight < i.scrollHeight) {
+ var n = Zs(i);
+ if (i.clientWidth < i.scrollWidth && (n.overflowX == "auto" || n.overflowX == "scroll") || i.clientHeight < i.scrollHeight && (n.overflowY == "auto" || n.overflowY == "scroll")) {
+ if (!i.getBoundingClientRect || i === document.body)
+ return QE();
+ if (r || e)
+ return i;
+ r = !0;
+ }
+ }
+ while (i = i.parentNode);
+ return QE();
+}
+function Xxr(t, e) {
+ if (t && e)
+ for (var i in e)
+ e.hasOwnProperty(i) && (t[i] = e[i]);
+ return t;
+}
+function J2e(t, e) {
+ return Math.round(t.top) === Math.round(e.top) && Math.round(t.left) === Math.round(e.left) && Math.round(t.height) === Math.round(e.height) && Math.round(t.width) === Math.round(e.width);
+}
+var yZ;
+function c4t(t, e) {
+ return function() {
+ if (!yZ) {
+ var i = arguments, r = this;
+ i.length === 1 ? t.call(r, i[0]) : t.apply(r, i), yZ = setTimeout(function() {
+ yZ = void 0;
+ }, e);
+ }
+ };
+}
+function Kxr() {
+ clearTimeout(yZ), yZ = void 0;
+}
+function h4t(t, e, i) {
+ t.scrollLeft += e, t.scrollTop += i;
+}
+function cBe(t) {
+ var e = window.Polymer, i = window.jQuery || window.Zepto;
+ return e && e.dom ? e.dom(t).cloneNode(!0) : i ? i(t).clone(!0)[0] : t.cloneNode(!0);
+}
+function Fot(t, e) {
+ Zs(t, "position", "absolute"), Zs(t, "top", e.top), Zs(t, "left", e.left), Zs(t, "width", e.width), Zs(t, "height", e.height);
+}
+function Z2e(t) {
+ Zs(t, "position", ""), Zs(t, "top", ""), Zs(t, "left", ""), Zs(t, "width", ""), Zs(t, "height", "");
+}
+var I0 = "Sortable" + (/* @__PURE__ */ new Date()).getTime();
+function Jxr() {
+ var t = [], e;
+ return {
+ captureAnimationState: function() {
+ if (t = [], !!this.options.animation) {
+ var r = [].slice.call(this.el.children);
+ r.forEach(function(n) {
+ if (!(Zs(n, "display") === "none" || n === ma.ghost)) {
+ t.push({
+ target: n,
+ rect: tp(n)
+ });
+ var s = TI({}, t[t.length - 1].rect);
+ if (n.thisAnimationDuration) {
+ var o = z6(n, !0);
+ o && (s.top -= o.f, s.left -= o.e);
+ }
+ n.fromRect = s;
+ }
+ });
+ }
+ },
+ addAnimationState: function(r) {
+ t.push(r);
+ },
+ removeAnimationState: function(r) {
+ t.splice(Yxr(t, {
+ target: r
+ }), 1);
+ },
+ animateAll: function(r) {
+ var n = this;
+ if (!this.options.animation) {
+ clearTimeout(e), typeof r == "function" && r();
+ return;
+ }
+ var s = !1, o = 0;
+ t.forEach(function(a) {
+ var l = 0, c = a.target, h = c.fromRect, p = tp(c), y = c.prevFromRect, v = c.prevToRect, x = a.rect, I = z6(c, !0);
+ I && (p.top -= I.f, p.left -= I.e), c.toRect = p, c.thisAnimationDuration && J2e(y, p) && !J2e(h, p) && // Make sure animatingRect is on line between toRect & fromRect
+ (x.top - p.top) / (x.left - p.left) === (h.top - p.top) / (h.left - p.left) && (l = Qxr(x, y, v, n.options)), J2e(p, h) || (c.prevFromRect = h, c.prevToRect = p, l || (l = n.options.animation), n.animate(c, x, p, l)), l && (s = !0, o = Math.max(o, l), clearTimeout(c.animationResetTimer), c.animationResetTimer = setTimeout(function() {
+ c.animationTime = 0, c.prevFromRect = null, c.fromRect = null, c.prevToRect = null, c.thisAnimationDuration = null;
+ }, l), c.thisAnimationDuration = l);
+ }), clearTimeout(e), s ? e = setTimeout(function() {
+ typeof r == "function" && r();
+ }, o) : typeof r == "function" && r(), t = [];
+ },
+ animate: function(r, n, s, o) {
+ if (o) {
+ Zs(r, "transition", ""), Zs(r, "transform", "");
+ var a = z6(this.el), l = a && a.a, c = a && a.d, h = (n.left - s.left) / (l || 1), p = (n.top - s.top) / (c || 1);
+ r.animatingX = !!h, r.animatingY = !!p, Zs(r, "transform", "translate3d(" + h + "px," + p + "px,0)"), this.forRepaintDummy = Zxr(r), Zs(r, "transition", "transform " + o + "ms" + (this.options.easing ? " " + this.options.easing : "")), Zs(r, "transform", "translate3d(0,0,0)"), typeof r.animated == "number" && clearTimeout(r.animated), r.animated = setTimeout(function() {
+ Zs(r, "transition", ""), Zs(r, "transform", ""), r.animated = !1, r.animatingX = !1, r.animatingY = !1;
+ }, o);
+ }
+ }
+ };
+}
+function Zxr(t) {
+ return t.offsetWidth;
+}
+function Qxr(t, e, i, r) {
+ return Math.sqrt(Math.pow(e.top - t.top, 2) + Math.pow(e.left - t.left, 2)) / Math.sqrt(Math.pow(e.top - i.top, 2) + Math.pow(e.left - i.left, 2)) * r.animation;
+}
+var NB = [], Q2e = {
+ initializeByDefault: !0
+}, cre = {
+ mount: function(e) {
+ for (var i in Q2e)
+ Q2e.hasOwnProperty(i) && !(i in e) && (e[i] = Q2e[i]);
+ NB.forEach(function(r) {
+ if (r.pluginName === e.pluginName)
+ throw "Sortable: Cannot mount plugin ".concat(e.pluginName, " more than once");
+ }), NB.push(e);
+ },
+ pluginEvent: function(e, i, r) {
+ var n = this;
+ this.eventCanceled = !1, r.cancel = function() {
+ n.eventCanceled = !0;
+ };
+ var s = e + "Global";
+ NB.forEach(function(o) {
+ i[o.pluginName] && (i[o.pluginName][s] && i[o.pluginName][s](TI({
+ sortable: i
+ }, r)), i.options[o.pluginName] && i[o.pluginName][e] && i[o.pluginName][e](TI({
+ sortable: i
+ }, r)));
+ });
+ },
+ initializePlugins: function(e, i, r, n) {
+ NB.forEach(function(a) {
+ var l = a.pluginName;
+ if (!(!e.options[l] && !a.initializeByDefault)) {
+ var c = new a(e, i, e.options);
+ c.sortable = e, c.options = e.options, e[l] = c, jx(r, c.defaults);
+ }
+ });
+ for (var s in e.options)
+ if (e.options.hasOwnProperty(s)) {
+ var o = this.modifyOption(e, s, e.options[s]);
+ typeof o < "u" && (e.options[s] = o);
+ }
+ },
+ getEventProperties: function(e, i) {
+ var r = {};
+ return NB.forEach(function(n) {
+ typeof n.eventProperties == "function" && jx(r, n.eventProperties.call(i[n.pluginName], e));
+ }), r;
+ },
+ modifyOption: function(e, i, r) {
+ var n;
+ return NB.forEach(function(s) {
+ e[s.pluginName] && s.optionListeners && typeof s.optionListeners[i] == "function" && (n = s.optionListeners[i].call(e[s.pluginName], r));
+ }), n;
+ }
+};
+function mK(t) {
+ var e = t.sortable, i = t.rootEl, r = t.name, n = t.targetEl, s = t.cloneEl, o = t.toEl, a = t.fromEl, l = t.oldIndex, c = t.newIndex, h = t.oldDraggableIndex, p = t.newDraggableIndex, y = t.originalEvent, v = t.putSortable, x = t.extraEventProperties;
+ if (e = e || i && i[I0], !!e) {
+ var I, P = e.options, F = "on" + r.charAt(0).toUpperCase() + r.substr(1);
+ window.CustomEvent && !M3 && !ure ? I = new CustomEvent(r, {
+ bubbles: !0,
+ cancelable: !0
+ }) : (I = document.createEvent("Event"), I.initEvent(r, !0, !0)), I.to = o || i, I.from = a || i, I.item = n || i, I.clone = s, I.oldIndex = l, I.newIndex = c, I.oldDraggableIndex = h, I.newDraggableIndex = p, I.originalEvent = y, I.pullMode = v ? v.lastPutMode : void 0;
+ var k = TI(TI({}, x), cre.getEventProperties(r, e));
+ for (var V in k)
+ I[V] = k[V];
+ i && i.dispatchEvent(I), P[F] && P[F].call(e, I);
+ }
+}
+var e2r = ["evt"], a_ = function(e, i) {
+ var r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, n = r.evt, s = Bxr(r, e2r);
+ cre.pluginEvent.bind(ma)(e, i, TI({
+ dragEl: Wn,
+ parentEl: zp,
+ ghostEl: cl,
+ rootEl: Kd,
+ nextEl: ik,
+ lastDownEl: kce,
+ cloneEl: qp,
+ cloneHidden: DD,
+ dragStarted: gK,
+ putSortable: ny,
+ activeSortable: ma.active,
+ originalEvent: n,
+ oldIndex: OG,
+ oldDraggableIndex: vZ,
+ newIndex: rb,
+ newDraggableIndex: vD,
+ hideGhostForTarget: m4t,
+ unhideGhostForTarget: g4t,
+ cloneNowHidden: function() {
+ DD = !0;
+ },
+ cloneNowShown: function() {
+ DD = !1;
+ },
+ dispatchSortableEvent: function(a) {
+ cv({
+ sortable: i,
+ name: a,
+ originalEvent: n
+ });
+ }
+ }, s));
+};
+function cv(t) {
+ mK(TI({
+ putSortable: ny,
+ cloneEl: qp,
+ targetEl: Wn,
+ rootEl: Kd,
+ oldIndex: OG,
+ oldDraggableIndex: vZ,
+ newIndex: rb,
+ newDraggableIndex: vD
+ }, t));
+}
+var Wn, zp, cl, Kd, ik, kce, qp, DD, OG, rb, vZ, vD, Tae, ny, vj = !1, wme = !1, xme = [], S5, S2, eSe, tSe, Lot, Not, gK, kB, _Z, bZ = !1, Eae = !1, $ce, Qy, iSe = [], HDe = !1, Sme = [], Xve = typeof document < "u", Iae = a4t, kot = ure || M3 ? "cssFloat" : "float", t2r = Xve && !Wxr && !a4t && "draggable" in document.createElement("div"), d4t = function() {
+ if (Xve) {
+ if (M3)
+ return !1;
+ var t = document.createElement("x");
+ return t.style.cssText = "pointer-events:auto", t.style.pointerEvents === "auto";
+ }
+}(), p4t = function(e, i) {
+ var r = Zs(e), n = parseInt(r.width) - parseInt(r.paddingLeft) - parseInt(r.paddingRight) - parseInt(r.borderLeftWidth) - parseInt(r.borderRightWidth), s = lz(e, 0, i), o = lz(e, 1, i), a = s && Zs(s), l = o && Zs(o), c = a && parseInt(a.marginLeft) + parseInt(a.marginRight) + tp(s).width, h = l && parseInt(l.marginLeft) + parseInt(l.marginRight) + tp(o).width;
+ if (r.display === "flex")
+ return r.flexDirection === "column" || r.flexDirection === "column-reverse" ? "vertical" : "horizontal";
+ if (r.display === "grid")
+ return r.gridTemplateColumns.split(" ").length <= 1 ? "vertical" : "horizontal";
+ if (s && a.float && a.float !== "none") {
+ var p = a.float === "left" ? "left" : "right";
+ return o && (l.clear === "both" || l.clear === p) ? "vertical" : "horizontal";
+ }
+ return s && (a.display === "block" || a.display === "flex" || a.display === "table" || a.display === "grid" || c >= n && r[kot] === "none" || o && r[kot] === "none" && c + h > n) ? "vertical" : "horizontal";
+}, i2r = function(e, i, r) {
+ var n = r ? e.left : e.top, s = r ? e.right : e.bottom, o = r ? e.width : e.height, a = r ? i.left : i.top, l = r ? i.right : i.bottom, c = r ? i.width : i.height;
+ return n === a || s === l || n + o / 2 === a + c / 2;
+}, r2r = function(e, i) {
+ var r;
+ return xme.some(function(n) {
+ var s = n[I0].options.emptyInsertThreshold;
+ if (!(!s || uBe(n))) {
+ var o = tp(n), a = e >= o.left - s && e <= o.right + s, l = i >= o.top - s && i <= o.bottom + s;
+ if (a && l)
+ return r = n;
+ }
+ }), r;
+}, f4t = function(e) {
+ function i(s, o) {
+ return function(a, l, c, h) {
+ var p = a.options.group.name && l.options.group.name && a.options.group.name === l.options.group.name;
+ if (s == null && (o || p))
+ return !0;
+ if (s == null || s === !1)
+ return !1;
+ if (o && s === "clone")
+ return s;
+ if (typeof s == "function")
+ return i(s(a, l, c, h), o)(a, l, c, h);
+ var y = (o ? a : l).options.group.name;
+ return s === !0 || typeof s == "string" && s === y || s.join && s.indexOf(y) > -1;
+ };
+ }
+ var r = {}, n = e.group;
+ (!n || Nce(n) != "object") && (n = {
+ name: n
+ }), r.name = n.name, r.checkPull = i(n.pull, !0), r.checkPut = i(n.put), r.revertClone = n.revertClone, e.group = r;
+}, m4t = function() {
+ !d4t && cl && Zs(cl, "display", "none");
+}, g4t = function() {
+ !d4t && cl && Zs(cl, "display", "");
+};
+Xve && document.addEventListener("click", function(t) {
+ if (wme)
+ return t.preventDefault(), t.stopPropagation && t.stopPropagation(), t.stopImmediatePropagation && t.stopImmediatePropagation(), wme = !1, !1;
+}, !0);
+var C5 = function(e) {
+ if (Wn) {
+ e = e.touches ? e.touches[0] : e;
+ var i = r2r(e.clientX, e.clientY);
+ if (i) {
+ var r = {};
+ for (var n in e)
+ e.hasOwnProperty(n) && (r[n] = e[n]);
+ r.target = r.rootEl = i, r.preventDefault = void 0, r.stopPropagation = void 0, i[I0]._onDragOver(r);
+ }
+ }
+}, n2r = function(e) {
+ Wn && Wn.parentNode[I0]._isOutsideThisEl(e.target);
+};
+function ma(t, e) {
+ if (!(t && t.nodeType && t.nodeType === 1))
+ throw "Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));
+ this.el = t, this.options = e = jx({}, e), t[I0] = this;
+ var i = {
+ group: null,
+ sort: !0,
+ disabled: !1,
+ store: null,
+ handle: null,
+ draggable: /^[uo]l$/i.test(t.nodeName) ? ">li" : ">*",
+ swapThreshold: 1,
+ // percentage; 0 <= x <= 1
+ invertSwap: !1,
+ // invert always
+ invertedSwapThreshold: null,
+ // will be set to same as swapThreshold if default
+ removeCloneOnHide: !0,
+ direction: function() {
+ return p4t(t, this.options);
+ },
+ ghostClass: "sortable-ghost",
+ chosenClass: "sortable-chosen",
+ dragClass: "sortable-drag",
+ ignore: "a, img",
+ filter: null,
+ preventOnFilter: !0,
+ animation: 0,
+ easing: null,
+ setData: function(o, a) {
+ o.setData("Text", a.textContent);
+ },
+ dropBubble: !1,
+ dragoverBubble: !1,
+ dataIdAttr: "data-id",
+ delay: 0,
+ delayOnTouchOnly: !1,
+ touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1,
+ forceFallback: !1,
+ fallbackClass: "sortable-fallback",
+ fallbackOnBody: !1,
+ fallbackTolerance: 0,
+ fallbackOffset: {
+ x: 0,
+ y: 0
+ },
+ supportPointer: ma.supportPointer !== !1 && "PointerEvent" in window && !gZ,
+ emptyInsertThreshold: 5
+ };
+ cre.initializePlugins(this, t, i);
+ for (var r in i)
+ !(r in e) && (e[r] = i[r]);
+ f4t(e);
+ for (var n in this)
+ n.charAt(0) === "_" && typeof this[n] == "function" && (this[n] = this[n].bind(this));
+ this.nativeDraggable = e.forceFallback ? !1 : t2r, this.nativeDraggable && (this.options.touchStartThreshold = 1), e.supportPointer ? _u(t, "pointerdown", this._onTapStart) : (_u(t, "mousedown", this._onTapStart), _u(t, "touchstart", this._onTapStart)), this.nativeDraggable && (_u(t, "dragover", this), _u(t, "dragenter", this)), xme.push(this.el), e.store && e.store.get && this.sort(e.store.get(this) || []), jx(this, Jxr());
+}
+ma.prototype = /** @lends Sortable.prototype */
+{
+ constructor: ma,
+ _isOutsideThisEl: function(e) {
+ !this.el.contains(e) && e !== this.el && (kB = null);
+ },
+ _getDirection: function(e, i) {
+ return typeof this.options.direction == "function" ? this.options.direction.call(this, e, i, Wn) : this.options.direction;
+ },
+ _onTapStart: function(e) {
+ if (e.cancelable) {
+ var i = this, r = this.el, n = this.options, s = n.preventOnFilter, o = e.type, a = e.touches && e.touches[0] || e.pointerType && e.pointerType === "touch" && e, l = (a || e).target, c = e.target.shadowRoot && (e.path && e.path[0] || e.composedPath && e.composedPath()[0]) || l, h = n.filter;
+ if (d2r(r), !Wn && !(/mousedown|pointerdown/.test(o) && e.button !== 0 || n.disabled) && !c.isContentEditable && !(!this.nativeDraggable && gZ && l && l.tagName.toUpperCase() === "SELECT") && (l = sS(l, n.draggable, r, !1), !(l && l.animated) && kce !== l)) {
+ if (OG = Qp(l), vZ = Qp(l, n.draggable), typeof h == "function") {
+ if (h.call(this, e, l, this)) {
+ cv({
+ sortable: i,
+ rootEl: c,
+ name: "filter",
+ targetEl: l,
+ toEl: r,
+ fromEl: r
+ }), a_("filter", i, {
+ evt: e
+ }), s && e.cancelable && e.preventDefault();
+ return;
+ }
+ } else if (h && (h = h.split(",").some(function(p) {
+ if (p = sS(c, p.trim(), r, !1), p)
+ return cv({
+ sortable: i,
+ rootEl: p,
+ name: "filter",
+ targetEl: l,
+ fromEl: r,
+ toEl: r
+ }), a_("filter", i, {
+ evt: e
+ }), !0;
+ }), h)) {
+ s && e.cancelable && e.preventDefault();
+ return;
+ }
+ n.handle && !sS(c, n.handle, r, !1) || this._prepareDragStart(e, a, l);
+ }
+ }
+ },
+ _prepareDragStart: function(e, i, r) {
+ var n = this, s = n.el, o = n.options, a = s.ownerDocument, l;
+ if (r && !Wn && r.parentNode === s) {
+ var c = tp(r);
+ if (Kd = s, Wn = r, zp = Wn.parentNode, ik = Wn.nextSibling, kce = r, Tae = o.group, ma.dragged = Wn, S5 = {
+ target: Wn,
+ clientX: (i || e).clientX,
+ clientY: (i || e).clientY
+ }, Lot = S5.clientX - c.left, Not = S5.clientY - c.top, this._lastX = (i || e).clientX, this._lastY = (i || e).clientY, Wn.style["will-change"] = "all", l = function() {
+ if (a_("delayEnded", n, {
+ evt: e
+ }), ma.eventCanceled) {
+ n._onDrop();
+ return;
+ }
+ n._disableDelayedDragEvents(), !Oot && n.nativeDraggable && (Wn.draggable = !0), n._triggerDragStart(e, i), cv({
+ sortable: n,
+ name: "choose",
+ originalEvent: e
+ }), bp(Wn, o.chosenClass, !0);
+ }, o.ignore.split(",").forEach(function(h) {
+ u4t(Wn, h.trim(), rSe);
+ }), _u(a, "dragover", C5), _u(a, "mousemove", C5), _u(a, "touchmove", C5), _u(a, "mouseup", n._onDrop), _u(a, "touchend", n._onDrop), _u(a, "touchcancel", n._onDrop), Oot && this.nativeDraggable && (this.options.touchStartThreshold = 4, Wn.draggable = !0), a_("delayStart", this, {
+ evt: e
+ }), o.delay && (!o.delayOnTouchOnly || i) && (!this.nativeDraggable || !(ure || M3))) {
+ if (ma.eventCanceled) {
+ this._onDrop();
+ return;
+ }
+ _u(a, "mouseup", n._disableDelayedDrag), _u(a, "touchend", n._disableDelayedDrag), _u(a, "touchcancel", n._disableDelayedDrag), _u(a, "mousemove", n._delayedDragTouchMoveHandler), _u(a, "touchmove", n._delayedDragTouchMoveHandler), o.supportPointer && _u(a, "pointermove", n._delayedDragTouchMoveHandler), n._dragStartTimer = setTimeout(l, o.delay);
+ } else
+ l();
+ }
+ },
+ _delayedDragTouchMoveHandler: function(e) {
+ var i = e.touches ? e.touches[0] : e;
+ Math.max(Math.abs(i.clientX - this._lastX), Math.abs(i.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1)) && this._disableDelayedDrag();
+ },
+ _disableDelayedDrag: function() {
+ Wn && rSe(Wn), clearTimeout(this._dragStartTimer), this._disableDelayedDragEvents();
+ },
+ _disableDelayedDragEvents: function() {
+ var e = this.el.ownerDocument;
+ Zl(e, "mouseup", this._disableDelayedDrag), Zl(e, "touchend", this._disableDelayedDrag), Zl(e, "touchcancel", this._disableDelayedDrag), Zl(e, "mousemove", this._delayedDragTouchMoveHandler), Zl(e, "touchmove", this._delayedDragTouchMoveHandler), Zl(e, "pointermove", this._delayedDragTouchMoveHandler);
+ },
+ _triggerDragStart: function(e, i) {
+ i = i || e.pointerType == "touch" && e, !this.nativeDraggable || i ? this.options.supportPointer ? _u(document, "pointermove", this._onTouchMove) : i ? _u(document, "touchmove", this._onTouchMove) : _u(document, "mousemove", this._onTouchMove) : (_u(Wn, "dragend", this), _u(Kd, "dragstart", this._onDragStart));
+ try {
+ document.selection ? Bce(function() {
+ document.selection.empty();
+ }) : window.getSelection().removeAllRanges();
+ } catch {
+ }
+ },
+ _dragStarted: function(e, i) {
+ if (vj = !1, Kd && Wn) {
+ a_("dragStarted", this, {
+ evt: i
+ }), this.nativeDraggable && _u(document, "dragover", n2r);
+ var r = this.options;
+ !e && bp(Wn, r.dragClass, !1), bp(Wn, r.ghostClass, !0), ma.active = this, e && this._appendGhost(), cv({
+ sortable: this,
+ name: "start",
+ originalEvent: i
+ });
+ } else
+ this._nulling();
+ },
+ _emulateDragOver: function() {
+ if (S2) {
+ this._lastX = S2.clientX, this._lastY = S2.clientY, m4t();
+ for (var e = document.elementFromPoint(S2.clientX, S2.clientY), i = e; e && e.shadowRoot && (e = e.shadowRoot.elementFromPoint(S2.clientX, S2.clientY), e !== i); )
+ i = e;
+ if (Wn.parentNode[I0]._isOutsideThisEl(e), i)
+ do {
+ if (i[I0]) {
+ var r = void 0;
+ if (r = i[I0]._onDragOver({
+ clientX: S2.clientX,
+ clientY: S2.clientY,
+ target: e,
+ rootEl: i
+ }), r && !this.options.dragoverBubble)
+ break;
+ }
+ e = i;
+ } while (i = i.parentNode);
+ g4t();
+ }
+ },
+ _onTouchMove: function(e) {
+ if (S5) {
+ var i = this.options, r = i.fallbackTolerance, n = i.fallbackOffset, s = e.touches ? e.touches[0] : e, o = cl && z6(cl, !0), a = cl && o && o.a, l = cl && o && o.d, c = Iae && Qy && Dot(Qy), h = (s.clientX - S5.clientX + n.x) / (a || 1) + (c ? c[0] - iSe[0] : 0) / (a || 1), p = (s.clientY - S5.clientY + n.y) / (l || 1) + (c ? c[1] - iSe[1] : 0) / (l || 1);
+ if (!ma.active && !vj) {
+ if (r && Math.max(Math.abs(s.clientX - this._lastX), Math.abs(s.clientY - this._lastY)) < r)
+ return;
+ this._onDragStart(e, !0);
+ }
+ if (cl) {
+ o ? (o.e += h - (eSe || 0), o.f += p - (tSe || 0)) : o = {
+ a: 1,
+ b: 0,
+ c: 0,
+ d: 1,
+ e: h,
+ f: p
+ };
+ var y = "matrix(".concat(o.a, ",").concat(o.b, ",").concat(o.c, ",").concat(o.d, ",").concat(o.e, ",").concat(o.f, ")");
+ Zs(cl, "webkitTransform", y), Zs(cl, "mozTransform", y), Zs(cl, "msTransform", y), Zs(cl, "transform", y), eSe = h, tSe = p, S2 = s;
+ }
+ e.cancelable && e.preventDefault();
+ }
+ },
+ _appendGhost: function() {
+ if (!cl) {
+ var e = this.options.fallbackOnBody ? document.body : Kd, i = tp(Wn, !0, Iae, !0, e), r = this.options;
+ if (Iae) {
+ for (Qy = e; Zs(Qy, "position") === "static" && Zs(Qy, "transform") === "none" && Qy !== document; )
+ Qy = Qy.parentNode;
+ Qy !== document.body && Qy !== document.documentElement ? (Qy === document && (Qy = QE()), i.top += Qy.scrollTop, i.left += Qy.scrollLeft) : Qy = QE(), iSe = Dot(Qy);
+ }
+ cl = Wn.cloneNode(!0), bp(cl, r.ghostClass, !1), bp(cl, r.fallbackClass, !0), bp(cl, r.dragClass, !0), Zs(cl, "transition", ""), Zs(cl, "transform", ""), Zs(cl, "box-sizing", "border-box"), Zs(cl, "margin", 0), Zs(cl, "top", i.top), Zs(cl, "left", i.left), Zs(cl, "width", i.width), Zs(cl, "height", i.height), Zs(cl, "opacity", "0.8"), Zs(cl, "position", Iae ? "absolute" : "fixed"), Zs(cl, "zIndex", "100000"), Zs(cl, "pointerEvents", "none"), ma.ghost = cl, e.appendChild(cl), Zs(cl, "transform-origin", Lot / parseInt(cl.style.width) * 100 + "% " + Not / parseInt(cl.style.height) * 100 + "%");
+ }
+ },
+ _onDragStart: function(e, i) {
+ var r = this, n = e.dataTransfer, s = r.options;
+ if (a_("dragStart", this, {
+ evt: e
+ }), ma.eventCanceled) {
+ this._onDrop();
+ return;
+ }
+ a_("setupClone", this), ma.eventCanceled || (qp = cBe(Wn), qp.draggable = !1, qp.style["will-change"] = "", this._hideClone(), bp(qp, this.options.chosenClass, !1), ma.clone = qp), r.cloneId = Bce(function() {
+ a_("clone", r), !ma.eventCanceled && (r.options.removeCloneOnHide || Kd.insertBefore(qp, Wn), r._hideClone(), cv({
+ sortable: r,
+ name: "clone"
+ }));
+ }), !i && bp(Wn, s.dragClass, !0), i ? (wme = !0, r._loopId = setInterval(r._emulateDragOver, 50)) : (Zl(document, "mouseup", r._onDrop), Zl(document, "touchend", r._onDrop), Zl(document, "touchcancel", r._onDrop), n && (n.effectAllowed = "move", s.setData && s.setData.call(r, n, Wn)), _u(document, "drop", r), Zs(Wn, "transform", "translateZ(0)")), vj = !0, r._dragStartId = Bce(r._dragStarted.bind(r, i, e)), _u(document, "selectstart", r), gK = !0, gZ && Zs(document.body, "user-select", "none");
+ },
+ // Returns true - if no further action is needed (either inserted or another condition)
+ _onDragOver: function(e) {
+ var i = this.el, r = e.target, n, s, o, a = this.options, l = a.group, c = ma.active, h = Tae === l, p = a.sort, y = ny || c, v, x = this, I = !1;
+ if (HDe)
+ return;
+ function P(Pe, Oe) {
+ a_(Pe, x, TI({
+ evt: e,
+ isOwner: h,
+ axis: v ? "vertical" : "horizontal",
+ revert: o,
+ dragRect: n,
+ targetRect: s,
+ canSort: p,
+ fromSortable: y,
+ target: r,
+ completed: k,
+ onMove: function(Ge, je) {
+ return Aae(Kd, i, Wn, n, Ge, tp(Ge), e, je);
+ },
+ changed: V
+ }, Oe));
+ }
+ function F() {
+ P("dragOverAnimationCapture"), x.captureAnimationState(), x !== y && y.captureAnimationState();
+ }
+ function k(Pe) {
+ return P("dragOverCompleted", {
+ insertion: Pe
+ }), Pe && (h ? c._hideClone() : c._showClone(x), x !== y && (bp(Wn, ny ? ny.options.ghostClass : c.options.ghostClass, !1), bp(Wn, a.ghostClass, !0)), ny !== x && x !== ma.active ? ny = x : x === ma.active && ny && (ny = null), y === x && (x._ignoreWhileAnimating = r), x.animateAll(function() {
+ P("dragOverAnimationComplete"), x._ignoreWhileAnimating = null;
+ }), x !== y && (y.animateAll(), y._ignoreWhileAnimating = null)), (r === Wn && !Wn.animated || r === i && !r.animated) && (kB = null), !a.dragoverBubble && !e.rootEl && r !== document && (Wn.parentNode[I0]._isOutsideThisEl(e.target), !Pe && C5(e)), !a.dragoverBubble && e.stopPropagation && e.stopPropagation(), I = !0;
+ }
+ function V() {
+ rb = Qp(Wn), vD = Qp(Wn, a.draggable), cv({
+ sortable: x,
+ name: "change",
+ toEl: i,
+ newIndex: rb,
+ newDraggableIndex: vD,
+ originalEvent: e
+ });
+ }
+ if (e.preventDefault !== void 0 && e.cancelable && e.preventDefault(), r = sS(r, a.draggable, i, !0), P("dragOver"), ma.eventCanceled)
+ return I;
+ if (Wn.contains(e.target) || r.animated && r.animatingX && r.animatingY || x._ignoreWhileAnimating === r)
+ return k(!1);
+ if (wme = !1, c && !a.disabled && (h ? p || (o = zp !== Kd) : ny === this || (this.lastPutMode = Tae.checkPull(this, c, Wn, e)) && l.checkPut(this, c, Wn, e))) {
+ if (v = this._getDirection(e, r) === "vertical", n = tp(Wn), P("dragOverValid"), ma.eventCanceled)
+ return I;
+ if (o)
+ return zp = Kd, F(), this._hideClone(), P("revert"), ma.eventCanceled || (ik ? Kd.insertBefore(Wn, ik) : Kd.appendChild(Wn)), k(!0);
+ var j = uBe(i, a.draggable);
+ if (!j || l2r(e, v, this) && !j.animated) {
+ if (j === Wn)
+ return k(!1);
+ if (j && i === e.target && (r = j), r && (s = tp(r)), Aae(Kd, i, Wn, n, r, s, e, !!r) !== !1)
+ return F(), i.appendChild(Wn), zp = i, V(), k(!0);
+ } else if (j && a2r(e, v, this)) {
+ var Y = lz(i, 0, a, !0);
+ if (Y === Wn)
+ return k(!1);
+ if (r = Y, s = tp(r), Aae(Kd, i, Wn, n, r, s, e, !1) !== !1)
+ return F(), i.insertBefore(Wn, Y), zp = i, V(), k(!0);
+ } else if (r.parentNode === i) {
+ s = tp(r);
+ var X = 0, Q, re = Wn.parentNode !== i, he = !i2r(Wn.animated && Wn.toRect || n, r.animated && r.toRect || s, v), fe = v ? "top" : "left", be = Mot(r, "top", "top") || Mot(Wn, "top", "top"), Se = be ? be.scrollTop : void 0;
+ kB !== r && (Q = s[fe], bZ = !1, Eae = !he && a.invertSwap || re), X = u2r(e, r, s, v, he ? 1 : a.swapThreshold, a.invertedSwapThreshold == null ? a.swapThreshold : a.invertedSwapThreshold, Eae, kB === r);
+ var Me;
+ if (X !== 0) {
+ var ke = Qp(Wn);
+ do
+ ke -= X, Me = zp.children[ke];
+ while (Me && (Zs(Me, "display") === "none" || Me === cl));
+ }
+ if (X === 0 || Me === r)
+ return k(!1);
+ kB = r, _Z = X;
+ var J = r.nextElementSibling, ce = !1;
+ ce = X === 1;
+ var xe = Aae(Kd, i, Wn, n, r, s, e, ce);
+ if (xe !== !1)
+ return (xe === 1 || xe === -1) && (ce = xe === 1), HDe = !0, setTimeout(o2r, 30), F(), ce && !J ? i.appendChild(Wn) : r.parentNode.insertBefore(Wn, ce ? J : r), be && h4t(be, 0, Se - be.scrollTop), zp = Wn.parentNode, Q !== void 0 && !Eae && ($ce = Math.abs(Q - tp(r)[fe])), V(), k(!0);
+ }
+ if (i.contains(Wn))
+ return k(!1);
+ }
+ return !1;
+ },
+ _ignoreWhileAnimating: null,
+ _offMoveEvents: function() {
+ Zl(document, "mousemove", this._onTouchMove), Zl(document, "touchmove", this._onTouchMove), Zl(document, "pointermove", this._onTouchMove), Zl(document, "dragover", C5), Zl(document, "mousemove", C5), Zl(document, "touchmove", C5);
+ },
+ _offUpEvents: function() {
+ var e = this.el.ownerDocument;
+ Zl(e, "mouseup", this._onDrop), Zl(e, "touchend", this._onDrop), Zl(e, "pointerup", this._onDrop), Zl(e, "touchcancel", this._onDrop), Zl(document, "selectstart", this);
+ },
+ _onDrop: function(e) {
+ var i = this.el, r = this.options;
+ if (rb = Qp(Wn), vD = Qp(Wn, r.draggable), a_("drop", this, {
+ evt: e
+ }), zp = Wn && Wn.parentNode, rb = Qp(Wn), vD = Qp(Wn, r.draggable), ma.eventCanceled) {
+ this._nulling();
+ return;
+ }
+ vj = !1, Eae = !1, bZ = !1, clearInterval(this._loopId), clearTimeout(this._dragStartTimer), WDe(this.cloneId), WDe(this._dragStartId), this.nativeDraggable && (Zl(document, "drop", this), Zl(i, "dragstart", this._onDragStart)), this._offMoveEvents(), this._offUpEvents(), gZ && Zs(document.body, "user-select", ""), Zs(Wn, "transform", ""), e && (gK && (e.cancelable && e.preventDefault(), !r.dropBubble && e.stopPropagation()), cl && cl.parentNode && cl.parentNode.removeChild(cl), (Kd === zp || ny && ny.lastPutMode !== "clone") && qp && qp.parentNode && qp.parentNode.removeChild(qp), Wn && (this.nativeDraggable && Zl(Wn, "dragend", this), rSe(Wn), Wn.style["will-change"] = "", gK && !vj && bp(Wn, ny ? ny.options.ghostClass : this.options.ghostClass, !1), bp(Wn, this.options.chosenClass, !1), cv({
+ sortable: this,
+ name: "unchoose",
+ toEl: zp,
+ newIndex: null,
+ newDraggableIndex: null,
+ originalEvent: e
+ }), Kd !== zp ? (rb >= 0 && (cv({
+ rootEl: zp,
+ name: "add",
+ toEl: zp,
+ fromEl: Kd,
+ originalEvent: e
+ }), cv({
+ sortable: this,
+ name: "remove",
+ toEl: zp,
+ originalEvent: e
+ }), cv({
+ rootEl: zp,
+ name: "sort",
+ toEl: zp,
+ fromEl: Kd,
+ originalEvent: e
+ }), cv({
+ sortable: this,
+ name: "sort",
+ toEl: zp,
+ originalEvent: e
+ })), ny && ny.save()) : rb !== OG && rb >= 0 && (cv({
+ sortable: this,
+ name: "update",
+ toEl: zp,
+ originalEvent: e
+ }), cv({
+ sortable: this,
+ name: "sort",
+ toEl: zp,
+ originalEvent: e
+ })), ma.active && ((rb == null || rb === -1) && (rb = OG, vD = vZ), cv({
+ sortable: this,
+ name: "end",
+ toEl: zp,
+ originalEvent: e
+ }), this.save()))), this._nulling();
+ },
+ _nulling: function() {
+ a_("nulling", this), Kd = Wn = zp = cl = ik = qp = kce = DD = S5 = S2 = gK = rb = vD = OG = vZ = kB = _Z = ny = Tae = ma.dragged = ma.ghost = ma.clone = ma.active = null, Sme.forEach(function(e) {
+ e.checked = !0;
+ }), Sme.length = eSe = tSe = 0;
+ },
+ handleEvent: function(e) {
+ switch (e.type) {
+ case "drop":
+ case "dragend":
+ this._onDrop(e);
+ break;
+ case "dragenter":
+ case "dragover":
+ Wn && (this._onDragOver(e), s2r(e));
+ break;
+ case "selectstart":
+ e.preventDefault();
+ break;
+ }
+ },
+ /**
+ * Serializes the item into an array of string.
+ * @returns {String[]}
+ */
+ toArray: function() {
+ for (var e = [], i, r = this.el.children, n = 0, s = r.length, o = this.options; n < s; n++)
+ i = r[n], sS(i, o.draggable, this.el, !1) && e.push(i.getAttribute(o.dataIdAttr) || h2r(i));
+ return e;
+ },
+ /**
+ * Sorts the elements according to the array.
+ * @param {String[]} order order of the items
+ */
+ sort: function(e, i) {
+ var r = {}, n = this.el;
+ this.toArray().forEach(function(s, o) {
+ var a = n.children[o];
+ sS(a, this.options.draggable, n, !1) && (r[s] = a);
+ }, this), i && this.captureAnimationState(), e.forEach(function(s) {
+ r[s] && (n.removeChild(r[s]), n.appendChild(r[s]));
+ }), i && this.animateAll();
+ },
+ /**
+ * Save the current sorting
+ */
+ save: function() {
+ var e = this.options.store;
+ e && e.set && e.set(this);
+ },
+ /**
+ * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.
+ * @param {HTMLElement} el
+ * @param {String} [selector] default: `options.draggable`
+ * @returns {HTMLElement|null}
+ */
+ closest: function(e, i) {
+ return sS(e, i || this.options.draggable, this.el, !1);
+ },
+ /**
+ * Set/get option
+ * @param {string} name
+ * @param {*} [value]
+ * @returns {*}
+ */
+ option: function(e, i) {
+ var r = this.options;
+ if (i === void 0)
+ return r[e];
+ var n = cre.modifyOption(this, e, i);
+ typeof n < "u" ? r[e] = n : r[e] = i, e === "group" && f4t(r);
+ },
+ /**
+ * Destroy
+ */
+ destroy: function() {
+ a_("destroy", this);
+ var e = this.el;
+ e[I0] = null, Zl(e, "mousedown", this._onTapStart), Zl(e, "touchstart", this._onTapStart), Zl(e, "pointerdown", this._onTapStart), this.nativeDraggable && (Zl(e, "dragover", this), Zl(e, "dragenter", this)), Array.prototype.forEach.call(e.querySelectorAll("[draggable]"), function(i) {
+ i.removeAttribute("draggable");
+ }), this._onDrop(), this._disableDelayedDragEvents(), xme.splice(xme.indexOf(this.el), 1), this.el = e = null;
+ },
+ _hideClone: function() {
+ if (!DD) {
+ if (a_("hideClone", this), ma.eventCanceled)
+ return;
+ Zs(qp, "display", "none"), this.options.removeCloneOnHide && qp.parentNode && qp.parentNode.removeChild(qp), DD = !0;
+ }
+ },
+ _showClone: function(e) {
+ if (e.lastPutMode !== "clone") {
+ this._hideClone();
+ return;
+ }
+ if (DD) {
+ if (a_("showClone", this), ma.eventCanceled)
+ return;
+ Wn.parentNode == Kd && !this.options.group.revertClone ? Kd.insertBefore(qp, Wn) : ik ? Kd.insertBefore(qp, ik) : Kd.appendChild(qp), this.options.group.revertClone && this.animate(Wn, qp), Zs(qp, "display", ""), DD = !1;
+ }
+ }
+};
+function s2r(t) {
+ t.dataTransfer && (t.dataTransfer.dropEffect = "move"), t.cancelable && t.preventDefault();
+}
+function Aae(t, e, i, r, n, s, o, a) {
+ var l, c = t[I0], h = c.options.onMove, p;
+ return window.CustomEvent && !M3 && !ure ? l = new CustomEvent("move", {
+ bubbles: !0,
+ cancelable: !0
+ }) : (l = document.createEvent("Event"), l.initEvent("move", !0, !0)), l.to = e, l.from = t, l.dragged = i, l.draggedRect = r, l.related = n || e, l.relatedRect = s || tp(e), l.willInsertAfter = a, l.originalEvent = o, t.dispatchEvent(l), h && (p = h.call(c, l, o)), p;
+}
+function rSe(t) {
+ t.draggable = !1;
+}
+function o2r() {
+ HDe = !1;
+}
+function a2r(t, e, i) {
+ var r = tp(lz(i.el, 0, i.options, !0)), n = 10;
+ return e ? t.clientX < r.left - n || t.clientY < r.top && t.clientX < r.right : t.clientY < r.top - n || t.clientY < r.bottom && t.clientX < r.left;
+}
+function l2r(t, e, i) {
+ var r = tp(uBe(i.el, i.options.draggable)), n = 10;
+ return e ? t.clientX > r.right + n || t.clientX <= r.right && t.clientY > r.bottom && t.clientX >= r.left : t.clientX > r.right && t.clientY > r.top || t.clientX <= r.right && t.clientY > r.bottom + n;
+}
+function u2r(t, e, i, r, n, s, o, a) {
+ var l = r ? t.clientY : t.clientX, c = r ? i.height : i.width, h = r ? i.top : i.left, p = r ? i.bottom : i.right, y = !1;
+ if (!o) {
+ if (a && $ce < c * n) {
+ if (!bZ && (_Z === 1 ? l > h + c * s / 2 : l < p - c * s / 2) && (bZ = !0), bZ)
+ y = !0;
+ else if (_Z === 1 ? l < h + $ce : l > p - $ce)
+ return -_Z;
+ } else if (l > h + c * (1 - n) / 2 && l < p - c * (1 - n) / 2)
+ return c2r(e);
+ }
+ return y = y || o, y && (l < h + c * s / 2 || l > p - c * s / 2) ? l > h + c / 2 ? 1 : -1 : 0;
+}
+function c2r(t) {
+ return Qp(Wn) < Qp(t) ? 1 : -1;
+}
+function h2r(t) {
+ for (var e = t.tagName + t.className + t.src + t.href + t.textContent, i = e.length, r = 0; i--; )
+ r += e.charCodeAt(i);
+ return r.toString(36);
+}
+function d2r(t) {
+ Sme.length = 0;
+ for (var e = t.getElementsByTagName("input"), i = e.length; i--; ) {
+ var r = e[i];
+ r.checked && Sme.push(r);
+ }
+}
+function Bce(t) {
+ return setTimeout(t, 0);
+}
+function WDe(t) {
+ return clearTimeout(t);
+}
+Xve && _u(document, "touchmove", function(t) {
+ (ma.active || vj) && t.cancelable && t.preventDefault();
+});
+ma.utils = {
+ on: _u,
+ off: Zl,
+ css: Zs,
+ find: u4t,
+ is: function(e, i) {
+ return !!sS(e, i, e, !1);
+ },
+ extend: Xxr,
+ throttle: c4t,
+ closest: sS,
+ toggleClass: bp,
+ clone: cBe,
+ index: Qp,
+ nextTick: Bce,
+ cancelNextTick: WDe,
+ detectDirection: p4t,
+ getChild: lz
+};
+ma.get = function(t) {
+ return t[I0];
+};
+ma.mount = function() {
+ for (var t = arguments.length, e = new Array(t), i = 0; i < t; i++)
+ e[i] = arguments[i];
+ e[0].constructor === Array && (e = e[0]), e.forEach(function(r) {
+ if (!r.prototype || !r.prototype.constructor)
+ throw "Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(r));
+ r.utils && (ma.utils = TI(TI({}, ma.utils), r.utils)), cre.mount(r);
+ });
+};
+ma.create = function(t, e) {
+ return new ma(t, e);
+};
+ma.version = Hxr;
+var tm = [], yK, qDe, YDe = !1, nSe, sSe, Cme, vK;
+function p2r() {
+ function t() {
+ this.defaults = {
+ scroll: !0,
+ forceAutoScrollFallback: !1,
+ scrollSensitivity: 30,
+ scrollSpeed: 10,
+ bubbleScroll: !0
+ };
+ for (var e in this)
+ e.charAt(0) === "_" && typeof this[e] == "function" && (this[e] = this[e].bind(this));
+ }
+ return t.prototype = {
+ dragStarted: function(i) {
+ var r = i.originalEvent;
+ this.sortable.nativeDraggable ? _u(document, "dragover", this._handleAutoScroll) : this.options.supportPointer ? _u(document, "pointermove", this._handleFallbackAutoScroll) : r.touches ? _u(document, "touchmove", this._handleFallbackAutoScroll) : _u(document, "mousemove", this._handleFallbackAutoScroll);
+ },
+ dragOverCompleted: function(i) {
+ var r = i.originalEvent;
+ !this.options.dragOverBubble && !r.rootEl && this._handleAutoScroll(r);
+ },
+ drop: function() {
+ this.sortable.nativeDraggable ? Zl(document, "dragover", this._handleAutoScroll) : (Zl(document, "pointermove", this._handleFallbackAutoScroll), Zl(document, "touchmove", this._handleFallbackAutoScroll), Zl(document, "mousemove", this._handleFallbackAutoScroll)), $ot(), Vce(), Kxr();
+ },
+ nulling: function() {
+ Cme = qDe = yK = YDe = vK = nSe = sSe = null, tm.length = 0;
+ },
+ _handleFallbackAutoScroll: function(i) {
+ this._handleAutoScroll(i, !0);
+ },
+ _handleAutoScroll: function(i, r) {
+ var n = this, s = (i.touches ? i.touches[0] : i).clientX, o = (i.touches ? i.touches[0] : i).clientY, a = document.elementFromPoint(s, o);
+ if (Cme = i, r || this.options.forceAutoScrollFallback || ure || M3 || gZ) {
+ oSe(i, this.options, a, r);
+ var l = JD(a, !0);
+ YDe && (!vK || s !== nSe || o !== sSe) && (vK && $ot(), vK = setInterval(function() {
+ var c = JD(document.elementFromPoint(s, o), !0);
+ c !== l && (l = c, Vce()), oSe(i, n.options, c, r);
+ }, 10), nSe = s, sSe = o);
+ } else {
+ if (!this.options.bubbleScroll || JD(a, !0) === QE()) {
+ Vce();
+ return;
+ }
+ oSe(i, this.options, JD(a, !1), !1);
+ }
+ }
+ }, jx(t, {
+ pluginName: "scroll",
+ initializeByDefault: !0
+ });
+}
+function Vce() {
+ tm.forEach(function(t) {
+ clearInterval(t.pid);
+ }), tm = [];
+}
+function $ot() {
+ clearInterval(vK);
+}
+var oSe = c4t(function(t, e, i, r) {
+ if (e.scroll) {
+ var n = (t.touches ? t.touches[0] : t).clientX, s = (t.touches ? t.touches[0] : t).clientY, o = e.scrollSensitivity, a = e.scrollSpeed, l = QE(), c = !1, h;
+ qDe !== i && (qDe = i, Vce(), yK = e.scroll, h = e.scrollFn, yK === !0 && (yK = JD(i, !0)));
+ var p = 0, y = yK;
+ do {
+ var v = y, x = tp(v), I = x.top, P = x.bottom, F = x.left, k = x.right, V = x.width, j = x.height, Y = void 0, X = void 0, Q = v.scrollWidth, re = v.scrollHeight, he = Zs(v), fe = v.scrollLeft, be = v.scrollTop;
+ v === l ? (Y = V < Q && (he.overflowX === "auto" || he.overflowX === "scroll" || he.overflowX === "visible"), X = j < re && (he.overflowY === "auto" || he.overflowY === "scroll" || he.overflowY === "visible")) : (Y = V < Q && (he.overflowX === "auto" || he.overflowX === "scroll"), X = j < re && (he.overflowY === "auto" || he.overflowY === "scroll"));
+ var Se = Y && (Math.abs(k - n) <= o && fe + V < Q) - (Math.abs(F - n) <= o && !!fe), Me = X && (Math.abs(P - s) <= o && be + j < re) - (Math.abs(I - s) <= o && !!be);
+ if (!tm[p])
+ for (var ke = 0; ke <= p; ke++)
+ tm[ke] || (tm[ke] = {});
+ (tm[p].vx != Se || tm[p].vy != Me || tm[p].el !== v) && (tm[p].el = v, tm[p].vx = Se, tm[p].vy = Me, clearInterval(tm[p].pid), (Se != 0 || Me != 0) && (c = !0, tm[p].pid = setInterval(function() {
+ r && this.layer === 0 && ma.active._onTouchMove(Cme);
+ var J = tm[this.layer].vy ? tm[this.layer].vy * a : 0, ce = tm[this.layer].vx ? tm[this.layer].vx * a : 0;
+ typeof h == "function" && h.call(ma.dragged.parentNode[I0], ce, J, t, Cme, tm[this.layer].el) !== "continue" || h4t(tm[this.layer].el, ce, J);
+ }.bind({
+ layer: p
+ }), 24))), p++;
+ } while (e.bubbleScroll && y !== l && (y = JD(y, !1)));
+ YDe = c;
+ }
+}, 30), y4t = function(e) {
+ var i = e.originalEvent, r = e.putSortable, n = e.dragEl, s = e.activeSortable, o = e.dispatchSortableEvent, a = e.hideGhostForTarget, l = e.unhideGhostForTarget;
+ if (i) {
+ var c = r || s;
+ a();
+ var h = i.changedTouches && i.changedTouches.length ? i.changedTouches[0] : i, p = document.elementFromPoint(h.clientX, h.clientY);
+ l(), c && !c.el.contains(p) && (o("spill"), this.onSpill({
+ dragEl: n,
+ putSortable: r
+ }));
+ }
+};
+function hBe() {
+}
+hBe.prototype = {
+ startIndex: null,
+ dragStart: function(e) {
+ var i = e.oldDraggableIndex;
+ this.startIndex = i;
+ },
+ onSpill: function(e) {
+ var i = e.dragEl, r = e.putSortable;
+ this.sortable.captureAnimationState(), r && r.captureAnimationState();
+ var n = lz(this.sortable.el, this.startIndex, this.options);
+ n ? this.sortable.el.insertBefore(i, n) : this.sortable.el.appendChild(i), this.sortable.animateAll(), r && r.animateAll();
+ },
+ drop: y4t
+};
+jx(hBe, {
+ pluginName: "revertOnSpill"
+});
+function dBe() {
+}
+dBe.prototype = {
+ onSpill: function(e) {
+ var i = e.dragEl, r = e.putSortable, n = r || this.sortable;
+ n.captureAnimationState(), i.parentNode && i.parentNode.removeChild(i), n.animateAll();
+ },
+ drop: y4t
+};
+jx(dBe, {
+ pluginName: "removeOnSpill"
+});
+var yw;
+function f2r() {
+ function t() {
+ this.defaults = {
+ swapClass: "sortable-swap-highlight"
+ };
+ }
+ return t.prototype = {
+ dragStart: function(i) {
+ var r = i.dragEl;
+ yw = r;
+ },
+ dragOverValid: function(i) {
+ var r = i.completed, n = i.target, s = i.onMove, o = i.activeSortable, a = i.changed, l = i.cancel;
+ if (o.options.swap) {
+ var c = this.sortable.el, h = this.options;
+ if (n && n !== c) {
+ var p = yw;
+ s(n) !== !1 ? (bp(n, h.swapClass, !0), yw = n) : yw = null, p && p !== yw && bp(p, h.swapClass, !1);
+ }
+ a(), r(!0), l();
+ }
+ },
+ drop: function(i) {
+ var r = i.activeSortable, n = i.putSortable, s = i.dragEl, o = n || this.sortable, a = this.options;
+ yw && bp(yw, a.swapClass, !1), yw && (a.swap || n && n.options.swap) && s !== yw && (o.captureAnimationState(), o !== r && r.captureAnimationState(), m2r(s, yw), o.animateAll(), o !== r && r.animateAll());
+ },
+ nulling: function() {
+ yw = null;
+ }
+ }, jx(t, {
+ pluginName: "swap",
+ eventProperties: function() {
+ return {
+ swapItem: yw
+ };
+ }
+ });
+}
+function m2r(t, e) {
+ var i = t.parentNode, r = e.parentNode, n, s;
+ !i || !r || i.isEqualNode(e) || r.isEqualNode(t) || (n = Qp(t), s = Qp(e), i.isEqualNode(r) && n < s && s++, i.insertBefore(e, i.children[n]), r.insertBefore(t, r.children[s]));
+}
+var Va = [], Q1 = [], Dq, C2, Fq = !1, l_ = !1, $B = !1, Kh, Lq, Pae;
+function g2r() {
+ function t(e) {
+ for (var i in this)
+ i.charAt(0) === "_" && typeof this[i] == "function" && (this[i] = this[i].bind(this));
+ e.options.supportPointer ? _u(document, "pointerup", this._deselectMultiDrag) : (_u(document, "mouseup", this._deselectMultiDrag), _u(document, "touchend", this._deselectMultiDrag)), _u(document, "keydown", this._checkKeyDown), _u(document, "keyup", this._checkKeyUp), this.defaults = {
+ selectedClass: "sortable-selected",
+ multiDragKey: null,
+ setData: function(n, s) {
+ var o = "";
+ Va.length && C2 === e ? Va.forEach(function(a, l) {
+ o += (l ? ", " : "") + a.textContent;
+ }) : o = s.textContent, n.setData("Text", o);
+ }
+ };
+ }
+ return t.prototype = {
+ multiDragKeyDown: !1,
+ isMultiDrag: !1,
+ delayStartGlobal: function(i) {
+ var r = i.dragEl;
+ Kh = r;
+ },
+ delayEnded: function() {
+ this.isMultiDrag = ~Va.indexOf(Kh);
+ },
+ setupClone: function(i) {
+ var r = i.sortable, n = i.cancel;
+ if (this.isMultiDrag) {
+ for (var s = 0; s < Va.length; s++)
+ Q1.push(cBe(Va[s])), Q1[s].sortableIndex = Va[s].sortableIndex, Q1[s].draggable = !1, Q1[s].style["will-change"] = "", bp(Q1[s], this.options.selectedClass, !1), Va[s] === Kh && bp(Q1[s], this.options.chosenClass, !1);
+ r._hideClone(), n();
+ }
+ },
+ clone: function(i) {
+ var r = i.sortable, n = i.rootEl, s = i.dispatchSortableEvent, o = i.cancel;
+ this.isMultiDrag && (this.options.removeCloneOnHide || Va.length && C2 === r && (Bot(!0, n), s("clone"), o()));
+ },
+ showClone: function(i) {
+ var r = i.cloneNowShown, n = i.rootEl, s = i.cancel;
+ this.isMultiDrag && (Bot(!1, n), Q1.forEach(function(o) {
+ Zs(o, "display", "");
+ }), r(), Pae = !1, s());
+ },
+ hideClone: function(i) {
+ var r = this;
+ i.sortable;
+ var n = i.cloneNowHidden, s = i.cancel;
+ this.isMultiDrag && (Q1.forEach(function(o) {
+ Zs(o, "display", "none"), r.options.removeCloneOnHide && o.parentNode && o.parentNode.removeChild(o);
+ }), n(), Pae = !0, s());
+ },
+ dragStartGlobal: function(i) {
+ i.sortable, !this.isMultiDrag && C2 && C2.multiDrag._deselectMultiDrag(), Va.forEach(function(r) {
+ r.sortableIndex = Qp(r);
+ }), Va = Va.sort(function(r, n) {
+ return r.sortableIndex - n.sortableIndex;
+ }), $B = !0;
+ },
+ dragStarted: function(i) {
+ var r = this, n = i.sortable;
+ if (this.isMultiDrag) {
+ if (this.options.sort && (n.captureAnimationState(), this.options.animation)) {
+ Va.forEach(function(o) {
+ o !== Kh && Zs(o, "position", "absolute");
+ });
+ var s = tp(Kh, !1, !0, !0);
+ Va.forEach(function(o) {
+ o !== Kh && Fot(o, s);
+ }), l_ = !0, Fq = !0;
+ }
+ n.animateAll(function() {
+ l_ = !1, Fq = !1, r.options.animation && Va.forEach(function(o) {
+ Z2e(o);
+ }), r.options.sort && Oae();
+ });
+ }
+ },
+ dragOver: function(i) {
+ var r = i.target, n = i.completed, s = i.cancel;
+ l_ && ~Va.indexOf(r) && (n(!1), s());
+ },
+ revert: function(i) {
+ var r = i.fromSortable, n = i.rootEl, s = i.sortable, o = i.dragRect;
+ Va.length > 1 && (Va.forEach(function(a) {
+ s.addAnimationState({
+ target: a,
+ rect: l_ ? tp(a) : o
+ }), Z2e(a), a.fromRect = o, r.removeAnimationState(a);
+ }), l_ = !1, y2r(!this.options.removeCloneOnHide, n));
+ },
+ dragOverCompleted: function(i) {
+ var r = i.sortable, n = i.isOwner, s = i.insertion, o = i.activeSortable, a = i.parentEl, l = i.putSortable, c = this.options;
+ if (s) {
+ if (n && o._hideClone(), Fq = !1, c.animation && Va.length > 1 && (l_ || !n && !o.options.sort && !l)) {
+ var h = tp(Kh, !1, !0, !0);
+ Va.forEach(function(y) {
+ y !== Kh && (Fot(y, h), a.appendChild(y));
+ }), l_ = !0;
+ }
+ if (!n)
+ if (l_ || Oae(), Va.length > 1) {
+ var p = Pae;
+ o._showClone(r), o.options.animation && !Pae && p && Q1.forEach(function(y) {
+ o.addAnimationState({
+ target: y,
+ rect: Lq
+ }), y.fromRect = Lq, y.thisAnimationDuration = null;
+ });
+ } else
+ o._showClone(r);
+ }
+ },
+ dragOverAnimationCapture: function(i) {
+ var r = i.dragRect, n = i.isOwner, s = i.activeSortable;
+ if (Va.forEach(function(a) {
+ a.thisAnimationDuration = null;
+ }), s.options.animation && !n && s.multiDrag.isMultiDrag) {
+ Lq = jx({}, r);
+ var o = z6(Kh, !0);
+ Lq.top -= o.f, Lq.left -= o.e;
+ }
+ },
+ dragOverAnimationComplete: function() {
+ l_ && (l_ = !1, Oae());
+ },
+ drop: function(i) {
+ var r = i.originalEvent, n = i.rootEl, s = i.parentEl, o = i.sortable, a = i.dispatchSortableEvent, l = i.oldIndex, c = i.putSortable, h = c || this.sortable;
+ if (r) {
+ var p = this.options, y = s.children;
+ if (!$B)
+ if (p.multiDragKey && !this.multiDragKeyDown && this._deselectMultiDrag(), bp(Kh, p.selectedClass, !~Va.indexOf(Kh)), ~Va.indexOf(Kh))
+ Va.splice(Va.indexOf(Kh), 1), Dq = null, mK({
+ sortable: o,
+ rootEl: n,
+ name: "deselect",
+ targetEl: Kh,
+ originalEvt: r
+ });
+ else {
+ if (Va.push(Kh), mK({
+ sortable: o,
+ rootEl: n,
+ name: "select",
+ targetEl: Kh,
+ originalEvt: r
+ }), r.shiftKey && Dq && o.el.contains(Dq)) {
+ var v = Qp(Dq), x = Qp(Kh);
+ if (~v && ~x && v !== x) {
+ var I, P;
+ for (x > v ? (P = v, I = x) : (P = x, I = v + 1); P < I; P++)
+ ~Va.indexOf(y[P]) || (bp(y[P], p.selectedClass, !0), Va.push(y[P]), mK({
+ sortable: o,
+ rootEl: n,
+ name: "select",
+ targetEl: y[P],
+ originalEvt: r
+ }));
+ }
+ } else
+ Dq = Kh;
+ C2 = h;
+ }
+ if ($B && this.isMultiDrag) {
+ if (l_ = !1, (s[I0].options.sort || s !== n) && Va.length > 1) {
+ var F = tp(Kh), k = Qp(Kh, ":not(." + this.options.selectedClass + ")");
+ if (!Fq && p.animation && (Kh.thisAnimationDuration = null), h.captureAnimationState(), !Fq && (p.animation && (Kh.fromRect = F, Va.forEach(function(j) {
+ if (j.thisAnimationDuration = null, j !== Kh) {
+ var Y = l_ ? tp(j) : F;
+ j.fromRect = Y, h.addAnimationState({
+ target: j,
+ rect: Y
+ });
+ }
+ })), Oae(), Va.forEach(function(j) {
+ y[k] ? s.insertBefore(j, y[k]) : s.appendChild(j), k++;
+ }), l === Qp(Kh))) {
+ var V = !1;
+ Va.forEach(function(j) {
+ if (j.sortableIndex !== Qp(j)) {
+ V = !0;
+ return;
+ }
+ }), V && a("update");
+ }
+ Va.forEach(function(j) {
+ Z2e(j);
+ }), h.animateAll();
+ }
+ C2 = h;
+ }
+ (n === s || c && c.lastPutMode !== "clone") && Q1.forEach(function(j) {
+ j.parentNode && j.parentNode.removeChild(j);
+ });
+ }
+ },
+ nullingGlobal: function() {
+ this.isMultiDrag = $B = !1, Q1.length = 0;
+ },
+ destroyGlobal: function() {
+ this._deselectMultiDrag(), Zl(document, "pointerup", this._deselectMultiDrag), Zl(document, "mouseup", this._deselectMultiDrag), Zl(document, "touchend", this._deselectMultiDrag), Zl(document, "keydown", this._checkKeyDown), Zl(document, "keyup", this._checkKeyUp);
+ },
+ _deselectMultiDrag: function(i) {
+ if (!(typeof $B < "u" && $B) && C2 === this.sortable && !(i && sS(i.target, this.options.draggable, this.sortable.el, !1)) && !(i && i.button !== 0))
+ for (; Va.length; ) {
+ var r = Va[0];
+ bp(r, this.options.selectedClass, !1), Va.shift(), mK({
+ sortable: this.sortable,
+ rootEl: this.sortable.el,
+ name: "deselect",
+ targetEl: r,
+ originalEvt: i
+ });
+ }
+ },
+ _checkKeyDown: function(i) {
+ i.key === this.options.multiDragKey && (this.multiDragKeyDown = !0);
+ },
+ _checkKeyUp: function(i) {
+ i.key === this.options.multiDragKey && (this.multiDragKeyDown = !1);
+ }
+ }, jx(t, {
+ // Static methods & properties
+ pluginName: "multiDrag",
+ utils: {
+ /**
+ * Selects the provided multi-drag item
+ * @param {HTMLElement} el The element to be selected
+ */
+ select: function(i) {
+ var r = i.parentNode[I0];
+ !r || !r.options.multiDrag || ~Va.indexOf(i) || (C2 && C2 !== r && (C2.multiDrag._deselectMultiDrag(), C2 = r), bp(i, r.options.selectedClass, !0), Va.push(i));
+ },
+ /**
+ * Deselects the provided multi-drag item
+ * @param {HTMLElement} el The element to be deselected
+ */
+ deselect: function(i) {
+ var r = i.parentNode[I0], n = Va.indexOf(i);
+ !r || !r.options.multiDrag || !~n || (bp(i, r.options.selectedClass, !1), Va.splice(n, 1));
+ }
+ },
+ eventProperties: function() {
+ var i = this, r = [], n = [];
+ return Va.forEach(function(s) {
+ r.push({
+ multiDragElement: s,
+ index: s.sortableIndex
+ });
+ var o;
+ l_ && s !== Kh ? o = -1 : l_ ? o = Qp(s, ":not(." + i.options.selectedClass + ")") : o = Qp(s), n.push({
+ multiDragElement: s,
+ index: o
+ });
+ }), {
+ items: Vxr(Va),
+ clones: [].concat(Q1),
+ oldIndicies: r,
+ newIndicies: n
+ };
+ },
+ optionListeners: {
+ multiDragKey: function(i) {
+ return i = i.toLowerCase(), i === "ctrl" ? i = "Control" : i.length > 1 && (i = i.charAt(0).toUpperCase() + i.substr(1)), i;
+ }
+ }
+ });
+}
+function y2r(t, e) {
+ Va.forEach(function(i, r) {
+ var n = e.children[i.sortableIndex + (t ? Number(r) : 0)];
+ n ? e.insertBefore(i, n) : e.appendChild(i);
+ });
+}
+function Bot(t, e) {
+ Q1.forEach(function(i, r) {
+ var n = e.children[i.sortableIndex + (t ? Number(r) : 0)];
+ n ? e.insertBefore(i, n) : e.appendChild(i);
+ });
+}
+function Oae() {
+ Va.forEach(function(t) {
+ t !== Kh && t.parentNode && t.parentNode.removeChild(t);
+ });
+}
+ma.mount(new p2r());
+ma.mount(dBe, hBe);
+const v2r = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
+ __proto__: null,
+ MultiDrag: g2r,
+ Sortable: ma,
+ Swap: f2r,
+ default: ma
+}, Symbol.toStringTag, { value: "Module" })), _2r = /* @__PURE__ */ xye(v2r);
+(function(t, e) {
+ (function(r, n) {
+ t.exports = n(lBe, _2r);
+ })(typeof self < "u" ? self : td, function(i, r) {
+ return (
+ /******/
+ function(n) {
+ var s = {};
+ function o(a) {
+ if (s[a])
+ return s[a].exports;
+ var l = s[a] = {
+ /******/
+ i: a,
+ /******/
+ l: !1,
+ /******/
+ exports: {}
+ /******/
+ };
+ return n[a].call(l.exports, l, l.exports, o), l.l = !0, l.exports;
+ }
+ return o.m = n, o.c = s, o.d = function(a, l, c) {
+ o.o(a, l) || Object.defineProperty(a, l, { enumerable: !0, get: c });
+ }, o.r = function(a) {
+ typeof Symbol < "u" && Symbol.toStringTag && Object.defineProperty(a, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(a, "__esModule", { value: !0 });
+ }, o.t = function(a, l) {
+ if (l & 1 && (a = o(a)), l & 8 || l & 4 && typeof a == "object" && a && a.__esModule)
+ return a;
+ var c = /* @__PURE__ */ Object.create(null);
+ if (o.r(c), Object.defineProperty(c, "default", { enumerable: !0, value: a }), l & 2 && typeof a != "string")
+ for (var h in a)
+ o.d(c, h, function(p) {
+ return a[p];
+ }.bind(null, h));
+ return c;
+ }, o.n = function(a) {
+ var l = a && a.__esModule ? (
+ /******/
+ function() {
+ return a.default;
+ }
+ ) : (
+ /******/
+ function() {
+ return a;
+ }
+ );
+ return o.d(l, "a", l), l;
+ }, o.o = function(a, l) {
+ return Object.prototype.hasOwnProperty.call(a, l);
+ }, o.p = "", o(o.s = "fb15");
+ }({
+ /***/
+ "00ee": (
+ /***/
+ function(n, s, o) {
+ var a = o("b622"), l = a("toStringTag"), c = {};
+ c[l] = "z", n.exports = String(c) === "[object z]";
+ }
+ ),
+ /***/
+ "0366": (
+ /***/
+ function(n, s, o) {
+ var a = o("1c0b");
+ n.exports = function(l, c, h) {
+ if (a(l), c === void 0)
+ return l;
+ switch (h) {
+ case 0:
+ return function() {
+ return l.call(c);
+ };
+ case 1:
+ return function(p) {
+ return l.call(c, p);
+ };
+ case 2:
+ return function(p, y) {
+ return l.call(c, p, y);
+ };
+ case 3:
+ return function(p, y, v) {
+ return l.call(c, p, y, v);
+ };
+ }
+ return function() {
+ return l.apply(c, arguments);
+ };
+ };
+ }
+ ),
+ /***/
+ "057f": (
+ /***/
+ function(n, s, o) {
+ var a = o("fc6a"), l = o("241c").f, c = {}.toString, h = typeof window == "object" && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [], p = function(y) {
+ try {
+ return l(y);
+ } catch {
+ return h.slice();
+ }
+ };
+ n.exports.f = function(v) {
+ return h && c.call(v) == "[object Window]" ? p(v) : l(a(v));
+ };
+ }
+ ),
+ /***/
+ "06cf": (
+ /***/
+ function(n, s, o) {
+ var a = o("83ab"), l = o("d1e7"), c = o("5c6c"), h = o("fc6a"), p = o("c04e"), y = o("5135"), v = o("0cfb"), x = Object.getOwnPropertyDescriptor;
+ s.f = a ? x : function(P, F) {
+ if (P = h(P), F = p(F, !0), v)
+ try {
+ return x(P, F);
+ } catch {
+ }
+ if (y(P, F))
+ return c(!l.f.call(P, F), P[F]);
+ };
+ }
+ ),
+ /***/
+ "0cfb": (
+ /***/
+ function(n, s, o) {
+ var a = o("83ab"), l = o("d039"), c = o("cc12");
+ n.exports = !a && !l(function() {
+ return Object.defineProperty(c("div"), "a", {
+ get: function() {
+ return 7;
+ }
+ }).a != 7;
+ });
+ }
+ ),
+ /***/
+ "13d5": (
+ /***/
+ function(n, s, o) {
+ var a = o("23e7"), l = o("d58f").left, c = o("a640"), h = o("ae40"), p = c("reduce"), y = h("reduce", { 1: 0 });
+ a({ target: "Array", proto: !0, forced: !p || !y }, {
+ reduce: function(x) {
+ return l(this, x, arguments.length, arguments.length > 1 ? arguments[1] : void 0);
+ }
+ });
+ }
+ ),
+ /***/
+ "14c3": (
+ /***/
+ function(n, s, o) {
+ var a = o("c6b6"), l = o("9263");
+ n.exports = function(c, h) {
+ var p = c.exec;
+ if (typeof p == "function") {
+ var y = p.call(c, h);
+ if (typeof y != "object")
+ throw TypeError("RegExp exec method returned something other than an Object or null");
+ return y;
+ }
+ if (a(c) !== "RegExp")
+ throw TypeError("RegExp#exec called on incompatible receiver");
+ return l.call(c, h);
+ };
+ }
+ ),
+ /***/
+ "159b": (
+ /***/
+ function(n, s, o) {
+ var a = o("da84"), l = o("fdbc"), c = o("17c2"), h = o("9112");
+ for (var p in l) {
+ var y = a[p], v = y && y.prototype;
+ if (v && v.forEach !== c)
+ try {
+ h(v, "forEach", c);
+ } catch {
+ v.forEach = c;
+ }
+ }
+ }
+ ),
+ /***/
+ "17c2": (
+ /***/
+ function(n, s, o) {
+ var a = o("b727").forEach, l = o("a640"), c = o("ae40"), h = l("forEach"), p = c("forEach");
+ n.exports = !h || !p ? function(v) {
+ return a(this, v, arguments.length > 1 ? arguments[1] : void 0);
+ } : [].forEach;
+ }
+ ),
+ /***/
+ "1be4": (
+ /***/
+ function(n, s, o) {
+ var a = o("d066");
+ n.exports = a("document", "documentElement");
+ }
+ ),
+ /***/
+ "1c0b": (
+ /***/
+ function(n, s) {
+ n.exports = function(o) {
+ if (typeof o != "function")
+ throw TypeError(String(o) + " is not a function");
+ return o;
+ };
+ }
+ ),
+ /***/
+ "1c7e": (
+ /***/
+ function(n, s, o) {
+ var a = o("b622"), l = a("iterator"), c = !1;
+ try {
+ var h = 0, p = {
+ next: function() {
+ return { done: !!h++ };
+ },
+ return: function() {
+ c = !0;
+ }
+ };
+ p[l] = function() {
+ return this;
+ }, Array.from(p, function() {
+ throw 2;
+ });
+ } catch {
+ }
+ n.exports = function(y, v) {
+ if (!v && !c)
+ return !1;
+ var x = !1;
+ try {
+ var I = {};
+ I[l] = function() {
+ return {
+ next: function() {
+ return { done: x = !0 };
+ }
+ };
+ }, y(I);
+ } catch {
+ }
+ return x;
+ };
+ }
+ ),
+ /***/
+ "1d80": (
+ /***/
+ function(n, s) {
+ n.exports = function(o) {
+ if (o == null)
+ throw TypeError("Can't call method on " + o);
+ return o;
+ };
+ }
+ ),
+ /***/
+ "1dde": (
+ /***/
+ function(n, s, o) {
+ var a = o("d039"), l = o("b622"), c = o("2d00"), h = l("species");
+ n.exports = function(p) {
+ return c >= 51 || !a(function() {
+ var y = [], v = y.constructor = {};
+ return v[h] = function() {
+ return { foo: 1 };
+ }, y[p](Boolean).foo !== 1;
+ });
+ };
+ }
+ ),
+ /***/
+ "23cb": (
+ /***/
+ function(n, s, o) {
+ var a = o("a691"), l = Math.max, c = Math.min;
+ n.exports = function(h, p) {
+ var y = a(h);
+ return y < 0 ? l(y + p, 0) : c(y, p);
+ };
+ }
+ ),
+ /***/
+ "23e7": (
+ /***/
+ function(n, s, o) {
+ var a = o("da84"), l = o("06cf").f, c = o("9112"), h = o("6eeb"), p = o("ce4e"), y = o("e893"), v = o("94ca");
+ n.exports = function(x, I) {
+ var P = x.target, F = x.global, k = x.stat, V, j, Y, X, Q, re;
+ if (F ? j = a : k ? j = a[P] || p(P, {}) : j = (a[P] || {}).prototype, j)
+ for (Y in I) {
+ if (Q = I[Y], x.noTargetGet ? (re = l(j, Y), X = re && re.value) : X = j[Y], V = v(F ? Y : P + (k ? "." : "#") + Y, x.forced), !V && X !== void 0) {
+ if (typeof Q == typeof X)
+ continue;
+ y(Q, X);
+ }
+ (x.sham || X && X.sham) && c(Q, "sham", !0), h(j, Y, Q, x);
+ }
+ };
+ }
+ ),
+ /***/
+ "241c": (
+ /***/
+ function(n, s, o) {
+ var a = o("ca84"), l = o("7839"), c = l.concat("length", "prototype");
+ s.f = Object.getOwnPropertyNames || function(p) {
+ return a(p, c);
+ };
+ }
+ ),
+ /***/
+ "25f0": (
+ /***/
+ function(n, s, o) {
+ var a = o("6eeb"), l = o("825a"), c = o("d039"), h = o("ad6d"), p = "toString", y = RegExp.prototype, v = y[p], x = c(function() {
+ return v.call({ source: "a", flags: "b" }) != "/a/b";
+ }), I = v.name != p;
+ (x || I) && a(RegExp.prototype, p, function() {
+ var F = l(this), k = String(F.source), V = F.flags, j = String(V === void 0 && F instanceof RegExp && !("flags" in y) ? h.call(F) : V);
+ return "/" + k + "/" + j;
+ }, { unsafe: !0 });
+ }
+ ),
+ /***/
+ "2ca0": (
+ /***/
+ function(n, s, o) {
+ var a = o("23e7"), l = o("06cf").f, c = o("50c4"), h = o("5a34"), p = o("1d80"), y = o("ab13"), v = o("c430"), x = "".startsWith, I = Math.min, P = y("startsWith"), F = !v && !P && !!function() {
+ var k = l(String.prototype, "startsWith");
+ return k && !k.writable;
+ }();
+ a({ target: "String", proto: !0, forced: !F && !P }, {
+ startsWith: function(V) {
+ var j = String(p(this));
+ h(V);
+ var Y = c(I(arguments.length > 1 ? arguments[1] : void 0, j.length)), X = String(V);
+ return x ? x.call(j, X, Y) : j.slice(Y, Y + X.length) === X;
+ }
+ });
+ }
+ ),
+ /***/
+ "2d00": (
+ /***/
+ function(n, s, o) {
+ var a = o("da84"), l = o("342f"), c = a.process, h = c && c.versions, p = h && h.v8, y, v;
+ p ? (y = p.split("."), v = y[0] + y[1]) : l && (y = l.match(/Edge\/(\d+)/), (!y || y[1] >= 74) && (y = l.match(/Chrome\/(\d+)/), y && (v = y[1]))), n.exports = v && +v;
+ }
+ ),
+ /***/
+ "342f": (
+ /***/
+ function(n, s, o) {
+ var a = o("d066");
+ n.exports = a("navigator", "userAgent") || "";
+ }
+ ),
+ /***/
+ "35a1": (
+ /***/
+ function(n, s, o) {
+ var a = o("f5df"), l = o("3f8c"), c = o("b622"), h = c("iterator");
+ n.exports = function(p) {
+ if (p != null)
+ return p[h] || p["@@iterator"] || l[a(p)];
+ };
+ }
+ ),
+ /***/
+ "37e8": (
+ /***/
+ function(n, s, o) {
+ var a = o("83ab"), l = o("9bf2"), c = o("825a"), h = o("df75");
+ n.exports = a ? Object.defineProperties : function(y, v) {
+ c(y);
+ for (var x = h(v), I = x.length, P = 0, F; I > P; )
+ l.f(y, F = x[P++], v[F]);
+ return y;
+ };
+ }
+ ),
+ /***/
+ "3bbe": (
+ /***/
+ function(n, s, o) {
+ var a = o("861d");
+ n.exports = function(l) {
+ if (!a(l) && l !== null)
+ throw TypeError("Can't set " + String(l) + " as a prototype");
+ return l;
+ };
+ }
+ ),
+ /***/
+ "3ca3": (
+ /***/
+ function(n, s, o) {
+ var a = o("6547").charAt, l = o("69f3"), c = o("7dd0"), h = "String Iterator", p = l.set, y = l.getterFor(h);
+ c(String, "String", function(v) {
+ p(this, {
+ type: h,
+ string: String(v),
+ index: 0
+ });
+ }, function() {
+ var x = y(this), I = x.string, P = x.index, F;
+ return P >= I.length ? { value: void 0, done: !0 } : (F = a(I, P), x.index += F.length, { value: F, done: !1 });
+ });
+ }
+ ),
+ /***/
+ "3f8c": (
+ /***/
+ function(n, s) {
+ n.exports = {};
+ }
+ ),
+ /***/
+ 4160: (
+ /***/
+ function(n, s, o) {
+ var a = o("23e7"), l = o("17c2");
+ a({ target: "Array", proto: !0, forced: [].forEach != l }, {
+ forEach: l
+ });
+ }
+ ),
+ /***/
+ "428f": (
+ /***/
+ function(n, s, o) {
+ var a = o("da84");
+ n.exports = a;
+ }
+ ),
+ /***/
+ "44ad": (
+ /***/
+ function(n, s, o) {
+ var a = o("d039"), l = o("c6b6"), c = "".split;
+ n.exports = a(function() {
+ return !Object("z").propertyIsEnumerable(0);
+ }) ? function(h) {
+ return l(h) == "String" ? c.call(h, "") : Object(h);
+ } : Object;
+ }
+ ),
+ /***/
+ "44d2": (
+ /***/
+ function(n, s, o) {
+ var a = o("b622"), l = o("7c73"), c = o("9bf2"), h = a("unscopables"), p = Array.prototype;
+ p[h] == null && c.f(p, h, {
+ configurable: !0,
+ value: l(null)
+ }), n.exports = function(y) {
+ p[h][y] = !0;
+ };
+ }
+ ),
+ /***/
+ "44e7": (
+ /***/
+ function(n, s, o) {
+ var a = o("861d"), l = o("c6b6"), c = o("b622"), h = c("match");
+ n.exports = function(p) {
+ var y;
+ return a(p) && ((y = p[h]) !== void 0 ? !!y : l(p) == "RegExp");
+ };
+ }
+ ),
+ /***/
+ 4930: (
+ /***/
+ function(n, s, o) {
+ var a = o("d039");
+ n.exports = !!Object.getOwnPropertySymbols && !a(function() {
+ return !String(Symbol());
+ });
+ }
+ ),
+ /***/
+ "4d64": (
+ /***/
+ function(n, s, o) {
+ var a = o("fc6a"), l = o("50c4"), c = o("23cb"), h = function(p) {
+ return function(y, v, x) {
+ var I = a(y), P = l(I.length), F = c(x, P), k;
+ if (p && v != v) {
+ for (; P > F; )
+ if (k = I[F++], k != k)
+ return !0;
+ } else
+ for (; P > F; F++)
+ if ((p || F in I) && I[F] === v)
+ return p || F || 0;
+ return !p && -1;
+ };
+ };
+ n.exports = {
+ // `Array.prototype.includes` method
+ // https://tc39.github.io/ecma262/#sec-array.prototype.includes
+ includes: h(!0),
+ // `Array.prototype.indexOf` method
+ // https://tc39.github.io/ecma262/#sec-array.prototype.indexof
+ indexOf: h(!1)
+ };
+ }
+ ),
+ /***/
+ "4de4": (
+ /***/
+ function(n, s, o) {
+ var a = o("23e7"), l = o("b727").filter, c = o("1dde"), h = o("ae40"), p = c("filter"), y = h("filter");
+ a({ target: "Array", proto: !0, forced: !p || !y }, {
+ filter: function(x) {
+ return l(this, x, arguments.length > 1 ? arguments[1] : void 0);
+ }
+ });
+ }
+ ),
+ /***/
+ "4df4": (
+ /***/
+ function(n, s, o) {
+ var a = o("0366"), l = o("7b0b"), c = o("9bdd"), h = o("e95a"), p = o("50c4"), y = o("8418"), v = o("35a1");
+ n.exports = function(I) {
+ var P = l(I), F = typeof this == "function" ? this : Array, k = arguments.length, V = k > 1 ? arguments[1] : void 0, j = V !== void 0, Y = v(P), X = 0, Q, re, he, fe, be, Se;
+ if (j && (V = a(V, k > 2 ? arguments[2] : void 0, 2)), Y != null && !(F == Array && h(Y)))
+ for (fe = Y.call(P), be = fe.next, re = new F(); !(he = be.call(fe)).done; X++)
+ Se = j ? c(fe, V, [he.value, X], !0) : he.value, y(re, X, Se);
+ else
+ for (Q = p(P.length), re = new F(Q); Q > X; X++)
+ Se = j ? V(P[X], X) : P[X], y(re, X, Se);
+ return re.length = X, re;
+ };
+ }
+ ),
+ /***/
+ "4fad": (
+ /***/
+ function(n, s, o) {
+ var a = o("23e7"), l = o("6f53").entries;
+ a({ target: "Object", stat: !0 }, {
+ entries: function(h) {
+ return l(h);
+ }
+ });
+ }
+ ),
+ /***/
+ "50c4": (
+ /***/
+ function(n, s, o) {
+ var a = o("a691"), l = Math.min;
+ n.exports = function(c) {
+ return c > 0 ? l(a(c), 9007199254740991) : 0;
+ };
+ }
+ ),
+ /***/
+ 5135: (
+ /***/
+ function(n, s) {
+ var o = {}.hasOwnProperty;
+ n.exports = function(a, l) {
+ return o.call(a, l);
+ };
+ }
+ ),
+ /***/
+ 5319: (
+ /***/
+ function(n, s, o) {
+ var a = o("d784"), l = o("825a"), c = o("7b0b"), h = o("50c4"), p = o("a691"), y = o("1d80"), v = o("8aa5"), x = o("14c3"), I = Math.max, P = Math.min, F = Math.floor, k = /\$([$&'`]|\d\d?|<[^>]*>)/g, V = /\$([$&'`]|\d\d?)/g, j = function(Y) {
+ return Y === void 0 ? Y : String(Y);
+ };
+ a("replace", 2, function(Y, X, Q, re) {
+ var he = re.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE, fe = re.REPLACE_KEEPS_$0, be = he ? "$" : "$0";
+ return [
+ // `String.prototype.replace` method
+ // https://tc39.github.io/ecma262/#sec-string.prototype.replace
+ function(ke, J) {
+ var ce = y(this), xe = ke?.[Y];
+ return xe !== void 0 ? xe.call(ke, ce, J) : X.call(String(ce), ke, J);
+ },
+ // `RegExp.prototype[@@replace]` method
+ // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
+ function(Me, ke) {
+ if (!he && fe || typeof ke == "string" && ke.indexOf(be) === -1) {
+ var J = Q(X, Me, this, ke);
+ if (J.done)
+ return J.value;
+ }
+ var ce = l(Me), xe = String(this), Pe = typeof ke == "function";
+ Pe || (ke = String(ke));
+ var Oe = ce.global;
+ if (Oe) {
+ var Re = ce.unicode;
+ ce.lastIndex = 0;
+ }
+ for (var Ge = []; ; ) {
+ var je = x(ce, xe);
+ if (je === null || (Ge.push(je), !Oe))
+ break;
+ var et = String(je[0]);
+ et === "" && (ce.lastIndex = v(xe, h(ce.lastIndex), Re));
+ }
+ for (var Qe = "", tt = 0, ft = 0; ft < Ge.length; ft++) {
+ je = Ge[ft];
+ for (var Mt = String(je[0]), kt = I(P(p(je.index), xe.length), 0), Tt = [], It = 1; It < je.length; It++)
+ Tt.push(j(je[It]));
+ var Nt = je.groups;
+ if (Pe) {
+ var nt = [Mt].concat(Tt, kt, xe);
+ Nt !== void 0 && nt.push(Nt);
+ var Ee = String(ke.apply(void 0, nt));
+ } else
+ Ee = Se(Mt, xe, kt, Tt, Nt, ke);
+ kt >= tt && (Qe += xe.slice(tt, kt) + Ee, tt = kt + Mt.length);
+ }
+ return Qe + xe.slice(tt);
+ }
+ ];
+ function Se(Me, ke, J, ce, xe, Pe) {
+ var Oe = J + Me.length, Re = ce.length, Ge = V;
+ return xe !== void 0 && (xe = c(xe), Ge = k), X.call(Pe, Ge, function(je, et) {
+ var Qe;
+ switch (et.charAt(0)) {
+ case "$":
+ return "$";
+ case "&":
+ return Me;
+ case "`":
+ return ke.slice(0, J);
+ case "'":
+ return ke.slice(Oe);
+ case "<":
+ Qe = xe[et.slice(1, -1)];
+ break;
+ default:
+ var tt = +et;
+ if (tt === 0)
+ return je;
+ if (tt > Re) {
+ var ft = F(tt / 10);
+ return ft === 0 ? je : ft <= Re ? ce[ft - 1] === void 0 ? et.charAt(1) : ce[ft - 1] + et.charAt(1) : je;
+ }
+ Qe = ce[tt - 1];
+ }
+ return Qe === void 0 ? "" : Qe;
+ });
+ }
+ });
+ }
+ ),
+ /***/
+ 5692: (
+ /***/
+ function(n, s, o) {
+ var a = o("c430"), l = o("c6cd");
+ (n.exports = function(c, h) {
+ return l[c] || (l[c] = h !== void 0 ? h : {});
+ })("versions", []).push({
+ version: "3.6.5",
+ mode: a ? "pure" : "global",
+ copyright: "© 2020 Denis Pushkarev (zloirock.ru)"
+ });
+ }
+ ),
+ /***/
+ "56ef": (
+ /***/
+ function(n, s, o) {
+ var a = o("d066"), l = o("241c"), c = o("7418"), h = o("825a");
+ n.exports = a("Reflect", "ownKeys") || function(y) {
+ var v = l.f(h(y)), x = c.f;
+ return x ? v.concat(x(y)) : v;
+ };
+ }
+ ),
+ /***/
+ "5a34": (
+ /***/
+ function(n, s, o) {
+ var a = o("44e7");
+ n.exports = function(l) {
+ if (a(l))
+ throw TypeError("The method doesn't accept regular expressions");
+ return l;
+ };
+ }
+ ),
+ /***/
+ "5c6c": (
+ /***/
+ function(n, s) {
+ n.exports = function(o, a) {
+ return {
+ enumerable: !(o & 1),
+ configurable: !(o & 2),
+ writable: !(o & 4),
+ value: a
+ };
+ };
+ }
+ ),
+ /***/
+ "5db7": (
+ /***/
+ function(n, s, o) {
+ var a = o("23e7"), l = o("a2bf"), c = o("7b0b"), h = o("50c4"), p = o("1c0b"), y = o("65f0");
+ a({ target: "Array", proto: !0 }, {
+ flatMap: function(x) {
+ var I = c(this), P = h(I.length), F;
+ return p(x), F = y(I, 0), F.length = l(F, I, I, P, 0, 1, x, arguments.length > 1 ? arguments[1] : void 0), F;
+ }
+ });
+ }
+ ),
+ /***/
+ 6547: (
+ /***/
+ function(n, s, o) {
+ var a = o("a691"), l = o("1d80"), c = function(h) {
+ return function(p, y) {
+ var v = String(l(p)), x = a(y), I = v.length, P, F;
+ return x < 0 || x >= I ? h ? "" : void 0 : (P = v.charCodeAt(x), P < 55296 || P > 56319 || x + 1 === I || (F = v.charCodeAt(x + 1)) < 56320 || F > 57343 ? h ? v.charAt(x) : P : h ? v.slice(x, x + 2) : (P - 55296 << 10) + (F - 56320) + 65536);
+ };
+ };
+ n.exports = {
+ // `String.prototype.codePointAt` method
+ // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat
+ codeAt: c(!1),
+ // `String.prototype.at` method
+ // https://github.com/mathiasbynens/String.prototype.at
+ charAt: c(!0)
+ };
+ }
+ ),
+ /***/
+ "65f0": (
+ /***/
+ function(n, s, o) {
+ var a = o("861d"), l = o("e8b5"), c = o("b622"), h = c("species");
+ n.exports = function(p, y) {
+ var v;
+ return l(p) && (v = p.constructor, typeof v == "function" && (v === Array || l(v.prototype)) ? v = void 0 : a(v) && (v = v[h], v === null && (v = void 0))), new (v === void 0 ? Array : v)(y === 0 ? 0 : y);
+ };
+ }
+ ),
+ /***/
+ "69f3": (
+ /***/
+ function(n, s, o) {
+ var a = o("7f9a"), l = o("da84"), c = o("861d"), h = o("9112"), p = o("5135"), y = o("f772"), v = o("d012"), x = l.WeakMap, I, P, F, k = function(he) {
+ return F(he) ? P(he) : I(he, {});
+ }, V = function(he) {
+ return function(fe) {
+ var be;
+ if (!c(fe) || (be = P(fe)).type !== he)
+ throw TypeError("Incompatible receiver, " + he + " required");
+ return be;
+ };
+ };
+ if (a) {
+ var j = new x(), Y = j.get, X = j.has, Q = j.set;
+ I = function(he, fe) {
+ return Q.call(j, he, fe), fe;
+ }, P = function(he) {
+ return Y.call(j, he) || {};
+ }, F = function(he) {
+ return X.call(j, he);
+ };
+ } else {
+ var re = y("state");
+ v[re] = !0, I = function(he, fe) {
+ return h(he, re, fe), fe;
+ }, P = function(he) {
+ return p(he, re) ? he[re] : {};
+ }, F = function(he) {
+ return p(he, re);
+ };
+ }
+ n.exports = {
+ set: I,
+ get: P,
+ has: F,
+ enforce: k,
+ getterFor: V
+ };
+ }
+ ),
+ /***/
+ "6eeb": (
+ /***/
+ function(n, s, o) {
+ var a = o("da84"), l = o("9112"), c = o("5135"), h = o("ce4e"), p = o("8925"), y = o("69f3"), v = y.get, x = y.enforce, I = String(String).split("String");
+ (n.exports = function(P, F, k, V) {
+ var j = V ? !!V.unsafe : !1, Y = V ? !!V.enumerable : !1, X = V ? !!V.noTargetGet : !1;
+ if (typeof k == "function" && (typeof F == "string" && !c(k, "name") && l(k, "name", F), x(k).source = I.join(typeof F == "string" ? F : "")), P === a) {
+ Y ? P[F] = k : h(F, k);
+ return;
+ } else
+ j ? !X && P[F] && (Y = !0) : delete P[F];
+ Y ? P[F] = k : l(P, F, k);
+ })(Function.prototype, "toString", function() {
+ return typeof this == "function" && v(this).source || p(this);
+ });
+ }
+ ),
+ /***/
+ "6f53": (
+ /***/
+ function(n, s, o) {
+ var a = o("83ab"), l = o("df75"), c = o("fc6a"), h = o("d1e7").f, p = function(y) {
+ return function(v) {
+ for (var x = c(v), I = l(x), P = I.length, F = 0, k = [], V; P > F; )
+ V = I[F++], (!a || h.call(x, V)) && k.push(y ? [V, x[V]] : x[V]);
+ return k;
+ };
+ };
+ n.exports = {
+ // `Object.entries` method
+ // https://tc39.github.io/ecma262/#sec-object.entries
+ entries: p(!0),
+ // `Object.values` method
+ // https://tc39.github.io/ecma262/#sec-object.values
+ values: p(!1)
+ };
+ }
+ ),
+ /***/
+ "73d9": (
+ /***/
+ function(n, s, o) {
+ var a = o("44d2");
+ a("flatMap");
+ }
+ ),
+ /***/
+ 7418: (
+ /***/
+ function(n, s) {
+ s.f = Object.getOwnPropertySymbols;
+ }
+ ),
+ /***/
+ "746f": (
+ /***/
+ function(n, s, o) {
+ var a = o("428f"), l = o("5135"), c = o("e538"), h = o("9bf2").f;
+ n.exports = function(p) {
+ var y = a.Symbol || (a.Symbol = {});
+ l(y, p) || h(y, p, {
+ value: c.f(p)
+ });
+ };
+ }
+ ),
+ /***/
+ 7839: (
+ /***/
+ function(n, s) {
+ n.exports = [
+ "constructor",
+ "hasOwnProperty",
+ "isPrototypeOf",
+ "propertyIsEnumerable",
+ "toLocaleString",
+ "toString",
+ "valueOf"
+ ];
+ }
+ ),
+ /***/
+ "7b0b": (
+ /***/
+ function(n, s, o) {
+ var a = o("1d80");
+ n.exports = function(l) {
+ return Object(a(l));
+ };
+ }
+ ),
+ /***/
+ "7c73": (
+ /***/
+ function(n, s, o) {
+ var a = o("825a"), l = o("37e8"), c = o("7839"), h = o("d012"), p = o("1be4"), y = o("cc12"), v = o("f772"), x = ">", I = "<", P = "prototype", F = "script", k = v("IE_PROTO"), V = function() {
+ }, j = function(he) {
+ return I + F + x + he + I + "/" + F + x;
+ }, Y = function(he) {
+ he.write(j("")), he.close();
+ var fe = he.parentWindow.Object;
+ return he = null, fe;
+ }, X = function() {
+ var he = y("iframe"), fe = "java" + F + ":", be;
+ return he.style.display = "none", p.appendChild(he), he.src = String(fe), be = he.contentWindow.document, be.open(), be.write(j("document.F=Object")), be.close(), be.F;
+ }, Q, re = function() {
+ try {
+ Q = document.domain && new ActiveXObject("htmlfile");
+ } catch {
+ }
+ re = Q ? Y(Q) : X();
+ for (var he = c.length; he--; )
+ delete re[P][c[he]];
+ return re();
+ };
+ h[k] = !0, n.exports = Object.create || function(fe, be) {
+ var Se;
+ return fe !== null ? (V[P] = a(fe), Se = new V(), V[P] = null, Se[k] = fe) : Se = re(), be === void 0 ? Se : l(Se, be);
+ };
+ }
+ ),
+ /***/
+ "7dd0": (
+ /***/
+ function(n, s, o) {
+ var a = o("23e7"), l = o("9ed3"), c = o("e163"), h = o("d2bb"), p = o("d44e"), y = o("9112"), v = o("6eeb"), x = o("b622"), I = o("c430"), P = o("3f8c"), F = o("ae93"), k = F.IteratorPrototype, V = F.BUGGY_SAFARI_ITERATORS, j = x("iterator"), Y = "keys", X = "values", Q = "entries", re = function() {
+ return this;
+ };
+ n.exports = function(he, fe, be, Se, Me, ke, J) {
+ l(be, fe, Se);
+ var ce = function(ft) {
+ if (ft === Me && Ge)
+ return Ge;
+ if (!V && ft in Oe)
+ return Oe[ft];
+ switch (ft) {
+ case Y:
+ return function() {
+ return new be(this, ft);
+ };
+ case X:
+ return function() {
+ return new be(this, ft);
+ };
+ case Q:
+ return function() {
+ return new be(this, ft);
+ };
+ }
+ return function() {
+ return new be(this);
+ };
+ }, xe = fe + " Iterator", Pe = !1, Oe = he.prototype, Re = Oe[j] || Oe["@@iterator"] || Me && Oe[Me], Ge = !V && Re || ce(Me), je = fe == "Array" && Oe.entries || Re, et, Qe, tt;
+ if (je && (et = c(je.call(new he())), k !== Object.prototype && et.next && (!I && c(et) !== k && (h ? h(et, k) : typeof et[j] != "function" && y(et, j, re)), p(et, xe, !0, !0), I && (P[xe] = re))), Me == X && Re && Re.name !== X && (Pe = !0, Ge = function() {
+ return Re.call(this);
+ }), (!I || J) && Oe[j] !== Ge && y(Oe, j, Ge), P[fe] = Ge, Me)
+ if (Qe = {
+ values: ce(X),
+ keys: ke ? Ge : ce(Y),
+ entries: ce(Q)
+ }, J)
+ for (tt in Qe)
+ (V || Pe || !(tt in Oe)) && v(Oe, tt, Qe[tt]);
+ else
+ a({ target: fe, proto: !0, forced: V || Pe }, Qe);
+ return Qe;
+ };
+ }
+ ),
+ /***/
+ "7f9a": (
+ /***/
+ function(n, s, o) {
+ var a = o("da84"), l = o("8925"), c = a.WeakMap;
+ n.exports = typeof c == "function" && /native code/.test(l(c));
+ }
+ ),
+ /***/
+ "825a": (
+ /***/
+ function(n, s, o) {
+ var a = o("861d");
+ n.exports = function(l) {
+ if (!a(l))
+ throw TypeError(String(l) + " is not an object");
+ return l;
+ };
+ }
+ ),
+ /***/
+ "83ab": (
+ /***/
+ function(n, s, o) {
+ var a = o("d039");
+ n.exports = !a(function() {
+ return Object.defineProperty({}, 1, { get: function() {
+ return 7;
+ } })[1] != 7;
+ });
+ }
+ ),
+ /***/
+ 8418: (
+ /***/
+ function(n, s, o) {
+ var a = o("c04e"), l = o("9bf2"), c = o("5c6c");
+ n.exports = function(h, p, y) {
+ var v = a(p);
+ v in h ? l.f(h, v, c(0, y)) : h[v] = y;
+ };
+ }
+ ),
+ /***/
+ "861d": (
+ /***/
+ function(n, s) {
+ n.exports = function(o) {
+ return typeof o == "object" ? o !== null : typeof o == "function";
+ };
+ }
+ ),
+ /***/
+ 8875: (
+ /***/
+ function(n, s, o) {
+ var a, l, c;
+ (function(h, p) {
+ l = [], a = p, c = typeof a == "function" ? a.apply(s, l) : a, c !== void 0 && (n.exports = c);
+ })(typeof self < "u" ? self : this, function() {
+ function h() {
+ var p = Object.getOwnPropertyDescriptor(document, "currentScript");
+ if (!p && "currentScript" in document && document.currentScript || p && p.get !== h && document.currentScript)
+ return document.currentScript;
+ try {
+ throw new Error();
+ } catch (Q) {
+ var y = /.*at [^(]*\((.*):(.+):(.+)\)$/ig, v = /@([^@]*):(\d+):(\d+)\s*$/ig, x = y.exec(Q.stack) || v.exec(Q.stack), I = x && x[1] || !1, P = x && x[2] || !1, F = document.location.href.replace(document.location.hash, ""), k, V, j, Y = document.getElementsByTagName("script");
+ I === F && (k = document.documentElement.outerHTML, V = new RegExp("(?:[^\\n]+?\\n){0," + (P - 2) + "}[^<]*