2024-04-11 12:56:40 +00:00
|
|
|
import {
|
|
|
|
Entity,
|
|
|
|
Column,
|
|
|
|
PrimaryColumn,
|
|
|
|
ManyToOne,
|
|
|
|
JoinColumn,
|
|
|
|
type Relation,
|
|
|
|
} from "typeorm";
|
2023-01-13 04:40:33 +00:00
|
|
|
import { id } from "../id.js";
|
2023-11-26 20:33:46 +00:00
|
|
|
import { User } from "./user.js";
|
2023-12-05 07:12:10 +00:00
|
|
|
import type { Clip } from "./clip.js";
|
2019-04-07 12:50:36 +00:00
|
|
|
|
|
|
|
@Entity()
|
|
|
|
export class Meta {
|
2019-04-16 15:33:02 +00:00
|
|
|
@PrimaryColumn({
|
2023-05-29 16:31:02 +00:00
|
|
|
type: "varchar",
|
2021-12-09 14:58:30 +00:00
|
|
|
length: 32,
|
2019-04-16 15:33:02 +00:00
|
|
|
})
|
2019-04-07 12:50:36 +00:00
|
|
|
public id: string;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 128,
|
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public name: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 1024,
|
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public description: string | null;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* メンテナの名前
|
|
|
|
*/
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 128,
|
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public maintainerName: string | null;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* メンテナの連絡先
|
|
|
|
*/
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 128,
|
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public maintainerEmail: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2024-03-01 00:13:00 +00:00
|
|
|
default: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public disableRegistration: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public disableLocalTimeline: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2022-07-29 04:28:13 +00:00
|
|
|
default: true,
|
|
|
|
})
|
|
|
|
public disableRecommendedTimeline: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public disableGlobalTimeline: boolean;
|
|
|
|
|
2024-03-01 15:19:05 +00:00
|
|
|
@Column("boolean", {
|
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public enableGuestTimeline: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
default: "⭐",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
2023-01-05 04:06:48 +00:00
|
|
|
public defaultReaction: string;
|
2019-04-07 12:50:36 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 64,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public langs: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2019-05-10 08:30:28 +00:00
|
|
|
})
|
|
|
|
public pinnedUsers: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2022-07-29 04:28:13 +00:00
|
|
|
})
|
|
|
|
public recommendedInstances: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2022-07-27 16:46:35 +00:00
|
|
|
})
|
2024-03-02 04:13:03 +00:00
|
|
|
public customMotd: string[];
|
2022-07-27 16:46:35 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2022-07-27 17:25:30 +00:00
|
|
|
})
|
|
|
|
public customSplashIcons: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public hiddenTags: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public blockedHosts: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2023-04-30 11:27:55 +00:00
|
|
|
})
|
|
|
|
public silencedHosts: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2022-09-14 03:23:52 +00:00
|
|
|
default: false,
|
2021-07-20 16:45:41 +00:00
|
|
|
})
|
|
|
|
public secureMode: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2022-09-14 03:23:52 +00:00
|
|
|
default: false,
|
2021-07-20 16:45:41 +00:00
|
|
|
})
|
|
|
|
public privateMode: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
array: true,
|
|
|
|
default: "{}",
|
2021-07-20 16:45:41 +00:00
|
|
|
})
|
|
|
|
public allowedHosts: string[];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
|
|
|
length: 512,
|
|
|
|
array: true,
|
2023-07-02 22:18:30 +00:00
|
|
|
default: "{/featured,/channels,/explore,/pages,/about-firefish}",
|
2020-11-17 05:59:15 +00:00
|
|
|
})
|
|
|
|
public pinnedPages: string[];
|
|
|
|
|
2020-12-05 07:05:40 +00:00
|
|
|
@Column({
|
|
|
|
...id(),
|
|
|
|
nullable: true,
|
|
|
|
})
|
2023-01-13 04:40:33 +00:00
|
|
|
public pinnedClipId: Clip["id"] | null;
|
2020-12-05 07:05:40 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2022-02-09 12:25:48 +00:00
|
|
|
length: 512,
|
|
|
|
nullable: true,
|
|
|
|
})
|
|
|
|
public themeColor: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-11 10:03:49 +00:00
|
|
|
length: 512,
|
2019-04-07 12:50:36 +00:00
|
|
|
nullable: true,
|
2023-09-26 03:57:14 +00:00
|
|
|
default: "/static-assets/badges/info.webp",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public mascotImageUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-11 10:03:49 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public bannerUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2020-11-25 12:31:34 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2020-11-25 12:31:34 +00:00
|
|
|
})
|
|
|
|
public backgroundImageUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2020-11-25 12:31:34 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2020-11-25 12:31:34 +00:00
|
|
|
})
|
|
|
|
public logoImageUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-11 10:03:49 +00:00
|
|
|
length: 512,
|
2019-04-07 12:50:36 +00:00
|
|
|
nullable: true,
|
2023-09-26 03:57:14 +00:00
|
|
|
default: "/static-assets/badges/error.webp",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public errorImageUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-11 10:03:49 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public iconUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2023-06-24 20:25:25 +00:00
|
|
|
default: false,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public cacheRemoteFiles: boolean;
|
|
|
|
|
2024-03-01 11:26:28 +00:00
|
|
|
@Column("boolean", {
|
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public markLocalFilesNsfwByDefault: boolean;
|
|
|
|
|
2020-02-05 01:15:09 +00:00
|
|
|
@Column({
|
|
|
|
...id(),
|
|
|
|
nullable: true,
|
|
|
|
})
|
2023-01-13 04:40:33 +00:00
|
|
|
public proxyAccountId: User["id"] | null;
|
2020-02-05 01:15:09 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2021-10-08 04:37:02 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public emailRequiredForSignup: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2020-04-28 05:29:33 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public enableHcaptcha: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2020-04-28 05:29:33 +00:00
|
|
|
length: 64,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2020-04-28 05:29:33 +00:00
|
|
|
})
|
|
|
|
public hcaptchaSiteKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2020-04-28 05:29:33 +00:00
|
|
|
length: 64,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2020-04-28 05:29:33 +00:00
|
|
|
})
|
|
|
|
public hcaptchaSecretKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public enableRecaptcha: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-07 12:50:36 +00:00
|
|
|
length: 64,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public recaptchaSiteKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-07 12:50:36 +00:00
|
|
|
length: 64,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public recaptchaSecretKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("integer", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: 1024,
|
2023-05-29 16:31:02 +00:00
|
|
|
comment: "Drive capacity of a local user (MB)",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public localDriveCapacityMb: number;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("integer", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: 32,
|
2023-05-29 16:31:02 +00:00
|
|
|
comment: "Drive capacity of a remote user (MB)",
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public remoteDriveCapacityMb: number;
|
|
|
|
|
2024-04-13 00:59:11 +00:00
|
|
|
@Column("integer", {
|
|
|
|
default: 5,
|
|
|
|
comment: "Antenna Limit",
|
|
|
|
})
|
|
|
|
public antennaLimit: number;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-07 12:50:36 +00:00
|
|
|
length: 128,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public summalyProxy: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public enableEmail: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-07 12:50:36 +00:00
|
|
|
length: 128,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public email: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public smtpSecure: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-07 12:50:36 +00:00
|
|
|
length: 128,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public smtpHost: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("integer", {
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public smtpPort: number | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2023-07-15 07:19:09 +00:00
|
|
|
length: 1024,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public smtpUser: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2023-07-15 07:19:09 +00:00
|
|
|
length: 1024,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public smtpPass: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-04-07 12:50:36 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public enableServiceWorker: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-07 12:50:36 +00:00
|
|
|
length: 128,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public swPublicKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-04-07 12:50:36 +00:00
|
|
|
length: 128,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-04-07 12:50:36 +00:00
|
|
|
})
|
|
|
|
public swPrivateKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2021-08-15 11:26:44 +00:00
|
|
|
length: 128,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2021-08-15 11:26:44 +00:00
|
|
|
})
|
|
|
|
public deeplAuthKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2021-08-24 04:19:21 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public deeplIsPro: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2023-04-30 01:09:51 +00:00
|
|
|
length: 512,
|
|
|
|
nullable: true,
|
|
|
|
})
|
|
|
|
public libreTranslateApiUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2023-04-30 01:09:51 +00:00
|
|
|
length: 128,
|
|
|
|
nullable: true,
|
|
|
|
})
|
|
|
|
public libreTranslateApiKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-13 17:57:04 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-13 17:57:04 +00:00
|
|
|
})
|
2024-03-02 04:13:03 +00:00
|
|
|
public tosUrl: string | null;
|
2019-05-13 17:57:04 +00:00
|
|
|
|
2023-11-26 20:14:02 +00:00
|
|
|
@Column("jsonb", {
|
|
|
|
default: [],
|
|
|
|
nullable: false,
|
|
|
|
})
|
|
|
|
public moreUrls: [string, string][];
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-13 17:57:04 +00:00
|
|
|
length: 512,
|
2024-02-14 13:44:11 +00:00
|
|
|
default: "https://firefish.dev/firefish/firefish",
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: false,
|
2019-05-13 17:57:04 +00:00
|
|
|
})
|
|
|
|
public repositoryUrl: string;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-13 17:57:04 +00:00
|
|
|
length: 512,
|
2024-02-14 13:44:11 +00:00
|
|
|
default: "https://firefish.dev/firefish/firefish/issues/new",
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-13 17:57:04 +00:00
|
|
|
})
|
|
|
|
public feedbackUrl: string | null;
|
2019-05-15 16:07:32 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2022-03-01 14:58:01 +00:00
|
|
|
length: 8192,
|
|
|
|
nullable: true,
|
|
|
|
})
|
|
|
|
public defaultLightTheme: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2022-03-01 14:58:01 +00:00
|
|
|
length: 8192,
|
|
|
|
nullable: true,
|
|
|
|
})
|
|
|
|
public defaultDarkTheme: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-05-15 16:07:32 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public useObjectStorage: boolean;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-15 16:07:32 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStorageBucket: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-15 16:07:32 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStoragePrefix: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-15 16:07:32 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStorageBaseUrl: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-15 16:07:32 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStorageEndpoint: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-15 16:07:32 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStorageRegion: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-15 16:07:32 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStorageAccessKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("varchar", {
|
2019-05-15 16:07:32 +00:00
|
|
|
length: 512,
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStorageSecretKey: string | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("integer", {
|
2021-12-09 14:58:30 +00:00
|
|
|
nullable: true,
|
2019-05-15 16:07:32 +00:00
|
|
|
})
|
|
|
|
public objectStoragePort: number | null;
|
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2019-05-15 16:07:32 +00:00
|
|
|
default: true,
|
|
|
|
})
|
2024-03-02 04:13:03 +00:00
|
|
|
public objectStorageUseSsl: boolean;
|
2020-04-12 11:32:34 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2020-04-12 11:32:34 +00:00
|
|
|
default: true,
|
|
|
|
})
|
|
|
|
public objectStorageUseProxy: boolean;
|
2020-08-13 11:05:01 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2020-08-13 11:05:01 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public objectStorageSetPublicRead: boolean;
|
2021-02-06 02:48:57 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2021-02-06 02:48:57 +00:00
|
|
|
default: true,
|
|
|
|
})
|
|
|
|
public objectStorageS3ForcePathStyle: boolean;
|
2022-07-02 06:12:11 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2022-07-02 06:12:11 +00:00
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public enableIpLogging: boolean;
|
2022-07-09 06:05:55 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("boolean", {
|
2022-07-09 06:05:55 +00:00
|
|
|
default: true,
|
|
|
|
})
|
|
|
|
public enableActiveEmailValidation: boolean;
|
2023-05-13 13:41:36 +00:00
|
|
|
|
2023-05-29 16:31:02 +00:00
|
|
|
@Column("jsonb", {
|
2023-05-13 13:41:36 +00:00
|
|
|
default: {},
|
|
|
|
})
|
|
|
|
public experimentalFeatures: Record<string, unknown>;
|
2023-07-02 23:20:40 +00:00
|
|
|
|
|
|
|
@Column("boolean", {
|
|
|
|
default: false,
|
|
|
|
})
|
|
|
|
public enableServerMachineStats: boolean;
|
|
|
|
|
|
|
|
@Column("boolean", {
|
|
|
|
default: true,
|
|
|
|
})
|
|
|
|
public enableIdenticonGeneration: boolean;
|
2023-07-12 06:23:44 +00:00
|
|
|
|
|
|
|
@Column("varchar", {
|
|
|
|
length: 256,
|
|
|
|
nullable: true,
|
|
|
|
})
|
|
|
|
public donationLink: string | null;
|
2024-04-11 12:56:40 +00:00
|
|
|
|
|
|
|
//#region Relations
|
|
|
|
@ManyToOne(() => User, {
|
|
|
|
onDelete: "SET NULL",
|
|
|
|
nullable: true,
|
|
|
|
})
|
|
|
|
@JoinColumn()
|
|
|
|
public proxyAccount: Relation<User | null>;
|
|
|
|
//#endregion
|
2019-04-07 12:50:36 +00:00
|
|
|
}
|