aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorV <vendicated@riseup.net>2023-05-12 03:41:00 +0200
committerV <vendicated@riseup.net>2023-05-12 03:41:15 +0200
commitade31f993b61722c16e97c79bd542a6d111049fc (patch)
treea5f48a634bae2ae4e0bc31fb6a6f324d333a7da1
parent3c7496ac6d72534c9b285ac789d95a4040a7385c (diff)
downloadVencord-ade31f993b61722c16e97c79bd542a6d111049fc.tar.gz
Vencord-ade31f993b61722c16e97c79bd542a6d111049fc.tar.bz2
Vencord-ade31f993b61722c16e97c79bd542a6d111049fc.zip
Implement plugin tags
-rw-r--r--.github/workflows/test.yml7
-rw-r--r--scripts/generatePluginList.ts9
-rw-r--r--src/components/PluginSettings/index.tsx7
-rw-r--r--src/plugins/imageZoom/index.tsx2
-rw-r--r--src/plugins/reverseImageSearch.tsx2
-rw-r--r--src/plugins/validUser.tsx1
-rw-r--r--src/plugins/viewIcons.tsx1
7 files changed, 25 insertions, 4 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 83fc57c..46d5641 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -26,5 +26,8 @@ jobs:
- name: Lint & Test if desktop version compiles
run: pnpm test
- - name: Lint & Test if web version compiles
- run: pnpm testWeb
+ - name: Test if web version compiles
+ run: pnpm buildWeb
+
+ - name: Test if plugin structure is valid
+ run: pnpm generatePluginJson
diff --git a/scripts/generatePluginList.ts b/scripts/generatePluginList.ts
index e4ae20a..8442e42 100644
--- a/scripts/generatePluginList.ts
+++ b/scripts/generatePluginList.ts
@@ -29,6 +29,7 @@ interface Dev {
interface PluginData {
name: string;
description: string;
+ tags: string[];
authors: Dev[];
dependencies: string[];
hasPatches: boolean;
@@ -106,6 +107,7 @@ async function parseFile(fileName: string) {
hasCommands: false,
enabledByDefault: false,
required: false,
+ tags: [] as string[]
} as PluginData;
for (const prop of pluginObj.properties) {
@@ -131,6 +133,13 @@ async function parseFile(fileName: string) {
return devs[getName(e)!];
});
break;
+ case "tags":
+ if (!isArrayLiteralExpression(value)) throw fail("tags is not an array literal");
+ data.tags = value.elements.map(e => {
+ if (!isStringLiteral(e)) throw fail("tags array contains non-string literals");
+ return e.text;
+ });
+ break;
case "dependencies":
if (!isArrayLiteralExpression(value)) throw fail("dependencies is not an array literal");
const { elements } = value;
diff --git a/src/components/PluginSettings/index.tsx b/src/components/PluginSettings/index.tsx
index 8ccc740..e1b36ef 100644
--- a/src/components/PluginSettings/index.tsx
+++ b/src/components/PluginSettings/index.tsx
@@ -228,9 +228,12 @@ export default function PluginSettings() {
if (enabled && searchValue.status === SearchStatus.DISABLED) return false;
if (!enabled && searchValue.status === SearchStatus.ENABLED) return false;
if (!searchValue.value.length) return true;
+
+ const v = searchValue.value.toLowerCase();
return (
- plugin.name.toLowerCase().includes(searchValue.value.toLowerCase()) ||
- plugin.description.toLowerCase().includes(searchValue.value.toLowerCase())
+ plugin.name.toLowerCase().includes(v) ||
+ plugin.description.toLowerCase().includes(v) ||
+ plugin.tags?.some(t => t.toLowerCase().includes(v))
);
};
diff --git a/src/plugins/imageZoom/index.tsx b/src/plugins/imageZoom/index.tsx
index da6ac69..d4adcdc 100644
--- a/src/plugins/imageZoom/index.tsx
+++ b/src/plugins/imageZoom/index.tsx
@@ -130,6 +130,8 @@ export default definePlugin({
name: "ImageZoom",
description: "Lets you zoom in to images and gifs. Use scroll wheel to zoom in and shift + scroll wheel to increase lens radius / size",
authors: [Devs.Aria],
+ tags: ["ImageUtilities"],
+
patches: [
{
find: '"renderLinkComponent","maxWidth"',
diff --git a/src/plugins/reverseImageSearch.tsx b/src/plugins/reverseImageSearch.tsx
index fd98d0f..c375e19 100644
--- a/src/plugins/reverseImageSearch.tsx
+++ b/src/plugins/reverseImageSearch.tsx
@@ -76,6 +76,8 @@ export default definePlugin({
name: "ReverseImageSearch",
description: "Adds ImageSearch to image context menus",
authors: [Devs.Ven, Devs.Nuckyz],
+ tags: ["ImageUtilities"],
+
patches: [
{
find: ".Messages.MESSAGE_ACTIONS_MENU_LABEL",
diff --git a/src/plugins/validUser.tsx b/src/plugins/validUser.tsx
index d92269c..42349b4 100644
--- a/src/plugins/validUser.tsx
+++ b/src/plugins/validUser.tsx
@@ -116,6 +116,7 @@ export default definePlugin({
name: "ValidUser",
description: "Fix mentions for unknown users showing up as '<@343383572805058560>' (hover over a mention to fix it)",
authors: [Devs.Ven],
+ tags: ["MentionCacheFix"],
patches: [{
find: 'className:"mention"',
diff --git a/src/plugins/viewIcons.tsx b/src/plugins/viewIcons.tsx
index 0543a64..9e74949 100644
--- a/src/plugins/viewIcons.tsx
+++ b/src/plugins/viewIcons.tsx
@@ -145,6 +145,7 @@ export default definePlugin({
name: "ViewIcons",
authors: [Devs.Ven, Devs.TheKodeToad, Devs.Nuckyz],
description: "Makes avatars and banners in user profiles clickable, and adds View Icon/Banner entries in the user and server context menu",
+ tags: ["ImageUtilities"],
settings,