@choerodon/master
Version:
A package of Master for Choerodon platform.
240 lines (214 loc) • 10.4 kB
JavaScript
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
import React, { useEffect, useMemo, useState } from 'react';
import { AnimationLoading, useLoading } from '@choerodon/components';
import { uniqueId } from 'lodash';
import { uiAxiosInstance } from "../../components/axios";
import AppState from "../../containers/stores/c7n/AppState";
export var UI_CONFIGURE = "".concat(process.env.UI_CONFIGURE);
var uiConfigure = UI_CONFIGURE || {};
function TableSpin(props) {
var className = props.className;
var _useLoading = useLoading(),
registerChildren = _useLoading.registerChildren,
isHasProvider = _useLoading.isHasProvider,
cancelRegisterChildren = _useLoading.cancelRegisterChildren,
change = _useLoading.change;
var loadId = useMemo(function () {
return uniqueId('table-spin');
}, []);
var _useState = useState(false),
_useState2 = _slicedToArray(_useState, 2),
loading = _useState2[0],
setLoading = _useState2[1];
useEffect(function () {
// 注册后并更改loading状态, 卸载的时候更改loading状态并卸载
registerChildren({
loadId: loadId,
changeLoading: setLoading
});
change(loadId, true);
return function () {
change(loadId, false);
setTimeout(function () {
return cancelRegisterChildren(loadId);
}, 200);
};
}, [cancelRegisterChildren, change, loadId, registerChildren]); // 无统一Loading管理 则使用table表格内部loading状态判断
return /*#__PURE__*/React.createElement(AnimationLoading, {
className: className,
display: loading,
style: {
display: !isHasProvider || loading ? 'inline-block' : 'none'
}
});
}
var UI_CONFIG = _objectSpread(_objectSpread({}, uiConfigure), {}, {
pagination: {
showSizeChangerLabel: false,
showTotal: function showTotal(total, range) {
return /*#__PURE__*/React.createElement("span", {
className: "word"
}, "\u663E\u793A".concat(range[0], "-").concat(range[1], " \u5171 ").concat(total, "\u6761"));
},
showPager: true,
showQuickJumper: true
},
modalMaskClosable: 'dblclick',
axios: uiAxiosInstance,
dataKey: 'list',
labelLayout: 'float',
queryBar: 'bar',
tableBorder: false,
showLengthInfo: false,
lookupAxiosMethod: 'get',
lookupUrl: function lookupUrl(code) {
return "/hpfm/v1/lovs/value?lovCode=".concat(code);
},
tableHighLightRow: false,
tableColumnResizable: false,
tableRowHeight: 50,
modalOkFirst: false,
modalKeyboard: false,
modalSectionBorder: false,
drawerOkFirst: false,
buttonFuncType: 'raised',
tableVirtualCell: false,
lovQueryUrl: function lovQueryUrl(code) {
return "/iam/choerodon/v1/lov/code?code=".concat(code);
},
generatePageQuery: function generatePageQuery(_ref) {
var page = _ref.page,
pageSize = _ref.pageSize,
sortName = _ref.sortName,
sortOrder = _ref.sortOrder,
sort = _ref.sort;
return {
page: page,
size: pageSize,
sort: sortName && (sortOrder ? "".concat(sortName, ",").concat(sortOrder) : sortName)
};
},
tableSpinProps: {
indicator: /*#__PURE__*/React.createElement(TableSpin, null)
},
lovDefineAxiosConfig: function lovDefineAxiosConfig(code) {
return {
url: "/iam/choerodon/v1/lov/code?code=".concat(code),
method: 'GET',
transformResponse: [function (data) {
var originData = {};
try {
originData = JSON.parse(data);
} catch (e) {
return data;
}
var _originData = originData,
_originData$valueFiel = _originData.valueField,
valueField = _originData$valueFiel === void 0 ? 'value' : _originData$valueFiel,
_originData$textField = _originData.textField,
textField = _originData$textField === void 0 ? 'name' : _originData$textField,
_originData$pageSize = _originData.pageSize,
pageSize = _originData$pageSize === void 0 ? 5 : _originData$pageSize,
_originData$queryFiel = _originData.queryFields,
queryFields = _originData$queryFiel === void 0 ? [] : _originData$queryFiel,
_originData$gridField = _originData.gridFields,
gridFields = _originData$gridField === void 0 ? [] : _originData$gridField,
description = _originData.description;
var _originData2 = originData,
title = _originData2.title;
if (originData.failed) {
title = "\u503C\u96C6\u89C6\u56FE\u672A\u5B9A\u4E49: \"".concat(code, "\", \u8BF7\u7EF4\u62A4\u503C\u96C6\u89C6\u56FE!");
} else if (!originData.code) {
title = "lov ".concat(code, " loading...");
}
var lovItems = [];
var tableWidth = 0;
queryFields.forEach(function (queryItem) {
var lovItem = {
display: queryItem.queryFieldLabel,
conditionField: 'Y',
conditionFieldType: null,
conditionFieldName: queryItem.queryFieldName,
conditionFieldSelectUrl: null,
conditionFieldSelectVf: null,
conditionFieldSelectTf: null,
conditionFieldSelectCode: null,
conditionFieldLovCode: null,
conditionFieldSequence: 1,
conditionFieldRequired: queryItem.queryFieldRequiredFlag,
gridField: 'N',
gridFieldName: queryItem.queryFieldName,
gridFieldWidth: queryItem.queryFieldWidth,
gridFieldAlign: 'left',
gridFieldSequence: queryItem.queryFieldOrder
};
lovItems.push(lovItem);
});
gridFields.forEach(function (tableItem) {
var lovItem = {
gridFieldName: tableItem.gridFieldName,
gridFieldWidth: tableItem.gridFieldWidth,
gridFieldAlign: tableItem.gridFieldAlign,
conditionField: 'N',
gridField: 'Y',
display: tableItem.gridFieldLabel,
conditionFieldType: null,
conditionFieldName: null,
conditionFieldSelectUrl: null,
conditionFieldSelectVf: null,
conditionFieldSelectTf: null,
conditionFieldSelectCode: null,
conditionFieldSequence: 1,
gridFieldSequence: tableItem.gridFieldOrder
};
lovItems.push(lovItem);
tableWidth += tableItem.gridFieldWidth;
});
var convertedData = {
originData: originData,
title: title || code,
width: tableWidth ? tableWidth + 120 : 520,
customUrl: null,
lovPageSize: pageSize,
lovItems: lovItems,
treeFlag: originData.treeFlag ? 'Y' : 'N',
parentIdField: originData.parentField,
idField: originData.idField,
textField: textField,
valueField: valueField,
placeholder: description || title || code,
editableFlag: originData.editFlag ? 'Y' : 'N',
queryColumns: queryFields && queryFields.length ? 1 : 0
};
return convertedData;
}]
};
},
lovQueryAxiosConfig: function lovQueryAxiosConfig(code) {
var lovConfig = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var _ref2 = lovConfig.originData || {},
url = _ref2.url;
var realUrl = url;
if (url) {
// realUrl = `${API_HOST}${url}?lovCode=${code}`;
var organizationRe = /\{organization_id\}|\{project_id\}/g;
if (organizationRe.test(url)) {
var tId = AppState.currentOrginazationOrProjectId || '';
realUrl = url.replace(organizationRe, tId);
}
}
return {
url: realUrl,
method: 'GET'
};
}
});
export { UI_CONFIG };