@vuetify/nightly 3.8.5-master.2025-05-15 → 3.8.5-pr-21419.3ae3440
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 +10 -3
- package/dist/json/attributes.json +2689 -2689
- package/dist/json/importMap-labs.json +28 -28
- package/dist/json/importMap.json +142 -142
- package/dist/json/web-types.json +4963 -4963
- package/dist/vuetify-labs.cjs +43 -9
- package/dist/vuetify-labs.css +5443 -5443
- package/dist/vuetify-labs.d.ts +59 -59
- package/dist/vuetify-labs.esm.js +43 -9
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +43 -9
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +43 -9
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +4848 -4848
- package/dist/vuetify.d.ts +59 -59
- package/dist/vuetify.esm.js +43 -9
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +43 -9
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +26 -22
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VList/VList.d.ts +3 -3
- package/lib/components/VList/VList.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +39 -5
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/entry-bundler.js.map +1 -1
- package/lib/framework.d.ts +56 -56
- package/lib/framework.js +1 -1
- package/lib/framework.js.map +1 -1
- package/lib/util/helpers.js +1 -1
- package/lib/util/helpers.js.map +1 -1
- package/package.json +1 -1
package/lib/framework.d.ts
CHANGED
@@ -2540,38 +2540,41 @@ declare module 'vue' {
|
|
2540
2540
|
}
|
2541
2541
|
export interface GlobalComponents {
|
2542
2542
|
VApp: typeof import('vuetify/components')['VApp']
|
2543
|
-
VAvatar: typeof import('vuetify/components')['VAvatar']
|
2544
|
-
VAlert: typeof import('vuetify/components')['VAlert']
|
2545
|
-
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
2546
2543
|
VAppBar: typeof import('vuetify/components')['VAppBar']
|
2547
2544
|
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
2548
2545
|
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
2549
2546
|
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
2547
|
+
VAlert: typeof import('vuetify/components')['VAlert']
|
2548
|
+
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
2549
|
+
VAvatar: typeof import('vuetify/components')['VAvatar']
|
2550
2550
|
VBanner: typeof import('vuetify/components')['VBanner']
|
2551
2551
|
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
2552
2552
|
VBannerText: typeof import('vuetify/components')['VBannerText']
|
2553
2553
|
VBadge: typeof import('vuetify/components')['VBadge']
|
2554
|
-
|
2554
|
+
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
2555
|
+
VBtn: typeof import('vuetify/components')['VBtn']
|
2555
2556
|
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
2556
2557
|
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
2557
2558
|
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
2558
|
-
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
2559
|
-
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
2560
2559
|
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
2560
|
+
VCarousel: typeof import('vuetify/components')['VCarousel']
|
2561
|
+
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
2562
|
+
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
2563
|
+
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
2564
|
+
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
2565
|
+
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
2566
|
+
VChip: typeof import('vuetify/components')['VChip']
|
2567
|
+
VCode: typeof import('vuetify/components')['VCode']
|
2568
|
+
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
2569
|
+
VCounter: typeof import('vuetify/components')['VCounter']
|
2570
|
+
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
2571
|
+
VCombobox: typeof import('vuetify/components')['VCombobox']
|
2561
2572
|
VCard: typeof import('vuetify/components')['VCard']
|
2562
2573
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
2563
2574
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
2564
2575
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
2565
2576
|
VCardText: typeof import('vuetify/components')['VCardText']
|
2566
2577
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
2567
|
-
VCarousel: typeof import('vuetify/components')['VCarousel']
|
2568
|
-
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
2569
|
-
VChip: typeof import('vuetify/components')['VChip']
|
2570
|
-
VBtn: typeof import('vuetify/components')['VBtn']
|
2571
|
-
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
2572
|
-
VCode: typeof import('vuetify/components')['VCode']
|
2573
|
-
VCombobox: typeof import('vuetify/components')['VCombobox']
|
2574
|
-
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
2575
2578
|
VDataTable: typeof import('vuetify/components')['VDataTable']
|
2576
2579
|
VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
|
2577
2580
|
VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
|
@@ -2579,38 +2582,37 @@ declare module 'vue' {
|
|
2579
2582
|
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
2580
2583
|
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
2581
2584
|
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
2582
|
-
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
2583
|
-
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
2584
|
-
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
2585
2585
|
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
2586
2586
|
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
2587
2587
|
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
2588
2588
|
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
2589
2589
|
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
2590
2590
|
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
2591
|
-
|
2591
|
+
VDialog: typeof import('vuetify/components')['VDialog']
|
2592
|
+
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
2593
|
+
VDivider: typeof import('vuetify/components')['VDivider']
|
2592
2594
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
2593
2595
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
2594
2596
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
2595
2597
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
2596
2598
|
VFab: typeof import('vuetify/components')['VFab']
|
2597
|
-
VDivider: typeof import('vuetify/components')['VDivider']
|
2598
2599
|
VFileInput: typeof import('vuetify/components')['VFileInput']
|
2599
2600
|
VField: typeof import('vuetify/components')['VField']
|
2600
2601
|
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
2601
|
-
|
2602
|
-
VDialog: typeof import('vuetify/components')['VDialog']
|
2602
|
+
VInput: typeof import('vuetify/components')['VInput']
|
2603
2603
|
VIcon: typeof import('vuetify/components')['VIcon']
|
2604
2604
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
2605
2605
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
2606
2606
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
2607
2607
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
2608
|
-
|
2608
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
2609
2609
|
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
2610
|
-
|
2610
|
+
VImg: typeof import('vuetify/components')['VImg']
|
2611
2611
|
VKbd: typeof import('vuetify/components')['VKbd']
|
2612
|
+
VLabel: typeof import('vuetify/components')['VLabel']
|
2612
2613
|
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
2613
2614
|
VItem: typeof import('vuetify/components')['VItem']
|
2615
|
+
VMain: typeof import('vuetify/components')['VMain']
|
2614
2616
|
VList: typeof import('vuetify/components')['VList']
|
2615
2617
|
VListGroup: typeof import('vuetify/components')['VListGroup']
|
2616
2618
|
VListImg: typeof import('vuetify/components')['VListImg']
|
@@ -2620,51 +2622,49 @@ declare module 'vue' {
|
|
2620
2622
|
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
2621
2623
|
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
2622
2624
|
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
2623
|
-
VMain: typeof import('vuetify/components')['VMain']
|
2624
|
-
VLabel: typeof import('vuetify/components')['VLabel']
|
2625
|
-
VMessages: typeof import('vuetify/components')['VMessages']
|
2626
2625
|
VMenu: typeof import('vuetify/components')['VMenu']
|
2626
|
+
VNumberInput: typeof import('vuetify/components')['VNumberInput']
|
2627
2627
|
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
2628
|
-
|
2628
|
+
VMessages: typeof import('vuetify/components')['VMessages']
|
2629
2629
|
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
2630
|
-
|
2631
|
-
VPagination: typeof import('vuetify/components')['VPagination']
|
2630
|
+
VOverlay: typeof import('vuetify/components')['VOverlay']
|
2632
2631
|
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
2632
|
+
VPagination: typeof import('vuetify/components')['VPagination']
|
2633
|
+
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
2633
2634
|
VRating: typeof import('vuetify/components')['VRating']
|
2634
|
-
VSelect: typeof import('vuetify/components')['VSelect']
|
2635
2635
|
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
2636
|
-
|
2636
|
+
VSelect: typeof import('vuetify/components')['VSelect']
|
2637
2637
|
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
2638
|
-
VSlider: typeof import('vuetify/components')['VSlider']
|
2639
2638
|
VSheet: typeof import('vuetify/components')['VSheet']
|
2640
|
-
|
2641
|
-
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
2639
|
+
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
2642
2640
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
2643
2641
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
2642
|
+
VSlider: typeof import('vuetify/components')['VSlider']
|
2643
|
+
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
2644
2644
|
VStepper: typeof import('vuetify/components')['VStepper']
|
2645
2645
|
VStepperActions: typeof import('vuetify/components')['VStepperActions']
|
2646
2646
|
VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
|
2647
2647
|
VStepperItem: typeof import('vuetify/components')['VStepperItem']
|
2648
2648
|
VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
|
2649
2649
|
VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
|
2650
|
-
|
2651
|
-
|
2650
|
+
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
2651
|
+
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
2652
2652
|
VTab: typeof import('vuetify/components')['VTab']
|
2653
2653
|
VTabs: typeof import('vuetify/components')['VTabs']
|
2654
2654
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
2655
2655
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
2656
|
-
|
2657
|
-
VTextarea: typeof import('vuetify/components')['VTextarea']
|
2656
|
+
VSwitch: typeof import('vuetify/components')['VSwitch']
|
2658
2657
|
VTable: typeof import('vuetify/components')['VTable']
|
2658
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
2659
|
+
VTextField: typeof import('vuetify/components')['VTextField']
|
2659
2660
|
VTimeline: typeof import('vuetify/components')['VTimeline']
|
2660
2661
|
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
2661
2662
|
VToolbar: typeof import('vuetify/components')['VToolbar']
|
2662
2663
|
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
2663
2664
|
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
2664
|
-
|
2665
|
+
VTooltip: typeof import('vuetify/components')['VTooltip']
|
2665
2666
|
VWindow: typeof import('vuetify/components')['VWindow']
|
2666
2667
|
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
2667
|
-
VTooltip: typeof import('vuetify/components')['VTooltip']
|
2668
2668
|
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
2669
2669
|
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
2670
2670
|
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
@@ -2672,23 +2672,22 @@ declare module 'vue' {
|
|
2672
2672
|
VCol: typeof import('vuetify/components')['VCol']
|
2673
2673
|
VRow: typeof import('vuetify/components')['VRow']
|
2674
2674
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
2675
|
+
VForm: typeof import('vuetify/components')['VForm']
|
2675
2676
|
VHover: typeof import('vuetify/components')['VHover']
|
2676
2677
|
VLayout: typeof import('vuetify/components')['VLayout']
|
2677
2678
|
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
2678
2679
|
VLazy: typeof import('vuetify/components')['VLazy']
|
2679
2680
|
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
2680
2681
|
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
2681
|
-
VParallax: typeof import('vuetify/components')['VParallax']
|
2682
2682
|
VRadio: typeof import('vuetify/components')['VRadio']
|
2683
|
-
VResponsive: typeof import('vuetify/components')['VResponsive']
|
2684
2683
|
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
2685
|
-
|
2686
|
-
VSparkline: typeof import('vuetify/components')['VSparkline']
|
2687
|
-
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
2684
|
+
VResponsive: typeof import('vuetify/components')['VResponsive']
|
2688
2685
|
VSnackbarQueue: typeof import('vuetify/components')['VSnackbarQueue']
|
2686
|
+
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
2687
|
+
VSparkline: typeof import('vuetify/components')['VSparkline']
|
2689
2688
|
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
2690
|
-
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
2691
2689
|
VValidation: typeof import('vuetify/components')['VValidation']
|
2690
|
+
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
2692
2691
|
VFabTransition: typeof import('vuetify/components')['VFabTransition']
|
2693
2692
|
VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
|
2694
2693
|
VDialogTopTransition: typeof import('vuetify/components')['VDialogTopTransition']
|
@@ -2705,28 +2704,29 @@ declare module 'vue' {
|
|
2705
2704
|
VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
|
2706
2705
|
VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
|
2707
2706
|
VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
|
2708
|
-
|
2707
|
+
VParallax: typeof import('vuetify/components')['VParallax']
|
2709
2708
|
VCalendar: typeof import('vuetify/labs/components')['VCalendar']
|
2710
2709
|
VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
|
2711
2710
|
VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
|
2712
2711
|
VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
|
2713
2712
|
VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
|
2714
2713
|
VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
|
2715
|
-
|
2716
|
-
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
2717
|
-
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
2714
|
+
VColorInput: typeof import('vuetify/labs/components')['VColorInput']
|
2718
2715
|
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
2719
2716
|
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
2720
|
-
|
2721
|
-
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
2722
|
-
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
2723
|
-
VTreeview: typeof import('vuetify/labs/components')['VTreeview']
|
2724
|
-
VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
|
2725
|
-
VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
|
2717
|
+
VIconBtn: typeof import('vuetify/labs/components')['VIconBtn']
|
2726
2718
|
VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
|
2727
2719
|
VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
|
2728
2720
|
VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
|
2721
|
+
VTreeview: typeof import('vuetify/labs/components')['VTreeview']
|
2722
|
+
VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
|
2723
|
+
VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
|
2724
|
+
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
2725
|
+
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
2729
2726
|
VDateInput: typeof import('vuetify/labs/components')['VDateInput']
|
2730
2727
|
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
2728
|
+
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
2729
|
+
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
2730
|
+
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
2731
2731
|
}
|
2732
2732
|
}
|
package/lib/framework.js
CHANGED
package/lib/framework.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"framework.js","names":["createDate","DateAdapterSymbol","DateOptionsSymbol","createDefaults","DefaultsSymbol","createDisplay","DisplaySymbol","createGoTo","GoToSymbol","createIcons","IconSymbol","createLocale","LocaleSymbol","createTheme","ThemeSymbol","effectScope","nextTick","reactive","defineComponent","IN_BROWSER","mergeDeep","createVuetify","vuetify","arguments","length","undefined","blueprint","rest","options","aliases","components","directives","scope","run","defaults","display","ssr","theme","icons","locale","date","goTo","install","app","key","directive","component","name","aliasName","appScope","onUnmount","stop","provide","instance","$nuxt","hook","update","mount","vm","__VUE_OPTIONS_API__","mixin","computed","$vuetify","inject","call","unmount","version","$","provides","parent","vnode","appContext"],"sources":["../src/framework.ts"],"sourcesContent":["// Composables\nimport { createDate, DateAdapterSymbol, DateOptionsSymbol } from '@/composables/date/date'\nimport { createDefaults, DefaultsSymbol } from '@/composables/defaults'\nimport { createDisplay, DisplaySymbol } from '@/composables/display'\nimport { createGoTo, GoToSymbol } from '@/composables/goto'\nimport { createIcons, IconSymbol } from '@/composables/icons'\nimport { createLocale, LocaleSymbol } from '@/composables/locale'\nimport { createTheme, ThemeSymbol } from '@/composables/theme'\n\n// Utilities\nimport { effectScope, nextTick, reactive } from 'vue'\nimport { defineComponent, IN_BROWSER, mergeDeep } from '@/util'\n\n// Types\nimport type { App, ComponentPublicInstance, InjectionKey } from 'vue'\nimport type { DateOptions } from '@/composables/date'\nimport type { DefaultsOptions } from '@/composables/defaults'\nimport type { DisplayOptions, SSROptions } from '@/composables/display'\nimport type { GoToOptions } from '@/composables/goto'\nimport type { IconOptions } from '@/composables/icons'\nimport type { LocaleOptions, RtlOptions } from '@/composables/locale'\nimport type { ThemeOptions } from '@/composables/theme'\n\n// Exports\nexport * from './composables'\nexport * from './types'\n\nexport interface VuetifyOptions {\n aliases?: Record<string, any>\n blueprint?: Blueprint\n components?: Record<string, any>\n date?: DateOptions\n directives?: Record<string, any>\n defaults?: DefaultsOptions\n display?: DisplayOptions\n goTo?: GoToOptions\n theme?: ThemeOptions\n icons?: IconOptions\n locale?: LocaleOptions & RtlOptions\n ssr?: SSROptions\n}\n\nexport interface Blueprint extends Omit<VuetifyOptions, 'blueprint'> {}\n\nexport function createVuetify (vuetify: VuetifyOptions = {}) {\n const { blueprint, ...rest } = vuetify\n const options: VuetifyOptions = mergeDeep(blueprint, rest)\n const {\n aliases = {},\n components = {},\n directives = {},\n } = options\n\n const scope = effectScope()\n return scope.run(() => {\n const defaults = createDefaults(options.defaults)\n const display = createDisplay(options.display, options.ssr)\n const theme = createTheme(options.theme)\n const icons = createIcons(options.icons)\n const locale = createLocale(options.locale)\n const date = createDate(options.date, locale)\n const goTo = createGoTo(options.goTo, locale)\n\n function install (app: App) {\n for (const key in directives) {\n app.directive(key, directives[key])\n }\n\n for (const key in components) {\n app.component(key, components[key])\n }\n\n for (const key in aliases) {\n app.component(key, defineComponent({\n ...aliases[key],\n name: key,\n aliasName: aliases[key].name,\n }))\n }\n\n const appScope = effectScope()\n appScope.run(() => {\n theme.install(app)\n })\n app.onUnmount(() => appScope.stop())\n\n app.provide(DefaultsSymbol, defaults)\n app.provide(DisplaySymbol, display)\n app.provide(ThemeSymbol, theme)\n app.provide(IconSymbol, icons)\n app.provide(LocaleSymbol, locale)\n app.provide(DateOptionsSymbol, date.options)\n app.provide(DateAdapterSymbol, date.instance)\n app.provide(GoToSymbol, goTo)\n\n if (IN_BROWSER && options.ssr) {\n if (app.$nuxt) {\n app.$nuxt.hook('app:suspense:resolve', () => {\n display.update()\n })\n } else {\n const { mount } = app\n app.mount = (...args) => {\n const vm = mount(...args)\n nextTick(() => display.update())\n app.mount = mount\n return vm\n }\n }\n }\n\n if (typeof __VUE_OPTIONS_API__ !== 'boolean' || __VUE_OPTIONS_API__) {\n app.mixin({\n computed: {\n $vuetify () {\n return reactive({\n defaults: inject.call(this, DefaultsSymbol),\n display: inject.call(this, DisplaySymbol),\n theme: inject.call(this, ThemeSymbol),\n icons: inject.call(this, IconSymbol),\n locale: inject.call(this, LocaleSymbol),\n date: inject.call(this, DateAdapterSymbol),\n })\n },\n },\n })\n }\n }\n\n function unmount () {\n scope.stop()\n }\n\n return {\n install,\n unmount,\n defaults,\n display,\n theme,\n icons,\n locale,\n date,\n goTo,\n }\n })!\n}\n\nexport const version = __VUETIFY_VERSION__\ncreateVuetify.version = version\n\n// Vue's inject() can only be used in setup\nfunction inject (this: ComponentPublicInstance, key: InjectionKey<any> | string) {\n const vm = this.$\n\n const provides = vm.parent?.provides ?? vm.vnode.appContext?.provides\n\n if (provides && (key as any) in provides) {\n return provides[(key as string)]\n }\n}\n"],"mappings":"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
|
1
|
+
{"version":3,"file":"framework.js","names":["createDate","DateAdapterSymbol","DateOptionsSymbol","createDefaults","DefaultsSymbol","createDisplay","DisplaySymbol","createGoTo","GoToSymbol","createIcons","IconSymbol","createLocale","LocaleSymbol","createTheme","ThemeSymbol","effectScope","nextTick","reactive","defineComponent","IN_BROWSER","mergeDeep","createVuetify","vuetify","arguments","length","undefined","blueprint","rest","options","aliases","components","directives","scope","run","defaults","display","ssr","theme","icons","locale","date","goTo","install","app","key","directive","component","name","aliasName","appScope","onUnmount","stop","provide","instance","$nuxt","hook","update","mount","vm","__VUE_OPTIONS_API__","mixin","computed","$vuetify","inject","call","unmount","version","$","provides","parent","vnode","appContext"],"sources":["../src/framework.ts"],"sourcesContent":["// Composables\nimport { createDate, DateAdapterSymbol, DateOptionsSymbol } from '@/composables/date/date'\nimport { createDefaults, DefaultsSymbol } from '@/composables/defaults'\nimport { createDisplay, DisplaySymbol } from '@/composables/display'\nimport { createGoTo, GoToSymbol } from '@/composables/goto'\nimport { createIcons, IconSymbol } from '@/composables/icons'\nimport { createLocale, LocaleSymbol } from '@/composables/locale'\nimport { createTheme, ThemeSymbol } from '@/composables/theme'\n\n// Utilities\nimport { effectScope, nextTick, reactive } from 'vue'\nimport { defineComponent, IN_BROWSER, mergeDeep } from '@/util'\n\n// Types\nimport type { App, ComponentPublicInstance, InjectionKey } from 'vue'\nimport type { DateOptions } from '@/composables/date'\nimport type { DefaultsOptions } from '@/composables/defaults'\nimport type { DisplayOptions, SSROptions } from '@/composables/display'\nimport type { GoToOptions } from '@/composables/goto'\nimport type { IconOptions } from '@/composables/icons'\nimport type { LocaleOptions, RtlOptions } from '@/composables/locale'\nimport type { ThemeOptions } from '@/composables/theme'\n\n// Exports\nexport * from './composables'\nexport * from './types'\n\nexport interface VuetifyOptions {\n aliases?: Record<string, any>\n blueprint?: Blueprint\n components?: Record<string, any>\n date?: DateOptions\n directives?: Record<string, any>\n defaults?: DefaultsOptions\n display?: DisplayOptions\n goTo?: GoToOptions\n theme?: ThemeOptions\n icons?: IconOptions\n locale?: LocaleOptions & RtlOptions\n ssr?: SSROptions\n}\n\nexport interface Blueprint extends Omit<VuetifyOptions, 'blueprint'> {}\n\nexport function createVuetify (vuetify: VuetifyOptions = {}) {\n const { blueprint, ...rest } = vuetify\n const options: VuetifyOptions = mergeDeep(blueprint, rest)\n const {\n aliases = {},\n components = {},\n directives = {},\n } = options\n\n const scope = effectScope()\n return scope.run(() => {\n const defaults = createDefaults(options.defaults)\n const display = createDisplay(options.display, options.ssr)\n const theme = createTheme(options.theme)\n const icons = createIcons(options.icons)\n const locale = createLocale(options.locale)\n const date = createDate(options.date, locale)\n const goTo = createGoTo(options.goTo, locale)\n\n function install (app: App) {\n for (const key in directives) {\n app.directive(key, directives[key])\n }\n\n for (const key in components) {\n app.component(key, components[key])\n }\n\n for (const key in aliases) {\n app.component(key, defineComponent({\n ...aliases[key],\n name: key,\n aliasName: aliases[key].name,\n }))\n }\n\n const appScope = effectScope()\n appScope.run(() => {\n theme.install(app)\n })\n app.onUnmount(() => appScope.stop())\n\n app.provide(DefaultsSymbol, defaults)\n app.provide(DisplaySymbol, display)\n app.provide(ThemeSymbol, theme)\n app.provide(IconSymbol, icons)\n app.provide(LocaleSymbol, locale)\n app.provide(DateOptionsSymbol, date.options)\n app.provide(DateAdapterSymbol, date.instance)\n app.provide(GoToSymbol, goTo)\n\n if (IN_BROWSER && options.ssr) {\n if (app.$nuxt) {\n app.$nuxt.hook('app:suspense:resolve', () => {\n display.update()\n })\n } else {\n const { mount } = app\n app.mount = (...args) => {\n const vm = mount(...args)\n nextTick(() => display.update())\n app.mount = mount\n return vm\n }\n }\n }\n\n if (typeof __VUE_OPTIONS_API__ !== 'boolean' || __VUE_OPTIONS_API__) {\n app.mixin({\n computed: {\n $vuetify () {\n return reactive({\n defaults: inject.call(this, DefaultsSymbol),\n display: inject.call(this, DisplaySymbol),\n theme: inject.call(this, ThemeSymbol),\n icons: inject.call(this, IconSymbol),\n locale: inject.call(this, LocaleSymbol),\n date: inject.call(this, DateAdapterSymbol),\n })\n },\n },\n })\n }\n }\n\n function unmount () {\n scope.stop()\n }\n\n return {\n install,\n unmount,\n defaults,\n display,\n theme,\n icons,\n locale,\n date,\n goTo,\n }\n })!\n}\n\nexport const version = __VUETIFY_VERSION__\ncreateVuetify.version = version\n\n// Vue's inject() can only be used in setup\nfunction inject (this: ComponentPublicInstance, key: InjectionKey<any> | string) {\n const vm = this.$\n\n const provides = vm.parent?.provides ?? vm.vnode.appContext?.provides\n\n if (provides && (key as any) in provides) {\n return provides[(key as string)]\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/lib/util/helpers.js
CHANGED
@@ -454,7 +454,7 @@ export function getNextElement(elements, location, condition) {
|
|
454
454
|
}
|
455
455
|
export function focusChild(el, location) {
|
456
456
|
const focusable = focusableChildren(el);
|
457
|
-
if (
|
457
|
+
if (location == null) {
|
458
458
|
if (el === document.activeElement || !el.contains(document.activeElement)) {
|
459
459
|
focusable[0]?.focus();
|
460
460
|
}
|
package/lib/util/helpers.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"helpers.js","names":["capitalize","Comment","Fragment","isVNode","reactive","shallowRef","toRef","unref","watchEffect","IN_BROWSER","getNestedValue","obj","path","fallback","last","length","undefined","i","deepEqual","a","b","Date","getTime","Object","props","keys","every","p","getObjectValueByPath","replace","split","getPropertyFromItem","item","property","value","Array","isArray","createRange","start","arguments","from","v","k","getZIndex","el","nodeType","Node","ELEMENT_NODE","index","Number","window","getComputedStyle","getPropertyValue","parentNode","convertToUnit","str","unit","num","isNaN","String","isFinite","isObject","isPlainObject","proto","getPrototypeOf","prototype","refElement","$el","TEXT_NODE","nextElementSibling","keyCodes","freeze","enter","tab","delete","esc","space","up","down","left","right","end","home","del","backspace","insert","pageup","pagedown","shift","keyValues","o","has","key","hasOwnProperty","pick","paths","found","call","pickWithRest","exclude","create","rest","some","RegExp","test","omit","clone","forEach","prop","onRE","isOn","bubblingEvents","compositionIgnoreKeys","isComposingIgnoreKey","e","isComposing","includes","filterInputAttrs","attrs","events","inputEvents","rootAttrs","inputAttrs","assign","arrayDiff","diff","push","wrapInArray","defaultFilter","search","toString","toLocaleLowerCase","indexOf","debounce","fn","delay","timeoutId","wrap","_len","args","_key","clearTimeout","setTimeout","clear","immediate","throttle","limit","throttling","clamp","min","max","Math","getDecimals","trimmedStr","trim","padEnd","char","repeat","padStart","chunk","size","chunked","substr","chunkArray","array","ceil","slice","humanReadableFileSize","bytes","base","prefix","abs","toFixed","mergeDeep","source","target","arrayFn","out","sourceProperty","targetProperty","flattenFragments","nodes","map","node","type","children","flat","toKebabCase","cache","get","kebab","toLowerCase","set","Map","findChildrenWithProvide","vnode","child","suspense","ssContent","component","getOwnPropertySymbols","provides","subTree","_arr","WeakMap","_pointer","CircularBuffer","constructor","_classPrivateFieldInitSpec","isFull","_classPrivateFieldGet","val","_classPrivateFieldSet","values","concat","getEventCoordinates","clientX","touches","clientY","destructComputed","getter","refs","flush","arr","eventName","propName","EventProp","Function","hasEvent","name","callEvent","handler","_len2","_key2","h","focusableChildren","filterByTabIndex","targets","s","join","querySelectorAll","getNextElement","elements","location","condition","_el","idx","document","activeElement","inc","offsetParent","focusChild","focusable","contains","focus","at","isEmpty","noop","matchesSelector","selector","supportsSelector","CSS","supports","matches","err","ensureValidVNode","vnodes","defer","timeout","cb","isClickInsideElement","event","targetDiv","mouseX","mouseY","divRect","getBoundingClientRect","divLeft","divTop","top","divRight","divBottom","bottom","templateRef","defineProperty","enumerable","checkPrintable","isPrintableChar","noModifier","ctrlKey","metaKey","altKey","isPrimitive"],"sources":["../../src/util/helpers.ts"],"sourcesContent":["// Utilities\nimport {\n capitalize,\n Comment,\n Fragment,\n isVNode,\n reactive,\n shallowRef,\n toRef,\n unref,\n watchEffect,\n} from 'vue'\nimport { IN_BROWSER } from '@/util/globals'\n\n// Types\nimport type {\n ComponentInternalInstance,\n ComponentPublicInstance,\n ComputedGetter,\n InjectionKey,\n PropType,\n Ref,\n ToRef,\n VNode,\n VNodeArrayChildren,\n VNodeChild,\n} from 'vue'\n\nexport function getNestedValue (obj: any, path: (string | number)[], fallback?: any): any {\n const last = path.length - 1\n\n if (last < 0) return obj === undefined ? fallback : obj\n\n for (let i = 0; i < last; i++) {\n if (obj == null) {\n return fallback\n }\n obj = obj[path[i]]\n }\n\n if (obj == null) return fallback\n\n return obj[path[last]] === undefined ? fallback : obj[path[last]]\n}\n\nexport function deepEqual (a: any, b: any): boolean {\n if (a === b) return true\n\n if (\n a instanceof Date &&\n b instanceof Date &&\n a.getTime() !== b.getTime()\n ) {\n // If the values are Date, compare them as timestamps\n return false\n }\n\n if (a !== Object(a) || b !== Object(b)) {\n // If the values aren't objects, they were already checked for equality\n return false\n }\n\n const props = Object.keys(a)\n\n if (props.length !== Object.keys(b).length) {\n // Different number of props, don't bother to check\n return false\n }\n\n return props.every(p => deepEqual(a[p], b[p]))\n}\n\nexport function getObjectValueByPath (obj: any, path?: string | null, fallback?: any): any {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (obj == null || !path || typeof path !== 'string') return fallback\n if (obj[path] !== undefined) return obj[path]\n path = path.replace(/\\[(\\w+)\\]/g, '.$1') // convert indexes to properties\n path = path.replace(/^\\./, '') // strip a leading dot\n return getNestedValue(obj, path.split('.'), fallback)\n}\n\nexport type SelectItemKey<T = Record<string, any>> =\n | boolean | null | undefined // Ignored\n | string // Lookup by key, can use dot notation for nested objects\n | readonly (string | number)[] // Nested lookup by key, each array item is a key in the next level\n | ((item: T, fallback?: any) => any)\n\nexport function getPropertyFromItem (\n item: any,\n property: SelectItemKey,\n fallback?: any\n): any {\n if (property === true) return item === undefined ? fallback : item\n\n if (property == null || typeof property === 'boolean') return fallback\n\n if (item !== Object(item)) {\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n }\n\n if (typeof property === 'string') return getObjectValueByPath(item, property, fallback)\n\n if (Array.isArray(property)) return getNestedValue(item, property, fallback)\n\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n}\n\nexport function createRange (length: number, start = 0): number[] {\n return Array.from({ length }, (v, k) => start + k)\n}\n\nexport function getZIndex (el?: Element | null): number {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0\n\n const index = Number(window.getComputedStyle(el).getPropertyValue('z-index'))\n\n if (!index) return getZIndex(el.parentNode as Element)\n return index\n}\n\nexport function convertToUnit (str: number, unit?: string): string\nexport function convertToUnit (str: string | number | null | undefined, unit?: string): string | undefined\nexport function convertToUnit (str: string | number | null | undefined, unit = 'px'): string | undefined {\n if (str == null || str === '') {\n return undefined\n }\n const num = Number(str)\n if (isNaN(num)) {\n return String(str)\n } else if (!isFinite(num)) {\n return undefined\n } else {\n return `${num}${unit}`\n }\n}\n\nexport function isObject (obj: any): obj is Record<string, any> {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj)\n}\n\nexport function isPlainObject (obj: any): obj is Record<string, any> {\n let proto\n return obj !== null && typeof obj === 'object' && (\n (proto = Object.getPrototypeOf(obj)) === Object.prototype ||\n proto === null\n )\n}\n\nexport function refElement (obj?: ComponentPublicInstance<any> | HTMLElement): HTMLElement | undefined {\n if (obj && '$el' in obj) {\n const el = obj.$el as HTMLElement\n if (el?.nodeType === Node.TEXT_NODE) {\n // Multi-root component, use the first element\n return el.nextElementSibling as HTMLElement\n }\n return el\n }\n return obj as HTMLElement\n}\n\n// KeyboardEvent.keyCode aliases\nexport const keyCodes = Object.freeze({\n enter: 13,\n tab: 9,\n delete: 46,\n esc: 27,\n space: 32,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n end: 35,\n home: 36,\n del: 46,\n backspace: 8,\n insert: 45,\n pageup: 33,\n pagedown: 34,\n shift: 16,\n})\n\nexport const keyValues: Record<string, string> = Object.freeze({\n enter: 'Enter',\n tab: 'Tab',\n delete: 'Delete',\n esc: 'Escape',\n space: 'Space',\n up: 'ArrowUp',\n down: 'ArrowDown',\n left: 'ArrowLeft',\n right: 'ArrowRight',\n end: 'End',\n home: 'Home',\n del: 'Delete',\n backspace: 'Backspace',\n insert: 'Insert',\n pageup: 'PageUp',\n pagedown: 'PageDown',\n shift: 'Shift',\n})\n\nexport function keys<O extends {}> (o: O) {\n return Object.keys(o) as (keyof O)[]\n}\n\nexport function has<T extends string> (obj: object, key: T[]): obj is Record<T, unknown> {\n return key.every(k => obj.hasOwnProperty(k))\n}\n\ntype MaybePick<\n T extends object,\n U extends Extract<keyof T, string>\n> = Record<string, unknown> extends T ? Partial<Pick<T, U>> : Pick<T, U>\n\n// Array of keys\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: U[]): MaybePick<T, U> {\n const found: any = {}\n\n for (const key of paths) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n found[key] = obj[key]\n }\n }\n\n return found\n}\n\n// Array of keys\nexport function pickWithRest<\n T extends object,\n U extends Extract<keyof T, string>,\n E extends Extract<keyof T, string>\n> (obj: T, paths: U[], exclude?: E[]): [yes: MaybePick<T, Exclude<U, E>>, no: Omit<T, Exclude<U, E>>]\n// Array of keys or RegExp to test keys against\nexport function pickWithRest<\n T extends object,\n U extends Extract<keyof T, string>,\n E extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[], exclude?: E[]): [yes: Partial<T>, no: Partial<T>]\nexport function pickWithRest<\n T extends object,\n U extends Extract<keyof T, string>,\n E extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[], exclude?: E[]): [yes: Partial<T>, no: Partial<T>] {\n const found = Object.create(null)\n const rest = Object.create(null)\n\n for (const key in obj) {\n if (\n paths.some(path => path instanceof RegExp\n ? path.test(key)\n : path === key\n ) && !exclude?.some(path => path === key)\n ) {\n found[key] = obj[key]\n } else {\n rest[key] = obj[key]\n }\n }\n\n return [found, rest]\n}\n\nexport function omit<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, exclude: U[]): Omit<T, U> {\n const clone = { ...obj }\n\n exclude.forEach(prop => delete clone[prop])\n\n return clone\n}\n\nconst onRE = /^on[^a-z]/\nexport const isOn = (key: string) => onRE.test(key)\n\nconst bubblingEvents = [\n 'onAfterscriptexecute',\n 'onAnimationcancel',\n 'onAnimationend',\n 'onAnimationiteration',\n 'onAnimationstart',\n 'onAuxclick',\n 'onBeforeinput',\n 'onBeforescriptexecute',\n 'onChange',\n 'onClick',\n 'onCompositionend',\n 'onCompositionstart',\n 'onCompositionupdate',\n 'onContextmenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onFocusin',\n 'onFocusout',\n 'onFullscreenchange',\n 'onFullscreenerror',\n 'onGesturechange',\n 'onGestureend',\n 'onGesturestart',\n 'onGotpointercapture',\n 'onInput',\n 'onKeydown',\n 'onKeypress',\n 'onKeyup',\n 'onLostpointercapture',\n 'onMousedown',\n 'onMousemove',\n 'onMouseout',\n 'onMouseover',\n 'onMouseup',\n 'onMousewheel',\n 'onPaste',\n 'onPointercancel',\n 'onPointerdown',\n 'onPointerenter',\n 'onPointerleave',\n 'onPointermove',\n 'onPointerout',\n 'onPointerover',\n 'onPointerup',\n 'onReset',\n 'onSelect',\n 'onSubmit',\n 'onTouchcancel',\n 'onTouchend',\n 'onTouchmove',\n 'onTouchstart',\n 'onTransitioncancel',\n 'onTransitionend',\n 'onTransitionrun',\n 'onTransitionstart',\n 'onWheel',\n]\n\nconst compositionIgnoreKeys = [\n 'ArrowUp',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowLeft',\n 'Enter',\n 'Escape',\n 'Tab',\n ' ',\n]\n\nexport function isComposingIgnoreKey (e: KeyboardEvent): boolean {\n return e.isComposing && compositionIgnoreKeys.includes(e.key)\n}\n\n/**\n * Filter attributes that should be applied to\n * the root element of an input component. Remaining\n * attributes should be passed to the <input> element inside.\n */\nexport function filterInputAttrs (attrs: Record<string, unknown>) {\n const [events, props] = pickWithRest(attrs, [onRE])\n const inputEvents = omit(events, bubblingEvents)\n const [rootAttrs, inputAttrs] = pickWithRest(props, ['class', 'style', 'id', /^data-/])\n Object.assign(rootAttrs, events)\n Object.assign(inputAttrs, inputEvents)\n return [rootAttrs, inputAttrs]\n}\n\n/**\n * Returns the set difference of B and A, i.e. the set of elements in B but not in A\n */\nexport function arrayDiff (a: any[], b: any[]): any[] {\n const diff: any[] = []\n for (let i = 0; i < b.length; i++) {\n if (!a.includes(b[i])) diff.push(b[i])\n }\n return diff\n}\n\ntype IfAny<T, Y, N> = 0 extends (1 & T) ? Y : N;\nexport function wrapInArray<T> (\n v: T | null | undefined\n): T extends readonly any[]\n ? IfAny<T, T[], T>\n : NonNullable<T>[] {\n return v == null\n ? [] as any\n : Array.isArray(v)\n ? v as any : [v] as any\n}\n\nexport function defaultFilter (value: any, search: string | null, item: any) {\n return value != null &&\n search != null &&\n typeof value !== 'boolean' &&\n value.toString().toLocaleLowerCase().indexOf(search.toLocaleLowerCase()) !== -1\n}\n\nexport function debounce (fn: Function, delay: MaybeRef<number>) {\n let timeoutId = 0 as any\n const wrap = (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), unref(delay))\n }\n wrap.clear = () => {\n clearTimeout(timeoutId)\n }\n wrap.immediate = fn\n return wrap\n}\n\nexport function throttle<T extends (...args: any[]) => any> (fn: T, limit: number) {\n let throttling = false\n return (...args: Parameters<T>): void | ReturnType<T> => {\n if (!throttling) {\n throttling = true\n setTimeout(() => throttling = false, limit)\n return fn(...args)\n }\n }\n}\n\nexport function clamp (value: number, min = 0, max = 1) {\n return Math.max(min, Math.min(max, value))\n}\n\nexport function getDecimals (value: number) {\n const trimmedStr = value.toString().trim()\n return trimmedStr.includes('.')\n ? (trimmedStr.length - trimmedStr.indexOf('.') - 1)\n : 0\n}\n\nexport function padEnd (str: string, length: number, char = '0') {\n return str + char.repeat(Math.max(0, length - str.length))\n}\n\nexport function padStart (str: string, length: number, char = '0') {\n return char.repeat(Math.max(0, length - str.length)) + str\n}\n\nexport function chunk (str: string, size = 1) {\n const chunked: string[] = []\n let index = 0\n while (index < str.length) {\n chunked.push(str.substr(index, size))\n index += size\n }\n return chunked\n}\n\nexport function chunkArray (array: any[], size = 1) {\n return Array.from({ length: Math.ceil(array.length / size) }, (v, i) =>\n array.slice(i * size, i * size + size)\n )\n}\n\nexport function humanReadableFileSize (bytes: number, base: 1000 | 1024 = 1000): string {\n if (bytes < base) {\n return `${bytes} B`\n }\n\n const prefix = base === 1024 ? ['Ki', 'Mi', 'Gi'] : ['k', 'M', 'G']\n let unit = -1\n while (Math.abs(bytes) >= base && unit < prefix.length - 1) {\n bytes /= base\n ++unit\n }\n return `${bytes.toFixed(1)} ${prefix[unit]}B`\n}\n\nexport function mergeDeep (\n source: Record<string, any> = {},\n target: Record<string, any> = {},\n arrayFn?: (a: unknown[], b: unknown[]) => unknown[],\n) {\n const out: Record<string, any> = {}\n\n for (const key in source) {\n out[key] = source[key]\n }\n\n for (const key in target) {\n const sourceProperty = source[key]\n const targetProperty = target[key]\n\n // Only continue deep merging if\n // both properties are plain objects\n if (isPlainObject(sourceProperty) && isPlainObject(targetProperty)) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn)\n\n continue\n }\n\n if (arrayFn && Array.isArray(sourceProperty) && Array.isArray(targetProperty)) {\n out[key] = arrayFn(sourceProperty, targetProperty)\n\n continue\n }\n\n out[key] = targetProperty\n }\n\n return out\n}\n\nexport function flattenFragments (nodes: VNode[]): VNode[] {\n return nodes.map(node => {\n if (node.type === Fragment) {\n return flattenFragments(node.children as VNode[])\n } else {\n return node\n }\n }).flat()\n}\n\nexport function toKebabCase (str = '') {\n if (toKebabCase.cache.has(str)) return toKebabCase.cache.get(str)!\n const kebab = str\n .replace(/[^a-z]/gi, '-')\n .replace(/\\B([A-Z])/g, '-$1')\n .toLowerCase()\n toKebabCase.cache.set(str, kebab)\n return kebab\n}\ntoKebabCase.cache = new Map<string, string>()\n\nexport type MaybeRef<T> = T | Ref<T>\n\nexport function findChildrenWithProvide (\n key: InjectionKey<any> | symbol,\n vnode?: VNodeChild,\n): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') return []\n\n if (Array.isArray(vnode)) {\n return vnode.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (vnode.suspense) {\n return findChildrenWithProvide(key, vnode.ssContent!)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (vnode.component) {\n if (Object.getOwnPropertySymbols(vnode.component.provides).includes(key as symbol)) {\n return [vnode.component]\n } else if (vnode.component.subTree) {\n return findChildrenWithProvide(key, vnode.component.subTree).flat(1)\n }\n }\n\n return []\n}\n\nexport class CircularBuffer<T = never> {\n readonly #arr: Array<T> = []\n #pointer = 0\n\n constructor (public readonly size: number) {}\n\n get isFull () {\n return this.#arr.length === this.size\n }\n\n push (val: T) {\n this.#arr[this.#pointer] = val\n this.#pointer = (this.#pointer + 1) % this.size\n }\n\n values (): T[] {\n return this.#arr.slice(this.#pointer).concat(this.#arr.slice(0, this.#pointer))\n }\n\n clear () {\n this.#arr.length = 0\n this.#pointer = 0\n }\n}\n\nexport type UnionToIntersection<U> =\n (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never\n\nexport function getEventCoordinates (e: MouseEvent | TouchEvent) {\n if ('touches' in e) {\n return { clientX: e.touches[0].clientX, clientY: e.touches[0].clientY }\n }\n\n return { clientX: e.clientX, clientY: e.clientY }\n}\n\n// Only allow a single return type\ntype NotAUnion<T> = [T] extends [infer U] ? _NotAUnion<U, U> : never\ntype _NotAUnion<T, U> = U extends any ? [T] extends [U] ? unknown : never : never\n\ntype ToReadonlyRefs<T> = { [K in keyof T]: Readonly<ToRef<T[K]>> }\n\n/**\n * Convert a computed ref to a record of refs.\n * The getter function must always return an object with the same keys.\n */\nexport function destructComputed<T extends object> (getter: ComputedGetter<T & NotAUnion<T>>): ToReadonlyRefs<T>\nexport function destructComputed<T extends object> (getter: ComputedGetter<T>) {\n const refs = reactive({}) as T\n watchEffect(() => {\n const base = getter()\n for (const key in base) {\n refs[key] = base[key]\n }\n }, { flush: 'sync' })\n const obj = {} as ToReadonlyRefs<T>\n for (const key in refs) {\n obj[key] = toRef(() => refs[key]) as any\n }\n return obj\n}\n\n/** Array.includes but value can be any type */\nexport function includes (arr: readonly any[], val: any) {\n return arr.includes(val)\n}\n\nexport function eventName (propName: string) {\n return propName[2].toLowerCase() + propName.slice(3)\n}\n\n// TODO: this should be an array but vue's types don't accept arrays: vuejs/core#8025\nexport type EventProp<T extends any[] = any[], F = (...args: T) => void> = F\nexport const EventProp = <T extends any[] = any[]>() => [Function, Array] as PropType<EventProp<T>>\n\nexport function hasEvent (props: Record<string, any>, name: string) {\n name = 'on' + capitalize(name)\n return !!(props[name] || props[`${name}Once`] || props[`${name}Capture`] || props[`${name}OnceCapture`] || props[`${name}CaptureOnce`])\n}\n\nexport function callEvent<T extends any[]> (handler: EventProp<T> | EventProp<T>[] | undefined, ...args: T) {\n if (Array.isArray(handler)) {\n for (const h of handler) {\n h(...args)\n }\n } else if (typeof handler === 'function') {\n handler(...args)\n }\n}\n\nexport function focusableChildren (el: Element, filterByTabIndex = true) {\n const targets = ['button', '[href]', 'input:not([type=\"hidden\"])', 'select', 'textarea', '[tabindex]']\n .map(s => `${s}${filterByTabIndex ? ':not([tabindex=\"-1\"])' : ''}:not([disabled])`)\n .join(', ')\n return [...el.querySelectorAll(targets)] as HTMLElement[]\n}\n\nexport function getNextElement (elements: HTMLElement[], location?: 'next' | 'prev', condition?: (el: HTMLElement) => boolean) {\n let _el\n let idx = elements.indexOf(document.activeElement as HTMLElement)\n const inc = location === 'next' ? 1 : -1\n do {\n idx += inc\n _el = elements[idx]\n } while ((!_el || _el.offsetParent == null || !(condition?.(_el) ?? true)) && idx < elements.length && idx >= 0)\n return _el\n}\n\nexport function focusChild (el: Element, location?: 'next' | 'prev' | 'first' | 'last' | number) {\n const focusable = focusableChildren(el)\n\n if (!location) {\n if (el === document.activeElement || !el.contains(document.activeElement)) {\n focusable[0]?.focus()\n }\n } else if (location === 'first') {\n focusable[0]?.focus()\n } else if (location === 'last') {\n focusable.at(-1)?.focus()\n } else if (typeof location === 'number') {\n focusable[location]?.focus()\n } else {\n const _el = getNextElement(focusable, location)\n if (_el) _el.focus()\n else focusChild(el, location === 'next' ? 'first' : 'last')\n }\n}\n\nexport function isEmpty (val: any): boolean {\n return val === null || val === undefined || (typeof val === 'string' && val.trim() === '')\n}\n\nexport function noop () {}\n\n/** Returns null if the selector is not supported or we can't check */\nexport function matchesSelector (el: Element | undefined, selector: string): boolean | null {\n const supportsSelector = IN_BROWSER &&\n typeof CSS !== 'undefined' &&\n typeof CSS.supports !== 'undefined' &&\n CSS.supports(`selector(${selector})`)\n\n if (!supportsSelector) return null\n\n try {\n return !!el && el.matches(selector)\n } catch (err) {\n return null\n }\n}\n\nexport function ensureValidVNode (vnodes: VNodeArrayChildren): VNodeArrayChildren | null {\n return vnodes.some(child => {\n if (!isVNode(child)) return true\n if (child.type === Comment) return false\n return child.type !== Fragment ||\n ensureValidVNode(child.children as VNodeArrayChildren)\n })\n ? vnodes\n : null\n}\n\nexport function defer (timeout: number, cb: () => void) {\n if (!IN_BROWSER || timeout === 0) {\n cb()\n\n return () => {}\n }\n\n const timeoutId = window.setTimeout(cb, timeout)\n\n return () => window.clearTimeout(timeoutId)\n}\n\nexport function isClickInsideElement (event: MouseEvent, targetDiv: HTMLElement) {\n const mouseX = event.clientX\n const mouseY = event.clientY\n\n const divRect = targetDiv.getBoundingClientRect()\n const divLeft = divRect.left\n const divTop = divRect.top\n const divRight = divRect.right\n const divBottom = divRect.bottom\n\n return mouseX >= divLeft && mouseX <= divRight && mouseY >= divTop && mouseY <= divBottom\n}\n\nexport type TemplateRef = {\n (target: Element | ComponentPublicInstance | null): void\n value: HTMLElement | ComponentPublicInstance | null | undefined\n readonly el: HTMLElement | undefined\n}\nexport function templateRef () {\n const el = shallowRef<HTMLElement | ComponentPublicInstance | null>()\n const fn = (target: HTMLElement | ComponentPublicInstance | null) => {\n el.value = target\n }\n Object.defineProperty(fn, 'value', {\n enumerable: true,\n get: () => el.value,\n set: val => el.value = val,\n })\n Object.defineProperty(fn, 'el', {\n enumerable: true,\n get: () => refElement(el.value),\n })\n\n return fn as TemplateRef\n}\n\nexport function checkPrintable (e: KeyboardEvent) {\n const isPrintableChar = e.key.length === 1\n const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey\n return isPrintableChar && noModifier\n}\n\nexport type Primitive = string | number | boolean | symbol | bigint\nexport function isPrimitive (value: unknown): value is Primitive {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint'\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"helpers.js","names":["capitalize","Comment","Fragment","isVNode","reactive","shallowRef","toRef","unref","watchEffect","IN_BROWSER","getNestedValue","obj","path","fallback","last","length","undefined","i","deepEqual","a","b","Date","getTime","Object","props","keys","every","p","getObjectValueByPath","replace","split","getPropertyFromItem","item","property","value","Array","isArray","createRange","start","arguments","from","v","k","getZIndex","el","nodeType","Node","ELEMENT_NODE","index","Number","window","getComputedStyle","getPropertyValue","parentNode","convertToUnit","str","unit","num","isNaN","String","isFinite","isObject","isPlainObject","proto","getPrototypeOf","prototype","refElement","$el","TEXT_NODE","nextElementSibling","keyCodes","freeze","enter","tab","delete","esc","space","up","down","left","right","end","home","del","backspace","insert","pageup","pagedown","shift","keyValues","o","has","key","hasOwnProperty","pick","paths","found","call","pickWithRest","exclude","create","rest","some","RegExp","test","omit","clone","forEach","prop","onRE","isOn","bubblingEvents","compositionIgnoreKeys","isComposingIgnoreKey","e","isComposing","includes","filterInputAttrs","attrs","events","inputEvents","rootAttrs","inputAttrs","assign","arrayDiff","diff","push","wrapInArray","defaultFilter","search","toString","toLocaleLowerCase","indexOf","debounce","fn","delay","timeoutId","wrap","_len","args","_key","clearTimeout","setTimeout","clear","immediate","throttle","limit","throttling","clamp","min","max","Math","getDecimals","trimmedStr","trim","padEnd","char","repeat","padStart","chunk","size","chunked","substr","chunkArray","array","ceil","slice","humanReadableFileSize","bytes","base","prefix","abs","toFixed","mergeDeep","source","target","arrayFn","out","sourceProperty","targetProperty","flattenFragments","nodes","map","node","type","children","flat","toKebabCase","cache","get","kebab","toLowerCase","set","Map","findChildrenWithProvide","vnode","child","suspense","ssContent","component","getOwnPropertySymbols","provides","subTree","_arr","WeakMap","_pointer","CircularBuffer","constructor","_classPrivateFieldInitSpec","isFull","_classPrivateFieldGet","val","_classPrivateFieldSet","values","concat","getEventCoordinates","clientX","touches","clientY","destructComputed","getter","refs","flush","arr","eventName","propName","EventProp","Function","hasEvent","name","callEvent","handler","_len2","_key2","h","focusableChildren","filterByTabIndex","targets","s","join","querySelectorAll","getNextElement","elements","location","condition","_el","idx","document","activeElement","inc","offsetParent","focusChild","focusable","contains","focus","at","isEmpty","noop","matchesSelector","selector","supportsSelector","CSS","supports","matches","err","ensureValidVNode","vnodes","defer","timeout","cb","isClickInsideElement","event","targetDiv","mouseX","mouseY","divRect","getBoundingClientRect","divLeft","divTop","top","divRight","divBottom","bottom","templateRef","defineProperty","enumerable","checkPrintable","isPrintableChar","noModifier","ctrlKey","metaKey","altKey","isPrimitive"],"sources":["../../src/util/helpers.ts"],"sourcesContent":["// Utilities\nimport {\n capitalize,\n Comment,\n Fragment,\n isVNode,\n reactive,\n shallowRef,\n toRef,\n unref,\n watchEffect,\n} from 'vue'\nimport { IN_BROWSER } from '@/util/globals'\n\n// Types\nimport type {\n ComponentInternalInstance,\n ComponentPublicInstance,\n ComputedGetter,\n InjectionKey,\n PropType,\n Ref,\n ToRef,\n VNode,\n VNodeArrayChildren,\n VNodeChild,\n} from 'vue'\n\nexport function getNestedValue (obj: any, path: (string | number)[], fallback?: any): any {\n const last = path.length - 1\n\n if (last < 0) return obj === undefined ? fallback : obj\n\n for (let i = 0; i < last; i++) {\n if (obj == null) {\n return fallback\n }\n obj = obj[path[i]]\n }\n\n if (obj == null) return fallback\n\n return obj[path[last]] === undefined ? fallback : obj[path[last]]\n}\n\nexport function deepEqual (a: any, b: any): boolean {\n if (a === b) return true\n\n if (\n a instanceof Date &&\n b instanceof Date &&\n a.getTime() !== b.getTime()\n ) {\n // If the values are Date, compare them as timestamps\n return false\n }\n\n if (a !== Object(a) || b !== Object(b)) {\n // If the values aren't objects, they were already checked for equality\n return false\n }\n\n const props = Object.keys(a)\n\n if (props.length !== Object.keys(b).length) {\n // Different number of props, don't bother to check\n return false\n }\n\n return props.every(p => deepEqual(a[p], b[p]))\n}\n\nexport function getObjectValueByPath (obj: any, path?: string | null, fallback?: any): any {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (obj == null || !path || typeof path !== 'string') return fallback\n if (obj[path] !== undefined) return obj[path]\n path = path.replace(/\\[(\\w+)\\]/g, '.$1') // convert indexes to properties\n path = path.replace(/^\\./, '') // strip a leading dot\n return getNestedValue(obj, path.split('.'), fallback)\n}\n\nexport type SelectItemKey<T = Record<string, any>> =\n | boolean | null | undefined // Ignored\n | string // Lookup by key, can use dot notation for nested objects\n | readonly (string | number)[] // Nested lookup by key, each array item is a key in the next level\n | ((item: T, fallback?: any) => any)\n\nexport function getPropertyFromItem (\n item: any,\n property: SelectItemKey,\n fallback?: any\n): any {\n if (property === true) return item === undefined ? fallback : item\n\n if (property == null || typeof property === 'boolean') return fallback\n\n if (item !== Object(item)) {\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n }\n\n if (typeof property === 'string') return getObjectValueByPath(item, property, fallback)\n\n if (Array.isArray(property)) return getNestedValue(item, property, fallback)\n\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n}\n\nexport function createRange (length: number, start = 0): number[] {\n return Array.from({ length }, (v, k) => start + k)\n}\n\nexport function getZIndex (el?: Element | null): number {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0\n\n const index = Number(window.getComputedStyle(el).getPropertyValue('z-index'))\n\n if (!index) return getZIndex(el.parentNode as Element)\n return index\n}\n\nexport function convertToUnit (str: number, unit?: string): string\nexport function convertToUnit (str: string | number | null | undefined, unit?: string): string | undefined\nexport function convertToUnit (str: string | number | null | undefined, unit = 'px'): string | undefined {\n if (str == null || str === '') {\n return undefined\n }\n const num = Number(str)\n if (isNaN(num)) {\n return String(str)\n } else if (!isFinite(num)) {\n return undefined\n } else {\n return `${num}${unit}`\n }\n}\n\nexport function isObject (obj: any): obj is Record<string, any> {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj)\n}\n\nexport function isPlainObject (obj: any): obj is Record<string, any> {\n let proto\n return obj !== null && typeof obj === 'object' && (\n (proto = Object.getPrototypeOf(obj)) === Object.prototype ||\n proto === null\n )\n}\n\nexport function refElement (obj?: ComponentPublicInstance<any> | HTMLElement): HTMLElement | undefined {\n if (obj && '$el' in obj) {\n const el = obj.$el as HTMLElement\n if (el?.nodeType === Node.TEXT_NODE) {\n // Multi-root component, use the first element\n return el.nextElementSibling as HTMLElement\n }\n return el\n }\n return obj as HTMLElement\n}\n\n// KeyboardEvent.keyCode aliases\nexport const keyCodes = Object.freeze({\n enter: 13,\n tab: 9,\n delete: 46,\n esc: 27,\n space: 32,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n end: 35,\n home: 36,\n del: 46,\n backspace: 8,\n insert: 45,\n pageup: 33,\n pagedown: 34,\n shift: 16,\n})\n\nexport const keyValues: Record<string, string> = Object.freeze({\n enter: 'Enter',\n tab: 'Tab',\n delete: 'Delete',\n esc: 'Escape',\n space: 'Space',\n up: 'ArrowUp',\n down: 'ArrowDown',\n left: 'ArrowLeft',\n right: 'ArrowRight',\n end: 'End',\n home: 'Home',\n del: 'Delete',\n backspace: 'Backspace',\n insert: 'Insert',\n pageup: 'PageUp',\n pagedown: 'PageDown',\n shift: 'Shift',\n})\n\nexport function keys<O extends {}> (o: O) {\n return Object.keys(o) as (keyof O)[]\n}\n\nexport function has<T extends string> (obj: object, key: T[]): obj is Record<T, unknown> {\n return key.every(k => obj.hasOwnProperty(k))\n}\n\ntype MaybePick<\n T extends object,\n U extends Extract<keyof T, string>\n> = Record<string, unknown> extends T ? Partial<Pick<T, U>> : Pick<T, U>\n\n// Array of keys\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: U[]): MaybePick<T, U> {\n const found: any = {}\n\n for (const key of paths) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n found[key] = obj[key]\n }\n }\n\n return found\n}\n\n// Array of keys\nexport function pickWithRest<\n T extends object,\n U extends Extract<keyof T, string>,\n E extends Extract<keyof T, string>\n> (obj: T, paths: U[], exclude?: E[]): [yes: MaybePick<T, Exclude<U, E>>, no: Omit<T, Exclude<U, E>>]\n// Array of keys or RegExp to test keys against\nexport function pickWithRest<\n T extends object,\n U extends Extract<keyof T, string>,\n E extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[], exclude?: E[]): [yes: Partial<T>, no: Partial<T>]\nexport function pickWithRest<\n T extends object,\n U extends Extract<keyof T, string>,\n E extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[], exclude?: E[]): [yes: Partial<T>, no: Partial<T>] {\n const found = Object.create(null)\n const rest = Object.create(null)\n\n for (const key in obj) {\n if (\n paths.some(path => path instanceof RegExp\n ? path.test(key)\n : path === key\n ) && !exclude?.some(path => path === key)\n ) {\n found[key] = obj[key]\n } else {\n rest[key] = obj[key]\n }\n }\n\n return [found, rest]\n}\n\nexport function omit<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, exclude: U[]): Omit<T, U> {\n const clone = { ...obj }\n\n exclude.forEach(prop => delete clone[prop])\n\n return clone\n}\n\nconst onRE = /^on[^a-z]/\nexport const isOn = (key: string) => onRE.test(key)\n\nconst bubblingEvents = [\n 'onAfterscriptexecute',\n 'onAnimationcancel',\n 'onAnimationend',\n 'onAnimationiteration',\n 'onAnimationstart',\n 'onAuxclick',\n 'onBeforeinput',\n 'onBeforescriptexecute',\n 'onChange',\n 'onClick',\n 'onCompositionend',\n 'onCompositionstart',\n 'onCompositionupdate',\n 'onContextmenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onFocusin',\n 'onFocusout',\n 'onFullscreenchange',\n 'onFullscreenerror',\n 'onGesturechange',\n 'onGestureend',\n 'onGesturestart',\n 'onGotpointercapture',\n 'onInput',\n 'onKeydown',\n 'onKeypress',\n 'onKeyup',\n 'onLostpointercapture',\n 'onMousedown',\n 'onMousemove',\n 'onMouseout',\n 'onMouseover',\n 'onMouseup',\n 'onMousewheel',\n 'onPaste',\n 'onPointercancel',\n 'onPointerdown',\n 'onPointerenter',\n 'onPointerleave',\n 'onPointermove',\n 'onPointerout',\n 'onPointerover',\n 'onPointerup',\n 'onReset',\n 'onSelect',\n 'onSubmit',\n 'onTouchcancel',\n 'onTouchend',\n 'onTouchmove',\n 'onTouchstart',\n 'onTransitioncancel',\n 'onTransitionend',\n 'onTransitionrun',\n 'onTransitionstart',\n 'onWheel',\n]\n\nconst compositionIgnoreKeys = [\n 'ArrowUp',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowLeft',\n 'Enter',\n 'Escape',\n 'Tab',\n ' ',\n]\n\nexport function isComposingIgnoreKey (e: KeyboardEvent): boolean {\n return e.isComposing && compositionIgnoreKeys.includes(e.key)\n}\n\n/**\n * Filter attributes that should be applied to\n * the root element of an input component. Remaining\n * attributes should be passed to the <input> element inside.\n */\nexport function filterInputAttrs (attrs: Record<string, unknown>) {\n const [events, props] = pickWithRest(attrs, [onRE])\n const inputEvents = omit(events, bubblingEvents)\n const [rootAttrs, inputAttrs] = pickWithRest(props, ['class', 'style', 'id', /^data-/])\n Object.assign(rootAttrs, events)\n Object.assign(inputAttrs, inputEvents)\n return [rootAttrs, inputAttrs]\n}\n\n/**\n * Returns the set difference of B and A, i.e. the set of elements in B but not in A\n */\nexport function arrayDiff (a: any[], b: any[]): any[] {\n const diff: any[] = []\n for (let i = 0; i < b.length; i++) {\n if (!a.includes(b[i])) diff.push(b[i])\n }\n return diff\n}\n\ntype IfAny<T, Y, N> = 0 extends (1 & T) ? Y : N;\nexport function wrapInArray<T> (\n v: T | null | undefined\n): T extends readonly any[]\n ? IfAny<T, T[], T>\n : NonNullable<T>[] {\n return v == null\n ? [] as any\n : Array.isArray(v)\n ? v as any : [v] as any\n}\n\nexport function defaultFilter (value: any, search: string | null, item: any) {\n return value != null &&\n search != null &&\n typeof value !== 'boolean' &&\n value.toString().toLocaleLowerCase().indexOf(search.toLocaleLowerCase()) !== -1\n}\n\nexport function debounce (fn: Function, delay: MaybeRef<number>) {\n let timeoutId = 0 as any\n const wrap = (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), unref(delay))\n }\n wrap.clear = () => {\n clearTimeout(timeoutId)\n }\n wrap.immediate = fn\n return wrap\n}\n\nexport function throttle<T extends (...args: any[]) => any> (fn: T, limit: number) {\n let throttling = false\n return (...args: Parameters<T>): void | ReturnType<T> => {\n if (!throttling) {\n throttling = true\n setTimeout(() => throttling = false, limit)\n return fn(...args)\n }\n }\n}\n\nexport function clamp (value: number, min = 0, max = 1) {\n return Math.max(min, Math.min(max, value))\n}\n\nexport function getDecimals (value: number) {\n const trimmedStr = value.toString().trim()\n return trimmedStr.includes('.')\n ? (trimmedStr.length - trimmedStr.indexOf('.') - 1)\n : 0\n}\n\nexport function padEnd (str: string, length: number, char = '0') {\n return str + char.repeat(Math.max(0, length - str.length))\n}\n\nexport function padStart (str: string, length: number, char = '0') {\n return char.repeat(Math.max(0, length - str.length)) + str\n}\n\nexport function chunk (str: string, size = 1) {\n const chunked: string[] = []\n let index = 0\n while (index < str.length) {\n chunked.push(str.substr(index, size))\n index += size\n }\n return chunked\n}\n\nexport function chunkArray (array: any[], size = 1) {\n return Array.from({ length: Math.ceil(array.length / size) }, (v, i) =>\n array.slice(i * size, i * size + size)\n )\n}\n\nexport function humanReadableFileSize (bytes: number, base: 1000 | 1024 = 1000): string {\n if (bytes < base) {\n return `${bytes} B`\n }\n\n const prefix = base === 1024 ? ['Ki', 'Mi', 'Gi'] : ['k', 'M', 'G']\n let unit = -1\n while (Math.abs(bytes) >= base && unit < prefix.length - 1) {\n bytes /= base\n ++unit\n }\n return `${bytes.toFixed(1)} ${prefix[unit]}B`\n}\n\nexport function mergeDeep (\n source: Record<string, any> = {},\n target: Record<string, any> = {},\n arrayFn?: (a: unknown[], b: unknown[]) => unknown[],\n) {\n const out: Record<string, any> = {}\n\n for (const key in source) {\n out[key] = source[key]\n }\n\n for (const key in target) {\n const sourceProperty = source[key]\n const targetProperty = target[key]\n\n // Only continue deep merging if\n // both properties are plain objects\n if (isPlainObject(sourceProperty) && isPlainObject(targetProperty)) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn)\n\n continue\n }\n\n if (arrayFn && Array.isArray(sourceProperty) && Array.isArray(targetProperty)) {\n out[key] = arrayFn(sourceProperty, targetProperty)\n\n continue\n }\n\n out[key] = targetProperty\n }\n\n return out\n}\n\nexport function flattenFragments (nodes: VNode[]): VNode[] {\n return nodes.map(node => {\n if (node.type === Fragment) {\n return flattenFragments(node.children as VNode[])\n } else {\n return node\n }\n }).flat()\n}\n\nexport function toKebabCase (str = '') {\n if (toKebabCase.cache.has(str)) return toKebabCase.cache.get(str)!\n const kebab = str\n .replace(/[^a-z]/gi, '-')\n .replace(/\\B([A-Z])/g, '-$1')\n .toLowerCase()\n toKebabCase.cache.set(str, kebab)\n return kebab\n}\ntoKebabCase.cache = new Map<string, string>()\n\nexport type MaybeRef<T> = T | Ref<T>\n\nexport function findChildrenWithProvide (\n key: InjectionKey<any> | symbol,\n vnode?: VNodeChild,\n): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') return []\n\n if (Array.isArray(vnode)) {\n return vnode.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (vnode.suspense) {\n return findChildrenWithProvide(key, vnode.ssContent!)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (vnode.component) {\n if (Object.getOwnPropertySymbols(vnode.component.provides).includes(key as symbol)) {\n return [vnode.component]\n } else if (vnode.component.subTree) {\n return findChildrenWithProvide(key, vnode.component.subTree).flat(1)\n }\n }\n\n return []\n}\n\nexport class CircularBuffer<T = never> {\n readonly #arr: Array<T> = []\n #pointer = 0\n\n constructor (public readonly size: number) {}\n\n get isFull () {\n return this.#arr.length === this.size\n }\n\n push (val: T) {\n this.#arr[this.#pointer] = val\n this.#pointer = (this.#pointer + 1) % this.size\n }\n\n values (): T[] {\n return this.#arr.slice(this.#pointer).concat(this.#arr.slice(0, this.#pointer))\n }\n\n clear () {\n this.#arr.length = 0\n this.#pointer = 0\n }\n}\n\nexport type UnionToIntersection<U> =\n (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never\n\nexport function getEventCoordinates (e: MouseEvent | TouchEvent) {\n if ('touches' in e) {\n return { clientX: e.touches[0].clientX, clientY: e.touches[0].clientY }\n }\n\n return { clientX: e.clientX, clientY: e.clientY }\n}\n\n// Only allow a single return type\ntype NotAUnion<T> = [T] extends [infer U] ? _NotAUnion<U, U> : never\ntype _NotAUnion<T, U> = U extends any ? [T] extends [U] ? unknown : never : never\n\ntype ToReadonlyRefs<T> = { [K in keyof T]: Readonly<ToRef<T[K]>> }\n\n/**\n * Convert a computed ref to a record of refs.\n * The getter function must always return an object with the same keys.\n */\nexport function destructComputed<T extends object> (getter: ComputedGetter<T & NotAUnion<T>>): ToReadonlyRefs<T>\nexport function destructComputed<T extends object> (getter: ComputedGetter<T>) {\n const refs = reactive({}) as T\n watchEffect(() => {\n const base = getter()\n for (const key in base) {\n refs[key] = base[key]\n }\n }, { flush: 'sync' })\n const obj = {} as ToReadonlyRefs<T>\n for (const key in refs) {\n obj[key] = toRef(() => refs[key]) as any\n }\n return obj\n}\n\n/** Array.includes but value can be any type */\nexport function includes (arr: readonly any[], val: any) {\n return arr.includes(val)\n}\n\nexport function eventName (propName: string) {\n return propName[2].toLowerCase() + propName.slice(3)\n}\n\n// TODO: this should be an array but vue's types don't accept arrays: vuejs/core#8025\nexport type EventProp<T extends any[] = any[], F = (...args: T) => void> = F\nexport const EventProp = <T extends any[] = any[]>() => [Function, Array] as PropType<EventProp<T>>\n\nexport function hasEvent (props: Record<string, any>, name: string) {\n name = 'on' + capitalize(name)\n return !!(props[name] || props[`${name}Once`] || props[`${name}Capture`] || props[`${name}OnceCapture`] || props[`${name}CaptureOnce`])\n}\n\nexport function callEvent<T extends any[]> (handler: EventProp<T> | EventProp<T>[] | undefined, ...args: T) {\n if (Array.isArray(handler)) {\n for (const h of handler) {\n h(...args)\n }\n } else if (typeof handler === 'function') {\n handler(...args)\n }\n}\n\nexport function focusableChildren (el: Element, filterByTabIndex = true) {\n const targets = ['button', '[href]', 'input:not([type=\"hidden\"])', 'select', 'textarea', '[tabindex]']\n .map(s => `${s}${filterByTabIndex ? ':not([tabindex=\"-1\"])' : ''}:not([disabled])`)\n .join(', ')\n return [...el.querySelectorAll(targets)] as HTMLElement[]\n}\n\nexport function getNextElement (elements: HTMLElement[], location?: 'next' | 'prev', condition?: (el: HTMLElement) => boolean) {\n let _el\n let idx = elements.indexOf(document.activeElement as HTMLElement)\n const inc = location === 'next' ? 1 : -1\n do {\n idx += inc\n _el = elements[idx]\n } while ((!_el || _el.offsetParent == null || !(condition?.(_el) ?? true)) && idx < elements.length && idx >= 0)\n return _el\n}\n\nexport function focusChild (el: Element, location?: 'next' | 'prev' | 'first' | 'last' | number) {\n const focusable = focusableChildren(el)\n\n if (location == null) {\n if (el === document.activeElement || !el.contains(document.activeElement)) {\n focusable[0]?.focus()\n }\n } else if (location === 'first') {\n focusable[0]?.focus()\n } else if (location === 'last') {\n focusable.at(-1)?.focus()\n } else if (typeof location === 'number') {\n focusable[location]?.focus()\n } else {\n const _el = getNextElement(focusable, location)\n if (_el) _el.focus()\n else focusChild(el, location === 'next' ? 'first' : 'last')\n }\n}\n\nexport function isEmpty (val: any): boolean {\n return val === null || val === undefined || (typeof val === 'string' && val.trim() === '')\n}\n\nexport function noop () {}\n\n/** Returns null if the selector is not supported or we can't check */\nexport function matchesSelector (el: Element | undefined, selector: string): boolean | null {\n const supportsSelector = IN_BROWSER &&\n typeof CSS !== 'undefined' &&\n typeof CSS.supports !== 'undefined' &&\n CSS.supports(`selector(${selector})`)\n\n if (!supportsSelector) return null\n\n try {\n return !!el && el.matches(selector)\n } catch (err) {\n return null\n }\n}\n\nexport function ensureValidVNode (vnodes: VNodeArrayChildren): VNodeArrayChildren | null {\n return vnodes.some(child => {\n if (!isVNode(child)) return true\n if (child.type === Comment) return false\n return child.type !== Fragment ||\n ensureValidVNode(child.children as VNodeArrayChildren)\n })\n ? vnodes\n : null\n}\n\nexport function defer (timeout: number, cb: () => void) {\n if (!IN_BROWSER || timeout === 0) {\n cb()\n\n return () => {}\n }\n\n const timeoutId = window.setTimeout(cb, timeout)\n\n return () => window.clearTimeout(timeoutId)\n}\n\nexport function isClickInsideElement (event: MouseEvent, targetDiv: HTMLElement) {\n const mouseX = event.clientX\n const mouseY = event.clientY\n\n const divRect = targetDiv.getBoundingClientRect()\n const divLeft = divRect.left\n const divTop = divRect.top\n const divRight = divRect.right\n const divBottom = divRect.bottom\n\n return mouseX >= divLeft && mouseX <= divRight && mouseY >= divTop && mouseY <= divBottom\n}\n\nexport type TemplateRef = {\n (target: Element | ComponentPublicInstance | null): void\n value: HTMLElement | ComponentPublicInstance | null | undefined\n readonly el: HTMLElement | undefined\n}\nexport function templateRef () {\n const el = shallowRef<HTMLElement | ComponentPublicInstance | null>()\n const fn = (target: HTMLElement | ComponentPublicInstance | null) => {\n el.value = target\n }\n Object.defineProperty(fn, 'value', {\n enumerable: true,\n get: () => el.value,\n set: val => el.value = val,\n })\n Object.defineProperty(fn, 'el', {\n enumerable: true,\n get: () => refElement(el.value),\n })\n\n return fn as TemplateRef\n}\n\nexport function checkPrintable (e: KeyboardEvent) {\n const isPrintableChar = e.key.length === 1\n const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey\n return isPrintableChar && noModifier\n}\n\nexport type Primitive = string | number | boolean | symbol | bigint\nexport function isPrimitive (value: unknown): value is Primitive {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint'\n}\n"],"mappings":"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","ignoreList":[]}
|