@openui5/sap.ui.mdc 1.97.1 → 1.100.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 (296) hide show
  1. package/.reuse/dep5 +25 -30
  2. package/THIRDPARTY.txt +15 -22
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +6 -3
  6. package/src/sap/ui/mdc/AggregationBaseDelegate.js +2 -2
  7. package/src/sap/ui/mdc/BaseDelegate.js +1 -1
  8. package/src/sap/ui/mdc/Chart.js +1128 -1806
  9. package/src/sap/ui/mdc/ChartDelegate.js +454 -250
  10. package/src/sap/ui/mdc/ChartRenderer.js +73 -77
  11. package/src/sap/ui/mdc/Control.js +11 -6
  12. package/src/sap/ui/mdc/Element.js +10 -6
  13. package/src/sap/ui/mdc/Field.js +19 -4
  14. package/src/sap/ui/mdc/FilterBar.js +3 -2
  15. package/src/sap/ui/mdc/FilterBarDelegate.js +26 -0
  16. package/src/sap/ui/mdc/FilterField.js +50 -9
  17. package/src/sap/ui/mdc/Link.js +25 -6
  18. package/src/sap/ui/mdc/LinkDelegate.js +3 -3
  19. package/src/sap/ui/mdc/MultiValueField.js +30 -6
  20. package/src/sap/ui/mdc/Table.js +151 -102
  21. package/src/sap/ui/mdc/TableDelegate.js +68 -13
  22. package/src/sap/ui/mdc/ValueHelp.js +26 -11
  23. package/src/sap/ui/mdc/ValueHelpDelegate.js +2 -1
  24. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
  25. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -1
  26. package/src/sap/ui/mdc/{chartNew/ChartSelectionDetailsNew.js → chart/ChartSelectionDetails.js} +8 -8
  27. package/src/sap/ui/mdc/{chartNew/ChartToolbarNew.js → chart/ChartToolbar.js} +60 -17
  28. package/src/sap/ui/mdc/chart/ChartTypeButton.js +55 -54
  29. package/src/sap/ui/mdc/{chartNew/DrillBreadcrumbsNew.js → chart/DrillBreadcrumbs.js} +10 -10
  30. package/src/sap/ui/mdc/chart/DrillStackHandler.js +43 -254
  31. package/src/sap/ui/mdc/chart/Item.js +62 -92
  32. package/src/sap/ui/mdc/{chartNew/PropertyHelperNew.js → chart/PropertyHelper.js} +3 -3
  33. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +17 -21
  34. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  35. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  36. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  37. package/src/sap/ui/mdc/condition/FilterConverter.js +4 -2
  38. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +388 -67
  39. package/src/sap/ui/mdc/condition/Operator.js +4 -2
  40. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +78 -24
  41. package/src/sap/ui/mdc/condition/RangeOperator.js +5 -5
  42. package/src/sap/ui/mdc/designtime/Util.js +63 -0
  43. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +23 -30
  44. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +83 -5
  45. package/src/sap/ui/mdc/designtime/field/Field.designtime.js +81 -5
  46. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +3 -0
  47. package/src/sap/ui/mdc/designtime/link/PanelItem.designtime.js +3 -1
  48. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +35 -8
  49. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  50. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  51. package/src/sap/ui/mdc/field/ConditionType.js +17 -6
  52. package/src/sap/ui/mdc/field/ConditionsType.js +2 -1
  53. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  54. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  55. package/src/sap/ui/mdc/field/DefineConditionPanel.js +88 -29
  56. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +77 -20
  57. package/src/sap/ui/mdc/field/FieldBase.js +93 -16
  58. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldBaseRenderer.js +0 -3
  60. package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
  61. package/src/sap/ui/mdc/field/FieldInfoBase.js +24 -10
  62. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  63. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  64. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  65. package/src/sap/ui/mdc/field/FieldValueHelp.js +5 -2
  66. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  67. package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +1 -1
  68. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +5 -4
  69. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +6 -4
  70. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +6 -3
  71. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +7 -7
  72. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  73. package/src/sap/ui/mdc/field/ListFieldHelp.js +10 -2
  74. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  75. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  76. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  77. package/src/sap/ui/mdc/field/TokenDisplay.js +70 -0
  78. package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +24 -0
  79. package/src/sap/ui/mdc/field/TokenizerDisplay.js +80 -0
  80. package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +69 -0
  81. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  82. package/src/sap/ui/mdc/field/content/ContentFactory.js +10 -6
  83. package/src/sap/ui/mdc/field/content/DateContent.js +27 -19
  84. package/src/sap/ui/mdc/field/content/DateTimeContent.js +0 -6
  85. package/src/sap/ui/mdc/field/content/DefaultContent.js +35 -13
  86. package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
  87. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +285 -208
  88. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
  89. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +27 -2
  90. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +132 -56
  91. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +2 -2
  92. package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +7 -3
  93. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +52 -14
  94. package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +3 -1
  95. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +43 -19
  96. package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +1 -1
  97. package/src/sap/ui/mdc/flexibility/AggregateFlex.js +2 -2
  98. package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +48 -31
  99. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +6 -4
  100. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +36 -0
  101. package/src/sap/ui/mdc/flexibility/ColumnFlex.js +1 -1
  102. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +47 -10
  103. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +4 -3
  104. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  105. package/src/sap/ui/mdc/flexibility/GroupFlex.js +1 -1
  106. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +0 -1
  107. package/src/sap/ui/mdc/flexibility/Panel.flexibility.js +9 -3
  108. package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +27 -0
  109. package/src/sap/ui/mdc/flexibility/SortFlex.js +2 -2
  110. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +6 -6
  111. package/src/sap/ui/mdc/library.js +54 -44
  112. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  113. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  114. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  115. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  116. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  117. package/src/sap/ui/mdc/link/Factory.js +2 -2
  118. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  119. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  120. package/src/sap/ui/mdc/link/Log.js +1 -1
  121. package/src/sap/ui/mdc/link/Panel.js +140 -177
  122. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  123. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  124. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  125. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  126. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  127. package/src/sap/ui/mdc/messagebundle.properties +57 -2
  128. package/src/sap/ui/mdc/messagebundle_ar.properties +39 -4
  129. package/src/sap/ui/mdc/messagebundle_bg.properties +54 -19
  130. package/src/sap/ui/mdc/messagebundle_ca.properties +37 -2
  131. package/src/sap/ui/mdc/messagebundle_cs.properties +52 -17
  132. package/src/sap/ui/mdc/messagebundle_cy.properties +37 -2
  133. package/src/sap/ui/mdc/messagebundle_da.properties +44 -9
  134. package/src/sap/ui/mdc/messagebundle_de.properties +37 -2
  135. package/src/sap/ui/mdc/messagebundle_el.properties +38 -3
  136. package/src/sap/ui/mdc/messagebundle_en.properties +37 -2
  137. package/src/sap/ui/mdc/messagebundle_en_GB.properties +37 -2
  138. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +37 -2
  139. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +61 -4
  140. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +37 -2
  141. package/src/sap/ui/mdc/messagebundle_es.properties +37 -2
  142. package/src/sap/ui/mdc/messagebundle_es_MX.properties +51 -16
  143. package/src/sap/ui/mdc/messagebundle_et.properties +37 -2
  144. package/src/sap/ui/mdc/messagebundle_fi.properties +43 -8
  145. package/src/sap/ui/mdc/messagebundle_fr.properties +38 -3
  146. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +37 -2
  147. package/src/sap/ui/mdc/messagebundle_hi.properties +38 -3
  148. package/src/sap/ui/mdc/messagebundle_hr.properties +37 -2
  149. package/src/sap/ui/mdc/messagebundle_hu.properties +37 -2
  150. package/src/sap/ui/mdc/messagebundle_id.properties +37 -2
  151. package/src/sap/ui/mdc/messagebundle_it.properties +53 -18
  152. package/src/sap/ui/mdc/messagebundle_iw.properties +38 -3
  153. package/src/sap/ui/mdc/messagebundle_ja.properties +37 -2
  154. package/src/sap/ui/mdc/messagebundle_kk.properties +37 -2
  155. package/src/sap/ui/mdc/messagebundle_ko.properties +41 -6
  156. package/src/sap/ui/mdc/messagebundle_lt.properties +37 -2
  157. package/src/sap/ui/mdc/messagebundle_lv.properties +41 -6
  158. package/src/sap/ui/mdc/messagebundle_ms.properties +37 -2
  159. package/src/sap/ui/mdc/messagebundle_nl.properties +42 -7
  160. package/src/sap/ui/mdc/messagebundle_no.properties +45 -10
  161. package/src/sap/ui/mdc/messagebundle_pl.properties +38 -3
  162. package/src/sap/ui/mdc/messagebundle_pt.properties +44 -9
  163. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +37 -2
  164. package/src/sap/ui/mdc/messagebundle_ro.properties +37 -2
  165. package/src/sap/ui/mdc/messagebundle_ru.properties +37 -2
  166. package/src/sap/ui/mdc/messagebundle_sh.properties +37 -2
  167. package/src/sap/ui/mdc/messagebundle_sk.properties +37 -2
  168. package/src/sap/ui/mdc/messagebundle_sl.properties +37 -2
  169. package/src/sap/ui/mdc/messagebundle_sv.properties +39 -4
  170. package/src/sap/ui/mdc/messagebundle_th.properties +40 -5
  171. package/src/sap/ui/mdc/messagebundle_tr.properties +37 -2
  172. package/src/sap/ui/mdc/messagebundle_uk.properties +41 -6
  173. package/src/sap/ui/mdc/messagebundle_vi.properties +37 -2
  174. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +37 -2
  175. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +37 -2
  176. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +30 -15
  177. package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -142
  178. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +14 -17
  179. package/src/sap/ui/mdc/mixin/PromiseMixin.js +2 -3
  180. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +348 -0
  181. package/src/sap/ui/mdc/odata/TypeUtil.js +2 -2
  182. package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +29 -483
  183. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +106 -0
  184. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +116 -20
  185. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +2 -2
  186. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +117 -123
  187. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +3 -5
  188. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +1 -1
  189. package/src/sap/ui/mdc/odata/v4/util/DelegateUtil.js +1 -1
  190. package/src/sap/ui/mdc/odata/v4/vizChart/{ChartDelegateNew.js → ChartDelegate.js} +459 -351
  191. package/src/sap/ui/mdc/p13n/AdaptationProvider.js +1 -1
  192. package/src/sap/ui/mdc/p13n/Engine.js +51 -30
  193. package/src/sap/ui/mdc/p13n/FlexUtil.js +6 -118
  194. package/src/sap/ui/mdc/p13n/P13nBuilder.js +7 -7
  195. package/src/sap/ui/mdc/p13n/PropertyHelper.js +2 -2
  196. package/src/sap/ui/mdc/p13n/StateUtil.js +24 -6
  197. package/src/sap/ui/mdc/p13n/UIManager.js +20 -19
  198. package/src/sap/ui/mdc/p13n/modification/FlexModificationHandler.js +4 -1
  199. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +19 -12
  200. package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
  201. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +6 -6
  202. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +49 -27
  203. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1094 -49
  204. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +136 -0
  205. package/src/sap/ui/mdc/p13n/panels/GroupView.js +53 -28
  206. package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +108 -0
  207. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +4 -7
  208. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +7 -7
  209. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +156 -11
  210. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +15 -26
  211. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +6 -5
  212. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +22 -11
  213. package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +174 -0
  214. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +12 -19
  215. package/src/sap/ui/mdc/table/Column.js +12 -12
  216. package/src/sap/ui/mdc/table/CreationRow.js +11 -11
  217. package/src/sap/ui/mdc/table/GridTableType.js +80 -33
  218. package/src/sap/ui/mdc/table/PropertyHelper.js +63 -19
  219. package/src/sap/ui/mdc/table/ResponsiveTableType.js +94 -23
  220. package/src/sap/ui/mdc/table/RowActionItem.js +119 -0
  221. package/src/sap/ui/mdc/table/RowSettings.js +45 -4
  222. package/src/sap/ui/mdc/table/TableTypeBase.js +2 -2
  223. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -2
  224. package/src/sap/ui/mdc/themes/base/Chart.less +2 -0
  225. package/src/sap/ui/mdc/themes/base/FieldBase.less +0 -5
  226. package/src/sap/ui/mdc/themes/base/TokenDisplay.less +89 -0
  227. package/src/sap/ui/mdc/themes/base/TokenizerDisplay.less +90 -0
  228. package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +16 -4
  229. package/src/sap/ui/mdc/themes/base/library.source.less +2 -0
  230. package/src/sap/ui/mdc/util/Common.js +1 -1
  231. package/src/sap/ui/mdc/util/DateUtil.js +33 -8
  232. package/src/sap/ui/mdc/util/FilterUtil.js +2 -2
  233. package/src/sap/ui/mdc/util/FormatUtil.js +3 -3
  234. package/src/sap/ui/mdc/util/IdentifierUtil.js +6 -6
  235. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  236. package/src/sap/ui/mdc/util/PropertyHelper.js +243 -87
  237. package/src/sap/ui/mdc/util/TypeUtil.js +6 -5
  238. package/src/sap/ui/mdc/valuehelp/Dialog.js +11 -8
  239. package/src/sap/ui/mdc/valuehelp/Popover.js +6 -3
  240. package/src/sap/ui/mdc/valuehelp/base/Container.js +2 -1
  241. package/src/sap/ui/mdc/valuehelp/base/Content.js +2 -1
  242. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -1
  243. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +5 -4
  244. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +2 -1
  245. package/src/sap/ui/mdc/valuehelp/content/Bool.js +2 -1
  246. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +4 -2
  247. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +23 -14
  248. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +46 -17
  249. package/src/sap/ui/mdc/valuehelp/content/MTable.js +48 -27
  250. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +3 -1
  251. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +3 -3
  252. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsBase.js +3 -3
  253. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsViz.js +0 -0
  254. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsBase.js +1 -1
  255. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsViz.js +0 -0
  256. package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ChartNew.js +0 -0
  257. package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +291 -0
  258. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +7 -7
  259. package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +8 -9
  260. package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +12 -11
  261. package/test/sap/ui/mdc/testutils/opa/link/Actions.js +85 -0
  262. package/test/sap/ui/mdc/testutils/opa/link/Assertions.js +79 -0
  263. package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +112 -0
  264. package/test/sap/ui/mdc/testutils/opa/link/waitForLink.js +50 -0
  265. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +264 -139
  266. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +27 -26
  267. package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +54 -0
  268. package/test/sap/ui/mdc/testutils/opa/valueHelp/Assertions.js +5 -0
  269. package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +40 -0
  270. package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +28 -0
  271. package/src/sap/ui/mdc/ChartDelegateNew.js +0 -395
  272. package/src/sap/ui/mdc/ChartNew.js +0 -1114
  273. package/src/sap/ui/mdc/ChartNewRenderer.js +0 -91
  274. package/src/sap/ui/mdc/chart/DimensionItem.js +0 -281
  275. package/src/sap/ui/mdc/chart/MeasureItem.js +0 -318
  276. package/src/sap/ui/mdc/chart/MetadataDelegate.js +0 -31
  277. package/src/sap/ui/mdc/chart/SelectionHandler.js +0 -127
  278. package/src/sap/ui/mdc/chart/ToolbarHandler.js +0 -328
  279. package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +0 -295
  280. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +0 -212
  281. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -72
  282. package/src/sap/ui/mdc/chartNew/SelectionDetailsActionsNew.js +0 -34
  283. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +0 -91
  284. package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +0 -150
  285. package/src/sap/ui/mdc/link/SelectionDialog.control.xml +0 -66
  286. package/src/sap/ui/mdc/link/SelectionDialog.js +0 -213
  287. package/src/sap/ui/mdc/link/SelectionDialogItem.js +0 -86
  288. package/src/sap/ui/mdc/odata/v4/ChartDelegateNew.js +0 -35
  289. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +0 -39
  290. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +0 -721
  291. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +0 -1179
  292. package/src/sap/ui/mdc/p13n/panels/ListView.js +0 -404
  293. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -92
  294. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -150
  295. package/src/sap/ui/mdc/ui/Container.js +0 -240
  296. package/src/sap/ui/mdc/ui/ContainerItem.js +0 -79
