bkui-vue 0.0.2-beta.120 → 0.0.2-beta.122
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.cjs.js +48 -48
- package/dist/index.esm.js +7389 -7306
- package/dist/index.umd.js +30 -30
- package/dist/style.css +1 -1
- package/dist/style.variable.css +1 -1
- package/lib/cascader/cascader.css +2 -2
- package/lib/cascader/cascader.less +3 -5
- package/lib/cascader/cascader.variable.css +2 -2
- package/lib/cascader/index.js +2 -1
- package/lib/form/form.css +1 -0
- package/lib/form/form.less +1 -0
- package/lib/form/form.variable.css +1 -0
- package/lib/table/index.js +765 -581
- package/lib/table/plugins/use-head-cell.d.ts +7 -0
- package/lib/table/plugins/use-pagination.d.ts +2 -1
- package/lib/table/props.d.ts +1 -0
- package/lib/table/table.css +2 -2
- package/lib/table/table.less +2 -2
- package/lib/table/table.variable.css +2 -2
- package/lib/table/use-attributes.d.ts +1 -0
- package/lib/table/utils.d.ts +6 -4
- package/lib/tree/index.js +0 -1
- package/package.json +1 -1
package/lib/table/index.js
CHANGED
@@ -14,8 +14,8 @@ import * as __WEBPACK_EXTERNAL_MODULE__pagination_6e36ddb9__ from "../pagination
|
|
14
14
|
import * as __WEBPACK_EXTERNAL_MODULE__directives_9cc9ba10__ from "../directives";
|
15
15
|
import * as __WEBPACK_EXTERNAL_MODULE__exception_12c197e0__ from "../exception";
|
16
16
|
import * as __WEBPACK_EXTERNAL_MODULE__button_59c00871__ from "../button";
|
17
|
-
import * as __WEBPACK_EXTERNAL_MODULE__popover_cf5f8dce__ from "../popover";
|
18
17
|
import * as __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__ from "../icon/";
|
18
|
+
import * as __WEBPACK_EXTERNAL_MODULE__popover_cf5f8dce__ from "../popover";
|
19
19
|
/******/ // The require scope
|
20
20
|
/******/ var __webpack_require__ = {};
|
21
21
|
/******/
|
@@ -1607,6 +1607,7 @@ function use_pagination_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
1607
1607
|
* IN THE SOFTWARE.
|
1608
1608
|
*/
|
1609
1609
|
|
1610
|
+
|
1610
1611
|
/**
|
1611
1612
|
* 处理 Prop中的分页配置
|
1612
1613
|
* prop中的配置会覆盖本地的配置
|
@@ -1684,6 +1685,16 @@ var resolvePaginationOption = function resolvePaginationOption(propPagination, d
|
|
1684
1685
|
});
|
1685
1686
|
}
|
1686
1687
|
};
|
1688
|
+
/**
|
1689
|
+
* 初始化排序动作
|
1690
|
+
* @param data
|
1691
|
+
* @param sortColumns
|
1692
|
+
*/
|
1693
|
+
var multiSort = function multiSort(data, sortColumns) {
|
1694
|
+
sortColumns.forEach(function (item) {
|
1695
|
+
sort(data, item.schema[COLUMN_ATTRIBUTE.COL_SORT_FN], item.column, item.schema[COLUMN_ATTRIBUTE.COL_SORT_TYPE], item.schema[COLUMN_ATTRIBUTE.COL_SORT_SCOPE]);
|
1696
|
+
});
|
1697
|
+
};
|
1687
1698
|
var filter = function filter(sourceData, filterFn) {
|
1688
1699
|
if (typeof filterFn === 'function') {
|
1689
1700
|
var filterVals = sourceData.filter(function (row, index) {
|
@@ -1694,14 +1705,20 @@ var resolvePaginationOption = function resolvePaginationOption(propPagination, d
|
|
1694
1705
|
}
|
1695
1706
|
return sourceData;
|
1696
1707
|
};
|
1697
|
-
var resolvePageData = function resolvePageData(filterFn, sortFn, column, type, sortScope) {
|
1708
|
+
var resolvePageData = function resolvePageData(filterFn, sortFn, column, type, sortScope, multiCol) {
|
1698
1709
|
var sourceData = indexData.value.slice();
|
1710
|
+
if (multiCol !== null && multiCol !== void 0 && multiCol.length) {
|
1711
|
+
multiSort(sourceData, multiCol);
|
1712
|
+
}
|
1699
1713
|
pageData.length = 0;
|
1700
1714
|
pageData.push.apply(pageData, _toConsumableArray(sourceData.slice(startIndex.value, endIndex.value)));
|
1701
1715
|
filter(pageData, filterFn);
|
1702
1716
|
sort(pageData, sortFn, column, type, sortScope);
|
1703
1717
|
resolveLocalPagination();
|
1704
1718
|
};
|
1719
|
+
var resolvePageDataBySortList = function resolvePageDataBySortList(multiCol) {
|
1720
|
+
resolvePageData(null, null, null, null, null, multiCol);
|
1721
|
+
};
|
1705
1722
|
var multiFilter = function multiFilter(filterFnList) {
|
1706
1723
|
var sourceData = indexData.value.slice();
|
1707
1724
|
var target = filterFnList.reduce(function (result, fn) {
|
@@ -1729,6 +1746,7 @@ var resolvePaginationOption = function resolvePaginationOption(propPagination, d
|
|
1729
1746
|
indexData: indexData,
|
1730
1747
|
localPagination: localPagination,
|
1731
1748
|
resolvePageData: resolvePageData,
|
1749
|
+
resolvePageDataBySortList: resolvePageDataBySortList,
|
1732
1750
|
resetStartEndIndex: resetStartEndIndex,
|
1733
1751
|
multiFilter: multiFilter,
|
1734
1752
|
sort: sort
|
@@ -3056,8 +3074,9 @@ var getSortFn = function getSortFn(column, sortType) {
|
|
3056
3074
|
return getRowText(row, fieldName);
|
3057
3075
|
};
|
3058
3076
|
var sortFn0 = function sortFn0(a, b) {
|
3059
|
-
var
|
3060
|
-
var
|
3077
|
+
var _getVal, _getVal2;
|
3078
|
+
var val0 = (_getVal = getVal(a)) !== null && _getVal !== void 0 ? _getVal : '';
|
3079
|
+
var val1 = (_getVal2 = getVal(b)) !== null && _getVal2 !== void 0 ? _getVal2 : '';
|
3061
3080
|
if (typeof val0 === 'number' && typeof val1 === 'number') {
|
3062
3081
|
return val0 - val1;
|
3063
3082
|
}
|
@@ -3072,13 +3091,13 @@ var getSortFn = function getSortFn(column, sortType) {
|
|
3072
3091
|
};
|
3073
3092
|
var getNextSortType = function getNextSortType(sortType) {
|
3074
3093
|
var _steps;
|
3075
|
-
var steps = (_steps = {}, defineProperty_defineProperty(_steps, SORT_OPTION.NULL,
|
3094
|
+
var steps = (_steps = {}, defineProperty_defineProperty(_steps, SORT_OPTION.NULL, 3), defineProperty_defineProperty(_steps, SORT_OPTION.ASC, 1), defineProperty_defineProperty(_steps, SORT_OPTION.DESC, 2), _steps);
|
3076
3095
|
if (steps[sortType] === undefined) {
|
3077
|
-
return SORT_OPTION.
|
3096
|
+
return SORT_OPTION.ASC;
|
3078
3097
|
}
|
3079
3098
|
return Object.keys(steps)[(steps[sortType] + 1) % 3];
|
3080
3099
|
};
|
3081
|
-
var resolveSort = function resolveSort(sort) {
|
3100
|
+
var resolveSort = function resolveSort(sort, column) {
|
3082
3101
|
if (typeof sort === 'string') {
|
3083
3102
|
return {
|
3084
3103
|
value: sort
|
@@ -3090,12 +3109,15 @@ var resolveSort = function resolveSort(sort) {
|
|
3090
3109
|
};
|
3091
3110
|
}
|
3092
3111
|
if (typeof_typeof(sort) === 'object' && sort !== null) {
|
3093
|
-
|
3112
|
+
var _sort$value;
|
3113
|
+
if (typeof sort.sortFn === 'function') {
|
3094
3114
|
return utils_objectSpread({
|
3095
3115
|
value: 'custom'
|
3096
3116
|
}, sort);
|
3097
3117
|
}
|
3098
|
-
return
|
3118
|
+
return Object.assign({}, {
|
3119
|
+
sortFn: getSortFn(column, (_sort$value = sort.value) !== null && _sort$value !== void 0 ? _sort$value : SORT_OPTION.NULL)
|
3120
|
+
}, sort);
|
3099
3121
|
}
|
3100
3122
|
return null;
|
3101
3123
|
};
|
@@ -3124,7 +3146,7 @@ var getRowId = function getRowId(row, defVal, props) {
|
|
3124
3146
|
};
|
3125
3147
|
var resolveColumnSortProp = function resolveColumnSortProp(col, props) {
|
3126
3148
|
var _resolveSort, _col$sort;
|
3127
|
-
var _ref4 = (_resolveSort = resolveSort((_col$sort = col.sort) !== null && _col$sort !== void 0 ? _col$sort : props.defaultSort)) !== null && _resolveSort !== void 0 ? _resolveSort : {},
|
3149
|
+
var _ref4 = (_resolveSort = resolveSort((_col$sort = col.sort) !== null && _col$sort !== void 0 ? _col$sort : props.defaultSort, col)) !== null && _resolveSort !== void 0 ? _resolveSort : {},
|
3128
3150
|
value = _ref4.value,
|
3129
3151
|
sortFn = _ref4.sortFn,
|
3130
3152
|
sortScope = _ref4.sortScope;
|
@@ -3132,7 +3154,7 @@ var resolveColumnSortProp = function resolveColumnSortProp(col, props) {
|
|
3132
3154
|
type: value,
|
3133
3155
|
fn: sortFn,
|
3134
3156
|
scope: sortScope,
|
3135
|
-
active:
|
3157
|
+
active: !!col.sort
|
3136
3158
|
};
|
3137
3159
|
};
|
3138
3160
|
;// CONCATENATED MODULE: ../../packages/table/src/use-attributes.ts
|
@@ -3205,6 +3227,7 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3205
3227
|
pageData = _usePagination.pageData,
|
3206
3228
|
localPagination = _usePagination.localPagination,
|
3207
3229
|
resolvePageData = _usePagination.resolvePageData,
|
3230
|
+
resolvePageDataBySortList = _usePagination.resolvePageDataBySortList,
|
3208
3231
|
multiFilter = _usePagination.multiFilter,
|
3209
3232
|
sort = _usePagination.sort,
|
3210
3233
|
resetStartEndIndex = _usePagination.resetStartEndIndex;
|
@@ -3270,7 +3293,16 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3270
3293
|
fn = _resolveColumnSortPro.fn,
|
3271
3294
|
scope = _resolveColumnSortPro.scope,
|
3272
3295
|
active = _resolveColumnSortPro.active;
|
3273
|
-
|
3296
|
+
var getSortFn = function getSortFn(col) {
|
3297
|
+
if (col.type === 'index') {
|
3298
|
+
return function (a, b) {
|
3299
|
+
var _formatData$dataSchem, _formatData$dataSchem2;
|
3300
|
+
return fn === null || fn === void 0 ? void 0 : fn((_formatData$dataSchem = formatData.dataSchema.get(a)) === null || _formatData$dataSchem === void 0 ? void 0 : _formatData$dataSchem[TABLE_ROW_ATTRIBUTE.ROW_INDEX], (_formatData$dataSchem2 = formatData.dataSchema.get(b)) === null || _formatData$dataSchem2 === void 0 ? void 0 : _formatData$dataSchem2[TABLE_ROW_ATTRIBUTE.ROW_INDEX]);
|
3301
|
+
};
|
3302
|
+
}
|
3303
|
+
return fn;
|
3304
|
+
};
|
3305
|
+
formatData.columnSchema.set(col, (_formatData$columnSch = {}, defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.CALC_WIDTH, undefined), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.RESIZE_WIDTH, undefined), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_MIN_WIDTH, resolveMinWidth(col)), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.LISTENERS, new Map()), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.WIDTH, col.width), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.IS_HIDDEN, isColumnHidden(formatData.settings.fields, col, formatData.settings.checked)), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_SORT_TYPE, type), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_SORT_FN, getSortFn(col)), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_FILTER_FN, undefined), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_FILTER_SCOPE, undefined), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_SORT_SCOPE, scope), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_SORT_ACTIVE, active), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_IS_DRAG, false), defineProperty_defineProperty(_formatData$columnSch, COLUMN_ATTRIBUTE.COL_SPAN, {
|
3274
3306
|
skipCol: skipCol,
|
3275
3307
|
skipColumnNum: skipColumnNum,
|
3276
3308
|
skipColLen: skipColLen
|
@@ -3369,17 +3401,26 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3369
3401
|
}
|
3370
3402
|
setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_ACTIVE, active);
|
3371
3403
|
};
|
3404
|
+
var isRowChecked = function isRowChecked(row, index) {
|
3405
|
+
if (isRowSelectEnable(props, {
|
3406
|
+
row: row,
|
3407
|
+
index: index
|
3408
|
+
})) {
|
3409
|
+
return getRowAttribute(row, TABLE_ROW_ATTRIBUTE.ROW_SELECTION);
|
3410
|
+
}
|
3411
|
+
return true;
|
3412
|
+
};
|
3372
3413
|
/**
|
3373
3414
|
* 是否数据全选
|
3374
3415
|
*/
|
3375
3416
|
var isCheckedAll = function isCheckedAll() {
|
3376
3417
|
if (props.acrossAll) {
|
3377
|
-
return formatData.data.every(function (row) {
|
3378
|
-
return
|
3418
|
+
return formatData.data.every(function (row, index) {
|
3419
|
+
return isRowChecked(row, index);
|
3379
3420
|
});
|
3380
3421
|
}
|
3381
|
-
return pageData.every(function (row) {
|
3382
|
-
return
|
3422
|
+
return pageData.every(function (row, index) {
|
3423
|
+
return isRowChecked(row, index);
|
3383
3424
|
});
|
3384
3425
|
};
|
3385
3426
|
/**
|
@@ -3502,7 +3543,7 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3502
3543
|
* @param data
|
3503
3544
|
*/
|
3504
3545
|
var formatDataSchema = function formatDataSchema(data) {
|
3505
|
-
var _formatData$data, _formatData$
|
3546
|
+
var _formatData$data, _formatData$dataSchem4;
|
3506
3547
|
formatData.data.length = 0;
|
3507
3548
|
(_formatData$data = formatData.data).push.apply(_formatData$data, _toConsumableArray(data));
|
3508
3549
|
var hasSelectedRow = false;
|
@@ -3516,8 +3557,8 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3516
3557
|
hasUnSelectedRow = true;
|
3517
3558
|
}
|
3518
3559
|
if (!formatData.dataSchema.has(row)) {
|
3519
|
-
var _formatData$
|
3520
|
-
formatData.dataSchema.set(row, (_formatData$
|
3560
|
+
var _formatData$dataSchem3;
|
3561
|
+
formatData.dataSchema.set(row, (_formatData$dataSchem3 = {}, defineProperty_defineProperty(_formatData$dataSchem3, TABLE_ROW_ATTRIBUTE.ROW_EXPAND, false), defineProperty_defineProperty(_formatData$dataSchem3, TABLE_ROW_ATTRIBUTE.ROW_SELECTION, isSelected), defineProperty_defineProperty(_formatData$dataSchem3, TABLE_ROW_ATTRIBUTE.ROW_UID, rowId), defineProperty_defineProperty(_formatData$dataSchem3, TABLE_ROW_ATTRIBUTE.ROW_INDEX, index + 1), defineProperty_defineProperty(_formatData$dataSchem3, TABLE_ROW_ATTRIBUTE.ROW_SELECTION_INDETERMINATE, false), _formatData$dataSchem3));
|
3521
3562
|
}
|
3522
3563
|
// 当传入的data改变时,更新相关属性
|
3523
3564
|
// ROW_EXPAND & ROW_SELECTION & ROW_UID 不做更新
|
@@ -3525,7 +3566,7 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3525
3566
|
rowId = target[TABLE_ROW_ATTRIBUTE.ROW_UID];
|
3526
3567
|
target[TABLE_ROW_ATTRIBUTE.ROW_INDEX] = index + 1;
|
3527
3568
|
});
|
3528
|
-
formatData.dataSchema.set(CHECK_ALL_OBJ, (_formatData$
|
3569
|
+
formatData.dataSchema.set(CHECK_ALL_OBJ, (_formatData$dataSchem4 = {}, defineProperty_defineProperty(_formatData$dataSchem4, TABLE_ROW_ATTRIBUTE.ROW_SELECTION, hasSelectedRow), defineProperty_defineProperty(_formatData$dataSchem4, TABLE_ROW_ATTRIBUTE.ROW_SELECTION_INDETERMINATE, hasSelectedRow && hasUnSelectedRow), _formatData$dataSchem4));
|
3529
3570
|
formatData.dataSchema.set(NEED_COL_ROW_SPAN, defineProperty_defineProperty({}, TABLE_ROW_ATTRIBUTE.ROW_SPAN, neepColspanOrRowspan(['rowspan'])));
|
3530
3571
|
};
|
3531
3572
|
/**
|
@@ -3561,7 +3602,17 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3561
3602
|
* @param isSelected
|
3562
3603
|
*/
|
3563
3604
|
var setRowSelection = function setRowSelection(row, isSelected) {
|
3564
|
-
|
3605
|
+
var value = isSelected;
|
3606
|
+
if (typeof props.isSelectedFn === 'function') {
|
3607
|
+
value = props.isSelectedFn({
|
3608
|
+
row: row
|
3609
|
+
});
|
3610
|
+
}
|
3611
|
+
if (isRowSelectEnable(props, {
|
3612
|
+
row: row
|
3613
|
+
})) {
|
3614
|
+
setRowAttribute(row, TABLE_ROW_ATTRIBUTE.ROW_SELECTION, value);
|
3615
|
+
}
|
3565
3616
|
setRowIndeterminate();
|
3566
3617
|
};
|
3567
3618
|
/**
|
@@ -3581,14 +3632,20 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3581
3632
|
setRowAttribute(row, TABLE_ROW_ATTRIBUTE.ROW_EXPAND, isExpand);
|
3582
3633
|
};
|
3583
3634
|
var getRowAttribute = function getRowAttribute(row, attrName) {
|
3584
|
-
var _formatData$
|
3585
|
-
return (_formatData$
|
3635
|
+
var _formatData$dataSchem6;
|
3636
|
+
return (_formatData$dataSchem6 = formatData.dataSchema.get(row)) === null || _formatData$dataSchem6 === void 0 ? void 0 : _formatData$dataSchem6[attrName];
|
3586
3637
|
};
|
3587
3638
|
var toggleRowSelection = function toggleRowSelection(row) {
|
3639
|
+
if (typeof props.isSelectedFn === 'function') {
|
3640
|
+
setRowSelection(row, props.isSelectedFn({
|
3641
|
+
row: row
|
3642
|
+
}));
|
3643
|
+
return;
|
3644
|
+
}
|
3588
3645
|
setRowSelection(row, !getRowAttribute(row, TABLE_ROW_ATTRIBUTE.ROW_SELECTION));
|
3589
3646
|
};
|
3590
3647
|
var toggleAllSelection = function toggleAllSelection(value) {
|
3591
|
-
var _formatData$
|
3648
|
+
var _formatData$dataSchem7;
|
3592
3649
|
var val = value !== null && value !== void 0 ? value : !isCheckedAll();
|
3593
3650
|
if (props.acrossAll) {
|
3594
3651
|
formatData.data.forEach(function (row) {
|
@@ -3599,7 +3656,7 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3599
3656
|
pageData.forEach(function (row) {
|
3600
3657
|
return setRowSelection(row, val);
|
3601
3658
|
});
|
3602
|
-
formatData.dataSchema.set(CHECK_ALL_OBJ, (_formatData$
|
3659
|
+
formatData.dataSchema.set(CHECK_ALL_OBJ, (_formatData$dataSchem7 = {}, defineProperty_defineProperty(_formatData$dataSchem7, TABLE_ROW_ATTRIBUTE.ROW_SELECTION, val), defineProperty_defineProperty(_formatData$dataSchem7, TABLE_ROW_ATTRIBUTE.ROW_SELECTION_INDETERMINATE, false), _formatData$dataSchem7));
|
3603
3660
|
};
|
3604
3661
|
var clearSelection = function clearSelection() {
|
3605
3662
|
formatData.data.forEach(function (row) {
|
@@ -3717,6 +3774,20 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3717
3774
|
return getRowAttribute(row, TABLE_ROW_ATTRIBUTE.ROW_SELECTION);
|
3718
3775
|
});
|
3719
3776
|
};
|
3777
|
+
var resolveByDefColumns = function resolveByDefColumns() {
|
3778
|
+
var multiSortColumns = [];
|
3779
|
+
formatData.columns.forEach(function (column) {
|
3780
|
+
var _schema$COLUMN_ATTRIB;
|
3781
|
+
var schema = formatData.columnSchema.get(column);
|
3782
|
+
if (typeof (schema === null || schema === void 0 ? void 0 : schema[COLUMN_ATTRIBUTE.COL_SORT_FN]) === 'function' && !((_schema$COLUMN_ATTRIB = schema === null || schema === void 0 ? void 0 : schema[COLUMN_ATTRIBUTE.IS_HIDDEN]) !== null && _schema$COLUMN_ATTRIB !== void 0 ? _schema$COLUMN_ATTRIB : true)) {
|
3783
|
+
multiSortColumns.push({
|
3784
|
+
column: column,
|
3785
|
+
schema: schema
|
3786
|
+
});
|
3787
|
+
}
|
3788
|
+
});
|
3789
|
+
resolvePageDataBySortList(multiSortColumns);
|
3790
|
+
};
|
3720
3791
|
return {
|
3721
3792
|
formatColumns: formatColumns,
|
3722
3793
|
formatDataSchema: formatDataSchema,
|
@@ -3737,6 +3808,7 @@ function use_attributes_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
3737
3808
|
isActiveColumn: isActiveColumn,
|
3738
3809
|
isHiddenColumn: isHiddenColumn,
|
3739
3810
|
resolvePageData: resolvePageData,
|
3811
|
+
resolveByDefColumns: resolveByDefColumns,
|
3740
3812
|
resetStartEndIndex: resetStartEndIndex,
|
3741
3813
|
toggleAllSelection: toggleAllSelection,
|
3742
3814
|
setAllRowExpand: setAllRowExpand,
|
@@ -4501,12 +4573,15 @@ const external_exception_namespaceObject = external_exception_x({ ["default"]: (
|
|
4501
4573
|
var external_button_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
|
4502
4574
|
var external_button_y = x => () => x
|
4503
4575
|
const external_button_namespaceObject = external_button_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE__button_59c00871__["default"] });
|
4576
|
+
;// CONCATENATED MODULE: external "../icon/"
|
4577
|
+
var _x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
|
4578
|
+
var _y = x => () => x
|
4579
|
+
const _namespaceObject = _x({ ["AngleDownFill"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.AngleDownFill, ["AngleUpFill"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.AngleUpFill, ["CloseLine"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.CloseLine, ["CogShape"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.CogShape });
|
4504
4580
|
;// CONCATENATED MODULE: external "../popover"
|
4505
4581
|
var external_popover_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
|
4506
4582
|
var external_popover_y = x => () => x
|
4507
4583
|
const external_popover_namespaceObject = external_popover_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE__popover_cf5f8dce__["default"] });
|
4508
|
-
;// CONCATENATED MODULE: ../../packages/table/src/plugins/
|
4509
|
-
|
4584
|
+
;// CONCATENATED MODULE: ../../packages/table/src/plugins/settings.tsx
|
4510
4585
|
|
4511
4586
|
|
4512
4587
|
/*
|
@@ -4544,145 +4619,452 @@ const external_popover_namespaceObject = external_popover_x({ ["default"]: () =>
|
|
4544
4619
|
|
4545
4620
|
|
4546
4621
|
|
4547
|
-
|
4548
4622
|
function _isSlot(s) {
|
4549
4623
|
return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !(0,external_vue_namespaceObject.isVNode)(s);
|
4550
4624
|
}
|
4551
|
-
/* harmony default export */ const
|
4552
|
-
name: '
|
4625
|
+
/* harmony default export */ const plugins_settings = ((0,external_vue_namespaceObject.defineComponent)({
|
4626
|
+
name: 'Settings',
|
4553
4627
|
props: {
|
4554
|
-
|
4555
|
-
|
4628
|
+
settings: ITableSettings,
|
4629
|
+
columns: external_shared_namespaceObject.PropTypes.arrayOf(IColumnType).def([])
|
4556
4630
|
},
|
4557
|
-
emits: ['change'
|
4631
|
+
emits: ['change'],
|
4558
4632
|
setup: function setup(props, _ref) {
|
4559
|
-
var emit = _ref.emit
|
4633
|
+
var emit = _ref.emit,
|
4634
|
+
slots = _ref.slots;
|
4560
4635
|
var _usePrefix = (0,external_config_provider_namespaceObject.usePrefix)(),
|
4561
4636
|
resolveClassName = _usePrefix.resolveClassName;
|
4562
4637
|
var t = (0,external_config_provider_namespaceObject.useLocale)('table');
|
4563
|
-
var
|
4564
|
-
var
|
4565
|
-
|
4566
|
-
var checked = (0,external_vue_namespaceObject.computed)(function () {
|
4567
|
-
var _filter$value$checked, _filter$value;
|
4568
|
-
return (_filter$value$checked = (_filter$value = filter.value) === null || _filter$value === void 0 ? void 0 : _filter$value.checked) !== null && _filter$value$checked !== void 0 ? _filter$value$checked : [];
|
4569
|
-
});
|
4570
|
-
var state = (0,external_vue_namespaceObject.reactive)({
|
4571
|
-
isOpen: false,
|
4572
|
-
checked: checked.value
|
4573
|
-
});
|
4574
|
-
var maxHeight = (0,external_vue_namespaceObject.computed)(function () {
|
4575
|
-
var _filter$value$maxHeig, _filter$value2;
|
4576
|
-
return (_filter$value$maxHeig = (_filter$value2 = filter.value) === null || _filter$value2 === void 0 ? void 0 : _filter$value2.maxHeight) !== null && _filter$value$maxHeig !== void 0 ? _filter$value$maxHeig : LINE_HEIGHT * 15;
|
4577
|
-
});
|
4578
|
-
var height = (0,external_vue_namespaceObject.computed)(function () {
|
4579
|
-
var _filter$value3;
|
4580
|
-
return ((_filter$value3 = filter.value) === null || _filter$value3 === void 0 ? void 0 : _filter$value3.height) || '100%';
|
4581
|
-
});
|
4582
|
-
(0,external_vue_namespaceObject.watch)(function () {
|
4583
|
-
return filter.value;
|
4584
|
-
}, function () {
|
4585
|
-
state.checked = checked.value;
|
4586
|
-
}, {
|
4587
|
-
immediate: true,
|
4588
|
-
deep: true
|
4589
|
-
});
|
4590
|
-
var headClass = (0,external_vue_namespaceObject.computed)(function () {
|
4591
|
-
var _classes;
|
4592
|
-
return (0,external_shared_namespaceObject.classes)((_classes = {}, defineProperty_defineProperty(_classes, resolveClassName('table-head-action'), true), defineProperty_defineProperty(_classes, 'column-filter', true), defineProperty_defineProperty(_classes, '--row-height', "".concat(props.height, "px")), defineProperty_defineProperty(_classes, "active", state.checked.length), defineProperty_defineProperty(_classes, "opened", state.isOpen), _classes));
|
4593
|
-
});
|
4594
|
-
var headFilterContentClass = (0,external_shared_namespaceObject.classes)(defineProperty_defineProperty({}, resolveClassName('table-head-filter'), true));
|
4595
|
-
var refVirtualRender = (0,external_vue_namespaceObject.ref)(null);
|
4596
|
-
var handlePopShow = function handlePopShow(isOpen) {
|
4597
|
-
state.isOpen = isOpen;
|
4598
|
-
isOpen && setTimeout(function () {
|
4599
|
-
refVirtualRender.value.reset();
|
4600
|
-
});
|
4638
|
+
var defaultSizeList = createDefaultSizeList(t);
|
4639
|
+
var resolvedColVal = function resolvedColVal(item, index) {
|
4640
|
+
return resolvePropVal(item, ['id', 'field', 'type'], [item, index]);
|
4601
4641
|
};
|
4602
|
-
var
|
4603
|
-
var
|
4604
|
-
|
4605
|
-
|
4606
|
-
|
4642
|
+
var checkAll = (0,external_vue_namespaceObject.ref)(false);
|
4643
|
+
var isShow = (0,external_vue_namespaceObject.ref)(false);
|
4644
|
+
var localSettings = (0,external_vue_namespaceObject.computed)(function () {
|
4645
|
+
var deafultSettings = {
|
4646
|
+
fields: props.columns.map(function (col) {
|
4647
|
+
return Object.assign({}, col, {
|
4648
|
+
field: col.field || col.type
|
4649
|
+
});
|
4650
|
+
}),
|
4651
|
+
checked: [],
|
4652
|
+
limit: 0,
|
4653
|
+
size: 'small',
|
4654
|
+
sizeList: defaultSizeList,
|
4655
|
+
showLineHeight: true,
|
4656
|
+
trigger: 'manual'
|
4657
|
+
};
|
4658
|
+
if (typeof props.settings === 'boolean') {
|
4659
|
+
return deafultSettings;
|
4660
|
+
}
|
4661
|
+
return Object.assign({}, deafultSettings, props.settings);
|
4607
4662
|
});
|
4608
|
-
var
|
4609
|
-
|
4610
|
-
|
4663
|
+
var activeSize = (0,external_vue_namespaceObject.ref)(localSettings.value.size || 'small');
|
4664
|
+
var activeHeight = (0,external_vue_namespaceObject.ref)(SETTING_SIZE.small);
|
4665
|
+
var checkedFields = (0,external_vue_namespaceObject.ref)(localSettings.value.checked || []);
|
4666
|
+
var className = resolveClassName('table-settings');
|
4667
|
+
var theme = "light ".concat(className);
|
4668
|
+
var renderFields = (0,external_vue_namespaceObject.computed)(function () {
|
4669
|
+
return localSettings.value.fields || props.columns || [];
|
4670
|
+
});
|
4671
|
+
var cachedValue = {
|
4672
|
+
checkAll: checkAll.value,
|
4673
|
+
activeSize: activeSize.value,
|
4674
|
+
activeHeight: activeHeight.value,
|
4675
|
+
checkedFields: localSettings.value.checked || []
|
4611
4676
|
};
|
4612
|
-
var
|
4613
|
-
|
4614
|
-
|
4615
|
-
|
4616
|
-
|
4617
|
-
|
4618
|
-
return checked.some(function (str) {
|
4619
|
-
return getRegExp(str, 'img').test(matchText);
|
4677
|
+
var handleSaveClick = function handleSaveClick() {
|
4678
|
+
Object.assign(cachedValue, {
|
4679
|
+
checkAll: checkAll.value,
|
4680
|
+
activeSize: activeSize.value,
|
4681
|
+
activeHeight: activeHeight.value,
|
4682
|
+
checkedFields: checkedFields.value
|
4620
4683
|
});
|
4684
|
+
emit('change', {
|
4685
|
+
checked: checkedFields.value,
|
4686
|
+
size: activeSize.value,
|
4687
|
+
height: activeHeight.value,
|
4688
|
+
fields: (0,external_vue_namespaceObject.unref)(renderFields)
|
4689
|
+
});
|
4690
|
+
isShow.value = false;
|
4621
4691
|
};
|
4622
|
-
var
|
4623
|
-
|
4624
|
-
|
4625
|
-
|
4626
|
-
|
4627
|
-
|
4628
|
-
};
|
4629
|
-
var handleBtnSaveClick = function handleBtnSaveClick() {
|
4630
|
-
handleFilterChange(true);
|
4631
|
-
emit('filterSave', state.checked);
|
4632
|
-
state.isOpen = false;
|
4692
|
+
var handleCancelClick = function handleCancelClick() {
|
4693
|
+
checkAll.value = cachedValue.checkAll;
|
4694
|
+
activeSize.value = cachedValue.activeSize;
|
4695
|
+
activeHeight.value = cachedValue.activeHeight;
|
4696
|
+
checkedFields.value = cachedValue.checkedFields;
|
4697
|
+
isShow.value = false;
|
4633
4698
|
};
|
4634
|
-
var
|
4635
|
-
|
4636
|
-
|
4637
|
-
disabled = _resolveBtnOption.disabled;
|
4638
|
-
if (disabled || btnSaveClick) {
|
4639
|
-
if (filter.value === 'custom') {
|
4640
|
-
emit('change', state.checked, null);
|
4641
|
-
state.isOpen = false;
|
4642
|
-
return;
|
4643
|
-
}
|
4644
|
-
filter.value.checked = state.checked;
|
4645
|
-
emit('change', state.checked, filterFn);
|
4699
|
+
var handleSettingClick = function handleSettingClick() {
|
4700
|
+
if (localSettings.value.trigger === 'manual') {
|
4701
|
+
isShow.value = true;
|
4646
4702
|
}
|
4647
4703
|
};
|
4648
|
-
var
|
4649
|
-
|
4650
|
-
|
4651
|
-
|
4652
|
-
|
4653
|
-
|
4704
|
+
var handleCheckAllClick = function handleCheckAllClick(e) {
|
4705
|
+
e.stopImmediatePropagation();
|
4706
|
+
e.stopPropagation();
|
4707
|
+
e.preventDefault();
|
4708
|
+
checkAll.value = !checkAll.value;
|
4709
|
+
var fields = localSettings.value.fields || props.columns || [];
|
4710
|
+
var readonlyFields = fields.filter(function (f, index) {
|
4711
|
+
return f.disabled && checkedFields.value.includes(resolvedColVal(f, index));
|
4712
|
+
}).map(function (item, index) {
|
4713
|
+
return resolvedColVal(item, index);
|
4714
|
+
});
|
4715
|
+
if (checkAll.value) {
|
4716
|
+
var _checkedFields$value;
|
4717
|
+
var allFields = fields.filter(function (f) {
|
4718
|
+
return !f.disabled;
|
4719
|
+
}).map(function (item, index) {
|
4720
|
+
return resolvedColVal(item, index);
|
4654
4721
|
});
|
4722
|
+
(_checkedFields$value = checkedFields.value).splice.apply(_checkedFields$value, [0, checkedFields.value.length].concat(_toConsumableArray(allFields), _toConsumableArray(readonlyFields)));
|
4723
|
+
} else {
|
4724
|
+
var _checkedFields$value2;
|
4725
|
+
(_checkedFields$value2 = checkedFields.value).splice.apply(_checkedFields$value2, [0, checkedFields.value.length].concat(_toConsumableArray(readonlyFields)));
|
4655
4726
|
}
|
4656
4727
|
};
|
4657
|
-
var
|
4658
|
-
var
|
4659
|
-
|
4728
|
+
var isLimit = (0,external_vue_namespaceObject.computed)(function () {
|
4729
|
+
var _localSettings$value$;
|
4730
|
+
return ((_localSettings$value$ = localSettings.value.limit) !== null && _localSettings$value$ !== void 0 ? _localSettings$value$ : 0) > 0;
|
4731
|
+
});
|
4732
|
+
var sizeList = localSettings.value.sizeList || defaultSizeList;
|
4733
|
+
var isFiledDisabled = (0,external_vue_namespaceObject.computed)(function () {
|
4734
|
+
return isLimit.value && (localSettings.value.limit ? localSettings.value.limit : 0) <= checkedFields.value.length;
|
4735
|
+
});
|
4736
|
+
var isItemReadonly = function isItemReadonly(item, index) {
|
4737
|
+
return item.disabled || isFiledDisabled.value && !checkedFields.value.includes(resolvedColVal(item, index));
|
4738
|
+
};
|
4739
|
+
var handleSizeItemClick = function handleSizeItemClick(item) {
|
4740
|
+
activeSize.value = item.value;
|
4741
|
+
activeHeight.value = item.height;
|
4742
|
+
};
|
4743
|
+
var getItemClass = function getItemClass(item) {
|
4660
4744
|
return {
|
4661
|
-
|
4662
|
-
|
4745
|
+
'line-size': true,
|
4746
|
+
'is-medium': activeSize.value === 'medium',
|
4747
|
+
active: item.value === activeSize.value
|
4663
4748
|
};
|
4664
4749
|
};
|
4665
|
-
var
|
4666
|
-
|
4667
|
-
|
4668
|
-
var
|
4669
|
-
|
4670
|
-
disabled = _resolveBtnOption2.disabled,
|
4671
|
-
text = _resolveBtnOption2.text;
|
4672
|
-
if (disabled) {
|
4750
|
+
var buttonStyle = {
|
4751
|
+
marginRight: '12px'
|
4752
|
+
};
|
4753
|
+
var renderSize = function renderSize() {
|
4754
|
+
return sizeList.map(function (item) {
|
4673
4755
|
return (0,external_vue_namespaceObject.createVNode)("span", {
|
4674
|
-
"class":
|
4675
|
-
|
4676
|
-
|
4677
|
-
|
4678
|
-
|
4679
|
-
|
4680
|
-
|
4681
|
-
|
4682
|
-
|
4683
|
-
|
4684
|
-
|
4685
|
-
|
4756
|
+
"class": getItemClass(item),
|
4757
|
+
"onClick": function onClick() {
|
4758
|
+
return handleSizeItemClick(item);
|
4759
|
+
}
|
4760
|
+
}, [item.label]);
|
4761
|
+
});
|
4762
|
+
};
|
4763
|
+
var indeterminate = (0,external_vue_namespaceObject.computed)(function () {
|
4764
|
+
return checkedFields.value.length > 0 && checkedFields.value.length < renderFields.value.length;
|
4765
|
+
});
|
4766
|
+
var showLineHeight = (0,external_vue_namespaceObject.computed)(function () {
|
4767
|
+
return typeof localSettings.value.showLineHeight === 'boolean' ? localSettings.value.showLineHeight : true;
|
4768
|
+
});
|
4769
|
+
(0,external_vue_namespaceObject.watch)(function () {
|
4770
|
+
return [checkedFields.value];
|
4771
|
+
}, function () {
|
4772
|
+
if (!checkedFields.value.length) {
|
4773
|
+
checkAll.value = false;
|
4774
|
+
}
|
4775
|
+
if (checkedFields.value.length && renderFields.value.every(function (field, index) {
|
4776
|
+
return checkedFields.value.includes(resolvedColVal(field, index));
|
4777
|
+
})) {
|
4778
|
+
checkAll.value = true;
|
4779
|
+
}
|
4780
|
+
}, {
|
4781
|
+
immediate: true,
|
4782
|
+
deep: true
|
4783
|
+
});
|
4784
|
+
(0,external_vue_namespaceObject.watch)(function () {
|
4785
|
+
return [props.settings.checked];
|
4786
|
+
}, function () {
|
4787
|
+
var _checkedFields$value3;
|
4788
|
+
(_checkedFields$value3 = checkedFields.value).splice.apply(_checkedFields$value3, [0, checkedFields.value.length].concat(_toConsumableArray(localSettings.value.checked)));
|
4789
|
+
}, {
|
4790
|
+
immediate: true,
|
4791
|
+
deep: true
|
4792
|
+
});
|
4793
|
+
return function () {
|
4794
|
+
var _localSettings$value$2;
|
4795
|
+
return props.settings ? (0,external_vue_namespaceObject.createVNode)(external_popover_namespaceObject["default"], (0,external_vue_namespaceObject.mergeProps)({
|
4796
|
+
"trigger": (_localSettings$value$2 = localSettings.value.trigger) !== null && _localSettings$value$2 !== void 0 ? _localSettings$value$2 : 'manual',
|
4797
|
+
"isShow": isShow.value,
|
4798
|
+
"placement": "bottom-end",
|
4799
|
+
"arrow": true
|
4800
|
+
}, {
|
4801
|
+
theme: theme
|
4802
|
+
}), {
|
4803
|
+
"default": function _default() {
|
4804
|
+
return (0,external_vue_namespaceObject.createVNode)("span", {
|
4805
|
+
"class": "table-head-settings",
|
4806
|
+
"onClick": handleSettingClick
|
4807
|
+
}, [(0,external_vue_namespaceObject.createVNode)(_namespaceObject.CogShape, {
|
4808
|
+
"style": "color: #c4c6cc;"
|
4809
|
+
}, null)]);
|
4810
|
+
},
|
4811
|
+
content: function content() {
|
4812
|
+
var _slots$default;
|
4813
|
+
var _slot2;
|
4814
|
+
return (0,external_vue_namespaceObject.createVNode)("div", {
|
4815
|
+
"class": "setting-content"
|
4816
|
+
}, [(0,external_vue_namespaceObject.createVNode)("div", {
|
4817
|
+
"class": "setting-head"
|
4818
|
+
}, [(0,external_vue_namespaceObject.createVNode)("span", {
|
4819
|
+
"class": "head-title"
|
4820
|
+
}, [t.value.setting.title]), (0,external_vue_namespaceObject.createVNode)(_namespaceObject.CloseLine, {
|
4821
|
+
"class": "icon-close-action",
|
4822
|
+
"onClick": handleCancelClick
|
4823
|
+
}, null)]), (0,external_vue_namespaceObject.createVNode)("div", {
|
4824
|
+
"class": "setting-body"
|
4825
|
+
}, [(0,external_vue_namespaceObject.createVNode)("div", {
|
4826
|
+
"class": "setting-body-title"
|
4827
|
+
}, [(0,external_vue_namespaceObject.createVNode)("div", null, [(0,external_vue_namespaceObject.createVNode)("span", {
|
4828
|
+
"class": "field-setting-label"
|
4829
|
+
}, [t.value.setting.fields.title]), isLimit.value ? (0,external_vue_namespaceObject.createVNode)("span", {
|
4830
|
+
"class": "limit"
|
4831
|
+
}, [t.value.setting.fields.subtitle(localSettings.value.limit)]) : '']), isLimit.value ? '' : (0,external_vue_namespaceObject.createVNode)("span", {
|
4832
|
+
"class": "check-all",
|
4833
|
+
"onClick": handleCheckAllClick
|
4834
|
+
}, [(0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject["default"], {
|
4835
|
+
"label": t.value.setting.fields.selectAll,
|
4836
|
+
"indeterminate": Boolean(indeterminate.value),
|
4837
|
+
"modelValue": checkedFields.value.length > 0
|
4838
|
+
}, {
|
4839
|
+
"default": function _default() {
|
4840
|
+
return [t.value.setting.fields.selectAll];
|
4841
|
+
}
|
4842
|
+
})])]), (0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject.BkCheckboxGroup, {
|
4843
|
+
"class": "setting-body-fields",
|
4844
|
+
"modelValue": checkedFields.value,
|
4845
|
+
"onUpdate:modelValue": function onUpdateModelValue($event) {
|
4846
|
+
return checkedFields.value = $event;
|
4847
|
+
}
|
4848
|
+
}, _isSlot(_slot2 = renderFields.value.map(function (item, index) {
|
4849
|
+
var _slot;
|
4850
|
+
return (0,external_vue_namespaceObject.createVNode)("div", {
|
4851
|
+
"class": "field-item"
|
4852
|
+
}, [(0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject["default"], {
|
4853
|
+
"checked": checkedFields.value.includes(resolvedColVal(item, index)),
|
4854
|
+
"label": resolvedColVal(item, index),
|
4855
|
+
"disabled": isItemReadonly(item, index)
|
4856
|
+
}, _isSlot(_slot = resolvePropVal(item, ['name', 'label'], [item, index])) ? _slot : {
|
4857
|
+
"default": function _default() {
|
4858
|
+
return [_slot];
|
4859
|
+
}
|
4860
|
+
})]);
|
4861
|
+
})) ? _slot2 : {
|
4862
|
+
"default": function _default() {
|
4863
|
+
return [_slot2];
|
4864
|
+
}
|
4865
|
+
}), (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots), showLineHeight.value ? (0,external_vue_namespaceObject.createVNode)("div", {
|
4866
|
+
"class": "setting-body-line-height"
|
4867
|
+
}, [t.value.setting.lineHeight.title, (0,external_vue_namespaceObject.createTextVNode)("\uFF1A"), renderSize()]) : '']), (0,external_vue_namespaceObject.createVNode)("div", {
|
4868
|
+
"class": "setting-footer"
|
4869
|
+
}, [(0,external_vue_namespaceObject.createVNode)(external_button_namespaceObject["default"], {
|
4870
|
+
"theme": "primary",
|
4871
|
+
"style": buttonStyle,
|
4872
|
+
"onClick": handleSaveClick
|
4873
|
+
}, {
|
4874
|
+
"default": function _default() {
|
4875
|
+
return [t.value.setting.options.ok];
|
4876
|
+
}
|
4877
|
+
}), (0,external_vue_namespaceObject.createVNode)(external_button_namespaceObject["default"], {
|
4878
|
+
"style": buttonStyle,
|
4879
|
+
"onClick": handleCancelClick
|
4880
|
+
}, {
|
4881
|
+
"default": function _default() {
|
4882
|
+
return [t.value.setting.options.cancel];
|
4883
|
+
}
|
4884
|
+
})])]);
|
4885
|
+
}
|
4886
|
+
}) : '';
|
4887
|
+
};
|
4888
|
+
}
|
4889
|
+
}));
|
4890
|
+
;// CONCATENATED MODULE: ../../packages/table/src/plugins/head-filter.tsx
|
4891
|
+
|
4892
|
+
|
4893
|
+
|
4894
|
+
/*
|
4895
|
+
* Tencent is pleased to support the open source community by making
|
4896
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
|
4897
|
+
*
|
4898
|
+
* Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.
|
4899
|
+
*
|
4900
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
|
4901
|
+
*
|
4902
|
+
* License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
|
4903
|
+
*
|
4904
|
+
* ---------------------------------------------------
|
4905
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
|
4906
|
+
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation
|
4907
|
+
* the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
|
4908
|
+
* to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
4909
|
+
*
|
4910
|
+
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of
|
4911
|
+
* the Software.
|
4912
|
+
*
|
4913
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
4914
|
+
* THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
4915
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
4916
|
+
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
4917
|
+
* IN THE SOFTWARE.
|
4918
|
+
*/
|
4919
|
+
|
4920
|
+
|
4921
|
+
|
4922
|
+
|
4923
|
+
|
4924
|
+
|
4925
|
+
|
4926
|
+
|
4927
|
+
|
4928
|
+
|
4929
|
+
|
4930
|
+
function head_filter_isSlot(s) {
|
4931
|
+
return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !(0,external_vue_namespaceObject.isVNode)(s);
|
4932
|
+
}
|
4933
|
+
/* harmony default export */ const head_filter = ((0,external_vue_namespaceObject.defineComponent)({
|
4934
|
+
name: 'HeadFilter',
|
4935
|
+
props: {
|
4936
|
+
column: IColumnType,
|
4937
|
+
height: external_shared_namespaceObject.PropTypes.number.def(LINE_HEIGHT)
|
4938
|
+
},
|
4939
|
+
emits: ['change', 'filterSave'],
|
4940
|
+
setup: function setup(props, _ref) {
|
4941
|
+
var emit = _ref.emit;
|
4942
|
+
var _usePrefix = (0,external_config_provider_namespaceObject.usePrefix)(),
|
4943
|
+
resolveClassName = _usePrefix.resolveClassName;
|
4944
|
+
var t = (0,external_config_provider_namespaceObject.useLocale)('table');
|
4945
|
+
var column = props.column;
|
4946
|
+
var _toRefs = (0,external_vue_namespaceObject.toRefs)(props.column),
|
4947
|
+
filter = _toRefs.filter;
|
4948
|
+
var checked = (0,external_vue_namespaceObject.computed)(function () {
|
4949
|
+
var _filter$value$checked, _filter$value;
|
4950
|
+
return (_filter$value$checked = (_filter$value = filter.value) === null || _filter$value === void 0 ? void 0 : _filter$value.checked) !== null && _filter$value$checked !== void 0 ? _filter$value$checked : [];
|
4951
|
+
});
|
4952
|
+
var state = (0,external_vue_namespaceObject.reactive)({
|
4953
|
+
isOpen: false,
|
4954
|
+
checked: checked.value
|
4955
|
+
});
|
4956
|
+
var maxHeight = (0,external_vue_namespaceObject.computed)(function () {
|
4957
|
+
var _filter$value$maxHeig, _filter$value2;
|
4958
|
+
return (_filter$value$maxHeig = (_filter$value2 = filter.value) === null || _filter$value2 === void 0 ? void 0 : _filter$value2.maxHeight) !== null && _filter$value$maxHeig !== void 0 ? _filter$value$maxHeig : LINE_HEIGHT * 15;
|
4959
|
+
});
|
4960
|
+
var height = (0,external_vue_namespaceObject.computed)(function () {
|
4961
|
+
var _filter$value3;
|
4962
|
+
return ((_filter$value3 = filter.value) === null || _filter$value3 === void 0 ? void 0 : _filter$value3.height) || '100%';
|
4963
|
+
});
|
4964
|
+
(0,external_vue_namespaceObject.watch)(function () {
|
4965
|
+
return filter.value;
|
4966
|
+
}, function () {
|
4967
|
+
state.checked = checked.value;
|
4968
|
+
}, {
|
4969
|
+
immediate: true,
|
4970
|
+
deep: true
|
4971
|
+
});
|
4972
|
+
var headClass = (0,external_vue_namespaceObject.computed)(function () {
|
4973
|
+
var _classes;
|
4974
|
+
return (0,external_shared_namespaceObject.classes)((_classes = {}, defineProperty_defineProperty(_classes, resolveClassName('table-head-action'), true), defineProperty_defineProperty(_classes, 'column-filter', true), defineProperty_defineProperty(_classes, '--row-height', "".concat(props.height, "px")), defineProperty_defineProperty(_classes, "active", state.checked.length), defineProperty_defineProperty(_classes, "opened", state.isOpen), _classes));
|
4975
|
+
});
|
4976
|
+
var headFilterContentClass = (0,external_shared_namespaceObject.classes)(defineProperty_defineProperty({}, resolveClassName('table-head-filter'), true));
|
4977
|
+
var refVirtualRender = (0,external_vue_namespaceObject.ref)(null);
|
4978
|
+
var handlePopShow = function handlePopShow(isOpen) {
|
4979
|
+
state.isOpen = isOpen;
|
4980
|
+
isOpen && setTimeout(function () {
|
4981
|
+
refVirtualRender.value.reset();
|
4982
|
+
});
|
4983
|
+
};
|
4984
|
+
var theme = "light ".concat(resolveClassName('table-head-filter'));
|
4985
|
+
var localData = (0,external_vue_namespaceObject.computed)(function () {
|
4986
|
+
var _filter$value$list = filter.value.list,
|
4987
|
+
list = _filter$value$list === void 0 ? [] : _filter$value$list;
|
4988
|
+
return list;
|
4989
|
+
});
|
4990
|
+
var getRegExp = function getRegExp(searchValue) {
|
4991
|
+
var flags = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'ig';
|
4992
|
+
return new RegExp("".concat(searchValue).replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&'), flags);
|
4993
|
+
};
|
4994
|
+
var defaultFilterFn = function defaultFilterFn(checked, row) {
|
4995
|
+
var match = filter.value.match;
|
4996
|
+
var matchText = getRowText(row, resolvePropVal(column, 'field', [column, row]));
|
4997
|
+
if (match === 'full') {
|
4998
|
+
return checked.includes(matchText);
|
4999
|
+
}
|
5000
|
+
return checked.some(function (str) {
|
5001
|
+
return getRegExp(str, 'img').test(matchText);
|
5002
|
+
});
|
5003
|
+
};
|
5004
|
+
var filterFn = typeof filter.value.filterFn === 'function' ?
|
5005
|
+
// eslint-disable-next-line max-len
|
5006
|
+
function (checked, row, index, data) {
|
5007
|
+
return filter.value.filterFn(checked, row, props.column, index, data);
|
5008
|
+
} : function (checked, row) {
|
5009
|
+
return checked.length ? defaultFilterFn(checked, row) : true;
|
5010
|
+
};
|
5011
|
+
var handleBtnSaveClick = function handleBtnSaveClick() {
|
5012
|
+
handleFilterChange(true);
|
5013
|
+
emit('filterSave', state.checked);
|
5014
|
+
state.isOpen = false;
|
5015
|
+
};
|
5016
|
+
var handleFilterChange = function handleFilterChange() {
|
5017
|
+
var btnSaveClick = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
5018
|
+
var _resolveBtnOption = resolveBtnOption(btnSave, t.value.confirm),
|
5019
|
+
disabled = _resolveBtnOption.disabled;
|
5020
|
+
if (disabled || btnSaveClick) {
|
5021
|
+
if (filter.value === 'custom') {
|
5022
|
+
emit('change', state.checked, null);
|
5023
|
+
state.isOpen = false;
|
5024
|
+
return;
|
5025
|
+
}
|
5026
|
+
filter.value.checked = state.checked;
|
5027
|
+
emit('change', state.checked, filterFn);
|
5028
|
+
}
|
5029
|
+
};
|
5030
|
+
var handleBtnResetClick = function handleBtnResetClick() {
|
5031
|
+
if (state.checked.length) {
|
5032
|
+
state.checked.length = 0;
|
5033
|
+
state.isOpen = false;
|
5034
|
+
(0,external_vue_namespaceObject.nextTick)(function () {
|
5035
|
+
return emit('change', state.checked, filterFn);
|
5036
|
+
});
|
5037
|
+
}
|
5038
|
+
};
|
5039
|
+
var resolveBtnOption = function resolveBtnOption(opt, defText) {
|
5040
|
+
var disabled = opt === 'disabled' || opt === false;
|
5041
|
+
var text = typeof opt === 'string' ? opt : defText;
|
5042
|
+
return {
|
5043
|
+
disabled: disabled,
|
5044
|
+
text: text
|
5045
|
+
};
|
5046
|
+
};
|
5047
|
+
var _filter$value4 = filter.value,
|
5048
|
+
btnSave = _filter$value4.btnSave,
|
5049
|
+
btnReset = _filter$value4.btnReset;
|
5050
|
+
var renderSaveBtn = function renderSaveBtn() {
|
5051
|
+
var _resolveBtnOption2 = resolveBtnOption(btnSave, t.value.confirm),
|
5052
|
+
disabled = _resolveBtnOption2.disabled,
|
5053
|
+
text = _resolveBtnOption2.text;
|
5054
|
+
if (disabled) {
|
5055
|
+
return (0,external_vue_namespaceObject.createVNode)("span", {
|
5056
|
+
"class": "btn-filter-save disabled"
|
5057
|
+
}, [text]);
|
5058
|
+
}
|
5059
|
+
return (0,external_vue_namespaceObject.createVNode)(external_button_namespaceObject["default"], {
|
5060
|
+
"theme": "primary",
|
5061
|
+
"size": "small",
|
5062
|
+
"style": "width: 56px; margin-right: 8px;",
|
5063
|
+
"onClick": handleBtnSaveClick
|
5064
|
+
}, head_filter_isSlot(text) ? text : {
|
5065
|
+
"default": function _default() {
|
5066
|
+
return [text];
|
5067
|
+
}
|
4686
5068
|
});
|
4687
5069
|
};
|
4688
5070
|
var renderResetBtn = function renderResetBtn() {
|
@@ -4697,7 +5079,7 @@ function _isSlot(s) {
|
|
4697
5079
|
"size": "small",
|
4698
5080
|
"disabled": state.checked.length === 0,
|
4699
5081
|
"onClick": handleBtnResetClick
|
4700
|
-
},
|
5082
|
+
}, head_filter_isSlot(text) ? text : {
|
4701
5083
|
"default": function _default() {
|
4702
5084
|
return [text];
|
4703
5085
|
}
|
@@ -4845,10 +5227,6 @@ function _nonIterableRest() {
|
|
4845
5227
|
function _slicedToArray(arr, i) {
|
4846
5228
|
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
|
4847
5229
|
}
|
4848
|
-
;// CONCATENATED MODULE: external "../icon/"
|
4849
|
-
var _x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
|
4850
|
-
var _y = x => () => x
|
4851
|
-
const _namespaceObject = _x({ ["AngleDownFill"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.AngleDownFill, ["AngleUpFill"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.AngleUpFill, ["CloseLine"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.CloseLine, ["CogShape"]: () => __WEBPACK_EXTERNAL_MODULE__icon__2ba2075d__.CogShape });
|
4852
5230
|
;// CONCATENATED MODULE: ../../packages/table/src/plugins/head-sort.tsx
|
4853
5231
|
|
4854
5232
|
|
@@ -4893,19 +5271,23 @@ const _namespaceObject = _x({ ["AngleDownFill"]: () => __WEBPACK_EXTERNAL_MODULE
|
|
4893
5271
|
},
|
4894
5272
|
emits: ['change'],
|
4895
5273
|
setup: function setup(props, _ref) {
|
4896
|
-
var _props$column;
|
4897
|
-
var emit = _ref.emit
|
5274
|
+
var _ref2, _props$column$sort$va, _props$column;
|
5275
|
+
var emit = _ref.emit,
|
5276
|
+
expose = _ref.expose;
|
4898
5277
|
var _usePrefix = (0,external_config_provider_namespaceObject.usePrefix)(),
|
4899
5278
|
resolveClassName = _usePrefix.resolveClassName;
|
4900
|
-
var defSort = ((_props$column = props.column) === null || _props$column === void 0 || (_props$column = _props$column.sort) === null || _props$column === void 0 ? void 0 : _props$column.value)
|
5279
|
+
var defSort = (_ref2 = (_props$column$sort$va = (_props$column = props.column) === null || _props$column === void 0 || (_props$column = _props$column.sort) === null || _props$column === void 0 ? void 0 : _props$column.value) !== null && _props$column$sort$va !== void 0 ? _props$column$sort$va : props.defaultSort) !== null && _ref2 !== void 0 ? _ref2 : SORT_OPTION.NULL;
|
4901
5280
|
var sortType = (0,external_vue_namespaceObject.ref)(defSort);
|
4902
5281
|
(0,external_vue_namespaceObject.watch)(function () {
|
4903
5282
|
return [props.defaultSort];
|
4904
|
-
}, function (
|
4905
|
-
var
|
4906
|
-
val =
|
5283
|
+
}, function (_ref3) {
|
5284
|
+
var _ref4 = _slicedToArray(_ref3, 1),
|
5285
|
+
val = _ref4[0];
|
4907
5286
|
sortType.value = val;
|
4908
5287
|
});
|
5288
|
+
var setNextSortType = function setNextSortType(type) {
|
5289
|
+
sortType.value = type;
|
5290
|
+
};
|
4909
5291
|
/**
|
4910
5292
|
* 点击排序事件
|
4911
5293
|
* @param e 鼠标事件
|
@@ -4924,7 +5306,7 @@ const _namespaceObject = _x({ ["AngleDownFill"]: () => __WEBPACK_EXTERNAL_MODULE
|
|
4924
5306
|
currentSort = SORT_OPTION.NULL;
|
4925
5307
|
}
|
4926
5308
|
var execFn = getSortFn(props.column, currentSort);
|
4927
|
-
var sort = resolveSort(props.column.sort);
|
5309
|
+
var sort = resolveSort(props.column.sort, props.column);
|
4928
5310
|
if ((sort === null || sort === void 0 ? void 0 : sort.value) === 'custom') {
|
4929
5311
|
var _sort$sortFn;
|
4930
5312
|
emit('change', (_sort$sortFn = sort === null || sort === void 0 ? void 0 : sort.sortFn) !== null && _sort$sortFn !== void 0 ? _sort$sortFn : execFn, currentSort);
|
@@ -4932,6 +5314,9 @@ const _namespaceObject = _x({ ["AngleDownFill"]: () => __WEBPACK_EXTERNAL_MODULE
|
|
4932
5314
|
}
|
4933
5315
|
emit('change', execFn, currentSort);
|
4934
5316
|
};
|
5317
|
+
expose({
|
5318
|
+
setNextSortType: setNextSortType
|
5319
|
+
});
|
4935
5320
|
return function () {
|
4936
5321
|
return (0,external_vue_namespaceObject.createVNode)("span", {
|
4937
5322
|
"class": resolveClassName('head-cell-sort')
|
@@ -4951,8 +5336,9 @@ const _namespaceObject = _x({ ["AngleDownFill"]: () => __WEBPACK_EXTERNAL_MODULE
|
|
4951
5336
|
};
|
4952
5337
|
}
|
4953
5338
|
}));
|
4954
|
-
;// CONCATENATED MODULE: ../../packages/table/src/plugins/
|
5339
|
+
;// CONCATENATED MODULE: ../../packages/table/src/plugins/use-head-cell.tsx
|
4955
5340
|
|
5341
|
+
var use_head_cell_this = undefined;
|
4956
5342
|
|
4957
5343
|
/*
|
4958
5344
|
* Tencent is pleased to support the open source community by making
|
@@ -4987,278 +5373,236 @@ const _namespaceObject = _x({ ["AngleDownFill"]: () => __WEBPACK_EXTERNAL_MODULE
|
|
4987
5373
|
|
4988
5374
|
|
4989
5375
|
|
4990
|
-
|
4991
|
-
|
4992
|
-
function settings_isSlot(s) {
|
5376
|
+
function use_head_cell_isSlot(s) {
|
4993
5377
|
return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !(0,external_vue_namespaceObject.isVNode)(s);
|
4994
5378
|
}
|
4995
|
-
/* harmony default export */ const
|
4996
|
-
|
4997
|
-
|
4998
|
-
|
4999
|
-
|
5000
|
-
|
5001
|
-
|
5002
|
-
|
5003
|
-
var
|
5004
|
-
|
5005
|
-
|
5006
|
-
|
5007
|
-
|
5008
|
-
|
5009
|
-
|
5010
|
-
|
5011
|
-
|
5012
|
-
|
5013
|
-
|
5014
|
-
|
5015
|
-
|
5016
|
-
|
5017
|
-
|
5018
|
-
|
5019
|
-
|
5020
|
-
|
5021
|
-
|
5022
|
-
|
5023
|
-
|
5024
|
-
|
5025
|
-
|
5026
|
-
|
5027
|
-
|
5028
|
-
|
5029
|
-
return
|
5030
|
-
}
|
5031
|
-
|
5032
|
-
|
5033
|
-
|
5034
|
-
|
5035
|
-
|
5036
|
-
|
5037
|
-
|
5038
|
-
|
5039
|
-
|
5040
|
-
|
5041
|
-
|
5042
|
-
|
5043
|
-
|
5044
|
-
|
5045
|
-
var handleSaveClick = function handleSaveClick() {
|
5046
|
-
Object.assign(cachedValue, {
|
5047
|
-
checkAll: checkAll.value,
|
5048
|
-
activeSize: activeSize.value,
|
5049
|
-
activeHeight: activeHeight.value,
|
5050
|
-
checkedFields: checkedFields.value
|
5051
|
-
});
|
5052
|
-
emit('change', {
|
5053
|
-
checked: checkedFields.value,
|
5054
|
-
size: activeSize.value,
|
5055
|
-
height: activeHeight.value,
|
5056
|
-
fields: (0,external_vue_namespaceObject.unref)(renderFields)
|
5057
|
-
});
|
5058
|
-
isShow.value = false;
|
5059
|
-
};
|
5060
|
-
var handleCancelClick = function handleCancelClick() {
|
5061
|
-
checkAll.value = cachedValue.checkAll;
|
5062
|
-
activeSize.value = cachedValue.activeSize;
|
5063
|
-
activeHeight.value = cachedValue.activeHeight;
|
5064
|
-
checkedFields.value = cachedValue.checkedFields;
|
5065
|
-
isShow.value = false;
|
5066
|
-
};
|
5067
|
-
var handleSettingClick = function handleSettingClick() {
|
5068
|
-
isShow.value = true;
|
5069
|
-
};
|
5070
|
-
var handleCheckAllClick = function handleCheckAllClick(e) {
|
5071
|
-
e.stopImmediatePropagation();
|
5072
|
-
e.stopPropagation();
|
5073
|
-
e.preventDefault();
|
5074
|
-
checkAll.value = !checkAll.value;
|
5075
|
-
var fields = localSettings.value.fields || props.columns || [];
|
5076
|
-
var readonlyFields = fields.filter(function (f, index) {
|
5077
|
-
return f.disabled && checkedFields.value.includes(resolvedColVal(f, index));
|
5078
|
-
}).map(function (item, index) {
|
5079
|
-
return resolvedColVal(item, index);
|
5379
|
+
/* harmony default export */ const use_head_cell = (function (props, context, column, tableResp) {
|
5380
|
+
var _tableResp$formatData;
|
5381
|
+
var nextSort = (0,external_vue_namespaceObject.ref)((_tableResp$formatData = tableResp.formatData.columnSchema.get(column)) === null || _tableResp$formatData === void 0 ? void 0 : _tableResp$formatData[COLUMN_ATTRIBUTE.COL_SORT_TYPE]);
|
5382
|
+
var active = (0,external_vue_namespaceObject.computed)(function () {
|
5383
|
+
var _tableResp$formatData2, _tableResp$formatData3;
|
5384
|
+
return (_tableResp$formatData2 = (_tableResp$formatData3 = tableResp.formatData.columnSchema.get(column)) === null || _tableResp$formatData3 === void 0 ? void 0 : _tableResp$formatData3[COLUMN_ATTRIBUTE.COL_SORT_ACTIVE]) !== null && _tableResp$formatData2 !== void 0 ? _tableResp$formatData2 : false;
|
5385
|
+
});
|
5386
|
+
var resolveEventListener = function resolveEventListener(col) {
|
5387
|
+
var listeners = tableResp.getColumnAttribute(col, COLUMN_ATTRIBUTE.LISTENERS);
|
5388
|
+
if (!listeners) {
|
5389
|
+
return {};
|
5390
|
+
}
|
5391
|
+
return Array.from(listeners === null || listeners === void 0 ? void 0 : listeners.keys()).reduce(function (handle, key) {
|
5392
|
+
var eventName = key.split('_').slice(-1)[0];
|
5393
|
+
return Object.assign(handle, defineProperty_defineProperty({}, eventName, function (e) {
|
5394
|
+
listeners.get(key).forEach(function (fn) {
|
5395
|
+
return Reflect.apply(fn, use_head_cell_this, [e, col]);
|
5396
|
+
});
|
5397
|
+
}));
|
5398
|
+
}, {});
|
5399
|
+
};
|
5400
|
+
var getSortFnByColumn = function getSortFnByColumn(column, fn, a, b) {
|
5401
|
+
if (column.type === 'index') {
|
5402
|
+
return fn(tableResp.getRowAttribute(a, TABLE_ROW_ATTRIBUTE.ROW_INDEX), tableResp.getRowAttribute(b, TABLE_ROW_ATTRIBUTE.ROW_INDEX));
|
5403
|
+
}
|
5404
|
+
return fn(a, b);
|
5405
|
+
};
|
5406
|
+
/**
|
5407
|
+
* 点击选中一列事件
|
5408
|
+
* @param index 当前选中列Index
|
5409
|
+
* @param column 当前选中列
|
5410
|
+
*/
|
5411
|
+
var handleColumnHeadClick = function handleColumnHeadClick(index, column) {
|
5412
|
+
if (tableResp.getColumnAttribute(column, COLUMN_ATTRIBUTE.COL_IS_DRAG)) {
|
5413
|
+
return;
|
5414
|
+
}
|
5415
|
+
if (column.sort && !column.filter) {
|
5416
|
+
var type = tableResp.getColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_TYPE);
|
5417
|
+
nextSort.value = getNextSortType(type);
|
5418
|
+
var sortFn = function sortFn(a, b) {
|
5419
|
+
return getSortFnByColumn(column, getSortFn(column, nextSort.value), a, b);
|
5420
|
+
};
|
5421
|
+
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_TYPE, nextSort.value);
|
5422
|
+
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_FN, sortFn);
|
5423
|
+
tableResp.setColumnSortActive(column, true);
|
5424
|
+
tableResp.sortData(column);
|
5425
|
+
context.emit(EMIT_EVENTS.COLUMN_SORT, {
|
5426
|
+
column: (0,external_vue_namespaceObject.unref)(column),
|
5427
|
+
index: index,
|
5428
|
+
type: nextSort.value
|
5080
5429
|
});
|
5081
|
-
|
5082
|
-
|
5083
|
-
|
5084
|
-
|
5085
|
-
|
5086
|
-
|
5430
|
+
}
|
5431
|
+
};
|
5432
|
+
var handleColCellClick = function handleColCellClick(index) {
|
5433
|
+
handleColumnHeadClick(index, column);
|
5434
|
+
};
|
5435
|
+
var renderCheckboxColumn = function renderCheckboxColumn(row, index) {
|
5436
|
+
var isAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
5437
|
+
var handleChecked = function handleChecked(value) {
|
5438
|
+
if (isAll) {
|
5439
|
+
tableResp.setRowSelectionAll(value);
|
5440
|
+
context.emit(EMIT_EVENTS.ROW_SELECT_ALL, {
|
5441
|
+
checked: value,
|
5442
|
+
data: props.data
|
5087
5443
|
});
|
5088
|
-
|
5089
|
-
} else {
|
5090
|
-
var _checkedFields$value2;
|
5091
|
-
(_checkedFields$value2 = checkedFields.value).splice.apply(_checkedFields$value2, [0, checkedFields.value.length].concat(_toConsumableArray(readonlyFields)));
|
5444
|
+
return;
|
5092
5445
|
}
|
5446
|
+
tableResp.setRowSelection(row, value);
|
5447
|
+
context.emit(EMIT_EVENTS.ROW_SELECT, {
|
5448
|
+
row: row,
|
5449
|
+
index: index,
|
5450
|
+
checked: value,
|
5451
|
+
data: props.data
|
5452
|
+
});
|
5453
|
+
context.emit(EMIT_EVENTS.ROW_SELECT_CHANGE, {
|
5454
|
+
row: row,
|
5455
|
+
index: index,
|
5456
|
+
checked: value,
|
5457
|
+
data: props.data
|
5458
|
+
});
|
5093
5459
|
};
|
5094
|
-
var
|
5095
|
-
|
5096
|
-
|
5097
|
-
|
5098
|
-
|
5099
|
-
|
5100
|
-
return isLimit.value && (localSettings.value.limit ? localSettings.value.limit : 0) <= checkedFields.value.length;
|
5460
|
+
var indeterminate = tableResp.getRowAttribute(row, TABLE_ROW_ATTRIBUTE.ROW_SELECTION_INDETERMINATE);
|
5461
|
+
var isChecked = tableResp.getRowAttribute(row, TABLE_ROW_ATTRIBUTE.ROW_SELECTION);
|
5462
|
+
var isEnable = isRowSelectEnable(props, {
|
5463
|
+
row: row,
|
5464
|
+
index: index,
|
5465
|
+
isCheckAll: isAll
|
5101
5466
|
});
|
5102
|
-
|
5103
|
-
|
5104
|
-
|
5105
|
-
|
5106
|
-
|
5107
|
-
|
5108
|
-
|
5109
|
-
|
5110
|
-
|
5111
|
-
|
5112
|
-
|
5113
|
-
|
5467
|
+
return (0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject["default"], {
|
5468
|
+
"onChange": handleChecked,
|
5469
|
+
"disabled": !isEnable,
|
5470
|
+
"modelValue": isChecked,
|
5471
|
+
"indeterminate": indeterminate
|
5472
|
+
}, null);
|
5473
|
+
};
|
5474
|
+
/**
|
5475
|
+
* 获取排序设置表头
|
5476
|
+
* @param column 当前渲染排序列
|
5477
|
+
* @param index 排序列所在index
|
5478
|
+
* @returns
|
5479
|
+
*/
|
5480
|
+
var getSortCell = function getSortCell(column, index) {
|
5481
|
+
/**
|
5482
|
+
* 点击排序事件
|
5483
|
+
* @param sortFn 排序函数
|
5484
|
+
* @param type 排序类型
|
5485
|
+
*/
|
5486
|
+
var handleSortClick = function handleSortClick(sortFn, type) {
|
5487
|
+
var fn = function fn(a, b) {
|
5488
|
+
return getSortFnByColumn(column, sortFn, a, b);
|
5114
5489
|
};
|
5490
|
+
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_TYPE, type);
|
5491
|
+
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_FN, fn);
|
5492
|
+
tableResp.sortData(column);
|
5493
|
+
tableResp.setColumnSortActive(column, true);
|
5494
|
+
context.emit(EMIT_EVENTS.COLUMN_SORT, {
|
5495
|
+
column: column,
|
5496
|
+
index: index,
|
5497
|
+
type: type
|
5498
|
+
});
|
5115
5499
|
};
|
5116
|
-
|
5117
|
-
|
5500
|
+
// 如果是独立的,则只高亮当前排序
|
5501
|
+
return (0,external_vue_namespaceObject.createVNode)(head_sort, {
|
5502
|
+
"column": column,
|
5503
|
+
"defaultSort": active.value ? nextSort.value : SORT_OPTION.NULL,
|
5504
|
+
"onChange": handleSortClick,
|
5505
|
+
"active": active.value
|
5506
|
+
}, null);
|
5507
|
+
};
|
5508
|
+
var getFilterCell = function getFilterCell(column, index) {
|
5509
|
+
var handleFilterChange = function handleFilterChange(checked, filterFn) {
|
5510
|
+
var filterFn0 = function filterFn0(row, index) {
|
5511
|
+
return filterFn(checked, row, index);
|
5512
|
+
};
|
5513
|
+
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_FILTER_FN, filterFn0);
|
5514
|
+
tableResp.filter();
|
5515
|
+
context.emit(EMIT_EVENTS.COLUMN_FILTER, {
|
5516
|
+
checked: checked,
|
5517
|
+
column: (0,external_vue_namespaceObject.unref)(column),
|
5518
|
+
index: index
|
5519
|
+
});
|
5118
5520
|
};
|
5119
|
-
var
|
5120
|
-
|
5121
|
-
|
5122
|
-
|
5123
|
-
"onClick": function onClick() {
|
5124
|
-
return handleSizeItemClick(item);
|
5125
|
-
}
|
5126
|
-
}, [item.label]);
|
5521
|
+
var filterSave = function filterSave(values) {
|
5522
|
+
context.emit(EMIT_EVENTS.COLUMN_FILTER_SAVE, {
|
5523
|
+
column: column,
|
5524
|
+
values: values
|
5127
5525
|
});
|
5128
5526
|
};
|
5129
|
-
|
5130
|
-
|
5131
|
-
|
5132
|
-
|
5133
|
-
|
5134
|
-
|
5135
|
-
|
5136
|
-
|
5137
|
-
|
5138
|
-
|
5139
|
-
|
5140
|
-
|
5141
|
-
|
5142
|
-
|
5143
|
-
|
5144
|
-
|
5145
|
-
|
5146
|
-
|
5527
|
+
return (0,external_vue_namespaceObject.createVNode)(head_filter, {
|
5528
|
+
"column": column,
|
5529
|
+
"height": props.headHeight,
|
5530
|
+
"onChange": handleFilterChange,
|
5531
|
+
"onFilterSave": filterSave
|
5532
|
+
}, null);
|
5533
|
+
};
|
5534
|
+
var config = resolveHeadConfig(props);
|
5535
|
+
var cellFn = config.cellFn;
|
5536
|
+
var getHeadCellText = function getHeadCellText(column, index) {
|
5537
|
+
if (typeof cellFn === 'function') {
|
5538
|
+
return cellFn(column, index);
|
5539
|
+
}
|
5540
|
+
if (typeof column.renderHead === 'function') {
|
5541
|
+
return column.renderHead(column, index);
|
5542
|
+
}
|
5543
|
+
return resolvePropVal(column, 'label', [column, index]);
|
5544
|
+
};
|
5545
|
+
/**
|
5546
|
+
* table head cell render
|
5547
|
+
* @param column
|
5548
|
+
* @param index
|
5549
|
+
* @returns
|
5550
|
+
*/
|
5551
|
+
var renderHeadCell = function renderHeadCell(column, index) {
|
5552
|
+
if (column.type === 'selection') {
|
5553
|
+
return [renderCheckboxColumn(CHECK_ALL_OBJ, null, true)];
|
5554
|
+
}
|
5555
|
+
var cells = [];
|
5556
|
+
if (column.sort) {
|
5557
|
+
cells.push(getSortCell(column, index));
|
5558
|
+
}
|
5559
|
+
if (column.filter) {
|
5560
|
+
cells.push(getFilterCell(column, index));
|
5561
|
+
}
|
5562
|
+
var cellText = getHeadCellText(column, index);
|
5563
|
+
cells.unshift((0,external_vue_namespaceObject.createVNode)("span", {
|
5564
|
+
"class": "head-text"
|
5565
|
+
}, [cellText]));
|
5566
|
+
var showTitle = typeof cellText === 'string' ? cellText : undefined;
|
5567
|
+
var headClass = {
|
5568
|
+
'has-sort': !!column.sort,
|
5569
|
+
'has-filter': !!column.filter
|
5570
|
+
};
|
5571
|
+
return (0,external_vue_namespaceObject.createVNode)(table_cell, {
|
5572
|
+
"class": headClass,
|
5573
|
+
"title": showTitle,
|
5574
|
+
"observerResize": props.observerResize,
|
5575
|
+
"resizerWay": props.resizerWay,
|
5576
|
+
"isHead": true,
|
5577
|
+
"column": column,
|
5578
|
+
"parentSetting": props.showOverflowTooltip,
|
5579
|
+
"headExplain": resolvePropVal(column.explain, 'head', [column])
|
5580
|
+
}, use_head_cell_isSlot(cells) ? cells : {
|
5581
|
+
"default": function _default() {
|
5582
|
+
return [cells];
|
5147
5583
|
}
|
5148
|
-
}, {
|
5149
|
-
immediate: true,
|
5150
|
-
deep: true
|
5151
|
-
});
|
5152
|
-
(0,external_vue_namespaceObject.watch)(function () {
|
5153
|
-
return [props.settings.checked];
|
5154
|
-
}, function () {
|
5155
|
-
var _checkedFields$value3;
|
5156
|
-
(_checkedFields$value3 = checkedFields.value).splice.apply(_checkedFields$value3, [0, checkedFields.value.length].concat(_toConsumableArray(localSettings.value.checked)));
|
5157
|
-
}, {
|
5158
|
-
immediate: true,
|
5159
|
-
deep: true
|
5160
5584
|
});
|
5161
|
-
|
5162
|
-
|
5163
|
-
|
5164
|
-
|
5165
|
-
|
5166
|
-
|
5167
|
-
|
5168
|
-
|
5169
|
-
|
5170
|
-
|
5171
|
-
|
5172
|
-
|
5173
|
-
|
5174
|
-
|
5175
|
-
|
5176
|
-
|
5177
|
-
|
5178
|
-
content: function content() {
|
5179
|
-
var _slots$default;
|
5180
|
-
var _slot2;
|
5181
|
-
return (0,external_vue_namespaceObject.createVNode)("div", {
|
5182
|
-
"class": "setting-content"
|
5183
|
-
}, [(0,external_vue_namespaceObject.createVNode)("div", {
|
5184
|
-
"class": "setting-head"
|
5185
|
-
}, [(0,external_vue_namespaceObject.createVNode)("span", {
|
5186
|
-
"class": "head-title"
|
5187
|
-
}, [t.value.setting.title]), (0,external_vue_namespaceObject.createVNode)(_namespaceObject.CloseLine, {
|
5188
|
-
"class": "icon-close-action",
|
5189
|
-
"onClick": handleCancelClick
|
5190
|
-
}, null)]), (0,external_vue_namespaceObject.createVNode)("div", {
|
5191
|
-
"class": "setting-body"
|
5192
|
-
}, [(0,external_vue_namespaceObject.createVNode)("div", {
|
5193
|
-
"class": "setting-body-title"
|
5194
|
-
}, [(0,external_vue_namespaceObject.createVNode)("div", null, [(0,external_vue_namespaceObject.createVNode)("span", {
|
5195
|
-
"class": "field-setting-label"
|
5196
|
-
}, [t.value.setting.fields.title]), isLimit.value ? (0,external_vue_namespaceObject.createVNode)("span", {
|
5197
|
-
"class": "limit"
|
5198
|
-
}, [t.value.setting.fields.subtitle(localSettings.value.limit)]) : '']), isLimit.value ? '' : (0,external_vue_namespaceObject.createVNode)("span", {
|
5199
|
-
"class": "check-all",
|
5200
|
-
"onClick": handleCheckAllClick
|
5201
|
-
}, [(0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject["default"], {
|
5202
|
-
"label": t.value.setting.fields.selectAll,
|
5203
|
-
"indeterminate": Boolean(indeterminate.value),
|
5204
|
-
"modelValue": checkedFields.value.length > 0
|
5205
|
-
}, {
|
5206
|
-
"default": function _default() {
|
5207
|
-
return [t.value.setting.fields.selectAll];
|
5208
|
-
}
|
5209
|
-
})])]), (0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject.BkCheckboxGroup, {
|
5210
|
-
"class": "setting-body-fields",
|
5211
|
-
"modelValue": checkedFields.value,
|
5212
|
-
"onUpdate:modelValue": function onUpdateModelValue($event) {
|
5213
|
-
return checkedFields.value = $event;
|
5214
|
-
}
|
5215
|
-
}, settings_isSlot(_slot2 = renderFields.value.map(function (item, index) {
|
5216
|
-
var _slot;
|
5217
|
-
return (0,external_vue_namespaceObject.createVNode)("div", {
|
5218
|
-
"class": "field-item"
|
5219
|
-
}, [(0,external_vue_namespaceObject.createVNode)(external_checkbox_namespaceObject["default"], {
|
5220
|
-
"checked": checkedFields.value.includes(resolvedColVal(item, index)),
|
5221
|
-
"label": resolvedColVal(item, index),
|
5222
|
-
"disabled": isItemReadonly(item, index)
|
5223
|
-
}, settings_isSlot(_slot = resolvePropVal(item, ['name', 'label'], [item, index])) ? _slot : {
|
5224
|
-
"default": function _default() {
|
5225
|
-
return [_slot];
|
5226
|
-
}
|
5227
|
-
})]);
|
5228
|
-
})) ? _slot2 : {
|
5229
|
-
"default": function _default() {
|
5230
|
-
return [_slot2];
|
5231
|
-
}
|
5232
|
-
}), (_slots$default = slots["default"]) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots), showLineHeight.value ? (0,external_vue_namespaceObject.createVNode)("div", {
|
5233
|
-
"class": "setting-body-line-height"
|
5234
|
-
}, [t.value.setting.lineHeight.title, (0,external_vue_namespaceObject.createTextVNode)("\uFF1A"), renderSize()]) : '']), (0,external_vue_namespaceObject.createVNode)("div", {
|
5235
|
-
"class": "setting-footer"
|
5236
|
-
}, [(0,external_vue_namespaceObject.createVNode)(external_button_namespaceObject["default"], {
|
5237
|
-
"theme": "primary",
|
5238
|
-
"style": buttonStyle,
|
5239
|
-
"onClick": handleSaveClick
|
5240
|
-
}, {
|
5241
|
-
"default": function _default() {
|
5242
|
-
return [t.value.setting.options.ok];
|
5243
|
-
}
|
5244
|
-
}), (0,external_vue_namespaceObject.createVNode)(external_button_namespaceObject["default"], {
|
5245
|
-
"style": buttonStyle,
|
5246
|
-
"onClick": handleCancelClick
|
5247
|
-
}, {
|
5248
|
-
"default": function _default() {
|
5249
|
-
return [t.value.setting.options.cancel];
|
5250
|
-
}
|
5251
|
-
})])]);
|
5252
|
-
}
|
5253
|
-
}) : '';
|
5254
|
-
};
|
5255
|
-
}
|
5256
|
-
}));
|
5585
|
+
};
|
5586
|
+
var getTH = function getTH(classList, style, index) {
|
5587
|
+
return (0,external_vue_namespaceObject.createVNode)("th", (0,external_vue_namespaceObject.mergeProps)({
|
5588
|
+
"colspan": 1,
|
5589
|
+
"rowspan": 1,
|
5590
|
+
"data-id": tableResp.getColumnId(column),
|
5591
|
+
"class": classList,
|
5592
|
+
"style": style,
|
5593
|
+
"onClick": function onClick() {
|
5594
|
+
return handleColCellClick(index);
|
5595
|
+
}
|
5596
|
+
}, resolveEventListener(column)), [renderHeadCell(column, index)]);
|
5597
|
+
};
|
5598
|
+
return {
|
5599
|
+
getTH: getTH
|
5600
|
+
};
|
5601
|
+
});
|
5257
5602
|
;// CONCATENATED MODULE: ../../packages/table/src/use-render.tsx
|
5258
5603
|
|
5259
5604
|
|
5260
5605
|
|
5261
|
-
var use_render_this = undefined;
|
5262
5606
|
|
5263
5607
|
function use_render_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
5264
5608
|
function use_render_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? use_render_ownKeys(Object(source), !0).forEach(function (key) { defineProperty_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : use_render_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
@@ -5303,8 +5647,6 @@ function use_render_objectSpread(target) { for (var i = 1; i < arguments.length;
|
|
5303
5647
|
|
5304
5648
|
|
5305
5649
|
|
5306
|
-
|
5307
|
-
|
5308
5650
|
function use_render_isSlot(s) {
|
5309
5651
|
return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !(0,external_vue_namespaceObject.isVNode)(s);
|
5310
5652
|
}
|
@@ -5320,7 +5662,7 @@ function use_render_isSlot(s) {
|
|
5320
5662
|
var settings = (0,external_vue_namespaceObject.computed)(function () {
|
5321
5663
|
return formatData.value.settings;
|
5322
5664
|
});
|
5323
|
-
|
5665
|
+
// const activeSortIndex = ref(null);
|
5324
5666
|
/**
|
5325
5667
|
* 过滤当前可渲染的列
|
5326
5668
|
*/
|
@@ -5435,175 +5777,17 @@ function use_render_isSlot(s) {
|
|
5435
5777
|
});
|
5436
5778
|
context.emit(EMIT_EVENTS.PAGE_VALUE_CHANGE, current);
|
5437
5779
|
};
|
5438
|
-
var getSortFnByColumn = function getSortFnByColumn(column, fn, a, b) {
|
5439
|
-
if (column.type === 'index') {
|
5440
|
-
return fn(tableResp.getRowAttribute(a, TABLE_ROW_ATTRIBUTE.ROW_INDEX), tableResp.getRowAttribute(b, TABLE_ROW_ATTRIBUTE.ROW_INDEX));
|
5441
|
-
}
|
5442
|
-
return fn(a, b);
|
5443
|
-
};
|
5444
|
-
/**
|
5445
|
-
* 点击选中一列事件
|
5446
|
-
* @param index 当前选中列Index
|
5447
|
-
* @param column 当前选中列
|
5448
|
-
*/
|
5449
|
-
var handleColumnHeadClick = function handleColumnHeadClick(index, column) {
|
5450
|
-
if (tableResp.getColumnAttribute(column, COLUMN_ATTRIBUTE.COL_IS_DRAG)) {
|
5451
|
-
return;
|
5452
|
-
}
|
5453
|
-
if (column.sort && !column.filter) {
|
5454
|
-
var type = tableResp.getColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_TYPE);
|
5455
|
-
var nextSort = getNextSortType(type);
|
5456
|
-
var sortFn = function sortFn(a, b) {
|
5457
|
-
return getSortFnByColumn(column, getSortFn(column, nextSort), a, b);
|
5458
|
-
};
|
5459
|
-
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_TYPE, nextSort);
|
5460
|
-
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_FN, sortFn);
|
5461
|
-
tableResp.sortData(column);
|
5462
|
-
context.emit(EMIT_EVENTS.COLUMN_SORT, {
|
5463
|
-
column: (0,external_vue_namespaceObject.unref)(column),
|
5464
|
-
index: index,
|
5465
|
-
type: nextSort
|
5466
|
-
});
|
5467
|
-
}
|
5468
|
-
};
|
5469
|
-
/**
|
5470
|
-
* 获取排序设置表头
|
5471
|
-
* @param column 当前渲染排序列
|
5472
|
-
* @param index 排序列所在index
|
5473
|
-
* @returns
|
5474
|
-
*/
|
5475
|
-
var getSortCell = function getSortCell(column, index) {
|
5476
|
-
/**
|
5477
|
-
* 点击排序事件
|
5478
|
-
* @param sortFn 排序函数
|
5479
|
-
* @param type 排序类型
|
5480
|
-
*/
|
5481
|
-
var handleSortClick = function handleSortClick(sortFn, type) {
|
5482
|
-
var fn = function fn(a, b) {
|
5483
|
-
return getSortFnByColumn(column, sortFn, a, b);
|
5484
|
-
};
|
5485
|
-
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_TYPE, type);
|
5486
|
-
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_FN, fn);
|
5487
|
-
tableResp.sortData(column);
|
5488
|
-
activeSortIndex.value = index;
|
5489
|
-
context.emit(EMIT_EVENTS.COLUMN_SORT, {
|
5490
|
-
column: column,
|
5491
|
-
index: index,
|
5492
|
-
type: type
|
5493
|
-
});
|
5494
|
-
};
|
5495
|
-
var nextSort = tableResp.getColumnAttribute(column, COLUMN_ATTRIBUTE.COL_SORT_TYPE);
|
5496
|
-
var active = props.colSortBehavior === IColSortBehavior.independent ? activeSortIndex.value === index : true;
|
5497
|
-
// 如果是独立的,则只高亮当前排序
|
5498
|
-
return (0,external_vue_namespaceObject.createVNode)(head_sort, {
|
5499
|
-
"column": column,
|
5500
|
-
"defaultSort": active ? nextSort : SORT_OPTION.NULL,
|
5501
|
-
"onChange": handleSortClick,
|
5502
|
-
"active": active
|
5503
|
-
}, null);
|
5504
|
-
};
|
5505
|
-
var getFilterCell = function getFilterCell(column, index) {
|
5506
|
-
var handleFilterChange = function handleFilterChange(checked, filterFn) {
|
5507
|
-
var filterFn0 = function filterFn0(row, index) {
|
5508
|
-
return filterFn(checked, row, index);
|
5509
|
-
};
|
5510
|
-
tableResp.setColumnAttribute(column, COLUMN_ATTRIBUTE.COL_FILTER_FN, filterFn0);
|
5511
|
-
tableResp.filter();
|
5512
|
-
context.emit(EMIT_EVENTS.COLUMN_FILTER, {
|
5513
|
-
checked: checked,
|
5514
|
-
column: (0,external_vue_namespaceObject.unref)(column),
|
5515
|
-
index: index
|
5516
|
-
});
|
5517
|
-
};
|
5518
|
-
var filterSave = function filterSave(values) {
|
5519
|
-
context.emit(EMIT_EVENTS.COLUMN_FILTER_SAVE, {
|
5520
|
-
column: column,
|
5521
|
-
values: values
|
5522
|
-
});
|
5523
|
-
};
|
5524
|
-
return (0,external_vue_namespaceObject.createVNode)(head_filter, {
|
5525
|
-
"column": column,
|
5526
|
-
"height": props.headHeight,
|
5527
|
-
"onChange": handleFilterChange,
|
5528
|
-
"onFilterSave": filterSave
|
5529
|
-
}, null);
|
5530
|
-
};
|
5531
5780
|
/**
|
5532
5781
|
* 渲染Table Header
|
5533
5782
|
* @returns
|
5534
5783
|
*/
|
5535
5784
|
var renderHeader = function renderHeader() {
|
5536
5785
|
var config = resolveHeadConfig(props);
|
5537
|
-
var cellFn = config.cellFn;
|
5538
5786
|
var rowStyle = {
|
5539
5787
|
// @ts-ignore:next-line
|
5540
5788
|
'--row-height': "".concat(resolvePropVal(config, 'height', ['thead']), "px"),
|
5541
5789
|
backgroundColor: props.thead.color
|
5542
5790
|
};
|
5543
|
-
var getHeadCellText = function getHeadCellText(column, index) {
|
5544
|
-
if (typeof cellFn === 'function') {
|
5545
|
-
return cellFn(column, index);
|
5546
|
-
}
|
5547
|
-
if (typeof column.renderHead === 'function') {
|
5548
|
-
return column.renderHead(column, index);
|
5549
|
-
}
|
5550
|
-
return resolvePropVal(column, 'label', [column, index]);
|
5551
|
-
};
|
5552
|
-
/**
|
5553
|
-
* table head cell render
|
5554
|
-
* @param column
|
5555
|
-
* @param index
|
5556
|
-
* @returns
|
5557
|
-
*/
|
5558
|
-
var renderHeadCell = function renderHeadCell(column, index) {
|
5559
|
-
if (column.type === 'selection') {
|
5560
|
-
return renderCheckboxColumn(CHECK_ALL_OBJ, null, true);
|
5561
|
-
}
|
5562
|
-
var cells = [];
|
5563
|
-
if (column.sort) {
|
5564
|
-
cells.push(getSortCell(column, index));
|
5565
|
-
}
|
5566
|
-
if (column.filter) {
|
5567
|
-
cells.push(getFilterCell(column, index));
|
5568
|
-
}
|
5569
|
-
var cellText = getHeadCellText(column, index);
|
5570
|
-
cells.unshift((0,external_vue_namespaceObject.createVNode)("span", {
|
5571
|
-
"class": "head-text"
|
5572
|
-
}, [cellText]));
|
5573
|
-
var showTitle = typeof cellText === 'string' ? cellText : undefined;
|
5574
|
-
var headClass = {
|
5575
|
-
'has-sort': !!column.sort,
|
5576
|
-
'has-filter': !!column.filter
|
5577
|
-
};
|
5578
|
-
return (0,external_vue_namespaceObject.createVNode)(table_cell, {
|
5579
|
-
"class": headClass,
|
5580
|
-
"title": showTitle,
|
5581
|
-
"observerResize": props.observerResize,
|
5582
|
-
"resizerWay": props.resizerWay,
|
5583
|
-
"isHead": true,
|
5584
|
-
"column": column,
|
5585
|
-
"parentSetting": props.showOverflowTooltip,
|
5586
|
-
"headExplain": resolvePropVal(column.explain, 'head', [column])
|
5587
|
-
}, use_render_isSlot(cells) ? cells : {
|
5588
|
-
"default": function _default() {
|
5589
|
-
return [cells];
|
5590
|
-
}
|
5591
|
-
});
|
5592
|
-
};
|
5593
|
-
var resolveEventListener = function resolveEventListener(col) {
|
5594
|
-
var listeners = tableResp.getColumnAttribute(col, COLUMN_ATTRIBUTE.LISTENERS);
|
5595
|
-
if (!listeners) {
|
5596
|
-
return {};
|
5597
|
-
}
|
5598
|
-
return Array.from(listeners === null || listeners === void 0 ? void 0 : listeners.keys()).reduce(function (handle, key) {
|
5599
|
-
var eventName = key.split('_').slice(-1)[0];
|
5600
|
-
return Object.assign(handle, defineProperty_defineProperty({}, eventName, function (e) {
|
5601
|
-
listeners.get(key).forEach(function (fn) {
|
5602
|
-
return Reflect.apply(fn, use_render_this, [e, col]);
|
5603
|
-
});
|
5604
|
-
}));
|
5605
|
-
}, {});
|
5606
|
-
};
|
5607
5791
|
var _useFixedColumn = use_fixed_column(props, tableResp, head),
|
5608
5792
|
resolveFixedColumnStyle = _useFixedColumn.resolveFixedColumnStyle;
|
5609
5793
|
var getScrollFix = function getScrollFix() {
|
@@ -5624,19 +5808,13 @@ function use_render_isSlot(s) {
|
|
5624
5808
|
"default": function _default() {
|
5625
5809
|
return [(0,external_vue_namespaceObject.createVNode)("tr", null, [filterColGroups.value.map(function (column, index) {
|
5626
5810
|
var _props$thead$color, _props$thead;
|
5811
|
+
var _useHeadCell = use_head_cell(props, context, column, tableResp),
|
5812
|
+
getTH = _useHeadCell.getTH;
|
5627
5813
|
var headStyle = Object.assign({}, resolveFixedColumnStyle(column, styleRef.value.hasScrollY), {
|
5628
5814
|
'--background-color': DEF_COLOR[(_props$thead$color = (_props$thead = props.thead) === null || _props$thead === void 0 ? void 0 : _props$thead.color) !== null && _props$thead$color !== void 0 ? _props$thead$color : IHeadColor.DEF1]
|
5629
5815
|
});
|
5630
|
-
|
5631
|
-
|
5632
|
-
"rowspan": 1,
|
5633
|
-
"data-id": tableResp.getColumnId(column),
|
5634
|
-
"class": [getHeadColumnClass(column, index), getColumnCustomClass(column), column.align || props.headerAlign || props.align],
|
5635
|
-
"style": headStyle,
|
5636
|
-
"onClick": function onClick() {
|
5637
|
-
return handleColumnHeadClick(index, column);
|
5638
|
-
}
|
5639
|
-
}, resolveEventListener(column)), [renderHeadCell(column, index)]);
|
5816
|
+
var classList = [getHeadColumnClass(column, index), getColumnCustomClass(column), column.align || props.headerAlign || props.align];
|
5817
|
+
return getTH(classList, headStyle, index);
|
5640
5818
|
}), getScrollFix()])];
|
5641
5819
|
}
|
5642
5820
|
})])]);
|
@@ -6150,13 +6328,19 @@ function table_objectSpread(target) { for (var i = 1; i < arguments.length; i++)
|
|
6150
6328
|
tableOffsetRight.value = $tableScrollWidth - $contentWidth;
|
6151
6329
|
}
|
6152
6330
|
};
|
6331
|
+
var isFirstLoad = (0,external_vue_namespaceObject.ref)(true);
|
6153
6332
|
(0,external_vue_namespaceObject.watch)(function () {
|
6154
6333
|
return [props.data, columns];
|
6155
6334
|
}, function () {
|
6156
6335
|
tableSchema.formatColumns(columns);
|
6157
6336
|
tableSchema.formatDataSchema(props.data);
|
6158
6337
|
tableSchema.resetStartEndIndex();
|
6159
|
-
|
6338
|
+
if (isFirstLoad.value) {
|
6339
|
+
tableSchema.resolveByDefColumns();
|
6340
|
+
isFirstLoad.value = false;
|
6341
|
+
} else {
|
6342
|
+
tableSchema.resolvePageData();
|
6343
|
+
}
|
6160
6344
|
registerResizeEvent();
|
6161
6345
|
(0,external_vue_namespaceObject.nextTick)(function () {
|
6162
6346
|
updateOffsetRight();
|