Skip to content

Commit 171a36f

Browse files
tsanislavgatevfifoosid
authored andcommittedAug 26, 2019
feat: implement create control script (#747)
1 parent 0e86aa8 commit 171a36f

File tree

2 files changed

+66
-0
lines changed

2 files changed

+66
-0
lines changed
 
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
const jsFileContentTemplate = sComponentName => {
2+
return `import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
3+
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
4+
import ${sComponentName}Template from "./generated/templates/${sComponentName}Template.lit.js";
5+
6+
// Styles
7+
import ${sComponentName}Css from "./generated/themes/${sComponentName}.css.js";
8+
9+
10+
const metadata = {
11+
tag: "ui5-${sComponentName.toLowerCase()}",
12+
properties: {
13+
//
14+
},
15+
slots: {
16+
//
17+
},
18+
events: {
19+
//
20+
},
21+
};
22+
23+
class ${sComponentName} extends UI5Element {
24+
static get metadata() {
25+
return metadata;
26+
}
27+
28+
static get render() {
29+
return litRender;
30+
}
31+
32+
static get styles() {
33+
return ${sComponentName}Css;
34+
}
35+
36+
static get template() {
37+
return ${sComponentName}Template;
38+
}
39+
40+
static async define(...params) {
41+
super.define(...params);
42+
}
43+
}
44+
45+
${sComponentName}.define();
46+
47+
export default ${sComponentName};
48+
`;
49+
};
50+
51+
const fs = require("fs");
52+
53+
54+
const aArgs = process.argv.slice(2);
55+
const sComponentName = aArgs[0];
56+
const oPaths = {
57+
"js": `./src/${sComponentName}.js`,
58+
"css": `./src/themes/${sComponentName}.css`,
59+
"hbs": `./src/${sComponentName}.hbs`,
60+
};
61+
const sJsFileContentTemplate = jsFileContentTemplate(sComponentName);
62+
63+
fs.writeFileSync(oPaths.js, sJsFileContentTemplate, { flag: "wx+" });
64+
fs.writeFileSync(oPaths.css, "", { flag: "wx+" });
65+
fs.writeFileSync(oPaths.hbs, "<div>Hello World</div>", { flag: "wx+" });

‎packages/main/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@
6666
"copy:qunit": "cpx \"test/**/qunit/*.*\" dist/test-resources",
6767
"copy:webcomponents-polyfill": "cpx \"../../node_modules/@webcomponents/webcomponentsjs/**/*.*\" dist/webcomponentsjs/",
6868
"dev": "npm-run-all --sequential build:i18n watch:all",
69+
"generate-new-component" : "node ./lib/create-new-component/create-new-component.js",
6970
"start": "npm-run-all --parallel serve:static dev",
7071
"lint": "eslint .",
7172
"test:wdio": "npm-run-all --parallel --race serve:static test:wdio-run",

0 commit comments

Comments
 (0)
Please sign in to comment.