create-warlock 1.0.9 → 1.0.10
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/cjs/commands/create-new-app/get-app-path.d.ts +2 -0
- package/cjs/commands/create-new-app/get-app-path.d.ts.map +1 -0
- package/cjs/commands/create-new-app/get-app-path.js +8 -0
- package/cjs/commands/create-new-app/get-app-path.js.map +1 -0
- package/cjs/commands/create-new-app/index.d.ts +2 -0
- package/cjs/commands/create-new-app/index.d.ts.map +1 -0
- package/cjs/commands/create-new-app/index.js +44 -0
- package/cjs/commands/create-new-app/index.js.map +1 -0
- package/cjs/commands/create-new-app/select-app-type.d.ts +2 -0
- package/cjs/commands/create-new-app/select-app-type.d.ts.map +1 -0
- package/cjs/commands/create-new-app/types.d.ts +9 -0
- package/cjs/commands/create-new-app/types.d.ts.map +1 -0
- package/cjs/commands/create-warlock-app/index.d.ts +3 -0
- package/cjs/commands/create-warlock-app/index.d.ts.map +1 -0
- package/cjs/commands/create-warlock-app/index.js +18 -0
- package/cjs/commands/create-warlock-app/index.js.map +1 -0
- package/cjs/helpers/app.d.ts +51 -0
- package/cjs/helpers/app.d.ts.map +1 -0
- package/cjs/helpers/app.js +127 -0
- package/cjs/helpers/app.js.map +1 -0
- package/cjs/helpers/exec.d.ts +10 -0
- package/cjs/helpers/exec.d.ts.map +1 -0
- package/cjs/helpers/exec.js +69 -0
- package/cjs/helpers/exec.js.map +1 -0
- package/cjs/helpers/package-manager.d.ts +6 -0
- package/cjs/helpers/package-manager.d.ts.map +1 -0
- package/cjs/helpers/package-manager.js +22 -0
- package/cjs/helpers/package-manager.js.map +1 -0
- package/cjs/helpers/paths.d.ts +4 -0
- package/cjs/helpers/paths.d.ts.map +1 -0
- package/cjs/helpers/paths.js +8 -0
- package/cjs/helpers/paths.js.map +1 -0
- package/cjs/helpers/project-builder-helpers.d.ts +7 -0
- package/cjs/helpers/project-builder-helpers.d.ts.map +1 -0
- package/cjs/helpers/project-builder-helpers.js +44 -0
- package/cjs/helpers/project-builder-helpers.js.map +1 -0
- package/cjs/index.d.ts +2 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +5 -0
- package/cjs/index.js.map +1 -0
- package/esm/commands/create-new-app/get-app-path.d.ts +2 -0
- package/esm/commands/create-new-app/get-app-path.d.ts.map +1 -0
- package/esm/commands/create-new-app/get-app-path.js +8 -0
- package/esm/commands/create-new-app/get-app-path.js.map +1 -0
- package/esm/commands/create-new-app/index.d.ts +2 -0
- package/esm/commands/create-new-app/index.d.ts.map +1 -0
- package/esm/commands/create-new-app/index.js +44 -0
- package/esm/commands/create-new-app/index.js.map +1 -0
- package/esm/commands/create-new-app/select-app-type.d.ts +2 -0
- package/esm/commands/create-new-app/select-app-type.d.ts.map +1 -0
- package/esm/commands/create-new-app/types.d.ts +9 -0
- package/esm/commands/create-new-app/types.d.ts.map +1 -0
- package/esm/commands/create-warlock-app/index.d.ts +3 -0
- package/esm/commands/create-warlock-app/index.d.ts.map +1 -0
- package/esm/commands/create-warlock-app/index.js +18 -0
- package/esm/commands/create-warlock-app/index.js.map +1 -0
- package/esm/helpers/app.d.ts +51 -0
- package/esm/helpers/app.d.ts.map +1 -0
- package/esm/helpers/app.js +127 -0
- package/esm/helpers/app.js.map +1 -0
- package/esm/helpers/exec.d.ts +10 -0
- package/esm/helpers/exec.d.ts.map +1 -0
- package/esm/helpers/exec.js +69 -0
- package/esm/helpers/exec.js.map +1 -0
- package/esm/helpers/package-manager.d.ts +6 -0
- package/esm/helpers/package-manager.d.ts.map +1 -0
- package/esm/helpers/package-manager.js +22 -0
- package/esm/helpers/package-manager.js.map +1 -0
- package/esm/helpers/paths.d.ts +4 -0
- package/esm/helpers/paths.d.ts.map +1 -0
- package/esm/helpers/paths.js +8 -0
- package/esm/helpers/paths.js.map +1 -0
- package/esm/helpers/project-builder-helpers.d.ts +7 -0
- package/esm/helpers/project-builder-helpers.d.ts.map +1 -0
- package/esm/helpers/project-builder-helpers.js +44 -0
- package/esm/helpers/project-builder-helpers.js.map +1 -0
- package/esm/index.d.ts +2 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +5 -0
- package/esm/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import {intro,text,isCancel,cancel,select}from'@clack/prompts';import {colors}from'@mongez/copper';import {App}from'../../helpers/app.js';import {getPackageManager,setPackageManager}from'../../helpers/package-manager.js';import {createWarlockApp}from'../create-warlock-app/index.js';import getAppPath from'./get-app-path.js';const appDetails = {
|
|
2
|
+
appName: "",
|
|
3
|
+
appType: "",
|
|
4
|
+
appPath: "",
|
|
5
|
+
pkgManager: "",
|
|
6
|
+
options: {},
|
|
7
|
+
};
|
|
8
|
+
async function createNewApp(createWarlockVersion) {
|
|
9
|
+
intro(`✨ Let's create a new ${colors.yellowBright("Warlock Js App")} ✨ ${colors.greenBright(`v` + createWarlockVersion)}`);
|
|
10
|
+
const appName = await text({
|
|
11
|
+
message: "Enter the app name",
|
|
12
|
+
placeholder: "warlock-app",
|
|
13
|
+
});
|
|
14
|
+
if (isCancel(appName) || !appName.trim()) {
|
|
15
|
+
cancel("Application name is required to create a new app");
|
|
16
|
+
process.exit(0);
|
|
17
|
+
}
|
|
18
|
+
const packageManager = await select({
|
|
19
|
+
message: "Select package manager to use 📦 ",
|
|
20
|
+
initialValue: getPackageManager(),
|
|
21
|
+
options: [
|
|
22
|
+
{
|
|
23
|
+
label: "Npm",
|
|
24
|
+
value: "npm",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
label: "Yarn",
|
|
28
|
+
value: "yarn",
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
label: "Pnpm",
|
|
32
|
+
value: "pnpm",
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
});
|
|
36
|
+
setPackageManager(packageManager);
|
|
37
|
+
appDetails.appName = appName;
|
|
38
|
+
appDetails.appPath = getAppPath(appName);
|
|
39
|
+
appDetails.pkgManager = packageManager;
|
|
40
|
+
if (!appDetails.appPath)
|
|
41
|
+
return;
|
|
42
|
+
appDetails.appType = "warlock";
|
|
43
|
+
createWarlockApp(new App(appDetails));
|
|
44
|
+
}export{createNewApp as default};//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/commands/create-new-app/index.ts"],"sourcesContent":[null],"names":[],"mappings":"qUAWA,MAAM,UAAU,GAAsB;AACpC,IAAA,OAAO,EAAE,EAAE;AACX,IAAA,OAAO,EAAE,EAAE;AACX,IAAA,OAAO,EAAE,EAAE;AACX,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,OAAO,EAAE,EAAE;CACZ,CAAC;AAEa,eAAe,YAAY,CAAC,oBAA4B,EAAA;AACrE,IAAA,KAAK,CACH,CAAwB,qBAAA,EAAA,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAA,GAAA,EAAM,MAAM,CAAC,WAAW,CAAC,CAAG,CAAA,CAAA,GAAG,oBAAoB,CAAC,CAAA,CAAE,CACpH,CAAC;AAEF,IAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC;AACzB,QAAA,OAAO,EAAE,oBAAoB;AAC7B,QAAA,WAAW,EAAE,aAAa;AAC3B,KAAA,CAAC,CAAC;IAEH,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE;QACxC,MAAM,CAAC,kDAAkD,CAAC,CAAC;AAC3D,QAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,KAAA;AAED,IAAA,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC;AAClC,QAAA,OAAO,EAAE,mCAAmC;QAC5C,YAAY,EAAE,iBAAiB,EAAE;AACjC,QAAA,OAAO,EAAE;AACP,YAAA;AACE,gBAAA,KAAK,EAAE,KAAK;AACZ,gBAAA,KAAK,EAAE,KAAK;AACb,aAAA;AACD,YAAA;AACE,gBAAA,KAAK,EAAE,MAAM;AACb,gBAAA,KAAK,EAAE,MAAM;AACd,aAAA;AACD,YAAA;AACE,gBAAA,KAAK,EAAE,MAAM;AACb,gBAAA,KAAK,EAAE,MAAM;AACd,aAAA;AACF,SAAA;AACF,KAAA,CAAC,CAAC;IAEH,iBAAiB,CAAC,cAAc,CAAC,CAAC;AAElC,IAAA,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;AAC7B,IAAA,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;AACzC,IAAA,UAAU,CAAC,UAAU,GAAG,cAAc,CAAC;IAEvC,IAAI,CAAC,UAAU,CAAC,OAAO;QAAE,OAAO;AAEhC,IAAA,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC;AAE/B,IAAA,gBAAgB,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select-app-type.d.ts","sourceRoot":"","sources":["../../../src/commands/create-new-app/select-app-type.ts"],"names":[],"mappings":"AAGA,wBAA8B,aAAa,iBAoB1C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/create-new-app/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,GAAG;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/create-warlock-app/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAGtC,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,GAAG,iBA4BtD"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {spinner}from'@clack/prompts';import {runPackageManagerCommand}from'../../helpers/package-manager.js';async function createWarlockApp(application) {
|
|
2
|
+
application.init().use("warlock").updatePackageJson().updateDotEnv();
|
|
3
|
+
await application.install();
|
|
4
|
+
const gitInstalled = await application.git();
|
|
5
|
+
if (gitInstalled) {
|
|
6
|
+
const loading = spinner();
|
|
7
|
+
loading.start("📂 Preparing Huskier 🚀");
|
|
8
|
+
await application.exec("npx huskier-init");
|
|
9
|
+
loading.stop("📂 Huskier initialized 🔗");
|
|
10
|
+
}
|
|
11
|
+
if (application.isInstalled) {
|
|
12
|
+
const loading = spinner();
|
|
13
|
+
loading.start("🔑 Generating JWT Secret");
|
|
14
|
+
await application.exec(runPackageManagerCommand("jwt"));
|
|
15
|
+
loading.stop("🔑 JWT Secret generated 🔒");
|
|
16
|
+
}
|
|
17
|
+
application.terminate();
|
|
18
|
+
}export{createWarlockApp};//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/commands/create-warlock-app/index.ts"],"sourcesContent":[null],"names":[],"mappings":"6GAIO,eAAe,gBAAgB,CAAC,WAAgB,EAAA;AACrD,IAAA,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;AAErE,IAAA,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;AAE5B,IAAA,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC;AAE7C,IAAA,IAAI,YAAY,EAAE;AAChB,QAAA,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC;AAE1B,QAAA,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAEzC,QAAA,MAAM,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AAE3C,QAAA,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;AAC3C,KAAA;IAED,IAAI,WAAW,CAAC,WAAW,EAAE;AAC3B,QAAA,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC;AAE1B,QAAA,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAE1C,MAAM,WAAW,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;AAExD,QAAA,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;AAC5C,KAAA;IAED,WAAW,CAAC,SAAS,EAAE,CAAC;AAC1B"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Application } from "src/commands/create-new-app/types";
|
|
2
|
+
import { Template } from "src/helpers/paths";
|
|
3
|
+
export declare class App {
|
|
4
|
+
protected app: Application;
|
|
5
|
+
/**
|
|
6
|
+
* Resolved files
|
|
7
|
+
*/
|
|
8
|
+
protected files: Record<string, FileManager>;
|
|
9
|
+
isInstalled: boolean;
|
|
10
|
+
constructor(app: Application);
|
|
11
|
+
use(templateName: Template): this;
|
|
12
|
+
init(): this;
|
|
13
|
+
terminate(): void;
|
|
14
|
+
install(): Promise<this>;
|
|
15
|
+
exec(command: string): Promise<boolean>;
|
|
16
|
+
git(): Promise<boolean>;
|
|
17
|
+
updatePackageJson(): this;
|
|
18
|
+
/**
|
|
19
|
+
* Get package json file
|
|
20
|
+
*/
|
|
21
|
+
get package(): FileManager;
|
|
22
|
+
updateDotEnv(): this;
|
|
23
|
+
/**
|
|
24
|
+
* Get env file to update
|
|
25
|
+
*/
|
|
26
|
+
get env(): FileManager;
|
|
27
|
+
get name(): string;
|
|
28
|
+
get path(): string;
|
|
29
|
+
file(relativePath: string): FileManager;
|
|
30
|
+
json(relativePath: string): FileManager;
|
|
31
|
+
}
|
|
32
|
+
export declare function app(app: Application): App;
|
|
33
|
+
export declare class FileManager {
|
|
34
|
+
protected filePath: any;
|
|
35
|
+
content: string;
|
|
36
|
+
constructor(filePath: any);
|
|
37
|
+
protected parseContent(): void;
|
|
38
|
+
replace(search: string, replace: string): this;
|
|
39
|
+
replaceAll(search: string, replace: string): this;
|
|
40
|
+
save(): void;
|
|
41
|
+
}
|
|
42
|
+
export declare class JsonFileManager extends FileManager {
|
|
43
|
+
protected parseContent(): void;
|
|
44
|
+
save(): void;
|
|
45
|
+
has(key: string): boolean;
|
|
46
|
+
replace(key: string, value: any): this;
|
|
47
|
+
replaceAll(key: string, value: any): this;
|
|
48
|
+
}
|
|
49
|
+
export declare function file(path: string): FileManager;
|
|
50
|
+
export declare function jsonFile(path: string): JsonFileManager;
|
|
51
|
+
//# sourceMappingURL=app.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/helpers/app.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE,OAAO,EAAE,QAAQ,EAAY,MAAM,mBAAmB,CAAC;AAQvD,qBAAa,GAAG;IAQK,SAAS,CAAC,GAAG,EAAE,WAAW;IAP7C;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAM;IAE3C,WAAW,UAAS;gBAEE,GAAG,EAAE,WAAW;IAEtC,GAAG,CAAC,YAAY,EAAE,QAAQ;IAY1B,IAAI;IAIJ,SAAS;IAIH,OAAO;IAMP,IAAI,CAAC,OAAO,EAAE,MAAM;IAMpB,GAAG;IAIT,iBAAiB;IASxB;;OAEG;IACH,IAAW,OAAO,gBAEjB;IAEM,YAAY;IAMnB;;OAEG;IACH,IAAW,GAAG,gBAEb;IAED,IAAW,IAAI,WAEd;IAED,IAAW,IAAI,WAEd;IAEM,IAAI,CAAC,YAAY,EAAE,MAAM;IAUzB,IAAI,CAAC,YAAY,EAAE,MAAM;CASjC;AAED,wBAAgB,GAAG,CAAC,GAAG,EAAE,WAAW,OAEnC;AAED,qBAAa,WAAW;IAEH,SAAS,CAAC,QAAQ;IAD9B,OAAO,EAAG,MAAM,CAAC;gBACK,QAAQ,KAAA;IAIrC,SAAS,CAAC,YAAY;IAIf,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAMvC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAM1C,IAAI;CAGZ;AAED,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,SAAS,CAAC,YAAY;IAIf,IAAI;IAIJ,GAAG,CAAC,GAAG,EAAE,MAAM;IAIf,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAM/B,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;CAO1C;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,eAEhC;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,mBAEpC"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import {copyDirectory,fileExists,copyFile,renameFile,getFile,putFile,getJsonFile,putJsonFile}from'@mongez/fs';import path__default from'path';import {executeCommand}from'./exec.js';import {template}from'./paths.js';import {allDone,installDependencies,initializeGitRepository}from'./project-builder-helpers.js';import {getPackageManager}from'./package-manager.js';class App {
|
|
2
|
+
app;
|
|
3
|
+
/**
|
|
4
|
+
* Resolved files
|
|
5
|
+
*/
|
|
6
|
+
files = {};
|
|
7
|
+
isInstalled = false;
|
|
8
|
+
constructor(app) {
|
|
9
|
+
this.app = app;
|
|
10
|
+
}
|
|
11
|
+
use(templateName) {
|
|
12
|
+
copyDirectory(template(templateName), this.path);
|
|
13
|
+
if (fileExists(this.path + "/.env.example")) {
|
|
14
|
+
copyFile(this.path + "/.env.example", this.path + "/.env");
|
|
15
|
+
}
|
|
16
|
+
renameFile(this.path + "/_.gitignore", this.path + "/.gitignore");
|
|
17
|
+
return this;
|
|
18
|
+
}
|
|
19
|
+
init() {
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
22
|
+
terminate() {
|
|
23
|
+
allDone(this.name);
|
|
24
|
+
}
|
|
25
|
+
async install() {
|
|
26
|
+
this.isInstalled = await installDependencies(this.path);
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
async exec(command) {
|
|
30
|
+
const [commandName, ...optionsList] = command.split(" ");
|
|
31
|
+
return await executeCommand(commandName, optionsList, this.path);
|
|
32
|
+
}
|
|
33
|
+
async git() {
|
|
34
|
+
return await initializeGitRepository(this.path);
|
|
35
|
+
}
|
|
36
|
+
updatePackageJson() {
|
|
37
|
+
this.package
|
|
38
|
+
.replace("name", this.name.replaceAll("/", "-"))
|
|
39
|
+
.replaceAll("yarn", getPackageManager())
|
|
40
|
+
.save();
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Get package json file
|
|
45
|
+
*/
|
|
46
|
+
get package() {
|
|
47
|
+
return this.json("package.json");
|
|
48
|
+
}
|
|
49
|
+
updateDotEnv() {
|
|
50
|
+
this.file(".env").replaceAll("appName", this.name).save();
|
|
51
|
+
return this;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Get env file to update
|
|
55
|
+
*/
|
|
56
|
+
get env() {
|
|
57
|
+
return this.file(".env");
|
|
58
|
+
}
|
|
59
|
+
get name() {
|
|
60
|
+
return this.app.appName;
|
|
61
|
+
}
|
|
62
|
+
get path() {
|
|
63
|
+
return this.app.appPath;
|
|
64
|
+
}
|
|
65
|
+
file(relativePath) {
|
|
66
|
+
const fullPath = path__default.resolve(this.path, relativePath);
|
|
67
|
+
if (!this.files[fullPath]) {
|
|
68
|
+
this.files[fullPath] = file(fullPath);
|
|
69
|
+
}
|
|
70
|
+
return this.files[fullPath];
|
|
71
|
+
}
|
|
72
|
+
json(relativePath) {
|
|
73
|
+
const fullPath = path__default.resolve(this.path, relativePath);
|
|
74
|
+
if (!this.files[fullPath]) {
|
|
75
|
+
this.files[fullPath] = jsonFile(fullPath);
|
|
76
|
+
}
|
|
77
|
+
return this.files[fullPath];
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
class FileManager {
|
|
81
|
+
filePath;
|
|
82
|
+
content;
|
|
83
|
+
constructor(filePath) {
|
|
84
|
+
this.filePath = filePath;
|
|
85
|
+
this.parseContent();
|
|
86
|
+
}
|
|
87
|
+
parseContent() {
|
|
88
|
+
this.content = getFile(this.filePath);
|
|
89
|
+
}
|
|
90
|
+
replace(search, replace) {
|
|
91
|
+
this.content = this.content.replace(search, replace);
|
|
92
|
+
return this;
|
|
93
|
+
}
|
|
94
|
+
replaceAll(search, replace) {
|
|
95
|
+
this.content = this.content.replaceAll(search, replace);
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
save() {
|
|
99
|
+
putFile(this.filePath, this.content);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
class JsonFileManager extends FileManager {
|
|
103
|
+
parseContent() {
|
|
104
|
+
this.content = getJsonFile(this.filePath);
|
|
105
|
+
}
|
|
106
|
+
save() {
|
|
107
|
+
putJsonFile(this.filePath, this.content);
|
|
108
|
+
}
|
|
109
|
+
has(key) {
|
|
110
|
+
return this.content[key] !== undefined;
|
|
111
|
+
}
|
|
112
|
+
replace(key, value) {
|
|
113
|
+
this.content[key] = value;
|
|
114
|
+
return this;
|
|
115
|
+
}
|
|
116
|
+
replaceAll(key, value) {
|
|
117
|
+
const contentAsString = JSON.stringify(this.content);
|
|
118
|
+
this.content = JSON.parse(contentAsString.replaceAll(key, value));
|
|
119
|
+
return this;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
function file(path) {
|
|
123
|
+
return new FileManager(path);
|
|
124
|
+
}
|
|
125
|
+
function jsonFile(path) {
|
|
126
|
+
return new JsonFileManager(path);
|
|
127
|
+
}export{App,FileManager,JsonFileManager,file,jsonFile};//# sourceMappingURL=app.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.js","sources":["../../src/helpers/app.ts"],"sourcesContent":[null],"names":["path"],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export default function exec(command: string, options?: any): Promise<any>;
|
|
2
|
+
/**
|
|
3
|
+
* This function directly executes a command
|
|
4
|
+
*/
|
|
5
|
+
export declare function executeCommand(cmd: string, args: string[], cwd: string): Promise<boolean>;
|
|
6
|
+
export declare function runCommand(cmd: string, args: string[], cwd: string): {
|
|
7
|
+
abort: () => Promise<void>;
|
|
8
|
+
install: Promise<boolean>;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=exec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../src/helpers/exec.ts"],"names":[],"mappings":"AAKA,wBAA8B,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,gBAWpE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,oBA0B5E;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM;;;EAwClE"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import {log}from'@clack/prompts';import {colors}from'@mongez/copper';import spawn from'cross-spawn';/**
|
|
2
|
+
* This function directly executes a command
|
|
3
|
+
*/
|
|
4
|
+
async function executeCommand(cmd, args, cwd) {
|
|
5
|
+
return new Promise(resolve => {
|
|
6
|
+
const child = spawn(cmd, args, {
|
|
7
|
+
cwd,
|
|
8
|
+
stdio: "ignore",
|
|
9
|
+
});
|
|
10
|
+
child.on("error", e => {
|
|
11
|
+
if (e) {
|
|
12
|
+
if (e.message) {
|
|
13
|
+
log.error(colors.red(String(e.message)) + `\n\n`);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
log.error(colors.red(String(e)) + `\n\n`);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
resolve(false);
|
|
20
|
+
});
|
|
21
|
+
child.on("close", code => {
|
|
22
|
+
if (code === 0) {
|
|
23
|
+
resolve(true);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
resolve(false);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
function runCommand(cmd, args, cwd) {
|
|
32
|
+
let child;
|
|
33
|
+
const install = new Promise(resolve => {
|
|
34
|
+
try {
|
|
35
|
+
child = spawn(cmd, args, {
|
|
36
|
+
cwd,
|
|
37
|
+
stdio: "ignore",
|
|
38
|
+
});
|
|
39
|
+
child.on("error", e => {
|
|
40
|
+
if (e) {
|
|
41
|
+
if (e.message) {
|
|
42
|
+
log.error(colors.red(String(e.message)) + `\n\n`);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
log.error(colors.red(String(e)) + `\n\n`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
resolve(false);
|
|
49
|
+
});
|
|
50
|
+
child.on("close", code => {
|
|
51
|
+
if (code === 0) {
|
|
52
|
+
resolve(true);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
resolve(false);
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
catch (e) {
|
|
60
|
+
resolve(false);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
const abort = async () => {
|
|
64
|
+
if (child) {
|
|
65
|
+
child.kill("SIGINT");
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
return { abort, install };
|
|
69
|
+
}export{executeCommand,runCommand};//# sourceMappingURL=exec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exec.js","sources":["../../src/helpers/exec.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare function getPackageManager(): any;
|
|
2
|
+
export declare function setPackageManager(packageManager: string): void;
|
|
3
|
+
export declare function installCommand(): string;
|
|
4
|
+
export declare function startCommand(): string;
|
|
5
|
+
export declare function runPackageManagerCommand(command: string): string;
|
|
6
|
+
//# sourceMappingURL=package-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/helpers/package-manager.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,QAQhC;AAED,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,MAAM,QAEvD;AAED,wBAAgB,cAAc,WAE7B;AAED,wBAAgB,YAAY,WAI3B;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,UAMvD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import detectPackageManager from'which-pm-runs';let detectedPackageManager;
|
|
2
|
+
function getPackageManager() {
|
|
3
|
+
if (detectedPackageManager) {
|
|
4
|
+
return detectedPackageManager;
|
|
5
|
+
}
|
|
6
|
+
const packageManager = detectPackageManager();
|
|
7
|
+
return packageManager.name || "npm";
|
|
8
|
+
}
|
|
9
|
+
function setPackageManager(packageManager) {
|
|
10
|
+
detectedPackageManager = packageManager;
|
|
11
|
+
}
|
|
12
|
+
function startCommand() {
|
|
13
|
+
if (getPackageManager() === "npm")
|
|
14
|
+
return "npm run start";
|
|
15
|
+
return `${getPackageManager()} start`;
|
|
16
|
+
}
|
|
17
|
+
function runPackageManagerCommand(command) {
|
|
18
|
+
const packageManager = getPackageManager();
|
|
19
|
+
if (packageManager === "npm")
|
|
20
|
+
return `npm run ${command}`;
|
|
21
|
+
return `${packageManager} ${command}`;
|
|
22
|
+
}export{getPackageManager,runPackageManagerCommand,setPackageManager,startCommand};//# sourceMappingURL=package-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-manager.js","sources":["../../src/helpers/package-manager.ts"],"sourcesContent":[null],"names":[],"mappings":"gDAEA,IAAI,sBAA0C,CAAC;SAE/B,iBAAiB,GAAA;AAC/B,IAAA,IAAI,sBAAsB,EAAE;AAC1B,QAAA,OAAO,sBAAsB,CAAC;AAC/B,KAAA;AAED,IAAA,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC;AAE9C,IAAA,OAAO,cAAc,CAAC,IAAI,IAAI,KAAK,CAAC;AACtC,CAAC;AAEK,SAAU,iBAAiB,CAAC,cAAsB,EAAA;IACtD,sBAAsB,GAAG,cAAc,CAAC;AAC1C,CAAC;SAMe,YAAY,GAAA;IAC1B,IAAI,iBAAiB,EAAE,KAAK,KAAK;AAAE,QAAA,OAAO,eAAe,CAAC;AAE1D,IAAA,OAAO,CAAG,EAAA,iBAAiB,EAAE,CAAA,MAAA,CAAQ,CAAC;AACxC,CAAC;AAEK,SAAU,wBAAwB,CAAC,OAAe,EAAA;AACtD,IAAA,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,IAAI,cAAc,KAAK,KAAK;QAAE,OAAO,CAAA,QAAA,EAAW,OAAO,CAAA,CAAE,CAAC;AAE1D,IAAA,OAAO,CAAG,EAAA,cAAc,CAAI,CAAA,EAAA,OAAO,EAAE,CAAC;AACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/helpers/paths.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,QAAQ,GAAG,SAAS,CAAC;AAEjC,wBAAgB,QAAQ,CAAC,YAAY,EAAE,QAAQ,GAAG,MAAM,CAEvD;AAED,wBAAgB,WAAW,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEtD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import path__default from'path';import {fileURLToPath}from'url';const __filename = fileURLToPath(import.meta.url);
|
|
2
|
+
const __dirname = path__default.dirname(__filename);
|
|
3
|
+
function template(templateName) {
|
|
4
|
+
return path__default.resolve(__dirname, "../", "../", "templates", templateName);
|
|
5
|
+
}
|
|
6
|
+
function packageRoot(...paths) {
|
|
7
|
+
return path__default.resolve(__dirname, "../", "../", ...paths);
|
|
8
|
+
}export{packageRoot,template};//# sourceMappingURL=paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.js","sources":["../../src/helpers/paths.ts"],"sourcesContent":[null],"names":["path"],"mappings":"gEAGA,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAElD,MAAM,SAAS,GAAGA,aAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAIrC,SAAU,QAAQ,CAAC,YAAsB,EAAA;AAC7C,IAAA,OAAOA,aAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;AAC1E,CAAC;AAEe,SAAA,WAAW,CAAC,GAAG,KAAe,EAAA;AAC5C,IAAA,OAAOA,aAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC;AACzD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Template } from "./paths";
|
|
2
|
+
export declare function initializeGitRepository(appPath: string): Promise<boolean>;
|
|
3
|
+
export declare function installDependencies(appPath: string): Promise<boolean>;
|
|
4
|
+
export declare function updateEnvFile(appPath: string, appName: string): Promise<void>;
|
|
5
|
+
export declare function copyTemplateFiles(templateName: Template, appPath: string, _appName: string): Promise<void>;
|
|
6
|
+
export declare function allDone(appName: string): Promise<void>;
|
|
7
|
+
//# sourceMappingURL=project-builder-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-builder-helpers.d.ts","sourceRoot":"","sources":["../../src/helpers/project-builder-helpers.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,QAAQ,EAAY,MAAM,SAAS,CAAC;AAE7C,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,MAAM,oBA2B5D;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,oBAuBxD;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAiCnE;AAED,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,QAAQ,EACtB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,iBAUjB;AAED,wBAAsB,OAAO,CAAC,OAAO,EAAE,MAAM,iBAiB5C"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import {confirm,spinner,outro}from'@clack/prompts';import {colors}from'@mongez/copper';import'@mongez/fs';import'path';import {executeCommand,runCommand}from'./exec.js';import {getPackageManager,startCommand}from'./package-manager.js';import'./paths.js';async function initializeGitRepository(appPath) {
|
|
2
|
+
if ((await confirm({
|
|
3
|
+
message: "Do you want to initialize a git repository?",
|
|
4
|
+
initialValue: true,
|
|
5
|
+
})) === false)
|
|
6
|
+
return false;
|
|
7
|
+
const loading = spinner();
|
|
8
|
+
loading.start("📂 Initializing git repository 🚀");
|
|
9
|
+
// initialize git repository
|
|
10
|
+
await executeCommand(`git`, ["init"], appPath);
|
|
11
|
+
// switching to `main` branch
|
|
12
|
+
await executeCommand(`git`, ["checkout", "-b", "main"], appPath);
|
|
13
|
+
// add files
|
|
14
|
+
await executeCommand(`git`, ["add", "."], appPath);
|
|
15
|
+
// commit files
|
|
16
|
+
await executeCommand(`git`, ["commit", "-m", "Initial commit ⚡️"], appPath);
|
|
17
|
+
loading.stop("📂 Git initialized 🔗");
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
async function installDependencies(appPath) {
|
|
21
|
+
const result = await runCommand(getPackageManager(), ["install"], appPath);
|
|
22
|
+
const confirmed = await confirm({
|
|
23
|
+
message: "Do you want to install the project dependencies?",
|
|
24
|
+
initialValue: true,
|
|
25
|
+
});
|
|
26
|
+
if (confirmed === false) {
|
|
27
|
+
result.abort();
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
const loading = spinner();
|
|
31
|
+
loading.start("📦 Installing dependencies ⏳");
|
|
32
|
+
await result.install;
|
|
33
|
+
loading.stop("📦 Dependencies installed successfully ✅");
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
async function allDone(appName) {
|
|
37
|
+
outro("🌟 " +
|
|
38
|
+
colors.bgGreenBright("DONE") +
|
|
39
|
+
" now you're ready to go! Type the following or copy/paste it into your terminal to get started 🚀 ✅");
|
|
40
|
+
console.log(colors.cyan(`cd ${appName} && ${startCommand()}`));
|
|
41
|
+
// make an empty line
|
|
42
|
+
console.log();
|
|
43
|
+
console.log(`If you are using VSCode, it's recommended to install the 🛠️ ${colors.yellow(`Generator Z`)} extension. It generates code snippets for you! 🚀`);
|
|
44
|
+
}export{allDone,initializeGitRepository,installDependencies};//# sourceMappingURL=project-builder-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-builder-helpers.js","sources":["../../src/helpers/project-builder-helpers.ts"],"sourcesContent":[null],"names":[],"mappings":"8PAeO,eAAe,uBAAuB,CAAC,OAAe,EAAA;IAC3D,IACE,CAAC,MAAM,OAAO,CAAC;AACb,QAAA,OAAO,EAAE,6CAA6C;AACtD,QAAA,YAAY,EAAE,IAAI;KACnB,CAAC,MAAM,KAAK;AAEb,QAAA,OAAO,KAAK,CAAC;AAEf,IAAA,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC;AAE1B,IAAA,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;;IAGnD,MAAM,cAAc,CAAC,CAAA,GAAA,CAAK,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;;AAE/C,IAAA,MAAM,cAAc,CAAC,CAAK,GAAA,CAAA,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;;AAGjE,IAAA,MAAM,cAAc,CAAC,CAAK,GAAA,CAAA,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;;AAGnD,IAAA,MAAM,cAAc,CAAC,CAAK,GAAA,CAAA,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,CAAC;AAE5E,IAAA,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;AAEtC,IAAA,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,eAAe,mBAAmB,CAAC,OAAe,EAAA;AACvD,IAAA,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;AAE3E,IAAA,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;AAC9B,QAAA,OAAO,EAAE,kDAAkD;AAC3D,QAAA,YAAY,EAAE,IAAI;AACnB,KAAA,CAAC,CAAC;IAEH,IAAI,SAAS,KAAK,KAAK,EAAE;QACvB,MAAM,CAAC,KAAK,EAAE,CAAC;AAEf,QAAA,OAAO,KAAK,CAAC;AACd,KAAA;AAED,IAAA,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC;AAE1B,IAAA,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAE9C,MAAM,MAAM,CAAC,OAAO,CAAC;AAErB,IAAA,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;AAEzD,IAAA,OAAO,IAAI,CAAC;AACd,CAAC;AAoDM,eAAe,OAAO,CAAC,OAAe,EAAA;AAC3C,IAAA,KAAK,CACH,KAAK;AACH,QAAA,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;AAC5B,QAAA,qGAAqG,CACxG,CAAC;AAEF,IAAA,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAM,GAAA,EAAA,OAAO,OAAO,YAAY,EAAE,CAAE,CAAA,CAAC,CAAC,CAAC;;IAG/D,OAAO,CAAC,GAAG,EAAE,CAAC;AAEd,IAAA,OAAO,CAAC,GAAG,CACT,CAAA,6DAAA,EAAgE,MAAM,CAAC,MAAM,CAC3E,CAAa,WAAA,CAAA,CACd,CAAoD,kDAAA,CAAA,CACtD,CAAC;AACJ"}
|
package/esm/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,SAAS,SAIhC"}
|
package/esm/index.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import {getJsonFile}from'@mongez/fs';import createNewApp from'./commands/create-new-app/index.js';import {packageRoot}from'./helpers/paths.js';function createApp() {
|
|
2
|
+
const packageJson = getJsonFile(packageRoot("package.json"));
|
|
3
|
+
const createWarlockVersion = packageJson.version;
|
|
4
|
+
createNewApp(createWarlockVersion);
|
|
5
|
+
}export{createApp as default};//# sourceMappingURL=index.js.map
|
package/esm/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":"+IAIc,SAAU,SAAS,GAAA;IAC/B,MAAM,WAAW,GAAQ,WAAW,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC;AAClE,IAAA,MAAM,oBAAoB,GAAG,WAAW,CAAC,OAAO,CAAC;IACjD,YAAY,CAAC,oBAAoB,CAAC,CAAC;AACrC"}
|