@sap/ux-specification 1.96.40 → 1.96.42

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 (86) hide show
  1. package/dist/documentation/v2/v2-AnalyticalListPage.html +2 -2
  2. package/dist/documentation/v2/v2-ApplicationV2.html +2 -2
  3. package/dist/documentation/v2/v2-ListReport.html +2 -2
  4. package/dist/documentation/v2/v2-ObjectPage.html +2 -2
  5. package/dist/documentation/v2/v2-OverviewPage.html +2 -2
  6. package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
  7. package/dist/documentation/v4/v4-BuildingBlocks.html +2 -2
  8. package/dist/documentation/v4/v4-FreestylePage.html +2 -2
  9. package/dist/documentation/v4/v4-ListReport.html +2 -2
  10. package/dist/documentation/v4/v4-ObjectPage.html +2 -2
  11. package/dist/index-min.js +134 -134
  12. package/dist/index-min.js.map +2 -2
  13. package/dist/package.json +8 -8
  14. package/dist/schemas/v2/AnalyticalListPageConfig.json +5 -10
  15. package/dist/schemas/v2/ListReportConfig.json +5 -10
  16. package/dist/schemas/v2/ObjectPageConfig.json +1 -0
  17. package/dist/schemas/v4/ObjectPageConfig.json +102 -25
  18. package/dist/src/sync/common/decoration/control.d.ts +8 -1
  19. package/dist/src/sync/common/decoration/control.d.ts.map +1 -1
  20. package/dist/src/sync/common/decoration/control.js +14 -2
  21. package/dist/src/sync/common/decoration/control.js.map +1 -1
  22. package/dist/src/sync/common/generate/utils.d.ts +16 -2
  23. package/dist/src/sync/common/generate/utils.d.ts.map +1 -1
  24. package/dist/src/sync/common/generate/utils.js +36 -13
  25. package/dist/src/sync/common/generate/utils.js.map +1 -1
  26. package/dist/src/sync/common/i18n.json +2 -1
  27. package/dist/src/sync/common/utils.d.ts +15 -2
  28. package/dist/src/sync/common/utils.d.ts.map +1 -1
  29. package/dist/src/sync/common/utils.js +22 -3
  30. package/dist/src/sync/common/utils.js.map +1 -1
  31. package/dist/src/sync/v2/generate/utils.d.ts +3 -1
  32. package/dist/src/sync/v2/generate/utils.d.ts.map +1 -1
  33. package/dist/src/sync/v2/generate/utils.js +28 -16
  34. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  35. package/dist/src/sync/v4/application.d.ts +1 -0
  36. package/dist/src/sync/v4/application.d.ts.map +1 -1
  37. package/dist/src/sync/v4/application.js +18 -1
  38. package/dist/src/sync/v4/application.js.map +1 -1
  39. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts +7 -0
  40. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +1 -1
  41. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +75 -2
  42. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -1
  43. package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.js +2 -2
  44. package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.js.map +1 -1
  45. package/dist/src/sync/v4/export/controls/ObjectPageFormAction.js +2 -2
  46. package/dist/src/sync/v4/export/controls/ObjectPageFormAction.js.map +1 -1
  47. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js +2 -2
  48. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js.map +1 -1
  49. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js +2 -2
  50. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js.map +1 -1
  51. package/dist/src/sync/v4/export/export.d.ts.map +1 -1
  52. package/dist/src/sync/v4/export/export.js +30 -10
  53. package/dist/src/sync/v4/export/export.js.map +1 -1
  54. package/dist/src/sync/v4/export/manifest.d.ts.map +1 -1
  55. package/dist/src/sync/v4/export/manifest.js +35 -8
  56. package/dist/src/sync/v4/export/manifest.js.map +1 -1
  57. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.d.ts +1 -1
  58. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.d.ts.map +1 -1
  59. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.js +89 -20
  60. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.js.map +1 -1
  61. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.d.ts.map +1 -1
  62. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.js +43 -16
  63. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.js.map +1 -1
  64. package/dist/src/sync/v4/generate/fpm-custom-page/generator.d.ts.map +1 -1
  65. package/dist/src/sync/v4/generate/fpm-custom-page/generator.js +21 -3
  66. package/dist/src/sync/v4/generate/fpm-custom-page/generator.js.map +1 -1
  67. package/dist/src/sync/v4/generate/fpm-custom-page/pageExtenstions.d.ts.map +1 -1
  68. package/dist/src/sync/v4/generate/fpm-custom-page/pageExtenstions.js +21 -6
  69. package/dist/src/sync/v4/generate/fpm-custom-page/pageExtenstions.js.map +1 -1
  70. package/dist/src/sync/v4/generate/listReport.d.ts +20 -1
  71. package/dist/src/sync/v4/generate/listReport.d.ts.map +1 -1
  72. package/dist/src/sync/v4/generate/listReport.js +9 -8
  73. package/dist/src/sync/v4/generate/listReport.js.map +1 -1
  74. package/dist/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  75. package/dist/src/sync/v4/generate/objectPage.js +109 -15
  76. package/dist/src/sync/v4/generate/objectPage.js.map +1 -1
  77. package/dist/src/sync/v4/import/pages/objectPage.d.ts.map +1 -1
  78. package/dist/src/sync/v4/import/pages/objectPage.js +35 -7
  79. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -1
  80. package/dist/src/sync/v4/utils/macros.js +1 -1
  81. package/dist/src/sync/v4/utils/macros.js.map +1 -1
  82. package/dist/src/sync/v4/utils/utils.d.ts +14 -3
  83. package/dist/src/sync/v4/utils/utils.d.ts.map +1 -1
  84. package/dist/src/sync/v4/utils/utils.js +112 -5
  85. package/dist/src/sync/v4/utils/utils.js.map +1 -1
  86. package/package.json +8 -8
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap/ux-specification",
3
- "version": "1.96.40",
3
+ "version": "1.96.42",
4
4
  "displayName": "SAP Fiori tools - Specification",
