@sap-ux/fe-fpm-writer 0.3.0 → 0.3.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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @sap-ux/fe-fpm-writer
2
2
 
3
+ ## 0.3.1
4
+
5
+ ### Patch Changes
6
+
7
+ - b0f69fe: Custom Section. Fix to support old(<1.86) and new(>=1.86) manifest.json syntaxes
8
+
3
9
  ## 0.3.0
4
10
 
5
11
  ### Minor Changes
@@ -1,5 +1,13 @@
1
1
  import { Editor } from 'mem-fs-editor';
2
2
  import { CustomSection } from './types';
3
+ /**
4
+ * Get the template folder for the given UI5 version.
5
+ *
6
+ * @param root root path to templates folder.
7
+ * @param ui5Version required UI5 version.
8
+ * @returns path to the template folder containing the manifest.json ejs template
9
+ */
10
+ export declare function getManifestRoot(root: string, ui5Version?: number): string;
3
11
  /**
4
12
  * Add a custom section to an existing UI5 application.
5
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AA8B/D;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAiCzG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AAO/D;;;;;;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,CAkCzG"}
@@ -1,12 +1,28 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateCustomSection = void 0;
3
+ exports.generateCustomSection = exports.getManifestRoot = void 0;
4
4
  const mem_fs_1 = require("mem-fs");
5
5
  const mem_fs_editor_1 = require("mem-fs-editor");
6
6
  const path_1 = require("path");
7
7
  const ejs_1 = require("ejs");
8
8
  const validate_1 = require("../common/validate");
9
9
  const defaults_1 = require("../common/defaults");
10
+ /**
11
+ * Get the template folder for the given UI5 version.
12
+ *
13
+ * @param root root path to templates folder.
14
+ * @param ui5Version required UI5 version.
15
+ * @returns path to the template folder containing the manifest.json ejs template
16
+ */
17
+ function getManifestRoot(root, ui5Version) {
18
+ let subFolder = '1.86';
19
+ if (ui5Version !== undefined && ui5Version < 1.86) {
20
+ // Old
21
+ subFolder = '1.85';
22
+ }
23
+ return (0, path_1.join)(root, 'section', subFolder);
24
+ }
25
+ exports.getManifestRoot = getManifestRoot;
10
26
  /**
11
27
  * Enhances the provided custom section configuration with additonal data.
12
28
  *
@@ -50,7 +66,8 @@ function generateCustomSection(basePath, customSection, fs) {
50
66
  fs.copyTpl((0, path_1.join)(root, 'common/EventHandler.js'), (0, path_1.join)(completeSection.path, `${completeSection.name}.js`), completeSection);
51
67
  }
52
68
  // enhance manifest with section definition
53
- const filledTemplate = (0, ejs_1.render)(fs.read((0, path_1.join)(root, `section/manifest.section.json`)), completeSection);
69
+ const manifestRoot = getManifestRoot(root, customSection.ui5Version);
70
+ const filledTemplate = (0, ejs_1.render)(fs.read((0, path_1.join)(manifestRoot, `manifest.json`)), completeSection);
54
71
  fs.extendJSON(manifestPath, JSON.parse(filledTemplate));
55
72
  // add fragment
56
73
  const viewPath = (0, path_1.join)(completeSection.path, `${completeSection.name}.fragment.xml`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/section/index.ts"],"names":[],"mappings":";;;AAAA,mCAAiD;AACjD,iDAA+C;AAE/C,+BAA4B;AAC5B,6BAA6B;AAC7B,iDAAuE;AAEvE,iDAAkF;AAElF;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,IAAmB,EAAE,YAAoB,EAAE,QAAkB;IAChF,MAAM,MAAM,qBAAwD,IAAI,CAAE,CAAC;IAC3E,IAAA,4BAAiB,EAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAElD,mDAAmD;IACnD,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE;QAC9B,MAAM,CAAC,YAAY,GAAG,GAAG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC;KAC/D;IAED,2BAA2B;IAC3B,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,IAAA,oCAAyB,EAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IAE/F,OAAO,MAA+B,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CAAC,QAAgB,EAAE,aAA4B,EAAE,EAAW;IAC7F,IAAA,0BAAe,EAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE,EAAE;QACL,EAAE,GAAG,IAAA,sBAAM,EAAC,IAAA,eAAa,GAAE,CAAC,CAAC;KAChC;IACD,IAAA,2BAAgB,EAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAG,IAAA,WAAI,EAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAa,CAAC;IAEvD,MAAM,IAAI,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAEhD,sBAAsB;IACtB,MAAM,eAAe,GAAG,aAAa,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAE7E,iCAAiC;IACjC,IAAI,eAAe,CAAC,YAAY,EAAE;QAC9B,EAAE,CAAC,OAAO,CACN,IAAA,WAAI,EAAC,IAAI,EAAE,wBAAwB,CAAC,EACpC,IAAA,WAAI,EAAC,eAAe,CAAC,IAAI,EAAE,GAAG,eAAe,CAAC,IAAI,KAAK,CAAC,EACxD,eAAe,CAClB,CAAC;KACL;IAED,2CAA2C;IAC3C,MAAM,cAAc,GAAG,IAAA,YAAM,EAAC,EAAE,CAAC,IAAI,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;IACrG,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAExD,eAAe;IACf,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,eAAe,CAAC,IAAI,EAAE,GAAG,eAAe,CAAC,IAAI,eAAe,CAAC,CAAC;IACpF,EAAE,CAAC,OAAO,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,qBAAqB,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IAEzE,OAAO,EAAE,CAAC;AACd,CAAC;AAjCD,sDAiCC"}
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.3.0",
4
+ "version": "0.3.1",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/index.js",
7
7
  "scripts": {
@@ -10,6 +10,7 @@
10
10
  "sections": {
11
11
  "<%- name %>": {
12
12
  "name": "<%- ns %>.<%- name %>",
13
+ "type": "XMLFragment",
13
14
  "position": {
14
15
  <% if (position.placement) { %>
15
16
  "placement": "<%- position.placement %>",
@@ -0,0 +1,32 @@
1
+ {
2
+ "sap.ui5": {
3
+ "routing": {
4
+ "targets": {
5
+ "<%- target %>": {
6
+ "options": {
7
+ "settings": {
8
+ "content": {
9
+ "body": {
10
+ "sections": {
11
+ "<%- name %>": {
12
+ "template": "<%- ns %>.<%- name %>",
13
+ "position": {
14
+ <% if (position.placement) { %>
15
+ "placement": "<%- position.placement %>",
16
+ <% } %>
17
+ <% if (position.anchor) { %>
18
+ "anchor": "<%- position.anchor %>"
19
+ <% } %>
20
+ },
21
+ "title": "<%- title %>"
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
27
+ }
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }