@ui5/webcomponents-localization 0.0.0-dff5837d7 → 0.0.0-e55c2cec6

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 (204) hide show
  1. package/.eslintignore +1 -0
  2. package/CHANGELOG.md +260 -0
  3. package/README.md +36 -6
  4. package/dist/Assets-static.d.ts +1 -0
  5. package/dist/Assets-static.js +3 -0
  6. package/dist/Assets-static.js.map +1 -0
  7. package/dist/Assets.d.ts +1 -0
  8. package/dist/Assets.js +1 -0
  9. package/dist/Assets.js.map +1 -0
  10. package/dist/DateFormat.d.ts +6 -0
  11. package/dist/DateFormat.js +6 -2
  12. package/dist/DateFormat.js.map +1 -0
  13. package/dist/LocaleData.d.ts +6 -0
  14. package/dist/LocaleData.js +6 -2
  15. package/dist/LocaleData.js.map +1 -0
  16. package/dist/dates/CalendarDate.d.ts +41 -0
  17. package/dist/dates/CalendarDate.js +170 -181
  18. package/dist/dates/CalendarDate.js.map +1 -0
  19. package/dist/dates/ExtremeDates.d.ts +5 -0
  20. package/dist/dates/ExtremeDates.js +29 -0
  21. package/dist/dates/ExtremeDates.js.map +1 -0
  22. package/dist/dates/UniversalDate.d.ts +46 -0
  23. package/dist/dates/UniversalDate.js +5 -0
  24. package/dist/dates/UniversalDate.js.map +1 -0
  25. package/dist/dates/calculateWeekNumber.d.ts +4 -0
  26. package/dist/dates/calculateWeekNumber.js +42 -48
  27. package/dist/dates/calculateWeekNumber.js.map +1 -0
  28. package/dist/dates/convertMonthNumbersToMonthNames.d.ts +16 -0
  29. package/dist/dates/convertMonthNumbersToMonthNames.js +30 -0
  30. package/dist/dates/convertMonthNumbersToMonthNames.js.map +1 -0
  31. package/dist/dates/getDaysInMonth.d.ts +3 -0
  32. package/dist/dates/getDaysInMonth.js +10 -0
  33. package/dist/dates/getDaysInMonth.js.map +1 -0
  34. package/dist/dates/getRoundedTimestamp.d.ts +7 -0
  35. package/dist/dates/getRoundedTimestamp.js +14 -0
  36. package/dist/dates/getRoundedTimestamp.js.map +1 -0
  37. package/dist/dates/getTodayUTCTimestamp.d.ts +7 -0
  38. package/dist/dates/getTodayUTCTimestamp.js +8 -0
  39. package/dist/dates/getTodayUTCTimestamp.js.map +1 -0
  40. package/dist/dates/modifyDateBy.d.ts +13 -0
  41. package/dist/dates/modifyDateBy.js +40 -0
  42. package/dist/dates/modifyDateBy.js.map +1 -0
  43. package/dist/dates/transformDateToSecondaryType.d.ts +7 -0
  44. package/dist/dates/transformDateToSecondaryType.js +17 -0
  45. package/dist/dates/transformDateToSecondaryType.js.map +1 -0
  46. package/{src/features/calendar/Buddhist.js → dist/features/calendar/Buddhist.d.ts} +0 -0
  47. package/dist/features/calendar/Buddhist.js +1 -0
  48. package/dist/features/calendar/Buddhist.js.map +1 -0
  49. package/{src/features/calendar/Gregorian.js → dist/features/calendar/Gregorian.d.ts} +0 -0
  50. package/dist/features/calendar/Gregorian.js +1 -0
  51. package/dist/features/calendar/Gregorian.js.map +1 -0
  52. package/{src/features/calendar/Islamic.js → dist/features/calendar/Islamic.d.ts} +0 -0
  53. package/dist/features/calendar/Islamic.js +1 -0
  54. package/dist/features/calendar/Islamic.js.map +1 -0
  55. package/{src/features/calendar/Japanese.js → dist/features/calendar/Japanese.d.ts} +0 -0
  56. package/dist/features/calendar/Japanese.js +1 -0
  57. package/dist/features/calendar/Japanese.js.map +1 -0
  58. package/{src/features/calendar/Persian.js → dist/features/calendar/Persian.d.ts} +0 -0
  59. package/dist/features/calendar/Persian.js +1 -0
  60. package/dist/features/calendar/Persian.js.map +1 -0
  61. package/dist/generated/assets/cldr/ar.json +803 -3
  62. package/dist/generated/assets/cldr/ar_EG.json +803 -3
  63. package/dist/generated/assets/cldr/ar_SA.json +803 -3
  64. package/dist/generated/assets/cldr/bg.json +768 -3
  65. package/dist/generated/assets/cldr/ca.json +802 -3
  66. package/dist/generated/assets/cldr/cs.json +801 -3
  67. package/dist/generated/assets/cldr/cy.json +6614 -0
  68. package/dist/generated/assets/cldr/da.json +768 -3
  69. package/dist/generated/assets/cldr/de.json +802 -3
  70. package/dist/generated/assets/cldr/de_AT.json +802 -3
  71. package/dist/generated/assets/cldr/de_CH.json +802 -3
  72. package/dist/generated/assets/cldr/el.json +701 -3
  73. package/dist/generated/assets/cldr/el_CY.json +701 -3
  74. package/dist/generated/assets/cldr/en.json +767 -3
  75. package/dist/generated/assets/cldr/en_AU.json +768 -4
  76. package/dist/generated/assets/cldr/en_GB.json +767 -3
  77. package/dist/generated/assets/cldr/en_HK.json +767 -3
  78. package/dist/generated/assets/cldr/en_IE.json +767 -3
  79. package/dist/generated/assets/cldr/en_IN.json +767 -3
  80. package/dist/generated/assets/cldr/en_NZ.json +767 -3
  81. package/dist/generated/assets/cldr/en_PG.json +767 -3
  82. package/dist/generated/assets/cldr/en_SG.json +767 -3
  83. package/dist/generated/assets/cldr/en_ZA.json +767 -3
  84. package/dist/generated/assets/cldr/es.json +734 -3
  85. package/dist/generated/assets/cldr/es_AR.json +734 -3
  86. package/dist/generated/assets/cldr/es_BO.json +737 -6
  87. package/dist/generated/assets/cldr/es_CL.json +737 -6
  88. package/dist/generated/assets/cldr/es_CO.json +734 -3
  89. package/dist/generated/assets/cldr/es_MX.json +737 -6
  90. package/dist/generated/assets/cldr/es_PE.json +737 -6
  91. package/dist/generated/assets/cldr/es_UY.json +737 -6
  92. package/dist/generated/assets/cldr/es_VE.json +736 -5
  93. package/dist/generated/assets/cldr/et.json +767 -3
  94. package/dist/generated/assets/cldr/fa.json +769 -3
  95. package/dist/generated/assets/cldr/fi.json +801 -3
  96. package/dist/generated/assets/cldr/fr.json +767 -3
  97. package/dist/generated/assets/cldr/fr_BE.json +767 -3
  98. package/dist/generated/assets/cldr/fr_CA.json +767 -3
  99. package/dist/generated/assets/cldr/fr_CH.json +767 -3
  100. package/dist/generated/assets/cldr/fr_LU.json +767 -3
  101. package/dist/generated/assets/cldr/he.json +802 -3
  102. package/dist/generated/assets/cldr/hi.json +734 -3
  103. package/dist/generated/assets/cldr/hr.json +767 -3
  104. package/dist/generated/assets/cldr/hu.json +835 -3
  105. package/dist/generated/assets/cldr/id.json +767 -3
  106. package/dist/generated/assets/cldr/it.json +767 -3
  107. package/dist/generated/assets/cldr/it_CH.json +767 -3
  108. package/dist/generated/assets/cldr/ja.json +801 -3
  109. package/dist/generated/assets/cldr/kk.json +767 -3
  110. package/dist/generated/assets/cldr/ko.json +801 -3
  111. package/dist/generated/assets/cldr/lt.json +767 -3
  112. package/dist/generated/assets/cldr/lv.json +767 -3
  113. package/dist/generated/assets/cldr/ms.json +735 -3
  114. package/dist/generated/assets/cldr/nb.json +768 -3
  115. package/dist/generated/assets/cldr/nl.json +734 -3
  116. package/dist/generated/assets/cldr/nl_BE.json +734 -3
  117. package/dist/generated/assets/cldr/pl.json +801 -3
  118. package/dist/generated/assets/cldr/pt.json +767 -3
  119. package/dist/generated/assets/cldr/pt_PT.json +767 -3
  120. package/dist/generated/assets/cldr/ro.json +767 -3
  121. package/dist/generated/assets/cldr/ru.json +767 -3
  122. package/dist/generated/assets/cldr/ru_UA.json +767 -3
  123. package/dist/generated/assets/cldr/sk.json +801 -3
  124. package/dist/generated/assets/cldr/sl.json +801 -3
  125. package/dist/generated/assets/cldr/sr.json +767 -3
  126. package/dist/generated/assets/cldr/sr_Latn.json +5891 -0
  127. package/dist/generated/assets/cldr/sv.json +768 -3
  128. package/dist/generated/assets/cldr/th.json +835 -3
  129. package/dist/generated/assets/cldr/tr.json +835 -3
  130. package/dist/generated/assets/cldr/uk.json +767 -3
  131. package/dist/generated/assets/cldr/vi.json +767 -3
  132. package/dist/generated/assets/cldr/zh_CN.json +803 -4
  133. package/dist/generated/assets/cldr/zh_HK.json +803 -4
  134. package/dist/generated/assets/cldr/zh_SG.json +803 -4
  135. package/dist/generated/assets/cldr/zh_TW.json +802 -3
  136. package/dist/generated/json-imports/LocaleData-static.js +90 -0
  137. package/dist/generated/json-imports/LocaleData.js +88 -91
  138. package/dist/getCachedLocaleDataInstance.d.ts +4 -0
  139. package/dist/getCachedLocaleDataInstance.js +10 -0
  140. package/dist/getCachedLocaleDataInstance.js.map +1 -0
  141. package/dist/locale/getLocaleData.d.ts +11 -0
  142. package/dist/locale/getLocaleData.js +13 -17
  143. package/dist/locale/getLocaleData.js.map +1 -0
  144. package/dist/sap/base/Log.js +28 -37
  145. package/dist/sap/base/assert.js +5 -10
  146. package/dist/sap/base/util/LoaderExtensions.d.ts +4 -0
  147. package/dist/sap/base/util/LoaderExtensions.js +11 -4
  148. package/dist/sap/base/util/LoaderExtensions.js.map +1 -0
  149. package/dist/sap/base/util/array/uniqueSort.js +7 -7
  150. package/dist/sap/base/util/deepEqual.js +1 -5
  151. package/dist/sap/ui/base/Interface.js +3 -5
  152. package/dist/sap/ui/base/Metadata.js +1 -3
  153. package/dist/sap/ui/base/Object.js +26 -2
  154. package/dist/sap/ui/core/Configuration.d.ts +17 -0
  155. package/dist/sap/ui/core/Configuration.js +20 -0
  156. package/dist/sap/ui/core/Configuration.js.map +1 -0
  157. package/dist/sap/ui/core/Core.d.ts +26 -0
  158. package/dist/sap/ui/core/Core.js +7 -32
  159. package/dist/sap/ui/core/Core.js.map +1 -0
  160. package/dist/sap/ui/core/FormatSettings.d.ts +10 -0
  161. package/dist/sap/ui/core/FormatSettings.js +13 -0
  162. package/dist/sap/ui/core/FormatSettings.js.map +1 -0
  163. package/dist/sap/ui/core/Locale.js +70 -31
  164. package/dist/sap/ui/core/LocaleData.js +133 -1506
  165. package/dist/sap/ui/core/date/Buddhist.js +0 -6
  166. package/dist/sap/ui/core/date/CalendarUtils.js +36 -0
  167. package/dist/sap/ui/core/date/CalendarWeekNumbering.js +7 -0
  168. package/dist/sap/ui/core/date/Islamic.js +3 -3
  169. package/dist/sap/ui/core/date/Japanese.js +4 -4
  170. package/dist/sap/ui/core/date/UniversalDate.js +82 -23
  171. package/dist/sap/ui/core/format/DateFormat.js +530 -222
  172. package/dist/sap/ui/core/format/TimezoneUtil.js +94 -0
  173. package/package-scripts.js +14 -7
  174. package/package.json +13 -14
  175. package/src/Assets-static.ts +2 -0
  176. package/src/{Assets.js → Assets.ts} +0 -0
  177. package/src/DateFormat.ts +8 -0
  178. package/src/LocaleData.ts +8 -0
  179. package/src/dates/{CalendarDate.js → CalendarDate.ts} +64 -35
  180. package/src/dates/ExtremeDates.ts +40 -0
  181. package/src/dates/UniversalDate.ts +51 -0
  182. package/src/dates/{calculateWeekNumber.js → calculateWeekNumber.ts} +5 -3
  183. package/src/dates/convertMonthNumbersToMonthNames.ts +34 -0
  184. package/src/dates/getDaysInMonth.ts +11 -0
  185. package/src/dates/getRoundedTimestamp.ts +14 -0
  186. package/src/dates/getTodayUTCTimestamp.ts +10 -0
  187. package/src/dates/modifyDateBy.ts +42 -0
  188. package/src/dates/transformDateToSecondaryType.ts +21 -0
  189. package/src/features/calendar/Buddhist.ts +1 -0
  190. package/src/features/calendar/Gregorian.ts +1 -0
  191. package/src/features/calendar/Islamic.ts +1 -0
  192. package/src/features/calendar/Japanese.ts +1 -0
  193. package/src/features/calendar/Persian.ts +1 -0
  194. package/src/getCachedLocaleDataInstance.ts +15 -0
  195. package/src/locale/{getLocaleData.js → getLocaleData.ts} +9 -8
  196. package/src/sap/base/util/LoaderExtensions.ts +17 -0
  197. package/src/sap/ui/core/{Core.js → Configuration.ts} +5 -21
  198. package/src/sap/ui/core/Core.ts +15 -0
  199. package/src/sap/ui/core/FormatSettings.ts +15 -0
  200. package/tsconfig.json +13 -0
  201. package/used-modules.txt +4 -1
  202. package/src/DateFormat.js +0 -3
  203. package/src/LocaleData.js +0 -3
  204. package/src/sap/base/util/LoaderExtensions.js +0 -7