5
5
  "description": "SAP Fiori tools - Specification",
6
6
  "files": [
@@ -50,13 +50,13 @@
50
50
  "publisher": "SAPSE",
51
51
  "license": "SEE LICENSE IN LICENSE",
52
52
  "dependencies": {
53
- "@sap-ux/fe-fpm-writer": "0.20.2",
54
- "@sap-ux/vocabularies-types": "0.7.4"
53
+ "@sap-ux/fe-fpm-writer": "0.22.2",
54
+ "@sap-ux/vocabularies-types": "0.9.0"
55
55
  },
56
56
  "devDependencies": {
57
57
  "@sap-ux/annotation-converter": "0.5.22",
58
- "@sap/ux-specification-types": "1.96.40",
59
- "@sap-ux/edmx-parser": "0.5.14",
58
+ "@sap/ux-specification-types": "1.96.42",
59
+ "@sap-ux/edmx-parser": "0.6.0",
60
60
  "@sapui5/ts-types-esm": "1.96.22",
61
61
  "@types/d3": "7.4.0",
62
62
  "@types/jquery": "3.5.16",
@@ -68,17 +68,17 @@
68
68
  "ajv": "6.12.6",
69
69
  "axios": "0.27.2",
70
70
  "cpy-cli": "3.1.1",
71
- "d3": "7.8.4",
71
+ "d3": "7.8.5",
72
72
  "deepmerge": "4.3.1",
73
73
  "ejs": "3.1.9",
74
74
  "excel4node": "1.8.2",
75
- "i18next": "22.5.0",
75
+ "i18next": "22.5.1",
76
76
  "jquery": "3.7.0",
77
77
  "lodash.unset": "4.5.2",
78
78
  "mem-fs-editor": "9.7.0",
79
79
  "path": "0.12.7",
80
80
  "reflect-metadata": "0.1.13",
81
- "semver": "7.5.1",
81
+ "semver": "7.5.3",
82
82
  "typescript-json-schema": "0.56.0",
83
83
  "xml-js": "1.6.11"
84
84
  },
@@ -224,11 +224,8 @@
224
224
  "variants": {
225
225
  "description": "The variants section contains a set of entries that point to SelectionVariants or SelectionPresentationVariants defined in the annotations.",
226
226
  "type": "object",
227
- "additionalProperties": false,
228
- "patternProperties": {
229
- "^[0-9]+$": {
230
- "$ref": "#/definitions/QuickVariant"
231
- }
227
+ "additionalProperties": {
228
+ "$ref": "#/definitions/QuickVariant"
232
229
  },
233
230
  "artifactType": "Manifest"
234
231
  }
@@ -267,11 +264,8 @@
267
264
  "variants": {
268
265
  "description": "The variants section contains a set of entries that point to SelectionVariants or SelectionPresentationVariants defined in the annotations.",
269
266
  "type": "object",
270
- "additionalProperties": false,
271
- "patternProperties": {
272
- "^[0-9]+$": {
273
- "$ref": "#/definitions/QuickVariantX"
274
- }
267
+ "additionalProperties": {
268
+ "$ref": "#/definitions/QuickVariantX"
275
269
  },
276
270
  "artifactType": "Manifest"
277
271
  },
@@ -606,6 +600,7 @@
606
600
  },
607
601
  "tabKey": {
608
602
  "description": "If you use QuickVariantSelectionX, you need to define the extensions per tab. 'tabKey' is the key provided when defining the QuickVariantSelectionX.",
603
+ "hidden": true,
609
604
  "artifactType": "Manifest",
610
605
  "type": "string"
611
606
  },
@@ -235,11 +235,8 @@
235
235
  "variants": {
236
236
  "description": "The variants section contains a set of entries that point to SelectionVariants or SelectionPresentationVariants defined in the annotations.",
237
237
  "type": "object",
238
- "additionalProperties": false,
239
- "patternProperties": {
240
- "^[0-9]+$": {
241
- "$ref": "#/definitions/QuickVariant"
242
- }
238
+ "additionalProperties": {
239
+ "$ref": "#/definitions/QuickVariant"
243
240
  },
244
241
  "artifactType": "Manifest"
245
242
  }
@@ -278,11 +275,8 @@
278
275
  "variants": {
279
276
  "description": "The variants section contains a set of entries that point to SelectionVariants or SelectionPresentationVariants defined in the annotations.",
280
277
  "type": "object",
281
- "additionalProperties": false,
282
- "patternProperties": {
283
- "^[0-9]+$": {
284
- "$ref": "#/definitions/QuickVariantX"
285
- }
278
+ "additionalProperties": {
279
+ "$ref": "#/definitions/QuickVariantX"
286
280
  },
287
281
  "artifactType": "Manifest"
288
282
  },
@@ -617,6 +611,7 @@
617
611
  },
618
612
  "tabKey": {
619
613
  "description": "If you use QuickVariantSelectionX, you need to define the extensions per tab. 'tabKey' is the key provided when defining the QuickVariantSelectionX.",
614
+ "hidden": true,
620
615
  "artifactType": "Manifest",
621
616
  "type": "string"
622
617
  },
@@ -892,6 +892,7 @@
892
892
  },
893
893
  "tabKey": {
894
894
  "description": "If you use QuickVariantSelectionX, you need to define the extensions per tab. 'tabKey' is the key provided when defining the QuickVariantSelectionX.",
895
+ "hidden": true,
895
896
  "artifactType": "Manifest",
896
897
  "type": "string"
897
898
  },
@@ -104,8 +104,8 @@
104
104
  "enum": [
105
105
  false,
106
106
  true,
107
- "{ui>/editable}",
108
- "{= !${ui>/editable}}"
107
+ "{= ${ui>/editMode} === 'Editable'}",
108
+ "{= ${ui>/editMode} !== 'Editable'}"
109
109
  ]
110
110
  },
111
111
  {
@@ -122,8 +122,8 @@
122
122
  "enum": [
123
123
  false,
124
124
  true,
125
- "{ui>/editable}",
126
- "{= !${ui>/editable}}"
125
+ "{= ${ui>/editMode} === 'Editable'}",
126
+ "{= ${ui>/editMode} !== 'Editable'}"
127
127
  ]
128
128
  },
129
129
  {
@@ -357,6 +357,9 @@
357
357
  },
358
358
  {
359
359
  "$ref": "#/definitions/ObjectPageSectionPresentationVariant"
360
+ },
361
+ {
362
+ "$ref": "#/definitions/ObjectPageSubSections"
360
363
  }
361
364
  ]
