aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVendicated <vendicated@riseup.net>2022-10-26 13:49:28 +0200
committerVendicated <vendicated@riseup.net>2022-10-26 13:49:28 +0200
commitf492d26379fb47338bc03d08f0d131fbc7863064 (patch)
tree1c2d1519ccad77ec4c52d1bde24b2e48e73a1baa
parent56b00f715aef19c04e84dce9d1507da61f08a310 (diff)
downloadVencord-f492d26379fb47338bc03d08f0d131fbc7863064.tar.gz
Vencord-f492d26379fb47338bc03d08f0d131fbc7863064.tar.bz2
Vencord-f492d26379fb47338bc03d08f0d131fbc7863064.zip
Make jsFactory shorter -> bundle size -10%
-rw-r--r--src/webpack/common.tsx9
-rw-r--r--tsconfig.json5
2 files changed, 10 insertions, 4 deletions
diff --git a/src/webpack/common.tsx b/src/webpack/common.tsx
index 0bcc82c..2f9aaa9 100644
--- a/src/webpack/common.tsx
+++ b/src/webpack/common.tsx
@@ -22,7 +22,7 @@ import type Other from "discord-types/other";
import type Stores from "discord-types/stores";
import { lazyWebpack } from "../utils/misc";
-import { _resolveReady, filters, mapMangledModuleLazy,waitFor } from "./webpack";
+import { _resolveReady, filters, mapMangledModuleLazy, waitFor } from "./webpack";
export const Margins = lazyWebpack(filters.byProps(["marginTop20"]));
export let FluxDispatcher: Other.FluxDispatcher;
@@ -115,7 +115,12 @@ export const Clipboard = mapMangledModuleLazy('document.queryCommandEnabled("cop
SUPPORTS_COPY: x => typeof x === "boolean",
});
-waitFor("useState", m => React = m);
+waitFor("useState", m => {
+ window._Ve$ = m.createElement;
+ window._VF$ = m.Fragment;
+ React = m;
+});
+
waitFor(["dispatch", "subscribe"], m => {
FluxDispatcher = m;
const cb = () => {
diff --git a/tsconfig.json b/tsconfig.json
index 5d87ced..5269748 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -15,8 +15,9 @@
"noImplicitAny": false,
"target": "ESNEXT",
// https://esbuild.github.io/api/#jsx-factory
- "jsxFactory": "Vencord.Webpack.Common.React.createElement",
- "jsxFragmentFactory": "Vencord.Webpack.Common.React.Fragment",
+ // these short window aliases make the bundle ~10% smaller
+ "jsxFactory": "_Ve$",
+ "jsxFragmentFactory": "_VF$",
"jsx": "react"
},
"include": ["src/**/*"]