diff options
| author | Leonardo Bishop <me@leonardobishop.com> | 2024-03-12 19:18:52 +0000 |
|---|---|---|
| committer | Leonardo Bishop <me@leonardobishop.com> | 2024-03-12 19:18:52 +0000 |
| commit | a4052ffee8bc7c6c8a69eba5120b5c6c2d951b0f (patch) | |
| tree | 970921e587c0972ed4bf8a82a18bbad8dee10458 /components/base/ItemStack/ItemStackModal.vue | |
| parent | addf95bc7e1e694cd9ba7797c8b0847bfecaf54c (diff) | |
Add items
Diffstat (limited to 'components/base/ItemStack/ItemStackModal.vue')
| -rw-r--r-- | components/base/ItemStack/ItemStackModal.vue | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/components/base/ItemStack/ItemStackModal.vue b/components/base/ItemStack/ItemStackModal.vue index 7cf4db9..865c054 100644 --- a/components/base/ItemStack/ItemStackModal.vue +++ b/components/base/ItemStack/ItemStackModal.vue @@ -3,12 +3,11 @@ import { computed, ref } from 'vue'; import materials from '@/lib/materials'; const model = defineModel(); - const emit = defineEmits(['confirm']); - const props = defineProps<{ value: any }>(); +const session = useSessionStore(); //TODO unshitify const value = ref<any>(props.value); @@ -42,6 +41,17 @@ const selectedType = ref( const noTypeSelected = computed(() => selectedType.value === ''); const noValue = computed(() => !isQuestItem.value && !isItemStack.value && !isMaterial.value); +const selectedQuestItem = computed({ + get() { + return value.value?.['quest-item']; + }, + set(newValue: string) { + value.value = {} + value.value['quest-item'] = newValue; + } +}) +const knownQuestItems = computed(() => { return session.session.items.map((item) => item.id) }); + const setSelectedType = (type: string) => { if (type === 'questitem') { value.value = {}; @@ -98,6 +108,11 @@ const confirm = () => { <ItemStackForm v-model="value" /> </div> + <div id="quest-item" class="option-group" v-if="selectedType === 'questitem'"> + <label for="quest-item">Quest Item</label> + <multiselect v-model="selectedQuestItem" :options="knownQuestItems" :searchable="true" + placeholder="Enter quest item" /> + </div> <div id="confirm" class="control-group"> <Button :icon="['fas', 'times']" :label="'Cancel'" @click="model = false"></Button> |
