convert analytics to TS

This commit is contained in:
chreamy authored and wancat committed 2024-02-28 23:38:33 +08:00
1 parent fb69cb4e10
commit 923de901c4
24 files changed
+11093 -211

No files matched your search

@@ -1,10 +1,10 @@
/* eslint-disable object-shorthand */
import Pagination from '../models/pagination.js'
import Pagination from '../models/pagination.ts'
import { errorCommands } from '../models/commands.js'
// eslint-disable-next-line import/prefer-default-export
export async function commandListController(req, res) {
const { nextKey, order } = req.query
export async function commandListController(req: any, res: any): Promise<void> {
const { nextKey, order } = req.query as { nextKey?: string; order: string }
const itemsPerPage = 100
try {
@@ -1,8 +1,8 @@
import { userCount } from '../models/users.js'
import { questList } from '../models/quests.js'
import { questList } from '../models/quests.ts'
// eslint-disable-next-line import/prefer-default-export
export async function homeController(req, res) {
export async function homeController(req: any, res: any) {
const quests = await questList()
const [totalQuests, totalCompleted] = quests.reduce(
([total, completed], quest) => [
@@ -17,8 +17,7 @@ export async function homeController(req, res) {
userCount: await userCount(),
totalQuests,
totalCompleted,
completedRate: Math.round((totalCompleted / totalQuests) * 10000) / 100,
}
payload.completedRate =
Math.round((payload.totalCompleted / payload.totalQuests) * 10000) / 100
res.render('home', payload)
}
@@ -1,7 +1,6 @@
import { questList } from '../models/quests.js'
import { questList } from '../models/quests.ts'
// eslint-disable-next-line import/prefer-default-export
export async function questListController(req, res) {
export async function questListController(req: any, res: any) {
const quests = await questList()
quests.forEach((quest) => {
quest.failed = quest.started - quest.completed
@@ -1,7 +1,7 @@
import Pagination from '../models/pagination.js'
import { sessionList, sessionDetail } from '../models/sessions.js'
export async function sessionListController(req, res) {
import Pagination from '../models/pagination.ts'
import { sessionList, sessionDetail } from '../models/sessions.ts'
import { Request, Response } from 'express'
export async function sessionListController(req: any, res: any) {
const { nextKey, order } = req.query
const itemsPerPage = 50
@@ -21,7 +21,7 @@ export async function sessionListController(req, res) {
}
}
export async function sessionDetailController(req, res) {
export async function sessionDetailController(req: any, res: any) {
const { id } = req.params
const session = await sessionDetail(id)
res.render('sessionDetail', { session })
@@ -1,7 +1,7 @@
import Pagination from '../models/pagination.js'
import Pagination from '../models/pagination.ts'
import { userList } from '../models/users.js'
export async function userListController(req, res) {
export async function userListController(req: any, res: any) {
const { nextKey, order } = req.query
const itemsPerPage = 50