@sap/ux-specification 1.71.43 → 1.71.47

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 (112) hide show
  1. package/CHANGELOG.md +71 -8
  2. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  3. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  4. package/dist/documentation/v2/v2-ListReport.html +1 -1
  5. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  6. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  7. package/dist/index-min.js +1 -1
  8. package/dist/schemas/v2/AnalyticalListPageConfig.json +75 -5
  9. package/dist/schemas/v2/ListReportConfig.json +75 -5
  10. package/dist/schemas/v2/ObjectPageConfig.json +229 -46
  11. package/dist/schemas/v2/OverviewPageConfig.json +0 -28
  12. package/dist/scripts/to-json-schema.js +9 -1
  13. package/dist/scripts/to-json-schema.js.map +1 -1
  14. package/dist/specification/v2/index-min.js +1 -1
  15. package/dist/src/apiTypes.d.ts +8 -0
  16. package/dist/src/specification/v2/controls/Card.d.ts +0 -8
  17. package/dist/src/specification/v2/controls/Card.js.map +1 -1
  18. package/dist/src/specification/v2/controls/{DataField.d.ts → Field.d.ts} +2 -2
  19. package/dist/src/specification/v2/controls/{DataField.js → Field.js} +1 -1
  20. package/dist/src/specification/v2/controls/Field.js.map +1 -0
  21. package/dist/src/specification/v2/controls/FormAction.d.ts +38 -0
  22. package/dist/src/specification/v2/controls/FormAction.js +15 -0
  23. package/dist/src/specification/v2/controls/FormAction.js.map +1 -0
  24. package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +11 -0
  25. package/dist/src/specification/v2/controls/ObjectPageFooter.js +3 -0
  26. package/dist/src/specification/v2/controls/ObjectPageFooter.js.map +1 -0
  27. package/dist/src/specification/v2/controls/ObjectPageForm.d.ts +4 -5
  28. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.d.ts +20 -0
  29. package/dist/src/specification/v2/controls/ObjectPageSection.d.ts +21 -11
  30. package/dist/src/specification/v2/controls/ObjectPageSection.js.map +1 -1
  31. package/dist/src/specification/v2/controls/Table.d.ts +4 -0
  32. package/dist/src/specification/v2/controls/Table.js.map +1 -1
  33. package/dist/src/specification/v2/controls/ToolBar.d.ts +2 -6
  34. package/dist/src/specification/v2/controls/index.d.ts +4 -1
  35. package/dist/src/specification/v2/controls/index.js +1 -0
  36. package/dist/src/specification/v2/controls/index.js.map +1 -1
  37. package/dist/src/specification/v2/pages/ObjectPageConfig.d.ts +2 -1
  38. package/dist/src/sync/common/decoration/control.js +34 -19
  39. package/dist/src/sync/common/decoration/control.js.map +1 -1
  40. package/dist/src/sync/common/generate/index.d.ts +1 -0
  41. package/dist/src/sync/common/generate/index.js +1 -0
  42. package/dist/src/sync/common/generate/index.js.map +1 -1
  43. package/dist/src/sync/common/generate/objectPage.d.ts +31 -2
  44. package/dist/src/sync/common/generate/objectPage.js +183 -29
  45. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  46. package/dist/src/sync/common/generate/utils.d.ts +59 -0
  47. package/dist/src/sync/common/generate/utils.js +192 -0
  48. package/dist/src/sync/common/generate/utils.js.map +1 -0
  49. package/dist/src/sync/common/import/utils.d.ts +6 -0
  50. package/dist/src/sync/common/import/utils.js +21 -0
  51. package/dist/src/sync/common/import/utils.js.map +1 -1
  52. package/dist/src/sync/common/importProject.js +45 -39
  53. package/dist/src/sync/common/importProject.js.map +1 -1
  54. package/dist/src/sync/common/types.d.ts +7 -3
  55. package/dist/src/sync/common/types.js +4 -0
  56. package/dist/src/sync/common/types.js.map +1 -1
  57. package/dist/src/sync/common/utils.d.ts +3 -23
  58. package/dist/src/sync/common/utils.js +90 -162
  59. package/dist/src/sync/common/utils.js.map +1 -1
  60. package/dist/src/sync/v2/export/controls/Card.d.ts +0 -2
  61. package/dist/src/sync/v2/export/controls/Card.js +0 -14
  62. package/dist/src/sync/v2/export/controls/Card.js.map +1 -1
  63. package/dist/src/sync/v2/export/controls/Field.d.ts +4 -0
  64. package/dist/src/sync/v2/export/controls/{DataField.js → Field.js} +6 -6
  65. package/dist/src/sync/v2/export/controls/Field.js.map +1 -0
  66. package/dist/src/sync/v2/export/controls/FormAction.d.ts +15 -0
  67. package/dist/src/sync/v2/export/controls/FormAction.js +127 -0
  68. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -0
  69. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +5 -1
  70. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +42 -3
  71. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -1
  72. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +25 -0
  73. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +113 -0
  74. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -0
  75. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +1 -2
  76. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -1
  77. package/dist/src/sync/v2/export/controls/Table.d.ts +8 -1
  78. package/dist/src/sync/v2/export/controls/Table.js +69 -13
  79. package/dist/src/sync/v2/export/controls/Table.js.map +1 -1
  80. package/dist/src/sync/v2/export/controls/index.d.ts +3 -1
  81. package/dist/src/sync/v2/export/controls/index.js +3 -1
  82. package/dist/src/sync/v2/export/controls/index.js.map +1 -1
  83. package/dist/src/sync/v2/export/export.js +126 -86
  84. package/dist/src/sync/v2/export/export.js.map +1 -1
  85. package/dist/src/sync/v2/export/exportPage.js +3 -2
  86. package/dist/src/sync/v2/export/exportPage.js.map +1 -1
  87. package/dist/src/sync/v2/generate/analyticalListReport.d.ts +3 -9
  88. package/dist/src/sync/v2/generate/analyticalListReport.js +13 -13
  89. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  90. package/dist/src/sync/v2/generate/generate.js +28 -6
  91. package/dist/src/sync/v2/generate/generate.js.map +1 -1
  92. package/dist/src/sync/v2/generate/listReport.d.ts +11 -9
  93. package/dist/src/sync/v2/generate/listReport.js +22 -12
  94. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  95. package/dist/src/sync/v2/generate/objectPage.d.ts +3 -10
  96. package/dist/src/sync/v2/generate/objectPage.js +189 -141
  97. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  98. package/dist/src/sync/v2/generate/utils.d.ts +1 -2
  99. package/dist/src/sync/v2/generate/utils.js +8 -3
  100. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  101. package/dist/src/sync/v2/import/pages/objectPage.js +172 -98
  102. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  103. package/dist/src/sync/v2/types.d.ts +12 -0
  104. package/dist/src/sync/v2/types.js +11 -0
  105. package/dist/src/sync/v2/types.js.map +1 -1
  106. package/dist/src/sync/v4/utils/StableIdHelper.d.ts +0 -3
  107. package/dist/src/sync/v4/utils/StableIdHelper.js +9 -11
  108. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -1
  109. package/package.json +5 -5
  110. package/dist/src/specification/v2/controls/DataField.js.map +0 -1
  111. package/dist/src/sync/v2/export/controls/DataField.d.ts +0 -4
  112. package/dist/src/sync/v2/export/controls/DataField.js.map +0 -1
