@sap-ux/fe-fpm-writer 0.5.2 → 0.6.0

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.
@@ -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
- (0, defaults_1.setCommonDefaults)(config, manifestPath, manifest);
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
- (0, validate_1.validateVersion)(actionConfig.ui5Version);
68
+ validate_1.validateVersion(actionConfig.ui5Version);
69
69
  if (!fs) {
70
- fs = (0, mem_fs_editor_1.create)((0, mem_fs_1.create)());
70
+ fs = mem_fs_editor_1.create(mem_fs_1.create());
71
71
  }
72
- (0, validate_1.validateBasePath)(basePath, fs);
73
- const manifestPath = (0, path_1.join)(basePath, 'webapp/manifest.json');
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 = (0, path_1.join)(__dirname, '../../templates');
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 = (0, path_1.join)(config.path, `${config.name}.js`);
79
+ const controllerPath = path_1.join(config.path, `${config.name}.js`);
80
80
  if (!fs.exists(controllerPath)) {
81
- fs.copyTpl((0, path_1.join)(root, 'common/EventHandler.js'), controllerPath, config);
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((0, ejs_1.render)(fs.read((0, path_1.join)(root, `action/manifest.action.json`)), config)));
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
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/action/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/action/index.ts"],"names":[],"mappings":";;;AAAA,mCAAiD;AAEjD,iDAAuC;AAEvC,mCAAwC;AACxC,+BAA4B;AAC5B,6BAA6B;AAC7B,iDAAuE;AAEvE,iDAAuD;AAEvD;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,IAAkB,EAAE,YAAoB,EAAE,QAAkB;IAC/E,cAAc;IACd,MAAM,MAAM,mCACL,IAAI,KACP,MAAM,oBAAO,IAAI,CAAC,MAAM,GACxB,QAAQ,oBAAO,IAAI,CAAC,QAAQ,IAC/B,CAAC;IACF,4BAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAElD,gDAAgD;IAChD,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC;IAC1D,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC;IAE1D,OAAO,MAA8B,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,4CAA4C,CAAC,QAAa,EAAE,MAA0B;IAClG,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;IAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;IACpD,IAAI,MAAM,CAAC,OAAO,KAAK,qBAAa,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,KAAK,qBAAa,CAAC,MAAM,EAAE;QACpF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;QACpE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO;YACjD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;KAChE;SAAM;QACH,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,MAAM,SAAS,GAAG,GAAG,aAAa,GAAG,MAAM,CAAC,OAAO,GAAG,aAAa,EAAE,CAAC;QACtE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,IAAI,EAAE,CAAC;QAC9F,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC;YACjD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAChE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,OAAO;YACzD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;KACxE;AACL,CAAC;AArBD,oGAqBC;AAED;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAAC,QAAgB,EAAE,YAA0B,EAAE,EAAW;IAC1F,0BAAe,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,EAAE;QACL,EAAE,GAAG,sBAAM,CAAC,eAAa,EAAE,CAAC,CAAC;KAChC;IACD,2BAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAG,WAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAa,CAAC;IAEvD,MAAM,MAAM,GAAG,aAAa,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAEnE,MAAM,IAAI,GAAG,WAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAEhD,iCAAiC;IACjC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,KAAK,IAAI,EAAE;QACvC,MAAM,cAAc,GAAG,WAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;YAC5B,EAAE,CAAC,OAAO,CAAC,WAAI,CAAC,IAAI,EAAE,wBAAwB,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;SAC5E;QACD,MAAM,CAAC,QAAQ,CAAC,YAAY,GAAG,GAAG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC;KACxE;IAED,mEAAmE;IACnE,MAAM,OAAO,GAAG,4CAA4C,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACtF,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,YAAM,CAAC,EAAE,CAAC,IAAI,CAAC,WAAI,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACvG,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAErC,OAAO,EAAE,CAAC;AACd,CAAC;AA7BD,oDA6BC"}
@@ -0,0 +1,27 @@
1
+ import type { Editor } from 'mem-fs-editor';
2
+ /**
3
+ * Configurable options when enabling the Flexible Programming Model in a UI5 application.
4
+ *
5
+ */
6
+ export interface FPMConfig {
7
+ /**
8
+ * If set to true, then the Component.js file will be replaced with the default FPM Component.js, otherwise, the existing Component.js stays as-is.
9
+ */
10
+ replaceAppComponent?: boolean;
11
+ /**
12
+ * If set to true, then FCL will be enabled.
13
+ * (Note: if set to false, nothing will be done i.e. FCL is not disabled)
14
+ */
15
+ fcl?: boolean;
16
+ }
17
+ export declare const MIN_VERSION = "1.94.0";
18
+ /**
19
+ * Enable the flexible programming model for an application.
20
+ *
21
+ * @param {string} basePath - the base path
22
+ * @param {FPMConfig} config - the FPM configuration
23
+ * @param {Editor} [fs] - the mem-fs editor instance
24
+ * @returns {Promise<Editor>} the updated mem-fs editor instance
25
+ */
26
+ export declare function enableFPM(basePath: string, config?: FPMConfig, fs?: Editor): Editor;
27
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAO5C;;;GAGG;AACH,MAAM,WAAW,SAAS;IACtB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,WAAW,WAAW,CAAC;AAEpC;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,SAAc,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CA+DvF"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.enableFPM = exports.MIN_VERSION = void 0;
4
+ const mem_fs_1 = require("mem-fs");
5
+ const mem_fs_editor_1 = require("mem-fs-editor");
6
+ const path_1 = require("path");
7
+ const semver_1 = require("semver");
8
+ const defaults_1 = require("../common/defaults");
9
+ exports.MIN_VERSION = '1.94.0';
10
+ /**
11
+ * Enable the flexible programming model for an application.
12
+ *
13
+ * @param {string} basePath - the base path
14
+ * @param {FPMConfig} config - the FPM configuration
15
+ * @param {Editor} [fs] - the mem-fs editor instance
16
+ * @returns {Promise<Editor>} the updated mem-fs editor instance
17
+ */
18
+ function enableFPM(basePath, config = {}, fs) {
19
+ var _a, _b, _c, _d, _e;
20
+ if (!fs) {
21
+ fs = mem_fs_editor_1.create(mem_fs_1.create());
22
+ }
23
+ const manifestPath = path_1.join(basePath, 'webapp/manifest.json');
24
+ if (!fs.exists(manifestPath)) {
25
+ throw new Error(`Invalid project folder. Cannot find required file ${manifestPath}`);
26
+ }
27
+ const manifest = fs.readJSON(manifestPath);
28
+ // add FE libs is not yet added
29
+ if (!((_c = (_b = (_a = manifest['sap.ui5']) === null || _a === void 0 ? void 0 : _a.dependencies) === null || _b === void 0 ? void 0 : _b.libs) === null || _c === void 0 ? void 0 : _c['sap.fe.templates'])) {
30
+ fs.extendJSON(manifestPath, {
31
+ 'sap.ui5': {
32
+ dependencies: {
33
+ libs: {
34
+ 'sap.fe.templates': {}
35
+ }
36
+ }
37
+ }
38
+ });
39
+ }
40
+ // if a minUI5Version is set and it is smaller than the minimum required, increase it
41
+ if (((_d = manifest['sap.ui5']) === null || _d === void 0 ? void 0 : _d.dependencies.minUI5Version) &&
42
+ semver_1.lt((_e = manifest['sap.ui5']) === null || _e === void 0 ? void 0 : _e.dependencies.minUI5Version, exports.MIN_VERSION)) {
43
+ fs.extendJSON(manifestPath, {
44
+ 'sap.ui5': {
45
+ dependencies: {
46
+ minUI5Version: exports.MIN_VERSION
47
+ }
48
+ }
49
+ });
50
+ }
51
+ // enable FCL if requested
52
+ if (config.fcl) {
53
+ fs.extendJSON(manifestPath, {
54
+ 'sap.ui5': {
55
+ rootView: {
56
+ viewName: 'sap.fe.templates.RootContainer.view.Fcl',
57
+ type: 'XML',
58
+ async: true,
59
+ id: 'appRootView'
60
+ },
61
+ routing: {
62
+ config: {
63
+ routerClass: defaults_1.FCL_ROUTER
64
+ }
65
+ }
66
+ }
67
+ });
68
+ }
69
+ // replace Component.js
70
+ if (config.replaceAppComponent) {
71
+ const componentTemplate = path_1.join(__dirname, '../../templates/app/Component.js');
72
+ fs.copyTpl(componentTemplate, path_1.join(basePath, 'webapp/Component.js'), manifest['sap.app']);
73
+ }
74
+ return fs;
75
+ }
76
+ exports.enableFPM = enableFPM;
77
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/app/index.ts"],"names":[],"mappings":";;;AAAA,mCAAiD;AAEjD,iDAAuC;AACvC,+BAA4B;AAC5B,mCAA4B;AAE5B,iDAAgD;AAmBnC,QAAA,WAAW,GAAG,QAAQ,CAAC;AAEpC;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,QAAgB,EAAE,SAAoB,EAAE,EAAE,EAAW;;IAC3E,IAAI,CAAC,EAAE,EAAE;QACL,EAAE,GAAG,sBAAM,CAAC,eAAa,EAAE,CAAC,CAAC;KAChC;IAED,MAAM,YAAY,GAAG,WAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IAC5D,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,qDAAqD,YAAY,EAAE,CAAC,CAAC;KACxF;IACD,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAoB,CAAC;IAE9D,+BAA+B;IAC/B,IAAI,oBAAC,QAAQ,CAAC,SAAS,CAAC,0CAAE,YAAY,0CAAE,IAAI,0CAAG,kBAAkB,EAAC,EAAE;QAChE,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE;YACxB,SAAS,EAAE;gBACP,YAAY,EAAE;oBACV,IAAI,EAAE;wBACF,kBAAkB,EAAE,EAAE;qBACzB;iBACJ;aACJ;SACJ,CAAC,CAAC;KACN;IAED,qFAAqF;IACrF,IACI,OAAA,QAAQ,CAAC,SAAS,CAAC,0CAAE,YAAY,CAAC,aAAa;QAC/C,WAAE,OAAC,QAAQ,CAAC,SAAS,CAAC,0CAAE,YAAY,CAAC,aAAa,EAAE,mBAAW,CAAC,EAClE;QACE,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE;YACxB,SAAS,EAAE;gBACP,YAAY,EAAE;oBACV,aAAa,EAAE,mBAAW;iBAC7B;aACJ;SACJ,CAAC,CAAC;KACN;IACD,0BAA0B;IAC1B,IAAI,MAAM,CAAC,GAAG,EAAE;QACZ,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE;YACxB,SAAS,EAAE;gBACP,QAAQ,EAAE;oBACN,QAAQ,EAAE,yCAAyC;oBACnD,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,IAAI;oBACX,EAAE,EAAE,aAAa;iBACpB;gBACD,OAAO,EAAE;oBACL,MAAM,EAAE;wBACJ,WAAW,EAAE,qBAAU;qBAC1B;iBACJ;aACJ;SACJ,CAAC,CAAC;KACN;IAED,uBAAuB;IACvB,IAAI,MAAM,CAAC,mBAAmB,EAAE;QAC5B,MAAM,iBAAiB,GAAG,WAAI,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAC;QAC9E,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,WAAI,CAAC,QAAQ,EAAE,qBAAqB,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;KAC7F;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AA/DD,8BA+DC"}
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/column/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,KAAK,EAAE,iBAAiB,EAA6B,MAAM,SAAS,CAAC;AAK5E;;;;;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"}
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generateCustomColumn = exports.getManifestRoot = void 0;
4
- const validate_1 = require("../common/validate");
4
+ const ejs_1 = require("ejs");
5
5
  const mem_fs_1 = require("mem-fs");
