choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
115 lines (82 loc) • 2.91 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.toRangeValue = toRangeValue;
exports.fromRangeValue = fromRangeValue;
exports.toMultipleValue = toMultipleValue;
exports.getDateFormatByFieldType = getDateFormatByFieldType;
exports.getDateFormatByField = getDateFormatByField;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _isObject = _interopRequireDefault(require("lodash/isObject"));
var _isNil = _interopRequireDefault(require("lodash/isNil"));
var _mobx = require("mobx");
var _moment = _interopRequireDefault(require("moment"));
var _configure = require("../../../lib/configure");
var _enum = require("../data-set/enum");
function toRangeValue(value, range) {
if ((0, _mobx.isArrayLike)(range)) {
if ((0, _isObject["default"])(value)) {
var _range = (0, _slicedToArray2["default"])(range, 2),
start = _range[0],
end = _range[1];
return [value[start], value[end]];
}
} else if ((0, _mobx.isArrayLike)(value)) {
return value.slice(0, 2);
}
return [undefined, undefined];
}
function fromRangeValue(value, range) {
if ((0, _mobx.isArrayLike)(range)) {
var _ref;
var _range2 = (0, _slicedToArray2["default"])(range, 2),
start = _range2[0],
end = _range2[1];
return _ref = {}, (0, _defineProperty2["default"])(_ref, start, value[0]), (0, _defineProperty2["default"])(_ref, end, value[1]), _ref;
}
return value;
}
function toMultipleValue(value, range) {
if (!(0, _isNil["default"])(value)) {
var multipleValue = (0, _mobx.isArrayLike)(value) ? value.slice() : [value];
if (range) {
return multipleValue.map(function (item) {
return toRangeValue(item, range);
});
}
return multipleValue;
}
return [];
}
function getDateFormatByFieldType(type) {
var formatter = (0, _configure.getConfig)('formatter');
switch (type) {
case _enum.FieldType.date:
return formatter.date;
case _enum.FieldType.dateTime:
return formatter.dateTime;
case _enum.FieldType.week:
return formatter.week;
case _enum.FieldType.month:
return formatter.month;
case _enum.FieldType.year:
return formatter.year;
case _enum.FieldType.time:
return formatter.time;
default:
return formatter.date;
}
}
function getDateFormatByField(field, type) {
if (field) {
return field.get('format') || getDateFormatByFieldType(type || field.type);
}
if (type) {
return getDateFormatByFieldType(type);
}
return (0, _configure.getConfig)('formatter').jsonDate || _moment["default"].defaultFormat;
}
//# sourceMappingURL=utils.js.map