@@ -222,6 +222,11 @@
222
222
  "QuickVariantSelectionX": {
223
223
  "type": "object",
224
224
  "properties": {
225
+ "enableAutoBinding": {
226
+ "description": "When set to true, this enables automatic binding of the table with either the tableBindingPath (if it exists) or the entitySet property.",
227
+ "type": "boolean",
228
+ "artifactType": "Manifest"
229
+ },
225
230
  "variants": {
226
231
  "description": "The variants section contains a set of entries that point to SelectionVariants or SelectionPresentationVariants defined in the annotations.",
227
232
  "type": "object",
@@ -230,11 +235,13 @@
230
235
  "^[0-9]+$": {
231
236
  "$ref": "#/definitions/QuickVariantX"
232
237
  }
233
- }
238
+ },
239
+ "artifactType": "Manifest"
234
240
  },
235
241
  "showCounts": {
236
242
  "description": "To show the number of records available, set showCounts to true.",
237
- "type": "boolean"
243
+ "type": "boolean",
244
+ "artifactType": "Manifest"
238
245
  }
239
246
  },
240
247
  "additionalProperties": false,
@@ -288,11 +295,74 @@
288
295
  "isViewNode": true,
289
296
  "type": "object",
290
297
  "additionalProperties": {
291
- "type": "object",
292
- "properties": {},
293
- "additionalProperties": true
298
+ "$ref": "#/definitions/FormAction"
294
299
  }
