@sap/ux-ui5-tooling 1.20.3 → 1.21.0

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 (287) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/adp-tooling/templates/cf/_gitignore +6 -0
  3. package/dist/adp-tooling/templates/cf/approuter/package.json +13 -0
  4. package/dist/adp-tooling/templates/cf/approuter/xs-app.json +15 -0
  5. package/dist/adp-tooling/templates/cf/i18n/i18n.properties +3 -0
  6. package/dist/adp-tooling/templates/cf/package.json +35 -0
  7. package/dist/adp-tooling/templates/cf/ui5.yaml +5 -0
  8. package/dist/adp-tooling/templates/cf/xs-security.json +7 -0
  9. package/dist/adp-tooling/templates/changes/annotation.xml +18 -0
  10. package/dist/adp-tooling/templates/project/gitignore.tmpl +5 -0
  11. package/dist/adp-tooling/templates/project/package.json +31 -0
  12. package/dist/adp-tooling/templates/project/ui5.yaml +6 -0
  13. package/dist/adp-tooling/templates/project/webapp/i18n/i18n.properties +6 -0
  14. package/dist/adp-tooling/templates/project/webapp/manifest.appdescr_variant +10 -0
  15. package/dist/adp-tooling/templates/rta/common/analytical-custom-column.xml +25 -0
  16. package/dist/adp-tooling/templates/rta/common/custom-action.xml +8 -0
  17. package/dist/adp-tooling/templates/rta/common/grid-tree-custom-column.xml +22 -0
  18. package/dist/adp-tooling/templates/rta/common/header-field.xml +13 -0
  19. package/dist/adp-tooling/templates/rta/common/op-custom-section.xml +20 -0
  20. package/dist/adp-tooling/templates/rta/common/v4-table-action.xml +8 -0
  21. package/dist/adp-tooling/templates/rta/controller.ejs +80 -0
  22. package/dist/adp-tooling/templates/rta/fragment.xml +7 -0
  23. package/dist/adp-tooling/templates/rta/ts-controller.ejs +18 -0
  24. package/dist/adp-tooling/templates/rta/v2/m-table-custom-column-cell.xml +7 -0
  25. package/dist/adp-tooling/templates/rta/v2/m-table-custom-column.xml +18 -0
  26. package/dist/adp-tooling/templates/rta/v4/custom-section.xml +12 -0
  27. package/dist/adp-tooling/templates/rta/v4/mdc-custom-column-config.xml +6 -0
  28. package/dist/adp-tooling/templates/rta/v4/mdc-custom-column.xml +11 -0
  29. package/dist/adp-tooling/templates/typescript/tsconfig.json +19 -0
  30. package/dist/cli/index.js +15601 -9530
  31. package/dist/control-property-editor/app.css +2 -0
  32. package/dist/control-property-editor/app.js +175 -0
  33. package/dist/livereload-js/livereload.js +3795 -0
  34. package/dist/middlewares/fiori-tools-appreload.js +43608 -41594
  35. package/dist/middlewares/fiori-tools-preview.js +57009 -3089
  36. package/dist/middlewares/fiori-tools-proxy.js +54866 -31843
  37. package/dist/middlewares/fiori-tools-servestatic.js +31657 -57
  38. package/dist/preview-middleware/dist/client/adp/add-fragment.js +48 -0
  39. package/dist/preview-middleware/dist/client/adp/add-fragment.ts +51 -0
  40. package/dist/preview-middleware/dist/client/adp/api-handler.js +162 -0
  41. package/dist/preview-middleware/dist/client/adp/api-handler.ts +188 -0
  42. package/dist/preview-middleware/dist/client/adp/command-executor.js +100 -0
  43. package/dist/preview-middleware/dist/client/adp/command-executor.ts +105 -0
  44. package/dist/preview-middleware/dist/client/adp/control-utils.js +46 -0
  45. package/dist/preview-middleware/dist/client/adp/control-utils.ts +48 -0
  46. package/dist/preview-middleware/dist/client/adp/controllers/AddActionFragment.controller.js +198 -0
  47. package/dist/preview-middleware/dist/client/adp/controllers/AddActionFragment.controller.ts +232 -0
  48. package/dist/preview-middleware/dist/client/adp/controllers/AddCustomFragment.controller.js +223 -0
  49. package/dist/preview-middleware/dist/client/adp/controllers/AddCustomFragment.controller.ts +257 -0
  50. package/dist/preview-middleware/dist/client/adp/controllers/AddFragment.controller.js +195 -0
  51. package/dist/preview-middleware/dist/client/adp/controllers/AddFragment.controller.ts +264 -0
  52. package/dist/preview-middleware/dist/client/adp/controllers/AddSubpage.controller.js +146 -0
  53. package/dist/preview-middleware/dist/client/adp/controllers/AddSubpage.controller.ts +209 -0
  54. package/dist/preview-middleware/dist/client/adp/controllers/AddTableColumnFragments.controller.js +232 -0
  55. package/dist/preview-middleware/dist/client/adp/controllers/AddTableColumnFragments.controller.ts +306 -0
  56. package/dist/preview-middleware/dist/client/adp/controllers/BaseDialog.controller.js +187 -0
  57. package/dist/preview-middleware/dist/client/adp/controllers/BaseDialog.controller.ts +254 -0
  58. package/dist/preview-middleware/dist/client/adp/controllers/ControllerExtension.controller.js +330 -0
  59. package/dist/preview-middleware/dist/client/adp/controllers/ControllerExtension.controller.ts +408 -0
  60. package/dist/preview-middleware/dist/client/adp/controllers/ExtensionPoint.controller.js +160 -0
  61. package/dist/preview-middleware/dist/client/adp/controllers/ExtensionPoint.controller.ts +195 -0
  62. package/dist/preview-middleware/dist/client/adp/controllers/FileExistsDialog.controller.js +68 -0
  63. package/dist/preview-middleware/dist/client/adp/controllers/FileExistsDialog.controller.ts +86 -0
  64. package/dist/preview-middleware/dist/client/adp/controllers/types.js +2 -0
  65. package/dist/preview-middleware/dist/client/adp/controllers/types.ts +10 -0
  66. package/dist/preview-middleware/dist/client/adp/dialog-factory.js +151 -0
  67. package/dist/preview-middleware/dist/client/adp/dialog-factory.ts +210 -0
  68. package/dist/preview-middleware/dist/client/adp/extend-controller.js +48 -0
  69. package/dist/preview-middleware/dist/client/adp/extend-controller.ts +49 -0
  70. package/dist/preview-middleware/dist/client/adp/extension-point.js +83 -0
  71. package/dist/preview-middleware/dist/client/adp/extension-point.ts +116 -0
  72. package/dist/preview-middleware/dist/client/adp/init-dialogs.js +142 -0
  73. package/dist/preview-middleware/dist/client/adp/init-dialogs.ts +178 -0
  74. package/dist/preview-middleware/dist/client/adp/init.js +102 -0
  75. package/dist/preview-middleware/dist/client/adp/init.ts +85 -0
  76. package/dist/preview-middleware/dist/client/adp/quick-actions/add-new-subpage-quick-action-base.js +97 -0
  77. package/dist/preview-middleware/dist/client/adp/quick-actions/add-new-subpage-quick-action-base.ts +140 -0
  78. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-controller-to-page.js +74 -0
  79. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-controller-to-page.ts +92 -0
  80. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-new-annotation-file.js +171 -0
  81. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-new-annotation-file.ts +174 -0
  82. package/dist/preview-middleware/dist/client/adp/quick-actions/common/create-page-action.js +56 -0
  83. package/dist/preview-middleware/dist/client/adp/quick-actions/common/create-page-action.ts +56 -0
  84. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-custom-section.js +41 -0
  85. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-custom-section.ts +51 -0
  86. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-header-field.js +69 -0
  87. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-header-field.ts +81 -0
  88. package/dist/preview-middleware/dist/client/adp/quick-actions/common/utils.js +20 -0
  89. package/dist/preview-middleware/dist/client/adp/quick-actions/common/utils.ts +7 -0
  90. package/dist/preview-middleware/dist/client/adp/quick-actions/control-types.js +25 -0
  91. package/dist/preview-middleware/dist/client/adp/quick-actions/control-types.ts +7 -0
  92. package/dist/preview-middleware/dist/client/adp/quick-actions/dialog-enablement-validator.js +26 -0
  93. package/dist/preview-middleware/dist/client/adp/quick-actions/dialog-enablement-validator.ts +18 -0
  94. package/dist/preview-middleware/dist/client/adp/quick-actions/enablement-validator.js +2 -0
  95. package/dist/preview-middleware/dist/client/adp/quick-actions/enablement-validator.ts +19 -0
  96. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/add-new-subpage.js +82 -0
  97. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/add-new-subpage.ts +87 -0
  98. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-actions.js +69 -0
  99. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-actions.ts +71 -0
  100. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-columns.js +103 -0
  101. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-columns.ts +105 -0
  102. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-action.js +111 -0
  103. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-action.ts +110 -0
  104. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-custom-column.js +108 -0
  105. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-custom-column.ts +141 -0
  106. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-semantic-date-range-filter-bar.js +80 -0
  107. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-semantic-date-range-filter-bar.ts +93 -0
  108. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-table-filtering.js +79 -0
  109. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-table-filtering.ts +102 -0
  110. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-variant-management.js +71 -0
  111. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-variant-management.ts +98 -0
  112. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-toggle-clear-filter-bar.js +61 -0
  113. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-toggle-clear-filter-bar.ts +77 -0
  114. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-empty-row-mode.js +95 -0
  115. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-empty-row-mode.ts +102 -0
  116. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-variant-management.js +86 -0
  117. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-variant-management.ts +116 -0
  118. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/registry.js +79 -0
  119. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/registry.ts +121 -0
  120. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/utils.js +138 -0
  121. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/utils.ts +134 -0
  122. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/add-new-subpage.js +140 -0
  123. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/add-new-subpage.ts +181 -0
  124. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-actions.js +81 -0
  125. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-actions.ts +81 -0
  126. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-columns.js +90 -0
  127. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-columns.ts +97 -0
  128. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-page-action.js +81 -0
  129. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-page-action.ts +98 -0
  130. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-action-config-change.js +129 -0
  131. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-action-config-change.ts +149 -0
  132. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-custom-column-config-change.js +142 -0
  133. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-custom-column-config-change.ts +178 -0
  134. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/enable-variant-management.js +83 -0
  135. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/enable-variant-management.ts +96 -0
  136. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-semantic-date-range-filter-bar.js +58 -0
  137. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-semantic-date-range-filter-bar.ts +70 -0
  138. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-table-filtering.js +86 -0
  139. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-table-filtering.ts +96 -0
  140. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-toggle-clear-filter-bar.js +55 -0
  141. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-toggle-clear-filter-bar.ts +61 -0
  142. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-add-custom-section.js +73 -0
  143. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-add-custom-section.ts +91 -0
  144. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-enable-empty-row-mode.js +91 -0
  145. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-enable-empty-row-mode.ts +88 -0
  146. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/registry.js +62 -0
  147. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/registry.ts +86 -0
  148. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/utils.js +158 -0
  149. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/utils.ts +175 -0
  150. package/dist/preview-middleware/dist/client/adp/quick-actions/load.js +46 -0
  151. package/dist/preview-middleware/dist/client/adp/quick-actions/load.ts +23 -0
  152. package/dist/preview-middleware/dist/client/adp/quick-actions/quick-action-base.js +64 -0
  153. package/dist/preview-middleware/dist/client/adp/quick-actions/quick-action-base.ts +71 -0
  154. package/dist/preview-middleware/dist/client/adp/quick-actions/simple-quick-action-base.js +44 -0
  155. package/dist/preview-middleware/dist/client/adp/quick-actions/simple-quick-action-base.ts +51 -0
  156. package/dist/preview-middleware/dist/client/adp/quick-actions/supported-ui5versions.md +40 -0
  157. package/dist/preview-middleware/dist/client/adp/quick-actions/table-quick-action-base.js +372 -0
  158. package/dist/preview-middleware/dist/client/adp/quick-actions/table-quick-action-base.ts +433 -0
  159. package/dist/preview-middleware/dist/client/adp/sync-views-utils.js +123 -0
  160. package/dist/preview-middleware/dist/client/adp/sync-views-utils.ts +90 -0
  161. package/dist/preview-middleware/dist/client/adp/ui/AddAction.fragment.xml +49 -0
  162. package/dist/preview-middleware/dist/client/adp/ui/AddCustomFragment.fragment.xml +48 -0
  163. package/dist/preview-middleware/dist/client/adp/ui/AddFragment.fragment.xml +83 -0
  164. package/dist/preview-middleware/dist/client/adp/ui/AddSubpage.fragment.xml +73 -0
  165. package/dist/preview-middleware/dist/client/adp/ui/AddTableColumnFragments.fragment.xml +63 -0
  166. package/dist/preview-middleware/dist/client/adp/ui/ControllerExtension.fragment.xml +63 -0
  167. package/dist/preview-middleware/dist/client/adp/ui/ExtensionPoint.fragment.xml +61 -0
  168. package/dist/preview-middleware/dist/client/adp/ui/FileExistsDialog.fragment.xml +43 -0
  169. package/dist/preview-middleware/dist/client/adp/utils.js +199 -0
  170. package/dist/preview-middleware/dist/client/adp/utils.ts +200 -0
  171. package/dist/preview-middleware/dist/client/cpe/additional-change-info/add-xml-additional-info.js +85 -0
  172. package/dist/preview-middleware/dist/client/cpe/additional-change-info/add-xml-additional-info.ts +107 -0
  173. package/dist/preview-middleware/dist/client/cpe/changes/flex-change.js +66 -0
  174. package/dist/preview-middleware/dist/client/cpe/changes/flex-change.ts +66 -0
  175. package/dist/preview-middleware/dist/client/cpe/changes/generic-change.js +321 -0
  176. package/dist/preview-middleware/dist/client/cpe/changes/generic-change.ts +462 -0
  177. package/dist/preview-middleware/dist/client/cpe/changes/index.js +12 -0
  178. package/dist/preview-middleware/dist/client/cpe/changes/index.ts +1 -0
  179. package/dist/preview-middleware/dist/client/cpe/changes/service.js +527 -0
  180. package/dist/preview-middleware/dist/client/cpe/changes/service.ts +595 -0
  181. package/dist/preview-middleware/dist/client/cpe/changes/validator.js +41 -0
  182. package/dist/preview-middleware/dist/client/cpe/changes/validator.ts +35 -0
  183. package/dist/preview-middleware/dist/client/cpe/communication-service.js +44 -0
  184. package/dist/preview-middleware/dist/client/cpe/communication-service.ts +41 -0
  185. package/dist/preview-middleware/dist/client/cpe/connector-service.js +88 -0
  186. package/dist/preview-middleware/dist/client/cpe/connector-service.ts +74 -0
  187. package/dist/preview-middleware/dist/client/cpe/context-menu-service.js +90 -0
  188. package/dist/preview-middleware/dist/client/cpe/context-menu-service.ts +77 -0
  189. package/dist/preview-middleware/dist/client/cpe/control-data.js +366 -0
  190. package/dist/preview-middleware/dist/client/cpe/control-data.ts +400 -0
  191. package/dist/preview-middleware/dist/client/cpe/documentation.js +191 -0
  192. package/dist/preview-middleware/dist/client/cpe/documentation.ts +187 -0
  193. package/dist/preview-middleware/dist/client/cpe/feature-service.js +39 -0
  194. package/dist/preview-middleware/dist/client/cpe/feature-service.ts +25 -0
  195. package/dist/preview-middleware/dist/client/cpe/init.js +92 -0
  196. package/dist/preview-middleware/dist/client/cpe/init.ts +114 -0
  197. package/dist/preview-middleware/dist/client/cpe/logger.js +32 -0
  198. package/dist/preview-middleware/dist/client/cpe/logger.ts +24 -0
  199. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-checker.js +126 -0
  200. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-checker.ts +150 -0
  201. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-status.js +63 -0
  202. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-status.ts +52 -0
  203. package/dist/preview-middleware/dist/client/cpe/outline/editable.js +38 -0
  204. package/dist/preview-middleware/dist/client/cpe/outline/editable.ts +30 -0
  205. package/dist/preview-middleware/dist/client/cpe/outline/nodes.js +212 -0
  206. package/dist/preview-middleware/dist/client/cpe/outline/nodes.ts +236 -0
  207. package/dist/preview-middleware/dist/client/cpe/outline/service.js +62 -0
  208. package/dist/preview-middleware/dist/client/cpe/outline/service.ts +66 -0
  209. package/dist/preview-middleware/dist/client/cpe/quick-actions/quick-action-service.js +161 -0
  210. package/dist/preview-middleware/dist/client/cpe/quick-actions/quick-action-service.ts +184 -0
  211. package/dist/preview-middleware/dist/client/cpe/quick-actions/registry.js +145 -0
  212. package/dist/preview-middleware/dist/client/cpe/quick-actions/registry.ts +157 -0
  213. package/dist/preview-middleware/dist/client/cpe/quick-actions/utils.js +94 -0
  214. package/dist/preview-middleware/dist/client/cpe/quick-actions/utils.ts +113 -0
  215. package/dist/preview-middleware/dist/client/cpe/rta-service.js +94 -0
  216. package/dist/preview-middleware/dist/client/cpe/rta-service.ts +86 -0
  217. package/dist/preview-middleware/dist/client/cpe/selection.js +249 -0
  218. package/dist/preview-middleware/dist/client/cpe/selection.ts +267 -0
  219. package/dist/preview-middleware/dist/client/cpe/ui5-utils.js +35 -0
  220. package/dist/preview-middleware/dist/client/cpe/ui5-utils.ts +28 -0
  221. package/dist/preview-middleware/dist/client/cpe/utils.js +113 -0
  222. package/dist/preview-middleware/dist/client/cpe/utils.ts +162 -0
  223. package/dist/preview-middleware/dist/client/flp/WorkspaceConnector.js +96 -0
  224. package/dist/preview-middleware/dist/client/flp/WorkspaceConnector.ts +99 -0
  225. package/dist/preview-middleware/dist/client/flp/common.js +30 -0
  226. package/dist/preview-middleware/dist/client/flp/common.ts +28 -0
  227. package/dist/preview-middleware/dist/client/flp/enableFakeConnector.js +92 -0
  228. package/dist/preview-middleware/dist/client/flp/enableFakeConnector.ts +113 -0
  229. package/dist/preview-middleware/dist/client/flp/homepage/Component.js +16 -0
  230. package/dist/preview-middleware/dist/client/flp/homepage/Component.ts +10 -0
  231. package/dist/preview-middleware/dist/client/flp/homepage/controller/MyHome.controller.js +54 -0
  232. package/dist/preview-middleware/dist/client/flp/homepage/controller/MyHome.controller.ts +41 -0
  233. package/dist/preview-middleware/dist/client/flp/homepage/css/style.css +3 -0
  234. package/dist/preview-middleware/dist/client/flp/homepage/manifest.json +41 -0
  235. package/dist/preview-middleware/dist/client/flp/homepage/view/MyHome.view.xml +18 -0
  236. package/dist/preview-middleware/dist/client/flp/init.js +418 -0
  237. package/dist/preview-middleware/dist/client/flp/init.ts +448 -0
  238. package/dist/preview-middleware/dist/client/flp/initCdm.js +117 -0
  239. package/dist/preview-middleware/dist/client/flp/initCdm.ts +111 -0
  240. package/dist/preview-middleware/dist/client/flp/initConnectors.js +31 -0
  241. package/dist/preview-middleware/dist/client/flp/initConnectors.ts +20 -0
  242. package/dist/preview-middleware/dist/client/flp/initRta.js +180 -0
  243. package/dist/preview-middleware/dist/client/flp/initRta.ts +194 -0
  244. package/dist/preview-middleware/dist/client/i18n.js +56 -0
  245. package/dist/preview-middleware/dist/client/i18n.ts +49 -0
  246. package/dist/preview-middleware/dist/client/manifest.json +8 -0
  247. package/dist/preview-middleware/dist/client/messagebundle.properties +143 -0
  248. package/dist/preview-middleware/dist/client/thirdparty/@sap-ux-private/control-property-editor-common.js +486 -0
  249. package/dist/preview-middleware/dist/client/utils/additional-change-info.js +69 -0
  250. package/dist/preview-middleware/dist/client/utils/additional-change-info.ts +73 -0
  251. package/dist/preview-middleware/dist/client/utils/application.js +34 -0
  252. package/dist/preview-middleware/dist/client/utils/application.ts +27 -0
  253. package/dist/preview-middleware/dist/client/utils/core.js +144 -0
  254. package/dist/preview-middleware/dist/client/utils/core.ts +145 -0
  255. package/dist/preview-middleware/dist/client/utils/error.js +28 -0
  256. package/dist/preview-middleware/dist/client/utils/error.ts +18 -0
  257. package/dist/preview-middleware/dist/client/utils/fe-v2.js +58 -0
  258. package/dist/preview-middleware/dist/client/utils/fe-v2.ts +61 -0
  259. package/dist/preview-middleware/dist/client/utils/fe-v4.js +168 -0
  260. package/dist/preview-middleware/dist/client/utils/fe-v4.ts +186 -0
  261. package/dist/preview-middleware/dist/client/utils/info-center-message.js +60 -0
  262. package/dist/preview-middleware/dist/client/utils/info-center-message.ts +60 -0
  263. package/dist/preview-middleware/dist/client/utils/version.js +126 -0
  264. package/dist/preview-middleware/dist/client/utils/version.ts +138 -0
  265. package/dist/preview-middleware/templates/flp/cdm.base.json +47 -0
  266. package/dist/preview-middleware/templates/flp/cdm.ejs +72 -0
  267. package/dist/preview-middleware/templates/flp/editor.ejs +28 -0
  268. package/dist/preview-middleware/templates/flp/sandbox.ejs +88 -0
  269. package/dist/preview-middleware/templates/flp/sandbox2.ejs +86 -0
  270. package/dist/preview-middleware/templates/test/qunit.ejs +26 -0
  271. package/dist/preview-middleware/templates/test/qunit.js +29 -0
  272. package/dist/preview-middleware/templates/test/testsuite.qunit.ejs +10 -0
  273. package/dist/preview-middleware/templates/test/testsuite.qunit.js +8 -0
  274. package/dist/tasks/cf-deploy/index.js +1836 -1496
  275. package/dist/tasks/deploy/index.js +14679 -8695
  276. package/package.json +31 -34
  277. package/prebuilds/keyring.darwin-arm64.node +0 -0
  278. package/prebuilds/keyring.darwin-x64.node +0 -0
  279. package/prebuilds/keyring.linux-arm-gnueabihf.node +0 -0
  280. package/prebuilds/keyring.linux-arm64-gnu.node +0 -0
  281. package/prebuilds/keyring.linux-arm64-musl.node +0 -0
  282. package/prebuilds/keyring.linux-ia32-gnu.node +0 -0
  283. package/prebuilds/keyring.linux-x64-gnu.node +0 -0
  284. package/prebuilds/keyring.linux-x64-musl.node +0 -0
  285. package/prebuilds/keyring.win32-arm64-msvc.node +0 -0
  286. package/prebuilds/keyring.win32-ia32-msvc.node +0 -0
  287. package/prebuilds/keyring.win32-x64-msvc.node +0 -0
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["sap/ui/dt/OverlayRegistry", "../../dialog-factory", "../../../utils/core", "../simple-quick-action-base", "../dialog-enablement-validator", "../../../i18n"], function (OverlayRegistry, ____dialog_factory, _____utils_core, ___simple_quick_action_base, ___dialog_enablement_validator, _____i18n) {
4
+ "use strict";
5
+
6
+ const DialogFactory = ____dialog_factory["DialogFactory"];
7
+ const DialogNames = ____dialog_factory["DialogNames"];
8
+ const isA = _____utils_core["isA"];
9
+ const SimpleQuickActionDefinitionBase = ___simple_quick_action_base["SimpleQuickActionDefinitionBase"];
10
+ const DIALOG_ENABLEMENT_VALIDATOR = ___dialog_enablement_validator["DIALOG_ENABLEMENT_VALIDATOR"];
11
+ const getTextBundle = _____i18n["getTextBundle"];
12
+ const OP_ADD_HEADER_FIELD_TYPE = 'op-add-header-field';
13
+ const CONTROL_TYPES = ['sap.uxap.ObjectPageLayout'];
14
+
15
+ /**
16
+ * Quick Action for adding a Header Field to an Object Page.
17
+ */
18
+ class AddHeaderFieldQuickAction extends SimpleQuickActionDefinitionBase {
19
+ constructor(context) {
20
+ super(OP_ADD_HEADER_FIELD_TYPE, CONTROL_TYPES, 'QUICK_ACTION_OP_ADD_HEADER_FIELD', context, [DIALOG_ENABLEMENT_VALIDATOR, {
21
+ run: async () => {
22
+ const i18n = await getTextBundle();
23
+ if (!this.control?.getShowHeaderContent()) {
24
+ return {
25
+ type: 'error',
26
+ message: i18n.getText('DISABLE_SHOW_HEADER_CONTENT')
27
+ };
28
+ }
29
+ return undefined;
30
+ }
31
+ }]);
32
+ }
33
+ async execute() {
34
+ if (!this.control) {
35
+ return [];
36
+ }
37
+ const headerContent = this.control.getHeaderContent();
38
+
39
+ // check if only flex box exist in the headerContent.
40
+ if (headerContent.length === 1 && isA('sap.m.FlexBox', headerContent[0])) {
41
+ const overlay = OverlayRegistry.getOverlay(headerContent[0]) || [];
42
+ await DialogFactory.createDialog(overlay, this.context.rta, DialogNames.ADD_FRAGMENT, undefined, {
43
+ aggregation: 'items',
44
+ title: 'QUICK_ACTION_OP_ADD_HEADER_FIELD'
45
+ }, {
46
+ actionName: this.type,
47
+ telemetryEventIdentifier: this.getTelemetryIdentifier()
48
+ });
49
+ } else if (this.control) {
50
+ const overlay = OverlayRegistry.getOverlay(this.control) || [];
51
+ await DialogFactory.createDialog(overlay, this.context.rta, DialogNames.ADD_FRAGMENT, undefined, {
52
+ aggregation: 'headerContent',
53
+ title: 'QUICK_ACTION_OP_ADD_HEADER_FIELD'
54
+ }, {
55
+ actionName: this.type,
56
+ telemetryEventIdentifier: this.getTelemetryIdentifier()
57
+ });
58
+ }
59
+ return [];
60
+ }
61
+ }
62
+ var __exports = {
63
+ __esModule: true
64
+ };
65
+ __exports.OP_ADD_HEADER_FIELD_TYPE = OP_ADD_HEADER_FIELD_TYPE;
66
+ __exports.AddHeaderFieldQuickAction = AddHeaderFieldQuickAction;
67
+ return __exports;
68
+ });
69
+ //# sourceMappingURL=op-add-header-field.js.map
@@ -0,0 +1,81 @@
1
+ import OverlayRegistry from 'sap/ui/dt/OverlayRegistry';
2
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
3
+ import type ObjectPageLayout from 'sap/uxap/ObjectPageLayout';
4
+ import type FlexBox from 'sap/m/FlexBox';
5
+
6
+ import { DialogFactory, DialogNames } from '../../dialog-factory';
7
+ import type {
8
+ QuickActionContext,
9
+ SimpleQuickActionDefinition
10
+ } from '../../../cpe/quick-actions/quick-action-definition';
11
+ import { isA } from '../../../utils/core';
12
+ import { SimpleQuickActionDefinitionBase } from '../simple-quick-action-base';
13
+ import { DIALOG_ENABLEMENT_VALIDATOR } from '../dialog-enablement-validator';
14
+ import type { EnablementValidatorResult } from '../enablement-validator';
15
+ import { getTextBundle } from '../../../i18n';
16
+
17
+ export const OP_ADD_HEADER_FIELD_TYPE = 'op-add-header-field';
18
+ const CONTROL_TYPES = ['sap.uxap.ObjectPageLayout'];
19
+
20
+ /**
21
+ * Quick Action for adding a Header Field to an Object Page.
22
+ */
23
+ export class AddHeaderFieldQuickAction
24
+ extends SimpleQuickActionDefinitionBase<ObjectPageLayout>
25
+ implements SimpleQuickActionDefinition
26
+ {
27
+ constructor(context: QuickActionContext) {
28
+ super(OP_ADD_HEADER_FIELD_TYPE, CONTROL_TYPES, 'QUICK_ACTION_OP_ADD_HEADER_FIELD', context, [
29
+ DIALOG_ENABLEMENT_VALIDATOR,
30
+ {
31
+ run: async (): Promise<EnablementValidatorResult> => {
32
+ const i18n = await getTextBundle();
33
+ if (!this.control?.getShowHeaderContent()) {
34
+ return {
35
+ type: 'error',
36
+ message: i18n.getText('DISABLE_SHOW_HEADER_CONTENT')
37
+ };
38
+ }
39
+ return undefined;
40
+ }
41
+ }
42
+ ]);
43
+ }
44
+
45
+ async execute(): Promise<FlexCommand[]> {
46
+ if (!this.control) {
47
+ return [];
48
+ }
49
+ const headerContent = this.control.getHeaderContent();
50
+
51
+ // check if only flex box exist in the headerContent.
52
+ if (headerContent.length === 1 && isA<FlexBox>('sap.m.FlexBox', headerContent[0])) {
53
+ const overlay = OverlayRegistry.getOverlay(headerContent[0]) || [];
54
+ await DialogFactory.createDialog(
55
+ overlay,
56
+ this.context.rta,
57
+ DialogNames.ADD_FRAGMENT,
58
+ undefined,
59
+ {
60
+ aggregation: 'items',
61
+ title: 'QUICK_ACTION_OP_ADD_HEADER_FIELD'
62
+ },
63
+ { actionName: this.type, telemetryEventIdentifier: this.getTelemetryIdentifier() }
64
+ );
65
+ } else if (this.control) {
66
+ const overlay = OverlayRegistry.getOverlay(this.control) || [];
67
+ await DialogFactory.createDialog(
68
+ overlay,
69
+ this.context.rta,
70
+ DialogNames.ADD_FRAGMENT,
71
+ undefined,
72
+ {
73
+ aggregation: 'headerContent',
74
+ title: 'QUICK_ACTION_OP_ADD_HEADER_FIELD'
75
+ },
76
+ { actionName: this.type, telemetryEventIdentifier: this.getTelemetryIdentifier() }
77
+ );
78
+ }
79
+ return [];
80
+ }
81
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ sap.ui.define([], function () {
4
+ "use strict";
5
+
6
+ function getTooltipsForTableEmptyRowModeAction(resourceBundle) {
7
+ const alreadyEnabledTooltip = resourceBundle.getText('EMPTY_ROW_MODE_IS_ALREADY_ENABLED');
8
+ const unsupportedCreationRowsTooltip = resourceBundle.getText('EMPTY_ROW_MODE_IS_NOT_SUPPORTED');
9
+ return {
10
+ alreadyEnabledTooltip,
11
+ unsupportedCreationRowsTooltip
12
+ };
13
+ }
14
+ var __exports = {
15
+ __esModule: true
16
+ };
17
+ __exports.getTooltipsForTableEmptyRowModeAction = getTooltipsForTableEmptyRowModeAction;
18
+ return __exports;
19
+ });
20
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1,7 @@
1
+ import type { TextBundle } from '../../../i18n';
2
+
3
+ export function getTooltipsForTableEmptyRowModeAction(resourceBundle: TextBundle) {
4
+ const alreadyEnabledTooltip = resourceBundle.getText('EMPTY_ROW_MODE_IS_ALREADY_ENABLED');
5
+ const unsupportedCreationRowsTooltip = resourceBundle.getText('EMPTY_ROW_MODE_IS_NOT_SUPPORTED');
6
+ return { alreadyEnabledTooltip, unsupportedCreationRowsTooltip };
7
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ sap.ui.define([], function () {
4
+ "use strict";
5
+
6
+ const SMART_TABLE_TYPE = 'sap.ui.comp.smarttable.SmartTable';
7
+ const M_TABLE_TYPE = 'sap.m.Table';
8
+ const MDC_TABLE_TYPE = 'sap.ui.mdc.Table';
9
+ const TREE_TABLE_TYPE = 'sap.ui.table.TreeTable';
10
+ const GRID_TABLE_TYPE = 'sap.ui.table.Table';
11
+ const ANALYTICAL_TABLE_TYPE = 'sap.ui.table.AnalyticalTable';
12
+ const MDC_ACTION_TOOLBAR_TYPE = 'sap.ui.mdc.ActionToolbar';
13
+ var __exports = {
14
+ __esModule: true
15
+ };
16
+ __exports.SMART_TABLE_TYPE = SMART_TABLE_TYPE;
17
+ __exports.M_TABLE_TYPE = M_TABLE_TYPE;
18
+ __exports.MDC_TABLE_TYPE = MDC_TABLE_TYPE;
19
+ __exports.TREE_TABLE_TYPE = TREE_TABLE_TYPE;
20
+ __exports.GRID_TABLE_TYPE = GRID_TABLE_TYPE;
21
+ __exports.ANALYTICAL_TABLE_TYPE = ANALYTICAL_TABLE_TYPE;
22
+ __exports.MDC_ACTION_TOOLBAR_TYPE = MDC_ACTION_TOOLBAR_TYPE;
23
+ return __exports;
24
+ });
25
+ //# sourceMappingURL=control-types.js.map
@@ -0,0 +1,7 @@
1
+ export const SMART_TABLE_TYPE = 'sap.ui.comp.smarttable.SmartTable';
2
+ export const M_TABLE_TYPE = 'sap.m.Table';
3
+ export const MDC_TABLE_TYPE = 'sap.ui.mdc.Table';
4
+ export const TREE_TABLE_TYPE = 'sap.ui.table.TreeTable';
5
+ export const GRID_TABLE_TYPE = 'sap.ui.table.Table';
6
+ export const ANALYTICAL_TABLE_TYPE = 'sap.ui.table.AnalyticalTable';
7
+ export const MDC_ACTION_TOOLBAR_TYPE = 'sap.ui.mdc.ActionToolbar';
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["../../i18n", "../dialog-factory"], function (____i18n, ___dialog_factory) {
4
+ "use strict";
5
+
6
+ const getTextBundle = ____i18n["getTextBundle"];
7
+ const DialogFactory = ___dialog_factory["DialogFactory"];
8
+ const DIALOG_ENABLEMENT_VALIDATOR = {
9
+ run: async () => {
10
+ const i18n = await getTextBundle();
11
+ if (!DialogFactory.canOpenDialog) {
12
+ return {
13
+ type: 'error',
14
+ message: i18n.getText('ADP_QUICK_ACTION_DIALOG_OPEN_MESSAGE')
15
+ };
16
+ }
17
+ return undefined;
18
+ }
19
+ };
20
+ var __exports = {
21
+ __esModule: true
22
+ };
23
+ __exports.DIALOG_ENABLEMENT_VALIDATOR = DIALOG_ENABLEMENT_VALIDATOR;
24
+ return __exports;
25
+ });
26
+ //# sourceMappingURL=dialog-enablement-validator.js.map
@@ -0,0 +1,18 @@
1
+ import { getTextBundle } from '../../i18n';
2
+
3
+ import { DialogFactory } from '../dialog-factory';
4
+
5
+ import type { EnablementValidator, EnablementValidatorResult } from './enablement-validator';
6
+
7
+ export const DIALOG_ENABLEMENT_VALIDATOR: EnablementValidator = {
8
+ run: async (): Promise<EnablementValidatorResult> => {
9
+ const i18n = await getTextBundle();
10
+ if (!DialogFactory.canOpenDialog) {
11
+ return {
12
+ type: 'error',
13
+ message: i18n.getText('ADP_QUICK_ACTION_DIALOG_OPEN_MESSAGE')
14
+ };
15
+ }
16
+ return undefined;
17
+ }
18
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=enablement-validator.js.map
@@ -0,0 +1,19 @@
1
+ export interface EnablementValidatorSuccess {
2
+ type: 'success';
3
+ }
4
+
5
+ export interface EnablementValidatorError {
6
+ type: 'error';
7
+ message: string;
8
+ }
9
+
10
+ export type EnablementValidatorResult = undefined | EnablementValidatorError;
11
+
12
+ export interface EnablementValidator {
13
+ /**
14
+ * Checks if action can be executed.
15
+ *
16
+ * @returns Validation result.
17
+ */
18
+ run: () => EnablementValidatorResult | Promise<EnablementValidatorResult>;
19
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["../../../utils/fe-v2", "../add-new-subpage-quick-action-base", "../../../utils/core", "./utils"], function (_____utils_fe_v2, ___add_new_subpage_quick_action_base, _____utils_core, ___utils) {
4
+ "use strict";
5
+
6
+ const getV2ApplicationPages = _____utils_fe_v2["getV2ApplicationPages"];
7
+ const AddNewSubpageBase = ___add_new_subpage_quick_action_base["AddNewSubpageBase"];
8
+ const isA = _____utils_core["isA"];
9
+ const areManifestChangesSupported = ___utils["areManifestChangesSupported"];
10
+ const getV2AppComponent = ___utils["getV2AppComponent"];
11
+ const OBJECT_PAGE_COMPONENT_NAME_V2 = 'sap.suite.ui.generic.template.ObjectPage';
12
+
13
+ /**
14
+ * Quick Action for adding a custom page action.
15
+ */
16
+ class AddNewSubpage extends AddNewSubpageBase {
17
+ get currentPageDescriptor() {
18
+ if (!this.entitySet) {
19
+ throw new Error('entitySet is not defined');
20
+ }
21
+ if (!this.pageType) {
22
+ throw new Error('pageType is not defined');
23
+ }
24
+ if (!this.appComponent) {
25
+ throw new Error('appComponent is not defined');
26
+ }
27
+ return {
28
+ appType: 'fe-v2',
29
+ appComponent: this.appComponent,
30
+ entitySet: this.entitySet,
31
+ pageType: this.pageType
32
+ };
33
+ }
34
+ getApplicationPages() {
35
+ return getV2ApplicationPages(this.context.manifest);
36
+ }
37
+ isPageExists(targetEntitySet) {
38
+ return this.existingPages.some(page => page.entitySet === targetEntitySet);
39
+ }
40
+ isCurrentObjectPage() {
41
+ return this.pageType === OBJECT_PAGE_COMPONENT_NAME_V2;
42
+ }
43
+ getODataMetaModel() {
44
+ return this.context.rta.getRootControlInstance().getModel()?.getMetaModel();
45
+ }
46
+ getEntitySetNameFromPageComponent(component) {
47
+ if (!isA('sap.suite.ui.generic.template.lib.TemplateComponent', component)) {
48
+ throw new Error('Unexpected type of page owner component');
49
+ }
50
+ return Promise.resolve(component.getEntitySet());
51
+ }
52
+ async prepareNavigationData(metaModel) {
53
+ const entitySet = metaModel.getODataEntitySet(this.entitySet);
54
+ const entityType = metaModel.getODataEntityType(entitySet.entityType);
55
+ for (const navProp of entityType?.navigationProperty ?? []) {
56
+ const associationEnd = metaModel.getODataAssociationEnd(entityType, navProp.name);
57
+ if (associationEnd?.multiplicity !== '*') {
58
+ continue;
59
+ }
60
+ const entityContainer = metaModel.getODataEntityContainer();
61
+ if (!entityContainer?.entitySet?.length) {
62
+ continue;
63
+ }
64
+ const targetEntitySet = entityContainer.entitySet.find(item => item.entityType === associationEnd.type);
65
+ await this.addNavigationOptionIfAvailable(metaModel, targetEntitySet?.name, navProp.name);
66
+ }
67
+ }
68
+ async initialize() {
69
+ if (!(await areManifestChangesSupported(this.context.manifest))) {
70
+ return;
71
+ }
72
+ this.appComponent = getV2AppComponent(this.context.view);
73
+ return super.initialize();
74
+ }
75
+ }
76
+ var __exports = {
77
+ __esModule: true
78
+ };
79
+ __exports.AddNewSubpage = AddNewSubpage;
80
+ return __exports;
81
+ });
82
+ //# sourceMappingURL=add-new-subpage.js.map
@@ -0,0 +1,87 @@
1
+ import ODataModelV2 from 'sap/ui/model/odata/v2/ODataModel';
2
+ import ODataMetaModelV2, { EntityContainer, EntitySet, EntityType } from 'sap/ui/model/odata/ODataMetaModel';
3
+ import TemplateComponent from 'sap/suite/ui/generic/template/lib/TemplateComponent';
4
+ import type AppComponent from 'sap/suite/ui/generic/template/lib/AppComponent';
5
+
6
+ import { getV2ApplicationPages } from '../../../utils/fe-v2';
7
+ import { AddNewSubpageBase, ApplicationPageData } from '../add-new-subpage-quick-action-base';
8
+ import Component from 'sap/ui/core/Component';
9
+ import { isA } from '../../../utils/core';
10
+ import { areManifestChangesSupported, getV2AppComponent } from './utils';
11
+ import { PageDescriptorV2 } from '../../controllers/AddSubpage.controller';
12
+
13
+ const OBJECT_PAGE_COMPONENT_NAME_V2 = 'sap.suite.ui.generic.template.ObjectPage';
14
+
15
+ /**
16
+ * Quick Action for adding a custom page action.
17
+ */
18
+ export class AddNewSubpage extends AddNewSubpageBase<ODataMetaModelV2> {
19
+ protected appComponent: AppComponent | undefined;
20
+
21
+ protected get currentPageDescriptor(): PageDescriptorV2 {
22
+ if (!this.entitySet) {
23
+ throw new Error('entitySet is not defined');
24
+ }
25
+ if (!this.pageType) {
26
+ throw new Error('pageType is not defined');
27
+ }
28
+ if (!this.appComponent) {
29
+ throw new Error('appComponent is not defined');
30
+ }
31
+ return {
32
+ appType: 'fe-v2',
33
+ appComponent: this.appComponent,
34
+ entitySet: this.entitySet,
35
+ pageType: this.pageType
36
+ };
37
+ }
38
+
39
+ protected getApplicationPages(): ApplicationPageData[] {
40
+ return getV2ApplicationPages(this.context.manifest);
41
+ }
42
+
43
+ protected isPageExists(targetEntitySet: string): boolean {
44
+ return this.existingPages.some((page) => page.entitySet === targetEntitySet);
45
+ }
46
+
47
+ protected isCurrentObjectPage(): boolean {
48
+ return this.pageType === OBJECT_PAGE_COMPONENT_NAME_V2;
49
+ }
50
+
51
+ protected getODataMetaModel(): ODataMetaModelV2 | undefined {
52
+ return (this.context.rta.getRootControlInstance().getModel() as ODataModelV2)?.getMetaModel();
53
+ }
54
+
55
+ protected getEntitySetNameFromPageComponent(component: Component | undefined): Promise<string> {
56
+ if (!isA<TemplateComponent>('sap.suite.ui.generic.template.lib.TemplateComponent', component)) {
57
+ throw new Error('Unexpected type of page owner component');
58
+ }
59
+ return Promise.resolve(component.getEntitySet());
60
+ }
61
+
62
+ protected async prepareNavigationData(metaModel: ODataMetaModelV2): Promise<void> {
63
+ const entitySet = metaModel.getODataEntitySet(this.entitySet!) as EntitySet;
64
+ const entityType = metaModel.getODataEntityType(entitySet.entityType) as EntityType;
65
+
66
+ for (const navProp of entityType?.navigationProperty ?? []) {
67
+ const associationEnd = metaModel.getODataAssociationEnd(entityType, navProp.name);
68
+ if (associationEnd?.multiplicity !== '*') {
69
+ continue;
70
+ }
71
+ const entityContainer = metaModel.getODataEntityContainer() as EntityContainer;
72
+ if (!entityContainer?.entitySet?.length) {
73
+ continue;
74
+ }
75
+ const targetEntitySet = entityContainer.entitySet.find((item) => item.entityType === associationEnd.type);
76
+ await this.addNavigationOptionIfAvailable(metaModel, targetEntitySet?.name, navProp.name);
77
+ }
78
+ }
79
+
80
+ async initialize(): Promise<void> {
81
+ if (!(await areManifestChangesSupported(this.context.manifest))) {
82
+ return;
83
+ }
84
+ this.appComponent = getV2AppComponent(this.context.view);
85
+ return super.initialize();
86
+ }
87
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["../../../utils/core", "../table-quick-action-base", "../control-types", "../dialog-enablement-validator"], function (_____utils_core, ___table_quick_action_base, ___control_types, ___dialog_enablement_validator) {
4
+ "use strict";
5
+
6
+ const getControlById = _____utils_core["getControlById"];
7
+ const TableQuickActionDefinitionBase = ___table_quick_action_base["TableQuickActionDefinitionBase"];
8
+ const SMART_TABLE_TYPE = ___control_types["SMART_TABLE_TYPE"];
9
+ const DIALOG_ENABLEMENT_VALIDATOR = ___dialog_enablement_validator["DIALOG_ENABLEMENT_VALIDATOR"];
10
+ const CHANGE_TABLE_ACTIONS = 'change-table-actions';
11
+ const CONTROL_TYPES = [SMART_TABLE_TYPE];
12
+ class ChangeTableActionsQuickAction extends TableQuickActionDefinitionBase {
13
+ constructor(context) {
14
+ super(CHANGE_TABLE_ACTIONS, CONTROL_TYPES, 'V2_QUICK_ACTION_CHANGE_TABLE_ACTIONS', context, {
15
+ includeServiceAction: true
16
+ }, [DIALOG_ENABLEMENT_VALIDATOR]);
17
+ }
18
+ async initialize() {
19
+ const processChild = (child, mapKey) => {
20
+ const tableAction = this.tableMap[mapKey]?.changeToolbarContentAction;
21
+ child.enabled = !!tableAction?.enabled;
22
+ child.tooltip = child.enabled ? undefined : this.context.resourceBundle.getText('TABLE_HEADER_TOOLBAR_NOT_CHANGEABLE');
23
+ child.children.forEach((nestedChild, idx) => processChild(nestedChild, `${mapKey}/${idx}`));
24
+ };
25
+ await super.initialize();
26
+
27
+ // disable nested actions based on conditions
28
+ this.children.forEach((nestedChild, idx) => processChild(nestedChild, `${idx}`));
29
+ }
30
+ async execute(path) {
31
+ const {
32
+ table,
33
+ iconTabBarFilterKey,
34
+ changeToolbarContentAction,
35
+ sectionInfo
36
+ } = this.tableMap[path];
37
+ if (!table) {
38
+ return [];
39
+ }
40
+ if (sectionInfo) {
41
+ const {
42
+ layout,
43
+ section,
44
+ subSection
45
+ } = sectionInfo;
46
+ layout?.setSelectedSection(section);
47
+ section.setSelectedSubSection(subSection);
48
+ this.selectOverlay(table);
49
+ } else {
50
+ getControlById(table.getId())?.getDomRef()?.scrollIntoView();
51
+ this.selectOverlay(table);
52
+ }
53
+ if (this.iconTabBar && iconTabBarFilterKey) {
54
+ this.iconTabBar.setSelectedKey(iconTabBarFilterKey);
55
+ }
56
+ if (changeToolbarContentAction) {
57
+ await this.context.actionService.execute(table.getId(), changeToolbarContentAction.id);
58
+ }
59
+ return [];
60
+ }
61
+ }
62
+ var __exports = {
63
+ __esModule: true
64
+ };
65
+ __exports.CHANGE_TABLE_ACTIONS = CHANGE_TABLE_ACTIONS;
66
+ __exports.ChangeTableActionsQuickAction = ChangeTableActionsQuickAction;
67
+ return __exports;
68
+ });
69
+ //# sourceMappingURL=change-table-actions.js.map
@@ -0,0 +1,71 @@
1
+ import FlexCommand from 'sap/ui/rta/command/FlexCommand';
2
+
3
+ import { QuickActionContext, NestedQuickActionDefinition } from '../../../cpe/quick-actions/quick-action-definition';
4
+ import { getControlById } from '../../../utils/core';
5
+ import { TableQuickActionDefinitionBase } from '../table-quick-action-base';
6
+ import { NestedQuickActionChild } from '@sap-ux-private/control-property-editor-common';
7
+ import { SMART_TABLE_TYPE } from '../control-types';
8
+ import { DIALOG_ENABLEMENT_VALIDATOR } from '../dialog-enablement-validator';
9
+
10
+ export const CHANGE_TABLE_ACTIONS = 'change-table-actions';
11
+ const CONTROL_TYPES = [SMART_TABLE_TYPE];
12
+
13
+ export class ChangeTableActionsQuickAction
14
+ extends TableQuickActionDefinitionBase
15
+ implements NestedQuickActionDefinition
16
+ {
17
+ constructor(context: QuickActionContext) {
18
+ super(
19
+ CHANGE_TABLE_ACTIONS,
20
+ CONTROL_TYPES,
21
+ 'V2_QUICK_ACTION_CHANGE_TABLE_ACTIONS',
22
+ context,
23
+ {
24
+ includeServiceAction: true
25
+ },
26
+ [DIALOG_ENABLEMENT_VALIDATOR]
27
+ );
28
+ }
29
+
30
+ async initialize(): Promise<void> {
31
+ const processChild = (child: NestedQuickActionChild, mapKey: string) => {
32
+ const tableAction = this.tableMap[mapKey]?.changeToolbarContentAction;
33
+ child.enabled = !!tableAction?.enabled;
34
+ child.tooltip = child.enabled
35
+ ? undefined
36
+ : this.context.resourceBundle.getText('TABLE_HEADER_TOOLBAR_NOT_CHANGEABLE');
37
+ child.children.forEach((nestedChild, idx) => processChild(nestedChild, `${mapKey}/${idx}`));
38
+ };
39
+
40
+ await super.initialize();
41
+
42
+ // disable nested actions based on conditions
43
+ this.children.forEach((nestedChild, idx) => processChild(nestedChild, `${idx}`));
44
+ }
45
+
46
+ async execute(path: string): Promise<FlexCommand[]> {
47
+ const { table, iconTabBarFilterKey, changeToolbarContentAction, sectionInfo } = this.tableMap[path];
48
+ if (!table) {
49
+ return [];
50
+ }
51
+
52
+ if (sectionInfo) {
53
+ const { layout, section, subSection } = sectionInfo;
54
+ layout?.setSelectedSection(section);
55
+ section.setSelectedSubSection(subSection);
56
+ this.selectOverlay(table);
57
+ } else {
58
+ getControlById(table.getId())?.getDomRef()?.scrollIntoView();
59
+ this.selectOverlay(table);
60
+ }
61
+
62
+ if (this.iconTabBar && iconTabBarFilterKey) {
63
+ this.iconTabBar.setSelectedKey(iconTabBarFilterKey);
64
+ }
65
+ if (changeToolbarContentAction) {
66
+ await this.context.actionService.execute(table.getId(), changeToolbarContentAction.id);
67
+ }
68
+
69
+ return [];
70
+ }
71
+ }