362
365
  }
@@ -522,8 +525,8 @@
522
525
  "enum": [
523
526
  false,
524
527
  true,
525
- "{ui>/editable}",
526
- "{= !${ui>/editable}}"
528
+ "{= ${ui>/editMode} === 'Editable'}",
529
+ "{= ${ui>/editMode} !== 'Editable'}"
527
530
  ]
528
531
  },
529
532
  {
@@ -540,8 +543,8 @@
540
543
  "enum": [
541
544
  false,
542
545
  true,
543
- "{ui>/editable}",
544
- "{= !${ui>/editable}}"
546
+ "{= ${ui>/editMode} === 'Editable'}",
547
+ "{= ${ui>/editMode} !== 'Editable'}"
545
548
  ]
546
549
  },
547
550
  {
@@ -891,8 +894,8 @@
891
894
  "enum": [
892
895
  false,
893
896
  true,
894
- "{ui>/editable}",
895
- "{= !${ui>/editable}}"
897
+ "{= ${ui>/editMode} === 'Editable'}",
898
+ "{= ${ui>/editMode} !== 'Editable'}"
896
899
  ]
897
900
  },
898
901
  {
@@ -909,8 +912,8 @@
909
912
  "enum": [
910
913
  false,
911
914
  true,
912
- "{ui>/editable}",
913
- "{= !${ui>/editable}}"
915
+ "{= ${ui>/editMode} === 'Editable'}",
916
+ "{= ${ui>/editMode} !== 'Editable'}"
914
917
  ]
915
918
  },