295
300
  },
301
+ "FormAction": {
302
+ "description": "Action",
303
+ "isViewNode": true,
304
+ "type": "object",
305
+ "properties": {
306
+ "tooltip": {
307
+ "description": "Text for tooltip of button",
308
+ "type": "string",
309
+ "artifactType": "FlexChange",
310
+ "controlType": "sap.m.Button"
311
+ },
312
+ "icon": {
313
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
314
+ "type": "string",
315
+ "artifactType": "FlexChange",
316
+ "controlType": "sap.m.Button"
317
+ },
318
+ "activeIcon": {
319
+ "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
320
+ "type": "string",
321
+ "artifactType": "FlexChange",
322
+ "controlType": "sap.m.Button"
323
+ },
324
+ "type": {
325
+ "$ref": "#/definitions/ButtonType",
326
+ "description": "Defines the Button type.",
327
+ "artifactType": "FlexChange",
328
+ "controlType": "sap.m.Button"
329
+ },
330
+ "visible": {
331
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
332
+ "anyOf": [
333
+ {
334
+ "enum": [
335
+ false,
336
+ true,
337
+ "{ui>/editable}",
338
+ "{= !${ui>/editable}}"
339
+ ]
340
+ },
341
+ {
342
+ "type": "string"
343
+ }
344
+ ],
345
+ "description": "Whether the button should be visible on the screen.",
346
+ "artifactType": "FlexChange",
347
+ "controlType": "sap.m.Button"
348
+ }
349
+ },
350
+ "additionalProperties": false
351
+ },
352
+ "ButtonType": {
353
+ "enum": [
354
+ "Accept",
355
+ "Back",
356
+ "Default",
357
+ "Emphasized",
358
+ "Ghost",
359
+ "Reject",
360
+ "Transparent",
361
+ "Unstyled",
362
+ "Up"
363
+ ],
364
+ "type": "string"
365
+ },
296
366
  "GenericColumns": {
297
367
  "type": "object",
298
368
  "additionalProperties": {
@@ -221,6 +221,11 @@
221
221
  "QuickVariantSelectionX": {
222
222
  "type": "object",
223
223
  "properties": {
224
+ "enableAutoBinding": {
225
+ "description": "When set to true, this enables automatic binding of the table with either the tableBindingPath (if it exists) or the entitySet property.",
226
+ "type": "boolean",
227
+ "artifactType": "Manifest"
228
+ },
224
229
  "variants": {
225
230
  "description": "The variants section contains a set of entries that point to SelectionVariants or SelectionPresentationVariants defined in the annotations.",
226
231
  "type": "object",
@@ -229,11 +234,13 @@
229
234
  "^[0-9]+$": {
230
235
  "$ref": "#/definitions/QuickVariantX"
231
236
  }
232
- }
237
+ },
238
+ "artifactType": "Manifest"
233
239
  },
234
240
  "showCounts": {
235
241
  "description": "To show the number of records available, set showCounts to true.",
236
- "type": "boolean"
242
+ "type": "boolean",
243
+ "artifactType": "Manifest"
237
244
  }
238
245
  },
239
246
  "additionalProperties": false,
@@ -287,11 +294,74 @@
287
294
  "isViewNode": true,
288
295
  "type": "object",
289
296
  "additionalProperties": {
290
- "type": "object",
291
- "properties": {},
292
- "additionalProperties": true
297
+ "$ref": "#/definitions/FormAction"
293
298
  }
294
299
  },
