qidian-vue-ui 2.0.64 → 2.0.65

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.
@@ -111,6 +111,7 @@ export declare const QdConfigProvider: import("vue").DefineComponent<{
111
111
  filterItemSearchPlaceholder?: string;
112
112
  filterItemAllText?: string;
113
113
  filterItemInvertText?: string;
114
+ filterItemBlankText?: string;
114
115
  };
115
116
  wrapper?: {
116
117
  attach?: import("..").QdDialogProps["attach"];
@@ -261,6 +262,7 @@ export declare const QdConfigProvider: import("vue").DefineComponent<{
261
262
  filterItemSearchPlaceholder?: string;
262
263
  filterItemAllText?: string;
263
264
  filterItemInvertText?: string;
265
+ filterItemBlankText?: string;
264
266
  };
265
267
  wrapper?: {
266
268
  attach?: import("..").QdDialogProps["attach"];
@@ -396,6 +398,7 @@ export declare const QdConfigProvider: import("vue").DefineComponent<{
396
398
  filterItemSearchPlaceholder?: string;
397
399
  filterItemAllText?: string;
398
400
  filterItemInvertText?: string;
401
+ filterItemBlankText?: string;
399
402
  };
400
403
  wrapper?: {
401
404
  attach?: import("..").QdDialogProps["attach"];
@@ -128,6 +128,7 @@ export interface QdConfigProviderProps {
128
128
  filterItemSearchPlaceholder?: string;
129
129
  filterItemAllText?: string;
130
130
  filterItemInvertText?: string;
131
+ filterItemBlankText?: string;
131
132
  };
132
133
  wrapper?: {
133
134
  attach?: QdDialogProps['attach'];
@@ -99,6 +99,7 @@ export declare function useConfig<T extends keyof NonNullable<QdConfigProviderPr
99
99
  filterItemSearchPlaceholder?: string;
100
100
  filterItemAllText?: string;
101
101
  filterItemInvertText?: string;
102
+ filterItemBlankText?: string;
102
103
  };
103
104
  wrapper?: {
104
105
  attach?: import("..").QdDialogProps["attach"];
@@ -232,6 +233,7 @@ export declare function useConfig<T extends keyof NonNullable<QdConfigProviderPr
232
233
  filterItemSearchPlaceholder?: string;
233
234
  filterItemAllText?: string;
234
235
  filterItemInvertText?: string;
236
+ filterItemBlankText?: string;
235
237
  };
236
238
  wrapper?: {
237
239
  attach?: import("..").QdDialogProps["attach"];
@@ -365,6 +367,7 @@ export declare function useConfig<T extends keyof NonNullable<QdConfigProviderPr
365
367
  filterItemSearchPlaceholder?: string;
366
368
  filterItemAllText?: string;
367
369
  filterItemInvertText?: string;
370
+ filterItemBlankText?: string;
368
371
  };
369
372
  wrapper?: {
370
373
  attach?: import("..").QdDialogProps["attach"];
@@ -499,6 +502,7 @@ export declare function useConfig<T extends keyof NonNullable<QdConfigProviderPr
499
502
  filterItemSearchPlaceholder?: string;
500
503
  filterItemAllText?: string;
501
504
  filterItemInvertText?: string;
505
+ filterItemBlankText?: string;
502
506
  };
503
507
  wrapper?: {
504
508
  attach?: import("..").QdDialogProps["attach"];
@@ -1,103 +1,103 @@
1
- .qd-service-table[data-v-43aa39f0] {
1
+ .qd-service-table[data-v-bb8ca5b9] {
2
2
  height: 100%;
3
3
  display: flex;
4
4
  flex-direction: column;
5
5
  }
6
- .qd-service-table[data-v-43aa39f0] > .t-table__content {
6
+ .qd-service-table[data-v-bb8ca5b9] > .t-table__content {
7
7
  flex: 1;
8
8
  }
9
- .qd-service-table--mini[data-v-43aa39f0] {
9
+ .qd-service-table--mini[data-v-bb8ca5b9] {
10
10
  font: var(--td-font-body-small);
11
11
  }
12
- .qd-service-table--mini[data-v-43aa39f0] th,
13
- .qd-service-table--mini[data-v-43aa39f0] tr:not(.t-table__expanded-row) > td {
12
+ .qd-service-table--mini[data-v-bb8ca5b9] th,
13
+ .qd-service-table--mini[data-v-bb8ca5b9] tr:not(.t-table__expanded-row) > td {
14
14
  padding: var(--td-comp-paddingTB-xxs) var(--td-comp-paddingLR-xxs);
15
15
  line-height: var(--td-line-height-body-small);
16
16
  }
17
- .qd-service-table--mini[data-v-43aa39f0] .t-table__row-full-element {
17
+ .qd-service-table--mini[data-v-bb8ca5b9] .t-table__row-full-element {
18
18
  padding: var(--td-comp-paddingTB-xs) var(--td-comp-paddingLR-s);
19
19
  }
20
- .qd-service-table--hide-empty-image[data-v-43aa39f0] .t-table__empty {
20
+ .qd-service-table--hide-empty-image[data-v-bb8ca5b9] .t-table__empty {
21
21
  min-height: auto;
22
22
  }
23
- .qd-service-table--hide-empty-image[data-v-43aa39f0] .t-table__empty .t-empty {
23
+ .qd-service-table--hide-empty-image[data-v-bb8ca5b9] .t-table__empty .t-empty {
24
24
  padding: 0 !important;
25
25
  }
26
- .qd-service-table--hide-empty-image[data-v-43aa39f0] .t-table__empty .t-empty__image {
26
+ .qd-service-table--hide-empty-image[data-v-bb8ca5b9] .t-table__empty .t-empty__image {
27
27
  display: none;
28
28
  }
29
- .qd-service-table--hide-empty-image[data-v-43aa39f0] .t-table__empty .t-empty__title {
29
+ .qd-service-table--hide-empty-image[data-v-bb8ca5b9] .t-table__empty .t-empty__title {
30
30
  margin-top: 0;
31
31
  }
32
- .qd-service-table[data-v-43aa39f0] .t-table__tree-col:not(:has(.t-table__tree-op-icon)) {
32
+ .qd-service-table[data-v-bb8ca5b9] .t-table__tree-col:not(:has(.t-table__tree-op-icon)) {
33
33
  margin-left: calc(var(--td-font-size-body-large) + var(--td-comp-margin-s));
34
34
  }
35
- .qd-service-table[data-v-43aa39f0] .t-table__tree-leaf-node .t-table__tree-op-icon:empty {
35
+ .qd-service-table[data-v-bb8ca5b9] .t-table__tree-leaf-node .t-table__tree-op-icon:empty {
36
36
  width: calc(var(--td-font-size-body-large) + var(--td-comp-margin-s));
37
37
  }
38
- .qd-service-table[data-v-43aa39f0] .t-affix > .t-table__affixed-header-elm-wrap,
39
- .qd-service-table[data-v-43aa39f0] .t-affix > .t-table__scrollbar--obvious {
40
- transform: var(--v05a25416);
38
+ .qd-service-table[data-v-bb8ca5b9] .t-affix > .t-table__affixed-header-elm-wrap,
39
+ .qd-service-table[data-v-bb8ca5b9] .t-affix > .t-table__scrollbar--obvious {
40
+ transform: var(--f9e71248);
41
41
  }
42
- .qd-service-table--horizontal-bar-static[data-v-43aa39f0] .t-table__scrollbar--obvious {
42
+ .qd-service-table--horizontal-bar-static[data-v-bb8ca5b9] .t-table__scrollbar--obvious {
43
43
  visibility: hidden;
44
44
  pointer-events: none;
45
45
  }
46
- .qd-service-table--horizontal-bar-static[data-v-43aa39f0] > div:has(> div > .t-table__scrollbar--obvious) {
46
+ .qd-service-table--horizontal-bar-static[data-v-bb8ca5b9] > div:has(> div > .t-table__scrollbar--obvious) {
47
47
  height: 0;
48
48
  margin-top: 0 !important;
49
49
  overflow: hidden;
50
50
  }
51
- .qd-service-table[data-v-43aa39f0] .t-table__expanded-row .qd-service-table--horizontal-bar-static > div:has(> div > .t-table__scrollbar--obvious) {
51
+ .qd-service-table[data-v-bb8ca5b9] .t-table__expanded-row .qd-service-table--horizontal-bar-static > div:has(> div > .t-table__scrollbar--obvious) {
52
52
  display: none;
53
53
  }
54
- .qd-service-table[data-v-43aa39f0] .t-table__expanded-row > td {
54
+ .qd-service-table[data-v-bb8ca5b9] .t-table__expanded-row > td {
55
55
  height: 0;
56
56
  }
57
- .qd-service-table[data-v-43aa39f0] .t-table__affixed-header-elm-wrap {
57
+ .qd-service-table[data-v-bb8ca5b9] .t-table__affixed-header-elm-wrap {
58
58
  height: auto !important;
59
59
  }
60
- .qd-service-table[data-v-43aa39f0] .t-table__affixed-header-elm {
60
+ .qd-service-table[data-v-bb8ca5b9] .t-table__affixed-header-elm {
61
61
  position: relative;
62
62
  scrollbar-width: none;
63
63
  }
64
- .qd-service-table[data-v-43aa39f0] .t-table__affixed-header-elm::-webkit-scrollbar {
64
+ .qd-service-table[data-v-bb8ca5b9] .t-table__affixed-header-elm::-webkit-scrollbar {
65
65
  display: none;
66
66
  width: 0;
67
67
  height: 0;
68
68
  }
69
- .qd-service-table[data-v-43aa39f0] .t-table__virtual-scroll-cursor + table {
69
+ .qd-service-table[data-v-bb8ca5b9] .t-table__virtual-scroll-cursor + table {
70
70
  border-collapse: separate;
71
71
  }
72
- .qd-service-table[data-v-43aa39f0] .t-table__expanded-row-inner,
73
- .qd-service-table[data-v-43aa39f0] .t-table__row-filter-inner {
72
+ .qd-service-table[data-v-bb8ca5b9] .t-table__expanded-row-inner,
73
+ .qd-service-table[data-v-bb8ca5b9] .t-table__row-filter-inner {
74
74
  display: block;
75
75
  position: sticky;
76
76
  left: 0;
77
- width: var(--v1a4de8aa) !important;
77
+ width: var(--v88d7fa5e) !important;
78
78
  }
79
- .qd-service-table[data-v-43aa39f0] .t-table__cell-wrap > .t-form__controls > .t-form__controls-content > *:not(.t-switch):not(.t-tag):not(.t-icon):not(.qd-file-icon) {
79
+ .qd-service-table[data-v-bb8ca5b9] .t-table__cell-wrap > .t-form__controls > .t-form__controls-content > *:not(.t-switch):not(.t-tag):not(.t-icon):not(.qd-file-icon) {
80
80
  width: 100%;
81
81
  }
82
- .qd-service-table[data-v-43aa39f0] .qd-service-table__non-editable-col {
82
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__non-editable-col {
83
83
  background-color: color-mix(in srgb, var(--td-bg-color-component) 50%, transparent);
84
84
  }
85
- .qd-service-table[data-v-43aa39f0] td.qd-service-table__selected-cell {
85
+ .qd-service-table[data-v-bb8ca5b9] td.qd-service-table__selected-cell {
86
86
  box-shadow: inset 0 1px 0 0 var(--qst-sel-t, transparent), inset 0 -1px 0 0 var(--qst-sel-b, transparent), inset 1px 0 0 0 var(--qst-sel-l, transparent), inset -1px 0 0 0 var(--qst-sel-r, transparent);
87
87
  }
88
- .qd-service-table[data-v-43aa39f0] .qd-service-table__selected-bt {
88
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__selected-bt {
89
89
  --qst-sel-t: var(--td-brand-color);
90
90
  }
91
- .qd-service-table[data-v-43aa39f0] .qd-service-table__selected-bb {
91
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__selected-bb {
92
92
  --qst-sel-b: var(--td-brand-color);
93
93
  }
94
- .qd-service-table[data-v-43aa39f0] .qd-service-table__selected-bl {
94
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__selected-bl {
95
95
  --qst-sel-l: var(--td-brand-color);
96
96
  }
97
- .qd-service-table[data-v-43aa39f0] .qd-service-table__selected-br {
97
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__selected-br {
98
98
  --qst-sel-r: var(--td-brand-color);
99
99
  }
100
- .qd-service-table[data-v-43aa39f0] td.qd-service-table__copied-cell {
100
+ .qd-service-table[data-v-bb8ca5b9] td.qd-service-table__copied-cell {
101
101
  background-image: var(--qst-copy-t, none), var(--qst-copy-b, none), var(--qst-copy-l, none), var(--qst-copy-r, none);
102
102
  background-size: 8px 1px,
103
103
  8px 1px,
@@ -108,134 +108,134 @@
108
108
  0 0,
109
109
  100% 0;
110
110
  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;
111
- animation: qst-cell-ants-43aa39f0 0.5s linear infinite;
111
+ animation: qst-cell-ants-bb8ca5b9 0.5s linear infinite;
112
112
  }
113
- .qd-service-table[data-v-43aa39f0] td.qd-service-table__copied-cell.qd-service-table__selected-cell {
113
+ .qd-service-table[data-v-bb8ca5b9] td.qd-service-table__copied-cell.qd-service-table__selected-cell {
114
114
  background-size: 8px 2px,
115
115
  8px 2px,
116
116
  2px 8px,
117
117
  2px 8px;
118
118
  }
119
- .qd-service-table[data-v-43aa39f0] .qd-service-table__copied-bt {
119
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__copied-bt {
120
120
  --qst-copy-t: linear-gradient(90deg, var(--td-brand-color-hover) 50%, transparent 0);
121
121
  }
122
- .qd-service-table[data-v-43aa39f0] .qd-service-table__copied-bb {
122
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__copied-bb {
123
123
  --qst-copy-b: linear-gradient(90deg, var(--td-brand-color-hover) 50%, transparent 0);
124
124
  }
125
- .qd-service-table[data-v-43aa39f0] .qd-service-table__copied-bl {
125
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__copied-bl {
126
126
  --qst-copy-l: linear-gradient(0deg, var(--td-brand-color-hover) 50%, transparent 0);
127
127
  }
128
- .qd-service-table[data-v-43aa39f0] .qd-service-table__copied-br {
128
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__copied-br {
129
129
  --qst-copy-r: linear-gradient(0deg, var(--td-brand-color-hover) 50%, transparent 0);
130
130
  }
131
- .qd-service-table[data-v-43aa39f0] tbody > tr.t-table__row--active {
131
+ .qd-service-table[data-v-bb8ca5b9] tbody > tr.t-table__row--active {
132
132
  background-color: var(--td-brand-color-light);
133
133
  }
134
- .qd-service-table[data-v-43aa39f0] tbody > tr.t-table__row--active.t-table__row--hover,
135
- .qd-service-table[data-v-43aa39f0] tbody > tr.t-table__row--active:hover {
134
+ .qd-service-table[data-v-bb8ca5b9] tbody > tr.t-table__row--active.t-table__row--hover,
135
+ .qd-service-table[data-v-bb8ca5b9] tbody > tr.t-table__row--active:hover {
136
136
  background-color: var(--td-brand-color-light-hover);
137
137
  }
138
- .qd-service-table[data-v-43aa39f0] .qd-service-table__non-editable-col:not(.qd-service-table__copied-cell):is(
138
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table__non-editable-col:not(.qd-service-table__copied-cell):is(
139
139
  .t-table__cell--fixed-left,
140
140
  .t-table__cell--fixed-right
141
141
  ) {
142
142
  background-color: inherit;
143
143
  background-image: linear-gradient(color-mix(in srgb, var(--td-bg-color-secondarycontainer) 50%, transparent), color-mix(in srgb, var(--td-bg-color-secondarycontainer) 50%, transparent));
144
144
  }
145
- .qd-service-table--disable-horizontal-scroll[data-v-43aa39f0] colgroup > col {
145
+ .qd-service-table--disable-horizontal-scroll[data-v-bb8ca5b9] colgroup > col {
146
146
  width: auto !important;
147
147
  }
148
- .qd-service-table--cell-drag-selecting[data-v-43aa39f0] {
148
+ .qd-service-table--cell-drag-selecting[data-v-bb8ca5b9] {
149
149
  cursor: crosshair;
150
150
  }
151
- .qd-service-table--cell-drag-selecting[data-v-43aa39f0] td {
151
+ .qd-service-table--cell-drag-selecting[data-v-bb8ca5b9] td {
152
152
  cursor: crosshair;
153
153
  }
154
- .qd-service-table[data-v-43aa39f0] .t-table__filter-pop-content-inner {
154
+ .qd-service-table[data-v-bb8ca5b9] .t-table__filter-pop-content-inner {
155
155
  padding: var(--td-comp-paddingTB-s) var(--td-comp-paddingLR-s) 0;
156
156
  }
157
- .qd-service-table[data-v-43aa39f0] .t-table__filter-pop-content-inner:has(.qd-service-table-filter-item) {
157
+ .qd-service-table[data-v-bb8ca5b9] .t-table__filter-pop-content-inner:has(.qd-service-table-filter-item) {
158
158
  padding: 0;
159
159
  }
160
- .qd-service-table[data-v-43aa39f0] .t-table__filter-pop-content-inner:has(
160
+ .qd-service-table[data-v-bb8ca5b9] .t-table__filter-pop-content-inner:has(
161
161
  .qd-service-table-filter-input,
162
162
  .qd-service-table-filter-custom
163
163
  ) {
164
164
  padding-bottom: var(--td-comp-paddingTB-s);
165
165
  }
166
- .qd-service-table[data-v-43aa39f0] .t-table__filter--bottom-buttons {
166
+ .qd-service-table[data-v-bb8ca5b9] .t-table__filter--bottom-buttons {
167
167
  padding: var(--td-comp-paddingTB-s) var(--td-comp-paddingLR-s);
168
168
  }
169
- .qd-service-table--mini[data-v-43aa39f0] .t-table__filter-pop-content-inner {
169
+ .qd-service-table--mini[data-v-bb8ca5b9] .t-table__filter-pop-content-inner {
170
170
  padding: var(--td-comp-paddingTB-xs) var(--td-comp-paddingLR-xs) 0;
171
171
  }
172
- .qd-service-table--mini[data-v-43aa39f0] .t-table__filter--bottom-buttons {
172
+ .qd-service-table--mini[data-v-bb8ca5b9] .t-table__filter--bottom-buttons {
173
173
  padding: var(--td-comp-paddingTB-xs) var(--td-comp-paddingLR-xs);
174
174
  }
175
- .qd-service-table--mini[data-v-43aa39f0] .t-table__filter-pop-content-inner:has(.qd-service-table-filter-item) {
175
+ .qd-service-table--mini[data-v-bb8ca5b9] .t-table__filter-pop-content-inner:has(.qd-service-table-filter-item) {
176
176
  padding: 0;
177
177
  }
178
- .qd-service-table--mini[data-v-43aa39f0] .t-table__filter-pop-content-inner:has(
178
+ .qd-service-table--mini[data-v-bb8ca5b9] .t-table__filter-pop-content-inner:has(
179
179
  .qd-service-table-filter-input,
180
180
  .qd-service-table-filter-custom
181
181
  ) {
182
182
  padding-bottom: var(--td-comp-paddingTB-xs);
183
183
  }
184
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item {
184
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item {
185
185
  width: 266px;
186
186
  }
187
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item__search,
188
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item__all,
189
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item__options {
187
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item__search,
188
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item__all,
189
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item__options {
190
190
  padding: var(--td-comp-paddingTB-s) var(--td-comp-paddingLR-s) 0;
191
191
  }
192
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item__all {
192
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item__all {
193
193
  display: flex;
194
194
  align-items: center;
195
195
  padding: 0 var(--td-comp-paddingLR-s);
196
196
  border-bottom: 1px solid var(--td-component-stroke);
197
197
  }
198
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item__options {
198
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item__options {
199
199
  display: flex;
200
200
  flex-direction: column;
201
201
  height: 206px;
202
202
  padding: 0 var(--td-comp-paddingLR-s);
203
203
  overflow-y: auto;
204
204
  }
205
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item__count {
205
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item__count {
206
206
  margin-left: var(--td-comp-margin-xs);
207
207
  color: var(--td-text-color-placeholder);
208
208
  }
209
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item__cell {
209
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item__cell {
210
210
  pointer-events: none;
211
211
  }
212
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item .t-checkbox,
213
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item .t-radio {
212
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item .t-checkbox,
213
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item .t-radio {
214
214
  display: flex;
215
215
  align-items: center;
216
216
  }
217
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item .t-checkbox__label,
218
- .qd-service-table[data-v-43aa39f0] .qd-service-table-filter-item .t-radio__label {
217
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item .t-checkbox__label,
218
+ .qd-service-table[data-v-bb8ca5b9] .qd-service-table-filter-item .t-radio__label {
219
219
  display: inline-flex;
220
220
  flex: 1 1 0;
221
221
  align-items: center;
222
222
  min-width: 0;
223
223
  overflow: hidden;
224
224
  }
225
- .qd-service-table--mini[data-v-43aa39f0] .qd-service-table-filter-item__search {
225
+ .qd-service-table--mini[data-v-bb8ca5b9] .qd-service-table-filter-item__search {
226
226
  padding: var(--td-comp-paddingTB-xs) var(--td-comp-paddingLR-xs) 0;
227
227
  }
228
- .qd-service-table--mini[data-v-43aa39f0] .qd-service-table-filter-item__all,
229
- .qd-service-table--mini[data-v-43aa39f0] .qd-service-table-filter-item__options {
228
+ .qd-service-table--mini[data-v-bb8ca5b9] .qd-service-table-filter-item__all,
229
+ .qd-service-table--mini[data-v-bb8ca5b9] .qd-service-table-filter-item__options {
230
230
  padding: 0 var(--td-comp-paddingLR-xs);
231
231
  }
232
- @keyframes qst-cell-ants-43aa39f0 {
232
+ @keyframes qst-cell-ants-bb8ca5b9 {
233
233
  to {
234
234
  background-position: 8px 0, -8px 100%, 0 -8px, 100% 8px;
235
235
  }
236
236
  }
237
237
  @media (prefers-reduced-motion: reduce) {
238
- [data-v-43aa39f0] td.qd-service-table__copied-cell {
238
+ [data-v-bb8ca5b9] td.qd-service-table__copied-cell {
239
239
  animation: none;
240
240
  }
241
241
  }
@@ -1,2 +1,3 @@
1
1
  export { default as QdServiceTable } from './index.vue';
2
+ export { QD_TABLE_BLANK_FILTER_VALUE } from './props';
2
3
  export type { QdServiceTableCol, QdServiceTableFilterItem, QdServiceTableFilterOption, QdServiceTableFormItem, QdServiceTableInstanceFunctions, QdServiceTablePagination, QdServiceTablePaginationConfig, QdServiceTableProps, QdServiceTableScroll, QdServiceTableSubmitRowContext, QdServiceTableSubmitTableContext, QdServiceTableValidateParams, QdServiceTableValidateRowContext, QdServiceTableValidateTableContext } from './types';
@@ -2,7 +2,7 @@ import './index.css'
2
2
  import _sfc_main from "./index.vue2.mjs";
3
3
  /* empty css */
4
4
  import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
5
- const QdServiceTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-43aa39f0"]]);
5
+ const QdServiceTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-bb8ca5b9"]]);
6
6
  export {
7
7
  QdServiceTable as default
8
8
  };
@@ -1,7 +1,7 @@
1
1
  import './index.css'
2
2
  import { defineComponent, mergeDefaults, useCssVars, computed, ref, useSlots, useTemplateRef, shallowRef, inject, getCurrentInstance, reactive, createVNode, unref, watch, nextTick, onMounted, onActivated, onDeactivated, onBeforeUnmount, withDirectives, createBlock, openBlock, resolveDynamicComponent, mergeProps, isRef, createSlots, withCtx, renderList, renderSlot, normalizeProps, guardReactiveProps, h, render } from "vue";
3
3
  import { useVModels, useElementSize, useElementBounding, useIntersectionObserver } from "../../../node_modules/.pnpm/@vueuse_core@14.2.0_vue@3.5.26_typescript@5.9.3_/node_modules/@vueuse/core/dist/index.mjs";
4
- import { useActivated, useTimer, useServicePagination, easyCopy, isEmpty, suspectedWrapperPromise, getScrollEl, createExposeProxy, resizeDirective, to } from "qidian-shared";
4
+ import { useActivated, useTimer, isEmpty, useServicePagination, easyCopy, suspectedWrapperPromise, getScrollEl, createExposeProxy, resizeDirective, to } from "qidian-shared";
5
5
  import { LoadingIcon, AddRectangleIcon, MinusRectangleIcon } from "tdesign-icons-vue-next";
6
6
  import { EnhancedTable, Table, Empty } from "tdesign-vue-next";
7
7
  import { validate } from "tdesign-vue-next/es/form/utils/form-model.mjs";
@@ -12,7 +12,7 @@ import { getQdFormComponentName, resolveQdFormItemOptions } from "../../form/uti
12
12
  import { serializeTsv, serializeCellHtml, parseTsv, parseCellHtml } from "./clipboard.mjs";
13
13
  import QdServiceTableEditCell from "./edit-cell.mjs";
14
14
  import QdServiceTableFilterItem from "./filter-item.mjs";
15
- import { qdServiceTableTreeConfig, qdServiceTableProps, getSortParams } from "./props.mjs";
15
+ import { QD_TABLE_BLANK_FILTER_VALUE, qdServiceTableTreeConfig, qdServiceTableProps, getSortParams } from "./props.mjs";
16
16
  import { useReadonly } from "../../../hooks/useReadonly.mjs";
17
17
  import { useDisabled } from "../../../hooks/useDisabled.mjs";
18
18
  import { PROVIDE_FORM_ADD_BEFORE_SUBMIT_QUEUE } from "../../form/config.mjs";
@@ -359,8 +359,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
359
359
  emit: __emit
360
360
  }) {
361
361
  useCssVars((_ctx) => ({
362
- "v05a25416": affixedHeaderTransform.value,
363
- "v1a4de8aa": expandedRowWidth.value
362
+ "f9e71248": affixedHeaderTransform.value,
363
+ "v88d7fa5e": expandedRowWidth.value
364
364
  }));
365
365
  const props = __props;
366
366
  const emit = __emit;
@@ -614,7 +614,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
614
614
  if (type === "input") {
615
615
  return String(rowValue ?? "").toLowerCase().includes(String(value).toLowerCase());
616
616
  }
617
- if (Array.isArray(value)) return value.includes(rowValue);
617
+ if (Array.isArray(value)) {
618
+ return value.includes(rowValue) || isEmpty(rowValue) && value.includes(QD_TABLE_BLANK_FILTER_VALUE);
619
+ }
620
+ if (value === QD_TABLE_BLANK_FILTER_VALUE) return isEmpty(rowValue);
618
621
  return rowValue === value;
619
622
  }));
620
623
  });
@@ -2525,11 +2528,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
2525
2528
  function resolveFilterOptions(column, configuredOptions, reuseCell = true) {
2526
2529
  const counts = /* @__PURE__ */ new Map();
2527
2530
  const firstRows = /* @__PURE__ */ new Map();
2531
+ let blankCount = 0;
2528
2532
  const colKey = column.colKey;
2529
2533
  data.value.forEach((row, rowIndex) => {
2530
2534
  const value = colKey ? get(row, colKey) : void 0;
2535
+ if (isEmpty(value)) {
2536
+ blankCount += 1;
2537
+ return;
2538
+ }
2531
2539
  if (typeof value !== "string" && typeof value !== "number") return;
2532
- if (value === "") return;
2533
2540
  counts.set(value, (counts.get(value) ?? 0) + 1);
2534
2541
  if (!firstRows.has(value)) firstRows.set(value, {
2535
2542
  row,
@@ -2537,13 +2544,24 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
2537
2544
  });
2538
2545
  });
2539
2546
  if (configuredOptions) {
2540
- return configuredOptions.map((option) => ({
2547
+ const options2 = configuredOptions.map((option) => ({
2541
2548
  ...option,
2542
2549
  count: option.count ?? counts.get(option.value) ?? 0
2543
2550
  }));
2551
+ const blankOption = options2.find((option) => option.value === QD_TABLE_BLANK_FILTER_VALUE);
2552
+ if (blankOption) {
2553
+ blankOption.count = blankCount;
2554
+ } else if (blankCount) {
2555
+ options2.unshift({
2556
+ label: tableT("filterItemBlankText"),
2557
+ value: QD_TABLE_BLANK_FILTER_VALUE,
2558
+ count: blankCount
2559
+ });
2560
+ }
2561
+ return options2;
2544
2562
  }
2545
2563
  const colIndex = getFilterColumns(props.columns || []).indexOf(column);
2546
- return [...counts].map(([value, count]) => {
2564
+ const options = [...counts].map(([value, count]) => {
2547
2565
  const firstRow = firstRows.get(value);
2548
2566
  return {
2549
2567
  label: String(value),
@@ -2558,6 +2576,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
2558
2576
  } : {}
2559
2577
  };
2560
2578
  });
2579
+ if (blankCount) {
2580
+ options.unshift({
2581
+ label: tableT("filterItemBlankText"),
2582
+ value: QD_TABLE_BLANK_FILTER_VALUE,
2583
+ count: blankCount
2584
+ });
2585
+ }
2586
+ return options;
2561
2587
  }
2562
2588
  function createConfigFilterComponent(component) {
2563
2589
  return /* @__PURE__ */ defineComponent({
@@ -1,4 +1,5 @@
1
1
  import type { TableSort } from 'tdesign-vue-next';
2
+ export declare const QD_TABLE_BLANK_FILTER_VALUE = "__qd_table_blank__";
2
3
  export declare const qdServiceTableProps: {
3
4
  readonly data: () => never[];
4
5
  readonly selectedRowKeys: () => never[];
@@ -1,3 +1,4 @@
1
+ const QD_TABLE_BLANK_FILTER_VALUE = "__qd_table_blank__";
1
2
  const qdServiceTableProps = {
2
3
  data: () => [],
3
4
  selectedRowKeys: () => [],
@@ -57,6 +58,7 @@ function getSortParams(sortValue) {
57
58
  };
58
59
  }
59
60
  export {
61
+ QD_TABLE_BLANK_FILTER_VALUE,
60
62
  getSortParams,
61
63
  qdServiceTableProps,
62
64
  qdServiceTableTreeConfig
package/dist/index.mjs CHANGED
@@ -42,6 +42,7 @@ import { default as default29 } from "./components/org/tag/index.vue.mjs";
42
42
  import { default as default30 } from "./components/read-write/index.vue.mjs";
43
43
  import { default as default31 } from "./components/service/list/index.vue.mjs";
44
44
  import { default as default32 } from "./components/service/table/index.vue.mjs";
45
+ import { QD_TABLE_BLANK_FILTER_VALUE } from "./components/service/table/props.mjs";
45
46
  import { default as default33 } from "./components/service-dialog-table-select/index.vue.mjs";
46
47
  import { defineQdServiceDialogTableSelect } from "./components/service-dialog-table-select/define.mjs";
47
48
  import { default as default34 } from "./components/service-dialog-tabs-table-select/index.vue.mjs";
@@ -72,6 +73,7 @@ export {
72
73
  PROVIDE_FORM_RESET_QUEUE,
73
74
  PROVIDE_GRID_ITEM_PROPS_KEY,
74
75
  PROVIDE_GRID_WIDTH_KEY,
76
+ QD_TABLE_BLANK_FILTER_VALUE,
75
77
  default12 as QdAutoTooltip,
76
78
  default13 as QdAvatar,
77
79
  default14 as QdCard,
@@ -356,6 +356,7 @@ declare const _default: {
356
356
  filterItemSearchPlaceholder: string;
357
357
  filterItemAllText: string;
358
358
  filterItemInvertText: string;
359
+ filterItemBlankText: string;
359
360
  };
360
361
  columnsController: {
361
362
  titleText: string;
@@ -97,7 +97,8 @@ const enUS = merge(enUS$1, {
97
97
  filterItemInputPlaceholder: "Enter keywords to filter",
98
98
  filterItemSearchPlaceholder: "Search; separate keywords with spaces",
99
99
  filterItemAllText: "All",
100
- filterItemInvertText: "Invert"
100
+ filterItemInvertText: "Invert",
101
+ filterItemBlankText: "(Blank cell)"
101
102
  },
102
103
  columnsController: {
103
104
  titleText: "Column Configuration",
@@ -356,6 +356,7 @@ declare const _default: {
356
356
  filterItemSearchPlaceholder: string;
357
357
  filterItemAllText: string;
358
358
  filterItemInvertText: string;
359
+ filterItemBlankText: string;
359
360
  };
360
361
  columnsController: {
361
362
  titleText: string;
@@ -94,7 +94,8 @@ const zhCN = merge(zhCN$1, {
94
94
  filterItemInputPlaceholder: "输入关键词过滤",
95
95
  filterItemSearchPlaceholder: "搜索,支持用空格分隔多个关键词",
96
96
  filterItemAllText: "全部",
97
- filterItemInvertText: "反选"
97
+ filterItemInvertText: "反选",
98
+ filterItemBlankText: "(空白单元格)"
98
99
  },
99
100
  columnsController: {
100
101
  titleText: "列配置",
@@ -356,6 +356,7 @@ declare const _default: {
356
356
  filterItemSearchPlaceholder: string;
357
357
  filterItemAllText: string;
358
358
  filterItemInvertText: string;
359
+ filterItemBlankText: string;
359
360
  };
360
361
  columnsController: {
361
362
  titleText: string;
@@ -94,7 +94,8 @@ const zhTW = merge(zhTW$1, {
94
94
  filterItemInputPlaceholder: "輸入關鍵詞過濾",
95
95
  filterItemSearchPlaceholder: "搜尋,支援用空格分隔多個關鍵詞",
96
96
  filterItemAllText: "全部",
97
- filterItemInvertText: "反選"
97
+ filterItemInvertText: "反選",
98
+ filterItemBlankText: "(空白儲存格)"
98
99
  },
99
100
  columnsController: {
100
101
  titleText: "列配置",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qidian-vue-ui",
3
- "version": "2.0.64",
3
+ "version": "2.0.65",
4
4
  "description": "基于 TDesign 的 QiDian Vue UI 组件库",
5
5
  "author": "qidian",
6
6
  "license": "MIT",