@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,102 @@
1
+ import type SmartTable from 'sap/ui/comp/smarttable/SmartTable';
2
+
3
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
4
+
5
+ import type {
6
+ QuickActionContext,
7
+ SimpleQuickActionDefinition
8
+ } from '../../../cpe/quick-actions/quick-action-definition';
9
+ import { getRelevantControlFromActivePage, pageHasControlId } from '../../../cpe/quick-actions/utils';
10
+ import { GRID_TABLE_TYPE, M_TABLE_TYPE, SMART_TABLE_TYPE, TREE_TABLE_TYPE } from '../control-types';
11
+ import { areManifestChangesSupported, prepareManifestChange } from './utils';
12
+
13
+ import { SimpleQuickActionDefinitionBase } from '../simple-quick-action-base';
14
+ import { isA } from '../../../utils/core';
15
+
16
+ const COMPONENT = 'sap.suite.ui.generic.template.ListReport';
17
+
18
+ export const ENABLE_TABLE_FILTERING = 'enable-table-filtering';
19
+
20
+ const CONTROL_TYPES = [SMART_TABLE_TYPE, M_TABLE_TYPE, TREE_TABLE_TYPE, GRID_TABLE_TYPE];
21
+
22
+ /**
23
+ * Quick Action for enabling table filtering using table personalization settings.
24
+ */
25
+ export class EnableTableFilteringQuickAction
26
+ extends SimpleQuickActionDefinitionBase
27
+ implements SimpleQuickActionDefinition
28
+ {
29
+ constructor(context: QuickActionContext) {
30
+ super(ENABLE_TABLE_FILTERING, CONTROL_TYPES, 'QUICK_ACTION_ENABLE_TABLE_FILTERING', context, [
31
+ {
32
+ run: () => {
33
+ if (this.control) {
34
+ const id = (this.control.getProperty('persistencyKey') as unknown) ?? this.control.getId();
35
+ if (typeof id !== 'string') {
36
+ throw new Error(
37
+ 'Could not retrieve configuration property because control id is not valid!'
38
+ );
39
+ }
40
+ const value = this.context.changeService.getConfigurationPropertyValue(
41
+ id,
42
+ 'enableTableFilterInPageVariant'
43
+ );
44
+ const isFilterEnabled: boolean =
45
+ value === undefined
46
+ ? (this.control.data('p13nDialogSettings')?.filter?.visible as boolean)
47
+ : (value as boolean);
48
+ if (isFilterEnabled) {
49
+ return {
50
+ type: 'error',
51
+ message: this.context.resourceBundle.getText(
52
+ 'TABLE_FILTERING_CHANGE_HAS_ALREADY_BEEN_MADE'
53
+ )
54
+ };
55
+ }
56
+ }
57
+ return undefined;
58
+ }
59
+ }
60
+ ]);
61
+ }
62
+ readonly forceRefreshAfterExecution = true;
63
+ async initialize(): Promise<void> {
64
+ const manifestChangesSupported = await areManifestChangesSupported(this.context.manifest);
65
+ if (!manifestChangesSupported) {
66
+ return;
67
+ }
68
+ for (const table of getRelevantControlFromActivePage(
69
+ this.context.controlIndex,
70
+ this.context.view,
71
+ CONTROL_TYPES
72
+ )) {
73
+ if (table) {
74
+ const isActionApplicable = pageHasControlId(this.context.view, table.getId());
75
+ if (isActionApplicable) {
76
+ this.control = table;
77
+ break;
78
+ }
79
+ }
80
+ }
81
+ }
82
+
83
+ async execute(): Promise<FlexCommand[]> {
84
+ if (!this.control) {
85
+ return [];
86
+ }
87
+
88
+ const entitySet = isA<SmartTable>(SMART_TABLE_TYPE, this.control) ? this.control.getEntitySet() : undefined;
89
+ const command = await prepareManifestChange(
90
+ this.context,
91
+ 'component/settings',
92
+ this.control,
93
+ COMPONENT,
94
+ entitySet,
95
+ {
96
+ enableTableFilterInPageVariant: !this.isDisabled
97
+ }
98
+ );
99
+
100
+ return command;
101
+ }
102
+ }
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["./utils", "../simple-quick-action-base", "sap/ui/core/Component"], function (___utils, ___simple_quick_action_base, Component) {
4
+ "use strict";
5
+
6
+ const areManifestChangesSupported = ___utils["areManifestChangesSupported"];
7
+ const prepareManifestChange = ___utils["prepareManifestChange"];
8
+ const SimpleQuickActionDefinitionBase = ___simple_quick_action_base["SimpleQuickActionDefinitionBase"];
9
+ const ENABLE_VARIANT_MANAGEMENT_IN_TABLES_CHARTS = 'enable-variant-management-in-tables-charts';
10
+ const CONTROL_TYPES = ['sap.f.DynamicPage'];
11
+
12
+ /**
13
+ * Quick Action for enabling table filtering using table personalization settings.
14
+ */
15
+ class EnableListReportVariantManagementQuickAction extends SimpleQuickActionDefinitionBase {
16
+ isPageSmartVariantManagementEnabled = false;
17
+ forceRefreshAfterExecution = true;
18
+ constructor(context) {
19
+ super(ENABLE_VARIANT_MANAGEMENT_IN_TABLES_CHARTS, CONTROL_TYPES, 'QUICK_ACTION_ENABLE_TABLES_AND_CHARTS_VARIANT_MANAGEMENT', context, [{
20
+ run: () => {
21
+ if (this.ownerComponent) {
22
+ if (!this.isPageSmartVariantManagementEnabled) {
23
+ return {
24
+ type: 'error',
25
+ message: this.context.resourceBundle.getText('VARIANT_MANAGEMENT_FOR_PAGE_CONTROLS_IS_ALREADY_ENABLED')
26
+ };
27
+ }
28
+ }
29
+ return undefined;
30
+ }
31
+ }]);
32
+ }
33
+ async initialize() {
34
+ const manifestChangesSupported = await areManifestChangesSupported(this.context.manifest);
35
+ if (!manifestChangesSupported) {
36
+ return;
37
+ }
38
+ await super.initialize();
39
+ if (this.control) {
40
+ this.ownerComponent = Component.getOwnerComponentFor(this.control);
41
+ if (!this.ownerComponent?.isA('sap.suite.ui.generic.template.ListReport.Component') && !this.ownerComponent?.isA('sap.suite.ui.generic.template.AnalyticalListPage.Component')) {
42
+ this.control = undefined;
43
+ } else {
44
+ const id = this.control.getId();
45
+ if (typeof id !== 'string') {
46
+ throw new Error('Could not retrieve configuration property because control id is not valid!');
47
+ }
48
+ const value = this.context.changeService.getConfigurationPropertyValue(id, 'smartVariantManagement');
49
+ this.isPageSmartVariantManagementEnabled = value === undefined ? this.ownerComponent.getSmartVariantManagement() : value;
50
+ }
51
+ }
52
+ }
53
+ async execute() {
54
+ if (!this.control) {
55
+ return [];
56
+ }
57
+ const entitySet = this.ownerComponent.getEntitySet();
58
+ const command = await prepareManifestChange(this.context, 'component/settings', this.control, this.ownerComponent.getMetadata().getComponentName(), entitySet, {
59
+ smartVariantManagement: !this.isPageSmartVariantManagementEnabled
60
+ });
61
+ return command;
62
+ }
63
+ }
64
+ var __exports = {
65
+ __esModule: true
66
+ };
67
+ __exports.ENABLE_VARIANT_MANAGEMENT_IN_TABLES_CHARTS = ENABLE_VARIANT_MANAGEMENT_IN_TABLES_CHARTS;
68
+ __exports.EnableListReportVariantManagementQuickAction = EnableListReportVariantManagementQuickAction;
69
+ return __exports;
70
+ });
71
+ //# sourceMappingURL=lr-enable-variant-management.js.map
@@ -0,0 +1,98 @@
1
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
2
+
3
+ import type {
4
+ QuickActionContext,
5
+ SimpleQuickActionDefinition
6
+ } from '../../../cpe/quick-actions/quick-action-definition';
7
+ import { areManifestChangesSupported, prepareManifestChange } from './utils';
8
+ import type ListReportComponent from 'sap/suite/ui/generic/template/ListReport';
9
+
10
+ import { SimpleQuickActionDefinitionBase } from '../simple-quick-action-base';
11
+ import Component from 'sap/ui/core/Component';
12
+
13
+ export const ENABLE_VARIANT_MANAGEMENT_IN_TABLES_CHARTS = 'enable-variant-management-in-tables-charts';
14
+
15
+ const CONTROL_TYPES = ['sap.f.DynamicPage'];
16
+
17
+ /**
18
+ * Quick Action for enabling table filtering using table personalization settings.
19
+ */
20
+ export class EnableListReportVariantManagementQuickAction
21
+ extends SimpleQuickActionDefinitionBase
22
+ implements SimpleQuickActionDefinition
23
+ {
24
+ private isPageSmartVariantManagementEnabled = false;
25
+ private ownerComponent: ListReportComponent;
26
+ readonly forceRefreshAfterExecution = true;
27
+
28
+ constructor(context: QuickActionContext) {
29
+ super(
30
+ ENABLE_VARIANT_MANAGEMENT_IN_TABLES_CHARTS,
31
+ CONTROL_TYPES,
32
+ 'QUICK_ACTION_ENABLE_TABLES_AND_CHARTS_VARIANT_MANAGEMENT',
33
+ context,
34
+ [
35
+ {
36
+ run: () => {
37
+ if (this.ownerComponent) {
38
+ if (!this.isPageSmartVariantManagementEnabled) {
39
+ return {
40
+ type: 'error',
41
+ message: this.context.resourceBundle.getText(
42
+ 'VARIANT_MANAGEMENT_FOR_PAGE_CONTROLS_IS_ALREADY_ENABLED'
43
+ )
44
+ };
45
+ }
46
+ }
47
+ return undefined;
48
+ }
49
+ }
50
+ ]
51
+ );
52
+ }
53
+
54
+ async initialize(): Promise<void> {
55
+ const manifestChangesSupported = await areManifestChangesSupported(this.context.manifest);
56
+ if (!manifestChangesSupported) {
57
+ return;
58
+ }
59
+ await super.initialize();
60
+ if (this.control) {
61
+ this.ownerComponent = Component.getOwnerComponentFor(this.control) as unknown as ListReportComponent;
62
+ if (
63
+ !this.ownerComponent?.isA('sap.suite.ui.generic.template.ListReport.Component') &&
64
+ !this.ownerComponent?.isA('sap.suite.ui.generic.template.AnalyticalListPage.Component')
65
+ ) {
66
+ this.control = undefined;
67
+ } else {
68
+ const id = this.control.getId();
69
+ if (typeof id !== 'string') {
70
+ throw new Error('Could not retrieve configuration property because control id is not valid!');
71
+ }
72
+ const value = this.context.changeService.getConfigurationPropertyValue(id, 'smartVariantManagement');
73
+ this.isPageSmartVariantManagementEnabled =
74
+ value === undefined ? this.ownerComponent.getSmartVariantManagement() : (value as boolean);
75
+ }
76
+ }
77
+ }
78
+
79
+ async execute(): Promise<FlexCommand[]> {
80
+ if (!this.control) {
81
+ return [];
82
+ }
83
+
84
+ const entitySet = this.ownerComponent.getEntitySet();
85
+ const command = await prepareManifestChange(
86
+ this.context,
87
+ 'component/settings',
88
+ this.control,
89
+ this.ownerComponent.getMetadata().getComponentName(),
90
+ entitySet,
91
+ {
92
+ smartVariantManagement: !this.isPageSmartVariantManagementEnabled
93
+ }
94
+ );
95
+
96
+ return command;
97
+ }
98
+ }
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["sap/ui/rta/command/CommandFactory", "../../../cpe/quick-actions/utils", "../../../utils/core", "../simple-quick-action-base"], function (CommandFactory, _____cpe_quick_actions_utils, _____utils_core, ___simple_quick_action_base) {
4
+ "use strict";
5
+
6
+ const pageHasControlId = _____cpe_quick_actions_utils["pageHasControlId"];
7
+ const getControlById = _____utils_core["getControlById"];
8
+ const SimpleQuickActionDefinitionBase = ___simple_quick_action_base["SimpleQuickActionDefinitionBase"];
9
+ const ENABLE_CLEAR_FILTER_BAR_TYPE = 'enable-clear-filter-bar';
10
+ const PROPERTY_NAME = 'showClearOnFB';
11
+ const CONTROL_TYPE_LR = 'sap.ui.comp.smartfilterbar.SmartFilterBar';
12
+ const CONTROL_TYPE_ALP = 'sap.suite.ui.generic.template.AnalyticalListPage.control.SmartFilterBarExt';
13
+
14
+ /**
15
+ * Quick Action for toggling the visibility of "clear filter bar" button in List Report page.
16
+ */
17
+ class ToggleClearFilterBarQuickAction extends SimpleQuickActionDefinitionBase {
18
+ constructor(context) {
19
+ super(ENABLE_CLEAR_FILTER_BAR_TYPE, [], '', context);
20
+ }
21
+ isClearButtonEnabled = false;
22
+ initialize() {
23
+ const controls = [...(this.context.controlIndex[CONTROL_TYPE_LR] ?? []), ...(this.context.controlIndex[CONTROL_TYPE_ALP] ?? [])];
24
+ for (const control of controls) {
25
+ const isActionApplicable = pageHasControlId(this.context.view, control.controlId);
26
+ const modifiedControl = getControlById(control.controlId);
27
+ if (isActionApplicable && modifiedControl) {
28
+ this.isClearButtonEnabled = modifiedControl.getShowClearOnFB();
29
+ this.control = modifiedControl;
30
+ }
31
+ }
32
+ return Promise.resolve();
33
+ }
34
+ get textKey() {
35
+ return this.isClearButtonEnabled ? 'V2_QUICK_ACTION_LR_DISABLE_CLEAR_FILTER_BAR' : 'V2_QUICK_ACTION_LR_ENABLE_CLEAR_FILTER_BAR';
36
+ }
37
+ async execute() {
38
+ if (this.control) {
39
+ const {
40
+ flexSettings
41
+ } = this.context;
42
+ const modifiedValue = {
43
+ generator: flexSettings.generator,
44
+ propertyName: PROPERTY_NAME,
45
+ newValue: !this.isClearButtonEnabled
46
+ };
47
+ const command = await CommandFactory.getCommandFor(this.control, 'Property', modifiedValue, null, flexSettings);
48
+ this.isClearButtonEnabled = !this.isClearButtonEnabled;
49
+ return [command];
50
+ }
51
+ return [];
52
+ }
53
+ }
54
+ var __exports = {
55
+ __esModule: true
56
+ };
57
+ __exports.ENABLE_CLEAR_FILTER_BAR_TYPE = ENABLE_CLEAR_FILTER_BAR_TYPE;
58
+ __exports.ToggleClearFilterBarQuickAction = ToggleClearFilterBarQuickAction;
59
+ return __exports;
60
+ });
61
+ //# sourceMappingURL=lr-toggle-clear-filter-bar.js.map
@@ -0,0 +1,77 @@
1
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
2
+ import CommandFactory from 'sap/ui/rta/command/CommandFactory';
3
+ import type FilterBar from 'sap/ui/comp/filterbar/FilterBar';
4
+
5
+ import type {
6
+ QuickActionContext,
7
+ SimpleQuickActionDefinition
8
+ } from '../../../cpe/quick-actions/quick-action-definition';
9
+ import { pageHasControlId } from '../../../cpe/quick-actions/utils';
10
+ import { getControlById } from '../../../utils/core';
11
+ import { SimpleQuickActionDefinitionBase } from '../simple-quick-action-base';
12
+
13
+ export const ENABLE_CLEAR_FILTER_BAR_TYPE = 'enable-clear-filter-bar';
14
+ const PROPERTY_NAME = 'showClearOnFB';
15
+ const CONTROL_TYPE_LR = 'sap.ui.comp.smartfilterbar.SmartFilterBar';
16
+ const CONTROL_TYPE_ALP = 'sap.suite.ui.generic.template.AnalyticalListPage.control.SmartFilterBarExt';
17
+
18
+ /**
19
+ * Quick Action for toggling the visibility of "clear filter bar" button in List Report page.
20
+ */
21
+ export class ToggleClearFilterBarQuickAction
22
+ extends SimpleQuickActionDefinitionBase
23
+ implements SimpleQuickActionDefinition
24
+ {
25
+ constructor(context: QuickActionContext) {
26
+ super(ENABLE_CLEAR_FILTER_BAR_TYPE, [], '', context);
27
+ }
28
+
29
+ private isClearButtonEnabled = false;
30
+
31
+ initialize(): Promise<void> {
32
+ const controls = [
33
+ ...(this.context.controlIndex[CONTROL_TYPE_LR] ?? []),
34
+ ...(this.context.controlIndex[CONTROL_TYPE_ALP] ?? [])
35
+ ];
36
+ for (const control of controls) {
37
+ const isActionApplicable = pageHasControlId(this.context.view, control.controlId);
38
+ const modifiedControl = getControlById<FilterBar>(control.controlId);
39
+ if (isActionApplicable && modifiedControl) {
40
+ this.isClearButtonEnabled = modifiedControl.getShowClearOnFB();
41
+ this.control = modifiedControl;
42
+ }
43
+ }
44
+ return Promise.resolve();
45
+ }
46
+
47
+ protected get textKey() {
48
+ return this.isClearButtonEnabled
49
+ ? 'V2_QUICK_ACTION_LR_DISABLE_CLEAR_FILTER_BAR'
50
+ : 'V2_QUICK_ACTION_LR_ENABLE_CLEAR_FILTER_BAR';
51
+ }
52
+
53
+ async execute(): Promise<FlexCommand[]> {
54
+ if (this.control) {
55
+ const { flexSettings } = this.context;
56
+
57
+ const modifiedValue = {
58
+ generator: flexSettings.generator,
59
+ propertyName: PROPERTY_NAME,
60
+ newValue: !this.isClearButtonEnabled
61
+ };
62
+
63
+ const command = await CommandFactory.getCommandFor<FlexCommand>(
64
+ this.control,
65
+ 'Property',
66
+ modifiedValue,
67
+ null,
68
+ flexSettings
69
+ );
70
+
71
+ this.isClearButtonEnabled = !this.isClearButtonEnabled;
72
+ return [command];
73
+ }
74
+
75
+ return [];
76
+ }
77
+ }
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["../table-quick-action-base", "../control-types", "./utils", "../../../utils/version", "../../../utils/core", "../common/utils", "./create-table-custom-column"], function (___table_quick_action_base, ___control_types, ___utils, _____utils_version, _____utils_core, ___common_utils, ___create_table_custom_column) {
4
+ "use strict";
5
+
6
+ const TableQuickActionDefinitionBase = ___table_quick_action_base["TableQuickActionDefinitionBase"];
7
+ const ANALYTICAL_TABLE_TYPE = ___control_types["ANALYTICAL_TABLE_TYPE"];
8
+ const SMART_TABLE_TYPE = ___control_types["SMART_TABLE_TYPE"];
9
+ const TREE_TABLE_TYPE = ___control_types["TREE_TABLE_TYPE"];
10
+ const areManifestChangesSupported = ___utils["areManifestChangesSupported"];
11
+ const prepareManifestChange = ___utils["prepareManifestChange"];
12
+ const getUi5Version = _____utils_version["getUi5Version"];
13
+ const isLowerThanMinimalUi5Version = _____utils_version["isLowerThanMinimalUi5Version"];
14
+ const isA = _____utils_core["isA"];
15
+ const getTooltipsForTableEmptyRowModeAction = ___common_utils["getTooltipsForTableEmptyRowModeAction"];
16
+ const preprocessActionExecution = ___create_table_custom_column["preprocessActionExecution"];
17
+ const ENABLE_TABLE_EMPTY_ROW_MODE = 'enable-table-empty-row-mode';
18
+ const CONTROL_TYPES = [SMART_TABLE_TYPE];
19
+ const UNSUPPORTED_TABLES = [ANALYTICAL_TABLE_TYPE, TREE_TABLE_TYPE];
20
+ const CREATION_ROWS_MODE = 'creationRows';
21
+ const OBJECT_PAGE_COMPONENT_NAME = 'sap.suite.ui.generic.template.ObjectPage';
22
+ class EnableTableEmptyRowModeQuickAction extends TableQuickActionDefinitionBase {
23
+ forceRefreshAfterExecution = true;
24
+ constructor(context) {
25
+ super(ENABLE_TABLE_EMPTY_ROW_MODE, CONTROL_TYPES, 'QUICK_ACTION_ENABLE_TABLE_EMPTY_ROW_MODE', context);
26
+ }
27
+ async initialize() {
28
+ const version = await getUi5Version();
29
+ if (!(await areManifestChangesSupported(this.context.manifest))) {
30
+ return;
31
+ }
32
+ if (isLowerThanMinimalUi5Version(version, {
33
+ major: 1,
34
+ minor: 120,
35
+ patch: 23
36
+ })) {
37
+ this.isApplicable = false;
38
+ return;
39
+ }
40
+ const {
41
+ alreadyEnabledTooltip,
42
+ unsupportedCreationRowsTooltip
43
+ } = getTooltipsForTableEmptyRowModeAction(this.context.resourceBundle);
44
+ const processChild = (child, mapKey) => {
45
+ const table = this.tableMap[mapKey]?.table;
46
+ if (table) {
47
+ const innerTable = this.getInternalTable(table);
48
+ if (innerTable) {
49
+ if (UNSUPPORTED_TABLES.some(t => isA(t, innerTable))) {
50
+ child.enabled = false;
51
+ child.tooltip = unsupportedCreationRowsTooltip;
52
+ } else if (table.data('creationMode') === CREATION_ROWS_MODE) {
53
+ child.enabled = false;
54
+ child.tooltip = alreadyEnabledTooltip;
55
+ }
56
+ }
57
+ }
58
+ child.children.forEach((nestedChild, idx) => processChild(nestedChild, `${mapKey}/${idx.toFixed(0)}`));
59
+ };
60
+ await super.initialize();
61
+
62
+ // disable nested actions based on conditions
63
+ this.children.forEach((nestedChild, idx) => processChild(nestedChild, `${idx.toFixed(0)}`));
64
+ }
65
+ async execute(path) {
66
+ const {
67
+ table,
68
+ sectionInfo,
69
+ iconTabBarFilterKey
70
+ } = this.tableMap[path];
71
+ if (!table) {
72
+ throw Error('Internal error. Table element not found');
73
+ }
74
+ const sectionId = table.data('sectionId');
75
+ if (!sectionId) {
76
+ throw Error('Internal error. Table sectionId property not found');
77
+ }
78
+ const entitySet = this.context.view.getParent()?.getProperty('entitySet');
79
+ if (!entitySet) {
80
+ throw Error('Internal error. Object Page entity set not found');
81
+ }
82
+ preprocessActionExecution(table, sectionInfo, this.iconTabBar, iconTabBarFilterKey);
83
+ this.selectOverlay(table);
84
+ const commands = await prepareManifestChange(this.context, `component/settings/sections/${sectionId}/createMode`, table, OBJECT_PAGE_COMPONENT_NAME, entitySet, CREATION_ROWS_MODE);
85
+ return commands ?? [];
86
+ }
87
+ }
88
+ var __exports = {
89
+ __esModule: true
90
+ };
91
+ __exports.ENABLE_TABLE_EMPTY_ROW_MODE = ENABLE_TABLE_EMPTY_ROW_MODE;
92
+ __exports.EnableTableEmptyRowModeQuickAction = EnableTableEmptyRowModeQuickAction;
93
+ return __exports;
94
+ });
95
+ //# sourceMappingURL=op-enable-empty-row-mode.js.map
@@ -0,0 +1,102 @@
1
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
2
+
3
+ import type {
4
+ QuickActionContext,
5
+ NestedQuickActionDefinition
6
+ } from '../../../cpe/quick-actions/quick-action-definition';
7
+ import { TableQuickActionDefinitionBase } from '../table-quick-action-base';
8
+ import { ANALYTICAL_TABLE_TYPE, SMART_TABLE_TYPE, TREE_TABLE_TYPE } from '../control-types';
9
+
10
+ import type { NestedQuickActionChild } from '@sap-ux-private/control-property-editor-common';
11
+ import { areManifestChangesSupported, prepareManifestChange } from './utils';
12
+ import { getUi5Version, isLowerThanMinimalUi5Version } from '../../../utils/version';
13
+ import { isA } from '../../../utils/core';
14
+ import { getTooltipsForTableEmptyRowModeAction } from '../common/utils';
15
+ import { preprocessActionExecution } from './create-table-custom-column';
16
+
17
+ export const ENABLE_TABLE_EMPTY_ROW_MODE = 'enable-table-empty-row-mode';
18
+
19
+ const CONTROL_TYPES = [SMART_TABLE_TYPE];
20
+ const UNSUPPORTED_TABLES = [ANALYTICAL_TABLE_TYPE, TREE_TABLE_TYPE];
21
+ const CREATION_ROWS_MODE = 'creationRows';
22
+ const OBJECT_PAGE_COMPONENT_NAME = 'sap.suite.ui.generic.template.ObjectPage';
23
+
24
+ export class EnableTableEmptyRowModeQuickAction
25
+ extends TableQuickActionDefinitionBase
26
+ implements NestedQuickActionDefinition
27
+ {
28
+ readonly forceRefreshAfterExecution = true;
29
+
30
+ constructor(context: QuickActionContext) {
31
+ super(ENABLE_TABLE_EMPTY_ROW_MODE, CONTROL_TYPES, 'QUICK_ACTION_ENABLE_TABLE_EMPTY_ROW_MODE', context);
32
+ }
33
+
34
+ async initialize(): Promise<void> {
35
+ const version = await getUi5Version();
36
+ if (!(await areManifestChangesSupported(this.context.manifest))) {
37
+ return;
38
+ }
39
+
40
+ if (isLowerThanMinimalUi5Version(version, { major: 1, minor: 120, patch: 23 })) {
41
+ this.isApplicable = false;
42
+ return;
43
+ }
44
+
45
+ const { alreadyEnabledTooltip, unsupportedCreationRowsTooltip } = getTooltipsForTableEmptyRowModeAction(
46
+ this.context.resourceBundle
47
+ );
48
+
49
+ const processChild = (child: NestedQuickActionChild, mapKey: string) => {
50
+ const table = this.tableMap[mapKey]?.table;
51
+ if (table) {
52
+ const innerTable = this.getInternalTable(table);
53
+ if (innerTable) {
54
+ if (UNSUPPORTED_TABLES.some((t) => isA(t, innerTable))) {
55
+ child.enabled = false;
56
+ child.tooltip = unsupportedCreationRowsTooltip;
57
+ } else if (table.data('creationMode') === CREATION_ROWS_MODE) {
58
+ child.enabled = false;
59
+ child.tooltip = alreadyEnabledTooltip;
60
+ }
61
+ }
62
+ }
63
+ child.children.forEach((nestedChild, idx) => processChild(nestedChild, `${mapKey}/${idx.toFixed(0)}`));
64
+ };
65
+
66
+ await super.initialize();
67
+
68
+ // disable nested actions based on conditions
69
+ this.children.forEach((nestedChild, idx) => processChild(nestedChild, `${idx.toFixed(0)}`));
70
+ }
71
+
72
+ async execute(path: string): Promise<FlexCommand[]> {
73
+ const { table, sectionInfo, iconTabBarFilterKey } = this.tableMap[path];
74
+ if (!table) {
75
+ throw Error('Internal error. Table element not found');
76
+ }
77
+
78
+ const sectionId = table.data('sectionId') as string | undefined | null;
79
+ if (!sectionId) {
80
+ throw Error('Internal error. Table sectionId property not found');
81
+ }
82
+
83
+ const entitySet = this.context.view.getParent()?.getProperty('entitySet') as string | undefined;
84
+ if (!entitySet) {
85
+ throw Error('Internal error. Object Page entity set not found');
86
+ }
87
+
88
+ preprocessActionExecution(table, sectionInfo, this.iconTabBar, iconTabBarFilterKey);
89
+ this.selectOverlay(table);
90
+
91
+ const commands = await prepareManifestChange(
92
+ this.context,
93
+ `component/settings/sections/${sectionId}/createMode`,
94
+ table,
95
+ OBJECT_PAGE_COMPONENT_NAME,
96
+ entitySet,
97
+ CREATION_ROWS_MODE
98
+ );
99
+
100
+ return commands ?? [];
101
+ }
102
+ }