916
919
  {
@@ -1026,6 +1029,89 @@
1026
1029
  },
1027
1030
  "additionalProperties": false
1028
1031
  },
1032
+ "ObjectPageSubSections": {
1033
+ "description": "Subsections",
1034
+ "isViewNode": true,
1035
+ "type": "object",
1036
+ "properties": {
1037
+ "subsections": {
1038
+ "$ref": "#/definitions/GenericSubSections"
1039
+ }
1040
+ },
1041
+ "additionalProperties": false,
1042
+ "required": [
1043
+ "subsections"
1044
+ ]
1045
+ },
1046
+ "GenericSubSections": {
1047
+ "type": "object",
1048
+ "additionalProperties": {
1049
+ "anyOf": [
1050
+ {
1051
+ "$ref": "#/definitions/ObjectPageSectionTableV4"
1052
+ },
1053
+ {
1054
+ "$ref": "#/definitions/ObjectPageSectionForm"
1055
+ },
1056
+ {
1057
+ "$ref": "#/definitions/ObjectPageSectionDataPoint"
1058
+ },
1059
+ {
1060
+ "$ref": "#/definitions/ObjectPageSectionContact"
1061
+ },
1062
+ {
1063
+ "$ref": "#/definitions/ObjectPageSectionAddress"
1064
+ },
1065
+ {
1066
+ "$ref": "#/definitions/ObjectPageSectionPresentationVariant"
1067
+ },
1068
+ {
1069
+ "$ref": "#/definitions/ObjectPageSubSections"
1070
+ },
1071
+ {
1072
+ "$ref": "#/definitions/ObjectPageCustomSubSectionFragment",
1073
+ "description": "Custom Sub Section"
1074
+ }
1075
+ ]
1076
+ }
1077
+ },
1078
+ "ObjectPageCustomSubSectionFragment": {
1079
+ "description": "Custom Sub Section",
1080
+ "isViewNode": true,
1081
+ "type": "object",
1082
+ "properties": {
1083
+ "title": {
1084
+ "description": "The label of the custom section, preferrable as an i18n key",
1085
+ "i18nClassification": "TIT: Custom section title",
1086
+ "type": "string",
1087
+ "artifactType": "Manifest"
1088
+ },
1089
+ "fragmentName": {
1090
+ "type": "string",
1091
+ "artifactType": "Manifest"
1092
+ },
1093
+ "relatedFacet": {
1094
+ "type": "string",
1095
+ "artifactType": "Manifest"
1096
+ },
1097
+ "relativePosition": {
1098
+ "$ref": "#/definitions/SectionPosition",
1099
+ "artifactType": "Manifest"
1100
+ }
1101
+ },
1102
+ "additionalProperties": false,
1103
+ "required": [
1104
+ "fragmentName",
1105
+ "title"
1106
+ ]
1107
+ },
1108
+ "SectionPosition": {
1109
+ "enum": [
1110
+ "After",
1111
+ "Before"
1112
+ ],
1113
+ "type": "string"
1114
+ },
1029
1115
  "CustomSections": {
1030
1116
  "description": "Custom Sections",
1031
1117
  "isViewNode": true,
@@ -1082,19 +1168,10 @@
1082
1168
  "className",
1083
1169
  "fragmentName",
1084
1170
  "id",
1085
- "relatedFacet",
1086
- "relativePosition",
1087
1171
  "title",
1088
1172
  "type"
1089
1173
  ]
