vuetify 3.6.10 → 3.6.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/dist/json/attributes.json +60 -72
  2. package/dist/json/importMap-labs.json +24 -24
  3. package/dist/json/importMap.json +170 -170
  4. package/dist/json/tags.json +4 -7
  5. package/dist/json/web-types.json +102 -121
  6. package/dist/vuetify-labs.css +1949 -1927
  7. package/dist/vuetify-labs.d.ts +658 -781
  8. package/dist/vuetify-labs.esm.js +141 -141
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +141 -141
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +1153 -1131
  13. package/dist/vuetify.d.ts +619 -712
  14. package/dist/vuetify.esm.js +71 -60
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +71 -60
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +62 -57
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.d.mts +3 -3
  22. package/lib/blueprints/md1.d.mts +3 -3
  23. package/lib/blueprints/md2.d.mts +3 -3
  24. package/lib/blueprints/md3.d.mts +3 -3
  25. package/lib/components/VAutocomplete/index.d.mts +25 -31
  26. package/lib/components/VBottomSheet/index.d.mts +10 -10
  27. package/lib/components/VCheckbox/index.d.mts +2 -8
  28. package/lib/components/VCombobox/index.d.mts +25 -31
  29. package/lib/components/VDataTable/VDataTableFooter.mjs +5 -4
  30. package/lib/components/VDataTable/VDataTableFooter.mjs.map +1 -1
  31. package/lib/components/VDataTable/index.d.mts +108 -108
  32. package/lib/components/VDatePicker/VDatePickerControls.mjs +5 -4
  33. package/lib/components/VDatePicker/VDatePickerControls.mjs.map +1 -1
  34. package/lib/components/VDatePicker/VDatePickerMonth.mjs +1 -1
  35. package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  36. package/lib/components/VDatePicker/index.d.mts +70 -55
  37. package/lib/components/VDialog/index.d.mts +28 -28
  38. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +6 -2
  39. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  40. package/lib/components/VExpansionPanel/index.d.mts +48 -66
  41. package/lib/components/VField/VField.css +11 -6
  42. package/lib/components/VField/VField.mjs +5 -7
  43. package/lib/components/VField/VField.mjs.map +1 -1
  44. package/lib/components/VField/VField.sass +6 -2
  45. package/lib/components/VField/index.d.mts +6 -12
  46. package/lib/components/VFileInput/index.d.mts +6 -12
  47. package/lib/components/VInput/VInput.css +5 -5
  48. package/lib/components/VInput/VInput.mjs +1 -4
  49. package/lib/components/VInput/VInput.mjs.map +1 -1
  50. package/lib/components/VInput/VInput.sass +1 -1
  51. package/lib/components/VInput/index.d.mts +2 -8
  52. package/lib/components/VMenu/index.d.mts +32 -32
  53. package/lib/components/VOverlay/VOverlay.mjs +7 -2
  54. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  55. package/lib/components/VOverlay/index.d.mts +10 -10
  56. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  57. package/lib/components/VProgressLinear/VProgressLinear.css +17 -0
  58. package/lib/components/VProgressLinear/VProgressLinear.mjs +6 -5
  59. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  60. package/lib/components/VProgressLinear/VProgressLinear.sass +11 -0
  61. package/lib/components/VRadio/VRadio.mjs +8 -5
  62. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  63. package/lib/components/VRadioGroup/index.d.mts +2 -8
  64. package/lib/components/VRangeSlider/index.d.mts +2 -8
  65. package/lib/components/VSelect/index.d.mts +25 -31
  66. package/lib/components/VSlider/index.d.mts +2 -8
  67. package/lib/components/VSnackbar/index.d.mts +28 -28
  68. package/lib/components/VSpeedDial/index.d.mts +14 -14
  69. package/lib/components/VSwitch/index.d.mts +2 -8
  70. package/lib/components/VTextField/VTextField.mjs +1 -1
  71. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  72. package/lib/components/VTextField/index.d.mts +18 -24
  73. package/lib/components/VTextarea/VTextarea.mjs +5 -5
  74. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  75. package/lib/components/VTextarea/index.d.mts +72 -87
  76. package/lib/components/VTooltip/index.d.mts +32 -32
  77. package/lib/components/index.d.mts +646 -739
  78. package/lib/composables/calendar.mjs +10 -4
  79. package/lib/composables/calendar.mjs.map +1 -1
  80. package/lib/composables/date/DateAdapter.mjs.map +1 -1
  81. package/lib/composables/date/adapters/vuetify.mjs +15 -13
  82. package/lib/composables/date/adapters/vuetify.mjs.map +1 -1
  83. package/lib/composables/teleport.mjs +2 -2
  84. package/lib/composables/teleport.mjs.map +1 -1
  85. package/lib/entry-bundler.mjs +1 -1
  86. package/lib/framework.mjs +1 -1
  87. package/lib/index.d.mts +63 -63
  88. package/lib/labs/VCalendar/VCalendar.mjs +7 -6
  89. package/lib/labs/VCalendar/VCalendar.mjs.map +1 -1
  90. package/lib/labs/VCalendar/index.d.mts +6 -0
  91. package/lib/labs/VDateInput/index.d.mts +39 -39
  92. package/lib/labs/VNumberInput/VNumberInput.mjs +49 -56
  93. package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
  94. package/lib/labs/VNumberInput/index.d.mts +6 -12
  95. package/lib/labs/VSnackbarQueue/index.d.mts +37 -37
  96. package/lib/labs/VStepperVertical/VStepperVertical.mjs +2 -0
  97. package/lib/labs/VStepperVertical/VStepperVertical.mjs.map +1 -1
  98. package/lib/labs/VStepperVertical/index.d.mts +0 -18
  99. package/lib/labs/VTimePicker/VTimePicker.mjs +5 -5
  100. package/lib/labs/VTimePicker/VTimePicker.mjs.map +1 -1
  101. package/lib/labs/VTimePicker/VTimePickerClock.mjs +2 -2
  102. package/lib/labs/VTimePicker/VTimePickerClock.mjs.map +1 -1
  103. package/lib/labs/VTimePicker/VTimePickerControls.mjs +2 -2
  104. package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
  105. package/lib/labs/VTimePicker/index.d.mts +18 -18
  106. package/lib/labs/VTreeview/VTreeview.mjs +5 -12
  107. package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
  108. package/lib/labs/VTreeview/index.d.mts +18 -30
  109. package/lib/labs/components.d.mts +124 -154
  110. package/package.json +2 -2
