@vuetify/nightly 3.7.7-master.2025-01-23 → 3.7.7-master.2025-01-24
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.
- package/CHANGELOG.md +14 -8
- package/dist/json/attributes.json +1820 -1820
- package/dist/json/importMap-labs.json +24 -24
- package/dist/json/importMap.json +154 -154
- package/dist/json/web-types.json +3482 -3591
- package/dist/vuetify-labs.css +3488 -3488
- package/dist/vuetify-labs.d.ts +625 -839
- package/dist/vuetify-labs.esm.js +6 -7
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +6 -7
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +5961 -5961
- package/dist/vuetify.d.ts +123 -123
- package/dist/vuetify.esm.js +5 -5
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +5 -5
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +5 -5
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VImg/VImg.mjs +2 -2
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
- package/lib/components/VStepper/index.d.mts +66 -66
- package/lib/components/index.d.mts +66 -66
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +57 -57
- package/lib/labs/VStepperVertical/VStepperVertical.mjs.map +1 -1
- package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs +1 -2
- package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs.map +1 -1
- package/lib/labs/VStepperVertical/index.d.mts +585 -774
- package/lib/labs/components.d.mts +567 -781
- package/package.json +1 -1
package/lib/index.d.mts
CHANGED
@@ -486,47 +486,46 @@ declare module 'vue' {
|
|
486
486
|
$children?: VNodeChild
|
487
487
|
}
|
488
488
|
export interface GlobalComponents {
|
489
|
+
VApp: typeof import('vuetify/components')['VApp']
|
489
490
|
VAlert: typeof import('vuetify/components')['VAlert']
|
490
491
|
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
492
|
+
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
491
493
|
VAppBar: typeof import('vuetify/components')['VAppBar']
|
492
494
|
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
493
495
|
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
494
|
-
VApp: typeof import('vuetify/components')['VApp']
|
495
|
-
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
496
|
-
VBadge: typeof import('vuetify/components')['VBadge']
|
497
|
-
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
498
|
-
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
499
496
|
VAvatar: typeof import('vuetify/components')['VAvatar']
|
500
|
-
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
501
|
-
VBtn: typeof import('vuetify/components')['VBtn']
|
502
|
-
VCarousel: typeof import('vuetify/components')['VCarousel']
|
503
|
-
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
504
497
|
VBanner: typeof import('vuetify/components')['VBanner']
|
505
498
|
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
506
499
|
VBannerText: typeof import('vuetify/components')['VBannerText']
|
500
|
+
VBtn: typeof import('vuetify/components')['VBtn']
|
501
|
+
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
502
|
+
VBadge: typeof import('vuetify/components')['VBadge']
|
507
503
|
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
508
|
-
|
509
|
-
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
510
|
-
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
504
|
+
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
511
505
|
VCard: typeof import('vuetify/components')['VCard']
|
512
506
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
513
507
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
514
508
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
515
509
|
VCardText: typeof import('vuetify/components')['VCardText']
|
516
510
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
517
|
-
|
518
|
-
VCode: typeof import('vuetify/components')['VCode']
|
511
|
+
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
519
512
|
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
520
513
|
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
514
|
+
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
515
|
+
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
516
|
+
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
517
|
+
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
518
|
+
VCarousel: typeof import('vuetify/components')['VCarousel']
|
519
|
+
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
521
520
|
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
522
521
|
VCombobox: typeof import('vuetify/components')['VCombobox']
|
522
|
+
VCounter: typeof import('vuetify/components')['VCounter']
|
523
523
|
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
524
524
|
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
525
525
|
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
526
526
|
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
527
527
|
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
528
528
|
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
529
|
-
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
530
529
|
VDataTable: typeof import('vuetify/components')['VDataTable']
|
531
530
|
VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
|
532
531
|
VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
|
@@ -534,30 +533,35 @@ declare module 'vue' {
|
|
534
533
|
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
535
534
|
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
536
535
|
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
537
|
-
VDialog: typeof import('vuetify/components')['VDialog']
|
538
536
|
VDivider: typeof import('vuetify/components')['VDivider']
|
537
|
+
VDialog: typeof import('vuetify/components')['VDialog']
|
538
|
+
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
539
|
+
VField: typeof import('vuetify/components')['VField']
|
540
|
+
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
541
|
+
VCode: typeof import('vuetify/components')['VCode']
|
539
542
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
540
543
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
541
544
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
542
545
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
543
|
-
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
544
546
|
VFab: typeof import('vuetify/components')['VFab']
|
545
|
-
VFooter: typeof import('vuetify/components')['VFooter']
|
546
|
-
VField: typeof import('vuetify/components')['VField']
|
547
|
-
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
548
547
|
VFileInput: typeof import('vuetify/components')['VFileInput']
|
548
|
+
VChip: typeof import('vuetify/components')['VChip']
|
549
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
550
|
+
VInput: typeof import('vuetify/components')['VInput']
|
549
551
|
VIcon: typeof import('vuetify/components')['VIcon']
|
550
552
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
551
553
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
552
554
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
553
555
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
554
|
-
|
555
|
-
VImg: typeof import('vuetify/components')['VImg']
|
556
|
-
VInput: typeof import('vuetify/components')['VInput']
|
557
|
-
VMain: typeof import('vuetify/components')['VMain']
|
556
|
+
VKbd: typeof import('vuetify/components')['VKbd']
|
558
557
|
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
558
|
+
VLabel: typeof import('vuetify/components')['VLabel']
|
559
|
+
VImg: typeof import('vuetify/components')['VImg']
|
560
|
+
VMenu: typeof import('vuetify/components')['VMenu']
|
559
561
|
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
560
562
|
VItem: typeof import('vuetify/components')['VItem']
|
563
|
+
VMain: typeof import('vuetify/components')['VMain']
|
564
|
+
VMessages: typeof import('vuetify/components')['VMessages']
|
561
565
|
VList: typeof import('vuetify/components')['VList']
|
562
566
|
VListGroup: typeof import('vuetify/components')['VListGroup']
|
563
567
|
VListImg: typeof import('vuetify/components')['VListImg']
|
@@ -567,70 +571,66 @@ declare module 'vue' {
|
|
567
571
|
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
568
572
|
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
569
573
|
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
570
|
-
|
571
|
-
VMenu: typeof import('vuetify/components')['VMenu']
|
572
|
-
VMessages: typeof import('vuetify/components')['VMessages']
|
573
|
-
VKbd: typeof import('vuetify/components')['VKbd']
|
574
|
+
VOverlay: typeof import('vuetify/components')['VOverlay']
|
574
575
|
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
575
|
-
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
576
576
|
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
577
|
+
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
578
|
+
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
577
579
|
VPagination: typeof import('vuetify/components')['VPagination']
|
578
580
|
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
579
|
-
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
580
|
-
VOverlay: typeof import('vuetify/components')['VOverlay']
|
581
|
-
VRating: typeof import('vuetify/components')['VRating']
|
582
|
-
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
583
581
|
VSelect: typeof import('vuetify/components')['VSelect']
|
584
|
-
|
582
|
+
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
585
583
|
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
586
|
-
|
584
|
+
VSheet: typeof import('vuetify/components')['VSheet']
|
585
|
+
VRating: typeof import('vuetify/components')['VRating']
|
586
|
+
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
587
587
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
588
588
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
589
|
-
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
590
589
|
VStepper: typeof import('vuetify/components')['VStepper']
|
591
590
|
VStepperActions: typeof import('vuetify/components')['VStepperActions']
|
592
591
|
VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
|
593
592
|
VStepperItem: typeof import('vuetify/components')['VStepperItem']
|
594
593
|
VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
|
595
594
|
VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
|
595
|
+
VSlider: typeof import('vuetify/components')['VSlider']
|
596
596
|
VSwitch: typeof import('vuetify/components')['VSwitch']
|
597
|
-
|
597
|
+
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
598
598
|
VTab: typeof import('vuetify/components')['VTab']
|
599
599
|
VTabs: typeof import('vuetify/components')['VTabs']
|
600
600
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
601
601
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
602
|
-
VTable: typeof import('vuetify/components')['VTable']
|
603
|
-
VTextarea: typeof import('vuetify/components')['VTextarea']
|
604
602
|
VTimeline: typeof import('vuetify/components')['VTimeline']
|
605
603
|
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
604
|
+
VTable: typeof import('vuetify/components')['VTable']
|
605
|
+
VTextField: typeof import('vuetify/components')['VTextField']
|
606
|
+
VWindow: typeof import('vuetify/components')['VWindow']
|
607
|
+
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
608
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
606
609
|
VToolbar: typeof import('vuetify/components')['VToolbar']
|
607
610
|
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
608
611
|
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
609
|
-
|
610
|
-
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
612
|
+
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
611
613
|
VTooltip: typeof import('vuetify/components')['VTooltip']
|
612
|
-
VWindow: typeof import('vuetify/components')['VWindow']
|
613
|
-
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
614
614
|
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
615
|
-
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
616
615
|
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
616
|
+
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
617
617
|
VForm: typeof import('vuetify/components')['VForm']
|
618
618
|
VContainer: typeof import('vuetify/components')['VContainer']
|
619
619
|
VCol: typeof import('vuetify/components')['VCol']
|
620
620
|
VRow: typeof import('vuetify/components')['VRow']
|
621
621
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
622
622
|
VHover: typeof import('vuetify/components')['VHover']
|
623
|
-
VLazy: typeof import('vuetify/components')['VLazy']
|
624
623
|
VLayout: typeof import('vuetify/components')['VLayout']
|
625
624
|
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
626
|
-
|
625
|
+
VLazy: typeof import('vuetify/components')['VLazy']
|
627
626
|
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
628
|
-
|
627
|
+
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
629
628
|
VParallax: typeof import('vuetify/components')['VParallax']
|
629
|
+
VRadio: typeof import('vuetify/components')['VRadio']
|
630
630
|
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
631
631
|
VResponsive: typeof import('vuetify/components')['VResponsive']
|
632
|
-
VSparkline: typeof import('vuetify/components')['VSparkline']
|
633
632
|
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
633
|
+
VSparkline: typeof import('vuetify/components')['VSparkline']
|
634
634
|
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
635
635
|
VValidation: typeof import('vuetify/components')['VValidation']
|
636
636
|
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
@@ -656,22 +656,22 @@ declare module 'vue' {
|
|
656
656
|
VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
|
657
657
|
VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
|
658
658
|
VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
|
659
|
-
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
660
|
-
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
661
659
|
VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
|
662
660
|
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
663
661
|
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
664
662
|
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
665
|
-
|
666
|
-
|
667
|
-
VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
|
663
|
+
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
664
|
+
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
668
665
|
VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
|
669
666
|
VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
|
670
667
|
VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
668
|
+
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
669
|
+
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
670
|
+
VTreeview: typeof import('vuetify/labs/components')['VTreeview']
|
671
|
+
VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
|
672
|
+
VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
|
675
673
|
VDateInput: typeof import('vuetify/labs/components')['VDateInput']
|
674
|
+
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
675
|
+
VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
|
676
676
|
}
|
677
677
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VStepperVertical.mjs","names":["VStepperVerticalItem","makeVExpansionPanelsProps","VExpansionPanels","makeStepperProps","provideDefaults","useProxiedModel","computed","ref","toRefs","genericComponent","getPropertyFromItem","omit","propsFactory","useRender","makeVStepperVerticalProps","prevText","type","String","default","nextText","mandatory","variant","VStepperVertical","name","props","emits","val","setup","_ref","slots","vExpansionPanelsRef","color","eager","editable","hideActions","model","items","map","item","index","title","itemTitle","value","itemValue","raw","static","VStepperActions","expansionPanelProps","filterProps","_createVNode","_mergeProps","$event","altLabels","flat","nonLinear","mobile","class","style","_ref2","prev","next","_Fragment","_ref3","step"],"sources":["../../../src/labs/VStepperVertical/VStepperVertical.tsx"],"sourcesContent":["// Components\nimport { VStepperVerticalItem } from './VStepperVerticalItem'\nimport { makeVExpansionPanelsProps, VExpansionPanels } from '@/components/VExpansionPanel/VExpansionPanels'\nimport { makeStepperProps } from '@/components/VStepper/VStepper'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, toRefs } from 'vue'\nimport { genericComponent, getPropertyFromItem, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VStepperSlot } from '@/components/VStepper/VStepper'\nimport type {
|
1
|
+
{"version":3,"file":"VStepperVertical.mjs","names":["VStepperVerticalItem","makeVExpansionPanelsProps","VExpansionPanels","makeStepperProps","provideDefaults","useProxiedModel","computed","ref","toRefs","genericComponent","getPropertyFromItem","omit","propsFactory","useRender","makeVStepperVerticalProps","prevText","type","String","default","nextText","mandatory","variant","VStepperVertical","name","props","emits","val","setup","_ref","slots","vExpansionPanelsRef","color","eager","editable","hideActions","model","items","map","item","index","title","itemTitle","value","itemValue","raw","static","VStepperActions","expansionPanelProps","filterProps","_createVNode","_mergeProps","$event","altLabels","flat","nonLinear","mobile","class","style","_ref2","prev","next","_Fragment","_ref3","step"],"sources":["../../../src/labs/VStepperVertical/VStepperVertical.tsx"],"sourcesContent":["// Components\nimport { VStepperVerticalItem } from './VStepperVerticalItem'\nimport { makeVExpansionPanelsProps, VExpansionPanels } from '@/components/VExpansionPanel/VExpansionPanels'\nimport { makeStepperProps } from '@/components/VStepper/VStepper'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, toRefs } from 'vue'\nimport { genericComponent, getPropertyFromItem, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperVerticalItemActionSlot } from './VStepperVerticalItem'\nimport type { VStepperSlot } from '@/components/VStepper/VStepper'\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\nimport type { GenericProps } from '@/util'\n\nexport type VStepperVerticalSlots<T> = {\n actions: StepperVerticalItemActionSlot<T>\n default: VStepperSlot & { step: T }\n icon: StepperItemSlot<T>\n title: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n} & {\n [key: `header-item.${string}`]: StepperItemSlot<T>\n [key: `item.${string}`]: StepperItemSlot<T>\n}\n\nexport const makeVStepperVerticalProps = propsFactory({\n prevText: {\n type: String,\n default: '$vuetify.stepper.prev',\n },\n nextText: {\n type: String,\n default: '$vuetify.stepper.next',\n },\n\n ...makeStepperProps(),\n ...omit(makeVExpansionPanelsProps({\n mandatory: 'force' as const,\n variant: 'accordion' as const,\n }), ['static']),\n}, 'VStepperVertical')\n\nexport const VStepperVertical = genericComponent<new <T = number>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VStepperVerticalSlots<T>,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VStepperVertical',\n\n props: makeVStepperVerticalProps(),\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const vExpansionPanelsRef = ref<typeof VExpansionPanels>()\n const { color, eager, editable, prevText, nextText, hideActions } = toRefs(props)\n\n const model = useProxiedModel(props, 'modelValue')\n const items = computed(() => props.items.map((item, index) => {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, index + 1)\n\n return {\n title,\n value,\n raw: item,\n }\n }))\n\n provideDefaults({\n VStepperVerticalItem: {\n color,\n eager,\n editable,\n prevText,\n nextText,\n hideActions,\n static: true,\n },\n VStepperActions: {\n color,\n },\n })\n\n useRender(() => {\n const expansionPanelProps = VExpansionPanels.filterProps(props)\n\n return (\n <VExpansionPanels\n { ...expansionPanelProps }\n v-model={ model.value }\n ref={ vExpansionPanelsRef }\n class={[\n 'v-stepper',\n {\n 'v-stepper--alt-labels': props.altLabels,\n 'v-stepper--flat': props.flat,\n 'v-stepper--non-linear': props.nonLinear,\n 'v-stepper--mobile': props.mobile,\n },\n props.class,\n ]}\n style={ props.style }\n >\n {{\n ...slots,\n default: ({ prev, next }) => {\n return (\n <>\n { items.value.map(({ raw, ...item }) => (\n <VStepperVerticalItem { ...item }>\n {{\n ...slots,\n default: slots[`item.${item.value}`],\n }}\n </VStepperVerticalItem>\n ))}\n\n { slots.default?.({ prev, next, step: model.value }) }\n </>\n )\n },\n }}\n </VExpansionPanels>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVertical = InstanceType<typeof VStepperVertical>\n"],"mappings":"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","ignoreList":[]}
|
@@ -57,8 +57,7 @@ export const VStepperVerticalItem = genericComponent()({
|
|
57
57
|
hasCompleted: hasCompleted.value,
|
58
58
|
title: props.title,
|
59
59
|
subtitle: props.subtitle,
|
60
|
-
step: step.value
|
61
|
-
value: props.value
|
60
|
+
step: step.value
|
62
61
|
}));
|
63
62
|
const actionProps = computed(() => ({
|
64
63
|
...slotProps.value,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VStepperVerticalItem.mjs","names":["VStepperVerticalActions","VAvatar","VDefaultsProvider","makeVExpansionPanelProps","VExpansionPanel","VIcon","makeStepperItemProps","computed","ref","genericComponent","omit","propsFactory","useRender","makeVStepperVerticalItemProps","hideActions","Boolean","expandIcon","collapseIcon","VStepperVerticalItem","name","props","emits","click:next","click:prev","click:finish","setup","_ref","emit","slots","vExpansionPanelRef","step","isNaN","parseInt","value","Number","groupItem","isSelected","isValid","rules","every","handler","canEdit","disabled","editable","hasError","error","hasCompleted","complete","length","isFirst","icon","errorIcon","completeIcon","editIcon","slotProps","title","subtitle","actionProps","prev","onClickPrev","next","onClickNext","isLast","group","hasColor","hasActions","actions","expansionPanelProps","filterProps","_createVNode","_mergeProps","class","style","_Fragment","color","undefined","default","text","finish"],"sources":["../../../src/labs/VStepperVertical/VStepperVerticalItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperVerticalItem.sass'\n\n// Components\nimport { VStepperVerticalActions } from './VStepperVerticalActions'\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVExpansionPanelProps, VExpansionPanel } from '@/components/VExpansionPanel/VExpansionPanel'\nimport { VIcon } from '@/components/VIcon/VIcon'\nimport { makeStepperItemProps } from '@/components/VStepper/VStepperItem'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\n\nexport type VStepperVerticalItemSlots = {\n default: StepperItemSlot\n icon: StepperItemSlot\n subtitle: StepperItemSlot\n title: StepperItemSlot\n text: StepperItemSlot\n prev: StepperItemSlot\n next: StepperItemSlot\n actions: StepperItemSlot & {\n next: () => void\n prev: () => void\n }\n}\n\nexport const makeVStepperVerticalItemProps = propsFactory({\n hideActions: Boolean,\n\n ...makeStepperItemProps(),\n ...omit(makeVExpansionPanelProps({\n expandIcon: '',\n collapseIcon: '',\n }), ['hideActions']),\n}, 'VStepperVerticalItem')\n\nexport const VStepperVerticalItem = genericComponent<VStepperVerticalItemSlots>()({\n name: 'VStepperVerticalItem',\n\n props: makeVStepperVerticalItemProps(),\n\n emits: {\n 'click:next': () => true,\n 'click:prev': () => true,\n 'click:finish': () => true,\n },\n\n setup (props, { emit, slots }) {\n const vExpansionPanelRef = ref<typeof VExpansionPanel>()\n const step = computed(() => !isNaN(parseInt(props.value)) ? Number(props.value) : props.value)\n const groupItem = computed(() => vExpansionPanelRef.value?.groupItem)\n const isSelected = computed(() => groupItem.value?.isSelected.value ?? false)\n const isValid = computed(() => isSelected.value ? props.rules.every(handler => handler() === true) : null)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || (isSelected.value && !isValid.value))\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value === true))\n\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (groupItem.value?.isFirst.value) return 'prev'\n\n return false\n })\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (groupItem.value?.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n value: props.value,\n }))\n\n const actionProps = computed(() => ({\n ...slotProps.value,\n prev: onClickPrev,\n next: onClickNext,\n }))\n\n function onClickNext () {\n emit('click:next')\n\n if (groupItem.value?.isLast.value) return\n\n groupItem.value.group.next()\n }\n\n function onClickPrev () {\n emit('click:prev')\n\n groupItem.value.group.prev()\n }\n\n useRender(() => {\n const hasColor = (\n hasCompleted.value ||\n groupItem.value?.isSelected.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n\n const hasActions = !props.hideActions || !!slots.actions\n const expansionPanelProps = VExpansionPanel.filterProps(props)\n\n return (\n <VExpansionPanel\n _as=\"VStepperVerticalItem\"\n ref={ vExpansionPanelRef }\n { ...expansionPanelProps }\n class={[\n 'v-stepper-vertical-item',\n {\n 'v-stepper-vertical-item--complete': hasCompleted.value,\n 'v-stepper-vertical-item--disabled': props.disabled,\n 'v-stepper-vertical-item--editable': canEdit.value,\n 'v-stepper-vertical-item--error': hasError.value,\n },\n props.class,\n ]}\n readonly={ !props.editable }\n style={ props.style }\n color=\"\"\n hide-actions={ false }\n value={ step.value }\n >\n {{\n title: () => (\n <>\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-vertical-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n start\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div>\n <div class=\"v-stepper-vertical-item__title\">\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n\n <div class=\"v-stepper-vertical-item__subtitle\">\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n </div>\n </>\n ),\n text: () => (\n <>\n { slots.default?.(slotProps.value) ?? props.text }\n\n { hasActions && (\n <VDefaultsProvider\n defaults={{\n VStepperVerticalActions: {\n disabled: disabled.value,\n finish: groupItem.value?.isLast.value,\n },\n }}\n >\n { slots.actions?.(actionProps.value) ?? (\n <VStepperVerticalActions\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n v-slots={{\n prev: slots.prev ? () => slots.prev?.(actionProps.value) : undefined,\n next: slots.next ? () => slots.next?.(actionProps.value) : undefined,\n }}\n />\n )}\n </VDefaultsProvider>\n )}\n </>\n ),\n }}\n </VExpansionPanel>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVerticalItem = InstanceType<typeof VStepperVerticalItem>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VStepperVerticalItem.mjs","names":["VStepperVerticalActions","VAvatar","VDefaultsProvider","makeVExpansionPanelProps","VExpansionPanel","VIcon","makeStepperItemProps","computed","ref","genericComponent","omit","propsFactory","useRender","makeVStepperVerticalItemProps","hideActions","Boolean","expandIcon","collapseIcon","VStepperVerticalItem","name","props","emits","click:next","click:prev","click:finish","setup","_ref","emit","slots","vExpansionPanelRef","step","isNaN","parseInt","value","Number","groupItem","isSelected","isValid","rules","every","handler","canEdit","disabled","editable","hasError","error","hasCompleted","complete","length","isFirst","icon","errorIcon","completeIcon","editIcon","slotProps","title","subtitle","actionProps","prev","onClickPrev","next","onClickNext","isLast","group","hasColor","hasActions","actions","expansionPanelProps","filterProps","_createVNode","_mergeProps","class","style","_Fragment","color","undefined","default","text","finish"],"sources":["../../../src/labs/VStepperVertical/VStepperVerticalItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperVerticalItem.sass'\n\n// Components\nimport { VStepperVerticalActions } from './VStepperVerticalActions'\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVExpansionPanelProps, VExpansionPanel } from '@/components/VExpansionPanel/VExpansionPanel'\nimport { VIcon } from '@/components/VIcon/VIcon'\nimport { makeStepperItemProps } from '@/components/VStepper/VStepperItem'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\n\nexport type StepperVerticalItemActionSlot<T = any> = StepperItemSlot<T> & {\n next: () => void\n prev: () => void\n}\n\nexport type VStepperVerticalItemSlots<T = any> = {\n default: StepperItemSlot<T>\n icon: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n title: StepperItemSlot<T>\n text: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n actions: StepperVerticalItemActionSlot<T>\n}\n\nexport const makeVStepperVerticalItemProps = propsFactory({\n hideActions: Boolean,\n\n ...makeStepperItemProps(),\n ...omit(makeVExpansionPanelProps({\n expandIcon: '',\n collapseIcon: '',\n }), ['hideActions']),\n}, 'VStepperVerticalItem')\n\nexport const VStepperVerticalItem = genericComponent<VStepperVerticalItemSlots>()({\n name: 'VStepperVerticalItem',\n\n props: makeVStepperVerticalItemProps(),\n\n emits: {\n 'click:next': () => true,\n 'click:prev': () => true,\n 'click:finish': () => true,\n },\n\n setup (props, { emit, slots }) {\n const vExpansionPanelRef = ref<typeof VExpansionPanel>()\n const step = computed(() => !isNaN(parseInt(props.value)) ? Number(props.value) : props.value)\n const groupItem = computed(() => vExpansionPanelRef.value?.groupItem)\n const isSelected = computed(() => groupItem.value?.isSelected.value ?? false)\n const isValid = computed(() => isSelected.value ? props.rules.every(handler => handler() === true) : null)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || (isSelected.value && !isValid.value))\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value === true))\n\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (groupItem.value?.isFirst.value) return 'prev'\n\n return false\n })\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (groupItem.value?.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n } satisfies StepperItemSlot))\n\n const actionProps = computed(() => ({\n ...slotProps.value,\n prev: onClickPrev,\n next: onClickNext,\n } satisfies StepperVerticalItemActionSlot))\n\n function onClickNext () {\n emit('click:next')\n\n if (groupItem.value?.isLast.value) return\n\n groupItem.value.group.next()\n }\n\n function onClickPrev () {\n emit('click:prev')\n\n groupItem.value.group.prev()\n }\n\n useRender(() => {\n const hasColor = (\n hasCompleted.value ||\n groupItem.value?.isSelected.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n\n const hasActions = !props.hideActions || !!slots.actions\n const expansionPanelProps = VExpansionPanel.filterProps(props)\n\n return (\n <VExpansionPanel\n _as=\"VStepperVerticalItem\"\n ref={ vExpansionPanelRef }\n { ...expansionPanelProps }\n class={[\n 'v-stepper-vertical-item',\n {\n 'v-stepper-vertical-item--complete': hasCompleted.value,\n 'v-stepper-vertical-item--disabled': props.disabled,\n 'v-stepper-vertical-item--editable': canEdit.value,\n 'v-stepper-vertical-item--error': hasError.value,\n },\n props.class,\n ]}\n readonly={ !props.editable }\n style={ props.style }\n color=\"\"\n hide-actions={ false }\n value={ step.value }\n >\n {{\n title: () => (\n <>\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-vertical-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n start\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div>\n <div class=\"v-stepper-vertical-item__title\">\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n\n <div class=\"v-stepper-vertical-item__subtitle\">\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n </div>\n </>\n ),\n text: () => (\n <>\n { slots.default?.(slotProps.value) ?? props.text }\n\n { hasActions && (\n <VDefaultsProvider\n defaults={{\n VStepperVerticalActions: {\n disabled: disabled.value,\n finish: groupItem.value?.isLast.value,\n },\n }}\n >\n { slots.actions?.(actionProps.value) ?? (\n <VStepperVerticalActions\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n v-slots={{\n prev: slots.prev ? () => slots.prev?.(actionProps.value) : undefined,\n next: slots.next ? () => slots.next?.(actionProps.value) : undefined,\n }}\n />\n )}\n </VDefaultsProvider>\n )}\n </>\n ),\n }}\n </VExpansionPanel>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVerticalItem = InstanceType<typeof VStepperVerticalItem>\n"],"mappings":"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","ignoreList":[]}
|