@@ -28,7 +28,7 @@ sap.ui.define([],
28
28
  * Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
29
29
  *
30
30
  * @param {sap.ui.core.RenderManager} oRm The RenderManager that can be used for writing to the render output buffer
31
- * @param {sap.ui.core.Control} oControl An object representation of the control that should be rendered
31
+ * @param {sap.ui.mdc.filterbar.FilterBarBase} oControl An object representation of the control that should be rendered
32
32
  */
33
33
  FilterBarBaseRenderer.render = function (oRm, oControl) {
34
34
  oRm.openStart("div", oControl);
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  *
17
17
  * @param {object[]} aProperties
18
18
  * The properties to process in this helper
19
- * @param {object<string, object>} [mExtensions]
19
+ * @param {Object<string, object>} [mExtensions]
20
20
  * Key-value map, where the key is the name of the property and the value is the extension containing mode-specific information.
21
21
  * The extension of a property is stored in a reserved <code>extension</code> attribute and its attributes must be specified with
22
22
  * <code>mExtensionAttributeMetadata</code>.
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @extends sap.ui.mdc.util.PropertyHelper
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.97.1
36
+ * @version 1.100.0
37
37
  *
38
38
  * @private
39
39
  * @experimental
@@ -48,5 +48,30 @@ sap.ui.define([
48
48
  }
49
49
  });
50
50
 
51
+
52
+ /**
53
+ * Applies defaults and resolves property references.
54
+ *
55
+ * @param {object} oProperty The property to prepare
56
+ * @protected
57
+ */
58
+ PropertyHelper.prototype.prepareProperty = function(oProperty) {
59
+
60
+ if (!oProperty.typeConfig) {
61
+
62
+ var oParent = this.getParent();
63
+ if (oParent && oParent._oDelegate) {
64
+ var oTypeUtil = oParent._oDelegate.getTypeUtil();
65
+ try {
66
+ oProperty.typeConfig = oTypeUtil.getTypeConfig(oProperty.dataType, oProperty.formatOptions, oProperty.constraints);
67
+ } catch (ex) {
68
+ //
69
+ }
70
+ }
71
+ }
72
+
73
+ PropertyHelperBase.prototype.prepareProperty.apply(this, arguments);
74
+ };
75
+
51
76
  return PropertyHelper;
52
77
  });
