@vuetify/nightly 3.4.0-alpha.1-dev.2023-10-21 → 3.4.0-alpha.1-dev.2023-10-26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/CHANGELOG.md +6 -3
  2. package/dist/_component-variables-labs.sass +1 -4
  3. package/dist/_component-variables.sass +3 -0
  4. package/dist/json/attributes.json +26 -26
  5. package/dist/json/importMap-labs.json +20 -52
  6. package/dist/json/importMap.json +56 -24
  7. package/dist/json/web-types.json +30 -30
  8. package/dist/vuetify-labs.css +725 -724
  9. package/dist/vuetify-labs.d.ts +41344 -36620
  10. package/dist/vuetify-labs.esm.js +5358 -5336
  11. package/dist/vuetify-labs.esm.js.map +1 -1
  12. package/dist/vuetify-labs.js +5357 -5335
  13. package/dist/vuetify-labs.min.css +2 -2
  14. package/dist/vuetify.css +385 -13
  15. package/dist/vuetify.d.ts +19744 -12997
  16. package/dist/vuetify.esm.js +735 -145
  17. package/dist/vuetify.esm.js.map +1 -1
  18. package/dist/vuetify.js +734 -144
  19. package/dist/vuetify.js.map +1 -1
  20. package/dist/vuetify.min.css +2 -2
  21. package/dist/vuetify.min.js +808 -779
  22. package/dist/vuetify.min.js.map +1 -1
  23. package/lib/components/VAlert/index.d.mts +114 -106
  24. package/lib/components/VApp/index.d.mts +24 -47
  25. package/lib/components/VAppBar/index.d.mts +219 -175
  26. package/lib/components/VAutocomplete/VAutocomplete.mjs +13 -10
  27. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  28. package/lib/components/VAutocomplete/index.d.mts +1203 -551
  29. package/lib/components/VAvatar/index.d.mts +45 -53
  30. package/lib/components/VBadge/index.d.mts +66 -58
  31. package/lib/components/VBanner/index.d.mts +106 -146
  32. package/lib/components/VBottomNavigation/index.d.mts +72 -63
  33. package/lib/{labs → components}/VBottomSheet/VBottomSheet.mjs +1 -1
  34. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -0
  35. package/lib/{labs → components}/VBottomSheet/index.d.mts +153 -83
  36. package/lib/components/VBottomSheet/index.mjs.map +1 -0
  37. package/lib/components/VBreadcrumbs/index.d.mts +89 -147
  38. package/lib/components/VBtn/index.d.mts +107 -66
  39. package/lib/components/VBtnGroup/index.d.mts +38 -51
  40. package/lib/components/VBtnToggle/index.d.mts +53 -55
  41. package/lib/components/VCard/index.d.mts +238 -298
  42. package/lib/components/VCarousel/index.d.mts +251 -131
  43. package/lib/components/VCheckbox/index.d.mts +259 -146
  44. package/lib/components/VChip/index.d.mts +157 -76
  45. package/lib/components/VChipGroup/index.d.mts +76 -55
  46. package/lib/components/VCode/index.d.mts +21 -46
  47. package/lib/components/VColorPicker/index.d.mts +112 -61
  48. package/lib/components/VCombobox/VCombobox.mjs +13 -10
  49. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  50. package/lib/components/VCombobox/index.d.mts +1203 -551
  51. package/lib/components/VCounter/index.d.mts +45 -57
  52. package/lib/components/VDefaultsProvider/index.d.mts +24 -49
  53. package/lib/components/VDialog/index.d.mts +583 -329
  54. package/lib/components/VDivider/index.d.mts +30 -49
  55. package/lib/components/VExpansionPanel/index.d.mts +188 -212
  56. package/lib/components/VField/index.d.mts +88 -105
  57. package/lib/components/VFileInput/index.d.mts +472 -287
  58. package/lib/components/VFooter/index.d.mts +42 -52
  59. package/lib/components/VForm/index.d.mts +149 -51
  60. package/lib/components/VGrid/index.d.mts +146 -196
  61. package/lib/components/VHover/index.d.mts +37 -49
  62. package/lib/components/VIcon/index.d.mts +79 -234
  63. package/lib/components/VImg/index.d.mts +80 -61
  64. package/lib/components/VInput/index.d.mts +90 -66
  65. package/lib/components/VItemGroup/index.d.mts +115 -99
  66. package/lib/components/VKbd/index.d.mts +21 -46
  67. package/lib/components/VLabel/index.d.mts +24 -47
  68. package/lib/components/VLayout/index.d.mts +55 -96
  69. package/lib/components/VLazy/index.d.mts +43 -50
  70. package/lib/components/VList/index.d.mts +403 -468
  71. package/lib/components/VLocaleProvider/index.d.mts +24 -46
  72. package/lib/components/VMain/index.d.mts +24 -47
  73. package/lib/components/VMenu/index.d.mts +573 -324
  74. package/lib/components/VMessages/index.d.mts +41 -49
  75. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +1 -0
  76. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +1 -0
  77. package/lib/components/VNavigationDrawer/index.d.mts +95 -67
  78. package/lib/components/VOverlay/index.d.mts +138 -76
  79. package/lib/components/VPagination/index.d.mts +114 -73
  80. package/lib/components/VParallax/index.d.mts +31 -47
  81. package/lib/components/VProgressCircular/index.d.mts +48 -53
  82. package/lib/components/VProgressLinear/index.d.mts +84 -63
  83. package/lib/components/VRadio/index.d.mts +93 -61
  84. package/lib/components/VRadioGroup/index.d.mts +130 -77
  85. package/lib/components/VRangeSlider/index.d.mts +169 -86
  86. package/lib/components/VRating/index.d.mts +75 -62
  87. package/lib/components/VResponsive/index.d.mts +33 -47
  88. package/lib/components/VSelect/VSelect.mjs +13 -10
  89. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  90. package/lib/components/VSelect/index.d.mts +1191 -546
  91. package/lib/components/VSelectionControl/index.d.mts +48 -53
  92. package/lib/components/VSelectionControlGroup/index.d.mts +58 -57
  93. package/lib/components/VSheet/index.d.mts +37 -48
  94. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -0
  95. package/lib/{labs → components}/VSkeletonLoader/index.d.mts +36 -51
  96. package/lib/components/VSkeletonLoader/index.mjs.map +1 -0
  97. package/lib/components/VSlideGroup/index.d.mts +106 -105
  98. package/lib/components/VSlider/index.d.mts +166 -85
  99. package/lib/components/VSnackbar/index.d.mts +572 -324
  100. package/lib/components/VStepper/VStepper.mjs +137 -98
  101. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  102. package/lib/components/VStepper/VStepper.sass +38 -198
  103. package/lib/{labs → components}/VStepper/VStepperActions.mjs +2 -2
  104. package/lib/components/VStepper/VStepperActions.mjs.map +1 -0
  105. package/lib/components/VStepper/VStepperHeader.mjs.map +1 -0
  106. package/lib/{labs → components}/VStepper/VStepperItem.mjs +2 -2
  107. package/lib/components/VStepper/VStepperItem.mjs.map +1 -0
  108. package/lib/{labs → components}/VStepper/VStepperWindow.mjs +1 -1
  109. package/lib/components/VStepper/VStepperWindow.mjs.map +1 -0
  110. package/lib/{labs → components}/VStepper/VStepperWindowItem.mjs +1 -1
  111. package/lib/components/VStepper/VStepperWindowItem.mjs.map +1 -0
  112. package/lib/components/VStepper/_variables.scss +21 -31
  113. package/lib/{labs → components}/VStepper/index.d.mts +368 -340
  114. package/lib/components/VStepper/index.mjs +6 -17
  115. package/lib/components/VStepper/index.mjs.map +1 -1
  116. package/lib/components/VSwitch/index.d.mts +168 -86
  117. package/lib/components/VSystemBar/index.d.mts +39 -51
  118. package/lib/components/VTable/index.d.mts +45 -51
  119. package/lib/components/VTabs/index.d.mts +177 -132
  120. package/lib/components/VTextField/index.d.mts +665 -470
  121. package/lib/components/VTextarea/index.d.mts +469 -297
  122. package/lib/components/VThemeProvider/index.d.mts +26 -48
  123. package/lib/components/VTimeline/index.d.mts +98 -106
  124. package/lib/components/VToolbar/index.d.mts +119 -150
  125. package/lib/components/VTooltip/index.d.mts +565 -321
  126. package/lib/components/VValidation/index.d.mts +108 -62
  127. package/lib/components/VVirtualScroll/index.d.mts +18 -46
  128. package/lib/components/VWindow/index.d.mts +130 -110
  129. package/lib/components/index.d.mts +19539 -12808
  130. package/lib/components/index.mjs +4 -2
  131. package/lib/components/index.mjs.map +1 -1
  132. package/lib/components/transitions/index.d.mts +455 -819
  133. package/lib/composables/color.mjs +2 -2
  134. package/lib/composables/color.mjs.map +1 -1
  135. package/lib/entry-bundler.mjs +1 -1
  136. package/lib/framework.mjs +1 -1
  137. package/lib/index.d.mts +22 -22
  138. package/lib/labs/VDataIterator/index.d.mts +112 -75
  139. package/lib/labs/VDataTable/index.d.mts +1456 -530
  140. package/lib/labs/VDateInput/index.d.mts +260 -157
  141. package/lib/labs/VDatePicker/index.d.mts +1100 -889
  142. package/lib/labs/VDateRangePicker/index.d.mts +207 -129
  143. package/lib/labs/VInfiniteScroll/index.d.mts +59 -54
  144. package/lib/labs/VOtpInput/index.d.mts +80 -64
  145. package/lib/labs/VPicker/index.d.mts +74 -97
  146. package/lib/labs/components.d.mts +7777 -9883
  147. package/lib/labs/components.mjs +0 -3
  148. package/lib/labs/components.mjs.map +1 -1
  149. package/lib/labs/date/adapters/vuetify.mjs +6 -3
  150. package/lib/labs/date/adapters/vuetify.mjs.map +1 -1
  151. package/lib/locale/fr.mjs +19 -19
  152. package/lib/locale/fr.mjs.map +1 -1
  153. package/lib/util/colorUtils.mjs +3 -0
  154. package/lib/util/colorUtils.mjs.map +1 -1
  155. package/lib/util/helpers.mjs +8 -1
  156. package/lib/util/helpers.mjs.map +1 -1
  157. package/package.json +1 -1
  158. package/lib/components/VStepper/VStepperContent.mjs +0 -114
  159. package/lib/components/VStepper/VStepperContent.mjs.map +0 -1
  160. package/lib/components/VStepper/VStepperStep.mjs +0 -134
  161. package/lib/components/VStepper/VStepperStep.mjs.map +0 -1
  162. package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +0 -1
  163. package/lib/labs/VBottomSheet/index.mjs.map +0 -1
  164. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +0 -1
  165. package/lib/labs/VSkeletonLoader/index.mjs.map +0 -1
  166. package/lib/labs/VStepper/VStepper.mjs +0 -149
  167. package/lib/labs/VStepper/VStepper.mjs.map +0 -1
  168. package/lib/labs/VStepper/VStepper.sass +0 -53
  169. package/lib/labs/VStepper/VStepperActions.mjs.map +0 -1
  170. package/lib/labs/VStepper/VStepperHeader.mjs.map +0 -1
  171. package/lib/labs/VStepper/VStepperItem.mjs.map +0 -1
  172. package/lib/labs/VStepper/VStepperWindow.mjs.map +0 -1
  173. package/lib/labs/VStepper/VStepperWindowItem.mjs.map +0 -1
  174. package/lib/labs/VStepper/_variables.scss +0 -27
  175. package/lib/labs/VStepper/index.mjs +0 -7
  176. package/lib/labs/VStepper/index.mjs.map +0 -1
  177. /package/lib/{labs → components}/VBottomSheet/VBottomSheet.css +0 -0
  178. /package/lib/{labs → components}/VBottomSheet/VBottomSheet.sass +0 -0
  179. /package/lib/{labs → components}/VBottomSheet/_variables.scss +0 -0
  180. /package/lib/{labs → components}/VBottomSheet/index.mjs +0 -0
  181. /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.css +0 -0
  182. /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.mjs +0 -0
  183. /package/lib/{labs → components}/VSkeletonLoader/VSkeletonLoader.sass +0 -0
  184. /package/lib/{labs → components}/VSkeletonLoader/_variables.scss +0 -0
  185. /package/lib/{labs → components}/VSkeletonLoader/index.mjs +0 -0
  186. /package/lib/{labs → components}/VStepper/VStepper.css +0 -0
  187. /package/lib/{labs → components}/VStepper/VStepperHeader.mjs +0 -0
  188. /package/lib/{labs → components}/VStepper/VStepperItem.css +0 -0
  189. /package/lib/{labs → components}/VStepper/VStepperItem.sass +0 -0
