@lilaquadrat/cli 0.9.1
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/lib/functions/template.d.ts +9 -0
- package/lib/functions/template.js +62 -0
- package/lib/functions/template.js.map +1 -0
- package/lib/package.json +56 -0
- package/lib/src/config.d.ts +9 -0
- package/lib/src/config.js +54 -0
- package/lib/src/config.js.map +1 -0
- package/lib/src/config.prompt copy.d.ts +3 -0
- package/lib/src/config.prompt copy.js +64 -0
- package/lib/src/config.prompt copy.js.map +1 -0
- package/lib/src/config.prompt.d.ts +3 -0
- package/lib/src/config.prompt.js +29 -0
- package/lib/src/config.prompt.js.map +1 -0
- package/lib/src/create.prompt.d.ts +26 -0
- package/lib/src/create.prompt.js +48 -0
- package/lib/src/create.prompt.js.map +1 -0
- package/lib/src/definitions.d.ts +58 -0
- package/lib/src/definitions.js +99 -0
- package/lib/src/definitions.js.map +1 -0
- package/lib/src/index.d.ts +2 -0
- package/lib/src/index.js +112 -0
- package/lib/src/index.js.map +1 -0
- package/lib/src/login.d.ts +12 -0
- package/lib/src/login.js +202 -0
- package/lib/src/login.js.map +1 -0
- package/lib/src/logout.d.ts +2 -0
- package/lib/src/logout.js +13 -0
- package/lib/src/logout.js.map +1 -0
- package/lib/src/mode.prompt.d.ts +3 -0
- package/lib/src/mode.prompt.js +42 -0
- package/lib/src/mode.prompt.js.map +1 -0
- package/lib/src/publish.d.ts +2 -0
- package/lib/src/publish.js +91 -0
- package/lib/src/publish.js.map +1 -0
- package/lib/src/status.d.ts +2 -0
- package/lib/src/status.js +31 -0
- package/lib/src/status.js.map +1 -0
- package/lib/src/store.d.ts +6 -0
- package/lib/src/store.js +29 -0
- package/lib/src/store.js.map +1 -0
- package/lib/src/user.d.ts +11 -0
- package/lib/src/user.js +43 -0
- package/lib/src/user.js.map +1 -0
- package/package.json +56 -0
- package/source/apps/app.ts.hbs +10 -0
- package/source/apps/home.screen.vue.hbs +16 -0
- package/source/apps/routes.ts.hbs +15 -0
- package/source/moduleEditor/modules.html.hbs +27 -0
- package/source/moduleEditor/modules.ts.hbs +18 -0
- package/source/modules/modules.vue.hbs +21 -0
- package/source/partials/partials.vue.hbs +22 -0
- package/source/store/state.d.ts.hbs +6 -0
- package/source/store/store.ts.hbs +27 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
declare const render: (variables: Record<string, string>, folder: string, file: string) => string;
|
|
2
|
+
declare const renderAll: (variables: Record<string, string>, definition: {
|
|
3
|
+
[key: string]: any;
|
|
4
|
+
}) => Record<string, any>[];
|
|
5
|
+
declare const create: (variables: Record<string, string>, definition: {
|
|
6
|
+
[key: string]: any;
|
|
7
|
+
}, baseFolder: string) => void;
|
|
8
|
+
export default render;
|
|
9
|
+
export { renderAll, create, };
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.create = exports.renderAll = void 0;
|
|
7
|
+
const handlebars_1 = __importDefault(require("handlebars"));
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
10
|
+
const render = (variables, folder, file) => {
|
|
11
|
+
const template = handlebars_1.default.compile(fs_1.default.readFileSync(`${__dirname}/../../source/${folder}/${file}`).toString());
|
|
12
|
+
return template({
|
|
13
|
+
...variables,
|
|
14
|
+
nameUppercase: `${variables.name?.slice(0, 1).toUpperCase()}${variables.name?.slice(1)}`,
|
|
15
|
+
nameCamelCase: variables.name.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (m, chr) => chr.toUpperCase()),
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
const renderAll = (variables, definition) => {
|
|
19
|
+
const rendered = [];
|
|
20
|
+
definition.files.forEach((file) => {
|
|
21
|
+
const filename = file.options?.noPreName ? file.extension : `${variables.name}.${file.extension}`;
|
|
22
|
+
rendered.push({
|
|
23
|
+
filedata: render(variables, definition.sourceFolder, file.template),
|
|
24
|
+
definition: file,
|
|
25
|
+
filename,
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
return rendered;
|
|
29
|
+
};
|
|
30
|
+
exports.renderAll = renderAll;
|
|
31
|
+
const create = (variables, definition, baseFolder) => {
|
|
32
|
+
const renderedFiles = renderAll(variables, definition);
|
|
33
|
+
if (definition.folders) {
|
|
34
|
+
definition.folders.forEach((single) => {
|
|
35
|
+
fs_1.default.mkdirSync(`${baseFolder}/${definition.targetFolder}/${variables.name}/${single}`, { recursive: true });
|
|
36
|
+
console.log(chalk_1.default.green(`created folder ${baseFolder}/${definition.targetFolder}/${variables.name}/${single}`));
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
renderedFiles.forEach((single) => {
|
|
40
|
+
const targetFolder = definition.options?.subfolder === false
|
|
41
|
+
? `${baseFolder}/${definition.targetFolder}`
|
|
42
|
+
: `${baseFolder}/${definition.targetFolder}/${variables.name}`;
|
|
43
|
+
const targetFileArray = [baseFolder, definition.targetFolder];
|
|
44
|
+
if (single.definition.options?.subfolder)
|
|
45
|
+
targetFileArray.push(variables.name);
|
|
46
|
+
if (single.definition.target)
|
|
47
|
+
targetFileArray.push(single.definition.target);
|
|
48
|
+
targetFileArray.push(single.filename);
|
|
49
|
+
const targetFile = targetFileArray.join('/');
|
|
50
|
+
try {
|
|
51
|
+
fs_1.default.mkdirSync(targetFolder, { recursive: true });
|
|
52
|
+
fs_1.default.writeFileSync(targetFile, single.filedata);
|
|
53
|
+
console.log(chalk_1.default.green(`created file ${targetFile}`));
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
console.error(error);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
exports.create = create;
|
|
61
|
+
exports.default = render;
|
|
62
|
+
//# sourceMappingURL=template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../functions/template.ts"],"names":[],"mappings":"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"}
|
package/lib/package.json
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lilaquadrat/cli",
|
|
3
|
+
"version": "0.9.1",
|
|
4
|
+
"description": "CLI for studio app and studio renderer",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"homepage": "https://lilaquadrat.de",
|
|
7
|
+
"author": {
|
|
8
|
+
"email": "m.schuebel@lila2.de",
|
|
9
|
+
"name": "Mathias Schübel",
|
|
10
|
+
"url": "https://lilaquadrat.de"
|
|
11
|
+
},
|
|
12
|
+
"scripts": {
|
|
13
|
+
"build": "tsc",
|
|
14
|
+
"prepublish": "tsc",
|
|
15
|
+
"cli": "node lib/src/index.js"
|
|
16
|
+
},
|
|
17
|
+
"engines": {
|
|
18
|
+
"node": ">=14",
|
|
19
|
+
"yarn": ">=1.22"
|
|
20
|
+
},
|
|
21
|
+
"devDependencies": {
|
|
22
|
+
"@types/archiver": "^5.3.1",
|
|
23
|
+
"@types/inquirer": "^8.1.3",
|
|
24
|
+
"@types/node": "^17.0.8",
|
|
25
|
+
"@typescript-eslint/eslint-plugin": "^5.9.1",
|
|
26
|
+
"@typescript-eslint/parser": "^5.9.1",
|
|
27
|
+
"eslint": "^8.6.0",
|
|
28
|
+
"eslint-config-airbnb-base": "15.0.0",
|
|
29
|
+
"eslint-config-airbnb-typescript": "^16.1.0",
|
|
30
|
+
"eslint-import-resolver-typescript": "^2.5.0",
|
|
31
|
+
"eslint-plugin-import": "^2.25.4",
|
|
32
|
+
"eslint-plugin-promise": "^6.0.0"
|
|
33
|
+
},
|
|
34
|
+
"dependencies": {
|
|
35
|
+
"archiver": "^5.0.0",
|
|
36
|
+
"axios": "^0.24.0",
|
|
37
|
+
"chalk": "^4.1.2",
|
|
38
|
+
"clear": "^0.1.0",
|
|
39
|
+
"commander": "^8.3.0",
|
|
40
|
+
"filesize": "^8.0.6",
|
|
41
|
+
"form-data": "^4.0.0",
|
|
42
|
+
"handlebars": "^4.7.6",
|
|
43
|
+
"inquirer": "^8.2.0",
|
|
44
|
+
"open": "^8.4.0",
|
|
45
|
+
"typescript": "^4.5.4"
|
|
46
|
+
},
|
|
47
|
+
"files": [
|
|
48
|
+
"lib/**/*",
|
|
49
|
+
"source/**/*"
|
|
50
|
+
],
|
|
51
|
+
"bin": {
|
|
52
|
+
"lila": "lib/src/index.js"
|
|
53
|
+
},
|
|
54
|
+
"exports": "./lib/src/index.js",
|
|
55
|
+
"types": "lib/src/index.d.ts"
|
|
56
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
declare const baseFolder: string;
|
|
2
|
+
declare const port = 1337;
|
|
3
|
+
export default baseFolder;
|
|
4
|
+
declare const config: (company: string, project: string) => void;
|
|
5
|
+
declare const setMode: (mode: Data['mode'], dev?: boolean, endpoints?: Data['endpoints']) => void;
|
|
6
|
+
declare const modeIsSet: () => boolean;
|
|
7
|
+
declare const getApi: () => string;
|
|
8
|
+
declare const getMedia: () => string;
|
|
9
|
+
export { port, baseFolder, config, setMode, getApi, getMedia, modeIsSet, };
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.modeIsSet = exports.getMedia = exports.getApi = exports.setMode = exports.config = exports.baseFolder = exports.port = void 0;
|
|
7
|
+
const store_1 = __importDefault(require("./store"));
|
|
8
|
+
const baseFolder = process.cwd();
|
|
9
|
+
exports.baseFolder = baseFolder;
|
|
10
|
+
const port = 1337;
|
|
11
|
+
exports.port = port;
|
|
12
|
+
exports.default = baseFolder;
|
|
13
|
+
const config = (company, project) => {
|
|
14
|
+
const store = new store_1.default(`${process.cwd()}/.lila`);
|
|
15
|
+
store.set({ publish: { company, project } });
|
|
16
|
+
};
|
|
17
|
+
exports.config = config;
|
|
18
|
+
const setMode = (mode, dev, endpoints) => {
|
|
19
|
+
let newEndpoints;
|
|
20
|
+
if (mode === 'live') {
|
|
21
|
+
newEndpoints = {
|
|
22
|
+
api: 'https://api.lilaquadrat.de',
|
|
23
|
+
media: 'https://media.lilaquadrat.de',
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (mode === 'next') {
|
|
27
|
+
newEndpoints = {
|
|
28
|
+
api: 'https://next-api.lilaquadrat.de',
|
|
29
|
+
media: 'https://next-media.lilaquadrat.de',
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
if (mode === 'custom') {
|
|
33
|
+
newEndpoints = endpoints;
|
|
34
|
+
}
|
|
35
|
+
const store = new store_1.default(`${process.cwd()}/.lila`);
|
|
36
|
+
store.set({ endpoints: newEndpoints, dev, mode });
|
|
37
|
+
};
|
|
38
|
+
exports.setMode = setMode;
|
|
39
|
+
const modeIsSet = () => {
|
|
40
|
+
const store = new store_1.default(`${process.cwd()}/.lila`);
|
|
41
|
+
return !!store.get().mode;
|
|
42
|
+
};
|
|
43
|
+
exports.modeIsSet = modeIsSet;
|
|
44
|
+
const getApi = () => {
|
|
45
|
+
const store = new store_1.default(`${process.cwd()}/.lila`);
|
|
46
|
+
return store.get().endpoints.api;
|
|
47
|
+
};
|
|
48
|
+
exports.getApi = getApi;
|
|
49
|
+
const getMedia = () => {
|
|
50
|
+
const store = new store_1.default(`${process.cwd()}/.lila`);
|
|
51
|
+
return store.get().endpoints.media;
|
|
52
|
+
};
|
|
53
|
+
exports.getMedia = getMedia;
|
|
54
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAoE/B,gCAAU;AAnEZ,MAAM,IAAI,GAAG,IAAI,CAAC;AAkEhB,oBAAI;AAhEN,kBAAe,UAAU,CAAC;AAE1B,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,OAAe,EAAE,EAAE;IAElD,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAElD,KAAK,CAAC,GAAG,CAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAErD,CAAC,CAAC;AA0DA,wBAAM;AAxDR,MAAM,OAAO,GAAG,CAAC,IAAkB,EAAE,GAAa,EAAE,SAA6B,EAAE,EAAE;IAEnF,IAAI,YAA+B,CAAC;IAEpC,IAAI,IAAI,KAAK,MAAM,EAAE;QAEnB,YAAY,GAAG;YACb,GAAG,EAAE,4BAA4B;YACjC,KAAK,EAAE,8BAA8B;SACtC,CAAC;KAEH;IAED,IAAI,IAAI,KAAK,MAAM,EAAE;QAEnB,YAAY,GAAG;YACb,GAAG,EAAE,iCAAiC;YACtC,KAAK,EAAE,mCAAmC;SAC3C,CAAC;KAEH;IAED,IAAI,IAAI,KAAK,QAAQ,EAAE;QAErB,YAAY,GAAG,SAAS,CAAC;KAE1B;IAED,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClD,KAAK,CAAC,GAAG,CAAO,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AAE1D,CAAC,CAAC;AA0BA,0BAAO;AAxBT,MAAM,SAAS,GAAG,GAAG,EAAE;IAErB,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClD,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;AAE5B,CAAC,CAAC;AAsBA,8BAAS;AApBX,MAAM,MAAM,GAAG,GAAG,EAAE;IAElB,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC;AAEnC,CAAC,CAAC;AAaA,wBAAM;AAZR,MAAM,QAAQ,GAAG,GAAG,EAAE;IAEpB,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC;AAErC,CAAC,CAAC;AAQA,4BAAQ"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const login_1 = require("./login");
|
|
4
|
+
const user_1 = require("./user");
|
|
5
|
+
const data = [
|
|
6
|
+
{
|
|
7
|
+
type: 'list',
|
|
8
|
+
name: 'publishEndpoint',
|
|
9
|
+
message: 'Publish Endpoint',
|
|
10
|
+
choices: [
|
|
11
|
+
{
|
|
12
|
+
name: 'NEXT (https://next-media.lilaquadrat.de)',
|
|
13
|
+
value: 'https://next-media.lilaquadrat.de',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
name: 'LIVE (https://media.lilaquadrat.de)',
|
|
17
|
+
value: 'https://media.lilaquadrat.de',
|
|
18
|
+
},
|
|
19
|
+
'custom',
|
|
20
|
+
],
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
type: 'input',
|
|
24
|
+
name: 'customEndpointPublish',
|
|
25
|
+
message: 'custom publish endpoint',
|
|
26
|
+
when: (answers) => answers.publishEndpoint === 'custom',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
type: 'input',
|
|
30
|
+
name: 'customEndpointApi',
|
|
31
|
+
message: 'custom api endpoint',
|
|
32
|
+
when: (answers) => answers.publishEndpoint === 'custom',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
type: 'list',
|
|
36
|
+
name: 'company',
|
|
37
|
+
message: 'Company',
|
|
38
|
+
choices: async (answers) => {
|
|
39
|
+
const permissions = await (0, user_1.getPermissions)(undefined, (0, login_1.token)());
|
|
40
|
+
return permissions.map((single) => {
|
|
41
|
+
return { name: single.company.name, value: single.company.id };
|
|
42
|
+
});
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
type: 'list',
|
|
47
|
+
name: 'project',
|
|
48
|
+
message: 'Project',
|
|
49
|
+
choices: async (answers) => {
|
|
50
|
+
const permissions = await (0, user_1.getPermissions)(answers.company, (0, login_1.token)());
|
|
51
|
+
return permissions.map((single) => {
|
|
52
|
+
return { name: single.project.name, value: single.project.id };
|
|
53
|
+
});
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: 'confirm',
|
|
58
|
+
name: 'dev',
|
|
59
|
+
message: 'Dev Mode',
|
|
60
|
+
default: false,
|
|
61
|
+
},
|
|
62
|
+
];
|
|
63
|
+
exports.default = data;
|
|
64
|
+
//# sourceMappingURL=config.prompt%20copy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.prompt copy.js","sourceRoot":"","sources":["../../src/config.prompt copy.ts"],"names":[],"mappings":";;AACA,mCAAgC;AAChC,iCAAwC;AAExC,MAAM,IAAI,GAAgC;IACxC;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,0CAA0C;gBAChD,KAAK,EAAE,mCAAmC;aAC3C;YACD;gBACE,IAAI,EAAE,qCAAqC;gBAC3C,KAAK,EAAE,8BAA8B;aACtC;YACD,QAAQ;SACT;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE,yBAAyB;QAClC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,KAAK,QAAQ;KACxD;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,qBAAqB;QAC9B,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,KAAK,QAAQ;KACxD;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAEzB,MAAM,WAAW,GAAG,MAAM,IAAA,qBAAc,EAAC,SAAS,EAAE,IAAA,aAAK,GAAE,CAAC,CAAC;YAC7D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAEjE,CAAC,CAAC,CAAC;QAGL,CAAC;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAEzB,MAAM,WAAW,GAAG,MAAM,IAAA,qBAAc,EAAC,OAAO,CAAC,OAAO,EAAE,IAAA,aAAK,GAAE,CAAC,CAAC;YACnE,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAEjE,CAAC,CAAC,CAAC;QAGL,CAAC;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,KAAK;KACf;CACF,CAAC;AACF,kBAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const user_1 = require("./user");
|
|
4
|
+
const data = [
|
|
5
|
+
{
|
|
6
|
+
type: 'list',
|
|
7
|
+
name: 'company',
|
|
8
|
+
message: 'Company',
|
|
9
|
+
choices: async (answers) => {
|
|
10
|
+
const permissions = await (0, user_1.getPermissions)();
|
|
11
|
+
return permissions.map((single) => {
|
|
12
|
+
return { name: single.company.name, value: single.company.id };
|
|
13
|
+
});
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
type: 'list',
|
|
18
|
+
name: 'project',
|
|
19
|
+
message: 'Project',
|
|
20
|
+
choices: async (answers) => {
|
|
21
|
+
const permissions = await (0, user_1.getPermissions)(answers.company);
|
|
22
|
+
return permissions.map((single) => {
|
|
23
|
+
return { name: single.project.name, value: single.project.id };
|
|
24
|
+
});
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
exports.default = data;
|
|
29
|
+
//# sourceMappingURL=config.prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.prompt.js","sourceRoot":"","sources":["../../src/config.prompt.ts"],"names":[],"mappings":";;AACA,iCAAwC;AAExC,MAAM,IAAI,GAAgC;IACxC;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAEzB,MAAM,WAAW,GAAG,MAAM,IAAA,qBAAc,GAAE,CAAC;YAC3C,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAEjE,CAAC,CAAC,CAAC;QAGL,CAAC;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAEzB,MAAM,WAAW,GAAG,MAAM,IAAA,qBAAc,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAEjE,CAAC,CAAC,CAAC;QAGL,CAAC;KACF;CACF,CAAC;AACF,kBAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
declare const _default: ({
|
|
2
|
+
type: string;
|
|
3
|
+
name: string;
|
|
4
|
+
message: string;
|
|
5
|
+
choices: {
|
|
6
|
+
name: string;
|
|
7
|
+
value: string;
|
|
8
|
+
}[];
|
|
9
|
+
validate?: undefined;
|
|
10
|
+
default?: undefined;
|
|
11
|
+
} | {
|
|
12
|
+
type: string;
|
|
13
|
+
name: string;
|
|
14
|
+
message: string;
|
|
15
|
+
validate: (input: string, answers: any) => true | "name is needed" | "only the followed is allows a-z 0-9 - _" | "name already taken";
|
|
16
|
+
choices?: undefined;
|
|
17
|
+
default?: undefined;
|
|
18
|
+
} | {
|
|
19
|
+
type: string;
|
|
20
|
+
name: string;
|
|
21
|
+
message: string;
|
|
22
|
+
default: string;
|
|
23
|
+
choices?: undefined;
|
|
24
|
+
validate?: undefined;
|
|
25
|
+
})[];
|
|
26
|
+
export default _default;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const fs_1 = __importDefault(require("fs"));
|
|
7
|
+
const definitions_1 = __importDefault(require("./definitions"));
|
|
8
|
+
const config_1 = require("./config");
|
|
9
|
+
exports.default = [
|
|
10
|
+
{
|
|
11
|
+
type: 'list',
|
|
12
|
+
name: 'type',
|
|
13
|
+
message: 'What do we create?',
|
|
14
|
+
choices: [
|
|
15
|
+
{ name: 'internal app', value: 'app' },
|
|
16
|
+
{ name: 'module', value: 'modules' },
|
|
17
|
+
// { name: 'module editor', value: 'moduleEditor' },
|
|
18
|
+
{ name: 'partial', value: 'partials' },
|
|
19
|
+
{ name: 'vuex module', value: 'store' },
|
|
20
|
+
],
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
type: 'input',
|
|
24
|
+
name: 'name',
|
|
25
|
+
message: 'Name',
|
|
26
|
+
validate: (input, answers) => {
|
|
27
|
+
if (!input.length)
|
|
28
|
+
return 'name is needed';
|
|
29
|
+
if (!input.match(/^[a-z0-9-_]{1,20}$/i))
|
|
30
|
+
return 'only the followed is allows a-z 0-9 - _';
|
|
31
|
+
let fileExists = false;
|
|
32
|
+
definitions_1.default[answers.type].files.map((file) => {
|
|
33
|
+
if (fileExists)
|
|
34
|
+
return false;
|
|
35
|
+
fileExists = fs_1.default.existsSync(`${config_1.baseFolder}/${definitions_1.default[answers.type].targetFolder}/${input}/${input}.${file.extension}`);
|
|
36
|
+
return fileExists;
|
|
37
|
+
});
|
|
38
|
+
return !fileExists || 'name already taken';
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
type: 'input',
|
|
43
|
+
name: 'publisher',
|
|
44
|
+
message: 'Publisher',
|
|
45
|
+
default: 'lilaquadrat',
|
|
46
|
+
},
|
|
47
|
+
];
|
|
48
|
+
//# sourceMappingURL=create.prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.prompt.js","sourceRoot":"","sources":["../../src/create.prompt.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gEAAwC;AACxC,qCAAsC;AAEtC,kBAAe;IACb;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,oBAAoB;QAC7B,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE;YACtC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE;YACpC,oDAAoD;YACpD,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE;YACtC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE;SACxC;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,CAAC,KAAa,EAAE,OAAO,EAAE,EAAE;YAEnC,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,OAAO,gBAAgB,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC;gBAAE,OAAO,yCAAyC,CAAC;YAE1F,IAAI,UAAU,GAAY,KAAK,CAAC;YAEhC,qBAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAE3C,IAAI,UAAU;oBAAE,OAAO,KAAK,CAAC;gBAE7B,UAAU,GAAG,YAAE,CAAC,UAAU,CAAC,GAAG,mBAAU,IAAI,qBAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,YAAY,IAAI,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBAE1H,OAAO,UAAU,CAAC;YAEpB,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,UAAU,IAAI,oBAAoB,CAAC;QAE7C,CAAC;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,aAAa;KACvB;CACF,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
app: {
|
|
3
|
+
targetFolder: string;
|
|
4
|
+
sourceFolder: string;
|
|
5
|
+
folders: string[];
|
|
6
|
+
files: ({
|
|
7
|
+
template: string;
|
|
8
|
+
extension: string;
|
|
9
|
+
options: {
|
|
10
|
+
noPreName: boolean;
|
|
11
|
+
subfolder: boolean;
|
|
12
|
+
};
|
|
13
|
+
target?: undefined;
|
|
14
|
+
} | {
|
|
15
|
+
template: string;
|
|
16
|
+
extension: string;
|
|
17
|
+
target: string;
|
|
18
|
+
options: {
|
|
19
|
+
noPreName: boolean;
|
|
20
|
+
subfolder: boolean;
|
|
21
|
+
};
|
|
22
|
+
})[];
|
|
23
|
+
};
|
|
24
|
+
partials: {
|
|
25
|
+
targetFolder: string;
|
|
26
|
+
sourceFolder: string;
|
|
27
|
+
options: {
|
|
28
|
+
subfolder: boolean;
|
|
29
|
+
};
|
|
30
|
+
files: {
|
|
31
|
+
template: string;
|
|
32
|
+
extension: string;
|
|
33
|
+
}[];
|
|
34
|
+
};
|
|
35
|
+
modules: {
|
|
36
|
+
targetFolder: string;
|
|
37
|
+
sourceFolder: string;
|
|
38
|
+
options: {
|
|
39
|
+
subfolder: boolean;
|
|
40
|
+
};
|
|
41
|
+
files: {
|
|
42
|
+
template: string;
|
|
43
|
+
extension: string;
|
|
44
|
+
}[];
|
|
45
|
+
};
|
|
46
|
+
store: {
|
|
47
|
+
targetFolder: string;
|
|
48
|
+
sourceFolder: string;
|
|
49
|
+
options: {
|
|
50
|
+
subfolder: boolean;
|
|
51
|
+
};
|
|
52
|
+
files: {
|
|
53
|
+
template: string;
|
|
54
|
+
extension: string;
|
|
55
|
+
}[];
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
export default _default;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = {
|
|
4
|
+
app: {
|
|
5
|
+
targetFolder: 'apps',
|
|
6
|
+
sourceFolder: 'apps',
|
|
7
|
+
folders: [
|
|
8
|
+
'interfaces',
|
|
9
|
+
'modules',
|
|
10
|
+
'partials',
|
|
11
|
+
'screens',
|
|
12
|
+
],
|
|
13
|
+
files: [
|
|
14
|
+
{
|
|
15
|
+
template: 'app.ts.hbs',
|
|
16
|
+
extension: 'app.ts',
|
|
17
|
+
options: {
|
|
18
|
+
noPreName: true,
|
|
19
|
+
subfolder: true,
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
template: 'home.screen.vue.hbs',
|
|
24
|
+
extension: 'home.screen.vue',
|
|
25
|
+
target: 'screens',
|
|
26
|
+
options: {
|
|
27
|
+
noPreName: true,
|
|
28
|
+
subfolder: true,
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
template: 'routes.ts.hbs',
|
|
33
|
+
extension: 'routes.ts',
|
|
34
|
+
options: {
|
|
35
|
+
noPreName: true,
|
|
36
|
+
subfolder: true,
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
partials: {
|
|
42
|
+
targetFolder: 'partials',
|
|
43
|
+
sourceFolder: 'partials',
|
|
44
|
+
options: {
|
|
45
|
+
subfolder: false,
|
|
46
|
+
},
|
|
47
|
+
files: [
|
|
48
|
+
{
|
|
49
|
+
template: 'partials.vue.hbs',
|
|
50
|
+
extension: 'partial.vue',
|
|
51
|
+
},
|
|
52
|
+
],
|
|
53
|
+
},
|
|
54
|
+
modules: {
|
|
55
|
+
targetFolder: 'modules',
|
|
56
|
+
sourceFolder: 'modules',
|
|
57
|
+
options: {
|
|
58
|
+
subfolder: false,
|
|
59
|
+
},
|
|
60
|
+
files: [
|
|
61
|
+
{
|
|
62
|
+
template: 'modules.vue.hbs',
|
|
63
|
+
extension: 'module.vue',
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
},
|
|
67
|
+
// moduleEditor: {
|
|
68
|
+
// targetFolder: 'modules',
|
|
69
|
+
// sourceFolder: 'moduleEditor',
|
|
70
|
+
// files: [
|
|
71
|
+
// {
|
|
72
|
+
// template: 'modules.html.hbs',
|
|
73
|
+
// extension: 'module.editor.html',
|
|
74
|
+
// },
|
|
75
|
+
// {
|
|
76
|
+
// template: 'modules.ts.hbs',
|
|
77
|
+
// extension: 'module.editor.ts',
|
|
78
|
+
// },
|
|
79
|
+
// ],
|
|
80
|
+
// },
|
|
81
|
+
store: {
|
|
82
|
+
targetFolder: 'store',
|
|
83
|
+
sourceFolder: 'store',
|
|
84
|
+
options: {
|
|
85
|
+
subfolder: false,
|
|
86
|
+
},
|
|
87
|
+
files: [
|
|
88
|
+
{
|
|
89
|
+
template: 'state.d.ts.hbs',
|
|
90
|
+
extension: 'interface.ts',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
template: 'store.ts.hbs',
|
|
94
|
+
extension: 'store.ts',
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=definitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACb,GAAG,EAAE;QACH,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,MAAM;QACpB,OAAO,EAAE;YACP,YAAY;YACZ,SAAS;YACT,UAAU;YACV,SAAS;SACV;QACD,KAAK,EAAE;YACL;gBACE,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,QAAQ;gBACnB,OAAO,EAAE;oBACP,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI;iBAChB;aACF;YACD;gBACE,QAAQ,EAAE,qBAAqB;gBAC/B,SAAS,EAAE,iBAAiB;gBAC5B,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE;oBACP,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI;iBAChB;aACF;YACD;gBACE,QAAQ,EAAE,eAAe;gBACzB,SAAS,EAAE,WAAW;gBACtB,OAAO,EAAE;oBACP,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI;iBAChB;aACF;SACF;KACF;IACD,QAAQ,EAAE;QACR,YAAY,EAAE,UAAU;QACxB,YAAY,EAAE,UAAU;QACxB,OAAO,EAAE;YACP,SAAS,EAAE,KAAK;SACjB;QACD,KAAK,EAAE;YACL;gBACE,QAAQ,EAAE,kBAAkB;gBAC5B,SAAS,EAAE,aAAa;aACzB;SACF;KACF;IACD,OAAO,EAAE;QACP,YAAY,EAAE,SAAS;QACvB,YAAY,EAAE,SAAS;QACvB,OAAO,EAAE;YACP,SAAS,EAAE,KAAK;SACjB;QACD,KAAK,EAAE;YACL;gBACE,QAAQ,EAAE,iBAAiB;gBAC3B,SAAS,EAAE,YAAY;aACxB;SACF;KACF;IACD,kBAAkB;IAClB,6BAA6B;IAC7B,kCAAkC;IAClC,aAAa;IACb,QAAQ;IACR,sCAAsC;IACtC,yCAAyC;IACzC,SAAS;IACT,QAAQ;IACR,oCAAoC;IACpC,uCAAuC;IACvC,SAAS;IACT,OAAO;IACP,KAAK;IACL,KAAK,EAAE;QACL,YAAY,EAAE,OAAO;QACrB,YAAY,EAAE,OAAO;QACrB,OAAO,EAAE;YACP,SAAS,EAAE,KAAK;SACjB;QACD,KAAK,EAAE;YACL;gBACE,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EAAE,cAAc;aAC1B;YACD;gBACE,QAAQ,EAAE,cAAc;gBACxB,SAAS,EAAE,UAAU;aACtB;SACF;KACF;CACF,CAAC"}
|