@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,110 @@
1
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
2
+ import type Table from 'sap/m/Table';
3
+ import type SmartTable from 'sap/ui/comp/smarttable/SmartTable';
4
+ import OverlayRegistry from 'sap/ui/dt/OverlayRegistry';
5
+ import type ManagedObject from 'sap/ui/base/ManagedObject';
6
+ import type UI5Element from 'sap/ui/core/Element';
7
+
8
+ import { QuickActionContext, NestedQuickActionDefinition } from '../../../cpe/quick-actions/quick-action-definition';
9
+ import { getControlById, isA } from '../../../utils/core';
10
+ import { DialogFactory, DialogNames } from '../../dialog-factory';
11
+ import { TableQuickActionDefinitionBase } from '../table-quick-action-base';
12
+ import { DIALOG_ENABLEMENT_VALIDATOR } from '../dialog-enablement-validator';
13
+ import type OverflowToolbar from 'sap/m/OverflowToolbar';
14
+ import { NestedQuickActionChild } from '@sap-ux-private/control-property-editor-common';
15
+ import { GRID_TABLE_TYPE, M_TABLE_TYPE, SMART_TABLE_TYPE, TREE_TABLE_TYPE } from '../control-types';
16
+
17
+ export const CREATE_TABLE_ACTION = 'create-table-action';
18
+ // maintain order if action id
19
+
20
+ const CONTROL_TYPES = [SMART_TABLE_TYPE, M_TABLE_TYPE, TREE_TABLE_TYPE, GRID_TABLE_TYPE];
21
+
22
+ export class AddTableActionQuickAction extends TableQuickActionDefinitionBase implements NestedQuickActionDefinition {
23
+ constructor(context: QuickActionContext) {
24
+ super(CREATE_TABLE_ACTION, CONTROL_TYPES, 'QUICK_ACTION_ADD_CUSTOM_TABLE_ACTION', context, undefined, [
25
+ DIALOG_ENABLEMENT_VALIDATOR
26
+ ]);
27
+ }
28
+
29
+ async initialize(): Promise<void> {
30
+ const processChild = (child: NestedQuickActionChild, mapKey: string) => {
31
+ const table = this.tableMap[mapKey]?.table;
32
+ if (table) {
33
+ const headerToolbar = this.getHeaderToolbar(table);
34
+ if (!headerToolbar) {
35
+ child.enabled = false;
36
+ child.tooltip = this.context.resourceBundle.getText('NO_TABLE_HEADER_TOOLBAR');
37
+ }
38
+ }
39
+
40
+ child.children.forEach((nestedChild, idx) => processChild(nestedChild, `${mapKey}/${idx.toFixed(0)}`));
41
+ };
42
+
43
+ await super.initialize();
44
+
45
+ // disable nested actions based on conditions
46
+ this.children.forEach((nestedChild, idx) => processChild(nestedChild, `${idx.toFixed(0)}`));
47
+ }
48
+ async execute(path: string): Promise<FlexCommand[]> {
49
+ const { table, iconTabBarFilterKey, sectionInfo } = this.tableMap[path];
50
+ if (!table) {
51
+ return [];
52
+ }
53
+
54
+ if (sectionInfo) {
55
+ const { layout, section, subSection } = sectionInfo;
56
+ layout?.setSelectedSection(section);
57
+ section.setSelectedSubSection(subSection);
58
+ this.selectOverlay(table);
59
+ } else {
60
+ getControlById(table.getId())?.getDomRef()?.scrollIntoView();
61
+ this.selectOverlay(table);
62
+ }
63
+
64
+ if (this.iconTabBar && iconTabBarFilterKey) {
65
+ this.iconTabBar.setSelectedKey(iconTabBarFilterKey);
66
+ }
67
+
68
+ const headerToolbar = this.getHeaderToolbar(table);
69
+
70
+ // open dialogBox to add, and content is selected ByDefault
71
+ if (headerToolbar) {
72
+ const overlay = OverlayRegistry.getOverlay(headerToolbar as UI5Element) || [];
73
+ await DialogFactory.createDialog(
74
+ overlay,
75
+ this.context.rta,
76
+ DialogNames.ADD_FRAGMENT,
77
+ undefined,
78
+ {
79
+ aggregation: 'content',
80
+ title: 'QUICK_ACTION_ADD_CUSTOM_TABLE_ACTION',
81
+ defaultAggregationArrayIndex: 1
82
+ },
83
+ { actionName: this.type, telemetryEventIdentifier: this.getTelemetryIdentifier() }
84
+ );
85
+ }
86
+ return [];
87
+ }
88
+
89
+ getHeaderToolbar(table: UI5Element): ManagedObject | ManagedObject[] | OverflowToolbar | null | undefined {
90
+ let headerToolbar;
91
+ if (isA<SmartTable>(SMART_TABLE_TYPE, table)) {
92
+ for (const item of table.getAggregation('items') as ManagedObject[]) {
93
+ if (item.getAggregation('headerToolbar')) {
94
+ headerToolbar = item.getAggregation('headerToolbar');
95
+ break;
96
+ }
97
+ if (isA<OverflowToolbar>('sap.m.OverflowToolbar', item)) {
98
+ headerToolbar = item;
99
+ break;
100
+ }
101
+ }
102
+ if (!headerToolbar) {
103
+ headerToolbar = table.getToolbar();
104
+ }
105
+ } else if (isA<Table>(M_TABLE_TYPE, table)) {
106
+ headerToolbar = table.getAggregation('headerToolbar');
107
+ }
108
+ return headerToolbar;
109
+ }
110
+ }
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["sap/ui/dt/OverlayRegistry", "../../../utils/core", "../../dialog-factory", "../control-types", "../table-quick-action-base", "../dialog-enablement-validator", "open/ux/preview/client/thirdparty/@sap-ux-private/control-property-editor-common", "../../../utils/info-center-message"], function (OverlayRegistry, _____utils_core, ____dialog_factory, ___control_types, ___table_quick_action_base, ___dialog_enablement_validator, ___sap_ux_private_control_property_editor_common, _____utils_info_center_message) {
4
+ "use strict";
5
+
6
+ const getControlById = _____utils_core["getControlById"];
7
+ const isA = _____utils_core["isA"];
8
+ const DialogNames = ____dialog_factory["DialogNames"];
9
+ const DialogFactory = ____dialog_factory["DialogFactory"];
10
+ const ANALYTICAL_TABLE_TYPE = ___control_types["ANALYTICAL_TABLE_TYPE"];
11
+ const GRID_TABLE_TYPE = ___control_types["GRID_TABLE_TYPE"];
12
+ const M_TABLE_TYPE = ___control_types["M_TABLE_TYPE"];
13
+ const SMART_TABLE_TYPE = ___control_types["SMART_TABLE_TYPE"];
14
+ const TREE_TABLE_TYPE = ___control_types["TREE_TABLE_TYPE"];
15
+ const TableQuickActionDefinitionBase = ___table_quick_action_base["TableQuickActionDefinitionBase"];
16
+ const DIALOG_ENABLEMENT_VALIDATOR = ___dialog_enablement_validator["DIALOG_ENABLEMENT_VALIDATOR"];
17
+ const MessageBarType = ___sap_ux_private_control_property_editor_common["MessageBarType"];
18
+ const sendInfoCenterMessage = _____utils_info_center_message["sendInfoCenterMessage"];
19
+ const CREATE_TABLE_CUSTOM_COLUMN = 'create-table-custom-column';
20
+ const CONTROL_TYPES = [SMART_TABLE_TYPE, M_TABLE_TYPE, TREE_TABLE_TYPE, GRID_TABLE_TYPE];
21
+
22
+ /**
23
+ * Reusable function which performs some preparation steps before table action execution
24
+ *
25
+ * @param table - table element
26
+ * @param sectionInfo - section data
27
+ * @param iconTabBar - icon tab bar element
28
+ * @param iconTabBarFilterKey - tab bar key to select a tab
29
+ */
30
+ function preprocessActionExecution(table, sectionInfo, iconTabBar, iconTabBarFilterKey) {
31
+ if (sectionInfo) {
32
+ const {
33
+ layout,
34
+ section,
35
+ subSection
36
+ } = sectionInfo;
37
+ layout?.setSelectedSection(section);
38
+ section.setSelectedSubSection(subSection);
39
+ } else {
40
+ getControlById(table.getId())?.getDomRef()?.scrollIntoView();
41
+ }
42
+ if (iconTabBar && iconTabBarFilterKey) {
43
+ iconTabBar.setSelectedKey(iconTabBarFilterKey);
44
+ }
45
+ }
46
+ class AddTableCustomColumnQuickAction extends TableQuickActionDefinitionBase {
47
+ constructor(context) {
48
+ super(CREATE_TABLE_CUSTOM_COLUMN, CONTROL_TYPES, 'QUICK_ACTION_ADD_CUSTOM_TABLE_COLUMN', context, {
49
+ areTableRowsRequired: true
50
+ }, [DIALOG_ENABLEMENT_VALIDATOR]);
51
+ }
52
+ async execute(path) {
53
+ const {
54
+ table,
55
+ iconTabBarFilterKey,
56
+ sectionInfo
57
+ } = this.tableMap[path];
58
+ if (!table) {
59
+ return [];
60
+ }
61
+ preprocessActionExecution(table, sectionInfo, this.iconTabBar, iconTabBarFilterKey);
62
+ this.selectOverlay(table);
63
+ let tableInternal = table;
64
+ if (isA(SMART_TABLE_TYPE, table)) {
65
+ const itemsAggregation = table.getAggregation('items');
66
+ tableInternal = itemsAggregation.find(item => {
67
+ return [M_TABLE_TYPE, TREE_TABLE_TYPE, ANALYTICAL_TABLE_TYPE, GRID_TABLE_TYPE].some(tType => isA(tType, item));
68
+ });
69
+ if (!tableInternal) {
70
+ return [];
71
+ }
72
+ }
73
+ const overlay = OverlayRegistry.getOverlay(tableInternal) || [];
74
+ if (!overlay) {
75
+ return [];
76
+ }
77
+ if (isA(M_TABLE_TYPE, tableInternal) && tableInternal.getAggregation('items').length === 0) {
78
+ await sendInfoCenterMessage({
79
+ title: {
80
+ key: 'ADP_CREATE_XML_FRAGMENT_TITLE'
81
+ },
82
+ description: {
83
+ key: 'TABLE_ROWS_NEEDED_TO_CREATE_CUSTOM_COLUMN'
84
+ },
85
+ type: MessageBarType.error
86
+ });
87
+ return [];
88
+ }
89
+ const dialog = [TREE_TABLE_TYPE, ANALYTICAL_TABLE_TYPE, GRID_TABLE_TYPE].some(type => isA(type, tableInternal)) ? DialogNames.ADD_FRAGMENT : DialogNames.ADD_TABLE_COLUMN_FRAGMENTS;
90
+ await DialogFactory.createDialog(overlay, this.context.rta, dialog, undefined, {
91
+ aggregation: 'columns',
92
+ title: 'QUICK_ACTION_ADD_CUSTOM_TABLE_COLUMN'
93
+ }, {
94
+ actionName: this.type,
95
+ telemetryEventIdentifier: this.getTelemetryIdentifier()
96
+ });
97
+ return [];
98
+ }
99
+ }
100
+ var __exports = {
101
+ __esModule: true
102
+ };
103
+ __exports.CREATE_TABLE_CUSTOM_COLUMN = CREATE_TABLE_CUSTOM_COLUMN;
104
+ __exports.preprocessActionExecution = preprocessActionExecution;
105
+ __exports.AddTableCustomColumnQuickAction = AddTableCustomColumnQuickAction;
106
+ return __exports;
107
+ });
108
+ //# sourceMappingURL=create-table-custom-column.js.map
@@ -0,0 +1,141 @@
1
+ import type ManagedObject from 'sap/ui/base/ManagedObject';
2
+ import type UI5Element from 'sap/ui/core/Element';
3
+
4
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
5
+ import OverlayRegistry from 'sap/ui/dt/OverlayRegistry';
6
+
7
+ import type ObjectPageSection from 'sap/uxap/ObjectPageSection';
8
+ import type ObjectPageSubSection from 'sap/uxap/ObjectPageSubSection';
9
+ import type ObjectPageLayout from 'sap/uxap/ObjectPageLayout';
10
+
11
+ import type IconTabBar from 'sap/m/IconTabBar';
12
+
13
+ import type SmartTable from 'sap/ui/comp/smarttable/SmartTable';
14
+
15
+ import { QuickActionContext, NestedQuickActionDefinition } from '../../../cpe/quick-actions/quick-action-definition';
16
+ import { getControlById, isA } from '../../../utils/core';
17
+ import { DialogNames, DialogFactory } from '../../dialog-factory';
18
+ import {
19
+ ANALYTICAL_TABLE_TYPE,
20
+ GRID_TABLE_TYPE,
21
+ M_TABLE_TYPE,
22
+ SMART_TABLE_TYPE,
23
+ TREE_TABLE_TYPE
24
+ } from '../control-types';
25
+ import { TableQuickActionDefinitionBase } from '../table-quick-action-base';
26
+ import { DIALOG_ENABLEMENT_VALIDATOR } from '../dialog-enablement-validator';
27
+ import { MessageBarType } from '@sap-ux-private/control-property-editor-common';
28
+ import { sendInfoCenterMessage } from '../../../utils/info-center-message';
29
+
30
+ export const CREATE_TABLE_CUSTOM_COLUMN = 'create-table-custom-column';
31
+
32
+ const CONTROL_TYPES = [SMART_TABLE_TYPE, M_TABLE_TYPE, TREE_TABLE_TYPE, GRID_TABLE_TYPE];
33
+
34
+ /**
35
+ * Reusable function which performs some preparation steps before table action execution
36
+ *
37
+ * @param table - table element
38
+ * @param sectionInfo - section data
39
+ * @param iconTabBar - icon tab bar element
40
+ * @param iconTabBarFilterKey - tab bar key to select a tab
41
+ */
42
+ export function preprocessActionExecution(
43
+ table: UI5Element,
44
+ sectionInfo:
45
+ | {
46
+ section: ObjectPageSection;
47
+ subSection: ObjectPageSubSection;
48
+ layout?: ObjectPageLayout;
49
+ }
50
+ | undefined,
51
+ iconTabBar: IconTabBar | undefined,
52
+ iconTabBarFilterKey: string | undefined
53
+ ) {
54
+ if (sectionInfo) {
55
+ const { layout, section, subSection } = sectionInfo;
56
+ layout?.setSelectedSection(section);
57
+ section.setSelectedSubSection(subSection);
58
+ } else {
59
+ getControlById(table.getId())?.getDomRef()?.scrollIntoView();
60
+ }
61
+
62
+ if (iconTabBar && iconTabBarFilterKey) {
63
+ iconTabBar.setSelectedKey(iconTabBarFilterKey);
64
+ }
65
+ }
66
+
67
+ export class AddTableCustomColumnQuickAction
68
+ extends TableQuickActionDefinitionBase
69
+ implements NestedQuickActionDefinition
70
+ {
71
+ constructor(context: QuickActionContext) {
72
+ super(
73
+ CREATE_TABLE_CUSTOM_COLUMN,
74
+ CONTROL_TYPES,
75
+ 'QUICK_ACTION_ADD_CUSTOM_TABLE_COLUMN',
76
+ context,
77
+ {
78
+ areTableRowsRequired: true
79
+ },
80
+ [DIALOG_ENABLEMENT_VALIDATOR]
81
+ );
82
+ }
83
+
84
+ async execute(path: string): Promise<FlexCommand[]> {
85
+ const { table, iconTabBarFilterKey, sectionInfo } = this.tableMap[path];
86
+ if (!table) {
87
+ return [];
88
+ }
89
+
90
+ preprocessActionExecution(table, sectionInfo, this.iconTabBar, iconTabBarFilterKey);
91
+ this.selectOverlay(table);
92
+
93
+ let tableInternal: ManagedObject | undefined = table;
94
+ if (isA<SmartTable>(SMART_TABLE_TYPE, table)) {
95
+ const itemsAggregation = table.getAggregation('items') as ManagedObject[];
96
+ tableInternal = itemsAggregation.find((item) => {
97
+ return [M_TABLE_TYPE, TREE_TABLE_TYPE, ANALYTICAL_TABLE_TYPE, GRID_TABLE_TYPE].some((tType) =>
98
+ isA(tType, item)
99
+ );
100
+ });
101
+ if (!tableInternal) {
102
+ return [];
103
+ }
104
+ }
105
+
106
+ const overlay = OverlayRegistry.getOverlay(tableInternal as UI5Element) || [];
107
+ if (!overlay) {
108
+ return [];
109
+ }
110
+
111
+ if (
112
+ isA(M_TABLE_TYPE, tableInternal) &&
113
+ (tableInternal.getAggregation('items') as ManagedObject[]).length === 0
114
+ ) {
115
+ await sendInfoCenterMessage({
116
+ title: { key: 'ADP_CREATE_XML_FRAGMENT_TITLE' },
117
+ description: { key: 'TABLE_ROWS_NEEDED_TO_CREATE_CUSTOM_COLUMN' },
118
+ type: MessageBarType.error
119
+ });
120
+ return [];
121
+ }
122
+ const dialog = [TREE_TABLE_TYPE, ANALYTICAL_TABLE_TYPE, GRID_TABLE_TYPE].some((type) =>
123
+ isA(type, tableInternal)
124
+ )
125
+ ? DialogNames.ADD_FRAGMENT
126
+ : DialogNames.ADD_TABLE_COLUMN_FRAGMENTS;
127
+ await DialogFactory.createDialog(
128
+ overlay,
129
+ this.context.rta,
130
+ dialog,
131
+ undefined,
132
+ {
133
+ aggregation: 'columns',
134
+ title: 'QUICK_ACTION_ADD_CUSTOM_TABLE_COLUMN'
135
+ },
136
+ { actionName: this.type, telemetryEventIdentifier: this.getTelemetryIdentifier() }
137
+ );
138
+
139
+ return [];
140
+ }
141
+ }
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["../../../cpe/quick-actions/utils", "../../../utils/core", "../simple-quick-action-base", "./utils", "../../../utils/version"], function (_____cpe_quick_actions_utils, _____utils_core, ___simple_quick_action_base, ___utils, _____utils_version) {
4
+ "use strict";
5
+
6
+ const pageHasControlId = _____cpe_quick_actions_utils["pageHasControlId"];
7
+ const getControlById = _____utils_core["getControlById"];
8
+ const isA = _____utils_core["isA"];
9
+ const SimpleQuickActionDefinitionBase = ___simple_quick_action_base["SimpleQuickActionDefinitionBase"];
10
+ const areManifestChangesSupported = ___utils["areManifestChangesSupported"];
11
+ const prepareManifestChange = ___utils["prepareManifestChange"];
12
+ const getUi5Version = _____utils_version["getUi5Version"];
13
+ const isLowerThanMinimalUi5Version = _____utils_version["isLowerThanMinimalUi5Version"];
14
+ const ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR = 'enable-semantic-daterange-filterbar';
15
+ const CONTROL_TYPE_LR = 'sap.ui.comp.smartfilterbar.SmartFilterBar';
16
+ const CONTROL_TYPE_ALP = 'sap.suite.ui.generic.template.AnalyticalListPage.control.SmartFilterBarExt';
17
+ const COMPONENT_LR = 'sap.suite.ui.generic.template.ListReport';
18
+ const COMPONENT_ALP = 'sap.suite.ui.generic.template.AnalyticalListPage';
19
+
20
+ /**
21
+ * Quick Action for toggling the visibility of "semantic date range" for filterbar fields.
22
+ */
23
+ class ToggleSemanticDateRangeFilterBar extends SimpleQuickActionDefinitionBase {
24
+ constructor(context) {
25
+ super(ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR, [], '', context);
26
+ }
27
+ forceRefreshAfterExecution = true;
28
+ isUseDateRangeTypeEnabled = false;
29
+ async initialize() {
30
+ const manifestChangesSupported = await areManifestChangesSupported(this.context.manifest);
31
+ if (!manifestChangesSupported) {
32
+ return;
33
+ }
34
+ const controls = [...(this.context.controlIndex[CONTROL_TYPE_LR] ?? []), ...(this.context.controlIndex[CONTROL_TYPE_ALP] ?? [])];
35
+ for (const control of controls) {
36
+ const isActionApplicable = pageHasControlId(this.context.view, control.controlId);
37
+ const modifiedControl = getControlById(control.controlId);
38
+ if (isActionApplicable && modifiedControl) {
39
+ this.control = modifiedControl;
40
+ const id = this.control.getProperty('persistencyKey') ?? this.control.getId();
41
+ if (typeof id !== 'string') {
42
+ throw new Error('Could not retrieve configuration property because control id is not valid!');
43
+ }
44
+ const value = this.context.changeService.getConfigurationPropertyValue(id, 'useDateRange');
45
+ this.isUseDateRangeTypeEnabled = value === undefined ? this.control.getUseDateRangeType() : value;
46
+ }
47
+ }
48
+ }
49
+ get textKey() {
50
+ return this.isUseDateRangeTypeEnabled ? 'QUICK_ACTION_LR_DISABLE_SEMANTIC_DATE_RANGE_FILTER_BAR' : 'QUICK_ACTION_LR_ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR';
51
+ }
52
+ async execute() {
53
+ const version = await getUi5Version();
54
+ const isLowerMinimalVersion = isLowerThanMinimalUi5Version(version, {
55
+ major: 1,
56
+ minor: 126
57
+ });
58
+ let entitySet;
59
+ if (isLowerMinimalVersion && isA(CONTROL_TYPE_LR, this.control)) {
60
+ // In older versions of UI5, the getEntitySet method is unavailable, so this workaround has been introduced.
61
+ const regex = /::([^:]+)--/;
62
+ entitySet = regex.exec(this.control?.getId() ?? '')?.[1];
63
+ } else {
64
+ entitySet = isA(CONTROL_TYPE_LR, this.control) || isA(CONTROL_TYPE_ALP, this.control) ? this.control.getEntitySet() : undefined;
65
+ }
66
+ const viewName = this.context.view.getViewName();
67
+ const command = await prepareManifestChange(this.context, 'component/settings/filterSettings/dateSettings', this.control, viewName.includes('AnalyticalListPage') ? COMPONENT_ALP : COMPONENT_LR, entitySet, {
68
+ useDateRange: !this.isUseDateRangeTypeEnabled
69
+ });
70
+ return command;
71
+ }
72
+ }
73
+ var __exports = {
74
+ __esModule: true
75
+ };
76
+ __exports.ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR = ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR;
77
+ __exports.ToggleSemanticDateRangeFilterBar = ToggleSemanticDateRangeFilterBar;
78
+ return __exports;
79
+ });
80
+ //# sourceMappingURL=lr-enable-semantic-date-range-filter-bar.js.map
@@ -0,0 +1,93 @@
1
+ import type FlexCommand from 'sap/ui/rta/command/FlexCommand';
2
+ import type {
3
+ QuickActionContext,
4
+ SimpleQuickActionDefinition
5
+ } from '../../../cpe/quick-actions/quick-action-definition';
6
+ import { pageHasControlId } from '../../../cpe/quick-actions/utils';
7
+ import { getControlById, isA } from '../../../utils/core';
8
+ import { SimpleQuickActionDefinitionBase } from '../simple-quick-action-base';
9
+ import { areManifestChangesSupported, prepareManifestChange } from './utils';
10
+ import { getUi5Version, isLowerThanMinimalUi5Version } from '../../../utils/version';
11
+ import type SmartFilterBar from 'sap/ui/comp/smartfilterbar/SmartFilterBar';
12
+
13
+ export const ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR = 'enable-semantic-daterange-filterbar';
14
+ const CONTROL_TYPE_LR = 'sap.ui.comp.smartfilterbar.SmartFilterBar';
15
+ const CONTROL_TYPE_ALP = 'sap.suite.ui.generic.template.AnalyticalListPage.control.SmartFilterBarExt';
16
+ const COMPONENT_LR = 'sap.suite.ui.generic.template.ListReport';
17
+ const COMPONENT_ALP = 'sap.suite.ui.generic.template.AnalyticalListPage';
18
+
19
+ /**
20
+ * Quick Action for toggling the visibility of "semantic date range" for filterbar fields.
21
+ */
22
+ export class ToggleSemanticDateRangeFilterBar
23
+ extends SimpleQuickActionDefinitionBase<SmartFilterBar>
24
+ implements SimpleQuickActionDefinition
25
+ {
26
+ constructor(context: QuickActionContext) {
27
+ super(ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR, [], '', context);
28
+ }
29
+ readonly forceRefreshAfterExecution = true;
30
+ private isUseDateRangeTypeEnabled = false;
31
+
32
+ async initialize(): Promise<void> {
33
+ const manifestChangesSupported = await areManifestChangesSupported(this.context.manifest);
34
+ if (!manifestChangesSupported) {
35
+ return;
36
+ }
37
+ const controls = [
38
+ ...(this.context.controlIndex[CONTROL_TYPE_LR] ?? []),
39
+ ...(this.context.controlIndex[CONTROL_TYPE_ALP] ?? [])
40
+ ];
41
+ for (const control of controls) {
42
+ const isActionApplicable = pageHasControlId(this.context.view, control.controlId);
43
+ const modifiedControl = getControlById<SmartFilterBar>(control.controlId);
44
+ if (isActionApplicable && modifiedControl) {
45
+ this.control = modifiedControl;
46
+
47
+ const id = (this.control.getProperty('persistencyKey') as unknown) ?? this.control.getId();
48
+ if (typeof id !== 'string') {
49
+ throw new Error('Could not retrieve configuration property because control id is not valid!');
50
+ }
51
+ const value = this.context.changeService.getConfigurationPropertyValue(id, 'useDateRange');
52
+ this.isUseDateRangeTypeEnabled =
53
+ value === undefined ? this.control.getUseDateRangeType() : (value as boolean);
54
+ }
55
+ }
56
+ }
57
+
58
+ protected get textKey() {
59
+ return this.isUseDateRangeTypeEnabled
60
+ ? 'QUICK_ACTION_LR_DISABLE_SEMANTIC_DATE_RANGE_FILTER_BAR'
61
+ : 'QUICK_ACTION_LR_ENABLE_SEMANTIC_DATE_RANGE_FILTER_BAR';
62
+ }
63
+
64
+ async execute(): Promise<FlexCommand[]> {
65
+ const version = await getUi5Version();
66
+ const isLowerMinimalVersion = isLowerThanMinimalUi5Version(version, { major: 1, minor: 126 });
67
+ let entitySet;
68
+ if (isLowerMinimalVersion && isA<SmartFilterBar>(CONTROL_TYPE_LR, this.control)) {
69
+ // In older versions of UI5, the getEntitySet method is unavailable, so this workaround has been introduced.
70
+ const regex = /::([^:]+)--/;
71
+ entitySet = regex.exec(this.control?.getId() ?? '')?.[1];
72
+ } else {
73
+ entitySet =
74
+ isA<SmartFilterBar>(CONTROL_TYPE_LR, this.control) ||
75
+ isA<SmartFilterBar>(CONTROL_TYPE_ALP, this.control)
76
+ ? this.control.getEntitySet()
77
+ : undefined;
78
+ }
79
+ const viewName = this.context.view.getViewName();
80
+ const command = await prepareManifestChange(
81
+ this.context,
82
+ 'component/settings/filterSettings/dateSettings',
83
+ this.control!,
84
+ viewName.includes('AnalyticalListPage') ? COMPONENT_ALP : COMPONENT_LR,
85
+ entitySet,
86
+ {
87
+ useDateRange: !this.isUseDateRangeTypeEnabled
88
+ }
89
+ );
90
+
91
+ return command;
92
+ }
93
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ sap.ui.define(["../../../cpe/quick-actions/utils", "../control-types", "./utils", "../simple-quick-action-base", "../../../utils/core"], function (_____cpe_quick_actions_utils, ___control_types, ___utils, ___simple_quick_action_base, _____utils_core) {
4
+ "use strict";
5
+
6
+ const getRelevantControlFromActivePage = _____cpe_quick_actions_utils["getRelevantControlFromActivePage"];
7
+ const pageHasControlId = _____cpe_quick_actions_utils["pageHasControlId"];
8
+ const GRID_TABLE_TYPE = ___control_types["GRID_TABLE_TYPE"];
9
+ const M_TABLE_TYPE = ___control_types["M_TABLE_TYPE"];
10
+ const SMART_TABLE_TYPE = ___control_types["SMART_TABLE_TYPE"];
11
+ const TREE_TABLE_TYPE = ___control_types["TREE_TABLE_TYPE"];
12
+ const areManifestChangesSupported = ___utils["areManifestChangesSupported"];
13
+ const prepareManifestChange = ___utils["prepareManifestChange"];
14
+ const SimpleQuickActionDefinitionBase = ___simple_quick_action_base["SimpleQuickActionDefinitionBase"];
15
+ const isA = _____utils_core["isA"];
16
+ const COMPONENT = 'sap.suite.ui.generic.template.ListReport';
17
+ const ENABLE_TABLE_FILTERING = 'enable-table-filtering';
18
+ const CONTROL_TYPES = [SMART_TABLE_TYPE, M_TABLE_TYPE, TREE_TABLE_TYPE, GRID_TABLE_TYPE];
19
+
20
+ /**
21
+ * Quick Action for enabling table filtering using table personalization settings.
22
+ */
23
+ class EnableTableFilteringQuickAction extends SimpleQuickActionDefinitionBase {
24
+ constructor(context) {
25
+ super(ENABLE_TABLE_FILTERING, CONTROL_TYPES, 'QUICK_ACTION_ENABLE_TABLE_FILTERING', context, [{
26
+ run: () => {
27
+ if (this.control) {
28
+ const id = this.control.getProperty('persistencyKey') ?? this.control.getId();
29
+ if (typeof id !== 'string') {
30
+ throw new Error('Could not retrieve configuration property because control id is not valid!');
31
+ }
32
+ const value = this.context.changeService.getConfigurationPropertyValue(id, 'enableTableFilterInPageVariant');
33
+ const isFilterEnabled = value === undefined ? this.control.data('p13nDialogSettings')?.filter?.visible : value;
34
+ if (isFilterEnabled) {
35
+ return {
36
+ type: 'error',
37
+ message: this.context.resourceBundle.getText('TABLE_FILTERING_CHANGE_HAS_ALREADY_BEEN_MADE')
38
+ };
39
+ }
40
+ }
41
+ return undefined;
42
+ }
43
+ }]);
44
+ }
45
+ forceRefreshAfterExecution = true;
46
+ async initialize() {
47
+ const manifestChangesSupported = await areManifestChangesSupported(this.context.manifest);
48
+ if (!manifestChangesSupported) {
49
+ return;
50
+ }
51
+ for (const table of getRelevantControlFromActivePage(this.context.controlIndex, this.context.view, CONTROL_TYPES)) {
52
+ if (table) {
53
+ const isActionApplicable = pageHasControlId(this.context.view, table.getId());
54
+ if (isActionApplicable) {
55
+ this.control = table;
56
+ break;
57
+ }
58
+ }
59
+ }
60
+ }
61
+ async execute() {
62
+ if (!this.control) {
63
+ return [];
64
+ }
65
+ const entitySet = isA(SMART_TABLE_TYPE, this.control) ? this.control.getEntitySet() : undefined;
66
+ const command = await prepareManifestChange(this.context, 'component/settings', this.control, COMPONENT, entitySet, {
67
+ enableTableFilterInPageVariant: !this.isDisabled
68
+ });
69
+ return command;
70
+ }
71
+ }
72
+ var __exports = {
73
+ __esModule: true
74
+ };
75
+ __exports.ENABLE_TABLE_FILTERING = ENABLE_TABLE_FILTERING;
76
+ __exports.EnableTableFilteringQuickAction = EnableTableFilteringQuickAction;
77
+ return __exports;
78
+ });
79
+ //# sourceMappingURL=lr-enable-table-filtering.js.map