@vuetify/nightly 3.7.6-dev.2024-12-18 → 3.7.6-master.2024-12-26
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/dist/json/attributes.json +3084 -3092
- package/dist/json/importMap-labs.json +12 -12
- package/dist/json/importMap.json +170 -170
- package/dist/json/tags.json +0 -2
- package/dist/json/web-types.json +5816 -5834
- package/dist/vuetify-labs.css +3582 -3582
- package/dist/vuetify-labs.d.ts +14357 -3345
- package/dist/vuetify-labs.esm.js +47 -45
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +46 -44
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +4113 -4113
- package/dist/vuetify.d.ts +11917 -2743
- package/dist/vuetify.esm.js +47 -45
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +46 -44
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +883 -878
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.mjs +1 -1
- package/lib/components/VAlert/index.d.mts +86 -8
- package/lib/components/VApp/index.d.mts +20 -4
- package/lib/components/VAppBar/VAppBar.mjs +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -1
- package/lib/components/VAppBar/VAppBarTitle.mjs +1 -1
- package/lib/components/VAppBar/index.d.mts +154 -18
- package/lib/components/VAutocomplete/VAutocomplete.mjs +1 -1
- package/lib/components/VAutocomplete/index.d.mts +1380 -221
- package/lib/components/VAvatar/index.d.mts +31 -4
- package/lib/components/VBadge/VBadge.mjs +1 -1
- package/lib/components/VBadge/index.d.mts +41 -4
- package/lib/components/VBanner/VBanner.mjs +1 -1
- package/lib/components/VBanner/index.d.mts +88 -12
- package/lib/components/VBottomNavigation/index.d.mts +32 -4
- package/lib/components/VBottomSheet/VBottomSheet.mjs +1 -1
- package/lib/components/VBottomSheet/index.d.mts +88 -4
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +1 -1
- package/lib/components/VBreadcrumbs/index.d.mts +65 -12
- package/lib/components/VBtn/VBtn.mjs +1 -1
- package/lib/components/VBtn/index.d.mts +79 -11
- package/lib/components/VBtnGroup/VBtnGroup.mjs +1 -1
- package/lib/components/VBtnGroup/index.d.mts +28 -4
- package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -1
- package/lib/components/VBtnToggle/index.d.mts +33 -13
- package/lib/components/VCard/VCard.mjs +1 -1
- package/lib/components/VCard/VCardItem.mjs +1 -1
- package/lib/components/VCard/VCardSubtitle.mjs +1 -1
- package/lib/components/VCard/VCardText.mjs +1 -1
- package/lib/components/VCard/index.d.mts +190 -24
- package/lib/components/VCarousel/VCarousel.mjs +1 -1
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs +1 -1
- package/lib/components/VCarousel/index.d.mts +95 -17
- package/lib/components/VCheckbox/VCheckbox.mjs +4 -4
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +1 -1
- package/lib/components/VCheckbox/index.d.mts +90 -8
- package/lib/components/VChip/VChip.mjs +9 -16
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.mts +105 -9
- package/lib/components/VChipGroup/VChipGroup.mjs +1 -3
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.mts +43 -24
- package/lib/components/VCode/index.d.mts +18 -4
- package/lib/components/VColorPicker/VColorPicker.mjs +1 -1
- package/lib/components/VColorPicker/index.d.mts +68 -4
- package/lib/components/VCombobox/VCombobox.mjs +1 -1
- package/lib/components/VCombobox/index.d.mts +1380 -221
- package/lib/components/VConfirmEdit/VConfirmEdit.mjs +1 -1
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.mjs +1 -1
- package/lib/components/VConfirmEdit/index.d.mts +13 -6
- package/lib/components/VCounter/VCounter.mjs +1 -1
- package/lib/components/VCounter/index.d.mts +31 -9
- package/lib/components/VDataIterator/index.d.mts +56 -12
- package/lib/components/VDataTable/VDataTable.mjs +1 -1
- package/lib/components/VDataTable/VDataTableFooter.mjs +1 -1
- package/lib/components/VDataTable/VDataTableGroupHeaderRow.mjs +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.mjs +1 -1
- package/lib/components/VDataTable/VDataTableRow.mjs +1 -1
- package/lib/components/VDataTable/VDataTableRows.mjs +1 -1
- package/lib/components/VDataTable/VDataTableServer.mjs +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.mjs +1 -1
- package/lib/components/VDataTable/index.d.mts +388 -36
- package/lib/components/VDatePicker/VDatePicker.mjs +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.mjs +1 -1
- package/lib/components/VDatePicker/VDatePickerMonths.mjs +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.mjs +1 -1
- package/lib/components/VDatePicker/index.d.mts +276 -24
- package/lib/components/VDefaultsProvider/index.d.mts +20 -4
- package/lib/components/VDialog/VDialog.mjs +1 -1
- package/lib/components/VDialog/__test__/VDialog.spec.cy.mjs +1 -1
- package/lib/components/VDialog/index.d.mts +389 -143
- package/lib/components/VDivider/index.d.mts +24 -4
- package/lib/components/VEmptyState/VEmptyState.mjs +1 -1
- package/lib/components/VEmptyState/index.d.mts +66 -4
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +1 -1
- package/lib/components/VExpansionPanel/index.d.mts +159 -23
- package/lib/components/VFab/VFab.mjs +1 -1
- package/lib/components/VFab/index.d.mts +84 -15
- package/lib/components/VField/VField.mjs +4 -4
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VFieldLabel.mjs +1 -1
- package/lib/components/VField/index.d.mts +59 -11
- package/lib/components/VFileInput/VFileInput.mjs +1 -1
- package/lib/components/VFileInput/index.d.mts +256 -71
- package/lib/components/VFooter/VFooter.mjs +1 -1
- package/lib/components/VFooter/index.d.mts +29 -4
- package/lib/components/VForm/index.d.mts +175 -267
- package/lib/components/VGrid/VContainer.mjs +1 -1
- package/lib/components/VGrid/index.d.mts +118 -16
- package/lib/components/VHover/index.d.mts +33 -4
- package/lib/components/VIcon/index.d.mts +75 -17
- package/lib/components/VImg/VImg.mjs +1 -1
- package/lib/components/VImg/index.d.mts +74 -19
- package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
- package/lib/components/VInfiniteScroll/index.d.mts +46 -4
- package/lib/components/VInput/VInput.mjs +4 -4
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.mts +37 -4
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.mts +74 -17
- package/lib/components/VKbd/index.d.mts +18 -4
- package/lib/components/VLabel/index.d.mts +20 -4
- package/lib/components/VLayout/index.d.mts +48 -8
- package/lib/components/VLazy/VLazy.mjs +1 -1
- package/lib/components/VLazy/index.d.mts +31 -4
- package/lib/components/VList/VList.mjs +1 -1
- package/lib/components/VList/VListChildren.mjs +1 -1
- package/lib/components/VList/VListGroup.mjs +1 -1
- package/lib/components/VList/VListItem.mjs +1 -1
- package/lib/components/VList/VListItemAction.mjs +1 -1
- package/lib/components/VList/VListItemMedia.mjs +1 -1
- package/lib/components/VList/VListItemSubtitle.mjs +1 -1
- package/lib/components/VList/index.d.mts +291 -48
- package/lib/components/VLocaleProvider/index.d.mts +21 -4
- package/lib/components/VMain/index.d.mts +25 -4
- package/lib/components/VMenu/VMenu.mjs +4 -4
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.mts +397 -155
- package/lib/components/VMessages/index.d.mts +27 -4
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +1 -1
- package/lib/components/VNavigationDrawer/index.d.mts +62 -7
- package/lib/components/VOtpInput/VOtpInput.mjs +1 -1
- package/lib/components/VOtpInput/index.d.mts +52 -7
- package/lib/components/VOverlay/VOverlay.mjs +1 -1
- package/lib/components/VOverlay/index.d.mts +101 -19
- package/lib/components/VPagination/VPagination.mjs +1 -1
- package/lib/components/VPagination/index.d.mts +64 -4
- package/lib/components/VParallax/VParallax.mjs +1 -1
- package/lib/components/VParallax/index.d.mts +27 -4
- package/lib/components/VProgressCircular/index.d.mts +34 -4
- package/lib/components/VProgressLinear/index.d.mts +54 -4
- package/lib/components/VRadio/VRadio.mjs +1 -1
- package/lib/components/VRadio/index.d.mts +68 -4
- package/lib/components/VRadioGroup/VRadioGroup.mjs +4 -4
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.mts +48 -4
- package/lib/components/VRangeSlider/VRangeSlider.mjs +1 -1
- package/lib/components/VRangeSlider/index.d.mts +107 -4
- package/lib/components/VRating/VRating.mjs +4 -5
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/index.d.mts +42 -4
- package/lib/components/VResponsive/index.d.mts +29 -4
- package/lib/components/VSelect/VSelect.mjs +1 -1
- package/lib/components/VSelect/index.d.mts +1372 -220
- package/lib/components/VSelectionControl/VSelectionControl.mjs +4 -4
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.mts +37 -10
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/index.d.mts +26 -4
- package/lib/components/VSheet/VSheet.mjs +1 -1
- package/lib/components/VSheet/index.d.mts +32 -4
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +1 -1
- package/lib/components/VSkeletonLoader/index.d.mts +28 -4
- package/lib/components/VSlideGroup/index.d.mts +77 -21
- package/lib/components/VSlider/VSlider.mjs +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs +1 -1
- package/lib/components/VSlider/index.d.mts +106 -4
- package/lib/components/VSnackbar/VSnackbar.mjs +1 -1
- package/lib/components/VSnackbar/index.d.mts +398 -152
- package/lib/components/VSparkline/VBarline.mjs +4 -3
- package/lib/components/VSparkline/VBarline.mjs.map +1 -1
- package/lib/components/VSparkline/VSparkline.mjs +1 -1
- package/lib/components/VSparkline/VTrendline.mjs +4 -3
- package/lib/components/VSparkline/VTrendline.mjs.map +1 -1
- package/lib/components/VSparkline/index.d.mts +49 -4
- package/lib/components/VSpeedDial/VSpeedDial.mjs +1 -1
- package/lib/components/VSpeedDial/index.d.mts +85 -4
- package/lib/components/VStepper/VStepper.mjs +1 -1
- package/lib/components/VStepper/VStepperItem.mjs +1 -1
- package/lib/components/VStepper/VStepperWindow.mjs +1 -1
- package/lib/components/VStepper/VStepperWindowItem.mjs +1 -1
- package/lib/components/VStepper/index.d.mts +250 -24
- package/lib/components/VSwitch/VSwitch.mjs +4 -4
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.mts +59 -4
- package/lib/components/VSystemBar/VSystemBar.mjs +1 -1
- package/lib/components/VSystemBar/index.d.mts +28 -4
- package/lib/components/VTable/index.d.mts +33 -4
- package/lib/components/VTabs/VTab.mjs +1 -1
- package/lib/components/VTabs/VTabs.mjs +1 -1
- package/lib/components/VTabs/VTabsWindow.mjs +1 -1
- package/lib/components/VTabs/VTabsWindowItem.mjs +1 -1
- package/lib/components/VTabs/index.d.mts +401 -105
- package/lib/components/VTextField/VTextField.mjs +1 -1
- package/lib/components/VTextField/index.d.mts +374 -152
- package/lib/components/VTextarea/VTextarea.mjs +1 -1
- package/lib/components/VTextarea/index.d.mts +244 -71
- package/lib/components/VThemeProvider/index.d.mts +20 -4
- package/lib/components/VTimeline/VTimeline.mjs +1 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +1 -1
- package/lib/components/VTimeline/index.d.mts +75 -8
- package/lib/components/VToolbar/VToolbar.mjs +1 -1
- package/lib/components/VToolbar/index.d.mts +90 -12
- package/lib/components/VTooltip/VTooltip.mjs +4 -4
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.mts +386 -147
- package/lib/components/VValidation/index.d.mts +24 -10
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +1 -1
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +15 -4
- package/lib/components/VWindow/VWindow.mjs +1 -1
- package/lib/components/VWindow/VWindowItem.mjs +1 -1
- package/lib/components/VWindow/index.d.mts +54 -15
- package/lib/components/index.d.mts +11736 -2562
- package/lib/components/transitions/dialog-transition.mjs +2 -1
- package/lib/components/transitions/dialog-transition.mjs.map +1 -1
- package/lib/components/transitions/index.d.mts +309 -64
- package/lib/composables/group.mjs +3 -3
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/icons.mjs +1 -1
- package/lib/composables/layout.mjs +3 -3
- package/lib/composables/layout.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +2 -2
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/validation.mjs +3 -3
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/composables/variant.mjs +1 -1
- package/lib/composables/virtual.mjs +1 -1
- package/lib/composables/virtual.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +3 -2
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.mts +62 -62
- package/lib/labs/VCalendar/VCalendar.mjs +1 -1
- package/lib/labs/VCalendar/VCalendarDay.mjs +1 -1
- package/lib/labs/VCalendar/index.d.mts +211 -24
- package/lib/labs/VDateInput/VDateInput.mjs +1 -1
- package/lib/labs/VDateInput/index.d.mts +115 -4
- package/lib/labs/VFileUpload/VFileUpload.mjs +1 -1
- package/lib/labs/VFileUpload/VFileUploadItem.mjs +1 -1
- package/lib/labs/VFileUpload/index.d.mts +195 -8
- package/lib/labs/VNumberInput/VNumberInput.mjs +1 -1
- package/lib/labs/VNumberInput/index.d.mts +1267 -564
- package/lib/labs/VPicker/VPicker.mjs +1 -1
- package/lib/labs/VPicker/index.d.mts +63 -8
- package/lib/labs/VPullToRefresh/index.d.mts +35 -4
- package/lib/labs/VSnackbarQueue/VSnackbarQueue.mjs +1 -1
- package/lib/labs/VSnackbarQueue/index.d.mts +453 -156
- package/lib/labs/VStepperVertical/VStepperVertical.mjs +1 -1
- package/lib/labs/VStepperVertical/VStepperVerticalActions.mjs +1 -1
- package/lib/labs/VStepperVertical/VStepperVerticalItem.mjs +1 -1
- package/lib/labs/VStepperVertical/index.d.mts +227 -12
- package/lib/labs/VTimePicker/VTimePicker.mjs +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.mjs +1 -1
- package/lib/labs/VTimePicker/index.d.mts +122 -12
- package/lib/labs/VTreeview/VTreeview.mjs +1 -1
- package/lib/labs/VTreeview/VTreeviewChildren.mjs +1 -1
- package/lib/labs/VTreeview/VTreeviewGroup.mjs +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.mjs +1 -1
- package/lib/labs/VTreeview/index.d.mts +205 -18
- package/lib/labs/components.d.mts +3056 -972
- package/lib/util/getCurrentInstance.mjs +15 -1
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/package.json +4 -5
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"virtual.mjs","names":["useDisplay","useResizeObserver","computed","nextTick","onScopeDispose","ref","shallowRef","watch","watchEffect","clamp","debounce","IN_BROWSER","isObject","propsFactory","UP","DOWN","BUFFER_PX","makeVirtualProps","itemHeight","type","Number","String","default","height","useVirtual","props","items","display","value","parseFloat","first","last","Math","ceil","parseInt","paddingTop","paddingBottom","containerRef","markerRef","markerOffset","resizeRef","contentRect","viewportHeight","document","documentElement","hasInitialRender","sizes","Array","from","length","offsets","updateTime","targetScrollIndex","getSize","index","updateOffsets","start","performance","now","i","max","unwatch","v","offsetTop","immediate","calculateVisibleItems","window","requestAnimationFrame","scrollToIndex","clear","handleItemResize","prevHeight","prevMinHeight","min","calculateOffset","calculateIndex","scrollTop","binaryClosest","lastScrollTop","scrollVelocity","lastScrollTime","val","oldVal","scrollTimeout","handleScroll","scrollTime","scrollDeltaT","sign","clearTimeout","setTimeout","handleScrollend","raf","cancelAnimationFrame","_calculateVisibleItems","direction","startPx","endPx","end","topOverflow","bottomOverflow","bufferOverflow","offset","computedItems","slice","map","item","raw","key","deep","arr","high","low","mid","target"],"sources":["../../src/composables/virtual.ts"],"sourcesContent":["// Composables\nimport { useDisplay } from '@/composables/display'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { clamp, debounce, IN_BROWSER, isObject, propsFactory } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\nconst UP = -1\nconst DOWN = 1\n\n/** Determines how large each batch of items should be */\nconst BUFFER_PX = 100\n\ntype VirtualProps = {\n itemHeight?: number | string\n height?: number | string\n}\n\nexport const makeVirtualProps = propsFactory({\n itemHeight: {\n type: [Number, String],\n default: null,\n },\n height: [Number, String],\n}, 'virtual')\n\nexport function useVirtual <T> (props: VirtualProps, items: Ref<readonly T[]>) {\n const display = useDisplay()\n\n const itemHeight = shallowRef(0)\n watchEffect(() => {\n itemHeight.value = parseFloat(props.itemHeight || 0)\n })\n\n const first = shallowRef(0)\n const last = shallowRef(Math.ceil(\n // Assume 16px items filling the entire screen height if\n // not provided. This is probably incorrect but it minimises\n // the chance of ending up with empty space at the bottom.\n // The default value is set here to avoid poisoning getSize()\n (parseInt(props.height!) || display.height.value) / (itemHeight.value || 16)\n ) || 1)\n const paddingTop = shallowRef(0)\n const paddingBottom = shallowRef(0)\n\n /** The scrollable element */\n const containerRef = ref<HTMLElement>()\n /** An element marking the top of the scrollable area,\n * used to add an offset if there's padding or other elements above the virtual list */\n const markerRef = ref<HTMLElement>()\n /** markerRef's offsetTop, lazily evaluated */\n let markerOffset = 0\n\n const { resizeRef, contentRect } = useResizeObserver()\n watchEffect(() => {\n resizeRef.value = containerRef.value\n })\n const viewportHeight = computed(() => {\n return containerRef.value === document.documentElement\n ? display.height.value\n : contentRect.value?.height || parseInt(props.height!) || 0\n })\n /** All static elements have been rendered and we have an assumed item height */\n const hasInitialRender = computed(() => {\n return !!(containerRef.value && markerRef.value && viewportHeight.value && itemHeight.value)\n })\n\n let sizes = Array.from<number | null>({ length: items.value.length })\n let offsets = Array.from<number>({ length: items.value.length })\n const updateTime = shallowRef(0)\n let targetScrollIndex = -1\n\n function getSize (index: number) {\n return sizes[index] || itemHeight.value\n }\n\n const updateOffsets = debounce(() => {\n const start = performance.now()\n offsets[0] = 0\n const length = items.value.length\n for (let i = 1; i <= length - 1; i++) {\n offsets[i] = (offsets[i - 1] || 0) + getSize(i - 1)\n }\n updateTime.value = Math.max(updateTime.value, performance.now() - start)\n }, updateTime)\n\n const unwatch = watch(hasInitialRender, v => {\n if (!v) return\n // First render is complete, update offsets and visible\n // items in case our assumed item height was incorrect\n\n unwatch()\n markerOffset = markerRef.value!.offsetTop\n updateOffsets.immediate()\n calculateVisibleItems()\n\n if (!~targetScrollIndex) return\n\n nextTick(() => {\n IN_BROWSER && window.requestAnimationFrame(() => {\n scrollToIndex(targetScrollIndex)\n targetScrollIndex = -1\n })\n })\n })\n\n onScopeDispose(() => {\n updateOffsets.clear()\n })\n\n function handleItemResize (index: number, height: number) {\n const prevHeight = sizes[index]\n const prevMinHeight = itemHeight.value\n\n itemHeight.value = prevMinHeight ? Math.min(itemHeight.value, height) : height\n\n if (prevHeight !== height || prevMinHeight !== itemHeight.value) {\n sizes[index] = height\n updateOffsets()\n }\n }\n\n function calculateOffset (index: number) {\n index = clamp(index, 0, items.value.length - 1)\n return offsets[index] || 0\n }\n\n function calculateIndex (scrollTop: number) {\n return binaryClosest(offsets, scrollTop)\n }\n\n let lastScrollTop = 0\n let scrollVelocity = 0\n let lastScrollTime = 0\n\n watch(viewportHeight, (val, oldVal) => {\n if (oldVal) {\n calculateVisibleItems()\n if (val < oldVal) {\n requestAnimationFrame(() => {\n scrollVelocity = 0\n calculateVisibleItems()\n })\n }\n }\n })\n\n let scrollTimeout = -1\n function handleScroll () {\n if (!containerRef.value || !markerRef.value) return\n\n const scrollTop = containerRef.value.scrollTop\n const scrollTime = performance.now()\n const scrollDeltaT = scrollTime - lastScrollTime\n\n if (scrollDeltaT > 500) {\n scrollVelocity = Math.sign(scrollTop - lastScrollTop)\n\n // Not super important, only update at the\n // start of a scroll sequence to avoid reflows\n markerOffset = markerRef.value.offsetTop\n } else {\n scrollVelocity = scrollTop - lastScrollTop\n }\n\n lastScrollTop = scrollTop\n lastScrollTime = scrollTime\n\n window.clearTimeout(scrollTimeout)\n scrollTimeout = window.setTimeout(handleScrollend, 500)\n\n calculateVisibleItems()\n }\n function handleScrollend () {\n if (!containerRef.value || !markerRef.value) return\n\n scrollVelocity = 0\n lastScrollTime = 0\n\n window.clearTimeout(scrollTimeout)\n calculateVisibleItems()\n }\n\n let raf = -1\n function calculateVisibleItems () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(_calculateVisibleItems)\n }\n function _calculateVisibleItems () {\n if (!containerRef.value || !viewportHeight.value) return\n const scrollTop = lastScrollTop - markerOffset\n const direction = Math.sign(scrollVelocity)\n\n const startPx = Math.max(0, scrollTop - BUFFER_PX)\n const start = clamp(calculateIndex(startPx), 0, items.value.length)\n\n const endPx = scrollTop + viewportHeight.value + BUFFER_PX\n const end = clamp(calculateIndex(endPx) + 1, start + 1, items.value.length)\n\n if (\n // Only update the side we're scrolling towards,\n // the other side will be updated incidentally\n (direction !== UP || start < first.value) &&\n (direction !== DOWN || end > last.value)\n ) {\n const topOverflow = calculateOffset(first.value) - calculateOffset(start)\n const bottomOverflow = calculateOffset(end) - calculateOffset(last.value)\n const bufferOverflow = Math.max(topOverflow, bottomOverflow)\n\n if (bufferOverflow > BUFFER_PX) {\n first.value = start\n last.value = end\n } else {\n // Only update the side that's reached its limit if there's still buffer left\n if (start <= 0) first.value = start\n if (end >= items.value.length) last.value = end\n }\n }\n\n paddingTop.value = calculateOffset(first.value)\n paddingBottom.value = calculateOffset(items.value.length) - calculateOffset(last.value)\n }\n\n function scrollToIndex (index: number) {\n const offset = calculateOffset(index)\n if (!containerRef.value || (index && !offset)) {\n targetScrollIndex = index\n } else {\n containerRef.value.scrollTop = offset\n }\n }\n\n const computedItems = computed(() => {\n return items.value.slice(first.value, last.value).map((item, index) => ({\n raw: item,\n index: index + first.value,\n key: (isObject(item) && 'value' in item) ? item.value : index + first.value,\n }))\n })\n\n watch(items, () => {\n sizes = Array.from({ length: items.value.length })\n offsets = Array.from({ length: items.value.length })\n updateOffsets.immediate()\n calculateVisibleItems()\n }, { deep: 1 })\n\n return {\n calculateVisibleItems,\n containerRef,\n markerRef,\n computedItems,\n paddingTop,\n paddingBottom,\n scrollToIndex,\n handleScroll,\n handleScrollend,\n handleItemResize,\n }\n}\n\n// https://gist.github.com/robertleeplummerjr/1cc657191d34ecd0a324\nfunction binaryClosest (arr: ArrayLike<number>, val: number) {\n let high = arr.length - 1\n let low = 0\n let mid = 0\n let item = null\n let target = -1\n\n if (arr[high]! < val) {\n return high\n }\n\n while (low <= high) {\n mid = (low + high) >> 1\n item = arr[mid]!\n\n if (item > val) {\n high = mid - 1\n } else if (item < val) {\n target = mid\n low = mid + 1\n } else if (item === val) {\n return mid\n } else {\n return low\n }\n }\n\n return target\n}\n"],"mappings":"AAAA;AAAA,SACSA,UAAU;AAAA,SACVC,iBAAiB,gCAE1B;AACA,SAASC,QAAQ,EAAEC,QAAQ,EAAEC,cAAc,EAAEC,GAAG,EAAEC,UAAU,EAAEC,KAAK,EAAEC,WAAW,QAAQ,KAAK;AAAA,SACpFC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,YAAY,6BAE5D;AAGA,MAAMC,EAAE,GAAG,CAAC,CAAC;AACb,MAAMC,IAAI,GAAG,CAAC;;AAEd;AACA,MAAMC,SAAS,GAAG,GAAG;AAOrB,OAAO,MAAMC,gBAAgB,GAAGJ,YAAY,CAAC;EAC3CK,UAAU,EAAE;IACVC,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,CAAC;IACtBC,OAAO,EAAE;EACX,CAAC;EACDC,MAAM,EAAE,CAACH,MAAM,EAAEC,MAAM;AACzB,CAAC,EAAE,SAAS,CAAC;AAEb,OAAO,SAASG,UAAUA,CAAMC,KAAmB,EAAEC,KAAwB,EAAE;EAC7E,MAAMC,OAAO,GAAG3B,UAAU,CAAC,CAAC;EAE5B,MAAMkB,UAAU,GAAGZ,UAAU,CAAC,CAAC,CAAC;EAChCE,WAAW,CAAC,MAAM;IAChBU,UAAU,CAACU,KAAK,GAAGC,UAAU,CAACJ,KAAK,CAACP,UAAU,IAAI,CAAC,CAAC;EACtD,CAAC,CAAC;EAEF,MAAMY,KAAK,GAAGxB,UAAU,CAAC,CAAC,CAAC;EAC3B,MAAMyB,IAAI,GAAGzB,UAAU,CAAC0B,IAAI,CAACC,IAAI;EAC/B;EACA;EACA;EACA;EACA,CAACC,QAAQ,CAACT,KAAK,CAACF,MAAO,CAAC,IAAII,OAAO,CAACJ,MAAM,CAACK,KAAK,KAAKV,UAAU,CAACU,KAAK,IAAI,EAAE,CAC7E,CAAC,IAAI,CAAC,CAAC;EACP,MAAMO,UAAU,GAAG7B,UAAU,CAAC,CAAC,CAAC;EAChC,MAAM8B,aAAa,GAAG9B,UAAU,CAAC,CAAC,CAAC;;EAEnC;EACA,MAAM+B,YAAY,GAAGhC,GAAG,CAAc,CAAC;EACvC;AACF;EACE,MAAMiC,SAAS,GAAGjC,GAAG,CAAc,CAAC;EACpC;EACA,IAAIkC,YAAY,GAAG,CAAC;EAEpB,MAAM;IAAEC,SAAS;IAAEC;EAAY,CAAC,GAAGxC,iBAAiB,CAAC,CAAC;EACtDO,WAAW,CAAC,MAAM;IAChBgC,SAAS,CAACZ,KAAK,GAAGS,YAAY,CAACT,KAAK;EACtC,CAAC,CAAC;EACF,MAAMc,cAAc,GAAGxC,QAAQ,CAAC,MAAM;IACpC,OAAOmC,YAAY,CAACT,KAAK,KAAKe,QAAQ,CAACC,eAAe,GAClDjB,OAAO,CAACJ,MAAM,CAACK,KAAK,GACpBa,WAAW,CAACb,KAAK,EAAEL,MAAM,IAAIW,QAAQ,CAACT,KAAK,CAACF,MAAO,CAAC,IAAI,CAAC;EAC/D,CAAC,CAAC;EACF;EACA,MAAMsB,gBAAgB,GAAG3C,QAAQ,CAAC,MAAM;IACtC,OAAO,CAAC,EAAEmC,YAAY,CAACT,KAAK,IAAIU,SAAS,CAACV,KAAK,IAAIc,cAAc,CAACd,KAAK,IAAIV,UAAU,CAACU,KAAK,CAAC;EAC9F,CAAC,CAAC;EAEF,IAAIkB,KAAK,GAAGC,KAAK,CAACC,IAAI,CAAgB;IAAEC,MAAM,EAAEvB,KAAK,CAACE,KAAK,CAACqB;EAAO,CAAC,CAAC;EACrE,IAAIC,OAAO,GAAGH,KAAK,CAACC,IAAI,CAAS;IAAEC,MAAM,EAAEvB,KAAK,CAACE,KAAK,CAACqB;EAAO,CAAC,CAAC;EAChE,MAAME,UAAU,GAAG7C,UAAU,CAAC,CAAC,CAAC;EAChC,IAAI8C,iBAAiB,GAAG,CAAC,CAAC;EAE1B,SAASC,OAAOA,CAAEC,KAAa,EAAE;IAC/B,OAAOR,KAAK,CAACQ,KAAK,CAAC,IAAIpC,UAAU,CAACU,KAAK;EACzC;EAEA,MAAM2B,aAAa,GAAG7C,QAAQ,CAAC,MAAM;IACnC,MAAM8C,KAAK,GAAGC,WAAW,CAACC,GAAG,CAAC,CAAC;IAC/BR,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACd,MAAMD,MAAM,GAAGvB,KAAK,CAACE,KAAK,CAACqB,MAAM;IACjC,KAAK,IAAIU,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAIV,MAAM,GAAG,CAAC,EAAEU,CAAC,EAAE,EAAE;MACpCT,OAAO,CAACS,CAAC,CAAC,GAAG,CAACT,OAAO,CAACS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAIN,OAAO,CAACM,CAAC,GAAG,CAAC,CAAC;IACrD;IACAR,UAAU,CAACvB,KAAK,GAAGI,IAAI,CAAC4B,GAAG,CAACT,UAAU,CAACvB,KAAK,EAAE6B,WAAW,CAACC,GAAG,CAAC,CAAC,GAAGF,KAAK,CAAC;EAC1E,CAAC,EAAEL,UAAU,CAAC;EAEd,MAAMU,OAAO,GAAGtD,KAAK,CAACsC,gBAAgB,EAAEiB,CAAC,IAAI;IAC3C,IAAI,CAACA,CAAC,EAAE;IACR;IACA;;IAEAD,OAAO,CAAC,CAAC;IACTtB,YAAY,GAAGD,SAAS,CAACV,KAAK,CAAEmC,SAAS;IACzCR,aAAa,CAACS,SAAS,CAAC,CAAC;IACzBC,qBAAqB,CAAC,CAAC;IAEvB,IAAI,CAAC,CAACb,iBAAiB,EAAE;IAEzBjD,QAAQ,CAAC,MAAM;MACbQ,UAAU,IAAIuD,MAAM,CAACC,qBAAqB,CAAC,MAAM;QAC/CC,aAAa,CAAChB,iBAAiB,CAAC;QAChCA,iBAAiB,GAAG,CAAC,CAAC;MACxB,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFhD,cAAc,CAAC,MAAM;IACnBmD,aAAa,CAACc,KAAK,CAAC,CAAC;EACvB,CAAC,CAAC;EAEF,SAASC,gBAAgBA,CAAEhB,KAAa,EAAE/B,MAAc,EAAE;IACxD,MAAMgD,UAAU,GAAGzB,KAAK,CAACQ,KAAK,CAAC;IAC/B,MAAMkB,aAAa,GAAGtD,UAAU,CAACU,KAAK;IAEtCV,UAAU,CAACU,KAAK,GAAG4C,aAAa,GAAGxC,IAAI,CAACyC,GAAG,CAACvD,UAAU,CAACU,KAAK,EAAEL,MAAM,CAAC,GAAGA,MAAM;IAE9E,IAAIgD,UAAU,KAAKhD,MAAM,IAAIiD,aAAa,KAAKtD,UAAU,CAACU,KAAK,EAAE;MAC/DkB,KAAK,CAACQ,KAAK,CAAC,GAAG/B,MAAM;MACrBgC,aAAa,CAAC,CAAC;IACjB;EACF;EAEA,SAASmB,eAAeA,CAAEpB,KAAa,EAAE;IACvCA,KAAK,GAAG7C,KAAK,CAAC6C,KAAK,EAAE,CAAC,EAAE5B,KAAK,CAACE,KAAK,CAACqB,MAAM,GAAG,CAAC,CAAC;IAC/C,OAAOC,OAAO,CAACI,KAAK,CAAC,IAAI,CAAC;EAC5B;EAEA,SAASqB,cAAcA,CAAEC,SAAiB,EAAE;IAC1C,OAAOC,aAAa,CAAC3B,OAAO,EAAE0B,SAAS,CAAC;EAC1C;EAEA,IAAIE,aAAa,GAAG,CAAC;EACrB,IAAIC,cAAc,GAAG,CAAC;EACtB,IAAIC,cAAc,GAAG,CAAC;EAEtBzE,KAAK,CAACmC,cAAc,EAAE,CAACuC,GAAG,EAAEC,MAAM,KAAK;IACrC,IAAIA,MAAM,EAAE;MACVjB,qBAAqB,CAAC,CAAC;MACvB,IAAIgB,GAAG,GAAGC,MAAM,EAAE;QAChBf,qBAAqB,CAAC,MAAM;UAC1BY,cAAc,GAAG,CAAC;UAClBd,qBAAqB,CAAC,CAAC;QACzB,CAAC,CAAC;MACJ;IACF;EACF,CAAC,CAAC;EAEF,IAAIkB,aAAa,GAAG,CAAC,CAAC;EACtB,SAASC,YAAYA,CAAA,EAAI;IACvB,IAAI,CAAC/C,YAAY,CAACT,KAAK,IAAI,CAACU,SAAS,CAACV,KAAK,EAAE;IAE7C,MAAMgD,SAAS,GAAGvC,YAAY,CAACT,KAAK,CAACgD,SAAS;IAC9C,MAAMS,UAAU,GAAG5B,WAAW,CAACC,GAAG,CAAC,CAAC;IACpC,MAAM4B,YAAY,GAAGD,UAAU,GAAGL,cAAc;IAEhD,IAAIM,YAAY,GAAG,GAAG,EAAE;MACtBP,cAAc,GAAG/C,IAAI,CAACuD,IAAI,CAACX,SAAS,GAAGE,aAAa,CAAC;;MAErD;MACA;MACAvC,YAAY,GAAGD,SAAS,CAACV,KAAK,CAACmC,SAAS;IAC1C,CAAC,MAAM;MACLgB,cAAc,GAAGH,SAAS,GAAGE,aAAa;IAC5C;IAEAA,aAAa,GAAGF,SAAS;IACzBI,cAAc,GAAGK,UAAU;IAE3BnB,MAAM,CAACsB,YAAY,CAACL,aAAa,CAAC;IAClCA,aAAa,GAAGjB,MAAM,CAACuB,UAAU,CAACC,eAAe,EAAE,GAAG,CAAC;IAEvDzB,qBAAqB,CAAC,CAAC;EACzB;EACA,SAASyB,eAAeA,CAAA,EAAI;IAC1B,IAAI,CAACrD,YAAY,CAACT,KAAK,IAAI,CAACU,SAAS,CAACV,KAAK,EAAE;IAE7CmD,cAAc,GAAG,CAAC;IAClBC,cAAc,GAAG,CAAC;IAElBd,MAAM,CAACsB,YAAY,CAACL,aAAa,CAAC;IAClClB,qBAAqB,CAAC,CAAC;EACzB;EAEA,IAAI0B,GAAG,GAAG,CAAC,CAAC;EACZ,SAAS1B,qBAAqBA,CAAA,EAAI;IAChC2B,oBAAoB,CAACD,GAAG,CAAC;IACzBA,GAAG,GAAGxB,qBAAqB,CAAC0B,sBAAsB,CAAC;EACrD;EACA,SAASA,sBAAsBA,CAAA,EAAI;IACjC,IAAI,CAACxD,YAAY,CAACT,KAAK,IAAI,CAACc,cAAc,CAACd,KAAK,EAAE;IAClD,MAAMgD,SAAS,GAAGE,aAAa,GAAGvC,YAAY;IAC9C,MAAMuD,SAAS,GAAG9D,IAAI,CAACuD,IAAI,CAACR,cAAc,CAAC;IAE3C,MAAMgB,OAAO,GAAG/D,IAAI,CAAC4B,GAAG,CAAC,CAAC,EAAEgB,SAAS,GAAG5D,SAAS,CAAC;IAClD,MAAMwC,KAAK,GAAG/C,KAAK,CAACkE,cAAc,CAACoB,OAAO,CAAC,EAAE,CAAC,EAAErE,KAAK,CAACE,KAAK,CAACqB,MAAM,CAAC;IAEnE,MAAM+C,KAAK,GAAGpB,SAAS,GAAGlC,cAAc,CAACd,KAAK,GAAGZ,SAAS;IAC1D,MAAMiF,GAAG,GAAGxF,KAAK,CAACkE,cAAc,CAACqB,KAAK,CAAC,GAAG,CAAC,EAAExC,KAAK,GAAG,CAAC,EAAE9B,KAAK,CAACE,KAAK,CAACqB,MAAM,CAAC;IAE3E;IACE;IACA;IACA,CAAC6C,SAAS,KAAKhF,EAAE,IAAI0C,KAAK,GAAG1B,KAAK,CAACF,KAAK,MACvCkE,SAAS,KAAK/E,IAAI,IAAIkF,GAAG,GAAGlE,IAAI,CAACH,KAAK,CAAC,EACxC;MACA,MAAMsE,WAAW,GAAGxB,eAAe,CAAC5C,KAAK,CAACF,KAAK,CAAC,GAAG8C,eAAe,CAAClB,KAAK,CAAC;MACzE,MAAM2C,cAAc,GAAGzB,eAAe,CAACuB,GAAG,CAAC,GAAGvB,eAAe,CAAC3C,IAAI,CAACH,KAAK,CAAC;MACzE,MAAMwE,cAAc,GAAGpE,IAAI,CAAC4B,GAAG,CAACsC,WAAW,EAAEC,cAAc,CAAC;MAE5D,IAAIC,cAAc,GAAGpF,SAAS,EAAE;QAC9Bc,KAAK,CAACF,KAAK,GAAG4B,KAAK;QACnBzB,IAAI,CAACH,KAAK,GAAGqE,GAAG;MAClB,CAAC,MAAM;QACL;QACA,IAAIzC,KAAK,IAAI,CAAC,EAAE1B,KAAK,CAACF,KAAK,GAAG4B,KAAK;QACnC,IAAIyC,GAAG,IAAIvE,KAAK,CAACE,KAAK,CAACqB,MAAM,EAAElB,IAAI,CAACH,KAAK,GAAGqE,GAAG;MACjD;IACF;IAEA9D,UAAU,CAACP,KAAK,GAAG8C,eAAe,CAAC5C,KAAK,CAACF,KAAK,CAAC;IAC/CQ,aAAa,CAACR,KAAK,GAAG8C,eAAe,CAAChD,KAAK,CAACE,KAAK,CAACqB,MAAM,CAAC,GAAGyB,eAAe,CAAC3C,IAAI,CAACH,KAAK,CAAC;EACzF;EAEA,SAASwC,aAAaA,CAAEd,KAAa,EAAE;IACrC,MAAM+C,MAAM,GAAG3B,eAAe,CAACpB,KAAK,CAAC;IACrC,IAAI,CAACjB,YAAY,CAACT,KAAK,IAAK0B,KAAK,IAAI,CAAC+C,MAAO,EAAE;MAC7CjD,iBAAiB,GAAGE,KAAK;IAC3B,CAAC,MAAM;MACLjB,YAAY,CAACT,KAAK,CAACgD,SAAS,GAAGyB,MAAM;IACvC;EACF;EAEA,MAAMC,aAAa,GAAGpG,QAAQ,CAAC,MAAM;IACnC,OAAOwB,KAAK,CAACE,KAAK,CAAC2E,KAAK,CAACzE,KAAK,CAACF,KAAK,EAAEG,IAAI,CAACH,KAAK,CAAC,CAAC4E,GAAG,CAAC,CAACC,IAAI,EAAEnD,KAAK,MAAM;MACtEoD,GAAG,EAAED,IAAI;MACTnD,KAAK,EAAEA,KAAK,GAAGxB,KAAK,CAACF,KAAK;MAC1B+E,GAAG,EAAG/F,QAAQ,CAAC6F,IAAI,CAAC,IAAI,OAAO,IAAIA,IAAI,GAAIA,IAAI,CAAC7E,KAAK,GAAG0B,KAAK,GAAGxB,KAAK,CAACF;IACxE,CAAC,CAAC,CAAC;EACL,CAAC,CAAC;EAEFrB,KAAK,CAACmB,KAAK,EAAE,MAAM;IACjBoB,KAAK,GAAGC,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEvB,KAAK,CAACE,KAAK,CAACqB;IAAO,CAAC,CAAC;IAClDC,OAAO,GAAGH,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAEvB,KAAK,CAACE,KAAK,CAACqB;IAAO,CAAC,CAAC;IACpDM,aAAa,CAACS,SAAS,CAAC,CAAC;IACzBC,qBAAqB,CAAC,CAAC;EACzB,CAAC,EAAE;IAAE2C,IAAI,EAAE;EAAE,CAAC,CAAC;EAEf,OAAO;IACL3C,qBAAqB;IACrB5B,YAAY;IACZC,SAAS;IACTgE,aAAa;IACbnE,UAAU;IACVC,aAAa;IACbgC,aAAa;IACbgB,YAAY;IACZM,eAAe;IACfpB;EACF,CAAC;AACH;;AAEA;AACA,SAASO,aAAaA,CAAEgC,GAAsB,EAAE5B,GAAW,EAAE;EAC3D,IAAI6B,IAAI,GAAGD,GAAG,CAAC5D,MAAM,GAAG,CAAC;EACzB,IAAI8D,GAAG,GAAG,CAAC;EACX,IAAIC,GAAG,GAAG,CAAC;EACX,IAAIP,IAAI,GAAG,IAAI;EACf,IAAIQ,MAAM,GAAG,CAAC,CAAC;EAEf,IAAIJ,GAAG,CAACC,IAAI,CAAC,GAAI7B,GAAG,EAAE;IACpB,OAAO6B,IAAI;EACb;EAEA,OAAOC,GAAG,IAAID,IAAI,EAAE;IAClBE,GAAG,GAAID,GAAG,GAAGD,IAAI,IAAK,CAAC;IACvBL,IAAI,GAAGI,GAAG,CAACG,GAAG,CAAE;IAEhB,IAAIP,IAAI,GAAGxB,GAAG,EAAE;MACd6B,IAAI,GAAGE,GAAG,GAAG,CAAC;IAChB,CAAC,MAAM,IAAIP,IAAI,GAAGxB,GAAG,EAAE;MACrBgC,MAAM,GAAGD,GAAG;MACZD,GAAG,GAAGC,GAAG,GAAG,CAAC;IACf,CAAC,MAAM,IAAIP,IAAI,KAAKxB,GAAG,EAAE;MACvB,OAAO+B,GAAG;IACZ,CAAC,MAAM;MACL,OAAOD,GAAG;IACZ;EACF;EAEA,OAAOE,MAAM;AACf","ignoreList":[]}
|
1
|
+
{"version":3,"file":"virtual.mjs","names":["useDisplay","useResizeObserver","computed","nextTick","onScopeDispose","ref","shallowRef","watch","watchEffect","clamp","debounce","IN_BROWSER","isObject","propsFactory","UP","DOWN","BUFFER_PX","makeVirtualProps","itemHeight","type","Number","String","default","height","useVirtual","props","items","display","value","parseFloat","first","last","Math","ceil","parseInt","paddingTop","paddingBottom","containerRef","markerRef","markerOffset","resizeRef","contentRect","viewportHeight","document","documentElement","hasInitialRender","sizes","Array","from","length","offsets","updateTime","targetScrollIndex","getSize","index","updateOffsets","start","performance","now","i","max","unwatch","v","offsetTop","immediate","calculateVisibleItems","window","requestAnimationFrame","scrollToIndex","clear","handleItemResize","prevHeight","prevMinHeight","min","calculateOffset","calculateIndex","scrollTop","binaryClosest","lastScrollTop","scrollVelocity","lastScrollTime","val","oldVal","scrollTimeout","handleScroll","scrollTime","scrollDeltaT","sign","clearTimeout","setTimeout","handleScrollend","raf","cancelAnimationFrame","_calculateVisibleItems","direction","startPx","endPx","end","topOverflow","bottomOverflow","bufferOverflow","offset","computedItems","slice","map","item","raw","key","deep","arr","high","low","mid","target"],"sources":["../../src/composables/virtual.ts"],"sourcesContent":["// Composables\nimport { useDisplay } from '@/composables/display'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, onScopeDispose, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { clamp, debounce, IN_BROWSER, isObject, propsFactory } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\nconst UP = -1\nconst DOWN = 1\n\n/** Determines how large each batch of items should be */\nconst BUFFER_PX = 100\n\ntype VirtualProps = {\n itemHeight?: number | string\n height?: number | string\n}\n\nexport const makeVirtualProps = propsFactory({\n itemHeight: {\n type: [Number, String],\n default: null,\n },\n height: [Number, String],\n}, 'virtual')\n\nexport function useVirtual <T> (props: VirtualProps, items: Ref<readonly T[]>) {\n const display = useDisplay()\n\n const itemHeight = shallowRef(0)\n watchEffect(() => {\n itemHeight.value = parseFloat(props.itemHeight || 0)\n })\n\n const first = shallowRef(0)\n const last = shallowRef(Math.ceil(\n // Assume 16px items filling the entire screen height if\n // not provided. This is probably incorrect but it minimises\n // the chance of ending up with empty space at the bottom.\n // The default value is set here to avoid poisoning getSize()\n (parseInt(props.height!) || display.height.value) / (itemHeight.value || 16)\n ) || 1)\n const paddingTop = shallowRef(0)\n const paddingBottom = shallowRef(0)\n\n /** The scrollable element */\n const containerRef = ref<HTMLElement>()\n /** An element marking the top of the scrollable area,\n * used to add an offset if there's padding or other elements above the virtual list */\n const markerRef = ref<HTMLElement>()\n /** markerRef's offsetTop, lazily evaluated */\n let markerOffset = 0\n\n const { resizeRef, contentRect } = useResizeObserver()\n watchEffect(() => {\n resizeRef.value = containerRef.value\n })\n const viewportHeight = computed(() => {\n return containerRef.value === document.documentElement\n ? display.height.value\n : contentRect.value?.height || parseInt(props.height!) || 0\n })\n /** All static elements have been rendered and we have an assumed item height */\n const hasInitialRender = computed(() => {\n return !!(containerRef.value && markerRef.value && viewportHeight.value && itemHeight.value)\n })\n\n let sizes = Array.from<number | null>({ length: items.value.length })\n let offsets = Array.from<number>({ length: items.value.length })\n const updateTime = shallowRef(0)\n let targetScrollIndex = -1\n\n function getSize (index: number) {\n return sizes[index] || itemHeight.value\n }\n\n const updateOffsets = debounce(() => {\n const start = performance.now()\n offsets[0] = 0\n const length = items.value.length\n for (let i = 1; i <= length - 1; i++) {\n offsets[i] = (offsets[i - 1] || 0) + getSize(i - 1)\n }\n updateTime.value = Math.max(updateTime.value, performance.now() - start)\n }, updateTime)\n\n const unwatch = watch(hasInitialRender, v => {\n if (!v) return\n // First render is complete, update offsets and visible\n // items in case our assumed item height was incorrect\n\n unwatch()\n markerOffset = markerRef.value!.offsetTop\n updateOffsets.immediate()\n calculateVisibleItems()\n\n if (!~targetScrollIndex) return\n\n nextTick(() => {\n IN_BROWSER && window.requestAnimationFrame(() => {\n scrollToIndex(targetScrollIndex)\n targetScrollIndex = -1\n })\n })\n })\n\n onScopeDispose(() => {\n updateOffsets.clear()\n })\n\n function handleItemResize (index: number, height: number) {\n const prevHeight = sizes[index]\n const prevMinHeight = itemHeight.value\n\n itemHeight.value = prevMinHeight ? Math.min(itemHeight.value, height) : height\n\n if (prevHeight !== height || prevMinHeight !== itemHeight.value) {\n sizes[index] = height\n updateOffsets()\n }\n }\n\n function calculateOffset (index: number) {\n index = clamp(index, 0, items.value.length - 1)\n return offsets[index] || 0\n }\n\n function calculateIndex (scrollTop: number) {\n return binaryClosest(offsets, scrollTop)\n }\n\n let lastScrollTop = 0\n let scrollVelocity = 0\n let lastScrollTime = 0\n\n watch(viewportHeight, (val, oldVal) => {\n if (oldVal) {\n calculateVisibleItems()\n if (val < oldVal) {\n requestAnimationFrame(() => {\n scrollVelocity = 0\n calculateVisibleItems()\n })\n }\n }\n })\n\n let scrollTimeout = -1\n function handleScroll () {\n if (!containerRef.value || !markerRef.value) return\n\n const scrollTop = containerRef.value.scrollTop\n const scrollTime = performance.now()\n const scrollDeltaT = scrollTime - lastScrollTime\n\n if (scrollDeltaT > 500) {\n scrollVelocity = Math.sign(scrollTop - lastScrollTop)\n\n // Not super important, only update at the\n // start of a scroll sequence to avoid reflows\n markerOffset = markerRef.value.offsetTop\n } else {\n scrollVelocity = scrollTop - lastScrollTop\n }\n\n lastScrollTop = scrollTop\n lastScrollTime = scrollTime\n\n window.clearTimeout(scrollTimeout)\n scrollTimeout = window.setTimeout(handleScrollend, 500)\n\n calculateVisibleItems()\n }\n function handleScrollend () {\n if (!containerRef.value || !markerRef.value) return\n\n scrollVelocity = 0\n lastScrollTime = 0\n\n window.clearTimeout(scrollTimeout)\n calculateVisibleItems()\n }\n\n let raf = -1\n function calculateVisibleItems () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(_calculateVisibleItems)\n }\n function _calculateVisibleItems () {\n if (!containerRef.value || !viewportHeight.value) return\n const scrollTop = lastScrollTop - markerOffset\n const direction = Math.sign(scrollVelocity)\n\n const startPx = Math.max(0, scrollTop - BUFFER_PX)\n const start = clamp(calculateIndex(startPx), 0, items.value.length)\n\n const endPx = scrollTop + viewportHeight.value + BUFFER_PX\n const end = clamp(calculateIndex(endPx) + 1, start + 1, items.value.length)\n\n if (\n // Only update the side we're scrolling towards,\n // the other side will be updated incidentally\n (direction !== UP || start < first.value) &&\n (direction !== DOWN || end > last.value)\n ) {\n const topOverflow = calculateOffset(first.value) - calculateOffset(start)\n const bottomOverflow = calculateOffset(end) - calculateOffset(last.value)\n const bufferOverflow = Math.max(topOverflow, bottomOverflow)\n\n if (bufferOverflow > BUFFER_PX) {\n first.value = start\n last.value = end\n } else {\n // Only update the side that's reached its limit if there's still buffer left\n if (start <= 0) first.value = start\n if (end >= items.value.length) last.value = end\n }\n }\n\n paddingTop.value = calculateOffset(first.value)\n paddingBottom.value = calculateOffset(items.value.length) - calculateOffset(last.value)\n }\n\n function scrollToIndex (index: number) {\n const offset = calculateOffset(index)\n if (!containerRef.value || (index && !offset)) {\n targetScrollIndex = index\n } else {\n containerRef.value.scrollTop = offset\n }\n }\n\n const computedItems = computed(() => {\n return items.value.slice(first.value, last.value).map((item, index) => ({\n raw: item,\n index: index + first.value,\n key: (isObject(item) && 'value' in item) ? item.value : index + first.value,\n }))\n })\n\n watch(items, () => {\n sizes = Array.from({ length: items.value.length })\n offsets = Array.from({ length: items.value.length })\n updateOffsets.immediate()\n calculateVisibleItems()\n }, { deep: true })\n\n return {\n calculateVisibleItems,\n containerRef,\n markerRef,\n computedItems,\n paddingTop,\n paddingBottom,\n scrollToIndex,\n handleScroll,\n handleScrollend,\n handleItemResize,\n }\n}\n\n// https://gist.github.com/robertleeplummerjr/1cc657191d34ecd0a324\nfunction binaryClosest (arr: ArrayLike<number>, val: number) {\n let high = arr.length - 1\n let low = 0\n let mid = 0\n let item = null\n let target = -1\n\n if (arr[high]! < val) {\n return high\n }\n\n while (low <= high) {\n mid = (low + high) >> 1\n item = arr[mid]!\n\n if (item > val) {\n high = mid - 1\n } else if (item < val) {\n target = mid\n low = mid + 1\n } else if (item === val) {\n return mid\n } else {\n return low\n }\n }\n\n return target\n}\n"],"mappings":"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","ignoreList":[]}
|
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.6-
|
19
|
+
export const version = "3.7.6-master.2024-12-26";
|
20
20
|
createVuetify.version = version;
|
21
21
|
export { blueprints, components, directives };
|
22
22
|
export * from "./composables/index.mjs";
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"entry-bundler.mjs","names":["blueprints","components","directives","createVuetify","_createVuetify","options","arguments","length","undefined","version"],"sources":["../src/entry-bundler.ts"],"sourcesContent":["/* eslint-disable local-rules/sort-imports */\n\n// Styles\nimport './styles/main.sass'\n\n// Components\nimport * as blueprints from './blueprints'\nimport * as components from './components'\nimport * as directives from './directives'\nimport { createVuetify as _createVuetify } from './framework'\n\n// Types\nimport type { VuetifyOptions } from './framework'\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n return _createVuetify({ components, directives, ...options })\n}\n\nexport const version = __VUETIFY_VERSION__\ncreateVuetify.version = version\n\nexport {\n blueprints,\n components,\n directives,\n}\nexport * from './composables'\n"],"mappings":"AAAA;;AAEA;AACA;;AAEA;AAAA,OACO,KAAKA,UAAU;AAAA,OACf,KAAKC,UAAU;AAAA,OACf,KAAKC,UAAU;AAAA,SACbC,aAAa,IAAIC,cAAc,2BAExC;AAGA,OAAO,MAAMD,aAAa,GAAG,SAAAA,CAAA,EAAkC;EAAA,IAAjCE,OAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACxD,OAAOF,cAAc,CAAC;IAAEH,UAAU;IAAEC,UAAU;IAAE,GAAGG;EAAQ,CAAC,CAAC;AAC/D,CAAC;AAED,OAAO,MAAMI,OAAO,
|
1
|
+
{"version":3,"file":"entry-bundler.mjs","names":["blueprints","components","directives","createVuetify","_createVuetify","options","arguments","length","undefined","version"],"sources":["../src/entry-bundler.ts"],"sourcesContent":["/* eslint-disable local-rules/sort-imports */\n\n// Styles\nimport './styles/main.sass'\n\n// Components\nimport * as blueprints from './blueprints'\nimport * as components from './components'\nimport * as directives from './directives'\nimport { createVuetify as _createVuetify } from './framework'\n\n// Types\nimport type { VuetifyOptions } from './framework'\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n return _createVuetify({ components, directives, ...options })\n}\n\nexport const version = __VUETIFY_VERSION__\ncreateVuetify.version = version\n\nexport {\n blueprints,\n components,\n directives,\n}\nexport * from './composables'\n"],"mappings":"AAAA;;AAEA;AACA;;AAEA;AAAA,OACO,KAAKA,UAAU;AAAA,OACf,KAAKC,UAAU;AAAA,OACf,KAAKC,UAAU;AAAA,SACbC,aAAa,IAAIC,cAAc,2BAExC;AAGA,OAAO,MAAMD,aAAa,GAAG,SAAAA,CAAA,EAAkC;EAAA,IAAjCE,OAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACxD,OAAOF,cAAc,CAAC;IAAEH,UAAU;IAAEC,UAAU;IAAE,GAAGG;EAAQ,CAAC,CAAC;AAC/D,CAAC;AAED,OAAO,MAAMI,OAAO,4BAAsB;AAC1CN,aAAa,CAACM,OAAO,GAAGA,OAAO;AAE/B,SACET,UAAU,EACVC,UAAU,EACVC,UAAU;AACX","ignoreList":[]}
|
package/lib/framework.mjs
CHANGED
@@ -7,7 +7,7 @@ import { createIcons, IconSymbol } from "./composables/icons.mjs";
|
|
7
7
|
import { createLocale, LocaleSymbol } from "./composables/locale.mjs";
|
8
8
|
import { createTheme, ThemeSymbol } from "./composables/theme.mjs"; // Utilities
|
9
9
|
import { nextTick, reactive } from 'vue';
|
10
|
-
import { defineComponent, IN_BROWSER, mergeDeep } from "./util/index.mjs"; // Types
|
10
|
+
import { defineComponent, getUid, IN_BROWSER, mergeDeep } from "./util/index.mjs"; // Types
|
11
11
|
export * from "./composables/index.mjs";
|
12
12
|
export function createVuetify() {
|
13
13
|
let vuetify = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
@@ -68,6 +68,7 @@ export function createVuetify() {
|
|
68
68
|
};
|
69
69
|
}
|
70
70
|
}
|
71
|
+
getUid.reset();
|
71
72
|
if (typeof __VUE_OPTIONS_API__ !== 'boolean' || __VUE_OPTIONS_API__) {
|
72
73
|
app.mixin({
|
73
74
|
computed: {
|
@@ -96,7 +97,7 @@ export function createVuetify() {
|
|
96
97
|
goTo
|
97
98
|
};
|
98
99
|
}
|
99
|
-
export const version = "3.7.6-
|
100
|
+
export const version = "3.7.6-master.2024-12-26";
|
100
101
|
createVuetify.version = version;
|
101
102
|
|
102
103
|
// Vue's inject() can only be used in setup
|
package/lib/framework.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"framework.mjs","names":["createDate","DateAdapterSymbol","DateOptionsSymbol","createDefaults","DefaultsSymbol","createDisplay","DisplaySymbol","createGoTo","GoToSymbol","createIcons","IconSymbol","createLocale","LocaleSymbol","createTheme","ThemeSymbol","nextTick","reactive","defineComponent","IN_BROWSER","mergeDeep","createVuetify","vuetify","arguments","length","undefined","blueprint","rest","options","aliases","components","directives","defaults","display","ssr","theme","icons","locale","date","goTo","install","app","key","directive","component","name","aliasName","provide","instance","$nuxt","hook","update","mount","vm","__VUE_OPTIONS_API__","mixin","computed","$vuetify","inject","call","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 { 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'\nexport * from './composables'\nexport type { DateOptions, DateInstance, DateModule } from '@/composables/date'\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 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 const 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 theme.install(app)\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 return {\n install,\n defaults,\n display,\n theme,\n icons,\n locale,\n date,\n goTo,\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":"AAAA;AAAA,SACSA,UAAU,EAAEC,iBAAiB,EAAEC,iBAAiB;AAAA,SAChDC,cAAc,EAAEC,cAAc;AAAA,SAC9BC,aAAa,EAAEC,aAAa;AAAA,SAC5BC,UAAU,EAAEC,UAAU;AAAA,SACtBC,WAAW,EAAEC,UAAU;AAAA,SACvBC,YAAY,EAAEC,YAAY;AAAA,SAC1BC,WAAW,EAAEC,WAAW,mCAEjC;AACA,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,KAAK;AAAA,SAC/BC,eAAe,EAAEC,UAAU,EAAEC,SAAS,
|
1
|
+
{"version":3,"file":"framework.mjs","names":["createDate","DateAdapterSymbol","DateOptionsSymbol","createDefaults","DefaultsSymbol","createDisplay","DisplaySymbol","createGoTo","GoToSymbol","createIcons","IconSymbol","createLocale","LocaleSymbol","createTheme","ThemeSymbol","nextTick","reactive","defineComponent","getUid","IN_BROWSER","mergeDeep","createVuetify","vuetify","arguments","length","undefined","blueprint","rest","options","aliases","components","directives","defaults","display","ssr","theme","icons","locale","date","goTo","install","app","key","directive","component","name","aliasName","provide","instance","$nuxt","hook","update","mount","vm","reset","__VUE_OPTIONS_API__","mixin","computed","$vuetify","inject","call","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 { nextTick, reactive } from 'vue'\nimport { defineComponent, getUid, 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'\nexport * from './composables'\nexport type { DateOptions, DateInstance, DateModule } from '@/composables/date'\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 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 const 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 theme.install(app)\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 getUid.reset()\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 return {\n install,\n defaults,\n display,\n theme,\n icons,\n locale,\n date,\n goTo,\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/index.d.mts
CHANGED
@@ -29,8 +29,8 @@ interface RtlInstance {
|
|
29
29
|
rtlClasses: Ref<string>;
|
30
30
|
}
|
31
31
|
declare function useRtl(): {
|
32
|
-
isRtl: Ref<boolean
|
33
|
-
rtlClasses: Ref<string
|
32
|
+
isRtl: Ref<boolean>;
|
33
|
+
rtlClasses: Ref<string>;
|
34
34
|
};
|
35
35
|
|
36
36
|
interface GoToInstance {
|
@@ -343,8 +343,8 @@ interface LayoutItem extends Layer {
|
|
343
343
|
}
|
344
344
|
declare function useLayout(): {
|
345
345
|
getLayoutItem: (id: string) => LayoutItem | undefined;
|
346
|
-
mainRect: Ref<Layer
|
347
|
-
mainStyles: Ref<CSSProperties
|
346
|
+
mainRect: Ref<Layer>;
|
347
|
+
mainStyles: Ref<CSSProperties>;
|
348
348
|
};
|
349
349
|
|
350
350
|
interface FieldValidationResult {
|
@@ -376,7 +376,7 @@ interface Blueprint extends Omit<VuetifyOptions, 'blueprint'> {
|
|
376
376
|
}
|
377
377
|
declare function createVuetify(vuetify?: VuetifyOptions): {
|
378
378
|
install: (app: App) => void;
|
379
|
-
defaults: vue.Ref<DefaultsInstance
|
379
|
+
defaults: vue.Ref<DefaultsInstance>;
|
380
380
|
display: DisplayInstance;
|
381
381
|
theme: ThemeInstance & {
|
382
382
|
install: (app: App) => void;
|
@@ -488,47 +488,39 @@ declare module 'vue' {
|
|
488
488
|
export interface GlobalComponents {
|
489
489
|
VAlert: typeof import('vuetify/components')['VAlert']
|
490
490
|
VAlertTitle: typeof import('vuetify/components')['VAlertTitle']
|
491
|
-
VAppBar: typeof import('vuetify/components')['VAppBar']
|
492
|
-
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
493
|
-
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
494
491
|
VAutocomplete: typeof import('vuetify/components')['VAutocomplete']
|
495
|
-
VBadge: typeof import('vuetify/components')['VBadge']
|
496
492
|
VApp: typeof import('vuetify/components')['VApp']
|
497
|
-
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
498
|
-
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
499
|
-
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
500
493
|
VAvatar: typeof import('vuetify/components')['VAvatar']
|
494
|
+
VBadge: typeof import('vuetify/components')['VBadge']
|
495
|
+
VBottomSheet: typeof import('vuetify/components')['VBottomSheet']
|
496
|
+
VAppBar: typeof import('vuetify/components')['VAppBar']
|
497
|
+
VAppBarNavIcon: typeof import('vuetify/components')['VAppBarNavIcon']
|
498
|
+
VAppBarTitle: typeof import('vuetify/components')['VAppBarTitle']
|
499
|
+
VBtn: typeof import('vuetify/components')['VBtn']
|
500
|
+
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
501
501
|
VBanner: typeof import('vuetify/components')['VBanner']
|
502
502
|
VBannerActions: typeof import('vuetify/components')['VBannerActions']
|
503
503
|
VBannerText: typeof import('vuetify/components')['VBannerText']
|
504
|
+
VBreadcrumbs: typeof import('vuetify/components')['VBreadcrumbs']
|
505
|
+
VBreadcrumbsItem: typeof import('vuetify/components')['VBreadcrumbsItem']
|
506
|
+
VBreadcrumbsDivider: typeof import('vuetify/components')['VBreadcrumbsDivider']
|
507
|
+
VCarousel: typeof import('vuetify/components')['VCarousel']
|
508
|
+
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
504
509
|
VBtnToggle: typeof import('vuetify/components')['VBtnToggle']
|
505
|
-
|
506
|
-
VBtn: typeof import('vuetify/components')['VBtn']
|
510
|
+
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
507
511
|
VCard: typeof import('vuetify/components')['VCard']
|
508
512
|
VCardActions: typeof import('vuetify/components')['VCardActions']
|
509
513
|
VCardItem: typeof import('vuetify/components')['VCardItem']
|
510
514
|
VCardSubtitle: typeof import('vuetify/components')['VCardSubtitle']
|
511
515
|
VCardText: typeof import('vuetify/components')['VCardText']
|
512
516
|
VCardTitle: typeof import('vuetify/components')['VCardTitle']
|
513
|
-
VBtnGroup: typeof import('vuetify/components')['VBtnGroup']
|
514
517
|
VChip: typeof import('vuetify/components')['VChip']
|
515
|
-
VCarousel: typeof import('vuetify/components')['VCarousel']
|
516
|
-
VCarouselItem: typeof import('vuetify/components')['VCarouselItem']
|
517
|
-
VBottomNavigation: typeof import('vuetify/components')['VBottomNavigation']
|
518
|
-
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
519
518
|
VCode: typeof import('vuetify/components')['VCode']
|
519
|
+
VChipGroup: typeof import('vuetify/components')['VChipGroup']
|
520
|
+
VCounter: typeof import('vuetify/components')['VCounter']
|
520
521
|
VColorPicker: typeof import('vuetify/components')['VColorPicker']
|
521
522
|
VCombobox: typeof import('vuetify/components')['VCombobox']
|
522
|
-
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
523
|
-
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
524
523
|
VDivider: typeof import('vuetify/components')['VDivider']
|
525
|
-
VCounter: typeof import('vuetify/components')['VCounter']
|
526
|
-
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
527
|
-
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
528
|
-
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
529
|
-
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
530
|
-
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
531
|
-
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
532
524
|
VDataTable: typeof import('vuetify/components')['VDataTable']
|
533
525
|
VDataTableHeaders: typeof import('vuetify/components')['VDataTableHeaders']
|
534
526
|
VDataTableFooter: typeof import('vuetify/components')['VDataTableFooter']
|
@@ -536,31 +528,37 @@ declare module 'vue' {
|
|
536
528
|
VDataTableRow: typeof import('vuetify/components')['VDataTableRow']
|
537
529
|
VDataTableVirtual: typeof import('vuetify/components')['VDataTableVirtual']
|
538
530
|
VDataTableServer: typeof import('vuetify/components')['VDataTableServer']
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
531
|
+
VDatePicker: typeof import('vuetify/components')['VDatePicker']
|
532
|
+
VDatePickerControls: typeof import('vuetify/components')['VDatePickerControls']
|
533
|
+
VDatePickerHeader: typeof import('vuetify/components')['VDatePickerHeader']
|
534
|
+
VDatePickerMonth: typeof import('vuetify/components')['VDatePickerMonth']
|
535
|
+
VDatePickerMonths: typeof import('vuetify/components')['VDatePickerMonths']
|
536
|
+
VDatePickerYears: typeof import('vuetify/components')['VDatePickerYears']
|
543
537
|
VExpansionPanels: typeof import('vuetify/components')['VExpansionPanels']
|
544
538
|
VExpansionPanel: typeof import('vuetify/components')['VExpansionPanel']
|
545
539
|
VExpansionPanelText: typeof import('vuetify/components')['VExpansionPanelText']
|
546
540
|
VExpansionPanelTitle: typeof import('vuetify/components')['VExpansionPanelTitle']
|
547
|
-
|
541
|
+
VDialog: typeof import('vuetify/components')['VDialog']
|
548
542
|
VField: typeof import('vuetify/components')['VField']
|
549
543
|
VFieldLabel: typeof import('vuetify/components')['VFieldLabel']
|
550
|
-
|
551
|
-
|
552
|
-
|
544
|
+
VEmptyState: typeof import('vuetify/components')['VEmptyState']
|
545
|
+
VFooter: typeof import('vuetify/components')['VFooter']
|
546
|
+
VFab: typeof import('vuetify/components')['VFab']
|
547
|
+
VFileInput: typeof import('vuetify/components')['VFileInput']
|
553
548
|
VIcon: typeof import('vuetify/components')['VIcon']
|
554
549
|
VComponentIcon: typeof import('vuetify/components')['VComponentIcon']
|
555
550
|
VSvgIcon: typeof import('vuetify/components')['VSvgIcon']
|
556
551
|
VLigatureIcon: typeof import('vuetify/components')['VLigatureIcon']
|
557
552
|
VClassIcon: typeof import('vuetify/components')['VClassIcon']
|
553
|
+
VImg: typeof import('vuetify/components')['VImg']
|
554
|
+
VKbd: typeof import('vuetify/components')['VKbd']
|
555
|
+
VInfiniteScroll: typeof import('vuetify/components')['VInfiniteScroll']
|
556
|
+
VInput: typeof import('vuetify/components')['VInput']
|
557
|
+
VCheckbox: typeof import('vuetify/components')['VCheckbox']
|
558
|
+
VCheckboxBtn: typeof import('vuetify/components')['VCheckboxBtn']
|
558
559
|
VItemGroup: typeof import('vuetify/components')['VItemGroup']
|
559
560
|
VItem: typeof import('vuetify/components')['VItem']
|
560
|
-
VMain: typeof import('vuetify/components')['VMain']
|
561
561
|
VLabel: typeof import('vuetify/components')['VLabel']
|
562
|
-
VKbd: typeof import('vuetify/components')['VKbd']
|
563
|
-
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
564
562
|
VList: typeof import('vuetify/components')['VList']
|
565
563
|
VListGroup: typeof import('vuetify/components')['VListGroup']
|
566
564
|
VListImg: typeof import('vuetify/components')['VListImg']
|
@@ -570,69 +568,70 @@ declare module 'vue' {
|
|
570
568
|
VListItemSubtitle: typeof import('vuetify/components')['VListItemSubtitle']
|
571
569
|
VListItemTitle: typeof import('vuetify/components')['VListItemTitle']
|
572
570
|
VListSubheader: typeof import('vuetify/components')['VListSubheader']
|
573
|
-
|
574
|
-
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
571
|
+
VMain: typeof import('vuetify/components')['VMain']
|
575
572
|
VMenu: typeof import('vuetify/components')['VMenu']
|
573
|
+
VMessages: typeof import('vuetify/components')['VMessages']
|
574
|
+
VNavigationDrawer: typeof import('vuetify/components')['VNavigationDrawer']
|
576
575
|
VOverlay: typeof import('vuetify/components')['VOverlay']
|
577
|
-
|
576
|
+
VOtpInput: typeof import('vuetify/components')['VOtpInput']
|
578
577
|
VProgressCircular: typeof import('vuetify/components')['VProgressCircular']
|
578
|
+
VPagination: typeof import('vuetify/components')['VPagination']
|
579
579
|
VProgressLinear: typeof import('vuetify/components')['VProgressLinear']
|
580
580
|
VRadioGroup: typeof import('vuetify/components')['VRadioGroup']
|
581
|
+
VRating: typeof import('vuetify/components')['VRating']
|
581
582
|
VSelectionControlGroup: typeof import('vuetify/components')['VSelectionControlGroup']
|
583
|
+
VSelect: typeof import('vuetify/components')['VSelect']
|
582
584
|
VSelectionControl: typeof import('vuetify/components')['VSelectionControl']
|
583
|
-
VRating: typeof import('vuetify/components')['VRating']
|
584
585
|
VSheet: typeof import('vuetify/components')['VSheet']
|
586
|
+
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
585
587
|
VSlideGroup: typeof import('vuetify/components')['VSlideGroup']
|
586
588
|
VSlideGroupItem: typeof import('vuetify/components')['VSlideGroupItem']
|
587
589
|
VSlider: typeof import('vuetify/components')['VSlider']
|
588
|
-
VSelect: typeof import('vuetify/components')['VSelect']
|
589
590
|
VSnackbar: typeof import('vuetify/components')['VSnackbar']
|
590
|
-
VSkeletonLoader: typeof import('vuetify/components')['VSkeletonLoader']
|
591
|
-
VSwitch: typeof import('vuetify/components')['VSwitch']
|
592
|
-
VTable: typeof import('vuetify/components')['VTable']
|
593
591
|
VStepper: typeof import('vuetify/components')['VStepper']
|
594
592
|
VStepperActions: typeof import('vuetify/components')['VStepperActions']
|
595
593
|
VStepperHeader: typeof import('vuetify/components')['VStepperHeader']
|
596
594
|
VStepperItem: typeof import('vuetify/components')['VStepperItem']
|
597
595
|
VStepperWindow: typeof import('vuetify/components')['VStepperWindow']
|
598
596
|
VStepperWindowItem: typeof import('vuetify/components')['VStepperWindowItem']
|
599
|
-
|
597
|
+
VSwitch: typeof import('vuetify/components')['VSwitch']
|
600
598
|
VSystemBar: typeof import('vuetify/components')['VSystemBar']
|
601
|
-
VTextField: typeof import('vuetify/components')['VTextField']
|
602
599
|
VTab: typeof import('vuetify/components')['VTab']
|
603
600
|
VTabs: typeof import('vuetify/components')['VTabs']
|
604
601
|
VTabsWindow: typeof import('vuetify/components')['VTabsWindow']
|
605
602
|
VTabsWindowItem: typeof import('vuetify/components')['VTabsWindowItem']
|
603
|
+
VTable: typeof import('vuetify/components')['VTable']
|
604
|
+
VTextField: typeof import('vuetify/components')['VTextField']
|
605
|
+
VTextarea: typeof import('vuetify/components')['VTextarea']
|
606
|
+
VTimeline: typeof import('vuetify/components')['VTimeline']
|
607
|
+
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
606
608
|
VTooltip: typeof import('vuetify/components')['VTooltip']
|
609
|
+
VWindow: typeof import('vuetify/components')['VWindow']
|
610
|
+
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
607
611
|
VToolbar: typeof import('vuetify/components')['VToolbar']
|
608
612
|
VToolbarTitle: typeof import('vuetify/components')['VToolbarTitle']
|
609
613
|
VToolbarItems: typeof import('vuetify/components')['VToolbarItems']
|
610
|
-
VWindow: typeof import('vuetify/components')['VWindow']
|
611
|
-
VWindowItem: typeof import('vuetify/components')['VWindowItem']
|
612
|
-
VTimeline: typeof import('vuetify/components')['VTimeline']
|
613
|
-
VTimelineItem: typeof import('vuetify/components')['VTimelineItem']
|
614
|
-
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
615
614
|
VDataIterator: typeof import('vuetify/components')['VDataIterator']
|
615
|
+
VConfirmEdit: typeof import('vuetify/components')['VConfirmEdit']
|
616
616
|
VDefaultsProvider: typeof import('vuetify/components')['VDefaultsProvider']
|
617
|
-
|
617
|
+
VHover: typeof import('vuetify/components')['VHover']
|
618
618
|
VContainer: typeof import('vuetify/components')['VContainer']
|
619
619
|
VCol: typeof import('vuetify/components')['VCol']
|
620
620
|
VRow: typeof import('vuetify/components')['VRow']
|
621
621
|
VSpacer: typeof import('vuetify/components')['VSpacer']
|
622
|
+
VForm: typeof import('vuetify/components')['VForm']
|
622
623
|
VLayout: typeof import('vuetify/components')['VLayout']
|
623
624
|
VLayoutItem: typeof import('vuetify/components')['VLayoutItem']
|
624
|
-
VHover: typeof import('vuetify/components')['VHover']
|
625
625
|
VLazy: typeof import('vuetify/components')['VLazy']
|
626
626
|
VLocaleProvider: typeof import('vuetify/components')['VLocaleProvider']
|
627
627
|
VNoSsr: typeof import('vuetify/components')['VNoSsr']
|
628
|
-
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
629
628
|
VParallax: typeof import('vuetify/components')['VParallax']
|
630
629
|
VRadio: typeof import('vuetify/components')['VRadio']
|
630
|
+
VRangeSlider: typeof import('vuetify/components')['VRangeSlider']
|
631
631
|
VResponsive: typeof import('vuetify/components')['VResponsive']
|
632
|
-
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
633
632
|
VSparkline: typeof import('vuetify/components')['VSparkline']
|
633
|
+
VSpeedDial: typeof import('vuetify/components')['VSpeedDial']
|
634
634
|
VThemeProvider: typeof import('vuetify/components')['VThemeProvider']
|
635
|
-
VValidation: typeof import('vuetify/components')['VValidation']
|
636
635
|
VVirtualScroll: typeof import('vuetify/components')['VVirtualScroll']
|
637
636
|
VFabTransition: typeof import('vuetify/components')['VFabTransition']
|
638
637
|
VDialogBottomTransition: typeof import('vuetify/components')['VDialogBottomTransition']
|
@@ -650,26 +649,27 @@ declare module 'vue' {
|
|
650
649
|
VExpandTransition: typeof import('vuetify/components')['VExpandTransition']
|
651
650
|
VExpandXTransition: typeof import('vuetify/components')['VExpandXTransition']
|
652
651
|
VDialogTransition: typeof import('vuetify/components')['VDialogTransition']
|
652
|
+
VValidation: typeof import('vuetify/components')['VValidation']
|
653
653
|
VCalendar: typeof import('vuetify/labs/components')['VCalendar']
|
654
654
|
VCalendarDay: typeof import('vuetify/labs/components')['VCalendarDay']
|
655
655
|
VCalendarHeader: typeof import('vuetify/labs/components')['VCalendarHeader']
|
656
656
|
VCalendarInterval: typeof import('vuetify/labs/components')['VCalendarInterval']
|
657
657
|
VCalendarIntervalEvent: typeof import('vuetify/labs/components')['VCalendarIntervalEvent']
|
658
658
|
VCalendarMonthDay: typeof import('vuetify/labs/components')['VCalendarMonthDay']
|
659
|
-
VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
|
660
659
|
VFileUpload: typeof import('vuetify/labs/components')['VFileUpload']
|
661
660
|
VFileUploadItem: typeof import('vuetify/labs/components')['VFileUploadItem']
|
662
661
|
VStepperVertical: typeof import('vuetify/labs/components')['VStepperVertical']
|
663
662
|
VStepperVerticalItem: typeof import('vuetify/labs/components')['VStepperVerticalItem']
|
664
663
|
VStepperVerticalActions: typeof import('vuetify/labs/components')['VStepperVerticalActions']
|
664
|
+
VNumberInput: typeof import('vuetify/labs/components')['VNumberInput']
|
665
|
+
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
666
|
+
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
665
667
|
VTimePicker: typeof import('vuetify/labs/components')['VTimePicker']
|
666
668
|
VTimePickerClock: typeof import('vuetify/labs/components')['VTimePickerClock']
|
667
669
|
VTimePickerControls: typeof import('vuetify/labs/components')['VTimePickerControls']
|
668
670
|
VTreeview: typeof import('vuetify/labs/components')['VTreeview']
|
669
671
|
VTreeviewItem: typeof import('vuetify/labs/components')['VTreeviewItem']
|
670
672
|
VTreeviewGroup: typeof import('vuetify/labs/components')['VTreeviewGroup']
|
671
|
-
VPicker: typeof import('vuetify/labs/components')['VPicker']
|
672
|
-
VPickerTitle: typeof import('vuetify/labs/components')['VPickerTitle']
|
673
673
|
VDateInput: typeof import('vuetify/labs/components')['VDateInput']
|
674
674
|
VPullToRefresh: typeof import('vuetify/labs/components')['VPullToRefresh']
|
675
675
|
VSnackbarQueue: typeof import('vuetify/labs/components')['VSnackbarQueue']
|