Local changes
This commit is contained in:
parent
5c798af16d
commit
aff39e4b1b
12
.idea/dataSources.xml
generated
Normal file
12
.idea/dataSources.xml
generated
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
|
||||
<data-source source="LOCAL" name="spacebar@localhost" uuid="61e66448-285a-4205-a1d7-c2704d5afb2c">
|
||||
<driver-ref>postgresql</driver-ref>
|
||||
<synchronize>true</synchronize>
|
||||
<jdbc-driver>org.postgresql.Driver</jdbc-driver>
|
||||
<jdbc-url>jdbc:postgresql://localhost:5432/spacebar</jdbc-url>
|
||||
<working-dir>$ProjectFileDir$</working-dir>
|
||||
</data-source>
|
||||
</component>
|
||||
</project>
|
||||
6
.idea/data_source_mapping.xml
generated
Normal file
6
.idea/data_source_mapping.xml
generated
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="DataSourcePerFileMappings">
|
||||
<file url="file://$APPLICATION_CONFIG_DIR$/consoles/db/61e66448-285a-4205-a1d7-c2704d5afb2c/console.sql" value="61e66448-285a-4205-a1d7-c2704d5afb2c" />
|
||||
</component>
|
||||
</project>
|
||||
6
.idea/sqldialects.xml
generated
Normal file
6
.idea/sqldialects.xml
generated
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="SqlDialectMappings">
|
||||
<file url="PROJECT" dialect="PostgreSQL" />
|
||||
</component>
|
||||
</project>
|
||||
15
.idea/workspace.xml
generated
15
.idea/workspace.xml
generated
@ -73,6 +73,9 @@
|
||||
"ts.external.directory.path": "/home/Rory/git/spacebar/server-master/node_modules/typescript/lib"
|
||||
},
|
||||
"keyToStringList": {
|
||||
"DatabaseDriversLRU": [
|
||||
"postgresql"
|
||||
],
|
||||
"GitStage.ChangesTree.GroupingKeys": [
|
||||
"directory",
|
||||
"module",
|
||||
@ -102,6 +105,18 @@
|
||||
<option value="js.build_tools.npm" />
|
||||
</set>
|
||||
</option>
|
||||
<option name="configurationStatuses">
|
||||
<map>
|
||||
<entry key="js.build_tools.npm">
|
||||
<value>
|
||||
<map>
|
||||
<entry key="Start API" value="STOPPED" />
|
||||
<entry key="build" value="STOPPED" />
|
||||
</map>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="npm.Start API">
|
||||
<list>
|
||||
|
||||
@ -18,8 +18,13 @@
|
||||
|
||||
import { route } from "@spacebar/api";
|
||||
import { Request, Response, Router } from "express";
|
||||
import { ApplicationDetectableResponse } from "@spacebar/schemas*";
|
||||
|
||||
const router: Router = Router({ mergeParams: true });
|
||||
const cache = {
|
||||
data: {},
|
||||
lastUpdated: 0
|
||||
}
|
||||
|
||||
router.get(
|
||||
"/",
|
||||
@ -31,8 +36,15 @@ router.get(
|
||||
},
|
||||
}),
|
||||
async (req: Request, res: Response) => {
|
||||
//TODO
|
||||
res.send([]).status(200);
|
||||
// cache for 6 hours
|
||||
if (Date.now() - cache.lastUpdated > 6 * 60 * 60 * 1000) {
|
||||
const response = await fetch("https://discord.com/api/v10/applications/detectable"); // because, well, it's unauthenticated anyways
|
||||
const data = await response.json();
|
||||
cache.data = data as ApplicationDetectableResponse;
|
||||
cache.lastUpdated = Date.now();
|
||||
}
|
||||
|
||||
res.status(200).json(cache.data);
|
||||
},
|
||||
);
|
||||
|
||||
|
||||
@ -28,6 +28,7 @@ import { Message } from "./Message";
|
||||
import { Deflate, Inflate } from "fast-zlib";
|
||||
import { URL } from "url";
|
||||
import { Config, ErlpackType } from "@spacebar/util";
|
||||
// import zlib from "node:zlib";
|
||||
|
||||
let erlpack: ErlpackType | null = null;
|
||||
try {
|
||||
@ -116,10 +117,18 @@ export async function Connection(
|
||||
// @ts-ignore
|
||||
socket.compress = searchParams.get("compress") || "";
|
||||
if (socket.compress) {
|
||||
if (socket.compress !== "zlib-stream")
|
||||
if (socket.compress === "zlib-stream") {
|
||||
socket.deflate = new Deflate();
|
||||
socket.inflate = new Inflate();
|
||||
} else if (socket.compress === "zstd-stream") {
|
||||
// TODO
|
||||
return socket.close(
|
||||
CLOSECODES.Decode_error
|
||||
);
|
||||
|
||||
} else {
|
||||
return socket.close(CLOSECODES.Decode_error);
|
||||
socket.deflate = new Deflate();
|
||||
socket.inflate = new Inflate();
|
||||
}
|
||||
}
|
||||
|
||||
socket.events = {};
|
||||
|
||||
@ -113,13 +113,13 @@ export class User extends BaseClass {
|
||||
@Column({ nullable: true, select: false })
|
||||
email?: string; // email of the user
|
||||
|
||||
@Column()
|
||||
@Column({ type: "bigint" })
|
||||
flags: number = 0; // UserFlags // TODO: generate
|
||||
|
||||
@Column()
|
||||
@Column({ type: "bigint" })
|
||||
public_flags: number = 0;
|
||||
|
||||
@Column()
|
||||
@Column({ type: "bigint" })
|
||||
purchased_flags: number = 0;
|
||||
|
||||
@Column()
|
||||
|
||||
@ -1,74 +1,53 @@
|
||||
// import { MigrationInterface, QueryRunner } from "typeorm";
|
||||
//
|
||||
// export class ApplicationCommands1760622755598 implements MigrationInterface {
|
||||
// name = 'ApplicationCommands1760622755598'
|
||||
//
|
||||
// public async up(queryRunner: QueryRunner): Promise<void> {
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" DROP CONSTRAINT "fk_d64f38834fa676f6caa4786ddd6"`);
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" DROP COLUMN "source_channel_id"`);
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" ADD "source_channel_id" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" DROP COLUMN "username"`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" ADD "username" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" DROP COLUMN "avatar"`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" ADD "avatar" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "channels" ALTER COLUMN "default_thread_rate_limit_per_user" DROP NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "sessions" ALTER COLUMN "client_status" SET NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "friend_discovery_flags" DROP DEFAULT`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "view_nsfw_guilds" DROP DEFAULT`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" DROP COLUMN "flags"`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" ADD "flags" integer NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" DROP COLUMN "public_flags"`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" ADD "public_flags" integer NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" DROP COLUMN "purchased_flags"`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" ADD "purchased_flags" integer NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "team_members" DROP COLUMN "role"`);
|
||||
// await queryRunner.query(`ALTER TABLE "team_members" ADD "role" character varying NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" DROP COLUMN "guild_id"`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" ADD "guild_id" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" DROP COLUMN "custom_install_url"`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" ADD "custom_install_url" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "categories" DROP COLUMN "icon"`);
|
||||
// await queryRunner.query(`ALTER TABLE "categories" ADD "icon" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" DROP COLUMN "userSettings"`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" ADD "userSettings" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" DROP COLUMN "frecencySettings"`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" ADD "frecencySettings" character varying`);
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" ADD CONSTRAINT "FK_4495b7032a33c6b8b605d030398" FOREIGN KEY ("source_channel_id") REFERENCES "channels"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" ADD CONSTRAINT "FK_e5bf78cdbbe9ba91062d74c5aba" FOREIGN KEY ("guild_id") REFERENCES "guilds"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`);
|
||||
// }
|
||||
//
|
||||
// public async down(queryRunner: QueryRunner): Promise<void> {
|
||||
// await queryRunner.query(`ALTER TABLE "applications" DROP CONSTRAINT "FK_e5bf78cdbbe9ba91062d74c5aba"`);
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" DROP CONSTRAINT "FK_4495b7032a33c6b8b605d030398"`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" DROP COLUMN "frecencySettings"`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" ADD "frecencySettings" text`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" DROP COLUMN "userSettings"`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings_protos" ADD "userSettings" text`);
|
||||
// await queryRunner.query(`ALTER TABLE "categories" DROP COLUMN "icon"`);
|
||||
// await queryRunner.query(`ALTER TABLE "categories" ADD "icon" text`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" DROP COLUMN "custom_install_url"`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" ADD "custom_install_url" text`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" DROP COLUMN "guild_id"`);
|
||||
// await queryRunner.query(`ALTER TABLE "applications" ADD "guild_id" text`);
|
||||
// await queryRunner.query(`ALTER TABLE "team_members" DROP COLUMN "role"`);
|
||||
// await queryRunner.query(`ALTER TABLE "team_members" ADD "role" text NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" DROP COLUMN "purchased_flags"`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" ADD "purchased_flags" bigint NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" DROP COLUMN "public_flags"`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" ADD "public_flags" bigint NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" DROP COLUMN "flags"`);
|
||||
// await queryRunner.query(`ALTER TABLE "users" ADD "flags" bigint NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "view_nsfw_guilds" SET DEFAULT true`);
|
||||
// await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "friend_discovery_flags" SET DEFAULT '0'`);
|
||||
// await queryRunner.query(`ALTER TABLE "sessions" ALTER COLUMN "client_status" DROP NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "channels" ALTER COLUMN "default_thread_rate_limit_per_user" SET NOT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" DROP COLUMN "avatar"`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" ADD "avatar" text`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" DROP COLUMN "username"`);
|
||||
// await queryRunner.query(`ALTER TABLE "messages" ADD "username" text`);
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" DROP COLUMN "source_channel_id"`);
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" ADD "source_channel_id" character varying(255) DEFAULT NULL`);
|
||||
// await queryRunner.query(`ALTER TABLE "webhooks" ADD CONSTRAINT "fk_d64f38834fa676f6caa4786ddd6" FOREIGN KEY ("source_channel_id") REFERENCES "channels"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
|
||||
// }
|
||||
//
|
||||
// }
|
||||
import { MigrationInterface, QueryRunner } from "typeorm";
|
||||
|
||||
export class ReconcileMigrationAttempts1760622755598 implements MigrationInterface {
|
||||
name = 'ReconcileMigrationAttempts1760622755598'
|
||||
|
||||
public async up(queryRunner: QueryRunner): Promise<void> {
|
||||
await queryRunner.query(`ALTER TABLE "webhooks" DROP CONSTRAINT "fk_d64f38834fa676f6caa4786ddd6"`);
|
||||
await queryRunner.query(`ALTER TABLE "webhooks" ALTER COLUMN "source_channel_id" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "messages" ALTER COLUMN "username" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "messages" ALTER COLUMN "avatar" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "channels" ALTER COLUMN "default_thread_rate_limit_per_user" DROP NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "sessions" ALTER COLUMN "client_status" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "friend_discovery_flags" DROP DEFAULT`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "view_nsfw_guilds" DROP DEFAULT`);
|
||||
await queryRunner.query(`ALTER TABLE "users" ALTER COLUMN "flags" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "users" ALTER COLUMN "public_flags" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "users" ALTER COLUMN "purchased_flags" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "team_members" ALTER COLUMN "role" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "team_members" ALTER COLUMN "role" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "applications" ALTER COLUMN "guild_id" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "applications" ALTER COLUMN "custom_install_url" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "categories" ALTER COLUMN "icon" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings_protos" ALTER COLUMN "userSettings" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings_protos" ALTER COLUMN "frecencySettings" TYPE character varying`);
|
||||
await queryRunner.query(`ALTER TABLE "webhooks" ADD CONSTRAINT "FK_4495b7032a33c6b8b605d030398" FOREIGN KEY ("source_channel_id") REFERENCES "channels"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
|
||||
await queryRunner.query(`ALTER TABLE "applications" ADD CONSTRAINT "FK_e5bf78cdbbe9ba91062d74c5aba" FOREIGN KEY ("guild_id") REFERENCES "guilds"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`);
|
||||
}
|
||||
|
||||
public async down(queryRunner: QueryRunner): Promise<void> {
|
||||
await queryRunner.query(`ALTER TABLE "applications" DROP CONSTRAINT "FK_e5bf78cdbbe9ba91062d74c5aba"`);
|
||||
await queryRunner.query(`ALTER TABLE "webhooks" DROP CONSTRAINT "FK_4495b7032a33c6b8b605d030398"`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings_protos" ALTER COLUMN "frecencySettings" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings_protos" ALTER COLUMN "userSettings" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "categories" ALTER COLUMN "icon" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "applications" ALTER COLUMN "custom_install_url" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "applications" ALTER COLUMN "guild_id" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "team_members" ALTER COLUMN "role" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "team_members" ALTER COLUMN "role" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "users" ALTER COLUMN "purchased_flags" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "users" ALTER COLUMN "public_flags" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "users" ALTER COLUMN "flags" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "view_nsfw_guilds" SET DEFAULT true`);
|
||||
await queryRunner.query(`ALTER TABLE "user_settings" ALTER COLUMN "friend_discovery_flags" SET DEFAULT '0'`);
|
||||
await queryRunner.query(`ALTER TABLE "sessions" ALTER COLUMN "client_status" DROP NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "channels" ALTER COLUMN "default_thread_rate_limit_per_user" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "messages" ALTER COLUMN "avatar" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "messages" ALTER COLUMN "username" TYPE text`);
|
||||
await queryRunner.query(`ALTER TABLE "webhooks" ALTER COLUMN "source_channel_id" TYPE character varying(255)`);
|
||||
await queryRunner.query(`ALTER TABLE "webhooks" ALTER COLUMN "source_channel_id" SET DEFAULT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "webhooks" ADD CONSTRAINT "fk_d64f38834fa676f6caa4786ddd6" FOREIGN KEY ("source_channel_id") REFERENCES "channels"("id") ON DELETE CASCADE ON UPDATE NO ACTION`);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user