300
+ "FormAction": {
301
+ "description": "Action",
302
+ "isViewNode": true,
303
+ "type": "object",
304
+ "properties": {
305
+ "tooltip": {
306
+ "description": "Text for tooltip of button",
307
+ "type": "string",
308
+ "artifactType": "FlexChange",
309
+ "controlType": "sap.m.Button"
310
+ },
311
+ "icon": {
312
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
313
+ "type": "string",
314
+ "artifactType": "FlexChange",
315
+ "controlType": "sap.m.Button"
316
+ },
317
+ "activeIcon": {
318
+ "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
319
+ "type": "string",
320
+ "artifactType": "FlexChange",
321
+ "controlType": "sap.m.Button"
322
+ },
323
+ "type": {
324
+ "$ref": "#/definitions/ButtonType",
325
+ "description": "Defines the Button type.",
326
+ "artifactType": "FlexChange",
327
+ "controlType": "sap.m.Button"
328
+ },
329
+ "visible": {
330
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
331
+ "anyOf": [
332
+ {
333
+ "enum": [
334
+ false,
335
+ true,
336
+ "{ui>/editable}",
337
+ "{= !${ui>/editable}}"
338
+ ]
339
+ },
340
+ {
341
+ "type": "string"
342
+ }
343
+ ],
344
+ "description": "Whether the button should be visible on the screen.",
345
+ "artifactType": "FlexChange",
346
+ "controlType": "sap.m.Button"
347
+ }
348
+ },
349
+ "additionalProperties": false
350
+ },
351
+ "ButtonType": {
352
+ "enum": [
353
+ "Accept",
354
+ "Back",
355
+ "Default",
356
+ "Emphasized",
357
+ "Ghost",
358
+ "Reject",
359
+ "Transparent",
360
+ "Unstyled",
361
+ "Up"
362
+ ],
363
+ "type": "string"
364
+ },
295
365
  "GenericColumns": {
296
366
  "type": "object",
297
367
  "additionalProperties": {
@@ -37,6 +37,9 @@
37
37
  }
38
38
  ]
39
39
  },
40
+ "footer": {
41
+ "$ref": "#/definitions/ObjectPageFooter<GenericFooterActions>"
42
+ },
40
43
  "$schema": {
41
44
  "type": "string"
42
45
  }
@@ -102,6 +105,30 @@
102
105
  "isViewNode": true,
103
106
  "type": "object",
104
107
  "properties": {
108
+ "tooltip": {
109
+ "description": "Text for tooltip of button",
110
+ "type": "string",
111
+ "artifactType": "FlexChange",
112
+ "controlType": "sap.uxap.ObjectPageHeaderActionButton"
113
+ },
114
+ "icon": {
115
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
116
+ "type": "string",
117
+ "artifactType": "FlexChange",
118
+ "controlType": "sap.uxap.ObjectPageHeaderActionButton"
119
+ },
120
+ "activeIcon": {
121
+ "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
122
+ "type": "string",
123
+ "artifactType": "FlexChange",
124
+ "controlType": "sap.uxap.ObjectPageHeaderActionButton"
125
+ },
126
+ "type": {
127
+ "$ref": "#/definitions/ButtonType",
128
+ "description": "Defines the Button type.",
129
+ "artifactType": "FlexChange",
130
+ "controlType": "sap.uxap.ObjectPageHeaderActionButton"
131
+ },
105
132
  "visible": {
106
133
  "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
107
134
  "anyOf": [
@@ -117,12 +144,27 @@
117
144
  "type": "string"
118
145
  }
119
146
  ],
147
+ "description": "Whether the button should be visible on the screen.",
120
148
  "artifactType": "FlexChange",
121
- "controlType": "sap.m.Button"
149
+ "controlType": "sap.uxap.ObjectPageHeaderActionButton"
122
150
  }
123
151
  },
124
152
  "additionalProperties": false
125
153
  },
