choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
136 lines (105 loc) • 6.05 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getConfig = getConfig;
exports.getPrefixCls = getPrefixCls;
exports.getProPrefixCls = getProPrefixCls;
exports["default"] = configure;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _mobx = require("mobx");
var _isObject = _interopRequireDefault(require("lodash/isObject"));
var _choerodonUiFont = require("choerodon-ui-font");
var _enum = require("../../pro/lib/data-set/enum");
var _localeContext = require("../../pro/lib/locale-context");
var _enum2 = require("../../pro/lib/table/enum");
var _FeedBack = _interopRequireDefault(require("../../pro/lib/data-set/FeedBack"));
var _enum3 = require("../../pro/lib/form/enum");
var _enum4 = require("../../pro/lib/button/enum");
var _utils = require("../../pro/lib/form/utils");
var _enum5 = require("../_util/enum");
var _ref;
var defaultRenderEmpty = function defaultRenderEmpty(componentName) {
switch (componentName) {
case 'Table':
return (0, _localeContext.$l)('Table', 'empty_data');
case 'Select':
return (0, _localeContext.$l)('Select', 'no_matching_results');
case 'Output':
return '';
default:
}
};
var defaultButtonProps = {
color: _enum4.ButtonColor.primary,
funcType: _enum4.FuncType.flat
};
var defaultSpinProps = {
size: _enum5.Size["default"],
wrapperClassName: ''
};
var globalConfig = _mobx.observable.map([['prefixCls', 'c7n'], ['proPrefixCls', 'c7n-pro'], ['iconfontPrefix', 'icon'], ['ripple', true], ['collapseExpandIconPosition', 'left'], ['collapseTrigger', 'header'], ['lookupCache', {
maxAge: 1000 * 60 * 10,
max: 100
}], ['lookupUrl', function (code) {
return "/common/code/".concat(code, "/");
}], ['lookupAxiosMethod', 'post'], // [
// 'lookupBatchAxiosConfig',
// codes => ({
// url: '/common/batch',
// params: codes.reduce((obj, code) => {
// obj[code] = code;
// return obj;
// }, {}),
// }),
// ],
['lovDefineUrl', function (code) {
return "/sys/lov/lov_define?code=".concat(code);
}], ['lovQueryUrl', function (code) {
return "/common/lov/dataset/".concat(code);
}], ['lovTableProps', {}], ['lovModalProps', {}], ['lovAutoSelectSingle', false], ['dataKey', 'rows'], ['totalKey', 'total'], ['statusKey', '__status'], ['tlsKey', '__tls'], ['status', (_ref = {}, (0, _defineProperty2["default"])(_ref, _enum.RecordStatus.add, 'add'), (0, _defineProperty2["default"])(_ref, _enum.RecordStatus.update, 'update'), (0, _defineProperty2["default"])(_ref, _enum.RecordStatus["delete"], 'delete'), _ref)], ['labelLayout', _enum3.LabelLayout.horizontal], ['queryBar', _enum2.TableQueryBarType.normal], ['tableBorder', true], ['tableHighLightRow', true], ['tableSelectedHighLightRow', false], ['tableRowHeight', 30], ['tableDefaultRenderer', ''], ['tableColumnResizable', true], ['tableColumnHideable', true], ['tableRowDraggable', false], ['tableColumnDraggable', false], ['tableSpinProps', defaultSpinProps], ['tableButtonProps', defaultButtonProps], ['tableCommandProps', defaultButtonProps], ['tableAlwaysShowRowBox', false], ['tableUseMouseBatchChoose', false], ['tableEditorNextKeyEnterDown', true], ['tableAutoFocus', false], ['tableKeyboard', false], ['tableFilterSearchText', 'params'], ['tableAutoHeightDiff', 80], ['tableCustomizedSave', function (code, customized) {
return localStorage.setItem("table.customized.".concat(code), JSON.stringify(customized));
}], ['tableCustomizedLoad', function (code) {
return Promise.resolve(JSON.parse(localStorage.getItem("table.customized.".concat(code)) || 'null'));
}], ['modalSectionBorder', true], ['drawerSectionBorder', true], ['drawerTransitionName', 'slide-right'], ['modalOkFirst', true], ['modalAutoCenter', false], ['drawerOkFirst', undefined], ['modalKeyboard', true], ['modalMaskClosable', false], ['buttonColor', _enum4.ButtonColor["default"]], ['buttonFuncType', _enum4.FuncType.raised], ['feedback', _FeedBack["default"]], ['renderEmpty', defaultRenderEmpty], ['icons', _choerodonUiFont.categories], ['formatter', {
jsonDate: 'YYYY-MM-DD HH:mm:ss',
date: 'YYYY-MM-DD',
dateTime: 'YYYY-MM-DD HH:mm:ss',
time: 'HH:mm:ss',
year: 'YYYY',
month: 'YYYY-MM',
week: 'GGGG-Wo'
}], ['dropdownMatchSelectWidth', true], ['selectReverse', true], ['selectPagingOptionContent', '···'], ['selectSearchable', false], ['useColon', false], ['excludeUseColonTagList', _utils.defaultExcludeUseColonTag], ['textFieldAutoComplete', undefined], ['numberFieldNonStrictStep', false], ['numberFieldFormatter', undefined], ['numberFieldFormatterOptions', undefined]]);
function getConfig(key) {
// FIXME: observable.map把构建map时传入的key类型和value类型分别做了union,
// 丢失了一一对应的映射关系,导致函数调用者无法使用union后的返回值类型,因此需要指定本函数返回值为any
return globalConfig.get(key);
}
function getPrefixCls(suffixCls, customizePrefixCls) {
if (customizePrefixCls) {
return customizePrefixCls;
}
return "".concat(getConfig('prefixCls'), "-").concat(suffixCls);
}
function getProPrefixCls(suffixCls, customizePrefixCls) {
if (customizePrefixCls) {
return customizePrefixCls;
}
return "".concat(getConfig('proPrefixCls'), "-").concat(suffixCls);
}
var mergeProps = ['transport', 'feedback', 'formatter', 'tableFilterAdapter'];
function configure(config) {
(0, _mobx.runInAction)(function () {
Object.keys(config).forEach(function (key) {
var value = config[key];
if (mergeProps.includes(key) && (0, _isObject["default"])(value)) {
globalConfig.set(key, (0, _objectSpread2["default"])({}, (0, _mobx.toJS)(globalConfig.get(key)), {}, value));
} else {
globalConfig.set(key, config[key]);
}
});
});
}
//# sourceMappingURL=index.js.map