<template>
  <component :is="type">
    <slot />
    <template #divider>
      <slot name="divider" />
    </template>
  </component>
</template>

<script setup>
import { computed } from "#imports";
import LineFluid from "./LineFluid.vue";
import LineShort from "./LineShort.vue";
import Divider from "./Divider.vue";
import Bar from "./Bar.vue";
import DualBar from "./DualBar.vue";
import SideBar from "./SideBar.vue";
import Maker from "./Maker.vue";
import Box from "./Box.vue";
import Simple from "./Simple.vue";
const props = defineProps({
  type: {
    type: String,
    default: void 0
  }
});
const type = computed(() => {
  switch (props.type) {
    case "line-fluid":
      return LineFluid;
    case "line":
      return LineShort;
    case "divider":
      return Divider;
    case "bar":
      return Bar;
    case "dual-bar":
      return DualBar;
    case "side-bar":
      return SideBar;
    case "maker":
      return Maker;
    case "box":
      return Box;
    default:
      return Simple;
  }
});
</script>
