@vuetify/nightly 3.4.0-alpha.1-dev.2023-10-21 → 3.4.0-alpha.1-dev.2023-10-28

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 (198) hide show
  1. package/CHANGELOG.md +7 -3
  2. package/dist/_component-variables-labs.sass +1 -5
  3. package/dist/_component-variables.sass +4 -0
  4. package/dist/json/attributes.json +26 -26
  5. package/dist/json/importMap-labs.json +14 -50
  6. package/dist/json/importMap.json +98 -62
  7. package/dist/json/web-types.json +30 -30
  8. package/dist/vuetify-labs.css +695 -694
  9. package/dist/vuetify-labs.d.ts +41561 -36837
  10. package/dist/vuetify-labs.esm.js +3188 -3166
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +3187 -3165
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.css +505 -108
  15. package/dist/vuetify.d.ts +20359 -13201
  16. package/dist/vuetify.esm.js +995 -175
  17. package/dist/vuetify.esm.js.map +1 -1
  18. package/dist/vuetify.js +994 -174
  19. package/dist/vuetify.js.map +1 -1
  20. package/dist/vuetify.min.css +2 -2
  21. package/dist/vuetify.min.js +1306 -1256
  22. package/dist/vuetify.min.js.map +1 -1
  23. package/lib/components/VAlert/index.d.mts +114 -106
  24. package/lib/components/VApp/index.d.mts +24 -47
  25. package/lib/components/VAppBar/index.d.mts +219 -175
  26. package/lib/components/VAutocomplete/VAutocomplete.mjs +13 -10
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  28. package/lib/components/VAutocomplete/index.d.mts +1203 -551
  29. package/lib/components/VAvatar/index.d.mts +45 -53
  30. package/lib/components/VBadge/index.d.mts +66 -58
  31. package/lib/components/VBanner/index.d.mts +106 -146
  32. package/lib/components/VBottomNavigation/index.d.mts +72 -63
  33. package/lib/{labs → components}/VBottomSheet/VBottomSheet.mjs +1 -1
  34. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -0
  35. package/lib/{labs → components}/VBottomSheet/index.d.mts +153 -83
  36. package/lib/components/VBottomSheet/index.mjs.map +1 -0
  37. package/lib/components/VBreadcrumbs/index.d.mts +89 -147
  38. package/lib/components/VBtn/index.d.mts +107 -66
  39. package/lib/components/VBtnGroup/index.d.mts +38 -51
  40. package/lib/components/VBtnToggle/index.d.mts +53 -55
  41. package/lib/components/VCard/index.d.mts +238 -298
  42. package/lib/components/VCarousel/index.d.mts +251 -131
  43. package/lib/components/VCheckbox/index.d.mts +259 -146
  44. package/lib/components/VChip/index.d.mts +157 -76
  45. package/lib/components/VChipGroup/index.d.mts +76 -55
  46. package/lib/components/VCode/index.d.mts +21 -46
  47. package/lib/components/VColorPicker/index.d.mts +112 -61
  48. package/lib/components/VCombobox/VCombobox.mjs +13 -10
  49. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  50. package/lib/components/VCombobox/index.d.mts +1203 -551
  51. package/lib/components/VCounter/index.d.mts +45 -57
  52. package/lib/components/VDefaultsProvider/index.d.mts +24 -49
  53. package/lib/components/VDialog/index.d.mts +583 -329
  54. package/lib/components/VDivider/index.d.mts +30 -49
  55. package/lib/components/VExpansionPanel/index.d.mts +188 -212
  56. package/lib/components/VField/index.d.mts +88 -105
  57. package/lib/components/VFileInput/index.d.mts +472 -287
  58. package/lib/components/VFooter/index.d.mts +42 -52
  59. package/lib/components/VForm/index.d.mts +149 -51
  60. package/lib/components/VGrid/index.d.mts +146 -196
  61. package/lib/components/VHover/index.d.mts +37 -49
  62. package/lib/components/VIcon/index.d.mts +79 -234
  63. package/lib/components/VImg/index.d.mts +80 -61
  64. package/lib/{labs → components}/VInfiniteScroll/VInfiniteScroll.mjs +2 -2
  65. package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -0
  66. package/lib/{labs → components}/VInfiniteScroll/index.d.mts +59 -54
  67. package/lib/components/VInfiniteScroll/index.mjs.map +1 -0
  68. package/lib/components/VInput/index.d.mts +90 -66
  69. package/lib/components/VItemGroup/index.d.mts +115 -99
  70. package/lib/components/VKbd/index.d.mts +21 -46
  71. package/lib/components/VLabel/index.d.mts +24 -47
  72. package/lib/components/VLayout/index.d.mts +55 -96
  73. package/lib/components/VLazy/index.d.mts +43 -50
  74. package/lib/components/VList/index.d.mts +403 -468
  75. package/lib/components/VLocaleProvider/index.d.mts +24 -46
  76. package/lib/components/VMain/index.d.mts +24 -47
  77. package/lib/components/VMenu/index.d.mts +573 -324
  78. package/lib/components/VMessages/index.d.mts +41 -49
  79. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +1 -0
  80. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +1 -0
  81. package/lib/components/VNavigationDrawer/index.d.mts +95 -67
  82. package/lib/components/VOverlay/index.d.mts +138 -76
  83. package/lib/components/VPagination/index.d.mts +114 -73
  84. package/lib/components/VParallax/index.d.mts +31 -47
  85. package/lib/components/VProgressCircular/index.d.mts +48 -53
  86. package/lib/components/VProgressLinear/index.d.mts +84 -63
  87. package/lib/components/VRadio/index.d.mts +93 -61
  88. package/lib/components/VRadioGroup/index.d.mts +130 -77
  89. package/lib/components/VRangeSlider/index.d.mts +169 -86
  90. package/lib/components/VRating/index.d.mts +75 -62
  91. package/lib/components/VResponsive/index.d.mts +33 -47
  92. package/lib/components/VSelect/VSelect.mjs +13 -10
  93. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  94. package/lib/components/VSelect/index.d.mts +1191 -546
  95. package/lib/components/VSelectionControl/index.d.mts +48 -53
  96. package/lib/components/VSelectionControlGroup/index.d.mts +58 -57
  97. package/lib/components/VSheet/index.d.mts +37 -48
  98. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -0
  99. package/lib/{labs → components}/VSkeletonLoader/index.d.mts +36 -51
  100. package/lib/components/VSkeletonLoader/index.mjs.map +1 -0
  101. package/lib/components/VSlideGroup/index.d.mts +106 -105
  102. package/lib/components/VSlider/index.d.mts +166 -85
  103. package/lib/components/VSnackbar/index.d.mts +572 -324
  104. package/lib/components/VStepper/VStepper.mjs +137 -98
  105. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  106. package/lib/components/VStepper/VStepper.sass +38 -198
  107. package/lib/{labs → components}/VStepper/VStepperActions.mjs +2 -2
  108. package/lib/components/VStepper/VStepperActions.mjs.map +1 -0
  109. package/lib/components/VStepper/VStepperHeader.mjs.map +1 -0
  110. package/lib/{labs → components}/VStepper/VStepperItem.mjs +2 -2
  111. package/lib/components/VStepper/VStepperItem.mjs.map +1 -0
  112. package/lib/{labs → components}/VStepper/VStepperWindow.mjs +1 -1
  113. package/lib/components/VStepper/VStepperWindow.mjs.map +1 -0
  114. package/lib/{labs → components}/VStepper/VStepperWindowItem.mjs +1 -1
  115. package/lib/components/VStepper/VStepperWindowItem.mjs.map +1 -0
  116. package/lib/components/VStepper/_variables.scss +21 -31
  117. package/lib/{labs → components}/VStepper/index.d.mts +368 -340
  118. package/lib/components/VStepper/index.mjs +6 -17
  119. package/lib/components/VStepper/index.mjs.map +1 -1
  120. package/lib/components/VSwitch/index.d.mts +168 -86
  121. package/lib/components/VSystemBar/index.d.mts +39 -51
  122. package/lib/components/VTable/index.d.mts +45 -51
  123. package/lib/components/VTabs/index.d.mts +177 -132
  124. package/lib/components/VTextField/index.d.mts +665 -470
  125. package/lib/components/VTextarea/index.d.mts +469 -297
  126. package/lib/components/VThemeProvider/index.d.mts +26 -48
  127. package/lib/components/VTimeline/index.d.mts +98 -106
  128. package/lib/components/VToolbar/index.d.mts +119 -150
  129. package/lib/components/VTooltip/index.d.mts +565 -321
  130. package/lib/components/VValidation/index.d.mts +108 -62
  131. package/lib/components/VVirtualScroll/index.d.mts +18 -46
  132. package/lib/components/VWindow/index.d.mts +130 -110
  133. package/lib/components/index.d.mts +19973 -12833
  134. package/lib/components/index.mjs +5 -2
  135. package/lib/components/index.mjs.map +1 -1
  136. package/lib/components/transitions/index.d.mts +455 -819
  137. package/lib/composables/color.mjs +2 -2
  138. package/lib/composables/color.mjs.map +1 -1
  139. package/lib/entry-bundler.mjs +1 -1
  140. package/lib/framework.mjs +1 -1
  141. package/lib/index.d.mts +36 -36
  142. package/lib/labs/VDataIterator/index.d.mts +112 -75
  143. package/lib/labs/VDataTable/index.d.mts +1456 -530
  144. package/lib/labs/VDateInput/index.d.mts +260 -157
  145. package/lib/labs/VDatePicker/index.d.mts +1100 -889
  146. package/lib/labs/VDateRangePicker/index.d.mts +207 -129
  147. package/lib/labs/VOtpInput/index.d.mts +80 -64
  148. package/lib/labs/VPicker/index.d.mts +74 -97
  149. package/lib/labs/components.d.mts +7514 -10029
  150. package/lib/labs/components.mjs +0 -4
  151. package/lib/labs/components.mjs.map +1 -1
  152. package/lib/labs/date/adapters/vuetify.mjs +6 -3
  153. package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
  154. package/lib/locale/fr.mjs +19 -19
  155. package/lib/locale/fr.mjs.map +1 -1
  156. package/lib/util/colorUtils.mjs +3 -0
  157. package/lib/util/colorUtils.mjs.map +1 -1
  158. package/lib/util/helpers.mjs +8 -1
  159. package/lib/util/helpers.mjs.map +1 -1
  160. package/package.json +1 -1
  161. package/lib/components/VStepper/VStepperContent.mjs +0 -114
  162. package/lib/components/VStepper/VStepperContent.mjs.map +0 -1
  163. package/lib/components/VStepper/VStepperStep.mjs +0 -134
  164. package/lib/components/VStepper/VStepperStep.mjs.map +0 -1
  165. package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +0 -1
  166. package/lib/labs/VBottomSheet/index.mjs.map +0 -1
  167. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +0 -1
  168. package/lib/labs/VInfiniteScroll/index.mjs.map +0 -1
  169. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +0 -1
  170. package/lib/labs/VSkeletonLoader/index.mjs.map +0 -1
  171. package/lib/labs/VStepper/VStepper.mjs +0 -149
  172. package/lib/labs/VStepper/VStepper.mjs.map +0 -1
  173. package/lib/labs/VStepper/VStepper.sass +0 -53
  174. package/lib/labs/VStepper/VStepperActions.mjs.map +0 -1
  175. package/lib/labs/VStepper/VStepperHeader.mjs.map +0 -1
  176. package/lib/labs/VStepper/VStepperItem.mjs.map +0 -1
  177. package/lib/labs/VStepper/VStepperWindow.mjs.map +0 -1
  178. package/lib/labs/VStepper/VStepperWindowItem.mjs.map +0 -1
  179. package/lib/labs/VStepper/_variables.scss +0 -27
  180. package/lib/labs/VStepper/index.mjs +0 -7
  181. package/lib/labs/VStepper/index.mjs.map +0 -1
  182. /package/lib/{labs → components}/VBottomSheet/VBottomSheet.css +0 -0
  183. /package/lib/{labs → components}/VBottomSheet/VBottomSheet.sass +0 -0
  184. /package/lib/{labs → components}/VBottomSheet/_variables.scss +0 -0
  185. /package/lib/{labs → components}/VBottomSheet/index.mjs +0 -0
  186. /package/lib/{labs → components}/VInfiniteScroll/VInfiniteScroll.css +0 -0
  187. /package/lib/{labs → components}/VInfiniteScroll/VInfiniteScroll.sass +0 -0
  188. /package/lib/{labs → components}/VInfiniteScroll/_variables.scss +0 -0
  189. /package/lib/{labs → components}/VInfiniteScroll/index.mjs +0 -0
  190. /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.css +0 -0
  191. /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.mjs +0 -0
  192. /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.sass +0 -0
  193. /package/lib/{labs → components}/VSkeletonLoader/_variables.scss +0 -0
  194. /package/lib/{labs → components}/VSkeletonLoader/index.mjs +0 -0
  195. /package/lib/{labs → components}/VStepper/VStepper.css +0 -0
  196. /package/lib/{labs → components}/VStepper/VStepperHeader.mjs +0 -0
  197. /package/lib/{labs → components}/VStepper/VStepperItem.css +0 -0
  198. /package/lib/{labs → components}/VStepper/VStepperItem.sass +0 -0
@@ -11,61 +11,30 @@ declare const VComponentIcon: {
11
11
  new (...args: any[]): {
12
12
  $: vue.ComponentInternalInstance;
13
13
  $data: {};
14
- $props: {
15
- key?: string | number | symbol | undefined;
16
- style?: unknown;
17
- class?: unknown;
14
+ $props: Partial<{}> & Omit<{
18
15
  tag: string;
19
16
  icon?: IconValue | undefined;
20
17
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
21
18
  default?: (() => vue.VNodeChild) | undefined;
22
19
  };
23
- ref?: vue.VNodeRef | undefined;
24
- ref_for?: boolean | undefined;
25
- ref_key?: string | undefined;
20
+ 'v-slots'?: {
21
+ default?: false | (() => vue.VNodeChild) | undefined;
22
+ } | undefined;
26
23
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
24
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
25
+ tag: string;
26
+ } & {
27
+ icon?: IconValue | undefined;
28
+ } & {
29
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
30
+ default?: (() => vue.VNodeChild) | undefined;
31
+ };
27
32
  'v-slots'?: {
28
33
  default?: false | (() => vue.VNodeChild) | undefined;
29
34
  } | undefined;
30
- onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
31
- [key: string]: any;
32
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
33
- [key: string]: any;
34
- }>) => void)[] | undefined;
35
- onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
36
- [key: string]: any;
37
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
38
- [key: string]: any;
39
- }>) => void)[] | undefined;
40
- onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
41
- [key: string]: any;
42
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
43
- [key: string]: any;
44
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
45
- [key: string]: any;
46
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
47
- [key: string]: any;
48
- }>) => void)[] | undefined;
49
- onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
50
- [key: string]: any;
51
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
52
- [key: string]: any;
53
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
54
- [key: string]: any;
55
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
56
- [key: string]: any;
57
- }>) => void)[] | undefined;
58
- onVnodeBeforeUnmount?: ((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
- onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
64
- [key: string]: any;
65
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
66
- [key: string]: any;
67
- }>) => void)[] | undefined;
68
- };
35
+ } & {
36
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
37
+ }, never>;
69
38
  $attrs: {
70
39
  [x: string]: unknown;
71
40
  };
