vuetify 3.1.14 → 3.1.16

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 (113) hide show
  1. package/dist/json/attributes.json +193 -141
  2. package/dist/json/importMap.json +8 -8
  3. package/dist/json/tags.json +13 -0
  4. package/dist/json/web-types.json +513 -282
  5. package/dist/vuetify-labs.css +465 -457
  6. package/dist/vuetify-labs.d.ts +521 -163
  7. package/dist/vuetify-labs.esm.js +272 -179
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +272 -179
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +17 -9
  12. package/dist/vuetify.d.ts +470 -145
  13. package/dist/vuetify.esm.js +178 -106
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +178 -106
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +638 -624
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/components/VAutocomplete/VAutocomplete.css +9 -0
  21. package/lib/components/VAutocomplete/VAutocomplete.mjs +50 -6
  22. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  23. package/lib/components/VAutocomplete/VAutocomplete.sass +10 -0
  24. package/lib/components/VAutocomplete/index.d.ts +29 -17
  25. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +31 -16
  26. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  27. package/lib/components/VBreadcrumbs/index.d.ts +3 -3
  28. package/lib/components/VCard/VCard.mjs.map +1 -1
  29. package/lib/components/VCard/index.d.ts +21 -16
  30. package/lib/components/VCheckbox/VCheckbox.mjs +2 -2
  31. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  32. package/lib/components/VCheckbox/index.d.ts +22 -1
  33. package/lib/components/VCombobox/VCombobox.css +1 -1
  34. package/lib/components/VCombobox/VCombobox.mjs +6 -4
  35. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  36. package/lib/components/VCombobox/VCombobox.sass +1 -1
  37. package/lib/components/VCombobox/index.d.ts +29 -17
  38. package/lib/components/VDialog/VDialog.mjs +2 -2
  39. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  40. package/lib/components/VField/VField.css +0 -1
  41. package/lib/components/VField/VField.sass +0 -1
  42. package/lib/components/VField/index.d.ts +6 -0
  43. package/lib/components/VFileInput/VFileInput.mjs +13 -17
  44. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  45. package/lib/components/VFileInput/index.d.ts +68 -23
  46. package/lib/components/VInput/VInput.mjs +14 -7
  47. package/lib/components/VInput/VInput.mjs.map +1 -1
  48. package/lib/components/VInput/index.d.ts +22 -1
  49. package/lib/components/VList/VList.mjs +3 -22
  50. package/lib/components/VList/VList.mjs.map +1 -1
  51. package/lib/components/VOverlay/locationStrategies.mjs +9 -4
  52. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  53. package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -2
  54. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  55. package/lib/components/VRadioGroup/index.d.ts +22 -1
  56. package/lib/components/VRangeSlider/VRangeSlider.mjs +2 -2
  57. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  58. package/lib/components/VRangeSlider/index.d.ts +22 -1
  59. package/lib/components/VSelect/VSelect.mjs +6 -0
  60. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  61. package/lib/components/VSelect/index.d.ts +32 -17
  62. package/lib/components/VSlideGroup/VSlideGroup.mjs +2 -2
  63. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  64. package/lib/components/VSlider/VSlider.mjs +2 -2
  65. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  66. package/lib/components/VSlider/index.d.ts +22 -1
  67. package/lib/components/VSwitch/VSwitch.mjs +5 -3
  68. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  69. package/lib/components/VSwitch/index.d.ts +43 -1
  70. package/lib/components/VTextField/VTextField.mjs +4 -12
  71. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  72. package/lib/components/VTextField/index.d.ts +70 -22
  73. package/lib/components/VTextarea/VTextarea.mjs +4 -12
  74. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  75. package/lib/components/VTextarea/index.d.ts +61 -22
  76. package/lib/components/VTreeview/_mixins.sass +0 -0
  77. package/lib/components/VTreeview/util/filterTreeItems.mjs +0 -0
  78. package/lib/components/VValidation/index.d.ts +10 -1
  79. package/lib/components/index.d.ts +468 -143
  80. package/lib/composables/focus.mjs +3 -2
  81. package/lib/composables/focus.mjs.map +1 -1
  82. package/lib/composables/items.mjs +7 -2
  83. package/lib/composables/items.mjs.map +1 -1
  84. package/lib/entry-bundler.mjs +1 -1
  85. package/lib/framework.mjs +1 -1
  86. package/lib/iconsets/mdi-svg.mjs +2 -2
  87. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  88. package/lib/index.d.ts +2 -2
  89. package/lib/labs/VDataTable/VDataTable.mjs +3 -3
  90. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  91. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  92. package/lib/labs/VDataTable/VDataTableHeaders.mjs +34 -20
  93. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  94. package/lib/labs/VDataTable/VDataTableRow.mjs +2 -4
  95. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  96. package/lib/labs/VDataTable/VDataTableRows.mjs +52 -44
  97. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  98. package/lib/labs/VDataTable/VDataTableServer.mjs +3 -2
  99. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  100. package/lib/labs/VDataTable/VDataTableVirtual.mjs +0 -1
  101. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  102. package/lib/labs/VDataTable/composables/options.mjs +2 -1
  103. package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
  104. package/lib/labs/VDataTable/index.d.ts +44 -11
  105. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +1 -0
  106. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  107. package/lib/labs/VSkeletonLoader/index.d.ts +9 -9
  108. package/lib/labs/components.d.ts +53 -20
  109. package/lib/locale/el.mjs +0 -0
  110. package/lib/locale/index.mjs +0 -0
  111. package/lib/util/helpers.mjs +26 -0
  112. package/lib/util/helpers.mjs.map +1 -1
  113. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"VBreadcrumbs.mjs","names":["VBreadcrumbsDivider","VBreadcrumbsItem","VDefaultsProvider","VIcon","IconValue","makeDensityProps","useDensity","makeRoundedProps","useRounded","makeTagProps","provideDefaults","useBackgroundColor","genericComponent","useRender","toRef","VBreadcrumbs","name","props","activeClass","String","activeColor","bgColor","color","disabled","Boolean","divider","type","default","icon","items","Array","tag","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","densityClasses","roundedClasses","hasPrepend","prepend","_createVNode","value","start","map","item","index","array","_Fragment","_mergeProps","length","title","undefined"],"sources":["../../../src/components/VBreadcrumbs/VBreadcrumbs.tsx"],"sourcesContent":["// Styles\nimport './VBreadcrumbs.sass'\n\n// Components\nimport { VBreadcrumbsDivider } from './VBreadcrumbsDivider'\nimport { VBreadcrumbsItem } from './VBreadcrumbsItem'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\nimport { toRef } from 'vue'\n\n// Types\nimport type { LinkProps } from '@/composables/router'\nimport type { PropType } from 'vue'\nimport type { SlotsToProps } from '@/util'\n\nexport type BreadcrumbItem = string | (LinkProps & {\n text: string\n disabled?: boolean\n})\n\nexport const VBreadcrumbs = genericComponent<new <T>() => {\n $props: {\n items?: T[]\n } & SlotsToProps<{\n prepend: []\n title: [{ item: T, index: number }]\n divider: [{ item: T, index: number }]\n default: []\n }>\n}>()({\n name: 'VBreadcrumbs',\n\n props: {\n activeClass: String,\n activeColor: String,\n bgColor: String,\n color: String,\n disabled: Boolean,\n divider: {\n type: String,\n default: '/',\n },\n icon: IconValue,\n items: {\n type: Array as PropType<BreadcrumbItem[]>,\n default: () => ([]),\n },\n\n ...makeDensityProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'ul' }),\n },\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { densityClasses } = useDensity(props)\n const { roundedClasses } = useRounded(props)\n\n provideDefaults({\n VBreadcrumbsDivider: {\n divider: toRef(props, 'divider'),\n },\n VBreadcrumbsItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor: toRef(props, 'activeColor'),\n color: toRef(props, 'color'),\n disabled: toRef(props, 'disabled'),\n },\n })\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.icon)\n\n return (\n <props.tag\n class={[\n 'v-breadcrumbs',\n backgroundColorClasses.value,\n densityClasses.value,\n roundedClasses.value,\n ]}\n style={ backgroundColorStyles.value }\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-breadcrumbs__prepend\">\n { !slots.prepend ? (\n <VIcon\n key=\"prepend-icon\"\n start\n icon={ props.icon }\n />\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !props.icon }\n defaults={{\n VIcon: {\n icon: props.icon,\n start: true,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n { props.items.map((item, index, array) => (\n <>\n <VBreadcrumbsItem\n key={ index }\n disabled={ index >= array.length - 1 }\n { ...(typeof item === 'string' ? { title: item } : item) }\n v-slots={{\n default: slots.title ? () => slots.title?.({ item, index }) : undefined,\n }}\n />\n\n { index < array.length - 1 && (\n <VBreadcrumbsDivider\n v-slots={{\n default: slots.divider ? () => slots.divider?.({ item, index }) : undefined,\n }}\n />\n )}\n </>\n ))}\n\n { slots.default?.() }\n </props.tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VBreadcrumbs = InstanceType<typeof VBreadcrumbs>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VBreadcrumbs.mjs","names":["VBreadcrumbsDivider","VBreadcrumbsItem","VDefaultsProvider","VIcon","IconValue","makeDensityProps","useDensity","makeRoundedProps","useRounded","makeTagProps","provideDefaults","useBackgroundColor","genericComponent","useRender","computed","toRef","VBreadcrumbs","name","props","activeClass","String","activeColor","bgColor","color","disabled","Boolean","divider","type","default","icon","items","Array","tag","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","densityClasses","roundedClasses","map","item","title","raw","hasPrepend","prepend","_createVNode","value","start","_ref2","index","array","_Fragment","_mergeProps","length","undefined"],"sources":["../../../src/components/VBreadcrumbs/VBreadcrumbs.tsx"],"sourcesContent":["// Styles\nimport './VBreadcrumbs.sass'\n\n// Components\nimport { VBreadcrumbsDivider } from './VBreadcrumbsDivider'\nimport { VBreadcrumbsItem } from './VBreadcrumbsItem'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\nimport { computed, toRef } from 'vue'\n\n// Types\nimport type { LinkProps } from '@/composables/router'\nimport type { PropType } from 'vue'\nimport type { SlotsToProps } from '@/util'\n\nexport type BreadcrumbItem = string | (Partial<LinkProps> & {\n title: string\n disabled?: boolean\n})\n\nexport const VBreadcrumbs = genericComponent<new <T extends BreadcrumbItem>() => {\n $props: {\n items?: T[]\n } & SlotsToProps<{\n prepend: []\n title: [{ item: T, index: number }]\n divider: [{ item: T, index: number }]\n default: []\n }>\n}>()({\n name: 'VBreadcrumbs',\n\n props: {\n activeClass: String,\n activeColor: String,\n bgColor: String,\n color: String,\n disabled: Boolean,\n divider: {\n type: String,\n default: '/',\n },\n icon: IconValue,\n items: {\n type: Array as PropType<BreadcrumbItem[]>,\n default: () => ([]),\n },\n\n ...makeDensityProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'ul' }),\n },\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { densityClasses } = useDensity(props)\n const { roundedClasses } = useRounded(props)\n\n provideDefaults({\n VBreadcrumbsDivider: {\n divider: toRef(props, 'divider'),\n },\n VBreadcrumbsItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor: toRef(props, 'activeColor'),\n color: toRef(props, 'color'),\n disabled: toRef(props, 'disabled'),\n },\n })\n\n const items = computed(() => props.items.map(item => {\n return typeof item === 'string' ? { item: { title: item }, raw: item } : { item, raw: item }\n }))\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.icon)\n\n return (\n <props.tag\n class={[\n 'v-breadcrumbs',\n backgroundColorClasses.value,\n densityClasses.value,\n roundedClasses.value,\n ]}\n style={ backgroundColorStyles.value }\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-breadcrumbs__prepend\">\n { !slots.prepend ? (\n <VIcon\n key=\"prepend-icon\"\n start\n icon={ props.icon }\n />\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !props.icon }\n defaults={{\n VIcon: {\n icon: props.icon,\n start: true,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n { items.value.map(({ item, raw }, index, array) => (\n <>\n <VBreadcrumbsItem\n key={ item.title }\n disabled={ index >= array.length - 1 }\n { ...item }\n v-slots={{\n default: slots.title ? () => slots.title?.({ item: raw, index }) : undefined,\n }}\n />\n\n { index < array.length - 1 && (\n <VBreadcrumbsDivider\n v-slots={{\n default: slots.divider ? () => slots.divider?.({ item: raw, index }) : undefined,\n }}\n />\n )}\n </>\n ))}\n\n { slots.default?.() }\n </props.tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VBreadcrumbs = InstanceType<typeof VBreadcrumbs>\n"],"mappings":"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"}
