@vuetify/nightly 3.7.7-master.2025-01-21 → 3.7.7-master.2025-01-22
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 +5 -3
- package/dist/json/attributes.json +3163 -3163
- package/dist/json/importMap-labs.json +8 -8
- package/dist/json/importMap.json +180 -180
- package/dist/json/web-types.json +5432 -5432
- package/dist/vuetify-labs.css +4213 -4213
- package/dist/vuetify-labs.esm.js +4 -4
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +4 -4
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +3185 -3185
- package/dist/vuetify.d.ts +56 -56
- package/dist/vuetify.esm.js +3 -3
- package/dist/vuetify.js +3 -3
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +3 -3
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +56 -56
- package/lib/labs/VTimePicker/VTimePicker.mjs +1 -1
- package/lib/labs/VTimePicker/VTimePicker.mjs.map +1 -1
- package/package.json +1 -1
package/dist/vuetify.min.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.7.7-master.2025-01-
|
2
|
+
* Vuetify v3.7.7-master.2025-01-22
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -2106,8 +2106,8 @@ if(d.install(e),e.provide(kt,u),e.provide(hn,c),e.provide(Va,d),e.provide(Ot,v),
|
|
2106
2106
|
else{const{mount:a}=e
|
2107
2107
|
e.mount=function(){const l=a(...arguments)
|
2108
2108
|
return t.nextTick((()=>c.update())),e.mount=a,l}}St.reset(),("boolean"!=typeof __VUE_OPTIONS_API__||__VUE_OPTIONS_API__)&&e.mixin({computed:{$vuetify(){return t.reactive({defaults:sf.call(this,kt),display:sf.call(this,hn),theme:sf.call(this,Va),icons:sf.call(this,Ot),locale:sf.call(this,ma),date:sf.call(this,mu)})}}})},defaults:u,display:c,theme:d,icons:v,locale:p,date:f,goTo:m}}function sf(e){const t=this.$,a=t.parent?.provides??t.vnode.appContext?.provides
|
2109
|
-
if(a&&e in a)return a[e]}rf.version="3.7.7-master.2025-01-
|
2110
|
-
const uf=function(){return rf({components:Zp,directives:nf,...arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}})},cf="3.7.7-master.2025-01-
|
2109
|
+
if(a&&e in a)return a[e]}rf.version="3.7.7-master.2025-01-22"
|
2110
|
+
const uf=function(){return rf({components:Zp,directives:nf,...arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}})},cf="3.7.7-master.2025-01-22"
|
2111
2111
|
uf.version=cf,e.blueprints=Zt,e.components=Zp,e.createVuetify=uf,e.directives=nf,e.useDate=hu,e.useDefaults=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0
|
2112
2112
|
const{props:a,provideSubDefaults:l}=Ct(e,t)
|
2113
2113
|
return l(),a},e.useDisplay=xn,e.useGoTo=Pn,e.useLayout=la,e.useLocale=ha,e.useRtl=ba,e.useTheme=xa,e.version=cf}))
|
package/lib/entry-bundler.mjs
CHANGED
@@ -16,7 +16,7 @@ export const createVuetify = function () {
|
|
16
16
|
...options
|
17
17
|
});
|
18
18
|
};
|
19
|
-
export const version = "3.7.7-master.2025-01-
|
19
|
+
export const version = "3.7.7-master.2025-01-22";
|
20
20
|
createVuetify.version = version;
|
21
21
|
export { blueprints, components, directives };
|
22
22
|
export * from "./composables/index.mjs";
|
package/lib/framework.mjs
CHANGED
package/lib/index.d.mts
CHANGED
@@ -486,40 +486,47 @@ declare module 'vue' {
|
|
486
486
|
$children?: VNodeChild
|
487
487
|
}
|
488
488
|
export interface GlobalComponents {
|
489
|
+
VAlert: typeof import('vuetify/components')['VAlert']
|
490
|
+
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
491
|
+
VApp: typeof import('vuetify/components')['VApp']
|
489
492
|
VAppBar: typeof import('vuetify/components')['VAppBar']
|
490
493
|
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
491
494
|
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
492
|
-
VApp: typeof import('vuetify/components')['VApp']
|
493
|
-
VAlert: typeof import('vuetify/components')['VAlert']
|
494
|
-
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
495
495
|
VBadge: typeof import('vuetify/components')['VBadge']
|
496
|
-
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
497
496
|
VAvatar: typeof import('vuetify/components')['VAvatar']
|
497
|
+
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
498
|
+
VBtn: typeof import('vuetify/components')['VBtn']
|
498
499
|
VBanner: typeof import('vuetify/components')['VBanner']
|
499
500
|
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
500
501
|
VBannerText: typeof import('vuetify/components')['VBannerText']
|
501
|
-
|
502
|
-
|
502
|
+
VCarousel: typeof import('vuetify/components')['VCarousel']
|
503
|
+
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
503
504
|
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
504
|
-
|
505
|
+
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
506
|
+
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
505
507
|
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
506
508
|
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
507
509
|
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
510
|
+
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
511
|
+
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
512
|
+
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
513
|
+
VCode: typeof import('vuetify/components')['VCode']
|
508
514
|
VCard: typeof import('vuetify/components')['VCard']
|
509
515
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
510
516
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
511
517
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
512
518
|
VCardText: typeof import('vuetify/components')['VCardText']
|
513
519
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
514
|
-
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
515
|
-
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
516
|
-
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
517
520
|
VChip: typeof import('vuetify/components')['VChip']
|
518
|
-
VCombobox: typeof import('vuetify/components')['VCombobox']
|
519
|
-
VCarousel: typeof import('vuetify/components')['VCarousel']
|
520
|
-
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
521
521
|
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
522
|
+
VCombobox: typeof import('vuetify/components')['VCombobox']
|
522
523
|
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
524
|
+
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
525
|
+
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
526
|
+
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
527
|
+
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
528
|
+
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
529
|
+
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
523
530
|
VDataTable: typeof import('vuetify/components')['VDataTable']
|
524
531
|
VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
|
525
532
|
VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
|
@@ -527,55 +534,56 @@ declare module 'vue' {
|
|
527
534
|
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
528
535
|
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
529
536
|
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
530
|
-
VCode: typeof import('vuetify/components')['VCode']
|
531
537
|
VCounter: typeof import('vuetify/components')['VCounter']
|
532
|
-
VDivider: typeof import('vuetify/components')['VDivider']
|
533
|
-
VDialog: typeof import('vuetify/components')['VDialog']
|
534
538
|
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
535
|
-
|
536
|
-
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
537
|
-
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
538
|
-
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
539
|
-
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
540
|
-
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
539
|
+
VDivider: typeof import('vuetify/components')['VDivider']
|
541
540
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
542
541
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
543
542
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
544
543
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
544
|
+
VDialog: typeof import('vuetify/components')['VDialog']
|
545
545
|
VFileInput: typeof import('vuetify/components')['VFileInput']
|
546
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
546
547
|
VFab: typeof import('vuetify/components')['VFab']
|
547
548
|
VField: typeof import('vuetify/components')['VField']
|
548
549
|
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
549
|
-
|
550
|
+
VImg: typeof import('vuetify/components')['VImg']
|
551
|
+
VInput: typeof import('vuetify/components')['VInput']
|
550
552
|
VIcon: typeof import('vuetify/components')['VIcon']
|
551
553
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
552
554
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
553
555
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
554
556
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
555
|
-
VImg: typeof import('vuetify/components')['VImg']
|
556
557
|
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
557
|
-
VInput: typeof import('vuetify/components')['VInput']
|
558
|
-
VKbd: typeof import('vuetify/components')['VKbd']
|
559
558
|
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
560
559
|
VItem: typeof import('vuetify/components')['VItem']
|
561
|
-
|
560
|
+
VKbd: typeof import('vuetify/components')['VKbd']
|
562
561
|
VLabel: typeof import('vuetify/components')['VLabel']
|
563
562
|
VMain: typeof import('vuetify/components')['VMain']
|
563
|
+
VList: typeof import('vuetify/components')['VList']
|
564
|
+
VListGroup: typeof import('vuetify/components')['VListGroup']
|
565
|
+
VListImg: typeof import('vuetify/components')['VListImg']
|
566
|
+
VListItem: typeof import('vuetify/components')['VListItem']
|
567
|
+
VListItemAction: typeof import('vuetify/components')['VListItemAction']
|
568
|
+
VListItemMedia: typeof import('vuetify/components')['VListItemMedia']
|
569
|
+
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
570
|
+
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
571
|
+
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
572
|
+
VMenu: typeof import('vuetify/components')['VMenu']
|
573
|
+
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
564
574
|
VMessages: typeof import('vuetify/components')['VMessages']
|
575
|
+
VOverlay: typeof import('vuetify/components')['VOverlay']
|
576
|
+
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
565
577
|
VPagination: typeof import('vuetify/components')['VPagination']
|
566
|
-
|
578
|
+
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
567
579
|
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
568
580
|
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
569
|
-
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
570
|
-
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
571
|
-
VOverlay: typeof import('vuetify/components')['VOverlay']
|
572
|
-
VRating: typeof import('vuetify/components')['VRating']
|
573
581
|
VSelect: typeof import('vuetify/components')['VSelect']
|
574
|
-
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
575
|
-
VSheet: typeof import('vuetify/components')['VSheet']
|
576
582
|
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
577
|
-
|
583
|
+
VRating: typeof import('vuetify/components')['VRating']
|
578
584
|
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
585
|
+
VSheet: typeof import('vuetify/components')['VSheet']
|
586
|
+
VSlider: typeof import('vuetify/components')['VSlider']
|
579
587
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
580
588
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
581
589
|
VStepper: typeof import('vuetify/components')['VStepper']
|
@@ -587,53 +595,45 @@ declare module 'vue' {
|
|
587
595
|
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
588
596
|
VSwitch: typeof import('vuetify/components')['VSwitch']
|
589
597
|
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
590
|
-
|
591
|
-
VListGroup: typeof import('vuetify/components')['VListGroup']
|
592
|
-
VListImg: typeof import('vuetify/components')['VListImg']
|
593
|
-
VListItem: typeof import('vuetify/components')['VListItem']
|
594
|
-
VListItemAction: typeof import('vuetify/components')['VListItemAction']
|
595
|
-
VListItemMedia: typeof import('vuetify/components')['VListItemMedia']
|
596
|
-
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
597
|
-
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
598
|
-
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
599
|
-
VTextarea: typeof import('vuetify/components')['VTextarea']
|
598
|
+
VTable: typeof import('vuetify/components')['VTable']
|
600
599
|
VTab: typeof import('vuetify/components')['VTab']
|
601
600
|
VTabs: typeof import('vuetify/components')['VTabs']
|
602
601
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
603
602
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
604
|
-
|
605
|
-
VTable: typeof import('vuetify/components')['VTable']
|
603
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
606
604
|
VTimeline: typeof import('vuetify/components')['VTimeline']
|
607
605
|
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
606
|
+
VTextField: typeof import('vuetify/components')['VTextField']
|
608
607
|
VWindow: typeof import('vuetify/components')['VWindow']
|
609
608
|
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
610
609
|
VTooltip: typeof import('vuetify/components')['VTooltip']
|
611
610
|
VToolbar: typeof import('vuetify/components')['VToolbar']
|
612
611
|
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
613
612
|
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
613
|
+
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
614
614
|
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
615
|
-
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
616
615
|
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
617
|
-
|
616
|
+
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
618
617
|
VContainer: typeof import('vuetify/components')['VContainer']
|
619
618
|
VCol: typeof import('vuetify/components')['VCol']
|
620
619
|
VRow: typeof import('vuetify/components')['VRow']
|
621
620
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
621
|
+
VForm: typeof import('vuetify/components')['VForm']
|
622
622
|
VHover: typeof import('vuetify/components')['VHover']
|
623
|
+
VLazy: typeof import('vuetify/components')['VLazy']
|
623
624
|
VLayout: typeof import('vuetify/components')['VLayout']
|
624
625
|
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
625
626
|
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
626
|
-
VLazy: typeof import('vuetify/components')['VLazy']
|
627
627
|
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
628
|
-
VParallax: typeof import('vuetify/components')['VParallax']
|
629
628
|
VRadio: typeof import('vuetify/components')['VRadio']
|
630
|
-
VResponsive: typeof import('vuetify/components')['VResponsive']
|
631
629
|
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
630
|
+
VResponsive: typeof import('vuetify/components')['VResponsive']
|
631
|
+
VParallax: typeof import('vuetify/components')['VParallax']
|
632
632
|
VSparkline: typeof import('vuetify/components')['VSparkline']
|
633
|
-
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
634
|
-
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
635
633
|
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
634
|
+
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
636
635
|
VValidation: typeof import('vuetify/components')['VValidation']
|
636
|
+
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
637
637
|
VFabTransition: typeof import('vuetify/components')['VFabTransition']
|
638
638
|
VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
|
639
639
|
VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
|
@@ -650,6 +650,8 @@ declare module 'vue' {
|
|
650
650
|
VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
|
651
651
|
VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
|
652
652
|
VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
|
653
|
+
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
654
|
+
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
653
655
|
VCalendar: typeof import('vuetify/labs/components')['VCalendar']
|
654
656
|
VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
|
655
657
|
VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
|
@@ -659,8 +661,6 @@ declare module 'vue' {
|
|
659
661
|
VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
|
660
662
|
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
661
663
|
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
662
|
-
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
663
|
-
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
664
664
|
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
665
665
|
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
666
666
|
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
@@ -206,7 +206,7 @@ export const VTimePicker = genericComponent()({
|
|
206
206
|
default:
|
207
207
|
break;
|
208
208
|
}
|
209
|
-
const emitChange =
|
209
|
+
const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true);
|
210
210
|
if (selecting.value === SelectingTimes.Hour) {
|
211
211
|
selecting.value = SelectingTimes.Minute;
|
212
212
|
} else if (props.useSeconds && selecting.value === SelectingTimes.Minute) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTimePicker.mjs","names":["pad","VTimePickerClock","VTimePickerControls","makeVPickerProps","VPicker","useLocale","computed","onMounted","ref","watch","SelectingTimes","createRange","genericComponent","omit","propsFactory","useRender","rangeHours24","rangeHours12am","rangeHours12pm","map","v","range60","selectingNames","makeVTimePickerProps","allowedHours","Function","Array","allowedMinutes","allowedSeconds","ampmInTitle","Boolean","disabled","format","type","String","default","max","min","modelValue","readonly","scrollable","useSeconds","title","VTimePicker","name","props","emits","val","setup","_ref","emit","slots","t","inputHour","inputMinute","inputSecond","lazyInputHour","lazyInputMinute","lazyInputSecond","period","selecting","Hour","controlsRef","clockRef","isAllowedHourCb","cb","includes","minHour","Number","split","maxHour","isAllowedMinuteCb","isHourAllowed","value","minMinute","maxMinute","minTime","maxTime","time","isAllowedSecondCb","isMinuteAllowed","minSecond","maxSecond","isAmPm","setInputData","genValue","emitValue","convert24to12","hour","convert12to24","Date","getHours","getMinutes","getSeconds","minute","second","trim","toLowerCase","match","parseInt","firstAllowed","allowedFn","range","first","find","length","setPeriod","newHour","onInput","Minute","onChange","emitChange","Second","pickerProps","filterProps","timePickerControlsProps","timePickerClockProps","_createVNode","_mergeProps","undefined","class","style","header","actions"],"sources":["../../../src/labs/VTimePicker/VTimePicker.tsx"],"sourcesContent":["// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { pad } from './util'\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { SelectingTimes } from './SelectingTimes'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\nconst selectingNames = { 1: 'hour', 2: 'minute', 3: 'second' }\n\nexport { SelectingTimes }\n\nexport type VTimePickerSlots = Omit<VPickerSlots, 'header'>\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedMinutes: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedSeconds: [Function, Array] as PropType<AllowFunction | number[]>,\n ampmInTitle: Boolean,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n modelValue: null as any as PropType<any>,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent<VTimePickerSlots>()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = ref('am' as Period)\n const selecting = ref(SelectingTimes.Hour)\n const controlsRef = ref<VTimePickerControls | null>(null)\n const clockRef = ref<VTimePickerClock | null>(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= minHour * 1 &&\n val <= maxHour * 1 &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + minMinute * 1\n const maxTime = maxHour * 60 + maxMinute * 1\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + (minSecond || 0) * 1\n const maxTime = maxHour * 3600 + maxMinute * 60 + (maxSecond || 0) * 1\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n watch(() => props.modelValue, val => setInputData(val))\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function emitValue () {\n const value = genValue()\n if (value !== null) emit('update:modelValue', value)\n }\n\n function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: 'hour' | 'minute' | 'second', value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (selecting.value === SelectingTimes.Hour) {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (selecting.value === SelectingTimes.Minute) {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (selectingNames[selecting.value]) {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = selecting.value === (props.useSeconds ? SelectingTimes.Second : SelectingTimes.Minute)\n\n if (selecting.value === SelectingTimes.Hour) {\n selecting.value = SelectingTimes.Minute\n } else if (props.useSeconds && selecting.value === SelectingTimes.Minute) {\n selecting.value = SelectingTimes.Second\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n <VPicker\n { ...pickerProps }\n color={ undefined }\n class={[\n 'v-time-picker',\n props.class,\n ]}\n style={ props.style }\n v-slots={{\n title: () => slots.title?.() ?? (\n <div class=\"v-time-picker__title\">\n { t(props.title) }\n </div>\n ),\n header: () => (\n <VTimePickerControls\n { ...timePickerControlsProps }\n ampm={ isAmPm.value || props.ampmInTitle }\n ampmReadonly={ isAmPm.value && !props.ampmInTitle }\n hour={ inputHour.value as number }\n minute={ inputMinute.value as number }\n period={ period.value }\n second={ inputSecond.value as number }\n selecting={ selecting.value }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:selecting={ (value: 1 | 2 | 3) => (selecting.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n <VTimePickerClock\n { ...timePickerClockProps }\n allowedValues={\n selecting.value === SelectingTimes.Hour\n ? isAllowedHourCb.value\n : (selecting.value === SelectingTimes.Minute\n ? isAllowedMinuteCb.value\n : isAllowedSecondCb.value)\n }\n double={ selecting.value === SelectingTimes.Hour && !isAmPm.value }\n format={ selecting.value === SelectingTimes.Hour\n ? (isAmPm.value ? convert24to12 : (val: number) => val)\n : (val: number) => pad(val, 2)\n }\n max={ selecting.value === SelectingTimes.Hour ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ selecting.value === SelectingTimes.Hour && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ selecting.value === SelectingTimes.Hour ? 1 : 5 }\n modelValue={ selecting.value === SelectingTimes.Hour\n ? inputHour.value as number\n : (selecting.value === SelectingTimes.Minute\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType<typeof VTimePicker>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VTimePicker.mjs","names":["pad","VTimePickerClock","VTimePickerControls","makeVPickerProps","VPicker","useLocale","computed","onMounted","ref","watch","SelectingTimes","createRange","genericComponent","omit","propsFactory","useRender","rangeHours24","rangeHours12am","rangeHours12pm","map","v","range60","selectingNames","makeVTimePickerProps","allowedHours","Function","Array","allowedMinutes","allowedSeconds","ampmInTitle","Boolean","disabled","format","type","String","default","max","min","modelValue","readonly","scrollable","useSeconds","title","VTimePicker","name","props","emits","val","setup","_ref","emit","slots","t","inputHour","inputMinute","inputSecond","lazyInputHour","lazyInputMinute","lazyInputSecond","period","selecting","Hour","controlsRef","clockRef","isAllowedHourCb","cb","includes","minHour","Number","split","maxHour","isAllowedMinuteCb","isHourAllowed","value","minMinute","maxMinute","minTime","maxTime","time","isAllowedSecondCb","isMinuteAllowed","minSecond","maxSecond","isAmPm","setInputData","genValue","emitValue","convert24to12","hour","convert12to24","Date","getHours","getMinutes","getSeconds","minute","second","trim","toLowerCase","match","parseInt","firstAllowed","allowedFn","range","first","find","length","setPeriod","newHour","onInput","Minute","onChange","emitChange","Second","pickerProps","filterProps","timePickerControlsProps","timePickerClockProps","_createVNode","_mergeProps","undefined","class","style","header","actions"],"sources":["../../../src/labs/VTimePicker/VTimePicker.tsx"],"sourcesContent":["// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { pad } from './util'\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { SelectingTimes } from './SelectingTimes'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\nconst selectingNames = { 1: 'hour', 2: 'minute', 3: 'second' }\n\nexport { SelectingTimes }\n\nexport type VTimePickerSlots = Omit<VPickerSlots, 'header'>\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedMinutes: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedSeconds: [Function, Array] as PropType<AllowFunction | number[]>,\n ampmInTitle: Boolean,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n modelValue: null as any as PropType<any>,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent<VTimePickerSlots>()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = ref('am' as Period)\n const selecting = ref(SelectingTimes.Hour)\n const controlsRef = ref<VTimePickerControls | null>(null)\n const clockRef = ref<VTimePickerClock | null>(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= minHour * 1 &&\n val <= maxHour * 1 &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + minMinute * 1\n const maxTime = maxHour * 60 + maxMinute * 1\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + (minSecond || 0) * 1\n const maxTime = maxHour * 3600 + maxMinute * 60 + (maxSecond || 0) * 1\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n watch(() => props.modelValue, val => setInputData(val))\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function emitValue () {\n const value = genValue()\n if (value !== null) emit('update:modelValue', value)\n }\n\n function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: 'hour' | 'minute' | 'second', value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (selecting.value === SelectingTimes.Hour) {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (selecting.value === SelectingTimes.Minute) {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (selectingNames[selecting.value]) {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true)\n if (selecting.value === SelectingTimes.Hour) {\n selecting.value = SelectingTimes.Minute\n } else if (props.useSeconds && selecting.value === SelectingTimes.Minute) {\n selecting.value = SelectingTimes.Second\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n <VPicker\n { ...pickerProps }\n color={ undefined }\n class={[\n 'v-time-picker',\n props.class,\n ]}\n style={ props.style }\n v-slots={{\n title: () => slots.title?.() ?? (\n <div class=\"v-time-picker__title\">\n { t(props.title) }\n </div>\n ),\n header: () => (\n <VTimePickerControls\n { ...timePickerControlsProps }\n ampm={ isAmPm.value || props.ampmInTitle }\n ampmReadonly={ isAmPm.value && !props.ampmInTitle }\n hour={ inputHour.value as number }\n minute={ inputMinute.value as number }\n period={ period.value }\n second={ inputSecond.value as number }\n selecting={ selecting.value }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:selecting={ (value: 1 | 2 | 3) => (selecting.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n <VTimePickerClock\n { ...timePickerClockProps }\n allowedValues={\n selecting.value === SelectingTimes.Hour\n ? isAllowedHourCb.value\n : (selecting.value === SelectingTimes.Minute\n ? isAllowedMinuteCb.value\n : isAllowedSecondCb.value)\n }\n double={ selecting.value === SelectingTimes.Hour && !isAmPm.value }\n format={ selecting.value === SelectingTimes.Hour\n ? (isAmPm.value ? convert24to12 : (val: number) => val)\n : (val: number) => pad(val, 2)\n }\n max={ selecting.value === SelectingTimes.Hour ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ selecting.value === SelectingTimes.Hour && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ selecting.value === SelectingTimes.Hour ? 1 : 5 }\n modelValue={ selecting.value === SelectingTimes.Hour\n ? inputHour.value as number\n : (selecting.value === SelectingTimes.Minute\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType<typeof VTimePicker>\n"],"mappings":"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","ignoreList":[]}
|