cscg24-guacamole

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

gu.js (4132B)


      1//! moment.js locale configuration
      2//! locale : Gujarati [gu]
      3//! author : Kaushik Thanki : https://github.com/Kaushik1987
      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('gu', {
     33    months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split(
     34        '_'
     35    ),
     36    monthsShort:
     37        'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split(
     38            '_'
     39        ),
     40    monthsParseExact: true,
     41    weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split(
     42        '_'
     43    ),
     44    weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),
     45    weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),
     46    longDateFormat: {
     47        LT: 'A h:mm વાગ્યે',
     48        LTS: 'A h:mm:ss વાગ્યે',
     49        L: 'DD/MM/YYYY',
     50        LL: 'D MMMM YYYY',
     51        LLL: 'D MMMM YYYY, A h:mm વાગ્યે',
     52        LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે',
     53    },
     54    calendar: {
     55        sameDay: '[આજ] LT',
     56        nextDay: '[કાલે] LT',
     57        nextWeek: 'dddd, LT',
     58        lastDay: '[ગઇકાલે] LT',
     59        lastWeek: '[પાછલા] dddd, LT',
     60        sameElse: 'L',
     61    },
     62    relativeTime: {
     63        future: '%s મા',
     64        past: '%s પહેલા',
     65        s: 'અમુક પળો',
     66        ss: '%d સેકંડ',
     67        m: 'એક મિનિટ',
     68        mm: '%d મિનિટ',
     69        h: 'એક કલાક',
     70        hh: '%d કલાક',
     71        d: 'એક દિવસ',
     72        dd: '%d દિવસ',
     73        M: 'એક મહિનો',
     74        MM: '%d મહિનો',
     75        y: 'એક વર્ષ',
     76        yy: '%d વર્ષ',
     77    },
     78    preparse: function (string) {
     79        return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {
     80            return numberMap[match];
     81        });
     82    },
     83    postformat: function (string) {
     84        return string.replace(/\d/g, function (match) {
     85            return symbolMap[match];
     86        });
     87    },
     88    // Gujarati notation for meridiems are quite fuzzy in practice. While there exists
     89    // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.
     90    meridiemParse: /રાત|બપોર|સવાર|સાંજ/,
     91    meridiemHour: function (hour, meridiem) {
     92        if (hour === 12) {
     93            hour = 0;
     94        }
     95        if (meridiem === 'રાત') {
     96            return hour < 4 ? hour : hour + 12;
     97        } else if (meridiem === 'સવાર') {
     98            return hour;
     99        } else if (meridiem === 'બપોર') {
    100            return hour >= 10 ? hour : hour + 12;
    101        } else if (meridiem === 'સાંજ') {
    102            return hour + 12;
    103        }
    104    },
    105    meridiem: function (hour, minute, isLower) {
    106        if (hour < 4) {
    107            return 'રાત';
    108        } else if (hour < 10) {
    109            return 'સવાર';
    110        } else if (hour < 17) {
    111            return 'બપોર';
    112        } else if (hour < 20) {
    113            return 'સાંજ';
    114        } else {
    115            return 'રાત';
    116        }
    117    },
    118    week: {
    119        dow: 0, // Sunday is the first day of the week.
    120        doy: 6, // The week that contains Jan 6th is the first week of the year.
    121    },
    122});