✨ use new config
This commit is contained in:
parent
f756b20a2b
commit
e287d3e5bd
@ -11,13 +11,13 @@ import {
|
|||||||
UserModel,
|
UserModel,
|
||||||
toObject,
|
toObject,
|
||||||
EVENTEnum,
|
EVENTEnum,
|
||||||
|
Config,
|
||||||
} from "@fosscord/server-util";
|
} from "@fosscord/server-util";
|
||||||
import { setupListener } from "../listener/listener";
|
import { setupListener } from "../listener/listener";
|
||||||
import { IdentifySchema } from "../schema/Identify";
|
import { IdentifySchema } from "../schema/Identify";
|
||||||
import { Send } from "../util/Send";
|
import { Send } from "../util/Send";
|
||||||
import experiments from "./experiments.json";
|
import experiments from "./experiments.json";
|
||||||
import { check } from "./instanceOf";
|
import { check } from "./instanceOf";
|
||||||
import * as Config from "../util/Config";
|
|
||||||
|
|
||||||
// TODO: bot sharding
|
// TODO: bot sharding
|
||||||
// TODO: check priviliged intents
|
// TODO: check priviliged intents
|
||||||
@ -30,7 +30,7 @@ export async function onIdentify(this: WebSocket, data: Payload) {
|
|||||||
const identify: IdentifySchema = data.d;
|
const identify: IdentifySchema = data.d;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const { jwtSecret } = Config.gatewayConfig.getAll().security;
|
const { jwtSecret } = Config.get().security;
|
||||||
var decoded = await checkToken(identify.token, jwtSecret); // will throw an error if invalid
|
var decoded = await checkToken(identify.token, jwtSecret); // will throw an error if invalid
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("invalid token", error);
|
console.error("invalid token", error);
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
// @ts-nocheck
|
||||||
import { Config } from "@fosscord/server-util";
|
import { Config } from "@fosscord/server-util";
|
||||||
import { getConfigPathForFile } from "@fosscord/server-util/dist/util/Config";
|
import { getConfigPathForFile } from "@fosscord/server-util/dist/util/Config";
|
||||||
import Ajv, { JSONSchemaType } from "ajv";
|
import Ajv, { JSONSchemaType } from "ajv";
|
||||||
@ -6,7 +7,7 @@ export interface DefaultOptions {
|
|||||||
endpoint?: string;
|
endpoint?: string;
|
||||||
security: {
|
security: {
|
||||||
jwtSecret: string;
|
jwtSecret: string;
|
||||||
}
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
const schema: JSONSchemaType<DefaultOptions> = {
|
const schema: JSONSchemaType<DefaultOptions> = {
|
||||||
@ -14,23 +15,27 @@ const schema: JSONSchemaType<DefaultOptions> = {
|
|||||||
properties: {
|
properties: {
|
||||||
endpoint: {
|
endpoint: {
|
||||||
type: "string",
|
type: "string",
|
||||||
nullable: true
|
nullable: true,
|
||||||
},
|
},
|
||||||
security: {
|
security: {
|
||||||
type: "object",
|
type: "object",
|
||||||
properties: {
|
properties: {
|
||||||
jwtSecret: {
|
jwtSecret: {
|
||||||
type: "string"
|
type: "string",
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
required: ["jwtSecret"]
|
required: ["jwtSecret"],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
required: ["security"]
|
required: ["security"],
|
||||||
}
|
};
|
||||||
|
|
||||||
const ajv = new Ajv();
|
const ajv = new Ajv();
|
||||||
const validator = ajv.compile(schema);
|
const validator = ajv.compile(schema);
|
||||||
|
|
||||||
const configPath = getConfigPathForFile("fosscord", "gateway", ".json");
|
const configPath = getConfigPathForFile("fosscord", "gateway", ".json");
|
||||||
export const gatewayConfig = new Config<DefaultOptions>({path: configPath, schemaValidator: validator, schema: schema})
|
export const gatewayConfig = new Config<DefaultOptions>({
|
||||||
|
path: configPath,
|
||||||
|
schemaValidator: validator,
|
||||||
|
schema: schema,
|
||||||
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user