@openui5/sap.ui.mdc 1.96.1 → 1.97.1

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 (308) hide show
  1. package/.reuse/dep5 +1 -1
  2. package/THIRDPARTY.txt +2 -1
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +2 -2
  5. package/src/sap/ui/mdc/ActionToolbar.js +3 -8
  6. package/src/sap/ui/mdc/AggregationBaseDelegate.js +1 -1
  7. package/src/sap/ui/mdc/BaseDelegate.js +1 -1
  8. package/src/sap/ui/mdc/Chart.js +2 -2
  9. package/src/sap/ui/mdc/ChartDelegate.js +1 -1
  10. package/src/sap/ui/mdc/ChartDelegateNew.js +1 -1
  11. package/src/sap/ui/mdc/ChartNew.js +2 -2
  12. package/src/sap/ui/mdc/ChartNewRenderer.js +3 -3
  13. package/src/sap/ui/mdc/ChartRenderer.js +1 -1
  14. package/src/sap/ui/mdc/Control.js +2 -2
  15. package/src/sap/ui/mdc/Delegate.js +1 -1
  16. package/src/sap/ui/mdc/Element.js +2 -2
  17. package/src/sap/ui/mdc/Field.js +4 -3
  18. package/src/sap/ui/mdc/FilterBar.js +2 -2
  19. package/src/sap/ui/mdc/FilterBarDelegate.js +1 -1
  20. package/src/sap/ui/mdc/FilterField.js +17 -3
  21. package/src/sap/ui/mdc/Link.js +2 -2
  22. package/src/sap/ui/mdc/LinkDelegate.js +1 -1
  23. package/src/sap/ui/mdc/MultiValueField.js +3 -2
  24. package/src/sap/ui/mdc/Table.js +175 -135
  25. package/src/sap/ui/mdc/TableDelegate.js +14 -12
  26. package/src/sap/ui/mdc/ValueHelp.js +34 -8
  27. package/src/sap/ui/mdc/ValueHelpDelegate.js +21 -1
  28. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
  29. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -1
  30. package/src/sap/ui/mdc/chart/ChartSettings.js +1 -1
  31. package/src/sap/ui/mdc/chart/ChartTypeButton.js +1 -1
  32. package/src/sap/ui/mdc/chart/DimensionItem.js +1 -1
  33. package/src/sap/ui/mdc/chart/DrillStackHandler.js +1 -1
  34. package/src/sap/ui/mdc/chart/Item.js +1 -1
  35. package/src/sap/ui/mdc/chart/MeasureItem.js +1 -1
  36. package/src/sap/ui/mdc/chart/MetadataDelegate.js +1 -1
  37. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +2 -2
  38. package/src/sap/ui/mdc/chart/SelectionHandler.js +1 -1
  39. package/src/sap/ui/mdc/chart/ToolbarHandler.js +2 -2
  40. package/src/sap/ui/mdc/chartNew/ChartSelectionDetailsNew.js +2 -2
  41. package/src/sap/ui/mdc/chartNew/ChartToolbarNew.js +2 -2
  42. package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +1 -1
  43. package/src/sap/ui/mdc/chartNew/DrillBreadcrumbsNew.js +1 -1
  44. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +1 -1
  45. package/src/sap/ui/mdc/chartNew/ItemNew.js +1 -1
  46. package/src/sap/ui/mdc/chartNew/PropertyHelperNew.js +2 -2
  47. package/src/sap/ui/mdc/chartNew/SelectionDetailsActionsNew.js +1 -1
  48. package/src/sap/ui/mdc/condition/Condition.js +2 -2
  49. package/src/sap/ui/mdc/condition/ConditionConverter.js +2 -2
  50. package/src/sap/ui/mdc/condition/ConditionModel.js +2 -2
  51. package/src/sap/ui/mdc/condition/ConditionModelPropertyBinding.js +1 -1
  52. package/src/sap/ui/mdc/condition/FilterConverter.js +2 -2
  53. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +7 -3
  54. package/src/sap/ui/mdc/condition/Operator.js +10 -10
  55. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +437 -0
  56. package/src/sap/ui/mdc/condition/RangeOperator.js +2 -2
  57. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +1 -1
  58. package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +1 -1
  59. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +18 -18
  60. package/src/sap/ui/mdc/designtime/field/Field.designtime.js +21 -0
  61. package/src/sap/ui/mdc/designtime/field/FieldBase.designtime.js +104 -0
  62. package/src/sap/ui/mdc/designtime/field/FilterField.designtime.js +22 -0
  63. package/src/sap/ui/mdc/designtime/field/MultiValueField.designtime.js +23 -0
  64. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +1 -1
  65. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +1 -1
  66. package/src/sap/ui/mdc/designtime/library.designtime.js +1 -1
  67. package/src/sap/ui/mdc/designtime/link/Panel.designtime.js +1 -1
  68. package/src/sap/ui/mdc/designtime/link/PanelItem.designtime.js +1 -1
  69. package/src/sap/ui/mdc/designtime/p13n/PersistenceProvider.designtime.js +1 -1
  70. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +1 -1
  71. package/src/sap/ui/mdc/enum/ActionToolbarActionAlignment.js +1 -1
  72. package/src/sap/ui/mdc/enum/BaseType.js +1 -1
  73. package/src/sap/ui/mdc/enum/ConditionValidated.js +1 -1
  74. package/src/sap/ui/mdc/enum/ContentMode.js +1 -1
  75. package/src/sap/ui/mdc/enum/EditMode.js +1 -1
  76. package/src/sap/ui/mdc/enum/FieldDisplay.js +1 -1
  77. package/src/sap/ui/mdc/enum/OutParameterMode.js +1 -1
  78. package/src/sap/ui/mdc/enum/PersistenceMode.js +1 -1
  79. package/src/sap/ui/mdc/enum/SelectType.js +1 -1
  80. package/src/sap/ui/mdc/field/BoolFieldHelp.js +2 -2
  81. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +2 -2
  82. package/src/sap/ui/mdc/field/ConditionType.js +8 -8
  83. package/src/sap/ui/mdc/field/ConditionsType.js +8 -8
  84. package/src/sap/ui/mdc/field/CustomFieldHelp.js +2 -2
  85. package/src/sap/ui/mdc/field/CustomFieldInfo.js +2 -2
  86. package/src/sap/ui/mdc/field/DefineConditionPanel.js +2 -2
  87. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +311 -0
  88. package/src/sap/ui/mdc/field/FieldBase.js +55 -48
  89. package/src/sap/ui/mdc/field/FieldBaseDelegate.js +1 -1
  90. package/src/sap/ui/mdc/field/FieldBaseRenderer.js +1 -1
  91. package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
  92. package/src/sap/ui/mdc/field/FieldHelpBaseDelegate.js +1 -1
  93. package/src/sap/ui/mdc/field/FieldInfoBase.js +2 -2
  94. package/src/sap/ui/mdc/field/FieldInput.js +2 -2
  95. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +2 -2
  96. package/src/sap/ui/mdc/field/FieldInputRenderer.js +1 -1
  97. package/src/sap/ui/mdc/field/FieldMultiInput.js +2 -2
  98. package/src/sap/ui/mdc/field/FieldMultiInputRenderer.js +1 -1
  99. package/src/sap/ui/mdc/field/FieldValueHelp.js +7 -7
  100. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +2 -2
  101. package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +21 -1
  102. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +2 -2
  103. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +2 -2
  104. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +3 -2
  105. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +2 -2
  106. package/src/sap/ui/mdc/field/InParameter.js +2 -2
  107. package/src/sap/ui/mdc/field/ListFieldHelp.js +2 -2
  108. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +2 -2
  109. package/src/sap/ui/mdc/field/MultiValueFieldDelegate.js +1 -1
  110. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +2 -2
  111. package/src/sap/ui/mdc/field/OutParameter.js +2 -2
  112. package/src/sap/ui/mdc/field/ValueHelpPanel.js +3 -2
  113. package/src/sap/ui/mdc/field/content/BooleanContent.js +2 -2
  114. package/src/sap/ui/mdc/field/content/ContentFactory.js +24 -22
  115. package/src/sap/ui/mdc/field/content/DateContent.js +129 -3
  116. package/src/sap/ui/mdc/field/content/DateTimeContent.js +10 -2
  117. package/src/sap/ui/mdc/field/content/DefaultContent.js +2 -2
  118. package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
  119. package/src/sap/ui/mdc/field/content/SearchContent.js +1 -1
  120. package/src/sap/ui/mdc/field/content/TimeContent.js +9 -2
  121. package/src/sap/ui/mdc/field/content/UnitContent.js +24 -5
  122. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +26 -18
  123. package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
  124. package/src/sap/ui/mdc/filterbar/IFilterContainer.js +1 -1
  125. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +2 -2
  126. package/src/sap/ui/mdc/filterbar/aligned/FilterContainer.js +1 -1
  127. package/src/sap/ui/mdc/filterbar/aligned/FilterItemLayout.js +1 -1
  128. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +2 -2
  129. package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +1 -1
  130. package/src/sap/ui/mdc/filterbar/p13n/FilterGroupLayout.js +1 -1
  131. package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +1 -1
  132. package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +1 -1
  133. package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +1 -1
  134. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +2 -2
  135. package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +1 -1
  136. package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +1 -1
  137. package/src/sap/ui/mdc/flexibility/ActionToolbar.flexibility.js +1 -1
  138. package/src/sap/ui/mdc/flexibility/ActionToolbarAction.flexibility.js +1 -1
  139. package/src/sap/ui/mdc/flexibility/AggregateFlex.js +1 -1
  140. package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +1 -1
  141. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +2 -2
  142. package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +1 -1
  143. package/src/sap/ui/mdc/flexibility/ColumnFlex.js +1 -1
  144. package/src/sap/ui/mdc/flexibility/ConditionFlex.js +1 -1
  145. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +2 -2
  146. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +2 -2
  147. package/src/sap/ui/mdc/flexibility/GroupFlex.js +1 -1
  148. package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +1 -1
  149. package/src/sap/ui/mdc/flexibility/Panel.flexibility.js +1 -1
  150. package/src/sap/ui/mdc/flexibility/PanelItem.flexibility.js +1 -1
  151. package/src/sap/ui/mdc/flexibility/SortFlex.js +1 -1
  152. package/src/sap/ui/mdc/flexibility/Table.flexibility.js +1 -1
  153. package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +1 -1
  154. package/src/sap/ui/mdc/library.js +20 -4
  155. package/src/sap/ui/mdc/link/ContactDetails.js +2 -2
  156. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +2 -2
  157. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +2 -2
  158. package/src/sap/ui/mdc/link/ContactDetailsItem.js +2 -2
  159. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +2 -2
  160. package/src/sap/ui/mdc/link/Factory.js +2 -2
  161. package/src/sap/ui/mdc/link/FakeFlpConnector.js +2 -2
  162. package/src/sap/ui/mdc/link/LinkItem.js +2 -2
  163. package/src/sap/ui/mdc/link/Log.js +1 -1
  164. package/src/sap/ui/mdc/link/Panel.js +2 -2
  165. package/src/sap/ui/mdc/link/PanelItem.js +2 -2
  166. package/src/sap/ui/mdc/link/PanelListItem.js +2 -2
  167. package/src/sap/ui/mdc/link/SelectionDialog.js +2 -2
  168. package/src/sap/ui/mdc/link/SelectionDialogItem.js +2 -2
  169. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +2 -2
  170. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +2 -2
  171. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +2 -2
  172. package/src/sap/ui/mdc/messagebundle.properties +13 -4
  173. package/src/sap/ui/mdc/messagebundle_ar.properties +16 -2
  174. package/src/sap/ui/mdc/messagebundle_bg.properties +16 -2
  175. package/src/sap/ui/mdc/messagebundle_ca.properties +16 -2
  176. package/src/sap/ui/mdc/messagebundle_cs.properties +27 -13
  177. package/src/sap/ui/mdc/messagebundle_cy.properties +16 -2
  178. package/src/sap/ui/mdc/messagebundle_da.properties +16 -2
  179. package/src/sap/ui/mdc/messagebundle_de.properties +16 -2
  180. package/src/sap/ui/mdc/messagebundle_el.properties +16 -2
  181. package/src/sap/ui/mdc/messagebundle_en.properties +14 -0
  182. package/src/sap/ui/mdc/messagebundle_en_GB.properties +14 -0
  183. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +14 -0
  184. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +3 -19
  185. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +14 -0
  186. package/src/sap/ui/mdc/messagebundle_es.properties +17 -3
  187. package/src/sap/ui/mdc/messagebundle_es_MX.properties +16 -2
  188. package/src/sap/ui/mdc/messagebundle_et.properties +16 -2
  189. package/src/sap/ui/mdc/messagebundle_fi.properties +16 -2
  190. package/src/sap/ui/mdc/messagebundle_fr.properties +22 -8
  191. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +15 -1
  192. package/src/sap/ui/mdc/messagebundle_hi.properties +17 -3
  193. package/src/sap/ui/mdc/messagebundle_hr.properties +16 -2
  194. package/src/sap/ui/mdc/messagebundle_hu.properties +16 -2
  195. package/src/sap/ui/mdc/messagebundle_id.properties +16 -2
  196. package/src/sap/ui/mdc/messagebundle_it.properties +16 -2
  197. package/src/sap/ui/mdc/messagebundle_iw.properties +16 -2
  198. package/src/sap/ui/mdc/messagebundle_ja.properties +24 -10
  199. package/src/sap/ui/mdc/messagebundle_kk.properties +16 -2
  200. package/src/sap/ui/mdc/messagebundle_ko.properties +16 -2
  201. package/src/sap/ui/mdc/messagebundle_lt.properties +16 -2
  202. package/src/sap/ui/mdc/messagebundle_lv.properties +16 -2
  203. package/src/sap/ui/mdc/messagebundle_ms.properties +16 -2
  204. package/src/sap/ui/mdc/messagebundle_nl.properties +16 -2
  205. package/src/sap/ui/mdc/messagebundle_no.properties +16 -2
  206. package/src/sap/ui/mdc/messagebundle_pl.properties +16 -2
  207. package/src/sap/ui/mdc/messagebundle_pt.properties +16 -2
  208. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +16 -2
  209. package/src/sap/ui/mdc/messagebundle_ro.properties +16 -2
  210. package/src/sap/ui/mdc/messagebundle_ru.properties +16 -2
  211. package/src/sap/ui/mdc/messagebundle_sh.properties +16 -2
  212. package/src/sap/ui/mdc/messagebundle_sk.properties +16 -2
  213. package/src/sap/ui/mdc/messagebundle_sl.properties +16 -2
  214. package/src/sap/ui/mdc/messagebundle_sv.properties +16 -2
  215. package/src/sap/ui/mdc/messagebundle_th.properties +16 -2
  216. package/src/sap/ui/mdc/messagebundle_tr.properties +16 -2
  217. package/src/sap/ui/mdc/messagebundle_uk.properties +16 -2
  218. package/src/sap/ui/mdc/messagebundle_vi.properties +16 -2
  219. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +18 -4
  220. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +17 -3
  221. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +2 -2
  222. package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -2
  223. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +4 -4
  224. package/src/sap/ui/mdc/mixin/PromiseMixin.js +2 -2
  225. package/src/sap/ui/mdc/odata/TypeUtil.js +1 -1
  226. package/src/sap/ui/mdc/odata/json/FilterBarDelegate.js +1 -1
  227. package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +1 -1
  228. package/src/sap/ui/mdc/odata/v4/ChartDelegateNew.js +1 -1
  229. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +2 -2
  230. package/src/sap/ui/mdc/odata/v4/FieldBaseDelegate.js +1 -1
  231. package/src/sap/ui/mdc/odata/v4/FieldValueHelpDelegate.js +1 -1
  232. package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +1 -1
  233. package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +1 -1
  234. package/src/sap/ui/mdc/odata/v4/TableDelegate.js +66 -38
  235. package/src/sap/ui/mdc/odata/v4/TypeUtil.js +1 -1
  236. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +2 -2
  237. package/src/sap/ui/mdc/odata/v4/util/DelegateUtil.js +1 -1
  238. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegateNew.js +13 -4
  239. package/src/sap/ui/mdc/p13n/AdaptationProvider.js +1 -1
  240. package/src/sap/ui/mdc/p13n/Engine.js +33 -10
  241. package/src/sap/ui/mdc/p13n/FlexUtil.js +1 -1
  242. package/src/sap/ui/mdc/p13n/P13nBuilder.js +2 -2
  243. package/src/sap/ui/mdc/p13n/PersistenceProvider.js +22 -11
  244. package/src/sap/ui/mdc/p13n/PropertyHelper.js +2 -2
  245. package/src/sap/ui/mdc/p13n/StateUtil.js +21 -1
  246. package/src/sap/ui/mdc/p13n/UIManager.js +12 -7
  247. package/src/sap/ui/mdc/p13n/modification/FlexModificationHandler.js +1 -1
  248. package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +1 -1
  249. package/src/sap/ui/mdc/p13n/{DefaultProviderRegistry.js → modules/DefaultProviderRegistry.js} +3 -3
  250. package/src/sap/ui/mdc/p13n/modules/StateHandlerRegistry.js +86 -0
  251. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +1 -1
  252. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +20 -4
  253. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +1 -1
  254. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1 -1
  255. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +41 -33
  256. package/src/sap/ui/mdc/p13n/panels/GroupView.js +1 -1
  257. package/src/sap/ui/mdc/p13n/panels/ListView.js +1 -1
  258. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +1 -1
  259. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +1 -1
  260. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +1 -1
  261. package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +1 -1
  262. package/src/sap/ui/mdc/p13n/subcontroller/AggregateController.js +2 -2
  263. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +2 -2
  264. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +1 -1
  265. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +1 -1
  266. package/src/sap/ui/mdc/p13n/subcontroller/ColumnWidthController.js +1 -1
  267. package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +1 -1
  268. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +1 -1
  269. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +1 -1
  270. package/src/sap/ui/mdc/table/Column.js +35 -10
  271. package/src/sap/ui/mdc/table/CreationRow.js +15 -14
  272. package/src/sap/ui/mdc/table/GridTableType.js +12 -11
  273. package/src/sap/ui/mdc/table/PropertyHelper.js +22 -22
  274. package/src/sap/ui/mdc/table/ResponsiveTableType.js +24 -25
  275. package/src/sap/ui/mdc/table/RowSettings.js +9 -7
  276. package/src/sap/ui/mdc/table/TableSettings.js +1 -1
  277. package/src/sap/ui/mdc/table/TableTypeBase.js +5 -5
  278. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +16 -72
  279. package/src/sap/ui/mdc/themes/base/Chart.less +3 -0
  280. package/src/sap/ui/mdc/themes/base/library.source.less +2 -1
  281. package/src/sap/ui/mdc/ui/Container.js +3 -3
  282. package/src/sap/ui/mdc/ui/ContainerItem.js +3 -3
  283. package/src/sap/ui/mdc/util/Common.js +1 -1
  284. package/src/sap/ui/mdc/util/DateUtil.js +1 -1
  285. package/src/sap/ui/mdc/util/FilterUtil.js +1 -1
  286. package/src/sap/ui/mdc/util/FormatUtil.js +1 -1
  287. package/src/sap/ui/mdc/util/IdentifierUtil.js +1 -1
  288. package/src/sap/ui/mdc/util/PromiseCache.js +2 -2
  289. package/src/sap/ui/mdc/util/PropertyHelper.js +112 -320
  290. package/src/sap/ui/mdc/util/TypeUtil.js +1 -1
  291. package/src/sap/ui/mdc/util/loadModules.js +1 -1
  292. package/src/sap/ui/mdc/valuehelp/Dialog.js +3 -2
  293. package/src/sap/ui/mdc/valuehelp/Popover.js +14 -3
  294. package/src/sap/ui/mdc/valuehelp/base/Container.js +33 -2
  295. package/src/sap/ui/mdc/valuehelp/base/Content.js +36 -6
  296. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -2
  297. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +43 -16
  298. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +2 -2
  299. package/src/sap/ui/mdc/valuehelp/content/Bool.js +2 -2
  300. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +26 -32
  301. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +2 -2
  302. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +9 -4
  303. package/src/sap/ui/mdc/valuehelp/content/MTable.js +16 -4
  304. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +102 -96
  305. package/src/sap/ui/mdc/p13n/panels/GroupPanel.js +0 -111
  306. package/src/sap/ui/mdc/p13n/panels/QueryPanel.js +0 -322
  307. package/src/sap/ui/mdc/p13n/panels/SortQueryPanel.js +0 -133
  308. package/src/sap/ui/mdc/p13n/panels/Wrapper.js +0 -203
