mirror of
https://github.com/versia-pub/server.git
synced 2025-12-06 08:28:19 +01:00
refactor: 🚚 Rename functions, move getUrl to Attachment
This commit is contained in:
parent
11c3931007
commit
d09f74e58a
|
|
@ -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)),
|
||||
)}`,
|
||||
);
|
||||
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
});
|
||||
|
|
|
|||
|
|
@ -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 "";
|
||||
};
|
||||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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({
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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 =
|
||||
|
|
|
|||
|
|
@ -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({
|
||||
|
|
|
|||
|
|
@ -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({
|
||||
|
|
|
|||
|
|
@ -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({
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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({
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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", () => {
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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";
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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>(
|
||||
|
|
|
|||
Loading…
Reference in a new issue