UNPKG

@duoduo-oba/ng-devui

Version:

DevUI components based on Angular

132 lines 11.1 kB
/** * @fileoverview added by tsickle * Generated from: i18n.format.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { formatDate, getLocaleId } from '@angular/common'; import { I18nUtil } from './i18n.util'; export class I18nFormat { // 通过get方法来做业务没有指定locale的时候fallback /** * @private * @param {?} locale * @return {?} */ static getLocaleAndLang(locale) { /** @type {?} */ const currentLanguage = I18nUtil.getCurrentLanguage(); /** @type {?} */ let localeId; try { // 通过get方法来判断是否存在locale getLocaleId(locale); localeId = (locale || I18nFormat.DEFAULT_LOCALE).toLocaleLowerCase(); } catch (error) { localeId = I18nFormat.DEFAULT_LOCALE; } return { localeId, currentLanguage }; } // 短格式:y/MM/dd /** * @param {?} value * @param {?=} format * @param {?=} locale * @param {?=} timezone * @return {?} */ static formatDate(value, format, locale, timezone) { /** @type {?} */ const localeLang = I18nFormat.getLocaleAndLang(locale); /** @type {?} */ const formatStr = format ? format : I18nFormat.localFormat[localeLang.currentLanguage].short; return formatDate(value, formatStr, localeLang.localeId, timezone); } // 完整格式:y/MM/dd hh:mm:ss zzzz /** * @param {?} value * @param {?=} format * @param {?=} locale * @param {?=} timezone * @return {?} */ static formatDateTime(value, format, locale, timezone) { /** @type {?} */ const localeLang = I18nFormat.getLocaleAndLang(locale); /** @type {?} */ const formatStr = format ? format : I18nFormat.localFormat[localeLang.currentLanguage].full; return formatDate(value, formatStr, localeLang.localeId, timezone); } // 完整格式不加GMT:y/MM/dd hh:mm:ss /** * @param {?} value * @param {?=} format * @param {?=} locale * @param {?=} timezone * @return {?} */ static formatDateTimeWithoutGMT(value, format, locale, timezone) { /** @type {?} */ const localeLang = I18nFormat.getLocaleAndLang(locale); // 非用户传入的format,就替换掉完整的格式化字符中中GMT信息 /** @type {?} */ const formatStr = format ? format : (I18nFormat.localFormat[localeLang.currentLanguage].full).replace(' zzzz', ''); return formatDate(value, formatStr, localeLang.localeId, timezone); } } // 默认locale使用英文,因为angular默认只支持英文,其他的需要显示注册 I18nFormat.DEFAULT_LOCALE = 'en-us'; I18nFormat.DATETIME_FORMAT_EN = 'MMM dd, y HH:mm:ss zzzz'; I18nFormat.DATETIME_FORMAT_ZH = 'y/MM/dd HH:mm:ss zzzz'; I18nFormat.DATETIME_FORMAT_RU = 'dd.MM.y HH:mm:ss zzzz'; I18nFormat.DATE_FORMAT_EN = 'MMM dd, y'; I18nFormat.DATE_FORMAT_ZH = 'y/MM/dd'; I18nFormat.DATE_FORMAT_RU = 'dd.MM.y'; I18nFormat.localFormat = { 'zh-cn': { full: I18nFormat.DATETIME_FORMAT_ZH, short: I18nFormat.DATE_FORMAT_ZH }, 'en-us': { full: I18nFormat.DATETIME_FORMAT_EN, short: I18nFormat.DATE_FORMAT_EN }, 'ru-ru': { full: I18nFormat.DATETIME_FORMAT_RU, short: I18nFormat.DATE_FORMAT_RU } }; if (false) { /** * @type {?} * @private */ I18nFormat.DEFAULT_LOCALE; /** * @type {?} * @private */ I18nFormat.DATETIME_FORMAT_EN; /** * @type {?} * @private */ I18nFormat.DATETIME_FORMAT_ZH; /** * @type {?} * @private */ I18nFormat.DATETIME_FORMAT_RU; /** * @type {?} * @private */ I18nFormat.DATE_FORMAT_EN; /** * @type {?} * @private */ I18nFormat.DATE_FORMAT_ZH; /** * @type {?} * @private */ I18nFormat.DATE_FORMAT_RU; /** * @type {?} * @private */ I18nFormat.localFormat; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5mb3JtYXQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy1kZXZ1aS9pMThuLyIsInNvdXJjZXMiOlsiaTE4bi5mb3JtYXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFdkMsTUFBTSxPQUFPLFVBQVU7Ozs7Ozs7SUFrQmIsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQU07O2NBQzlCLGVBQWUsR0FBRyxRQUFRLENBQUMsa0JBQWtCLEVBQUU7O1lBQ2pELFFBQVE7UUFDWixJQUFJO1lBQ0YsdUJBQXVCO1lBQ3ZCLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQixRQUFRLEdBQUcsQ0FBQyxNQUFNLElBQUksVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDdEU7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLFFBQVEsR0FBRyxVQUFVLENBQUMsY0FBYyxDQUFDO1NBQ3RDO1FBQ0QsT0FBTyxFQUFDLFFBQVEsRUFBRSxlQUFlLEVBQUMsQ0FBQztJQUNyQyxDQUFDOzs7Ozs7Ozs7SUFHTSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQTZCLEVBQUUsTUFBZSxFQUFFLE1BQWUsRUFBRSxRQUFpQjs7Y0FDbkcsVUFBVSxHQUFHLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7O2NBQ2hELFNBQVMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsS0FBSztRQUM1RixPQUFPLFVBQVUsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDckUsQ0FBQzs7Ozs7Ozs7O0lBR00sTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUE2QixFQUFFLE1BQWUsRUFBRSxNQUFlLEVBQUUsUUFBaUI7O2NBQ3ZHLFVBQVUsR0FBRyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDOztjQUNoRCxTQUFTLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUk7UUFDM0YsT0FBTyxVQUFVLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7Ozs7Ozs7OztJQUdNLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxLQUE2QixFQUFFLE1BQWUsRUFBRSxNQUFlLEVBQUUsUUFBaUI7O2NBQ2pILFVBQVUsR0FBRyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDOzs7Y0FFaEQsU0FBUyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ2xILE9BQU8sVUFBVSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNyRSxDQUFDOzs7QUFqRHVCLHlCQUFjLEdBQUcsT0FBTyxDQUFDO0FBQ3pCLDZCQUFrQixHQUFHLHlCQUF5QixDQUFDO0FBQy9DLDZCQUFrQixHQUFHLHVCQUF1QixDQUFDO0FBQzdDLDZCQUFrQixHQUFHLHVCQUF1QixDQUFDO0FBQzdDLHlCQUFjLEdBQUcsV0FBVyxDQUFDO0FBQzdCLHlCQUFjLEdBQUcsU0FBUyxDQUFDO0FBQzNCLHlCQUFjLEdBQUcsU0FBUyxDQUFDO0FBRzNCLHNCQUFXLEdBQUc7SUFDcEMsT0FBTyxFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLGNBQWMsRUFBQztJQUNoRixPQUFPLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsY0FBYyxFQUFDO0lBQ2hGLE9BQU8sRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLFVBQVUsQ0FBQyxjQUFjLEVBQUM7Q0FDakYsQ0FBQzs7Ozs7O0lBYkYsMEJBQWlEOzs7OztJQUNqRCw4QkFBdUU7Ozs7O0lBQ3ZFLDhCQUFxRTs7Ozs7SUFDckUsOEJBQXFFOzs7OztJQUNyRSwwQkFBcUQ7Ozs7O0lBQ3JELDBCQUFtRDs7Ozs7SUFDbkQsMEJBQW1EOzs7OztJQUduRCx1QkFJRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZvcm1hdERhdGUsIGdldExvY2FsZUlkIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSTE4blV0aWwgfSBmcm9tICcuL2kxOG4udXRpbCc7XHJcblxyXG5leHBvcnQgY2xhc3MgSTE4bkZvcm1hdCB7XHJcbiAgLy8g6buY6K6kbG9jYWxl5L2/55So6Iux5paH77yM5Zug5Li6YW5ndWxhcum7mOiupOWPquaUr+aMgeiLseaWh++8jOWFtuS7lueahOmcgOimgeaYvuekuuazqOWGjFxyXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfTE9DQUxFID0gJ2VuLXVzJztcclxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBEQVRFVElNRV9GT1JNQVRfRU4gPSAnTU1NIGRkLCB5IEhIOm1tOnNzIHp6enonO1xyXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IERBVEVUSU1FX0ZPUk1BVF9aSCA9ICd5L01NL2RkIEhIOm1tOnNzIHp6enonO1xyXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IERBVEVUSU1FX0ZPUk1BVF9SVSA9ICdkZC5NTS55IEhIOm1tOnNzIHp6enonO1xyXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IERBVEVfRk9STUFUX0VOID0gJ01NTSBkZCwgeSc7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgREFURV9GT1JNQVRfWkggPSAneS9NTS9kZCc7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgREFURV9GT1JNQVRfUlUgPSAnZGQuTU0ueSc7XHJcblxyXG5cclxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBsb2NhbEZvcm1hdCA9IHtcclxuICAgICd6aC1jbic6IHtmdWxsOiBJMThuRm9ybWF0LkRBVEVUSU1FX0ZPUk1BVF9aSCwgc2hvcnQ6IEkxOG5Gb3JtYXQuREFURV9GT1JNQVRfWkh9LFxyXG4gICAgJ2VuLXVzJzoge2Z1bGw6IEkxOG5Gb3JtYXQuREFURVRJTUVfRk9STUFUX0VOLCBzaG9ydDogSTE4bkZvcm1hdC5EQVRFX0ZPUk1BVF9FTn0sXHJcbiAgICAncnUtcnUnOiB7ZnVsbDogSTE4bkZvcm1hdC5EQVRFVElNRV9GT1JNQVRfUlUsIHNob3J0OiBJMThuRm9ybWF0LkRBVEVfRk9STUFUX1JVfVxyXG4gIH07XHJcblxyXG4gIC8vIOmAmui/h2dldOaWueazleadpeWBmuS4muWKoeayoeacieaMh+WummxvY2FsZeeahOaXtuWAmWZhbGxiYWNrXHJcbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0TG9jYWxlQW5kTGFuZyhsb2NhbGUpIHtcclxuICAgIGNvbnN0IGN1cnJlbnRMYW5ndWFnZSA9IEkxOG5VdGlsLmdldEN1cnJlbnRMYW5ndWFnZSgpO1xyXG4gICAgbGV0IGxvY2FsZUlkO1xyXG4gICAgdHJ5IHtcclxuICAgICAgLy8g6YCa6L+HZ2V05pa55rOV5p2l5Yik5pat5piv5ZCm5a2Y5ZyobG9jYWxlXHJcbiAgICAgIGdldExvY2FsZUlkKGxvY2FsZSk7XHJcbiAgICAgIGxvY2FsZUlkID0gKGxvY2FsZSB8fCBJMThuRm9ybWF0LkRFRkFVTFRfTE9DQUxFKS50b0xvY2FsZUxvd2VyQ2FzZSgpO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgbG9jYWxlSWQgPSBJMThuRm9ybWF0LkRFRkFVTFRfTE9DQUxFO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtsb2NhbGVJZCwgY3VycmVudExhbmd1YWdlfTtcclxuICB9XHJcblxyXG4gIC8vIOefreagvOW8j++8mnkvTU0vZGRcclxuICBwdWJsaWMgc3RhdGljIGZvcm1hdERhdGUodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IERhdGUsIGZvcm1hdD86IHN0cmluZywgbG9jYWxlPzogc3RyaW5nLCB0aW1lem9uZT86IHN0cmluZykge1xyXG4gICAgY29uc3QgbG9jYWxlTGFuZyA9IEkxOG5Gb3JtYXQuZ2V0TG9jYWxlQW5kTGFuZyhsb2NhbGUpO1xyXG4gICAgY29uc3QgZm9ybWF0U3RyID0gZm9ybWF0ID8gZm9ybWF0IDogSTE4bkZvcm1hdC5sb2NhbEZvcm1hdFtsb2NhbGVMYW5nLmN1cnJlbnRMYW5ndWFnZV0uc2hvcnQ7XHJcbiAgICByZXR1cm4gZm9ybWF0RGF0ZSh2YWx1ZSwgZm9ybWF0U3RyLCBsb2NhbGVMYW5nLmxvY2FsZUlkLCB0aW1lem9uZSk7XHJcbiAgfVxyXG5cclxuICAvLyDlrozmlbTmoLzlvI/vvJp5L01NL2RkIGhoOm1tOnNzIHp6enpcclxuICBwdWJsaWMgc3RhdGljIGZvcm1hdERhdGVUaW1lKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBEYXRlLCBmb3JtYXQ/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZywgdGltZXpvbmU/OiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGxvY2FsZUxhbmcgPSBJMThuRm9ybWF0LmdldExvY2FsZUFuZExhbmcobG9jYWxlKTtcclxuICAgIGNvbnN0IGZvcm1hdFN0ciA9IGZvcm1hdCA/IGZvcm1hdCA6IEkxOG5Gb3JtYXQubG9jYWxGb3JtYXRbbG9jYWxlTGFuZy5jdXJyZW50TGFuZ3VhZ2VdLmZ1bGw7XHJcbiAgICByZXR1cm4gZm9ybWF0RGF0ZSh2YWx1ZSwgZm9ybWF0U3RyLCBsb2NhbGVMYW5nLmxvY2FsZUlkLCB0aW1lem9uZSk7XHJcbiAgfVxyXG5cclxuICAvLyDlrozmlbTmoLzlvI/kuI3liqBHTVTvvJp5L01NL2RkIGhoOm1tOnNzXHJcbiAgcHVibGljIHN0YXRpYyBmb3JtYXREYXRlVGltZVdpdGhvdXRHTVQodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IERhdGUsIGZvcm1hdD86IHN0cmluZywgbG9jYWxlPzogc3RyaW5nLCB0aW1lem9uZT86IHN0cmluZykge1xyXG4gICAgY29uc3QgbG9jYWxlTGFuZyA9IEkxOG5Gb3JtYXQuZ2V0TG9jYWxlQW5kTGFuZyhsb2NhbGUpO1xyXG4gICAgLy8g6Z2e55So5oi35Lyg5YWl55qEZm9ybWF077yM5bCx5pu/5o2i5o6J5a6M5pW055qE5qC85byP5YyW5a2X56ym5Lit5LitR01U5L+h5oGvXHJcbiAgICBjb25zdCBmb3JtYXRTdHIgPSBmb3JtYXQgPyBmb3JtYXQgOiAoSTE4bkZvcm1hdC5sb2NhbEZvcm1hdFtsb2NhbGVMYW5nLmN1cnJlbnRMYW5ndWFnZV0uZnVsbCkucmVwbGFjZSgnIHp6enonLCAnJyk7XHJcbiAgICByZXR1cm4gZm9ybWF0RGF0ZSh2YWx1ZSwgZm9ybWF0U3RyLCBsb2NhbGVMYW5nLmxvY2FsZUlkLCB0aW1lem9uZSk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=