@@ -174,54 +143,18 @@ declare const VSvgIcon: {
174
143
  new (...args: any[]): {
175
144
  $: vue.ComponentInternalInstance;
176
145
  $data: {};
177
- $props: {
178
- key?: string | number | symbol | undefined;
179
- style?: unknown;
180
- class?: unknown;
146
+ $props: Partial<{}> & Omit<{
181
147
  readonly tag: string;
182
148
  readonly icon?: IconValue | undefined;
183
- ref?: vue.VNodeRef | undefined;
184
- ref_for?: boolean | undefined;
185
- ref_key?: string | undefined;
186
- onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
187
- [key: string]: any;
188
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
189
- [key: string]: any;
190
- }>) => void)[] | undefined;
191
- onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
192
- [key: string]: any;
193
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
194
- [key: string]: any;
195
- }>) => void)[] | undefined;
196
- onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
197
- [key: string]: any;
198
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
199
- [key: string]: any;
200
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
201
- [key: string]: any;
202
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
203
- [key: string]: any;
204
- }>) => void)[] | undefined;
205
- onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
206
- [key: string]: any;
207
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
208
- [key: string]: any;
209
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
210
- [key: string]: any;
211
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
212
- [key: string]: any;
213
- }>) => void)[] | undefined;
214
- onVnodeBeforeUnmount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
215
- [key: string]: any;
216
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
217
- [key: string]: any;
218
- }>) => void)[] | undefined;
219
- onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
220
- [key: string]: any;
221
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
222
- [key: string]: any;
223
- }>) => void)[] | undefined;
224
- };
149
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & Readonly<vue.ExtractPropTypes<{
150
+ icon: {
151
+ type: PropType<IconValue>;
152
+ };
153
+ tag: {
154
+ type: StringConstructor;
155
+ required: true;
156
+ };
157
+ }>>, never>;
225
158
  $attrs: {
226
159
  [x: string]: unknown;
227
160
  };
