feat: display tasks

This commit is contained in:
wancat committed 2023-09-01 15:15:12 +08:00
1 parent dd7829b3e9
commit a8147ecfa1
3 files changed
+33 -10

No files matched your search

+3
View File
@@ -23,6 +23,9 @@ onMounted(async () => {
socket.on('graph', (event) => {
sessionManager.handleGraphUpdate(event)
})
socket.on('tasks', (tasks) => {
sessionManager.setTasks(tasks)
})
})
</script>
+26 -10
View File
@@ -1,19 +1,19 @@
<script setup>
import { ref } from 'vue'
import { onMounted, ref } from 'vue'
import api from '../utils/api'
import sessionManager from '../utils/session'
const questData = ref(null)
const questErr = ref(null)
api
.get('/quests/helloworld')
.then((res) => {
console.log(res.data)
onMounted(async () => {
try {
const res = await api.get('/quests/helloworld')
questData.value = res.data
})
.catch((err) => {
} catch (err) {
questErr.value = err
})
}
})
</script>
<template>
@@ -26,8 +26,24 @@ api
</h1>
<hr class="border-text-line border-2 my-2" />
<div>
<p class="text-red-500" v-if="questErr">{{ questErr.message }}</p>
<p class="text-text" v-else-if="questData">{{ questData.instruction }}</p>
<div v-if="questData">
<p class="text-text">{{ questData.instruction }}</p>
<br />
<p class="text-text">Tasks:</p>
<ul v-if="sessionManager.session.value">
<li v-for="task in sessionManager.session.value.tasks" :key="task.id">
<p class="text-text">
<input
type="checkbox"
class="form-checkbox"
disabled
:checked="task.completed"
/>{{ task.name }}
</p>
</li>
</ul>
</div>
<p class="text-red-500" v-else-if="questErr">{{ questErr.message }}</p>
<p class="text-text" v-else>Loading...</p>
</div>
</div>
+4
View File
@@ -35,6 +35,10 @@ class SessionManager {
}
}
setTasks(tasks) {
this.session.value.tasks = tasks
}
async createSession() {
console.log('Creating a new session...')
const res = await api.post('/sessions', { quest_id: this.questId })