@openui5/sap.ui.core 1.102.0 → 1.102.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.
- package/package.json +1 -1
- package/src/jquery.sap.global.js +1 -1
- package/src/jquery.sap.properties.js +1 -1
- package/src/jquery.sap.resources.js +1 -1
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
- package/src/sap/base/util/restricted/_castArray.js +1 -1
- package/src/sap/base/util/restricted/_compact.js +1 -1
- package/src/sap/base/util/restricted/_curry.js +1 -1
- package/src/sap/base/util/restricted/_debounce.js +1 -1
- package/src/sap/base/util/restricted/_difference.js +1 -1
- package/src/sap/base/util/restricted/_differenceBy.js +1 -1
- package/src/sap/base/util/restricted/_differenceWith.js +1 -1
- package/src/sap/base/util/restricted/_flatMap.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
- package/src/sap/base/util/restricted/_flatten.js +1 -1
- package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
- package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
- package/src/sap/base/util/restricted/_intersection.js +1 -1
- package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
- package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
- package/src/sap/base/util/restricted/_isEqual.js +1 -1
- package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
- package/src/sap/base/util/restricted/_isNil.js +1 -1
- package/src/sap/base/util/restricted/_max.js +1 -1
- package/src/sap/base/util/restricted/_merge.js +1 -1
- package/src/sap/base/util/restricted/_mergeWith.js +1 -1
- package/src/sap/base/util/restricted/_min.js +1 -1
- package/src/sap/base/util/restricted/_omit.js +1 -1
- package/src/sap/base/util/restricted/_pick.js +1 -1
- package/src/sap/base/util/restricted/_pickBy.js +1 -1
- package/src/sap/base/util/restricted/_throttle.js +1 -1
- package/src/sap/base/util/restricted/_toArray.js +1 -1
- package/src/sap/base/util/restricted/_union.js +1 -1
- package/src/sap/base/util/restricted/_unionBy.js +1 -1
- package/src/sap/base/util/restricted/_unionWith.js +1 -1
- package/src/sap/base/util/restricted/_uniq.js +1 -1
- package/src/sap/base/util/restricted/_uniqBy.js +1 -1
- package/src/sap/base/util/restricted/_uniqWith.js +1 -1
- package/src/sap/base/util/restricted/_without.js +1 -1
- package/src/sap/base/util/restricted/_xor.js +1 -1
- package/src/sap/base/util/restricted/_xorBy.js +1 -1
- package/src/sap/base/util/restricted/_xorWith.js +1 -1
- package/src/sap/base/util/restricted/_zipObject.js +1 -1
- package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
- package/src/sap/ui/Device.js +3 -3
- package/src/sap/ui/Global.js +4 -4
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -1
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +1 -1
- package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
- package/src/sap/ui/base/Metadata.js +1 -1
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/core/.library +1 -1
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/Component.js +1 -1
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Control.js +1 -1
- package/src/sap/ui/core/Core.js +1 -1
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +1 -1
- package/src/sap/ui/core/ElementMetadata.js +1 -1
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +1 -1
- package/src/sap/ui/core/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +1 -1
- package/src/sap/ui/core/IndicationColorSupport.js +1 -1
- package/src/sap/ui/core/IntervalTrigger.js +1 -1
- package/src/sap/ui/core/InvisibleMessage.js +1 -1
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +1 -1
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +1 -1
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +1 -1
- package/src/sap/ui/core/LocaleData.js +1 -1
- package/src/sap/ui/core/Manifest.js +1 -1
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/RenderManager.js +1 -1
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- package/src/sap/ui/core/UIArea.js +1 -1
- package/src/sap/ui/core/UIComponent.js +1 -1
- package/src/sap/ui/core/UIComponentMetadata.js +1 -1
- package/src/sap/ui/core/ValueStateSupport.js +1 -1
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
- package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
- package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
- package/src/sap/ui/core/dnd/DragInfo.js +1 -1
- package/src/sap/ui/core/dnd/DropInfo.js +1 -1
- package/src/sap/ui/core/format/NumberFormat.js +91 -25
- package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/library.js +3 -3
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +1 -1
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +1 -1
- package/src/sap/ui/core/mvc/HTMLView.js +1 -1
- package/src/sap/ui/core/mvc/JSONView.js +1 -1
- package/src/sap/ui/core/mvc/JSView.js +1 -1
- package/src/sap/ui/core/mvc/TemplateView.js +1 -1
- package/src/sap/ui/core/mvc/View.js +1 -1
- package/src/sap/ui/core/mvc/XMLView.js +1 -1
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.js +1 -1
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +1 -1
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
- package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
- package/src/sap/ui/core/search/SearchProvider.js +1 -1
- package/src/sap/ui/core/service/Service.js +1 -1
- package/src/sap/ui/core/service/ServiceFactory.js +1 -1
- package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
- package/src/sap/ui/core/support/Plugin.js +1 -1
- package/src/sap/ui/core/support/Support.js +1 -1
- package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
- package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +1 -1
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
- package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
- package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
- package/src/sap/ui/core/tmpl/Template.js +1 -1
- package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- package/src/sap/ui/core/util/Export.js +1 -1
- package/src/sap/ui/core/util/ExportCell.js +1 -1
- package/src/sap/ui/core/util/ExportColumn.js +1 -1
- package/src/sap/ui/core/util/ExportRow.js +1 -1
- package/src/sap/ui/core/util/ExportType.js +1 -1
- package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
- package/src/sap/ui/core/util/File.js +1 -1
- package/src/sap/ui/core/util/LibraryInfo.js +1 -1
- package/src/sap/ui/core/util/MockServer.js +1 -1
- package/src/sap/ui/core/util/PasteHelper.js +1 -1
- package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
- package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
- package/src/sap/ui/core/ws/ReadyState.js +1 -1
- package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
- package/src/sap/ui/core/ws/WebSocket.js +1 -1
- package/src/sap/ui/debug/ControlTree.js +1 -1
- package/src/sap/ui/debug/DebugEnv.js +1 -1
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +1 -1
- package/src/sap/ui/model/SelectionModel.js +1 -1
- package/src/sap/ui/model/SimpleType.js +1 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/json/JSONModel.js +1 -1
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
- package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
- package/src/sap/ui/model/odata/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/type/Boolean.js +1 -1
- package/src/sap/ui/model/odata/type/Byte.js +1 -1
- package/src/sap/ui/model/odata/type/Currency.js +1 -1
- package/src/sap/ui/model/odata/type/Date.js +1 -1
- package/src/sap/ui/model/odata/type/DateTime.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- package/src/sap/ui/model/odata/type/Decimal.js +1 -1
- package/src/sap/ui/model/odata/type/Double.js +1 -1
- package/src/sap/ui/model/odata/type/Guid.js +1 -1
- package/src/sap/ui/model/odata/type/Int.js +1 -1
- package/src/sap/ui/model/odata/type/Int16.js +1 -1
- package/src/sap/ui/model/odata/type/Int32.js +1 -1
- package/src/sap/ui/model/odata/type/Int64.js +1 -1
- package/src/sap/ui/model/odata/type/ODataType.js +1 -1
- package/src/sap/ui/model/odata/type/Raw.js +1 -1
- package/src/sap/ui/model/odata/type/SByte.js +1 -1
- package/src/sap/ui/model/odata/type/Single.js +1 -1
- package/src/sap/ui/model/odata/type/Stream.js +1 -1
- package/src/sap/ui/model/odata/type/String.js +1 -1
- package/src/sap/ui/model/odata/type/Time.js +1 -1
- package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
- package/src/sap/ui/model/odata/type/Unit.js +1 -1
- package/src/sap/ui/model/odata/v2/Context.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/Context.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +49 -9
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +3 -1
- package/src/sap/ui/model/resource/ResourceModel.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +1 -1
- package/src/sap/ui/model/type/Currency.js +1 -1
- package/src/sap/ui/model/type/Date.js +1 -1
- package/src/sap/ui/model/type/DateInterval.js +1 -1
- package/src/sap/ui/model/type/DateTime.js +1 -1
- package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
- package/src/sap/ui/model/type/FileSize.js +1 -1
- package/src/sap/ui/model/type/Float.js +1 -1
- package/src/sap/ui/model/type/Integer.js +1 -1
- package/src/sap/ui/model/type/String.js +1 -1
- package/src/sap/ui/model/type/Time.js +1 -1
- package/src/sap/ui/model/type/TimeInterval.js +1 -1
- package/src/sap/ui/model/type/Unit.js +1 -1
- package/src/sap/ui/model/xml/XMLModel.js +1 -1
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/util/Storage.js +1 -1
|
@@ -12,6 +12,7 @@ sap.ui.define([
|
|
|
12
12
|
'sap/base/Log',
|
|
13
13
|
'sap/base/assert',
|
|
14
14
|
'sap/base/util/extend'
|
|
15
|
+
|
|
15
16
|
],
|
|
16
17
|
function(BaseObject, Locale, LocaleData, Log, assert, extend) {
|
|
17
18
|
"use strict";
|
|
@@ -49,6 +50,22 @@ sap.ui.define([
|
|
|
49
50
|
// Regex for checking that the given string only consists of '0' characters
|
|
50
51
|
var rOnlyZeros = /^0+$/;
|
|
51
52
|
|
|
53
|
+
// Indian currency INR (e.g. xx.xx.yyy.xx.xx.yyy.xx.xx.yyy)
|
|
54
|
+
var getIndianCurrencyINRGroupingRegExp = function() {
|
|
55
|
+
return /^(?:\d{1,2},?\d{2},?\d{3}|\d{1,2},?\d{3}|\d{1,3})(?:,?\d{2},?\d{2},?\d{3})*$/;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/*
|
|
59
|
+
* Is used to validate existing grouping separators.
|
|
60
|
+
* e.g. yyy.yyy.yyy -> /^\d+(?:\.?\d{3})*\.?\d{3}$/
|
|
61
|
+
*/
|
|
62
|
+
var getGroupingRegExp = function(groupingSeparator, groupingSize, groupingBaseSize) {
|
|
63
|
+
var sGroupingEscaped = quote(groupingSeparator);
|
|
64
|
+
return new RegExp("^\\d+"
|
|
65
|
+
+ "(?:" + sGroupingEscaped + "?" + "\\d{" + groupingSize + "}" + ")*"
|
|
66
|
+
+ "" + sGroupingEscaped + "?" + "\\d{" + groupingBaseSize + "}" + "$");
|
|
67
|
+
};
|
|
68
|
+
|
|
52
69
|
/**
|
|
53
70
|
* Internal enumeration to differentiate number types
|
|
54
71
|
*/
|
|
@@ -149,6 +166,7 @@ sap.ui.define([
|
|
|
149
166
|
maxIntegerDigits: 99,
|
|
150
167
|
minFractionDigits: 0,
|
|
151
168
|
maxFractionDigits: 0,
|
|
169
|
+
strictGroupingValidation: false,
|
|
152
170
|
groupingEnabled: false,
|
|
153
171
|
groupingSize: 3,
|
|
154
172
|
groupingSeparator: ",",
|
|
@@ -175,6 +193,7 @@ sap.ui.define([
|
|
|
175
193
|
maxIntegerDigits: 99,
|
|
176
194
|
minFractionDigits: 0,
|
|
177
195
|
maxFractionDigits: 99,
|
|
196
|
+
strictGroupingValidation: false,
|
|
178
197
|
groupingEnabled: true,
|
|
179
198
|
groupingSize: 3,
|
|
180
199
|
groupingSeparator: ",",
|
|
@@ -201,6 +220,7 @@ sap.ui.define([
|
|
|
201
220
|
maxIntegerDigits: 99,
|
|
202
221
|
minFractionDigits: 0,
|
|
203
222
|
maxFractionDigits: 99,
|
|
223
|
+
strictGroupingValidation: false,
|
|
204
224
|
groupingEnabled: true,
|
|
205
225
|
groupingSize: 3,
|
|
206
226
|
groupingSeparator: ",",
|
|
@@ -229,6 +249,7 @@ sap.ui.define([
|
|
|
229
249
|
maxIntegerDigits: 99,
|
|
230
250
|
// the default value for min/maxFractionDigits is defined in oLocaleData.getCurrencyDigits
|
|
231
251
|
// they need to be left undefined here in order to detect whether they are set from outside
|
|
252
|
+
strictGroupingValidation: false,
|
|
232
253
|
groupingEnabled: true,
|
|
233
254
|
groupingSize: 3,
|
|
234
255
|
groupingSeparator: ",",
|
|
@@ -260,6 +281,7 @@ sap.ui.define([
|
|
|
260
281
|
NumberFormat.oDefaultUnitFormat = {
|
|
261
282
|
minIntegerDigits: 1,
|
|
262
283
|
maxIntegerDigits: 99,
|
|
284
|
+
strictGroupingValidation: false,
|
|
263
285
|
groupingEnabled: true,
|
|
264
286
|
groupingSize: 3,
|
|
265
287
|
groupingSeparator: ",",
|
|
@@ -368,6 +390,7 @@ sap.ui.define([
|
|
|
368
390
|
* used for all numbers which are formatted with this format instance. This option has effect only when the option 'style' is set to 'short' or 'long'. This option is by default set
|
|
369
391
|
* with <code>undefined</code> which means the scale factor is selected automatically for each number being formatted.
|
|
370
392
|
* @param {boolean} [oFormatOptions.showScale=true] @since 1.40 specifies whether the scale factor is shown in the formatted number. This option takes effect only when the 'style' options is set to either 'short' or 'long'.
|
|
393
|
+
* @param {boolean} [oFormatOptions.strictGroupingValidation=false] whether the positions of grouping separators are validated. Space characters used as grouping separators are not validated.
|
|
371
394
|
* @param {string} [oFormatOptions.style=standard] defines the style of format. Valid values are
|
|
372
395
|
* 'short, 'long' or 'standard' (based on the CLDR decimalFormat). When set to 'short' or 'long',
|
|
373
396
|
* numbers are formatted into compact forms. When this option is set, the default value of the
|
|
@@ -460,6 +483,7 @@ sap.ui.define([
|
|
|
460
483
|
* used for all numbers which are formatted with this format instance. This option has effect only when the option 'style' is set to 'short' or 'long'. This option is by default set
|
|
461
484
|
* with <code>undefined</code> which means the scale factor is selected automatically for each number being formatted.
|
|
462
485
|
* @param {boolean} [oFormatOptions.showScale=true] @since 1.40 specifies whether the scale factor is shown in the formatted number. This option takes effect only when the 'style' options is set to either 'short' or 'long'.
|
|
486
|
+
* @param {boolean} [oFormatOptions.strictGroupingValidation=false] whether the positions of grouping separators are validated. Space characters used as grouping separators are not validated.
|
|
463
487
|
* @param {string} [oFormatOptions.style=standard] defines the style of format. Valid values are
|
|
464
488
|
* 'short, 'long' or 'standard' (based on the CLDR decimalFormat). When set to 'short' or 'long',
|
|
465
489
|
* numbers are formatted into compact forms. When this option is set, the default value of the
|
|
@@ -602,6 +626,7 @@ sap.ui.define([
|
|
|
602
626
|
* If both <code>showMeasure</code> and <code>showNumber</code> are false, an empty string is returned
|
|
603
627
|
* @param {boolean} [oFormatOptions.showScale=true] @since 1.40 specifies whether the scale factor is shown in the formatted number.
|
|
604
628
|
* This option takes effect only when the 'style' options is set to either 'short' or 'long'.
|
|
629
|
+
* @param {boolean} [oFormatOptions.strictGroupingValidation=false] whether the positions of grouping separators are validated. Space characters used as grouping separators are not validated.
|
|
605
630
|
* @param {string} [oFormatOptions.style=standard] defines the style of format. Valid values are
|
|
606
631
|
* 'short, 'long' or 'standard' (based on the CLDR decimalFormat). When set to 'short' or 'long',
|
|
607
632
|
* numbers are formatted into compact forms. When this option is set, the default value of the
|
|
@@ -737,6 +762,7 @@ sap.ui.define([
|
|
|
737
762
|
* <code>NumberFormat.getUnitInstance({showNumber:false}).format(2, "duration-day"); // "days"</code>
|
|
738
763
|
* If both <code>showMeasure</code> and <code>showNumber</code> are false, an empty string is returned
|
|
739
764
|
* @param {boolean} [oFormatOptions.showScale=true] @since 1.40 specifies whether the scale factor is shown in the formatted number. This option takes effect only when the 'style' options is set to either 'short' or 'long'.
|
|
765
|
+
* @param {boolean} [oFormatOptions.strictGroupingValidation=false] whether the positions of grouping separators are validated. Space characters used as grouping separators are not validated.
|
|
740
766
|
* @param {string} [oFormatOptions.style=standard] defines the style of format. Valid values are
|
|
741
767
|
* 'short, 'long' or 'standard' (based on the CLDR decimalFormat). When set to 'short' or 'long',
|
|
742
768
|
* numbers are formatted into compact forms. When this option is set, the default value of the
|
|
@@ -819,6 +845,7 @@ sap.ui.define([
|
|
|
819
845
|
* used for all numbers which are formatted with this format instance. This option has effect only when the option 'style' is set to 'short' or 'long'. This option is by default set
|
|
820
846
|
* with <code>undefined</code> which means the scale factor is selected automatically for each number being formatted.
|
|
821
847
|
* @param {boolean} [oFormatOptions.showScale=true] @since 1.40 specifies whether the scale factor is shown in the formatted number. This option takes effect only when the 'style' options is set to either 'short' or 'long'.
|
|
848
|
+
* @param {boolean} [oFormatOptions.strictGroupingValidation=false] whether the positions of grouping separators are validated. Space characters used as grouping separators are not validated.
|
|
822
849
|
* @param {string} [oFormatOptions.style=standard] defines the style of format. Valid values are
|
|
823
850
|
* 'short, 'long' or 'standard' (based on the CLDR decimalFormat). When set to 'short' or 'long',
|
|
824
851
|
* numbers are formatted into compact forms. When this option is set, the default value of the
|
|
@@ -1135,7 +1162,7 @@ sap.ui.define([
|
|
|
1135
1162
|
* @param {string} sIntegerPart a string with the integer value, e.g. "1234567"
|
|
1136
1163
|
* @param {object} oOptions the format options, relevant are: groupingSeparator,
|
|
1137
1164
|
* groupingBaseSize, groupingSize
|
|
1138
|
-
* @param {boolean} bIndianCurrency if it is an Indian currency
|
|
1165
|
+
* @param {boolean} bIndianCurrency if it is an Indian currency (locale en-IN and currency INR)
|
|
1139
1166
|
* @returns {string} integer part with grouping, e.g. "1.234.567" for locale de-DE
|
|
1140
1167
|
* @private
|
|
1141
1168
|
*/
|
|
@@ -1694,8 +1721,9 @@ sap.ui.define([
|
|
|
1694
1721
|
*/
|
|
1695
1722
|
NumberFormat.prototype.parse = function(sValue) {
|
|
1696
1723
|
var oOptions = this.oFormatOptions,
|
|
1697
|
-
sPlusSigns = oOptions.plusSign + this.oLocaleData.getLenientNumberSymbols("plusSign")
|
|
1698
|
-
sMinusSigns = oOptions.minusSign + this.oLocaleData.getLenientNumberSymbols("minusSign")
|
|
1724
|
+
sPlusSigns = oOptions.plusSign + this.oLocaleData.getLenientNumberSymbols("plusSign"),
|
|
1725
|
+
sMinusSigns = oOptions.minusSign + this.oLocaleData.getLenientNumberSymbols("minusSign"),
|
|
1726
|
+
// Note: the minus sign ('-') needs to be quoted as well such that it is not confused with the range operator, e.g. in [A-Z]
|
|
1699
1727
|
sPlusMinusSigns = quote(sPlusSigns + sMinusSigns),
|
|
1700
1728
|
sGroupingSeparator = quote(oOptions.groupingSeparator),
|
|
1701
1729
|
sDecimalSeparator = quote(oOptions.decimalSeparator),
|
|
@@ -1935,7 +1963,7 @@ sap.ui.define([
|
|
|
1935
1963
|
}
|
|
1936
1964
|
|
|
1937
1965
|
// strict grouping validation
|
|
1938
|
-
var bIsGroupingValid =
|
|
1966
|
+
var bIsGroupingValid = this._checkGrouping(sValueWithGrouping, oOptions, bScientificNotation, bIndianCurrency && sMeasure === "INR");
|
|
1939
1967
|
if (!bIsGroupingValid) {
|
|
1940
1968
|
// treat invalid grouping the same way as if the value cannot be parsed
|
|
1941
1969
|
return (oOptions.type === mNumberType.CURRENCY || oOptions.type === mNumberType.UNIT) ? null : NaN;
|
|
@@ -2441,13 +2469,14 @@ sap.ui.define([
|
|
|
2441
2469
|
* <li>remove short/long format (e.g. "Mio"/"Million")</li>
|
|
2442
2470
|
* <li>resolve lenient symbols</li>
|
|
2443
2471
|
* </ul>
|
|
2472
|
+
* This means grouping separators which are space characters or RTL characters are not validated.
|
|
2444
2473
|
* @param {object} oOptions the format options, relevant are: groupingSeparator, groupingSize, groupingBaseSize and decimalSeparator
|
|
2445
2474
|
* @param {boolean} bScientificNotation is scientific notation, e.g. "1.234e+1"
|
|
2446
|
-
* @param {
|
|
2475
|
+
* @param {boolean} bIndianCurrency is an indian currency, e.g. number in combination with currency "INR" and locale is "en_IN"
|
|
2447
2476
|
* @returns {boolean} true if the grouping is done correctly, e.g. "1.23" is not grouped correctly for grouping separator "." and groupingSize 3
|
|
2448
2477
|
* @private
|
|
2449
2478
|
*/
|
|
2450
|
-
function
|
|
2479
|
+
NumberFormat.prototype._checkGrouping = function(sValueWithGrouping, oOptions, bScientificNotation, bIndianCurrency) {
|
|
2451
2480
|
if (oOptions.groupingSeparator && sValueWithGrouping.includes(oOptions.groupingSeparator)) {
|
|
2452
2481
|
// All following checks are only done, if the value contains at least one (non-falsy) grouping separator.
|
|
2453
2482
|
// The examples below use the German locale:
|
|
@@ -2476,32 +2505,69 @@ sap.ui.define([
|
|
|
2476
2505
|
sValueWithGrouping = sValueWithGrouping.replace(/[eE].*/, "");
|
|
2477
2506
|
}
|
|
2478
2507
|
|
|
2479
|
-
|
|
2480
|
-
// Integer types
|
|
2481
|
-
//
|
|
2482
|
-
|
|
2483
|
-
|
|
2484
|
-
|
|
2508
|
+
var bHasDecimalSeparator = sValueWithGrouping.includes(oOptions.decimalSeparator);
|
|
2509
|
+
// Integer types often have identical decimal and grouping separators configured,
|
|
2510
|
+
// therefore we do not remove the decimals part and validate them as if they would not
|
|
2511
|
+
// have decimals
|
|
2512
|
+
if (oOptions.decimalSeparator === oOptions.groupingSeparator) {
|
|
2513
|
+
bHasDecimalSeparator = false;
|
|
2514
|
+
} else if (bHasDecimalSeparator) {
|
|
2515
|
+
// remove decimals part to be able to validate grouping
|
|
2516
|
+
sValueWithGrouping = sValueWithGrouping.split(oOptions.decimalSeparator)[0];
|
|
2517
|
+
}
|
|
2518
|
+
|
|
2519
|
+
// check if decimal and grouping separator were confused.
|
|
2520
|
+
// This check is performed in addition to stricter grouping validation (strictGroupingValidation)
|
|
2521
|
+
// to reduce the confusion between decimal and grouping separator.
|
|
2522
|
+
// e.g. for "de": 1.234567 (is invalid)
|
|
2523
|
+
// Pre-requisites (examples for "de")
|
|
2524
|
+
// * number has exactly one grouping separator, e.g. "1.23"
|
|
2525
|
+
// since there can be only one decimal separator, if there is exactly one grouping
|
|
2526
|
+
// separator they could have been confused
|
|
2527
|
+
// * number has no decimal separator, e.g. 1.23
|
|
2528
|
+
// if there is a decimal separator and a grouping separator present,
|
|
2529
|
+
// there cannot be a confusion
|
|
2530
|
+
var bHasExactlyOneGroupingSeparator = sValueWithGrouping.split(oOptions.groupingSeparator).length === 2;
|
|
2531
|
+
if (bHasExactlyOneGroupingSeparator && !bHasDecimalSeparator) {
|
|
2532
|
+
// find least-significant ("lowest") grouping separator
|
|
2533
|
+
var iLowestGroupingIndex = sValueWithGrouping.length - sValueWithGrouping.lastIndexOf(oOptions.groupingSeparator);
|
|
2534
|
+
var iBaseGroupSize = oOptions.groupingBaseSize || oOptions.groupingSize;
|
|
2535
|
+
// if least-significant grouping size doesn't match grouping base size, the value is invalid
|
|
2536
|
+
// e.g. 12.34 (invalid)
|
|
2537
|
+
if (iLowestGroupingIndex !== iBaseGroupSize + oOptions.groupingSeparator.length) {
|
|
2538
|
+
return false;
|
|
2539
|
+
}
|
|
2485
2540
|
}
|
|
2486
2541
|
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2491
|
-
|
|
2542
|
+
/**
|
|
2543
|
+
* With strictGroupingValidation enabled the behaviour is closer to ABAP, the position
|
|
2544
|
+
* of the grouping separators are validated as well.
|
|
2545
|
+
* e.g. for "de" <code>1.2.3</code> becomes invalid
|
|
2546
|
+
*/
|
|
2547
|
+
if (oOptions.strictGroupingValidation) {
|
|
2548
|
+
var rGrouping;
|
|
2549
|
+
if (bIndianCurrency) {
|
|
2550
|
+
this._rIndianCurrencyINRGrouping = this._rIndianCurrencyINRGrouping || getIndianCurrencyINRGroupingRegExp();
|
|
2551
|
+
rGrouping = this._rIndianCurrencyINRGrouping;
|
|
2552
|
+
} else {
|
|
2553
|
+
this._rGrouping = this._rGrouping || getGroupingRegExp(oOptions.groupingSeparator, oOptions.groupingSize, oOptions.groupingBaseSize || oOptions.groupingSize);
|
|
2554
|
+
rGrouping = this._rGrouping;
|
|
2555
|
+
}
|
|
2492
2556
|
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2496
|
-
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
|
|
2557
|
+
// e.g. for "de" with valid grouping separators at the correct position
|
|
2558
|
+
// rGrouping: /^\d+(?:\.?\d{3})*\.?\d{3}$/
|
|
2559
|
+
// sValueWithGrouping: 123 456.789
|
|
2560
|
+
// 123 456 789
|
|
2561
|
+
// 123.456.789
|
|
2562
|
+
// Note: spaces are just there for visual aid.
|
|
2563
|
+
if (!rGrouping.test(sValueWithGrouping)) {
|
|
2564
|
+
return false;
|
|
2565
|
+
}
|
|
2500
2566
|
}
|
|
2501
2567
|
}
|
|
2502
2568
|
|
|
2503
2569
|
return true;
|
|
2504
|
-
}
|
|
2570
|
+
};
|
|
2505
2571
|
|
|
2506
2572
|
/**
|
|
2507
2573
|
* Whether or not the given value is in scientific notation
|
|
@@ -398,7 +398,7 @@ sap.ui.define([
|
|
|
398
398
|
* @see {@link topic:6322164936f047de941ec522b95d7b70 Hyphenation for Text Controls}
|
|
399
399
|
* @extends sap.ui.base.ManagedObject
|
|
400
400
|
* @author SAP SE
|
|
401
|
-
* @version 1.102.
|
|
401
|
+
* @version 1.102.3
|
|
402
402
|
* @hideconstructor
|
|
403
403
|
* @public
|
|
404
404
|
* @since 1.60
|
|
@@ -25,13 +25,13 @@ sap.ui.define([
|
|
|
25
25
|
* @namespace
|
|
26
26
|
* @alias sap.ui.core
|
|
27
27
|
* @author SAP SE
|
|
28
|
-
* @version 1.102.
|
|
28
|
+
* @version 1.102.3
|
|
29
29
|
* @since 0.8
|
|
30
30
|
* @public
|
|
31
31
|
*/
|
|
32
32
|
var thisLib = sap.ui.getCore().initLibrary({
|
|
33
33
|
name : "sap.ui.core",
|
|
34
|
-
version: "1.102.
|
|
34
|
+
version: "1.102.3",
|
|
35
35
|
designtime: "sap/ui/core/designtime/library.designtime",
|
|
36
36
|
types: [
|
|
37
37
|
|
|
@@ -1509,7 +1509,7 @@ sap.ui.define([
|
|
|
1509
1509
|
/**
|
|
1510
1510
|
* Sort order of a column.
|
|
1511
1511
|
*
|
|
1512
|
-
* @version 1.102.
|
|
1512
|
+
* @version 1.102.3
|
|
1513
1513
|
* @enum {string}
|
|
1514
1514
|
* @public
|
|
1515
1515
|
* @since 1.61.0
|
|
@@ -35,7 +35,7 @@ sap.ui.define([
|
|
|
35
35
|
* @extends sap.ui.base.Object
|
|
36
36
|
*
|
|
37
37
|
* @author SAP SE
|
|
38
|
-
* @version 1.102.
|
|
38
|
+
* @version 1.102.3
|
|
39
39
|
*
|
|
40
40
|
* @param {object} [mParameters] a map which contains the following parameter properties:
|
|
41
41
|
* @param {string} [mParameters.id] The message id: will be generated if no id is set
|
|
@@ -27,7 +27,7 @@ sap.ui.define([
|
|
|
27
27
|
* @param {object} [mSettings] initial settings for the new control
|
|
28
28
|
*
|
|
29
29
|
* @extends sap.ui.core.mvc.View
|
|
30
|
-
* @version 1.102.
|
|
30
|
+
* @version 1.102.3
|
|
31
31
|
* @deprecated Since 1.90. Instead use {@link topic:e6bb33d076dc4f23be50c082c271b9f0 Typed Views}
|
|
32
32
|
* by defining the view class with {@link sap.ui.core.mvc.View.extend View.extend} and
|
|
33
33
|
* creating the view instances with {@link sap.ui.core.mvc.View.create View.create}.
|
|
@@ -29,7 +29,7 @@ function(View, TemplateViewRenderer, ViewType, Log) {
|
|
|
29
29
|
* @extends sap.ui.core.mvc.View
|
|
30
30
|
*
|
|
31
31
|
* @author SAP SE
|
|
32
|
-
* @version 1.102.
|
|
32
|
+
* @version 1.102.3
|
|
33
33
|
*
|
|
34
34
|
* @public
|
|
35
35
|
* @deprecated Since version 1.56.0, use {@link sap.ui.core.mvc.XMLView} in combination with
|
|
@@ -107,7 +107,7 @@ sap.ui.define([
|
|
|
107
107
|
* bound content aggregation. An error will be thrown when the above combination is detected.
|
|
108
108
|
*
|
|
109
109
|
* @extends sap.ui.core.mvc.View
|
|
110
|
-
* @version 1.102.
|
|
110
|
+
* @version 1.102.3
|
|
111
111
|
*
|
|
112
112
|
* @public
|
|
113
113
|
* @alias sap.ui.core.mvc.XMLView
|
|
@@ -26,7 +26,7 @@ sap.ui.define([
|
|
|
26
26
|
* @class
|
|
27
27
|
* A SearchProvider which uses the OpenSearch protocol (either JSON or XML).
|
|
28
28
|
* @extends sap.ui.core.search.SearchProvider
|
|
29
|
-
* @version 1.102.
|
|
29
|
+
* @version 1.102.3
|
|
30
30
|
*
|
|
31
31
|
* @public
|
|
32
32
|
* @alias sap.ui.core.search.OpenSearchProvider
|
|
@@ -23,7 +23,7 @@ sap.ui.define(['sap/ui/core/Element', "sap/base/Log", 'sap/ui/core/library'],
|
|
|
23
23
|
*
|
|
24
24
|
* Do not create instances of this class, but use a concrete subclass instead.
|
|
25
25
|
* @extends sap.ui.core.Element
|
|
26
|
-
* @version 1.102.
|
|
26
|
+
* @version 1.102.3
|
|
27
27
|
*
|
|
28
28
|
* @public
|
|
29
29
|
* @alias sap.ui.core.search.SearchProvider
|
|
@@ -83,7 +83,7 @@ sap.ui.define(['sap/ui/base/Object', 'sap/ui/core/service/Service', "sap/base/as
|
|
|
83
83
|
*
|
|
84
84
|
* @extends sap.ui.base.Object
|
|
85
85
|
* @author SAP SE
|
|
86
|
-
* @version 1.102.
|
|
86
|
+
* @version 1.102.3
|
|
87
87
|
* @alias sap.ui.core.service.ServiceFactory
|
|
88
88
|
* @private
|
|
89
89
|
* @ui5-restricted sap.ushell
|
|
@@ -26,7 +26,7 @@ sap.ui.define(['sap/ui/base/EventProvider', './Plugin', "sap/base/util/UriParame
|
|
|
26
26
|
* @class This class provides the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
27
27
|
*
|
|
28
28
|
* @extends sap.ui.base.EventProvider
|
|
29
|
-
* @version 1.102.
|
|
29
|
+
* @version 1.102.3
|
|
30
30
|
* @private
|
|
31
31
|
* @alias sap.ui.core.support.Support
|
|
32
32
|
*/
|
|
@@ -56,7 +56,7 @@ sap.ui.define([
|
|
|
56
56
|
* @class This class represents the ControlTree plugin for the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
57
57
|
*
|
|
58
58
|
* @extends sap.ui.core.support.Plugin
|
|
59
|
-
* @version 1.102.
|
|
59
|
+
* @version 1.102.3
|
|
60
60
|
* @private
|
|
61
61
|
* @alias sap.ui.core.support.plugins.ControlTree
|
|
62
62
|
*/
|
|
@@ -15,7 +15,7 @@ sap.ui.define(['sap/ui/core/support/Plugin', "sap/base/Log"],
|
|
|
15
15
|
* @class This class represents the LocalStorage plugin for the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
16
16
|
*
|
|
17
17
|
* @extends sap.ui.core.support.Plugin
|
|
18
|
-
* @version 1.102.
|
|
18
|
+
* @version 1.102.3
|
|
19
19
|
* @private
|
|
20
20
|
* @alias sap.ui.core.support.plugins.LocalStorage
|
|
21
21
|
*/
|
|
@@ -20,7 +20,7 @@ sap.ui.define([
|
|
|
20
20
|
* @class This class represents the selector plugin for the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
21
21
|
*
|
|
22
22
|
* @extends sap.ui.core.support.Plugin
|
|
23
|
-
* @version 1.102.
|
|
23
|
+
* @version 1.102.3
|
|
24
24
|
* @private
|
|
25
25
|
* @alias sap.ui.core.support.plugins.Selector
|
|
26
26
|
*/
|
|
@@ -25,7 +25,7 @@ sap.ui.define([
|
|
|
25
25
|
* @class This class represents the technical info plugin for the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
26
26
|
*
|
|
27
27
|
* @extends sap.ui.core.support.Plugin
|
|
28
|
-
* @version 1.102.
|
|
28
|
+
* @version 1.102.3
|
|
29
29
|
* @private
|
|
30
30
|
* @alias sap.ui.core.support.plugins.TechInfo
|
|
31
31
|
*/
|
|
@@ -19,7 +19,7 @@ sap.ui.define([
|
|
|
19
19
|
* @class This class represents the trace plugin for the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
20
20
|
*
|
|
21
21
|
* @extends sap.ui.core.support.Plugin
|
|
22
|
-
* @version 1.102.
|
|
22
|
+
* @version 1.102.3
|
|
23
23
|
* @private
|
|
24
24
|
* @alias sap.ui.core.support.plugins.Trace
|
|
25
25
|
*/
|
|
@@ -20,7 +20,7 @@ sap.ui.define([
|
|
|
20
20
|
* Creates an instance of sap.ui.core.support.plugins.ViewInfo.
|
|
21
21
|
* @class This class represents the ViewInfo plugin for the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
22
22
|
* @extends sap.ui.core.support.Plugin
|
|
23
|
-
* @version 1.102.
|
|
23
|
+
* @version 1.102.3
|
|
24
24
|
* @private
|
|
25
25
|
* @alias sap.ui.core.support.plugins.ViewInfo
|
|
26
26
|
*/
|