mbler 0.1.3-alpha → 0.1.3-alpna-r1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +8 -4
- package/bin/mbler.js +12 -12
- package/bin/minify.js +58 -44
- package/lib/build/base.js +1 -297
- package/lib/build/build-g-config.json +12 -12
- package/lib/build/getModule.js +1 -182
- package/lib/build/index.js +1 -370
- package/lib/build/manifest.build.js +1 -103
- package/lib/build/mcVersion.js +1 -86
- package/lib/build/utils.js +1 -6
- package/lib/code-processor/c-handler-export.js +1 -12
- package/lib/code-processor/index.js +1 -141
- package/lib/code-processor/mtreehandler.js +1 -164
- package/lib/commander/index.js +1 -154
- package/lib/data/includes.json +13 -13
- package/lib/data/version.json +88 -88
- package/lib/git/clone.js +1 -28
- package/lib/git/index.js +1 -12
- package/lib/git/pull.js +1 -100
- package/lib/lang/__translate.js +1 -93
- package/lib/lang/en.js +1 -128
- package/lib/lang/index.js +1 -78
- package/lib/lang/zh.js +1 -146
- package/lib/loger/colors.js +1 -13
- package/lib/loger/index.js +1 -136
- package/lib/mcx/ast/index.js +1 -11
- package/lib/mcx/ast/prop.js +1 -78
- package/lib/mcx/ast/tag.js +1 -246
- package/lib/mcx/compile-component/lib.js +1 -106
- package/lib/mcx/compile-component/types.js +1 -2
- package/lib/mcx/compile-component/utils.js +1 -26
- package/lib/mcx/compile-mcx/compile.js +1 -34
- package/lib/mcx/compile-mcx/compiler/bundler.js +1 -0
- package/lib/mcx/compile-mcx/compiler/compileData.js +1 -0
- package/lib/mcx/compile-mcx/compiler/compileMain.js +1 -0
- package/lib/mcx/compile-mcx/compiler/index.js +1 -0
- package/lib/mcx/compile-mcx/compiler/utils.js +1 -0
- package/lib/mcx/compile-mcx/context.js +1 -19
- package/lib/mcx/compile-mcx/index.js +1 -10
- package/lib/mcx/compile-mcx/mcx/index.js +1 -2
- package/lib/mcx/compile-mcx/mcx/types.js +1 -2
- package/lib/mcx/compile-mcx/template/module.js +1 -42
- package/lib/mcx/compile-mcx/types.js +1 -2
- package/lib/mcx/compile-mcx/utils.node.js +1 -207
- package/lib/mcx/index.js +1 -13
- package/lib/mcx/test/index.js +1 -7
- package/lib/mcx/test.js +1 -21
- package/lib/mcx/types.js +1 -2
- package/lib/mcx/utils.js +1 -86
- package/lib/module-handler/index.js +1 -482
- package/lib/modules/create-game/mbler.config.json +13 -13
- package/lib/modules/create-game/src/Runner/RunnerManager.js +1 -113
- package/lib/modules/create-game/src/Runner/scriptRunner.js +1 -70
- package/lib/modules/create-game/src/config.js +1 -27
- package/lib/modules/create-game/src/constants.js +1 -19
- package/lib/modules/create-game/src/createGameModule.js +1 -24
- package/lib/modules/create-game/src/gameComponent/common/autoStop.js +1 -38
- package/lib/modules/create-game/src/gameComponent/common/lazyLoader.js +1 -76
- package/lib/modules/create-game/src/gameComponent/common/stopWatch/onTimeEvent.js +1 -36
- package/lib/modules/create-game/src/gameComponent/common/stopWatch/stopWatch.js +1 -90
- package/lib/modules/create-game/src/gameComponent/common/stopWatch/tickEvent.js +1 -29
- package/lib/modules/create-game/src/gameComponent/common/timer/onTimeEvent.js +1 -36
- package/lib/modules/create-game/src/gameComponent/common/timer/tickEvent.js +1 -29
- package/lib/modules/create-game/src/gameComponent/common/timer/timer.js +1 -87
- package/lib/modules/create-game/src/gameComponent/gameComponent.js +1 -53
- package/lib/modules/create-game/src/gameComponent/index.js +1 -31
- package/lib/modules/create-game/src/gameComponent/player/blockInteractionBlocker.js +1 -40
- package/lib/modules/create-game/src/gameComponent/player/entityInteractionBlocker.js +1 -48
- package/lib/modules/create-game/src/gameComponent/player/healthIndicator.js +1 -48
- package/lib/modules/create-game/src/gameComponent/player/regionMonitor.js +1 -22
- package/lib/modules/create-game/src/gameComponent/player/respawn.js +1 -59
- package/lib/modules/create-game/src/gameComponent/player/spawnProtector.js +1 -69
- package/lib/modules/create-game/src/gameComponent/region/regionProtecter.js +1 -53
- package/lib/modules/create-game/src/gameComponent/region/regionTeamChooser.js +1 -71
- package/lib/modules/create-game/src/gameComponent/region/regionTeamCleaner.js +1 -20
- package/lib/modules/create-game/src/gameComponent/view/infoScoreboard.js +1 -77
- package/lib/modules/create-game/src/gameComponent/view/teamScoreboard.js +1 -83
- package/lib/modules/create-game/src/gameContext.js +1 -6
- package/lib/modules/create-game/src/gameEngine.js +1 -139
- package/lib/modules/create-game/src/gameEvent/eventManager.js +1 -108
- package/lib/modules/create-game/src/gameEvent/eventSignal.js +1 -28
- package/lib/modules/create-game/src/gameEvent/events/buttonPush.js +1 -41
- package/lib/modules/create-game/src/gameEvent/events/inSlot.js +1 -77
- package/lib/modules/create-game/src/gameEvent/events/interval.js +1 -51
- package/lib/modules/create-game/src/gameEvent/events/itemUse.js +1 -36
- package/lib/modules/create-game/src/gameEvent/events/onBlock.js +1 -106
- package/lib/modules/create-game/src/gameEvent/events/regionEvents.js +1 -105
- package/lib/modules/create-game/src/gameEvent/events/signClick.js +1 -45
- package/lib/modules/create-game/src/gameEvent/gameEvent.js +1 -54
- package/lib/modules/create-game/src/gameEvent/index.js +1 -20
- package/lib/modules/create-game/src/gameEvent/mapEventSignal.js +1 -101
- package/lib/modules/create-game/src/gameEvent/subscription.js +1 -17
- package/lib/modules/create-game/src/gamePlayer/gamePlayer.js +1 -102
- package/lib/modules/create-game/src/gamePlayer/groupBuilder.js +1 -38
- package/lib/modules/create-game/src/gamePlayer/groupSet.js +1 -96
- package/lib/modules/create-game/src/gamePlayer/index.js +1 -25
- package/lib/modules/create-game/src/gamePlayer/playerGroup.js +1 -145
- package/lib/modules/create-game/src/gamePlayer/playerManager.js +1 -57
- package/lib/modules/create-game/src/gameRegion/gameRegion.js +1 -229
- package/lib/modules/create-game/src/gameRegion/index.js +1 -43
- package/lib/modules/create-game/src/gameRegion/regionHelper.js +1 -79
- package/lib/modules/create-game/src/gameState/common/autoStop.js +1 -39
- package/lib/modules/create-game/src/gameState/gameState.js +1 -169
- package/lib/modules/create-game/src/gameState/index.js +1 -7
- package/lib/modules/create-game/src/gameState/types.js +1 -35
- package/lib/modules/create-game/src/gameStructure/gameStructure.js +1 -36
- package/lib/modules/create-game/src/main.js +1 -86
- package/lib/modules/create-game/src/system/gameCommand.js +1 -107
- package/lib/modules/create-game/src/system/gameManager.js +1 -124
- package/lib/modules/create-game/src/system/globalPlayerManager.js +1 -119
- package/lib/modules/create-game/src/utils/GameError.js +1 -31
- package/lib/modules/create-game/src/utils/algorithm.js +1 -95
- package/lib/modules/create-game/src/utils/chunk.js +1 -63
- package/lib/modules/create-game/src/utils/deferredObject.js +1 -27
- package/lib/modules/create-game/src/utils/duration.js +1 -25
- package/lib/modules/create-game/src/utils/func.js +1 -20
- package/lib/modules/create-game/src/utils/index.js +1 -52
- package/lib/modules/create-game/src/utils/interfaces.js +1 -2
- package/lib/modules/create-game/src/utils/logger.js +1 -47
- package/lib/modules/create-game/src/utils/random.js +1 -76
- package/lib/modules/create-game/src/utils/vanila-data.js +1 -123
- package/lib/modules/create-game/src/utils/vector.js +1 -96
- package/lib/modules/gameLib/mbler.config.json +15 -15
- package/lib/modules/gameLib/src/config.js +1 -134
- package/lib/modules/gameLib/src/data.js +1 -77
- package/lib/modules/gameLib/src/entity.js +1 -256
- package/lib/modules/gameLib/src/event.js +1 -285
- package/lib/modules/gameLib/src/index.js +1 -20
- package/lib/modules/gameLib/src/loger.js +1 -21
- package/lib/modules/gameLib/src/ui.js +1 -209
- package/lib/modules/gameLib/src/utils.js +1 -122
- package/lib/modules/gutils/mbler.config.json +11 -11
- package/lib/modules/gutils/src/index.js +1 -22
- package/lib/modules/innerDef.json +4 -4
- package/lib/runTemp/File.js +1 -54
- package/lib/runTemp/config.json +3 -3
- package/lib/runTemp/index.js +1 -137
- package/lib/runTemp/securityFile.js +1 -93
- package/lib/start/addPack.js +1 -3
- package/lib/start/clean.js +1 -84
- package/lib/start/create.js +1 -146
- package/lib/start/dev.js +1 -99
- package/lib/start/getResConfig.js +1 -3
- package/lib/start/incg.js +1 -3
- package/lib/start/index.js +1 -207
- package/lib/start/init.js +1 -125
- package/lib/start/rechce.js +1 -57
- package/lib/start/unaddPack.js +1 -3
- package/lib/start/unincg.js +1 -67
- package/lib/start/version.js +1 -73
- package/lib/utils/index.js +1 -298
- package/lib/uuid/index.js +1 -27
- package/package.json +49 -1
- package/test/2x sword/behavior/scripts/index.js +24 -24
- package/test/2x sword/mbler.config.json +11 -11
- package/test/2x sword/package.json +13 -13
- package/test/README.md +7 -7
- package/test/des/index.js +19 -19
- package/test/des/mbler.config.json +4 -4
- package/test/des/package.json +6 -6
- package/test/initializer/index.js +5 -5
- package/test/initializer/mbler.config.json +4 -4
- package/test/initializer/package.json +6 -6
- package/test/mbler-int/behavior/res/items/mang_one_int.json +21 -21
- package/test/mbler-int/behavior/scripts/index.js +7 -7
- package/test/mbler-int/behavior/scripts/lib/event/index.js +19 -19
- package/test/mbler-int/behavior/scripts/lib/ui/Lore.js +18 -18
- package/test/mbler-int/behavior/scripts/lib/ui/baseUi.js +6 -6
- package/test/mbler-int/behavior/scripts/lib/ui/index.js +206 -206
- package/test/mbler-int/behavior/scripts/lib/utils/index.js +51 -51
- package/test/mbler-int/mbler.config.json +18 -18
- package/test/mbler-int/package.json +12 -12
- package/test/script-mbler/behavior/scripts/index.js +5 -0
- package/test/script-mbler/behavior/scripts/index.ts +5 -5
- package/test/script-mbler/mbler.config.json +14 -14
- package/test/script-mbler/package.json +15 -15
- package/lib/mcx/compile-mcx/_compile.js +0 -602
|
@@ -1,93 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
const promises_1 = __importDefault(require("fs/promises"));
|
|
40
|
-
const utils = __importStar(require("../utils/index.js"));
|
|
41
|
-
class SecurityFile {
|
|
42
|
-
#dir = null;
|
|
43
|
-
constructor(dir) {
|
|
44
|
-
this.#dir = dir;
|
|
45
|
-
}
|
|
46
|
-
#getDir(d) {
|
|
47
|
-
const dir = utils.join(this.#dir, d);
|
|
48
|
-
if (!dir.startsWith(this.#dir))
|
|
49
|
-
throw new Error("[Mbler security] Don't into Parent Directory");
|
|
50
|
-
return dir;
|
|
51
|
-
}
|
|
52
|
-
async mkdir(DirName) {
|
|
53
|
-
try {
|
|
54
|
-
await promises_1.default.mkdir(this.#getDir(DirName), {
|
|
55
|
-
recursive: true
|
|
56
|
-
});
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
catch {
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
async rm(File) {
|
|
64
|
-
try {
|
|
65
|
-
await promises_1.default.rm(this.#getDir(File), {
|
|
66
|
-
recursive: true,
|
|
67
|
-
force: true
|
|
68
|
-
});
|
|
69
|
-
return true;
|
|
70
|
-
}
|
|
71
|
-
catch (err) {
|
|
72
|
-
return false;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
async writeFile(File, content) {
|
|
76
|
-
try {
|
|
77
|
-
await promises_1.default.writeFile(this.#getDir(File), content, {
|
|
78
|
-
encoding: 'utf-8'
|
|
79
|
-
});
|
|
80
|
-
return true;
|
|
81
|
-
}
|
|
82
|
-
catch (err) {
|
|
83
|
-
return false;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
async readFile(File, opt) {
|
|
87
|
-
return await utils.readFile(this.#getDir(File), opt);
|
|
88
|
-
}
|
|
89
|
-
async readdir(Dir) {
|
|
90
|
-
return await promises_1.default.readdir(this.#getDir(Dir));
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
exports.default = SecurityFile;
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(t,e,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(e,r);n&&!("get"in n?!e.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,n)}:function(t,e,r,i){void 0===i&&(i=r),t[i]=e[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),__importStar=this&&this.__importStar||function(){var t=function(e){return t=Object.getOwnPropertyNames||function(t){var e=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[e.length]=r);return e},t(e)};return function(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var i=t(e),n=0;n<i.length;n++)"default"!==i[n]&&__createBinding(r,e,i[n]);return __setModuleDefault(r,e),r}}(),__importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0});const promises_1=__importDefault(require("fs/promises")),utils=__importStar(require("../utils/index.js"));class SecurityFile{#t=null;constructor(t){this.#t=t}#e(t){const e=utils.join(this.#t,t);if(!e.startsWith(this.#t))throw new Error("[Mbler security] Don't into Parent Directory");return e}async mkdir(t){try{return await promises_1.default.mkdir(this.#e(t),{recursive:!0}),!0}catch{return!1}}async rm(t){try{return await promises_1.default.rm(this.#e(t),{recursive:!0,force:!0}),!0}catch(t){return!1}}async writeFile(t,e){try{return await promises_1.default.writeFile(this.#e(t),e,{encoding:"utf-8"}),!0}catch(t){return!1}}async readFile(t,e){return await utils.readFile(this.#e(t),e)}async readdir(t){return await promises_1.default.readdir(this.#e(t))}}exports.default=SecurityFile;
|
package/lib/start/addPack.js
CHANGED
package/lib/start/clean.js
CHANGED
|
@@ -1,84 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
const promises_1 = __importDefault(require("fs/promises"));
|
|
40
|
-
const utils = __importStar(require("./../utils/index.js"));
|
|
41
|
-
const index_js_1 = __importDefault(require("./../loger/index.js"));
|
|
42
|
-
const path_1 = __importDefault(require("path"));
|
|
43
|
-
const index_js_2 = __importDefault(require("./../lang/index.js"));
|
|
44
|
-
class Clean {
|
|
45
|
-
p;
|
|
46
|
-
dirname;
|
|
47
|
-
outdir = [];
|
|
48
|
-
constructor(p, baseDir) {
|
|
49
|
-
this.p = p;
|
|
50
|
-
this.dirname = baseDir;
|
|
51
|
-
}
|
|
52
|
-
run = () => this.start().catch((err) => {
|
|
53
|
-
index_js_1.default.e(err);
|
|
54
|
-
});
|
|
55
|
-
async start() {
|
|
56
|
-
if (!await utils.FileExsit(this.p)) {
|
|
57
|
-
utils.Exit(`项目不存在`);
|
|
58
|
-
}
|
|
59
|
-
// 获取 mbler.config.json
|
|
60
|
-
try {
|
|
61
|
-
const packager = await utils.GetData(this.p);
|
|
62
|
-
// 提取输出目录
|
|
63
|
-
this.outdir = [
|
|
64
|
-
/*resources*/
|
|
65
|
-
this.getOutDir(packager.outdir?.resources),
|
|
66
|
-
/*behavior*/
|
|
67
|
-
this.getOutDir(packager.outdir?.behavior)
|
|
68
|
-
];
|
|
69
|
-
await Promise.all(this.outdir.map((dir) => promises_1.default.rm(dir, {
|
|
70
|
-
recursive: true,
|
|
71
|
-
force: true
|
|
72
|
-
}).catch(() => { })));
|
|
73
|
-
}
|
|
74
|
-
catch (err) {
|
|
75
|
-
index_js_1.default.e('clean', err);
|
|
76
|
-
}
|
|
77
|
-
index_js_1.default.i('clean', index_js_2.default.cleanFinally);
|
|
78
|
-
}
|
|
79
|
-
getOutDir(dir) {
|
|
80
|
-
const outdir = dir;
|
|
81
|
-
return outdir ? utils.join(this.p, outdir) : path_1.default.join(this.p, 'dist');
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
exports.default = Clean;
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(t,e,i,r){void 0===r&&(r=i);var u=Object.getOwnPropertyDescriptor(e,i);u&&!("get"in u?!e.__esModule:u.writable||u.configurable)||(u={enumerable:!0,get:function(){return e[i]}}),Object.defineProperty(t,r,u)}:function(t,e,i,r){void 0===r&&(r=i),t[r]=e[i]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),__importStar=this&&this.__importStar||function(){var t=function(e){return t=Object.getOwnPropertyNames||function(t){var e=[];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[e.length]=i);return e},t(e)};return function(e){if(e&&e.__esModule)return e;var i={};if(null!=e)for(var r=t(e),u=0;u<r.length;u++)"default"!==r[u]&&__createBinding(i,e,r[u]);return __setModuleDefault(i,e),i}}(),__importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0});const promises_1=__importDefault(require("fs/promises")),utils=__importStar(require("./../utils/index.js")),index_js_1=__importDefault(require("./../loger/index.js")),path_1=__importDefault(require("path")),index_js_2=__importDefault(require("./../lang/index.js"));class Clean{p;dirname;outdir=[];constructor(t,e){this.p=t,this.dirname=e}run=()=>this.start().catch(t=>{index_js_1.default.e(t)});async start(){await utils.FileExsit(this.p)||utils.Exit("项目不存在");try{const t=await utils.GetData(this.p);this.outdir=[this.getOutDir(t.outdir?.resources),this.getOutDir(t.outdir?.behavior)],await Promise.all(this.outdir.map(t=>promises_1.default.rm(t,{recursive:!0,force:!0}).catch(()=>{})))}catch(t){index_js_1.default.e("clean",t)}index_js_1.default.i("clean",index_js_2.default.cleanFinally)}getOutDir(t){const e=t;return e?utils.join(this.p,e):path_1.default.join(this.p,"dist")}}exports.default=Clean;
|
package/lib/start/create.js
CHANGED
|
@@ -1,146 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
const index_js_1 = __importDefault(require("./../uuid/index.js"));
|
|
39
|
-
const promises_1 = __importDefault(require("fs/promises"));
|
|
40
|
-
const utils = __importStar(require("./../utils/index.js"));
|
|
41
|
-
const path_1 = __importDefault(require("path"));
|
|
42
|
-
const index_js_2 = __importDefault(require("./../git/index.js"));
|
|
43
|
-
const child_process_1 = require("child_process");
|
|
44
|
-
const index_js_3 = __importDefault(require("./../runTemp/index.js"));
|
|
45
|
-
const securityFile_js_1 = __importDefault(require("./../runTemp/securityFile.js"));
|
|
46
|
-
const regex = /(https?:\/\/[^\s\/]+\/[^\s\/]+\/[^\s]+(?:\.git)?|(?:git@|[\w.-]+@)[\w.-]+:[^\s]+(?:\.git)?)/;
|
|
47
|
-
const npmStart = "npm:";
|
|
48
|
-
let dirname = '';
|
|
49
|
-
async function Load(cacheDir, workDir) {
|
|
50
|
-
const main = JSON.parse(await promises_1.default.readFile(path_1.default.join(cacheDir, "package.json"), {
|
|
51
|
-
encoding: "utf-8"
|
|
52
|
-
})).main;
|
|
53
|
-
const MblerConfig = JSON.parse(await promises_1.default.readFile(path_1.default.join(cacheDir, "mbler.config.json"), {
|
|
54
|
-
encoding: "utf-8"
|
|
55
|
-
}));
|
|
56
|
-
const query = {
|
|
57
|
-
name: MblerConfig.name,
|
|
58
|
-
description: MblerConfig.description,
|
|
59
|
-
version: MblerConfig.version,
|
|
60
|
-
// securityFile提供不能来到上级的文件操作
|
|
61
|
-
setWorkDir: new securityFile_js_1.default(workDir)
|
|
62
|
-
};
|
|
63
|
-
let run = require(path_1.default.join(cacheDir, main));
|
|
64
|
-
run = run.main(query);
|
|
65
|
-
if (run instanceof Promise)
|
|
66
|
-
run = await run;
|
|
67
|
-
}
|
|
68
|
-
function runNpm(param, cwd) {
|
|
69
|
-
return new Promise((resolve, reject) => {
|
|
70
|
-
const processC = (0, child_process_1.spawn)('npm', param, {
|
|
71
|
-
cwd,
|
|
72
|
-
stdio: 'ignore'
|
|
73
|
-
});
|
|
74
|
-
processC.on('close', resolve);
|
|
75
|
-
processC.on('error', (err) => {
|
|
76
|
-
reject(err);
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
async function NpmInstall(dependencies, tagerDir) {
|
|
81
|
-
const temp = new index_js_3.default(path_1.default.join(require("os").tmpdir(), "mbler"));
|
|
82
|
-
await temp.init();
|
|
83
|
-
const { dir } = temp;
|
|
84
|
-
await promises_1.default.writeFile(path_1.default.join(dir, "package.json"), JSON.stringify({
|
|
85
|
-
name: "",
|
|
86
|
-
description: "",
|
|
87
|
-
version: "0.0.1",
|
|
88
|
-
type: "commjs"
|
|
89
|
-
}));
|
|
90
|
-
const rel = await runNpm(["install", dependencies], dir);
|
|
91
|
-
if (rel !== 0)
|
|
92
|
-
throw new Error(`npm package install falled`);
|
|
93
|
-
const ModDor = path_1.default.join(dir, "node_modules");
|
|
94
|
-
// 复制到目标目录
|
|
95
|
-
await copy(ModDor, tagerDir);
|
|
96
|
-
await temp.remove();
|
|
97
|
-
}
|
|
98
|
-
function copy(source, out) {
|
|
99
|
-
return new Promise((then, error) => promises_1.default.readdir(source)
|
|
100
|
-
.then((data) => Promise.all(data
|
|
101
|
-
.map((file) => utils.copy(path_1.default.join(source, file), path_1.default.join(out, file)))).then(() => then()))
|
|
102
|
-
.catch(error));
|
|
103
|
-
}
|
|
104
|
-
module.exports = async function workDirFunction(workDir, _dirname, param = "") {
|
|
105
|
-
param = param.trim();
|
|
106
|
-
dirname = _dirname;
|
|
107
|
-
// 如果已经初始化了
|
|
108
|
-
try {
|
|
109
|
-
if (!workDir)
|
|
110
|
-
throw new Error("Wrok Dir is undefined");
|
|
111
|
-
if (await utils.isMblerProject(workDir))
|
|
112
|
-
throw new Error("WorkDir is init You shouldn't use 'create' command");
|
|
113
|
-
// 缓存id
|
|
114
|
-
const CreateId = index_js_1.default.fromString(`ul-to-${param}`);
|
|
115
|
-
const cacheDir = path_1.default.join(process.cwd(), "lib/initializer-cache", CreateId);
|
|
116
|
-
// 如果缓存存在
|
|
117
|
-
if (await utils.FileExsit(cacheDir)) {
|
|
118
|
-
await Load(cacheDir, workDir);
|
|
119
|
-
// 不存在缓存
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
const dir = utils.join(dirname, param);
|
|
123
|
-
// 尝试匹配为git url
|
|
124
|
-
if (regex.test(param)) {
|
|
125
|
-
await index_js_2.default.clone(param, cacheDir);
|
|
126
|
-
}
|
|
127
|
-
else if (param.startsWith(npmStart)) {
|
|
128
|
-
// 如果是 npm 包,需要加上 npm: 前缀
|
|
129
|
-
const packageName = param.slice(npmStart.length);
|
|
130
|
-
// 开始npm安装
|
|
131
|
-
await NpmInstall(packageName, cacheDir);
|
|
132
|
-
}
|
|
133
|
-
else if (await utils.FileExsit(dir)) {
|
|
134
|
-
// 情况 : 输入路径
|
|
135
|
-
await copy(param, cacheDir);
|
|
136
|
-
}
|
|
137
|
-
else {
|
|
138
|
-
throw new Error("Package source not match");
|
|
139
|
-
}
|
|
140
|
-
await Load(cacheDir, workDir);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
catch (err) {
|
|
144
|
-
console.error(`加载模板初始化失败 错误信息\n${err.stack}`);
|
|
145
|
-
}
|
|
146
|
-
};
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,i,r){void 0===r&&(r=i);var n=Object.getOwnPropertyDescriptor(t,i);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,r,n)}:function(e,t,i,r){void 0===r&&(r=i),e[r]=t[i]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var i={};if(null!=t)for(var r=e(t),n=0;n<r.length;n++)"default"!==r[n]&&__createBinding(i,t,r[n]);return __setModuleDefault(i,t),i}}(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};const index_js_1=__importDefault(require("./../uuid/index.js")),promises_1=__importDefault(require("fs/promises")),utils=__importStar(require("./../utils/index.js")),path_1=__importDefault(require("path")),index_js_2=__importDefault(require("./../git/index.js")),child_process_1=require("child_process"),index_js_3=__importDefault(require("./../runTemp/index.js")),securityFile_js_1=__importDefault(require("./../runTemp/securityFile.js")),os_1=require("os"),regex=/(https?:\/\/[^\s\/]+\/[^\s\/]+\/[^\s]+(?:\.git)?|(?:git@|[\w.-]+@)[\w.-]+:[^\s]+(?:\.git)?)/,npmStart="npm:";let dirname="";async function Load(e,t){const i=JSON.parse(await promises_1.default.readFile(path_1.default.join(e,"package.json"),{encoding:"utf-8"})).main,r=JSON.parse(await promises_1.default.readFile(path_1.default.join(e,"mbler.config.json"),{encoding:"utf-8"})),n={name:r.name,description:r.description,version:r.version,setWorkDir:new securityFile_js_1.default(t)};let a=require(path_1.default.join(e,i));a=a.main(n),a instanceof Promise&&(a=await a)}function runNpm(e,t){return new Promise((i,r)=>{const n=(0,child_process_1.spawn)("npm",e,{cwd:t,stdio:"ignore"});n.on("close",i),n.on("error",e=>{r(e)})})}async function NpmInstall(e,t){const i=new index_js_3.default(path_1.default.join(require("os").tmpdir(),"mbler"));await i.init();const{dir:r}=i;await promises_1.default.writeFile(path_1.default.join(r,"package.json"),JSON.stringify({name:"",description:"",version:"0.0.1",type:"commjs"}));if(0!==await runNpm(["install",e],r))throw new Error("npm package install falled");const n=path_1.default.join(r,"node_modules");await copy(n,t),await i.remove()}function copy(e,t){return new Promise((i,r)=>promises_1.default.readdir(e).then(r=>Promise.all(r.map(i=>utils.copy(path_1.default.join(e,i),path_1.default.join(t,i)))).then(()=>i())).catch(r))}module.exports=async function(e,t,i=""){i=i.trim(),dirname=t;try{if(!e)throw new Error("Wrok Dir is undefined");if(await utils.isMblerProject(e))throw new Error("WorkDir is init You shouldn't use 'create' command");const t=index_js_1.default.fromString(`ul-to-${i}`),r=path_1.default.join((0,os_1.tmpdir)(),"mbler/initializer-cache",t);if(await utils.FileExsit(r))await Load(r,e);else{const t=utils.join(dirname,i);if(regex.test(i))await index_js_2.default.clone(i,r);else if(i.startsWith("npm:")){const e=i.slice(4);await NpmInstall(e,r)}else{if(!await utils.FileExsit(t))throw new Error("Package source not match");await copy(i,r)}await Load(r,e)}}catch(e){console.error(`加载模板初始化失败 错误信息\n${e.stack}`)}};
|
package/lib/start/dev.js
CHANGED
|
@@ -1,99 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
const chokidar = __importStar(require("chokidar"));
|
|
39
|
-
const index_js_1 = __importDefault(require("./../build/index.js"));
|
|
40
|
-
const index_js_2 = __importDefault(require("./../loger/index.js"));
|
|
41
|
-
const utils = __importStar(require("./../utils/index.js"));
|
|
42
|
-
const index_js_3 = __importDefault(require("./../lang/index.js"));
|
|
43
|
-
class Dev {
|
|
44
|
-
cwd;
|
|
45
|
-
baseDir;
|
|
46
|
-
build;
|
|
47
|
-
isBuilding = false;
|
|
48
|
-
pending = false;
|
|
49
|
-
constructor(cwd, baseDir) {
|
|
50
|
-
this.cwd = cwd;
|
|
51
|
-
this.baseDir = baseDir;
|
|
52
|
-
this.build = new index_js_1.default(cwd, baseDir);
|
|
53
|
-
}
|
|
54
|
-
async start() {
|
|
55
|
-
index_js_2.default.i("Dev", index_js_3.default.dev?.start || "开始即时监听构建");
|
|
56
|
-
await this.build.build();
|
|
57
|
-
this.startWatcher();
|
|
58
|
-
}
|
|
59
|
-
startWatcher() {
|
|
60
|
-
const watchPath = this.cwd;
|
|
61
|
-
const watcher = chokidar.watch(watchPath, {
|
|
62
|
-
ignoreInitial: true,
|
|
63
|
-
ignored: [
|
|
64
|
-
"**/dist/**",
|
|
65
|
-
"**/.git/**",
|
|
66
|
-
"**/node_modules/**",
|
|
67
|
-
"**/lib/data/cache/**",
|
|
68
|
-
"dist/**"
|
|
69
|
-
],
|
|
70
|
-
persistent: true,
|
|
71
|
-
usePolling: true,
|
|
72
|
-
interval: 150
|
|
73
|
-
});
|
|
74
|
-
watcher.on("all", async (event, filePath) => {
|
|
75
|
-
index_js_2.default.i("Dev", `${index_js_3.default.dev?.tip || "监听到变化"} ${event} ${filePath}`);
|
|
76
|
-
if (this.isBuilding) {
|
|
77
|
-
this.pending = true;
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
await this.rebuild();
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
async rebuild() {
|
|
84
|
-
this.isBuilding = true;
|
|
85
|
-
try {
|
|
86
|
-
index_js_2.default.i("Dev", index_js_3.default.dev?.start_d || "开始增量构建");
|
|
87
|
-
await this.build.build();
|
|
88
|
-
}
|
|
89
|
-
catch (err) {
|
|
90
|
-
index_js_2.default.e("Dev", (index_js_3.default.err_bulid || "构建错误") + utils.toString(err));
|
|
91
|
-
}
|
|
92
|
-
this.isBuilding = false;
|
|
93
|
-
if (this.pending) {
|
|
94
|
-
this.pending = false;
|
|
95
|
-
await this.rebuild();
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
module.exports = async (workDir, baseDir) => new Dev(workDir, baseDir).start();
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,i,r){void 0===r&&(r=i);var n=Object.getOwnPropertyDescriptor(t,i);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,r,n)}:function(e,t,i,r){void 0===r&&(r=i),e[r]=t[i]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var i={};if(null!=t)for(var r=e(t),n=0;n<r.length;n++)"default"!==r[n]&&__createBinding(i,t,r[n]);return __setModuleDefault(i,t),i}}(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};const chokidar=__importStar(require("chokidar")),index_js_1=__importDefault(require("./../build/index.js")),index_js_2=__importDefault(require("./../loger/index.js")),utils=__importStar(require("./../utils/index.js")),index_js_3=__importDefault(require("./../lang/index.js"));class Dev{cwd;baseDir;build;isBuilding=!1;pending=!1;constructor(e,t){this.cwd=e,this.baseDir=t,this.build=new index_js_1.default(e,t)}async start(){index_js_2.default.i("Dev",index_js_3.default.dev?.start||"开始即时监听构建"),await this.build.build(),this.startWatcher()}startWatcher(){const e=this.cwd;chokidar.watch(e,{ignoreInitial:!0,ignored:["**/dist/**","**/.git/**","**/node_modules/**","**/lib/data/cache/**","dist/**"],persistent:!0,usePolling:!0,interval:150}).on("all",async(e,t)=>{index_js_2.default.i("Dev",`${index_js_3.default.dev?.tip||"监听到变化"} ${e} ${t}`),this.isBuilding?this.pending=!0:await this.rebuild()})}async rebuild(){this.isBuilding=!0;try{index_js_2.default.i("Dev",index_js_3.default.dev?.start_d||"开始增量构建"),await this.build.build()}catch(e){index_js_2.default.e("Dev",(index_js_3.default.err_bulid||"构建错误")+utils.toString(e))}this.isBuilding=!1,this.pending&&(this.pending=!1,await this.rebuild())}}module.exports=async(e,t)=>new Dev(e,t).start();
|
package/lib/start/incg.js
CHANGED