6
6
  const mem_fs_editor_1 = require("mem-fs-editor");
7
7
  const path_1 = require("path");
8
- const ejs_1 = require("ejs");
9
8
  const defaults_1 = require("../common/defaults");
9
+ const validate_1 = require("../common/validate");
10
10
  /**
11
11
  * Get the template folder for the given UI5 version.
12
12
  *
@@ -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 (0, path_1.join)(__dirname, '../../templates/column/1.86');
18
+ return path_1.join(__dirname, '../../templates/column/1.86');
19
19
  }
20
20
  else if (ui5Version === 1.85) {
21
- return (0, path_1.join)(__dirname, '../../templates/column/1.85');
21
+ return path_1.join(__dirname, '../../templates/column/1.85');
22
22
  }
23
23
  else {
24
- return (0, path_1.join)(__dirname, '../../templates/column/1.84');
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
- (0, defaults_1.setCommonDefaults)(config, manifestPath, manifest);
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 || (0, defaults_1.getDefaultFragmentContent)(content, config.eventHandler);
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
- (0, validate_1.validateVersion)(customColumn.ui5Version);
60
+ validate_1.validateVersion(customColumn.ui5Version);
61
61
  if (!fs) {
62
- fs = (0, mem_fs_editor_1.create)((0, mem_fs_1.create)());
62
+ fs = mem_fs_editor_1.create(mem_fs_1.create());
63
63
  }
64
- (0, validate_1.validateBasePath)(basePath, fs);
65
- const manifestPath = (0, path_1.join)(basePath, 'webapp/manifest.json');
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 = (0, path_1.join)(__dirname, '../../templates');
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((0, path_1.join)(root, 'common/EventHandler.js'), (0, path_1.join)(completeColumn.path, `${completeColumn.name}.js`), completeColumn);
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 = (0, ejs_1.render)(fs.read((0, path_1.join)(manifestRoot, `manifest.json`)), completeColumn);
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 = (0, path_1.join)(completeColumn.path, `${completeColumn.name}.fragment.xml`);
79
+ const viewPath = path_1.join(completeColumn.path, `${completeColumn.name}.fragment.xml`);
80
80
  if (completeColumn.control || !fs.exists(viewPath)) {
81
- fs.copyTpl((0, path_1.join)(root, 'common/Fragment.xml'), viewPath, completeColumn);
81
+ fs.copyTpl(path_1.join(root, 'common/Fragment.xml'), viewPath, completeColumn);
82
82
  }
83
83
  return fs;
84
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/column/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/column/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { CustomElement, InternalCustomElement, Manifest } from './types';
2
+ export declare const FCL_ROUTER = "sap.f.routing.Router";
2
3
  /**
3
4
  * Sets the common default values for all custom elements.
4
5
  *
@@ -1 +1 @@
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"}
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,eAAO,MAAM,UAAU,yBAAyB,CAAC;AACjD;;;;;;;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"}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDefaultFragmentContent = exports.setCommonDefaults = void 0;
3
+ exports.getDefaultFragmentContent = exports.setCommonDefaults = exports.FCL_ROUTER = void 0;
4
4
  const path_1 = require("path");
5
+ exports.FCL_ROUTER = 'sap.f.routing.Router';
5
6
  /**
6
7
  * Sets the common default values for all custom elements.
7
8
  *
@@ -18,7 +19,7 @@ function setCommonDefaults(config, manifestPath, manifest) {
18
19
  config.folder = config.folder || `ext/${firstChar.toLocaleLowerCase() + config.name.substring(1)}`;
19
20
  // calculate namespace and path for generated artifacts
20
21
  config.ns = `${manifest['sap.app'].id}.${config.folder.replace(/[\/\\]/g, '.')}`;
21
- config.path = (0, path_1.join)((0, path_1.dirname)(manifestPath), config.folder);
22
+ config.path = path_1.join(path_1.dirname(manifestPath), config.folder);
22
23
  return config;
23
24
  }
24
25
  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,IAAA,WAAI,EAAC,IAAA,cAAO,EAAC,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
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/common/defaults.ts"],"names":[],"mappings":";;;AACA,+BAAqC;AAExB,QAAA,UAAU,GAAG,sBAAsB,CAAC;AACjD;;;;;;;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,3 +1,7 @@
1
+ import type { ManifestNamespace } from '@sap-ux/ui5-config';
2
+ export declare type Manifest = ManifestNamespace.SAPJSONSchemaForWebApplicationManifestFile & {
3
+ [key: string]: unknown;
4
+ };
1
5
  /**
2
6
  * Common properties for any custom element of the flexible programming model.
3
7
  */
