@vuetify/nightly 3.3.10-master.2023-08-01 → 3.3.11-dev.2023-08-07

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 (216) hide show
  1. package/CHANGELOG.md +18 -10
  2. package/dist/_component-variables-labs.sass +3 -1
  3. package/dist/json/attributes.json +244 -8
  4. package/dist/json/importMap-labs.json +28 -0
  5. package/dist/json/importMap.json +8 -8
  6. package/dist/json/tags.json +91 -0
  7. package/dist/json/web-types.json +793 -9
  8. package/dist/vuetify-labs.css +1403 -200
  9. package/dist/vuetify-labs.d.ts +2962 -356
  10. package/dist/vuetify-labs.esm.js +712 -48
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +712 -48
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.css +1055 -11
  15. package/dist/vuetify.d.ts +232 -83
  16. package/dist/vuetify.esm.js +131 -47
  17. package/dist/vuetify.esm.js.map +1 -1
  18. package/dist/vuetify.js +131 -47
  19. package/dist/vuetify.js.map +1 -1
  20. package/dist/vuetify.min.css +2 -2
  21. package/dist/vuetify.min.js +774 -767
  22. package/dist/vuetify.min.js.map +1 -1
  23. package/lib/components/VAutocomplete/VAutocomplete.mjs +11 -8
  24. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  25. package/lib/components/VAutocomplete/index.d.mts +12 -6
  26. package/lib/components/VAvatar/VAvatar.mjs +2 -1
  27. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  28. package/lib/components/VAvatar/index.d.mts +6 -0
  29. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +9 -4
  30. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  31. package/lib/components/VBreadcrumbs/index.d.mts +28 -2
  32. package/lib/components/VCarousel/index.d.mts +24 -10
  33. package/lib/components/VCheckbox/index.d.mts +12 -0
  34. package/lib/components/VCombobox/VCombobox.mjs +9 -3
  35. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  36. package/lib/components/VCombobox/index.d.mts +12 -6
  37. package/lib/components/VDialog/VDialog.css +15 -6
  38. package/lib/components/VDialog/VDialog.sass +41 -35
  39. package/lib/components/VField/VField.css +6 -2
  40. package/lib/components/VField/VField.sass +6 -2
  41. package/lib/components/VField/index.d.mts +4 -4
  42. package/lib/components/VFileInput/index.d.mts +4 -4
  43. package/lib/components/VImg/VImg.mjs +7 -1
  44. package/lib/components/VImg/VImg.mjs.map +1 -1
  45. package/lib/components/VImg/index.d.mts +12 -0
  46. package/lib/components/VList/index.d.mts +12 -12
  47. package/lib/components/VMenu/VMenu.mjs +29 -4
  48. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  49. package/lib/components/VRadio/index.d.mts +6 -0
  50. package/lib/components/VRangeSlider/VRangeSlider.mjs +4 -2
  51. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  52. package/lib/components/VRangeSlider/index.d.mts +14 -0
  53. package/lib/components/VRating/VRating.mjs +4 -2
  54. package/lib/components/VRating/VRating.mjs.map +1 -1
  55. package/lib/components/VSelect/VSelect.mjs +10 -3
  56. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  57. package/lib/components/VSelect/index.d.mts +12 -6
  58. package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -1
  59. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  60. package/lib/components/VSelectionControl/index.d.mts +6 -0
  61. package/lib/components/VSlider/VSlider.mjs +2 -1
  62. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  63. package/lib/components/VSlider/index.d.mts +14 -0
  64. package/lib/components/VSlider/slider.mjs +5 -1
  65. package/lib/components/VSlider/slider.mjs.map +1 -1
  66. package/lib/components/VSwitch/VSwitch.css +3 -0
  67. package/lib/components/VSwitch/VSwitch.sass +3 -0
  68. package/lib/components/VSwitch/_variables.scss +1 -0
  69. package/lib/components/VSwitch/index.d.mts +6 -0
  70. package/lib/components/VTable/VTable.css +2 -0
  71. package/lib/components/VTable/VTable.sass +2 -0
  72. package/lib/components/VTextField/index.d.mts +16 -16
  73. package/lib/components/VTextarea/index.d.mts +4 -4
  74. package/lib/components/VTimeline/VTimeline.css +2 -2
  75. package/lib/components/VTimeline/VTimeline.sass +2 -2
  76. package/lib/components/VWindow/VWindow.mjs +1 -0
  77. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  78. package/lib/components/VWindow/VWindowItem.mjs +3 -1
  79. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  80. package/lib/components/VWindow/index.d.mts +29 -11
  81. package/lib/components/index.d.mts +223 -81
  82. package/lib/composables/group.mjs +1 -1
  83. package/lib/composables/group.mjs.map +1 -1
  84. package/lib/composables/theme.mjs +12 -6
  85. package/lib/composables/theme.mjs.map +1 -1
  86. package/lib/entry-bundler.mjs +1 -1
  87. package/lib/entry-bundler.mjs.map +1 -1
  88. package/lib/framework.mjs +1 -1
  89. package/lib/framework.mjs.map +1 -1
  90. package/lib/index.d.mts +9 -2
  91. package/lib/labs/VDateInput/index.d.mts +4 -4
  92. package/lib/labs/VDateRangePicker/VDateRangePickerHeader.mjs +2 -2
  93. package/lib/labs/VDateRangePicker/VDateRangePickerHeader.mjs.map +1 -1
  94. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +0 -1
  95. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  96. package/lib/labs/VOtpInput/VOtpInput.css +53 -0
  97. package/lib/labs/VOtpInput/VOtpInput.mjs +215 -0
  98. package/lib/labs/VOtpInput/VOtpInput.mjs.map +1 -0
  99. package/lib/labs/VOtpInput/VOtpInput.sass +55 -0
  100. package/lib/labs/VOtpInput/_variables.scss +2 -0
  101. package/lib/labs/VOtpInput/index.d.mts +459 -0
  102. package/lib/labs/VOtpInput/index.mjs +2 -0
  103. package/lib/labs/VOtpInput/index.mjs.map +1 -0
  104. package/lib/labs/VStepper/VStepper.css +42 -0
  105. package/lib/labs/VStepper/VStepper.mjs +150 -0
  106. package/lib/labs/VStepper/VStepper.mjs.map +1 -0
  107. package/lib/labs/VStepper/VStepper.sass +44 -0
  108. package/lib/labs/VStepper/VStepperActions.mjs +61 -0
  109. package/lib/labs/VStepper/VStepperActions.mjs.map +1 -0
  110. package/lib/labs/VStepper/VStepperHeader.mjs +4 -0
  111. package/lib/labs/VStepper/VStepperHeader.mjs.map +1 -0
  112. package/lib/labs/VStepper/VStepperItem.css +67 -0
  113. package/lib/labs/VStepper/VStepperItem.mjs +114 -0
  114. package/lib/labs/VStepper/VStepperItem.mjs.map +1 -0
  115. package/lib/labs/VStepper/VStepperItem.sass +71 -0
  116. package/lib/labs/VStepper/VStepperWindow.mjs +50 -0
  117. package/lib/labs/VStepper/VStepperWindow.mjs.map +1 -0
  118. package/lib/labs/VStepper/VStepperWindowItem.mjs +24 -0
  119. package/lib/labs/VStepper/VStepperWindowItem.mjs.map +1 -0
  120. package/lib/labs/VStepper/_variables.scss +4 -0
  121. package/lib/labs/VStepper/index.d.mts +2045 -0
  122. package/lib/labs/VStepper/index.mjs +7 -0
  123. package/lib/labs/VStepper/index.mjs.map +1 -0
  124. package/lib/labs/components.d.mts +2745 -267
  125. package/lib/labs/components.mjs +2 -0
  126. package/lib/labs/components.mjs.map +1 -1
  127. package/lib/locale/af.mjs +6 -1
  128. package/lib/locale/af.mjs.map +1 -1
  129. package/lib/locale/ar.mjs +6 -1
  130. package/lib/locale/ar.mjs.map +1 -1
  131. package/lib/locale/az.mjs +6 -1
  132. package/lib/locale/az.mjs.map +1 -1
  133. package/lib/locale/bg.mjs +6 -1
  134. package/lib/locale/bg.mjs.map +1 -1
  135. package/lib/locale/ca.mjs +6 -1
  136. package/lib/locale/ca.mjs.map +1 -1
  137. package/lib/locale/ckb.mjs +6 -1
  138. package/lib/locale/ckb.mjs.map +1 -1
  139. package/lib/locale/cs.mjs +6 -1
  140. package/lib/locale/cs.mjs.map +1 -1
  141. package/lib/locale/da.mjs +6 -1
  142. package/lib/locale/da.mjs.map +1 -1
  143. package/lib/locale/de.mjs +6 -1
  144. package/lib/locale/de.mjs.map +1 -1
  145. package/lib/locale/el.mjs +6 -1
  146. package/lib/locale/el.mjs.map +1 -1
  147. package/lib/locale/en.mjs +6 -1
  148. package/lib/locale/en.mjs.map +1 -1
  149. package/lib/locale/es.mjs +6 -1
  150. package/lib/locale/es.mjs.map +1 -1
  151. package/lib/locale/et.mjs +6 -1
  152. package/lib/locale/et.mjs.map +1 -1
  153. package/lib/locale/fa.mjs +6 -1
  154. package/lib/locale/fa.mjs.map +1 -1
  155. package/lib/locale/fi.mjs +6 -1
  156. package/lib/locale/fi.mjs.map +1 -1
  157. package/lib/locale/fr.mjs +6 -1
  158. package/lib/locale/fr.mjs.map +1 -1
  159. package/lib/locale/he.mjs +6 -1
  160. package/lib/locale/he.mjs.map +1 -1
  161. package/lib/locale/hr.mjs +6 -1
  162. package/lib/locale/hr.mjs.map +1 -1
  163. package/lib/locale/hu.mjs +6 -1
  164. package/lib/locale/hu.mjs.map +1 -1
  165. package/lib/locale/id.mjs +6 -1
  166. package/lib/locale/id.mjs.map +1 -1
  167. package/lib/locale/index.d.mts +210 -0
  168. package/lib/locale/it.mjs +6 -1
  169. package/lib/locale/it.mjs.map +1 -1
  170. package/lib/locale/ja.mjs +6 -1
  171. package/lib/locale/ja.mjs.map +1 -1
  172. package/lib/locale/ko.mjs +6 -1
  173. package/lib/locale/ko.mjs.map +1 -1
  174. package/lib/locale/lt.mjs +6 -1
  175. package/lib/locale/lt.mjs.map +1 -1
  176. package/lib/locale/lv.mjs +6 -1
  177. package/lib/locale/lv.mjs.map +1 -1
  178. package/lib/locale/nl.mjs +6 -1
  179. package/lib/locale/nl.mjs.map +1 -1
  180. package/lib/locale/no.mjs +6 -1
  181. package/lib/locale/no.mjs.map +1 -1
  182. package/lib/locale/pl.mjs +6 -1
  183. package/lib/locale/pl.mjs.map +1 -1
  184. package/lib/locale/pt.mjs +6 -1
  185. package/lib/locale/pt.mjs.map +1 -1
  186. package/lib/locale/ro.mjs +23 -18
  187. package/lib/locale/ro.mjs.map +1 -1
  188. package/lib/locale/ru.mjs +6 -1
  189. package/lib/locale/ru.mjs.map +1 -1
  190. package/lib/locale/sk.mjs +6 -1
  191. package/lib/locale/sk.mjs.map +1 -1
  192. package/lib/locale/sl.mjs +6 -1
  193. package/lib/locale/sl.mjs.map +1 -1
  194. package/lib/locale/sr-Cyrl.mjs +6 -1
  195. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  196. package/lib/locale/sr-Latn.mjs +6 -1
  197. package/lib/locale/sr-Latn.mjs.map +1 -1
  198. package/lib/locale/sv.mjs +6 -1
  199. package/lib/locale/sv.mjs.map +1 -1
  200. package/lib/locale/th.mjs +6 -1
  201. package/lib/locale/th.mjs.map +1 -1
  202. package/lib/locale/tr.mjs +6 -1
  203. package/lib/locale/tr.mjs.map +1 -1
  204. package/lib/locale/uk.mjs +6 -1
  205. package/lib/locale/uk.mjs.map +1 -1
  206. package/lib/locale/vi.mjs +6 -1
  207. package/lib/locale/vi.mjs.map +1 -1
  208. package/lib/locale/zh-Hans.mjs +6 -1
  209. package/lib/locale/zh-Hans.mjs.map +1 -1
  210. package/lib/locale/zh-Hant.mjs +6 -1
  211. package/lib/locale/zh-Hant.mjs.map +1 -1
  212. package/lib/styles/main.css +1026 -0
  213. package/lib/styles/settings/_utilities.scss +20 -0
  214. package/lib/util/helpers.mjs +20 -9
  215. package/lib/util/helpers.mjs.map +1 -1
  216. package/package.json +1 -1
