@kne/react-form-antd 2.0.5 → 2.0.9

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
@@ -11,8 +11,8 @@ var AvatarEditor = require('react-avatar-editor');
11
11
  var moment = require('moment');
12
12
  var useControlValue = require('@kne/use-control-value');
13
13
  var reactFetch = require('@kne/react-fetch');
14
+ var groupBy = require('lodash/groupBy');
14
15
  var uniqueId = require('lodash/uniqueId');
15
- var isEqual = require('lodash/isEqual');
16
16
 
17
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
18
 
@@ -25,8 +25,8 @@ var get__default = /*#__PURE__*/_interopDefaultLegacy(get);
25
25
  var AvatarEditor__default = /*#__PURE__*/_interopDefaultLegacy(AvatarEditor);
26
26
  var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
27
27
  var useControlValue__default = /*#__PURE__*/_interopDefaultLegacy(useControlValue);
28
+ var groupBy__default = /*#__PURE__*/_interopDefaultLegacy(groupBy);
28
29
  var uniqueId__default = /*#__PURE__*/_interopDefaultLegacy(uniqueId);
29
- var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
30
30
 
31
31
  function _extends() {
32
32
  _extends = Object.assign || function (target) {
@@ -135,10 +135,12 @@ var globalParams = {
135
135
  upload: {
136
136
  action: '/open-api/upload_static_file/interview-manager',
137
137
  transformResponse: function transformResponse(response) {
138
+ var targetPath = get__default["default"](response, 'results[0].targetPath');
139
+ var filename = get__default["default"](response, 'results[0].filename');
138
140
  return {
139
141
  code: response.code,
140
142
  msg: response.msg,
141
- results: get__default["default"](response, 'results[0].targetPath')
143
+ results: targetPath + (filename ? '?filename=' + encodeURIComponent(filename) : '')
142
144
  };
143
145
  }
144
146
  },
@@ -683,13 +685,37 @@ var _TreeSelect = function _TreeSelect(props) {
683
685
 
684
686
  _TreeSelect.TreeNode = antd.TreeSelect.TreeNode;
685
687
 
686
- var _excluded$2 = ["value", "onChange"],
687
- _excluded2$1 = ["className", "value", "onChange", "onUploadComplete", "beforeUpload", "maxLength", "drag", "transformResponse", "action", "accept", "fileSize", "children", "onError"];
688
+ var _excluded$2 = ["action", "value", "onChange", "drag", "children", "displayFilename", "accept", "fileSize", "onError", "onUploadComplete", "onBeforeUpload", "maxLength", "transformResponse"];
688
689
  var useOnChange = reactFormHelper.hooks.useOnChange;
689
690
  var Dragger = antd.Upload.Dragger;
690
691
  var uploadParams = globalParams.field.upload;
691
692
 
692
- var valueToList = function valueToList(value) {
693
+ var computedFilename = function computedFilename(path, displayFilename) {
694
+ if (displayFilename === void 0) {
695
+ displayFilename = 'filename';
696
+ }
697
+
698
+ var strArray = path.split('?');
699
+
700
+ if (strArray[1]) {
701
+ var query = {};
702
+ strArray[1].split('&').forEach(function (str) {
703
+ var _str$split = str.split('='),
704
+ key = _str$split[0],
705
+ value = _str$split[1];
706
+
707
+ query[key] = value;
708
+ });
709
+
710
+ if (query[displayFilename]) {
711
+ return decodeURIComponent(query[displayFilename]);
712
+ }
713
+ }
714
+
715
+ return path;
716
+ };
717
+
718
+ var valueToList = function valueToList(value, displayFilename) {
693
719
  if (!value) {
694
720
  return [];
695
721
  }
@@ -697,7 +723,7 @@ var valueToList = function valueToList(value) {
697
723
  return value.map(function (item) {
698
724
  return {
699
725
  uid: uniqueId__default["default"](),
700
- name: item.substr(item.lastIndexOf('/') + 1),
726
+ name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),
701
727
  status: 'done',
702
728
  response: {
703
729
  code: 200,
@@ -708,7 +734,7 @@ var valueToList = function valueToList(value) {
708
734
  };
709
735
 
710
736
  var listToValue = function listToValue(value) {
711
- return value.slice(0).filter(function (_ref) {
737
+ return (value || []).slice(0).filter(function (_ref) {
712
738
  var status = _ref.status;
713
739
  return status === 'done';
714
740
  }).map(function (_ref2) {
@@ -717,87 +743,35 @@ var listToValue = function listToValue(value) {
717
743
  });
718
744
  };
719
745
 
720
- var withValueAdapter = function withValueAdapter(WrappedComponent) {
721
- return function (_ref3) {
722
- var value = _ref3.value,
723
- _onChange = _ref3.onChange,
724
- props = _objectWithoutPropertiesLoose(_ref3, _excluded$2);
725
-
726
- var _useState = React.useState([]),
727
- list = _useState[0],
728
- setList = _useState[1];
729
-
730
- var targetListRef = React.useRef([]);
731
- React.useEffect(function () {
732
- if (isEqual__default["default"](value, targetListRef.current)) {
733
- return;
734
- }
735
-
736
- setList(valueToList(value));
737
- }, [value]);
738
- return /*#__PURE__*/React__default["default"].createElement(WrappedComponent, _extends({}, props, {
739
- value: list,
740
- onChange: function onChange(value) {
741
- value = value.map(function (item) {
742
- return Object.assign({}, item);
743
- });
744
- setList(value);
745
- var targetList = listToValue(value);
746
- targetListRef.current = targetList;
747
-
748
- if (isEqual__default["default"](targetList, value)) {
749
- return;
750
- }
751
-
752
- _onChange(targetList);
753
- }
754
- }));
755
- };
756
- };
757
-
758
- var _Upload = function _Upload(_ref4) {
759
- var list = _ref4.value,
760
- setList = _ref4.onChange,
761
- onUploadComplete = _ref4.onUploadComplete,
762
- onBeforeUpload = _ref4.beforeUpload,
763
- maxLength = _ref4.maxLength,
764
- drag = _ref4.drag,
765
- transformResponse = _ref4.transformResponse,
766
- action = _ref4.action,
767
- accept = _ref4.accept,
768
- size = _ref4.fileSize,
769
- children = _ref4.children,
770
- onError = _ref4.onError,
771
- props = _objectWithoutPropertiesLoose(_ref4, _excluded2$1);
772
-
773
- var beforeUpload = function beforeUpload(file) {
774
- if (maxLength === 1) {
775
- setList([]);
776
- }
777
- /*const typeAllowed = accept.length === 0 || !!accept.find((type) => type === file.type);
778
- if (!typeAllowed) {
779
- onError(`只支持${accept.join('/')}格式文件!`, 'typeError', {
780
- type: accept,
781
- fileType: file.type
782
- });
783
- return false;
784
- }*/
785
-
786
-
787
- var isLt = file.size / 1024 / 1024 < size;
788
-
789
- if (!isLt) {
790
- onError("\u6587\u4EF6\u4E0D\u80FD\u8D85\u8FC7" + size + "MB!", 'sizeError', {
791
- size: size,
792
- fileSize: file.size
746
+ var _Upload = function _Upload(_ref3) {
747
+ var action = _ref3.action,
748
+ value = _ref3.value,
749
+ onChange = _ref3.onChange,
750
+ drag = _ref3.drag,
751
+ children = _ref3.children,
752
+ displayFilename = _ref3.displayFilename,
753
+ accept = _ref3.accept,
754
+ size = _ref3.fileSize,
755
+ onError = _ref3.onError,
756
+ onUploadComplete = _ref3.onUploadComplete,
757
+ onBeforeUpload = _ref3.onBeforeUpload,
758
+ maxLength = _ref3.maxLength,
759
+ transformResponse = _ref3.transformResponse,
760
+ props = _objectWithoutPropertiesLoose(_ref3, _excluded$2);
761
+
762
+ var _useState = React.useState([]),
763
+ list = _useState[0],
764
+ setList = _useState[1];
765
+
766
+ var valueList = React.useMemo(function () {
767
+ return valueToList(value.filter(function (url) {
768
+ return !list.find(function (file) {
769
+ return get__default["default"](file, 'response.results') === url;
793
770
  });
794
- return false;
795
- }
771
+ })).concat(list);
772
+ }, [list, value, displayFilename]);
796
773
 
797
- return onBeforeUpload && onBeforeUpload(file);
798
- };
799
-
800
- var onChange = function onChange(info) {
774
+ var changeHandler = function changeHandler(info) {
801
775
  if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {
802
776
  return;
803
777
  }
@@ -811,37 +785,52 @@ var _Upload = function _Upload(_ref4) {
811
785
  info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);
812
786
 
813
787
  if (info.file.response.code === 200) {
814
- info.file.name = info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1);
815
- onUploadComplete(info.file);
788
+ info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);
789
+ onUploadComplete(info);
816
790
  } else {
817
791
  info.file.status = 'error';
818
792
  onError(info.file.response.msg, 'xhrError', info.file.response);
819
793
  }
820
794
  }
821
795
 
822
- var newList = list.slice(0).filter(function (info) {
823
- return get__default["default"](info, 'file.status') !== 'removed';
824
- });
825
- var index = newList.findIndex(function (_ref5) {
826
- var uid = _ref5.uid;
827
- return uid === info.file.uid;
828
- });
829
- index > -1 && newList.splice(index, 1);
796
+ var _groupBy = groupBy__default["default"](info.fileList, function (file) {
797
+ return file.status === 'done' ? 'done' : 'uploading';
798
+ }),
799
+ done = _groupBy.done;
800
+
801
+ if (['done', 'removed'].indexOf(info.file.status) > -1) {
802
+ onChange(listToValue(done));
803
+ }
830
804
 
831
- if (info.file.status !== 'removed') {
832
- newList.push(info.file);
805
+ setList(info.fileList);
806
+ };
807
+
808
+ var beforeUploadHandler = function beforeUploadHandler(file) {
809
+ var isLt = file.size / 1024 / 1024 < size;
810
+
811
+ if (!isLt) {
812
+ onError("\u6587\u4EF6\u4E0D\u80FD\u8D85\u8FC7" + size + "MB!", 'sizeError', {
813
+ size: size,
814
+ fileSize: file.size
815
+ });
816
+ return false;
833
817
  }
834
818
 
835
- setList(newList);
819
+ if (maxLength === 1) {
820
+ onChange([]);
821
+ setList([]);
822
+ }
823
+
824
+ return onBeforeUpload && onBeforeUpload(file);
836
825
  };
837
826
 
838
827
  var UploadComponent = drag ? Dragger : antd.Upload;
839
828
  return /*#__PURE__*/React__default["default"].createElement(UploadComponent, _extends({}, props, {
840
829
  action: action || uploadParams.action,
841
- fileList: list,
830
+ fileList: valueList,
842
831
  accept: accept.join(','),
843
- onChange: onChange,
844
- beforeUpload: beforeUpload
832
+ onChange: changeHandler,
833
+ beforeUpload: beforeUploadHandler
845
834
  }), children);
846
835
  };
847
836
 
@@ -850,17 +839,17 @@ _Upload.defaultProps = {
850
839
  accept: [],
851
840
  fileSize: 2,
852
841
  maxLength: 1,
842
+ displayFilename: 'filename',
853
843
  children: /*#__PURE__*/React__default["default"].createElement(antd.Button, null, /*#__PURE__*/React__default["default"].createElement(icons.UploadOutlined, null), "\u70B9\u51FB\u4E0A\u4F20"),
854
844
  onError: function onError(info) {
855
845
  return antd.message.error(info);
856
846
  },
857
847
  onUploadComplete: function onUploadComplete() {}
858
848
  };
859
- var AdapterUpload = withValueAdapter(_Upload);
860
849
 
861
850
  var UploadInput = function UploadInput(props) {
862
851
  var render = useOnChange(props);
863
- return render(AdapterUpload);
852
+ return render(_Upload);
864
853
  };
865
854
 
866
855
  UploadInput.field = _Upload;
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';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport ReactForm from '@kne/react-form';\nimport {widget} from '@kne/react-form-helper';\nimport './assets/index.scss';\n\nexport * from '@kne/react-form';\nexport {hooks, utils} from '@kne/react-form-helper';\n\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\n\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\n let computedClass = 'react-form';\n if (type !== 'default') {\n computedClass += `--${type}`;\n }\n\n if (size !== 'middle') {\n computedClass += `--${size}`;\n }\n\n const maxLabel = <MaxLabelProvider>\n {children}\n </MaxLabelProvider>;\n\n return (\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}>\n <SizeProvider value={{size}}>\n <ReactForm {...props} ref={ref}>\n {cache ? <FormStore cache={cache}/> : null}\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\n {enterSubmit ? <EnterSubmit>\n {maxLabel}\n </EnterSubmit> : maxLabel}\n </ReactForm>\n </SizeProvider>\n </form>\n );\n});\n\nForm.defaultProps = {\n type: 'default',\n size: 'middle',\n scrollToError: true,\n enterSubmit: false,\n scrollProps: {\n block: 'center'\n }\n};\n\nForm.propTypes = {\n className: PropTypes.string,\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\n size: PropTypes.oneOf(['small', 'middle', 'large']),\n enterSubmit: PropTypes.bool,\n scrollToError: PropTypes.bool,\n scrollProps: PropTypes.shape({\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\n behavior: PropTypes.oneOf(['auto', 'smooth']),\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\n })\n};\n\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\nimport merge from 'lodash/merge';\nimport get from \"lodash/get\";\n\nexport const globalParams = {\n rules: {},\n field: {\n upload: {\n action: '/open-api/upload_static_file/interview-manager',\n transformResponse: (response) => {\n return {\n code: response.code,\n msg: response.msg,\n results: get(response, 'results[0].targetPath')\n };\n }\n },\n avatar: {\n transformResponse: (response) => {\n return {\n code: response.code,\n results: response.results,\n msg: response.msg\n }\n },\n action: '/upload'\n }\n }\n};\n\nexport default (props) => {\n merge(globalParams, props);\n presetRules(globalParams.rules);\n};","import React, {useState, useRef, useEffect} from 'react';\nimport {Upload, message, Modal, Slider, Row, Col, Space} from 'antd';\nimport {globalParams} from '../preset';\nimport classnames from 'classnames';\nimport {\n PlusOutlined,\n LoadingOutlined\n} from '@ant-design/icons';\nimport AvatarEditor from \"react-avatar-editor\";\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\nconst avatarParams = globalParams.field.avatar;\n\n\nconst _Avatar = ({className, value: imageUrl, onChange: propsChange, beforeUpload: onBeforeUpload, transformResponse, action, imageType, fileSize: size, children, onError, editor}) => {\n const [loading, setLoading] = useState(false);\n const [showImageUrl, setImageUrl] = useState(imageUrl);\n const editorRef = useRef();\n\n useEffect(() => {\n setImageUrl(imageUrl)\n }, [imageUrl])\n\n /* base64转blob */\n const dataURLtoBlob = (dataurl) => {\n let arr = dataurl.split(',');\n // 注意base64的最后面中括号和引号是不转译的\n let _arr = arr[1].substring(0, arr[1].length - 2);\n let mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(_arr),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime\n });\n };\n\n\n\n const AvatarEditorBox = ({file})=>{\n const [rotate, setRotate] = useState(0);\n const [scale, setScale] = useState(()=>{\n if(editor.width===editor.height){\n return 1\n }\n return 0.35\n });\n\n const onChange = (v)=>{\n console.log(v);\n setRotate(v);\n }\n const onChangeScale = (v)=>{\n console.log(v);\n setScale(v);\n }\n return (\n <div style={{'width': editor.width,\n 'margin': 'auto'}}>\n <AvatarEditor\n ref={editorRef}\n image={file}\n width={editor.width}\n height={editor.height}\n border={1}\n borderRadius={editor.borderRadius}\n color={[24, 144, 255, 1]} // RGBA\n scale={scale}\n rotate={rotate}\n />\n <Row gutter={4}>\n <Col span={4}><span>旋转</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange} />\n </Col>\n </Row>\n <Row gutter={4}>\n <Col span={4}><span>放大</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3} onChange={onChangeScale} />\n </Col>\n </Row>\n </div>\n )\n }\n\n const uploadButton = (\n <div>\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\n {children}\n </div>\n );\n\n const beforeUpload = async (file) => {\n return new Promise((resolve, reject) => {\n\n console.log('文件', file);\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\n if (!isJpgOrPng) {\n onError(`只支持${imageType.map((str) => str.replace('image/', '')).join('/')}格式图片!`, 'typeError', {\n type: imageType,\n fileType: file.type\n });\n reject();\n return false;\n }\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`图片不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n reject();\n return false;\n }\n\n /*剪切图像*/\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\n if (editor.open) {\n Modal.success({\n // title: '剪切图像',\n icon: '',\n width: editor.width*2,\n content: <AvatarEditorBox file={file}/>,\n okText: editor.text,\n onOk: (close) => {\n // console.log(editorRef.current);\n let base64 = editorRef.current.getImage().toDataURL();\n setImageUrl(base64);\n let blob = dataURLtoBlob(base64);\n const files = new window.File(\n [blob],\n file.name,\n { type: file.type }\n );\n onBeforeUpload && onBeforeUpload(files);\n resolve(files);\n // console.log(files);\n close();\n }\n })\n } else {\n onBeforeUpload && onBeforeUpload(file);\n resolve(file);\n // return onBeforeUpload && onBeforeUpload(file);\n }\n })\n\n };\n\n const onChange = (info) => {\n if (info.file.status === 'uploading') {\n setLoading(true);\n return;\n }\n if (info.file.status === 'done') {\n setLoading(false);\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\n if (response.code === 200) {\n propsChange(response.results);\n } else {\n onError(response.msg, 'xhrError', response);\n }\n }\n };\n\n return (\n <>\n <Upload className={classnames(className, 'react-form-avatar')} listType=\"picture-card\"\n showUploadList={false}\n action={action || avatarParams.action}\n beforeUpload={beforeUpload} onChange={onChange}>\n {showImageUrl ? <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\n </Upload>\n </>\n );\n};\n\n_Avatar.defaultProps = {\n imageType: ['image/jpeg', 'image/png'],\n fileSize: 2, // 单位MB\n children: <div className=\"ant-upload-text\">点击上传</div>,\n onError: (info) => message.error(info),\n editor: {open: false, width: 250, height: 250, borderRadius: 1, text: '剪切'}\n};\n\nconst AvatarInput = (props) => {\n const render = useOnChange(props);\n return render(_Avatar);\n};\n\nAvatarInput.field = _Avatar;\n\nexport default AvatarInput;\n","import {Cascader as _Cascader} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst Cascader = (props) => {\n const render = useOnChange(props);\n return render(_Cascader);\n};\n\nexport default Cascader;\n\n","import {Checkbox as _Checkbox} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\n\nconst WithCheckbox = withChecked(_Checkbox);\n\nconst Checkbox = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithCheckbox);\n};\n\nexport default Checkbox;\n","import {Checkbox} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _CheckboxGroup = Checkbox.Group;\n\nconst CheckboxGroup = (props) => {\n const render = useOnChange(props);\n return render(_CheckboxGroup);\n};\n\nCheckboxGroup.Checkbox = Checkbox;\n\nexport default CheckboxGroup;\n","import {DatePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\n\nconst _DatePicker = (props) => {\n const render = useOnChange(props);\n return render(DatePicker);\n};\n\nconst _MonthPicker = (props) => {\n const render = useOnChange(props);\n return render(MonthPicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n // if(props.selectToday){\n // return render(RangePickerToday);\n // }\n return render(RangePicker);\n};\n\nconst _WeekPicker = (props) => {\n const render = useOnChange(props);\n return render(WeekPicker);\n};\n\n_DatePicker.MonthPicker = _MonthPicker;\n_DatePicker.RangePicker = _RangePicker;\n_DatePicker.WeekPicker = _WeekPicker;\n\n\nexport default _DatePicker;\n","import {Button, DatePicker} from 'antd';\nimport React, {useRef, useEffect, useMemo} from 'react'\nimport moment from 'moment'\nimport get from 'lodash/get'\nimport useControlValue from '@kne/use-control-value'\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst PickerToday = (props) => {\n // console.log('>>>>data', data);\n const [data, onChange] = useControlValue(props);\n const ref_d = useRef();\n const newData = useMemo(() => {\n // console.log('......', data);\n const s = get(data, 0, '');\n const d = get(data, 1, '');\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\n return {\n start: s ? moment(s) : '',\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\n showZj: d === '至今',\n placeholder: p\n }\n }, [data]);\n\n const startChange = (v) => {\n // 比较日期大小\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\n onChange([newData.end, v]);\n return\n }\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\n };\n\n const endChange = (v) => {\n if (newData.start && v && v.isBefore(newData.start)) {\n onChange([v, newData.start]);\n return\n }\n onChange([newData.start, v || '']);\n };\n\n const foot = () => {\n return (\n <Button onClick={(v) => {\n ref_d.current.blur();\n onChange([newData.start || '', '至今']);\n }}>\n 至今\n </Button>\n )\n }\n return (\n <div style={{display: 'flex'}}>\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\n onChange={startChange}/>\n <div className={'svg_box'}>\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\n fill=\"currentColor\" aria-hidden=\"true\">\n <path\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\"/>\n </svg>\n </div>\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\n <DatePicker {...{\n showToday: false,\n ...props,\n placeholder: newData.showZj ? '' : newData.placeholder[1],\n value: newData.end\n }} ref={ref_d}\n onChange={endChange} renderExtraFooter={foot}/>\n </div>\n </div>\n );\n}\n\n\nconst RangePickerToday = (props) => {\n const render = useOnChange(props);\n return render(PickerToday);\n};\n\nRangePickerToday.field = PickerToday;\n\nexport default RangePickerToday;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputField = (props) => {\n const render = useDecorator(props);\n return render(Input);\n};\n\nInputField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputField;\n","import {InputNumber} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputNumberField = (props) => {\n const render = useDecorator(props);\n return render(InputNumber);\n};\n\nInputNumberField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputNumberField;\n","import React, {useCallback} from 'react';\nimport {Radio} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst RadioGroup = ({onChange, ...props})=>{\n const handler = useCallback((e) => {\n onChange && onChange(e.target.value);\n }, [onChange]);\n return <Radio.Group {...props} onChange={handler}/>\n};\n\nconst _RadioGroup = (props) => {\n const render = useOnChange(props);\n return render(RadioGroup);\n};\n\n_RadioGroup.Radio = Radio;\n\nexport default _RadioGroup;\n","import {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _Select = (props) => {\n const render = useOnChange(props);\n return render(Select);\n};\n\n_Select.Option = Select.Option;\n_Select.OptGroup = Select.OptGroup;\n\nexport default _Select;\n","import React from 'react';\nimport {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\nimport {withFetch} from '@kne/react-fetch';\n\nconst {useOnChange} = hooks;\n\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\n});\n\nconst SelectFetch = (props) => {\n const render = useOnChange(props);\n return render(_SelectFetch);\n};\n\nSelectFetch.Option = Select.Option;\nSelectFetch.OptGroup = Select.OptGroup;\n\nexport default SelectFetch;\n","import {Switch as _Switch} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\nconst WithSwitch = withChecked(_Switch);\n\nconst Switch = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithSwitch);\n};\n\nexport default Switch;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst TextArea = (props) => {\n const render = useDecorator(props);\n return render(Input.TextArea);\n};\n\nexport default TextArea;\n","import {TimePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {RangePicker} = TimePicker;\n\nconst _TimePicker = (props) => {\n const render = useOnChange(props);\n return render(TimePicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n return render(RangePicker);\n};\n\n_TimePicker.RangePicker = _RangePicker;\n\nexport default _TimePicker;\n","import {TreeSelect} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _TreeSelect = (props) => {\n const render = useOnChange(props);\n return render(TreeSelect);\n};\n\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\n\nexport default _TreeSelect;\n","import React, {useState, useEffect, useRef} from 'react';\nimport {Upload, message, Button} from 'antd';\nimport {\n UploadOutlined\n} from '@ant-design/icons';\nimport uniqueId from 'lodash/uniqueId';\nimport isEqual from 'lodash/isEqual';\nimport get from 'lodash/get';\nimport {hooks} from '@kne/react-form-helper';\nimport {globalParams} from \"../preset\";\n\nconst {useOnChange} = hooks;\n\nconst {Dragger} = Upload;\n\nconst uploadParams = globalParams.field.upload;\n\nconst valueToList = (value) => {\n if (!value) {\n return [];\n }\n return value.map((item) => ({\n uid: uniqueId(),\n name: item.substr(item.lastIndexOf('/') + 1),\n status: 'done',\n response: {code: 200, results: item}\n }));\n};\n\nconst listToValue = (value) => {\n return value.slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\n};\n\nconst withValueAdapter = (WrappedComponent) => ({value, onChange, ...props}) => {\n const [list, setList] = useState([]);\n\n const targetListRef = useRef([]);\n\n useEffect(() => {\n if (isEqual(value, targetListRef.current)) {\n return;\n }\n setList(valueToList(value));\n }, [value]);\n\n return <WrappedComponent {...props} value={list} onChange={(value) => {\n value = value.map((item) => Object.assign({}, item));\n setList(value);\n const targetList = listToValue(value);\n targetListRef.current = targetList;\n if (isEqual(targetList, value)) {\n return;\n }\n onChange(targetList);\n }}/>;\n};\n\nconst _Upload = ({className, value: list, onChange: setList, onUploadComplete, beforeUpload: onBeforeUpload, maxLength, drag, transformResponse, action, accept, fileSize: size, children, onError, ...props}) => {\n const beforeUpload = (file) => {\n if (maxLength === 1) {\n setList([]);\n }\n /*const typeAllowed = accept.length === 0 || !!accept.find((type) => type === file.type);\n if (!typeAllowed) {\n onError(`只支持${accept.join('/')}格式文件!`, 'typeError', {\n type: accept,\n fileType: file.type\n });\n return false;\n }*/\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n return false;\n }\n\n return onBeforeUpload && onBeforeUpload(file);\n };\n\n const onChange = (info) => {\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\n return;\n }\n if (info.fileList.length > maxLength) {\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\n return;\n }\n if (info.file.status === 'done') {\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\n if (info.file.response.code === 200) {\n info.file.name = info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1);\n onUploadComplete(info.file);\n } else {\n info.file.status = 'error';\n onError(info.file.response.msg, 'xhrError', info.file.response);\n }\n }\n const newList = list.slice(0).filter((info) => {\n return get(info, 'file.status') !== 'removed';\n });\n const index = newList.findIndex(({uid}) => uid === info.file.uid);\n index > -1 && newList.splice(index, 1);\n if (info.file.status !== 'removed') {\n newList.push(info.file);\n }\n setList(newList);\n };\n\n const UploadComponent = drag ? Dragger : Upload;\n\n return (\n <UploadComponent {...props} action={action || uploadParams.action} fileList={list} accept={accept.join(',')}\n onChange={onChange}\n beforeUpload={beforeUpload}\n >\n {children}\n </UploadComponent>\n );\n};\n\n_Upload.defaultProps = {\n value: [],\n accept: [],\n fileSize: 2,\n maxLength: 1,\n children: <Button><UploadOutlined/>点击上传</Button>,\n onError: (info) => message.error(info),\n onUploadComplete: () => {\n }\n};\n\nconst AdapterUpload = withValueAdapter(_Upload);\n\nconst UploadInput = (props) => {\n const render = useOnChange(props);\n return render(AdapterUpload);\n};\n\nUploadInput.field = _Upload;\n\nexport default UploadInput;\n","import React from 'react';\nimport {useSubmit} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst SubmitButton = (props) => {\n const {isPass, isLoading,...submitProps} = useSubmit(props);\n return (\n <Button loading={isLoading} {...submitProps} {...props}/>\n );\n};\n\nexport default SubmitButton;\n","import React from 'react';\nimport {useReset} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst ResetButton = (props) => {\n const resetProps = useReset();\n return (\n <Button {...resetProps} {...props}/>\n );\n};\n\nexport default ResetButton;\n","import React from 'react';\nimport {Modal, Space} from 'antd';\nimport SubmitButton from './SubmitButton';\nimport ResetButton from './ResetButton';\nimport Form from \"./Form\";\nimport {withFetch} from '@kne/react-fetch';\nimport classnames from 'classnames';\n\nconst FetchForm = withFetch(Form);\n\nconst CommonModal = ({formProps, footer, children}) => {\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\n return <TargetForm {...formProps}>\n <div className=\"ant-modal-body\">\n {children}\n </div>\n <div className=\"ant-modal-footer\">\n {footer ? footer : <Space>\n <ResetButton>重置</ResetButton>\n <SubmitButton type=\"primary\">确定</SubmitButton>\n </Space>}\n </div>\n </TargetForm>;\n};\n\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\n </Modal>\n};\n\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\n ...props,\n title: title ? <div className=\"ant-modal-header\">\n <div className=\"ant-modal-title\">{title}</div>\n </div> : null,\n className: classnames(className, 'react-form-modal'),\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\n icon: null,\n footer: null\n});\n\nexport default FormModal;\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","action","transformResponse","response","code","msg","results","get","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","imageUrl","value","propsChange","onChange","onBeforeUpload","beforeUpload","imageType","fileSize","onError","editor","useState","loading","setLoading","showImageUrl","setImageUrl","editorRef","useRef","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","width","height","scale","setScale","v","console","log","onChangeScale","AvatarEditor","borderRadius","Row","Col","Slider","uploadButton","LoadingOutlined","PlusOutlined","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","open","Modal","success","icon","content","okText","text","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","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","withValueAdapter","WrappedComponent","list","setList","targetListRef","isEqual","Object","assign","targetList","_Upload","onUploadComplete","maxLength","drag","accept","fileList","newList","index","findIndex","splice","push","UploadComponent","UploadOutlined","AdapterUpload","UploadInput","SubmitButton","useSubmit","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","Space","FormModal","modal","title","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.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';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport ReactForm from '@kne/react-form';\nimport {widget} from '@kne/react-form-helper';\nimport './assets/index.scss';\n\nexport * from '@kne/react-form';\nexport {hooks, utils} from '@kne/react-form-helper';\n\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\n\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\n let computedClass = 'react-form';\n if (type !== 'default') {\n computedClass += `--${type}`;\n }\n\n if (size !== 'middle') {\n computedClass += `--${size}`;\n }\n\n const maxLabel = <MaxLabelProvider>\n {children}\n </MaxLabelProvider>;\n\n return (\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}>\n <SizeProvider value={{size}}>\n <ReactForm {...props} ref={ref}>\n {cache ? <FormStore cache={cache}/> : null}\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\n {enterSubmit ? <EnterSubmit>\n {maxLabel}\n </EnterSubmit> : maxLabel}\n </ReactForm>\n </SizeProvider>\n </form>\n );\n});\n\nForm.defaultProps = {\n type: 'default',\n size: 'middle',\n scrollToError: true,\n enterSubmit: false,\n scrollProps: {\n block: 'center'\n }\n};\n\nForm.propTypes = {\n className: PropTypes.string,\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\n size: PropTypes.oneOf(['small', 'middle', 'large']),\n enterSubmit: PropTypes.bool,\n scrollToError: PropTypes.bool,\n scrollProps: PropTypes.shape({\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\n behavior: PropTypes.oneOf(['auto', 'smooth']),\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\n })\n};\n\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\nimport merge from 'lodash/merge';\nimport get from \"lodash/get\";\n\nexport const globalParams = {\n rules: {},\n field: {\n upload: {\n action: '/open-api/upload_static_file/interview-manager',\n transformResponse: (response) => {\n const targetPath = get(response, 'results[0].targetPath');\n const filename = get(response, 'results[0].filename');\n return {\n code: response.code,\n msg: response.msg,\n results: targetPath + (filename ? '?filename=' + encodeURIComponent(filename) : '')\n };\n }\n },\n avatar: {\n transformResponse: (response) => {\n return {\n code: response.code,\n results: response.results,\n msg: response.msg\n }\n },\n action: '/upload'\n }\n }\n};\n\nexport default (props) => {\n merge(globalParams, props);\n presetRules(globalParams.rules);\n};\n","import React, {useState, useRef, useEffect} from 'react';\nimport {Upload, message, Modal, Slider, Row, Col, Space} from 'antd';\nimport {globalParams} from '../preset';\nimport classnames from 'classnames';\nimport {\n PlusOutlined,\n LoadingOutlined\n} from '@ant-design/icons';\nimport AvatarEditor from \"react-avatar-editor\";\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\nconst avatarParams = globalParams.field.avatar;\n\n\nconst _Avatar = ({className, value: imageUrl, onChange: propsChange, beforeUpload: onBeforeUpload, transformResponse, action, imageType, fileSize: size, children, onError, editor}) => {\n const [loading, setLoading] = useState(false);\n const [showImageUrl, setImageUrl] = useState(imageUrl);\n const editorRef = useRef();\n\n useEffect(() => {\n setImageUrl(imageUrl)\n }, [imageUrl])\n\n /* base64转blob */\n const dataURLtoBlob = (dataurl) => {\n let arr = dataurl.split(',');\n // 注意base64的最后面中括号和引号是不转译的\n let _arr = arr[1].substring(0, arr[1].length - 2);\n let mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(_arr),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime\n });\n };\n\n\n\n const AvatarEditorBox = ({file})=>{\n const [rotate, setRotate] = useState(0);\n const [scale, setScale] = useState(()=>{\n if(editor.width===editor.height){\n return 1\n }\n return 0.35\n });\n\n const onChange = (v)=>{\n console.log(v);\n setRotate(v);\n }\n const onChangeScale = (v)=>{\n console.log(v);\n setScale(v);\n }\n return (\n <div style={{'width': editor.width,\n 'margin': 'auto'}}>\n <AvatarEditor\n ref={editorRef}\n image={file}\n width={editor.width}\n height={editor.height}\n border={1}\n borderRadius={editor.borderRadius}\n color={[24, 144, 255, 1]} // RGBA\n scale={scale}\n rotate={rotate}\n />\n <Row gutter={4}>\n <Col span={4}><span>旋转</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange} />\n </Col>\n </Row>\n <Row gutter={4}>\n <Col span={4}><span>放大</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3} onChange={onChangeScale} />\n </Col>\n </Row>\n </div>\n )\n }\n\n const uploadButton = (\n <div>\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\n {children}\n </div>\n );\n\n const beforeUpload = async (file) => {\n return new Promise((resolve, reject) => {\n\n console.log('文件', file);\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\n if (!isJpgOrPng) {\n onError(`只支持${imageType.map((str) => str.replace('image/', '')).join('/')}格式图片!`, 'typeError', {\n type: imageType,\n fileType: file.type\n });\n reject();\n return false;\n }\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`图片不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n reject();\n return false;\n }\n\n /*剪切图像*/\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\n if (editor.open) {\n Modal.success({\n // title: '剪切图像',\n icon: '',\n width: editor.width*2,\n content: <AvatarEditorBox file={file}/>,\n okText: editor.text,\n onOk: (close) => {\n // console.log(editorRef.current);\n let base64 = editorRef.current.getImage().toDataURL();\n setImageUrl(base64);\n let blob = dataURLtoBlob(base64);\n const files = new window.File(\n [blob],\n file.name,\n { type: file.type }\n );\n onBeforeUpload && onBeforeUpload(files);\n resolve(files);\n // console.log(files);\n close();\n }\n })\n } else {\n onBeforeUpload && onBeforeUpload(file);\n resolve(file);\n // return onBeforeUpload && onBeforeUpload(file);\n }\n })\n\n };\n\n const onChange = (info) => {\n if (info.file.status === 'uploading') {\n setLoading(true);\n return;\n }\n if (info.file.status === 'done') {\n setLoading(false);\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\n if (response.code === 200) {\n propsChange(response.results);\n } else {\n onError(response.msg, 'xhrError', response);\n }\n }\n };\n\n return (\n <>\n <Upload className={classnames(className, 'react-form-avatar')} listType=\"picture-card\"\n showUploadList={false}\n action={action || avatarParams.action}\n beforeUpload={beforeUpload} onChange={onChange}>\n {showImageUrl ? <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\n </Upload>\n </>\n );\n};\n\n_Avatar.defaultProps = {\n imageType: ['image/jpeg', 'image/png'],\n fileSize: 2, // 单位MB\n children: <div className=\"ant-upload-text\">点击上传</div>,\n onError: (info) => message.error(info),\n editor: {open: false, width: 250, height: 250, borderRadius: 1, text: '剪切'}\n};\n\nconst AvatarInput = (props) => {\n const render = useOnChange(props);\n return render(_Avatar);\n};\n\nAvatarInput.field = _Avatar;\n\nexport default AvatarInput;\n","import {Cascader as _Cascader} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst Cascader = (props) => {\n const render = useOnChange(props);\n return render(_Cascader);\n};\n\nexport default Cascader;\n\n","import {Checkbox as _Checkbox} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\n\nconst WithCheckbox = withChecked(_Checkbox);\n\nconst Checkbox = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithCheckbox);\n};\n\nexport default Checkbox;\n","import {Checkbox} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _CheckboxGroup = Checkbox.Group;\n\nconst CheckboxGroup = (props) => {\n const render = useOnChange(props);\n return render(_CheckboxGroup);\n};\n\nCheckboxGroup.Checkbox = Checkbox;\n\nexport default CheckboxGroup;\n","import {DatePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\n\nconst _DatePicker = (props) => {\n const render = useOnChange(props);\n return render(DatePicker);\n};\n\nconst _MonthPicker = (props) => {\n const render = useOnChange(props);\n return render(MonthPicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n // if(props.selectToday){\n // return render(RangePickerToday);\n // }\n return render(RangePicker);\n};\n\nconst _WeekPicker = (props) => {\n const render = useOnChange(props);\n return render(WeekPicker);\n};\n\n_DatePicker.MonthPicker = _MonthPicker;\n_DatePicker.RangePicker = _RangePicker;\n_DatePicker.WeekPicker = _WeekPicker;\n\n\nexport default _DatePicker;\n","import {Button, DatePicker} from 'antd';\nimport React, {useRef, useEffect, useMemo} from 'react'\nimport moment from 'moment'\nimport get from 'lodash/get'\nimport useControlValue from '@kne/use-control-value'\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst PickerToday = (props) => {\n // console.log('>>>>data', data);\n const [data, onChange] = useControlValue(props);\n const ref_d = useRef();\n const newData = useMemo(() => {\n // console.log('......', data);\n const s = get(data, 0, '');\n const d = get(data, 1, '');\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\n return {\n start: s ? moment(s) : '',\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\n showZj: d === '至今',\n placeholder: p\n }\n }, [data]);\n\n const startChange = (v) => {\n // 比较日期大小\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\n onChange([newData.end, v]);\n return\n }\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\n };\n\n const endChange = (v) => {\n if (newData.start && v && v.isBefore(newData.start)) {\n onChange([v, newData.start]);\n return\n }\n onChange([newData.start, v || '']);\n };\n\n const foot = () => {\n return (\n <Button onClick={(v) => {\n ref_d.current.blur();\n onChange([newData.start || '', '至今']);\n }}>\n 至今\n </Button>\n )\n }\n return (\n <div style={{display: 'flex'}}>\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\n onChange={startChange}/>\n <div className={'svg_box'}>\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\n fill=\"currentColor\" aria-hidden=\"true\">\n <path\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\"/>\n </svg>\n </div>\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\n <DatePicker {...{\n showToday: false,\n ...props,\n placeholder: newData.showZj ? '' : newData.placeholder[1],\n value: newData.end\n }} ref={ref_d}\n onChange={endChange} renderExtraFooter={foot}/>\n </div>\n </div>\n );\n}\n\n\nconst RangePickerToday = (props) => {\n const render = useOnChange(props);\n return render(PickerToday);\n};\n\nRangePickerToday.field = PickerToday;\n\nexport default RangePickerToday;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputField = (props) => {\n const render = useDecorator(props);\n return render(Input);\n};\n\nInputField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputField;\n","import {InputNumber} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputNumberField = (props) => {\n const render = useDecorator(props);\n return render(InputNumber);\n};\n\nInputNumberField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputNumberField;\n","import React, {useCallback} from 'react';\nimport {Radio} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst RadioGroup = ({onChange, ...props})=>{\n const handler = useCallback((e) => {\n onChange && onChange(e.target.value);\n }, [onChange]);\n return <Radio.Group {...props} onChange={handler}/>\n};\n\nconst _RadioGroup = (props) => {\n const render = useOnChange(props);\n return render(RadioGroup);\n};\n\n_RadioGroup.Radio = Radio;\n\nexport default _RadioGroup;\n","import {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _Select = (props) => {\n const render = useOnChange(props);\n return render(Select);\n};\n\n_Select.Option = Select.Option;\n_Select.OptGroup = Select.OptGroup;\n\nexport default _Select;\n","import React from 'react';\nimport {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\nimport {withFetch} from '@kne/react-fetch';\n\nconst {useOnChange} = hooks;\n\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\n});\n\nconst SelectFetch = (props) => {\n const render = useOnChange(props);\n return render(_SelectFetch);\n};\n\nSelectFetch.Option = Select.Option;\nSelectFetch.OptGroup = Select.OptGroup;\n\nexport default SelectFetch;\n","import {Switch as _Switch} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\nconst WithSwitch = withChecked(_Switch);\n\nconst Switch = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithSwitch);\n};\n\nexport default Switch;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst TextArea = (props) => {\n const render = useDecorator(props);\n return render(Input.TextArea);\n};\n\nexport default TextArea;\n","import {TimePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {RangePicker} = TimePicker;\n\nconst _TimePicker = (props) => {\n const render = useOnChange(props);\n return render(TimePicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n return render(RangePicker);\n};\n\n_TimePicker.RangePicker = _RangePicker;\n\nexport default _TimePicker;\n","import {TreeSelect} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _TreeSelect = (props) => {\n const render = useOnChange(props);\n return render(TreeSelect);\n};\n\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\n\nexport default _TreeSelect;\n","import React, {useState, useMemo} from 'react';\nimport {Upload, message, Button} from 'antd';\nimport {\n UploadOutlined\n} from '@ant-design/icons';\nimport get from 'lodash/get';\nimport groupBy from 'lodash/groupBy';\nimport uniqueId from 'lodash/uniqueId';\nimport {hooks} from '@kne/react-form-helper';\nimport {globalParams} from \"../preset\";\n\nconst {useOnChange} = hooks;\n\nconst {Dragger} = Upload;\n\nconst uploadParams = globalParams.field.upload;\n\nconst computedFilename = (path, displayFilename = 'filename') => {\n const strArray = path.split('?');\n if (strArray[1]) {\n const query = {};\n strArray[1].split('&').forEach((str) => {\n const [key, value] = str.split('=');\n query[key] = value;\n });\n if (query[displayFilename]) {\n return decodeURIComponent(query[displayFilename]);\n }\n }\n return path;\n};\n\nconst valueToList = (value, displayFilename) => {\n if (!value) {\n return [];\n }\n return value.map((item) => {\n return {\n uid: uniqueId(),\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\n status: 'done',\n response: {code: 200, results: item}\n }\n });\n};\n\nconst listToValue = (value) => {\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\n};\n\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\n const [list, setList] = useState([]);\n const valueList = useMemo(() => {\n return valueToList(value.filter((url) => {\n return !list.find((file) => get(file, 'response.results') === url);\n })).concat(list);\n }, [list, value, displayFilename]);\n const changeHandler = (info) => {\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\n return;\n }\n if (info.fileList.length > maxLength) {\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\n return;\n }\n if (info.file.status === 'done') {\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\n if (info.file.response.code === 200) {\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\n onUploadComplete(info);\n } else {\n info.file.status = 'error';\n onError(info.file.response.msg, 'xhrError', info.file.response);\n }\n }\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\n onChange(listToValue(done));\n }\n setList(info.fileList);\n };\n const beforeUploadHandler = (file) => {\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n return false;\n }\n if (maxLength === 1) {\n onChange([]);\n setList([]);\n }\n return onBeforeUpload && onBeforeUpload(file);\n };\n const UploadComponent = drag ? Dragger : Upload;\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\n {children}\n </UploadComponent>\n};\n\n_Upload.defaultProps = {\n value: [],\n accept: [],\n fileSize: 2,\n maxLength: 1,\n displayFilename: 'filename',\n children: <Button><UploadOutlined/>点击上传</Button>,\n onError: (info) => message.error(info),\n onUploadComplete: () => {\n }\n};\n\nconst UploadInput = (props) => {\n const render = useOnChange(props);\n return render(_Upload);\n};\n\n\nUploadInput.field = _Upload;\n\nexport default UploadInput;\n","import React from 'react';\nimport {useSubmit} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst SubmitButton = (props) => {\n const {isPass, isLoading,...submitProps} = useSubmit(props);\n return (\n <Button loading={isLoading} {...submitProps} {...props}/>\n );\n};\n\nexport default SubmitButton;\n","import React from 'react';\nimport {useReset} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst ResetButton = (props) => {\n const resetProps = useReset();\n return (\n <Button {...resetProps} {...props}/>\n );\n};\n\nexport default ResetButton;\n","import React from 'react';\nimport {Modal, Space} from 'antd';\nimport SubmitButton from './SubmitButton';\nimport ResetButton from './ResetButton';\nimport Form from \"./Form\";\nimport {withFetch} from '@kne/react-fetch';\nimport classnames from 'classnames';\n\nconst FetchForm = withFetch(Form);\n\nconst CommonModal = ({formProps, footer, children}) => {\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\n return <TargetForm {...formProps}>\n <div className=\"ant-modal-body\">\n {children}\n </div>\n <div className=\"ant-modal-footer\">\n {footer ? footer : <Space>\n <ResetButton>重置</ResetButton>\n <SubmitButton type=\"primary\">确定</SubmitButton>\n </Space>}\n </div>\n </TargetForm>;\n};\n\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\n </Modal>\n};\n\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\n ...props,\n title: title ? <div className=\"ant-modal-header\">\n <div className=\"ant-modal-title\">{title}</div>\n </div> : null,\n className: classnames(className, 'react-form-modal'),\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\n icon: null,\n footer: null\n});\n\nexport default FormModal;\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","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","editor","useState","loading","setLoading","showImageUrl","setImageUrl","editorRef","useRef","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","width","height","scale","setScale","v","console","log","onChangeScale","AvatarEditor","borderRadius","Row","Col","Slider","uploadButton","LoadingOutlined","PlusOutlined","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","open","Modal","success","icon","content","okText","text","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","displayFilename","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","title","Avatar","Avatar$","Cascader$","Checkbox$","CheckboxGroup$","DatePicker$","DatePickerToday","DatePickerToday$","Input$","InputNumber$","RadioGroup$","Select$","SelectFetch$","Switch$","TextArea$","TimePicker$","TreeSelect$","Upload$","fields"],"mappings":"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"}
@@ -13,8 +13,8 @@ import AvatarEditor from 'react-avatar-editor';
13
13
  import moment from 'moment';
14
14
  import useControlValue from '@kne/use-control-value';
15
15
  import { withFetch } from '@kne/react-fetch';
16
+ import groupBy from 'lodash/groupBy';
16
17
  import uniqueId from 'lodash/uniqueId';
17
- import isEqual from 'lodash/isEqual';
18
18
 
19
19
  function _extends() {
20
20
  _extends = Object.assign || function (target) {
@@ -127,10 +127,12 @@ const globalParams = {
127
127
  upload: {
128
128
  action: '/open-api/upload_static_file/interview-manager',
129
129
  transformResponse: response => {
130
+ const targetPath = get(response, 'results[0].targetPath');
131
+ const filename = get(response, 'results[0].filename');
130
132
  return {
131
133
  code: response.code,
132
134
  msg: response.msg,
133
- results: get(response, 'results[0].targetPath')
135
+ results: targetPath + (filename ? '?filename=' + encodeURIComponent(filename) : '')
134
136
  };
135
137
  }
136
138
  },
@@ -577,7 +579,7 @@ const {
577
579
  useOnChange: useOnChange$6
578
580
  } = hooks;
579
581
 
580
- const RadioGroup$1 = (_ref) => {
582
+ const RadioGroup$1 = _ref => {
581
583
  let {
582
584
  onChange
583
585
  } = _ref,
@@ -615,7 +617,7 @@ const {
615
617
  useOnChange: useOnChange$4
616
618
  } = hooks;
617
619
 
618
- const _SelectFetch = withFetch((_ref) => {
620
+ const _SelectFetch = withFetch(_ref => {
619
621
  let {
620
622
  data,
621
623
  setData,
@@ -695,8 +697,7 @@ const _TreeSelect = props => {
695
697
 
696
698
  _TreeSelect.TreeNode = TreeSelect$1.TreeNode;
697
699
 
698
- const _excluded$2 = ["value", "onChange"],
699
- _excluded2$1 = ["className", "value", "onChange", "onUploadComplete", "beforeUpload", "maxLength", "drag", "transformResponse", "action", "accept", "fileSize", "children", "onError"];
700
+ const _excluded$2 = ["action", "value", "onChange", "drag", "children", "displayFilename", "accept", "fileSize", "onError", "onUploadComplete", "onBeforeUpload", "maxLength", "transformResponse"];
700
701
  const {
701
702
  useOnChange
702
703
  } = hooks;
@@ -705,108 +706,76 @@ const {
705
706
  } = Upload$1;
706
707
  const uploadParams = globalParams.field.upload;
707
708
 
708
- const valueToList = value => {
709
+ const computedFilename = (path, displayFilename = 'filename') => {
710
+ const strArray = path.split('?');
711
+
712
+ if (strArray[1]) {
713
+ const query = {};
714
+ strArray[1].split('&').forEach(str => {
715
+ const [key, value] = str.split('=');
716
+ query[key] = value;
717
+ });
718
+
719
+ if (query[displayFilename]) {
720
+ return decodeURIComponent(query[displayFilename]);
721
+ }
722
+ }
723
+
724
+ return path;
725
+ };
726
+
727
+ const valueToList = (value, displayFilename) => {
709
728
  if (!value) {
710
729
  return [];
711
730
  }
712
731
 
713
- return value.map(item => ({
714
- uid: uniqueId(),
715
- name: item.substr(item.lastIndexOf('/') + 1),
716
- status: 'done',
717
- response: {
718
- code: 200,
719
- results: item
720
- }
721
- }));
732
+ return value.map(item => {
733
+ return {
734
+ uid: uniqueId(),
735
+ name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),
736
+ status: 'done',
737
+ response: {
738
+ code: 200,
739
+ results: item
740
+ }
741
+ };
742
+ });
722
743
  };
723
744
 
724
745
  const listToValue = value => {
725
- return value.slice(0).filter(({
746
+ return (value || []).slice(0).filter(({
726
747
  status
727
748
  }) => status === 'done').map(({
728
749
  response
729
750
  }) => response.results);
730
751
  };
731
752
 
732
- const withValueAdapter = WrappedComponent => (_ref) => {
753
+ const _Upload = _ref => {
733
754
  let {
755
+ action,
734
756
  value,
735
- onChange
736
- } = _ref,
737
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
738
-
739
- const [list, setList] = useState([]);
740
- const targetListRef = useRef([]);
741
- useEffect(() => {
742
- if (isEqual(value, targetListRef.current)) {
743
- return;
744
- }
745
-
746
- setList(valueToList(value));
747
- }, [value]);
748
- return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, props, {
749
- value: list,
750
- onChange: value => {
751
- value = value.map(item => Object.assign({}, item));
752
- setList(value);
753
- const targetList = listToValue(value);
754
- targetListRef.current = targetList;
755
-
756
- if (isEqual(targetList, value)) {
757
- return;
758
- }
759
-
760
- onChange(targetList);
761
- }
762
- }));
763
- };
764
-
765
- const _Upload = (_ref2) => {
766
- let {
767
- value: list,
768
- onChange: setList,
769
- onUploadComplete,
770
- beforeUpload: onBeforeUpload,
771
- maxLength,
757
+ onChange,
772
758
  drag,
773
- transformResponse,
774
- action,
759
+ children,
760
+ displayFilename,
775
761
  accept,
776
762
  fileSize: size,
777
- children,
778
- onError
779
- } = _ref2,
780
- props = _objectWithoutPropertiesLoose(_ref2, _excluded2$1);
781
-
782
- const beforeUpload = file => {
783
- if (maxLength === 1) {
784
- setList([]);
785
- }
786
- /*const typeAllowed = accept.length === 0 || !!accept.find((type) => type === file.type);
787
- if (!typeAllowed) {
788
- onError(`只支持${accept.join('/')}格式文件!`, 'typeError', {
789
- type: accept,
790
- fileType: file.type
791
- });
792
- return false;
793
- }*/
794
-
795
-
796
- const isLt = file.size / 1024 / 1024 < size;
797
-
798
- if (!isLt) {
799
- onError(`文件不能超过${size}MB!`, 'sizeError', {
800
- size,
801
- fileSize: file.size
802
- });
803
- return false;
804
- }
763
+ onError,
764
+ onUploadComplete,
765
+ onBeforeUpload,
766
+ maxLength,
767
+ transformResponse
768
+ } = _ref,
769
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
805
770
 
806
- return onBeforeUpload && onBeforeUpload(file);
807
- };
771
+ const [list, setList] = useState([]);
772
+ const valueList = useMemo(() => {
773
+ return valueToList(value.filter(url => {
774
+ return !list.find(file => get(file, 'response.results') === url);
775
+ })).concat(list);
776
+ }, [list, value, displayFilename]);
808
777
 
809
- const onChange = info => {
778
+ const changeHandler = info => {
810
779
  if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {
811
780
  return;
812
781
  }
@@ -820,36 +789,51 @@ const _Upload = (_ref2) => {
820
789
  info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);
821
790
 
822
791
  if (info.file.response.code === 200) {
823
- info.file.name = info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1);
824
- onUploadComplete(info.file);
792
+ info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);
793
+ onUploadComplete(info);
825
794
  } else {
826
795
  info.file.status = 'error';
827
796
  onError(info.file.response.msg, 'xhrError', info.file.response);
828
797
  }
829
798
  }
830
799
 
831
- const newList = list.slice(0).filter(info => {
832
- return get(info, 'file.status') !== 'removed';
833
- });
834
- const index = newList.findIndex(({
835
- uid
836
- }) => uid === info.file.uid);
837
- index > -1 && newList.splice(index, 1);
800
+ const {
801
+ done
802
+ } = groupBy(info.fileList, file => file.status === 'done' ? 'done' : 'uploading');
838
803
 
839
- if (info.file.status !== 'removed') {
840
- newList.push(info.file);
804
+ if (['done', 'removed'].indexOf(info.file.status) > -1) {
805
+ onChange(listToValue(done));
841
806
  }
842
807
 
843
- setList(newList);
808
+ setList(info.fileList);
809
+ };
810
+
811
+ const beforeUploadHandler = file => {
812
+ const isLt = file.size / 1024 / 1024 < size;
813
+
814
+ if (!isLt) {
815
+ onError(`文件不能超过${size}MB!`, 'sizeError', {
816
+ size,
817
+ fileSize: file.size
818
+ });
819
+ return false;
820
+ }
821
+
822
+ if (maxLength === 1) {
823
+ onChange([]);
824
+ setList([]);
825
+ }
826
+
827
+ return onBeforeUpload && onBeforeUpload(file);
844
828
  };
845
829
 
846
830
  const UploadComponent = drag ? Dragger : Upload$1;
847
831
  return /*#__PURE__*/React.createElement(UploadComponent, _extends({}, props, {
848
832
  action: action || uploadParams.action,
849
- fileList: list,
833
+ fileList: valueList,
850
834
  accept: accept.join(','),
851
- onChange: onChange,
852
- beforeUpload: beforeUpload
835
+ onChange: changeHandler,
836
+ beforeUpload: beforeUploadHandler
853
837
  }), children);
854
838
  };
855
839
 
@@ -858,15 +842,15 @@ _Upload.defaultProps = {
858
842
  accept: [],
859
843
  fileSize: 2,
860
844
  maxLength: 1,
845
+ displayFilename: 'filename',
861
846
  children: /*#__PURE__*/React.createElement(Button, null, /*#__PURE__*/React.createElement(UploadOutlined, null), "\u70B9\u51FB\u4E0A\u4F20"),
862
847
  onError: info => message.error(info),
863
848
  onUploadComplete: () => {}
864
849
  };
865
- const AdapterUpload = withValueAdapter(_Upload);
866
850
 
867
851
  const UploadInput = props => {
868
852
  const render = useOnChange(props);
869
- return render(AdapterUpload);
853
+ return render(_Upload);
870
854
  };
871
855
 
872
856
  UploadInput.field = _Upload;
@@ -909,7 +893,7 @@ const CommonModal = ({
909
893
  }, "\u786E\u5B9A"))));
910
894
  };
911
895
 
912
- const FormModal = (_ref) => {
896
+ const FormModal = _ref => {
913
897
  let {
914
898
  className,
915
899
  formProps = {},
@@ -927,7 +911,7 @@ const FormModal = (_ref) => {
927
911
  }, children));
928
912
  };
929
913
 
930
- FormModal.modal = (_ref2) => {
914
+ FormModal.modal = _ref2 => {
931
915
  let {
932
916
  className,
933
917
  title,
@@ -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';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport ReactForm from '@kne/react-form';\nimport {widget} from '@kne/react-form-helper';\nimport './assets/index.scss';\n\nexport * from '@kne/react-form';\nexport {hooks, utils} from '@kne/react-form-helper';\n\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\n\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\n let computedClass = 'react-form';\n if (type !== 'default') {\n computedClass += `--${type}`;\n }\n\n if (size !== 'middle') {\n computedClass += `--${size}`;\n }\n\n const maxLabel = <MaxLabelProvider>\n {children}\n </MaxLabelProvider>;\n\n return (\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}>\n <SizeProvider value={{size}}>\n <ReactForm {...props} ref={ref}>\n {cache ? <FormStore cache={cache}/> : null}\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\n {enterSubmit ? <EnterSubmit>\n {maxLabel}\n </EnterSubmit> : maxLabel}\n </ReactForm>\n </SizeProvider>\n </form>\n );\n});\n\nForm.defaultProps = {\n type: 'default',\n size: 'middle',\n scrollToError: true,\n enterSubmit: false,\n scrollProps: {\n block: 'center'\n }\n};\n\nForm.propTypes = {\n className: PropTypes.string,\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\n size: PropTypes.oneOf(['small', 'middle', 'large']),\n enterSubmit: PropTypes.bool,\n scrollToError: PropTypes.bool,\n scrollProps: PropTypes.shape({\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\n behavior: PropTypes.oneOf(['auto', 'smooth']),\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\n })\n};\n\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\nimport merge from 'lodash/merge';\nimport get from \"lodash/get\";\n\nexport const globalParams = {\n rules: {},\n field: {\n upload: {\n action: '/open-api/upload_static_file/interview-manager',\n transformResponse: (response) => {\n return {\n code: response.code,\n msg: response.msg,\n results: get(response, 'results[0].targetPath')\n };\n }\n },\n avatar: {\n transformResponse: (response) => {\n return {\n code: response.code,\n results: response.results,\n msg: response.msg\n }\n },\n action: '/upload'\n }\n }\n};\n\nexport default (props) => {\n merge(globalParams, props);\n presetRules(globalParams.rules);\n};","import React, {useState, useRef, useEffect} from 'react';\nimport {Upload, message, Modal, Slider, Row, Col, Space} from 'antd';\nimport {globalParams} from '../preset';\nimport classnames from 'classnames';\nimport {\n PlusOutlined,\n LoadingOutlined\n} from '@ant-design/icons';\nimport AvatarEditor from \"react-avatar-editor\";\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\nconst avatarParams = globalParams.field.avatar;\n\n\nconst _Avatar = ({className, value: imageUrl, onChange: propsChange, beforeUpload: onBeforeUpload, transformResponse, action, imageType, fileSize: size, children, onError, editor}) => {\n const [loading, setLoading] = useState(false);\n const [showImageUrl, setImageUrl] = useState(imageUrl);\n const editorRef = useRef();\n\n useEffect(() => {\n setImageUrl(imageUrl)\n }, [imageUrl])\n\n /* base64转blob */\n const dataURLtoBlob = (dataurl) => {\n let arr = dataurl.split(',');\n // 注意base64的最后面中括号和引号是不转译的\n let _arr = arr[1].substring(0, arr[1].length - 2);\n let mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(_arr),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime\n });\n };\n\n\n\n const AvatarEditorBox = ({file})=>{\n const [rotate, setRotate] = useState(0);\n const [scale, setScale] = useState(()=>{\n if(editor.width===editor.height){\n return 1\n }\n return 0.35\n });\n\n const onChange = (v)=>{\n console.log(v);\n setRotate(v);\n }\n const onChangeScale = (v)=>{\n console.log(v);\n setScale(v);\n }\n return (\n <div style={{'width': editor.width,\n 'margin': 'auto'}}>\n <AvatarEditor\n ref={editorRef}\n image={file}\n width={editor.width}\n height={editor.height}\n border={1}\n borderRadius={editor.borderRadius}\n color={[24, 144, 255, 1]} // RGBA\n scale={scale}\n rotate={rotate}\n />\n <Row gutter={4}>\n <Col span={4}><span>旋转</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange} />\n </Col>\n </Row>\n <Row gutter={4}>\n <Col span={4}><span>放大</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3} onChange={onChangeScale} />\n </Col>\n </Row>\n </div>\n )\n }\n\n const uploadButton = (\n <div>\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\n {children}\n </div>\n );\n\n const beforeUpload = async (file) => {\n return new Promise((resolve, reject) => {\n\n console.log('文件', file);\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\n if (!isJpgOrPng) {\n onError(`只支持${imageType.map((str) => str.replace('image/', '')).join('/')}格式图片!`, 'typeError', {\n type: imageType,\n fileType: file.type\n });\n reject();\n return false;\n }\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`图片不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n reject();\n return false;\n }\n\n /*剪切图像*/\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\n if (editor.open) {\n Modal.success({\n // title: '剪切图像',\n icon: '',\n width: editor.width*2,\n content: <AvatarEditorBox file={file}/>,\n okText: editor.text,\n onOk: (close) => {\n // console.log(editorRef.current);\n let base64 = editorRef.current.getImage().toDataURL();\n setImageUrl(base64);\n let blob = dataURLtoBlob(base64);\n const files = new window.File(\n [blob],\n file.name,\n { type: file.type }\n );\n onBeforeUpload && onBeforeUpload(files);\n resolve(files);\n // console.log(files);\n close();\n }\n })\n } else {\n onBeforeUpload && onBeforeUpload(file);\n resolve(file);\n // return onBeforeUpload && onBeforeUpload(file);\n }\n })\n\n };\n\n const onChange = (info) => {\n if (info.file.status === 'uploading') {\n setLoading(true);\n return;\n }\n if (info.file.status === 'done') {\n setLoading(false);\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\n if (response.code === 200) {\n propsChange(response.results);\n } else {\n onError(response.msg, 'xhrError', response);\n }\n }\n };\n\n return (\n <>\n <Upload className={classnames(className, 'react-form-avatar')} listType=\"picture-card\"\n showUploadList={false}\n action={action || avatarParams.action}\n beforeUpload={beforeUpload} onChange={onChange}>\n {showImageUrl ? <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\n </Upload>\n </>\n );\n};\n\n_Avatar.defaultProps = {\n imageType: ['image/jpeg', 'image/png'],\n fileSize: 2, // 单位MB\n children: <div className=\"ant-upload-text\">点击上传</div>,\n onError: (info) => message.error(info),\n editor: {open: false, width: 250, height: 250, borderRadius: 1, text: '剪切'}\n};\n\nconst AvatarInput = (props) => {\n const render = useOnChange(props);\n return render(_Avatar);\n};\n\nAvatarInput.field = _Avatar;\n\nexport default AvatarInput;\n","import {Cascader as _Cascader} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst Cascader = (props) => {\n const render = useOnChange(props);\n return render(_Cascader);\n};\n\nexport default Cascader;\n\n","import {Checkbox as _Checkbox} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\n\nconst WithCheckbox = withChecked(_Checkbox);\n\nconst Checkbox = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithCheckbox);\n};\n\nexport default Checkbox;\n","import {Checkbox} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _CheckboxGroup = Checkbox.Group;\n\nconst CheckboxGroup = (props) => {\n const render = useOnChange(props);\n return render(_CheckboxGroup);\n};\n\nCheckboxGroup.Checkbox = Checkbox;\n\nexport default CheckboxGroup;\n","import {DatePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\n\nconst _DatePicker = (props) => {\n const render = useOnChange(props);\n return render(DatePicker);\n};\n\nconst _MonthPicker = (props) => {\n const render = useOnChange(props);\n return render(MonthPicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n // if(props.selectToday){\n // return render(RangePickerToday);\n // }\n return render(RangePicker);\n};\n\nconst _WeekPicker = (props) => {\n const render = useOnChange(props);\n return render(WeekPicker);\n};\n\n_DatePicker.MonthPicker = _MonthPicker;\n_DatePicker.RangePicker = _RangePicker;\n_DatePicker.WeekPicker = _WeekPicker;\n\n\nexport default _DatePicker;\n","import {Button, DatePicker} from 'antd';\nimport React, {useRef, useEffect, useMemo} from 'react'\nimport moment from 'moment'\nimport get from 'lodash/get'\nimport useControlValue from '@kne/use-control-value'\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst PickerToday = (props) => {\n // console.log('>>>>data', data);\n const [data, onChange] = useControlValue(props);\n const ref_d = useRef();\n const newData = useMemo(() => {\n // console.log('......', data);\n const s = get(data, 0, '');\n const d = get(data, 1, '');\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\n return {\n start: s ? moment(s) : '',\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\n showZj: d === '至今',\n placeholder: p\n }\n }, [data]);\n\n const startChange = (v) => {\n // 比较日期大小\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\n onChange([newData.end, v]);\n return\n }\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\n };\n\n const endChange = (v) => {\n if (newData.start && v && v.isBefore(newData.start)) {\n onChange([v, newData.start]);\n return\n }\n onChange([newData.start, v || '']);\n };\n\n const foot = () => {\n return (\n <Button onClick={(v) => {\n ref_d.current.blur();\n onChange([newData.start || '', '至今']);\n }}>\n 至今\n </Button>\n )\n }\n return (\n <div style={{display: 'flex'}}>\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\n onChange={startChange}/>\n <div className={'svg_box'}>\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\n fill=\"currentColor\" aria-hidden=\"true\">\n <path\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\"/>\n </svg>\n </div>\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\n <DatePicker {...{\n showToday: false,\n ...props,\n placeholder: newData.showZj ? '' : newData.placeholder[1],\n value: newData.end\n }} ref={ref_d}\n onChange={endChange} renderExtraFooter={foot}/>\n </div>\n </div>\n );\n}\n\n\nconst RangePickerToday = (props) => {\n const render = useOnChange(props);\n return render(PickerToday);\n};\n\nRangePickerToday.field = PickerToday;\n\nexport default RangePickerToday;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputField = (props) => {\n const render = useDecorator(props);\n return render(Input);\n};\n\nInputField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputField;\n","import {InputNumber} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputNumberField = (props) => {\n const render = useDecorator(props);\n return render(InputNumber);\n};\n\nInputNumberField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputNumberField;\n","import React, {useCallback} from 'react';\nimport {Radio} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst RadioGroup = ({onChange, ...props})=>{\n const handler = useCallback((e) => {\n onChange && onChange(e.target.value);\n }, [onChange]);\n return <Radio.Group {...props} onChange={handler}/>\n};\n\nconst _RadioGroup = (props) => {\n const render = useOnChange(props);\n return render(RadioGroup);\n};\n\n_RadioGroup.Radio = Radio;\n\nexport default _RadioGroup;\n","import {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _Select = (props) => {\n const render = useOnChange(props);\n return render(Select);\n};\n\n_Select.Option = Select.Option;\n_Select.OptGroup = Select.OptGroup;\n\nexport default _Select;\n","import React from 'react';\nimport {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\nimport {withFetch} from '@kne/react-fetch';\n\nconst {useOnChange} = hooks;\n\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\n});\n\nconst SelectFetch = (props) => {\n const render = useOnChange(props);\n return render(_SelectFetch);\n};\n\nSelectFetch.Option = Select.Option;\nSelectFetch.OptGroup = Select.OptGroup;\n\nexport default SelectFetch;\n","import {Switch as _Switch} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\nconst WithSwitch = withChecked(_Switch);\n\nconst Switch = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithSwitch);\n};\n\nexport default Switch;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst TextArea = (props) => {\n const render = useDecorator(props);\n return render(Input.TextArea);\n};\n\nexport default TextArea;\n","import {TimePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {RangePicker} = TimePicker;\n\nconst _TimePicker = (props) => {\n const render = useOnChange(props);\n return render(TimePicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n return render(RangePicker);\n};\n\n_TimePicker.RangePicker = _RangePicker;\n\nexport default _TimePicker;\n","import {TreeSelect} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _TreeSelect = (props) => {\n const render = useOnChange(props);\n return render(TreeSelect);\n};\n\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\n\nexport default _TreeSelect;\n","import React, {useState, useEffect, useRef} from 'react';\nimport {Upload, message, Button} from 'antd';\nimport {\n UploadOutlined\n} from '@ant-design/icons';\nimport uniqueId from 'lodash/uniqueId';\nimport isEqual from 'lodash/isEqual';\nimport get from 'lodash/get';\nimport {hooks} from '@kne/react-form-helper';\nimport {globalParams} from \"../preset\";\n\nconst {useOnChange} = hooks;\n\nconst {Dragger} = Upload;\n\nconst uploadParams = globalParams.field.upload;\n\nconst valueToList = (value) => {\n if (!value) {\n return [];\n }\n return value.map((item) => ({\n uid: uniqueId(),\n name: item.substr(item.lastIndexOf('/') + 1),\n status: 'done',\n response: {code: 200, results: item}\n }));\n};\n\nconst listToValue = (value) => {\n return value.slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\n};\n\nconst withValueAdapter = (WrappedComponent) => ({value, onChange, ...props}) => {\n const [list, setList] = useState([]);\n\n const targetListRef = useRef([]);\n\n useEffect(() => {\n if (isEqual(value, targetListRef.current)) {\n return;\n }\n setList(valueToList(value));\n }, [value]);\n\n return <WrappedComponent {...props} value={list} onChange={(value) => {\n value = value.map((item) => Object.assign({}, item));\n setList(value);\n const targetList = listToValue(value);\n targetListRef.current = targetList;\n if (isEqual(targetList, value)) {\n return;\n }\n onChange(targetList);\n }}/>;\n};\n\nconst _Upload = ({className, value: list, onChange: setList, onUploadComplete, beforeUpload: onBeforeUpload, maxLength, drag, transformResponse, action, accept, fileSize: size, children, onError, ...props}) => {\n const beforeUpload = (file) => {\n if (maxLength === 1) {\n setList([]);\n }\n /*const typeAllowed = accept.length === 0 || !!accept.find((type) => type === file.type);\n if (!typeAllowed) {\n onError(`只支持${accept.join('/')}格式文件!`, 'typeError', {\n type: accept,\n fileType: file.type\n });\n return false;\n }*/\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n return false;\n }\n\n return onBeforeUpload && onBeforeUpload(file);\n };\n\n const onChange = (info) => {\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\n return;\n }\n if (info.fileList.length > maxLength) {\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\n return;\n }\n if (info.file.status === 'done') {\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\n if (info.file.response.code === 200) {\n info.file.name = info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1);\n onUploadComplete(info.file);\n } else {\n info.file.status = 'error';\n onError(info.file.response.msg, 'xhrError', info.file.response);\n }\n }\n const newList = list.slice(0).filter((info) => {\n return get(info, 'file.status') !== 'removed';\n });\n const index = newList.findIndex(({uid}) => uid === info.file.uid);\n index > -1 && newList.splice(index, 1);\n if (info.file.status !== 'removed') {\n newList.push(info.file);\n }\n setList(newList);\n };\n\n const UploadComponent = drag ? Dragger : Upload;\n\n return (\n <UploadComponent {...props} action={action || uploadParams.action} fileList={list} accept={accept.join(',')}\n onChange={onChange}\n beforeUpload={beforeUpload}\n >\n {children}\n </UploadComponent>\n );\n};\n\n_Upload.defaultProps = {\n value: [],\n accept: [],\n fileSize: 2,\n maxLength: 1,\n children: <Button><UploadOutlined/>点击上传</Button>,\n onError: (info) => message.error(info),\n onUploadComplete: () => {\n }\n};\n\nconst AdapterUpload = withValueAdapter(_Upload);\n\nconst UploadInput = (props) => {\n const render = useOnChange(props);\n return render(AdapterUpload);\n};\n\nUploadInput.field = _Upload;\n\nexport default UploadInput;\n","import React from 'react';\nimport {useSubmit} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst SubmitButton = (props) => {\n const {isPass, isLoading,...submitProps} = useSubmit(props);\n return (\n <Button loading={isLoading} {...submitProps} {...props}/>\n );\n};\n\nexport default SubmitButton;\n","import React from 'react';\nimport {useReset} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst ResetButton = (props) => {\n const resetProps = useReset();\n return (\n <Button {...resetProps} {...props}/>\n );\n};\n\nexport default ResetButton;\n","import React from 'react';\nimport {Modal, Space} from 'antd';\nimport SubmitButton from './SubmitButton';\nimport ResetButton from './ResetButton';\nimport Form from \"./Form\";\nimport {withFetch} from '@kne/react-fetch';\nimport classnames from 'classnames';\n\nconst FetchForm = withFetch(Form);\n\nconst CommonModal = ({formProps, footer, children}) => {\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\n return <TargetForm {...formProps}>\n <div className=\"ant-modal-body\">\n {children}\n </div>\n <div className=\"ant-modal-footer\">\n {footer ? footer : <Space>\n <ResetButton>重置</ResetButton>\n <SubmitButton type=\"primary\">确定</SubmitButton>\n </Space>}\n </div>\n </TargetForm>;\n};\n\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\n </Modal>\n};\n\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\n ...props,\n title: title ? <div className=\"ant-modal-header\">\n <div className=\"ant-modal-title\">{title}</div>\n </div> : null,\n className: classnames(className, 'react-form-modal'),\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\n icon: null,\n footer: null\n});\n\nexport default FormModal;\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","action","transformResponse","response","code","msg","results","get","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","value","imageUrl","onChange","propsChange","beforeUpload","onBeforeUpload","imageType","fileSize","onError","editor","loading","setLoading","useState","showImageUrl","setImageUrl","editorRef","useRef","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","width","height","v","console","log","onChangeScale","borderRadius","uploadButton","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","open","Modal","success","icon","content","okText","text","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","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","withValueAdapter","WrappedComponent","list","setList","targetListRef","isEqual","Object","assign","targetList","_Upload","onUploadComplete","maxLength","drag","accept","fileList","newList","index","findIndex","splice","push","UploadComponent","AdapterUpload","UploadInput","SubmitButton","useSubmit","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","FormModal","modal","title","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/index.js"],"sourcesContent":["import React, {forwardRef} from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport ReactForm from '@kne/react-form';\nimport {widget} from '@kne/react-form-helper';\nimport './assets/index.scss';\n\nexport * from '@kne/react-form';\nexport {hooks, utils} from '@kne/react-form-helper';\n\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\n\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\n let computedClass = 'react-form';\n if (type !== 'default') {\n computedClass += `--${type}`;\n }\n\n if (size !== 'middle') {\n computedClass += `--${size}`;\n }\n\n const maxLabel = <MaxLabelProvider>\n {children}\n </MaxLabelProvider>;\n\n return (\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}>\n <SizeProvider value={{size}}>\n <ReactForm {...props} ref={ref}>\n {cache ? <FormStore cache={cache}/> : null}\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\n {enterSubmit ? <EnterSubmit>\n {maxLabel}\n </EnterSubmit> : maxLabel}\n </ReactForm>\n </SizeProvider>\n </form>\n );\n});\n\nForm.defaultProps = {\n type: 'default',\n size: 'middle',\n scrollToError: true,\n enterSubmit: false,\n scrollProps: {\n block: 'center'\n }\n};\n\nForm.propTypes = {\n className: PropTypes.string,\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\n size: PropTypes.oneOf(['small', 'middle', 'large']),\n enterSubmit: PropTypes.bool,\n scrollToError: PropTypes.bool,\n scrollProps: PropTypes.shape({\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\n behavior: PropTypes.oneOf(['auto', 'smooth']),\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\n })\n};\n\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\nimport merge from 'lodash/merge';\nimport get from \"lodash/get\";\n\nexport const globalParams = {\n rules: {},\n field: {\n upload: {\n action: '/open-api/upload_static_file/interview-manager',\n transformResponse: (response) => {\n const targetPath = get(response, 'results[0].targetPath');\n const filename = get(response, 'results[0].filename');\n return {\n code: response.code,\n msg: response.msg,\n results: targetPath + (filename ? '?filename=' + encodeURIComponent(filename) : '')\n };\n }\n },\n avatar: {\n transformResponse: (response) => {\n return {\n code: response.code,\n results: response.results,\n msg: response.msg\n }\n },\n action: '/upload'\n }\n }\n};\n\nexport default (props) => {\n merge(globalParams, props);\n presetRules(globalParams.rules);\n};\n","import React, {useState, useRef, useEffect} from 'react';\nimport {Upload, message, Modal, Slider, Row, Col, Space} from 'antd';\nimport {globalParams} from '../preset';\nimport classnames from 'classnames';\nimport {\n PlusOutlined,\n LoadingOutlined\n} from '@ant-design/icons';\nimport AvatarEditor from \"react-avatar-editor\";\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\nconst avatarParams = globalParams.field.avatar;\n\n\nconst _Avatar = ({className, value: imageUrl, onChange: propsChange, beforeUpload: onBeforeUpload, transformResponse, action, imageType, fileSize: size, children, onError, editor}) => {\n const [loading, setLoading] = useState(false);\n const [showImageUrl, setImageUrl] = useState(imageUrl);\n const editorRef = useRef();\n\n useEffect(() => {\n setImageUrl(imageUrl)\n }, [imageUrl])\n\n /* base64转blob */\n const dataURLtoBlob = (dataurl) => {\n let arr = dataurl.split(',');\n // 注意base64的最后面中括号和引号是不转译的\n let _arr = arr[1].substring(0, arr[1].length - 2);\n let mime = arr[0].match(/:(.*?);/)[1],\n bstr = atob(_arr),\n n = bstr.length,\n u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime\n });\n };\n\n\n\n const AvatarEditorBox = ({file})=>{\n const [rotate, setRotate] = useState(0);\n const [scale, setScale] = useState(()=>{\n if(editor.width===editor.height){\n return 1\n }\n return 0.35\n });\n\n const onChange = (v)=>{\n console.log(v);\n setRotate(v);\n }\n const onChangeScale = (v)=>{\n console.log(v);\n setScale(v);\n }\n return (\n <div style={{'width': editor.width,\n 'margin': 'auto'}}>\n <AvatarEditor\n ref={editorRef}\n image={file}\n width={editor.width}\n height={editor.height}\n border={1}\n borderRadius={editor.borderRadius}\n color={[24, 144, 255, 1]} // RGBA\n scale={scale}\n rotate={rotate}\n />\n <Row gutter={4}>\n <Col span={4}><span>旋转</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange} />\n </Col>\n </Row>\n <Row gutter={4}>\n <Col span={4}><span>放大</span></Col>\n <Col span={15}>\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3} onChange={onChangeScale} />\n </Col>\n </Row>\n </div>\n )\n }\n\n const uploadButton = (\n <div>\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\n {children}\n </div>\n );\n\n const beforeUpload = async (file) => {\n return new Promise((resolve, reject) => {\n\n console.log('文件', file);\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\n if (!isJpgOrPng) {\n onError(`只支持${imageType.map((str) => str.replace('image/', '')).join('/')}格式图片!`, 'typeError', {\n type: imageType,\n fileType: file.type\n });\n reject();\n return false;\n }\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`图片不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n reject();\n return false;\n }\n\n /*剪切图像*/\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\n if (editor.open) {\n Modal.success({\n // title: '剪切图像',\n icon: '',\n width: editor.width*2,\n content: <AvatarEditorBox file={file}/>,\n okText: editor.text,\n onOk: (close) => {\n // console.log(editorRef.current);\n let base64 = editorRef.current.getImage().toDataURL();\n setImageUrl(base64);\n let blob = dataURLtoBlob(base64);\n const files = new window.File(\n [blob],\n file.name,\n { type: file.type }\n );\n onBeforeUpload && onBeforeUpload(files);\n resolve(files);\n // console.log(files);\n close();\n }\n })\n } else {\n onBeforeUpload && onBeforeUpload(file);\n resolve(file);\n // return onBeforeUpload && onBeforeUpload(file);\n }\n })\n\n };\n\n const onChange = (info) => {\n if (info.file.status === 'uploading') {\n setLoading(true);\n return;\n }\n if (info.file.status === 'done') {\n setLoading(false);\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\n if (response.code === 200) {\n propsChange(response.results);\n } else {\n onError(response.msg, 'xhrError', response);\n }\n }\n };\n\n return (\n <>\n <Upload className={classnames(className, 'react-form-avatar')} listType=\"picture-card\"\n showUploadList={false}\n action={action || avatarParams.action}\n beforeUpload={beforeUpload} onChange={onChange}>\n {showImageUrl ? <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\n </Upload>\n </>\n );\n};\n\n_Avatar.defaultProps = {\n imageType: ['image/jpeg', 'image/png'],\n fileSize: 2, // 单位MB\n children: <div className=\"ant-upload-text\">点击上传</div>,\n onError: (info) => message.error(info),\n editor: {open: false, width: 250, height: 250, borderRadius: 1, text: '剪切'}\n};\n\nconst AvatarInput = (props) => {\n const render = useOnChange(props);\n return render(_Avatar);\n};\n\nAvatarInput.field = _Avatar;\n\nexport default AvatarInput;\n","import {Cascader as _Cascader} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst Cascader = (props) => {\n const render = useOnChange(props);\n return render(_Cascader);\n};\n\nexport default Cascader;\n\n","import {Checkbox as _Checkbox} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\n\nconst WithCheckbox = withChecked(_Checkbox);\n\nconst Checkbox = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithCheckbox);\n};\n\nexport default Checkbox;\n","import {Checkbox} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _CheckboxGroup = Checkbox.Group;\n\nconst CheckboxGroup = (props) => {\n const render = useOnChange(props);\n return render(_CheckboxGroup);\n};\n\nCheckboxGroup.Checkbox = Checkbox;\n\nexport default CheckboxGroup;\n","import {DatePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\n\nconst _DatePicker = (props) => {\n const render = useOnChange(props);\n return render(DatePicker);\n};\n\nconst _MonthPicker = (props) => {\n const render = useOnChange(props);\n return render(MonthPicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n // if(props.selectToday){\n // return render(RangePickerToday);\n // }\n return render(RangePicker);\n};\n\nconst _WeekPicker = (props) => {\n const render = useOnChange(props);\n return render(WeekPicker);\n};\n\n_DatePicker.MonthPicker = _MonthPicker;\n_DatePicker.RangePicker = _RangePicker;\n_DatePicker.WeekPicker = _WeekPicker;\n\n\nexport default _DatePicker;\n","import {Button, DatePicker} from 'antd';\nimport React, {useRef, useEffect, useMemo} from 'react'\nimport moment from 'moment'\nimport get from 'lodash/get'\nimport useControlValue from '@kne/use-control-value'\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst PickerToday = (props) => {\n // console.log('>>>>data', data);\n const [data, onChange] = useControlValue(props);\n const ref_d = useRef();\n const newData = useMemo(() => {\n // console.log('......', data);\n const s = get(data, 0, '');\n const d = get(data, 1, '');\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\n return {\n start: s ? moment(s) : '',\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\n showZj: d === '至今',\n placeholder: p\n }\n }, [data]);\n\n const startChange = (v) => {\n // 比较日期大小\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\n onChange([newData.end, v]);\n return\n }\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\n };\n\n const endChange = (v) => {\n if (newData.start && v && v.isBefore(newData.start)) {\n onChange([v, newData.start]);\n return\n }\n onChange([newData.start, v || '']);\n };\n\n const foot = () => {\n return (\n <Button onClick={(v) => {\n ref_d.current.blur();\n onChange([newData.start || '', '至今']);\n }}>\n 至今\n </Button>\n )\n }\n return (\n <div style={{display: 'flex'}}>\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\n onChange={startChange}/>\n <div className={'svg_box'}>\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\n fill=\"currentColor\" aria-hidden=\"true\">\n <path\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\"/>\n </svg>\n </div>\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\n <DatePicker {...{\n showToday: false,\n ...props,\n placeholder: newData.showZj ? '' : newData.placeholder[1],\n value: newData.end\n }} ref={ref_d}\n onChange={endChange} renderExtraFooter={foot}/>\n </div>\n </div>\n );\n}\n\n\nconst RangePickerToday = (props) => {\n const render = useOnChange(props);\n return render(PickerToday);\n};\n\nRangePickerToday.field = PickerToday;\n\nexport default RangePickerToday;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputField = (props) => {\n const render = useDecorator(props);\n return render(Input);\n};\n\nInputField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputField;\n","import {InputNumber} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst InputNumberField = (props) => {\n const render = useDecorator(props);\n return render(InputNumber);\n};\n\nInputNumberField.defaultProps = {\n autoComplete: 'off'\n};\n\nexport default InputNumberField;\n","import React, {useCallback} from 'react';\nimport {Radio} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst RadioGroup = ({onChange, ...props})=>{\n const handler = useCallback((e) => {\n onChange && onChange(e.target.value);\n }, [onChange]);\n return <Radio.Group {...props} onChange={handler}/>\n};\n\nconst _RadioGroup = (props) => {\n const render = useOnChange(props);\n return render(RadioGroup);\n};\n\n_RadioGroup.Radio = Radio;\n\nexport default _RadioGroup;\n","import {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _Select = (props) => {\n const render = useOnChange(props);\n return render(Select);\n};\n\n_Select.Option = Select.Option;\n_Select.OptGroup = Select.OptGroup;\n\nexport default _Select;\n","import React from 'react';\nimport {Select} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\nimport {withFetch} from '@kne/react-fetch';\n\nconst {useOnChange} = hooks;\n\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\n});\n\nconst SelectFetch = (props) => {\n const render = useOnChange(props);\n return render(_SelectFetch);\n};\n\nSelectFetch.Option = Select.Option;\nSelectFetch.OptGroup = Select.OptGroup;\n\nexport default SelectFetch;\n","import {Switch as _Switch} from 'antd';\nimport {hooks, hoc} from '@kne/react-form-helper';\n\nconst {useOnChange, useCheckedToValue} = hooks;\nconst {withChecked} = hoc;\nconst WithSwitch = withChecked(_Switch);\n\nconst Switch = (props) => {\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithSwitch);\n};\n\nexport default Switch;\n","import {Input} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useDecorator} = hooks;\n\nconst TextArea = (props) => {\n const render = useDecorator(props);\n return render(Input.TextArea);\n};\n\nexport default TextArea;\n","import {TimePicker} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst {RangePicker} = TimePicker;\n\nconst _TimePicker = (props) => {\n const render = useOnChange(props);\n return render(TimePicker);\n};\n\nconst _RangePicker = (props) => {\n const render = useOnChange(props);\n return render(RangePicker);\n};\n\n_TimePicker.RangePicker = _RangePicker;\n\nexport default _TimePicker;\n","import {TreeSelect} from 'antd';\nimport {hooks} from '@kne/react-form-helper';\n\nconst {useOnChange} = hooks;\n\nconst _TreeSelect = (props) => {\n const render = useOnChange(props);\n return render(TreeSelect);\n};\n\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\n\nexport default _TreeSelect;\n","import React, {useState, useMemo} from 'react';\nimport {Upload, message, Button} from 'antd';\nimport {\n UploadOutlined\n} from '@ant-design/icons';\nimport get from 'lodash/get';\nimport groupBy from 'lodash/groupBy';\nimport uniqueId from 'lodash/uniqueId';\nimport {hooks} from '@kne/react-form-helper';\nimport {globalParams} from \"../preset\";\n\nconst {useOnChange} = hooks;\n\nconst {Dragger} = Upload;\n\nconst uploadParams = globalParams.field.upload;\n\nconst computedFilename = (path, displayFilename = 'filename') => {\n const strArray = path.split('?');\n if (strArray[1]) {\n const query = {};\n strArray[1].split('&').forEach((str) => {\n const [key, value] = str.split('=');\n query[key] = value;\n });\n if (query[displayFilename]) {\n return decodeURIComponent(query[displayFilename]);\n }\n }\n return path;\n};\n\nconst valueToList = (value, displayFilename) => {\n if (!value) {\n return [];\n }\n return value.map((item) => {\n return {\n uid: uniqueId(),\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\n status: 'done',\n response: {code: 200, results: item}\n }\n });\n};\n\nconst listToValue = (value) => {\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\n};\n\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\n const [list, setList] = useState([]);\n const valueList = useMemo(() => {\n return valueToList(value.filter((url) => {\n return !list.find((file) => get(file, 'response.results') === url);\n })).concat(list);\n }, [list, value, displayFilename]);\n const changeHandler = (info) => {\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\n return;\n }\n if (info.fileList.length > maxLength) {\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\n return;\n }\n if (info.file.status === 'done') {\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\n if (info.file.response.code === 200) {\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\n onUploadComplete(info);\n } else {\n info.file.status = 'error';\n onError(info.file.response.msg, 'xhrError', info.file.response);\n }\n }\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\n onChange(listToValue(done));\n }\n setList(info.fileList);\n };\n const beforeUploadHandler = (file) => {\n const isLt = file.size / 1024 / 1024 < size;\n if (!isLt) {\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\n return false;\n }\n if (maxLength === 1) {\n onChange([]);\n setList([]);\n }\n return onBeforeUpload && onBeforeUpload(file);\n };\n const UploadComponent = drag ? Dragger : Upload;\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\n {children}\n </UploadComponent>\n};\n\n_Upload.defaultProps = {\n value: [],\n accept: [],\n fileSize: 2,\n maxLength: 1,\n displayFilename: 'filename',\n children: <Button><UploadOutlined/>点击上传</Button>,\n onError: (info) => message.error(info),\n onUploadComplete: () => {\n }\n};\n\nconst UploadInput = (props) => {\n const render = useOnChange(props);\n return render(_Upload);\n};\n\n\nUploadInput.field = _Upload;\n\nexport default UploadInput;\n","import React from 'react';\nimport {useSubmit} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst SubmitButton = (props) => {\n const {isPass, isLoading,...submitProps} = useSubmit(props);\n return (\n <Button loading={isLoading} {...submitProps} {...props}/>\n );\n};\n\nexport default SubmitButton;\n","import React from 'react';\nimport {useReset} from '@kne/react-form';\nimport {Button} from 'antd';\n\nconst ResetButton = (props) => {\n const resetProps = useReset();\n return (\n <Button {...resetProps} {...props}/>\n );\n};\n\nexport default ResetButton;\n","import React from 'react';\nimport {Modal, Space} from 'antd';\nimport SubmitButton from './SubmitButton';\nimport ResetButton from './ResetButton';\nimport Form from \"./Form\";\nimport {withFetch} from '@kne/react-fetch';\nimport classnames from 'classnames';\n\nconst FetchForm = withFetch(Form);\n\nconst CommonModal = ({formProps, footer, children}) => {\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\n return <TargetForm {...formProps}>\n <div className=\"ant-modal-body\">\n {children}\n </div>\n <div className=\"ant-modal-footer\">\n {footer ? footer : <Space>\n <ResetButton>重置</ResetButton>\n <SubmitButton type=\"primary\">确定</SubmitButton>\n </Space>}\n </div>\n </TargetForm>;\n};\n\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\n </Modal>\n};\n\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\n ...props,\n title: title ? <div className=\"ant-modal-header\">\n <div className=\"ant-modal-title\">{title}</div>\n </div> : null,\n className: classnames(className, 'react-form-modal'),\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\n icon: null,\n footer: null\n});\n\nexport default FormModal;\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","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","editor","loading","setLoading","useState","showImageUrl","setImageUrl","editorRef","useRef","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","width","height","v","console","log","onChangeScale","borderRadius","uploadButton","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","open","Modal","success","icon","content","okText","text","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","displayFilename","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","title","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.5",
3
+ "version": "2.0.9",
4
4
  "description": "把@kne/react-form 表单校验逻辑应用到antd",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.modern.js",
@@ -52,21 +52,21 @@
52
52
  },
53
53
  "homepage": "https://github.com/kne-union/react-form-antd#readme",
54
54
  "peerDependencies": {
55
+ "@kne/react-fetch": "0.1.x",
55
56
  "antd": ">=4.x",
56
57
  "prop-types": ">=15.x",
57
- "react": ">=16.x",
58
- "@kne/react-fetch": "0.1.x"
58
+ "react": ">=16.x"
59
59
  },
60
60
  "dependencies": {
61
61
  "@ant-design/icons": "^4.2.1",
62
62
  "@babel/runtime": "^7.10.3",
63
- "@kne/react-form": "^2.0.3",
64
- "@kne/react-form-helper": "^1.0.9",
65
- "@kne/use-control-value": "^0.1.0",
63
+ "@kne/react-form": "^2.0.4",
64
+ "@kne/react-form-helper": "^1.0.10",
65
+ "@kne/use-control-value": "^0.1.1",
66
66
  "classnames": "^2.2.6",
67
67
  "lodash": "^4.17.15",
68
68
  "moment": "^2.29.1",
69
- "react-avatar-editor": "11.0.9"
69
+ "react-avatar-editor": "^12.0.0"
70
70
  },
71
71
  "devDependencies": {
72
72
  "@kne/react-fetch": "^0.1.12",
@@ -78,7 +78,7 @@
78
78
  "glob": "^7.1.6",
79
79
  "husky": "^7.0.2",
80
80
  "microbundle": "^0.13.3",
81
- "node-sass": "^4.14.1",
81
+ "node-sass": "^6.0.1",
82
82
  "npm-run-all": "^4.1.5",
83
83
  "pify": "^5.0.0",
84
84
  "prettier": "^2.4.1",