@sap/ux-specification 1.71.46 → 1.71.50

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.
Files changed (172) hide show
  1. package/CHANGELOG.md +89 -6
  2. package/dist/documentation/runDocu-min.js +1 -1
  3. package/dist/documentation/styleDocu.css +4 -5
  4. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  5. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  6. package/dist/documentation/v2/v2-ListReport.html +1 -1
  7. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  8. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  9. package/dist/index-min.js +1 -1
  10. package/dist/schemas/v2/AnalyticalListPageConfig.json +107 -40
  11. package/dist/schemas/v2/ListReportConfig.json +110 -32
  12. package/dist/schemas/v2/ObjectPageConfig.json +245 -56
  13. package/dist/schemas/v2/OverviewPageConfig.json +236 -190
  14. package/dist/scripts/extractDocu.js +18 -8
  15. package/dist/scripts/extractDocu.js.map +1 -1
  16. package/dist/scripts/runDocu.js +105 -89
  17. package/dist/scripts/runDocu.js.map +1 -1
  18. package/dist/scripts/to-json-schema.js +27 -32
  19. package/dist/scripts/to-json-schema.js.map +1 -1
  20. package/dist/specification/v2/index-min.js +1 -1
  21. package/dist/src/api.js +3 -3
  22. package/dist/src/api.js.map +1 -1
  23. package/dist/src/apiTypes.d.ts +1 -2
  24. package/dist/src/specification/common/types.d.ts +4 -0
  25. package/dist/src/specification/common/types.js +5 -0
  26. package/dist/src/specification/common/types.js.map +1 -1
  27. package/dist/src/specification/schemaAccess.js +1 -3
  28. package/dist/src/specification/schemaAccess.js.map +1 -1
  29. package/dist/src/specification/v2/controls/Action.d.ts +82 -0
  30. package/dist/src/specification/v2/controls/{FormAction.js → Action.js} +1 -1
  31. package/dist/src/specification/v2/controls/Action.js.map +1 -0
  32. package/dist/src/specification/v2/controls/Card.d.ts +20 -72
  33. package/dist/src/specification/v2/controls/Card.js.map +1 -1
  34. package/dist/src/specification/v2/controls/FilterBar.d.ts +6 -2
  35. package/dist/src/specification/v2/controls/Footer.d.ts +20 -0
  36. package/dist/src/specification/v2/controls/{ObjectPageFooter.js → Footer.js} +1 -1
  37. package/dist/src/specification/v2/controls/Footer.js.map +1 -0
  38. package/dist/src/specification/v2/controls/ObjectPageForm.d.ts +1 -2
  39. package/dist/src/specification/v2/controls/ObjectPageHeader.d.ts +1 -1
  40. package/dist/src/specification/v2/controls/ObjectPageTable.d.ts +5 -0
  41. package/dist/src/specification/v2/controls/ObjectPageTable.js.map +1 -1
  42. package/dist/src/specification/v2/controls/ObjectPageToolBar.d.ts +1 -5
  43. package/dist/src/specification/v2/controls/Table.d.ts +14 -10
  44. package/dist/src/specification/v2/controls/Table.js.map +1 -1
  45. package/dist/src/specification/v2/controls/ToolBar.d.ts +1 -8
  46. package/dist/src/specification/v2/controls/index.d.ts +8 -10
  47. package/dist/src/specification/v2/controls/index.js +3 -3
  48. package/dist/src/specification/v2/controls/index.js.map +1 -1
  49. package/dist/src/specification/v2/pages/AnalyticalListPageConfig.d.ts +2 -1
  50. package/dist/src/specification/v2/pages/ListReportConfig.d.ts +3 -2
  51. package/dist/src/sync/common/appProvider.js.map +1 -1
  52. package/dist/src/sync/common/decoration/control.d.ts +11 -1
  53. package/dist/src/sync/common/decoration/control.js +29 -3
  54. package/dist/src/sync/common/decoration/control.js.map +1 -1
  55. package/dist/src/sync/common/decoration/factory.js +2 -4
  56. package/dist/src/sync/common/decoration/factory.js.map +1 -1
  57. package/dist/src/sync/common/generate/index.d.ts +1 -0
  58. package/dist/src/sync/common/generate/index.js +1 -0
  59. package/dist/src/sync/common/generate/index.js.map +1 -1
  60. package/dist/src/sync/common/generate/objectPage.d.ts +8 -0
  61. package/dist/src/sync/common/generate/objectPage.js +28 -12
  62. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  63. package/dist/src/sync/common/generate/utils.d.ts +60 -0
  64. package/dist/src/sync/common/generate/utils.js +208 -0
  65. package/dist/src/sync/common/generate/utils.js.map +1 -0
  66. package/dist/src/sync/common/i18n.json +2 -0
  67. package/dist/src/sync/common/import/utils.d.ts +8 -1
  68. package/dist/src/sync/common/import/utils.js +14 -3
  69. package/dist/src/sync/common/import/utils.js.map +1 -1
  70. package/dist/src/sync/common/importProject.js +13 -20
  71. package/dist/src/sync/common/importProject.js.map +1 -1
  72. package/dist/src/sync/common/types.d.ts +29 -15
  73. package/dist/src/sync/common/types.js +25 -1
  74. package/dist/src/sync/common/types.js.map +1 -1
  75. package/dist/src/sync/common/utils.d.ts +12 -24
  76. package/dist/src/sync/common/utils.js +31 -97
  77. package/dist/src/sync/common/utils.js.map +1 -1
  78. package/dist/src/sync/v2/export/controls/Action.d.ts +28 -0
  79. package/dist/src/sync/v2/export/controls/Action.js +127 -0
  80. package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
  81. package/dist/src/sync/v2/export/controls/Card.d.ts +3 -7
  82. package/dist/src/sync/v2/export/controls/Card.js +15 -43
  83. package/dist/src/sync/v2/export/controls/Card.js.map +1 -1
  84. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +4 -3
  85. package/dist/src/sync/v2/export/controls/FilterBar.js +25 -15
  86. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -1
  87. package/dist/src/sync/v2/export/controls/FormAction.js +3 -2
  88. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -1
  89. package/dist/src/sync/v2/export/controls/Fragment.d.ts +1 -1
  90. package/dist/src/sync/v2/export/controls/Fragment.js +244 -168
  91. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  92. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +8 -0
  93. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +62 -0
  94. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
  95. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +11 -29
  96. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -1
  97. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +1 -1
  98. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +2 -2
  99. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -1
  100. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +5 -1
  101. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +25 -0
  102. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -1
  103. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +8 -0
  104. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +61 -0
  105. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
  106. package/dist/src/sync/v2/export/controls/Table.d.ts +5 -4
  107. package/dist/src/sync/v2/export/controls/Table.js +16 -21
  108. package/dist/src/sync/v2/export/controls/Table.js.map +1 -1
  109. package/dist/src/sync/v2/export/controls/TableColumn.d.ts +18 -2
  110. package/dist/src/sync/v2/export/controls/TableColumn.js +126 -1
  111. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -1
  112. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +4 -0
  113. package/dist/src/sync/v2/export/controls/ToolBar.js +6 -0
  114. package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
  115. package/dist/src/sync/v2/export/controls/index.d.ts +11 -7
  116. package/dist/src/sync/v2/export/controls/index.js +11 -7
  117. package/dist/src/sync/v2/export/controls/index.js.map +1 -1
  118. package/dist/src/sync/v2/export/export.js +134 -111
  119. package/dist/src/sync/v2/export/export.js.map +1 -1
  120. package/dist/src/sync/v2/export/exportPage.js +3 -2
  121. package/dist/src/sync/v2/export/exportPage.js.map +1 -1
  122. package/dist/src/sync/v2/export/manifest.js +2 -5
  123. package/dist/src/sync/v2/export/manifest.js.map +1 -1
  124. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +2 -1
  125. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +3 -0
  126. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -1
  127. package/dist/src/sync/v2/export/pages/ListReport.d.ts +3 -2
  128. package/dist/src/sync/v2/export/pages/ListReport.js +3 -0
  129. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -1
  130. package/dist/src/sync/v2/export/view-controller-generator.d.ts +16 -21
  131. package/dist/src/sync/v2/export/view-controller-generator.js +20 -36
  132. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -1
  133. package/dist/src/sync/v2/generate/analyticalListReport.js +16 -8
  134. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  135. package/dist/src/sync/v2/generate/listReport.d.ts +8 -0
  136. package/dist/src/sync/v2/generate/listReport.js +26 -7
  137. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  138. package/dist/src/sync/v2/generate/objectPage.d.ts +1 -6
  139. package/dist/src/sync/v2/generate/objectPage.js +203 -110
  140. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  141. package/dist/src/sync/v2/generate/utils.d.ts +16 -12
  142. package/dist/src/sync/v2/generate/utils.js +235 -98
  143. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  144. package/dist/src/sync/v2/import/common/index.d.ts +29 -4
  145. package/dist/src/sync/v2/import/common/index.js +329 -45
  146. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  147. package/dist/src/sync/v2/import/controls/table.js +3 -2
  148. package/dist/src/sync/v2/import/controls/table.js.map +1 -1
  149. package/dist/src/sync/v2/import/pages/analyticalListPage.js +27 -5
  150. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
  151. package/dist/src/sync/v2/import/pages/listReport.d.ts +0 -5
  152. package/dist/src/sync/v2/import/pages/listReport.js +21 -100
  153. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  154. package/dist/src/sync/v2/import/pages/objectPage.d.ts +1 -1
  155. package/dist/src/sync/v2/import/pages/objectPage.js +440 -298
  156. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  157. package/dist/src/sync/v2/import/utils.d.ts +4 -6
  158. package/dist/src/sync/v2/import/utils.js +32 -11
  159. package/dist/src/sync/v2/import/utils.js.map +1 -1
  160. package/dist/src/sync/v2/types.d.ts +28 -2
  161. package/dist/src/sync/v2/types.js +14 -0
  162. package/dist/src/sync/v2/types.js.map +1 -1
  163. package/dist/test/unit/utils.test.d.ts +1 -1
  164. package/package.json +12 -11
  165. package/dist/src/specification/v2/controls/FormAction.d.ts +0 -38
  166. package/dist/src/specification/v2/controls/FormAction.js.map +0 -1
  167. package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +0 -11
  168. package/dist/src/specification/v2/controls/ObjectPageFooter.js.map +0 -1
  169. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.d.ts +0 -27
  170. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.js +0 -3
  171. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.js.map +0 -1
  172. package/dist/test/test-utils/metadataParser.d.ts +0 -19
