@sap/ux-specification 1.96.26 → 1.96.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
- package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
- package/dist/documentation/v2/v2-ListReport.html +1 -1
- package/dist/documentation/v2/v2-ObjectPage.html +1 -1
- package/dist/documentation/v2/v2-OverviewPage.html +1 -1
- package/dist/documentation/v4/v4-ApplicationV4.html +1 -1
- package/dist/documentation/v4/v4-BuildingBlocks.html +60 -0
- package/dist/documentation/v4/v4-FreestylePage.html +1 -1
- package/dist/documentation/v4/v4-ListReport.html +1 -1
- package/dist/documentation/v4/v4-ObjectPage.html +1 -1
- package/dist/index-min.js +262 -48
- package/dist/index-min.js.map +3 -3
- package/dist/package.json +111 -0
- package/dist/schemas/v2/ObjectPageConfig.json +4 -4
- package/dist/schemas/v4/BuildingBlocksConfig.json +750 -0
- package/dist/schemas/v4/ListReportConfig.json +38 -15
- package/dist/schemas/v4/ObjectPageConfig.json +309 -59
- package/dist/scripts/macros/api.d.ts +9 -0
- package/dist/scripts/macros/api.d.ts.map +1 -0
- package/dist/scripts/macros/api.js +161 -0
- package/dist/scripts/macros/api.js.map +1 -0
- package/dist/scripts/macros/cmd.d.ts +7 -0
- package/dist/scripts/macros/cmd.d.ts.map +1 -0
- package/dist/scripts/macros/cmd.js +49 -0
- package/dist/scripts/macros/cmd.js.map +1 -0
- package/dist/scripts/macros/corrections.d.ts +18 -0
- package/dist/scripts/macros/corrections.d.ts.map +1 -0
- package/dist/scripts/macros/corrections.js +188 -0
- package/dist/scripts/macros/corrections.js.map +1 -0
- package/dist/scripts/macros/index.d.ts +2 -0
- package/dist/scripts/macros/index.d.ts.map +1 -0
- package/dist/scripts/macros/index.js +8 -0
- package/dist/scripts/macros/index.js.map +1 -0
- package/dist/scripts/macros/schema.d.ts +9 -0
- package/dist/scripts/macros/schema.d.ts.map +1 -0
- package/dist/scripts/macros/schema.js +201 -0
- package/dist/scripts/macros/schema.js.map +1 -0
- package/dist/scripts/macros/types.d.ts +77 -0
- package/dist/scripts/macros/types.d.ts.map +1 -0
- package/dist/scripts/macros/types.js +14 -0
- package/dist/scripts/macros/types.js.map +1 -0
- package/dist/src/api.d.ts.map +1 -1
- package/dist/src/api.js +9 -2
- package/dist/src/api.js.map +1 -1
- package/dist/src/project.d.ts +1 -0
- package/dist/src/project.d.ts.map +1 -1
- package/dist/src/project.js +6 -4
- package/dist/src/project.js.map +1 -1
- package/dist/src/specification/schemaAccess.d.ts.map +1 -1
- package/dist/src/specification/schemaAccess.js +16 -3
- package/dist/src/specification/schemaAccess.js.map +1 -1
- package/dist/src/sync/common/appProvider.d.ts +12 -0
- package/dist/src/sync/common/appProvider.d.ts.map +1 -1
- package/dist/src/sync/common/appProvider.js +51 -18
- package/dist/src/sync/common/appProvider.js.map +1 -1
- package/dist/src/sync/common/generate/objectPage.d.ts +10 -6
- package/dist/src/sync/common/generate/objectPage.d.ts.map +1 -1
- package/dist/src/sync/common/generate/objectPage.js +224 -115
- package/dist/src/sync/common/generate/objectPage.js.map +1 -1
- package/dist/src/sync/common/generate/utils.d.ts +8 -8
- package/dist/src/sync/common/generate/utils.d.ts.map +1 -1
- package/dist/src/sync/common/generate/utils.js +40 -38
- package/dist/src/sync/common/generate/utils.js.map +1 -1
- package/dist/src/sync/common/i18n.json +2 -1
- package/dist/src/sync/common/importProject.d.ts.map +1 -1
- package/dist/src/sync/common/importProject.js +67 -31
- package/dist/src/sync/common/importProject.js.map +1 -1
- package/dist/src/sync/common/types.d.ts +6 -0
- package/dist/src/sync/common/types.d.ts.map +1 -0
- package/dist/src/sync/common/types.js +3 -0
- package/dist/src/sync/common/types.js.map +1 -0
- package/dist/src/sync/common/utils.d.ts +26 -5
- package/dist/src/sync/common/utils.d.ts.map +1 -1
- package/dist/src/sync/common/utils.js +72 -18
- package/dist/src/sync/common/utils.js.map +1 -1
- package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +2 -2
- package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -1
- package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -1
- package/dist/src/sync/v2/generate/analyticalListReport.js +1 -0
- package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
- package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -1
- package/dist/src/sync/v2/generate/listReport.js +1 -0
- package/dist/src/sync/v2/generate/listReport.js.map +1 -1
- package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -1
- package/dist/src/sync/v2/generate/objectPage.js +75 -40
- package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
- package/dist/src/sync/v2/generate/utils.d.ts +1 -1
- package/dist/src/sync/v2/generate/utils.d.ts.map +1 -1
- package/dist/src/sync/v2/generate/utils.js +22 -19
- package/dist/src/sync/v2/generate/utils.js.map +1 -1
- package/dist/src/sync/v4/application.d.ts +3 -0
- package/dist/src/sync/v4/application.d.ts.map +1 -1
- package/dist/src/sync/v4/application.js +13 -1
- package/dist/src/sync/v4/application.js.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageFooter.d.ts +9 -0
- package/dist/src/sync/v4/export/controls/ObjectPageFooter.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageFooter.js +10 -0
- package/dist/src/sync/v4/export/controls/ObjectPageFooter.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts +23 -0
- package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.js +124 -0
- package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageForm.d.ts +10 -3
- package/dist/src/sync/v4/export/controls/ObjectPageForm.d.ts.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageForm.js +39 -1
- package/dist/src/sync/v4/export/controls/ObjectPageForm.js.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageFormAction.d.ts +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageFormAction.js +8 -8
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +5 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.js +4 -1
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.js.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts +23 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js +124 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +1 -2
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +0 -10
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js +9 -9
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js.map +1 -1
- package/dist/src/sync/v4/export/controls/Table.js +1 -1
- package/dist/src/sync/v4/export/controls/Table.js.map +1 -1
- package/dist/src/sync/v4/export/controls/ToolBar.d.ts +2 -2
- package/dist/src/sync/v4/export/controls/ToolBar.d.ts.map +1 -1
- package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts +6 -1
- package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts.map +1 -1
- package/dist/src/sync/v4/export/controls/ToolBarAction.js +33 -9
- package/dist/src/sync/v4/export/controls/ToolBarAction.js.map +1 -1
- package/dist/src/sync/v4/export/controls/index.d.ts +4 -0
- package/dist/src/sync/v4/export/controls/index.d.ts.map +1 -1
- package/dist/src/sync/v4/export/controls/index.js +4 -0
- package/dist/src/sync/v4/export/controls/index.js.map +1 -1
- package/dist/src/sync/v4/export/export.d.ts +1 -0
- package/dist/src/sync/v4/export/export.d.ts.map +1 -1
- package/dist/src/sync/v4/export/export.js +11 -6
- package/dist/src/sync/v4/export/export.js.map +1 -1
- package/dist/src/sync/v4/export/fpmCustomPage.d.ts +11 -0
- package/dist/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -0
- package/dist/src/sync/v4/export/fpmCustomPage.js +131 -0
- package/dist/src/sync/v4/export/fpmCustomPage.js.map +1 -0
- package/dist/src/sync/v4/export/manifest.js +1 -1
- package/dist/src/sync/v4/export/manifest.js.map +1 -1
- package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +1 -0
- package/dist/src/sync/v4/export/pages/ObjectPage.d.ts.map +1 -1
- package/dist/src/sync/v4/export/pages/ObjectPage.js.map +1 -1
- package/dist/src/sync/v4/generate/fpmCustomPage.d.ts +10 -0
- package/dist/src/sync/v4/generate/fpmCustomPage.d.ts.map +1 -0
- package/dist/src/sync/v4/generate/fpmCustomPage.js +266 -0
- package/dist/src/sync/v4/generate/fpmCustomPage.js.map +1 -0
- package/dist/src/sync/v4/generate/generate.d.ts +13 -1
- package/dist/src/sync/v4/generate/generate.d.ts.map +1 -1
- package/dist/src/sync/v4/generate/generate.js +22 -1
- package/dist/src/sync/v4/generate/generate.js.map +1 -1
- package/dist/src/sync/v4/generate/index.d.ts +2 -1
- package/dist/src/sync/v4/generate/index.d.ts.map +1 -1
- package/dist/src/sync/v4/generate/index.js +4 -1
- package/dist/src/sync/v4/generate/index.js.map +1 -1
- package/dist/src/sync/v4/generate/listReport.d.ts.map +1 -1
- package/dist/src/sync/v4/generate/listReport.js +26 -10
- package/dist/src/sync/v4/generate/listReport.js.map +1 -1
- package/dist/src/sync/v4/generate/objectPage.d.ts.map +1 -1
- package/dist/src/sync/v4/generate/objectPage.js +112 -34
- package/dist/src/sync/v4/generate/objectPage.js.map +1 -1
- package/dist/src/sync/v4/import/app/appProvider.d.ts +2 -1
- package/dist/src/sync/v4/import/app/appProvider.d.ts.map +1 -1
- package/dist/src/sync/v4/import/app/appProvider.js +2 -2
- package/dist/src/sync/v4/import/app/appProvider.js.map +1 -1
- package/dist/src/sync/v4/import/app/baseAppProvider.d.ts +7 -2
- package/dist/src/sync/v4/import/app/baseAppProvider.d.ts.map +1 -1
- package/dist/src/sync/v4/import/app/baseAppProvider.js +27 -7
- package/dist/src/sync/v4/import/app/baseAppProvider.js.map +1 -1
- package/dist/src/sync/v4/import/app/freestyleProvider.d.ts +2 -1
- package/dist/src/sync/v4/import/app/freestyleProvider.d.ts.map +1 -1
- package/dist/src/sync/v4/import/app/freestyleProvider.js +2 -2
- package/dist/src/sync/v4/import/app/freestyleProvider.js.map +1 -1
- package/dist/src/sync/v4/import/index.d.ts +1 -0
- package/dist/src/sync/v4/import/index.d.ts.map +1 -1
- package/dist/src/sync/v4/import/index.js +1 -0
- package/dist/src/sync/v4/import/index.js.map +1 -1
- package/dist/src/sync/v4/import/pages/fpmCustomPage.d.ts +9 -0
- package/dist/src/sync/v4/import/pages/fpmCustomPage.d.ts.map +1 -0
- package/dist/src/sync/v4/import/pages/fpmCustomPage.js +102 -0
- package/dist/src/sync/v4/import/pages/fpmCustomPage.js.map +1 -0
- package/dist/src/sync/v4/import/pages/objectPage.d.ts +2 -1
- package/dist/src/sync/v4/import/pages/objectPage.d.ts.map +1 -1
- package/dist/src/sync/v4/import/pages/objectPage.js +84 -43
- package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -1
- package/dist/src/sync/v4/utils/macros.d.ts +29 -0
- package/dist/src/sync/v4/utils/macros.d.ts.map +1 -0
- package/dist/src/sync/v4/utils/macros.js +113 -0
- package/dist/src/sync/v4/utils/macros.js.map +1 -0
- package/dist/src/sync/v4/utils/utils.d.ts +11 -1
- package/dist/src/sync/v4/utils/utils.d.ts.map +1 -1
- package/dist/src/sync/v4/utils/utils.js +95 -8
- package/dist/src/sync/v4/utils/utils.js.map +1 -1
- package/package.json +16 -9
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateSchema = void 0;
|
|
4
|
+
const ux_specification_types_1 = require("@sap/ux-specification-types");
|
|
5
|
+
const types_1 = require("./types");
|
|
6
|
+
const corrections_1 = require("./corrections");
|
|
7
|
+
/**
|
|
8
|
+
* Method checks if passed type is atomic type like 'boolean', 'string', 'number', etc.
|
|
9
|
+
* @param {string} type Type to check.
|
|
10
|
+
* @returns {boolean} Is atomic type.
|
|
11
|
+
*/
|
|
12
|
+
function isAtomicType(type) {
|
|
13
|
+
return ['string', 'number', 'integer', 'boolean', 'object', 'array', 'null', 'any'].includes(type);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Method returns base/skeleton schema.
|
|
17
|
+
* @returns {SchemaDefinition} JSON schema.
|
|
18
|
+
*/
|
|
19
|
+
function getRootSchema() {
|
|
20
|
+
const hiddenProperty = { type: 'string', hidden: true };
|
|
21
|
+
return {
|
|
22
|
+
type: 'object',
|
|
23
|
+
properties: {
|
|
24
|
+
$filePath: hiddenProperty,
|
|
25
|
+
$schema: hiddenProperty
|
|
26
|
+
},
|
|
27
|
+
additionalProperties: false,
|
|
28
|
+
definitions: {},
|
|
29
|
+
$schema: 'http://json-schema.org/draft-07/schema#'
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Method formats description text before storing it into schema.
|
|
34
|
+
* Currently method removes HTML markup from text.
|
|
35
|
+
* @param {string} [description] Description to format.
|
|
36
|
+
* @returns {string} Formatted description.
|
|
37
|
+
*/
|
|
38
|
+
function formatDescription(description) {
|
|
39
|
+
return description ? description.replace(/<\/?[^>]+(>|$)/g, '') : '';
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Method prepares schema definition object.
|
|
43
|
+
* @param {MacrosPropertyType} metadataType Metadata property type.
|
|
44
|
+
* @param {string} [description] Description of definition.
|
|
45
|
+
* @returns {SchemaDefinition} JSON schema for definition.
|
|
46
|
+
*/
|
|
47
|
+
function prepareDefinition(metadataType, description) {
|
|
48
|
+
if (description) {
|
|
49
|
+
// Remove html markup from description
|
|
50
|
+
description = formatDescription(description);
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
description,
|
|
54
|
+
isViewNode: true,
|
|
55
|
+
type: 'object',
|
|
56
|
+
properties: {},
|
|
57
|
+
additionalProperties: false,
|
|
58
|
+
metadata: {
|
|
59
|
+
path: [],
|
|
60
|
+
type: metadataType
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Method prepares schema object for passed type.
|
|
66
|
+
* @param {string} type Type of target property or object.
|
|
67
|
+
* @returns {SchemaDefinition} JSON schema.
|
|
68
|
+
*/
|
|
69
|
+
function getSchemaForType(type) {
|
|
70
|
+
const schema = {};
|
|
71
|
+
if (isAtomicType(type)) {
|
|
72
|
+
schema.type = type;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
schema.$ref = `#/definitions/${type}`;
|
|
76
|
+
}
|
|
77
|
+
return schema;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Method prepares schema object for passed types.
|
|
81
|
+
* @param {string} [type] Type of target property or object.
|
|
82
|
+
* @param {UI5PropertyType[]} [types] Types of target property or object.
|
|
83
|
+
* @returns {SchemaDefinition} JSON schema.
|
|
84
|
+
*/
|
|
85
|
+
function getTypes(type, types) {
|
|
86
|
+
let result = [];
|
|
87
|
+
if (type) {
|
|
88
|
+
result = type.split('|');
|
|
89
|
+
}
|
|
90
|
+
else if (types) {
|
|
91
|
+
result = types.map((propertyType) => propertyType.value);
|
|
92
|
+
}
|
|
93
|
+
return result.map((propertyType) => {
|
|
94
|
+
return getSchemaForType(propertyType);
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Method prepares schema property object for passed generic property.
|
|
99
|
+
* @param {UI5Property} property SAPUI5 property.
|
|
100
|
+
* @param {MacrosPropertyType} metadataType Metadata property type.
|
|
101
|
+
* @param {string} [type] Type of target property or object.
|
|
102
|
+
* @param {UI5PropertyType[]} [types] Types of target property or object.
|
|
103
|
+
* @returns {SchemaDefinition} JSON schema.
|
|
104
|
+
*/
|
|
105
|
+
function prepareSchemaProperty(property, metadataType, type, types) {
|
|
106
|
+
const schemaTypes = getTypes(type, types);
|
|
107
|
+
const isViewNode = schemaTypes.some((schemaType) => !!schemaType.$ref);
|
|
108
|
+
// Define result
|
|
109
|
+
const propertySchema = schemaTypes.length === 1
|
|
110
|
+
? { ...schemaTypes[0] }
|
|
111
|
+
: {
|
|
112
|
+
anyOf: schemaTypes
|
|
113
|
+
};
|
|
114
|
+
propertySchema.description = formatDescription(property.description);
|
|
115
|
+
if (isViewNode) {
|
|
116
|
+
propertySchema.description = property.name;
|
|
117
|
+
propertySchema.isViewNode = true;
|
|
118
|
+
}
|
|
119
|
+
propertySchema.metadata = {
|
|
120
|
+
type: metadataType
|
|
121
|
+
};
|
|
122
|
+
return propertySchema;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Method prepares schema object for passed SAPUI5 property.
|
|
126
|
+
* @param {UI5Property} property SAPUI5 property.
|
|
127
|
+
* @returns {SchemaDefinition} JSON schema.
|
|
128
|
+
*/
|
|
129
|
+
function prepareProperty(property) {
|
|
130
|
+
return prepareSchemaProperty(property, ux_specification_types_1.MacrosPropertyType.Property, property.type, property.types);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Method prepares schema object for passed SAPUI5 event.
|
|
134
|
+
* @param {UI5Property} property SAPUI5 event.
|
|
135
|
+
* @returns {SchemaDefinition} JSON schema.
|
|
136
|
+
*/
|
|
137
|
+
function prepareEvent(property) {
|
|
138
|
+
return prepareSchemaProperty(property, ux_specification_types_1.MacrosPropertyType.Event, 'string');
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Method prepares schema object for passed SAPUI5 aggregation.
|
|
142
|
+
* @param {UI5Property} property SAPUI5 aggregation.
|
|
143
|
+
* @returns {SchemaDefinition} JSON schema.
|
|
144
|
+
*/
|
|
145
|
+
function prepareAggregations(aggregation) {
|
|
146
|
+
const schemaTypes = getTypes(aggregation.type);
|
|
147
|
+
return {
|
|
148
|
+
description: aggregation.name,
|
|
149
|
+
type: 'object',
|
|
150
|
+
additionalProperties: schemaTypes.length ? schemaTypes[0] : { anyOf: schemaTypes },
|
|
151
|
+
isViewNode: true,
|
|
152
|
+
metadata: {
|
|
153
|
+
path: [],
|
|
154
|
+
type: ux_specification_types_1.MacrosPropertyType.Aggregation
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Method generates generic schema for passed "sap.fe.macros" api.
|
|
160
|
+
* @param {MacrosAPI} api SAPUI5 "sap.fe.macros" api.
|
|
161
|
+
* @returns {SchemaDefinition} JSON schema for "sap.fe.macros" api.
|
|
162
|
+
*/
|
|
163
|
+
function generateSchema(api) {
|
|
164
|
+
// Apply corrections for macros API - there is some missing information in api.json
|
|
165
|
+
corrections_1.applyCorrections(api);
|
|
166
|
+
const schema = getRootSchema();
|
|
167
|
+
const { definitions } = schema;
|
|
168
|
+
// Handle classes
|
|
169
|
+
const classSymbols = api.symbols.filter((symbol) => symbol.kind === types_1.SYMBOL_KIND_CLASS);
|
|
170
|
+
for (const symbol of classSymbols) {
|
|
171
|
+
const definition = prepareDefinition(ux_specification_types_1.MacrosPropertyType.Control, symbol.description);
|
|
172
|
+
definitions[symbol.name] = definition;
|
|
173
|
+
const events = symbol.events || [];
|
|
174
|
+
const { properties = [], aggregations = [] } = symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY] || {};
|
|
175
|
+
// Handle properties
|
|
176
|
+
for (const property of properties) {
|
|
177
|
+
definition.properties[property.name] = prepareProperty(property);
|
|
178
|
+
}
|
|
179
|
+
// Handle aggregations
|
|
180
|
+
for (const aggregation of aggregations) {
|
|
181
|
+
definition.properties[aggregation.name] = prepareAggregations(aggregation);
|
|
182
|
+
}
|
|
183
|
+
// Handle events
|
|
184
|
+
for (const event of events) {
|
|
185
|
+
definition.properties[event.name] = prepareEvent(event);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
// Handle typedefs
|
|
189
|
+
const typedefSymbols = api.symbols.filter((symbol) => symbol.kind === types_1.SYMBOL_KIND_TYPEDEF);
|
|
190
|
+
for (const symbol of typedefSymbols) {
|
|
191
|
+
const definition = prepareDefinition(ux_specification_types_1.MacrosPropertyType.Control, symbol.description);
|
|
192
|
+
definitions[symbol.name] = definition;
|
|
193
|
+
const properties = symbol.properties || [];
|
|
194
|
+
for (const property of properties) {
|
|
195
|
+
definition.properties[property.name] = prepareProperty(property);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return schema;
|
|
199
|
+
}
|
|
200
|
+
exports.generateSchema = generateSchema;
|
|
201
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../scripts/macros/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
export declare const SYMBOL_KIND_NAMESPACE = "namespace";
|
|
2
|
+
export declare const SYMBOL_KIND_CLASS = "class";
|
|
3
|
+
export declare const SYMBOL_KIND_TYPEDEF = "typedef";
|
|
4
|
+
export declare const CLASS_SYMBOL_METADATA_PROPERTY = "ui5-metadata";
|
|
5
|
+
export declare type SYMBOL_KIND = typeof SYMBOL_KIND_NAMESPACE | typeof SYMBOL_KIND_CLASS | typeof SYMBOL_KIND_TYPEDEF;
|
|
6
|
+
export interface MacrosAPI {
|
|
7
|
+
symbols: UI5Symbol[];
|
|
8
|
+
}
|
|
9
|
+
export declare enum UI5Visibility {
|
|
10
|
+
public = "public",
|
|
11
|
+
restricted = "restricted",
|
|
12
|
+
hidden = "hidden"
|
|
13
|
+
}
|
|
14
|
+
export interface BaseSymbol {
|
|
15
|
+
name: string;
|
|
16
|
+
basename: string;
|
|
17
|
+
resource: string;
|
|
18
|
+
module: string;
|
|
19
|
+
static: boolean;
|
|
20
|
+
visibility: UI5Visibility;
|
|
21
|
+
description: string;
|
|
22
|
+
displayName: string;
|
|
23
|
+
title: string;
|
|
24
|
+
subTitle: string;
|
|
25
|
+
}
|
|
26
|
+
export declare type UI5Symbol = NamespaceSymbol | ClassSymbol | TypedefSymbol;
|
|
27
|
+
export interface NamespaceSymbol extends BaseSymbol {
|
|
28
|
+
kind: typeof SYMBOL_KIND_NAMESPACE;
|
|
29
|
+
export: string;
|
|
30
|
+
nodes: [];
|
|
31
|
+
}
|
|
32
|
+
export interface ClassSymbol extends BaseSymbol {
|
|
33
|
+
kind: typeof SYMBOL_KIND_CLASS;
|
|
34
|
+
since?: string;
|
|
35
|
+
events?: UI5Event[];
|
|
36
|
+
[CLASS_SYMBOL_METADATA_PROPERTY]?: SymbolMetadata;
|
|
37
|
+
}
|
|
38
|
+
export interface TypedefSymbol extends BaseSymbol {
|
|
39
|
+
kind: typeof SYMBOL_KIND_TYPEDEF;
|
|
40
|
+
properties: UI5Property[];
|
|
41
|
+
aggregations?: UI5Aggregation[];
|
|
42
|
+
}
|
|
43
|
+
export interface SymbolMetadata {
|
|
44
|
+
stereotype: string;
|
|
45
|
+
properties: UI5Property[];
|
|
46
|
+
aggregations: UI5Aggregation[];
|
|
47
|
+
}
|
|
48
|
+
export interface UI5PropertyGeneric {
|
|
49
|
+
name: string;
|
|
50
|
+
description: string;
|
|
51
|
+
visibility: UI5Visibility;
|
|
52
|
+
}
|
|
53
|
+
export interface UI5PropertyCore extends UI5PropertyGeneric {
|
|
54
|
+
methods: string[];
|
|
55
|
+
}
|
|
56
|
+
export interface UI5Event {
|
|
57
|
+
name: string;
|
|
58
|
+
description: string;
|
|
59
|
+
visibility: UI5Visibility;
|
|
60
|
+
}
|
|
61
|
+
export interface UI5PropertyType {
|
|
62
|
+
value: string;
|
|
63
|
+
}
|
|
64
|
+
export interface UI5Property extends UI5PropertyCore {
|
|
65
|
+
bindable?: boolean;
|
|
66
|
+
group: string;
|
|
67
|
+
defaultValue: unknown;
|
|
68
|
+
type?: string;
|
|
69
|
+
types?: UI5PropertyType[];
|
|
70
|
+
}
|
|
71
|
+
export interface UI5Aggregation extends UI5PropertyCore {
|
|
72
|
+
singularName: string;
|
|
73
|
+
cardinality: string;
|
|
74
|
+
linkEnabled: true;
|
|
75
|
+
type: string;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../scripts/macros/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,cAAc,CAAC;AACjD,eAAO,MAAM,iBAAiB,UAAU,CAAC;AACzC,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C,eAAO,MAAM,8BAA8B,iBAAiB,CAAC;AAE7D,oBAAY,WAAW,GAAG,OAAO,qBAAqB,GAAG,OAAO,iBAAiB,GAAG,OAAO,mBAAmB,CAAC;AAE/G,MAAM,WAAW,SAAS;IACtB,OAAO,EAAE,SAAS,EAAE,CAAC;CACxB;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;CACpB;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,aAAa,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,oBAAY,SAAS,GAAG,eAAe,GAAG,WAAW,GAAG,aAAa,CAAC;AAEtE,MAAM,WAAW,eAAgB,SAAQ,UAAU;IAC/C,IAAI,EAAE,OAAO,qBAAqB,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,EAAE,CAAC;CACb;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC3C,IAAI,EAAE,OAAO,iBAAiB,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;IACpB,CAAC,8BAA8B,CAAC,CAAC,EAAE,cAAc,CAAC;CACrD;AAED,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC7C,IAAI,EAAE,OAAO,mBAAmB,CAAC;IACjC,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,YAAY,EAAE,cAAc,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,CAAC;CAC7B;AAED,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACvD,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAY,SAAQ,eAAe;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,cAAe,SAAQ,eAAe;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UI5Visibility = exports.CLASS_SYMBOL_METADATA_PROPERTY = exports.SYMBOL_KIND_TYPEDEF = exports.SYMBOL_KIND_CLASS = exports.SYMBOL_KIND_NAMESPACE = void 0;
|
|
4
|
+
exports.SYMBOL_KIND_NAMESPACE = 'namespace';
|
|
5
|
+
exports.SYMBOL_KIND_CLASS = 'class';
|
|
6
|
+
exports.SYMBOL_KIND_TYPEDEF = 'typedef';
|
|
7
|
+
exports.CLASS_SYMBOL_METADATA_PROPERTY = 'ui5-metadata';
|
|
8
|
+
var UI5Visibility;
|
|
9
|
+
(function (UI5Visibility) {
|
|
10
|
+
UI5Visibility["public"] = "public";
|
|
11
|
+
UI5Visibility["restricted"] = "restricted";
|
|
12
|
+
UI5Visibility["hidden"] = "hidden";
|
|
13
|
+
})(UI5Visibility = exports.UI5Visibility || (exports.UI5Visibility = {}));
|
|
14
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../scripts/macros/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,iBAAiB,GAAG,OAAO,CAAC;AAC5B,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAEhC,QAAA,8BAA8B,GAAG,cAAc,CAAC;AAQ7D,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,kCAAiB,CAAA;IACjB,0CAAyB,CAAA;IACzB,kCAAiB,CAAA;AACrB,CAAC,EAJW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAIxB"}
|
package/dist/src/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAER,aAAa,EACb,IAAI,EACJ,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EAEV,6BAA6B,EAChC,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAER,aAAa,EACb,IAAI,EACJ,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EAEV,6BAA6B,EAChC,MAAM,6BAA6B,CAAC;AA2BrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAwB5C;;;;;GAKG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;GAGG;AACH,wBAAgB,cAAc,CAAC,kBAAkB,EAAE,wBAAwB,GAAG,MAAM,CAmFnF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,gBAAgB,EAAE,sBAAsB,GAAG,aAAa,CAiBpF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,gBAAgB,EAAE,sBAAsB,GAAG,MAAM,GAAG,SAAS,CAgCzF;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,gBAAgB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAE9F;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,gBAAgB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAEpG;AAED;;;GAGG;AACH,wBAAgB,aAAa,IAAI,UAAU,CAK1C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,qBAAqB,EAAE,6BAA6B,GAAG,MAAM,GAAG,SAAS,CAYhH"}
|
package/dist/src/api.js
CHANGED
|
@@ -80,6 +80,10 @@ function generateSchema(generateParameters) {
|
|
|
80
80
|
const { genericSchema, entitySet, annotations, logger, manifest } = v4Params[ux_specification_types_1.SchemaType.FreestylePage];
|
|
81
81
|
schema = generate_2.generateFreestyleInterfaceV4(ux_specification_types_1.TemplateType.FreestylePageV4, genericSchema, annotations, manifest, entitySet, logger);
|
|
82
82
|
}
|
|
83
|
+
else if (v4Params[ux_specification_types_1.SchemaType.FPMCustomPage]) {
|
|
84
|
+
const { genericSchema, routingId, manifest, views, logger } = v4Params[ux_specification_types_1.SchemaType.FPMCustomPage];
|
|
85
|
+
schema = generate_2.generateFPMCustomPageInterfaceV4(genericSchema, routingId, manifest, views, generateParameters.featureToggles, logger);
|
|
86
|
+
}
|
|
83
87
|
}
|
|
84
88
|
return schema;
|
|
85
89
|
}
|
|
@@ -146,6 +150,9 @@ function importConfig(importParameters) {
|
|
|
146
150
|
else if (v4Params[ux_specification_types_1.SchemaType.AnalyticalListPage]) {
|
|
147
151
|
config = import_2.createListReportConfig(v4Params[ux_specification_types_1.SchemaType.AnalyticalListPage], ux_specification_types_1.SchemaType.AnalyticalListPage);
|
|
148
152
|
}
|
|
153
|
+
else if (v4Params[ux_specification_types_1.SchemaType.FPMCustomPage]) {
|
|
154
|
+
config = import_2.createCustomPageConfig(v4Params[ux_specification_types_1.SchemaType.FPMCustomPage]);
|
|
155
|
+
}
|
|
149
156
|
}
|
|
150
157
|
return config;
|
|
151
158
|
}
|
|
@@ -174,8 +181,8 @@ exports.importProjectSchema = importProjectSchema;
|
|
|
174
181
|
*/
|
|
175
182
|
function getApiVersion() {
|
|
176
183
|
return {
|
|
177
|
-
version: '
|
|
178
|
-
fpmWriter: '
|
|
184
|
+
version: '6',
|
|
185
|
+
fpmWriter: '5'
|
|
179
186
|
};
|
|
180
187
|
}
|
|
181
188
|
exports.getApiVersion = getApiVersion;
|
package/dist/src/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,wEAAkH;AAalH,iDAK4B;AAC5B,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
|
package/dist/src/project.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export interface Project {
|
|
|
6
6
|
annotations: FileData[];
|
|
7
7
|
changes: string[];
|
|
8
8
|
fragments: FileData[];
|
|
9
|
+
views: FileData[];
|
|
9
10
|
}
|
|
10
11
|
export declare const readDirectory: (path: string) => Promise<string[]>;
|
|
11
12
|
export declare const isDirectory: (path: string) => Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/project.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEtE,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,QAAQ,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/project.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEtE,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,QAAQ,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACrB;AAkBD,eAAO,MAAM,aAAa,SAAgB,MAAM,KAAG,QAAQ,MAAM,EAAE,CAUlE,CAAC;AAEF,eAAO,MAAM,WAAW,SAAgB,MAAM,KAAG,QAAQ,OAAO,CAU/D,CAAC;AAcF,eAAO,MAAM,UAAU,WAAkB,MAAM,KAAG,QAAQ,MAAM,EAAE,CAoBjE,CAAC;AA2DF;;;GAGG;AACH,eAAO,MAAM,UAAU,SAAgB,MAAM,KAAG,QAAQ,OAAO,CAiB9D,CAAC"}
|
package/dist/src/project.js
CHANGED
|
@@ -76,9 +76,9 @@ const getChanges = async (webapp) => {
|
|
|
76
76
|
return changes;
|
|
77
77
|
};
|
|
78
78
|
exports.getChanges = getChanges;
|
|
79
|
-
const
|
|
79
|
+
const getExtensionFiles = async (webAppPath, folder = 'fragments') => {
|
|
80
80
|
const fragments = [];
|
|
81
|
-
const directoryPath = path_1.join(webAppPath, 'ext',
|
|
81
|
+
const directoryPath = path_1.join(webAppPath, 'ext', folder);
|
|
82
82
|
if (!(await resourceExists(directoryPath))) {
|
|
83
83
|
return fragments;
|
|
84
84
|
}
|
|
@@ -139,14 +139,16 @@ const getProject = async (root) => {
|
|
|
139
139
|
const manifest = await getManifest(webappPath);
|
|
140
140
|
const annotations = await getAnnotations(manifest, webappPath);
|
|
141
141
|
const changes = await exports.getChanges(webappPath);
|
|
142
|
-
const fragments = await
|
|
142
|
+
const fragments = await getExtensionFiles(webappPath);
|
|
143
|
+
const views = await getExtensionFiles(webappPath, 'views');
|
|
143
144
|
return {
|
|
144
145
|
root,
|
|
145
146
|
name,
|
|
146
147
|
manifest,
|
|
147
148
|
annotations,
|
|
148
149
|
changes,
|
|
149
|
-
fragments
|
|
150
|
+
fragments,
|
|
151
|
+
views
|
|
150
152
|
};
|
|
151
153
|
};
|
|
152
154
|
exports.getProject = getProject;
|
package/dist/src/project.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/project.ts"],"names":[],"mappings":";;;AAAA,+BAAsC;AACtC,2BAAmE;
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/project.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemaAccess.d.ts","sourceRoot":"","sources":["../../../src/specification/schemaAccess.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,YACtB,oBAAoB,cACjB,UAAU,cACX,MAAM,KAClB,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"schemaAccess.d.ts","sourceRoot":"","sources":["../../../src/specification/schemaAccess.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,YACtB,oBAAoB,cACjB,UAAU,cACX,MAAM,KAClB,MAAM,GAAG,SA4BX,CAAC;AAkBF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,YAAmB,oBAAoB,cAAc,UAAU,KAAG,QAAQ,IAAI,CAO1G,CAAC"}
|
|
@@ -10,9 +10,22 @@ const ux_specification_types_1 = require("@sap/ux-specification-types");
|
|
|
10
10
|
* @param schemaType - Type of the schema, e.g Application, ListReport, ObjectPage, ...
|
|
11
11
|
*/
|
|
12
12
|
const getPathToGenericSchema = (version, schemaType, directory = __dirname) => {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
:
|
|
13
|
+
let fileName;
|
|
14
|
+
switch (schemaType) {
|
|
15
|
+
case ux_specification_types_1.SchemaType.Application: {
|
|
16
|
+
fileName = `${ux_specification_types_1.SchemaType.Application}${version.toUpperCase()}.json`;
|
|
17
|
+
break;
|
|
18
|
+
}
|
|
19
|
+
case ux_specification_types_1.SchemaType.FPMCustomPage: {
|
|
20
|
+
// Use building blocks generic schema for FPM custom pages
|
|
21
|
+
fileName = `${ux_specification_types_1.SchemaType.BuildingBlocks}Config.json`;
|
|
22
|
+
break;
|
|
23
|
+
}
|
|
24
|
+
default: {
|
|
25
|
+
fileName = `${schemaType}Config.json`;
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
16
29
|
if (directory.endsWith('dist')) {
|
|
17
30
|
return path_1.join(directory, 'schemas', version, fileName);
|
|
18
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemaAccess.js","sourceRoot":"","sources":["../../../src/specification/schemaAccess.ts"],"names":[],"mappings":";;;AAAA,2BAA8B;AAC9B,+BAA4B;AAE5B,wEAAyD;AAEzD;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAClC,OAA6B,EAC7B,UAAsB,EACtB,YAAoB,SAAS,EACX,EAAE;IACpB,
|
|
1
|
+
{"version":3,"file":"schemaAccess.js","sourceRoot":"","sources":["../../../src/specification/schemaAccess.ts"],"names":[],"mappings":";;;AAAA,2BAA8B;AAC9B,+BAA4B;AAE5B,wEAAyD;AAEzD;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAClC,OAA6B,EAC7B,UAAsB,EACtB,YAAoB,SAAS,EACX,EAAE;IACpB,IAAI,QAAgB,CAAC;IACrB,QAAQ,UAAU,EAAE;QAChB,KAAK,mCAAU,CAAC,WAAW,CAAC,CAAC;YACzB,QAAQ,GAAG,GAAG,mCAAU,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC;YACpE,MAAM;SACT;QACD,KAAK,mCAAU,CAAC,aAAa,CAAC,CAAC;YAC3B,0DAA0D;YAC1D,QAAQ,GAAG,GAAG,mCAAU,CAAC,cAAc,aAAa,CAAC;YACrD,MAAM;SACT;QACD,OAAO,CAAC,CAAC;YACL,QAAQ,GAAG,GAAG,UAAU,aAAa,CAAC;YACtC,MAAM;SACT;KACJ;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAC5B,OAAO,WAAI,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KACxD;SAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAI,CAAC,eAAe,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,EAAE;QAC/E,OAAO,WAAI,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KAChE;SAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAI,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,EAAE;QACzD,OAAO,WAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KAC5E;SAAM,IAAI,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE;QAC/C,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;QAClF,OAAO,WAAI,CAAC,UAAU,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KAC7F;IACD,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAhCW,QAAA,sBAAsB,0BAgCjC;AAEF;;;GAGG;AACH,MAAM,cAAc,GAAG,KAAK,EAAE,IAAY,EAAiB,EAAE;IACzD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAQ,EAAE;QACzC,aAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAQ,EAAE;YACrD,IAAI,GAAG,EAAE;gBACL,MAAM,CAAC,GAAG,CAAC,CAAC;aACf;iBAAM;gBACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;aAC7B;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAA6B,EAAE,UAAsB,EAAiB,EAAE;IAC3G,IAAI;QACA,MAAM,IAAI,GAAG,8BAAsB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QACpE,OAAO,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;KACrC;IAAC,OAAO,KAAK,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,iCAAiC,UAAU,cAAc,OAAO,eAAe,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;KACnH;AACL,CAAC,CAAC;AAPW,QAAA,gBAAgB,oBAO3B"}
|
|
@@ -20,5 +20,17 @@ export declare abstract class AppProvider {
|
|
|
20
20
|
appConfig: Files;
|
|
21
21
|
pageConfigs: Files;
|
|
22
22
|
};
|
|
23
|
+
/**
|
|
24
|
+
* Method returns page's config object to store in file for passed page.
|
|
25
|
+
* @param {v2.Page | v4.Page} page Page from 'app.json'.
|
|
26
|
+
* @param {PageConfig | undefined} config Page's config object.
|
|
27
|
+
*/
|
|
28
|
+
private getPageConfigFile;
|
|
29
|
+
/**
|
|
30
|
+
* Method updates "$filePath" property for custom page's config object.
|
|
31
|
+
* @param {v4.Page} page Custom page from 'app.json'.
|
|
32
|
+
* @param {CustomPageConfig} config Custom page's config object.
|
|
33
|
+
*/
|
|
34
|
+
private applyCustomPageFilePath;
|
|
23
35
|
}
|
|
24
36
|
//# sourceMappingURL=appProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appProvider.d.ts","sourceRoot":"","sources":["../../../../src/sync/common/appProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,WAAW,EAEX,KAAK,EACL,QAAQ,EACR,SAAS,EACT,EAAE,EACF,EAAE,
|
|
1
|
+
{"version":3,"file":"appProvider.d.ts","sourceRoot":"","sources":["../../../../src/sync/common/appProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,WAAW,EAEX,KAAK,EACL,QAAQ,EACR,SAAS,EACT,EAAE,EACF,EAAE,EAEL,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAGH,oBAAoB,EAKvB,MAAM,6BAA6B,CAAC;AA2ErC,MAAM,WAAW,WAAW;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,8BAAsB,WAAW;IAC7B,SAAgB,GAAG,EAAE,WAAW,CAAC;IACjC,SAAgB,MAAM,EAAE,eAAe,CAAC;IACxC,SAAgB,OAAO,EAAE,KAAK,CAAC;IAExB,oBAAoB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAM;IAEhD,SAAS,aACL,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,KAAK,EACd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,EAC1C,MAAM,CAAC,EAAE,eAAe;IAkB5B;;;;;;OAMG;IACI,iBAAiB,IAAI;QAAE,SAAS,EAAE,KAAK,CAAC;QAAC,WAAW,EAAE,KAAK,CAAA;KAAE;IAsBpE;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAuBzB;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAIlC"}
|
|
@@ -20,7 +20,16 @@ function getCustomPageName(page) {
|
|
|
20
20
|
*/
|
|
21
21
|
function getViewType(page, app) {
|
|
22
22
|
const viewType = page?.view?.viewType || app.settings?.viewType;
|
|
23
|
-
return
|
|
23
|
+
return viewType || ux_specification_types_1.ViewTypes.XML;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Returns file extension name for the page view type of a custom page
|
|
27
|
+
* @param {v4.Page|v2.Page} page - custom page
|
|
28
|
+
* @param {Application} app - application
|
|
29
|
+
* @returns {string} File extension name of page view type
|
|
30
|
+
*/
|
|
31
|
+
function getViewTypeExtension(page, app) {
|
|
32
|
+
return getViewType(page, app).toLowerCase();
|
|
24
33
|
}
|
|
25
34
|
/**
|
|
26
35
|
* Returns the view path and file name of the custom page
|
|
@@ -54,7 +63,7 @@ function getViewPath(page, app, viewPath) {
|
|
|
54
63
|
function getCustomPagePath(page, app) {
|
|
55
64
|
const viewName = page.entitySet || getCustomPageName(page);
|
|
56
65
|
const { viewPath, fileName } = getViewPath(page, app, [viewName]);
|
|
57
|
-
const viewType =
|
|
66
|
+
const viewType = getViewTypeExtension(page, app);
|
|
58
67
|
// we always use '/' as separator so that snapshot tests generated from Windows do not fail on Jenkins
|
|
59
68
|
return [...viewPath, `${fileName}.view.${viewType}`].join('/');
|
|
60
69
|
}
|
|
@@ -91,22 +100,8 @@ class AppProvider {
|
|
|
91
100
|
// add schema reference to all pages
|
|
92
101
|
for (const pageId in this.app.pages) {
|
|
93
102
|
page = this.app.pages[pageId];
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
const { path: $schema } = utils_1.getSchemaFilePath(page.pageType);
|
|
97
|
-
const config = { $filePath, $schema };
|
|
98
|
-
pageConfigs[`${ux_specification_types_1.DirName.Pages}/${pageId}.json`] = config;
|
|
99
|
-
}
|
|
100
|
-
else if (page.config) {
|
|
101
|
-
const config = page.config;
|
|
102
|
-
const schemaFile = utils_1.getSchemaFilePath(page.pageType, page.entitySet);
|
|
103
|
-
if (this.schemas[schemaFile.filename]) {
|
|
104
|
-
config.$schema = schemaFile.path;
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
const genericSchemaFile = utils_1.getSchemaFilePath(page.pageType);
|
|
108
|
-
config.$schema = genericSchemaFile.path;
|
|
109
|
-
}
|
|
103
|
+
const config = this.getPageConfigFile(page);
|
|
104
|
+
if (config) {
|
|
110
105
|
pageConfigs[`${ux_specification_types_1.DirName.Pages}/${pageId}.json`] = config;
|
|
111
106
|
}
|
|
112
107
|
}
|
|
@@ -118,6 +113,44 @@ class AppProvider {
|
|
|
118
113
|
appConfig[ux_specification_types_1.FileName.App] = app;
|
|
119
114
|
return { appConfig, pageConfigs };
|
|
120
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* Method returns page's config object to store in file for passed page.
|
|
118
|
+
* @param {v2.Page | v4.Page} page Page from 'app.json'.
|
|
119
|
+
* @param {PageConfig | undefined} config Page's config object.
|
|
120
|
+
*/
|
|
121
|
+
getPageConfigFile(page) {
|
|
122
|
+
let config;
|
|
123
|
+
const isEditableXML = getViewType(page, this.app) === ux_specification_types_1.ViewTypes.XML && !!page.config;
|
|
124
|
+
if (page.pageType === ux_specification_types_1.PageTypeV4.CustomPage || (page.pageType === ux_specification_types_1.PageTypeV4.FPMCustomPage && !isEditableXML)) {
|
|
125
|
+
const { path: $schema } = utils_1.getSchemaFilePath(page.pageType);
|
|
126
|
+
config = { $schema };
|
|
127
|
+
}
|
|
128
|
+
else if (page.config) {
|
|
129
|
+
config = page.config;
|
|
130
|
+
const viewId = 'view' in page ? page.view?.id : undefined;
|
|
131
|
+
const schemaFile = utils_1.getSchemaFilePath(page.pageType, page.entitySet, viewId);
|
|
132
|
+
if (this.schemas[schemaFile.filename]) {
|
|
133
|
+
config.$schema = schemaFile.path;
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
const genericSchemaFile = utils_1.getSchemaFilePath(page.pageType);
|
|
137
|
+
config.$schema = genericSchemaFile.path;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
if ((config && page.pageType === ux_specification_types_1.PageTypeV4.CustomPage) || page.pageType === ux_specification_types_1.PageTypeV4.FPMCustomPage) {
|
|
141
|
+
this.applyCustomPageFilePath(page, config);
|
|
142
|
+
}
|
|
143
|
+
return config;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Method updates "$filePath" property for custom page's config object.
|
|
147
|
+
* @param {v4.Page} page Custom page from 'app.json'.
|
|
148
|
+
* @param {CustomPageConfig} config Custom page's config object.
|
|
149
|
+
*/
|
|
150
|
+
applyCustomPageFilePath(page, config) {
|
|
151
|
+
const $filePath = getCustomPagePath(page, this.app);
|
|
152
|
+
config.$filePath = $filePath;
|
|
153
|
+
}
|
|
121
154
|
}
|
|
122
155
|
exports.AppProvider = AppProvider;
|
|
123
156
|
//# sourceMappingURL=appProvider.js.map
|