@vuetify/nightly 3.6.8-master.2024-06-07 → 3.6.9-master.2024-06-12

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.
Files changed (52) hide show
  1. package/CHANGELOG.md +2 -10
  2. package/dist/json/attributes.json +4 -4
  3. package/dist/json/importMap-labs.json +12 -12
  4. package/dist/json/importMap.json +150 -150
  5. package/dist/json/web-types.json +12 -13
  6. package/dist/vuetify-labs.css +2651 -2651
  7. package/dist/vuetify-labs.d.ts +187 -189
  8. package/dist/vuetify-labs.esm.js +32 -19
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +32 -19
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +1049 -1049
  13. package/dist/vuetify.d.ts +233 -241
  14. package/dist/vuetify.esm.js +20 -13
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +20 -13
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +31 -28
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.d.mts +58 -56
  22. package/lib/blueprints/md1.d.mts +58 -56
  23. package/lib/blueprints/md2.d.mts +58 -56
  24. package/lib/blueprints/md3.d.mts +58 -56
  25. package/lib/components/VFab/VFab.mjs +4 -7
  26. package/lib/components/VFab/VFab.mjs.map +1 -1
  27. package/lib/components/VFab/index.d.mts +46 -49
  28. package/lib/components/VList/VList.mjs +1 -0
  29. package/lib/components/VList/VList.mjs.map +1 -1
  30. package/lib/components/VList/index.d.mts +2 -0
  31. package/lib/components/VMenu/VMenu.mjs +1 -1
  32. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  33. package/lib/components/VOverlay/VOverlay.mjs +4 -3
  34. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  35. package/lib/components/index.d.mts +38 -45
  36. package/lib/composables/goto.mjs.map +1 -1
  37. package/lib/composables/icons.mjs.map +1 -1
  38. package/lib/composables/scroll.mjs +6 -0
  39. package/lib/composables/scroll.mjs.map +1 -1
  40. package/lib/entry-bundler.mjs +1 -1
  41. package/lib/framework.mjs +1 -1
  42. package/lib/index.d.mts +161 -162
  43. package/lib/labs/VStepperVertical/index.d.mts +3 -3
  44. package/lib/labs/VTimePicker/VTimePickerClock.mjs +3 -1
  45. package/lib/labs/VTimePicker/VTimePickerClock.mjs.map +1 -1
  46. package/lib/labs/VTimePicker/VTimePickerControls.mjs +7 -2
  47. package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
  48. package/lib/labs/VTreeview/VTreeview.mjs +3 -4
  49. package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
  50. package/lib/labs/VTreeview/index.d.mts +6 -0
  51. package/lib/labs/components.d.mts +6 -0
  52. package/package.json +1 -1
@@ -1,5 +1,37 @@
1
1
  import { Ref, ComponentPublicInstance, JSXComponent, PropType } from 'vue';
2
2
 
