refactor: 🚚 Rename functions, move getUrl to Attachment

This commit is contained in:
Jesse Wierzbinski 2024-06-28 17:50:56 -10:00
parent 11c3931007
commit d09f74e58a
No known key found for this signature in database
60 changed files with 93 additions and 96 deletions

View file

@ -3,9 +3,9 @@ import chalk from "chalk";
import { and, eq, isNull } from "drizzle-orm";
import ora from "ora";
import { BaseCommand } from "~/cli/base";
import { getUrl } from "~/database/entities/attachment";
import { Emojis } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";
import { Attachment } from "~/packages/database-interface/attachment";
import { Emoji } from "~/packages/database-interface/emoji";
import { MediaBackend } from "~/packages/media-manager";
@ -118,7 +118,7 @@ export default class EmojiAdd extends BaseCommand<typeof EmojiAdd> {
await Emoji.insert({
shortcode: args.shortcode,
url: getUrl(uploaded.path, config),
url: Attachment.getUrl(uploaded.path),
visibleInPicker: true,
contentType: uploaded.uploadedFile.type,
});
@ -127,7 +127,7 @@ export default class EmojiAdd extends BaseCommand<typeof EmojiAdd> {
`${chalk.green("✓")} Created emoji ${chalk.green(
args.shortcode,
)} with url ${chalk.blue(
chalk.underline(getUrl(uploaded.path, config)),
chalk.underline(Attachment.getUrl(uploaded.path)),
)}`,
);

View file

@ -5,9 +5,9 @@ import { lookup } from "mime-types";
import ora from "ora";
import { unzip } from "unzipit";
import { BaseCommand } from "~/cli/base";
import { getUrl } from "~/database/entities/attachment";
import { Emojis } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";
import { Attachment } from "~/packages/database-interface/attachment";
import { Emoji } from "~/packages/database-interface/emoji";
import { MediaBackend } from "~/packages/media-manager";
@ -215,7 +215,7 @@ export default class EmojiImport extends BaseCommand<typeof EmojiImport> {
await Emoji.insert({
shortcode: emoji.emoji.name,
url: getUrl(uploaded.path, config),
url: Attachment.getUrl(uploaded.path),
visibleInPicker: true,
contentType: uploaded.uploadedFile.type,
});

View file

@ -1,12 +0,0 @@
import { MediaBackendType } from "media-manager";
import type { Config } from "~/packages/config-manager";
export const getUrl = (name: string, config: Config) => {
if (config.media.backend === MediaBackendType.Local) {
return new URL(`/media/${name}`, config.http.base_url).toString();
}
if (config.media.backend === MediaBackendType.S3) {
return new URL(`/${name}`, config.s3.public_url).toString();
}
return "";
};

View file

@ -1,5 +1,6 @@
import { proxyUrl } from "@/response";
import type { ContentFormat } from "@lysand-org/federation/types";
import { config } from "config-manager";
import {
type InferInsertModel,
type InferSelectModel,
@ -8,6 +9,7 @@ import {
eq,
inArray,
} from "drizzle-orm";
import { MediaBackendType } from "media-manager";
import { db } from "~/drizzle/db";
import { Attachments } from "~/drizzle/schema";
import type { AsyncAttachment as APIAsyncAttachment } from "~/types/mastodon/async_attachment";
@ -124,6 +126,16 @@ export class Attachment extends BaseInterface<typeof Attachments> {
return this.data.id;
}
public static getUrl(name: string) {
if (config.media.backend === MediaBackendType.Local) {
return new URL(`/media/${name}`, config.http.base_url).toString();
}
if (config.media.backend === MediaBackendType.S3) {
return new URL(`/${name}`, config.s3.public_url).toString();
}
return "";
}
public getMastodonType(): APIAttachment["type"] {
if (this.data.mimeType.startsWith("image/")) {
return "image";

View file

@ -8,8 +8,8 @@ import {
eq,
inArray,
} from "drizzle-orm";
import type { EmojiWithInstance } from "~/database/entities/emoji";
import { addInstanceIfNotExists } from "~/database/entities/instance";
import type { EmojiWithInstance } from "~/classes/functions/emoji";
import { addInstanceIfNotExists } from "~/classes/functions/instance";
import { db } from "~/drizzle/db";
import { Emojis, Instances } from "~/drizzle/schema";
import type { Emoji as APIEmoji } from "~/types/mastodon/emoji";

View file

@ -23,15 +23,15 @@ import { createRegExp, exactly, global } from "magic-regexp";
import {
type Application,
applicationToApi,
} from "~/database/entities/application";
import { parseEmojis } from "~/database/entities/emoji";
import { localObjectUri } from "~/database/entities/federation";
} from "~/classes/functions/application";
import { parseEmojis } from "~/classes/functions/emoji";
import { localObjectUri } from "~/classes/functions/federation";
import {
type StatusWithRelations,
contentToHtml,
findManyNotes,
parseTextMentions,
} from "~/database/entities/status";
} from "~/classes/functions/status";
import { db } from "~/drizzle/db";
import {
Attachments,

View file

@ -13,7 +13,7 @@ import {
userInfoRequest,
validateAuthResponse,
} from "oauth4webapi";
import type { Application } from "~/database/entities/application";
import type { Application } from "~/classes/functions/application";
import { db } from "~/drizzle/db";
import { type Applications, OpenIdAccounts } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";

View file

@ -21,12 +21,12 @@ import {
sql,
} from "drizzle-orm";
import { htmlToText } from "html-to-text";
import { objectToInboxRequest } from "~/database/entities/federation";
import { addInstanceIfNotExists } from "~/database/entities/instance";
import { objectToInboxRequest } from "~/classes/functions/federation";
import { addInstanceIfNotExists } from "~/classes/functions/instance";
import {
type UserWithRelations,
findManyUsers,
} from "~/database/entities/user";
} from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import {
EmojiToUser,

View file

@ -2,7 +2,7 @@ import { join } from "node:path";
import { redirect } from "@/response";
import type { BunFile } from "bun";
import { config } from "config-manager";
import { retrieveUserFromToken } from "~/database/entities/user";
import { retrieveUserFromToken } from "~/classes/functions/user";
import type { User } from "~/packages/database-interface/user";
import { languages } from "./glitch-languages";

View file

@ -5,7 +5,7 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { TokenType } from "~/database/entities/token";
import { TokenType } from "~/classes/functions/token";
import { db } from "~/drizzle/db";
import { Tokens, Users } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,11 +4,11 @@ import { zValidator } from "@hono/zod-validator";
import type { Hono } from "hono";
import ISO6391 from "iso-639-1";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { relationshipToApi } from "~/classes/functions/relationship";
import {
followRequestUser,
getRelationshipToOtherUser,
} from "~/database/entities/user";
} from "~/classes/functions/user";
import { RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { and, eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -4,8 +4,8 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { relationshipToApi } from "~/database/entities/relationship";
import { getRelationshipToOtherUser } from "~/database/entities/user";
import { relationshipToApi } from "~/classes/functions/relationship";
import { getRelationshipToOtherUser } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -16,7 +16,7 @@ import {
oneOrMore,
} from "magic-regexp";
import { z } from "zod";
import { resolveWebFinger } from "~/database/entities/user";
import { resolveWebFinger } from "~/classes/functions/user";
import { RolePermissions, Users } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -6,7 +6,7 @@ import { z } from "zod";
import {
createNewRelationship,
relationshipToApi,
} from "~/database/entities/relationship";
} from "~/classes/functions/relationship";
import { db } from "~/drizzle/db";
import { RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -16,7 +16,7 @@ import {
} from "magic-regexp";
import stringComparison from "string-comparison";
import { z } from "zod";
import { resolveWebFinger } from "~/database/entities/user";
import { resolveWebFinger } from "~/classes/functions/user";
import { RolePermissions, Users } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -8,11 +8,11 @@ import type { Hono } from "hono";
import ISO6391 from "iso-639-1";
import { MediaBackend } from "media-manager";
import { z } from "zod";
import { getUrl } from "~/database/entities/attachment";
import { parseEmojis } from "~/database/entities/emoji";
import { contentToHtml } from "~/database/entities/status";
import { parseEmojis } from "~/classes/functions/emoji";
import { contentToHtml } from "~/classes/functions/status";
import { db } from "~/drizzle/db";
import { EmojiToUser, RolePermissions, Users } from "~/drizzle/schema";
import { Attachment } from "~/packages/database-interface/attachment";
import type { Emoji } from "~/packages/database-interface/emoji";
import { User } from "~/packages/database-interface/user";
@ -206,13 +206,13 @@ export default (app: Hono) =>
if (avatar) {
const { path } = await mediaManager.addFile(avatar);
self.avatar = getUrl(path, config);
self.avatar = Attachment.getUrl(path);
}
if (header) {
const { path } = await mediaManager.addFile(header);
self.header = getUrl(path, config);
self.header = Attachment.getUrl(path);
}
if (locked) {

View file

@ -1,7 +1,7 @@
import { applyConfig, auth } from "@/api";
import { errorResponse, jsonResponse } from "@/response";
import type { Hono } from "hono";
import { getFromToken } from "~/database/entities/application";
import { getFromToken } from "~/classes/functions/application";
import { RolePermissions } from "~/drizzle/schema";
export const meta = applyConfig({

View file

@ -11,10 +11,10 @@ import { zValidator } from "@hono/zod-validator";
import { eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { getUrl } from "~/database/entities/attachment";
import { db } from "~/drizzle/db";
import { Emojis, RolePermissions } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";
import { Attachment } from "~/packages/database-interface/attachment";
import { Emoji } from "~/packages/database-interface/emoji";
import { MediaBackend } from "~/packages/media-manager";
@ -185,7 +185,7 @@ export default (app: Hono) =>
url = form.element;
}
modified.url = getUrl(url, config);
modified.url = Attachment.getUrl(url);
modified.contentType = contentType;
}

View file

@ -11,9 +11,9 @@ import { zValidator } from "@hono/zod-validator";
import { and, eq, isNull, or } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { getUrl } from "~/database/entities/attachment";
import { Emojis, RolePermissions } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";
import { Attachment } from "~/packages/database-interface/attachment";
import { Emoji } from "~/packages/database-interface/emoji";
import { MediaBackend } from "~/packages/media-manager";
@ -130,7 +130,7 @@ export default (app: Hono) =>
const emoji = await Emoji.insert({
shortcode,
url: getUrl(url, config),
url: Attachment.getUrl(url),
visibleInPicker: true,
ownerId: global ? null : user.id,
category,

View file

@ -7,11 +7,11 @@ import { z } from "zod";
import {
checkForBidirectionalRelationships,
relationshipToApi,
} from "~/database/entities/relationship";
} from "~/classes/functions/relationship";
import {
getRelationshipToOtherUser,
sendFollowAccept,
} from "~/database/entities/user";
} from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -7,11 +7,11 @@ import { z } from "zod";
import {
checkForBidirectionalRelationships,
relationshipToApi,
} from "~/database/entities/relationship";
} from "~/classes/functions/relationship";
import {
getRelationshipToOtherUser,
sendFollowReject,
} from "~/database/entities/user";
} from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Relationships, RolePermissions } from "~/drizzle/schema";
import { User } from "~/packages/database-interface/user";

View file

@ -5,7 +5,6 @@ import { config } from "config-manager";
import type { Hono } from "hono";
import { MediaBackend } from "media-manager";
import { z } from "zod";
import { getUrl } from "~/database/entities/attachment";
import { RolePermissions } from "~/drizzle/schema";
import { Attachment } from "~/packages/database-interface/attachment";
@ -79,7 +78,7 @@ export default (app: Hono) =>
if (thumbnail) {
const { path } = await mediaManager.addFile(thumbnail);
thumbnailUrl = getUrl(path, config);
thumbnailUrl = Attachment.getUrl(path);
}
const descriptionText =

View file

@ -7,7 +7,6 @@ import type { Hono } from "hono";
import { MediaBackend } from "media-manager";
import sharp from "sharp";
import { z } from "zod";
import { getUrl } from "~/database/entities/attachment";
import { RolePermissions } from "~/drizzle/schema";
import { Attachment } from "~/packages/database-interface/attachment";
@ -106,14 +105,14 @@ export default (app: Hono) =>
const { path } = await mediaManager.addFile(file);
url = getUrl(path, config);
url = Attachment.getUrl(path);
let thumbnailUrl = "";
if (thumbnail) {
const { path } = await mediaManager.addFile(thumbnail);
thumbnailUrl = getUrl(path, config);
thumbnailUrl = Attachment.getUrl(path);
}
const newAttachment = await Attachment.insert({

View file

@ -3,7 +3,7 @@ import { errorResponse, jsonResponse } from "@/response";
import { zValidator } from "@hono/zod-validator";
import type { Hono } from "hono";
import { z } from "zod";
import { findManyNotifications } from "~/database/entities/notification";
import { findManyNotifications } from "~/classes/functions/notification";
import { RolePermissions } from "~/drizzle/schema";
export const meta = applyConfig({

View file

@ -8,8 +8,8 @@ import { z } from "zod";
import {
findManyNotifications,
notificationToApi,
} from "~/database/entities/notification";
import type { NotificationWithRelations } from "~/database/entities/notification";
} from "~/classes/functions/notification";
import type { NotificationWithRelations } from "~/classes/functions/notification";
import { RolePermissions } from "~/drizzle/schema";
export const meta = applyConfig({

View file

@ -3,7 +3,7 @@ import { errorResponse, jsonResponse } from "@/response";
import { zValidator } from "@hono/zod-validator";
import type { Hono } from "hono";
import { z } from "zod";
import { createLike } from "~/database/entities/like";
import { createLike } from "~/classes/functions/like";
import { db } from "~/drizzle/db";
import { RolePermissions } from "~/drizzle/schema";
import { Note } from "~/packages/database-interface/note";

View file

@ -11,7 +11,7 @@ import { config } from "config-manager";
import type { Hono } from "hono";
import ISO6391 from "iso-639-1";
import { z } from "zod";
import { undoFederationRequest } from "~/database/entities/federation";
import { undoFederationRequest } from "~/classes/functions/federation";
import { RolePermissions } from "~/drizzle/schema";
import { Attachment } from "~/packages/database-interface/attachment";
import { Note } from "~/packages/database-interface/note";

View file

@ -3,7 +3,7 @@ import { errorResponse, jsonResponse } from "@/response";
import { zValidator } from "@hono/zod-validator";
import type { Hono } from "hono";
import { z } from "zod";
import { deleteLike } from "~/database/entities/like";
import { deleteLike } from "~/classes/functions/like";
import { RolePermissions } from "~/drizzle/schema";
import { Note } from "~/packages/database-interface/note";

View file

@ -4,7 +4,7 @@ import { zValidator } from "@hono/zod-validator";
import { and, eq } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { undoFederationRequest } from "~/database/entities/federation";
import { undoFederationRequest } from "~/classes/functions/federation";
import { Notes, RolePermissions } from "~/drizzle/schema";
import { Note } from "~/packages/database-interface/note";

View file

@ -5,7 +5,7 @@ import { config } from "config-manager";
import type { Hono } from "hono";
import ISO6391 from "iso-639-1";
import { z } from "zod";
import { federateNote } from "~/database/entities/status";
import { federateNote } from "~/classes/functions/status";
import { RolePermissions } from "~/drizzle/schema";
import { Attachment } from "~/packages/database-interface/attachment";
import { Note } from "~/packages/database-interface/note";

View file

@ -7,7 +7,6 @@ import type { Hono } from "hono";
import { MediaBackend } from "media-manager";
import sharp from "sharp";
import { z } from "zod";
import { getUrl } from "~/database/entities/attachment";
import { RolePermissions } from "~/drizzle/schema";
import { Attachment } from "~/packages/database-interface/attachment";
@ -106,14 +105,14 @@ export default (app: Hono) =>
const { path } = await mediaManager.addFile(file);
url = getUrl(path, config);
url = Attachment.getUrl(path);
let thumbnailUrl = "";
if (thumbnail) {
const { path } = await mediaManager.addFile(thumbnail);
thumbnailUrl = getUrl(path, config);
thumbnailUrl = Attachment.getUrl(path);
}
const newAttachment = await Attachment.insert({

View file

@ -6,7 +6,7 @@ import { getLogger } from "@logtape/logtape";
import { and, eq, inArray, sql } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { resolveWebFinger } from "~/database/entities/user";
import { resolveWebFinger } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Instances, Notes, RolePermissions, Users } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";

View file

@ -5,7 +5,7 @@ import { zValidator } from "@hono/zod-validator";
import type { Hono } from "hono";
import { SignJWT, jwtVerify } from "jose";
import { z } from "zod";
import { TokenType } from "~/database/entities/token";
import { TokenType } from "~/classes/functions/token";
import { db } from "~/drizzle/db";
import { RolePermissions, Tokens } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";

View file

@ -6,7 +6,7 @@ import { and, eq, isNull } from "drizzle-orm";
import type { Hono } from "hono";
import { SignJWT } from "jose";
import { z } from "zod";
import { TokenType } from "~/database/entities/token";
import { TokenType } from "~/classes/functions/token";
import { db } from "~/drizzle/db";
import { RolePermissions, Tokens, Users } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";

View file

@ -5,7 +5,7 @@ import type { Entity } from "@lysand-org/federation/types";
import { and, eq, inArray, sql } from "drizzle-orm";
import type { Hono } from "hono";
import { z } from "zod";
import { type LikeType, likeToLysand } from "~/database/entities/like";
import { type LikeType, likeToLysand } from "~/classes/functions/like";
import { db } from "~/drizzle/db";
import { Notes } from "~/drizzle/schema";
import { Note } from "~/packages/database-interface/note";

View file

@ -17,7 +17,7 @@ import { type ValidationError, isValidationError } from "zod-validation-error";
import {
getRelationshipToOtherUser,
sendFollowAccept,
} from "~/database/entities/user";
} from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Notes, Notifications, Relationships } from "~/drizzle/schema";
import { config } from "~/packages/config-manager";

View file

@ -1,6 +1,6 @@
import { describe, expect, it } from "bun:test";
import { checkIfOauthIsValid } from "@/oauth";
import type { Application } from "~/database/entities/application";
import type { Application } from "~/classes/functions/application";
describe("checkIfOauthIsValid", () => {
it("should return true when routeScopes and application.scopes are empty", () => {

View file

@ -3,7 +3,7 @@ import { randomString } from "@/math";
import { solveChallenge } from "altcha-lib";
import { asc, inArray, like } from "drizzle-orm";
import { appFactory } from "~/app";
import type { Status } from "~/database/entities/status";
import type { Status } from "~/classes/functions/status";
import { db } from "~/drizzle/db";
import { setupDatabase } from "~/drizzle/db";
import { Notes, Tokens, Users } from "~/drizzle/schema";

View file

@ -23,8 +23,8 @@ import {
import { parse } from "qs";
import type { z } from "zod";
import { fromZodError } from "zod-validation-error";
import type { Application } from "~/database/entities/application";
import { type AuthData, getFromHeader } from "~/database/entities/user";
import type { Application } from "~/classes/functions/application";
import { type AuthData, getFromHeader } from "~/classes/functions/user";
import { db } from "~/drizzle/db";
import { Challenges } from "~/drizzle/schema";
import type { User } from "~/packages/database-interface/user";

View file

@ -1,5 +1,5 @@
import { getLogger } from "@logtape/logtape";
import { markdownParse } from "~/database/entities/status";
import { markdownParse } from "~/classes/functions/status";
export const renderMarkdownInPath = async (
path: string,

View file

@ -1,4 +1,4 @@
import type { Application } from "~/database/entities/application";
import type { Application } from "~/classes/functions/application";
/**
* Check if an OAuth application is valid for a route

View file

@ -2,9 +2,9 @@ import { config } from "config-manager";
import type {
Notification,
findManyNotifications,
} from "~/database/entities/notification";
import type { Status, findManyNotes } from "~/database/entities/status";
import type { UserType, findManyUsers } from "~/database/entities/user";
} from "~/classes/functions/notification";
import type { Status, findManyNotes } from "~/classes/functions/status";
import type { UserType, findManyUsers } from "~/classes/functions/user";
import type { db } from "~/drizzle/db";
export async function fetchTimeline<T extends UserType | Status | Notification>(