@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
1,590 lines • 160 kB
JavaScript
var Rt = Object.defineProperty;
var Dt = (e, t, r) => t in e ? Rt(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
var dt = (e, t, r) => Dt(e, typeof t != "symbol" ? t + "" : t, r);
import { ref as A, watch as me, computed as G, createVNode as M, resolveComponent as lt, isVNode as pt, nextTick as Ct, inject as xt, Fragment as ct, createTextVNode as Xe, withDirectives as It, vModelCheckbox as Mt, defineComponent as Ot, reactive as Nt, createApp as Pt, onUnmounted as Ht, onMounted as Vt, Transition as Wt, mergeProps as At } from "vue";
import Lt from "../popover/index.esm.js";
import { useI18n as Le } from "vue-i18n";
import { useCommonUtils as at, useArrayProcessor as yt, useGuid as Bt, useNumberFormat as kt, resolveField as Pe, useDateFormat as jt, setFieldValue as ht } from "../common/index.esm.js";
import { F_MODAL_SERVICE_TOKEN as $t } from "../modal/index.esm.js";
import { cloneDeep as Tt, isUndefined as mt, throttle as zt } from "lodash-es";
import Gt from "../transfer/index.esm.js";
import Ut, { FTabPage as Kt } from "../tabs/index.esm.js";
import { FCheckbox as gt } from "../checkbox/index.esm.js";
import { FFilterBar as Yt } from "../filter-bar/index.esm.js";
import qt from "../pagination/index.esm.js";
import wt from "../button/index.esm.js";
import bt from "../list-view/index.esm.js";
import Xt from "../date-picker/index.esm.js";
import Jt from "../number-spinner/index.esm.js";
import { FSearchBox as Qt } from "../search-box/index.esm.js";
import { FTags as Zt } from "../tags/index.esm.js";
import { LocaleService as en } from "../locale/index.esm.js";
import { useCondition as tn, CompareType as $e, ValueType as st, TextValue as ft, RadioGroupValue as nn, NumberSpinnerValue as rn, NumberRangeValue as on, MonthRangeValue as ln, MonthPickerValue as an, DateRangeValue as St, DateTimePickerValue as sn, DatePickerValue as un, ComboLookupValue as cn, ComboListValue as dn, CheckBoxValue as fn } from "../condition/index.esm.js";
import { FDynamicFormInput as vn } from "../dynamic-form/index.esm.js";
var Fe = /* @__PURE__ */ ((e) => (e[e.readonly = 0] = "readonly", e[e.editable = 1] = "editable", e[e.editing = 2] = "editing", e))(Fe || {}), Ge = /* @__PURE__ */ ((e) => (e[e.initial = 0] = "initial", e[e.editing = 1] = "editing", e))(Ge || {}), tt = /* @__PURE__ */ ((e) => (e[e.data = 0] = "data", e[e.group = 1] = "group", e[e.summary = 2] = "summary", e))(tt || {});
const Ir = {
/** 显示行号 */
enable: { type: Boolean, default: !1 },
/** 行号列表头标题 */
heading: { type: String, default: "序号" },
/** 行号宽度,默认为 36px */
width: { type: Number, default: 36 }
}, Mr = {
/** 启用分页 */
enable: { type: Boolean, default: !1 },
/** 当前页码 */
index: { type: Number, default: 1 },
/** 分页交互模式 */
mode: { type: String, default: "server" },
/** 显示页码输入框 */
showGoto: { type: Boolean, default: !1 },
/** 显示页码 */
showIndex: { type: Boolean, default: !0 },
/** 显示每页记录数 */
showLimits: { type: Boolean, default: !1 },
/** 显示分页汇总信息 */
showPageInfo: { type: Boolean, default: !0 },
/** 默认每页记录数 */
size: { type: Number, default: 20 },
/** 可选择的没有记录数据 */
sizeLimits: { type: Array, default: [10, 20, 30, 50, 100] },
/** 总记录数 */
total: { type: Number, default: 0 },
/** 禁用分页 */
disabled: { type: Boolean, default: !1 }
};
var V = /* @__PURE__ */ ((e) => (e[e.none = 0] = "none", e[e.filterable = 1] = "filterable", e[e.sortable = 2] = "sortable", e[e.filtered = 4] = "filtered", e[e.sorted = 8] = "sorted", e[e.ascending = 16] = "ascending", e[e.descending = 32] = "descending", e))(V || {}), hn = /* @__PURE__ */ ((e) => (e.NONE = "none", e.NUMBER = "number", e.DATE = "date", e.TEXT = "boolean", e.IMAGE = "boolean2", e.ENUM = "enum", e.CUSTOM = "custom", e))(hn || {}), ze = /* @__PURE__ */ ((e) => (e.DATE = "date", e.DATE_TIME = "datetime", e.NUMBER = "number", e.ENUM = "enum", e.IMAGE = "image", e.BOOLEAN = "boolean", e.BOOLEAN2 = "boolean2", e.TIMEAGO = "timeago", e.NONE = "none", e.CUSTOM = "custom", e.MULTI_LINGUAL = "multilingual", e))(ze || {});
function mn(e, t) {
var x, w, g, d, _, b, y, C, o;
const { isUndefined: r } = at(), { pageIndex: i, totalItems: a, pagination: c } = t, n = A((x = e.pagination) == null ? void 0 : x.enable), u = A(((w = e.pagination) == null ? void 0 : w.disabled) || !1), v = A((g = e.pagination) == null ? void 0 : g.size), S = A((d = e.pagination) == null ? void 0 : d.sizeLimits), m = A((_ = e.pagination) == null ? void 0 : _.mode), p = A((b = e.pagination) == null ? void 0 : b.showIndex), h = A((y = e.pagination) == null ? void 0 : y.showLimits), O = A(((C = e.pagination) == null ? void 0 : C.showGoto) || !1), s = A(((o = e.pagination) == null ? void 0 : o.showPageInfo) || !0);
me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.disabled;
}, (l, N) => {
l !== N && (u.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.sizeLimits;
}, (l, N) => {
S.value = l;
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.showIndex;
}, (l, N) => {
l !== N && (p.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.showLimits;
}, (l, N) => {
l !== N && (h.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.total;
}, (l, N) => {
l !== N && (a.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.enable;
}, (l, N) => {
l !== N && (n.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.showGoto;
}, (l, N) => {
l !== N && (O.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.showPageInfo;
}, (l, N) => {
l !== N && (s.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.index;
}, (l, N) => {
l !== N && (i.value = l);
}), me(() => {
var l;
return (l = e.pagination) == null ? void 0 : l.size;
}, (l, N) => {
l !== N && (v.value = l);
});
const f = (l) => {
if (!l)
return;
const { enable: N, total: U, size: q, index: B, sizeLimits: D, showGoto: H, showIndex: z, showLimits: Z, mode: k, disabled: $ } = l;
r(N) || (n.value = N), r(B) || (i.value = B), r(q) || (v.value = q), r(D) || (S.value = D), r(H) || (O.value = H), r(z) || (p.value = z), r(Z) || (h.value = Z), r(k) || (m.value = k), r(U) || (a.value = U), r($) || (u.value = $);
};
return me(() => e.pagination, (l, N) => {
l !== N && (c.value = l, f(l));
}), {
disabled: u,
pageSize: v,
pageList: S,
shouldRenderPagination: n,
showGotoPage: O,
showPageIndex: p,
showPageList: h,
showPageInfo: s,
mode: m,
updatePagination: f
};
}
function vt(e) {
return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !pt(e);
}
function gn(e, t, r, i, a, c, n, u, v, S, m) {
const {
updatePagination: p
} = mn(e, r), {
showSelectAll: h,
showSelection: O,
selectedValues: s,
updateSelectAllStatus: f,
keepSelectingOnPaging: x,
clearSelection: w
} = v, g = A([]), d = A([]), {
t: _
} = Le(), b = [{
name: _("datagrid.settings.asc"),
value: "asc",
icon: "f-icon f-icon-col-ascendingorder"
}, {
name: _("datagrid.settings.summaryNone"),
value: "none"
}, {
name: _("datagrid.settings.desc"),
value: "desc",
icon: "f-icon f-icon-col-descendingorder"
}], y = G(() => {
var F, I;
return ((F = e.filter) == null ? void 0 : F.mode) === "server" || ((I = e.sort) == null ? void 0 : I.mode) === "server";
}), {
addColumnFilter: C,
removeColumnFilter: o,
createFilterConditions: l,
filterFromServer: N
} = a;
function U() {
x.value || w(), r.updateVisibleDataSummary(m.value), p({
total: r.dataView.value.length,
index: 1
});
}
function q(F) {
d.value = F;
}
function B(F) {
g.value = F;
}
function D(F) {
const I = F.status, X = (I & V.sorted) === V.sorted, Q = (I & V.ascending) === V.ascending, R = (I & V.descending) === V.descending;
let E = X ? I ^ V.sorted : I;
return E = Q ? E ^ V.ascending : E, E = R ? E ^ V.descending : E, E;
}
function H(F) {
F.sortType = "none", F.status = D(F);
const I = F.column;
I && (I.sort = "none", I.sortOrder = 0, t.applyColumnSorter(r, n));
}
function z(F, I) {
I.column && (I.column.filter = null), r.removeFilter(`field_filter_${I.field}`), H(I), I.filterHistory && I.filterHistory.forEach((X) => {
X.checked = !1;
});
}
function Z(F) {
var R;
const I = D(F), X = F.sortType === "none" ? I : F.sortType === "asc" ? I | V.sorted | V.ascending : I | V.sorted | V.descending;
F.status = X;
const Q = F.column;
Q && (Q.sort = F.sortType, Q.sortOrder = F.sortType !== "none" ? Q.sortOrder : 0, F.status = X, B(t.createSortConditions(n)), ((R = e.sort) == null ? void 0 : R.mode) !== "server" && (t.applyColumnSorter(r, n), u.reCalculateVisualDataRows(), U()));
}
function k(F) {
var Q, R;
const I = (F.status & V.filtered) === V.filtered;
F.status = I ? F.status ^ V.filtered : F.status | V.filtered, ((Q = F.column) == null ? void 0 : Q.filter) != null && F.column.filter !== "" && F.filter ? C(F) : o(F), q(l()), ((R = e.filter) == null ? void 0 : R.mode) !== "server" && (r.refresh(), u.reCalculateVisualDataRows(), U());
}
function $(F, I) {
var X;
I.showPopover = !1, I.filterHistory = void 0, c.updateFilterHistory(I, (X = I.column) == null ? void 0 : X.filter), k(I), Z(I), y.value && N({
filterConditions: d.value,
sortConditions: g.value
});
}
function K(F) {
const I = F.status, X = (I & V.sorted) === V.sorted, Q = X && (I & V.ascending) === V.ascending;
F.sortType = X ? Q ? "asc" : "desc" : "none", n.updateSorter(F, r);
}
function T(F, I) {
I.showPopover = !1, I.filterHistory = void 0, K(I);
}
function P(F) {
var R;
let I, X, Q;
return M("div", {
class: "fv-column-sort-filter-container"
}, [((R = F.column) == null ? void 0 : R.sortable) && M("div", {
class: "fv-column-sort-section"
}, [M(lt("f-capsule"), {
items: b,
modelValue: F.sortType,
"onUpdate:modelValue": (E) => F.sortType = E,
type: "secondary"
}, null)]), M("div", {
class: "fv-column-filter-section"
}, [M("div", {
class: "fv-column-filter-section-title"
}, [_("datagrid.filter.title")]), M("div", {
class: "fv-column-filter-section-editor"
}, [i.getFilterEditor(F)])]), M("div", {
class: "fv-column-sort-filter-footer"
}, [M("div", {
class: "fv-column-clear-section"
}, [M(lt("f-button"), {
style: "margin: 5px 0;padding-left: 0;",
type: "link",
onClick: (E) => z(E, F)
}, vt(I = _("datagrid.filter.clear")) ? I : {
default: () => [I]
})]), M("div", {
class: "fv-column-confirm-section"
}, [M(lt("f-button"), {
customClass: {
"f-btn-ml": !0
},
size: "small",
onClick: (E) => $(E, F)
}, vt(X = _("datagrid.filter.ok")) ? X : {
default: () => [X]
}), M(lt("f-button"), {
size: "small",
type: "secondary",
onClick: (E) => T(E, F)
}, vt(Q = _("datagrid.filter.cancel")) ? Q : {
default: () => [Q]
})])])]);
}
return {
renderFilterContainer: P
};
}
function _n(e) {
return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !pt(e);
}
function pn(e, t, r, i, a, c, n, u, v, S, m, p, h, O, s) {
function f(k) {
const $ = k.status;
return {
"fv-column-handler": !0,
"fv-column-handler-active": ($ & V.filtered) === V.filtered || ($ & V.sorted) === V.sorted || k.showPopover
};
}
function x(k) {
return (k.status & V.sortable) === V.sortable && (k.status & V.filterable) === V.none && (k.status & V.sorted) === V.none;
}
function w(k) {
return (k.status & V.sortable) === V.sortable && (k.status & V.filterable) === V.none && (k.status & V.sorted) === V.sorted && (k.status & V.ascending) === V.ascending;
}
function g(k) {
return (k.status & V.sortable) === V.sortable && (k.status & V.filterable) === V.none && (k.status & V.sorted) === V.sorted && (k.status & V.descending) === V.descending;
}
function d(k) {
return (k.status & V.sortable) === V.none && (k.status & V.filterable) === V.filterable && (k.status & V.sorted) === V.none;
}
function _(k) {
return (k.status & V.sortable) === V.sortable && (k.status & V.filterable) === V.filterable && (k.status & V.sorted) === V.none;
}
function b(k) {
return (k.status & V.sortable) === V.sortable && (k.status & V.filterable) === V.filterable && (k.status & V.sorted) === V.sorted && (k.status & V.ascending) === V.ascending;
}
function y(k) {
return (k.status & V.sortable) === V.sortable && (k.status & V.filterable) === V.filterable && (k.status & V.sorted) === V.sorted && (k.status & V.descending) === V.descending;
}
const C = function(k) {
return {
"f-icon": !0,
"f-icon-col-defaultsort": x(k),
"f-icon-col-ascending": w(k),
"f-icon-col-descending": g(k),
"f-icon-col-filter": d(k),
"f-icon-col-defaultfilterandsort": _(k),
"f-icon-col-filterandascending": b(k),
"f-icon-col-filteranddescending": y(k)
};
}, o = /* @__PURE__ */ new Map([[V.sortable, V.sortable | V.sorted | V.ascending], [V.sortable | V.sorted | V.ascending, V.sortable | V.sorted | V.descending], [V.sortable | V.sorted | V.descending, V.sortable]]), {
renderFilterContainer: l
} = gn(e, c, n, u, v, S, m, p, h, O, s), N = A();
function U(k, $) {
$.filter((K) => K !== k && K.showPopover).forEach((K) => {
K.showPopover = !1;
});
}
function q(k) {
let $;
return M(Lt, {
ref: N,
class: "fv-column-handler-popover",
"z-index": 10,
"right-boundary": a.value,
offsetX: -p.offsetX,
placement: "auto",
visible: !0,
onHidden: () => {
k.showPopover = !1;
}
}, _n($ = l(k)) ? $ : {
default: () => [$]
});
}
async function B(k, $) {
$.showPopover = !$.showPopover, await Ct();
const K = N.value;
K && K.show(k.target);
}
function D(k, $) {
k.filter((K) => K.field !== $.field);
}
function H(k) {
var P;
const $ = k.status;
if (($ & V.sortable) === V.sortable && ($ & V.filterable) === V.none && o.has($)) {
const F = o.get($), I = (F & V.sorted) === V.sorted, X = (F & V.ascending) === V.ascending, Q = (F & V.descending) === V.descending, R = k.column;
R && (R.sort = X ? "asc" : Q ? "desc" : "none", R.sortOrder = I ? R.sortOrder : 0, k.sortType = R.sort, k.status = F, ((P = e.sort) == null ? void 0 : P.mode) === "server" ? t.emit("sortChanged", {
filterConditions: v.createFilterConditions(),
sortConditions: c.createSortConditions(m)
}) : (c.applyColumnSorter(n, m), p.reCalculateVisualDataRows()));
}
}
function z(k, $, K) {
D(K, $), H($), U($, K), ($.status & V.filterable) === V.filterable && B(k, $);
}
function Z(k, $, K) {
return [M("span", {
class: f(k),
onClick: (P) => z(P, k, K)
}, [M("i", {
class: C(k)
}, null), k && k.column && k.sortType !== "none" && (k.column.sortOrder || ""), k.showPopover && q(k)])];
}
return {
renderHeaderCellHandler: Z
};
}
const yn = "__setting__", Pr = "设置", bn = 30, wn = "right", Je = "setting", Sn = "__command__", Hr = "操作", Cn = 150, xn = "right", nt = "commands";
function On(e, t, r, i, a, c, n, u) {
const v = "id", S = A();
let m;
const {
applySortableColumns: p,
collectionFilterableColumns: h,
collectionSortableColumns: O,
columnContext: s,
updateColumnSettingIcon: f
} = e, {
conditions: x
} = r, {
calculateColumnsSize: w
} = i, {
fitHorizontalScroll: g
} = c, d = A([]), _ = G(() => !!d.value.length), b = G(() => s.value.primaryColumns.filter((P) => P.dataType !== nt && P.dataType !== Je));
let y = [];
const C = G(() => b.value.map((P) => ({
id: P.field,
name: P.title
}))), o = G(() => b.value.filter((P) => P.visible).map((P) => ({
id: P.field,
name: P.title
})));
G(() => O().map((P) => ({
id: P.field,
name: P.title,
order: P.sort
}))), G(() => h().map((P) => ({
id: P.field,
code: P.field,
controlType: "",
labelCode: P.field,
name: P.title,
editor: P.editor,
// || ({ type: useFilterComposition.getFilterEditorType(filterableColumn) } as EditorConfig),
value: {},
visible: !0
})));
function l() {
const P = /* @__PURE__ */ new Map();
return b.value.reduce((F, I) => (I.visible = !1, F.set(I.field, I), F), P), P;
}
function N(P, F) {
return P.map(({
id: X
}) => {
const Q = F.get(X);
return Q.visible = !0, F.delete(X), Q;
});
}
function U(P) {
const F = s.value.primaryColumns.filter((R) => R.dataType === nt), I = s.value.primaryColumns.filter((R) => R.dataType === Je), X = l(), Q = N(P, X);
F.length || I.length ? s.value.primaryColumns = [...Q, ...Array.from(X.values()), ...F, ...I] : s.value.primaryColumns = [...Q, ...Array.from(X.values())], f(), w(), Ct(() => {
g();
});
}
function q() {
U(y), m == null || m.destroy();
}
function B(P) {
return M("div", {
class: "fv-grid-settings"
}, [M(Ut, {
"tab-type": "pills",
"justify-content": "center"
}, {
headerPrefix: () => M("div", {
class: "modal-title"
}, [M("span", {
class: "modal-title-label"
}, [u.t("datagrid.settings.title")])]),
default: () => [
M(Kt, {
id: "display-columns",
title: u.t("datagrid.settings.visible"),
class: "container"
}, {
default: () => [M(Gt, {
style: "height: 480px",
displayType: "Tree",
"identify-field": v,
"data-source": C.value,
selections: o.value,
onChange: U
}, null)]
})
// <FTabPage id="column-order" title="列排序" class="container">
// <FOrder
// style="height: 480px"
// data-source={dataSoruce.value}
// items={sortedColumns.value}
// onChange={onSortedColumnsChange}></FOrder>
// </FTabPage>
// FConditionList组件功能不完善,先把表格筛选特性隐藏掉
// <FTabPage id="column-filter" title="筛选" class="container">
// <FConditionList
// ref={conditionListRef}
// style="height: 480px"
// fields={filterableColumns.value}
// conditions={conditions.value}></FConditionList>
// </FTabPage>
],
headerSuffix: () => M("div", {
class: "f-btn-icon f-bare",
onClick: (F) => q()
}, [M("span", {
class: "f-icon modal_close"
}, null)])
})]);
}
function D() {
const P = /* @__PURE__ */ new Map();
return O().reduce((F, I) => (I.sort = "none", I.sortOrder = 0, F.set(I.field, I), F), P), P;
}
function H(P) {
return d.value.filter((I) => I.id && I.order).map((I, X) => {
const Q = X + 1, R = P.get(I.id);
return R && (R.sort = I.order, R.sortOrder = Q), R;
});
}
function z() {
if (_.value) {
const P = D(), F = H(P);
p(F, t, a), c.reCalculateVisualDataRows(), w();
}
}
function Z() {
S.value && (x.value = S.value.getConditions(), t.refresh(), c.reCalculateVisualDataRows());
}
function k() {
z(), Z();
}
function $() {
y = Tt(o.value);
}
function K() {
U(y);
}
function T() {
m = n.open({
title: "",
width: 800,
showButtons: !0,
showHeader: !1,
dragHandle: ".farris-tabs-header",
draggable: !0,
render: B,
acceptCallback: k,
rejectCallback: K
}), $();
}
return {
acceptCallback: k,
rejectCallback: K,
renderSettingsPanel: B,
openSettingPanel: T
};
}
function Nn(e, t, r, i, a, c) {
const n = xt($t), u = Le(), v = G(() => ({
margin: "0px"
}));
function S(p) {
const {
openSettingPanel: h
} = On(e, t, r, i, a, c, n, u);
h();
}
function m() {
return M("span", {
class: "fv-grid-settings-icon",
style: v.value,
onClick: S
}, [M("i", {
class: "f-icon f-icon-home-setup"
}, null)]);
}
return {
renderGridSettingsIcon: m
};
}
function kn(e, t, r, i) {
const c = A(-1), n = A(0), u = A(!1);
let v = "";
const S = G(() => ({
display: u.value ? "block" : "none",
left: `${n.value}px`
})), m = G(() => ({
display: u.value ? "block" : "none"
}));
function p(s) {
const f = s.target.parentElement;
if (f) {
const { left: x } = f.getBoundingClientRect();
n.value = s.clientX - x;
}
}
function h(s) {
const f = t.value.primaryColumns.filter((w) => w.visible).find((w) => w.field === v) || t.value.leftColumns.filter((w) => w.visible).find((w) => w.field === v) || t.value.rightColumns.filter((w) => w.visible).find((w) => w.field === v), x = s.target.parentElement;
if (f && x) {
const { left: w } = x.getBoundingClientRect(), g = s.clientX - w, d = (f.actualWidth || 0) + (g - c.value);
f.actualWidth = Math.max(40, d), r.calculateColumnsSize();
}
n.value = 0, u.value = !1, document.removeEventListener("mousemove", p), document.removeEventListener("mouseup", h), document.body.style.userSelect = "", v = "";
}
function O(s, f) {
v = f, u.value = !0;
const w = s.composedPath().find((g) => g.className.split(" ")[0] === "fv-grid");
if (w) {
const { left: g } = w.getBoundingClientRect();
n.value = s.clientX - g, c.value = s.clientX - g, document.addEventListener("mousemove", p), document.addEventListener("mouseup", h), document.body.style.userSelect = "none";
}
}
return { onClickColumnResizeBar: O, resizeHandleStyle: S, resizeOverlayStyle: m };
}
function Vr(e, t, r, i, a, c, n, u, v, S, m, p, h, O, s, f, x, w, g) {
const {
getDifference: d
} = yt(), {
dataView: _
} = n, {
showSelectAll: b,
selectDataItem: y,
unSelectDataItem: C,
selectAll: o,
unSelectAll: l,
selectedValues: N,
selectAllStatus: U,
indeterminateStatus: q
} = O, {
showRowNumer: B,
showSidebarCheckBox: D,
sidebarTitle: H,
sidebarCornerCellStyle: z
} = s, {
columnContext: Z,
hasLeftFixedColumn: k,
hasRightFixedColumn: $
} = c, {
onClickColumnResizeBar: K,
resizeHandleStyle: T,
resizeOverlayStyle: P
} = kn(e, Z, p), {
gridHeaderColumnsStyle: F,
leftFixedGridHeaderColumnsStyle: I,
rightFixedGridHeaderColumnsStyle: X
} = x, {
dragstart: Q,
dragenter: R,
dragover: E,
dragend: Y
} = u, ee = G(() => b.value || D.value || B.value), ae = Z.value.defaultColumnWidth, fe = 32, de = /* @__PURE__ */ new Map([[0, 0]]), ce = G(() => e.showHeader);
function he(le, Ce) {
var Ke;
const xe = ((Ke = le.column) == null ? void 0 : Ke.dataType) === "setting", Te = de.get(Ce) || 0, He = {
height: `${le.depth * fe}px`,
left: `${le.left}px`,
top: `${(le.layer - 1) * fe}px`,
width: `${le.actualWidth}px`
};
return Z.value.headerDepth > 1 && (He["line-height"] = `${le.depth * fe}px`), xe && (He.paddingLeft = "2px"), e.showBorder && (He.border = "1px solid #e6e9f0"), de.set(Ce + 1, Te + (le.actualWidth || ae)), He;
}
const Oe = G(() => ({
"fv-grid-header": !0,
"fv-grid-header-group-columns": Z.value.headerDepth > 1
})), ge = G(() => {
const le = {
height: `${Z.value.headerDepth * fe}px`
};
return x.shouldShowVirticalScrollbar.value && (le.paddingRight = "10px"), le;
}), We = G(() => {
var le;
return {
width: `${Number((le = e.rowNumber) == null ? void 0 : le.width)}px`
};
}), j = function(le) {
return (le.status & V.sortable) === V.sortable || (le.status & V.filterable) === V.filterable;
}, {
renderHeaderCellHandler: ie
} = pn(e, t, r, i, a, c, n, v, S, m, f, x, O, s, g), {
renderGridSettingsIcon: oe
} = Nn(c, n, S, p, f, x);
function ye(le) {
var xe;
const Ce = {
"fv-grid-header-cell": !0,
"fv-grid-header-cell-border": e.showBorder
};
return Ce["text-" + (((xe = le.column) == null ? void 0 : xe.halign) || "left")] = !0, Ce;
}
function W(le) {
q.value = !1;
const Ce = g.value.map((Te) => Te.raw), xe = d(_.value, Ce);
le ? (o(), xe.forEach((Te) => {
y(Te);
}), t.emit("selecAll", le)) : (l(), xe.forEach((Te) => {
C(Te);
}), t.emit("unSelecAll", le));
}
function te(le) {
return M("span", {
class: "fv-column-title",
title: le.title
}, [le.title]);
}
function _e(le, Ce, xe) {
var Te, He, Ke, Ze, J;
return M("div", {
class: ye(le),
style: he(le, xe),
draggable: le.draggable,
onDragstart: (re) => Q(re, le, xe),
onDragenter: (re) => R(re, xe),
onDragend: (re) => Y(re, le),
onDragover: (re) => E(re, xe)
}, [((Te = le.column) == null ? void 0 : Te.dataType) === "setting" ? oe() : t.slots.headerCellTemplate ? t.slots.headerCellTemplate({
headerCell: le,
headerCells: Ce,
columnIndex: xe
}) : (He = le.column) != null && He.headerFormatter ? (Ze = (Ke = le.column).headerFormatter) == null ? void 0 : Ze.call(Ke, {
headerCell: le,
headerCells: Ce,
columnIndex: xe
}) : (J = le.column) != null && J.showTips ? te(le) : M("span", {
class: "fv-column-title"
}, [le.title]), j(le) && ie(le, xe, Ce), le.resizable && M("span", {
class: "fv-column-resize-bar",
onMousedown: (re) => K(re, le.field)
}, null)]);
}
function Se(le) {
return le.map((Ce, xe) => {
const Te = [];
if (Te.push(_e(Ce, le, xe)), Ce.children && Ce.children.length) {
const He = Se(Ce.children);
Te.push(...He);
}
return Te;
});
}
function pe() {
return M("div", {
class: "fv-grid-header-left-fixed"
}, [M("div", {
class: "fv-grid-header-columns",
style: I.value
}, [Se(Z.value.leftHeaderColumns)])]);
}
function Ue() {
return M("div", {
class: "fv-grid-header-right-fixed"
}, [M("div", {
class: "fv-grid-header-columns",
style: X.value
}, [Se(Z.value.rightHeaderColumns)])]);
}
G(() => N.value.length > 0 && g.value.length !== N.value.length);
function Ae() {
return M("div", {
class: "fv-grid-header-corner d-flex",
style: z.value
}, [D.value && b.value && !e.hierarchy && M("div", {
class: "d-inline-flex align-items-center"
}, [M(gt, {
id: "checkbox_for_select_all",
checked: U.value,
"onUpdate:checked": (le) => U.value = le,
indeterminate: q.value,
onChangeValue: W
}, null)]), D.value && !b.value && !e.hierarchy && M("div", {
class: "d-inline-flex align-items-center",
style: {
opacity: "0"
}
}, [M(gt, {
disabled: !0
}, null)]), B.value && M("div", {
class: "align-items-center fv-grid-sidebar-row-number",
style: We.value
}, [M("div", {
title: H.value,
class: {
"text-center": !0,
"text-truncate": !0,
"w-100": !0
}
}, [H.value])])]);
}
function Qe() {
return M("div", {
class: Oe.value,
style: ge.value
}, [ee.value && Ae(), k.value && pe(), M("div", {
class: "fv-grid-header-primary"
}, [M("div", {
class: "fv-grid-header-columns",
style: F.value
}, [Se(Z.value.primaryHeaderColumns)])]), $.value && Ue()]);
}
function Me() {
return M(ct, null, [M("div", {
class: "fv-datagrid-resize-overlay",
style: P.value
}, null), M("div", {
class: "fv-datagrid-resize-proxy",
style: T.value
}, null)]);
}
return {
renderGridHeader: Qe,
renderGridColumnResizeOverlay: Me,
shouldShowHeader: ce
};
}
function Wr() {
function e() {
return M("div", {
class: "fv-grid-disable"
}, null);
}
return {
renderDisableMask: e
};
}
function Ar(e, t, r, i, a) {
const {
columnContext: c
} = t, {
conditions: n,
clearCondition: u,
removeCondition: v
} = i, S = A([]);
function m() {
const f = [];
Array.from(n.value).forEach((x, w) => {
var d;
const g = {
id: x.id,
code: x.fieldCode,
labelCode: x.fieldCode,
name: x.fieldName,
editor: {
type: (d = x.value) == null ? void 0 : d.editorType
}
};
f.push(g);
}), S.value = f;
}
me(n, () => m());
function p(f) {
if (f && f.column) {
f.column.filter = null;
let x = f.status;
x = (x & V.filtered) === V.filtered ? x ^ V.filtered : x, f.status = x;
}
}
function h(f) {
v(`field_filter_${f}`);
const x = c.value.primaryHeaderColumns.find((w) => w.field === f);
p(x), r.refresh(), a.reCalculateVisualDataRows();
}
function O() {
u(), c.value.primaryHeaderColumns.forEach((f) => p(f)), r.refresh(), a.reCalculateVisualDataRows();
}
function s() {
return M("div", {
class: "fv-grid-filter-panel"
}, [M(Yt, {
data: n.value,
fields: S.value,
mode: "display-only",
"show-reset": !0,
onRemove: h,
onReset: O
}, null)]);
}
return {
renderFilterPanel: s
};
}
function Lr(e, t, r, i, a) {
const {
dropOnGroupPanel: c,
groupColumnItems: n
} = r, {
groupFields: u,
shouldGroupingData: v,
showGroupPanel: S
} = i, m = A();
function p(s) {
u.value = s.map((f) => f.value), t.updateDataView(), a.reCalculateVisualDataRows();
}
function h(s) {
s.preventDefault();
}
function O() {
return v.value && S.value && M("div", {
class: "fv-grid-group-panel",
onDrop: c,
onDragover: h
}, [n.value && M(lt("f-tags"), {
ref: m,
style: "margin:0.375rem",
"tag-type": "default",
data: n.value,
"tag-style": "capsule",
"show-close": !0,
onChange: p
}, null)]);
}
return {
renderGroupPanel: O
};
}
function Tn(e, t) {
var O;
const r = String(Date.now()), i = ((O = e.rowOption) == null ? void 0 : O.height) || 28, a = A(t.value.primaryColumnsWidth);
function c(s) {
const f = {};
return s.reduce(
(x, w, g) => {
const d = g < s.length - 1 ? s[g + 1] : null;
return g === 0 && (x[w.field] = { left: 0 }), w.actualWidth !== void 0 && (x[w.field].width = w.actualWidth), d && (x[d.field] = {
left: x[w.field].left + (w.actualWidth || 0)
}), x;
},
f
), f;
}
function n(s, f, x) {
const w = i * (x + 1), d = f[s.field].left - w + (f[s.field].width || 0), _ = s.parent.height ? `${s.parent.height}px` : "";
return {
left: `${w}px`,
width: `${d}px`,
height: `${_}`
};
}
function u(s, f, x) {
return {
right: "0px",
height: `${s.parent.height ? `${s.parent.height}px` : ""}`
};
}
function v(s, f) {
var g;
const x = s.parent.height ? `${s.parent.height}px` : "", w = {
left: `${f[s.field].left}px`,
height: `${x}`,
width: isNaN(Number(f[s.field].width)) ? "100%" : `${f[s.field].width}px`
};
if ((g = e.rowOption) != null && g.customCellStyle) {
const d = e.rowOption.customCellStyle(s) || {};
return Object.assign({}, w, d.style || {});
}
return w;
}
function S(s, f, x) {
const g = (f.spanned || []).reduce((_, b) => _ + (b.parent.height || 0), 0) + (s.height || 0);
return {
top: `${s.top}px`,
left: `${x[f.field].left}px`,
width: `${x[f.field].width}px`,
height: `${g}px`,
padding: `calc(${g / 2}px - 1rem) 0`
// height: `calc(${rowHeight}px * ${cell.rowSpan})`,
// padding: `calc(${rowHeight * cell.rowSpan / 2}px - 1rem) 0`
};
}
function m(s, f) {
return `${r}_${s.type}_r_${s.index}_c_${f}_${s.refreshKey || ""}`;
}
function p(s) {
return `${r}_${s.type}_r_${s.index}_${s.refreshKey || ""}`;
}
function h(s) {
var w;
const f = s.height ? `${s.height}px` : "", x = {
top: `${s.top}px`,
width: isNaN(a.value) ? "100%" : `${a.value}px`,
height: `${f}`
};
if ((w = e.rowOption) != null && w.customRowStyle) {
const g = e.rowOption.customRowStyle(s.raw) || {};
return Object.assign({}, x, g.style || {});
}
return x;
}
return me(t, () => {
a.value = t.value.primaryColumnsWidth;
}), {
calculateCellPositionInRow: c,
cellKey: m,
cellPosition: v,
groupCellPosition: n,
rowKey: p,
rowPosition: h,
rowSpanCellPosition: S,
summaryCellPosition: u
};
}
function En(e, t, r) {
const { hasChildrenField: i } = r, a = A("#9399a0"), c = A(28);
function n() {
return [].concat(
...t.value.filter((h) => h.raw.__fv_descendant_index__.length !== 0).map((h) => [...h.raw.__fv_descendant_index__.slice(-1)]).flat()
).sort((h, O) => Number(h) - Number(O));
}
function u(m) {
const p = new Array(t.value.length).fill(0);
if (e.showLines) {
const h = n();
t.value.forEach((O, s) => {
const f = h.includes(s), x = O.raw[i.value];
p[s] = `repeating-linear-gradient(90deg, ${a.value} 0 1px, transparent 0px 2px) ${x ? "-10px" : "0px"} ${c.value / 2}px/20px 1px no-repeat,repeating-linear-gradient(${a.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${f ? "50%" : "100%"} no-repeat`;
}), p[0] = "";
}
return p[m];
}
function v(m, p, h) {
return h[m].parents.set(m, !0).forEach((s) => {
h[s].childsLength = h[s].childWithLines.filter((f) => p[f].visible).length;
}), p;
}
function S(m) {
const p = m.raw.__fv_parent_index__ === void 0 || m.raw.__fv_parent_index__ === -1, O = p ? 0 : 8, s = 0, f = m.raw[i.value], x = `${m.layer * 10 + m.layer * O + s}px`, w = m.visible || mt(m.visible) ? {
paddingLeft: `calc(${x})`,
// paddingLeft,
background: u(m.index),
display: "flex",
width: "100%",
position: "relative"
} : {
display: "none"
};
return !f && p && (w.paddingLeft = "calc(1.18rem)"), !f && !p && (w.paddingLeft = `calc(${x} + 1.25rem)`), w;
}
return { hierarchyCellContentStyle: S, handleCollapsedPaddingBottom: v };
}
function Fn(e, t, r) {
const i = A(e.iconField);
function a(c, n) {
if (i.value)
return c.raw[e.iconField];
let u = "";
return c.raw[r.value] !== !0 ? u = t.value.leafnodes : u = c.collapse ? t.value.fold : t.value.unfold, u;
}
return { treeNodeIconsClass: a };
}
function Rn(e, t, r, i, a, c, n, u) {
const { dataView: v, hasRealChildren: S, reOrderVisibleIndex: m } = i, { collapseField: p, hasChildrenField: h } = a, { reCalculateVisualDataRows: O, updateVirticalScroll: s } = c;
function f(x) {
if (x.raw[h.value]) {
const g = v.value[x.raw.__fv_index__];
g[p.value] = !g[p.value], i.toggleChildrenVisibiltyByCollapseStatus(g), g[h.value] = S(g), m(), O(), s(), g[p.value] || t.emit("expandNode", { row: x });
}
}
return { toggleTreeNode: f };
}
function Dn(e) {
function t(a) {
return {};
}
function r(a) {
const { valign: c, align: n } = a;
return {
"d-flex": !0,
"h-100": !0,
"w-100": !0,
"justify-content-start": n !== "center" && n !== "right",
"justify-content-center": n === "center",
"justify-content-right": n === "right",
"align-items-start": c !== "middle" && c !== "bottom",
"align-items-center": c === "middle",
"align-items-end": c === "bottom"
};
}
function i(a) {
const { align: c, showEllipsis: n } = a;
return {
"w-100": !0,
"text-left": c !== "center" && c !== "right",
"text-center": c === "center",
"text-right": c === "right",
"text-truncate": n
};
}
return { cellContentPosition: t, cellContentClass: r, cellContentClassWithEllipsis: i };
}
function Br(e, t, r, i, a, c, n, u, v, S, m, p, h) {
at();
const {
onClickCell: O
} = c, {
gridCellClass: s,
gridHierarchyCellClass: f,
gridRowClass: x,
onClickRow: w,
onMouseoverRow: g,
onMouseoutRow: d
} = u, {
enableMultiSelect: _,
select: b,
unSelect: y,
selectItem: C,
updateSelectAllStatus: o
} = v;
A(e.cellHeight);
const l = A(e.treeNodeIconsData || {}), {
hasChildrenField: N,
shouldShowCheckBox: U,
shouldShowIcon: q
} = n, {
toggleTreeNode: B
} = Rn(e, t, i, a, n, m), {
toggleSelectHierarchyItem: D
} = S, {
cellKey: H,
cellPosition: z,
rowKey: Z,
rowPosition: k
} = Tn(e, r), {
cellContentClass: $,
cellContentPosition: K,
cellContentClassWithEllipsis: T
} = Dn(), {
hierarchyCellContentStyle: P
} = En(e, i, n), {
treeNodeIconsClass: F
} = Fn(e, l, N);
function I(W, te) {
const _e = W.raw[N.value];
return {
"fv-tree-node-toggle": _e && W.collapse,
"fv-tree-node-toggle-minus": _e && !W.collapse
};
}
function X(W) {
return W.collapse && e.loadData ? e.loadData(W) : Promise.resolve();
}
function Q(W) {
return (W || []).some((te) => pt(te) ? !(te.type === Comment || te.type === ct && !Q(te.children)) : !0) ? W : null;
}
function R(W, te) {
W.stopPropagation(), X(te).then(() => {
B(te);
});
}
function E(W) {
W.stopPropagation();
}
function Y(W, te) {
return M("div", {
class: I(W),
onClick: (_e) => R(_e, W),
onDblclick: E
}, null);
}
function ee(W, te) {
return q.value && M("div", {
id: "treeNodeIcons",
class: F(W, te)
}, null);
}
function ae(W) {
_.value ? (W.checked ? b(W) : y(W), D(W)) : C(W), o();
}
function fe(W, te) {
return U.value && M(gt, {
id: "checkbox_for_" + H(W, te.index),
indeterminate: W.indeterminate,
disabled: W.disabled,
checked: W.checked,
"onUpdate:checked": (_e) => W.checked = _e,
onChange: () => ae(W)
}, null);
}
function de(W, te) {
var _e, Se;
return M("div", {
class: T(W)
}, [M("span", {
style: "user-select:none"
}, [(Se = (_e = t.slots).cellTemplate) == null ? void 0 : Se.call(_e, {
cell: W,
row: te
})])]);
}
function ce(W, te) {
var _e, Se, pe;
return W.showTips && typeof ((_e = W.column) == null ? void 0 : _e.formatter) != "function" && ((Se = W.column) == null ? void 0 : Se.dataType) !== "commands" && ((pe = W.column) == null ? void 0 : pe.dataType) !== "setting" ? M("div", {
class: T(W),
title: W.formatter(W, te)
}, [M("span", {
style: "user-select:none"
}, [W.formatter(W, te)])]) : M("div", {
class: T(W)
}, [M("span", {
style: "user-select:none"
}, [W.formatter(W, te)])]);
}
function he(W) {
const te = W.data !== null && W.data !== void 0 ? W.data.toString() : W.data;
return W.showTips ? M("div", {
class: T(W)
}, [M("span", {
style: "user-select:none",
title: te
}, [te])]) : M("div", {
class: T(W)
}, [Xe(" "), M("span", {
style: "user-select:none"
}, [te])]);
}
function Oe(W) {
return W.getEditor(W);
}
function ge(W, te) {
return t.slots.cellTemplate && Q(t.slots.cellTemplate({
cell: te,
row: W
})) ? de(te, W) : te.mode === Fe.editing ? Oe(te) : te.column.columnTemplate ? te.column.columnTemplate(te, W) : te.formatter ? ce(te, W) : he(te);
}
function We(W, te, _e) {
const Se = P(W);
return M("div", {
ref: te.setRef,
key: H(W, te.index),
class: "fv-grid-hierarchy-cell",
style: z(te, _e)
}, [M("div", {
class: $(te),
style: Se
}, [Y(W), ee(W, te), fe(W, te), ge(W, te)])]);
}
function j(W, te, _e) {
return M("div", {
ref: te.setRef,
key: H(W, te.index),
class: s(te),
style: z(te, _e),
onClick: (Se) => O(Se, te, W, te.column)
}, [M("div", {
class: $(te)
}, [ge(W, te)])]);
}
function ie(W, te) {
return te === "left" && r.value.leftColumns.length > 0 && r.value.leftColumns[0].field === W.field || te === "primary" && r.value.primaryColumns.length > 0 && r.value.primaryColumns[0].field === W.field;
}
function oe(W, te) {
t.emit("dblclickNode", {
$event: W,
node: te.raw
});
}
function ye(W, te, _e = "primary", Se) {
return M("div", {
ref: W.setRef,
key: Z(W),
class: x(W, Se),
style: k(W),
onMouseover: (pe) => g(pe, W),
onMouseout: (pe) => d(pe, W),
onClick: (pe) => w(pe, W),
onDblclick: (pe) => oe(pe, W)
}, [Object.values(W.data).filter((pe) => te[pe.field] && pe.rowSpan === 1).map((pe) => ie(pe, _e) ? We(W, pe, te) : j(W, pe, te))]);
}
return {
renderDataRow: ye
};
}
function jr(e, t, r) {
const {
horizontalScrollThumbStyle: i,
onMouseDownScrollThumb: a,
shouldShowHorizontalScrollbar: c
} = r;
function n() {
return c.value && M("div", {
class: "fv-grid-horizontal-scroll"
}, [M("div", {
class: "fv-grid-horizontal-scroll-thumb",
style: i.value,
onMousedown: (u) => a(u, t, "horizontal")
}, null)]);
}
return {
renderHorizontalScrollbar: n
};
}
function $r(e, t, r, i, a, c) {
const {
clearSelection: n,
keepSelectingOnPaging: u
} = c, {
pageIndex: v,
totalItems: S,
updatePageSize: m
} = r, p = A(), {
pageSize: h,
pageList: O,
showGotoPage: s,
showPageIndex: f,
showPageList: x,
mode: w,
disabled: g,
shouldRenderPagination: d,
showPageInfo: _
} = a;
function b(N, U) {
d.value && w.value !== "server" ? (r.navigatePageTo(N), i.resetScroll()) : (m(U), u.value || n());
}
function y(N) {
const {
pageIndex: U,
pageSize: q
} = N;
b(U, q), t.emit("pageIndexChanged", {
pageIndex: U,
pageSize: q
});
}
function C(N) {
const {
pageIndex: U,
pageSize: q
} = N;
b(U, q), t.emit("pageSizeChanged", {
pageIndex: U,
pageSize: q
});
}
function o(N) {
const {
pageIndex: U,
pageSize: q
} = N;
b(U, q), t.emit("changed", {
pageIndex: U,
pageSize: q
});
}
function l() {
return M(qt, {
ref: p,
mode: "default",
disabled: g.value,
currentPage: v.value,
"onUpdate:currentPage": (N) => v.value = N,
pageSize: h.value,
"onUpdate:pageSize": (N) => h.value = N,
showPageInfo: _.value,
showGoButton: s.value,
showPageList: x.value,
showPageNumbers: f.value,
totalItems: S.value,
pageList: O.value,
onPageIndexChanged: y,
onPageSizeChanged: C,
onChanged: o
}, null);
}
return {
renderDataGridPagination: l
};
}
function zr(e, t, r, i, a) {
const {
isSelectingHirarchyItem: c,
multiSelectOnClickRow: n,
multiSelectOnlyOnCheck: u,
updateSelectAllStatus: v,
selectItem: S,
toggleSelectItem: m,
toggleSelectItemWithoutRow: p
} = r, {
onMouseoverRow: h,
sidebarRowClass: O,
onClickRow: s
} = t, {
showRowNumer: f,
showSidebarCheckBox: x,
sidebarCellPosition: w,
rowKey: g,
cellKey: d
} = i, {
gridSideStyle: _
} = a, b = G(() => ({
overflow: "hidden"
}));
function y(B) {
B.stopPropagation();
}
function C(B, D) {
B.stopPropagation(), s(B, D);
}
function o(B) {
return M("div", {
class: "d-inline-flex flex-fill"
}, [M("div", {
class: "custom-control custom-checkbox f-checkradio-single",
style: "margin:0;padding-left:0.5rem"
}, [It(M("input", {
id: d(B),
title: d(B),
type: "checkbox",
indeterminate: B.indeterminate,
disabled: B.disabled,
"onUpdate:modelValue": (D) => B.checked = D,
class: "custom-control-input"
}, null), [[Mt, B.checked]]), M("label", {
class: "custom-control-label",
for: d(B),
onClick: y
}, null)])]);
}
function l(B) {
return M("div", {
class: "fv-grid-sidebar-row-number justify-content-center flex-fill",
style: "padding:0",
onClick: (D) => {
C(D, B);
},
onMouseover: (D) => h(D, B)
}, [M("div", {
title: B.dataIndex,
class: {
"text-center": !0,
"text-truncate": e.rowNumber.showEllipsis,
"w-100": e.rowNumber.showEllipsis
}
}, [B.dataIndex])]);
}
function N(B, D, H) {
B.stopPropagation(), c.value ? n.value ? m(H) : S(H) : n.value ? m(H) : u.value ? p(H) : S(H), v();
}
function U(B) {
return (x.value || f.value) && B.value.map((D, H) => M("div", {
key: g(D),
class: O(D, H),
style: w(D),
onClick: (z) => N(z, B, D)
}, [x.value && !e.hierarchy && o(D), f.value && l(D)]));
}
function q(B) {
return (x.value || f.value) && M("div", {
class: "fv-grid-content-side",
style: b.value
}, [M("div", {
class: "fv-grid-side",
style: _.value
}, [U(B)])]);
}
return {
renderDataGridSidebar: q
};
}
function Gr(e, t, r) {
const {
t: i
} = Le(), {
columnContext: a
} = r, c = A(e.summary), n = G(() => {
const v = c.value;
return v && v.enable && v.groupFields && v.groupFields.length > 0;
});
function u() {
return n.value && M("div", {
class: "fv-datagrid-summary"
}, [M("div", {
class: "fv-datagird-summary-panel"
}, [M("span", {
class: "fv-datagrid-summary-title"
}, [i("datagrid.summary.title")]), M("div", {
class: "fv-datagrid-summary-content"
}, [a.value.summaryColumns.map((v) => M("div", {
class: "fv-datagrid-summary-field"
}, [M("span", {
class: "fv-datagrid-summary-field-title"
}, [`${v.title}:`]), M("span", {
class: "fv-datagrid-summary-field-value"
}, [t.summaries.get(v.field)])]))])])]);
}
return {
renderDataGridSummary: u
};
}
function Ur(e, t, r) {
const {
verticalScrollThumbStyle: i,
onMouseDownScrollThumb: a,
shouldShowVirticalScrollbar: c
} = r;
function n() {
return c.value && M("div", {
class: "fv-grid-vertical-scroll"
}, [M("div", {
class: "fv-grid-vertical-scroll-thumb",
style: i.value,
onMousedown: (u) => a(u, t, "vertical")
}, null)]);
}
return {
renderVerticalScrollbar: n
};
}
function In(e) {
const {
t
} = Le();
function r(n, u) {
switch (n.command) {
case "edit":
case "remove":
return u.status === Ge.initial;
case "accept":
case "cancel":
return u.status === Ge.editing;
default:
return !n.hidden;
}
}
function i(n, u, v, S) {
var m, p, h, O, s;
switch ((m = n.onClick) == null || m.call(n, u, v.dataIndex, v), n.command) {
case "edit":
v.status, Ge.editing, (h = (p = e.commandOption) == null ? void 0 : p.onClickEditCommand) == null || h.call(p, S, v);
break;
case "accept":
case "cancel":
v.status, Ge.initial;
break;
case "remove":
(s = (O = e.commandOption) == null ? void 0 : O.onClickDeleteCommand) == null || s.call(O, S, v);
break;
}
}
function a(n) {
return n === "编辑" ? t("datagrid.commandColumn.edit") : n === "确定" ? t("datagrid.commandColumn.accept") : n === "取消" ? t("datagrid.commandColumn.cancel") : n === "删除" ? t("datagrid.commandColumn.remove") : n;
}
function c(n, u) {
const {
column: v
} = n;
return v.commands && v.commands.map((S, m) => m ? r(S, u) && M(wt, {
class: "ml-1",
type: S.type,
size: S.size || "small",
onClick: (p) => i(S, p, u, n),
style: {
"margin-bottom": "3px"
}
}, {
default: () => [Xe(" "), a(S.text), Xe(" ")]
}) : r(S, u) && M(wt, {
type: S.type,
size: S.size || "small",
onClick: (p) => i(S, p, u, n),
style: {
"margin-bottom": "3px"
}
}, {
default: () => [Xe(" "), a(S.text), Xe(" ")]
}));
}
return {
renderCommandColumn: c
};
}
function Kr(e, t) {
const {
t: r
} = Le();
function i() {
return M("div", {
class: "f-datagrid-norecords d-flex"
}, [e.emptyTemplate ? e.emptyTemplate() : M("div", {
class: "f-datagrid-norecords-content",
style: "margin: 0;width: 100%;position: absolute; top: 50%; transform:translateY(-50%);user-select:none"
}, [Xe(" "), r("datagrid.emptyMessage")])]);
}
return {
renderEmpty: i
};
}
function Yr(e) {
const t = A(e.minHeight), r = A(e.minWidth), i = A(e.height), a = A(e.width), c = G(() => i.value <= 0 ? 0 : Math.max(i.value, t.value)), n = G(() => a.value <= 0 ? 0 : Math.max(a.value, r.value));
return me([
() => e.height,
() => e.width,
() => e.minHeight,
() => e.minWidth
], ([v, S, m, p]) => {
t.value = Number(m), r.value = Number(p), i.value = Number(v), a.value = Number(S);
}), { containerStyleObject: G(() => ({
height: c.value > 0 ? `${c.value}px` : e.fit ? "100%" : "",
width: n.value > 0 ? `${n.value}px` : e.fit ? "100%" : "",
flex: "1 1 0"
})) };
}
const Mn = "";
function qr(e, t) {
const a = A({
defaultColumnWidth: 120,
headerDepth: 1,
leftColumns: [],
leftColumnsMap: /* @__PURE__ */ new Map(),
leftColumnsWidth: 0,
leftHeaderColumns: [],
primaryColumns: [],
primaryColumnsMap: /* @__PURE__ */ new Map(),
primaryColumnsWidth: 0,
primaryHeaderColumns: [],
rightColumns: [],
rightColumnsMap: /* @__PURE__ */ new Map(),
rightColumnsWidth: 0,
rightHeaderColumns: [],
summaryColum