@@ -43,32 +47,7 @@ export declare type Position = {
43
47
  */
44
48
  placement: Placement;
45
49
  };
46
- export interface Ui5RoutingTarget<T> {
47
- type: string;
48
- id: string;
49
- name: string;
50
+ export interface Ui5RoutingTarget<T> extends ManifestNamespace.Target {
50
51
  options?: T;
51
52
  }
52
- export interface Ui5RoutingRoute {
53
- pattern: string;
54
- name: string;
55
- target: string | string[];
56
- }
57
- /**
58
- * Interface of an object generated from a UI5 manifest.json
59
- */
60
- export interface Manifest {
61
- [key: string]: object;
62
- 'sap.app': {
63
- id: string;
64
- };
65
- 'sap.ui5': {
66
- routing: {
67
- routes: Ui5RoutingRoute[];
68
- targets: {
69
- [key: string]: Ui5RoutingTarget<any>;
70
- };
71
- };
72
- };
73
- }
74
53
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,oBAAY,SAAS;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,GAAG,QAAQ;CACd;AAED;;GAEG;AACH,oBAAY,QAAQ,GAAG;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,gBAAgB,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,CAAC,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,SAAS,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;KACd,CAAC;IACF,SAAS,EAAE;QACP,OAAO,EAAE;YACL,MAAM,EAAE,eAAe,EAAE,CAAC;YAC1B,OAAO,EAAE;gBAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;aAAE,CAAC;SACrD,CAAC;KACL,CAAC;CACL"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,oBAAY,QAAQ,GAAG,iBAAiB,CAAC,0CAA0C,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAEjH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,oBAAY,SAAS;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,GAAG,QAAQ;CACd;AAED;;GAEG;AACH,oBAAY,QAAQ,GAAG;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,SAAS,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,iBAAiB,CAAC,MAAM;IACjE,OAAO,CAAC,EAAE,CAAC,CAAC;CACf"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":";;;AA0BA;;GAEG;AACH,IAAY,SAIX;AAJD,WAAY,SAAS;IACjB,4BAAe,CAAA;IACf,8BAAiB,CAAA;IACjB,wBAAW,CAAA;AACf,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":";;;AA8BA;;GAEG;AACH,IAAY,SAIX;AAJD,WAAY,SAAS;IACjB,4BAAe,CAAA;IACf,8BAAiB,CAAA;IACjB,wBAAW,CAAA;AACf,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB"}
@@ -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 = (0, mem_fs_editor_1.create)((0, mem_fs_1.create)());
30
+ fs = mem_fs_editor_1.create(mem_fs_1.create());
31
31
  }
32
- const manifestPath = (0, path_1.join)(basePath, 'webapp', 'manifest.json');
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;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,IAAA,sBAAM,EAAC,IAAA,eAAa,GAAE,CAAC,CAAC;KAChC;IAED,MAAM,YAAY,GAAG,IAAA,WAAI,EAAC,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,CAAA,MAAA,MAAA,MAAA,QAAQ,CAAC,SAAS,CAAC,0CAAE,YAAY,0CAAE,IAAI,0CAAG,kBAAkB,CAAC,MAAK,SAAS,CAAC,KAAK,KAAK,EAAE;YACzF,MAAM,IAAI,KAAK,CACX,gHAAgH,CACnH,CAAC;SACL;KACJ;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAlBD,4CAkBC"}
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/index.d.ts CHANGED
@@ -6,5 +6,6 @@ export { CustomTableColumn } from './column/types';
6
6
  export { generateCustomColumn } from './column';
7
7
  export { CustomSection } from './section/types';
8
8
  export { generateCustomSection } from './section';
9
+ export { enableFPM, FPMConfig } from './app';
9
10
  export { validateBasePath, validateVersion } from './common/validate';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAElD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateVersion = exports.validateBasePath = exports.generateCustomSection = exports.generateCustomColumn = exports.generateCustomAction = exports.TargetControl = exports.generateCustomPage = void 0;
3
+ exports.validateVersion = exports.validateBasePath = exports.enableFPM = exports.generateCustomSection = exports.generateCustomColumn = exports.generateCustomAction = exports.TargetControl = exports.generateCustomPage = void 0;
4
4
  var page_1 = require("./page");
5
5
  Object.defineProperty(exports, "generateCustomPage", { enumerable: true, get: function () { return page_1.generateCustomPage; } });
6
6
  var types_1 = require("./action/types");
@@ -11,6 +11,8 @@ var column_1 = require("./column");
11
11
  Object.defineProperty(exports, "generateCustomColumn", { enumerable: true, get: function () { return column_1.generateCustomColumn; } });
12
12
  var section_1 = require("./section");
13
13
  Object.defineProperty(exports, "generateCustomSection", { enumerable: true, get: function () { return section_1.generateCustomSection; } });
14
+ var app_1 = require("./app");
15
+ Object.defineProperty(exports, "enableFPM", { enumerable: true, get: function () { return app_1.enableFPM; } });
14
16
  var validate_1 = require("./common/validate");
15
17
  Object.defineProperty(exports, "validateBasePath", { enumerable: true, get: function () { return validate_1.validateBasePath; } });
16
18
  Object.defineProperty(exports, "validateVersion", { enumerable: true, get: function () { return validate_1.validateVersion; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,+BAA4C;AAAnC,0GAAA,kBAAkB,OAAA;AAE3B,wCAA6D;AAAtC,sGAAA,aAAa,OAAA;AACpC,mCAAgD;AAAvC,8GAAA,oBAAoB,OAAA;AAG7B,mCAAgD;AAAvC,8GAAA,oBAAoB,OAAA;AAG7B,qCAAkD;AAAzC,gHAAA,qBAAqB,OAAA;AAE9B,8CAAsE;AAA7D,4GAAA,gBAAgB,OAAA;AAAE,2GAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,+BAA4C;AAAnC,0GAAA,kBAAkB,OAAA;AAE3B,wCAA6D;AAAtC,sGAAA,aAAa,OAAA;AACpC,mCAAgD;AAAvC,8GAAA,oBAAoB,OAAA;AAG7B,mCAAgD;AAAvC,8GAAA,oBAAoB,OAAA;AAG7B,qCAAkD;AAAzC,gHAAA,qBAAqB,OAAA;AAE9B,6BAA6C;AAApC,gGAAA,SAAS,OAAA;AAElB,8CAAsE;AAA7D,4GAAA,gBAAgB,OAAA;AAAE,2GAAA,eAAe,OAAA"}
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/page/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAI9D;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,kBAAkB,CA0BlG"}
@@ -11,9 +11,22 @@ const defaults_1 = require("../common/defaults");
11
11
  * @returns enhanced configuration
12
12
  */
13
13
  function enhanceData(data, manifestPath, fs) {
14
+ var _a, _b, _c, _d, _e, _f;
14
15
  const manifest = fs.readJSON(manifestPath);
15
16
  // set common defaults
16
- const config = (0, defaults_1.setCommonDefaults)(data, manifestPath, manifest);
17
+ const config = defaults_1.setCommonDefaults(data, manifestPath, manifest);
18
+ // if FCL is enabled enhance the configuration
19
+ if (((_c = (_b = (_a = manifest['sap.ui5']) === null || _a === void 0 ? void 0 : _a.routing) === null || _b === void 0 ? void 0 : _b.config) === null || _c === void 0 ? void 0 : _c.routerClass) === defaults_1.FCL_ROUTER) {
20
+ config.fcl = true;
21
+ if (config.navigation) {
22
+ const sourceRoute = (((_e = (_d = manifest['sap.ui5']) === null || _d === void 0 ? void 0 : _d.routing) === null || _e === void 0 ? void 0 : _e.routes) || []).find((route) => { var _a; return route.name === ((_a = config.navigation) === null || _a === void 0 ? void 0 : _a.sourcePage); });
23
+ config.controlAggregation =
24
+ ((_f = sourceRoute === null || sourceRoute === void 0 ? void 0 : sourceRoute.target) !== null && _f !== void 0 ? _f : []).length > 1 ? 'endColumnPages' : 'midColumnPages';
25
+ }
26
+ else {
27
+ config.controlAggregation = 'beginColumnPages';
28
+ }
29
+ }
17
30
  if (config.view === undefined) {
18
31
  config.view = {
19
32
  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,IAAA,4BAAiB,EAAa,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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/page/defaults.ts"],"names":[],"mappings":";;;AAKA,iDAAmE;AAEnE;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,IAAgB,EAAE,YAAoB,EAAE,EAAU;;IAC1E,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAa,CAAC;IAEvD,sBAAsB;IACtB,MAAM,MAAM,GAAG,4BAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAuB,CAAC;IAErF,8CAA8C;IAC9C,IAAI,mBAAA,QAAQ,CAAC,SAAS,CAAC,0CAAE,OAAO,0CAAE,MAAM,0CAAE,WAAW,MAAK,qBAAU,EAAE;QAClE,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC;QAClB,IAAI,MAAM,CAAC,UAAU,EAAE;YACnB,MAAM,WAAW,GAAG,CAAC,CAAC,YAAA,QAAQ,CAAC,SAAS,CAAC,0CAAE,OAAO,0CAAE,MAAoC,KAAI,EAAE,CAAC,CAAC,IAAI,CAChG,CAAC,KAAK,EAAE,EAAE,WAAC,OAAA,KAAK,CAAC,IAAI,YAAK,MAAM,CAAC,UAAU,0CAAE,UAAU,CAAA,CAAA,EAAA,CAC1D,CAAC;YACF,MAAM,CAAC,kBAAkB;gBACrB,OAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAmB,mCAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;SAClG;aAAM;YACH,MAAM,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;SAClD;KACJ;IAED,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;AA1BD,kCA0BC"}
@@ -1 +1 @@
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"}
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;AAqCD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAgClG;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAmC1F"}
@@ -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 (0, path_1.join)(__dirname, '../../templates/page/1.94');
18
+ return path_1.join(__dirname, '../../templates/page/1.94');
19
19
  }
20
20
  else {
21
- return (0, path_1.join)(__dirname, '../../templates/page/1.84');
21
+ return path_1.join(__dirname, '../../templates/page/1.84');
22
22
  }
23
23
  }
24
24
  exports.getTemplateRoot = getTemplateRoot;
@@ -29,25 +29,33 @@ exports.getTemplateRoot = getTemplateRoot;
29
29
  * @param config configuration object
30
30
  */
31
31
  function updateRoutes(routes, config) {
32
+ var _a, _b;
32
33
  const newRoute = {
33
34
  name: `${config.entity}${config.name}`
34
35
  };
35
36
  if (config.navigation) {
36
37
  const sourceRoute = routes.find((route) => { var _a; return route.name === ((_a = config.navigation) === null || _a === void 0 ? void 0 : _a.sourcePage); });
37
- newRoute.pattern = `${sourceRoute === null || sourceRoute === void 0 ? void 0 : sourceRoute.pattern.replace(':?query:', '')}/${config.navigation.navEntity}({${config.navigation.navEntity}Key}):?query:`;
38
- if ((sourceRoute === null || sourceRoute === void 0 ? void 0 : sourceRoute.target.constructor) === Array) {
38
+ const pattern = {
39
+ base: (_a = sourceRoute === null || sourceRoute === void 0 ? void 0 : sourceRoute.pattern) === null || _a === void 0 ? void 0 : _a.replace(':?query:', ''),
40
+ navEntity: config.navigation.navEntity,
41
+ navKey: config.navigation.navKey ? `({${config.navigation.navEntity}Key})` : ''
42
+ };
43
+ newRoute.pattern = `${pattern.base}/${pattern.navEntity}${pattern.navKey}:?query:`;
44
+ if (((_b = sourceRoute === null || sourceRoute === void 0 ? void 0 : sourceRoute.target) === null || _b === void 0 ? void 0 : _b.constructor) === Array) {
39
45
  const pages = sourceRoute.target;
40
46
  // FCL only supports 3 columns, therefore, show the page in fullscreen if it is the 4th level of navigation
41
47
  newRoute.target =
42
- pages.length > 2 ? [newRoute.name] : [...pages, newRoute.name];
48
+ pages.length > 2
49
+ ? [newRoute.name]
50
+ : [...pages, newRoute.name];
43
51
  }
44
52
  else {
45
- newRoute.target = newRoute.name;
53
+ newRoute.target = config.fcl ? [newRoute.name] : newRoute.name;
46
54
  }
47
55
  }
48
56
  else {
49
- newRoute.pattern = `${config.entity}({key}):?query:`;
50
- newRoute.target = newRoute.name;
57
+ newRoute.pattern = routes.length > 0 ? `${config.entity}:?query:` : ':?query:';
58
+ newRoute.target = config.fcl ? [newRoute.name] : newRoute.name;
51
59
  }
52
60
  routes.push(newRoute);
53
61
  }
@@ -60,20 +68,29 @@ function updateRoutes(routes, config) {
60
68
  * @returns {Promise<Editor>} the updated memfs editor instance
61
69
  */
62
70
  function validateCustomPageConfig(basePath, config, fs) {
63
- var _a, _b;
71
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
64
72
  // common validators
65
- (0, validate_1.validateVersion)(config.ui5Version);
73
+ validate_1.validateVersion(config.ui5Version);
66
74
  if (!fs) {
67
- fs = (0, mem_fs_editor_1.create)((0, mem_fs_1.create)());
75
+ fs = mem_fs_editor_1.create(mem_fs_1.create());
68
76
  }
69
- (0, validate_1.validateBasePath)(basePath, fs);
77
+ validate_1.validateBasePath(basePath, fs);
70
78
  // validate config against the manifest
71
- const manifest = fs.readJSON((0, path_1.join)(basePath, 'webapp/manifest.json'));
79
+ const manifest = fs.readJSON(path_1.join(basePath, 'webapp/manifest.json'));
72
80
  if (config.navigation) {
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])) {
81
+ if (!((_c = (_b = (_a = manifest['sap.ui5']) === null || _a === void 0 ? void 0 : _a.routing) === null || _b === void 0 ? void 0 : _b.targets) === null || _c === void 0 ? void 0 : _c[config.navigation.sourcePage])) {
74
82
  throw new Error(`Could not find navigation source ${config.navigation.sourcePage}!`);
75
83
  }
76
- const route = manifest['sap.ui5'].routing.routes.find((route) => { var _a; return route.name === ((_a = config.navigation) === null || _a === void 0 ? void 0 : _a.sourcePage); });
84
+ const routes = {};
85
+ if (((_f = (_e = (_d = manifest['sap.ui5']) === null || _d === void 0 ? void 0 : _d.routing) === null || _e === void 0 ? void 0 : _e.routes) === null || _f === void 0 ? void 0 : _f.constructor) === Array) {
86
+ manifest['sap.ui5'].routing.routes.forEach((routeWithName) => {
87
+ routes[routeWithName.name] = routeWithName;
88
+ });
89
+ }
90
+ else {
91
+ Object.assign(routes, (_j = (_h = (_g = manifest['sap.ui5']) === null || _g === void 0 ? void 0 : _g.routing) === null || _h === void 0 ? void 0 : _h.routes) !== null && _j !== void 0 ? _j : {});
92
+ }
93
+ const route = routes[(_k = config.navigation) === null || _k === void 0 ? void 0 : _k.sourcePage];
77
94
  if (!route || !route.pattern || !route.target) {
78
95
  throw new Error(`Missing or invalid routing configuration for navigation source ${config.navigation.sourcePage}!`);
79
96
  }
@@ -91,25 +108,33 @@ exports.validateCustomPageConfig = validateCustomPageConfig;
91
108
  */
92
109
  function generateCustomPage(basePath, data, fs) {
93
110
  fs = validateCustomPageConfig(basePath, data, fs);
94
- const manifestPath = (0, path_1.join)(basePath, 'webapp/manifest.json');
95
- const config = (0, defaults_1.enhanceData)(data, manifestPath, fs);
111
+ const manifestPath = path_1.join(basePath, 'webapp/manifest.json');
112
+ const config = defaults_1.enhanceData(data, manifestPath, fs);
96
113
  // merge content into existing files
97
114
  const root = getTemplateRoot(data.ui5Version);
98
115
  // enhance manifest.json
99
- fs.extendJSON(manifestPath, JSON.parse((0, ejs_1.render)(fs.read((0, path_1.join)(root, `manifest.json`)), config)), (key, value) => {
100
- if (key === 'routes') {
101
- updateRoutes(value, config);
116
+ fs.extendJSON(manifestPath, JSON.parse(ejs_1.render(fs.read(path_1.join(root, `manifest.json`)), config)), (key, value) => {
117
+ var _a;
118
+ switch (key) {
119
+ case 'routing':
120
+ value.routes = (_a = value.routes) !== null && _a !== void 0 ? _a : [];
121
+ break;
122
+ case 'routes':
123
+ updateRoutes(value, config);
124
+ break;
125
+ default:
126
+ break;
102
127
  }
103
128
  return value;
104
129
  });
105
130
  // add extension content
106
- const viewPath = (0, path_1.join)(config.path, `${config.name}.view.xml`);
131
+ const viewPath = path_1.join(config.path, `${config.name}.view.xml`);
107
132
  if (!fs.exists(viewPath)) {
108
- fs.copyTpl((0, path_1.join)(root, 'ext/View.xml'), viewPath, config);
133
+ fs.copyTpl(path_1.join(root, 'ext/View.xml'), viewPath, config);
109
134
  }
110
- const controllerPath = (0, path_1.join)(config.path, `${config.name}.controller.js`);
135
+ const controllerPath = path_1.join(config.path, `${config.name}.controller.js`);
111
136
  if (!fs.exists(controllerPath)) {
112
- fs.copyTpl((0, path_1.join)(root, 'ext/Controller.js'), controllerPath, config);
137
+ fs.copyTpl(path_1.join(root, 'ext/Controller.js'), controllerPath, config);
113
138
  }
114
139
  return fs;
115
140
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/page/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/page/index.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,55 @@
1
1
  import type { CustomElement, InternalCustomElement } from '../common/types';
2
+ /**
3
+ * Configuration options for adding a custom page.
4
+ */
2
5
  export interface CustomPage extends CustomElement {
6
+ /**
7
+ * Name of the entity used for the custom page.
8
+ */
3
9
  entity: string;
10
+ /**
11
+ * Optional incoming navigation configuration. If provided then a navigation configuration is added to an existing page navigating to this custom page.
12
+ */
4
13
  navigation?: {
14
+ /**
15
+ * Source of the navigation to the custom page
16
+ */
5
17
  sourcePage: string;
18
+ /**
19
+ * Source entity that is use as the base part of the route
20
+ */
6
21
  sourceEntity: string;
22
+ /**
23
+ * Name of the navigation entity
24
+ */
7
25
  navEntity: string;
26
+ /**
27
+ * If set to true, then the generated route will point to a specific entity, otherwise, it will point to a list of the entities.
28
+ */
29
+ navKey?: boolean;
8
30
  };
31
+ /**
32
+ * Optional custom configuration for the generated view of the page.
33
+ */
9
34
  view?: {
35
+ /**
36
+ * Optional page title for the new page.
37
+ */
10
38
  title?: string;
11
- path?: string;
12
39
  };
13
40
  }
14
- export declare type InternalCustomPage = CustomPage & InternalCustomElement;
41
+ /**
42
+ * Additional internal configuration options that will be calculated based on the provided input as well as the target application.
43
+ */
44
+ export declare type InternalCustomPage = CustomPage & InternalCustomElement & {
45
+ /**
46
+ * The FLC flag is calculated to true if the existing app is configured to use the flexible column layout
47
+ */
48
+ fcl: boolean;
49
+ /**
50
+ * Represents the name of the control aggregation to be used for the custom page.
51
+ * This is only used if FCL is enabled and is calculated based on the optional sourcepage.
52
+ */
53
+ controlAggregation?: 'beginColumnPages' | 'midColumnPages' | 'endColumnPages';
54
+ };
15
55
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
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"}
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;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,aAAa;IAC7C;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,CAAC,EAAE;QACT;;WAEG;QACH,UAAU,EAAE,MAAM,CAAC;QAEnB;;WAEG;QACH,YAAY,EAAE,MAAM,CAAC;QAErB;;WAEG;QACH,SAAS,EAAE,MAAM,CAAC;QAElB;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IAEF;;OAEG;IACH,IAAI,CAAC,EAAE;QACH;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACL;AAED;;GAEG;AACH,oBAAY,kBAAkB,GAAG,UAAU,GACvC,qBAAqB,GAAG;IACpB;;OAEG;IACH,GAAG,EAAE,OAAO,CAAC;IAEb;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;CACjF,CAAC"}
@@ -20,7 +20,7 @@ function getManifestRoot(root, ui5Version) {
20
20
  // Old
21
21
  subFolder = '1.85';
22
22
  }
23
- return (0, path_1.join)(root, 'section', subFolder);
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
- (0, defaults_1.setCommonDefaults)(config, manifestPath, manifest);
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 || (0, defaults_1.getDefaultFragmentContent)(config.name, config.eventHandler);
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
- (0, validate_1.validateVersion)(customSection.ui5Version);
54
+ validate_1.validateVersion(customSection.ui5Version);
55
55
  if (!fs) {
56
- fs = (0, mem_fs_editor_1.create)((0, mem_fs_1.create)());
56
+ fs = mem_fs_editor_1.create(mem_fs_1.create());
57
57
  }
58
- (0, validate_1.validateBasePath)(basePath, fs);
59
- const manifestPath = (0, path_1.join)(basePath, 'webapp/manifest.json');
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 = (0, path_1.join)(__dirname, '../../templates');
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 = (0, path_1.join)(completeSection.path, `${completeSection.name}.js`);
66
+ const controllerPath = path_1.join(completeSection.path, `${completeSection.name}.js`);
67
67
  if (!fs.exists(controllerPath)) {
68
- fs.copyTpl((0, path_1.join)(root, 'common/EventHandler.js'), controllerPath, completeSection);
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 = (0, ejs_1.render)(fs.read((0, path_1.join)(manifestRoot, `manifest.json`)), completeSection);
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 = (0, path_1.join)(completeSection.path, `${completeSection.name}.fragment.xml`);
76
+ const viewPath = path_1.join(completeSection.path, `${completeSection.name}.fragment.xml`);
77
77
  if (!fs.exists(viewPath)) {
78
- fs.copyTpl((0, path_1.join)(root, 'common/Fragment.xml'), viewPath, completeSection);
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":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sap-ux/fe-fpm-writer",
3
3
  "description": "SAP Fiori elements flexible programming model writer",
4
- "version": "0.5.2",
4
+ "version": "0.6.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/SAP/open-ux-tools.git",
@@ -21,10 +21,12 @@
21
21
  "ejs": "3.1.6",
22
22
  "mem-fs": "2.1.0",
23
23
  "mem-fs-editor": "9.3.0",
24
- "xml-js": "1.6.11"
24
+ "xml-js": "1.6.11",
25
+ "semver": "7.3.5"
25
26
  },
26
27
  "devDependencies": {
27
- "@types/ejs": "3.1.0"
28
+ "@types/ejs": "3.1.0",
29
+ "@sap-ux/ui5-config": "0.13.1"
28
30
  },
29
31
  "engines": {
30
32
  "pnpm": ">=6.26.1",
@@ -0,0 +1,22 @@
1
+ sap.ui.define(
2
+ [
3
+ "sap/fe/core/AppComponent"
4
+ ],
5
+ function(AppComponent) {
6
+ "use strict";
7
+
8
+ return AppComponent.extend("<%- id %>.Component", {
9
+ metadata: {
10
+ manifest: "json"
11
+ }
12
+
13
+ /**
14
+ * The component is initialized by UI5 automatically during the startup of the app and calls the init method once.
15
+ * @public
16
+ * @override
17
+ */
18
+ //init: function() {
19
+ // AppComponent.prototype.init.apply(this, arguments);
20
+ //}
21
+ });
22
+ });
@@ -4,7 +4,8 @@
4
4
  "targets": {
5
5
  "<%- entity %><%- name %>": {
6
6
  "viewId": "<%- name %>View",
7
- "viewName": "<%- ns %>.<%- name %>",
7
+ "viewName": "<%- ns %>.<%- name %>",<%if (locals.controlAggregation) {%>
8
+ "controlAggregation": "<%- locals.controlAggregation %>",<% } %>
8
9
  "options": {
9
10
  "settings": {
10
11
  "entitySet": "<%- entity %>",
@@ -5,7 +5,8 @@
5
5
  "<%- entity %><%- name %>": {
6
6
  "type": "Component",
7
7
  "id": "<%- entity %><%- name %>",
8
- "name": "sap.fe.core.fpm",
8
+ "name": "sap.fe.core.fpm",<%if (locals.controlAggregation) {%>
9
+ "controlAggregation": "<%- locals.controlAggregation %>",<% } %>
9
10
  "options": {
10
11
  "settings": {
11
12
  "viewName": "<%- ns %>.<%- name %>",