vuetify 3.1.15 → 3.1.16

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 (46) hide show
  1. package/dist/json/attributes.json +44 -44
  2. package/dist/json/importMap.json +72 -72
  3. package/dist/json/web-types.json +77 -77
  4. package/dist/vuetify-labs.css +370 -371
  5. package/dist/vuetify-labs.d.ts +3 -3
  6. package/dist/vuetify-labs.esm.js +101 -68
  7. package/dist/vuetify-labs.esm.js.map +1 -1
  8. package/dist/vuetify-labs.js +101 -68
  9. package/dist/vuetify-labs.min.css +2 -2
  10. package/dist/vuetify.css +7 -8
  11. package/dist/vuetify.d.ts +24 -24
  12. package/dist/vuetify.esm.js +63 -41
  13. package/dist/vuetify.esm.js.map +1 -1
  14. package/dist/vuetify.js +63 -41
  15. package/dist/vuetify.js.map +1 -1
  16. package/dist/vuetify.min.css +2 -2
  17. package/dist/vuetify.min.js +717 -714
  18. package/dist/vuetify.min.js.map +1 -1
  19. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +31 -16
  20. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  21. package/lib/components/VBreadcrumbs/index.d.ts +3 -3
  22. package/lib/components/VDialog/VDialog.mjs +2 -2
  23. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  24. package/lib/components/VField/VField.css +0 -1
  25. package/lib/components/VField/VField.sass +0 -1
  26. package/lib/components/VList/VList.mjs +3 -22
  27. package/lib/components/VList/VList.mjs.map +1 -1
  28. package/lib/components/VSlideGroup/VSlideGroup.mjs +2 -2
  29. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  30. package/lib/components/index.d.ts +3 -3
  31. package/lib/entry-bundler.mjs +1 -1
  32. package/lib/framework.mjs +1 -1
  33. package/lib/index.d.ts +21 -21
  34. package/lib/labs/VDataTable/VDataTable.mjs +1 -1
  35. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  36. package/lib/labs/VDataTable/VDataTableHeaders.mjs +34 -20
  37. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  38. package/lib/labs/VDataTable/VDataTableRow.mjs +2 -4
  39. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  40. package/lib/labs/VDataTable/VDataTableRows.mjs +2 -2
  41. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  42. package/lib/labs/VDataTable/VDataTableServer.mjs +1 -1
  43. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  44. package/lib/util/helpers.mjs +26 -0
  45. package/lib/util/helpers.mjs.map +1 -1
  46. package/package.json +3 -3
package/dist/vuetify.css CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.1.15
2
+ * Vuetify v3.1.16
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -19428,7 +19428,6 @@ textarea.v-field__input::placeholder {
19428
19428
  .v-field--variant-outlined .v-field__outline__notch {
19429
19429
  flex: none;
19430
19430
  position: relative;
19431
- border-width: 0 0 var(--v-field-border-width);
19432
19431
  }
19433
19432
  .v-field--variant-outlined .v-field__outline__notch::before, .v-field--variant-outlined .v-field__outline__notch::after {
19434
19433
  opacity: var(--v-field-border-opacity);
@@ -20511,12 +20510,6 @@ html.v-overlay-scroll-blocked {
20511
20510
  }
20512
20511
  .v-pagination__item, .v-pagination__first, .v-pagination__prev, .v-pagination__next, .v-pagination__last {
20513
20512
  margin: 0.3rem;
20514
- }.v-parallax {
20515
- position: relative;
20516
- overflow: hidden;
20517
- }
20518
- .v-parallax--active > .v-img__img {
20519
- will-change: transform;
20520
20513
  }.v-progress-circular {
20521
20514
  align-items: center;
20522
20515
  display: inline-flex;
@@ -20619,6 +20612,12 @@ html.v-overlay-scroll-blocked {
20619
20612
  100% {
20620
20613
  transform: rotate(270deg);
20621
20614
  }
20615
+ }.v-parallax {
20616
+ position: relative;
20617
+ overflow: hidden;
20618
+ }
20619
+ .v-parallax--active > .v-img__img {
20620
+ will-change: transform;
20622
20621
  }.v-progress-linear {
20623
20622
  background: transparent;
20624
20623
  overflow: hidden;
package/dist/vuetify.d.ts CHANGED
@@ -8049,8 +8049,8 @@ interface LinkProps {
8049
8049
  exact: boolean | undefined;
8050
8050
  }
8051
8051
 
8052
- type BreadcrumbItem = string | (LinkProps & {
8053
- text: string;
8052
+ type BreadcrumbItem = string | (Partial<LinkProps> & {
8053
+ title: string;
8054
8054
  disabled?: boolean;
8055
8055
  });
8056
8056
  declare const VBreadcrumbs: {
@@ -8237,7 +8237,7 @@ declare const VBreadcrumbs: {
8237
8237
  rounded: string | number | boolean;
8238
8238
  density: Density;
8239
8239
  divider: string;
8240
- }, {}, string> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T_1>() => {
8240
+ }, {}, string> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T_1 extends BreadcrumbItem>() => {
8241
8241
  $props: {
8242
8242
  items?: T_1[] | undefined;
8243
8243
  } & {
@@ -60483,41 +60483,41 @@ declare module '@vue/runtime-core' {
60483
60483
 
60484
60484
  export interface GlobalComponents {
60485
60485
  VApp: typeof import('vuetify/components')['VApp']
60486
- VAlert: typeof import('vuetify/components')['VAlert']
60487
- VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
60488
- VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
60489
60486
  VAppBar: typeof import('vuetify/components')['VAppBar']
60490
60487
  VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
60491
60488
  VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
60489
+ VAlert: typeof import('vuetify/components')['VAlert']
60490
+ VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
60491
+ VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
60492
+ VAvatar: typeof import('vuetify/components')['VAvatar']
60492
60493
  VBadge: typeof import('vuetify/components')['VBadge']
60493
60494
  VBanner: typeof import('vuetify/components')['VBanner']
60494
60495
  VBannerActions: typeof import('vuetify/components')['VBannerActions']
60495
60496
  VBannerText: typeof import('vuetify/components')['VBannerText']
60496
- VAvatar: typeof import('vuetify/components')['VAvatar']
60497
60497
  VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
60498
60498
  VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
60499
60499
  VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
60500
60500
  VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
60501
60501
  VBtn: typeof import('vuetify/components')['VBtn']
60502
- VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
60503
60502
  VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
60504
- VCarousel: typeof import('vuetify/components')['VCarousel']
60505
- VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
60503
+ VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
60506
60504
  VCard: typeof import('vuetify/components')['VCard']
60507
60505
  VCardActions: typeof import('vuetify/components')['VCardActions']
60508
60506
  VCardItem: typeof import('vuetify/components')['VCardItem']
60509
60507
  VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
60510
60508
  VCardText: typeof import('vuetify/components')['VCardText']
60511
60509
  VCardTitle: typeof import('vuetify/components')['VCardTitle']
60510
+ VCarousel: typeof import('vuetify/components')['VCarousel']
60511
+ VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
60512
60512
  VCheckbox: typeof import('vuetify/components')['VCheckbox']
60513
60513
  VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
60514
60514
  VChip: typeof import('vuetify/components')['VChip']
60515
60515
  VChipGroup: typeof import('vuetify/components')['VChipGroup']
60516
- VCode: typeof import('vuetify/components')['VCode']
60517
60516
  VColorPicker: typeof import('vuetify/components')['VColorPicker']
60517
+ VCode: typeof import('vuetify/components')['VCode']
60518
60518
  VCombobox: typeof import('vuetify/components')['VCombobox']
60519
- VDialog: typeof import('vuetify/components')['VDialog']
60520
60519
  VCounter: typeof import('vuetify/components')['VCounter']
60520
+ VDialog: typeof import('vuetify/components')['VDialog']
60521
60521
  VDivider: typeof import('vuetify/components')['VDivider']
60522
60522
  VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
60523
60523
  VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
@@ -60527,13 +60527,13 @@ declare module '@vue/runtime-core' {
60527
60527
  VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
60528
60528
  VFileInput: typeof import('vuetify/components')['VFileInput']
60529
60529
  VFooter: typeof import('vuetify/components')['VFooter']
60530
- VImg: typeof import('vuetify/components')['VImg']
60531
- VInput: typeof import('vuetify/components')['VInput']
60532
60530
  VIcon: typeof import('vuetify/components')['VIcon']
60533
60531
  VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
60534
60532
  VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
60535
60533
  VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
60536
60534
  VClassIcon: typeof import('vuetify/components')['VClassIcon']
60535
+ VImg: typeof import('vuetify/components')['VImg']
60536
+ VInput: typeof import('vuetify/components')['VInput']
60537
60537
  VItemGroup: typeof import('vuetify/components')['VItemGroup']
60538
60538
  VItem: typeof import('vuetify/components')['VItem']
60539
60539
  VKbd: typeof import('vuetify/components')['VKbd']
@@ -60547,10 +60547,10 @@ declare module '@vue/runtime-core' {
60547
60547
  VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
60548
60548
  VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
60549
60549
  VListSubheader: typeof import('vuetify/components')['VListSubheader']
60550
+ VMain: typeof import('vuetify/components')['VMain']
60550
60551
  VMenu: typeof import('vuetify/components')['VMenu']
60551
60552
  VMessages: typeof import('vuetify/components')['VMessages']
60552
60553
  VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
60553
- VMain: typeof import('vuetify/components')['VMain']
60554
60554
  VOverlay: typeof import('vuetify/components')['VOverlay']
60555
60555
  VPagination: typeof import('vuetify/components')['VPagination']
60556
60556
  VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
@@ -60564,11 +60564,11 @@ declare module '@vue/runtime-core' {
60564
60564
  VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
60565
60565
  VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
60566
60566
  VSlider: typeof import('vuetify/components')['VSlider']
60567
- VSystemBar: typeof import('vuetify/components')['VSystemBar']
60568
60567
  VSnackbar: typeof import('vuetify/components')['VSnackbar']
60568
+ VSwitch: typeof import('vuetify/components')['VSwitch']
60569
+ VSystemBar: typeof import('vuetify/components')['VSystemBar']
60569
60570
  VTabs: typeof import('vuetify/components')['VTabs']
60570
60571
  VTab: typeof import('vuetify/components')['VTab']
60571
- VSwitch: typeof import('vuetify/components')['VSwitch']
60572
60572
  VTable: typeof import('vuetify/components')['VTable']
60573
60573
  VTextarea: typeof import('vuetify/components')['VTextarea']
60574
60574
  VTextField: typeof import('vuetify/components')['VTextField']
@@ -60577,25 +60577,26 @@ declare module '@vue/runtime-core' {
60577
60577
  VToolbar: typeof import('vuetify/components')['VToolbar']
60578
60578
  VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
60579
60579
  VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
60580
+ VTooltip: typeof import('vuetify/components')['VTooltip']
60580
60581
  VWindow: typeof import('vuetify/components')['VWindow']
60581
60582
  VWindowItem: typeof import('vuetify/components')['VWindowItem']
60582
- VTooltip: typeof import('vuetify/components')['VTooltip']
60583
- VHover: typeof import('vuetify/components')['VHover']
60583
+ VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
60584
+ VForm: typeof import('vuetify/components')['VForm']
60584
60585
  VContainer: typeof import('vuetify/components')['VContainer']
60585
60586
  VCol: typeof import('vuetify/components')['VCol']
60586
60587
  VRow: typeof import('vuetify/components')['VRow']
60587
60588
  VSpacer: typeof import('vuetify/components')['VSpacer']
60588
- VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
60589
- VForm: typeof import('vuetify/components')['VForm']
60589
+ VHover: typeof import('vuetify/components')['VHover']
60590
60590
  VLayout: typeof import('vuetify/components')['VLayout']
60591
60591
  VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
60592
60592
  VLazy: typeof import('vuetify/components')['VLazy']
60593
60593
  VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
60594
60594
  VNoSsr: typeof import('vuetify/components')['VNoSsr']
60595
+ VParallax: typeof import('vuetify/components')['VParallax']
60595
60596
  VRadio: typeof import('vuetify/components')['VRadio']
60596
- VResponsive: typeof import('vuetify/components')['VResponsive']
60597
60597
  VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
60598
- VParallax: typeof import('vuetify/components')['VParallax']
60598
+ VResponsive: typeof import('vuetify/components')['VResponsive']
60599
+ VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
60599
60600
  VValidation: typeof import('vuetify/components')['VValidation']
60600
60601
  VFabTransition: typeof import('vuetify/components')['VFabTransition']
60601
60602
  VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
@@ -60613,6 +60614,5 @@ declare module '@vue/runtime-core' {
60613
60614
  VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
60614
60615
  VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
60615
60616
  VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
60616
- VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
60617
60617
  }
60618
60618
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.1.15
2
+ * Vuetify v3.1.16
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -356,6 +356,32 @@ function callEvent(handler) {
356
356
  handler(...args);
357
357
  }
358
358
  }
359
+ function focusableChildren(el) {
360
+ const targets = ['button', '[href]', 'input:not([type="hidden"])', 'select', 'textarea', '[tabindex]'].map(s => `${s}:not([tabindex="-1"]):not([disabled])`).join(', ');
361
+ return [...el.querySelectorAll(targets)];
362
+ }
363
+ function focusChild(el, location) {
364
+ const focusable = focusableChildren(el);
365
+ const idx = focusable.indexOf(document.activeElement);
366
+ if (!location) {
367
+ if (!el.contains(document.activeElement)) {
368
+ focusable[0]?.focus();
369
+ }
370
+ } else if (location === 'first') {
371
+ focusable[0]?.focus();
372
+ } else if (location === 'last') {
373
+ focusable.at(-1)?.focus();
374
+ } else {
375
+ let _el;
376
+ let idxx = idx;
377
+ const inc = location === 'next' ? 1 : -1;
378
+ do {
379
+ idxx += inc;
380
+ _el = focusable[idxx];
381
+ } while ((!_el || _el.offsetParent == null) && idxx < focusable.length && idxx >= 0);
382
+ if (_el) _el.focus();else focusChild(el, location === 'next' ? 'first' : 'last');
383
+ }
384
+ }
359
385
 
360
386
  const block = ['top', 'bottom'];
361
387
  const inline = ['start', 'end', 'left', 'right'];
@@ -8223,27 +8249,8 @@ const VList = genericComponent()({
8223
8249
  e.preventDefault();
8224
8250
  }
8225
8251
  function focus(location) {
8226
- if (!contentRef.value) return;
8227
- const targets = ['button', '[href]', 'input', 'select', 'textarea', '[tabindex]'].map(s => `${s}:not([tabindex="-1"])`).join(', ');
8228
- const focusable = [...contentRef.value.querySelectorAll(targets)].filter(el => !el.hasAttribute('disabled'));
8229
- const idx = focusable.indexOf(document.activeElement);
8230
- if (!location) {
8231
- if (!contentRef.value.contains(document.activeElement)) {
8232
- focusable[0]?.focus();
8233
- }
8234
- } else if (location === 'first') {
8235
- focusable[0]?.focus();
8236
- } else if (location === 'last') {
8237
- focusable.at(-1)?.focus();
8238
- } else {
8239
- let el;
8240
- let idxx = idx;
8241
- const inc = location === 'next' ? 1 : -1;
8242
- do {
8243
- idxx += inc;
8244
- el = focusable[idxx];
8245
- } while ((!el || el.offsetParent == null) && idxx < focusable.length && idxx >= 0);
8246
- if (el) el.focus();else focus(location === 'next' ? 'first' : 'last');
8252
+ if (contentRef.value) {
8253
+ return focusChild(contentRef.value, location);
8247
8254
  }
8248
8255
  }
8249
8256
  useRender(() => {
@@ -11054,6 +11061,17 @@ const VBreadcrumbs = genericComponent()({
11054
11061
  disabled: toRef(props, 'disabled')
11055
11062
  }
11056
11063
  });
11064
+ const items = computed(() => props.items.map(item => {
11065
+ return typeof item === 'string' ? {
11066
+ item: {
11067
+ title: item
11068
+ },
11069
+ raw: item
11070
+ } : {
11071
+ item,
11072
+ raw: item
11073
+ };
11074
+ }));
11057
11075
  useRender(() => {
11058
11076
  const hasPrepend = !!(slots.prepend || props.icon);
11059
11077
  return createVNode(props.tag, {
@@ -11076,22 +11094,26 @@ const VBreadcrumbs = genericComponent()({
11076
11094
  start: true
11077
11095
  }
11078
11096
  }
11079
- }, slots.prepend)]), props.items.map((item, index, array) => createVNode(Fragment, null, [createVNode(VBreadcrumbsItem, mergeProps({
11080
- "key": index,
11081
- "disabled": index >= array.length - 1
11082
- }, typeof item === 'string' ? {
11083
- title: item
11084
- } : item), {
11085
- default: slots.title ? () => slots.title?.({
11086
- item,
11087
- index
11088
- }) : undefined
11089
- }), index < array.length - 1 && createVNode(VBreadcrumbsDivider, null, {
11090
- default: slots.divider ? () => slots.divider?.({
11097
+ }, slots.prepend)]), items.value.map((_ref2, index, array) => {
11098
+ let {
11091
11099
  item,
11092
- index
11093
- }) : undefined
11094
- })])), slots.default?.()]
11100
+ raw
11101
+ } = _ref2;
11102
+ return createVNode(Fragment, null, [createVNode(VBreadcrumbsItem, mergeProps({
11103
+ "key": item.title,
11104
+ "disabled": index >= array.length - 1
11105
+ }, item), {
11106
+ default: slots.title ? () => slots.title?.({
11107
+ item: raw,
11108
+ index
11109
+ }) : undefined
11110
+ }), index < array.length - 1 && createVNode(VBreadcrumbsDivider, null, {
11111
+ default: slots.divider ? () => slots.divider?.({
11112
+ item: raw,
11113
+ index
11114
+ }) : undefined
11115
+ })]);
11116
+ }), slots.default?.()]
11095
11117
  });
11096
11118
  });
11097
11119
  return {};
@@ -14013,7 +14035,7 @@ const VDialog = genericComponent()({
14013
14035
  ![document, overlay.value.contentEl].includes(after) &&
14014
14036
  // It isn't inside the dialog body
14015
14037
  !overlay.value.contentEl.contains(after)) {
14016
- const focusable = [...overlay.value.contentEl.querySelectorAll('button, [href], input:not([type="hidden"]), select, textarea, [tabindex]:not([tabindex="-1"])')].filter(el => !el.hasAttribute('disabled') && !el.matches('[tabindex="-1"]'));
14038
+ const focusable = focusableChildren(overlay.value.contentEl);
14017
14039
  if (!focusable.length) return;
14018
14040
  const firstElement = focusable[0];
14019
14041
  const lastElement = focusable[focusable.length - 1];
@@ -16858,7 +16880,7 @@ const VSlideGroup = genericComponent()({
16858
16880
  function focus(location) {
16859
16881
  if (!contentRef.value) return;
16860
16882
  if (!location) {
16861
- const focusable = [...contentRef.value.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])')].filter(el => !el.hasAttribute('disabled'));
16883
+ const focusable = focusableChildren(contentRef.value);
16862
16884
  focusable[0]?.focus();
16863
16885
  } else if (location === 'next') {
16864
16886
  const el = contentRef.value.querySelector(':focus')?.nextElementSibling;
@@ -18453,7 +18475,7 @@ function createVuetify$1() {
18453
18475
  locale
18454
18476
  };
18455
18477
  }
18456
- const version$1 = "3.1.15";
18478
+ const version$1 = "3.1.16";
18457
18479
  createVuetify$1.version = version$1;
18458
18480
 
18459
18481
  // Vue's inject() can only be used in setup
@@ -18473,7 +18495,7 @@ const createVuetify = function () {
18473
18495
  ...options
18474
18496
  });
18475
18497
  };
18476
- const version = "3.1.15";
18498
+ const version = "3.1.16";
18477
18499
  createVuetify.version = version;
18478
18500
 
18479
18501
  export { components, createVuetify, directives, useDisplay, useLayout, useLocale, useRtl, useTheme, version };