frontend: useServers(), useOwners()
This commit is contained in:
parent
9eb9be7318
commit
43de7bc9b5
5 changed files with 70 additions and 61 deletions
33
frontend/app/composables/useOwners.ts
Normal file
33
frontend/app/composables/useOwners.ts
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
import { ref } from "vue"
|
||||||
|
import { isUnauthorized } from "~/utils/auth"
|
||||||
|
|
||||||
|
export function useOwners() {
|
||||||
|
const owners = ref([])
|
||||||
|
const loading = ref(false)
|
||||||
|
const error = ref("")
|
||||||
|
|
||||||
|
const { apiFetch } = useApi()
|
||||||
|
|
||||||
|
async function loadOwners() {
|
||||||
|
loading.value = true
|
||||||
|
error.value = ""
|
||||||
|
|
||||||
|
const result = await apiFetch("/owners")
|
||||||
|
|
||||||
|
if (isUnauthorized(result)) {
|
||||||
|
loading.value = false
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
|
owners.value = result
|
||||||
|
loading.value = false
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
owners,
|
||||||
|
loading,
|
||||||
|
error,
|
||||||
|
loadOwners
|
||||||
|
}
|
||||||
|
}
|
||||||
33
frontend/app/composables/useServers.ts
Normal file
33
frontend/app/composables/useServers.ts
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
import { ref } from "vue"
|
||||||
|
import { isUnauthorized } from "~/utils/auth"
|
||||||
|
|
||||||
|
export function useServers() {
|
||||||
|
const servers = ref([])
|
||||||
|
const loading = ref(false)
|
||||||
|
const error = ref("")
|
||||||
|
|
||||||
|
const { apiFetch } = useApi()
|
||||||
|
|
||||||
|
async function loadServers() {
|
||||||
|
loading.value = true
|
||||||
|
error.value = ""
|
||||||
|
|
||||||
|
const result = await apiFetch("/servers")
|
||||||
|
|
||||||
|
if (isUnauthorized(result)) {
|
||||||
|
loading.value = false
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
|
servers.value = result
|
||||||
|
loading.value = false
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
servers,
|
||||||
|
loading,
|
||||||
|
error,
|
||||||
|
loadServers
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -9,28 +9,12 @@ import { ref, onMounted } from "vue"
|
||||||
|
|
||||||
const { loadToken } = useAuth()
|
const { loadToken } = useAuth()
|
||||||
const { apiFetch } = useApi()
|
const { apiFetch } = useApi()
|
||||||
|
const { owners, loadOwners } = useOwners()
|
||||||
|
|
||||||
const owners = ref([])
|
|
||||||
const newOwnerName = ref("")
|
const newOwnerName = ref("")
|
||||||
const loading = ref(false)
|
const loading = ref(false)
|
||||||
const error = ref("")
|
const error = ref("")
|
||||||
|
|
||||||
async function loadOwners() {
|
|
||||||
loading.value = true
|
|
||||||
try {
|
|
||||||
const result = await apiFetch("/owners")
|
|
||||||
if (isUnauthorized(result)) {
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
owners.value = result
|
|
||||||
return result
|
|
||||||
} catch (e: any) {
|
|
||||||
error.value = e.message
|
|
||||||
} finally {
|
|
||||||
loading.value = false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function createOwner() {
|
async function createOwner() {
|
||||||
if (!newOwnerName.value.trim()) return
|
if (!newOwnerName.value.trim()) return
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,9 @@ import { ref, onMounted } from "vue"
|
||||||
import { isUnauthorized } from "~/utils/auth"
|
import { isUnauthorized } from "~/utils/auth"
|
||||||
|
|
||||||
const { apiFetch } = useApi()
|
const { apiFetch } = useApi()
|
||||||
|
const { servers, loadServers } = useServers()
|
||||||
|
const { owners, loadOwners } = useOwners()
|
||||||
|
|
||||||
const servers = ref([])
|
|
||||||
const newServer = ref({
|
const newServer = ref({
|
||||||
hostname: "",
|
hostname: "",
|
||||||
description: "",
|
description: "",
|
||||||
|
|
@ -64,36 +65,6 @@ async function saveEdit(serverId: number) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const owners = ref([])
|
|
||||||
|
|
||||||
async function loadOwners() {
|
|
||||||
try {
|
|
||||||
const result = await apiFetch("/owners")
|
|
||||||
if (isUnauthorized(result)) {
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
owners.value = result
|
|
||||||
} catch (e: any) {
|
|
||||||
error.value = e.message
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function loadServers() {
|
|
||||||
loading.value = true
|
|
||||||
try {
|
|
||||||
const result = await apiFetch("/servers")
|
|
||||||
if (isUnauthorized(result)) {
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
servers.value = result
|
|
||||||
} catch (e: any) {
|
|
||||||
error.value = e.message
|
|
||||||
} finally {
|
|
||||||
loading.value = false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function createServer() {
|
async function createServer() {
|
||||||
if (!newServer.value.hostname.trim()) return
|
if (!newServer.value.hostname.trim()) return
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,8 @@ import { ref, onMounted } from "vue"
|
||||||
import { isUnauthorized } from "~/utils/auth"
|
import { isUnauthorized } from "~/utils/auth"
|
||||||
|
|
||||||
const { apiFetch } = useApi()
|
const { apiFetch } = useApi()
|
||||||
|
const { servers, loadServers } = useServers()
|
||||||
|
|
||||||
const servers = ref([])
|
|
||||||
const selectedServer = ref(null)
|
const selectedServer = ref(null)
|
||||||
const query = ref("")
|
const query = ref("")
|
||||||
const results = ref([])
|
const results = ref([])
|
||||||
|
|
@ -21,18 +21,6 @@ function toggleRow(id: number) {
|
||||||
expandedRow.value = expandedRow.value === id ? null : id
|
expandedRow.value = expandedRow.value === id ? null : id
|
||||||
}
|
}
|
||||||
|
|
||||||
async function loadServers() {
|
|
||||||
try {
|
|
||||||
const result = await apiFetch("/servers")
|
|
||||||
if (isUnauthorized(result)) {
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
servers.value = result
|
|
||||||
} catch (e: any) {
|
|
||||||
error.value = e.message
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function search() {
|
async function search() {
|
||||||
if (!selectedServer.value && !query.value) {
|
if (!selectedServer.value && !query.value) {
|
||||||
results.value = []
|
results.value = []
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue