@sap/ux-specification 1.71.41 → 1.71.45

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 (187) hide show
  1. package/CHANGELOG.md +88 -22
  2. package/README.md +4 -4
  3. package/dist/documentation/runDocu-min.js +2 -0
  4. package/dist/documentation/runDocu-min.js.LICENSE.txt +24 -0
  5. package/dist/documentation/styleDocu.css +227 -0
  6. package/dist/documentation/v2/v2-AnalyticalListPage.html +49 -0
  7. package/dist/documentation/v2/v2-ApplicationV2.html +48 -0
  8. package/dist/documentation/v2/v2-ListReport.html +49 -0
  9. package/dist/documentation/v2/v2-ObjectPage.html +49 -0
  10. package/dist/documentation/v2/v2-OverviewPage.html +49 -0
  11. package/dist/index-min.js +1 -1
  12. package/dist/schemas/v2/AnalyticalListPageConfig.json +76 -6
  13. package/dist/schemas/v2/ApplicationV2.json +6 -0
  14. package/dist/schemas/v2/ListReportConfig.json +75 -5
  15. package/dist/schemas/v2/ObjectPageConfig.json +302 -42
  16. package/dist/schemas/v2/OverviewPageConfig.json +24 -41
  17. package/dist/scripts/extractDocu.js +186 -19
  18. package/dist/scripts/extractDocu.js.map +1 -1
  19. package/dist/scripts/runDocu.d.ts +1 -0
  20. package/dist/scripts/runDocu.js +561 -0
  21. package/dist/scripts/runDocu.js.map +1 -0
  22. package/dist/specification/v2/index-min.js +1 -1
  23. package/dist/src/api.js +8 -14
  24. package/dist/src/api.js.map +1 -1
  25. package/dist/src/apiTypes.d.ts +72 -65
  26. package/dist/src/extensionLogger.js +2 -2
  27. package/dist/src/extensionLogger.js.map +1 -1
  28. package/dist/src/specification/common/page.d.ts +2 -2
  29. package/dist/src/specification/common/page.js.map +1 -1
  30. package/dist/src/specification/common/types.d.ts +1 -0
  31. package/dist/src/specification/common/webapp/manifest/Manifest.d.ts +3 -1
  32. package/dist/src/specification/common/webapp/manifest/Manifest.js +1 -0
  33. package/dist/src/specification/common/webapp/manifest/Manifest.js.map +1 -1
  34. package/dist/src/specification/common/webapp/manifest/sapOvp.d.ts +2 -1
  35. package/dist/src/specification/v2/ApplicationV2.d.ts +6 -0
  36. package/dist/src/specification/v2/controls/AnalyticalListPageChart.d.ts +1 -1
  37. package/dist/src/specification/v2/controls/Card.d.ts +11 -13
  38. package/dist/src/specification/v2/controls/Card.js +0 -3
  39. package/dist/src/specification/v2/controls/Card.js.map +1 -1
  40. package/dist/src/specification/v2/controls/Facets.d.ts +2 -1
  41. package/dist/src/specification/v2/controls/Field.d.ts +10 -0
  42. package/dist/src/specification/v2/controls/Field.js +3 -0
  43. package/dist/src/specification/v2/controls/Field.js.map +1 -0
  44. package/dist/src/specification/v2/controls/FormAction.d.ts +38 -0
  45. package/dist/src/specification/v2/controls/FormAction.js +15 -0
  46. package/dist/src/specification/v2/controls/FormAction.js.map +1 -0
  47. package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +11 -0
  48. package/dist/src/specification/v2/controls/ObjectPageFooter.js +3 -0
  49. package/dist/src/specification/v2/controls/ObjectPageFooter.js.map +1 -0
  50. package/dist/src/specification/v2/controls/ObjectPageForm.d.ts +16 -0
  51. package/dist/src/specification/v2/controls/ObjectPageForm.js +3 -0
  52. package/dist/src/specification/v2/controls/ObjectPageForm.js.map +1 -0
  53. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.d.ts +21 -5
  54. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.js +0 -5
  55. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.js.map +1 -1
  56. package/dist/src/specification/v2/controls/ObjectPageSection.d.ts +24 -7
  57. package/dist/src/specification/v2/controls/ObjectPageSection.js.map +1 -1
  58. package/dist/src/specification/v2/controls/ObjectPageTable.d.ts +4 -1
  59. package/dist/src/specification/v2/controls/Table.d.ts +4 -0
  60. package/dist/src/specification/v2/controls/Table.js.map +1 -1
  61. package/dist/src/specification/v2/controls/ToolBar.d.ts +2 -6
  62. package/dist/src/specification/v2/controls/index.d.ts +5 -0
  63. package/dist/src/specification/v2/controls/index.js +1 -1
  64. package/dist/src/specification/v2/controls/index.js.map +1 -1
  65. package/dist/src/specification/v2/pages/ListReportConfig.d.ts +2 -1
  66. package/dist/src/specification/v2/pages/ObjectPageConfig.d.ts +2 -1
  67. package/dist/src/specification/v2/webapp/manifest/sapUiPageV2.d.ts +1 -0
  68. package/dist/src/specification/v2/webapp/manifest/sapUiPageV2.js +1 -0
  69. package/dist/src/specification/v2/webapp/manifest/sapUiPageV2.js.map +1 -1
  70. package/dist/src/sync/common/decoration/control.d.ts +8 -1
  71. package/dist/src/sync/common/decoration/control.js +62 -21
  72. package/dist/src/sync/common/decoration/control.js.map +1 -1
  73. package/dist/src/sync/common/flexUtils.d.ts +2 -2
  74. package/dist/src/sync/common/flexUtils.js +10 -5
  75. package/dist/src/sync/common/flexUtils.js.map +1 -1
  76. package/dist/src/sync/common/generate/index.d.ts +1 -0
  77. package/dist/src/sync/common/generate/index.js +7 -0
  78. package/dist/src/sync/common/generate/index.js.map +1 -0
  79. package/dist/src/sync/common/generate/objectPage.d.ts +49 -0
  80. package/dist/src/sync/common/generate/objectPage.js +319 -0
  81. package/dist/src/sync/common/generate/objectPage.js.map +1 -0
  82. package/dist/src/sync/common/import/utils.d.ts +28 -0
  83. package/dist/src/sync/common/import/utils.js +75 -0
  84. package/dist/src/sync/common/import/utils.js.map +1 -0
  85. package/dist/src/sync/common/importProject.js +53 -50
  86. package/dist/src/sync/common/importProject.js.map +1 -1
  87. package/dist/src/sync/common/index.d.ts +2 -0
  88. package/dist/src/sync/common/index.js +2 -0
  89. package/dist/src/sync/common/index.js.map +1 -1
  90. package/dist/src/sync/common/types.d.ts +19 -6
  91. package/dist/src/sync/common/types.js +12 -0
  92. package/dist/src/sync/common/types.js.map +1 -1
  93. package/dist/src/sync/common/utils.d.ts +30 -9
  94. package/dist/src/sync/common/utils.js +255 -173
  95. package/dist/src/sync/common/utils.js.map +1 -1
  96. package/dist/src/sync/v2/application.d.ts +2 -0
  97. package/dist/src/sync/v2/application.js +18 -5
  98. package/dist/src/sync/v2/application.js.map +1 -1
  99. package/dist/src/sync/v2/export/controls/Card.d.ts +4 -3
  100. package/dist/src/sync/v2/export/controls/Card.js +16 -9
  101. package/dist/src/sync/v2/export/controls/Card.js.map +1 -1
  102. package/dist/src/sync/v2/export/controls/Field.d.ts +4 -0
  103. package/dist/src/sync/v2/export/controls/Field.js +32 -0
  104. package/dist/src/sync/v2/export/controls/Field.js.map +1 -0
  105. package/dist/src/sync/v2/export/controls/FormAction.d.ts +15 -0
  106. package/dist/src/sync/v2/export/controls/FormAction.js +127 -0
  107. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -0
  108. package/dist/src/sync/v2/export/controls/Fragment.d.ts +1 -1
  109. package/dist/src/sync/v2/export/controls/Fragment.js +100 -87
  110. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  111. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js +1 -1
  112. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js.map +1 -1
  113. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +6 -2
  114. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +43 -4
  115. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -1
  116. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +25 -0
  117. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +113 -0
  118. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -0
  119. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +4 -5
  120. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -1
  121. package/dist/src/sync/v2/export/controls/Table.d.ts +8 -1
  122. package/dist/src/sync/v2/export/controls/Table.js +88 -31
  123. package/dist/src/sync/v2/export/controls/Table.js.map +1 -1
  124. package/dist/src/sync/v2/export/controls/TableColumn.js +1 -1
  125. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -1
  126. package/dist/src/sync/v2/export/controls/index.d.ts +3 -0
  127. package/dist/src/sync/v2/export/controls/index.js +3 -0
  128. package/dist/src/sync/v2/export/controls/index.js.map +1 -1
  129. package/dist/src/sync/v2/export/export.d.ts +24 -10
  130. package/dist/src/sync/v2/export/export.js +285 -503
  131. package/dist/src/sync/v2/export/export.js.map +1 -1
  132. package/dist/src/sync/v2/export/exportPage.d.ts +10 -0
  133. package/dist/src/sync/v2/export/exportPage.js +311 -0
  134. package/dist/src/sync/v2/export/exportPage.js.map +1 -0
  135. package/dist/src/sync/v2/export/pages/ListReport.d.ts +3 -1
  136. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -1
  137. package/dist/src/sync/v2/export/pages/OverviewPage.d.ts +3 -1
  138. package/dist/src/sync/v2/export/pages/OverviewPage.js.map +1 -1
  139. package/dist/src/sync/v2/export/view-controller-generator.js +1 -1
  140. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -1
  141. package/dist/src/sync/v2/generate/analyticalListReport.d.ts +3 -9
  142. package/dist/src/sync/v2/generate/analyticalListReport.js +13 -16
  143. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  144. package/dist/src/sync/v2/generate/generate.js +28 -6
  145. package/dist/src/sync/v2/generate/generate.js.map +1 -1
  146. package/dist/src/sync/v2/generate/listReport.d.ts +3 -9
  147. package/dist/src/sync/v2/generate/listReport.js +20 -23
  148. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  149. package/dist/src/sync/v2/generate/objectPage.d.ts +3 -10
  150. package/dist/src/sync/v2/generate/objectPage.js +226 -141
  151. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  152. package/dist/src/sync/v2/generate/utils.d.ts +1 -2
  153. package/dist/src/sync/v2/generate/utils.js +21 -6
  154. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  155. package/dist/src/sync/v2/import/app/appProvider.js +25 -3
  156. package/dist/src/sync/v2/import/app/appProvider.js.map +1 -1
  157. package/dist/src/sync/v2/import/app/ovpProvider.d.ts +2 -1
  158. package/dist/src/sync/v2/import/app/ovpProvider.js +7 -3
  159. package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -1
  160. package/dist/src/sync/v2/import/common/index.d.ts +10 -1
  161. package/dist/src/sync/v2/import/common/index.js +17 -38
  162. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  163. package/dist/src/sync/v2/import/controls/table.d.ts +2 -1
  164. package/dist/src/sync/v2/import/controls/table.js +1 -1
  165. package/dist/src/sync/v2/import/controls/table.js.map +1 -1
  166. package/dist/src/sync/v2/import/pages/analyticalListPage.d.ts +3 -8
  167. package/dist/src/sync/v2/import/pages/analyticalListPage.js +23 -24
  168. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
  169. package/dist/src/sync/v2/import/pages/listReport.d.ts +3 -7
  170. package/dist/src/sync/v2/import/pages/listReport.js +23 -24
  171. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  172. package/dist/src/sync/v2/import/pages/objectPage.d.ts +6 -12
  173. package/dist/src/sync/v2/import/pages/objectPage.js +293 -154
  174. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  175. package/dist/src/sync/v2/import/pages/overviewPage.d.ts +9 -1
  176. package/dist/src/sync/v2/import/pages/overviewPage.js +69 -39
  177. package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -1
  178. package/dist/src/sync/v2/import/utils.d.ts +3 -3
  179. package/dist/src/sync/v2/import/utils.js +5 -5
  180. package/dist/src/sync/v2/import/utils.js.map +1 -1
  181. package/dist/src/sync/v2/types.d.ts +32 -0
  182. package/dist/src/sync/v2/types.js +15 -0
  183. package/dist/src/sync/v2/types.js.map +1 -1
  184. package/dist/src/sync/v4/utils/StableIdHelper.d.ts +4 -0
  185. package/dist/src/sync/v4/utils/StableIdHelper.js +153 -0
  186. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -0
  187. package/package.json +15 -7
