@openui5/sap.ui.mdc 1.95.0 → 1.96.3

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 (213) hide show
  1. package/.reuse/dep5 +10 -5
  2. package/THIRDPARTY.txt +17 -8
  3. package/package.json +4 -4
  4. package/src/sap/ui/mdc/.library +1 -1
  5. package/src/sap/ui/mdc/ActionToolbar.js +236 -334
  6. package/src/sap/ui/mdc/Chart.js +140 -20
  7. package/src/sap/ui/mdc/ChartDelegateNew.js +15 -0
  8. package/src/sap/ui/mdc/ChartNew.js +83 -56
  9. package/src/sap/ui/mdc/Control.js +4 -3
  10. package/src/sap/ui/mdc/Element.js +4 -3
  11. package/src/sap/ui/mdc/Field.js +2 -2
  12. package/src/sap/ui/mdc/FilterBar.js +1 -10
  13. package/src/sap/ui/mdc/FilterField.js +2 -2
  14. package/src/sap/ui/mdc/Link.js +2 -2
  15. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  16. package/src/sap/ui/mdc/Table.js +81 -25
  17. package/src/sap/ui/mdc/ValueHelp.js +29 -14
  18. package/src/sap/ui/mdc/ValueHelpDelegate.js +110 -4
  19. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +49 -104
  20. package/src/sap/ui/mdc/chart/DimensionItem.js +3 -3
  21. package/src/sap/ui/mdc/chart/Item.js +2 -3
  22. package/src/sap/ui/mdc/chart/MeasureItem.js +2 -2
  23. package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +21 -2
  24. package/src/sap/ui/mdc/chart/ToolbarHandler.js +5 -3
  25. package/src/sap/ui/mdc/chartNew/ChartSelectionDetailsNew.js +1 -1
  26. package/src/sap/ui/mdc/chartNew/ChartToolbarNew.js +14 -10
  27. package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +11 -9
  28. package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -1
  29. package/src/sap/ui/mdc/chartNew/PropertyHelperNew.js +1 -1
  30. package/src/sap/ui/mdc/condition/Condition.js +2 -2
  31. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  32. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  33. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  34. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +1 -1
  35. package/src/sap/ui/mdc/condition/Operator.js +1 -1
  36. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  37. package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +43 -0
  38. package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +91 -0
  39. package/src/sap/ui/mdc/designtime/filterbar/FilterBar.designtime.js +19 -0
  40. package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +31 -0
  41. package/src/sap/ui/mdc/designtime/table/Table.designtime.js +5 -0
  42. package/src/sap/ui/mdc/enum/ContentMode.js +25 -4
  43. package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
  44. package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
  45. package/src/sap/ui/mdc/field/ConditionType.js +1 -1
  46. package/src/sap/ui/mdc/field/ConditionsType.js +5 -4
  47. package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
  48. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  49. package/src/sap/ui/mdc/field/DefineConditionPanel.js +1 -1
  50. package/src/sap/ui/mdc/field/FieldBase.js +16 -9
  51. package/src/sap/ui/mdc/field/FieldHelpBase.js +1 -1
  52. package/src/sap/ui/mdc/field/FieldInfoBase.js +9 -1
  53. package/src/sap/ui/mdc/field/FieldInput.js +1 -1
  54. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  55. package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
  56. package/src/sap/ui/mdc/field/FieldValueHelp.js +1 -1
  57. package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
  58. package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
  59. package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +1 -1
  60. package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +1 -1
  61. package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
  62. package/src/sap/ui/mdc/field/InParameter.js +1 -1
  63. package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
  64. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  65. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  66. package/src/sap/ui/mdc/field/OutParameter.js +1 -1
  67. package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
  68. package/src/sap/ui/mdc/field/content/BooleanContent.js +15 -3
  69. package/src/sap/ui/mdc/field/content/ContentFactory.js +16 -8
  70. package/src/sap/ui/mdc/field/content/DefaultContent.js +64 -23
  71. package/src/sap/ui/mdc/field/content/LinkContent.js +6 -0
  72. package/src/sap/ui/mdc/field/content/SearchContent.js +21 -3
  73. package/src/sap/ui/mdc/field/content/UnitContent.js +2 -2
  74. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +5 -2
  75. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  76. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  77. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  78. package/src/sap/ui/mdc/flexibility/ActionToolbar.flexibility.js +22 -0
  79. package/src/sap/ui/mdc/flexibility/ActionToolbarAction.flexibility.js +19 -0
  80. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  81. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  82. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  83. package/src/sap/ui/mdc/library.js +17 -7
  84. package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
  85. package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
  86. package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
  87. package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
  88. package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
  89. package/src/sap/ui/mdc/link/Factory.js +1 -1
  90. package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
  91. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  92. package/src/sap/ui/mdc/link/Panel.js +1 -1
  93. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  94. package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
  95. package/src/sap/ui/mdc/link/SelectionDialog.js +2 -2
  96. package/src/sap/ui/mdc/link/SelectionDialogItem.js +1 -1
  97. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  98. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  99. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  100. package/src/sap/ui/mdc/messagebundle.properties +22 -4
  101. package/src/sap/ui/mdc/messagebundle_ar.properties +10 -2
  102. package/src/sap/ui/mdc/messagebundle_bg.properties +10 -2
  103. package/src/sap/ui/mdc/messagebundle_ca.properties +10 -2
  104. package/src/sap/ui/mdc/messagebundle_cs.properties +21 -13
  105. package/src/sap/ui/mdc/messagebundle_cy.properties +10 -2
  106. package/src/sap/ui/mdc/messagebundle_da.properties +10 -2
  107. package/src/sap/ui/mdc/messagebundle_de.properties +10 -2
  108. package/src/sap/ui/mdc/messagebundle_el.properties +10 -2
  109. package/src/sap/ui/mdc/messagebundle_en.properties +8 -0
  110. package/src/sap/ui/mdc/messagebundle_en_GB.properties +8 -0
  111. package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +2 -0
  112. package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +19 -3
  113. package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +2 -0
  114. package/src/sap/ui/mdc/messagebundle_es.properties +10 -2
  115. package/src/sap/ui/mdc/messagebundle_es_MX.properties +10 -2
  116. package/src/sap/ui/mdc/messagebundle_et.properties +10 -2
  117. package/src/sap/ui/mdc/messagebundle_fi.properties +10 -2
  118. package/src/sap/ui/mdc/messagebundle_fr.properties +12 -4
  119. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +9 -1
  120. package/src/sap/ui/mdc/messagebundle_hi.properties +11 -3
  121. package/src/sap/ui/mdc/messagebundle_hr.properties +10 -2
  122. package/src/sap/ui/mdc/messagebundle_hu.properties +10 -2
  123. package/src/sap/ui/mdc/messagebundle_id.properties +10 -2
  124. package/src/sap/ui/mdc/messagebundle_it.properties +10 -2
  125. package/src/sap/ui/mdc/messagebundle_iw.properties +10 -2
  126. package/src/sap/ui/mdc/messagebundle_ja.properties +18 -10
  127. package/src/sap/ui/mdc/messagebundle_kk.properties +10 -2
  128. package/src/sap/ui/mdc/messagebundle_ko.properties +10 -2
  129. package/src/sap/ui/mdc/messagebundle_lt.properties +10 -2
  130. package/src/sap/ui/mdc/messagebundle_lv.properties +10 -2
  131. package/src/sap/ui/mdc/messagebundle_ms.properties +10 -2
  132. package/src/sap/ui/mdc/messagebundle_nl.properties +11 -3
  133. package/src/sap/ui/mdc/messagebundle_no.properties +10 -2
  134. package/src/sap/ui/mdc/messagebundle_pl.properties +10 -2
  135. package/src/sap/ui/mdc/messagebundle_pt.properties +11 -3
  136. package/src/sap/ui/mdc/messagebundle_pt_PT.properties +10 -2
  137. package/src/sap/ui/mdc/messagebundle_ro.properties +10 -2
  138. package/src/sap/ui/mdc/messagebundle_ru.properties +10 -2
  139. package/src/sap/ui/mdc/messagebundle_sh.properties +10 -2
  140. package/src/sap/ui/mdc/messagebundle_sk.properties +10 -2
  141. package/src/sap/ui/mdc/messagebundle_sl.properties +10 -2
  142. package/src/sap/ui/mdc/messagebundle_sv.properties +10 -2
  143. package/src/sap/ui/mdc/messagebundle_th.properties +10 -2
  144. package/src/sap/ui/mdc/messagebundle_tr.properties +10 -2
  145. package/src/sap/ui/mdc/messagebundle_uk.properties +10 -2
  146. package/src/sap/ui/mdc/messagebundle_vi.properties +10 -2
  147. package/src/sap/ui/mdc/messagebundle_zh_CN.properties +12 -4
  148. package/src/sap/ui/mdc/messagebundle_zh_TW.properties +11 -3
  149. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  150. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  151. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  152. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  153. package/src/sap/ui/mdc/odata/v4/ChartPropertyHelperNew.js +1 -1
  154. package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +2 -2
  155. package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegateNew.js +212 -32
  156. package/src/sap/ui/mdc/p13n/DefaultProviderRegistry.js +1 -1
  157. package/src/sap/ui/mdc/p13n/Engine.js +3 -2
  158. package/src/sap/ui/mdc/p13n/P13nBuilder.js +1 -1
  159. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  160. package/src/sap/ui/mdc/p13n/UIManager.js +1 -1
  161. package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +59 -0
  162. package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +1 -2
  163. package/src/sap/ui/mdc/p13n/panels/BasePanel.js +6 -6
  164. package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1 -2
  165. package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +1171 -0
  166. package/src/sap/ui/mdc/p13n/panels/GroupPanel.js +1 -1
  167. package/src/sap/ui/mdc/p13n/panels/GroupView.js +1 -2
  168. package/src/sap/ui/mdc/p13n/panels/ListView.js +5 -3
  169. package/src/sap/ui/mdc/p13n/panels/QueryPanel.js +1 -1
  170. package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -1
  171. package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -1
  172. package/src/sap/ui/mdc/p13n/panels/SortQueryPanel.js +1 -1
  173. package/src/sap/ui/mdc/p13n/panels/Wrapper.js +1 -1
  174. package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +89 -0
  175. package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +9 -6
  176. package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +33 -4
  177. package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +9 -15
  178. package/src/sap/ui/mdc/p13n/subcontroller/GroupController.js +5 -12
  179. package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +19 -21
  180. package/src/sap/ui/mdc/table/Column.js +14 -5
  181. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  182. package/src/sap/ui/mdc/table/GridTableType.js +0 -1
  183. package/src/sap/ui/mdc/table/PropertyHelper.js +17 -86
  184. package/src/sap/ui/mdc/table/ResponsiveTableType.js +12 -2
  185. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  186. package/src/sap/ui/mdc/table/TableTypeBase.js +0 -1
  187. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +1 -1
  188. package/src/sap/ui/mdc/ui/Container.js +2 -2
  189. package/src/sap/ui/mdc/ui/ContainerItem.js +2 -2
  190. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  191. package/src/sap/ui/mdc/util/PropertyHelper.js +1 -1
  192. package/src/sap/ui/mdc/valuehelp/Dialog.js +49 -26
  193. package/src/sap/ui/mdc/valuehelp/Popover.js +35 -19
  194. package/src/sap/ui/mdc/valuehelp/base/Container.js +221 -19
  195. package/src/sap/ui/mdc/valuehelp/base/Content.js +219 -33
  196. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +50 -7
  197. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +47 -27
  198. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +38 -10
  199. package/src/sap/ui/mdc/valuehelp/content/Bool.js +135 -49
  200. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +64 -38
  201. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +55 -27
  202. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +25 -6
  203. package/src/sap/ui/mdc/valuehelp/content/MTable.js +120 -85
  204. package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +2 -1
  205. package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +48 -0
  206. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsBase.js +310 -0
  207. package/test/sap/ui/mdc/testutils/opa/chartNew/ActionsViz.js +39 -0
  208. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsBase.js +118 -0
  209. package/test/sap/ui/mdc/testutils/opa/chartNew/AssertionsViz.js +137 -0
  210. package/test/sap/ui/mdc/testutils/opa/chartNew/ChartNew.js +24 -0
  211. package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +289 -0
  212. package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +163 -17
  213. package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +2 -0
