(oFormatOptionsOrLocale?: DateFormatOptions | LocaleWrapped, oLocale?: LocaleWrapped)
| 33 | static getDateInstance(oFormatOptions?: DateFormatOptions, oLocale?: LocaleWrapped): DateFormat; |
| 34 | static getDateInstance(oLocale?: LocaleWrapped): DateFormat; |
| 35 | static getDateInstance(oFormatOptionsOrLocale?: DateFormatOptions | LocaleWrapped, oLocale?: LocaleWrapped): DateFormat { |
| 36 | const locale = oLocale ?? new LocaleWrapped(getLocale().toString()); |
| 37 | |
| 38 | if (oFormatOptionsOrLocale instanceof LocaleWrapped) { |
| 39 | return DateFormatWrapped.getDateInstance(undefined, oFormatOptionsOrLocale); |
| 40 | } |
| 41 | |
| 42 | const cacheKey = `${JSON.stringify(oFormatOptionsOrLocale ?? {})}__${String(locale)}`; |
| 43 | let instance = _dateFormatCache.get(cacheKey); |
| 44 | if (!instance) { |
| 45 | instance = DateFormatWrapped.getDateInstance(oFormatOptionsOrLocale, locale); |
| 46 | _dateFormatCache.set(cacheKey, instance); |
| 47 | } |
| 48 | return instance; |
| 49 | } |
| 50 | } |
| 51 | |
| 52 | export default DateFormat; |
no test coverage detected