this repo has no description
1import { ExtensionWebExports } from "@moonlight-mod/types";
2import ui from "./ui";
3import { DownloadIconSVG, TrashIconSVG } from "./types";
4
5export const webpackModules: ExtensionWebExports["webpackModules"] = {
6 stores: {
7 dependencies: [
8 { ext: "common", id: "flux" },
9 { ext: "common", id: "fluxDispatcher" }
10 ]
11 },
12
13 moonbase: {
14 dependencies: [
15 { ext: "spacepack", id: "spacepack" },
16 { ext: "settings", id: "settings" },
17 { ext: "common", id: "react" },
18 { ext: "common", id: "components" },
19 { ext: "moonbase", id: "stores" },
20 DownloadIconSVG,
21 TrashIconSVG
22 ],
23 entrypoint: true,
24 run: (module, exports, require) => {
25 const settings = require("settings_settings").Settings;
26 const React = require("common_react");
27 const spacepack = require("spacepack_spacepack").spacepack;
28 const { MoonbaseSettingsStore } =
29 require("moonbase_stores") as typeof import("./webpackModules/stores");
30
31 settings.addSection("Moonbase", "Moonbase", ui(require), null, -2, {
32 stores: [MoonbaseSettingsStore],
33 element: () => {
34 // Require it here because lazy loading SUX
35 const SettingsNotice =
36 spacepack.findByCode("onSaveButtonColor")[0].exports.default;
37 return (
38 <SettingsNotice
39 submitting={MoonbaseSettingsStore.submitting}
40 onReset={() => {
41 MoonbaseSettingsStore.reset();
42 }}
43 onSave={() => {
44 MoonbaseSettingsStore.writeConfig();
45 }}
46 />
47 );
48 }
49 });
50 }
51 }
52};