Add ESM Module #252
13
.cjs2esm.js
Normal file
13
.cjs2esm.js
Normal file
@ -0,0 +1,13 @@
|
||||
module.exports = {
|
||||
input: ["src"],
|
||||
output: "esm",
|
||||
forceDirectory: null,
|
||||
modules: [],
|
||||
extension: {
|
||||
use: "js",
|
||||
ignore: [],
|
||||
},
|
||||
addModuleEntry: false,
|
||||
addPackageJson: true,
|
||||
filesWithShebang: [],
|
||||
};
|
2
.github/workflows/relelases.yml
vendored
2
.github/workflows/relelases.yml
vendored
@ -28,7 +28,7 @@ jobs:
|
||||
NODE_AUTH_TOKEN: '${{ secrets.NPM_ORG_TOKEN }}'
|
||||
|
||||
- name: Remove Dev Versions
|
||||
run: npm run remove_dev_versions
|
||||
run: npm run cirelease
|
||||
env:
|
||||
NODE_AUTH_TOKEN: '${{ secrets.NPM_ORG_TOKEN }}'
|
||||
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -11,3 +11,4 @@ the-bds-maneger-core-*.tgz
|
||||
.husky
|
||||
Servers
|
||||
.Build/Releases.json
|
||||
esm/
|
63
index_esm.js
Normal file
63
index_esm.js
Normal file
@ -0,0 +1,63 @@
|
||||
// Mount Module Oject
|
||||
const ModuleExport = {}
|
||||
import package_json from "./package.json";
|
||||
import BdsManegerInfo from "./BdsManegerInfo.json";
|
||||
|
||||
const BdsManegerCoreJSONs = {
|
||||
Package: package_json,
|
||||
Extra: BdsManegerInfo
|
||||
};
|
||||
|
||||
ModuleExport.version = package_json.version;
|
||||
ModuleExport.ExtraJSON = BdsManegerCoreJSONs;
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Settings");
|
||||
import BdsSettings from "./esm/lib/BdsSettings";
|
||||
ModuleExport.BdsSettings = BdsSettings;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Settings");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Token");
|
||||
import BdsToken from "./esm/lib/Token";
|
||||
ModuleExport.BdsToken = BdsToken;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Token");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: System Info");
|
||||
import BdsSystemInfo from "./esm/lib/BdsSystemInfo";
|
||||
ModuleExport.BdsSystemInfo = BdsSystemInfo;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: System Info");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Network");
|
||||
import BdsNetwork from "./esm/lib/BdsNetwork";
|
||||
ModuleExport.BdsNetwork = BdsNetwork;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Network");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Backups");
|
||||
import BdsBackup from "./esm/BdsBackup";
|
||||
ModuleExport.BdsBackup = BdsBackup;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Backups");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Server Settings");
|
||||
import BdsServerSettings from "./esm/BdsServerSettings";
|
||||
ModuleExport.BdsServerSettings = BdsServerSettings;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Server Settings");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Download Server");
|
||||
import BdsDownload from "./esm/BdsDownload";
|
||||
ModuleExport.BdsDownload = BdsDownload;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Download Server");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Check And Kill");
|
||||
import BdsCkeckKill from "./esm/BdsCkeckKill";
|
||||
ModuleExport.BdsCkeckKill = BdsCkeckKill;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Check And Kill");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: API");
|
||||
import BdsManegerAPI from "./esm/api";
|
||||
ModuleExport.BdsManegerAPI = BdsManegerAPI;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: API");
|
||||
|
||||
if (process.env.ShowLoadTime) console.time("Bds Maneger Core: Server Maneger");
|
||||
import BdsManegerServer from "./esm/BdsManegerServer";
|
||||
ModuleExport.BdsManegerServer = BdsManegerServer;
|
||||
if (process.env.ShowLoadTime) console.timeEnd("Bds Maneger Core: Server Maneger");
|
||||
if (process.env.ShowLoadTime) console.log("Bds Maneger Core: Complete");
|
8325
package-lock.json
generated
8325
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
20
package.json
20
package.json
@ -7,17 +7,18 @@
|
||||
"description": "Scripts to manage minecraft server's",
|
||||
"private": false,
|
||||
"main": "index.js",
|
||||
"exports": {
|
||||
"require": "./index.js",
|
||||
"import": "./index_esm.js"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "node bin/bds_maneger.js -s",
|
||||
"start:telegram": "node bin/telegram_bot.js -e js",
|
||||
"stop": "node -p 'console.log(require(\"./\").kill());'",
|
||||
"install": "cjs2esm",
|
||||
"start": "node bin/bds_maneger.js -sk",
|
||||
"test": "mocha --exit .test/*.js",
|
||||
"ci": "node .Build/test/ci.js",
|
||||
"eslint": "eslint --debug .",
|
||||
"eslint:fix": "eslint --debug --fix .",
|
||||
"nexe": "echo Nexe Removed from Bds Maneger Core && exit 1",
|
||||
"eslint": "eslint --debug --fix .",
|
||||
"Docker": "docker-compose build && docker-compose up",
|
||||
"remove_dev_versions": "node .Build/RemoveVersions.js"
|
||||
"cirelease": "node .Build/RemoveVersions.js"
|
||||
},
|
||||
"bin": {
|
||||
"bds_maneger": "bin/BdsManeger.js"
|
||||
@ -80,9 +81,10 @@
|
||||
"devDependencies": {
|
||||
"@actions/core": "^1.5.0",
|
||||
"chai": "^4.3.4",
|
||||
"cjs2esm": "^2.0.2",
|
||||
"eslint": "^8.0.0",
|
||||
"json-schema": ">=0.4.0",
|
||||
"mocha": "^9.1.3",
|
||||
"nodemon": "^2.0.12",
|
||||
"json-schema": ">=0.4.0"
|
||||
"nodemon": "^2.0.12"
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,7 @@ const BasicCommands = require("./ManegerServer/BasicCommands");
|
||||
|
||||
const ServerSessions = {};
|
||||
module.exports.GetSessions = () => ServerSessions;
|
||||
module.exports.GetSessionsArray = () => Object.keys(ServerSessions).map(key => ServerSessions[key]);
|
||||
|
||||
const PlayersCallbacks = [];
|
||||
module.exports.RegisterPlayerGlobalyCallbacks = function RegisterPlayerGlobalyCallbacks(callback){
|
||||
@ -235,7 +236,6 @@ module.exports.StartServer = function start() {
|
||||
|
||||
// Return
|
||||
ServerSessions[returnFuntion.uuid] = returnFuntion;
|
||||
module.exports.BdsRun = returnFuntion;
|
||||
return returnFuntion;
|
||||
}
|
||||
|
||||
|
100
src/api.js
100
src/api.js
@ -17,12 +17,13 @@ const fileUpload = require("express-fileupload");
|
||||
const pretty = require("express-prettify");
|
||||
const cors = require("cors");
|
||||
const express_rate_limit = require("express-rate-limit");
|
||||
const request_ip = require("request-ip");
|
||||
app.use(cors());
|
||||
app.use(bodyParser.json()); /* https://github.com/github/fetch/issues/323#issuecomment-331477498 */
|
||||
app.use(bodyParser.urlencoded({ extended: true }));
|
||||
app.use(pretty({always: true, spaces: 2}));
|
||||
app.use(fileUpload({limits: { fileSize: 512 * 1024 }}));
|
||||
app.use(require("request-ip").mw());
|
||||
app.use(request_ip.mw());
|
||||
app.use(express_rate_limit({
|
||||
windowMs: 1 * 60 * 1000, // 1 minutes
|
||||
max: 500 // limit each IP to 500 requests per windowMs
|
||||
@ -311,14 +312,13 @@ app.get("/players/kick", CheckToken, (req, res) => {
|
||||
const { Player = "Sirherobrine", Text = "You have been removed from the Server" } = req.query;
|
||||
|
||||
// Kick player
|
||||
const RunnerServer = require("./BdsManegerServer").BdsRun;
|
||||
try {
|
||||
RunnerServer.kick(Player, Text);
|
||||
res.json({ success: true });
|
||||
} catch (error) {
|
||||
const Sessions = require("./BdsManegerServer").GetSessionsArray();
|
||||
if (Sessions.length > 0) {
|
||||
Sessions.forEach(RunnerServer => RunnerServer.kick(Player, Text));
|
||||
return res.json({ success: true });
|
||||
} else {
|
||||
res.status(400).json({
|
||||
error: "Server nots Run",
|
||||
text: `${error}`
|
||||
error: "Server nots Run"
|
||||
});
|
||||
}
|
||||
});
|
||||
@ -328,16 +328,14 @@ app.get("/players/ban", CheckToken, (req, res) => {
|
||||
const { Player = "Sirherobrine" } = req.query;
|
||||
|
||||
// Ban player
|
||||
const RunnerServer = require("./BdsManegerServer").BdsRun;
|
||||
try {
|
||||
RunnerServer.ban(Player);
|
||||
res.json({ success: true });
|
||||
} catch (error) {
|
||||
res.status(400).json({
|
||||
error: "Server nots Run",
|
||||
text: `${error}`
|
||||
});
|
||||
const Sessions = require("./BdsManegerServer").GetSessionsArray();
|
||||
if (Sessions.length > 0) {
|
||||
Sessions.forEach(RunnerServer => RunnerServer.ban(Player));
|
||||
return res.sendStatus(200);
|
||||
}
|
||||
res.status(400).json({
|
||||
error: "Server nots Run"
|
||||
});
|
||||
});
|
||||
|
||||
// Op player
|
||||
@ -345,16 +343,14 @@ app.get("/players/op", CheckToken, CheckToken, (req, res) => {
|
||||
const { Player = "Sirherobrine" } = req.query;
|
||||
|
||||
// Op player
|
||||
const RunnerServer = require("./BdsManegerServer").BdsRun;
|
||||
try {
|
||||
RunnerServer.op(Player);
|
||||
res.json({ success: true });
|
||||
} catch (error) {
|
||||
res.status(400).json({
|
||||
error: "Server nots Run",
|
||||
text: `${error}`
|
||||
});
|
||||
const Sessions = require("./BdsManegerServer").GetSessionsArray();
|
||||
if (Sessions.length > 0) {
|
||||
Sessions.forEach(RunnerServer => RunnerServer.op(Player));
|
||||
return res.sendStatus(200);
|
||||
}
|
||||
res.status(400).json({
|
||||
error: "Server nots Run"
|
||||
});
|
||||
});
|
||||
|
||||
// Deop player
|
||||
@ -362,16 +358,14 @@ app.get("/players/deop", (req, res) => {
|
||||
const { Player = "Sirherobrine" } = req.query;
|
||||
|
||||
// Deop player
|
||||
const RunnerServer = require("./BdsManegerServer").BdsRun;
|
||||
try {
|
||||
RunnerServer.deop(Player);
|
||||
res.json({ success: true });
|
||||
} catch (error) {
|
||||
res.status(400).json({
|
||||
error: "Server nots Run",
|
||||
text: `${error}`
|
||||
});
|
||||
const Sessions = require("./BdsManegerServer").GetSessionsArray();
|
||||
if (Sessions.length > 0) {
|
||||
Sessions.forEach(RunnerServer => RunnerServer.deop(Player));
|
||||
return res.sendStatus(200);
|
||||
}
|
||||
res.status(400).json({
|
||||
error: "Server nots Run"
|
||||
});
|
||||
});
|
||||
|
||||
// Say to Server
|
||||
@ -379,16 +373,14 @@ app.get("/players/say", CheckToken, (req, res) => {
|
||||
const { Text = "Hello Server" } = req.query;
|
||||
|
||||
// Say to Server
|
||||
const RunnerServer = require("./BdsManegerServer").BdsRun;
|
||||
try {
|
||||
RunnerServer.say(Text);
|
||||
res.json({ success: true });
|
||||
} catch (error) {
|
||||
res.status(400).json({
|
||||
error: "Server nots Run",
|
||||
text: `${error}`
|
||||
});
|
||||
const Sessions = require("./BdsManegerServer").GetSessionsArray();
|
||||
if (Sessions.length > 0) {
|
||||
Sessions.forEach(RunnerServer => RunnerServer.say(Text));
|
||||
return res.sendStatus(200);
|
||||
}
|
||||
res.status(400).json({
|
||||
error: "Server nots Run"
|
||||
});
|
||||
});
|
||||
|
||||
// Tp player
|
||||
@ -396,20 +388,14 @@ app.get("/players/tp", (req, res) => {
|
||||
const { Player = "Sirherobrine", X = 0, Y = 0, Z = 0 } = req.query;
|
||||
|
||||
// Tp player
|
||||
const RunnerServer = require("./BdsManegerServer").BdsRun;
|
||||
try {
|
||||
RunnerServer.tp(Player, {
|
||||
x: X,
|
||||
y: Y,
|
||||
z: Z
|
||||
});
|
||||
res.json({ success: true });
|
||||
} catch (error) {
|
||||
res.status(400).json({
|
||||
error: "Server nots Run",
|
||||
text: `${error}`
|
||||
});
|
||||
const Sessions = require("./BdsManegerServer").GetSessionsArray();
|
||||
if (Sessions.length > 0) {
|
||||
Sessions.forEach(RunnerServer => RunnerServer.tp(Player, X, Y, Z));
|
||||
return res.sendStatus(200);
|
||||
}
|
||||
res.status(400).json({
|
||||
error: "Server nots Run"
|
||||
});
|
||||
});
|
||||
|
||||
// Export API Routes
|
||||
|
Reference in New Issue
Block a user