<template>
  <BasicModal
    width="90%"
    max-width="28rem"
    min-width="auto"
    :closable="false"
    :show-close-button="false"
  >
    <template #default="{ data, close }">
      <div class="permission-modal">
        <SvgIcon name="warning" :size="48" color="var(--color-prim-gray)" />
        <h3 class="permission-modal__title">دسترسی مورد نیاز</h3>
        <p class="permission-modal__desc">{{ message(data) }}</p>
        <BaseButton text="متوجه شدم" custom-class="permission-modal__btn" @click="close" />
      </div>
    </template>
  </BasicModal>
</template>

<script setup>
import BasicModal from '@/components/BasicModal.vue'
import BaseButton from '@/components/BaseButton.vue'
import SvgIcon from '@/components/icons/SvgIcon.vue'

defineOptions({ name: 'RegisterPermissionModal' })

const message = (data) => {
  if (data?.kind === 'audio') {
    return 'برای ضبط صدا، لطفاً دسترسی به میکروفون را فعال کنید.'
  }
  return 'برای ضبط ویدیو، لطفاً دسترسی به دوربین و میکروفون را فعال کنید.'
}
</script>

<style lang="scss" scoped>
.permission-modal {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem 0;
  text-align: center;

  &__title {
    font-family: var(--font-family-fa);
    font-weight: 700;
    font-size: 1.125rem;
    margin: 0;
  }

  &__desc {
    font-family: var(--font-family-fa);
    font-size: 0.875rem;
    color: var(--color-prim-gray);
    margin: 0;
  }

  &__btn {
    width: 100%;
    max-width: 12rem;
  }
}
</style>
