bo.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. //! moment.js locale configuration
  2. //! locale : Tibetan [bo]
  3. //! author : Thupten N. Chakrishar : https://github.com/vajradog
  4. import moment from '../moment';
  5. var symbolMap = {
  6. 1: '༡',
  7. 2: '༢',
  8. 3: '༣',
  9. 4: '༤',
  10. 5: '༥',
  11. 6: '༦',
  12. 7: '༧',
  13. 8: '༨',
  14. 9: '༩',
  15. 0: '༠',
  16. },
  17. numberMap = {
  18. '༡': '1',
  19. '༢': '2',
  20. '༣': '3',
  21. '༤': '4',
  22. '༥': '5',
  23. '༦': '6',
  24. '༧': '7',
  25. '༨': '8',
  26. '༩': '9',
  27. '༠': '0',
  28. };
  29. export default moment.defineLocale('bo', {
  30. months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split(
  31. '_'
  32. ),
  33. monthsShort:
  34. 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split(
  35. '_'
  36. ),
  37. monthsShortRegex: /^(ཟླ་\d{1,2})/,
  38. monthsParseExact: true,
  39. weekdays:
  40. 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split(
  41. '_'
  42. ),
  43. weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split(
  44. '_'
  45. ),
  46. weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'),
  47. longDateFormat: {
  48. LT: 'A h:mm',
  49. LTS: 'A h:mm:ss',
  50. L: 'DD/MM/YYYY',
  51. LL: 'D MMMM YYYY',
  52. LLL: 'D MMMM YYYY, A h:mm',
  53. LLLL: 'dddd, D MMMM YYYY, A h:mm',
  54. },
  55. calendar: {
  56. sameDay: '[དི་རིང] LT',
  57. nextDay: '[སང་ཉིན] LT',
  58. nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT',
  59. lastDay: '[ཁ་སང] LT',
  60. lastWeek: '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',
  61. sameElse: 'L',
  62. },
  63. relativeTime: {
  64. future: '%s ལ་',
  65. past: '%s སྔན་ལ',
  66. s: 'ལམ་སང',
  67. ss: '%d སྐར་ཆ།',
  68. m: 'སྐར་མ་གཅིག',
  69. mm: '%d སྐར་མ',
  70. h: 'ཆུ་ཚོད་གཅིག',
  71. hh: '%d ཆུ་ཚོད',
  72. d: 'ཉིན་གཅིག',
  73. dd: '%d ཉིན་',
  74. M: 'ཟླ་བ་གཅིག',
  75. MM: '%d ཟླ་བ',
  76. y: 'ལོ་གཅིག',
  77. yy: '%d ལོ',
  78. },
  79. preparse: function (string) {
  80. return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {
  81. return numberMap[match];
  82. });
  83. },
  84. postformat: function (string) {
  85. return string.replace(/\d/g, function (match) {
  86. return symbolMap[match];
  87. });
  88. },
  89. meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,
  90. meridiemHour: function (hour, meridiem) {
  91. if (hour === 12) {
  92. hour = 0;
  93. }
  94. if (
  95. (meridiem === 'མཚན་མོ' && hour >= 4) ||
  96. (meridiem === 'ཉིན་གུང' && hour < 5) ||
  97. meridiem === 'དགོང་དག'
  98. ) {
  99. return hour + 12;
  100. } else {
  101. return hour;
  102. }
  103. },
  104. meridiem: function (hour, minute, isLower) {
  105. if (hour < 4) {
  106. return 'མཚན་མོ';
  107. } else if (hour < 10) {
  108. return 'ཞོགས་ཀས';
  109. } else if (hour < 17) {
  110. return 'ཉིན་གུང';
  111. } else if (hour < 20) {
  112. return 'དགོང་དག';
  113. } else {
  114. return 'མཚན་མོ';
  115. }
  116. },
  117. week: {
  118. dow: 0, // Sunday is the first day of the week.
  119. doy: 6, // The week that contains Jan 6th is the first week of the year.
  120. },
  121. });