🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

map-region-sync

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

map-region-sync - npm Package Compare versions

Comparing version
0.0.2
to
0.1.0
+12
-0
lib/commands/sync.d.ts

@@ -13,3 +13,15 @@ import { Command } from '@oclif/command';

run(): Promise<void>;
/**
* Sync region using the original datas
*/
syncRegions(): Promise<void>;
/**
* Flush playerdata, stats and advancements folders
*/
flush(): Promise<void>;
/**
* Delete and pull POI files from base datas
*/
rewritePOI(): Promise<void>;
checkAccess(file: string): Promise<undefined>;
}
+44
-1

@@ -13,3 +13,12 @@ "use strict";

async run() {
await this.syncRegions();
await this.flush();
await this.rewritePOI();
}
/**
* Sync region using the original datas
*/
async syncRegions() {
const { args: { base, target }, } = this.parse(Sync);
this.log('### SYNC REGION ###');
const baseRefTablePath = path_1.join(base, 'ref-table.json');

@@ -30,3 +39,3 @@ const baseRegionFolder = path_1.join(base, 'region');

const toDelete = differenceBy_1.differenceBy(targetRef, baseRef, 'file');
await delete_files_1.deleteFiles(targetRegionFolder, toDelete);
await delete_files_1.deleteFiles(targetRegionFolder, toDelete.map((ref) => ref.file));
// replace region from from-world to to-world

@@ -51,2 +60,36 @@ const toReplace = differenceBy_1.differenceBy(baseRef, targetRef, 'hash');

}
/**
* Flush playerdata, stats and advancements folders
*/
async flush() {
const { args: { target }, } = this.parse(Sync);
this.log('### FLUSH PLAYER FOLDERS ###');
const targetFoldersToFlush = ['playerdata', 'stats', 'advancements'];
await delete_files_1.deleteFiles(target, targetFoldersToFlush);
await Promise.all(targetFoldersToFlush.map((targetFolder) => promises_1.mkdir(path_1.join(target, targetFolder)).catch(() => this.error(`failed to re-create ${targetFolder}`))));
}
/**
* Delete and pull POI files from base datas
*/
async rewritePOI() {
const { args: { target, base }, } = this.parse(Sync);
this.log('### DELETE POI FILES ###');
const poiTargetFolder = path_1.join(target, 'poi');
const poiBaseFolder = path_1.join(base, 'poi');
this.log('deleting POI folder...');
await promises_1.rm(poiTargetFolder, { recursive: true });
this.log('recreating POI folder...');
await promises_1.mkdir(poiTargetFolder);
this.log('pull POI files from base to target');
const files = await promises_1.readdir(poiBaseFolder);
const progress = cli_ux_1.cli.progress({
format: `copying to target -> [{bar}] {percentage}% | ETA: {eta}s | {value}/{total} (${poiTargetFolder})`,
});
progress.start(files.length);
for (let i = 0; i < files.length; i++) {
await promises_1.copyFile(path_1.join(poiBaseFolder, files[i]), path_1.join(poiTargetFolder, files[i]));
progress.update(i + 1);
}
progress.stop();
}
async checkAccess(file) {

@@ -53,0 +96,0 @@ try {

+1
-2

@@ -1,2 +0,1 @@

import { RefTable } from '../interfaces/RefTable';
export declare function deleteFiles(folder: string, ref: RefTable): Promise<number>;
export declare function deleteFiles(folder: string, files: string[]): Promise<number>;

@@ -8,14 +8,14 @@ "use strict";

const cli_ux_1 = require("cli-ux");
async function deleteFiles(folder, ref) {
async function deleteFiles(folder, files) {
const progress = cli_ux_1.cli.progress({
format: 'deleting in target -> [{bar}] {percentage}% | ETA: {eta}s | {value}/{total}',
format: `deleting in target -> [{bar}] {percentage}% | ETA: {eta}s | {value}/{total} (${folder})`,
});
progress.start(ref.length);
for (let i = 0; i < ref.length; i++) {
await promises_1.rm(path_1.join(folder, ref[i].file));
progress.start(files.length);
for (let i = 0; i < files.length; i++) {
await promises_1.rm(path_1.join(folder, files[i]), { recursive: true });
progress.update(i + 1);
}
progress.stop();
return ref.length;
return files.length;
}
exports.deleteFiles = deleteFiles;

@@ -1,1 +0,1 @@

{"version":"0.0.2","commands":{"gen":{"id":"gen","description":"generate hash for the reference map","pluginName":"map-region-sync","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[{"name":"path","description":"path to the reference world","required":true}]},"sync":{"id":"sync","description":"sync region from a given world to another given world","pluginName":"map-region-sync","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[{"name":"base","description":"sync base","required":true},{"name":"target","description":"sync target","required":true}]}}}
{"version":"0.1.0","commands":{"gen":{"id":"gen","description":"generate hash for the reference map","pluginName":"map-region-sync","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[{"name":"path","description":"path to the reference world","required":true}]},"sync":{"id":"sync","description":"sync region from a given world to another given world","pluginName":"map-region-sync","pluginType":"core","aliases":[],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[{"name":"base","description":"sync base","required":true},{"name":"target","description":"sync target","required":true}]}}}
{
"name": "map-region-sync",
"description": "map region sync",
"version": "0.0.2",
"version": "0.1.0",
"author": "Xavier Stouder @Xstoudi",

@@ -6,0 +6,0 @@ "bin": {

@@ -22,3 +22,3 @@ map-region-sync

$ mrs (-v|--version|version)
map-region-sync/0.0.2 win32-x64 node-v15.12.0
map-region-sync/0.1.0 win32-x64 node-v15.12.0
$ mrs --help [COMMAND]

@@ -51,3 +51,3 @@ USAGE

_See code: [src/commands/gen.ts](https://github.com/Xstoudi/map-region-sync/blob/v0.0.2/src/commands/gen.ts)_
_See code: [src/commands/gen.ts](https://github.com/Xstoudi/map-region-sync/blob/v0.1.0/src/commands/gen.ts)_

@@ -87,3 +87,3 @@ ## `mrs help [COMMAND]`

_See code: [src/commands/sync.ts](https://github.com/Xstoudi/map-region-sync/blob/v0.0.2/src/commands/sync.ts)_
_See code: [src/commands/sync.ts](https://github.com/Xstoudi/map-region-sync/blob/v0.1.0/src/commands/sync.ts)_
<!-- commandsstop -->