UNPKG

fastlion-amis

Version:

一种MIS页面生成工具

61 lines (60 loc) 2.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getColumnProperty = void 0; var tslib_1 = require("tslib"); var react_1 = tslib_1.__importStar(require("react")); var antd_1 = require("antd"); var react_json_view_1 = tslib_1.__importDefault(require("react-json-view")); var getColumnProperty = function (columns, columnName) { var column = columns.filter(function (item) { return item.name === columnName; })[0]; return column !== null && column !== void 0 ? column : {}; }; exports.getColumnProperty = getColumnProperty; var PropertyModal = function (props) { var info = props.info, onCancel = props.onCancel; var _a = (0, react_1.useState)(false), visible = _a[0], setVisible = _a[1]; (0, react_1.useEffect)(function () { var _a; var hasInfo = info && ((_a = Object.keys(info)) === null || _a === void 0 ? void 0 : _a.length); setVisible(hasInfo); }, [info]); var handleLoopGetData = function (item) { var treeData = []; for (var key in item) { var value = item[key]; var type = typeof value; if (type === 'object' && value !== null) { treeData.push({ title: key, key: key + '_' + Math.random(), children: handleLoopGetData(value) }); } else { treeData.push({ key: key + '_' + Math.random(), title: react_1.default.createElement("span", null, key, ": ", react_1.default.createElement("span", { style: { backgroundColor: '#f1f1f1' } }, type === 'function' ? 'function' : JSON.stringify(value))) }); } } return treeData; }; var parsedJSON = (0, react_1.useMemo)(function () { try { return JSON.parse(info); } catch (e) { return info; } }, [info]); return (visible ? react_1.default.createElement(antd_1.Modal, { title: '当前字段:' + ((info === null || info === void 0 ? void 0 : info.label) || '属性'), style: { top: 10 }, visible: visible, onCancel: onCancel, footer: null }, react_1.default.createElement("div", { style: { maxHeight: '80vh', overflow: 'auto' } }, react_1.default.createElement(react_json_view_1.default, { name: false, src: parsedJSON, theme: 'rjv-default', enableClipboard: false, iconStyle: "square" }))) : null); }; exports.default = PropertyModal; //# sourceMappingURL=./renderers/Table/PropertyModal/index.js.map