Docker image fix #158
							
								
								
									
										64
									
								
								.Build/Docker/Configure.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								.Build/Docker/Configure.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,64 @@ | ||||
| #!/usr/bin/env bash | ||||
| set -ex | ||||
| # Update Debian Repository | ||||
| apt update | ||||
|  | ||||
| # Install Necessary Packages | ||||
| apt install -y curl wget git zsh sudo unzip zip jq python python3 screen | ||||
|  | ||||
| # Install nodejs from github release | ||||
| get_current_node_version=$(curl -sL https://api.github.com/repos/nodejs/node/releases/latest | grep tag_name | cut -d '"' -f 4) | ||||
| case $(uname -m) in | ||||
|     x86_64 ) wget -q "https://nodejs.org/download/release/$get_current_node_version/node-$get_current_node_version-linux-x64.tar.xz" -O /tmp/node.tar.xz;; | ||||
|     aarch64 ) wget -q "https://nodejs.org/download/release/$get_current_node_version/node-$get_current_node_version-linux-arm64.tar.xz" -O /tmp/node.tar.xz;; | ||||
|     armv7l ) wget -q "https://nodejs.org/download/release/$get_current_node_version/node-$get_current_node_version-linux-armv7l.tar.xz" -O /tmp/node.tar.xz;; | ||||
|     ppc64el ) wget -q "https://nodejs.org/download/release/$get_current_node_version/node-$get_current_node_version-linux-ppc64le.tar.xz" -O /tmp/node.tar.xz;; | ||||
|     s390x ) wget -q "https://nodejs.org/download/release/$get_current_node_version/node-$get_current_node_version-linux-s390x.tar.xz" -O /tmp/node.tar.xz;; | ||||
|     *) echo "Unsupported architecture"; exit 1;; | ||||
| esac | ||||
|  | ||||
| # Extract nodejs | ||||
| mkdir /tmp/Node | ||||
| tar -xJf /tmp/node.tar.xz -C /tmp/Node | ||||
| rm -rf /tmp/node.tar.xz | ||||
| cp -rfv /tmp/Node/*/* /usr | ||||
|  | ||||
| # Update npm | ||||
| npm -g install npm@$(curl -sL https://api.github.com/repos/npm/cli/releases/latest | grep tag_name | cut -d '"' -f 4) | ||||
|  | ||||
| # Install Build Dependencies and others Packages | ||||
| apt install -y ca-certificates make build-essential procps lsb-release xdg-utils g++ libnss3 libatk-bridge2.0-0 gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxrandr2 libxrender1 libxss1 libxtst6 fonts-liberation libnss3 libgbm-dev | ||||
|  | ||||
| # Install Dependencies to diferent architectures | ||||
| if ! [ "$(uname -m)" == "x86_64" ];then | ||||
|     mkdir -p /lib64 | ||||
|     apt install -y qemu-user-static | ||||
|     wget -q "https://github.com/The-Bds-Maneger/external_files/raw/main/linux_libries.zip" -O /tmp/libries.zip | ||||
|     unzip -o /tmp/libries.zip -d / | ||||
|     rm -rfv /tmp/libries.zip | ||||
| fi | ||||
|  | ||||
| # Install openjdk | ||||
| case "$(uname -m)" in | ||||
|     x86_64 | aarch64 ) apt install -y openjdk-17*;; | ||||
|     * ) apt install -y openjdk-11*;; | ||||
| esac | ||||
|  | ||||
| # Setup non root user | ||||
| useradd -m -p "$(perl -e 'print crypt($ARGV[0], "password")' "LucaA1113ba21")" "thebds" | ||||
| addgroup thebds sudo | ||||
| addgroup thebds root | ||||
| usermod --shell /bin/bash thebds; | ||||
| echo "thebds   ALL=(ALL:ALL) NOPASSWD: ALL" >> /etc/sudoers | ||||
|  | ||||
| # Remove Unnecessary Packages | ||||
| apt autoremove -y | ||||
|  | ||||
| # Clean up apt cache | ||||
| apt clean -y | ||||
|  | ||||
| # Remove Unnecessary Files | ||||
| rm -rf /var/lib/apt/lists/* /root/.gnupg /tmp/* | ||||
|  | ||||
| # Sucessfully installed | ||||
| exit 0 | ||||
| @@ -1,31 +1,13 @@ | ||||
| const fetchSync = require("@the-bds-maneger/fetchsync") | ||||
| const { writeFileSync } = require("fs"); | ||||
| const { exit } = require("process"); | ||||
| const { resolve } = require("path"); | ||||
| const { exec, execSync } = require("child_process"); | ||||
| const JSon_release = fetchSync("https://api.github.com/repos/Sirherobrine23/MSQ-files/releases").json() | ||||
|  | ||||
| writeFileSync("./Docker.js", JSON.stringify(JSon_release, null, 4)) | ||||
| const DockerLatestBin = []; | ||||
| for (let _Check of JSon_release){ | ||||
|     if (DockerLatestBin.length >= 1) break; | ||||
|     for (let _file of _Check.assets) { | ||||
|         if (`DockerRunBuild_${process.platform}_${process.arch}` === _file.name) { | ||||
|             DockerLatestBin.push(_Check); | ||||
|             break | ||||
|         } | ||||
|     } | ||||
| } | ||||
| if (!(DockerLatestBin.length >= 1)) exit(1); | ||||
| const bin = fetchSync(`https://github.com/Sirherobrine23/MSQ-files/releases/download/${DockerLatestBin[0].tag_name}/DockerRunBuild_${process.platform}_${process.arch}`, true); | ||||
| const binPath = resolve(__dirname, "../Docker.exe") | ||||
| bin.save(binPath) | ||||
| if (process.platform !== "win32") execSync(`chmod 777 "${binPath}"`) | ||||
| const exe = exec(binPath) | ||||
| function Log(data = ""){ | ||||
|     data = data.split("\r").join("\n").split("\n").filter(_D => {return (_D !== "")}) | ||||
|     for (let _log of data) console.log(_log); | ||||
| } | ||||
| exe.stdout.on("data", d => Log(d)) | ||||
| exe.stderr.on("data", d => Log(d)) | ||||
| exe.on("exit", c => exit(c)) | ||||
| #!/usr/bin/env node | ||||
| const path = require("path"); | ||||
| process.env.Docker_Root = path.resolve(__dirname, "../"); | ||||
| const Docker = require("docker-run_build"); | ||||
| Docker.Build().then(() => { | ||||
|     Docker.Run().catch((e) => { | ||||
|         console.log(e); | ||||
|         process.exit(2); | ||||
|     }); | ||||
| }).catch(e => { | ||||
|     console.log(e); | ||||
|     process.exit(1); | ||||
| }); | ||||
							
								
								
									
										9
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
								
							| @@ -10,13 +10,8 @@ | ||||
|         { | ||||
|             "type": "node", | ||||
|             "request": "launch", | ||||
|             "name": "Build Dev Docker Image", | ||||
|             "runtimeExecutable": "npm", | ||||
|             "runtimeArgs": [ | ||||
|                 "run", | ||||
|                 "Docker" | ||||
|             ], | ||||
|             "port": 9229 | ||||
|             "name": "Docker Build and Run", | ||||
|             "program": "${workspaceFolder}/.Build/DockerImage.js", | ||||
|         } | ||||
|     ] | ||||
| } | ||||
| @@ -19,7 +19,8 @@ | ||||
|             "deop": "op \"{{Player}}\"", | ||||
|             "ban": "tp \"{{Player}}\" ~ ~99999 ~", | ||||
|             "kick": "kick \"{{Player}}\" \"{{Text}}\"", | ||||
|             "tp": "tp \"{{Player}}\" {{X}} {{Y}} {{X}}" | ||||
|             "tp": "tp \"{{Player}}\" {{X}} {{Y}} {{X}}", | ||||
|             "say": "say {{Text}}" | ||||
|         }, | ||||
|         "java": { | ||||
|             "stop": "stop", | ||||
| @@ -27,7 +28,8 @@ | ||||
|             "deop": "op {{Player}}", | ||||
|             "ban": "ban {{Player}}", | ||||
|             "kick": "kick {{Player}} {{Text}}", | ||||
|             "tp": "tp {{Player}} {{X}} {{Y}} {{X}}" | ||||
|             "tp": "tp {{Player}} {{X}} {{Y}} {{X}}", | ||||
|             "say": "say {{Text}}" | ||||
|         }, | ||||
|         "pocketmine": { | ||||
|             "stop": "stop", | ||||
| @@ -35,7 +37,8 @@ | ||||
|             "deop": "op {{Player}}", | ||||
|             "ban": "ban {{Player}}", | ||||
|             "kick": "kick {{Player}}", | ||||
|             "tp": "tp \"{{Player}}\" {{X}} {{Y}} {{X}}" | ||||
|             "tp": "tp \"{{Player}}\" {{X}} {{Y}} {{X}}", | ||||
|             "say": "say {{Text}}" | ||||
|         } | ||||
|     }, | ||||
|     "contributors": [ | ||||
|   | ||||
| @@ -1,14 +1,13 @@ | ||||
| name: BdsCore | ||||
| file: Dockerfile | ||||
| tag: bdsmaneger/maneger:latestdebug | ||||
| tag: bdsmaneger/core:dev | ||||
| target: bdscore | ||||
| buildx: true | ||||
| buildx: | ||||
|   enable: false | ||||
|   platform: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64 | ||||
|  | ||||
| # Docker Run envs | ||||
| env: | ||||
|   - name: TELEGRAM_TOKEN | ||||
|     value: null | ||||
|    | ||||
|   - name: DESCRIPTION | ||||
|     value: Docker Test | ||||
|    | ||||
| @@ -25,7 +24,7 @@ env: | ||||
|     value: false | ||||
|    | ||||
|   - name: PLAYERS | ||||
|     value: 8 | ||||
|     value: 5 | ||||
|    | ||||
|   - name: BDS_VERSION | ||||
|     value: latest | ||||
| @@ -34,24 +33,19 @@ env: | ||||
|     value: bedrock | ||||
|  | ||||
| # Docker Run Mount | ||||
| mount: | ||||
|   - path: /home/bds/bds_core/ | ||||
|     from: ${HOME}/bds_core/ | ||||
| mount: [] | ||||
|  | ||||
| # Docker Run Ports | ||||
| ports: | ||||
|   - port: 19132 | ||||
|     external: 19132 | ||||
|   - in: 19132 | ||||
|     out: 19132 | ||||
|     protocoll: udp | ||||
|  | ||||
|   - port: 80 | ||||
|     external: 8880 | ||||
|   - in: 1932 | ||||
|     out: 1932 | ||||
|     protocoll: tcp | ||||
|  | ||||
| # More options | ||||
| options: | ||||
|   build: [] | ||||
|     # - "--platforms=linux/amd64" | ||||
|   run: | ||||
|     - "--net=host" | ||||
|   run: [] | ||||
|   runArgv: [] | ||||
|   | ||||
							
								
								
									
										71
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										71
									
								
								Dockerfile
									
									
									
									
									
								
							| @@ -1,37 +1,50 @@ | ||||
| # bdsmaneger/node_image | ||||
| # Base | ||||
| FROM debian:latest AS bdsbase | ||||
| # Setup Bds Manerger Project Docker Base | ||||
| FROM debian:testing AS bdsbase | ||||
| USER root | ||||
| ENV DEBIAN_FRONTEND=noninteractive DOCKER_IMAGE="true" | ||||
| RUN apt update && \ | ||||
| apt -y install curl wget git zsh sudo unzip zip jq python python3 ca-certificates make build-essential screen procps lsb-release xdg-utils g++ openjdk-11-jdk openjdk-11-jre \ | ||||
|     libnss3 libatk-bridge2.0-0 gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 \ | ||||
|     libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 \ | ||||
|     libxdamage1 libxext6 libxfixes3 libxrandr2 libxrender1 libxss1 libxtst6 fonts-liberation libappindicator1 libnss3 libgbm-dev && \ | ||||
| apt autoremove -y && \ | ||||
| apt clean -y && \ | ||||
| rm -rf /var/lib/apt/lists/* /root/.gnupg /tmp/library-scripts /tmp/* && \ | ||||
| case $(uname -m) in "x86_64") echo "Do not need dependency on the x86_64";; *) apt update; apt install -y qemu-user-static ;wget -q https://raw.githubusercontent.com/The-Bds-Maneger/external_files/main/linux_libries.zip -O /tmp/libries.zip ;unzip /tmp/libries.zip -d / ;rm -rfv /tmp/libries.zip ;mkdir -p /lib64 ;rm -rf /var/cache/apt/archives/* /var/lib/apt/lists/* /tmp/* ;;esac && \ | ||||
| wget -qO- https://raw.githubusercontent.com/Sirherobrine23/MSQ-files/main/DockerBuild/Build/bin/NodeInstall.sh | bash -; \ | ||||
| export username="thebds" && export password="123aa3456s7" && \ | ||||
| pass=$(perl -e 'print crypt($ARGV[0], "password")' $password); useradd -m -p "$pass" "$username"; addgroup ${username} sudo; addgroup ${username} root; \ | ||||
| usermod --shell /bin/bash --home /home/bds ${username}; echo "${username}   ALL=(ALL:ALL) NOPASSWD: ALL" >> /etc/sudoers | ||||
| ENV DEBIAN_FRONTEND="noninteractive" DOCKER_IMAGE="true" | ||||
|  | ||||
| # bdsmaneger/core | ||||
| # Bds Maneger Core | ||||
| # Copy Docker Files | ||||
| COPY .Build/Docker/* /tmp | ||||
|  | ||||
| # Configure BASE | ||||
| RUN bash /tmp/Configure.sh | ||||
|  | ||||
| # Setup bdsmaneger/core | ||||
| FROM bdsbase AS bdscore | ||||
| RUN apt update && apt install -y nginx && rm -rf /var/cache/apt/archives/* /var/lib/apt/lists/* /tmp/* /etc/nginx/sites-*/default && mkdir -p /home/bds/ | ||||
|  | ||||
| COPY ./ /opt/bds_core/ | ||||
| WORKDIR /opt/bds_core/ | ||||
| RUN chmod -v 7777 /opt/bds_core && chown thebds:thebds -v /opt/bds_core; chmod a+x bin/* && npm install --force && chmod -Rv 7777 /home && chown thebds:thebds -Rv /home && chmod a+x bin/*; mkdir -vp /home/bds/bds_core | ||||
| RUN mkdir -vp /home/thebds/bds_core && chmod -Rv 7777 /home; chown thebds:thebds -Rv /home | ||||
|  | ||||
| # Non Root User | ||||
|  | ||||
| # Create Volume to Storage Server And Config | ||||
| VOLUME [ "/home/thebds/bds_core" ] | ||||
|  | ||||
| # Copy Bds Maneger Core | ||||
| WORKDIR /home/backend_core_scripts/ | ||||
|  | ||||
| # Install Core dependencies | ||||
| COPY --chown=thebds:thebds package*.json ./ | ||||
| RUN npm install | ||||
|  | ||||
| # Copy BdsManger Core | ||||
| COPY --chown=thebds:thebds ./ ./ | ||||
| RUN chmod a+x -v bin/* | ||||
|  | ||||
| # Set Non Root User | ||||
| USER thebds | ||||
| VOLUME [ "/home/bds/bds_core" ] | ||||
|  | ||||
| ENV TELEGRAM_TOKEN="null" DESCRIPTION="running Minecraft Bedrock Server on the docker by Bds Manager" WORLD_NAME="Bds Maneger Docker" GAMEMODE="survival" DIFFICULTY="normal" XBOX_ACCOUNT="false" PLAYERS="13" SERVER="bedrock" ENABLE_COMMANDS="false" BDS_DOCKER_IMAGE="true" | ||||
| # Set default ENVs to Bds Core | ||||
| ENV PLAYERS="5" \ | ||||
|     WORLD_NAME="The Ultimate Server" \ | ||||
|     DESCRIPTION="running Minecraft Server on Bds Maneger by Bds Manager Project" \ | ||||
|     GAMEMODE="survival" \ | ||||
|     DIFFICULTY="normal" \ | ||||
|     ENABLE_COMMANDS="false" \ | ||||
|     ACCOUNT="false" \ | ||||
|     SERVER="bedrock" \ | ||||
|     UPDATE_SERVER="true" | ||||
|  | ||||
| # Bds Maneger Core required ports | ||||
| EXPOSE 19132/udp 19133/udp 1932/tcp | ||||
| # Entrypint | ||||
| WORKDIR /opt/bds_core/ | ||||
| ENTRYPOINT [ "node", "./bin/bds_maneger.js" ,"--DOCKER_IMAGE" ,"-s" ] | ||||
|  | ||||
| # Set Entrypint | ||||
| ENTRYPOINT [ "node", "./bin/Docker.js" ] | ||||
|   | ||||
| @@ -25,6 +25,7 @@ Windows: | ||||
|  | ||||
| ```cmd | ||||
| $ docker run --rm -d --name BdsManegerCore -v BdsCore:/home/bds/bds_core ^ | ||||
|     --restart=always ^ | ||||
|     -p 19132:19132/udp -p 19133:19133/udp -p 1932:1932/tcp ^ | ||||
|     -e TELEGRAM_TOKEN="null" ^ | ||||
|     -e DESCRIPTION="running Minecraft Bedrock Server on the docker by Bds Manager" ^ | ||||
| @@ -42,6 +43,7 @@ Linux/MacOS: | ||||
|  | ||||
| ```bash | ||||
| $ docker run --rm -d --name BdsManegerCore -v BdsCore/:/home/bds/bds_core \ | ||||
|     --restart=always \ | ||||
|     -p 19132:19132/udp -p 19133:19133/udp -p 1932:1932/tcp \ | ||||
|     -e TELEGRAM_TOKEN="null" \ | ||||
|     -e DESCRIPTION="running Minecraft Bedrock Server on the docker by Bds Manager" \ | ||||
|   | ||||
| @@ -1,19 +1,18 @@ | ||||
| #!/usr/bin/env node | ||||
| const readline = require("readline"); | ||||
|  | ||||
| if (process.platform === "win32") process.title = "Bds Maneger CLI"; else process.title = "Bds-Manger-CLI"; | ||||
| process.env.IS_BDS_CLI = process.env.IS_BIN_BDS = true; | ||||
|  | ||||
| // Bds Maneger ArgV | ||||
| const argv = require("minimist")(process.argv.slice(2)); | ||||
| if (Object.getOwnPropertyNames(argv).length <= 1) argv.help = true | ||||
|  | ||||
| const bds = require("../index"); | ||||
| const { valid_platform } = require("../lib/BdsSystemInfo"); | ||||
| const { bds_dir, GetServerVersion, GetPlatform, UpdatePlatform, GetServerPaths, GetPaths } = require("../lib/BdsSettings"); | ||||
| const commandExits = require("../lib/commandExist"); | ||||
| const download = require("../src/BdsServersDownload"); | ||||
|  | ||||
| // Bds Maneger ArgV | ||||
| const argv = require("minimist")(process.argv.slice(2)); | ||||
| if (Object.getOwnPropertyNames(argv).length <= 1) argv.help = true | ||||
|  | ||||
| // Options | ||||
| const | ||||
|     server = (argv.p || argv.platform), | ||||
| @@ -22,8 +21,7 @@ const | ||||
|     bds_version = (argv.d || argv.server_download), | ||||
|     start = (argv.s || argv.server_version), | ||||
|     help = (argv.h || argv.help), | ||||
|     kill = (argv.k || argv.kill), | ||||
|     docker_runner = (argv.DOCKER_IMAGE); | ||||
|     kill = (argv.k || argv.kill); | ||||
|  | ||||
| // -------------------------- | ||||
| const Versions = GetServerVersion(); | ||||
| @@ -152,34 +150,6 @@ if (SystemCheck) { | ||||
|     process.exit(0) | ||||
| } | ||||
|  | ||||
| // Docker image | ||||
| if (docker_runner) { | ||||
|     console.log("Bds Maneger CLI, Docker image"); | ||||
|     process.env.BDS_DOCKER_IMAGE = true | ||||
|     const { SERVER, WORLD_NAME, DESCRIPTION, GAMEMODE, DIFFICULTY, PLAYERS, ENABLE_COMMANDS, XBOX_ACCOUNT, TELEGRAM_TOKEN, SEED } = process.env | ||||
|      | ||||
|     // Telegram token save | ||||
|     if (TELEGRAM_TOKEN) bds.telegram_token_save(TELEGRAM_TOKEN); | ||||
|      | ||||
|     // Change platform | ||||
|     bds.change_platform(SERVER) | ||||
|      | ||||
|     // Save New config | ||||
|     bds.set_config({ | ||||
|         world: WORLD_NAME, | ||||
|         description: DESCRIPTION, | ||||
|         gamemode: GAMEMODE, | ||||
|         difficulty: DIFFICULTY, | ||||
|         players: parseInt(PLAYERS), | ||||
|         commands: (ENABLE_COMMANDS === "true"), | ||||
|         account: JSON.parse(XBOX_ACCOUNT), | ||||
|         whitelist: false, | ||||
|         port: 19132, | ||||
|         portv6: 19133, | ||||
|         seed: (parseInt(SEED) || "") | ||||
|     }) | ||||
| } | ||||
|  | ||||
| // Download server | ||||
| if (bds_version){ | ||||
|     try { | ||||
| @@ -189,6 +159,7 @@ if (bds_version){ | ||||
|             const Version = Object.getOwnPropertyNames(LoadVersion) | ||||
|             // List Version | ||||
|             for (let version in Version) console.log(`${version}: ${GetPlatform()} version ${Version[version]}`); // deepscan-disable-line FORIN_ARRAY | ||||
|             // deepcode ignore MissingClose: <please specify a reason of ignoring this> | ||||
|             const DownloadOptions = readline.createInterface({input: process.stdin,output: process.stdout}); | ||||
|             console.log("\nSelect Option"); | ||||
|             DownloadOptions.on("line", (input) => { | ||||
|   | ||||
							
								
								
									
										18
									
								
								index.js
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								index.js
									
									
									
									
									
								
							| @@ -173,17 +173,17 @@ module.exports.download = download | ||||
|  * use this command to modify server settings | ||||
|  *  | ||||
|  * @example set_config({ | ||||
|         name: "Bedrock our Java", | ||||
|         description: "BDS Maneger", | ||||
|         gamemode: "survival", | ||||
|         world: "Bds Maneger", | ||||
|         description: "The Bds Maneger", | ||||
|         gamemode: "creative", | ||||
|         difficulty: "normal", | ||||
|         player_permission: "member", | ||||
|         xbox: true, | ||||
|         white_list: false, | ||||
|         cheats: false, | ||||
|         players: 100, | ||||
|         players: 10, | ||||
|         commands: true, | ||||
|         account: true, | ||||
|         whitelist: true, | ||||
|         port: 19132, | ||||
|         port6: 19133 | ||||
|         portv6: 19133, | ||||
|         seed: "" | ||||
|     }); | ||||
|  */ | ||||
| module.exports.set_config = config | ||||
|   | ||||
							
								
								
									
										267
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										267
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @@ -36,7 +36,7 @@ | ||||
|         "bds_telegram": "bin/telegram_bot.js" | ||||
|       }, | ||||
|       "devDependencies": { | ||||
|         "docker-run_build": "github:Sirherobrine23/Docker-Run_Build", | ||||
|         "docker-run_build": "github:Sirherobrine23/Docker-Run_Build#main", | ||||
|         "eslint": "^7.19.0", | ||||
|         "husky": "^7.0.0", | ||||
|         "nexe": "*", | ||||
| @@ -101,9 +101,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@azure/core-lro": { | ||||
|       "version": "2.1.0", | ||||
|       "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.1.0.tgz", | ||||
|       "integrity": "sha512-7T9+HxZArl1wIUM/jacaeeMC9lUo14M62y3Htkh9qkTjI5glc7NlY2XOQ67n2jN1HONd8FvqCXE9CS4ZRxeLcg==", | ||||
|       "version": "2.2.0", | ||||
|       "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.0.tgz", | ||||
|       "integrity": "sha512-TJo95eNT1dwYOPCb0m1C2zyxVlHuRRkKGeg9TKu8XMF2qh4v6c1weD63r9RVIrLdHdnSqS0n6PTXBpWoB8NqMw==", | ||||
|       "dependencies": { | ||||
|         "@azure/abort-controller": "^1.0.0", | ||||
|         "@azure/core-tracing": "1.0.0-preview.13", | ||||
| @@ -176,9 +176,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@babel/helper-validator-identifier": { | ||||
|       "version": "7.14.5", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", | ||||
|       "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", | ||||
|       "version": "7.14.9", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", | ||||
|       "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", | ||||
|       "dev": true, | ||||
|       "engines": { | ||||
|         "node": ">=6.9.0" | ||||
| @@ -507,9 +507,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/@types/node": { | ||||
|       "version": "16.3.3", | ||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-16.3.3.tgz", | ||||
|       "integrity": "sha512-8h7k1YgQKxKXWckzFCMfsIwn0Y61UK6tlD6y2lOb3hTOIMlK3t9/QwHOhc81TwU+RMf0As5fj7NPjroERCnejQ==" | ||||
|       "version": "16.6.1", | ||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-16.6.1.tgz", | ||||
|       "integrity": "sha512-Sr7BhXEAer9xyGuCN3Ek9eg9xPviCF2gfu9kTfuU2HkTVAMYSDeX40fvpmo72n5nansg3nsBjuQBrsS28r+NUw==" | ||||
|     }, | ||||
|     "node_modules/@types/node-fetch": { | ||||
|       "version": "2.5.12", | ||||
| @@ -1175,9 +1175,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/chalk": { | ||||
|       "version": "4.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", | ||||
|       "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", | ||||
|       "version": "4.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", | ||||
|       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "ansi-styles": "^4.1.0", | ||||
| @@ -1369,18 +1369,6 @@ | ||||
|         "semver": "bin/semver.js" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/configstore/node_modules/write-file-atomic": { | ||||
|       "version": "3.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", | ||||
|       "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "imurmurhash": "^0.1.4", | ||||
|         "is-typedarray": "^1.0.0", | ||||
|         "signal-exit": "^3.0.2", | ||||
|         "typedarray-to-buffer": "^3.1.5" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/content-disposition": { | ||||
|       "version": "0.5.3", | ||||
|       "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", | ||||
| @@ -1796,7 +1784,7 @@ | ||||
|     }, | ||||
|     "node_modules/docker-run_build": { | ||||
|       "version": "1.0.0", | ||||
|       "resolved": "git+ssh://git@github.com/Sirherobrine23/Docker-Run_Build.git#dca7037ac2175352485e61e7e565ec1d81caa062", | ||||
|       "resolved": "git+ssh://git@github.com/Sirherobrine23/Docker-Run_Build.git#a55a4ef39bb6d7e158d0f532b2dadb400ea81f4c", | ||||
|       "dev": true, | ||||
|       "license": "GPL-3.0-or-later", | ||||
|       "dependencies": { | ||||
| @@ -2654,9 +2642,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/flatted": { | ||||
|       "version": "3.2.1", | ||||
|       "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz", | ||||
|       "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==", | ||||
|       "version": "3.2.2", | ||||
|       "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", | ||||
|       "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/form-data": { | ||||
| @@ -2867,9 +2855,9 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/globals": { | ||||
|       "version": "13.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", | ||||
|       "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", | ||||
|       "version": "13.11.0", | ||||
|       "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", | ||||
|       "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "type-fest": "^0.20.2" | ||||
| @@ -2911,9 +2899,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/google-auth-library": { | ||||
|       "version": "7.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.3.0.tgz", | ||||
|       "integrity": "sha512-MPeeMlnsYnoiiVFMwX3hgaS684aiXrSqKoDP+xL4Ejg4Z0qLvIeg4XsaChemyFI8ZUO7ApwDAzNtgmhWSDNh5w==", | ||||
|       "version": "7.6.1", | ||||
|       "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.6.1.tgz", | ||||
|       "integrity": "sha512-aP/WTx+rE3wQ3zPgiCZsJ1EIb2v7P+QwxVwAqrKjcPz4SK57kyAfcX75VoAgjtwZzl70upcNlvFn8FSmC4nMBQ==", | ||||
|       "dependencies": { | ||||
|         "arrify": "^2.0.0", | ||||
|         "base64-js": "^1.3.0", | ||||
| @@ -2930,9 +2918,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/google-p12-pem": { | ||||
|       "version": "3.1.0", | ||||
|       "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.0.tgz", | ||||
|       "integrity": "sha512-JUtEHXL4DY/N+xhlm7TC3qL797RPAtk0ZGXNs3/gWyiDHYoA/8Rjes0pztkda+sZv4ej1EoO2KhWgW5V9KTrSQ==", | ||||
|       "version": "3.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.2.tgz", | ||||
|       "integrity": "sha512-tjf3IQIt7tWCDsa0ofDQ1qqSCNzahXDxdAGJDbruWqu3eCg5CKLYKN+hi0s6lfvzYZ1GDVr+oDF9OOWlDSdf0A==", | ||||
|       "dependencies": { | ||||
|         "node-forge": "^0.10.0" | ||||
|       }, | ||||
| @@ -2956,9 +2944,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/googleapis-common": { | ||||
|       "version": "5.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.0.3.tgz", | ||||
|       "integrity": "sha512-8khlXblLyT9UpB+NTZzrWfKQUW6U7gO6WnfJp51WrLgpzP7zkO+OshwtdArq8z2afj37jdrhbIT8eAxZLdwvwA==", | ||||
|       "version": "5.0.4", | ||||
|       "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.0.4.tgz", | ||||
|       "integrity": "sha512-clr6NSAoIeTrQ/ESl/OmH4uuvPUq4XgiyPAnTIrItOWyM/YKYsXgzpPNkmP6D6LNd/UoTnymcyLNuMPh0ibzXg==", | ||||
|       "dependencies": { | ||||
|         "extend": "^3.0.2", | ||||
|         "gaxios": "^4.0.0", | ||||
| @@ -2997,15 +2985,15 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/graceful-fs": { | ||||
|       "version": "4.2.6", | ||||
|       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", | ||||
|       "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", | ||||
|       "version": "4.2.8", | ||||
|       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", | ||||
|       "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/gtoken": { | ||||
|       "version": "5.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.0.tgz", | ||||
|       "integrity": "sha512-mCcISYiaRZrJpfqOs0QWa6lfEM/C1V9ASkzFmuz43XBb5s1Vynh+CZy1ECeeJXVGx2PRByjYzb4Y4/zr1byr0w==", | ||||
|       "version": "5.3.1", | ||||
|       "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.1.tgz", | ||||
|       "integrity": "sha512-yqOREjzLHcbzz1UrQoxhBtpk8KjrVhuqPE7od1K2uhyxG2BHjKZetlbLw/SPZak/QqTIQW+addS+EcjqQsZbwQ==", | ||||
|       "dependencies": { | ||||
|         "gaxios": "^4.0.0", | ||||
|         "google-p12-pem": "^3.0.3", | ||||
| @@ -3430,11 +3418,14 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/is-stream": { | ||||
|       "version": "2.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", | ||||
|       "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", | ||||
|       "version": "2.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", | ||||
|       "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", | ||||
|       "engines": { | ||||
|         "node": ">=8" | ||||
|       }, | ||||
|       "funding": { | ||||
|         "url": "https://github.com/sponsors/sindresorhus" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/is-typedarray": { | ||||
| @@ -3927,19 +3918,19 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/mime-db": { | ||||
|       "version": "1.48.0", | ||||
|       "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", | ||||
|       "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==", | ||||
|       "version": "1.49.0", | ||||
|       "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", | ||||
|       "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==", | ||||
|       "engines": { | ||||
|         "node": ">= 0.6" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/mime-types": { | ||||
|       "version": "2.1.31", | ||||
|       "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", | ||||
|       "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", | ||||
|       "version": "2.1.32", | ||||
|       "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", | ||||
|       "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", | ||||
|       "dependencies": { | ||||
|         "mime-db": "1.48.0" | ||||
|         "mime-db": "1.49.0" | ||||
|       }, | ||||
|       "engines": { | ||||
|         "node": ">= 0.6" | ||||
| @@ -5943,9 +5934,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/resolve-alpn": { | ||||
|       "version": "1.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.1.2.tgz", | ||||
|       "integrity": "sha512-8OyfzhAtA32LVUsJSke3auIyINcwdh5l3cvYKdKO0nvsYSKuiLfTM5i78PJswFPT8y6cPW+L1v6/hE95chcpDA==", | ||||
|       "version": "1.2.0", | ||||
|       "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.0.tgz", | ||||
|       "integrity": "sha512-e4FNQs+9cINYMO5NMFc6kOUCdohjqFPSgMuwuZAOUWqrfWsen+Yjy5qZFkV5K7VO7tFSLKcUL97olkED7sCBHA==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/resolve-dependencies": { | ||||
| @@ -6662,9 +6653,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/tslib": { | ||||
|       "version": "2.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", | ||||
|       "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" | ||||
|       "version": "2.3.1", | ||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", | ||||
|       "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" | ||||
|     }, | ||||
|     "node_modules/tunnel": { | ||||
|       "version": "0.0.6", | ||||
| @@ -6737,9 +6728,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/typegram": { | ||||
|       "version": "3.4.2", | ||||
|       "resolved": "https://registry.npmjs.org/typegram/-/typegram-3.4.2.tgz", | ||||
|       "integrity": "sha512-Z+FaPrD+oyzvchLZHmfyz55MuPhJ51tYm6i+gbeZ0W8Yr4LLWQfI0mBlR2v08PzjHuRx26bmZBEM30jSrGbfbg==" | ||||
|       "version": "3.4.3", | ||||
|       "resolved": "https://registry.npmjs.org/typegram/-/typegram-3.4.3.tgz", | ||||
|       "integrity": "sha512-pH0TQJzCWM2+7y6yiBoQVNt7PO9ZvAu/lQukVx4sm68FIBBZEBWI+2MzuMcdbwrD5mD5NrEMAyml9N6DupUZag==" | ||||
|     }, | ||||
|     "node_modules/unbzip2-stream": { | ||||
|       "version": "1.4.3", | ||||
| @@ -6968,6 +6959,18 @@ | ||||
|       "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "node_modules/write-file-atomic": { | ||||
|       "version": "3.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", | ||||
|       "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", | ||||
|       "dev": true, | ||||
|       "dependencies": { | ||||
|         "imurmurhash": "^0.1.4", | ||||
|         "is-typedarray": "^1.0.0", | ||||
|         "signal-exit": "^3.0.2", | ||||
|         "typedarray-to-buffer": "^3.1.5" | ||||
|       } | ||||
|     }, | ||||
|     "node_modules/xdg-basedir": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", | ||||
| @@ -7068,9 +7071,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "@azure/core-lro": { | ||||
|       "version": "2.1.0", | ||||
|       "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.1.0.tgz", | ||||
|       "integrity": "sha512-7T9+HxZArl1wIUM/jacaeeMC9lUo14M62y3Htkh9qkTjI5glc7NlY2XOQ67n2jN1HONd8FvqCXE9CS4ZRxeLcg==", | ||||
|       "version": "2.2.0", | ||||
|       "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.0.tgz", | ||||
|       "integrity": "sha512-TJo95eNT1dwYOPCb0m1C2zyxVlHuRRkKGeg9TKu8XMF2qh4v6c1weD63r9RVIrLdHdnSqS0n6PTXBpWoB8NqMw==", | ||||
|       "requires": { | ||||
|         "@azure/abort-controller": "^1.0.0", | ||||
|         "@azure/core-tracing": "1.0.0-preview.13", | ||||
| @@ -7128,9 +7131,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "@babel/helper-validator-identifier": { | ||||
|       "version": "7.14.5", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", | ||||
|       "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", | ||||
|       "version": "7.14.9", | ||||
|       "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", | ||||
|       "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "@babel/highlight": { | ||||
| @@ -7394,9 +7397,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "@types/node": { | ||||
|       "version": "16.3.3", | ||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-16.3.3.tgz", | ||||
|       "integrity": "sha512-8h7k1YgQKxKXWckzFCMfsIwn0Y61UK6tlD6y2lOb3hTOIMlK3t9/QwHOhc81TwU+RMf0As5fj7NPjroERCnejQ==" | ||||
|       "version": "16.6.1", | ||||
|       "resolved": "https://registry.npmjs.org/@types/node/-/node-16.6.1.tgz", | ||||
|       "integrity": "sha512-Sr7BhXEAer9xyGuCN3Ek9eg9xPviCF2gfu9kTfuU2HkTVAMYSDeX40fvpmo72n5nansg3nsBjuQBrsS28r+NUw==" | ||||
|     }, | ||||
|     "@types/node-fetch": { | ||||
|       "version": "2.5.12", | ||||
| @@ -7915,9 +7918,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "chalk": { | ||||
|       "version": "4.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", | ||||
|       "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", | ||||
|       "version": "4.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", | ||||
|       "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "ansi-styles": "^4.1.0", | ||||
| @@ -8061,18 +8064,6 @@ | ||||
|           "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", | ||||
|           "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", | ||||
|           "dev": true | ||||
|         }, | ||||
|         "write-file-atomic": { | ||||
|           "version": "3.0.3", | ||||
|           "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", | ||||
|           "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "imurmurhash": "^0.1.4", | ||||
|             "is-typedarray": "^1.0.0", | ||||
|             "signal-exit": "^3.0.2", | ||||
|             "typedarray-to-buffer": "^3.1.5" | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
| @@ -8396,9 +8387,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "docker-run_build": { | ||||
|       "version": "git+ssh://git@github.com/Sirherobrine23/Docker-Run_Build.git#dca7037ac2175352485e61e7e565ec1d81caa062", | ||||
|       "version": "git+ssh://git@github.com/Sirherobrine23/Docker-Run_Build.git#a55a4ef39bb6d7e158d0f532b2dadb400ea81f4c", | ||||
|       "dev": true, | ||||
|       "from": "docker-run_build@github:Sirherobrine23/Docker-Run_Build", | ||||
|       "from": "docker-run_build@github:Sirherobrine23/Docker-Run_Build#main", | ||||
|       "requires": { | ||||
|         "js-yaml": "^4.1.0", | ||||
|         "minimist": "^1.2.5" | ||||
| @@ -9090,9 +9081,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "flatted": { | ||||
|       "version": "3.2.1", | ||||
|       "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.1.tgz", | ||||
|       "integrity": "sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==", | ||||
|       "version": "3.2.2", | ||||
|       "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", | ||||
|       "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "form-data": { | ||||
| @@ -9264,9 +9255,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "globals": { | ||||
|       "version": "13.10.0", | ||||
|       "resolved": "https://registry.npmjs.org/globals/-/globals-13.10.0.tgz", | ||||
|       "integrity": "sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==", | ||||
|       "version": "13.11.0", | ||||
|       "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", | ||||
|       "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "type-fest": "^0.20.2" | ||||
| @@ -9295,9 +9286,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "google-auth-library": { | ||||
|       "version": "7.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.3.0.tgz", | ||||
|       "integrity": "sha512-MPeeMlnsYnoiiVFMwX3hgaS684aiXrSqKoDP+xL4Ejg4Z0qLvIeg4XsaChemyFI8ZUO7ApwDAzNtgmhWSDNh5w==", | ||||
|       "version": "7.6.1", | ||||
|       "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.6.1.tgz", | ||||
|       "integrity": "sha512-aP/WTx+rE3wQ3zPgiCZsJ1EIb2v7P+QwxVwAqrKjcPz4SK57kyAfcX75VoAgjtwZzl70upcNlvFn8FSmC4nMBQ==", | ||||
|       "requires": { | ||||
|         "arrify": "^2.0.0", | ||||
|         "base64-js": "^1.3.0", | ||||
| @@ -9311,9 +9302,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "google-p12-pem": { | ||||
|       "version": "3.1.0", | ||||
|       "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.0.tgz", | ||||
|       "integrity": "sha512-JUtEHXL4DY/N+xhlm7TC3qL797RPAtk0ZGXNs3/gWyiDHYoA/8Rjes0pztkda+sZv4ej1EoO2KhWgW5V9KTrSQ==", | ||||
|       "version": "3.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.2.tgz", | ||||
|       "integrity": "sha512-tjf3IQIt7tWCDsa0ofDQ1qqSCNzahXDxdAGJDbruWqu3eCg5CKLYKN+hi0s6lfvzYZ1GDVr+oDF9OOWlDSdf0A==", | ||||
|       "requires": { | ||||
|         "node-forge": "^0.10.0" | ||||
|       } | ||||
| @@ -9328,9 +9319,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "googleapis-common": { | ||||
|       "version": "5.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.0.3.tgz", | ||||
|       "integrity": "sha512-8khlXblLyT9UpB+NTZzrWfKQUW6U7gO6WnfJp51WrLgpzP7zkO+OshwtdArq8z2afj37jdrhbIT8eAxZLdwvwA==", | ||||
|       "version": "5.0.4", | ||||
|       "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.0.4.tgz", | ||||
|       "integrity": "sha512-clr6NSAoIeTrQ/ESl/OmH4uuvPUq4XgiyPAnTIrItOWyM/YKYsXgzpPNkmP6D6LNd/UoTnymcyLNuMPh0ibzXg==", | ||||
|       "requires": { | ||||
|         "extend": "^3.0.2", | ||||
|         "gaxios": "^4.0.0", | ||||
| @@ -9360,15 +9351,15 @@ | ||||
|       } | ||||
|     }, | ||||
|     "graceful-fs": { | ||||
|       "version": "4.2.6", | ||||
|       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", | ||||
|       "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", | ||||
|       "version": "4.2.8", | ||||
|       "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", | ||||
|       "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "gtoken": { | ||||
|       "version": "5.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.0.tgz", | ||||
|       "integrity": "sha512-mCcISYiaRZrJpfqOs0QWa6lfEM/C1V9ASkzFmuz43XBb5s1Vynh+CZy1ECeeJXVGx2PRByjYzb4Y4/zr1byr0w==", | ||||
|       "version": "5.3.1", | ||||
|       "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.1.tgz", | ||||
|       "integrity": "sha512-yqOREjzLHcbzz1UrQoxhBtpk8KjrVhuqPE7od1K2uhyxG2BHjKZetlbLw/SPZak/QqTIQW+addS+EcjqQsZbwQ==", | ||||
|       "requires": { | ||||
|         "gaxios": "^4.0.0", | ||||
|         "google-p12-pem": "^3.0.3", | ||||
| @@ -9662,9 +9653,9 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "is-stream": { | ||||
|       "version": "2.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", | ||||
|       "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==" | ||||
|       "version": "2.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", | ||||
|       "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==" | ||||
|     }, | ||||
|     "is-typedarray": { | ||||
|       "version": "1.0.0", | ||||
| @@ -10079,16 +10070,16 @@ | ||||
|       "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" | ||||
|     }, | ||||
|     "mime-db": { | ||||
|       "version": "1.48.0", | ||||
|       "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", | ||||
|       "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" | ||||
|       "version": "1.49.0", | ||||
|       "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz", | ||||
|       "integrity": "sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==" | ||||
|     }, | ||||
|     "mime-types": { | ||||
|       "version": "2.1.31", | ||||
|       "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", | ||||
|       "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", | ||||
|       "version": "2.1.32", | ||||
|       "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz", | ||||
|       "integrity": "sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==", | ||||
|       "requires": { | ||||
|         "mime-db": "1.48.0" | ||||
|         "mime-db": "1.49.0" | ||||
|       } | ||||
|     }, | ||||
|     "mimic-fn": { | ||||
| @@ -11784,9 +11775,9 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "resolve-alpn": { | ||||
|       "version": "1.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.1.2.tgz", | ||||
|       "integrity": "sha512-8OyfzhAtA32LVUsJSke3auIyINcwdh5l3cvYKdKO0nvsYSKuiLfTM5i78PJswFPT8y6cPW+L1v6/hE95chcpDA==", | ||||
|       "version": "1.2.0", | ||||
|       "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.0.tgz", | ||||
|       "integrity": "sha512-e4FNQs+9cINYMO5NMFc6kOUCdohjqFPSgMuwuZAOUWqrfWsen+Yjy5qZFkV5K7VO7tFSLKcUL97olkED7sCBHA==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "resolve-dependencies": { | ||||
| @@ -12331,9 +12322,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "tslib": { | ||||
|       "version": "2.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", | ||||
|       "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" | ||||
|       "version": "2.3.1", | ||||
|       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", | ||||
|       "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" | ||||
|     }, | ||||
|     "tunnel": { | ||||
|       "version": "0.0.6", | ||||
| @@ -12388,9 +12379,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "typegram": { | ||||
|       "version": "3.4.2", | ||||
|       "resolved": "https://registry.npmjs.org/typegram/-/typegram-3.4.2.tgz", | ||||
|       "integrity": "sha512-Z+FaPrD+oyzvchLZHmfyz55MuPhJ51tYm6i+gbeZ0W8Yr4LLWQfI0mBlR2v08PzjHuRx26bmZBEM30jSrGbfbg==" | ||||
|       "version": "3.4.3", | ||||
|       "resolved": "https://registry.npmjs.org/typegram/-/typegram-3.4.3.tgz", | ||||
|       "integrity": "sha512-pH0TQJzCWM2+7y6yiBoQVNt7PO9ZvAu/lQukVx4sm68FIBBZEBWI+2MzuMcdbwrD5mD5NrEMAyml9N6DupUZag==" | ||||
|     }, | ||||
|     "unbzip2-stream": { | ||||
|       "version": "1.4.3", | ||||
| @@ -12573,6 +12564,18 @@ | ||||
|       "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "write-file-atomic": { | ||||
|       "version": "3.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", | ||||
|       "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "imurmurhash": "^0.1.4", | ||||
|         "is-typedarray": "^1.0.0", | ||||
|         "signal-exit": "^3.0.2", | ||||
|         "typedarray-to-buffer": "^3.1.5" | ||||
|       } | ||||
|     }, | ||||
|     "xdg-basedir": { | ||||
|       "version": "4.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", | ||||
|   | ||||
| @@ -3,7 +3,7 @@ | ||||
|   "publishConfig": { | ||||
|     "access": "public" | ||||
|   }, | ||||
|   "version": "1.13.4", | ||||
|   "version": "1.13.5", | ||||
|   "description": "Scripts to manage minecraft server's", | ||||
|   "private": false, | ||||
|   "main": "index.js", | ||||
| @@ -75,7 +75,7 @@ | ||||
|     "uuid": "^8.3.2" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "docker-run_build": "github:Sirherobrine23/Docker-Run_Build", | ||||
|     "docker-run_build": "github:Sirherobrine23/Docker-Run_Build#main", | ||||
|     "eslint": "^7.19.0", | ||||
|     "husky": "^7.0.0", | ||||
|     "nexe": "*", | ||||
|   | ||||
| @@ -1,18 +1,16 @@ | ||||
| const child_process = require("child_process"); | ||||
| const fs = require("fs"); | ||||
| const path = require("path"); | ||||
| const { resolve, join } = require("path"); | ||||
| const randomUUID = require("uuid").v4; | ||||
| const { CronJob } = require("cron"); | ||||
| const { GetCronBackup } = require("../lib/BdsSettings"); | ||||
| const { Backup } = require("./BdsBackup"); | ||||
|  | ||||
| // Bds Maneger Inports | ||||
| const commandExists = require("../lib/commandExist"); | ||||
| const BdsDetect = require("./CheckKill").Detect; | ||||
| const bds = require("../index"); | ||||
| const { GetServerPaths, GetPaths, GetServerSettings, GetPlatform } = require("../lib/BdsSettings"); | ||||
| const { GetServerPaths, GetPaths, GetServerSettings, GetPlatform, GetCronBackup } = require("../lib/BdsSettings"); | ||||
| const BdsInfo = require("../BdsManegerInfo.json"); | ||||
| const { Backup } = require("./BdsBackup"); | ||||
|  | ||||
| // Set bdsexec functions | ||||
| global.BdsExecs = {}; | ||||
| @@ -71,7 +69,7 @@ function start() { | ||||
|     // Minecraft Bedrock (Pocketmine-MP) | ||||
|     else if (GetPlatform() === "pocketmine") { | ||||
|         // Start PocketMine-MP | ||||
|         SetupCommands.command = join(resolve(GetServerPaths("pocketmine"), "bin", "php7", "bin"), "php"); | ||||
|         SetupCommands.command = path.join(path.resolve(GetServerPaths("pocketmine"), "bin", "php7", "bin"), "php"); | ||||
|         SetupCommands.args.push("./PocketMine-MP.phar"); | ||||
|         SetupCommands.cwd = GetServerPaths("pocketmine"); | ||||
|     } | ||||
| @@ -102,7 +100,7 @@ function start() { | ||||
|      | ||||
|     // Log file | ||||
|      | ||||
|     const LogFile = join(GetPaths("log"), `${bds.date()}_${GetPlatform()}_Bds_log.log`); | ||||
|     const LogFile = path.join(GetPaths("log"), `${bds.date()}_${GetPlatform()}_Bds_log.log`); | ||||
|     const LatestLog_Path = path.join(GetPaths("log"), "latest.log"); | ||||
|     const LogSaveFunction = data => { | ||||
|         fs.appendFileSync(LogFile, data); | ||||
| @@ -123,6 +121,8 @@ function start() { | ||||
|     global.bds_log_string = "" | ||||
|     ServerExec.stdout.on("data", data => {if (global.bds_log_string) global.bds_log_string = data; else global.bds_log_string += data}); | ||||
|  | ||||
|     const say = (text = "") => ServerExec.stdin.write(BdsInfo.Servers.bedrock.say.replace("{{Text}}", text)); | ||||
|  | ||||
|     const returnFuntion = { | ||||
|         uuid: randomUUID(), | ||||
|         stop: function (){ | ||||
| @@ -161,8 +161,8 @@ function start() { | ||||
|             // Functions | ||||
|             const data = data => Player_Json(data, function (array_status){ | ||||
|                 for (let _player of array_status) { | ||||
|                     if (action === "all") callback(_player); | ||||
|                     else if (_player.Action === action) callback(_player) | ||||
|                     if (_player.Action === action) callback(_player); | ||||
|                     if (action === "all") callback(_player);  | ||||
|                 } | ||||
|             }); | ||||
|             ServerExec.stdout.on("data", data); | ||||
| @@ -195,7 +195,8 @@ function start() { | ||||
|             if (cord.y) command = command.replace("{{Z}}", cord.y); else command = command.replace("{{Z}}", 0); | ||||
|             ServerExec.stdin.write(command+"\n"); | ||||
|             return command; | ||||
|         } | ||||
|         }, | ||||
|         say, | ||||
|     } | ||||
|     ServerExec.on("exit", ()=>{delete global.BdsExecs[returnFuntion.uuid]}); | ||||
|     global.BdsExecs[returnFuntion.uuid] = returnFuntion; | ||||
| @@ -260,7 +261,7 @@ function Player_Json(data = "aaaaaa\n\n\naa", callback = () => {}){ | ||||
|     // else if (Current_platorm === "jsprismarine") console.log("It's still not working"); | ||||
| } | ||||
|  | ||||
| const UpdateUserJSON = function (New_Object = new Array()){ | ||||
| const UpdateUserJSON = function (New_Object = []){ | ||||
|     const Player_Json_path = GetPaths("player"); | ||||
|     const Current_platorm = GetPlatform(); | ||||
|     let Players_Json = { | ||||
|   | ||||
| @@ -51,116 +51,121 @@ async function php_download() { | ||||
| } | ||||
|  | ||||
| module.exports = async function (version, force_install, callback) { | ||||
|     const bds_dir_bedrock = GetServerPaths("bedrock"), | ||||
|         bds_dir_java = GetServerPaths("java"), | ||||
|         bds_dir_pocketmine = GetServerPaths("pocketmine"), | ||||
|         bds_dir_jsprismarine = GetServerPaths("jsprismarine"); | ||||
|     const Servers = (await (await fetch(Extra.download.servers)).json()); | ||||
|     const ServerVersion = GetServerVersion() | ||||
|     const CurrentPlatform = GetPlatform() | ||||
|     if (force_install === true) { | ||||
|         ServerVersion.java = "latest"; | ||||
|         ServerVersion.bedrock = "latest" | ||||
|         ServerVersion.pocketmine = "latest" | ||||
|     } | ||||
|     if (!(version) || version === true || version === "true" || version === "latest") version = Servers.latest[CurrentPlatform] | ||||
|     var url; | ||||
|     try { | ||||
|         const bds_dir_bedrock = GetServerPaths("bedrock"), | ||||
|             bds_dir_java = GetServerPaths("java"), | ||||
|             bds_dir_pocketmine = GetServerPaths("pocketmine"), | ||||
|             bds_dir_jsprismarine = GetServerPaths("jsprismarine"); | ||||
|         const Servers = (await (await fetch(Extra.download.servers)).json()); | ||||
|         const ServerVersion = GetServerVersion() | ||||
|         const CurrentPlatform = GetPlatform() | ||||
|         if (force_install === true) { | ||||
|             ServerVersion.java = "latest"; | ||||
|             ServerVersion.bedrock = "latest" | ||||
|             ServerVersion.pocketmine = "latest" | ||||
|         } | ||||
|         if (!(version) || version === true || version === "true" || version === "latest") version = Servers.latest[CurrentPlatform] | ||||
|         var url; | ||||
|  | ||||
|     console.log(`Installing version ${version}`); | ||||
|     // Bedrock Installer Script | ||||
|     if (CurrentPlatform === "bedrock") { | ||||
|         if (valid_platform.bedrock === true){ | ||||
|             if (version === "latest") version = Servers.latest.bedrock | ||||
|             if (ServerVersion.bedrock === version) { | ||||
|                 console.warn("Jumping, installed version") | ||||
|                 if (typeof callback === "function") callback(true); | ||||
|                 return true | ||||
|             } else { | ||||
|                 if (Servers.bedrock[version].data) console.log(`Server data publish: ${Servers.bedrock[version].data}`) | ||||
|                 url = Servers.bedrock[version][bds.arch][process.platform] | ||||
|                 var server_configs, permissions, whitelist; | ||||
|                 if (existsSync(join(bds_dir_bedrock, "server.properties"))) server_configs = readFileSync(join(bds_dir_bedrock, "server.properties"), "utf8"); | ||||
|                 if (existsSync(join(bds_dir_bedrock, "permissions.json"))) permissions = readFileSync(join(bds_dir_bedrock, "permissions.json"), "utf8"); | ||||
|                 if (existsSync(join(bds_dir_bedrock, "whitelist.json"))) whitelist = readFileSync(join(bds_dir_bedrock, "whitelist.json"), "utf8"); | ||||
|                  | ||||
|                 // Download and Add to Adm_Zip | ||||
|                 const zip = new AdmZip(Buffer.from((await (await fetch(url)).arrayBuffer()))) | ||||
|                 console.log("Download Sucess") | ||||
|         console.log(`Installing version ${version}`); | ||||
|         // Bedrock Installer Script | ||||
|         if (CurrentPlatform === "bedrock") { | ||||
|             if (valid_platform.bedrock === true){ | ||||
|                 if (version === "latest") version = Servers.latest.bedrock | ||||
|                 if (ServerVersion.bedrock === version) { | ||||
|                     console.warn("Jumping, installed version") | ||||
|                     if (typeof callback === "function") await callback(undefined, true); | ||||
|                     return true | ||||
|                 } else { | ||||
|                     if (Servers.bedrock[version].data) console.log(`Server data publish: ${Servers.bedrock[version].data}`) | ||||
|                     url = Servers.bedrock[version][bds.arch][process.platform] | ||||
|                     var server_configs, permissions, whitelist; | ||||
|                     if (existsSync(join(bds_dir_bedrock, "server.properties"))) server_configs = readFileSync(join(bds_dir_bedrock, "server.properties"), "utf8"); | ||||
|                     if (existsSync(join(bds_dir_bedrock, "permissions.json"))) permissions = readFileSync(join(bds_dir_bedrock, "permissions.json"), "utf8"); | ||||
|                     if (existsSync(join(bds_dir_bedrock, "whitelist.json"))) whitelist = readFileSync(join(bds_dir_bedrock, "whitelist.json"), "utf8"); | ||||
|                      | ||||
|                     // Download and Add to Adm_Zip | ||||
|                     const zip = new AdmZip(Buffer.from((await (await fetch(url)).arrayBuffer()))) | ||||
|                     console.log("Download Sucess") | ||||
|  | ||||
|                 zip.extractAllTo(bds_dir_bedrock, true) | ||||
|                 console.log("Extract Sucess") | ||||
|                 if (server_configs) writeFileSync(join(bds_dir_bedrock, "server.properties"), server_configs); | ||||
|                 if (permissions) writeFileSync(join(bds_dir_bedrock, "permissions.json"), permissions) | ||||
|                 if (whitelist) writeFileSync(join(bds_dir_bedrock, "whitelist.json"), whitelist) | ||||
|                 UpdateServerVersion(version) | ||||
|                 if (typeof callback === "function") callback(true); | ||||
|                 return true | ||||
|             } | ||||
|         } else throw Error("Bedrock Not suported") | ||||
|     } | ||||
|     // java Installer Script | ||||
|     else if (CurrentPlatform === "java") { | ||||
|         if (valid_platform.java === true){ | ||||
|             if (version === "latest") version = Servers.latest.java | ||||
|             if (version === ServerVersion.java) { | ||||
|                 console.warn("Jumping, installed version") | ||||
|                 if (typeof callback === "function") callback(true); | ||||
|                 return true | ||||
|             } else { | ||||
|                 url = Servers.java[version].url | ||||
|                 console.log(`Server data publish: ${Servers.java[version].data}`) | ||||
|                  | ||||
|                 writeFileSync(join(bds_dir_java, "MinecraftServerJava.jar"), Buffer.from((await (await fetch(url)).arrayBuffer())), "binary") | ||||
|                 console.log("Success when downloading and saving Minecraft Server java"); | ||||
|                 UpdateServerVersion(version); | ||||
|                 if (typeof callback === "function") callback(true); | ||||
|                 return true | ||||
|             } | ||||
|         } else throw Error("Java is not supported or required software is not installed") | ||||
|     } | ||||
|     // Pocketmine-MP Installer Script | ||||
|     else  if (CurrentPlatform === "pocketmine") { | ||||
|         if (valid_platform.pocketmine === true) { | ||||
|             if (version === "latest") version = Servers.latest.pocketmine | ||||
|             if (version === ServerVersion.pocketmine) { | ||||
|                 console.warn("Jumping, installed version") | ||||
|                 if (typeof callback === "function") callback(true); | ||||
|                 return true | ||||
|             } else { | ||||
|                 const PocketMineJson = Servers.pocketmine[version] | ||||
|                 console.log(`Server data publish: ${PocketMineJson.data}`); | ||||
|                  | ||||
|                 writeFileSync(join(bds_dir_pocketmine, "PocketMine-MP.phar"), Buffer.from((await (await fetch(PocketMineJson.url)).arrayBuffer())), "binary") | ||||
|                 console.log("Success downloading and saving PocketMine-MP php"); | ||||
|                     zip.extractAllTo(bds_dir_bedrock, true) | ||||
|                     console.log("Extract Sucess") | ||||
|                     if (server_configs) writeFileSync(join(bds_dir_bedrock, "server.properties"), server_configs); | ||||
|                     if (permissions) writeFileSync(join(bds_dir_bedrock, "permissions.json"), permissions) | ||||
|                     if (whitelist) writeFileSync(join(bds_dir_bedrock, "whitelist.json"), whitelist) | ||||
|                     UpdateServerVersion(version) | ||||
|                     if (typeof callback === "function") await callback(undefined, true); | ||||
|                     return true | ||||
|                 } | ||||
|             } else throw Error("Bedrock Not suported") | ||||
|         } | ||||
|         // java Installer Script | ||||
|         else if (CurrentPlatform === "java") { | ||||
|             if (valid_platform.java === true){ | ||||
|                 if (version === "latest") version = Servers.latest.java | ||||
|                 if (version === ServerVersion.java) { | ||||
|                     console.warn("Jumping, installed version") | ||||
|                     if (typeof callback === "function") await callback(undefined, true); | ||||
|                     return true | ||||
|                 } else { | ||||
|                     url = Servers.java[version].url | ||||
|                     console.log(`Server data publish: ${Servers.java[version].data}`) | ||||
|                      | ||||
|                     writeFileSync(join(bds_dir_java, "MinecraftServerJava.jar"), Buffer.from((await (await fetch(url)).arrayBuffer())), "binary") | ||||
|                     console.log("Success when downloading and saving Minecraft Server java"); | ||||
|                     UpdateServerVersion(version); | ||||
|                     if (typeof callback === "function") await callback(undefined, true); | ||||
|                     return true | ||||
|                 } | ||||
|             } else throw Error("Java is not supported or required software is not installed") | ||||
|         } | ||||
|         // Pocketmine-MP Installer Script | ||||
|         else  if (CurrentPlatform === "pocketmine") { | ||||
|             if (valid_platform.pocketmine === true) { | ||||
|                 if (version === "latest") version = Servers.latest.pocketmine | ||||
|                 if (version === ServerVersion.pocketmine) { | ||||
|                     console.warn("Jumping, installed version") | ||||
|                     if (typeof callback === "function") await callback(undefined, true); | ||||
|                     return true | ||||
|                 } else { | ||||
|                     const PocketMineJson = Servers.pocketmine[version] | ||||
|                     console.log(`Server data publish: ${PocketMineJson.data}`); | ||||
|                      | ||||
|                     writeFileSync(join(bds_dir_pocketmine, "PocketMine-MP.phar"), Buffer.from((await (await fetch(PocketMineJson.url)).arrayBuffer())), "binary") | ||||
|                     console.log("Success downloading and saving PocketMine-MP php"); | ||||
|  | ||||
|                 await php_download(); | ||||
|                     await php_download(); | ||||
|  | ||||
|                 // Update server Version | ||||
|                 UpdateServerVersion(version) | ||||
|                 // Callback | ||||
|                 if (typeof callback === "function") callback(true); | ||||
|                     // Update server Version | ||||
|                     UpdateServerVersion(version) | ||||
|                     // Callback | ||||
|                     if (typeof callback === "function") await callback(undefined, true); | ||||
|                     return true | ||||
|                 } | ||||
|             } else throw Error("Pocketmine not suported") | ||||
|         } | ||||
|  | ||||
|         // JSPrismarine | ||||
|         else if (CurrentPlatform === "jsprismarine") { | ||||
|             if (valid_platform.jsprismarine === true) { | ||||
|                 console.log("Downloading the JSPrismarine repository."); | ||||
|                 const commit_sha = GitClone("https://github.com/JSPrismarine/JSPrismarine.git", bds_dir_jsprismarine, 1); | ||||
|                 for (let command of ["npm install", "npx -y lerna bootstrap", "npm run build"]) console.log(execSync(command, {cwd: bds_dir_jsprismarine}).toString("ascii")); | ||||
|                 console.log(commit_sha); | ||||
|                 UpdateServerVersion(commit_sha, "jsprismarine") | ||||
|                 if (typeof callback === "function") await callback(undefined, true); | ||||
|                 return true | ||||
|             } | ||||
|         } else throw Error("Pocketmine not suported") | ||||
|     } | ||||
|             } else throw Error("jsprismarine not suported") | ||||
|         } | ||||
|  | ||||
|     // JSPrismarine | ||||
|     else if (CurrentPlatform === "jsprismarine") { | ||||
|         if (valid_platform.jsprismarine === true) { | ||||
|             console.log("Downloading the JSPrismarine repository."); | ||||
|             const commit_sha = GitClone("https://github.com/JSPrismarine/JSPrismarine.git", bds_dir_jsprismarine, 1); | ||||
|             for (let command of ["npm install", "npx -y lerna bootstrap", "npm run build"]) console.log(execSync(command, {cwd: bds_dir_jsprismarine}).toString("ascii")); | ||||
|             console.log(commit_sha); | ||||
|             UpdateServerVersion(commit_sha, "jsprismarine") | ||||
|             if (typeof callback === "function") callback(true); | ||||
|             return true | ||||
|         } else throw Error("jsprismarine not suported") | ||||
|         // dragonfly | ||||
|         else if (CurrentPlatform === "dragonfly") { | ||||
|             throw "Bds maneger Config file error"; | ||||
|         } | ||||
|         // Unidentified platform | ||||
|         else throw Error("Bds maneger Config file error") | ||||
|     } catch (err) { | ||||
|         if (typeof callback === "function") await callback(err, false); | ||||
|         return err; | ||||
|     } | ||||
|  | ||||
|     // dragonfly | ||||
|     else if (CurrentPlatform === "dragonfly") { | ||||
|         throw "Bds maneger Config file error"; | ||||
|     } | ||||
|     // Unidentified platform | ||||
|     else throw Error("Bds maneger Config file error") | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user