UNPKG

@alicloud/console-base-intl-factory-basic

Version:
31 lines (30 loc) 1.31 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = factory; var _consoleBaseConfLocale = _interopRequireDefault(require("@alicloud/console-base-conf-locale")); var _util = require("../util"); /** * 获得 intl 方法,其中 messagesMap 中的 key 你可以随便,不用在意大小写,中划线还是下划线还是骆驼,这里自会适应 */ function factory(messagesMap) { var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref$locale = _ref.locale, locale = _ref$locale === void 0 ? _consoleBaseConfLocale.default.LOCALE : _ref$locale, localeDefault = _ref.localeDefault; // : <V extends {}>(id, values?: V) => string => var messages = (0, _util.getMessages)(messagesMap, locale, localeDefault); var intl = function intl(id, values, escapeValues) { return (0, _util.formatMessage)(messages, id, values, escapeValues); }; intl.intlNumber = function (n, options) { return (0, _util.formatNumber)(Number(n), options, locale); }; intl.intlDate = function (d, format) { var date = (0, _util.convertDate)(d); return date ? (0, _util.formatDate)(date, format, locale) : ''; }; return intl; }