refactor(frontend): consolidate `'deliver' | 'queue'` type def into `queue.vue`
This commit is contained in:
parent
bde8f4c2e9
commit
4c56cebb13
|
@ -38,6 +38,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
import { markRaw, onMounted, onUnmounted, ref, shallowRef } from 'vue';
|
import { markRaw, onMounted, onUnmounted, ref, shallowRef } from 'vue';
|
||||||
import * as Misskey from 'misskey-js';
|
import * as Misskey from 'misskey-js';
|
||||||
import XChart from './overview.queue.chart.vue';
|
import XChart from './overview.queue.chart.vue';
|
||||||
|
import type { ApQueueDomain } from '@/pages/admin/queue.vue';
|
||||||
import number from '@/filters/number.js';
|
import number from '@/filters/number.js';
|
||||||
import { useStream } from '@/stream.js';
|
import { useStream } from '@/stream.js';
|
||||||
|
|
||||||
|
@ -53,7 +54,7 @@ const chartDelayed = shallowRef<InstanceType<typeof XChart>>();
|
||||||
const chartWaiting = shallowRef<InstanceType<typeof XChart>>();
|
const chartWaiting = shallowRef<InstanceType<typeof XChart>>();
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
domain: 'deliver' | 'inbox';
|
domain: ApQueueDomain;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
function onStats(stats: Misskey.entities.QueueStats) {
|
function onStats(stats: Misskey.entities.QueueStats) {
|
||||||
|
@ -69,10 +70,10 @@ function onStats(stats: Misskey.entities.QueueStats) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function onStatsLog(statsLog: Misskey.entities.QueueStatsLog) {
|
function onStatsLog(statsLog: Misskey.entities.QueueStatsLog) {
|
||||||
const dataProcess: Misskey.entities.QueueStats['deliver' | 'inbox']['activeSincePrevTick'][] = [];
|
const dataProcess: Misskey.entities.QueueStats[ApQueueDomain]['activeSincePrevTick'][] = [];
|
||||||
const dataActive: Misskey.entities.QueueStats['deliver' | 'inbox']['active'][] = [];
|
const dataActive: Misskey.entities.QueueStats[ApQueueDomain]['active'][] = [];
|
||||||
const dataDelayed: Misskey.entities.QueueStats['deliver' | 'inbox']['delayed'][] = [];
|
const dataDelayed: Misskey.entities.QueueStats[ApQueueDomain]['delayed'][] = [];
|
||||||
const dataWaiting: Misskey.entities.QueueStats['deliver' | 'inbox']['waiting'][] = [];
|
const dataWaiting: Misskey.entities.QueueStats[ApQueueDomain]['waiting'][] = [];
|
||||||
|
|
||||||
for (const stats of [...statsLog].reverse()) {
|
for (const stats of [...statsLog].reverse()) {
|
||||||
dataProcess.push(stats[props.domain].activeSincePrevTick);
|
dataProcess.push(stats[props.domain].activeSincePrevTick);
|
||||||
|
|
|
@ -51,6 +51,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
import { markRaw, onMounted, onUnmounted, ref, shallowRef } from 'vue';
|
import { markRaw, onMounted, onUnmounted, ref, shallowRef } from 'vue';
|
||||||
import * as Misskey from 'misskey-js';
|
import * as Misskey from 'misskey-js';
|
||||||
import XChart from './queue.chart.chart.vue';
|
import XChart from './queue.chart.chart.vue';
|
||||||
|
import type { ApQueueDomain } from '@/pages/admin/queue.vue';
|
||||||
import number from '@/filters/number.js';
|
import number from '@/filters/number.js';
|
||||||
import { misskeyApi } from '@/scripts/misskey-api.js';
|
import { misskeyApi } from '@/scripts/misskey-api.js';
|
||||||
import { useStream } from '@/stream.js';
|
import { useStream } from '@/stream.js';
|
||||||
|
@ -63,14 +64,14 @@ const activeSincePrevTick = ref(0);
|
||||||
const active = ref(0);
|
const active = ref(0);
|
||||||
const delayed = ref(0);
|
const delayed = ref(0);
|
||||||
const waiting = ref(0);
|
const waiting = ref(0);
|
||||||
const jobs = ref<Misskey.Endpoints[`admin/queue/${'deliver' | 'inbox'}-delayed`]['res']>([]);
|
const jobs = ref<Misskey.Endpoints[`admin/queue/${ApQueueDomain}-delayed`]['res']>([]);
|
||||||
const chartProcess = shallowRef<InstanceType<typeof XChart>>();
|
const chartProcess = shallowRef<InstanceType<typeof XChart>>();
|
||||||
const chartActive = shallowRef<InstanceType<typeof XChart>>();
|
const chartActive = shallowRef<InstanceType<typeof XChart>>();
|
||||||
const chartDelayed = shallowRef<InstanceType<typeof XChart>>();
|
const chartDelayed = shallowRef<InstanceType<typeof XChart>>();
|
||||||
const chartWaiting = shallowRef<InstanceType<typeof XChart>>();
|
const chartWaiting = shallowRef<InstanceType<typeof XChart>>();
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
domain: 'deliver' | 'inbox';
|
domain: ApQueueDomain;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
function onStats(stats: Misskey.entities.QueueStats) {
|
function onStats(stats: Misskey.entities.QueueStats) {
|
||||||
|
@ -86,10 +87,10 @@ function onStats(stats: Misskey.entities.QueueStats) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function onStatsLog(statsLog: Misskey.entities.QueueStatsLog) {
|
function onStatsLog(statsLog: Misskey.entities.QueueStatsLog) {
|
||||||
const dataProcess: Misskey.entities.QueueStats['deliver' | 'inbox']['activeSincePrevTick'][] = [];
|
const dataProcess: Misskey.entities.QueueStats[ApQueueDomain]['activeSincePrevTick'][] = [];
|
||||||
const dataActive: Misskey.entities.QueueStats['deliver' | 'inbox']['active'][] = [];
|
const dataActive: Misskey.entities.QueueStats[ApQueueDomain]['active'][] = [];
|
||||||
const dataDelayed: Misskey.entities.QueueStats['deliver' | 'inbox']['delayed'][] = [];
|
const dataDelayed: Misskey.entities.QueueStats[ApQueueDomain]['delayed'][] = [];
|
||||||
const dataWaiting: Misskey.entities.QueueStats['deliver' | 'inbox']['waiting'][] = [];
|
const dataWaiting: Misskey.entities.QueueStats[ApQueueDomain]['waiting'][] = [];
|
||||||
|
|
||||||
for (const stats of [...statsLog].reverse()) {
|
for (const stats of [...statsLog].reverse()) {
|
||||||
dataProcess.push(stats[props.domain].activeSincePrevTick);
|
dataProcess.push(stats[props.domain].activeSincePrevTick);
|
||||||
|
|
|
@ -16,7 +16,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { ref, computed } from 'vue';
|
import { ref, computed, type Ref } from 'vue';
|
||||||
import XQueue from './queue.chart.vue';
|
import XQueue from './queue.chart.vue';
|
||||||
import XHeader from './_header_.vue';
|
import XHeader from './_header_.vue';
|
||||||
import * as os from '@/os.js';
|
import * as os from '@/os.js';
|
||||||
|
@ -25,7 +25,9 @@ import { i18n } from '@/i18n.js';
|
||||||
import { definePageMetadata } from '@/scripts/page-metadata.js';
|
import { definePageMetadata } from '@/scripts/page-metadata.js';
|
||||||
import MkButton from '@/components/MkButton.vue';
|
import MkButton from '@/components/MkButton.vue';
|
||||||
|
|
||||||
const tab = ref('deliver');
|
export type ApQueueDomain = 'deliver' | 'inbox';
|
||||||
|
|
||||||
|
const tab: Ref<ApQueueDomain> = ref('deliver');
|
||||||
|
|
||||||
function clear() {
|
function clear() {
|
||||||
os.confirm({
|
os.confirm({
|
||||||
|
|
Loading…
Reference in New Issue