@kne/react-form-antd 2.0.13-alpha.0.3 → 2.0.15

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/dist/index.js CHANGED
@@ -61,7 +61,7 @@ function _objectWithoutPropertiesLoose(source, excluded) {
61
61
  return target;
62
62
  }
63
63
 
64
- var _excluded$5 = ["className", "cache", "enterSubmit", "scrollToError", "scrollProps", "type", "size", "children"];
64
+ var _excluded$6 = ["className", "cache", "enterSubmit", "scrollToError", "scrollProps", "type", "size", "children"];
65
65
  var ScrollToError = reactFormHelper.widget.ScrollToError,
66
66
  EnterSubmit = reactFormHelper.widget.EnterSubmit,
67
67
  FormStore = reactFormHelper.widget.FormStore,
@@ -76,7 +76,7 @@ var Form = React.forwardRef(function (_ref, ref) {
76
76
  type = _ref.type,
77
77
  size = _ref.size,
78
78
  children = _ref.children,
79
- props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
79
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$6);
80
80
 
81
81
  var computedClass = 'react-form';
82
82
 
@@ -590,12 +590,12 @@ InputNumberField.defaultProps = {
590
590
  autoComplete: 'off'
591
591
  };
592
592
 
593
- var _excluded$4 = ["onChange"];
593
+ var _excluded$5 = ["onChange"];
594
594
  var useOnChange$6 = reactFormHelper.hooks.useOnChange;
595
595
 
596
596
  var RadioGroup$1 = function RadioGroup(_ref) {
597
597
  var onChange = _ref.onChange,
598
- props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
598
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
599
599
 
600
600
  var handler = React.useCallback(function (e) {
601
601
  onChange && onChange(e.target.value);
@@ -622,7 +622,7 @@ var _Select = function _Select(props) {
622
622
  _Select.Option = antd.Select.Option;
623
623
  _Select.OptGroup = antd.Select.OptGroup;
624
624
 
625
- var _excluded$3 = ["data", "setData", "refresh", "isLoading", "children"];
625
+ var _excluded$4 = ["data", "setData", "refresh", "isLoading", "children"];
626
626
  var useOnChange$4 = reactFormHelper.hooks.useOnChange;
627
627
 
628
628
  var _SelectFetch = reactFetch.withFetch(function (_ref) {
@@ -631,7 +631,7 @@ var _SelectFetch = reactFetch.withFetch(function (_ref) {
631
631
  refresh = _ref.refresh,
632
632
  isLoading = _ref.isLoading,
633
633
  children = _ref.children,
634
- props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
634
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
635
635
 
636
636
  return /*#__PURE__*/React__default["default"].createElement(antd.Select, props, children({
637
637
  data: data,
@@ -691,7 +691,7 @@ var _TreeSelect = function _TreeSelect(props) {
691
691
 
692
692
  _TreeSelect.TreeNode = antd.TreeSelect.TreeNode;
693
693
 
694
- var _excluded$2 = ["action", "value", "onChange", "drag", "children", "displayFilename", "accept", "fileSize", "onError", "onUploadComplete", "onBeforeUpload", "maxLength", "transformResponse"];
694
+ var _excluded$3 = ["action", "value", "onChange", "drag", "children", "displayFilename", "accept", "fileSize", "onError", "onUploadComplete", "onBeforeUpload", "maxLength", "transformResponse"];
695
695
  var useOnChange = reactFormHelper.hooks.useOnChange;
696
696
  var Dragger = antd.Upload.Dragger;
697
697
  var uploadParams = globalParams.field.upload;
@@ -763,7 +763,7 @@ var _Upload = function _Upload(_ref3) {
763
763
  onBeforeUpload = _ref3.onBeforeUpload,
764
764
  maxLength = _ref3.maxLength,
765
765
  transformResponse = _ref3.transformResponse,
766
- props = _objectWithoutPropertiesLoose(_ref3, _excluded$2);
766
+ props = _objectWithoutPropertiesLoose(_ref3, _excluded$3);
767
767
 
768
768
  displayFilename = displayFilename || uploadParams.displayFilename;
769
769
 
@@ -861,24 +861,36 @@ var UploadInput = function UploadInput(props) {
861
861
 
862
862
  UploadInput.field = _Upload;
863
863
 
864
- var _excluded$1 = ["isPass", "isLoading"];
864
+ var _excluded$2 = ["realTime", "disabled"],
865
+ _excluded2$1 = ["isPass", "isLoading"];
866
+
867
+ var SubmitButton = function SubmitButton(_ref) {
868
+ var realTime = _ref.realTime,
869
+ disabled = _ref.disabled,
870
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
865
871
 
866
- var SubmitButton = function SubmitButton(props) {
867
872
  var _useSubmit = ReactForm.useSubmit(props),
873
+ isPass = _useSubmit.isPass,
868
874
  isLoading = _useSubmit.isLoading,
869
- submitProps = _objectWithoutPropertiesLoose(_useSubmit, _excluded$1);
875
+ submitProps = _objectWithoutPropertiesLoose(_useSubmit, _excluded2$1);
870
876
 
871
877
  return /*#__PURE__*/React__default["default"].createElement(antd.Button, _extends({
872
- loading: isLoading
878
+ loading: isLoading,
879
+ disabled: disabled && (realTime ? !isPass : false)
873
880
  }, submitProps, props));
874
881
  };
875
882
 
883
+ SubmitButton.defaultProps = {
884
+ type: 'primary',
885
+ disabled: false
886
+ };
887
+
876
888
  var ResetButton = function ResetButton(props) {
877
889
  var resetProps = ReactForm.useReset();
878
890
  return /*#__PURE__*/React__default["default"].createElement(antd.Button, _extends({}, resetProps, props));
879
891
  };
880
892
 
881
- var _excluded = ["className", "formProps", "footer", "children"],
893
+ var _excluded$1 = ["className", "formProps", "footer", "children"],
882
894
  _excluded2 = ["className", "title", "formProps", "footer", "content"];
883
895
  var FetchForm = reactFetch.withFetch(Form);
884
896
 
@@ -902,7 +914,7 @@ var FormModal = function FormModal(_ref2) {
902
914
  formProps = _ref2$formProps === void 0 ? {} : _ref2$formProps,
903
915
  footer = _ref2.footer,
904
916
  children = _ref2.children,
905
- props = _objectWithoutPropertiesLoose(_ref2, _excluded);
917
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$1);
906
918
 
907
919
  return /*#__PURE__*/React__default["default"].createElement(antd.Modal, _extends({}, props, {
908
920
  className: classnames__default["default"](className, 'react-form-modal'),
@@ -938,6 +950,22 @@ FormModal.modal = function (_ref3) {
938
950
  }));
939
951
  };
940
952
 
953
+ var _excluded = ["onClick"];
954
+ var useCacheRemove = reactFormHelper.hooks.useCacheRemove;
955
+
956
+ var CancelButton = function CancelButton(_ref) {
957
+ var _onClick = _ref.onClick,
958
+ props = _objectWithoutPropertiesLoose(_ref, _excluded);
959
+
960
+ var remove = useCacheRemove();
961
+ return /*#__PURE__*/React__default["default"].createElement(antd.Button, _extends({}, props, {
962
+ onClick: function onClick() {
963
+ remove();
964
+ _onClick && _onClick.apply(void 0, [].slice.call(arguments));
965
+ }
966
+ }));
967
+ };
968
+
941
969
  var Avatar = AvatarInput;
942
970
  var Cascader = Cascader$1;
943
971
  var Checkbox = Checkbox$1;
@@ -986,6 +1014,7 @@ Object.defineProperty(exports, 'widget', {
986
1014
  get: function () { return reactFormHelper.widget; }
987
1015
  });
988
1016
  exports.Avatar = Avatar;
1017
+ exports.CancelButton = CancelButton;
989
1018
  exports.Cascader = Cascader;
990
1019
  exports.Checkbox = Checkbox;
991
1020
  exports.CheckboxGroup = CheckboxGroup;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/Form.js","../src/preset.js","../src/fields/Avatar.js","../src/fields/Cascader.js","../src/fields/Checkbox.js","../src/fields/CheckboxGroup.js","../src/fields/DatePicker.js","../src/fields/DatePickerToday.js","../src/fields/Input.js","../src/fields/InputNumber.js","../src/fields/RadioGroup.js","../src/fields/Select.js","../src/fields/SelectFetch.js","../src/fields/Switch.js","../src/fields/TextArea.js","../src/fields/TimePicker.js","../src/fields/TreeSelect.js","../src/fields/Upload.js","../src/SubmitButton.js","../src/ResetButton.js","../src/FormModal.js","../src/index.js"],"sourcesContent":["import React, {forwardRef} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport ReactForm from '@kne/react-form';\r\nimport {widget} from '@kne/react-form-helper';\r\nimport './assets/index.scss';\r\n\r\nexport * from '@kne/react-form';\r\nexport {hooks, widget, utils} from '@kne/react-form-helper';\r\n\r\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\r\n\r\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\r\n let computedClass = 'react-form';\r\n if (type !== 'default') {\r\n computedClass += `--${type}`;\r\n }\r\n\r\n if (size !== 'middle') {\r\n computedClass += `--${size}`;\r\n }\r\n\r\n const maxLabel = <MaxLabelProvider>\r\n {children}\r\n </MaxLabelProvider>;\r\n\r\n return (\r\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }}>\r\n <SizeProvider value={{size}}>\r\n <ReactForm {...props} ref={ref}>\r\n {cache ? <FormStore cache={cache}/> : null}\r\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\r\n {enterSubmit ? <EnterSubmit>\r\n {maxLabel}\r\n </EnterSubmit> : maxLabel}\r\n </ReactForm>\r\n </SizeProvider>\r\n </form>\r\n );\r\n});\r\n\r\nForm.defaultProps = {\r\n type: 'default',\r\n size: 'middle',\r\n scrollToError: true,\r\n enterSubmit: false,\r\n scrollProps: {\r\n block: 'center'\r\n }\r\n};\r\n\r\nForm.propTypes = {\r\n className: PropTypes.string,\r\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\r\n size: PropTypes.oneOf(['small', 'middle', 'large']),\r\n enterSubmit: PropTypes.bool,\r\n scrollToError: PropTypes.bool,\r\n scrollProps: PropTypes.shape({\r\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\r\n behavior: PropTypes.oneOf(['auto', 'smooth']),\r\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\r\n })\r\n};\r\n\r\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\r\nimport merge from 'lodash/merge';\r\nimport get from \"lodash/get\";\r\n\r\nexport const globalParams = {\r\n rules: {},\r\n field: {\r\n upload: {\r\n displayFilename: 'filename',\r\n action: '/open-api/upload_static_file/interview-manager',\r\n transformResponse: (response) => {\r\n const targetPath = get(response, 'results[0].targetPath');\r\n const filename = get(response, 'results[0].filename');\r\n return {\r\n code: response.code,\r\n msg: response.msg,\r\n results: targetPath + (filename ? `?${globalParams.field.upload.displayFilename}=` + encodeURIComponent(filename) : '')\r\n };\r\n }\r\n },\r\n avatar: {\r\n transformResponse: (response) => {\r\n return {\r\n code: response.code,\r\n results: response.results,\r\n msg: response.msg\r\n }\r\n },\r\n action: '/upload'\r\n }\r\n }\r\n};\r\n\r\nexport default (props) => {\r\n merge(globalParams, props);\r\n presetRules(globalParams.rules);\r\n};\r\n","import React, {useState, useRef, useEffect} from \"react\";\r\nimport {Upload, message, Modal, Slider, Row, Col, Space} from \"antd\";\r\nimport {globalParams} from \"../preset\";\r\nimport classnames from \"classnames\";\r\nimport {\r\n PlusOutlined, LoadingOutlined\r\n} from \"@ant-design/icons\";\r\nimport AvatarEditor from \"react-avatar-editor\";\r\nimport {hooks} from \"@kne/react-form-helper\";\r\nimport merge from 'lodash/merge';\r\n\r\nconst {useOnChange} = hooks;\r\nconst avatarParams = globalParams.field.avatar;\r\n\r\n\r\nconst _Avatar = ({\r\n className,\r\n value: imageUrl,\r\n onChange: propsChange,\r\n beforeUpload: onBeforeUpload,\r\n transformResponse,\r\n action,\r\n imageType,\r\n fileSize: size,\r\n children,\r\n onError,\r\n openEditor,\r\n editor: targetEditor,\r\n previewImg,\r\n previewRender\r\n }) => {\r\n const [loading, setLoading] = useState(false);\r\n const [showImageUrl, setImageUrl] = useState(imageUrl);\r\n const editorRef = useRef();\r\n\r\n const defaultEditor = {open: false, width: 250, height: 250, borderRadius: 1, text: \"确定\", title: \"裁剪图片\"};\r\n const editor = merge({}, defaultEditor, {open: openEditor}, targetEditor);\r\n\r\n useEffect(() => {\r\n setImageUrl(imageUrl);\r\n }, [imageUrl]);\r\n\r\n /* base64转blob */\r\n const dataURLtoBlob = (dataurl) => {\r\n let arr = dataurl.split(\",\");\r\n // 注意base64的最后面中括号和引号是不转译的\r\n let _arr = arr[1].substring(0, arr[1].length - 2);\r\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], {\r\n type: mime\r\n });\r\n };\r\n\r\n\r\n const AvatarEditorBox = ({file}) => {\r\n const [rotate, setRotate] = useState(0);\r\n const [scale, setScale] = useState(() => {\r\n if (editor.width === editor.height) {\r\n return 1;\r\n }\r\n return 0.35;\r\n });\r\n\r\n const onChange = (v) => {\r\n setRotate(v);\r\n };\r\n const onChangeScale = (v) => {\r\n setScale(v);\r\n };\r\n return (<div style={{\r\n \"width\": editor.width, \"margin\": \"auto\"\r\n }}>\r\n <AvatarEditor\r\n ref={editorRef}\r\n image={file}\r\n width={editor.width}\r\n height={editor.height}\r\n border={1}\r\n borderRadius={editor.borderRadius}\r\n color={[24, 144, 255, 1]} // RGBA\r\n scale={scale}\r\n rotate={rotate}\r\n />\r\n <Row gutter={4}>\r\n <Col span={4}><span>旋转</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange}/>\r\n </Col>\r\n </Row>\r\n <Row gutter={4}>\r\n <Col span={4}><span>放大</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3}\r\n onChange={onChangeScale}/>\r\n </Col>\r\n </Row>\r\n </div>);\r\n };\r\n\r\n const uploadButton = (<div>\r\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\r\n {children}\r\n </div>);\r\n\r\n const beforeUpload = async (file) => {\r\n return new Promise((resolve, reject) => {\r\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\r\n if (!isJpgOrPng) {\r\n onError(`只支持${imageType.map((str) => str.replace(\"image/\", \"\")).join(\"/\")}格式图片!`, \"typeError\", {\r\n type: imageType, fileType: file.type\r\n });\r\n reject();\r\n return false;\r\n }\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`图片不能超过${size}MB!`, \"sizeError\", {size, fileSize: file.size});\r\n reject();\r\n return false;\r\n }\r\n\r\n /*剪切图像*/\r\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\r\n if (editor.open) {\r\n Modal.success({\r\n title: editor.title,\r\n icon: \"\",\r\n width: editor.width * 2,\r\n content: <AvatarEditorBox file={file}/>,\r\n okText: editor.text,\r\n onOk: (close) => {\r\n let base64 = editorRef.current.getImage().toDataURL();\r\n setImageUrl(base64);\r\n let blob = dataURLtoBlob(base64);\r\n const files = new window.File([blob], file.name, {type: file.type});\r\n onBeforeUpload && onBeforeUpload(files);\r\n resolve(files);\r\n close();\r\n }\r\n });\r\n } else {\r\n onBeforeUpload && onBeforeUpload(file);\r\n resolve(file);\r\n }\r\n });\r\n\r\n };\r\n\r\n const onChange = (info) => {\r\n if (info.file.status === \"uploading\") {\r\n setLoading(true);\r\n return;\r\n }\r\n if (info.file.status === \"done\") {\r\n setLoading(false);\r\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\r\n if (response.code === 200) {\r\n propsChange(response.results);\r\n } else {\r\n onError(response.msg, \"xhrError\", response);\r\n }\r\n }\r\n };\r\n\r\n return (<>\r\n <Upload className={classnames(className, \"react-form-avatar\")} listType=\"picture-card\"\r\n showUploadList={false}\r\n action={action || avatarParams.action}\r\n beforeUpload={beforeUpload} onChange={onChange}>\r\n {previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) :\r\n <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\r\n </Upload>\r\n </>);\r\n};\r\n\r\n_Avatar.defaultProps = {\r\n imageType: [\"image/jpeg\", \"image/png\"],\r\n fileSize: 2, // 单位MB\r\n children: <div className=\"ant-upload-text\">点击上传</div>,\r\n onError: (info) => message.error(info),\r\n previewImg: true,\r\n previewRender: null,\r\n openEditor: false\r\n};\r\n\r\nconst AvatarInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Avatar);\r\n};\r\n\r\nAvatarInput.field = _Avatar;\r\n\r\nexport default AvatarInput;\r\n","import {Cascader as _Cascader} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst Cascader = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Cascader);\r\n};\r\n\r\nexport default Cascader;\r\n\r\n","import {Checkbox as _Checkbox} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\n\r\nconst WithCheckbox = withChecked(_Checkbox);\r\n\r\nconst Checkbox = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithCheckbox);\r\n};\r\n\r\nexport default Checkbox;\r\n","import {Checkbox} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _CheckboxGroup = Checkbox.Group;\r\n\r\nconst CheckboxGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(_CheckboxGroup);\r\n};\r\n\r\nCheckboxGroup.Checkbox = Checkbox;\r\n\r\nexport default CheckboxGroup;\r\n","import {DatePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\r\n\r\nconst _DatePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(DatePicker);\r\n};\r\n\r\nconst _MonthPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(MonthPicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n // if(props.selectToday){\r\n // return render(RangePickerToday);\r\n // }\r\n return render(RangePicker);\r\n};\r\n\r\nconst _WeekPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(WeekPicker);\r\n};\r\n\r\n_DatePicker.MonthPicker = _MonthPicker;\r\n_DatePicker.RangePicker = _RangePicker;\r\n_DatePicker.WeekPicker = _WeekPicker;\r\n\r\n\r\nexport default _DatePicker;\r\n","import {Button, DatePicker} from 'antd';\r\nimport React, {useRef, useEffect, useMemo} from 'react'\r\nimport moment from 'moment'\r\nimport get from 'lodash/get'\r\nimport useControlValue from '@kne/use-control-value'\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst PickerToday = (props) => {\r\n // console.log('>>>>data', data);\r\n const [data, onChange] = useControlValue(props);\r\n const ref_d = useRef();\r\n const newData = useMemo(() => {\r\n // console.log('......', data);\r\n const s = get(data, 0, '');\r\n const d = get(data, 1, '');\r\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\r\n return {\r\n start: s ? moment(s) : '',\r\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\r\n showZj: d === '至今',\r\n placeholder: p\r\n }\r\n }, [data]);\r\n\r\n const startChange = (v) => {\r\n // 比较日期大小\r\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\r\n onChange([newData.end, v]);\r\n return\r\n }\r\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\r\n };\r\n\r\n const endChange = (v) => {\r\n if (newData.start && v && v.isBefore(newData.start)) {\r\n onChange([v, newData.start]);\r\n return\r\n }\r\n onChange([newData.start, v || '']);\r\n };\r\n\r\n const foot = () => {\r\n return (\r\n <Button onClick={(v) => {\r\n ref_d.current.blur();\r\n onChange([newData.start || '', '至今']);\r\n }}>\r\n 至今\r\n </Button>\r\n )\r\n }\r\n return (\r\n <div style={{display: 'flex'}}>\r\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\r\n onChange={startChange}/>\r\n <div className={'svg_box'}>\r\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\r\n fill=\"currentColor\" aria-hidden=\"true\">\r\n <path\r\n d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"/>\r\n </svg>\r\n </div>\r\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\r\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\r\n <DatePicker {...{\r\n showToday: false,\r\n ...props,\r\n placeholder: newData.showZj ? '' : newData.placeholder[1],\r\n value: newData.end\r\n }} ref={ref_d}\r\n onChange={endChange} renderExtraFooter={foot}/>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n\r\nconst RangePickerToday = (props) => {\r\n const render = useOnChange(props);\r\n return render(PickerToday);\r\n};\r\n\r\nRangePickerToday.field = PickerToday;\r\n\r\nexport default RangePickerToday;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputField = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input);\r\n};\r\n\r\nInputField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputField;\r\n","import {InputNumber} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputNumberField = (props) => {\r\n const render = useDecorator(props);\r\n return render(InputNumber);\r\n};\r\n\r\nInputNumberField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputNumberField;\r\n","import React, {useCallback} from 'react';\r\nimport {Radio} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst RadioGroup = ({onChange, ...props})=>{\r\n const handler = useCallback((e) => {\r\n onChange && onChange(e.target.value);\r\n }, [onChange]);\r\n return <Radio.Group {...props} onChange={handler}/>\r\n};\r\n\r\nconst _RadioGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(RadioGroup);\r\n};\r\n\r\n_RadioGroup.Radio = Radio;\r\n\r\nexport default _RadioGroup;\r\n","import {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _Select = (props) => {\r\n const render = useOnChange(props);\r\n return render(Select);\r\n};\r\n\r\n_Select.Option = Select.Option;\r\n_Select.OptGroup = Select.OptGroup;\r\n\r\nexport default _Select;\r\n","import React from 'react';\r\nimport {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {withFetch} from '@kne/react-fetch';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\r\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\r\n});\r\n\r\nconst SelectFetch = (props) => {\r\n const render = useOnChange(props);\r\n return render(_SelectFetch);\r\n};\r\n\r\nSelectFetch.Option = Select.Option;\r\nSelectFetch.OptGroup = Select.OptGroup;\r\n\r\nexport default SelectFetch;\r\n","import {Switch as _Switch} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\nconst WithSwitch = withChecked(_Switch);\r\n\r\nconst Switch = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithSwitch);\r\n};\r\n\r\nexport default Switch;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst TextArea = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input.TextArea);\r\n};\r\n\r\nexport default TextArea;\r\n","import {TimePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {RangePicker} = TimePicker;\r\n\r\nconst _TimePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(TimePicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(RangePicker);\r\n};\r\n\r\n_TimePicker.RangePicker = _RangePicker;\r\n\r\nexport default _TimePicker;\r\n","import {TreeSelect} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _TreeSelect = (props) => {\r\n const render = useOnChange(props);\r\n return render(TreeSelect);\r\n};\r\n\r\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\r\n\r\nexport default _TreeSelect;\r\n","import React, {useState, useMemo} from 'react';\r\nimport {Upload, message, Button} from 'antd';\r\nimport {\r\n UploadOutlined\r\n} from '@ant-design/icons';\r\nimport get from 'lodash/get';\r\nimport groupBy from 'lodash/groupBy';\r\nimport uniqueId from 'lodash/uniqueId';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {globalParams} from \"../preset\";\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {Dragger} = Upload;\r\n\r\nconst uploadParams = globalParams.field.upload;\r\n\r\nconst computedFilename = (path, displayFilename = 'filename') => {\r\n const strArray = path.split('?');\r\n if (strArray[1]) {\r\n const query = {};\r\n strArray[1].split('&').forEach((str) => {\r\n const [key, value] = str.split('=');\r\n query[key] = value;\r\n });\r\n if (query[displayFilename]) {\r\n return decodeURIComponent(query[displayFilename]);\r\n }\r\n }\r\n return path;\r\n};\r\n\r\nconst valueToList = (value, displayFilename) => {\r\n if (!value) {\r\n return [];\r\n }\r\n return value.map((item) => {\r\n return {\r\n uid: uniqueId(),\r\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\r\n status: 'done',\r\n response: {code: 200, results: item}\r\n }\r\n });\r\n};\r\n\r\nconst listToValue = (value) => {\r\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\r\n};\r\n\r\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\r\n displayFilename = displayFilename || uploadParams.displayFilename;\r\n const [list, setList] = useState([]);\r\n const valueList = useMemo(() => {\r\n return valueToList(value.filter((url) => {\r\n return !list.find((file) => get(file, 'response.results') === url);\r\n }), displayFilename).concat(list);\r\n }, [list, value, displayFilename]);\r\n const changeHandler = (info) => {\r\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\r\n return;\r\n }\r\n if (info.fileList.length > maxLength) {\r\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\r\n return;\r\n }\r\n if (info.file.status === 'done') {\r\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\r\n if (info.file.response.code === 200) {\r\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\r\n onUploadComplete(info);\r\n } else {\r\n info.file.status = 'error';\r\n onError(info.file.response.msg, 'xhrError', info.file.response);\r\n }\r\n }\r\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\r\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\r\n onChange(listToValue(done));\r\n }\r\n setList(info.fileList);\r\n };\r\n const beforeUploadHandler = (file) => {\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\r\n return false;\r\n }\r\n if (maxLength === 1) {\r\n onChange([]);\r\n setList([]);\r\n }\r\n return onBeforeUpload && onBeforeUpload(file);\r\n };\r\n const UploadComponent = drag ? Dragger : Upload;\r\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\r\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\r\n {children}\r\n </UploadComponent>\r\n};\r\n\r\n_Upload.defaultProps = {\r\n value: [],\r\n accept: [],\r\n fileSize: 2,\r\n maxLength: 1,\r\n children: <Button><UploadOutlined/>点击上传</Button>,\r\n onError: (info) => message.error(info),\r\n onUploadComplete: () => {\r\n }\r\n};\r\n\r\nconst UploadInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Upload);\r\n};\r\n\r\n\r\nUploadInput.field = _Upload;\r\n\r\nexport default UploadInput;\r\n","import React from 'react';\r\nimport {useSubmit} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst SubmitButton = (props) => {\r\n const {isPass, isLoading,...submitProps} = useSubmit(props);\r\n return (\r\n <Button loading={isLoading} {...submitProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default SubmitButton;\r\n","import React from 'react';\r\nimport {useReset} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst ResetButton = (props) => {\r\n const resetProps = useReset();\r\n return (\r\n <Button {...resetProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default ResetButton;\r\n","import React from 'react';\r\nimport {Modal, Space} from 'antd';\r\nimport SubmitButton from './SubmitButton';\r\nimport ResetButton from './ResetButton';\r\nimport Form from \"./Form\";\r\nimport {withFetch} from '@kne/react-fetch';\r\nimport classnames from 'classnames';\r\n\r\nconst FetchForm = withFetch(Form);\r\n\r\nconst CommonModal = ({formProps, footer, children}) => {\r\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\r\n return <TargetForm {...formProps}>\r\n <div className=\"ant-modal-body\">\r\n {children}\r\n </div>\r\n <div className=\"ant-modal-footer\">\r\n {footer ? footer : <Space>\r\n <ResetButton>重置</ResetButton>\r\n <SubmitButton type=\"primary\">确定</SubmitButton>\r\n </Space>}\r\n </div>\r\n </TargetForm>;\r\n};\r\n\r\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\r\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\r\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\r\n </Modal>\r\n};\r\n\r\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\r\n ...props,\r\n title: title ? <div className=\"ant-modal-header\">\r\n <div className=\"ant-modal-title\">{title}</div>\r\n </div> : null,\r\n className: classnames(className, 'react-form-modal'),\r\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\r\n icon: null,\r\n footer: null\r\n});\r\n\r\nexport default FormModal;\r\n","import Form from './Form';\n\nimport Avatar$ from './fields/Avatar';\nimport Cascader$ from './fields/Cascader';\nimport Checkbox$ from './fields/Checkbox';\nimport CheckboxGroup$ from './fields/CheckboxGroup';\nimport DatePicker$ from './fields/DatePicker';\nimport DatePickerToday$ from './fields/DatePickerToday';\nimport Input$ from './fields/Input';\nimport InputNumber$ from './fields/InputNumber';\nimport RadioGroup$ from './fields/RadioGroup';\nimport Select$ from './fields/Select';\nimport SelectFetch$ from './fields/SelectFetch';\nimport Switch$ from './fields/Switch';\nimport TextArea$ from './fields/TextArea';\nimport TimePicker$ from './fields/TimePicker';\nimport TreeSelect$ from './fields/TreeSelect';\nimport Upload$ from './fields/Upload';\n\nexport * from './Form';\nexport default Form;\nexport {default as preset} from './preset';\nexport {default as FormModal} from './FormModal';\nexport {default as ResetButton} from './ResetButton';\nexport {default as SubmitButton} from './SubmitButton';\n\nexport const Avatar = Avatar$;\nexport const Cascader = Cascader$;\nexport const Checkbox = Checkbox$;\nexport const CheckboxGroup = CheckboxGroup$;\nexport const DatePicker = DatePicker$;\nexport const DatePickerToday = DatePickerToday$;\nexport const Input = Input$;\nexport const InputNumber = InputNumber$;\nexport const RadioGroup = RadioGroup$;\nexport const Select = Select$;\nexport const SelectFetch = SelectFetch$;\nexport const Switch = Switch$;\nexport const TextArea = TextArea$;\nexport const TimePicker = TimePicker$;\nexport const TreeSelect = TreeSelect$;\nexport const Upload = Upload$;\n\nexport const fields = { Avatar, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, Input, InputNumber, RadioGroup, Select, SelectFetch, Switch, TextArea, TimePicker, TreeSelect, Upload };"],"names":["ScrollToError","widget","EnterSubmit","FormStore","MaxLabelProvider","SizeProvider","Form","forwardRef","ref","className","cache","enterSubmit","scrollToError","scrollProps","type","size","children","props","computedClass","maxLabel","React","classnames","e","preventDefault","stopPropagation","ReactForm","defaultProps","block","propTypes","PropTypes","string","oneOf","bool","shape","behavior","inline","globalParams","rules","field","upload","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","imageUrl","value","propsChange","onChange","onBeforeUpload","beforeUpload","imageType","fileSize","onError","openEditor","targetEditor","editor","previewImg","previewRender","useState","loading","setLoading","showImageUrl","setImageUrl","editorRef","useRef","defaultEditor","open","width","height","borderRadius","text","title","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","v","onChangeScale","AvatarEditor","Row","Col","Slider","uploadButton","LoadingOutlined","PlusOutlined","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","Modal","success","icon","content","okText","onOk","close","base64","current","getImage","toDataURL","blob","files","window","File","name","info","status","Upload","message","error","AvatarInput","render","Cascader","_Cascader","useCheckedToValue","withChecked","hoc","WithCheckbox","_Checkbox","Checkbox","checkedProps","_CheckboxGroup","Group","CheckboxGroup","MonthPicker","DatePicker","RangePicker","WeekPicker","_DatePicker","_MonthPicker","_RangePicker","_WeekPicker","PickerToday","useControlValue","data","ref_d","newData","useMemo","s","d","p","start","moment","end","showZj","placeholder","startChange","isBefore","endChange","foot","Button","blur","display","showToday","RangePickerToday","useDecorator","InputField","Input","autoComplete","InputNumberField","InputNumber","RadioGroup","handler","useCallback","target","Radio","_RadioGroup","_Select","Select","Option","OptGroup","_SelectFetch","withFetch","setData","refresh","isLoading","SelectFetch","WithSwitch","_Switch","Switch","TextArea","TimePicker","_TimePicker","_TreeSelect","TreeSelect","TreeNode","Dragger","uploadParams","computedFilename","path","strArray","query","forEach","key","decodeURIComponent","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","_Upload","drag","accept","onUploadComplete","maxLength","list","setList","valueList","url","find","concat","changeHandler","fileList","groupBy","done","beforeUploadHandler","UploadComponent","UploadOutlined","UploadInput","SubmitButton","useSubmit","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","Space","FormModal","modal","Avatar","Avatar$","Cascader$","Checkbox$","CheckboxGroup$","DatePicker$","DatePickerToday","DatePickerToday$","Input$","InputNumber$","RadioGroup$","Select$","SelectFetch$","Switch$","TextArea$","TimePicker$","TreeSelect$","Upload$","fields"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAOA,aAAP,GAAgFC,sBAAhF,CAAOD,aAAP;AAAA,IAAsBE,WAAtB,GAAgFD,sBAAhF,CAAsBC,WAAtB;AAAA,IAAmCC,SAAnC,GAAgFF,sBAAhF,CAAmCE,SAAnC;AAAA,IAA8CC,gBAA9C,GAAgFH,sBAAhF,CAA8CG,gBAA9C;AAAA,IAAgEC,YAAhE,GAAgFJ,sBAAhF,CAAgEI,YAAhE;IAEMC,IAAI,GAAGC,gBAAU,CAAC,gBAA8FC,GAA9F,EAAsG;AAAA,MAApGC,SAAoG,QAApGA,SAAoG;AAAA,MAAzFC,KAAyF,QAAzFA,KAAyF;AAAA,MAAlFC,WAAkF,QAAlFA,WAAkF;AAAA,MAArEC,aAAqE,QAArEA,aAAqE;AAAA,MAAtDC,WAAsD,QAAtDA,WAAsD;AAAA,MAAzCC,IAAyC,QAAzCA,IAAyC;AAAA,MAAnCC,IAAmC,QAAnCA,IAAmC;AAAA,MAA7BC,QAA6B,QAA7BA,QAA6B;AAAA,MAAhBC,KAAgB;;AAC1H,MAAIC,aAAa,GAAG,YAApB;;AACA,MAAIJ,IAAI,KAAK,SAAb,EAAwB;AACpBI,IAAAA,aAAa,WAASJ,IAAtB;AACH;;AAED,MAAIC,IAAI,KAAK,QAAb,EAAuB;AACnBG,IAAAA,aAAa,WAASH,IAAtB;AACH;;AAED,MAAMI,QAAQ,gBAAGC,wCAAC,gBAAD,QACZJ,QADY,CAAjB;AAIA,sBACII;AAAM,IAAA,SAAS,EAAEC,8BAAU,CAACH,aAAD,EAAgBT,SAAhB,CAA3B;AAAuD,IAAA,QAAQ,EAAE,kBAACa,CAAD,EAAO;AACpEA,MAAAA,CAAC,CAACC,cAAF;AACAD,MAAAA,CAAC,CAACE,eAAF;AACH;AAHD,kBAIIJ,wCAAC,YAAD;AAAc,IAAA,KAAK,EAAE;AAACL,MAAAA,IAAI,EAAJA;AAAD;AAArB,kBACIK,wCAACK,6BAAD,eAAeR,KAAf;AAAsB,IAAA,GAAG,EAAET;AAA3B,MACKE,KAAK,gBAAGU,wCAAC,SAAD;AAAW,IAAA,KAAK,EAAEV;AAAlB,IAAH,GAAgC,IAD1C,EAEKE,aAAa,gBAAGQ,wCAAC,aAAD;AAAe,IAAA,WAAW,EAAEP;AAA5B,IAAH,GAAgD,IAFlE,EAGKF,WAAW,gBAAGS,wCAAC,WAAD,QACVD,QADU,CAAH,GAEKA,QALrB,CADJ,CAJJ,CADJ;AAgBH,CA9BsB;AAgCvBb,IAAI,CAACoB,YAAL,GAAoB;AAChBZ,EAAAA,IAAI,EAAE,SADU;AAEhBC,EAAAA,IAAI,EAAE,QAFU;AAGhBH,EAAAA,aAAa,EAAE,IAHC;AAIhBD,EAAAA,WAAW,EAAE,KAJG;AAKhBE,EAAAA,WAAW,EAAE;AACTc,IAAAA,KAAK,EAAE;AADE;AALG,CAApB;AAUArB,IAAI,CAACsB,SAAL,GAAiB;AACbnB,EAAAA,SAAS,EAAEoB,6BAAS,CAACC,MADR;AAEbhB,EAAAA,IAAI,EAAEe,6BAAS,CAACE,KAAV,CAAgB,CAAC,QAAD,EAAW,SAAX,EAAsB,OAAtB,CAAhB,CAFO;AAGbhB,EAAAA,IAAI,EAAEc,6BAAS,CAACE,KAAV,CAAgB,CAAC,OAAD,EAAU,QAAV,EAAoB,OAApB,CAAhB,CAHO;AAIbpB,EAAAA,WAAW,EAAEkB,6BAAS,CAACG,IAJV;AAKbpB,EAAAA,aAAa,EAAEiB,6BAAS,CAACG,IALZ;AAMbnB,EAAAA,WAAW,EAAEgB,6BAAS,CAACI,KAAV,CAAgB;AACzBN,IAAAA,KAAK,EAAEE,6BAAS,CAACE,KAAV,CAAgB,CAAC,OAAD,EAAU,QAAV,EAAoB,KAApB,EAA2B,SAA3B,CAAhB,CADkB;AAEzBG,IAAAA,QAAQ,EAAEL,6BAAS,CAACE,KAAV,CAAgB,CAAC,MAAD,EAAS,QAAT,CAAhB,CAFe;AAGzBI,IAAAA,MAAM,EAAEN,6BAAS,CAACE,KAAV,CAAgB,CAAC,OAAD,EAAU,QAAV,EAAoB,KAApB,EAA2B,SAA3B,CAAhB;AAHiB,GAAhB;AANA,CAAjB;;AClDO,IAAMK,YAAY,GAAG;AACxBC,EAAAA,KAAK,EAAE,EADiB;AAExBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,MAAM,EAAE;AACJC,MAAAA,eAAe,EAAE,UADb;AAEJC,MAAAA,MAAM,EAAE,gDAFJ;AAGJC,MAAAA,iBAAiB,EAAE,2BAACC,QAAD,EAAc;AAC7B,YAAMC,UAAU,GAAGC,uBAAG,CAACF,QAAD,EAAW,uBAAX,CAAtB;AACA,YAAMG,QAAQ,GAAGD,uBAAG,CAACF,QAAD,EAAW,qBAAX,CAApB;AACA,eAAO;AACHI,UAAAA,IAAI,EAAEJ,QAAQ,CAACI,IADZ;AAEHC,UAAAA,GAAG,EAAEL,QAAQ,CAACK,GAFX;AAGHC,UAAAA,OAAO,EAAEL,UAAU,IAAIE,QAAQ,GAAG,MAAIV,YAAY,CAACE,KAAb,CAAmBC,MAAnB,CAA0BC,eAA9B,SAAmDU,kBAAkB,CAACJ,QAAD,CAAxE,GAAqF,EAAjG;AAHhB,SAAP;AAKH;AAXG,KADL;AAcHK,IAAAA,MAAM,EAAE;AACJT,MAAAA,iBAAiB,EAAE,2BAACC,QAAD,EAAc;AAC7B,eAAO;AACHI,UAAAA,IAAI,EAAEJ,QAAQ,CAACI,IADZ;AAEHE,UAAAA,OAAO,EAAEN,QAAQ,CAACM,OAFf;AAGHD,UAAAA,GAAG,EAAEL,QAAQ,CAACK;AAHX,SAAP;AAKH,OAPG;AAQJP,MAAAA,MAAM,EAAE;AARJ;AAdL;AAFiB,CAArB;AA6BP,cAAe,UAACxB,KAAD,EAAW;AACtBmC,EAAAA,yBAAK,CAAChB,YAAD,EAAenB,KAAf,CAAL;AACAoC,EAAAA,gBAAW,CAACjB,YAAY,CAACC,KAAd,CAAX;AACH,CAHD;;ACtBA,IAAOiB,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;AACA,IAAME,YAAY,GAAGpB,YAAY,CAACE,KAAb,CAAmBa,MAAxC;;AAGA,IAAMM,OAAO,GAAG,SAAVA,OAAU,OAeO;AAAA,MAdFhD,SAcE,QAdFA,SAcE;AAAA,MAbKiD,QAaL,QAbFC,KAaE;AAAA,MAZQC,WAYR,QAZFC,QAYE;AAAA,MAXYC,cAWZ,QAXFC,YAWE;AAAA,MAVFrB,iBAUE,QAVFA,iBAUE;AAAA,MATFD,MASE,QATFA,MASE;AAAA,MARFuB,SAQE,QARFA,SAQE;AAAA,MAPQjD,IAOR,QAPFkD,QAOE;AAAA,MANFjD,QAME,QANFA,QAME;AAAA,MALFkD,OAKE,QALFA,OAKE;AAAA,MAJFC,UAIE,QAJFA,UAIE;AAAA,MAHMC,YAGN,QAHFC,MAGE;AAAA,MAFFC,UAEE,QAFFA,UAEE;AAAA,MADFC,aACE,QADFA,aACE;;AACnB,kBAA8BC,cAAQ,CAAC,KAAD,CAAtC;AAAA,MAAOC,OAAP;AAAA,MAAgBC,UAAhB;;AACA,mBAAoCF,cAAQ,CAACd,QAAD,CAA5C;AAAA,MAAOiB,YAAP;AAAA,MAAqBC,WAArB;;AACA,MAAMC,SAAS,GAAGC,YAAM,EAAxB;AAEA,MAAMC,aAAa,GAAG;AAACC,IAAAA,IAAI,EAAE,KAAP;AAAcC,IAAAA,KAAK,EAAE,GAArB;AAA0BC,IAAAA,MAAM,EAAE,GAAlC;AAAuCC,IAAAA,YAAY,EAAE,CAArD;AAAwDC,IAAAA,IAAI,EAAE,IAA9D;AAAoEC,IAAAA,KAAK,EAAE;AAA3E,GAAtB;AACA,MAAMhB,MAAM,GAAGjB,yBAAK,CAAC,EAAD,EAAK2B,aAAL,EAAoB;AAACC,IAAAA,IAAI,EAAEb;AAAP,GAApB,EAAwCC,YAAxC,CAApB;AAEAkB,EAAAA,eAAS,CAAC,YAAM;AACZV,IAAAA,WAAW,CAAClB,QAAD,CAAX;AACH,GAFQ,EAEN,CAACA,QAAD,CAFM,CAAT;AAIA;;AACA,MAAM6B,aAAa,GAAG,SAAhBA,aAAgB,CAACC,OAAD,EAAa;AAC/B,QAAIC,GAAG,GAAGD,OAAO,CAACE,KAAR,CAAc,GAAd,CAAV,CAD+B;;AAG/B,QAAIC,IAAI,GAAGF,GAAG,CAAC,CAAD,CAAH,CAAOG,SAAP,CAAiB,CAAjB,EAAoBH,GAAG,CAAC,CAAD,CAAH,CAAOI,MAAP,GAAgB,CAApC,CAAX;;AACA,QAAIC,IAAI,GAAGL,GAAG,CAAC,CAAD,CAAH,CAAOM,KAAP,CAAa,SAAb,EAAwB,CAAxB,CAAX;AAAA,QAAuCC,IAAI,GAAGC,IAAI,CAACN,IAAD,CAAlD;AAAA,QAA0DO,CAAC,GAAGF,IAAI,CAACH,MAAnE;AAAA,QAA2EM,KAAK,GAAG,IAAIC,UAAJ,CAAeF,CAAf,CAAnF;;AACA,WAAOA,CAAC,EAAR,EAAY;AACRC,MAAAA,KAAK,CAACD,CAAD,CAAL,GAAWF,IAAI,CAACK,UAAL,CAAgBH,CAAhB,CAAX;AACH;;AACD,WAAO,IAAII,IAAJ,CAAS,CAACH,KAAD,CAAT,EAAkB;AACrBrF,MAAAA,IAAI,EAAEgF;AADe,KAAlB,CAAP;AAGH,GAXD;;AAcA,MAAMS,eAAe,GAAG,SAAlBA,eAAkB,QAAY;AAAA,QAAVC,IAAU,SAAVA,IAAU;;AAChC,qBAA4BhC,cAAQ,CAAC,CAAD,CAApC;AAAA,QAAOiC,MAAP;AAAA,QAAeC,SAAf;;AACA,qBAA0BlC,cAAQ,CAAC,YAAM;AACrC,UAAIH,MAAM,CAACY,KAAP,KAAiBZ,MAAM,CAACa,MAA5B,EAAoC;AAChC,eAAO,CAAP;AACH;;AACD,aAAO,IAAP;AACH,KALiC,CAAlC;AAAA,QAAOyB,KAAP;AAAA,QAAcC,QAAd;;AAOA,QAAM/C,QAAQ,GAAG,SAAXA,QAAW,CAACgD,CAAD,EAAO;AACpBH,MAAAA,SAAS,CAACG,CAAD,CAAT;AACH,KAFD;;AAGA,QAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACD,CAAD,EAAO;AACzBD,MAAAA,QAAQ,CAACC,CAAD,CAAR;AACH,KAFD;;AAGA,wBAAQzF;AAAK,MAAA,KAAK,EAAE;AAChB,iBAASiD,MAAM,CAACY,KADA;AACO,kBAAU;AADjB;AAAZ,oBAGJ7D,wCAAC2F,gCAAD;AACI,MAAA,GAAG,EAAElC,SADT;AAEI,MAAA,KAAK,EAAE2B,IAFX;AAGI,MAAA,KAAK,EAAEnC,MAAM,CAACY,KAHlB;AAII,MAAA,MAAM,EAAEZ,MAAM,CAACa,MAJnB;AAKI,MAAA,MAAM,EAAE,CALZ;AAMI,MAAA,YAAY,EAAEb,MAAM,CAACc,YANzB;AAOI,MAAA,KAAK,EAAE,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,EAAe,CAAf,CAPX;AAAA;AAQI,MAAA,KAAK,EAAEwB,KARX;AASI,MAAA,MAAM,EAAEF;AATZ,MAHI,eAcJrF,wCAAC4F,QAAD;AAAK,MAAA,MAAM,EAAE;AAAb,oBACI5F,wCAAC6F,QAAD;AAAK,MAAA,IAAI,EAAE;AAAX,oBAAc7F,qEAAd,CADJ,eAEIA,wCAAC6F,QAAD;AAAK,MAAA,IAAI,EAAE;AAAX,oBACI7F,wCAAC8F,WAAD;AAAQ,MAAA,cAAc,EAAE,KAAxB;AAA+B,MAAA,YAAY,EAAET,MAA7C;AAAqD,MAAA,GAAG,EAAE,CAAC,GAA3D;AAAgE,MAAA,GAAG,EAAE,GAArE;AAA0E,MAAA,QAAQ,EAAE5C;AAApF,MADJ,CAFJ,CAdI,eAoBJzC,wCAAC4F,QAAD;AAAK,MAAA,MAAM,EAAE;AAAb,oBACI5F,wCAAC6F,QAAD;AAAK,MAAA,IAAI,EAAE;AAAX,oBAAc7F,qEAAd,CADJ,eAEIA,wCAAC6F,QAAD;AAAK,MAAA,IAAI,EAAE;AAAX,oBACI7F,wCAAC8F,WAAD;AAAQ,MAAA,cAAc,EAAE,KAAxB;AAA+B,MAAA,YAAY,EAAEP,KAA7C;AAAoD,MAAA,IAAI,EAAE,IAA1D;AAAgE,MAAA,GAAG,EAAE,GAArE;AAA0E,MAAA,GAAG,EAAE,CAA/E;AACQ,MAAA,QAAQ,EAAEG;AADlB,MADJ,CAFJ,CApBI,CAAR;AA4BH,GA3CD;;AA6CA,MAAMK,YAAY,gBAAI/F,qDACjBqD,OAAO,gBAAGrD,wCAACgG,qBAAD,OAAH,gBAAwBhG,wCAACiG,kBAAD,OADd,EAEjBrG,QAFiB,CAAtB;;AAKA,MAAM+C,YAAY,YAAZA,YAAY,CAAUyC,IAAV;AAAA,QAAmB;AACjC,6BAAO,IAAIc,OAAJ,CAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;AACpC,YAAMC,UAAU,GAAGzD,SAAS,CAAC0D,OAAV,CAAkBlB,IAAI,CAAC1F,IAAvB,IAA+B,CAAC,CAAnD;;AACA,YAAI,CAAC2G,UAAL,EAAiB;AACbvD,UAAAA,OAAO,wBAAOF,SAAS,CAAC2D,GAAV,CAAc,UAACC,GAAD;AAAA,mBAASA,GAAG,CAACC,OAAJ,CAAY,QAAZ,EAAsB,EAAtB,CAAT;AAAA,WAAd,EAAkDC,IAAlD,CAAuD,GAAvD,CAAP,gCAA2E,WAA3E,EAAwF;AAC3FhH,YAAAA,IAAI,EAAEkD,SADqF;AAC1E+D,YAAAA,QAAQ,EAAEvB,IAAI,CAAC1F;AAD2D,WAAxF,CAAP;AAGA0G,UAAAA,MAAM;AACN,iBAAO,KAAP;AACH;;AACD,YAAMQ,IAAI,GAAGxB,IAAI,CAACzF,IAAL,GAAY,IAAZ,GAAmB,IAAnB,GAA0BA,IAAvC;;AACA,YAAI,CAACiH,IAAL,EAAW;AACP9D,UAAAA,OAAO,0CAAUnD,IAAV,UAAqB,WAArB,EAAkC;AAACA,YAAAA,IAAI,EAAJA,IAAD;AAAOkD,YAAAA,QAAQ,EAAEuC,IAAI,CAACzF;AAAtB,WAAlC,CAAP;AACAyG,UAAAA,MAAM;AACN,iBAAO,KAAP;AACH;AAED;AACA;;;AACA,YAAInD,MAAM,CAACW,IAAX,EAAiB;AACbiD,UAAAA,UAAK,CAACC,OAAN,CAAc;AACV7C,YAAAA,KAAK,EAAEhB,MAAM,CAACgB,KADJ;AAEV8C,YAAAA,IAAI,EAAE,EAFI;AAGVlD,YAAAA,KAAK,EAAEZ,MAAM,CAACY,KAAP,GAAe,CAHZ;AAIVmD,YAAAA,OAAO,eAAEhH,wCAAC,eAAD;AAAiB,cAAA,IAAI,EAAEoF;AAAvB,cAJC;AAKV6B,YAAAA,MAAM,EAAEhE,MAAM,CAACe,IALL;AAMVkD,YAAAA,IAAI,EAAE,cAACC,KAAD,EAAW;AACb,kBAAIC,MAAM,GAAG3D,SAAS,CAAC4D,OAAV,CAAkBC,QAAlB,GAA6BC,SAA7B,EAAb;AACA/D,cAAAA,WAAW,CAAC4D,MAAD,CAAX;AACA,kBAAII,IAAI,GAAGrD,aAAa,CAACiD,MAAD,CAAxB;AACA,kBAAMK,KAAK,GAAG,IAAIC,MAAM,CAACC,IAAX,CAAgB,CAACH,IAAD,CAAhB,EAAwBpC,IAAI,CAACwC,IAA7B,EAAmC;AAAClI,gBAAAA,IAAI,EAAE0F,IAAI,CAAC1F;AAAZ,eAAnC,CAAd;AACAgD,cAAAA,cAAc,IAAIA,cAAc,CAAC+E,KAAD,CAAhC;AACAtB,cAAAA,OAAO,CAACsB,KAAD,CAAP;AACAN,cAAAA,KAAK;AACR;AAdS,WAAd;AAgBH,SAjBD,MAiBO;AACHzE,UAAAA,cAAc,IAAIA,cAAc,CAAC0C,IAAD,CAAhC;AACAe,UAAAA,OAAO,CAACf,IAAD,CAAP;AACH;AACJ,OAvCM,CAAP;AAyCH,KA1CiB;AAAA;AAAA;AAAA,GAAlB;;AA4CA,MAAM3C,QAAQ,GAAG,SAAXA,QAAW,CAACoF,IAAD,EAAU;AACvB,QAAIA,IAAI,CAACzC,IAAL,CAAU0C,MAAV,KAAqB,WAAzB,EAAsC;AAClCxE,MAAAA,UAAU,CAAC,IAAD,CAAV;AACA;AACH;;AACD,QAAIuE,IAAI,CAACzC,IAAL,CAAU0C,MAAV,KAAqB,MAAzB,EAAiC;AAC7BxE,MAAAA,UAAU,CAAC,KAAD,CAAV;AACA,UAAM/B,QAAQ,GAAG,CAACD,iBAAiB,IAAIc,YAAY,CAACd,iBAAnC,EAAsDuG,IAAI,CAACzC,IAAL,CAAU7D,QAAhE,CAAjB;;AACA,UAAIA,QAAQ,CAACI,IAAT,KAAkB,GAAtB,EAA2B;AACvBa,QAAAA,WAAW,CAACjB,QAAQ,CAACM,OAAV,CAAX;AACH,OAFD,MAEO;AACHiB,QAAAA,OAAO,CAACvB,QAAQ,CAACK,GAAV,EAAe,UAAf,EAA2BL,QAA3B,CAAP;AACH;AACJ;AACJ,GAdD;;AAgBA,sBAAQvB,+FACJA,wCAAC+H,WAAD;AAAQ,IAAA,SAAS,EAAE9H,8BAAU,CAACZ,SAAD,EAAY,mBAAZ,CAA7B;AAA+D,IAAA,QAAQ,EAAC,cAAxE;AACQ,IAAA,cAAc,EAAE,KADxB;AAEQ,IAAA,MAAM,EAAEgC,MAAM,IAAIe,YAAY,CAACf,MAFvC;AAGQ,IAAA,YAAY,EAAEsB,YAHtB;AAGoC,IAAA,QAAQ,EAAEF;AAH9C,KAIKS,UAAU,IAAIK,YAAd,GAA6BJ,aAAa,GAAGA,aAAa,CAACI,YAAD,CAAhB,gBACvCvD;AAAK,IAAA,SAAS,EAAC;AAAf,kBAAyBA;AAAK,IAAA,GAAG,EAAEuD,YAAV;AAAwB,IAAA,GAAG,EAAC;AAA5B,IAAzB,CADH,GAC2EwC,YALhF,CADI,CAAR;AASH,CAjKD;;AAmKA1D,OAAO,CAAC/B,YAAR,GAAuB;AACnBsC,EAAAA,SAAS,EAAE,CAAC,YAAD,EAAe,WAAf,CADQ;AAEnBC,EAAAA,QAAQ,EAAE,CAFS;AAEN;AACbjD,EAAAA,QAAQ,eAAEI;AAAK,IAAA,SAAS,EAAC;AAAf,gCAHS;AAInB8C,EAAAA,OAAO,EAAE,iBAAC+E,IAAD;AAAA,WAAUG,YAAO,CAACC,KAAR,CAAcJ,IAAd,CAAV;AAAA,GAJU;AAKnB3E,EAAAA,UAAU,EAAE,IALO;AAMnBC,EAAAA,aAAa,EAAE,IANI;AAOnBJ,EAAAA,UAAU,EAAE;AAPO,CAAvB;;AAUA,IAAMmF,WAAW,GAAG,SAAdA,WAAc,CAACrI,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAAC9F,OAAD,CAAb;AACH,CAHD;;AAKA6F,WAAW,CAAChH,KAAZ,GAAoBmB,OAApB;;AC9LA,IAAOH,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;;AAEA,IAAMkG,UAAQ,GAAG,SAAXA,QAAW,CAACvI,KAAD,EAAW;AACxB,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACE,aAAD,CAAb;AACH,CAHD;;ACFA,IAAOnG,aAAP,GAAyCC,qBAAzC,CAAOD,WAAP;AAAA,IAAoBoG,mBAApB,GAAyCnG,qBAAzC,CAAoBmG,iBAApB;AACA,IAAOC,aAAP,GAAsBC,mBAAtB,CAAOD,WAAP;AAEA,IAAME,YAAY,GAAGF,aAAW,CAACG,aAAD,CAAhC;;AAEA,IAAMC,UAAQ,GAAG,SAAXA,QAAW,CAAC9I,KAAD,EAAW;AACxB,MAAM+I,YAAY,GAAGN,mBAAiB,CAACzI,KAAD,CAAtC;AACA,MAAMsI,MAAM,GAAGjG,aAAW,CAAC0G,YAAD,CAA1B;AACA,SAAOT,MAAM,CAACM,YAAD,CAAb;AACH,CAJD;;ACLA,IAAOvG,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;AAEA,IAAM2G,cAAc,GAAGF,aAAQ,CAACG,KAAhC;;AAEA,IAAMC,eAAa,GAAG,SAAhBA,aAAgB,CAAClJ,KAAD,EAAW;AAC7B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACU,cAAD,CAAb;AACH,CAHD;;AAKAE,eAAa,CAACJ,QAAd,GAAyBA,aAAzB;;ACTA,IAAOzG,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;AAEA,IAAO8G,WAAP,GAA+CC,eAA/C,CAAOD,WAAP;AAAA,IAAoBE,aAApB,GAA+CD,eAA/C,CAAoBC,WAApB;AAAA,IAAiCC,UAAjC,GAA+CF,eAA/C,CAAiCE,UAAjC;;AAEA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACvJ,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACc,eAAD,CAAb;AACH,CAHD;;AAKA,IAAMI,YAAY,GAAG,SAAfA,YAAe,CAACxJ,KAAD,EAAW;AAC5B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACa,WAAD,CAAb;AACH,CAHD;;AAKA,IAAMM,cAAY,GAAG,SAAfA,YAAe,CAACzJ,KAAD,EAAW;AAC5B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B,CAD4B;AAG5B;AACA;;AACA,SAAOsI,MAAM,CAACe,aAAD,CAAb;AACH,CAND;;AAQA,IAAMK,WAAW,GAAG,SAAdA,WAAc,CAAC1J,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACgB,UAAD,CAAb;AACH,CAHD;;AAKAC,WAAW,CAACJ,WAAZ,GAA0BK,YAA1B;AACAD,WAAW,CAACF,WAAZ,GAA0BI,cAA1B;AACAF,WAAW,CAACD,UAAZ,GAAyBI,WAAzB;;ACzBA,IAAOrH,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;;AAEA,IAAMsH,WAAW,GAAG,SAAdA,WAAc,CAAC3J,KAAD,EAAW;AAC7B;AACA,yBAAyB4J,mCAAe,CAAC5J,KAAD,CAAxC;AAAA,MAAO6J,IAAP;AAAA,MAAajH,QAAb;;AACA,MAAMkH,KAAK,GAAGjG,YAAM,EAApB;AACA,MAAMkG,OAAO,GAAGC,aAAO,CAAC,YAAM;AAC5B;AACA,QAAMC,CAAC,GAAGrI,uBAAG,CAACiI,IAAD,EAAO,CAAP,EAAU,EAAV,CAAb;AACA,QAAMK,CAAC,GAAGtI,uBAAG,CAACiI,IAAD,EAAO,CAAP,EAAU,EAAV,CAAb;AACA,QAAMM,CAAC,GAAGvI,uBAAG,CAAC5B,KAAD,EAAQ,CAAC,aAAD,CAAR,EAAyB,CAAC,MAAD,EAAS,MAAT,CAAzB,CAAb;AACA,WAAO;AACLoK,MAAAA,KAAK,EAAEH,CAAC,GAAGI,0BAAM,CAACJ,CAAD,CAAT,GAAe,EADlB;AAELK,MAAAA,GAAG,EAAEJ,CAAC,KAAK,IAAN,GAAaG,0BAAM,CAAC,YAAD,CAAnB,GAAqCH,CAAC,GAAGG,0BAAM,CAACH,CAAD,CAAT,GAAe,EAFrD;AAGLK,MAAAA,MAAM,EAAEL,CAAC,KAAK,IAHT;AAILM,MAAAA,WAAW,EAAEL;AAJR,KAAP;AAMD,GAXsB,EAWpB,CAACN,IAAD,CAXoB,CAAvB;;AAaA,MAAMY,WAAW,GAAG,SAAdA,WAAc,CAAC7E,CAAD,EAAO;AACzB;AACA,QAAI,CAACmE,OAAO,CAACQ,MAAT,IAAmBR,OAAO,CAACO,GAA3B,IAAkC1E,CAAlC,IAAuCmE,OAAO,CAACO,GAAR,CAAYI,QAAZ,CAAqB9E,CAArB,CAA3C,EAAoE;AAClEhD,MAAAA,QAAQ,CAAC,CAACmH,OAAO,CAACO,GAAT,EAAc1E,CAAd,CAAD,CAAR;AACA;AACD;;AACDhD,IAAAA,QAAQ,CAAC,CAACgD,CAAC,IAAI,EAAN,EAAUmE,OAAO,CAACQ,MAAR,GAAiB,IAAjB,GAAwBR,OAAO,CAACO,GAA1C,CAAD,CAAR;AACD,GAPD;;AASA,MAAMK,SAAS,GAAG,SAAZA,SAAY,CAAC/E,CAAD,EAAO;AACvB,QAAImE,OAAO,CAACK,KAAR,IAAiBxE,CAAjB,IAAsBA,CAAC,CAAC8E,QAAF,CAAWX,OAAO,CAACK,KAAnB,CAA1B,EAAqD;AACnDxH,MAAAA,QAAQ,CAAC,CAACgD,CAAD,EAAImE,OAAO,CAACK,KAAZ,CAAD,CAAR;AACA;AACD;;AACDxH,IAAAA,QAAQ,CAAC,CAACmH,OAAO,CAACK,KAAT,EAAgBxE,CAAC,IAAI,EAArB,CAAD,CAAR;AACD,GAND;;AAQA,MAAMgF,IAAI,GAAG,SAAPA,IAAO,GAAM;AACjB,wBACIzK,wCAAC0K,WAAD;AAAQ,MAAA,OAAO,EAAE,iBAACjF,CAAD,EAAO;AACtBkE,QAAAA,KAAK,CAACtC,OAAN,CAAcsD,IAAd;AACAlI,QAAAA,QAAQ,CAAC,CAACmH,OAAO,CAACK,KAAR,IAAiB,EAAlB,EAAsB,IAAtB,CAAD,CAAR;AACD;AAHD,sBADJ;AAQD,GATD;;AAUA,sBACIjK;AAAK,IAAA,KAAK,EAAE;AAAC4K,MAAAA,OAAO,EAAE;AAAV;AAAZ,kBACE5K,wCAACiJ,eAAD;AAAiB4B,IAAAA,SAAS,EAAE;AAA5B,KAAsChL,KAAtC;AAA6CwK,IAAAA,WAAW,EAAET,OAAO,CAACS,WAAR,CAAoB,CAApB,CAA1D;AAAkF9H,IAAAA,KAAK,EAAEqH,OAAO,CAACK;AAAjG;AACY,IAAA,QAAQ,EAAEK;AADtB,KADF,eAGEtK;AAAK,IAAA,SAAS,EAAE;AAAhB,kBACEA;AAAK,IAAA,OAAO,EAAC,eAAb;AAA6B,IAAA,SAAS,EAAC,OAAvC;AAA+C,iBAAU,YAAzD;AAAsE,IAAA,KAAK,EAAC,KAA5E;AAAkF,IAAA,MAAM,EAAC,KAAzF;AACK,IAAA,IAAI,EAAC,cADV;AACyB,mBAAY;AADrC,kBAEEA;AACI,IAAA,CAAC,EAAC;AADN,IAFF,CADF,CAHF,eAUEA;AAAK,IAAA,SAAS,EAAE4J,OAAO,CAACQ,MAAR,GAAiB,yCAAjB,GAA6D;AAA7E,kBACEpK;AAAM,IAAA,SAAS,EAAE4J,OAAO,CAACQ,MAAR,GAAiB,oBAAjB,GAAwC;AAAzD,oBADF,eAEEpK,wCAACiJ,eAAD;AACE4B,IAAAA,SAAS,EAAE;AADb,KAEKhL,KAFL;AAGEwK,IAAAA,WAAW,EAAET,OAAO,CAACQ,MAAR,GAAiB,EAAjB,GAAsBR,OAAO,CAACS,WAAR,CAAoB,CAApB,CAHrC;AAIE9H,IAAAA,KAAK,EAAEqH,OAAO,CAACO;AAJjB;AAKG,IAAA,GAAG,EAAER,KALR;AAMY,IAAA,QAAQ,EAAEa,SANtB;AAMiC,IAAA,iBAAiB,EAAEC;AANpD,KAFF,CAVF,CADJ;AAuBD,CAnED;;AAsEA,IAAMK,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACjL,KAAD,EAAW;AAClC,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACqB,WAAD,CAAb;AACD,CAHD;;AAKAsB,gBAAgB,CAAC5J,KAAjB,GAAyBsI,WAAzB;;ACjFA,IAAOuB,cAAP,GAAuB5I,qBAAvB,CAAO4I,YAAP;;AAEA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACnL,KAAD,EAAW;AAC5B,MAAMsI,MAAM,GAAG4C,cAAY,CAAClL,KAAD,CAA3B;AACA,SAAOsI,MAAM,CAAC8C,UAAD,CAAb;AACD,CAHD;;AAKAD,UAAU,CAAC1K,YAAX,GAA0B;AACxB4K,EAAAA,YAAY,EAAE;AADU,CAA1B;;ACPA,IAAOH,cAAP,GAAuB5I,qBAAvB,CAAO4I,YAAP;;AAEA,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACtL,KAAD,EAAW;AAClC,MAAMsI,MAAM,GAAG4C,cAAY,CAAClL,KAAD,CAA3B;AACA,SAAOsI,MAAM,CAACiD,gBAAD,CAAb;AACD,CAHD;;AAKAD,gBAAgB,CAAC7K,YAAjB,GAAgC;AAC9B4K,EAAAA,YAAY,EAAE;AADgB,CAAhC;;;ACNA,IAAOhJ,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;;AAEA,IAAMmJ,YAAU,GAAG,SAAbA,UAAa,OAAwB;AAAA,MAAtB5I,QAAsB,QAAtBA,QAAsB;AAAA,MAAT5C,KAAS;;AACvC,MAAMyL,OAAO,GAAGC,iBAAW,CAAC,UAACrL,CAAD,EAAO;AAC/BuC,IAAAA,QAAQ,IAAIA,QAAQ,CAACvC,CAAC,CAACsL,MAAF,CAASjJ,KAAV,CAApB;AACH,GAF0B,EAExB,CAACE,QAAD,CAFwB,CAA3B;AAGA,sBAAOzC,wCAACyL,UAAD,CAAO,KAAP,eAAiB5L,KAAjB;AAAwB,IAAA,QAAQ,EAAEyL;AAAlC,KAAP;AACH,CALD;;AAOA,IAAMI,WAAW,GAAG,SAAdA,WAAc,CAAC7L,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACkD,YAAD,CAAb;AACH,CAHD;;AAKAK,WAAW,CAACD,KAAZ,GAAoBA,UAApB;;ACfA,IAAOvJ,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;;AAEA,IAAMyJ,OAAO,GAAG,SAAVA,OAAU,CAAC9L,KAAD,EAAW;AACvB,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACyD,WAAD,CAAb;AACH,CAHD;;AAKAD,OAAO,CAACE,MAAR,GAAiBD,WAAM,CAACC,MAAxB;AACAF,OAAO,CAACG,QAAR,GAAmBF,WAAM,CAACE,QAA1B;;;ACNA,IAAO5J,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;;AAEA,IAAM6J,YAAY,GAAGC,oBAAS,CAAC,gBAA6D;AAAA,MAA3DtC,IAA2D,QAA3DA,IAA2D;AAAA,MAArDuC,OAAqD,QAArDA,OAAqD;AAAA,MAA5CC,OAA4C,QAA5CA,OAA4C;AAAA,MAAnCC,SAAmC,QAAnCA,SAAmC;AAAA,MAAxBvM,QAAwB,QAAxBA,QAAwB;AAAA,MAAXC,KAAW;;AACxF,sBAAOG,wCAAC4L,WAAD,EAAY/L,KAAZ,EAAoBD,QAAQ,CAAC;AAAC8J,IAAAA,IAAI,EAAJA,IAAD;AAAOwC,IAAAA,OAAO,EAAPA,OAAP;AAAgBC,IAAAA,SAAS,EAATA,SAAhB;AAA2BF,IAAAA,OAAO,EAAPA;AAA3B,GAAD,CAA5B,CAAP;AACH,CAF6B,CAA9B;;AAIA,IAAMG,aAAW,GAAG,SAAdA,WAAc,CAACvM,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAAC4D,YAAD,CAAb;AACH,CAHD;;AAKAK,aAAW,CAACP,MAAZ,GAAqBD,WAAM,CAACC,MAA5B;AACAO,aAAW,CAACN,QAAZ,GAAuBF,WAAM,CAACE,QAA9B;;ACdA,IAAO5J,aAAP,GAAyCC,qBAAzC,CAAOD,WAAP;AAAA,IAAoBoG,iBAApB,GAAyCnG,qBAAzC,CAAoBmG,iBAApB;AACA,IAAOC,WAAP,GAAsBC,mBAAtB,CAAOD,WAAP;AACA,IAAM8D,UAAU,GAAG9D,WAAW,CAAC+D,WAAD,CAA9B;;AAEA,IAAMC,QAAM,GAAG,SAATA,MAAS,CAAC1M,KAAD,EAAW;AACtB,MAAM+I,YAAY,GAAGN,iBAAiB,CAACzI,KAAD,CAAtC;AACA,MAAMsI,MAAM,GAAGjG,aAAW,CAAC0G,YAAD,CAA1B;AACA,SAAOT,MAAM,CAACkE,UAAD,CAAb;AACH,CAJD;;ACJA,IAAOtB,YAAP,GAAuB5I,qBAAvB,CAAO4I,YAAP;;AAEA,IAAMyB,UAAQ,GAAG,SAAXA,QAAW,CAAC3M,KAAD,EAAW;AACxB,MAAMsI,MAAM,GAAG4C,YAAY,CAAClL,KAAD,CAA3B;AACA,SAAOsI,MAAM,CAAC8C,UAAK,CAACuB,QAAP,CAAb;AACH,CAHD;;ACFA,IAAOtK,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;AAEA,IAAOgH,WAAP,GAAsBuD,eAAtB,CAAOvD,WAAP;;AAEA,IAAMwD,WAAW,GAAG,SAAdA,WAAc,CAAC7M,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACsE,eAAD,CAAb;AACH,CAHD;;AAKA,IAAMnD,YAAY,GAAG,SAAfA,YAAe,CAACzJ,KAAD,EAAW;AAC5B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACe,WAAD,CAAb;AACH,CAHD;;AAKAwD,WAAW,CAACxD,WAAZ,GAA0BI,YAA1B;;ACdA,IAAOpH,aAAP,GAAsBC,qBAAtB,CAAOD,WAAP;;AAEA,IAAMyK,WAAW,GAAG,SAAdA,WAAc,CAAC9M,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,aAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAACyE,eAAD,CAAb;AACH,CAHD;;AAKAD,WAAW,CAACE,QAAZ,GAAuBD,eAAU,CAACC,QAAlC;;;ACCA,IAAO3K,WAAP,GAAsBC,qBAAtB,CAAOD,WAAP;AAEA,IAAO4K,OAAP,GAAkB/E,WAAlB,CAAO+E,OAAP;AAEA,IAAMC,YAAY,GAAG/L,YAAY,CAACE,KAAb,CAAmBC,MAAxC;;AAEA,IAAM6L,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,IAAD,EAAO7L,eAAP,EAAwC;AAAA,MAAjCA,eAAiC;AAAjCA,IAAAA,eAAiC,GAAf,UAAe;AAAA;;AAC7D,MAAM8L,QAAQ,GAAGD,IAAI,CAAC3I,KAAL,CAAW,GAAX,CAAjB;;AACA,MAAI4I,QAAQ,CAAC,CAAD,CAAZ,EAAiB;AACb,QAAMC,KAAK,GAAG,EAAd;AACAD,IAAAA,QAAQ,CAAC,CAAD,CAAR,CAAY5I,KAAZ,CAAkB,GAAlB,EAAuB8I,OAAvB,CAA+B,UAAC5G,GAAD,EAAS;AACpC,uBAAqBA,GAAG,CAAClC,KAAJ,CAAU,GAAV,CAArB;AAAA,UAAO+I,GAAP;AAAA,UAAY9K,KAAZ;;AACA4K,MAAAA,KAAK,CAACE,GAAD,CAAL,GAAa9K,KAAb;AACH,KAHD;;AAIA,QAAI4K,KAAK,CAAC/L,eAAD,CAAT,EAA4B;AACxB,aAAOkM,kBAAkB,CAACH,KAAK,CAAC/L,eAAD,CAAN,CAAzB;AACH;AACJ;;AACD,SAAO6L,IAAP;AACH,CAbD;;AAeA,IAAMM,WAAW,GAAG,SAAdA,WAAc,CAAChL,KAAD,EAAQnB,eAAR,EAA4B;AAC5C,MAAI,CAACmB,KAAL,EAAY;AACR,WAAO,EAAP;AACH;;AACD,SAAOA,KAAK,CAACgE,GAAN,CAAU,UAACiH,IAAD,EAAU;AACvB,WAAO;AACHC,MAAAA,GAAG,EAAEC,4BAAQ,EADV;AAEH9F,MAAAA,IAAI,EAAEoF,gBAAgB,CAACQ,IAAI,CAACG,MAAL,CAAYH,IAAI,CAACI,WAAL,CAAiB,GAAjB,IAAwB,CAApC,CAAD,EAAyCxM,eAAzC,CAFnB;AAGH0G,MAAAA,MAAM,EAAE,MAHL;AAIHvG,MAAAA,QAAQ,EAAE;AAACI,QAAAA,IAAI,EAAE,GAAP;AAAYE,QAAAA,OAAO,EAAE2L;AAArB;AAJP,KAAP;AAMH,GAPM,CAAP;AAQH,CAZD;;AAcA,IAAMK,WAAW,GAAG,SAAdA,WAAc,CAACtL,KAAD,EAAW;AAC3B,SAAO,CAACA,KAAK,IAAI,EAAV,EAAcuL,KAAd,CAAoB,CAApB,EAAuBC,MAAvB,CAA8B;AAAA,QAAEjG,MAAF,QAAEA,MAAF;AAAA,WAAcA,MAAM,KAAK,MAAzB;AAAA,GAA9B,EAA+DvB,GAA/D,CAAmE;AAAA,QAAEhF,QAAF,SAAEA,QAAF;AAAA,WAAgBA,QAAQ,CAACM,OAAzB;AAAA,GAAnE,CAAP;AACH,CAFD;;AAIA,IAAMmM,OAAO,GAAG,SAAVA,OAAU,QAA2K;AAAA,MAAzK3M,MAAyK,SAAzKA,MAAyK;AAAA,MAAjKkB,KAAiK,SAAjKA,KAAiK;AAAA,MAA1JE,QAA0J,SAA1JA,QAA0J;AAAA,MAAhJwL,IAAgJ,SAAhJA,IAAgJ;AAAA,MAA1IrO,QAA0I,SAA1IA,QAA0I;AAAA,MAAhIwB,eAAgI,SAAhIA,eAAgI;AAAA,MAA/G8M,MAA+G,SAA/GA,MAA+G;AAAA,MAA7FvO,IAA6F,SAAvGkD,QAAuG;AAAA,MAAvFC,OAAuF,SAAvFA,OAAuF;AAAA,MAA9EqL,gBAA8E,SAA9EA,gBAA8E;AAAA,MAA5DzL,cAA4D,SAA5DA,cAA4D;AAAA,MAA5C0L,SAA4C,SAA5CA,SAA4C;AAAA,MAAjC9M,iBAAiC,SAAjCA,iBAAiC;AAAA,MAAXzB,KAAW;;AACvLuB,EAAAA,eAAe,GAAGA,eAAe,IAAI2L,YAAY,CAAC3L,eAAlD;;AACA,kBAAwBgC,cAAQ,CAAC,EAAD,CAAhC;AAAA,MAAOiL,IAAP;AAAA,MAAaC,OAAb;;AACA,MAAMC,SAAS,GAAG1E,aAAO,CAAC,YAAM;AAC5B,WAAO0D,WAAW,CAAChL,KAAK,CAACwL,MAAN,CAAa,UAACS,GAAD,EAAS;AACrC,aAAO,CAACH,IAAI,CAACI,IAAL,CAAU,UAACrJ,IAAD;AAAA,eAAU3D,uBAAG,CAAC2D,IAAD,EAAO,kBAAP,CAAH,KAAkCoJ,GAA5C;AAAA,OAAV,CAAR;AACH,KAFkB,CAAD,EAEdpN,eAFc,CAAX,CAEcsN,MAFd,CAEqBL,IAFrB,CAAP;AAGH,GAJwB,EAItB,CAACA,IAAD,EAAO9L,KAAP,EAAcnB,eAAd,CAJsB,CAAzB;;AAKA,MAAMuN,aAAa,GAAG,SAAhBA,aAAgB,CAAC9G,IAAD,EAAU;AAC5B,QAAI,CAAC,WAAD,EAAc,MAAd,EAAsB,OAAtB,EAA+B,SAA/B,EAA0CvB,OAA1C,CAAkDuB,IAAI,CAACzC,IAAL,CAAU0C,MAA5D,MAAwE,CAAC,CAA7E,EAAgF;AAC5E;AACH;;AACD,QAAID,IAAI,CAAC+G,QAAL,CAAcnK,MAAd,GAAuB2J,SAA3B,EAAsC;AAClCtL,MAAAA,OAAO,0FAAkBsL,SAAlB,EAA+B,UAA/B,EAA2CA,SAA3C,CAAP;AACA;AACH;;AACD,QAAIvG,IAAI,CAACzC,IAAL,CAAU0C,MAAV,KAAqB,MAAzB,EAAiC;AAC7BD,MAAAA,IAAI,CAACzC,IAAL,CAAU7D,QAAV,GAAqB,CAACD,iBAAiB,IAAIyL,YAAY,CAACzL,iBAAnC,EAAsDuG,IAAI,CAACzC,IAAL,CAAU7D,QAAhE,CAArB;;AACA,UAAIsG,IAAI,CAACzC,IAAL,CAAU7D,QAAV,CAAmBI,IAAnB,KAA4B,GAAhC,EAAqC;AACjCkG,QAAAA,IAAI,CAACzC,IAAL,CAAUwC,IAAV,GAAiBoF,gBAAgB,CAACnF,IAAI,CAACzC,IAAL,CAAU7D,QAAV,CAAmBM,OAAnB,CAA2B8L,MAA3B,CAAkC9F,IAAI,CAACzC,IAAL,CAAU7D,QAAV,CAAmBM,OAAnB,CAA2B+L,WAA3B,CAAuC,GAAvC,IAA8C,CAAhF,CAAD,EAAqFxM,eAArF,CAAjC;AACA+M,QAAAA,gBAAgB,CAACtG,IAAD,CAAhB;AACH,OAHD,MAGO;AACHA,QAAAA,IAAI,CAACzC,IAAL,CAAU0C,MAAV,GAAmB,OAAnB;AACAhF,QAAAA,OAAO,CAAC+E,IAAI,CAACzC,IAAL,CAAU7D,QAAV,CAAmBK,GAApB,EAAyB,UAAzB,EAAqCiG,IAAI,CAACzC,IAAL,CAAU7D,QAA/C,CAAP;AACH;AACJ;;AACD,mBAAesN,2BAAO,CAAChH,IAAI,CAAC+G,QAAN,EAAgB,UAACxJ,IAAD;AAAA,aAAUA,IAAI,CAAC0C,MAAL,KAAgB,MAAhB,GAAyB,MAAzB,GAAkC,WAA5C;AAAA,KAAhB,CAAtB;AAAA,QAAOgH,IAAP,YAAOA,IAAP;;AACA,QAAI,CAAC,MAAD,EAAS,SAAT,EAAoBxI,OAApB,CAA4BuB,IAAI,CAACzC,IAAL,CAAU0C,MAAtC,IAAgD,CAAC,CAArD,EAAwD;AACpDrF,MAAAA,QAAQ,CAACoL,WAAW,CAACiB,IAAD,CAAZ,CAAR;AACH;;AACDR,IAAAA,OAAO,CAACzG,IAAI,CAAC+G,QAAN,CAAP;AACH,GAvBD;;AAwBA,MAAMG,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAC3J,IAAD,EAAU;AAClC,QAAMwB,IAAI,GAAGxB,IAAI,CAACzF,IAAL,GAAY,IAAZ,GAAmB,IAAnB,GAA0BA,IAAvC;;AACA,QAAI,CAACiH,IAAL,EAAW;AACP9D,MAAAA,OAAO,0CAAUnD,IAAV,UAAqB,WAArB,EAAkC;AAACA,QAAAA,IAAI,EAAJA,IAAD;AAAOkD,QAAAA,QAAQ,EAAEuC,IAAI,CAACzF;AAAtB,OAAlC,CAAP;AACA,aAAO,KAAP;AACH;;AACD,QAAIyO,SAAS,KAAK,CAAlB,EAAqB;AACjB3L,MAAAA,QAAQ,CAAC,EAAD,CAAR;AACA6L,MAAAA,OAAO,CAAC,EAAD,CAAP;AACH;;AACD,WAAO5L,cAAc,IAAIA,cAAc,CAAC0C,IAAD,CAAvC;AACH,GAXD;;AAYA,MAAM4J,eAAe,GAAGf,IAAI,GAAGnB,OAAH,GAAa/E,WAAzC;AACA,sBAAO/H,wCAAC,eAAD,eAAqBH,KAArB;AAA4B,IAAA,MAAM,EAAEwB,MAAM,IAAI0L,YAAY,CAAC1L,MAA3D;AAAmE,IAAA,QAAQ,EAAEkN,SAA7E;AACiB,IAAA,MAAM,EAAEL,MAAM,CAACxH,IAAP,CAAY,GAAZ,CADzB;AAC2C,IAAA,QAAQ,EAAEiI,aADrD;AACoE,IAAA,YAAY,EAAEI;AADlF,MAEFnP,QAFE,CAAP;AAIH,CAjDD;;AAmDAoO,OAAO,CAAC1N,YAAR,GAAuB;AACnBiC,EAAAA,KAAK,EAAE,EADY;AAEnB2L,EAAAA,MAAM,EAAE,EAFW;AAGnBrL,EAAAA,QAAQ,EAAE,CAHS;AAInBuL,EAAAA,SAAS,EAAE,CAJQ;AAKnBxO,EAAAA,QAAQ,eAAEI,wCAAC0K,WAAD,qBAAQ1K,wCAACiP,oBAAD,OAAR,6BALS;AAMnBnM,EAAAA,OAAO,EAAE,iBAAC+E,IAAD;AAAA,WAAUG,YAAO,CAACC,KAAR,CAAcJ,IAAd,CAAV;AAAA,GANU;AAOnBsG,EAAAA,gBAAgB,EAAE,4BAAM;AAPL,CAAvB;;AAWA,IAAMe,WAAW,GAAG,SAAdA,WAAc,CAACrP,KAAD,EAAW;AAC3B,MAAMsI,MAAM,GAAGjG,WAAW,CAACrC,KAAD,CAA1B;AACA,SAAOsI,MAAM,CAAC6F,OAAD,CAAb;AACH,CAHD;;AAMAkB,WAAW,CAAChO,KAAZ,GAAoB8M,OAApB;;;;IClHMmB,YAAY,GAAG,SAAfA,YAAe,CAACtP,KAAD,EAAW;AAC5B,mBAA2CuP,mBAAS,CAACvP,KAAD,CAApD;AAAA,MAAesM,SAAf,cAAeA,SAAf;AAAA,MAA4BkD,WAA5B;;AACA,sBACIrP,wCAAC0K,WAAD;AAAQ,IAAA,OAAO,EAAEyB;AAAjB,KAAgCkD,WAAhC,EAAiDxP,KAAjD,EADJ;AAGH;;ICLKyP,WAAW,GAAG,SAAdA,WAAc,CAACzP,KAAD,EAAW;AAC3B,MAAM0P,UAAU,GAAGC,kBAAQ,EAA3B;AACA,sBACIxP,wCAAC0K,WAAD,eAAY6E,UAAZ,EAA4B1P,KAA5B,EADJ;AAGH;;;;ACDD,IAAM4P,SAAS,GAAGzD,oBAAS,CAAC9M,IAAD,CAA3B;;AAEA,IAAMwQ,WAAW,GAAG,SAAdA,WAAc,OAAmC;AAAA,MAAjCC,SAAiC,QAAjCA,SAAiC;AAAA,MAAtBC,MAAsB,QAAtBA,MAAsB;AAAA,MAAdhQ,QAAc,QAAdA,QAAc;AACnD,MAAMiQ,UAAU,GAAGF,SAAS,CAACG,cAAV,CAAyB,KAAzB,IAAkCL,SAAlC,GAA8CvQ,IAAjE;AACA,sBAAOc,wCAAC,UAAD,EAAgB2P,SAAhB,eACH3P;AAAK,IAAA,SAAS,EAAC;AAAf,KACKJ,QADL,CADG,eAIHI;AAAK,IAAA,SAAS,EAAC;AAAf,KACK4P,MAAM,GAAGA,MAAH,gBAAY5P,wCAAC+P,UAAD,qBACf/P,wCAAC,WAAD,uBADe,eAEfA,wCAAC,YAAD;AAAc,IAAA,IAAI,EAAC;AAAnB,oBAFe,CADvB,CAJG,CAAP;AAWH,CAbD;;IAeMgQ,SAAS,GAAG,SAAZA,SAAY,QAA6D;AAAA,MAA3D3Q,SAA2D,SAA3DA,SAA2D;AAAA,8BAAhDsQ,SAAgD;AAAA,MAAhDA,SAAgD,gCAApC,EAAoC;AAAA,MAAhCC,MAAgC,SAAhCA,MAAgC;AAAA,MAAxBhQ,QAAwB,SAAxBA,QAAwB;AAAA,MAAXC,KAAW;;AAC3E,sBAAOG,wCAAC6G,UAAD,eAAWhH,KAAX;AAAkB,IAAA,SAAS,EAAEI,8BAAU,CAACZ,SAAD,EAAY,kBAAZ,CAAvC;AAAwE,IAAA,MAAM,EAAE;AAAhF,mBACHW,wCAAC,WAAD;AAAa,IAAA,SAAS,EAAE2P,SAAxB;AAAmC,IAAA,MAAM,EAAEC;AAA3C,KAAoDhQ,QAApD,CADG,CAAP;AAGH;;AAEDoQ,SAAS,CAACC,KAAV,GAAkB;AAAA,MAAE5Q,SAAF,SAAEA,SAAF;AAAA,MAAa4E,KAAb,SAAaA,KAAb;AAAA,8BAAoB0L,SAApB;AAAA,MAAoBA,SAApB,gCAAgC,EAAhC;AAAA,MAAoCC,MAApC,SAAoCA,MAApC;AAAA,MAA4C5I,OAA5C,SAA4CA,OAA5C;AAAA,MAAwDnH,KAAxD;;AAAA,SAAmEgH,UAAK,CAACgB,IAAN,cAC9EhI,KAD8E;AAEjFoE,IAAAA,KAAK,EAAEA,KAAK,gBAAGjE;AAAK,MAAA,SAAS,EAAC;AAAf,oBACXA;AAAK,MAAA,SAAS,EAAC;AAAf,OAAkCiE,KAAlC,CADW,CAAH,GAEH,IAJwE;AAKjF5E,IAAAA,SAAS,EAAEY,8BAAU,CAACZ,SAAD,EAAY,kBAAZ,CAL4D;AAMjF2H,IAAAA,OAAO,eAAEhH,wCAAC,WAAD;AAAa,MAAA,SAAS,EAAE2P,SAAxB;AAAmC,MAAA,MAAM,EAAEC;AAA3C,OAAoD5I,OAApD,CANwE;AAOjFD,IAAAA,IAAI,EAAE,IAP2E;AAQjF6I,IAAAA,MAAM,EAAE;AARyE,KAAnE;AAAA,CAAlB;;ICLaM,MAAM,GAAGC;IACT/H,QAAQ,GAAGgI;IACXzH,QAAQ,GAAG0H;IACXtH,aAAa,GAAGuH;IAChBrH,UAAU,GAAGsH;IACbC,eAAe,GAAGC;IAClBxF,KAAK,GAAGyF;IACRtF,WAAW,GAAGuF;IACdtF,UAAU,GAAGuF;IACbhF,MAAM,GAAGiF;IACTzE,WAAW,GAAG0E;IACdvE,MAAM,GAAGwE;IACTvE,QAAQ,GAAGwE;IACXvE,UAAU,GAAGwE;IACbrE,UAAU,GAAGsE;IACbnJ,MAAM,GAAGoJ;IAETC,MAAM,GAAG;AAAElB,EAAAA,MAAM,EAANA,MAAF;AAAU9H,EAAAA,QAAQ,EAARA,QAAV;AAAoBO,EAAAA,QAAQ,EAARA,QAApB;AAA8BI,EAAAA,aAAa,EAAbA,aAA9B;AAA6CE,EAAAA,UAAU,EAAVA,UAA7C;AAAyDuH,EAAAA,eAAe,EAAfA,eAAzD;AAA0EvF,EAAAA,KAAK,EAALA,KAA1E;AAAiFG,EAAAA,WAAW,EAAXA,WAAjF;AAA8FC,EAAAA,UAAU,EAAVA,UAA9F;AAA0GO,EAAAA,MAAM,EAANA,MAA1G;AAAkHQ,EAAAA,WAAW,EAAXA,WAAlH;AAA+HG,EAAAA,MAAM,EAANA,MAA/H;AAAuIC,EAAAA,QAAQ,EAARA,QAAvI;AAAiJC,EAAAA,UAAU,EAAVA,UAAjJ;AAA6JG,EAAAA,UAAU,EAAVA,UAA7J;AAAyK7E,EAAAA,MAAM,EAANA;AAAzK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/Form.js","../src/preset.js","../src/fields/Avatar.js","../src/fields/Cascader.js","../src/fields/Checkbox.js","../src/fields/CheckboxGroup.js","../src/fields/DatePicker.js","../src/fields/DatePickerToday.js","../src/fields/Input.js","../src/fields/InputNumber.js","../src/fields/RadioGroup.js","../src/fields/Select.js","../src/fields/SelectFetch.js","../src/fields/Switch.js","../src/fields/TextArea.js","../src/fields/TimePicker.js","../src/fields/TreeSelect.js","../src/fields/Upload.js","../src/SubmitButton.js","../src/ResetButton.js","../src/FormModal.js","../src/CancelButton.js","../src/index.js"],"sourcesContent":["import React, {forwardRef} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport ReactForm from '@kne/react-form';\r\nimport {widget} from '@kne/react-form-helper';\r\nimport './assets/index.scss';\r\n\r\nexport * from '@kne/react-form';\r\nexport {hooks, widget, utils} from '@kne/react-form-helper';\r\n\r\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\r\n\r\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\r\n let computedClass = 'react-form';\r\n if (type !== 'default') {\r\n computedClass += `--${type}`;\r\n }\r\n\r\n if (size !== 'middle') {\r\n computedClass += `--${size}`;\r\n }\r\n\r\n const maxLabel = <MaxLabelProvider>\r\n {children}\r\n </MaxLabelProvider>;\r\n\r\n return (\r\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }}>\r\n <SizeProvider value={{size}}>\r\n <ReactForm {...props} ref={ref}>\r\n {cache ? <FormStore cache={cache}/> : null}\r\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\r\n {enterSubmit ? <EnterSubmit>\r\n {maxLabel}\r\n </EnterSubmit> : maxLabel}\r\n </ReactForm>\r\n </SizeProvider>\r\n </form>\r\n );\r\n});\r\n\r\nForm.defaultProps = {\r\n type: 'default',\r\n size: 'middle',\r\n scrollToError: true,\r\n enterSubmit: false,\r\n scrollProps: {\r\n block: 'center'\r\n }\r\n};\r\n\r\nForm.propTypes = {\r\n className: PropTypes.string,\r\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\r\n size: PropTypes.oneOf(['small', 'middle', 'large']),\r\n enterSubmit: PropTypes.bool,\r\n scrollToError: PropTypes.bool,\r\n scrollProps: PropTypes.shape({\r\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\r\n behavior: PropTypes.oneOf(['auto', 'smooth']),\r\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\r\n })\r\n};\r\n\r\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\r\nimport merge from 'lodash/merge';\r\nimport get from \"lodash/get\";\r\n\r\nexport const globalParams = {\r\n rules: {},\r\n field: {\r\n upload: {\r\n displayFilename: 'filename',\r\n action: '/open-api/upload_static_file/interview-manager',\r\n transformResponse: (response) => {\r\n const targetPath = get(response, 'results[0].targetPath');\r\n const filename = get(response, 'results[0].filename');\r\n return {\r\n code: response.code,\r\n msg: response.msg,\r\n results: targetPath + (filename ? `?${globalParams.field.upload.displayFilename}=` + encodeURIComponent(filename) : '')\r\n };\r\n }\r\n },\r\n avatar: {\r\n transformResponse: (response) => {\r\n return {\r\n code: response.code,\r\n results: response.results,\r\n msg: response.msg\r\n }\r\n },\r\n action: '/upload'\r\n }\r\n }\r\n};\r\n\r\nexport default (props) => {\r\n merge(globalParams, props);\r\n presetRules(globalParams.rules);\r\n};\r\n","import React, {useState, useRef, useEffect} from \"react\";\r\nimport {Upload, message, Modal, Slider, Row, Col, Space} from \"antd\";\r\nimport {globalParams} from \"../preset\";\r\nimport classnames from \"classnames\";\r\nimport {\r\n PlusOutlined, LoadingOutlined\r\n} from \"@ant-design/icons\";\r\nimport AvatarEditor from \"react-avatar-editor\";\r\nimport {hooks} from \"@kne/react-form-helper\";\r\nimport merge from 'lodash/merge';\r\n\r\nconst {useOnChange} = hooks;\r\nconst avatarParams = globalParams.field.avatar;\r\n\r\n\r\nconst _Avatar = ({\r\n className,\r\n value: imageUrl,\r\n onChange: propsChange,\r\n beforeUpload: onBeforeUpload,\r\n transformResponse,\r\n action,\r\n imageType,\r\n fileSize: size,\r\n children,\r\n onError,\r\n openEditor,\r\n editor: targetEditor,\r\n previewImg,\r\n previewRender\r\n }) => {\r\n const [loading, setLoading] = useState(false);\r\n const [showImageUrl, setImageUrl] = useState(imageUrl);\r\n const editorRef = useRef();\r\n\r\n const defaultEditor = {open: false, width: 250, height: 250, borderRadius: 1, text: \"确定\", title: \"裁剪图片\"};\r\n const editor = merge({}, defaultEditor, {open: openEditor}, targetEditor);\r\n\r\n useEffect(() => {\r\n setImageUrl(imageUrl);\r\n }, [imageUrl]);\r\n\r\n /* base64转blob */\r\n const dataURLtoBlob = (dataurl) => {\r\n let arr = dataurl.split(\",\");\r\n // 注意base64的最后面中括号和引号是不转译的\r\n let _arr = arr[1].substring(0, arr[1].length - 2);\r\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], {\r\n type: mime\r\n });\r\n };\r\n\r\n\r\n const AvatarEditorBox = ({file}) => {\r\n const [rotate, setRotate] = useState(0);\r\n const [scale, setScale] = useState(() => {\r\n if (editor.width === editor.height) {\r\n return 1;\r\n }\r\n return 0.35;\r\n });\r\n\r\n const onChange = (v) => {\r\n setRotate(v);\r\n };\r\n const onChangeScale = (v) => {\r\n setScale(v);\r\n };\r\n return (<div style={{\r\n \"width\": editor.width, \"margin\": \"auto\"\r\n }}>\r\n <AvatarEditor\r\n ref={editorRef}\r\n image={file}\r\n width={editor.width}\r\n height={editor.height}\r\n border={1}\r\n borderRadius={editor.borderRadius}\r\n color={[24, 144, 255, 1]} // RGBA\r\n scale={scale}\r\n rotate={rotate}\r\n />\r\n <Row gutter={4}>\r\n <Col span={4}><span>旋转</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange}/>\r\n </Col>\r\n </Row>\r\n <Row gutter={4}>\r\n <Col span={4}><span>放大</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3}\r\n onChange={onChangeScale}/>\r\n </Col>\r\n </Row>\r\n </div>);\r\n };\r\n\r\n const uploadButton = (<div>\r\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\r\n {children}\r\n </div>);\r\n\r\n const beforeUpload = async (file) => {\r\n return new Promise((resolve, reject) => {\r\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\r\n if (!isJpgOrPng) {\r\n onError(`只支持${imageType.map((str) => str.replace(\"image/\", \"\")).join(\"/\")}格式图片!`, \"typeError\", {\r\n type: imageType, fileType: file.type\r\n });\r\n reject();\r\n return false;\r\n }\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`图片不能超过${size}MB!`, \"sizeError\", {size, fileSize: file.size});\r\n reject();\r\n return false;\r\n }\r\n\r\n /*剪切图像*/\r\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\r\n if (editor.open) {\r\n Modal.success({\r\n title: editor.title,\r\n icon: \"\",\r\n width: editor.width * 2,\r\n content: <AvatarEditorBox file={file}/>,\r\n okText: editor.text,\r\n onOk: (close) => {\r\n let base64 = editorRef.current.getImage().toDataURL();\r\n setImageUrl(base64);\r\n let blob = dataURLtoBlob(base64);\r\n const files = new window.File([blob], file.name, {type: file.type});\r\n onBeforeUpload && onBeforeUpload(files);\r\n resolve(files);\r\n close();\r\n }\r\n });\r\n } else {\r\n onBeforeUpload && onBeforeUpload(file);\r\n resolve(file);\r\n }\r\n });\r\n\r\n };\r\n\r\n const onChange = (info) => {\r\n if (info.file.status === \"uploading\") {\r\n setLoading(true);\r\n return;\r\n }\r\n if (info.file.status === \"done\") {\r\n setLoading(false);\r\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\r\n if (response.code === 200) {\r\n propsChange(response.results);\r\n } else {\r\n onError(response.msg, \"xhrError\", response);\r\n }\r\n }\r\n };\r\n\r\n return (<>\r\n <Upload className={classnames(className, \"react-form-avatar\")} listType=\"picture-card\"\r\n showUploadList={false}\r\n action={action || avatarParams.action}\r\n beforeUpload={beforeUpload} onChange={onChange}>\r\n {previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) :\r\n <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\r\n </Upload>\r\n </>);\r\n};\r\n\r\n_Avatar.defaultProps = {\r\n imageType: [\"image/jpeg\", \"image/png\"],\r\n fileSize: 2, // 单位MB\r\n children: <div className=\"ant-upload-text\">点击上传</div>,\r\n onError: (info) => message.error(info),\r\n previewImg: true,\r\n previewRender: null,\r\n openEditor: false\r\n};\r\n\r\nconst AvatarInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Avatar);\r\n};\r\n\r\nAvatarInput.field = _Avatar;\r\n\r\nexport default AvatarInput;\r\n","import {Cascader as _Cascader} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst Cascader = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Cascader);\r\n};\r\n\r\nexport default Cascader;\r\n\r\n","import {Checkbox as _Checkbox} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\n\r\nconst WithCheckbox = withChecked(_Checkbox);\r\n\r\nconst Checkbox = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithCheckbox);\r\n};\r\n\r\nexport default Checkbox;\r\n","import {Checkbox} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _CheckboxGroup = Checkbox.Group;\r\n\r\nconst CheckboxGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(_CheckboxGroup);\r\n};\r\n\r\nCheckboxGroup.Checkbox = Checkbox;\r\n\r\nexport default CheckboxGroup;\r\n","import {DatePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\r\n\r\nconst _DatePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(DatePicker);\r\n};\r\n\r\nconst _MonthPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(MonthPicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n // if(props.selectToday){\r\n // return render(RangePickerToday);\r\n // }\r\n return render(RangePicker);\r\n};\r\n\r\nconst _WeekPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(WeekPicker);\r\n};\r\n\r\n_DatePicker.MonthPicker = _MonthPicker;\r\n_DatePicker.RangePicker = _RangePicker;\r\n_DatePicker.WeekPicker = _WeekPicker;\r\n\r\n\r\nexport default _DatePicker;\r\n","import {Button, DatePicker} from 'antd';\r\nimport React, {useRef, useEffect, useMemo} from 'react'\r\nimport moment from 'moment'\r\nimport get from 'lodash/get'\r\nimport useControlValue from '@kne/use-control-value'\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst PickerToday = (props) => {\r\n // console.log('>>>>data', data);\r\n const [data, onChange] = useControlValue(props);\r\n const ref_d = useRef();\r\n const newData = useMemo(() => {\r\n // console.log('......', data);\r\n const s = get(data, 0, '');\r\n const d = get(data, 1, '');\r\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\r\n return {\r\n start: s ? moment(s) : '',\r\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\r\n showZj: d === '至今',\r\n placeholder: p\r\n }\r\n }, [data]);\r\n\r\n const startChange = (v) => {\r\n // 比较日期大小\r\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\r\n onChange([newData.end, v]);\r\n return\r\n }\r\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\r\n };\r\n\r\n const endChange = (v) => {\r\n if (newData.start && v && v.isBefore(newData.start)) {\r\n onChange([v, newData.start]);\r\n return\r\n }\r\n onChange([newData.start, v || '']);\r\n };\r\n\r\n const foot = () => {\r\n return (\r\n <Button onClick={(v) => {\r\n ref_d.current.blur();\r\n onChange([newData.start || '', '至今']);\r\n }}>\r\n 至今\r\n </Button>\r\n )\r\n }\r\n return (\r\n <div style={{display: 'flex'}}>\r\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\r\n onChange={startChange}/>\r\n <div className={'svg_box'}>\r\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\r\n fill=\"currentColor\" aria-hidden=\"true\">\r\n <path\r\n d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"/>\r\n </svg>\r\n </div>\r\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\r\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\r\n <DatePicker {...{\r\n showToday: false,\r\n ...props,\r\n placeholder: newData.showZj ? '' : newData.placeholder[1],\r\n value: newData.end\r\n }} ref={ref_d}\r\n onChange={endChange} renderExtraFooter={foot}/>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n\r\nconst RangePickerToday = (props) => {\r\n const render = useOnChange(props);\r\n return render(PickerToday);\r\n};\r\n\r\nRangePickerToday.field = PickerToday;\r\n\r\nexport default RangePickerToday;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputField = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input);\r\n};\r\n\r\nInputField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputField;\r\n","import {InputNumber} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputNumberField = (props) => {\r\n const render = useDecorator(props);\r\n return render(InputNumber);\r\n};\r\n\r\nInputNumberField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputNumberField;\r\n","import React, {useCallback} from 'react';\r\nimport {Radio} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst RadioGroup = ({onChange, ...props})=>{\r\n const handler = useCallback((e) => {\r\n onChange && onChange(e.target.value);\r\n }, [onChange]);\r\n return <Radio.Group {...props} onChange={handler}/>\r\n};\r\n\r\nconst _RadioGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(RadioGroup);\r\n};\r\n\r\n_RadioGroup.Radio = Radio;\r\n\r\nexport default _RadioGroup;\r\n","import {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _Select = (props) => {\r\n const render = useOnChange(props);\r\n return render(Select);\r\n};\r\n\r\n_Select.Option = Select.Option;\r\n_Select.OptGroup = Select.OptGroup;\r\n\r\nexport default _Select;\r\n","import React from 'react';\r\nimport {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {withFetch} from '@kne/react-fetch';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\r\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\r\n});\r\n\r\nconst SelectFetch = (props) => {\r\n const render = useOnChange(props);\r\n return render(_SelectFetch);\r\n};\r\n\r\nSelectFetch.Option = Select.Option;\r\nSelectFetch.OptGroup = Select.OptGroup;\r\n\r\nexport default SelectFetch;\r\n","import {Switch as _Switch} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\nconst WithSwitch = withChecked(_Switch);\r\n\r\nconst Switch = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithSwitch);\r\n};\r\n\r\nexport default Switch;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst TextArea = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input.TextArea);\r\n};\r\n\r\nexport default TextArea;\r\n","import {TimePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {RangePicker} = TimePicker;\r\n\r\nconst _TimePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(TimePicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(RangePicker);\r\n};\r\n\r\n_TimePicker.RangePicker = _RangePicker;\r\n\r\nexport default _TimePicker;\r\n","import {TreeSelect} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _TreeSelect = (props) => {\r\n const render = useOnChange(props);\r\n return render(TreeSelect);\r\n};\r\n\r\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\r\n\r\nexport default _TreeSelect;\r\n","import React, {useState, useMemo} from 'react';\r\nimport {Upload, message, Button} from 'antd';\r\nimport {\r\n UploadOutlined\r\n} from '@ant-design/icons';\r\nimport get from 'lodash/get';\r\nimport groupBy from 'lodash/groupBy';\r\nimport uniqueId from 'lodash/uniqueId';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {globalParams} from \"../preset\";\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {Dragger} = Upload;\r\n\r\nconst uploadParams = globalParams.field.upload;\r\n\r\nconst computedFilename = (path, displayFilename = 'filename') => {\r\n const strArray = path.split('?');\r\n if (strArray[1]) {\r\n const query = {};\r\n strArray[1].split('&').forEach((str) => {\r\n const [key, value] = str.split('=');\r\n query[key] = value;\r\n });\r\n if (query[displayFilename]) {\r\n return decodeURIComponent(query[displayFilename]);\r\n }\r\n }\r\n return path;\r\n};\r\n\r\nconst valueToList = (value, displayFilename) => {\r\n if (!value) {\r\n return [];\r\n }\r\n return value.map((item) => {\r\n return {\r\n uid: uniqueId(),\r\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\r\n status: 'done',\r\n response: {code: 200, results: item}\r\n }\r\n });\r\n};\r\n\r\nconst listToValue = (value) => {\r\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\r\n};\r\n\r\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\r\n displayFilename = displayFilename || uploadParams.displayFilename;\r\n const [list, setList] = useState([]);\r\n const valueList = useMemo(() => {\r\n return valueToList(value.filter((url) => {\r\n return !list.find((file) => get(file, 'response.results') === url);\r\n }), displayFilename).concat(list);\r\n }, [list, value, displayFilename]);\r\n const changeHandler = (info) => {\r\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\r\n return;\r\n }\r\n if (info.fileList.length > maxLength) {\r\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\r\n return;\r\n }\r\n if (info.file.status === 'done') {\r\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\r\n if (info.file.response.code === 200) {\r\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\r\n onUploadComplete(info);\r\n } else {\r\n info.file.status = 'error';\r\n onError(info.file.response.msg, 'xhrError', info.file.response);\r\n }\r\n }\r\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\r\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\r\n onChange(listToValue(done));\r\n }\r\n setList(info.fileList);\r\n };\r\n const beforeUploadHandler = (file) => {\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\r\n return false;\r\n }\r\n if (maxLength === 1) {\r\n onChange([]);\r\n setList([]);\r\n }\r\n return onBeforeUpload && onBeforeUpload(file);\r\n };\r\n const UploadComponent = drag ? Dragger : Upload;\r\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\r\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\r\n {children}\r\n </UploadComponent>\r\n};\r\n\r\n_Upload.defaultProps = {\r\n value: [],\r\n accept: [],\r\n fileSize: 2,\r\n maxLength: 1,\r\n children: <Button><UploadOutlined/>点击上传</Button>,\r\n onError: (info) => message.error(info),\r\n onUploadComplete: () => {\r\n }\r\n};\r\n\r\nconst UploadInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Upload);\r\n};\r\n\r\n\r\nUploadInput.field = _Upload;\r\n\r\nexport default UploadInput;\r\n","import React from 'react';\r\nimport {useSubmit} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst SubmitButton = ({realTime, disabled, ...props}) => {\r\n const {isPass, isLoading, ...submitProps} = useSubmit(props);\r\n return (\r\n <Button loading={isLoading} disabled={disabled && (realTime ? !isPass : false)} {...submitProps} {...props}/>);\r\n};\r\n\r\nSubmitButton.defaultProps = {\r\n type: 'primary', disabled: false\r\n};\r\n\r\nexport default SubmitButton;\r\n","import React from 'react';\r\nimport {useReset} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst ResetButton = (props) => {\r\n const resetProps = useReset();\r\n return (\r\n <Button {...resetProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default ResetButton;\r\n","import React from 'react';\r\nimport {Modal, Space} from 'antd';\r\nimport SubmitButton from './SubmitButton';\r\nimport ResetButton from './ResetButton';\r\nimport Form from \"./Form\";\r\nimport {withFetch} from '@kne/react-fetch';\r\nimport classnames from 'classnames';\r\n\r\nconst FetchForm = withFetch(Form);\r\n\r\nconst CommonModal = ({formProps, footer, children}) => {\r\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\r\n return <TargetForm {...formProps}>\r\n <div className=\"ant-modal-body\">\r\n {children}\r\n </div>\r\n <div className=\"ant-modal-footer\">\r\n {footer ? footer : <Space>\r\n <ResetButton>重置</ResetButton>\r\n <SubmitButton type=\"primary\">确定</SubmitButton>\r\n </Space>}\r\n </div>\r\n </TargetForm>;\r\n};\r\n\r\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\r\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\r\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\r\n </Modal>\r\n};\r\n\r\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\r\n ...props,\r\n title: title ? <div className=\"ant-modal-header\">\r\n <div className=\"ant-modal-title\">{title}</div>\r\n </div> : null,\r\n className: classnames(className, 'react-form-modal'),\r\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\r\n icon: null,\r\n footer: null\r\n});\r\n\r\nexport default FormModal;\r\n","import React from 'react';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {Button} from 'antd';\r\n\r\nconst {useCacheRemove} = hooks;\r\n\r\nconst CancelButton = ({onClick, ...props}) => {\r\n const remove = useCacheRemove();\r\n return (<Button {...props} onClick={(...args) => {\r\n remove();\r\n onClick && onClick(...args);\r\n }}/>);\r\n};\r\n\r\nexport default CancelButton;\r\n","import Form from './Form';\n\nimport Avatar$ from './fields/Avatar';\nimport Cascader$ from './fields/Cascader';\nimport Checkbox$ from './fields/Checkbox';\nimport CheckboxGroup$ from './fields/CheckboxGroup';\nimport DatePicker$ from './fields/DatePicker';\nimport DatePickerToday$ from './fields/DatePickerToday';\nimport Input$ from './fields/Input';\nimport InputNumber$ from './fields/InputNumber';\nimport RadioGroup$ from './fields/RadioGroup';\nimport Select$ from './fields/Select';\nimport SelectFetch$ from './fields/SelectFetch';\nimport Switch$ from './fields/Switch';\nimport TextArea$ from './fields/TextArea';\nimport TimePicker$ from './fields/TimePicker';\nimport TreeSelect$ from './fields/TreeSelect';\nimport Upload$ from './fields/Upload';\n\nexport * from './Form';\nexport default Form;\nexport {default as preset} from './preset';\nexport {default as FormModal} from './FormModal';\nexport {default as ResetButton} from './ResetButton';\nexport {default as SubmitButton} from './SubmitButton';\nexport {default as CancelButton} from './CancelButton';\n\nexport const Avatar = Avatar$;\nexport const Cascader = Cascader$;\nexport const Checkbox = Checkbox$;\nexport const CheckboxGroup = CheckboxGroup$;\nexport const DatePicker = DatePicker$;\nexport const DatePickerToday = DatePickerToday$;\nexport const Input = Input$;\nexport const InputNumber = InputNumber$;\nexport const RadioGroup = RadioGroup$;\nexport const Select = Select$;\nexport const SelectFetch = SelectFetch$;\nexport const Switch = Switch$;\nexport const TextArea = TextArea$;\nexport const TimePicker = TimePicker$;\nexport const TreeSelect = TreeSelect$;\nexport const Upload = Upload$;\n\nexport const fields = { Avatar, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, Input, InputNumber, RadioGroup, Select, SelectFetch, Switch, TextArea, TimePicker, TreeSelect, Upload };"],"names":["ScrollToError","widget","EnterSubmit","FormStore","MaxLabelProvider","SizeProvider","Form","forwardRef","ref","className","cache","enterSubmit","scrollToError","scrollProps","type","size","children","props","computedClass","maxLabel","React","classnames","e","preventDefault","stopPropagation","ReactForm","defaultProps","block","propTypes","PropTypes","string","oneOf","bool","shape","behavior","inline","globalParams","rules","field","upload","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","imageUrl","value","propsChange","onChange","onBeforeUpload","beforeUpload","imageType","fileSize","onError","openEditor","targetEditor","editor","previewImg","previewRender","useState","loading","setLoading","showImageUrl","setImageUrl","editorRef","useRef","defaultEditor","open","width","height","borderRadius","text","title","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","v","onChangeScale","AvatarEditor","Row","Col","Slider","uploadButton","LoadingOutlined","PlusOutlined","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","Modal","success","icon","content","okText","onOk","close","base64","current","getImage","toDataURL","blob","files","window","File","name","info","status","Upload","message","error","AvatarInput","render","Cascader","_Cascader","useCheckedToValue","withChecked","hoc","WithCheckbox","_Checkbox","Checkbox","checkedProps","_CheckboxGroup","Group","CheckboxGroup","MonthPicker","DatePicker","RangePicker","WeekPicker","_DatePicker","_MonthPicker","_RangePicker","_WeekPicker","PickerToday","useControlValue","data","ref_d","newData","useMemo","s","d","p","start","moment","end","showZj","placeholder","startChange","isBefore","endChange","foot","Button","blur","display","showToday","RangePickerToday","useDecorator","InputField","Input","autoComplete","InputNumberField","InputNumber","RadioGroup","handler","useCallback","target","Radio","_RadioGroup","_Select","Select","Option","OptGroup","_SelectFetch","withFetch","setData","refresh","isLoading","SelectFetch","WithSwitch","_Switch","Switch","TextArea","TimePicker","_TimePicker","_TreeSelect","TreeSelect","TreeNode","Dragger","uploadParams","computedFilename","path","strArray","query","forEach","key","decodeURIComponent","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","_Upload","drag","accept","onUploadComplete","maxLength","list","setList","valueList","url","find","concat","changeHandler","fileList","groupBy","done","beforeUploadHandler","UploadComponent","UploadOutlined","UploadInput","SubmitButton","realTime","disabled","useSubmit","isPass","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","Space","FormModal","modal","useCacheRemove","CancelButton","onClick","remove","Avatar","Avatar$","Cascader$","Checkbox$","CheckboxGroup$","DatePicker$","DatePickerToday","DatePickerToday$","Input$","InputNumber$","RadioGroup$","Select$","SelectFetch$","Switch$","TextArea$","TimePicker$","TreeSelect$","Upload$","fields"],"mappings":"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"}