package/lib/index.d.mts CHANGED
@@ -59,7 +59,7 @@ interface DateAdapter<T = unknown> {
59
59
  toISO(date: T): string;
60
60
  startOfDay(date: T): T;
61
61
  endOfDay(date: T): T;
62
- startOfWeek(date: T): T;
62
+ startOfWeek(date: T, firstDayOfWeek?: number | string): T;
63
63
  endOfWeek(date: T): T;
64
64
  startOfMonth(date: T): T;
65
65
  endOfMonth(date: T): T;
@@ -82,8 +82,8 @@ interface DateAdapter<T = unknown> {
82
82
  getYear(date: T): number;
83
83
  setYear(date: T, year: number): T;
84
84
  getDiff(date: T, comparing: T | string, unit?: string): number;
85
- getWeekArray(date: T): T[][];
86
- getWeekdays(): string[];
85
+ getWeekArray(date: T, firstDayOfWeek?: number | string): T[][];
86
+ getWeekdays(firstDayOfWeek?: number | string): string[];
87
87
  getMonth(date: T): number;
88
88
  setMonth(date: T, month: number): T;
89
89
  getDate(date: T): number;
@@ -403,7 +403,7 @@ declare function createVuetify(vuetify?: VuetifyOptions): {
403
403
  toISO: (date: unknown) => string;
404
404
  startOfDay: (date: unknown) => unknown;
405
405
  endOfDay: (date: unknown) => unknown;
406
- startOfWeek: (date: unknown) => unknown;
406
+ startOfWeek: (date: unknown, firstDayOfWeek?: string | number | undefined) => unknown;
407
407
  endOfWeek: (date: unknown) => unknown;
408
408
  startOfMonth: (date: unknown) => unknown;
409
409
  endOfMonth: (date: unknown) => unknown;
@@ -426,8 +426,8 @@ declare function createVuetify(vuetify?: VuetifyOptions): {
426
426
  getYear: (date: unknown) => number;
427
427
  setYear: (date: unknown, year: number) => unknown;
428
428
  getDiff: (date: unknown, comparing: unknown, unit?: string | undefined) => number;
429
- getWeekArray: (date: unknown) => unknown[][];
430
- getWeekdays: () => string[];
429
+ getWeekArray: (date: unknown, firstDayOfWeek?: string | number | undefined) => unknown[][];
430
+ getWeekdays: (firstDayOfWeek?: string | number | undefined) => string[];
431
431
  getMonth: (date: unknown) => number;
432
432
  setMonth: (date: unknown, month: number) => unknown;
433
433
  getDate: (date: unknown) => number;
@@ -492,42 +492,49 @@ declare module '@vue/runtime-core' {
492
492
  }
493
493
 
494
494
  export interface GlobalComponents {
495
+ VApp: typeof import('vuetify/components')['VApp']
496
+ VBanner: typeof import('vuetify/components')['VBanner']
497
+ VBannerActions: typeof import('vuetify/components')['VBannerActions']
498
+ VBannerText: typeof import('vuetify/components')['VBannerText']
495
499
  VAlert: typeof import('vuetify/components')['VAlert']
496
500
  VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
497
- VApp: typeof import('vuetify/components')['VApp']
498
- VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
499
501
  VAppBar: typeof import('vuetify/components')['VAppBar']
500
502
  VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
501
503
  VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
502
- VBanner: typeof import('vuetify/components')['VBanner']
503
- VBannerActions: typeof import('vuetify/components')['VBannerActions']
504
- VBannerText: typeof import('vuetify/components')['VBannerText']
505
504
  VBadge: typeof import('vuetify/components')['VBadge']
506
- VAvatar: typeof import('vuetify/components')['VAvatar']
507
- VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
508
- VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
509
- VBtn: typeof import('vuetify/components')['VBtn']
510
- VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
505
+ VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
511
506
  VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
512
507
  VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
513
508
  VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
509
+ VAvatar: typeof import('vuetify/components')['VAvatar']
510
+ VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
511
+ VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
512
+ VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
514
513
  VCard: typeof import('vuetify/components')['VCard']
515
514
  VCardActions: typeof import('vuetify/components')['VCardActions']
516
515
  VCardItem: typeof import('vuetify/components')['VCardItem']
517
516
  VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
518
517
  VCardText: typeof import('vuetify/components')['VCardText']
519
518
  VCardTitle: typeof import('vuetify/components')['VCardTitle']
519
+ VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
520
+ VBtn: typeof import('vuetify/components')['VBtn']
520
521
  VCarousel: typeof import('vuetify/components')['VCarousel']
521
522
  VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
522
- VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
523
- VChip: typeof import('vuetify/components')['VChip']
523
+ VColorPicker: typeof import('vuetify/components')['VColorPicker']
524
524
  VCheckbox: typeof import('vuetify/components')['VCheckbox']
525
525
  VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
526
+ VChip: typeof import('vuetify/components')['VChip']
527
+ VCode: typeof import('vuetify/components')['VCode']
526
528
  VChipGroup: typeof import('vuetify/components')['VChipGroup']
529
+ VDatePicker: typeof import('vuetify/components')['VDatePicker']
530
+ VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
531
+ VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
532
+ VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
533
+ VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
534
+ VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
527
535
  VCombobox: typeof import('vuetify/components')['VCombobox']
528
- VColorPicker: typeof import('vuetify/components')['VColorPicker']
529
- VCode: typeof import('vuetify/components')['VCode']
530
536
  VCounter: typeof import('vuetify/components')['VCounter']
537
+ VEmptyState: typeof import('vuetify/components')['VEmptyState']
531
538
  VDataTable: typeof import('vuetify/components')['VDataTable']
532
539
  VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
533
540
  VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
@@ -536,34 +543,27 @@ declare module '@vue/runtime-core' {
536
543
  VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
537
544
  VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
538
545
  VDialog: typeof import('vuetify/components')['VDialog']
539
- VDatePicker: typeof import('vuetify/components')['VDatePicker']
540
- VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
541
- VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
542
- VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
543
- VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
544
- VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
545
- VEmptyState: typeof import('vuetify/components')['VEmptyState']
546
546
  VDivider: typeof import('vuetify/components')['VDivider']
547
- VFab: typeof import('vuetify/components')['VFab']
547
+ VField: typeof import('vuetify/components')['VField']
548
+ VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
548
549
  VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
549
550
  VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
550
551
  VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
551
552
  VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
552
- VFooter: typeof import('vuetify/components')['VFooter']
553
- VField: typeof import('vuetify/components')['VField']
554
- VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
553
+ VFab: typeof import('vuetify/components')['VFab']
555
554
  VFileInput: typeof import('vuetify/components')['VFileInput']
556
- VImg: typeof import('vuetify/components')['VImg']
557
555
  VIcon: typeof import('vuetify/components')['VIcon']
558
556
  VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
559
557
  VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
560
558
  VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
561
559
  VClassIcon: typeof import('vuetify/components')['VClassIcon']
562
- VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
563
- VKbd: typeof import('vuetify/components')['VKbd']
564
- VInput: typeof import('vuetify/components')['VInput']
560
+ VFooter: typeof import('vuetify/components')['VFooter']
561
+ VImg: typeof import('vuetify/components')['VImg']
565
562
  VItemGroup: typeof import('vuetify/components')['VItemGroup']
566
563
  VItem: typeof import('vuetify/components')['VItem']
564
+ VKbd: typeof import('vuetify/components')['VKbd']
565
+ VInput: typeof import('vuetify/components')['VInput']
566
+ VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
567
567
  VLabel: typeof import('vuetify/components')['VLabel']
568
568
  VList: typeof import('vuetify/components')['VList']
569
569
  VListGroup: typeof import('vuetify/components')['VListGroup']
@@ -575,70 +575,69 @@ declare module '@vue/runtime-core' {
575
575
  VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
576
576
  VListSubheader: typeof import('vuetify/components')['VListSubheader']
577
577
  VMain: typeof import('vuetify/components')['VMain']
578
- VMenu: typeof import('vuetify/components')['VMenu']
579
578
  VMessages: typeof import('vuetify/components')['VMessages']
580
- VPagination: typeof import('vuetify/components')['VPagination']
579
+ VMenu: typeof import('vuetify/components')['VMenu']
581
580
  VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
582
581
  VOtpInput: typeof import('vuetify/components')['VOtpInput']
582
+ VPagination: typeof import('vuetify/components')['VPagination']
583
583
  VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
584
584
  VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
585
- VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
586
- VOverlay: typeof import('vuetify/components')['VOverlay']
587
585
  VRating: typeof import('vuetify/components')['VRating']
586
+ VOverlay: typeof import('vuetify/components')['VOverlay']
587
+ VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
588
+ VSelect: typeof import('vuetify/components')['VSelect']
588
589
  VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
589
590
  VSheet: typeof import('vuetify/components')['VSheet']
590
- VSelect: typeof import('vuetify/components')['VSelect']
591
591
  VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
592
592
  VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
593
593
  VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
594
594
  VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
595
- VSlider: typeof import('vuetify/components')['VSlider']
596
595
  VSnackbar: typeof import('vuetify/components')['VSnackbar']
597
- VSwitch: typeof import('vuetify/components')['VSwitch']
598
- VSystemBar: typeof import('vuetify/components')['VSystemBar']
596
+ VTab: typeof import('vuetify/components')['VTab']
597
+ VTabs: typeof import('vuetify/components')['VTabs']
598
+ VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
599
+ VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
600
+ VSlider: typeof import('vuetify/components')['VSlider']
599
601
  VStepper: typeof import('vuetify/components')['VStepper']
600
602
  VStepperActions: typeof import('vuetify/components')['VStepperActions']
601
603
  VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
602
604
  VStepperItem: typeof import('vuetify/components')['VStepperItem']
603
605
  VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
604
606
  VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
605
- VTab: typeof import('vuetify/components')['VTab']
606
- VTabs: typeof import('vuetify/components')['VTabs']
607
- VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
608
- VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
609
607
  VTable: typeof import('vuetify/components')['VTable']
610
608
  VTextField: typeof import('vuetify/components')['VTextField']
611
- VTimeline: typeof import('vuetify/components')['VTimeline']
612
- VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
613
609
  VTextarea: typeof import('vuetify/components')['VTextarea']
610
+ VSystemBar: typeof import('vuetify/components')['VSystemBar']
614
611
  VToolbar: typeof import('vuetify/components')['VToolbar']
615
612
  VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
616
613
  VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
614
+ VSwitch: typeof import('vuetify/components')['VSwitch']
615
+ VTimeline: typeof import('vuetify/components')['VTimeline']
616
+ VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
617
+ VTooltip: typeof import('vuetify/components')['VTooltip']
617
618
  VWindow: typeof import('vuetify/components')['VWindow']
618
619
  VWindowItem: typeof import('vuetify/components')['VWindowItem']
619
- VTooltip: typeof import('vuetify/components')['VTooltip']
620
- VDataIterator: typeof import('vuetify/components')['VDataIterator']
621
620
  VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
622
621
  VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
623
622
  VForm: typeof import('vuetify/components')['VForm']
623
+ VHover: typeof import('vuetify/components')['VHover']
624
624
  VContainer: typeof import('vuetify/components')['VContainer']
625
625
  VCol: typeof import('vuetify/components')['VCol']
626
626
  VRow: typeof import('vuetify/components')['VRow']
627
627
  VSpacer: typeof import('vuetify/components')['VSpacer']
628
- VHover: typeof import('vuetify/components')['VHover']
629
628
  VLayout: typeof import('vuetify/components')['VLayout']
630
629
  VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
631
- VLazy: typeof import('vuetify/components')['VLazy']
632
630
  VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
633
631
  VNoSsr: typeof import('vuetify/components')['VNoSsr']
634
- VParallax: typeof import('vuetify/components')['VParallax']
635
632
  VRadio: typeof import('vuetify/components')['VRadio']
633
+ VParallax: typeof import('vuetify/components')['VParallax']
636
634
  VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
637
635
  VResponsive: typeof import('vuetify/components')['VResponsive']
638
- VSparkline: typeof import('vuetify/components')['VSparkline']
639
636
  VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
640
- VValidation: typeof import('vuetify/components')['VValidation']
637
+ VSparkline: typeof import('vuetify/components')['VSparkline']
641
638
  VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
639
+ VValidation: typeof import('vuetify/components')['VValidation']
640
+ VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
642
641
  VFabTransition: typeof import('vuetify/components')['VFabTransition']
643
642
  VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
644
643
  VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
@@ -655,7 +654,8 @@ declare module '@vue/runtime-core' {
655
654
  VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
656
655
  VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
657
656
  VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
658
- VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
657
+ VLazy: typeof import('vuetify/components')['VLazy']
658
+ VDataIterator: typeof import('vuetify/components')['VDataIterator']
659
659
  VCalendar: typeof import('vuetify/labs/components')['VCalendar']
660
660
  VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
661
661
  VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
@@ -663,19 +663,19 @@ declare module '@vue/runtime-core' {
663
663
  VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
664
664
  VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
665
665
  VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
666
+ VPicker: typeof import('vuetify/labs/components')['VPicker']
667
+ VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
666
668
  VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
667
669
  VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
668
670
  VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
669
- VTreeview: typeof import('vuetify/labs/components')['VTreeview']
670
- VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
671
- VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
672
- VPicker: typeof import('vuetify/labs/components')['VPicker']
673
- VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
674
671
  VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
675
672
  VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
676
673
  VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
674
+ VTreeview: typeof import('vuetify/labs/components')['VTreeview']
675
+ VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
676
+ VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
677
677
  VDateInput: typeof import('vuetify/labs/components')['VDateInput']
678
- VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
679
678
  VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
679
+ VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
680
680
  }
681
681
  }
@@ -37,7 +37,8 @@ export const VCalendar = genericComponent()({
37
37
  genDays,
38
38
  model,
39
39
  displayValue,
40
- weekNumbers
40
+ weekNumbers,
41
+ weekDays
41
42
  } = useCalendar(props);
42
43
  const dayNames = adapter.getWeekdays();
43
44
  function onClickNext() {
@@ -87,19 +88,19 @@ export const VCalendar = genericComponent()({
87
88
  }), null) : slots.header({
88
89
  title: title.value
89
90
  }))]), _createVNode("div", {
90
- "class": ['v-calendar__container', `days__${props.weekdays.length}`]
91
+ "class": ['v-calendar__container', `days__${weekDays.value.length}`]
91
92
  }, [props.viewMode === 'month' && !props.hideDayHeader && _createVNode("div", {
92
- "class": ['v-calendar-weekly__head', `days__${props.weekdays.length}`, ...(!props.hideWeekNumber ? ['v-calendar-weekly__head-weeknumbers'] : [])],
93
+ "class": ['v-calendar-weekly__head', `days__${weekDays.value.length}`, ...(!props.hideWeekNumber ? ['v-calendar-weekly__head-weeknumbers'] : [])],
93
94
  "key": "calenderWeeklyHead"
94
95
  }, [!props.hideWeekNumber ? _createVNode("div", {
95
96
  "key": "weekNumber0",
96
97
  "class": "v-calendar-weekly__head-weeknumber"
97
- }, null) : '', props.weekdays.map(weekday => _createVNode("div", {
98
+ }, null) : '', weekDays.value.map(weekday => _createVNode("div", {
98
99
  "class": `v-calendar-weekly__head-weekday${!props.hideWeekNumber ? '-with-weeknumber' : ''}`
99
100
  }, [dayNames[weekday]]))]), props.viewMode === 'month' && _createVNode("div", {
100
101
  "key": "VCalendarMonth",
101
- "class": ['v-calendar-month__days', `days${!props.hideWeekNumber ? '-with-weeknumbers' : ''}__${props.weekdays.length}`, ...(!props.hideWeekNumber ? ['v-calendar-month__weeknumbers'] : [])]
102
- }, [chunkArray(daysInMonth.value, props.weekdays.length).map((week, wi) => [!props.hideWeekNumber ? _createVNode("div", {
102
+ "class": ['v-calendar-month__days', `days${!props.hideWeekNumber ? '-with-weeknumbers' : ''}__${weekDays.value.length}`, ...(!props.hideWeekNumber ? ['v-calendar-month__weeknumbers'] : [])]
103
+ }, [chunkArray(daysInMonth.value, weekDays.value.length).map((week, wi) => [!props.hideWeekNumber ? _createVNode("div", {
103
104
  "class": "v-calendar-month__weeknumber"
104
105
  }, [weekNumbers.value[wi]]) : '', week.map(day => _createVNode(VCalendarMonthDay, {
105
106
  "color": adapter.isSameDay(adapter.date(), day.date) ? 'primary' : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"VCalendar.mjs","names":["makeVCalendarDayProps","VCalendarDay","makeVCalendarHeaderProps","VCalendarHeader","VCalendarMonthDay","makeCalendarProps","useCalendar","useDate","computed","chunkArray","genericComponent","propsFactory","useRender","makeVCalendarProps","hideHeader","Boolean","hideWeekNumber","VCalendar","name","props","emits","next","prev","setup","_ref","emit","slots","adapter","daysInMonth","daysInWeek","genDays","model","displayValue","weekNumbers","dayNames","getWeekdays","onClickNext","viewMode","value","addMonths","addDays","onClickPrev","onClickToday","date","title","format","calendarDayProps","filterProps","calendarHeaderProps","_createVNode","header","_mergeProps","weekdays","length","hideDayHeader","map","weekday","week","wi","day","isSameDay","undefined","events","filter","e","start","end","event","i"],"sources":["../../../src/labs/VCalendar/VCalendar.tsx"],"sourcesContent":["// Styles\nimport './VCalendar.sass'\n\n// Components\nimport { makeVCalendarDayProps, VCalendarDay } from './VCalendarDay'\nimport { makeVCalendarHeaderProps, VCalendarHeader } from './VCalendarHeader'\nimport { VCalendarMonthDay } from './VCalendarMonthDay'\n\n// Composables\nimport { makeCalendarProps, useCalendar } from '@/composables/calendar'\nimport { useDate } from '@/composables/date/date'\n\n// Utilities\nimport { computed } from 'vue'\nimport { chunkArray, genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVCalendarProps = propsFactory({\n hideHeader: Boolean,\n hideWeekNumber: Boolean,\n\n ...makeCalendarProps(),\n ...makeVCalendarDayProps(),\n ...makeVCalendarHeaderProps(),\n}, 'VCalender')\n\nexport type VCalendarSlots = {\n header: { title: string }\n event: { day?: Object, allDay: boolean, event: Record<string, unknown> }\n}\n\nexport const VCalendar = genericComponent<VCalendarSlots>()({\n name: 'VCalendar',\n\n props: makeVCalendarProps(),\n\n emits: {\n next: null,\n prev: null,\n 'update:modelValue': null,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n\n const { daysInMonth, daysInWeek, genDays, model, displayValue, weekNumbers } = useCalendar(props as any)\n\n const dayNames = adapter.getWeekdays()\n\n function onClickNext () {\n if (props.viewMode === 'month') {\n model.value = [adapter.addMonths(displayValue.value, 1)]\n }\n if (props.viewMode === 'week') {\n model.value = [adapter.addDays(displayValue.value, 7)]\n }\n if (props.viewMode === 'day') {\n model.value = [adapter.addDays(displayValue.value, 1)]\n }\n }\n\n function onClickPrev () {\n if (props.viewMode === 'month') {\n model.value = [adapter.addMonths(displayValue.value, -1)]\n }\n if (props.viewMode === 'week') {\n model.value = [adapter.addDays(displayValue.value, -7)]\n }\n if (props.viewMode === 'day') {\n model.value = [adapter.addDays(displayValue.value, -1)]\n }\n }\n\n function onClickToday () {\n model.value = [adapter.date()]\n }\n\n const title = computed(() => {\n return adapter.format(displayValue.value, 'monthAndYear')\n })\n\n useRender(() => {\n const calendarDayProps = VCalendarDay.filterProps(props)\n const calendarHeaderProps = VCalendarHeader.filterProps(props)\n\n return (\n <div class={[\n 'v-calendar',\n {\n 'v-calendar-monthly': props.viewMode === 'month',\n 'v-calendar-weekly': props.viewMode === 'week',\n 'v-calendar-day': props.viewMode === 'day',\n },\n ]}\n >\n <div>\n { !props.hideHeader && (\n !slots.header ? (\n <VCalendarHeader\n key=\"calendar-header\"\n { ...calendarHeaderProps }\n title={ title.value }\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n onClick:toToday={ onClickToday }\n />\n ) : (\n slots.header({ title: title.value })\n )\n )}\n </div>\n\n <div class={['v-calendar__container', `days__${props.weekdays.length}`]}>\n { props.viewMode === 'month' && !props.hideDayHeader && (\n <div\n class={\n [\n 'v-calendar-weekly__head',\n `days__${props.weekdays.length}`,\n ...(!props.hideWeekNumber ? ['v-calendar-weekly__head-weeknumbers'] : []),\n ]\n }\n key=\"calenderWeeklyHead\"\n >\n { !props.hideWeekNumber ? <div key=\"weekNumber0\" class=\"v-calendar-weekly__head-weeknumber\"></div> : '' }\n {\n props.weekdays.map(weekday => (\n <div class={ `v-calendar-weekly__head-weekday${!props.hideWeekNumber ? '-with-weeknumber' : ''}` }>\n { dayNames[weekday] }\n </div>\n ))\n }\n </div>\n )}\n\n { props.viewMode === 'month' && (\n <div\n key=\"VCalendarMonth\"\n class={\n [\n 'v-calendar-month__days',\n `days${!props.hideWeekNumber ? '-with-weeknumbers' : ''}__${props.weekdays.length}`,\n ...(!props.hideWeekNumber ? ['v-calendar-month__weeknumbers'] : []),\n ]\n }\n >\n { chunkArray(daysInMonth.value, props.weekdays.length)\n .map((week, wi) => (\n [\n !props.hideWeekNumber ? <div class=\"v-calendar-month__weeknumber\">{ weekNumbers.value[wi] }</div> : '',\n week.map(day => (\n <VCalendarMonthDay\n color={ adapter.isSameDay(adapter.date(), day.date) ? 'primary' : undefined }\n day={ day }\n title={ day ? adapter.format(day.date, 'dayOfMonth') : 'NaN' }\n events={ props.events?.filter(e => adapter.isSameDay(day.date, e.start) || adapter.isSameDay(day.date, e.end)) }\n v-slots={{\n event: slots.event,\n }}\n ></VCalendarMonthDay>\n )),\n ]\n ))}\n </div>\n )}\n\n { props.viewMode === 'week' && (\n daysInWeek.value.map((day, i) => (\n <VCalendarDay\n { ...calendarDayProps }\n day={ day }\n dayIndex={ i }\n events={ props.events?.filter(e => adapter.isSameDay(e.start, day.date) || adapter.isSameDay(e.end, day.date)) }\n ></VCalendarDay>\n ))\n )}\n\n { props.viewMode === 'day' && (\n <VCalendarDay\n { ...calendarDayProps }\n day={ genDays([displayValue.value as Date], adapter.date() as Date)[0] }\n dayIndex={ 0 }\n events={\n props.events?.filter(e =>\n adapter.isSameDay(e.start, genDays([displayValue.value as Date], adapter.date() as Date)[0].date) ||\n adapter.isSameDay(e.end, genDays([displayValue.value as Date], adapter.date() as Date)[0].date)\n )\n }\n ></VCalendarDay>\n )}\n </div>\n </div>\n )\n })\n\n return { daysInMonth, daysInWeek, genDays }\n },\n})\n\nexport type VCalendar = InstanceType<typeof VCalendar>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VCalendar.mjs","names":["makeVCalendarDayProps","VCalendarDay","makeVCalendarHeaderProps","VCalendarHeader","VCalendarMonthDay","makeCalendarProps","useCalendar","useDate","computed","chunkArray","genericComponent","propsFactory","useRender","makeVCalendarProps","hideHeader","Boolean","hideWeekNumber","VCalendar","name","props","emits","next","prev","setup","_ref","emit","slots","adapter","daysInMonth","daysInWeek","genDays","model","displayValue","weekNumbers","weekDays","dayNames","getWeekdays","onClickNext","viewMode","value","addMonths","addDays","onClickPrev","onClickToday","date","title","format","calendarDayProps","filterProps","calendarHeaderProps","_createVNode","header","_mergeProps","length","hideDayHeader","map","weekday","week","wi","day","isSameDay","undefined","events","filter","e","start","end","event","i"],"sources":["../../../src/labs/VCalendar/VCalendar.tsx"],"sourcesContent":["// Styles\nimport './VCalendar.sass'\n\n// Components\nimport { makeVCalendarDayProps, VCalendarDay } from './VCalendarDay'\nimport { makeVCalendarHeaderProps, VCalendarHeader } from './VCalendarHeader'\nimport { VCalendarMonthDay } from './VCalendarMonthDay'\n\n// Composables\nimport { makeCalendarProps, useCalendar } from '@/composables/calendar'\nimport { useDate } from '@/composables/date/date'\n\n// Utilities\nimport { computed } from 'vue'\nimport { chunkArray, genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVCalendarProps = propsFactory({\n hideHeader: Boolean,\n hideWeekNumber: Boolean,\n\n ...makeCalendarProps(),\n ...makeVCalendarDayProps(),\n ...makeVCalendarHeaderProps(),\n}, 'VCalender')\n\nexport type VCalendarSlots = {\n header: { title: string }\n event: { day?: Object, allDay: boolean, event: Record<string, unknown> }\n}\n\nexport const VCalendar = genericComponent<VCalendarSlots>()({\n name: 'VCalendar',\n\n props: makeVCalendarProps(),\n\n emits: {\n next: null,\n prev: null,\n 'update:modelValue': null,\n },\n\n setup (props, { emit, slots }) {\n const adapter = useDate()\n\n const { daysInMonth, daysInWeek, genDays, model, displayValue, weekNumbers, weekDays } = useCalendar(props as any)\n\n const dayNames = adapter.getWeekdays()\n\n function onClickNext () {\n if (props.viewMode === 'month') {\n model.value = [adapter.addMonths(displayValue.value, 1)]\n }\n if (props.viewMode === 'week') {\n model.value = [adapter.addDays(displayValue.value, 7)]\n }\n if (props.viewMode === 'day') {\n model.value = [adapter.addDays(displayValue.value, 1)]\n }\n }\n\n function onClickPrev () {\n if (props.viewMode === 'month') {\n model.value = [adapter.addMonths(displayValue.value, -1)]\n }\n if (props.viewMode === 'week') {\n model.value = [adapter.addDays(displayValue.value, -7)]\n }\n if (props.viewMode === 'day') {\n model.value = [adapter.addDays(displayValue.value, -1)]\n }\n }\n\n function onClickToday () {\n model.value = [adapter.date()]\n }\n\n const title = computed(() => {\n return adapter.format(displayValue.value, 'monthAndYear')\n })\n\n useRender(() => {\n const calendarDayProps = VCalendarDay.filterProps(props)\n const calendarHeaderProps = VCalendarHeader.filterProps(props)\n\n return (\n <div class={[\n 'v-calendar',\n {\n 'v-calendar-monthly': props.viewMode === 'month',\n 'v-calendar-weekly': props.viewMode === 'week',\n 'v-calendar-day': props.viewMode === 'day',\n },\n ]}\n >\n <div>\n { !props.hideHeader && (\n !slots.header ? (\n <VCalendarHeader\n key=\"calendar-header\"\n { ...calendarHeaderProps }\n title={ title.value }\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n onClick:toToday={ onClickToday }\n />\n ) : (\n slots.header({ title: title.value })\n )\n )}\n </div>\n\n <div class={['v-calendar__container', `days__${weekDays.value.length}`]}>\n { props.viewMode === 'month' && !props.hideDayHeader && (\n <div\n class={\n [\n 'v-calendar-weekly__head',\n `days__${weekDays.value.length}`,\n ...(!props.hideWeekNumber ? ['v-calendar-weekly__head-weeknumbers'] : []),\n ]\n }\n key=\"calenderWeeklyHead\"\n >\n { !props.hideWeekNumber ? <div key=\"weekNumber0\" class=\"v-calendar-weekly__head-weeknumber\"></div> : '' }\n {\n weekDays.value.map(weekday => (\n <div class={ `v-calendar-weekly__head-weekday${!props.hideWeekNumber ? '-with-weeknumber' : ''}` }>\n { dayNames[weekday] }\n </div>\n ))\n }\n </div>\n )}\n\n { props.viewMode === 'month' && (\n <div\n key=\"VCalendarMonth\"\n class={\n [\n 'v-calendar-month__days',\n `days${!props.hideWeekNumber ? '-with-weeknumbers' : ''}__${weekDays.value.length}`,\n ...(!props.hideWeekNumber ? ['v-calendar-month__weeknumbers'] : []),\n ]\n }\n >\n { chunkArray(daysInMonth.value, weekDays.value.length)\n .map((week, wi) => (\n [\n !props.hideWeekNumber ? <div class=\"v-calendar-month__weeknumber\">{ weekNumbers.value[wi] }</div> : '',\n week.map(day => (\n <VCalendarMonthDay\n color={ adapter.isSameDay(adapter.date(), day.date) ? 'primary' : undefined }\n day={ day }\n title={ day ? adapter.format(day.date, 'dayOfMonth') : 'NaN' }\n events={ props.events?.filter(e => adapter.isSameDay(day.date, e.start) || adapter.isSameDay(day.date, e.end)) }\n v-slots={{\n event: slots.event,\n }}\n ></VCalendarMonthDay>\n )),\n ]\n ))}\n </div>\n )}\n\n { props.viewMode === 'week' && (\n daysInWeek.value.map((day, i) => (\n <VCalendarDay\n { ...calendarDayProps }\n day={ day }\n dayIndex={ i }\n events={ props.events?.filter(e => adapter.isSameDay(e.start, day.date) || adapter.isSameDay(e.end, day.date)) }\n ></VCalendarDay>\n ))\n )}\n\n { props.viewMode === 'day' && (\n <VCalendarDay\n { ...calendarDayProps }\n day={ genDays([displayValue.value as Date], adapter.date() as Date)[0] }\n dayIndex={ 0 }\n events={\n props.events?.filter(e =>\n adapter.isSameDay(e.start, genDays([displayValue.value as Date], adapter.date() as Date)[0].date) ||\n adapter.isSameDay(e.end, genDays([displayValue.value as Date], adapter.date() as Date)[0].date)\n )\n }\n ></VCalendarDay>\n )}\n </div>\n </div>\n )\n })\n\n return { daysInMonth, daysInWeek, genDays }\n },\n})\n\nexport type VCalendar = InstanceType<typeof VCalendar>\n"],"mappings":"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","ignoreList":[]}
@@ -33,6 +33,7 @@ declare const VCalendar: {
33
33
  modelValue?: unknown[] | undefined;
34
34
  max?: unknown;
35
35
  min?: unknown;
36
+ firstDayOfWeek?: string | number | undefined;
36
37
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
37
38
  displayValue?: unknown;
38
39
  dayIndex?: number | undefined;
@@ -156,6 +157,7 @@ declare const VCalendar: {
156
157
  modelValue?: unknown[] | undefined;
157
158
  max?: unknown;
158
159
  min?: unknown;
160
+ firstDayOfWeek?: string | number | undefined;
159
161
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
160
162
  displayValue?: unknown;
161
163
  dayIndex?: number | undefined;
@@ -259,6 +261,7 @@ declare const VCalendar: {
259
261
  modelValue?: unknown[] | undefined;
260
262
  max?: unknown;
261
263
  min?: unknown;
264
+ firstDayOfWeek?: string | number | undefined;
262
265
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
263
266
  displayValue?: unknown;
264
267
  dayIndex?: number | undefined;
@@ -401,6 +404,7 @@ declare const VCalendar: {
401
404
  modelValue?: unknown[] | undefined;
402
405
  max?: unknown;
403
406
  min?: unknown;
407
+ firstDayOfWeek?: string | number | undefined;
404
408
  allowedDates?: unknown[] | ((date: unknown) => boolean) | undefined;
405
409
  displayValue?: unknown;
406
410
  dayIndex?: number | undefined;
@@ -621,6 +625,7 @@ declare const VCalendar: {
621
625
  type: vue.PropType<"static" | "dynamic">;
622
626
  default: string;
623
627
  };
628
+ firstDayOfWeek: (StringConstructor | NumberConstructor)[];
624
629
  hideHeader: BooleanConstructor;
625
630
  hideWeekNumber: BooleanConstructor;
626
631
  }, vue.ExtractPropTypes<{
@@ -715,6 +720,7 @@ declare const VCalendar: {
715
720
  type: vue.PropType<"static" | "dynamic">;
716
721
  default: string;
717
722
  };
723
+ firstDayOfWeek: (StringConstructor | NumberConstructor)[];
718
724
  hideHeader: BooleanConstructor;
719
725
  hideWeekNumber: BooleanConstructor;
720
726
  }>>;