aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/Editor/Quest/Modal
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/Editor/Quest/Modal')
-rw-r--r--src/components/Editor/Quest/Modal/DeleteQuestModal.vue42
-rw-r--r--src/components/Editor/Quest/Modal/DuplicateQuestModal.vue69
-rw-r--r--src/components/Editor/Quest/Modal/RenameQuestModal.vue69
3 files changed, 0 insertions, 180 deletions
diff --git a/src/components/Editor/Quest/Modal/DeleteQuestModal.vue b/src/components/Editor/Quest/Modal/DeleteQuestModal.vue
deleted file mode 100644
index d0b0c5a..0000000
--- a/src/components/Editor/Quest/Modal/DeleteQuestModal.vue
+++ /dev/null
@@ -1,42 +0,0 @@
-<script setup lang="ts">
-import Modal from '@/components/Control/Modal.vue';
-import Button from '@/components/Control/Button.vue';
-
-const model = defineModel();
-
-const emit = defineEmits(['delete']);
-
-defineProps({
- questId: String,
-});
-</script>
-
-<template>
- <Modal v-model="model">
- <template v-slot:header>
- <h2>Really delete quest '{{ questId }}'?</h2>
- </template>
- <p>Are you sure you want to delete this quest? The quests editor does not have undo functionality (yet)! </p>
- <div id="confirm" class="control-group">
- <Button
- :icon="['fas', 'fa-times']"
- :label="'Cancel'"
- @click="model = false"
- ></Button>
- <Button
- type="solid"
- :icon="['fas', 'fa-trash']"
- :label="'Delete'"
- @click="emit('delete')"
- ></Button>
- </div>
- </Modal>
-</template>
-
-<style scoped>
-#confirm {
- display: flex;
- justify-content: flex-end;
- margin-top: 1rem;
-}
-</style> \ No newline at end of file
diff --git a/src/components/Editor/Quest/Modal/DuplicateQuestModal.vue b/src/components/Editor/Quest/Modal/DuplicateQuestModal.vue
deleted file mode 100644
index bcd3782..0000000
--- a/src/components/Editor/Quest/Modal/DuplicateQuestModal.vue
+++ /dev/null
@@ -1,69 +0,0 @@
-<script setup lang="ts">
-import Modal from '@/components/Control/Modal.vue';
-import Button from '@/components/Control/Button.vue';
-import { computed, ref } from 'vue';
-import { useSessionStore } from '@/stores/session';
-
-const model = defineModel();
-
-const emit = defineEmits(['duplicate']);
-
-const props = defineProps({
- questId: String,
-});
-
-const session = useSessionStore();
-
-const newQuestId = ref(props.questId);
-
-const isDuplicate = computed(() => {
- return session.getQuestById(newQuestId.value!) !== undefined;
-});
-
-</script>
-
-<template>
- <Modal v-model="model">
- <template v-slot:header>
- <h2>Duplicate '{{ questId }}'</h2>
- </template>
-
- <template v-slot:body>
- <div id="body">
- <div class="option-group">
- <label for="new-type">ID of new quest</label>
- <input id="new-type" name="new-type" type="text" v-model="newQuestId" />
- </div>
- <p v-if="isDuplicate" class="error-text">Name is not unique.</p>
- <p>A Quest ID must be unique, alphanumeric, and not contain any spaces.</p>
- <div id="confirm" class="control-group">
- <Button
- :icon="['fas', 'fa-times']"
- :label="'Cancel'"
- @click="model = false"
- ></Button>
- <Button
- type="solid"
- :icon="['fas', 'fa-check']"
- :label="'Duplicate'"
- :disabled="isDuplicate"
- @click="emit('duplicate', newQuestId)"
- ></Button>
- </div>
- </div>
- </template>
- </Modal>
-</template>
-
-<style scoped>
-#confirm {
- display: flex;
- justify-content: flex-end;
-}
-
-#body {
- display: flex;
- flex-direction: column;
- gap: 0.5rem;
-}
-</style> \ No newline at end of file
diff --git a/src/components/Editor/Quest/Modal/RenameQuestModal.vue b/src/components/Editor/Quest/Modal/RenameQuestModal.vue
deleted file mode 100644
index 2ad1481..0000000
--- a/src/components/Editor/Quest/Modal/RenameQuestModal.vue
+++ /dev/null
@@ -1,69 +0,0 @@
-<script setup lang="ts">
-import Modal from '@/components/Control/Modal.vue';
-import Button from '@/components/Control/Button.vue';
-import { computed, ref } from 'vue';
-import { useSessionStore } from '@/stores/session';
-
-const model = defineModel();
-
-const emit = defineEmits(['update']);
-
-const props = defineProps({
- questId: String,
-});
-
-const session = useSessionStore();
-
-const newQuestId = ref(props.questId);
-
-const isDuplicate = computed(() => {
- return session.getQuestById(newQuestId.value!) !== undefined;
-});
-
-</script>
-
-<template>
- <Modal v-model="model">
- <template v-slot:header>
- <h2>Rename quest '{{ questId }}'</h2>
- </template>
-
- <template v-slot:body>
- <div id="body">
- <div class="option-group">
- <label for="new-type">New quest ID</label>
- <input id="new-type" name="new-type" type="text" v-model="newQuestId" />
- </div>
- <p v-if="isDuplicate" class="error-text">Name is not unique.</p>
- <p>A Quest ID must be unique, alphanumeric, and not contain any spaces.</p>
- <div id="confirm" class="control-group">
- <Button
- :icon="['fas', 'fa-times']"
- :label="'Cancel'"
- @click="model = false"
- ></Button>
- <Button
- type="solid"
- :icon="['fas', 'fa-check']"
- :label="'Rename'"
- :disabled="isDuplicate"
- @click="emit('update', newQuestId)"
- ></Button>
- </div>
- </div>
- </template>
- </Modal>
-</template>
-
-<style scoped>
-#confirm {
- display: flex;
- justify-content: flex-end;
-}
-
-#body {
- display: flex;
- flex-direction: column;
- gap: 0.5rem;
-}
-</style> \ No newline at end of file