pro-design-vue 1.3.21 → 1.3.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +1 -1
- package/dist/index.full.js +1217 -1585
- package/dist/index.full.min.js +7 -9
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +7 -9
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +1218 -1586
- package/es/components/config-provider/src/typing.d.ts +1 -0
- package/es/components/table/src/components/Body/Body.vue.d.ts +261 -15
- package/es/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
- package/es/components/table/src/components/Body/BodyEditCell.d.ts +61 -0
- package/es/components/table/src/components/Body/BodyRow.vue.d.ts +261 -15
- package/es/components/table/src/components/Body/BodyRows.vue.d.ts +261 -15
- package/es/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
- package/es/components/table/src/components/InteralTable.vue.d.ts +314 -19
- package/es/components/table/src/components/Table.d.ts +51 -0
- package/es/components/table/src/components/context/TableContext.d.ts +4 -0
- package/es/components/table/src/components/interface.d.ts +290 -23
- package/es/components/table/src/hooks/useCellProps.d.ts +5 -1
- package/es/components/table/src/hooks/useEdit.d.ts +24 -7
- package/es/components/table/src/utils/form-model.d.ts +25 -0
- package/es/components/table/src/utils/util.d.ts +1 -0
- package/es/index.d.ts +271 -5
- package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs +35 -0
- package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs.map +1 -0
- package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs +129 -0
- package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs.map +1 -0
- package/es/packages/components/table/src/components/Body/BodyEditCell.mjs +292 -0
- package/es/packages/components/table/src/components/Body/BodyEditCell.mjs.map +1 -0
- package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs +63 -8
- package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs +24 -18
- package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/{BodyCell.mjs → BodyTextCell.mjs} +25 -155
- package/es/packages/components/table/src/components/Body/BodyTextCell.mjs.map +1 -0
- package/es/packages/components/table/src/components/InteralTable.vue.mjs +24 -25
- package/es/packages/components/table/src/components/InteralTable.vue.mjs.map +1 -1
- package/es/packages/components/table/src/components/InteralTable.vue2.mjs +36 -97
- package/es/packages/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/Table.mjs +24 -20
- package/es/packages/components/table/src/components/Table.mjs.map +1 -1
- package/es/packages/components/table/src/components/context/TableContext.mjs.map +1 -1
- package/es/packages/components/table/src/components/interface.mjs +24 -0
- package/es/packages/components/table/src/components/interface.mjs.map +1 -1
- package/es/packages/components/table/src/hooks/useCellProps.mjs +8 -0
- package/es/packages/components/table/src/hooks/useCellProps.mjs.map +1 -1
- package/es/packages/components/table/src/hooks/useEdit.mjs +293 -18
- package/es/packages/components/table/src/hooks/useEdit.mjs.map +1 -1
- package/es/packages/components/table/src/utils/form-model.mjs +98 -0
- package/es/packages/components/table/src/utils/form-model.mjs.map +1 -0
- package/es/packages/components/table/src/utils/util.mjs +4 -1
- package/es/packages/components/table/src/utils/util.mjs.map +1 -1
- package/es/packages/utils/dom.mjs +15 -1
- package/es/packages/utils/dom.mjs.map +1 -1
- package/es/packages/utils/index.mjs +1 -1
- package/es/utils/dom.d.ts +2 -0
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/config-provider/src/typing.d.ts +1 -0
- package/lib/components/table/src/components/Body/Body.vue.d.ts +261 -15
- package/lib/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
- package/lib/components/table/src/components/Body/BodyEditCell.d.ts +61 -0
- package/lib/components/table/src/components/Body/BodyRow.vue.d.ts +261 -15
- package/lib/components/table/src/components/Body/BodyRows.vue.d.ts +261 -15
- package/lib/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
- package/lib/components/table/src/components/InteralTable.vue.d.ts +314 -19
- package/lib/components/table/src/components/Table.d.ts +51 -0
- package/lib/components/table/src/components/context/TableContext.d.ts +4 -0
- package/lib/components/table/src/components/interface.d.ts +290 -23
- package/lib/components/table/src/hooks/useCellProps.d.ts +5 -1
- package/lib/components/table/src/hooks/useEdit.d.ts +24 -7
- package/lib/components/table/src/utils/form-model.d.ts +25 -0
- package/lib/components/table/src/utils/util.d.ts +1 -0
- package/lib/index.d.ts +271 -5
- package/lib/packages/components/table/src/components/Body/BodyCell.vue.js +39 -0
- package/lib/packages/components/table/src/components/Body/BodyCell.vue.js.map +1 -0
- package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js +133 -0
- package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js.map +1 -0
- package/lib/packages/components/table/src/components/Body/BodyEditCell.js +297 -0
- package/lib/packages/components/table/src/components/Body/BodyEditCell.js.map +1 -0
- package/lib/packages/components/table/src/components/Body/BodyRow.vue.js +63 -8
- package/lib/packages/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js +22 -16
- package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/{BodyCell.js → BodyTextCell.js} +24 -154
- package/lib/packages/components/table/src/components/Body/BodyTextCell.js.map +1 -0
- package/lib/packages/components/table/src/components/InteralTable.vue.js +24 -25
- package/lib/packages/components/table/src/components/InteralTable.vue.js.map +1 -1
- package/lib/packages/components/table/src/components/InteralTable.vue2.js +36 -97
- package/lib/packages/components/table/src/components/InteralTable.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/Table.js +24 -20
- package/lib/packages/components/table/src/components/Table.js.map +1 -1
- package/lib/packages/components/table/src/components/context/TableContext.js.map +1 -1
- package/lib/packages/components/table/src/components/interface.js +24 -0
- package/lib/packages/components/table/src/components/interface.js.map +1 -1
- package/lib/packages/components/table/src/hooks/useCellProps.js +8 -0
- package/lib/packages/components/table/src/hooks/useCellProps.js.map +1 -1
- package/lib/packages/components/table/src/hooks/useEdit.js +292 -17
- package/lib/packages/components/table/src/hooks/useEdit.js.map +1 -1
- package/lib/packages/components/table/src/utils/form-model.js +102 -0
- package/lib/packages/components/table/src/utils/form-model.js.map +1 -0
- package/lib/packages/components/table/src/utils/util.js +4 -0
- package/lib/packages/components/table/src/utils/util.js.map +1 -1
- package/lib/packages/utils/dom.js +16 -0
- package/lib/packages/utils/dom.js.map +1 -1
- package/lib/packages/utils/index.js +2 -0
- package/lib/packages/utils/index.js.map +1 -1
- package/lib/utils/dom.d.ts +2 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/table/table.less +40 -2
- package/es/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
- package/es/packages/components/table/src/components/Body/BodyCell.mjs.map +0 -1
- package/es/packages/components/table/src/components/Body/EditInput.vue.mjs +0 -48
- package/es/packages/components/table/src/components/Body/EditInput.vue.mjs.map +0 -1
- package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs +0 -151
- package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs.map +0 -1
- package/lib/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
- package/lib/packages/components/table/src/components/Body/BodyCell.js.map +0 -1
- package/lib/packages/components/table/src/components/Body/EditInput.vue.js +0 -52
- package/lib/packages/components/table/src/components/Body/EditInput.vue.js.map +0 -1
- package/lib/packages/components/table/src/components/Body/EditInput.vue2.js +0 -155
- package/lib/packages/components/table/src/components/Body/EditInput.vue2.js.map +0 -1
package/dist/index.full.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! Pro Design Vue v1.3.
|
|
1
|
+
/*! Pro Design Vue v1.3.23 */
|
|
2
2
|
|
|
3
3
|
import { Modal, theme as theme$1, ConfigProvider, App, Button as Button$1, Tooltip, Popconfirm, Dropdown, Menu, Slider, Drawer, Input, InputNumber, Form as Form$1, Space, Textarea, Select, TreeSelect, Checkbox as Checkbox$1, CheckboxGroup, RadioGroup, Radio as Radio$1, Cascader, Switch, Rate, DatePicker, RangePicker, TimePicker, TimeRangePicker, Upload, FormItemRest, Spin, message, Row as Row$1, Col, FormItem as FormItem$1, Steps, Popover, MenuItem, SubMenu, Empty, Badge, Tag, Pagination, InputSearch, Tree, Card, Tabs, TabPane } from 'ant-design-vue';
|
|
4
|
-
import { inject, ref, getCurrentInstance, nextTick, h, reactive, defineComponent, createVNode, isVNode, Fragment, cloneVNode, provide, watch, computed, renderSlot, createPropsRestProxy, createBlock, openBlock, unref, mergeProps, withCtx, normalizeProps, guardReactiveProps, shallowRef, shallowReadonly, toValue, getCurrentScope, onScopeDispose, onMounted, hasInjectionContext, isRef, toRefs as toRefs$1, customRef, toRef as toRef$1, readonly, watchEffect, toRaw, createElementBlock, createCommentVNode, resolveDynamicComponent, createElementVNode, normalizeStyle, toDisplayString, normalizeClass, createSlots, createTextVNode, useAttrs, useTemplateRef, Teleport, onUnmounted, Comment as Comment$1, useSlots, useModel, withModifiers, mergeModels, renderList, camelize, isReactive, onActivated, onDeactivated,
|
|
4
|
+
import { inject, ref, getCurrentInstance, nextTick, h, reactive, defineComponent, createVNode, isVNode, Fragment, cloneVNode, provide, watch, computed, renderSlot, createPropsRestProxy, createBlock, openBlock, unref, mergeProps, withCtx, normalizeProps, guardReactiveProps, shallowRef, shallowReadonly, toValue, getCurrentScope, onScopeDispose, onMounted, hasInjectionContext, isRef, toRefs as toRefs$1, customRef, toRef as toRef$1, readonly, watchEffect, toRaw, createElementBlock, createCommentVNode, resolveDynamicComponent, createElementVNode, normalizeStyle, toDisplayString, normalizeClass, createSlots, createTextVNode, useAttrs, useTemplateRef, Teleport, onUnmounted, Comment as Comment$1, useSlots, useModel, withModifiers, mergeModels, renderList, camelize, isReactive, onActivated, onDeactivated, triggerRef, onBeforeUnmount, resolveDirective, withDirectives, vShow, render as render$1, resolveComponent } from 'vue';
|
|
5
5
|
import antdDefaultLocale from 'ant-design-vue/es/locale/zh_CN.js';
|
|
6
6
|
|
|
7
7
|
function _mergeNamespaces(n, m) {
|
|
@@ -30,7 +30,7 @@ const SCROLL_FIXED_CLASS = `_scroll__fixed_`;
|
|
|
30
30
|
const DEFAULT_NAMESPACE = "pro";
|
|
31
31
|
const DEFAULT_LOCALE = "zh-CN";
|
|
32
32
|
|
|
33
|
-
const version$1 = "1.3.
|
|
33
|
+
const version$1 = "1.3.23";
|
|
34
34
|
|
|
35
35
|
const makeInstaller = (components = []) => {
|
|
36
36
|
const install = (app) => {
|
|
@@ -764,7 +764,7 @@ function updateCSS(css, key) {
|
|
|
764
764
|
return newNode;
|
|
765
765
|
}
|
|
766
766
|
|
|
767
|
-
function _objectSpread$
|
|
767
|
+
function _objectSpread$v(target) {
|
|
768
768
|
for (var i = 1; i < arguments.length; i++) {
|
|
769
769
|
var source = arguments[i] != null ? Object(arguments[i]) : {};
|
|
770
770
|
var ownKeys = Object.keys(source);
|
|
@@ -774,12 +774,12 @@ function _objectSpread$u(target) {
|
|
|
774
774
|
}));
|
|
775
775
|
}
|
|
776
776
|
ownKeys.forEach(function(key) {
|
|
777
|
-
_defineProperty$
|
|
777
|
+
_defineProperty$w(target, key, source[key]);
|
|
778
778
|
});
|
|
779
779
|
}
|
|
780
780
|
return target;
|
|
781
781
|
}
|
|
782
|
-
function _defineProperty$
|
|
782
|
+
function _defineProperty$w(obj, key, value) {
|
|
783
783
|
if (key in obj) {
|
|
784
784
|
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
785
785
|
} else {
|
|
@@ -800,13 +800,13 @@ function isIconDefinition(target) {
|
|
|
800
800
|
}
|
|
801
801
|
function generate(node, key, rootProps) {
|
|
802
802
|
if (!rootProps) {
|
|
803
|
-
return h(node.tag, _objectSpread$
|
|
803
|
+
return h(node.tag, _objectSpread$v({
|
|
804
804
|
key
|
|
805
805
|
}, node.attrs), (node.children || []).map(function(child, index) {
|
|
806
806
|
return generate(child, "".concat(key, "-").concat(node.tag, "-").concat(index));
|
|
807
807
|
}));
|
|
808
808
|
}
|
|
809
|
-
return h(node.tag, _objectSpread$
|
|
809
|
+
return h(node.tag, _objectSpread$v({
|
|
810
810
|
key
|
|
811
811
|
}, rootProps, node.attrs), (node.children || []).map(function(child, index) {
|
|
812
812
|
return generate(child, "".concat(key, "-").concat(node.tag, "-").concat(index));
|
|
@@ -890,7 +890,7 @@ function _objectWithoutPropertiesLoose$2(source, excluded) {
|
|
|
890
890
|
}
|
|
891
891
|
return target;
|
|
892
892
|
}
|
|
893
|
-
function _objectSpread$
|
|
893
|
+
function _objectSpread$u(target) {
|
|
894
894
|
for (var i = 1; i < arguments.length; i++) {
|
|
895
895
|
var source = arguments[i] != null ? Object(arguments[i]) : {};
|
|
896
896
|
var ownKeys = Object.keys(source);
|
|
@@ -900,12 +900,12 @@ function _objectSpread$t(target) {
|
|
|
900
900
|
}));
|
|
901
901
|
}
|
|
902
902
|
ownKeys.forEach(function(key) {
|
|
903
|
-
_defineProperty$
|
|
903
|
+
_defineProperty$v(target, key, source[key]);
|
|
904
904
|
});
|
|
905
905
|
}
|
|
906
906
|
return target;
|
|
907
907
|
}
|
|
908
|
-
function _defineProperty$
|
|
908
|
+
function _defineProperty$v(obj, key, value) {
|
|
909
909
|
if (key in obj) {
|
|
910
910
|
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
911
911
|
} else {
|
|
@@ -925,10 +925,10 @@ function setTwoToneColors(_ref) {
|
|
|
925
925
|
twoToneColorPalette.calculated = !!secondaryColor;
|
|
926
926
|
}
|
|
927
927
|
function getTwoToneColors() {
|
|
928
|
-
return _objectSpread$
|
|
928
|
+
return _objectSpread$u({}, twoToneColorPalette);
|
|
929
929
|
}
|
|
930
930
|
var IconBase = function IconBase2(props, context) {
|
|
931
|
-
var _props$context$attrs = _objectSpread$
|
|
931
|
+
var _props$context$attrs = _objectSpread$u({}, props, context.attrs), icon = _props$context$attrs.icon, primaryColor = _props$context$attrs.primaryColor, secondaryColor = _props$context$attrs.secondaryColor, restProps = _objectWithoutProperties$2(_props$context$attrs, _excluded$2);
|
|
932
932
|
var colors = twoToneColorPalette;
|
|
933
933
|
if (primaryColor) {
|
|
934
934
|
colors = {
|
|
@@ -942,11 +942,11 @@ var IconBase = function IconBase2(props, context) {
|
|
|
942
942
|
}
|
|
943
943
|
var target = icon;
|
|
944
944
|
if (target && typeof target.icon === "function") {
|
|
945
|
-
target = _objectSpread$
|
|
945
|
+
target = _objectSpread$u({}, target, {
|
|
946
946
|
icon: target.icon(colors.primaryColor, colors.secondaryColor)
|
|
947
947
|
});
|
|
948
948
|
}
|
|
949
|
-
return generate(target.icon, "svg-".concat(target.name), _objectSpread$
|
|
949
|
+
return generate(target.icon, "svg-".concat(target.name), _objectSpread$u({}, restProps, {
|
|
950
950
|
"data-icon": target.name,
|
|
951
951
|
width: "1em",
|
|
952
952
|
height: "1em",
|
|
@@ -1087,7 +1087,7 @@ function _iterableToArrayLimit(arr, i) {
|
|
|
1087
1087
|
function _arrayWithHoles(arr) {
|
|
1088
1088
|
if (Array.isArray(arr)) return arr;
|
|
1089
1089
|
}
|
|
1090
|
-
function _objectSpread$
|
|
1090
|
+
function _objectSpread$t(target) {
|
|
1091
1091
|
for (var i = 1; i < arguments.length; i++) {
|
|
1092
1092
|
var source = arguments[i] != null ? Object(arguments[i]) : {};
|
|
1093
1093
|
var ownKeys = Object.keys(source);
|
|
@@ -1097,12 +1097,12 @@ function _objectSpread$s(target) {
|
|
|
1097
1097
|
}));
|
|
1098
1098
|
}
|
|
1099
1099
|
ownKeys.forEach(function(key) {
|
|
1100
|
-
_defineProperty$
|
|
1100
|
+
_defineProperty$u(target, key, source[key]);
|
|
1101
1101
|
});
|
|
1102
1102
|
}
|
|
1103
1103
|
return target;
|
|
1104
1104
|
}
|
|
1105
|
-
function _defineProperty$
|
|
1105
|
+
function _defineProperty$u(obj, key, value) {
|
|
1106
1106
|
if (key in obj) {
|
|
1107
1107
|
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
1108
1108
|
} else {
|
|
@@ -1140,9 +1140,9 @@ function _objectWithoutPropertiesLoose$1(source, excluded) {
|
|
|
1140
1140
|
setTwoToneColor(blue.primary);
|
|
1141
1141
|
var Icon$1 = function Icon2(props, context) {
|
|
1142
1142
|
var _classObj;
|
|
1143
|
-
var _props$context$attrs = _objectSpread$
|
|
1143
|
+
var _props$context$attrs = _objectSpread$t({}, props, context.attrs), cls = _props$context$attrs["class"], icon = _props$context$attrs.icon, spin = _props$context$attrs.spin, rotate = _props$context$attrs.rotate, tabindex = _props$context$attrs.tabindex, twoToneColor = _props$context$attrs.twoToneColor, onClick = _props$context$attrs.onClick, restProps = _objectWithoutProperties$1(_props$context$attrs, _excluded$1);
|
|
1144
1144
|
var _useInjectIconContext = useInjectIconContext(), prefixCls = _useInjectIconContext.prefixCls, rootClassName = _useInjectIconContext.rootClassName;
|
|
1145
|
-
var classObj = (_classObj = {}, _defineProperty$
|
|
1145
|
+
var classObj = (_classObj = {}, _defineProperty$u(_classObj, rootClassName.value, !!rootClassName.value), _defineProperty$u(_classObj, prefixCls.value, true), _defineProperty$u(_classObj, "".concat(prefixCls.value, "-").concat(icon.name), Boolean(icon.name)), _defineProperty$u(_classObj, "".concat(prefixCls.value, "-spin"), !!spin || icon.name === "loading"), _classObj);
|
|
1146
1146
|
var iconTabIndex = tabindex;
|
|
1147
1147
|
if (iconTabIndex === void 0 && onClick) {
|
|
1148
1148
|
iconTabIndex = -1;
|
|
@@ -1152,7 +1152,7 @@ var Icon$1 = function Icon2(props, context) {
|
|
|
1152
1152
|
transform: "rotate(".concat(rotate, "deg)")
|
|
1153
1153
|
} : void 0;
|
|
1154
1154
|
var _normalizeTwoToneColo = normalizeTwoToneColors(twoToneColor), _normalizeTwoToneColo2 = _slicedToArray(_normalizeTwoToneColo, 2), primaryColor = _normalizeTwoToneColo2[0], secondaryColor = _normalizeTwoToneColo2[1];
|
|
1155
|
-
return createVNode("span", _objectSpread$
|
|
1155
|
+
return createVNode("span", _objectSpread$t({
|
|
1156
1156
|
"role": "img",
|
|
1157
1157
|
"aria-label": icon.name
|
|
1158
1158
|
}, restProps, {
|
|
@@ -1179,7 +1179,7 @@ Icon$1.setTwoToneColor = setTwoToneColor;
|
|
|
1179
1179
|
|
|
1180
1180
|
var CaretDownOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z" } }] }, "name": "caret-down", "theme": "outlined" };
|
|
1181
1181
|
|
|
1182
|
-
function _objectSpread$
|
|
1182
|
+
function _objectSpread$s(target) {
|
|
1183
1183
|
for (var i = 1; i < arguments.length; i++) {
|
|
1184
1184
|
var source = arguments[i] != null ? Object(arguments[i]) : {};
|
|
1185
1185
|
var ownKeys = Object.keys(source);
|
|
@@ -1189,12 +1189,12 @@ function _objectSpread$r(target) {
|
|
|
1189
1189
|
}));
|
|
1190
1190
|
}
|
|
1191
1191
|
ownKeys.forEach(function(key) {
|
|
1192
|
-
_defineProperty$
|
|
1192
|
+
_defineProperty$t(target, key, source[key]);
|
|
1193
1193
|
});
|
|
1194
1194
|
}
|
|
1195
1195
|
return target;
|
|
1196
1196
|
}
|
|
1197
|
-
function _defineProperty$
|
|
1197
|
+
function _defineProperty$t(obj, key, value) {
|
|
1198
1198
|
if (key in obj) {
|
|
1199
1199
|
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
1200
1200
|
} else {
|
|
@@ -1203,8 +1203,8 @@ function _defineProperty$s(obj, key, value) {
|
|
|
1203
1203
|
return obj;
|
|
1204
1204
|
}
|
|
1205
1205
|
var CaretDownOutlined = function CaretDownOutlined2(props, context) {
|
|
1206
|
-
var p = _objectSpread$
|
|
1207
|
-
return createVNode(Icon$1, _objectSpread$
|
|
1206
|
+
var p = _objectSpread$s({}, props, context.attrs);
|
|
1207
|
+
return createVNode(Icon$1, _objectSpread$s({}, p, {
|
|
1208
1208
|
"icon": CaretDownOutlined$1
|
|
1209
1209
|
}), null);
|
|
1210
1210
|
};
|
|
@@ -1213,7 +1213,7 @@ CaretDownOutlined.inheritAttrs = false;
|
|
|
1213
1213
|
|
|
1214
1214
|
var CaretUpOutlined$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M858.9 689L530.5 308.2c-9.4-10.9-27.5-10.9-37 0L165.1 689c-12.2 14.2-1.2 35 18.5 35h656.8c19.7 0 30.7-20.8 18.5-35z" } }] }, "name": "caret-up", "theme": "outlined" };
|
|
1215
1215
|
|
|
1216
|
-
function _objectSpread$
|
|
1216
|
+
function _objectSpread$r(target) {
|
|
1217
1217
|
for (var i = 1; i < arguments.length; i++) {
|
|
1218
1218
|
var source = arguments[i] != null ? Object(arguments[i]) : {};
|
|
1219
1219
|
var ownKeys = Object.keys(source);
|
|
@@ -1223,12 +1223,12 @@ function _objectSpread$q(target) {
|
|
|
1223
1223
|
}));
|
|
1224
1224
|
}
|
|
1225
1225
|
ownKeys.forEach(function(key) {
|
|
1226
|
-
_defineProperty$
|
|
1226
|
+
_defineProperty$s(target, key, source[key]);
|
|
1227
1227
|
});
|
|
1228
1228
|
}
|
|
1229
1229
|
return target;
|
|
1230
1230
|
}
|
|
1231
|
-
function _defineProperty$
|
|
1231
|
+
function _defineProperty$s(obj, key, value) {
|
|
1232
1232
|
if (key in obj) {
|
|
1233
1233
|
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
1234
1234
|
} else {
|
|
@@ -1237,8 +1237,8 @@ function _defineProperty$r(obj, key, value) {
|
|
|
1237
1237
|
return obj;
|
|
1238
1238
|
}
|
|
1239
1239
|
var CaretUpOutlined = function CaretUpOutlined2(props, context) {
|
|
1240
|
-
var p = _objectSpread$
|
|
1241
|
-
return createVNode(Icon$1, _objectSpread$
|
|
1240
|
+
var p = _objectSpread$r({}, props, context.attrs);
|
|
1241
|
+
return createVNode(Icon$1, _objectSpread$r({}, p, {
|
|
1242
1242
|
"icon": CaretUpOutlined$1
|
|
1243
1243
|
}), null);
|
|
1244
1244
|
};
|
|
@@ -1247,6 +1247,40 @@ CaretUpOutlined.inheritAttrs = false;
|
|
|
1247
1247
|
|
|
1248
1248
|
var CheckCircleFilled$1 = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm193.5 301.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.2 0 19.9 4.9 25.9 13.3l71.2 98.8 157.2-218c6-8.3 15.6-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.5 12.7z" } }] }, "name": "check-circle", "theme": "filled" };
|
|
1249
1249
|
|
|
1250
|
+
function _objectSpread$q(target) {
|
|
1251
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
1252
|
+
var source = arguments[i] != null ? Object(arguments[i]) : {};
|
|
1253
|
+
var ownKeys = Object.keys(source);
|
|
1254
|
+
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
1255
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
1256
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
1257
|
+
}));
|
|
1258
|
+
}
|
|
1259
|
+
ownKeys.forEach(function(key) {
|
|
1260
|
+
_defineProperty$r(target, key, source[key]);
|
|
1261
|
+
});
|
|
1262
|
+
}
|
|
1263
|
+
return target;
|
|
1264
|
+
}
|
|
1265
|
+
function _defineProperty$r(obj, key, value) {
|
|
1266
|
+
if (key in obj) {
|
|
1267
|
+
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
1268
|
+
} else {
|
|
1269
|
+
obj[key] = value;
|
|
1270
|
+
}
|
|
1271
|
+
return obj;
|
|
1272
|
+
}
|
|
1273
|
+
var CheckCircleFilled = function CheckCircleFilled2(props, context) {
|
|
1274
|
+
var p = _objectSpread$q({}, props, context.attrs);
|
|
1275
|
+
return createVNode(Icon$1, _objectSpread$q({}, p, {
|
|
1276
|
+
"icon": CheckCircleFilled$1
|
|
1277
|
+
}), null);
|
|
1278
|
+
};
|
|
1279
|
+
CheckCircleFilled.displayName = "CheckCircleFilled";
|
|
1280
|
+
CheckCircleFilled.inheritAttrs = false;
|
|
1281
|
+
|
|
1282
|
+
var CloseCircleFilled$1 = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm127.98 274.82h-.04l-.08.06L512 466.75 384.14 338.88c-.04-.05-.06-.06-.08-.06a.12.12 0 00-.07 0c-.03 0-.05.01-.09.05l-45.02 45.02a.2.2 0 00-.05.09.12.12 0 000 .07v.02a.27.27 0 00.06.06L466.75 512 338.88 639.86c-.05.04-.06.06-.06.08a.12.12 0 000 .07c0 .03.01.05.05.09l45.02 45.02a.2.2 0 00.09.05.12.12 0 00.07 0c.02 0 .04-.01.08-.05L512 557.25l127.86 127.87c.04.04.06.05.08.05a.12.12 0 00.07 0c.03 0 .05-.01.09-.05l45.02-45.02a.2.2 0 00.05-.09.12.12 0 000-.07v-.02a.27.27 0 00-.05-.06L557.25 512l127.87-127.86c.04-.04.05-.06.05-.08a.12.12 0 000-.07c0-.03-.01-.05-.05-.09l-45.02-45.02a.2.2 0 00-.09-.05.12.12 0 00-.07 0z" } }] }, "name": "close-circle", "theme": "filled" };
|
|
1283
|
+
|
|
1250
1284
|
function _objectSpread$p(target) {
|
|
1251
1285
|
for (var i = 1; i < arguments.length; i++) {
|
|
1252
1286
|
var source = arguments[i] != null ? Object(arguments[i]) : {};
|
|
@@ -1270,14 +1304,14 @@ function _defineProperty$q(obj, key, value) {
|
|
|
1270
1304
|
}
|
|
1271
1305
|
return obj;
|
|
1272
1306
|
}
|
|
1273
|
-
var
|
|
1307
|
+
var CloseCircleFilled = function CloseCircleFilled2(props, context) {
|
|
1274
1308
|
var p = _objectSpread$p({}, props, context.attrs);
|
|
1275
1309
|
return createVNode(Icon$1, _objectSpread$p({}, p, {
|
|
1276
|
-
"icon":
|
|
1310
|
+
"icon": CloseCircleFilled$1
|
|
1277
1311
|
}), null);
|
|
1278
1312
|
};
|
|
1279
|
-
|
|
1280
|
-
|
|
1313
|
+
CloseCircleFilled.displayName = "CloseCircleFilled";
|
|
1314
|
+
CloseCircleFilled.inheritAttrs = false;
|
|
1281
1315
|
|
|
1282
1316
|
var CloseOutlined$1 = { "icon": { "tag": "svg", "attrs": { "fill-rule": "evenodd", "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M799.86 166.31c.02 0 .04.02.08.06l57.69 57.7c.04.03.05.05.06.08a.12.12 0 010 .06c0 .03-.02.05-.06.09L569.93 512l287.7 287.7c.04.04.05.06.06.09a.12.12 0 010 .07c0 .02-.02.04-.06.08l-57.7 57.69c-.03.04-.05.05-.07.06a.12.12 0 01-.07 0c-.03 0-.05-.02-.09-.06L512 569.93l-287.7 287.7c-.04.04-.06.05-.09.06a.12.12 0 01-.07 0c-.02 0-.04-.02-.08-.06l-57.69-57.7c-.04-.03-.05-.05-.06-.07a.12.12 0 010-.07c0-.03.02-.05.06-.09L454.07 512l-287.7-287.7c-.04-.04-.05-.06-.06-.09a.12.12 0 010-.07c0-.02.02-.04.06-.08l57.7-57.69c.03-.04.05-.05.07-.06a.12.12 0 01.07 0c.03 0 .05.02.09.06L512 454.07l287.7-287.7c.04-.04.06-.05.09-.06a.12.12 0 01.07 0z" } }] }, "name": "close", "theme": "outlined" };
|
|
1283
1317
|
|
|
@@ -2216,6 +2250,18 @@ function is$1(val, type) {
|
|
|
2216
2250
|
function isObject$4(val) {
|
|
2217
2251
|
return val !== null && is$1(val, "Object");
|
|
2218
2252
|
}
|
|
2253
|
+
function isEmpty(val) {
|
|
2254
|
+
if (isArray$2(val) || isString$1(val)) {
|
|
2255
|
+
return val.length === 0;
|
|
2256
|
+
}
|
|
2257
|
+
if (val instanceof Map || val instanceof Set) {
|
|
2258
|
+
return val.size === 0;
|
|
2259
|
+
}
|
|
2260
|
+
if (isObject$4(val)) {
|
|
2261
|
+
return Object.keys(val).length === 0;
|
|
2262
|
+
}
|
|
2263
|
+
return false;
|
|
2264
|
+
}
|
|
2219
2265
|
const isNil = (value) => value === null || value === void 0;
|
|
2220
2266
|
function isNumber$2(val) {
|
|
2221
2267
|
return is$1(val, "Number");
|
|
@@ -2229,6 +2275,9 @@ function isString$1(val) {
|
|
|
2229
2275
|
function isFunction$2(val) {
|
|
2230
2276
|
return typeof val === "function";
|
|
2231
2277
|
}
|
|
2278
|
+
function isBoolean(val) {
|
|
2279
|
+
return is$1(val, "Boolean");
|
|
2280
|
+
}
|
|
2232
2281
|
function isArray$2(val) {
|
|
2233
2282
|
return val && Array.isArray(val);
|
|
2234
2283
|
}
|
|
@@ -23737,6 +23786,9 @@ const genColumnKey = (key, index) => {
|
|
|
23737
23786
|
function getColumnPos(index, pos) {
|
|
23738
23787
|
return pos ? `${pos}-${index}` : `${index}`;
|
|
23739
23788
|
}
|
|
23789
|
+
function getCellKey(rowKey, colKey) {
|
|
23790
|
+
return [rowKey, colKey].join("_");
|
|
23791
|
+
}
|
|
23740
23792
|
function objectToEmpty(obj) {
|
|
23741
23793
|
for (const key in obj) Object.prototype.hasOwnProperty.call(obj, key) && delete obj[key];
|
|
23742
23794
|
}
|
|
@@ -24057,6 +24109,10 @@ const baseTableProps = () => ({
|
|
|
24057
24109
|
type: Boolean,
|
|
24058
24110
|
default: void 0
|
|
24059
24111
|
},
|
|
24112
|
+
selectRowByClick: {
|
|
24113
|
+
type: Boolean,
|
|
24114
|
+
default: void 0
|
|
24115
|
+
},
|
|
24060
24116
|
expandIcon: {
|
|
24061
24117
|
type: Function,
|
|
24062
24118
|
default: void 0
|
|
@@ -24119,6 +24175,14 @@ const baseTableProps = () => ({
|
|
|
24119
24175
|
type: Function,
|
|
24120
24176
|
default: () => ({})
|
|
24121
24177
|
},
|
|
24178
|
+
editableKeys: {
|
|
24179
|
+
type: Array,
|
|
24180
|
+
default: void 0
|
|
24181
|
+
},
|
|
24182
|
+
rowEditable: {
|
|
24183
|
+
type: Object,
|
|
24184
|
+
default: void 0
|
|
24185
|
+
},
|
|
24122
24186
|
showHeader: {
|
|
24123
24187
|
type: Boolean,
|
|
24124
24188
|
default: true
|
|
@@ -24217,6 +24281,9 @@ const baseTableProps = () => ({
|
|
|
24217
24281
|
type: Boolean,
|
|
24218
24282
|
default: void 0
|
|
24219
24283
|
},
|
|
24284
|
+
editableCellState: {
|
|
24285
|
+
type: Function
|
|
24286
|
+
},
|
|
24220
24287
|
paginationSticky: {
|
|
24221
24288
|
type: [Boolean, Object],
|
|
24222
24289
|
default: true
|
|
@@ -24270,6 +24337,15 @@ const baseTableProps = () => ({
|
|
|
24270
24337
|
type: Function,
|
|
24271
24338
|
default: void 0
|
|
24272
24339
|
},
|
|
24340
|
+
onDataChange: {
|
|
24341
|
+
type: Function
|
|
24342
|
+
},
|
|
24343
|
+
onRowValidate: {
|
|
24344
|
+
type: Function
|
|
24345
|
+
},
|
|
24346
|
+
onValidate: {
|
|
24347
|
+
type: Function
|
|
24348
|
+
},
|
|
24273
24349
|
"onUpdate:pagination": {
|
|
24274
24350
|
type: Function
|
|
24275
24351
|
},
|
|
@@ -25022,41 +25098,305 @@ const ICON_TYPE_DOWN$1 = "ICON_TYPE_DOWN";
|
|
|
25022
25098
|
const ICON_TYPE_FORBID$1 = "ICON_TYPE_FORBID";
|
|
25023
25099
|
|
|
25024
25100
|
const EditKey = Symbol("edit");
|
|
25025
|
-
const useEditProvider = (
|
|
25101
|
+
const useEditProvider = (props, {
|
|
25102
|
+
rawData,
|
|
25103
|
+
getRowKey,
|
|
25104
|
+
getIndexsByKey,
|
|
25105
|
+
getRecordByKey
|
|
25106
|
+
}) => {
|
|
25107
|
+
var _a;
|
|
25026
25108
|
const editCellKeys = shallowRef([]);
|
|
25027
|
-
const
|
|
25028
|
-
const
|
|
25109
|
+
const editRowsMap = shallowRef({});
|
|
25110
|
+
const intl = useIntl();
|
|
25111
|
+
const editableType = computed(() => {
|
|
25112
|
+
var _a2;
|
|
25113
|
+
return (_a2 = props.rowEditable) == null ? void 0 : _a2.type;
|
|
25114
|
+
});
|
|
25115
|
+
const [mergedEditableKeys, setMergedEditableKeys] = useMergedState$1([], {
|
|
25116
|
+
value: computed(() => {
|
|
25117
|
+
var _a2;
|
|
25118
|
+
return props.editableKeys || ((_a2 = props.rowEditable) == null ? void 0 : _a2.editableKeys);
|
|
25119
|
+
}),
|
|
25120
|
+
onChange: ((_a = props.rowEditable) == null ? void 0 : _a.onChange) ? (keys) => {
|
|
25121
|
+
var _a2, _b, _c;
|
|
25122
|
+
(_c = (_a2 = props.rowEditable) == null ? void 0 : _a2.onChange) == null ? void 0 : _c.call(
|
|
25123
|
+
_a2,
|
|
25124
|
+
// 计算编辑的key
|
|
25125
|
+
keys != null ? keys : [],
|
|
25126
|
+
(_b = keys == null ? void 0 : keys.map((key) => editRowsMap.value[key])) != null ? _b : []
|
|
25127
|
+
);
|
|
25128
|
+
} : void 0
|
|
25129
|
+
});
|
|
25130
|
+
const editingCells = ref({});
|
|
25131
|
+
const newLineRecordCache = shallowRef({});
|
|
25132
|
+
const editableKeysSet = computed(() => {
|
|
25133
|
+
var _a2;
|
|
25134
|
+
const keys = editableType.value === "single" ? (_a2 = mergedEditableKeys.value) == null ? void 0 : _a2.slice(0, 1) : mergedEditableKeys.value;
|
|
25135
|
+
return new Set(keys);
|
|
25136
|
+
});
|
|
25137
|
+
const isEditable = (recordKey) => {
|
|
25138
|
+
var _a2;
|
|
25139
|
+
if ((_a2 = mergedEditableKeys.value) == null ? void 0 : _a2.includes(recordKey)) return true;
|
|
25140
|
+
return false;
|
|
25141
|
+
};
|
|
25142
|
+
const isRowEdit = computed(() => !!editableType.value);
|
|
25143
|
+
const openEditor = (key) => {
|
|
25029
25144
|
if (key) {
|
|
25145
|
+
const newKeys = [...editCellKeys.value];
|
|
25030
25146
|
if (Array.isArray(key)) {
|
|
25031
25147
|
editCellKeys.value = key;
|
|
25032
25148
|
} else {
|
|
25033
|
-
|
|
25149
|
+
newKeys.includes(key) || newKeys.push(key);
|
|
25034
25150
|
}
|
|
25035
|
-
|
|
25151
|
+
editCellKeys.value = newKeys;
|
|
25036
25152
|
}
|
|
25037
25153
|
};
|
|
25038
25154
|
const closeEditor = (key) => {
|
|
25039
|
-
|
|
25040
|
-
|
|
25041
|
-
|
|
25042
|
-
return;
|
|
25155
|
+
const closeKeys = editCellKeys.value.filter((cellKey) => cellKey !== key);
|
|
25156
|
+
const closeCells = closeKeys.map((key2) => editingCells.value[key2]).filter((cell) => {
|
|
25157
|
+
var _a2, _b;
|
|
25158
|
+
return cell && !((_b = (_a2 = cell.column) == null ? void 0 : _a2.edit) == null ? void 0 : _b.keepEditMode);
|
|
25159
|
+
});
|
|
25160
|
+
const list = closeCells.map(
|
|
25161
|
+
(cell) => new Promise((resolve) => {
|
|
25162
|
+
cell == null ? void 0 : cell.validateEdit().then((r) => {
|
|
25163
|
+
if (r === true) {
|
|
25164
|
+
const cellKey = getCellKey(cell.rowKey, cell.columnKey);
|
|
25165
|
+
resolve(cellKey);
|
|
25166
|
+
} else {
|
|
25167
|
+
resolve(null);
|
|
25168
|
+
}
|
|
25169
|
+
});
|
|
25170
|
+
})
|
|
25171
|
+
);
|
|
25172
|
+
Promise.all(list).then((keys) => {
|
|
25173
|
+
const closeKeys2 = keys.filter((key2) => !!key2);
|
|
25174
|
+
editCellKeys.value = editCellKeys.value.filter((key2) => !closeKeys2.includes(key2));
|
|
25175
|
+
});
|
|
25176
|
+
};
|
|
25177
|
+
const setEditingCell = (params, isEdit) => {
|
|
25178
|
+
const cellKey = getCellKey(params.rowKey, params.columnKey);
|
|
25179
|
+
if (isEdit) {
|
|
25180
|
+
editingCells.value[cellKey] = params;
|
|
25181
|
+
} else {
|
|
25182
|
+
delete editingCells.value[cellKey];
|
|
25043
25183
|
}
|
|
25044
|
-
|
|
25045
|
-
|
|
25046
|
-
|
|
25047
|
-
|
|
25184
|
+
};
|
|
25185
|
+
const getErrorListMapByErrors = (errors) => {
|
|
25186
|
+
const errorMap = {};
|
|
25187
|
+
errors.forEach(({ rowKey, columnKey, errorList }) => {
|
|
25188
|
+
const key = [rowKey, columnKey].join("__");
|
|
25189
|
+
if (errorList == null ? void 0 : errorList.length) {
|
|
25190
|
+
errorMap[key] = errorList;
|
|
25191
|
+
} else {
|
|
25192
|
+
delete errorMap[key];
|
|
25193
|
+
}
|
|
25194
|
+
});
|
|
25195
|
+
return errorMap;
|
|
25196
|
+
};
|
|
25197
|
+
const validateOneRowData = (recordKey) => {
|
|
25198
|
+
const cellKeys = Object.keys(editingCells.value);
|
|
25199
|
+
const rowCellKeys = cellKeys.filter((cellKey) => cellKey.startsWith(`${recordKey}_`));
|
|
25200
|
+
const list = rowCellKeys.map(
|
|
25201
|
+
(cellKey) => new Promise((resolve) => {
|
|
25202
|
+
const cell = editingCells.value[cellKey];
|
|
25203
|
+
cell == null ? void 0 : cell.validateEdit().then((r) => {
|
|
25204
|
+
if (r === true) {
|
|
25205
|
+
resolve({ ...cell, errorList: [] });
|
|
25206
|
+
} else {
|
|
25207
|
+
resolve({ ...cell, errorList: r });
|
|
25208
|
+
}
|
|
25209
|
+
});
|
|
25210
|
+
})
|
|
25211
|
+
);
|
|
25212
|
+
return new Promise((resolve, reject) => {
|
|
25213
|
+
Promise.all(list).then((errors) => {
|
|
25214
|
+
resolve({
|
|
25215
|
+
errors: errors.filter((t) => {
|
|
25216
|
+
var _a2;
|
|
25217
|
+
return (_a2 = t.errorList) == null ? void 0 : _a2.length;
|
|
25218
|
+
}),
|
|
25219
|
+
errorMap: getErrorListMapByErrors(errors)
|
|
25220
|
+
});
|
|
25221
|
+
}, reject);
|
|
25222
|
+
});
|
|
25223
|
+
};
|
|
25224
|
+
const validateRowData = (recordKey) => new Promise((resolve, reject) => {
|
|
25225
|
+
validateOneRowData(recordKey).then(({ errors, errorMap }) => {
|
|
25226
|
+
var _a2;
|
|
25227
|
+
(_a2 = props.onRowValidate) == null ? void 0 : _a2.call(props, { errors, errorMap });
|
|
25228
|
+
resolve({ errors, errorMap });
|
|
25229
|
+
}, reject);
|
|
25230
|
+
});
|
|
25231
|
+
const validateTableCellData = () => {
|
|
25232
|
+
const cellKeys = Object.keys(editingCells.value);
|
|
25233
|
+
const list = cellKeys.map(
|
|
25234
|
+
(cellKey) => new Promise((resolve) => {
|
|
25235
|
+
const cell = editingCells.value[cellKey];
|
|
25236
|
+
cell == null ? void 0 : cell.validateEdit().then((r) => {
|
|
25237
|
+
if (r === true) {
|
|
25238
|
+
resolve({ ...cell, errorList: [] });
|
|
25239
|
+
} else {
|
|
25240
|
+
resolve({ ...cell, errorList: r });
|
|
25241
|
+
}
|
|
25242
|
+
});
|
|
25243
|
+
})
|
|
25244
|
+
);
|
|
25245
|
+
return new Promise((resolve, reject) => {
|
|
25246
|
+
Promise.all(list).then((errors) => {
|
|
25247
|
+
resolve({
|
|
25248
|
+
errors: errors.filter((t) => {
|
|
25249
|
+
var _a2;
|
|
25250
|
+
return (_a2 = t.errorList) == null ? void 0 : _a2.length;
|
|
25251
|
+
}),
|
|
25252
|
+
errorMap: getErrorListMapByErrors(errors)
|
|
25253
|
+
});
|
|
25254
|
+
}, reject);
|
|
25048
25255
|
});
|
|
25049
25256
|
};
|
|
25257
|
+
const validateTableData = () => new Promise((resolve, reject) => {
|
|
25258
|
+
validateTableCellData().then(({ errors, errorMap }) => {
|
|
25259
|
+
var _a2;
|
|
25260
|
+
(_a2 = props.onValidate) == null ? void 0 : _a2.call(props, { errors, errorMap });
|
|
25261
|
+
resolve({ errors, errorMap, data: (errors == null ? void 0 : errors.length) ? void 0 : rawData.value });
|
|
25262
|
+
}, reject);
|
|
25263
|
+
});
|
|
25264
|
+
const addEditRecord = (recordValue, options) => {
|
|
25265
|
+
var _a2, _b, _c, _d;
|
|
25266
|
+
if (isRowEdit.value && ((_a2 = Object.keys(newLineRecordCache.value)) == null ? void 0 : _a2.length) && ((_b = props.rowEditable) == null ? void 0 : _b.onlyAddOneLineAlertMessage) !== false) {
|
|
25267
|
+
message.warning(
|
|
25268
|
+
((_c = props.rowEditable) == null ? void 0 : _c.onlyAddOneLineAlertMessage) || intl.getMessage("editableTable.onlyAddOneLine", "\u53EA\u80FD\u65B0\u589E\u4E00\u884C")
|
|
25269
|
+
);
|
|
25270
|
+
return false;
|
|
25271
|
+
}
|
|
25272
|
+
if (isRowEdit.value && editableKeysSet.value.size > 0 && editableType.value === "single") {
|
|
25273
|
+
message.warning(
|
|
25274
|
+
((_d = props.rowEditable) == null ? void 0 : _d.onlyOneLineEditorAlertMessage) || intl.getMessage("editableTable.onlyOneLineEditor", "\u53EA\u80FD\u540C\u65F6\u7F16\u8F91\u4E00\u884C")
|
|
25275
|
+
);
|
|
25276
|
+
return false;
|
|
25277
|
+
}
|
|
25278
|
+
const recordKey = getRowKey.value(recordValue, -1);
|
|
25279
|
+
if (!recordKey) {
|
|
25280
|
+
throw new Error("\u8BF7\u8BBE\u7F6E recordCreatorProps.record \u5E76\u8FD4\u56DE\u4E00\u4E2A\u552F\u4E00\u7684key");
|
|
25281
|
+
}
|
|
25282
|
+
if (isRowEdit.value) {
|
|
25283
|
+
editableKeysSet.value.add(recordKey);
|
|
25284
|
+
editRowsMap.value[recordKey] = cloneDeep(recordValue);
|
|
25285
|
+
setMergedEditableKeys(Array.from(editableKeysSet.value));
|
|
25286
|
+
triggerRef(editRowsMap);
|
|
25287
|
+
}
|
|
25288
|
+
if ((options == null ? void 0 : options.position) === "top") {
|
|
25289
|
+
rawData.value.unshift(recordValue);
|
|
25290
|
+
} else {
|
|
25291
|
+
rawData.value.push(recordValue);
|
|
25292
|
+
}
|
|
25293
|
+
newLineRecordCache.value[recordKey] = {
|
|
25294
|
+
defaultValue: recordValue,
|
|
25295
|
+
options
|
|
25296
|
+
};
|
|
25297
|
+
triggerRef(rawData);
|
|
25298
|
+
return true;
|
|
25299
|
+
};
|
|
25300
|
+
const startEditable = (recordKey, recordValue) => {
|
|
25301
|
+
var _a2;
|
|
25302
|
+
if (!isRowEdit.value) {
|
|
25303
|
+
return false;
|
|
25304
|
+
}
|
|
25305
|
+
if (editableKeysSet.value.size > 0 && editableType.value === "single") {
|
|
25306
|
+
message.warning(
|
|
25307
|
+
((_a2 = props.rowEditable) == null ? void 0 : _a2.onlyOneLineEditorAlertMessage) || intl.getMessage("editableTable.onlyOneLineEditor", "\u53EA\u80FD\u540C\u65F6\u7F16\u8F91\u4E00\u884C")
|
|
25308
|
+
);
|
|
25309
|
+
return false;
|
|
25310
|
+
}
|
|
25311
|
+
editableKeysSet.value.add(recordKey);
|
|
25312
|
+
editRowsMap.value[recordKey] = cloneDeep(recordValue != null ? recordValue : getRecordByKey(recordKey));
|
|
25313
|
+
setMergedEditableKeys(Array.from(editableKeysSet.value));
|
|
25314
|
+
triggerRef(editRowsMap);
|
|
25315
|
+
return true;
|
|
25316
|
+
};
|
|
25317
|
+
const cancelEditable = (recordKey) => {
|
|
25318
|
+
if (!isRowEdit.value) {
|
|
25319
|
+
return false;
|
|
25320
|
+
}
|
|
25321
|
+
const newLineRecord = newLineRecordCache.value[recordKey];
|
|
25322
|
+
if (newLineRecord) {
|
|
25323
|
+
delete newLineRecordCache.value[recordKey];
|
|
25324
|
+
const rowIndex = rawData.value.findIndex((item) => getRowKey.value(item, -1) === recordKey);
|
|
25325
|
+
rawData.value.splice(rowIndex, 1);
|
|
25326
|
+
triggerRef(rawData);
|
|
25327
|
+
}
|
|
25328
|
+
editableKeysSet.value.delete(recordKey);
|
|
25329
|
+
delete editRowsMap.value[recordKey];
|
|
25330
|
+
setMergedEditableKeys(Array.from(editableKeysSet.value));
|
|
25331
|
+
return true;
|
|
25332
|
+
};
|
|
25333
|
+
const saveEditable = async (recordKey) => {
|
|
25334
|
+
var _a2, _b;
|
|
25335
|
+
if (!isRowEdit.value) {
|
|
25336
|
+
return false;
|
|
25337
|
+
}
|
|
25338
|
+
const { errors } = await validateRowData(recordKey);
|
|
25339
|
+
if (!!errors.length) {
|
|
25340
|
+
return false;
|
|
25341
|
+
}
|
|
25342
|
+
const editRow = editRowsMap.value[recordKey];
|
|
25343
|
+
const originRow = getRecordByKey(recordKey);
|
|
25344
|
+
const success = await ((_b = (_a2 = props.rowEditable) == null ? void 0 : _a2.onSave) == null ? void 0 : _b.call(_a2, recordKey, editRow, originRow));
|
|
25345
|
+
if (success === false) {
|
|
25346
|
+
return false;
|
|
25347
|
+
}
|
|
25348
|
+
upadteRowData(recordKey, editRow);
|
|
25349
|
+
const newLineRecord = newLineRecordCache.value[recordKey];
|
|
25350
|
+
if (newLineRecord) {
|
|
25351
|
+
delete newLineRecordCache.value[recordKey];
|
|
25352
|
+
}
|
|
25353
|
+
await cancelEditable(recordKey);
|
|
25354
|
+
return true;
|
|
25355
|
+
};
|
|
25356
|
+
const upadteRowData = (recordKey, editRow) => {
|
|
25357
|
+
const recordIndexs = getIndexsByKey(recordKey);
|
|
25358
|
+
const indexsLen = recordIndexs.length;
|
|
25359
|
+
if (indexsLen === 1) {
|
|
25360
|
+
rawData.value.splice(recordIndexs[0], 1, editRow);
|
|
25361
|
+
}
|
|
25362
|
+
if (indexsLen > 1) {
|
|
25363
|
+
let copyData = rawData.value;
|
|
25364
|
+
let item;
|
|
25365
|
+
const childrenColumnName = props.childrenColumnName || "children";
|
|
25366
|
+
for (let i = 0; i < indexsLen; i++) {
|
|
25367
|
+
item = copyData[recordIndexs[i]];
|
|
25368
|
+
if (i === indexsLen - 2) {
|
|
25369
|
+
const currentData = (item == null ? void 0 : item[childrenColumnName]) || [];
|
|
25370
|
+
currentData.splice(recordIndexs[indexsLen - 1], 1, editRow);
|
|
25371
|
+
break;
|
|
25372
|
+
}
|
|
25373
|
+
copyData = (item == null ? void 0 : item[childrenColumnName]) || [];
|
|
25374
|
+
}
|
|
25375
|
+
}
|
|
25376
|
+
triggerRef(rawData);
|
|
25377
|
+
};
|
|
25050
25378
|
provide(EditKey, {
|
|
25051
25379
|
editCellKeys,
|
|
25052
25380
|
openEditor,
|
|
25053
25381
|
closeEditor,
|
|
25054
|
-
oldValuesMap
|
|
25382
|
+
// oldValuesMap,
|
|
25383
|
+
editableType,
|
|
25384
|
+
mergedEditableKeys,
|
|
25385
|
+
isRowEdit,
|
|
25386
|
+
editRowsMap,
|
|
25387
|
+
setEditingCell
|
|
25055
25388
|
});
|
|
25056
25389
|
return {
|
|
25057
25390
|
editCellKeys,
|
|
25058
25391
|
openEditor,
|
|
25059
|
-
closeEditor
|
|
25392
|
+
closeEditor,
|
|
25393
|
+
cancelEditable,
|
|
25394
|
+
startEditable,
|
|
25395
|
+
saveEditable,
|
|
25396
|
+
isEditable,
|
|
25397
|
+
validateTableData,
|
|
25398
|
+
validateRowData,
|
|
25399
|
+
addEditRecord
|
|
25060
25400
|
};
|
|
25061
25401
|
};
|
|
25062
25402
|
const useEditInject = () => {
|
|
@@ -25066,7 +25406,13 @@ const useEditInject = () => {
|
|
|
25066
25406
|
},
|
|
25067
25407
|
closeEditor: () => {
|
|
25068
25408
|
},
|
|
25069
|
-
oldValuesMap: shallowRef({})
|
|
25409
|
+
// oldValuesMap: shallowRef({}),
|
|
25410
|
+
editRowsMap: shallowRef({}),
|
|
25411
|
+
editableType: computed(() => void 0),
|
|
25412
|
+
isRowEdit: computed(() => false),
|
|
25413
|
+
mergedEditableKeys: computed(() => []),
|
|
25414
|
+
setEditingCell: () => {
|
|
25415
|
+
}
|
|
25070
25416
|
});
|
|
25071
25417
|
};
|
|
25072
25418
|
|
|
@@ -25317,926 +25663,6 @@ const useInjectTable = () => {
|
|
|
25317
25663
|
return inject(TableContextKey, {});
|
|
25318
25664
|
};
|
|
25319
25665
|
|
|
25320
|
-
const KeyCode = {
|
|
25321
|
-
TAB: 9,
|
|
25322
|
-
ENTER: 13,
|
|
25323
|
-
ESC: 27,
|
|
25324
|
-
LEFT: 37,
|
|
25325
|
-
UP: 38,
|
|
25326
|
-
RIGHT: 39,
|
|
25327
|
-
DOWN: 40,
|
|
25328
|
-
A: 65,
|
|
25329
|
-
C: 67};
|
|
25330
|
-
|
|
25331
|
-
const useCellNavigation = (params) => {
|
|
25332
|
-
const {
|
|
25333
|
-
getDisplayedColBefore,
|
|
25334
|
-
getDisplayedColAfter,
|
|
25335
|
-
allDisplayedColumns,
|
|
25336
|
-
setRangeToCell,
|
|
25337
|
-
focusCell,
|
|
25338
|
-
flattenData,
|
|
25339
|
-
getRowByFlattenIndex,
|
|
25340
|
-
allCellProps,
|
|
25341
|
-
tabGuardTopRef,
|
|
25342
|
-
tabGuardBottomRef
|
|
25343
|
-
} = params;
|
|
25344
|
-
const endFlattenIndex = computed(
|
|
25345
|
-
() => {
|
|
25346
|
-
var _a;
|
|
25347
|
-
return (_a = flattenData.value[flattenData.value.length - 1]) == null ? void 0 : _a.flattenIndex;
|
|
25348
|
-
}
|
|
25349
|
-
);
|
|
25350
|
-
const startFlattenIndex = computed(() => {
|
|
25351
|
-
var _a;
|
|
25352
|
-
return (_a = flattenData.value[0]) == null ? void 0 : _a.flattenIndex;
|
|
25353
|
-
});
|
|
25354
|
-
const getNextCellToFocus = (keyCode, focusedCell, ctrlPressed = false) => ctrlPressed ? h2(keyCode, focusedCell) : m(keyCode, focusedCell);
|
|
25355
|
-
const h2 = (keyCode, focusedCell) => {
|
|
25356
|
-
const isUp = keyCode === KeyCode.UP;
|
|
25357
|
-
const isDown = keyCode === KeyCode.DOWN;
|
|
25358
|
-
const isLeft = keyCode === KeyCode.LEFT;
|
|
25359
|
-
let column, rowIndex;
|
|
25360
|
-
if (isUp || isDown) {
|
|
25361
|
-
rowIndex = isUp ? startFlattenIndex.value : endFlattenIndex.value;
|
|
25362
|
-
column = focusedCell.column;
|
|
25363
|
-
} else {
|
|
25364
|
-
rowIndex = focusedCell.rowIndex;
|
|
25365
|
-
column = isLeft !== false ? allDisplayedColumns.value[0] : allDisplayedColumns.value[allDisplayedColumns.value.length - 1];
|
|
25366
|
-
}
|
|
25367
|
-
return { rowIndex, rowPinned: null, column };
|
|
25368
|
-
};
|
|
25369
|
-
const m = (keyCode, focusedCell) => {
|
|
25370
|
-
let cell = focusedCell;
|
|
25371
|
-
let o2 = false;
|
|
25372
|
-
for (; !o2; ) {
|
|
25373
|
-
switch (keyCode) {
|
|
25374
|
-
case KeyCode.UP:
|
|
25375
|
-
cell = getCellAbove(cell);
|
|
25376
|
-
break;
|
|
25377
|
-
case KeyCode.DOWN:
|
|
25378
|
-
case KeyCode.ENTER:
|
|
25379
|
-
cell = x(cell);
|
|
25380
|
-
break;
|
|
25381
|
-
case KeyCode.RIGHT:
|
|
25382
|
-
cell = w(cell);
|
|
25383
|
-
break;
|
|
25384
|
-
case KeyCode.LEFT:
|
|
25385
|
-
cell = g(cell);
|
|
25386
|
-
break;
|
|
25387
|
-
default:
|
|
25388
|
-
cell = null;
|
|
25389
|
-
console.warn("Table: unknown key for navigation " + keyCode);
|
|
25390
|
-
}
|
|
25391
|
-
o2 = !cell || y(cell);
|
|
25392
|
-
}
|
|
25393
|
-
return cell;
|
|
25394
|
-
}, y = (e3) => {
|
|
25395
|
-
let t2;
|
|
25396
|
-
switch (e3.rowPinned) {
|
|
25397
|
-
case "top":
|
|
25398
|
-
case "bottom":
|
|
25399
|
-
break;
|
|
25400
|
-
default:
|
|
25401
|
-
t2 = getRowByFlattenIndex(e3.rowIndex);
|
|
25402
|
-
}
|
|
25403
|
-
return !!t2;
|
|
25404
|
-
}, g = (e3) => {
|
|
25405
|
-
if (!e3) return null;
|
|
25406
|
-
const n2 = getDisplayedColBefore(e3.column);
|
|
25407
|
-
return n2 ? { rowIndex: e3.rowIndex, column: n2, rowPinned: e3.rowPinned } : null;
|
|
25408
|
-
}, w = (e3) => {
|
|
25409
|
-
if (!e3) return null;
|
|
25410
|
-
const t2 = getDisplayedColAfter(e3.column);
|
|
25411
|
-
return t2 ? { rowIndex: e3.rowIndex, column: t2, rowPinned: e3.rowPinned } : null;
|
|
25412
|
-
}, x = (e3) => {
|
|
25413
|
-
if (!e3) return null;
|
|
25414
|
-
const t2 = getRowBelow(e3);
|
|
25415
|
-
return t2 ? { rowIndex: t2.rowIndex, column: e3.column, rowPinned: t2.rowPinned } : null;
|
|
25416
|
-
}, getRowBelow = (e3) => {
|
|
25417
|
-
const t2 = e3.rowIndex, n2 = e3.rowPinned;
|
|
25418
|
-
return C(e3) ? null : { rowIndex: t2 + 1, rowPinned: n2 };
|
|
25419
|
-
}, C = (e3) => {
|
|
25420
|
-
const t2 = e3.rowIndex;
|
|
25421
|
-
return endFlattenIndex.value <= t2;
|
|
25422
|
-
}, getRowAbove = (e3) => {
|
|
25423
|
-
const t2 = e3.rowIndex, n2 = e3.rowPinned;
|
|
25424
|
-
return (n2 ? 0 === t2 : t2 === startFlattenIndex.value) ? null : { rowIndex: t2 - 1, rowPinned: n2 };
|
|
25425
|
-
}, getCellAbove = (e3) => {
|
|
25426
|
-
if (!e3) return null;
|
|
25427
|
-
const t2 = getRowAbove({
|
|
25428
|
-
rowIndex: e3.rowIndex,
|
|
25429
|
-
rowPinned: e3.rowPinned
|
|
25430
|
-
});
|
|
25431
|
-
return t2 ? { rowIndex: t2.rowIndex, column: e3.column, rowPinned: t2.rowPinned } : null;
|
|
25432
|
-
}, k = (e3) => e3.rowIndex >= startFlattenIndex.value && e3.rowIndex <= endFlattenIndex.value, getNextTabbedCell = (e3, t2) => t2 ? K(e3) : _(e3), _ = (e3) => {
|
|
25433
|
-
const t2 = allDisplayedColumns.value;
|
|
25434
|
-
let l2 = e3.rowIndex, r2 = e3.rowPinned, a2 = getDisplayedColAfter(e3.column);
|
|
25435
|
-
if (!a2) {
|
|
25436
|
-
a2 = t2[0];
|
|
25437
|
-
const n2 = getRowBelow(e3);
|
|
25438
|
-
if (!n2) return null;
|
|
25439
|
-
if (!n2.rowPinned && !k(n2)) return null;
|
|
25440
|
-
l2 = n2 ? n2.rowIndex : null, r2 = n2 ? n2.rowPinned : null;
|
|
25441
|
-
}
|
|
25442
|
-
return { rowIndex: l2, column: a2, rowPinned: r2 };
|
|
25443
|
-
}, K = (e3) => {
|
|
25444
|
-
const n2 = allDisplayedColumns.value;
|
|
25445
|
-
let l2 = e3.rowIndex, r2 = e3.rowPinned, a2 = getDisplayedColBefore(e3.column);
|
|
25446
|
-
if (!a2) {
|
|
25447
|
-
a2 = n2[n2.length - 1];
|
|
25448
|
-
const t2 = getRowAbove({
|
|
25449
|
-
rowIndex: e3.rowIndex,
|
|
25450
|
-
rowPinned: e3.rowPinned
|
|
25451
|
-
});
|
|
25452
|
-
if (!t2) return null;
|
|
25453
|
-
if (!t2.rowPinned && !k(t2)) return null;
|
|
25454
|
-
l2 = t2 ? t2.rowIndex : null, r2 = t2 ? t2.rowPinned : null;
|
|
25455
|
-
}
|
|
25456
|
-
return { rowIndex: l2, column: a2, rowPinned: r2 };
|
|
25457
|
-
}, O = (e3) => {
|
|
25458
|
-
const t2 = ((e4) => {
|
|
25459
|
-
let t3, n2;
|
|
25460
|
-
const l2 = null === (t3 = getRowByFlattenIndex(e4.rowIndex)) || void 0 === t3 ? void 0 : t3.rowKey, r2 = (((null === (n2 = allCellProps.value[l2]) || void 0 === n2 ? void 0 : n2[e4.column.columnKey]) || {}).props || {}).colSpan, a2 = [];
|
|
25461
|
-
if (r2 > 1) {
|
|
25462
|
-
const t4 = allDisplayedColumns.value.findIndex(
|
|
25463
|
-
(t5) => t5.columnKey === e4.column.columnKey
|
|
25464
|
-
);
|
|
25465
|
-
for (let e5 = 0; e5 < r2; e5++) a2.push(allDisplayedColumns.value[t4 + e5]);
|
|
25466
|
-
} else a2.push(e4.column);
|
|
25467
|
-
return a2.filter((e5) => !!e5);
|
|
25468
|
-
})(e3);
|
|
25469
|
-
return 1 === t2.length ? e3 : {
|
|
25470
|
-
rowIndex: e3.rowIndex,
|
|
25471
|
-
column: t2[t2.length - 1],
|
|
25472
|
-
rowPinned: e3.rowPinned
|
|
25473
|
-
};
|
|
25474
|
-
}, P = (e3) => {
|
|
25475
|
-
let t2;
|
|
25476
|
-
const n2 = getRowByFlattenIndex(e3.rowIndex), o2 = null == n2 ? void 0 : n2.rowKey, l2 = (((null === (t2 = allCellProps.value[o2]) || void 0 === t2 ? void 0 : t2[e3.column.columnKey]) || {}).props || {}).rowSpan;
|
|
25477
|
-
return !!n2 && 0 !== l2 && !n2.isExpandRow;
|
|
25478
|
-
}, tabToNextCellCommon = (e3, t2) => $(e3, t2), $ = (e3, t2) => {
|
|
25479
|
-
const n2 = T(e3, t2);
|
|
25480
|
-
return n2 && focusCell(n2), !!n2;
|
|
25481
|
-
}, T = (t2, n2) => {
|
|
25482
|
-
let o2 = t2;
|
|
25483
|
-
for (; o2 && (o2 === t2 || !P(o2)); ) n2 || (o2 = O(o2)), o2 = getNextTabbedCell(o2, n2);
|
|
25484
|
-
return o2 ? o2.rowIndex < 0 ? null : (params.ensureCellVisible(o2), setRangeToCell(o2), o2) : null;
|
|
25485
|
-
};
|
|
25486
|
-
return {
|
|
25487
|
-
getNextCellToFocus,
|
|
25488
|
-
getNextTabbedCell,
|
|
25489
|
-
getLastBodyCell: () => ({ rowIndex: endFlattenIndex.value, rowPinned: null }),
|
|
25490
|
-
navigateToNextCell: (t2, n2) => {
|
|
25491
|
-
const o2 = t2.keyCode;
|
|
25492
|
-
let r2 = n2, a2 = false;
|
|
25493
|
-
for (; r2 && (r2 === n2 || !P(r2)); )
|
|
25494
|
-
o2 === KeyCode.RIGHT && (r2 = O(r2)), r2 = getNextCellToFocus(o2, r2), a2 = !r2;
|
|
25495
|
-
a2 && t2 && o2 === KeyCode.UP && (r2 = { rowIndex: -1, rowPinned: null, column: n2.column }), r2 && (r2.rowIndex < 0 || (params.ensureCellVisible(r2), setRangeToCell(r2)));
|
|
25496
|
-
},
|
|
25497
|
-
onTabKeyDown: (e3, t2) => {
|
|
25498
|
-
let n2, o2;
|
|
25499
|
-
const l2 = t2.shiftKey;
|
|
25500
|
-
tabToNextCellCommon(e3, l2) || (l2 ? null === (n2 = tabGuardTopRef.value) || void 0 === n2 || n2.focus() : null === (o2 = tabGuardBottomRef.value) || void 0 === o2 || o2.focus()), t2.preventDefault();
|
|
25501
|
-
},
|
|
25502
|
-
tabToNextCellCommon,
|
|
25503
|
-
getFirstCellToFocus: (t2) => {
|
|
25504
|
-
const n2 = (() => {
|
|
25505
|
-
const e3 = getRowByFlattenIndex(startFlattenIndex.value), t3 = allDisplayedColumns.value[0];
|
|
25506
|
-
return e3 && t3 ? { rowIndex: e3.rowIndex, rowPinned: null, column: t3 } : null;
|
|
25507
|
-
})();
|
|
25508
|
-
P(n2) ? (params.ensureCellVisible(n2), setRangeToCell(n2)) : n2 && tabToNextCellCommon(n2, t2);
|
|
25509
|
-
},
|
|
25510
|
-
getLastCellToFocus: (t2) => {
|
|
25511
|
-
const n2 = (() => {
|
|
25512
|
-
const e3 = getRowByFlattenIndex(endFlattenIndex.value), t3 = allDisplayedColumns.value[allDisplayedColumns.value.length - 1];
|
|
25513
|
-
return e3 && t3 ? { rowIndex: e3.rowIndex, rowPinned: null, column: t3 } : null;
|
|
25514
|
-
})();
|
|
25515
|
-
P(n2) ? (params.ensureCellVisible(n2), setRangeToCell(n2)) : n2 && tabToNextCellCommon(n2, t2);
|
|
25516
|
-
},
|
|
25517
|
-
getRowAbove,
|
|
25518
|
-
getCellAbove,
|
|
25519
|
-
getRowBelow
|
|
25520
|
-
};
|
|
25521
|
-
};
|
|
25522
|
-
|
|
25523
|
-
const useAutoScroll = (params) => {
|
|
25524
|
-
const {
|
|
25525
|
-
scrollContainer,
|
|
25526
|
-
scrollAxis,
|
|
25527
|
-
onScrollCallback = () => {
|
|
25528
|
-
},
|
|
25529
|
-
showVerticalScrollbar,
|
|
25530
|
-
showHorizontalScrollbar
|
|
25531
|
-
} = params;
|
|
25532
|
-
let timer = null;
|
|
25533
|
-
let i = 0;
|
|
25534
|
-
let hasLeft = false;
|
|
25535
|
-
let hasRight = false;
|
|
25536
|
-
let hasTop = false;
|
|
25537
|
-
let hasBottom = false;
|
|
25538
|
-
const isXAxis = -1 !== scrollAxis.indexOf("x");
|
|
25539
|
-
const isYAxis = -1 !== scrollAxis.indexOf("y");
|
|
25540
|
-
const scrollByTick = computed(() => {
|
|
25541
|
-
var _a, _b;
|
|
25542
|
-
return (_b = (_a = params.scrollByTick) == null ? void 0 : _a.value) != null ? _b : 20;
|
|
25543
|
-
});
|
|
25544
|
-
const exec = () => {
|
|
25545
|
-
if (null === timer) {
|
|
25546
|
-
timer = window.setInterval(handle, 100);
|
|
25547
|
-
i = 0;
|
|
25548
|
-
}
|
|
25549
|
-
};
|
|
25550
|
-
const handle = () => {
|
|
25551
|
-
i++;
|
|
25552
|
-
const boundary = i > 20 ? 200 : i > 10 ? 80 : 40;
|
|
25553
|
-
if (isYAxis) {
|
|
25554
|
-
const position = params.getVerticalPosition();
|
|
25555
|
-
hasTop && params.setVerticalPosition(position - boundary), hasBottom && params.setVerticalPosition(position + boundary);
|
|
25556
|
-
}
|
|
25557
|
-
if (isXAxis) {
|
|
25558
|
-
const position = params.getHorizontalPosition();
|
|
25559
|
-
hasLeft && params.setHorizontalPosition(position - boundary), hasRight && params.setHorizontalPosition(position + boundary);
|
|
25560
|
-
}
|
|
25561
|
-
onScrollCallback();
|
|
25562
|
-
};
|
|
25563
|
-
const clear = () => {
|
|
25564
|
-
if (timer) {
|
|
25565
|
-
window.clearInterval(timer);
|
|
25566
|
-
timer = null;
|
|
25567
|
-
}
|
|
25568
|
-
};
|
|
25569
|
-
return {
|
|
25570
|
-
check: (mouseEvent, forceSkipVerticalScroll = false) => {
|
|
25571
|
-
const hasVerticalScroll = forceSkipVerticalScroll || !showVerticalScrollbar.value;
|
|
25572
|
-
if (hasVerticalScroll && !showHorizontalScrollbar.value) return;
|
|
25573
|
-
const clientRect = scrollContainer.value.getBoundingClientRect();
|
|
25574
|
-
const tick = scrollByTick.value;
|
|
25575
|
-
hasLeft = mouseEvent.clientX < clientRect.left + tick;
|
|
25576
|
-
hasRight = mouseEvent.clientX > clientRect.right - tick;
|
|
25577
|
-
hasTop = mouseEvent.clientY < clientRect.top + tick && !hasVerticalScroll;
|
|
25578
|
-
hasBottom = mouseEvent.clientY > clientRect.bottom - tick && !hasVerticalScroll;
|
|
25579
|
-
return hasLeft || hasRight || hasTop || hasBottom ? exec() : clear();
|
|
25580
|
-
},
|
|
25581
|
-
ensureCleared: clear
|
|
25582
|
-
};
|
|
25583
|
-
};
|
|
25584
|
-
|
|
25585
|
-
const isOverFormFieldElement = (mouseEvent) => {
|
|
25586
|
-
var _a, _b;
|
|
25587
|
-
const tagName = (_b = (_a = mouseEvent.target) == null ? void 0 : _a.tagName) == null ? void 0 : _b.toLocaleLowerCase();
|
|
25588
|
-
return !!(tagName == null ? void 0 : tagName.match("^a$|textarea|input|select|button"));
|
|
25589
|
-
};
|
|
25590
|
-
const useDragSelection = (params) => {
|
|
25591
|
-
let dragging = false;
|
|
25592
|
-
let cacheStartTouch = null;
|
|
25593
|
-
let startTarget = null;
|
|
25594
|
-
let cacheTouch;
|
|
25595
|
-
const destroyHandlers = [];
|
|
25596
|
-
const batchEvent = (eventList) => {
|
|
25597
|
-
eventList.forEach((config) => {
|
|
25598
|
-
const { target, type, listener, options } = config;
|
|
25599
|
-
target.addEventListener(type, listener, options);
|
|
25600
|
-
});
|
|
25601
|
-
destroyHandlers.push(() => {
|
|
25602
|
-
eventList.forEach((config) => {
|
|
25603
|
-
const { target, type, listener, options } = config;
|
|
25604
|
-
target.removeEventListener(type, listener, options);
|
|
25605
|
-
});
|
|
25606
|
-
});
|
|
25607
|
-
};
|
|
25608
|
-
const getTouch = (touches) => {
|
|
25609
|
-
for (let i = 0; i < touches.length; i++) {
|
|
25610
|
-
if (touches[i].identifier === (cacheTouch == null ? void 0 : cacheTouch.identifier)) {
|
|
25611
|
-
return touches[i];
|
|
25612
|
-
}
|
|
25613
|
-
}
|
|
25614
|
-
return null;
|
|
25615
|
-
};
|
|
25616
|
-
const handleMouseMoveOrTouchMove = (event, cacheEvent) => {
|
|
25617
|
-
if (!dragging) {
|
|
25618
|
-
if (eventsClose(event, cacheEvent, DRAG_BUFF)) {
|
|
25619
|
-
return;
|
|
25620
|
-
}
|
|
25621
|
-
dragging = true;
|
|
25622
|
-
params.onDragStart(cacheEvent);
|
|
25623
|
-
}
|
|
25624
|
-
};
|
|
25625
|
-
const handleMouseUpOrToucheEnd = () => {
|
|
25626
|
-
if (dragging) {
|
|
25627
|
-
dragging = false;
|
|
25628
|
-
}
|
|
25629
|
-
cacheStartTouch = null;
|
|
25630
|
-
startTarget = null;
|
|
25631
|
-
cacheTouch = null;
|
|
25632
|
-
destroyHandlers.forEach((fn) => fn());
|
|
25633
|
-
destroyHandlers.length = 0;
|
|
25634
|
-
};
|
|
25635
|
-
const isOverForm = (event) => !isOverFormFieldElement(event);
|
|
25636
|
-
const mouseMoveHandler = (event) => {
|
|
25637
|
-
if (isOverForm(event)) {
|
|
25638
|
-
event.preventDefault();
|
|
25639
|
-
}
|
|
25640
|
-
handleMouseMoveOrTouchMove(event, cacheStartTouch);
|
|
25641
|
-
};
|
|
25642
|
-
const touchMoveHandler = (event) => {
|
|
25643
|
-
getTouch(event.touches) && handleMouseMoveOrTouchMove(event, cacheStartTouch);
|
|
25644
|
-
};
|
|
25645
|
-
const touchEndHandler = (event) => {
|
|
25646
|
-
getTouch(event.changedTouches) && handleMouseUpOrToucheEnd();
|
|
25647
|
-
};
|
|
25648
|
-
const onBodyMousedown = (e) => {
|
|
25649
|
-
var _a, _b;
|
|
25650
|
-
if (params.level !== ((_a = e.cellInfo) == null ? void 0 : _a.level)) return;
|
|
25651
|
-
if (isOverForm(e)) {
|
|
25652
|
-
e.preventDefault();
|
|
25653
|
-
}
|
|
25654
|
-
dragging = false;
|
|
25655
|
-
cacheStartTouch = e;
|
|
25656
|
-
startTarget = (_b = e.cellInfo) == null ? void 0 : _b.cellTarget;
|
|
25657
|
-
params.bodyElementRef.value;
|
|
25658
|
-
batchEvent([
|
|
25659
|
-
{
|
|
25660
|
-
target: document,
|
|
25661
|
-
type: "mousemove",
|
|
25662
|
-
listener: (e2) => mouseMoveHandler(e2)
|
|
25663
|
-
},
|
|
25664
|
-
{
|
|
25665
|
-
target: document,
|
|
25666
|
-
type: "mouseup",
|
|
25667
|
-
listener: () => {
|
|
25668
|
-
handleMouseUpOrToucheEnd();
|
|
25669
|
-
}
|
|
25670
|
-
},
|
|
25671
|
-
{
|
|
25672
|
-
target: document,
|
|
25673
|
-
type: "contextmenu",
|
|
25674
|
-
listener: (e2) => e2.preventDefault()
|
|
25675
|
-
}
|
|
25676
|
-
]);
|
|
25677
|
-
mouseMoveHandler(e);
|
|
25678
|
-
};
|
|
25679
|
-
let bodyTouchStartHandle;
|
|
25680
|
-
watch(
|
|
25681
|
-
[() => params.bodyElementRef.value, params.enableRangeSelection],
|
|
25682
|
-
([bodyEl], [oldBodyEl]) => {
|
|
25683
|
-
if (oldBodyEl) {
|
|
25684
|
-
oldBodyEl.removeEventListener("mousedown", onBodyMousedown);
|
|
25685
|
-
if (bodyTouchStartHandle) {
|
|
25686
|
-
oldBodyEl.removeEventListener("touchstart", bodyTouchStartHandle);
|
|
25687
|
-
bodyTouchStartHandle = null;
|
|
25688
|
-
destroyHandlers.forEach((fn) => fn());
|
|
25689
|
-
destroyHandlers.length = 0;
|
|
25690
|
-
}
|
|
25691
|
-
}
|
|
25692
|
-
if (bodyEl && params.enableRangeSelection.value) {
|
|
25693
|
-
bodyEl.addEventListener("mousedown", onBodyMousedown);
|
|
25694
|
-
bodyTouchStartHandle = (e3) => {
|
|
25695
|
-
e3.cancelable && (e3.preventDefault(), e3.stopPropagation());
|
|
25696
|
-
};
|
|
25697
|
-
}
|
|
25698
|
-
}
|
|
25699
|
-
);
|
|
25700
|
-
return {
|
|
25701
|
-
onBodyMousedown,
|
|
25702
|
-
onBodyTouchstart: (touchEvent) => {
|
|
25703
|
-
dragging = false;
|
|
25704
|
-
const touch = touchEvent.touches[0];
|
|
25705
|
-
cacheTouch = touch;
|
|
25706
|
-
params.bodyElementRef.value;
|
|
25707
|
-
const endHandle = (event) => touchEndHandler(event);
|
|
25708
|
-
const target = touchEvent.target;
|
|
25709
|
-
const body = document.body;
|
|
25710
|
-
batchEvent([
|
|
25711
|
-
{
|
|
25712
|
-
target: body,
|
|
25713
|
-
type: "touchmove",
|
|
25714
|
-
listener: (e) => {
|
|
25715
|
-
e.cancelable && e.preventDefault();
|
|
25716
|
-
},
|
|
25717
|
-
options: { passive: false }
|
|
25718
|
-
},
|
|
25719
|
-
{
|
|
25720
|
-
target,
|
|
25721
|
-
type: "touchmove",
|
|
25722
|
-
listener: (e) => touchMoveHandler(e),
|
|
25723
|
-
options: { passive: true }
|
|
25724
|
-
},
|
|
25725
|
-
{
|
|
25726
|
-
target,
|
|
25727
|
-
type: "touchend",
|
|
25728
|
-
listener: endHandle,
|
|
25729
|
-
options: { passive: true }
|
|
25730
|
-
},
|
|
25731
|
-
{
|
|
25732
|
-
target,
|
|
25733
|
-
type: "touchcancel",
|
|
25734
|
-
listener: endHandle,
|
|
25735
|
-
options: { passive: true }
|
|
25736
|
-
}
|
|
25737
|
-
]);
|
|
25738
|
-
},
|
|
25739
|
-
getStartTarget: () => startTarget
|
|
25740
|
-
};
|
|
25741
|
-
};
|
|
25742
|
-
|
|
25743
|
-
function classNames(...args) {
|
|
25744
|
-
const classes = [];
|
|
25745
|
-
for (let i = 0; i < args.length; i++) {
|
|
25746
|
-
const value = args[i];
|
|
25747
|
-
if (!value) continue;
|
|
25748
|
-
if (isString(value)) {
|
|
25749
|
-
classes.push(value);
|
|
25750
|
-
} else if (isArray(value)) {
|
|
25751
|
-
for (let i2 = 0; i2 < value.length; i2++) {
|
|
25752
|
-
const inner = classNames(value[i2]);
|
|
25753
|
-
if (inner) {
|
|
25754
|
-
classes.push(inner);
|
|
25755
|
-
}
|
|
25756
|
-
}
|
|
25757
|
-
} else if (isObject(value)) {
|
|
25758
|
-
for (const name in value) {
|
|
25759
|
-
if (value[name]) {
|
|
25760
|
-
classes.push(name);
|
|
25761
|
-
}
|
|
25762
|
-
}
|
|
25763
|
-
}
|
|
25764
|
-
}
|
|
25765
|
-
return classes.join(" ");
|
|
25766
|
-
}
|
|
25767
|
-
|
|
25768
|
-
const RangeSymbolKey = Symbol("rangeSymbolKey");
|
|
25769
|
-
const useProvideRangeStore = (parmas) => {
|
|
25770
|
-
const {
|
|
25771
|
-
allColumns,
|
|
25772
|
-
flattenData,
|
|
25773
|
-
prefixCls,
|
|
25774
|
-
rangeSelection,
|
|
25775
|
-
getRowByFlattenIndex,
|
|
25776
|
-
rootRef,
|
|
25777
|
-
bodyRef,
|
|
25778
|
-
latestRangeStartCell,
|
|
25779
|
-
scrollLeft,
|
|
25780
|
-
scrollTop,
|
|
25781
|
-
scrollTo,
|
|
25782
|
-
showVerticalScrollbar,
|
|
25783
|
-
showHorizontalScrollbar,
|
|
25784
|
-
getIndexsByKey,
|
|
25785
|
-
formatRangeCellText,
|
|
25786
|
-
copyDelimiter
|
|
25787
|
-
} = parmas;
|
|
25788
|
-
const level = useInjectLevel();
|
|
25789
|
-
useAutoScroll({
|
|
25790
|
-
scrollContainer: bodyRef,
|
|
25791
|
-
scrollAxis: "xy",
|
|
25792
|
-
getVerticalPosition: () => scrollTop.value,
|
|
25793
|
-
setVerticalPosition: (pos) => {
|
|
25794
|
-
scrollTo(pos);
|
|
25795
|
-
},
|
|
25796
|
-
getHorizontalPosition: () => scrollLeft.value,
|
|
25797
|
-
setHorizontalPosition: (pos) => scrollTo({ left: pos }),
|
|
25798
|
-
showVerticalScrollbar,
|
|
25799
|
-
showHorizontalScrollbar
|
|
25800
|
-
});
|
|
25801
|
-
const enableRangeSelection = computed(() => !!rangeSelection.value);
|
|
25802
|
-
const singleRangeSelection = computed(() => "single" === rangeSelection.value);
|
|
25803
|
-
const rangeCellClass = computed(() => `${prefixCls.value}-body-cell-range-selected`);
|
|
25804
|
-
const RangeSingleCellClass = computed(() => `${prefixCls.value}-body-cell-range-single-cell`);
|
|
25805
|
-
const RangeTopClass = computed(() => `${prefixCls.value}-body-cell-range-top`);
|
|
25806
|
-
const RangeRIghtClass = computed(() => `${prefixCls.value}-body-cell-range-right`);
|
|
25807
|
-
const RangeBottomClass = computed(() => `${prefixCls.value}-body-cell-range-bottom`);
|
|
25808
|
-
const RangeLeftClass = computed(() => `${prefixCls.value}-body-cell-range-left`);
|
|
25809
|
-
const cellRanges = shallowRef([]);
|
|
25810
|
-
const allDisplayedColumns = computed(
|
|
25811
|
-
() => allColumns.value.filter((col) => !col.__Internal__Column__)
|
|
25812
|
-
);
|
|
25813
|
-
watch(allDisplayedColumns, (newValue) => {
|
|
25814
|
-
cellRanges.value.forEach((cellRange) => {
|
|
25815
|
-
cellRange.columns = cellRange.columns.filter(
|
|
25816
|
-
(column) => newValue.find((item) => item.columnKey === column.columnKey)
|
|
25817
|
-
);
|
|
25818
|
-
});
|
|
25819
|
-
cellRanges.value = cellRanges.value.filter((cellRange) => cellRange.columns.length > 0);
|
|
25820
|
-
});
|
|
25821
|
-
watch(flattenData, () => {
|
|
25822
|
-
const lastIndex = flattenData.value.length - 1;
|
|
25823
|
-
cellRanges.value.forEach((cellRange) => {
|
|
25824
|
-
const { startRow, endRow } = cellRange;
|
|
25825
|
-
if (startRow.rowIndex > lastIndex) {
|
|
25826
|
-
cellRange.startRow = null;
|
|
25827
|
-
}
|
|
25828
|
-
if (endRow.rowIndex > lastIndex) {
|
|
25829
|
-
cellRange.endRow = null;
|
|
25830
|
-
}
|
|
25831
|
-
});
|
|
25832
|
-
cellRanges.value = cellRanges.value.filter(
|
|
25833
|
-
(cellRange) => cellRange.startRow && cellRange.endRow
|
|
25834
|
-
);
|
|
25835
|
-
});
|
|
25836
|
-
const onDragStart = (mouseEvent) => {
|
|
25837
|
-
var _a;
|
|
25838
|
-
(_a = mouseEvent.cellInfo) == null ? void 0 : _a.level;
|
|
25839
|
-
if (!enableRangeSelection.value) return;
|
|
25840
|
-
const { ctrlKey, metaKey, shiftKey } = mouseEvent;
|
|
25841
|
-
const ctrlOrMetaKey = ctrlKey || metaKey;
|
|
25842
|
-
const isMultiple = !singleRangeSelection.value && ctrlOrMetaKey;
|
|
25843
|
-
const rangeLength = cellRanges.value.length;
|
|
25844
|
-
const isRangeSelected = shiftKey && rangeLength > 0;
|
|
25845
|
-
if (!(isMultiple || isRangeSelected)) {
|
|
25846
|
-
clearAllSelectedRange();
|
|
25847
|
-
}
|
|
25848
|
-
mouseEvent.cellInfo.cellPosition;
|
|
25849
|
-
return;
|
|
25850
|
-
};
|
|
25851
|
-
const onDragging = (mouseEvent) => {
|
|
25852
|
-
return;
|
|
25853
|
-
};
|
|
25854
|
-
const onDragStop = () => {
|
|
25855
|
-
};
|
|
25856
|
-
const isSelectedEmpty = computed(() => 0 === cellRanges.value.length);
|
|
25857
|
-
const Y = computed(() => {
|
|
25858
|
-
const length = cellRanges.value.length;
|
|
25859
|
-
if (0 === length) return false;
|
|
25860
|
-
if (length > 1) return true;
|
|
25861
|
-
const first = cellRanges.value[0];
|
|
25862
|
-
const n = le(first);
|
|
25863
|
-
const o = re2(first);
|
|
25864
|
-
return n.rowPinned !== o.rowPinned || n.rowIndex !== o.rowIndex || 1 !== (first == null ? void 0 : first.columns.length);
|
|
25865
|
-
});
|
|
25866
|
-
useDragSelection({
|
|
25867
|
-
onDragStart,
|
|
25868
|
-
onDragging,
|
|
25869
|
-
onDragStop,
|
|
25870
|
-
rootElementRef: rootRef,
|
|
25871
|
-
bodyElementRef: bodyRef,
|
|
25872
|
-
level,
|
|
25873
|
-
enableRangeSelection
|
|
25874
|
-
});
|
|
25875
|
-
const X = (startRow, endRow) => {
|
|
25876
|
-
switch (startRow.rowPinned) {
|
|
25877
|
-
case "top":
|
|
25878
|
-
if ("top" !== endRow.rowPinned) return true;
|
|
25879
|
-
break;
|
|
25880
|
-
case "bottom":
|
|
25881
|
-
if ("bottom" !== endRow.rowPinned) return false;
|
|
25882
|
-
break;
|
|
25883
|
-
default:
|
|
25884
|
-
if (endRow.rowPinned) {
|
|
25885
|
-
return "top" !== endRow.rowPinned;
|
|
25886
|
-
}
|
|
25887
|
-
}
|
|
25888
|
-
return startRow.rowIndex < endRow.rowIndex;
|
|
25889
|
-
};
|
|
25890
|
-
const q = (e3) => {
|
|
25891
|
-
let t2;
|
|
25892
|
-
return e3.forEach((e4) => {
|
|
25893
|
-
(void 0 === t2 || X(t2, e4)) && (t2 = e4);
|
|
25894
|
-
}), t2;
|
|
25895
|
-
};
|
|
25896
|
-
const Q = (e3) => {
|
|
25897
|
-
let t2;
|
|
25898
|
-
return e3.forEach((e4) => {
|
|
25899
|
-
(void 0 === t2 || X(e4, t2)) && (t2 = e4);
|
|
25900
|
-
}), t2;
|
|
25901
|
-
};
|
|
25902
|
-
const Z = (e3, t2) => !e3 && !t2 || !(e3 && !t2 || !e3 && t2) && e3.rowIndex === t2.rowIndex && e3.rowPinned == t2.rowPinned;
|
|
25903
|
-
const J = (e3, t2) => {
|
|
25904
|
-
let n, o;
|
|
25905
|
-
const l2 = e3 === t2 || e3.columnKey === t2.columnKey, r2 = allDisplayedColumns.value.findIndex((t3) => t3.columnKey === e3.columnKey);
|
|
25906
|
-
if (r2 < 0)
|
|
25907
|
-
return void console.warn(
|
|
25908
|
-
`Table: column ${null !== (n = e3.originColumn.key) && void 0 !== n ? n : e3.originColumn.dataIndex} is not valid`
|
|
25909
|
-
);
|
|
25910
|
-
const a2 = l2 ? r2 : allDisplayedColumns.value.findIndex((e4) => e4.columnKey === t2.columnKey);
|
|
25911
|
-
if (a2 < 0)
|
|
25912
|
-
return void console.warn(
|
|
25913
|
-
`Table: column ${null !== (o = t2.originColumn.key) && void 0 !== o ? o : t2.originColumn.dataIndex} is not valid`
|
|
25914
|
-
);
|
|
25915
|
-
if (l2) return [e3];
|
|
25916
|
-
const i2 = Math.min(r2, a2), s2 = i2 === r2 ? a2 : r2, u2 = [];
|
|
25917
|
-
for (let e4 = i2; e4 <= s2; e4++) u2.push(allDisplayedColumns.value[e4]);
|
|
25918
|
-
return u2;
|
|
25919
|
-
};
|
|
25920
|
-
const setRangeToCell = (e3, t2 = false) => {
|
|
25921
|
-
if (!enableRangeSelection.value) return;
|
|
25922
|
-
const n = J(e3.column, e3.column);
|
|
25923
|
-
if (!n) return;
|
|
25924
|
-
if (latestRangeStartCell.value === e3) return;
|
|
25925
|
-
!singleRangeSelection.value && t2 || (cellRanges.value = []);
|
|
25926
|
-
const o = { rowIndex: e3.rowIndex, rowPinned: e3.rowPinned }, l2 = { startRow: o, endRow: o, columns: n, startColumn: e3.column };
|
|
25927
|
-
cellRanges.value.push(l2), latestRangeStartCell.value = e3, triggerRef(cellRanges);
|
|
25928
|
-
};
|
|
25929
|
-
const te = (e3, t2) => {
|
|
25930
|
-
const n = t2.column, o = J(e3.startColumn, n);
|
|
25931
|
-
o && !ne(e3, t2) && (e3.columns = o, e3.endRow = { rowIndex: t2.rowIndex, rowPinned: t2.rowPinned }, triggerRef(cellRanges));
|
|
25932
|
-
};
|
|
25933
|
-
const ne = (e3, t2) => {
|
|
25934
|
-
const { startRow: n, endRow: o } = e3, l2 = X(n, o) ? o : n, r2 = t2.rowIndex === l2.rowIndex && t2.rowPinned === l2.rowPinned, a2 = e3.columns[0], i2 = e3.columns[e3.columns.length - 1], s2 = e3.startColumn === a2 ? i2 : a2;
|
|
25935
|
-
return t2.column === s2 && r2;
|
|
25936
|
-
};
|
|
25937
|
-
const oe = (e3, t2) => {
|
|
25938
|
-
const n = null !== t2.columns && t2.columns.find((t3) => t3.columnKey === e3.column.columnKey), o = ae2(e3.rowIndex, e3.rowPinned, t2);
|
|
25939
|
-
return n && o;
|
|
25940
|
-
};
|
|
25941
|
-
const le = (cellRange) => {
|
|
25942
|
-
var _a;
|
|
25943
|
-
if (cellRange.startRow && cellRange.endRow) {
|
|
25944
|
-
return X(cellRange.startRow, cellRange.endRow) ? cellRange.startRow : cellRange.endRow;
|
|
25945
|
-
}
|
|
25946
|
-
return { rowIndex: (_a = flattenData.value[0]) == null ? void 0 : _a.rowIndex, rowPinned: null };
|
|
25947
|
-
};
|
|
25948
|
-
const re2 = (e3) => {
|
|
25949
|
-
var _a;
|
|
25950
|
-
return e3.startRow && e3.endRow ? X(e3.startRow, e3.endRow) ? e3.endRow : e3.startRow : {
|
|
25951
|
-
rowIndex: (_a = flattenData.value[flattenData.value.length - 1]) == null ? void 0 : _a.rowIndex,
|
|
25952
|
-
rowPinned: null
|
|
25953
|
-
};
|
|
25954
|
-
};
|
|
25955
|
-
const ae2 = (e3, t2, n) => {
|
|
25956
|
-
const o = le(n), l2 = re2(n), r2 = { rowIndex: e3, rowPinned: t2 }, a2 = r2.rowIndex === o.rowIndex && r2.rowPinned == o.rowPinned, i2 = r2.rowIndex === l2.rowIndex && r2.rowPinned == l2.rowPinned;
|
|
25957
|
-
if (a2 || i2) return true;
|
|
25958
|
-
const s2 = !X(r2, o), u2 = X(r2, l2);
|
|
25959
|
-
return s2 && u2;
|
|
25960
|
-
};
|
|
25961
|
-
const getCellRangeCount = (cell2) => isSelectedEmpty.value ? 0 : cellRanges.value.filter((cellRange) => oe(cell2, cellRange)).length;
|
|
25962
|
-
const getDisplayedColBefore = (e3) => {
|
|
25963
|
-
const t2 = allDisplayedColumns.value, n = t2.findIndex((t3) => t3.columnKey === e3.columnKey);
|
|
25964
|
-
return n > 0 ? t2[n - 1] : null;
|
|
25965
|
-
};
|
|
25966
|
-
const getDisplayedColAfter = (e3) => {
|
|
25967
|
-
const t2 = allDisplayedColumns.value, n = t2.findIndex((t3) => t3.columnKey === e3.columnKey);
|
|
25968
|
-
return n < t2.length - 1 ? t2[n + 1] : null;
|
|
25969
|
-
};
|
|
25970
|
-
const ce2 = (e3) => {
|
|
25971
|
-
if (null == e3) return null;
|
|
25972
|
-
const t2 = allDisplayedColumns.value.find((t3) => t3.columnKey === e3);
|
|
25973
|
-
return t2 || console.warn("Table: could not find column " + e3), t2;
|
|
25974
|
-
};
|
|
25975
|
-
const de2 = () => cellRanges.value;
|
|
25976
|
-
const clearAllSelectedRange = () => {
|
|
25977
|
-
cellRanges.value = [];
|
|
25978
|
-
};
|
|
25979
|
-
const appendCellToSelectedRange = (e3) => {
|
|
25980
|
-
if (!enableRangeSelection.value) return;
|
|
25981
|
-
const t2 = ((e4) => {
|
|
25982
|
-
let t3, n = false;
|
|
25983
|
-
if (e4.columnsKey) t3 = e4.columnsKey.map((e5) => ce2(e5)).filter((e5) => e5);
|
|
25984
|
-
else {
|
|
25985
|
-
const o = ce2(e4.columnStartKey), l2 = ce2(e4.columnEndKey);
|
|
25986
|
-
if (!o || !l2) return;
|
|
25987
|
-
t3 = J(o, l2), t3 && t3.length && (n = t3[0] !== o);
|
|
25988
|
-
}
|
|
25989
|
-
if (!t3) return;
|
|
25990
|
-
return {
|
|
25991
|
-
startRow: null != e4.rowStartIndex ? { rowIndex: e4.rowStartIndex, rowPinned: null } : void 0,
|
|
25992
|
-
endRow: null != e4.rowEndIndex ? { rowIndex: e4.rowEndIndex, rowPinned: null } : void 0,
|
|
25993
|
-
columns: t3,
|
|
25994
|
-
startColumn: n ? t3[t3.length - 1] : t3[0]
|
|
25995
|
-
};
|
|
25996
|
-
})(e3);
|
|
25997
|
-
t2 && (t2.startRow && (latestRangeStartCell.value = {
|
|
25998
|
-
rowIndex: t2.startRow.rowIndex,
|
|
25999
|
-
rowPinned: t2.startRow.rowPinned,
|
|
26000
|
-
column: t2.startColumn
|
|
26001
|
-
}), cellRanges.value.push(t2));
|
|
26002
|
-
};
|
|
26003
|
-
const fe2 = (e3) => {
|
|
26004
|
-
enableRangeSelection.value && (clearAllSelectedRange(), appendCellToSelectedRange(e3));
|
|
26005
|
-
};
|
|
26006
|
-
const focusCell = (e3) => {
|
|
26007
|
-
let t2, n;
|
|
26008
|
-
const o = null === (t2 = getRowByFlattenIndex(e3.rowIndex)) || void 0 === t2 ? void 0 : t2.rowKey, l2 = null === (n = e3.column) || void 0 === n ? void 0 : n.columnKey;
|
|
26009
|
-
if (void 0 !== o && void 0 !== l2 && rootRef.value) {
|
|
26010
|
-
const e4 = rootRef.value.querySelector(
|
|
26011
|
-
`[data-row-key="${o}"] [data-column-key="${l2}"][data-level="${level}"]`
|
|
26012
|
-
);
|
|
26013
|
-
if (e4) {
|
|
26014
|
-
const t4 = e4.getElementsByTagName("input")[0];
|
|
26015
|
-
e4.focus();
|
|
26016
|
-
t4 && t4.focus();
|
|
26017
|
-
}
|
|
26018
|
-
}
|
|
26019
|
-
};
|
|
26020
|
-
const intersectLastRange = (fromMouseClick = false) => {
|
|
26021
|
-
if (singleRangeSelection.value) return;
|
|
26022
|
-
if (isSelectedEmpty.value) return;
|
|
26023
|
-
const lastCellRange2 = cellRanges.value[cellRanges.value.length - 1];
|
|
26024
|
-
const n = le(lastCellRange2);
|
|
26025
|
-
const o = re2(lastCellRange2);
|
|
26026
|
-
const l2 = [];
|
|
26027
|
-
cellRanges.value.slice(0, -1).forEach((e4) => {
|
|
26028
|
-
const r2 = le(e4), a2 = re2(e4), i2 = e4.columns, s2 = i2.filter((e5) => -1 === (lastCellRange2 == null ? void 0 : lastCellRange2.columns.indexOf(e5)));
|
|
26029
|
-
if (s2.length !== i2.length)
|
|
26030
|
-
if (X(o, r2) || X(a2, n)) l2.push(e4);
|
|
26031
|
-
else {
|
|
26032
|
-
if (X(r2, n)) {
|
|
26033
|
-
const e5 = {
|
|
26034
|
-
columns: [...i2],
|
|
26035
|
-
startColumn: lastCellRange2 == null ? void 0 : lastCellRange2.startColumn,
|
|
26036
|
-
startRow: Object.assign({}, r2),
|
|
26037
|
-
endRow: navigationService.getRowAbove(n)
|
|
26038
|
-
};
|
|
26039
|
-
l2.push(e5);
|
|
26040
|
-
}
|
|
26041
|
-
if (s2.length > 0) {
|
|
26042
|
-
const e5 = {
|
|
26043
|
-
columns: s2,
|
|
26044
|
-
startColumn: s2.find((e6) => e6.columnKey === (lastCellRange2 == null ? void 0 : lastCellRange2.startColumn.columnKey)) ? lastCellRange2 == null ? void 0 : lastCellRange2.startColumn : s2[0],
|
|
26045
|
-
startRow: q([Object.assign({}, n), Object.assign({}, r2)]),
|
|
26046
|
-
endRow: Q([Object.assign({}, o), Object.assign({}, a2)])
|
|
26047
|
-
};
|
|
26048
|
-
l2.push(e5);
|
|
26049
|
-
}
|
|
26050
|
-
X(o, a2) && l2.push({
|
|
26051
|
-
columns: [...i2],
|
|
26052
|
-
startColumn: lastCellRange2 == null ? void 0 : lastCellRange2.startColumn,
|
|
26053
|
-
startRow: navigationService.getRowBelow(o),
|
|
26054
|
-
endRow: Object.assign({}, a2)
|
|
26055
|
-
});
|
|
26056
|
-
}
|
|
26057
|
-
else l2.push(e4);
|
|
26058
|
-
}), cellRanges.value = l2;
|
|
26059
|
-
};
|
|
26060
|
-
watch(latestRangeStartCell, () => {
|
|
26061
|
-
latestRangeStartCell.value && focusCell(latestRangeStartCell.value);
|
|
26062
|
-
});
|
|
26063
|
-
const ensureCellVisible = (cell2) => {
|
|
26064
|
-
parmas.ensureCellRowVisible(cell2);
|
|
26065
|
-
parmas.ensureCellColumnVisible(cell2);
|
|
26066
|
-
};
|
|
26067
|
-
const navigationService = useCellNavigation({
|
|
26068
|
-
getDisplayedColBefore,
|
|
26069
|
-
getDisplayedColAfter,
|
|
26070
|
-
allDisplayedColumns,
|
|
26071
|
-
setRangeToCell,
|
|
26072
|
-
focusCell,
|
|
26073
|
-
ensureCellVisible,
|
|
26074
|
-
...parmas
|
|
26075
|
-
});
|
|
26076
|
-
provide(RangeSymbolKey, {
|
|
26077
|
-
cellRanges,
|
|
26078
|
-
extendLatestRangeToCell: (e3) => {
|
|
26079
|
-
if (isSelectedEmpty.value || !latestRangeStartCell.value) return;
|
|
26080
|
-
const t2 = cellRanges.value[cellRanges.value.length - 1];
|
|
26081
|
-
te(t2, e3);
|
|
26082
|
-
},
|
|
26083
|
-
setRangeToCell,
|
|
26084
|
-
onDragStart,
|
|
26085
|
-
onDragging,
|
|
26086
|
-
isCellInAnyRange: (cell2) => getCellRangeCount(cell2) > 0,
|
|
26087
|
-
getRangeCellClass: (e3) => {
|
|
26088
|
-
const t2 = getCellRangeCount(e3), n = ((e4) => {
|
|
26089
|
-
let t3 = false, n2 = false, o2 = false, l3 = false;
|
|
26090
|
-
const r3 = e4.column;
|
|
26091
|
-
let a3, i3;
|
|
26092
|
-
a3 = getDisplayedColBefore(r3), i3 = getDisplayedColAfter(r3);
|
|
26093
|
-
const s2 = cellRanges.value.filter((t4) => oe(e4, t4));
|
|
26094
|
-
a3 || (l3 = true), i3 || (n2 = true);
|
|
26095
|
-
for (let r4 = 0; r4 < s2.length && !(t3 && n2 && o2 && l3); r4++) {
|
|
26096
|
-
const u2 = s2[r4], c2 = le(u2), d = re2(u2);
|
|
26097
|
-
!t3 && Z(c2, e4) && (t3 = true), !o2 && Z(d, e4) && (o2 = true), !l3 && a3 && u2.columns.findIndex((e5) => e5.columnKey === a3.columnKey) < 0 && (l3 = true), !n2 && i3 && u2.columns.findIndex((e5) => e5.columnKey === i3.columnKey) < 0 && (n2 = true);
|
|
26098
|
-
}
|
|
26099
|
-
return { top: t3, right: n2, bottom: o2, left: l3 };
|
|
26100
|
-
})(e3), o = 1 === t2 && !Y.value, l2 = !o && n.top, r2 = !o && n.right, a2 = !o && n.bottom, i2 = !o && n.left;
|
|
26101
|
-
return classNames({
|
|
26102
|
-
[rangeCellClass.value]: 0 !== t2,
|
|
26103
|
-
[`${rangeCellClass.value}-1`]: 1 === t2,
|
|
26104
|
-
[`${rangeCellClass.value}-2`]: 2 === t2,
|
|
26105
|
-
[`${rangeCellClass.value}-3`]: 3 === t2,
|
|
26106
|
-
[`${rangeCellClass.value}-4`]: t2 >= 4,
|
|
26107
|
-
[RangeSingleCellClass.value]: o,
|
|
26108
|
-
[RangeTopClass.value]: l2,
|
|
26109
|
-
[RangeRIghtClass.value]: r2,
|
|
26110
|
-
[RangeBottomClass.value]: a2,
|
|
26111
|
-
[RangeLeftClass.value]: i2
|
|
26112
|
-
});
|
|
26113
|
-
},
|
|
26114
|
-
enableRangeSelection,
|
|
26115
|
-
singleRangeSelection,
|
|
26116
|
-
getDisplayedColBefore,
|
|
26117
|
-
getDisplayedColAfter,
|
|
26118
|
-
navigationService,
|
|
26119
|
-
extendLatestRangeInDirection: (e3) => {
|
|
26120
|
-
if (isSelectedEmpty.value || !latestRangeStartCell.value) return;
|
|
26121
|
-
const t2 = e3.keyCode, n = e3.ctrlKey || e3.metaKey, o = cellRanges.value[cellRanges.value.length - 1], l2 = latestRangeStartCell.value, r2 = o.columns[0], a2 = o.columns[o.columns.length - 1], i2 = o.endRow.rowIndex, s2 = o.endRow.rowPinned, u2 = {
|
|
26122
|
-
column: l2.column === r2 ? a2 : r2,
|
|
26123
|
-
rowIndex: i2,
|
|
26124
|
-
rowPinned: s2
|
|
26125
|
-
}, d = navigationService.getNextCellToFocus(t2, u2, n);
|
|
26126
|
-
return d ? (fe2({
|
|
26127
|
-
rowStartIndex: l2.rowIndex,
|
|
26128
|
-
rowEndIndex: d.rowIndex,
|
|
26129
|
-
columnStartKey: l2.column.columnKey,
|
|
26130
|
-
columnEndKey: d.column.columnKey
|
|
26131
|
-
}), d) : void 0;
|
|
26132
|
-
},
|
|
26133
|
-
allDisplayedColumns,
|
|
26134
|
-
focusCell,
|
|
26135
|
-
ensureCellVisible,
|
|
26136
|
-
getCellRangeCount,
|
|
26137
|
-
intersectLastRange,
|
|
26138
|
-
level
|
|
26139
|
-
});
|
|
26140
|
-
const copySelectedRange = () => {
|
|
26141
|
-
const e3 = de2(), t2 = [];
|
|
26142
|
-
let n = "";
|
|
26143
|
-
e3.forEach((e4) => {
|
|
26144
|
-
const { startRow: n2, endRow: o, columns: r2 } = e4, [a2, i2] = [n2.rowIndex, o.rowIndex].sort((e5, t3) => e5 - t3);
|
|
26145
|
-
let s2 = allDisplayedColumns.value.findIndex((e5) => {
|
|
26146
|
-
var _a;
|
|
26147
|
-
return e5.columnKey === ((_a = r2[0]) == null ? void 0 : _a.columnKey);
|
|
26148
|
-
}), u2 = allDisplayedColumns.value.findIndex(
|
|
26149
|
-
(e5) => {
|
|
26150
|
-
var _a;
|
|
26151
|
-
return e5.columnKey === ((_a = r2[r2.length - 1]) == null ? void 0 : _a.columnKey);
|
|
26152
|
-
}
|
|
26153
|
-
);
|
|
26154
|
-
[s2, u2] = [s2, u2].sort((e5, t3) => e5 - t3);
|
|
26155
|
-
const c2 = [];
|
|
26156
|
-
for (let e5 = a2; e5 <= i2; e5++) {
|
|
26157
|
-
const t3 = flattenData.value[e5];
|
|
26158
|
-
if (t3 && !t3.isExpandRow) {
|
|
26159
|
-
const n3 = t3.rowKey, o2 = [], l2 = getIndexsByKey(n3);
|
|
26160
|
-
for (let r3 = s2; r3 <= u2; r3++) {
|
|
26161
|
-
const originColumn = allDisplayedColumns.value[r3].originColumn;
|
|
26162
|
-
const i3 = originColumn.dataIndex ? getPathValue(t3.record, originColumn.dataIndex) : void 0;
|
|
26163
|
-
if (originColumn) {
|
|
26164
|
-
const r4 = {
|
|
26165
|
-
record: t3.record,
|
|
26166
|
-
column: originColumn,
|
|
26167
|
-
index: e5,
|
|
26168
|
-
recordIndexs: l2,
|
|
26169
|
-
key: n3,
|
|
26170
|
-
value: i3
|
|
26171
|
-
};
|
|
26172
|
-
o2.push(formatRangeCellText(r4));
|
|
26173
|
-
}
|
|
26174
|
-
}
|
|
26175
|
-
c2.push(o2.join(copyDelimiter.value));
|
|
26176
|
-
}
|
|
26177
|
-
}
|
|
26178
|
-
t2.push(c2);
|
|
26179
|
-
}), n = t2.map((e4) => e4.join("prefixCls\n")).join("prefixCls\n"), ((e4) => {
|
|
26180
|
-
let t3, n2;
|
|
26181
|
-
const o = document.activeElement, l2 = document.createElement("textarea");
|
|
26182
|
-
l2.style.position = "absolute", l2.style.opacity = "0", l2.style.width = "1px", l2.style.height = "1px", l2.value = e4 || " ", document.body.appendChild(l2), l2.select(), l2.focus({ preventScroll: true }), document.execCommand("copy") || console.warn("Table: copy failed, Browser did not allow document.execCommand('copy')"), document.body.removeChild(l2), null !== o && (null === (n2 = (t3 = o).focus) || void 0 === n2 || n2.call(t3, { preventScroll: true }));
|
|
26183
|
-
})(n);
|
|
26184
|
-
};
|
|
26185
|
-
return {
|
|
26186
|
-
getSelectedRange: () => {
|
|
26187
|
-
const e3 = de2(), t2 = [];
|
|
26188
|
-
return e3.forEach((e4) => {
|
|
26189
|
-
const { startColumn: n, startRow: o, endRow: r2, columns: a2 } = e4, i2 = flattenData.value[o.rowIndex], s2 = flattenData.value[r2.rowIndex], u2 = {
|
|
26190
|
-
startColumn: n.originColumn,
|
|
26191
|
-
startRow: {
|
|
26192
|
-
rowIndex: i2.rowIndex,
|
|
26193
|
-
recordIndexs: getIndexsByKey(i2.rowKey)
|
|
26194
|
-
},
|
|
26195
|
-
endRow: {
|
|
26196
|
-
rowIndex: s2.rowIndex,
|
|
26197
|
-
recordIndexs: getIndexsByKey(s2.rowKey)
|
|
26198
|
-
},
|
|
26199
|
-
columns: a2.map((e5) => e5.originColumn),
|
|
26200
|
-
flattenData: flattenData.value
|
|
26201
|
-
};
|
|
26202
|
-
t2.push(u2);
|
|
26203
|
-
}), t2;
|
|
26204
|
-
},
|
|
26205
|
-
appendCellToSelectedRange,
|
|
26206
|
-
clearAllSelectedRange,
|
|
26207
|
-
setCellRanges: (e3) => {
|
|
26208
|
-
enableRangeSelection.value && (cellRanges.value = e3);
|
|
26209
|
-
},
|
|
26210
|
-
getCellRangeCount,
|
|
26211
|
-
navigationService,
|
|
26212
|
-
copySelectedRange,
|
|
26213
|
-
onBodyKeydown: (e3) => {
|
|
26214
|
-
if (!e3.ctrlKey && !e3.metaKey || !enableRangeSelection.value) return;
|
|
26215
|
-
if (isOverFormFieldElement(e3)) return;
|
|
26216
|
-
switch (e3.keyCode) {
|
|
26217
|
-
case KeyCode.C:
|
|
26218
|
-
copySelectedRange();
|
|
26219
|
-
break;
|
|
26220
|
-
case KeyCode.A:
|
|
26221
|
-
(() => {
|
|
26222
|
-
if (!enableRangeSelection.value) return;
|
|
26223
|
-
const e4 = allDisplayedColumns.value;
|
|
26224
|
-
0 !== e4.length && fe2({
|
|
26225
|
-
rowStartIndex: 0,
|
|
26226
|
-
rowEndIndex: flattenData.value.length - 1,
|
|
26227
|
-
columnStartKey: e4[0].columnKey,
|
|
26228
|
-
columnEndKey: e4[e4.length - 1].columnKey
|
|
26229
|
-
});
|
|
26230
|
-
})();
|
|
26231
|
-
}
|
|
26232
|
-
e3.preventDefault();
|
|
26233
|
-
}
|
|
26234
|
-
};
|
|
26235
|
-
};
|
|
26236
|
-
const useInjectRangeStore = () => {
|
|
26237
|
-
return inject(RangeSymbolKey, {});
|
|
26238
|
-
};
|
|
26239
|
-
|
|
26240
25666
|
var MapShim = (function() {
|
|
26241
25667
|
if (typeof Map !== "undefined") {
|
|
26242
25668
|
return Map;
|
|
@@ -28680,6 +28106,31 @@ function useData(_props, rowPosition, flattenData, startIndex, endIndex, draggin
|
|
|
28680
28106
|
return { data, pos };
|
|
28681
28107
|
}
|
|
28682
28108
|
|
|
28109
|
+
function classNames(...args) {
|
|
28110
|
+
const classes = [];
|
|
28111
|
+
for (let i = 0; i < args.length; i++) {
|
|
28112
|
+
const value = args[i];
|
|
28113
|
+
if (!value) continue;
|
|
28114
|
+
if (isString(value)) {
|
|
28115
|
+
classes.push(value);
|
|
28116
|
+
} else if (isArray(value)) {
|
|
28117
|
+
for (let i2 = 0; i2 < value.length; i2++) {
|
|
28118
|
+
const inner = classNames(value[i2]);
|
|
28119
|
+
if (inner) {
|
|
28120
|
+
classes.push(inner);
|
|
28121
|
+
}
|
|
28122
|
+
}
|
|
28123
|
+
} else if (isObject(value)) {
|
|
28124
|
+
for (const name in value) {
|
|
28125
|
+
if (value[name]) {
|
|
28126
|
+
classes.push(name);
|
|
28127
|
+
}
|
|
28128
|
+
}
|
|
28129
|
+
}
|
|
28130
|
+
}
|
|
28131
|
+
return classes.join(" ");
|
|
28132
|
+
}
|
|
28133
|
+
|
|
28683
28134
|
const useCellProps = ({
|
|
28684
28135
|
leftColumns,
|
|
28685
28136
|
rightColumns,
|
|
@@ -28692,6 +28143,10 @@ const useCellProps = ({
|
|
|
28692
28143
|
leftWidth,
|
|
28693
28144
|
centerWidth,
|
|
28694
28145
|
getRowHeight,
|
|
28146
|
+
cancelEditable,
|
|
28147
|
+
startEditable,
|
|
28148
|
+
saveEditable,
|
|
28149
|
+
isEditable,
|
|
28695
28150
|
customCell: contextCustomCell
|
|
28696
28151
|
}) => {
|
|
28697
28152
|
const allCellProps = shallowRef({});
|
|
@@ -28714,6 +28169,10 @@ const useCellProps = ({
|
|
|
28714
28169
|
value,
|
|
28715
28170
|
record,
|
|
28716
28171
|
index: rowIndex,
|
|
28172
|
+
cancelEditable,
|
|
28173
|
+
startEditable,
|
|
28174
|
+
saveEditable,
|
|
28175
|
+
isEditable,
|
|
28717
28176
|
column: originColumn
|
|
28718
28177
|
});
|
|
28719
28178
|
if (customCellRender && isObject$4(customCellRender) && !isArray$2(customCellRender) && !isVNode(customCellRender)) {
|
|
@@ -32191,114 +31650,6 @@ const useInjectBodyRow = () => {
|
|
|
32191
31650
|
return inject(BodyRowContextKey, {});
|
|
32192
31651
|
};
|
|
32193
31652
|
|
|
32194
|
-
const useCellSelection = () => {
|
|
32195
|
-
const {
|
|
32196
|
-
isCellInAnyRange,
|
|
32197
|
-
cellRanges,
|
|
32198
|
-
extendLatestRangeToCell,
|
|
32199
|
-
setRangeToCell,
|
|
32200
|
-
enableRangeSelection,
|
|
32201
|
-
getCellRangeCount,
|
|
32202
|
-
intersectLastRange,
|
|
32203
|
-
level
|
|
32204
|
-
} = useInjectRangeStore();
|
|
32205
|
-
return {
|
|
32206
|
-
onCellMousedown: (mouseEvent, cellPosition) => {
|
|
32207
|
-
const { ctrlKey, metaKey, shiftKey } = mouseEvent;
|
|
32208
|
-
if (!(!isCellInAnyRange(cellPosition) || 2 !== mouseEvent.button)) return;
|
|
32209
|
-
const isRanges = !cellRanges.value.length;
|
|
32210
|
-
if (shiftKey && isRanges) {
|
|
32211
|
-
mouseEvent.preventDefault();
|
|
32212
|
-
}
|
|
32213
|
-
if (shiftKey) {
|
|
32214
|
-
extendLatestRangeToCell(cellPosition);
|
|
32215
|
-
} else {
|
|
32216
|
-
setRangeToCell(cellPosition, ctrlKey || metaKey);
|
|
32217
|
-
}
|
|
32218
|
-
mouseEvent.cellInfo = {
|
|
32219
|
-
cellPosition,
|
|
32220
|
-
cellTarget: mouseEvent.currentTarget,
|
|
32221
|
-
level
|
|
32222
|
-
};
|
|
32223
|
-
},
|
|
32224
|
-
onCellMousemove: (mouseEvent, cellPosition) => {
|
|
32225
|
-
mouseEvent.cellInfo = {
|
|
32226
|
-
cellPosition,
|
|
32227
|
-
cellTarget: mouseEvent.currentTarget,
|
|
32228
|
-
level
|
|
32229
|
-
};
|
|
32230
|
-
},
|
|
32231
|
-
onCellClick: (mouseEvent, cellPosition) => {
|
|
32232
|
-
const mouseKey = mouseEvent.ctrlKey || mouseEvent.metaKey;
|
|
32233
|
-
enableRangeSelection.value && mouseKey && getCellRangeCount(cellPosition) > 1 && intersectLastRange(true);
|
|
32234
|
-
}
|
|
32235
|
-
};
|
|
32236
|
-
};
|
|
32237
|
-
|
|
32238
|
-
const useCellKeyboard = () => {
|
|
32239
|
-
const {
|
|
32240
|
-
enableRangeSelection,
|
|
32241
|
-
navigationService,
|
|
32242
|
-
extendLatestRangeInDirection,
|
|
32243
|
-
focusCell,
|
|
32244
|
-
ensureCellVisible
|
|
32245
|
-
} = useInjectRangeStore();
|
|
32246
|
-
const directionOrEnterHandle = (event, payload) => {
|
|
32247
|
-
if (!payload.isEditing) {
|
|
32248
|
-
event.shiftKey && enableRangeSelection.value ? selectRange(event) : navigationService.navigateToNextCell(event, payload.cellPosition);
|
|
32249
|
-
event.preventDefault();
|
|
32250
|
-
}
|
|
32251
|
-
};
|
|
32252
|
-
const { props } = useInjectTable();
|
|
32253
|
-
const selectRange = (event) => {
|
|
32254
|
-
const latestRange = extendLatestRangeInDirection(event);
|
|
32255
|
-
latestRange && ensureCellVisible(latestRange);
|
|
32256
|
-
};
|
|
32257
|
-
const escHandle = (_, payload) => {
|
|
32258
|
-
payload.isEditing && focusCell(payload.cellPosition);
|
|
32259
|
-
};
|
|
32260
|
-
const tabHandle = (event, payload) => {
|
|
32261
|
-
navigationService.onTabKeyDown(payload.cellPosition, event);
|
|
32262
|
-
};
|
|
32263
|
-
return {
|
|
32264
|
-
onCellKeydown: (event, payload) => {
|
|
32265
|
-
if (props.onCellKeydown && false === props.onCellKeydown(event, {
|
|
32266
|
-
isEditing: payload.isEditing,
|
|
32267
|
-
cellPosition: {
|
|
32268
|
-
column: payload.cellPosition.column.originColumn,
|
|
32269
|
-
rowIndex: payload.cellPosition.rowIndex
|
|
32270
|
-
}
|
|
32271
|
-
})) {
|
|
32272
|
-
return;
|
|
32273
|
-
}
|
|
32274
|
-
const { keyCode } = event;
|
|
32275
|
-
const target = event.target;
|
|
32276
|
-
switch (keyCode) {
|
|
32277
|
-
case KeyCode.RIGHT:
|
|
32278
|
-
case KeyCode.LEFT:
|
|
32279
|
-
if (!("INPUT" === (target == null ? void 0 : target.tagName) || "TEXTAREA" === (target == null ? void 0 : target.tagName) || (target == null ? void 0 : target.isContentEditable))) {
|
|
32280
|
-
directionOrEnterHandle(event, payload);
|
|
32281
|
-
}
|
|
32282
|
-
break;
|
|
32283
|
-
case KeyCode.DOWN:
|
|
32284
|
-
case KeyCode.UP:
|
|
32285
|
-
case KeyCode.ENTER:
|
|
32286
|
-
if (!((target2) => "TEXTAREA" === target2.tagName || target2.isContentEditable)(
|
|
32287
|
-
event.target
|
|
32288
|
-
)) {
|
|
32289
|
-
directionOrEnterHandle(event, payload);
|
|
32290
|
-
}
|
|
32291
|
-
break;
|
|
32292
|
-
case KeyCode.ESC:
|
|
32293
|
-
escHandle(event, payload);
|
|
32294
|
-
break;
|
|
32295
|
-
case KeyCode.TAB:
|
|
32296
|
-
tabHandle(event, payload);
|
|
32297
|
-
}
|
|
32298
|
-
}
|
|
32299
|
-
};
|
|
32300
|
-
};
|
|
32301
|
-
|
|
32302
31653
|
const eventCache = {};
|
|
32303
31654
|
const eventMap = {
|
|
32304
31655
|
select: "input",
|
|
@@ -32315,6 +31666,68 @@ const isEventSupported = (eventName) => {
|
|
|
32315
31666
|
return eventCache[eventName = "on" + eventName] = eventName in dom;
|
|
32316
31667
|
};
|
|
32317
31668
|
|
|
31669
|
+
const useAutoScroll = (params) => {
|
|
31670
|
+
const {
|
|
31671
|
+
scrollContainer,
|
|
31672
|
+
scrollAxis,
|
|
31673
|
+
onScrollCallback = () => {
|
|
31674
|
+
},
|
|
31675
|
+
showVerticalScrollbar,
|
|
31676
|
+
showHorizontalScrollbar
|
|
31677
|
+
} = params;
|
|
31678
|
+
let timer = null;
|
|
31679
|
+
let i = 0;
|
|
31680
|
+
let hasLeft = false;
|
|
31681
|
+
let hasRight = false;
|
|
31682
|
+
let hasTop = false;
|
|
31683
|
+
let hasBottom = false;
|
|
31684
|
+
const isXAxis = -1 !== scrollAxis.indexOf("x");
|
|
31685
|
+
const isYAxis = -1 !== scrollAxis.indexOf("y");
|
|
31686
|
+
const scrollByTick = computed(() => {
|
|
31687
|
+
var _a, _b;
|
|
31688
|
+
return (_b = (_a = params.scrollByTick) == null ? void 0 : _a.value) != null ? _b : 20;
|
|
31689
|
+
});
|
|
31690
|
+
const exec = () => {
|
|
31691
|
+
if (null === timer) {
|
|
31692
|
+
timer = window.setInterval(handle, 100);
|
|
31693
|
+
i = 0;
|
|
31694
|
+
}
|
|
31695
|
+
};
|
|
31696
|
+
const handle = () => {
|
|
31697
|
+
i++;
|
|
31698
|
+
const boundary = i > 20 ? 200 : i > 10 ? 80 : 40;
|
|
31699
|
+
if (isYAxis) {
|
|
31700
|
+
const position = params.getVerticalPosition();
|
|
31701
|
+
hasTop && params.setVerticalPosition(position - boundary), hasBottom && params.setVerticalPosition(position + boundary);
|
|
31702
|
+
}
|
|
31703
|
+
if (isXAxis) {
|
|
31704
|
+
const position = params.getHorizontalPosition();
|
|
31705
|
+
hasLeft && params.setHorizontalPosition(position - boundary), hasRight && params.setHorizontalPosition(position + boundary);
|
|
31706
|
+
}
|
|
31707
|
+
onScrollCallback();
|
|
31708
|
+
};
|
|
31709
|
+
const clear = () => {
|
|
31710
|
+
if (timer) {
|
|
31711
|
+
window.clearInterval(timer);
|
|
31712
|
+
timer = null;
|
|
31713
|
+
}
|
|
31714
|
+
};
|
|
31715
|
+
return {
|
|
31716
|
+
check: (mouseEvent, forceSkipVerticalScroll = false) => {
|
|
31717
|
+
const hasVerticalScroll = forceSkipVerticalScroll || !showVerticalScrollbar.value;
|
|
31718
|
+
if (hasVerticalScroll && !showHorizontalScrollbar.value) return;
|
|
31719
|
+
const clientRect = scrollContainer.value.getBoundingClientRect();
|
|
31720
|
+
const tick = scrollByTick.value;
|
|
31721
|
+
hasLeft = mouseEvent.clientX < clientRect.left + tick;
|
|
31722
|
+
hasRight = mouseEvent.clientX > clientRect.right - tick;
|
|
31723
|
+
hasTop = mouseEvent.clientY < clientRect.top + tick && !hasVerticalScroll;
|
|
31724
|
+
hasBottom = mouseEvent.clientY > clientRect.bottom - tick && !hasVerticalScroll;
|
|
31725
|
+
return hasLeft || hasRight || hasTop || hasBottom ? exec() : clear();
|
|
31726
|
+
},
|
|
31727
|
+
ensureCleared: clear
|
|
31728
|
+
};
|
|
31729
|
+
};
|
|
31730
|
+
|
|
32318
31731
|
var _sfc_main$o = defineComponent({
|
|
32319
31732
|
name: "RowDragHandler",
|
|
32320
31733
|
props: {
|
|
@@ -32838,188 +32251,6 @@ var BodyCellTooltip = /* @__PURE__ */ defineComponent({
|
|
|
32838
32251
|
}
|
|
32839
32252
|
});
|
|
32840
32253
|
|
|
32841
|
-
var _sfc_main$n = defineComponent({
|
|
32842
|
-
inheritAttrs: false,
|
|
32843
|
-
props: {
|
|
32844
|
-
prefixCls: { type: String },
|
|
32845
|
-
recordIndexs: { type: Array },
|
|
32846
|
-
rowKey: { type: [Number, String] },
|
|
32847
|
-
column: { type: Object, default: () => ({}) },
|
|
32848
|
-
record: { type: Object, default: () => ({}) },
|
|
32849
|
-
value: { validator: () => true },
|
|
32850
|
-
customEditable: { type: Boolean, default: false },
|
|
32851
|
-
multiple: { type: Boolean, default: false },
|
|
32852
|
-
autoHeight: { type: Boolean, default: false },
|
|
32853
|
-
cellKey: { type: String },
|
|
32854
|
-
getPopupContainer: Function,
|
|
32855
|
-
onCloseEditor: Function,
|
|
32856
|
-
onKeydown: Function
|
|
32857
|
-
},
|
|
32858
|
-
emits: ["closeEditor", "keydown"],
|
|
32859
|
-
setup(props, { expose, emit }) {
|
|
32860
|
-
var _a, _b, _c;
|
|
32861
|
-
const tableSlots = useInjectSlots();
|
|
32862
|
-
const popup = useInjectPopup();
|
|
32863
|
-
const oldValue = (_c = (_b = (_a = props.column) == null ? void 0 : _a.valueGetter) == null ? void 0 : _b.call(_a, {
|
|
32864
|
-
value: props.value,
|
|
32865
|
-
record: props.record,
|
|
32866
|
-
column: props.column,
|
|
32867
|
-
recordIndexs: props.recordIndexs
|
|
32868
|
-
})) != null ? _c : props.value;
|
|
32869
|
-
const modelValue = ref(oldValue);
|
|
32870
|
-
const inputRef = shallowRef(null);
|
|
32871
|
-
const tableContext = useInjectTable();
|
|
32872
|
-
onMounted(() => {
|
|
32873
|
-
nextTick(() => {
|
|
32874
|
-
var _a2, _b2, _c2, _d;
|
|
32875
|
-
if (inputRef.value && !props.multiple) {
|
|
32876
|
-
(_b2 = (_a2 = inputRef.value) == null ? void 0 : _a2.focus) == null ? void 0 : _b2.call(_a2);
|
|
32877
|
-
(_d = (_c2 = inputRef.value) == null ? void 0 : _c2.select) == null ? void 0 : _d.call(_c2);
|
|
32878
|
-
}
|
|
32879
|
-
});
|
|
32880
|
-
});
|
|
32881
|
-
expose({ value: modelValue, inputRef });
|
|
32882
|
-
const onInput = (e, val) => {
|
|
32883
|
-
var _a2, _b2;
|
|
32884
|
-
(_b2 = (_a2 = props.column).valueChange) == null ? void 0 : _b2.call(_a2, e, {
|
|
32885
|
-
column: props.column,
|
|
32886
|
-
record: props.record,
|
|
32887
|
-
recordIndexs: props.recordIndexs,
|
|
32888
|
-
newValue: val,
|
|
32889
|
-
oldValue
|
|
32890
|
-
});
|
|
32891
|
-
};
|
|
32892
|
-
const childrenColumnName = computed(() => tableContext.props.childrenColumnName || "children");
|
|
32893
|
-
const save = () => {
|
|
32894
|
-
var _a2, _b2, _c2;
|
|
32895
|
-
const recordIndexs = props.recordIndexs;
|
|
32896
|
-
let dataSource = tableContext.props.dataSource || [];
|
|
32897
|
-
let record = {};
|
|
32898
|
-
recordIndexs.forEach((index) => {
|
|
32899
|
-
record = dataSource[index];
|
|
32900
|
-
dataSource = record[childrenColumnName.value] || [];
|
|
32901
|
-
});
|
|
32902
|
-
const value = (_c2 = (_b2 = (_a2 = props.column).valueParser) == null ? void 0 : _b2.call(_a2, {
|
|
32903
|
-
column: props.column,
|
|
32904
|
-
record,
|
|
32905
|
-
recordIndexs,
|
|
32906
|
-
newValue: modelValue.value,
|
|
32907
|
-
oldValue
|
|
32908
|
-
})) != null ? _c2 : modelValue.value;
|
|
32909
|
-
const valueSetter = props.column.valueSetter;
|
|
32910
|
-
if (valueSetter) {
|
|
32911
|
-
const result = valueSetter({
|
|
32912
|
-
column: props.column,
|
|
32913
|
-
record,
|
|
32914
|
-
recordIndexs,
|
|
32915
|
-
newValue: modelValue.value,
|
|
32916
|
-
oldValue
|
|
32917
|
-
});
|
|
32918
|
-
if (isPromise(result)) {
|
|
32919
|
-
result.then((res) => {
|
|
32920
|
-
res && emit("closeEditor", [props.cellKey]);
|
|
32921
|
-
}).catch(() => {
|
|
32922
|
-
});
|
|
32923
|
-
return;
|
|
32924
|
-
}
|
|
32925
|
-
result && emit("closeEditor", [props.cellKey]);
|
|
32926
|
-
} else {
|
|
32927
|
-
devWarning(
|
|
32928
|
-
void 0 !== props.column.dataIndex || null !== props.column.dataIndex,
|
|
32929
|
-
"Editable",
|
|
32930
|
-
"If not have column dataIndex, you should to set valueSetter for editable columns, otherwise the value cannot be modified."
|
|
32931
|
-
);
|
|
32932
|
-
set(record, props.column.dataIndex, value);
|
|
32933
|
-
emit("closeEditor", [props.cellKey]);
|
|
32934
|
-
}
|
|
32935
|
-
};
|
|
32936
|
-
let isKeyDown = false;
|
|
32937
|
-
const closeEditor = (key) => {
|
|
32938
|
-
emit("closeEditor", key != null ? key : [props.cellKey]);
|
|
32939
|
-
};
|
|
32940
|
-
return {
|
|
32941
|
-
modelValue,
|
|
32942
|
-
inputRef,
|
|
32943
|
-
handleInput: (e) => {
|
|
32944
|
-
var _a2;
|
|
32945
|
-
onInput(e, (_a2 = e.target) == null ? void 0 : _a2.value);
|
|
32946
|
-
},
|
|
32947
|
-
handleKeyDown: (e) => {
|
|
32948
|
-
const { which } = e;
|
|
32949
|
-
if (which === KeyCode.ENTER) {
|
|
32950
|
-
save();
|
|
32951
|
-
} else {
|
|
32952
|
-
if (which === KeyCode.ESC) {
|
|
32953
|
-
isKeyDown = true;
|
|
32954
|
-
emit("closeEditor", null);
|
|
32955
|
-
}
|
|
32956
|
-
emit("keydown", e);
|
|
32957
|
-
}
|
|
32958
|
-
},
|
|
32959
|
-
handleBlur: () => {
|
|
32960
|
-
isKeyDown || props.multiple || save();
|
|
32961
|
-
},
|
|
32962
|
-
tableSlots,
|
|
32963
|
-
popup,
|
|
32964
|
-
save,
|
|
32965
|
-
closeEditor,
|
|
32966
|
-
getCustomEditorProps: () => ({
|
|
32967
|
-
modelValue,
|
|
32968
|
-
save,
|
|
32969
|
-
onInput,
|
|
32970
|
-
closeEditor,
|
|
32971
|
-
column: props.column.originColumn,
|
|
32972
|
-
editorRef: inputRef,
|
|
32973
|
-
getPopupContainer: props.getPopupContainer,
|
|
32974
|
-
record: props.record,
|
|
32975
|
-
recordIndexs: props.recordIndexs
|
|
32976
|
-
})
|
|
32977
|
-
};
|
|
32978
|
-
}
|
|
32979
|
-
});
|
|
32980
|
-
|
|
32981
|
-
const _hoisted_1$8 = ["data-cell-auto"];
|
|
32982
|
-
function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
|
|
32983
|
-
return openBlock(), createElementBlock("div", {
|
|
32984
|
-
class: normalizeClass(`${_ctx.prefixCls}-cell-edit-inner`),
|
|
32985
|
-
"data-cell-auto": _ctx.autoHeight
|
|
32986
|
-
}, [
|
|
32987
|
-
_ctx.customEditable ? (openBlock(), createElementBlock(
|
|
32988
|
-
Fragment,
|
|
32989
|
-
{ key: 0 },
|
|
32990
|
-
[
|
|
32991
|
-
_ctx.tableSlots.cellEditor ? (openBlock(), createBlock(
|
|
32992
|
-
resolveDynamicComponent(_ctx.tableSlots.cellEditor),
|
|
32993
|
-
normalizeProps(mergeProps({ key: 0 }, _ctx.getCustomEditorProps())),
|
|
32994
|
-
null,
|
|
32995
|
-
16
|
|
32996
|
-
/* FULL_PROPS */
|
|
32997
|
-
)) : createCommentVNode("v-if", true)
|
|
32998
|
-
],
|
|
32999
|
-
64
|
|
33000
|
-
/* STABLE_FRAGMENT */
|
|
33001
|
-
)) : withDirectives((openBlock(), createElementBlock(
|
|
33002
|
-
"input",
|
|
33003
|
-
{
|
|
33004
|
-
key: 1,
|
|
33005
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.modelValue = $event),
|
|
33006
|
-
ref: "inputRef",
|
|
33007
|
-
class: normalizeClass(`${_ctx.prefixCls}-cell-edit-input`),
|
|
33008
|
-
type: "text",
|
|
33009
|
-
onInput: _cache[1] || (_cache[1] = (...args) => _ctx.handleInput && _ctx.handleInput(...args)),
|
|
33010
|
-
onKeydown: _cache[2] || (_cache[2] = (...args) => _ctx.handleKeyDown && _ctx.handleKeyDown(...args)),
|
|
33011
|
-
onBlur: _cache[3] || (_cache[3] = (...args) => _ctx.handleBlur && _ctx.handleBlur(...args))
|
|
33012
|
-
},
|
|
33013
|
-
null,
|
|
33014
|
-
34
|
|
33015
|
-
/* CLASS, NEED_HYDRATION */
|
|
33016
|
-
)), [
|
|
33017
|
-
[vModelText, _ctx.modelValue]
|
|
33018
|
-
])
|
|
33019
|
-
], 10, _hoisted_1$8);
|
|
33020
|
-
}
|
|
33021
|
-
var EditInput = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$j]]);
|
|
33022
|
-
|
|
33023
32254
|
const cellProps = {
|
|
33024
32255
|
prefixCls: String,
|
|
33025
32256
|
rowIndex: { type: Number, required: true },
|
|
@@ -33036,41 +32267,30 @@ const cellProps = {
|
|
|
33036
32267
|
tooltipOpen: Boolean,
|
|
33037
32268
|
getPopupContainer: Function,
|
|
33038
32269
|
onCellLeave: Function,
|
|
33039
|
-
editCellKeys: Array,
|
|
33040
|
-
onOpenEditor: Function,
|
|
33041
|
-
onCloseEditor: Function,
|
|
33042
|
-
onMousedown: Function,
|
|
33043
|
-
onMousemove: Function,
|
|
33044
|
-
onKeydown: Function,
|
|
33045
32270
|
onClick: Function
|
|
33046
32271
|
};
|
|
33047
32272
|
let lastClickTime = 0;
|
|
32273
|
+
const hasSupportedDblclick = () => {
|
|
32274
|
+
if (!isIOSUserAgent() || isEventSupported("dblclick")) return false;
|
|
32275
|
+
const now = (/* @__PURE__ */ new Date()).getTime();
|
|
32276
|
+
const is = now - lastClickTime < 200;
|
|
32277
|
+
lastClickTime = now;
|
|
32278
|
+
return is;
|
|
32279
|
+
};
|
|
33048
32280
|
const ValueStatusEnum = {
|
|
33049
32281
|
success: "#03bf64",
|
|
33050
32282
|
processing: "#315efb",
|
|
33051
32283
|
error: "#e8353e",
|
|
33052
32284
|
warning: "#eb8903"
|
|
33053
32285
|
};
|
|
33054
|
-
const BodyCell = (props, { slots, emit }) => {
|
|
32286
|
+
const BodyCell$1 = (props, { slots, emit }) => {
|
|
33055
32287
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
33056
32288
|
const { table } = useProConfigInject();
|
|
33057
32289
|
const tableSlotsContext = useInjectSlots();
|
|
33058
32290
|
const tableContext = useInjectTable();
|
|
33059
32291
|
const { onBodyCellContextmenu } = useInjectBody();
|
|
33060
|
-
const { getRangeCellClass } = useInjectRangeStore();
|
|
33061
32292
|
const level = useInjectLevel();
|
|
33062
|
-
const {
|
|
33063
|
-
const {
|
|
33064
|
-
prefixCls,
|
|
33065
|
-
column,
|
|
33066
|
-
wrapText,
|
|
33067
|
-
rowKey,
|
|
33068
|
-
item,
|
|
33069
|
-
rowIndex,
|
|
33070
|
-
hasAppendNode,
|
|
33071
|
-
tooltipOpen,
|
|
33072
|
-
editCellKeys
|
|
33073
|
-
} = props;
|
|
32293
|
+
const { prefixCls, column, wrapText, rowKey, item, rowIndex, hasAppendNode, tooltipOpen } = props;
|
|
33074
32294
|
const columnKey = column.columnKey;
|
|
33075
32295
|
const valueEnum = runFunction(column == null ? void 0 : column.valueEnum, props.item);
|
|
33076
32296
|
const rowDrag = typeof column.rowDrag == "function" ? column.rowDrag({ record: item, column: column.originColumn }) : !!column.rowDrag;
|
|
@@ -33080,22 +32300,8 @@ const BodyCell = (props, { slots, emit }) => {
|
|
|
33080
32300
|
const sorterInfo = { sorterOrder };
|
|
33081
32301
|
const key = `${props.rowKey} ${columnKey}`;
|
|
33082
32302
|
const value = column.dataIndex ? column.renderText ? column.renderText(get(item, column.dataIndex), item, rowIndex) : get(item, column.dataIndex) : void 0;
|
|
33083
|
-
const valueStatus = runFunction(column == null ? void 0 : column.valueStatus, value, props.item);
|
|
32303
|
+
const valueStatus = runFunction(column == null ? void 0 : column.valueStatus, value, props.item, valueEnum == null ? void 0 : valueEnum[value]);
|
|
33084
32304
|
const recordIndexs = tableContext.getIndexsByKey(rowKey);
|
|
33085
|
-
let customEditable = false;
|
|
33086
|
-
let isEditing = editCellKeys == null ? void 0 : editCellKeys.includes(key);
|
|
33087
|
-
if (isEditing) {
|
|
33088
|
-
const editable = "function" == typeof column.editable && column.editable({
|
|
33089
|
-
record: item,
|
|
33090
|
-
column: column.originColumn,
|
|
33091
|
-
recordIndexs,
|
|
33092
|
-
value
|
|
33093
|
-
});
|
|
33094
|
-
customEditable = "cellEditorSlot" === column.editable || "cellEditorSlot" === editable;
|
|
33095
|
-
isEditing = isEditing && (customEditable && !!tableSlotsContext.cellEditor || true === column.editable || !!editable);
|
|
33096
|
-
}
|
|
33097
|
-
let { editableTrigger = ["dblClick"] } = column;
|
|
33098
|
-
editableTrigger = Array.isArray(editableTrigger) ? editableTrigger : [editableTrigger];
|
|
33099
32305
|
const cellInnerClass = { [`${prefixCls}-cell-inner`]: true };
|
|
33100
32306
|
const cellContentClass = {
|
|
33101
32307
|
[`${prefixCls}-cell-content`]: true,
|
|
@@ -33116,7 +32322,6 @@ const BodyCell = (props, { slots, emit }) => {
|
|
|
33116
32322
|
const cellRender = ((_b = (_a = tableContext.allCellProps.value) == null ? void 0 : _a[rowKey]) == null ? void 0 : _b[column.columnKey]) || {};
|
|
33117
32323
|
const cellProps2 = cellRender.props || {};
|
|
33118
32324
|
const cellRowSpan = cellProps2.rowSpan;
|
|
33119
|
-
const cellPosition = { rowIndex: props.flattenRowIndex, rowPinned: null, column };
|
|
33120
32325
|
const cellClass = {
|
|
33121
32326
|
[`${prefixCls}-cell`]: true,
|
|
33122
32327
|
[`${prefixCls}-first-cell`]: column.columnIndex === 0,
|
|
@@ -33124,60 +32329,7 @@ const BodyCell = (props, { slots, emit }) => {
|
|
|
33124
32329
|
[`${prefixCls}-cell-multi`]: cellRowSpan > 1,
|
|
33125
32330
|
[`${prefixCls}-cell-hidden`]: cellRowSpan === 0,
|
|
33126
32331
|
[`${prefixCls}-column-sort`]: sorterInfo.sorterOrder,
|
|
33127
|
-
[`${prefixCls}-with-append`]: hasAppendNode
|
|
33128
|
-
[`${prefixCls}-cell-inline-edit`]: isEditing,
|
|
33129
|
-
[getRangeCellClass(cellPosition)]: true
|
|
33130
|
-
};
|
|
33131
|
-
const openEditor = () => {
|
|
33132
|
-
var _a2, _b2, _c2, _d2, _e2, _f2, _g2;
|
|
33133
|
-
const oldValue = (_c2 = (_b2 = (_a2 = props.column) == null ? void 0 : _a2.valueGetter) == null ? void 0 : _b2.call(_a2, {
|
|
33134
|
-
value,
|
|
33135
|
-
record: item,
|
|
33136
|
-
column,
|
|
33137
|
-
recordIndexs
|
|
33138
|
-
})) != null ? _c2 : value;
|
|
33139
|
-
const beforeOpen = (_e2 = (_d2 = tableContext.props) == null ? void 0 : _d2.onBeforeOpenEditor) == null ? void 0 : _e2.call(_d2, cellRenderArgs);
|
|
33140
|
-
if (isPromise(beforeOpen)) {
|
|
33141
|
-
beforeOpen.then((res) => {
|
|
33142
|
-
var _a3, _b3;
|
|
33143
|
-
if (res) {
|
|
33144
|
-
emit("openEditor", key, { [key]: oldValue });
|
|
33145
|
-
(_b3 = (_a3 = tableContext.props) == null ? void 0 : _a3.onOpenEditor) == null ? void 0 : _b3.call(_a3, cellRenderArgs);
|
|
33146
|
-
}
|
|
33147
|
-
});
|
|
33148
|
-
} else {
|
|
33149
|
-
if (false !== beforeOpen) {
|
|
33150
|
-
emit("openEditor", key, { [key]: oldValue });
|
|
33151
|
-
(_g2 = (_f2 = tableContext.props) == null ? void 0 : _f2.onOpenEditor) == null ? void 0 : _g2.call(_f2, cellRenderArgs);
|
|
33152
|
-
}
|
|
33153
|
-
}
|
|
33154
|
-
};
|
|
33155
|
-
const closeEditor = (currentKey) => {
|
|
33156
|
-
var _a2, _b2, _c2, _d2;
|
|
33157
|
-
const beforeClose = (_b2 = (_a2 = tableContext.props) == null ? void 0 : _a2.onBeforeCloseEditor) == null ? void 0 : _b2.call(_a2, {
|
|
33158
|
-
...cellRenderArgs,
|
|
33159
|
-
oldValue: oldValuesMap.value[key]
|
|
33160
|
-
});
|
|
33161
|
-
if (isPromise(beforeClose)) {
|
|
33162
|
-
beforeClose.then((res) => {
|
|
33163
|
-
var _a3, _b3;
|
|
33164
|
-
if (res) {
|
|
33165
|
-
emit("closeEditor", currentKey != null ? currentKey : key);
|
|
33166
|
-
(_b3 = (_a3 = tableContext.props) == null ? void 0 : _a3.onCloseEditor) == null ? void 0 : _b3.call(_a3, {
|
|
33167
|
-
...cellRenderArgs,
|
|
33168
|
-
oldValue: oldValuesMap.value[key]
|
|
33169
|
-
});
|
|
33170
|
-
}
|
|
33171
|
-
});
|
|
33172
|
-
} else {
|
|
33173
|
-
if (false !== beforeClose) {
|
|
33174
|
-
emit("closeEditor", currentKey != null ? currentKey : key);
|
|
33175
|
-
(_d2 = (_c2 = tableContext.props) == null ? void 0 : _c2.onCloseEditor) == null ? void 0 : _d2.call(_c2, {
|
|
33176
|
-
...cellRenderArgs,
|
|
33177
|
-
oldValue: oldValuesMap.value[key]
|
|
33178
|
-
});
|
|
33179
|
-
}
|
|
33180
|
-
}
|
|
32332
|
+
[`${prefixCls}-with-append`]: hasAppendNode
|
|
33181
32333
|
};
|
|
33182
32334
|
const cellRenderArgs = {
|
|
33183
32335
|
record: item,
|
|
@@ -33188,8 +32340,10 @@ const BodyCell = (props, { slots, emit }) => {
|
|
|
33188
32340
|
recordIndexs: tableContext.getIndexsByKey(rowKey),
|
|
33189
32341
|
key,
|
|
33190
32342
|
valueStatus,
|
|
33191
|
-
|
|
33192
|
-
|
|
32343
|
+
cancelEditable: tableContext.cancelEditable,
|
|
32344
|
+
startEditable: tableContext.startEditable,
|
|
32345
|
+
saveEditable: tableContext.saveEditable,
|
|
32346
|
+
isEditable: tableContext.isEditable
|
|
33193
32347
|
};
|
|
33194
32348
|
let bodyCell = recordIndexs && ((_c = tableSlotsContext.bodyCell) == null ? void 0 : _c.call(tableSlotsContext, cellRenderArgs)) || [];
|
|
33195
32349
|
const emptyText = tableContext.props.columnEmptyText !== false ? (_f = (_e = tableContext.props.columnEmptyText) != null ? _e : (_d = table == null ? void 0 : table.value) == null ? void 0 : _d.columnEmptyText) != null ? _f : "-" : "";
|
|
@@ -33308,27 +32462,6 @@ const BodyCell = (props, { slots, emit }) => {
|
|
|
33308
32462
|
} else {
|
|
33309
32463
|
renderCellVNode = cellVNode;
|
|
33310
32464
|
}
|
|
33311
|
-
const onDblclick = () => {
|
|
33312
|
-
editableTrigger.includes("dblClick") && openEditor();
|
|
33313
|
-
};
|
|
33314
|
-
const editInputRender = isEditing ? createVNode(
|
|
33315
|
-
EditInput,
|
|
33316
|
-
{
|
|
33317
|
-
prefixCls,
|
|
33318
|
-
recordIndexs,
|
|
33319
|
-
rowKey,
|
|
33320
|
-
cellKey: key,
|
|
33321
|
-
column,
|
|
33322
|
-
record: item,
|
|
33323
|
-
onCloseEditor: closeEditor,
|
|
33324
|
-
value,
|
|
33325
|
-
customEditable,
|
|
33326
|
-
getPopupContainer: props.getPopupContainer,
|
|
33327
|
-
multiple: editCellKeys.length > 1,
|
|
33328
|
-
autoHeight
|
|
33329
|
-
},
|
|
33330
|
-
null
|
|
33331
|
-
) : null;
|
|
33332
32465
|
return createVNode(
|
|
33333
32466
|
"div",
|
|
33334
32467
|
mergeProps(cellProps2, {
|
|
@@ -33340,39 +32473,25 @@ const BodyCell = (props, { slots, emit }) => {
|
|
|
33340
32473
|
"data-column-key": columnKey,
|
|
33341
32474
|
class: cellClass,
|
|
33342
32475
|
onContextmenu: (e) => {
|
|
33343
|
-
if (
|
|
32476
|
+
if (tableContext.props.hasContextmenuPopup && 0 === e.button && e.ctrlKey) {
|
|
33344
32477
|
e.preventDefault();
|
|
33345
32478
|
} else {
|
|
33346
32479
|
onBodyCellContextmenu(e, cellRenderArgs, props.type);
|
|
33347
|
-
|
|
32480
|
+
emit("contextmenu", e);
|
|
33348
32481
|
}
|
|
33349
32482
|
},
|
|
33350
|
-
onDblclick
|
|
32483
|
+
onDblclick: (e) => {
|
|
32484
|
+
emit("dblClick", e);
|
|
32485
|
+
},
|
|
33351
32486
|
onClick: (e) => {
|
|
33352
32487
|
var _a2, _b2;
|
|
33353
32488
|
(_b2 = (_a2 = tableContext.props) == null ? void 0 : _a2.onCellClick) == null ? void 0 : _b2.call(_a2, e, cellRenderArgs);
|
|
33354
|
-
if ((
|
|
33355
|
-
|
|
33356
|
-
const now = (/* @__PURE__ */ new Date()).getTime();
|
|
33357
|
-
const is = now - lastClickTime < 200;
|
|
33358
|
-
lastClickTime = now;
|
|
33359
|
-
return is;
|
|
33360
|
-
})()) {
|
|
33361
|
-
onDblclick();
|
|
32489
|
+
if (hasSupportedDblclick()) {
|
|
32490
|
+
emit("dblclick", e);
|
|
33362
32491
|
e.preventDefault();
|
|
33363
32492
|
return;
|
|
33364
32493
|
}
|
|
33365
|
-
emit("click", e
|
|
33366
|
-
editableTrigger.includes("click") && openEditor();
|
|
33367
|
-
},
|
|
33368
|
-
onMousedown: (e) => {
|
|
33369
|
-
emit("mousedown", e, cellPosition);
|
|
33370
|
-
},
|
|
33371
|
-
onMousemove: (e) => {
|
|
33372
|
-
emit("mousemove", e, cellPosition);
|
|
33373
|
-
},
|
|
33374
|
-
onKeydown: (e) => {
|
|
33375
|
-
emit("keydown", e, { cellPosition, isEditing });
|
|
32494
|
+
emit("click", e);
|
|
33376
32495
|
},
|
|
33377
32496
|
"data-level": level,
|
|
33378
32497
|
"aria-selected": "true"
|
|
@@ -33387,26 +32506,533 @@ const BodyCell = (props, { slots, emit }) => {
|
|
|
33387
32506
|
},
|
|
33388
32507
|
{ label: () => bodyCell }
|
|
33389
32508
|
) : null,
|
|
33390
|
-
renderCellVNode
|
|
33391
|
-
autoHeight && editInputRender ? createVNode(
|
|
33392
|
-
"label",
|
|
33393
|
-
{
|
|
33394
|
-
class: `${prefixCls}-cell-edit-wrapper`,
|
|
33395
|
-
onMousedown: (e) => e.stopPropagation()
|
|
33396
|
-
},
|
|
33397
|
-
[withDirectives(editInputRender, [[cellResize, cellResizeValue]])]
|
|
33398
|
-
) : editInputRender ? createVNode(
|
|
33399
|
-
"label",
|
|
33400
|
-
{
|
|
33401
|
-
class: `${prefixCls}-cell-edit-wrapper`,
|
|
33402
|
-
onMousedown: (e) => e.stopPropagation()
|
|
33403
|
-
},
|
|
33404
|
-
[editInputRender]
|
|
33405
|
-
) : null
|
|
32509
|
+
renderCellVNode
|
|
33406
32510
|
]
|
|
33407
32511
|
);
|
|
33408
32512
|
};
|
|
33409
|
-
BodyCell.props = cellProps;
|
|
32513
|
+
BodyCell$1.props = cellProps;
|
|
32514
|
+
|
|
32515
|
+
function getCharacterLength(str, maxCharacter) {
|
|
32516
|
+
const hasMaxCharacter = isNumber$2(maxCharacter);
|
|
32517
|
+
if (!str || str.length === 0) {
|
|
32518
|
+
if (hasMaxCharacter) {
|
|
32519
|
+
return {
|
|
32520
|
+
length: 0,
|
|
32521
|
+
characters: str
|
|
32522
|
+
};
|
|
32523
|
+
}
|
|
32524
|
+
return 0;
|
|
32525
|
+
}
|
|
32526
|
+
let len = 0;
|
|
32527
|
+
for (let i = 0; i < str.length; i++) {
|
|
32528
|
+
let currentStringLength = 0;
|
|
32529
|
+
if (str.charCodeAt(i) > 127) {
|
|
32530
|
+
currentStringLength = 2;
|
|
32531
|
+
} else {
|
|
32532
|
+
currentStringLength = 1;
|
|
32533
|
+
}
|
|
32534
|
+
if (hasMaxCharacter && len + currentStringLength > maxCharacter) {
|
|
32535
|
+
return {
|
|
32536
|
+
length: len,
|
|
32537
|
+
characters: str.slice(0, i)
|
|
32538
|
+
};
|
|
32539
|
+
}
|
|
32540
|
+
len += currentStringLength;
|
|
32541
|
+
}
|
|
32542
|
+
if (hasMaxCharacter) {
|
|
32543
|
+
return {
|
|
32544
|
+
length: len,
|
|
32545
|
+
characters: str
|
|
32546
|
+
};
|
|
32547
|
+
}
|
|
32548
|
+
return len;
|
|
32549
|
+
}
|
|
32550
|
+
function isValueEmpty(val) {
|
|
32551
|
+
const type = Object.prototype.toString.call(val);
|
|
32552
|
+
const typeMap = {
|
|
32553
|
+
Date: "[object Date]"
|
|
32554
|
+
};
|
|
32555
|
+
if (type === typeMap.Date) {
|
|
32556
|
+
return false;
|
|
32557
|
+
}
|
|
32558
|
+
return isObject$4(val) ? isEmpty(val) : ["", void 0, null].includes(val);
|
|
32559
|
+
}
|
|
32560
|
+
const VALIDATE_MAP = {
|
|
32561
|
+
required: (val) => !isValueEmpty(val),
|
|
32562
|
+
whitespace: (val) => !(/^\s+$/.test(val) || val === ""),
|
|
32563
|
+
boolean: (val) => isBoolean(val),
|
|
32564
|
+
max: (val, num) => isNumber$2(val) ? val <= num : getCharacterLength(val) <= num,
|
|
32565
|
+
min: (val, num) => isNumber$2(val) ? val >= num : getCharacterLength(val) >= num,
|
|
32566
|
+
len: (val, num) => getCharacterLength(String(val)) === num,
|
|
32567
|
+
number: (val) => isNumber$2(val),
|
|
32568
|
+
enum: (val, strs) => strs.includes(val),
|
|
32569
|
+
idcard: (val) => /^(\d{18,18}|\d{15,15}|\d{17,17}x)$/i.test(val),
|
|
32570
|
+
telnumber: (val) => /^1[3-9]\d{9}$/.test(val),
|
|
32571
|
+
pattern: (val, regexp) => regexp.test(val),
|
|
32572
|
+
// 自定义校验规则,可能是异步校验
|
|
32573
|
+
validator: (val, validate2) => validate2(val)
|
|
32574
|
+
};
|
|
32575
|
+
async function validateOneRule(value, rule) {
|
|
32576
|
+
let validateResult = { result: true };
|
|
32577
|
+
const keys = Object.keys(rule);
|
|
32578
|
+
let vOptions;
|
|
32579
|
+
let vValidateFun;
|
|
32580
|
+
for (let i = 0; i < keys.length; i++) {
|
|
32581
|
+
const key = keys[i];
|
|
32582
|
+
if (!rule.required && isValueEmpty(value) && !rule.validator) {
|
|
32583
|
+
return validateResult;
|
|
32584
|
+
}
|
|
32585
|
+
const validateRule = VALIDATE_MAP[key];
|
|
32586
|
+
if (validateRule && (rule[key] || rule[key] === 0)) {
|
|
32587
|
+
vOptions = rule[key] === true ? void 0 : rule[key];
|
|
32588
|
+
vValidateFun = validateRule;
|
|
32589
|
+
break;
|
|
32590
|
+
}
|
|
32591
|
+
}
|
|
32592
|
+
if (vValidateFun) {
|
|
32593
|
+
validateResult = await vValidateFun(value, vOptions);
|
|
32594
|
+
if (isBoolean(validateResult)) {
|
|
32595
|
+
return { ...rule, result: validateResult };
|
|
32596
|
+
}
|
|
32597
|
+
if (isObject$4(validateResult)) {
|
|
32598
|
+
return validateResult;
|
|
32599
|
+
}
|
|
32600
|
+
}
|
|
32601
|
+
return validateResult;
|
|
32602
|
+
}
|
|
32603
|
+
async function validate(value, rules) {
|
|
32604
|
+
const all = rules.map((rule) => validateOneRule(value, rule));
|
|
32605
|
+
const r = await Promise.all(all);
|
|
32606
|
+
return r;
|
|
32607
|
+
}
|
|
32608
|
+
|
|
32609
|
+
const parsingValueEnumToArray = (valueEnum) => {
|
|
32610
|
+
const enumArray = [];
|
|
32611
|
+
const valueKeys = Object.keys(valueEnum != null ? valueEnum : {});
|
|
32612
|
+
if (!(valueKeys == null ? void 0 : valueKeys.length)) {
|
|
32613
|
+
return;
|
|
32614
|
+
}
|
|
32615
|
+
valueKeys.forEach((key) => {
|
|
32616
|
+
const value = valueEnum[key];
|
|
32617
|
+
if (!value) {
|
|
32618
|
+
return;
|
|
32619
|
+
}
|
|
32620
|
+
if (typeof value === "object" && (value == null ? void 0 : value.text)) {
|
|
32621
|
+
enumArray.push({
|
|
32622
|
+
text: value == null ? void 0 : value.text,
|
|
32623
|
+
value: key,
|
|
32624
|
+
label: value == null ? void 0 : value.text,
|
|
32625
|
+
disabled: value.disabled
|
|
32626
|
+
});
|
|
32627
|
+
return;
|
|
32628
|
+
}
|
|
32629
|
+
enumArray.push({
|
|
32630
|
+
text: value,
|
|
32631
|
+
value: key,
|
|
32632
|
+
label: value
|
|
32633
|
+
});
|
|
32634
|
+
});
|
|
32635
|
+
return enumArray;
|
|
32636
|
+
};
|
|
32637
|
+
var BodyEditCell = /* @__PURE__ */ defineComponent({
|
|
32638
|
+
inheritAttrs: false,
|
|
32639
|
+
props: {
|
|
32640
|
+
prefixCls: String,
|
|
32641
|
+
rowIndex: {
|
|
32642
|
+
type: Number,
|
|
32643
|
+
required: true
|
|
32644
|
+
},
|
|
32645
|
+
flattenRowIndex: {
|
|
32646
|
+
type: Number,
|
|
32647
|
+
required: true
|
|
32648
|
+
},
|
|
32649
|
+
rowKey: {
|
|
32650
|
+
type: [Number, String]
|
|
32651
|
+
},
|
|
32652
|
+
column: {
|
|
32653
|
+
type: Object,
|
|
32654
|
+
default: () => ({})
|
|
32655
|
+
},
|
|
32656
|
+
item: {
|
|
32657
|
+
type: Object,
|
|
32658
|
+
default: () => ({})
|
|
32659
|
+
},
|
|
32660
|
+
isRowEdit: Boolean,
|
|
32661
|
+
editRow: {
|
|
32662
|
+
type: Object
|
|
32663
|
+
}
|
|
32664
|
+
},
|
|
32665
|
+
emits: ["closeEditor", "keydown"],
|
|
32666
|
+
setup(props) {
|
|
32667
|
+
const tableContext = useInjectTable();
|
|
32668
|
+
const level = useInjectLevel();
|
|
32669
|
+
const columnKey = computed(() => props.column.columnKey);
|
|
32670
|
+
const recordIndexs = computed(() => tableContext.getIndexsByKey(props.rowKey));
|
|
32671
|
+
const childrenColumnName = computed(() => tableContext.props.childrenColumnName || "children");
|
|
32672
|
+
const valueEnum = computed(() => {
|
|
32673
|
+
var _a;
|
|
32674
|
+
return parsingValueEnumToArray(runFunction((_a = props.column) == null ? void 0 : _a.valueEnum, props.item));
|
|
32675
|
+
});
|
|
32676
|
+
const errorList = ref();
|
|
32677
|
+
const {
|
|
32678
|
+
editRowsMap,
|
|
32679
|
+
setEditingCell
|
|
32680
|
+
} = useEditInject();
|
|
32681
|
+
const cellValue = computed(() => props.column.dataIndex ? get(!props.isRowEdit ? props.item : props.editRow, props.column.dataIndex) : void 0);
|
|
32682
|
+
const cellRender = computed(() => {
|
|
32683
|
+
var _a, _b;
|
|
32684
|
+
return ((_b = (_a = tableContext.allCellProps.value) == null ? void 0 : _a[props.rowKey]) == null ? void 0 : _b[props.column.columnKey]) || {};
|
|
32685
|
+
});
|
|
32686
|
+
const cellProps = computed(() => cellRender.value.props || {});
|
|
32687
|
+
const cellRowSpan = computed(() => cellProps.value.rowSpan);
|
|
32688
|
+
const sorterState = computed(() => tableContext.sorterStates.value.find(({
|
|
32689
|
+
key
|
|
32690
|
+
}) => key === columnKey.value));
|
|
32691
|
+
const sorterOrder = computed(() => {
|
|
32692
|
+
var _a;
|
|
32693
|
+
return sorterState.value ? (_a = sorterState.value) == null ? void 0 : _a.sortOrder : null;
|
|
32694
|
+
});
|
|
32695
|
+
const cellClass = computed(() => ({
|
|
32696
|
+
[`${props.prefixCls}-cell`]: true,
|
|
32697
|
+
[`${props.prefixCls}-first-cell`]: props.column.columnIndex === 0,
|
|
32698
|
+
[`${props.prefixCls}-body-cell`]: true,
|
|
32699
|
+
[`${props.prefixCls}-cell-multi`]: cellRowSpan.value > 1,
|
|
32700
|
+
[`${props.prefixCls}-cell-hidden`]: cellRowSpan.value === 0,
|
|
32701
|
+
[`${props.prefixCls}-column-sort`]: sorterOrder.value
|
|
32702
|
+
}));
|
|
32703
|
+
const rules = computed(() => {
|
|
32704
|
+
var _a, _b;
|
|
32705
|
+
return (_b = runFunction((_a = props.column.edit) == null ? void 0 : _a.rules, {
|
|
32706
|
+
column: props.column,
|
|
32707
|
+
record: props.isRowEdit ? props.editRow : props.item,
|
|
32708
|
+
recordIndexs: recordIndexs.value,
|
|
32709
|
+
newValue: cellValue.value
|
|
32710
|
+
})) != null ? _b : [];
|
|
32711
|
+
});
|
|
32712
|
+
const validateEnabled = computed(() => rules.value.length > 0);
|
|
32713
|
+
const editValue = ref();
|
|
32714
|
+
const cellParams = computed(() => ({
|
|
32715
|
+
column: props.column,
|
|
32716
|
+
record: !props.isRowEdit ? props.item : props.editRow,
|
|
32717
|
+
recordIndexs: recordIndexs.value,
|
|
32718
|
+
value: editValue.value
|
|
32719
|
+
}));
|
|
32720
|
+
const editOnListeners = computed(() => {
|
|
32721
|
+
var _a, _b;
|
|
32722
|
+
return ((_b = (_a = props.column.edit) == null ? void 0 : _a.on) == null ? void 0 : _b.call(_a, {
|
|
32723
|
+
...cellParams.value
|
|
32724
|
+
})) || {};
|
|
32725
|
+
});
|
|
32726
|
+
const editProps = computed(() => {
|
|
32727
|
+
const {
|
|
32728
|
+
edit = {}
|
|
32729
|
+
} = props.column;
|
|
32730
|
+
return isFunction$2(edit.props) ? edit.props(cellParams.value) : {
|
|
32731
|
+
...edit.props
|
|
32732
|
+
};
|
|
32733
|
+
});
|
|
32734
|
+
const options = computed(() => {
|
|
32735
|
+
var _a, _b;
|
|
32736
|
+
return (_b = (_a = editProps.value) == null ? void 0 : _a.options) != null ? _b : valueEnum.value;
|
|
32737
|
+
});
|
|
32738
|
+
const componentProps = computed(() => {
|
|
32739
|
+
const {
|
|
32740
|
+
edit
|
|
32741
|
+
} = props.column;
|
|
32742
|
+
if (!edit) return {};
|
|
32743
|
+
const tmpProps = {
|
|
32744
|
+
...editProps.value
|
|
32745
|
+
};
|
|
32746
|
+
delete tmpProps.onChange;
|
|
32747
|
+
delete tmpProps.value;
|
|
32748
|
+
delete tmpProps.options;
|
|
32749
|
+
return tmpProps;
|
|
32750
|
+
});
|
|
32751
|
+
const validateEdit = () => {
|
|
32752
|
+
return new Promise((resolve) => {
|
|
32753
|
+
if (!validateEnabled.value) {
|
|
32754
|
+
resolve(true);
|
|
32755
|
+
return true;
|
|
32756
|
+
}
|
|
32757
|
+
validate(editValue.value, rules.value).then((result) => {
|
|
32758
|
+
const list = result == null ? void 0 : result.filter((t) => !t.result);
|
|
32759
|
+
if (!list || !list.length) {
|
|
32760
|
+
errorList.value = [];
|
|
32761
|
+
resolve(true);
|
|
32762
|
+
} else {
|
|
32763
|
+
errorList.value = list;
|
|
32764
|
+
resolve(list);
|
|
32765
|
+
}
|
|
32766
|
+
});
|
|
32767
|
+
});
|
|
32768
|
+
};
|
|
32769
|
+
const onEditChange = (val, ...args) => {
|
|
32770
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
32771
|
+
const params = {
|
|
32772
|
+
column: props.column,
|
|
32773
|
+
record: props.isRowEdit ? props.editRow : props.item,
|
|
32774
|
+
recordIndexs: recordIndexs.value,
|
|
32775
|
+
newValue: cellValue.value
|
|
32776
|
+
};
|
|
32777
|
+
const value = (_c = (_b = (_a = props.column.edit) == null ? void 0 : _a.valueParser) == null ? void 0 : _b.call(_a, params)) != null ? _c : editValue.value;
|
|
32778
|
+
const valueSetter = (_d = props.column.edit) == null ? void 0 : _d.valueSetter;
|
|
32779
|
+
if (valueSetter) {
|
|
32780
|
+
valueSetter(params);
|
|
32781
|
+
} else {
|
|
32782
|
+
(_f = (_e = editProps.value) == null ? void 0 : _e.onChange) == null ? void 0 : _f.call(_e, val, ...args);
|
|
32783
|
+
(_h = (_g = editOnListeners.value) == null ? void 0 : _g.onChange) == null ? void 0 : _h.call(_g, params);
|
|
32784
|
+
if (props.isRowEdit) {
|
|
32785
|
+
const record = {
|
|
32786
|
+
...props.editRow
|
|
32787
|
+
};
|
|
32788
|
+
set(record, props.column.dataIndex, value);
|
|
32789
|
+
editRowsMap.value[props.rowKey] = record;
|
|
32790
|
+
triggerRef(editRowsMap);
|
|
32791
|
+
} else {
|
|
32792
|
+
let record = {};
|
|
32793
|
+
let dataSource = tableContext.rawData.value || [];
|
|
32794
|
+
recordIndexs.value.forEach((index) => {
|
|
32795
|
+
record = dataSource[index];
|
|
32796
|
+
dataSource = record[childrenColumnName.value] || [];
|
|
32797
|
+
});
|
|
32798
|
+
set(record, props.column.dataIndex, value);
|
|
32799
|
+
triggerRef(tableContext.rawData);
|
|
32800
|
+
}
|
|
32801
|
+
}
|
|
32802
|
+
validateEdit();
|
|
32803
|
+
};
|
|
32804
|
+
watch(cellValue, (value) => {
|
|
32805
|
+
var _a, _b, _c;
|
|
32806
|
+
editValue.value = (_c = (_b = (_a = props.column.edit) == null ? void 0 : _a.valueGetter) == null ? void 0 : _b.call(_a, cellParams.value)) != null ? _c : value;
|
|
32807
|
+
}, {
|
|
32808
|
+
immediate: true
|
|
32809
|
+
});
|
|
32810
|
+
onMounted(() => {
|
|
32811
|
+
setEditingCell({
|
|
32812
|
+
recordIndexs: recordIndexs.value,
|
|
32813
|
+
column: props.column,
|
|
32814
|
+
rowKey: props.rowKey,
|
|
32815
|
+
originRecord: props.item,
|
|
32816
|
+
rowIndex: props.rowIndex,
|
|
32817
|
+
columnKey: props.column.columnKey,
|
|
32818
|
+
validateEdit
|
|
32819
|
+
}, true);
|
|
32820
|
+
});
|
|
32821
|
+
onUnmounted(() => {
|
|
32822
|
+
var _a, _b, _c;
|
|
32823
|
+
setEditingCell({
|
|
32824
|
+
recordIndexs: recordIndexs.value,
|
|
32825
|
+
column: props.column,
|
|
32826
|
+
rowKey: props.rowKey,
|
|
32827
|
+
originRecord: props.item,
|
|
32828
|
+
rowIndex: props.rowIndex,
|
|
32829
|
+
columnKey: props.column.columnKey,
|
|
32830
|
+
validateEdit
|
|
32831
|
+
}, false);
|
|
32832
|
+
(_c = (_b = (_a = props.column) == null ? void 0 : _a.edit) == null ? void 0 : _b.onEdited) == null ? void 0 : _c.call(_b, cellParams.value);
|
|
32833
|
+
});
|
|
32834
|
+
return () => {
|
|
32835
|
+
var _a, _b, _c, _d;
|
|
32836
|
+
const Component = (_a = props.column.edit) == null ? void 0 : _a.component;
|
|
32837
|
+
const errorMessage = (_c = (_b = errorList.value) == null ? void 0 : _b[0]) == null ? void 0 : _c.message;
|
|
32838
|
+
const inlineError = (_d = props.column.edit) == null ? void 0 : _d.inlineError;
|
|
32839
|
+
const tmpEditOnListeners = {
|
|
32840
|
+
...editOnListeners.value
|
|
32841
|
+
};
|
|
32842
|
+
delete tmpEditOnListeners.onChange;
|
|
32843
|
+
return createVNode("div", mergeProps(cellProps.value, {
|
|
32844
|
+
"class": cellClass.value,
|
|
32845
|
+
"tabindex": "-1",
|
|
32846
|
+
"role": "cell",
|
|
32847
|
+
"data-column-key": columnKey.value,
|
|
32848
|
+
"data-level": level,
|
|
32849
|
+
"aria-selected": "true",
|
|
32850
|
+
"onClick": (e) => {
|
|
32851
|
+
e.stopPropagation();
|
|
32852
|
+
}
|
|
32853
|
+
}), [createVNode("div", {
|
|
32854
|
+
"class": `${props.prefixCls}-cell-content`,
|
|
32855
|
+
"style": "width: 100%; position:relative"
|
|
32856
|
+
}, [createVNode(Component, mergeProps({
|
|
32857
|
+
"style": "width: 100%",
|
|
32858
|
+
"status": errorMessage ? "error" : void 0,
|
|
32859
|
+
"value": editValue.value,
|
|
32860
|
+
"onUpdate:value": ($event) => editValue.value = $event,
|
|
32861
|
+
"getPopupContainer": () => document.body
|
|
32862
|
+
}, componentProps.value, tmpEditOnListeners, {
|
|
32863
|
+
"options": options.value,
|
|
32864
|
+
"onChange": onEditChange
|
|
32865
|
+
}), null), errorMessage && (!inlineError ? createVNode(Popover, {
|
|
32866
|
+
"arrowPointAtCenter": true,
|
|
32867
|
+
"placement": "topRight",
|
|
32868
|
+
"getPopupContainer": () => document.body
|
|
32869
|
+
}, {
|
|
32870
|
+
default: () => [createVNode("span", {
|
|
32871
|
+
"class": `${props.prefixCls}-cell-content-error`
|
|
32872
|
+
}, [createVNode(CloseCircleFilled, null, null)])],
|
|
32873
|
+
content: () => {
|
|
32874
|
+
var _a2;
|
|
32875
|
+
return createVNode("div", {
|
|
32876
|
+
"class": `${props.prefixCls}-cell-content-error-message`
|
|
32877
|
+
}, [(_a2 = errorList.value) == null ? void 0 : _a2.map((error) => createVNode("div", {
|
|
32878
|
+
"key": error.message
|
|
32879
|
+
}, [error.message]))]);
|
|
32880
|
+
}
|
|
32881
|
+
}) : createVNode("div", {
|
|
32882
|
+
"class": `${props.prefixCls}-cell-content-error-inline`
|
|
32883
|
+
}, [errorMessage]))])]);
|
|
32884
|
+
};
|
|
32885
|
+
}
|
|
32886
|
+
});
|
|
32887
|
+
|
|
32888
|
+
var _sfc_main$n = defineComponent({
|
|
32889
|
+
inheritAttrs: false,
|
|
32890
|
+
props: {
|
|
32891
|
+
prefixCls: String,
|
|
32892
|
+
rowIndex: { type: Number, required: true },
|
|
32893
|
+
flattenRowIndex: { type: Number, required: true },
|
|
32894
|
+
rowKey: { type: [Number, String] },
|
|
32895
|
+
column: { type: Object, default: () => ({}) },
|
|
32896
|
+
item: { type: Object, default: () => ({}) },
|
|
32897
|
+
wrapText: { type: Boolean, default: false },
|
|
32898
|
+
type: { type: String },
|
|
32899
|
+
height: Number,
|
|
32900
|
+
hasAppendNode: Boolean,
|
|
32901
|
+
resizeObserver: { type: Object },
|
|
32902
|
+
editRow: { type: Object },
|
|
32903
|
+
calMaxHeight: Function,
|
|
32904
|
+
editCellKeys: Array,
|
|
32905
|
+
editableKeys: Array,
|
|
32906
|
+
isRowEdit: Boolean,
|
|
32907
|
+
tooltipOpen: Boolean,
|
|
32908
|
+
getPopupContainer: Function,
|
|
32909
|
+
onOpenEditor: Function,
|
|
32910
|
+
onCloseEditor: Function,
|
|
32911
|
+
onCellLeave: Function,
|
|
32912
|
+
onMouseenter: Function
|
|
32913
|
+
},
|
|
32914
|
+
emits: ["mouseenter", "cellLeave"],
|
|
32915
|
+
components: { BodyTextCell: BodyCell$1, BodyEditCell },
|
|
32916
|
+
setup(props) {
|
|
32917
|
+
const tableContext = useInjectTable();
|
|
32918
|
+
const isKeepEditMode = computed(() => {
|
|
32919
|
+
var _a;
|
|
32920
|
+
return (_a = props.column.edit) == null ? void 0 : _a.keepEditMode;
|
|
32921
|
+
});
|
|
32922
|
+
const cellValue = computed(
|
|
32923
|
+
() => props.column.dataIndex ? get(props.item, props.column.dataIndex) : void 0
|
|
32924
|
+
);
|
|
32925
|
+
const key = computed(() => getCellKey(props.rowKey, props.column.columnKey));
|
|
32926
|
+
const cellParams = computed(() => ({
|
|
32927
|
+
column: props.column,
|
|
32928
|
+
record: props.isRowEdit ? props.editRow : props.item,
|
|
32929
|
+
recordIndexs: tableContext.getIndexsByKey(props.rowKey),
|
|
32930
|
+
value: cellValue.value
|
|
32931
|
+
}));
|
|
32932
|
+
const editable = computed(() => {
|
|
32933
|
+
var _a, _b, _c, _d;
|
|
32934
|
+
if (!((_a = props.column.edit) == null ? void 0 : _a.component)) {
|
|
32935
|
+
return false;
|
|
32936
|
+
}
|
|
32937
|
+
if (props.isRowEdit && !((_b = props.editableKeys) == null ? void 0 : _b.includes(props.rowKey))) {
|
|
32938
|
+
return false;
|
|
32939
|
+
}
|
|
32940
|
+
if (!((_c = props.column.edit) == null ? void 0 : _c.editable)) {
|
|
32941
|
+
return true;
|
|
32942
|
+
}
|
|
32943
|
+
const cellEditable = (_d = props.column.edit) == null ? void 0 : _d.editable(cellParams.value);
|
|
32944
|
+
return cellEditable;
|
|
32945
|
+
});
|
|
32946
|
+
const isEditing = computed(() => {
|
|
32947
|
+
var _a, _b;
|
|
32948
|
+
if (props.isRowEdit) {
|
|
32949
|
+
return editable.value && ((_a = props.editableKeys) == null ? void 0 : _a.includes(props.rowKey));
|
|
32950
|
+
}
|
|
32951
|
+
if (!editable.value) {
|
|
32952
|
+
return false;
|
|
32953
|
+
}
|
|
32954
|
+
if (isKeepEditMode.value) {
|
|
32955
|
+
return true;
|
|
32956
|
+
}
|
|
32957
|
+
if ((_b = props.editCellKeys) == null ? void 0 : _b.includes(key.value)) {
|
|
32958
|
+
return true;
|
|
32959
|
+
}
|
|
32960
|
+
return false;
|
|
32961
|
+
});
|
|
32962
|
+
const editableTrigger = computed(() => {
|
|
32963
|
+
var _a;
|
|
32964
|
+
let { editableTrigger: editableTrigger2 = ["click"] } = (_a = props.column.edit) != null ? _a : {};
|
|
32965
|
+
editableTrigger2 = Array.isArray(editableTrigger2) ? editableTrigger2 : [editableTrigger2];
|
|
32966
|
+
return editableTrigger2;
|
|
32967
|
+
});
|
|
32968
|
+
const onCellEvent = (e, trigger) => {
|
|
32969
|
+
var _a;
|
|
32970
|
+
if (editable.value && ((_a = editableTrigger.value) == null ? void 0 : _a.includes(trigger)) && !props.isRowEdit) {
|
|
32971
|
+
openEditor();
|
|
32972
|
+
closeEditor();
|
|
32973
|
+
e.stopPropagation();
|
|
32974
|
+
e.preventDefault();
|
|
32975
|
+
}
|
|
32976
|
+
};
|
|
32977
|
+
const openEditor = () => {
|
|
32978
|
+
var _a, _b, _c, _d;
|
|
32979
|
+
const oldValue = (_c = (_b = (_a = props.column.edit) == null ? void 0 : _a.valueGetter) == null ? void 0 : _b.call(_a, cellParams.value)) != null ? _c : cellValue.value;
|
|
32980
|
+
(_d = props.onOpenEditor) == null ? void 0 : _d.call(props, key.value, { [key.value]: oldValue });
|
|
32981
|
+
};
|
|
32982
|
+
const closeEditor = () => {
|
|
32983
|
+
var _a;
|
|
32984
|
+
(_a = props.onCloseEditor) == null ? void 0 : _a.call(props, key.value);
|
|
32985
|
+
};
|
|
32986
|
+
watch(key, () => {
|
|
32987
|
+
var _a;
|
|
32988
|
+
if (((_a = props.column.edit) == null ? void 0 : _a.defaultEditable) && !props.isRowEdit) {
|
|
32989
|
+
openEditor();
|
|
32990
|
+
}
|
|
32991
|
+
});
|
|
32992
|
+
onMounted(() => {
|
|
32993
|
+
var _a;
|
|
32994
|
+
if (((_a = props.column.edit) == null ? void 0 : _a.defaultEditable) && !props.isRowEdit) {
|
|
32995
|
+
openEditor();
|
|
32996
|
+
}
|
|
32997
|
+
});
|
|
32998
|
+
return {
|
|
32999
|
+
props,
|
|
33000
|
+
key,
|
|
33001
|
+
isEditing,
|
|
33002
|
+
editable,
|
|
33003
|
+
onCellEvent
|
|
33004
|
+
};
|
|
33005
|
+
}
|
|
33006
|
+
});
|
|
33007
|
+
|
|
33008
|
+
function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
|
|
33009
|
+
const _component_BodyEditCell = resolveComponent("BodyEditCell");
|
|
33010
|
+
const _component_BodyTextCell = resolveComponent("BodyTextCell");
|
|
33011
|
+
return _ctx.isEditing ? (openBlock(), createBlock(_component_BodyEditCell, {
|
|
33012
|
+
key: _ctx.key,
|
|
33013
|
+
prefixCls: _ctx.prefixCls,
|
|
33014
|
+
rowIndex: _ctx.rowIndex,
|
|
33015
|
+
flattenRowIndex: _ctx.flattenRowIndex,
|
|
33016
|
+
rowKey: _ctx.rowKey,
|
|
33017
|
+
column: _ctx.column,
|
|
33018
|
+
item: _ctx.item,
|
|
33019
|
+
"edit-row": _ctx.editRow,
|
|
33020
|
+
"editable-keys": _ctx.editableKeys,
|
|
33021
|
+
"is-row-edit": _ctx.isRowEdit
|
|
33022
|
+
}, null, 8, ["prefixCls", "rowIndex", "flattenRowIndex", "rowKey", "column", "item", "edit-row", "editable-keys", "is-row-edit"])) : (openBlock(), createBlock(_component_BodyTextCell, mergeProps({ key: 1 }, _ctx.props, {
|
|
33023
|
+
style: { cursor: _ctx.editable ? "poiner" : "" },
|
|
33024
|
+
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.onCellEvent($event, "click")),
|
|
33025
|
+
onDblClick: _cache[1] || (_cache[1] = ($event) => _ctx.onCellEvent($event, "dblClick")),
|
|
33026
|
+
onContextmenu: _cache[2] || (_cache[2] = ($event) => _ctx.onCellEvent($event, "contextmenu"))
|
|
33027
|
+
}), {
|
|
33028
|
+
appendNode: withCtx(() => [
|
|
33029
|
+
renderSlot(_ctx.$slots, "appendNode")
|
|
33030
|
+
]),
|
|
33031
|
+
_: 3
|
|
33032
|
+
/* FORWARDED */
|
|
33033
|
+
}, 16, ["style"]));
|
|
33034
|
+
}
|
|
33035
|
+
var BodyCell = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$j]]);
|
|
33410
33036
|
|
|
33411
33037
|
var _sfc_main$m = defineComponent({
|
|
33412
33038
|
name: "TableExpandedRow",
|
|
@@ -33486,7 +33112,7 @@ var _sfc_main$m = defineComponent({
|
|
|
33486
33112
|
}
|
|
33487
33113
|
});
|
|
33488
33114
|
|
|
33489
|
-
const _hoisted_1$
|
|
33115
|
+
const _hoisted_1$8 = ["data-cell-auto"];
|
|
33490
33116
|
function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
33491
33117
|
const _component_RenderVNode = resolveComponent("RenderVNode");
|
|
33492
33118
|
const _directive_cell_resize = resolveDirective("cell-resize");
|
|
@@ -33518,7 +33144,7 @@ function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
33518
33144
|
2
|
|
33519
33145
|
/* CLASS */
|
|
33520
33146
|
)
|
|
33521
|
-
], 10, _hoisted_1$
|
|
33147
|
+
], 10, _hoisted_1$8)), [
|
|
33522
33148
|
[_directive_cell_resize, _ctx.cellResizeBind]
|
|
33523
33149
|
])
|
|
33524
33150
|
],
|
|
@@ -33571,7 +33197,7 @@ var _sfc_main$l = defineComponent({
|
|
|
33571
33197
|
}
|
|
33572
33198
|
});
|
|
33573
33199
|
|
|
33574
|
-
const _hoisted_1$
|
|
33200
|
+
const _hoisted_1$7 = ["aria-label"];
|
|
33575
33201
|
function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
|
|
33576
33202
|
return _ctx.expandIcon ? (openBlock(), createElementBlock("span", {
|
|
33577
33203
|
key: 0,
|
|
@@ -33585,7 +33211,7 @@ function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
33585
33211
|
class: normalizeClass(_ctx.className),
|
|
33586
33212
|
"aria-label": _ctx.label,
|
|
33587
33213
|
onClick: _cache[1] || (_cache[1] = withModifiers((...args) => _ctx.handleClick && _ctx.handleClick(...args), ["stop"]))
|
|
33588
|
-
}, null, 10, _hoisted_1$
|
|
33214
|
+
}, null, 10, _hoisted_1$7));
|
|
33589
33215
|
}
|
|
33590
33216
|
var ExpandIcon = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$h]]);
|
|
33591
33217
|
|
|
@@ -33784,8 +33410,8 @@ var _sfc_main$k = defineComponent({
|
|
|
33784
33410
|
}
|
|
33785
33411
|
});
|
|
33786
33412
|
|
|
33787
|
-
const _hoisted_1$
|
|
33788
|
-
const _hoisted_2$
|
|
33413
|
+
const _hoisted_1$6 = ["data-level"];
|
|
33414
|
+
const _hoisted_2$2 = {
|
|
33789
33415
|
key: 2,
|
|
33790
33416
|
draggable: true
|
|
33791
33417
|
};
|
|
@@ -33843,12 +33469,12 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
33843
33469
|
record: _ctx.record,
|
|
33844
33470
|
disabled: !_ctx.supportExpand,
|
|
33845
33471
|
onExpand: _ctx.onInternalTriggerExpand
|
|
33846
|
-
}, null, 8, ["prefix-cls", "expandIconType", "expanded", "record", "disabled", "onExpand"])) : _ctx.column.type === "draggable" ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
33472
|
+
}, null, 8, ["prefix-cls", "expandIconType", "expanded", "record", "disabled", "onExpand"])) : _ctx.column.type === "draggable" ? (openBlock(), createElementBlock("div", _hoisted_2$2, [
|
|
33847
33473
|
renderSlot(_ctx.$slots, "draggable-handle", {}, () => [
|
|
33848
33474
|
createVNode(_component_MenuOutlined)
|
|
33849
33475
|
])
|
|
33850
33476
|
])) : createCommentVNode("v-if", true)
|
|
33851
|
-
], 16, _hoisted_1$
|
|
33477
|
+
], 16, _hoisted_1$6);
|
|
33852
33478
|
}
|
|
33853
33479
|
var BodyExtraCell = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$g]]);
|
|
33854
33480
|
|
|
@@ -33860,7 +33486,8 @@ var _sfc_main$j = defineComponent({
|
|
|
33860
33486
|
BodyCell,
|
|
33861
33487
|
ExpandedRow,
|
|
33862
33488
|
BodyExtraCell,
|
|
33863
|
-
RenderSlot
|
|
33489
|
+
RenderSlot,
|
|
33490
|
+
BodyTextCell: BodyCell$1
|
|
33864
33491
|
},
|
|
33865
33492
|
inheritAttrs: false,
|
|
33866
33493
|
props: {
|
|
@@ -33882,11 +33509,17 @@ var _sfc_main$j = defineComponent({
|
|
|
33882
33509
|
const tableContext = useInjectTable();
|
|
33883
33510
|
const rowInstance = getCurrentInstance();
|
|
33884
33511
|
const { table } = useProConfigInject();
|
|
33885
|
-
const { editCellKeys, closeEditor, openEditor } = useEditInject();
|
|
33512
|
+
const { editCellKeys, isRowEdit, mergedEditableKeys, editRowsMap, closeEditor, openEditor } = useEditInject();
|
|
33513
|
+
const editRow = computed(() => editRowsMap.value[props.rowKey]);
|
|
33886
33514
|
let isUnmount = false;
|
|
33887
33515
|
const bodyRow = ref();
|
|
33888
|
-
const
|
|
33889
|
-
|
|
33516
|
+
const isCurrentEditRow = computed(() => {
|
|
33517
|
+
var _a;
|
|
33518
|
+
if (isRowEdit.value) {
|
|
33519
|
+
return (_a = mergedEditableKeys.value) == null ? void 0 : _a.includes(props.rowKey);
|
|
33520
|
+
}
|
|
33521
|
+
return true;
|
|
33522
|
+
});
|
|
33890
33523
|
const calMaxHeight = () => {
|
|
33891
33524
|
if (isUnmount) return;
|
|
33892
33525
|
let rowHeight = 0;
|
|
@@ -34088,6 +33721,7 @@ var _sfc_main$j = defineComponent({
|
|
|
34088
33721
|
rowStyle,
|
|
34089
33722
|
cellClass,
|
|
34090
33723
|
tableContext,
|
|
33724
|
+
isCurrentEditRow,
|
|
34091
33725
|
mergedRowHeights,
|
|
34092
33726
|
handleCellBlur,
|
|
34093
33727
|
handleCellHover,
|
|
@@ -34115,29 +33749,29 @@ var _sfc_main$j = defineComponent({
|
|
|
34115
33749
|
resizeObserver,
|
|
34116
33750
|
calMaxHeight,
|
|
34117
33751
|
bodyRow,
|
|
33752
|
+
editCellKeys,
|
|
33753
|
+
isRowEdit,
|
|
33754
|
+
editRow,
|
|
33755
|
+
mergedEditableKeys,
|
|
33756
|
+
openEditor,
|
|
33757
|
+
closeEditor,
|
|
34118
33758
|
hoverRowKey,
|
|
34119
33759
|
hoverColumnKey,
|
|
34120
33760
|
xVirtual: eagerComputed(() => tableContext.xVirtual.value),
|
|
34121
33761
|
getPopupContainer: () => popupContainer.value,
|
|
34122
|
-
|
|
34123
|
-
closeEditor,
|
|
34124
|
-
openEditor,
|
|
34125
|
-
mergedTooltipOpen,
|
|
34126
|
-
onCellMousedown,
|
|
34127
|
-
onCellKeydown,
|
|
34128
|
-
onCellMousemove,
|
|
34129
|
-
onCellClick
|
|
33762
|
+
mergedTooltipOpen
|
|
34130
33763
|
};
|
|
34131
33764
|
}
|
|
34132
33765
|
});
|
|
34133
33766
|
|
|
34134
|
-
const _hoisted_1$
|
|
34135
|
-
const _hoisted_2 = ["data-row-key"];
|
|
33767
|
+
const _hoisted_1$5 = ["data-row-key"];
|
|
33768
|
+
const _hoisted_2$1 = ["data-row-key"];
|
|
34136
33769
|
function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
34137
33770
|
const _component_ExpandedRow = resolveComponent("ExpandedRow");
|
|
34138
33771
|
const _component_BodyExtraCell = resolveComponent("BodyExtraCell");
|
|
34139
33772
|
const _component_ExpandIcon = resolveComponent("ExpandIcon");
|
|
34140
33773
|
const _component_BodyCell = resolveComponent("BodyCell");
|
|
33774
|
+
const _component_BodyTextCell = resolveComponent("BodyTextCell");
|
|
34141
33775
|
const _component_RenderSlot = resolveComponent("RenderSlot");
|
|
34142
33776
|
return _ctx.isExpandRow ? (openBlock(), createElementBlock(
|
|
34143
33777
|
Fragment,
|
|
@@ -34159,7 +33793,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
34159
33793
|
"resize-observer": _ctx.resizeObserver,
|
|
34160
33794
|
"cal-max-height": _ctx.calMaxHeight
|
|
34161
33795
|
}, null, 8, ["prefix-cls", "item", "row-key", "row-index", "resize-observer", "cal-max-height"])
|
|
34162
|
-
], 14, _hoisted_1$
|
|
33796
|
+
], 14, _hoisted_1$5)) : createCommentVNode("v-if", true)
|
|
34163
33797
|
],
|
|
34164
33798
|
64
|
|
34165
33799
|
/* STABLE_FRAGMENT */
|
|
@@ -34177,7 +33811,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
34177
33811
|
Fragment,
|
|
34178
33812
|
null,
|
|
34179
33813
|
renderList(_ctx.mergedColumns, (column, index) => {
|
|
34180
|
-
var _a;
|
|
33814
|
+
var _a, _b;
|
|
34181
33815
|
return openBlock(), createElementBlock(
|
|
34182
33816
|
Fragment,
|
|
34183
33817
|
{
|
|
@@ -34197,7 +33831,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
34197
33831
|
record: _ctx.record,
|
|
34198
33832
|
onMouseenter: ($event) => _ctx.handleCellHover(_ctx.rowKey, column.columnKey, _ctx.tableContext.draggingRowKey.value),
|
|
34199
33833
|
onMouseleave: _ctx.handleCellBlur
|
|
34200
|
-
}, null, 8, ["prefix-cls", "row-key", "row-index", "type", "column", "expanded", "expandIconType", "support-expand", "record", "onMouseenter", "onMouseleave"])) : column ? (openBlock(), createBlock(_component_BodyCell, {
|
|
33834
|
+
}, null, 8, ["prefix-cls", "row-key", "row-index", "type", "column", "expanded", "expandIconType", "support-expand", "record", "onMouseenter", "onMouseleave"])) : column && ((_b = column.edit) == null ? void 0 : _b.component) && _ctx.isCurrentEditRow ? (openBlock(), createBlock(_component_BodyCell, {
|
|
34201
33835
|
key: 1,
|
|
34202
33836
|
"prefix-cls": _ctx.prefixCls,
|
|
34203
33837
|
item: _ctx.record,
|
|
@@ -34214,14 +33848,68 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
34214
33848
|
"get-popup-container": _ctx.getPopupContainer,
|
|
34215
33849
|
"tooltip-open": _ctx.mergedTooltipOpen && _ctx.hoverColumnKey === column.columnKey,
|
|
34216
33850
|
"edit-cell-keys": _ctx.editCellKeys,
|
|
33851
|
+
"editable-keys": _ctx.mergedEditableKeys,
|
|
33852
|
+
"is-row-edit": _ctx.isRowEdit,
|
|
33853
|
+
"edit-row": _ctx.editRow,
|
|
33854
|
+
onCloseEditor: _ctx.closeEditor,
|
|
33855
|
+
onOpenEditor: _ctx.openEditor,
|
|
33856
|
+
onMouseenter: ($event) => _ctx.handleCellHover(_ctx.rowKey, column.columnKey, _ctx.tableContext.draggingRowKey.value),
|
|
33857
|
+
onCellLeave: _ctx.handleCellBlur
|
|
33858
|
+
}, {
|
|
33859
|
+
appendNode: withCtx(() => [
|
|
33860
|
+
createElementVNode(
|
|
33861
|
+
"div",
|
|
33862
|
+
{
|
|
33863
|
+
class: normalizeClass(`${_ctx.prefixCls}-append-node`)
|
|
33864
|
+
},
|
|
33865
|
+
[
|
|
33866
|
+
createElementVNode(
|
|
33867
|
+
"span",
|
|
33868
|
+
{
|
|
33869
|
+
style: normalizeStyle(`padding-left: ${(_ctx.indent || 0) * _ctx.indentSize}px`),
|
|
33870
|
+
class: normalizeClass(`${_ctx.prefixCls}-row-indent indent-level-${_ctx.indent}`)
|
|
33871
|
+
},
|
|
33872
|
+
null,
|
|
33873
|
+
6
|
|
33874
|
+
/* CLASS, STYLE */
|
|
33875
|
+
),
|
|
33876
|
+
createVNode(_component_ExpandIcon, {
|
|
33877
|
+
expanded: _ctx.expanded,
|
|
33878
|
+
expandIconType: _ctx.expandIconType,
|
|
33879
|
+
"prefix-cls": _ctx.prefixCls,
|
|
33880
|
+
expandable: _ctx.hasNestChildren,
|
|
33881
|
+
record: _ctx.record,
|
|
33882
|
+
disabled: !_ctx.mergedExpandable,
|
|
33883
|
+
onExpand: _ctx.onInternalTriggerExpand
|
|
33884
|
+
}, null, 8, ["expanded", "expandIconType", "prefix-cls", "expandable", "record", "disabled", "onExpand"])
|
|
33885
|
+
],
|
|
33886
|
+
2
|
|
33887
|
+
/* CLASS */
|
|
33888
|
+
)
|
|
33889
|
+
]),
|
|
33890
|
+
_: 1
|
|
33891
|
+
/* STABLE */
|
|
33892
|
+
}, 8, ["prefix-cls", "item", "row-key", "type", "row-index", "flatten-row-index", "wrap-text", "column", "resize-observer", "cal-max-height", "has-append-node", "height", "get-popup-container", "tooltip-open", "edit-cell-keys", "editable-keys", "is-row-edit", "edit-row", "onCloseEditor", "onOpenEditor", "onMouseenter", "onCellLeave"])) : column ? (openBlock(), createBlock(_component_BodyTextCell, {
|
|
33893
|
+
key: 2,
|
|
33894
|
+
"prefix-cls": _ctx.prefixCls,
|
|
33895
|
+
item: _ctx.record,
|
|
33896
|
+
"row-key": _ctx.rowKey,
|
|
33897
|
+
type: _ctx.type,
|
|
33898
|
+
"row-index": _ctx.rowIndex,
|
|
33899
|
+
"flatten-row-index": _ctx.flattenRowIndex,
|
|
33900
|
+
"wrap-text": _ctx.wrapText,
|
|
33901
|
+
column,
|
|
33902
|
+
"resize-observer": _ctx.resizeObserver,
|
|
33903
|
+
"cal-max-height": _ctx.calMaxHeight,
|
|
33904
|
+
"has-append-node": column.columnIndex === _ctx.expandIconColumnIndex && _ctx.nestExpandable,
|
|
33905
|
+
height: _ctx.cellHeight,
|
|
33906
|
+
"get-popup-container": _ctx.getPopupContainer,
|
|
33907
|
+
"tooltip-open": _ctx.mergedTooltipOpen && _ctx.hoverColumnKey === column.columnKey,
|
|
33908
|
+
"edit-cell-keys": _ctx.editCellKeys,
|
|
34217
33909
|
onCloseEditor: _ctx.closeEditor,
|
|
34218
33910
|
onOpenEditor: _ctx.openEditor,
|
|
34219
33911
|
onMouseenter: ($event) => _ctx.handleCellHover(_ctx.rowKey, column.columnKey, _ctx.tableContext.draggingRowKey.value),
|
|
34220
|
-
onCellLeave: _ctx.handleCellBlur
|
|
34221
|
-
onMousedown: _ctx.onCellMousedown,
|
|
34222
|
-
onMousemove: _ctx.onCellMousemove,
|
|
34223
|
-
onKeydown: _ctx.onCellKeydown,
|
|
34224
|
-
onClick: _ctx.onCellClick
|
|
33912
|
+
onCellLeave: _ctx.handleCellBlur
|
|
34225
33913
|
}, {
|
|
34226
33914
|
appendNode: withCtx(() => [
|
|
34227
33915
|
createElementVNode(
|
|
@@ -34256,7 +33944,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
34256
33944
|
]),
|
|
34257
33945
|
_: 1
|
|
34258
33946
|
/* STABLE */
|
|
34259
|
-
}, 8, ["prefix-cls", "item", "row-key", "type", "row-index", "flatten-row-index", "wrap-text", "column", "resize-observer", "cal-max-height", "has-append-node", "height", "get-popup-container", "tooltip-open", "edit-cell-keys", "onCloseEditor", "onOpenEditor", "onMouseenter", "onCellLeave"
|
|
33947
|
+
}, 8, ["prefix-cls", "item", "row-key", "type", "row-index", "flatten-row-index", "wrap-text", "column", "resize-observer", "cal-max-height", "has-append-node", "height", "get-popup-container", "tooltip-open", "edit-cell-keys", "onCloseEditor", "onOpenEditor", "onMouseenter", "onCellLeave"])) : createCommentVNode("v-if", true)
|
|
34260
33948
|
],
|
|
34261
33949
|
64
|
|
34262
33950
|
/* STABLE_FRAGMENT */
|
|
@@ -34279,7 +33967,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
34279
33967
|
2
|
|
34280
33968
|
/* CLASS */
|
|
34281
33969
|
)) : createCommentVNode("v-if", true)
|
|
34282
|
-
], 16, _hoisted_2));
|
|
33970
|
+
], 16, _hoisted_2$1));
|
|
34283
33971
|
}
|
|
34284
33972
|
var Row = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$f]]);
|
|
34285
33973
|
|
|
@@ -34922,7 +34610,7 @@ var _sfc_main$h = defineComponent({
|
|
|
34922
34610
|
}
|
|
34923
34611
|
});
|
|
34924
34612
|
|
|
34925
|
-
const _hoisted_1$
|
|
34613
|
+
const _hoisted_1$4 = { style: {
|
|
34926
34614
|
width: "100%",
|
|
34927
34615
|
overflow: "hidden",
|
|
34928
34616
|
position: "relative",
|
|
@@ -35034,7 +34722,7 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
35034
34722
|
onKeydown: _cache[9] || (_cache[9] = (...args) => _ctx.handleKeydown && _ctx.handleKeydown(...args))
|
|
35035
34723
|
},
|
|
35036
34724
|
[
|
|
35037
|
-
createElementVNode("div", _hoisted_1$
|
|
34725
|
+
createElementVNode("div", _hoisted_1$4, [
|
|
35038
34726
|
createElementVNode(
|
|
35039
34727
|
"div",
|
|
35040
34728
|
{
|
|
@@ -35506,7 +35194,8 @@ var _sfc_main$g = defineComponent({
|
|
|
35506
35194
|
"expandedRowsChange",
|
|
35507
35195
|
"resizeColumn",
|
|
35508
35196
|
"update:dataSource",
|
|
35509
|
-
"cellKeydown"
|
|
35197
|
+
"cellKeydown",
|
|
35198
|
+
"data-change"
|
|
35510
35199
|
],
|
|
35511
35200
|
slots: {},
|
|
35512
35201
|
setup(props, { expose, emit, slots }) {
|
|
@@ -35518,7 +35207,6 @@ var _sfc_main$g = defineComponent({
|
|
|
35518
35207
|
});
|
|
35519
35208
|
const popupContainer = shallowRef(null);
|
|
35520
35209
|
const customUiCls = usePrefixCls("custom-ui");
|
|
35521
|
-
const { editCellKeys, openEditor, closeEditor } = useEditProvider();
|
|
35522
35210
|
useProvidePopup();
|
|
35523
35211
|
const getPopupContainer = computed(() => props.getPopupContainer);
|
|
35524
35212
|
const { status, watermarkMsg } = useLicense();
|
|
@@ -35625,6 +35313,9 @@ var _sfc_main$g = defineComponent({
|
|
|
35625
35313
|
},
|
|
35626
35314
|
{ immediate: true, deep: !!props.deepWatchColumns }
|
|
35627
35315
|
);
|
|
35316
|
+
watch(rawData, (newData) => {
|
|
35317
|
+
emit("data-change", newData);
|
|
35318
|
+
});
|
|
35628
35319
|
const childrenColumnName = computed(
|
|
35629
35320
|
() => {
|
|
35630
35321
|
var _a, _b, _c;
|
|
@@ -35660,6 +35351,20 @@ var _sfc_main$g = defineComponent({
|
|
|
35660
35351
|
return { spinning: false };
|
|
35661
35352
|
}
|
|
35662
35353
|
});
|
|
35354
|
+
const {
|
|
35355
|
+
validateRowData,
|
|
35356
|
+
addEditRecord,
|
|
35357
|
+
cancelEditable,
|
|
35358
|
+
startEditable,
|
|
35359
|
+
saveEditable,
|
|
35360
|
+
isEditable,
|
|
35361
|
+
validateTableData
|
|
35362
|
+
} = useEditProvider(props, {
|
|
35363
|
+
getIndexsByKey,
|
|
35364
|
+
getRecordByKey,
|
|
35365
|
+
rawData,
|
|
35366
|
+
getRowKey
|
|
35367
|
+
});
|
|
35663
35368
|
onActivated(() => {
|
|
35664
35369
|
scrollTo({ left: 0, top: 0 });
|
|
35665
35370
|
});
|
|
@@ -35969,7 +35674,11 @@ var _sfc_main$g = defineComponent({
|
|
|
35969
35674
|
leftWidth,
|
|
35970
35675
|
centerWidth,
|
|
35971
35676
|
getRowHeight: cal.getRowHeight,
|
|
35972
|
-
customCell: toRef$1(props, "customCell")
|
|
35677
|
+
customCell: toRef$1(props, "customCell"),
|
|
35678
|
+
cancelEditable,
|
|
35679
|
+
startEditable,
|
|
35680
|
+
saveEditable,
|
|
35681
|
+
isEditable
|
|
35973
35682
|
});
|
|
35974
35683
|
watch(
|
|
35975
35684
|
[realHeaderHeight, scrollLeft],
|
|
@@ -35983,6 +35692,10 @@ var _sfc_main$g = defineComponent({
|
|
|
35983
35692
|
...cal,
|
|
35984
35693
|
...columns,
|
|
35985
35694
|
...cellProps,
|
|
35695
|
+
cancelEditable,
|
|
35696
|
+
startEditable,
|
|
35697
|
+
saveEditable,
|
|
35698
|
+
isEditable,
|
|
35986
35699
|
rootRef,
|
|
35987
35700
|
rawData,
|
|
35988
35701
|
getRowFlattenIndexByKey,
|
|
@@ -36200,99 +35913,22 @@ var _sfc_main$g = defineComponent({
|
|
|
36200
35913
|
});
|
|
36201
35914
|
const tabGuardTopRef = ref();
|
|
36202
35915
|
const tabGuardBottomRef = ref();
|
|
36203
|
-
const {
|
|
36204
|
-
navigationService,
|
|
36205
|
-
getSelectedRange,
|
|
36206
|
-
clearAllSelectedRange,
|
|
36207
|
-
copySelectedRange,
|
|
36208
|
-
appendCellToSelectedRange,
|
|
36209
|
-
onBodyKeydown
|
|
36210
|
-
} = useProvideRangeStore({
|
|
36211
|
-
allColumns: columns.allColumns,
|
|
36212
|
-
flattenData,
|
|
36213
|
-
rangeSelection: computed(() => props.rangeSelection),
|
|
36214
|
-
getRowByFlattenIndex,
|
|
36215
|
-
rootRef,
|
|
36216
|
-
prefixCls: computed(() => props.prefixCls),
|
|
36217
|
-
allCellProps: cellProps.allCellProps,
|
|
36218
|
-
tabGuardTopRef,
|
|
36219
|
-
tabGuardBottomRef,
|
|
36220
|
-
ensureCellColumnVisible: (cell) => {
|
|
36221
|
-
if (!cell.column || cell.column.fixed) return;
|
|
36222
|
-
const sl = scrollLeft.value;
|
|
36223
|
-
const pos2 = columns.getColumnPositionByKey(cell.column.columnKey);
|
|
36224
|
-
if (pos2) {
|
|
36225
|
-
const { width, left } = pos2;
|
|
36226
|
-
const lw = leftWidth.value;
|
|
36227
|
-
const rw = rightWidth.value;
|
|
36228
|
-
left - lw < sl ? scrollLeft.value = left - lw : left + width > sl + bodyWidth.value - rw && (scrollLeft.value = left + width - bodyWidth.value + rw);
|
|
36229
|
-
}
|
|
36230
|
-
},
|
|
36231
|
-
ensureCellRowVisible: (cell) => {
|
|
36232
|
-
var _a;
|
|
36233
|
-
const { rowIndex } = cell;
|
|
36234
|
-
const st = scrollTop.value;
|
|
36235
|
-
const row = getRowByFlattenIndex(rowIndex);
|
|
36236
|
-
const pos2 = cal.getRowPositionByKey(row.rowKey);
|
|
36237
|
-
const cprops = (((_a = cellProps.allCellProps.value[row.rowKey]) == null ? void 0 : _a[cell.column.columnKey]) || {}).props || {};
|
|
36238
|
-
const height = cal.getRowHeight(rowIndex, cprops.rowSpan);
|
|
36239
|
-
if (pos2 !== void 0) {
|
|
36240
|
-
updateAnimate();
|
|
36241
|
-
if (pos2 < st) {
|
|
36242
|
-
scrollTop.value = pos2;
|
|
36243
|
-
} else {
|
|
36244
|
-
if (pos2 + height > st + bodyHeight.value) {
|
|
36245
|
-
scrollTop.value = pos2 + height - bodyHeight.value;
|
|
36246
|
-
}
|
|
36247
|
-
}
|
|
36248
|
-
}
|
|
36249
|
-
},
|
|
36250
|
-
latestRangeStartCell,
|
|
36251
|
-
bodyRef: computed(() => {
|
|
36252
|
-
var _a;
|
|
36253
|
-
return (_a = bodyRef.value) == null ? void 0 : _a.bodyRef;
|
|
36254
|
-
}),
|
|
36255
|
-
scrollLeft,
|
|
36256
|
-
scrollTop,
|
|
36257
|
-
scrollTo,
|
|
36258
|
-
showVerticalScrollbar,
|
|
36259
|
-
showHorizontalScrollbar,
|
|
36260
|
-
getIndexsByKey,
|
|
36261
|
-
formatRangeCellText: (parmas) => {
|
|
36262
|
-
if (props.formatRangeCellText) {
|
|
36263
|
-
return props.formatRangeCellText(parmas);
|
|
36264
|
-
} else if (parmas.value) {
|
|
36265
|
-
return parmas.value;
|
|
36266
|
-
}
|
|
36267
|
-
return "";
|
|
36268
|
-
},
|
|
36269
|
-
editCellKeys,
|
|
36270
|
-
copyDelimiter: computed(() => props.copyDelimiter)
|
|
36271
|
-
});
|
|
36272
35916
|
expose({
|
|
36273
35917
|
scrollTo,
|
|
36274
35918
|
scrollLeft,
|
|
36275
35919
|
scrollTop,
|
|
36276
35920
|
rootRef,
|
|
36277
35921
|
paginationRef,
|
|
35922
|
+
validateRowData,
|
|
35923
|
+
addEditRecord,
|
|
35924
|
+
cancelEditable,
|
|
35925
|
+
startEditable,
|
|
35926
|
+
saveEditable,
|
|
35927
|
+
validateTableData,
|
|
36278
35928
|
bodyRef: computed(() => {
|
|
36279
35929
|
var _a;
|
|
36280
35930
|
return (_a = bodyRef.value) == null ? void 0 : _a.bodyRef;
|
|
36281
|
-
})
|
|
36282
|
-
getSelectedRange,
|
|
36283
|
-
clearAllSelectedRange,
|
|
36284
|
-
copySelectedRange,
|
|
36285
|
-
appendCellToSelectedRange,
|
|
36286
|
-
openEditor: (cellInfos) => {
|
|
36287
|
-
openEditor(cellInfos.map((info) => `${info.rowKey} ${info.columnKey}`));
|
|
36288
|
-
},
|
|
36289
|
-
closeEditor: (cellInfos) => {
|
|
36290
|
-
if (cellInfos) {
|
|
36291
|
-
closeEditor(cellInfos.map((info) => `${info.rowKey} ${info.columnKey}`));
|
|
36292
|
-
} else {
|
|
36293
|
-
closeEditor();
|
|
36294
|
-
}
|
|
36295
|
-
}
|
|
35931
|
+
})
|
|
36296
35932
|
});
|
|
36297
35933
|
return {
|
|
36298
35934
|
bodyRef,
|
|
@@ -36304,7 +35940,6 @@ var _sfc_main$g = defineComponent({
|
|
|
36304
35940
|
watermarkMsg,
|
|
36305
35941
|
rootStyle,
|
|
36306
35942
|
rootClass,
|
|
36307
|
-
onBodyKeydown,
|
|
36308
35943
|
watermarkStyle: computed(() => ({
|
|
36309
35944
|
minWidth: "100px!important",
|
|
36310
35945
|
minHeight: "40px!important",
|
|
@@ -36349,12 +35984,6 @@ var _sfc_main$g = defineComponent({
|
|
|
36349
35984
|
bottomPaginationHeight.value = e.detail.height;
|
|
36350
35985
|
},
|
|
36351
35986
|
popupContainer,
|
|
36352
|
-
handleGuardTopKeydown: (e) => {
|
|
36353
|
-
e.keyCode !== KeyCode.TAB || e.shiftKey || (navigationService.getFirstCellToFocus(e.shiftKey), e.preventDefault());
|
|
36354
|
-
},
|
|
36355
|
-
handleGuardBottomKeydown: (e) => {
|
|
36356
|
-
e.keyCode === KeyCode.TAB && e.shiftKey && (navigationService.getLastCellToFocus(e.shiftKey), e.preventDefault());
|
|
36357
|
-
},
|
|
36358
35987
|
tabGuardTopRef,
|
|
36359
35988
|
tabGuardBottomRef,
|
|
36360
35989
|
onShowSizeChange,
|
|
@@ -36365,6 +35994,18 @@ var _sfc_main$g = defineComponent({
|
|
|
36365
35994
|
}
|
|
36366
35995
|
});
|
|
36367
35996
|
|
|
35997
|
+
const _hoisted_1$3 = {
|
|
35998
|
+
ref: "tabGuardTopRef",
|
|
35999
|
+
role: "presentation",
|
|
36000
|
+
tabindex: "0",
|
|
36001
|
+
style: { position: "absolute", width: "0", height: "0" }
|
|
36002
|
+
};
|
|
36003
|
+
const _hoisted_2 = {
|
|
36004
|
+
ref: "tabGuardBottomRef",
|
|
36005
|
+
role: "presentation",
|
|
36006
|
+
tabindex: "0",
|
|
36007
|
+
style: { position: "absolute", width: "0", height: "0" }
|
|
36008
|
+
};
|
|
36368
36009
|
function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
36369
36010
|
const _component_Pagination = resolveComponent("Pagination");
|
|
36370
36011
|
const _component_AutoHeightHeader = resolveComponent("AutoHeightHeader");
|
|
@@ -36394,16 +36035,10 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
36394
36035
|
}), null, 16, ["class", "onChange", "onShowSizeChange"])) : createCommentVNode("v-if", true),
|
|
36395
36036
|
createElementVNode(
|
|
36396
36037
|
"div",
|
|
36397
|
-
|
|
36398
|
-
ref: "tabGuardTopRef",
|
|
36399
|
-
role: "presentation",
|
|
36400
|
-
tabindex: "0",
|
|
36401
|
-
style: { position: "absolute", width: "0", height: "0" },
|
|
36402
|
-
onKeydown: _cache[0] || (_cache[0] = (...args) => _ctx.handleGuardTopKeydown && _ctx.handleGuardTopKeydown(...args))
|
|
36403
|
-
},
|
|
36038
|
+
_hoisted_1$3,
|
|
36404
36039
|
null,
|
|
36405
|
-
|
|
36406
|
-
/*
|
|
36040
|
+
512
|
|
36041
|
+
/* NEED_PATCH */
|
|
36407
36042
|
),
|
|
36408
36043
|
createElementVNode(
|
|
36409
36044
|
"div",
|
|
@@ -36436,20 +36071,19 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
36436
36071
|
createVNode(_component_ProBody, {
|
|
36437
36072
|
ref: "bodyRef",
|
|
36438
36073
|
bodyScrollWidth: _ctx.bodyScrollWidth,
|
|
36439
|
-
"onUpdate:bodyScrollWidth": _cache[
|
|
36074
|
+
"onUpdate:bodyScrollWidth": _cache[0] || (_cache[0] = ($event) => _ctx.bodyScrollWidth = $event),
|
|
36440
36075
|
bodyWidth: _ctx.bodyWidth,
|
|
36441
|
-
"onUpdate:bodyWidth": _cache[
|
|
36076
|
+
"onUpdate:bodyWidth": _cache[1] || (_cache[1] = ($event) => _ctx.bodyWidth = $event),
|
|
36442
36077
|
bodyHeight: _ctx.bodyHeight,
|
|
36443
|
-
"onUpdate:bodyHeight": _cache[
|
|
36078
|
+
"onUpdate:bodyHeight": _cache[2] || (_cache[2] = ($event) => _ctx.bodyHeight = $event),
|
|
36444
36079
|
"prefix-cls": _ctx.prefixCls,
|
|
36445
36080
|
"wrap-text": _ctx.wrapText,
|
|
36446
36081
|
"scroll-x": _ctx.mergedScrollX,
|
|
36447
36082
|
height: _ctx.mergedScrollY,
|
|
36448
36083
|
"summary-fixed": _ctx.mergedSummaryFixed,
|
|
36449
36084
|
summary: _ctx.$slots.summary,
|
|
36450
|
-
"empty-text": _ctx.$slots.emptyText
|
|
36451
|
-
|
|
36452
|
-
}, null, 8, ["bodyScrollWidth", "bodyWidth", "bodyHeight", "prefix-cls", "wrap-text", "scroll-x", "height", "summary-fixed", "summary", "empty-text", "onKeydown"])
|
|
36085
|
+
"empty-text": _ctx.$slots.emptyText
|
|
36086
|
+
}, null, 8, ["bodyScrollWidth", "bodyWidth", "bodyHeight", "prefix-cls", "wrap-text", "scroll-x", "height", "summary-fixed", "summary", "empty-text"])
|
|
36453
36087
|
],
|
|
36454
36088
|
6
|
|
36455
36089
|
/* CLASS, STYLE */
|
|
@@ -36457,16 +36091,10 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
36457
36091
|
createVNode(_component_HorizontalScroll),
|
|
36458
36092
|
createElementVNode(
|
|
36459
36093
|
"div",
|
|
36460
|
-
|
|
36461
|
-
ref: "tabGuardBottomRef",
|
|
36462
|
-
role: "presentation",
|
|
36463
|
-
tabindex: "0",
|
|
36464
|
-
style: { position: "absolute", width: "0", height: "0" },
|
|
36465
|
-
onKeydown: _cache[4] || (_cache[4] = (...args) => _ctx.handleGuardBottomKeydown && _ctx.handleGuardBottomKeydown(...args))
|
|
36466
|
-
},
|
|
36094
|
+
_hoisted_2,
|
|
36467
36095
|
null,
|
|
36468
|
-
|
|
36469
|
-
/*
|
|
36096
|
+
512
|
|
36097
|
+
/* NEED_PATCH */
|
|
36470
36098
|
),
|
|
36471
36099
|
_ctx.$slots.footer ? (openBlock(), createElementBlock(
|
|
36472
36100
|
"div",
|
|
@@ -36491,7 +36119,7 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
36491
36119
|
ref: "paginationRef",
|
|
36492
36120
|
style: normalizeStyle(_ctx.bottomPaginationStyle),
|
|
36493
36121
|
class: normalizeClass(`${_ctx.prefixCls}-pagination-wrap ${_ctx.prefixCls}-pagination-wrap-${_ctx.size}`),
|
|
36494
|
-
onResizeheight: _cache[
|
|
36122
|
+
onResizeheight: _cache[3] || (_cache[3] = (...args) => _ctx.handlePaginationResize && _ctx.handlePaginationResize(...args))
|
|
36495
36123
|
},
|
|
36496
36124
|
[
|
|
36497
36125
|
createVNode(_component_Pagination, mergeProps({ class: _ctx.paginationClass }, _ctx.paginationProps, {
|
|
@@ -38276,6 +37904,30 @@ var Table = /* @__PURE__ */ defineComponent({
|
|
|
38276
37904
|
var _a2;
|
|
38277
37905
|
(_a2 = tableRef.value) == null ? void 0 : _a2.scrollTo(pos, behavior);
|
|
38278
37906
|
},
|
|
37907
|
+
validateRowData: (recordKey) => {
|
|
37908
|
+
var _a2;
|
|
37909
|
+
return (_a2 = tableRef.value) == null ? void 0 : _a2.validateRowData(recordKey);
|
|
37910
|
+
},
|
|
37911
|
+
validateTableData: () => {
|
|
37912
|
+
var _a2;
|
|
37913
|
+
return (_a2 = tableRef.value) == null ? void 0 : _a2.validateTableData();
|
|
37914
|
+
},
|
|
37915
|
+
addEditRecord: (recordValue, options) => {
|
|
37916
|
+
var _a2;
|
|
37917
|
+
return (_a2 = tableRef.value) == null ? void 0 : _a2.addEditRecord(recordValue, options);
|
|
37918
|
+
},
|
|
37919
|
+
startEditable: (recordKey, recordValue) => {
|
|
37920
|
+
var _a2;
|
|
37921
|
+
return (_a2 = tableRef.value) == null ? void 0 : _a2.startEditable(recordKey, recordValue);
|
|
37922
|
+
},
|
|
37923
|
+
cancelEditable: (recordValue, options) => {
|
|
37924
|
+
var _a2;
|
|
37925
|
+
return (_a2 = tableRef.value) == null ? void 0 : _a2.cancelEditable(recordValue, options);
|
|
37926
|
+
},
|
|
37927
|
+
saveEditable: (recordKey) => {
|
|
37928
|
+
var _a2;
|
|
37929
|
+
return (_a2 = tableRef.value) == null ? void 0 : _a2.saveEditable(recordKey);
|
|
37930
|
+
},
|
|
38279
37931
|
scrollLeft: computed(() => {
|
|
38280
37932
|
var _a2;
|
|
38281
37933
|
return unref((_a2 = tableRef.value) == null ? void 0 : _a2.scrollLeft);
|
|
@@ -38296,18 +37948,6 @@ var Table = /* @__PURE__ */ defineComponent({
|
|
|
38296
37948
|
var _a2;
|
|
38297
37949
|
return unref((_a2 = tableRef.value) == null ? void 0 : _a2.paginationRef);
|
|
38298
37950
|
}),
|
|
38299
|
-
copySelectedRange: () => {
|
|
38300
|
-
var _a2;
|
|
38301
|
-
return (_a2 = tableRef.value) == null ? void 0 : _a2.copySelectedRange();
|
|
38302
|
-
},
|
|
38303
|
-
getSelectedRange: () => {
|
|
38304
|
-
var _a2;
|
|
38305
|
-
return (_a2 = tableRef.value) == null ? void 0 : _a2.getSelectedRange();
|
|
38306
|
-
},
|
|
38307
|
-
clearAllSelectedRange: () => {
|
|
38308
|
-
var _a2;
|
|
38309
|
-
return (_a2 = tableRef.value) == null ? void 0 : _a2.clearAllSelectedRange();
|
|
38310
|
-
},
|
|
38311
37951
|
clearDataSource: () => {
|
|
38312
37952
|
dataSource.value = [];
|
|
38313
37953
|
},
|
|
@@ -38317,14 +37957,6 @@ var Table = /* @__PURE__ */ defineComponent({
|
|
|
38317
37957
|
var _a2;
|
|
38318
37958
|
return (_a2 = tableRef.value) == null ? void 0 : _a2.appendCellToSelectedRange(params);
|
|
38319
37959
|
},
|
|
38320
|
-
openEditor: (cellInfos) => {
|
|
38321
|
-
var _a2;
|
|
38322
|
-
return (_a2 = tableRef.value) == null ? void 0 : _a2.openEditor(cellInfos);
|
|
38323
|
-
},
|
|
38324
|
-
closeEditor: (cellInfos) => {
|
|
38325
|
-
var _a2;
|
|
38326
|
-
return (_a2 = tableRef.value) == null ? void 0 : _a2.closeEditor(cellInfos);
|
|
38327
|
-
},
|
|
38328
37960
|
reload,
|
|
38329
37961
|
reset,
|
|
38330
37962
|
calcTableHeight,
|