Skip to content

Commit 1bd83f2

Browse files
committed
Merge ButtonScheduler and ButtonQueue into ButtonAutoMode
1 parent 350baea commit 1bd83f2

File tree

6 files changed

+65
-67
lines changed

6 files changed

+65
-67
lines changed
Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
<template>
22
<VCardActions>
3-
<ButtonOff v-if="mode === 'off'"></ButtonOff>
4-
<ButtonScheduler v-else-if="mode === 'scheduler'"></ButtonScheduler>
5-
<ButtonQueue v-else-if="mode === 'queue'"></ButtonQueue>
6-
<ButtonError v-else></ButtonError>
3+
<VBtn v-if="loading" loading variant="tonal" color="tertiary"> </VBtn>
4+
<ButtonError v-else-if="error" :error="error"></ButtonError>
5+
<ButtonAutoMode v-else-if="autoMode"></ButtonAutoMode>
6+
<ButtonOff v-else-if="autoMode === false"></ButtonOff>
7+
<VBtn v-else variant="tonal" color="error"> Unknown </VBtn>
78
</VCardActions>
89
</template>
910

1011
<script setup lang="ts">
11-
import { useSubscribeScheduleAutoModeMode } from "@/api";
12+
import { useAutoMode } from "./use-auto-mode";
1213
13-
import ButtonError from "./modes/error/Button.vue";
1414
import ButtonOff from "./modes/off/Button.vue";
15-
import ButtonQueue from "./modes/queue/Button.vue";
16-
import ButtonScheduler from "./modes/scheduler/Button.vue";
17-
const { data: mode } = await useSubscribeScheduleAutoModeMode();
15+
import ButtonAutoMode from "./modes/auto-mode/Button.vue";
16+
import ButtonError from "./modes/error/Button.vue";
17+
const { autoMode, loading, error } = await useAutoMode();
1818
</script>

src/components/schedule/auto-mode/auto-mode-button/modes/queue/Button.vue renamed to src/components/schedule/auto-mode/auto-mode-button/modes/auto-mode/Button.vue

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,17 @@
22
<Component :is="menuComponent">
33
<template #activator="{ props }">
44
<VBtn v-bind="props" variant="tonal" color="tertiary">
5-
<slot v-if="!mobile">Auto Mode: </slot>Queue
5+
<slot v-if="!mobile">Auto Mode: </slot>{{ mode }}
66
<template #append v-if="pulling">
7-
<VProgressCircular
8-
indeterminate
9-
size="16"
10-
width="2"
11-
class="ml-2"
12-
>
7+
<VProgressCircular indeterminate size="16" width="2" class="ml-1">
138
</VProgressCircular>
149
</template>
1510
</VBtn>
1611
</template>
1712
<div>
18-
<Dialog class="dialog"></Dialog>
13+
<DialogScheduler v-if="mode === 'scheduler'" class="dialog"></DialogScheduler>
14+
<DialogQueue v-else-if="mode === 'queue'" class="dialog"></DialogQueue>
15+
<VCard v-else><VAlert type="error" variant="tonal">Unknown Mode</VAlert></VCard>
1916
</div>
2017
</Component>
2118
</template>
@@ -26,13 +23,18 @@ import { useDisplay } from "vuetify";
2623
import { VBottomSheet } from "vuetify/components/VBottomSheet";
2724
import { VMenu } from "vuetify/components/VMenu";
2825
26+
import { useSubscribeScheduleAutoModeMode } from "@/api";
27+
2928
import { useAutoMode } from "../../use-auto-mode";
30-
import Dialog from "./Dialog.vue";
29+
import DialogScheduler from "./scheduler/Dialog.vue";
30+
import DialogQueue from "./queue/Dialog.vue";
3131
3232
const { mobile } = useDisplay();
3333
const menuComponent = computed(() => (mobile.value ? VBottomSheet : VMenu));
3434
35-
const { pulling } = await useAutoMode();
35+
const { data: mode, then: then1 } = useSubscribeScheduleAutoModeMode();
36+
const { pulling, then: then2 } = useAutoMode();
37+
await Promise.all([then1(), then2()]);
3638
</script>
3739

3840
<style scoped>

src/components/schedule/auto-mode/auto-mode-button/modes/scheduler/Dialog.vue renamed to src/components/schedule/auto-mode/auto-mode-button/modes/auto-mode/Dialog.vue

File renamed without changes.

src/components/schedule/auto-mode/auto-mode-button/modes/queue/Dialog.vue renamed to src/components/schedule/auto-mode/auto-mode-button/modes/auto-mode/queue/Dialog.vue

File renamed without changes.
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<template>
2+
<VCard>
3+
<VCardText>
4+
<div class="mb-1">
5+
<p class="font-weight-medium">
6+
The auto mode currently is <span class="font-italic"> on </span> and loads
7+
scripts from the <span class="font-italic"> scheduler </span>.
8+
</p>
9+
<p class="mt-3">
10+
The auto mode automatically loads and runs the next script after each run
11+
successfully ends.
12+
</p>
13+
<p class="mt-3">
14+
The auto mode can load scripts from either the
15+
<span class="font-italic"> scheduler </span> or the
16+
<span class="font-italic"> queue </span>.
17+
</p>
18+
</div>
19+
</VCardText>
20+
<VCardActions>
21+
<VBtn variant="outlined" class="flex-grow-1" @click="switchToLoadFromQueue">
22+
switch to load from queue
23+
</VBtn>
24+
</VCardActions>
25+
<VCardActions>
26+
<VBtn variant="outlined" class="flex-grow-1" @click="turnOff">
27+
turn off auto mode
28+
</VBtn>
29+
</VCardActions>
30+
</VCard>
31+
</template>
32+
33+
<script setup lang="ts">
34+
import { useScheduleAutoModeChangeModeMutation } from "@/graphql/codegen/generated";
35+
const { executeMutation: changeMode } = useScheduleAutoModeChangeModeMutation();
36+
37+
async function switchToLoadFromQueue() {
38+
await changeMode({ mode: "queue" });
39+
}
40+
41+
async function turnOff() {
42+
await changeMode({ mode: "off" });
43+
}
44+
</script>

src/components/schedule/auto-mode/auto-mode-button/modes/scheduler/Button.vue

Lines changed: 0 additions & 48 deletions
This file was deleted.

0 commit comments

Comments
 (0)