1090
1174
  },
1091
- "SectionPosition": {
1092
- "enum": [
1093
- "After",
1094
- "Before"
1095
- ],
1096
- "type": "string"
1097
- },
1098
1175
  "ObjectPageFooter<ObjectPageFooterActions>": {
1099
1176
  "description": "Footer",
1100
1177
  "isViewNode": true,
@@ -1145,8 +1222,8 @@
1145
1222
  "enum": [
1146
1223
  false,
1147
1224
  true,
1148
- "{ui>/editable}",
1149
- "{= !${ui>/editable}}"
1225
+ "{= ${ui>/editMode} === 'Editable'}",
1226
+ "{= ${ui>/editMode} !== 'Editable'}"
1150
1227
  ]
1151
1228
  },
1152
1229
  {
@@ -1163,8 +1240,8 @@
1163
1240
  "enum": [
1164
1241
  false,
1165
1242
  true,
1166
- "{ui>/editable}",
1167
- "{= !${ui>/editable}}"
1243
+ "{= ${ui>/editMode} === 'Editable'}",
1244
+ "{= ${ui>/editMode} !== 'Editable'}"
1168
1245
  ]
1169
1246
  },
1170
1247
  {
@@ -22,11 +22,17 @@ export declare const buildControlIdForPage: (baseId: string, idBreadcrumbs: stri
22
22
  export declare const convertSectionId: (sectionId: string, title: string) => string;
23
23
  export declare function escapeId(sParam: string): string;
24
24
  /**
25
- * Binding Change values, will be added on object pages */
25
+ * V2 - Binding Change values, will be added on object pages */
26
26
  export declare enum BindingValue {
27
27
  Editable = "{ui>/editable}",
28
28
  NotEditable = "{= !${ui>/editable}}"
29
29
  }
30
+ /**
31
+ * V4 - Binding Change values, will be added on object pages */
32
+ export declare enum BindingValueV4 {
33
+ Editable = "{= ${ui>/editMode} === 'Editable'}",
34
+ NotEditable = "{= ${ui>/editMode} !== 'Editable'}"
35
+ }
30
36
  /**
31
37
  * Export rule for table columns
32
38
  * @param baseId - base ID, first part of the stable ID
@@ -48,4 +54,5 @@ export declare const getActionBreadcrumbParts: (breadcrumbs: string[]) => {
48
54
  };
49
55
  export declare const addPatternForBindingChangeOfEnumLR: (schema: object, definition: object, propertyName: string) => void;
50
56
  export declare const addPatternForBindingChangeOfEnumOP: (schema: object, definition: object, propertyName: string) => void;
57
+ export declare const addPatternForBindingChangeOfEnumOPV4: (schema: object, definition: object, propertyName: string) => void;
51
58
  //# sourceMappingURL=control.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"control.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/decoration/control.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAUvE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,WAAY,MAAM,iBAAiB,MAAM,EAAE,KAAG,MAElF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,WAAY,MAAM,iBAAiB,MAAM,EAAE,eAAe,MAAM,EAAE,KAAG,MAEtG,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,cAAe,MAAM,SAAS,MAAM,KAAG,MASnE,CAAC;AAEF,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED;2DAC2D;AAC3D,oBAAY,YAAY;IACpB,QAAQ,mBAAmB;IAC3B,WAAW,yBAAyB;CACvC;AA6BD;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,WACrB,MAAM,iBACC,MAAM,EAAE,eACV,MAAM,EAAE,gBACP,mBAAmB,SAC1B,MAAM,KACd,MA4BF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,gBACpB,MAAM,EAAE;gBACR,MAAM,GAAG,SAAS;sBAAoB,MAAM,GAAG,SAAS;cAAY,MAAM;CAc1F,CAAC;AAyEF,eAAO,MAAM,kCAAkC,WAAY,MAAM,cAAc,MAAM,gBAAgB,MAAM,KAAG,IAE7G,CAAC;AAEF,eAAO,MAAM,kCAAkC,WAAY,MAAM,cAAc,MAAM,gBAAgB,MAAM,KAAG,IAG7G,CAAC"}
1
+ {"version":3,"file":"control.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/decoration/control.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAUvE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,WAAY,MAAM,iBAAiB,MAAM,EAAE,KAAG,MAElF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,WAAY,MAAM,iBAAiB,MAAM,EAAE,eAAe,MAAM,EAAE,KAAG,MAEtG,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,cAAe,MAAM,SAAS,MAAM,KAAG,MASnE,CAAC;AAEF,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED;gEACgE;AAChE,oBAAY,YAAY;IACpB,QAAQ,mBAAmB;IAC3B,WAAW,yBAAyB;CACvC;AAED;gEACgE;AAChE,oBAAY,cAAc;IACtB,QAAQ,uCAAuC;IAC/C,WAAW,uCAAuC;CACrD;AA6BD;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,WACrB,MAAM,iBACC,MAAM,EAAE,eACV,MAAM,EAAE,gBACP,mBAAmB,SAC1B,MAAM,KACd,MA4BF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,gBACpB,MAAM,EAAE;gBACR,MAAM,GAAG,SAAS;sBAAoB,MAAM,GAAG,SAAS;cAAY,MAAM;CAc1F,CAAC;AAyEF,eAAO,MAAM,kCAAkC,WAAY,MAAM,cAAc,MAAM,gBAAgB,MAAM,KAAG,IAE7G,CAAC;AAEF,eAAO,MAAM,kCAAkC,WAAY,MAAM,cAAc,MAAM,gBAAgB,MAAM,KAAG,IAG7G,CAAC;AAEF,eAAO,MAAM,oCAAoC,WACrC,MAAM,cACF,MAAM,gBACJ,MAAM,KACrB,IAGF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addPatternForBindingChangeOfEnumOP = exports.addPatternForBindingChangeOfEnumLR = exports.getActionBreadcrumbParts = exports.buildColumnControlId = exports.BindingValue = exports.escapeId = exports.convertSectionId = exports.buildControlIdForPage = exports.buildControlIdFromParent = void 0;
3
+ exports.addPatternForBindingChangeOfEnumOPV4 = exports.addPatternForBindingChangeOfEnumOP = exports.addPatternForBindingChangeOfEnumLR = exports.getActionBreadcrumbParts = exports.buildColumnControlId = exports.BindingValueV4 = exports.BindingValue = exports.escapeId = exports.convertSectionId = exports.buildControlIdForPage = exports.buildControlIdFromParent = void 0;
4
4
  const ux_specification_types_1 = require("@sap/ux-specification-types");
5
5
  const utils_1 = require("../utils");
6
6
  /**
@@ -52,12 +52,19 @@ function escapeId(sParam) {
52
52
  }
53
53
  exports.escapeId = escapeId;
54
54
  /**
55
- * Binding Change values, will be added on object pages */
55
+ * V2 - Binding Change values, will be added on object pages */
56
56
  var BindingValue;
57
57
  (function (BindingValue) {
58
58
  BindingValue["Editable"] = "{ui>/editable}";
59
59
  BindingValue["NotEditable"] = "{= !${ui>/editable}}";
60
60
  })(BindingValue = exports.BindingValue || (exports.BindingValue = {}));
61
+ /**
62
+ * V4 - Binding Change values, will be added on object pages */
63
+ var BindingValueV4;
64
+ (function (BindingValueV4) {
65
+ BindingValueV4["Editable"] = "{= ${ui>/editMode} === 'Editable'}";
66
+ BindingValueV4["NotEditable"] = "{= ${ui>/editMode} !== 'Editable'}";
67
+ })(BindingValueV4 = exports.BindingValueV4 || (exports.BindingValueV4 = {}));
61
68
  /**
62
69
  * Consolidates the list of id's and other breadcrumbs into one list, for finding the right stable ID for a column
63
70
  * @param idBreadcrumbs - array of ID parts
@@ -216,4 +223,9 @@ const addPatternForBindingChangeOfEnumOP = (schema, definition, propertyName) =>
216
223
  addPatternForBindingChangeOfEnum(schema, definition, propertyName, bindingValues);
217
224
  };
218
225
  exports.addPatternForBindingChangeOfEnumOP = addPatternForBindingChangeOfEnumOP;
226
+ const addPatternForBindingChangeOfEnumOPV4 = (schema, definition, propertyName) => {
227
+ const bindingValues = Object.values(BindingValueV4);
228
+ addPatternForBindingChangeOfEnum(schema, definition, propertyName, bindingValues);
229
+ };
230
+ exports.addPatternForBindingChangeOfEnumOPV4 = addPatternForBindingChangeOfEnumOPV4;
219
231
  //# sourceMappingURL=control.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"control.js","sourceRoot":"","sources":["../../../../../src/sync/common/decoration/control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"control.js","sourceRoot":"","sources":["../../../../../src/sync/common/decoration/control.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@ import { UIAnnotationTerms } from '@sap-ux/vocabularies-types/vocabularies/UI';
4
4
  import type { Definition, DefinitionOrBoolean } from 'typescript-json-schema';
5
5
  import type { SectionTypeV2 } from '../../v2/types';
6
6
  import type { PresentationVariantV4 } from '../../v4/types';
7
- import type { FacetConfig, FacetSection, SectionType } from '@sap/ux-specification-types';
8
- import { DefinitionName } from '@sap/ux-specification-types';
7
+ import type { FacetConfig, FacetSection, SectionType, SchemaDefinition } from '@sap/ux-specification-types';
8
+ import { DefinitionName, SchemaKeyName } from '@sap/ux-specification-types';
9
9
  interface PropertyInDefinition {
10
10
  definition?: string;
11
11
  property?: string;
@@ -14,6 +14,8 @@ interface PropertyInDefinition {
14
14
  interface EnumDefinitionParsingOptions {
15
15
  excludeKey?: string;
16
16
  resolveDefinition?: boolean;
17
+ keyProperties?: SchemaKeyName[];
18
+ descriptionAsFallback?: boolean;
17
19
  }
18
20
  /**
19
21
  * Adds an enum filled with existing UI annotations of the given list (validAnnotations)
@@ -173,6 +175,18 @@ export declare function handleAddressContact(facet: FacetConfig, facetKey: strin
173
175
  * @param {string=} suffix - floorplan specific suffix (optional)
174
176
  */
175
177
  export declare function addFieldsType(appSchema: Definition, entityType: EntityType, suffix?: string): void;
178
+ /**
179
+ * Method returns enum entry for passed schema definition.
180
+ * @param {Definition} appSchema App specific JSON schema
181
+ * @param {SchemaDefinition} definition Target definition to resolve description.
182
+ * @param {string} key Default enum key.
183
+ * @param {EnumDefinitionParsingOptions} [options] Additional parsing options.
184
+ * @returns {string | undefined} Enum entry of passed definition.
185
+ */
186
+ export declare function getEnumEntry(appSchema: Definition, definition: SchemaDefinition, key: string, options?: EnumDefinitionParsingOptions): {
187
+ const: string;
188
+ description: string | undefined;
189
+ };
176
190
  /**
177
191
  * Method adds enum with key and description to schema definition.
178
192
  * Description can be easily used by UI to describe enum value/key.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/generate/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/generate/utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addKeyToDefinition = exports.getActionKey = exports.addDescriptiveEnumDefinition = exports.addFieldsType = exports.handleAddressContact = exports.getFacetAnnotationPath = exports.addDefinitionRef = exports.getFacetDefinitionLink = exports.addDataTypeToDefinition = exports.determineDataType = exports.determineDataTypeOfTarget = exports.getDataTypeFromAnnotation = exports.DataType = exports.addCommonLineItemDefinitions = exports.getCustomExtensionDefinitionName = exports.parseSchemaDefinition = exports.getFacetKeyInSchema = exports.addDefinitionForRelatedFacetKeys = exports.addEnumForFilterBarAnnotationPath = exports.addEnumForVariantEntitySet = exports.addEnumForMultiTabVariant = exports.addEnumForSingleTabVariant = exports.addEnumForValidAnnotations = void 0;
3
+ exports.addKeyToDefinition = exports.getActionKey = exports.addDescriptiveEnumDefinition = exports.getEnumEntry = exports.addFieldsType = exports.handleAddressContact = exports.getFacetAnnotationPath = exports.addDefinitionRef = exports.getFacetDefinitionLink = exports.addDataTypeToDefinition = exports.determineDataType = exports.determineDataTypeOfTarget = exports.getDataTypeFromAnnotation = exports.DataType = exports.addCommonLineItemDefinitions = exports.getCustomExtensionDefinitionName = exports.parseSchemaDefinition = exports.getFacetKeyInSchema = exports.addDefinitionForRelatedFacetKeys = exports.addEnumForFilterBarAnnotationPath = exports.addEnumForVariantEntitySet = exports.addEnumForMultiTabVariant = exports.addEnumForSingleTabVariant = exports.addEnumForValidAnnotations = void 0;
4
4
  const __1 = require("..");
5
5
  const ux_specification_types_1 = require("@sap/ux-specification-types");
6
6
  const StableIdHelper_1 = require("../../v4/utils/StableIdHelper");
@@ -434,24 +434,50 @@ function addFieldsType(appSchema, entityType, suffix = (0, __1.prepareRef)(''))
434
434
  }
435
435
  exports.addFieldsType = addFieldsType;
436
436
  /**
437
- * Method returns description for passed schema definition.
437
+ * Method returns enum entry for passed schema definition.
438
438
  * @param {Definition} appSchema App specific JSON schema
439
- * @param {Definition} definition Target definition to resolve description.
440
- * @param {boolean} resolveDefinition Should logic use fallback to look into reference definition.
441
- * @returns {string | undefined} Description of passed definition.
439
+ * @param {SchemaDefinition} definition Target definition to resolve description.
440
+ * @param {string} key Default enum key.
441
+ * @param {EnumDefinitionParsingOptions} [options] Additional parsing options.
442
+ * @returns {string | undefined} Enum entry of passed definition.
442
443
  */
443
- function getDescription(appSchema, definition, resolveDefinition = false) {
444
+ function getEnumEntry(appSchema, definition, key, options) {
444
445
  let description = definition.description;
445
- if (resolveDefinition && !description && definition.$ref) {
446
+ let keys = definition.keys;
447
+ if (options?.resolveDefinition && !description && definition.$ref) {
446
448
  // Try to read description from reference
447
449
  const definitionKey = (0, __1.getDefinitionKey)(definition.$ref);
448
450
  const refDefinition = appSchema.definitions?.[definitionKey];
449
451
  if (typeof refDefinition === 'object') {
450
452
  description = refDefinition.description;
453
+ keys = refDefinition.keys;
454
+ }
455
+ }
456
+ // Resolve enum key
457
+ let enumKey = key;
458
+ let schemaDefinitionKey;
459
+ // Read key from schema keys by passed property
460
+ if (options?.keyProperties && keys) {
461
+ for (const keyProperty of options?.keyProperties) {
462
+ schemaDefinitionKey = keys.find((innerKey) => innerKey.name === keyProperty);
463
+ if (schemaDefinitionKey) {
464
+ break;
465
+ }
451
466
  }
452
467
  }
453
- return description;
468
+ if (schemaDefinitionKey) {
469
+ enumKey = schemaDefinitionKey.value;
470
+ }
471
+ else if (options?.descriptionAsFallback && description) {
472
+ // Fallback to use description/label as key. It is fallback solution for some extensions.
473
+ enumKey = description;
474
+ }
475
+ return {
476
+ const: enumKey,
477
+ ...(description && { description })
478
+ };
454
479
  }
480
+ exports.getEnumEntry = getEnumEntry;
455
481
  /**
456
482
  * Method adds enum with key and description to schema definition.
457
483
  * Description can be easily used by UI to describe enum value/key.
@@ -472,11 +498,8 @@ function addDescriptiveEnumDefinition(appSchema, origin, target, options) {
472
498
  continue;
473
499
  }
474
500
  const property = origin.properties[key];
475
- const description = getDescription(appSchema, property, options?.resolveDefinition);
476
- oneOfEnum.push({
477
- const: key,
478
- ...(description && { description })
479
- });
501
+ const entry = getEnumEntry(appSchema, property, key, options);
502
+ oneOfEnum.push(entry);
480
503
  }
481
504
  const definition = appSchema.definitions[target.definition] || target.schema;
482
505
  if (typeof definition === 'object') {