Revenge/src/index.ts

79 lines
2.6 KiB
TypeScript
Raw Normal View History

2022-10-18 22:04:55 +00:00
import patcher from "@lib/patcher";
import logger from "@lib/logger";
import copyText from "@utils/copyText";
import findInReactTree from "@utils/findInReactTree";
import findInTree from "@utils/findInTree";
import * as constants from "@lib/constants";
2022-10-18 22:04:55 +00:00
import * as metro from "@metro/filters";
import * as common from "@metro/common";
import * as components from "@ui/components";
import * as toasts from "@ui/toasts";
import * as storage from "@lib/storage";
2023-01-08 23:24:00 +00:00
import { patchAssets, all, find, getAssetByID, getAssetByName, getAssetIDByName } from "@ui/assets";
import initSettings from "@ui/settings";
import { fixTheme } from "@ui/fixTheme";
2023-01-10 23:30:46 +00:00
import { connectToDebugger, patchLogHook, versionHash } from "@lib/debug";
import { plugins, fetchPlugin, evalPlugin, stopPlugin, removePlugin, getSettings } from "@lib/plugins";
import settings from "@lib/settings";
import { registerCommand } from "@lib/commands";
2022-10-18 22:04:55 +00:00
console.log("Hello from Vendetta!");
2022-10-25 22:50:18 +00:00
async function init() {
let erroredOnLoad = false;
2022-10-25 22:50:18 +00:00
try {
window.vendetta = {
patcher: patcher,
metro: { ...metro, common: { ...common } },
constants: { ...constants },
utils: {
copyText: copyText,
findInReactTree: findInReactTree,
findInTree: findInTree,
},
debug: {
connectToDebugger: connectToDebugger,
},
2022-10-25 22:50:18 +00:00
ui: {
components: { ...components },
toasts: { ...toasts },
2022-10-25 22:50:18 +00:00
assets: {
all: all,
find: find,
getAssetByID: getAssetByID,
getAssetByName: getAssetByName,
getAssetIDByName: getAssetIDByName,
},
2022-10-22 22:26:06 +00:00
},
2023-01-08 23:24:00 +00:00
plugins: {
plugins: plugins,
fetchPlugin: fetchPlugin,
evalPlugin: evalPlugin,
stopPlugin: stopPlugin,
removePlugin: removePlugin,
getSettings: getSettings,
},
commands: {
registerCommand: registerCommand,
2023-01-08 23:24:00 +00:00
},
storage: { ...storage },
settings: settings,
logger: logger,
2023-01-10 23:30:46 +00:00
version: versionHash,
2022-10-25 22:50:18 +00:00
};
patchLogHook();
2023-01-10 23:30:46 +00:00
patchAssets();
fixTheme();
2023-01-10 23:30:46 +00:00
initSettings();
2022-10-25 22:50:18 +00:00
} catch (e: Error | any) {
erroredOnLoad = true;
2023-01-07 03:13:16 +00:00
alert(`Vendetta failed to initialize... ${e.stack || e.toString()}`);
2022-10-25 22:50:18 +00:00
}
2022-10-25 22:50:18 +00:00
if (!erroredOnLoad) logger.log("Vendetta is ready!");
};
2022-10-19 06:58:32 +00:00
init();