vuetify 3.5.4 → 3.5.5

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 (151) hide show
  1. package/dist/json/attributes.json +2771 -2523
  2. package/dist/json/importMap-labs.json +4 -0
  3. package/dist/json/importMap.json +94 -94
  4. package/dist/json/tags.json +236 -169
  5. package/dist/json/web-types.json +3218 -2563
  6. package/dist/vuetify-labs.css +1819 -1796
  7. package/dist/vuetify-labs.d.ts +1234 -152
  8. package/dist/vuetify-labs.esm.js +555 -72
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +555 -72
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +887 -864
  13. package/dist/vuetify.d.ts +886 -179
  14. package/dist/vuetify.esm.js +121 -71
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +121 -71
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +647 -645
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/components/VAlert/index.d.mts +9 -0
  22. package/lib/components/VAppBar/index.d.mts +18 -0
  23. package/lib/components/VAutocomplete/VAutocomplete.mjs +4 -4
  24. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  25. package/lib/components/VAutocomplete/index.d.mts +33 -6
  26. package/lib/components/VAvatar/index.d.mts +9 -0
  27. package/lib/components/VBadge/index.d.mts +9 -0
  28. package/lib/components/VBanner/index.d.mts +9 -0
  29. package/lib/components/VBottomNavigation/index.d.mts +9 -0
  30. package/lib/components/VBreadcrumbs/index.d.mts +9 -0
  31. package/lib/components/VBtn/index.d.mts +9 -0
  32. package/lib/components/VBtnGroup/index.d.mts +9 -0
  33. package/lib/components/VBtnToggle/index.d.mts +9 -0
  34. package/lib/components/VCard/index.d.mts +9 -0
  35. package/lib/components/VCarousel/index.d.mts +9 -0
  36. package/lib/components/VChip/index.d.mts +9 -0
  37. package/lib/components/VColorPicker/index.d.mts +9 -0
  38. package/lib/components/VCombobox/index.d.mts +33 -6
  39. package/lib/components/VDataIterator/index.d.mts +3 -3
  40. package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
  41. package/lib/components/VDataTable/VDataTableHeaders.mjs.map +1 -1
  42. package/lib/components/VDataTable/index.d.mts +355 -117
  43. package/lib/components/VDataTable/types.mjs.map +1 -1
  44. package/lib/components/VDatePicker/VDatePicker.css +2 -21
  45. package/lib/components/VDatePicker/VDatePicker.mjs +14 -10
  46. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  47. package/lib/components/VDatePicker/VDatePicker.sass +3 -18
  48. package/lib/components/VDatePicker/VDatePickerHeader.css +2 -0
  49. package/lib/components/VDatePicker/VDatePickerHeader.sass +3 -0
  50. package/lib/components/VDatePicker/VDatePickerMonth.css +11 -5
  51. package/lib/components/VDatePicker/VDatePickerMonth.mjs +2 -1
  52. package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  53. package/lib/components/VDatePicker/VDatePickerMonth.sass +13 -5
  54. package/lib/components/VDatePicker/VDatePickerMonths.css +2 -3
  55. package/lib/components/VDatePicker/VDatePickerMonths.mjs +6 -3
  56. package/lib/components/VDatePicker/VDatePickerMonths.mjs.map +1 -1
  57. package/lib/components/VDatePicker/VDatePickerMonths.sass +4 -3
  58. package/lib/components/VDatePicker/VDatePickerYears.css +2 -2
  59. package/lib/components/VDatePicker/VDatePickerYears.mjs +8 -1
  60. package/lib/components/VDatePicker/VDatePickerYears.mjs.map +1 -1
  61. package/lib/components/VDatePicker/VDatePickerYears.sass +4 -2
  62. package/lib/components/VDatePicker/_variables.scss +14 -34
  63. package/lib/components/VDatePicker/index.d.mts +13 -4
  64. package/lib/components/VExpansionPanel/VExpansionPanel.css +14 -0
  65. package/lib/components/VExpansionPanel/VExpansionPanel.sass +14 -0
  66. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +9 -2
  67. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  68. package/lib/components/VExpansionPanel/index.d.mts +27 -0
  69. package/lib/components/VField/VField.css +20 -1
  70. package/lib/components/VField/VField.sass +19 -1
  71. package/lib/components/VField/index.d.mts +9 -0
  72. package/lib/components/VFileInput/VFileInput.mjs +1 -1
  73. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  74. package/lib/components/VFileInput/index.d.mts +9 -0
  75. package/lib/components/VFooter/index.d.mts +9 -0
  76. package/lib/components/VImg/index.d.mts +9 -0
  77. package/lib/components/VList/VListItem.css +2 -1
  78. package/lib/components/VList/VListItem.sass +1 -0
  79. package/lib/components/VList/_variables.scss +2 -1
  80. package/lib/components/VList/index.d.mts +18 -0
  81. package/lib/components/VMenu/VMenu.mjs +5 -5
  82. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  83. package/lib/components/VMenu/shared.mjs.map +1 -1
  84. package/lib/components/VNavigationDrawer/index.d.mts +9 -0
  85. package/lib/components/VPagination/index.d.mts +9 -0
  86. package/lib/components/VProgressLinear/index.d.mts +9 -0
  87. package/lib/components/VRangeSlider/index.d.mts +9 -0
  88. package/lib/components/VSelect/VSelect.mjs +4 -3
  89. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  90. package/lib/components/VSelect/index.d.mts +33 -6
  91. package/lib/components/VSheet/index.d.mts +9 -0
  92. package/lib/components/VSlider/index.d.mts +9 -0
  93. package/lib/components/VSnackbar/index.d.mts +9 -0
  94. package/lib/components/VStepper/index.d.mts +9 -0
  95. package/lib/components/VSystemBar/index.d.mts +9 -0
  96. package/lib/components/VTabs/index.d.mts +33 -6
  97. package/lib/components/VTextField/index.d.mts +33 -6
  98. package/lib/components/VTextarea/index.d.mts +9 -0
  99. package/lib/components/VTimeline/index.d.mts +9 -0
  100. package/lib/components/VToolbar/index.d.mts +9 -0
  101. package/lib/components/VTooltip/VTooltip.css +1 -0
  102. package/lib/components/VTooltip/VTooltip.sass +1 -0
  103. package/lib/components/VTooltip/_variables.scss +1 -0
  104. package/lib/components/index.d.mts +857 -151
  105. package/lib/composables/form.mjs +2 -1
  106. package/lib/composables/form.mjs.map +1 -1
  107. package/lib/composables/goto.mjs +16 -18
  108. package/lib/composables/goto.mjs.map +1 -1
  109. package/lib/composables/group.mjs +2 -0
  110. package/lib/composables/group.mjs.map +1 -1
  111. package/lib/composables/icons.mjs +17 -13
  112. package/lib/composables/icons.mjs.map +1 -1
  113. package/lib/composables/rounded.mjs +5 -1
  114. package/lib/composables/rounded.mjs.map +1 -1
  115. package/lib/composables/virtual.mjs +11 -3
  116. package/lib/composables/virtual.mjs.map +1 -1
  117. package/lib/entry-bundler.mjs +1 -1
  118. package/lib/framework.mjs +1 -1
  119. package/lib/iconsets/fa-svg.mjs +2 -1
  120. package/lib/iconsets/fa-svg.mjs.map +1 -1
  121. package/lib/index.d.mts +29 -28
  122. package/lib/labs/VCalendar/VCalendar.mjs +1 -1
  123. package/lib/labs/VCalendar/VCalendar.mjs.map +1 -1
  124. package/lib/labs/VPicker/VPicker.css +2 -2
  125. package/lib/labs/VPicker/VPicker.sass +2 -2
  126. package/lib/labs/VPicker/_variables.scss +2 -4
  127. package/lib/labs/VPicker/index.d.mts +9 -0
  128. package/lib/labs/VSparkline/VBarline.mjs +138 -0
  129. package/lib/labs/VSparkline/VBarline.mjs.map +1 -0
  130. package/lib/labs/VSparkline/VSparkline.mjs +49 -0
  131. package/lib/labs/VSparkline/VSparkline.mjs.map +1 -0
  132. package/lib/labs/VSparkline/VTrendline.mjs +143 -0
  133. package/lib/labs/VSparkline/VTrendline.mjs.map +1 -0
  134. package/lib/labs/VSparkline/index.d.mts +374 -0
  135. package/lib/labs/VSparkline/index.mjs +2 -0
  136. package/lib/labs/VSparkline/index.mjs.map +1 -0
  137. package/lib/labs/VSparkline/util/line.mjs +52 -0
  138. package/lib/labs/VSparkline/util/line.mjs.map +1 -0
  139. package/lib/labs/VSparkline/util/path.mjs +60 -0
  140. package/lib/labs/VSparkline/util/path.mjs.map +1 -0
  141. package/lib/labs/components.d.mts +376 -1
  142. package/lib/labs/components.mjs +1 -0
  143. package/lib/labs/components.mjs.map +1 -1
  144. package/lib/locale/nl.mjs +1 -1
  145. package/lib/locale/nl.mjs.map +1 -1
  146. package/lib/util/helpers.mjs +10 -0
  147. package/lib/util/helpers.mjs.map +1 -1
  148. package/package.json +2 -2
  149. package/lib/components/VDatePicker/VDatePickerTitle.mjs +0 -81
  150. package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +0 -1
  151. package/lib/components/VDatePicker/VDatePickerTitle.sass +0 -33
