@vuetify/nightly 3.6.13-3.7.0-beta.0.0-dev.2024-07-10 → 3.6.13-3.7.0-beta.0.0-dev.2024-07-24
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/CHANGELOG.md +0 -8
- package/dist/json/attributes.json +30 -22
- package/dist/json/importMap-labs.json +12 -12
- package/dist/json/importMap.json +120 -120
- package/dist/json/tags.json +2 -0
- package/dist/json/web-types.json +53 -42
- package/dist/vuetify-labs.css +2160 -2162
- package/dist/vuetify-labs.d.ts +12298 -12189
- package/dist/vuetify-labs.esm.js +59 -29
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +59 -29
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +871 -873
- package/dist/vuetify.d.ts +10357 -10268
- package/dist/vuetify.esm.js +51 -25
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +51 -25
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1043 -1044
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/index.d.mts +55 -55
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.mts +169 -169
- package/lib/components/VAutocomplete/index.d.mts +615 -609
- package/lib/components/VAvatar/index.d.mts +36 -36
- package/lib/components/VBadge/index.d.mts +58 -58
- package/lib/components/VBanner/index.d.mts +59 -59
- package/lib/components/VBottomNavigation/index.d.mts +58 -58
- package/lib/components/VBottomSheet/index.d.mts +118 -118
- package/lib/components/VBreadcrumbs/index.d.mts +34 -34
- package/lib/components/VBtn/VBtn.css +3 -0
- package/lib/components/VBtn/VBtn.sass +3 -0
- package/lib/components/VBtn/index.d.mts +107 -107
- package/lib/components/VBtnGroup/index.d.mts +23 -23
- package/lib/components/VBtnToggle/index.d.mts +40 -40
- package/lib/components/VCard/index.d.mts +93 -93
- package/lib/components/VCarousel/index.d.mts +128 -128
- package/lib/components/VCheckbox/index.d.mts +174 -168
- package/lib/components/VChip/index.d.mts +86 -86
- package/lib/components/VChipGroup/index.d.mts +46 -46
- package/lib/components/VColorPicker/index.d.mts +96 -96
- package/lib/components/VCombobox/index.d.mts +615 -609
- package/lib/components/VConfirmEdit/index.d.mts +2 -2
- package/lib/components/VCounter/index.d.mts +27 -27
- package/lib/components/VDataIterator/index.d.mts +51 -50
- package/lib/components/VDataTable/VDataTable.mjs +10 -3
- package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableServer.mjs +6 -2
- package/lib/components/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.mjs +10 -3
- package/lib/components/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/components/VDataTable/composables/group.mjs +2 -1
- package/lib/components/VDataTable/composables/group.mjs.map +1 -1
- package/lib/components/VDataTable/composables/sort.mjs +4 -4
- package/lib/components/VDataTable/composables/sort.mjs.map +1 -1
- package/lib/components/VDataTable/index.d.mts +275 -274
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +3 -0
- package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
- package/lib/components/VDatePicker/index.d.mts +134 -134
- package/lib/components/VDialog/index.d.mts +353 -353
- package/lib/components/VDivider/index.d.mts +15 -15
- package/lib/components/VEmptyState/index.d.mts +47 -47
- package/lib/components/VExpansionPanel/index.d.mts +134 -134
- package/lib/components/VFab/index.d.mts +227 -227
- package/lib/components/VField/VField.css +6 -11
- package/lib/components/VField/VField.mjs +7 -5
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +2 -6
- package/lib/components/VField/index.d.mts +58 -52
- package/lib/components/VFileInput/index.d.mts +255 -249
- package/lib/components/VFooter/index.d.mts +50 -50
- package/lib/components/VForm/index.d.mts +9 -9
- package/lib/components/VGrid/index.d.mts +150 -150
- package/lib/components/VIcon/index.d.mts +24 -24
- package/lib/components/VImg/index.d.mts +85 -85
- package/lib/components/VInfiniteScroll/index.d.mts +22 -22
- package/lib/components/VInput/VInput.css +5 -5
- package/lib/components/VInput/VInput.mjs +4 -1
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/VInput.sass +1 -1
- package/lib/components/VInput/index.d.mts +61 -55
- package/lib/components/VItemGroup/index.d.mts +17 -17
- package/lib/components/VLabel/index.d.mts +8 -8
- package/lib/components/VLayout/index.d.mts +36 -36
- package/lib/components/VLazy/index.d.mts +31 -31
- package/lib/components/VList/index.d.mts +178 -178
- package/lib/components/VLocaleProvider/index.d.mts +7 -7
- package/lib/components/VMain/index.d.mts +10 -10
- package/lib/components/VMenu/index.d.mts +393 -393
- package/lib/components/VMessages/index.d.mts +20 -20
- package/lib/components/VNavigationDrawer/index.d.mts +72 -72
- package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.mjs +1 -1
- package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
- package/lib/components/VOtpInput/index.d.mts +88 -88
- package/lib/components/VOverlay/index.d.mts +97 -97
- package/lib/components/VPagination/index.d.mts +55 -55
- package/lib/components/VParallax/index.d.mts +7 -7
- package/lib/components/VProgressCircular/index.d.mts +24 -24
- package/lib/components/VProgressLinear/index.d.mts +52 -52
- package/lib/components/VRadio/index.d.mts +41 -41
- package/lib/components/VRadioGroup/index.d.mts +105 -99
- package/lib/components/VRangeSlider/index.d.mts +102 -96
- package/lib/components/VRating/index.d.mts +22 -22
- package/lib/components/VResponsive/index.d.mts +23 -23
- package/lib/components/VSelect/index.d.mts +615 -609
- package/lib/components/VSelectionControl/index.d.mts +43 -43
- package/lib/components/VSelectionControlGroup/index.d.mts +39 -39
- package/lib/components/VSheet/index.d.mts +34 -34
- package/lib/components/VSkeletonLoader/index.d.mts +17 -17
- package/lib/components/VSlideGroup/index.d.mts +33 -33
- package/lib/components/VSlider/index.d.mts +95 -89
- package/lib/components/VSnackbar/index.d.mts +411 -411
- package/lib/components/VSparkline/index.d.mts +38 -38
- package/lib/components/VSpeedDial/index.d.mts +176 -176
- package/lib/components/VStepper/index.d.mts +119 -119
- package/lib/components/VSwitch/index.d.mts +108 -102
- package/lib/components/VSystemBar/index.d.mts +39 -39
- package/lib/components/VTable/index.d.mts +4 -4
- package/lib/components/VTabs/index.d.mts +512 -512
- package/lib/components/VTextField/VTextField.mjs +1 -1
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.mts +421 -415
- package/lib/components/VTextarea/VTextarea.mjs +5 -5
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.mts +359 -344
- package/lib/components/VTimeline/index.d.mts +26 -26
- package/lib/components/VToolbar/index.d.mts +53 -53
- package/lib/components/VTooltip/index.d.mts +424 -424
- package/lib/components/VValidation/index.d.mts +19 -19
- package/lib/components/VVirtualScroll/index.d.mts +10 -10
- package/lib/components/VWindow/index.d.mts +31 -31
- package/lib/components/index.d.mts +10651 -10563
- package/lib/components/transitions/index.d.mts +200 -200
- package/lib/composables/nested/nested.mjs +0 -1
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +69 -68
- package/lib/labs/VCalendar/index.d.mts +52 -52
- package/lib/labs/VDateInput/VDateInput.mjs +6 -3
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -1
- package/lib/labs/VDateInput/index.d.mts +256 -250
- package/lib/labs/VNumberInput/index.d.mts +247 -241
- package/lib/labs/VPicker/index.d.mts +45 -45
- package/lib/labs/VSnackbarQueue/index.d.mts +611 -611
- package/lib/labs/VStepperVertical/index.d.mts +212 -212
- package/lib/labs/VTimePicker/VTimePickerClock.mjs +0 -1
- package/lib/labs/VTimePicker/VTimePickerClock.mjs.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs +2 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
- package/lib/labs/VTimePicker/index.d.mts +131 -122
- package/lib/labs/VTreeview/VTreeviewItem.css +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.sass +2 -5
- package/lib/labs/VTreeview/index.d.mts +199 -199
- package/lib/labs/components.d.mts +1754 -1733
- package/package.json +9 -4
@@ -55,7 +55,7 @@ declare const VConfirmEdit: {
|
|
55
55
|
cancel: () => true;
|
56
56
|
save: (value: any) => true;
|
57
57
|
'update:modelValue': (value: any) => true;
|
58
|
-
}, "v-slot:default" | "
|
58
|
+
}, "$children" | "v-slot:default" | "v-slots" | "modelValue" | "update:modelValue" | "save">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
59
59
|
cancelText: string;
|
60
60
|
okText: string;
|
61
61
|
} & {
|
@@ -117,7 +117,7 @@ declare const VConfirmEdit: {
|
|
117
117
|
cancel: () => true;
|
118
118
|
save: (value: any) => true;
|
119
119
|
'update:modelValue': (value: any) => true;
|
120
|
-
}, "v-slot:default" | "
|
120
|
+
}, "$children" | "v-slot:default" | "v-slots" | "modelValue" | "update:modelValue" | "save">, string, {
|
121
121
|
cancelText: string;
|
122
122
|
okText: string;
|
123
123
|
}, {}, string, vue.SlotsType<Partial<{
|
@@ -12,18 +12,18 @@ type VCounterSlot = {
|
|
12
12
|
};
|
13
13
|
declare const VCounter: {
|
14
14
|
new (...args: any[]): vue.CreateComponentPublicInstance<{
|
15
|
-
style: vue.StyleValue;
|
16
|
-
value: string | number;
|
17
15
|
active: boolean;
|
18
|
-
disabled: boolean;
|
19
16
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
20
17
|
component?: Component | undefined;
|
21
18
|
})> | {
|
22
19
|
component: Component;
|
23
20
|
};
|
21
|
+
value: string | number;
|
22
|
+
style: vue.StyleValue;
|
23
|
+
disabled: boolean;
|
24
24
|
} & {
|
25
|
-
class?: any;
|
26
25
|
max?: string | number | undefined;
|
26
|
+
class?: any;
|
27
27
|
} & {
|
28
28
|
$children?: vue.VNodeChild | {
|
29
29
|
default?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
@@ -34,18 +34,18 @@ declare const VCounter: {
|
|
34
34
|
} & {
|
35
35
|
"v-slot:default"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
36
36
|
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
37
|
-
style: vue.StyleValue;
|
38
|
-
value: string | number;
|
39
37
|
active: boolean;
|
40
|
-
disabled: boolean;
|
41
38
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
42
39
|
component?: Component | undefined;
|
43
40
|
})> | {
|
44
41
|
component: Component;
|
45
42
|
};
|
43
|
+
value: string | number;
|
44
|
+
style: vue.StyleValue;
|
45
|
+
disabled: boolean;
|
46
46
|
} & {
|
47
|
-
class?: any;
|
48
47
|
max?: string | number | undefined;
|
48
|
+
class?: any;
|
49
49
|
} & {
|
50
50
|
$children?: vue.VNodeChild | {
|
51
51
|
default?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
@@ -56,15 +56,15 @@ declare const VCounter: {
|
|
56
56
|
} & {
|
57
57
|
"v-slot:default"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
58
58
|
}, {
|
59
|
-
style: vue.StyleValue;
|
60
|
-
value: string | number;
|
61
59
|
active: boolean;
|
62
|
-
disabled: boolean;
|
63
60
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
64
61
|
component?: Component | undefined;
|
65
62
|
})> | {
|
66
63
|
component: Component;
|
67
64
|
};
|
65
|
+
value: string | number;
|
66
|
+
style: vue.StyleValue;
|
67
|
+
disabled: boolean;
|
68
68
|
}, true, {}, vue.SlotsType<Partial<{
|
69
69
|
default: (arg: VCounterSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
70
70
|
[key: string]: any;
|
@@ -77,18 +77,18 @@ declare const VCounter: {
|
|
77
77
|
M: {};
|
78
78
|
Defaults: {};
|
79
79
|
}, {
|
80
|
-
style: vue.StyleValue;
|
81
|
-
value: string | number;
|
82
80
|
active: boolean;
|
83
|
-
disabled: boolean;
|
84
81
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
85
82
|
component?: Component | undefined;
|
86
83
|
})> | {
|
87
84
|
component: Component;
|
88
85
|
};
|
86
|
+
value: string | number;
|
87
|
+
style: vue.StyleValue;
|
88
|
+
disabled: boolean;
|
89
89
|
} & {
|
90
|
-
class?: any;
|
91
90
|
max?: string | number | undefined;
|
91
|
+
class?: any;
|
92
92
|
} & {
|
93
93
|
$children?: vue.VNodeChild | {
|
94
94
|
default?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
@@ -99,32 +99,32 @@ declare const VCounter: {
|
|
99
99
|
} & {
|
100
100
|
"v-slot:default"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
101
101
|
}, {}, {}, {}, {}, {
|
102
|
-
style: vue.StyleValue;
|
103
|
-
value: string | number;
|
104
102
|
active: boolean;
|
105
|
-
disabled: boolean;
|
106
103
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
107
104
|
component?: Component | undefined;
|
108
105
|
})> | {
|
109
106
|
component: Component;
|
110
107
|
};
|
108
|
+
value: string | number;
|
109
|
+
style: vue.StyleValue;
|
110
|
+
disabled: boolean;
|
111
111
|
}>;
|
112
112
|
__isFragment?: undefined;
|
113
113
|
__isTeleport?: undefined;
|
114
114
|
__isSuspense?: undefined;
|
115
115
|
} & vue.ComponentOptionsBase<{
|
116
|
-
style: vue.StyleValue;
|
117
|
-
value: string | number;
|
118
116
|
active: boolean;
|
119
|
-
disabled: boolean;
|
120
117
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
121
118
|
component?: Component | undefined;
|
122
119
|
})> | {
|
123
120
|
component: Component;
|
124
121
|
};
|
122
|
+
value: string | number;
|
123
|
+
style: vue.StyleValue;
|
124
|
+
disabled: boolean;
|
125
125
|
} & {
|
126
|
-
class?: any;
|
127
126
|
max?: string | number | undefined;
|
127
|
+
class?: any;
|
128
128
|
} & {
|
129
129
|
$children?: vue.VNodeChild | {
|
130
130
|
default?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
@@ -135,15 +135,15 @@ declare const VCounter: {
|
|
135
135
|
} & {
|
136
136
|
"v-slot:default"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined;
|
137
137
|
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
|
138
|
-
style: vue.StyleValue;
|
139
|
-
value: string | number;
|
140
138
|
active: boolean;
|
141
|
-
disabled: boolean;
|
142
139
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
143
140
|
component?: Component | undefined;
|
144
141
|
})> | {
|
145
142
|
component: Component;
|
146
143
|
};
|
144
|
+
value: string | number;
|
145
|
+
style: vue.StyleValue;
|
146
|
+
disabled: boolean;
|
147
147
|
}, {}, string, vue.SlotsType<Partial<{
|
148
148
|
default: (arg: VCounterSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
149
149
|
[key: string]: any;
|
@@ -155,7 +155,7 @@ declare const VCounter: {
|
|
155
155
|
})>;
|
156
156
|
default: string;
|
157
157
|
validator: (val: unknown) => boolean;
|
158
|
-
}, "
|
158
|
+
}, "type" | "default"> & {
|
159
159
|
type: vue.PropType<NonNullable<string | boolean | (vue.TransitionProps & {
|
160
160
|
component?: Component | undefined;
|
161
161
|
})> | {
|
@@ -186,7 +186,7 @@ declare const VCounter: {
|
|
186
186
|
})>;
|
187
187
|
default: string;
|
188
188
|
validator: (val: unknown) => boolean;
|
189
|
-
}, "
|
189
|
+
}, "type" | "default"> & {
|
190
190
|
type: vue.PropType<NonNullable<string | boolean | (vue.TransitionProps & {
|
191
191
|
component?: Component | undefined;
|
192
192
|
})> | {
|
@@ -96,6 +96,7 @@ interface Group<T = any> {
|
|
96
96
|
declare function provideGroupBy(options: {
|
97
97
|
groupBy: Ref<readonly SortItem[]>;
|
98
98
|
sortBy: Ref<readonly SortItem[]>;
|
99
|
+
disableSort?: Ref<boolean>;
|
99
100
|
}): {
|
100
101
|
sortByWithGroups: vue.ComputedRef<SortItem[]>;
|
101
102
|
toggleGroup: (group: Group) => void;
|
@@ -245,10 +246,6 @@ type VDataIteratorSlots<T> = {
|
|
245
246
|
};
|
246
247
|
declare const VDataIterator: {
|
247
248
|
new (...args: any[]): vue.CreateComponentPublicInstance<{
|
248
|
-
style: vue.StyleValue;
|
249
|
-
tag: string;
|
250
|
-
loading: boolean;
|
251
|
-
sortBy: readonly SortItem[];
|
252
249
|
page: string | number;
|
253
250
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
254
251
|
component?: Component | undefined;
|
@@ -256,10 +253,14 @@ declare const VDataIterator: {
|
|
256
253
|
component: Component;
|
257
254
|
hideOnLeave: boolean;
|
258
255
|
};
|
259
|
-
|
256
|
+
loading: boolean;
|
257
|
+
style: vue.StyleValue;
|
260
258
|
expanded: readonly string[];
|
259
|
+
tag: string;
|
260
|
+
sortBy: readonly SortItem[];
|
261
|
+
modelValue: readonly any[];
|
261
262
|
valueComparator: typeof deepEqual;
|
262
|
-
selectStrategy: "
|
263
|
+
selectStrategy: "all" | "page" | "single";
|
263
264
|
returnObject: boolean;
|
264
265
|
filterMode: FilterMode;
|
265
266
|
noFilter: boolean;
|
@@ -297,11 +298,7 @@ declare const VDataIterator: {
|
|
297
298
|
'update:options': (value: any) => boolean;
|
298
299
|
'update:expanded': (value: any) => boolean;
|
299
300
|
'update:currentItems': (value: any) => boolean;
|
300
|
-
}, "v-slot:default" | "
|
301
|
-
style: vue.StyleValue;
|
302
|
-
tag: string;
|
303
|
-
loading: boolean;
|
304
|
-
sortBy: readonly SortItem[];
|
301
|
+
}, "$children" | "v-slot:default" | "v-slots" | "items" | "v-slot:loader" | "v-slot:header" | "v-slot:no-data" | "v-slot:footer">, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
305
302
|
page: string | number;
|
306
303
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
307
304
|
component?: Component | undefined;
|
@@ -309,10 +306,14 @@ declare const VDataIterator: {
|
|
309
306
|
component: Component;
|
310
307
|
hideOnLeave: boolean;
|
311
308
|
};
|
312
|
-
|
309
|
+
loading: boolean;
|
310
|
+
style: vue.StyleValue;
|
313
311
|
expanded: readonly string[];
|
312
|
+
tag: string;
|
313
|
+
sortBy: readonly SortItem[];
|
314
|
+
modelValue: readonly any[];
|
314
315
|
valueComparator: typeof deepEqual;
|
315
|
-
selectStrategy: "
|
316
|
+
selectStrategy: "all" | "page" | "single";
|
316
317
|
returnObject: boolean;
|
317
318
|
filterMode: FilterMode;
|
318
319
|
noFilter: boolean;
|
@@ -342,10 +343,6 @@ declare const VDataIterator: {
|
|
342
343
|
"onUpdate:options"?: ((value: any) => any) | undefined;
|
343
344
|
"onUpdate:currentItems"?: ((value: any) => any) | undefined;
|
344
345
|
}, {
|
345
|
-
style: vue.StyleValue;
|
346
|
-
tag: string;
|
347
|
-
loading: boolean;
|
348
|
-
sortBy: readonly SortItem[];
|
349
346
|
page: string | number;
|
350
347
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
351
348
|
component?: Component | undefined;
|
@@ -353,10 +350,14 @@ declare const VDataIterator: {
|
|
353
350
|
component: Component;
|
354
351
|
hideOnLeave: boolean;
|
355
352
|
};
|
356
|
-
|
353
|
+
loading: boolean;
|
354
|
+
style: vue.StyleValue;
|
357
355
|
expanded: readonly string[];
|
356
|
+
tag: string;
|
357
|
+
sortBy: readonly SortItem[];
|
358
|
+
modelValue: readonly any[];
|
358
359
|
valueComparator: typeof deepEqual;
|
359
|
-
selectStrategy: "
|
360
|
+
selectStrategy: "all" | "page" | "single";
|
360
361
|
returnObject: boolean;
|
361
362
|
filterMode: FilterMode;
|
362
363
|
noFilter: boolean;
|
@@ -393,10 +394,6 @@ declare const VDataIterator: {
|
|
393
394
|
M: {};
|
394
395
|
Defaults: {};
|
395
396
|
}, {
|
396
|
-
style: vue.StyleValue;
|
397
|
-
tag: string;
|
398
|
-
loading: boolean;
|
399
|
-
sortBy: readonly SortItem[];
|
400
397
|
page: string | number;
|
401
398
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
402
399
|
component?: Component | undefined;
|
@@ -404,10 +401,14 @@ declare const VDataIterator: {
|
|
404
401
|
component: Component;
|
405
402
|
hideOnLeave: boolean;
|
406
403
|
};
|
407
|
-
|
404
|
+
loading: boolean;
|
405
|
+
style: vue.StyleValue;
|
408
406
|
expanded: readonly string[];
|
407
|
+
tag: string;
|
408
|
+
sortBy: readonly SortItem[];
|
409
|
+
modelValue: readonly any[];
|
409
410
|
valueComparator: typeof deepEqual;
|
410
|
-
selectStrategy: "
|
411
|
+
selectStrategy: "all" | "page" | "single";
|
411
412
|
returnObject: boolean;
|
412
413
|
filterMode: FilterMode;
|
413
414
|
noFilter: boolean;
|
@@ -437,10 +438,6 @@ declare const VDataIterator: {
|
|
437
438
|
"onUpdate:options"?: ((value: any) => any) | undefined;
|
438
439
|
"onUpdate:currentItems"?: ((value: any) => any) | undefined;
|
439
440
|
}, {}, {}, {}, {}, {
|
440
|
-
style: vue.StyleValue;
|
441
|
-
tag: string;
|
442
|
-
loading: boolean;
|
443
|
-
sortBy: readonly SortItem[];
|
444
441
|
page: string | number;
|
445
442
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
446
443
|
component?: Component | undefined;
|
@@ -448,10 +445,14 @@ declare const VDataIterator: {
|
|
448
445
|
component: Component;
|
449
446
|
hideOnLeave: boolean;
|
450
447
|
};
|
451
|
-
|
448
|
+
loading: boolean;
|
449
|
+
style: vue.StyleValue;
|
452
450
|
expanded: readonly string[];
|
451
|
+
tag: string;
|
452
|
+
sortBy: readonly SortItem[];
|
453
|
+
modelValue: readonly any[];
|
453
454
|
valueComparator: typeof deepEqual;
|
454
|
-
selectStrategy: "
|
455
|
+
selectStrategy: "all" | "page" | "single";
|
455
456
|
returnObject: boolean;
|
456
457
|
filterMode: FilterMode;
|
457
458
|
noFilter: boolean;
|
@@ -469,10 +470,6 @@ declare const VDataIterator: {
|
|
469
470
|
__isTeleport?: undefined;
|
470
471
|
__isSuspense?: undefined;
|
471
472
|
} & vue.ComponentOptionsBase<{
|
472
|
-
style: vue.StyleValue;
|
473
|
-
tag: string;
|
474
|
-
loading: boolean;
|
475
|
-
sortBy: readonly SortItem[];
|
476
473
|
page: string | number;
|
477
474
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
478
475
|
component?: Component | undefined;
|
@@ -480,10 +477,14 @@ declare const VDataIterator: {
|
|
480
477
|
component: Component;
|
481
478
|
hideOnLeave: boolean;
|
482
479
|
};
|
483
|
-
|
480
|
+
loading: boolean;
|
481
|
+
style: vue.StyleValue;
|
484
482
|
expanded: readonly string[];
|
483
|
+
tag: string;
|
484
|
+
sortBy: readonly SortItem[];
|
485
|
+
modelValue: readonly any[];
|
485
486
|
valueComparator: typeof deepEqual;
|
486
|
-
selectStrategy: "
|
487
|
+
selectStrategy: "all" | "page" | "single";
|
487
488
|
returnObject: boolean;
|
488
489
|
filterMode: FilterMode;
|
489
490
|
noFilter: boolean;
|
@@ -521,11 +522,7 @@ declare const VDataIterator: {
|
|
521
522
|
'update:options': (value: any) => boolean;
|
522
523
|
'update:expanded': (value: any) => boolean;
|
523
524
|
'update:currentItems': (value: any) => boolean;
|
524
|
-
}, "v-slot:default" | "
|
525
|
-
style: vue.StyleValue;
|
526
|
-
tag: string;
|
527
|
-
loading: boolean;
|
528
|
-
sortBy: readonly SortItem[];
|
525
|
+
}, "$children" | "v-slot:default" | "v-slots" | "items" | "v-slot:loader" | "v-slot:header" | "v-slot:no-data" | "v-slot:footer">, string, {
|
529
526
|
page: string | number;
|
530
527
|
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
531
528
|
component?: Component | undefined;
|
@@ -533,10 +530,14 @@ declare const VDataIterator: {
|
|
533
530
|
component: Component;
|
534
531
|
hideOnLeave: boolean;
|
535
532
|
};
|
536
|
-
|
533
|
+
loading: boolean;
|
534
|
+
style: vue.StyleValue;
|
537
535
|
expanded: readonly string[];
|
536
|
+
tag: string;
|
537
|
+
sortBy: readonly SortItem[];
|
538
|
+
modelValue: readonly any[];
|
538
539
|
valueComparator: typeof deepEqual;
|
539
|
-
selectStrategy: "
|
540
|
+
selectStrategy: "all" | "page" | "single";
|
540
541
|
returnObject: boolean;
|
541
542
|
filterMode: FilterMode;
|
542
543
|
noFilter: boolean;
|
@@ -576,7 +577,7 @@ declare const VDataIterator: {
|
|
576
577
|
})>;
|
577
578
|
default: string;
|
578
579
|
validator: (val: unknown) => boolean;
|
579
|
-
}, "
|
580
|
+
}, "type" | "default"> & {
|
580
581
|
type: vue.PropType<NonNullable<string | boolean | (vue.TransitionProps & {
|
581
582
|
component?: Component | undefined;
|
582
583
|
})> | {
|
@@ -619,7 +620,7 @@ declare const VDataIterator: {
|
|
619
620
|
itemsPerPage: Omit<{
|
620
621
|
type: (StringConstructor | NumberConstructor)[];
|
621
622
|
default: number;
|
622
|
-
}, "
|
623
|
+
}, "type" | "default"> & {
|
623
624
|
type: vue.PropType<NonNullable<string | number>>;
|
624
625
|
default: NonNullable<string | number>;
|
625
626
|
};
|
@@ -632,7 +633,7 @@ declare const VDataIterator: {
|
|
632
633
|
mustSort: BooleanConstructor;
|
633
634
|
showSelect: BooleanConstructor;
|
634
635
|
selectStrategy: {
|
635
|
-
type: vue.PropType<"
|
636
|
+
type: vue.PropType<"all" | "page" | "single">;
|
636
637
|
default: string;
|
637
638
|
};
|
638
639
|
modelValue: {
|
@@ -670,7 +671,7 @@ declare const VDataIterator: {
|
|
670
671
|
})>;
|
671
672
|
default: string;
|
672
673
|
validator: (val: unknown) => boolean;
|
673
|
-
}, "
|
674
|
+
}, "type" | "default"> & {
|
674
675
|
type: vue.PropType<NonNullable<string | boolean | (vue.TransitionProps & {
|
675
676
|
component?: Component | undefined;
|
676
677
|
})> | {
|
@@ -713,7 +714,7 @@ declare const VDataIterator: {
|
|
713
714
|
itemsPerPage: Omit<{
|
714
715
|
type: (StringConstructor | NumberConstructor)[];
|
715
716
|
default: number;
|
716
|
-
}, "
|
717
|
+
}, "type" | "default"> & {
|
717
718
|
type: vue.PropType<NonNullable<string | number>>;
|
718
719
|
default: NonNullable<string | number>;
|
719
720
|
};
|
@@ -726,7 +727,7 @@ declare const VDataIterator: {
|
|
726
727
|
mustSort: BooleanConstructor;
|
727
728
|
showSelect: BooleanConstructor;
|
728
729
|
selectStrategy: {
|
729
|
-
type: vue.PropType<"
|
730
|
+
type: vue.PropType<"all" | "page" | "single">;
|
730
731
|
default: string;
|
731
732
|
};
|
732
733
|
modelValue: {
|
@@ -18,7 +18,7 @@ import { makeDataTableSelectProps, provideSelection } from "./composables/select
|
|
18
18
|
import { createSort, makeDataTableSortProps, provideSort, useSortedItems } from "./composables/sort.mjs";
|
19
19
|
import { provideDefaults } from "../../composables/defaults.mjs";
|
20
20
|
import { makeFilterProps, useFilter } from "../../composables/filter.mjs"; // Utilities
|
21
|
-
import { computed, toRef } from 'vue';
|
21
|
+
import { computed, toRef, toRefs } from 'vue';
|
22
22
|
import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
23
23
|
export const makeDataTableProps = propsFactory({
|
24
24
|
...makeVDataTableRowsProps(),
|
@@ -72,6 +72,9 @@ export const VDataTable = genericComponent()({
|
|
72
72
|
page,
|
73
73
|
itemsPerPage
|
74
74
|
} = createPagination(props);
|
75
|
+
const {
|
76
|
+
disableSort
|
77
|
+
} = toRefs(props);
|
75
78
|
const {
|
76
79
|
columns,
|
77
80
|
headers,
|
@@ -109,12 +112,16 @@ export const VDataTable = genericComponent()({
|
|
109
112
|
toggleGroup
|
110
113
|
} = provideGroupBy({
|
111
114
|
groupBy,
|
112
|
-
sortBy
|
115
|
+
sortBy,
|
116
|
+
disableSort
|
113
117
|
});
|
114
118
|
const {
|
115
119
|
sortedItems
|
116
120
|
} = useSortedItems(props, filteredItems, sortByWithGroups, {
|
117
|
-
transform: item =>
|
121
|
+
transform: item => ({
|
122
|
+
...item.raw,
|
123
|
+
...item.columns
|
124
|
+
}),
|
118
125
|
sortFunctions,
|
119
126
|
sortRawFunctions
|
120
127
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VDataTable.mjs","names":["makeVDataTableFooterProps","VDataTableFooter","makeVDataTableHeadersProps","VDataTableHeaders","makeVDataTableRowsProps","VDataTableRows","VDivider","makeVTableProps","VTable","makeDataTableExpandProps","provideExpanded","createGroupBy","makeDataTableGroupProps","provideGroupBy","useGroupedItems","createHeaders","makeDataTableHeaderProps","makeDataTableItemsProps","useDataTableItems","useOptions","createPagination","makeDataTablePaginateProps","providePagination","usePaginatedItems","makeDataTableSelectProps","provideSelection","createSort","makeDataTableSortProps","provideSort","useSortedItems","provideDefaults","makeFilterProps","useFilter","computed","toRef","genericComponent","propsFactory","useRender","makeDataTableProps","hideDefaultBody","Boolean","hideDefaultFooter","hideDefaultHeader","width","String","Number","search","makeVDataTableProps","VDataTable","name","props","emits","value","setup","_ref","attrs","slots","groupBy","sortBy","multiSort","mustSort","page","itemsPerPage","columns","headers","sortFunctions","sortRawFunctions","filterFunctions","showSelect","showExpand","items","filteredItems","transform","item","customKeyFilter","toggleSort","sortByWithGroups","opened","extractRows","isGroupOpen","toggleGroup","sortedItems","flatItems","itemsLength","length","startIndex","stopIndex","pageCount","setItemsPerPage","paginatedItems","paginatedItemsWithoutGroups","isSelected","select","selectAll","toggleSelect","someSelected","allSelected","allItems","currentPage","isExpanded","toggleExpand","hideNoData","noDataText","loading","loadingText","slotProps","map","raw","internalItems","groupedItems","dataTableFooterProps","filterProps","dataTableHeadersProps","dataTableRowsProps","tableProps","_createVNode","_mergeProps","class","style","top","default","_Fragment","colgroup","thead","body","tbody","tfoot","bottom","prepend"],"sources":["../../../src/components/VDataTable/VDataTable.tsx"],"sourcesContent":["// Styles\nimport './VDataTable.sass'\n\n// Components\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { makeVDataTableHeadersProps, VDataTableHeaders } from './VDataTableHeaders'\nimport { makeVDataTableRowsProps, VDataTableRows } from './VDataTableRows'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVTableProps, VTable } from '@/components/VTable/VTable'\n\n// Composables\nimport { makeDataTableExpandProps, provideExpanded } from './composables/expand'\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders, makeDataTableHeaderProps } from './composables/headers'\nimport { makeDataTableItemsProps, useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { createPagination, makeDataTablePaginateProps, providePagination, usePaginatedItems } from './composables/paginate'\nimport { makeDataTableSelectProps, provideSelection } from './composables/select'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly, UnwrapRef } from 'vue'\nimport type { Group } from './composables/group'\nimport type { CellProps, DataTableHeader, DataTableItem, InternalDataTableHeader, RowProps } from './types'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport type VDataTableSlotProps<T> = {\n page: number\n itemsPerPage: number\n sortBy: UnwrapRef<ReturnType<typeof provideSort>['sortBy']>\n pageCount: number\n toggleSort: ReturnType<typeof provideSort>['toggleSort']\n setItemsPerPage: ReturnType<typeof providePagination>['setItemsPerPage']\n someSelected: boolean\n allSelected: boolean\n isSelected: ReturnType<typeof provideSelection>['isSelected']\n select: ReturnType<typeof provideSelection>['select']\n selectAll: ReturnType<typeof provideSelection>['selectAll']\n toggleSelect: ReturnType<typeof provideSelection>['toggleSelect']\n isExpanded: ReturnType<typeof provideExpanded>['isExpanded']\n toggleExpand: ReturnType<typeof provideExpanded>['toggleExpand']\n isGroupOpen: ReturnType<typeof provideGroupBy>['isGroupOpen']\n toggleGroup: ReturnType<typeof provideGroupBy>['toggleGroup']\n items: readonly T[]\n internalItems: readonly DataTableItem[]\n groupedItems: readonly (DataTableItem<T> | Group<DataTableItem<T>>)[]\n columns: InternalDataTableHeader[]\n headers: InternalDataTableHeader[][]\n}\n\nexport type VDataTableSlots<T> = VDataTableRowsSlots<T> & VDataTableHeadersSlots & {\n default: VDataTableSlotProps<T>\n colgroup: VDataTableSlotProps<T>\n top: VDataTableSlotProps<T>\n body: VDataTableSlotProps<T>\n tbody: VDataTableSlotProps<T>\n thead: VDataTableSlotProps<T>\n tfoot: VDataTableSlotProps<T>\n bottom: VDataTableSlotProps<T>\n 'body.prepend': VDataTableSlotProps<T>\n 'body.append': VDataTableSlotProps<T>\n 'footer.prepend': never\n}\n\nexport const makeDataTableProps = propsFactory({\n ...makeVDataTableRowsProps(),\n\n hideDefaultBody: Boolean,\n hideDefaultFooter: Boolean,\n hideDefaultHeader: Boolean,\n width: [String, Number],\n search: String,\n\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeDataTableHeaderProps(),\n ...makeDataTableItemsProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...makeVDataTableHeadersProps(),\n ...makeVTableProps(),\n}, 'DataTable')\n\nexport const makeVDataTableProps = propsFactory({\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeFilterProps(),\n ...makeVDataTableFooterProps(),\n}, 'VDataTable')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTable = genericComponent<new <T extends readonly any[], V>(\n props: {\n items?: T\n itemValue?: SelectItemKey<ItemType<T>>\n rowProps?: RowProps<ItemType<T>>\n cellProps?: CellProps<ItemType<T>>\n itemSelectable?: SelectItemKey<ItemType<T>>\n headers?: DeepReadonly<DataTableHeader<ItemType<T>>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableSlots<ItemType<T>>,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VDataTable',\n\n props: makeVDataTableProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n 'update:currentItems': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n\n const {\n columns,\n headers,\n sortFunctions,\n sortRawFunctions,\n filterFunctions,\n } = createHeaders(props, {\n groupBy,\n showSelect: toRef(props, 'showSelect'),\n showExpand: toRef(props, 'showExpand'),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(props, 'search')\n const { filteredItems } = useFilter(props, items, search, {\n transform: item => item.columns,\n customKeyFilter: filterFunctions,\n })\n\n const { toggleSort } = provideSort({ sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, {\n transform: item => item.columns,\n sortFunctions,\n sortRawFunctions,\n })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened)\n const itemsLength = computed(() => flatItems.value.length)\n\n const { startIndex, stopIndex, pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n someSelected,\n allSelected,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(props, 'hideNoData'),\n noDataText: toRef(props, 'noDataText'),\n loading: toRef(props, 'loading'),\n loadingText: toRef(props, 'loadingText'),\n },\n })\n\n const slotProps = computed<VDataTableSlotProps<any>>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value.map(item => item.raw),\n internalItems: paginatedItemsWithoutGroups.value,\n groupedItems: paginatedItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableFooterProps = VDataTableFooter.filterProps(props)\n const dataTableHeadersProps = VDataTableHeaders.filterProps(props)\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n <VTable\n class={[\n 'v-data-table',\n {\n 'v-data-table--show-select': props.showSelect,\n 'v-data-table--loading': props.loading,\n },\n props.class,\n ]}\n style={ props.style }\n { ...tableProps }\n >\n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n <thead key=\"thead\">\n <VDataTableHeaders\n { ...dataTableHeadersProps }\n v-slots={ slots }\n />\n </thead>\n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n <tbody>\n { slots['body.prepend']?.(slotProps.value) }\n { slots.body ? slots.body(slotProps.value) : (\n <VDataTableRows\n { ...attrs }\n { ...dataTableRowsProps }\n items={ paginatedItems.value }\n v-slots={ slots }\n />\n )}\n { slots['body.append']?.(slotProps.value) }\n </tbody>\n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n </>\n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : !props.hideDefaultFooter && (\n <>\n <VDivider />\n\n <VDataTableFooter\n { ...dataTableFooterProps }\n v-slots={{\n prepend: slots['footer.prepend'],\n }}\n />\n </>\n ),\n }}\n </VTable>\n )\n })\n\n return {}\n },\n})\n\nexport type VDataTable = InstanceType<typeof VDataTable>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VDataTable.mjs","names":["makeVDataTableFooterProps","VDataTableFooter","makeVDataTableHeadersProps","VDataTableHeaders","makeVDataTableRowsProps","VDataTableRows","VDivider","makeVTableProps","VTable","makeDataTableExpandProps","provideExpanded","createGroupBy","makeDataTableGroupProps","provideGroupBy","useGroupedItems","createHeaders","makeDataTableHeaderProps","makeDataTableItemsProps","useDataTableItems","useOptions","createPagination","makeDataTablePaginateProps","providePagination","usePaginatedItems","makeDataTableSelectProps","provideSelection","createSort","makeDataTableSortProps","provideSort","useSortedItems","provideDefaults","makeFilterProps","useFilter","computed","toRef","toRefs","genericComponent","propsFactory","useRender","makeDataTableProps","hideDefaultBody","Boolean","hideDefaultFooter","hideDefaultHeader","width","String","Number","search","makeVDataTableProps","VDataTable","name","props","emits","value","setup","_ref","attrs","slots","groupBy","sortBy","multiSort","mustSort","page","itemsPerPage","disableSort","columns","headers","sortFunctions","sortRawFunctions","filterFunctions","showSelect","showExpand","items","filteredItems","transform","item","customKeyFilter","toggleSort","sortByWithGroups","opened","extractRows","isGroupOpen","toggleGroup","sortedItems","raw","flatItems","itemsLength","length","startIndex","stopIndex","pageCount","setItemsPerPage","paginatedItems","paginatedItemsWithoutGroups","isSelected","select","selectAll","toggleSelect","someSelected","allSelected","allItems","currentPage","isExpanded","toggleExpand","hideNoData","noDataText","loading","loadingText","slotProps","map","internalItems","groupedItems","dataTableFooterProps","filterProps","dataTableHeadersProps","dataTableRowsProps","tableProps","_createVNode","_mergeProps","class","style","top","default","_Fragment","colgroup","thead","body","tbody","tfoot","bottom","prepend"],"sources":["../../../src/components/VDataTable/VDataTable.tsx"],"sourcesContent":["// Styles\nimport './VDataTable.sass'\n\n// Components\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { makeVDataTableHeadersProps, VDataTableHeaders } from './VDataTableHeaders'\nimport { makeVDataTableRowsProps, VDataTableRows } from './VDataTableRows'\nimport { VDivider } from '@/components/VDivider'\nimport { makeVTableProps, VTable } from '@/components/VTable/VTable'\n\n// Composables\nimport { makeDataTableExpandProps, provideExpanded } from './composables/expand'\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders, makeDataTableHeaderProps } from './composables/headers'\nimport { makeDataTableItemsProps, useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { createPagination, makeDataTablePaginateProps, providePagination, usePaginatedItems } from './composables/paginate'\nimport { makeDataTableSelectProps, provideSelection } from './composables/select'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\n\n// Utilities\nimport { computed, toRef, toRefs } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { DeepReadonly, UnwrapRef } from 'vue'\nimport type { Group } from './composables/group'\nimport type { CellProps, DataTableHeader, DataTableItem, InternalDataTableHeader, RowProps } from './types'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\nimport type { GenericProps, SelectItemKey } from '@/util'\n\nexport type VDataTableSlotProps<T> = {\n page: number\n itemsPerPage: number\n sortBy: UnwrapRef<ReturnType<typeof provideSort>['sortBy']>\n pageCount: number\n toggleSort: ReturnType<typeof provideSort>['toggleSort']\n setItemsPerPage: ReturnType<typeof providePagination>['setItemsPerPage']\n someSelected: boolean\n allSelected: boolean\n isSelected: ReturnType<typeof provideSelection>['isSelected']\n select: ReturnType<typeof provideSelection>['select']\n selectAll: ReturnType<typeof provideSelection>['selectAll']\n toggleSelect: ReturnType<typeof provideSelection>['toggleSelect']\n isExpanded: ReturnType<typeof provideExpanded>['isExpanded']\n toggleExpand: ReturnType<typeof provideExpanded>['toggleExpand']\n isGroupOpen: ReturnType<typeof provideGroupBy>['isGroupOpen']\n toggleGroup: ReturnType<typeof provideGroupBy>['toggleGroup']\n items: readonly T[]\n internalItems: readonly DataTableItem[]\n groupedItems: readonly (DataTableItem<T> | Group<DataTableItem<T>>)[]\n columns: InternalDataTableHeader[]\n headers: InternalDataTableHeader[][]\n}\n\nexport type VDataTableSlots<T> = VDataTableRowsSlots<T> & VDataTableHeadersSlots & {\n default: VDataTableSlotProps<T>\n colgroup: VDataTableSlotProps<T>\n top: VDataTableSlotProps<T>\n body: VDataTableSlotProps<T>\n tbody: VDataTableSlotProps<T>\n thead: VDataTableSlotProps<T>\n tfoot: VDataTableSlotProps<T>\n bottom: VDataTableSlotProps<T>\n 'body.prepend': VDataTableSlotProps<T>\n 'body.append': VDataTableSlotProps<T>\n 'footer.prepend': never\n}\n\nexport const makeDataTableProps = propsFactory({\n ...makeVDataTableRowsProps(),\n\n hideDefaultBody: Boolean,\n hideDefaultFooter: Boolean,\n hideDefaultHeader: Boolean,\n width: [String, Number],\n search: String,\n\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeDataTableHeaderProps(),\n ...makeDataTableItemsProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...makeVDataTableHeadersProps(),\n ...makeVTableProps(),\n}, 'DataTable')\n\nexport const makeVDataTableProps = propsFactory({\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeFilterProps(),\n ...makeVDataTableFooterProps(),\n}, 'VDataTable')\n\ntype ItemType<T> = T extends readonly (infer U)[] ? U : never\n\nexport const VDataTable = genericComponent<new <T extends readonly any[], V>(\n props: {\n items?: T\n itemValue?: SelectItemKey<ItemType<T>>\n rowProps?: RowProps<ItemType<T>>\n cellProps?: CellProps<ItemType<T>>\n itemSelectable?: SelectItemKey<ItemType<T>>\n headers?: DeepReadonly<DataTableHeader<ItemType<T>>[]>\n modelValue?: V\n 'onUpdate:modelValue'?: (value: V) => void\n },\n slots: VDataTableSlots<ItemType<T>>,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VDataTable',\n\n props: makeVDataTableProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n 'update:currentItems': (value: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { groupBy } = createGroupBy(props)\n const { sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n const { disableSort } = toRefs(props)\n\n const {\n columns,\n headers,\n sortFunctions,\n sortRawFunctions,\n filterFunctions,\n } = createHeaders(props, {\n groupBy,\n showSelect: toRef(props, 'showSelect'),\n showExpand: toRef(props, 'showExpand'),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(props, 'search')\n const { filteredItems } = useFilter(props, items, search, {\n transform: item => item.columns,\n customKeyFilter: filterFunctions,\n })\n\n const { toggleSort } = provideSort({ sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy, disableSort })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups, {\n transform: item => ({ ...item.raw, ...item.columns }),\n sortFunctions,\n sortRawFunctions,\n })\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened)\n const itemsLength = computed(() => flatItems.value.length)\n\n const { startIndex, stopIndex, pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n someSelected,\n allSelected,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(props, 'hideNoData'),\n noDataText: toRef(props, 'noDataText'),\n loading: toRef(props, 'loading'),\n loadingText: toRef(props, 'loadingText'),\n },\n })\n\n const slotProps = computed<VDataTableSlotProps<any>>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value.map(item => item.raw),\n internalItems: paginatedItemsWithoutGroups.value,\n groupedItems: paginatedItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const dataTableFooterProps = VDataTableFooter.filterProps(props)\n const dataTableHeadersProps = VDataTableHeaders.filterProps(props)\n const dataTableRowsProps = VDataTableRows.filterProps(props)\n const tableProps = VTable.filterProps(props)\n\n return (\n <VTable\n class={[\n 'v-data-table',\n {\n 'v-data-table--show-select': props.showSelect,\n 'v-data-table--loading': props.loading,\n },\n props.class,\n ]}\n style={ props.style }\n { ...tableProps }\n >\n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n { !props.hideDefaultHeader && (\n <thead key=\"thead\">\n <VDataTableHeaders\n { ...dataTableHeadersProps }\n v-slots={ slots }\n />\n </thead>\n )}\n { slots.thead?.(slotProps.value) }\n { !props.hideDefaultBody && (\n <tbody>\n { slots['body.prepend']?.(slotProps.value) }\n { slots.body ? slots.body(slotProps.value) : (\n <VDataTableRows\n { ...attrs }\n { ...dataTableRowsProps }\n items={ paginatedItems.value }\n v-slots={ slots }\n />\n )}\n { slots['body.append']?.(slotProps.value) }\n </tbody>\n )}\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n </>\n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : !props.hideDefaultFooter && (\n <>\n <VDivider />\n\n <VDataTableFooter\n { ...dataTableFooterProps }\n v-slots={{\n prepend: slots['footer.prepend'],\n }}\n />\n </>\n ),\n }}\n </VTable>\n )\n })\n\n return {}\n },\n})\n\nexport type VDataTable = InstanceType<typeof VDataTable>\n"],"mappings":"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","ignoreList":[]}
|
@@ -15,7 +15,7 @@ import { createPagination, makeDataTablePaginateProps, providePagination } from
|
|
15
15
|
import { provideSelection } from "./composables/select.mjs";
|
16
16
|
import { createSort, provideSort } from "./composables/sort.mjs";
|
17
17
|
import { provideDefaults } from "../../composables/defaults.mjs"; // Utilities
|
18
|
-
import { computed, provide, toRef } from 'vue';
|
18
|
+
import { computed, provide, toRef, toRefs } from 'vue';
|
19
19
|
import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
20
20
|
export const makeVDataTableServerProps = propsFactory({
|
21
21
|
itemsLength: {
|
@@ -55,6 +55,9 @@ export const VDataTableServer = genericComponent()({
|
|
55
55
|
page,
|
56
56
|
itemsPerPage
|
57
57
|
} = createPagination(props);
|
58
|
+
const {
|
59
|
+
disableSort
|
60
|
+
} = toRefs(props);
|
58
61
|
const itemsLength = computed(() => parseInt(props.itemsLength, 10));
|
59
62
|
const {
|
60
63
|
columns,
|
@@ -82,7 +85,8 @@ export const VDataTableServer = genericComponent()({
|
|
82
85
|
extractRows
|
83
86
|
} = provideGroupBy({
|
84
87
|
groupBy,
|
85
|
-
sortBy
|
88
|
+
sortBy,
|
89
|
+
disableSort
|
86
90
|
});
|
87
91
|
const {
|
88
92
|
pageCount,
|