ze-react-component-library
Version:
ZeroETP React Component Library
68 lines (63 loc) • 2.05 kB
JavaScript
import "antd/es/message/style";
import _message from "antd/es/message";
import "antd/es/button/style";
import _Button from "antd/es/button";
import "antd/es/col/style";
import _Col from "antd/es/col";
import "antd/es/row/style";
import _Row from "antd/es/row";
import React, { useState } from "react";
import Editor from "react-simple-code-editor";
import { highlight as _highlight, languages } from "prismjs/components/prism-core";
import "prismjs/components/prism-clike";
import "prismjs/components/prism-javascript";
import "prismjs/themes/prism-coy.css";
import ZECard from "../ZECard/ZECard";
var ZELogicformEditor = function ZELogicformEditor(_a) {
var xlsx = _a.xlsx;
var _b = useState(""),
logicformString = _b[0],
setLogicformString = _b[1];
var _c = useState(),
logicform = _c[0],
setLogicform = _c[1];
return /*#__PURE__*/React.createElement(_Row, {
gutter: 10
}, /*#__PURE__*/React.createElement(_Col, {
span: 6
}, /*#__PURE__*/React.createElement(Editor, {
value: logicformString,
onValueChange: function onValueChange(code) {
return setLogicformString(code);
},
highlight: function highlight(code) {
return _highlight(code, languages.js);
},
padding: 10,
style: {
fontFamily: '"Fira code", "Fira Mono", monospace',
fontSize: 12,
border: "1px solid",
marginBottom: 12,
minHeight: 200
}
}), /*#__PURE__*/React.createElement(_Button, {
type: "primary",
onClick: function onClick() {
try {
var lf = eval("(" + logicformString + ")");
setLogicform(JSON.parse(JSON.stringify(lf)));
} catch (error) {
_message.error("LF解析错误。请确保格式正确");
}
}
}, "\u63D0\u4EA4")), /*#__PURE__*/React.createElement(_Col, {
span: 18
}, logicform && /*#__PURE__*/React.createElement(ZECard, {
logicform: logicform,
title: "\u7ED3\u679C",
xlsx: xlsx,
exportToExcel: true
}), !logicform && "Editing...."));
};
export default ZELogicformEditor;