154
+ "ButtonType": {
155
+ "enum": [
156
+ "Accept",
157
+ "Back",
158
+ "Default",
159
+ "Emphasized",
160
+ "Ghost",
161
+ "Reject",
162
+ "Transparent",
163
+ "Unstyled",
164
+ "Up"
165
+ ],
166
+ "type": "string"
167
+ },
126
168
  "ObjectPageLayout": {
127
169
  "description": "Page Layout",
128
170
  "isViewNode": true,
@@ -159,15 +201,152 @@
159
201
  "type": "object",
160
202
  "additionalProperties": {
161
203
  "anyOf": [
204
+ {
205
+ "$ref": "#/definitions/ObjectPageSectionFormV2"
206
+ },
162
207
  {
163
208
  "$ref": "#/definitions/ObjectPageSectionTableV2"
164
209
  },
165
210
  {
166
- "$ref": "#/definitions/ObjectPageSectionFormV2"
211
+ "$ref": "#/definitions/ObjectPageSubSectionV2"
167
212
  }
168
213
  ]
169
214
  }
170
215
  },
216
+ "ObjectPageSectionFormV2": {
217
+ "description": "Form",
218
+ "isViewNode": true,
219
+ "type": "object",
220
+ "properties": {
221
+ "form": {
222
+ "$ref": "#/definitions/ObjectPageForm"
223
+ },
224
+ "visible": {
225
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
226
+ "anyOf": [
227
+ {
228
+ "enum": [
229
+ false,
230
+ true,
231
+ "{ui>/editable}",
232
+ "{= !${ui>/editable}}"
233
+ ]
234
+ },
235
+ {
236
+ "type": "string"
237
+ }
238
+ ],
239
+ "description": "Whether the section should be visible on the screen.",
240
+ "artifactType": "FlexChange",
241
+ "controlType": "sap.uxap.ObjectPageSection"
242
+ }
243
+ },
244
+ "additionalProperties": false
245
+ },
246
+ "ObjectPageForm": {
247
+ "description": "Object Page Form",
248
+ "isViewNode": true,
249
+ "type": "object",
250
+ "properties": {
251
+ "fields": {
252
+ "$ref": "#/definitions/ObjectPageFormFields"
253
+ },
254
+ "actions": {
255
+ "$ref": "#/definitions/ObjectPageFormActions"
256
+ }
257
+ },
258
+ "additionalProperties": false
259
+ },
260
+ "ObjectPageFormFields": {
261
+ "type": "object",
262
+ "additionalProperties": {
263
+ "$ref": "#/definitions/Field"
264
+ }
265
+ },
266
+ "Field": {
267
+ "description": "Field",
268
+ "isViewNode": true,
269
+ "type": "object",
270
+ "properties": {
271
+ "visible": {
272
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
273
+ "anyOf": [
274
+ {
275
+ "enum": [
276
+ false,
277
+ true,
278
+ "{ui>/editable}",
279
+ "{= !${ui>/editable}}"
280
+ ]
281
+ },
282
+ {
283
+ "type": "string"
284
+ }
285
+ ],
286
+ "description": "Whether the field should be visible on the screen.",
287
+ "artifactType": "FlexChange",
288
+ "controlType": "sap.ui.comp.smartform.SmartGroup"
289
+ }
290
+ },
291
+ "additionalProperties": false
292
+ },
293
+ "ObjectPageFormActions": {
294
+ "type": "object",
295
+ "additionalProperties": {
296
+ "$ref": "#/definitions/FormAction"
297
+ }
298
+ },
299
+ "FormAction": {
300
+ "description": "Action",
301
+ "isViewNode": true,
302
+ "type": "object",
303
+ "properties": {
304
+ "tooltip": {
305
+ "description": "Text for tooltip of button",
306
+ "type": "string",
307
+ "artifactType": "FlexChange",
308
+ "controlType": "sap.m.Button"
309
+ },
310
+ "icon": {
311
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
312
+ "type": "string",
313
+ "artifactType": "FlexChange",
314
+ "controlType": "sap.m.Button"
315
+ },
316
+ "activeIcon": {
317
+ "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
318
+ "type": "string",
319
+ "artifactType": "FlexChange",
320
+ "controlType": "sap.m.Button"
321
+ },
322
+ "type": {
323
+ "$ref": "#/definitions/ButtonType",
324
+ "description": "Defines the Button type.",
325
+ "artifactType": "FlexChange",
326
+ "controlType": "sap.m.Button"
327
+ },
328
+ "visible": {
329
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
330
+ "anyOf": [
331
+ {
332
+ "enum": [
333
+ false,
334
+ true,
335
+ "{ui>/editable}",
336
+ "{= !${ui>/editable}}"
337
+ ]
338
+ },
339
+ {
340
+ "type": "string"
341
+ }
342
+ ],
343
+ "description": "Whether the button should be visible on the screen.",
344
+ "artifactType": "FlexChange",
345
+ "controlType": "sap.m.Button"
346
+ }
347
+ },
348
+ "additionalProperties": false
349
+ },
171
350
  "ObjectPageSectionTableV2": {
172
351
  "description": "Table",
173
352
  "isViewNode": true,
@@ -188,6 +367,25 @@
188
367
  "$ref": "#/definitions/ObjectPageTreeTable"
189
368
  }
