aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--browser/background.js2
-rw-r--r--src/components/monacoWin.html104
-rw-r--r--src/plugins/messageLinkEmbeds.tsx2
-rw-r--r--src/utils/types.ts2
4 files changed, 63 insertions, 47 deletions
diff --git a/browser/background.js b/browser/background.js
index 7fc4a82..1f2d5ec 100644
--- a/browser/background.js
+++ b/browser/background.js
@@ -16,7 +16,7 @@ chrome.webRequest.onHeadersReceived.addListener(
// In main frame requests, the CSP needs to be removed to enable fetching of custom css
// as desired by the user
removeFirst(responseHeaders, h => h.name.toLowerCase() === "content-security-policy");
- } else if (type === "stylesheet" && url.startsWith("https://raw.githubusercontent.com")) {
+ } else if (type === "stylesheet" && url.startsWith("https://raw.githubusercontent.com/")) {
// Most users will load css from GitHub, but GitHub doesn't set the correct content type,
// so we fix it here
removeFirst(responseHeaders, h => h.name.toLowerCase() === "content-type");
diff --git a/src/components/monacoWin.html b/src/components/monacoWin.html
index d9d2412..57d3214 100644
--- a/src/components/monacoWin.html
+++ b/src/components/monacoWin.html
@@ -1,52 +1,66 @@
-<!doctype html>
+<!DOCTYPE html>
<html lang="en">
+ <head>
+ <meta charset="utf-8" />
+ <title>Vencord QuickCSS Editor</title>
+ <link
+ rel="stylesheet"
+ href="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.37.1/min/vs/editor/editor.main.min.css"
+ integrity="sha512-wB3xfL98hWg1bpkVYSyL0js/Jx9s7FsDg9aYO6nOMSJTgPuk/PFqxXQJKKSUjteZjeYrfgo9NFBOA1r9HwDuZw=="
+ crossorigin="anonymous"
+ referrerpolicy="no-referrer"
+ />
+ <style>
+ html,
+ body,
+ #container {
+ position: absolute;
+ left: 0;
+ top: 0;
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ overflow: hidden;
+ }
+ </style>
+ </head>
-<head>
- <meta charset="utf-8">
- <title>Vencord QuickCSS Editor</title>
- <link rel="stylesheet" data-name="vs/editor/editor.main"
- href="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.34.0/min/vs/editor/editor.main.min.css">
- <style>
- html,
- body,
- #container {
- position: absolute;
- left: 0;
- top: 0;
- width: 100%;
- height: 100%;
- margin: 0;
- padding: 0;
- overflow: hidden;
- }
- </style>
-</head>
+ <body>
+ <div id="container"></div>
+ <script
+ src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.37.1/min/vs/loader.min.js"
+ integrity="sha512-A+6SvPGkIN9Rf0mUXmW4xh7rDvALXf/f0VtOUiHlDUSPknu2kcfz1KzLpOJyL2pO+nZS13hhIjLqVgiQExLJrw=="
+ crossorigin="anonymous"
+ referrerpolicy="no-referrer"
+ ></script>
-<body>
- <div id="container"></div>
- <script src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.34.0/min/vs/loader.min.js"></script>
+ <script>
+ require.config({
+ paths: {
+ vs: "https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.37.1/min/vs",
+ },
+ });
- <script>
- require.config({ paths: { 'vs': 'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.34.0/min/vs' } });
- require(["vs/editor/editor.main"], () => {
- getCurrentCss().then(css => {
- var editor = monaco.editor.create(document.getElementById('container'), {
- value: css,
- language: 'css',
- theme: getTheme(),
- });
- editor.onDidChangeModelContent(() =>
- setCss(editor.getValue())
- );
- window.addEventListener("resize", () => {
- // make monaco re-layout
- editor.layout();
+ require(["vs/editor/editor.main"], () => {
+ getCurrentCss().then((css) => {
+ var editor = monaco.editor.create(
+ document.getElementById("container"),
+ {
+ value: css,
+ language: "css",
+ theme: getTheme(),
+ }
+ );
+ editor.onDidChangeModelContent(() =>
+ setCss(editor.getValue())
+ );
+ window.addEventListener("resize", () => {
+ // make monaco re-layout
+ editor.layout();
+ });
});
});
- });
-
-
- </script>
-</body>
-
+ </script>
+ </body>
</html>
diff --git a/src/plugins/messageLinkEmbeds.tsx b/src/plugins/messageLinkEmbeds.tsx
index e3a28a7..951835a 100644
--- a/src/plugins/messageLinkEmbeds.tsx
+++ b/src/plugins/messageLinkEmbeds.tsx
@@ -51,7 +51,7 @@ const SearchResultClasses = findByPropsLazy("message", "searchResult");
let AutoModEmbed: React.ComponentType<any> = () => null;
const messageLinkRegex = /(?<!<)https?:\/\/(?:\w+\.)?discord(?:app)?\.com\/channels\/(\d{17,20}|@me)\/(\d{17,20})\/(\d{17,20})/g;
-const tenorRegex = /https:\/\/(?:www.)?tenor\.com/;
+const tenorRegex = /^https:\/\/(?:www\.)?tenor\.com\//;
interface Attachment {
height: number;
diff --git a/src/utils/types.ts b/src/utils/types.ts
index 4d71027..c1e54aa 100644
--- a/src/utils/types.ts
+++ b/src/utils/types.ts
@@ -108,6 +108,8 @@ export interface PluginDef {
flux?: {
[E in FluxEvents]?: (event: any) => void;
};
+
+ tags?: string[];
}
export enum OptionType {