3
+ interface LocaleMessages {
4
+ [key: string]: LocaleMessages | string;
5
+ }
6
+ interface LocaleOptions {
7
+ messages?: LocaleMessages;
8
+ locale?: string;
9
+ fallback?: string;
10
+ adapter?: LocaleInstance;
11
+ }
12
+ interface LocaleInstance {
13
+ name: string;
14
+ messages: Ref<LocaleMessages>;
15
+ current: Ref<string>;
16
+ fallback: Ref<string>;
17
+ t: (key: string, ...params: unknown[]) => string;
18
+ n: (value: number) => string;
19
+ provide: (props: LocaleOptions) => LocaleInstance;
20
+ }
21
+ interface RtlOptions {
22
+ rtl?: Record<string, boolean>;
23
+ }
24
+
25
+ interface InternalGoToOptions {
26
+ container: ComponentPublicInstance | HTMLElement | string;
27
+ duration: number;
28
+ layout: boolean;
29
+ offset: number;
30
+ easing: string | ((t: number) => number);
31
+ patterns: Record<string, (t: number) => number>;
32
+ }
33
+ type GoToOptions = Partial<InternalGoToOptions>;
34
+
3
35
  interface DateAdapter<T = unknown> {
4
36
  date(value?: any): T | null;
5
37
  format(date: T, formatString: string): string;
@@ -45,28 +77,6 @@ interface DateAdapter<T = unknown> {
45
77
  setMinutes(date: T, minutes: number): T;
46
78
  }
47
79
 
48
- interface LocaleMessages {
49
- [key: string]: LocaleMessages | string;
50
- }
51
- interface LocaleOptions {
52
- messages?: LocaleMessages;
53
- locale?: string;
54
- fallback?: string;
55
- adapter?: LocaleInstance;
56
- }
57
- interface LocaleInstance {
58
- name: string;
59
- messages: Ref<LocaleMessages>;
60
- current: Ref<string>;
61
- fallback: Ref<string>;
62
- t: (key: string, ...params: unknown[]) => string;
63
- n: (value: number) => string;
64
- provide: (props: LocaleOptions) => LocaleInstance;
65
- }
66
- interface RtlOptions {
67
- rtl?: Record<string, boolean>;
68
- }
69
-
70
80
  interface DateInstance extends DateModule.InternalAdapter {
71
81
  locale?: any;
72
82
  }
@@ -131,36 +141,6 @@ interface OnColors {
131
141
  'on-info': string;
132
142
  }
133
143
 
134
- declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
135
- type Breakpoint = typeof breakpoints[number];
136
- type DisplayBreakpoint = 'xs' | Breakpoint;
137
- type DisplayThresholds = {
138
- [key in DisplayBreakpoint]: number;
139
- };
140
- interface DisplayOptions {
141
- mobileBreakpoint?: number | DisplayBreakpoint;
142
- thresholds?: Partial<DisplayThresholds>;
143
- }
144
- type SSROptions = boolean | {
145
- clientWidth: number;
146
- clientHeight?: number;
147
- };
148
-
149
- type DefaultsInstance = undefined | {
150
- [key: string]: undefined | Record<string, unknown>;
151
- global?: Record<string, unknown>;
152
- };
153
- type DefaultsOptions = Partial<DefaultsInstance>;
154
-
155
- interface GoToOptions {
156
- container: ComponentPublicInstance | HTMLElement | string;
157
- duration: number;
158
- layout: boolean;
159
- offset: number;
160
- easing: string | ((t: number) => number);
161
- patterns: Record<string, (t: number) => number>;
162
- }
163
-
164
144
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
165
145
  declare const IconValue: PropType<IconValue>;
166
146
  interface IconAliases {
@@ -210,11 +190,33 @@ type IconComponent = JSXComponent<IconProps>;
210
190
  interface IconSet {
211
191
  component: IconComponent;
212
192
  }
213
- type IconOptions = {
214
- defaultSet?: string;
215
- aliases?: Partial<IconAliases>;
216
- sets?: Record<string, IconSet>;
193
+ type InternalIconOptions = {
194
+ defaultSet: string;
195
+ aliases: Partial<IconAliases>;
196
+ sets: Record<string, IconSet>;
217
197
  };
198
+ type IconOptions = Partial<InternalIconOptions>;
199
+
200
+ declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
201
+ type Breakpoint = typeof breakpoints[number];
202
+ type DisplayBreakpoint = 'xs' | Breakpoint;
203
+ type DisplayThresholds = {
204
+ [key in DisplayBreakpoint]: number;
205
+ };
206
+ interface DisplayOptions {
207
+ mobileBreakpoint?: number | DisplayBreakpoint;
208
+ thresholds?: Partial<DisplayThresholds>;
209
+ }
210
+ type SSROptions = boolean | {
211
+ clientWidth: number;
212
+ clientHeight?: number;
213
+ };
214
+
215
+ type DefaultsInstance = undefined | {
216
+ [key: string]: undefined | Record<string, unknown>;
217
+ global?: Record<string, unknown>;
218
+ };
219
+ type DefaultsOptions = Partial<DefaultsInstance>;
218
220
 
219
221
  interface VuetifyOptions {
220
222
  aliases?: Record<string, any>;
@@ -1,5 +1,37 @@
1
1
  import { Ref, ComponentPublicInstance, JSXComponent, PropType } from 'vue';
2
2
 
3
+ interface LocaleMessages {
4
+ [key: string]: LocaleMessages | string;
5
+ }
6
+ interface LocaleOptions {
7
+ messages?: LocaleMessages;
8
+ locale?: string;
9
+ fallback?: string;
10
+ adapter?: LocaleInstance;
11
+ }
12
+ interface LocaleInstance {
13
+ name: string;
14
+ messages: Ref<LocaleMessages>;
15
+ current: Ref<string>;
16
+ fallback: Ref<string>;
17
+ t: (key: string, ...params: unknown[]) => string;
18
+ n: (value: number) => string;
19
+ provide: (props: LocaleOptions) => LocaleInstance;
20
+ }
21
+ interface RtlOptions {
22
+ rtl?: Record<string, boolean>;
23
+ }
24
+
25
+ interface InternalGoToOptions {
26
+ container: ComponentPublicInstance | HTMLElement | string;
27
+ duration: number;
28
+ layout: boolean;
29
+ offset: number;
30
+ easing: string | ((t: number) => number);
31
+ patterns: Record<string, (t: number) => number>;
32
+ }
33
+ type GoToOptions = Partial<InternalGoToOptions>;
34
+
3
35
  interface DateAdapter<T = unknown> {
4
36
  date(value?: any): T | null;
5
37
  format(date: T, formatString: string): string;
@@ -45,28 +77,6 @@ interface DateAdapter<T = unknown> {
45
77
  setMinutes(date: T, minutes: number): T;
46
78
  }
47
79
 
48
- interface LocaleMessages {
49
- [key: string]: LocaleMessages | string;
50
- }
51
- interface LocaleOptions {
52
- messages?: LocaleMessages;
53
- locale?: string;
54
- fallback?: string;
55
- adapter?: LocaleInstance;
56
- }
57
- interface LocaleInstance {
58
- name: string;
59
- messages: Ref<LocaleMessages>;
60
- current: Ref<string>;
61
- fallback: Ref<string>;
62
- t: (key: string, ...params: unknown[]) => string;
63
- n: (value: number) => string;
64
- provide: (props: LocaleOptions) => LocaleInstance;
65
- }
66
- interface RtlOptions {
67
- rtl?: Record<string, boolean>;
68
- }
69
-
70
80
  interface DateInstance extends DateModule.InternalAdapter {
71
81
  locale?: any;
72
82
  }
@@ -131,36 +141,6 @@ interface OnColors {
131
141
  'on-info': string;
132
142
  }
133
143
 
134
- declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
135
- type Breakpoint = typeof breakpoints[number];
136
- type DisplayBreakpoint = 'xs' | Breakpoint;
137
- type DisplayThresholds = {
138
- [key in DisplayBreakpoint]: number;
139
- };
140
- interface DisplayOptions {
141
- mobileBreakpoint?: number | DisplayBreakpoint;
142
- thresholds?: Partial<DisplayThresholds>;
143
- }
144
- type SSROptions = boolean | {
145
- clientWidth: number;
146
- clientHeight?: number;
147
- };
148
-
149
- type DefaultsInstance = undefined | {
150
- [key: string]: undefined | Record<string, unknown>;
151
- global?: Record<string, unknown>;
152
- };
153
- type DefaultsOptions = Partial<DefaultsInstance>;
154
-
155
- interface GoToOptions {
156
- container: ComponentPublicInstance | HTMLElement | string;
157
- duration: number;
158
- layout: boolean;
159
- offset: number;
160
- easing: string | ((t: number) => number);
161
- patterns: Record<string, (t: number) => number>;
162
- }
163
-
164
144
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
165
145
  declare const IconValue: PropType<IconValue>;
166
146
  interface IconAliases {
@@ -210,11 +190,33 @@ type IconComponent = JSXComponent<IconProps>;
210
190
  interface IconSet {
211
191
  component: IconComponent;
212
192
  }
213
- type IconOptions = {
214
- defaultSet?: string;
215
- aliases?: Partial<IconAliases>;
216
- sets?: Record<string, IconSet>;
193
+ type InternalIconOptions = {
194
+ defaultSet: string;
195
+ aliases: Partial<IconAliases>;
196
+ sets: Record<string, IconSet>;
217
197
  };
198
+ type IconOptions = Partial<InternalIconOptions>;
199
+
200
+ declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
201
+ type Breakpoint = typeof breakpoints[number];
202
+ type DisplayBreakpoint = 'xs' | Breakpoint;
203
+ type DisplayThresholds = {
204
+ [key in DisplayBreakpoint]: number;
205
+ };
206
+ interface DisplayOptions {
207
+ mobileBreakpoint?: number | DisplayBreakpoint;
208
+ thresholds?: Partial<DisplayThresholds>;
209
+ }
210
+ type SSROptions = boolean | {
211
+ clientWidth: number;
212
+ clientHeight?: number;
213
+ };
214
+
215
+ type DefaultsInstance = undefined | {
216
+ [key: string]: undefined | Record<string, unknown>;
217
+ global?: Record<string, unknown>;
218
+ };
219
+ type DefaultsOptions = Partial<DefaultsInstance>;
218
220
 
219
221
  interface VuetifyOptions {
220
222
  aliases?: Record<string, any>;
@@ -1,5 +1,37 @@
1
1
  import { Ref, ComponentPublicInstance, JSXComponent, PropType } from 'vue';
2
2
 
3
+ interface LocaleMessages {
4
+ [key: string]: LocaleMessages | string;
5
+ }
6
+ interface LocaleOptions {
7
+ messages?: LocaleMessages;
8
+ locale?: string;
9
+ fallback?: string;
10
+ adapter?: LocaleInstance;
11
+ }
12
+ interface LocaleInstance {
13
+ name: string;
14
+ messages: Ref<LocaleMessages>;
15
+ current: Ref<string>;
16
+ fallback: Ref<string>;
17
+ t: (key: string, ...params: unknown[]) => string;
18
+ n: (value: number) => string;
19
+ provide: (props: LocaleOptions) => LocaleInstance;
20
+ }
21
+ interface RtlOptions {
22
+ rtl?: Record<string, boolean>;
23
+ }
24
+
25
+ interface InternalGoToOptions {
26
+ container: ComponentPublicInstance | HTMLElement | string;
27
+ duration: number;
28
+ layout: boolean;
29
+ offset: number;
30
+ easing: string | ((t: number) => number);
31
+ patterns: Record<string, (t: number) => number>;
32
+ }
33
+ type GoToOptions = Partial<InternalGoToOptions>;
34
+
3
35
  interface DateAdapter<T = unknown> {
4
36
  date(value?: any): T | null;
5
37
  format(date: T, formatString: string): string;
@@ -45,28 +77,6 @@ interface DateAdapter<T = unknown> {
45
77
  setMinutes(date: T, minutes: number): T;
46
78
  }
47
79
 
48
- interface LocaleMessages {
49
- [key: string]: LocaleMessages | string;
50
- }
51
- interface LocaleOptions {
52
- messages?: LocaleMessages;
53
- locale?: string;
54
- fallback?: string;
55
- adapter?: LocaleInstance;
56
- }
57
- interface LocaleInstance {
58
- name: string;
59
- messages: Ref<LocaleMessages>;
60
- current: Ref<string>;
61
- fallback: Ref<string>;
62
- t: (key: string, ...params: unknown[]) => string;
63
- n: (value: number) => string;
64
- provide: (props: LocaleOptions) => LocaleInstance;
65
- }
66
- interface RtlOptions {
67
- rtl?: Record<string, boolean>;
68
- }
69
-
70
80
  interface DateInstance extends DateModule.InternalAdapter {
71
81
  locale?: any;
72
82
  }
@@ -131,36 +141,6 @@ interface OnColors {
131
141
  'on-info': string;
132
142
  }
133
143
 
134
- declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
135
- type Breakpoint = typeof breakpoints[number];
136
- type DisplayBreakpoint = 'xs' | Breakpoint;
137
- type DisplayThresholds = {
138
- [key in DisplayBreakpoint]: number;
139
- };
140
- interface DisplayOptions {
141
- mobileBreakpoint?: number | DisplayBreakpoint;
142
- thresholds?: Partial<DisplayThresholds>;
143
- }
144
- type SSROptions = boolean | {
145
- clientWidth: number;
146
- clientHeight?: number;
147
- };
148
-
149
- type DefaultsInstance = undefined | {
150
- [key: string]: undefined | Record<string, unknown>;
151
- global?: Record<string, unknown>;
152
- };
153
- type DefaultsOptions = Partial<DefaultsInstance>;
154
-
155
- interface GoToOptions {
156
- container: ComponentPublicInstance | HTMLElement | string;
157
- duration: number;
158
- layout: boolean;
159
- offset: number;
160
- easing: string | ((t: number) => number);
161
- patterns: Record<string, (t: number) => number>;
162
- }
163
-
164
144
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
165
145
  declare const IconValue: PropType<IconValue>;
166
146
  interface IconAliases {
@@ -210,11 +190,33 @@ type IconComponent = JSXComponent<IconProps>;
210
190
  interface IconSet {
211
191
  component: IconComponent;
212
192
  }
213
- type IconOptions = {
214
- defaultSet?: string;
215
- aliases?: Partial<IconAliases>;
216
- sets?: Record<string, IconSet>;
193
+ type InternalIconOptions = {
194
+ defaultSet: string;
195
+ aliases: Partial<IconAliases>;
196
+ sets: Record<string, IconSet>;
217
197
  };
198
+ type IconOptions = Partial<InternalIconOptions>;
199
+
200
+ declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
201
+ type Breakpoint = typeof breakpoints[number];
202
+ type DisplayBreakpoint = 'xs' | Breakpoint;
203
+ type DisplayThresholds = {
204
+ [key in DisplayBreakpoint]: number;
205
+ };
206
+ interface DisplayOptions {
207
+ mobileBreakpoint?: number | DisplayBreakpoint;
208
+ thresholds?: Partial<DisplayThresholds>;
209
+ }
210
+ type SSROptions = boolean | {
211
+ clientWidth: number;
212
+ clientHeight?: number;
213
+ };
214
+
215
+ type DefaultsInstance = undefined | {
216
+ [key: string]: undefined | Record<string, unknown>;
217
+ global?: Record<string, unknown>;
218
+ };
219
+ type DefaultsOptions = Partial<DefaultsInstance>;
218
220
 
219
221
  interface VuetifyOptions {
220
222
  aliases?: Record<string, any>;
@@ -1,5 +1,37 @@
1
1
  import { Ref, ComponentPublicInstance, JSXComponent, PropType } from 'vue';
2
2
 
3
+ interface LocaleMessages {
4
+ [key: string]: LocaleMessages | string;
5
+ }
6
+ interface LocaleOptions {
7
+ messages?: LocaleMessages;
8
+ locale?: string;
9
+ fallback?: string;
10
+ adapter?: LocaleInstance;
11
+ }
12
+ interface LocaleInstance {
13
+ name: string;
14
+ messages: Ref<LocaleMessages>;
15
+ current: Ref<string>;
16
+ fallback: Ref<string>;
17
+ t: (key: string, ...params: unknown[]) => string;
18
+ n: (value: number) => string;
19
+ provide: (props: LocaleOptions) => LocaleInstance;
20
+ }
21
+ interface RtlOptions {
22
+ rtl?: Record<string, boolean>;
23
+ }
24
+
25
+ interface InternalGoToOptions {
26
+ container: ComponentPublicInstance | HTMLElement | string;
27
+ duration: number;
28
+ layout: boolean;
29
+ offset: number;
30
+ easing: string | ((t: number) => number);
31
+ patterns: Record<string, (t: number) => number>;
32
+ }
33
+ type GoToOptions = Partial<InternalGoToOptions>;
34
+
3
35
  interface DateAdapter<T = unknown> {
4
36
  date(value?: any): T | null;
5
37
  format(date: T, formatString: string): string;
@@ -45,28 +77,6 @@ interface DateAdapter<T = unknown> {
45
77
  setMinutes(date: T, minutes: number): T;
46
78
  }
47
79
 
48
- interface LocaleMessages {
49
- [key: string]: LocaleMessages | string;
50
- }
51
- interface LocaleOptions {
52
- messages?: LocaleMessages;
53
- locale?: string;
54
- fallback?: string;
55
- adapter?: LocaleInstance;
56
- }
57
- interface LocaleInstance {
58
- name: string;
59
- messages: Ref<LocaleMessages>;
60
- current: Ref<string>;
61
- fallback: Ref<string>;
62
- t: (key: string, ...params: unknown[]) => string;
63
- n: (value: number) => string;
64
- provide: (props: LocaleOptions) => LocaleInstance;
65
- }
66
- interface RtlOptions {
67
- rtl?: Record<string, boolean>;
68
- }
69
-
70
80
  interface DateInstance extends DateModule.InternalAdapter {
71
81
  locale?: any;
72
82
  }
@@ -131,36 +141,6 @@ interface OnColors {
131
141
  'on-info': string;
132
142
  }
133
143
 
134
- declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
135
- type Breakpoint = typeof breakpoints[number];
136
- type DisplayBreakpoint = 'xs' | Breakpoint;
137
- type DisplayThresholds = {
138
- [key in DisplayBreakpoint]: number;
139
- };
140
- interface DisplayOptions {
141
- mobileBreakpoint?: number | DisplayBreakpoint;
142
- thresholds?: Partial<DisplayThresholds>;
143
- }
144
- type SSROptions = boolean | {
145
- clientWidth: number;
146
- clientHeight?: number;
147
- };
148
-
149
- type DefaultsInstance = undefined | {
150
- [key: string]: undefined | Record<string, unknown>;
151
- global?: Record<string, unknown>;
152
- };
153
- type DefaultsOptions = Partial<DefaultsInstance>;
154
-
155
- interface GoToOptions {
156
- container: ComponentPublicInstance | HTMLElement | string;
157
- duration: number;
158
- layout: boolean;
159
- offset: number;
160
- easing: string | ((t: number) => number);
161
- patterns: Record<string, (t: number) => number>;
162
- }
163
-
164
144
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
165
145
  declare const IconValue: PropType<IconValue>;
166
146
  interface IconAliases {
@@ -210,11 +190,33 @@ type IconComponent = JSXComponent<IconProps>;
210
190
  interface IconSet {
211
191
  component: IconComponent;
212
192
  }
213
- type IconOptions = {
214
- defaultSet?: string;
215
- aliases?: Partial<IconAliases>;
216
- sets?: Record<string, IconSet>;
193
+ type InternalIconOptions = {
194
+ defaultSet: string;
195
+ aliases: Partial<IconAliases>;
196
+ sets: Record<string, IconSet>;
217
197
  };
198
+ type IconOptions = Partial<InternalIconOptions>;
199
+
200
+ declare const breakpoints: readonly ["sm", "md", "lg", "xl", "xxl"];
201
+ type Breakpoint = typeof breakpoints[number];
202
+ type DisplayBreakpoint = 'xs' | Breakpoint;
203
+ type DisplayThresholds = {
204
+ [key in DisplayBreakpoint]: number;
205
+ };
206
+ interface DisplayOptions {
207
+ mobileBreakpoint?: number | DisplayBreakpoint;
208
+ thresholds?: Partial<DisplayThresholds>;
209
+ }
210
+ type SSROptions = boolean | {
211
+ clientWidth: number;
212
+ clientHeight?: number;
213
+ };
214
+
215
+ type DefaultsInstance = undefined | {
216
+ [key: string]: undefined | Record<string, unknown>;
217
+ global?: Record<string, unknown>;
218
+ };
219
+ type DefaultsOptions = Partial<DefaultsInstance>;
218
220
 
219
221
  interface VuetifyOptions {
220
222
  aliases?: Record<string, any>;
@@ -5,22 +5,18 @@ import "./VFab.css";
5
5
  // Components
6
6
  import { makeVBtnProps, VBtn } from "../VBtn/VBtn.mjs"; // Composables
7
7
  import { makeLayoutItemProps, useLayoutItem } from "../../composables/layout.mjs";
8
+ import { makeLocationProps } from "../../composables/location.mjs";
8
9
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
9
10
  import { useResizeObserver } from "../../composables/resizeObserver.mjs";
10
11
  import { useToggleScope } from "../../composables/toggleScope.mjs";
11
12
  import { makeTransitionProps, MaybeTransition } from "../../composables/transition.mjs"; // Utilities
12
13
  import { computed, ref, shallowRef, toRef, watchEffect } from 'vue';
13
14
  import { genericComponent, omit, propsFactory, useRender } from "../../util/index.mjs"; // Types
14
- const locations = ['start', 'end', 'left', 'right', 'top', 'bottom'];
15
15
  export const makeVFabProps = propsFactory({
16
16
  app: Boolean,
17
17
  appear: Boolean,
18
18
  extended: Boolean,
19
19
  layout: Boolean,
20
- location: {
21
- type: String,
22
- default: 'bottom end'
23
- },
24
20
  offset: Boolean,
25
21
  modelValue: {
26
22
  type: Boolean,
@@ -30,6 +26,7 @@ export const makeVFabProps = propsFactory({
30
26
  active: true
31
27
  }), ['location']),
32
28
  ...makeLayoutItemProps(),
29
+ ...makeLocationProps(),
33
30
  ...makeTransitionProps({
34
31
  transition: 'fab-transition'
35
32
  })
@@ -56,11 +53,11 @@ export const VFab = genericComponent()({
56
53
  const hasPosition = computed(() => props.app || props.absolute);
57
54
  const position = computed(() => {
58
55
  if (!hasPosition.value) return false;
59
- return props.location.split(' ').shift();
56
+ return props.location?.split(' ').shift() ?? 'bottom';
60
57
  });
61
58
  const orientation = computed(() => {
62
59
  if (!hasPosition.value) return false;
63
- return props.location.split(' ')[1] ?? 'end';
60
+ return props.location?.split(' ')[1] ?? 'end';
64
61
  });
65
62
  useToggleScope(() => props.app, () => {
66
63
  const layout = useLayoutItem({
@@ -1 +1 @@
1
- {"version":3,"file":"VFab.mjs","names":["makeVBtnProps","VBtn","makeLayoutItemProps","useLayoutItem","useProxiedModel","useResizeObserver","useToggleScope","makeTransitionProps","MaybeTransition","computed","ref","shallowRef","toRef","watchEffect","genericComponent","omit","propsFactory","useRender","locations","makeVFabProps","app","Boolean","appear","extended","layout","location","type","String","default","offset","modelValue","active","transition","VFab","name","props","emits","value","setup","_ref","slots","model","height","layoutItemStyles","resizeRef","entries","length","target","clientHeight","hasPosition","absolute","position","split","shift","orientation","id","order","parseInt","layoutSize","elementSize","vFabRef","btnProps","filterProps","_createVNode","class","width","undefined","style","_withDirectives","_mergeProps","_vShow"],"sources":["../../../src/components/VFab/VFab.tsx"],"sourcesContent":["// Styles\nimport './VFab.sass'\n\n// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watchEffect } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, PropType } from 'vue'\nimport type { Position } from '@/composables/layout'\n\nconst locations = ['start', 'end', 'left', 'right', 'top', 'bottom'] as const\n\nexport const makeVFabProps = propsFactory({\n app: Boolean,\n appear: Boolean,\n extended: Boolean,\n layout: Boolean,\n location: {\n type: String as PropType<typeof locations[number]>,\n default: 'bottom end',\n },\n offset: Boolean,\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n ...omit(makeVBtnProps({ active: true }), ['location']),\n ...makeLayoutItemProps(),\n ...makeTransitionProps({ transition: 'fab-transition' }),\n}, 'VFab')\n\nexport const VFab = genericComponent()({\n name: 'VFab',\n\n props: makeVFabProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const height = shallowRef(56)\n const layoutItemStyles = ref()\n\n const { resizeRef } = useResizeObserver(entries => {\n if (!entries.length) return\n height.value = entries[0].target.clientHeight\n })\n\n const hasPosition = computed(() => props.app || props.absolute)\n\n const position = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location.split(' ').shift()\n }) as ComputedRef<Position>\n\n const orientation = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location.split(' ')[1] ?? 'end'\n })\n\n useToggleScope(() => props.app, () => {\n const layout = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position,\n layoutSize: computed(() => props.layout ? height.value + 24 : 0),\n elementSize: computed(() => height.value + 24),\n active: computed(() => props.app && model.value),\n absolute: toRef(props, 'absolute'),\n })\n\n watchEffect(() => {\n layoutItemStyles.value = layout.layoutItemStyles.value\n })\n })\n\n const vFabRef = ref()\n\n useRender(() => {\n const btnProps = VBtn.filterProps(props)\n\n return (\n <div\n ref={ vFabRef }\n class={[\n 'v-fab',\n {\n 'v-fab--absolute': props.absolute,\n 'v-fab--app': !!props.app,\n 'v-fab--extended': props.extended,\n 'v-fab--offset': props.offset,\n [`v-fab--${position.value}`]: hasPosition.value,\n [`v-fab--${orientation.value}`]: hasPosition.value,\n },\n props.class,\n ]}\n style={[\n props.app ? {\n ...layoutItemStyles.value,\n } : {\n height: 'inherit',\n width: undefined,\n },\n props.style,\n ]}\n >\n <div class=\"v-fab__container\">\n <MaybeTransition\n appear={ props.appear }\n transition={ props.transition }\n >\n <VBtn\n v-show={ props.active }\n ref={ resizeRef }\n { ...btnProps }\n active={ undefined }\n location={ undefined }\n v-slots={ slots }\n />\n </MaybeTransition>\n </div>\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VFab = InstanceType<typeof VFab>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VFab.mjs","names":["makeVBtnProps","VBtn","makeLayoutItemProps","useLayoutItem","makeLocationProps","useProxiedModel","useResizeObserver","useToggleScope","makeTransitionProps","MaybeTransition","computed","ref","shallowRef","toRef","watchEffect","genericComponent","omit","propsFactory","useRender","makeVFabProps","app","Boolean","appear","extended","layout","offset","modelValue","type","default","active","transition","VFab","name","props","emits","value","setup","_ref","slots","model","height","layoutItemStyles","resizeRef","entries","length","target","clientHeight","hasPosition","absolute","position","location","split","shift","orientation","id","order","parseInt","layoutSize","elementSize","vFabRef","btnProps","filterProps","_createVNode","class","width","undefined","style","_withDirectives","_mergeProps","_vShow"],"sources":["../../../src/components/VFab/VFab.tsx"],"sourcesContent":["// Styles\nimport './VFab.sass'\n\n// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeLocationProps } from '@/composables/location'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watchEffect } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef } from 'vue'\nimport type { Position } from '@/composables/layout'\n\nexport const makeVFabProps = propsFactory({\n app: Boolean,\n appear: Boolean,\n extended: Boolean,\n layout: Boolean,\n offset: Boolean,\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n ...omit(makeVBtnProps({ active: true }), ['location']),\n ...makeLayoutItemProps(),\n ...makeLocationProps(),\n ...makeTransitionProps({ transition: 'fab-transition' }),\n}, 'VFab')\n\nexport const VFab = genericComponent()({\n name: 'VFab',\n\n props: makeVFabProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const height = shallowRef(56)\n const layoutItemStyles = ref()\n\n const { resizeRef } = useResizeObserver(entries => {\n if (!entries.length) return\n height.value = entries[0].target.clientHeight\n })\n\n const hasPosition = computed(() => props.app || props.absolute)\n\n const position = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location?.split(' ').shift() ?? 'bottom'\n }) as ComputedRef<Position>\n\n const orientation = computed(() => {\n if (!hasPosition.value) return false\n\n return props.location?.split(' ')[1] ?? 'end'\n })\n\n useToggleScope(() => props.app, () => {\n const layout = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position,\n layoutSize: computed(() => props.layout ? height.value + 24 : 0),\n elementSize: computed(() => height.value + 24),\n active: computed(() => props.app && model.value),\n absolute: toRef(props, 'absolute'),\n })\n\n watchEffect(() => {\n layoutItemStyles.value = layout.layoutItemStyles.value\n })\n })\n\n const vFabRef = ref()\n\n useRender(() => {\n const btnProps = VBtn.filterProps(props)\n\n return (\n <div\n ref={ vFabRef }\n class={[\n 'v-fab',\n {\n 'v-fab--absolute': props.absolute,\n 'v-fab--app': !!props.app,\n 'v-fab--extended': props.extended,\n 'v-fab--offset': props.offset,\n [`v-fab--${position.value}`]: hasPosition.value,\n [`v-fab--${orientation.value}`]: hasPosition.value,\n },\n props.class,\n ]}\n style={[\n props.app ? {\n ...layoutItemStyles.value,\n } : {\n height: 'inherit',\n width: undefined,\n },\n props.style,\n ]}\n >\n <div class=\"v-fab__container\">\n <MaybeTransition\n appear={ props.appear }\n transition={ props.transition }\n >\n <VBtn\n v-show={ props.active }\n ref={ resizeRef }\n { ...btnProps }\n active={ undefined }\n location={ undefined }\n v-slots={ slots }\n />\n </MaybeTransition>\n </div>\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VFab = InstanceType<typeof VFab>\n"],"mappings":"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","ignoreList":[]}