UNPKG

bootstrap-vue-next

Version:

Seamless integration of Vue 3, Bootstrap 5, and TypeScript for modern, type-safe UI development

1 lines 27.6 kB
{"version":3,"file":"BCard-Dly2DM9l.mjs","names":[],"sources":["../src/components/BCard/BCardImg.vue","../src/components/BCard/BCardImg.vue","../src/components/BCardHeadFoot.vue","../src/components/BCardHeadFoot.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardHeader.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardTitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardSubtitle.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardBody.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCardFooter.vue","../src/components/BCard/BCard.vue","../src/components/BCard/BCard.vue"],"sourcesContent":["<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types/ComponentProps'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <BImg v-bind=\"computedImgProps\" :class=\"baseAlignmentClasses\" />\n</template>\n\n<script setup lang=\"ts\">\nimport BImg from '../BImg/BImg.vue'\nimport type {BCardImgProps} from '../../types/ComponentProps'\nimport {omit} from '../../utils/object'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BCardImgProps>(), {\n placement: 'top',\n // BImg props\n blank: undefined,\n blankColor: undefined,\n block: undefined,\n fluid: undefined,\n fluidGrow: undefined,\n height: undefined,\n lazy: undefined,\n rounded: undefined,\n roundedBottom: undefined,\n roundedEnd: undefined,\n roundedStart: undefined,\n roundedTop: undefined,\n sizes: undefined,\n src: undefined,\n srcset: undefined,\n thumbnail: undefined,\n width: undefined,\n // End BImg props\n})\nconst props = useDefaults(_props, 'BCardImg')\n\nconst baseAlignmentClasses = computed(() => ({\n 'card-img-top': props.placement === 'top',\n // TODO implement this class\n 'card-img-end': props.placement === 'end',\n 'card-img-bottom': props.placement === 'bottom',\n // TODO implement this class\n 'card-img-start': props.placement === 'start',\n 'card-img': props.placement === 'overlay',\n}))\n\nconst computedImgProps = computed(() => omit(props, ['placement']))\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeadFootProps} from '../types/ComponentProps'\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"tag\" :class=\"computedClasses\">\n <slot>\n {{ text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeadFootProps} from '../types/ComponentProps'\nimport {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootSlots} from '../types'\n\nconst props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: null,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\ndefineSlots<BCardHeadFootSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardHeadFootProps} from '../../types/ComponentProps'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-header\" v-bind=\"props\">\n <slot />\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardHeaderSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardHeadFootProps} from '../../types/ComponentProps'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeadFootProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardHeader')\ndefineSlots<BCardHeaderSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardTitleProps} from '../../types/ComponentProps'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-title\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardTitleProps} from '../../types/ComponentProps'\n\nconst _props = withDefaults(defineProps<BCardTitleProps>(), {\n tag: 'h4',\n text: undefined,\n})\nconst props = useDefaults(_props, 'BCardTitle')\ndefineSlots<BCardTitleSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardSubtitleProps} from '../../types/ComponentProps'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card-subtitle mb-2\" :class=\"computedClasses\">\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardSubtitleProps} from '../../types/ComponentProps'\n\nconst _props = withDefaults(defineProps<BCardSubtitleProps>(), {\n tag: 'h6',\n text: undefined,\n textVariant: 'body-secondary',\n})\nconst props = useDefaults(_props, 'BCardSubtitle')\ndefineSlots<BCardSubtitleSlots>()\n\nconst computedClasses = useColorVariantClasses(props)\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport type {BCardBodyProps} from '../../types/ComponentProps'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <component :is=\"props.tag\" :class=\"computedClasses\">\n <BCardTitle v-if=\"!!props.title || hasTitleSlot\" :tag=\"props.titleTag\">\n <slot name=\"title\">\n {{ props.title }}\n </slot>\n </BCardTitle>\n\n <BCardSubtitle\n v-if=\"!!props.subtitle || hasSubtitleSlot\"\n :tag=\"props.subtitleTag\"\n :text-variant=\"props.subtitleTextVariant\"\n >\n <slot name=\"subtitle\">\n {{ props.subtitle }}\n </slot>\n </BCardSubtitle>\n\n <slot>\n {{ props.text }}\n </slot>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed} from 'vue'\nimport BCardTitle from './BCardTitle.vue'\nimport {isEmptySlot} from '../../utils/dom'\nimport BCardSubtitle from './BCardSubtitle.vue'\nimport type {BCardBodyProps} from '../../types/ComponentProps'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodySlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardBodyProps>(), {\n borderVariant: null,\n overlay: false,\n subtitle: undefined,\n subtitleTag: 'h4',\n subtitleTextVariant: undefined,\n tag: 'div',\n text: undefined,\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardBody')\nconst slots = defineSlots<BCardBodySlots>()\n\nconst hasTitleSlot = computed(() => !isEmptySlot(slots.title))\nconst hasSubtitleSlot = computed(() => !isEmptySlot(slots.subtitle))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n props.overlay ? 'card-img-overlay' : 'card-body',\n])\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardHeaderProps} from '../../types/ComponentProps'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <BCardHeadFoot class=\"card-footer\" v-bind=\"props\">\n <slot>\n {{ props.text }}\n </slot>\n </BCardHeadFoot>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardFooterSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardHeaderProps} from '../../types/ComponentProps'\nimport BCardHeadFoot from '../BCardHeadFoot.vue'\n\nconst _props = withDefaults(defineProps<BCardHeaderProps>(), {\n borderVariant: undefined,\n tag: 'div',\n text: undefined,\n // ColorExtendables props\n bgVariant: undefined,\n textVariant: undefined,\n variant: undefined,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCardFooter')\ndefineSlots<BCardFooterSlots>()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <ReusableImg.define>\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </ReusableImg.define>\n\n <ReusableImg.reuse v-if=\"props.imgPlacement !== 'bottom'\" />\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <ReusableImg.reuse v-if=\"props.imgPlacement === 'bottom'\" />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardProps} from '../../types/ComponentProps'\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport {createReusableTemplate} from '@vueuse/core'\nimport type {BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n\nconst ReusableImg = createReusableTemplate()\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <ReusableImg.define>\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </ReusableImg.define>\n\n <ReusableImg.reuse v-if=\"props.imgPlacement !== 'bottom'\" />\n <BCardHeader\n v-if=\"props.header || hasHeaderSlot\"\n :bg-variant=\"props.headerBgVariant\"\n :variant=\"props.headerVariant\"\n :border-variant=\"props.headerBorderVariant\"\n :tag=\"props.headerTag\"\n :text-variant=\"props.headerTextVariant\"\n :class=\"props.headerClass\"\n >\n <slot name=\"header\">\n {{ props.header }}\n </slot>\n </BCardHeader>\n <BCardBody\n v-if=\"!props.noBody\"\n :overlay=\"props.imgPlacement === 'overlay'\"\n :bg-variant=\"props.bodyBgVariant\"\n :border-variant=\"props.bodyBorderVariant\"\n :tag=\"props.bodyTag\"\n :text-variant=\"props.bodyTextVariant\"\n :subtitle=\"props.subtitle\"\n :subtitle-tag=\"props.subtitleTag\"\n :subtitle-text-variant=\"props.subtitleTextVariant\"\n :title=\"props.title\"\n :title-tag=\"props.titleTag\"\n :class=\"props.bodyClass\"\n >\n <slot>\n {{ props.bodyText }}\n </slot>\n </BCardBody>\n <slot v-else>\n {{ props.bodyText }}\n </slot>\n <BCardFooter\n v-if=\"props.footer || hasFooterSlot\"\n :bg-variant=\"props.footerBgVariant\"\n :border-variant=\"props.footerBorderVariant\"\n :variant=\"props.footerVariant\"\n :tag=\"props.footerTag\"\n :text-variant=\"props.footerTextVariant\"\n :class=\"props.footerClass\"\n >\n <slot name=\"footer\">\n {{ props.footer }}\n </slot>\n </BCardFooter>\n <ReusableImg.reuse v-if=\"props.imgPlacement === 'bottom'\" />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport type {BCardProps} from '../../types/ComponentProps'\nimport {isEmptySlot} from '../../utils/dom'\nimport {computed} from 'vue'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport BCardImg from './BCardImg.vue'\nimport BCardHeader from './BCardHeader.vue'\nimport BCardBody from './BCardBody.vue'\nimport BCardFooter from './BCardFooter.vue'\nimport {createReusableTemplate} from '@vueuse/core'\nimport type {BCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BCardProps>(), {\n align: undefined,\n bodyBgVariant: undefined,\n bodyBorderVariant: undefined,\n bodyClass: undefined,\n bodyTag: 'div',\n bodyText: '',\n bodyTextVariant: undefined,\n borderVariant: null,\n footer: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerClass: undefined,\n footerTag: 'div',\n footerTextVariant: undefined,\n footerVariant: null,\n header: undefined,\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerClass: undefined,\n headerTag: 'div',\n headerTextVariant: undefined,\n headerVariant: null,\n imgAlt: undefined,\n imgPlacement: 'top',\n imgHeight: undefined,\n imgSrc: undefined,\n imgWidth: undefined,\n noBody: false,\n subtitle: undefined,\n subtitleTag: 'h6',\n subtitleTextVariant: 'body-secondary',\n tag: 'div',\n title: undefined,\n titleTag: 'h4',\n // ColorExtendables props\n bgVariant: null,\n textVariant: null,\n variant: null,\n // End ColorExtendables props\n})\nconst props = useDefaults(_props, 'BCard')\nconst slots = defineSlots<BCardSlots>()\n\nconst hasHeaderSlot = computed(() => !isEmptySlot(slots.header))\nconst hasFooterSlot = computed(() => !isEmptySlot(slots.footer))\n\nconst colorClasses = useColorVariantClasses(props)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`text-${props.align}`]: props.align !== undefined,\n 'flex-row': props.imgPlacement === 'start',\n 'flex-row-reverse': props.imgPlacement === 'end',\n },\n])\n\nconst imgAttr = computed(() => ({\n src: props.imgSrc,\n alt: props.imgAlt,\n height: props.imgHeight,\n width: props.imgWidth,\n placement: props.imgPlacement,\n}))\n\nconst ReusableImg = createReusableTemplate()\n</script>\n"],"mappings":"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"}