build: inject createElement alias (#176)

This commit is contained in:
Ven 2022-10-29 20:27:48 +02:00 committed by GitHub
parent 37105ac416
commit 93859883c1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 40 additions and 22 deletions

View file

@ -23,7 +23,6 @@ import { useAwaiter } from "../utils/misc";
import { Alerts, Button, Forms, Margins, Parser, React, Switch } from "../webpack/common";
import ErrorBoundary from "./ErrorBoundary";
import { Flex } from "./Flex";
import { launchMonacoEditor } from "./Monaco";
export default ErrorBoundary.wrap(function Settings() {
const [settingsDir, , settingsDirPending] = useAwaiter(() => VencordNative.ipc.invoke<string>(IpcEvents.GET_SETTINGS_DIR), "Loading...");
@ -85,7 +84,7 @@ export default ErrorBoundary.wrap(function Settings() {
</Flex>}
{IS_WEB && <Button
onClick={launchMonacoEditor}
onClick={() => require("./Monaco").launchMonacoEditor()}
size={Button.Sizes.SMALL}
disabled={settingsDir === "Loading..."}
>

9
src/globals.d.ts vendored
View file

@ -16,7 +16,6 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
import React from "react";
declare global {
/**
@ -49,12 +48,6 @@ declare global {
*/
export var DiscordNative: any;
// jsFactory, here to make ts happy
/** Shorter alias for React.createElement to reduce bundle size, don't use this. */
export var _Ve$: typeof React["createElement"];
/** Shorter alias for React.Fragment to reduce bundle size, don't use this. */
export var _VF$: typeof React["Fragment"];
interface Window {
webpackChunkdiscord_app: {
push(chunk: any): any;
@ -63,3 +56,5 @@ declare global {
[k: string]: any;
}
}
export { };

View file

@ -115,11 +115,7 @@ export const Clipboard = mapMangledModuleLazy('document.queryCommandEnabled("cop
SUPPORTS_COPY: x => typeof x === "boolean",
});
waitFor("useState", m => {
window._Ve$ = m.createElement;
window._VF$ = m.Fragment;
React = m;
});
waitFor("useState", m => React = m);
waitFor(["dispatch", "subscribe"], m => {
FluxDispatcher = m;