21 lines
		
	
	
		
			686 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			686 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import { FORMAT_DEFAULT } from '../../constant';
 | 
						|
export default (function (o, c) {
 | 
						|
  // locale needed later
 | 
						|
  var proto = c.prototype;
 | 
						|
  var oldFormat = proto.format; // extend en locale here
 | 
						|
 | 
						|
  proto.format = function (formatStr) {
 | 
						|
    var _this = this;
 | 
						|
 | 
						|
    var yearBias = 543;
 | 
						|
    var str = formatStr || FORMAT_DEFAULT;
 | 
						|
    var result = str.replace(/(\[[^\]]+])|BBBB|BB/g, function (match, a) {
 | 
						|
      var _this$$utils;
 | 
						|
 | 
						|
      var year = String(_this.$y + yearBias);
 | 
						|
      var args = match === 'BB' ? [year.slice(-2), 2] : [year, 4];
 | 
						|
      return a || (_this$$utils = _this.$utils()).s.apply(_this$$utils, args.concat(['0']));
 | 
						|
    });
 | 
						|
    return oldFormat.bind(this)(result);
 | 
						|
  };
 | 
						|
}); |