@@ -305,54 +238,18 @@ declare const VLigatureIcon: {
305
238
  new (...args: any[]): {
306
239
  $: vue.ComponentInternalInstance;
307
240
  $data: {};
308
- $props: {
309
- key?: string | number | symbol | undefined;
310
- style?: unknown;
311
- class?: unknown;
241
+ $props: Partial<{}> & Omit<{
312
242
  readonly tag: string;
313
243
  readonly icon?: IconValue | undefined;
314
- ref?: vue.VNodeRef | undefined;
315
- ref_for?: boolean | undefined;
316
- ref_key?: string | undefined;
317
- onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
318
- [key: string]: any;
319
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
320
- [key: string]: any;
321
- }>) => void)[] | undefined;
322
- onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
323
- [key: string]: any;
324
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
325
- [key: string]: any;
326
- }>) => void)[] | undefined;
327
- onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
328
- [key: string]: any;
329
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
330
- [key: string]: any;
331
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
332
- [key: string]: any;
333
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
334
- [key: string]: any;
335
- }>) => void)[] | undefined;
336
- onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
337
- [key: string]: any;
338
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
339
- [key: string]: any;
340
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
341
- [key: string]: any;
342
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
343
- [key: string]: any;
344
- }>) => void)[] | undefined;
345
- onVnodeBeforeUnmount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
346
- [key: string]: any;
347
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
348
- [key: string]: any;
349
- }>) => void)[] | undefined;
350
- onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
351
- [key: string]: any;
352
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
353
- [key: string]: any;
354
- }>) => void)[] | undefined;
355
- };
244
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & Readonly<vue.ExtractPropTypes<{
245
+ icon: {
246
+ type: PropType<IconValue>;
247
+ };
248
+ tag: {
249
+ type: StringConstructor;
250
+ required: true;
251
+ };
252
+ }>>, never>;
356
253
  $attrs: {
357
254
  [x: string]: unknown;
358
255
  };
@@ -436,54 +333,18 @@ declare const VClassIcon: {
436
333
  new (...args: any[]): {
437
334
  $: vue.ComponentInternalInstance;
438
335
  $data: {};
439
- $props: {
440
- key?: string | number | symbol | undefined;
441
- style?: unknown;
442
- class?: unknown;
336
+ $props: Partial<{}> & Omit<{
443
337
  readonly tag: string;
444
338
  readonly icon?: IconValue | undefined;
445
- ref?: vue.VNodeRef | undefined;
446
- ref_for?: boolean | undefined;
447
- ref_key?: string | undefined;
448
- onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
449
- [key: string]: any;
450
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
451
- [key: string]: any;
452
- }>) => void)[] | undefined;
453
- onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
454
- [key: string]: any;
455
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
456
- [key: string]: any;
457
- }>) => void)[] | undefined;
458
- onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
459
- [key: string]: any;
460
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
461
- [key: string]: any;
462
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
463
- [key: string]: any;
464
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
465
- [key: string]: any;
466
- }>) => void)[] | undefined;
467
- onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
468
- [key: string]: any;
469
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
470
- [key: string]: any;
471
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
472
- [key: string]: any;
473
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
474
- [key: string]: any;
475
- }>) => void)[] | undefined;
476
- onVnodeBeforeUnmount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
477
- [key: string]: any;
478
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
479
- [key: string]: any;
480
- }>) => void)[] | undefined;
481
- onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
482
- [key: string]: any;
483
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
484
- [key: string]: any;
485
- }>) => void)[] | undefined;
486
- };
339
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & Readonly<vue.ExtractPropTypes<{
340
+ icon: {
341
+ type: PropType<IconValue>;
342
+ };
343
+ tag: {
344
+ type: StringConstructor;
345
+ required: true;
346
+ };
347
+ }>>, never>;
487
348
  $attrs: {
488
349
  [x: string]: unknown;
489
350
  };
