mirror of
https://github.com/Drop-OSS/drop.git
synced 2025-11-18 18:51:13 +10:00
update to nuxt 4
This commit is contained in:
@ -1,7 +1,7 @@
|
||||
import { APITokenMode } from "~/prisma/client/enums";
|
||||
import { APITokenMode } from "~~/prisma/client/enums";
|
||||
import prisma from "../db/database";
|
||||
import sessionHandler from "../session";
|
||||
import type { MinimumRequestObject } from "~/server/h3";
|
||||
import type { MinimumRequestObject } from "~~/server/h3";
|
||||
|
||||
export const userACLs = [
|
||||
"read",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import { AuthMec } from "~/prisma/client/enums";
|
||||
import { AuthMec } from "~~/prisma/client/enums";
|
||||
import { OIDCManager } from "./oidc";
|
||||
import { logger } from "~/server/internal/logging";
|
||||
import { logger } from "~~/server/internal/logging";
|
||||
|
||||
class AuthManager {
|
||||
private authProviders: {
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import { randomUUID } from "crypto";
|
||||
import prisma from "../../db/database";
|
||||
import type { UserModel } from "~/prisma/client/models";
|
||||
import { AuthMec } from "~/prisma/client/enums";
|
||||
import type { UserModel } from "~~/prisma/client/models";
|
||||
import { AuthMec } from "~~/prisma/client/enums";
|
||||
import objectHandler from "../../objects";
|
||||
import type { Readable } from "stream";
|
||||
import * as jdenticon from "jdenticon";
|
||||
import { systemConfig } from "../../config/sys-conf";
|
||||
import { logger } from "~/server/internal/logging";
|
||||
import { logger } from "~~/server/internal/logging";
|
||||
|
||||
interface OIDCWellKnown {
|
||||
authorization_endpoint: string;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import type { EnumDictionary } from "../utils/types";
|
||||
import prisma from "../db/database";
|
||||
import { ClientCapabilities } from "~/prisma/client/enums";
|
||||
import { ClientCapabilities } from "~~/prisma/client/enums";
|
||||
|
||||
// These values are technically mapped to the database,
|
||||
// but Typescript/Prisma doesn't let me link them
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import type { ClientModel, UserModel } from "~/prisma/client/models";
|
||||
import type { ClientModel, UserModel } from "~~/prisma/client/models";
|
||||
import type { EventHandlerRequest, H3Event } from "h3";
|
||||
import droplet from "@drop-oss/droplet";
|
||||
import prisma from "../db/database";
|
||||
import { useCertificateAuthority } from "~/server/plugins/ca";
|
||||
import { useCertificateAuthority } from "~~/server/plugins/ca";
|
||||
|
||||
export type EventHandlerFunction<T> = (
|
||||
h3: H3Event<EventHandlerRequest>,
|
||||
@ -23,7 +23,7 @@ export function defineClientEventHandler<T>(handler: EventHandlerFunction<T>) {
|
||||
if (!header) throw createError({ statusCode: 403 });
|
||||
const [method, ...parts] = header.split(" ");
|
||||
|
||||
let clientId: string;
|
||||
let clientId: string | undefined;
|
||||
switch (method) {
|
||||
case "Debug": {
|
||||
if (!import.meta.dev) throw createError({ statusCode: 403 });
|
||||
@ -93,7 +93,7 @@ export function defineClientEventHandler<T>(handler: EventHandlerFunction<T>) {
|
||||
|
||||
async function fetchClient() {
|
||||
const client = await prisma.client.findUnique({
|
||||
where: { id: clientId },
|
||||
where: { id: clientId! },
|
||||
});
|
||||
if (!client)
|
||||
throw new Error(
|
||||
@ -104,7 +104,7 @@ export function defineClientEventHandler<T>(handler: EventHandlerFunction<T>) {
|
||||
|
||||
async function fetchUser() {
|
||||
const client = await prisma.client.findUnique({
|
||||
where: { id: clientId },
|
||||
where: { id: clientId! },
|
||||
select: {
|
||||
user: true,
|
||||
},
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { randomUUID } from "node:crypto";
|
||||
import prisma from "../db/database";
|
||||
import type { HardwarePlatform } from "~/prisma/client/enums";
|
||||
import { useCertificateAuthority } from "~/server/plugins/ca";
|
||||
import type { HardwarePlatform } from "~~/prisma/client/enums";
|
||||
import { useCertificateAuthority } from "~~/server/plugins/ca";
|
||||
import type {
|
||||
CapabilityConfiguration,
|
||||
InternalClientCapability,
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import type { ApplicationSettingsModel } from "~/prisma/client/models";
|
||||
import type { ApplicationSettingsModel } from "~~/prisma/client/models";
|
||||
import prisma from "../db/database";
|
||||
|
||||
class ApplicationConfiguration {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { PrismaClient } from "~/prisma/client/client";
|
||||
import { PrismaClient } from "~~/prisma/client/client";
|
||||
// import { PrismaPg } from "@prisma/adapter-pg";
|
||||
|
||||
const prismaClientSingleton = () => {
|
||||
|
||||
@ -117,7 +117,7 @@ class ManifestGenerator {
|
||||
});
|
||||
|
||||
const manifest = ManifestGenerator.generateManifestFromMetadata(
|
||||
metadata[0],
|
||||
metadata[0]!,
|
||||
...metadata.slice(1),
|
||||
);
|
||||
|
||||
|
||||
@ -13,11 +13,11 @@ import notificationSystem from "../notifications";
|
||||
import { GameNotFoundError, type LibraryProvider } from "./provider";
|
||||
import { logger } from "../logging";
|
||||
import { createHash } from "node:crypto";
|
||||
import type { ImportVersion } from "~/server/api/v1/admin/import/version/index.post";
|
||||
import type { ImportVersion } from "~~/server/api/v1/admin/import/version/index.post";
|
||||
import type {
|
||||
GameVersionCreateInput,
|
||||
LaunchOptionCreateManyInput,
|
||||
} from "~/prisma/client/models";
|
||||
} from "~~/prisma/client/models";
|
||||
|
||||
export function createGameImportTaskId(libraryId: string, libraryPath: string) {
|
||||
return createHash("md5")
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import type { LibraryBackend } from "~/prisma/client/enums";
|
||||
import type { LibraryBackend } from "~~/prisma/client/enums";
|
||||
|
||||
export abstract class LibraryProvider<CFG> {
|
||||
constructor(_config: CFG, _id: string) {
|
||||
|
||||
@ -4,7 +4,7 @@ import {
|
||||
VersionNotFoundError,
|
||||
type LibraryProvider,
|
||||
} from "../provider";
|
||||
import { LibraryBackend } from "~/prisma/client/enums";
|
||||
import { LibraryBackend } from "~~/prisma/client/enums";
|
||||
import fs from "fs";
|
||||
import path from "path";
|
||||
import droplet, { DropletHandler } from "@drop-oss/droplet";
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { ArkErrors, type } from "arktype";
|
||||
import type { LibraryProvider } from "../provider";
|
||||
import { VersionNotFoundError } from "../provider";
|
||||
import { LibraryBackend } from "~/prisma/client/enums";
|
||||
import { LibraryBackend } from "~~/prisma/client/enums";
|
||||
import fs from "fs";
|
||||
import path from "path";
|
||||
import droplet from "@drop-oss/droplet";
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import type { CompanyModel } from "~/prisma/client/models";
|
||||
import { MetadataSource } from "~/prisma/client/enums";
|
||||
import type { CompanyModel } from "~~/prisma/client/models";
|
||||
import { MetadataSource } from "~~/prisma/client/enums";
|
||||
import type { MetadataProvider } from ".";
|
||||
import { MissingMetadataProviderConfig } from ".";
|
||||
import type {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import type { CompanyModel } from "~/prisma/client/models";
|
||||
import { MetadataSource } from "~/prisma/client/enums";
|
||||
import type { CompanyModel } from "~~/prisma/client/models";
|
||||
import { MetadataSource } from "~~/prisma/client/enums";
|
||||
import type { MetadataProvider } from ".";
|
||||
import { MissingMetadataProviderConfig } from ".";
|
||||
import type {
|
||||
@ -13,7 +13,7 @@ import type { AxiosRequestConfig } from "axios";
|
||||
import axios from "axios";
|
||||
import { DateTime } from "luxon";
|
||||
import * as jdenticon from "jdenticon";
|
||||
import { logger } from "~/server/internal/logging";
|
||||
import { logger } from "~~/server/internal/logging";
|
||||
import type { TaskRunContext } from "../tasks/utils";
|
||||
|
||||
type IGDBID = number;
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import type { Prisma } from "~/prisma/client/client";
|
||||
import { MetadataSource } from "~/prisma/client/enums";
|
||||
import type { Prisma } from "~~/prisma/client/client";
|
||||
import { MetadataSource } from "~~/prisma/client/enums";
|
||||
import prisma from "../db/database";
|
||||
import type {
|
||||
_FetchGameMetadataParams,
|
||||
@ -15,9 +15,9 @@ import { PriorityListIndexed } from "../utils/prioritylist";
|
||||
import { systemConfig } from "../config/sys-conf";
|
||||
import { randomUUID } from "crypto";
|
||||
import { fuzzy } from "fast-fuzzy";
|
||||
import { logger } from "~/server/internal/logging";
|
||||
import { logger } from "~~/server/internal/logging";
|
||||
import libraryManager, { createGameImportTaskId } from "../library";
|
||||
import type { GameTagModel } from "~/prisma/client/models";
|
||||
import type { GameTagModel } from "~~/prisma/client/models";
|
||||
import type { TaskRunContext} from "../tasks/utils";
|
||||
import { wrapTaskContext } from "../tasks/utils";
|
||||
import taskHandler from "../tasks";
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { MetadataSource } from "~/prisma/client/enums";
|
||||
import { MetadataSource } from "~~/prisma/client/enums";
|
||||
import type { MetadataProvider } from ".";
|
||||
import type {
|
||||
_FetchGameMetadataParams,
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import type { CompanyModel } from "~/prisma/client/models";
|
||||
import { MetadataSource } from "~/prisma/client/enums";
|
||||
import type { CompanyModel } from "~~/prisma/client/models";
|
||||
import { MetadataSource } from "~~/prisma/client/enums";
|
||||
import type { MetadataProvider } from ".";
|
||||
import type {
|
||||
GameMetadataSearchResult,
|
||||
@ -15,7 +15,7 @@ import * as jdenticon from "jdenticon";
|
||||
import { DateTime } from "luxon";
|
||||
import * as cheerio from "cheerio";
|
||||
import { type } from "arktype";
|
||||
import { logger } from "~/server/internal/logging";
|
||||
import { logger } from "~~/server/internal/logging";
|
||||
import type { TaskRunContext } from "../tasks/utils";
|
||||
|
||||
interface PCGamingWikiParseRawPage {
|
||||
|
||||
2
server/internal/metadata/types.d.ts
vendored
2
server/internal/metadata/types.d.ts
vendored
@ -1,4 +1,4 @@
|
||||
import type { Company, GameRating } from "~/prisma/client";
|
||||
import type { Company, GameRating } from "~~/prisma/client";
|
||||
import type { TransactionDataType } from "../objects/transactional";
|
||||
import type { ObjectReference } from "../objects/objectHandler";
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@ Design goals:
|
||||
2. Real-time; use websocket listeners to keep clients up-to-date
|
||||
*/
|
||||
|
||||
import type { NotificationModel } from "~/prisma/client/models";
|
||||
import type { NotificationModel } from "~~/prisma/client/models";
|
||||
import prisma from "../db/database";
|
||||
import type { GlobalACL } from "../acls";
|
||||
|
||||
|
||||
@ -9,7 +9,7 @@ import prisma from "../db/database";
|
||||
import cacheHandler from "../cache";
|
||||
import { systemConfig } from "../config/sys-conf";
|
||||
import { type } from "arktype";
|
||||
import { logger } from "~/server/internal/logging";
|
||||
import { logger } from "~~/server/internal/logging";
|
||||
import type pino from "pino";
|
||||
|
||||
export class FsObjectBackend extends ObjectBackend {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import { HardwarePlatform } from "~/prisma/client/enums";
|
||||
import { HardwarePlatform } from "~~/prisma/client/enums";
|
||||
import prisma from "../db/database";
|
||||
import type { PlatformLink } from "~/prisma/client/client";
|
||||
import type { PlatformLink } from "~~/prisma/client/client";
|
||||
|
||||
export async function convertIDsToPlatforms(platformIDs: string[]) {
|
||||
const userPlatforms = await prisma.userPlatform.findMany({
|
||||
|
||||
@ -2,7 +2,7 @@ import type { H3Event } from "h3";
|
||||
import type { Session, SessionProvider } from "./types";
|
||||
import { randomUUID } from "node:crypto";
|
||||
import { parse as parseCookies } from "cookie-es";
|
||||
import type { MinimumRequestObject } from "~/server/h3";
|
||||
import type { MinimumRequestObject } from "~~/server/h3";
|
||||
import type { DurationLike } from "luxon";
|
||||
import { DateTime } from "luxon";
|
||||
import createDBSessionHandler from "./db";
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import droplet from "@drop-oss/droplet";
|
||||
import type { MinimumRequestObject } from "~/server/h3";
|
||||
import type { MinimumRequestObject } from "~~/server/h3";
|
||||
import type { GlobalACL } from "../acls";
|
||||
import aclManager from "../acls";
|
||||
|
||||
@ -11,7 +11,7 @@ import { taskGroups, type TaskGroup } from "./group";
|
||||
import prisma from "../db/database";
|
||||
import { type } from "arktype";
|
||||
import pino from "pino";
|
||||
import { logger } from "~/server/internal/logging";
|
||||
import { logger } from "~~/server/internal/logging";
|
||||
import { Writable } from "node:stream";
|
||||
import type { TaskRunContext } from "./utils";
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import prisma from "~/server/internal/db/database";
|
||||
import prisma from "~~/server/internal/db/database";
|
||||
import { defineDropTask } from "..";
|
||||
|
||||
export default defineDropTask({
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import prisma from "~/server/internal/db/database";
|
||||
import objectHandler from "~/server/internal/objects";
|
||||
import prisma from "~~/server/internal/db/database";
|
||||
import objectHandler from "~~/server/internal/objects";
|
||||
import { defineDropTask } from "..";
|
||||
|
||||
type FieldReferenceMap = {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import sessionHandler from "~/server/internal/session";
|
||||
import sessionHandler from "~~/server/internal/session";
|
||||
import { defineDropTask } from "..";
|
||||
|
||||
export default defineDropTask({
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { HardwarePlatform } from "~/prisma/client/enums";
|
||||
import { HardwarePlatform } from "~~/prisma/client/enums";
|
||||
|
||||
export function parsePlatform(platform: string) {
|
||||
switch (platform.toLowerCase()) {
|
||||
|
||||
@ -80,11 +80,12 @@ export class PriorityListIndexed<T> extends PriorityList<T> {
|
||||
|
||||
override pop(position?: number): PriorityTagged<T> {
|
||||
const value = super.pop(position);
|
||||
if(!value) return undefined!;
|
||||
|
||||
const index = this.getIndex(value.object);
|
||||
this.indexMap.delete(index);
|
||||
|
||||
return value;
|
||||
return value!;
|
||||
}
|
||||
|
||||
get(index: string) {
|
||||
|
||||
Reference in New Issue
Block a user