@@ -4,45 +4,157 @@ const common_1 = require("../../common");
4
4
  const decorators_1 = require("../../common/decoration/decorators");
5
5
  const path_1 = require("path");
6
6
  const xml_js_1 = require("xml-js");
7
- exports.CUSTOM_COLUMNS_DEFINITION = 'TableCustomColumns';
8
- exports.CUSTOM_COLUMN_DEFINITION = 'TableCustomColumn';
7
+ const types_1 = require("../types");
9
8
  /**
10
- * Processes a LineItem record of type DataFieldForCation during app schema generation
9
+ * Common function for enhancing the LineItems definiton of app schema by custom columns
10
+ * @param appSchema - app-specific JSON schema
11
+ * @param customColumnsDefinitionName - custom column definition name (plural)
12
+ * @param customColumnDefinitionName - custom column definition name (singular)
13
+ */
14
+ function addCustomColumnDefinition(appSchema, customColumnsDefinitionName, customColumnDefinitionName) {
15
+ if (appSchema['definitions']['LineItems']) {
16
+ appSchema['definitions']['LineItems']['properties']['custom'] = {
17
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${customColumnsDefinitionName}`
18
+ };
19
+ }
20
+ appSchema['definitions'][customColumnsDefinitionName] = {
21
+ type: 'array',
22
+ items: {
23
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${customColumnDefinitionName}`
24
+ },
25
+ isViewNode: true,
26
+ description: 'Custom Columns'
27
+ };
28
+ const columnDefinition = appSchema['definitions'][customColumnDefinitionName];
29
+ for (const id in columnDefinition.properties) {
30
+ columnDefinition.properties[id].artifactType = common_1.ArtifactType.Manifest;
31
+ }
32
+ }
33
+ /**
34
+ * Prepares and returns id of action for further use and reference
35
+ * @param actionType - type of action
36
+ * @param lineItemProperties - properties of the line item collection: lineItemPath, lineItemRecord, lineItemId
37
+ * @returns {string} actionId
38
+ */
39
+ function getActionId(actionType, lineItemProperties) {
40
+ if (actionType === types_1.ActionTypeV2.ColumnIntentBased) {
41
+ return common_1.getSchemaKeyOfLineItemRecord(lineItemProperties.lineItemRecord);
42
+ }
43
+ else if (actionType === types_1.ActionTypeV2.ToolBarIntentBased || actionType === types_1.ActionTypeV2.FooterIntentBased) {
44
+ return common_1.prepareRef(`${lineItemProperties.lineItemRecord.SemanticObject}::${lineItemProperties.lineItemRecord.Action}`);
45
+ }
46
+ else if (actionType === types_1.ActionTypeV2.Column &&
47
+ lineItemProperties.lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
48
+ return common_1.prepareRef(`DataFieldForAction:::sAction::${lineItemProperties.lineItemRecord.Action}`);
49
+ }
50
+ else {
51
+ return common_1.prepareRef(lineItemProperties.lineItemRecord.Action);
52
+ }
53
+ }
54
+ /**
55
+ * Processes a LineItem record of type DataFieldForAction and DataFieldForIntentBasedNavigation during app schema generation
11
56
  * @param appSchema - the app specific schema that shall get enhanced
12
57
  * @param entityType - the entity type as part of the AVT ConverterOutput
13
58
  * @param actions - actions definition in schema, parent object
14
- * @param lineItemPath - annotation path to the line item
15
- * @param lineItemRecord - actual record of the line item collection
59
+ * @param lineItemProperties - properties of the line item collection: lineItemPath, lineItemRecord, lineItemId
60
+ * @param actionType - type of action
16
61
  * @param recordIndex - record index in the collection
17
62
  */
