@vuetify/nightly 3.4.0-alpha.1-dev.2023-10-21 → 3.4.0-alpha.1-dev.2023-10-28
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 +7 -3
- package/dist/_component-variables-labs.sass +1 -5
- package/dist/_component-variables.sass +4 -0
- package/dist/json/attributes.json +26 -26
- package/dist/json/importMap-labs.json +14 -50
- package/dist/json/importMap.json +98 -62
- package/dist/json/web-types.json +30 -30
- package/dist/vuetify-labs.css +695 -694
- package/dist/vuetify-labs.d.ts +41561 -36837
- package/dist/vuetify-labs.esm.js +3188 -3166
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +3187 -3165
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +505 -108
- package/dist/vuetify.d.ts +20359 -13201
- package/dist/vuetify.esm.js +995 -175
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +994 -174
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1306 -1256
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/index.d.mts +114 -106
- package/lib/components/VApp/index.d.mts +24 -47
- package/lib/components/VAppBar/index.d.mts +219 -175
- package/lib/components/VAutocomplete/VAutocomplete.mjs +13 -10
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +1203 -551
- package/lib/components/VAvatar/index.d.mts +45 -53
- package/lib/components/VBadge/index.d.mts +66 -58
- package/lib/components/VBanner/index.d.mts +106 -146
- package/lib/components/VBottomNavigation/index.d.mts +72 -63
- package/lib/{labs → components}/VBottomSheet/VBottomSheet.mjs +1 -1
- package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -0
- package/lib/{labs → components}/VBottomSheet/index.d.mts +153 -83
- package/lib/components/VBottomSheet/index.mjs.map +1 -0
- package/lib/components/VBreadcrumbs/index.d.mts +89 -147
- package/lib/components/VBtn/index.d.mts +107 -66
- package/lib/components/VBtnGroup/index.d.mts +38 -51
- package/lib/components/VBtnToggle/index.d.mts +53 -55
- package/lib/components/VCard/index.d.mts +238 -298
- package/lib/components/VCarousel/index.d.mts +251 -131
- package/lib/components/VCheckbox/index.d.mts +259 -146
- package/lib/components/VChip/index.d.mts +157 -76
- package/lib/components/VChipGroup/index.d.mts +76 -55
- package/lib/components/VCode/index.d.mts +21 -46
- package/lib/components/VColorPicker/index.d.mts +112 -61
- package/lib/components/VCombobox/VCombobox.mjs +13 -10
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +1203 -551
- package/lib/components/VCounter/index.d.mts +45 -57
- package/lib/components/VDefaultsProvider/index.d.mts +24 -49
- package/lib/components/VDialog/index.d.mts +583 -329
- package/lib/components/VDivider/index.d.mts +30 -49
- package/lib/components/VExpansionPanel/index.d.mts +188 -212
- package/lib/components/VField/index.d.mts +88 -105
- package/lib/components/VFileInput/index.d.mts +472 -287
- package/lib/components/VFooter/index.d.mts +42 -52
- package/lib/components/VForm/index.d.mts +149 -51
- package/lib/components/VGrid/index.d.mts +146 -196
- package/lib/components/VHover/index.d.mts +37 -49
- package/lib/components/VIcon/index.d.mts +79 -234
- package/lib/components/VImg/index.d.mts +80 -61
- package/lib/{labs → components}/VInfiniteScroll/VInfiniteScroll.mjs +2 -2
- package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -0
- package/lib/{labs → components}/VInfiniteScroll/index.d.mts +59 -54
- package/lib/components/VInfiniteScroll/index.mjs.map +1 -0
- package/lib/components/VInput/index.d.mts +90 -66
- package/lib/components/VItemGroup/index.d.mts +115 -99
- package/lib/components/VKbd/index.d.mts +21 -46
- package/lib/components/VLabel/index.d.mts +24 -47
- package/lib/components/VLayout/index.d.mts +55 -96
- package/lib/components/VLazy/index.d.mts +43 -50
- package/lib/components/VList/index.d.mts +403 -468
- package/lib/components/VLocaleProvider/index.d.mts +24 -46
- package/lib/components/VMain/index.d.mts +24 -47
- package/lib/components/VMenu/index.d.mts +573 -324
- package/lib/components/VMessages/index.d.mts +41 -49
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +1 -0
- package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +1 -0
- package/lib/components/VNavigationDrawer/index.d.mts +95 -67
- package/lib/components/VOverlay/index.d.mts +138 -76
- package/lib/components/VPagination/index.d.mts +114 -73
- package/lib/components/VParallax/index.d.mts +31 -47
- package/lib/components/VProgressCircular/index.d.mts +48 -53
- package/lib/components/VProgressLinear/index.d.mts +84 -63
- package/lib/components/VRadio/index.d.mts +93 -61
- package/lib/components/VRadioGroup/index.d.mts +130 -77
- package/lib/components/VRangeSlider/index.d.mts +169 -86
- package/lib/components/VRating/index.d.mts +75 -62
- package/lib/components/VResponsive/index.d.mts +33 -47
- package/lib/components/VSelect/VSelect.mjs +13 -10
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +1191 -546
- package/lib/components/VSelectionControl/index.d.mts +48 -53
- package/lib/components/VSelectionControlGroup/index.d.mts +58 -57
- package/lib/components/VSheet/index.d.mts +37 -48
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -0
- package/lib/{labs → components}/VSkeletonLoader/index.d.mts +36 -51
- package/lib/components/VSkeletonLoader/index.mjs.map +1 -0
- package/lib/components/VSlideGroup/index.d.mts +106 -105
- package/lib/components/VSlider/index.d.mts +166 -85
- package/lib/components/VSnackbar/index.d.mts +572 -324
- package/lib/components/VStepper/VStepper.mjs +137 -98
- package/lib/components/VStepper/VStepper.mjs.map +1 -1
- package/lib/components/VStepper/VStepper.sass +38 -198
- package/lib/{labs → components}/VStepper/VStepperActions.mjs +2 -2
- package/lib/components/VStepper/VStepperActions.mjs.map +1 -0
- package/lib/components/VStepper/VStepperHeader.mjs.map +1 -0
- package/lib/{labs → components}/VStepper/VStepperItem.mjs +2 -2
- package/lib/components/VStepper/VStepperItem.mjs.map +1 -0
- package/lib/{labs → components}/VStepper/VStepperWindow.mjs +1 -1
- package/lib/components/VStepper/VStepperWindow.mjs.map +1 -0
- package/lib/{labs → components}/VStepper/VStepperWindowItem.mjs +1 -1
- package/lib/components/VStepper/VStepperWindowItem.mjs.map +1 -0
- package/lib/components/VStepper/_variables.scss +21 -31
- package/lib/{labs → components}/VStepper/index.d.mts +368 -340
- package/lib/components/VStepper/index.mjs +6 -17
- package/lib/components/VStepper/index.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.mts +168 -86
- package/lib/components/VSystemBar/index.d.mts +39 -51
- package/lib/components/VTable/index.d.mts +45 -51
- package/lib/components/VTabs/index.d.mts +177 -132
- package/lib/components/VTextField/index.d.mts +665 -470
- package/lib/components/VTextarea/index.d.mts +469 -297
- package/lib/components/VThemeProvider/index.d.mts +26 -48
- package/lib/components/VTimeline/index.d.mts +98 -106
- package/lib/components/VToolbar/index.d.mts +119 -150
- package/lib/components/VTooltip/index.d.mts +565 -321
- package/lib/components/VValidation/index.d.mts +108 -62
- package/lib/components/VVirtualScroll/index.d.mts +18 -46
- package/lib/components/VWindow/index.d.mts +130 -110
- package/lib/components/index.d.mts +19973 -12833
- package/lib/components/index.mjs +5 -2
- package/lib/components/index.mjs.map +1 -1
- package/lib/components/transitions/index.d.mts +455 -819
- package/lib/composables/color.mjs +2 -2
- package/lib/composables/color.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +36 -36
- package/lib/labs/VDataIterator/index.d.mts +112 -75
- package/lib/labs/VDataTable/index.d.mts +1456 -530
- package/lib/labs/VDateInput/index.d.mts +260 -157
- package/lib/labs/VDatePicker/index.d.mts +1100 -889
- package/lib/labs/VDateRangePicker/index.d.mts +207 -129
- package/lib/labs/VOtpInput/index.d.mts +80 -64
- package/lib/labs/VPicker/index.d.mts +74 -97
- package/lib/labs/components.d.mts +7514 -10029
- package/lib/labs/components.mjs +0 -4
- package/lib/labs/components.mjs.map +1 -1
- package/lib/labs/date/adapters/vuetify.mjs +6 -3
- package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
- package/lib/locale/fr.mjs +19 -19
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/util/colorUtils.mjs +3 -0
- package/lib/util/colorUtils.mjs.map +1 -1
- package/lib/util/helpers.mjs +8 -1
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +1 -1
- package/lib/components/VStepper/VStepperContent.mjs +0 -114
- package/lib/components/VStepper/VStepperContent.mjs.map +0 -1
- package/lib/components/VStepper/VStepperStep.mjs +0 -134
- package/lib/components/VStepper/VStepperStep.mjs.map +0 -1
- package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +0 -1
- package/lib/labs/VBottomSheet/index.mjs.map +0 -1
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +0 -1
- package/lib/labs/VInfiniteScroll/index.mjs.map +0 -1
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +0 -1
- package/lib/labs/VSkeletonLoader/index.mjs.map +0 -1
- package/lib/labs/VStepper/VStepper.mjs +0 -149
- package/lib/labs/VStepper/VStepper.mjs.map +0 -1
- package/lib/labs/VStepper/VStepper.sass +0 -53
- package/lib/labs/VStepper/VStepperActions.mjs.map +0 -1
- package/lib/labs/VStepper/VStepperHeader.mjs.map +0 -1
- package/lib/labs/VStepper/VStepperItem.mjs.map +0 -1
- package/lib/labs/VStepper/VStepperWindow.mjs.map +0 -1
- package/lib/labs/VStepper/VStepperWindowItem.mjs.map +0 -1
- package/lib/labs/VStepper/_variables.scss +0 -27
- package/lib/labs/VStepper/index.mjs +0 -7
- package/lib/labs/VStepper/index.mjs.map +0 -1
- /package/lib/{labs → components}/VBottomSheet/VBottomSheet.css +0 -0
- /package/lib/{labs → components}/VBottomSheet/VBottomSheet.sass +0 -0
- /package/lib/{labs → components}/VBottomSheet/_variables.scss +0 -0
- /package/lib/{labs → components}/VBottomSheet/index.mjs +0 -0
- /package/lib/{labs → components}/VInfiniteScroll/VInfiniteScroll.css +0 -0
- /package/lib/{labs → components}/VInfiniteScroll/VInfiniteScroll.sass +0 -0
- /package/lib/{labs → components}/VInfiniteScroll/_variables.scss +0 -0
- /package/lib/{labs → components}/VInfiniteScroll/index.mjs +0 -0
- /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.css +0 -0
- /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.mjs +0 -0
- /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.sass +0 -0
- /package/lib/{labs → components}/VSkeletonLoader/_variables.scss +0 -0
- /package/lib/{labs → components}/VSkeletonLoader/index.mjs +0 -0
- /package/lib/{labs → components}/VStepper/VStepper.css +0 -0
- /package/lib/{labs → components}/VStepper/VStepperHeader.mjs +0 -0
- /package/lib/{labs → components}/VStepper/VStepperItem.css +0 -0
- /package/lib/{labs → components}/VStepper/VStepperItem.sass +0 -0
package/lib/util/helpers.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.mjs","names":["camelize","capitalize","computed","Fragment","reactive","toRefs","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","window","getComputedStyle","getPropertyValue","parentNode","convertToUnit","str","unit","isNaN","String","isFinite","Number","isObject","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","exclude","found","create","rest","some","RegExp","test","omit","clone","forEach","prop","only","include","onRE","isOn","bubblingEvents","compositionIgnoreKeys","isComposingIgnoreKey","e","isComposing","includes","filterInputAttrs","attrs","events","inputEvents","rootAttrs","inputAttrs","assign","arrayDiff","diff","push","wrapInArray","defaultFilter","search","toString","toLocaleLowerCase","indexOf","searchItems","items","toLowerCase","trim","filter","debounce","fn","delay","timeoutId","_len","args","_key","clearTimeout","setTimeout","throttle","limit","throttling","getPrefixedSlots","prefix","slots","startsWith","reduce","clamp","min","max","Math","getDecimals","trimmedStr","padEnd","char","repeat","padStart","chunk","size","chunked","substr","humanReadableFileSize","bytes","base","abs","toFixed","camelizeObjectKeys","mergeDeep","source","target","arrayFn","out","sourceProperty","targetProperty","fillArray","fill","flattenFragments","nodes","map","node","type","children","flat","randomHexColor","n","random","slice","toKebabCase","cache","get","kebab","set","Map","findChildren","vnode","child","component","subTree","findChildrenWithProvide","getOwnPropertySymbols","provides","_arr","WeakMap","_pointer","CircularBuffer","constructor","_classPrivateFieldInitSpec","writable","val","_classPrivateFieldGet","_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"],"sources":["../../src/util/helpers.ts"],"sourcesContent":["// Utilities\nimport { camelize, capitalize, computed, Fragment, reactive, toRefs, watchEffect } 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 Slots,\n ToRefs,\n VNode,\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 =\n | boolean | null | undefined // Ignored\n | string // Lookup by key, can use dot notation for nested objects\n | (string | number)[] // Nested lookup by key, each array item is a key in the next level\n | ((item: Record<string, any>, 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 = +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 } else if (isNaN(+str!)) {\n return String(str)\n } else if (!isFinite(+str!)) {\n return undefined\n } else {\n return `${Number(str)}${unit}`\n }\n}\n\nexport function isObject (obj: any): obj is object {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj)\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 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 pick<\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 pick<\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\nexport function only<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, include: U[]): Pick<T, U> {\n const clone = {} as T\n\n include.forEach(prop => clone[prop] = obj[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] = pick(attrs, [onRE])\n const inputEvents = omit(events, bubblingEvents)\n const [rootAttrs, inputAttrs] = pick(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 ? []\n : Array.isArray(v)\n ? v as any : [v]\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 searchItems<T extends any = any> (items: T[], search: string): T[] {\n if (!search) return items\n search = search.toString().toLowerCase()\n if (search.trim() === '') return items\n\n return items.filter((item: any) => Object.keys(item).some(key => defaultFilter(getObjectValueByPath(item, key), search, item)))\n}\n\nexport function debounce (fn: Function, delay: number) {\n let timeoutId = 0 as any\n return (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), delay)\n }\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\ntype Writable<T> = {\n -readonly [P in keyof T]: T[P]\n}\n\n/**\n * Filters slots to only those starting with `prefix`, removing the prefix\n */\nexport function getPrefixedSlots (prefix: string, slots: Slots): Slots {\n return Object.keys(slots)\n .filter(k => k.startsWith(prefix))\n .reduce<Writable<Slots>>((obj, k) => {\n obj[k.replace(prefix, '')] = slots[k]\n return obj\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 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 camelizeObjectKeys (obj: Record<string, any> | null | undefined) {\n if (!obj) return {}\n\n return Object.keys(obj).reduce((o: any, key: string) => {\n o[camelize(key)] = obj[key]\n return o\n }, {})\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 objects\n if (\n isObject(sourceProperty) &&\n isObject(targetProperty)\n ) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn)\n\n continue\n }\n\n if (Array.isArray(sourceProperty) && Array.isArray(targetProperty) && arrayFn) {\n out[key] = arrayFn(sourceProperty, targetProperty)\n\n continue\n }\n\n out[key] = targetProperty\n }\n\n return out\n}\n\nexport function fillArray<T> (length: number, obj: T) {\n return Array(length).fill(obj)\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 const randomHexColor = () => {\n const n = (Math.random() * 0xfffff * 1000000).toString(16)\n return '#' + n.slice(0, 6)\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 findChildren (vnode?: VNodeChild): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') {\n return []\n }\n\n if (Array.isArray(vnode)) {\n return vnode\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (vnode.component) {\n return [vnode.component, ...findChildren(vnode.component?.subTree)]\n .filter(v => v)\n .flat(1)\n }\n\n return []\n}\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 (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 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\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\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>>): ToRefs<T>\nexport function destructComputed<T extends object> (getter: ComputedGetter<T>) {\n const refs = reactive({}) as T\n const base = computed(getter)\n watchEffect(() => {\n for (const key in base.value) {\n refs[key] = base.value[key]\n }\n }, { flush: 'sync' })\n return toRefs(refs)\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\nexport type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | 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> | 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"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.mjs","names":["camelize","capitalize","Comment","computed","Fragment","isVNode","reactive","toRefs","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","window","getComputedStyle","getPropertyValue","parentNode","convertToUnit","str","unit","isNaN","String","isFinite","Number","isObject","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","exclude","found","create","rest","some","RegExp","test","omit","clone","forEach","prop","only","include","onRE","isOn","bubblingEvents","compositionIgnoreKeys","isComposingIgnoreKey","e","isComposing","includes","filterInputAttrs","attrs","events","inputEvents","rootAttrs","inputAttrs","assign","arrayDiff","diff","push","wrapInArray","defaultFilter","search","toString","toLocaleLowerCase","indexOf","searchItems","items","toLowerCase","trim","filter","debounce","fn","delay","timeoutId","_len","args","_key","clearTimeout","setTimeout","throttle","limit","throttling","getPrefixedSlots","prefix","slots","startsWith","reduce","clamp","min","max","Math","getDecimals","trimmedStr","padEnd","char","repeat","padStart","chunk","size","chunked","substr","humanReadableFileSize","bytes","base","abs","toFixed","camelizeObjectKeys","mergeDeep","source","target","arrayFn","out","sourceProperty","targetProperty","fillArray","fill","flattenFragments","nodes","map","node","type","children","flat","randomHexColor","n","random","slice","toKebabCase","cache","get","kebab","set","Map","findChildren","vnode","child","component","subTree","findChildrenWithProvide","getOwnPropertySymbols","provides","_arr","WeakMap","_pointer","CircularBuffer","constructor","_classPrivateFieldInitSpec","writable","val","_classPrivateFieldGet","_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"],"sources":["../../src/util/helpers.ts"],"sourcesContent":["// Utilities\nimport { camelize, capitalize, Comment, computed, Fragment, isVNode, reactive, toRefs, watchEffect } 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 Slots,\n ToRefs,\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 =\n | boolean | null | undefined // Ignored\n | string // Lookup by key, can use dot notation for nested objects\n | (string | number)[] // Nested lookup by key, each array item is a key in the next level\n | ((item: Record<string, any>, 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 = +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 } else if (isNaN(+str!)) {\n return String(str)\n } else if (!isFinite(+str!)) {\n return undefined\n } else {\n return `${Number(str)}${unit}`\n }\n}\n\nexport function isObject (obj: any): obj is object {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj)\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 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 pick<\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 pick<\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\nexport function only<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, include: U[]): Pick<T, U> {\n const clone = {} as T\n\n include.forEach(prop => clone[prop] = obj[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] = pick(attrs, [onRE])\n const inputEvents = omit(events, bubblingEvents)\n const [rootAttrs, inputAttrs] = pick(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 ? []\n : Array.isArray(v)\n ? v as any : [v]\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 searchItems<T extends any = any> (items: T[], search: string): T[] {\n if (!search) return items\n search = search.toString().toLowerCase()\n if (search.trim() === '') return items\n\n return items.filter((item: any) => Object.keys(item).some(key => defaultFilter(getObjectValueByPath(item, key), search, item)))\n}\n\nexport function debounce (fn: Function, delay: number) {\n let timeoutId = 0 as any\n return (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), delay)\n }\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\ntype Writable<T> = {\n -readonly [P in keyof T]: T[P]\n}\n\n/**\n * Filters slots to only those starting with `prefix`, removing the prefix\n */\nexport function getPrefixedSlots (prefix: string, slots: Slots): Slots {\n return Object.keys(slots)\n .filter(k => k.startsWith(prefix))\n .reduce<Writable<Slots>>((obj, k) => {\n obj[k.replace(prefix, '')] = slots[k]\n return obj\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 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 camelizeObjectKeys (obj: Record<string, any> | null | undefined) {\n if (!obj) return {}\n\n return Object.keys(obj).reduce((o: any, key: string) => {\n o[camelize(key)] = obj[key]\n return o\n }, {})\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 objects\n if (\n isObject(sourceProperty) &&\n isObject(targetProperty)\n ) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn)\n\n continue\n }\n\n if (Array.isArray(sourceProperty) && Array.isArray(targetProperty) && arrayFn) {\n out[key] = arrayFn(sourceProperty, targetProperty)\n\n continue\n }\n\n out[key] = targetProperty\n }\n\n return out\n}\n\nexport function fillArray<T> (length: number, obj: T) {\n return Array(length).fill(obj)\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 const randomHexColor = () => {\n const n = (Math.random() * 0xfffff * 1000000).toString(16)\n return '#' + n.slice(0, 6)\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 findChildren (vnode?: VNodeChild): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') {\n return []\n }\n\n if (Array.isArray(vnode)) {\n return vnode\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (vnode.component) {\n return [vnode.component, ...findChildren(vnode.component?.subTree)]\n .filter(v => v)\n .flat(1)\n }\n\n return []\n}\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 (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 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\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\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>>): ToRefs<T>\nexport function destructComputed<T extends object> (getter: ComputedGetter<T>) {\n const refs = reactive({}) as T\n const base = computed(getter)\n watchEffect(() => {\n for (const key in base.value) {\n refs[key] = base.value[key]\n }\n }, { flush: 'sync' })\n return toRefs(refs)\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\nexport type EventProp<T extends any[] = any[], F = (...args: T) => any> = F | 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> | 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"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
// Components
|
|
4
|
-
import { VTabTransition, VTabReverseTransition } from "../transitions/index.mjs"; // Mixins
|
|
5
|
-
import { inject as RegistrableInject } from "../../mixins/registrable.mjs"; // Helpers
|
|
6
|
-
import { convertToUnit } from "../../util/helpers.mjs"; // Utilities
|
|
7
|
-
import mixins from "../../util/mixins.mjs"; // Types
|
|
8
|
-
const baseMixins = mixins(RegistrableInject('stepper', 'v-stepper-content', 'v-stepper'));
|
|
9
|
-
/* @vue/component */
|
|
10
|
-
export default baseMixins.extend().extend({
|
|
11
|
-
name: 'v-stepper-content',
|
|
12
|
-
inject: {
|
|
13
|
-
isVerticalProvided: {
|
|
14
|
-
from: 'isVertical'
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
props: {
|
|
18
|
-
step: {
|
|
19
|
-
type: [Number, String],
|
|
20
|
-
required: true
|
|
21
|
-
}
|
|
22
|
-
},
|
|
23
|
-
data() {
|
|
24
|
-
return {
|
|
25
|
-
height: 0,
|
|
26
|
-
// Must be null to allow
|
|
27
|
-
// previous comparison
|
|
28
|
-
isActive: null,
|
|
29
|
-
isReverse: false,
|
|
30
|
-
isVertical: this.isVerticalProvided
|
|
31
|
-
};
|
|
32
|
-
},
|
|
33
|
-
computed: {
|
|
34
|
-
computedTransition() {
|
|
35
|
-
// Fix for #8978
|
|
36
|
-
const reverse = this.$vuetify.rtl ? !this.isReverse : this.isReverse;
|
|
37
|
-
return reverse ? VTabReverseTransition : VTabTransition;
|
|
38
|
-
},
|
|
39
|
-
styles() {
|
|
40
|
-
if (!this.isVertical) return {};
|
|
41
|
-
return {
|
|
42
|
-
height: convertToUnit(this.height)
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
watch: {
|
|
47
|
-
isActive(current, previous) {
|
|
48
|
-
// If active and the previous state
|
|
49
|
-
// was null, is just booting up
|
|
50
|
-
if (current && previous == null) {
|
|
51
|
-
this.height = 'auto';
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
if (!this.isVertical) return;
|
|
55
|
-
if (this.isActive) this.enter();else this.leave();
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
mounted() {
|
|
59
|
-
this.$refs.wrapper.addEventListener('transitionend', this.onTransition, false);
|
|
60
|
-
this.stepper && this.stepper.register(this);
|
|
61
|
-
},
|
|
62
|
-
beforeDestroy() {
|
|
63
|
-
this.$refs.wrapper.removeEventListener('transitionend', this.onTransition, false);
|
|
64
|
-
this.stepper && this.stepper.unregister(this);
|
|
65
|
-
},
|
|
66
|
-
methods: {
|
|
67
|
-
onTransition(e) {
|
|
68
|
-
if (!this.isActive || e.propertyName !== 'height') return;
|
|
69
|
-
this.height = 'auto';
|
|
70
|
-
},
|
|
71
|
-
enter() {
|
|
72
|
-
let scrollHeight = 0;
|
|
73
|
-
|
|
74
|
-
// Render bug with height
|
|
75
|
-
requestAnimationFrame(() => {
|
|
76
|
-
scrollHeight = this.$refs.wrapper.scrollHeight;
|
|
77
|
-
});
|
|
78
|
-
this.height = 0;
|
|
79
|
-
|
|
80
|
-
// Give the collapsing element time to collapse
|
|
81
|
-
setTimeout(() => this.isActive && (this.height = scrollHeight || 'auto'), 450);
|
|
82
|
-
},
|
|
83
|
-
leave() {
|
|
84
|
-
this.height = this.$refs.wrapper.clientHeight;
|
|
85
|
-
setTimeout(() => this.height = 0, 10);
|
|
86
|
-
},
|
|
87
|
-
toggle(step, reverse) {
|
|
88
|
-
this.isActive = step.toString() === this.step.toString();
|
|
89
|
-
this.isReverse = reverse;
|
|
90
|
-
}
|
|
91
|
-
},
|
|
92
|
-
render(h) {
|
|
93
|
-
const contentData = {
|
|
94
|
-
staticClass: 'v-stepper__content'
|
|
95
|
-
};
|
|
96
|
-
const wrapperData = {
|
|
97
|
-
staticClass: 'v-stepper__wrapper',
|
|
98
|
-
style: this.styles,
|
|
99
|
-
ref: 'wrapper'
|
|
100
|
-
};
|
|
101
|
-
if (!this.isVertical) {
|
|
102
|
-
contentData.directives = [{
|
|
103
|
-
name: 'show',
|
|
104
|
-
value: this.isActive
|
|
105
|
-
}];
|
|
106
|
-
}
|
|
107
|
-
const wrapper = h('div', wrapperData, [this.$slots.default]);
|
|
108
|
-
const content = h('div', contentData, [wrapper]);
|
|
109
|
-
return h(this.computedTransition, {
|
|
110
|
-
on: this.$listeners
|
|
111
|
-
}, [content]);
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
//# sourceMappingURL=VStepperContent.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VStepperContent.mjs","names":["VTabTransition","VTabReverseTransition","inject","RegistrableInject","convertToUnit","mixins","baseMixins","extend","name","isVerticalProvided","from","props","step","type","Number","String","required","data","height","isActive","isReverse","isVertical","computed","computedTransition","reverse","$vuetify","rtl","styles","watch","current","previous","enter","leave","mounted","$refs","wrapper","addEventListener","onTransition","stepper","register","beforeDestroy","removeEventListener","unregister","methods","e","propertyName","scrollHeight","requestAnimationFrame","setTimeout","clientHeight","toggle","toString","render","h","contentData","staticClass","wrapperData","style","ref","directives","value","$slots","default","content","on","$listeners"],"sources":["../../../src/components/VStepper/VStepperContent.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Components\nimport {\n VTabTransition,\n VTabReverseTransition,\n} from '../transitions'\n\n// Mixins\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Helpers\nimport { convertToUnit } from '../../util/helpers'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode, FunctionalComponentOptions, VNodeData } from 'vue'\n\nconst baseMixins = mixins(\n RegistrableInject('stepper', 'v-stepper-content', 'v-stepper')\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n wrapper: HTMLElement\n }\n isVerticalProvided: boolean\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-stepper-content',\n\n inject: {\n isVerticalProvided: {\n from: 'isVertical',\n },\n },\n\n props: {\n step: {\n type: [Number, String],\n required: true,\n },\n },\n\n data () {\n return {\n height: 0 as number | string,\n // Must be null to allow\n // previous comparison\n isActive: null as boolean | null,\n isReverse: false,\n isVertical: this.isVerticalProvided,\n }\n },\n\n computed: {\n computedTransition (): FunctionalComponentOptions {\n // Fix for #8978\n const reverse = this.$vuetify.rtl ? !this.isReverse : this.isReverse\n\n return reverse\n ? VTabReverseTransition\n : VTabTransition\n },\n styles (): object {\n if (!this.isVertical) return {}\n\n return {\n height: convertToUnit(this.height),\n }\n },\n },\n\n watch: {\n isActive (current, previous) {\n // If active and the previous state\n // was null, is just booting up\n if (current && previous == null) {\n this.height = 'auto'\n return\n }\n\n if (!this.isVertical) return\n\n if (this.isActive) this.enter()\n else this.leave()\n },\n },\n\n mounted () {\n this.$refs.wrapper.addEventListener(\n 'transitionend',\n this.onTransition,\n false\n )\n this.stepper && this.stepper.register(this)\n },\n\n beforeDestroy () {\n this.$refs.wrapper.removeEventListener(\n 'transitionend',\n this.onTransition,\n false\n )\n this.stepper && this.stepper.unregister(this)\n },\n\n methods: {\n onTransition (e: TransitionEvent) {\n if (!this.isActive ||\n e.propertyName !== 'height'\n ) return\n\n this.height = 'auto'\n },\n enter () {\n let scrollHeight = 0\n\n // Render bug with height\n requestAnimationFrame(() => {\n scrollHeight = this.$refs.wrapper.scrollHeight\n })\n\n this.height = 0\n\n // Give the collapsing element time to collapse\n setTimeout(() => this.isActive && (this.height = (scrollHeight || 'auto')), 450)\n },\n leave () {\n this.height = this.$refs.wrapper.clientHeight\n setTimeout(() => (this.height = 0), 10)\n },\n toggle (step: string | number, reverse: boolean) {\n this.isActive = step.toString() === this.step.toString()\n this.isReverse = reverse\n },\n },\n\n render (h): VNode {\n const contentData = {\n staticClass: 'v-stepper__content',\n } as VNodeData\n const wrapperData = {\n staticClass: 'v-stepper__wrapper',\n style: this.styles,\n ref: 'wrapper',\n }\n\n if (!this.isVertical) {\n contentData.directives = [{\n name: 'show',\n value: this.isActive,\n }]\n }\n\n const wrapper = h('div', wrapperData, [this.$slots.default])\n const content = h('div', contentData, [wrapper])\n\n return h(this.computedTransition, {\n on: this.$listeners,\n }, [content])\n },\n})\n"],"mappings":"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"}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
// Components
|
|
4
|
-
import VIcon from "../VIcon/index.mjs"; // Mixins
|
|
5
|
-
import Colorable from "../../mixins/colorable.mjs";
|
|
6
|
-
import { inject as RegistrableInject } from "../../mixins/registrable.mjs"; // Directives
|
|
7
|
-
import ripple from "../../directives/ripple/index.mjs"; // Utilities
|
|
8
|
-
import mixins from "../../util/mixins.mjs";
|
|
9
|
-
import { keyCodes } from "../../util/helpers.mjs"; // Types
|
|
10
|
-
const baseMixins = mixins(Colorable, RegistrableInject('stepper', 'v-stepper-step', 'v-stepper'));
|
|
11
|
-
/* @vue/component */
|
|
12
|
-
export default baseMixins.extend().extend({
|
|
13
|
-
name: 'v-stepper-step',
|
|
14
|
-
directives: {
|
|
15
|
-
ripple
|
|
16
|
-
},
|
|
17
|
-
inject: ['stepClick'],
|
|
18
|
-
props: {
|
|
19
|
-
color: {
|
|
20
|
-
type: String,
|
|
21
|
-
default: 'primary'
|
|
22
|
-
},
|
|
23
|
-
complete: Boolean,
|
|
24
|
-
completeIcon: {
|
|
25
|
-
type: String,
|
|
26
|
-
default: '$complete'
|
|
27
|
-
},
|
|
28
|
-
editable: Boolean,
|
|
29
|
-
editIcon: {
|
|
30
|
-
type: String,
|
|
31
|
-
default: '$edit'
|
|
32
|
-
},
|
|
33
|
-
errorIcon: {
|
|
34
|
-
type: String,
|
|
35
|
-
default: '$error'
|
|
36
|
-
},
|
|
37
|
-
rules: {
|
|
38
|
-
type: Array,
|
|
39
|
-
default: () => []
|
|
40
|
-
},
|
|
41
|
-
step: [Number, String]
|
|
42
|
-
},
|
|
43
|
-
data() {
|
|
44
|
-
return {
|
|
45
|
-
isActive: false,
|
|
46
|
-
isInactive: true
|
|
47
|
-
};
|
|
48
|
-
},
|
|
49
|
-
computed: {
|
|
50
|
-
classes() {
|
|
51
|
-
return {
|
|
52
|
-
'v-stepper__step--active': this.isActive,
|
|
53
|
-
'v-stepper__step--editable': this.editable,
|
|
54
|
-
'v-stepper__step--inactive': this.isInactive,
|
|
55
|
-
'v-stepper__step--error error--text': this.hasError,
|
|
56
|
-
'v-stepper__step--complete': this.complete
|
|
57
|
-
};
|
|
58
|
-
},
|
|
59
|
-
hasError() {
|
|
60
|
-
return this.rules.some(validate => validate() !== true);
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
mounted() {
|
|
64
|
-
this.stepper && this.stepper.register(this);
|
|
65
|
-
},
|
|
66
|
-
beforeDestroy() {
|
|
67
|
-
this.stepper && this.stepper.unregister(this);
|
|
68
|
-
},
|
|
69
|
-
methods: {
|
|
70
|
-
click(e) {
|
|
71
|
-
e.stopPropagation();
|
|
72
|
-
this.$emit('click', e);
|
|
73
|
-
if (this.editable) {
|
|
74
|
-
this.stepClick(this.step);
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
genIcon(icon) {
|
|
78
|
-
return this.$createElement(VIcon, icon);
|
|
79
|
-
},
|
|
80
|
-
genLabel() {
|
|
81
|
-
return this.$createElement('div', {
|
|
82
|
-
staticClass: 'v-stepper__label'
|
|
83
|
-
}, this.$slots.default);
|
|
84
|
-
},
|
|
85
|
-
genStep() {
|
|
86
|
-
const color = !this.hasError && (this.complete || this.isActive) ? this.color : false;
|
|
87
|
-
return this.$createElement('span', this.setBackgroundColor(color, {
|
|
88
|
-
staticClass: 'v-stepper__step__step'
|
|
89
|
-
}), this.genStepContent());
|
|
90
|
-
},
|
|
91
|
-
genStepContent() {
|
|
92
|
-
const children = [];
|
|
93
|
-
if (this.hasError) {
|
|
94
|
-
children.push(this.genIcon(this.errorIcon));
|
|
95
|
-
} else if (this.complete) {
|
|
96
|
-
if (this.editable) {
|
|
97
|
-
children.push(this.genIcon(this.editIcon));
|
|
98
|
-
} else {
|
|
99
|
-
children.push(this.genIcon(this.completeIcon));
|
|
100
|
-
}
|
|
101
|
-
} else {
|
|
102
|
-
children.push(String(this.step));
|
|
103
|
-
}
|
|
104
|
-
return children;
|
|
105
|
-
},
|
|
106
|
-
keyboardClick(e) {
|
|
107
|
-
if (e.keyCode === keyCodes.space) {
|
|
108
|
-
this.click(e);
|
|
109
|
-
}
|
|
110
|
-
},
|
|
111
|
-
toggle(step) {
|
|
112
|
-
this.isActive = step.toString() === this.step.toString();
|
|
113
|
-
this.isInactive = Number(step) < Number(this.step);
|
|
114
|
-
}
|
|
115
|
-
},
|
|
116
|
-
render(h) {
|
|
117
|
-
return h('div', {
|
|
118
|
-
attrs: {
|
|
119
|
-
tabindex: this.editable ? 0 : -1
|
|
120
|
-
},
|
|
121
|
-
staticClass: 'v-stepper__step',
|
|
122
|
-
class: this.classes,
|
|
123
|
-
directives: [{
|
|
124
|
-
name: 'ripple',
|
|
125
|
-
value: this.editable
|
|
126
|
-
}],
|
|
127
|
-
on: {
|
|
128
|
-
click: this.click,
|
|
129
|
-
keydown: this.keyboardClick
|
|
130
|
-
}
|
|
131
|
-
}, [this.genStep(), this.genLabel()]);
|
|
132
|
-
}
|
|
133
|
-
});
|
|
134
|
-
//# sourceMappingURL=VStepperStep.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VStepperStep.mjs","names":["VIcon","Colorable","inject","RegistrableInject","ripple","mixins","keyCodes","baseMixins","extend","name","directives","props","color","type","String","default","complete","Boolean","completeIcon","editable","editIcon","errorIcon","rules","Array","step","Number","data","isActive","isInactive","computed","classes","hasError","some","validate","mounted","stepper","register","beforeDestroy","unregister","methods","click","e","stopPropagation","$emit","stepClick","genIcon","icon","$createElement","genLabel","staticClass","$slots","genStep","setBackgroundColor","genStepContent","children","push","keyboardClick","keyCode","space","toggle","toString","render","h","attrs","tabindex","class","value","on","keydown"],"sources":["../../../src/components/VStepper/VStepperStep.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Components\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\ntype VuetifyStepperRuleValidator = () => string | boolean\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject('stepper', 'v-stepper-step', 'v-stepper')\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n stepClick: (step: number | string) => void\n}\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'v-stepper-step',\n\n directives: { ripple },\n\n inject: ['stepClick'],\n\n props: {\n color: {\n type: String,\n default: 'primary',\n },\n complete: Boolean,\n completeIcon: {\n type: String,\n default: '$complete',\n },\n editable: Boolean,\n editIcon: {\n type: String,\n default: '$edit',\n },\n errorIcon: {\n type: String,\n default: '$error',\n },\n rules: {\n type: Array,\n default: () => [],\n } as PropValidator<VuetifyStepperRuleValidator[]>,\n step: [Number, String],\n },\n\n data () {\n return {\n isActive: false,\n isInactive: true,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-stepper__step--active': this.isActive,\n 'v-stepper__step--editable': this.editable,\n 'v-stepper__step--inactive': this.isInactive,\n 'v-stepper__step--error error--text': this.hasError,\n 'v-stepper__step--complete': this.complete,\n }\n },\n hasError (): boolean {\n return this.rules.some(validate => validate() !== true)\n },\n },\n\n mounted () {\n this.stepper && this.stepper.register(this)\n },\n\n beforeDestroy () {\n this.stepper && this.stepper.unregister(this)\n },\n\n methods: {\n click (e: MouseEvent | KeyboardEvent) {\n e.stopPropagation()\n\n this.$emit('click', e)\n\n if (this.editable) {\n this.stepClick(this.step)\n }\n },\n genIcon (icon: string) {\n return this.$createElement(VIcon, icon)\n },\n genLabel () {\n return this.$createElement('div', {\n staticClass: 'v-stepper__label',\n }, this.$slots.default)\n },\n genStep () {\n const color = (!this.hasError && (this.complete || this.isActive)) ? this.color : false\n\n return this.$createElement('span', this.setBackgroundColor(color, {\n staticClass: 'v-stepper__step__step',\n }), this.genStepContent())\n },\n genStepContent () {\n const children = []\n\n if (this.hasError) {\n children.push(this.genIcon(this.errorIcon))\n } else if (this.complete) {\n if (this.editable) {\n children.push(this.genIcon(this.editIcon))\n } else {\n children.push(this.genIcon(this.completeIcon))\n }\n } else {\n children.push(String(this.step))\n }\n\n return children\n },\n keyboardClick (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.space) {\n this.click(e)\n }\n },\n toggle (step: number | string) {\n this.isActive = step.toString() === this.step.toString()\n this.isInactive = Number(step) < Number(this.step)\n },\n },\n\n render (h): VNode {\n return h('div', {\n attrs: {\n tabindex: this.editable ? 0 : -1,\n },\n staticClass: 'v-stepper__step',\n class: this.classes,\n directives: [{\n name: 'ripple',\n value: this.editable,\n }],\n on: {\n click: this.click,\n keydown: this.keyboardClick,\n },\n }, [\n this.genStep(),\n this.genLabel(),\n ])\n },\n})\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VBottomSheet.mjs","names":["makeVDialogProps","VDialog","useProxiedModel","genericComponent","propsFactory","useRender","makeVBottomSheetProps","inset","Boolean","transition","VBottomSheet","name","props","emits","value","setup","_ref","slots","isActive","dialogProps","filterProps","_createVNode","_mergeProps","contentClass","$event","class","style"],"sources":["../../../src/labs/VBottomSheet/VBottomSheet.tsx"],"sourcesContent":["// Styles\nimport './VBottomSheet.sass'\n\n// Components\nimport { makeVDialogProps, VDialog } from '@/components/VDialog/VDialog'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const makeVBottomSheetProps = propsFactory({\n inset: Boolean,\n\n ...makeVDialogProps({\n transition: 'bottom-sheet-transition',\n }),\n}, 'VBottomSheet')\n\nexport const VBottomSheet = genericComponent<OverlaySlots>()({\n name: 'VBottomSheet',\n\n props: makeVBottomSheetProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n\n useRender(() => {\n const [dialogProps] = VDialog.filterProps(props)\n\n return (\n <VDialog\n { ...dialogProps }\n contentClass={[\n 'v-bottom-sheet__content',\n props.contentClass,\n ]}\n v-model={ isActive.value }\n class={[\n 'v-bottom-sheet',\n {\n 'v-bottom-sheet--inset': props.inset,\n },\n props.class,\n ]}\n style={ props.style }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VBottomSheet = InstanceType<typeof VBottomSheet>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,gBAAgB,EAAEC,OAAO,gDAElC;AAAA,SACSC,eAAe,8CAExB;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAGA,OAAO,MAAMC,qBAAqB,GAAGF,YAAY,CAAC;EAChDG,KAAK,EAAEC,OAAO;EAEd,GAAGR,gBAAgB,CAAC;IAClBS,UAAU,EAAE;EACd,CAAC;AACH,CAAC,EAAE,cAAc,CAAC;AAElB,OAAO,MAAMC,YAAY,GAAGP,gBAAgB,EAAgB,CAAC;EAC3DQ,IAAI,EAAE,cAAc;EAEpBC,KAAK,EAAEN,qBAAqB,EAAE;EAE9BO,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAc,IAAK;EAC3C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAME,QAAQ,GAAGhB,eAAe,CAACU,KAAK,EAAE,YAAY,CAAC;IAErDP,SAAS,CAAC,MAAM;MACd,MAAM,CAACc,WAAW,CAAC,GAAGlB,OAAO,CAACmB,WAAW,CAACR,KAAK,CAAC;MAEhD,OAAAS,YAAA,CAAApB,OAAA,EAAAqB,WAAA,CAESH,WAAW;QAAA,gBACF,CACZ,yBAAyB,EACzBP,KAAK,CAACW,YAAY,CACnB;QAAA,cACSL,QAAQ,CAACJ,KAAK;QAAA,uBAAAU,MAAA,IAAdN,QAAQ,CAACJ,KAAK,GAAAU,MAAA;QAAA,SACjB,CACL,gBAAgB,EAChB;UACE,uBAAuB,EAAEZ,KAAK,CAACL;QACjC,CAAC,EACDK,KAAK,CAACa,KAAK,CACZ;QAAA,SACOb,KAAK,CAACc;MAAK,IACTT,KAAK;IAGrB,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["VBottomSheet"],"sources":["../../../src/labs/VBottomSheet/index.ts"],"sourcesContent":["export { VBottomSheet } from './VBottomSheet'\n"],"mappings":"SAASA,YAAY"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VInfiniteScroll.mjs","names":["VBtn","VProgressCircular","makeDimensionProps","useDimension","useIntersectionObserver","useLocale","makeTagProps","computed","nextTick","onMounted","ref","shallowRef","watch","convertToUnit","defineComponent","genericComponent","propsFactory","useRender","makeVInfiniteScrollProps","color","String","direction","type","default","validator","v","includes","side","mode","margin","Number","loadMoreText","emptyText","VInfiniteScrollIntersect","name","props","required","rootRef","rootMargin","emits","intersect","isIntersecting","setup","_ref","emit","intersectionRef","entries","undefined","val","_createVNode","_createTextVNode","VInfiniteScroll","load","options","_ref2","slots","rootEl","startStatus","endStatus","setScrollAmount","amount","value","property","getScrollAmount","getScrollSize","getContainerSize","setStatus","status","getStatus","previousScrollSize","handleIntersect","_isIntersecting","intersecting","done","window","requestAnimationFrame","t","renderSide","onClick","slotProps","error","empty","loading","dimensionStyles","Tag","tag","hasStartIntersect","hasEndIntersect","intersectMode"],"sources":["../../../src/labs/VInfiniteScroll/VInfiniteScroll.tsx"],"sourcesContent":["// Styles\nimport './VInfiniteScroll.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useLocale } from '@/composables/locale'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { computed, nextTick, onMounted, ref, shallowRef, watch } from 'vue'\nimport { convertToUnit, defineComponent, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type InfiniteScrollSide = 'start' | 'end' | 'both'\nexport type InfiniteScrollStatus = 'ok' | 'empty' | 'loading' | 'error'\n\ntype InfiniteScrollSlot = {\n side: InfiniteScrollSide\n props: Record<string, any>\n}\n\ntype VInfiniteScrollSlots = {\n default: never\n loading: InfiniteScrollSlot\n error: InfiniteScrollSlot\n empty: InfiniteScrollSlot\n 'load-more': InfiniteScrollSlot\n}\n\nexport const makeVInfiniteScrollProps = propsFactory({\n color: String,\n direction: {\n type: String as PropType<'vertical' | 'horizontal'>,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n },\n side: {\n type: String as PropType<InfiniteScrollSide>,\n default: 'end',\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n },\n mode: {\n type: String as PropType<'intersect' | 'manual'>,\n default: 'intersect',\n validator: (v: any) => ['intersect', 'manual'].includes(v),\n },\n margin: [Number, String],\n loadMoreText: {\n type: String,\n default: '$vuetify.infiniteScroll.loadMore',\n },\n emptyText: {\n type: String,\n default: '$vuetify.infiniteScroll.empty',\n },\n\n ...makeDimensionProps(),\n ...makeTagProps(),\n}, 'VInfiniteScroll')\n\nexport const VInfiniteScrollIntersect = defineComponent({\n name: 'VInfiniteScrollIntersect',\n\n props: {\n side: {\n type: String as PropType<InfiniteScrollSide>,\n required: true,\n },\n rootRef: null,\n rootMargin: String,\n },\n\n emits: {\n intersect: (side: InfiniteScrollSide, isIntersecting: boolean) => true,\n },\n\n setup (props, { emit }) {\n const { intersectionRef, isIntersecting } = useIntersectionObserver(entries => {\n }, props.rootMargin ? {\n rootMargin: props.rootMargin,\n } : undefined)\n\n watch(isIntersecting, async val => {\n emit('intersect', props.side, val)\n })\n\n useRender(() => (\n <div class=\"v-infinite-scroll-intersect\" ref={ intersectionRef }> </div>\n ))\n\n return {}\n },\n})\n\nexport const VInfiniteScroll = genericComponent<VInfiniteScrollSlots>()({\n name: 'VInfiniteScroll',\n\n props: makeVInfiniteScrollProps(),\n\n emits: {\n load: (options: { side: InfiniteScrollSide, done: (status: InfiniteScrollStatus) => void }) => true,\n },\n\n setup (props, { slots, emit }) {\n const rootEl = ref<HTMLDivElement>()\n const startStatus = shallowRef<InfiniteScrollStatus>('ok')\n const endStatus = shallowRef<InfiniteScrollStatus>('ok')\n const margin = computed(() => convertToUnit(props.margin))\n const isIntersecting = shallowRef(false)\n\n function setScrollAmount (amount: number) {\n if (!rootEl.value) return\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n rootEl.value[property] = amount\n }\n\n function getScrollAmount () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft'\n return rootEl.value[property]\n }\n\n function getScrollSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'scrollHeight' : 'scrollWidth'\n return rootEl.value[property]\n }\n\n function getContainerSize () {\n if (!rootEl.value) return 0\n\n const property = props.direction === 'vertical' ? 'clientHeight' : 'clientWidth'\n return rootEl.value[property]\n }\n\n onMounted(() => {\n if (!rootEl.value) return\n\n if (props.side === 'start') {\n setScrollAmount(getScrollSize())\n } else if (props.side === 'both') {\n setScrollAmount(getScrollSize() / 2 - getContainerSize() / 2)\n }\n })\n\n function setStatus (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (side === 'start') {\n startStatus.value = status\n } else if (side === 'end') {\n endStatus.value = status\n }\n }\n\n function getStatus (side: string) {\n return side === 'start' ? startStatus.value : endStatus.value\n }\n\n let previousScrollSize = 0\n function handleIntersect (side: InfiniteScrollSide, _isIntersecting: boolean) {\n isIntersecting.value = _isIntersecting\n if (isIntersecting.value) {\n intersecting(side)\n }\n }\n\n function intersecting (side: InfiniteScrollSide) {\n if (props.mode !== 'manual' && !isIntersecting.value) return\n\n const status = getStatus(side)\n if (!rootEl.value || status === 'loading') return\n\n previousScrollSize = getScrollSize()\n setStatus(side, 'loading')\n\n function done (status: InfiniteScrollStatus) {\n setStatus(side, status)\n\n nextTick(() => {\n if (status === 'empty' || status === 'error') return\n\n if (status === 'ok' && side === 'start') {\n setScrollAmount(getScrollSize() - previousScrollSize + getScrollAmount())\n }\n if (props.mode !== 'manual') {\n nextTick(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n intersecting(side)\n })\n })\n })\n })\n }\n })\n }\n\n emit('load', { side, done })\n }\n\n const { t } = useLocale()\n\n function renderSide (side: InfiniteScrollSide, status: InfiniteScrollStatus) {\n if (props.side !== side && props.side !== 'both') return\n\n const onClick = () => intersecting(side)\n const slotProps = { side, props: { onClick, color: props.color } }\n\n if (status === 'error') return slots.error?.(slotProps)\n\n if (status === 'empty') return slots.empty?.(slotProps) ?? <div>{ t(props.emptyText) }</div>\n\n if (props.mode === 'manual') {\n if (status === 'loading') {\n return slots.loading?.(slotProps) ?? (\n <VProgressCircular indeterminate color={ props.color } />\n )\n }\n\n return slots['load-more']?.(slotProps) ?? (\n <VBtn variant=\"outlined\" color={ props.color } onClick={ onClick }>\n { t(props.loadMoreText) }\n </VBtn>\n )\n }\n\n return slots.loading?.(slotProps) ?? (\n <VProgressCircular indeterminate color={ props.color } />\n )\n }\n\n const { dimensionStyles } = useDimension(props)\n\n useRender(() => {\n const Tag = props.tag\n const hasStartIntersect = props.side === 'start' || props.side === 'both'\n const hasEndIntersect = props.side === 'end' || props.side === 'both'\n const intersectMode = props.mode === 'intersect'\n\n return (\n <Tag\n ref={ rootEl }\n class={[\n 'v-infinite-scroll',\n `v-infinite-scroll--${props.direction}`,\n {\n 'v-infinite-scroll--start': hasStartIntersect,\n 'v-infinite-scroll--end': hasEndIntersect,\n },\n ]}\n style={ dimensionStyles.value }\n >\n <div class=\"v-infinite-scroll__side\">\n { renderSide('start', startStatus.value) }\n </div>\n\n { rootEl.value && hasStartIntersect && intersectMode && (\n <VInfiniteScrollIntersect\n key=\"start\"\n side=\"start\"\n onIntersect={ handleIntersect }\n rootRef={ rootEl.value }\n rootMargin={ margin.value }\n />\n )}\n\n { slots.default?.() }\n\n { rootEl.value && hasEndIntersect && intersectMode && (\n <VInfiniteScrollIntersect\n key=\"end\"\n side=\"end\"\n onIntersect={ handleIntersect }\n rootRef={ rootEl.value }\n rootMargin={ margin.value }\n />\n )}\n\n <div class=\"v-infinite-scroll__side\">\n { renderSide('end', endStatus.value) }\n </div>\n </Tag>\n )\n })\n },\n})\n\nexport type VInfiniteScroll = InstanceType<typeof VInfiniteScroll>\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["VInfiniteScroll"],"sources":["../../../src/labs/VInfiniteScroll/index.ts"],"sourcesContent":["export { VInfiniteScroll } from './VInfiniteScroll'\n"],"mappings":"SAASA,eAAe"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VSkeletonLoader.mjs","names":["useBackgroundColor","makeDimensionProps","useDimension","makeElevationProps","useElevation","useLocale","makeThemeProps","provideTheme","computed","toRef","genericComponent","propsFactory","useRender","wrapInArray","rootTypes","actions","article","avatar","button","card","chip","divider","heading","image","ossein","paragraph","sentences","subtitle","table","text","genBone","type","children","arguments","length","undefined","_createVNode","genBones","bone","split","Array","from","map","genStructure","includes","mapBones","push","bones","replace","makeVSkeletonLoaderProps","boilerplate","Boolean","color","String","loading","loadingText","default","VSkeletonLoader","name","props","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","dimensionStyles","elevationClasses","themeClasses","t","items","join","isLoading","value"],"sources":["../../../src/labs/VSkeletonLoader/VSkeletonLoader.tsx"],"sourcesContent":["// Styles\nimport './VSkeletonLoader.sass'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { useLocale } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType, VNode } from 'vue'\n\ntype VSkeletonBone<T> = T | VSkeletonBone<T>[]\n\nexport type VSkeletonBones = VSkeletonBone<VNode>\nexport type VSkeletonLoaderType = keyof typeof rootTypes\n\nexport const rootTypes = {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, heading',\n 'card-avatar': 'image, list-item-avatar',\n chip: 'chip',\n 'date-picker': 'list-item, heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n divider: 'divider',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n ossein: 'ossein',\n paragraph: 'text@3',\n sentences: 'text@2',\n subtitle: 'text',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'chip, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'text@6',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n} as const\n\nfunction genBone (type: string, children: VSkeletonBones = []) {\n return (\n <div\n class={[\n 'v-skeleton-loader__bone',\n `v-skeleton-loader__${type}`,\n ]}\n >\n { children }\n </div>\n )\n}\n\nfunction genBones (bone: string) {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [VSkeletonLoaderType, number]\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(() => genStructure(type))\n}\n\nfunction genStructure (type?: string): VSkeletonBones {\n let children: VSkeletonBones = []\n\n if (!type) return children\n\n // TODO: figure out a better way to type this\n const bone = (rootTypes as Record<string, string>)[type]\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.includes(',')) return mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.includes('@')) return genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.includes(',')) children = mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.includes('@')) children = genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(genStructure(bone))\n\n return [genBone(type, children)]\n}\n\nfunction mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(genStructure)\n}\n\nexport const makeVSkeletonLoaderProps = propsFactory({\n boilerplate: Boolean,\n color: String,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$vuetify.loading',\n },\n type: {\n type: [String, Array] as PropType<\n | VSkeletonLoaderType | (string & {})\n | ReadonlyArray<VSkeletonLoaderType | (string & {})>\n >,\n default: 'ossein',\n },\n\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeThemeProps(),\n}, 'VSkeletonLoader')\n\nexport const VSkeletonLoader = genericComponent()({\n name: 'VSkeletonLoader',\n\n props: makeVSkeletonLoaderProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { themeClasses } = provideTheme(props)\n const { t } = useLocale()\n\n const items = computed(() => genStructure(wrapInArray(props.type).join(',')))\n\n useRender(() => {\n const isLoading = !slots.default || props.loading\n\n return (\n <div\n class={[\n 'v-skeleton-loader',\n {\n 'v-skeleton-loader--boilerplate': props.boilerplate,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n elevationClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n isLoading ? dimensionStyles.value : {},\n ]}\n aria-busy={ !props.boilerplate ? isLoading : undefined }\n aria-live={ !props.boilerplate ? 'polite' : undefined }\n aria-label={ !props.boilerplate ? t(props.loadingText) : undefined }\n role={ !props.boilerplate ? 'alert' : undefined }\n >\n { isLoading ? items.value : slots.default?.() }\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VSkeletonLoader = InstanceType<typeof VSkeletonLoader>\n"],"mappings":"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"}
|