bootstrap-vue-next 1.0.2 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BCard-nRj1JWtQ.js → BCard-DELccMG-.js} +4 -2
- package/dist/{BCard-nRj1JWtQ.js.map → BCard-DELccMG-.js.map} +1 -1
- package/dist/{BPlaceholder-DvOCnqDh.js → BPlaceholder-DI12zz0a.js} +2 -2
- package/dist/{BPlaceholder-DvOCnqDh.js.map → BPlaceholder-DI12zz0a.js.map} +1 -1
- package/dist/bootstrap-vue-next.mjs +2 -2
- package/dist/components/BCard/BCard.vue.d.mts +1 -0
- package/dist/components/BCard/BCard.vue.d.ts +1 -0
- package/dist/composables/useToast/index.d.mts +3 -1
- package/dist/composables/useToast/index.d.ts +3 -1
- package/dist/src/components/BCard/index.mjs +1 -1
- package/dist/src/components/BPlaceholder/index.mjs +1 -1
- package/dist/src/components/index.mjs +2 -2
- package/dist/src/composables/orchestratorShared/index.mjs +1 -1
- package/dist/src/composables/orchestratorShared/index.mjs.map +1 -1
- package/dist/src/composables/useToast/index.mjs +62 -2
- package/dist/src/composables/useToast/index.mjs.map +1 -1
- package/dist/types/ComponentProps.d.mts +1 -0
- package/dist/types/ComponentProps.d.ts +1 -0
- package/package.json +1 -1
|
@@ -282,6 +282,7 @@ var BCard_default = /* @__PURE__ */ defineComponent({
|
|
|
282
282
|
headerTextVariant: { default: void 0 },
|
|
283
283
|
headerVariant: { default: null },
|
|
284
284
|
imgAlt: { default: void 0 },
|
|
285
|
+
imgAttrs: { default: void 0 },
|
|
285
286
|
imgPlacement: { default: "top" },
|
|
286
287
|
imgHeight: { default: void 0 },
|
|
287
288
|
imgSrc: { default: void 0 },
|
|
@@ -316,7 +317,8 @@ var BCard_default = /* @__PURE__ */ defineComponent({
|
|
|
316
317
|
alt: props.imgAlt,
|
|
317
318
|
height: props.imgHeight,
|
|
318
319
|
width: props.imgWidth,
|
|
319
|
-
placement: props.imgPlacement
|
|
320
|
+
placement: props.imgPlacement,
|
|
321
|
+
...props.imgAttrs
|
|
320
322
|
}));
|
|
321
323
|
return (_ctx, _cache) => {
|
|
322
324
|
return openBlock(), createBlock(resolveDynamicComponent(unref(props).tag), { class: normalizeClass(["card", computedClasses.value]) }, {
|
|
@@ -399,4 +401,4 @@ var BCard_default = /* @__PURE__ */ defineComponent({
|
|
|
399
401
|
//#endregion
|
|
400
402
|
export { BCardTitle_default as a, BCardSubtitle_default as i, BCardFooter_default as n, BCardHeader_default as o, BCardBody_default as r, BCardImg_default as s, BCard_default as t };
|
|
401
403
|
|
|
402
|
-
//# sourceMappingURL=BCard-
|
|
404
|
+
//# sourceMappingURL=BCard-DELccMG-.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BCard-nRj1JWtQ.js","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'\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'\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 {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, 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 {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, 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, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\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 {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, 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 {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, 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, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\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 <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\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 type {BCardProps, 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</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\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 <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\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 type {BCardProps, 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</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BCard-DELccMG-.js","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'\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'\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 {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, 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 {useColorVariantClasses} from '../composables/useColorVariantClasses'\nimport type {BCardHeadFootProps, 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, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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, BCardHeadFootProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardTitleProps, BCardTitleSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\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 {BCardSubtitleProps, BCardSubtitleSlots} from '../../types'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\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 {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, 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 {useColorVariantClasses} from '../../composables/useColorVariantClasses'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BCardBodyProps, 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, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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, BCardHeaderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\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 <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\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 <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\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 type {BCardProps, 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 imgAttrs: 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 ...props.imgAttrs,\n}))\n</script>\n","<template>\n <component :is=\"props.tag\" class=\"card\" :class=\"computedClasses\">\n <template v-if=\"props.imgPlacement !== 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\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 <template v-if=\"props.imgPlacement === 'bottom'\">\n <slot name=\"img\">\n <BCardImg v-if=\"props.imgSrc\" v-bind=\"imgAttr\" />\n </slot>\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\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 type {BCardProps, 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 imgAttrs: 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 ...props.imgAttrs,\n}))\n</script>\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { S as useToNumber } from "./dist-DKc2ivHS.js";
|
|
2
2
|
import { t as useDefaults } from "./useDefaults-BzP4qZBu.js";
|
|
3
3
|
import { t as useColorVariantClasses } from "./useColorVariantClasses-DHQvLjek.js";
|
|
4
|
-
import { s as BCardImg_default, t as BCard_default } from "./BCard-
|
|
4
|
+
import { s as BCardImg_default, t as BCard_default } from "./BCard-DELccMG-.js";
|
|
5
5
|
import { t as BTableSimple_default } from "./BTableSimple-2Z7ssnuG.js";
|
|
6
6
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, mergeProps, normalizeClass, openBlock, renderList, renderSlot, resolveDynamicComponent, unref, withCtx } from "vue";
|
|
7
7
|
//#endregion
|
|
@@ -293,4 +293,4 @@ var BPlaceholderWrapper_default = /* @__PURE__ */ defineComponent({
|
|
|
293
293
|
//#endregion
|
|
294
294
|
export { BPlaceholder_default as a, BPlaceholderButton_default as i, BPlaceholderTable_default as n, BPlaceholderCard_default as r, BPlaceholderWrapper_default as t };
|
|
295
295
|
|
|
296
|
-
//# sourceMappingURL=BPlaceholder-
|
|
296
|
+
//# sourceMappingURL=BPlaceholder-DI12zz0a.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BPlaceholder-DvOCnqDh.js","names":["$attrs"],"sources":["../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue"],"sourcesContent":["<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BPlaceholder-DI12zz0a.js","names":["$attrs"],"sources":["../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholder.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderButton.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderCard.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderTable.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue","../src/components/BPlaceholder/BPlaceholderWrapper.vue"],"sourcesContent":["<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <component :is=\"props.wrapperTag\" :class=\"wrapperClasses\">\n <component\n v-bind=\"$attrs\"\n :is=\"tag\"\n class=\"placeholder\"\n :class=\"computedClasses\"\n :style=\"computedStyle\"\n />\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type CSSProperties} from 'vue'\nimport type {BPlaceholderProps} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {useColorVariantClasses} from '../../composables/useColorVariantClasses'\n\ndefineOptions({\n inheritAttrs: false,\n})\n\nconst _props = withDefaults(defineProps<BPlaceholderProps>(), {\n animation: undefined,\n cols: 12,\n size: undefined,\n tag: 'span',\n variant: null,\n width: undefined,\n wrapperTag: 'span',\n})\nconst props = useDefaults(_props, 'BPlaceholder')\n\nconst widthString = computed(() =>\n props.width === undefined\n ? undefined\n : typeof props.width === 'number'\n ? props.width.toString()\n : props.width.replace('%', '')\n)\n\nconst colsString = computed(() =>\n props.cols === undefined\n ? undefined\n : typeof props.cols === 'number'\n ? props.cols.toString()\n : props.cols\n)\n\nconst colorClasses = useColorVariantClasses(\n computed(() => ({\n bgVariant: props.variant,\n }))\n)\nconst computedClasses = computed(() => [\n colorClasses.value,\n {\n [`col-${colsString.value}`]: colsString.value !== undefined && widthString.value === undefined,\n [`placeholder-${props.size}`]: props.size !== undefined,\n },\n])\n\nconst wrapperClasses = computed(() => ({\n [`placeholder-${props.animation}`]: props.animation !== undefined,\n}))\n\nconst computedStyle = computed<CSSProperties>(() => ({\n width: widthString.value === undefined ? undefined : `${widthString.value}%`,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BPlaceholder\n class=\"btn disabled\"\n :class=\"computedClasses\"\n :animation=\"props.animation\"\n :width=\"props.width\"\n :cols=\"props.cols\"\n :tag=\"props.tag\"\n :style=\"{'cursor': 'wait', 'pointer-events': 'auto'}\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport BPlaceholder from './BPlaceholder.vue'\nimport type {BPlaceholderButtonProps} from '../../types'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderButtonProps>(), {\n animation: undefined,\n cols: undefined,\n tag: 'div',\n variant: 'primary',\n width: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderButton')\n\nconst computedClasses = computed(() => ({\n [`btn-${props.variant}`]: props.variant !== null,\n}))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BCard :img-placement=\"props.imgPlacement\">\n <template v-if=\"!props.noImg\" #img>\n <slot name=\"img\">\n <BCardImg\n :blank=\"!props.imgSrc\"\n :blank-color=\"props.imgBlankColor\"\n :height=\"!props.imgSrc ? props.imgHeight : undefined\"\n :src=\"props.imgSrc\"\n :img-placement=\"props.imgPlacement\"\n :style=\"{cursor: 'wait'}\"\n />\n </slot>\n </template>\n\n <template v-if=\"!props.noHeader\" #header>\n <slot name=\"header\">\n <BPlaceholder\n :width=\"props.headerWidth\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :size=\"props.headerSize\"\n />\n </slot>\n </template>\n <slot>\n <BPlaceholder cols=\"7\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"4\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"6\" v-bind=\"defaultAttrs\" />\n <BPlaceholder cols=\"8\" v-bind=\"defaultAttrs\" />\n </slot>\n <template v-if=\"!props.noFooter\" #footer>\n <slot name=\"footer\">\n <component\n :is=\"footerComponent\"\n :width=\"props.footerWidth\"\n :animation=\"props.footerAnimation\"\n :size=\"props.noButton ? props.footerSize : undefined\"\n :variant=\"props.footerVariant\"\n />\n </slot>\n </template>\n </BCard>\n</template>\n\n<script setup lang=\"ts\">\nimport BCard from '../BCard/BCard.vue'\nimport BCardImg from '../BCard/BCardImg.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport BPlaceholderButton from './BPlaceholderButton.vue'\nimport {computed} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {BPlaceholderCardProps, BPlaceholderCardSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderCardProps>(), {\n animation: undefined,\n footerAnimation: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n footerWidth: 100,\n headerAnimation: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n headerWidth: 100,\n imgBlankColor: '#868e96',\n imgPlacement: 'top',\n imgHeight: 100,\n imgSrc: undefined,\n noButton: false,\n noFooter: false,\n noHeader: false,\n noImg: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderCard')\ndefineSlots<BPlaceholderCardSlots>()\n\nconst defaultAttrs = computed(() => ({\n animation: props.animation,\n size: props.size,\n variant: props.variant,\n}))\n\nconst footerComponent = computed(() => (!props.noButton ? BPlaceholderButton : BPlaceholder))\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <BTableSimple>\n <slot v-if=\"!props.noHeader\" name=\"thead\">\n <thead>\n <tr>\n <th v-for=\"(_, i) in computedHeaderColumnsLength\" :key=\"i\">\n <BPlaceholder\n :size=\"props.headerSize\"\n :variant=\"props.headerVariant\"\n :animation=\"props.headerAnimation\"\n :width=\"props.headerCellWidth\"\n />\n </th>\n </tr>\n </thead>\n </slot>\n <slot>\n <tbody>\n <tr v-for=\"(_, j) in rowsNumber\" :key=\"j\">\n <td v-for=\"(__, k) in columnsNumber\" :key=\"k\">\n <BPlaceholder\n :size=\"props.size\"\n :variant=\"props.variant\"\n :animation=\"props.animation\"\n :width=\"props.cellWidth\"\n />\n </td>\n </tr>\n </tbody>\n </slot>\n <slot v-if=\"props.showFooter\" name=\"tfoot\">\n <tfoot>\n <tr>\n <th v-for=\"(_, l) in computedFooterColumnsLength\" :key=\"l\">\n <BPlaceholder\n :size=\"props.footerSize\"\n :variant=\"props.footerVariant\"\n :animation=\"props.footerAnimation\"\n :width=\"props.footerCellWidth\"\n />\n </th>\n </tr>\n </tfoot>\n </slot>\n </BTableSimple>\n</template>\n\n<script setup lang=\"ts\">\nimport BTableSimple from '../BTable/BTableSimple.vue'\nimport BPlaceholder from './BPlaceholder.vue'\nimport {useToNumber} from '@vueuse/core'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {computed} from 'vue'\nimport type {BPlaceholderTableProps, BPlaceholderTableSlots} from '../../types'\n\nconst _props = withDefaults(defineProps<BPlaceholderTableProps>(), {\n animation: undefined,\n cellWidth: 100,\n columns: 5,\n footerAnimation: undefined,\n footerCellWidth: 100,\n footerColumns: undefined,\n footerSize: undefined,\n footerVariant: undefined,\n headerAnimation: undefined,\n headerCellWidth: 100,\n headerColumns: undefined,\n headerSize: undefined,\n headerVariant: undefined,\n noHeader: false,\n rows: 3,\n showFooter: false,\n size: undefined,\n variant: undefined,\n})\nconst props = useDefaults(_props, 'BPlaceholderTable')\ndefineSlots<BPlaceholderTableSlots>()\n\nconst columnsToNumber = useToNumber(() => props.columns)\nconst rowsToNumber = useToNumber(() => props.rows)\nconst computedHeaderColumns = computed(() => props.headerColumns ?? Number.NaN)\nconst computedFooterColumns = computed(() => props.footerColumns ?? Number.NaN)\nconst headerColumnsNumber = useToNumber(computedHeaderColumns)\nconst footerColumnsNumber = useToNumber(computedFooterColumns)\n\nconst columnsNumber = computed(() => columnsToNumber.value || 5)\nconst rowsNumber = computed(() => rowsToNumber.value || 3)\n\nconst computedHeaderColumnsLength = computed(() =>\n props.headerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(headerColumnsNumber.value)\n ? columnsNumber.value\n : headerColumnsNumber.value\n)\nconst computedFooterColumnsLength = computed(() =>\n props.footerColumns === undefined\n ? columnsNumber.value\n : Number.isNaN(footerColumnsNumber.value)\n ? columnsNumber.value\n : footerColumnsNumber.value\n)\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n","<template>\n <slot v-if=\"props.loading\" name=\"loading\" />\n <slot v-else />\n</template>\n\n<script setup lang=\"ts\">\nimport type {BPlaceholderWrapperProps, BPlaceholderWrapperSlots} from '../../types'\nimport {useDefaults} from '../../composables/useDefaults'\n\nconst _props = withDefaults(defineProps<BPlaceholderWrapperProps>(), {\n loading: false,\n})\nconst props = useDefaults(_props, 'BPlaceholderWrapper')\ndefineSlots<BPlaceholderWrapperSlots>()\n</script>\n"],"mappings":"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"}
|
|
@@ -29,7 +29,7 @@ import { n as BAvatar_default, t as BAvatarGroup_default } from "./BAvatar-BsStQ
|
|
|
29
29
|
import { n as BBreadcrumbItem_default, t as BBreadcrumb_default } from "./BBreadcrumb-C-SsS3hM.js";
|
|
30
30
|
import { n as BButtonGroup_default, t as BButtonToolbar_default } from "./BButton-Cc2gd95Z.js";
|
|
31
31
|
import { t as BImg_default } from "./BImg-knz2UZQE.js";
|
|
32
|
-
import { a as BCardTitle_default, i as BCardSubtitle_default, n as BCardFooter_default, o as BCardHeader_default, r as BCardBody_default, s as BCardImg_default, t as BCard_default } from "./BCard-
|
|
32
|
+
import { a as BCardTitle_default, i as BCardSubtitle_default, n as BCardFooter_default, o as BCardHeader_default, r as BCardBody_default, s as BCardImg_default, t as BCard_default } from "./BCard-DELccMG-.js";
|
|
33
33
|
import { n as BCardGroup_default, t as BCardText_default } from "./BCard-D2GEiXan.js";
|
|
34
34
|
import { n as BCarousel_default, t as BCarouselSlide_default } from "./BCarousel-DQgfW4DN.js";
|
|
35
35
|
import { t as BCol_default } from "./BCol-DiZFbqU5.js";
|
|
@@ -61,7 +61,7 @@ import { t as BOverlay_default } from "./BOverlay-CJfy_f6O.js";
|
|
|
61
61
|
import { a as directiveNames, i as composablesWithExternalPath, n as componentsWithExternalPath, o as directivesWithExternalPath, r as composableNames, t as componentNames } from "./BootstrapVueOptions-DH79gHKG.js";
|
|
62
62
|
import { t as types_exports } from "./src/types/index.mjs";
|
|
63
63
|
import { t as BPagination_default } from "./BPagination-D_Hfk6OF.js";
|
|
64
|
-
import { a as BPlaceholder_default, i as BPlaceholderButton_default, n as BPlaceholderTable_default, r as BPlaceholderCard_default, t as BPlaceholderWrapper_default } from "./BPlaceholder-
|
|
64
|
+
import { a as BPlaceholder_default, i as BPlaceholderButton_default, n as BPlaceholderTable_default, r as BPlaceholderCard_default, t as BPlaceholderWrapper_default } from "./BPlaceholder-DI12zz0a.js";
|
|
65
65
|
import { t as BTableSimple_default } from "./BTableSimple-2Z7ssnuG.js";
|
|
66
66
|
import { a as BTh_default, c as BTbody_default, i as BThead_default, n as BTableLite_default, o as BTfoot_default, r as BTr_default, s as BTd_default, t as BTable_default } from "./BTable-BZxX17YU.js";
|
|
67
67
|
import { n as BTab_default, t as BTabs_default } from "./BTabs-BKmkVWrZ.js";
|
|
@@ -29,6 +29,7 @@ declare const __VLS_base: import('vue').DefineComponent<BCardProps, {}, {}, {},
|
|
|
29
29
|
headerTextVariant: import('../..').TextColorVariant | null;
|
|
30
30
|
headerVariant: import('../..').ColorVariant | null;
|
|
31
31
|
imgAlt: string;
|
|
32
|
+
imgAttrs: Readonly<import('../../types/AnyValuedAttributes').AttrsValue>;
|
|
32
33
|
imgPlacement: import('../..').Placement | "overlay";
|
|
33
34
|
imgHeight: import('../../types/CommonTypes').Numberish;
|
|
34
35
|
imgSrc: string;
|
|
@@ -29,6 +29,7 @@ declare const __VLS_base: import('vue').DefineComponent<BCardProps, {}, {}, {},
|
|
|
29
29
|
headerTextVariant: import('../..').TextColorVariant | null;
|
|
30
30
|
headerVariant: import('../..').ColorVariant | null;
|
|
31
31
|
imgAlt: string;
|
|
32
|
+
imgAttrs: Readonly<import('../../types/AnyValuedAttributes').AttrsValue>;
|
|
32
33
|
imgPlacement: import('../..').Placement | "overlay";
|
|
33
34
|
imgHeight: import('../../types/CommonTypes').Numberish;
|
|
34
35
|
imgSrc: string;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { MaybeRef, Ref } from 'vue';
|
|
2
2
|
import { OrchestratorStoreObject } from '../../utils/keys';
|
|
3
|
-
import { ComponentController, ToastOrchestratorArrayValue, ToastOrchestratorCreateParamBase } from '../../types';
|
|
3
|
+
import { ComponentController, ControllerKey, ToastOrchestratorArrayValue, ToastOrchestratorCreateParamBase } from '../../types';
|
|
4
4
|
import { BToast } from '../../components';
|
|
5
5
|
export declare const useToast: () => {
|
|
6
6
|
_isToastAppend: Readonly<Ref<boolean, boolean>>;
|
|
7
7
|
_isOrchestratorInstalled: Readonly<Ref<boolean, boolean>>;
|
|
8
8
|
store: Ref<OrchestratorStoreObject, OrchestratorStoreObject>;
|
|
9
9
|
create: <ComponentProps extends Record<string, unknown> = Record<string, unknown>, T extends ToastOrchestratorCreateParamBase<ComponentProps> = ToastOrchestratorCreateParamBase<ComponentProps>>(obj?: MaybeRef<T>) => ComponentController<typeof BToast, Ref<ToastOrchestratorArrayValue>>;
|
|
10
|
+
hide: (trigger?: string, id?: ControllerKey) => void;
|
|
11
|
+
hideAll: (trigger?: string) => void;
|
|
10
12
|
};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { MaybeRef, Ref } from 'vue';
|
|
2
2
|
import { OrchestratorStoreObject } from '../../utils/keys';
|
|
3
|
-
import { ComponentController, ToastOrchestratorArrayValue, ToastOrchestratorCreateParamBase } from '../../types';
|
|
3
|
+
import { ComponentController, ControllerKey, ToastOrchestratorArrayValue, ToastOrchestratorCreateParamBase } from '../../types';
|
|
4
4
|
import { BToast } from '../../components';
|
|
5
5
|
export declare const useToast: () => {
|
|
6
6
|
_isToastAppend: Readonly<Ref<boolean, boolean>>;
|
|
7
7
|
_isOrchestratorInstalled: Readonly<Ref<boolean, boolean>>;
|
|
8
8
|
store: Ref<OrchestratorStoreObject, OrchestratorStoreObject>;
|
|
9
9
|
create: <ComponentProps extends Record<string, unknown> = Record<string, unknown>, T extends ToastOrchestratorCreateParamBase<ComponentProps> = ToastOrchestratorCreateParamBase<ComponentProps>>(obj?: MaybeRef<T>) => ComponentController<typeof BToast, Ref<ToastOrchestratorArrayValue>>;
|
|
10
|
+
hide: (trigger?: string, id?: ControllerKey) => void;
|
|
11
|
+
hideAll: (trigger?: string) => void;
|
|
10
12
|
};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as BCardTitle_default, i as BCardSubtitle_default, n as BCardFooter_default, o as BCardHeader_default, r as BCardBody_default, s as BCardImg_default, t as BCard_default } from "../../../BCard-
|
|
1
|
+
import { a as BCardTitle_default, i as BCardSubtitle_default, n as BCardFooter_default, o as BCardHeader_default, r as BCardBody_default, s as BCardImg_default, t as BCard_default } from "../../../BCard-DELccMG-.js";
|
|
2
2
|
import { n as BCardGroup_default, t as BCardText_default } from "../../../BCard-D2GEiXan.js";
|
|
3
3
|
export { BCard_default as BCard, BCardBody_default as BCardBody, BCardFooter_default as BCardFooter, BCardGroup_default as BCardGroup, BCardHeader_default as BCardHeader, BCardImg_default as BCardImg, BCardSubtitle_default as BCardSubtitle, BCardText_default as BCardText, BCardTitle_default as BCardTitle };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as BPlaceholder_default, i as BPlaceholderButton_default, n as BPlaceholderTable_default, r as BPlaceholderCard_default, t as BPlaceholderWrapper_default } from "../../../BPlaceholder-
|
|
1
|
+
import { a as BPlaceholder_default, i as BPlaceholderButton_default, n as BPlaceholderTable_default, r as BPlaceholderCard_default, t as BPlaceholderWrapper_default } from "../../../BPlaceholder-DI12zz0a.js";
|
|
2
2
|
export { BPlaceholder_default as BPlaceholder, BPlaceholderButton_default as BPlaceholderButton, BPlaceholderCard_default as BPlaceholderCard, BPlaceholderTable_default as BPlaceholderTable, BPlaceholderWrapper_default as BPlaceholderWrapper };
|
|
@@ -23,7 +23,7 @@ import { n as BAvatar_default, t as BAvatarGroup_default } from "../../BAvatar-B
|
|
|
23
23
|
import { n as BBreadcrumbItem_default, t as BBreadcrumb_default } from "../../BBreadcrumb-C-SsS3hM.js";
|
|
24
24
|
import { n as BButtonGroup_default, t as BButtonToolbar_default } from "../../BButton-Cc2gd95Z.js";
|
|
25
25
|
import { t as BImg_default } from "../../BImg-knz2UZQE.js";
|
|
26
|
-
import { a as BCardTitle_default, i as BCardSubtitle_default, n as BCardFooter_default, o as BCardHeader_default, r as BCardBody_default, s as BCardImg_default, t as BCard_default } from "../../BCard-
|
|
26
|
+
import { a as BCardTitle_default, i as BCardSubtitle_default, n as BCardFooter_default, o as BCardHeader_default, r as BCardBody_default, s as BCardImg_default, t as BCard_default } from "../../BCard-DELccMG-.js";
|
|
27
27
|
import { n as BCardGroup_default, t as BCardText_default } from "../../BCard-D2GEiXan.js";
|
|
28
28
|
import { n as BCarousel_default, t as BCarouselSlide_default } from "../../BCarousel-DQgfW4DN.js";
|
|
29
29
|
import { t as BCol_default } from "../../BCol-DiZFbqU5.js";
|
|
@@ -52,7 +52,7 @@ import { i as BNavbar_default, n as BNavbarNav_default, r as BNavbarBrand_defaul
|
|
|
52
52
|
import { t as BOffcanvas_default } from "../../BOffcanvas-BndaBJoP.js";
|
|
53
53
|
import { t as BOverlay_default } from "../../BOverlay-CJfy_f6O.js";
|
|
54
54
|
import { t as BPagination_default } from "../../BPagination-D_Hfk6OF.js";
|
|
55
|
-
import { a as BPlaceholder_default, i as BPlaceholderButton_default, n as BPlaceholderTable_default, r as BPlaceholderCard_default, t as BPlaceholderWrapper_default } from "../../BPlaceholder-
|
|
55
|
+
import { a as BPlaceholder_default, i as BPlaceholderButton_default, n as BPlaceholderTable_default, r as BPlaceholderCard_default, t as BPlaceholderWrapper_default } from "../../BPlaceholder-DI12zz0a.js";
|
|
56
56
|
import { t as BTableSimple_default } from "../../BTableSimple-2Z7ssnuG.js";
|
|
57
57
|
import { a as BTh_default, c as BTbody_default, i as BThead_default, n as BTableLite_default, o as BTfoot_default, r as BTr_default, s as BTd_default, t as BTable_default } from "../../BTable-BZxX17YU.js";
|
|
58
58
|
import { n as BTab_default, t as BTabs_default } from "../../BTabs-BKmkVWrZ.js";
|
|
@@ -48,9 +48,9 @@ var buildController = (id, store) => {
|
|
|
48
48
|
if (!item) return;
|
|
49
49
|
try {
|
|
50
50
|
if (item.value.props.modelValue) {
|
|
51
|
+
controller.hide("destroy");
|
|
51
52
|
await basePromise;
|
|
52
53
|
await nextTick();
|
|
53
|
-
controller.hide("destroy");
|
|
54
54
|
}
|
|
55
55
|
} finally {
|
|
56
56
|
store.value.delete(id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/composables/orchestratorShared/index.ts"],"sourcesContent":["import {type ComponentPublicInstance, inject, nextTick, provide, readonly, type Ref, ref} from 'vue'\nimport type {ComponentController, ControllerKey, PromiseWithController} from '../../types'\nimport type {BvTriggerableEvent} from '../../utils'\nimport {orchestratorRegistryKey, type OrchestratorStoreObject} from '../../utils/keys'\n\n/* oxlint-disable-next-line no-explicit-any */\n/* eslint-disable-next-line @typescript-eslint/no-explicit-any */\nexport type ValueInMapRecord<MapRecord> = MapRecord extends Map<any, infer I> ? I : never\n\nexport const buildController = <\n TComponent,\n TStore extends Readonly<Ref<OrchestratorStoreObject[keyof OrchestratorStoreObject]>>,\n>(\n id: ControllerKey,\n store: TStore\n): PromiseWithController<TComponent, ValueInMapRecord<TStore['value']>> => {\n let resolveFunc: (value: BvTriggerableEvent) => void = () => {}\n\n const basePromise = new Promise<BvTriggerableEvent>((resolve) => {\n resolveFunc = resolve\n })\n\n type RefWithMethods = ComponentPublicInstance<TComponent> & {\n show?: () => void\n hide?: (trigger?: string, noEmit?: boolean) => void\n toggle?: () => void\n }\n const findItem = () => store.value.get(id)\n\n const controller = {\n id,\n ref: null as RefWithMethods | null,\n async show() {\n const currentModelValue = controller.get()?.value.props.modelValue\n if (currentModelValue) {\n const event = await basePromise\n return Object.assign(Object.create(event), {\n [Symbol.asyncDispose]: controller.destroy,\n })\n }\n const refWithMethods = controller.ref\n if (\n refWithMethods !== null &&\n 'show' in refWithMethods &&\n typeof refWithMethods.show === 'function'\n ) {\n refWithMethods.show()\n } else {\n controller.set({modelValue: true})\n }\n const event = await basePromise\n return Object.assign(Object.create(event), {\n [Symbol.asyncDispose]: controller.destroy,\n })\n },\n hide(trigger?: string) {\n const refWithMethods = controller.ref\n if (\n refWithMethods !== null &&\n 'hide' in refWithMethods &&\n typeof refWithMethods.hide === 'function'\n ) {\n refWithMethods.hide(trigger, true)\n } else {\n controller.set({modelValue: false})\n }\n },\n toggle() {\n const currentItem = controller.get()\n const refWithMethods = controller.ref\n if (\n refWithMethods !== null &&\n 'toggle' in refWithMethods &&\n typeof refWithMethods.toggle === 'function'\n ) {\n refWithMethods.toggle()\n } else {\n controller.set({modelValue: !currentItem?.value.props.modelValue})\n }\n },\n get: findItem,\n set(val: Partial<ValueInMapRecord<TStore['value']>['value']['props']>) {\n const current = findItem()\n if (current?.value) {\n current.value = {\n ...current.value,\n props: {\n ...current.value.props,\n ...val,\n /* oxlint-disable no-explicit-any */\n /* eslint-disable @typescript-eslint/no-explicit-any */\n } as any,\n }\n }\n },\n async destroy() {\n const item = findItem()\n if (!item) return\n try {\n if (item.value.props.modelValue) {\n await basePromise\n await nextTick()\n
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/composables/orchestratorShared/index.ts"],"sourcesContent":["import {type ComponentPublicInstance, inject, nextTick, provide, readonly, type Ref, ref} from 'vue'\nimport type {ComponentController, ControllerKey, PromiseWithController} from '../../types'\nimport type {BvTriggerableEvent} from '../../utils'\nimport {orchestratorRegistryKey, type OrchestratorStoreObject} from '../../utils/keys'\n\n/* oxlint-disable-next-line no-explicit-any */\n/* eslint-disable-next-line @typescript-eslint/no-explicit-any */\nexport type ValueInMapRecord<MapRecord> = MapRecord extends Map<any, infer I> ? I : never\n\nexport const buildController = <\n TComponent,\n TStore extends Readonly<Ref<OrchestratorStoreObject[keyof OrchestratorStoreObject]>>,\n>(\n id: ControllerKey,\n store: TStore\n): PromiseWithController<TComponent, ValueInMapRecord<TStore['value']>> => {\n let resolveFunc: (value: BvTriggerableEvent) => void = () => {}\n\n const basePromise = new Promise<BvTriggerableEvent>((resolve) => {\n resolveFunc = resolve\n })\n\n type RefWithMethods = ComponentPublicInstance<TComponent> & {\n show?: () => void\n hide?: (trigger?: string, noEmit?: boolean) => void\n toggle?: () => void\n }\n const findItem = () => store.value.get(id)\n\n const controller = {\n id,\n ref: null as RefWithMethods | null,\n async show() {\n const currentModelValue = controller.get()?.value.props.modelValue\n if (currentModelValue) {\n const event = await basePromise\n return Object.assign(Object.create(event), {\n [Symbol.asyncDispose]: controller.destroy,\n })\n }\n const refWithMethods = controller.ref\n if (\n refWithMethods !== null &&\n 'show' in refWithMethods &&\n typeof refWithMethods.show === 'function'\n ) {\n refWithMethods.show()\n } else {\n controller.set({modelValue: true})\n }\n const event = await basePromise\n return Object.assign(Object.create(event), {\n [Symbol.asyncDispose]: controller.destroy,\n })\n },\n hide(trigger?: string) {\n const refWithMethods = controller.ref\n if (\n refWithMethods !== null &&\n 'hide' in refWithMethods &&\n typeof refWithMethods.hide === 'function'\n ) {\n refWithMethods.hide(trigger, true)\n } else {\n controller.set({modelValue: false})\n }\n },\n toggle() {\n const currentItem = controller.get()\n const refWithMethods = controller.ref\n if (\n refWithMethods !== null &&\n 'toggle' in refWithMethods &&\n typeof refWithMethods.toggle === 'function'\n ) {\n refWithMethods.toggle()\n } else {\n controller.set({modelValue: !currentItem?.value.props.modelValue})\n }\n },\n get: findItem,\n set(val: Partial<ValueInMapRecord<TStore['value']>['value']['props']>) {\n const current = findItem()\n if (current?.value) {\n current.value = {\n ...current.value,\n props: {\n ...current.value.props,\n ...val,\n /* oxlint-disable no-explicit-any */\n /* eslint-disable @typescript-eslint/no-explicit-any */\n } as any,\n }\n }\n },\n async destroy() {\n const item = findItem()\n if (!item) return\n try {\n if (item.value.props.modelValue) {\n controller.hide('destroy')\n await basePromise\n await nextTick()\n }\n } finally {\n store.value.delete(id)\n }\n },\n [Symbol.asyncDispose]() {\n return controller.destroy()\n },\n } as ComponentController<TComponent, ValueInMapRecord<TStore['value']>>\n\n return {\n controller,\n resolve: resolveFunc,\n }\n}\n\nexport const _newOrchestratorRegistry = (): {\n store: Readonly<Ref<OrchestratorStoreObject>>\n _isToastAppend: Readonly<Ref<boolean>>\n _setToastAppend: (value: boolean) => void\n _isOrchestratorInstalled: Readonly<Ref<boolean>>\n _setOrchestratorInstalled: (value: boolean) => void\n} => {\n const _isOrchestratorInstalled = ref(false)\n const _isToastAppend = ref(false)\n\n return {\n store: ref({\n modal: new Map(),\n tooltip: new Map(),\n popover: new Map(),\n toast: new Map(),\n }),\n _isOrchestratorInstalled: readonly(_isOrchestratorInstalled),\n _setOrchestratorInstalled: (v) => {\n _isOrchestratorInstalled.value = v\n },\n _isToastAppend: readonly(_isToastAppend),\n _setToastAppend: (v) => {\n _isToastAppend.value = v\n },\n }\n}\n\nexport const useOrchestratorRegistry = () => {\n const orchestratorRegistry = inject(orchestratorRegistryKey, null)\n\n if (orchestratorRegistry) {\n return orchestratorRegistry\n }\n const newOrchestratorRegistry = _newOrchestratorRegistry()\n provide(orchestratorRegistryKey, newOrchestratorRegistry)\n return newOrchestratorRegistry\n}\n\nexport const getOrchestratorControllerId = (propId: string | undefined) => {\n const id: ControllerKey = propId || Symbol('OrchestratorItem')\n\n return {\n /**\n * This id is used for stability in the store, using the createIdWatcher will update the store if the id ever changes\n */\n storeId: id,\n /**\n * Do not pass in the symbol as a prop. Html attribute cannot be a symbol. Thus it's internal\n */\n htmlAttributeId: typeof id === 'string' ? id : undefined,\n }\n}\n"],"mappings":";;;AASA,IAAa,mBAIX,IACA,UACyE;CACzE,IAAI,oBAAyD,CAAC;CAE9D,MAAM,cAAc,IAAI,SAA6B,YAAY;EAC/D,cAAc;CAChB,CAAC;CAOD,MAAM,iBAAiB,MAAM,MAAM,IAAI,EAAE;CAEzC,MAAM,aAAa;EACjB;EACA,KAAK;EACL,MAAM,OAAO;GAEX,IAD0B,WAAW,IAAI,CAAC,EAAE,MAAM,MAAM,YACjC;IACrB,MAAM,QAAQ,MAAM;IACpB,OAAO,OAAO,OAAO,OAAO,OAAO,KAAK,GAAG,GACxC,OAAO,eAAe,WAAW,QACpC,CAAC;GACH;GACA,MAAM,iBAAiB,WAAW;GAClC,IACE,mBAAmB,QACnB,UAAU,kBACV,OAAO,eAAe,SAAS,YAE/B,eAAe,KAAK;QAEpB,WAAW,IAAI,EAAC,YAAY,KAAI,CAAC;GAEnC,MAAM,QAAQ,MAAM;GACpB,OAAO,OAAO,OAAO,OAAO,OAAO,KAAK,GAAG,GACxC,OAAO,eAAe,WAAW,QACpC,CAAC;EACH;EACA,KAAK,SAAkB;GACrB,MAAM,iBAAiB,WAAW;GAClC,IACE,mBAAmB,QACnB,UAAU,kBACV,OAAO,eAAe,SAAS,YAE/B,eAAe,KAAK,SAAS,IAAI;QAEjC,WAAW,IAAI,EAAC,YAAY,MAAK,CAAC;EAEtC;EACA,SAAS;GACP,MAAM,cAAc,WAAW,IAAI;GACnC,MAAM,iBAAiB,WAAW;GAClC,IACE,mBAAmB,QACnB,YAAY,kBACZ,OAAO,eAAe,WAAW,YAEjC,eAAe,OAAO;QAEtB,WAAW,IAAI,EAAC,YAAY,CAAC,aAAa,MAAM,MAAM,WAAU,CAAC;EAErE;EACA,KAAK;EACL,IAAI,KAAmE;GACrE,MAAM,UAAU,SAAS;GACzB,IAAI,SAAS,OACX,QAAQ,QAAQ;IACd,GAAG,QAAQ;IACX,OAAO;KACL,GAAG,QAAQ,MAAM;KACjB,GAAG;IAGL;GACF;EAEJ;EACA,MAAM,UAAU;GACd,MAAM,OAAO,SAAS;GACtB,IAAI,CAAC,MAAM;GACX,IAAI;IACF,IAAI,KAAK,MAAM,MAAM,YAAY;KAC/B,WAAW,KAAK,SAAS;KACzB,MAAM;KACN,MAAM,SAAS;IACjB;GACF,UAAU;IACR,MAAM,MAAM,OAAO,EAAE;GACvB;EACF;EACA,CAAC,OAAO,gBAAgB;GACtB,OAAO,WAAW,QAAQ;EAC5B;CACF;CAEA,OAAO;EACL;EACA,SAAS;CACX;AACF;AAEA,IAAa,iCAMR;CACH,MAAM,2BAA2B,IAAI,KAAK;CAC1C,MAAM,iBAAiB,IAAI,KAAK;CAEhC,OAAO;EACL,OAAO,IAAI;GACT,uBAAO,IAAI,IAAI;GACf,yBAAS,IAAI,IAAI;GACjB,yBAAS,IAAI,IAAI;GACjB,uBAAO,IAAI,IAAI;EACjB,CAAC;EACD,0BAA0B,SAAS,wBAAwB;EAC3D,4BAA4B,MAAM;GAChC,yBAAyB,QAAQ;EACnC;EACA,gBAAgB,SAAS,cAAc;EACvC,kBAAkB,MAAM;GACtB,eAAe,QAAQ;EACzB;CACF;AACF;AAEA,IAAa,gCAAgC;CAC3C,MAAM,uBAAuB,OAAO,yBAAyB,IAAI;CAEjE,IAAI,sBACF,OAAO;CAET,MAAM,0BAA0B,yBAAyB;CACzD,QAAQ,yBAAyB,uBAAuB;CACxD,OAAO;AACT;AAEA,IAAa,+BAA+B,WAA+B;CACzE,MAAM,KAAoB,UAAU,OAAO,kBAAkB;CAE7D,OAAO;;;;EAIL,SAAS;;;;EAIT,iBAAiB,OAAO,OAAO,WAAW,KAAK,KAAA;CACjD;AACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as orchestratorRegistryKey } from "../../../keys-BgLwJbLV.js";
|
|
1
|
+
import { _ as orchestratorRegistryKey, x as showHideRegistryKey } from "../../../keys-BgLwJbLV.js";
|
|
2
2
|
import { buildController, getOrchestratorControllerId } from "../orchestratorShared/index.mjs";
|
|
3
3
|
import { t as BToast_default } from "../../../BToast-Di9HwBOV.js";
|
|
4
4
|
import { computed, inject, markRaw, onScopeDispose, ref } from "vue";
|
|
@@ -8,6 +8,7 @@ var useToast = () => {
|
|
|
8
8
|
const orchestratorRegistry = inject(orchestratorRegistryKey, null);
|
|
9
9
|
if (!orchestratorRegistry) throw new Error("useToast() must be called within setup(), and BApp, useRegistry or plugin must be installed/provided.");
|
|
10
10
|
const { store, _isToastAppend, _isOrchestratorInstalled } = orchestratorRegistry;
|
|
11
|
+
const showHideRegistry = inject(showHideRegistryKey, null);
|
|
11
12
|
/**
|
|
12
13
|
* @returns {ComponentController<typeof BToast, ToastOrchestratorParam>}
|
|
13
14
|
*/
|
|
@@ -53,11 +54,70 @@ var useToast = () => {
|
|
|
53
54
|
}, true);
|
|
54
55
|
return controller;
|
|
55
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Hides a mounted BToast that registered itself under `id`. Going through the component, rather
|
|
59
|
+
* than through the store, is what lets the trigger flow through the regular hide cycle
|
|
60
|
+
*
|
|
61
|
+
* @returns whether a toast was found
|
|
62
|
+
*/
|
|
63
|
+
const hideRegisteredInstance = (id, trigger) => {
|
|
64
|
+
if (typeof id !== "string") return false;
|
|
65
|
+
const instances = showHideRegistry?.values.value.get(id)?.instances;
|
|
66
|
+
if (!instances) return false;
|
|
67
|
+
for (let i = instances.length - 1; i >= 0; i--) {
|
|
68
|
+
const instance = instances[i];
|
|
69
|
+
if (instance?.component.type !== BToast_default) continue;
|
|
70
|
+
instance.hide(trigger, true);
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
return false;
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Hides a toast that lives in the orchestrator store. Prefers the mounted instance, falling back
|
|
77
|
+
* to the store entry itself, which also covers toasts that the orchestrator has yet to render
|
|
78
|
+
* and toasts rendered through a custom `component`
|
|
79
|
+
*/
|
|
80
|
+
const hideStoreItem = (item, trigger) => {
|
|
81
|
+
if (hideRegisteredInstance(item.value.props.id ?? item.value.id, trigger)) return;
|
|
82
|
+
item.value = {
|
|
83
|
+
...item.value,
|
|
84
|
+
props: {
|
|
85
|
+
...item.value.props,
|
|
86
|
+
modelValue: false
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Hide all toasts
|
|
92
|
+
* @param trigger - The trigger to hide all toasts
|
|
93
|
+
*/
|
|
94
|
+
const hideAll = (trigger) => {
|
|
95
|
+
for (const item of store.value.toast.values()) hideStoreItem(item, trigger);
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* Hide a toast
|
|
99
|
+
* @param trigger - The trigger to hide the toast
|
|
100
|
+
* @param id - The id of the toast to hide, when omitted every toast is hidden
|
|
101
|
+
*/
|
|
102
|
+
const hide = (trigger, id) => {
|
|
103
|
+
if (id === void 0) {
|
|
104
|
+
hideAll(trigger);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
const item = store.value.toast.get(id);
|
|
108
|
+
if (item) {
|
|
109
|
+
hideStoreItem(item, trigger);
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
hideRegisteredInstance(id, trigger);
|
|
113
|
+
};
|
|
56
114
|
return {
|
|
57
115
|
_isToastAppend,
|
|
58
116
|
_isOrchestratorInstalled,
|
|
59
117
|
store,
|
|
60
|
-
create
|
|
118
|
+
create,
|
|
119
|
+
hide,
|
|
120
|
+
hideAll
|
|
61
121
|
};
|
|
62
122
|
};
|
|
63
123
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/composables/useToast/index.ts"],"sourcesContent":["import {\n type ComponentPublicInstance,\n computed,\n type ComputedRef,\n inject,\n markRaw,\n type MaybeRef,\n onScopeDispose,\n ref,\n type Ref,\n} from 'vue'\nimport {orchestratorRegistryKey
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/composables/useToast/index.ts"],"sourcesContent":["import {\n type ComponentPublicInstance,\n computed,\n type ComputedRef,\n inject,\n markRaw,\n type MaybeRef,\n onScopeDispose,\n ref,\n type Ref,\n} from 'vue'\nimport {\n orchestratorRegistryKey,\n type OrchestratorStoreObject,\n showHideRegistryKey,\n} from '../../utils/keys'\nimport type {ContainerPosition} from '../../types/Alignment'\nimport type {\n ComponentController,\n ControllerKey,\n ToastOrchestratorArrayValue,\n ToastOrchestratorCreateParamBase,\n} from '../../types'\nimport {buildController, getOrchestratorControllerId} from '../orchestratorShared'\nimport {BToast} from '../../components'\n\nconst posDefault: ContainerPosition = 'top-end'\n\nexport const useToast = () => {\n const orchestratorRegistry = inject(orchestratorRegistryKey, null)\n if (!orchestratorRegistry)\n throw new Error(\n 'useToast() must be called within setup(), and BApp, useRegistry or plugin must be installed/provided.'\n )\n const {store, _isToastAppend, _isOrchestratorInstalled} = orchestratorRegistry\n const showHideRegistry = inject(showHideRegistryKey, null)\n\n /**\n * @returns {ComponentController<typeof BToast, ToastOrchestratorParam>}\n */\n // Uses a `function` declaration (rather than a generic arrow function assigned to a const) so\n // that TypeScript preserves per-call generic inference when `create` is returned as part of\n // `useToast()`'s inferred return object.\n function create<\n ComponentProps extends Record<string, unknown> = Record<string, unknown>,\n T extends ToastOrchestratorCreateParamBase<ComponentProps> =\n ToastOrchestratorCreateParamBase<ComponentProps>,\n >(\n obj: MaybeRef<T> = {} as T\n ): ComponentController<typeof BToast, Ref<ToastOrchestratorArrayValue>> {\n if (!_isOrchestratorInstalled.value)\n throw new Error('The BApp component must be mounted to use the toast composable')\n\n const toastComp = markRaw(BToast)\n const resolvedProps = ref(obj)\n const toastStore = computed(() => store.value.toast)\n const {htmlAttributeId, storeId} = getOrchestratorControllerId(resolvedProps.value.id)\n\n const {resolve, controller} = buildController<\n typeof BToast,\n ComputedRef<OrchestratorStoreObject['toast']>\n >(storeId, toastStore)\n\n const value = computed<ToastOrchestratorArrayValue>({\n get: () => {\n const {component = toastComp, options, slots, ...props} = resolvedProps.value\n\n return {\n component,\n options,\n slots,\n id: storeId,\n fns: {\n resolve,\n setRef: (v: ComponentPublicInstance) => {\n controller.ref = v\n },\n destroy: controller.destroy,\n },\n props: {\n ...props,\n id: htmlAttributeId,\n position: props.position || posDefault,\n },\n }\n },\n set: (v) => {\n resolvedProps.value = {\n ...resolvedProps.value,\n ...v.props,\n }\n },\n })\n\n toastStore.value.set(storeId, value)\n\n onScopeDispose(async () => {\n await controller[Symbol.asyncDispose]()\n }, true)\n\n return controller\n }\n\n /**\n * Hides a mounted BToast that registered itself under `id`. Going through the component, rather\n * than through the store, is what lets the trigger flow through the regular hide cycle\n *\n * @returns whether a toast was found\n */\n const hideRegisteredInstance = (id: ControllerKey, trigger?: string): boolean => {\n // The show/hide registry is keyed by the html id, symbols never reach it\n if (typeof id !== 'string') return false\n const instances = showHideRegistry?.values.value.get(id)?.instances\n if (!instances) return false\n // Every show/hide component shares this registry, so an id may resolve to a BCollapse or a\n // BModal. Only toasts are ours to hide. Newest first, the way the registry's getActive does\n for (let i = instances.length - 1; i >= 0; i--) {\n const instance = instances[i]\n if (instance?.component.type !== BToast) continue\n instance.hide(trigger, true)\n return true\n }\n return false\n }\n\n /**\n * Hides a toast that lives in the orchestrator store. Prefers the mounted instance, falling back\n * to the store entry itself, which also covers toasts that the orchestrator has yet to render\n * and toasts rendered through a custom `component`\n */\n const hideStoreItem = (item: Ref<ToastOrchestratorArrayValue>, trigger?: string): void => {\n if (hideRegisteredInstance(item.value.props.id ?? item.value.id, trigger)) return\n item.value = {\n ...item.value,\n props: {\n ...item.value.props,\n modelValue: false,\n },\n }\n }\n\n /**\n * Hide all toasts\n * @param trigger - The trigger to hide all toasts\n */\n const hideAll = (trigger?: string): void => {\n for (const item of store.value.toast.values()) {\n hideStoreItem(item, trigger)\n }\n }\n\n /**\n * Hide a toast\n * @param trigger - The trigger to hide the toast\n * @param id - The id of the toast to hide, when omitted every toast is hidden\n */\n const hide = (trigger?: string, id?: ControllerKey): void => {\n if (id === undefined) {\n hideAll(trigger)\n return\n }\n const item = store.value.toast.get(id)\n if (item) {\n hideStoreItem(item, trigger)\n return\n }\n // Not created through the composable, it could still be a BToast declared in a template\n hideRegisteredInstance(id, trigger)\n }\n\n return {\n _isToastAppend,\n _isOrchestratorInstalled,\n store,\n create,\n hide,\n hideAll,\n }\n}\n"],"mappings":";;;;;AA0BA,IAAM,aAAgC;AAEtC,IAAa,iBAAiB;CAC5B,MAAM,uBAAuB,OAAO,yBAAyB,IAAI;CACjE,IAAI,CAAC,sBACH,MAAM,IAAI,MACR,uGACF;CACF,MAAM,EAAC,OAAO,gBAAgB,6BAA4B;CAC1D,MAAM,mBAAmB,OAAO,qBAAqB,IAAI;;;;CAQzD,SAAS,OAKP,MAAmB,CAAC,GACkD;EACtE,IAAI,CAAC,yBAAyB,OAC5B,MAAM,IAAI,MAAM,gEAAgE;EAElF,MAAM,YAAY,QAAQ,cAAM;EAChC,MAAM,gBAAgB,IAAI,GAAG;EAC7B,MAAM,aAAa,eAAe,MAAM,MAAM,KAAK;EACnD,MAAM,EAAC,iBAAiB,YAAW,4BAA4B,cAAc,MAAM,EAAE;EAErF,MAAM,EAAC,SAAS,eAAc,gBAG5B,SAAS,UAAU;EAErB,MAAM,QAAQ,SAAsC;GAClD,WAAW;IACT,MAAM,EAAC,YAAY,WAAW,SAAS,OAAO,GAAG,UAAS,cAAc;IAExE,OAAO;KACL;KACA;KACA;KACA,IAAI;KACJ,KAAK;MACH;MACA,SAAS,MAA+B;OACtC,WAAW,MAAM;MACnB;MACA,SAAS,WAAW;KACtB;KACA,OAAO;MACL,GAAG;MACH,IAAI;MACJ,UAAU,MAAM,YAAY;KAC9B;IACF;GACF;GACA,MAAM,MAAM;IACV,cAAc,QAAQ;KACpB,GAAG,cAAc;KACjB,GAAG,EAAE;IACP;GACF;EACF,CAAC;EAED,WAAW,MAAM,IAAI,SAAS,KAAK;EAEnC,eAAe,YAAY;GACzB,MAAM,WAAW,OAAO,aAAa,CAAC;EACxC,GAAG,IAAI;EAEP,OAAO;CACT;;;;;;;CAQA,MAAM,0BAA0B,IAAmB,YAA8B;EAE/E,IAAI,OAAO,OAAO,UAAU,OAAO;EACnC,MAAM,YAAY,kBAAkB,OAAO,MAAM,IAAI,EAAE,CAAC,EAAE;EAC1D,IAAI,CAAC,WAAW,OAAO;EAGvB,KAAK,IAAI,IAAI,UAAU,SAAS,GAAG,KAAK,GAAG,KAAK;GAC9C,MAAM,WAAW,UAAU;GAC3B,IAAI,UAAU,UAAU,SAAS,gBAAQ;GACzC,SAAS,KAAK,SAAS,IAAI;GAC3B,OAAO;EACT;EACA,OAAO;CACT;;;;;;CAOA,MAAM,iBAAiB,MAAwC,YAA2B;EACxF,IAAI,uBAAuB,KAAK,MAAM,MAAM,MAAM,KAAK,MAAM,IAAI,OAAO,GAAG;EAC3E,KAAK,QAAQ;GACX,GAAG,KAAK;GACR,OAAO;IACL,GAAG,KAAK,MAAM;IACd,YAAY;GACd;EACF;CACF;;;;;CAMA,MAAM,WAAW,YAA2B;EAC1C,KAAK,MAAM,QAAQ,MAAM,MAAM,MAAM,OAAO,GAC1C,cAAc,MAAM,OAAO;CAE/B;;;;;;CAOA,MAAM,QAAQ,SAAkB,OAA6B;EAC3D,IAAI,OAAO,KAAA,GAAW;GACpB,QAAQ,OAAO;GACf;EACF;EACA,MAAM,OAAO,MAAM,MAAM,MAAM,IAAI,EAAE;EACrC,IAAI,MAAM;GACR,cAAc,MAAM,OAAO;GAC3B;EACF;EAEA,uBAAuB,IAAI,OAAO;CACpC;CAEA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
|
|
@@ -997,6 +997,7 @@ export interface BCardProps extends ColorExtendables {
|
|
|
997
997
|
headerTextVariant?: TextColorVariant | null;
|
|
998
998
|
headerVariant?: ColorVariant | null;
|
|
999
999
|
imgAlt?: string;
|
|
1000
|
+
imgAttrs?: Readonly<AttrsValue>;
|
|
1000
1001
|
imgPlacement?: Placement | 'overlay';
|
|
1001
1002
|
imgHeight?: Numberish;
|
|
1002
1003
|
imgSrc?: string;
|
|
@@ -997,6 +997,7 @@ export interface BCardProps extends ColorExtendables {
|
|
|
997
997
|
headerTextVariant?: TextColorVariant | null;
|
|
998
998
|
headerVariant?: ColorVariant | null;
|
|
999
999
|
imgAlt?: string;
|
|
1000
|
+
imgAttrs?: Readonly<AttrsValue>;
|
|
1000
1001
|
imgPlacement?: Placement | 'overlay';
|
|
1001
1002
|
imgHeight?: Numberish;
|
|
1002
1003
|
imgSrc?: string;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "bootstrap-vue-next",
|
|
3
3
|
"displayName": "BootstrapVueNext",
|
|
4
4
|
"description": "Seamless integration of Vue 3, Bootstrap 5, and TypeScript for modern, type-safe UI development",
|
|
5
|
-
"version": "1.0
|
|
5
|
+
"version": "1.2.0",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"main": "./dist/bootstrap-vue-next.mjs",
|