@sap/ux-specification 1.90.15 → 1.96.2

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 (166) hide show
  1. package/CHANGELOG.md +25 -309
  2. package/README.md +1 -0
  3. package/dist/documentation/runDocu-min.js +1 -1
  4. package/dist/documentation/styleDocu.css +4 -5
  5. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  6. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  7. package/dist/documentation/v2/v2-ListReport.html +1 -1
  8. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  9. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  10. package/dist/documentation/v4/v4-AnalyticalListPage.html +1 -1
  11. package/dist/documentation/v4/v4-ApplicationV4.html +1 -1
  12. package/dist/documentation/v4/v4-ListReport.html +1 -1
  13. package/dist/documentation/v4/v4-ObjectPage.html +1 -1
  14. package/dist/index-min.js +1 -1
  15. package/dist/index-min.js.LICENSE.txt +71 -0
  16. package/dist/schemas/v2/AnalyticalListPageConfig.json +10 -38
  17. package/dist/schemas/v2/ListReportConfig.json +12 -30
  18. package/dist/schemas/v2/ObjectPageConfig.json +150 -48
  19. package/dist/schemas/v2/OverviewPageConfig.json +258 -196
  20. package/dist/schemas/v4/AnalyticalListPageConfig.json +21 -2
  21. package/dist/schemas/v4/ListReportConfig.json +21 -2
  22. package/dist/schemas/v4/ObjectPageConfig.json +0 -20
  23. package/dist/scripts/extractDocu.js +18 -8
  24. package/dist/scripts/extractDocu.js.map +1 -1
  25. package/dist/scripts/runDocu.js +105 -89
  26. package/dist/scripts/runDocu.js.map +1 -1
  27. package/dist/specification/v2/index-min.js +1 -1
  28. package/dist/specification/v4/index-min.js +1 -1
  29. package/dist/src/api.d.ts +9 -1
  30. package/dist/src/api.js +18 -1
  31. package/dist/src/api.js.map +1 -1
  32. package/dist/src/apiTypes.d.ts +16 -0
  33. package/dist/src/apiTypes.js +12 -0
  34. package/dist/src/apiTypes.js.map +1 -1
  35. package/dist/src/index.js +1 -0
  36. package/dist/src/index.js.map +1 -1
  37. package/dist/src/specification/v2/controls/{ObjectPageHeaderAction.d.ts → Action.d.ts} +30 -3
  38. package/dist/src/specification/v2/controls/{FormAction.js → Action.js} +1 -1
  39. package/dist/src/specification/v2/controls/Action.js.map +1 -0
  40. package/dist/src/specification/v2/controls/Card.d.ts +20 -72
  41. package/dist/src/specification/v2/controls/Card.js.map +1 -1
  42. package/dist/src/specification/v2/controls/FilterBar.d.ts +16 -6
  43. package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +2 -2
  44. package/dist/src/specification/v2/controls/{FormAction.d.ts → ObjectPageFooterAction.d.ts} +4 -3
  45. package/dist/src/specification/v2/controls/{ObjectPageHeaderAction.js → ObjectPageFooterAction.js} +1 -1
  46. package/dist/src/specification/v2/controls/ObjectPageFooterAction.js.map +1 -0
  47. package/dist/src/specification/v2/controls/ObjectPageForm.d.ts +1 -2
  48. package/dist/src/specification/v2/controls/ObjectPageHeader.d.ts +1 -1
  49. package/dist/src/specification/v2/controls/ObjectPageToolBar.d.ts +1 -5
  50. package/dist/src/specification/v2/controls/Table.d.ts +1 -9
  51. package/dist/src/specification/v2/controls/ToolBar.d.ts +2 -2
  52. package/dist/src/specification/v2/controls/index.d.ts +8 -9
  53. package/dist/src/specification/v2/controls/index.js +2 -2
  54. package/dist/src/specification/v2/controls/index.js.map +1 -1
  55. package/dist/src/specification/v2/pages/ListReportConfig.d.ts +2 -2
  56. package/dist/src/specification/v4/controls/ObjectPageTable.d.ts +2 -2
  57. package/dist/src/specification/v4/controls/Table.d.ts +3 -2
  58. package/dist/src/specification/v4/webapp/manifest/ManifestSettings.d.ts +8 -19
  59. package/dist/src/specification/v4/webapp/manifest/sapUiPageV4.d.ts +2 -1
  60. package/dist/src/specification/v4/webapp/manifest/sapUiPageV4.js.map +1 -1
  61. package/dist/src/sync/common/generate/index.d.ts +1 -0
  62. package/dist/src/sync/common/generate/index.js +1 -0
  63. package/dist/src/sync/common/generate/index.js.map +1 -1
  64. package/dist/src/sync/common/generate/objectPage.js +12 -8
  65. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  66. package/dist/src/sync/common/generate/utils.d.ts +66 -0
  67. package/dist/src/sync/common/generate/utils.js +205 -0
  68. package/dist/src/sync/common/generate/utils.js.map +1 -0
  69. package/dist/src/sync/common/importProject.js +8 -8
  70. package/dist/src/sync/common/importProject.js.map +1 -1
  71. package/dist/src/sync/common/utils.d.ts +2 -30
  72. package/dist/src/sync/common/utils.js +12 -115
  73. package/dist/src/sync/common/utils.js.map +1 -1
  74. package/dist/src/sync/v2/export/controls/Action.d.ts +14 -0
  75. package/dist/src/sync/v2/export/controls/Action.js +74 -0
  76. package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
  77. package/dist/src/sync/v2/export/controls/Card.d.ts +3 -7
  78. package/dist/src/sync/v2/export/controls/Card.js +15 -43
  79. package/dist/src/sync/v2/export/controls/Card.js.map +1 -1
  80. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +7 -3
  81. package/dist/src/sync/v2/export/controls/FilterBar.js +34 -11
  82. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -1
  83. package/dist/src/sync/v2/export/controls/Fragment.js +5 -4
  84. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  85. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +9 -0
  86. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +62 -0
  87. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
  88. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +11 -29
  89. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -1
  90. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +2 -1
  91. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +3 -0
  92. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -1
  93. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +9 -0
  94. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +59 -0
  95. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
  96. package/dist/src/sync/v2/export/controls/Table.d.ts +3 -4
  97. package/dist/src/sync/v2/export/controls/Table.js +4 -21
  98. package/dist/src/sync/v2/export/controls/Table.js.map +1 -1
  99. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +4 -0
  100. package/dist/src/sync/v2/export/controls/ToolBar.js +6 -0
  101. package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
  102. package/dist/src/sync/v2/export/controls/index.d.ts +12 -8
  103. package/dist/src/sync/v2/export/controls/index.js +12 -8
  104. package/dist/src/sync/v2/export/controls/index.js.map +1 -1
  105. package/dist/src/sync/v2/export/export.js +1 -1
  106. package/dist/src/sync/v2/export/export.js.map +1 -1
  107. package/dist/src/sync/v2/export/exportPage.js +3 -2
  108. package/dist/src/sync/v2/export/exportPage.js.map +1 -1
  109. package/dist/src/sync/v2/export/pages/ListReport.d.ts +2 -2
  110. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -1
  111. package/dist/src/sync/v2/generate/analyticalListReport.js +6 -3
  112. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  113. package/dist/src/sync/v2/generate/listReport.d.ts +8 -0
  114. package/dist/src/sync/v2/generate/listReport.js +18 -3
  115. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  116. package/dist/src/sync/v2/generate/objectPage.d.ts +0 -1
  117. package/dist/src/sync/v2/generate/objectPage.js +202 -120
  118. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  119. package/dist/src/sync/v2/generate/utils.d.ts +3 -3
  120. package/dist/src/sync/v2/generate/utils.js +22 -14
  121. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  122. package/dist/src/sync/v2/import/common/index.d.ts +8 -1
  123. package/dist/src/sync/v2/import/common/index.js +107 -43
  124. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  125. package/dist/src/sync/v2/import/pages/listReport.js +33 -2
  126. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  127. package/dist/src/sync/v2/import/pages/objectPage.d.ts +1 -1
  128. package/dist/src/sync/v2/import/pages/objectPage.js +303 -238
  129. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  130. package/dist/src/sync/v2/import/utils.d.ts +1 -1
  131. package/dist/src/sync/v2/import/utils.js +2 -2
  132. package/dist/src/sync/v2/import/utils.js.map +1 -1
  133. package/dist/src/sync/v2/types.d.ts +21 -2
  134. package/dist/src/sync/v2/types.js +7 -0
  135. package/dist/src/sync/v2/types.js.map +1 -1
  136. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +5 -1
  137. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -1
  138. package/dist/src/sync/v4/export/controls/ObjectPageTable.js +2 -2
  139. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +3 -2
  140. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +3 -10
  141. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -1
  142. package/dist/src/sync/v4/export/controls/Table.js +1 -1
  143. package/dist/src/sync/v4/export/controls/TableColumn.d.ts +3 -1
  144. package/dist/src/sync/v4/export/controls/TableColumn.js +5 -2
  145. package/dist/src/sync/v4/export/controls/TableColumn.js.map +1 -1
  146. package/dist/src/sync/v4/export/export.js +21 -14
  147. package/dist/src/sync/v4/export/export.js.map +1 -1
  148. package/dist/src/sync/v4/export/types.d.ts +1 -0
  149. package/dist/src/sync/v4/generate/listReport.d.ts +2 -1
  150. package/dist/src/sync/v4/generate/listReport.js +47 -1
  151. package/dist/src/sync/v4/generate/listReport.js.map +1 -1
  152. package/dist/src/sync/v4/generate/objectPage.js +96 -47
  153. package/dist/src/sync/v4/generate/objectPage.js.map +1 -1
  154. package/dist/src/sync/v4/import/app/appProvider.js +2 -2
  155. package/dist/src/sync/v4/import/app/appProvider.js.map +1 -1
  156. package/dist/src/sync/v4/import/pages/listReport.d.ts +1 -3
  157. package/dist/src/sync/v4/import/pages/listReport.js +27 -17
  158. package/dist/src/sync/v4/import/pages/listReport.js.map +1 -1
  159. package/dist/src/sync/v4/import/pages/objectPage.js +10 -12
  160. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -1
  161. package/dist/src/sync/v4/utils/utils.d.ts +1 -8
  162. package/dist/src/sync/v4/utils/utils.js +6 -43
  163. package/dist/src/sync/v4/utils/utils.js.map +1 -1
  164. package/package.json +9 -5
  165. package/dist/src/specification/v2/controls/FormAction.js.map +0 -1
  166. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.js.map +0 -1