@@ -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,7 +1,7 @@
1
1
  {
2
2
  "name": "@vuetify/nightly",
3
3
  "description": "Vue Material Component Framework",
4
- "version": "3.4.0-alpha.1-dev.2023-10-21",
4
+ "version": "3.4.0-alpha.1-dev.2023-10-26",
5
5
  "author": {
6
6
  "name": "John Leider",
7
7
  "email": "john@vuetifyjs.com"
@@ -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":"AAAA;AACA;AAEA;AAAA,SAEEA,cAAc,EACdC,qBAAqB,oCAGvB;AAAA,SACSC,MAAM,IAAIC,iBAAiB,wCAEpC;AAAA,SACSC,aAAa,kCAEtB;AAAA,OACOC,MAAM,+BAEb;AAGA,MAAMC,UAAU,GAAGD,MAAM,CACvBF,iBAAiB,CAAC,SAAS,EAAE,mBAAmB,EAAE,WAAW,CAAC,CAC/D;AASD;AACA,eAAeG,UAAU,CAACC,MAAM,EAAW,CAACA,MAAM,CAAC;EACjDC,IAAI,EAAE,mBAAmB;EAEzBN,MAAM,EAAE;IACNO,kBAAkB,EAAE;MAClBC,IAAI,EAAE;IACR;EACF,CAAC;EAEDC,KAAK,EAAE;IACLC,IAAI,EAAE;MACJC,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,CAAC;MACtBC,QAAQ,EAAE;IACZ;EACF,CAAC;EAEDC,IAAIA,CAAA,EAAI;IACN,OAAO;MACLC,MAAM,EAAE,CAAoB;MAC5B;MACA;MACAC,QAAQ,EAAE,IAAsB;MAChCC,SAAS,EAAE,KAAK;MAChBC,UAAU,EAAE,IAAI,CAACZ;IACnB,CAAC;EACH,CAAC;EAEDa,QAAQ,EAAE;IACRC,kBAAkBA,CAAA,EAAgC;MAChD;MACA,MAAMC,OAAO,GAAG,IAAI,CAACC,QAAQ,CAACC,GAAG,GAAG,CAAC,IAAI,CAACN,SAAS,GAAG,IAAI,CAACA,SAAS;MAEpE,OAAOI,OAAO,GACVvB,qBAAqB,GACrBD,cAAc;IACpB,CAAC;IACD2B,MAAMA,CAAA,EAAY;MAChB,IAAI,CAAC,IAAI,CAACN,UAAU,EAAE,OAAO,CAAC,CAAC;MAE/B,OAAO;QACLH,MAAM,EAAEd,aAAa,CAAC,IAAI,CAACc,MAAM;MACnC,CAAC;IACH;EACF,CAAC;EAEDU,KAAK,EAAE;IACLT,QAAQA,CAAEU,OAAO,EAAEC,QAAQ,EAAE;MAC3B;MACA;MACA,IAAID,OAAO,IAAIC,QAAQ,IAAI,IAAI,EAAE;QAC/B,IAAI,CAACZ,MAAM,GAAG,MAAM;QACpB;MACF;MAEA,IAAI,CAAC,IAAI,CAACG,UAAU,EAAE;MAEtB,IAAI,IAAI,CAACF,QAAQ,EAAE,IAAI,CAACY,KAAK,EAAE,MAC1B,IAAI,CAACC,KAAK,EAAE;IACnB;EACF,CAAC;EAEDC,OAAOA,CAAA,EAAI;IACT,IAAI,CAACC,KAAK,CAACC,OAAO,CAACC,gBAAgB,CACjC,eAAe,EACf,IAAI,CAACC,YAAY,EACjB,KAAK,CACN;IACD,IAAI,CAACC,OAAO,IAAI,IAAI,CAACA,OAAO,CAACC,QAAQ,CAAC,IAAI,CAAC;EAC7C,CAAC;EAEDC,aAAaA,CAAA,EAAI;IACf,IAAI,CAACN,KAAK,CAACC,OAAO,CAACM,mBAAmB,CACpC,eAAe,EACf,IAAI,CAACJ,YAAY,EACjB,KAAK,CACN;IACD,IAAI,CAACC,OAAO,IAAI,IAAI,CAACA,OAAO,CAACI,UAAU,CAAC,IAAI,CAAC;EAC/C,CAAC;EAEDC,OAAO,EAAE;IACPN,YAAYA,CAAEO,CAAkB,EAAE;MAChC,IAAI,CAAC,IAAI,CAACzB,QAAQ,IAChByB,CAAC,CAACC,YAAY,KAAK,QAAQ,EAC3B;MAEF,IAAI,CAAC3B,MAAM,GAAG,MAAM;IACtB,CAAC;IACDa,KAAKA,CAAA,EAAI;MACP,IAAIe,YAAY,GAAG,CAAC;;MAEpB;MACAC,qBAAqB,CAAC,MAAM;QAC1BD,YAAY,GAAG,IAAI,CAACZ,KAAK,CAACC,OAAO,CAACW,YAAY;MAChD,CAAC,CAAC;MAEF,IAAI,CAAC5B,MAAM,GAAG,CAAC;;MAEf;MACA8B,UAAU,CAAC,MAAM,IAAI,CAAC7B,QAAQ,KAAK,IAAI,CAACD,MAAM,GAAI4B,YAAY,IAAI,MAAO,CAAC,EAAE,GAAG,CAAC;IAClF,CAAC;IACDd,KAAKA,CAAA,EAAI;MACP,IAAI,CAACd,MAAM,GAAG,IAAI,CAACgB,KAAK,CAACC,OAAO,CAACc,YAAY;MAC7CD,UAAU,CAAC,MAAO,IAAI,CAAC9B,MAAM,GAAG,CAAE,EAAE,EAAE,CAAC;IACzC,CAAC;IACDgC,MAAMA,CAAEtC,IAAqB,EAAEY,OAAgB,EAAE;MAC/C,IAAI,CAACL,QAAQ,GAAGP,IAAI,CAACuC,QAAQ,EAAE,KAAK,IAAI,CAACvC,IAAI,CAACuC,QAAQ,EAAE;MACxD,IAAI,CAAC/B,SAAS,GAAGI,OAAO;IAC1B;EACF,CAAC;EAED4B,MAAMA,CAAEC,CAAC,EAAS;IAChB,MAAMC,WAAW,GAAG;MAClBC,WAAW,EAAE;IACf,CAAc;IACd,MAAMC,WAAW,GAAG;MAClBD,WAAW,EAAE,oBAAoB;MACjCE,KAAK,EAAE,IAAI,CAAC9B,MAAM;MAClB+B,GAAG,EAAE;IACP,CAAC;IAED,IAAI,CAAC,IAAI,CAACrC,UAAU,EAAE;MACpBiC,WAAW,CAACK,UAAU,GAAG,CAAC;QACxBnD,IAAI,EAAE,MAAM;QACZoD,KAAK,EAAE,IAAI,CAACzC;MACd,CAAC,CAAC;IACJ;IAEA,MAAMgB,OAAO,GAAGkB,CAAC,CAAC,KAAK,EAAEG,WAAW,EAAE,CAAC,IAAI,CAACK,MAAM,CAACC,OAAO,CAAC,CAAC;IAC5D,MAAMC,OAAO,GAAGV,CAAC,CAAC,KAAK,EAAEC,WAAW,EAAE,CAACnB,OAAO,CAAC,CAAC;IAEhD,OAAOkB,CAAC,CAAC,IAAI,CAAC9B,kBAAkB,EAAE;MAChCyC,EAAE,EAAE,IAAI,CAACC;IACX,CAAC,EAAE,CAACF,OAAO,CAAC,CAAC;EACf;AACF,CAAC,CAAC"}
@@ -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":"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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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","names":["VSkeletonLoader"],"sources":["../../../src/labs/VSkeletonLoader/index.ts"],"sourcesContent":["export { VSkeletonLoader } from './VSkeletonLoader'\n"],"mappings":"SAASA,eAAe"}