@@ -568,66 +429,50 @@ declare const VIcon: {
568
429
  new (...args: any[]): {
569
430
  $: vue.ComponentInternalInstance;
570
431
  $data: {};
571
- $props: {
572
- end?: boolean | undefined;
573
- start?: boolean | undefined;
574
- style?: vue.StyleValue | undefined;
575
- size?: string | number | undefined;
576
- tag?: string | undefined;
577
- key?: string | number | symbol | undefined;
432
+ $props: Partial<{
433
+ end: boolean;
434
+ start: boolean;
435
+ style: vue.StyleValue;
436
+ size: string | number;
437
+ tag: string;
438
+ }> & Omit<{
439
+ end: boolean;
440
+ start: boolean;
441
+ style: vue.StyleValue;
442
+ size: string | number;
443
+ tag: string;
578
444
  color?: string | undefined;
579
445
  class?: any;
580
446
  icon?: IconValue | undefined;
447
+ theme?: string | undefined;
581
448
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
582
449
  default?: (() => vue.VNodeChild) | undefined;
583
450
  };
584
- ref?: vue.VNodeRef | undefined;
585
- ref_for?: boolean | undefined;
586
- ref_key?: string | undefined;
587
- theme?: string | undefined;
451
+ 'v-slots'?: {
452
+ default?: false | (() => vue.VNodeChild) | undefined;
453
+ } | undefined;
588
454
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
455
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
456
+ end: boolean;
457
+ start: boolean;
458
+ style: vue.StyleValue;
459
+ size: string | number;
460
+ tag: string;
461
+ } & {
462
+ color?: string | undefined;
463
+ class?: any;
464
+ icon?: IconValue | undefined;
465
+ theme?: string | undefined;
466
+ } & {
467
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
468
+ default?: (() => vue.VNodeChild) | undefined;
469
+ };
589
470
  'v-slots'?: {
590
471
  default?: false | (() => vue.VNodeChild) | undefined;
591
472
  } | undefined;
592
- onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
593
- [key: string]: any;
594
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
595
- [key: string]: any;
596
- }>) => void)[] | undefined;
597
- onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
598
- [key: string]: any;
599
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
600
- [key: string]: any;
601
- }>) => void)[] | undefined;
602
- onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
603
- [key: string]: any;
604
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
605
- [key: string]: any;
606
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
607
- [key: string]: any;
608
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
609
- [key: string]: any;
610
- }>) => void)[] | undefined;
611
- onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
612
- [key: string]: any;
613
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
614
- [key: string]: any;
615
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
616
- [key: string]: any;
617
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
618
- [key: string]: any;
619
- }>) => void)[] | undefined;
620
- onVnodeBeforeUnmount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
621
- [key: string]: any;
622
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
623
- [key: string]: any;
624
- }>) => void)[] | undefined;
625
- onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
626
- [key: string]: any;
627
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
628
- [key: string]: any;
629
- }>) => void)[] | undefined;
630
- };
473
+ } & {
474
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
475
+ }, "end" | "start" | "style" | "size" | "tag">;
631
476
  $attrs: {
632
477
  [x: string]: unknown;
633
478
  };
