bo.js 4.3 KB

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