@@ -0,0 +1,23 @@
1
+ /*
2
+ * ! OpenUI5
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+ sap.ui.define([
7
+ ], function () {
8
+ "use strict";
9
+
10
+ return {
11
+ properties: {
12
+ delegate: {
13
+ ignore: true
14
+ }
15
+ },
16
+ aggregations: {
17
+ items: {
18
+ ignore: true
19
+ }
20
+ }
21
+
22
+ };
23
+ });
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([], function() {
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define(function () {
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @param {object} [mSettings] Initial settings for the new control
36
36
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls that shows a list for Boolean values.
37
37
  * @extends sap.ui.mdc.field.FieldHelpBase
38
- * @version 1.96.1
38
+ * @version 1.97.1
39
39
  * @constructor
40
40
  * @private
41
41
  * @ui5-restricted sap.ui.mdc.field.FieldBase
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @param {object} [mSettings] Initial settings for the new control
36
36
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls to show a popover of conditions.
37
37
  * @extends sap.ui.mdc.field.FieldHelpBase
38
- * @version 1.96.1
38
+ * @version 1.97.1
39
39
  * @constructor
40
40
  * @private
41
41
  * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -46,7 +46,7 @@ sap.ui.define([
46
46
  * @extends sap.ui.model.SimpleType
47
47
  *
48
48
  * @author SAP SE
49
- * @version 1.96.1
49
+ * @version 1.97.1
50
50
  *
51
51
  * @since 1.62.0
52
52
  * @private
@@ -56,19 +56,19 @@ sap.ui.define([
56
56
  * @param {object} [oFormatOptions] Formatting options
57
57
  * @param {sap.ui.model.Type} [oFormatOptions.valueType] Type of the value of the condition (used for formatting and parsing)
58
58
  * @param {string[]} [oFormatOptions.operators] Possible operators to be used in the condition
59
- * @param {sap.ui.mdc.enum.FieldDisplay} [oFormatOptions.display] DisplayFormat used to visualize value
60
- * @param {string} [oFormatOptions.fieldHelpID] ID of the field help, to determine key and description // TODO: async request????
59
+ * @param {sap.ui.mdc.enum.FieldDisplay} [oFormatOptions.display] DisplayFormat used to visualize a value
60
+ * @param {string} [oFormatOptions.fieldHelpID] ID of the field help to determine the key and description // TODO: async request????
61
61
  * @param {boolean} [oFormatOptions.hideOperator] If set, only the value of the condition is shown, but no operator //TODO
62
62
  * @param {int} [oFormatOptions.maxConditions] Maximum number of allowed conditions
63
- * @param {sap.ui.model.Context} [oFormatOptions.bindingContext] BindingContext of field. Used to get key or description from the value help using in/out parameters. (In table, the value help might be connected to different row)
64
- * @param {sap.ui.model.Type} [oFormatOptions.originalDateType] Type used on field. E.g. for date types internally a different type is used internally to have different <code>formatOptions</code>
63
+ * @param {sap.ui.model.Context} [oFormatOptions.bindingContext] <code>BindingContext</code> of field. Used to get a key or description from the value help using in/out parameters. (In a table, the value help might be connected to a different row)
64
+ * @param {sap.ui.model.Type} [oFormatOptions.originalDateType] Type used on field, for example, for date types; a different type is used internally to have different <code>formatOptions</code>
65
65
  * @param {sap.ui.model.Type} [oFormatOptions.additionalType] additional Type used on other part of a field. (This is the case for unit fields.)
66
66
  * @param {function} [oFormatOptions.getConditions] Function to get the existing conditions of the field. Only used if <code>isUnit</code> is set. // TODO: better solution
67
67
  * @param {function} [oFormatOptions.asyncParsing] Callback function to tell the <code>Field</code> the parsing is asynchronous.
68
- * @param {object} [oFormatOptions.navigateCondition] Condition of keyboard navigation. If this is filled, no real parsing is needed as the condition has already been determined. Just return it
68
+ * @param {object} [oFormatOptions.navigateCondition] Condition of keyboard navigation. If this is filled, no real parsing is needed as the condition has already been determined and is just returned
69
69
  * @param {object} [oFormatOptions.delegate] Field delegate to handle model-specific logic
70
70
  * @param {object} [oFormatOptions.payload] Payload of the delegate
71
- * @param {boolean} [oFormatOptions.preventGetDescription] If set, description is not read by <code>formatValue</code> as it is known that no description exist or it might be set later
71
+ * @param {boolean} [oFormatOptions.preventGetDescription] If set, description is not read by <code>formatValue</code> as it is known that no description exists or might be set later
72
72
  * @param {sap.ui.mdc.condition.ConditionModel} [oFormatOptions.conditionModel] <code>ConditionModel</code>, if bound to one
73
73
  * @param {string} [oFormatOptions.conditionModelName] Name of the <code>ConditionModel</code>, if bound to one
74
74
  * @param {string} [oFormatOptions.defaultOperatorName] Name of the default <code>Operator</code>
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @extends sap.ui.model.SimpleType
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.96.1
39
+ * @version 1.97.1
40
40
  *
41
41
  * @since 1.62.0
42
42
  * @private
@@ -46,19 +46,19 @@ sap.ui.define([
46
46
  * @param {object} [oFormatOptions] Formatting options
47
47
  * @param {sap.ui.model.Type} [oFormatOptions.valueType] Type of the value of the condition (used for formatting and parsing)
48
48
  * @param {string[]} [oFormatOptions.operators] Possible operators to be used in the condition
49
- * @param {sap.ui.mdc.enum.FieldDisplay} [oFormatOptions.display] DisplayFormat used to visualize value
50
- * @param {string} [oFormatOptions.fieldHelpID] ID of the field help, to determine key and description // TODO: async request????
49
+ * @param {sap.ui.mdc.enum.FieldDisplay} [oFormatOptions.display] DisplayFormat used to visualize a value
50
+ * @param {string} [oFormatOptions.fieldHelpID] ID of the field help to determine the key and description // TODO: async request????
51
51
  * @param {boolean} [oFormatOptions.hideOperator] If set, only the value of the condition is shown, but no operator //TODO
52
52
  * @param {int} [oFormatOptions.maxConditions] Maximum number of allowed conditions
53
- * @param {sap.ui.model.Context} [oFormatOptions.bindingContext] BindingContext of field. Used to get key or description from the value help using in/out parameters. (In table, the value help might be connected to different row)
54
- * @param {sap.ui.model.Type} [oFormatOptions.originalDateType] Type used on field. E.g. for date types internally a different type is used internally to have different <code>formatOptions</code>
53
+ * @param {sap.ui.model.Context} [oFormatOptions.bindingContext] <code>BindingContext</code> of field. Used to get a key or description from the value help using in/out parameters. (In a table, the value help might be connected to a different row)
54
+ * @param {sap.ui.model.Type} [oFormatOptions.originalDateType] Type used on field, for example, for date types; a different type is used internally to have different <code>formatOptions</code>
55
55
  * @param {sap.ui.model.Type} [oFormatOptions.additionalType] additional Type used on other part of a field. (This is the case for unit fields.)
56
56
  * @param {function} [oFormatOptions.getConditions] Function to get the existing conditions of the field. Only used if <code>isUnit</code> is set. TODO: better solution
57
57
  * @param {function} [oFormatOptions.asyncParsing] Callback function to tell the <code>Field</code> the parsing is asynchronous.
58
- * @param {object} [oFormatOptions.navigateCondition] Condition of keyboard navigation. If this is filled, no real parsing is needed as the condition has already been determined. Just return it
58
+ * @param {object} [oFormatOptions.navigateCondition] Condition of keyboard navigation. If this is filled, no real parsing is needed as the condition has already been determined and is just returned
59
59
  * @param {object} [oFormatOptions.delegate] Field delegate to handle model-specific logic
60
60
  * @param {object} [oFormatOptions.payload] Payload of the delegate
61
- * @param {boolean} [oFormatOptions.preventGetDescription] If set, description is not read by <code>formatValue</code> as it is known that no description exist or it might be set later
61
+ * @param {boolean} [oFormatOptions.preventGetDescription] If set, description is not read by <code>formatValue</code> as it is known that no description exists or might be set later
62
62
  * @param {sap.ui.mdc.condition.ConditionModel} [oFormatOptions.conditionModel] <code>ConditionModel</code>, if bound to one
63
63
  * @param {string} [oFormatOptions.conditionModelName] Name of the <code>ConditionModel</code>, if bound to one
64
64
  * @param {string} [oFormatOptions.defaultOperatorName] Name of the default <code>Operator</code>
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @param {object} [mSettings] Initial settings for the new control
17
17
  * @class A field help used in the <code>FieldHelp</code> association in <code>FieldBase</code> controls that allows you to add custom content.
18
18
  * @extends sap.ui.mdc.field.FieldHelpBase
19
- * @version 1.96.1
19
+ * @version 1.97.1
20
20
  * @constructor
21
21
  * @private
22
22
  * @ui5-restricted sap.fe
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @param {object} [mSettings] Initial settings for the new control
17
17
  * @class A field help used in the <code>FieldInfo</code> aggregation in <code>FieldBase</code> controls that allows you to add custom content.
18
18
  * @extends sap.ui.mdc.field.FieldInfoBase
19
- * @version 1.96.1
19
+ * @version 1.97.1
20
20
  * @constructor
21
21
  * @private
22
22
  * @ui5-restricted sap.fe
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2021 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([
@@ -88,7 +88,7 @@ sap.ui.define([
88
88
  * @extends sap.ui.core.Control
89
89
  *
90
90
  * @author SAP SE
91
- * @version 1.96.1
91
+ * @version 1.97.1
92
92
  *
93
93
  * @constructor
94
94
  * @alias sap.ui.mdc.field.DefineConditionPanel
@@ -0,0 +1,311 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+
7
+ // Provides the base implementation for all model implementations
8
+ sap.ui.define([
9
+ 'sap/ui/mdc/field/ConditionsType',
10
+ 'sap/ui/mdc/condition/FilterOperatorUtil',
11
+ 'sap/ui/mdc/condition/Operator',
12
+ 'sap/ui/mdc/condition/Condition',
13
+ 'sap/ui/mdc/enum/ConditionValidated',
14
+ 'sap/ui/mdc/enum/BaseType',
15
+ "sap/ui/mdc/util/DateUtil",
16
+ 'sap/ui/model/SimpleType',
17
+ 'sap/ui/model/FormatException',
18
+ 'sap/ui/model/ParseException',
19
+ 'sap/ui/model/ValidateException',
20
+ 'sap/m/DynamicDate',
21
+ 'sap/m/library'
22
+ ],
23
+ function(
24
+ ConditionsType,
25
+ FilterOperatorUtil,
26
+ Operator,
27
+ Condition,
28
+ ConditionValidated,
29
+ BaseType,
30
+ DateUtil,
31
+ SimpleType,
32
+ FormatException,
33
+ ParseException,
34
+ ValidateException,
35
+ DynamicDateType,
36
+ mLibrary
37
+ ) {
38
+ "use strict";
39
+
40
+ /**
41
+ * Constructor for a <code>ConditionsType</code> to be used in <code>DynamicDateRange</code> control.
42
+ *
43
+ * @class
44
+ * This class represents a type to map an array of conditions used in a {@link sap.ui.mdc.FilterField FilterField} control to a value of a {@link sap.m.DynamicDateRange DynamicDateRange} control.
45
+ *
46
+ * @extends sap.ui.mdc.field.ConditionsType
47
+ *
48
+ * @author SAP SE
49
+ * @version 1.97.1
50
+ *
51
+ * @since 1.96.0
52
+ * @private
53
+ * @ui5-restricted sap.ui.mdc.field.FieldBase, sap.fe
54
+ * @MDC_PUBLIC_CANDIDATE
55
+ *
56
+ * @param {object} [oFormatOptions] Formatting options
57
+ * @param {sap.ui.model.Type} [oFormatOptions.valueType] Type of the value of the condition (used for formatting and parsing)
58
+ * @param {string[]} [oFormatOptions.operators] Possible operators to be used in the condition
59
+ * @param {sap.ui.mdc.enum.FieldDisplay} [oFormatOptions.display] DisplayFormat used to visualize a value
60
+ * @param {string} [oFormatOptions.fieldHelpID] ID of the field help to determine the key and description // TODO: async request????
61
+ * @param {boolean} [oFormatOptions.hideOperator] If set, only the value of the condition is shown, but no operator //TODO
62
+ * @param {int} [oFormatOptions.maxConditions] Maximum number of allowed conditions
63
+ * @param {sap.ui.model.Context} [oFormatOptions.bindingContext] <code>BindingContext</code> of field. Used to get a key or description from the value help using in/out parameters. (In a table, the value help might be connected to a different row)
64
+ * @param {sap.ui.model.Type} [oFormatOptions.originalDateType] Type used on field, for example, for date types; a different type is used internally to have different <code>formatOptions</code>
65
+ * @param {boolean} [oFormatOptions.isUnit] If set, the type is used for the unit part of a field
66
+ * @param {function} [oFormatOptions.getConditions] Function to get the existing conditions of the field. Only used if <code>isUnit</code> is set. TODO: better solution
67
+ * @param {function} [oFormatOptions.asyncParsing] Callback function to tell the <code>Field</code> the parsing is asynchronous.
68
+ * @param {object} [oFormatOptions.navigateCondition] Condition of keyboard navigation. If this is filled, no real parsing is needed as the condition has already been determined and is just returned
69
+ * @param {object} [oFormatOptions.delegate] Field delegate to handle model-specific logic
70
+ * @param {object} [oFormatOptions.payload] Payload of the delegate
71
+ * @param {boolean} [oFormatOptions.preventGetDescription] If set, description is not read by <code>formatValue</code> as it is known that no description exists or might be set later
72
+ * @param {sap.ui.mdc.condition.ConditionModel} [oFormatOptions.conditionModel] <code>ConditionModel</code>, if bound to one
73
+ * @param {string} [oFormatOptions.conditionModelName] Name of the <code>ConditionModel</code>, if bound to one
74
+ * @param {string} [oFormatOptions.defaultOperatorName] Name of the default <code>Operator</code>
75
+ * @param {object} [oConstraints] Value constraints
76
+ * @alias sap.ui.mdc.field.DynamicDateRangeConditionsType
77
+ */
78
+ var DynamicDateRangeConditionsType = ConditionsType.extend("sap.ui.mdc.field.DynamicDateRangeConditionsType", /** @lends sap.ui.mdc.field.DynamicDateRangeConditionsType.prototype */ {
79
+
80
+ constructor : function (oFormatOptions, oConstraints) {
81
+ SimpleType.apply(this, arguments);
82
+ this.sName = "ConditionsDateRange";
83
+ this._oResourceBundle = sap.ui.getCore().getLibraryResourceBundle("sap.ui.mdc");
84
+ //TODO: specialConditionDataRangeType if used for tokens in MultiValue FilterField
85
+ }
86
+
87
+ });
88
+
89
+ DynamicDateRangeConditionsType.prototype.destroy = function() {
90
+
91
+ SimpleType.prototype.destroy.apply(this, arguments);
92
+
93
+ this._bDestroyed = true;
94
+
95
+ };
96
+
97
+ DynamicDateRangeConditionsType.prototype.formatValue = function(aConditions, sInternalType) {
98
+
99
+ if (aConditions == undefined || aConditions == null || this._bDestroyed) { // if destroyed do nothing
100
+ return null;
101
+ }
102
+
103
+ if (!Array.isArray(aConditions)) {
104
+ throw new FormatException("No valid conditions provided");
105
+ }
106
+
107
+ var iMaxConditions = _getMaxConditions.call(this);
108
+ var vResult;
109
+
110
+ if (iMaxConditions !== 1) {
111
+ throw new FormatException("MaxConditions must be 1");
112
+ }
113
+
114
+ if (aConditions.length === 1) {
115
+ var oCondition = aConditions[0];
116
+
117
+ var oOperator = FilterOperatorUtil.getOperator(oCondition.operator);
118
+ if (!oCondition.operator || !oOperator) {
119
+ throw new FormatException("No valid condition provided, Operator wrong.");
120
+ }
121
+
122
+ var aValues = [];
123
+ var sOption = oOperator.name;
124
+ if (mLibrary.StandardDynamicDateRangeKeys.indexOf(sOption) === -1) {
125
+ sOption = oOperator.alias || sOption;
126
+ }
127
+
128
+ for (var i = 0; i < oOperator.valueTypes.length; i++) {
129
+ if (mLibrary.StandardDynamicDateRangeKeys.indexOf(sOption) >= 0 && oOperator.valueTypes[i] === Operator.ValueType.Self) { // only for standard operators
130
+ aValues.push(_dateToTimestamp.call(this, oCondition.values[i]));
131
+ } else if (oOperator.valueTypes[i] && oOperator.valueTypes[i] !== Operator.ValueType.Static) {
132
+ aValues.push(oCondition.values[i]);
133
+ }
134
+ }
135
+
136
+ var oDynamicDateType = _getDynamicDateType.call(this, oOperator);
137
+ vResult = oDynamicDateType.formatValue({operator: sOption, values: aValues}, sInternalType);
138
+ }
139
+
140
+ return vResult;
141
+
142
+ };
143
+
144
+ function _getDynamicDateType(oOperator) {
145
+
146
+ if (!this._oDynamicDateType) {
147
+ var oDynamicDateFormatOptions = {
148
+ date: {
149
+ source: {pattern: "timestamp"}
150
+ },
151
+ "int": {}
152
+ };
153
+
154
+ this._oDynamicDateType = new DynamicDateType(oDynamicDateFormatOptions);
155
+ }
156
+
157
+ return this._oDynamicDateType;
158
+ }
159
+
160
+ function _dateToTimestamp(vValue) {
161
+
162
+ var oType = _getInternalType.call(this);
163
+ var sDate = oType.formatValue(vValue, "string");
164
+ var aDate = sDate.split("-");
165
+ var iYear = parseInt(aDate[0]);
166
+ var iMonth = parseInt(aDate[1]) - 1;
167
+ var iDate = parseInt(aDate[2]);
168
+ var iTimeStamp = new Date(iYear, iMonth, iDate).getTime();
169
+
170
+ return iTimeStamp;
171
+
172
+ }
173
+
174
+ function _timestampToDate(iTimeStamp) {
175
+
176
+ var oType = _getInternalType.call(this);
177
+ var oDate = new Date(iTimeStamp);
178
+ var iYear = oDate.getFullYear();
179
+ var iMonth = oDate.getMonth() + 1;
180
+ var iDate = oDate.getDate();
181
+ var sDate = iYear.toString() + "-" + ((iMonth < 10) ? "0" : "") + iMonth.toString() + "-" + ((iDate < 10) ? "0" : "") + iDate.toString();
182
+ var vDate = oType.parseValue(sDate, "string");
183
+
184
+ return vDate;
185
+
186
+ }
187
+
188
+ function _getInternalType() {
189
+
190
+ if (!this._oInternalType) {
191
+ var oType = _getValueType.call(this);
192
+ this._oInternalType = DateUtil.createInternalType(oType, "yyyy-MM-dd");
193
+ }
194
+
195
+ return this._oInternalType;
196
+
197
+ }
198
+
199
+ DynamicDateRangeConditionsType.prototype.parseValue = function(oValue, sInternalType) {
200
+
201
+ if (this._bDestroyed) { // if destroyed do nothing
202
+ return null;
203
+ }
204
+
205
+ if (_getMaxConditions.call(this) !== 1) {
206
+ throw new ParseException("Only one condition supported for parsing");
207
+ }
208
+
209
+ var aOperators = _getOperators.call(this);
210
+ var aConditions = [];
211
+ if (oValue && oValue.operator) {
212
+ if (oValue.operator === "PARSEERROR") {
213
+ throw new ParseException(oValue.values[0]);
214
+ }
215
+
216
+ var sOperator = oValue.operator; // sOperator is the Option name
217
+ var oOperator = FilterOperatorUtil.getOperator(sOperator); // getOperator will search via name and alias
218
+ sOperator = oOperator.name; // map it back to the real Operator name
219
+
220
+ if (oOperator) {
221
+ var oDynamicDateType = _getDynamicDateType.call(this, oOperator);
222
+ var vResult = oDynamicDateType.parseValue(oValue, sInternalType);
223
+ var aValues = [];
224
+
225
+ for (var i = 0; i < oOperator.valueTypes.length; i++) {
226
+ if (mLibrary.StandardDynamicDateRangeKeys.indexOf(oValue.operator) >= 0 && oOperator.valueTypes[i] === Operator.ValueType.Self) { // only for standard operators
227
+ aValues.push(_timestampToDate.call(this, vResult.values[i]));
228
+ } else if (oOperator.valueTypes[i] && oOperator.valueTypes[i] !== Operator.ValueType.Static) {
229
+ aValues.push(vResult.values[i]);
230
+ }
231
+ }
232
+
233
+ var oCondition = Condition.createCondition(oOperator.name, aValues, undefined, undefined, ConditionValidated.NotValidated);
234
+ FilterOperatorUtil.updateConditionValues(oCondition);
235
+ FilterOperatorUtil.checkConditionsEmpty(oCondition, aOperators);
236
+ aConditions.push(oCondition);
237
+ }
238
+ }
239
+
240
+ return aConditions;
241
+
242
+ };
243
+
244
+ DynamicDateRangeConditionsType.prototype.validateValue = function(aConditions) {
245
+
246
+ if (aConditions === undefined || aConditions === null || this._bDestroyed) { // if destroyed do nothing
247
+ return;
248
+ }
249
+
250
+ if (!Array.isArray(aConditions)) {
251
+ throw new ValidateException("No valid conditions provided");
252
+ }
253
+
254
+ var oType = _getValueType.call(this);
255
+ var aOperators = _getOperators.call(this);
256
+
257
+ for (var i = 0; i < aConditions.length; i++) {
258
+ var oCondition = aConditions[i];
259
+ if (typeof oCondition !== "object" || !oCondition.operator || !oCondition.values ||
260
+ !Array.isArray(oCondition.values)) {
261
+ throw new ValidateException(this._oResourceBundle.getText("field.VALUE_NOT_VALID"));
262
+ }
263
+
264
+ var oOperator = FilterOperatorUtil.getOperator(oCondition.operator, aOperators);
265
+
266
+ if (!oOperator) {
267
+ throw new ValidateException("No valid condition provided, Operator wrong.");
268
+ }
269
+
270
+ oOperator.validate(oCondition.values, oType);
271
+ }
272
+
273
+ };
274
+
275
+ function _getMaxConditions() {
276
+
277
+ var iMaxConditions = 1;
278
+
279
+ if (this.oFormatOptions.hasOwnProperty("maxConditions")) {
280
+ iMaxConditions = this.oFormatOptions.maxConditions;
281
+ }
282
+
283
+ return iMaxConditions;
284
+
285
+ }
286
+
287
+ function _getValueType() {
288
+
289
+ var oType = this.oFormatOptions.valueType;
290
+ if (!oType) {
291
+ throw new Error("Type missing");
292
+ }
293
+
294
+ return oType;
295
+
296
+ }
297
+
298
+ function _getOperators() {
299
+
300
+ var aOperators = this.oFormatOptions.operators;
301
+ if (!aOperators || aOperators.length === 0) {
302
+ aOperators = FilterOperatorUtil.getOperatorsForType(BaseType.Date); // TODO: check for type
303
+ }
304
+
305
+ return aOperators;
306
+
307
+ }
308
+
309
+ return DynamicDateRangeConditionsType;
310
+
311
+ });