index.js 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. exports.localeToNumber = localeToNumber;
  8. exports.numberToLocale = numberToLocale;
  9. var _index = _interopRequireDefault(require("../../../_lib/buildLocalizeFn/index.js"));
  10. var numberValues = {
  11. locale: {
  12. '1': '१',
  13. '2': '२',
  14. '3': '३',
  15. '4': '४',
  16. '5': '५',
  17. '6': '६',
  18. '7': '७',
  19. '8': '८',
  20. '9': '९',
  21. '0': '०'
  22. },
  23. number: {
  24. '१': '1',
  25. '२': '2',
  26. '३': '3',
  27. '४': '4',
  28. '५': '5',
  29. '६': '6',
  30. '७': '7',
  31. '८': '8',
  32. '९': '9',
  33. '०': '0'
  34. }
  35. };
  36. // CLDR #1585 - #1592
  37. var eraValues = {
  38. narrow: ['ईसा-पूर्व', 'ईस्वी'],
  39. abbreviated: ['ईसा-पूर्व', 'ईस्वी'],
  40. wide: ['ईसा-पूर्व', 'ईसवी सन']
  41. };
  42. // CLDR #1593 - #1616
  43. var quarterValues = {
  44. narrow: ['1', '2', '3', '4'],
  45. abbreviated: ['ति1', 'ति2', 'ति3', 'ति4'],
  46. wide: ['पहली तिमाही', 'दूसरी तिमाही', 'तीसरी तिमाही', 'चौथी तिमाही']
  47. };
  48. // Note: in English, the names of days of the week and months are capitalized.
  49. // If you are making a new locale based on this one, check if the same is true for the language you're working on.
  50. // Generally, formatted dates should look like they are in the middle of a sentence,
  51. // e.g. in Spanish language the weekdays and months should be in the lowercase.
  52. // https://www.unicode.org/cldr/charts/32/summary/hi.html
  53. // CLDR #1617 - #1688
  54. var monthValues = {
  55. narrow: ['ज', 'फ़', 'मा', 'अ', 'मई', 'जू', 'जु', 'अग', 'सि', 'अक्टू', 'न', 'दि'],
  56. abbreviated: ['जन', 'फ़र', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुल', 'अग', 'सित', 'अक्टू', 'नव', 'दिस'],
  57. wide: ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितंबर', 'अक्टूबर', 'नवंबर', 'दिसंबर']
  58. };
  59. // CLDR #1689 - #1744
  60. var dayValues = {
  61. narrow: ['र', 'सो', 'मं', 'बु', 'गु', 'शु', 'श'],
  62. short: ['र', 'सो', 'मं', 'बु', 'गु', 'शु', 'श'],
  63. abbreviated: ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'],
  64. wide: ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार']
  65. };
  66. var dayPeriodValues = {
  67. narrow: {
  68. am: 'पूर्वाह्न',
  69. pm: 'अपराह्न',
  70. midnight: 'मध्यरात्रि',
  71. noon: 'दोपहर',
  72. morning: 'सुबह',
  73. afternoon: 'दोपहर',
  74. evening: 'शाम',
  75. night: 'रात'
  76. },
  77. abbreviated: {
  78. am: 'पूर्वाह्न',
  79. pm: 'अपराह्न',
  80. midnight: 'मध्यरात्रि',
  81. noon: 'दोपहर',
  82. morning: 'सुबह',
  83. afternoon: 'दोपहर',
  84. evening: 'शाम',
  85. night: 'रात'
  86. },
  87. wide: {
  88. am: 'पूर्वाह्न',
  89. pm: 'अपराह्न',
  90. midnight: 'मध्यरात्रि',
  91. noon: 'दोपहर',
  92. morning: 'सुबह',
  93. afternoon: 'दोपहर',
  94. evening: 'शाम',
  95. night: 'रात'
  96. }
  97. };
  98. var formattingDayPeriodValues = {
  99. narrow: {
  100. am: 'पूर्वाह्न',
  101. pm: 'अपराह्न',
  102. midnight: 'मध्यरात्रि',
  103. noon: 'दोपहर',
  104. morning: 'सुबह',
  105. afternoon: 'दोपहर',
  106. evening: 'शाम',
  107. night: 'रात'
  108. },
  109. abbreviated: {
  110. am: 'पूर्वाह्न',
  111. pm: 'अपराह्न',
  112. midnight: 'मध्यरात्रि',
  113. noon: 'दोपहर',
  114. morning: 'सुबह',
  115. afternoon: 'दोपहर',
  116. evening: 'शाम',
  117. night: 'रात'
  118. },
  119. wide: {
  120. am: 'पूर्वाह्न',
  121. pm: 'अपराह्न',
  122. midnight: 'मध्यरात्रि',
  123. noon: 'दोपहर',
  124. morning: 'सुबह',
  125. afternoon: 'दोपहर',
  126. evening: 'शाम',
  127. night: 'रात'
  128. }
  129. };
  130. var ordinalNumber = function ordinalNumber(dirtyNumber, _options) {
  131. var number = Number(dirtyNumber);
  132. return numberToLocale(number);
  133. };
  134. function localeToNumber(locale) {
  135. var enNumber = locale.toString().replace(/[१२३४५६७८९०]/g, function (match) {
  136. return numberValues.number[match];
  137. });
  138. return Number(enNumber);
  139. }
  140. function numberToLocale(enNumber) {
  141. return enNumber.toString().replace(/\d/g, function (match) {
  142. return numberValues.locale[match];
  143. });
  144. }
  145. var localize = {
  146. ordinalNumber: ordinalNumber,
  147. era: (0, _index.default)({
  148. values: eraValues,
  149. defaultWidth: 'wide'
  150. }),
  151. quarter: (0, _index.default)({
  152. values: quarterValues,
  153. defaultWidth: 'wide',
  154. argumentCallback: function argumentCallback(quarter) {
  155. return quarter - 1;
  156. }
  157. }),
  158. month: (0, _index.default)({
  159. values: monthValues,
  160. defaultWidth: 'wide'
  161. }),
  162. day: (0, _index.default)({
  163. values: dayValues,
  164. defaultWidth: 'wide'
  165. }),
  166. dayPeriod: (0, _index.default)({
  167. values: dayPeriodValues,
  168. defaultWidth: 'wide',
  169. formattingValues: formattingDayPeriodValues,
  170. defaultFormattingWidth: 'wide'
  171. })
  172. };
  173. var _default = localize;
  174. exports.default = _default;