@@ -1,4 +1,3 @@
1
- import Interface from './Interface.js';
2
1
  import Metadata from './Metadata.js';
3
2
  import Log from '../../base/Log.js';
4
3
  var BaseObject = Metadata.createClass('sap.ui.base.Object', {
@@ -11,7 +10,7 @@ var BaseObject = Metadata.createClass('sap.ui.base.Object', {
11
10
  BaseObject.prototype.destroy = function () {
12
11
  };
13
12
  BaseObject.prototype.getInterface = function () {
14
- var oInterface = new Interface(this, this.getMetadata().getAllPublicMethods());
13
+ var oInterface = new BaseObject._Interface(this, this.getMetadata().getAllPublicMethods());
15
14
  this.getInterface = function () {
16
15
  return oInterface;
17
16
  };
@@ -37,4 +36,29 @@ BaseObject.prototype.isA = function (vTypeName) {
37
36
  BaseObject.isA = function (oObject, vTypeName) {
38
37
  return oObject instanceof BaseObject && oObject.isA(vTypeName);
39
38
  };
39
+ BaseObject._Interface = function (oObject, aMethods, _bReturnFacade) {
40
+ if (!oObject) {
41
+ return oObject;
42
+ }
43
+ function fCreateDelegator(oObject, sMethodName) {
44
+ return function () {
45
+ var tmp = oObject[sMethodName].apply(oObject, arguments);
46
+ if (_bReturnFacade) {
47
+ return this;
48
+ } else {
49
+ return tmp instanceof BaseObject ? tmp.getInterface() : tmp;
50
+ }
51
+ };
52
+ }
53
+ if (!aMethods) {
54
+ return {};
55
+ }
56
+ var sMethodName;
57
+ for (var i = 0, ml = aMethods.length; i < ml; i++) {
58
+ sMethodName = aMethods[i];
59
+ if (!oObject[sMethodName] || typeof oObject[sMethodName] === 'function') {
60
+ this[sMethodName] = fCreateDelegator(oObject, sMethodName);
61
+ }
62
+ }
63
+ };
40
64
  export default BaseObject;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * OpenUI5 Configuration Shim
3
+ */
4
+ declare const Configuration: {
5
+ getLanguage: () => string | undefined;
6
+ getCalendarType: () => import("@ui5/webcomponents-base/dist/types/CalendarType.js").default;
7
+ getSupportedLanguages: () => string[] | null;
8
+ getOriginInfo: () => void;
9
+ getFormatSettings: () => {
10
+ getFormatLocale: (lang?: string | undefined) => import("@ui5/webcomponents-base/dist/locale/Locale.js").default;
11
+ getLegacyDateFormat: () => void;
12
+ getLegacyDateCalendarCustomizing: () => void;
13
+ getCustomLocaleData: () => void;
14
+ };
15
+ getTimezone: () => string;
16
+ };
17
+ export default Configuration;
@@ -0,0 +1,20 @@
1
+ import { getLanguage } from "@ui5/webcomponents-base/dist/config/Language.js";
2
+ import { getCalendarType } from "@ui5/webcomponents-base/dist/config/CalendarType.js";
3
+ import getDesigntimePropertyAsArray from "@ui5/webcomponents-base/dist/util/getDesigntimePropertyAsArray.js";
4
+ // @ts-ignore
5
+ import TimezoneUtil from "./format/TimezoneUtil.js";
6
+ import FormatSettings from "./FormatSettings.js";
7
+ const emptyFn = () => { };
8
+ /**
9
+ * OpenUI5 Configuration Shim
10
+ */
11
+ const Configuration = {
12
+ getLanguage,
13
+ getCalendarType,
14
+ getSupportedLanguages: () => getDesigntimePropertyAsArray("$core-i18n-locales:,ar,bg,ca,cs,da,de,el,en,es,et,fi,fr,hi,hr,hu,it,iw,ja,ko,lt,lv,nl,no,pl,pt,ro,ru,sh,sk,sl,sv,th,tr,uk,vi,zh_CN,zh_TW$"),
15
+ getOriginInfo: emptyFn,
16
+ getFormatSettings: () => FormatSettings,
17
+ getTimezone: () => TimezoneUtil.getLocalTimezone(),
18
+ };
19
+ export default Configuration;
20
+ //# sourceMappingURL=Configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Configuration.js","sourceRoot":"","sources":["../../../../src/sap/ui/core/Configuration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,qDAAqD,CAAC;AACtF,OAAO,4BAA4B,MAAM,mEAAmE,CAAC;AAC7G,aAAa;AACb,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,MAAM,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AAEzB;;GAEG;AACH,MAAM,aAAa,GAAG;IACrB,WAAW;IACX,eAAe;IACf,qBAAqB,EAAE,GAAG,EAAE,CAAC,4BAA4B,CAAC,2IAA2I,CAAC;IACtM,aAAa,EAAE,OAAO;IACtB,iBAAiB,EAAE,GAAG,EAAE,CAAC,cAAc;IACvC,WAAW,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAY;CAC5D,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * OpenUI5 Core shim
3
+ */
4
+ declare const Core: {
5
+ getConfiguration: () => {
6
+ getLanguage: () => string | undefined;
7
+ getCalendarType: () => import("@ui5/webcomponents-base/dist/types/CalendarType.js").default;
8
+ getSupportedLanguages: () => string[] | null;
9
+ getOriginInfo: () => void;
10
+ getFormatSettings: () => {
11
+ getFormatLocale: (lang?: string | undefined) => import("@ui5/webcomponents-base/dist/locale/Locale.js").default;
12
+ getLegacyDateFormat: () => void;
13
+ getLegacyDateCalendarCustomizing: () => void;
14
+ getCustomLocaleData: () => void;
15
+ };
16
+ getTimezone: () => string;
17
+ };
18
+ getLibraryResourceBundle: void;
19
+ getFormatSettings: () => {
20
+ getFormatLocale: (lang?: string | undefined) => import("@ui5/webcomponents-base/dist/locale/Locale.js").default;
21
+ getLegacyDateFormat: () => void;
22
+ getLegacyDateCalendarCustomizing: () => void;
23
+ getCustomLocaleData: () => void;
24
+ };
25
+ };
26
+ export default Core;
@@ -1,38 +1,13 @@
1
- import { getLanguage } from "@ui5/webcomponents-base/dist/config/Language.js";
2
- import { getCalendarType } from "@ui5/webcomponents-base/dist/config/CalendarType.js";
3
- import getDesigntimePropertyAsArray from "@ui5/webcomponents-base/dist/util/getDesigntimePropertyAsArray.js";
4
- import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
5
-
6
- const emptyFn = () => {};
7
-
8
- /**
9
- * OpenUI5 FormatSettings shim
10
- */
11
- const FormatSettings = {
12
- getFormatLocale: getLocale,
13
- getLegacyDateFormat: emptyFn,
14
- getLegacyDateCalendarCustomizing: emptyFn,
15
- getCustomLocaleData: emptyFn,
16
- };
17
-
18
- /**
19
- * OpenUI5 Configuration Shim
20
- */
21
- const Configuration = {
22
- getLanguage,
23
- getCalendarType,
24
- getSupportedLanguages: () => getDesigntimePropertyAsArray("$core-i18n-locales:,ar,bg,ca,cs,da,de,el,en,es,et,fi,fr,hi,hr,hu,it,iw,ja,ko,lt,lv,nl,no,pl,pt,ro,ru,sh,sk,sl,sv,th,tr,uk,vi,zh_CN,zh_TW$"),
25
- getOriginInfo: emptyFn,
26
- getFormatSettings: () => FormatSettings,
27
- };
28
-
1
+ import FormatSettings from "./FormatSettings.js";
2
+ import Configuration from "./Configuration.js";
3
+ const emptyFn = () => { };
29
4
  /**
30
5
  * OpenUI5 Core shim
31
6
  */
32
7
  const Core = {
33
- getConfiguration: () => Configuration,
34
- getLibraryResourceBundle: emptyFn(),
35
- getFormatSettings: () => FormatSettings,
8
+ getConfiguration: () => Configuration,
9
+ getLibraryResourceBundle: emptyFn(),
10
+ getFormatSettings: () => FormatSettings,
36
11
  };
37
-
38
12
  export default Core;
13
+ //# sourceMappingURL=Core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Core.js","sourceRoot":"","sources":["../../../../src/sap/ui/core/Core.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AAEzB;;GAEG;AACH,MAAM,IAAI,GAAG;IACZ,gBAAgB,EAAE,GAAG,EAAE,CAAC,aAAa;IACrC,wBAAwB,EAAE,OAAO,EAAE;IACnC,iBAAiB,EAAE,GAAG,EAAE,CAAC,cAAc;CACvC,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * OpenUI5 FormatSettings shim
3
+ */
4
+ declare const FormatSettings: {
5
+ getFormatLocale: (lang?: string | undefined) => import("@ui5/webcomponents-base/dist/locale/Locale").default;
6
+ getLegacyDateFormat: () => void;
7
+ getLegacyDateCalendarCustomizing: () => void;
8
+ getCustomLocaleData: () => void;
9
+ };
10
+ export default FormatSettings;
@@ -0,0 +1,13 @@
1
+ import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
2
+ const emptyFn = () => { };
3
+ /**
4
+ * OpenUI5 FormatSettings shim
5
+ */
6
+ const FormatSettings = {
7
+ getFormatLocale: getLocale,
8
+ getLegacyDateFormat: emptyFn,
9
+ getLegacyDateCalendarCustomizing: emptyFn,
10
+ getCustomLocaleData: emptyFn,
11
+ };
12
+ export default FormatSettings;
13
+ //# sourceMappingURL=FormatSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormatSettings.js","sourceRoot":"","sources":["../../../../src/sap/ui/core/FormatSettings.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,kDAAkD,CAAC;AAEzE,MAAM,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AAEzB;;GAEG;AACH,MAAM,cAAc,GAAG;IACtB,eAAe,EAAE,SAAS;IAC1B,mBAAmB,EAAE,OAAO;IAC5B,gCAAgC,EAAE,OAAO;IACzC,mBAAmB,EAAE,OAAO;CAC5B,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -1,12 +1,13 @@
1
1
  import BaseObject from '../base/Object.js';
2
2
  import assert from '../../base/assert.js';
3
+ import CalendarType from './CalendarType.js';
3
4
  var rLocale = /^((?:[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;
4
5
  var Locale = BaseObject.extend('sap.ui.core.Locale', {
5
6
  constructor: function (sLocaleId) {
6
7
  BaseObject.apply(this);
7
8
  var aResult = rLocale.exec(sLocaleId.replace(/_/g, '-'));
8
9
  if (aResult === null) {
9
- throw 'The given language \'' + sLocaleId + '\' does not adhere to BCP-47.';
10
+ throw new TypeError('The given language \'' + sLocaleId + '\' does not adhere to BCP-47.');
10
11
  }
11
12
  this.sLocaleId = sLocaleId;
12
13
  this.sLanguage = aResult[1] || null;
@@ -59,54 +60,74 @@ var Locale = BaseObject.extend('sap.ui.core.Locale', {
59
60
  return this.getPrivateUseSubtags().indexOf(sSubtag) >= 0;
60
61
  },
61
62
  toString: function () {
62
- var r = [this.sLanguage];
63
- if (this.sScript) {
64
- r.push(this.sScript);
65
- }
66
- if (this.sRegion) {
67
- r.push(this.sRegion);
68
- }
69
- if (this.sVariant) {
70
- r.push(this.sVariant);
71
- }
72
- if (this.sExtension) {
73
- r.push(this.sExtension);
74
- }
75
- if (this.sPrivateUse) {
76
- r.push(this.sPrivateUse);
63
+ return join(this.sLanguage, this.sScript, this.sRegion, this.sVariant, this.sExtension, this.sPrivateUse);
64
+ },
65
+ toLanguageTag: function () {
66
+ var sLanguage = this.getModernLanguage();
67
+ var sScript = this.sScript;
68
+ if (sLanguage === 'sr' && sScript === 'Latn') {
69
+ sLanguage = 'sh';
70
+ sScript = null;
77
71
  }
78
- return r.join('-');
72
+ return join(sLanguage, sScript, this.sRegion, this.sVariant, this.sExtension, this.sPrivateUse);
73
+ },
74
+ getModernLanguage: function () {
75
+ return M_ISO639_OLD_TO_NEW[this.sLanguage] || this.sLanguage;
79
76
  },
80
77
  getSAPLogonLanguage: function () {
81
- var sLanguage = this.sLanguage || '', m;
78
+ return this._getSAPLogonLanguage();
79
+ },
80
+ _getSAPLogonLanguage: function () {
81
+ var sLanguage = this.sLanguage || '';
82
82
  if (sLanguage.indexOf('-') >= 0) {
83
83
  sLanguage = sLanguage.slice(0, sLanguage.indexOf('-'));
84
84
  }
85
85
  sLanguage = M_ISO639_OLD_TO_NEW[sLanguage] || sLanguage;
86
- if (sLanguage === 'zh') {
87
- if (this.sScript === 'Hant' || !this.sScript && this.sRegion === 'TW') {
88
- sLanguage = 'zf';
89
- }
90
- }
91
- if (this.sPrivateUse && (m = /-(saptrc|sappsd)(?:-|$)/i.exec(this.sPrivateUse))) {
92
- sLanguage = m[1].toLowerCase() === 'saptrc' ? '1Q' : '2Q';
86
+ if (sLanguage === 'zh' && !this.sScript && this.sRegion === 'TW') {
87
+ return 'ZF';
93
88
  }
94
- return sLanguage.toUpperCase();
89
+ return M_LOCALE_TO_ABAP_LANGUAGE[join(sLanguage, this.sScript)] || M_LOCALE_TO_ABAP_LANGUAGE[join(sLanguage, this.sRegion)] || M_LOCALE_TO_ABAP_LANGUAGE[getPseudoLanguageTag(this.sPrivateUse)] || sLanguage.toUpperCase();
90
+ },
91
+ getPreferredCalendarType: function () {
92
+ return Locale._mPreferredCalendar[this.getLanguage() + '-' + this.getRegion()] || Locale._mPreferredCalendar[this.getLanguage()] || Locale._mPreferredCalendar['default'];
95
93
  }
96
94
  });
95
+ function getPseudoLanguageTag(sPrivateUse) {
96
+ if (sPrivateUse) {
97
+ var m = /-(saptrc|sappsd|saprigi)(?:-|$)/i.exec(sPrivateUse);
98
+ return m && 'en-US-x-' + m[1].toLowerCase();
99
+ }
100
+ }
97
101
  var M_ISO639_OLD_TO_NEW = {
98
102
  'iw': 'he',
99
- 'ji': 'yi',
100
- 'in': 'id',
101
- 'sh': 'sr'
103
+ 'ji': 'yi'
102
104
  };
105
+ var M_ABAP_LANGUAGE_TO_LOCALE = {
106
+ 'ZH': 'zh-Hans',
107
+ 'ZF': 'zh-Hant',
108
+ 'SH': 'sr-Latn',
109
+ '6N': 'en-GB',
110
+ '1P': 'pt-PT',
111
+ '1X': 'es-MX',
112
+ '3F': 'fr-CA',
113
+ '1Q': 'en-US-x-saptrc',
114
+ '2Q': 'en-US-x-sappsd',
115
+ '3Q': 'en-US-x-saprigi'
116
+ };
117
+ var M_LOCALE_TO_ABAP_LANGUAGE = inverse(M_ABAP_LANGUAGE_TO_LOCALE);
103
118
  function getDesigntimePropertyAsArray(sValue) {
104
119
  var m = /\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(sValue);
105
120
  return m && m[2] ? m[2].split(/,/) : null;
106
121
  }
107
122
  var A_RTL_LOCALES = getDesigntimePropertyAsArray('$cldr-rtl-locales:ar,fa,he$') || [];
108
- Locale._cldrLocales = getDesigntimePropertyAsArray('$cldr-locales:ar,ar_EG,ar_SA,bg,br,ca,cs,da,de,de_AT,de_CH,el,el_CY,en,en_AU,en_GB,en_HK,en_IE,en_IN,en_NZ,en_PG,en_SG,en_ZA,es,es_AR,es_BO,es_CL,es_CO,es_MX,es_PE,es_UY,es_VE,et,fa,fi,fr,fr_BE,fr_CA,fr_CH,fr_LU,he,hi,hr,hu,id,it,it_CH,ja,kk,ko,lt,lv,ms,nb,nl,nl_BE,nn,pl,pt,pt_PT,ro,ru,ru_UA,sk,sl,sr,sv,th,tr,uk,vi,zh_CN,zh_HK,zh_SG,zh_TW$');
109
- Locale._coreI18nLocales = getDesigntimePropertyAsArray('$core-i18n-locales:,ar,bg,ca,cs,da,de,el,en,es,et,fi,fr,hi,hr,hu,it,iw,ja,kk,ko,lt,lv,ms,nl,no,pl,pt,ro,ru,sh,sk,sl,sv,th,tr,uk,vi,zh_CN,zh_TW$');
123
+ Locale._cldrLocales = getDesigntimePropertyAsArray('$cldr-locales:ar,ar_EG,ar_SA,bg,ca,cy,cs,da,de,de_AT,de_CH,el,el_CY,en,en_AU,en_GB,en_HK,en_IE,en_IN,en_NZ,en_PG,en_SG,en_ZA,es,es_AR,es_BO,es_CL,es_CO,es_MX,es_PE,es_UY,es_VE,et,fa,fi,fr,fr_BE,fr_CA,fr_CH,fr_LU,he,hi,hr,hu,id,it,it_CH,ja,kk,ko,lt,lv,ms,nb,nl,nl_BE,pl,pt,pt_PT,ro,ru,ru_UA,sk,sl,sr,sr_Latn,sv,th,tr,uk,vi,zh_CN,zh_HK,zh_SG,zh_TW$');
124
+ Locale._mPreferredCalendar = {
125
+ 'ar-SA': CalendarType.Islamic,
126
+ 'fa': CalendarType.Persian,
127
+ 'th': CalendarType.Buddhist,
128
+ 'default': CalendarType.Gregorian
129
+ };
130
+ Locale._coreI18nLocales = getDesigntimePropertyAsArray('$core-i18n-locales:,ar,bg,ca,cs,da,de,el,en,en_GB,es,es_MX,et,fi,fr,hi,hr,hu,it,iw,ja,kk,ko,lt,lv,ms,nl,no,pl,pt,ro,ru,sh,sk,sl,sv,th,tr,uk,vi,zh_CN,zh_TW$');
110
131
  Locale._impliesRTL = function (vLanguage) {
111
132
  var oLocale = vLanguage instanceof Locale ? vLanguage : new Locale(vLanguage);
112
133
  var sLanguage = oLocale.getLanguage() || '';
@@ -117,4 +138,22 @@ Locale._impliesRTL = function (vLanguage) {
117
138
  }
118
139
  return A_RTL_LOCALES.indexOf(sLanguage) >= 0;
119
140
  };
141
+ Locale.fromSAPLogonLanguage = function (sSAPLogonLanguage) {
142
+ if (sSAPLogonLanguage && typeof sSAPLogonLanguage === 'string') {
143
+ sSAPLogonLanguage = M_ABAP_LANGUAGE_TO_LOCALE[sSAPLogonLanguage.toUpperCase()] || sSAPLogonLanguage;
144
+ try {
145
+ return new Locale(sSAPLogonLanguage);
146
+ } catch (e) {
147
+ }
148
+ }
149
+ };
150
+ function join() {
151
+ return Array.prototype.filter.call(arguments, Boolean).join('-');
152
+ }
153
+ function inverse(obj) {
154
+ return Object.keys(obj).reduce(function (inv, key) {
155
+ inv[obj[key]] = key;
156
+ return inv;
157
+ }, {});
158
+ }
120
159
  export default Locale;