[everything] run prettier.

master
Drake 2 years ago
parent d50b3ef708
commit 428886645f

@ -3,7 +3,7 @@
"singleQuote": false,
"semi": true,
"bracketSpacing": true,
"trailingComma": "none",
"trailingComma": "none",
"overrides": [
{
"files": "*.js",

@ -1,3 +1,3 @@
{
"presets": ["@babel/preset-flow", "@babel/preset-react"]
"presets": ["@babel/preset-flow", "@babel/preset-react"]
}

@ -1,22 +1,22 @@
import esbuild from 'esbuild'
import babel from 'esbuild-plugin-babel'
import esbuild from "esbuild";
import babel from "esbuild-plugin-babel";
(async ()=>{
try {
await esbuild.build({
entryPoints: ["src/index.js"],
bundle: true,
minify: true,
format: "iife",
target: "es2021",
outfile: "dist/build.js",
plugins: [babel()]
})
console.log("Build succeeded!")
process.exit(0)
} catch (e) {
console.error(e)
console.log("Build failed!")
process.exit(1)
}
})() //IIFE to shutup lsp
(async () => {
try {
await esbuild.build({
entryPoints: ["src/index.js"],
bundle: true,
minify: true,
format: "iife",
target: "es2021",
outfile: "dist/build.js",
plugins: [babel()]
});
console.log("Build succeeded!");
process.exit(0);
} catch (e) {
console.error(e);
console.log("Build failed!");
process.exit(1);
}
})(); //IIFE to shutup lsp

@ -1,33 +1,33 @@
{
"name": "demoncord",
"version": "0.0.1-indev",
"description": "a devilesque client mod 😈",
"main": "src/index.js",
"scripts": {
"build": "node build.mjs",
"flow": "flow"
},
"author": "Drake",
"license": "BSD-3-Clause",
"devDependencies": {
"@babel/core": "^7.16.7",
"@babel/preset-flow": "^7.16.7",
"@babel/preset-react": "^7.16.7",
"@rollup/plugin-babel": "^5.3.0",
"@rollup/plugin-commonjs": "^21.0.1",
"@rollup/plugin-node-resolve": "^13.1.3",
"demonpatcher": "^0.1.0",
"esbuild": "^0.14.11",
"esbuild-plugin-babel": "^0.2.3",
"flow-bin": "^0.169.0",
"flow-remove-types": "^2.169.0",
"idb-keyval": "^6.0.3",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"rollup": "^2.63.0",
"rollup-plugin-esbuild": "^4.8.2",
"rollup-plugin-flow": "^1.1.1",
"rollup-plugin-uglify": "^6.0.4",
"simian": "^1.4.3"
}
"name": "demoncord",
"version": "0.0.1-indev",
"description": "a devilesque client mod 😈",
"main": "src/index.js",
"scripts": {
"build": "node build.mjs",
"flow": "flow"
},
"author": "Drake",
"license": "BSD-3-Clause",
"devDependencies": {
"@babel/core": "^7.16.7",
"@babel/preset-flow": "^7.16.7",
"@babel/preset-react": "^7.16.7",
"@rollup/plugin-babel": "^5.3.0",
"@rollup/plugin-commonjs": "^21.0.1",
"@rollup/plugin-node-resolve": "^13.1.3",
"demonpatcher": "^0.1.0",
"esbuild": "^0.14.11",
"esbuild-plugin-babel": "^0.2.3",
"flow-bin": "^0.169.0",
"flow-remove-types": "^2.169.0",
"idb-keyval": "^6.0.3",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"rollup": "^2.63.0",
"rollup-plugin-esbuild": "^4.8.2",
"rollup-plugin-flow": "^1.1.1",
"rollup-plugin-uglify": "^6.0.4",
"simian": "^1.4.3"
}
}

File diff suppressed because it is too large Load Diff

4
shims/react.js vendored

@ -1,3 +1,3 @@
import { React } from "../src/api/common.js"
import { React } from "../src/api/common.js";
export { React }
export { React };

@ -28,7 +28,7 @@ function init(obj: Object) {
// }
function add(command: {
name: string,
callback: (args: Array<any>) => string,
callback: (args: Array<any>) => string
}): () => void {
let sym = Symbol(command.name);
window.demon[commandsSym][sym] = command;
@ -39,5 +39,5 @@ function add(command: {
export default {
add: add,
init: init,
init: init
};

@ -1,18 +1,18 @@
// @flow
import webpack from "./webpack.js"
import webpack from "./webpack.js";
import * as idb from "idb-keyval";
const common: {React: Object, ReactDOM: Object} = {
React: webpack.findByProps(
"__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED",
"createElement"
),
ReactDOM: webpack.findByProps(
"__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED",
"hydrate"
),
"idb_keyval": idb
}
const common: { React: Object, ReactDOM: Object } = {
React: webpack.findByProps(
"__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED",
"createElement"
),
ReactDOM: webpack.findByProps(
"__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED",
"hydrate"
),
idb_keyval: idb
};
export default common;

@ -18,12 +18,12 @@
// return map;
//})();
function getAllClasses() {
return document.styleSheets[0].rules || document.styleSheets[0].cssRules
return document.styleSheets[0].rules || document.styleSheets[0].cssRules;
}
function getClassListByName(className) {
const classes = getAllClasses()
return classes
const classes = getAllClasses();
return classes;
}
//how to define getters and setters on an object:
@ -41,20 +41,16 @@ function getClassListByName(className) {
// },
//});
function getProxyObj(classes) {
}
function getProxyObj(classes) {}
function init(obj: Object) {
obj.demon.css = {
classes: {
get: (className) => {
}
}
}
obj.demon.css = {
classes: {
get: (className) => {}
}
};
}
export default {
init
}
init
};

@ -24,13 +24,13 @@ async function init(obj: Object): Promise<boolean> {
async function addPlugin(iife: string): Promise<boolean> {
// expected metadata: {name: "name", desc: "description", author: "author"}
const exports: Object = (0, eval)(iife);
const metadata: Object = exports.metadata;
const exports: Object = (0, eval)(iife);
const metadata: Object = exports.metadata;
const obj: Object = {
// whether the plugin is started or stopped isn't going to be stored in the iDB, so it can be accessed more easily by all components
metadata: metadata,
iife: iife,
enabled: false, // should plugins be enabled by default? not sure
enabled: false // should plugins be enabled by default? not sure
};
const globalSettings: Object = await get("demoncord");
/*try {
@ -69,9 +69,9 @@ async function startPlugin(name: string): Promise<boolean> {
const exports: Object = (0, eval)(plug.iife);
const onStart: (ctx: Object) => void = exports.onStart;
let ctx = {}; // ctx is how you're going to store things that need to be accessed in both onStart and onStop. dumb, i know
if (plug.metadata.cumcord) {
ctx.cumcord = window.demon //TODO: explicit cumcord compat layer.
}
if (plug.metadata.cumcord) {
ctx.cumcord = window.demon; //TODO: explicit cumcord compat layer.
}
onStart(ctx);
if (exports.settings)
settingsInj.registerSettingsEntry(
@ -89,7 +89,7 @@ async function stopPlugin(name: string): Promise<boolean> {
const globalSettings = await get("demoncord");
if (globalSettings["plugin"][name] === undefined) {
logger.error("Cannot stop non-existant or non-running plugin!", [
"Plugins",
"Plugins"
]);
return false;
} else {
@ -123,5 +123,5 @@ export default {
delPlugin,
startPlugin,
stopPlugin,
togglePlugin,
togglePlugin
};

@ -1,18 +1,16 @@
// @flow
import webpack from "../../webpack.js"
import common from "../../common.js"
const React = common.React
import webpack from "../../webpack.js";
import common from "../../common.js";
const React = common.React;
const FormTitle = webpack.findByDisplayName("FormTitle")
const FormDivider = webpack.findByDisplayName("FormDivider")
const FormSection = webpack.findByDisplayName("FormSection")
const FormTitle = webpack.findByDisplayName("FormTitle");
const FormDivider = webpack.findByDisplayName("FormDivider");
const FormSection = webpack.findByDisplayName("FormSection");
export default function(): any {
return (
<FormSection>
<FormTitle tag="h1">
Demoncord Settings
</FormTitle>
</FormSection>
)
export default function (): any {
return (
<FormSection>
<FormTitle tag="h1">Demoncord Settings</FormTitle>
</FormSection>
);
}

@ -1,17 +1,17 @@
// @flow
import tmp from "./settingsInj.js"
const registerSettingsEntry = tmp.registerSettingsEntry
import common from "../common.js"
const React = common.React
import tmp from "./settingsInj.js";
const registerSettingsEntry = tmp.registerSettingsEntry;
import common from "../common.js";
const React = common.React;
import Settings from "./components/settings.jsx"
import Settings from "./components/settings.jsx";
function init() {
console.log(Settings)
console.log(Settings())
registerSettingsEntry("General Settings", undefined, Settings)
console.log(Settings);
console.log(Settings());
registerSettingsEntry("General Settings", undefined, Settings);
}
export default {
init
}
init
};

@ -1,7 +1,7 @@
// @flow
import webpack from "../webpack.js";
import common from "../common.js"
import common from "../common.js";
const React = common.React;
const settingsSym = Symbol("__settings");
@ -9,33 +9,32 @@ const settingsSym = Symbol("__settings");
// super secret value that shouldnt be exposed, used internally to avoid section conflicts and the like
const ovrwrtSctnSym: symbol = Symbol("__overwriteSection");
const settingsView = webpack.findByDisplayName("SettingsView")
const settingsView = webpack.findByDisplayName("SettingsView");
type getPredicateSectionsEntry =
| {
section: "HEADER",
label: string,
label: string
}
| {
section: "DIVIDER",
section: "DIVIDER"
}
| {
section: string,
label: string,
component: Function,
component: Function
};
function patch(args: mixed, ret: getPredicateSectionsEntry[]) {
const processedEntries = window.demon[settingsSym].entries.map((e) => ({
section:
(e[ovrwrtSctnSym] ?? "DEMON_SETTINGS_LOADER_") +
e.name,
section: (e[ovrwrtSctnSym] ?? "DEMON_SETTINGS_LOADER_") + e.name,
label: e.name,
element: e.component,
element: e.component
}));
processedEntries.map((e) => {console.log(e)})
processedEntries.map((e) => {
console.log(e);
});
const injectionIndex =
2 + ret.findIndex((section) => section.section === "Game Activity");
@ -56,7 +55,7 @@ function init() {
settingsView.default.prototype,
patch
),
entries: [],
entries: []
};
// debug
@ -70,9 +69,7 @@ function unInit() {
function unregisterSettingsEntry(name: string) {
let s = window.demon[settingsSym];
s.entries = s.entries.filter(
(e) => (e[ovrwrtSctnSym] ?? e.name) !== name
);
s.entries = s.entries.filter((e) => (e[ovrwrtSctnSym] ?? e.name) !== name);
}
function registerSettingsEntry(
@ -82,8 +79,8 @@ function registerSettingsEntry(
): () => void {
let entry: { [symbol | string]: any } = { name, component };
if (section) entry[ovrwrtSctnSym] = section;
//entry.component.type = entry.component.type.default
console.log(entry)
//entry.component.type = entry.component.type.default
console.log(entry);
window.demon[settingsSym].entries.push(entry);
return () => unregisterSettingsEntry(name);
}
@ -93,5 +90,5 @@ export default {
unInit,
registerSettingsEntry,
unregisterSettingsEntry,
ovrwrtSctnSymm: ovrwrtSctnSym,
ovrwrtSctnSymm: ovrwrtSctnSym
};

@ -79,5 +79,5 @@ export default {
warn,
error,
trace,
group,
group
};

@ -1,64 +1,64 @@
// @flow
type ModuleType = Object/* { [symbol]: any } */;
type ModuleType = Object /* { [symbol]: any } */;
type FilterFunc = (module: ModuleType) => boolean;
function getModules(): any {
let modules: { c: mixed[] } = {};
let modules: { c: mixed[] } = {};
window.webpackChunkdiscord_app.push([
[Math.random().toString(36)],
{},
(e) => {
modules = e;
},
]);
window.webpackChunkdiscord_app.push([
[Math.random().toString(36)],
{},
(e) => {
modules = e;
}
]);
return modules.c;
return modules.c;
}
function filter(filter: FilterFunc, moduleList: any): Array<Object> {
let modules: Array<mixed[]> = [];
for (const mod in moduleList) {
const module = moduleList[mod].exports;
if (module) {
if (module.default && module.__esModule && filter(module.default)) {
modules.push(module.default);
} else if (filter(module)) {
modules.push(module);
}
let modules: Array<mixed[]> = [];
for (const mod in moduleList) {
const module = moduleList[mod].exports;
if (module) {
if (module.default && module.__esModule && filter(module.default)) {
modules.push(module.default);
} else if (filter(module)) {
modules.push(module);
}
}
}
}
return modules;
return modules;
}
type WebpackModules = {
modules: () => any,
filter: (filter: FilterFunc, moduleList: any) => Object[],
find: (filter: FilterFunc) => Object,
findAll: (filter: FilterFunc) => Object[],
findByProps: (...props: string[]) => Object,
findByPropsAll: (...props: string[]) => Object[],
findByDisplayName: (prop: string) => Object[],
modules: () => any,
filter: (filter: FilterFunc, moduleList: any) => Object[],
find: (filter: FilterFunc) => Object,
findAll: (filter: FilterFunc) => Object[],
findByProps: (...props: string[]) => Object,
findByPropsAll: (...props: string[]) => Object[],
findByDisplayName: (prop: string) => Object[]
};
let webpack: WebpackModules = {
modules: getModules(),
filter: filter,
find: (filter: FilterFunc) => webpack.filter(filter, webpack.modules)[0],
findAll: (filter: FilterFunc) => webpack.filter(filter, webpack.modules),
findByProps: (...props: Array<string>) => {
return webpack.find((module) => {
return props.every((prop) => module[prop] !== undefined);
});
},
findByPropsAll: (...props: Array<string>) => {
return webpack.findAll((module) =>
props.every((prop) => module[prop] !== undefined)
);
},
findByDisplayName: (prop: string) => {
return webpack.find((m) => m?.default?.displayName === prop)
}
modules: getModules(),
filter: filter,
find: (filter: FilterFunc) => webpack.filter(filter, webpack.modules)[0],
findAll: (filter: FilterFunc) => webpack.filter(filter, webpack.modules),
findByProps: (...props: Array<string>) => {
return webpack.find((module) => {
return props.every((prop) => module[prop] !== undefined);
});
},
findByPropsAll: (...props: Array<string>) => {
return webpack.findAll((module) =>
props.every((prop) => module[prop] !== undefined)
);
},
findByDisplayName: (prop: string) => {
return webpack.find((m) => m?.default?.displayName === prop);
}
};
export default webpack;

@ -1,7 +1,7 @@
import init from "./init.js"
import init from "./init.js";
if (window.demon) {
delete window.demon; // this is a very good idea
delete window.demon; // this is a very good idea
}
init(window)
init(window);

@ -1,12 +1,12 @@
// @flow
import Patcher from "simian";
import webpack from "./api/webpack";
import common from "./api/common";
import commands from "./api/commands";
import plugins from "./api/plugins";
import Patcher from "simian";
import webpack from "./api/webpack";
import common from "./api/common";
import commands from "./api/commands";
import plugins from "./api/plugins";
import settingsInj from "./api/settings/settingsInj";
import settings from "./api/settings/settings"
import css from "./api/css"
import settings from "./api/settings/settings";
import css from "./api/css";
async function init(obj: Object): Promise<void> {
const patcher = new Patcher();
@ -32,22 +32,22 @@ async function init(obj: Object): Promise<void> {
},
before: patcher.before,
instead: patcher.instead,
after: patcher.after,
after: patcher.after
},
webpack,
common,
commands: {
add: commands.add,
add: commands.add
},
__DO_NOT_USE_OR_YOU_WILL_BE_FIRED_UNTO_THE_DEPTHS_OF_HELL: {
plugins,
plugins
}
};
commands.init(obj);
settingsInj.init();
plugins.init(obj);
settings.init();
css.init(obj)
settings.init();
css.init(obj);
}
export default init;

Loading…
Cancel
Save