<template>
  <v-dialog v-model="webhookModal" width="min(700px,90%)" overlay-opacity=".9">
    <v-card v-if="webhookModal" width="100%" min-height="350px" class="pa-4">
      <webhook-editor v-if="editOrAdd" ref="editor" :meta="meta" @backToList="editOrAdd = false" />
      <webhook-list v-else :meta="meta" @edit="editHook" @add="editOrAdd = true" />
    </v-card>
  </v-dialog>
</template>

<script>
import WebhookList from '~/components/project/tableTabs/webhook/WebhookList';
import WebhookEditor from '~/components/project/tableTabs/webhook/WebhookEditor';
export default {
  name: 'WebhookModal',
  components: { WebhookEditor, WebhookList },
  props: {
    meta: Object,
    value: Boolean,
  },
  data: () => ({
    editOrAdd: false,
    activePage: 'role',
  }),
  computed: {
    webhookModal: {
      get() {
        return this.value;
      },
      set(v) {
        this.$emit('input', v);
      },
    },
  },
  methods: {
    editHook(hook) {
      this.editOrAdd = true;
      this.$nextTick(() => {
        this.$refs.editor.hook = { ...hook };
        this.$refs.editor.onEventChange();
      });
    },
  },
};
</script>

<style scoped lang="scss"></style>