@@ -4,8 +4,8 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([
7
- "sap/ui/mdc/filterbar/p13n/GroupContainer", "sap/ui/mdc/filterbar/p13n/FilterGroupLayout","sap/ui/mdc/filterbar/p13n/TableContainer", "sap/ui/mdc/filterbar/p13n/FilterColumnLayout", "sap/ui/mdc/filterbar/FilterBarBase", "sap/ui/mdc/filterbar/FilterBarBaseRenderer"
8
- ], function( GroupContainer, FilterGroupLayout, TableContainer, FilterColumnLayout, FilterBarBase, FilterBarBaseRenderer) {
7
+ "sap/ui/mdc/filterbar/p13n/GroupContainer", "sap/ui/mdc/filterbar/p13n/FilterColumnLayout", "sap/ui/mdc/filterbar/p13n/FilterGroupLayout","sap/ui/mdc/filterbar/p13n/TableContainer", "sap/ui/mdc/filterbar/FilterBarBase", "sap/ui/mdc/filterbar/FilterBarBaseRenderer", "sap/base/util/merge", "sap/base/util/UriParameters", "sap/ui/core/Core"
8
+ ], function( GroupContainer, FilterColumnLayout, FilterGroupLayout, TableContainer, FilterBarBase, FilterBarBaseRenderer, merge, SAPUriParameters, Core) {
9
9
  "use strict";
10
10
 
11
11
  /**
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  *
19
19
  * @extends sap.ui.mdc.filterbar.FilterBarBase
20
20
  * @author SAP SE
21
- * @version 1.97.1
21
+ * @version 1.100.0
22
22
  * @constructor
23
23
  * @private
24
24
  * @since 1.80.0
@@ -28,12 +28,13 @@ sap.ui.define([
28
28
  var AdaptationFilterBar = FilterBarBase.extend("sap.ui.mdc.filterbar.p13n.AdaptationFilterBar", {
29
29
  metadata: {
30
30
  library: "sap.ui.mdc",
31
- properties: {
31
+ associations: {
32
32
  /**
33
33
  * Determines the parent on which the condition changes should be applied on.
34
34
  */
35
35
  adaptationControl: {
36
- type: "object"
36
+ type: "sap.ui.mdc.Control",
37
+ multiple: false
37
38
  }
38
39
  },
39
40
  events: {
@@ -49,7 +50,49 @@ sap.ui.define([
49
50
 
50
51
  AdaptationFilterBar.prototype.init = function() {
51
52
  FilterBarBase.prototype.init.apply(this,arguments);
53
+ this.addStyleClass("sapUIAdaptationFilterBar");
52
54
  this._bPersistValues = true;
55
+
56
+ this._fnResolveAdaptationControlPromise = null;
57
+ this._oAdaptationControlPromise = new Promise(function(resolve, reject) {
58
+ this._fnResolveAdaptationControlPromise = resolve;
59
+ }.bind(this));
60
+ };
61
+ AdaptationFilterBar.prototype.applySettings = function() {
62
+ FilterBarBase.prototype._applySettings.apply(this, arguments);
63
+ this._waitForAdaptControlAndPropertyHelper().then(function() {
64
+ this._initControlDelegate();
65
+ }.bind(this));
66
+ };
67
+
68
+ AdaptationFilterBar.prototype._waitForAdaptControlAndPropertyHelper = function(){
69
+ return this._oAdaptationControlPromise.then(function() {
70
+ return this._getAdaptationControlInstance().awaitPropertyHelper().then(function(oPropertyHelper) {
71
+ this._oPropertyHelper = oPropertyHelper;
72
+ }.bind(this));
73
+ }.bind(this));
74
+ };
75
+ AdaptationFilterBar.prototype._initControlDelegate = function() {
76
+ return this.initControlDelegate().then(function() {
77
+ //this.getTypeUtil();
78
+ if (!this._bIsBeingDestroyed) {
79
+ this._applyInitialFilterConditions();
80
+ }
81
+ }.bind(this));
82
+ };
83
+
84
+ AdaptationFilterBar.prototype.initControlDelegate = function() {
85
+ return this._oAdaptationControlPromise.then(function() {
86
+ return this._getAdaptationControlInstance().initControlDelegate();
87
+ }.bind(this));
88
+ };
89
+
90
+ AdaptationFilterBar.prototype.getTypeUtil = function() {
91
+ if (!this._getAdaptationControlInstance()) {
92
+ throw new Error("No adaptation control assigned yet.");
93
+ }
94
+
95
+ return this._getAdaptationControlInstance().getTypeUtil();
53
96
  };
54
97
 
55
98
  AdaptationFilterBar.prototype.setMessageStrip = function(oStrip) {
@@ -67,14 +110,13 @@ sap.ui.define([
67
110
  //update adaptationModel while dialog is open
68
111
  this._oConditionModel.attachPropertyChange(function(oEvt){
69
112
  var sKey = oEvt.getParameter("path").substring(12);
70
- if (this.oAdaptationModel){
71
- var aItems = this.oAdaptationModel.getProperty("/items");
113
+ if (this.oAdaptationData){
114
+ var aItems = this.oAdaptationData.items;
72
115
  var oItem = aItems.find(function(o){
73
116
  return o.name == sKey;
74
117
  });
75
118
  if (oItem) {
76
- oItem.isFiltered = this._getConditionModel().getConditions(sKey).length > 0 ? true : false;
77
- this.oAdaptationModel.setProperty("/items", aItems);
119
+ oItem.active = this._getConditionModel().getConditions(sKey).length > 0 ? true : false;
78
120
  }
79
121
  }
80
122
  }.bind(this));
@@ -82,37 +124,53 @@ sap.ui.define([
82
124
  return this;
83
125
  };
84
126
 
127
+ AdaptationFilterBar.prototype._retrieveMetadata = function() {
128
+
129
+ return this._oAdaptationControlPromise.then(function() {
130
+ return this._getAdaptationControlInstance().awaitPropertyHelper().then(function(oPropertyHelper) {
131
+ this._oMetadataAppliedPromise = Promise.resolve();
132
+ if (!this._getAdaptationControlInstance().isPropertyHelperFinal()) {
133
+ return this.finalizePropertyHelper();
134
+ }
135
+
136
+ return FilterBarBase.prototype._retrieveMetadata.apply(this, arguments);
137
+ }.bind(this));
138
+ }.bind(this));
139
+ };
140
+
85
141
  AdaptationFilterBar.prototype.createConditionChanges = function() {
86
- var mConditions = this._getModelConditions(this._getConditionModel(), false, true);
87
- if (this._bPersistValues) {
88
- //this.getAdaptationControl(), "Filter", mConditions, true, true
89
- return this.getEngine().createChanges({
90
- control: this.getAdaptationControl(),
91
- key: "Filter",
92
- state: mConditions,
93
- suppressAppliance: true
94
- });
95
- } else {
96
- //TODO: currently only required once the parent FilterBar has p13nMode 'value' disabled.
97
- this.getAdaptationControl()._setXConditions(mConditions, true);
98
- return Promise.resolve(null);
99
- }
142
+ return Promise.all([this._oAdaptationControlPromise, this._getAdaptationControlInstance().awaitControlDelegate()]).then(function() {
143
+ var mConditions = this._getModelConditions(this._getConditionModel(), false, true);
144
+ if (this._bPersistValues) {
145
+ //this._getAdaptationControlInstance(), "Filter", mConditions, true, true
146
+ return this.getEngine().createChanges({
147
+ control: this._getAdaptationControlInstance(),
148
+ key: "Filter",
149
+ state: mConditions,
150
+ suppressAppliance: true
151
+ });
152
+ } else {
153
+ //TODO: currently only required once the parent FilterBar has p13nMode 'value' disabled.
154
+ this._getAdaptationControlInstance()._setXConditions(mConditions, true);
155
+ return Promise.resolve(null);
156
+ }
157
+ }.bind(this));
100
158
  };
101
159
 
102
160
  /**
103
161
  *
104
162
  * Please note that the provided model should be created with sap.ui.mdc.p13n.P13nBuilder
105
163
  *
106
- * @param {object} oP13nModel Model providing the necessary data to display and create <code>FilterColumnLayout</code> instances.
164
+ * @param {object} oP13nData Necessary data to display and create <code>FilterColumnLayout</code> instances.
107
165
  *
108
166
  */
109
- AdaptationFilterBar.prototype.setP13nModel = function(oP13nModel) {
110
- this.oAdaptationModel = oP13nModel;
111
- this._oFilterBarLayout.update();
167
+ AdaptationFilterBar.prototype.setP13nData = function(oP13nData) {
168
+ this.oAdaptationData = oP13nData;
169
+ this._oFilterBarLayout.update(oP13nData);
112
170
  };
113
171
 
114
- AdaptationFilterBar.prototype.getP13nModel = function(oP13nModel) {
115
- return this.oAdaptationModel;
172
+ AdaptationFilterBar.prototype.getP13nData = function() {
173
+ return this.oAdaptationData;
116
174
  };
117
175
 
118
176
  AdaptationFilterBar.prototype._handleFilterItemSubmit = function() {
@@ -121,7 +179,7 @@ sap.ui.define([
121
179
 
122
180
  AdaptationFilterBar.prototype._getWaitForChangesPromise = function() {
123
181
  //Change is applied on parent --> wait for the parent promise not the child
124
- return this.getEngine().waitForChanges(this.getAdaptationControl());
182
+ return this.getEngine().waitForChanges(this._getAdaptationControlInstance());
125
183
  };
126
184
 
127
185
  AdaptationFilterBar.prototype.applyConditionsAfterChangesApplied = function() {
@@ -129,13 +187,6 @@ sap.ui.define([
129
187
  this.triggerSearch();
130
188
  };
131
189
 
132
-
133
- AdaptationFilterBar.prototype.initPropertyHelper = function(){
134
- return this.getAdaptationControl().awaitPropertyHelper().then(function(oPropertyHelper) {
135
- this._oPropertyHelper = oPropertyHelper;
136
- }.bind(this));
137
- };
138
-
139
190
  /**
140
191
  * Method which will initialize the <code>AdaptationFilterBar</code> and create the required FilterFields
141
192
  *
@@ -143,14 +194,15 @@ sap.ui.define([
143
194
  */
144
195
  AdaptationFilterBar.prototype.createFilterFields = function(){
145
196
  return this.initialized().then(function(){
146
- var mConditions = this._bPersistValues ? this.getAdaptationControl().getFilterConditions() : this.getAdaptationControl()._getXConditions();
197
+ var mConditions = this._bPersistValues ? this._getAdaptationControlInstance().getFilterConditions() : this._getAdaptationControlInstance()._getXConditions();
147
198
  this._setXConditions(mConditions, true);
148
199
 
149
200
  if (this._bFilterFieldsCreated) {
201
+ this._oFilterBarLayout.setP13nData(this.oAdaptationData);
150
202
  return this;
151
203
  }
152
204
 
153
- var oAdaptationControl = this.getAdaptationControl();
205
+ var oAdaptationControl = this._getAdaptationControlInstance();
154
206
  var oDelegate = oAdaptationControl.getControlDelegate();
155
207
  var oFilterDelegate = this._checkAdvancedParent(oAdaptationControl) ? oDelegate : oDelegate.getFilterDelegate();
156
208
 
@@ -159,7 +211,7 @@ sap.ui.define([
159
211
 
160
212
  var aFieldPromises = [];
161
213
 
162
- this.oAdaptationModel.getProperty("/items").forEach(function(oItem, iIndex){
214
+ this.oAdaptationData.items.forEach(function(oItem, iIndex){
163
215
  var oFilterFieldPromise;
164
216
 
165
217
  oFilterFieldPromise = this._checkExisting(oItem, oFilterDelegate);
@@ -192,14 +244,12 @@ sap.ui.define([
192
244
  }.bind(this));
193
245
 
194
246
  return Promise.all(aFieldPromises).then(function(){
195
- this.oAdaptationModel.getProperty("/items").forEach(function(oItem){
247
+ this.oAdaptationData.items.forEach(function(oItem){
196
248
  this.addAggregation("filterItems", oItem.filterfield);
197
249
  delete oItem.filterfield;
198
250
  }.bind(this));
199
251
 
200
- if (this._oFilterBarLayout.getInner().setP13nModel){
201
- this._oFilterBarLayout.getInner().setP13nModel(this.oAdaptationModel);
202
- }
252
+ this._oFilterBarLayout.setP13nData(this.oAdaptationData);
203
253
  this._bFilterFieldsCreated = true;
204
254
 
205
255
  return this;
@@ -220,7 +270,7 @@ sap.ui.define([
220
270
  AdaptationFilterBar.prototype._checkExisting = function(oItem, oFilterDelegate) {
221
271
  var oFilterFieldPromise;
222
272
 
223
- var oAdaptationControl = this.getAdaptationControl();
273
+ var oAdaptationControl = this._getAdaptationControlInstance();
224
274
  var aExistingItems = this._checkAdvancedParent(oAdaptationControl) ? oAdaptationControl.getFilterItems() : [];
225
275
 
226
276
  var mExistingFilterItems = aExistingItems.reduce(function(mMap, oField){
@@ -232,7 +282,7 @@ sap.ui.define([
232
282
  oFilterFieldPromise = Promise.resolve(mExistingFilterItems[oItem.name]);
233
283
  } else {
234
284
 
235
- oFilterFieldPromise = oFilterDelegate.addItem(oItem.name, this.getAdaptationControl());
285
+ oFilterFieldPromise = oFilterDelegate.addItem(oItem.name, this._getAdaptationControlInstance());
236
286
 
237
287
  oFilterFieldPromise = oFilterFieldPromise.then(function(oFilterField){
238
288
 
@@ -254,10 +304,10 @@ sap.ui.define([
254
304
  var aOriginalsToRemove = [];
255
305
 
256
306
  Object.keys(this._mOriginalsForClone).forEach(function(sKey){
257
- var oDelegate = this.getAdaptationControl().getControlDelegate();
307
+ var oDelegate = this._getAdaptationControlInstance().getControlDelegate();
258
308
 
259
309
  if (aExistingItems.indexOf(sKey) < 0) {//Originals that have not been selected --> use continue similar to 'ItemBaseFlex'
260
- var oRemovePromise = oDelegate.removeItem.call(oDelegate, sKey, this.getAdaptationControl()).then(function(bContinue){
310
+ var oRemovePromise = oDelegate.removeItem.call(oDelegate, sKey, this._getAdaptationControlInstance()).then(function(bContinue){
261
311
  if (bContinue && this._mOriginalsForClone[sKey]) {
262
312
  // destroy the item
263
313
  this._mOriginalsForClone[sKey].destroy();
@@ -286,34 +336,60 @@ sap.ui.define([
286
336
  * @param {boolean} bSuppressInvalidate suppress invalidation
287
337
  */
288
338
  AdaptationFilterBar.prototype.setAdaptationControl = function(oControl, bSuppressInvalidate) {
289
- this.setProperty("adaptationControl", oControl, bSuppressInvalidate);
290
339
 
291
- this._checkAdvancedParent(oControl);
340
+ if (this._fnResolveAdaptationControlPromise) {
341
+ this._fnResolveAdaptationControlPromise();
342
+ this._fnResolveAdaptationControlPromise = null;
343
+ }
344
+
345
+ this.setAssociation("adaptationControl", oControl, bSuppressInvalidate);
346
+
347
+ //FIXME: remove once the UI has been decided
348
+ var bUseQueryPanel = new SAPUriParameters(window.location.search).getAll("sap-ui-xx-filterQueryPanel")[0] === "true";
349
+ this._cLayoutItem = bUseQueryPanel || this._checkAdvancedParent(oControl) ? FilterGroupLayout : FilterColumnLayout; //Note: once the URL parameter is removed, FilterColumnLayout can be deleted
292
350
 
293
- //TODO: use 'GroupView' for inbuilt filtering enabled Controls
294
- this._cLayoutItem = this._checkAdvancedParent(oControl) ? FilterGroupLayout : FilterColumnLayout;
295
351
  this._oFilterBarLayout = this._checkAdvancedParent(oControl) ? new GroupContainer() : new TableContainer();
352
+
296
353
  this._oFilterBarLayout.getInner().setParent(this);
297
354
  this.setAggregation("layout", this._oFilterBarLayout, true);
298
- this.addStyleClass("sapUIAdaptationFilterBar");
299
355
 
300
356
  if (this._oFilterBarLayout.getInner().attachChange) {
301
- this._oFilterBarLayout.getInner().attachChange(function(){
357
+ this._oFilterBarLayout.getInner().attachChange(function(oEvt){
358
+ if (oEvt.getParameter("reason") === "Remove") {
359
+ var oItem = oEvt.getParameter("item");
360
+ var mConditions = this._bPersistValues ? merge({}, this._getAdaptationControlInstance().getFilterConditions()) : this._getAdaptationControlInstance()._getXConditions();
361
+ mConditions[oItem.name] = [];
362
+ this._setXConditions(mConditions, true);
363
+ }
302
364
  this.fireChange();
303
365
  }.bind(this));
304
366
  }
305
367
  return this;
306
368
  };
307
369
 
370
+ /**
371
+ * Returns an instance of the associated adaptation control, if available.
372
+ * @private
373
+ * @ui5-restricted sap.ui.mdc
374
+ * @returns {sap.ui.mdc.Control} The adaptation control instance.
375
+ */
376
+ AdaptationFilterBar.prototype._getAdaptationControlInstance = function () {
377
+ var sAdaptationControlId = this.getAdaptationControl();
378
+ return sAdaptationControlId && Core.byId(sAdaptationControlId);
379
+ };
380
+
308
381
  AdaptationFilterBar.prototype.exit = function() {
309
382
  FilterBarBase.prototype.exit.apply(this, arguments);
310
383
  for (var sKey in this._mOriginalsForClone) {
311
384
  this._mOriginalsForClone[sKey].destroy();
312
385
  }
313
386
  this._mOriginalsForClone = null;
314
- this.oAdaptationModel = null;
387
+ this.oAdaptationData = null;
388
+
389
+ this._fnResolveAdaptationControlPromise = null;
390
+ this._oAdaptationControlPromise = null;
315
391
  };
316
392
 
317
393
  return AdaptationFilterBar;
318
394
 
319
- });
395
+ });
@@ -1,3 +1,4 @@
1
+
1
2
  /*
2
3
  * ! OpenUI5
3
4
  * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
@@ -62,5 +63,4 @@ sap.ui.define(['sap/m/ColumnListItem', 'sap/m/ColumnListItemRenderer', 'sap/m/La
62
63
  };
63
64
 
64
65
  return FilterColumnLayout;
65
-
66
- });
66
+ });
@@ -12,7 +12,7 @@ sap.ui.define([
12
12
 
13
13
  /**
14
14
  * Constructor for a new filterBar/p13n/GroupContainer.
15
- * Used for a complex groupable FilterBar UI, should be used in combination with <code>FilterColumnLayout</code>
15
+ * Used for a complex groupable FilterBar UI, should be used in combination with <code>FilterGroupLayout</code>
16
16
  * @param {string} [sId] ID for the new control, generated automatically if no ID is given
17
17
  * @class The GroupContainer is a IFilterContainer implementation for <code>sap.m.Table</code>
18
18
  * @extends sap.ui.mdc.filterbar.IFilterContainer
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  this.oLayout = new AdaptFiltersPanel();
35
35
 
36
36
  this.oLayout.setItemFactory(function(oBindingContext){
37
- var sKey = this.oLayout.getModel(this.oLayout.P13N_MODEL).getProperty(oBindingContext.sPath).name;
37
+ var sKey = oBindingContext.getProperty(oBindingContext.sPath).name;
38
38
  var oFilterItem = this.mFilterItems[sKey];
39
39
  return oFilterItem;
40
40
  }.bind(this));
@@ -62,10 +62,14 @@ sap.ui.define([
62
62
  return aFilterItems;
63
63
  };
64
64
 
65
- GroupContainer.prototype.update = function() {
65
+ GroupContainer.prototype.update = function(oP13nData) {
66
66
  this.oLayout.restoreDefaults();
67
67
  };
68
68
 
69
+ GroupContainer.prototype.setP13nData = function(oAdaptationData) {
70
+ this.oLayout.setP13nData(oAdaptationData);
71
+ };
72
+
69
73
  GroupContainer.prototype.exit = function() {
70
74
  this.mFilterItems = null;
71
75
  this.mFilterFields = null;
@@ -6,13 +6,13 @@
6
6
 
7
7
  // Provides control sap.ui.mdc.filterbar.FilterItemLayout.
8
8
  sap.ui.define([
9
- 'sap/ui/mdc/filterbar/IFilterContainer','sap/m/Table', 'sap/m/Column', 'sap/m/Text', 'sap/m/VBox'
10
- ], function(IFilterContainer, Table, Column, Text, VBox) {
9
+ 'sap/ui/mdc/filterbar/IFilterContainer','sap/m/Table', 'sap/m/Column', 'sap/m/Text', 'sap/m/VBox', 'sap/ui/mdc/p13n/panels/FilterPanel', 'sap/base/util/UriParameters'
10
+ ], function(IFilterContainer, Table, Column, Text, VBox, FilterPanel, SAPUriParameters) {
11
11
  "use strict";
12
12
 
13
13
  /**
14
14
  * Constructor for a new filterBar/p13n/TableContainer.
15
- * Used for a simple FilterBar table like view, should be used in combination with <code>FilterCellLayout</code>
15
+ * Used for a simple FilterBar table like view, should be used in combination with <code>FilterGroupLayout</code>
16
16
  * @param {string} [sId] ID for the new control, generated automatically if no ID is given
17
17
  * @class The TableContainer is a IFilterContainer implementation for <code>sap.m.Table</code>
18
18
  * @extends sap.ui.mdc.filterbar.IFilterContainer
@@ -44,18 +44,51 @@ sap.ui.define([
44
44
  ]
45
45
  });
46
46
 
47
- this._oMessageStripContainer = new VBox(this.getId() + "-messageStripContainer");
47
+ var oURLParams = new SAPUriParameters(window.location.search);
48
+ this._bUseQueryPanel = oURLParams.getAll("sap-ui-xx-filterQueryPanel")[0] === "true";
49
+
50
+ //FIXME: remove check once the UI has been decided
51
+ if (this._bUseQueryPanel) {
52
+ this.oLayout = new FilterPanel({
53
+ enableReorder: false
54
+ });
55
+
56
+ this.mFilterItems = {};
57
+
58
+ this.oLayout.setItemFactory(function(oItem){
59
+ var sKey = oItem.name;
60
+ var oFilterItem = this.mFilterItems[sKey];
61
+ return oFilterItem;
62
+ }.bind(this));
63
+ } else {
64
+ this._oMessageStripContainer = new VBox(this.getId() + "-messageStripContainer");
65
+
66
+ this.oLayout = new VBox({
67
+ items: [
68
+ this._oMessageStripContainer,
69
+ this._oTable
70
+ ]
71
+ });
72
+ }
48
73
 
49
- this.oLayout = new VBox({
50
- items: [
51
- this._oMessageStripContainer,
52
- this._oTable
53
- ]
54
- });
55
74
  };
56
75
 
57
76
  TableContainer.prototype.insertFilterField = function(oControl, iIndex) {
58
- this._oTable.insertItem(oControl, iIndex);
77
+
78
+ //FIXME: remove check once the UI has been decided
79
+ if (this._bUseQueryPanel) {
80
+ this.mFilterItems[oControl._getFieldPath()] = oControl;
81
+ } else {
82
+ this._oTable.insertItem(oControl, iIndex);
83
+ }
84
+
85
+ };
86
+
87
+ TableContainer.prototype.setP13nData = function(oAdaptationData) {
88
+ //FIXME: remove check once the UI has been decided
89
+ if (this._bUseQueryPanel) {
90
+ this.oLayout.setP13nData(oAdaptationData.items);
91
+ }
59
92
  };
60
93
 
61
94
  TableContainer.prototype.removeFilterField = function(oControl) {
@@ -63,15 +96,20 @@ sap.ui.define([
63
96
  };
64
97
 
65
98
  TableContainer.prototype.setMessageStrip = function(oStrip) {
66
- this._oMessageStripContainer.removeAllItems();
67
- this._oMessageStripContainer.addItem(oStrip);
99
+ //FIXME: remove check once the UI has been decided
100
+ if (this._bUseQueryPanel) {
101
+ this.oLayout.setMessageStrip(oStrip);
102
+ } else {
103
+ this._oMessageStripContainer.removeAllItems();
104
+ this._oMessageStripContainer.addItem(oStrip);
105
+ }
68
106
  };
69
107
 
70
108
  TableContainer.prototype.getFilterFields = function() {
71
109
  return this._oTable.getItems();
72
110
  };
73
111
 
74
- TableContainer.prototype.update = function() {
112
+ TableContainer.prototype.update = function(oP13nModel) {
75
113
  //Called when the UI model is being set - trigger update logic here
76
114
  };
77
115
 
@@ -10,6 +10,7 @@ sap.ui.define([
10
10
  "sap/ui/model/FilterOperator",
11
11
  "sap/ui/Device",
12
12
  "sap/ui/core/InvisibleText",
13
+ "sap/ui/core/Item",
13
14
  "sap/ui/core/Control",
14
15
  "sap/ui/layout/HorizontalLayout",
15
16
  "sap/m/SearchField",
@@ -28,6 +29,7 @@ sap.ui.define([
28
29
  FilterOperator,
29
30
  Device,
30
31
  InvisibleText,
32
+ Item,
31
33
  Control,
32
34
  HorizontalLayout,
33
35
  SearchField,
@@ -300,7 +302,7 @@ sap.ui.define([
300
302
  this.oList.bindAggregation("items", {
301
303
  path: "/items",
302
304
  model: "$mdcColSearch",
303
- template: new sap.ui.core.Item({
305
+ template: new Item({
304
306
  key: "{$mdcColSearch>key}",
305
307
  text: "{$mdcColSearch>text}"
306
308
  })