@sap-ux/fe-fpm-writer 0.5.0 → 0.5.3
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/dist/action/index.d.ts +2 -2
- package/dist/action/index.d.ts.map +1 -1
- package/dist/action/index.js +9 -9
- package/dist/action/index.js.map +1 -1
- package/dist/action/types.d.ts +1 -1
- package/dist/action/types.d.ts.map +1 -1
- package/dist/column/index.d.ts +2 -2
- package/dist/column/index.d.ts.map +1 -1
- package/dist/column/index.js +14 -14
- package/dist/column/index.js.map +1 -1
- package/dist/column/types.d.ts +1 -1
- package/dist/column/types.d.ts.map +1 -1
- package/dist/common/defaults.d.ts +1 -1
- package/dist/common/defaults.d.ts.map +1 -1
- package/dist/common/defaults.js +1 -1
- package/dist/common/defaults.js.map +1 -1
- package/dist/common/validate.d.ts +1 -1
- package/dist/common/validate.d.ts.map +1 -1
- package/dist/common/validate.js +2 -2
- package/dist/common/validate.js.map +1 -1
- package/dist/page/defaults.d.ts +2 -2
- package/dist/page/defaults.d.ts.map +1 -1
- package/dist/page/defaults.js +1 -1
- package/dist/page/defaults.js.map +1 -1
- package/dist/page/index.d.ts +2 -2
- package/dist/page/index.d.ts.map +1 -1
- package/dist/page/index.js +13 -13
- package/dist/page/index.js.map +1 -1
- package/dist/page/types.d.ts +1 -1
- package/dist/page/types.d.ts.map +1 -1
- package/dist/section/index.d.ts +2 -2
- package/dist/section/index.d.ts.map +1 -1
- package/dist/section/index.js +13 -13
- package/dist/section/index.js.map +1 -1
- package/dist/section/types.d.ts +1 -1
- package/dist/section/types.d.ts.map +1 -1
- package/package.json +9 -1
package/dist/action/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Editor } from 'mem-fs-editor';
|
|
2
|
-
import { CustomAction, CustomActionTarget } from './types';
|
|
1
|
+
import type { Editor } from 'mem-fs-editor';
|
|
2
|
+
import type { CustomAction, CustomActionTarget } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* Enhance the target object in the manifest with the required nested objects and return a reference to it.
|
|
5
5
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/action/index.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/action/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAwB,MAAM,SAAS,CAAC;AAgCtF;;;;;;GAMG;AACH,wBAAgB,4CAA4C,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,kBAAkB,GAAG,GAAG,CAqB3G;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CA6BtG"}
|
package/dist/action/index.js
CHANGED
|
@@ -19,7 +19,7 @@ const defaults_1 = require("../common/defaults");
|
|
|
19
19
|
function enhanceConfig(data, manifestPath, manifest) {
|
|
20
20
|
// clone input
|
|
21
21
|
const config = Object.assign(Object.assign({}, data), { target: Object.assign({}, data.target), settings: Object.assign({}, data.settings) });
|
|
22
|
-
|
|
22
|
+
defaults_1.setCommonDefaults(config, manifestPath, manifest);
|
|
23
23
|
// set default values for visibility and enabled
|
|
24
24
|
config.settings.enabled = config.settings.enabled || true;
|
|
25
25
|
config.settings.visible = config.settings.visible || true;
|
|
@@ -65,26 +65,26 @@ exports.enhanceManifestAndGetActionsElementReference = enhanceManifestAndGetActi
|
|
|
65
65
|
* @returns {Promise<Editor>} the updated memfs editor instance
|
|
66
66
|
*/
|
|
67
67
|
function generateCustomAction(basePath, actionConfig, fs) {
|
|
68
|
-
|
|
68
|
+
validate_1.validateVersion(actionConfig.ui5Version);
|
|
69
69
|
if (!fs) {
|
|
70
|
-
fs =
|
|
70
|
+
fs = mem_fs_editor_1.create(mem_fs_1.create());
|
|
71
71
|
}
|
|
72
|
-
|
|
73
|
-
const manifestPath =
|
|
72
|
+
validate_1.validateBasePath(basePath, fs);
|
|
73
|
+
const manifestPath = path_1.join(basePath, 'webapp/manifest.json');
|
|
74
74
|
const manifest = fs.readJSON(manifestPath);
|
|
75
75
|
const config = enhanceConfig(actionConfig, manifestPath, manifest);
|
|
76
|
-
const root =
|
|
76
|
+
const root = path_1.join(__dirname, '../../templates');
|
|
77
77
|
// add event handler if requested
|
|
78
78
|
if (config.settings.eventHandler === true) {
|
|
79
|
-
const controllerPath =
|
|
79
|
+
const controllerPath = path_1.join(config.path, `${config.name}.js`);
|
|
80
80
|
if (!fs.exists(controllerPath)) {
|
|
81
|
-
fs.copyTpl(
|
|
81
|
+
fs.copyTpl(path_1.join(root, 'common/EventHandler.js'), controllerPath, config);
|
|
82
82
|
}
|
|
83
83
|
config.settings.eventHandler = `${config.ns}.${config.name}.onPress`;
|
|
84
84
|
}
|
|
85
85
|
// enhance manifest with action definition and controller reference
|
|
86
86
|
const actions = enhanceManifestAndGetActionsElementReference(manifest, config.target);
|
|
87
|
-
Object.assign(actions, JSON.parse(
|
|
87
|
+
Object.assign(actions, JSON.parse(ejs_1.render(fs.read(path_1.join(root, `action/manifest.action.json`)), config)));
|
|
88
88
|
fs.writeJSON(manifestPath, manifest);
|
|
89
89
|
return fs;
|
|
90
90
|
}
|
package/dist/action/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/action/index.ts"],"names":[],"mappings":";;;AAAA,mCAAiD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/action/index.ts"],"names":[],"mappings":"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"}
|
package/dist/action/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/action/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/action/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEtF,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,2CAA2C;IAClD,KAAK,yCAAyC;CACjD;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAa,SAAQ,aAAa;IAC/C,MAAM,EAAE,kBAAkB,CAAC;IAC3B,QAAQ,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB;;;WAGG;QACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;CACL;AAED,oBAAY,oBAAoB,GAAG,YAAY,GAAG,qBAAqB,CAAC"}
|
package/dist/column/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/column/index.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/column/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,KAAK,EAAE,iBAAiB,EAA6B,MAAM,SAAS,CAAC;AAM5E;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ3D;AA8BD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAoC3G"}
|
package/dist/column/index.js
CHANGED
|
@@ -15,13 +15,13 @@ const defaults_1 = require("../common/defaults");
|
|
|
15
15
|
*/
|
|
16
16
|
function getManifestRoot(ui5Version) {
|
|
17
17
|
if (ui5Version === undefined || ui5Version >= 1.86) {
|
|
18
|
-
return
|
|
18
|
+
return path_1.join(__dirname, '../../templates/column/1.86');
|
|
19
19
|
}
|
|
20
20
|
else if (ui5Version === 1.85) {
|
|
21
|
-
return
|
|
21
|
+
return path_1.join(__dirname, '../../templates/column/1.85');
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
24
|
-
return
|
|
24
|
+
return path_1.join(__dirname, '../../templates/column/1.84');
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
exports.getManifestRoot = getManifestRoot;
|
|
@@ -36,7 +36,7 @@ exports.getManifestRoot = getManifestRoot;
|
|
|
36
36
|
function enhanceConfig(data, manifestPath, manifest) {
|
|
37
37
|
// clone input and set defaults
|
|
38
38
|
const config = Object.assign({}, data);
|
|
39
|
-
|
|
39
|
+
defaults_1.setCommonDefaults(config, manifestPath, manifest);
|
|
40
40
|
// set default event handler if it is to be created
|
|
41
41
|
if (config.eventHandler === true) {
|
|
42
42
|
config.eventHandler = `${config.ns}.${config.name}.onPress`;
|
|
@@ -45,7 +45,7 @@ function enhanceConfig(data, manifestPath, manifest) {
|
|
|
45
45
|
const content = config.properties && config.properties.length > 0
|
|
46
46
|
? `{=%{${config.properties.join("} + ' ' + %{")}}}`
|
|
47
47
|
: 'Sample Text';
|
|
48
|
-
config.content = config.control ||
|
|
48
|
+
config.content = config.control || defaults_1.getDefaultFragmentContent(content, config.eventHandler);
|
|
49
49
|
return config;
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
@@ -57,28 +57,28 @@ function enhanceConfig(data, manifestPath, manifest) {
|
|
|
57
57
|
* @param {Editor} [fs] - the mem-fs editor instance
|
|
58
58
|
*/
|
|
59
59
|
function generateCustomColumn(basePath, customColumn, fs) {
|
|
60
|
-
|
|
60
|
+
validate_1.validateVersion(customColumn.ui5Version);
|
|
61
61
|
if (!fs) {
|
|
62
|
-
fs =
|
|
62
|
+
fs = mem_fs_editor_1.create(mem_fs_1.create());
|
|
63
63
|
}
|
|
64
|
-
|
|
65
|
-
const manifestPath =
|
|
64
|
+
validate_1.validateBasePath(basePath, fs);
|
|
65
|
+
const manifestPath = path_1.join(basePath, 'webapp/manifest.json');
|
|
66
66
|
const manifest = fs.readJSON(manifestPath);
|
|
67
|
-
const root =
|
|
67
|
+
const root = path_1.join(__dirname, '../../templates');
|
|
68
68
|
// merge with defaults
|
|
69
69
|
const completeColumn = enhanceConfig(customColumn, manifestPath, manifest);
|
|
70
70
|
// add event handler if requested
|
|
71
71
|
if (completeColumn.eventHandler) {
|
|
72
|
-
fs.copyTpl(
|
|
72
|
+
fs.copyTpl(path_1.join(root, 'common/EventHandler.js'), path_1.join(completeColumn.path, `${completeColumn.name}.js`), completeColumn);
|
|
73
73
|
}
|
|
74
74
|
// enhance manifest with column definition
|
|
75
75
|
const manifestRoot = getManifestRoot(customColumn.ui5Version);
|
|
76
|
-
const filledTemplate =
|
|
76
|
+
const filledTemplate = ejs_1.render(fs.read(path_1.join(manifestRoot, `manifest.json`)), completeColumn);
|
|
77
77
|
fs.extendJSON(manifestPath, JSON.parse(filledTemplate));
|
|
78
78
|
// add fragment
|
|
79
|
-
const viewPath =
|
|
79
|
+
const viewPath = path_1.join(completeColumn.path, `${completeColumn.name}.fragment.xml`);
|
|
80
80
|
if (completeColumn.control || !fs.exists(viewPath)) {
|
|
81
|
-
fs.copyTpl(
|
|
81
|
+
fs.copyTpl(path_1.join(root, 'common/Fragment.xml'), viewPath, completeColumn);
|
|
82
82
|
}
|
|
83
83
|
return fs;
|
|
84
84
|
}
|
package/dist/column/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/column/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuE;AACvE,mCAAiD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/column/index.ts"],"names":[],"mappings":"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"}
|
package/dist/column/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/column/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/column/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEtF,oBAAY,YAAY;IACpB,SAAS,YAAY;IACrB,YAAY,eAAe;IAC3B,QAAQ,WAAW;CACtB;AAED,oBAAY,eAAe;IACvB,OAAO,UAAU;IACjB,QAAQ,WAAW;IACnB,KAAK,QAAQ;CAChB;AAED,oBAAY,oBAAoB,GAAG,MAAM,EAAE,CAAC;AAE5C;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACpD;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC;IACnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;OAEG;IACH,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACrC;AAED,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB,EAAE,qBAAqB;IACvF,OAAO,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/common/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/common/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG9E;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,aAAa,GAAG,OAAO,CAAC,qBAAqB,CAAC,EACtF,MAAM,EAAE,CAAC,EACT,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,QAAQ,GACnB,qBAAqB,GAAG,CAAC,CAa3B;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAWrF"}
|
package/dist/common/defaults.js
CHANGED
|
@@ -18,7 +18,7 @@ function setCommonDefaults(config, manifestPath, manifest) {
|
|
|
18
18
|
config.folder = config.folder || `ext/${firstChar.toLocaleLowerCase() + config.name.substring(1)}`;
|
|
19
19
|
// calculate namespace and path for generated artifacts
|
|
20
20
|
config.ns = `${manifest['sap.app'].id}.${config.folder.replace(/[\/\\]/g, '.')}`;
|
|
21
|
-
config.path =
|
|
21
|
+
config.path = path_1.join(path_1.dirname(manifestPath), config.folder);
|
|
22
22
|
return config;
|
|
23
23
|
}
|
|
24
24
|
exports.setCommonDefaults = setCommonDefaults;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/common/defaults.ts"],"names":[],"mappings":";;;AACA,+BAAqC;AAErC;;;;;;;GAOG;AACH,SAAgB,iBAAiB,CAC7B,MAAS,EACT,YAAoB,EACpB,QAAkB;IAElB,6BAA6B;IAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEjE,oCAAoC;IACpC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,SAAS,CAAC,iBAAiB,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnG,uDAAuD;IACvD,MAAM,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;IACjF,MAAM,CAAC,IAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/common/defaults.ts"],"names":[],"mappings":";;;AACA,+BAAqC;AAErC;;;;;;;GAOG;AACH,SAAgB,iBAAiB,CAC7B,MAAS,EACT,YAAoB,EACpB,QAAkB;IAElB,6BAA6B;IAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEjE,oCAAoC;IACpC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,SAAS,CAAC,iBAAiB,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnG,uDAAuD;IACvD,MAAM,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;IACjF,MAAM,CAAC,IAAI,GAAG,WAAI,CAAC,cAAO,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAEzD,OAAO,MAAmC,CAAC;AAC/C,CAAC;AAjBD,8CAiBC;AAED;;;;;;;;GAQG;AACH,SAAgB,yBAAyB,CAAC,IAAY,EAAE,YAAqB;IACzE,IAAI,OAAe,CAAC;IACpB,IAAI,YAAY,EAAE;QACd,MAAM,KAAK,GAAI,YAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,GAAG,qCAAqC,OAAO,aAAa,IAAI,oBAAoB,MAAM,MAAM,CAAC;KAC3G;SAAM;QACH,OAAO,GAAG,eAAe,IAAI,MAAM,CAAC;KACvC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAXD,8DAWC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/common/validate.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/common/validate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG5C;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAK5D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAkBvE"}
|
package/dist/common/validate.js
CHANGED
|
@@ -27,9 +27,9 @@ exports.validateVersion = validateVersion;
|
|
|
27
27
|
function validateBasePath(basePath, fs) {
|
|
28
28
|
var _a, _b, _c;
|
|
29
29
|
if (!fs) {
|
|
30
|
-
fs =
|
|
30
|
+
fs = mem_fs_editor_1.create(mem_fs_1.create());
|
|
31
31
|
}
|
|
32
|
-
const manifestPath =
|
|
32
|
+
const manifestPath = path_1.join(basePath, 'webapp', 'manifest.json');
|
|
33
33
|
if (!fs.exists(manifestPath)) {
|
|
34
34
|
throw new Error(`Invalid project folder. Cannot find required file ${manifestPath}`);
|
|
35
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/common/validate.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,mCAAiD;
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/common/validate.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,mCAAiD;AAEjD,iDAAuC;AAEvC;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,UAAmB;IAC/C,IAAI,UAAU,IAAI,UAAU,GAAG,IAAI,EAAE;QACjC,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;KACnG;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AALD,0CAKC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAC,QAAgB,EAAE,EAAW;;IAC1D,IAAI,CAAC,EAAE,EAAE;QACL,EAAE,GAAG,sBAAM,CAAC,eAAa,EAAE,CAAC,CAAC;KAChC;IAED,MAAM,YAAY,GAAG,WAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,qDAAqD,YAAY,EAAE,CAAC,CAAC;KACxF;SAAM;QACH,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAQ,CAAC;QAClD,IAAI,CAAC,mBAAA,QAAQ,CAAC,SAAS,CAAC,0CAAE,YAAY,0CAAE,IAAI,0CAAG,kBAAkB,OAAM,SAAS,CAAC,KAAK,KAAK,EAAE;YACzF,MAAM,IAAI,KAAK,CACX,gHAAgH,CACnH,CAAC;SACL;KACJ;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAlBD,4CAkBC"}
|
package/dist/page/defaults.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Editor } from 'mem-fs-editor';
|
|
2
|
-
import { CustomPage, InternalCustomPage } from './types';
|
|
1
|
+
import type { Editor } from 'mem-fs-editor';
|
|
2
|
+
import type { CustomPage, InternalCustomPage } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* Enhances the provided custom page configuration with default data.
|
|
5
5
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/page/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/page/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG9D;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,kBAAkB,CAYlG"}
|
package/dist/page/defaults.js
CHANGED
|
@@ -13,7 +13,7 @@ const defaults_1 = require("../common/defaults");
|
|
|
13
13
|
function enhanceData(data, manifestPath, fs) {
|
|
14
14
|
const manifest = fs.readJSON(manifestPath);
|
|
15
15
|
// set common defaults
|
|
16
|
-
const config =
|
|
16
|
+
const config = defaults_1.setCommonDefaults(data, manifestPath, manifest);
|
|
17
17
|
if (config.view === undefined) {
|
|
18
18
|
config.view = {
|
|
19
19
|
title: config.name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/page/defaults.ts"],"names":[],"mappings":";;;AAGA,iDAAuD;AAEvD;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,IAAgB,EAAE,YAAoB,EAAE,EAAU;IAC1E,MAAM,QAAQ,GAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEhD,sBAAsB;IACtB,MAAM,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/page/defaults.ts"],"names":[],"mappings":";;;AAGA,iDAAuD;AAEvD;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,IAAgB,EAAE,YAAoB,EAAE,EAAU;IAC1E,MAAM,QAAQ,GAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEhD,sBAAsB;IACtB,MAAM,MAAM,GAAG,4BAAiB,CAAa,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAE3E,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;QAC3B,MAAM,CAAC,IAAI,GAAG;YACV,KAAK,EAAE,MAAM,CAAC,IAAI;SACrB,CAAC;KACL;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAZD,kCAYC"}
|
package/dist/page/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Editor } from 'mem-fs-editor';
|
|
2
|
-
import { CustomPage } from './types';
|
|
1
|
+
import type { Editor } from 'mem-fs-editor';
|
|
2
|
+
import type { CustomPage } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* Validate the UI5 version and if valid return the root folder for the templates to be used.
|
|
5
5
|
*
|
package/dist/page/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/page/index.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/page/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,OAAO,KAAK,EAAE,UAAU,EAAsB,MAAM,SAAS,CAAC;AAI9D;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAM3D;AAgCD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAyBlG;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CA4B1F"}
|
package/dist/page/index.js
CHANGED
|
@@ -15,10 +15,10 @@ const validate_1 = require("../common/validate");
|
|
|
15
15
|
*/
|
|
16
16
|
function getTemplateRoot(ui5Version) {
|
|
17
17
|
if (ui5Version === undefined || ui5Version >= 1.94) {
|
|
18
|
-
return
|
|
18
|
+
return path_1.join(__dirname, '../../templates/page/1.94');
|
|
19
19
|
}
|
|
20
20
|
else {
|
|
21
|
-
return
|
|
21
|
+
return path_1.join(__dirname, '../../templates/page/1.84');
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
exports.getTemplateRoot = getTemplateRoot;
|
|
@@ -62,13 +62,13 @@ function updateRoutes(routes, config) {
|
|
|
62
62
|
function validateCustomPageConfig(basePath, config, fs) {
|
|
63
63
|
var _a, _b;
|
|
64
64
|
// common validators
|
|
65
|
-
|
|
65
|
+
validate_1.validateVersion(config.ui5Version);
|
|
66
66
|
if (!fs) {
|
|
67
|
-
fs =
|
|
67
|
+
fs = mem_fs_editor_1.create(mem_fs_1.create());
|
|
68
68
|
}
|
|
69
|
-
|
|
69
|
+
validate_1.validateBasePath(basePath, fs);
|
|
70
70
|
// validate config against the manifest
|
|
71
|
-
const manifest = fs.readJSON(
|
|
71
|
+
const manifest = fs.readJSON(path_1.join(basePath, 'webapp/manifest.json'));
|
|
72
72
|
if (config.navigation) {
|
|
73
73
|
if (!((_b = (_a = manifest['sap.ui5']) === null || _a === void 0 ? void 0 : _a.routing) === null || _b === void 0 ? void 0 : _b.targets[config.navigation.sourcePage])) {
|
|
74
74
|
throw new Error(`Could not find navigation source ${config.navigation.sourcePage}!`);
|
|
@@ -91,25 +91,25 @@ exports.validateCustomPageConfig = validateCustomPageConfig;
|
|
|
91
91
|
*/
|
|
92
92
|
function generateCustomPage(basePath, data, fs) {
|
|
93
93
|
fs = validateCustomPageConfig(basePath, data, fs);
|
|
94
|
-
const manifestPath =
|
|
95
|
-
const config =
|
|
94
|
+
const manifestPath = path_1.join(basePath, 'webapp/manifest.json');
|
|
95
|
+
const config = defaults_1.enhanceData(data, manifestPath, fs);
|
|
96
96
|
// merge content into existing files
|
|
97
97
|
const root = getTemplateRoot(data.ui5Version);
|
|
98
98
|
// enhance manifest.json
|
|
99
|
-
fs.extendJSON(manifestPath, JSON.parse(
|
|
99
|
+
fs.extendJSON(manifestPath, JSON.parse(ejs_1.render(fs.read(path_1.join(root, `manifest.json`)), config)), (key, value) => {
|
|
100
100
|
if (key === 'routes') {
|
|
101
101
|
updateRoutes(value, config);
|
|
102
102
|
}
|
|
103
103
|
return value;
|
|
104
104
|
});
|
|
105
105
|
// add extension content
|
|
106
|
-
const viewPath =
|
|
106
|
+
const viewPath = path_1.join(config.path, `${config.name}.view.xml`);
|
|
107
107
|
if (!fs.exists(viewPath)) {
|
|
108
|
-
fs.copyTpl(
|
|
108
|
+
fs.copyTpl(path_1.join(root, 'ext/View.xml'), viewPath, config);
|
|
109
109
|
}
|
|
110
|
-
const controllerPath =
|
|
110
|
+
const controllerPath = path_1.join(config.path, `${config.name}.controller.js`);
|
|
111
111
|
if (!fs.exists(controllerPath)) {
|
|
112
|
-
fs.copyTpl(
|
|
112
|
+
fs.copyTpl(path_1.join(root, 'ext/Controller.js'), controllerPath, config);
|
|
113
113
|
}
|
|
114
114
|
return fs;
|
|
115
115
|
}
|
package/dist/page/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/page/index.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,mCAAiD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/page/index.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,mCAAiD;AAEjD,iDAAuC;AACvC,6BAA6B;AAE7B,yCAAyC;AAEzC,iDAAuE;AAGvE;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,UAAmB;IAC/C,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,IAAI,IAAI,EAAE;QAChD,OAAO,WAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;KACvD;SAAM;QACH,OAAO,WAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;KACvD;AACL,CAAC;AAND,0CAMC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,MAAkB,EAAE,MAA0B;IAChE,MAAM,QAAQ,GAAsB;QAChC,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE;KACzC,CAAC;IACF,IAAI,MAAM,CAAC,UAAU,EAAE;QACnB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,WAAC,OAAA,KAAK,CAAC,IAAI,YAAK,MAAM,CAAC,UAAU,0CAAE,UAAU,CAAA,CAAA,EAAA,CAAC,CAAC;QACzF,QAAQ,CAAC,OAAO,GAAG,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,KAC7F,MAAM,CAAC,UAAU,CAAC,SACtB,eAAe,CAAC;QAChB,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,CAAC,WAAW,MAAK,KAAK,EAAE;YAC3C,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC;YACjC,2GAA2G;YAC3G,QAAQ,CAAC,MAAM;gBACX,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,QAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAG,QAAqB,CAAC,IAAI,CAAC,CAAC;SAClG;aAAM;YACH,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;SACnC;KACJ;SAAM;QACH,QAAQ,CAAC,OAAO,GAAG,GAAG,MAAM,CAAC,MAAM,iBAAiB,CAAC;QACrD,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;KACnC;IACD,MAAM,CAAC,IAAI,CAAC,QAAoB,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,wBAAwB,CAAC,QAAgB,EAAE,MAAkB,EAAE,EAAW;;IACtF,oBAAoB;IACpB,0BAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,EAAE;QACL,EAAE,GAAG,sBAAM,CAAC,eAAa,EAAE,CAAC,CAAC;KAChC;IACD,2BAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAE/B,uCAAuC;IACvC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAsB,CAAC;IAC1F,IAAI,MAAM,CAAC,UAAU,EAAE;QACnB,IAAI,cAAC,QAAQ,CAAC,SAAS,CAAC,0CAAE,OAAO,0CAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAC,EAAE;YACtE,MAAM,IAAI,KAAK,CAAC,oCAAoC,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC;SACxF;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACjD,CAAC,KAAe,EAAE,EAAE,WAAC,OAAA,KAAK,CAAC,IAAI,YAAK,MAAM,CAAC,UAAU,0CAAE,UAAU,CAAA,CAAA,EAAA,CACpE,CAAC;QACF,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAC3C,MAAM,IAAI,KAAK,CACX,kEAAkE,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,CACpG,CAAC;SACL;KACJ;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AAzBD,4DAyBC;AAED;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAC,QAAgB,EAAE,IAAgB,EAAE,EAAW;IAC9E,EAAE,GAAG,wBAAwB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAElD,MAAM,YAAY,GAAG,WAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,sBAAW,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IAEnD,oCAAoC;IACpC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE9C,wBAAwB;IACxB,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAM,CAAC,EAAE,CAAC,IAAI,CAAC,WAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACzG,IAAI,GAAG,KAAK,QAAQ,EAAE;YAClB,YAAY,CAAC,KAAmB,EAAE,MAAM,CAAC,CAAC;SAC7C;QACD,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,wBAAwB;IACxB,MAAM,QAAQ,GAAG,WAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC;IAC9D,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QACtB,EAAE,CAAC,OAAO,CAAC,WAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;KAC5D;IACD,MAAM,cAAc,GAAG,WAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,gBAAgB,CAAC,CAAC;IACzE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;QAC5B,EAAE,CAAC,OAAO,CAAC,WAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;KACvE;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AA5BD,gDA4BC"}
|
package/dist/page/types.d.ts
CHANGED
package/dist/page/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/page/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/page/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE5E,MAAM,WAAW,UAAW,SAAQ,aAAa;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE;QACT,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,IAAI,CAAC,EAAE;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACL;AAED,oBAAY,kBAAkB,GAAG,UAAU,GAAG,qBAAqB,CAAC"}
|
package/dist/section/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,KAAK,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AAOpE;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAOzE;AAyBD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAmCzG"}
|
package/dist/section/index.js
CHANGED
|
@@ -20,7 +20,7 @@ function getManifestRoot(root, ui5Version) {
|
|
|
20
20
|
// Old
|
|
21
21
|
subFolder = '1.85';
|
|
22
22
|
}
|
|
23
|
-
return
|
|
23
|
+
return path_1.join(root, 'section', subFolder);
|
|
24
24
|
}
|
|
25
25
|
exports.getManifestRoot = getManifestRoot;
|
|
26
26
|
/**
|
|
@@ -33,13 +33,13 @@ exports.getManifestRoot = getManifestRoot;
|
|
|
33
33
|
*/
|
|
34
34
|
function enhanceConfig(data, manifestPath, manifest) {
|
|
35
35
|
const config = Object.assign({}, data);
|
|
36
|
-
|
|
36
|
+
defaults_1.setCommonDefaults(config, manifestPath, manifest);
|
|
37
37
|
// set default event handler if it is to be created
|
|
38
38
|
if (config.eventHandler === true) {
|
|
39
39
|
config.eventHandler = `${config.ns}.${config.name}.onPress`;
|
|
40
40
|
}
|
|
41
41
|
// generate section content
|
|
42
|
-
config.content = config.control ||
|
|
42
|
+
config.content = config.control || defaults_1.getDefaultFragmentContent(config.name, config.eventHandler);
|
|
43
43
|
return config;
|
|
44
44
|
}
|
|
45
45
|
/**
|
|
@@ -51,31 +51,31 @@ function enhanceConfig(data, manifestPath, manifest) {
|
|
|
51
51
|
* @returns {Promise<Editor>} the updated mem-fs editor instance
|
|
52
52
|
*/
|
|
53
53
|
function generateCustomSection(basePath, customSection, fs) {
|
|
54
|
-
|
|
54
|
+
validate_1.validateVersion(customSection.ui5Version);
|
|
55
55
|
if (!fs) {
|
|
56
|
-
fs =
|
|
56
|
+
fs = mem_fs_editor_1.create(mem_fs_1.create());
|
|
57
57
|
}
|
|
58
|
-
|
|
59
|
-
const manifestPath =
|
|
58
|
+
validate_1.validateBasePath(basePath, fs);
|
|
59
|
+
const manifestPath = path_1.join(basePath, 'webapp/manifest.json');
|
|
60
60
|
const manifest = fs.readJSON(manifestPath);
|
|
61
|
-
const root =
|
|
61
|
+
const root = path_1.join(__dirname, '../../templates');
|
|
62
62
|
// merge with defaults
|
|
63
63
|
const completeSection = enhanceConfig(customSection, manifestPath, manifest);
|
|
64
64
|
// add event handler if requested
|
|
65
65
|
if (completeSection.eventHandler) {
|
|
66
|
-
const controllerPath =
|
|
66
|
+
const controllerPath = path_1.join(completeSection.path, `${completeSection.name}.js`);
|
|
67
67
|
if (!fs.exists(controllerPath)) {
|
|
68
|
-
fs.copyTpl(
|
|
68
|
+
fs.copyTpl(path_1.join(root, 'common/EventHandler.js'), controllerPath, completeSection);
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
// enhance manifest with section definition
|
|
72
72
|
const manifestRoot = getManifestRoot(root, customSection.ui5Version);
|
|
73
|
-
const filledTemplate =
|
|
73
|
+
const filledTemplate = ejs_1.render(fs.read(path_1.join(manifestRoot, `manifest.json`)), completeSection);
|
|
74
74
|
fs.extendJSON(manifestPath, JSON.parse(filledTemplate));
|
|
75
75
|
// add fragment
|
|
76
|
-
const viewPath =
|
|
76
|
+
const viewPath = path_1.join(completeSection.path, `${completeSection.name}.fragment.xml`);
|
|
77
77
|
if (!fs.exists(viewPath)) {
|
|
78
|
-
fs.copyTpl(
|
|
78
|
+
fs.copyTpl(path_1.join(root, 'common/Fragment.xml'), viewPath, completeSection);
|
|
79
79
|
}
|
|
80
80
|
return fs;
|
|
81
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":";;;AAAA,mCAAiD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":"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"}
|
package/dist/section/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/section/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/section/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEtF,MAAM,WAAW,aAAc,SAAQ,aAAa;IAChD;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa,EAAE,qBAAqB;IAC/E,OAAO,EAAE,MAAM,CAAC;CACnB"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sap-ux/fe-fpm-writer",
|
|
3
3
|
"description": "SAP Fiori elements flexible programming model writer",
|
|
4
|
-
"version": "0.5.
|
|
4
|
+
"version": "0.5.3",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/SAP/open-ux-tools.git",
|
|
8
|
+
"directory": "packages/fe-fpm-writer"
|
|
9
|
+
},
|
|
10
|
+
"bugs": {
|
|
11
|
+
"url": "https://github.com/SAP/open-ux-tools/issues?q=is%3Aopen+is%3Aissue+label%3Abug+label%3Afe-fpm-writer"
|
|
12
|
+
},
|
|
5
13
|
"license": "Apache-2.0",
|
|
6
14
|
"main": "dist/index.js",
|
|
7
15
|
"files": [
|