@sap/ux-specification 1.90.18 → 1.90.19
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 +16 -2
- 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-AnalyticalListPage.html +1 -1
- package/dist/documentation/v4/v4-ApplicationV4.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 +1 -1
- package/dist/schemas/v2/AnalyticalListPageConfig.json +112 -2
- package/dist/schemas/v2/ListReportConfig.json +112 -2
- package/dist/schemas/v2/ObjectPageConfig.json +89 -33
- package/dist/schemas/v2/OverviewPageConfig.json +40 -0
- package/dist/schemas/v4/AnalyticalListPageConfig.json +43 -86
- package/dist/schemas/v4/ListReportConfig.json +43 -86
- package/dist/schemas/v4/ObjectPageConfig.json +64 -71
- package/dist/scripts/to-json-schema.js +31 -37
- package/dist/scripts/to-json-schema.js.map +1 -1
- package/dist/specification/v2/index-min.js +1 -1
- package/dist/specification/v4/index-min.js +1 -1
- package/dist/src/api.js +9 -9
- package/dist/src/api.js.map +1 -1
- package/dist/src/apiTypes.d.ts +5 -2
- package/dist/src/specification/schemaAccess.js +1 -3
- package/dist/src/specification/schemaAccess.js.map +1 -1
- package/dist/src/specification/v2/controls/Action.d.ts +19 -2
- package/dist/src/specification/v2/controls/FilterBar.d.ts +32 -0
- package/dist/src/specification/v2/controls/FilterBar.js +24 -0
- package/dist/src/specification/v2/controls/FilterBar.js.map +1 -1
- package/dist/src/specification/v2/controls/Footer.d.ts +20 -0
- package/dist/src/specification/v2/controls/{ObjectPageFooter.js → Footer.js} +1 -1
- package/dist/src/specification/v2/controls/Footer.js.map +1 -0
- package/dist/src/specification/v2/controls/Table.d.ts +8 -1
- package/dist/src/specification/v2/controls/Table.js.map +1 -1
- package/dist/src/specification/v2/controls/ToolBar.d.ts +1 -8
- package/dist/src/specification/v2/controls/index.d.ts +1 -2
- package/dist/src/specification/v2/controls/index.js.map +1 -1
- package/dist/src/specification/v2/pages/AnalyticalListPageConfig.d.ts +2 -1
- package/dist/src/specification/v2/pages/ListReportConfig.d.ts +2 -1
- package/dist/src/specification/v4/controls/ObjectPageFooter.d.ts +2 -2
- package/dist/src/specification/v4/controls/ObjectPageSection.d.ts +7 -7
- package/dist/src/specification/v4/controls/ObjectPageTable.d.ts +5 -6
- package/dist/src/specification/v4/controls/Table.d.ts +2 -7
- package/dist/src/specification/v4/webapp/manifest/ManifestSettings.d.ts +59 -10
- package/dist/src/specification/v4/webapp/manifest/ManifestSettings.js +6 -0
- package/dist/src/specification/v4/webapp/manifest/ManifestSettings.js.map +1 -1
- package/dist/src/sync/common/appProvider.js.map +1 -1
- package/dist/src/sync/common/decoration/control.d.ts +11 -1
- package/dist/src/sync/common/decoration/control.js +29 -3
- package/dist/src/sync/common/decoration/control.js.map +1 -1
- package/dist/src/sync/common/decoration/factory.js +2 -4
- package/dist/src/sync/common/decoration/factory.js.map +1 -1
- package/dist/src/sync/common/generate/objectPage.d.ts +8 -0
- package/dist/src/sync/common/generate/objectPage.js +18 -6
- package/dist/src/sync/common/generate/objectPage.js.map +1 -1
- package/dist/src/sync/common/generate/utils.d.ts +1 -0
- package/dist/src/sync/common/generate/utils.js +19 -3
- package/dist/src/sync/common/generate/utils.js.map +1 -1
- package/dist/src/sync/common/i18n.json +2 -0
- package/dist/src/sync/common/import/utils.d.ts +8 -1
- package/dist/src/sync/common/import/utils.js +14 -3
- package/dist/src/sync/common/import/utils.js.map +1 -1
- package/dist/src/sync/common/importProject.js +13 -22
- package/dist/src/sync/common/importProject.js.map +1 -1
- package/dist/src/sync/common/types.d.ts +29 -15
- package/dist/src/sync/common/types.js +25 -1
- package/dist/src/sync/common/types.js.map +1 -1
- package/dist/src/sync/common/utils.d.ts +4 -3
- package/dist/src/sync/common/utils.js +15 -18
- package/dist/src/sync/common/utils.js.map +1 -1
- package/dist/src/sync/v2/export/controls/Action.d.ts +15 -0
- package/dist/src/sync/v2/export/controls/Action.js +68 -15
- package/dist/src/sync/v2/export/controls/Action.js.map +1 -1
- package/dist/src/sync/v2/export/controls/FilterBar.d.ts +3 -3
- package/dist/src/sync/v2/export/controls/FilterBar.js +2 -11
- package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -1
- package/dist/src/sync/v2/export/controls/FormAction.js +3 -2
- package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -1
- package/dist/src/sync/v2/export/controls/Fragment.d.ts +1 -1
- package/dist/src/sync/v2/export/controls/Fragment.js +239 -164
- package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
- package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +2 -2
- package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +9 -9
- package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -1
- package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +2 -2
- package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +4 -4
- package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -1
- package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +6 -4
- package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -1
- package/dist/src/sync/v2/export/controls/TableColumn.d.ts +18 -2
- package/dist/src/sync/v2/export/controls/TableColumn.js +126 -1
- package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -1
- package/dist/src/sync/v2/export/export.js +134 -111
- package/dist/src/sync/v2/export/export.js.map +1 -1
- package/dist/src/sync/v2/export/manifest.js +2 -5
- package/dist/src/sync/v2/export/manifest.js.map +1 -1
- package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +2 -1
- package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +3 -0
- package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -1
- package/dist/src/sync/v2/export/pages/ListReport.d.ts +2 -1
- package/dist/src/sync/v2/export/pages/ListReport.js +3 -0
- package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -1
- package/dist/src/sync/v2/export/view-controller-generator.d.ts +16 -21
- package/dist/src/sync/v2/export/view-controller-generator.js +20 -36
- package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -1
- package/dist/src/sync/v2/generate/analyticalListReport.js +10 -5
- package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
- package/dist/src/sync/v2/generate/listReport.js +9 -4
- package/dist/src/sync/v2/generate/listReport.js.map +1 -1
- package/dist/src/sync/v2/generate/objectPage.d.ts +1 -5
- package/dist/src/sync/v2/generate/objectPage.js +10 -10
- package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
- package/dist/src/sync/v2/generate/utils.d.ts +15 -11
- package/dist/src/sync/v2/generate/utils.js +239 -110
- package/dist/src/sync/v2/generate/utils.js.map +1 -1
- package/dist/src/sync/v2/import/common/index.d.ts +22 -4
- package/dist/src/sync/v2/import/common/index.js +237 -27
- package/dist/src/sync/v2/import/common/index.js.map +1 -1
- package/dist/src/sync/v2/import/controls/table.js +3 -2
- package/dist/src/sync/v2/import/controls/table.js.map +1 -1
- package/dist/src/sync/v2/import/pages/analyticalListPage.js +27 -5
- package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
- package/dist/src/sync/v2/import/pages/listReport.d.ts +0 -5
- package/dist/src/sync/v2/import/pages/listReport.js +14 -124
- package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
- package/dist/src/sync/v2/import/pages/objectPage.js +182 -107
- package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
- package/dist/src/sync/v2/import/utils.d.ts +4 -6
- package/dist/src/sync/v2/import/utils.js +32 -11
- package/dist/src/sync/v2/import/utils.js.map +1 -1
- package/dist/src/sync/v2/types.d.ts +8 -1
- package/dist/src/sync/v2/types.js +8 -1
- package/dist/src/sync/v2/types.js.map +1 -1
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +3 -7
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +2 -25
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -1
- package/dist/src/sync/v4/export/controls/TableColumn.d.ts +1 -6
- package/dist/src/sync/v4/export/controls/TableColumn.js +0 -33
- package/dist/src/sync/v4/export/controls/TableColumn.js.map +1 -1
- package/dist/src/sync/v4/export/controls/ToolBar.d.ts +5 -1
- package/dist/src/sync/v4/export/controls/ToolBar.js +3 -0
- package/dist/src/sync/v4/export/controls/ToolBar.js.map +1 -1
- package/dist/src/sync/v4/export/export.js +20 -16
- package/dist/src/sync/v4/export/export.js.map +1 -1
- package/dist/src/sync/v4/export/pages/AnalyticalListPage.d.ts +2 -2
- package/dist/src/sync/v4/export/pages/ListReport.d.ts +2 -2
- package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +2 -2
- package/dist/src/sync/v4/export/types.d.ts +3 -0
- package/dist/src/sync/v4/generate/generate.d.ts +4 -2
- package/dist/src/sync/v4/generate/generate.js +15 -6
- package/dist/src/sync/v4/generate/generate.js.map +1 -1
- package/dist/src/sync/v4/generate/listReport.d.ts +7 -6
- package/dist/src/sync/v4/generate/listReport.js +48 -23
- package/dist/src/sync/v4/generate/listReport.js.map +1 -1
- package/dist/src/sync/v4/generate/objectPage.js +66 -85
- package/dist/src/sync/v4/generate/objectPage.js.map +1 -1
- package/dist/src/sync/v4/import/pages/analyticalListPage.d.ts +2 -2
- package/dist/src/sync/v4/import/pages/analyticalListPage.js +0 -1
- package/dist/src/sync/v4/import/pages/analyticalListPage.js.map +1 -1
- package/dist/src/sync/v4/import/pages/listReport.d.ts +3 -3
- package/dist/src/sync/v4/import/pages/listReport.js +34 -23
- package/dist/src/sync/v4/import/pages/listReport.js.map +1 -1
- package/dist/src/sync/v4/import/pages/objectPage.d.ts +2 -2
- package/dist/src/sync/v4/import/pages/objectPage.js +21 -16
- package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -1
- package/dist/src/sync/v4/import/utils.js +6 -5
- package/dist/src/sync/v4/import/utils.js.map +1 -1
- package/dist/src/sync/v4/utils/utils.d.ts +22 -2
- package/dist/src/sync/v4/utils/utils.js +102 -26
- package/dist/src/sync/v4/utils/utils.js.map +1 -1
- package/dist/test/unit/utils.test.d.ts +1 -1
- package/package.json +5 -6
- package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +0 -11
- package/dist/src/specification/v2/controls/ObjectPageFooter.js.map +0 -1
- package/dist/src/specification/v2/controls/ObjectPageFooterAction.d.ts +0 -28
- package/dist/src/specification/v2/controls/ObjectPageFooterAction.js +0 -3
- package/dist/src/specification/v2/controls/ObjectPageFooterAction.js.map +0 -1
- package/dist/test/test-utils/metadataParser.d.ts +0 -19
|
@@ -285,90 +285,32 @@
|
|
|
285
285
|
"additionalProperties": {
|
|
286
286
|
"anyOf": [
|
|
287
287
|
{
|
|
288
|
-
"
|
|
289
|
-
"isViewNode": true,
|
|
290
|
-
"type": "object",
|
|
291
|
-
"properties": {
|
|
292
|
-
"width": {
|
|
293
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
294
|
-
"type": "string"
|
|
295
|
-
},
|
|
296
|
-
"availability": {
|
|
297
|
-
"$ref": "#/definitions/Availability",
|
|
298
|
-
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation."
|
|
299
|
-
}
|
|
300
|
-
},
|
|
301
|
-
"additionalProperties": false
|
|
288
|
+
"$ref": "#/definitions/TableColumn"
|
|
302
289
|
},
|
|
303
290
|
{
|
|
304
|
-
"
|
|
305
|
-
"isViewNode": true,
|
|
306
|
-
"additionalProperties": false,
|
|
307
|
-
"type": "object",
|
|
308
|
-
"properties": {
|
|
309
|
-
"width": {
|
|
310
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
311
|
-
"type": "string"
|
|
312
|
-
},
|
|
313
|
-
"availability": {
|
|
314
|
-
"$ref": "#/definitions/Availability",
|
|
315
|
-
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation."
|
|
316
|
-
},
|
|
317
|
-
"afterExecution": {
|
|
318
|
-
"$ref": "#/definitions/ActionAfterExecutionConfiguration",
|
|
319
|
-
"description": "Settings that are only relevant for actions (associated with a UI.DataFieldForAction annotation)"
|
|
320
|
-
}
|
|
321
|
-
}
|
|
322
|
-
},
|
|
323
|
-
{
|
|
324
|
-
"description": "Custom Columns",
|
|
325
|
-
"isViewNode": true,
|
|
326
|
-
"type": "array",
|
|
327
|
-
"items": {
|
|
328
|
-
"description": "Custom Column",
|
|
329
|
-
"isViewNode": true,
|
|
330
|
-
"additionalProperties": false,
|
|
331
|
-
"type": "object",
|
|
332
|
-
"properties": {
|
|
333
|
-
"position": {
|
|
334
|
-
"description": "Defines the position of the column relative to other columns.",
|
|
335
|
-
"type": "object",
|
|
336
|
-
"properties": {
|
|
337
|
-
"anchor": {
|
|
338
|
-
"description": "The key of another column to be used as placement anchor.",
|
|
339
|
-
"type": "string"
|
|
340
|
-
},
|
|
341
|
-
"placement": {
|
|
342
|
-
"$ref": "#/definitions/Placement",
|
|
343
|
-
"description": "Define the placement, either before or after the anchor column."
|
|
344
|
-
}
|
|
345
|
-
},
|
|
346
|
-
"additionalProperties": false,
|
|
347
|
-
"required": [
|
|
348
|
-
"placement"
|
|
349
|
-
]
|
|
350
|
-
},
|
|
351
|
-
"header": {
|
|
352
|
-
"description": "The header is shown on the table as header, as well as in the add/remove dialog.",
|
|
353
|
-
"type": "string"
|
|
354
|
-
},
|
|
355
|
-
"width": {
|
|
356
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
357
|
-
"type": "string"
|
|
358
|
-
},
|
|
359
|
-
"template": {
|
|
360
|
-
"description": "Relevant for extension columns; allows the definition of a target fragment.",
|
|
361
|
-
"type": "string"
|
|
362
|
-
}
|
|
363
|
-
},
|
|
364
|
-
"required": [
|
|
365
|
-
"header"
|
|
366
|
-
]
|
|
367
|
-
}
|
|
291
|
+
"$ref": "#/definitions/TableColumnAction"
|
|
368
292
|
}
|
|
369
293
|
]
|
|
370
294
|
}
|
|
371
295
|
},
|
|
296
|
+
"TableColumn": {
|
|
297
|
+
"description": "Table Column",
|
|
298
|
+
"isViewNode": true,
|
|
299
|
+
"type": "object",
|
|
300
|
+
"properties": {
|
|
301
|
+
"width": {
|
|
302
|
+
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
303
|
+
"type": "string",
|
|
304
|
+
"artifactType": "Manifest"
|
|
305
|
+
},
|
|
306
|
+
"availability": {
|
|
307
|
+
"$ref": "#/definitions/Availability",
|
|
308
|
+
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation.",
|
|
309
|
+
"artifactType": "Manifest"
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
"additionalProperties": false
|
|
313
|
+
},
|
|
372
314
|
"Availability": {
|
|
373
315
|
"enum": [
|
|
374
316
|
"Adaptation",
|
|
@@ -377,6 +319,29 @@
|
|
|
377
319
|
],
|
|
378
320
|
"type": "string"
|
|
379
321
|
},
|
|
322
|
+
"TableColumnAction": {
|
|
323
|
+
"description": "Inline Action",
|
|
324
|
+
"isViewNode": true,
|
|
325
|
+
"type": "object",
|
|
326
|
+
"properties": {
|
|
327
|
+
"afterExecution": {
|
|
328
|
+
"$ref": "#/definitions/ActionAfterExecutionConfiguration",
|
|
329
|
+
"description": "Settings that are only relevant for actions (associated with a UI.DataFieldForAction annotation)",
|
|
330
|
+
"artifactType": "Manifest"
|
|
331
|
+
},
|
|
332
|
+
"width": {
|
|
333
|
+
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
334
|
+
"type": "string",
|
|
335
|
+
"artifactType": "Manifest"
|
|
336
|
+
},
|
|
337
|
+
"availability": {
|
|
338
|
+
"$ref": "#/definitions/Availability",
|
|
339
|
+
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation.",
|
|
340
|
+
"artifactType": "Manifest"
|
|
341
|
+
}
|
|
342
|
+
},
|
|
343
|
+
"additionalProperties": false
|
|
344
|
+
},
|
|
380
345
|
"ActionAfterExecutionConfiguration": {
|
|
381
346
|
"type": "object",
|
|
382
347
|
"properties": {
|
|
@@ -393,14 +358,6 @@
|
|
|
393
358
|
},
|
|
394
359
|
"additionalProperties": false
|
|
395
360
|
},
|
|
396
|
-
"Placement": {
|
|
397
|
-
"enum": [
|
|
398
|
-
"After",
|
|
399
|
-
"Before",
|
|
400
|
-
"End"
|
|
401
|
-
],
|
|
402
|
-
"type": "string"
|
|
403
|
-
},
|
|
404
361
|
"VariantManagementTypeListReport": {
|
|
405
362
|
"enum": [
|
|
406
363
|
"Control",
|
|
@@ -285,90 +285,32 @@
|
|
|
285
285
|
"additionalProperties": {
|
|
286
286
|
"anyOf": [
|
|
287
287
|
{
|
|
288
|
-
"
|
|
289
|
-
"isViewNode": true,
|
|
290
|
-
"type": "object",
|
|
291
|
-
"properties": {
|
|
292
|
-
"width": {
|
|
293
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
294
|
-
"type": "string"
|
|
295
|
-
},
|
|
296
|
-
"availability": {
|
|
297
|
-
"$ref": "#/definitions/Availability",
|
|
298
|
-
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation."
|
|
299
|
-
}
|
|
300
|
-
},
|
|
301
|
-
"additionalProperties": false
|
|
288
|
+
"$ref": "#/definitions/TableColumn"
|
|
302
289
|
},
|
|
303
290
|
{
|
|
304
|
-
"
|
|
305
|
-
"isViewNode": true,
|
|
306
|
-
"additionalProperties": false,
|
|
307
|
-
"type": "object",
|
|
308
|
-
"properties": {
|
|
309
|
-
"width": {
|
|
310
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
311
|
-
"type": "string"
|
|
312
|
-
},
|
|
313
|
-
"availability": {
|
|
314
|
-
"$ref": "#/definitions/Availability",
|
|
315
|
-
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation."
|
|
316
|
-
},
|
|
317
|
-
"afterExecution": {
|
|
318
|
-
"$ref": "#/definitions/ActionAfterExecutionConfiguration",
|
|
319
|
-
"description": "Settings that are only relevant for actions (associated with a UI.DataFieldForAction annotation)"
|
|
320
|
-
}
|
|
321
|
-
}
|
|
322
|
-
},
|
|
323
|
-
{
|
|
324
|
-
"description": "Custom Columns",
|
|
325
|
-
"isViewNode": true,
|
|
326
|
-
"type": "array",
|
|
327
|
-
"items": {
|
|
328
|
-
"description": "Custom Column",
|
|
329
|
-
"isViewNode": true,
|
|
330
|
-
"additionalProperties": false,
|
|
331
|
-
"type": "object",
|
|
332
|
-
"properties": {
|
|
333
|
-
"position": {
|
|
334
|
-
"description": "Defines the position of the column relative to other columns.",
|
|
335
|
-
"type": "object",
|
|
336
|
-
"properties": {
|
|
337
|
-
"anchor": {
|
|
338
|
-
"description": "The key of another column to be used as placement anchor.",
|
|
339
|
-
"type": "string"
|
|
340
|
-
},
|
|
341
|
-
"placement": {
|
|
342
|
-
"$ref": "#/definitions/Placement",
|
|
343
|
-
"description": "Define the placement, either before or after the anchor column."
|
|
344
|
-
}
|
|
345
|
-
},
|
|
346
|
-
"additionalProperties": false,
|
|
347
|
-
"required": [
|
|
348
|
-
"placement"
|
|
349
|
-
]
|
|
350
|
-
},
|
|
351
|
-
"header": {
|
|
352
|
-
"description": "The header is shown on the table as header, as well as in the add/remove dialog.",
|
|
353
|
-
"type": "string"
|
|
354
|
-
},
|
|
355
|
-
"width": {
|
|
356
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
357
|
-
"type": "string"
|
|
358
|
-
},
|
|
359
|
-
"template": {
|
|
360
|
-
"description": "Relevant for extension columns; allows the definition of a target fragment.",
|
|
361
|
-
"type": "string"
|
|
362
|
-
}
|
|
363
|
-
},
|
|
364
|
-
"required": [
|
|
365
|
-
"header"
|
|
366
|
-
]
|
|
367
|
-
}
|
|
291
|
+
"$ref": "#/definitions/TableColumnAction"
|
|
368
292
|
}
|
|
369
293
|
]
|
|
370
294
|
}
|
|
371
295
|
},
|
|
296
|
+
"TableColumn": {
|
|
297
|
+
"description": "Table Column",
|
|
298
|
+
"isViewNode": true,
|
|
299
|
+
"type": "object",
|
|
300
|
+
"properties": {
|
|
301
|
+
"width": {
|
|
302
|
+
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
303
|
+
"type": "string",
|
|
304
|
+
"artifactType": "Manifest"
|
|
305
|
+
},
|
|
306
|
+
"availability": {
|
|
307
|
+
"$ref": "#/definitions/Availability",
|
|
308
|
+
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation.",
|
|
309
|
+
"artifactType": "Manifest"
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
"additionalProperties": false
|
|
313
|
+
},
|
|
372
314
|
"Availability": {
|
|
373
315
|
"enum": [
|
|
374
316
|
"Adaptation",
|
|
@@ -377,6 +319,29 @@
|
|
|
377
319
|
],
|
|
378
320
|
"type": "string"
|
|
379
321
|
},
|
|
322
|
+
"TableColumnAction": {
|
|
323
|
+
"description": "Inline Action",
|
|
324
|
+
"isViewNode": true,
|
|
325
|
+
"type": "object",
|
|
326
|
+
"properties": {
|
|
327
|
+
"afterExecution": {
|
|
328
|
+
"$ref": "#/definitions/ActionAfterExecutionConfiguration",
|
|
329
|
+
"description": "Settings that are only relevant for actions (associated with a UI.DataFieldForAction annotation)",
|
|
330
|
+
"artifactType": "Manifest"
|
|
331
|
+
},
|
|
332
|
+
"width": {
|
|
333
|
+
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
334
|
+
"type": "string",
|
|
335
|
+
"artifactType": "Manifest"
|
|
336
|
+
},
|
|
337
|
+
"availability": {
|
|
338
|
+
"$ref": "#/definitions/Availability",
|
|
339
|
+
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation.",
|
|
340
|
+
"artifactType": "Manifest"
|
|
341
|
+
}
|
|
342
|
+
},
|
|
343
|
+
"additionalProperties": false
|
|
344
|
+
},
|
|
380
345
|
"ActionAfterExecutionConfiguration": {
|
|
381
346
|
"type": "object",
|
|
382
347
|
"properties": {
|
|
@@ -393,14 +358,6 @@
|
|
|
393
358
|
},
|
|
394
359
|
"additionalProperties": false
|
|
395
360
|
},
|
|
396
|
-
"Placement": {
|
|
397
|
-
"enum": [
|
|
398
|
-
"After",
|
|
399
|
-
"Before",
|
|
400
|
-
"End"
|
|
401
|
-
],
|
|
402
|
-
"type": "string"
|
|
403
|
-
},
|
|
404
361
|
"VariantManagementTypeListReport": {
|
|
405
362
|
"enum": [
|
|
406
363
|
"Control",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
]
|
|
24
24
|
},
|
|
25
25
|
"footer": {
|
|
26
|
-
"$ref": "#/definitions/ObjectPageFooter<
|
|
26
|
+
"$ref": "#/definitions/ObjectPageFooter<ObjectPageFooterActions>"
|
|
27
27
|
},
|
|
28
28
|
"$schema": {
|
|
29
29
|
"type": "string"
|
|
@@ -316,7 +316,7 @@
|
|
|
316
316
|
"artifactType": "Manifest"
|
|
317
317
|
},
|
|
318
318
|
"columns": {
|
|
319
|
-
"$ref": "#/definitions/
|
|
319
|
+
"$ref": "#/definitions/GenericColumnsOP"
|
|
320
320
|
},
|
|
321
321
|
"type": {
|
|
322
322
|
"$ref": "#/definitions/TableTypeV4",
|
|
@@ -477,75 +477,37 @@
|
|
|
477
477
|
"annotationPath"
|
|
478
478
|
]
|
|
479
479
|
},
|
|
480
|
-
"
|
|
480
|
+
"GenericColumnsOP": {
|
|
481
481
|
"type": "object",
|
|
482
482
|
"additionalProperties": {
|
|
483
483
|
"anyOf": [
|
|
484
484
|
{
|
|
485
|
-
"
|
|
486
|
-
"isViewNode": true,
|
|
487
|
-
"type": "object",
|
|
488
|
-
"properties": {
|
|
489
|
-
"width": {
|
|
490
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
491
|
-
"type": "string"
|
|
492
|
-
},
|
|
493
|
-
"availability": {
|
|
494
|
-
"$ref": "#/definitions/Availability",
|
|
495
|
-
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation."
|
|
496
|
-
}
|
|
497
|
-
},
|
|
498
|
-
"additionalProperties": false
|
|
485
|
+
"$ref": "#/definitions/ObjectPageTableColumn"
|
|
499
486
|
},
|
|
500
487
|
{
|
|
501
|
-
"
|
|
502
|
-
"isViewNode": true,
|
|
503
|
-
"type": "array",
|
|
504
|
-
"items": {
|
|
505
|
-
"description": "Custom Column",
|
|
506
|
-
"isViewNode": true,
|
|
507
|
-
"additionalProperties": false,
|
|
508
|
-
"type": "object",
|
|
509
|
-
"properties": {
|
|
510
|
-
"position": {
|
|
511
|
-
"description": "Defines the position of the column relative to other columns.",
|
|
512
|
-
"type": "object",
|
|
513
|
-
"properties": {
|
|
514
|
-
"anchor": {
|
|
515
|
-
"description": "The key of another column to be used as placement anchor.",
|
|
516
|
-
"type": "string"
|
|
517
|
-
},
|
|
518
|
-
"placement": {
|
|
519
|
-
"$ref": "#/definitions/Placement",
|
|
520
|
-
"description": "Define the placement, either before or after the anchor column."
|
|
521
|
-
}
|
|
522
|
-
},
|
|
523
|
-
"additionalProperties": false,
|
|
524
|
-
"required": [
|
|
525
|
-
"placement"
|
|
526
|
-
]
|
|
527
|
-
},
|
|
528
|
-
"header": {
|
|
529
|
-
"description": "The header is shown on the table as header, as well as in the add/remove dialog.",
|
|
530
|
-
"type": "string"
|
|
531
|
-
},
|
|
532
|
-
"width": {
|
|
533
|
-
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
534
|
-
"type": "string"
|
|
535
|
-
},
|
|
536
|
-
"template": {
|
|
537
|
-
"description": "Relevant for extension columns; allows the definition of a target fragment.",
|
|
538
|
-
"type": "string"
|
|
539
|
-
}
|
|
540
|
-
},
|
|
541
|
-
"required": [
|
|
542
|
-
"header"
|
|
543
|
-
]
|
|
544
|
-
}
|
|
488
|
+
"$ref": "#/definitions/ObjectPageTableColumnAction"
|
|
545
489
|
}
|
|
546
490
|
]
|
|
547
491
|
}
|
|
548
492
|
},
|
|
493
|
+
"ObjectPageTableColumn": {
|
|
494
|
+
"description": "Table Column",
|
|
495
|
+
"isViewNode": true,
|
|
496
|
+
"type": "object",
|
|
497
|
+
"properties": {
|
|
498
|
+
"width": {
|
|
499
|
+
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
500
|
+
"type": "string",
|
|
501
|
+
"artifactType": "Manifest"
|
|
502
|
+
},
|
|
503
|
+
"availability": {
|
|
504
|
+
"$ref": "#/definitions/Availability",
|
|
505
|
+
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation.",
|
|
506
|
+
"artifactType": "Manifest"
|
|
507
|
+
}
|
|
508
|
+
},
|
|
509
|
+
"additionalProperties": false
|
|
510
|
+
},
|
|
549
511
|
"Availability": {
|
|
550
512
|
"enum": [
|
|
551
513
|
"Adaptation",
|
|
@@ -554,13 +516,44 @@
|
|
|
554
516
|
],
|
|
555
517
|
"type": "string"
|
|
556
518
|
},
|
|
557
|
-
"
|
|
558
|
-
"
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
519
|
+
"ObjectPageTableColumnAction": {
|
|
520
|
+
"description": "Inline Action for Object Page",
|
|
521
|
+
"isViewNode": true,
|
|
522
|
+
"type": "object",
|
|
523
|
+
"properties": {
|
|
524
|
+
"afterExecution": {
|
|
525
|
+
"$ref": "#/definitions/ActionAfterExecutionConfigurationOP",
|
|
526
|
+
"description": "Settings that are only relevant for actions (associated with a UI.DataFieldForAction annotation)",
|
|
527
|
+
"artifactType": "Manifest"
|
|
528
|
+
},
|
|
529
|
+
"width": {
|
|
530
|
+
"description": "A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize.",
|
|
531
|
+
"type": "string",
|
|
532
|
+
"artifactType": "Manifest"
|
|
533
|
+
},
|
|
534
|
+
"availability": {
|
|
535
|
+
"$ref": "#/definitions/Availability",
|
|
536
|
+
"description": "Defines where the column should be shown.\nDefault: it will be shown by default in the table.\nAdaptation: it will initially not shown in the table but be available via end user adaptation.\nHidden: the column is neither available in the table nor in adaptation.",
|
|
537
|
+
"artifactType": "Manifest"
|
|
538
|
+
}
|
|
539
|
+
},
|
|
540
|
+
"additionalProperties": false
|
|
541
|
+
},
|
|
542
|
+
"ActionAfterExecutionConfigurationOP": {
|
|
543
|
+
"type": "object",
|
|
544
|
+
"properties": {
|
|
545
|
+
"navigateToInstance": {
|
|
546
|
+
"description": "By default, a navigation is automatically triggered after an action execution. If applications want to disable the navigation, they can do so using the manifest setting “navigateToInstance”.",
|
|
547
|
+
"type": "boolean",
|
|
548
|
+
"artifactType": "Manifest"
|
|
549
|
+
},
|
|
550
|
+
"enableAutoScroll": {
|
|
551
|
+
"description": "The \"enableAutoScroll\" allows you to scroll to the newly created or change item after execution of an action",
|
|
552
|
+
"type": "boolean",
|
|
553
|
+
"artifactType": "Manifest"
|
|
554
|
+
}
|
|
555
|
+
},
|
|
556
|
+
"additionalProperties": false
|
|
564
557
|
},
|
|
565
558
|
"TableTypeV4": {
|
|
566
559
|
"enum": [
|
|
@@ -700,18 +693,18 @@
|
|
|
700
693
|
],
|
|
701
694
|
"type": "string"
|
|
702
695
|
},
|
|
703
|
-
"ObjectPageFooter<
|
|
696
|
+
"ObjectPageFooter<ObjectPageFooterActions>": {
|
|
704
697
|
"description": "Footer",
|
|
705
698
|
"isViewNode": true,
|
|
706
699
|
"type": "object",
|
|
707
700
|
"properties": {
|
|
708
701
|
"actions": {
|
|
709
|
-
"$ref": "#/definitions/
|
|
702
|
+
"$ref": "#/definitions/ObjectPageFooterActions"
|
|
710
703
|
}
|
|
711
704
|
},
|
|
712
705
|
"additionalProperties": false
|
|
713
706
|
},
|
|
714
|
-
"
|
|
707
|
+
"ObjectPageFooterActions": {
|
|
715
708
|
"type": "object",
|
|
716
709
|
"additionalProperties": {
|
|
717
710
|
"type": "object",
|
|
@@ -14,9 +14,13 @@ const utils_1 = require("../src/sync/v2/generate/utils");
|
|
|
14
14
|
const factory_1 = require("../src/sync/v2/export/factory");
|
|
15
15
|
const factory_2 = require("../src/sync/v4/export/factory");
|
|
16
16
|
const common_1 = require("../src/specification/common");
|
|
17
|
+
//TS compiler options, compare with tsconfig
|
|
17
18
|
const compilerOptions = {
|
|
18
19
|
skipLibCheck: true,
|
|
19
|
-
types: ['node', '@sapui5/ts-types']
|
|
20
|
+
types: ['node', '@sapui5/ts-types', 'jest'],
|
|
21
|
+
esModuleInterop: true,
|
|
22
|
+
resolveJsonModule: true,
|
|
23
|
+
downlevelIteration: true
|
|
20
24
|
};
|
|
21
25
|
/**
|
|
22
26
|
* Convert interfaces to json schema
|
|
@@ -25,52 +29,42 @@ const compilerOptions = {
|
|
|
25
29
|
*/
|
|
26
30
|
function convertInterfaces(path, files, version) {
|
|
27
31
|
const schemas = [];
|
|
28
|
-
const paths = [];
|
|
29
|
-
files.forEach((file) => {
|
|
30
|
-
paths.push(path_1.join(path, file));
|
|
31
|
-
});
|
|
32
32
|
files.forEach((file) => {
|
|
33
33
|
const generator = typescript_json_schema_1.buildGenerator(typescript_json_schema_1.getProgramFromFiles([path_1.join(path, file)], compilerOptions), {
|
|
34
34
|
noExtraProps: true,
|
|
35
35
|
required: true,
|
|
36
|
-
validationKeywords: [
|
|
37
|
-
'i18nClassification',
|
|
38
|
-
'isViewNode',
|
|
39
|
-
'displayName',
|
|
40
|
-
'dataType',
|
|
41
|
-
'controlProperty',
|
|
42
|
-
'annotationType',
|
|
43
|
-
'annotationPath'
|
|
44
|
-
]
|
|
36
|
+
validationKeywords: ['i18nClassification', 'isViewNode', 'displayName', 'controlProperty']
|
|
45
37
|
});
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
38
|
+
if (generator) {
|
|
39
|
+
const filename = file.replace('ts', 'json');
|
|
40
|
+
schemas[filename] = generator.getSchemaForSymbol(file.replace('.ts', ''));
|
|
41
|
+
if (file.search('Config') > -1) {
|
|
42
|
+
//it is a page template ==> enhance schema by further information from reflect-metadata
|
|
43
|
+
let pageType;
|
|
44
|
+
let factory;
|
|
45
|
+
if (version === common_1.FioriElementsVersion.v2) {
|
|
46
|
+
factory = new factory_1.MetadataInstanceFactoryV2();
|
|
47
|
+
pageType = file.split('Config')[0];
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
factory = new factory_2.MetadataInstanceFactoryV4();
|
|
51
|
+
pageType = file.split('Config')[0];
|
|
52
|
+
}
|
|
53
|
+
const page = factory.createPageInstance(pageType, {});
|
|
54
|
+
utils_1.processMetadata(schemas[filename], schemas[filename], page, pageType, factory);
|
|
59
55
|
}
|
|
60
|
-
const page = factory.createPageInstance(pageType, {});
|
|
61
|
-
utils_1.processMetadata(schemas[filename], schemas[filename], page, pageType, factory);
|
|
62
56
|
}
|
|
63
57
|
});
|
|
64
58
|
return schemas;
|
|
65
59
|
}
|
|
66
60
|
exports.convertInterfaces = convertInterfaces;
|
|
67
61
|
function writeSchemasToFile(path, schemas, version) {
|
|
68
|
-
const
|
|
69
|
-
if (!fs.existsSync(
|
|
70
|
-
fs.mkdirSync(
|
|
62
|
+
const dirToWrite = path_1.join(path, version);
|
|
63
|
+
if (!fs.existsSync(dirToWrite)) {
|
|
64
|
+
fs.mkdirSync(dirToWrite);
|
|
71
65
|
}
|
|
72
66
|
for (const schema in schemas) {
|
|
73
|
-
const file = path_1.join(
|
|
67
|
+
const file = path_1.join(dirToWrite, schema);
|
|
74
68
|
fs.writeFile(file, JSON.stringify(schemas[schema], null, 2), function (err) {
|
|
75
69
|
if (err) {
|
|
76
70
|
return console.log(err);
|
|
@@ -79,7 +73,7 @@ function writeSchemasToFile(path, schemas, version) {
|
|
|
79
73
|
});
|
|
80
74
|
}
|
|
81
75
|
}
|
|
82
|
-
function convertPagesOfFEVersion(
|
|
76
|
+
function convertPagesOfFEVersion(paths, version, outputPath) {
|
|
83
77
|
let fileNames = [];
|
|
84
78
|
for (let index = 0; index < paths.length; index++) {
|
|
85
79
|
fs.readdir(paths[index], function (err, files) {
|
|
@@ -95,7 +89,7 @@ function convertPagesOfFEVersion(schemas, paths, version, outputPath) {
|
|
|
95
89
|
fileNames.push(fileName);
|
|
96
90
|
}
|
|
97
91
|
});
|
|
98
|
-
schemas = convertInterfaces(paths[index], fileNames, version);
|
|
92
|
+
const schemas = convertInterfaces(paths[index], fileNames, version);
|
|
99
93
|
fileNames = [];
|
|
100
94
|
writeSchemasToFile(outputPath, schemas, version);
|
|
101
95
|
});
|
|
@@ -110,11 +104,11 @@ async function toJsonSchema(outputPath) {
|
|
|
110
104
|
//Pages V2
|
|
111
105
|
let paths = [];
|
|
112
106
|
paths.push(path_1.join('src', 'specification', 'v2', 'pages'));
|
|
113
|
-
convertPagesOfFEVersion(
|
|
107
|
+
convertPagesOfFEVersion(paths, common_1.FioriElementsVersion.v2, outputPath);
|
|
114
108
|
//Pages V4
|
|
115
109
|
paths = [];
|
|
116
110
|
paths.push(path_1.join('src', 'specification', 'v4', 'pages'));
|
|
117
|
-
convertPagesOfFEVersion(
|
|
111
|
+
convertPagesOfFEVersion(paths, common_1.FioriElementsVersion.v4, outputPath);
|
|
118
112
|
//App V2
|
|
119
113
|
schemas = convertInterfaces(path_1.join('src', 'specification', 'v2'), ['ApplicationV2.ts'], common_1.FioriElementsVersion.v2);
|
|
120
114
|
writeSchemasToFile(outputPath, schemas, 'v2');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-json-schema.js","sourceRoot":"","sources":["../../scripts/to-json-schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+BAAsC;AACtC,uCAAyB;AACzB,mEAAkG;AAClG,yDAAgE;AAChE,2DAAuF;AACvF,2DAAuF;AACvF,wDAAyF;AAKzF,MAAM,eAAe,GAAG;IACpB,YAAY,EAAE,IAAI;IAClB,KAAK,EAAE,CAAC,MAAM,EAAE,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"to-json-schema.js","sourceRoot":"","sources":["../../scripts/to-json-schema.ts"],"names":[],"mappings":"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"}
|