diff --git a/api/client_test/index.html b/api/client_test/index.html index 384c598a..39ff346d 100644 --- a/api/client_test/index.html +++ b/api/client_test/index.html @@ -54,9 +54,14 @@ setInterval(() => { var token = JSON.parse(localStorage.getItem("token")); if (token) { + var logincss = document.querySelector('#logincss'), + canRemove = logincss ? logincss: ""; + if(canRemove !== "") { document.querySelector("#logincss").remove(); + canRemove = ""; + } } - }, 1000); + }, 1000) const settings = JSON.parse(localStorage.getItem("UserSettingsStore")); if (settings && settings.locale.length <= 2) { diff --git a/api/package-lock.json b/api/package-lock.json index 75945cbe..21afe02c 100644 Binary files a/api/package-lock.json and b/api/package-lock.json differ diff --git a/api/src/routes/channels/#channel_id/messages/index.ts b/api/src/routes/channels/#channel_id/messages/index.ts index 5fdab623..2fd08b04 100644 --- a/api/src/routes/channels/#channel_id/messages/index.ts +++ b/api/src/routes/channels/#channel_id/messages/index.ts @@ -219,7 +219,10 @@ router.post( }) ); } - + + //Fix for the client bug + delete message.member + await Promise.all([ message.save(), emitEvent({ event: "MESSAGE_CREATE", channel_id: channel_id, data: message } as MessageCreateEvent), diff --git a/bundle/package-lock.json b/bundle/package-lock.json index 19c5b050..f35b9a0e 100644 Binary files a/bundle/package-lock.json and b/bundle/package-lock.json differ diff --git a/bundle/package.json b/bundle/package.json index efcb0f90..fc2962d4 100644 --- a/bundle/package.json +++ b/bundle/package.json @@ -94,14 +94,14 @@ "morgan": "^1.10.0", "multer": "^1.4.2", "nanocolors": "^0.2.12", - "node-fetch": "^2.6.7", + "node-fetch": "^2.6.2", "node-os-utils": "^1.3.5", "patch-package": "^6.4.7", "pg": "^8.7.1", "picocolors": "^1.0.0", "proxy-agent": "^5.0.0", "reflect-metadata": "^0.1.13", - "sqlite3": "^5.0.2", + "sqlite3": "^4.2.0", "supertest": "^6.1.6", "tslib": "^2.3.1", "typeorm": "^0.2.37", @@ -110,4 +110,4 @@ "typescript-json-schema": "^0.50.1", "ws": "^7.4.2" } -} \ No newline at end of file +} diff --git a/util/package-lock.json b/util/package-lock.json index 386f95ec..9d20da93 100644 Binary files a/util/package-lock.json and b/util/package-lock.json differ diff --git a/util/src/entities/Emoji.ts b/util/src/entities/Emoji.ts index 32d39234..a3615b7d 100644 --- a/util/src/entities/Emoji.ts +++ b/util/src/entities/Emoji.ts @@ -41,6 +41,6 @@ export class Emoji extends BaseClass { @Column({ type: "simple-array" }) roles: string[]; // roles this emoji is whitelisted to (new discord feature?) - @Column({ type: "simple-array" }) + @Column({ type: "simple-array", nullable: true }) groups: string[]; // user groups this emoji is whitelisted to (Fosscord extension) } diff --git a/util/src/util/Database.ts b/util/src/util/Database.ts index e8177093..9ab5d14c 100644 --- a/util/src/util/Database.ts +++ b/util/src/util/Database.ts @@ -25,6 +25,7 @@ export function initDatabase(): Promise { // @ts-ignore promise = createConnection({ type, + charset: 'utf8mb4', url: isSqlite ? undefined : dbConnectionString, database: isSqlite ? dbConnectionString : undefined, // @ts-ignore diff --git a/util/src/util/Rights.ts b/util/src/util/Rights.ts index f0d00baf..9a99d393 100644 --- a/util/src/util/Rights.ts +++ b/util/src/util/Rights.ts @@ -35,9 +35,9 @@ export class Rights extends BitField { ADD_MEMBERS: BitFlag(8), // can manually add any members in their guilds BYPASS_RATE_LIMITS: BitFlag(9), CREATE_APPLICATIONS: BitFlag(10), - CREATE_CHANNELS: BitFlag(11), + CREATE_CHANNELS: BitFlag(11), // can create guild channels or threads in the guilds that they have permission CREATE_DMS: BitFlag(12), - CREATE_DM_GROUPS: BitFlag(13), + CREATE_DM_GROUPS: BitFlag(13), // can create group DMs or custom orphan channels CREATE_GUILDS: BitFlag(14), CREATE_INVITES: BitFlag(15), // can create mass invites in the guilds that they have CREATE_INSTANT_INVITE CREATE_ROLES: BitFlag(16), @@ -57,6 +57,17 @@ export class Rights extends BitField { SELF_DELETE_DISABLE: BitFlag(30), // can disable/delete own account DEBTABLE: BitFlag(31), // can use pay-to-use features CREDITABLE: BitFlag(32), // can receive money from monetisation related features + KICK_BAN_MEMBERS: BitFlag(33), + // can kick or ban guild or group DM members in the guilds/groups that they have KICK_MEMBERS, or BAN_MEMBERS + SELF_LEAVE_GROUPS: BitFlag(34), + // can leave the guilds or group DMs that they joined on their own (one can always leave a guild or group DMs they have been force-added) + PRESENCE: BitFlag(35), + // inverts the presence confidentiality default (OPERATOR's presence is not routed by default, others' are) for a given user + SELF_ADD_DISCOVERABLE: BitFlag(36), // can mark discoverable guilds that they have permissions to mark as discoverable + MANAGE_GUILD_DIRECTORY: BitFlag(37), // can change anything in the primary guild directory + INITIATE_INTERACTIONS: BitFlag(40), // can initiate interactions + RESPOND_TO_INTERACTIONS: BitFlag(41), // can respond to interactions + SEND_BACKDATED_EVENTS: BitFlag(42), // can send backdated events }; any(permission: RightResolvable, checkOperator = true) {