@@ -1 +1 @@
1
- {"version":3,"file":"VDatePickerYears.mjs","names":["VBtn","useDate","useProxiedModel","computed","nextTick","onMounted","ref","watchEffect","convertToUnit","createRange","genericComponent","propsFactory","useRender","makeVDatePickerYearsProps","color","String","height","Number","min","max","modelValue","VDatePickerYears","name","props","emits","year","setup","_ref","slots","adapter","model","years","getYear","date","startOfYear","setYear","map","i","text","format","value","yearRef","$el","scrollIntoView","block","_createVNode","btnProps","undefined","active","rounded","variant","onClick","_mergeProps"],"sources":["../../../src/components/VDatePicker/VDatePickerYears.tsx"],"sourcesContent":["// Styles\nimport './VDatePickerYears.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, watchEffect } from 'vue'\nimport { convertToUnit, createRange, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport type VDatePickerYearsSlots = {\n year: {\n year: {\n text: string\n value: number\n }\n i: number\n props: {\n active: boolean\n color?: string\n rounded: boolean\n text: string\n variant: 'flat' | 'text'\n onClick: () => void\n }\n }\n}\n\nexport const makeVDatePickerYearsProps = propsFactory({\n color: String,\n height: [String, Number],\n min: null as any as PropType<unknown>,\n max: null as any as PropType<unknown>,\n modelValue: Number,\n}, 'VDatePickerYears')\n\nexport const VDatePickerYears = genericComponent<VDatePickerYearsSlots>()({\n name: 'VDatePickerYears',\n\n props: makeVDatePickerYearsProps(),\n\n emits: {\n 'update:modelValue': (year: number) => true,\n },\n\n setup (props, { slots }) {\n const adapter = useDate()\n const model = useProxiedModel(props, 'modelValue')\n const years = computed(() => {\n const year = adapter.getYear(adapter.date())\n\n let min = year - 100\n let max = year + 52\n\n if (props.min) {\n min = adapter.getYear(adapter.date(props.min))\n }\n\n if (props.max) {\n max = adapter.getYear(adapter.date(props.max))\n }\n\n let date = adapter.startOfYear(adapter.date())\n\n date = adapter.setYear(date, min)\n\n return createRange(max - min + 1, min).map(i => {\n const text = adapter.format(date, 'year')\n date = adapter.setYear(date, adapter.getYear(date) + 1)\n\n return {\n text,\n value: i,\n }\n })\n })\n\n watchEffect(() => {\n model.value = model.value ?? adapter.getYear(adapter.date())\n })\n\n const yearRef = ref<VBtn>()\n onMounted(async () => {\n await nextTick()\n yearRef.value?.$el.scrollIntoView({ block: 'center' })\n })\n\n useRender(() => (\n <div\n class=\"v-date-picker-years\"\n style={{\n height: convertToUnit(props.height),\n }}\n >\n <div class=\"v-date-picker-years__content\">\n { years.value.map((year, i) => {\n const btnProps = {\n ref: model.value === year.value ? yearRef : undefined,\n active: model.value === year.value,\n color: model.value === year.value ? props.color : undefined,\n rounded: true,\n text: year.text,\n variant: model.value === year.value ? 'flat' : 'text',\n onClick: () => model.value = year.value,\n } as const\n\n return slots.year?.({\n year,\n i,\n props: btnProps,\n }) ?? (\n <VBtn\n key=\"month\"\n { ...btnProps }\n />\n )\n })}\n </div>\n </div>\n ))\n\n return {}\n },\n})\n\nexport type VDatePickerYears = InstanceType<typeof VDatePickerYears>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VDatePickerYears.mjs","names":["VBtn","useDate","useProxiedModel","computed","nextTick","onMounted","ref","watchEffect","convertToUnit","createRange","genericComponent","propsFactory","useRender","makeVDatePickerYearsProps","color","String","height","Number","min","max","modelValue","VDatePickerYears","name","props","emits","year","setup","_ref","emit","slots","adapter","model","years","getYear","date","startOfYear","setYear","map","i","text","format","value","yearRef","$el","scrollIntoView","block","_createVNode","btnProps","undefined","active","rounded","variant","onClick","_mergeProps"],"sources":["../../../src/components/VDatePicker/VDatePickerYears.tsx"],"sourcesContent":["// Styles\nimport './VDatePickerYears.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useDate } from '@/composables/date'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, watchEffect } from 'vue'\nimport { convertToUnit, createRange, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\nexport type VDatePickerYearsSlots = {\n year: {\n year: {\n text: string\n value: number\n }\n i: number\n props: {\n active: boolean\n color?: string\n rounded: boolean\n text: string\n variant: 'flat' | 'text'\n onClick: () => void\n }\n }\n}\n\nexport const makeVDatePickerYearsProps = propsFactory({\n color: String,\n height: [String, Number],\n min: null as any as PropType<unknown>,\n max: null as any as PropType<unknown>,\n modelValue: Number,\n}, 'VDatePickerYears')\n\nexport const VDatePickerYears = genericComponent<VDatePickerYearsSlots>()({\n name: 'VDatePickerYears',\n\n props: makeVDatePickerYearsProps(),\n\n emits: {\n 'update:modelValue': (year: number) => true,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n const model = useProxiedModel(props, 'modelValue')\n const years = computed(() => {\n const year = adapter.getYear(adapter.date())\n\n let min = year - 100\n let max = year + 52\n\n if (props.min) {\n min = adapter.getYear(adapter.date(props.min))\n }\n\n if (props.max) {\n max = adapter.getYear(adapter.date(props.max))\n }\n\n let date = adapter.startOfYear(adapter.date())\n\n date = adapter.setYear(date, min)\n\n return createRange(max - min + 1, min).map(i => {\n const text = adapter.format(date, 'year')\n date = adapter.setYear(date, adapter.getYear(date) + 1)\n\n return {\n text,\n value: i,\n }\n })\n })\n\n watchEffect(() => {\n model.value = model.value ?? adapter.getYear(adapter.date())\n })\n\n const yearRef = ref<VBtn>()\n onMounted(async () => {\n await nextTick()\n yearRef.value?.$el.scrollIntoView({ block: 'center' })\n })\n\n useRender(() => (\n <div\n class=\"v-date-picker-years\"\n style={{\n height: convertToUnit(props.height),\n }}\n >\n <div class=\"v-date-picker-years__content\">\n { years.value.map((year, i) => {\n const btnProps = {\n ref: model.value === year.value ? yearRef : undefined,\n active: model.value === year.value,\n color: model.value === year.value ? props.color : undefined,\n rounded: true,\n text: year.text,\n variant: model.value === year.value ? 'flat' : 'text',\n onClick: () => {\n if (model.value === year.value) {\n emit('update:modelValue', model.value)\n return\n }\n model.value = year.value\n },\n } as const\n\n return slots.year?.({\n year,\n i,\n props: btnProps,\n }) ?? (\n <VBtn\n key=\"month\"\n { ...btnProps }\n />\n )\n })}\n </div>\n </div>\n ))\n\n return {}\n },\n})\n\nexport type VDatePickerYears = InstanceType<typeof VDatePickerYears>\n"],"mappings":"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"}
@@ -1,5 +1,7 @@
1
+ @use './variables' as *
2
+
1
3
  .v-date-picker-years
2
- height: 320px
4
+ height: $date-picker-years-height
3
5
  overflow-y: scroll
4
6
 
5
7
  .v-date-picker-years__content
@@ -8,7 +10,7 @@
8
10
  justify-content: space-around
9
11
  grid-template-columns: repeat(3, 1fr)
10
12
  gap: 8px 24px
11
- padding-inline: 36px
13
+ padding-inline: $date-picker-years-padding-inline
12
14
 
13
15
  .v-btn
14
16
  padding-inline: 8px
@@ -1,37 +1,17 @@
1
- $date-picker-years-font-size: 16px !default;
2
- $date-picker-years-font-weight: 400 !default;
3
- $date-picker-years-portrait-height: 290px !default;
4
- $date-picker-years-landscape-height: 290px !default;
5
- $date-picker-years-item-padding: 8px 0 !default;
6
- $date-picker-years-active-font-size: 26px !default;
7
- $date-picker-years-active-font-weight: 500 !default;
8
- $date-picker-years-active-padding: 10px 0 !default;
9
- $date-picker-years-item-hover-background: rgba(0, 0, 0, 0.12) !default;
10
- $date-picker-years-item-align: center !default;
1
+ $date-picker-width: 328px !default;
2
+ $date-picker-show-week-width: 368px !default;
11
3
 
12
- $date-picker-title-year-font-size: 14px !default;
13
- $date-picker-title-year-font-weight: 500 !default;
14
- $date-picker-title-year-bottom-margin: 8px !default;
15
- $date-picker-title-date-font-size: 34px !default;
16
- $date-picker-title-date-font-weight: 500 !default;
4
+ $date-picker-header-height: 70px !default;
17
5
 
18
- $date-picker-header-padding: 4px 16px !default;
19
- $date-picker-header-button-font-weight: bold !default;
20
- $date-picker-header-button-padding: 0.5rem !default;
6
+ $date-picker-month-btn-height: 24px !default;
7
+ $date-picker-month-btn-size: 0.85rem !default;
8
+ $date-picker-month-column-gap: 4px !default;
9
+ $date-picker-month-day-size: 40px !default;
10
+ $date-picker-month-font-size: 0.85rem !default;
11
+ $date-picker-month-padding: 0 12px 8px !default;
21
12
 
22
- $date-picker-table-padding: 0 12px !default;
23
- $date-picker-table-height: 242px !default;
24
- $date-picker-table-font-size: 12px !default;
25
- $date-picker-table-date-button-width: 32px !default;
26
- $date-picker-table-date-button-height: 32px !default;
27
- $date-picker-table-month-height: 56px !default;
28
- $date-picker-table-month-min-width: 40px !default;
29
- $date-picker-table-month-max-width: 140px !default;
30
- $date-picker-table-date-padding: 8px 0 !default;
31
- $date-picker-table-date-font-weight: 600 !default;
32
- $date-picker-table-date-width: 45px !default;
33
- $date-picker-event-size: 8px !default;
34
- $date-picker-event-margin: 0 1px !default;
35
- $date-picker-event-border-radius: 50% !default;
36
- $date-picker-event-month-bottom: 6px !default;
37
- $date-picker-event-date-bottom: 8px !default;
13
+ $date-picker-months-grid-gap: 0px 24px !default;
14
+ $date-picker-months-height: 288px !default;
15
+
16
+ $date-picker-years-height: 288px !default;
17
+ $date-picker-years-padding-inline: 32px !default;
@@ -57,6 +57,7 @@ declare const VDatePicker: {
57
57
  disabled: boolean;
58
58
  tag: string;
59
59
  landscape: boolean;
60
+ tile: boolean;
60
61
  nextIcon: string;
61
62
  prevIcon: string;
62
63
  modeIcon: string;
@@ -106,6 +107,7 @@ declare const VDatePicker: {
106
107
  disabled: boolean;
107
108
  tag: string;
108
109
  landscape: boolean;
110
+ tile: boolean;
109
111
  nextIcon: string;
110
112
  prevIcon: string;
111
113
  modeIcon: string;
@@ -152,6 +154,7 @@ declare const VDatePicker: {
152
154
  tag: string;
153
155
  landscape: boolean;
154
156
  rounded: string | number | boolean;
157
+ tile: boolean;
155
158
  nextIcon: string;
156
159
  prevIcon: string;
157
160
  modeIcon: string;
@@ -191,6 +194,7 @@ declare const VDatePicker: {
191
194
  disabled: boolean;
192
195
  tag: string;
193
196
  landscape: boolean;
197
+ tile: boolean;
194
198
  nextIcon: string;
195
199
  prevIcon: string;
196
200
  modeIcon: string;
@@ -237,6 +241,7 @@ declare const VDatePicker: {
237
241
  tag: string;
238
242
  landscape: boolean;
239
243
  rounded: string | number | boolean;
244
+ tile: boolean;
240
245
  nextIcon: string;
241
246
  prevIcon: string;
242
247
  modeIcon: string;
@@ -257,6 +262,7 @@ declare const VDatePicker: {
257
262
  disabled: boolean;
258
263
  tag: string;
259
264
  landscape: boolean;
265
+ tile: boolean;
260
266
  nextIcon: string;
261
267
  prevIcon: string;
262
268
  modeIcon: string;
@@ -308,6 +314,7 @@ declare const VDatePicker: {
308
314
  tag: string;
309
315
  landscape: boolean;
310
316
  rounded: string | number | boolean;
317
+ tile: boolean;
311
318
  nextIcon: string;
312
319
  prevIcon: string;
313
320
  modeIcon: string;
@@ -352,6 +359,7 @@ declare const VDatePicker: {
352
359
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
353
360
  default: undefined;
354
361
  };
362
+ tile: BooleanConstructor;
355
363
  position: {
356
364
  type: vue.PropType<"fixed" | "absolute" | "static" | "sticky" | "relative">;
357
365
  validator: (v: any) => boolean;
@@ -445,6 +453,7 @@ declare const VDatePicker: {
445
453
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
446
454
  default: undefined;
447
455
  };
456
+ tile: BooleanConstructor;
448
457
  position: {
449
458
  type: vue.PropType<"fixed" | "absolute" | "static" | "sticky" | "relative">;
450
459
  validator: (v: any) => boolean;
@@ -1238,7 +1247,7 @@ declare const VDatePickerMonths: {
1238
1247
  } & {
1239
1248
  "onUpdate:modelValue"?: ((date: any) => any) | undefined;
1240
1249
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1241
- 'update:modelValue': (date: any) => boolean;
1250
+ 'update:modelValue': (date: any) => true;
1242
1251
  }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {} & {
1243
1252
  height?: string | number | undefined;
1244
1253
  color?: string | undefined;
@@ -1390,7 +1399,7 @@ declare const VDatePickerMonths: {
1390
1399
  } & {
1391
1400
  "onUpdate:modelValue"?: ((date: any) => any) | undefined;
1392
1401
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1393
- 'update:modelValue': (date: any) => boolean;
1402
+ 'update:modelValue': (date: any) => true;
1394
1403
  }, string, {}, {}, string, vue.SlotsType<Partial<{
1395
1404
  month: (arg: {
1396
1405
  month: {
@@ -1476,7 +1485,7 @@ declare const VDatePickerYears: {
1476
1485
  } & {
1477
1486
  "onUpdate:modelValue"?: ((year: number) => any) | undefined;
1478
1487
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1479
- 'update:modelValue': (year: number) => boolean;
1488
+ 'update:modelValue': (year: number) => true;
1480
1489
  }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {} & {
1481
1490
  max?: unknown;
1482
1491
  height?: string | number | undefined;
@@ -1684,7 +1693,7 @@ declare const VDatePickerYears: {
1684
1693
  } & {
1685
1694
  "onUpdate:modelValue"?: ((year: number) => any) | undefined;
1686
1695
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1687
- 'update:modelValue': (year: number) => boolean;
1696
+ 'update:modelValue': (year: number) => true;
1688
1697
  }, string, {}, {}, string, vue.SlotsType<Partial<{
1689
1698
  year: (arg: {
1690
1699
  year: {
@@ -196,4 +196,18 @@
196
196
  }
197
197
  .v-expansion-panels--variant-inset > .v-expansion-panel--active {
198
198
  max-width: calc(100% - 32px);
199
+ }
200
+
201
+ .v-expansion-panels--flat > .v-expansion-panel::after {
202
+ border-top: none;
203
+ }
204
+ .v-expansion-panels--flat > .v-expansion-panel .v-expansion-panel__shadow {
205
+ display: none;
206
+ }
207
+
208
+ .v-expansion-panels--tile {
209
+ border-radius: 0;
210
+ }
211
+ .v-expansion-panels--tile > .v-expansion-panel {
212
+ border-radius: 0;
199
213
  }
@@ -173,3 +173,17 @@
173
173
 
174
174
  &--active
175
175
  max-width: $expansion-panel-inset-active-max-width
176
+
177
+ .v-expansion-panels--flat
178
+ > .v-expansion-panel
179
+ &::after
180
+ border-top: none
181
+
182
+ .v-expansion-panel__shadow
183
+ display: none
184
+
185
+ .v-expansion-panels--tile
186
+ border-radius: 0
187
+
188
+ > .v-expansion-panel
189
+ border-radius: 0
@@ -14,7 +14,9 @@ export const VExpansionPanelSymbol = Symbol.for('vuetify:v-expansion-panel');
14
14
  const allowedVariants = ['default', 'accordion', 'inset', 'popout'];
15
15
  export const makeVExpansionPanelsProps = propsFactory({
16
16
  color: String,
17
+ flat: Boolean,
17
18
  static: Boolean,
19
+ tile: Boolean,
18
20
  variant: {
19
21
  type: String,
20
22
  default: 'default',
@@ -44,12 +46,17 @@ export const VExpansionPanels = genericComponent()({
44
46
  provideDefaults({
45
47
  VExpansionPanel: {
46
48
  color: toRef(props, 'color'),
47
- readonly: toRef(props, 'readonly'),
49
+ readonly: toRef(props, 'readonly')
50
+ },
51
+ VExpansionPanelTitle: {
48
52
  static: toRef(props, 'static')
49
53
  }
50
54
  });
51
55
  useRender(() => _createVNode(props.tag, {
52
- "class": ['v-expansion-panels', themeClasses.value, variantClass.value, props.class],
56
+ "class": ['v-expansion-panels', {
57
+ 'v-expansion-panels--flat': props.flat,
58
+ 'v-expansion-panels--tile': props.tile
59
+ }, themeClasses.value, variantClass.value, props.class],
53
60
  "style": props.style
54
61
  }, slots));
55
62
  return {};
@@ -1 +1 @@
1
- {"version":3,"file":"VExpansionPanels.mjs","names":["makeComponentProps","provideDefaults","makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","computed","toRef","genericComponent","propsFactory","useRender","VExpansionPanelSymbol","Symbol","for","allowedVariants","makeVExpansionPanelsProps","color","String","static","Boolean","variant","type","default","validator","v","includes","readonly","VExpansionPanels","name","props","emits","val","setup","_ref","slots","themeClasses","variantClass","VExpansionPanel","_createVNode","tag","value","class","style"],"sources":["../../../src/components/VExpansionPanel/VExpansionPanels.tsx"],"sourcesContent":["// Styles\nimport './VExpansionPanel.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType } from 'vue'\nimport type { GroupItemProvide } from '@/composables/group'\n\nexport const VExpansionPanelSymbol: InjectionKey<GroupItemProvide> = Symbol.for('vuetify:v-expansion-panel')\n\nconst allowedVariants = ['default', 'accordion', 'inset', 'popout'] as const\n\ntype Variant = typeof allowedVariants[number]\n\nexport const makeVExpansionPanelsProps = propsFactory({\n color: String,\n static: Boolean,\n variant: {\n type: String as PropType<Variant>,\n default: 'default',\n validator: (v: any) => allowedVariants.includes(v),\n },\n readonly: Boolean,\n\n ...makeComponentProps(),\n ...makeGroupProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VExpansionPanels')\n\nexport const VExpansionPanels = genericComponent()({\n name: 'VExpansionPanels',\n\n props: makeVExpansionPanelsProps(),\n\n emits: {\n 'update:modelValue': (val: unknown) => true,\n },\n\n setup (props, { slots }) {\n useGroup(props, VExpansionPanelSymbol)\n\n const { themeClasses } = provideTheme(props)\n\n const variantClass = computed(() => props.variant && `v-expansion-panels--variant-${props.variant}`)\n\n provideDefaults({\n VExpansionPanel: {\n color: toRef(props, 'color'),\n readonly: toRef(props, 'readonly'),\n static: toRef(props, 'static'),\n },\n })\n\n useRender(() => (\n <props.tag\n class={[\n 'v-expansion-panels',\n themeClasses.value,\n variantClass.value,\n props.class,\n ]}\n style={ props.style }\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VExpansionPanels = InstanceType<typeof VExpansionPanels>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY,uCAErC;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAIA,OAAO,MAAMC,qBAAqD,GAAGC,MAAM,CAACC,GAAG,CAAC,2BAA2B,CAAC;AAE5G,MAAMC,eAAe,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAU;AAI5E,OAAO,MAAMC,yBAAyB,GAAGN,YAAY,CAAC;EACpDO,KAAK,EAAEC,MAAM;EACbC,MAAM,EAAEC,OAAO;EACfC,OAAO,EAAE;IACPC,IAAI,EAAEJ,MAA2B;IACjCK,OAAO,EAAE,SAAS;IAClBC,SAAS,EAAGC,CAAM,IAAKV,eAAe,CAACW,QAAQ,CAACD,CAAC;EACnD,CAAC;EACDE,QAAQ,EAAEP,OAAO;EAEjB,GAAGpB,kBAAkB,CAAC,CAAC;EACvB,GAAGE,cAAc,CAAC,CAAC;EACnB,GAAGE,YAAY,CAAC,CAAC;EACjB,GAAGC,cAAc,CAAC;AACpB,CAAC,EAAE,kBAAkB,CAAC;AAEtB,OAAO,MAAMuB,gBAAgB,GAAGnB,gBAAgB,CAAC,CAAC,CAAC;EACjDoB,IAAI,EAAE,kBAAkB;EAExBC,KAAK,EAAEd,yBAAyB,CAAC,CAAC;EAElCe,KAAK,EAAE;IACL,mBAAmB,EAAGC,GAAY,IAAK;EACzC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB/B,QAAQ,CAAC2B,KAAK,EAAElB,qBAAqB,CAAC;IAEtC,MAAM;MAAEwB;IAAa,CAAC,GAAG9B,YAAY,CAACwB,KAAK,CAAC;IAE5C,MAAMO,YAAY,GAAG9B,QAAQ,CAAC,MAAMuB,KAAK,CAACT,OAAO,IAAK,+BAA8BS,KAAK,CAACT,OAAQ,EAAC,CAAC;IAEpGpB,eAAe,CAAC;MACdqC,eAAe,EAAE;QACfrB,KAAK,EAAET,KAAK,CAACsB,KAAK,EAAE,OAAO,CAAC;QAC5BH,QAAQ,EAAEnB,KAAK,CAACsB,KAAK,EAAE,UAAU,CAAC;QAClCX,MAAM,EAAEX,KAAK,CAACsB,KAAK,EAAE,QAAQ;MAC/B;IACF,CAAC,CAAC;IAEFnB,SAAS,CAAC,MAAA4B,YAAA,CAAAT,KAAA,CAAAU,GAAA;MAAA,SAEC,CACL,oBAAoB,EACpBJ,YAAY,CAACK,KAAK,EAClBJ,YAAY,CAACI,KAAK,EAClBX,KAAK,CAACY,KAAK,CACZ;MAAA,SACOZ,KAAK,CAACa;IAAK,GACTR,KAAK,CAElB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VExpansionPanels.mjs","names":["makeComponentProps","provideDefaults","makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","computed","toRef","genericComponent","propsFactory","useRender","VExpansionPanelSymbol","Symbol","for","allowedVariants","makeVExpansionPanelsProps","color","String","flat","Boolean","static","tile","variant","type","default","validator","v","includes","readonly","VExpansionPanels","name","props","emits","val","setup","_ref","slots","themeClasses","variantClass","VExpansionPanel","VExpansionPanelTitle","_createVNode","tag","value","class","style"],"sources":["../../../src/components/VExpansionPanel/VExpansionPanels.tsx"],"sourcesContent":["// Styles\nimport './VExpansionPanel.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType } from 'vue'\nimport type { GroupItemProvide } from '@/composables/group'\n\nexport const VExpansionPanelSymbol: InjectionKey<GroupItemProvide> = Symbol.for('vuetify:v-expansion-panel')\n\nconst allowedVariants = ['default', 'accordion', 'inset', 'popout'] as const\n\ntype Variant = typeof allowedVariants[number]\n\nexport const makeVExpansionPanelsProps = propsFactory({\n color: String,\n flat: Boolean,\n static: Boolean,\n tile: Boolean,\n variant: {\n type: String as PropType<Variant>,\n default: 'default',\n validator: (v: any) => allowedVariants.includes(v),\n },\n readonly: Boolean,\n\n ...makeComponentProps(),\n ...makeGroupProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n}, 'VExpansionPanels')\n\nexport const VExpansionPanels = genericComponent()({\n name: 'VExpansionPanels',\n\n props: makeVExpansionPanelsProps(),\n\n emits: {\n 'update:modelValue': (val: unknown) => true,\n },\n\n setup (props, { slots }) {\n useGroup(props, VExpansionPanelSymbol)\n\n const { themeClasses } = provideTheme(props)\n\n const variantClass = computed(() => props.variant && `v-expansion-panels--variant-${props.variant}`)\n\n provideDefaults({\n VExpansionPanel: {\n color: toRef(props, 'color'),\n readonly: toRef(props, 'readonly'),\n },\n VExpansionPanelTitle: {\n static: toRef(props, 'static'),\n },\n })\n\n useRender(() => (\n <props.tag\n class={[\n 'v-expansion-panels',\n {\n 'v-expansion-panels--flat': props.flat,\n 'v-expansion-panels--tile': props.tile,\n },\n themeClasses.value,\n variantClass.value,\n props.class,\n ]}\n style={ props.style }\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VExpansionPanels = InstanceType<typeof VExpansionPanels>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY,uCAErC;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAIA,OAAO,MAAMC,qBAAqD,GAAGC,MAAM,CAACC,GAAG,CAAC,2BAA2B,CAAC;AAE5G,MAAMC,eAAe,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAU;AAI5E,OAAO,MAAMC,yBAAyB,GAAGN,YAAY,CAAC;EACpDO,KAAK,EAAEC,MAAM;EACbC,IAAI,EAAEC,OAAO;EACbC,MAAM,EAAED,OAAO;EACfE,IAAI,EAAEF,OAAO;EACbG,OAAO,EAAE;IACPC,IAAI,EAAEN,MAA2B;IACjCO,OAAO,EAAE,SAAS;IAClBC,SAAS,EAAGC,CAAM,IAAKZ,eAAe,CAACa,QAAQ,CAACD,CAAC;EACnD,CAAC;EACDE,QAAQ,EAAET,OAAO;EAEjB,GAAGpB,kBAAkB,CAAC,CAAC;EACvB,GAAGE,cAAc,CAAC,CAAC;EACnB,GAAGE,YAAY,CAAC,CAAC;EACjB,GAAGC,cAAc,CAAC;AACpB,CAAC,EAAE,kBAAkB,CAAC;AAEtB,OAAO,MAAMyB,gBAAgB,GAAGrB,gBAAgB,CAAC,CAAC,CAAC;EACjDsB,IAAI,EAAE,kBAAkB;EAExBC,KAAK,EAAEhB,yBAAyB,CAAC,CAAC;EAElCiB,KAAK,EAAE;IACL,mBAAmB,EAAGC,GAAY,IAAK;EACzC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBjC,QAAQ,CAAC6B,KAAK,EAAEpB,qBAAqB,CAAC;IAEtC,MAAM;MAAE0B;IAAa,CAAC,GAAGhC,YAAY,CAAC0B,KAAK,CAAC;IAE5C,MAAMO,YAAY,GAAGhC,QAAQ,CAAC,MAAMyB,KAAK,CAACT,OAAO,IAAK,+BAA8BS,KAAK,CAACT,OAAQ,EAAC,CAAC;IAEpGtB,eAAe,CAAC;MACduC,eAAe,EAAE;QACfvB,KAAK,EAAET,KAAK,CAACwB,KAAK,EAAE,OAAO,CAAC;QAC5BH,QAAQ,EAAErB,KAAK,CAACwB,KAAK,EAAE,UAAU;MACnC,CAAC;MACDS,oBAAoB,EAAE;QACpBpB,MAAM,EAAEb,KAAK,CAACwB,KAAK,EAAE,QAAQ;MAC/B;IACF,CAAC,CAAC;IAEFrB,SAAS,CAAC,MAAA+B,YAAA,CAAAV,KAAA,CAAAW,GAAA;MAAA,SAEC,CACL,oBAAoB,EACpB;QACE,0BAA0B,EAAEX,KAAK,CAACb,IAAI;QACtC,0BAA0B,EAAEa,KAAK,CAACV;MACpC,CAAC,EACDgB,YAAY,CAACM,KAAK,EAClBL,YAAY,CAACK,KAAK,EAClBZ,KAAK,CAACa,KAAK,CACZ;MAAA,SACOb,KAAK,CAACc;IAAK,GACTT,KAAK,CAElB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
@@ -7,6 +7,7 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
7
7
 
8
8
  declare const VExpansionPanels: {
9
9
  new (...args: any[]): vue.CreateComponentPublicInstance<{
10
+ flat: boolean;
10
11
  variant: "default" | "inset" | "accordion" | "popout";
11
12
  style: vue.StyleValue;
12
13
  disabled: boolean;
@@ -14,6 +15,7 @@ declare const VExpansionPanels: {
14
15
  readonly: boolean;
15
16
  static: boolean;
16
17
  tag: string;
18
+ tile: boolean;
17
19
  } & {
18
20
  max?: number | undefined;
19
21
  color?: string | undefined;
@@ -36,6 +38,7 @@ declare const VExpansionPanels: {
36
38
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
37
39
  'update:modelValue': (val: unknown) => boolean;
38
40
  }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
41
+ flat: boolean;
39
42
  variant: "default" | "inset" | "accordion" | "popout";
40
43
  style: vue.StyleValue;
41
44
  disabled: boolean;
@@ -43,6 +46,7 @@ declare const VExpansionPanels: {
43
46
  readonly: boolean;
44
47
  static: boolean;
45
48
  tag: string;
49
+ tile: boolean;
46
50
  } & {
47
51
  max?: number | undefined;
48
52
  color?: string | undefined;
@@ -63,6 +67,7 @@ declare const VExpansionPanels: {
63
67
  } & {
64
68
  "onUpdate:modelValue"?: ((val: unknown) => any) | undefined;
65
69
  }, {
70
+ flat: boolean;
66
71
  variant: "default" | "inset" | "accordion" | "popout";
67
72
  style: vue.StyleValue;
68
73
  disabled: boolean;
@@ -70,6 +75,7 @@ declare const VExpansionPanels: {
70
75
  readonly: boolean;
71
76
  static: boolean;
72
77
  tag: string;
78
+ tile: boolean;
73
79
  modelValue: any;
74
80
  }, true, {}, vue.SlotsType<Partial<{
75
81
  default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
@@ -83,6 +89,7 @@ declare const VExpansionPanels: {
83
89
  M: {};
84
90
  Defaults: {};
85
91
  }, {
92
+ flat: boolean;
86
93
  variant: "default" | "inset" | "accordion" | "popout";
87
94
  style: vue.StyleValue;
88
95
  disabled: boolean;
@@ -90,6 +97,7 @@ declare const VExpansionPanels: {
90
97
  readonly: boolean;
91
98
  static: boolean;
92
99
  tag: string;
100
+ tile: boolean;
93
101
  } & {
94
102
  max?: number | undefined;
95
103
  color?: string | undefined;
@@ -110,6 +118,7 @@ declare const VExpansionPanels: {
110
118
  } & {
111
119
  "onUpdate:modelValue"?: ((val: unknown) => any) | undefined;
112
120
  }, {}, {}, {}, {}, {
121
+ flat: boolean;
113
122
  variant: "default" | "inset" | "accordion" | "popout";
114
123
  style: vue.StyleValue;
115
124
  disabled: boolean;
@@ -117,12 +126,14 @@ declare const VExpansionPanels: {
117
126
  readonly: boolean;
118
127
  static: boolean;
119
128
  tag: string;
129
+ tile: boolean;
120
130
  modelValue: any;
121
131
  }>;
122
132
  __isFragment?: undefined;
123
133
  __isTeleport?: undefined;
124
134
  __isSuspense?: undefined;
125
135
  } & vue.ComponentOptionsBase<{
136
+ flat: boolean;
126
137
  variant: "default" | "inset" | "accordion" | "popout";
127
138
  style: vue.StyleValue;
128
139
  disabled: boolean;
@@ -130,6 +141,7 @@ declare const VExpansionPanels: {
130
141
  readonly: boolean;
131
142
  static: boolean;
132
143
  tag: string;
144
+ tile: boolean;
133
145
  } & {
134
146
  max?: number | undefined;
135
147
  color?: string | undefined;
@@ -152,6 +164,7 @@ declare const VExpansionPanels: {
152
164
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
153
165
  'update:modelValue': (val: unknown) => boolean;
154
166
  }, string, {
167
+ flat: boolean;
155
168
  variant: "default" | "inset" | "accordion" | "popout";
156
169
  style: vue.StyleValue;
157
170
  disabled: boolean;
@@ -159,6 +172,7 @@ declare const VExpansionPanels: {
159
172
  readonly: boolean;
160
173
  static: boolean;
161
174
  tag: string;
175
+ tile: boolean;
162
176
  modelValue: any;
163
177
  }, {}, string, vue.SlotsType<Partial<{
164
178
  default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
@@ -185,7 +199,9 @@ declare const VExpansionPanels: {
185
199
  default: null;
186
200
  };
187
201
  color: StringConstructor;
202
+ flat: BooleanConstructor;
188
203
  static: BooleanConstructor;
204
+ tile: BooleanConstructor;
189
205
  variant: {
190
206
  type: PropType<"default" | "inset" | "accordion" | "popout">;
191
207
  default: string;
@@ -213,7 +229,9 @@ declare const VExpansionPanels: {
213
229
  default: null;
214
230
  };
215
231
  color: StringConstructor;
232
+ flat: BooleanConstructor;
216
233
  static: BooleanConstructor;
234
+ tile: BooleanConstructor;
217
235
  variant: {
218
236
  type: PropType<"default" | "inset" | "accordion" | "popout">;
219
237
  default: string;
@@ -234,6 +252,7 @@ declare const VExpansionPanel: {
234
252
  readonly: boolean;
235
253
  static: boolean;
236
254
  tag: string;
255
+ tile: boolean;
237
256
  ripple: boolean | {
238
257
  class: string;
239
258
  } | undefined;
@@ -280,6 +299,7 @@ declare const VExpansionPanel: {
280
299
  readonly: boolean;
281
300
  static: boolean;
282
301
  tag: string;
302
+ tile: boolean;
283
303
  ripple: boolean | {
284
304
  class: string;
285
305
  } | undefined;
@@ -323,6 +343,7 @@ declare const VExpansionPanel: {
323
343
  static: boolean;
324
344
  tag: string;
325
345
  rounded: string | number | boolean;
346
+ tile: boolean;
326
347
  ripple: boolean | {
327
348
  class: string;
328
349
  } | undefined;
@@ -353,6 +374,7 @@ declare const VExpansionPanel: {
353
374
  readonly: boolean;
354
375
  static: boolean;
355
376
  tag: string;
377
+ tile: boolean;
356
378
  ripple: boolean | {
357
379
  class: string;
358
380
  } | undefined;
@@ -396,6 +418,7 @@ declare const VExpansionPanel: {
396
418
  static: boolean;
397
419
  tag: string;
398
420
  rounded: string | number | boolean;
421
+ tile: boolean;
399
422
  ripple: boolean | {
400
423
  class: string;
401
424
  } | undefined;
@@ -413,6 +436,7 @@ declare const VExpansionPanel: {
413
436
  readonly: boolean;
414
437
  static: boolean;
415
438
  tag: string;
439
+ tile: boolean;
416
440
  ripple: boolean | {
417
441
  class: string;
418
442
  } | undefined;
@@ -460,6 +484,7 @@ declare const VExpansionPanel: {
460
484
  static: boolean;
461
485
  tag: string;
462
486
  rounded: string | number | boolean;
487
+ tile: boolean;
463
488
  ripple: boolean | {
464
489
  class: string;
465
490
  } | undefined;
@@ -508,6 +533,7 @@ declare const VExpansionPanel: {
508
533
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
509
534
  default: undefined;
510
535
  };
536
+ tile: BooleanConstructor;
511
537
  eager: BooleanConstructor;
512
538
  value: null;
513
539
  disabled: BooleanConstructor;
@@ -551,6 +577,7 @@ declare const VExpansionPanel: {
551
577
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
552
578
  default: undefined;
553
579
  };
580
+ tile: BooleanConstructor;
554
581
  eager: BooleanConstructor;
555
582
  value: null;
556
583
  disabled: BooleanConstructor;
@@ -414,6 +414,15 @@ textarea.v-field__input::placeholder {
414
414
  flex-basis: calc(var(--v-input-control-height) / 2 + 2px);
415
415
  }
416
416
 
417
+ .v-field--reverse.v-field--variant-outlined .v-field__outline__start {
418
+ border-start-start-radius: 0;
419
+ border-start-end-radius: inherit;
420
+ border-end-end-radius: inherit;
421
+ border-end-start-radius: 0;
422
+ border-inline-end-width: var(--v-field-border-width);
423
+ border-inline-start-width: 0;
424
+ }
425
+
417
426
  .v-field--variant-outlined .v-field__outline__notch {
418
427
  flex: none;
419
428
  position: relative;
@@ -450,6 +459,14 @@ textarea.v-field__input::placeholder {
450
459
  border-end-end-radius: inherit;
451
460
  border-end-start-radius: 0;
452
461
  }
462
+ .v-field--reverse.v-field--variant-outlined .v-field__outline__end {
463
+ border-start-start-radius: inherit;
464
+ border-start-end-radius: 0;
465
+ border-end-end-radius: 0;
466
+ border-end-start-radius: inherit;
467
+ border-inline-end-width: 0;
468
+ border-inline-start-width: var(--v-field-border-width);
469
+ }
453
470
 
454
471
  /* endregion */
455
472
  /* region LOADER */
@@ -530,7 +547,9 @@ textarea.v-field__input::placeholder {
530
547
 
531
548
  /* endregion */
532
549
  /* region MODIFIERS */
533
- .v-field--reverse .v-field__field, .v-field--reverse .v-field__input {
550
+ .v-field--reverse .v-field__field,
551
+ .v-field--reverse .v-field__input,
552
+ .v-field--reverse .v-field__outline {
534
553
  flex-direction: row-reverse;
535
554
  }
536
555
  .v-field--reverse .v-field__input, .v-field--reverse input {
@@ -387,6 +387,14 @@
387
387
  #{selector.append('[class^="rounded-"]', &)},
388
388
  #{selector.append('[class*=" rounded-"]', &)}
389
389
  flex-basis: calc(var(--v-input-control-height) / 2 + 2px)
390
+
391
+ @at-root #{selector.append('.v-field--reverse', &)}
392
+ border-start-start-radius: 0
393
+ border-start-end-radius: inherit
394
+ border-end-end-radius: inherit
395
+ border-end-start-radius: 0
396
+ border-inline-end-width: var(--v-field-border-width)
397
+ border-inline-start-width: 0
390
398
 
391
399
  &__notch
392
400
  flex: none
@@ -421,6 +429,14 @@
421
429
  border-end-end-radius: inherit
422
430
  border-end-start-radius: 0
423
431
 
432
+ @at-root #{selector.append('.v-field--reverse', &)}
433
+ border-start-start-radius: inherit
434
+ border-start-end-radius: 0
435
+ border-end-end-radius: 0
436
+ border-end-start-radius: inherit
437
+ border-inline-end-width: 0
438
+ border-inline-start-width: var(--v-field-border-width)
439
+
424
440
  /* endregion */
425
441
  /* region LOADER */
426
442
  .v-field__loader
@@ -493,7 +509,9 @@
493
509
  /* endregion */
494
510
  /* region MODIFIERS */
495
511
  .v-field--reverse
496
- .v-field__field, .v-field__input
512
+ .v-field__field,
513
+ .v-field__input,
514
+ .v-field__outline
497
515
  flex-direction: row-reverse
498
516
 
499
517
  .v-field__input, input
@@ -68,6 +68,7 @@ declare const VField: {
68
68
  active: boolean;
69
69
  style: vue.StyleValue;
70
70
  disabled: boolean;
71
+ tile: boolean;
71
72
  clearIcon: IconValue;
72
73
  focused: boolean;
73
74
  clearable: boolean;
@@ -106,6 +107,7 @@ declare const VField: {
106
107
  active: boolean;
107
108
  style: vue.StyleValue;
108
109
  disabled: boolean;
110
+ tile: boolean;
109
111
  clearIcon: IconValue;
110
112
  focused: boolean;
111
113
  clearable: boolean;
@@ -140,6 +142,7 @@ declare const VField: {
140
142
  style: vue.StyleValue;
141
143
  disabled: boolean;
142
144
  rounded: string | number | boolean;
145
+ tile: boolean;
143
146
  clearIcon: IconValue;
144
147
  focused: boolean;
145
148
  centerAffix: boolean;
@@ -184,6 +187,7 @@ declare const VField: {
184
187
  active: boolean;
185
188
  style: vue.StyleValue;
186
189
  disabled: boolean;
190
+ tile: boolean;
187
191
  clearIcon: IconValue;
188
192
  focused: boolean;
189
193
  clearable: boolean;
@@ -220,6 +224,7 @@ declare const VField: {
220
224
  style: vue.StyleValue;
221
225
  disabled: boolean;
222
226
  rounded: string | number | boolean;
227
+ tile: boolean;
223
228
  clearIcon: IconValue;
224
229
  focused: boolean;
225
230
  centerAffix: boolean;
@@ -239,6 +244,7 @@ declare const VField: {
239
244
  active: boolean;
240
245
  style: vue.StyleValue;
241
246
  disabled: boolean;
247
+ tile: boolean;
242
248
  clearIcon: IconValue;
243
249
  focused: boolean;
244
250
  clearable: boolean;
@@ -278,6 +284,7 @@ declare const VField: {
278
284
  style: vue.StyleValue;
279
285
  disabled: boolean;
280
286
  rounded: string | number | boolean;
287
+ tile: boolean;
281
288
  clearIcon: IconValue;
282
289
  focused: boolean;
283
290
  centerAffix: boolean;
@@ -319,6 +326,7 @@ declare const VField: {
319
326
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
320
327
  default: undefined;
321
328
  };
329
+ tile: BooleanConstructor;
322
330
  loading: (StringConstructor | BooleanConstructor)[];
323
331
  class: PropType<any>;
324
332
  style: {
@@ -368,6 +376,7 @@ declare const VField: {
368
376
  type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
369
377
  default: undefined;
370
378
  };
379
+ tile: BooleanConstructor;
371
380
  loading: (StringConstructor | BooleanConstructor)[];
372
381
  class: PropType<any>;
373
382
  style: {
@@ -103,7 +103,7 @@ export const VFileInput = genericComponent()({
103
103
  if (!isFocused.value) focus();
104
104
  }
105
105
  function onClickPrepend(e) {
106
- onControlClick(e);
106
+ inputRef.value?.click();
107
107
  }
108
108
  function onControlMousedown(e) {
109
109
  emit('mousedown:control', e);