refactor: create db types
This commit is contained in:
parent
82f0e14abf
commit
6af1e8f326
7 changed files with 31 additions and 31 deletions
23
src/db/types.ts
Normal file
23
src/db/types.ts
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
export class Filename {
|
||||||
|
id!: number;
|
||||||
|
job_id!: number;
|
||||||
|
file_name!: string;
|
||||||
|
output_file_name!: string;
|
||||||
|
status!: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export class Jobs {
|
||||||
|
finished_files!: number;
|
||||||
|
id!: number;
|
||||||
|
user_id!: number;
|
||||||
|
date_created!: string;
|
||||||
|
status!: string;
|
||||||
|
num_files!: number;
|
||||||
|
files_detailed!: Filename[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export class User {
|
||||||
|
id!: number;
|
||||||
|
email!: string;
|
||||||
|
password!: string;
|
||||||
|
}
|
||||||
|
|
@ -17,33 +17,13 @@ import { deleteFile } from "./pages/deleteFile";
|
||||||
import { listConverters } from "./pages/listConverters";
|
import { listConverters } from "./pages/listConverters";
|
||||||
import { chooseConverter } from "./pages/chooseConverter";
|
import { chooseConverter } from "./pages/chooseConverter";
|
||||||
import db from "./db/db";
|
import db from "./db/db";
|
||||||
|
import { Jobs } from "./db/types";
|
||||||
|
|
||||||
mkdir("./data", { recursive: true }).catch(console.error);
|
mkdir("./data", { recursive: true }).catch(console.error);
|
||||||
|
|
||||||
export const uploadsDir = "./data/uploads/";
|
export const uploadsDir = "./data/uploads/";
|
||||||
export const outputDir = "./data/output/";
|
export const outputDir = "./data/output/";
|
||||||
|
|
||||||
// init db if not exists
|
|
||||||
|
|
||||||
|
|
||||||
export class Filename {
|
|
||||||
id!: number;
|
|
||||||
job_id!: number;
|
|
||||||
file_name!: string;
|
|
||||||
output_file_name!: string;
|
|
||||||
status!: string;
|
|
||||||
}
|
|
||||||
|
|
||||||
export class Jobs {
|
|
||||||
finished_files!: number;
|
|
||||||
id!: number;
|
|
||||||
user_id!: number;
|
|
||||||
date_created!: string;
|
|
||||||
status!: string;
|
|
||||||
num_files!: number;
|
|
||||||
files_detailed!: Filename[];
|
|
||||||
}
|
|
||||||
|
|
||||||
const app = new Elysia({
|
const app = new Elysia({
|
||||||
serve: {
|
serve: {
|
||||||
maxRequestBodySize: Number.MAX_SAFE_INTEGER,
|
maxRequestBodySize: Number.MAX_SAFE_INTEGER,
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { mkdir } from "node:fs/promises";
|
import { mkdir } from "node:fs/promises";
|
||||||
import { Elysia, t } from "elysia";
|
import { Elysia, t } from "elysia";
|
||||||
import sanitize from "sanitize-filename";
|
import sanitize from "sanitize-filename";
|
||||||
import { Jobs, outputDir, uploadsDir } from "..";
|
import { outputDir, uploadsDir } from "..";
|
||||||
import { mainConverter } from "../converters/main";
|
import { mainConverter } from "../converters/main";
|
||||||
import { WEBROOT } from "../helpers/env";
|
import { WEBROOT } from "../helpers/env";
|
||||||
import db from "../db/db";
|
import db from "../db/db";
|
||||||
|
|
@ -10,6 +10,7 @@ import {
|
||||||
normalizeOutputFiletype,
|
normalizeOutputFiletype,
|
||||||
} from "../helpers/normalizeFiletype";
|
} from "../helpers/normalizeFiletype";
|
||||||
import { userService } from "./user";
|
import { userService } from "./user";
|
||||||
|
import { Jobs } from "../db/types";
|
||||||
|
|
||||||
export const convert = new Elysia().use(userService).post(
|
export const convert = new Elysia().use(userService).post(
|
||||||
"/convert",
|
"/convert",
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import { Html } from "@elysiajs/html";
|
||||||
import { Header } from "../components/header";
|
import { Header } from "../components/header";
|
||||||
import { userService } from "./user";
|
import { userService } from "./user";
|
||||||
import { ALLOW_UNAUTHENTICATED, HIDE_HISTORY, WEBROOT } from "../helpers/env";
|
import { ALLOW_UNAUTHENTICATED, HIDE_HISTORY, WEBROOT } from "../helpers/env";
|
||||||
import { Filename, Jobs } from "..";
|
import { Filename, Jobs } from "../db/types";
|
||||||
import db from "../db/db";
|
import db from "../db/db";
|
||||||
|
|
||||||
export const history = new Elysia()
|
export const history = new Elysia()
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { Elysia } from "elysia";
|
||||||
import { userService } from "./user";
|
import { userService } from "./user";
|
||||||
import { Html } from "@elysiajs/html";
|
import { Html } from "@elysiajs/html";
|
||||||
import { ALLOW_UNAUTHENTICATED, WEBROOT } from "../helpers/env";
|
import { ALLOW_UNAUTHENTICATED, WEBROOT } from "../helpers/env";
|
||||||
import { Filename, Jobs } from "..";
|
import { Filename, Jobs } from "../db/types";
|
||||||
import { Header } from "../components/header";
|
import { Header } from "../components/header";
|
||||||
import { BaseHtml } from "../components/base";
|
import { BaseHtml } from "../components/base";
|
||||||
import db from "../db/db";
|
import db from "../db/db";
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { Elysia } from "elysia";
|
import { Elysia } from "elysia";
|
||||||
import { Html } from "@elysiajs/html";
|
import { Html } from "@elysiajs/html";
|
||||||
import { FIRST_RUN, User, userService } from "./user";
|
import { FIRST_RUN, userService } from "./user";
|
||||||
import { ACCOUNT_REGISTRATION, ALLOW_UNAUTHENTICATED, HIDE_HISTORY, HTTP_ALLOWED, WEBROOT } from "../helpers/env";
|
import { ACCOUNT_REGISTRATION, ALLOW_UNAUTHENTICATED, HIDE_HISTORY, HTTP_ALLOWED, WEBROOT } from "../helpers/env";
|
||||||
import { JWTPayloadSpec } from "@elysiajs/jwt";
|
import { JWTPayloadSpec } from "@elysiajs/jwt";
|
||||||
import { randomInt } from "node:crypto";
|
import { randomInt } from "node:crypto";
|
||||||
|
|
@ -8,6 +8,7 @@ import { BaseHtml } from "../components/base";
|
||||||
import { Header } from "../components/header";
|
import { Header } from "../components/header";
|
||||||
import { getAllTargets } from "../converters/main";
|
import { getAllTargets } from "../converters/main";
|
||||||
import db from "../db/db";
|
import db from "../db/db";
|
||||||
|
import { User } from "../db/types";
|
||||||
|
|
||||||
export const root = new Elysia()
|
export const root = new Elysia()
|
||||||
.use(userService)
|
.use(userService)
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,7 @@ import { randomUUID } from "node:crypto";
|
||||||
|
|
||||||
import { ACCOUNT_REGISTRATION, WEBROOT, HIDE_HISTORY, ALLOW_UNAUTHENTICATED, HTTP_ALLOWED } from "../helpers/env";
|
import { ACCOUNT_REGISTRATION, WEBROOT, HIDE_HISTORY, ALLOW_UNAUTHENTICATED, HTTP_ALLOWED } from "../helpers/env";
|
||||||
import db from "../db/db";
|
import db from "../db/db";
|
||||||
|
import { User } from "../db/types";
|
||||||
export class User {
|
|
||||||
id!: number;
|
|
||||||
email!: string;
|
|
||||||
password!: string;
|
|
||||||
}
|
|
||||||
|
|
||||||
export let FIRST_RUN = db.query("SELECT * FROM users").get() === null || false;
|
export let FIRST_RUN = db.query("SELECT * FROM users").get() === null || false;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue