UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

53 lines (46 loc) 4.17 kB
'use strict'; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } }); const fs = require('node:fs'); const _interopDefault = e => e && e.__esModule ? e : { default: e }; const fs__default = /*#__PURE__*/_interopDefault(fs); class BaseProvider { path; server; world; constructor(path, server) { this.server = server; this.path = path; if (!fs__default.default.existsSync(path)) { fs__default.default.mkdirSync(path); } } setWorld(world) { this.world = world; } getWorld() { return this.world; } /** * On enable hook. * @group Lifecycle */ async enable() { } /** * On disable hook. * @group Lifecycle */ async disable() { } getServer() { return this.server; } /** * Returns the path to the world folder. */ getPath() { return this.path; } } exports.default = BaseProvider; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZVByb3ZpZGVyLmNqcy5janMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy93b3JsZC9wcm92aWRlcnMvQmFzZVByb3ZpZGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgR2VuZXJhdG9yLCBXb3JsZCB9IGZyb20gJy4uLyc7XG5pbXBvcnQgdHlwZSB7IFNlcnZlciB9IGZyb20gJy4uLy4uLyc7XG5pbXBvcnQgdHlwZSBDaHVuayBmcm9tICcuLi9jaHVuay9DaHVuayc7XG5pbXBvcnQgdHlwZSBQcm92aWRlciBmcm9tICcuL1Byb3ZpZGVyJztcblxuaW1wb3J0IGZzIGZyb20gJ25vZGU6ZnMnO1xuXG5leHBvcnQgZGVmYXVsdCBhYnN0cmFjdCBjbGFzcyBCYXNlUHJvdmlkZXIgaW1wbGVtZW50cyBQcm92aWRlciB7XG4gICAgcHJvdGVjdGVkIHBhdGg6IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgc2VydmVyOiBTZXJ2ZXI7XG4gICAgcHJvdGVjdGVkIHdvcmxkITogV29ybGQ7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocGF0aDogc3RyaW5nLCBzZXJ2ZXI6IFNlcnZlcikge1xuICAgICAgICB0aGlzLnNlcnZlciA9IHNlcnZlcjtcbiAgICAgICAgdGhpcy5wYXRoID0gcGF0aDtcbiAgICAgICAgaWYgKCFmcy5leGlzdHNTeW5jKHBhdGgpKSB7XG4gICAgICAgICAgICBmcy5ta2RpclN5bmMocGF0aCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0V29ybGQod29ybGQ6IFdvcmxkKSB7XG4gICAgICAgIHRoaXMud29ybGQgPSB3b3JsZDtcbiAgICB9XG4gICAgcHVibGljIGdldFdvcmxkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy53b3JsZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPbiBlbmFibGUgaG9vay5cbiAgICAgKiBAZ3JvdXAgTGlmZWN5Y2xlXG4gICAgICovXG4gICAgcHVibGljIGFzeW5jIGVuYWJsZSgpOiBQcm9taXNlPHZvaWQ+IHt9XG4gICAgLyoqXG4gICAgICogT24gZGlzYWJsZSBob29rLlxuICAgICAqIEBncm91cCBMaWZlY3ljbGVcbiAgICAgKi9cbiAgICBwdWJsaWMgYXN5bmMgZGlzYWJsZSgpOiBQcm9taXNlPHZvaWQ+IHt9XG5cbiAgICBwdWJsaWMgZ2V0U2VydmVyKCk6IFNlcnZlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlcnZlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBwYXRoIHRvIHRoZSB3b3JsZCBmb2xkZXIuXG4gICAgICovXG4gICAgcHVibGljIGdldFBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGF0aDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgY2h1bmsgZGVjb2RlZCBmcm9tIHRoZSBwcm92aWRlci5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjeCAtIHRoZSBjaHVuayB4IGNvb3JkaW5hdGUuXG4gICAgICogQHBhcmFtIGN6IC0gdGhlIGNodW5rIHkgY29vcmRpbmF0ZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVhZENodW5rKGN4OiBudW1iZXIsIGN6OiBudW1iZXIsIHNlZWQ6IG51bWJlciwgZ2VuZXJhdG9yOiBHZW5lcmF0b3IsIGNvbmZpZz86IGFueSk6IFByb21pc2U8Q2h1bms+O1xuXG4gICAgLyoqXG4gICAgICogV3JpdGVzIGEgY2h1bmsuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY2h1bmsgLSB0aGUgY2h1bmsgZGF0YS5cbiAgICAgKi9cbiAgICBwdWJsaWMgYWJzdHJhY3Qgd3JpdGVDaHVuayhjaHVuazogQ2h1bmspOiBQcm9taXNlPHZvaWQ+O1xufVxuIl0sIm5hbWVzIjpbImZzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBT0EsTUFBOEIsWUFBaUMsQ0FBQTtBQUFBLEVBQ2pELElBQUE7QUFBQSxFQUNBLE1BQUE7QUFBQSxFQUNBLEtBQUE7QUFBQSxFQUVILFdBQUEsQ0FBWSxNQUFjLE1BQWdCLEVBQUE7QUFDN0MsSUFBQSxJQUFBLENBQUssTUFBUyxHQUFBLE1BQUE7QUFDZCxJQUFBLElBQUEsQ0FBSyxJQUFPLEdBQUEsSUFBQTtBQUNaLElBQUEsSUFBSSxDQUFDQSxtQkFBQSxDQUFHLFVBQVcsQ0FBQSxJQUFJLENBQUcsRUFBQTtBQUN0QixNQUFBQSxtQkFBQSxDQUFHLFVBQVUsSUFBSSxDQUFBO0FBQUE7QUFDckI7QUFDSixFQUVPLFNBQVMsS0FBYyxFQUFBO0FBQzFCLElBQUEsSUFBQSxDQUFLLEtBQVEsR0FBQSxLQUFBO0FBQUE7QUFDakIsRUFDTyxRQUFXLEdBQUE7QUFDZCxJQUFBLE9BQU8sSUFBSyxDQUFBLEtBQUE7QUFBQTtBQUNoQjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsTUFBYSxNQUF3QixHQUFBO0FBQUE7QUFBQztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS3RDLE1BQWEsT0FBeUIsR0FBQTtBQUFBO0FBQUMsRUFFaEMsU0FBb0IsR0FBQTtBQUN2QixJQUFBLE9BQU8sSUFBSyxDQUFBLE1BQUE7QUFBQTtBQUNoQjtBQUFBO0FBQUE7QUFBQSxFQUtPLE9BQWtCLEdBQUE7QUFDckIsSUFBQSxPQUFPLElBQUssQ0FBQSxJQUFBO0FBQUE7QUFpQnBCOzs7OyJ9