setUserPower should account for room version 12

This commit is contained in:
Cadence Ember
2026-01-07 15:38:09 +13:00
parent 55e0e5dfa1
commit 4bea696a5a
29 changed files with 199 additions and 133 deletions

View File

@@ -18,7 +18,9 @@ const createSpace = sync.require("../../d2m/actions/create-space")
/** @type {import("../auth")} */
const auth = require("../auth")
/** @type {import("../../discord/utils")} */
const utils = sync.require("../../discord/utils")
const dUtils = sync.require("../../discord/utils")
/** @type {import("../../matrix/utils")} */
const mxUtils = sync.require("../../matrix/utils")
const {reg} = require("../../matrix/read-registration")
const schema = {
@@ -102,8 +104,8 @@ function getChannelRoomsLinks(guild, rooms, roles) {
let unlinkedChannels = unlinkedChannelIDs.map(c => discord.channels.get(c))
let removedWrongTypeChannels = filterTo(unlinkedChannels, c => c && [0, 5].includes(c.type))
let removedPrivateChannels = filterTo(unlinkedChannels, c => {
const permissions = utils.getPermissions(roles, guild.roles, botID, c["permission_overwrites"])
return utils.hasPermission(permissions, DiscordTypes.PermissionFlagsBits.ViewChannel)
const permissions = dUtils.getPermissions(roles, guild.roles, botID, c["permission_overwrites"])
return dUtils.hasPermission(permissions, DiscordTypes.PermissionFlagsBits.ViewChannel)
})
unlinkedChannels.sort((a, b) => getPosition(a) - getPosition(b))
@@ -228,7 +230,7 @@ as.router.post("/api/invite", defineEventHandler(async event => {
( parsedBody.permissions === "admin" ? 100
: parsedBody.permissions === "moderator" ? 50
: 0)
if (powerLevel) await api.setUserPowerCascade(spaceID, parsedBody.mxid, powerLevel)
if (powerLevel) await mxUtils.setUserPowerCascade(spaceID, parsedBody.mxid, powerLevel, api)
if (parsedBody.guild_id) {
setResponseHeader(event, "HX-Refresh", true)

View File

@@ -4,8 +4,8 @@ const {z} = require("zod")
const {defineEventHandler, getValidatedQuery, H3Event} = require("h3")
const {as, from, sync, select} = require("../../passthrough")
/** @type {import("../../m2d/converters/utils")} */
const mUtils = sync.require("../../m2d/converters/utils")
/** @type {import("../../matrix/utils")} */
const mUtils = sync.require("../../matrix/utils")
/**
* @param {H3Event} event

View File

@@ -10,8 +10,8 @@ const {discord, db, as, sync, select, from} = require("../../passthrough")
const auth = sync.require("../auth")
/** @type {import("../../matrix/mreq")} */
const mreq = sync.require("../../matrix/mreq")
/** @type {import("../../m2d/converters/utils")}*/
const utils = sync.require("../../m2d/converters/utils")
/** @type {import("../../matrix/utils")}*/
const utils = sync.require("../../matrix/utils")
const {reg} = require("../../matrix/read-registration")
/**

View File

@@ -13,8 +13,8 @@ const reg = require("../matrix/read-registration")
const {sync, discord, as, select} = require("../passthrough")
/** @type {import("./pug-sync")} */
const pugSync = sync.require("./pug-sync")
/** @type {import("../m2d/converters/utils")} */
const mUtils = sync.require("../m2d/converters/utils")
/** @type {import("../matrix/utils")} */
const mUtils = sync.require("../matrix/utils")
const {id} = require("../../addbot")
// Pug