@ui5/webcomponents-localization 1.14.5 → 1.14.7

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 (128) hide show
  1. package/.eslintignore +2 -1
  2. package/CHANGELOG.md +20 -0
  3. package/dist/generated/assets/cldr/ar.json +102 -62
  4. package/dist/generated/assets/cldr/ar_EG.json +102 -62
  5. package/dist/generated/assets/cldr/ar_SA.json +102 -62
  6. package/dist/generated/assets/cldr/bg.json +364 -325
  7. package/dist/generated/assets/cldr/ca.json +491 -453
  8. package/dist/generated/assets/cldr/cs.json +431 -324
  9. package/dist/generated/assets/cldr/cy.json +608 -340
  10. package/dist/generated/assets/cldr/da.json +290 -227
  11. package/dist/generated/assets/cldr/de.json +348 -241
  12. package/dist/generated/assets/cldr/de_AT.json +348 -241
  13. package/dist/generated/assets/cldr/de_CH.json +347 -240
  14. package/dist/generated/assets/cldr/el.json +128 -100
  15. package/dist/generated/assets/cldr/el_CY.json +128 -100
  16. package/dist/generated/assets/cldr/en.json +538 -512
  17. package/dist/generated/assets/cldr/en_AU.json +583 -520
  18. package/dist/generated/assets/cldr/en_GB.json +485 -441
  19. package/dist/generated/assets/cldr/en_HK.json +519 -474
  20. package/dist/generated/assets/cldr/en_IE.json +485 -440
  21. package/dist/generated/assets/cldr/en_IN.json +465 -420
  22. package/dist/generated/assets/cldr/en_NZ.json +505 -460
  23. package/dist/generated/assets/cldr/en_PG.json +505 -460
  24. package/dist/generated/assets/cldr/en_SG.json +505 -460
  25. package/dist/generated/assets/cldr/en_ZA.json +485 -440
  26. package/dist/generated/assets/cldr/es.json +709 -456
  27. package/dist/generated/assets/cldr/es_AR.json +687 -434
  28. package/dist/generated/assets/cldr/es_BO.json +721 -468
  29. package/dist/generated/assets/cldr/es_CL.json +567 -422
  30. package/dist/generated/assets/cldr/es_CO.json +485 -339
  31. package/dist/generated/assets/cldr/es_MX.json +734 -481
  32. package/dist/generated/assets/cldr/es_PE.json +409 -372
  33. package/dist/generated/assets/cldr/es_UY.json +433 -396
  34. package/dist/generated/assets/cldr/es_VE.json +453 -416
  35. package/dist/generated/assets/cldr/et.json +340 -307
  36. package/dist/generated/assets/cldr/fa.json +96 -34
  37. package/dist/generated/assets/cldr/fi.json +359 -308
  38. package/dist/generated/assets/cldr/fr.json +347 -321
  39. package/dist/generated/assets/cldr/fr_BE.json +347 -321
  40. package/dist/generated/assets/cldr/fr_CA.json +458 -432
  41. package/dist/generated/assets/cldr/fr_CH.json +290 -264
  42. package/dist/generated/assets/cldr/fr_LU.json +347 -321
  43. package/dist/generated/assets/cldr/he.json +241 -130
  44. package/dist/generated/assets/cldr/hi.json +103 -53
  45. package/dist/generated/assets/cldr/hr.json +467 -410
  46. package/dist/generated/assets/cldr/hu.json +246 -195
  47. package/dist/generated/assets/cldr/id.json +478 -406
  48. package/dist/generated/assets/cldr/it.json +418 -362
  49. package/dist/generated/assets/cldr/it_CH.json +418 -362
  50. package/dist/generated/assets/cldr/ja.json +58 -18
  51. package/dist/generated/assets/cldr/kk.json +562 -398
  52. package/dist/generated/assets/cldr/ko.json +36 -15
  53. package/dist/generated/assets/cldr/lt.json +320 -231
  54. package/dist/generated/assets/cldr/lv.json +184 -120
  55. package/dist/generated/assets/cldr/ms.json +460 -388
  56. package/dist/generated/assets/cldr/nb.json +160 -92
  57. package/dist/generated/assets/cldr/nl.json +621 -373
  58. package/dist/generated/assets/cldr/nl_BE.json +621 -373
  59. package/dist/generated/assets/cldr/pl.json +590 -279
  60. package/dist/generated/assets/cldr/pt.json +696 -334
  61. package/dist/generated/assets/cldr/pt_PT.json +730 -454
  62. package/dist/generated/assets/cldr/ro.json +409 -339
  63. package/dist/generated/assets/cldr/ru.json +317 -279
  64. package/dist/generated/assets/cldr/ru_UA.json +312 -274
  65. package/dist/generated/assets/cldr/sk.json +454 -413
  66. package/dist/generated/assets/cldr/sl.json +118 -80
  67. package/dist/generated/assets/cldr/sr.json +294 -142
  68. package/dist/generated/assets/cldr/sr_Latn.json +972 -824
  69. package/dist/generated/assets/cldr/sv.json +382 -338
  70. package/dist/generated/assets/cldr/th.json +56 -36
  71. package/dist/generated/assets/cldr/tr.json +371 -320
  72. package/dist/generated/assets/cldr/uk.json +340 -290
  73. package/dist/generated/assets/cldr/vi.json +352 -328
  74. package/dist/generated/assets/cldr/zh_CN.json +34 -10
  75. package/dist/generated/assets/cldr/zh_HK.json +33 -9
  76. package/dist/generated/assets/cldr/zh_SG.json +33 -9
  77. package/dist/generated/assets/cldr/zh_TW.json +32 -8
  78. package/dist/sap/base/Event.js +59 -0
  79. package/dist/sap/base/Eventing.js +147 -0
  80. package/dist/sap/base/Log.js +2 -239
  81. package/dist/sap/base/assert.js +28 -1
  82. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  83. package/dist/sap/base/config.js +17 -0
  84. package/dist/sap/base/i18n/Formatting.js +1130 -0
  85. package/dist/sap/base/i18n/LanguageTag.js +173 -0
  86. package/dist/sap/base/i18n/Localization.js +721 -0
  87. package/dist/sap/base/i18n/date/CalendarType.js +43 -0
  88. package/dist/sap/base/i18n/date/CalendarWeekNumbering.js +105 -0
  89. package/dist/sap/base/i18n/date/TimezoneUtils.js +319 -0
  90. package/dist/sap/base/strings/camelize.js +30 -0
  91. package/dist/sap/base/strings/formatMessage.js +88 -15
  92. package/dist/sap/base/util/ObjectPath.js +95 -3
  93. package/dist/sap/base/util/Version.js +157 -0
  94. package/dist/sap/base/util/_merge.js +83 -26
  95. package/dist/sap/base/util/array/uniqueSort.js +37 -15
  96. package/dist/sap/base/util/deepClone.js +102 -0
  97. package/dist/sap/base/util/deepEqual.js +75 -51
  98. package/dist/sap/base/util/extend.js +58 -7
  99. package/dist/sap/base/util/isEmptyObject.js +34 -0
  100. package/dist/sap/base/util/isPlainObject.js +35 -1
  101. package/dist/sap/base/util/now.js +24 -3
  102. package/dist/sap/base/util/resolveReference.js +157 -0
  103. package/dist/sap/base/util/uid.js +27 -0
  104. package/dist/sap/ui/base/DataType.js +657 -0
  105. package/dist/sap/ui/base/Interface.js +47 -1
  106. package/dist/sap/ui/base/Metadata.js +436 -171
  107. package/dist/sap/ui/base/Object.js +284 -48
  108. package/dist/sap/ui/core/CalendarType.js +24 -8
  109. package/dist/sap/ui/core/Locale.js +190 -155
  110. package/dist/sap/ui/core/LocaleData.js +2661 -1351
  111. package/dist/sap/ui/core/Supportability.js +5 -0
  112. package/dist/sap/ui/core/Theming.js +539 -0
  113. package/dist/sap/ui/core/date/Buddhist.js +162 -87
  114. package/dist/sap/ui/core/date/CalendarUtils.js +61 -32
  115. package/dist/sap/ui/core/date/CalendarWeekNumbering.js +30 -7
  116. package/dist/sap/ui/core/date/Gregorian.js +25 -10
  117. package/dist/sap/ui/core/date/Islamic.js +298 -185
  118. package/dist/sap/ui/core/date/Japanese.js +210 -115
  119. package/dist/sap/ui/core/date/Persian.js +324 -195
  120. package/dist/sap/ui/core/date/UI5Date.js +923 -237
  121. package/dist/sap/ui/core/date/UniversalDate.js +1238 -256
  122. package/dist/sap/ui/core/date/_Calendars.js +10 -1
  123. package/dist/sap/ui/core/format/DateFormat.js +3174 -2111
  124. package/dist/sap/ui/core/format/TimezoneUtil.js +24 -89
  125. package/package-scripts.cjs +6 -11
  126. package/package.json +9 -5
  127. package/used-modules.txt +24 -1
  128. package/dist/sap/ui/Device.js +0 -5