@@ -0,0 +1,459 @@
1
+ import * as vue from 'vue';
2
+ import { ComponentPropsOptions, ExtractPropTypes, PropType } from 'vue';
3
+
4
+ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions>, Props = ExtractPropTypes<PropsOptions>> {
5
+ filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): [yes: Partial<Pick<T, U>>, no: Omit<T, U>];
6
+ }
7
+
8
+ type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | F[];
9
+ declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T, (...args: T) => any>>;
10
+
11
+ declare const VOtpInput: {
12
+ new (...args: any[]): {
13
+ $: vue.ComponentInternalInstance;
14
+ $data: {};
15
+ $props: {
16
+ length?: string | number | undefined;
17
+ type?: "number" | "text" | "password" | undefined;
18
+ error?: boolean | undefined;
19
+ label?: string | undefined;
20
+ style?: vue.StyleValue | undefined;
21
+ autofocus?: boolean | undefined;
22
+ disabled?: boolean | undefined;
23
+ rounded?: string | number | boolean | undefined;
24
+ variant?: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled"> | undefined;
25
+ modelValue?: string | number | undefined;
26
+ focused?: boolean | undefined;
27
+ focusAll?: boolean | undefined;
28
+ key?: string | number | symbol | undefined;
29
+ height?: string | number | undefined;
30
+ width?: string | number | undefined;
31
+ color?: string | undefined;
32
+ maxHeight?: string | number | undefined;
33
+ maxWidth?: string | number | undefined;
34
+ minHeight?: string | number | undefined;
35
+ minWidth?: string | number | undefined;
36
+ loading?: string | boolean | undefined;
37
+ class?: any;
38
+ placeholder?: string | undefined;
39
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
40
+ default?: (() => vue.VNodeChild) | undefined;
41
+ loader?: (() => vue.VNodeChild) | undefined;
42
+ };
43
+ ref?: vue.VNodeRef | undefined;
44
+ ref_for?: boolean | undefined;
45
+ ref_key?: string | undefined;
46
+ theme?: string | undefined;
47
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
48
+ divider?: string | undefined;
49
+ 'v-slots'?: {
50
+ default?: false | (() => vue.VNodeChild) | undefined;
51
+ loader?: false | (() => vue.VNodeChild) | undefined;
52
+ } | undefined;
53
+ onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
54
+ [key: string]: any;
55
+ }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
56
+ [key: string]: any;
57
+ }>) => void)[] | undefined;
58
+ onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
59
+ [key: string]: any;
60
+ }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
61
+ [key: string]: any;
62
+ }>) => void)[] | undefined;
63
+ onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
64
+ [key: string]: any;
65
+ }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
66
+ [key: string]: any;
67
+ }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
68
+ [key: string]: any;
69
+ }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
70
+ [key: string]: any;
71
+ }>) => void)[] | undefined;
72
+ onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
73
+ [key: string]: any;
74
+ }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
75
+ [key: string]: any;
76
+ }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
77
+ [key: string]: any;
78
+ }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
79
+ [key: string]: any;
80
+ }>) => void)[] | undefined;
81
+ onVnodeBeforeUnmount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
82
+ [key: string]: any;
83
+ }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
84
+ [key: string]: any;
85
+ }>) => void)[] | undefined;
86
+ onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
87
+ [key: string]: any;
88
+ }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
89
+ [key: string]: any;
90
+ }>) => void)[] | undefined;
91
+ "onUpdate:modelValue"?: ((val: string) => any) | undefined;
92
+ bgColor?: string | undefined;
93
+ "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
94
+ baseColor?: string | undefined;
95
+ 'onUpdate:focused'?: (EventProp<[boolean], (args_0: boolean) => any> & ((val: boolean) => any)) | undefined;
96
+ onFinish?: ((val: string) => any) | undefined;
97
+ };
98
+ $attrs: {
99
+ [x: string]: unknown;
100
+ };
101
+ $refs: {
102
+ [x: string]: unknown;
103
+ };
104
+ $slots: Readonly<{
105
+ default?: (() => vue.VNode<vue.RendererNode, vue.RendererElement, {
106
+ [key: string]: any;
107
+ }>[]) | undefined;
108
+ loader?: (() => vue.VNode<vue.RendererNode, vue.RendererElement, {
109
+ [key: string]: any;
110
+ }>[]) | undefined;
111
+ }>;
112
+ $root: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
113
+ $parent: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
114
+ $emit: ((event: "finish", val: string) => void) & ((event: "update:modelValue", val: string) => void) & ((event: "update:focused", val: boolean) => void);
115
+ $el: any;
116
+ $options: vue.ComponentOptionsBase<{
117
+ length: string | number;
118
+ type: "number" | "text" | "password";
119
+ error: boolean;
120
+ label: string;
121
+ style: vue.StyleValue;
122
+ autofocus: boolean;
123
+ disabled: boolean;
124
+ variant: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
125
+ focused: boolean;
126
+ focusAll: boolean;
127
+ } & {
128
+ height?: string | number | undefined;
129
+ width?: string | number | undefined;
130
+ color?: string | undefined;
131
+ maxHeight?: string | number | undefined;
132
+ maxWidth?: string | number | undefined;
133
+ minHeight?: string | number | undefined;
134
+ minWidth?: string | number | undefined;
135
+ loading?: string | boolean | undefined;
136
+ class?: any;
137
+ placeholder?: string | undefined;
138
+ theme?: string | undefined;
139
+ divider?: string | undefined;
140
+ rounded?: string | number | boolean | undefined;
141
+ modelValue?: string | number | undefined;
142
+ bgColor?: string | undefined;
143
+ baseColor?: string | undefined;
144
+ 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
145
+ } & {
146
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
147
+ default?: (() => vue.VNodeChild) | undefined;
148
+ loader?: (() => vue.VNodeChild) | undefined;
149
+ };
150
+ 'v-slots'?: {
151
+ default?: false | (() => vue.VNodeChild) | undefined;
152
+ loader?: false | (() => vue.VNodeChild) | undefined;
153
+ } | undefined;
154
+ } & {
155
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
156
+ "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
157
+ } & {
158
+ "onUpdate:modelValue"?: ((val: string) => any) | undefined;
159
+ "onUpdate:focused"?: ((val: boolean) => any) | undefined;
160
+ onFinish?: ((val: string) => any) | undefined;
161
+ }, {
162
+ blur: () => void;
163
+ focus: () => void;
164
+ reset: () => void;
165
+ isFocused: vue.Ref<boolean> & {
166
+ readonly externalValue: boolean;
167
+ };
168
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
169
+ finish: (val: string) => true;
170
+ 'update:focused': (val: boolean) => true;
171
+ 'update:modelValue': (val: string) => true;
172
+ }, string, {
173
+ length: string | number;
174
+ type: "number" | "text" | "password";
175
+ error: boolean;
176
+ label: string;
177
+ style: vue.StyleValue;
178
+ autofocus: boolean;
179
+ disabled: boolean;
180
+ rounded: string | number | boolean;
181
+ variant: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
182
+ modelValue: string | number;
183
+ focused: boolean;
184
+ focusAll: boolean;
185
+ }, {}, string, vue.SlotsType<Partial<{
186
+ default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
187
+ [key: string]: any;
188
+ }>[];
189
+ loader: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
190
+ [key: string]: any;
191
+ }>[];
192
+ }>>> & {
193
+ beforeCreate?: ((() => void) | (() => void)[]) | undefined;
194
+ created?: ((() => void) | (() => void)[]) | undefined;
195
+ beforeMount?: ((() => void) | (() => void)[]) | undefined;
196
+ mounted?: ((() => void) | (() => void)[]) | undefined;
197
+ beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
198
+ updated?: ((() => void) | (() => void)[]) | undefined;
199
+ activated?: ((() => void) | (() => void)[]) | undefined;
200
+ deactivated?: ((() => void) | (() => void)[]) | undefined;
201
+ beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
202
+ beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
203
+ destroyed?: ((() => void) | (() => void)[]) | undefined;
204
+ unmounted?: ((() => void) | (() => void)[]) | undefined;
205
+ renderTracked?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
206
+ renderTriggered?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
207
+ errorCaptured?: (((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void)[]) | undefined;
208
+ };
209
+ $forceUpdate: () => void;
210
+ $nextTick: typeof vue.nextTick;
211
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: vue.WatchOptions<boolean> | undefined): vue.WatchStopHandle;
212
+ } & {
213
+ length: string | number;
214
+ type: "number" | "text" | "password";
215
+ error: boolean;
216
+ label: string;
217
+ style: vue.StyleValue;
218
+ autofocus: boolean;
219
+ disabled: boolean;
220
+ variant: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
221
+ focused: boolean;
222
+ focusAll: boolean;
223
+ } & {
224
+ height?: string | number | undefined;
225
+ width?: string | number | undefined;
226
+ color?: string | undefined;
227
+ maxHeight?: string | number | undefined;
228
+ maxWidth?: string | number | undefined;
229
+ minHeight?: string | number | undefined;
230
+ minWidth?: string | number | undefined;
231
+ loading?: string | boolean | undefined;
232
+ class?: any;
233
+ placeholder?: string | undefined;
234
+ theme?: string | undefined;
235
+ divider?: string | undefined;
236
+ rounded?: string | number | boolean | undefined;
237
+ modelValue?: string | number | undefined;
238
+ bgColor?: string | undefined;
239
+ baseColor?: string | undefined;
240
+ 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
241
+ } & {
242
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
243
+ default?: (() => vue.VNodeChild) | undefined;
244
+ loader?: (() => vue.VNodeChild) | undefined;
245
+ };
246
+ 'v-slots'?: {
247
+ default?: false | (() => vue.VNodeChild) | undefined;
248
+ loader?: false | (() => vue.VNodeChild) | undefined;
249
+ } | undefined;
250
+ } & {
251
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
252
+ "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
253
+ } & {
254
+ "onUpdate:modelValue"?: ((val: string) => any) | undefined;
255
+ "onUpdate:focused"?: ((val: boolean) => any) | undefined;
256
+ onFinish?: ((val: string) => any) | undefined;
257
+ } & vue.ShallowUnwrapRef<{
258
+ blur: () => void;
259
+ focus: () => void;
260
+ reset: () => void;
261
+ isFocused: vue.Ref<boolean> & {
262
+ readonly externalValue: boolean;
263
+ };
264
+ }> & {} & vue.ComponentCustomProperties & {};
265
+ __isFragment?: undefined;
266
+ __isTeleport?: undefined;
267
+ __isSuspense?: undefined;
268
+ } & vue.ComponentOptionsBase<{
269
+ length: string | number;
270
+ type: "number" | "text" | "password";
271
+ error: boolean;
272
+ label: string;
273
+ style: vue.StyleValue;
274
+ autofocus: boolean;
275
+ disabled: boolean;
276
+ variant: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
277
+ focused: boolean;
278
+ focusAll: boolean;
279
+ } & {
280
+ height?: string | number | undefined;
281
+ width?: string | number | undefined;
282
+ color?: string | undefined;
283
+ maxHeight?: string | number | undefined;
284
+ maxWidth?: string | number | undefined;
285
+ minHeight?: string | number | undefined;
286
+ minWidth?: string | number | undefined;
287
+ loading?: string | boolean | undefined;
288
+ class?: any;
289
+ placeholder?: string | undefined;
290
+ theme?: string | undefined;
291
+ divider?: string | undefined;
292
+ rounded?: string | number | boolean | undefined;
293
+ modelValue?: string | number | undefined;
294
+ bgColor?: string | undefined;
295
+ baseColor?: string | undefined;
296
+ 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
297
+ } & {
298
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
299
+ default?: (() => vue.VNodeChild) | undefined;
300
+ loader?: (() => vue.VNodeChild) | undefined;
301
+ };
302
+ 'v-slots'?: {
303
+ default?: false | (() => vue.VNodeChild) | undefined;
304
+ loader?: false | (() => vue.VNodeChild) | undefined;
305
+ } | undefined;
306
+ } & {
307
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
308
+ "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
309
+ } & {
310
+ "onUpdate:modelValue"?: ((val: string) => any) | undefined;
311
+ "onUpdate:focused"?: ((val: boolean) => any) | undefined;
312
+ onFinish?: ((val: string) => any) | undefined;
313
+ }, {
314
+ blur: () => void;
315
+ focus: () => void;
316
+ reset: () => void;
317
+ isFocused: vue.Ref<boolean> & {
318
+ readonly externalValue: boolean;
319
+ };
320
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
321
+ finish: (val: string) => true;
322
+ 'update:focused': (val: boolean) => true;
323
+ 'update:modelValue': (val: string) => true;
324
+ }, string, {
325
+ length: string | number;
326
+ type: "number" | "text" | "password";
327
+ error: boolean;
328
+ label: string;
329
+ style: vue.StyleValue;
330
+ autofocus: boolean;
331
+ disabled: boolean;
332
+ rounded: string | number | boolean;
333
+ variant: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
334
+ modelValue: string | number;
335
+ focused: boolean;
336
+ focusAll: boolean;
337
+ }, {}, string, vue.SlotsType<Partial<{
338
+ default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
339
+ [key: string]: any;
340
+ }>[];
341
+ loader: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
342
+ [key: string]: any;
343
+ }>[];
344
+ }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
345
+ error: BooleanConstructor;
346
+ color: StringConstructor;
347
+ loading: (StringConstructor | BooleanConstructor)[];
348
+ style: {
349
+ type: PropType<vue.StyleValue>;
350
+ default: null;
351
+ };
352
+ disabled: {
353
+ type: BooleanConstructor;
354
+ default: null;
355
+ };
356
+ class: PropType<any>;
357
+ theme: StringConstructor;
358
+ rounded: {
359
+ type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
360
+ default: undefined;
361
+ };
362
+ variant: Omit<{
363
+ type: PropType<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
364
+ default: string;
365
+ validator: (v: any) => boolean;
366
+ }, "type" | "default"> & {
367
+ type: PropType<NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">>;
368
+ default: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
369
+ };
370
+ bgColor: StringConstructor;
371
+ baseColor: StringConstructor;
372
+ focused: BooleanConstructor;
373
+ 'onUpdate:focused': PropType<EventProp<[boolean], (args_0: boolean) => any>>;
374
+ height: (StringConstructor | NumberConstructor)[];
375
+ maxHeight: (StringConstructor | NumberConstructor)[];
376
+ maxWidth: (StringConstructor | NumberConstructor)[];
377
+ minHeight: (StringConstructor | NumberConstructor)[];
378
+ minWidth: (StringConstructor | NumberConstructor)[];
379
+ width: (StringConstructor | NumberConstructor)[];
380
+ autofocus: BooleanConstructor;
381
+ divider: StringConstructor;
382
+ focusAll: BooleanConstructor;
383
+ label: {
384
+ type: StringConstructor;
385
+ default: string;
386
+ };
387
+ length: {
388
+ type: (StringConstructor | NumberConstructor)[];
389
+ default: number;
390
+ };
391
+ modelValue: {
392
+ type: (StringConstructor | NumberConstructor)[];
393
+ default: undefined;
394
+ };
395
+ placeholder: StringConstructor;
396
+ type: {
397
+ type: PropType<"number" | "text" | "password">;
398
+ default: string;
399
+ };
400
+ }, vue.ExtractPropTypes<{
401
+ error: BooleanConstructor;
402
+ color: StringConstructor;
403
+ loading: (StringConstructor | BooleanConstructor)[];
404
+ style: {
405
+ type: PropType<vue.StyleValue>;
406
+ default: null;
407
+ };
408
+ disabled: {
409
+ type: BooleanConstructor;
410
+ default: null;
411
+ };
412
+ class: PropType<any>;
413
+ theme: StringConstructor;
414
+ rounded: {
415
+ type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
416
+ default: undefined;
417
+ };
418
+ variant: Omit<{
419
+ type: PropType<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
420
+ default: string;
421
+ validator: (v: any) => boolean;
422
+ }, "type" | "default"> & {
423
+ type: PropType<NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">>;
424
+ default: NonNullable<"filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled">;
425
+ };
426
+ bgColor: StringConstructor;
427
+ baseColor: StringConstructor;
428
+ focused: BooleanConstructor;
429
+ 'onUpdate:focused': PropType<EventProp<[boolean], (args_0: boolean) => any>>;
430
+ height: (StringConstructor | NumberConstructor)[];
431
+ maxHeight: (StringConstructor | NumberConstructor)[];
432
+ maxWidth: (StringConstructor | NumberConstructor)[];
433
+ minHeight: (StringConstructor | NumberConstructor)[];
434
+ minWidth: (StringConstructor | NumberConstructor)[];
435
+ width: (StringConstructor | NumberConstructor)[];
436
+ autofocus: BooleanConstructor;
437
+ divider: StringConstructor;
438
+ focusAll: BooleanConstructor;
439
+ label: {
440
+ type: StringConstructor;
441
+ default: string;
442
+ };
443
+ length: {
444
+ type: (StringConstructor | NumberConstructor)[];
445
+ default: number;
446
+ };
447
+ modelValue: {
448
+ type: (StringConstructor | NumberConstructor)[];
449
+ default: undefined;
450
+ };
451
+ placeholder: StringConstructor;
452
+ type: {
453
+ type: PropType<"number" | "text" | "password">;
454
+ default: string;
455
+ };
456
+ }>>;
457
+ type VOtpInput = InstanceType<typeof VOtpInput>;
458
+
459
+ export { VOtpInput };
@@ -0,0 +1,2 @@
1
+ export { VOtpInput } from "./VOtpInput.mjs";
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["VOtpInput"],"sources":["../../../src/labs/VOtpInput/index.ts"],"sourcesContent":["export { VOtpInput } from './VOtpInput'\n"],"mappings":"SAASA,SAAS"}
@@ -0,0 +1,42 @@
1
+ .v-stepper.v-sheet {
2
+ box-shadow: 0px 3px 1px -2px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, 0.2)), 0px 2px 2px 0px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, 0.14)), 0px 1px 5px 0px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, 0.12));
3
+ border-radius: 4px;
4
+ overflow: hidden;
5
+ }
6
+
7
+ .v-stepper-header {
8
+ box-shadow: 0px 3px 1px -2px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, 0.2)), 0px 2px 2px 0px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, 0.14)), 0px 1px 5px 0px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, 0.12));
9
+ align-items: center;
10
+ display: flex;
11
+ position: relative;
12
+ overflow-x: auto;
13
+ justify-content: space-between;
14
+ z-index: 1;
15
+ }
16
+ .v-stepper-header .v-divider {
17
+ margin: 0 -16px;
18
+ }
19
+ .v-stepper--alt-labels .v-stepper-header {
20
+ height: auto;
21
+ }
22
+ .v-stepper--alt-labels .v-stepper-header .v-divider {
23
+ align-self: flex-start;
24
+ margin: 35px -67px 0;
25
+ }
26
+
27
+ .v-stepper-window {
28
+ margin: 1.5rem;
29
+ }
30
+
31
+ .v-stepper-actions {
32
+ display: flex;
33
+ align-items: center;
34
+ justify-content: space-between;
35
+ padding: 1rem;
36
+ }
37
+ .v-stepper .v-stepper-actions {
38
+ padding: 0 1.5rem 1rem;
39
+ }
40
+ .v-stepper-window-item .v-stepper-actions {
41
+ padding: 1.5rem 0 0;
42
+ }
@@ -0,0 +1,150 @@
1
+ import { mergeProps as _mergeProps, resolveDirective as _resolveDirective, createVNode as _createVNode, Fragment as _Fragment } from "vue";
2
+ // Styles
3
+ import "./VStepper.css";
4
+
5
+ // Components
6
+ import { makeVStepperActionsProps, VStepperActions } from "./VStepperActions.mjs";
7
+ import { VStepperHeader } from "./VStepperHeader.mjs";
8
+ import { VStepperItem } from "./VStepperItem.mjs";
9
+ import { VStepperWindow } from "./VStepperWindow.mjs";
10
+ import { VStepperWindowItem } from "./VStepperWindowItem.mjs";
11
+ import { VDivider } from "../../components/VDivider/index.mjs";
12
+ import { makeVSheetProps, VSheet } from "../../components/VSheet/VSheet.mjs"; // Composables
13
+ import { provideDefaults } from "../../composables/defaults.mjs";
14
+ import { makeGroupProps, useGroup } from "../../composables/group.mjs"; // Utilities
15
+ import { computed, toRefs } from 'vue';
16
+ import { genericComponent, getPropertyFromItem, only, propsFactory, useRender } from "../../util/index.mjs"; // Types
17
+ export const VStepperSymbol = Symbol.for('vuetify:v-stepper');
18
+ export const makeVStepperProps = propsFactory({
19
+ altLabels: Boolean,
20
+ bgColor: String,
21
+ editable: Boolean,
22
+ hideActions: Boolean,
23
+ items: {
24
+ type: Array,
25
+ default: () => []
26
+ },
27
+ itemTitle: {
28
+ type: String,
29
+ default: 'title'
30
+ },
31
+ itemValue: {
32
+ type: String,
33
+ default: 'value'
34
+ },
35
+ mobile: Boolean,
36
+ nonLinear: Boolean,
37
+ flat: Boolean,
38
+ ...makeGroupProps({
39
+ mandatory: 'force',
40
+ selectedClass: 'v-stepper-item--selected'
41
+ }),
42
+ ...makeVSheetProps(),
43
+ ...only(makeVStepperActionsProps(), ['prevText', 'nextText'])
44
+ }, 'VStepper');
45
+ export const VStepper = genericComponent()({
46
+ name: 'VStepper',
47
+ props: makeVStepperProps(),
48
+ emits: {
49
+ 'update:modelValue': v => true
50
+ },
51
+ setup(props, _ref) {
52
+ let {
53
+ slots
54
+ } = _ref;
55
+ // TODO: fix typing
56
+ const {
57
+ items: _items,
58
+ next,
59
+ prev,
60
+ selected
61
+ } = useGroup(props, VStepperSymbol);
62
+ const {
63
+ color,
64
+ editable,
65
+ prevText,
66
+ nextText
67
+ } = toRefs(props);
68
+ const items = computed(() => props.items.map((item, index) => {
69
+ const title = getPropertyFromItem(item, props.itemTitle, item);
70
+ const value = getPropertyFromItem(item, props.itemValue, index + 1);
71
+ return {
72
+ title,
73
+ value,
74
+ raw: item
75
+ };
76
+ }));
77
+ const activeIndex = computed(() => {
78
+ return _items.value.findIndex(item => selected.value.includes(item.id));
79
+ });
80
+ const disabled = computed(() => {
81
+ if (props.disabled) return props.disabled;
82
+ if (activeIndex.value === 0) return 'prev';
83
+ if (activeIndex.value === _items.value.length - 1) return 'next';
84
+ return false;
85
+ });
86
+ provideDefaults({
87
+ VStepperItem: {
88
+ editable,
89
+ prevText,
90
+ nextText
91
+ },
92
+ VStepperActions: {
93
+ color,
94
+ disabled,
95
+ prevText,
96
+ nextText
97
+ }
98
+ });
99
+ useRender(() => {
100
+ const [sheetProps] = VSheet.filterProps(props);
101
+ const hasHeader = !!(slots.header || props.items.length);
102
+ const hasWindow = props.items.length > 0;
103
+ const hasActions = !props.hideActions && !!(hasWindow || slots.actions);
104
+ return _createVNode(VSheet, _mergeProps(sheetProps, {
105
+ "color": props.bgColor,
106
+ "class": ['v-stepper', {
107
+ 'v-stepper--alt-labels': props.altLabels,
108
+ 'v-stepper--flat': props.flat,
109
+ 'v-stepper--non-linear': props.nonLinear,
110
+ 'v-stepper--mobile': props.mobile
111
+ }, props.class],
112
+ "style": props.style
113
+ }), {
114
+ default: () => [hasHeader && _createVNode(VStepperHeader, {
115
+ "key": "stepper-header"
116
+ }, {
117
+ default: () => [items.value.map((item, index) => _createVNode(_Fragment, null, [!!index && _createVNode(VDivider, null, null), _createVNode(VStepperItem, item, {
118
+ default: slots[`header-item.${item.value}`] ?? slots.header,
119
+ icon: slots.icon,
120
+ title: slots.title,
121
+ subtitle: slots.subtitle
122
+ })]))]
123
+ }), hasWindow && _createVNode(VStepperWindow, {
124
+ "key": "stepper-window"
125
+ }, {
126
+ default: () => [items.value.map(item => _createVNode(VStepperWindowItem, {
127
+ "value": item.value
128
+ }, {
129
+ default: () => slots[`item.${item.value}`]?.(item) ?? slots.item?.(item)
130
+ }))]
131
+ }), slots.default?.({
132
+ prev,
133
+ next
134
+ }), hasActions && (slots.actions?.({
135
+ next,
136
+ prev
137
+ }) ?? _createVNode(VStepperActions, {
138
+ "key": "stepper-actions",
139
+ "onClick:prev": prev,
140
+ "onClick:next": next
141
+ }, null))]
142
+ });
143
+ });
144
+ return {
145
+ prev,
146
+ next
147
+ };
148
+ }
149
+ });
150
+ //# sourceMappingURL=VStepper.mjs.map