@ui5/webcomponents-localization 0.0.0-0fcda382e → 0.0.0-10f3c0dc7

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 (275) hide show
  1. package/.eslintignore +2 -0
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +2427 -0
  4. package/LICENSE.txt +201 -0
  5. package/README.md +38 -10
  6. package/dist/.tsbuildinfo +1 -0
  7. package/dist/Assets-fetch.d.ts +1 -0
  8. package/dist/Assets-fetch.js +3 -0
  9. package/dist/Assets-fetch.js.map +1 -0
  10. package/dist/Assets-node.d.ts +11 -0
  11. package/dist/Assets-node.js +12 -0
  12. package/dist/Assets-node.js.map +1 -0
  13. package/dist/Assets.d.ts +1 -0
  14. package/dist/Assets.js +1 -0
  15. package/dist/Assets.js.map +1 -0
  16. package/dist/CalendarUtils.d.ts +3 -0
  17. package/dist/CalendarUtils.js +6 -0
  18. package/dist/CalendarUtils.js.map +1 -0
  19. package/dist/DateFormat.d.ts +28 -0
  20. package/dist/DateFormat.js +22 -2
  21. package/dist/DateFormat.js.map +1 -0
  22. package/dist/Locale.d.ts +5 -0
  23. package/dist/Locale.js +7 -0
  24. package/dist/Locale.js.map +1 -0
  25. package/dist/LocaleData.d.ts +5 -0
  26. package/dist/LocaleData.js +6 -2
  27. package/dist/LocaleData.js.map +1 -0
  28. package/dist/NumberFormat.d.ts +5 -0
  29. package/dist/NumberFormat.js +7 -0
  30. package/dist/NumberFormat.js.map +1 -0
  31. package/dist/dates/CalendarDate.d.ts +42 -0
  32. package/dist/dates/CalendarDate.js +171 -181
  33. package/dist/dates/CalendarDate.js.map +1 -0
  34. package/dist/dates/ExtremeDates.d.ts +5 -0
  35. package/dist/dates/ExtremeDates.js +29 -0
  36. package/dist/dates/ExtremeDates.js.map +1 -0
  37. package/dist/dates/UI5Date.d.ts +5 -0
  38. package/dist/dates/UI5Date.js +7 -0
  39. package/dist/dates/UI5Date.js.map +1 -0
  40. package/dist/dates/UniversalDate.d.ts +47 -0
  41. package/dist/dates/UniversalDate.js +5 -0
  42. package/dist/dates/UniversalDate.js.map +1 -0
  43. package/dist/dates/convertMonthNumbersToMonthNames.d.ts +16 -0
  44. package/dist/dates/convertMonthNumbersToMonthNames.js +30 -0
  45. package/dist/dates/convertMonthNumbersToMonthNames.js.map +1 -0
  46. package/dist/dates/getDaysInMonth.d.ts +3 -0
  47. package/dist/dates/getDaysInMonth.js +10 -0
  48. package/dist/dates/getDaysInMonth.js.map +1 -0
  49. package/dist/dates/getRoundedTimestamp.d.ts +7 -0
  50. package/dist/dates/getRoundedTimestamp.js +15 -0
  51. package/dist/dates/getRoundedTimestamp.js.map +1 -0
  52. package/dist/dates/getTodayUTCTimestamp.d.ts +7 -0
  53. package/dist/dates/getTodayUTCTimestamp.js +9 -0
  54. package/dist/dates/getTodayUTCTimestamp.js.map +1 -0
  55. package/dist/dates/modifyDateBy.d.ts +14 -0
  56. package/dist/dates/modifyDateBy.js +55 -0
  57. package/dist/dates/modifyDateBy.js.map +1 -0
  58. package/dist/dates/transformDateToSecondaryType.d.ts +7 -0
  59. package/dist/dates/transformDateToSecondaryType.js +18 -0
  60. package/dist/dates/transformDateToSecondaryType.js.map +1 -0
  61. package/dist/features/calendar/Buddhist.js +1 -0
  62. package/dist/features/calendar/Buddhist.js.map +1 -0
  63. package/dist/features/calendar/Gregorian.js +1 -0
  64. package/dist/features/calendar/Gregorian.js.map +1 -0
  65. package/dist/features/calendar/Islamic.js +1 -0
  66. package/dist/features/calendar/Islamic.js.map +1 -0
  67. package/dist/features/calendar/Japanese.js +1 -0
  68. package/dist/features/calendar/Japanese.js.map +1 -0
  69. package/dist/features/calendar/Persian.js +1 -0
  70. package/dist/features/calendar/Persian.js.map +1 -0
  71. package/dist/generated/assets/cldr/Unicode-Data-Files-LICENSE.txt +39 -0
  72. package/dist/generated/assets/cldr/ar.json +2179 -728
  73. package/dist/generated/assets/cldr/ar_EG.json +2179 -728
  74. package/dist/generated/assets/cldr/ar_SA.json +2275 -825
  75. package/dist/generated/assets/cldr/bg.json +1924 -798
  76. package/dist/generated/assets/cldr/ca.json +2027 -816
  77. package/dist/generated/assets/cldr/cnr.json +6476 -0
  78. package/dist/generated/assets/cldr/cs.json +1865 -842
  79. package/dist/generated/assets/cldr/cy.json +6566 -0
  80. package/dist/generated/assets/cldr/da.json +1844 -682
  81. package/dist/generated/assets/cldr/de.json +1806 -546
  82. package/dist/generated/assets/cldr/de_AT.json +1797 -537
  83. package/dist/generated/assets/cldr/de_CH.json +1879 -611
  84. package/dist/generated/assets/cldr/el.json +1497 -383
  85. package/dist/generated/assets/cldr/el_CY.json +1497 -383
  86. package/dist/generated/assets/cldr/en.json +1990 -563
  87. package/dist/generated/assets/cldr/en_AU.json +2339 -763
  88. package/dist/generated/assets/cldr/en_GB.json +2170 -621
  89. package/dist/generated/assets/cldr/en_HK.json +2076 -628
  90. package/dist/generated/assets/cldr/en_IE.json +2038 -593
  91. package/dist/generated/assets/cldr/en_IN.json +2336 -704
  92. package/dist/generated/assets/cldr/en_NZ.json +2056 -611
  93. package/dist/generated/assets/cldr/en_PG.json +2049 -604
  94. package/dist/generated/assets/cldr/en_SG.json +2041 -593
  95. package/dist/generated/assets/cldr/en_ZA.json +2046 -599
  96. package/dist/generated/assets/cldr/es.json +2197 -881
  97. package/dist/generated/assets/cldr/es_AR.json +2167 -819
  98. package/dist/generated/assets/cldr/es_BO.json +2210 -863
  99. package/dist/generated/assets/cldr/es_CL.json +2087 -848
  100. package/dist/generated/assets/cldr/es_CO.json +1947 -707
  101. package/dist/generated/assets/cldr/es_MX.json +2446 -1091
  102. package/dist/generated/assets/cldr/es_PE.json +1912 -773
  103. package/dist/generated/assets/cldr/es_UY.json +1926 -795
  104. package/dist/generated/assets/cldr/es_VE.json +1920 -789
  105. package/dist/generated/assets/cldr/et.json +1761 -544
  106. package/dist/generated/assets/cldr/fa.json +1872 -566
  107. package/dist/generated/assets/cldr/fi.json +1959 -526
  108. package/dist/generated/assets/cldr/fr.json +1711 -460
  109. package/dist/generated/assets/cldr/fr_BE.json +1710 -459
  110. package/dist/generated/assets/cldr/fr_CA.json +2087 -814
  111. package/dist/generated/assets/cldr/fr_CH.json +1669 -418
  112. package/dist/generated/assets/cldr/fr_LU.json +1711 -460
  113. package/dist/generated/assets/cldr/he.json +2018 -1033
  114. package/dist/generated/assets/cldr/hi.json +1619 -348
  115. package/dist/generated/assets/cldr/hr.json +1855 -569
  116. package/dist/generated/assets/cldr/hu.json +1764 -551
  117. package/dist/generated/assets/cldr/id.json +1924 -601
  118. package/dist/generated/assets/cldr/it.json +1821 -666
  119. package/dist/generated/assets/cldr/it_CH.json +1827 -672
  120. package/dist/generated/assets/cldr/ja.json +1426 -109
  121. package/dist/generated/assets/cldr/kk.json +2251 -737
  122. package/dist/generated/assets/cldr/ko.json +1484 -196
  123. package/dist/generated/assets/cldr/lt.json +1714 -734
  124. package/dist/generated/assets/cldr/lv.json +1686 -682
  125. package/dist/generated/assets/cldr/mk.json +6177 -0
  126. package/dist/generated/assets/cldr/ms.json +1903 -595
  127. package/dist/generated/assets/cldr/nb.json +1548 -369
  128. package/dist/generated/assets/cldr/nl.json +1935 -511
  129. package/dist/generated/assets/cldr/nl_BE.json +1955 -531
  130. package/dist/generated/assets/cldr/pl.json +1873 -586
  131. package/dist/generated/assets/cldr/pt.json +2184 -753
  132. package/dist/generated/assets/cldr/pt_PT.json +2149 -778
  133. package/dist/generated/assets/cldr/ro.json +1847 -765
  134. package/dist/generated/assets/cldr/ru.json +2082 -755
  135. package/dist/generated/assets/cldr/ru_UA.json +2076 -749
  136. package/dist/generated/assets/cldr/sk.json +1860 -972
  137. package/dist/generated/assets/cldr/sl.json +1861 -920
  138. package/dist/generated/assets/cldr/sr.json +1829 -767
  139. package/dist/generated/assets/cldr/sr_Latn.json +6173 -0
  140. package/dist/generated/assets/cldr/sv.json +1789 -587
  141. package/dist/generated/assets/cldr/th.json +1704 -373
  142. package/dist/generated/assets/cldr/tr.json +1855 -587
  143. package/dist/generated/assets/cldr/uk.json +2166 -711
  144. package/dist/generated/assets/cldr/vi.json +2054 -709
  145. package/dist/generated/assets/cldr/zh_CN.json +1736 -397
  146. package/dist/generated/assets/cldr/zh_HK.json +1713 -374
  147. package/dist/generated/assets/cldr/zh_SG.json +1723 -384
  148. package/dist/generated/assets/cldr/zh_TW.json +1678 -371
  149. package/dist/generated/json-imports/LocaleData-fetch.d.ts +1 -0
  150. package/dist/generated/json-imports/LocaleData-fetch.js +93 -0
  151. package/dist/generated/json-imports/LocaleData-fetch.js.map +1 -0
  152. package/dist/generated/json-imports/LocaleData-node.d.ts +1 -0
  153. package/dist/generated/json-imports/LocaleData-node.js +93 -0
  154. package/dist/generated/json-imports/LocaleData-node.js.map +1 -0
  155. package/dist/generated/json-imports/LocaleData.d.ts +1 -0
  156. package/dist/generated/json-imports/LocaleData.js +92 -95
  157. package/dist/generated/json-imports/LocaleData.js.map +1 -0
  158. package/dist/getCachedLocaleDataInstance.d.ts +4 -0
  159. package/dist/getCachedLocaleDataInstance.js +12 -0
  160. package/dist/getCachedLocaleDataInstance.js.map +1 -0
  161. package/dist/locale/getLocaleData.d.ts +11 -0
  162. package/dist/locale/getLocaleData.js +15 -17
  163. package/dist/locale/getLocaleData.js.map +1 -0
  164. package/dist/sap/base/Event.js +59 -0
  165. package/dist/sap/base/Eventing.js +147 -0
  166. package/dist/sap/base/Log.js +2 -248
  167. package/dist/sap/base/assert.js +31 -9
  168. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  169. package/dist/sap/base/config.js +17 -0
  170. package/dist/sap/base/future.js +12 -0
  171. package/dist/sap/base/i18n/Formatting.d.ts +13 -0
  172. package/dist/sap/base/i18n/Formatting.js +18 -0
  173. package/dist/sap/base/i18n/Formatting.js.map +1 -0
  174. package/dist/sap/base/i18n/LanguageTag.js +179 -0
  175. package/dist/sap/base/i18n/Localization.d.ts +7 -0
  176. package/dist/sap/base/i18n/Localization.js +17 -0
  177. package/dist/sap/base/i18n/Localization.js.map +1 -0
  178. package/dist/sap/base/i18n/ResourceBundle.js +20 -0
  179. package/dist/sap/base/i18n/date/CalendarType.js +44 -0
  180. package/dist/sap/base/i18n/date/CalendarWeekNumbering.js +106 -0
  181. package/dist/sap/base/i18n/date/TimezoneUtils.js +471 -0
  182. package/dist/sap/base/i18n/date/_EnumHelper.js +37 -0
  183. package/dist/sap/base/strings/camelize.js +30 -0
  184. package/dist/sap/base/strings/formatMessage.js +93 -15
  185. package/dist/sap/base/util/LoaderExtensions.d.ts +4 -0
  186. package/dist/sap/base/util/LoaderExtensions.js +11 -4
  187. package/dist/sap/base/util/LoaderExtensions.js.map +1 -0
  188. package/dist/sap/base/util/ObjectPath.d.ts +4 -0
  189. package/dist/sap/base/util/ObjectPath.js +4 -33
  190. package/dist/sap/base/util/ObjectPath.js.map +1 -0
  191. package/dist/sap/base/util/Properties.js +12 -0
  192. package/dist/sap/base/util/Version.js +163 -0
  193. package/dist/sap/base/util/_merge.js +83 -26
  194. package/dist/sap/base/util/array/uniqueSort.js +37 -15
  195. package/dist/sap/base/util/deepClone.js +102 -0
  196. package/dist/sap/base/util/deepEqual.js +75 -55
  197. package/dist/sap/base/util/deepExtend.js +60 -0
  198. package/dist/sap/base/util/extend.js +58 -7
  199. package/dist/sap/base/util/fetch.js +8 -0
  200. package/dist/sap/base/util/isEmptyObject.js +34 -0
  201. package/dist/sap/base/util/isPlainObject.js +35 -1
  202. package/dist/sap/base/util/merge.js +57 -0
  203. package/dist/sap/base/util/mixedFetch.js +3 -0
  204. package/dist/sap/base/util/now.js +22 -7
  205. package/dist/sap/base/util/resolveReference.js +3 -0
  206. package/dist/sap/base/util/uid.js +27 -0
  207. package/dist/sap/ui/Device.js +25 -3
  208. package/dist/sap/ui/Global.js +1 -0
  209. package/dist/sap/ui/VersionInfo.js +14 -0
  210. package/dist/sap/ui/base/DataType.js +708 -0
  211. package/dist/sap/ui/base/DesignTime.js +11 -0
  212. package/dist/sap/ui/base/EventProvider.js +21 -0
  213. package/dist/sap/ui/base/Interface.js +50 -6
  214. package/dist/sap/ui/base/Metadata.js +470 -173
  215. package/dist/sap/ui/base/Object.js +287 -27
  216. package/dist/sap/ui/base/OwnStatics.js +6 -0
  217. package/dist/sap/ui/base/SyncPromise.js +98 -0
  218. package/dist/sap/ui/core/AnimationMode.js +42 -0
  219. package/dist/sap/ui/core/CalendarType.js +24 -8
  220. package/dist/sap/ui/core/Configuration.d.ts +17 -0
  221. package/dist/sap/ui/core/Configuration.js +23 -0
  222. package/dist/sap/ui/core/Configuration.js.map +1 -0
  223. package/dist/sap/ui/core/ControlBehavior.js +11 -0
  224. package/dist/sap/ui/core/Core.d.ts +25 -0
  225. package/dist/sap/ui/core/Core.js +7 -32
  226. package/dist/sap/ui/core/Core.js.map +1 -0
  227. package/dist/sap/ui/core/FormatSettings.d.ts +9 -0
  228. package/dist/sap/ui/core/FormatSettings.js +12 -0
  229. package/dist/sap/ui/core/FormatSettings.js.map +1 -0
  230. package/dist/sap/ui/core/Lib.js +41 -0
  231. package/dist/sap/ui/core/Locale.js +190 -116
  232. package/dist/sap/ui/core/LocaleData.js +2837 -2683
  233. package/dist/sap/ui/core/Supportability.js +5 -0
  234. package/dist/sap/ui/core/Theming.js +39 -0
  235. package/dist/sap/ui/core/_UrlResolver.js +11 -0
  236. package/dist/sap/ui/core/date/Buddhist.js +162 -93
  237. package/dist/sap/ui/core/date/CalendarUtils.js +67 -0
  238. package/dist/sap/ui/core/date/CalendarWeekNumbering.js +30 -0
  239. package/dist/sap/ui/core/date/Gregorian.js +25 -10
  240. package/dist/sap/ui/core/date/Islamic.js +298 -185
  241. package/dist/sap/ui/core/date/Japanese.js +212 -117
  242. package/dist/sap/ui/core/date/Persian.js +324 -195
  243. package/dist/sap/ui/core/date/UI5Date.js +1039 -0
  244. package/dist/sap/ui/core/date/UniversalDate.js +1241 -217
  245. package/dist/sap/ui/core/date/_Calendars.js +10 -1
  246. package/dist/sap/ui/core/format/DateFormat.js +3160 -1781
  247. package/dist/sap/ui/core/format/FormatUtils.js +30 -0
  248. package/dist/sap/ui/core/format/NumberFormat.js +3164 -0
  249. package/dist/sap/ui/core/format/TimezoneUtil.js +93 -0
  250. package/dist/sap/ui/core/getCompatibilityVersion.js +7 -0
  251. package/dist/sap/ui/core/theming/ThemeHelper.js +14 -0
  252. package/dist/sap/ui/security/Security.js +12 -0
  253. package/dist/sap/ui/util/XMLHelper.js +11 -0
  254. package/dist/sap/ui/util/_URL.js +1 -0
  255. package/dist/ui5loader-autoconfig.js +1 -0
  256. package/package-scripts.cjs +35 -0
  257. package/package.json +27 -21
  258. package/tsconfig.json +24 -0
  259. package/used-modules.txt +33 -1
  260. package/dist/dates/calculateWeekNumber.js +0 -51
  261. package/package-scripts.js +0 -31
  262. package/src/Assets.js +0 -2
  263. package/src/DateFormat.js +0 -3
  264. package/src/LocaleData.js +0 -3
  265. package/src/dates/CalendarDate.js +0 -203
  266. package/src/dates/calculateWeekNumber.js +0 -51
  267. package/src/locale/getLocaleData.js +0 -27
  268. package/src/sap/base/util/LoaderExtensions.js +0 -7
  269. package/src/sap/ui/core/Core.js +0 -38
  270. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
  271. /package/{src/features/calendar/Buddhist.js → dist/features/calendar/Buddhist.d.ts} +0 -0
  272. /package/{src/features/calendar/Gregorian.js → dist/features/calendar/Gregorian.d.ts} +0 -0
  273. /package/{src/features/calendar/Islamic.js → dist/features/calendar/Islamic.d.ts} +0 -0
  274. /package/{src/features/calendar/Japanese.js → dist/features/calendar/Japanese.d.ts} +0 -0
  275. /package/{src/features/calendar/Persian.js → dist/features/calendar/Persian.d.ts} +0 -0
