cscg24-guacamole

CSCG 2024 Challenge 'Guacamole Mashup'
git clone https://git.sinitax.com/sinitax/cscg24-guacamole
Log | Files | Refs | sfeed.txt

km.js (3362B)


      1//! moment.js locale configuration
      2//! locale : Cambodian [km]
      3//! author : Kruy Vanna : https://github.com/kruyvanna
      4
      5import moment from '../moment';
      6
      7var symbolMap = {
      8        1: '១',
      9        2: '២',
     10        3: '៣',
     11        4: '៤',
     12        5: '៥',
     13        6: '៦',
     14        7: '៧',
     15        8: '៨',
     16        9: '៩',
     17        0: '០',
     18    },
     19    numberMap = {
     20        '១': '1',
     21        '២': '2',
     22        '៣': '3',
     23        '៤': '4',
     24        '៥': '5',
     25        '៦': '6',
     26        '៧': '7',
     27        '៨': '8',
     28        '៩': '9',
     29        '០': '0',
     30    };
     31
     32export default moment.defineLocale('km', {
     33    months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(
     34        '_'
     35    ),
     36    monthsShort:
     37        'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split(
     38            '_'
     39        ),
     40    weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
     41    weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),
     42    weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'),
     43    weekdaysParseExact: true,
     44    longDateFormat: {
     45        LT: 'HH:mm',
     46        LTS: 'HH:mm:ss',
     47        L: 'DD/MM/YYYY',
     48        LL: 'D MMMM YYYY',
     49        LLL: 'D MMMM YYYY HH:mm',
     50        LLLL: 'dddd, D MMMM YYYY HH:mm',
     51    },
     52    meridiemParse: /ព្រឹក|ល្ងាច/,
     53    isPM: function (input) {
     54        return input === 'ល្ងាច';
     55    },
     56    meridiem: function (hour, minute, isLower) {
     57        if (hour < 12) {
     58            return 'ព្រឹក';
     59        } else {
     60            return 'ល្ងាច';
     61        }
     62    },
     63    calendar: {
     64        sameDay: '[ថ្ងៃនេះ ម៉ោង] LT',
     65        nextDay: '[ស្អែក ម៉ោង] LT',
     66        nextWeek: 'dddd [ម៉ោង] LT',
     67        lastDay: '[ម្សិលមិញ ម៉ោង] LT',
     68        lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',
     69        sameElse: 'L',
     70    },
     71    relativeTime: {
     72        future: '%sទៀត',
     73        past: '%sមុន',
     74        s: 'ប៉ុន្មានវិនាទី',
     75        ss: '%d វិនាទី',
     76        m: 'មួយនាទី',
     77        mm: '%d នាទី',
     78        h: 'មួយម៉ោង',
     79        hh: '%d ម៉ោង',
     80        d: 'មួយថ្ងៃ',
     81        dd: '%d ថ្ងៃ',
     82        M: 'មួយខែ',
     83        MM: '%d ខែ',
     84        y: 'មួយឆ្នាំ',
     85        yy: '%d ឆ្នាំ',
     86    },
     87    dayOfMonthOrdinalParse: /ទី\d{1,2}/,
     88    ordinal: 'ទី%d',
     89    preparse: function (string) {
     90        return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {
     91            return numberMap[match];
     92        });
     93    },
     94    postformat: function (string) {
     95        return string.replace(/\d/g, function (match) {
     96            return symbolMap[match];
     97        });
     98    },
     99    week: {
    100        dow: 1, // Monday is the first day of the week.
    101        doy: 4, // The week that contains Jan 4th is the first week of the year.
    102    },
    103});