@sap/ux-specification 1.90.18 → 1.90.21

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 (198) hide show
  1. package/CHANGELOG.md +65 -2
  2. package/dist/documentation/runDocu-min.js +1 -1
  3. package/dist/documentation/styleDocu.css +7 -14
  4. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  5. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  6. package/dist/documentation/v2/v2-ListReport.html +1 -1
  7. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  8. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  9. package/dist/documentation/v4/v4-AnalyticalListPage.html +1 -1
  10. package/dist/documentation/v4/v4-ApplicationV4.html +1 -1
  11. package/dist/documentation/v4/v4-ListReport.html +1 -1
  12. package/dist/documentation/v4/v4-ObjectPage.html +1 -1
  13. package/dist/index-min.js +1 -1
  14. package/dist/schemas/v2/AnalyticalListPageConfig.json +149 -15
  15. package/dist/schemas/v2/ListReportConfig.json +149 -15
  16. package/dist/schemas/v2/ObjectPageConfig.json +89 -33
  17. package/dist/schemas/v2/OverviewPageConfig.json +57 -16
  18. package/dist/schemas/v4/AnalyticalListPageConfig.json +43 -86
  19. package/dist/schemas/v4/ListReportConfig.json +43 -86
  20. package/dist/schemas/v4/ObjectPageConfig.json +70 -109
  21. package/dist/scripts/runDocu.js +30 -7
  22. package/dist/scripts/runDocu.js.map +1 -1
  23. package/dist/scripts/to-json-schema.js +31 -37
  24. package/dist/scripts/to-json-schema.js.map +1 -1
  25. package/dist/specification/v2/index-min.js +1 -1
  26. package/dist/specification/v4/index-min.js +1 -1
  27. package/dist/src/api.js +9 -9
  28. package/dist/src/api.js.map +1 -1
  29. package/dist/src/apiTypes.d.ts +5 -2
  30. package/dist/src/specification/schemaAccess.js +1 -3
  31. package/dist/src/specification/schemaAccess.js.map +1 -1
  32. package/dist/src/specification/v2/controls/Action.d.ts +19 -2
  33. package/dist/src/specification/v2/controls/FilterBar.d.ts +70 -22
  34. package/dist/src/specification/v2/controls/FilterBar.js +24 -0
  35. package/dist/src/specification/v2/controls/FilterBar.js.map +1 -1
  36. package/dist/src/specification/v2/controls/Footer.d.ts +20 -0
  37. package/dist/src/specification/v2/controls/{ObjectPageFooter.js → Footer.js} +1 -1
  38. package/dist/src/specification/v2/controls/Footer.js.map +1 -0
  39. package/dist/src/specification/v2/controls/Table.d.ts +8 -1
  40. package/dist/src/specification/v2/controls/Table.js.map +1 -1
  41. package/dist/src/specification/v2/controls/ToolBar.d.ts +1 -8
  42. package/dist/src/specification/v2/controls/index.d.ts +1 -2
  43. package/dist/src/specification/v2/controls/index.js.map +1 -1
  44. package/dist/src/specification/v2/pages/AnalyticalListPageConfig.d.ts +2 -1
  45. package/dist/src/specification/v2/pages/ListReportConfig.d.ts +2 -1
  46. package/dist/src/specification/v2/pages/OverviewPageConfig.d.ts +36 -2
  47. package/dist/src/specification/v2/pages/OverviewPageConfig.js.map +1 -1
  48. package/dist/src/specification/v4/controls/ObjectPageFooter.d.ts +2 -2
  49. package/dist/src/specification/v4/controls/ObjectPageHeaderSection.d.ts +2 -14
  50. package/dist/src/specification/v4/controls/ObjectPageSection.d.ts +7 -7
  51. package/dist/src/specification/v4/controls/ObjectPageTable.d.ts +5 -6
  52. package/dist/src/specification/v4/controls/Table.d.ts +2 -7
  53. package/dist/src/specification/v4/webapp/manifest/ManifestSettings.d.ts +59 -10
  54. package/dist/src/specification/v4/webapp/manifest/ManifestSettings.js +6 -0
  55. package/dist/src/specification/v4/webapp/manifest/ManifestSettings.js.map +1 -1
  56. package/dist/src/sync/common/appProvider.js.map +1 -1
  57. package/dist/src/sync/common/decoration/control.d.ts +11 -1
  58. package/dist/src/sync/common/decoration/control.js +29 -3
  59. package/dist/src/sync/common/decoration/control.js.map +1 -1
  60. package/dist/src/sync/common/decoration/factory.js +2 -4
  61. package/dist/src/sync/common/decoration/factory.js.map +1 -1
  62. package/dist/src/sync/common/generate/objectPage.d.ts +9 -0
  63. package/dist/src/sync/common/generate/objectPage.js +89 -43
  64. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  65. package/dist/src/sync/common/generate/utils.d.ts +33 -0
  66. package/dist/src/sync/common/generate/utils.js +123 -3
  67. package/dist/src/sync/common/generate/utils.js.map +1 -1
  68. package/dist/src/sync/common/i18n.json +2 -0
  69. package/dist/src/sync/common/import/utils.d.ts +8 -1
  70. package/dist/src/sync/common/import/utils.js +15 -4
  71. package/dist/src/sync/common/import/utils.js.map +1 -1
  72. package/dist/src/sync/common/importProject.js +13 -22
  73. package/dist/src/sync/common/importProject.js.map +1 -1
  74. package/dist/src/sync/common/types.d.ts +30 -16
  75. package/dist/src/sync/common/types.js +25 -1
  76. package/dist/src/sync/common/types.js.map +1 -1
  77. package/dist/src/sync/common/utils.d.ts +11 -3
  78. package/dist/src/sync/common/utils.js +147 -69
  79. package/dist/src/sync/common/utils.js.map +1 -1
  80. package/dist/src/sync/v2/export/controls/Action.d.ts +15 -0
  81. package/dist/src/sync/v2/export/controls/Action.js +68 -15
  82. package/dist/src/sync/v2/export/controls/Action.js.map +1 -1
  83. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +18 -6
  84. package/dist/src/sync/v2/export/controls/FilterBar.js +102 -65
  85. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -1
  86. package/dist/src/sync/v2/export/controls/FormAction.js +3 -2
  87. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -1
  88. package/dist/src/sync/v2/export/controls/Fragment.d.ts +1 -1
  89. package/dist/src/sync/v2/export/controls/Fragment.js +239 -164
  90. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  91. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +2 -2
  92. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +9 -9
  93. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -1
  94. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +5 -5
  95. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +15 -18
  96. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -1
  97. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +6 -4
  98. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -1
  99. package/dist/src/sync/v2/export/controls/TableColumn.d.ts +18 -2
  100. package/dist/src/sync/v2/export/controls/TableColumn.js +126 -1
  101. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -1
  102. package/dist/src/sync/v2/export/export.js +140 -112
  103. package/dist/src/sync/v2/export/export.js.map +1 -1
  104. package/dist/src/sync/v2/export/manifest.js +2 -5
  105. package/dist/src/sync/v2/export/manifest.js.map +1 -1
  106. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +2 -1
  107. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +3 -0
  108. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -1
  109. package/dist/src/sync/v2/export/pages/ListReport.d.ts +2 -1
  110. package/dist/src/sync/v2/export/pages/ListReport.js +3 -0
  111. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -1
  112. package/dist/src/sync/v2/export/pages/OverviewPage.d.ts +2 -1
  113. package/dist/src/sync/v2/export/pages/OverviewPage.js +32 -2
  114. package/dist/src/sync/v2/export/pages/OverviewPage.js.map +1 -1
  115. package/dist/src/sync/v2/export/view-controller-generator.d.ts +16 -21
  116. package/dist/src/sync/v2/export/view-controller-generator.js +20 -36
  117. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -1
  118. package/dist/src/sync/v2/generate/analyticalListReport.js +14 -6
  119. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  120. package/dist/src/sync/v2/generate/listReport.js +13 -4
  121. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  122. package/dist/src/sync/v2/generate/objectPage.d.ts +1 -5
  123. package/dist/src/sync/v2/generate/objectPage.js +16 -42
  124. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  125. package/dist/src/sync/v2/generate/utils.d.ts +22 -11
  126. package/dist/src/sync/v2/generate/utils.js +282 -110
  127. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  128. package/dist/src/sync/v2/import/common/index.d.ts +22 -4
  129. package/dist/src/sync/v2/import/common/index.js +237 -27
  130. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  131. package/dist/src/sync/v2/import/controls/table.js +3 -2
  132. package/dist/src/sync/v2/import/controls/table.js.map +1 -1
  133. package/dist/src/sync/v2/import/pages/analyticalListPage.js +36 -5
  134. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
  135. package/dist/src/sync/v2/import/pages/listReport.d.ts +0 -5
  136. package/dist/src/sync/v2/import/pages/listReport.js +21 -122
  137. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  138. package/dist/src/sync/v2/import/pages/objectPage.js +200 -107
  139. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  140. package/dist/src/sync/v2/import/utils.d.ts +4 -6
  141. package/dist/src/sync/v2/import/utils.js +43 -11
  142. package/dist/src/sync/v2/import/utils.js.map +1 -1
  143. package/dist/src/sync/v2/types.d.ts +8 -1
  144. package/dist/src/sync/v2/types.js +8 -1
  145. package/dist/src/sync/v2/types.js.map +1 -1
  146. package/dist/src/sync/v4/application.d.ts +1 -1
  147. package/dist/src/sync/v4/application.js +1 -1
  148. package/dist/src/sync/v4/application.js.map +1 -1
  149. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js +3 -3
  150. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js.map +1 -1
  151. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +3 -7
  152. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +2 -25
  153. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -1
  154. package/dist/src/sync/v4/export/controls/TableColumn.d.ts +1 -6
  155. package/dist/src/sync/v4/export/controls/TableColumn.js +0 -33
  156. package/dist/src/sync/v4/export/controls/TableColumn.js.map +1 -1
  157. package/dist/src/sync/v4/export/controls/ToolBar.d.ts +5 -1
  158. package/dist/src/sync/v4/export/controls/ToolBar.js +3 -0
  159. package/dist/src/sync/v4/export/controls/ToolBar.js.map +1 -1
  160. package/dist/src/sync/v4/export/export.js +20 -16
  161. package/dist/src/sync/v4/export/export.js.map +1 -1
  162. package/dist/src/sync/v4/export/manifest.d.ts +1 -1
  163. package/dist/src/sync/v4/export/manifest.js +43 -31
  164. package/dist/src/sync/v4/export/manifest.js.map +1 -1
  165. package/dist/src/sync/v4/export/pages/AnalyticalListPage.d.ts +2 -2
  166. package/dist/src/sync/v4/export/pages/ListReport.d.ts +2 -2
  167. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +2 -2
  168. package/dist/src/sync/v4/export/types.d.ts +3 -0
  169. package/dist/src/sync/v4/generate/generate.d.ts +4 -2
  170. package/dist/src/sync/v4/generate/generate.js +15 -6
  171. package/dist/src/sync/v4/generate/generate.js.map +1 -1
  172. package/dist/src/sync/v4/generate/listReport.d.ts +7 -6
  173. package/dist/src/sync/v4/generate/listReport.js +50 -34
  174. package/dist/src/sync/v4/generate/listReport.js.map +1 -1
  175. package/dist/src/sync/v4/generate/objectPage.js +94 -90
  176. package/dist/src/sync/v4/generate/objectPage.js.map +1 -1
  177. package/dist/src/sync/v4/import/pages/analyticalListPage.d.ts +2 -2
  178. package/dist/src/sync/v4/import/pages/analyticalListPage.js +0 -1
  179. package/dist/src/sync/v4/import/pages/analyticalListPage.js.map +1 -1
  180. package/dist/src/sync/v4/import/pages/listReport.d.ts +3 -3
  181. package/dist/src/sync/v4/import/pages/listReport.js +34 -23
  182. package/dist/src/sync/v4/import/pages/listReport.js.map +1 -1
  183. package/dist/src/sync/v4/import/pages/objectPage.d.ts +2 -2
  184. package/dist/src/sync/v4/import/pages/objectPage.js +21 -16
  185. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -1
  186. package/dist/src/sync/v4/import/utils.js +6 -5
  187. package/dist/src/sync/v4/import/utils.js.map +1 -1
  188. package/dist/src/sync/v4/utils/utils.d.ts +14 -1
  189. package/dist/src/sync/v4/utils/utils.js +62 -26
  190. package/dist/src/sync/v4/utils/utils.js.map +1 -1
  191. package/dist/test/unit/utils.test.d.ts +1 -1
  192. package/package.json +5 -8
  193. package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +0 -11
  194. package/dist/src/specification/v2/controls/ObjectPageFooter.js.map +0 -1
  195. package/dist/src/specification/v2/controls/ObjectPageFooterAction.d.ts +0 -28
  196. package/dist/src/specification/v2/controls/ObjectPageFooterAction.js +0 -3
  197. package/dist/src/specification/v2/controls/ObjectPageFooterAction.js.map +0 -1
  198. package/dist/test/test-utils/metadataParser.d.ts +0 -19
@@ -6,13 +6,24 @@ export declare enum ExportArtifacts {
6
6
  manifest = "manifest"
7
7
  }
8
8
  export declare enum DirName {
9
+ Sapux = "src",
9
10
  Schemas = ".schemas",
10
- Pages = "pages"
11
+ Pages = "pages",
12
+ Webapp = "webapp",
13
+ Temp = ".tmp",
14
+ Changes = "changes",
15
+ LocalService = "localService",
16
+ Controller = "controller",
17
+ View = "view",
18
+ Fragment = "fragment",
19
+ Ext = "ext",
20
+ VSCode = ".vscode"
11
21
  }
12
22
  export declare enum FileName {
13
23
  App = "app.json"
14
24
  }
15
25
  export declare const FacetTitlePrefix = "Facet ID: ";
26
+ export declare const ActionTitlePrefix = "Action ID: ";
16
27
  export interface ExportResults {
17
28
  flexChanges: string[];
18
29
  manifest: Manifest;
@@ -97,7 +108,7 @@ export declare type ManifestPath = (pageKeys?: string[], manifest?: Manifest, ..
97
108
  export interface ManifestConverter {
98
109
  path: ManifestPath;
99
110
  key?: string;
100
- import?: ((manifestSection: unknown, sectionId?: string) => unknown) | boolean;
111
+ import?: ((manifestSection: unknown, sectionId?: string, propertyKey?: string) => unknown) | boolean;
101
112
  export?: ((manifestSection: unknown, configObject: unknown, key: string, manifestKey?: string) => unknown) | boolean;
102
113
  delete?: (manifestSection: unknown, configObject: unknown, key: string, manifestKey: string) => unknown;
103
114
  }
@@ -136,19 +147,6 @@ export interface Deprecated {
136
147
  since: string;
137
148
  text?: string;
138
149
  }
139
- export interface ServiceMetadata {
140
- $EntityContainer: string;
141
- $Reference: {
142
- [url: string]: {
143
- $Include: {
144
- $Alias: string;
145
- $Namespace: string;
146
- };
147
- };
148
- };
149
- $Version: string;
150
- [key: string]: any;
151
- }
152
150
  export interface FileData {
153
151
  dataSourceUri: string;
154
152
  fileContent: string;
@@ -203,6 +201,10 @@ export interface SchemaFilePath {
203
201
  filename: string;
204
202
  path: string;
205
203
  }
204
+ export interface ObjectPageSectionData {
205
+ target: string;
206
+ key?: string;
207
+ }
206
208
  export declare const BindingPropertyRegexAsString = "^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$";
207
209
  export declare enum ViewTemplateType {
208
210
  ResponsiveTableColumnsExtension = "ResponsiveTableColumnsExtension",
@@ -211,6 +213,19 @@ export declare enum ViewTemplateType {
211
213
  GridTableColumnsExtension = "GridTableColumnsExtension",
212
214
  ResponsiveTableCellsExtension = "ResponsiveTableCellsExtension"
213
215
  }
216
+ export declare enum DefinitionName {
217
+ TableColumn = "TableColumn",
218
+ ObjectPageTable = "ObjectPageTable",
219
+ ObjectPageTableColumn = "ObjectPageTableColumn",
220
+ ToolBarLR = "ToolBar<LineItems>",
221
+ CustomColumns = "TableCustomColumns",
222
+ CustomColumn = "TableCustomColumn",
223
+ CustomColumnOP = "TableCustomColumnOP",
224
+ Position = "Position",
225
+ PositionOP = "PositionOP",
226
+ ListReportFilterBar = "ListReportFilterBar",
227
+ AnalyticalListPageFilterBar = "AnalyticalListPageFilterBar"
228
+ }
214
229
  export declare const METADATAPATH = "webapp/localService/metadata.xml";
215
230
  export declare const MANIFESTPATH = "webapp/manifest.json";
216
231
  export declare const VOCWITHSLASH = "/@com.sap.vocabularies";
@@ -219,5 +234,4 @@ export declare const UIVOCABULARY = "com.sap.vocabularies.UI.v1";
219
234
  export declare const QUICKVARPATH = "/quickVariantSelection";
220
235
  export declare const QUICKVARPATHX = "/quickVariantSelectionX";
221
236
  export declare const DATESETTINGSPATH = "/filterSettings/dateSettings";
222
- export declare const TOOLBAR = "ToolBar<LineItems>";
223
237
  export declare const FRAGMENTNAMEPART = ".fragment.";
@@ -7,14 +7,25 @@ var ExportArtifacts;
7
7
  })(ExportArtifacts = exports.ExportArtifacts || (exports.ExportArtifacts = {}));
8
8
  var DirName;
9
9
  (function (DirName) {
10
+ DirName["Sapux"] = "src";
10
11
  DirName["Schemas"] = ".schemas";
11
12
  DirName["Pages"] = "pages";
13
+ DirName["Webapp"] = "webapp";
14
+ DirName["Temp"] = ".tmp";
15
+ DirName["Changes"] = "changes";
16
+ DirName["LocalService"] = "localService";
17
+ DirName["Controller"] = "controller";
18
+ DirName["View"] = "view";
19
+ DirName["Fragment"] = "fragment";
20
+ DirName["Ext"] = "ext";
21
+ DirName["VSCode"] = ".vscode";
12
22
  })(DirName = exports.DirName || (exports.DirName = {}));
13
23
  var FileName;
14
24
  (function (FileName) {
15
25
  FileName["App"] = "app.json";
16
26
  })(FileName = exports.FileName || (exports.FileName = {}));
17
27
  exports.FacetTitlePrefix = 'Facet ID: ';
28
+ exports.ActionTitlePrefix = 'Action ID: ';
18
29
  var SectionType;
19
30
  (function (SectionType) {
20
31
  SectionType["Section"] = "Section";
@@ -69,6 +80,20 @@ var ViewTemplateType;
69
80
  ViewTemplateType["GridTableColumnsExtension"] = "GridTableColumnsExtension";
70
81
  ViewTemplateType["ResponsiveTableCellsExtension"] = "ResponsiveTableCellsExtension";
71
82
  })(ViewTemplateType = exports.ViewTemplateType || (exports.ViewTemplateType = {}));
83
+ var DefinitionName;
84
+ (function (DefinitionName) {
85
+ DefinitionName["TableColumn"] = "TableColumn";
86
+ DefinitionName["ObjectPageTable"] = "ObjectPageTable";
87
+ DefinitionName["ObjectPageTableColumn"] = "ObjectPageTableColumn";
88
+ DefinitionName["ToolBarLR"] = "ToolBar<LineItems>";
89
+ DefinitionName["CustomColumns"] = "TableCustomColumns";
90
+ DefinitionName["CustomColumn"] = "TableCustomColumn";
91
+ DefinitionName["CustomColumnOP"] = "TableCustomColumnOP";
92
+ DefinitionName["Position"] = "Position";
93
+ DefinitionName["PositionOP"] = "PositionOP";
94
+ DefinitionName["ListReportFilterBar"] = "ListReportFilterBar";
95
+ DefinitionName["AnalyticalListPageFilterBar"] = "AnalyticalListPageFilterBar";
96
+ })(DefinitionName = exports.DefinitionName || (exports.DefinitionName = {}));
72
97
  exports.METADATAPATH = 'webapp/localService/metadata.xml';
73
98
  exports.MANIFESTPATH = 'webapp/manifest.json';
74
99
  exports.VOCWITHSLASH = '/@com.sap.vocabularies';
@@ -77,6 +102,5 @@ exports.UIVOCABULARY = 'com.sap.vocabularies.UI.v1';
77
102
  exports.QUICKVARPATH = '/quickVariantSelection';
78
103
  exports.QUICKVARPATHX = '/quickVariantSelectionX';
79
104
  exports.DATESETTINGSPATH = '/filterSettings/dateSettings';
80
- exports.TOOLBAR = 'ToolBar<LineItems>';
81
105
  exports.FRAGMENTNAMEPART = '.fragment.';
82
106
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/sync/common/types.ts"],"names":[],"mappings":";;AAIA,IAAY,eAGX;AAHD,WAAY,eAAe;IACvB,gCAAa,CAAA;IACb,wCAAqB,CAAA;AACzB,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B;AACD,IAAY,OAGX;AAHD,WAAY,OAAO;IACf,+BAAoB,CAAA;IACpB,0BAAe,CAAA;AACnB,CAAC,EAHW,OAAO,GAAP,eAAO,KAAP,eAAO,QAGlB;AACD,IAAY,QAEX;AAFD,WAAY,QAAQ;IAChB,4BAAgB,CAAA;AACpB,CAAC,EAFW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAEnB;AACY,QAAA,gBAAgB,GAAG,YAAY,CAAC;AAQ7C,IAAY,WAGX;AAHD,WAAY,WAAW;IACnB,kCAAmB,CAAA;IACnB,8CAA+B,CAAA;AACnC,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAED,IAAY,YAIX;AAJD,WAAY,YAAY;IACpB,qCAAqB,CAAA;IACrB,yCAAyB,CAAA;IACzB,yCAAyB,CAAA;AAC7B,CAAC,EAJW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAIvB;AAED,IAAY,WAoBX;AApBD,WAAY,WAAW;IACnB,oCAAqB,CAAA;IACrB,2CAA4B,CAAA;IAC5B,+DAAgD,CAAA;IAChD,2EAA4D,CAAA;IAC5D,+DAAgD,CAAA;IAChD,8DAA+C,CAAA;IAC/C,sCAAuB,CAAA;IACvB,4DAA6C,CAAA;IAC7C,sCAAuB,CAAA;IACvB,qFAAsE,CAAA;IACtE,kEAAmD,CAAA;IACnD,6DAA8C,CAAA;IAC9C,6DAA8C,CAAA;IAC9C,qEAAsD,CAAA;IACtD,gDAAiC,CAAA;IACjC,0CAA2B,CAAA;IAC3B,gDAAiC,CAAA;IACjC,qDAAsC,CAAA;IACtC,2DAA4C,CAAA;AAChD,CAAC,EApBW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAoBtB;AA0HD,IAAY,SAUX;AAVD,WAAY,SAAS;IACjB,kCAAqB,CAAA;IACrB,gDAAmC,CAAA;IACnC,4BAAe,CAAA;IACf,0BAAa,CAAA;IACb,8CAAiC,CAAA;IACjC,oCAAuB,CAAA;IACvB,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;IACnB,yBAAY,CAAA;AAChB,CAAC,EAVW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAUpB;AAgDY,QAAA,4BAA4B,GAAG,6CAA6C,CAAC;AAE1F,IAAY,gBAMX;AAND,WAAY,gBAAgB;IACxB,uFAAmE,CAAA;IACnE,uFAAmE,CAAA;IACnE,2EAAuD,CAAA;IACvD,2EAAuD,CAAA;IACvD,mFAA+D,CAAA;AACnE,CAAC,EANW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAM3B;AAEY,QAAA,YAAY,GAAG,kCAAkC,CAAC;AAClD,QAAA,YAAY,GAAG,sBAAsB,CAAC;AACtC,QAAA,YAAY,GAAG,wBAAwB,CAAC;AACxC,QAAA,aAAa,GAAG,yBAAyB,CAAC;AAC1C,QAAA,YAAY,GAAG,4BAA4B,CAAC;AAC5C,QAAA,YAAY,GAAG,wBAAwB,CAAC;AACxC,QAAA,aAAa,GAAG,yBAAyB,CAAC;AAC1C,QAAA,gBAAgB,GAAG,8BAA8B,CAAC;AAClD,QAAA,OAAO,GAAG,oBAAoB,CAAC;AAC/B,QAAA,gBAAgB,GAAG,YAAY,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/sync/common/types.ts"],"names":[],"mappings":"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"}
@@ -85,11 +85,12 @@ export declare function getSectionFacet(facetDefinition: AnnotationTerm<Collecti
85
85
  * Finds the alias for a given namespace in the references' section of the converted service metadata
86
86
  * @param {object} exportResultManifest - manifest that is being modified during export
87
87
  * @param {string} path - path of the property in the manifest
88
- * @param {string} targetAnnotation
89
- * @param {string} targetAnnotationEncoded
88
+ * @param {string} targetAnnotation - target annotation (optional)
89
+ * @param {string} targetAnnotationEncoded - target annotation in its encoded form, as used in manifest settings
90
+ * @param {boolean} importScenario - indicates if the function is called for the import, else it is the export
90
91
  * @returns returns section of the manifest based on path, generates an empty object in case it does not exists
91
92
  */
92
- export declare const getManifestSectionByPathV4: (exportResultManifest: object, path: string, targetAnnotation?: string, targetAnnotationEncoded?: string) => object;
93
+ export declare const getManifestSectionByPathV4: (exportResultManifest: object, path: string, targetAnnotation?: string, targetAnnotationEncoded?: string, importScenario?: boolean) => object;
93
94
  export declare function getSchemaKeyOfLineItemRecord(lineItemRecord: DataFieldAbstractTypes): string;
94
95
  /**
95
96
  * Retrieve header facet configurations that can be used to generate ObjectPage schemas
@@ -141,6 +142,13 @@ export declare function getTemplateTypeFromManifest(manifest: Manifest, fioriEle
141
142
  * @param facetKey - key of the facet
142
143
  */
143
144
  export declare function addSectionTitleAndDescription(facet: FacetConfig, section: object, facetKey: string): void;
145
+ /**
146
+ * Adds target title or description to a section or header section in an app schema
147
+ * @param facet - intermediate facet structure comprising annotation information
148
+ * @param section - section in the app schema
149
+ * @param facetKey - key of the facet
150
+ */
151
+ export declare function addTargetTitleAndSectionDescription(facet: FacetConfig, section: object, facetKey: string): void;
144
152
  /**
145
153
  * Creates a default object for a new section or subsection, and adds the ID as title if present.
146
154
  * @param facet Facet configuration, to be analyzed
@@ -362,21 +362,24 @@ exports.getSectionFacet = getSectionFacet;
362
362
  * Finds the alias for a given namespace in the references' section of the converted service metadata
363
363
  * @param {object} exportResultManifest - manifest that is being modified during export
364
364
  * @param {string} path - path of the property in the manifest
365
- * @param {string} targetAnnotation
366
- * @param {string} targetAnnotationEncoded
365
+ * @param {string} targetAnnotation - target annotation (optional)
366
+ * @param {string} targetAnnotationEncoded - target annotation in its encoded form, as used in manifest settings
367
+ * @param {boolean} importScenario - indicates if the function is called for the import, else it is the export
367
368
  * @returns returns section of the manifest based on path, generates an empty object in case it does not exists
368
369
  */
369
- exports.getManifestSectionByPathV4 = (exportResultManifest, path, targetAnnotation, targetAnnotationEncoded) => {
370
+ exports.getManifestSectionByPathV4 = (exportResultManifest, path, targetAnnotation, targetAnnotationEncoded, importScenario = false) => {
370
371
  let exportResultSection = exportResultManifest;
371
- path.split('/').forEach(function (element) {
372
- if (targetAnnotationEncoded && targetAnnotationEncoded === element) {
373
- element = targetAnnotation;
374
- }
375
- if (!exportResultSection[element]) {
376
- exportResultSection[element] = {};
372
+ for (const element of path.split('/')) {
373
+ const decodedElement = targetAnnotationEncoded && targetAnnotationEncoded === element ? targetAnnotation : element;
374
+ if (!exportResultSection[decodedElement]) {
375
+ if (importScenario) {
376
+ exportResultSection = undefined;
377
+ break;
378
+ }
379
+ exportResultSection[decodedElement] = {};
377
380
  }
378
- exportResultSection = exportResultSection[element];
379
- });
381
+ exportResultSection = exportResultSection[decodedElement];
382
+ }
380
383
  return exportResultSection;
381
384
  };
382
385
  function getSchemaKeyOfLineItemRecord(lineItemRecord) {
@@ -404,7 +407,7 @@ function getSchemaKeyOfLineItemRecord(lineItemRecord) {
404
407
  break;
405
408
  case "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */:
406
409
  if (lineItemRecord.Inline) {
407
- schemaKey = 'DataFieldForAction:::sAction::' + lineItemRecord.Action;
410
+ schemaKey = `DataFieldForAction:::sAction::${prepareRef(lineItemRecord.Action)}`;
408
411
  }
409
412
  break;
410
413
  case "com.sap.vocabularies.UI.v1.DataFieldWithIntentBasedNavigation" /* DataFieldWithIntentBasedNavigation */:
@@ -419,11 +422,7 @@ function getSchemaKeyOfLineItemRecord(lineItemRecord) {
419
422
  break;
420
423
  case "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */:
421
424
  if (lineItemRecord.Inline) {
422
- schemaKey =
423
- 'DataFieldForIntentBasedNavigation:::sSemanticObject::' +
424
- lineItemRecord.SemanticObject +
425
- ':::sAction::' +
426
- lineItemRecord.Action;
425
+ schemaKey = `DataFieldForIntentBasedNavigation:::sSemanticObject::${lineItemRecord.SemanticObject}:::sAction::${prepareRef(lineItemRecord.Action)}`;
427
426
  }
428
427
  break;
429
428
  case "com.sap.vocabularies.UI.v1.DataFieldWithNavigationPath" /* DataFieldWithNavigationPath */:
@@ -438,64 +437,130 @@ function getSchemaKeyOfLineItemRecord(lineItemRecord) {
438
437
  }
439
438
  exports.getSchemaKeyOfLineItemRecord = getSchemaKeyOfLineItemRecord;
440
439
  /**
441
- * Evaluates the target annotation of a reference facet and actualizes the facets for the config
442
- * @param {AnnotationTerm} annotationRecord - the actual annotation record
443
- * @param {FacetConfigs} facets - list of facets in config format, to be updated
440
+ * Determines if type of given annotation term is of UIAnnotationTerm
441
+ * @param {string} path path in manifest
442
+ * @param {string} alias for a given namespace
444
443
  * @param {EntityType} entityType - the entity type
445
- * @param {ConverterOutput} oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
446
- * @param {FioriElementsVersion} oDataVersion - OData version
447
- * @param {ExtensionLogger} logger - Logger class for logging messages
444
+ * @returns UI annotation term type
448
445
  */
449
- function evaluateTargetAnnotation(section, annotationRecord, facets, entityType, oDataServiceAVT, oDataVersion = common_1.FioriElementsVersion.v2, logger) {
450
- var _a, _b, _c, _d, _e, _f;
451
- const alias = findAlias(types_1.UIVOCABULARY, oDataServiceAVT);
452
- let path = section ? section.key : '';
453
- const targetEntityType = section.entityType;
454
- let annotation, targetAnnotation;
446
+ function getUIAnnotationTerm(path, alias, entityType) {
455
447
  if (path.includes("com.sap.vocabularies.UI.v1.Chart" /* Chart */) || path.includes(alias + '.Chart')) {
456
- facets[path] = { base: types_1.FacetBase.Chart };
457
- facets[path].entityType = targetEntityType;
448
+ return "com.sap.vocabularies.UI.v1.Chart" /* Chart */;
458
449
  }
459
450
  else if (path.includes("com.sap.vocabularies.UI.v1.Identification" /* Identification */) || path.includes(alias + '.Identification')) {
460
- annotation = path.split('.')[path.split('.').length - 1];
461
- targetAnnotation = targetEntityType.annotations[alias][annotation];
462
- facets[path] = { base: types_1.FacetBase.Identification };
463
- facets[path].entityType = targetEntityType;
464
- facets[path].target = targetAnnotation;
465
- }
466
- else if (entityType && (path.includes("com.sap.vocabularies.UI.v1.LineItem" /* LineItem */) || path.includes(alias + '.LineItem'))) {
467
- if (!path.includes("com.sap.vocabularies.UI.v1.LineItem" /* LineItem */) && path.includes('.LineItem')) {
468
- const pathParts = path.split('::');
469
- pathParts[pathParts.length - 1] = `@${"com.sap.vocabularies.UI.v1.LineItem" /* LineItem */}`;
470
- path = pathParts.join('::');
471
- }
472
- facets[path] = { base: types_1.FacetBase.LineItem };
473
- facets[path].target = (_a = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _a === void 0 ? void 0 : _a.$target;
474
- facets[path].entityType = targetEntityType;
451
+ return "com.sap.vocabularies.UI.v1.Identification" /* Identification */;
452
+ }
453
+ else if ((entityType && path.includes("com.sap.vocabularies.UI.v1.LineItem" /* LineItem */)) || path.includes(alias + '.LineItem')) {
454
+ return "com.sap.vocabularies.UI.v1.LineItem" /* LineItem */;
475
455
  }
476
456
  else if (path.includes("com.sap.vocabularies.UI.v1.FieldGroup" /* FieldGroup */) || path.includes(alias + '.FieldGroup')) {
477
- facets[path] = { base: types_1.FacetBase.Form };
478
- facets[path].target = (_b = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _b === void 0 ? void 0 : _b.$target;
479
- facets[path].entityType = targetEntityType;
457
+ return "com.sap.vocabularies.UI.v1.FieldGroup" /* FieldGroup */;
480
458
  }
481
459
  else if (path.includes("com.sap.vocabularies.UI.v1.DataPoint" /* DataPoint */) || path.includes(alias + '.DataPoint')) {
482
- facets[path] = { base: types_1.FacetBase.DataPoint };
483
- facets[path].target = (_c = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _c === void 0 ? void 0 : _c.$target;
484
- facets[path].entityType = targetEntityType;
485
- facets[path].Label = (_d = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _d === void 0 ? void 0 : _d.$target['Title'];
460
+ return "com.sap.vocabularies.UI.v1.DataPoint" /* DataPoint */;
486
461
  }
487
- else if (path.includes('com.sap.vocabularies.Communication.v1.Contact') || path.includes(alias + '.Contact')) {
488
- facets[path] = { base: types_1.FacetBase.Contact };
489
- facets[path].target = (_e = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _e === void 0 ? void 0 : _e.$target;
490
- facets[path].entityType = targetEntityType;
462
+ else {
463
+ return undefined;
464
+ }
465
+ }
466
+ /**
467
+ * Determines if type of given annotation term is of CommunicationAnnotationTerm
468
+ * @param {string} path path in manifest
469
+ * @param {string} alias for a given namespace
470
+ * @param {EntityType} entityType - the entity type
471
+ * @returns Communication annotation term type
472
+ */
473
+ function getCommunicationAnnotationTerm(path, alias) {
474
+ if (path.includes('com.sap.vocabularies.Communication.v1.Contact') || path.includes(alias + '.Contact')) {
475
+ return "com.sap.vocabularies.Communication.v1.Contact" /* Contact */;
491
476
  }
492
477
  else if (path.includes('com.sap.vocabularies.Communication.v1.Address') || path.includes(alias + '.Address')) {
493
- facets[path] = { base: types_1.FacetBase.Address };
494
- facets[path].target = (_f = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _f === void 0 ? void 0 : _f.$target;
495
- facets[path].entityType = targetEntityType;
478
+ return "com.sap.vocabularies.Communication.v1.Address" /* Address */;
496
479
  }
497
480
  else {
498
- facets[path] = { base: types_1.FacetBase.Unknown };
481
+ return undefined;
482
+ }
483
+ }
484
+ /**
485
+ * Determines the type of given annotation term
486
+ * @param {string} path path in manifest
487
+ * @param {string} alias for a given namespace
488
+ * @param {EntityType} entityType - the entity type
489
+ * @returns annotation term type
490
+ */
491
+ function getAnnotationTerm(path, alias, entityType) {
492
+ return getUIAnnotationTerm(path, alias, entityType) || getCommunicationAnnotationTerm(path, alias);
493
+ }
494
+ /**
495
+ * Evaluates the target annotation of a reference facet and actualizes the facets for the config
496
+ * @param {AnnotationTerm} annotationRecord - the actual annotation record
497
+ * @param {FacetConfigs} facets - list of facets in config format, to be updated
498
+ * @param {EntityType} entityType - the entity type
499
+ * @param {ConverterOutput} oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
500
+ * @param {FioriElementsVersion} oDataVersion - OData version
501
+ * @param {ExtensionLogger} logger - Logger class for logging messages
502
+ */
503
+ function evaluateTargetAnnotation(section, annotationRecord, facets, entityType, oDataServiceAVT, oDataVersion = common_1.FioriElementsVersion.v2, logger) {
504
+ var _a, _b, _c, _d, _e, _f, _g;
505
+ const alias = findAlias(types_1.UIVOCABULARY, oDataServiceAVT);
506
+ let path = section ? section.key : '';
507
+ const targetEntityType = section.entityType;
508
+ const annotationTerm = getAnnotationTerm(path, alias, entityType);
509
+ let annotation, targetAnnotation;
510
+ switch (annotationTerm) {
511
+ case "com.sap.vocabularies.UI.v1.Chart" /* Chart */: {
512
+ facets[path] = { base: types_1.FacetBase.Chart };
513
+ facets[path].target = (_a = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _a === void 0 ? void 0 : _a.$target;
514
+ facets[path].entityType = targetEntityType;
515
+ break;
516
+ }
517
+ case "com.sap.vocabularies.UI.v1.Identification" /* Identification */: {
518
+ annotation = path.split('.')[path.split('.').length - 1];
519
+ targetAnnotation = targetEntityType.annotations[alias][annotation];
520
+ facets[path] = { base: types_1.FacetBase.Identification };
521
+ facets[path].entityType = targetEntityType;
522
+ facets[path].target = targetAnnotation;
523
+ break;
524
+ }
525
+ case "com.sap.vocabularies.UI.v1.LineItem" /* LineItem */: {
526
+ if (!path.includes("com.sap.vocabularies.UI.v1.LineItem" /* LineItem */) && path.includes('.LineItem')) {
527
+ const pathParts = path.split('::');
528
+ pathParts[pathParts.length - 1] = `@${"com.sap.vocabularies.UI.v1.LineItem" /* LineItem */}`;
529
+ path = pathParts.join('::');
530
+ }
531
+ facets[path] = { base: types_1.FacetBase.LineItem };
532
+ facets[path].target = (_b = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _b === void 0 ? void 0 : _b.$target;
533
+ facets[path].entityType = targetEntityType;
534
+ break;
535
+ }
536
+ case "com.sap.vocabularies.UI.v1.FieldGroup" /* FieldGroup */: {
537
+ facets[path] = { base: types_1.FacetBase.Form };
538
+ facets[path].target = (_c = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _c === void 0 ? void 0 : _c.$target;
539
+ facets[path].entityType = targetEntityType;
540
+ break;
541
+ }
542
+ case "com.sap.vocabularies.UI.v1.DataPoint" /* DataPoint */: {
543
+ facets[path] = { base: types_1.FacetBase.DataPoint };
544
+ facets[path].target = (_d = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _d === void 0 ? void 0 : _d.$target;
545
+ facets[path].entityType = targetEntityType;
546
+ facets[path].Label = (_e = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _e === void 0 ? void 0 : _e.$target['Title'];
547
+ break;
548
+ }
549
+ case "com.sap.vocabularies.Communication.v1.Contact" /* Contact */: {
550
+ facets[path] = { base: types_1.FacetBase.Contact };
551
+ facets[path].target = (_f = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _f === void 0 ? void 0 : _f.$target;
552
+ facets[path].entityType = targetEntityType;
553
+ break;
554
+ }
555
+ case "com.sap.vocabularies.Communication.v1.Address" /* Address */: {
556
+ facets[path] = { base: types_1.FacetBase.Address };
557
+ facets[path].target = (_g = annotationRecord === null || annotationRecord === void 0 ? void 0 : annotationRecord.Target) === null || _g === void 0 ? void 0 : _g.$target;
558
+ facets[path].entityType = targetEntityType;
559
+ break;
560
+ }
561
+ default: {
562
+ facets[path] = { base: types_1.FacetBase.Unknown };
563
+ }
499
564
  }
500
565
  if (facets[path]) {
501
566
  facets[path].annotationPath = `/${annotationRecord.fullyQualifiedName.replace('@com.sap.vocabularies', types_1.VOCWITHSLASH)}`;
@@ -753,7 +818,7 @@ function addSectionTitleAndDescription(facet, section, facetKey) {
753
818
  section['title'] = types_1.FacetTitlePrefix + facet.ID;
754
819
  }
755
820
  else {
756
- section['title'] = facetKey.substr(facetKey.lastIndexOf('.') + 1);
821
+ section['title'] = facetKey.replace(/@com.sap/g, 'com.sap');
757
822
  }
758
823
  // Description
759
824
  if (facet === null || facet === void 0 ? void 0 : facet.Label) {
@@ -767,6 +832,23 @@ function addSectionTitleAndDescription(facet, section, facetKey) {
767
832
  }
768
833
  }
769
834
  exports.addSectionTitleAndDescription = addSectionTitleAndDescription;
835
+ /**
836
+ * Adds target title or description to a section or header section in an app schema
837
+ * @param facet - intermediate facet structure comprising annotation information
838
+ * @param section - section in the app schema
839
+ * @param facetKey - key of the facet
840
+ */
841
+ function addTargetTitleAndSectionDescription(facet, section, facetKey) {
842
+ var _a, _b, _c, _d;
843
+ addSectionTitleAndDescription(facet, section, facetKey);
844
+ if ((_a = facet === null || facet === void 0 ? void 0 : facet.target) === null || _a === void 0 ? void 0 : _a['Title']) {
845
+ section['description'] = (_b = facet === null || facet === void 0 ? void 0 : facet.target) === null || _b === void 0 ? void 0 : _b['Title'];
846
+ }
847
+ else if ((_c = facet === null || facet === void 0 ? void 0 : facet.target) === null || _c === void 0 ? void 0 : _c['Description']) {
848
+ section['description'] = (_d = facet === null || facet === void 0 ? void 0 : facet.target) === null || _d === void 0 ? void 0 : _d['Description'];
849
+ }
850
+ }
851
+ exports.addTargetTitleAndSectionDescription = addTargetTitleAndSectionDescription;
770
852
  /**
771
853
  * Creates a default object for a new section or subsection, and adds the ID as title if present.
772
854
  * @param facet Facet configuration, to be analyzed
@@ -911,10 +993,6 @@ function generatePageId(pageType, entitySet, navigationProperty, viewId) {
911
993
  if (entitySet) {
912
994
  parts.push(entitySet);
913
995
  }
914
- // Page navigation - Optional
915
- if (navigationProperty) {
916
- parts.push(navigationProperty);
917
- }
918
996
  return parts.join('_');
919
997
  }
920
998
  exports.generatePageId = generatePageId;
@@ -965,7 +1043,7 @@ function fillArrayFromPropertyDefinition(propertyDefinition, currentConfigObject
965
1043
  * @returns {NextDefinition} - Next target definition to process
966
1044
  */
967
1045
  function determineNextDefinitionFromDefinitionArray(definitionArray, appSchema, title, currentConfigObject, key, factory, pageType, propertyDefinition) {
968
- var _a, _b, _c;
1046
+ var _a, _b, _c, _d;
969
1047
  let nextDefinition = {
970
1048
  configObject: undefined,
971
1049
  targetDefinition: {},
@@ -990,7 +1068,7 @@ function determineNextDefinitionFromDefinitionArray(definitionArray, appSchema,
990
1068
  : title;
991
1069
  const factoryKey = lastDefinition === null || lastDefinition === void 0 ? void 0 : lastDefinition.split('<')[0];
992
1070
  const targetObject = currentConfigObject ? currentConfigObject : {};
993
- nextDefinition.configObject = factory.createInstance(pageType, factoryKey, targetObject, nextDefinition.targetDefinition['controlProperty']);
1071
+ nextDefinition.configObject = factory.createInstance(pageType, factoryKey, targetObject, (_d = nextDefinition === null || nextDefinition === void 0 ? void 0 : nextDefinition.targetDefinition) === null || _d === void 0 ? void 0 : _d['controlProperty']);
994
1072
  }
995
1073
  else {
996
1074
  //e.g. sections ==> loop over all properties = subsections or other
@@ -1027,7 +1105,7 @@ function getNextTargetDefinition(appSchema, title, currentConfigObject, property
1027
1105
  }
1028
1106
  exports.getNextTargetDefinition = getNextTargetDefinition;
1029
1107
  function prepareRef(refInput) {
1030
- return refInput.replace('#', '::').replace(/\//g, '::');
1108
+ return refInput.replace('#', '::').replace(/\//g, ':2f');
1031
1109
  }
1032
1110
  exports.prepareRef = prepareRef;
1033
1111
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/sync/common/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/sync/common/utils.ts"],"names":[],"mappings":"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"}