@@ -32,12 +32,12 @@ sap.ui.define([
32
32
  * @param {object} [mSettings] Initial settings for the new control
33
33
  * @class Content for the <code>sap.ui.mdc.valuehelp.base.Container</code> element.
34
34
  * @extends sap.ui.core.Element
35
- * @version 1.95.0
35
+ * @version 1.96.3
36
36
  * @constructor
37
37
  * @abstract
38
38
  * @private
39
39
  * @ui5-restricted sap.ui.mdc
40
- * @since 1.91.0
40
+ * @since 1.95.0
41
41
  * @alias sap.ui.mdc.valuehelp.base.Content
42
42
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
43
43
  */
@@ -47,34 +47,50 @@ sap.ui.define([
47
47
  library: "sap.ui.mdc",
48
48
  properties: {
49
49
  /**
50
- * Title text that appears in the dialog or tab header.
51
- *
52
- * @since 1.60.0
50
+ * Title text that appears tab header.
53
51
  */
54
52
  title: {
55
53
  type: "string",
56
54
  group: "Appearance",
57
55
  defaultValue: ""
58
56
  },
59
- subTitle: {
57
+ /**
58
+ * Title text that appears in the dialog header.
59
+ */
60
+ shortTitle: {
60
61
  type: "string",
61
62
  group: "Appearance",
62
63
  defaultValue: ""
63
64
  },
64
- _conditions: { // TODO: only internal? make restricted?
65
+ /**
66
+ * Conditions of the value help
67
+ *
68
+ * <b>Note:</b> This property must not be set from outside, it is only to be used by the corresponding container
69
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
70
+ */
71
+ conditions: { // TODO: only internal? make restricted?
65
72
  type: "object[]",
66
73
  defaultValue: [],
67
74
  byValue: true
68
75
  },
69
- _filterValue: { // TODO: how to hide? Or how to access from ValueHelp?
76
+ /**
77
+ * Value for filtering ($search)
78
+ *
79
+ * <b>Note:</b> This property must not be set from outside, it is only to be used by the corresponding container
80
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
81
+ */
82
+ filterValue: { // TODO: how to hide? Or how to access from ValueHelp?
70
83
  type: "string",
71
84
  defaultValue: ""//,
72
85
  //visibility: "hidden"
73
86
  },
74
87
  /**
75
88
  * internal configuration
89
+ *
90
+ * <b>Note:</b> This property must not be set from outside, it is only to be used by the corresponding container
91
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
76
92
  */
77
- _config: {
93
+ config: {
78
94
  type: "object",
79
95
  defaultValue: {}//,
80
96
  // visibility: "hidden"
@@ -82,33 +98,77 @@ sap.ui.define([
82
98
 
83
99
  },
84
100
  aggregations: {
85
- _displayContent: {
101
+ /**
102
+ * Content control that is put inside the parent container
103
+ *
104
+ * <b>Note:</b> This aggregation must not be set from outside, it is only to be used by the corresponding container
105
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
106
+ */
107
+ displayContent: {
86
108
  type: "sap.ui.core.Control",
87
109
  multiple: false//,
88
110
  //visibility: "hidden" // as ManagedObjectModel can only observe hidden aggregations on root-control
89
111
  }
90
112
  },
91
113
  events: {
114
+ /**
115
+ * Fired if the selected condition changed.
116
+ */
92
117
  select: {
93
118
  parameters: {
119
+ /**
120
+ * Type of the selection change (add, remove)
121
+ */
94
122
  type: { type: "sap.ui.mdc.enum.SelectType" },
123
+ /**
124
+ * Changed conditions
125
+ *
126
+ * <b>Note:</b> A condition must have the structure of {@link sap.ui.mdc.condition.ConditionObject ConditionObject}.
127
+ */
95
128
  conditions: { type: "object[]" }
96
129
  }
97
130
  },
98
- requestDelegateContent: {},
99
- requestSwitchToDialog: {},
131
+ /**
132
+ * Fired if a change on the content is confirmed
133
+ */
100
134
  confirm: {
101
135
  parameters: {
136
+ /**
137
+ * True if the value help need to be closed
138
+ */
102
139
  close: { type: "boolean" }
103
140
  }
104
141
  },
142
+ /**
143
+ * Fired if the change is cancelled.
144
+ */
105
145
  cancel: {},
146
+ /**
147
+ * Fired if the content requests the delegate content.
148
+ */
149
+ requestDelegateContent: {},
150
+ /**
151
+ * Fired if the value help should switch to dialog mode.
152
+ */
153
+ requestSwitchToDialog: {},
154
+ /**
155
+ * Fired if a navigation was executed in the content
156
+ */
106
157
  navigated: {
107
158
  parameters: {
108
- leaveFocus: { type: "boolean" },
159
+ /**
160
+ * True if the focus should be set back to the field.
161
+ */
162
+ bLeaveFocus: { type: "boolean" },
163
+ /**
164
+ * Navigated condition.
165
+ *
166
+ * <b>Note:</b> A condition must have the structure of {@link sap.ui.mdc.condition.ConditionObject ConditionObject}.
167
+ */
109
168
  condition: { type: "object" },
110
- // value: { type: "string" },
111
- // key: { type: "string" },
169
+ /**
170
+ * ID of the navigated item. (This is needed to set the corresponding aria-attribute)
171
+ */
112
172
  itemId: { type: "string" }
113
173
  }
114
174
  }
@@ -121,7 +181,7 @@ sap.ui.define([
121
181
  this._oObserver = new ManagedObjectObserver(this._observeChanges.bind(this));
122
182
 
123
183
  this._oObserver.observe(this, {
124
- properties: ["_filterValue", "_conditions", "_config"]
184
+ properties: ["filterValue", "conditions", "config"]
125
185
  });
126
186
 
127
187
  };
@@ -137,7 +197,7 @@ sap.ui.define([
137
197
 
138
198
  // don't rerender content or parent-container on conditions change. This needs only be updated on
139
199
  // content control inside (Table, List, DefineConditionPanel...).
140
- if (sPropertyName === "_conditions") {
200
+ if (sPropertyName === "conditions" || sPropertyName === "filterValue" || sPropertyName === "config") {
141
201
  bSuppressInvalidate = true;
142
202
  }
143
203
 
@@ -146,29 +206,104 @@ sap.ui.define([
146
206
  };
147
207
 
148
208
 
209
+ /**
210
+ * Gets the content controls
211
+ *
212
+ * @returns {Promise<sap.ui.core.Control>} This promise resolves after the content is created
213
+ *
214
+ * @private
215
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
216
+ */
149
217
  Content.prototype.getContent = function () {
150
218
 
151
219
  };
152
220
 
153
- Content.prototype.getFooterContent = function () {
221
+ /**
222
+ * Provides a configuration map for supported containers
223
+ *
224
+ * @example
225
+ * // Example configuration:
226
+ * {
227
+ * 'sap.ui.mdc.valuehelp.MyCustomContainer': {
228
+ * showArrow: true,
229
+ * showHeader: true,
230
+ getFooter: function () { Promise.resolve(oFooter); },
231
+ * getContentWidth: function () { return "500px"; },
232
+ getContentHeight: function () { ... },
233
+ * }
234
+ * }
235
+ * @returns {object|undefined} if available, a container configuration object is returned.
236
+ * @private
237
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
238
+ * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
239
+ */
240
+ Content.prototype.getContainerConfig = function () {
154
241
 
155
242
  };
156
243
 
244
+ /**
245
+ * Called if the content will be shown.
246
+ *
247
+ * @private
248
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
249
+ */
157
250
  Content.prototype.onShow = function () {
158
251
  this._bVisible = true;
159
252
  this._handleConditionsUpdate();
160
253
  //this._handleFilterValueUpdate();
161
254
  };
162
255
 
256
+ /**
257
+ * Called if the content will be hidden.
258
+ *
259
+ * @private
260
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
261
+ */
163
262
  Content.prototype.onHide = function () {
164
263
  this._bVisible = false;
165
264
  };
166
265
 
266
+ /**
267
+ * Determines the item (key and description) for a given value.
268
+ *
269
+ * The content checks if there is an item with a key or description that fits this value.
270
+ *
271
+ * <b>Note:</b> This function must only be called by the <code>Container</code> element.
272
+ *
273
+ * @param {object} oConfig Configuration
274
+ * @param {any} oConfig.value Value as entered by user
275
+ * @param {any} [oConfig.parsedValue] Value parsed by type to fit the data type of the key
276
+ * @param {object} [oConfig.inParameters] In parameters for the key (as a key must not be unique.)
277
+ * @param {object} [oConfig.outParameters] Out parameters for the key (as a key must not be unique.)
278
+ * @param {sap.ui.model.Context} [oConfig.bindingContext] <code>BindingContext</code> of the checked field. Inside a table the <code>ValueHelp</code> element might be connected to a different row.
279
+ * @param {boolean} [oConfig.checkKeyFirst] If set, the content checks first if the value fits a key // TODO: not longer needed?
280
+ * @param {boolean} oConfig.checkKey If set, the content checks only if there is an item with the given key. This is set to <code>false</code> if the value cannot be a valid key because of type validation.
281
+ * @param {boolean} oConfig.checkDescription If set, the content checks only if there is an item with the given description. This is set to <code>false</code> if only the key is used in the field.
282
+ * @param {sap.ui.mdc.condition.ConditionModel} [oConfig.conditionModel] <code>ConditionModel</code>, in case of <code>FilterField</code>
283
+ * @param {string} [oConfig.conditionModelName] Name of the <code>ConditionModel</code>, in case of <code>FilterField</code>
284
+ * @param {boolean} [oConfig.caseSensitive] If set, the check is done case sensitive
285
+ * @returns {Promise<sap.ui.mdc.field.FieldHelpItem>} Promise returning object containing description, key, in and out parameters.
286
+ * @throws {sap.ui.model.FormatException|sap.ui.model.ParseException} if entry is not found or not unique
287
+ *
288
+ * @private
289
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
290
+ * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
291
+ */
167
292
  Content.prototype.getItemForValue = function (oConfig) {
168
293
 
169
294
  };
170
295
 
171
- Content.prototype.isValidationSupported = function(oConfig) { // TODO only for TypeAhead content
296
+ /**
297
+ * Defines if the content can be used for input validation.
298
+ *
299
+ * @returns {boolean} True if content can be used for input validation
300
+ *
301
+ * @private
302
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
303
+ * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
304
+ */
305
+ Content.prototype.isValidationSupported = function() { // TODO only for TypeAhead content
306
+ return false;
172
307
  };
173
308
 
174
309
  Content.prototype.getScrollDelegate = function() {
@@ -177,15 +312,15 @@ sap.ui.define([
177
312
  };
178
313
 
179
314
  Content.prototype._observeChanges = function(oChanges) {
180
- if (oChanges.name === "_conditions") {
315
+ if (oChanges.name === "conditions") {
181
316
  this._handleConditionsUpdate(oChanges);
182
317
  }
183
318
 
184
- if (oChanges.name === "_filterValue") {
319
+ if (oChanges.name === "filterValue") {
185
320
  this._handleFilterValueUpdate(oChanges);
186
321
  }
187
322
 
188
- if (oChanges.name === "_config") {
323
+ if (oChanges.name === "config") {
189
324
  _configChanged.call(this, oChanges.current);
190
325
  }
191
326
  };
@@ -201,20 +336,20 @@ sap.ui.define([
201
336
  /**
202
337
  * Creates a condition based on the used operator.
203
338
  *
204
- * @param {string} sKey Operator for the condition
205
- * @param {string} sDescription Description of the operator
206
- * @param {object} oInParameters In parameters of the condition
207
- * @param {object} oOutParameters Out parameters of the condition
339
+ * @param {string} vValue Value of the condition. For item conditions this must be the key.
340
+ * @param {string} [sDescription] Description of the operator
341
+ * @param {object} [oInParameters] In parameters of the condition
342
+ * @param {object} [oOutParameters] Out parameters of the condition
208
343
  * @returns {sap.ui.mdc.condition.ConditionObject} The new condition object with the maintained operator along with <code>sKey</code> and <code>sDescription</code> as <code>aValues</code>
209
344
  * @private
210
345
  * @ui5-restricted FieldHelp subclasses
211
346
  * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
212
347
  */
213
- Content.prototype._createCondition = function(sKey, sDescription, oInParameters, oOutParameters) {
348
+ Content.prototype._createCondition = function(vValue, sDescription, oInParameters, oOutParameters) {
214
349
 
215
350
  var oOperator = _getOperator.call(this);
216
351
 
217
- var aValues = [sKey];
352
+ var aValues = [vValue];
218
353
  if (oOperator.valueTypes.length > 1 && oOperator.valueTypes[1] !== Operator.ValueType.Static && sDescription !== null && sDescription !== undefined) {
219
354
  // description is supported
220
355
  aValues.push(sDescription);
@@ -237,6 +372,20 @@ sap.ui.define([
237
372
 
238
373
  };
239
374
 
375
+ /**
376
+ * Triggers navigation in the content.
377
+ *
378
+ * As this could be asyncron as data might be loaded a promise is returned.
379
+ *
380
+ * <b>Note:</b> This function must only be called by the <code>Container</code> element.
381
+ *
382
+ * @param {int} iStep Number of steps for navigation (e.g. 1 means next item, -1 means previous item)
383
+ * @returns {Promise<object>} Promise returning object of navigated item (condition and itemId)
384
+ *
385
+ * @private
386
+ * @ui5-restricted sap.ui.mdc.valueHelp.base.Container
387
+ * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
388
+ */
240
389
  Content.prototype.navigate = function(iStep) {
241
390
 
242
391
  };
@@ -251,6 +400,16 @@ sap.ui.define([
251
400
  return Element.prototype.getUIArea.apply(this, arguments);
252
401
  };
253
402
 
403
+ /**
404
+ * Determines if the container of the content is used as typeAhead inside the value help
405
+ *
406
+ * <b>Note:</b> This function is used by the content and must not be used from outside
407
+ *
408
+ * @returns {boolean} True if used as typeahead
409
+ *
410
+ * @private
411
+ * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
412
+ */
254
413
  Content.prototype.isTypeahead = function () {
255
414
  var oContainer = this.getParent();
256
415
  return oContainer && oContainer.isTypeahead();
@@ -271,6 +430,11 @@ sap.ui.define([
271
430
  return oContainer && oContainer.getValueHelpDelegate();
272
431
  };
273
432
 
433
+ Content.prototype._getValueHelpDelegatePayload = function () {
434
+ var oContainer = this.getParent();
435
+ return oContainer && oContainer.getValueHelpDelegatePayload();
436
+ };
437
+
274
438
  Content.prototype._awaitValueHelpDelegate = function () {
275
439
  var oContainer = this.getParent();
276
440
  return oContainer && oContainer.awaitValueHelpDelegate();
@@ -325,8 +489,7 @@ sap.ui.define([
325
489
  };
326
490
 
327
491
  Content.prototype._isSingleSelect = function (oEvent) {
328
- var oConfig = this.getProperty("_config");
329
- return oConfig && oConfig.maxConditions === 1;
492
+ return this._getMaxConditions() === 1;
330
493
  };
331
494
 
332
495
  /**
@@ -415,6 +578,18 @@ sap.ui.define([
415
578
  return this._oOperator;
416
579
  }
417
580
 
581
+ /**
582
+ * Determines the title used in the TabBar of the dialog.
583
+ *
584
+ * <b>Note:</b> This function is used by the container and must not be used from outside
585
+ *
586
+ * @param {int} iCount Number of selected items or conditions
587
+ * @returns {string} title
588
+ *
589
+ * @private
590
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
591
+ * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
592
+ */
418
593
  Content.prototype.getFormattedTitle = function(iCount) {
419
594
  var sTitle = this.getTitle();
420
595
  if (sTitle) {
@@ -423,13 +598,24 @@ sap.ui.define([
423
598
  return sTitle;
424
599
  };
425
600
 
426
- Content.prototype.getFormattedSubTitle = function() {
427
- return this.getSubTitle();
601
+ /**
602
+ * Determines the title used in the header of the dialog.
603
+ *
604
+ * <b>Note:</b> This function is used by the container and must not be used from outside
605
+ *
606
+ * @returns {string} title
607
+ *
608
+ * @private
609
+ * @ui5-restricted sap.ui.mdc.valuehelp.base.Container
610
+ * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
611
+ */
612
+ Content.prototype.getFormattedShortTitle = function() {
613
+ return this.getShortTitle();
428
614
  };
429
615
 
430
616
  Content.prototype._getMaxConditions = function() {
431
617
 
432
- var oConfig = this.getProperty("_config");
618
+ var oConfig = this.getConfig();
433
619
  return oConfig && oConfig.maxConditions;
434
620
 
435
621
  };
@@ -5,33 +5,76 @@
5
5
  */
6
6
 
7
7
  sap.ui.define([
8
- 'sap/ui/core/Control',
9
- 'sap/ui/base/ManagedObjectObserver'
8
+ 'sap/ui/core/Control'//,
9
+ //'sap/ui/base/ManagedObjectObserver'
10
10
  ], function(
11
- Control,
12
- ManagedObjectObserver
11
+ Control//,
12
+ //ManagedObjectObserver
13
13
  ) {
14
14
  "use strict";
15
15
 
16
+ /**
17
+ * Constructor for a new <code>DialogTab</code>.
18
+ *
19
+ * @param {string} [sId] ID for the new control, generated automatically if no ID is given
20
+ * @param {object} [mSettings] Initial settings for the new control
21
+ * @class Content for the <code>sap.ui.mdc.valuehelp.content.Dialog</code> element.
22
+ * @extends sap.ui.core.Control
23
+ * @version 1.96.3
24
+ * @constructor
25
+ * @abstract
26
+ * @private
27
+ * @ui5-restricted sap.ui.mdc
28
+ * @since 1.95.0
29
+ * @alias sap.ui.mdc.valuehelp.base.DialogTab
30
+ * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
31
+ */
16
32
  var DialogTab = Control.extend("sap.ui.mdc.valuehelp.base.DialogTab", /** @lends sap.ui.mdc.valuehelp.base.DialogTab.prototype */
17
33
  {
18
34
  metadata: {
19
35
  library: "sap.ui.mdc",
20
36
  properties: {
37
+ /**
38
+ * Content control
39
+ */
21
40
  content: {
22
- type: "object"
41
+ type: "object" // as a Control can officially not be a property
23
42
  }
24
43
  },
25
44
  // aggregations: {
26
45
  // },
27
46
  events: {
28
- select: {
47
+ /**
48
+ * Fired if the selected condition changed.
49
+ */
50
+ select: {
29
51
  parameters: {
52
+ /**
53
+ * Type of the selection change (add, remove)
54
+ */
30
55
  type: { type: "sap.ui.mdc.enum.SelectType" },
56
+ /**
57
+ * Changed conditions
58
+ *
59
+ * <b>Note:</b> A condition must have the structure of {@link sap.ui.mdc.condition.ConditionObject ConditionObject}.
60
+ */
31
61
  conditions: { type: "object[]" }
32
62
  }
33
63
  },
34
- confirm: {},
64
+ /**
65
+ * Fired if a change on the content is confirmed
66
+ */
67
+ confirm: {
68
+ parameters: {
69
+ /**
70
+ * True if the value help need to be closed
71
+ */
72
+ close: { type: "boolean" }
73
+ }
74
+ },
75
+ /**
76
+ * Fired if the change is cancelled.
77
+ */
35
78
  cancel: {}
36
79
  }
37
80
  },