@@ -15,18 +15,27 @@ declare const VImg: {
15
15
  new (...args: any[]): {
16
16
  $: vue.ComponentInternalInstance;
17
17
  $data: {};
18
- $props: {
19
- inline?: boolean | undefined;
20
- transition?: string | boolean | (vue.TransitionProps & {
18
+ $props: Partial<{
19
+ inline: boolean;
20
+ transition: string | boolean | (vue.TransitionProps & {
21
21
  component?: vue.Component | undefined;
22
- }) | undefined;
23
- style?: vue.StyleValue | undefined;
24
- draggable?: boolean | "false" | "true" | undefined;
25
- eager?: boolean | undefined;
26
- options?: IntersectionObserverInit | undefined;
27
- cover?: boolean | undefined;
28
- src?: string | srcObject | undefined;
29
- key?: string | number | symbol | undefined;
22
+ });
23
+ style: vue.StyleValue;
24
+ draggable: boolean | "false" | "true";
25
+ eager: boolean;
26
+ options: IntersectionObserverInit;
27
+ cover: boolean;
28
+ src: string | srcObject;
29
+ }> & Omit<{
30
+ inline: boolean;
31
+ transition: string | boolean | (vue.TransitionProps & {
32
+ component?: vue.Component | undefined;
33
+ });
34
+ style: vue.StyleValue;
35
+ eager: boolean;
36
+ options: IntersectionObserverInit;
37
+ cover: boolean;
38
+ src: string | srcObject;
30
39
  height?: string | number | undefined;
31
40
  width?: string | number | undefined;
32
41
  aspectRatio?: string | number | undefined;
@@ -34,76 +43,86 @@ declare const VImg: {
34
43
  maxWidth?: string | number | undefined;
35
44
  minHeight?: string | number | undefined;
36
45
  minWidth?: string | number | undefined;
46
+ draggable?: boolean | "false" | "true" | undefined;
37
47
  class?: any;
38
- onError?: ((value: string | undefined) => any) | undefined;
39
- onLoad?: ((value: string | undefined) => any) | undefined;
40
- onLoadstart?: ((value: string | undefined) => any) | undefined;
48
+ referrerpolicy?: "origin" | "same-origin" | "no-referrer" | "no-referrer-when-downgrade" | "origin-when-cross-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined;
49
+ alt?: string | undefined;
50
+ crossorigin?: "" | "anonymous" | "use-credentials" | undefined;
51
+ sizes?: string | undefined;
52
+ srcset?: string | undefined;
53
+ contentClass?: string | undefined;
54
+ gradient?: string | undefined;
55
+ lazySrc?: string | undefined;
41
56
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
42
57
  default?: (() => vue.VNodeChild) | undefined;
43
58
  placeholder?: (() => vue.VNodeChild) | undefined;
44
59
  error?: (() => vue.VNodeChild) | undefined;
45
60
  sources?: (() => vue.VNodeChild) | undefined;
46
61
  };
62
+ 'v-slots'?: {
63
+ default?: false | (() => vue.VNodeChild) | undefined;
64
+ placeholder?: false | (() => vue.VNodeChild) | undefined;
65
+ error?: false | (() => vue.VNodeChild) | undefined;
66
+ sources?: false | (() => vue.VNodeChild) | undefined;
67
+ } | undefined;
68
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
69
+ "v-slot:placeholder"?: false | (() => vue.VNodeChild) | undefined;
70
+ "v-slot:error"?: false | (() => vue.VNodeChild) | undefined;
71
+ "v-slot:sources"?: false | (() => vue.VNodeChild) | undefined;
72
+ onError?: ((value: string | undefined) => any) | undefined;
73
+ onLoad?: ((value: string | undefined) => any) | undefined;
74
+ onLoadstart?: ((value: string | undefined) => any) | undefined;
75
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
76
+ inline: boolean;
77
+ transition: string | boolean | (vue.TransitionProps & {
78
+ component?: vue.Component | undefined;
79
+ });
80
+ style: vue.StyleValue;
81
+ eager: boolean;
82
+ options: IntersectionObserverInit;
83
+ cover: boolean;
84
+ src: string | srcObject;
85
+ } & {
86
+ height?: string | number | undefined;
87
+ width?: string | number | undefined;
88
+ aspectRatio?: string | number | undefined;
89
+ maxHeight?: string | number | undefined;
90
+ maxWidth?: string | number | undefined;
91
+ minHeight?: string | number | undefined;
92
+ minWidth?: string | number | undefined;
93
+ draggable?: boolean | "false" | "true" | undefined;
94
+ class?: any;
47
95
  referrerpolicy?: "origin" | "same-origin" | "no-referrer" | "no-referrer-when-downgrade" | "origin-when-cross-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url" | undefined;
48
96
  alt?: string | undefined;
49
97
  crossorigin?: "" | "anonymous" | "use-credentials" | undefined;
50
98
  sizes?: string | undefined;
51
99
  srcset?: string | undefined;
52
- ref?: vue.VNodeRef | undefined;
53
- ref_for?: boolean | undefined;
54
- ref_key?: string | undefined;
55
- "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
100
+ contentClass?: string | undefined;
101
+ gradient?: string | undefined;
102
+ lazySrc?: string | undefined;
103
+ } & {
104
+ $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
105
+ default?: (() => vue.VNodeChild) | undefined;
106
+ placeholder?: (() => vue.VNodeChild) | undefined;
107
+ error?: (() => vue.VNodeChild) | undefined;
108
+ sources?: (() => vue.VNodeChild) | undefined;
109
+ };
56
110
  'v-slots'?: {
57
111
  default?: false | (() => vue.VNodeChild) | undefined;
58
112
  placeholder?: false | (() => vue.VNodeChild) | undefined;
59
113
  error?: false | (() => vue.VNodeChild) | undefined;
60
114
  sources?: false | (() => vue.VNodeChild) | undefined;
61
115
  } | undefined;
62
- contentClass?: string | undefined;
63
- gradient?: string | undefined;
64
- lazySrc?: string | undefined;
116
+ } & {
117
+ "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
118
+ "v-slot:placeholder"?: false | (() => vue.VNodeChild) | undefined;
65
119
  "v-slot:error"?: false | (() => vue.VNodeChild) | undefined;
66
120
  "v-slot:sources"?: false | (() => vue.VNodeChild) | undefined;
67
- "v-slot:placeholder"?: false | (() => vue.VNodeChild) | undefined;
68
- onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
69
- [key: string]: any;
70
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
71
- [key: string]: any;
72
- }>) => void)[] | undefined;
73
- onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
74
- [key: string]: any;
75
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
76
- [key: string]: any;
77
- }>) => void)[] | undefined;
78
- onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
79
- [key: string]: any;
80
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
81
- [key: string]: any;
82
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
83
- [key: string]: any;
84
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
85
- [key: string]: any;
86
- }>) => void)[] | undefined;
87
- onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
88
- [key: string]: any;
89
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
90
- [key: string]: any;
91
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
92
- [key: string]: any;
93
- }>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
94
- [key: string]: any;
95
- }>) => void)[] | undefined;
96
- onVnodeBeforeUnmount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
97
- [key: string]: any;
98
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
99
- [key: string]: any;
100
- }>) => void)[] | undefined;
101
- onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
102
- [key: string]: any;
103
- }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
104
- [key: string]: any;
105
- }>) => void)[] | undefined;
106
- };
121
+ } & {
122
+ onError?: ((value: string | undefined) => any) | undefined;
123
+ onLoad?: ((value: string | undefined) => any) | undefined;
124
+ onLoadstart?: ((value: string | undefined) => any) | undefined;
125
+ }, "inline" | "transition" | "style" | "draggable" | "eager" | "options" | "cover" | "src">;
107
126
  $attrs: {
108
127
  [x: string]: unknown;
109
128
  };
