@sap/ux-ui5-tooling 1.20.4 → 1.22.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 (289) hide show
  1. package/CHANGELOG.md +60 -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 +17761 -11603
  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 +44007 -41669
  35. package/dist/middlewares/fiori-tools-preview.js +66889 -4176
  36. package/dist/middlewares/fiori-tools-proxy.js +38049 -5767
  37. package/dist/middlewares/fiori-tools-servestatic.js +32893 -347
  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 +165 -0
  41. package/dist/preview-middleware/dist/client/adp/api-handler.ts +191 -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 +111 -0
  75. package/dist/preview-middleware/dist/client/adp/init.ts +92 -0
  76. package/dist/preview-middleware/dist/client/adp/ovp-window-functions.js +130 -0
  77. package/dist/preview-middleware/dist/client/adp/ovp-window-functions.ts +171 -0
  78. package/dist/preview-middleware/dist/client/adp/quick-actions/add-new-subpage-quick-action-base.js +97 -0
  79. package/dist/preview-middleware/dist/client/adp/quick-actions/add-new-subpage-quick-action-base.ts +140 -0
  80. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-controller-to-page.js +74 -0
  81. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-controller-to-page.ts +92 -0
  82. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-new-annotation-file.js +171 -0
  83. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-new-annotation-file.ts +174 -0
  84. package/dist/preview-middleware/dist/client/adp/quick-actions/common/create-page-action.js +56 -0
  85. package/dist/preview-middleware/dist/client/adp/quick-actions/common/create-page-action.ts +56 -0
  86. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-custom-section.js +41 -0
  87. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-custom-section.ts +51 -0
  88. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-header-field.js +69 -0
  89. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-header-field.ts +81 -0
  90. package/dist/preview-middleware/dist/client/adp/quick-actions/common/utils.js +20 -0
  91. package/dist/preview-middleware/dist/client/adp/quick-actions/common/utils.ts +7 -0
  92. package/dist/preview-middleware/dist/client/adp/quick-actions/control-types.js +25 -0
  93. package/dist/preview-middleware/dist/client/adp/quick-actions/control-types.ts +7 -0
  94. package/dist/preview-middleware/dist/client/adp/quick-actions/dialog-enablement-validator.js +26 -0
  95. package/dist/preview-middleware/dist/client/adp/quick-actions/dialog-enablement-validator.ts +18 -0
  96. package/dist/preview-middleware/dist/client/adp/quick-actions/enablement-validator.js +2 -0
  97. package/dist/preview-middleware/dist/client/adp/quick-actions/enablement-validator.ts +19 -0
  98. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/add-new-subpage.js +82 -0
  99. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/add-new-subpage.ts +87 -0
  100. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-actions.js +69 -0
  101. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-actions.ts +71 -0
  102. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-columns.js +103 -0
  103. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-columns.ts +105 -0
  104. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-action.js +111 -0
  105. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-action.ts +110 -0
  106. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-custom-column.js +108 -0
  107. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-custom-column.ts +141 -0
  108. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-semantic-date-range-filter-bar.js +80 -0
  109. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-semantic-date-range-filter-bar.ts +93 -0
  110. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-table-filtering.js +79 -0
  111. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-table-filtering.ts +102 -0
  112. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-variant-management.js +71 -0
  113. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-variant-management.ts +98 -0
  114. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-toggle-clear-filter-bar.js +61 -0
  115. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-toggle-clear-filter-bar.ts +77 -0
  116. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-empty-row-mode.js +95 -0
  117. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-empty-row-mode.ts +102 -0
  118. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-variant-management.js +86 -0
  119. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-variant-management.ts +116 -0
  120. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/registry.js +79 -0
  121. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/registry.ts +121 -0
  122. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/utils.js +138 -0
  123. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/utils.ts +134 -0
  124. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/add-new-subpage.js +140 -0
  125. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/add-new-subpage.ts +181 -0
  126. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-actions.js +81 -0
  127. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-actions.ts +81 -0
  128. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-columns.js +90 -0
  129. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-columns.ts +97 -0
  130. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-page-action.js +81 -0
  131. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-page-action.ts +98 -0
  132. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-action-config-change.js +129 -0
  133. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-action-config-change.ts +149 -0
  134. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-custom-column-config-change.js +142 -0
  135. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-custom-column-config-change.ts +178 -0
  136. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/enable-variant-management.js +83 -0
  137. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/enable-variant-management.ts +96 -0
  138. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-semantic-date-range-filter-bar.js +58 -0
  139. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-semantic-date-range-filter-bar.ts +70 -0
  140. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-table-filtering.js +86 -0
  141. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-table-filtering.ts +96 -0
  142. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-toggle-clear-filter-bar.js +55 -0
  143. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-toggle-clear-filter-bar.ts +61 -0
  144. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-add-custom-section.js +73 -0
  145. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-add-custom-section.ts +91 -0
  146. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-enable-empty-row-mode.js +91 -0
  147. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-enable-empty-row-mode.ts +88 -0
  148. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/registry.js +62 -0
  149. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/registry.ts +86 -0
  150. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/utils.js +158 -0
  151. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/utils.ts +175 -0
  152. package/dist/preview-middleware/dist/client/adp/quick-actions/load.js +46 -0
  153. package/dist/preview-middleware/dist/client/adp/quick-actions/load.ts +23 -0
  154. package/dist/preview-middleware/dist/client/adp/quick-actions/quick-action-base.js +64 -0
  155. package/dist/preview-middleware/dist/client/adp/quick-actions/quick-action-base.ts +71 -0
  156. package/dist/preview-middleware/dist/client/adp/quick-actions/simple-quick-action-base.js +44 -0
  157. package/dist/preview-middleware/dist/client/adp/quick-actions/simple-quick-action-base.ts +51 -0
  158. package/dist/preview-middleware/dist/client/adp/quick-actions/supported-ui5versions.md +40 -0
  159. package/dist/preview-middleware/dist/client/adp/quick-actions/table-quick-action-base.js +372 -0
  160. package/dist/preview-middleware/dist/client/adp/quick-actions/table-quick-action-base.ts +433 -0
  161. package/dist/preview-middleware/dist/client/adp/sync-views-utils.js +123 -0
  162. package/dist/preview-middleware/dist/client/adp/sync-views-utils.ts +90 -0
  163. package/dist/preview-middleware/dist/client/adp/ui/AddAction.fragment.xml +49 -0
  164. package/dist/preview-middleware/dist/client/adp/ui/AddCustomFragment.fragment.xml +48 -0
  165. package/dist/preview-middleware/dist/client/adp/ui/AddFragment.fragment.xml +83 -0
  166. package/dist/preview-middleware/dist/client/adp/ui/AddSubpage.fragment.xml +73 -0
  167. package/dist/preview-middleware/dist/client/adp/ui/AddTableColumnFragments.fragment.xml +63 -0
  168. package/dist/preview-middleware/dist/client/adp/ui/ControllerExtension.fragment.xml +63 -0
  169. package/dist/preview-middleware/dist/client/adp/ui/ExtensionPoint.fragment.xml +61 -0
  170. package/dist/preview-middleware/dist/client/adp/ui/FileExistsDialog.fragment.xml +43 -0
  171. package/dist/preview-middleware/dist/client/adp/utils.js +199 -0
  172. package/dist/preview-middleware/dist/client/adp/utils.ts +200 -0
  173. package/dist/preview-middleware/dist/client/cpe/additional-change-info/add-xml-additional-info.js +85 -0
  174. package/dist/preview-middleware/dist/client/cpe/additional-change-info/add-xml-additional-info.ts +107 -0
  175. package/dist/preview-middleware/dist/client/cpe/changes/flex-change.js +66 -0
  176. package/dist/preview-middleware/dist/client/cpe/changes/flex-change.ts +66 -0
  177. package/dist/preview-middleware/dist/client/cpe/changes/generic-change.js +321 -0
  178. package/dist/preview-middleware/dist/client/cpe/changes/generic-change.ts +462 -0
  179. package/dist/preview-middleware/dist/client/cpe/changes/index.js +12 -0
  180. package/dist/preview-middleware/dist/client/cpe/changes/index.ts +1 -0
  181. package/dist/preview-middleware/dist/client/cpe/changes/service.js +527 -0
  182. package/dist/preview-middleware/dist/client/cpe/changes/service.ts +595 -0
  183. package/dist/preview-middleware/dist/client/cpe/changes/validator.js +41 -0
  184. package/dist/preview-middleware/dist/client/cpe/changes/validator.ts +35 -0
  185. package/dist/preview-middleware/dist/client/cpe/communication-service.js +44 -0
  186. package/dist/preview-middleware/dist/client/cpe/communication-service.ts +41 -0
  187. package/dist/preview-middleware/dist/client/cpe/connector-service.js +88 -0
  188. package/dist/preview-middleware/dist/client/cpe/connector-service.ts +74 -0
  189. package/dist/preview-middleware/dist/client/cpe/context-menu-service.js +90 -0
  190. package/dist/preview-middleware/dist/client/cpe/context-menu-service.ts +77 -0
  191. package/dist/preview-middleware/dist/client/cpe/control-data.js +366 -0
  192. package/dist/preview-middleware/dist/client/cpe/control-data.ts +400 -0
  193. package/dist/preview-middleware/dist/client/cpe/documentation.js +191 -0
  194. package/dist/preview-middleware/dist/client/cpe/documentation.ts +187 -0
  195. package/dist/preview-middleware/dist/client/cpe/feature-service.js +39 -0
  196. package/dist/preview-middleware/dist/client/cpe/feature-service.ts +25 -0
  197. package/dist/preview-middleware/dist/client/cpe/init.js +92 -0
  198. package/dist/preview-middleware/dist/client/cpe/init.ts +114 -0
  199. package/dist/preview-middleware/dist/client/cpe/logger.js +32 -0
  200. package/dist/preview-middleware/dist/client/cpe/logger.ts +24 -0
  201. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-checker.js +136 -0
  202. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-checker.ts +160 -0
  203. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-status.js +63 -0
  204. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-status.ts +52 -0
  205. package/dist/preview-middleware/dist/client/cpe/outline/editable.js +38 -0
  206. package/dist/preview-middleware/dist/client/cpe/outline/editable.ts +30 -0
  207. package/dist/preview-middleware/dist/client/cpe/outline/nodes.js +212 -0
  208. package/dist/preview-middleware/dist/client/cpe/outline/nodes.ts +236 -0
  209. package/dist/preview-middleware/dist/client/cpe/outline/service.js +62 -0
  210. package/dist/preview-middleware/dist/client/cpe/outline/service.ts +66 -0
  211. package/dist/preview-middleware/dist/client/cpe/quick-actions/quick-action-service.js +161 -0
  212. package/dist/preview-middleware/dist/client/cpe/quick-actions/quick-action-service.ts +184 -0
  213. package/dist/preview-middleware/dist/client/cpe/quick-actions/registry.js +145 -0
  214. package/dist/preview-middleware/dist/client/cpe/quick-actions/registry.ts +157 -0
  215. package/dist/preview-middleware/dist/client/cpe/quick-actions/utils.js +94 -0
  216. package/dist/preview-middleware/dist/client/cpe/quick-actions/utils.ts +113 -0
  217. package/dist/preview-middleware/dist/client/cpe/rta-service.js +94 -0
  218. package/dist/preview-middleware/dist/client/cpe/rta-service.ts +86 -0
  219. package/dist/preview-middleware/dist/client/cpe/selection.js +249 -0
  220. package/dist/preview-middleware/dist/client/cpe/selection.ts +267 -0
  221. package/dist/preview-middleware/dist/client/cpe/ui5-utils.js +35 -0
  222. package/dist/preview-middleware/dist/client/cpe/ui5-utils.ts +28 -0
  223. package/dist/preview-middleware/dist/client/cpe/utils.js +113 -0
  224. package/dist/preview-middleware/dist/client/cpe/utils.ts +162 -0
  225. package/dist/preview-middleware/dist/client/flp/WorkspaceConnector.js +97 -0
  226. package/dist/preview-middleware/dist/client/flp/WorkspaceConnector.ts +101 -0
  227. package/dist/preview-middleware/dist/client/flp/common.js +30 -0
  228. package/dist/preview-middleware/dist/client/flp/common.ts +28 -0
  229. package/dist/preview-middleware/dist/client/flp/enableFakeConnector.js +92 -0
  230. package/dist/preview-middleware/dist/client/flp/enableFakeConnector.ts +113 -0
  231. package/dist/preview-middleware/dist/client/flp/homepage/Component.js +16 -0
  232. package/dist/preview-middleware/dist/client/flp/homepage/Component.ts +10 -0
  233. package/dist/preview-middleware/dist/client/flp/homepage/controller/MyHome.controller.js +54 -0
  234. package/dist/preview-middleware/dist/client/flp/homepage/controller/MyHome.controller.ts +41 -0
  235. package/dist/preview-middleware/dist/client/flp/homepage/css/style.css +3 -0
  236. package/dist/preview-middleware/dist/client/flp/homepage/manifest.json +41 -0
  237. package/dist/preview-middleware/dist/client/flp/homepage/view/MyHome.view.xml +18 -0
  238. package/dist/preview-middleware/dist/client/flp/init.js +418 -0
  239. package/dist/preview-middleware/dist/client/flp/init.ts +448 -0
  240. package/dist/preview-middleware/dist/client/flp/initCdm.js +117 -0
  241. package/dist/preview-middleware/dist/client/flp/initCdm.ts +111 -0
  242. package/dist/preview-middleware/dist/client/flp/initConnectors.js +31 -0
  243. package/dist/preview-middleware/dist/client/flp/initConnectors.ts +20 -0
  244. package/dist/preview-middleware/dist/client/flp/initRta.js +180 -0
  245. package/dist/preview-middleware/dist/client/flp/initRta.ts +194 -0
  246. package/dist/preview-middleware/dist/client/i18n.js +56 -0
  247. package/dist/preview-middleware/dist/client/i18n.ts +49 -0
  248. package/dist/preview-middleware/dist/client/manifest.json +8 -0
  249. package/dist/preview-middleware/dist/client/messagebundle.properties +143 -0
  250. package/dist/preview-middleware/dist/client/thirdparty/@sap-ux-private/control-property-editor-common.js +486 -0
  251. package/dist/preview-middleware/dist/client/utils/additional-change-info.js +69 -0
  252. package/dist/preview-middleware/dist/client/utils/additional-change-info.ts +73 -0
  253. package/dist/preview-middleware/dist/client/utils/application.js +34 -0
  254. package/dist/preview-middleware/dist/client/utils/application.ts +27 -0
  255. package/dist/preview-middleware/dist/client/utils/core.js +144 -0
  256. package/dist/preview-middleware/dist/client/utils/core.ts +145 -0
  257. package/dist/preview-middleware/dist/client/utils/error.js +28 -0
  258. package/dist/preview-middleware/dist/client/utils/error.ts +18 -0
  259. package/dist/preview-middleware/dist/client/utils/fe-v2.js +58 -0
  260. package/dist/preview-middleware/dist/client/utils/fe-v2.ts +61 -0
  261. package/dist/preview-middleware/dist/client/utils/fe-v4.js +168 -0
  262. package/dist/preview-middleware/dist/client/utils/fe-v4.ts +186 -0
  263. package/dist/preview-middleware/dist/client/utils/info-center-message.js +60 -0
  264. package/dist/preview-middleware/dist/client/utils/info-center-message.ts +60 -0
  265. package/dist/preview-middleware/dist/client/utils/version.js +126 -0
  266. package/dist/preview-middleware/dist/client/utils/version.ts +138 -0
  267. package/dist/preview-middleware/templates/flp/cdm.base.json +47 -0
  268. package/dist/preview-middleware/templates/flp/cdm.ejs +72 -0
  269. package/dist/preview-middleware/templates/flp/editor.ejs +28 -0
  270. package/dist/preview-middleware/templates/flp/sandbox.ejs +88 -0
  271. package/dist/preview-middleware/templates/flp/sandbox2.ejs +86 -0
  272. package/dist/preview-middleware/templates/test/qunit.ejs +26 -0
  273. package/dist/preview-middleware/templates/test/qunit.js +29 -0
  274. package/dist/preview-middleware/templates/test/testsuite.qunit.ejs +10 -0
  275. package/dist/preview-middleware/templates/test/testsuite.qunit.js +8 -0
  276. package/dist/tasks/cf-deploy/index.js +3916 -3521
  277. package/dist/tasks/deploy/index.js +17204 -11133
  278. package/package.json +36 -39
  279. package/prebuilds/keyring.darwin-arm64.node +0 -0
  280. package/prebuilds/keyring.darwin-x64.node +0 -0
  281. package/prebuilds/keyring.linux-arm-gnueabihf.node +0 -0
  282. package/prebuilds/keyring.linux-arm64-gnu.node +0 -0
  283. package/prebuilds/keyring.linux-arm64-musl.node +0 -0
  284. package/prebuilds/keyring.linux-ia32-gnu.node +0 -0
  285. package/prebuilds/keyring.linux-x64-gnu.node +0 -0
  286. package/prebuilds/keyring.linux-x64-musl.node +0 -0
  287. package/prebuilds/keyring.win32-arm64-msvc.node +0 -0
  288. package/prebuilds/keyring.win32-ia32-msvc.node +0 -0
  289. package/prebuilds/keyring.win32-x64-msvc.node +0 -0
