<script setup lang="ts">
import type { IEntity } from '@/app/interfaces/environment';
import { useVModel } from '@vueuse/core';
import type { IDivider, IImage, IParagraph } from '@/app/interfaces/entities';
interface Props {
  entity: IEntity;
  isEditMode: boolean;
}
const props = defineProps<Props>();
const emit = defineEmits(['update:entityData']);
const entity = useVModel(props, 'entity', emit);
</script>

<template>
  <div>
    <DividerItem
      v-if="entity.entity_type === 'divider'"
      :entityData="entity as IDivider"
      :isEditMode="isEditMode"
    />
    <TextItem
      v-if="entity.entity_type === 'paragraph'"
      :entityData="entity as IParagraph"
      :isEditMode="isEditMode"
    />
    <ImageItem
      v-if="entity.entity_type === 'image'"
      :entityData="entity as IImage"
      :isEditMode="isEditMode"
    />
  </div>
</template>

<style scoped></style>