@@ -1,3 +1,72 @@
1
+ /*!
2
+ * @description Recursive object extending
3
+ * @author Viacheslav Lotsmanov <lotsmanov89@gmail.com>
4
+ * @license MIT
5
+ *
6
+ * The MIT License (MIT)
7
+ *
8
+ * Copyright (c) 2013-2018 Viacheslav Lotsmanov
9
+ *
10
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of
11
+ * this software and associated documentation files (the "Software"), to deal in
12
+ * the Software without restriction, including without limitation the rights to
13
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
14
+ * the Software, and to permit persons to whom the Software is furnished to do so,
15
+ * subject to the following conditions:
16
+ *
17
+ * The above copyright notice and this permission notice shall be included in all
18
+ * copies or substantial portions of the Software.
19
+ *
20
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
22
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
23
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
24
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
25
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26
+ */
27
+
28
+ /*!
29
+ * fill-range <https://github.com/jonschlinkert/fill-range>
30
+ *
31
+ * Copyright (c) 2014-present, Jon Schlinkert.
32
+ * Licensed under the MIT License.
33
+ */
34
+
35
+ /*!
36
+ * is-extglob <https://github.com/jonschlinkert/is-extglob>
37
+ *
38
+ * Copyright (c) 2014-2016, Jon Schlinkert.
39
+ * Licensed under the MIT License.
40
+ */
41
+
42
+ /*!
43
+ * is-glob <https://github.com/jonschlinkert/is-glob>
44
+ *
45
+ * Copyright (c) 2014-2017, Jon Schlinkert.
46
+ * Released under the MIT License.
47
+ */
48
+
49
+ /*!
50
+ * is-number <https://github.com/jonschlinkert/is-number>
51
+ *
52
+ * Copyright (c) 2014-present, Jon Schlinkert.
53
+ * Released under the MIT License.
54
+ */
55
+
56
+ /*!
57
+ * normalize-path <https://github.com/jonschlinkert/normalize-path>
58
+ *
59
+ * Copyright (c) 2014-2018, Jon Schlinkert.
60
+ * Released under the MIT License.
61
+ */
62
+
63
+ /*!
64
+ * to-regex-range <https://github.com/micromatch/to-regex-range>
65
+ *
66
+ * Copyright (c) 2015-present, Jon Schlinkert.
67
+ * Released under the MIT License.
68
+ */
69
+
1
70
  /*! *****************************************************************************
2
71
  Copyright (C) Microsoft. All rights reserved.
3
72
  Licensed under the Apache License, Version 2.0 (the "License"); you may not use
@@ -15,6 +84,8 @@ and limitations under the License.
15
84
 
16
85
  /*! http://mths.be/fromcodepoint v0.1.0 by @mathias */
