Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2917 from harpreetkhalsagtbit:localePunjabiIndiaF…
…ormatConversion Locale Punjabi(Gurmukhi) India format conversion
- Loading branch information
Showing
2 changed files
with
448 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,115 @@ | ||
//! moment.js locale configuration | ||
//! locale : punjabi india (pa-in) | ||
//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit | ||
|
||
import moment from '../moment'; | ||
|
||
var symbolMap = { | ||
'1': '੧', | ||
'2': '੨', | ||
'3': '੩', | ||
'4': '੪', | ||
'5': '੫', | ||
'6': '੬', | ||
'7': '੭', | ||
'8': '੮', | ||
'9': '੯', | ||
'0': '੦' | ||
}, | ||
numberMap = { | ||
'੧': '1', | ||
'੨': '2', | ||
'੩': '3', | ||
'੪': '4', | ||
'੫': '5', | ||
'੬': '6', | ||
'੭': '7', | ||
'੮': '8', | ||
'੯': '9', | ||
'੦': '0' | ||
}; | ||
|
||
export default moment.defineLocale('pa-in', { | ||
// There are months name as per Nanakshahi Calender but they are not used as rigidly in modern Punjabi. | ||
months : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'), | ||
monthsShort : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'), | ||
weekdays : 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split('_'), | ||
weekdaysShort : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'), | ||
weekdaysMin : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'), | ||
longDateFormat : { | ||
LT : 'A h:mm ਵਜੇ', | ||
LTS : 'A h:mm:ss ਵਜੇ', | ||
L : 'DD/MM/YYYY', | ||
LL : 'D MMMM YYYY', | ||
LLL : 'D MMMM YYYY, A h:mm ਵਜੇ', | ||
LLLL : 'dddd, D MMMM YYYY, A h:mm ਵਜੇ' | ||
}, | ||
calendar : { | ||
sameDay : '[ਅਜ] LT', | ||
nextDay : '[ਕਲ] LT', | ||
nextWeek : 'dddd, LT', | ||
lastDay : '[ਕਲ] LT', | ||
lastWeek : '[ਪਿਛਲੇ] dddd, LT', | ||
sameElse : 'L' | ||
}, | ||
relativeTime : { | ||
future : '%s ਵਿੱਚ', | ||
past : '%s ਪਿਛਲੇ', | ||
s : 'ਕੁਝ ਸਕਿੰਟ', | ||
m : 'ਇਕ ਮਿੰਟ', | ||
mm : '%d ਮਿੰਟ', | ||
h : 'ਇੱਕ ਘੰਟਾ', | ||
hh : '%d ਘੰਟੇ', | ||
d : 'ਇੱਕ ਦਿਨ', | ||
dd : '%d ਦਿਨ', | ||
M : 'ਇੱਕ ਮਹੀਨਾ', | ||
MM : '%d ਮਹੀਨੇ', | ||
y : 'ਇੱਕ ਸਾਲ', | ||
yy : '%d ਸਾਲ' | ||
}, | ||
preparse: function (string) { | ||
return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) { | ||
return numberMap[match]; | ||
}); | ||
}, | ||
postformat: function (string) { | ||
return string.replace(/\d/g, function (match) { | ||
return symbolMap[match]; | ||
}); | ||
}, | ||
// Punjabi notation for meridiems are quite fuzzy in practice. While there exists | ||
// a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi. | ||
meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/, | ||
meridiemHour : function (hour, meridiem) { | ||
if (hour === 12) { | ||
hour = 0; | ||
} | ||
if (meridiem === 'ਰਾਤ') { | ||
return hour < 4 ? hour : hour + 12; | ||
} else if (meridiem === 'ਸਵੇਰ') { | ||
return hour; | ||
} else if (meridiem === 'ਦੁਪਹਿਰ') { | ||
return hour >= 10 ? hour : hour + 12; | ||
} else if (meridiem === 'ਸ਼ਾਮ') { | ||
return hour + 12; | ||
} | ||
}, | ||
meridiem : function (hour, minute, isLower) { | ||
if (hour < 4) { | ||
return 'ਰਾਤ'; | ||
} else if (hour < 10) { | ||
return 'ਸਵੇਰ'; | ||
} else if (hour < 17) { | ||
return 'ਦੁਪਹਿਰ'; | ||
} else if (hour < 20) { | ||
return 'ਸ਼ਾਮ'; | ||
} else { | ||
return 'ਰਾਤ'; | ||
} | ||
}, | ||
week : { | ||
dow : 0, // Sunday is the first day of the week. | ||
doy : 6 // The week that contains Jan 1st is the first week of the year. | ||
} | ||
}); | ||
|
Oops, something went wrong.