@vipl520/dk-ui 1.0.38 → 1.0.40
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.js +65 -15
- package/dist/index.min.js +8 -8
- package/dist/index.min.js.map +1 -1
- package/dist/index.min.mjs +8 -8
- package/dist/index.min.mjs.map +1 -1
- package/dist/index.mjs +65 -15
- package/dist/web-types.json +1 -1
- package/es/table/index.d.ts +15 -0
- package/es/table/src/components/ComSearch.vue2.mjs +0 -2
- package/es/table/src/components/ComSearch.vue2.mjs.map +1 -1
- package/es/table/src/components/header.vue.d.ts +6 -0
- package/es/table/src/components/header.vue2.mjs +6 -0
- package/es/table/src/components/header.vue2.mjs.map +1 -1
- package/es/table/src/props.d.ts +4 -0
- package/es/table/src/props.mjs +6 -0
- package/es/table/src/props.mjs.map +1 -1
- package/es/table/src/table.vue.d.ts +9 -0
- package/es/table/src/table.vue2.mjs +4 -1
- package/es/table/src/table.vue2.mjs.map +1 -1
- package/es/table/utils/dkTable.mjs +17 -1
- package/es/table/utils/dkTable.mjs.map +1 -1
- package/es/table/utils/dkTableApi.d.ts +6 -0
- package/es/table/utils/dkTableApi.mjs +32 -11
- package/es/table/utils/dkTableApi.mjs.map +1 -1
- package/lib/table/index.d.ts +15 -0
- package/lib/table/src/components/ComSearch.vue2.js +0 -2
- package/lib/table/src/components/ComSearch.vue2.js.map +1 -1
- package/lib/table/src/components/header.vue.d.ts +6 -0
- package/lib/table/src/components/header.vue2.js +6 -0
- package/lib/table/src/components/header.vue2.js.map +1 -1
- package/lib/table/src/props.d.ts +4 -0
- package/lib/table/src/props.js +6 -0
- package/lib/table/src/props.js.map +1 -1
- package/lib/table/src/table.vue.d.ts +9 -0
- package/lib/table/src/table.vue2.js +4 -1
- package/lib/table/src/table.vue2.js.map +1 -1
- package/lib/table/utils/dkTable.js +17 -1
- package/lib/table/utils/dkTable.js.map +1 -1
- package/lib/table/utils/dkTableApi.d.ts +6 -0
- package/lib/table/utils/dkTableApi.js +32 -11
- package/lib/table/utils/dkTableApi.js.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
@@ -25038,6 +25038,12 @@ const tableProps = {
|
|
25038
25038
|
return ["refresh", "add", "export_csv", "edit", "delete", "comSearch", "quickSearch", "columnDisplay", "recycle"];
|
25039
25039
|
},
|
25040
25040
|
type: Array
|
25041
|
+
},
|
25042
|
+
hideButtons: {
|
25043
|
+
default: () => {
|
25044
|
+
return [];
|
25045
|
+
},
|
25046
|
+
type: Array
|
25041
25047
|
}
|
25042
25048
|
};
|
25043
25049
|
|
@@ -28064,6 +28070,8 @@ Sortable.mount(Remove, Revert);
|
|
28064
28070
|
class dkTableApi {
|
28065
28071
|
controllerUrl;
|
28066
28072
|
actionUrl;
|
28073
|
+
requestConfig = {};
|
28074
|
+
// 新增:用于存储配置的request参数
|
28067
28075
|
constructor(controllerUrl) {
|
28068
28076
|
if (!controllerUrl.endsWith("/")) {
|
28069
28077
|
controllerUrl += "/";
|
@@ -28089,6 +28097,13 @@ class dkTableApi {
|
|
28089
28097
|
// 回收站还原
|
28090
28098
|
]);
|
28091
28099
|
}
|
28100
|
+
/**
|
28101
|
+
* 配置request参数
|
28102
|
+
* @param config 包含HTTP方法、请求头等额外参数的对象
|
28103
|
+
*/
|
28104
|
+
configureRequest(config) {
|
28105
|
+
this.requestConfig = { ...config };
|
28106
|
+
}
|
28092
28107
|
/**
|
28093
28108
|
* 获取表格配置
|
28094
28109
|
*/
|
@@ -28096,7 +28111,9 @@ class dkTableApi {
|
|
28096
28111
|
return request(
|
28097
28112
|
{
|
28098
28113
|
url: this.actionUrl.get("table"),
|
28099
|
-
method: "post"
|
28114
|
+
method: "post",
|
28115
|
+
...this.requestConfig
|
28116
|
+
// 将requestConfig的内容展开到request的参数中
|
28100
28117
|
},
|
28101
28118
|
{
|
28102
28119
|
code_error_show: true
|
@@ -28110,7 +28127,8 @@ class dkTableApi {
|
|
28110
28127
|
return request(
|
28111
28128
|
{
|
28112
28129
|
url: this.actionUrl.get("recycleTable"),
|
28113
|
-
method: "post"
|
28130
|
+
method: "post",
|
28131
|
+
...this.requestConfig
|
28114
28132
|
},
|
28115
28133
|
{
|
28116
28134
|
code_error_show: true
|
@@ -28125,7 +28143,8 @@ class dkTableApi {
|
|
28125
28143
|
{
|
28126
28144
|
url: this.actionUrl.get("form"),
|
28127
28145
|
method: "post",
|
28128
|
-
data: { id }
|
28146
|
+
data: { id },
|
28147
|
+
...this.requestConfig
|
28129
28148
|
},
|
28130
28149
|
{
|
28131
28150
|
code_error_show: true
|
@@ -28141,7 +28160,8 @@ class dkTableApi {
|
|
28141
28160
|
{
|
28142
28161
|
url: this.actionUrl.get("index"),
|
28143
28162
|
method: "get",
|
28144
|
-
params: filter
|
28163
|
+
params: filter,
|
28164
|
+
...this.requestConfig
|
28145
28165
|
},
|
28146
28166
|
{
|
28147
28167
|
code_error_show: true
|
@@ -28157,7 +28177,8 @@ class dkTableApi {
|
|
28157
28177
|
{
|
28158
28178
|
url: this.actionUrl.get("recycle"),
|
28159
28179
|
method: "get",
|
28160
|
-
params: filter
|
28180
|
+
params: filter,
|
28181
|
+
...this.requestConfig
|
28161
28182
|
},
|
28162
28183
|
{
|
28163
28184
|
code_error_show: true
|
@@ -28173,7 +28194,8 @@ class dkTableApi {
|
|
28173
28194
|
{
|
28174
28195
|
url: this.actionUrl.get("edit"),
|
28175
28196
|
method: "get",
|
28176
|
-
params
|
28197
|
+
params,
|
28198
|
+
...this.requestConfig
|
28177
28199
|
},
|
28178
28200
|
{
|
28179
28201
|
code_error_show: true
|
@@ -28191,7 +28213,8 @@ class dkTableApi {
|
|
28191
28213
|
method: "DELETE",
|
28192
28214
|
params: {
|
28193
28215
|
ids
|
28194
|
-
}
|
28216
|
+
},
|
28217
|
+
...this.requestConfig
|
28195
28218
|
},
|
28196
28219
|
{
|
28197
28220
|
code_success_show: true,
|
@@ -28210,7 +28233,8 @@ class dkTableApi {
|
|
28210
28233
|
method: "POST",
|
28211
28234
|
data: {
|
28212
28235
|
ids
|
28213
|
-
}
|
28236
|
+
},
|
28237
|
+
...this.requestConfig
|
28214
28238
|
},
|
28215
28239
|
{
|
28216
28240
|
code_success_show: true,
|
@@ -28229,7 +28253,8 @@ class dkTableApi {
|
|
28229
28253
|
method: "POST",
|
28230
28254
|
data: {
|
28231
28255
|
ids
|
28232
|
-
}
|
28256
|
+
},
|
28257
|
+
...this.requestConfig
|
28233
28258
|
},
|
28234
28259
|
{
|
28235
28260
|
code_success_show: true,
|
@@ -28247,7 +28272,8 @@ class dkTableApi {
|
|
28247
28272
|
{
|
28248
28273
|
url: this.actionUrl.has(action) ? this.actionUrl.get(action) : this.controllerUrl + action,
|
28249
28274
|
method: "post",
|
28250
|
-
data
|
28275
|
+
data,
|
28276
|
+
...this.requestConfig
|
28251
28277
|
},
|
28252
28278
|
{
|
28253
28279
|
code_success_show: true,
|
@@ -28268,7 +28294,8 @@ class dkTableApi {
|
|
28268
28294
|
data: {
|
28269
28295
|
id,
|
28270
28296
|
targetId
|
28271
|
-
}
|
28297
|
+
},
|
28298
|
+
...this.requestConfig
|
28272
28299
|
},
|
28273
28300
|
{
|
28274
28301
|
code_error_show: true
|
@@ -28374,6 +28401,8 @@ class dkTable {
|
|
28374
28401
|
return true;
|
28375
28402
|
}
|
28376
28403
|
getIndex = () => {
|
28404
|
+
if (!this.runBefore("api", { name: "getIndex" }))
|
28405
|
+
return;
|
28377
28406
|
if (!this.runBefore("getIndex"))
|
28378
28407
|
return;
|
28379
28408
|
this.table.loading = true;
|
@@ -28387,6 +28416,8 @@ class dkTable {
|
|
28387
28416
|
});
|
28388
28417
|
};
|
28389
28418
|
getTable = (cache = false) => {
|
28419
|
+
if (!this.runBefore("api", { name: "getTable" }))
|
28420
|
+
return;
|
28390
28421
|
if (!this.runBefore("getTable"))
|
28391
28422
|
return;
|
28392
28423
|
this.table.columnLoading = true;
|
@@ -28416,6 +28447,8 @@ class dkTable {
|
|
28416
28447
|
* 显示回收站
|
28417
28448
|
*/
|
28418
28449
|
async showRecycle() {
|
28450
|
+
if (!this.runBefore("api", { name: "getRecycleTable" }))
|
28451
|
+
return;
|
28419
28452
|
if (!this.runBefore("getRecycleTable"))
|
28420
28453
|
return;
|
28421
28454
|
this.recycleTable.showDialogLoading = true;
|
@@ -28430,6 +28463,8 @@ class dkTable {
|
|
28430
28463
|
* 获取回收站列表
|
28431
28464
|
*/
|
28432
28465
|
getRecycleIndex = () => {
|
28466
|
+
if (!this.runBefore("api", { name: "getRecycleIndex" }))
|
28467
|
+
return;
|
28433
28468
|
if (!this.runBefore("getRecycleIndex"))
|
28434
28469
|
return;
|
28435
28470
|
this.recycleTable.loading = true;
|
@@ -28445,7 +28480,9 @@ class dkTable {
|
|
28445
28480
|
* @param cache
|
28446
28481
|
*/
|
28447
28482
|
getRecycleTable = (cache = false) => {
|
28448
|
-
if (!this.runBefore("
|
28483
|
+
if (!this.runBefore("api", { name: "getRecycleTable" }))
|
28484
|
+
return;
|
28485
|
+
if (!this.runBefore("getRecycleTable"))
|
28449
28486
|
return;
|
28450
28487
|
this.recycleTable.columnLoading = true;
|
28451
28488
|
if (cache) {
|
@@ -28554,6 +28591,8 @@ class dkTable {
|
|
28554
28591
|
if (!data.row || !data.field.prop)
|
28555
28592
|
return;
|
28556
28593
|
if (Object.keys(data.row).length === 0) ;
|
28594
|
+
if (!this.runBefore("api", { name: "fieldChange" }))
|
28595
|
+
return;
|
28557
28596
|
data.row.loading = true;
|
28558
28597
|
this.api.postData("edit", {
|
28559
28598
|
[this.table.pk]: data.row[this.table.pk],
|
@@ -28590,6 +28629,8 @@ class dkTable {
|
|
28590
28629
|
};
|
28591
28630
|
// 删除
|
28592
28631
|
postDel = (ids) => {
|
28632
|
+
if (!this.runBefore("api", { name: "postDel" }))
|
28633
|
+
return;
|
28593
28634
|
if (!this.runBefore("postDel", { ids }))
|
28594
28635
|
return;
|
28595
28636
|
this.api.del(ids).then((res) => {
|
@@ -28662,6 +28703,8 @@ class dkTable {
|
|
28662
28703
|
} else {
|
28663
28704
|
this.form.edit_id = 0;
|
28664
28705
|
}
|
28706
|
+
if (!this.runBefore("api", { name: "toggleForm" }))
|
28707
|
+
return;
|
28665
28708
|
this.api.form(this.form.edit_id).then((res) => {
|
28666
28709
|
this.form.ref.setFormData(res.data);
|
28667
28710
|
this.form.ref.show();
|
@@ -29813,7 +29856,6 @@ var _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
29813
29856
|
} else if (fieldDataTemp.render == "time" && (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE")) {
|
29814
29857
|
if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {
|
29815
29858
|
val = DkTable.comSearch.form[key][0] + "," + DkTable.comSearch.form[key][1];
|
29816
|
-
console.log("val", val, DkTable.comSearch.form[key]);
|
29817
29859
|
}
|
29818
29860
|
} else if (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE") {
|
29819
29861
|
if (!DkTable.comSearch.form[key + "-start"] && !DkTable.comSearch.form[key + "-end"]) {
|
@@ -29832,7 +29874,6 @@ var _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
29832
29874
|
});
|
29833
29875
|
}
|
29834
29876
|
}
|
29835
|
-
console.log("comSearchData", comSearchData);
|
29836
29877
|
DkTable.onTableAction("com-search", comSearchData);
|
29837
29878
|
};
|
29838
29879
|
const onResetForm = () => {
|
@@ -30432,6 +30473,7 @@ var _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
30432
30473
|
_: 1
|
30433
30474
|
/* STABLE */
|
30434
30475
|
})) : createCommentVNode("v-if", true),
|
30476
|
+
renderSlot(_ctx.$slots, "AddButtonAppend"),
|
30435
30477
|
props.buttons.includes("export_csv") && unref(DkTable).auth("export_csv") ? (openBlock(), createBlock(_component_el_tooltip, {
|
30436
30478
|
key: 2,
|
30437
30479
|
content: "\u5BFC\u51FA\u9009\u4E2D\u884C",
|
@@ -30457,6 +30499,7 @@ var _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
30457
30499
|
_: 1
|
30458
30500
|
/* STABLE */
|
30459
30501
|
})) : createCommentVNode("v-if", true),
|
30502
|
+
renderSlot(_ctx.$slots, "ExportButtonAppend"),
|
30460
30503
|
props.buttons.includes("edit") && unref(DkTable).auth("edit") ? (openBlock(), createBlock(_component_el_tooltip, {
|
30461
30504
|
key: 3,
|
30462
30505
|
content: "\u7F16\u8F91\u9009\u4E2D\u884C",
|
@@ -30482,6 +30525,7 @@ var _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
30482
30525
|
_: 1
|
30483
30526
|
/* STABLE */
|
30484
30527
|
})) : createCommentVNode("v-if", true),
|
30528
|
+
renderSlot(_ctx.$slots, "EditButtonAppend"),
|
30485
30529
|
props.buttons.includes("delete") && unref(DkTable).auth("del") ? (openBlock(), createBlock(_component_el_popconfirm, {
|
30486
30530
|
key: 4,
|
30487
30531
|
"confirm-button-text": "\u5220\u9664",
|
@@ -30522,6 +30566,7 @@ var _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
30522
30566
|
_: 1
|
30523
30567
|
/* STABLE */
|
30524
30568
|
}, 8, ["disabled"])) : createCommentVNode("v-if", true),
|
30569
|
+
renderSlot(_ctx.$slots, "DeleteButtonAppend"),
|
30525
30570
|
props.buttons.includes("unfold") ? (openBlock(), createBlock(_component_el_tooltip, {
|
30526
30571
|
key: 5,
|
30527
30572
|
content: (unref(DkTable).table.expandAll ? "\u6536\u7F29" : "\u5C55\u5F00") + "\u6240\u6709\u5B50\u83DC\u5355",
|
@@ -30553,6 +30598,7 @@ var _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
30553
30598
|
_: 1
|
30554
30599
|
/* STABLE */
|
30555
30600
|
}, 8, ["content"])) : createCommentVNode("v-if", true),
|
30601
|
+
renderSlot(_ctx.$slots, "UnfoldButtonAppend"),
|
30556
30602
|
props.buttons.includes("recycle") && unref(DkTable).auth("recycle") ? (openBlock(), createBlock(_component_el_tooltip, {
|
30557
30603
|
key: 6,
|
30558
30604
|
content: "\u6253\u5F00\u56DE\u6536\u7AD9",
|
@@ -30577,6 +30623,7 @@ var _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
30577
30623
|
_: 1
|
30578
30624
|
/* STABLE */
|
30579
30625
|
})) : createCommentVNode("v-if", true),
|
30626
|
+
renderSlot(_ctx.$slots, "RecycleButtonAppend"),
|
30580
30627
|
createElementVNode("div", _hoisted_9$2, [
|
30581
30628
|
createElementVNode("div", _hoisted_10$1, [
|
30582
30629
|
createVNode(_component_el_input, {
|
@@ -31438,6 +31485,9 @@ var _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
31438
31485
|
DkTable.table.ref = TableRef.value;
|
31439
31486
|
DkTable.form.ref = FormRef.value;
|
31440
31487
|
});
|
31488
|
+
const effectiveButtons = computed(() => {
|
31489
|
+
return [...new Set(props.buttons.filter((button) => !props.hideButtons.includes(button)))];
|
31490
|
+
});
|
31441
31491
|
const onTableSizeChange = (val) => {
|
31442
31492
|
DkTable.onTableAction("page-size-change", { size: val });
|
31443
31493
|
};
|
@@ -31543,7 +31593,7 @@ var _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
31543
31593
|
createCommentVNode("\u9876\u90E8\u83DC\u5355"),
|
31544
31594
|
createVNode(DkTableHeader, {
|
31545
31595
|
size: "default",
|
31546
|
-
buttons:
|
31596
|
+
buttons: effectiveButtons.value
|
31547
31597
|
}, createSlots({
|
31548
31598
|
_: 2
|
31549
31599
|
/* DYNAMIC */
|
package/dist/web-types.json
CHANGED
package/es/table/index.d.ts
CHANGED
@@ -8,6 +8,7 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
8
8
|
tableBefore?: Record<string, any> | undefined;
|
9
9
|
tableAfter?: Record<string, any> | undefined;
|
10
10
|
buttons?: unknown[] | undefined;
|
11
|
+
hideButtons?: unknown[] | undefined;
|
11
12
|
style?: unknown;
|
12
13
|
key?: string | number | symbol | undefined;
|
13
14
|
ref?: import("vue").VNodeRef | undefined;
|
@@ -87,6 +88,10 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
87
88
|
default: () => string[];
|
88
89
|
type: ArrayConstructor;
|
89
90
|
};
|
91
|
+
hideButtons: {
|
92
|
+
default: () => never[];
|
93
|
+
type: ArrayConstructor;
|
94
|
+
};
|
90
95
|
}>>, {
|
91
96
|
DkTable: import("./utils/dkTable").default;
|
92
97
|
TableRef: import("vue").Ref<any>;
|
@@ -97,6 +102,7 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
97
102
|
tableBefore: Record<string, any>;
|
98
103
|
tableAfter: Record<string, any>;
|
99
104
|
buttons: unknown[];
|
105
|
+
hideButtons: unknown[];
|
100
106
|
}, {}, string, {}> & {
|
101
107
|
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
102
108
|
created?: ((() => void) | (() => void)[]) | undefined;
|
@@ -138,6 +144,10 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
138
144
|
default: () => string[];
|
139
145
|
type: ArrayConstructor;
|
140
146
|
};
|
147
|
+
hideButtons: {
|
148
|
+
default: () => never[];
|
149
|
+
type: ArrayConstructor;
|
150
|
+
};
|
141
151
|
}>> & import("vue").ShallowUnwrapRef<{
|
142
152
|
DkTable: import("./utils/dkTable").default;
|
143
153
|
TableRef: import("vue").Ref<any>;
|
@@ -167,6 +177,10 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
167
177
|
default: () => string[];
|
168
178
|
type: ArrayConstructor;
|
169
179
|
};
|
180
|
+
hideButtons: {
|
181
|
+
default: () => never[];
|
182
|
+
type: ArrayConstructor;
|
183
|
+
};
|
170
184
|
}>>, {
|
171
185
|
DkTable: import("./utils/dkTable").default;
|
172
186
|
TableRef: import("vue").Ref<any>;
|
@@ -177,6 +191,7 @@ export declare const Table: import("@vipl520/utils").WithInstall<{
|
|
177
191
|
tableBefore: Record<string, any>;
|
178
192
|
tableAfter: Record<string, any>;
|
179
193
|
buttons: unknown[];
|
194
|
+
hideButtons: unknown[];
|
180
195
|
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
181
196
|
$slots: Partial<Record<NonNullable<string | number>, (_: {}) => any>> & Partial<Record<string, (_: any) => any>> & {
|
182
197
|
columnPrepend?(_: {}): any;
|
@@ -91,7 +91,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
91
91
|
} else if (fieldDataTemp.render == "time" && (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE")) {
|
92
92
|
if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {
|
93
93
|
val = DkTable.comSearch.form[key][0] + "," + DkTable.comSearch.form[key][1];
|
94
|
-
console.log("val", val, DkTable.comSearch.form[key]);
|
95
94
|
}
|
96
95
|
} else if (fieldDataTemp.operator == "RANGE" || fieldDataTemp.operator == "NOT RANGE") {
|
97
96
|
if (!DkTable.comSearch.form[key + "-start"] && !DkTable.comSearch.form[key + "-end"]) {
|
@@ -110,7 +109,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
110
109
|
});
|
111
110
|
}
|
112
111
|
}
|
113
|
-
console.log("comSearchData", comSearchData);
|
114
112
|
DkTable.onTableAction("com-search", comSearchData);
|
115
113
|
};
|
116
114
|
const onResetForm = () => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ComSearch.vue2.mjs","sources":["../../../../src/table/src/components/ComSearch.vue"],"sourcesContent":["<template>\n <div ref=\"el\" class=\"table-com-search\">\n <el-form label-position=\"top\" :model=\"DkTable.comSearch.form\" @submit.prevent=\"\" @keyup.enter=\"onComSearch\">\n <el-row>\n <template v-for=\"(item, idx) in DkTable.table.column\" :key=\"idx\">\n <template v-if=\"item.operator !== false\">\n <!-- 自定义渲染 component、slot -->\n <el-col\n v-if=\"item.comSearchRender == 'customRender' || item.comSearchRender == 'slot'\"\n :span=\"spans.common\"\n >\n <!-- 外部可以使用 :deep() 选择器修改css样式 -->\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input\">\n <!-- 自定义组件/函数渲染 -->\n <component\n :is=\"item.comSearchComponent\"\n v-if=\"item.comSearchRender == 'customRender'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n v-bind=\"item.comSearchProps\"\n :placeholder=\"item.operatorPlaceholder\"\n ></component>\n\n <!-- 自定义渲染-slot -->\n <slot v-else-if=\"item.comSearchRender == 'slot'\" :name=\"item.comSearchSlotName\"></slot>\n </div>\n </div>\n </el-col>\n\n <!-- 时间范围 -->\n <el-col\n v-else-if=\"item.render == 'datetime' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-date-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : [new Date(), new Date()]\n \"\n :type=\"item.comSearchRender == 'date' ? 'daterange' : 'datetimerange'\"\n range-separator=\"到\"\n start-placeholder=\"开始日期\"\n end-placeholder=\"结束日期\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :teleported=\"false\"\n />\n </div>\n </div>\n </el-col>\n <!--时间范围-->\n <el-col\n v-else-if=\"item.render == 'time' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-time-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n is-range\n range-separator=\"到\"\n format=\"HH:mm:ss\"\n value-format=\"HH:mm:ss\"\n start-placeholder=\"开始时间\"\n end-placeholder=\"结束时间\"\n ></el-time-picker>\n </div>\n </div>\n </el-col>\n <el-col v-else :span=\"spans.common\">\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <!-- 数字范围 -->\n <div v-if=\"item.operator == 'RANGE' || item.operator == 'NOT RANGE'\" class=\"com-search-col-input-range\">\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-start']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n <div class=\"range-separator\">到</div>\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-end']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n <!-- 是否 [NOT] NULL -->\n <div v-else-if=\"item.operator == 'NULL' || item.operator == 'NOT NULL'\" class=\"com-search-col-input\">\n <el-checkbox\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :label=\"item.operator\"\n size=\"large\"\n ></el-checkbox>\n </div>\n <div v-else-if=\"item.operator\" class=\"com-search-col-input\">\n <!-- 时间筛选 -->\n <el-date-picker\n v-if=\"item.render == 'datetime' || item.comSearchRender == 'date'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :type=\"item.comSearchRender == 'date' ? 'date' : 'datetime'\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :placeholder=\"item.operatorPlaceholder\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : new Date()\n \"\n :teleported=\"false\"\n />\n <!-- 年筛选 -->\n <el-date-picker\n v-if=\"item.render == 'year'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n type=\"year\"\n value-format=\"YYYY\"\n style=\"width: 100%\"\n :placeholder=\"item.operatorPlaceholder\"\n />\n <!-- tag、tags、select -->\n <el-select\n v-else-if=\"\n (item.render == 'tag' || item.render == 'tags' || item.comSearchRender == 'select') &&\n item.replaceValue\n \"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </el-select>\n\n <!-- 远程 select -->\n <dk-select\n v-else-if=\"item.comSearchRender == 'remoteSelect'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n filterable\n :placeholder=\"item.operatorPlaceholder\"\n :remote-url=\"item.remoteUrl\"\n ></dk-select>\n\n <!-- 开关 -->\n <el-select\n v-else-if=\"item.render == 'switch'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <template v-if=\"!isEmpty(item.replaceValue)\">\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </template>\n <template v-else>\n <el-option label=\"开\" value=\"1\" />\n <el-option label=\"关\" value=\"0\" />\n </template>\n </el-select>\n\n <!-- 字符串 -->\n <el-input\n v-else\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n </div>\n </el-col>\n </template>\n </template>\n <el-col :xs=\"24\" :sm=\"6\">\n <div class=\"com-search-col pl-20\">\n <el-button v-blur type=\"primary\" @click=\"onComSearch\"> 搜索</el-button>\n <el-button @click=\"onResetForm()\">重置</el-button>\n </div>\n </el-col>\n </el-row>\n </el-form>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { inject, ref, computed } from 'vue'\nimport { isEmpty } from 'lodash-es'\nimport { useElementSize } from '@vueuse/core'\nimport DkTableClass from '../../utils/dkTable'\n\nconst DkTable = inject('DkTable') as DkTableClass\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\nconst spans = computed(() => {\n if (width.value < 768) {\n return {\n common: 24,\n datetime: 24,\n }\n }\n if (width.value < 900) {\n return {\n common: 12,\n datetime: 24,\n }\n }\n if (width.value < 1200) {\n return {\n common: 8,\n datetime: 16,\n }\n }\n return {\n common: 6,\n datetime: 12,\n }\n})\nconst onComSearch = () => {\n const comSearchData: comSearchData[] = []\n for (const key in DkTable.comSearch.form) {\n if (!DkTable.comSearch.fieldData.has(key)) {\n continue\n }\n let val = ''\n const fieldDataTemp = DkTable.comSearch.fieldData.get(key)\n if (\n fieldDataTemp.render == 'datetime' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n if (fieldDataTemp.comSearchRender == 'date') {\n val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n }\n }\n } else if (\n fieldDataTemp.render == 'time' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n // if (fieldDataTemp.comSearchRender == 'date') {\n // val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n // } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n console.log('val', val, DkTable.comSearch.form[key])\n // }\n }\n } else if (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE') {\n // 普通的范围筛选,DkTable在初始化时已准备好start和end字段\n if (!DkTable.comSearch.form[key + '-start'] && !DkTable.comSearch.form[key + '-end']) {\n continue\n }\n val = DkTable.comSearch.form[key + '-start'] + ',' + DkTable.comSearch.form[key + '-end']\n } else if (DkTable.comSearch.form[key]) {\n val = DkTable.comSearch.form[key]\n }\n\n if (val) {\n comSearchData.push({\n field: key,\n val,\n operator: fieldDataTemp.operator,\n render: fieldDataTemp.render,\n })\n }\n }\n\n console.log('comSearchData', comSearchData)\n DkTable.onTableAction('com-search', comSearchData)\n}\n\nconst onResetForm = () => {\n // 封装好的onResetForm在此处不能使用\n for (const key in DkTable.comSearch.form) {\n DkTable.comSearch.form[key] = ''\n }\n onComSearch()\n}\n</script>\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"ComSearch.vue2.mjs","sources":["../../../../src/table/src/components/ComSearch.vue"],"sourcesContent":["<template>\n <div ref=\"el\" class=\"table-com-search\">\n <el-form label-position=\"top\" :model=\"DkTable.comSearch.form\" @submit.prevent=\"\" @keyup.enter=\"onComSearch\">\n <el-row>\n <template v-for=\"(item, idx) in DkTable.table.column\" :key=\"idx\">\n <template v-if=\"item.operator !== false\">\n <!-- 自定义渲染 component、slot -->\n <el-col\n v-if=\"item.comSearchRender == 'customRender' || item.comSearchRender == 'slot'\"\n :span=\"spans.common\"\n >\n <!-- 外部可以使用 :deep() 选择器修改css样式 -->\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input\">\n <!-- 自定义组件/函数渲染 -->\n <component\n :is=\"item.comSearchComponent\"\n v-if=\"item.comSearchRender == 'customRender'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n v-bind=\"item.comSearchProps\"\n :placeholder=\"item.operatorPlaceholder\"\n ></component>\n\n <!-- 自定义渲染-slot -->\n <slot v-else-if=\"item.comSearchRender == 'slot'\" :name=\"item.comSearchSlotName\"></slot>\n </div>\n </div>\n </el-col>\n\n <!-- 时间范围 -->\n <el-col\n v-else-if=\"item.render == 'datetime' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-date-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : [new Date(), new Date()]\n \"\n :type=\"item.comSearchRender == 'date' ? 'daterange' : 'datetimerange'\"\n range-separator=\"到\"\n start-placeholder=\"开始日期\"\n end-placeholder=\"结束日期\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :teleported=\"false\"\n />\n </div>\n </div>\n </el-col>\n <!--时间范围-->\n <el-col\n v-else-if=\"item.render == 'time' && (item.operator == 'RANGE' || item.operator == 'NOT RANGE')\"\n :span=\"spans.datetime\"\n >\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <div class=\"com-search-col-input-range\">\n <el-time-picker\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n is-range\n range-separator=\"到\"\n format=\"HH:mm:ss\"\n value-format=\"HH:mm:ss\"\n start-placeholder=\"开始时间\"\n end-placeholder=\"结束时间\"\n ></el-time-picker>\n </div>\n </div>\n </el-col>\n <el-col v-else :span=\"spans.common\">\n <div class=\"com-search-col\">\n <div v-if=\"item.comSearchShowLabel !== false\" class=\"com-search-col-label\">\n {{ item.label }}\n </div>\n <!-- 数字范围 -->\n <div v-if=\"item.operator == 'RANGE' || item.operator == 'NOT RANGE'\" class=\"com-search-col-input-range\">\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-start']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n <div class=\"range-separator\">到</div>\n <el-input\n v-model=\"DkTable.comSearch.form[item.prop! + '-end']\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n <!-- 是否 [NOT] NULL -->\n <div v-else-if=\"item.operator == 'NULL' || item.operator == 'NOT NULL'\" class=\"com-search-col-input\">\n <el-checkbox\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :label=\"item.operator\"\n size=\"large\"\n ></el-checkbox>\n </div>\n <div v-else-if=\"item.operator\" class=\"com-search-col-input\">\n <!-- 时间筛选 -->\n <el-date-picker\n v-if=\"item.render == 'datetime' || item.comSearchRender == 'date'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n :type=\"item.comSearchRender == 'date' ? 'date' : 'datetime'\"\n :value-format=\"item.comSearchRender == 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DD HH:mm:ss'\"\n :placeholder=\"item.operatorPlaceholder\"\n :default-value=\"\n DkTable.comSearch.form[item.prop! + '-default']\n ? DkTable.comSearch.form[item.prop! + '-default']\n : new Date()\n \"\n :teleported=\"false\"\n />\n <!-- 年筛选 -->\n <el-date-picker\n v-if=\"item.render == 'year'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n class=\"datetime-picker\"\n type=\"year\"\n value-format=\"YYYY\"\n style=\"width: 100%\"\n :placeholder=\"item.operatorPlaceholder\"\n />\n <!-- tag、tags、select -->\n <el-select\n v-else-if=\"\n (item.render == 'tag' || item.render == 'tags' || item.comSearchRender == 'select') &&\n item.replaceValue\n \"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </el-select>\n\n <!-- 远程 select -->\n <dk-select\n v-else-if=\"item.comSearchRender == 'remoteSelect'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n filterable\n :placeholder=\"item.operatorPlaceholder\"\n :remote-url=\"item.remoteUrl\"\n ></dk-select>\n\n <!-- 开关 -->\n <el-select\n v-else-if=\"item.render == 'switch'\"\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n :clearable=\"true\"\n >\n <template v-if=\"!isEmpty(item.replaceValue)\">\n <el-option\n v-for=\"(opt, okey) in item.replaceValue\"\n :key=\"item.prop! + okey\"\n :label=\"opt\"\n :value=\"okey\"\n />\n </template>\n <template v-else>\n <el-option label=\"开\" value=\"1\" />\n <el-option label=\"关\" value=\"0\" />\n </template>\n </el-select>\n\n <!-- 字符串 -->\n <el-input\n v-else\n v-model=\"DkTable.comSearch.form[item.prop!]\"\n :placeholder=\"item.operatorPlaceholder\"\n type=\"string\"\n :clearable=\"true\"\n ></el-input>\n </div>\n </div>\n </el-col>\n </template>\n </template>\n <el-col :xs=\"24\" :sm=\"6\">\n <div class=\"com-search-col pl-20\">\n <el-button v-blur type=\"primary\" @click=\"onComSearch\"> 搜索</el-button>\n <el-button @click=\"onResetForm()\">重置</el-button>\n </div>\n </el-col>\n </el-row>\n </el-form>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { inject, ref, computed } from 'vue'\nimport { isEmpty } from 'lodash-es'\nimport { useElementSize } from '@vueuse/core'\nimport DkTableClass from '../../utils/dkTable'\n\nconst DkTable = inject('DkTable') as DkTableClass\nconst el: any = ref(null)\nconst { width } = useElementSize(el) // 当前组件宽度\nconst spans = computed(() => {\n if (width.value < 768) {\n return {\n common: 24,\n datetime: 24,\n }\n }\n if (width.value < 900) {\n return {\n common: 12,\n datetime: 24,\n }\n }\n if (width.value < 1200) {\n return {\n common: 8,\n datetime: 16,\n }\n }\n return {\n common: 6,\n datetime: 12,\n }\n})\nconst onComSearch = () => {\n const comSearchData: comSearchData[] = []\n for (const key in DkTable.comSearch.form) {\n if (!DkTable.comSearch.fieldData.has(key)) {\n continue\n }\n let val = ''\n const fieldDataTemp = DkTable.comSearch.fieldData.get(key)\n if (\n fieldDataTemp.render == 'datetime' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n if (fieldDataTemp.comSearchRender == 'date') {\n val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n }\n }\n } else if (\n fieldDataTemp.render == 'time' &&\n (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE')\n ) {\n // 时间范围组件返回的是时间数组\n if (DkTable.comSearch.form[key] && DkTable.comSearch.form[key].length >= 2) {\n // 数组转字符串,以实现通过url参数传递预设搜索值\n // if (fieldDataTemp.comSearchRender == 'date') {\n // val = DkTable.comSearch.form[key][0] + ' 00:00:00' + ',' + DkTable.comSearch.form[key][1] + ' 23:59:59'\n // } else {\n val = DkTable.comSearch.form[key][0] + ',' + DkTable.comSearch.form[key][1]\n // console.log('val', val, DkTable.comSearch.form[key])\n // }\n }\n } else if (fieldDataTemp.operator == 'RANGE' || fieldDataTemp.operator == 'NOT RANGE') {\n // 普通的范围筛选,DkTable在初始化时已准备好start和end字段\n if (!DkTable.comSearch.form[key + '-start'] && !DkTable.comSearch.form[key + '-end']) {\n continue\n }\n val = DkTable.comSearch.form[key + '-start'] + ',' + DkTable.comSearch.form[key + '-end']\n } else if (DkTable.comSearch.form[key]) {\n val = DkTable.comSearch.form[key]\n }\n\n if (val) {\n comSearchData.push({\n field: key,\n val,\n operator: fieldDataTemp.operator,\n render: fieldDataTemp.render,\n })\n }\n }\n\n // console.log('comSearchData', comSearchData)\n DkTable.onTableAction('com-search', comSearchData)\n}\n\nconst onResetForm = () => {\n // 封装好的onResetForm在此处不能使用\n for (const key in DkTable.comSearch.form) {\n DkTable.comSearch.form[key] = ''\n }\n onComSearch()\n}\n</script>\n"],"names":[],"mappings":"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"}
|
@@ -31,6 +31,12 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
31
31
|
}, {}>, Partial<Record<NonNullable<string | number>, (_: {}) => any>> & {
|
32
32
|
refreshPrepend?(_: {}): any;
|
33
33
|
refreshAppend?(_: {}): any;
|
34
|
+
AddButtonAppend?(_: {}): any;
|
35
|
+
ExportButtonAppend?(_: {}): any;
|
36
|
+
EditButtonAppend?(_: {}): any;
|
37
|
+
DeleteButtonAppend?(_: {}): any;
|
38
|
+
UnfoldButtonAppend?(_: {}): any;
|
39
|
+
RecycleButtonAppend?(_: {}): any;
|
34
40
|
}>;
|
35
41
|
export default _default;
|
36
42
|
type __VLS_WithTemplateSlots<T, S> = T & {
|
@@ -189,6 +189,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
189
189
|
_: 1
|
190
190
|
/* STABLE */
|
191
191
|
})) : createCommentVNode("v-if", true),
|
192
|
+
renderSlot(_ctx.$slots, "AddButtonAppend"),
|
192
193
|
props.buttons.includes("export_csv") && unref(DkTable).auth("export_csv") ? (openBlock(), createBlock(_component_el_tooltip, {
|
193
194
|
key: 2,
|
194
195
|
content: "\u5BFC\u51FA\u9009\u4E2D\u884C",
|
@@ -214,6 +215,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
214
215
|
_: 1
|
215
216
|
/* STABLE */
|
216
217
|
})) : createCommentVNode("v-if", true),
|
218
|
+
renderSlot(_ctx.$slots, "ExportButtonAppend"),
|
217
219
|
props.buttons.includes("edit") && unref(DkTable).auth("edit") ? (openBlock(), createBlock(_component_el_tooltip, {
|
218
220
|
key: 3,
|
219
221
|
content: "\u7F16\u8F91\u9009\u4E2D\u884C",
|
@@ -239,6 +241,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
239
241
|
_: 1
|
240
242
|
/* STABLE */
|
241
243
|
})) : createCommentVNode("v-if", true),
|
244
|
+
renderSlot(_ctx.$slots, "EditButtonAppend"),
|
242
245
|
props.buttons.includes("delete") && unref(DkTable).auth("del") ? (openBlock(), createBlock(_component_el_popconfirm, {
|
243
246
|
key: 4,
|
244
247
|
"confirm-button-text": "\u5220\u9664",
|
@@ -279,6 +282,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
279
282
|
_: 1
|
280
283
|
/* STABLE */
|
281
284
|
}, 8, ["disabled"])) : createCommentVNode("v-if", true),
|
285
|
+
renderSlot(_ctx.$slots, "DeleteButtonAppend"),
|
282
286
|
props.buttons.includes("unfold") ? (openBlock(), createBlock(_component_el_tooltip, {
|
283
287
|
key: 5,
|
284
288
|
content: (unref(DkTable).table.expandAll ? "\u6536\u7F29" : "\u5C55\u5F00") + "\u6240\u6709\u5B50\u83DC\u5355",
|
@@ -310,6 +314,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
310
314
|
_: 1
|
311
315
|
/* STABLE */
|
312
316
|
}, 8, ["content"])) : createCommentVNode("v-if", true),
|
317
|
+
renderSlot(_ctx.$slots, "UnfoldButtonAppend"),
|
313
318
|
props.buttons.includes("recycle") && unref(DkTable).auth("recycle") ? (openBlock(), createBlock(_component_el_tooltip, {
|
314
319
|
key: 6,
|
315
320
|
content: "\u6253\u5F00\u56DE\u6536\u7AD9",
|
@@ -334,6 +339,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
334
339
|
_: 1
|
335
340
|
/* STABLE */
|
336
341
|
})) : createCommentVNode("v-if", true),
|
342
|
+
renderSlot(_ctx.$slots, "RecycleButtonAppend"),
|
337
343
|
createElementVNode("div", _hoisted_9, [
|
338
344
|
createElementVNode("div", _hoisted_10, [
|
339
345
|
createVNode(_component_el_input, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"header.vue2.mjs","sources":["../../../../src/table/src/components/header.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkTableHeader',\n});\n</script>\n<template>\n <el-collapse-transition>\n <ComSearch v-show=\"props.buttons.includes('comSearch') && DkTable.table.showComSearch\">\n <template v-for=\"(slot, idx) in $slots\" :key=\"idx\" #[idx]>\n <slot :name=\"idx\"></slot>\n </template>\n </ComSearch>\n </el-collapse-transition>\n <div class=\"dk-table-header\">\n <slot name=\"refreshPrepend\"></slot>\n <el-tooltip v-if=\"props.buttons.includes('refresh')\" content=\"刷新\" placement=\"top\">\n <el-button v-blur class=\"table-header-operate\" type=\"info\" @click=\"onAction('refresh', { loading: true })\">\n <dk-icon icon=\"Refresh\"></dk-icon>\n </el-button>\n </el-tooltip>\n <slot name=\"refreshAppend\"></slot>\n <el-tooltip v-if=\"props.buttons.includes('add') && DkTable.auth('add')\" content=\"新增\" placement=\"top\">\n <el-button v-blur class=\"table-header-operate\" type=\"primary\" @click=\"onAction('add')\">\n <dk-icon icon=\"typcn:plus\"></dk-icon>\n <span class=\"m-l-5px\">新增</span>\n </el-button>\n </el-tooltip>\n <el-tooltip\n v-if=\"props.buttons.includes('export_csv') && DkTable.auth('export_csv')\"\n content=\"导出选中行\"\n placement=\"top\"\n >\n <el-button\n v-blur\n :disabled=\"!enableBatchOpt\"\n class=\"table-header-operate\"\n type=\"primary\"\n @click=\"onAction('export_csv')\"\n >\n <dk-icon icon=\"typcn:download\"></dk-icon>\n <span class=\"m-l-5px\">导出</span>\n </el-button>\n </el-tooltip>\n <el-tooltip v-if=\"props.buttons.includes('edit') && DkTable.auth('edit')\" content=\"编辑选中行\" placement=\"top\">\n <el-button\n v-blur\n :disabled=\"!enableBatchOpt\"\n class=\"table-header-operate\"\n type=\"primary\"\n @click=\"onAction('edit')\"\n >\n <dk-icon icon=\"typcn:edit\"></dk-icon>\n <span class=\"m-l-5px\">编辑</span>\n </el-button>\n </el-tooltip>\n <el-popconfirm\n v-if=\"props.buttons.includes('delete') && DkTable.auth('del')\"\n confirm-button-text=\"删除\"\n cancel-button-text=\"取消\"\n confirm-button-type=\"danger\"\n title=\"您确定要删除所选记录吗?\"\n :disabled=\"!enableBatchOpt\"\n @confirm=\"onAction('delete')\"\n >\n <template #reference>\n <div class=\"m-l-5px\">\n <el-tooltip content=\"删除所选行\" placement=\"top\">\n <el-button v-blur :disabled=\"!enableBatchOpt\" class=\"table-header-operate\" type=\"danger\">\n <!-- <Icon name=\"fa fa-trash\" />-->\n <dk-icon icon=\"typcn:trash\"></dk-icon>\n <span class=\"m-l-5px\">删除</span>\n </el-button>\n </el-tooltip>\n </div>\n </template>\n </el-popconfirm>\n <el-tooltip\n v-if=\"props.buttons.includes('unfold')\"\n :content=\"(DkTable.table.expandAll ? '收缩' : '展开') + '所有子菜单'\"\n placement=\"top\"\n >\n <el-button\n v-blur\n class=\"table-header-operate\"\n :type=\"DkTable.table.expandAll ? 'danger' : 'warning'\"\n @click=\"\n DkTable.onTableHeaderAction('unfold', {\n unfold: !DkTable.table.expandAll,\n })\n \"\n >\n <span class=\"table-header-operate-text\">\n {{ DkTable.table.expandAll ? '收缩所有' : '展开所有' }}\n </span>\n </el-button>\n </el-tooltip>\n <el-tooltip\n v-if=\"props.buttons.includes('recycle') && DkTable.auth('recycle')\"\n content=\"打开回收站\"\n placement=\"top\"\n >\n <el-button\n v-blur\n class=\"table-header-operate m-l-5px\"\n type=\"warning\"\n :loading=\"DkTable.recycleTable.showDialogLoading\"\n @click=\"onAction('recycle')\"\n >\n <span class=\"table-header-operate-text\"> 回收站 </span>\n </el-button>\n </el-tooltip>\n <div class=\"table-search\">\n <div class=\"mr-1\">\n <el-input\n v-model=\"DkTable.table.filter!.quickSearch\"\n placeholder=\"请输入\"\n prefix-icon=\"Search\"\n :size=\"size\"\n @input=\"debounce(onSearchInput, 500)()\"\n />\n </div>\n <div class=\"table-search-button-group\">\n <el-dropdown v-if=\"props.buttons.includes('columnDisplay')\" :max-height=\"380\" :hide-on-click=\"false\">\n <el-button\n v-blur\n :size=\"size\"\n class=\"table-search-button-item\"\n :class=\"props.buttons.includes('comSearch') ? 'right-border' : ''\"\n >\n <dk-icon icon=\"Grid\"></dk-icon>\n </el-button>\n <template #dropdown>\n <el-dropdown-menu>\n <el-dropdown-item v-for=\"(item, idx) in columnDisplay\" :key=\"idx\">\n <el-checkbox\n v-if=\"item.prop\"\n :checked=\"!item.show\"\n :model-value=\"item.show\"\n :size=\"size\"\n :label=\"item.label\"\n @change=\"onChangeShowColumn($event, item.prop!)\"\n />\n </el-dropdown-item>\n </el-dropdown-menu>\n </template>\n </el-dropdown>\n <div>\n <el-tooltip\n v-if=\"props.buttons.includes('comSearch')\"\n :disabled=\"DkTable.table.showComSearch\"\n content=\"展开常规搜索\"\n placement=\"top\"\n >\n <el-button\n v-blur\n :size=\"size\"\n class=\"table-search-button-item\"\n @click=\"DkTable.table.showComSearch = !DkTable.table.showComSearch\"\n >\n <dk-icon icon=\"Search\"></dk-icon>\n </el-button>\n </el-tooltip>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { inject, computed } from 'vue'\nimport dkTable from '../../utils/dkTable'\nimport ComSearch from './ComSearch.vue'\nimport { debounce, storage } from '@vipl520/utils'\n\n\n\nconst DkTable = inject('DkTable') as dkTable\n\nconst props = defineProps({\n size: {\n default: 'small',\n type: String,\n },\n buttons: {\n default: () => {\n return ['refresh', 'add', 'export_csv', 'edit', 'delete', 'comSearch', 'quickSearch', 'columnDisplay']\n },\n type: Array,\n },\n quickSearchPlaceholder: {\n default: '快捷搜索',\n type: String,\n },\n})\n\nconst columnDisplay = computed(() => {\n const columnDisplayArr = []\n let cachedTableData: any = {}\n if (DkTable.url) {\n cachedTableData = JSON.parse(storage.get(DkTable.url + 'show_column') || '{}')\n }\n for (const item of DkTable.table.column) {\n if (cachedTableData[item.prop] !== undefined) {\n item.show = cachedTableData[item.prop]\n }\n // eslint-disable-next-line no-unused-expressions\n item.type === 'selection' || item.render === 'buttons' || item.enableColumnDisplayControl === false\n ? ''\n : columnDisplayArr.push(item)\n }\n return columnDisplayArr\n})\n\nconst enableBatchOpt = computed(() => DkTable.table.selection!.length > 0)\n\nconst onAction = (event: string, data: anyObj = {}) => {\n DkTable.onTableHeaderAction(event, data)\n}\n\nconst onSearchInput = () => {\n DkTable.onTableHeaderAction('quick-search', {\n keyword: DkTable.table.filter!.quickSearch,\n })\n}\n\nconst onChangeShowColumn = (value: string | number | boolean, field: string) => {\n DkTable.onTableHeaderAction('change-show-column', {\n field,\n value,\n })\n}\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,eAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;
|
1
|
+
{"version":3,"file":"header.vue2.mjs","sources":["../../../../src/table/src/components/header.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n name: 'DkTableHeader',\n});\n</script>\n<template>\n <el-collapse-transition>\n <ComSearch v-show=\"props.buttons.includes('comSearch') && DkTable.table.showComSearch\">\n <template v-for=\"(slot, idx) in $slots\" :key=\"idx\" #[idx]>\n <slot :name=\"idx\"></slot>\n </template>\n </ComSearch>\n </el-collapse-transition>\n <div class=\"dk-table-header\">\n <slot name=\"refreshPrepend\"></slot>\n <el-tooltip v-if=\"props.buttons.includes('refresh')\" content=\"刷新\" placement=\"top\">\n <el-button v-blur class=\"table-header-operate\" type=\"info\" @click=\"onAction('refresh', { loading: true })\">\n <dk-icon icon=\"Refresh\"></dk-icon>\n </el-button>\n </el-tooltip>\n <slot name=\"refreshAppend\"></slot>\n <el-tooltip v-if=\"props.buttons.includes('add') && DkTable.auth('add')\" content=\"新增\" placement=\"top\">\n <el-button v-blur class=\"table-header-operate\" type=\"primary\" @click=\"onAction('add')\">\n <dk-icon icon=\"typcn:plus\"></dk-icon>\n <span class=\"m-l-5px\">新增</span>\n </el-button>\n </el-tooltip>\n <slot name=\"AddButtonAppend\"></slot>\n <el-tooltip\n v-if=\"props.buttons.includes('export_csv') && DkTable.auth('export_csv')\"\n content=\"导出选中行\"\n placement=\"top\"\n >\n <el-button\n v-blur\n :disabled=\"!enableBatchOpt\"\n class=\"table-header-operate\"\n type=\"primary\"\n @click=\"onAction('export_csv')\"\n >\n <dk-icon icon=\"typcn:download\"></dk-icon>\n <span class=\"m-l-5px\">导出</span>\n </el-button>\n </el-tooltip>\n <slot name=\"ExportButtonAppend\"></slot>\n <el-tooltip v-if=\"props.buttons.includes('edit') && DkTable.auth('edit')\" content=\"编辑选中行\" placement=\"top\">\n <el-button\n v-blur\n :disabled=\"!enableBatchOpt\"\n class=\"table-header-operate\"\n type=\"primary\"\n @click=\"onAction('edit')\"\n >\n <dk-icon icon=\"typcn:edit\"></dk-icon>\n <span class=\"m-l-5px\">编辑</span>\n </el-button>\n </el-tooltip>\n <slot name=\"EditButtonAppend\"></slot>\n <el-popconfirm\n v-if=\"props.buttons.includes('delete') && DkTable.auth('del')\"\n confirm-button-text=\"删除\"\n cancel-button-text=\"取消\"\n confirm-button-type=\"danger\"\n title=\"您确定要删除所选记录吗?\"\n :disabled=\"!enableBatchOpt\"\n @confirm=\"onAction('delete')\"\n >\n <template #reference>\n <div class=\"m-l-5px\">\n <el-tooltip content=\"删除所选行\" placement=\"top\">\n <el-button v-blur :disabled=\"!enableBatchOpt\" class=\"table-header-operate\" type=\"danger\">\n <!-- <Icon name=\"fa fa-trash\" />-->\n <dk-icon icon=\"typcn:trash\"></dk-icon>\n <span class=\"m-l-5px\">删除</span>\n </el-button>\n </el-tooltip>\n </div>\n </template>\n </el-popconfirm>\n <slot name=\"DeleteButtonAppend\"></slot>\n <el-tooltip\n v-if=\"props.buttons.includes('unfold')\"\n :content=\"(DkTable.table.expandAll ? '收缩' : '展开') + '所有子菜单'\"\n placement=\"top\"\n >\n <el-button\n v-blur\n class=\"table-header-operate\"\n :type=\"DkTable.table.expandAll ? 'danger' : 'warning'\"\n @click=\"\n DkTable.onTableHeaderAction('unfold', {\n unfold: !DkTable.table.expandAll,\n })\n \"\n >\n <span class=\"table-header-operate-text\">\n {{ DkTable.table.expandAll ? '收缩所有' : '展开所有' }}\n </span>\n </el-button>\n </el-tooltip>\n <slot name=\"UnfoldButtonAppend\"></slot>\n <el-tooltip\n v-if=\"props.buttons.includes('recycle') && DkTable.auth('recycle')\"\n content=\"打开回收站\"\n placement=\"top\"\n >\n <el-button\n v-blur\n class=\"table-header-operate m-l-5px\"\n type=\"warning\"\n :loading=\"DkTable.recycleTable.showDialogLoading\"\n @click=\"onAction('recycle')\"\n >\n <span class=\"table-header-operate-text\"> 回收站 </span>\n </el-button>\n </el-tooltip>\n <slot name=\"RecycleButtonAppend\"></slot>\n <div class=\"table-search\">\n <div class=\"mr-1\">\n <el-input\n v-model=\"DkTable.table.filter!.quickSearch\"\n placeholder=\"请输入\"\n prefix-icon=\"Search\"\n :size=\"size\"\n @input=\"debounce(onSearchInput, 500)()\"\n />\n </div>\n <div class=\"table-search-button-group\">\n <el-dropdown v-if=\"props.buttons.includes('columnDisplay')\" :max-height=\"380\" :hide-on-click=\"false\">\n <el-button\n v-blur\n :size=\"size\"\n class=\"table-search-button-item\"\n :class=\"props.buttons.includes('comSearch') ? 'right-border' : ''\"\n >\n <dk-icon icon=\"Grid\"></dk-icon>\n </el-button>\n <template #dropdown>\n <el-dropdown-menu>\n <el-dropdown-item v-for=\"(item, idx) in columnDisplay\" :key=\"idx\">\n <el-checkbox\n v-if=\"item.prop\"\n :checked=\"!item.show\"\n :model-value=\"item.show\"\n :size=\"size\"\n :label=\"item.label\"\n @change=\"onChangeShowColumn($event, item.prop!)\"\n />\n </el-dropdown-item>\n </el-dropdown-menu>\n </template>\n </el-dropdown>\n <div>\n <el-tooltip\n v-if=\"props.buttons.includes('comSearch')\"\n :disabled=\"DkTable.table.showComSearch\"\n content=\"展开常规搜索\"\n placement=\"top\"\n >\n <el-button\n v-blur\n :size=\"size\"\n class=\"table-search-button-item\"\n @click=\"DkTable.table.showComSearch = !DkTable.table.showComSearch\"\n >\n <dk-icon icon=\"Search\"></dk-icon>\n </el-button>\n </el-tooltip>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { inject, computed } from 'vue'\nimport dkTable from '../../utils/dkTable'\nimport ComSearch from './ComSearch.vue'\nimport { debounce, storage } from '@vipl520/utils'\n\n\n\nconst DkTable = inject('DkTable') as dkTable\n\nconst props = defineProps({\n size: {\n default: 'small',\n type: String,\n },\n buttons: {\n default: () => {\n return ['refresh', 'add', 'export_csv', 'edit', 'delete', 'comSearch', 'quickSearch', 'columnDisplay']\n },\n type: Array,\n },\n quickSearchPlaceholder: {\n default: '快捷搜索',\n type: String,\n },\n})\n\nconst columnDisplay = computed(() => {\n const columnDisplayArr = []\n let cachedTableData: any = {}\n if (DkTable.url) {\n cachedTableData = JSON.parse(storage.get(DkTable.url + 'show_column') || '{}')\n }\n for (const item of DkTable.table.column) {\n if (cachedTableData[item.prop] !== undefined) {\n item.show = cachedTableData[item.prop]\n }\n // eslint-disable-next-line no-unused-expressions\n item.type === 'selection' || item.render === 'buttons' || item.enableColumnDisplayControl === false\n ? ''\n : columnDisplayArr.push(item)\n }\n return columnDisplayArr\n})\n\nconst enableBatchOpt = computed(() => DkTable.table.selection!.length > 0)\n\nconst onAction = (event: string, data: anyObj = {}) => {\n DkTable.onTableHeaderAction(event, data)\n}\n\nconst onSearchInput = () => {\n DkTable.onTableHeaderAction('quick-search', {\n keyword: DkTable.table.filter!.quickSearch,\n })\n}\n\nconst onChangeShowColumn = (value: string | number | boolean, field: string) => {\n DkTable.onTableHeaderAction('change-show-column', {\n field,\n value,\n })\n}\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,eAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;AAkLD,IAAM,MAAA,OAAA,GAAU,OAAO,SAAS,CAAA,CAAA;AAmBhC,IAAM,MAAA,aAAA,GAAgB,SAAS,MAAM;AACnC,MAAA,MAAM,mBAAmB,EAAC,CAAA;AAC1B,MAAA,IAAI,kBAAuB,EAAC,CAAA;AAC5B,MAAA,IAAI,QAAQ,GAAK,EAAA;AACf,QAAkB,eAAA,GAAA,IAAA,CAAK,MAAM,OAAQ,CAAA,GAAA,CAAI,QAAQ,GAAM,GAAA,aAAa,KAAK,IAAI,CAAA,CAAA;AAAA,OAC/E;AACA,MAAW,KAAA,MAAA,IAAA,IAAQ,OAAQ,CAAA,KAAA,CAAM,MAAQ,EAAA;AACvC,QAAA,IAAI,eAAgB,CAAA,IAAA,CAAK,IAAI,CAAA,KAAM,KAAW,CAAA,EAAA;AAC5C,UAAK,IAAA,CAAA,IAAA,GAAO,eAAgB,CAAA,IAAA,CAAK,IAAI,CAAA,CAAA;AAAA,SACvC;AAEA,QAAK,IAAA,CAAA,IAAA,KAAS,WAAe,IAAA,IAAA,CAAK,MAAW,KAAA,SAAA,IAAa,IAAK,CAAA,0BAAA,KAA+B,KAC1F,GAAA,EAAA,GACA,gBAAiB,CAAA,IAAA,CAAK,IAAI,CAAA,CAAA;AAAA,OAChC;AACA,MAAO,OAAA,gBAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAA,MAAM,iBAAiB,QAAS,CAAA,MAAM,QAAQ,KAAM,CAAA,SAAA,CAAW,SAAS,CAAC,CAAA,CAAA;AAEzE,IAAA,MAAM,QAAW,GAAA,CAAC,KAAe,EAAA,IAAA,GAAe,EAAO,KAAA;AACrD,MAAQ,OAAA,CAAA,mBAAA,CAAoB,OAAO,IAAI,CAAA,CAAA;AAAA,KACzC,CAAA;AAEA,IAAA,MAAM,gBAAgB,MAAM;AAC1B,MAAA,OAAA,CAAQ,oBAAoB,cAAgB,EAAA;AAAA,QAC1C,OAAA,EAAS,OAAQ,CAAA,KAAA,CAAM,MAAQ,CAAA,WAAA;AAAA,OAChC,CAAA,CAAA;AAAA,KACH,CAAA;AAEA,IAAM,MAAA,kBAAA,GAAqB,CAAC,KAAA,EAAkC,KAAkB,KAAA;AAC9E,MAAA,OAAA,CAAQ,oBAAoB,oBAAsB,EAAA;AAAA,QAChD,KAAA;AAAA,QACA,KAAA;AAAA,OACD,CAAA,CAAA;AAAA,KACH,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/es/table/src/props.d.ts
CHANGED
package/es/table/src/props.mjs
CHANGED
@@ -24,6 +24,12 @@ const tableProps = {
|
|
24
24
|
return ["refresh", "add", "export_csv", "edit", "delete", "comSearch", "quickSearch", "columnDisplay", "recycle"];
|
25
25
|
},
|
26
26
|
type: Array
|
27
|
+
},
|
28
|
+
hideButtons: {
|
29
|
+
default: () => {
|
30
|
+
return [];
|
31
|
+
},
|
32
|
+
type: Array
|
27
33
|
}
|
28
34
|
};
|
29
35
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"props.mjs","sources":["../../../src/table/src/props.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n// import ElTableNext from 'el-table-next'\n\nexport const tableProps = {\n tableApi: {\n default: '',\n type: String,\n },\n cacheTable: {\n default: true,\n type: Boolean,\n },\n tableBefore: {\n default: () => {\n return {}\n },\n type: Object,\n },\n tableAfter: {\n default: () => {\n return {}\n },\n type: Object,\n },\n buttons: {\n default: () => {\n return ['refresh', 'add', 'export_csv', 'edit', 'delete', 'comSearch', 'quickSearch', 'columnDisplay', 'recycle']\n },\n type: Array,\n },\n}\n\nexport type TableProps = ExtractPropTypes<typeof tableProps>\n"],"names":[],"mappings":"AAGO,MAAM,UAAa,GAAA;AAAA,EACxB,QAAU,EAAA;AAAA,IACR,OAAS,EAAA,EAAA;AAAA,IACT,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,OAAS,EAAA,IAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,GACR;AAAA,EACA,WAAa,EAAA;AAAA,IACX,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,OAAS,EAAA;AAAA,IACP,SAAS,MAAM;AACb,MAAO,OAAA,CAAC,WAAW,KAAO,EAAA,YAAA,EAAc,QAAQ,QAAU,EAAA,WAAA,EAAa,aAAe,EAAA,eAAA,EAAiB,SAAS,CAAA,CAAA;AAAA,KAClH;AAAA,IACA,IAAM,EAAA,KAAA;AAAA,GACR;AACF;;;;"}
|
1
|
+
{"version":3,"file":"props.mjs","sources":["../../../src/table/src/props.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n// import ElTableNext from 'el-table-next'\n\nexport const tableProps = {\n tableApi: {\n default: '',\n type: String,\n },\n cacheTable: {\n default: true,\n type: Boolean,\n },\n tableBefore: {\n default: () => {\n return {}\n },\n type: Object,\n },\n tableAfter: {\n default: () => {\n return {}\n },\n type: Object,\n },\n buttons: {\n default: () => {\n return ['refresh', 'add', 'export_csv', 'edit', 'delete', 'comSearch', 'quickSearch', 'columnDisplay', 'recycle']\n },\n type: Array,\n },\n hideButtons: {\n default: () => {\n return []\n },\n type: Array,\n },\n}\n\nexport type TableProps = ExtractPropTypes<typeof tableProps>\n"],"names":[],"mappings":"AAGO,MAAM,UAAa,GAAA;AAAA,EACxB,QAAU,EAAA;AAAA,IACR,OAAS,EAAA,EAAA;AAAA,IACT,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,OAAS,EAAA,IAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,GACR;AAAA,EACA,WAAa,EAAA;AAAA,IACX,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,UAAY,EAAA;AAAA,IACV,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA,OAAS,EAAA;AAAA,IACP,SAAS,MAAM;AACb,MAAO,OAAA,CAAC,WAAW,KAAO,EAAA,YAAA,EAAc,QAAQ,QAAU,EAAA,WAAA,EAAa,aAAe,EAAA,eAAA,EAAiB,SAAS,CAAA,CAAA;AAAA,KAClH;AAAA,IACA,IAAM,EAAA,KAAA;AAAA,GACR;AAAA,EACA,WAAa,EAAA;AAAA,IACX,SAAS,MAAM;AACb,MAAA,OAAO,EAAC,CAAA;AAAA,KACV;AAAA,IACA,IAAM,EAAA,KAAA;AAAA,GACR;AACF;;;;"}
|