@@ -21,8 +21,8 @@ interface LinkProps {
21
21
  exact: boolean | undefined;
22
22
  }
23
23
 
24
- type BreadcrumbItem = string | (LinkProps & {
25
- text: string;
24
+ type BreadcrumbItem = string | (Partial<LinkProps> & {
25
+ title: string;
26
26
  disabled?: boolean;
27
27
  });
28
28
  declare const VBreadcrumbs: {
@@ -209,7 +209,7 @@ declare const VBreadcrumbs: {
209
209
  rounded: string | number | boolean;
210
210
  density: Density;
211
211
  divider: string;
212
- }, {}, string> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T_1>() => {
212
+ }, {}, string> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new <T_1 extends BreadcrumbItem>() => {
213
213
  $props: {
214
214
  items?: T_1[] | undefined;
215
215
  } & {
@@ -1 +1 @@
1
- {"version":3,"file":"VCard.mjs","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeBorderProps","useBorder","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","computed","genericComponent","useRender","VCard","name","directives","props","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","subtitle","text","title","variant","setup","_ref","attrs","slots","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","loaderClasses","locationStyles","positionClasses","roundedClasses","isLink","value","isClickable","Tag","tag","hasTitle","hasSubtitle","hasHeader","hasAppend","append","hasPrepend","prepend","hasImage","hasCardItem","hasText","_withDirectives","_createVNode","href","navigate","cover","src","loading","loader","item","actions","_resolveDirective"],"sources":["../../../src/components/VCard/VCard.tsx"],"sourcesContent":["/* eslint-disable complexity */\n\n// Styles\nimport './VCard.sass'\n\n// Components\nimport { VCardActions } from './VCardActions'\nimport { VCardItem } from './VCardItem'\nimport { VCardText } from './VCardText'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { MakeSlots } from '@/util'\n\nexport type VCardSlots = MakeSlots<{\n default: []\n actions: []\n title: []\n subtitle: []\n text: []\n loader: []\n image: []\n prepend: []\n append: []\n}>\n\nexport const VCard = genericComponent<VCardSlots>()({\n name: 'VCard',\n\n directives: { Ripple },\n\n props: {\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n image: String,\n link: {\n type: Boolean,\n default: undefined,\n },\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: String,\n text: String,\n title: String,\n\n ...makeThemeProps(),\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLoaderProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeVariantProps({ variant: 'elevated' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { loaderClasses } = useLoader(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const link = useLink(props, attrs)\n\n const isLink = computed(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || link.isClickable.value)\n )\n\n useRender(() => {\n const Tag = isLink.value ? 'a' : props.tag\n const hasTitle = !!(slots.title || props.title)\n const hasSubtitle = !!(slots.subtitle || props.subtitle)\n const hasHeader = hasTitle || hasSubtitle\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const hasImage = !!(slots.image || props.image)\n const hasCardItem = hasHeader || hasPrepend || hasAppend\n const hasText = !!(slots.text || props.text)\n\n return (\n <Tag\n class={[\n 'v-card',\n {\n 'v-card--disabled': props.disabled,\n 'v-card--flat': props.flat,\n 'v-card--hover': props.hover && !(props.disabled || props.flat),\n 'v-card--link': isClickable.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n loaderClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n href={ link.href.value }\n onClick={ isClickable.value && link.navigate }\n v-ripple={ isClickable.value && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-card__image\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n cover\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\n )}\n </div>\n )}\n\n <LoaderSlot\n name=\"v-card\"\n active={ !!props.loading }\n color={ typeof props.loading === 'boolean' ? undefined : props.loading }\n v-slots={{ default: slots.loader }}\n />\n\n { hasCardItem && (\n <VCardItem\n key=\"item\"\n prependAvatar={ props.prependAvatar }\n prependIcon={ props.prependIcon }\n title={ props.title }\n subtitle={ props.subtitle }\n appendAvatar={ props.appendAvatar }\n appendIcon={ props.appendIcon }\n >\n {{\n default: slots.item,\n prepend: slots.prepend,\n title: slots.title,\n subtitle: slots.subtitle,\n append: slots.append,\n }}\n </VCardItem>\n )}\n\n { hasText && (\n <VCardText key=\"text\">\n { slots.text?.() ?? props.text }\n </VCardText>\n )}\n\n { slots.default?.() }\n\n { slots.actions && (\n <VCardActions v-slots={{ default: slots.actions }} />\n )}\n\n { genOverlays(isClickable.value, 'v-card') }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VCard.mjs","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeBorderProps","useBorder","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","computed","genericComponent","useRender","VCard","name","directives","props","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","subtitle","text","title","variant","setup","_ref","attrs","slots","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","loaderClasses","locationStyles","positionClasses","roundedClasses","isLink","value","isClickable","Tag","tag","hasTitle","hasSubtitle","hasHeader","hasAppend","append","hasPrepend","prepend","hasImage","hasCardItem","hasText","_withDirectives","_createVNode","href","navigate","cover","src","loading","loader","item","actions","_resolveDirective"],"sources":["../../../src/components/VCard/VCard.tsx"],"sourcesContent":["/* eslint-disable complexity */\n\n// Styles\nimport './VCard.sass'\n\n// Components\nimport { VCardActions } from './VCardActions'\nimport { VCardItem } from './VCardItem'\nimport { VCardText } from './VCardText'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { MakeSlots } from '@/util'\nimport type { LoaderSlotProps } from '@/composables/loader'\n\nexport type VCardSlots = MakeSlots<{\n default: []\n actions: []\n title: []\n subtitle: []\n text: []\n loader: [LoaderSlotProps]\n image: []\n prepend: []\n append: []\n}>\n\nexport const VCard = genericComponent<VCardSlots>()({\n name: 'VCard',\n\n directives: { Ripple },\n\n props: {\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n image: String,\n link: {\n type: Boolean,\n default: undefined,\n },\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: String,\n text: String,\n title: String,\n\n ...makeThemeProps(),\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLoaderProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeVariantProps({ variant: 'elevated' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { loaderClasses } = useLoader(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const link = useLink(props, attrs)\n\n const isLink = computed(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || link.isClickable.value)\n )\n\n useRender(() => {\n const Tag = isLink.value ? 'a' : props.tag\n const hasTitle = !!(slots.title || props.title)\n const hasSubtitle = !!(slots.subtitle || props.subtitle)\n const hasHeader = hasTitle || hasSubtitle\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const hasImage = !!(slots.image || props.image)\n const hasCardItem = hasHeader || hasPrepend || hasAppend\n const hasText = !!(slots.text || props.text)\n\n return (\n <Tag\n class={[\n 'v-card',\n {\n 'v-card--disabled': props.disabled,\n 'v-card--flat': props.flat,\n 'v-card--hover': props.hover && !(props.disabled || props.flat),\n 'v-card--link': isClickable.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n loaderClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n href={ link.href.value }\n onClick={ isClickable.value && link.navigate }\n v-ripple={ isClickable.value && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-card__image\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n cover\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\n )}\n </div>\n )}\n\n <LoaderSlot\n name=\"v-card\"\n active={ !!props.loading }\n color={ typeof props.loading === 'boolean' ? undefined : props.loading }\n v-slots={{ default: slots.loader }}\n />\n\n { hasCardItem && (\n <VCardItem\n key=\"item\"\n prependAvatar={ props.prependAvatar }\n prependIcon={ props.prependIcon }\n title={ props.title }\n subtitle={ props.subtitle }\n appendAvatar={ props.appendAvatar }\n appendIcon={ props.appendIcon }\n >\n {{\n default: slots.item,\n prepend: slots.prepend,\n title: slots.title,\n subtitle: slots.subtitle,\n append: slots.append,\n }}\n </VCardItem>\n )}\n\n { hasText && (\n <VCardText key=\"text\">\n { slots.text?.() ?? props.text }\n </VCardText>\n )}\n\n { slots.default?.() }\n\n { slots.actions && (\n <VCardActions v-slots={{ default: slots.actions }} />\n )}\n\n { genOverlays(isClickable.value, 'v-card') }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n"],"mappings":"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"}
@@ -18,6 +18,11 @@ type Density = null | 'default' | 'comfortable' | 'compact';
18
18
  type IconValue = string | JSXComponent;
19
19
  declare const IconValue: PropType<IconValue>;
20
20
 
21
+ interface LoaderSlotProps {
22
+ color: string | undefined;
23
+ isActive: boolean;
24
+ }
25
+
21
26
  declare const VCard: {
22
27
  new (...args: any[]): {
23
28
  $: vue.ComponentInternalInstance;
@@ -77,7 +82,7 @@ declare const VCard: {
77
82
  title?: (() => vue.VNodeChild) | undefined;
78
83
  subtitle?: (() => vue.VNodeChild) | undefined;
79
84
  text?: (() => vue.VNodeChild) | undefined;
80
- loader?: (() => vue.VNodeChild) | undefined;
85
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
81
86
  image?: (() => vue.VNodeChild) | undefined;
82
87
  prepend?: (() => vue.VNodeChild) | undefined;
83
88
  append?: (() => vue.VNodeChild) | undefined;
@@ -88,7 +93,7 @@ declare const VCard: {
88
93
  title?: (() => vue.VNodeChild) | undefined;
89
94
  subtitle?: (() => vue.VNodeChild) | undefined;
90
95
  text?: (() => vue.VNodeChild) | undefined;
91
- loader?: (() => vue.VNodeChild) | undefined;
96
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
92
97
  image?: (() => vue.VNodeChild) | undefined;
93
98
  prepend?: (() => vue.VNodeChild) | undefined;
94
99
  append?: (() => vue.VNodeChild) | undefined;
@@ -99,7 +104,7 @@ declare const VCard: {
99
104
  title?: false | (() => vue.VNodeChild) | undefined;
100
105
  subtitle?: false | (() => vue.VNodeChild) | undefined;
101
106
  text?: false | (() => vue.VNodeChild) | undefined;
102
- loader?: false | (() => vue.VNodeChild) | undefined;
107
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
103
108
  image?: false | (() => vue.VNodeChild) | undefined;
104
109
  prepend?: false | (() => vue.VNodeChild) | undefined;
105
110
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -110,7 +115,7 @@ declare const VCard: {
110
115
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
111
116
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
112
117
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
113
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
118
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
114
119
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
115
120
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
116
121
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -171,7 +176,7 @@ declare const VCard: {
171
176
  title?: (() => vue.VNodeChild) | undefined;
172
177
  subtitle?: (() => vue.VNodeChild) | undefined;
173
178
  text?: (() => vue.VNodeChild) | undefined;
174
- loader?: (() => vue.VNodeChild) | undefined;
179
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
175
180
  image?: (() => vue.VNodeChild) | undefined;
176
181
  prepend?: (() => vue.VNodeChild) | undefined;
177
182
  append?: (() => vue.VNodeChild) | undefined;
@@ -182,7 +187,7 @@ declare const VCard: {
182
187
  title?: (() => vue.VNodeChild) | undefined;
183
188
  subtitle?: (() => vue.VNodeChild) | undefined;
184
189
  text?: (() => vue.VNodeChild) | undefined;
185
- loader?: (() => vue.VNodeChild) | undefined;
190
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
186
191
  image?: (() => vue.VNodeChild) | undefined;
187
192
  prepend?: (() => vue.VNodeChild) | undefined;
188
193
  append?: (() => vue.VNodeChild) | undefined;
@@ -193,7 +198,7 @@ declare const VCard: {
193
198
  title?: false | (() => vue.VNodeChild) | undefined;
194
199
  subtitle?: false | (() => vue.VNodeChild) | undefined;
195
200
  text?: false | (() => vue.VNodeChild) | undefined;
196
- loader?: false | (() => vue.VNodeChild) | undefined;
201
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
197
202
  image?: false | (() => vue.VNodeChild) | undefined;
198
203
  prepend?: false | (() => vue.VNodeChild) | undefined;
199
204
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -204,7 +209,7 @@ declare const VCard: {
204
209
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
205
210
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
206
211
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
207
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
212
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
208
213
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
209
214
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
210
215
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -283,7 +288,7 @@ declare const VCard: {
283
288
  title?: (() => vue.VNodeChild) | undefined;
284
289
  subtitle?: (() => vue.VNodeChild) | undefined;
285
290
  text?: (() => vue.VNodeChild) | undefined;
286
- loader?: (() => vue.VNodeChild) | undefined;
291
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
287
292
  image?: (() => vue.VNodeChild) | undefined;
288
293
  prepend?: (() => vue.VNodeChild) | undefined;
289
294
  append?: (() => vue.VNodeChild) | undefined;
@@ -294,7 +299,7 @@ declare const VCard: {
294
299
  title?: (() => vue.VNodeChild) | undefined;
295
300
  subtitle?: (() => vue.VNodeChild) | undefined;
296
301
  text?: (() => vue.VNodeChild) | undefined;
297
- loader?: (() => vue.VNodeChild) | undefined;
302
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
298
303
  image?: (() => vue.VNodeChild) | undefined;
299
304
  prepend?: (() => vue.VNodeChild) | undefined;
300
305
  append?: (() => vue.VNodeChild) | undefined;
@@ -305,7 +310,7 @@ declare const VCard: {
305
310
  title?: false | (() => vue.VNodeChild) | undefined;
306
311
  subtitle?: false | (() => vue.VNodeChild) | undefined;
307
312
  text?: false | (() => vue.VNodeChild) | undefined;
308
- loader?: false | (() => vue.VNodeChild) | undefined;
313
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
309
314
  image?: false | (() => vue.VNodeChild) | undefined;
310
315
  prepend?: false | (() => vue.VNodeChild) | undefined;
311
316
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -316,7 +321,7 @@ declare const VCard: {
316
321
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
317
322
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
318
323
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
319
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
324
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
320
325
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
321
326
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
322
327
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -367,7 +372,7 @@ declare const VCard: {
367
372
  title?: (() => vue.VNodeChild) | undefined;
368
373
  subtitle?: (() => vue.VNodeChild) | undefined;
369
374
  text?: (() => vue.VNodeChild) | undefined;
370
- loader?: (() => vue.VNodeChild) | undefined;
375
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
371
376
  image?: (() => vue.VNodeChild) | undefined;
372
377
  prepend?: (() => vue.VNodeChild) | undefined;
373
378
  append?: (() => vue.VNodeChild) | undefined;
@@ -378,7 +383,7 @@ declare const VCard: {
378
383
  title?: (() => vue.VNodeChild) | undefined;
379
384
  subtitle?: (() => vue.VNodeChild) | undefined;
380
385
  text?: (() => vue.VNodeChild) | undefined;
381
- loader?: (() => vue.VNodeChild) | undefined;
386
+ loader?: ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
382
387
  image?: (() => vue.VNodeChild) | undefined;
383
388
  prepend?: (() => vue.VNodeChild) | undefined;
384
389
  append?: (() => vue.VNodeChild) | undefined;
@@ -389,7 +394,7 @@ declare const VCard: {
389
394
  title?: false | (() => vue.VNodeChild) | undefined;
390
395
  subtitle?: false | (() => vue.VNodeChild) | undefined;
391
396
  text?: false | (() => vue.VNodeChild) | undefined;
392
- loader?: false | (() => vue.VNodeChild) | undefined;
397
+ loader?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
393
398
  image?: false | (() => vue.VNodeChild) | undefined;
394
399
  prepend?: false | (() => vue.VNodeChild) | undefined;
395
400
  append?: false | (() => vue.VNodeChild) | undefined;
@@ -400,7 +405,7 @@ declare const VCard: {
400
405
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
401
406
  "v-slot:subtitle"?: false | (() => vue.VNodeChild) | undefined;
402
407
  "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
403
- "v-slot:loader"?: false | (() => vue.VNodeChild) | undefined;
408
+ "v-slot:loader"?: false | ((args_0: LoaderSlotProps) => vue.VNodeChild) | undefined;
404
409
  "v-slot:image"?: false | (() => vue.VNodeChild) | undefined;
405
410
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
406
411
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
@@ -3,7 +3,7 @@ import { createVNode as _createVNode, mergeProps as _mergeProps, resolveDirectiv
3
3
  import "./VCheckbox.css";
4
4
 
5
5
  // Components
6
- import { filterInputProps, makeVInputProps, VInput } from "../VInput/VInput.mjs";
6
+ import { makeVInputProps, VInput } from "../VInput/VInput.mjs";
7
7
  import { makeVCheckboxBtnProps, VCheckboxBtn } from "./VCheckboxBtn.mjs"; // Composables
8
8
  import { useFocus } from "../../composables/focus.mjs"; // Utilities
9
9
  import { computed } from 'vue';
@@ -32,7 +32,7 @@ export const VCheckbox = genericComponent()({
32
32
  const id = computed(() => props.id || `checkbox-${uid}`);
33
33
  useRender(() => {
34
34
  const [inputAttrs, controlAttrs] = filterInputAttrs(attrs);
35
- const [inputProps, _1] = filterInputProps(props);
35
+ const [inputProps, _1] = VInput.filterProps(props);
36
36
  const [checkboxProps, _2] = VCheckboxBtn.filterProps(props);
37
37
  return _createVNode(VInput, _mergeProps({
38
38
  "class": "v-checkbox"
@@ -1 +1 @@
1
- {"version":3,"file":"VCheckbox.mjs","names":["filterInputProps","makeVInputProps","VInput","makeVCheckboxBtnProps","VCheckboxBtn","useFocus","computed","filterInputAttrs","genericComponent","getUid","omit","useRender","VCheckbox","name","inheritAttrs","props","emits","focused","setup","_ref","attrs","slots","isFocused","focus","blur","uid","id","inputAttrs","controlAttrs","inputProps","_1","checkboxProps","_2","filterProps","_createVNode","_mergeProps","value","default","_ref2","messagesId","isDisabled","isReadonly"],"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\n\n// Utilities\nimport { computed } from 'vue'\nimport { filterInputAttrs, genericComponent, getUid, omit, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\n\nexport type VCheckboxSlots = VInputSlots & VSelectionControlSlots\n\nexport const VCheckbox = genericComponent<VCheckboxSlots>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: {\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n },\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { isFocused, focus, blur } = useFocus(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `checkbox-${uid}`)\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [checkboxProps, _2] = VCheckboxBtn.filterProps(props)\n\n return (\n <VInput\n class=\"v-checkbox\"\n { ...inputAttrs }\n { ...inputProps }\n id={ id.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n }) => (\n <VCheckboxBtn\n { ...checkboxProps }\n id={ id.value }\n aria-describedby={ messagesId.value }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n onFocus={ focus }\n onBlur={ blur }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SAESA,gBAAgB,EAAEC,eAAe,EAAEC,MAAM;AAAA,SACzCC,qBAAqB,EAAEC,YAAY,8BAE5C;AAAA,SACSC,QAAQ,uCAEjB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,gBAAgB,EAAEC,MAAM,EAAEC,IAAI,EAAEC,SAAS,gCAEpE;AAKA,OAAO,MAAMC,SAAS,GAAGJ,gBAAgB,EAAkB,CAAC;EAC1DK,IAAI,EAAE,WAAW;EAEjBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACL,GAAGd,eAAe,EAAE;IACpB,GAAGS,IAAI,CAACP,qBAAqB,EAAE,EAAE,CAAC,QAAQ,CAAC;EAC7C,CAAC;EAEDa,KAAK,EAAE;IACL,gBAAgB,EAAGC,OAAgB,IAAK;EAC1C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAM;MAAEG,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGnB,QAAQ,CAACU,KAAK,CAAC;IAElD,MAAMU,GAAG,GAAGhB,MAAM,EAAE;IACpB,MAAMiB,EAAE,GAAGpB,QAAQ,CAAC,MAAMS,KAAK,CAACW,EAAE,IAAK,YAAWD,GAAI,EAAC,CAAC;IAExDd,SAAS,CAAC,MAAM;MACd,MAAM,CAACgB,UAAU,EAAEC,YAAY,CAAC,GAAGrB,gBAAgB,CAACa,KAAK,CAAC;MAC1D,MAAM,CAACS,UAAU,EAAEC,EAAE,CAAC,GAAG9B,gBAAgB,CAACe,KAAK,CAAC;MAChD,MAAM,CAACgB,aAAa,EAAEC,EAAE,CAAC,GAAG5B,YAAY,CAAC6B,WAAW,CAAClB,KAAK,CAAC;MAE3D,OAAAmB,YAAA,CAAAhC,MAAA,EAAAiC,WAAA;QAAA,SAEU;MAAY,GACbR,UAAU,EACVE,UAAU;QAAA,MACVH,EAAE,CAACU,KAAK;QAAA,WACHd,SAAS,CAACc;MAAK;QAGvB,GAAGf,KAAK;QACRgB,OAAO,EAAEC,KAAA;UAAA,IAAC;YACRZ,EAAE;YACFa,UAAU;YACVC,UAAU;YACVC;UACF,CAAC,GAAAH,KAAA;UAAA,OAAAJ,YAAA,CAAA9B,YAAA,EAAA+B,WAAA,CAEQJ,aAAa;YAAA,MACbL,EAAE,CAACU,KAAK;YAAA,oBACMG,UAAU,CAACH,KAAK;YAAA,YACxBI,UAAU,CAACJ,KAAK;YAAA,YAChBK,UAAU,CAACL;UAAK,GACtBR,YAAY;YAAA,WACPL,KAAK;YAAA,UACNC;UAAI,IACHH,KAAK;QAAA;MAElB;IAIT,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VCheckbox.mjs","names":["makeVInputProps","VInput","makeVCheckboxBtnProps","VCheckboxBtn","useFocus","computed","filterInputAttrs","genericComponent","getUid","omit","useRender","VCheckbox","name","inheritAttrs","props","emits","focused","setup","_ref","attrs","slots","isFocused","focus","blur","uid","id","inputAttrs","controlAttrs","inputProps","_1","filterProps","checkboxProps","_2","_createVNode","_mergeProps","value","default","_ref2","messagesId","isDisabled","isReadonly"],"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\n\n// Utilities\nimport { computed } from 'vue'\nimport { filterInputAttrs, genericComponent, getUid, omit, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\n\nexport type VCheckboxSlots = VInputSlots & VSelectionControlSlots\n\nexport const VCheckbox = genericComponent<VCheckboxSlots>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: {\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n },\n\n emits: {\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { isFocused, focus, blur } = useFocus(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `checkbox-${uid}`)\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = VInput.filterProps(props)\n const [checkboxProps, _2] = VCheckboxBtn.filterProps(props)\n\n return (\n <VInput\n class=\"v-checkbox\"\n { ...inputAttrs }\n { ...inputProps }\n id={ id.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n }) => (\n <VCheckboxBtn\n { ...checkboxProps }\n id={ id.value }\n aria-describedby={ messagesId.value }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n onFocus={ focus }\n onBlur={ blur }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SAESA,eAAe,EAAEC,MAAM;AAAA,SACvBC,qBAAqB,EAAEC,YAAY,8BAE5C;AAAA,SACSC,QAAQ,uCAEjB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,gBAAgB,EAAEC,MAAM,EAAEC,IAAI,EAAEC,SAAS,gCAEpE;AAKA,OAAO,MAAMC,SAAS,GAAGJ,gBAAgB,EAAkB,CAAC;EAC1DK,IAAI,EAAE,WAAW;EAEjBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACL,GAAGd,eAAe,EAAE;IACpB,GAAGS,IAAI,CAACP,qBAAqB,EAAE,EAAE,CAAC,QAAQ,CAAC;EAC7C,CAAC;EAEDa,KAAK,EAAE;IACL,gBAAgB,EAAGC,OAAgB,IAAK;EAC1C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAM;MAAEG,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGnB,QAAQ,CAACU,KAAK,CAAC;IAElD,MAAMU,GAAG,GAAGhB,MAAM,EAAE;IACpB,MAAMiB,EAAE,GAAGpB,QAAQ,CAAC,MAAMS,KAAK,CAACW,EAAE,IAAK,YAAWD,GAAI,EAAC,CAAC;IAExDd,SAAS,CAAC,MAAM;MACd,MAAM,CAACgB,UAAU,EAAEC,YAAY,CAAC,GAAGrB,gBAAgB,CAACa,KAAK,CAAC;MAC1D,MAAM,CAACS,UAAU,EAAEC,EAAE,CAAC,GAAG5B,MAAM,CAAC6B,WAAW,CAAChB,KAAK,CAAC;MAClD,MAAM,CAACiB,aAAa,EAAEC,EAAE,CAAC,GAAG7B,YAAY,CAAC2B,WAAW,CAAChB,KAAK,CAAC;MAE3D,OAAAmB,YAAA,CAAAhC,MAAA,EAAAiC,WAAA;QAAA,SAEU;MAAY,GACbR,UAAU,EACVE,UAAU;QAAA,MACVH,EAAE,CAACU,KAAK;QAAA,WACHd,SAAS,CAACc;MAAK;QAGvB,GAAGf,KAAK;QACRgB,OAAO,EAAEC,KAAA;UAAA,IAAC;YACRZ,EAAE;YACFa,UAAU;YACVC,UAAU;YACVC;UACF,CAAC,GAAAH,KAAA;UAAA,OAAAJ,YAAA,CAAA9B,YAAA,EAAA+B,WAAA,CAEQH,aAAa;YAAA,MACbN,EAAE,CAACU,KAAK;YAAA,oBACMG,UAAU,CAACH,KAAK;YAAA,YACxBI,UAAU,CAACJ,KAAK;YAAA,YAChBK,UAAU,CAACL;UAAK,GACtBR,YAAY;YAAA,WACPL,KAAK;YAAA,UACNC;UAAI,IACHH,KAAK;QAAA;MAElB;IAIT,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
@@ -60,6 +60,7 @@ declare const VCheckbox: {
60
60
  errorMessages: string | string[];
61
61
  maxErrors: string | number;
62
62
  rules: ValidationRule[];
63
+ persistentHint: boolean;
63
64
  falseIcon: NonNullable<IconValue>;
64
65
  trueIcon: NonNullable<IconValue>;
65
66
  valueComparator: typeof deepEqual;
@@ -78,6 +79,7 @@ declare const VCheckbox: {
78
79
  errorMessages: string | string[];
79
80
  maxErrors: string | number;
80
81
  rules: ValidationRule[];
82
+ persistentHint: boolean;
81
83
  falseIcon: NonNullable<IconValue>;
82
84
  trueIcon: NonNullable<IconValue>;
83
85
  valueComparator: typeof deepEqual;
@@ -95,8 +97,10 @@ declare const VCheckbox: {
95
97
  appendIcon?: IconValue | undefined;
96
98
  'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
97
99
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
100
+ 'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
98
101
  validateOn?: "input" | "blur" | "submit" | undefined;
99
102
  validationValue?: any;
103
+ hint?: string | undefined;
100
104
  hideDetails?: boolean | "auto" | undefined;
101
105
  trueValue?: any;
102
106
  falseValue?: any;
@@ -146,7 +150,7 @@ declare const VCheckbox: {
146
150
  "v-slot:input"?: false | ((args_0: SelectionControlSlot) => vue.VNodeChild) | undefined;
147
151
  } & {
148
152
  "onUpdate:focused"?: ((focused: boolean) => any) | undefined;
149
- } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "multiple" | "readonly" | "indeterminate" | "messages" | "density" | "ripple" | "focused" | "errorMessages" | "maxErrors" | "rules" | "falseIcon" | "trueIcon" | "valueComparator" | "indeterminateIcon">;
153
+ } & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, "error" | "direction" | "disabled" | "multiple" | "readonly" | "indeterminate" | "messages" | "density" | "ripple" | "focused" | "errorMessages" | "maxErrors" | "rules" | "persistentHint" | "falseIcon" | "trueIcon" | "valueComparator" | "indeterminateIcon">;
150
154
  $attrs: {
151
155
  [x: string]: unknown;
152
156
  };
@@ -174,6 +178,7 @@ declare const VCheckbox: {
174
178
  errorMessages: string | string[];
175
179
  maxErrors: string | number;
176
180
  rules: ValidationRule[];
181
+ persistentHint: boolean;
177
182
  falseIcon: NonNullable<IconValue>;
178
183
  trueIcon: NonNullable<IconValue>;
179
184
  valueComparator: typeof deepEqual;
@@ -191,8 +196,10 @@ declare const VCheckbox: {
191
196
  appendIcon?: IconValue | undefined;
192
197
  'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
193
198
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
199
+ 'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
194
200
  validateOn?: "input" | "blur" | "submit" | undefined;
195
201
  validationValue?: any;
202
+ hint?: string | undefined;
196
203
  hideDetails?: boolean | "auto" | undefined;
197
204
  trueValue?: any;
198
205
  falseValue?: any;
@@ -258,6 +265,7 @@ declare const VCheckbox: {
258
265
  errorMessages: string | string[];
259
266
  maxErrors: string | number;
260
267
  rules: ValidationRule[];
268
+ persistentHint: boolean;
261
269
  falseIcon: NonNullable<IconValue>;
262
270
  trueIcon: NonNullable<IconValue>;
263
271
  valueComparator: typeof deepEqual;
@@ -296,6 +304,7 @@ declare const VCheckbox: {
296
304
  errorMessages: string | string[];
297
305
  maxErrors: string | number;
298
306
  rules: ValidationRule[];
307
+ persistentHint: boolean;
299
308
  falseIcon: NonNullable<IconValue>;
300
309
  trueIcon: NonNullable<IconValue>;
301
310
  valueComparator: typeof deepEqual;
@@ -313,8 +322,10 @@ declare const VCheckbox: {
313
322
  appendIcon?: IconValue | undefined;
314
323
  'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
315
324
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
325
+ 'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
316
326
  validateOn?: "input" | "blur" | "submit" | undefined;
317
327
  validationValue?: any;
328
+ hint?: string | undefined;
318
329
  hideDetails?: boolean | "auto" | undefined;
319
330
  trueValue?: any;
320
331
  falseValue?: any;
@@ -382,6 +393,7 @@ declare const VCheckbox: {
382
393
  errorMessages: string | string[];
383
394
  maxErrors: string | number;
384
395
  rules: ValidationRule[];
396
+ persistentHint: boolean;
385
397
  falseIcon: NonNullable<IconValue>;
386
398
  trueIcon: NonNullable<IconValue>;
387
399
  valueComparator: typeof deepEqual;
@@ -399,8 +411,10 @@ declare const VCheckbox: {
399
411
  appendIcon?: IconValue | undefined;
400
412
  'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
401
413
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
414
+ 'onUpdate:focused'?: EventProp<[FocusEvent], (args_0: FocusEvent) => any> | undefined;
402
415
  validateOn?: "input" | "blur" | "submit" | undefined;
403
416
  validationValue?: any;
417
+ hint?: string | undefined;
404
418
  hideDetails?: boolean | "auto" | undefined;
405
419
  trueValue?: any;
406
420
  falseValue?: any;
@@ -466,6 +480,7 @@ declare const VCheckbox: {
466
480
  errorMessages: string | string[];
467
481
  maxErrors: string | number;
468
482
  rules: ValidationRule[];
483
+ persistentHint: boolean;
469
484
  falseIcon: NonNullable<IconValue>;
470
485
  trueIcon: NonNullable<IconValue>;
471
486
  valueComparator: typeof deepEqual;
@@ -515,6 +530,7 @@ declare const VCheckbox: {
515
530
  default: string;
516
531
  };
517
532
  focused: BooleanConstructor;
533
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
518
534
  errorMessages: {
519
535
  type: vue.PropType<string | string[]>;
520
536
  default: () => never[];
@@ -532,6 +548,8 @@ declare const VCheckbox: {
532
548
  appendIcon: vue.PropType<IconValue>;
533
549
  prependIcon: vue.PropType<IconValue>;
534
550
  hideDetails: vue.PropType<boolean | "auto">;
551
+ hint: StringConstructor;
552
+ persistentHint: BooleanConstructor;
535
553
  messages: {
536
554
  type: vue.PropType<string | string[]>;
537
555
  default: () => never[];
@@ -588,6 +606,7 @@ declare const VCheckbox: {
588
606
  default: string;
589
607
  };
590
608
  focused: BooleanConstructor;
609
+ 'onUpdate:focused': vue.PropType<EventProp<[FocusEvent], (args_0: FocusEvent) => any>>;
591
610
  errorMessages: {
592
611
  type: vue.PropType<string | string[]>;
593
612
  default: () => never[];
@@ -605,6 +624,8 @@ declare const VCheckbox: {
605
624
  appendIcon: vue.PropType<IconValue>;
606
625
  prependIcon: vue.PropType<IconValue>;
607
626
  hideDetails: vue.PropType<boolean | "auto">;
627
+ hint: StringConstructor;
628
+ persistentHint: BooleanConstructor;
608
629
  messages: {
609
630
  type: vue.PropType<string | string[]>;
610
631
  default: () => never[];
@@ -67,7 +67,7 @@
67
67
  opacity: 1;
68
68
  }
69
69
  .v-combobox--selecting-index .v-field__input > input {
70
- caret-color: transparent !important;
70
+ caret-color: transparent;
71
71
  }
72
72
  .v-combobox--single.v-text-field input {
73
73
  flex: 1 1;
@@ -53,6 +53,7 @@ export const VCombobox = genericComponent()({
53
53
  })
54
54
  },
55
55
  emits: {
56
+ 'update:focused': focused => true,
56
57
  'update:modelValue': val => true,
57
58
  'update:search': val => true,
58
59
  'update:menu': val => true
@@ -190,8 +191,9 @@ export const VCombobox = genericComponent()({
190
191
  }
191
192
  return;
192
193
  }
193
- select(selection.value);
194
- nextTick(() => !selection.value && (selectionIndex.value = length - 2));
194
+ const originalSelectionIndex = selectionIndex.value;
195
+ if (selection.value) select(selection.value);
196
+ selectionIndex.value = originalSelectionIndex >= length - 1 ? length - 2 : originalSelectionIndex;
195
197
  }
196
198
  if (e.key === 'ArrowLeft') {
197
199
  if (selectionIndex.value < 0 && selectionStart > 0) return;
@@ -276,6 +278,8 @@ export const VCombobox = genericComponent()({
276
278
  "onUpdate:modelValue": [$event => search.value = $event, v => {
277
279
  if (v == null) model.value = [];
278
280
  }],
281
+ "focused": isFocused.value,
282
+ "onUpdate:focused": $event => isFocused.value = $event,
279
283
  "validationValue": model.externalValue,
280
284
  "dirty": isDirty,
281
285
  "class": ['v-combobox', {
@@ -289,8 +293,6 @@ export const VCombobox = genericComponent()({
289
293
  "placeholder": isDirty ? undefined : props.placeholder,
290
294
  "onClick:clear": onClear,
291
295
  "onMousedown:control": onMousedownControl,
292
- "onFocus": () => isFocused.value = true,
293
- "onBlur": () => isFocused.value = false,
294
296
  "onKeydown": onKeydown
295
297
  }), {
296
298
  ...slots,