@@ -3,8 +3,8 @@ import { createVNode as _createVNode, createTextVNode as _createTextVNode } from
3
3
  import "./VInfiniteScroll.css";
4
4
 
5
5
  // Components
6
- import { VBtn } from "../../components/VBtn/index.mjs";
7
- import { VProgressCircular } from "../../components/VProgressCircular/index.mjs"; // Composables
6
+ import { VBtn } from "../VBtn/index.mjs";
7
+ import { VProgressCircular } from "../VProgressCircular/index.mjs"; // Composables
8
8
  import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
9
9
  import { useIntersectionObserver } from "../../composables/intersectionObserver.mjs";
10
10
  import { useLocale } from "../../composables/locale.mjs";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VInfiniteScroll.mjs","names":["VBtn","VProgressCircular","makeDimensionProps","useDimension","useIntersectionObserver","useLocale","makeTagProps","computed","nextTick","onMounted","ref","shallowRef","watch","convertToUnit","defineComponent","genericComponent","propsFactory","useRender","makeVInfiniteScrollProps","color","String","direction","type","default","validator","v","includes","side","mode","margin","Number","loadMoreText","emptyText","VInfiniteScrollIntersect","name","props","required","rootRef","rootMargin","emits","intersect","isIntersecting","setup","_ref","emit","intersectionRef","entries","undefined","val","_createVNode","_createTextVNode","VInfiniteScroll","load","options","_ref2","slots","rootEl","startStatus","endStatus","setScrollAmount","amount","value","property","getScrollAmount","getScrollSize","getContainerSize","setStatus","status","getStatus","previousScrollSize","handleIntersect","_isIntersecting","intersecting","done","window","requestAnimationFrame","t","renderSide","onClick","slotProps","error","empty","loading","dimensionStyles","Tag","tag","hasStartIntersect","hasEndIntersect","intersectMode"],"sources":["../../../src/components/VInfiniteScroll/VInfiniteScroll.tsx"],"sourcesContent":["// Styles\nimport './VInfiniteScroll.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useLocale } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, shallowRef, watch } from 'vue'\nimport { convertToUnit, defineComponent, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type InfiniteScrollSide = 'start' | 'end' | 'both'\nexport type InfiniteScrollStatus = 'ok' | 'empty' | 'loading' | 'error'\n\ntype InfiniteScrollSlot = {\n side: InfiniteScrollSide\n props: Record<string, any>\n}\n\ntype VInfiniteScrollSlots = {\n default: never\n loading: InfiniteScrollSlot\n error: InfiniteScrollSlot\n empty: InfiniteScrollSlot\n 'load-more': InfiniteScrollSlot\n}\n\nexport const makeVInfiniteScrollProps = propsFactory({\n color: String,\n direction: {\n type: String as PropType<'vertical' | 'horizontal'>,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n },\n side: {\n type: String as PropType<InfiniteScrollSide>,\n default: 'end',\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n },\n mode: {\n type: String as PropType<'intersect' | 'manual'>,\n default: 'intersect',\n validator: (v: any) => ['intersect', 'manual'].includes(v),\n },\n margin: [Number, String],\n loadMoreText: {\n type: String,\n default: '$vuetify.infiniteScroll.loadMore',\n },\n emptyText: {\n type: String,\n default: '$vuetify.infiniteScroll.empty',\n },\n\n ...makeDimensionProps(),\n ...makeTagProps(),\n}, 'VInfiniteScroll')\n\nexport const VInfiniteScrollIntersect = defineComponent({\n name: 'VInfiniteScrollIntersect',\n\n props: {\n side: {\n type: String as PropType<InfiniteScrollSide>,\n required: true,\n },\n rootRef: null,\n rootMargin: String,\n },\n\n emits: {\n intersect: (side: InfiniteScrollSide, isIntersecting: boolean) => true,\n },\n\n setup (props, { emit }) {\n const { intersectionRef, isIntersecting } = useIntersectionObserver(entries => {\n }, props.rootMargin ? {\n rootMargin: props.rootMargin,\n } : undefined)\n\n watch(isIntersecting, async val => {\n emit('intersect', props.side, val)\n })\n\n useRender(() => (\n <div class=\"v-infinite-scroll-intersect\" ref={ intersectionRef }>&nbsp;</div>\n ))\n\n return {}\n },\n})\n\nexport const VInfiniteScroll = genericComponent<VInfiniteScrollSlots>()({\n name: 'VInfiniteScroll',\n\n props: makeVInfiniteScrollProps(),\n\n emits: {\n load: (options: { side: InfiniteScrollSide, done: (status: InfiniteScrollStatus) => void }) => true,\n },\n\n setup (props, { slots, emit }) {\n const rootEl = ref<HTMLDivElement>()\n const startStatus = shallowRef<InfiniteScrollStatus>('ok')\n const endStatus = shallowRef<InfiniteScrollStatus>('ok')\n const margin = computed(() => convertToUnit(props.margin))\n const isIntersecting = shallowRef(false)\n\n function setScrollAmount (amount: number) {\n if (!rootEl.value) return\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n rootEl.value[property] = amount\n }\n\n function getScrollAmount () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n return rootEl.value[property]\n }\n\n function getScrollSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollHeight' : 'scrollWidth'\n return rootEl.value[property]\n }\n\n function getContainerSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'clientHeight' : 'clientWidth'\n return rootEl.value[property]\n }\n\n onMounted(() => {\n if (!rootEl.value) return\n\n if (props.side === 'start') {\n setScrollAmount(getScrollSize())\n } else if (props.side === 'both') {\n setScrollAmount(getScrollSize() / 2 - getContainerSize() / 2)\n }\n })\n\n function setStatus (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (side === 'start') {\n startStatus.value = status\n } else if (side === 'end') {\n endStatus.value = status\n }\n }\n\n function getStatus (side: string) {\n return side === 'start' ? startStatus.value : endStatus.value\n }\n\n let previousScrollSize = 0\n function handleIntersect (side: InfiniteScrollSide, _isIntersecting: boolean) {\n isIntersecting.value = _isIntersecting\n if (isIntersecting.value) {\n intersecting(side)\n }\n }\n\n function intersecting (side: InfiniteScrollSide) {\n if (props.mode !== 'manual' && !isIntersecting.value) return\n\n const status = getStatus(side)\n if (!rootEl.value || status === 'loading') return\n\n previousScrollSize = getScrollSize()\n setStatus(side, 'loading')\n\n function done (status: InfiniteScrollStatus) {\n setStatus(side, status)\n\n nextTick(() => {\n if (status === 'empty' || status === 'error') return\n\n if (status === 'ok' && side === 'start') {\n setScrollAmount(getScrollSize() - previousScrollSize + getScrollAmount())\n }\n if (props.mode !== 'manual') {\n nextTick(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n intersecting(side)\n })\n })\n })\n })\n }\n })\n }\n\n emit('load', { side, done })\n }\n\n const { t } = useLocale()\n\n function renderSide (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (props.side !== side && props.side !== 'both') return\n\n const onClick = () => intersecting(side)\n const slotProps = { side, props: { onClick, color: props.color } }\n\n if (status === 'error') return slots.error?.(slotProps)\n\n if (status === 'empty') return slots.empty?.(slotProps) ?? <div>{ t(props.emptyText) }</div>\n\n if (props.mode === 'manual') {\n if (status === 'loading') {\n return slots.loading?.(slotProps) ?? (\n <VProgressCircular indeterminate color={ props.color } />\n )\n }\n\n return slots['load-more']?.(slotProps) ?? (\n <VBtn variant=\"outlined\" color={ props.color } onClick={ onClick }>\n { t(props.loadMoreText) }\n </VBtn>\n )\n }\n\n return slots.loading?.(slotProps) ?? (\n <VProgressCircular indeterminate color={ props.color } />\n )\n }\n\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => {\n const Tag = props.tag\n const hasStartIntersect = props.side === 'start' || props.side === 'both'\n const hasEndIntersect = props.side === 'end' || props.side === 'both'\n const intersectMode = props.mode === 'intersect'\n\n return (\n <Tag\n ref={ rootEl }\n class={[\n 'v-infinite-scroll',\n `v-infinite-scroll--${props.direction}`,\n {\n 'v-infinite-scroll--start': hasStartIntersect,\n 'v-infinite-scroll--end': hasEndIntersect,\n },\n ]}\n style={ dimensionStyles.value }\n >\n <div class=\"v-infinite-scroll__side\">\n { renderSide('start', startStatus.value) }\n </div>\n\n { rootEl.value && hasStartIntersect && intersectMode && (\n <VInfiniteScrollIntersect\n key=\"start\"\n side=\"start\"\n onIntersect={ handleIntersect }\n rootRef={ rootEl.value }\n rootMargin={ margin.value }\n />\n )}\n\n { slots.default?.() }\n\n { rootEl.value && hasEndIntersect && intersectMode && (\n <VInfiniteScrollIntersect\n key=\"end\"\n side=\"end\"\n onIntersect={ handleIntersect }\n rootRef={ rootEl.value }\n rootMargin={ margin.value }\n />\n )}\n\n <div class=\"v-infinite-scroll__side\">\n { renderSide('end', endStatus.value) }\n </div>\n </Tag>\n )\n })\n },\n})\n\nexport type VInfiniteScroll = InstanceType<typeof VInfiniteScroll>\n"],"mappings":"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"}