190
369
  ]
370
+ },
371
+ "visible": {
372
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
373
+ "anyOf": [
374
+ {
375
+ "enum": [
376
+ false,
377
+ true,
378
+ "{ui>/editable}",
379
+ "{= !${ui>/editable}}"
380
+ ]
381
+ },
382
+ {
383
+ "type": "string"
384
+ }
385
+ ],
386
+ "description": "Whether the section should be visible on the screen.",
387
+ "artifactType": "FlexChange",
388
+ "controlType": "sap.uxap.ObjectPageSection"
191
389
  }
192
390
  },
193
391
  "additionalProperties": false
@@ -710,42 +908,16 @@
710
908
  },
711
909
  "additionalProperties": false
712
910
  },
713
- "ObjectPageSectionFormV2": {
714
- "description": "Form",
911
+ "ObjectPageSubSectionV2": {
912
+ "description": "Subsection",
715
913
  "isViewNode": true,
716
914
  "type": "object",
717
915
  "properties": {
718
- "form": {
719
- "$ref": "#/definitions/ObjectPageForm"
720
- }
721
- },
722
- "additionalProperties": false
723
- },
724
- "ObjectPageForm": {
725
- "description": "Object Page Form",
726
- "isViewNode": true,
727
- "type": "object",
728
- "properties": {
729
- "fields": {
730
- "$ref": "#/definitions/ObjectPageFormFields"
916
+ "subsections": {
917
+ "type": "object",
918
+ "properties": {},
919
+ "additionalProperties": true
731
920
  },
732
- "actions": {
733
- "$ref": "#/definitions/ObjectPageFormActions"
734
- }
735
- },
736
- "additionalProperties": false
737
- },
738
- "ObjectPageFormFields": {
739
- "type": "object",
740
- "additionalProperties": {
741
- "$ref": "#/definitions/DataField"
742
- }
743
- },
744
- "DataField": {
745
- "description": "DataField",
746
- "isViewNode": true,
747
- "type": "object",
748
- "properties": {
749
921
  "visible": {
750
922
  "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
751
923
  "anyOf": [
@@ -761,21 +933,13 @@
761
933
  "type": "string"
762
934
  }
763
935
  ],
764
- "description": "Whether the field should be visible on the screen.",
936
+ "description": "Whether the section should be visible on the screen.",
765
937
  "artifactType": "FlexChange",
766
- "controlType": "sap.ui.comp.smartform.SmartGroup"
938
+ "controlType": "sap.uxap.ObjectPageSubSection"
767
939
  }
768
940
  },
769
941
  "additionalProperties": false
770
942
  },
771
- "ObjectPageFormActions": {
772
- "type": "object",
773
- "additionalProperties": {
774
- "type": "object",
775
- "properties": {},
776
- "additionalProperties": true
777
- }
778
- },
779
943
  "CustomSections": {
780
944
  "description": "Custom Sections",
781
945
  "isViewNode": true,
@@ -821,7 +985,7 @@
821
985
  "$ref": "#/definitions/SectionPosition"
822
986
  },
823
987
  "title": {
824
- "description": "The label of the custom section, preferrable as an i18n key",
988
+ "description": "The label of the custom section, preferably as an i18n key",
825
989
  "i18nClassification": "TIT: Custom section title",
826
990
  "type": "string"
827
991
  }
@@ -880,7 +1044,7 @@
880
1044
  "$ref": "#/definitions/SectionPosition"
881
1045
  },
