You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							114 lines
						
					
					
						
							3.6 KiB
						
					
					
				
			
		
		
	
	
							114 lines
						
					
					
						
							3.6 KiB
						
					
					
				| import { t } from '../localizedFormat/utils';
 | |
| export default (function (o, c, dayjs) {
 | |
|   // locale needed later
 | |
|   var proto = c.prototype;
 | |
| 
 | |
|   var getLocalePart = function getLocalePart(part) {
 | |
|     return part && (part.indexOf ? part : part.s);
 | |
|   };
 | |
| 
 | |
|   var getShort = function getShort(ins, target, full, num, localeOrder) {
 | |
|     var locale = ins.name ? ins : ins.$locale();
 | |
|     var targetLocale = getLocalePart(locale[target]);
 | |
|     var fullLocale = getLocalePart(locale[full]);
 | |
|     var result = targetLocale || fullLocale.map(function (f) {
 | |
|       return f.slice(0, num);
 | |
|     });
 | |
|     if (!localeOrder) return result;
 | |
|     var weekStart = locale.weekStart;
 | |
|     return result.map(function (_, index) {
 | |
|       return result[(index + (weekStart || 0)) % 7];
 | |
|     });
 | |
|   };
 | |
| 
 | |
|   var getDayjsLocaleObject = function getDayjsLocaleObject() {
 | |
|     return dayjs.Ls[dayjs.locale()];
 | |
|   };
 | |
| 
 | |
|   var getLongDateFormat = function getLongDateFormat(l, format) {
 | |
|     return l.formats[format] || t(l.formats[format.toUpperCase()]);
 | |
|   };
 | |
| 
 | |
|   var localeData = function localeData() {
 | |
|     var _this = this;
 | |
| 
 | |
|     return {
 | |
|       months: function months(instance) {
 | |
|         return instance ? instance.format('MMMM') : getShort(_this, 'months');
 | |
|       },
 | |
|       monthsShort: function monthsShort(instance) {
 | |
|         return instance ? instance.format('MMM') : getShort(_this, 'monthsShort', 'months', 3);
 | |
|       },
 | |
|       firstDayOfWeek: function firstDayOfWeek() {
 | |
|         return _this.$locale().weekStart || 0;
 | |
|       },
 | |
|       weekdays: function weekdays(instance) {
 | |
|         return instance ? instance.format('dddd') : getShort(_this, 'weekdays');
 | |
|       },
 | |
|       weekdaysMin: function weekdaysMin(instance) {
 | |
|         return instance ? instance.format('dd') : getShort(_this, 'weekdaysMin', 'weekdays', 2);
 | |
|       },
 | |
|       weekdaysShort: function weekdaysShort(instance) {
 | |
|         return instance ? instance.format('ddd') : getShort(_this, 'weekdaysShort', 'weekdays', 3);
 | |
|       },
 | |
|       longDateFormat: function longDateFormat(format) {
 | |
|         return getLongDateFormat(_this.$locale(), format);
 | |
|       },
 | |
|       meridiem: this.$locale().meridiem,
 | |
|       ordinal: this.$locale().ordinal
 | |
|     };
 | |
|   };
 | |
| 
 | |
|   proto.localeData = function () {
 | |
|     return localeData.bind(this)();
 | |
|   };
 | |
| 
 | |
|   dayjs.localeData = function () {
 | |
|     var localeObject = getDayjsLocaleObject();
 | |
|     return {
 | |
|       firstDayOfWeek: function firstDayOfWeek() {
 | |
|         return localeObject.weekStart || 0;
 | |
|       },
 | |
|       weekdays: function weekdays() {
 | |
|         return dayjs.weekdays();
 | |
|       },
 | |
|       weekdaysShort: function weekdaysShort() {
 | |
|         return dayjs.weekdaysShort();
 | |
|       },
 | |
|       weekdaysMin: function weekdaysMin() {
 | |
|         return dayjs.weekdaysMin();
 | |
|       },
 | |
|       months: function months() {
 | |
|         return dayjs.months();
 | |
|       },
 | |
|       monthsShort: function monthsShort() {
 | |
|         return dayjs.monthsShort();
 | |
|       },
 | |
|       longDateFormat: function longDateFormat(format) {
 | |
|         return getLongDateFormat(localeObject, format);
 | |
|       },
 | |
|       meridiem: localeObject.meridiem,
 | |
|       ordinal: localeObject.ordinal
 | |
|     };
 | |
|   };
 | |
| 
 | |
|   dayjs.months = function () {
 | |
|     return getShort(getDayjsLocaleObject(), 'months');
 | |
|   };
 | |
| 
 | |
|   dayjs.monthsShort = function () {
 | |
|     return getShort(getDayjsLocaleObject(), 'monthsShort', 'months', 3);
 | |
|   };
 | |
| 
 | |
|   dayjs.weekdays = function (localeOrder) {
 | |
|     return getShort(getDayjsLocaleObject(), 'weekdays', null, null, localeOrder);
 | |
|   };
 | |
| 
 | |
|   dayjs.weekdaysShort = function (localeOrder) {
 | |
|     return getShort(getDayjsLocaleObject(), 'weekdaysShort', 'weekdays', 3, localeOrder);
 | |
|   };
 | |
| 
 | |
|   dayjs.weekdaysMin = function (localeOrder) {
 | |
|     return getShort(getDayjsLocaleObject(), 'weekdaysMin', 'weekdays', 2, localeOrder);
 | |
|   };
 | |
| }); |