@sap/ux-specification 1.142.4 → 1.142.5

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 (276) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/documentation/v2/v2-AnalyticalListPage.html +2 -2
  3. package/dist/documentation/v2/v2-ApplicationV2.html +2 -2
  4. package/dist/documentation/v2/v2-ListReport.html +2 -2
  5. package/dist/documentation/v2/v2-ListReportNew.html +2 -2
  6. package/dist/documentation/v2/v2-ObjectPage.html +2 -2
  7. package/dist/documentation/v2/v2-OverviewPage.html +2 -2
  8. package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
  9. package/dist/documentation/v4/v4-BuildingBlocks.html +2 -2
  10. package/dist/documentation/v4/v4-FreestylePage.html +2 -2
  11. package/dist/documentation/v4/v4-ListReport.html +2 -2
  12. package/dist/documentation/v4/v4-ObjectPage.html +2 -2
  13. package/dist/index-min.js +317 -312
  14. package/dist/index-min.js.map +4 -4
  15. package/dist/schemas/v2/ListReportNewConfig.json +202 -7
  16. package/dist/schemas/v4/ApplicationV4.json +14 -0
  17. package/dist/schemas/v4/BuildingBlocksConfig.json +50 -20
  18. package/dist/schemas/v4/ObjectPageConfig.json +112 -728
  19. package/dist/specification/package.json +8 -8
  20. package/dist/specification/scripts/generate-validity-report.js +1 -1
  21. package/dist/specification/scripts/generate-validity-report.js.map +1 -1
  22. package/dist/specification/scripts/macros/corrections.d.ts.map +1 -1
  23. package/dist/specification/scripts/macros/corrections.js +15 -0
  24. package/dist/specification/scripts/macros/corrections.js.map +1 -1
  25. package/dist/specification/scripts/macros/schema.d.ts.map +1 -1
  26. package/dist/specification/scripts/macros/schema.js +23 -10
  27. package/dist/specification/scripts/macros/schema.js.map +1 -1
  28. package/dist/specification/scripts/schema/to-json-schema.js +1 -1
  29. package/dist/specification/scripts/schema/to-json-schema.js.map +1 -1
  30. package/dist/specification/src/api.d.ts.map +1 -1
  31. package/dist/specification/src/api.js +39 -3
  32. package/dist/specification/src/api.js.map +1 -1
  33. package/dist/specification/src/ftfs/ftfs.d.ts +8 -0
  34. package/dist/specification/src/ftfs/ftfs.d.ts.map +1 -1
  35. package/dist/specification/src/ftfs/ftfs.js +1 -0
  36. package/dist/specification/src/ftfs/ftfs.js.map +1 -1
  37. package/dist/specification/src/ftfs/index.d.ts +1 -1
  38. package/dist/specification/src/ftfs/index.d.ts.map +1 -1
  39. package/dist/specification/src/ftfs/index.js +2 -1
  40. package/dist/specification/src/ftfs/index.js.map +1 -1
  41. package/dist/specification/src/ftfs/parser/model/TreeModel.d.ts.map +1 -1
  42. package/dist/specification/src/ftfs/parser/model/TreeModel.js +3 -1
  43. package/dist/specification/src/ftfs/parser/model/TreeModel.js.map +1 -1
  44. package/dist/specification/src/sync/common/decoration/Decorator.d.ts +91 -0
  45. package/dist/specification/src/sync/common/decoration/Decorator.d.ts.map +1 -0
  46. package/dist/specification/src/sync/common/decoration/Decorator.js +139 -0
  47. package/dist/specification/src/sync/common/decoration/Decorator.js.map +1 -0
  48. package/dist/specification/src/sync/common/decoration/condition-evaluator.d.ts +95 -0
  49. package/dist/specification/src/sync/common/decoration/condition-evaluator.d.ts.map +1 -0
  50. package/dist/specification/src/sync/common/decoration/condition-evaluator.js +210 -0
  51. package/dist/specification/src/sync/common/decoration/condition-evaluator.js.map +1 -0
  52. package/dist/specification/src/sync/common/decoration/decorator-paths.d.ts +58 -22
  53. package/dist/specification/src/sync/common/decoration/decorator-paths.d.ts.map +1 -1
  54. package/dist/specification/src/sync/common/decoration/decorator-paths.js +23 -1
  55. package/dist/specification/src/sync/common/decoration/decorator-paths.js.map +1 -1
  56. package/dist/specification/src/sync/common/decoration/decorators.d.ts +0 -8
  57. package/dist/specification/src/sync/common/decoration/decorators.d.ts.map +1 -1
  58. package/dist/specification/src/sync/common/decoration/decorators.js +0 -15
  59. package/dist/specification/src/sync/common/decoration/decorators.js.map +1 -1
  60. package/dist/specification/src/sync/common/decoration/index.d.ts +4 -0
  61. package/dist/specification/src/sync/common/decoration/index.d.ts.map +1 -1
  62. package/dist/specification/src/sync/common/decoration/index.js +4 -0
  63. package/dist/specification/src/sync/common/decoration/index.js.map +1 -1
  64. package/dist/specification/src/sync/common/decoration/interfaces.d.ts +38 -0
  65. package/dist/specification/src/sync/common/decoration/interfaces.d.ts.map +1 -0
  66. package/dist/specification/src/sync/common/decoration/interfaces.js +3 -0
  67. package/dist/specification/src/sync/common/decoration/interfaces.js.map +1 -0
  68. package/dist/specification/src/sync/common/decoration/steps/Enums.d.ts +18 -0
  69. package/dist/specification/src/sync/common/decoration/steps/Enums.d.ts.map +1 -0
  70. package/dist/specification/src/sync/common/decoration/steps/Enums.js +50 -0
  71. package/dist/specification/src/sync/common/decoration/steps/Enums.js.map +1 -0
  72. package/dist/specification/src/sync/common/decoration/steps/Hide.d.ts +18 -0
  73. package/dist/specification/src/sync/common/decoration/steps/Hide.d.ts.map +1 -0
  74. package/dist/specification/src/sync/common/decoration/steps/Hide.js +46 -0
  75. package/dist/specification/src/sync/common/decoration/steps/Hide.js.map +1 -0
  76. package/dist/specification/src/sync/common/decoration/steps/Message.d.ts +26 -0
  77. package/dist/specification/src/sync/common/decoration/steps/Message.d.ts.map +1 -0
  78. package/dist/specification/src/sync/common/decoration/steps/Message.js +77 -0
  79. package/dist/specification/src/sync/common/decoration/steps/Message.js.map +1 -0
  80. package/dist/specification/src/sync/common/decoration/steps/Readonly.d.ts +18 -0
  81. package/dist/specification/src/sync/common/decoration/steps/Readonly.d.ts.map +1 -0
  82. package/dist/specification/src/sync/common/decoration/steps/Readonly.js +43 -0
  83. package/dist/specification/src/sync/common/decoration/steps/Readonly.js.map +1 -0
  84. package/dist/specification/src/sync/common/decoration/steps/Validity.d.ts +18 -0
  85. package/dist/specification/src/sync/common/decoration/steps/Validity.d.ts.map +1 -0
  86. package/dist/specification/src/sync/common/decoration/steps/Validity.js +68 -0
  87. package/dist/specification/src/sync/common/decoration/steps/Validity.js.map +1 -0
  88. package/dist/specification/src/sync/common/decoration/steps/enum-utils.d.ts +19 -0
  89. package/dist/specification/src/sync/common/decoration/steps/enum-utils.d.ts.map +1 -0
  90. package/dist/specification/src/sync/common/decoration/steps/enum-utils.js +48 -0
  91. package/dist/specification/src/sync/common/decoration/steps/enum-utils.js.map +1 -0
  92. package/dist/specification/src/sync/common/decoration/steps/index.d.ts +6 -0
  93. package/dist/specification/src/sync/common/decoration/steps/index.d.ts.map +1 -0
  94. package/dist/specification/src/sync/common/decoration/steps/index.js +14 -0
  95. package/dist/specification/src/sync/common/decoration/steps/index.js.map +1 -0
  96. package/dist/specification/src/sync/common/i18n.json +28 -0
  97. package/dist/specification/src/sync/common/importProject.d.ts.map +1 -1
  98. package/dist/specification/src/sync/common/importProject.js +2 -0
  99. package/dist/specification/src/sync/common/importProject.js.map +1 -1
  100. package/dist/specification/src/sync/common/rules.d.ts +1 -1
  101. package/dist/specification/src/sync/common/rules.js +1 -1
  102. package/dist/specification/src/sync/v2/export/controls/Fragment.d.ts +4 -5
  103. package/dist/specification/src/sync/v2/export/controls/Fragment.d.ts.map +1 -1
  104. package/dist/specification/src/sync/v2/export/controls/Fragment.js +29 -20
  105. package/dist/specification/src/sync/v2/export/controls/Fragment.js.map +1 -1
  106. package/dist/specification/src/sync/v2/export/export.d.ts.map +1 -1
  107. package/dist/specification/src/sync/v2/export/export.js +3 -2
  108. package/dist/specification/src/sync/v2/export/export.js.map +1 -1
  109. package/dist/specification/src/sync/v2/export/exportPage.d.ts.map +1 -1
  110. package/dist/specification/src/sync/v2/export/exportPage.js +48 -19
  111. package/dist/specification/src/sync/v2/export/exportPage.js.map +1 -1
  112. package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts +2 -0
  113. package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts.map +1 -1
  114. package/dist/specification/src/sync/v2/export/exportPageGeneric.js +17 -6
  115. package/dist/specification/src/sync/v2/export/exportPageGeneric.js.map +1 -1
  116. package/dist/specification/src/sync/v2/export/view-controller-generator.d.ts +54 -6
  117. package/dist/specification/src/sync/v2/export/view-controller-generator.d.ts.map +1 -1
  118. package/dist/specification/src/sync/v2/export/view-controller-generator.js +106 -12
  119. package/dist/specification/src/sync/v2/export/view-controller-generator.js.map +1 -1
  120. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js +2 -2
  121. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js.map +1 -1
  122. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js +4 -4
  123. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiEdit.d.ts +12 -0
  124. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiEdit.d.ts.map +1 -0
  125. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiEdit.js +167 -0
  126. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiEdit.js.map +1 -0
  127. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js +3 -3
  128. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js.map +1 -1
  129. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts +59 -2
  130. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts.map +1 -1
  131. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js +582 -7
  132. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js.map +1 -1
  133. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts +1 -0
  134. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts.map +1 -1
  135. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js +1 -0
  136. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js.map +1 -1
  137. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/pageAccess.d.ts.map +1 -1
  138. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/pageAccess.js +29 -6
  139. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/pageAccess.js.map +1 -1
  140. package/dist/specification/src/sync/v2/types.d.ts +2 -0
  141. package/dist/specification/src/sync/v2/types.d.ts.map +1 -1
  142. package/dist/specification/src/sync/v2/types.js.map +1 -1
  143. package/dist/specification/src/sync/v2/utils.d.ts +25 -0
  144. package/dist/specification/src/sync/v2/utils.d.ts.map +1 -1
  145. package/dist/specification/src/sync/v2/utils.js +28 -4
  146. package/dist/specification/src/sync/v2/utils.js.map +1 -1
  147. package/dist/specification/src/sync/v4/application.d.ts +1 -0
  148. package/dist/specification/src/sync/v4/application.d.ts.map +1 -1
  149. package/dist/specification/src/sync/v4/application.js +10 -0
  150. package/dist/specification/src/sync/v4/application.js.map +1 -1
  151. package/dist/specification/src/sync/v4/export/controls/FilterBar.d.ts +1 -2
  152. package/dist/specification/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -1
  153. package/dist/specification/src/sync/v4/export/controls/FilterBar.js +1 -2
  154. package/dist/specification/src/sync/v4/export/controls/FilterBar.js.map +1 -1
  155. package/dist/specification/src/sync/v4/export/controls/Header.d.ts +3 -5
  156. package/dist/specification/src/sync/v4/export/controls/Header.d.ts.map +1 -1
  157. package/dist/specification/src/sync/v4/export/controls/Header.js +2 -7
  158. package/dist/specification/src/sync/v4/export/controls/Header.js.map +1 -1
  159. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts +9 -3
  160. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts.map +1 -1
  161. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js +10 -6
  162. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js.map +1 -1
  163. package/dist/specification/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts +1 -2
  164. package/dist/specification/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +1 -1
  165. package/dist/specification/src/sync/v4/export/controls/ObjectPageCustomSection.js +1 -2
  166. package/dist/specification/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -1
  167. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.d.ts +11 -51
  168. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.d.ts.map +1 -1
  169. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.js +95 -246
  170. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.js.map +1 -1
  171. package/dist/specification/src/sync/v4/export/controls/Table.d.ts +6 -27
  172. package/dist/specification/src/sync/v4/export/controls/Table.d.ts.map +1 -1
  173. package/dist/specification/src/sync/v4/export/controls/Table.js +11 -38
  174. package/dist/specification/src/sync/v4/export/controls/Table.js.map +1 -1
  175. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.d.ts +1 -2
  176. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.d.ts.map +1 -1
  177. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.js +1 -2
  178. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.js.map +1 -1
  179. package/dist/specification/src/sync/v4/export/factory.d.ts.map +1 -1
  180. package/dist/specification/src/sync/v4/export/factory.js +2 -4
  181. package/dist/specification/src/sync/v4/export/factory.js.map +1 -1
  182. package/dist/specification/src/sync/v4/export/fpmCustomPage.d.ts +1 -0
  183. package/dist/specification/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -1
  184. package/dist/specification/src/sync/v4/export/fpmCustomPage.js +212 -46
  185. package/dist/specification/src/sync/v4/export/fpmCustomPage.js.map +1 -1
  186. package/dist/specification/src/sync/v4/generate/app.d.ts +11 -0
  187. package/dist/specification/src/sync/v4/generate/app.d.ts.map +1 -0
  188. package/dist/specification/src/sync/v4/generate/app.js +31 -0
  189. package/dist/specification/src/sync/v4/generate/app.js.map +1 -0
  190. package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.d.ts +13 -0
  191. package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.d.ts.map +1 -1
  192. package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.js +74 -2
  193. package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.js.map +1 -1
  194. package/dist/specification/src/sync/v4/generate/fpm-custom-page/extensions.d.ts.map +1 -1
  195. package/dist/specification/src/sync/v4/generate/fpm-custom-page/extensions.js +4 -3
  196. package/dist/specification/src/sync/v4/generate/fpm-custom-page/extensions.js.map +1 -1
  197. package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.d.ts.map +1 -1
  198. package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.js +29 -27
  199. package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.js.map +1 -1
  200. package/dist/specification/src/sync/v4/generate/fpm-custom-page/utils.d.ts.map +1 -1
  201. package/dist/specification/src/sync/v4/generate/fpm-custom-page/utils.js +12 -3
  202. package/dist/specification/src/sync/v4/generate/fpm-custom-page/utils.js.map +1 -1
  203. package/dist/specification/src/sync/v4/generate/list-report/ListReportUtils.d.ts +32 -13
  204. package/dist/specification/src/sync/v4/generate/list-report/ListReportUtils.d.ts.map +1 -1
  205. package/dist/specification/src/sync/v4/generate/list-report/ListReportUtils.js +103 -78
  206. package/dist/specification/src/sync/v4/generate/list-report/ListReportUtils.js.map +1 -1
  207. package/dist/specification/src/sync/v4/generate/list-report/listReport.d.ts +7 -4
  208. package/dist/specification/src/sync/v4/generate/list-report/listReport.d.ts.map +1 -1
  209. package/dist/specification/src/sync/v4/generate/list-report/listReport.js +34 -19
  210. package/dist/specification/src/sync/v4/generate/list-report/listReport.js.map +1 -1
  211. package/dist/specification/src/sync/v4/generate/objectPage.d.ts +1 -2
  212. package/dist/specification/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  213. package/dist/specification/src/sync/v4/generate/objectPage.js +136 -95
  214. package/dist/specification/src/sync/v4/generate/objectPage.js.map +1 -1
  215. package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.d.ts.map +1 -1
  216. package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.js +20 -0
  217. package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.js.map +1 -1
  218. package/dist/specification/src/sync/v4/import/pages/objectPage.d.ts.map +1 -1
  219. package/dist/specification/src/sync/v4/import/pages/objectPage.js +11 -50
  220. package/dist/specification/src/sync/v4/import/pages/objectPage.js.map +1 -1
  221. package/dist/specification/src/sync/v4/sync-rules/App.d.ts +2 -4
  222. package/dist/specification/src/sync/v4/sync-rules/App.d.ts.map +1 -1
  223. package/dist/specification/src/sync/v4/sync-rules/App.js +2 -1
  224. package/dist/specification/src/sync/v4/sync-rules/App.js.map +1 -1
  225. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts +2 -1
  226. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts.map +1 -1
  227. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js +3 -1
  228. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js.map +1 -1
  229. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts +1 -294
  230. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts.map +1 -1
  231. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js +0 -753
  232. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js.map +1 -1
  233. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts +2 -4
  234. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts.map +1 -1
  235. package/dist/specification/src/sync/v4/sync-rules/Page.js.map +1 -1
  236. package/dist/specification/src/sync/v4/utils/StableIdHelper.d.ts.map +1 -1
  237. package/dist/specification/src/sync/v4/utils/StableIdHelper.js +10 -4
  238. package/dist/specification/src/sync/v4/utils/StableIdHelper.js.map +1 -1
  239. package/dist/specification/src/sync/v4/utils/macros.d.ts +19 -0
  240. package/dist/specification/src/sync/v4/utils/macros.d.ts.map +1 -1
  241. package/dist/specification/src/sync/v4/utils/macros.js +34 -0
  242. package/dist/specification/src/sync/v4/utils/macros.js.map +1 -1
  243. package/dist/specification/src/sync/v4/utils/utils.d.ts +23 -3
  244. package/dist/specification/src/sync/v4/utils/utils.d.ts.map +1 -1
  245. package/dist/specification/src/sync/v4/utils/utils.js +239 -42
  246. package/dist/specification/src/sync/v4/utils/utils.js.map +1 -1
  247. package/dist/specification/test/test-utils/utils.d.ts +1 -0
  248. package/dist/specification/test/test-utils/utils.d.ts.map +1 -1
  249. package/dist/specification/test/test-utils/utils.js +11 -0
  250. package/dist/specification/test/test-utils/utils.js.map +1 -1
  251. package/dist/specification/test/unit/decorators/validity-test-utils.d.ts +2 -2
  252. package/dist/specification/test/unit/decorators/validity-test-utils.d.ts.map +1 -1
  253. package/dist/specification/test/unit/decorators/validity-test-utils.js +6 -6
  254. package/dist/specification/test/unit/decorators/validity-test-utils.js.map +1 -1
  255. package/dist/templates/AnalyticalTableColumnsExtension.xml +3 -3
  256. package/dist/templates/GridTableColumnsExtension.xml +3 -3
  257. package/dist/templates/ResponsiveTableColumnsExtension.xml +2 -2
  258. package/dist/templates/TreeTableColumnsExtension.xml +4 -4
  259. package/dist/templates/fragment.xml +3 -3
  260. package/dist/templates/view.xml +3 -3
  261. package/dist/types/src/apiTypes.d.ts +15 -5
  262. package/dist/types/src/apiTypes.d.ts.map +1 -1
  263. package/dist/types/src/apiTypes.js +1 -0
  264. package/dist/types/src/apiTypes.js.map +1 -1
  265. package/dist/types/src/common/types.d.ts +11 -6
  266. package/dist/types/src/common/types.d.ts.map +1 -1
  267. package/dist/types/src/common/types.js +12 -7
  268. package/dist/types/src/common/types.js.map +1 -1
  269. package/dist/types/src/v4/application.d.ts +15 -0
  270. package/dist/types/src/v4/application.d.ts.map +1 -1
  271. package/dist/types/src/v4/application.js +10 -0
  272. package/dist/types/src/v4/application.js.map +1 -1
  273. package/dist/types/src/v4/controls/ObjectPageTable.d.ts +86 -252
  274. package/dist/types/src/v4/controls/ObjectPageTable.d.ts.map +1 -1
  275. package/dist/types/src/v4/controls/ObjectPageTable.js.map +1 -1
  276. package/package.json +8 -8
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Enums = void 0;
4
+ const decorators_1 = require("../decorators");
5
+ const condition_evaluator_1 = require("../condition-evaluator");
6
+ const enum_utils_1 = require("./enum-utils");
7
+ /**
8
+ * Enums step - filters enum values based on conditions.
9
+ * If multiple @enums decorators exist on the same property, the first matching condition wins.
10
+ */
11
+ class Enums {
12
+ constructor() {
13
+ this.name = 'enums';
14
+ }
15
+ /**
16
+ * Applies enum filtering to all properties in the definition.
17
+ *
18
+ * @param target - The class prototype containing decorator metadata
19
+ * @param definition - The schema definition to modify
20
+ * @param context - Runtime context for condition evaluation
21
+ */
22
+ init(target, definition, context) {
23
+ if (!definition?.properties || !target) {
24
+ return;
25
+ }
26
+ const evaluator = new condition_evaluator_1.ConditionEvaluator(context);
27
+ for (const propertyName in definition.properties) {
28
+ const property = definition.properties[propertyName];
29
+ const enumsMetadataList = Reflect.getMetadata(decorators_1.metadataKeys.enums, target, propertyName);
30
+ if (!enumsMetadataList?.length) {
31
+ continue;
32
+ }
33
+ // Find first matching condition (first match wins)
34
+ for (const enumsMetadata of enumsMetadataList) {
35
+ const { passed } = evaluator.evaluate(enumsMetadata);
36
+ if (passed) {
37
+ const currentEnumValues = (0, enum_utils_1.resolveEnumFromProperty)(property, context);
38
+ if (currentEnumValues) {
39
+ // Filter to only allowed values that exist in original enum
40
+ const filteredValues = enumsMetadata.allowedValues.filter((v) => currentEnumValues.includes(v));
41
+ (0, enum_utils_1.applyFilteredEnumToProperty)(property, filteredValues, context);
42
+ }
43
+ break; // First match wins, stop processing
44
+ }
45
+ }
46
+ }
47
+ }
48
+ }
49
+ exports.Enums = Enums;
50
+ //# sourceMappingURL=Enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Enums.js","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Enums.ts"],"names":[],"mappings":";;;AAEA,8CAA6C;AAC7C,gEAA4D;AAC5D,6CAAoF;AAEpF;;;GAGG;AACH,MAAa,KAAK;IAAlB;QACa,SAAI,GAAG,OAAO,CAAC;IAwC5B,CAAC;IAtCG;;;;;;OAMG;IACH,IAAI,CAAC,MAAc,EAAE,UAAsB,EAAE,OAAyB;QAClE,IAAI,CAAC,UAAU,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,wCAAkB,CAAC,OAAO,CAAC,CAAC;QAElD,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,YAAY,CAAe,CAAC;YACnE,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAY,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAExF,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;gBAC7B,SAAS;YACb,CAAC;YAED,mDAAmD;YACnD,KAAK,MAAM,aAAa,IAAI,iBAAiB,EAAE,CAAC;gBAC5C,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAErD,IAAI,MAAM,EAAE,CAAC;oBACT,MAAM,iBAAiB,GAAG,IAAA,oCAAuB,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACrE,IAAI,iBAAiB,EAAE,CAAC;wBACpB,4DAA4D;wBAC5D,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;wBAChG,IAAA,wCAA2B,EAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;oBACnE,CAAC;oBACD,MAAM,CAAC,oCAAoC;gBAC/C,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAzCD,sBAyCC"}
@@ -0,0 +1,18 @@
1
+ import type { Definition } from 'typescript-json-schema';
2
+ import type { DecoratorStep, DecoratorContext } from '../interfaces';
3
+ /**
4
+ * Hide step - hides properties when their condition evaluates to true.
5
+ * Only hides if the message step did not add any messages to the property.
6
+ */
7
+ export declare class Hide implements DecoratorStep {
8
+ readonly name = "hide";
9
+ /**
10
+ * Hides properties whose hide condition evaluates to true and have no messages.
11
+ *
12
+ * @param target - The class prototype containing decorator metadata
13
+ * @param definition - The schema definition to modify
14
+ * @param context - Runtime context for condition evaluation
15
+ */
16
+ init(target: object, definition: Definition, context: DecoratorContext): void;
17
+ }
18
+ //# sourceMappingURL=Hide.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hide.d.ts","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Hide.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAIrE;;;GAGG;AACH,qBAAa,IAAK,YAAW,aAAa;IACtC,QAAQ,CAAC,IAAI,UAAU;IAEvB;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;CA0BhF"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Hide = void 0;
4
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
5
+ const decorators_1 = require("../decorators");
6
+ const condition_evaluator_1 = require("../condition-evaluator");
7
+ /**
8
+ * Hide step - hides properties when their condition evaluates to true.
9
+ * Only hides if the message step did not add any messages to the property.
10
+ */
11
+ class Hide {
12
+ constructor() {
13
+ this.name = 'hide';
14
+ }
15
+ /**
16
+ * Hides properties whose hide condition evaluates to true and have no messages.
17
+ *
18
+ * @param target - The class prototype containing decorator metadata
19
+ * @param definition - The schema definition to modify
20
+ * @param context - Runtime context for condition evaluation
21
+ */
22
+ init(target, definition, context) {
23
+ if (!definition?.properties || !target) {
24
+ return;
25
+ }
26
+ const evaluator = new condition_evaluator_1.ConditionEvaluator(context);
27
+ for (const propertyName in definition.properties) {
28
+ const property = definition.properties[propertyName];
29
+ const hideConditions = Reflect.getMetadata(decorators_1.metadataKeys.hide, target, propertyName);
30
+ if (hideConditions) {
31
+ // Hide when ANY condition IS met (OR semantics across multiple @hide decorators)
32
+ // But only if no messages were added by the message step
33
+ const hasMessages = Array.isArray(property[ux_specification_types_1.SchemaTag.messages]) && property[ux_specification_types_1.SchemaTag.messages].length > 0;
34
+ for (const condition of hideConditions) {
35
+ const { passed } = evaluator.evaluate(condition);
36
+ if (passed && !hasMessages) {
37
+ property[ux_specification_types_1.SchemaTag.hidden] = true;
38
+ break;
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }
44
+ }
45
+ exports.Hide = Hide;
46
+ //# sourceMappingURL=Hide.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hide.js","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Hide.ts"],"names":[],"mappings":";;;AACA,wEAAwD;AAExD,8CAA6C;AAC7C,gEAA4D;AAE5D;;;GAGG;AACH,MAAa,IAAI;IAAjB;QACa,SAAI,GAAG,MAAM,CAAC;IAmC3B,CAAC;IAjCG;;;;;;OAMG;IACH,IAAI,CAAC,MAAc,EAAE,UAAsB,EAAE,OAAyB;QAClE,IAAI,CAAC,UAAU,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,wCAAkB,CAAC,OAAO,CAAC,CAAC;QAElD,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,YAAY,CAAe,CAAC;YACnE,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAEpF,IAAI,cAAc,EAAE,CAAC;gBACjB,iFAAiF;gBACjF,yDAAyD;gBACzD,MAAM,WAAW,GACb,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,kCAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,QAAQ,CAAC,kCAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC3F,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;oBACrC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACjD,IAAI,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;wBACzB,QAAQ,CAAC,kCAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;wBAClC,MAAM;oBACV,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AApCD,oBAoCC"}
@@ -0,0 +1,26 @@
1
+ import type { Definition } from 'typescript-json-schema';
2
+ import type { DecoratorStep, DecoratorContext } from '../interfaces';
3
+ /**
4
+ * Message step - adds messages to properties when conditions are met.
5
+ * Multiple @message decorators can be applied to the same property.
6
+ */
7
+ export declare class Message implements DecoratorStep {
8
+ readonly name = "message";
9
+ /**
10
+ * Adds messages to properties whose conditions are met.
11
+ *
12
+ * @param target - The class prototype containing decorator metadata
13
+ * @param definition - The schema definition to modify
14
+ * @param context - Runtime context for condition evaluation
15
+ */
16
+ init(target: object, definition: Definition, context: DecoratorContext): void;
17
+ /**
18
+ * Adds a translated message to the schema property if the metadata contains a MessageConfig.
19
+ *
20
+ * @param metadata - Decorator metadata containing the message config
21
+ * @param definition - The schema property definition to add the message to
22
+ * @param evaluator - Condition evaluator used to resolve PathNode params
23
+ */
24
+ private addConditionalMessage;
25
+ }
26
+ //# sourceMappingURL=Message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAwBrE;;;GAGG;AACH,qBAAa,OAAQ,YAAW,aAAa;IACzC,QAAQ,CAAC,IAAI,aAAa;IAE1B;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAsB7E;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;CAahC"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Message = void 0;
7
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
8
+ const decorators_1 = require("../decorators");
9
+ const decorator_paths_1 = require("../decorator-paths");
10
+ const condition_evaluator_1 = require("../condition-evaluator");
11
+ const i18next_1 = __importDefault(require("i18next"));
12
+ /**
13
+ * Adds a message to a schema element.
14
+ *
15
+ * @param element - The schema element to add the message to
16
+ * @param root0 - Message parameters object
17
+ * @param root0.text - The message text
18
+ * @param root0.deletable - Whether the message is deletable (default: false)
19
+ */
20
+ function addMessageToSchema(element, { text, deletable = false }) {
21
+ if (!element[ux_specification_types_1.SchemaTag.messages]) {
22
+ element[ux_specification_types_1.SchemaTag.messages] = [];
23
+ }
24
+ element[ux_specification_types_1.SchemaTag.messages].push({ text, deletable });
25
+ }
26
+ /**
27
+ * Message step - adds messages to properties when conditions are met.
28
+ * Multiple @message decorators can be applied to the same property.
29
+ */
30
+ class Message {
31
+ constructor() {
32
+ this.name = 'message';
33
+ }
34
+ /**
35
+ * Adds messages to properties whose conditions are met.
36
+ *
37
+ * @param target - The class prototype containing decorator metadata
38
+ * @param definition - The schema definition to modify
39
+ * @param context - Runtime context for condition evaluation
40
+ */
41
+ init(target, definition, context) {
42
+ if (!definition?.properties || !target) {
43
+ return;
44
+ }
45
+ const evaluator = new condition_evaluator_1.ConditionEvaluator(context);
46
+ for (const propertyName in definition.properties) {
47
+ const property = definition.properties[propertyName];
48
+ const messageInfoList = Reflect.getMetadata(decorators_1.metadataKeys.message, target, propertyName);
49
+ if (messageInfoList) {
50
+ for (const messageInfo of messageInfoList) {
51
+ const { passed } = evaluator.evaluate(messageInfo);
52
+ if (passed && messageInfo.messageConfig) {
53
+ this.addConditionalMessage(messageInfo, property, evaluator);
54
+ }
55
+ }
56
+ }
57
+ }
58
+ }
59
+ /**
60
+ * Adds a translated message to the schema property if the metadata contains a MessageConfig.
61
+ *
62
+ * @param metadata - Decorator metadata containing the message config
63
+ * @param definition - The schema property definition to add the message to
64
+ * @param evaluator - Condition evaluator used to resolve PathNode params
65
+ */
66
+ addConditionalMessage(metadata, definition, evaluator) {
67
+ // Handle MessageConfig format (from msg() helper)
68
+ if (metadata.messageConfig && (0, decorator_paths_1.isMessageConfig)(metadata.messageConfig)) {
69
+ const msgConfig = metadata.messageConfig;
70
+ const resolvedParams = evaluator.resolveMessageParams(msgConfig.params);
71
+ const messageText = i18next_1.default.t(msgConfig.i18nKey, resolvedParams);
72
+ addMessageToSchema(definition, { text: messageText, deletable: msgConfig.deletable });
73
+ }
74
+ }
75
+ }
76
+ exports.Message = Message;
77
+ //# sourceMappingURL=Message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Message.ts"],"names":[],"mappings":";;;;;;AACA,wEAAwD;AAExD,8CAAqE;AACrE,wDAAqD;AACrD,gEAA4D;AAC5D,sDAA8B;AAE9B;;;;;;;GAOG;AACH,SAAS,kBAAkB,CACvB,OAAmB,EACnB,EAAE,IAAI,EAAE,SAAS,GAAG,KAAK,EAAyC;IAElE,IAAI,CAAC,OAAO,CAAC,kCAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,kCAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,CAAC,kCAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED;;;GAGG;AACH,MAAa,OAAO;IAApB;QACa,SAAI,GAAG,SAAS,CAAC;IAmD9B,CAAC;IAjDG;;;;;;OAMG;IACH,IAAI,CAAC,MAAc,EAAE,UAAsB,EAAE,OAAyB;QAClE,IAAI,CAAC,UAAU,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,wCAAkB,CAAC,OAAO,CAAC,CAAC;QAElD,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,YAAY,CAAe,CAAC;YACnE,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAY,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAExF,IAAI,eAAe,EAAE,CAAC;gBAClB,KAAK,MAAM,WAAW,IAAI,eAAe,EAAE,CAAC;oBACxC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBACnD,IAAI,MAAM,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;wBACtC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;oBACjE,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACK,qBAAqB,CACzB,QAA2B,EAC3B,UAAsB,EACtB,SAA6B;QAE7B,kDAAkD;QAClD,IAAI,QAAQ,CAAC,aAAa,IAAI,IAAA,iCAAe,EAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACpE,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC;YACzC,MAAM,cAAc,GAAG,SAAS,CAAC,oBAAoB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG,iBAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACjE,kBAAkB,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAC1F,CAAC;IACL,CAAC;CACJ;AApDD,0BAoDC"}
@@ -0,0 +1,18 @@
1
+ import type { Definition } from 'typescript-json-schema';
2
+ import type { DecoratorStep, DecoratorContext } from '../interfaces';
3
+ /**
4
+ * Readonly step - marks properties as readonly when their condition evaluates to true.
5
+ * Runs last in the pipeline.
6
+ */
7
+ export declare class Readonly implements DecoratorStep {
8
+ readonly name = "readonly";
9
+ /**
10
+ * Marks properties as readonly when their condition evaluates to true.
11
+ *
12
+ * @param target - The class prototype containing decorator metadata
13
+ * @param definition - The schema definition to modify
14
+ * @param context - Runtime context for condition evaluation
15
+ */
16
+ init(target: object, definition: Definition, context: DecoratorContext): void;
17
+ }
18
+ //# sourceMappingURL=Readonly.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Readonly.d.ts","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Readonly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAIrE;;;GAGG;AACH,qBAAa,QAAS,YAAW,aAAa;IAC1C,QAAQ,CAAC,IAAI,cAAc;IAE3B;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;CAuBhF"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Readonly = void 0;
4
+ const decorators_1 = require("../decorators");
5
+ const condition_evaluator_1 = require("../condition-evaluator");
6
+ /**
7
+ * Readonly step - marks properties as readonly when their condition evaluates to true.
8
+ * Runs last in the pipeline.
9
+ */
10
+ class Readonly {
11
+ constructor() {
12
+ this.name = 'readonly';
13
+ }
14
+ /**
15
+ * Marks properties as readonly when their condition evaluates to true.
16
+ *
17
+ * @param target - The class prototype containing decorator metadata
18
+ * @param definition - The schema definition to modify
19
+ * @param context - Runtime context for condition evaluation
20
+ */
21
+ init(target, definition, context) {
22
+ if (!definition?.properties || !target) {
23
+ return;
24
+ }
25
+ const evaluator = new condition_evaluator_1.ConditionEvaluator(context);
26
+ for (const propertyName in definition.properties) {
27
+ const property = definition.properties[propertyName];
28
+ const readonlyConditions = Reflect.getMetadata(decorators_1.metadataKeys.readonly, target, propertyName);
29
+ if (readonlyConditions) {
30
+ // Readonly when ANY condition IS met (OR semantics across multiple @readonly decorators)
31
+ for (const condition of readonlyConditions) {
32
+ const { passed } = evaluator.evaluate(condition);
33
+ if (passed) {
34
+ property.readOnly = true;
35
+ break;
36
+ }
37
+ }
38
+ }
39
+ }
40
+ }
41
+ }
42
+ exports.Readonly = Readonly;
43
+ //# sourceMappingURL=Readonly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Readonly.js","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Readonly.ts"],"names":[],"mappings":";;;AAEA,8CAA6C;AAC7C,gEAA4D;AAE5D;;;GAGG;AACH,MAAa,QAAQ;IAArB;QACa,SAAI,GAAG,UAAU,CAAC;IAgC/B,CAAC;IA9BG;;;;;;OAMG;IACH,IAAI,CAAC,MAAc,EAAE,UAAsB,EAAE,OAAyB;QAClE,IAAI,CAAC,UAAU,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,wCAAkB,CAAC,OAAO,CAAC,CAAC;QAElD,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,YAAY,CAAe,CAAC;YACnE,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAE5F,IAAI,kBAAkB,EAAE,CAAC;gBACrB,yFAAyF;gBACzF,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;oBACzC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACjD,IAAI,MAAM,EAAE,CAAC;wBACT,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;wBACzB,MAAM;oBACV,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAjCD,4BAiCC"}
@@ -0,0 +1,18 @@
1
+ import type { Definition } from 'typescript-json-schema';
2
+ import type { DecoratorStep, DecoratorContext } from '../interfaces';
3
+ /**
4
+ * Validity step - hides properties and filters enum values based on UI5 version requirements.
5
+ * Runs first in the pipeline.
6
+ */
7
+ export declare class Validity implements DecoratorStep {
8
+ readonly name = "validity";
9
+ /**
10
+ * Hides properties or filters enum values based on UI5 version requirements.
11
+ *
12
+ * @param target - The class prototype containing decorator metadata
13
+ * @param definition - The schema definition to modify
14
+ * @param context - Runtime context providing the minimum UI5 version
15
+ */
16
+ init(target: object, definition: Definition, context: DecoratorContext): void;
17
+ }
18
+ //# sourceMappingURL=Validity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Validity.d.ts","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Validity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAKrE;;;GAGG;AACH,qBAAa,QAAS,YAAW,aAAa;IAC1C,QAAQ,CAAC,IAAI,cAAc;IAE3B;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;CAkDhF"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Validity = void 0;
4
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
5
+ const utils_1 = require("../../../v4/sync-rules/utils");
6
+ const decorators_1 = require("../decorators");
7
+ const enum_utils_1 = require("./enum-utils");
8
+ /**
9
+ * Validity step - hides properties and filters enum values based on UI5 version requirements.
10
+ * Runs first in the pipeline.
11
+ */
12
+ class Validity {
13
+ constructor() {
14
+ this.name = 'validity';
15
+ }
16
+ /**
17
+ * Hides properties or filters enum values based on UI5 version requirements.
18
+ *
19
+ * @param target - The class prototype containing decorator metadata
20
+ * @param definition - The schema definition to modify
21
+ * @param context - Runtime context providing the minimum UI5 version
22
+ */
23
+ init(target, definition, context) {
24
+ const minUI5Version = context.app?.getMinUI5Version?.();
25
+ if (!definition?.properties || !minUI5Version) {
26
+ return;
27
+ }
28
+ for (const propertyName in definition.properties) {
29
+ const property = definition.properties[propertyName];
30
+ const validityInfo = Reflect.getMetadata(decorators_1.metadataKeys.validity, target, propertyName);
31
+ // Check if property has a 'since' requirement that exceeds the app's minUI5Version
32
+ if (validityInfo?.since && !(0, utils_1.compareUI5Versions)(minUI5Version, validityInfo.since)) {
33
+ property[ux_specification_types_1.SchemaTag.hidden] = true;
34
+ }
35
+ // Process enum validity configuration
36
+ if (validityInfo?.enum) {
37
+ const enumValues = (0, enum_utils_1.resolveEnumFromProperty)(property, context);
38
+ if (enumValues) {
39
+ const filteredEnum = enumValues.filter((enumValue) => {
40
+ const enumValueStr = String(enumValue);
41
+ const condition = validityInfo.enum?.[enumValueStr];
42
+ if (!condition) {
43
+ return true; // Keep values without conditions
44
+ }
45
+ // Check UI5 version requirement
46
+ if (condition.since && minUI5Version) {
47
+ if (!(0, utils_1.compareUI5Versions)(minUI5Version, condition.since)) {
48
+ return false;
49
+ }
50
+ }
51
+ // Check property dependency using dependsOn function
52
+ if (condition.dependsOn) {
53
+ if (!condition.dependsOn(context)) {
54
+ return false;
55
+ }
56
+ }
57
+ return true;
58
+ });
59
+ if (filteredEnum.length !== enumValues.length) {
60
+ (0, enum_utils_1.applyFilteredEnumToProperty)(property, filteredEnum, context);
61
+ }
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
67
+ exports.Validity = Validity;
68
+ //# sourceMappingURL=Validity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Validity.js","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/Validity.ts"],"names":[],"mappings":";;;AACA,wEAAwD;AAExD,wDAAkE;AAClE,8CAA6C;AAC7C,6CAAoF;AAEpF;;;GAGG;AACH,MAAa,QAAQ;IAArB;QACa,SAAI,GAAG,UAAU,CAAC;IA2D/B,CAAC;IAzDG;;;;;;OAMG;IACH,IAAI,CAAC,MAAc,EAAE,UAAsB,EAAE,OAAyB;QAClE,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,gBAAgB,EAAE,EAAE,CAAC;QACxD,IAAI,CAAC,UAAU,EAAE,UAAU,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5C,OAAO;QACX,CAAC;QAED,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,YAAY,CAAe,CAAC;YACnE,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAEtF,mFAAmF;YACnF,IAAI,YAAY,EAAE,KAAK,IAAI,CAAC,IAAA,0BAAkB,EAAC,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChF,QAAQ,CAAC,kCAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACtC,CAAC;YAED,sCAAsC;YACtC,IAAI,YAAY,EAAE,IAAI,EAAE,CAAC;gBACrB,MAAM,UAAU,GAAG,IAAA,oCAAuB,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC9D,IAAI,UAAU,EAAE,CAAC;oBACb,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;wBACjD,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;wBACvC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC;wBACpD,IAAI,CAAC,SAAS,EAAE,CAAC;4BACb,OAAO,IAAI,CAAC,CAAC,iCAAiC;wBAClD,CAAC;wBAED,gCAAgC;wBAChC,IAAI,SAAS,CAAC,KAAK,IAAI,aAAa,EAAE,CAAC;4BACnC,IAAI,CAAC,IAAA,0BAAkB,EAAC,aAAa,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gCACtD,OAAO,KAAK,CAAC;4BACjB,CAAC;wBACL,CAAC;wBAED,qDAAqD;wBACrD,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;4BACtB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gCAChC,OAAO,KAAK,CAAC;4BACjB,CAAC;wBACL,CAAC;wBAED,OAAO,IAAI,CAAC;oBAChB,CAAC,CAAC,CAAC;oBAEH,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;wBAC5C,IAAA,wCAA2B,EAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;oBACjE,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AA5DD,4BA4DC"}
@@ -0,0 +1,19 @@
1
+ import type { Definition } from 'typescript-json-schema';
2
+ import type { DecoratorContext } from '../interfaces';
3
+ /**
4
+ * Resolves the current enum values from a property, following $ref if needed.
5
+ *
6
+ * @param property - The schema property definition
7
+ * @param context - Runtime context for schema access
8
+ * @returns The enum values array, or undefined if no enum is found
9
+ */
10
+ export declare function resolveEnumFromProperty(property: Definition, context: DecoratorContext): string[] | undefined;
11
+ /**
12
+ * Applies filtered enum values to a property, inlining $ref types if needed.
13
+ *
14
+ * @param property - The schema property definition to modify
15
+ * @param filteredEnum - The filtered list of allowed enum values
16
+ * @param context - Runtime context for schema access
17
+ */
18
+ export declare function applyFilteredEnumToProperty(property: Definition, filteredEnum: string[], context: DecoratorContext): void;
19
+ //# sourceMappingURL=enum-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum-utils.d.ts","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/enum-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAAE,GAAG,SAAS,CAe7G;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACvC,QAAQ,EAAE,UAAU,EACpB,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,EAAE,gBAAgB,GAC1B,IAAI,CAeN"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveEnumFromProperty = resolveEnumFromProperty;
4
+ exports.applyFilteredEnumToProperty = applyFilteredEnumToProperty;
5
+ /**
6
+ * Resolves the current enum values from a property, following $ref if needed.
7
+ *
8
+ * @param property - The schema property definition
9
+ * @param context - Runtime context for schema access
10
+ * @returns The enum values array, or undefined if no enum is found
11
+ */
12
+ function resolveEnumFromProperty(property, context) {
13
+ if (property?.enum && Array.isArray(property.enum)) {
14
+ return property.enum;
15
+ }
16
+ if (property?.$ref) {
17
+ const refName = property.$ref.replace('#/definitions/', '');
18
+ const schema = context.schema?.get();
19
+ const refDef = schema?.definitions?.[refName];
20
+ if (refDef?.enum && Array.isArray(refDef.enum)) {
21
+ return refDef.enum;
22
+ }
23
+ }
24
+ return undefined;
25
+ }
26
+ /**
27
+ * Applies filtered enum values to a property, inlining $ref types if needed.
28
+ *
29
+ * @param property - The schema property definition to modify
30
+ * @param filteredEnum - The filtered list of allowed enum values
31
+ * @param context - Runtime context for schema access
32
+ */
33
+ function applyFilteredEnumToProperty(property, filteredEnum, context) {
34
+ if (property.$ref) {
35
+ const refName = property.$ref.replace('#/definitions/', '');
36
+ const schema = context.schema?.get();
37
+ const refDef = schema?.definitions?.[refName];
38
+ if (refDef?.type) {
39
+ property.type = refDef.type;
40
+ }
41
+ delete property.$ref;
42
+ property.enum = filteredEnum;
43
+ }
44
+ else {
45
+ property.enum = filteredEnum;
46
+ }
47
+ }
48
+ //# sourceMappingURL=enum-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum-utils.js","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/enum-utils.ts"],"names":[],"mappings":";;AAUA,0DAeC;AASD,kEAmBC;AAlDD;;;;;;GAMG;AACH,SAAgB,uBAAuB,CAAC,QAAoB,EAAE,OAAyB;IACnF,IAAI,QAAQ,EAAE,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,QAAQ,CAAC,IAAgB,CAAC;IACrC,CAAC;IAED,IAAI,QAAQ,EAAE,IAAI,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC,OAAO,CAAe,CAAC;QAC5D,IAAI,MAAM,EAAE,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,OAAO,MAAM,CAAC,IAAgB,CAAC;QACnC,CAAC;IACL,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,2BAA2B,CACvC,QAAoB,EACpB,YAAsB,EACtB,OAAyB;IAEzB,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC,OAAO,CAAe,CAAC;QAE5D,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAChC,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;QACrB,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;IACjC,CAAC;SAAM,CAAC;QACJ,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;IACjC,CAAC;AACL,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { Validity } from './Validity';
2
+ export { Enums } from './Enums';
3
+ export { Message } from './Message';
4
+ export { Hide } from './Hide';
5
+ export { Readonly } from './Readonly';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Readonly = exports.Hide = exports.Message = exports.Enums = exports.Validity = void 0;
4
+ var Validity_1 = require("./Validity");
5
+ Object.defineProperty(exports, "Validity", { enumerable: true, get: function () { return Validity_1.Validity; } });
6
+ var Enums_1 = require("./Enums");
7
+ Object.defineProperty(exports, "Enums", { enumerable: true, get: function () { return Enums_1.Enums; } });
8
+ var Message_1 = require("./Message");
9
+ Object.defineProperty(exports, "Message", { enumerable: true, get: function () { return Message_1.Message; } });
10
+ var Hide_1 = require("./Hide");
11
+ Object.defineProperty(exports, "Hide", { enumerable: true, get: function () { return Hide_1.Hide; } });
12
+ var Readonly_1 = require("./Readonly");
13
+ Object.defineProperty(exports, "Readonly", { enumerable: true, get: function () { return Readonly_1.Readonly; } });
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/sync/common/decoration/steps/index.ts"],"names":[],"mappings":";;;AAAA,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AACd,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA"}
@@ -46,14 +46,42 @@
46
46
  "NODATEFIELD": "Date setting will not be used since filter bar does not contain any date fields.",
47
47
  "WARNING_DEFAULT_ROW_COUNT_MODE": "The rowCountMode is automatically set to `Auto`, if the sectionLayout is set to `Tabs` and the table is the only control within the section.",
48
48
  "ILLEGALTABLETYPE": "'{{- property}}' is not a valid table type.",
49
+ "PROPERTYOBSOLETE": "The '{{- property}}' property is obsolete.",
50
+ "NOCHARTPROPERTY": "The '{{- property}}' table property is not applicable to charts.",
49
51
  "PROPERTY_NOT_ALLOWED_FOR_TABLE_TYPE": "The '{{- propertyName}}' property was specified in the `manifest.json` file, but this property is not allowed for the '{{- tableType}}' table type.",
50
52
  "PROPERTY_NOT_ALLOWED_FOR_NON_TREE_TABLE_TYPE": "The '{{- propertyName}}' property was specified in the `manifest.json` file, but this property is only valid for the Tree table type.",
51
53
  "ENTITY_NOT_ALLOWED_FOR_NON_TREE_TABLE_TYPE": "The '{{- entityName}}' entity was specified in the `manifest.json` file but this entity is not allowed for the non-Tree table type.",
52
54
  "ENTITY_IS_ALLOWED_ONLY_FOR_CREATION_DIALOG_MODE": "The creationFields entity is allowed only for the CreationDialog mode.",
55
+ "PROPERTY_ONLY_ALLOWED_FOR_TABLE_TYPE": "The '{{- propertyName}}' property was specified in the `manifest.json` file, but this property is only valid for the '{{- tableType}}' table type.",
56
+ "PROPERTY_ONLY_ALLOWED_FOR_CREATION_MODE": "The '{{- propertyName}}' property was specified in the `manifest.json` file, but this property is only valid for the '{{- creationMode}}' creation mode.",
57
+ "EXPORT_TO_EXCEL_OUTDATED": "The 'exportToExcel' property is deprecated. Use the 'enableExport' property instead.",
58
+ "TRANSFER_VALUE": "Transfer Value",
59
+ "USE_ENABLE_EXPORT_ONLY": "This value is obsolete in the newer 'Enable Export' property.",
60
+ "ENABLE_EXPORT_INCONSISTENT": "This value does not match a value in the 'Enable Export' property.",
53
61
  "QUICKVARIANTSELECTIONDUPLICATE": "The quickVariantSelection and quickVariantSelectionX properties must not be used together.",
54
62
  "QUICKVARIANTSELECTIONXNOVARIANTS": "The quickVariantSelectionX property is defined but contains no variants.",
55
63
  "SHOWITEMNAVIGATIONONCHARTONLYCHART": "The showItemNavigationOnChart property is only evaluated for chart views.",
56
64
  "QUICKVARIANTSELECTIONNOSELECTIONVARIANTANNOTATIONS": "At least one SelectionVariant or SelectionPresentationVariant annotation must be defined to enable quickVariantSelection.",
57
65
  "QUICKVARIANTSELECTIONNOVARIANTS": "The quickVariantSelection property specifies the showCounts property but contains no variants.",
66
+ "MULTITABLEONLYRESPONSIVE": "As it is not allowed to use both responsive and non-responsive tables in a multi-view setting, type should be 'Responsive Table' here.",
67
+ "MULTITABLENORESPONSIVE": "As it is not allowed to use both responsive and non-responsive tables in a multi-view setting, type should be a value different from 'Responsive Table' here.",
68
+ "CONDENSEDTABLELAYOUTNOEFFECT": "The condensedTableLayout property does not have any effect on responsive tables.",
69
+ "ENABLETABLEFILTERINPAGEVARIANTWORKLIST": "The enableTableFilterInPageVariant property does not have any effect in worklist applications.",
70
+ "ENABLETABLEFILTERINPAGEVARIANTNOEFFECT": "The enableTableFilterInPageVariant property does not have any effect if smart variant management is switched off.",
71
+ "INLINEDELETEONLYRESPONSIVE": "The inlineDelete property is only supported for responsive tables.",
72
+ "NOINLINEDELETEANDMULTISELECT": "The inlineDelete and multiSelect properties must not be switched on simultaneously.",
73
+ "SELECTALLNOMULTISELECT": "The selectAll property can only be used when multiSelect is switched on.",
74
+ "SELECTALLDEFAULTINFOUITABLE": "By default the 'Clear All' button will be shown.",
75
+ "SELECTALLDEFAULTINFORESPONSIVETABLE": "The default behavior depends on the UI5 version: Prior to 1.97 and since 1.119 it is the 'Select All' checkbox, otherwise the 'Clear All' button.",
76
+ "SELECTIONLIMITPREREQUISIT": "The selectionLimit property is only supported for ui tables which have enabled multiSelect.",
77
+ "SELECTIONLIMITNOSELECTALL": "The selectionLimit property is only supported if selectAll is disabled.",
78
+ "NODATALOADSETTINGSINWORKLIST": "Defining data load settings is meaningless in worklist applications.",
79
+ "LOADDATAONAPPLAUNCHMULTITABLE": "In multi-table scenarios, you can also use the 'enableAutoBinding' property for the specific views to influence the loading behavior.",
80
+ "NOCREATEWITHFILTERSINWORKLIST": "Defining a strategy for createWithFilters is meaningless in worklist applications.",
81
+ "CREATEWITHDIALOGDRAFT": "Object creation via dialog is only supported for non-draft entity sets.",
82
+ "MULTIEDITNOWORKLIST": "The multiEdit property does not have any effect in worklist applications.",
83
+ "MULTIEDITNOCHART": "The multiEdit property is not supported for chart views.",
84
+ "MULTIEDITTABLETYPE": "The multiEdit property is only supported for responsive and grid tables.",
85
+ "PROPERTYONLYMULTIEDIT": "The '{{- property}}' property is not sensible when multi edit is not enabled.",
58
86
  "UNRESOLVABLE_VALUE_OF_SELECTION_FIELD": "Unresolvable value for selection field"
59
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"importProject.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/importProject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAoB,MAAM,4BAA4B,CAAC;AAC7G,OAAO,KAAK,EACR,IAAI,EACJ,uBAAuB,EAEvB,eAAe,EAGlB,MAAM,6BAA6B,CAAC;AA2HrC;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,iBAAiB,GAAG,SAAS,CAEhH;AA8BD;;;;;;;;GAQG;AACH,wBAAgB,qCAAqC,CACjD,eAAe,EAAE,iBAAiB,EAClC,WAAW,CAAC,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE,eAAe,GACzB;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,CAyBlD;AAiWD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,uBAAuB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAuB3G;AAED;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,uBAAuB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAyCpH"}
1
+ {"version":3,"file":"importProject.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/importProject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAoB,MAAM,4BAA4B,CAAC;AAC7G,OAAO,KAAK,EACR,IAAI,EACJ,uBAAuB,EAEvB,eAAe,EAGlB,MAAM,6BAA6B,CAAC;AA4HrC;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,iBAAiB,GAAG,SAAS,CAEhH;AA8BD;;;;;;;;GAQG;AACH,wBAAgB,qCAAqC,CACjD,eAAe,EAAE,iBAAiB,EAClC,WAAW,CAAC,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE,eAAe,GACzB;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,CAyBlD;AAkWD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,uBAAuB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAuB3G;AAED;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,uBAAuB,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAyCpH"}
@@ -20,6 +20,7 @@ const extensionLogger_1 = require("../../extensionLogger");
20
20
  const i18n_1 = require("../../i18n/i18n");
21
21
  const schemaAccess_1 = require("../../specification/schemaAccess");
22
22
  const distTagEvaluator_1 = require("./distTagEvaluator");
23
+ const app_2 = require("../v4/generate/app");
23
24
  /**
24
25
  * Generates an object comprising all generic schemas.
25
26
  *
@@ -323,6 +324,7 @@ function generateCustomPageSchemasV4(generateParameters, genericSchemas, appSche
323
324
  function generateAppSchemasV4(generateParameters, genericSchemas, uiEntityTypes) {
324
325
  const appSchemas = {};
325
326
  if (uiEntityTypes) {
327
+ (0, app_2.generateAppSchemaV4)(generateParameters, genericSchemas.App);
326
328
  generateListReportSchemasV4(generateParameters, genericSchemas, appSchemas);
327
329
  generateObjectPageSchemasV4(generateParameters, genericSchemas, appSchemas);
328
330
  generateCustomPageSchemasV4(generateParameters, genericSchemas, appSchemas);