diff --git a/package.json b/package.json index e01ba822..2e9ec032 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "equicord", "private": "true", - "version": "1.11.9", + "version": "1.12.0", "description": "The other cutest Discord client mod", "homepage": "https://github.com/Equicord/Equicord#readme", "bugs": { @@ -119,4 +119,4 @@ "engines": { "node": ">=18" } -} +} \ No newline at end of file diff --git a/src/plugins/betterFolders/index.tsx b/src/plugins/betterFolders/index.tsx index 56a71ab8..7740eb2c 100644 --- a/src/plugins/betterFolders/index.tsx +++ b/src/plugins/betterFolders/index.tsx @@ -64,7 +64,6 @@ function filterTreeWithTargetNode(children: any, predicate: (node: any) => boole return filterTreeWithTargetNode(children.props?.children, predicate); } - let childIsTargetChild = false; for (let i = 0; i < children.length; i++) { const shouldKeep = filterTreeWithTargetNode(children[i], predicate); diff --git a/src/plugins/experiments/index.tsx b/src/plugins/experiments/index.tsx index 5e84dc16..35663cb5 100644 --- a/src/plugins/experiments/index.tsx +++ b/src/plugins/experiments/index.tsx @@ -1,19 +1,19 @@ /* - * Vencord, a modification for Discord's desktop app - * Copyright (c) 2022 Vendicated and contributors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . +* Vencord, a modification for Discord's desktop app +* Copyright (c) 2022 Vendicated and contributors +* +* This program is free software: you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation, either version 3 of the License, or +* (at your option) any later version. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see . */ import { definePluginSettings } from "@api/Settings"; @@ -31,6 +31,10 @@ import hideBugReport from "./hideBugReport.css?managed"; const KbdStyles = findByPropsLazy("key", "combo"); const BugReporterExperiment = findLazy(m => m?.definition?.id === "2024-09_bug_reporter"); +const isMacOS = navigator.platform.includes("Mac"); +const modKey = isMacOS ? "cmd" : "ctrl"; +const altKey = isMacOS ? "opt" : "alt"; + const settings = definePluginSettings({ toolbarDevMenu: { type: OptionType.BOOLEAN, @@ -43,7 +47,13 @@ const settings = definePluginSettings({ export default definePlugin({ name: "Experiments", description: "Enable Access to Experiments & other dev-only features in Discord!", - authors: [Devs.Megu, Devs.Ven, Devs.Nickyux, Devs.BanTheNons, Devs.Nuckyz], + authors: [ + Devs.Megu, + Devs.Ven, + Devs.Nickyux, + Devs.BanTheNons, + Devs.Nuckyz, + ], settings, @@ -69,9 +79,9 @@ export default definePlugin({ replace: "$&$self.WarningCard()," } }, - // change top right chat toolbar button from the help one to the dev one + // Change top right chat toolbar button from the help one to the dev one { - find: "toolbar:function", + find: ".CONTEXTLESS,isActivityPanelMode:", replacement: { match: /hasBugReporterAccess:(\i)/, replace: "_hasBugReporterAccess:$1=true" @@ -79,7 +89,7 @@ export default definePlugin({ predicate: () => settings.store.toolbarDevMenu }, - // makes the Favourites Server experiment allow favouriting DMs and threads + // Make the Favourites Server experiment allow favouriting DMs and threads { find: "useCanFavoriteChannel", replacement: { @@ -87,23 +97,28 @@ export default definePlugin({ replace: "false", } }, - // enable option to always record clips even if you are not streaming + // Enable option to always record clips even if you are not streaming { find: "isDecoupledGameClippingEnabled(){", replacement: { match: /\i\.isStaff\(\)/, replace: "true" } - } + }, + // Enable experiment embed on sent experiment links + { + find: "dev://experiment/", + replacement: { + match: /\i\.isStaff\(\)/, + replace: "true" + } + }, ], start: () => !BugReporterExperiment.getCurrentConfig().hasBugReporterAccess && enableStyle(hideBugReport), stop: () => disableStyle(hideBugReport), settingsAboutComponent: () => { - const isMacOS = navigator.platform.includes("Mac"); - const modKey = isMacOS ? "cmd" : "ctrl"; - const altKey = isMacOS ? "opt" : "alt"; return ( More Information diff --git a/src/plugins/imageZoom/components/Magnifier.tsx b/src/plugins/imageZoom/components/Magnifier.tsx index 2acd0259..d68f916e 100644 --- a/src/plugins/imageZoom/components/Magnifier.tsx +++ b/src/plugins/imageZoom/components/Magnifier.tsx @@ -18,7 +18,7 @@ import { classNameFactory } from "@api/Styles"; import ErrorBoundary from "@components/ErrorBoundary"; -import { FluxDispatcher, useLayoutEffect, useRef, useState } from "@webpack/common"; +import { FluxDispatcher, useLayoutEffect, useMemo, useRef, useState } from "@webpack/common"; import { ELEMENT_ID } from "../constants"; import { settings } from "../index"; @@ -160,6 +160,16 @@ export const Magnifier = ErrorBoundary.wrap(({ instance, size: i } }); + const imageSrc = useMemo(() => { + try { + const imageUrl = new URL(instance.props.src); + imageUrl.searchParams.set("animated", "true"); + return imageUrl.toString(); + } catch { + return instance.props.src; + } + }, [instance.props.src]); + if (!ready) return null; const box = element.current?.getBoundingClientRect(); @@ -203,7 +213,7 @@ export const Magnifier = ErrorBoundary.wrap(({ instance, size: i }} width={`${box.width * zoom.current}px`} height={`${box.height * zoom.current}px`} - src={instance.props.src + "?animated=true"} + src={imageSrc} alt="" /> )} diff --git a/src/plugins/mutualGroupDMs/index.tsx b/src/plugins/mutualGroupDMs/index.tsx index f06cac0c..858a366c 100644 --- a/src/plugins/mutualGroupDMs/index.tsx +++ b/src/plugins/mutualGroupDMs/index.tsx @@ -88,7 +88,7 @@ export default definePlugin({ patches: [ { - find: ".MUTUAL_FRIENDS?(", + find: ".BOT_DATA_ACCESS?(", replacement: [ { match: /\i\.useEffect.{0,100}(\i)\[0\]\.section/,