antd-form-document 4.0.6 → 4.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +139 -62
- package/dist/index.tsx +1 -1
- package/dist/index.tsx.map +1 -1
- package/dist/src/components/Rate/index.d.ts +12 -0
- package/dist/src/components/Rate/index.d.ts.map +1 -0
- package/dist/src/components/index.d.ts +1 -0
- package/dist/src/components/index.d.ts.map +1 -1
- package/dist/src/config.d.ts +5 -0
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/form/index.d.ts +0 -1
- package/dist/src/form/index.d.ts.map +1 -1
- package/dist/src/preview/index.d.ts +7 -18
- package/dist/src/preview/index.d.ts.map +1 -1
- package/dist/src/service/UIComponent.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.tsx.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.tsx","sources":["../node_modules/style-inject/dist/style-inject.es.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/classCallCheck.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/toPrimitive.js","../node_modules/@babel/runtime/helpers/toPropertyKey.js","../node_modules/@babel/runtime/helpers/createClass.js","../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/inherits.js","../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/defineProperty.js","../src/entity/XML.ts","../src/utils/document.ts","../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/regenerator/index.js","../src/applets/index.ts","../src/context.ts","../src/config.ts","../src/utils/loading.ts","../src/utils/request.ts","../src/utils/style.ts","../src/service/UIComponent.tsx","../src/service/ProComponent.tsx","../src/service/UIListComponent.tsx","../src/service/WidgetComponent.ts","../src/components/Label/index.tsx","../src/components/Tooltip/index.tsx","../src/preview/index.tsx","../src/components/Text/index.tsx","../src/components/TextArea/index.tsx","../src/components/InputNumber/index.tsx","../src/components/Editor/index.tsx","../src/components/Select/index.tsx","../src/components/Checkbox/index.tsx","../src/components/Radio/index.tsx","../src/components/Switch/index.tsx","../src/components/Duration/index.tsx","../src/components/DatePicker/index.tsx","../src/components/TimePicker/index.tsx","../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/iterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/toConsumableArray.js","../src/components/Upload/index.tsx","../src/components/Photo/index.tsx","../src/components/SuperUpload/index.tsx","../src/components/Table/index.tsx","../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js","../node_modules/@babel/runtime/helpers/extends.js","../src/components/FormList/index.tsx","../src/containers/Row/index.tsx","../src/containers/Col/index.tsx","../src/containers/Steps/index.tsx","../src/containers/Content/index.tsx","../src/containers/Divider/index.tsx","../src/containers/Collapse/index.tsx","../src/form/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _getPrototypeOf(o);\n}\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import { parseInt, uniqueId } from \"lodash\";\r\n\r\nexport default class XML {\r\n readonly id: string;\r\n readonly tag: string;\r\n readonly text?: string;\r\n readonly attributes: { [name: string]: string | boolean } = {};\r\n readonly cdata?: string;\r\n readonly children?: XML[];\r\n\r\n constructor(element: Element) {\r\n // this.id = Math.floor(Math.random() * 1000000000).toString();\r\n this.id = uniqueId();\r\n /** 获得属性 */\r\n for (const item of element.attributes) {\r\n let value: string | boolean = item.value.trim();\r\n if (this.isBoolean(value)) {\r\n value = this.toBoolean(value);\r\n }\r\n this.attributes[item.name] = value;\r\n }\r\n\r\n /** 获得子元素 */\r\n this.children = new Array();\r\n for (const node of element.childNodes) {\r\n if (node instanceof Element) {\r\n this.children?.push(new XML(node));\r\n }\r\n /** 获得文本 */\r\n if (node.nodeType === 3 && node.textContent) {\r\n this.text = node.textContent;\r\n }\r\n /** 获得CDATA */\r\n if (node.nodeType === 4) {\r\n this.cdata = node.nodeValue?.replace(/\\ +/g, \" \").replace(/[\\t\\r\\n]/g, \"\");\r\n }\r\n }\r\n this.tag = element.nodeName;\r\n }\r\n\r\n /**\r\n * 判断是否为boolean型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private isBoolean(value: string) {\r\n return value === \"true\" || value === \"false\";\r\n }\r\n\r\n /**\r\n * 转换boolean型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private toBoolean(value: string) {\r\n return value === \"true\";\r\n }\r\n\r\n /**\r\n * 判断是否为number型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private isNumber(value: string) {\r\n return /^\\d+$/.test(value);\r\n }\r\n\r\n /**\r\n * 转换number型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private toNumber(value: string) {\r\n return parseInt(value, 10);\r\n }\r\n}","import XML from \"@/entity/XML\";\r\n\r\n/**\r\n * xml 解析类\r\n */\r\nexport default class XMLDocument {\r\n\r\n /**\r\n * document 解析 xml对象\r\n * \r\n * @param document \r\n * @returns \r\n */\r\n static parser(document: Document) {\r\n const element: Element = <Element>document.childNodes[0];\r\n return new XML(element);\r\n }\r\n\r\n /**\r\n * document字符串 转换 document对象\r\n * \r\n * @param documentString \r\n * @returns \r\n */\r\n static toDocument(documentString: string): Document {\r\n return new DOMParser().parseFromString(documentString, \"text/xml\");\r\n }\r\n\r\n /**\r\n * document字符串 转换 xml对象\r\n * \r\n * @param documentString \r\n * @returns \r\n */\r\n static getRoot(documentString: string): XML {\r\n const doc: Document = XMLDocument.toDocument(documentString);\r\n return XMLDocument.parser(doc);\r\n }\r\n\r\n /**\r\n * 选择单个元素\r\n * \r\n * @param document \r\n * @param selectors \r\n * @returns \r\n */\r\n static selector(document: Document | Element, selectors: string): Element | null {\r\n return document.querySelector(selectors);\r\n }\r\n\r\n /**\r\n * 选择多个元素\r\n * \r\n * @param document \r\n * @param selectors \r\n * @returns \r\n */\r\n static selectors(document: Document | Element, selectors: string): NodeListOf<Element> {\r\n return document.querySelectorAll(selectors);\r\n }\r\n}","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import moment from 'moment';\r\n\r\n/**\r\n * validate 验证\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const validate = ({ type = 'string', required, minlength, maxlength, min, max, pattern, message }: any): Design.Rule => {\r\n if (required) {\r\n return { type, required, message };\r\n }\r\n if (minlength && maxlength) {\r\n return { type, min: Number(minlength), max: Number(maxlength), message };\r\n }\r\n if (min && max) {\r\n return { type: 'number', min: Number(min), max: Number(max), message };\r\n }\r\n if (type === 'phone') {\r\n return { type: 'string', pattern: new RegExp('^[1][3,5,6,7,8][0-9]\\\\d{8}$'), message };\r\n }\r\n if (type === 'regexp' && typeof pattern === 'string') {\r\n return { type: 'string', pattern: new RegExp(pattern), message };\r\n }\r\n return { type, message };\r\n}\r\n\r\n/**\r\n * condition 条件\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const condition = (fields: object | undefined, preview: boolean) => ({ test }: { test: string }): boolean | undefined => {\r\n try {\r\n if (fields) {\r\n fields = { ...fields, preview }\r\n const keys: string = Object.keys(fields).join(\",\");\r\n const actuator: Function = new Function(`{${keys}}`, `return ${test}`);\r\n return actuator(fields);\r\n }\r\n } catch (e: any) {\r\n // console.warn(e.message);\r\n }\r\n return undefined;\r\n}\r\n\r\n/**\r\n * collection 集合\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const collection = (fields: object | undefined, { cdata }: { cdata: string }): Array<string> => {\r\n try {\r\n if (fields) {\r\n const keys: string = Object.keys(fields).join(\",\");\r\n const actuator: Function = new Function(`{${keys}}`, `${cdata}`);\r\n return actuator(fields);\r\n }\r\n const actuator: Function = new Function(`${cdata}`);\r\n return actuator();\r\n } catch (e: any) {\r\n // console.warn(e.message);\r\n }\r\n return [];\r\n}\r\n\r\n/**\r\n * compute 计算\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const compute = (fields: object | undefined, { cdata }: { cdata: string }): Array<string> | string | undefined => {\r\n try {\r\n if (fields) {\r\n const keys: string = Object.keys(fields).join(\",\");\r\n const actuator: Function = new Function(`{${keys}}`, 'moment', `${cdata}`);\r\n return actuator(fields, moment);\r\n }\r\n const actuator: Function = new Function('moment', `${cdata}`);\r\n return actuator(moment);\r\n } catch (e: any) {\r\n // console.warn(e.message);\r\n }\r\n return undefined;\r\n}\r\n","import React from \"react\";\r\n\r\nexport const DesignContext = React.createContext<Design.Context>({});","class DesignConfig {\r\n readonly request: {\r\n prefix: string;\r\n headers: {};\r\n params: {};\r\n route: string;\r\n } = {\r\n prefix: \"api\",\r\n headers: {},\r\n params: {},\r\n route: \"/design\"\r\n }\r\n readonly file: {\r\n listUrl: string,\r\n downloadUrl: string,\r\n uploadUrl: string,\r\n extraData?: {}\r\n } = {\r\n listUrl: \"/file/list\",\r\n downloadUrl: \"/file/download\",\r\n uploadUrl: \"/file/upload\",\r\n extraData: (file: Design.File.FileInfo, fileType: string) => {},\r\n }\r\n readonly style: {\r\n labelStyle: {}\r\n } = {\r\n labelStyle: {color: \"#055ab5\"}\r\n }\r\n readonly form: {\r\n documentUrl: string\r\n } = {\r\n documentUrl: \"/form/:formId\"\r\n }\r\n readonly chunk : {\r\n checkFile: string,\r\n checkChunk: string,\r\n chunkUpload: string,\r\n doMerge: string,\r\n mergeProgress: string,\r\n onComplete: string,\r\n completeProgress: string,\r\n chunkSize: number,\r\n } = {\r\n chunkSize: 10 * 1024 ** 2,\r\n checkFile: \"/chunk/checkFile\",\r\n checkChunk: \"/chunk/checkChunk\",\r\n chunkUpload: \"/chunk/chunkUpload\",\r\n doMerge: \"/chunk/doMerge\",\r\n mergeProgress: \"/chunk/mergeProgress\",\r\n onComplete: \"/chunk/onComplete\",\r\n completeProgress: \"/chunk/completeProgress\"\r\n }\r\n\r\n readonly components?: any\r\n \r\n private constructor(conf?: Design.Config) {\r\n if (conf) {\r\n const { request, file, form, chunk, components } = conf;\r\n this.request = { ...this.request, ...request };\r\n this.file = { ...this.file, ...file };\r\n this.form = { ...this.form, ...form };\r\n this.chunk = { ...this.chunk, ...chunk };\r\n this.components = components;\r\n }\r\n }\r\n\r\n static init(conf?: Design.Config) {\r\n return new DesignConfig(conf);\r\n }\r\n}\r\n\r\nlet config: DesignConfig = DesignConfig.init();\r\nconst defineConfig = (conf: Design.Config) => {\r\n config = DesignConfig.init(conf)\r\n}\r\n\r\nexport { defineConfig, config }","let num = 0;\r\nconst listeners: ((loading: boolean) => void)[] = [];\r\n\r\n/**\r\n * wait\r\n * \r\n * @param millisecond \r\n * @returns \r\n */\r\nconst wait = (millisecond: number) => (\r\n new Promise(resolve => {\r\n setTimeout(() => {\r\n resolve(millisecond);\r\n }, millisecond)\r\n}));\r\n\r\n/**\r\n * 注册loading\r\n * \r\n * @param payload \r\n */\r\nexport const regrister = (payload: (loading: boolean) => void) => {\r\n if (typeof payload === 'function') {\r\n listeners.push(payload);\r\n }\r\n}\r\n\r\n/**\r\n * 触发\r\n * \r\n * @param loading \r\n */\r\nconst trigger = async (loading: boolean) => {\r\n if (num === 0) {\r\n for (const callback of listeners) {\r\n callback(loading);\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * 开始加载loading\r\n */\r\nexport const begin = async () => {\r\n if (num ++ === 0) {\r\n trigger(true);\r\n }\r\n}\r\n\r\n/**\r\n * 结束加载loading\r\n * \r\n */\r\nexport const end = async () => {\r\n if (-- num === 0) {\r\n trigger(false);\r\n }\r\n}\r\n\r\n/**\r\n * 自动关闭\r\n * \r\n */\r\nexport const autoClose = async () => {\r\n await wait(1000);\r\n if (num === 0) {\r\n trigger(false);\r\n } else {\r\n autoClose()\r\n }\r\n}\r\n\r\n/**\r\n * 错误loading\r\n */\r\nexport const error = async () => {\r\n num = 0;\r\n trigger(false);\r\n}","import { cloneDeep } from 'lodash';\r\nimport { extend } from 'umi-request';\r\nimport { parse, compile } from 'path-to-regexp';\r\nimport { config } from '@/config';\r\nimport { begin, end, error } from './loading';\r\n\r\nconst umiRequest = extend({\r\n prefix: config.request.prefix,\r\n headers: config.request.headers,\r\n timeout: 10000,\r\n});\r\n\r\n/** loading全局中间件 */\r\numiRequest.use(async (ctx, next) => {\r\n try {\r\n begin();\r\n await next();\r\n end();\r\n } catch (e) {\r\n error();\r\n throw e;\r\n }\r\n}, { global: true });\r\n\r\n/** 请求访问 **/\r\nconst request = (targetUrl: string, options: any) => {\r\n const cloneData = cloneDeep(options.data);\r\n let url = targetUrl;\r\n try {\r\n // 过滤protocol、domain、host\r\n let domain = '';\r\n const urlMatch = url.match(/[a-zA-z]+:\\/\\/[^/]*/);\r\n if (urlMatch) {\r\n [domain] = urlMatch;\r\n url = url.slice(domain.length);\r\n }\r\n // 编译url参数\r\n const match = parse(url);\r\n url = compile(url)(options.data);\r\n match.forEach((item: any) => {\r\n if (item instanceof Object && item.name in cloneData) {\r\n delete cloneData[item.name];\r\n }\r\n });\r\n url = domain + url;\r\n } catch (e: any) {\r\n console.error(e.message);\r\n }\r\n if (options.method.toLocaleUpperCase() === 'GET') {\r\n options.params = cloneData;\r\n } else if (options.type){\r\n options.requestType = options.type\r\n }\r\n options.prefix = config.request.prefix; \r\n // 调用umi-request\r\n return umiRequest(url, options)\r\n .then(({ status, ...rest }: any) => {\r\n const success = status === 200;\r\n return Promise.resolve({\r\n success,\r\n ...rest,\r\n });\r\n })\r\n .catch(({ response, data }: any) => {\r\n const message = data?.message ?? '访问超时';\r\n console.error(url, response, data);\r\n return Promise.resolve({\r\n success: false,\r\n message,\r\n });\r\n });\r\n};\r\n\r\n/** request **/\r\nexport default (uri: string) => {\r\n let [method, type, url] = ['GET', 'json', uri];\r\n const uriArray = uri.split(' ')\r\n if (uriArray.length === 2) {\r\n [method, url] = uriArray;\r\n } else if (uriArray.length === 3) {\r\n [method, type, url] = uriArray;\r\n }\r\n return (data?: any) => request(url, { method, type, data });\r\n}\r\n","import { camelCase } from 'lodash';\r\n\r\n/**\r\n * 转换样式对象\r\n * \r\n * @param style string\r\n * @returns styles\r\n */\r\nexport const toStyles = (style: string | undefined) => {\r\n const styles: {} = {};\r\n if (style) {\r\n const styleArray: string[] = style.replace(/\\ +/g, \"\").split(\";\");\r\n styleArray.forEach(items => {\r\n if (items) {\r\n const [key, value] = items.split(\":\");\r\n Object.assign(styles, { [camelCase(key)]: value });\r\n }\r\n });\r\n }\r\n return styles;\r\n}","import React from \"react\";\r\nimport { every, some, find } from \"lodash\";\r\nimport { collection, compute, condition, validate } from \"@/applets\";\r\nimport { DesignContext } from \"@/context\";\r\nimport request from \"@/utils/request\";\r\nimport { config } from \"@/config\";\r\nimport { toStyles } from \"@/utils/style\";\r\n\r\nexport default class UIComponent<P extends Design.ComponentProps, S = {}> extends React.PureComponent<P, S> {\r\n declare context: React.ContextType<typeof DesignContext>\r\n\r\n styleWrapper = { style: { borderBottom: '1px solid #d9d9d9' } };\r\n\r\n /**\r\n * 设置字段默认值\r\n * \r\n * @param defaultValue \r\n */\r\n setDefaultValue<T>(defaultValue: T): void {\r\n const form = this.context.form;\r\n if (form) {\r\n const code = this.props.code;\r\n const value = form.current?.getFieldValue(code);\r\n if (!value) {\r\n form.current?.setFieldValue(code, defaultValue);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * 设置当前字段值\r\n * \r\n * @param value \r\n */\r\n setFieldValue<T>(value: T | undefined): void {\r\n const form = this.context.form;\r\n if (form) {\r\n const code = this.props.code;\r\n form.current?.setFieldValue(code, value);\r\n }\r\n }\r\n\r\n /**\r\n * 清楚当前值\r\n * \r\n */\r\n cleanFieldValue(): void {\r\n setTimeout(() => {\r\n this.setFieldValue(undefined);\r\n }, 1);\r\n }\r\n\r\n /**\r\n * 获得当前值\r\n * \r\n * @returns \r\n */\r\n getFieldValue<T>(): T | undefined {\r\n const form = this.context.form;\r\n if (form) {\r\n const code = this.props.code;\r\n return form.current?.getFieldValue(code);\r\n }\r\n }\r\n\r\n /**\r\n * 获得所有form对象值\r\n * \r\n * @returns \r\n */\r\n getFieldsValue(): object | undefined {\r\n const form = this.context.form;\r\n if (form) {\r\n return form.current?.getFieldsValue();\r\n }\r\n }\r\n\r\n /**\r\n * 获得标签\r\n * \r\n * @returns \r\n */\r\n getLabel() {\r\n const isShowTitle = this.context.showTitle\r\n if (isShowTitle) {\r\n const { title, labelStyle } = this.props;\r\n const labelStyles = toStyles(labelStyle);\r\n return <span style={{ ...config.style.labelStyle, ...labelStyles }}>{title}</span>;\r\n }\r\n }\r\n\r\n /**\r\n * 获得item信息\r\n * \r\n * @returns \r\n */\r\n getItem(): { itemProps: {}, itemLayouts: {} } {\r\n const { preview, labelCol, wrapperCol, tips } = this.props;\r\n const itemLayouts = labelCol && wrapperCol ? { labelCol: { span: labelCol }, wrapperCol: { span: wrapperCol } } : {};\r\n let itemProps: {};\r\n if (preview) {\r\n itemProps = { required: false };\r\n Object.assign(itemLayouts.wrapperCol ?? {}, this.styleWrapper);\r\n } else {\r\n itemProps = { tooltip: tips };\r\n }\r\n return { itemProps, itemLayouts };\r\n }\r\n\r\n /**\r\n * 样式\r\n * \r\n * @returns \r\n */\r\n getStyles(): { styles: {}, itemStyles: {} } {\r\n const { style, itemStyle } = this.props;\r\n const styles = toStyles(style);\r\n const itemStyles = toStyles(itemStyle);\r\n return { styles, itemStyles };\r\n }\r\n\r\n /**\r\n * 条件\r\n * \r\n * @param defaultHide \r\n * @param children \r\n * @returns \r\n */\r\n display(): boolean {\r\n const preview = this.context.preview ?? false;\r\n const fileds = this.getFieldsValue();\r\n const { defaultHide = false, children } = this.props;\r\n const show: boolean = !defaultHide;\r\n const conditions: Design.Modal.ConditionXML | undefined = find(children, { tag: \"Conditions\" });\r\n if (conditions) {\r\n const { type, action } = conditions;\r\n const list = conditions.children?.map(condition(fileds, preview));\r\n if (list?.length > 0 && list?.[0] !== undefined) {\r\n let result: boolean = false;\r\n if (type === 'and') {\r\n result = every(list);\r\n } else {\r\n result = some(list);\r\n }\r\n if ((result && action === 'hide') || (!result && action === 'show')) {\r\n return false;\r\n } else if ((!result && action === 'hide') || (result && action === 'show')) {\r\n return true;\r\n }\r\n }\r\n }\r\n return show;\r\n }\r\n\r\n /**\r\n * 规则\r\n * \r\n * @param preview \r\n * @param children \r\n * @returns \r\n */\r\n rules(): Design.Rule[] {\r\n const { preview, children } = this.props;\r\n if (!preview) {\r\n const validates = find(children, { tag: \"Validates\" });\r\n return validates?.children?.map(validate) ?? [];\r\n }\r\n return [];\r\n }\r\n\r\n /**\r\n * 可选内容列表\r\n * \r\n * @param children \r\n * @returns \r\n */\r\n collectionList(): string[] | undefined {\r\n const content = find(this.props.children, { tag: \"Collection\" });\r\n if (content) {\r\n const fileds = this.getFieldsValue();\r\n return collection(fileds, content);\r\n }\r\n return undefined;\r\n }\r\n\r\n /**\r\n * 计算值\r\n * \r\n * @param children \r\n * @returns \r\n */\r\n onComputeValue(): void {\r\n const content = find(this.props.children, { tag: \"Compute\" });\r\n if (content) {\r\n const fileds = this.getFieldsValue();\r\n const computeValue = compute(fileds, content);\r\n if (computeValue) {\r\n setTimeout(() => {\r\n this.setFieldValue(computeValue);\r\n }, 1);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * 初始化值\r\n * \r\n * @param value \r\n */\r\n initValue(value?: string): void {\r\n const { defaultValue = value } = this.props;\r\n if (defaultValue) {\r\n this.setDefaultValue(defaultValue);\r\n }\r\n }\r\n\r\n /**\r\n * 请求网络\r\n * \r\n * @param remote \r\n * @returns \r\n */\r\n request = async (remote: string, args?: object) => {\r\n const params = args ?? this.context.params;\r\n return request(remote)({ ...params }).then(response => {\r\n const { success, data }: Design.Result = response;\r\n if (success) {\r\n if (Array.isArray(data)) {\r\n const list = data.map(item => {\r\n const [key, label] = Object.entries<string>(item)?.[0];\r\n return { key, label };\r\n });\r\n return Promise.resolve(list);\r\n } else {\r\n return Promise.resolve(data);\r\n }\r\n }\r\n return Promise.reject(undefined);\r\n }).catch(error => {\r\n console.error(\"remote\", remote, error);\r\n return Promise.reject(error);\r\n });\r\n }\r\n\r\n}\r\n\r\nUIComponent.contextType = DesignContext;","import React from \"react\";\r\nimport { Form } from \"antd\";\r\nimport UIComponent from \"./UIComponent\";\r\n\r\ninterface ProComponentProps extends Design.ComponentProps {\r\n Component: any;\r\n}\r\n\r\nexport default class ProComponent extends UIComponent<ProComponentProps> {\r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n initValue = () => {\r\n const { defaultValue } = this.props;\r\n if (defaultValue) {\r\n this.forceUpdate(() => {\r\n this.setDefaultValue(defaultValue);\r\n });\r\n }\r\n };\r\n\r\n onChange = (value: string) => {\r\n this.setFieldValue(value);\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, hidden } = this.props;\r\n const { Component, defaultValue, style, ...props } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {<Component {...props} style={styles} onChange={this.onChange}/>}\r\n </Form.Item>\r\n );\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import { find } from \"lodash\";\r\nimport UIComponent from \"./UIComponent\";\r\n\r\nexport default class UIListComponent<P extends Design.ComponentProps, S = {}> extends UIComponent<P, S> {\r\n\r\n /**\r\n * 选项列表\r\n * \r\n * @param children \r\n * @returns \r\n */\r\n optionList(): Design.ItemOption[] | undefined {\r\n const options = find(this.props.children, { tag: \"Options\" })\r\n return options?.children as [];\r\n }\r\n\r\n /**\r\n * 添加校验规则\r\n * \r\n * @returns \r\n */\r\n plusRules(): Design.Rule[] {\r\n const rules = this.rules();\r\n return rules?.map(rule => {\r\n if (rule.required) {\r\n const validator = (_: unknown, value: string) => value?.length > 0 ? Promise.resolve() : Promise.reject();\r\n return { ...rule, validator };\r\n }\r\n if (rule.min && rule.max) {\r\n const validator = (_: unknown, list: any[]) => list.length >= rule.min! && list.length <= rule.max! ? Promise.resolve() : Promise.reject();\r\n return { ...rule, validator };\r\n }\r\n return { ...rule };\r\n });\r\n }\r\n\r\n /**\r\n * 获得资源列表\r\n * \r\n * @param list \r\n * @param itemList \r\n * @param reset \r\n * @returns \r\n */\r\n getList = (list: Design.ItemOption[], itemList: string[] | undefined, reset: (plist: Design.ItemOption[]) => void) => {\r\n if (itemList) {\r\n const plist = list.filter(({ key }) => itemList.includes(key));\r\n reset(plist);\r\n return plist;\r\n }\r\n return list;\r\n }\r\n}","import React, { PureComponent } from \"react\";\r\n\r\nexport default class WidgetComponent<P = {}, S = {}> extends PureComponent<P, S> {\r\n\r\n}","import React from 'react';\r\nimport { Form } from 'antd';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class Label extends UIComponent<Design.ComponentProps> {\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.rules();\r\n const { title, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n wrapperCol={{ span: 24 }}\r\n >\r\n <div style={styles}>{title}</div>\r\n </Form.Item>\r\n )\r\n }\r\n return <></>;\r\n }\r\n}","import React from 'react';\r\nimport { Form } from 'antd';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class Tooltip extends UIComponent<Design.ComponentProps> {\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n const { preview, } = this.props;\r\n if (show && !preview) {\r\n const { title, hidden, children } = this.props; \r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item style={itemStyles} hidden={hidden} wrapperCol={{ span: 24 }}>\r\n <div style={styles}>{title ?? children}</div>\r\n </Form.Item>\r\n );\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport { Space, Image } from 'antd';\r\nimport { config } from '@/config';\r\n\r\n/** 文本预览 */\r\nexport const PreviewText = ({ value, type, style, onChange }: Design.PreviewProps) => {\r\n useEffect(() => {\r\n onChange?.(value);\r\n }, []);\r\n if (value && type === \"url\") {\r\n const urls = value.split(/[,;\\s]/);\r\n return urls.map((url: string) => <div style={style}><a href={url} target=\"_blank\" rel=\"noreferrer\">{url}</a></div>)\r\n }\r\n return <div style={style}>{value}</div>\r\n}\r\n\r\n/** 时长预览 */\r\nexport const PreviewDuration = ({ value, style, onChange }: any) => {\r\n useEffect(() => {\r\n onChange(value);\r\n }, []);\r\n if (value) {\r\n const [hour, minute, second] = value?.split(\":\");\r\n return <div style={style}>{`${hour}小时${minute}分${second}秒`}</div>\r\n } else {\r\n return <div style={style}>000时00分00秒</div>\r\n }\r\n}\r\n\r\n/** 切换预览 */\r\nexport const PreviewSwitch = ({ checked, style, onChange }: any) => {\r\n useEffect(() => {\r\n onChange(checked);\r\n }, []);\r\n return <div style={style}>{checked ? \"开启\" : \"关闭\"}</div>\r\n}\r\n\r\n/** 列表预览 */\r\nexport const PreviewList = ({ value, list, style, onChange }: any) => {\r\n useEffect(() => {\r\n onChange(value);\r\n }, []);\r\n\r\n if (Array.isArray(value)) {\r\n const items = list.filter(({ key }: any) => value.includes(key)).map(({ label }: any) => label);\r\n return <div style={style}>{items?.join()}</div>\r\n } else {\r\n const item = list?.find(({ key }: any) => key === value);\r\n return <div style={style}>{item?.label}</div>\r\n }\r\n}\r\n\r\n/** 文件预览 */\r\nexport const PreviewFile = ({ fileList }: { fileList: any[]}) => {\r\n const downloadUrl = config.request.prefix + config.file.downloadUrl;\r\n return <>\r\n {fileList?.map(({ id, name, url, contentType }: any) => {\r\n const uri = downloadUrl + \"/\" + id;\r\n /** pdf文本预览 */\r\n if (contentType?.endsWith(\"pdf\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <a href={url} target=\"_blank\" rel=\"noreferrer\">{name}</a>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 图片文本预览 */\r\n if (contentType?.startsWith(\"image\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <Image width={200} src={url} alt={name} />\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 视频文本预览 */\r\n if (contentType?.startsWith(\"video\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <video src={url} controls style={{ width: 260 }}>当前浏览器不支持视频播放,请使用最新版谷歌浏览器!</video>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 音频文本预览 */\r\n if (contentType?.startsWith(\"audio\")) {\r\n return <div key={id}>\r\n <div style={{ paddingBottom: 10, display: 'flex', alignItems: 'center' }}>\r\n <audio src={url} controls style={{ width: 'calc(100% - 40px)', height: 30 }}>当前浏览器不支持音频播放,请使用最新版谷歌浏览器!</audio>\r\n <a style={{ paddingLeft: 10 }} href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </div>\r\n </div>\r\n }\r\n /** office文本预览 */\r\n if (name?.endsWith(\".doc\") || name?.endsWith(\".docx\") || name?.endsWith(\".xls\") || name?.endsWith(\".xlsx\") || name?.endsWith(\".ppt\") || name?.endsWith(\".pptx\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <a href={'http://view.officeapps.live.com/op/view.aspx?src=' + url} target=\"_blank\" rel=\"noreferrer\">{name}</a>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 默认文本预览 */\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <a href={url} target=\"_blank\" rel=\"noreferrer\">{name}</a>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n })}\r\n </>\r\n}\r\n\r\nexport const PreviewImage = ({ fileList, width, height, style } : { fileList: any[], width: number, height: number, style?: object }) =>\r\n <>\r\n {fileList?.map(({ id, name, url }) => (\r\n <div key={id} style={style}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <Image width={width} height={height} src={url} alt={name} />\r\n <a href={config.request.prefix + config.file.downloadUrl + \"/\" + id} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n ))}\r\n </>","import React from \"react\";\r\nimport { Form, Input } from \"antd\";\r\nimport { UIComponent } from '@/service';\r\nimport { PreviewText } from \"@/preview\";\r\n\r\nexport default class Text extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, type, preview, placeholder, maxLength, allowClear, showCount, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewText type={type} style={styles} /> : <Input maxLength={maxLength} placeholder={placeholder} allowClear={allowClear} showCount={showCount} disabled={readonly} style={styles} />}\r\n </Form.Item>\r\n );\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { Form, Input } from \"antd\";\r\nimport { UIComponent } from '@/service';\r\nimport { PreviewText } from \"@/preview\";\r\n\r\nexport default class TextArea extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue(); \r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { code, preview, placeholder, maxLength, allowClear, showCount, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles} = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : (rules as [])}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewText style={styles} /> : <Input.TextArea maxLength={maxLength} placeholder={placeholder} allowClear={allowClear} showCount={showCount} disabled={readonly} style={styles} />}\r\n </Form.Item>\r\n );\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { Form, InputNumber as Numerial } from \"antd\";\r\nimport { UIComponent } from '@/service';\r\nimport { PreviewText } from \"@/preview\";\r\n\r\nexport default class InputNumber extends UIComponent<Design.NumberProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const { type = \"number\", precision } = this.props;\r\n let numberProps: {} = {};\r\n if (type === \"digits\") {\r\n if (precision) {\r\n numberProps = {\r\n precision: Number(precision),\r\n };\r\n } else {\r\n numberProps = {\r\n precision: 2,\r\n };\r\n }\r\n } else if (type === \"money\") {\r\n numberProps = {\r\n formatter: (value: string) =>\r\n `¥ ${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\"),\r\n parser: (value: string) => value!.replace(/\\$\\s?|(,*)/g, \"\"),\r\n };\r\n } else if (type === \"percentage\") {\r\n numberProps = {\r\n formatter: (value: string) => `${value}%`,\r\n parser: (value: string) => value!.replace(\"%\", \"\"),\r\n };\r\n }\r\n this.onComputeValue();\r\n const rules = this.rules().map(rule => rule.required ? { ...rule, type: \"number\" } : rule);\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, preview, min, max, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : (rules as [])}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? (<PreviewText style={styles} />) : (<Numerial min={min} max={max} disabled={readonly} {...numberProps} style={styles} />)}\r\n </Form.Item>\r\n );\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Form } from 'antd';\r\nimport ReactWEditor from 'wangeditor-for-react';\r\nimport { PreviewText } from '@/preview';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class Editor extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, title, preview, placeholder, hidden, readonly } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n colon={!!title}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {(preview || readonly) ? <PreviewText style={styles} /> : <EditorWidget placeholder={placeholder} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass EditorWidget extends React.Component<Design.WidgetProps> {\r\n isReactWEditor = false\r\n editorRef: React.RefObject<any> = React.createRef();\r\n \r\n shouldComponentUpdate() {\r\n return !this.isReactWEditor\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { value, placeholder, style, onChange } = this.props;\r\n return (\r\n <ReactWEditor\r\n placeholder={placeholder} \r\n value={value}\r\n style={style}\r\n onBlur={() => {\r\n this.isReactWEditor = false\r\n }}\r\n onFocus={() => {\r\n this.isReactWEditor = true\r\n }}\r\n onChange={(value: string) => {\r\n onChange?.(value);\r\n }}\r\n />\r\n );\r\n } \r\n}\r\n","import React from 'react';\r\nimport { Form, Select } from 'antd';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewList } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nexport default class SelectList extends UIListComponent<Design.RemoteProps, Design.ListState> {\r\n state = {\r\n list: [],\r\n }\r\n \r\n componentDidMount(): void { \r\n const { remote } = this.props;\r\n const optionList = this.optionList();\r\n if (optionList) {\r\n this.setState({ \r\n list: optionList\r\n }, this.initValue);\r\n } else if (remote && remote.trim().length > 0) {\r\n const url = config.request.route + remote;\r\n this.request(url).then((list: Design.ItemOption[]) => {\r\n this.setState({ list }, this.initValue);\r\n });\r\n }\r\n }\r\n\r\n initValue() {\r\n const { defaultValue, multiple } = this.props;\r\n if (defaultValue) {\r\n if (multiple) {\r\n this.setDefaultValue([defaultValue]);\r\n } else {\r\n this.setDefaultValue(defaultValue);\r\n }\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const { code, preview, multiple, placeholder, allowClear = true, readonly, hidden } = this.props;\r\n const rules = multiple ? this.plusRules() : this.rules();\r\n const itemList = this.collectionList();\r\n const list = this.getList(this.state.list, itemList, (plist) => {\r\n if (plist.length > 0) {\r\n const currentValue = this.getFieldValue<string | string[]>();\r\n if (currentValue && (\r\n (!multiple && !plist.some(item => item.key === currentValue)) ||\r\n (multiple && !plist.some(item => currentValue.includes(item.key)))\r\n )) {\r\n this.cleanFieldValue();\r\n }\r\n }\r\n });\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewList list={this.state.list} style={styles} /> :\r\n <SelectWidget list={list} multiple={multiple} placeholder={placeholder} allowClear={allowClear} readonly={readonly} style={styles} />\r\n }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nconst { Option } = Select;\r\nclass SelectWidget extends WidgetComponent<Design.WidgetProps> {\r\n\r\n handleItemValue = (value: string) => {\r\n this.props.onChange?.(value);\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { list, value, multiple, placeholder, allowClear, readonly, style } = this.props;\r\n return (<Select\r\n showSearch\r\n placeholder={placeholder}\r\n mode={multiple ? \"multiple\" : undefined}\r\n disabled={readonly}\r\n value={value as string}\r\n allowClear={allowClear}\r\n style={style}\r\n onChange={this.handleItemValue}\r\n filterOption={(inputValue: string, option: any) =>\r\n (option!.children as unknown as string).toLowerCase().includes(inputValue.toLowerCase())\r\n }\r\n >\r\n {list && (list.map(({ key, label }) => <Option key={key} value={key}>{label}</Option>))}\r\n </Select>);\r\n }\r\n}","import React from 'react';\r\nimport { Form, Checkbox } from 'antd';\r\nimport { PreviewList } from '@/preview';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { config } from '@/config';\r\n\r\nexport default class CheckBox extends UIListComponent<Design.RemoteProps, Design.ListState> {\r\n state = {\r\n list: [],\r\n }\r\n \r\n componentDidMount(): void {\r\n const { remote } = this.props;\r\n const optionList = this.optionList();\r\n if (optionList) {\r\n this.setState({\r\n list: optionList\r\n }, this.initValue);\r\n } else if (remote && remote.trim().length > 0) {\r\n const url = config.request.route + remote;\r\n this.request(url).then((list: Design.ItemOption[]) => {\r\n this.setState({ list }, this.initValue);\r\n });\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.plusRules();\r\n const itemList = this.collectionList();\r\n const list = this.getList(this.state.list, itemList, (plist) => {\r\n if (plist.length > 0) {\r\n const currentValue = this.getFieldValue<string[]>();\r\n if (currentValue && !plist.some(item => currentValue.includes(item.key))) {\r\n this.cleanFieldValue();\r\n }\r\n }\r\n });\r\n const { code, preview, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n { preview ? <PreviewList list={this.state.list} style={styles} /> : <CheckboxWidget list={list} readonly={readonly} style={styles}/> }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return null;\r\n }\r\n}\r\n\r\nclass CheckboxWidget extends WidgetComponent<Design.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, list, readonly, style, onChange } = this.props;\r\n return (\r\n <Checkbox.Group\r\n style={style}\r\n value={value as string[]}\r\n onChange={(value: any) => {\r\n onChange?.(value);\r\n }}\r\n >\r\n {list && (list.map(({ key, label }) => <Checkbox key={key} value={key} disabled={readonly}>{label}</Checkbox>))}\r\n </Checkbox.Group>\r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Form, Radio } from 'antd';\r\nimport { PreviewList } from '@/preview';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { config } from '@/config';\r\n\r\nexport default class RadioButton extends UIListComponent<Design.Radio.Props, Design.ListState> {\r\n state = {\r\n list: [],\r\n }\r\n \r\n componentDidMount(): void {\r\n const { remote } = this.props;\r\n const optionList = this.optionList();\r\n if (optionList) {\r\n this.setState({ \r\n list: optionList\r\n }, this.initValue);\r\n } else if (remote && remote.trim().length > 0) {\r\n const url = config.request.route + remote;\r\n this.request(url).then((list: Design.ItemOption[]) => {\r\n this.setState({ list }, this.initValue);\r\n });\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const itemList = this.collectionList();\r\n const list = this.getList(this.state.list, itemList, (plist) => {\r\n if (plist.length > 0) {\r\n const currentValue = this.getFieldValue<string>();\r\n if (currentValue && !plist.some(item => currentValue.includes(item.key))) {\r\n this.cleanFieldValue();\r\n }\r\n }\r\n });\r\n const { code, preview, optionType, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewList list={list} style={styles} /> : <RadioWidget list={this.state.list} optionType={optionType} readonly={readonly} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n } \r\n}\r\n\r\nclass RadioWidget extends WidgetComponent<Design.Radio.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, list, optionType, readonly, style, onChange } = this.props;\r\n return (\r\n <Radio.Group\r\n value={value}\r\n optionType={optionType}\r\n style={style}\r\n onChange={(e: any) => {\r\n onChange?.(e.target.value);\r\n }}\r\n >\r\n {list && (list.map(({ key, label }) => <Radio key={key} value={key} disabled={readonly}>{label}</Radio>))}\r\n </Radio.Group>\r\n );\r\n } \r\n}\r\n","import React from 'react';\r\nimport { Form, Switch } from 'antd';\r\nimport { PreviewSwitch } from '@/preview';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class SwitchButton extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { code, preview, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n label={this.getLabel()}\r\n name={code}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"checked\"\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewSwitch style={styles} /> : <Switch disabled={readonly} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}","import React from 'react';\r\nimport { Form, InputNumber } from 'antd';\r\nimport format from 'number-format.js';\r\nimport { PreviewDuration } from '@/preview';\r\nimport { UIComponent, WidgetComponent } from '@/service';\r\nimport './index.css';\r\n\r\nexport default class Duration extends UIComponent<Design.ComponentProps> {\r\n\r\n componentDidMount(): void {\r\n this.initValue(\"000:00:00\");\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, preview, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n { preview ? <PreviewDuration style={styles} /> : <DurationWidget readonly={readonly} style={styles}/> }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass DurationWidget extends WidgetComponent<Design.WidgetProps> {\r\n\r\n duration: number[] = [0, 0, 0];\r\n \r\n changeValue = (index: number) => (changeValue: number | null) => {\r\n if (typeof changeValue === \"number\") {\r\n this.duration[index] = changeValue;\r\n const durations = this.duration.map((value: number, index: number) => (index === 0 ? format(\"000\", value) : format(\"00\", value)));\r\n this.props.onChange?.(durations.join(\":\"));\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { value, readonly, style } = this.props;\r\n if (typeof value === \"string\") {\r\n this.duration = value.split(\":\").map(Number);\r\n }\r\n return (\r\n <div className=\"duration\">\r\n <Form.Item>\r\n <InputNumber style={{width: '100%', ...style}} min={0} max={999} precision={0} value={this.duration[0]}\r\n formatter={(value: any) => value! < 100 ? (value! < 10 ? '00'+ value : '0'+ value) : value!.toString()}\r\n onChange={this.changeValue(0)} controls={false} disabled={readonly}\r\n />\r\n </Form.Item><span>小时</span>\r\n <Form.Item>\r\n <InputNumber style={{width: '100%', ...style}} min={0} max={59} precision={0} value={this.duration[1]}\r\n formatter={(value: any) => value! < 10 ? '0'+ value : value!.toString()}\r\n onChange={this.changeValue(1)} controls={false} disabled={readonly}\r\n />\r\n </Form.Item><span>分</span>\r\n <Form.Item>\r\n <InputNumber style={{width: '100%', ...style}} min={0} max={59} precision={0} value={this.duration[2]}\r\n formatter={(value: any) => value! < 10 ? '0'+ value : value!.toString()}\r\n onChange={this.changeValue(2)} controls={false} disabled={readonly}\r\n />\r\n </Form.Item><span>秒</span>\r\n </div>\r\n )\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Form, DatePicker } from 'antd';\r\nimport moment from 'moment';\r\nimport { PreviewText } from '@/preview';\r\nimport { UIComponent, WidgetComponent } from '@/service';\r\n\r\nexport default class Datepicker extends UIComponent<Design.Picker.Props> {\r\n\r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, type = \"date\", format = \"YYYY-MM-DD\", showTime = false, preview, placeholder, allowClear = true, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n { preview ? <PreviewText style={styles}/> : <DateWidget type={type} format={format} showTime={showTime} placeholder={placeholder} allowClear={allowClear} readonly={readonly} style={styles} /> }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass DateWidget extends WidgetComponent<Design.Picker.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, type, format, showTime, placeholder, allowClear, readonly, style, onChange } = this.props; \r\n return (\r\n <DatePicker \r\n value={value ? moment(value, format) : undefined}\r\n picker={type}\r\n format={format}\r\n showTime={showTime ? { format: 'HH:mm' } : undefined}\r\n placeholder={placeholder}\r\n allowClear={allowClear}\r\n disabled={readonly} \r\n style={style}\r\n onChange={(value: any) => {\r\n onChange?.(value?.format(format));\r\n }}\r\n />\r\n )\r\n }\r\n}","import React from 'react';\r\nimport { Form, TimePicker } from 'antd';\r\nimport moment from 'moment';\r\nimport { UIComponent, WidgetComponent } from '@/service';\r\nimport { PreviewText } from '@/preview';\r\n\r\nexport default class Timepicker extends UIComponent<Design.Picker.Props> {\r\n\r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, format = \"HH:mm:ss\", preview, placeholder, allowClear = true, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewText style={styles} /> : <TimeWidget format={format} placeholder={placeholder} allowClear={allowClear} readonly={readonly} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass TimeWidget extends WidgetComponent<Design.Picker.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, format, placeholder, allowClear, readonly, style, onChange } = this.props;\r\n return (\r\n <TimePicker \r\n value={value ? moment(value, format) : undefined}\r\n format={format}\r\n placeholder={placeholder}\r\n allowClear={allowClear}\r\n disabled={readonly}\r\n style={style}\r\n onChange={(value: any) => {\r\n onChange?.(value?.format(format))\r\n }} />\r\n )\r\n }\r\n}\r\n","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import React from 'react';\r\nimport { Form, Upload, Button, Modal, Progress, message } from 'antd';\r\nimport { UploadOutlined } from '@ant-design/icons';\r\nimport request from '@/utils/request';\r\nimport bytes from 'bytes';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewFile } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nconst normFile = (e: any) => {\r\n if (Array.isArray(e)) {\r\n return e;\r\n }\r\n return e && e.list;\r\n};\r\n\r\nexport default class UplaodList extends UIListComponent<Design.File.Props> {\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.plusRules();\r\n const { code, preview, maxCount, fileType, fileTypeMessage, fileSize, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n getValueFromEvent={normFile}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <UploadWidget maxCount={maxCount} fileType={fileType} fileTypeMessage={fileTypeMessage} fileSize={fileSize} readonly={readonly} preview={preview} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass UploadWidget extends WidgetComponent<Design.File.WidgetProps, Design.File.WidgetStates> {\r\n timer?: NodeJS.Timer;\r\n uploading = false;\r\n state = {\r\n fileList: [],\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n }\r\n\r\n componentDidMount(): void {\r\n const { list } = this.props;\r\n const url = config.file.listUrl;\r\n if (list && list?.length > 0 && list[0]) {\r\n request(url)({ ids: list }).then((response: Design.Result) => {\r\n const fileList = response.data.map((file: Design.File.FileInfo) => ({ ...file, status: 'done'}));\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n })\r\n }).catch((error: Error) => {\r\n console.warn(\"url\", url, error);\r\n });\r\n }\r\n }\r\n\r\n onChange(fileList: Design.File.FileInfo[]) {\r\n this.props.onChange?.(fileList.filter(({ id, status }) => (id && status === 'done')).map(({ id }) => id));\r\n }\r\n\r\n onBeforeUpload = (file: any) => {\r\n const { fileSize, fileType, fileTypeMessage } = this.props;\r\n const fileTypeArray = fileType?.replace(/\\ +/g, \"\").split(\",\");\r\n if (fileTypeArray && fileTypeArray.length > 0) {\r\n const isFileType = fileTypeArray.includes(file.type);\r\n if (!isFileType) {\r\n message.error(fileTypeMessage);\r\n return Upload.LIST_IGNORE;\r\n }\r\n } else {\r\n message.error(\"文件类型不匹配!\");\r\n return Upload.LIST_IGNORE;\r\n }\r\n if (fileSize) {\r\n const fileSizeValue = bytes.parse(fileSize);\r\n if (fileSizeValue < file.size) {\r\n message.error(`上传的文件大小,不能超过 ${fileSize}!`);\r\n return Upload.LIST_IGNORE;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n onStart = (): void => {\r\n clearInterval(this.timer);\r\n this.setState({\r\n modal: {\r\n open: true,\r\n progress: 0\r\n }\r\n })\r\n this.uploading = true;\r\n }\r\n\r\n onProgress = (step: { percent: number}) => {\r\n if (!this.uploading) {\r\n return\r\n }\r\n clearInterval(this.timer);\r\n const percent = Math.round(step.percent / 2);\r\n this.setState({\r\n modal: {\r\n open: true,\r\n progress: percent\r\n }\r\n });\r\n if (percent === 50) {\r\n let progress = percent;\r\n this.timer = setInterval(() => {\r\n if (this.uploading) {\r\n this.setState({\r\n modal: {\r\n open: true,\r\n progress: ++progress\r\n }\r\n });\r\n } else {\r\n clearInterval(this.timer);\r\n this.setState({\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n });\r\n }\r\n if (progress === 99) {\r\n clearInterval(this.timer);\r\n }\r\n }, 1000);\r\n }\r\n }\r\n\r\n onSuccess = (response: any, file: any) => {\r\n clearInterval(this.timer);\r\n const { id, url } = response.data;\r\n file.status = \"done\";\r\n file.response = response;\r\n file.id = id;\r\n file.url = url;\r\n const fileList = [...this.state.fileList, file];\r\n this.setState({\r\n fileList,\r\n modal: {\r\n open: true,\r\n progress: 100\r\n }\r\n }, () => {\r\n this.onChange(fileList);\r\n setTimeout(()=> {\r\n this.setState({\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n })\r\n }, 500);\r\n });\r\n this.uploading = false;\r\n }\r\n\r\n onError = (error: any, response: any, file: any) => {\r\n clearInterval(this.timer);\r\n const fileList = [...this.state.fileList, file];\r\n file.status = \"error\";\r\n file.response = response?.message ?? \"上传失败\";\r\n this.setState({\r\n fileList,\r\n modal: {\r\n open: false,\r\n progress: 100\r\n }\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n this.uploading = false;\r\n }\r\n\r\n onRemove = (file: any) => {\r\n const { fileList } = this.state;\r\n const list = fileList.filter(({ id }) => id !== file.id);\r\n this.setState({\r\n fileList: list\r\n }, () => {\r\n this.onChange(list);\r\n });\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { fileList, modal } = this.state;\r\n const { preview, maxCount: count, readonly, style } = this.props;\r\n const maxCount = count ? Number(count) : 0;\r\n if (preview) {\r\n return <PreviewFile fileList={fileList} />\r\n }\r\n const { onStart, onSuccess, onProgress, onError } = this;\r\n const itemProps = { onStart, onSuccess, onProgress, onError }\r\n return (\r\n <>\r\n <Upload\r\n action={config.request.prefix + config.file.uploadUrl}\r\n fileList={fileList}\r\n maxCount={maxCount}\r\n disabled={readonly}\r\n beforeUpload={this.onBeforeUpload}\r\n onRemove={this.onRemove}\r\n // data={file => {\r\n // const mime = this.fileExtraData(fileType);\r\n // return { mime, uid: file.uid };\r\n // }}\r\n { ...itemProps }\r\n >\r\n <Button disabled={readonly ? readonly : maxCount <= fileList.length} icon={<UploadOutlined />} style={style} >上传</Button>\r\n </Upload>\r\n <Modal open={modal.open} closable={false} footer={null}>\r\n <div>上传文件进度</div>\r\n <Progress percent={modal.progress} />\r\n </Modal>\r\n </>\r\n )\r\n }\r\n}","import React from 'react';\r\nimport { Form, Upload, Button, Modal, message } from 'antd';\r\nimport type { UploadProps } from 'antd/es/upload';\r\nimport { PlusOutlined } from '@ant-design/icons';\r\nimport request from '@/utils/request';\r\nimport ImgCrop from 'antd-img-crop';\r\nimport bytes from 'bytes';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewImage } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nconst normFile = (e: any) => {\r\n if (Array.isArray(e)) {\r\n return e;\r\n }\r\n return e && e.list;\r\n};\r\nconst fileType = [\"image/jpeg\", \"image/png\"];\r\n\r\nexport default class UplaodList extends UIListComponent<Design.File.Props> {\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.plusRules();\r\n const { code, preview, maxCount, fileSize, fileWidth = \"100\", fileHeight = \"100\", readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n getValueFromEvent={normFile}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <UploadWidget maxCount={maxCount} fileSize={fileSize} fileWidth={Number(fileWidth)} fileHeight={Number(fileHeight)} readonly={readonly} preview={preview} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass UploadWidget extends WidgetComponent<Design.File.WidgetProps, Design.File.WidgetStates> {\r\n timer?: NodeJS.Timer;\r\n uploading = false;\r\n state = {\r\n fileList: [],\r\n fileView: undefined,\r\n }\r\n\r\n componentDidMount(): void {\r\n const { list } = this.props;\r\n const url = config.file.listUrl;\r\n if (list && list?.length > 0 && list[0]) {\r\n request(url)({ ids: list }).then((response: Design.Result) => {\r\n const fileList = response.data.map((file: Design.File.FileInfo) => ({ ...file, status: 'done'}));\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n })\r\n }).catch((error: Error) => {\r\n console.warn(\"url\", url, error);\r\n });\r\n }\r\n }\r\n\r\n onChange(fileList: Design.File.FileInfo[]) {\r\n this.props.onChange?.(fileList.filter(({ id, status }) => (id && status === 'done')).map(({ id }) => id));\r\n }\r\n\r\n onChangeValue: UploadProps['onChange'] = ({ fileList: list }) => {\r\n const fileList: Design.File.FileInfo[] = list.map((file: any) => {\r\n if (file.response?.status === 200) {\r\n const { id, name, url } = file.response.data;\r\n file.id = id;\r\n // file.name = name;\r\n file.url = url;\r\n file.status = 'done';\r\n } else if (file.response?.status === 500) {\r\n file.status = 'error';\r\n file.response = file.response.message;\r\n }\r\n return file;\r\n });\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n }\r\n\r\n onBeforeUpload = (file: any) => {\r\n const isFileType = fileType.includes(file.type);\r\n if (!isFileType) {\r\n message.error(\"上传文件类型,仅支持图片类型!\");\r\n return Upload.LIST_IGNORE;\r\n }\r\n const { fileSize } = this.props;\r\n if (fileSize) {\r\n const fileSizeValue = bytes.parse(fileSize);\r\n if (fileSizeValue < file.size) {\r\n message.error(`上传的文件大小,不能超过 ${fileSize}!`);\r\n return Upload.LIST_IGNORE;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n onRemove = (file: any) => {\r\n const { fileList: list } = this.state;\r\n const fileList = list.filter(({ id }) => id !== file.id);\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { fileList, fileView } = this.state;\r\n const { preview, maxCount: count, readonly, fileWidth = 100, fileHeight = 100, style } = this.props;\r\n const maxCount = count ? Number(count) : 0;\r\n if (preview) {\r\n return <PreviewImage fileList={fileList} width={fileWidth} height={fileHeight} style={style}/>\r\n }\r\n return (<>\r\n <ImgCrop\r\n rotationSlider\r\n modalTitle=\"图片编辑\"\r\n modalOk=\"确认\"\r\n modalCancel=\"取消\"\r\n aspect={fileWidth / fileHeight}\r\n >\r\n <Upload\r\n listType=\"picture-card\"\r\n accept={fileType.join(\",\")}\r\n action={config.request.prefix + config.file.uploadUrl}\r\n fileList={fileList}\r\n maxCount={maxCount}\r\n disabled={readonly}\r\n beforeUpload={this.onBeforeUpload}\r\n onChange={this.onChangeValue}\r\n onRemove={this.onRemove}\r\n onPreview={(file: any) => this.setState({ fileView: file })}\r\n >\r\n {!readonly && (Number(maxCount) > fileList.length) && <Button type=\"link\" icon={<PlusOutlined />} style={style}/>}\r\n </Upload>\r\n </ImgCrop>\r\n {fileView?.[\"id\"] && <Modal title={fileView[\"name\"]} open={true} footer={null} onCancel={() => this.setState({ fileView: undefined})}>\r\n <img alt={fileView[\"name\"]} style={{ width: '100%' }} src={fileView[\"url\"]} />\r\n </Modal>}\r\n </>)\r\n }\r\n}","import React from 'react';\r\nimport { Form, Upload, Button, Modal, Progress, message } from 'antd';\r\nimport { UploadOutlined } from '@ant-design/icons';\r\nimport request from '@/utils/request';\r\nimport bytes from 'bytes';\r\nimport FileUpload from 'file-block-upload';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewFile } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nconst normFile = (e: any) => {\r\n if (Array.isArray(e)) {\r\n return e;\r\n }\r\n return e && e.list;\r\n};\r\n\r\nexport default class UplaodList extends UIListComponent<Design.File.Props> {\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.plusRules();\r\n const { code, preview, maxCount, fileType, fileTypeMessage, fileSize, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n getValueFromEvent={normFile}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <UploadWidget maxCount={maxCount} fileType={fileType} fileTypeMessage={fileTypeMessage} fileSize={fileSize} readonly={readonly} preview={preview} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass UploadWidget extends WidgetComponent<Design.File.WidgetProps, Design.File.WidgetStates> {\r\n timer?: NodeJS.Timer;\r\n uploading = false;\r\n state = {\r\n fileList: [],\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n }\r\n\r\n componentDidMount(): void {\r\n const { list } = this.props;\r\n const url = config.file.listUrl;\r\n if (list && list.length > 0) {\r\n request(url)({ ids: list }).then((response: Design.Result) => {\r\n const fileList = response.data.map((file: Design.File.FileInfo) => ({ ...file, status: 'done' }));\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n })\r\n }).catch((error: Error) => {\r\n console.warn(\"url\", url, error);\r\n });\r\n }\r\n }\r\n\r\n onBeforeUpload = (file: any) => {\r\n const { fileSize, fileType, fileTypeMessage } = this.props;\r\n const fileTypeArray = fileType?.replace(/\\ +/g, \"\").split(\",\");\r\n if (fileTypeArray && fileTypeArray.length > 0) {\r\n const isFileType = fileTypeArray.includes(file.type);\r\n if (!isFileType) {\r\n message.error(fileTypeMessage);\r\n return Upload.LIST_IGNORE;\r\n }\r\n } else {\r\n message.error(\"文件类型不匹配!\");\r\n return Upload.LIST_IGNORE;\r\n }\r\n if (fileSize) {\r\n const fileSizeValue = bytes.parse(fileSize);\r\n if (fileSizeValue < file.size) {\r\n message.error(`上传的文件大小,不能超过 ${fileSize}!`);\r\n return Upload.LIST_IGNORE;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n customRequest = (info: any) => {\r\n const options = {\r\n blockSize: config.chunk.chunkSize,\r\n checkFile: async ({fileName, fileMd5, fileSize}: any) => (\r\n await request(\"post form \" + config.chunk.checkFile)({ fileName, fileMd5, fileSize })\r\n ),\r\n checkBlock: async ({fileName, fileMd5, blockMd5, blockIndex}: any) => (\r\n await request(\"post form \" + config.chunk.checkChunk)({ fileName, fileMd5, blockMd5, blockIndex })\r\n ),\r\n\r\n uploadBlock: async ({fileName, fileMd5, blockMd5, blockIndex, file}: any) => {\r\n const formData = new FormData();\r\n formData.append(\"blockIndex\", String(blockIndex));\r\n formData.append(\"blockMd5\", blockMd5);\r\n formData.append(\"fileName\", fileName);\r\n formData.append(\"fileMd5\", fileMd5);\r\n formData.append(\"file\", file as Blob);\r\n return await request(\"post form \" + config.chunk.chunkUpload)(formData);\r\n },\r\n\r\n mergeBlock: async ({fileName, fileMd5, fileSize}: any) => (\r\n await request(\"post form \" + config.chunk.doMerge)({fileName, fileMd5, fileSize})\r\n ),\r\n mergeProgress: async () => {\r\n const result = await request(config.chunk.mergeProgress)();\r\n return result?.data;\r\n },\r\n\r\n verifyFile: async ({fileName, fileMd5, fileSize}: any) => (\r\n await request(\"post form \" + config.chunk.onComplete)({fileName, fileMd5, fileSize})\r\n ),\r\n verifyProgress: async () => {\r\n const result = await request(config.chunk.completeProgress)();\r\n return result?.data;\r\n },\r\n };\r\n\r\n const upload = FileUpload.create(options);\r\n upload.progress((file: any, progress: number) => {\r\n file.status = \"uploading\";\r\n this.setState({ modal: { open: true, progress }});\r\n });\r\n upload.complete((file: any) => {\r\n const { id, url } = file.response;\r\n file.id = id;\r\n file.url = url;\r\n file.status = \"done\";\r\n const fileList = [...this.state.fileList, file];\r\n this.setState({\r\n fileList,\r\n modal: { open: false, progress: 0 }\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n });\r\n upload.error((file: any, error: string) => {\r\n file.status = 'error';\r\n file.response = error;\r\n let fileList: any[] = this.state.fileList;\r\n const index = fileList.findIndex(({ uid }) => uid === file.uid);\r\n if (index === -1) {\r\n fileList.push(file);\r\n } else {\r\n fileList[index] = file;\r\n }\r\n this.setState({\r\n fileList,\r\n modal: { open: false, progress: 0 }\r\n });\r\n });\r\n upload.start(info.file);\r\n }\r\n\r\n onChange(fileList: Design.File.FileInfo[]) {\r\n this.props.onChange?.(fileList.filter(({ status }) => status === 'done').map(({ id }) => id));\r\n }\r\n\r\n onRemove = (file: any) => {\r\n const { fileList } = this.state;\r\n const list = fileList.filter(({ id }) => id !== file.id);\r\n this.setState({\r\n fileList: list\r\n }, () => {\r\n this.onChange(list);\r\n });\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { fileList, modal } = this.state;\r\n const { preview, maxCount: count, readonly, style } = this.props;\r\n const maxCount = count ? Number(count) : 0;\r\n if (preview) {\r\n return <PreviewFile fileList={fileList} />\r\n }\r\n return (\r\n <>\r\n <Upload\r\n action={config.request.prefix + config.file.uploadUrl}\r\n fileList={fileList}\r\n maxCount={maxCount}\r\n disabled={readonly}\r\n beforeUpload={this.onBeforeUpload}\r\n customRequest={this.customRequest}\r\n onRemove={this.onRemove}\r\n // data={file => {\r\n // const mime = this.fileExtraData(fileType);\r\n // return { mime, uid: file.uid };\r\n // }}\r\n >\r\n <Button disabled={readonly ? readonly : maxCount <= fileList.length} icon={<UploadOutlined />} style={style} >上传</Button>\r\n </Upload>\r\n <Modal open={modal.open} closable={false} footer={null}>\r\n <div>上传文件进度</div>\r\n <Progress percent={modal.progress} />\r\n </Modal>\r\n </>\r\n )\r\n }\r\n}","import React from 'react';\r\nimport { Form, Card, Table, Modal, Input, Space, Row, Col } from 'antd';\r\nimport { QuestionCircleOutlined } from '@ant-design/icons';\r\nimport { concat, find, uniqueId } from 'lodash';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { validate } from \"@/applets\";\r\n\r\nexport default class TableList extends UIListComponent<Design.ComponentProps> {\r\n \r\n getColumns() {\r\n const columnList = find(this.props.children, { tag: \"Columns\" })\r\n if (columnList) {\r\n return columnList.children?.map((column: Design.Table.ColumnData) => ({\r\n ...column,\r\n rules: column.rules?.map(validate)\r\n }));\r\n }\r\n return [];\r\n }\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.plusRules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, title, preview, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <TableWidget preview={preview || readonly} title={title} columns={this.getColumns()} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass TableWidget extends WidgetComponent<Design.Table.WidgetProps, Design.Table.WidgetStates> {\r\n state= {\r\n dataSource: [],\r\n modal: {\r\n title: \"\",\r\n entity: undefined,\r\n show: false\r\n }\r\n };\r\n\r\n componentDidMount(): void {\r\n const { list, onChange } = this.props;\r\n if (Array.isArray(list)) {\r\n const dataSource = list.map(({ worksId, worksExtraId, ...items }, index) => {\r\n return { id: worksExtraId, index: index + 1, ...items }\r\n });\r\n this.setState({ dataSource }, () => {\r\n onChange?.(dataSource);\r\n })\r\n }\r\n }\r\n\r\n getColumns() {\r\n const { title, preview, columns, onChange } = this.props;\r\n const { dataSource } = this.state;\r\n if (preview) {\r\n return columns;\r\n }\r\n return concat(columns, {\r\n title: '操作',\r\n dataIndex: 'option',\r\n valueType: 'option',\r\n render: (_: unknown, record: any) => [\r\n <Space key=\"option\">\r\n <a key=\"modifly\"\r\n onClick={() => {\r\n this.setState({\r\n modal: { title: `修改${title}`, entity: record, show: true }\r\n })\r\n }}\r\n >\r\n 修改\r\n </a>\r\n <a key=\"delete\"\r\n onClick={() => {\r\n Modal.confirm({\r\n title: '警告',\r\n icon: <QuestionCircleOutlined />,\r\n content: '请确认是否删除该项数据?',\r\n okText: '确认',\r\n cancelText: '取消',\r\n onOk: () => {\r\n const list: Design.Table.Item[] = dataSource.filter(({ id, uid }) => !((id && record.id === id) || (uid && record.uid === uid)));\r\n this.setState({ dataSource: list }, () => {\r\n onChange?.(list);\r\n })\r\n },\r\n });\r\n }}\r\n >\r\n 删除\r\n </a>\r\n </Space>\r\n ],\r\n });\r\n }\r\n\r\n onFinish = (entity: Design.Table.Item) => {\r\n const { dataSource } = this.state;\r\n let list: Design.Table.Item[] = [];\r\n if (entity.id || entity.uid) {\r\n list = dataSource.map((item: Design.Table.Item) => {\r\n if (entity.id && item.id === entity.id) {\r\n return { ...item, ...entity }\r\n } else if (entity.uid && item.uid === entity.uid) {\r\n return { ...item, ...entity }\r\n }\r\n return item;\r\n });\r\n } else {\r\n entity.index = dataSource.length + 1;\r\n entity.uid = uniqueId();\r\n list = [...dataSource, entity];\r\n }\r\n\r\n this.setState({\r\n dataSource: list,\r\n modal: { title: \"\", entity: undefined, show: false }\r\n }, () => {\r\n this.props.onChange?.(list);\r\n })\r\n }\r\n\r\n onCancel = () => {\r\n this.setState({\r\n modal: { title: \"\", entity: undefined, show: false }\r\n })\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { title, preview, style } = this.props;\r\n const { dataSource, modal } = this.state;\r\n const columns = this.getColumns();\r\n return (\r\n <Card\r\n title={title}\r\n bodyStyle={{ padding: '0px 12px' }}\r\n extra={\r\n preview ? null :\r\n <a key=\"new\" onClick={() => {\r\n this.setState({\r\n modal: { title: `新建${title}`, entity: undefined, show: true }\r\n })\r\n }}>添加</a>\r\n }\r\n >\r\n <Table rowKey=\"index\" size=\"small\" style={style} columns={columns} dataSource={dataSource} />\r\n {modal.show && <ModalForm title={modal.title} entity={modal.entity} columns={columns} onFinish={this.onFinish} onCancel={this.onCancel} />}\r\n </Card>\r\n )\r\n }\r\n}\r\n\r\nconst ModalForm = ({ title, entity, columns, onFinish, onCancel }: Design.Table.ModalProps) => {\r\n const [form] = Form.useForm();\r\n return (\r\n <Modal \r\n title={title}\r\n width={740}\r\n open={true}\r\n destroyOnClose={true}\r\n onCancel={onCancel}\r\n onOk={async () => {\r\n const valid = form.validateFields()\r\n valid.then((data: Design.Table.Item)=> {\r\n onFinish({...entity, ...data});\r\n }).catch((e: any)=> {\r\n console.warn(e);\r\n });\r\n }} \r\n >\r\n <Form\r\n form={form} \r\n name=\"modalTable\"\r\n initialValues={entity}\r\n wrapperCol={{ span: 22 }}\r\n autoComplete=\"off\"\r\n layout='vertical'\r\n >\r\n <Row>\r\n {columns.length > 0 && columns.map(({ title, dataIndex, placeholder, rules }) => {\r\n if (dataIndex !== 'index' && dataIndex !== 'option') {\r\n return (\r\n <Col span={12} key={dataIndex}>\r\n <Form.Item label={title} name={dataIndex} rules={rules as []}>\r\n <Input placeholder={placeholder} />\r\n </Form.Item>\r\n </Col>\r\n )\r\n }\r\n })}\r\n </Row>\r\n </Form>\r\n </Modal>\r\n )\r\n}\r\n","function _objectDestructuringEmpty(obj) {\n if (obj == null) throw new TypeError(\"Cannot destructure \" + obj);\n}\nmodule.exports = _objectDestructuringEmpty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _extends() {\n module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _extends.apply(this, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import React, { useRef } from 'react';\r\nimport { Form, FormInstance, Card, Table, Modal, Space } from 'antd';\r\nimport { QuestionCircleOutlined } from '@ant-design/icons';\r\nimport { concat, find, uniqueId } from 'lodash';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport XMLDocument from \"@/utils/document\";\r\nimport { config } from '@/config';\r\nimport FormDocument from '@/form';\r\n\r\nexport default class FormList extends UIListComponent<Design.Form.Props, Design.Form.States> {\r\n\r\n itemList:{ code: string; title: string, type: string; data: {}; }[] = []\r\n columnList: any[] = []\r\n state = {\r\n doc: undefined,\r\n loading: true\r\n };\r\n\r\n componentDidMount(): void {\r\n const formId = this.props.formId!;\r\n this.setState({ loading: true });\r\n this.request(config.form.documentUrl, { formId }).then((xml: string) => {\r\n const doc = XMLDocument.toDocument(xml);\r\n this.setState({ doc });\r\n this.initItems(doc);\r\n });\r\n }\r\n\r\n initItems = async(doc: Document) => {\r\n this.columnList = find(this.props.children, { tag: \"Columns\" }).children;\r\n const codes: any[] = this.columnList.map((column: any) => column.dataIndex);\r\n const elements = XMLDocument.selectors(doc, \"[code]\");\r\n for (const element of elements) {\r\n const code = element.getAttribute(\"code\");\r\n const title = element.getAttribute(\"title\")!;\r\n const type = element.tagName.toLowerCase();\r\n if (code && codes.includes(code)) {\r\n const data: any = {};\r\n const remote = element.getAttribute(\"remote\");\r\n const options = XMLDocument.selectors(element, \"Option\");\r\n if (options.length > 0) {\r\n for (const option of options) {\r\n const key = option.getAttribute(\"value\");\r\n const value = option.textContent;\r\n if (key && value) {\r\n data[key] = value;\r\n }\r\n }\r\n } else if (remote) {\r\n const list: Design.ItemOption[] = await this.request(config.request.route + remote);\r\n for(const item of list) {\r\n data[item.key] = item.label;\r\n }\r\n }\r\n this.itemList.push({ code, title, type, data });\r\n }\r\n }\r\n this.setState({ loading: false });\r\n }\r\n \r\n render(): React.ReactNode { \r\n const show = this.display();\r\n if (show && !this.state.loading) {\r\n this.onComputeValue();\r\n const rules = this.plusRules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, title, witdh, preview, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n const { doc } = this.state;\r\n return (\r\n <Form.Item\r\n name={code}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <FormWidget preview={preview || readonly} title={title} witdh={witdh} columns={this.columnList} items={this.itemList} document={doc} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass FormWidget extends WidgetComponent<Design.Form.WidgetProps, Design.Form.WidgetStates> {\r\n state= {\r\n dataSource: [],\r\n modal: {\r\n title: \"\",\r\n entity: undefined,\r\n show: false\r\n }\r\n };\r\n\r\n componentDidMount(): void {\r\n const list = this.props.list;\r\n if (Array.isArray(list)) {\r\n const dataSource = list.map(({ ...data }, index) => ({ id: uniqueId(), index: index + 1, ...data }));\r\n this.onChange(dataSource);\r\n }\r\n }\r\n\r\n onChange(list: any[]) {\r\n this.setState({ \r\n dataSource: list,\r\n modal: { title: \"\", entity: undefined, show: false }\r\n }, () => {\r\n this.props.onChange?.(list.map(({ id, index, ...data}) => data));\r\n })\r\n }\r\n\r\n getColumns() {\r\n const { preview, title, columns, items } = this.props;\r\n const { dataSource } = this.state;\r\n\r\n const columnList = columns.map((column: Design.Form.ColumnItem) => {\r\n const code = column.dataIndex\r\n const item: any = items.find((item: any) => item.code === code);\r\n if (item) {\r\n if (!column.title) {\r\n column.title = item.title;\r\n }\r\n column.render = (text: string) => Object.keys(item.data).length === 0 ? text: item.data[text]\r\n }\r\n return column;\r\n });\r\n \r\n if (preview) {\r\n return columnList;\r\n }\r\n return concat(columnList, {\r\n title: '操作',\r\n dataIndex: 'option',\r\n valueType: 'option',\r\n render: (_: unknown, record: any) => [\r\n <Space key=\"option\">\r\n <a key=\"modifly\"\r\n onClick={() => {\r\n this.setState({\r\n modal: { title: `修改${title}`, entity: record, show: true }\r\n })\r\n }}\r\n >修改</a>\r\n <a key=\"delete\"\r\n onClick={() => {\r\n Modal.confirm({\r\n title: '警告',\r\n icon: <QuestionCircleOutlined />,\r\n content: '请确认是否删除该项数据?',\r\n okText: '确认',\r\n cancelText: '取消',\r\n onOk: () => {\r\n const list: Design.Form.Data[] = dataSource.filter(({ id }) => !(id && record.id === id));\r\n this.onChange(list);\r\n },\r\n });\r\n }}\r\n >删除</a>\r\n </Space>\r\n ],\r\n });\r\n }\r\n\r\n onFinish = (entity: Design.Form.Data) => {\r\n const dataSource = this.state.dataSource;\r\n let list: Design.Form.Data[] = [];\r\n if (entity.id) {\r\n list = dataSource.map((data: Design.Form.Data) => data.id === entity.id ? { ...data, ...entity } : data);\r\n } else {\r\n entity.id = uniqueId();\r\n entity.index = dataSource.length + 1;\r\n list = [...dataSource, entity];\r\n }\r\n this.onChange(list);\r\n }\r\n\r\n onCancel = () => {\r\n this.setState({\r\n modal: { title: \"\", entity: undefined, show: false }\r\n })\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { preview, title, witdh, document, style } = this.props;\r\n const { dataSource, modal } = this.state;\r\n const columns = this.getColumns();\r\n return (\r\n <Card\r\n title={title}\r\n bodyStyle={{ padding: '0px 12px' }}\r\n extra={\r\n preview ? null :\r\n <a key=\"new\" onClick={() => {\r\n this.setState({\r\n modal: { title: `新建${title}`, entity: undefined, show: true }\r\n })\r\n }}>添加</a>\r\n }\r\n >\r\n <Table rowKey=\"id\" size=\"small\" style={style} columns={columns} dataSource={dataSource} />\r\n {modal.show && <ModalForm title={modal.title} witdh={witdh} entity={modal.entity} document={document} onFinish={this.onFinish} onCancel={this.onCancel} />}\r\n </Card>\r\n )\r\n }\r\n}\r\n\r\nconst ModalForm = ({ title, witdh=\"740\", entity, document, onFinish, onCancel }: Design.Form.ModalProps) => {\r\n const form: React.MutableRefObject<FormInstance | undefined> = useRef();\r\n \r\n return (\r\n <Modal \r\n title={title}\r\n width={Number(witdh)}\r\n open={true}\r\n destroyOnClose={true}\r\n onCancel={onCancel}\r\n onOk={async () => {\r\n try {\r\n await form.current?.validateFields();\r\n const data = form.current?.getFieldsValue();\r\n onFinish({...entity, ...data});\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }} \r\n >\r\n {document && <FormDocument form={form} document={document} initialValues={entity}/>}\r\n </Modal>\r\n )\r\n}\r\n","import { Row } from 'antd';\r\nimport React from 'react';\r\n\r\nexport default ({ children, gutter }: any) => (\r\n <Row gutter={Number(gutter)} style={{ margin: 0 }}>\r\n {children}\r\n </Row>\r\n)","import React from 'react';\r\nimport { Col } from 'antd';\r\n\r\nexport default ({ span, children }: any) => {\r\n return (\r\n <Col span={span}>\r\n {children}\r\n </Col>\r\n )\r\n}","import React, { useMemo } from 'react';\r\nimport { Steps } from 'antd';\r\n\r\nexport default ({ direction, stepIndex, onChangeSetp, children }: any) => {\r\n const items = useMemo(() => (\r\n children?.map(({ id, attributes }: any) => {\r\n const { title, description } = attributes;\r\n return { key: id, title, description };\r\n })\r\n ), [children]);\r\n \r\n return (\r\n <Steps\r\n current={stepIndex}\r\n direction={direction}\r\n onChange={onChangeSetp}\r\n items={items}\r\n style={{ padding: 16, backgroundColor: \"white\" }}\r\n />\r\n )\r\n}","import React, { useMemo, memo } from 'react';\r\nimport { Layout } from 'antd';\r\nimport { toStyles } from \"@/utils/style\";\r\n\r\nconst { Content } = Layout;\r\n\r\nexport default memo(({ currentStepIndex, stepIndex, style, children }: any) => {\r\n const itemStyle = useMemo(() => {\r\n const styles = style ? toStyles(style) : { padding: 16, backgroundColor: \"white\" };\r\n if (currentStepIndex !== Number(stepIndex)) {\r\n Object.assign(styles, { \"display\": \"none\" });\r\n }\r\n return styles;\r\n }, [currentStepIndex]);\r\n \r\n return (\r\n <Content style={itemStyle} >\r\n {children}\r\n </Content>\r\n )\r\n});","import React from 'react';\r\nimport { Divider } from 'antd';\r\n\r\nexport default ({ dashed = false, orientation = \"center\", children }: any) => (\r\n <Divider dashed={dashed} orientation={orientation} style={{ color: \"#055ab5\", fontWeight: \"bold\" }}>{children}</Divider>\r\n)","import React, { useState, useMemo, memo } from 'react';\r\nimport { DownOutlined, UpOutlined } from '@ant-design/icons';\r\nimport { Button } from 'antd';\r\nimport { toStyles } from \"@/utils/style\";\r\n\r\nconst hide = {\r\n display: 'none'\r\n}\r\nconst show = {\r\n display: 'block'\r\n}\r\n\r\nexport default memo(({ defaultExpanded = true, on, off, style, collapse, children }: any) => {\r\n const [isExpanded, onExpanded] = useState(defaultExpanded);\r\n const styles = toStyles(style);\r\n if (collapse) {\r\n return (\r\n <>\r\n <div style={styles}>\r\n <Button\r\n type='link'\r\n onClick={() => {\r\n onExpanded(!isExpanded);\r\n }}\r\n >{isExpanded ? off : on}{isExpanded ? <UpOutlined /> : <DownOutlined />} </Button>\r\n </div>\r\n <div style={isExpanded ? show : hide}>\r\n {children}\r\n </div>\r\n </>\r\n )\r\n }\r\n return <>{children}</>;\r\n});","import React, { PureComponent, ReactNode } from \"react\";\r\nimport { Form as BaseForm, FormInstance, Skeleton } from \"antd\";\r\nimport { find, mapValues, camelCase, isBoolean, isObject, isArray, isUndefined } from \"lodash\";\r\nimport XMLDocument from \"@/utils/document\";\r\nimport XML from \"@/entity/XML\";\r\nimport { ProComponent } from \"@/service\";\r\nimport * as BaseComponents from \"@/components\"\r\nimport { Row, Col, Collapse, Content, Divider, Steps } from \"@/containers\";\r\nimport { DesignContext } from \"@/context\";\r\nimport { config } from \"@/config\";\r\nimport { regrister, autoClose } from \"@/utils/loading\";\r\n\r\nconst Components: {[name: string]: {}} = BaseComponents;\r\nconst Containers: {[name: string]: {}} = { Row, Col, Collapse, Content, Divider, Steps };\r\n\r\nexport default class FormDocument extends PureComponent<Design.HomeProps, Design.HomeState> {\r\n\r\n state = {\r\n stepIndex: 0,\r\n root: undefined,\r\n loading: true\r\n };\r\n\r\n form: React.RefObject<FormInstance>;\r\n preview?: boolean;\r\n layouts?: {};\r\n styles: {};\r\n showTitle?: boolean;\r\n hideClear: boolean = false;\r\n customComponents?: {[name:string]: {}};\r\n\r\n constructor(props: Design.HomeProps) {\r\n super(props);\r\n this.styles = props.style ?? {};\r\n this.form = props.form ?? React.createRef()\r\n }\r\n\r\n componentDidMount(): void { \r\n const { document, preview } = this.props;\r\n let root;\r\n if (typeof document === \"string\") {\r\n root = XMLDocument.getRoot(document);\r\n } else {\r\n root = XMLDocument.parser(document);\r\n }\r\n \r\n const { style: styleValue, labelCol, wrapperCol, showTitle, hideClear } = root.attributes;\r\n this.showTitle = !!showTitle;\r\n this.hideClear = !!hideClear;\r\n if (typeof styleValue === \"string\") {\r\n const styleList: string[] = styleValue?.replace(/\\ +/g, \"\").split(\";\");\r\n styleList?.forEach(style => {\r\n if (style) {\r\n const [key, value] = style.split(\":\");\r\n Object.assign(this.styles, { [camelCase(key)]: value });\r\n }\r\n });\r\n }\r\n if (labelCol && wrapperCol) {\r\n this.layouts = {\r\n labelCol: { span: labelCol },\r\n wrapperCol: { span: wrapperCol },\r\n };\r\n }\r\n this.preview = preview ?? false; \r\n if (config.components) {\r\n this.customComponents = mapValues(config.components, (component: any) => (props: any) => <ProComponent Component={component} { ...props} />)\r\n }\r\n this.setState({ root, loading: true });\r\n\r\n /** 注册loading插件 */\r\n regrister(loading => {\r\n this.setState({ loading });\r\n });\r\n /** 自动关闭 Skeleton */\r\n autoClose();\r\n }\r\n\r\n /**\r\n * 销毁form时,重置数据\r\n */\r\n componentWillUnmount(): void {\r\n this.form.current?.resetFields();\r\n this.setState({ root: undefined, loading: true });\r\n }\r\n\r\n /**\r\n * 值发生变化时,变更state\r\n */\r\n onValuesChange = (changedValues: any) => {\r\n this.setState({\r\n values: changedValues\r\n })\r\n };\r\n\r\n /**\r\n * 切换步骤\r\n * \r\n * @param stepIndex \r\n */\r\n onStepIndex = (stepIndex: number) => { \r\n this.setState({\r\n stepIndex\r\n })\r\n }\r\n\r\n /**\r\n * 设置组件状态\r\n * \r\n * @param attributes \r\n */\r\n setComponentStatus(attributes: { [name: string]: string | boolean }) {\r\n const { hidden, readonly } = this.props;\r\n // 控件是否隐藏\r\n if (isBoolean(hidden)) {\r\n attributes.hidden = hidden;\r\n } else if (isArray(hidden)) {\r\n attributes.hidden = hidden.includes(attributes.code as string);\r\n } else if (isObject(hidden)) {\r\n attributes.hidden = !!hidden[attributes.code as string];\r\n } else {\r\n attributes.hidden = attributes.hidden ?? false;\r\n }\r\n // 控件是否只读\r\n if (isBoolean(readonly)) {\r\n attributes.readonly = readonly;\r\n } else if (isArray(readonly)) {\r\n attributes.readonly = readonly.includes(attributes.code as string);\r\n } else if (isObject(readonly)) {\r\n attributes.readonly = !!readonly[attributes.code as string];\r\n } else {\r\n attributes.readonly = attributes.readonly ?? false;\r\n }\r\n // 控件是否隐藏清除数据\r\n if (isUndefined(attributes.hideClear)) {\r\n attributes.hideClear = this.hideClear;\r\n }\r\n }\r\n\r\n /**\r\n * 加载组件\r\n * \r\n * @param xml \r\n * @param Component \r\n * @returns \r\n */\r\n component(xml: XML, Component: any) {\r\n const { id, attributes, children } = xml;\r\n this.setComponentStatus(attributes);\r\n return <Component key={id} preview={this.preview} {...attributes}>{children?.map(this.children)}</Component>\r\n }\r\n\r\n /**\r\n * 加载容器\r\n * \r\n * @param xml \r\n * @returns \r\n */\r\n container({ id, tag, attributes, text, children }: XML) {\r\n if (tag === \"Row\") {\r\n return <Row key={id} {...attributes}>{children?.map(this.children)}</Row>\r\n }\r\n if (tag === \"Col\") {\r\n return <Col key={id} span={Number(attributes.span)}>{children?.map(this.children)}</Col>\r\n }\r\n if (tag === \"Collapse\") {\r\n return <Collapse key={id} collapse={this.props.collapse} {...attributes}>{children?.map(this.children)}</Collapse>\r\n }\r\n if (tag === \"Content\") {\r\n return <Content key={id} currentStepIndex={this.state.stepIndex} {...attributes}>{children?.map(this.children)}</Content>\r\n }\r\n if (tag === \"Steps\") {\r\n return <Steps key={id} stepIndex={this.state.stepIndex} onChangeSetp={this.onStepIndex} {...attributes}>{children}</Steps>\r\n }\r\n if (tag === \"Divider\") {\r\n return <Divider key={id} {...attributes}>{text}</Divider>\r\n }\r\n }\r\n\r\n /**\r\n * 加载控件\r\n * \r\n * @param xml \r\n * @returns \r\n */\r\n applet({ tag, attributes, cdata, children }: XML) {\r\n if (tag === \"Columns\") {\r\n const child = children?.map(({ attributes, children }) => {\r\n if (children) {\r\n const rules: any = find(children.map(this.children), { tag: \"Validates\" });\r\n return { ...attributes, rules: rules?.children ?? [] };\r\n }\r\n return attributes;\r\n });\r\n return { tag, children: child };\r\n }\r\n if (tag === \"Options\") {\r\n const child = children?.map(({ attributes: { value }, text }) => ({ key: value, label: text }));\r\n return { tag, children: child };\r\n }\r\n if (tag === \"Validates\") {\r\n const child = children?.map(({ attributes }) => attributes);\r\n return { tag, children: child };\r\n }\r\n if (tag === \"Conditions\") {\r\n const { type, action } = attributes;\r\n const child = children?.map(({ attributes }) => attributes);\r\n return { tag, type, action, children: child };\r\n }\r\n if (tag === \"Collection\" || tag === \"Compute\") {\r\n return { tag, cdata };\r\n }\r\n }\r\n\r\n /**\r\n * 加载子项\r\n * \r\n * @param xml \r\n * @returns \r\n */\r\n children = (xml: XML) => {\r\n const Component = this.customComponents?.[xml.tag] ?? Components[xml.tag];\r\n if (Component) {\r\n return this.component(xml, Component);\r\n }\r\n const Container = Containers[xml.tag];\r\n if (Container) {\r\n return this.container(xml);\r\n }\r\n return this.applet(xml);\r\n }\r\n\r\n render(): ReactNode {\r\n const { root , loading } = this.state;\r\n const { initialValues } = this.props;\r\n return <>\r\n { root && \r\n <DesignContext.Provider value={{ ...this.props, form: this.form, showTitle: this.showTitle}}>\r\n <Form\r\n form={this.form}\r\n style={loading ? { ...this.styles, display: \"none\"} : this.styles }\r\n initialValues={initialValues}\r\n onValuesChange={this.onValuesChange}\r\n {...this.layouts}\r\n >\r\n {(root as XML).children?.map(this.children)}\r\n </Form>\r\n </DesignContext.Provider>\r\n }\r\n { loading && <Skeleton active />}\r\n </>\r\n }\r\n}\r\n\r\n/**\r\n * 表单组件\r\n */\r\nclass Form extends React.PureComponent<Design.FormProps> {\r\n\r\n onFinish = (values: object) => {\r\n console.log(\"Success:\", values);\r\n };\r\n\r\n render(): React.ReactNode {\r\n const { form, style, labelCol, wrapperCol, initialValues, children, onValuesChange } = this.props;\r\n return (\r\n <BaseForm\r\n ref={form}\r\n style={style}\r\n labelCol={labelCol}\r\n wrapperCol={wrapperCol}\r\n initialValues={initialValues}\r\n onFinish={this.onFinish}\r\n autoComplete=\"off\"\r\n onValuesChange={changedValues => {\r\n onValuesChange(changedValues);\r\n }}\r\n >\r\n {children}\r\n </BaseForm>\r\n );\r\n }\r\n}\r\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","exports","arr","Array","isArray","module","__esModule","i","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","call","next","Object","done","push","value","length","err","len","arr2","arrayLikeToArray","require$$0","o","minLen","n","prototype","toString","slice","constructor","name","from","test","TypeError","arrayWithHoles","iterableToArrayLimit","require$$1","unsupportedIterableToArray","require$$2","nonIterableRest","require$$3","instance","Constructor","_typeof","obj","input","hint","prim","toPrimitive","undefined","res","String","Number","arg","key","toPropertyKey","_defineProperties","target","props","descriptor","enumerable","configurable","writable","defineProperty","protoProps","staticProps","self","ReferenceError","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","subClass","superClass","create","assertThisInitialized","_getPrototypeOf","getPrototypeOf","XML","element","_classCallCheck","_defineProperty","this","id","uniqueId","_step","_iterator","_createForOfIteratorHelper","attributes","s","item","trim","isBoolean","toBoolean","e","f","children","_step2","_iterator2","childNodes","_this$children","_node$nodeValue","node","Element","nodeType","textContent","text","cdata","nodeValue","replace","tag","nodeName","_createClass","parseInt","XMLDocument","documentString","DOMParser","parseFromString","doc","toDocument","parser","selectors","querySelector","querySelectorAll","source","excluded","sourceKeys","keys","indexOf","objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","asyncGeneratorStep","gen","resolve","reject","_next","_throw","info","error","Promise","then","fn","args","arguments","apply","_regeneratorRuntime","Op","hasOwn","hasOwnProperty","desc","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","context","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","record","result","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","async","iter","val","object","reverse","pop","skipTempReset","prev","charAt","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","runtime","regenerator","regeneratorRuntime","accidentalStrictMode","globalThis","Function","validate","_ref","_ref$type","required","minlength","maxlength","min","max","pattern","message","RegExp","DesignContext","React","createContext","DesignConfig","conf","prefix","headers","params","route","listUrl","downloadUrl","uploadUrl","extraData","file","fileType","labelStyle","color","documentUrl","chunkSize","Math","pow","checkFile","checkChunk","chunkUpload","doMerge","mergeProgress","onComplete","completeProgress","request","form","chunk","components","_objectSpread","config","init","defineConfig","num","listeners","wait","millisecond","setTimeout","trigger","_asyncToGenerator","_callee","loading","_listeners","_context","callback","begin","_ref2","_callee2","_context2","end","_ref3","_callee3","_context3","autoClose","_ref4","_callee4","_context4","_ref5","_callee5","_context5","umiRequest","extend","timeout","use","ctx","t0","_x2","global","targetUrl","options","cloneData","cloneDeep","data","url","domain","urlMatch","match","_slicedToArray","parse","compile","console","toLocaleUpperCase","requestType","status","rest","_objectWithoutProperties","_excluded","success","_data$message","response","request$1","uri","uriArray","split","_uriArray","_uriArray2","toStyles","styles","items","_items$split","_items$split2","assign","camelCase","UIComponent","_React$PureComponent","_inherits","_super","_createSuper","_this","_len","_args","_key","concat","_assertThisInitialized","borderBottom","remote","list","map","_Object$entries","_Object$entries$","entries","_Object$entries$2","label","defaultValue","_form$current","_form$current2","code","current","getFieldValue","setFieldValue","_form$current3","_this2","_form$current4","_form$current5","getFieldsValue","showTitle","_this$props","title","labelStyles","_jsx","itemProps","_itemLayouts$wrapperC","_this$props2","preview","labelCol","wrapperCol","tips","itemLayouts","span","styleWrapper","tooltip","_this$props3","itemStyle","itemStyles","_this$context$preview","fileds","_this$props4","_this$props4$defaultH","defaultHide","show","conditions","find","_conditions$children","action","fields","join","actuator","condition","every","some","_this$props5","_validates$children$m","_validates$children","validates","content","collection","_this3","computeValue","moment","compute","_this$props$defaultVa","setDefaultValue","PureComponent","contextType","ProComponent","_UIComponent","forceUpdate","initValue","display","onComputeValue","rules","_this$getItem","getItem","hidden","Component","_this$getStyles","getStyles","_Form","Item","getLabel","onChange","UIListComponent","itemList","plist","filter","includes","rule","validator","_","WidgetComponent","_PureComponent","Label","Tooltip","PreviewText","useEffect","href","rel","PreviewDuration","_value$split","_value$split2","hour","minute","second","PreviewSwitch","checked","PreviewList","_ref6","_ref7","PreviewFile","_ref8","fileList","_ref9","contentType","endsWith","_jsxs","paddingBottom","startsWith","_Image","width","src","alt","controls","alignItems","height","paddingLeft","PreviewImage","_ref10","_Fragment","_ref11","_Space","Text","placeholder","maxLength","allowClear","showCount","readonly","_Input","disabled","hideClear","cleanFieldValue","TextArea","InputNumber","_this$props$type","precision","numberProps","formatter","_InputNumber","Editor","colon","EditorWidget","_React$Component","_super2","createRef","isReactWEditor","ReactWEditor","onBlur","onFocus","SelectList","_UIListComponent","optionList","setState","multiple","_this$props2$allowCle","plusRules","collectionList","getList","currentValue","SelectWidget","Option","_Select","_WidgetComponent","_this4","_len2","_key2","_this4$props$onChange","_this4$props","showSearch","mode","handleItemValue","filterOption","inputValue","option","toLowerCase","CheckBox","CheckboxWidget","_Checkbox","Group","RadioButton","optionType","RadioWidget","_Radio","SwitchButton","valuePropName","_Switch","Duration","DurationWidget","index","changeValue","_this$props$onChange","duration","durations","format","className","Datepicker","_this$props$format","_this$props$showTime","showTime","_this$props$allowClea","DateWidget","_DatePicker","picker","Timepicker","TimeWidget","arrayWithoutHoles","iterableToArray","nonIterableSpread","normFile","UplaodList","maxCount","fileTypeMessage","fileSize","getValueFromEvent","UploadWidget","modal","open","progress","fileTypeArray","_message","_Upload","LIST_IGNORE","bytes","size","clearInterval","timer","uploading","step","percent","round","setInterval","_response$data","_toConsumableArray","_response$message","ids","warn","_this$state","count","onStart","onSuccess","onProgress","onError","beforeUpload","onBeforeUpload","onRemove","_Button","icon","UploadOutlined","_Modal","closable","footer","_this$props$fileWidth","fileWidth","_this$props$fileHeigh","fileHeight","fileView","_file$response","_file$response2","_file$response$data","_this$props3$fileWidt","_this$props3$fileHeig","ImgCrop","rotationSlider","modalTitle","modalOk","modalCancel","aspect","listType","accept","onChangeValue","onPreview","PlusOutlined","onCancel","_verifyProgress","_verifyFile","_mergeProgress","_mergeBlock","_uploadBlock","_checkBlock","_checkFile","blockSize","fileName","fileMd5","checkBlock","blockMd5","blockIndex","uploadBlock","formData","FormData","append","_x3","mergeBlock","_x4","verifyFile","_callee6","_context6","_x5","verifyProgress","_callee7","_context7","upload","FileUpload","findIndex","uid","start","customRequest","_Progress","TableList","_columnList$children","columnList","column","_column$rules","TableWidget","columns","getColumns","dataSource","entity","worksId","worksExtraId","dataIndex","valueType","render","onClick","confirm","QuestionCircleOutlined","okText","cancelText","onOk","_Card","bodyStyle","padding","extra","_Table","rowKey","ModalForm","onFinish","_onOk","_Form$useForm","useForm","destroyOnClose","validateFields","initialValues","autoComplete","layout","_Row","_Col","_extends","FormList","codes","elements","_iterator3","_step3","getAttribute","tagName","formId","xml","initItems","witdh","FormWidget","_objectDestructuringEmpty","_this5","_this6","_ref5$witdh","useRef","log","FormDocument","Row","gutter","margin","Col","Steps","direction","stepIndex","onChangeSetp","useMemo","description","_Steps","backgroundColor","Content","_Layout","Content$1","memo","currentStepIndex","Divider","_ref$dashed","dashed","_ref$orientation","orientation","_Divider","fontWeight","hide","Collapse","_ref$defaultExpanded","defaultExpanded","on","off","collapse","_useState","useState","_useState2","isExpanded","onExpanded","UpOutlined","DownOutlined","Components","BaseComponents","Containers","_props$style","_props$form","root","changedValues","_this$customComponent","_this$customComponent2","customComponents","component","container","applet","payload","_root$attributes","getRoot","styleValue","styleList","_style$split","_style$split2","layouts","mapValues","_this$form$current","resetFields","isObject","_attributes$hidden","_attributes$readonly","isUndefined","setComponentStatus","onStepIndex","child","_rules$children","_root$children","Provider","Form","onValuesChange","_Skeleton","active"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.tsx","sources":["../node_modules/style-inject/dist/style-inject.es.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/classCallCheck.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/toPrimitive.js","../node_modules/@babel/runtime/helpers/toPropertyKey.js","../node_modules/@babel/runtime/helpers/createClass.js","../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/inherits.js","../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/defineProperty.js","../src/entity/XML.ts","../src/utils/document.ts","../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/regenerator/index.js","../src/applets/index.ts","../src/context.ts","../src/config.ts","../src/utils/loading.ts","../src/utils/request.ts","../src/utils/style.ts","../src/service/UIComponent.tsx","../src/service/ProComponent.tsx","../src/service/UIListComponent.tsx","../src/service/WidgetComponent.ts","../src/components/Label/index.tsx","../src/components/Tooltip/index.tsx","../src/preview/index.tsx","../src/components/Text/index.tsx","../src/components/TextArea/index.tsx","../src/components/InputNumber/index.tsx","../src/components/Editor/index.tsx","../src/components/Select/index.tsx","../src/components/Checkbox/index.tsx","../src/components/Radio/index.tsx","../src/components/Switch/index.tsx","../src/components/Duration/index.tsx","../src/components/DatePicker/index.tsx","../src/components/TimePicker/index.tsx","../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/iterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/toConsumableArray.js","../src/components/Upload/index.tsx","../src/components/Photo/index.tsx","../src/components/Rate/index.tsx","../src/components/SuperUpload/index.tsx","../src/components/Table/index.tsx","../node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js","../node_modules/@babel/runtime/helpers/extends.js","../src/components/FormList/index.tsx","../src/containers/Row/index.tsx","../src/containers/Col/index.tsx","../src/containers/Steps/index.tsx","../src/containers/Content/index.tsx","../src/containers/Divider/index.tsx","../src/containers/Collapse/index.tsx","../src/form/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _getPrototypeOf(o);\n}\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import { parseInt, uniqueId } from \"lodash\";\r\n\r\nexport default class XML {\r\n readonly id: string;\r\n readonly tag: string;\r\n readonly text?: string;\r\n readonly attributes: { [name: string]: string | boolean } = {};\r\n readonly cdata?: string;\r\n readonly children?: XML[];\r\n\r\n constructor(element: Element) {\r\n // this.id = Math.floor(Math.random() * 1000000000).toString();\r\n this.id = uniqueId();\r\n /** 获得属性 */\r\n for (const item of element.attributes) {\r\n let value: string | boolean = item.value.trim();\r\n if (this.isBoolean(value)) {\r\n value = this.toBoolean(value);\r\n }\r\n this.attributes[item.name] = value;\r\n }\r\n\r\n /** 获得子元素 */\r\n this.children = new Array();\r\n for (const node of element.childNodes) {\r\n if (node instanceof Element) {\r\n this.children?.push(new XML(node));\r\n }\r\n /** 获得文本 */\r\n if (node.nodeType === 3 && node.textContent) {\r\n this.text = node.textContent;\r\n }\r\n /** 获得CDATA */\r\n if (node.nodeType === 4) {\r\n this.cdata = node.nodeValue?.replace(/\\ +/g, \" \").replace(/[\\t\\r\\n]/g, \"\");\r\n }\r\n }\r\n this.tag = element.nodeName;\r\n }\r\n\r\n /**\r\n * 判断是否为boolean型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private isBoolean(value: string) {\r\n return value === \"true\" || value === \"false\";\r\n }\r\n\r\n /**\r\n * 转换boolean型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private toBoolean(value: string) {\r\n return value === \"true\";\r\n }\r\n\r\n /**\r\n * 判断是否为number型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private isNumber(value: string) {\r\n return /^\\d+$/.test(value);\r\n }\r\n\r\n /**\r\n * 转换number型\r\n * \r\n * @param value \r\n * @returns \r\n */\r\n private toNumber(value: string) {\r\n return parseInt(value, 10);\r\n }\r\n}","import XML from \"@/entity/XML\";\r\n\r\n/**\r\n * xml 解析类\r\n */\r\nexport default class XMLDocument {\r\n\r\n /**\r\n * document 解析 xml对象\r\n * \r\n * @param document \r\n * @returns \r\n */\r\n static parser(document: Document) {\r\n const element: Element = <Element>document.childNodes[0];\r\n return new XML(element);\r\n }\r\n\r\n /**\r\n * document字符串 转换 document对象\r\n * \r\n * @param documentString \r\n * @returns \r\n */\r\n static toDocument(documentString: string): Document {\r\n return new DOMParser().parseFromString(documentString, \"text/xml\");\r\n }\r\n\r\n /**\r\n * document字符串 转换 xml对象\r\n * \r\n * @param documentString \r\n * @returns \r\n */\r\n static getRoot(documentString: string): XML {\r\n const doc: Document = XMLDocument.toDocument(documentString);\r\n return XMLDocument.parser(doc);\r\n }\r\n\r\n /**\r\n * 选择单个元素\r\n * \r\n * @param document \r\n * @param selectors \r\n * @returns \r\n */\r\n static selector(document: Document | Element, selectors: string): Element | null {\r\n return document.querySelector(selectors);\r\n }\r\n\r\n /**\r\n * 选择多个元素\r\n * \r\n * @param document \r\n * @param selectors \r\n * @returns \r\n */\r\n static selectors(document: Document | Element, selectors: string): NodeListOf<Element> {\r\n return document.querySelectorAll(selectors);\r\n }\r\n}","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import moment from 'moment';\r\n\r\n/**\r\n * validate 验证\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const validate = ({ type = 'string', required, minlength, maxlength, min, max, pattern, message }: any): Design.Rule => {\r\n if (required) {\r\n return { type, required, message };\r\n }\r\n if (minlength && maxlength) {\r\n return { type, min: Number(minlength), max: Number(maxlength), message };\r\n }\r\n if (min && max) {\r\n return { type: 'number', min: Number(min), max: Number(max), message };\r\n }\r\n if (type === 'phone') {\r\n return { type: 'string', pattern: new RegExp('^[1][3,5,6,7,8][0-9]\\\\d{8}$'), message };\r\n }\r\n if (type === 'regexp' && typeof pattern === 'string') {\r\n return { type: 'string', pattern: new RegExp(pattern), message };\r\n }\r\n return { type, message };\r\n}\r\n\r\n/**\r\n * condition 条件\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const condition = (fields: object | undefined, preview: boolean) => ({ test }: { test: string }): boolean | undefined => {\r\n try {\r\n if (fields) {\r\n fields = { ...fields, preview }\r\n const keys: string = Object.keys(fields).join(\",\");\r\n const actuator: Function = new Function(`{${keys}}`, `return ${test}`);\r\n return actuator(fields);\r\n }\r\n } catch (e: any) {\r\n // console.warn(e.message);\r\n }\r\n return undefined;\r\n}\r\n\r\n/**\r\n * collection 集合\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const collection = (fields: object | undefined, { cdata }: { cdata: string }): Array<string> => {\r\n try {\r\n if (fields) {\r\n const keys: string = Object.keys(fields).join(\",\");\r\n const actuator: Function = new Function(`{${keys}}`, `${cdata}`);\r\n return actuator(fields);\r\n }\r\n const actuator: Function = new Function(`${cdata}`);\r\n return actuator();\r\n } catch (e: any) {\r\n // console.warn(e.message);\r\n }\r\n return [];\r\n}\r\n\r\n/**\r\n * compute 计算\r\n * \r\n * @param param0 \r\n * @returns \r\n */\r\nexport const compute = (fields: object | undefined, { cdata }: { cdata: string }): Array<string> | string | undefined => {\r\n try {\r\n if (fields) {\r\n const keys: string = Object.keys(fields).join(\",\");\r\n const actuator: Function = new Function(`{${keys}}`, 'moment', `${cdata}`);\r\n return actuator(fields, moment);\r\n }\r\n const actuator: Function = new Function('moment', `${cdata}`);\r\n return actuator(moment);\r\n } catch (e: any) {\r\n // console.warn(e.message);\r\n }\r\n return undefined;\r\n}\r\n","import React from \"react\";\r\n\r\nexport const DesignContext = React.createContext<Design.Context>({});","class DesignConfig {\r\n readonly request: {\r\n prefix: string;\r\n headers: {};\r\n params: {};\r\n route: string;\r\n } = {\r\n prefix: \"api\",\r\n headers: {},\r\n params: {},\r\n route: \"/design\"\r\n }\r\n readonly file: {\r\n listUrl: string,\r\n downloadUrl: string,\r\n uploadUrl: string,\r\n previewUrl: string,\r\n extraData?: {}\r\n } = {\r\n listUrl: \"/file/list\",\r\n downloadUrl: \"/file/download\",\r\n uploadUrl: \"/file/upload\",\r\n previewUrl: \"/file/preview\",\r\n extraData: (file: Design.File.FileInfo, fileType: string) => {},\r\n }\r\n readonly style: {\r\n labelStyle: {}\r\n } = {\r\n labelStyle: {color: \"#055ab5\"}\r\n }\r\n readonly form: {\r\n documentUrl: string\r\n } = {\r\n documentUrl: \"/form/:formId\"\r\n }\r\n readonly chunk : {\r\n checkFile: string,\r\n checkChunk: string,\r\n chunkUpload: string,\r\n doMerge: string,\r\n mergeProgress: string,\r\n onComplete: string,\r\n completeProgress: string,\r\n chunkSize: number,\r\n } = {\r\n chunkSize: 10 * 1024 ** 2,\r\n checkFile: \"/chunk/checkFile\",\r\n checkChunk: \"/chunk/checkChunk\",\r\n chunkUpload: \"/chunk/chunkUpload\",\r\n doMerge: \"/chunk/doMerge\",\r\n mergeProgress: \"/chunk/mergeProgress\",\r\n onComplete: \"/chunk/onComplete\",\r\n completeProgress: \"/chunk/completeProgress\"\r\n }\r\n\r\n readonly mimeType: {[name: string]: string} = {}\r\n\r\n readonly components?: any\r\n readonly previewComponents?: any\r\n \r\n private constructor(conf?: Design.Config) {\r\n if (conf) {\r\n const { request, file, form, chunk, mimeType, components, previewComponents } = conf;\r\n this.request = { ...this.request, ...request };\r\n this.file = { ...this.file, ...file };\r\n this.form = { ...this.form, ...form };\r\n this.chunk = { ...this.chunk, ...chunk };\r\n this.mimeType = mimeType;\r\n this.components = components;\r\n this.previewComponents = previewComponents;\r\n }\r\n }\r\n\r\n static init(conf?: Design.Config) {\r\n return new DesignConfig(conf);\r\n }\r\n}\r\n\r\nlet config: DesignConfig = DesignConfig.init();\r\nconst defineConfig = (conf: Design.Config) => {\r\n config = DesignConfig.init(conf)\r\n}\r\n\r\nexport { defineConfig, config }","let num = 0;\r\nconst listeners: ((loading: boolean) => void)[] = [];\r\n\r\n/**\r\n * wait\r\n * \r\n * @param millisecond \r\n * @returns \r\n */\r\nconst wait = (millisecond: number) => (\r\n new Promise(resolve => {\r\n setTimeout(() => {\r\n resolve(millisecond);\r\n }, millisecond)\r\n}));\r\n\r\n/**\r\n * 注册loading\r\n * \r\n * @param payload \r\n */\r\nexport const regrister = (payload: (loading: boolean) => void) => {\r\n if (typeof payload === 'function') {\r\n listeners.push(payload);\r\n }\r\n}\r\n\r\n/**\r\n * 触发\r\n * \r\n * @param loading \r\n */\r\nconst trigger = async (loading: boolean) => {\r\n if (num === 0) {\r\n for (const callback of listeners) {\r\n callback(loading);\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * 开始加载loading\r\n */\r\nexport const begin = async () => {\r\n if (num ++ === 0) {\r\n trigger(true);\r\n }\r\n}\r\n\r\n/**\r\n * 结束加载loading\r\n * \r\n */\r\nexport const end = async () => {\r\n if (-- num === 0) {\r\n trigger(false);\r\n }\r\n}\r\n\r\n/**\r\n * 自动关闭\r\n * \r\n */\r\nexport const autoClose = async () => {\r\n await wait(1000);\r\n if (num === 0) {\r\n trigger(false);\r\n } else {\r\n autoClose()\r\n }\r\n}\r\n\r\n/**\r\n * 错误loading\r\n */\r\nexport const error = async () => {\r\n num = 0;\r\n trigger(false);\r\n}","import { cloneDeep } from 'lodash';\r\nimport { extend } from 'umi-request';\r\nimport { parse, compile } from 'path-to-regexp';\r\nimport { config } from '@/config';\r\nimport { begin, end, error } from './loading';\r\n\r\nconst umiRequest = extend({\r\n prefix: config.request.prefix,\r\n headers: config.request.headers,\r\n timeout: 10000,\r\n});\r\n\r\n/** loading全局中间件 */\r\numiRequest.use(async (ctx, next) => {\r\n try {\r\n begin();\r\n await next();\r\n end();\r\n } catch (e) {\r\n error();\r\n throw e;\r\n }\r\n}, { global: true });\r\n\r\n/** 请求访问 **/\r\nconst request = (targetUrl: string, options: any) => {\r\n const cloneData = cloneDeep(options.data);\r\n let url = targetUrl;\r\n try {\r\n // 过滤protocol、domain、host\r\n let domain = '';\r\n const urlMatch = url.match(/[a-zA-z]+:\\/\\/[^/]*/);\r\n if (urlMatch) {\r\n [domain] = urlMatch;\r\n url = url.slice(domain.length);\r\n }\r\n // 编译url参数\r\n const match = parse(url);\r\n url = compile(url)(options.data);\r\n match.forEach((item: any) => {\r\n if (item instanceof Object && item.name in cloneData) {\r\n delete cloneData[item.name];\r\n }\r\n });\r\n url = domain + url;\r\n } catch (e: any) {\r\n console.error(e.message);\r\n }\r\n if (options.method.toLocaleUpperCase() === 'GET') {\r\n options.params = cloneData;\r\n } else if (options.type){\r\n options.requestType = options.type\r\n }\r\n options.prefix = config.request.prefix; \r\n // 调用umi-request\r\n return umiRequest(url, options)\r\n .then(({ status, ...rest }: any) => {\r\n const success = status === 200;\r\n return Promise.resolve({\r\n success,\r\n ...rest,\r\n });\r\n })\r\n .catch(({ response, data }: any) => {\r\n const message = data?.message ?? '访问超时';\r\n console.error(url, response, data);\r\n return Promise.resolve({\r\n success: false,\r\n message,\r\n });\r\n });\r\n};\r\n\r\n/** request **/\r\nexport default (uri: string) => {\r\n let [method, type, url] = ['GET', 'json', uri];\r\n const uriArray = uri.split(' ')\r\n if (uriArray.length === 2) {\r\n [method, url] = uriArray;\r\n } else if (uriArray.length === 3) {\r\n [method, type, url] = uriArray;\r\n }\r\n return (data?: any) => request(url, { method, type, data });\r\n}\r\n","import { camelCase } from 'lodash';\r\n\r\n/**\r\n * 转换样式对象\r\n * \r\n * @param style string\r\n * @returns styles\r\n */\r\nexport const toStyles = (style: string | undefined) => {\r\n const styles: {} = {};\r\n if (style) {\r\n const styleArray: string[] = style.replace(/\\ +/g, \"\").split(\";\");\r\n styleArray.forEach(items => {\r\n if (items) {\r\n const [key, value] = items.split(\":\");\r\n Object.assign(styles, { [camelCase(key)]: value });\r\n }\r\n });\r\n }\r\n return styles;\r\n}","import React from \"react\";\r\nimport { every, some, find } from \"lodash\";\r\nimport { collection, compute, condition, validate } from \"@/applets\";\r\nimport { DesignContext } from \"@/context\";\r\nimport request from \"@/utils/request\";\r\nimport { config } from \"@/config\";\r\nimport { toStyles } from \"@/utils/style\";\r\n\r\nexport default class UIComponent<P extends Design.ComponentProps, S = {}> extends React.PureComponent<P, S> {\r\n declare context: React.ContextType<typeof DesignContext>\r\n\r\n styleWrapper = { style: { borderBottom: '1px solid #d9d9d9' } };\r\n\r\n /**\r\n * 设置字段默认值\r\n * \r\n * @param defaultValue \r\n */\r\n setDefaultValue<T>(defaultValue: T): void {\r\n const form = this.context.form;\r\n if (form) {\r\n const code = this.props.code;\r\n const value = form.current?.getFieldValue(code);\r\n if (!value) {\r\n form.current?.setFieldValue(code, defaultValue);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * 设置当前字段值\r\n * \r\n * @param value \r\n */\r\n setFieldValue<T>(value: T | undefined): void {\r\n const form = this.context.form;\r\n if (form) {\r\n const code = this.props.code;\r\n form.current?.setFieldValue(code, value);\r\n }\r\n }\r\n\r\n /**\r\n * 清楚当前值\r\n * \r\n */\r\n cleanFieldValue(): void {\r\n setTimeout(() => {\r\n this.setFieldValue(undefined);\r\n }, 1);\r\n }\r\n\r\n /**\r\n * 获得当前值\r\n * \r\n * @returns \r\n */\r\n getFieldValue<T>(): T | undefined {\r\n const form = this.context.form;\r\n if (form) {\r\n const code = this.props.code;\r\n return form.current?.getFieldValue(code);\r\n }\r\n }\r\n\r\n /**\r\n * 获得所有form对象值\r\n * \r\n * @returns \r\n */\r\n getFieldsValue(): object | undefined {\r\n const form = this.context.form;\r\n if (form) {\r\n return form.current?.getFieldsValue();\r\n }\r\n }\r\n\r\n /**\r\n * 获得标签\r\n * \r\n * @returns \r\n */\r\n getLabel() {\r\n const isShowTitle = this.context.showTitle;\r\n if (isShowTitle) {\r\n const { title, labelStyle } = this.props;\r\n const labelStyles = toStyles(labelStyle);\r\n return <span style={{ ...config.style.labelStyle, ...labelStyles }}>{title}</span>;\r\n }\r\n }\r\n\r\n /**\r\n * 获得item信息\r\n * \r\n * @returns \r\n */\r\n getItem(): { itemProps: {}, itemLayouts: {} } {\r\n const { preview, labelCol, wrapperCol, tips } = this.props;\r\n const itemLayouts = labelCol && wrapperCol ? { labelCol: { span: labelCol }, wrapperCol: { span: wrapperCol } } : {};\r\n let itemProps: {};\r\n if (preview) {\r\n itemProps = { required: false };\r\n Object.assign(itemLayouts.wrapperCol ?? {}, this.styleWrapper);\r\n } else {\r\n itemProps = { tooltip: tips };\r\n }\r\n return { itemProps, itemLayouts };\r\n }\r\n\r\n /**\r\n * 样式\r\n * \r\n * @returns \r\n */\r\n getStyles(): { styles: {}, itemStyles: {} } {\r\n const { style, itemStyle } = this.props;\r\n const styles = toStyles(style);\r\n const itemStyles = toStyles(itemStyle);\r\n return { styles, itemStyles };\r\n }\r\n\r\n /**\r\n * 条件\r\n * \r\n * @param defaultHide \r\n * @param children \r\n * @returns \r\n */\r\n display(): boolean {\r\n const fileds = this.getFieldsValue();\r\n const { defaultHide = false, children, preview } = this.props;\r\n const show: boolean = !defaultHide;\r\n const conditions: Design.Modal.ConditionXML | undefined = find(children, { tag: \"Conditions\" });\r\n if (conditions) {\r\n const { type, action } = conditions;\r\n const list = conditions.children?.map(condition(fileds, preview!!));\r\n if (list?.length > 0 && list?.[0] !== undefined) {\r\n let result: boolean = false;\r\n if (type === 'and') {\r\n result = every(list);\r\n } else {\r\n result = some(list);\r\n }\r\n if ((result && action === 'hide') || (!result && action === 'show')) {\r\n return false;\r\n } else if ((!result && action === 'hide') || (result && action === 'show')) {\r\n return true;\r\n }\r\n }\r\n }\r\n return show;\r\n }\r\n\r\n /**\r\n * 规则\r\n * \r\n * @param preview \r\n * @param children \r\n * @returns \r\n */\r\n rules(): Design.Rule[] {\r\n const { preview, children } = this.props;\r\n if (!preview) {\r\n const validates = find(children, { tag: \"Validates\" });\r\n return validates?.children?.map(validate) ?? [];\r\n }\r\n return [];\r\n }\r\n\r\n /**\r\n * 可选内容列表\r\n * \r\n * @param children \r\n * @returns \r\n */\r\n collectionList(): string[] | undefined {\r\n const content = find(this.props.children, { tag: \"Collection\" });\r\n if (content) {\r\n const fileds = this.getFieldsValue();\r\n return collection(fileds, content);\r\n }\r\n return undefined;\r\n }\r\n\r\n /**\r\n * 计算值\r\n * \r\n * @param children \r\n * @returns \r\n */\r\n onComputeValue(): void {\r\n const content = find(this.props.children, { tag: \"Compute\" });\r\n if (content) {\r\n const fileds = this.getFieldsValue();\r\n const computeValue = compute(fileds, content);\r\n if (computeValue) {\r\n setTimeout(() => {\r\n this.setFieldValue(computeValue);\r\n }, 1);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * 初始化值\r\n * \r\n * @param value \r\n */\r\n initValue(value?: string): void {\r\n const { defaultValue = value } = this.props;\r\n if (defaultValue) {\r\n this.setDefaultValue(defaultValue);\r\n }\r\n }\r\n\r\n /**\r\n * 请求网络\r\n * \r\n * @param remote \r\n * @returns \r\n */\r\n request = async (remote: string, args?: object) => {\r\n const params = args ?? this.context.params;\r\n return request(remote)({ ...params }).then(response => {\r\n const { success, data }: Design.Result = response;\r\n if (success) {\r\n if (Array.isArray(data)) {\r\n const list = data.map(item => {\r\n const [key, label] = Object.entries<string>(item)?.[0];\r\n return { key, label };\r\n });\r\n return Promise.resolve(list);\r\n } else {\r\n return Promise.resolve(data);\r\n }\r\n }\r\n return Promise.reject(undefined);\r\n }).catch(error => {\r\n console.error(\"remote\", remote, error);\r\n return Promise.reject(error);\r\n });\r\n }\r\n\r\n}\r\n\r\nUIComponent.contextType = DesignContext;","import React from \"react\";\r\nimport { Form } from \"antd\";\r\nimport UIComponent from \"./UIComponent\";\r\n\r\ninterface ProComponentProps extends Design.ComponentProps {\r\n Component: any;\r\n}\r\n\r\nexport default class ProComponent extends UIComponent<ProComponentProps> {\r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n initValue = () => {\r\n const { defaultValue } = this.props;\r\n if (defaultValue) {\r\n this.forceUpdate(() => {\r\n this.setDefaultValue(defaultValue);\r\n });\r\n }\r\n };\r\n\r\n onChange = (value: string) => {\r\n this.setFieldValue(value);\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, hidden } = this.props;\r\n const { Component, defaultValue, style, ...props } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {<Component {...props} style={styles} onChange={this.onChange}/>}\r\n </Form.Item>\r\n );\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import { find } from \"lodash\";\r\nimport UIComponent from \"./UIComponent\";\r\n\r\nexport default class UIListComponent<P extends Design.ComponentProps, S = {}> extends UIComponent<P, S> {\r\n\r\n /**\r\n * 选项列表\r\n * \r\n * @param children \r\n * @returns \r\n */\r\n optionList(): Design.ItemOption[] | undefined {\r\n const options = find(this.props.children, { tag: \"Options\" })\r\n return options?.children as [];\r\n }\r\n\r\n /**\r\n * 添加校验规则\r\n * \r\n * @returns \r\n */\r\n plusRules(): Design.Rule[] {\r\n const rules = this.rules();\r\n return rules?.map(rule => {\r\n if (rule.required) {\r\n const validator = (_: unknown, value: string) => value?.length > 0 ? Promise.resolve() : Promise.reject();\r\n return { ...rule, validator };\r\n }\r\n if (rule.min && rule.max) {\r\n const validator = (_: unknown, list: any[]) => list.length >= rule.min! && list.length <= rule.max! ? Promise.resolve() : Promise.reject();\r\n return { ...rule, validator };\r\n }\r\n return { ...rule };\r\n });\r\n }\r\n\r\n /**\r\n * 获得资源列表\r\n * \r\n * @param list \r\n * @param itemList \r\n * @param reset \r\n * @returns \r\n */\r\n getList = (list: Design.ItemOption[], itemList: string[] | undefined, reset: (plist: Design.ItemOption[]) => void) => {\r\n if (itemList) {\r\n const plist = list.filter(({ key }) => itemList.includes(key));\r\n reset(plist);\r\n return plist;\r\n }\r\n return list;\r\n }\r\n}","import React, { PureComponent } from \"react\";\r\n\r\nexport default class WidgetComponent<P = {}, S = {}> extends PureComponent<P, S> {\r\n\r\n}","import React from 'react';\r\nimport { Form } from 'antd';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class Label extends UIComponent<Design.ComponentProps> {\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.rules();\r\n const { title, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n wrapperCol={{ span: 24 }}\r\n >\r\n <div style={styles}>{title}</div>\r\n </Form.Item>\r\n )\r\n }\r\n return <></>;\r\n }\r\n}","import React from 'react';\r\nimport { Form } from 'antd';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class Tooltip extends UIComponent<Design.ComponentProps> {\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n const tooltip = this.context.tooltip ?? true;\r\n if (show && tooltip) {\r\n const { title, hidden, children } = this.props; \r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item style={itemStyles} hidden={hidden} wrapperCol={{ span: 24 }}>\r\n <div style={styles}>{title ?? children}</div>\r\n </Form.Item>\r\n );\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport { Space, Image } from 'antd';\r\nimport { config } from '@/config';\r\n\r\n/** 文本预览 */\r\nconst DefalutPreviewText = ({ value, type, style, onChange }: Design.PreviewProps) => {\r\n useEffect(() => {\r\n onChange?.(value);\r\n }, []);\r\n if (value && type === \"url\") {\r\n const urls = value.split(/[,;\\s]/);\r\n return urls.map((url: string) => <div style={style}><a href={url} target=\"_blank\" rel=\"noreferrer\">{url}</a></div>)\r\n }\r\n return <div style={style}>{value}</div>\r\n}\r\nexport const PreviewText = (props: any) => (\r\n (config.previewComponents?.PreviewText ?? DefalutPreviewText)(props)\r\n)\r\n\r\n/** 富文本预览 */\r\nconst DefalutPreviewEditor = ({ value, type, style, onChange }: Design.PreviewProps) => {\r\n useEffect(() => {\r\n onChange?.(value);\r\n }, []);\r\n return <div dangerouslySetInnerHTML={{__html: value}}></div>\r\n}\r\nexport const PreviewEditor = (props: any) => (\r\n (config.previewComponents?.PreviewEditor ?? DefalutPreviewEditor)(props)\r\n)\r\n\r\n/** 时长预览 */\r\nconst DefalutPreviewDuration = ({ value, style, onChange }: any) => {\r\n useEffect(() => {\r\n onChange(value);\r\n }, []);\r\n if (value) {\r\n const [hour, minute, second] = value?.split(\":\");\r\n return <div style={style}>{`${hour}小时${minute}分${second}秒`}</div>\r\n } else {\r\n return <div style={style}>000时00分00秒</div>\r\n }\r\n}\r\nexport const PreviewDuration = (props: any) => (\r\n (config.previewComponents?.PreviewDuration ?? DefalutPreviewDuration)(props)\r\n)\r\n\r\n/** 切换预览 */\r\nconst DefalutPreviewSwitch = ({ checked, style, onChange }: any) => {\r\n useEffect(() => {\r\n onChange(checked);\r\n }, []);\r\n return <div style={style}>{checked ? \"开启\" : \"关闭\"}</div>\r\n}\r\nexport const PreviewSwitch = (props: any) => (\r\n (config.previewComponents?.PreviewSwitch ?? DefalutPreviewSwitch)(props)\r\n)\r\n\r\n/** 列表预览 */\r\nconst DefalutPreviewList = ({ value, list, style, onChange }: any) => {\r\n useEffect(() => {\r\n onChange(value);\r\n }, []);\r\n\r\n if (Array.isArray(value)) {\r\n const items = list.filter(({ key }: any) => value.includes(key)).map(({ label }: any) => label);\r\n return <div style={style}>{items?.join()}</div>\r\n } else {\r\n const item = list?.find(({ key }: any) => key === value);\r\n return <div style={style}>{item?.label}</div>\r\n }\r\n}\r\nexport const PreviewList = (props: any) => (\r\n (config.previewComponents?.PreviewList ?? DefalutPreviewList)(props)\r\n)\r\n\r\n/** 文件预览 */\r\nconst DefalutPreviewFile = ({ fileList }: { fileList: any[]}) => {\r\n const downloadUrl = config.request.prefix + config.file.downloadUrl;\r\n const previewUrl = config.request.prefix + config.file.previewUrl;\r\n return <>\r\n {fileList?.map(({ id, name, url, contentType }: any) => {\r\n const uri = downloadUrl + \"/\" + id;\r\n /** pdf文本预览 */\r\n if (contentType?.endsWith(\"pdf\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <a href={url} target=\"_blank\" rel=\"noreferrer\">{name}</a>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 图片文本预览 */\r\n if (contentType?.startsWith(\"image\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <div>\r\n <Image width={200} src={url} alt={name} />\r\n <div>{name}</div>\r\n </div>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 视频文本预览 */\r\n if (contentType?.startsWith(\"video\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <div>\r\n <video src={url} controls style={{ width: 260 }}>当前浏览器不支持视频播放,请使用最新版谷歌浏览器!</video>\r\n <div>{name}</div>\r\n </div>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 音频文本预览 */\r\n if (contentType?.startsWith(\"audio\")) {\r\n return <div key={id}>\r\n <div style={{ paddingBottom: 10, display: 'flex', alignItems: 'center' }}>\r\n <div>\r\n <audio src={url} controls style={{ width: 'calc(100% - 40px)', height: 30 }}>当前浏览器不支持音频播放,请使用最新版谷歌浏览器!</audio>\r\n <div>{name}</div>\r\n </div>\r\n <a style={{ paddingLeft: 10 }} href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </div>\r\n </div>\r\n }\r\n /** office文本预览 */\r\n if (name?.endsWith(\".doc\") || name?.endsWith(\".docx\") || name?.endsWith(\".xls\") || name?.endsWith(\".xlsx\") || name?.endsWith(\".ppt\") || name?.endsWith(\".pptx\")) {\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <a href={previewUrl + \"/\" + id} target=\"_blank\" rel=\"noreferrer\">{name}</a>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n }\r\n /** 默认文本预览 */\r\n return <div key={id}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <a href={url} target=\"_blank\" rel=\"noreferrer\">{name}</a>\r\n <a href={uri} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n })}\r\n </>\r\n}\r\nexport const PreviewFile = (props: any) => (\r\n (config.previewComponents?.PreviewFile ?? DefalutPreviewFile)(props)\r\n)\r\n\r\n/** 图片预览 */\r\nconst DefalutPreviewImage = ({ fileList, width, height, style } : { fileList: any[], width: number, height: number, style?: object }) =>\r\n <>\r\n {fileList?.map(({ id, name, url }) => (\r\n <div key={id} style={style}>\r\n <Space style={{ paddingBottom: 10 }}>\r\n <Image width={width} height={height} src={url} alt={name} />\r\n <a href={config.request.prefix + config.file.downloadUrl + \"/\" + id} target=\"_blank\" rel=\"noreferrer\">下载</a>\r\n </Space>\r\n </div>\r\n ))}\r\n </>\r\nexport const PreviewImage = (props: any) => (\r\n (config.previewComponents?.PreviewImage ?? DefalutPreviewImage)(props)\r\n)","import React from \"react\";\r\nimport { Form, Input } from \"antd\";\r\nimport { UIComponent } from '@/service';\r\nimport { PreviewText } from \"@/preview\";\r\n\r\nexport default class Text extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, type, preview, placeholder, maxLength, allowClear, showCount, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewText type={type} style={styles} /> : <Input maxLength={maxLength} placeholder={placeholder} allowClear={allowClear} showCount={showCount} disabled={readonly} style={styles} />}\r\n </Form.Item>\r\n );\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { Form, Input } from \"antd\";\r\nimport { UIComponent } from '@/service';\r\nimport { PreviewText } from \"@/preview\";\r\n\r\nexport default class TextArea extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue(); \r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { code, preview, placeholder, maxLength, allowClear, showCount, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles} = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : (rules as [])}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewText style={styles} /> : <Input.TextArea maxLength={maxLength} placeholder={placeholder} allowClear={allowClear} showCount={showCount} disabled={readonly} style={styles} />}\r\n </Form.Item>\r\n );\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { Form, InputNumber as Numerial } from \"antd\";\r\nimport { UIComponent } from '@/service';\r\nimport { PreviewText } from \"@/preview\";\r\n\r\nexport default class InputNumber extends UIComponent<Design.NumberProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const { type = \"number\", precision } = this.props;\r\n let numberProps: {} = {};\r\n if (type === \"digits\") {\r\n if (precision) {\r\n numberProps = {\r\n precision: Number(precision),\r\n };\r\n } else {\r\n numberProps = {\r\n precision: 2,\r\n };\r\n }\r\n } else if (type === \"money\") {\r\n numberProps = {\r\n formatter: (value: string) =>\r\n `¥ ${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\"),\r\n parser: (value: string) => value!.replace(/\\$\\s?|(,*)/g, \"\"),\r\n };\r\n } else if (type === \"percentage\") {\r\n numberProps = {\r\n formatter: (value: string) => `${value}%`,\r\n parser: (value: string) => value!.replace(\"%\", \"\"),\r\n };\r\n }\r\n this.onComputeValue();\r\n const rules = this.rules().map(rule => rule.required ? { ...rule, type: \"number\" } : rule);\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, preview, min, max, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : (rules as [])}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? (<PreviewText style={styles} />) : (<Numerial min={min} max={max} disabled={readonly} {...numberProps} style={styles} />)}\r\n </Form.Item>\r\n );\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Form } from 'antd';\r\nimport ReactWEditor from 'wangeditor-for-react';\r\nimport { PreviewEditor } from '@/preview';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class Editor extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, title, preview, placeholder, hidden, readonly } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n colon={!!title}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {(preview || readonly) ? <PreviewEditor style={styles} /> : <EditorWidget placeholder={placeholder} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass EditorWidget extends React.Component<Design.WidgetProps> {\r\n isReactWEditor = false\r\n editorRef: React.RefObject<any> = React.createRef();\r\n \r\n shouldComponentUpdate() {\r\n return !this.isReactWEditor\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { value, placeholder, style, onChange } = this.props;\r\n return (\r\n <ReactWEditor\r\n placeholder={placeholder} \r\n value={value}\r\n style={style}\r\n onBlur={() => {\r\n this.isReactWEditor = false\r\n }}\r\n onFocus={() => {\r\n this.isReactWEditor = true\r\n }}\r\n onChange={(value: string) => {\r\n onChange?.(value);\r\n }}\r\n />\r\n );\r\n } \r\n}\r\n","import React from 'react';\r\nimport { Form, Select } from 'antd';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewList } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nexport default class SelectList extends UIListComponent<Design.RemoteProps, Design.ListState> {\r\n state = {\r\n list: [],\r\n }\r\n \r\n componentDidMount(): void { \r\n const { remote } = this.props;\r\n const optionList = this.optionList();\r\n if (optionList) {\r\n this.setState({ \r\n list: optionList\r\n }, this.initValue);\r\n } else if (remote && remote.trim().length > 0) {\r\n const url = config.request.route + remote;\r\n this.request(url).then((list: Design.ItemOption[]) => {\r\n this.setState({ list }, this.initValue);\r\n });\r\n }\r\n }\r\n\r\n initValue() {\r\n const { defaultValue, multiple } = this.props;\r\n if (defaultValue) {\r\n if (multiple) {\r\n this.setDefaultValue([defaultValue]);\r\n } else {\r\n this.setDefaultValue(defaultValue);\r\n }\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const { code, preview, multiple, placeholder, allowClear = true, readonly, hidden } = this.props;\r\n const rules = multiple ? this.plusRules() : this.rules();\r\n const itemList = this.collectionList();\r\n const list = this.getList(this.state.list, itemList, (plist) => {\r\n if (plist.length > 0) {\r\n const currentValue = this.getFieldValue<string | string[]>();\r\n if (currentValue && (\r\n (!multiple && !plist.some(item => item.key === currentValue)) ||\r\n (multiple && !plist.some(item => currentValue.includes(item.key)))\r\n )) {\r\n this.cleanFieldValue();\r\n }\r\n }\r\n });\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewList list={this.state.list} style={styles} /> :\r\n <SelectWidget list={list} multiple={multiple} placeholder={placeholder} allowClear={allowClear} readonly={readonly} style={styles} />\r\n }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nconst { Option } = Select;\r\nclass SelectWidget extends WidgetComponent<Design.WidgetProps> {\r\n\r\n handleItemValue = (value: string) => {\r\n this.props.onChange?.(value);\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { list, value, multiple, placeholder, allowClear, readonly, style } = this.props;\r\n return (<Select\r\n showSearch\r\n placeholder={placeholder}\r\n mode={multiple ? \"multiple\" : undefined}\r\n disabled={readonly}\r\n value={value as string}\r\n allowClear={allowClear}\r\n style={style}\r\n onChange={this.handleItemValue}\r\n filterOption={(inputValue: string, option: any) =>\r\n (option!.children as unknown as string).toLowerCase().includes(inputValue.toLowerCase())\r\n }\r\n >\r\n {list && (list.map(({ key, label }) => <Option key={key} value={key}>{label}</Option>))}\r\n </Select>);\r\n }\r\n}","import React from 'react';\r\nimport { Form, Checkbox } from 'antd';\r\nimport { PreviewList } from '@/preview';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { config } from '@/config';\r\n\r\nexport default class CheckBox extends UIListComponent<Design.RemoteProps, Design.ListState> {\r\n state = {\r\n list: [],\r\n }\r\n \r\n componentDidMount(): void {\r\n const { remote } = this.props;\r\n const optionList = this.optionList();\r\n if (optionList) {\r\n this.setState({\r\n list: optionList\r\n }, this.initValue);\r\n } else if (remote && remote.trim().length > 0) {\r\n const url = config.request.route + remote;\r\n this.request(url).then((list: Design.ItemOption[]) => {\r\n this.setState({ list }, this.initValue);\r\n });\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.plusRules();\r\n const itemList = this.collectionList();\r\n const list = this.getList(this.state.list, itemList, (plist) => {\r\n if (plist.length > 0) {\r\n const currentValue = this.getFieldValue<string[]>();\r\n if (currentValue && !plist.some(item => currentValue.includes(item.key))) {\r\n this.cleanFieldValue();\r\n }\r\n }\r\n });\r\n const { code, preview, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n { preview ? <PreviewList list={this.state.list} style={styles} /> : <CheckboxWidget list={list} readonly={readonly} style={styles}/> }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return null;\r\n }\r\n}\r\n\r\nclass CheckboxWidget extends WidgetComponent<Design.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, list, readonly, style, onChange } = this.props;\r\n return (\r\n <Checkbox.Group\r\n style={style}\r\n value={value as string[]}\r\n onChange={(value: any) => {\r\n onChange?.(value);\r\n }}\r\n >\r\n {list && (list.map(({ key, label }) => <Checkbox key={key} value={key} disabled={readonly}>{label}</Checkbox>))}\r\n </Checkbox.Group>\r\n );\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Form, Radio } from 'antd';\r\nimport { PreviewList } from '@/preview';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { config } from '@/config';\r\n\r\nexport default class RadioButton extends UIListComponent<Design.Radio.Props, Design.ListState> {\r\n state = {\r\n list: [],\r\n }\r\n \r\n componentDidMount(): void {\r\n const { remote } = this.props;\r\n const optionList = this.optionList();\r\n if (optionList) {\r\n this.setState({ \r\n list: optionList\r\n }, this.initValue);\r\n } else if (remote && remote.trim().length > 0) {\r\n const url = config.request.route + remote;\r\n this.request(url).then((list: Design.ItemOption[]) => {\r\n this.setState({ list }, this.initValue);\r\n });\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const itemList = this.collectionList();\r\n const list = this.getList(this.state.list, itemList, (plist) => {\r\n if (plist.length > 0) {\r\n const currentValue = this.getFieldValue<string>();\r\n if (currentValue && !plist.some(item => currentValue.includes(item.key))) {\r\n this.cleanFieldValue();\r\n }\r\n }\r\n });\r\n const { code, preview, optionType, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewList list={list} style={styles} /> : <RadioWidget list={this.state.list} optionType={optionType} readonly={readonly} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n } \r\n}\r\n\r\nclass RadioWidget extends WidgetComponent<Design.Radio.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, list, optionType, readonly, style, onChange } = this.props;\r\n return (\r\n <Radio.Group\r\n value={value}\r\n optionType={optionType}\r\n style={style}\r\n onChange={(e: any) => {\r\n onChange?.(e.target.value);\r\n }}\r\n >\r\n {list && (list.map(({ key, label }) => <Radio key={key} value={key} disabled={readonly}>{label}</Radio>))}\r\n </Radio.Group>\r\n );\r\n } \r\n}\r\n","import React from 'react';\r\nimport { Form, Switch } from 'antd';\r\nimport { PreviewSwitch } from '@/preview';\r\nimport { UIComponent } from '@/service';\r\n\r\nexport default class SwitchButton extends UIComponent<Design.ComponentProps> {\r\n \r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { code, preview, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n label={this.getLabel()}\r\n name={code}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"checked\"\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewSwitch style={styles} /> : <Switch disabled={readonly} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}","import React from 'react';\r\nimport { Form, InputNumber } from 'antd';\r\nimport format from 'number-format.js';\r\nimport { PreviewDuration } from '@/preview';\r\nimport { UIComponent, WidgetComponent } from '@/service';\r\nimport './index.css';\r\n\r\nexport default class Duration extends UIComponent<Design.ComponentProps> {\r\n\r\n componentDidMount(): void {\r\n this.initValue(\"000:00:00\");\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, preview, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n { preview ? <PreviewDuration style={styles} /> : <DurationWidget readonly={readonly} style={styles}/> }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass DurationWidget extends WidgetComponent<Design.WidgetProps> {\r\n\r\n duration: number[] = [0, 0, 0];\r\n \r\n changeValue = (index: number) => (changeValue: number | null) => {\r\n if (typeof changeValue === \"number\") {\r\n this.duration[index] = changeValue;\r\n const durations = this.duration.map((value: number, index: number) => (index === 0 ? format(\"000\", value) : format(\"00\", value)));\r\n this.props.onChange?.(durations.join(\":\"));\r\n }\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { value, readonly, style } = this.props;\r\n if (typeof value === \"string\") {\r\n this.duration = value.split(\":\").map(Number);\r\n }\r\n return (\r\n <div className=\"duration\">\r\n <Form.Item>\r\n <InputNumber style={{width: '100%', ...style}} min={0} max={999} precision={0} value={this.duration[0]}\r\n formatter={(value: any) => value! < 100 ? (value! < 10 ? '00'+ value : '0'+ value) : value!.toString()}\r\n onChange={this.changeValue(0)} controls={false} disabled={readonly}\r\n />\r\n </Form.Item><span>小时</span>\r\n <Form.Item>\r\n <InputNumber style={{width: '100%', ...style}} min={0} max={59} precision={0} value={this.duration[1]}\r\n formatter={(value: any) => value! < 10 ? '0'+ value : value!.toString()}\r\n onChange={this.changeValue(1)} controls={false} disabled={readonly}\r\n />\r\n </Form.Item><span>分</span>\r\n <Form.Item>\r\n <InputNumber style={{width: '100%', ...style}} min={0} max={59} precision={0} value={this.duration[2]}\r\n formatter={(value: any) => value! < 10 ? '0'+ value : value!.toString()}\r\n onChange={this.changeValue(2)} controls={false} disabled={readonly}\r\n />\r\n </Form.Item><span>秒</span>\r\n </div>\r\n )\r\n }\r\n}\r\n","import React from 'react';\r\nimport { Form, DatePicker } from 'antd';\r\nimport moment from 'moment';\r\nimport { PreviewText } from '@/preview';\r\nimport { UIComponent, WidgetComponent } from '@/service';\r\n\r\nexport default class Datepicker extends UIComponent<Design.Picker.Props> {\r\n\r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, type = \"date\", format = \"YYYY-MM-DD\", showTime = false, preview, placeholder, allowClear = true, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n { preview ? <PreviewText style={styles}/> : <DateWidget type={type} format={format} showTime={showTime} placeholder={placeholder} allowClear={allowClear} readonly={readonly} style={styles} /> }\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass DateWidget extends WidgetComponent<Design.Picker.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, type, format, showTime, placeholder, allowClear, readonly, style, onChange } = this.props; \r\n return (\r\n <DatePicker \r\n value={value ? moment(value, format) : undefined}\r\n picker={type}\r\n format={format}\r\n showTime={showTime ? { format: 'HH:mm' } : undefined}\r\n placeholder={placeholder}\r\n allowClear={allowClear}\r\n disabled={readonly} \r\n style={style}\r\n onChange={(value: any) => {\r\n onChange?.(value?.format(format));\r\n }}\r\n />\r\n )\r\n }\r\n}","import React from 'react';\r\nimport { Form, TimePicker } from 'antd';\r\nimport moment from 'moment';\r\nimport { UIComponent, WidgetComponent } from '@/service';\r\nimport { PreviewText } from '@/preview';\r\n\r\nexport default class Timepicker extends UIComponent<Design.Picker.Props> {\r\n\r\n componentDidMount(): void {\r\n this.initValue();\r\n }\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.rules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, format = \"HH:mm:ss\", preview, placeholder, allowClear = true, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n {preview ? <PreviewText style={styles} /> : <TimeWidget format={format} placeholder={placeholder} allowClear={allowClear} readonly={readonly} style={styles} />}\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass TimeWidget extends WidgetComponent<Design.Picker.WidgetProps> {\r\n render(): React.ReactNode {\r\n const { value, format, placeholder, allowClear, readonly, style, onChange } = this.props;\r\n return (\r\n <TimePicker \r\n value={value ? moment(value, format) : undefined}\r\n format={format}\r\n placeholder={placeholder}\r\n allowClear={allowClear}\r\n disabled={readonly}\r\n style={style}\r\n onChange={(value: any) => {\r\n onChange?.(value?.format(format))\r\n }} />\r\n )\r\n }\r\n}\r\n","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import React from 'react';\r\nimport { Form, Upload, Button, Modal, Progress, message } from 'antd';\r\nimport { UploadOutlined } from '@ant-design/icons';\r\nimport request from '@/utils/request';\r\nimport bytes from 'bytes';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewFile } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nconst normFile = (e: any) => {\r\n if (Array.isArray(e)) {\r\n return e;\r\n }\r\n return e && e.list;\r\n};\r\n\r\nexport default class UplaodList extends UIListComponent<Design.File.Props> {\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.plusRules();\r\n const { code, preview, maxCount, fileType, fileTypeMessage, fileSize, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n getValueFromEvent={normFile}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <UploadWidget maxCount={maxCount} fileType={fileType} fileTypeMessage={fileTypeMessage} fileSize={fileSize} readonly={readonly} preview={preview} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass UploadWidget extends WidgetComponent<Design.File.WidgetProps, Design.File.WidgetStates> {\r\n timer?: NodeJS.Timeout;\r\n uploading = false;\r\n state = {\r\n fileList: [],\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n }\r\n\r\n componentDidMount(): void {\r\n const { list } = this.props;\r\n const url = config.file.listUrl;\r\n if (list && list?.length > 0 && list[0]) {\r\n request(url)({ ids: list }).then((response: Design.Result) => {\r\n const fileList = response.data.map((file: Design.File.FileInfo) => ({ ...file, status: 'done'}));\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n })\r\n }).catch((error: Error) => {\r\n console.warn(\"url\", url, error);\r\n });\r\n }\r\n }\r\n\r\n onChange(fileList: Design.File.FileInfo[]) {\r\n this.props.onChange?.(fileList.filter(({ id, status }) => (id && status === 'done')).map(({ id }) => id));\r\n }\r\n\r\n onBeforeUpload = (file: any) => {\r\n const { fileSize, fileType, fileTypeMessage } = this.props;\r\n const fileTypeArray = fileType?.replace(/\\ +/g, \"\").split(\",\");\r\n const fileTypes = fileTypeArray?.map((type: string) => (type.startsWith(\".\") ? config.mimeType[type]: type));\r\n if (fileTypes && fileTypes.length > 0) {\r\n const isFileType = fileTypes.includes(file.type);\r\n if (!isFileType) {\r\n message.error(fileTypeMessage);\r\n return Upload.LIST_IGNORE;\r\n }\r\n } else {\r\n message.error(\"文件类型不匹配!\");\r\n return Upload.LIST_IGNORE;\r\n }\r\n if (fileSize) {\r\n const fileSizeValue = bytes.parse(fileSize);\r\n if (fileSizeValue < file.size) {\r\n message.error(`上传的文件大小,不能超过 ${fileSize}!`);\r\n return Upload.LIST_IGNORE;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n onStart = (): void => {\r\n clearInterval(this.timer);\r\n this.setState({\r\n modal: {\r\n open: true,\r\n progress: 0\r\n }\r\n })\r\n this.uploading = true;\r\n }\r\n\r\n onProgress = (step: { percent: number}) => {\r\n if (!this.uploading) {\r\n return\r\n }\r\n clearInterval(this.timer);\r\n const percent = Math.round(step.percent / 2);\r\n this.setState({\r\n modal: {\r\n open: true,\r\n progress: percent\r\n }\r\n });\r\n if (percent === 50) {\r\n let progress = percent;\r\n this.timer = setInterval(() => {\r\n if (this.uploading) {\r\n this.setState({\r\n modal: {\r\n open: true,\r\n progress: ++progress\r\n }\r\n });\r\n } else {\r\n clearInterval(this.timer);\r\n this.setState({\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n });\r\n }\r\n if (progress === 99) {\r\n clearInterval(this.timer);\r\n }\r\n }, 1000);\r\n }\r\n }\r\n\r\n onSuccess = (response: any, file: any) => {\r\n clearInterval(this.timer);\r\n const { id, url } = response.data;\r\n file.status = \"done\";\r\n file.response = response;\r\n file.id = id;\r\n file.url = url;\r\n const fileList = [...this.state.fileList, file];\r\n this.setState({\r\n fileList,\r\n modal: {\r\n open: true,\r\n progress: 100\r\n }\r\n }, () => {\r\n this.onChange(fileList);\r\n setTimeout(()=> {\r\n this.setState({\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n })\r\n }, 500);\r\n });\r\n this.uploading = false;\r\n }\r\n\r\n onError = (error: any, response: any, file: any) => {\r\n clearInterval(this.timer);\r\n const fileList = [...this.state.fileList, file];\r\n file.status = \"error\";\r\n file.response = response?.message ?? \"上传失败\";\r\n this.setState({\r\n fileList,\r\n modal: {\r\n open: false,\r\n progress: 100\r\n }\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n this.uploading = false;\r\n }\r\n\r\n onRemove = (file: any) => {\r\n const { fileList } = this.state;\r\n const list = fileList.filter(({ id }) => id !== file.id);\r\n this.setState({\r\n fileList: list\r\n }, () => {\r\n this.onChange(list);\r\n });\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { fileList, modal } = this.state;\r\n const { preview, maxCount: count, readonly, style } = this.props;\r\n const maxCount = count ? Number(count) : 0;\r\n if (preview) {\r\n return <PreviewFile fileList={fileList} />\r\n }\r\n const { onStart, onSuccess, onProgress, onError } = this;\r\n const itemProps = { onStart, onSuccess, onProgress, onError }\r\n return (\r\n <>\r\n <Upload\r\n action={config.request.prefix + config.file.uploadUrl}\r\n fileList={fileList}\r\n maxCount={maxCount}\r\n disabled={readonly}\r\n beforeUpload={this.onBeforeUpload}\r\n onRemove={this.onRemove}\r\n // data={file => {\r\n // const mime = this.fileExtraData(fileType);\r\n // return { mime, uid: file.uid };\r\n // }}\r\n { ...itemProps }\r\n >\r\n <Button disabled={readonly ? readonly : maxCount <= fileList.length} icon={<UploadOutlined />} style={style} >上传</Button>\r\n </Upload>\r\n <Modal open={modal.open} closable={false} footer={null}>\r\n <div>上传文件进度</div>\r\n <Progress percent={modal.progress} />\r\n </Modal>\r\n </>\r\n )\r\n }\r\n}","import React from 'react';\r\nimport { Form, Upload, Button, Modal, message } from 'antd';\r\nimport type { UploadProps } from 'antd/es/upload';\r\nimport { PlusOutlined } from '@ant-design/icons';\r\nimport request from '@/utils/request';\r\nimport ImgCrop from 'antd-img-crop';\r\nimport bytes from 'bytes';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewImage } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nconst normFile = (e: any) => {\r\n if (Array.isArray(e)) {\r\n return e;\r\n }\r\n return e && e.list;\r\n};\r\nconst fileType = [\"image/jpeg\", \"image/png\"];\r\n\r\nexport default class UplaodList extends UIListComponent<Design.File.Props> {\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.plusRules();\r\n const { code, preview, maxCount, fileSize, fileWidth = \"100\", fileHeight = \"100\", readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n getValueFromEvent={normFile}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <UploadWidget maxCount={maxCount} fileSize={fileSize} fileWidth={Number(fileWidth)} fileHeight={Number(fileHeight)} readonly={readonly} preview={preview} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass UploadWidget extends WidgetComponent<Design.File.WidgetProps, Design.File.WidgetStates> {\r\n timer?: NodeJS.Timer;\r\n uploading = false;\r\n state = {\r\n fileList: [],\r\n fileView: undefined,\r\n }\r\n\r\n componentDidMount(): void {\r\n const { list } = this.props;\r\n const url = config.file.listUrl;\r\n if (list && list?.length > 0 && list[0]) {\r\n request(url)({ ids: list }).then((response: Design.Result) => {\r\n const fileList = response.data.map((file: Design.File.FileInfo) => ({ ...file, status: 'done'}));\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n })\r\n }).catch((error: Error) => {\r\n console.warn(\"url\", url, error);\r\n });\r\n }\r\n }\r\n\r\n onChange(fileList: Design.File.FileInfo[]) {\r\n this.props.onChange?.(fileList.filter(({ id, status }) => (id && status === 'done')).map(({ id }) => id));\r\n }\r\n\r\n onChangeValue: UploadProps['onChange'] = ({ fileList: list }) => {\r\n const fileList: Design.File.FileInfo[] = list.map((file: any) => {\r\n if (file.response?.status === 200) {\r\n const { id, name, url } = file.response.data;\r\n file.id = id;\r\n // file.name = name;\r\n file.url = url;\r\n file.status = 'done';\r\n } else if (file.response?.status === 500) {\r\n file.status = 'error';\r\n file.response = file.response.message;\r\n }\r\n return file;\r\n });\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n }\r\n\r\n onBeforeUpload = (file: any) => {\r\n const isFileType = fileType.includes(file.type);\r\n if (!isFileType) {\r\n message.error(\"上传文件类型,仅支持图片类型!\");\r\n return Upload.LIST_IGNORE;\r\n }\r\n const { fileSize } = this.props;\r\n if (fileSize) {\r\n const fileSizeValue = bytes.parse(fileSize);\r\n if (fileSizeValue < file.size) {\r\n message.error(`上传的文件大小,不能超过 ${fileSize}!`);\r\n return Upload.LIST_IGNORE;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n onRemove = (file: any) => {\r\n const { fileList: list } = this.state;\r\n const fileList = list.filter(({ id }) => id !== file.id);\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { fileList, fileView } = this.state;\r\n const { preview, maxCount: count, readonly, fileWidth = 100, fileHeight = 100, style } = this.props;\r\n const maxCount = count ? Number(count) : 0;\r\n if (preview) {\r\n return <PreviewImage fileList={fileList} width={fileWidth} height={fileHeight} style={style}/>\r\n }\r\n return (<>\r\n <ImgCrop\r\n rotationSlider\r\n modalTitle=\"图片编辑\"\r\n modalOk=\"确认\"\r\n modalCancel=\"取消\"\r\n aspect={fileWidth / fileHeight}\r\n >\r\n <Upload\r\n listType=\"picture-card\"\r\n accept={fileType.join(\",\")}\r\n action={config.request.prefix + config.file.uploadUrl}\r\n fileList={fileList}\r\n maxCount={maxCount}\r\n disabled={readonly}\r\n beforeUpload={this.onBeforeUpload}\r\n onChange={this.onChangeValue}\r\n onRemove={this.onRemove}\r\n onPreview={(file: any) => this.setState({ fileView: file })}\r\n >\r\n {!readonly && (Number(maxCount) > fileList.length) && <Button type=\"link\" icon={<PlusOutlined />} style={style}/>}\r\n </Upload>\r\n </ImgCrop>\r\n {fileView?.[\"id\"] && <Modal title={fileView[\"name\"]} open={true} footer={null} onCancel={() => this.setState({ fileView: undefined})}>\r\n <img alt={fileView[\"name\"]} style={{ width: '100%' }} src={fileView[\"url\"]} />\r\n </Modal>}\r\n </>)\r\n }\r\n}","import React from 'react';\r\nimport { Form, Rate } from 'antd';\r\nimport { StarFilled } from '@ant-design/icons';\r\nimport { UIListComponent } from '@/service';\r\n\r\nexport default class RateButton extends UIListComponent<Design.Rate.Props> {\r\n\r\n\r\n /**\r\n * 添加校验规则\r\n * \r\n * @returns \r\n */\r\n plusRules(): Design.Rule[] {\r\n const rules = this.rules();\r\n return rules?.map(rule => {\r\n if (rule.required) {\r\n const validator = (_: unknown, value: number) => value === 0 ? Promise.reject() : Promise.resolve();\r\n return { ...rule, validator };\r\n }\r\n return { ...rule };\r\n });\r\n }\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.plusRules();\r\n\r\n const { code, preview, allowHalf = false, count = 5, items, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n const characters = items?.split(\",\") ?? [];\r\n\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <Rate allowHalf={allowHalf} count={count} character={({ index = 0 }) => characters.length > 0 ? characters[index] : <StarFilled/>} disabled={preview || readonly} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n } \r\n}\r\n","import React from 'react';\r\nimport { Form, Upload, Button, Modal, Progress, message } from 'antd';\r\nimport { UploadOutlined } from '@ant-design/icons';\r\nimport request from '@/utils/request';\r\nimport bytes from 'bytes';\r\nimport FileUpload from 'file-block-upload';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { PreviewFile } from '@/preview';\r\nimport { config } from '@/config';\r\n\r\nconst normFile = (e: any) => {\r\n if (Array.isArray(e)) {\r\n return e;\r\n }\r\n return e && e.list;\r\n};\r\n\r\nexport default class UplaodList extends UIListComponent<Design.File.Props> {\r\n\r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n const rules = this.plusRules();\r\n const { code, preview, maxCount, fileType, fileTypeMessage, fileSize, readonly, hidden } = this.props;\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n label={this.getLabel()}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n getValueFromEvent={normFile}\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <UploadWidget maxCount={maxCount} fileType={fileType} fileTypeMessage={fileTypeMessage} fileSize={fileSize} readonly={readonly} preview={preview} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass UploadWidget extends WidgetComponent<Design.File.WidgetProps, Design.File.WidgetStates> {\r\n timer?: NodeJS.Timer;\r\n uploading = false;\r\n state = {\r\n fileList: [],\r\n modal: {\r\n open: false,\r\n progress: 0\r\n }\r\n }\r\n\r\n componentDidMount(): void {\r\n const { list } = this.props;\r\n const url = config.file.listUrl;\r\n if (list && list.length > 0) {\r\n request(url)({ ids: list }).then((response: Design.Result) => {\r\n const fileList = response.data.map((file: Design.File.FileInfo) => ({ ...file, status: 'done' }));\r\n this.setState({\r\n fileList\r\n }, () => {\r\n this.onChange(fileList);\r\n })\r\n }).catch((error: Error) => {\r\n console.warn(\"url\", url, error);\r\n });\r\n }\r\n }\r\n\r\n onBeforeUpload = (file: any) => {\r\n const { fileSize, fileType, fileTypeMessage } = this.props;\r\n const fileTypeArray = fileType?.replace(/\\ +/g, \"\").split(\",\");\r\n if (fileTypeArray && fileTypeArray.length > 0) {\r\n const isFileType = fileTypeArray.includes(file.type);\r\n if (!isFileType) {\r\n message.error(fileTypeMessage);\r\n return Upload.LIST_IGNORE;\r\n }\r\n } else {\r\n message.error(\"文件类型不匹配!\");\r\n return Upload.LIST_IGNORE;\r\n }\r\n if (fileSize) {\r\n const fileSizeValue = bytes.parse(fileSize);\r\n if (fileSizeValue < file.size) {\r\n message.error(`上传的文件大小,不能超过 ${fileSize}!`);\r\n return Upload.LIST_IGNORE;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n customRequest = (info: any) => {\r\n const options = {\r\n blockSize: config.chunk.chunkSize,\r\n checkFile: async ({fileName, fileMd5, fileSize}: any) => (\r\n await request(\"post form \" + config.chunk.checkFile)({ fileName, fileMd5, fileSize })\r\n ),\r\n checkBlock: async ({fileName, fileMd5, blockMd5, blockIndex}: any) => (\r\n await request(\"post form \" + config.chunk.checkChunk)({ fileName, fileMd5, blockMd5, blockIndex })\r\n ),\r\n\r\n uploadBlock: async ({fileName, fileMd5, blockMd5, blockIndex, file}: any) => {\r\n const formData = new FormData();\r\n formData.append(\"blockIndex\", String(blockIndex));\r\n formData.append(\"blockMd5\", blockMd5);\r\n formData.append(\"fileName\", fileName);\r\n formData.append(\"fileMd5\", fileMd5);\r\n formData.append(\"file\", file as Blob);\r\n return await request(\"post form \" + config.chunk.chunkUpload)(formData);\r\n },\r\n\r\n mergeBlock: async ({fileName, fileMd5, fileSize}: any) => (\r\n await request(\"post form \" + config.chunk.doMerge)({fileName, fileMd5, fileSize})\r\n ),\r\n mergeProgress: async () => {\r\n const result = await request(config.chunk.mergeProgress)();\r\n return result?.data;\r\n },\r\n\r\n verifyFile: async ({fileName, fileMd5, fileSize}: any) => (\r\n await request(\"post form \" + config.chunk.onComplete)({fileName, fileMd5, fileSize})\r\n ),\r\n verifyProgress: async () => {\r\n const result = await request(config.chunk.completeProgress)();\r\n return result?.data;\r\n },\r\n };\r\n\r\n const upload = FileUpload.create(options);\r\n upload.progress((file: any, progress: number) => {\r\n file.status = \"uploading\";\r\n this.setState({ modal: { open: true, progress }});\r\n });\r\n upload.complete((file: any) => {\r\n const { id, url } = file.response;\r\n file.id = id;\r\n file.url = url;\r\n file.status = \"done\";\r\n const fileList = [...this.state.fileList, file];\r\n this.setState({\r\n fileList,\r\n modal: { open: false, progress: 0 }\r\n }, () => {\r\n this.onChange(fileList);\r\n });\r\n });\r\n upload.error((file: any, error: string) => {\r\n file.status = 'error';\r\n file.response = error;\r\n let fileList: any[] = this.state.fileList;\r\n const index = fileList.findIndex(({ uid }) => uid === file.uid);\r\n if (index === -1) {\r\n fileList.push(file);\r\n } else {\r\n fileList[index] = file;\r\n }\r\n this.setState({\r\n fileList,\r\n modal: { open: false, progress: 0 }\r\n });\r\n });\r\n upload.start(info.file);\r\n }\r\n\r\n onChange(fileList: Design.File.FileInfo[]) {\r\n this.props.onChange?.(fileList.filter(({ status }) => status === 'done').map(({ id }) => id));\r\n }\r\n\r\n onRemove = (file: any) => {\r\n const { fileList } = this.state;\r\n const list = fileList.filter(({ id }) => id !== file.id);\r\n this.setState({\r\n fileList: list\r\n }, () => {\r\n this.onChange(list);\r\n });\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { fileList, modal } = this.state;\r\n const { preview, maxCount: count, readonly, style } = this.props;\r\n const maxCount = count ? Number(count) : 0;\r\n if (preview) {\r\n return <PreviewFile fileList={fileList} />\r\n }\r\n return (\r\n <>\r\n <Upload\r\n action={config.request.prefix + config.file.uploadUrl}\r\n fileList={fileList}\r\n maxCount={maxCount}\r\n disabled={readonly}\r\n beforeUpload={this.onBeforeUpload}\r\n customRequest={this.customRequest}\r\n onRemove={this.onRemove}\r\n // data={file => {\r\n // const mime = this.fileExtraData(fileType);\r\n // return { mime, uid: file.uid };\r\n // }}\r\n >\r\n <Button disabled={readonly ? readonly : maxCount <= fileList.length} icon={<UploadOutlined />} style={style} >上传</Button>\r\n </Upload>\r\n <Modal open={modal.open} closable={false} footer={null}>\r\n <div>上传文件进度</div>\r\n <Progress percent={modal.progress} />\r\n </Modal>\r\n </>\r\n )\r\n }\r\n}","import React from 'react';\r\nimport { Form, Card, Table, Modal, Input, Space, Row, Col } from 'antd';\r\nimport { QuestionCircleOutlined } from '@ant-design/icons';\r\nimport { concat, find, uniqueId } from 'lodash';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport { validate } from \"@/applets\";\r\n\r\nexport default class TableList extends UIListComponent<Design.ComponentProps> {\r\n \r\n getColumns() {\r\n const columnList = find(this.props.children, { tag: \"Columns\" })\r\n if (columnList) {\r\n return columnList.children?.map((column: Design.Table.ColumnData) => ({\r\n ...column,\r\n rules: column.rules?.map(validate)\r\n }));\r\n }\r\n return [];\r\n }\r\n \r\n render(): React.ReactNode {\r\n const show = this.display();\r\n if (show) {\r\n this.onComputeValue();\r\n const rules = this.plusRules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, title, preview, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n return (\r\n <Form.Item\r\n name={code}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <TableWidget preview={preview || readonly} title={title} columns={this.getColumns()} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass TableWidget extends WidgetComponent<Design.Table.WidgetProps, Design.Table.WidgetStates> {\r\n state= {\r\n dataSource: [],\r\n modal: {\r\n title: \"\",\r\n entity: undefined,\r\n show: false\r\n }\r\n };\r\n\r\n componentDidMount(): void {\r\n const { list, onChange } = this.props;\r\n if (Array.isArray(list)) {\r\n const dataSource = list.map(({ worksId, worksExtraId, ...items }, index) => {\r\n return { id: worksExtraId, index: index + 1, ...items }\r\n });\r\n this.setState({ dataSource }, () => {\r\n onChange?.(dataSource);\r\n })\r\n }\r\n }\r\n\r\n getColumns() {\r\n const { title, preview, columns, onChange } = this.props;\r\n const { dataSource } = this.state;\r\n if (preview) {\r\n return columns;\r\n }\r\n return concat(columns, {\r\n title: '操作',\r\n dataIndex: 'option',\r\n valueType: 'option',\r\n render: (_: unknown, record: any) => [\r\n <Space key=\"option\">\r\n <a key=\"modifly\"\r\n onClick={() => {\r\n this.setState({\r\n modal: { title: `修改${title}`, entity: record, show: true }\r\n })\r\n }}\r\n >\r\n 修改\r\n </a>\r\n <a key=\"delete\"\r\n onClick={() => {\r\n Modal.confirm({\r\n title: '警告',\r\n icon: <QuestionCircleOutlined />,\r\n content: '请确认是否删除该项数据?',\r\n okText: '确认',\r\n cancelText: '取消',\r\n onOk: () => {\r\n const list: Design.Table.Item[] = dataSource.filter(({ id, uid }) => !((id && record.id === id) || (uid && record.uid === uid)));\r\n this.setState({ dataSource: list }, () => {\r\n onChange?.(list);\r\n })\r\n },\r\n });\r\n }}\r\n >\r\n 删除\r\n </a>\r\n </Space>\r\n ],\r\n });\r\n }\r\n\r\n onFinish = (entity: Design.Table.Item) => {\r\n const { dataSource } = this.state;\r\n let list: Design.Table.Item[] = [];\r\n if (entity.id || entity.uid) {\r\n list = dataSource.map((item: Design.Table.Item) => {\r\n if (entity.id && item.id === entity.id) {\r\n return { ...item, ...entity }\r\n } else if (entity.uid && item.uid === entity.uid) {\r\n return { ...item, ...entity }\r\n }\r\n return item;\r\n });\r\n } else {\r\n entity.index = dataSource.length + 1;\r\n entity.uid = uniqueId();\r\n list = [...dataSource, entity];\r\n }\r\n\r\n this.setState({\r\n dataSource: list,\r\n modal: { title: \"\", entity: undefined, show: false }\r\n }, () => {\r\n this.props.onChange?.(list);\r\n })\r\n }\r\n\r\n onCancel = () => {\r\n this.setState({\r\n modal: { title: \"\", entity: undefined, show: false }\r\n })\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { title, preview, style } = this.props;\r\n const { dataSource, modal } = this.state;\r\n const columns = this.getColumns();\r\n return (\r\n <Card\r\n title={title}\r\n bodyStyle={{ padding: '0px 12px' }}\r\n extra={\r\n preview ? null :\r\n <a key=\"new\" onClick={() => {\r\n this.setState({\r\n modal: { title: `新建${title}`, entity: undefined, show: true }\r\n })\r\n }}>添加</a>\r\n }\r\n >\r\n <Table rowKey=\"index\" size=\"small\" style={style} columns={columns} dataSource={dataSource} />\r\n {modal.show && <ModalForm title={modal.title} entity={modal.entity} columns={columns} onFinish={this.onFinish} onCancel={this.onCancel} />}\r\n </Card>\r\n )\r\n }\r\n}\r\n\r\nconst ModalForm = ({ title, entity, columns, onFinish, onCancel }: Design.Table.ModalProps) => {\r\n const [form] = Form.useForm();\r\n return (\r\n <Modal \r\n title={title}\r\n width={740}\r\n open={true}\r\n destroyOnClose={true}\r\n onCancel={onCancel}\r\n onOk={async () => {\r\n const valid = form.validateFields()\r\n valid.then((data: Design.Table.Item)=> {\r\n onFinish({...entity, ...data});\r\n }).catch((e: any)=> {\r\n console.warn(e);\r\n });\r\n }} \r\n >\r\n <Form\r\n form={form} \r\n name=\"modalTable\"\r\n initialValues={entity}\r\n wrapperCol={{ span: 22 }}\r\n autoComplete=\"off\"\r\n layout='vertical'\r\n >\r\n <Row>\r\n {columns.length > 0 && columns.map(({ title, dataIndex, placeholder, rules }) => {\r\n if (dataIndex !== 'index' && dataIndex !== 'option') {\r\n return (\r\n <Col span={12} key={dataIndex}>\r\n <Form.Item label={title} name={dataIndex} rules={rules as []}>\r\n <Input placeholder={placeholder} />\r\n </Form.Item>\r\n </Col>\r\n )\r\n }\r\n })}\r\n </Row>\r\n </Form>\r\n </Modal>\r\n )\r\n}\r\n","function _objectDestructuringEmpty(obj) {\n if (obj == null) throw new TypeError(\"Cannot destructure \" + obj);\n}\nmodule.exports = _objectDestructuringEmpty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _extends() {\n module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _extends.apply(this, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import React, { useRef } from 'react';\r\nimport { Form, FormInstance, Card, Table, Modal, Space } from 'antd';\r\nimport { QuestionCircleOutlined } from '@ant-design/icons';\r\nimport { concat, find, uniqueId } from 'lodash';\r\nimport { UIListComponent, WidgetComponent } from '@/service';\r\nimport XMLDocument from \"@/utils/document\";\r\nimport { config } from '@/config';\r\nimport FormDocument from '@/form';\r\n\r\nexport default class FormList extends UIListComponent<Design.Form.Props, Design.Form.States> {\r\n\r\n itemList:{ code: string; title: string, type: string; data: {}; }[] = []\r\n columnList: any[] = []\r\n state = {\r\n doc: undefined,\r\n loading: true\r\n };\r\n\r\n componentDidMount(): void {\r\n const formId = this.props.formId!;\r\n this.setState({ loading: true });\r\n this.request(config.form.documentUrl, { formId }).then((xml: string) => {\r\n const doc = XMLDocument.toDocument(xml);\r\n this.setState({ doc });\r\n this.initItems(doc);\r\n });\r\n }\r\n\r\n initItems = async(doc: Document) => {\r\n this.columnList = find(this.props.children, { tag: \"Columns\" }).children;\r\n const codes: any[] = this.columnList.map((column: any) => column.dataIndex);\r\n const elements = XMLDocument.selectors(doc, \"[code]\");\r\n for (const element of elements) {\r\n const code = element.getAttribute(\"code\");\r\n const title = element.getAttribute(\"title\")!;\r\n const type = element.tagName.toLowerCase();\r\n if (code && codes.includes(code)) {\r\n const data: any = {};\r\n const remote = element.getAttribute(\"remote\");\r\n const options = XMLDocument.selectors(element, \"Option\");\r\n if (options.length > 0) {\r\n for (const option of options) {\r\n const key = option.getAttribute(\"value\");\r\n const value = option.textContent;\r\n if (key && value) {\r\n data[key] = value;\r\n }\r\n }\r\n } else if (remote) {\r\n const list: Design.ItemOption[] = await this.request(config.request.route + remote);\r\n for(const item of list) {\r\n data[item.key] = item.label;\r\n }\r\n }\r\n this.itemList.push({ code, title, type, data });\r\n }\r\n }\r\n this.setState({ loading: false });\r\n }\r\n \r\n render(): React.ReactNode { \r\n const show = this.display();\r\n if (show && !this.state.loading) {\r\n this.onComputeValue();\r\n const rules = this.plusRules();\r\n const { itemProps, itemLayouts } = this.getItem();\r\n const { code, title, witdh, preview, readonly, hidden } = this.props;\r\n const { styles, itemStyles } = this.getStyles();\r\n const { doc } = this.state;\r\n return (\r\n <Form.Item\r\n name={code}\r\n style={itemStyles}\r\n hidden={hidden}\r\n rules={hidden ? [] : rules as []}\r\n valuePropName=\"list\"\r\n {...itemProps}\r\n {...itemLayouts}\r\n >\r\n <FormWidget preview={preview || readonly} title={title} witdh={witdh} columns={this.columnList} items={this.itemList} document={doc} style={styles} />\r\n </Form.Item>\r\n )\r\n } else if (this.props.hideClear) {\r\n this.cleanFieldValue();\r\n }\r\n return <></>;\r\n }\r\n}\r\n\r\nclass FormWidget extends WidgetComponent<Design.Form.WidgetProps, Design.Form.WidgetStates> {\r\n state= {\r\n dataSource: [],\r\n modal: {\r\n title: \"\",\r\n entity: undefined,\r\n show: false\r\n }\r\n };\r\n\r\n componentDidMount(): void {\r\n const list = this.props.list;\r\n if (Array.isArray(list)) {\r\n const dataSource = list.map(({ ...data }, index) => ({ id: uniqueId(), index: index + 1, ...data }));\r\n this.onChange(dataSource);\r\n }\r\n }\r\n\r\n onChange(list: any[]) {\r\n this.setState({ \r\n dataSource: list,\r\n modal: { title: \"\", entity: undefined, show: false }\r\n }, () => {\r\n this.props.onChange?.(list.map(({ id, index, ...data}) => data));\r\n })\r\n }\r\n\r\n getColumns() {\r\n const { preview, title, columns, items } = this.props;\r\n const { dataSource } = this.state;\r\n\r\n const columnList = columns.map((column: Design.Form.ColumnItem) => {\r\n const code = column.dataIndex\r\n const item: any = items.find((item: any) => item.code === code);\r\n if (item) {\r\n if (!column.title) {\r\n column.title = item.title;\r\n }\r\n column.render = (text: string) => Object.keys(item.data).length === 0 ? text: item.data[text]\r\n }\r\n return column;\r\n });\r\n \r\n if (preview) {\r\n return columnList;\r\n }\r\n return concat(columnList, {\r\n title: '操作',\r\n dataIndex: 'option',\r\n valueType: 'option',\r\n render: (_: unknown, record: any) => [\r\n <Space key=\"option\">\r\n <a key=\"modifly\"\r\n onClick={() => {\r\n this.setState({\r\n modal: { title: `修改${title}`, entity: record, show: true }\r\n })\r\n }}\r\n >修改</a>\r\n <a key=\"delete\"\r\n onClick={() => {\r\n Modal.confirm({\r\n title: '警告',\r\n icon: <QuestionCircleOutlined />,\r\n content: '请确认是否删除该项数据?',\r\n okText: '确认',\r\n cancelText: '取消',\r\n onOk: () => {\r\n const list: Design.Form.Data[] = dataSource.filter(({ id }) => !(id && record.id === id));\r\n this.onChange(list);\r\n },\r\n });\r\n }}\r\n >删除</a>\r\n </Space>\r\n ],\r\n });\r\n }\r\n\r\n onFinish = (entity: Design.Form.Data) => {\r\n const dataSource = this.state.dataSource;\r\n let list: Design.Form.Data[] = [];\r\n if (entity.id) {\r\n list = dataSource.map((data: Design.Form.Data) => data.id === entity.id ? { ...data, ...entity } : data);\r\n } else {\r\n entity.id = uniqueId();\r\n entity.index = dataSource.length + 1;\r\n list = [...dataSource, entity];\r\n }\r\n this.onChange(list);\r\n }\r\n\r\n onCancel = () => {\r\n this.setState({\r\n modal: { title: \"\", entity: undefined, show: false }\r\n })\r\n }\r\n\r\n render(): React.ReactNode {\r\n const { preview, title, witdh, document, style } = this.props;\r\n const { dataSource, modal } = this.state;\r\n const columns = this.getColumns();\r\n return (\r\n <Card\r\n title={title}\r\n bodyStyle={{ padding: '0px 12px' }}\r\n extra={\r\n preview ? null :\r\n <a key=\"new\" onClick={() => {\r\n this.setState({\r\n modal: { title: `新建${title}`, entity: undefined, show: true }\r\n })\r\n }}>添加</a>\r\n }\r\n >\r\n <Table rowKey=\"id\" size=\"small\" style={style} columns={columns} dataSource={dataSource} />\r\n {modal.show && <ModalForm title={modal.title} witdh={witdh} entity={modal.entity} document={document} onFinish={this.onFinish} onCancel={this.onCancel} />}\r\n </Card>\r\n )\r\n }\r\n}\r\n\r\nconst ModalForm = ({ title, witdh=\"740\", entity, document, onFinish, onCancel }: Design.Form.ModalProps) => {\r\n const form: React.MutableRefObject<FormInstance | undefined> = useRef();\r\n \r\n return (\r\n <Modal \r\n title={title}\r\n width={Number(witdh)}\r\n open={true}\r\n destroyOnClose={true}\r\n onCancel={onCancel}\r\n onOk={async () => {\r\n try {\r\n await form.current?.validateFields();\r\n const data = form.current?.getFieldsValue();\r\n onFinish({...entity, ...data});\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }} \r\n >\r\n {document && <FormDocument form={form} document={document} initialValues={entity}/>}\r\n </Modal>\r\n )\r\n}\r\n","import { Row } from 'antd';\r\nimport React from 'react';\r\n\r\nexport default ({ children, gutter }: any) => (\r\n <Row gutter={Number(gutter)} style={{ margin: 0 }}>\r\n {children}\r\n </Row>\r\n)","import React from 'react';\r\nimport { Col } from 'antd';\r\n\r\nexport default ({ span, children }: any) => {\r\n return (\r\n <Col span={span}>\r\n {children}\r\n </Col>\r\n )\r\n}","import React, { useMemo } from 'react';\r\nimport { Steps } from 'antd';\r\n\r\nexport default ({ direction, stepIndex, onChangeSetp, children }: any) => {\r\n const items = useMemo(() => (\r\n children?.map(({ id, attributes }: any) => {\r\n const { title, description } = attributes;\r\n return { key: id, title, description };\r\n })\r\n ), [children]);\r\n \r\n return (\r\n <Steps\r\n current={stepIndex}\r\n direction={direction}\r\n onChange={onChangeSetp}\r\n items={items}\r\n style={{ padding: 16, backgroundColor: \"white\" }}\r\n />\r\n )\r\n}","import React, { useMemo, memo } from 'react';\r\nimport { Layout } from 'antd';\r\nimport { toStyles } from \"@/utils/style\";\r\n\r\nconst { Content } = Layout;\r\n\r\nexport default memo(({ currentStepIndex, stepIndex, style, children }: any) => {\r\n const itemStyle = useMemo(() => {\r\n const styles = style ? toStyles(style) : { padding: 16, backgroundColor: \"white\" };\r\n if (currentStepIndex !== Number(stepIndex)) {\r\n Object.assign(styles, { \"display\": \"none\" });\r\n }\r\n return styles;\r\n }, [currentStepIndex]);\r\n \r\n return (\r\n <Content style={itemStyle} >\r\n {children}\r\n </Content>\r\n )\r\n});","import React from 'react';\r\nimport { Divider } from 'antd';\r\n\r\nexport default ({ dashed = false, orientation = \"center\", children }: any) => (\r\n <Divider dashed={dashed} orientation={orientation} style={{ color: \"#055ab5\", fontWeight: \"bold\" }}>{children}</Divider>\r\n)","import React, { useState, useMemo, memo } from 'react';\r\nimport { DownOutlined, UpOutlined } from '@ant-design/icons';\r\nimport { Button } from 'antd';\r\nimport { toStyles } from \"@/utils/style\";\r\n\r\nconst hide = {\r\n display: 'none'\r\n}\r\nconst show = {\r\n display: 'block'\r\n}\r\n\r\nexport default memo(({ defaultExpanded = true, on, off, style, collapse, children }: any) => {\r\n const [isExpanded, onExpanded] = useState(defaultExpanded);\r\n const styles = toStyles(style);\r\n if (collapse) {\r\n return (\r\n <>\r\n <div style={styles}>\r\n <Button\r\n type='link'\r\n onClick={() => {\r\n onExpanded(!isExpanded);\r\n }}\r\n >{isExpanded ? off : on}{isExpanded ? <UpOutlined /> : <DownOutlined />} </Button>\r\n </div>\r\n <div style={isExpanded ? show : hide}>\r\n {children}\r\n </div>\r\n </>\r\n )\r\n }\r\n return <>{children}</>;\r\n});","import React, { PureComponent, ReactNode } from \"react\";\r\nimport { Form as BaseForm, FormInstance, Skeleton } from \"antd\";\r\nimport { find, mapValues, camelCase, isBoolean, isObject, isArray, isUndefined } from \"lodash\";\r\nimport XMLDocument from \"@/utils/document\";\r\nimport XML from \"@/entity/XML\";\r\nimport { ProComponent } from \"@/service\";\r\nimport * as BaseComponents from \"@/components\"\r\nimport { Row, Col, Collapse, Content, Divider, Steps } from \"@/containers\";\r\nimport { DesignContext } from \"@/context\";\r\nimport { config } from \"@/config\";\r\nimport { regrister, autoClose } from \"@/utils/loading\";\r\n\r\nconst Components: {[name: string]: {}} = BaseComponents;\r\nconst Containers: {[name: string]: {}} = { Row, Col, Collapse, Content, Divider, Steps };\r\n\r\nexport default class FormDocument extends PureComponent<Design.HomeProps, Design.HomeState> {\r\n\r\n state = {\r\n stepIndex: 0,\r\n root: undefined,\r\n loading: true\r\n };\r\n\r\n form: React.RefObject<FormInstance>;\r\n layouts?: {};\r\n styles: {};\r\n showTitle?: boolean;\r\n hideClear: boolean = false;\r\n customComponents?: {[name:string]: {}};\r\n\r\n constructor(props: Design.HomeProps) {\r\n super(props);\r\n this.styles = props.style ?? {};\r\n this.form = props.form ?? React.createRef()\r\n }\r\n\r\n componentDidMount(): void { \r\n const { document } = this.props;\r\n let root;\r\n if (typeof document === \"string\") {\r\n root = XMLDocument.getRoot(document);\r\n } else {\r\n root = XMLDocument.parser(document);\r\n }\r\n \r\n const { style: styleValue, labelCol, wrapperCol, showTitle, hideClear } = root.attributes;\r\n this.showTitle = !!showTitle;\r\n this.hideClear = !!hideClear;\r\n if (typeof styleValue === \"string\") {\r\n const styleList: string[] = styleValue?.replace(/\\ +/g, \"\").split(\";\");\r\n styleList?.forEach(style => {\r\n if (style) {\r\n const [key, value] = style.split(\":\");\r\n Object.assign(this.styles, { [camelCase(key)]: value });\r\n }\r\n });\r\n }\r\n if (labelCol && wrapperCol) {\r\n this.layouts = {\r\n labelCol: { span: labelCol },\r\n wrapperCol: { span: wrapperCol },\r\n };\r\n }\r\n if (config.components) {\r\n this.customComponents = mapValues(config.components, (component: any) => (props: any) => <ProComponent Component={component} { ...props} />)\r\n }\r\n this.setState({ root, loading: true });\r\n\r\n /** 注册loading插件 */\r\n regrister(loading => {\r\n this.setState({ loading });\r\n });\r\n /** 自动关闭 Skeleton */\r\n autoClose();\r\n }\r\n\r\n /**\r\n * 销毁form时,重置数据\r\n */\r\n componentWillUnmount(): void {\r\n this.form.current?.resetFields();\r\n this.setState({ root: undefined, loading: true });\r\n }\r\n\r\n /**\r\n * 值发生变化时,变更state\r\n */\r\n onValuesChange = (changedValues: any) => {\r\n this.setState({\r\n values: changedValues\r\n })\r\n };\r\n\r\n /**\r\n * 切换步骤\r\n * \r\n * @param stepIndex \r\n */\r\n onStepIndex = (stepIndex: number) => { \r\n this.setState({\r\n stepIndex\r\n })\r\n }\r\n\r\n /**\r\n * 设置组件状态\r\n * \r\n * @param attributes \r\n */\r\n setComponentStatus(attributes: { [name: string]: string | boolean }) {\r\n const { preview, hidden, readonly, } = this.props;\r\n // 设置预览状态\r\n attributes.preview = preview ?? false;\r\n\r\n // 控件是否隐藏\r\n if (isBoolean(hidden)) {\r\n attributes.hidden = hidden;\r\n } else if (isArray(hidden)) {\r\n attributes.hidden = hidden.includes(attributes.code as string);\r\n } else if (isObject(hidden)) {\r\n attributes.hidden = !!hidden[attributes.code as string];\r\n } else {\r\n attributes.hidden = attributes.hidden ?? false;\r\n }\r\n // 控件是否只读\r\n if (isBoolean(readonly)) {\r\n attributes.readonly = readonly;\r\n } else if (isArray(readonly)) {\r\n attributes.readonly = readonly.includes(attributes.code as string);\r\n } else if (isObject(readonly)) {\r\n attributes.readonly = !!readonly[attributes.code as string];\r\n } else {\r\n attributes.readonly = attributes.readonly ?? false;\r\n }\r\n // 控件是否隐藏清除数据\r\n if (isUndefined(attributes.hideClear)) {\r\n attributes.hideClear = this.hideClear;\r\n }\r\n }\r\n\r\n /**\r\n * 加载组件\r\n * \r\n * @param xml \r\n * @param Component \r\n * @returns \r\n */\r\n component(xml: XML, Component: any) {\r\n const { id, attributes, children } = xml;\r\n this.setComponentStatus(attributes);\r\n return <Component key={id} {...attributes}>{children?.map(this.children)}</Component>\r\n }\r\n\r\n /**\r\n * 加载容器\r\n * \r\n * @param xml \r\n * @returns \r\n */\r\n container({ id, tag, attributes, text, children }: XML) {\r\n if (tag === \"Row\") {\r\n return <Row key={id} {...attributes}>{children?.map(this.children)}</Row>\r\n }\r\n if (tag === \"Col\") {\r\n return <Col key={id} span={Number(attributes.span)}>{children?.map(this.children)}</Col>\r\n }\r\n if (tag === \"Collapse\") {\r\n return <Collapse key={id} collapse={this.props.collapse} {...attributes}>{children?.map(this.children)}</Collapse>\r\n }\r\n if (tag === \"Content\") {\r\n return <Content key={id} currentStepIndex={this.state.stepIndex} {...attributes}>{children?.map(this.children)}</Content>\r\n }\r\n if (tag === \"Steps\") {\r\n return <Steps key={id} stepIndex={this.state.stepIndex} onChangeSetp={this.onStepIndex} {...attributes}>{children}</Steps>\r\n }\r\n if (tag === \"Divider\") {\r\n return <Divider key={id} {...attributes}>{text}</Divider>\r\n }\r\n }\r\n\r\n /**\r\n * 加载控件\r\n * \r\n * @param xml \r\n * @returns \r\n */\r\n applet({ tag, attributes, cdata, children }: XML) {\r\n if (tag === \"Columns\") {\r\n const child = children?.map(({ attributes, children }) => {\r\n if (children) {\r\n const rules: any = find(children.map(this.children), { tag: \"Validates\" });\r\n return { ...attributes, rules: rules?.children ?? [] };\r\n }\r\n return attributes;\r\n });\r\n return { tag, children: child };\r\n }\r\n if (tag === \"Options\") {\r\n const child = children?.map(({ attributes: { value }, text }) => ({ key: value, label: text }));\r\n return { tag, children: child };\r\n }\r\n if (tag === \"Validates\") {\r\n const child = children?.map(({ attributes }) => attributes);\r\n return { tag, children: child };\r\n }\r\n if (tag === \"Conditions\") {\r\n const { type, action } = attributes;\r\n const child = children?.map(({ attributes }) => attributes);\r\n return { tag, type, action, children: child };\r\n }\r\n if (tag === \"Collection\" || tag === \"Compute\") {\r\n return { tag, cdata };\r\n }\r\n }\r\n\r\n /**\r\n * 加载子项\r\n * \r\n * @param xml \r\n * @returns \r\n */\r\n children = (xml: XML) => {\r\n const Component = this.customComponents?.[xml.tag] ?? Components[xml.tag];\r\n if (Component) {\r\n return this.component(xml, Component);\r\n }\r\n const Container = Containers[xml.tag];\r\n if (Container) {\r\n return this.container(xml);\r\n }\r\n return this.applet(xml);\r\n }\r\n\r\n render(): ReactNode {\r\n const { root , loading } = this.state;\r\n const { initialValues } = this.props;\r\n return <>\r\n { root && \r\n <DesignContext.Provider value={{ ...this.props, form: this.form, showTitle: this.showTitle}}>\r\n <Form\r\n form={this.form}\r\n style={loading ? { ...this.styles, display: \"none\"} : this.styles }\r\n initialValues={initialValues}\r\n onValuesChange={this.onValuesChange}\r\n {...this.layouts}\r\n >\r\n {(root as XML).children?.map(this.children)}\r\n </Form>\r\n </DesignContext.Provider>\r\n }\r\n { loading && <Skeleton active />}\r\n </>\r\n }\r\n}\r\n\r\n/**\r\n * 表单组件\r\n */\r\nclass Form extends React.PureComponent<Design.FormProps> {\r\n\r\n onFinish = (values: object) => {\r\n console.log(\"Success:\", values);\r\n };\r\n\r\n render(): React.ReactNode {\r\n const { form, style, labelCol, wrapperCol, initialValues, children, onValuesChange } = this.props;\r\n return (\r\n <BaseForm\r\n ref={form}\r\n style={style}\r\n labelCol={labelCol}\r\n wrapperCol={wrapperCol}\r\n initialValues={initialValues}\r\n onFinish={this.onFinish}\r\n autoComplete=\"off\"\r\n onValuesChange={changedValues => {\r\n onValuesChange(changedValues);\r\n }}\r\n >\r\n {children}\r\n </BaseForm>\r\n );\r\n }\r\n}\r\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","exports","arr","Array","isArray","module","__esModule","i","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","call","next","Object","done","push","value","length","err","len","arr2","arrayLikeToArray","require$$0","o","minLen","n","prototype","toString","slice","constructor","name","from","test","TypeError","arrayWithHoles","iterableToArrayLimit","require$$1","unsupportedIterableToArray","require$$2","nonIterableRest","require$$3","instance","Constructor","_typeof","obj","input","hint","prim","toPrimitive","undefined","res","String","Number","arg","key","toPropertyKey","_defineProperties","target","props","descriptor","enumerable","configurable","writable","defineProperty","protoProps","staticProps","self","ReferenceError","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","subClass","superClass","create","assertThisInitialized","_getPrototypeOf","getPrototypeOf","XML","element","_classCallCheck","_defineProperty","this","id","uniqueId","_step","_iterator","_createForOfIteratorHelper","attributes","s","item","trim","isBoolean","toBoolean","e","f","children","_step2","_iterator2","childNodes","_this$children","_node$nodeValue","node","Element","nodeType","textContent","text","cdata","nodeValue","replace","tag","nodeName","_createClass","parseInt","XMLDocument","documentString","DOMParser","parseFromString","doc","toDocument","parser","selectors","querySelector","querySelectorAll","source","excluded","sourceKeys","keys","indexOf","objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","asyncGeneratorStep","gen","resolve","reject","_next","_throw","info","error","Promise","then","fn","args","arguments","apply","_regeneratorRuntime","Op","hasOwn","hasOwnProperty","desc","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","context","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","record","result","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","async","iter","val","object","reverse","pop","skipTempReset","prev","charAt","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","runtime","regenerator","regeneratorRuntime","accidentalStrictMode","globalThis","Function","validate","_ref","_ref$type","required","minlength","maxlength","min","max","pattern","message","RegExp","DesignContext","React","createContext","DesignConfig","conf","prefix","headers","params","route","listUrl","downloadUrl","uploadUrl","previewUrl","extraData","file","fileType","labelStyle","color","documentUrl","chunkSize","Math","pow","checkFile","checkChunk","chunkUpload","doMerge","mergeProgress","onComplete","completeProgress","request","form","chunk","mimeType","components","previewComponents","_objectSpread","config","init","defineConfig","num","listeners","wait","millisecond","setTimeout","trigger","_asyncToGenerator","_callee","loading","_listeners","_context","callback","begin","_ref2","_callee2","_context2","end","_ref3","_callee3","_context3","autoClose","_ref4","_callee4","_context4","_ref5","_callee5","_context5","umiRequest","extend","timeout","use","ctx","t0","_x2","global","targetUrl","options","cloneData","cloneDeep","data","url","domain","urlMatch","match","_slicedToArray","parse","compile","console","toLocaleUpperCase","requestType","status","rest","_objectWithoutProperties","_excluded","success","_data$message","response","request$1","uri","uriArray","split","_uriArray","_uriArray2","toStyles","styles","items","_items$split","_items$split2","assign","camelCase","UIComponent","_React$PureComponent","_inherits","_super","_createSuper","_this","_len","_args","_key","concat","_assertThisInitialized","borderBottom","remote","list","map","_Object$entries","_Object$entries$","entries","_Object$entries$2","label","defaultValue","_form$current","_form$current2","code","current","getFieldValue","setFieldValue","_form$current3","_this2","_form$current4","_form$current5","getFieldsValue","showTitle","_this$props","title","labelStyles","_jsx","itemProps","_itemLayouts$wrapperC","_this$props2","preview","labelCol","wrapperCol","tips","itemLayouts","span","styleWrapper","tooltip","_this$props3","itemStyle","itemStyles","fileds","_this$props4","_this$props4$defaultH","defaultHide","show","conditions","find","_conditions$children","action","fields","join","actuator","condition","every","some","_this$props5","_validates$children$m","_validates$children","validates","content","collection","_this3","computeValue","moment","compute","_this$props$defaultVa","setDefaultValue","PureComponent","contextType","ProComponent","_UIComponent","forceUpdate","initValue","display","onComputeValue","rules","_this$getItem","getItem","hidden","Component","_this$getStyles","getStyles","_Form","Item","getLabel","onChange","UIListComponent","itemList","plist","filter","includes","rule","validator","_","WidgetComponent","_PureComponent","Label","Tooltip","_this$context$tooltip","DefalutPreviewText","useEffect","href","rel","PreviewText","_config$previewCompon","_config$previewCompon2","DefalutPreviewEditor","dangerouslySetInnerHTML","__html","PreviewEditor","_config$previewCompon3","_config$previewCompon4","DefalutPreviewDuration","_value$split","_value$split2","hour","minute","second","PreviewDuration","_config$previewCompon5","_config$previewCompon6","DefalutPreviewSwitch","checked","PreviewSwitch","_config$previewCompon7","_config$previewCompon8","DefalutPreviewList","_ref6","_ref7","_ref8","PreviewList","_config$previewCompon9","_config$previewCompon10","DefalutPreviewFile","_ref9","fileList","_ref10","contentType","endsWith","_jsxs","paddingBottom","startsWith","_Image","width","src","alt","controls","alignItems","height","paddingLeft","PreviewFile","_config$previewCompon11","_config$previewCompon12","DefalutPreviewImage","_ref11","_Fragment","_ref12","PreviewImage","_config$previewCompon13","_config$previewCompon14","Text","placeholder","maxLength","allowClear","showCount","readonly","_Input","disabled","hideClear","cleanFieldValue","TextArea","InputNumber","_this$props$type","precision","numberProps","formatter","_InputNumber","Editor","colon","EditorWidget","_React$Component","_super2","createRef","isReactWEditor","ReactWEditor","onBlur","onFocus","SelectList","_UIListComponent","optionList","setState","multiple","_this$props2$allowCle","plusRules","collectionList","getList","currentValue","SelectWidget","Option","_Select","_WidgetComponent","_this4","_len2","_key2","_this4$props$onChange","_this4$props","showSearch","mode","handleItemValue","filterOption","inputValue","option","toLowerCase","CheckBox","CheckboxWidget","_Checkbox","Group","RadioButton","optionType","RadioWidget","_Radio","SwitchButton","valuePropName","_Switch","Duration","DurationWidget","index","changeValue","_this$props$onChange","duration","durations","format","className","Datepicker","_this$props$format","_this$props$showTime","showTime","_this$props$allowClea","DateWidget","_DatePicker","picker","Timepicker","TimeWidget","arrayWithoutHoles","iterableToArray","nonIterableSpread","normFile","UplaodList","maxCount","fileTypeMessage","fileSize","getValueFromEvent","UploadWidget","modal","open","progress","fileTypeArray","fileTypes","_message","_Upload","LIST_IGNORE","bytes","size","clearInterval","timer","uploading","step","percent","round","setInterval","_response$data","_toConsumableArray","_response$message","ids","warn","_this$state","count","onStart","onSuccess","onProgress","onError","beforeUpload","onBeforeUpload","onRemove","_Button","icon","UploadOutlined","_Modal","closable","footer","_this$props$fileWidth","fileWidth","_this$props$fileHeigh","fileHeight","fileView","_file$response","_file$response2","_file$response$data","_this$props3$fileWidt","_this$props3$fileHeig","ImgCrop","rotationSlider","modalTitle","modalOk","modalCancel","aspect","listType","accept","onChangeValue","onPreview","PlusOutlined","onCancel","RateButton","_this$props$allowHalf","allowHalf","_this$props$count","characters","_Rate","character","_ref$index","StarFilled","_verifyProgress","_verifyFile","_mergeProgress","_mergeBlock","_uploadBlock","_checkBlock","_checkFile","blockSize","fileName","fileMd5","checkBlock","blockMd5","blockIndex","uploadBlock","formData","FormData","append","_x3","mergeBlock","_x4","verifyFile","_callee6","_context6","_x5","verifyProgress","_callee7","_context7","upload","FileUpload","findIndex","uid","start","customRequest","_Progress","TableList","_columnList$children","columnList","column","_column$rules","TableWidget","columns","getColumns","dataSource","entity","worksId","worksExtraId","dataIndex","valueType","render","_Space","onClick","confirm","QuestionCircleOutlined","okText","cancelText","onOk","_Card","bodyStyle","padding","extra","_Table","rowKey","ModalForm","onFinish","_onOk","_Form$useForm","useForm","destroyOnClose","validateFields","initialValues","autoComplete","layout","_Row","_Col","_extends","FormList","codes","elements","_iterator3","_step3","getAttribute","tagName","formId","xml","initItems","witdh","FormWidget","_objectDestructuringEmpty","_this5","_this6","_ref5$witdh","useRef","log","FormDocument","Row","gutter","margin","Col","Steps","direction","stepIndex","onChangeSetp","useMemo","description","_Steps","backgroundColor","Content","_Layout","Content$1","memo","currentStepIndex","Divider","_ref$dashed","dashed","_ref$orientation","orientation","_Divider","fontWeight","hide","Collapse","_ref$defaultExpanded","defaultExpanded","on","off","collapse","_useState","useState","_useState2","isExpanded","onExpanded","UpOutlined","DownOutlined","Components","BaseComponents","Containers","_props$style","_props$form","root","changedValues","_this$customComponent","_this$customComponent2","customComponents","component","container","applet","payload","_root$attributes","getRoot","styleValue","styleList","_style$split","_style$split2","layouts","mapValues","_this$form$current","resetFields","isObject","_attributes$hidden","_attributes$readonly","isUndefined","setComponentStatus","onStepIndex","child","_rules$children","_root$children","Provider","Form","onValuesChange","_Skeleton","active"],"mappings":"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"}
|