package/CHANGELOG.md CHANGED
@@ -4,17 +4,17 @@ All notable changes to this project are documented in this file.
4
4
 
5
5
  This project adheres to [Semantic Versioning](http://semver.org/) and the changelog is formatted based on [Keep a Changelog](http://keepachangelog.com/).
6
6
 
7
- ## [1.71.41] - 2021-09-xx
7
+ ## [1.71.45] - 2021-11-03
8
8
 
9
9
  ### Added
10
10
 
11
- - OData V4:
12
- - Header Facets are now shown in the schemas and configs, along with their actual manifest settings.
13
- - OData V2:
14
- - OVP: Added support for property `dataPointAnnotationPath` in ListCard settings
11
+
15
12
 
16
13
  ### Changed
17
14
 
15
+ - OData V2: Enhanced sync logic to use generic approach for handling unknown properties. As a result sync logic is more robust and handles more unknown properties.
16
+ - In the JSON schema, the description of DataPoints as part of sections or header facets now reflects the Title of the target annotation.
17
+
18
18
  ### Removed
19
19
 
20
20
  ### Deprecated
@@ -23,6 +23,88 @@ This project adheres to [Semantic Versioning](http://semver.org/) and the change
23
23
 
24
24
  ### Quality
25
25
 
26
+ - Code smell solved: "Define a constant instead of duplicating this literal n times."
27
+
28
+ ## [1.71.44] - 2021-10-20
29
+
30
+ ### Added
31
+
32
+ - OData V2:
33
+ - Support for (Sub)Section properties: `visible`.
34
+ - Footer actions are now part of the schema. A node for header actions is visible even if there are no actions yet.
35
+ - ALP: Schema now comprises of entity properties for config `createWithParameterDialog`->`fields`
36
+ - OP: Added support for multiple flex changes in Form and Header Actions
37
+
38
+ ### Changed
39
+
40
+ ### Removed
41
+
42
+ - OData V2:
43
+ - OVP: Removed `tab` property from `Stack` and `Link List` cards as view switch control is not supported
44
+
45
+ ### Fixed
46
+
47
+ - OData V2:
48
+ - Add `visible` property to DataField types
49
+ - Replace alias of namespace definitions of header actions even for references that are not related to OData vocabularies.
50
+ - annotationPath definitions of header and footer actions.
51
+
52
+ ### Quality
53
+
54
+ - Settings for sonarlint have been added.
55
+
56
+ ## [1.71.43] - 2021-10-06
57
+
58
+ ### Added
59
+
60
+ - Annotation path `com.sap.vocabularies.UI.v1.HeaderInfo` added to ObjectPageHeader schema.
61
+ - `i18nClassification` for `title`, `description` properties for `App.json` schema in V2.
62
+ - OData V2:
63
+ - OVP: Added support for property `annotationPath` in Linklist card settings.
64
+ - OVP: property `requireAppAuthorization` is now supported for all card types.
65
+
66
+ ### Changed
67
+
68
+ - README was updated.
69
+ - Order and naming of view nodes for the V2 Object Page adapted.
70
+ - Pattern for binding changes in V2: there are now two different patterns for List Report and Object Page; the one for the Object Page provides the additional enum values "{ui>/editable}" and "{= !${ui>/editable}}".
71
+
72
+ ### Quality
73
+
74
+ - Fix of vulnerabilities by upgrade of npm modules.
75
+ - Fix of bugs and code smells reported by SonarQube.
76
+
77
+ ## [1.71.42] - 2021-09-22
78
+
79
+ ### Added
80
+
81
+ New html files showing a graphical representation of the content of each generic schema.
82
+
83
+ OData V2:
84
+
85
+ - We show field groups and fields now as part of the app specific schema, and allow the maintenance of the visible property for fields.
86
+ - Support of property `flexEnabled`on app level.
87
+
88
+ ### Changed
89
+
90
+ The default for titles and labels of schema nodes - in case of missing annotation labels - has been adapted, for facets and header facets. There will be node-specific content now in all cases instead of generic defaults like "Form".
91
+
92
+ ### Fixed
93
+
94
+ - OData V2:
95
+ - Invalid flexChanges are now ignored during sync, hence configs and pages files are created.
96
+
97
+ ### Quality
98
+
99
+ - Bugs and code smells removed that had been detected by SonarQube.
100
+
101
+ ## [1.71.41] - 2021-09-08
102
+
103
+ ### Added
104
+
105
+ - OData V2:
106
+ - OVP: Added support for property `dataPointAnnotationPath` in ListCard settings
107
+
26
108
  ## [1.71.40] - 2021-08-25
27
109
 
28
110
  ### Added
@@ -32,19 +114,13 @@ This project adheres to [Semantic Versioning](http://semver.org/) and the change
32
114
 
33
115
  ### Changed
34
116
 
35
- - V2. Unresolvable facets are not returned by schema to avoid creation of corrupted custom sections
36
-
37
- ### Removed
38
-
39
- ### Deprecated
117
+ - OData V2: Unresolvable facets are not returned by schema to avoid creation of corrupted custom sections
40
118
 
41
119
  ### Fixed
42
120
 
43
121
  - Object Page schema generation crash when 'Facets' entry is not defined for 'CollectionFacet'
44
122
  - Page schema generation - `annotationPath` was missing for `table/toolbar`
45
123
 
46
- ### Quality
47
-
48
124
  ## [1.71.39] - 2021-08-12
49
125
 
50
126
  ### Added
@@ -70,10 +146,6 @@ This project adheres to [Semantic Versioning](http://semver.org/) and the change
70
146
 
71
147
  - The generic schemas now already comprise anyOf definitions for enums of type string that allow binding changes. Previously this was only added during the generation of app specific schemas.
72
148
 
73
- ### Removed
74
-
75
- ### Deprecated
76
-
77
149
  ### Fixed
78
150
 
79
151
  - A common function was introduced to resolve path references of Common.Label annotations; endless loop references are interjected, the variable value or key is returned in this case.
@@ -91,12 +163,6 @@ This project adheres to [Semantic Versioning](http://semver.org/) and the change
91
163
 
92
164
  - OData V2: Added growingThreshold property to Responsive Tables
93
165
 
94
- ### Changed
95
-
96
- ### Removed
97
-
98
- ### Deprecated
99
-
100
166
  ### Fixed
101
167
 
102
168
  - When starting the app modeler for certain CDS projects, an exception occurs, and no pages nor schemas are listed.
package/README.md CHANGED
@@ -3,10 +3,10 @@
3
3
  This package specifies the structure of SAP Fiori Element templates in form of typescript types and JSON schema files. You can find the JSON schemas under dist/schema.
4
4
  It is used by SAP Fiori Tools (see documentation link below) but can also be used independent from this application.
5
5
 
6
- The major and minor version of this specification package matches the major and minor version of SAP UI5, which contains Fiori elements.
6
+ The major and minor version of this specification package matches the major and minor version of SAPUI5, which contains Fiori elements.
7
7
 
8
8
  _Example_:
9
- `@sap/ux-specification@1.76.x` specifies the Fiori elements that are delivered with UI5 version 1.76.x
9
+ `@sap/ux-specification@1.76.x` specifies the Fiori elements that are delivered with SAPUI5 version 1.76.x
10
10
 
11
11
  The module supports both the OData V2 and the OData V4 version of the templates (aka FioriElementsVersion), you thus can find two different access points for the typescript definitions:
12
12
 
@@ -24,8 +24,8 @@ You can retrieve any generic schema via schemaAccess.ts.
24
24
  Besides the specification, src/api.ts provides functions that can be used with SAP Fiori apps in connection with the JSON schemas:
25
25
 
26
26
  - generateSchema: converts one generic schema to an application specific one, enriched by app specific information like annotations.
27
- - importConfig: imports information from the app, like manifest settings or UI5 flexibility changes, into one JSON configuration file that relates to a given schema (representing the central settings of the app or of a page of the app).
28
- - exportConfig: exports from one JSON configuration file, returning an updated manifest.json file and a list of UI5 flexibility changes.
27
+ - importConfig: imports information from the app, like manifest settings or SAPUI5 flexibility changes, into one JSON configuration file that relates to a given schema (representing the central settings of the app or of a page of the app).
28
+ - exportConfig: exports from one JSON configuration file, returning an updated manifest.json file and a list of SAPUI5 flexibility changes.
29
29
  - importProject: imports information from the app and generates all schemas and JSON configuration files.
30
30
  - importProjectSchema: imports information from the app and generates all schemas but no JSON configuration files.
31
31
  - getApiVersion: returns the given API version. The API version starts with 1 and will only be increased in case of incompatible changes where the consumption layer must react on.