882
1046
  "title": {
883
- "description": "The label of the custom section, preferrable as an i18n key",
1047
+ "description": "The label of the custom section, preferably as an i18n key",
884
1048
  "i18nClassification": "TIT: Custom section title",
885
1049
  "type": "string"
886
1050
  }
@@ -894,6 +1058,25 @@
894
1058
  "title",
895
1059
  "type"
896
1060
  ]
1061
+ },
1062
+ "ObjectPageFooter<GenericFooterActions>": {
1063
+ "description": "Footer",
1064
+ "isViewNode": true,
1065
+ "type": "object",
1066
+ "properties": {
1067
+ "actions": {
1068
+ "$ref": "#/definitions/GenericFooterActions"
1069
+ }
1070
+ },
1071
+ "additionalProperties": false
1072
+ },
1073
+ "GenericFooterActions": {
1074
+ "type": "object",
1075
+ "additionalProperties": {
1076
+ "type": "object",
1077
+ "properties": {},
1078
+ "additionalProperties": true
1079
+ }
897
1080
  }
898
1081
  },
899
1082
  "$schema": "http://json-schema.org/draft-07/schema#"
@@ -694,20 +694,6 @@
694
694
  "$ref": "#/definitions/StackCardSettings",
695
695
  "description": "Represents the properties that are passed to the stack card.",
696
696
  "artifactType": "Manifest"
697
- },
698
- "tabs": {
699
- "description": "Represents the Stack Card with view switch control.",
700
- "type": "array",
701
- "items": [
702
- {
703
- "$ref": "#/definitions/TabSetting"
704
- }
705
- ],
706
- "minItems": 1,
707
- "additionalItems": {
708
- "$ref": "#/definitions/TabSetting"
709
- },
710
- "artifactType": "Manifest"
711
697
  }
712
698
  },
713
699
  "additionalProperties": false,
@@ -849,20 +835,6 @@
849
835
  "$ref": "#/definitions/LinkListCardSettings",
850
836
  "description": "Represents the properties that are passed to the link list card.",
851
837
  "artifactType": "Manifest"
852
- },
853
- "tabs": {
854
- "description": "Represents the card with view switch control.",
855
- "type": "array",
856
- "items": [
857
- {
858
- "$ref": "#/definitions/TabSetting"
859
- }
860
- ],
861
- "minItems": 1,
862
- "additionalItems": {
863
- "$ref": "#/definitions/TabSetting"
864
- },
865
- "artifactType": "Manifest"
866
838
  }
867
839
  },
868
840
  "additionalProperties": false,
@@ -31,7 +31,15 @@ function convertInterfaces(path, files, version) {
31
31
  const generator = typescript_json_schema_1.buildGenerator(typescript_json_schema_1.getProgramFromFiles([path_1.join(path, file)], compilerOptions), {
32
32
  noExtraProps: true,
33
33
  required: true,
34
- validationKeywords: ['i18nClassification', 'isViewNode', 'displayName', 'dataType', 'controlProperty']
34
+ validationKeywords: [
35
+ 'i18nClassification',
36
+ 'isViewNode',
37
+ 'displayName',
38
+ 'dataType',
39
+ 'controlProperty',
40
+ 'annotationType',
41
+ 'annotationPath'
42
+ ]
35
43
  });
36
44
  const filename = file.replace('ts', 'json');
37
45
  schemas[filename] = generator.getSchemaForSymbol(file.replace('.ts', ''));
@@ -1 +1 @@
1
- {"version":3,"file":"to-json-schema.js","sourceRoot":"","sources":["../../scripts/to-json-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"to-json-schema.js","sourceRoot":"","sources":["../../scripts/to-json-schema.ts"],"names":[],"mappings":"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"}