@@ -0,0 +1,173 @@
1
+ /**
2
+ * A regular expression that describes language tags according to BCP-47.
3
+ * @see BCP47 "Tags for Identifying Languages" (http://www.ietf.org/rfc/bcp/bcp47.txt)
4
+ *
5
+ * The matching groups are
6
+ * 0=all
7
+ * 1=language (shortest ISO639 code + ext. language sub tags | 4digits (reserved) | registered language sub tags)
8
+ * 2=script (4 letters)
9
+ * 3=region (2 letter language or 3 digits)
10
+ * 4=variants (separated by '-', Note: capturing group contains leading '-' to shorten the regex!)
11
+ * 5=extensions (including leading singleton, multiple extensions separated by '-'.Note: capturing group contains leading '-' to shorten the regex!)
12
+ * 6=private use section (including leading 'x', multiple sections separated by '-')
13
+ *
14
+ * [-------------------- language ----------------------][--- script ---][------- region --------][------------- variants --------------][----------- extensions ------------][------ private use -------]
15
+ */ /*!
16
+ * OpenUI5
17
+ * (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
18
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
19
+ */
20
+
21
+ //Provides the LanguageTag object module:sap/base/i18n/LanguageTag
22
+
23
+ var rLanguageTag = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;
24
+
25
+ /**
26
+ * Creates an LanguageTag instance.
27
+ * LanguageTag represents a BCP-47 language tag, consisting of a language, script, region, variants, extensions and private use section.
28
+ *
29
+ * @class
30
+ *
31
+ * @param {string} sLanguageTag the language tag identifier, in format en-US or en_US.
32
+ *
33
+ * @author SAP SE
34
+ * @version 1.120.3
35
+ * @public
36
+ * @alias module:sap/base/i18n/LanguageTag
37
+ */
38
+ class LanguageTag {
39
+ /**
40
+ * Get the language.
41
+ *
42
+ * Note that the case might differ from the original script tag
43
+ * (Lower case is enforced as recommended by BCP47/ISO639).
44
+ *
45
+ * @type {string}
46
+ * @public
47
+ */
48
+ language;
49
+
50
+ /**
51
+ * Get the script or <code>null</code> if none was specified.
52
+ *
53
+ * Note that the case might differ from the original language tag
54
+ * (Upper case first letter and lower case reminder enforced as
55
+ * recommended by BCP47/ISO15924)
56
+ *
57
+ * @type {string|null}
58
+ * @public
59
+ */
60
+ script;
61
+
62
+ /**
63
+ * Get the region or <code>null</code> if none was specified.
64
+ *
65
+ * Note that the case might differ from the original script tag
66
+ * (Upper case is enforced as recommended by BCP47/ISO3166-1).
67
+ *
68
+ * @type {string}
69
+ * @public
70
+ */
71
+ region;
72
+
73
+ /**
74
+ * Get the variants as a single string or <code>null</code>.
75
+ *
76
+ * Multiple variants are separated by a dash '-'.
77
+ *
78
+ * @type {string|null}
79
+ * @public
80
+ */
81
+ variant;
82
+
83
+ /**
84
+ * Get the variants as an array of individual variants.
85
+ *
86
+ * The separating dashes are not part of the result.
87
+ * If there is no variant section in the language tag, an empty array is returned.
88
+ *
89
+ * @type {string[]}
90
+ * @public
91
+ */
92
+ variantSubtags;
93
+
94
+ /**
95
+ * Get the extension as a single string or <code>null</code>.
96
+ *
97
+ * The extension always consists of a singleton character (not 'x'),
98
+ * a dash '-' and one or more extension token, each separated
99
+ * again with a dash.
100
+ *
101
+ * @type {string|null}
102
+ * @public
103
+ */
104
+ extension;
105
+
106
+ /**
107
+ * Get the extensions as an array of tokens.
108
+ *
109
+ * The leading singleton and the separating dashes are not part of the result.
110
+ * If there is no extensions section in the language tag, an empty array is returned.
111
+ *
112
+ * @type {string[]}
113
+ * @public
114
+ */
115
+ extensionSubtags;
116
+
117
+ /**
118
+ * Get the private use section or <code>null</code>.
119
+ *
120
+ * @type {string}
121
+ */
122
+ privateUse;
123
+
124
+ /**
125
+ * Get the private use section as an array of tokens.
126
+ *
127
+ * The leading singleton and the separating dashes are not part of the result.
128
+ * If there is no private use section in the language tag, an empty array is returned.
129
+ *
130
+ * @type {string[]}
131
+ */
132
+ privateUseSubtags;
133
+ constructor(sLanguageTag) {
134
+ var aResult = rLanguageTag.exec(sLanguageTag.replace(/_/g, "-"));
135
+ // If the given language tag string cannot be parsed by the regular expression above,
136
+ // we should at least tell the developer why the Core fails to load.
137
+ if (aResult === null) {
138
+ throw new TypeError("The given language tag'" + sLanguageTag + "' does not adhere to BCP-47.");
139
+ }
140
+ this.language = aResult[1] || null;
141
+ this.script = aResult[2] || null;
142
+ this.region = aResult[3] || null;
143
+ this.variant = aResult[4] && aResult[4].slice(1) || null; // remove leading dash from capturing group
144
+ this.variantSubtags = this.variant ? this.variant.split('-') : [];
145
+ this.extension = aResult[5] && aResult[5].slice(1) || null; // remove leading dash from capturing group
146
+ this.extensionSubtags = this.variant ? this.variant.split('-') : [];
147
+ this.privateUse = aResult[6] || null;
148
+ this.privateUseSubtags = this.privateUse ? this.privateUse.slice(2).split('-') : [];
149
+ // convert subtags according to the BCP47 recommendations
150
+ // - language: all lower case
151
+ // - script: lower case with the first letter capitalized
152
+ // - region: all upper case
153
+ if (this.language) {
154
+ this.language = this.language.toLowerCase();
155
+ }
156
+ if (this.script) {
157
+ this.script = this.script.toLowerCase().replace(/^[a-z]/, function ($) {
158
+ return $.toUpperCase();
159
+ });
160
+ }
161
+ if (this.region) {
162
+ this.region = this.region.toUpperCase();
163
+ }
164
+ Object.freeze(this);
165
+ }
166
+ toString() {
167
+ return this.#join(this.language, this.script, this.region, this.variant, this.extension, this.privateUse);
168
+ }
169
+ #join() {
170
+ return Array.prototype.filter.call(arguments, Boolean).join("-");
171
+ }
172
+ }
173
+ export default LanguageTag;