choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
101 lines (78 loc) • 2.27 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.toLocaleStringSupportsLocales = toLocaleStringSupportsLocales;
exports.getNumberFormatOptions = getNumberFormatOptions;
exports.toLocaleStringPolyfill = toLocaleStringPolyfill;
exports.trimString = trimString;
exports.transformString = transformString;
var _capitalize = _interopRequireDefault(require("lodash/capitalize"));
var _enum = require("../data-set/enum");
var supportsLocales;
function toLocaleStringSupportsLocales() {
if (supportsLocales === undefined) {
try {
0 .toLocaleString('i');
supportsLocales = false;
} catch (e) {
supportsLocales = e.name === 'RangeError';
}
}
return supportsLocales;
}
function getNumberFormatOptions(type, options) {
if (type === _enum.FieldType.number) {
return {
style: 'decimal'
};
}
if (options && options.currency) {
return {
style: 'currency'
};
}
return {
style: 'decimal',
minimumFractionDigits: 2,
maximumFractionDigits: 2
};
}
function toLocaleStringPolyfill(value, type, options) {
if (type === _enum.FieldType.number) {
var fraction = String(value).split('.')[1];
return value.toLocaleString().split('.')[0] + (fraction ? ".".concat(fraction) : '');
}
var currency = options && options.currency;
return "".concat(currency ? "".concat(currency, " ") : '').concat(value.toLocaleString());
}
function trimString(value, fieldTrim) {
if (fieldTrim) {
switch (fieldTrim) {
case _enum.FieldTrim.both:
return value.trim();
case _enum.FieldTrim.left:
return value.trimLeft();
case _enum.FieldTrim.right:
return value.trimRight();
default:
}
}
return value;
}
function transformString(value, format) {
if (format) {
switch (format) {
case _enum.FieldFormat.uppercase:
return value.toUpperCase();
case _enum.FieldFormat.lowercase:
return value.toLowerCase();
case _enum.FieldFormat.capitalize:
return (0, _capitalize["default"])(value);
default:
}
}
return value;
}
//# sourceMappingURL=utils.js.map