17
86
 
87
+ /*! run-parallel. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
88
+
18
89
  /**
19
90
  * @file Embedded JavaScript templating engine. {@link http://ejs.co}
20
91
  * @author Matthew Eernisse <mde@fleegix.org>
@@ -86,11 +86,6 @@
86
86
  "type": "boolean",
87
87
  "artifactType": "Manifest"
88
88
  },
89
- "filterDefaultsFromSelectionVariant": {
90
- "description": "Lets you to add default values for FilterBar using SelectionVariant annotation",
91
- "type": "boolean",
92
- "artifactType": "Manifest"
93
- },
94
89
  "allFiltersAsInParameters": {
95
90
  "description": "All filter fields will be set as in parameter",
96
91
  "type": "boolean",
@@ -384,16 +379,17 @@
384
379
  "isViewNode": true,
385
380
  "type": "object",
386
381
  "additionalProperties": {
387
- "$ref": "#/definitions/FormAction"
382
+ "$ref": "#/definitions/Action"
388
383
  }
389
384
  },
390
- "FormAction": {
385
+ "Action": {
391
386
  "description": "Action",
392
387
  "isViewNode": true,
393
388
  "type": "object",
394
389
  "properties": {
395
390
  "tooltip": {
396
- "description": "Text for tooltip of button",
391
+ "description": "The text of the button tooltip, preferably as an i18n key.",
392
+ "i18nClassification": "ACT: Text for tooltip of button.",
397
393
  "type": "string",
398
394
  "artifactType": "FlexChange",
399
395
  "controlType": "sap.m.Button"
@@ -415,25 +411,6 @@
415
411
  "description": "Defines the Button type.",
416
412
  "artifactType": "FlexChange",
417
413
  "controlType": "sap.m.Button"
418
- },
419
- "visible": {
420
- "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
421
- "anyOf": [
422
- {
423
- "enum": [
424
- false,
425
- true,
426
- "{ui>/editable}",
427
- "{= !${ui>/editable}}"
428
- ]
429
- },
430
- {
431
- "type": "string"
432
- }
433
- ],
434
- "description": "Whether the button should be visible on the screen.",
435
- "artifactType": "FlexChange",
436
- "controlType": "sap.m.Button"
437
414
  }
438
415
  },
439
416
  "additionalProperties": false
@@ -526,7 +503,7 @@
526
503
  "type": "string"
527
504
  },
528
505
  "text": {
529
- "description": "The label of the custom column, preferrable as an i18n key.",
506
+ "description": "The label of the custom column, preferably as an i18n key.",
530
507
  "i18nClassification": "COL: Custom column header text",
531
508
  "type": "string"
532
509
  },
@@ -623,11 +600,6 @@
623
600
  "type": "boolean",
624
601
  "artifactType": "Manifest"
625
602
  },
626
- "filterDefaultsFromSelectionVariant": {
627
- "description": "Lets you to add default values for FilterBar using SelectionVariant annotation",
628
- "type": "boolean",
629
- "artifactType": "Manifest"
630
- },
631
603
  "allFiltersAsInParameters": {
632
604
  "description": "All filter fields will be set as in parameter",
633
605
  "type": "boolean",
@@ -747,11 +719,6 @@
747
719
  "type": "boolean",
748
720
  "artifactType": "Manifest"
749
721
  },
750
- "filterDefaultsFromSelectionVariant": {
751
- "description": "Lets you to add default values for FilterBar using SelectionVariant annotation",
752
- "type": "boolean",
753
- "artifactType": "Manifest"
754
- },
755
722
  "allFiltersAsInParameters": {
756
723
  "description": "All filter fields will be set as in parameter",
757
724
  "type": "boolean",
@@ -841,6 +808,11 @@
841
808
  "type": "boolean",
842
809
  "artifactType": "Manifest"
843
810
  },
811
+ "filterDefaultsFromSelectionVariant": {
812
+ "description": "Lets you to add default values for FilterBar using SelectionVariant annotation",
813
+ "type": "boolean",
814
+ "artifactType": "Manifest"
815
+ },
844
816
  "smartVariantManagement": {
845
817
  "description": "Controls whether smart variant management is active. Default is true.",
846
818
  "type": "boolean",
@@ -27,7 +27,7 @@
27
27
  ]
28
28
  },
29
29
  "filterBar": {
30
- "$ref": "#/definitions/FilterBar"
30
+ "$ref": "#/definitions/ListReportFilterBar"
31
31
  },
32
32
  "$schema": {
33
33
  "type": "string"
@@ -383,16 +383,17 @@
383
383
  "isViewNode": true,
384
384
  "type": "object",
385
385
  "additionalProperties": {
386
- "$ref": "#/definitions/FormAction"
386
+ "$ref": "#/definitions/Action"
387
387
  }
388
388
  },
389
- "FormAction": {
389
+ "Action": {
390
390
  "description": "Action",
391
391
  "isViewNode": true,
392
392
  "type": "object",
393
393
  "properties": {
394
394
  "tooltip": {
395
- "description": "Text for tooltip of button",
395
+ "description": "The text of the button tooltip, preferably as an i18n key.",
396
+ "i18nClassification": "ACT: Text for tooltip of button.",
396
397
  "type": "string",
397
398
  "artifactType": "FlexChange",
398
399
  "controlType": "sap.m.Button"
@@ -414,25 +415,6 @@
414
415
  "description": "Defines the Button type.",
415
416
  "artifactType": "FlexChange",
416
417
  "controlType": "sap.m.Button"
417
- },
418
- "visible": {
419
- "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
420
- "anyOf": [
421
- {
422
- "enum": [
423
- false,
424
- true,
425
- "{ui>/editable}",
426
- "{= !${ui>/editable}}"
427
- ]
428
- },
429
- {
430
- "type": "string"
431
- }
432
- ],
433
- "description": "Whether the button should be visible on the screen.",
434
- "artifactType": "FlexChange",
435
- "controlType": "sap.m.Button"
436
418
  }
437
419
  },
438
420
  "additionalProperties": false
@@ -525,7 +507,7 @@
525
507
  "type": "string"
526
508
  },
527
509
  "text": {
528
- "description": "The label of the custom column, preferrable as an i18n key.",
510
+ "description": "The label of the custom column, preferably as an i18n key.",
529
511
  "i18nClassification": "COL: Custom column header text",
530
512
  "type": "string"
531
513
  },
@@ -834,11 +816,6 @@
834
816
  "type": "string",
835
817
  "artifactType": "Manifest"
836
818
  },
837
- "filterDefaultsFromSelectionVariant": {
838
- "description": "Lets you to add default values for FilterBar using SelectionVariant annotation",
839
- "type": "boolean",
840
- "artifactType": "Manifest"
841
- },
842
819
  "allFiltersAsInParameters": {
843
820
  "description": "All filter fields will be set as in parameter",
844
821
  "type": "boolean",
@@ -1041,11 +1018,16 @@
1041
1018
  },
1042
1019
  "additionalProperties": false
1043
1020
  },
1044
- "FilterBar": {
1021
+ "ListReportFilterBar": {
1045
1022
  "description": "Filter Bar",
1046
1023
  "isViewNode": true,
1047
1024
  "type": "object",
1048
1025
  "properties": {
1026
+ "annotationPath": {
1027
+ "description": "Lets you to add default values for FilterBar using SelectionVariant annotation",
1028
+ "type": "string",
1029
+ "artifactType": "Manifest"
1030
+ },
1049
1031
  "smartVariantManagement": {
1050
1032
  "description": "Controls whether smart variant management is active. Default is true.",
1051
1033
  "type": "boolean",
@@ -129,8 +129,28 @@
129
129
  "isViewNode": true,
130
130
  "type": "object",
131
131
  "properties": {
132
+ "visible": {
133
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
134
+ "anyOf": [
135
+ {
136
+ "enum": [
137
+ false,
138
+ true,
139
+ "{ui>/editable}",
140
+ "{= !${ui>/editable}}"
141
+ ]
142
+ },
143
+ {
144
+ "type": "string"
145
+ }
146
+ ],
147
+ "description": "Whether the button should be visible on the screen.",
148
+ "artifactType": "FlexChange",
149
+ "controlType": "sap.uxap.ObjectPageHeaderActionButton"
150
+ },
132
151
  "tooltip": {
133
- "description": "Text for tooltip of button",
152
+ "description": "The text of the button tooltip, preferably as an i18n key.",
153
+ "i18nClassification": "ACT: Text for tooltip of button.",
134
154
  "type": "string",
135
155
  "artifactType": "FlexChange",
136
156
  "controlType": "sap.uxap.ObjectPageHeaderActionButton"
@@ -152,25 +172,6 @@
152
172
  "description": "Defines the Button type.",
153
173
  "artifactType": "FlexChange",
154
174
  "controlType": "sap.uxap.ObjectPageHeaderActionButton"
155
- },
156
- "visible": {
157
- "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
158
- "anyOf": [
159
- {
160
- "enum": [
161
- false,
162
- true,
163
- "{ui>/editable}",
164
- "{= !${ui>/editable}}"
165
- ]
166
- },
167
- {
168
- "type": "string"
169
- }
170
- ],
171
- "description": "Whether the button should be visible on the screen.",
172
- "artifactType": "FlexChange",
173
- "controlType": "sap.uxap.ObjectPageHeaderActionButton"
174
175
  }
175
176
  },
176
177
  "additionalProperties": false
@@ -330,12 +331,32 @@
330
331
  }
331
332
  },
332
333
  "FormAction": {
333
- "description": "Action",
334
+ "description": "Form Action",
334
335
  "isViewNode": true,
335
336
  "type": "object",
336
337
  "properties": {
338
+ "visible": {
339
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
340
+ "anyOf": [
341
+ {
342
+ "enum": [
343
+ false,
344
+ true,
345
+ "{ui>/editable}",
346
+ "{= !${ui>/editable}}"
347
+ ]
348
+ },
349
+ {
350
+ "type": "string"
351
+ }
352
+ ],
353
+ "description": "Whether the button should be visible on the screen.",
354
+ "artifactType": "FlexChange",
355
+ "controlType": "sap.m.Button"
356
+ },
337
357
  "tooltip": {
338
- "description": "Text for tooltip of button",
358
+ "description": "The text of the button tooltip, preferably as an i18n key.",
359
+ "i18nClassification": "ACT: Text for tooltip of button.",
339
360
  "type": "string",
340
361
  "artifactType": "FlexChange",
341
362
  "controlType": "sap.m.Button"
@@ -357,25 +378,6 @@
357
378
  "description": "Defines the Button type.",
358
379
  "artifactType": "FlexChange",
359
380
  "controlType": "sap.m.Button"
360
- },
361
- "visible": {
362
- "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
363
- "anyOf": [
364
- {
365
- "enum": [
366
- false,
367
- true,
368
- "{ui>/editable}",
369
- "{= !${ui>/editable}}"
370
- ]
371
- },
372
- {
373
- "type": "string"
374
- }
375
- ],
376
- "description": "Whether the button should be visible on the screen.",
377
- "artifactType": "FlexChange",
378
- "controlType": "sap.m.Button"
379
381
  }
380
382
  },
381
383
  "additionalProperties": false
@@ -634,11 +636,61 @@
634
636
  "isViewNode": true,
635
637
  "type": "object",
636
638
  "additionalProperties": {
637
- "type": "object",
638
- "properties": {},
639
- "additionalProperties": true
639
+ "$ref": "#/definitions/ObjectPageToolBarAction"
640
640
  }
641
641
  },
642
+ "ObjectPageToolBarAction": {
643
+ "description": "ToolBar Action",
644
+ "isViewNode": true,
645
+ "type": "object",
646
+ "properties": {
647
+ "visible": {
648
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
649
+ "anyOf": [
650
+ {
651
+ "enum": [
652
+ false,
653
+ true,
654
+ "{ui>/editable}",
655
+ "{= !${ui>/editable}}"
656
+ ]
657
+ },
658
+ {
659
+ "type": "string"
660
+ }
661
+ ],
662
+ "description": "Whether the button should be visible on the screen.",
663
+ "artifactType": "FlexChange",
664
+ "controlType": "sap.m.Button"
665
+ },
666
+ "tooltip": {
667
+ "description": "The text of the button tooltip, preferably as an i18n key.",
668
+ "i18nClassification": "ACT: Text for tooltip of button.",
669
+ "type": "string",
670
+ "artifactType": "FlexChange",
671
+ "controlType": "sap.m.Button"
672
+ },
673
+ "icon": {
674
+ "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.",
675
+ "type": "string",
676
+ "artifactType": "FlexChange",
677
+ "controlType": "sap.m.Button"
678
+ },
679
+ "activeIcon": {
680
+ "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
681
+ "type": "string",
682
+ "artifactType": "FlexChange",
683
+ "controlType": "sap.m.Button"
684
+ },
685
+ "type": {
686
+ "$ref": "#/definitions/sap.m.ButtonType",
687
+ "description": "Defines the Button type.",
688
+ "artifactType": "FlexChange",
689
+ "controlType": "sap.m.Button"
690
+ }
691
+ },
692
+ "additionalProperties": false
693
+ },
642
694
  "GenericColumns": {
643
695
  "type": "object",
644
696
  "additionalProperties": {
@@ -707,7 +759,7 @@
707
759
  "type": "string"
708
760
  },
709
761
  "text": {
710
- "description": "The label of the custom column, preferrable as an i18n key.",
762
+ "description": "The label of the custom column, preferably as an i18n key.",
711
763
  "i18nClassification": "COL: Custom column header text",
712
764
  "type": "string"
713
765
  },
@@ -1333,10 +1385,60 @@
1333
1385
  "GenericFooterActions": {
1334
1386
  "type": "object",
1335
1387
  "additionalProperties": {
1336
- "type": "object",
1337
- "properties": {},
1338
- "additionalProperties": true
1388
+ "$ref": "#/definitions/FooterAction"
1339
1389
  }
1390
+ },
1391
+ "FooterAction": {
1392
+ "description": "Footer Action",
1393
+ "isViewNode": true,
1394
+ "type": "object",
1395
+ "properties": {
1396
+ "tooltip": {
1397
+ "description": "The text of the button tooltip, preferably as an i18n key.",
1398
+ "i18nClassification": "ACT: Text for tooltip of button.",
1399
+ "type": "string",
1400
+ "artifactType": "FlexChange",
1401
+ "controlType": "sap.m.Button"
1402
+ },
1403
+ "icon": {
1404
+ "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.",
1405
+ "type": "string",
1406
+ "artifactType": "FlexChange",
1407
+ "controlType": "sap.m.Button"
1408
+ },
1409
+ "activeIcon": {
1410
+ "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
1411
+ "type": "string",
1412
+ "artifactType": "FlexChange",
1413
+ "controlType": "sap.m.Button"
1414
+ },
1415
+ "type": {
1416
+ "$ref": "#/definitions/sap.m.ButtonType",
1417
+ "description": "Defines the Button type.",
1418
+ "artifactType": "FlexChange",
1419
+ "controlType": "sap.m.Button"
1420
+ },
1421
+ "visible": {
1422
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
1423
+ "anyOf": [
1424
+ {
1425
+ "enum": [
1426
+ false,
1427
+ true,
1428
+ "{ui>/editable}",
1429
+ "{= !${ui>/editable}}"
1430
+ ]
1431
+ },
1432
+ {
1433
+ "type": "string"
1434
+ }
1435
+ ],
1436
+ "description": "Whether the button should be visible on the screen.",
1437
+ "artifactType": "FlexChange",
1438
+ "controlType": "sap.m.Button"
1439
+ }
1440
+ },
1441
+ "additionalProperties": false
1340
1442
  }
1341
1443
  },
1342
1444
  "$schema": "http://json-schema.org/draft-07/schema#"