@@ -49,7 +49,7 @@ function _objectWithoutPropertiesLoose(source, excluded) {
49
49
  return target;
50
50
  }
51
51
 
52
- const _excluded$5 = ["className", "cache", "enterSubmit", "scrollToError", "scrollProps", "type", "size", "children"];
52
+ const _excluded$6 = ["className", "cache", "enterSubmit", "scrollToError", "scrollProps", "type", "size", "children"];
53
53
  const {
54
54
  ScrollToError,
55
55
  EnterSubmit,
@@ -68,7 +68,7 @@ const Form = forwardRef((_ref, ref) => {
68
68
  size,
69
69
  children
70
70
  } = _ref,
71
- props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
71
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$6);
72
72
 
73
73
  let computedClass = 'react-form';
74
74
 
@@ -580,7 +580,7 @@ InputNumberField.defaultProps = {
580
580
  autoComplete: 'off'
581
581
  };
582
582
 
583
- const _excluded$4 = ["onChange"];
583
+ const _excluded$5 = ["onChange"];
584
584
  const {
585
585
  useOnChange: useOnChange$6
586
586
  } = hooks;
@@ -589,7 +589,7 @@ const RadioGroup$1 = _ref => {
589
589
  let {
590
590
  onChange
591
591
  } = _ref,
592
- props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
592
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
593
593
 
594
594
  const handler = useCallback(e => {
595
595
  onChange && onChange(e.target.value);
@@ -618,7 +618,7 @@ const _Select = props => {
618
618
  _Select.Option = Select$1.Option;
619
619
  _Select.OptGroup = Select$1.OptGroup;
620
620
 
621
- const _excluded$3 = ["data", "setData", "refresh", "isLoading", "children"];
621
+ const _excluded$4 = ["data", "setData", "refresh", "isLoading", "children"];
622
622
  const {
623
623
  useOnChange: useOnChange$4
624
624
  } = hooks;
@@ -631,7 +631,7 @@ const _SelectFetch = withFetch(_ref => {
631
631
  isLoading,
632
632
  children
633
633
  } = _ref,
634
- props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
634
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
635
635
 
636
636
  return /*#__PURE__*/React.createElement(Select$1, props, children({
637
637
  data,
@@ -703,7 +703,7 @@ const _TreeSelect = props => {
703
703
 
704
704
  _TreeSelect.TreeNode = TreeSelect$1.TreeNode;
705
705
 
706
- const _excluded$2 = ["action", "value", "onChange", "drag", "children", "displayFilename", "accept", "fileSize", "onError", "onUploadComplete", "onBeforeUpload", "maxLength", "transformResponse"];
706
+ const _excluded$3 = ["action", "value", "onChange", "drag", "children", "displayFilename", "accept", "fileSize", "onError", "onUploadComplete", "onBeforeUpload", "maxLength", "transformResponse"];
707
707
  const {
708
708
  useOnChange
709
709
  } = hooks;
@@ -772,7 +772,7 @@ const _Upload = _ref => {
772
772
  maxLength,
773
773
  transformResponse
774
774
  } = _ref,
775
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
775
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
776
776
 
777
777
  displayFilename = displayFilename || uploadParams.displayFilename;
778
778
  const [list, setList] = useState([]);
@@ -861,26 +861,40 @@ const UploadInput = props => {
861
861
 
862
862
  UploadInput.field = _Upload;
863
863
 
864
- const _excluded$1 = ["isPass", "isLoading"];
864
+ const _excluded$2 = ["realTime", "disabled"],
865
+ _excluded2$1 = ["isPass", "isLoading"];
866
+
867
+ const SubmitButton = _ref => {
868
+ let {
869
+ realTime,
870
+ disabled
871
+ } = _ref,
872
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
865
873
 
866
- const SubmitButton = props => {
867
874
  const _useSubmit = useSubmit(props),
868
875
  {
876
+ isPass,
869
877
  isLoading
870
878
  } = _useSubmit,
871
- submitProps = _objectWithoutPropertiesLoose(_useSubmit, _excluded$1);
879
+ submitProps = _objectWithoutPropertiesLoose(_useSubmit, _excluded2$1);
872
880
 
873
881
  return /*#__PURE__*/React.createElement(Button, _extends({
874
- loading: isLoading
882
+ loading: isLoading,
883
+ disabled: disabled && (realTime ? !isPass : false)
875
884
  }, submitProps, props));
876
885
  };
877
886
 
887
+ SubmitButton.defaultProps = {
888
+ type: 'primary',
889
+ disabled: false
890
+ };
891
+
878
892
  const ResetButton = props => {
879
893
  const resetProps = useReset();
880
894
  return /*#__PURE__*/React.createElement(Button, _extends({}, resetProps, props));
881
895
  };
882
896
 
883
- const _excluded = ["className", "formProps", "footer", "children"],
897
+ const _excluded$1 = ["className", "formProps", "footer", "children"],
884
898
  _excluded2 = ["className", "title", "formProps", "footer", "content"];
885
899
  const FetchForm = withFetch(Form);
886
900
 
@@ -906,7 +920,7 @@ const FormModal = _ref => {
906
920
  footer,
907
921
  children
908
922
  } = _ref,
909
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
923
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$1);
910
924
 
911
925
  return /*#__PURE__*/React.createElement(Modal, _extends({}, props, {
912
926
  className: classnames(className, 'react-form-modal'),
@@ -943,6 +957,26 @@ FormModal.modal = _ref2 => {
943
957
  }));
944
958
  };
945
959
 
960
+ const _excluded = ["onClick"];
961
+ const {
962
+ useCacheRemove
963
+ } = hooks;
964
+
965
+ const CancelButton = _ref => {
966
+ let {
967
+ onClick
968
+ } = _ref,
969
+ props = _objectWithoutPropertiesLoose(_ref, _excluded);
970
+
971
+ const remove = useCacheRemove();
972
+ return /*#__PURE__*/React.createElement(Button, _extends({}, props, {
973
+ onClick: (...args) => {
974
+ remove();
975
+ onClick && onClick(...args);
976
+ }
977
+ }));
978
+ };
979
+
946
980
  const Avatar = AvatarInput;
947
981
  const Cascader = Cascader$1;
948
982
  const Checkbox = Checkbox$1;
@@ -978,5 +1012,5 @@ const fields = {
978
1012
  Upload
979
1013
  };
980
1014
 
981
- export { Avatar, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, FormModal, Input, InputNumber, RadioGroup, ResetButton, Select, SelectFetch, SubmitButton, Switch, TextArea, TimePicker, TreeSelect, Upload, Form as default, fields, preset };
1015
+ export { Avatar, CancelButton, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, FormModal, Input, InputNumber, RadioGroup, ResetButton, Select, SelectFetch, SubmitButton, Switch, TextArea, TimePicker, TreeSelect, Upload, Form as default, fields, preset };
982
1016
  //# sourceMappingURL=index.modern.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.modern.js","sources":["../src/Form.js","../src/preset.js","../src/fields/Avatar.js","../src/fields/Cascader.js","../src/fields/Checkbox.js","../src/fields/CheckboxGroup.js","../src/fields/DatePicker.js","../src/fields/DatePickerToday.js","../src/fields/Input.js","../src/fields/InputNumber.js","../src/fields/RadioGroup.js","../src/fields/Select.js","../src/fields/SelectFetch.js","../src/fields/Switch.js","../src/fields/TextArea.js","../src/fields/TimePicker.js","../src/fields/TreeSelect.js","../src/fields/Upload.js","../src/SubmitButton.js","../src/ResetButton.js","../src/FormModal.js","../src/index.js"],"sourcesContent":["import React, {forwardRef} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport ReactForm from '@kne/react-form';\r\nimport {widget} from '@kne/react-form-helper';\r\nimport './assets/index.scss';\r\n\r\nexport * from '@kne/react-form';\r\nexport {hooks, widget, utils} from '@kne/react-form-helper';\r\n\r\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\r\n\r\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\r\n let computedClass = 'react-form';\r\n if (type !== 'default') {\r\n computedClass += `--${type}`;\r\n }\r\n\r\n if (size !== 'middle') {\r\n computedClass += `--${size}`;\r\n }\r\n\r\n const maxLabel = <MaxLabelProvider>\r\n {children}\r\n </MaxLabelProvider>;\r\n\r\n return (\r\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }}>\r\n <SizeProvider value={{size}}>\r\n <ReactForm {...props} ref={ref}>\r\n {cache ? <FormStore cache={cache}/> : null}\r\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\r\n {enterSubmit ? <EnterSubmit>\r\n {maxLabel}\r\n </EnterSubmit> : maxLabel}\r\n </ReactForm>\r\n </SizeProvider>\r\n </form>\r\n );\r\n});\r\n\r\nForm.defaultProps = {\r\n type: 'default',\r\n size: 'middle',\r\n scrollToError: true,\r\n enterSubmit: false,\r\n scrollProps: {\r\n block: 'center'\r\n }\r\n};\r\n\r\nForm.propTypes = {\r\n className: PropTypes.string,\r\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\r\n size: PropTypes.oneOf(['small', 'middle', 'large']),\r\n enterSubmit: PropTypes.bool,\r\n scrollToError: PropTypes.bool,\r\n scrollProps: PropTypes.shape({\r\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\r\n behavior: PropTypes.oneOf(['auto', 'smooth']),\r\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\r\n })\r\n};\r\n\r\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\r\nimport merge from 'lodash/merge';\r\nimport get from \"lodash/get\";\r\n\r\nexport const globalParams = {\r\n rules: {},\r\n field: {\r\n upload: {\r\n displayFilename: 'filename',\r\n action: '/open-api/upload_static_file/interview-manager',\r\n transformResponse: (response) => {\r\n const targetPath = get(response, 'results[0].targetPath');\r\n const filename = get(response, 'results[0].filename');\r\n return {\r\n code: response.code,\r\n msg: response.msg,\r\n results: targetPath + (filename ? `?${globalParams.field.upload.displayFilename}=` + encodeURIComponent(filename) : '')\r\n };\r\n }\r\n },\r\n avatar: {\r\n transformResponse: (response) => {\r\n return {\r\n code: response.code,\r\n results: response.results,\r\n msg: response.msg\r\n }\r\n },\r\n action: '/upload'\r\n }\r\n }\r\n};\r\n\r\nexport default (props) => {\r\n merge(globalParams, props);\r\n presetRules(globalParams.rules);\r\n};\r\n","import React, {useState, useRef, useEffect} from \"react\";\r\nimport {Upload, message, Modal, Slider, Row, Col, Space} from \"antd\";\r\nimport {globalParams} from \"../preset\";\r\nimport classnames from \"classnames\";\r\nimport {\r\n PlusOutlined, LoadingOutlined\r\n} from \"@ant-design/icons\";\r\nimport AvatarEditor from \"react-avatar-editor\";\r\nimport {hooks} from \"@kne/react-form-helper\";\r\nimport merge from 'lodash/merge';\r\n\r\nconst {useOnChange} = hooks;\r\nconst avatarParams = globalParams.field.avatar;\r\n\r\n\r\nconst _Avatar = ({\r\n className,\r\n value: imageUrl,\r\n onChange: propsChange,\r\n beforeUpload: onBeforeUpload,\r\n transformResponse,\r\n action,\r\n imageType,\r\n fileSize: size,\r\n children,\r\n onError,\r\n openEditor,\r\n editor: targetEditor,\r\n previewImg,\r\n previewRender\r\n }) => {\r\n const [loading, setLoading] = useState(false);\r\n const [showImageUrl, setImageUrl] = useState(imageUrl);\r\n const editorRef = useRef();\r\n\r\n const defaultEditor = {open: false, width: 250, height: 250, borderRadius: 1, text: \"确定\", title: \"裁剪图片\"};\r\n const editor = merge({}, defaultEditor, {open: openEditor}, targetEditor);\r\n\r\n useEffect(() => {\r\n setImageUrl(imageUrl);\r\n }, [imageUrl]);\r\n\r\n /* base64转blob */\r\n const dataURLtoBlob = (dataurl) => {\r\n let arr = dataurl.split(\",\");\r\n // 注意base64的最后面中括号和引号是不转译的\r\n let _arr = arr[1].substring(0, arr[1].length - 2);\r\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], {\r\n type: mime\r\n });\r\n };\r\n\r\n\r\n const AvatarEditorBox = ({file}) => {\r\n const [rotate, setRotate] = useState(0);\r\n const [scale, setScale] = useState(() => {\r\n if (editor.width === editor.height) {\r\n return 1;\r\n }\r\n return 0.35;\r\n });\r\n\r\n const onChange = (v) => {\r\n setRotate(v);\r\n };\r\n const onChangeScale = (v) => {\r\n setScale(v);\r\n };\r\n return (<div style={{\r\n \"width\": editor.width, \"margin\": \"auto\"\r\n }}>\r\n <AvatarEditor\r\n ref={editorRef}\r\n image={file}\r\n width={editor.width}\r\n height={editor.height}\r\n border={1}\r\n borderRadius={editor.borderRadius}\r\n color={[24, 144, 255, 1]} // RGBA\r\n scale={scale}\r\n rotate={rotate}\r\n />\r\n <Row gutter={4}>\r\n <Col span={4}><span>旋转</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange}/>\r\n </Col>\r\n </Row>\r\n <Row gutter={4}>\r\n <Col span={4}><span>放大</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3}\r\n onChange={onChangeScale}/>\r\n </Col>\r\n </Row>\r\n </div>);\r\n };\r\n\r\n const uploadButton = (<div>\r\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\r\n {children}\r\n </div>);\r\n\r\n const beforeUpload = async (file) => {\r\n return new Promise((resolve, reject) => {\r\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\r\n if (!isJpgOrPng) {\r\n onError(`只支持${imageType.map((str) => str.replace(\"image/\", \"\")).join(\"/\")}格式图片!`, \"typeError\", {\r\n type: imageType, fileType: file.type\r\n });\r\n reject();\r\n return false;\r\n }\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`图片不能超过${size}MB!`, \"sizeError\", {size, fileSize: file.size});\r\n reject();\r\n return false;\r\n }\r\n\r\n /*剪切图像*/\r\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\r\n if (editor.open) {\r\n Modal.success({\r\n title: editor.title,\r\n icon: \"\",\r\n width: editor.width * 2,\r\n content: <AvatarEditorBox file={file}/>,\r\n okText: editor.text,\r\n onOk: (close) => {\r\n let base64 = editorRef.current.getImage().toDataURL();\r\n setImageUrl(base64);\r\n let blob = dataURLtoBlob(base64);\r\n const files = new window.File([blob], file.name, {type: file.type});\r\n onBeforeUpload && onBeforeUpload(files);\r\n resolve(files);\r\n close();\r\n }\r\n });\r\n } else {\r\n onBeforeUpload && onBeforeUpload(file);\r\n resolve(file);\r\n }\r\n });\r\n\r\n };\r\n\r\n const onChange = (info) => {\r\n if (info.file.status === \"uploading\") {\r\n setLoading(true);\r\n return;\r\n }\r\n if (info.file.status === \"done\") {\r\n setLoading(false);\r\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\r\n if (response.code === 200) {\r\n propsChange(response.results);\r\n } else {\r\n onError(response.msg, \"xhrError\", response);\r\n }\r\n }\r\n };\r\n\r\n return (<>\r\n <Upload className={classnames(className, \"react-form-avatar\")} listType=\"picture-card\"\r\n showUploadList={false}\r\n action={action || avatarParams.action}\r\n beforeUpload={beforeUpload} onChange={onChange}>\r\n {previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) :\r\n <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\r\n </Upload>\r\n </>);\r\n};\r\n\r\n_Avatar.defaultProps = {\r\n imageType: [\"image/jpeg\", \"image/png\"],\r\n fileSize: 2, // 单位MB\r\n children: <div className=\"ant-upload-text\">点击上传</div>,\r\n onError: (info) => message.error(info),\r\n previewImg: true,\r\n previewRender: null,\r\n openEditor: false\r\n};\r\n\r\nconst AvatarInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Avatar);\r\n};\r\n\r\nAvatarInput.field = _Avatar;\r\n\r\nexport default AvatarInput;\r\n","import {Cascader as _Cascader} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst Cascader = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Cascader);\r\n};\r\n\r\nexport default Cascader;\r\n\r\n","import {Checkbox as _Checkbox} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\n\r\nconst WithCheckbox = withChecked(_Checkbox);\r\n\r\nconst Checkbox = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithCheckbox);\r\n};\r\n\r\nexport default Checkbox;\r\n","import {Checkbox} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _CheckboxGroup = Checkbox.Group;\r\n\r\nconst CheckboxGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(_CheckboxGroup);\r\n};\r\n\r\nCheckboxGroup.Checkbox = Checkbox;\r\n\r\nexport default CheckboxGroup;\r\n","import {DatePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\r\n\r\nconst _DatePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(DatePicker);\r\n};\r\n\r\nconst _MonthPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(MonthPicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n // if(props.selectToday){\r\n // return render(RangePickerToday);\r\n // }\r\n return render(RangePicker);\r\n};\r\n\r\nconst _WeekPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(WeekPicker);\r\n};\r\n\r\n_DatePicker.MonthPicker = _MonthPicker;\r\n_DatePicker.RangePicker = _RangePicker;\r\n_DatePicker.WeekPicker = _WeekPicker;\r\n\r\n\r\nexport default _DatePicker;\r\n","import {Button, DatePicker} from 'antd';\r\nimport React, {useRef, useEffect, useMemo} from 'react'\r\nimport moment from 'moment'\r\nimport get from 'lodash/get'\r\nimport useControlValue from '@kne/use-control-value'\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst PickerToday = (props) => {\r\n // console.log('>>>>data', data);\r\n const [data, onChange] = useControlValue(props);\r\n const ref_d = useRef();\r\n const newData = useMemo(() => {\r\n // console.log('......', data);\r\n const s = get(data, 0, '');\r\n const d = get(data, 1, '');\r\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\r\n return {\r\n start: s ? moment(s) : '',\r\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\r\n showZj: d === '至今',\r\n placeholder: p\r\n }\r\n }, [data]);\r\n\r\n const startChange = (v) => {\r\n // 比较日期大小\r\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\r\n onChange([newData.end, v]);\r\n return\r\n }\r\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\r\n };\r\n\r\n const endChange = (v) => {\r\n if (newData.start && v && v.isBefore(newData.start)) {\r\n onChange([v, newData.start]);\r\n return\r\n }\r\n onChange([newData.start, v || '']);\r\n };\r\n\r\n const foot = () => {\r\n return (\r\n <Button onClick={(v) => {\r\n ref_d.current.blur();\r\n onChange([newData.start || '', '至今']);\r\n }}>\r\n 至今\r\n </Button>\r\n )\r\n }\r\n return (\r\n <div style={{display: 'flex'}}>\r\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\r\n onChange={startChange}/>\r\n <div className={'svg_box'}>\r\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\r\n fill=\"currentColor\" aria-hidden=\"true\">\r\n <path\r\n d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"/>\r\n </svg>\r\n </div>\r\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\r\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\r\n <DatePicker {...{\r\n showToday: false,\r\n ...props,\r\n placeholder: newData.showZj ? '' : newData.placeholder[1],\r\n value: newData.end\r\n }} ref={ref_d}\r\n onChange={endChange} renderExtraFooter={foot}/>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n\r\nconst RangePickerToday = (props) => {\r\n const render = useOnChange(props);\r\n return render(PickerToday);\r\n};\r\n\r\nRangePickerToday.field = PickerToday;\r\n\r\nexport default RangePickerToday;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputField = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input);\r\n};\r\n\r\nInputField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputField;\r\n","import {InputNumber} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputNumberField = (props) => {\r\n const render = useDecorator(props);\r\n return render(InputNumber);\r\n};\r\n\r\nInputNumberField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputNumberField;\r\n","import React, {useCallback} from 'react';\r\nimport {Radio} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst RadioGroup = ({onChange, ...props})=>{\r\n const handler = useCallback((e) => {\r\n onChange && onChange(e.target.value);\r\n }, [onChange]);\r\n return <Radio.Group {...props} onChange={handler}/>\r\n};\r\n\r\nconst _RadioGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(RadioGroup);\r\n};\r\n\r\n_RadioGroup.Radio = Radio;\r\n\r\nexport default _RadioGroup;\r\n","import {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _Select = (props) => {\r\n const render = useOnChange(props);\r\n return render(Select);\r\n};\r\n\r\n_Select.Option = Select.Option;\r\n_Select.OptGroup = Select.OptGroup;\r\n\r\nexport default _Select;\r\n","import React from 'react';\r\nimport {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {withFetch} from '@kne/react-fetch';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\r\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\r\n});\r\n\r\nconst SelectFetch = (props) => {\r\n const render = useOnChange(props);\r\n return render(_SelectFetch);\r\n};\r\n\r\nSelectFetch.Option = Select.Option;\r\nSelectFetch.OptGroup = Select.OptGroup;\r\n\r\nexport default SelectFetch;\r\n","import {Switch as _Switch} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\nconst WithSwitch = withChecked(_Switch);\r\n\r\nconst Switch = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithSwitch);\r\n};\r\n\r\nexport default Switch;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst TextArea = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input.TextArea);\r\n};\r\n\r\nexport default TextArea;\r\n","import {TimePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {RangePicker} = TimePicker;\r\n\r\nconst _TimePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(TimePicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(RangePicker);\r\n};\r\n\r\n_TimePicker.RangePicker = _RangePicker;\r\n\r\nexport default _TimePicker;\r\n","import {TreeSelect} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _TreeSelect = (props) => {\r\n const render = useOnChange(props);\r\n return render(TreeSelect);\r\n};\r\n\r\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\r\n\r\nexport default _TreeSelect;\r\n","import React, {useState, useMemo} from 'react';\r\nimport {Upload, message, Button} from 'antd';\r\nimport {\r\n UploadOutlined\r\n} from '@ant-design/icons';\r\nimport get from 'lodash/get';\r\nimport groupBy from 'lodash/groupBy';\r\nimport uniqueId from 'lodash/uniqueId';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {globalParams} from \"../preset\";\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {Dragger} = Upload;\r\n\r\nconst uploadParams = globalParams.field.upload;\r\n\r\nconst computedFilename = (path, displayFilename = 'filename') => {\r\n const strArray = path.split('?');\r\n if (strArray[1]) {\r\n const query = {};\r\n strArray[1].split('&').forEach((str) => {\r\n const [key, value] = str.split('=');\r\n query[key] = value;\r\n });\r\n if (query[displayFilename]) {\r\n return decodeURIComponent(query[displayFilename]);\r\n }\r\n }\r\n return path;\r\n};\r\n\r\nconst valueToList = (value, displayFilename) => {\r\n if (!value) {\r\n return [];\r\n }\r\n return value.map((item) => {\r\n return {\r\n uid: uniqueId(),\r\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\r\n status: 'done',\r\n response: {code: 200, results: item}\r\n }\r\n });\r\n};\r\n\r\nconst listToValue = (value) => {\r\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\r\n};\r\n\r\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\r\n displayFilename = displayFilename || uploadParams.displayFilename;\r\n const [list, setList] = useState([]);\r\n const valueList = useMemo(() => {\r\n return valueToList(value.filter((url) => {\r\n return !list.find((file) => get(file, 'response.results') === url);\r\n }), displayFilename).concat(list);\r\n }, [list, value, displayFilename]);\r\n const changeHandler = (info) => {\r\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\r\n return;\r\n }\r\n if (info.fileList.length > maxLength) {\r\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\r\n return;\r\n }\r\n if (info.file.status === 'done') {\r\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\r\n if (info.file.response.code === 200) {\r\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\r\n onUploadComplete(info);\r\n } else {\r\n info.file.status = 'error';\r\n onError(info.file.response.msg, 'xhrError', info.file.response);\r\n }\r\n }\r\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\r\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\r\n onChange(listToValue(done));\r\n }\r\n setList(info.fileList);\r\n };\r\n const beforeUploadHandler = (file) => {\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\r\n return false;\r\n }\r\n if (maxLength === 1) {\r\n onChange([]);\r\n setList([]);\r\n }\r\n return onBeforeUpload && onBeforeUpload(file);\r\n };\r\n const UploadComponent = drag ? Dragger : Upload;\r\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\r\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\r\n {children}\r\n </UploadComponent>\r\n};\r\n\r\n_Upload.defaultProps = {\r\n value: [],\r\n accept: [],\r\n fileSize: 2,\r\n maxLength: 1,\r\n children: <Button><UploadOutlined/>点击上传</Button>,\r\n onError: (info) => message.error(info),\r\n onUploadComplete: () => {\r\n }\r\n};\r\n\r\nconst UploadInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Upload);\r\n};\r\n\r\n\r\nUploadInput.field = _Upload;\r\n\r\nexport default UploadInput;\r\n","import React from 'react';\r\nimport {useSubmit} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst SubmitButton = (props) => {\r\n const {isPass, isLoading,...submitProps} = useSubmit(props);\r\n return (\r\n <Button loading={isLoading} {...submitProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default SubmitButton;\r\n","import React from 'react';\r\nimport {useReset} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst ResetButton = (props) => {\r\n const resetProps = useReset();\r\n return (\r\n <Button {...resetProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default ResetButton;\r\n","import React from 'react';\r\nimport {Modal, Space} from 'antd';\r\nimport SubmitButton from './SubmitButton';\r\nimport ResetButton from './ResetButton';\r\nimport Form from \"./Form\";\r\nimport {withFetch} from '@kne/react-fetch';\r\nimport classnames from 'classnames';\r\n\r\nconst FetchForm = withFetch(Form);\r\n\r\nconst CommonModal = ({formProps, footer, children}) => {\r\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\r\n return <TargetForm {...formProps}>\r\n <div className=\"ant-modal-body\">\r\n {children}\r\n </div>\r\n <div className=\"ant-modal-footer\">\r\n {footer ? footer : <Space>\r\n <ResetButton>重置</ResetButton>\r\n <SubmitButton type=\"primary\">确定</SubmitButton>\r\n </Space>}\r\n </div>\r\n </TargetForm>;\r\n};\r\n\r\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\r\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\r\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\r\n </Modal>\r\n};\r\n\r\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\r\n ...props,\r\n title: title ? <div className=\"ant-modal-header\">\r\n <div className=\"ant-modal-title\">{title}</div>\r\n </div> : null,\r\n className: classnames(className, 'react-form-modal'),\r\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\r\n icon: null,\r\n footer: null\r\n});\r\n\r\nexport default FormModal;\r\n","import Form from './Form';\n\nimport Avatar$ from './fields/Avatar';\nimport Cascader$ from './fields/Cascader';\nimport Checkbox$ from './fields/Checkbox';\nimport CheckboxGroup$ from './fields/CheckboxGroup';\nimport DatePicker$ from './fields/DatePicker';\nimport DatePickerToday$ from './fields/DatePickerToday';\nimport Input$ from './fields/Input';\nimport InputNumber$ from './fields/InputNumber';\nimport RadioGroup$ from './fields/RadioGroup';\nimport Select$ from './fields/Select';\nimport SelectFetch$ from './fields/SelectFetch';\nimport Switch$ from './fields/Switch';\nimport TextArea$ from './fields/TextArea';\nimport TimePicker$ from './fields/TimePicker';\nimport TreeSelect$ from './fields/TreeSelect';\nimport Upload$ from './fields/Upload';\n\nexport * from './Form';\nexport default Form;\nexport {default as preset} from './preset';\nexport {default as FormModal} from './FormModal';\nexport {default as ResetButton} from './ResetButton';\nexport {default as SubmitButton} from './SubmitButton';\n\nexport const Avatar = Avatar$;\nexport const Cascader = Cascader$;\nexport const Checkbox = Checkbox$;\nexport const CheckboxGroup = CheckboxGroup$;\nexport const DatePicker = DatePicker$;\nexport const DatePickerToday = DatePickerToday$;\nexport const Input = Input$;\nexport const InputNumber = InputNumber$;\nexport const RadioGroup = RadioGroup$;\nexport const Select = Select$;\nexport const SelectFetch = SelectFetch$;\nexport const Switch = Switch$;\nexport const TextArea = TextArea$;\nexport const TimePicker = TimePicker$;\nexport const TreeSelect = TreeSelect$;\nexport const Upload = Upload$;\n\nexport const fields = { Avatar, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, Input, InputNumber, RadioGroup, Select, SelectFetch, Switch, TextArea, TimePicker, TreeSelect, Upload };"],"names":["ScrollToError","EnterSubmit","FormStore","MaxLabelProvider","SizeProvider","widget","Form","forwardRef","ref","className","cache","enterSubmit","scrollToError","scrollProps","type","size","children","props","computedClass","maxLabel","classnames","e","preventDefault","stopPropagation","ReactForm","defaultProps","block","propTypes","PropTypes","string","oneOf","bool","shape","behavior","inline","globalParams","rules","field","upload","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","value","imageUrl","onChange","propsChange","beforeUpload","onBeforeUpload","imageType","fileSize","onError","openEditor","editor","targetEditor","previewImg","previewRender","loading","setLoading","useState","showImageUrl","setImageUrl","editorRef","useRef","defaultEditor","open","width","height","borderRadius","text","title","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","v","onChangeScale","uploadButton","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","Modal","success","icon","content","okText","onOk","close","base64","current","getImage","toDataURL","blob","files","window","File","name","info","status","Upload","message","error","AvatarInput","render","Cascader","_Cascader","useCheckedToValue","withChecked","hoc","WithCheckbox","_Checkbox","Checkbox","checkedProps","_CheckboxGroup","Group","CheckboxGroup","MonthPicker","RangePicker","WeekPicker","DatePicker","_DatePicker","_MonthPicker","_RangePicker","_WeekPicker","PickerToday","data","useControlValue","ref_d","newData","useMemo","s","d","p","start","moment","end","showZj","placeholder","startChange","isBefore","endChange","foot","blur","display","showToday","RangePickerToday","useDecorator","InputField","Input","autoComplete","InputNumberField","InputNumber","RadioGroup","handler","useCallback","target","_RadioGroup","Radio","_Select","Select","Option","OptGroup","_SelectFetch","withFetch","setData","refresh","isLoading","SelectFetch","WithSwitch","_Switch","Switch","TextArea","TimePicker","_TimePicker","_TreeSelect","TreeSelect","TreeNode","Dragger","uploadParams","computedFilename","path","strArray","query","forEach","key","decodeURIComponent","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","_Upload","drag","accept","onUploadComplete","maxLength","list","setList","valueList","url","find","concat","changeHandler","fileList","done","groupBy","beforeUploadHandler","UploadComponent","UploadInput","SubmitButton","useSubmit","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","FormModal","modal","Avatar","Avatar$","Cascader$","Checkbox$","CheckboxGroup$","DatePicker$","DatePickerToday","DatePickerToday$","Input$","InputNumber$","RadioGroup$","Select$","SelectFetch$","Switch$","TextArea$","TimePicker$","TreeSelect$","Upload$","fields"],"mappings":"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"}
1
+ {"version":3,"file":"index.modern.js","sources":["../src/Form.js","../src/preset.js","../src/fields/Avatar.js","../src/fields/Cascader.js","../src/fields/Checkbox.js","../src/fields/CheckboxGroup.js","../src/fields/DatePicker.js","../src/fields/DatePickerToday.js","../src/fields/Input.js","../src/fields/InputNumber.js","../src/fields/RadioGroup.js","../src/fields/Select.js","../src/fields/SelectFetch.js","../src/fields/Switch.js","../src/fields/TextArea.js","../src/fields/TimePicker.js","../src/fields/TreeSelect.js","../src/fields/Upload.js","../src/SubmitButton.js","../src/ResetButton.js","../src/FormModal.js","../src/CancelButton.js","../src/index.js"],"sourcesContent":["import React, {forwardRef} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport ReactForm from '@kne/react-form';\r\nimport {widget} from '@kne/react-form-helper';\r\nimport './assets/index.scss';\r\n\r\nexport * from '@kne/react-form';\r\nexport {hooks, widget, utils} from '@kne/react-form-helper';\r\n\r\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\r\n\r\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\r\n let computedClass = 'react-form';\r\n if (type !== 'default') {\r\n computedClass += `--${type}`;\r\n }\r\n\r\n if (size !== 'middle') {\r\n computedClass += `--${size}`;\r\n }\r\n\r\n const maxLabel = <MaxLabelProvider>\r\n {children}\r\n </MaxLabelProvider>;\r\n\r\n return (\r\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }}>\r\n <SizeProvider value={{size}}>\r\n <ReactForm {...props} ref={ref}>\r\n {cache ? <FormStore cache={cache}/> : null}\r\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\r\n {enterSubmit ? <EnterSubmit>\r\n {maxLabel}\r\n </EnterSubmit> : maxLabel}\r\n </ReactForm>\r\n </SizeProvider>\r\n </form>\r\n );\r\n});\r\n\r\nForm.defaultProps = {\r\n type: 'default',\r\n size: 'middle',\r\n scrollToError: true,\r\n enterSubmit: false,\r\n scrollProps: {\r\n block: 'center'\r\n }\r\n};\r\n\r\nForm.propTypes = {\r\n className: PropTypes.string,\r\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\r\n size: PropTypes.oneOf(['small', 'middle', 'large']),\r\n enterSubmit: PropTypes.bool,\r\n scrollToError: PropTypes.bool,\r\n scrollProps: PropTypes.shape({\r\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\r\n behavior: PropTypes.oneOf(['auto', 'smooth']),\r\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\r\n })\r\n};\r\n\r\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\r\nimport merge from 'lodash/merge';\r\nimport get from \"lodash/get\";\r\n\r\nexport const globalParams = {\r\n rules: {},\r\n field: {\r\n upload: {\r\n displayFilename: 'filename',\r\n action: '/open-api/upload_static_file/interview-manager',\r\n transformResponse: (response) => {\r\n const targetPath = get(response, 'results[0].targetPath');\r\n const filename = get(response, 'results[0].filename');\r\n return {\r\n code: response.code,\r\n msg: response.msg,\r\n results: targetPath + (filename ? `?${globalParams.field.upload.displayFilename}=` + encodeURIComponent(filename) : '')\r\n };\r\n }\r\n },\r\n avatar: {\r\n transformResponse: (response) => {\r\n return {\r\n code: response.code,\r\n results: response.results,\r\n msg: response.msg\r\n }\r\n },\r\n action: '/upload'\r\n }\r\n }\r\n};\r\n\r\nexport default (props) => {\r\n merge(globalParams, props);\r\n presetRules(globalParams.rules);\r\n};\r\n","import React, {useState, useRef, useEffect} from \"react\";\r\nimport {Upload, message, Modal, Slider, Row, Col, Space} from \"antd\";\r\nimport {globalParams} from \"../preset\";\r\nimport classnames from \"classnames\";\r\nimport {\r\n PlusOutlined, LoadingOutlined\r\n} from \"@ant-design/icons\";\r\nimport AvatarEditor from \"react-avatar-editor\";\r\nimport {hooks} from \"@kne/react-form-helper\";\r\nimport merge from 'lodash/merge';\r\n\r\nconst {useOnChange} = hooks;\r\nconst avatarParams = globalParams.field.avatar;\r\n\r\n\r\nconst _Avatar = ({\r\n className,\r\n value: imageUrl,\r\n onChange: propsChange,\r\n beforeUpload: onBeforeUpload,\r\n transformResponse,\r\n action,\r\n imageType,\r\n fileSize: size,\r\n children,\r\n onError,\r\n openEditor,\r\n editor: targetEditor,\r\n previewImg,\r\n previewRender\r\n }) => {\r\n const [loading, setLoading] = useState(false);\r\n const [showImageUrl, setImageUrl] = useState(imageUrl);\r\n const editorRef = useRef();\r\n\r\n const defaultEditor = {open: false, width: 250, height: 250, borderRadius: 1, text: \"确定\", title: \"裁剪图片\"};\r\n const editor = merge({}, defaultEditor, {open: openEditor}, targetEditor);\r\n\r\n useEffect(() => {\r\n setImageUrl(imageUrl);\r\n }, [imageUrl]);\r\n\r\n /* base64转blob */\r\n const dataURLtoBlob = (dataurl) => {\r\n let arr = dataurl.split(\",\");\r\n // 注意base64的最后面中括号和引号是不转译的\r\n let _arr = arr[1].substring(0, arr[1].length - 2);\r\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], {\r\n type: mime\r\n });\r\n };\r\n\r\n\r\n const AvatarEditorBox = ({file}) => {\r\n const [rotate, setRotate] = useState(0);\r\n const [scale, setScale] = useState(() => {\r\n if (editor.width === editor.height) {\r\n return 1;\r\n }\r\n return 0.35;\r\n });\r\n\r\n const onChange = (v) => {\r\n setRotate(v);\r\n };\r\n const onChangeScale = (v) => {\r\n setScale(v);\r\n };\r\n return (<div style={{\r\n \"width\": editor.width, \"margin\": \"auto\"\r\n }}>\r\n <AvatarEditor\r\n ref={editorRef}\r\n image={file}\r\n width={editor.width}\r\n height={editor.height}\r\n border={1}\r\n borderRadius={editor.borderRadius}\r\n color={[24, 144, 255, 1]} // RGBA\r\n scale={scale}\r\n rotate={rotate}\r\n />\r\n <Row gutter={4}>\r\n <Col span={4}><span>旋转</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange}/>\r\n </Col>\r\n </Row>\r\n <Row gutter={4}>\r\n <Col span={4}><span>放大</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3}\r\n onChange={onChangeScale}/>\r\n </Col>\r\n </Row>\r\n </div>);\r\n };\r\n\r\n const uploadButton = (<div>\r\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\r\n {children}\r\n </div>);\r\n\r\n const beforeUpload = async (file) => {\r\n return new Promise((resolve, reject) => {\r\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\r\n if (!isJpgOrPng) {\r\n onError(`只支持${imageType.map((str) => str.replace(\"image/\", \"\")).join(\"/\")}格式图片!`, \"typeError\", {\r\n type: imageType, fileType: file.type\r\n });\r\n reject();\r\n return false;\r\n }\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`图片不能超过${size}MB!`, \"sizeError\", {size, fileSize: file.size});\r\n reject();\r\n return false;\r\n }\r\n\r\n /*剪切图像*/\r\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\r\n if (editor.open) {\r\n Modal.success({\r\n title: editor.title,\r\n icon: \"\",\r\n width: editor.width * 2,\r\n content: <AvatarEditorBox file={file}/>,\r\n okText: editor.text,\r\n onOk: (close) => {\r\n let base64 = editorRef.current.getImage().toDataURL();\r\n setImageUrl(base64);\r\n let blob = dataURLtoBlob(base64);\r\n const files = new window.File([blob], file.name, {type: file.type});\r\n onBeforeUpload && onBeforeUpload(files);\r\n resolve(files);\r\n close();\r\n }\r\n });\r\n } else {\r\n onBeforeUpload && onBeforeUpload(file);\r\n resolve(file);\r\n }\r\n });\r\n\r\n };\r\n\r\n const onChange = (info) => {\r\n if (info.file.status === \"uploading\") {\r\n setLoading(true);\r\n return;\r\n }\r\n if (info.file.status === \"done\") {\r\n setLoading(false);\r\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\r\n if (response.code === 200) {\r\n propsChange(response.results);\r\n } else {\r\n onError(response.msg, \"xhrError\", response);\r\n }\r\n }\r\n };\r\n\r\n return (<>\r\n <Upload className={classnames(className, \"react-form-avatar\")} listType=\"picture-card\"\r\n showUploadList={false}\r\n action={action || avatarParams.action}\r\n beforeUpload={beforeUpload} onChange={onChange}>\r\n {previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) :\r\n <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\r\n </Upload>\r\n </>);\r\n};\r\n\r\n_Avatar.defaultProps = {\r\n imageType: [\"image/jpeg\", \"image/png\"],\r\n fileSize: 2, // 单位MB\r\n children: <div className=\"ant-upload-text\">点击上传</div>,\r\n onError: (info) => message.error(info),\r\n previewImg: true,\r\n previewRender: null,\r\n openEditor: false\r\n};\r\n\r\nconst AvatarInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Avatar);\r\n};\r\n\r\nAvatarInput.field = _Avatar;\r\n\r\nexport default AvatarInput;\r\n","import {Cascader as _Cascader} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst Cascader = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Cascader);\r\n};\r\n\r\nexport default Cascader;\r\n\r\n","import {Checkbox as _Checkbox} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\n\r\nconst WithCheckbox = withChecked(_Checkbox);\r\n\r\nconst Checkbox = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithCheckbox);\r\n};\r\n\r\nexport default Checkbox;\r\n","import {Checkbox} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _CheckboxGroup = Checkbox.Group;\r\n\r\nconst CheckboxGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(_CheckboxGroup);\r\n};\r\n\r\nCheckboxGroup.Checkbox = Checkbox;\r\n\r\nexport default CheckboxGroup;\r\n","import {DatePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\r\n\r\nconst _DatePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(DatePicker);\r\n};\r\n\r\nconst _MonthPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(MonthPicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n // if(props.selectToday){\r\n // return render(RangePickerToday);\r\n // }\r\n return render(RangePicker);\r\n};\r\n\r\nconst _WeekPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(WeekPicker);\r\n};\r\n\r\n_DatePicker.MonthPicker = _MonthPicker;\r\n_DatePicker.RangePicker = _RangePicker;\r\n_DatePicker.WeekPicker = _WeekPicker;\r\n\r\n\r\nexport default _DatePicker;\r\n","import {Button, DatePicker} from 'antd';\r\nimport React, {useRef, useEffect, useMemo} from 'react'\r\nimport moment from 'moment'\r\nimport get from 'lodash/get'\r\nimport useControlValue from '@kne/use-control-value'\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst PickerToday = (props) => {\r\n // console.log('>>>>data', data);\r\n const [data, onChange] = useControlValue(props);\r\n const ref_d = useRef();\r\n const newData = useMemo(() => {\r\n // console.log('......', data);\r\n const s = get(data, 0, '');\r\n const d = get(data, 1, '');\r\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\r\n return {\r\n start: s ? moment(s) : '',\r\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\r\n showZj: d === '至今',\r\n placeholder: p\r\n }\r\n }, [data]);\r\n\r\n const startChange = (v) => {\r\n // 比较日期大小\r\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\r\n onChange([newData.end, v]);\r\n return\r\n }\r\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\r\n };\r\n\r\n const endChange = (v) => {\r\n if (newData.start && v && v.isBefore(newData.start)) {\r\n onChange([v, newData.start]);\r\n return\r\n }\r\n onChange([newData.start, v || '']);\r\n };\r\n\r\n const foot = () => {\r\n return (\r\n <Button onClick={(v) => {\r\n ref_d.current.blur();\r\n onChange([newData.start || '', '至今']);\r\n }}>\r\n 至今\r\n </Button>\r\n )\r\n }\r\n return (\r\n <div style={{display: 'flex'}}>\r\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\r\n onChange={startChange}/>\r\n <div className={'svg_box'}>\r\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\r\n fill=\"currentColor\" aria-hidden=\"true\">\r\n <path\r\n d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"/>\r\n </svg>\r\n </div>\r\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\r\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\r\n <DatePicker {...{\r\n showToday: false,\r\n ...props,\r\n placeholder: newData.showZj ? '' : newData.placeholder[1],\r\n value: newData.end\r\n }} ref={ref_d}\r\n onChange={endChange} renderExtraFooter={foot}/>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n\r\nconst RangePickerToday = (props) => {\r\n const render = useOnChange(props);\r\n return render(PickerToday);\r\n};\r\n\r\nRangePickerToday.field = PickerToday;\r\n\r\nexport default RangePickerToday;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputField = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input);\r\n};\r\n\r\nInputField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputField;\r\n","import {InputNumber} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputNumberField = (props) => {\r\n const render = useDecorator(props);\r\n return render(InputNumber);\r\n};\r\n\r\nInputNumberField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputNumberField;\r\n","import React, {useCallback} from 'react';\r\nimport {Radio} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst RadioGroup = ({onChange, ...props})=>{\r\n const handler = useCallback((e) => {\r\n onChange && onChange(e.target.value);\r\n }, [onChange]);\r\n return <Radio.Group {...props} onChange={handler}/>\r\n};\r\n\r\nconst _RadioGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(RadioGroup);\r\n};\r\n\r\n_RadioGroup.Radio = Radio;\r\n\r\nexport default _RadioGroup;\r\n","import {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _Select = (props) => {\r\n const render = useOnChange(props);\r\n return render(Select);\r\n};\r\n\r\n_Select.Option = Select.Option;\r\n_Select.OptGroup = Select.OptGroup;\r\n\r\nexport default _Select;\r\n","import React from 'react';\r\nimport {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {withFetch} from '@kne/react-fetch';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\r\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\r\n});\r\n\r\nconst SelectFetch = (props) => {\r\n const render = useOnChange(props);\r\n return render(_SelectFetch);\r\n};\r\n\r\nSelectFetch.Option = Select.Option;\r\nSelectFetch.OptGroup = Select.OptGroup;\r\n\r\nexport default SelectFetch;\r\n","import {Switch as _Switch} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\nconst WithSwitch = withChecked(_Switch);\r\n\r\nconst Switch = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithSwitch);\r\n};\r\n\r\nexport default Switch;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst TextArea = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input.TextArea);\r\n};\r\n\r\nexport default TextArea;\r\n","import {TimePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {RangePicker} = TimePicker;\r\n\r\nconst _TimePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(TimePicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(RangePicker);\r\n};\r\n\r\n_TimePicker.RangePicker = _RangePicker;\r\n\r\nexport default _TimePicker;\r\n","import {TreeSelect} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _TreeSelect = (props) => {\r\n const render = useOnChange(props);\r\n return render(TreeSelect);\r\n};\r\n\r\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\r\n\r\nexport default _TreeSelect;\r\n","import React, {useState, useMemo} from 'react';\r\nimport {Upload, message, Button} from 'antd';\r\nimport {\r\n UploadOutlined\r\n} from '@ant-design/icons';\r\nimport get from 'lodash/get';\r\nimport groupBy from 'lodash/groupBy';\r\nimport uniqueId from 'lodash/uniqueId';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {globalParams} from \"../preset\";\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {Dragger} = Upload;\r\n\r\nconst uploadParams = globalParams.field.upload;\r\n\r\nconst computedFilename = (path, displayFilename = 'filename') => {\r\n const strArray = path.split('?');\r\n if (strArray[1]) {\r\n const query = {};\r\n strArray[1].split('&').forEach((str) => {\r\n const [key, value] = str.split('=');\r\n query[key] = value;\r\n });\r\n if (query[displayFilename]) {\r\n return decodeURIComponent(query[displayFilename]);\r\n }\r\n }\r\n return path;\r\n};\r\n\r\nconst valueToList = (value, displayFilename) => {\r\n if (!value) {\r\n return [];\r\n }\r\n return value.map((item) => {\r\n return {\r\n uid: uniqueId(),\r\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\r\n status: 'done',\r\n response: {code: 200, results: item}\r\n }\r\n });\r\n};\r\n\r\nconst listToValue = (value) => {\r\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\r\n};\r\n\r\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\r\n displayFilename = displayFilename || uploadParams.displayFilename;\r\n const [list, setList] = useState([]);\r\n const valueList = useMemo(() => {\r\n return valueToList(value.filter((url) => {\r\n return !list.find((file) => get(file, 'response.results') === url);\r\n }), displayFilename).concat(list);\r\n }, [list, value, displayFilename]);\r\n const changeHandler = (info) => {\r\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\r\n return;\r\n }\r\n if (info.fileList.length > maxLength) {\r\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\r\n return;\r\n }\r\n if (info.file.status === 'done') {\r\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\r\n if (info.file.response.code === 200) {\r\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\r\n onUploadComplete(info);\r\n } else {\r\n info.file.status = 'error';\r\n onError(info.file.response.msg, 'xhrError', info.file.response);\r\n }\r\n }\r\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\r\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\r\n onChange(listToValue(done));\r\n }\r\n setList(info.fileList);\r\n };\r\n const beforeUploadHandler = (file) => {\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\r\n return false;\r\n }\r\n if (maxLength === 1) {\r\n onChange([]);\r\n setList([]);\r\n }\r\n return onBeforeUpload && onBeforeUpload(file);\r\n };\r\n const UploadComponent = drag ? Dragger : Upload;\r\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\r\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\r\n {children}\r\n </UploadComponent>\r\n};\r\n\r\n_Upload.defaultProps = {\r\n value: [],\r\n accept: [],\r\n fileSize: 2,\r\n maxLength: 1,\r\n children: <Button><UploadOutlined/>点击上传</Button>,\r\n onError: (info) => message.error(info),\r\n onUploadComplete: () => {\r\n }\r\n};\r\n\r\nconst UploadInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Upload);\r\n};\r\n\r\n\r\nUploadInput.field = _Upload;\r\n\r\nexport default UploadInput;\r\n","import React from 'react';\r\nimport {useSubmit} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst SubmitButton = ({realTime, disabled, ...props}) => {\r\n const {isPass, isLoading, ...submitProps} = useSubmit(props);\r\n return (\r\n <Button loading={isLoading} disabled={disabled && (realTime ? !isPass : false)} {...submitProps} {...props}/>);\r\n};\r\n\r\nSubmitButton.defaultProps = {\r\n type: 'primary', disabled: false\r\n};\r\n\r\nexport default SubmitButton;\r\n","import React from 'react';\r\nimport {useReset} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst ResetButton = (props) => {\r\n const resetProps = useReset();\r\n return (\r\n <Button {...resetProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default ResetButton;\r\n","import React from 'react';\r\nimport {Modal, Space} from 'antd';\r\nimport SubmitButton from './SubmitButton';\r\nimport ResetButton from './ResetButton';\r\nimport Form from \"./Form\";\r\nimport {withFetch} from '@kne/react-fetch';\r\nimport classnames from 'classnames';\r\n\r\nconst FetchForm = withFetch(Form);\r\n\r\nconst CommonModal = ({formProps, footer, children}) => {\r\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\r\n return <TargetForm {...formProps}>\r\n <div className=\"ant-modal-body\">\r\n {children}\r\n </div>\r\n <div className=\"ant-modal-footer\">\r\n {footer ? footer : <Space>\r\n <ResetButton>重置</ResetButton>\r\n <SubmitButton type=\"primary\">确定</SubmitButton>\r\n </Space>}\r\n </div>\r\n </TargetForm>;\r\n};\r\n\r\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\r\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\r\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\r\n </Modal>\r\n};\r\n\r\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\r\n ...props,\r\n title: title ? <div className=\"ant-modal-header\">\r\n <div className=\"ant-modal-title\">{title}</div>\r\n </div> : null,\r\n className: classnames(className, 'react-form-modal'),\r\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\r\n icon: null,\r\n footer: null\r\n});\r\n\r\nexport default FormModal;\r\n","import React from 'react';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {Button} from 'antd';\r\n\r\nconst {useCacheRemove} = hooks;\r\n\r\nconst CancelButton = ({onClick, ...props}) => {\r\n const remove = useCacheRemove();\r\n return (<Button {...props} onClick={(...args) => {\r\n remove();\r\n onClick && onClick(...args);\r\n }}/>);\r\n};\r\n\r\nexport default CancelButton;\r\n","import Form from './Form';\n\nimport Avatar$ from './fields/Avatar';\nimport Cascader$ from './fields/Cascader';\nimport Checkbox$ from './fields/Checkbox';\nimport CheckboxGroup$ from './fields/CheckboxGroup';\nimport DatePicker$ from './fields/DatePicker';\nimport DatePickerToday$ from './fields/DatePickerToday';\nimport Input$ from './fields/Input';\nimport InputNumber$ from './fields/InputNumber';\nimport RadioGroup$ from './fields/RadioGroup';\nimport Select$ from './fields/Select';\nimport SelectFetch$ from './fields/SelectFetch';\nimport Switch$ from './fields/Switch';\nimport TextArea$ from './fields/TextArea';\nimport TimePicker$ from './fields/TimePicker';\nimport TreeSelect$ from './fields/TreeSelect';\nimport Upload$ from './fields/Upload';\n\nexport * from './Form';\nexport default Form;\nexport {default as preset} from './preset';\nexport {default as FormModal} from './FormModal';\nexport {default as ResetButton} from './ResetButton';\nexport {default as SubmitButton} from './SubmitButton';\nexport {default as CancelButton} from './CancelButton';\n\nexport const Avatar = Avatar$;\nexport const Cascader = Cascader$;\nexport const Checkbox = Checkbox$;\nexport const CheckboxGroup = CheckboxGroup$;\nexport const DatePicker = DatePicker$;\nexport const DatePickerToday = DatePickerToday$;\nexport const Input = Input$;\nexport const InputNumber = InputNumber$;\nexport const RadioGroup = RadioGroup$;\nexport const Select = Select$;\nexport const SelectFetch = SelectFetch$;\nexport const Switch = Switch$;\nexport const TextArea = TextArea$;\nexport const TimePicker = TimePicker$;\nexport const TreeSelect = TreeSelect$;\nexport const Upload = Upload$;\n\nexport const fields = { Avatar, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, Input, InputNumber, RadioGroup, Select, SelectFetch, Switch, TextArea, TimePicker, TreeSelect, Upload };"],"names":["ScrollToError","EnterSubmit","FormStore","MaxLabelProvider","SizeProvider","widget","Form","forwardRef","ref","className","cache","enterSubmit","scrollToError","scrollProps","type","size","children","props","computedClass","maxLabel","classnames","e","preventDefault","stopPropagation","ReactForm","defaultProps","block","propTypes","PropTypes","string","oneOf","bool","shape","behavior","inline","globalParams","rules","field","upload","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","value","imageUrl","onChange","propsChange","beforeUpload","onBeforeUpload","imageType","fileSize","onError","openEditor","editor","targetEditor","previewImg","previewRender","loading","setLoading","useState","showImageUrl","setImageUrl","editorRef","useRef","defaultEditor","open","width","height","borderRadius","text","title","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","v","onChangeScale","uploadButton","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","Modal","success","icon","content","okText","onOk","close","base64","current","getImage","toDataURL","blob","files","window","File","name","info","status","Upload","message","error","AvatarInput","render","Cascader","_Cascader","useCheckedToValue","withChecked","hoc","WithCheckbox","_Checkbox","Checkbox","checkedProps","_CheckboxGroup","Group","CheckboxGroup","MonthPicker","RangePicker","WeekPicker","DatePicker","_DatePicker","_MonthPicker","_RangePicker","_WeekPicker","PickerToday","data","useControlValue","ref_d","newData","useMemo","s","d","p","start","moment","end","showZj","placeholder","startChange","isBefore","endChange","foot","blur","display","showToday","RangePickerToday","useDecorator","InputField","Input","autoComplete","InputNumberField","InputNumber","RadioGroup","handler","useCallback","target","_RadioGroup","Radio","_Select","Select","Option","OptGroup","_SelectFetch","withFetch","setData","refresh","isLoading","SelectFetch","WithSwitch","_Switch","Switch","TextArea","TimePicker","_TimePicker","_TreeSelect","TreeSelect","TreeNode","Dragger","uploadParams","computedFilename","path","strArray","query","forEach","key","decodeURIComponent","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","_Upload","drag","accept","onUploadComplete","maxLength","list","setList","valueList","url","find","concat","changeHandler","fileList","done","groupBy","beforeUploadHandler","UploadComponent","UploadInput","SubmitButton","realTime","disabled","useSubmit","isPass","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","FormModal","modal","useCacheRemove","CancelButton","onClick","remove","args","Avatar","Avatar$","Cascader$","Checkbox$","CheckboxGroup$","DatePicker$","DatePickerToday","DatePickerToday$","Input$","InputNumber$","RadioGroup$","Select$","SelectFetch$","Switch$","TextArea$","TimePicker$","TreeSelect$","Upload$","fields"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kne/react-form-antd",
3
- "version": "2.0.13-alpha.0.3",
3
+ "version": "2.0.15",
4
4
  "description": "把@kne/react-form 表单校验逻辑应用到antd",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.modern.js",
@@ -9,7 +9,7 @@
9
9
  "init": "npm install && cd example && npm install",
10
10
  "create-fields": "node ./scripts/createIndex.js",
11
11
  "start": "run-p start:lib start:example",
12
- "build": "run-s build:lib build:example create-fields",
12
+ "build": "run-s create-fields build:lib build:example",
13
13
  "build:lib": "microbundle --no-compress --format modern,cjs --jsx React.createElement --jsxFragment React.Fragment",
14
14
  "start:lib": "microbundle watch --no-compress --format modern,cjs --jsx React.createElement --jsxFragment React.Fragment",
15
15
  "test": "run-s test:unit test:lint test:build",
@@ -61,7 +61,7 @@
61
61
  "@ant-design/icons": "^4.2.1",
62
62
  "@babel/runtime": "^7.10.3",
63
63
  "@kne/react-form": "^2.0.4",
64
- "@kne/react-form-helper": "^1.0.11",
64
+ "@kne/react-form-helper": "^1.0.12",
65
65
  "@kne/use-control-value": "^0.1.1",
66
66
  "classnames": "^2.2.6",
67
67
  "lodash": "^4.17.15",