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

@ -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";