@@ -0,0 +1,17 @@
1
+ // called from sapui5, but not supported by us
2
+ const legacyFormats = ["sapUiLegacyTimeFormat", "sapUiABAPTimeFormat", "sapUiLegacyDateFormat", "sapUiABAPDateFormat", "sapUiLegacyNumberFormat", "sapUiABAPNumberFormat"];
3
+ export default {
4
+ getWritableInstance() {
5
+ return {
6
+ get({
7
+ name
8
+ }) {
9
+ if (legacyFormats.includes(name)) {
10
+ return undefined;
11
+ }
12
+ throw new Error("Localization :: missing configuration requested.");
13
+ }
14
+ };
15
+ },
16
+ Type: {}
17
+ };
@@ -0,0 +1,12 @@
1
+ export default {
2
+ active: false,
3
+ fatalThrows: function () {},
4
+ errorThrows: function () {},
5
+ warningThrows: function () {},
6
+ assertThrows: function () {},
7
+ warningRejects: function (fnResolve) {
8
+ if (fnResolve) {
9
+ fnResolve();
10
+ }
11
+ }
12
+ };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * OpenUI5 Formatting Shim
3
+ */
4
+ declare const Formatting: {
5
+ getABAPDateFormat: () => void;
6
+ getCustomIslamicCalendarData: typeof import("@ui5/webcomponents-base/dist/features/LegacyDateFormats.js").default.getLegacyDateCalendarCustomizing;
7
+ getLanguageTag: () => string;
8
+ getCalendarType: () => import("@ui5/webcomponents-base/dist/types/CalendarType.js").default;
9
+ getTrailingCurrencyCode: () => boolean;
10
+ getCustomLocaleData: () => {};
11
+ getCalendarWeekNumbering: () => string;
12
+ };
13
+ export default Formatting;
@@ -0,0 +1,18 @@
1
+ import { getLegacyDateCalendarCustomizing } from "@ui5/webcomponents-base/dist/config/FormatSettings.js";
2
+ import { getCalendarType } from "@ui5/webcomponents-base/dist/config/CalendarType.js";
3
+ import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
4
+ const emptyFn = () => { };
5
+ /**
6
+ * OpenUI5 Formatting Shim
7
+ */
8
+ const Formatting = {
9
+ getABAPDateFormat: emptyFn,
10
+ getCustomIslamicCalendarData: getLegacyDateCalendarCustomizing,
11
+ getLanguageTag: () => getLocale().toString(),
12
+ getCalendarType,
13
+ getTrailingCurrencyCode: () => true,
14
+ getCustomLocaleData: () => ({}),
15
+ getCalendarWeekNumbering: () => "Default",
16
+ };
17
+ export default Formatting;
18
+ //# sourceMappingURL=Formatting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Formatting.js","sourceRoot":"","sources":["../../../../src/sap/base/i18n/Formatting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,uDAAuD,CAAC;AACzG,OAAO,EAAE,eAAe,EAAE,MAAM,qDAAqD,CAAC;AACtF,OAAO,SAAS,MAAM,kDAAkD,CAAC;AAEzE,MAAM,OAAO,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;AAE1B;;GAEG;AACH,MAAM,UAAU,GAAG;IAClB,iBAAiB,EAAE,OAAO;IAC1B,4BAA4B,EAAE,gCAAgC;IAC9D,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE;IAC5C,eAAe;IACf,uBAAuB,EAAE,GAAG,EAAE,CAAC,IAAI;IACnC,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;IAC/B,wBAAwB,EAAE,GAAG,EAAE,CAAC,SAAS;CACzC,CAAC;AAEF,eAAe,UAAU,CAAC","sourcesContent":["import { getLegacyDateCalendarCustomizing } from \"@ui5/webcomponents-base/dist/config/FormatSettings.js\";\nimport { getCalendarType } from \"@ui5/webcomponents-base/dist/config/CalendarType.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\n\nconst emptyFn = () => { };\n\n/**\n * OpenUI5 Formatting Shim\n */\nconst Formatting = {\n\tgetABAPDateFormat: emptyFn,\n\tgetCustomIslamicCalendarData: getLegacyDateCalendarCustomizing,\n\tgetLanguageTag: () => getLocale().toString(),\n\tgetCalendarType,\n\tgetTrailingCurrencyCode: () => true,\n\tgetCustomLocaleData: () => ({}),\n\tgetCalendarWeekNumbering: () => \"Default\",\n};\n\nexport default Formatting;\n"]}
@@ -0,0 +1,179 @@
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 2026 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.146.0
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 hyphen '-'.
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 hyphens 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 hyphen '-' and one or more extension token, each separated
99
+ * again with a hyphen.
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 hyphens 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 hyphens 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
+
134
+ /**
135
+ * @private
136
+ */
137
+ #tagAsString;
138
+ constructor(sLanguageTag) {
139
+ var aResult = rLanguageTag.exec(sLanguageTag.replace(/_/g, "-"));
140
+ // If the given language tag string cannot be parsed by the regular expression above,
141
+ // we should at least tell the developer why the Core fails to load.
142
+ if (aResult === null) {
143
+ throw new TypeError("The given language tag '" + sLanguageTag + "' does not adhere to BCP-47.");
144
+ }
145
+ this.language = aResult[1] || null;
146
+ this.script = aResult[2] || null;
147
+ this.region = aResult[3] || null;
148
+ this.variant = aResult[4] && aResult[4].slice(1) || null; // remove leading hyphen from capturing group
149
+ this.variantSubtags = this.variant ? this.variant.split('-') : [];
150
+ this.extension = aResult[5] && aResult[5].slice(1) || null; // remove leading hyphen from capturing group
151
+ this.extensionSubtags = this.variant ? this.variant.split('-') : [];
152
+ this.privateUse = aResult[6] || null;
153
+ this.privateUseSubtags = this.privateUse ? this.privateUse.slice(2).split('-') : [];
154
+ // convert subtags according to the BCP47 recommendations
155
+ // - language: all lower case
156
+ // - script: lower case with the first letter capitalized
157
+ // - region: all upper case
158
+ if (this.language) {
159
+ this.language = this.language.toLowerCase();
160
+ }
161
+ if (this.script) {
162
+ this.script = this.script.toLowerCase().replace(/^[a-z]/, function ($) {
163
+ return $.toUpperCase();
164
+ });
165
+ }
166
+ if (this.region) {
167
+ this.region = this.region.toUpperCase();
168
+ }
169
+ this.#tagAsString = this.#join(this.language, this.script, this.region, this.variant, this.extension, this.privateUse);
170
+ Object.freeze(this);
171
+ }
172
+ toString() {
173
+ return this.#tagAsString;
174
+ }
175
+ #join() {
176
+ return Array.prototype.filter.call(arguments, Boolean).join("-");
177
+ }
178
+ }
179
+ export default LanguageTag;
@@ -0,0 +1,7 @@
1
+ declare const Localization: {
2
+ getModernLanguage: (sLanguage: string) => string;
3
+ getLanguageTag: () => string;
4
+ getTimezone: () => string;
5
+ setTimezone: () => void;
6
+ };
7
+ export default Localization;
@@ -0,0 +1,17 @@
1
+ import { getTimezone as getConfigTimezone } from "@ui5/webcomponents-base/dist/config/Timezone.js";
2
+ import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
3
+ const M_ISO639_OLD_TO_NEW = {
4
+ "iw": "he",
5
+ "ji": "yi",
6
+ };
7
+ const getModernLanguage = (sLanguage) => {
8
+ return M_ISO639_OLD_TO_NEW[sLanguage] || sLanguage;
9
+ };
10
+ const Localization = {
11
+ getModernLanguage,
12
+ getLanguageTag: () => getLocale().toString(),
13
+ getTimezone: () => getConfigTimezone() || Intl.DateTimeFormat().resolvedOptions().timeZone,
14
+ setTimezone: () => { },
15
+ };
16
+ export default Localization;
17
+ //# sourceMappingURL=Localization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Localization.js","sourceRoot":"","sources":["../../../../src/sap/base/i18n/Localization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AACnG,OAAO,SAAS,MAAM,kDAAkD,CAAC;AAEzE,MAAM,mBAAmB,GAAG;IAC3B,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;CACV,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,EAAE;IAC/C,OAAO,mBAAmB,CAAC,SAA6C,CAAC,IAAI,SAAS,CAAC;AACxF,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG;IACpB,iBAAiB;IACjB,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE;IAC5C,WAAW,EAAE,GAAG,EAAE,CAAC,iBAAiB,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ;IAC1F,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;CACrB,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["import { getTimezone as getConfigTimezone } from \"@ui5/webcomponents-base/dist/config/Timezone.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\n\nconst M_ISO639_OLD_TO_NEW = {\n\t\"iw\": \"he\",\n\t\"ji\": \"yi\",\n};\n\nconst getModernLanguage = (sLanguage: string) => {\n\treturn M_ISO639_OLD_TO_NEW[sLanguage as keyof typeof M_ISO639_OLD_TO_NEW] || sLanguage;\n};\n\nconst Localization = {\n\tgetModernLanguage,\n\tgetLanguageTag: () => getLocale().toString(),\n\tgetTimezone: () => getConfigTimezone() || Intl.DateTimeFormat().resolvedOptions().timeZone,\n\tsetTimezone: () => {},\n};\n\nexport default Localization;\n"]}
@@ -0,0 +1,20 @@
1
+ var oEmptyBundle = {
2
+ getText: function () {
3
+ return "";
4
+ },
5
+ hasText: function () {
6
+ return false;
7
+ },
8
+ getProperty: function () {
9
+ return "";
10
+ }
11
+ };
12
+ var ResourceBundle = {
13
+ create: function () {
14
+ return Promise.resolve(oEmptyBundle);
15
+ },
16
+ _getUrl: function () {
17
+ return "";
18
+ }
19
+ };
20
+ export default ResourceBundle;
@@ -0,0 +1,44 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2026 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+ // Provides type module:sap/base/i18n/date/CalendarType.
7
+ import _EnumHelper from "./_EnumHelper.js";
8
+ /**
9
+ * The types of <code>Calendar</code>.
10
+ *
11
+ * @enum {string}
12
+ * @alias module:sap/base/i18n/date/CalendarType
13
+ * @public
14
+ * @since 1.120
15
+ */
16
+ var CalendarType = {
17
+ /**
18
+ * The Gregorian calendar
19
+ * @public
20
+ */
21
+ Gregorian: "Gregorian",
22
+ /**
23
+ * The Islamic calendar
24
+ * @public
25
+ */
26
+ Islamic: "Islamic",
27
+ /**
28
+ * The Japanese emperor calendar
29
+ * @public
30
+ */
31
+ Japanese: "Japanese",
32
+ /**
33
+ * The Persian Jalali calendar
34
+ * @public
35
+ */
36
+ Persian: "Persian",
37
+ /**
38
+ * The Thai buddhist calendar
39
+ * @public
40
+ */
41
+ Buddhist: "Buddhist"
42
+ };
43
+ _EnumHelper.register("sap.base.i18n.date.CalendarType", CalendarType);
44
+ export default CalendarType;
@@ -0,0 +1,106 @@
1
+ /*!
2
+ * OpenUI5
3
+ * (c) Copyright 2026 SAP SE or an SAP affiliate company.
4
+ * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
+ */
6
+ // Provides type module:sap/base/i18n/date/CalendarWeekNumbering.
7
+ import _EnumHelper from "./_EnumHelper.js";
8
+ /**
9
+ * The <code>CalendarWeekNumbering</code> enum defines how to calculate calendar weeks. Each
10
+ * value defines:
11
+ * <ul>
12
+ * <li>The first day of the week,</li>
13
+ * <li>the first week of the year.</li>
14
+ * </ul>
15
+ *
16
+ * @enum {string}
17
+ * @public
18
+ * @alias module:sap/base/i18n/date/CalendarWeekNumbering
19
+ * @since 1.120
20
+ */
21
+ var CalendarWeekNumbering = {
22
+ /**
23
+ * The default calendar week numbering:
24
+ *
25
+ * The framework determines the week numbering scheme; currently it is derived from the
26
+ * active format locale. Future versions of UI5 might select a different week numbering
27
+ * scheme.
28
+ *
29
+ * @public
30
+ */
31
+ Default: "Default",
32
+ /**
33
+ * Official calendar week numbering in most of Europe (ISO 8601 standard):
34
+ * <ul>
35
+ * <li>Monday is first day of the week,
36
+ * <li>the week containing January 4th is first week of the year.
37
+ * </ul>
38
+ *
39
+ * @public
40
+ */
41
+ ISO_8601: "ISO_8601",
42
+ /**
43
+ * Official calendar week numbering in much of the Middle East (Middle Eastern calendar):
44
+ * <ul>
45
+ * <li>Saturday is first day of the week,
46
+ * <li>the week containing January 1st is first week of the year.
47
+ * </ul>
48
+ *
49
+ * @public
50
+ */
51
+ MiddleEastern: "MiddleEastern",
52
+ /**
53
+ * Official calendar week numbering in the United States, Canada, Brazil, Israel, Japan, and
54
+ * other countries (Western traditional calendar):
55
+ * <ul>
56
+ * <li>Sunday is first day of the week,
57
+ * <li>the week containing January 1st is first week of the year.
58
+ * </ul>
59
+ *
60
+ * @public
61
+ */
62
+ WesternTraditional: "WesternTraditional"
63
+ };
64
+ _EnumHelper.register("sap.base.i18n.date.CalendarWeekNumbering", CalendarWeekNumbering);
65
+
66
+ /**
67
+ * Returns an object containing the week configuration values for the given calendar week
68
+ * numbering algorithm.
69
+ *
70
+ * @param {module:sap/base/i18n/date/CalendarWeekNumbering} [sCalendarWeekNumbering=Default]
71
+ * The calendar week numbering algorithm
72
+ * @returns {{firstDayOfWeek: 0|1|2|3|4|5|6, minimalDaysInFirstWeek: 1|2|3|4|5|6|7}|undefined}
73
+ * The week configuration values or <code>undefined</code> if the given calendar week
74
+ * numbering algorithm is "Default"
75
+ *
76
+ * @function
77
+ * @name module:sap/base/i18n/date/CalendarWeekNumbering.getWeekConfigurationValues
78
+ * @private
79
+ */
80
+ Object.defineProperty(CalendarWeekNumbering, "getWeekConfigurationValues", {
81
+ // configurable : false,
82
+ // enumerable : false,
83
+ value: function (sCalendarWeekNumbering) {
84
+ switch (sCalendarWeekNumbering) {
85
+ case CalendarWeekNumbering.ISO_8601:
86
+ return {
87
+ firstDayOfWeek: 1,
88
+ minimalDaysInFirstWeek: 4
89
+ };
90
+ case CalendarWeekNumbering.MiddleEastern:
91
+ return {
92
+ firstDayOfWeek: 6,
93
+ minimalDaysInFirstWeek: 1
94
+ };
95
+ case CalendarWeekNumbering.WesternTraditional:
96
+ return {
97
+ firstDayOfWeek: 0,
98
+ minimalDaysInFirstWeek: 1
99
+ };
100
+ default:
101
+ return undefined;
102
+ }
103
+ }
104
+ // writable : false
105
+ });
106
+ export default CalendarWeekNumbering;