aloha-vue 1.2.180 → 1.2.182
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/package.json +1 -1
- package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilterUi/AFiltersHorizontalFilterUi.js +7 -0
- package/src/ATable/ATablePreviewDown/ATablePreviewDown.js +5 -7
- package/src/ATable/ATablePreviewRight/ATablePreviewRight.js +254 -257
- package/src/ATable/compositionAPI/ScrollControlAPI.js +22 -9
- package/src/ATable/ATablePreviewDown/compositionAPI/AriaLabelAPI.js +0 -19
- package/src/ATable/ATablePreviewRight/compositionAPI/AriaLabelAPI.js +0 -19
package/package.json
CHANGED
package/src/AFilters/AFiltersHorizontal/AFiltersHorizontalFilterUi/AFiltersHorizontalFilterUi.js
CHANGED
|
@@ -7,6 +7,7 @@ import ContainerAPI from "./compositionAPI/ContainerAPI";
|
|
|
7
7
|
import FilterSpecificTypeAPI from "./compositionAPI/FilterSpecificTypeAPI";
|
|
8
8
|
import IdAPI from "./compositionAPI/IdAPI";
|
|
9
9
|
import ModelAPI from "./compositionAPI/ModelAPI";
|
|
10
|
+
import UIExcludeRenderAttributesAPI from "../../../ui/compositionApi/UIExcludeRenderAttributesAPI";
|
|
10
11
|
import UpdateDataAPI from "./compositionAPI/UpdateDataAPI";
|
|
11
12
|
|
|
12
13
|
export default {
|
|
@@ -44,6 +45,10 @@ export default {
|
|
|
44
45
|
},
|
|
45
46
|
},
|
|
46
47
|
setup(props) {
|
|
48
|
+
const {
|
|
49
|
+
attributesToExcludeFromRender,
|
|
50
|
+
} = UIExcludeRenderAttributesAPI(props);
|
|
51
|
+
|
|
47
52
|
const {
|
|
48
53
|
isContainer,
|
|
49
54
|
} = ContainerAPI(props);
|
|
@@ -71,6 +76,7 @@ export default {
|
|
|
71
76
|
} = FilterSpecificTypeAPI(props);
|
|
72
77
|
|
|
73
78
|
return {
|
|
79
|
+
attributesToExcludeFromRender,
|
|
74
80
|
componentTypesMapping,
|
|
75
81
|
emitForComponentsWithData,
|
|
76
82
|
filterSpecificAttributes,
|
|
@@ -89,6 +95,7 @@ export default {
|
|
|
89
95
|
...this.filterSpecificAttributes,
|
|
90
96
|
label: this.isLabelVisible ? this.filter.label : undefined,
|
|
91
97
|
...this.emitForComponentsWithData,
|
|
98
|
+
...this.attributesToExcludeFromRender,
|
|
92
99
|
}, this.$slots);
|
|
93
100
|
},
|
|
94
101
|
};
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
} from "vue";
|
|
4
4
|
|
|
5
5
|
import AButton from "../../AButton/AButton";
|
|
6
|
+
import ATranslation from "../../ATranslation/ATranslation";
|
|
6
7
|
|
|
7
|
-
import AriaLabelAPI from "./compositionAPI/AriaLabelAPI";
|
|
8
8
|
import FocusAPI from "./compositionAPI/FocusAPI";
|
|
9
9
|
|
|
10
10
|
export default {
|
|
@@ -23,10 +23,6 @@ export default {
|
|
|
23
23
|
"onTogglePreview",
|
|
24
24
|
],
|
|
25
25
|
setup() {
|
|
26
|
-
const {
|
|
27
|
-
previewAriaLabel,
|
|
28
|
-
} = AriaLabelAPI();
|
|
29
|
-
|
|
30
26
|
const {
|
|
31
27
|
componentRef,
|
|
32
28
|
setFocusToComponent,
|
|
@@ -38,7 +34,6 @@ export default {
|
|
|
38
34
|
|
|
39
35
|
return {
|
|
40
36
|
componentRef,
|
|
41
|
-
previewAriaLabel,
|
|
42
37
|
};
|
|
43
38
|
},
|
|
44
39
|
render() {
|
|
@@ -46,8 +41,11 @@ export default {
|
|
|
46
41
|
ref: "componentRef",
|
|
47
42
|
class: "a_table__preview_down",
|
|
48
43
|
tabindex: -1,
|
|
49
|
-
"aria-label": this.previewAriaLabel,
|
|
50
44
|
}, [
|
|
45
|
+
h(ATranslation, {
|
|
46
|
+
class: "a_sr_only",
|
|
47
|
+
text: "_A_TABLE_PREVIEW_DOWN_ARIA_LABEL_",
|
|
48
|
+
}),
|
|
51
49
|
this.$slots.preview && this.$slots.preview({
|
|
52
50
|
row: this.row,
|
|
53
51
|
rowIndex: this.rowIndex,
|
|
@@ -1,257 +1,254 @@
|
|
|
1
|
-
import {
|
|
2
|
-
h,
|
|
3
|
-
onBeforeUnmount,
|
|
4
|
-
onMounted, toRef,
|
|
5
|
-
} from "vue";
|
|
6
|
-
|
|
7
|
-
import AButton from "../../AButton/AButton";
|
|
8
|
-
import ACloak from "../../ACloak/ACloak";
|
|
9
|
-
import AModal from "../../AModal/AModal";
|
|
10
|
-
import AResizer from "../../AResizer/AResizer";
|
|
11
|
-
import ATranslation from "../../ATranslation/ATranslation";
|
|
12
|
-
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
}),
|
|
249
|
-
h(
|
|
250
|
-
class: "
|
|
251
|
-
},
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
]);
|
|
256
|
-
},
|
|
257
|
-
};
|
|
1
|
+
import {
|
|
2
|
+
h,
|
|
3
|
+
onBeforeUnmount,
|
|
4
|
+
onMounted, toRef,
|
|
5
|
+
} from "vue";
|
|
6
|
+
|
|
7
|
+
import AButton from "../../AButton/AButton";
|
|
8
|
+
import ACloak from "../../ACloak/ACloak";
|
|
9
|
+
import AModal from "../../AModal/AModal";
|
|
10
|
+
import AResizer from "../../AResizer/AResizer";
|
|
11
|
+
import ATranslation from "../../ATranslation/ATranslation";
|
|
12
|
+
|
|
13
|
+
import ArrowsAPI from "./compositionAPI/ArrowsAPI";
|
|
14
|
+
import IdAPI from "./compositionAPI/IdAPI";
|
|
15
|
+
import MouseEventsAPI from "./compositionAPI/MouseEventsAPI";
|
|
16
|
+
import PreviewRightRewAPI from "../compositionAPI/PreviewRightRewAPI";
|
|
17
|
+
import RowAPI from "./compositionAPI/RowAPI";
|
|
18
|
+
|
|
19
|
+
export default {
|
|
20
|
+
name: "ATablePreviewRight",
|
|
21
|
+
props: {
|
|
22
|
+
countAllRows: {
|
|
23
|
+
type: Number,
|
|
24
|
+
required: true,
|
|
25
|
+
},
|
|
26
|
+
disabledPreviewRowCallback: {
|
|
27
|
+
type: Function,
|
|
28
|
+
required: false,
|
|
29
|
+
default: () => {},
|
|
30
|
+
},
|
|
31
|
+
isLoadingTable: {
|
|
32
|
+
type: Boolean,
|
|
33
|
+
required: false,
|
|
34
|
+
},
|
|
35
|
+
isMobile: {
|
|
36
|
+
type: Boolean,
|
|
37
|
+
required: false,
|
|
38
|
+
},
|
|
39
|
+
limitPagination: {
|
|
40
|
+
type: Number,
|
|
41
|
+
required: false,
|
|
42
|
+
default: undefined,
|
|
43
|
+
},
|
|
44
|
+
offsetPagination: {
|
|
45
|
+
type: Number,
|
|
46
|
+
required: false,
|
|
47
|
+
default: undefined,
|
|
48
|
+
},
|
|
49
|
+
previewHeaderTag: {
|
|
50
|
+
type: String,
|
|
51
|
+
required: true,
|
|
52
|
+
},
|
|
53
|
+
previewStyles: {
|
|
54
|
+
type: [String, Object],
|
|
55
|
+
required: false,
|
|
56
|
+
default: undefined,
|
|
57
|
+
},
|
|
58
|
+
rowIndex: {
|
|
59
|
+
type: Number,
|
|
60
|
+
required: true,
|
|
61
|
+
},
|
|
62
|
+
rows: {
|
|
63
|
+
type: Array,
|
|
64
|
+
required: true,
|
|
65
|
+
},
|
|
66
|
+
usePagination: {
|
|
67
|
+
type: Boolean,
|
|
68
|
+
required: false,
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
emits: [
|
|
72
|
+
"closePreview",
|
|
73
|
+
"mousedownResizePreviewRight",
|
|
74
|
+
"mousemoveResizePreviewRight",
|
|
75
|
+
"mouseupResizePreviewRight",
|
|
76
|
+
"togglePreviewResize",
|
|
77
|
+
"togglePreview",
|
|
78
|
+
"update:offset",
|
|
79
|
+
],
|
|
80
|
+
inject: [
|
|
81
|
+
"isLoadingOptions",
|
|
82
|
+
],
|
|
83
|
+
setup(props, context) {
|
|
84
|
+
const isMobile = toRef(props, "isMobile");
|
|
85
|
+
|
|
86
|
+
const {
|
|
87
|
+
previewRef,
|
|
88
|
+
} = PreviewRightRewAPI();
|
|
89
|
+
|
|
90
|
+
const {
|
|
91
|
+
idLocal,
|
|
92
|
+
} = IdAPI();
|
|
93
|
+
|
|
94
|
+
const {
|
|
95
|
+
mousedown,
|
|
96
|
+
mousemove,
|
|
97
|
+
mouseup,
|
|
98
|
+
} = MouseEventsAPI(context, {
|
|
99
|
+
previewRef,
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
const {
|
|
103
|
+
countAllRowsFormatted,
|
|
104
|
+
currentRow,
|
|
105
|
+
nextAvailableRowIndex,
|
|
106
|
+
previousAvailableRowIndex,
|
|
107
|
+
rowNumber,
|
|
108
|
+
rowNumberFormatted,
|
|
109
|
+
} = RowAPI(props);
|
|
110
|
+
|
|
111
|
+
const {
|
|
112
|
+
disabledBtnArrowLeft,
|
|
113
|
+
disabledBtnArrowRight,
|
|
114
|
+
toNextRow,
|
|
115
|
+
toPreviousRow,
|
|
116
|
+
} = ArrowsAPI(props, context, {
|
|
117
|
+
nextAvailableRowIndex,
|
|
118
|
+
previousAvailableRowIndex,
|
|
119
|
+
rowNumber,
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
onMounted(() => {
|
|
123
|
+
if (!isMobile.value) {
|
|
124
|
+
context.emit("togglePreviewResize", {
|
|
125
|
+
isOpen: true,
|
|
126
|
+
previewRef: previewRef.value,
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
onBeforeUnmount(() => {
|
|
132
|
+
if (!isMobile.value) {
|
|
133
|
+
context.emit("togglePreviewResize", {
|
|
134
|
+
isOpen: false,
|
|
135
|
+
previewRef: previewRef.value,
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
return {
|
|
141
|
+
countAllRowsFormatted,
|
|
142
|
+
currentRow,
|
|
143
|
+
disabledBtnArrowLeft,
|
|
144
|
+
disabledBtnArrowRight,
|
|
145
|
+
idLocal,
|
|
146
|
+
mousedown,
|
|
147
|
+
mousemove,
|
|
148
|
+
mouseup,
|
|
149
|
+
previewRef,
|
|
150
|
+
rowNumber,
|
|
151
|
+
rowNumberFormatted,
|
|
152
|
+
toNextRow,
|
|
153
|
+
toPreviousRow,
|
|
154
|
+
};
|
|
155
|
+
},
|
|
156
|
+
render() {
|
|
157
|
+
const HEADER = [
|
|
158
|
+
this.isLoadingTable ?
|
|
159
|
+
h(ACloak) :
|
|
160
|
+
h("div", {}, [
|
|
161
|
+
h(ATranslation, {
|
|
162
|
+
class: "a_table__preview_right__header__text",
|
|
163
|
+
tag: "span",
|
|
164
|
+
text: "_A_TABLE_PREVIEW_RIGHT_HEADER_{{rowNumber}}_{{rowNumberFormatted}}_{{countAllRows}}_{{countAllRowsFormatted}}_",
|
|
165
|
+
extra: {
|
|
166
|
+
rowNumber: this.rowNumber,
|
|
167
|
+
rowNumberFormatted: this.rowNumberFormatted,
|
|
168
|
+
countAllRows: this.countAllRows,
|
|
169
|
+
countAllRowsFormatted: this.countAllRowsFormatted,
|
|
170
|
+
},
|
|
171
|
+
}),
|
|
172
|
+
h("div", {
|
|
173
|
+
class: "a_table__preview_right__header__icons",
|
|
174
|
+
}, [
|
|
175
|
+
h(AButton, {
|
|
176
|
+
class: "a_btn a_btn_transparent_dark a_btn_small",
|
|
177
|
+
disabled: this.disabledBtnArrowLeft,
|
|
178
|
+
iconLeft: "ArrowLeft",
|
|
179
|
+
title: "_A_TABLE_PREVIEW_RIGHT_PREVIOUS_ROW_",
|
|
180
|
+
textScreenReader: "_A_TABLE_PREVIEW_RIGHT_PREVIOUS_ROW_",
|
|
181
|
+
onClick: this.toPreviousRow,
|
|
182
|
+
}),
|
|
183
|
+
h(AButton, {
|
|
184
|
+
class: "a_btn a_btn_transparent_dark a_btn_small",
|
|
185
|
+
disabled: this.disabledBtnArrowRight,
|
|
186
|
+
iconLeft: "ArrowRight",
|
|
187
|
+
title: "_A_TABLE_PREVIEW_RIGHT_NEXT_ROW_",
|
|
188
|
+
textScreenReader: "_A_TABLE_PREVIEW_RIGHT_NEXT_ROW_",
|
|
189
|
+
onClick: this.toNextRow,
|
|
190
|
+
}),
|
|
191
|
+
]),
|
|
192
|
+
]),
|
|
193
|
+
!this.isMobile ? h(AButton, {
|
|
194
|
+
class: "a_btn a_btn_transparent_dark a_table__preview_right__btn_close",
|
|
195
|
+
iconLeft: "Close",
|
|
196
|
+
iconClass: "a_table__preview_right__btn_close__icon",
|
|
197
|
+
title: "_A_TABLE_PREVIEW_RIGHT_CLOSE_",
|
|
198
|
+
textScreenReader: "_A_TABLE_PREVIEW_RIGHT_CLOSE_",
|
|
199
|
+
onClick: () => this.$emit("closePreview"),
|
|
200
|
+
}) : "",
|
|
201
|
+
];
|
|
202
|
+
|
|
203
|
+
const BODY = [
|
|
204
|
+
this.isLoadingTable ? h(ACloak) :
|
|
205
|
+
this.$slots.preview ?
|
|
206
|
+
this.$slots.preview({
|
|
207
|
+
row: this.currentRow,
|
|
208
|
+
rowIndex: this.rowIndex,
|
|
209
|
+
}) :
|
|
210
|
+
h(ATranslation, {
|
|
211
|
+
text: "_A_TABLE_PREVIEW_RIGHT_HAS_NOT_SLOT_",
|
|
212
|
+
}),
|
|
213
|
+
];
|
|
214
|
+
|
|
215
|
+
if (this.isMobile) {
|
|
216
|
+
return h(AModal, {
|
|
217
|
+
hideFooter: true,
|
|
218
|
+
close: () => this.$emit("closePreview"),
|
|
219
|
+
size: "xxl",
|
|
220
|
+
}, {
|
|
221
|
+
modalHeader: () => HEADER,
|
|
222
|
+
modalBody: () => BODY,
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
return h("div", {
|
|
227
|
+
ref: "previewRef",
|
|
228
|
+
id: this.idLocal,
|
|
229
|
+
class: "a_table__preview_right",
|
|
230
|
+
style: this.previewStyles,
|
|
231
|
+
tabindex: -1,
|
|
232
|
+
}, [
|
|
233
|
+
h(AResizer, {
|
|
234
|
+
class: "a_table__preview_right__resizer",
|
|
235
|
+
direction: "x",
|
|
236
|
+
disabled: this.isLoadingOptions,
|
|
237
|
+
onMousedown: this.mousedown,
|
|
238
|
+
onMousemove: this.mousemove,
|
|
239
|
+
onMouseup: this.mouseup,
|
|
240
|
+
onMouseoutDocument: this.mouseup,
|
|
241
|
+
}),
|
|
242
|
+
h(ATranslation, {
|
|
243
|
+
class: "a_sr_only",
|
|
244
|
+
text: "_A_TABLE_PREVIEW_RIGHT_ARIA_LABEL_",
|
|
245
|
+
}),
|
|
246
|
+
h(this.previewHeaderTag, {
|
|
247
|
+
class: "a_table__preview_right__header",
|
|
248
|
+
}, HEADER),
|
|
249
|
+
h("div", {
|
|
250
|
+
class: "a_table__preview_right__body",
|
|
251
|
+
}, BODY),
|
|
252
|
+
]);
|
|
253
|
+
},
|
|
254
|
+
};
|
|
@@ -33,19 +33,23 @@ export default function ScrollControlAPI(props, { emit }, {
|
|
|
33
33
|
|
|
34
34
|
const aTableRef = ref(undefined);
|
|
35
35
|
const columnsVisibleAdditionalSpaceForOneGrow = ref(0);
|
|
36
|
+
const resizeTimeout = ref(undefined);
|
|
36
37
|
const tableWidth = ref(undefined);
|
|
37
38
|
let changingTableWidth = false;
|
|
39
|
+
const delta = 18; // approx scrollbar width
|
|
38
40
|
|
|
39
41
|
const columnActionsWidthMinLocal = computed(() => {
|
|
40
42
|
if (isActionColumnVisible.value) {
|
|
41
43
|
return columnActionsWidthMin.value;
|
|
42
44
|
}
|
|
45
|
+
|
|
43
46
|
return 0;
|
|
44
47
|
});
|
|
45
48
|
|
|
46
49
|
const columnsSpecialWidth = computed(() => {
|
|
47
50
|
const columnMultipleActionsWidth = isMultipleActionsActive.value ? columnActionsWidthMin.value : 0;
|
|
48
|
-
const scrollBarWidth = isSimpleTable.value ? 0 :
|
|
51
|
+
const scrollBarWidth = isSimpleTable.value ? 0 : delta; // delta for table resize when scrollbar appears
|
|
52
|
+
|
|
49
53
|
return columnMultipleActionsWidth + scrollBarWidth;
|
|
50
54
|
});
|
|
51
55
|
|
|
@@ -156,15 +160,24 @@ export default function ScrollControlAPI(props, { emit }, {
|
|
|
156
160
|
const resizeOb = new ResizeObserver(entries => {
|
|
157
161
|
// since we are observing only a single element, so we access the first element in entries array
|
|
158
162
|
// TODO add delta for table resize when scrollbar appears
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
if (!changingTableWidth) {
|
|
162
|
-
changingTableWidth = true;
|
|
163
|
-
tableWidth.value = RECT.width;
|
|
164
|
-
checkVisibleColumns();
|
|
165
|
-
changingTableWidth = false;
|
|
166
|
-
}
|
|
163
|
+
if (resizeTimeout.value) {
|
|
164
|
+
clearTimeout(resizeTimeout.value);
|
|
167
165
|
}
|
|
166
|
+
|
|
167
|
+
resizeTimeout.value = setTimeout(() => {
|
|
168
|
+
const RECT = entries[0].contentRect;
|
|
169
|
+
const tableWidthMissingOrExceededDelta = !tableWidth.value ||
|
|
170
|
+
tableWidth.value > RECT.width + delta ||
|
|
171
|
+
tableWidth.value < RECT.width - delta;
|
|
172
|
+
if (tableWidthMissingOrExceededDelta) {
|
|
173
|
+
if (!changingTableWidth) {
|
|
174
|
+
changingTableWidth = true;
|
|
175
|
+
tableWidth.value = RECT.width;
|
|
176
|
+
checkVisibleColumns();
|
|
177
|
+
changingTableWidth = false;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}, 300);
|
|
168
181
|
});
|
|
169
182
|
|
|
170
183
|
const onWatchMobileScrollControl = newValue => {
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
computed,
|
|
3
|
-
} from "vue";
|
|
4
|
-
|
|
5
|
-
import {
|
|
6
|
-
getTranslatedText,
|
|
7
|
-
} from "../../../ATranslation/compositionAPI/UtilsAPI";
|
|
8
|
-
|
|
9
|
-
export default function AriaLabelAPI() {
|
|
10
|
-
const previewAriaLabel = computed(() => {
|
|
11
|
-
return getTranslatedText({
|
|
12
|
-
placeholder: "_A_TABLE_PREVIEW_DOWN_ARIA_LABEL_",
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
return {
|
|
17
|
-
previewAriaLabel,
|
|
18
|
-
};
|
|
19
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
computed,
|
|
3
|
-
} from "vue";
|
|
4
|
-
|
|
5
|
-
import {
|
|
6
|
-
getTranslatedText,
|
|
7
|
-
} from "../../../ATranslation/compositionAPI/UtilsAPI";
|
|
8
|
-
|
|
9
|
-
export default function AriaLabelAPI() {
|
|
10
|
-
const previewAriaLabel = computed(() => {
|
|
11
|
-
return getTranslatedText({
|
|
12
|
-
placeholder: "_A_TABLE_PREVIEW_RIGHT_ARIA_LABEL_",
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
return {
|
|
17
|
-
previewAriaLabel,
|
|
18
|
-
};
|
|
19
|
-
}
|