18
- function handleActionRecord(appSchema, entityType, actions, lineItemPath, lineItemRecord, recordIndex) {
19
- // Action but not inline action
20
- if (lineItemRecord.Determining !== true) {
21
- //no footer bar -> toolbar action
22
- const actionDefinition = `ToolBarAction<${common_1.prepareRef(lineItemRecord.Action)}>`;
23
- const description = common_1.getDatafieldDescription(lineItemRecord, entityType);
24
- actions['properties'][`DataFieldForAction::${lineItemRecord.Action}`] = {
25
- $ref: common_1.DEFINITION_LINK_PREFIX + actionDefinition,
26
- description,
27
- propertyIndex: recordIndex
28
- };
63
+ function handleActionRecord(appSchema, actions, lineItemProps, actionType, recordIndex) {
64
+ let actionReferenceType;
65
+ const actionTemplate = lineItemProps.lineItemId === 'LineItems' ? '' : 'ObjectPage';
66
+ const actionId = getActionId(actionType, lineItemProps);
67
+ if (actionType === types_1.ActionTypeV2.Footer || actionType === types_1.ActionTypeV2.FooterIntentBased) {
68
+ actionReferenceType = `Action`;
69
+ actionType = types_1.ActionTypeV2.Footer;
70
+ }
71
+ else if (actionType === types_1.ActionTypeV2.Column || actionType === types_1.ActionTypeV2.ColumnIntentBased) {
72
+ actionReferenceType = `TableColumnAction`;
73
+ }
74
+ else {
75
+ actionReferenceType = actionTemplate !== '' ? `${actionTemplate}${actionType}` : `Action`;
76
+ actionType = types_1.ActionTypeV2.ToolBar;
77
+ }
78
+ const actionDefinition = `${actionTemplate}${actionType}<${actionId}>`;
79
+ const description = common_1.getDatafieldDescription(lineItemProps.lineItemRecord, lineItemProps.entityType);
80
+ actions['properties'][actionId] = {
81
+ $ref: common_1.DEFINITION_LINK_PREFIX + actionDefinition,
82
+ description,
83
+ propertyIndex: recordIndex
84
+ };
85
+ if (appSchema['definitions'][actionReferenceType]) {
86
+ appSchema['definitions'][actionDefinition] = Object.assign(Object.assign({}, JSON.parse(JSON.stringify(appSchema['definitions'][actionReferenceType]))), { description, annotationPath: `${lineItemProps.lineItemPath}/${recordIndex}` });
87
+ }
88
+ else {
29
89
  appSchema['definitions'][actionDefinition] = {
30
90
  type: 'object',
31
91
  properties: {},
32
92
  description,
33
- annotationPath: lineItemPath + '/' + recordIndex,
93
+ annotationPath: `${lineItemProps.lineItemPath}/${recordIndex}`,
34
94
  isViewNode: true,
35
95
  additionalProperties: false
36
96
  };
37
97
  }
38
98
  }
39
99
  exports.handleActionRecord = handleActionRecord;
100
+ /**
101
+ * Returns the type of a column lineItem action
102
+ * @param lineItemId - optional: in case of OP the parameter must be passed to distinguish the OP tables;
103
+ * @param {object} lineItemRecord - actual record of the line item collection
104
+ * @param actionTypes - array of action types to be filled
105
+ */
106
+ function getColumnActionType(lineItemId, lineItemRecord, actionTypes) {
107
+ if (lineItemId !== 'LineItems' &&
108
+ lineItemRecord.Inline === true &&
109
+ (lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */ ||
110
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */)) {
111
+ actionTypes.push(types_1.ActionTypeV2.OPColumn);
112
+ }
113
+ else if (lineItemRecord.Inline === true && lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
114
+ actionTypes.push(types_1.ActionTypeV2.Column);
115
+ }
116
+ else if (lineItemRecord.Inline === true &&
117
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
118
+ actionTypes.push(types_1.ActionTypeV2.ColumnIntentBased);
119
+ }
120
+ }
121
+ /**
122
+ * Returns the type of a lineItem action
123
+ * @param {object} lineItemRecord - actual record of the line item collection
124
+ * @returns {string[] | undefined } ActionTypeV2[] - action type(s) of the lineItem
125
+ */
126
+ function getActionType(lineItemRecord, lineItemId) {
127
+ const actionTypes = [];
128
+ if (lineItemRecord.$Type !== "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */ &&
129
+ lineItemRecord.$Type !== "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
130
+ return undefined;
131
+ }
132
+ if (lineItemRecord.Inline !== true &&
133
+ lineItemRecord.Determining !== true &&
134
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
135
+ actionTypes.push(types_1.ActionTypeV2.ToolBar);
136
+ }
137
+ else if (lineItemRecord.Inline !== true &&
138
+ lineItemRecord.Determining !== true &&
139
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
140
+ actionTypes.push(types_1.ActionTypeV2.ToolBarIntentBased);
141
+ }
142
+ else if (lineItemRecord.Determining === true && lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
143
+ actionTypes.push(types_1.ActionTypeV2.Footer);
144
+ }
145
+ else if (lineItemRecord.Determining === true &&
146
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
147
+ actionTypes.push(types_1.ActionTypeV2.FooterIntentBased);
148
+ }
149
+ getColumnActionType(lineItemId, lineItemRecord, actionTypes);
150
+ return actionTypes;
151
+ }
40
152
  /**
41
153
  * Adds the line item records to the app schema (for the list report or an object page section comprising a table)
42
154
  * @param appSchema - the app specific schema that shall get enhanced
43
155
  * @param lineItemAnnotation - the UI.LineItem annotation, comprising all records
44
156
  * @param entityType - the entity type as part of the AVT ConverterOutput
45
- * @param lineItemId - optional: in case of OP the paramter must be passed to distinguish the OP tables;
157
+ * @param lineItemId - optional: in case of OP the parameter must be passed to distinguish the OP tables;
46
158
  * in case of LR or ALP no ID is passed, 'LineItems' is taken then.
47
159
  * @param customColumnRef - schema reference to custom column definition.
48
160
  */
@@ -50,20 +162,17 @@ function addLineItemsType(appSchema, lineItemAnnotation, entityType, lineItemId,
50
162
  let schemaKey;
51
163
  // Add the correct lineItem definition
52
164
  lineItemId = lineItemId || 'LineItems';
53
- const { actions, lineItemPath } = common_1.addCommonLineItemDefinitions(appSchema, lineItemAnnotation, entityType, lineItemId);
165
+ const { actions, footerActions, lineItemPath } = common_1.addCommonLineItemDefinitions(appSchema, lineItemAnnotation, entityType, lineItemId);
54
166
  if (lineItemAnnotation) {
55
167
  let i = 0;
56
168
  lineItemAnnotation.forEach((lineItemRecord) => {
57
- if (lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */ ||
58
- (lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */ &&
59
- (lineItemRecord.Inline !== true || lineItemRecord.Determining === true))) {
60
- handleActionRecord(appSchema, entityType, actions, lineItemPath, lineItemRecord, i);
61
- }
62
- else {
169
+ const lineItemProperties = { lineItemPath, lineItemRecord, lineItemId, entityType };
170
+ const actionTypes = getActionType(lineItemRecord, lineItemId);
171
+ function generateGenericColumn() {
63
172
  schemaKey = common_1.getSchemaKeyOfLineItemRecord(lineItemRecord);
64
173
  if (schemaKey) {
65
174
  appSchema['definitions'][lineItemId]['properties'][schemaKey] = {
66
- $ref: common_1.DEFINITION_LINK_PREFIX + 'TableColumn',
175
+ $ref: common_1.DEFINITION_LINK_PREFIX + common_1.DefinitionName.TableColumn,
67
176
  description: common_1.getDatafieldDescription(lineItemRecord, entityType),
68
177
  // Custom property in schema - for object properties ordering purpose
69
178
  propertyIndex: i,
@@ -71,6 +180,35 @@ function addLineItemsType(appSchema, lineItemAnnotation, entityType, lineItemId,
71
180
  };
72
181
  }
73
182
  }
183
+ if (actionTypes) {
184
+ actionTypes.forEach((actionType) => {
185
+ switch (actionType) {
186
+ case types_1.ActionTypeV2.ToolBar:
187
+ case types_1.ActionTypeV2.ToolBarIntentBased: {
188
+ handleActionRecord(appSchema, actions, lineItemProperties, actionType, i);
189
+ break;
190
+ }
191
+ case types_1.ActionTypeV2.Footer:
192
+ case types_1.ActionTypeV2.FooterIntentBased: {
193
+ if (footerActions) {
194
+ handleActionRecord(appSchema, footerActions, lineItemProperties, actionType, i);
195
+ }
196
+ break;
197
+ }
198
+ case types_1.ActionTypeV2.Column:
199
+ case types_1.ActionTypeV2.ColumnIntentBased: {
200
+ handleActionRecord(appSchema, appSchema['definitions'][lineItemId], lineItemProperties, actionType, i);
201
+ break;
202
+ }
203
+ case types_1.ActionTypeV2.OPColumn: {
204
+ generateGenericColumn();
205
+ }
206
+ }
207
+ });
208
+ }
209
+ else {
210
+ generateGenericColumn();
211
+ }
74
212
  i++;
75
213
  });
76
214
  }
@@ -82,7 +220,7 @@ function addLineItemsType(appSchema, lineItemAnnotation, entityType, lineItemId,
82
220
  }
83
221
  exports.addLineItemsType = addLineItemsType;
84
222
  /**
85
- * Adds enum entries of posible leading properties for 'leadingProperty' property in TableCustomColumn properties.
223
+ * Adds enum entries of possible leading properties for 'leadingProperty' property in TableCustomColumn properties.
86
224
  * @param appSchema - the app specific schema that shall get enhanced
87
225
  * @param entityType - the entity type as part of the AVT ConverterOutput
88
226
  * @param definitionName - definition name of CustomColumn definition
@@ -149,9 +287,8 @@ exports.addTabkeyEnum = addTabkeyEnum;
149
287
  * @param {string} definitionName Definition name of CustomColumn definition.
150
288
  */
151
289
  function addFragmentEnum(appSchema, fragments, appId, property, definitionName) {
152
- const fragmentPropertySchema = appSchema['definitions'][definitionName] &&
153
- appSchema['definitions'][definitionName]['properties'] &&
154
- appSchema['definitions'][definitionName]['properties'][property];
290
+ var _a, _b;
291
+ const fragmentPropertySchema = (_b = (_a = appSchema['definitions'][definitionName]) === null || _a === void 0 ? void 0 : _a['properties']) === null || _b === void 0 ? void 0 : _b[property];
155
292
  if (fragments && appId && !appId.startsWith('${')) {
156
293
  const enumEntries = [];
157
294
  fragments.forEach((fragment) => {
@@ -184,23 +321,11 @@ exports.addFragmentEnum = addFragmentEnum;
184
321
  * @param {SapUiAppPageV2} page Sapui5 page object.
185
322
  * @param {object} manifest Application manifest.
186
323
  * @param {FileData[]} [fragments] Array of fragments.
187
- * @param {string} [customColumnsDefinitionName=CUSTOM_COLUMNS_DEFINITION] Definition name of Custom Columns definition.
188
- * @param {string} [customColumnDefinitionName=CUSTOM_COLUMN_DEFINITION] Definition name of Custom Column definition.
324
+ * @param {string} [customColumnsDefinitionName=DefinitionName.CustomColumns] Definition name of Custom Columns definition.
325
+ * @param {string} [customColumnDefinitionName=DefinitionName.CustomColumn] Definition name of Custom Column definition.
189
326
  */
190
- function addListReportColumnExtensions(appSchema, entityType, page, manifest, fragments, customColumnsDefinitionName = exports.CUSTOM_COLUMNS_DEFINITION, customColumnDefinitionName = exports.CUSTOM_COLUMN_DEFINITION) {
191
- if (appSchema['definitions']['LineItems']) {
192
- appSchema['definitions']['LineItems']['properties']['custom'] = {
193
- $ref: `${common_1.DEFINITION_LINK_PREFIX}${customColumnsDefinitionName}`
194
- };
195
- }
196
- appSchema['definitions'][customColumnsDefinitionName] = {
197
- type: 'array',
198
- items: {
199
- $ref: `${common_1.DEFINITION_LINK_PREFIX}${customColumnDefinitionName}`
200
- },
201
- isViewNode: true,
202
- description: 'Custom Columns'
203
- };
327
+ function addTableColumnExtensions(appSchema, entityType, page, manifest, fragments, customColumnsDefinitionName = common_1.DefinitionName.CustomColumns, customColumnDefinitionName = common_1.DefinitionName.CustomColumn) {
328
+ addCustomColumnDefinition(appSchema, customColumnsDefinitionName, customColumnDefinitionName);
204
329
  // Leading Property
205
330
  addListReportLeadingProperties(appSchema, entityType, customColumnDefinitionName);
206
331
  // Tab key property
@@ -210,7 +335,59 @@ function addListReportColumnExtensions(appSchema, entityType, page, manifest, fr
210
335
  addFragmentEnum(appSchema, fragments, appId, 'fragmentName', customColumnDefinitionName);
211
336
  addFragmentEnum(appSchema, fragments, appId, 'cellsFragmentName', customColumnDefinitionName);
212
337
  }
213
- exports.addListReportColumnExtensions = addListReportColumnExtensions;
338
+ exports.addTableColumnExtensions = addTableColumnExtensions;
339
+ /**
340
+ * Processes an anyOf definition of the generic schema
341
+ * @param propertyDefinition - current definition in the generic schema
342
+ * @param schema - the app-specific schema
343
+ * @param propertyKey - key of the single property
344
+ * @param factory - factory for creating metadata instances
345
+ * @param pageType - page type
346
+ */
347
+ function processAnyOf(propertyDefinition, schema, propertyKey, factory, pageType) {
348
+ propertyDefinition['anyOf'].forEach((element) => {
349
+ const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, element, propertyKey, factory, pageType);
350
+ if (nextDefinition) {
351
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
352
+ processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
353
+ }
354
+ });
355
+ }
356
+ /**
357
+ * Processes an object reference of the generic schema
358
+ * @param schema
359
+ * @param propertyDefinition - current definition in the generic schema
360
+ * @param propertyKey - key of the single property
361
+ * @param factory - factory for creating metadata instances
362
+ * @param pageType - page type
363
+ */
364
+ function processObject(schema, propertyDefinition, propertyKey, factory, pageType) {
365
+ const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, propertyDefinition, propertyKey, factory, pageType);
366
+ if (nextDefinition) {
367
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
368
+ processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
369
+ }
370
+ }
371
+ /**
372
+ * Determines the artifact type of a property and adds it to the property definition in schema
373
+ * @param syncRule - sync rule of the current property
374
+ * @param propertyDefinition - current definition in the generic schema
375
+ */
376
+ function addArtifactType(syncRule, propertyDefinition) {
377
+ if (syncRule.manifest !== undefined) {
378
+ propertyDefinition.artifactType = common_1.ArtifactType.Manifest;
379
+ }
380
+ else if (syncRule.flex !== undefined) {
381
+ propertyDefinition.artifactType = common_1.ArtifactType.FlexChange;
382
+ //Add control type
383
+ if (syncRule.flex.controlType) {
384
+ propertyDefinition.controlType = syncRule.flex.controlType();
385
+ }
386
+ }
387
+ else {
388
+ propertyDefinition.artifactType = common_1.ArtifactType.Annotation;
389
+ }
390
+ }
214
391
  /**
215
392
  * After the generation of a generic schema, apply post-generation rule to a single property
216
393
  * @param metaDataDefinition
@@ -230,35 +407,13 @@ function processSingleProperty(metaDataDefinition, schema, pageType, factory, pr
230
407
  propertyDefinition = schemaDefinition['properties'][propertyKey];
231
408
  }
232
409
  //Add artifact type
233
- if (syncRule.manifest !== undefined) {
234
- propertyDefinition.artifactType = common_1.ArtifactType.Manifest;
235
- }
236
- else if (syncRule.flex !== undefined) {
237
- propertyDefinition.artifactType = common_1.ArtifactType.FlexChange;
238
- //Add control type
239
- if (syncRule.flex.controlType) {
240
- propertyDefinition.controlType = syncRule.flex.controlType();
241
- }
242
- }
243
- else {
244
- propertyDefinition.artifactType = common_1.ArtifactType.Annotation;
245
- }
410
+ addArtifactType(syncRule, propertyDefinition);
246
411
  }
247
412
  if (propertyDefinition.type === 'object' || propertyDefinition.$ref) {
248
- const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, propertyDefinition, propertyKey, factory, pageType);
249
- if (nextDefinition) {
250
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
251
- processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
252
- }
413
+ processObject(schema, propertyDefinition, propertyKey, factory, pageType);
253
414
  }
254
415
  else if (propertyDefinition['anyOf']) {
255
- propertyDefinition['anyOf'].forEach((element) => {
256
- const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, element, propertyKey, factory, pageType);
257
- if (nextDefinition) {
258
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
259
- processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
260
- }
261
- });
416
+ processAnyOf(propertyDefinition, schema, propertyKey, factory, pageType);
262
417
  }
263
418
  }
264
419
  }
@@ -273,36 +428,18 @@ function processProperties(schema, schemaDefinition, metaDataDefinition, propert
273
428
  if (schemaDefinition[propertiesSection]) {
274
429
  for (const propertyKey in schemaDefinition[propertiesSection]) {
275
430
  if (propertyKey === 'anyOf') {
276
- schemaDefinition[propertiesSection]['anyOf'].forEach((element) => {
277
- const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, element, propertyKey, factory, pageType);
278
- if (nextDefinition) {
279
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
280
- processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
281
- }
282
- });
431
+ processAnyOf(schemaDefinition[propertiesSection], schema, propertyKey, factory, pageType);
283
432
  }
284
433
  else {
285
434
  const propertyDefinition = schemaDefinition[propertiesSection][propertyKey];
286
435
  if (propertyDefinition['anyOf']) {
287
- propertyDefinition['anyOf'].forEach((element) => {
288
- const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, element, propertyKey, factory, pageType);
289
- if (nextDefinition) {
290
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
291
- processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
292
- }
293
- });
436
+ processAnyOf(propertyDefinition, schema, propertyKey, factory, pageType);
437
+ }
438
+ else if (propertyKey === '$ref') {
439
+ processObject(schema, schemaDefinition[propertiesSection], propertyKey, factory, pageType);
294
440
  }
295
441
  else {
296
- if (propertyKey === '$ref') {
297
- const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, schemaDefinition[propertiesSection], propertyKey, factory, pageType);
298
- if (nextDefinition) {
299
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
300
- processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
301
- }
302
- }
303
- else {
304
- processSingleProperty(metaDataDefinition, schema, pageType, factory, propertyDefinition, propertyKey, schemaDefinition);
305
- }
442
+ processSingleProperty(metaDataDefinition, schema, pageType, factory, propertyDefinition, propertyKey, schemaDefinition);
306
443
  }
307
444
  }
308
445
  }
@@ -327,8 +464,8 @@ exports.processMetadata = processMetadata;
327
464
  * @param {Array<unknown>} valuesToRemove Array of values to remove.
328
465
  */
329
466
  function removeElementsFromEnum(values, valuesToRemove) {
330
- for (let i = 0; i < valuesToRemove.length; i++) {
331
- const index = values.indexOf(valuesToRemove[i]);
467
+ for (const value of valuesToRemove) {
468
+ const index = values.indexOf(value);
332
469
  if (index !== -1) {
333
470
  // Value exists - remove it
334
471
  values.splice(index, 1);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/sync/v2/generate/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/sync/v2/generate/utils.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,24 @@
1
- import { ListReportConfig, AnalyticalListPageConfig } from '../../../../specification/v2/pages';
1
+ import { PageType } from '../../../../specification/common/page';
2
+ import { ListReportConfig, AnalyticalListPageConfig, ObjectPageConfig } from '../../../../specification/v2/pages';
3
+ import { FileData, ObjectPageSectionData } from '../../../common';
2
4
  import { Manifest } from '../../../../specification/common/webapp/manifest/Manifest';
3
- import { TableTypeV2 } from '../../../../specification/v2';
5
+ import { SapUiAppPageV2, TableTypeV2 } from '../../../../specification/v2';
4
6
  import { ExtensionLogger } from '../../../../apiTypes';
7
+ export declare type LROPConfigsType = ListReportConfig | AnalyticalListPageConfig | ObjectPageConfig;
8
+ /**
9
+ * Unescapes the selector ID of a flex change
10
+ * @param selectorId - escaped selector ID
11
+ * @returns unescaped ID
12
+ */
5
13
  export declare function convertSelector(selectorId: string): string;
6
- export declare function addFlex(config: ListReportConfig | AnalyticalListPageConfig, changeString: string, jsonSchema: object, logger?: ExtensionLogger): void;
14
+ /**
15
+ * Adds flex changes to config file
16
+ * @param {ListReportConfig | AnalyticalListPageConfig} config - the configuration to be filled
17
+ * @param {string} changeString - change file as string
18
+ * @param {object} appSchema - application specific schema
19
+ * @param {ExtensionLogger} logger - Logger class for logging messages
20
+ */
21
+ export declare function addFlex(config: ListReportConfig | AnalyticalListPageConfig, changeString: string, appSchema: object, logger?: ExtensionLogger): void;
7
22
  /**
8
23
  * Transfers settings from manifest to object page config
9
24
  * @param configPart - part of the configuration to be filled
@@ -18,8 +33,18 @@ export declare function transferSettingsOfObject(configPart: {
18
33
  }, manifest: Manifest, appSchema: object, pageKey: string, logger?: ExtensionLogger, kpiKey?: string): void;
19
34
  /**
20
35
  * Determines the table type for a given LR or ALP table, based on the component name and its table settings
21
- * This does not exactly reflect the run time behaviour of Fiori elements but a best guess and expectation.
36
+ * This does not exactly reflect the run time behavior of Fiori elements but a best guess and expectation.
22
37
  * @param manifest - manifest.json file content of the app
23
38
  * @param pageKey - key of the page in the manifest
24
39
  */
25
40
  export declare function determineTableType(manifest: Manifest, pageKey: string): TableTypeV2;
41
+ /**
42
+ * Adds custom column information from manifest and fragments to the configuration
43
+ * @param config - configuration, to be enhanced
44
+ * @param manifest - actual manifest.json
45
+ * @param v2Page - actual page in the manifest
46
+ * @param pageType - type of the page
47
+ * @param fragments - list of all fragments
48
+ * @param objectPageSectionData - optional information, for object page
49
+ */
50
+ export declare function addFragments(config: LROPConfigsType, manifest: object, v2Page: SapUiAppPageV2, pageType: PageType, fragments?: FileData[], objectPageSectionData?: ObjectPageSectionData): void;