@@ -0,0 +1,174 @@
1
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
2
+
3
+ import {
4
+ NESTED_QUICK_ACTION_KIND,
5
+ NestedQuickAction,
6
+ NestedQuickActionChild
7
+ } from '@sap-ux-private/control-property-editor-common';
8
+ import OverlayRegistry from 'sap/ui/dt/OverlayRegistry';
9
+ import CommandFactory from 'sap/ui/rta/command/CommandFactory';
10
+ import { NestedQuickActionDefinition, QuickActionContext } from '../../../cpe/quick-actions/quick-action-definition';
11
+ import { getApplicationType } from '../../../utils/application';
12
+ import { getV4AppComponent } from '../../../utils/fe-v4';
13
+ import { getUi5Version, isLowerThanMinimalUi5Version } from '../../../utils/version';
14
+ import type { AnnotationDataSourceResponse } from '../../api-handler';
15
+ import { getDataSourceAnnotationFileMap } from '../../api-handler';
16
+ import { DialogFactory, DialogNames } from '../../dialog-factory';
17
+ import { DIALOG_ENABLEMENT_VALIDATOR } from '../dialog-enablement-validator';
18
+ import { getV2AppComponent } from '../fe-v2/utils';
19
+ import { QuickActionDefinitionBase } from '../quick-action-base';
20
+
21
+ export const ADD_NEW_ANNOTATION_FILE = 'add-new-annotation-file';
22
+ const ADD_NEW_ANNOTATION_FILE_TITLE = 'QUICK_ACTION_ADD_NEW_ANNOTATION_FILE';
23
+
24
+ /**
25
+ * Add New Annotation File.
26
+ */
27
+ export class AddNewAnnotationFile
28
+ extends QuickActionDefinitionBase<typeof NESTED_QUICK_ACTION_KIND>
29
+ implements NestedQuickActionDefinition
30
+ {
31
+ public children: NestedQuickActionChild[] = [];
32
+ public get quickActionSteps(): number {
33
+ return 1;
34
+ }
35
+ readonly kind = NESTED_QUICK_ACTION_KIND;
36
+ readonly type = ADD_NEW_ANNOTATION_FILE;
37
+ readonly forceRefreshAfterExecution = true;
38
+ public isApplicable = true;
39
+ public get id(): string {
40
+ return `${this.context.key}-${this.type}`;
41
+ }
42
+ private annotationDataSourceData: AnnotationDataSourceResponse;
43
+ constructor(protected readonly context: QuickActionContext) {
44
+ super(ADD_NEW_ANNOTATION_FILE, NESTED_QUICK_ACTION_KIND, '', context, [DIALOG_ENABLEMENT_VALIDATOR]);
45
+ }
46
+
47
+ async initialize(): Promise<void> {
48
+ const version = await getUi5Version();
49
+ if (isLowerThanMinimalUi5Version(version, { major: 1, minor: 108, patch: 27 })) {
50
+ this.isApplicable = false;
51
+ return;
52
+ }
53
+ this.annotationDataSourceData = await getDataSourceAnnotationFileMap();
54
+ const { annotationDataSourceMap } = this.annotationDataSourceData;
55
+ if (!Object.keys(this.annotationDataSourceData.annotationDataSourceMap).length) {
56
+ throw new Error('No data sources found in the manifest');
57
+ }
58
+
59
+ for (const key in annotationDataSourceMap) {
60
+ if (Object.prototype.hasOwnProperty.call(annotationDataSourceMap, key)) {
61
+ const source = annotationDataSourceMap[key];
62
+ const { annotationExistsInWS } = source.annotationDetails;
63
+ if (source.metadataReadErrorMsg) {
64
+ this.children.push({
65
+ path: this.children.length.toString(),
66
+ enabled: false,
67
+ tooltip: source.metadataReadErrorMsg,
68
+ label: this.context.resourceBundle.getText('ADD_ANNOTATION_FILE', [key]),
69
+ children: []
70
+ });
71
+ } else {
72
+ this.children.push({
73
+ path: this.children.length.toString(),
74
+ enabled: true,
75
+ label: annotationExistsInWS
76
+ ? this.context.resourceBundle.getText('SHOW_ANNOTATION_FILE', [key])
77
+ : this.context.resourceBundle.getText('ADD_ANNOTATION_FILE', [key]),
78
+ children: []
79
+ });
80
+ }
81
+ }
82
+ }
83
+ }
84
+ protected get textKey() {
85
+ let result = ADD_NEW_ANNOTATION_FILE_TITLE;
86
+ const dataSourceIds = Object.keys(this.annotationDataSourceData.annotationDataSourceMap);
87
+ if (dataSourceIds.length === 1) {
88
+ const details = this.annotationDataSourceData.annotationDataSourceMap[dataSourceIds[0]];
89
+ if (details.annotationDetails.annotationExistsInWS) {
90
+ result = 'QUICK_ACTION_SHOW_ANNOTATION_FILE';
91
+ }
92
+ }
93
+ return result;
94
+ }
95
+ async execute(path: string): Promise<FlexCommand[]> {
96
+ const { annotationDataSourceMap, isRunningInBAS } = this.annotationDataSourceData;
97
+ const appType = getApplicationType(this.context.rta.getRootControlInstance().getManifest());
98
+ const index = Number(path);
99
+ if (index >= 0) {
100
+ const dataSourceId = Object.keys(annotationDataSourceMap)[index];
101
+ const dataSource = annotationDataSourceMap[dataSourceId];
102
+ if (dataSource?.annotationDetails.annotationExistsInWS) {
103
+ const annotationFileDetails = dataSource.annotationDetails;
104
+ const { annotationPath, annotationPathFromRoot } = annotationFileDetails;
105
+ await DialogFactory.createDialog(
106
+ OverlayRegistry.getOverlay(this.context.view), // this passed only because, for method param is required.
107
+ this.context.rta, // same as above
108
+ DialogNames.FILE_EXISTS,
109
+ undefined,
110
+ {
111
+ fileName: annotationPathFromRoot,
112
+ filePath: annotationPath,
113
+ isRunningInBAS: isRunningInBAS
114
+ }
115
+ );
116
+ }
117
+ // Create annotation file only, if no file exists already for datasource id or if the change file exist and but no annotation file exists in file system.
118
+ else if (dataSource) {
119
+ const timestamp = Date.now();
120
+ const annotationFileNameWithoutExtension = `annotation_${timestamp}`;
121
+ const annotationFileName = `${annotationFileNameWithoutExtension}.xml`;
122
+ const annotationNameSpace =
123
+ this.context.flexSettings.layer === 'CUSTOMER_BASE'
124
+ ? `customer.annotation.${annotationFileNameWithoutExtension}`
125
+ : `annotation.${annotationFileNameWithoutExtension}`;
126
+ const parameters = {
127
+ dataSourceId: dataSourceId,
128
+ annotations: [annotationNameSpace],
129
+ annotationsInsertPosition: 'END',
130
+ dataSource: {
131
+ [annotationNameSpace]: {
132
+ uri: `annotations/${annotationFileName}`,
133
+ type: 'ODataAnnotation'
134
+ }
135
+ }
136
+ };
137
+ const modifiedValue = {
138
+ changeType: 'appdescr_app_addAnnotationsToOData',
139
+ appComponent:
140
+ appType === 'fe-v4'
141
+ ? getV4AppComponent(this.context.view)
142
+ : getV2AppComponent(this.context.view),
143
+ generator: this.context.flexSettings.generator,
144
+ reference: this.context.flexSettings.projectId,
145
+ parameters,
146
+ serviceUrl: dataSource.serviceUrl
147
+ };
148
+ const command = await CommandFactory.getCommandFor<FlexCommand>(
149
+ this.context.view,
150
+ 'appDescriptor',
151
+ modifiedValue,
152
+ null,
153
+ this.context.flexSettings
154
+ );
155
+ return [command];
156
+ }
157
+ }
158
+ return [];
159
+ }
160
+
161
+ /**
162
+ * Prepares nested quick action object
163
+ * @returns action instance
164
+ */
165
+ getActionObject(): NestedQuickAction {
166
+ return {
167
+ kind: NESTED_QUICK_ACTION_KIND,
168
+ id: this.id,
169
+ enabled: this.isApplicable,
170
+ title: this.context.resourceBundle.getText(this.textKey),
171
+ children: this.children
172
+ };
173
+ }
174
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["sap/ui/dt/OverlayRegistry", "../../dialog-factory", "../simple-quick-action-base", "../../../utils/application", "../../../utils/version", "../dialog-enablement-validator"], function (OverlayRegistry, ____dialog_factory, ___simple_quick_action_base, _____utils_application, _____utils_version, ___dialog_enablement_validator) {
4
+ "use strict";
5
+
6
+ const DialogFactory = ____dialog_factory["DialogFactory"];
7
+ const DialogNames = ____dialog_factory["DialogNames"];
8
+ const SimpleQuickActionDefinitionBase = ___simple_quick_action_base["SimpleQuickActionDefinitionBase"];
9
+ const getApplicationType = _____utils_application["getApplicationType"];
10
+ const getUi5Version = _____utils_version["getUi5Version"];
11
+ const isLowerThanMinimalUi5Version = _____utils_version["isLowerThanMinimalUi5Version"];
12
+ const DIALOG_ENABLEMENT_VALIDATOR = ___dialog_enablement_validator["DIALOG_ENABLEMENT_VALIDATOR"];
13
+ const ADD_PAGE_ACTION = 'add-page-action';
14
+ const CONTROL_TYPES = ['sap.f.DynamicPageTitle', 'sap.uxap.ObjectPageHeader', 'sap.uxap.ObjectPageDynamicHeaderTitle'];
15
+
16
+ /**
17
+ * Quick Action for adding a custom page action.
18
+ */
19
+ class AddPageActionQuickAction extends SimpleQuickActionDefinitionBase {
20
+ constructor(context) {
21
+ super(ADD_PAGE_ACTION, CONTROL_TYPES, 'QUICK_ACTION_ADD_CUSTOM_PAGE_ACTION', context, [DIALOG_ENABLEMENT_VALIDATOR]);
22
+ this.appType = getApplicationType(this.context.rta.getRootControlInstance().getManifest());
23
+ }
24
+ async initialize() {
25
+ const version = await getUi5Version();
26
+ if (this.appType === 'fe-v4' && isLowerThanMinimalUi5Version(version, {
27
+ major: 1,
28
+ minor: 130
29
+ })) {
30
+ return;
31
+ }
32
+ await super.initialize();
33
+ }
34
+ async execute() {
35
+ if (this.control) {
36
+ const overlay = OverlayRegistry.getOverlay(this.control) || [];
37
+ await DialogFactory.createDialog(overlay, this.context.rta, DialogNames.ADD_FRAGMENT, undefined, {
38
+ aggregation: 'actions',
39
+ title: 'QUICK_ACTION_ADD_CUSTOM_PAGE_ACTION',
40
+ defaultAggregationArrayIndex: 1
41
+ }, {
42
+ actionName: this.type,
43
+ telemetryEventIdentifier: this.getTelemetryIdentifier()
44
+ });
45
+ }
46
+ return [];
47
+ }
48
+ }
49
+ var __exports = {
50
+ __esModule: true
51
+ };
52
+ __exports.ADD_PAGE_ACTION = ADD_PAGE_ACTION;
53
+ __exports.AddPageActionQuickAction = AddPageActionQuickAction;
54
+ return __exports;
55
+ });
56
+ //# sourceMappingURL=create-page-action.js.map
@@ -0,0 +1,56 @@
1
+ import OverlayRegistry from 'sap/ui/dt/OverlayRegistry';
2
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
3
+
4
+ import { DialogFactory, DialogNames } from '../../dialog-factory';
5
+ import type {
6
+ QuickActionContext,
7
+ SimpleQuickActionDefinition
8
+ } from '../../../cpe/quick-actions/quick-action-definition';
9
+ import { SimpleQuickActionDefinitionBase } from '../simple-quick-action-base';
10
+ import type { ApplicationType } from '../../../utils/application';
11
+ import { getApplicationType } from '../../../utils/application';
12
+ import { getUi5Version, isLowerThanMinimalUi5Version } from '../../../utils/version';
13
+ import { DIALOG_ENABLEMENT_VALIDATOR } from '../dialog-enablement-validator';
14
+
15
+ export const ADD_PAGE_ACTION = 'add-page-action';
16
+ const CONTROL_TYPES = ['sap.f.DynamicPageTitle', 'sap.uxap.ObjectPageHeader', 'sap.uxap.ObjectPageDynamicHeaderTitle'];
17
+
18
+ /**
19
+ * Quick Action for adding a custom page action.
20
+ */
21
+ export class AddPageActionQuickAction extends SimpleQuickActionDefinitionBase implements SimpleQuickActionDefinition {
22
+ private readonly appType: ApplicationType;
23
+ constructor(context: QuickActionContext) {
24
+ super(ADD_PAGE_ACTION, CONTROL_TYPES, 'QUICK_ACTION_ADD_CUSTOM_PAGE_ACTION', context, [
25
+ DIALOG_ENABLEMENT_VALIDATOR
26
+ ]);
27
+ this.appType = getApplicationType(this.context.rta.getRootControlInstance().getManifest());
28
+ }
29
+
30
+ async initialize(): Promise<void> {
31
+ const version = await getUi5Version();
32
+ if (this.appType === 'fe-v4' && isLowerThanMinimalUi5Version(version, { major: 1, minor: 130 })) {
33
+ return;
34
+ }
35
+ await super.initialize();
36
+ }
37
+
38
+ async execute(): Promise<FlexCommand[]> {
39
+ if (this.control) {
40
+ const overlay = OverlayRegistry.getOverlay(this.control) || [];
41
+ await DialogFactory.createDialog(
42
+ overlay,
43
+ this.context.rta,
44
+ DialogNames.ADD_FRAGMENT,
45
+ undefined,
46
+ {
47
+ aggregation: 'actions',
48
+ title: 'QUICK_ACTION_ADD_CUSTOM_PAGE_ACTION',
49
+ defaultAggregationArrayIndex: 1
50
+ },
51
+ { actionName: this.type, telemetryEventIdentifier: this.getTelemetryIdentifier() }
52
+ );
53
+ }
54
+ return [];
55
+ }
56
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["sap/ui/dt/OverlayRegistry", "../../dialog-factory", "../../../cpe/quick-actions/utils", "../simple-quick-action-base", "../dialog-enablement-validator"], function (OverlayRegistry, ____dialog_factory, _____cpe_quick_actions_utils, ___simple_quick_action_base, ___dialog_enablement_validator) {
4
+ "use strict";
5
+
6
+ const DialogFactory = ____dialog_factory["DialogFactory"];
7
+ const DialogNames = ____dialog_factory["DialogNames"];
8
+ const getRelevantControlFromActivePage = _____cpe_quick_actions_utils["getRelevantControlFromActivePage"];
9
+ const SimpleQuickActionDefinitionBase = ___simple_quick_action_base["SimpleQuickActionDefinitionBase"];
10
+ const DIALOG_ENABLEMENT_VALIDATOR = ___dialog_enablement_validator["DIALOG_ENABLEMENT_VALIDATOR"];
11
+ const OP_ADD_CUSTOM_SECTION = 'op-add-custom-section';
12
+ const CONTROL_TYPES = ['sap.uxap.ObjectPageLayout'];
13
+
14
+ /**
15
+ * Quick Action for adding a Header Field to an Object Page.
16
+ */
17
+ class AddCustomSectionQuickAction extends SimpleQuickActionDefinitionBase {
18
+ constructor(context) {
19
+ super(OP_ADD_CUSTOM_SECTION, CONTROL_TYPES, 'QUICK_ACTION_OP_ADD_CUSTOM_SECTION', context, [DIALOG_ENABLEMENT_VALIDATOR]);
20
+ }
21
+ async execute() {
22
+ const objectPageLayout = getRelevantControlFromActivePage(this.context.controlIndex, this.context.view, CONTROL_TYPES)[0];
23
+ const overlay = OverlayRegistry.getOverlay(objectPageLayout) || [];
24
+ await DialogFactory.createDialog(overlay, this.context.rta, DialogNames.ADD_FRAGMENT, undefined, {
25
+ aggregation: 'sections',
26
+ title: 'QUICK_ACTION_OP_ADD_CUSTOM_SECTION'
27
+ }, {
28
+ actionName: this.type,
29
+ telemetryEventIdentifier: this.getTelemetryIdentifier()
30
+ });
31
+ return [];
32
+ }
33
+ }
34
+ var __exports = {
35
+ __esModule: true
36
+ };
37
+ __exports.OP_ADD_CUSTOM_SECTION = OP_ADD_CUSTOM_SECTION;
38
+ __exports.AddCustomSectionQuickAction = AddCustomSectionQuickAction;
39
+ return __exports;
40
+ });
41
+ //# sourceMappingURL=op-add-custom-section.js.map
@@ -0,0 +1,51 @@
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
+
5
+ import { DialogFactory, DialogNames } from '../../dialog-factory';
6
+ import { getRelevantControlFromActivePage } from '../../../cpe/quick-actions/utils';
7
+ import type {
8
+ QuickActionContext,
9
+ SimpleQuickActionDefinition
10
+ } from '../../../cpe/quick-actions/quick-action-definition';
11
+ import { SimpleQuickActionDefinitionBase } from '../simple-quick-action-base';
12
+ import { DIALOG_ENABLEMENT_VALIDATOR } from '../dialog-enablement-validator';
13
+
14
+ export const OP_ADD_CUSTOM_SECTION = 'op-add-custom-section';
15
+ const CONTROL_TYPES = ['sap.uxap.ObjectPageLayout'];
16
+
17
+ /**
18
+ * Quick Action for adding a Header Field to an Object Page.
19
+ */
20
+ export class AddCustomSectionQuickAction
21
+ extends SimpleQuickActionDefinitionBase
22
+ implements SimpleQuickActionDefinition
23
+ {
24
+ constructor(context: QuickActionContext) {
25
+ super(OP_ADD_CUSTOM_SECTION, CONTROL_TYPES, 'QUICK_ACTION_OP_ADD_CUSTOM_SECTION', context, [
26
+ DIALOG_ENABLEMENT_VALIDATOR
27
+ ]);
28
+ }
29
+
30
+ async execute(): Promise<FlexCommand[]> {
31
+ const objectPageLayout = getRelevantControlFromActivePage(
32
+ this.context.controlIndex,
33
+ this.context.view,
34
+ CONTROL_TYPES
35
+ )[0] as ObjectPageLayout;
36
+
37
+ const overlay = OverlayRegistry.getOverlay(objectPageLayout) || [];
38
+ await DialogFactory.createDialog(
39
+ overlay,
40
+ this.context.rta,
41
+ DialogNames.ADD_FRAGMENT,
42
+ undefined,
43
+ {
44
+ aggregation: 'sections',
45
+ title: 'QUICK_ACTION_OP_ADD_CUSTOM_SECTION'
46
+ },
47
+ { actionName: this.type, telemetryEventIdentifier: this.getTelemetryIdentifier() }
48
+ );
49
+ return [];
50
+ }
51
+ }
@@ -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
+ }