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