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

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/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2019 kne-union
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2019 kne-union
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,35 +1,35 @@
1
- # react-form
2
- 用于表单验证的react组件
3
-
4
- ### demo
5
- ``
6
-
7
- <Avatar editor={{open: true, width: 250, height: 250, borderRadius: 1}}
8
- beforeUpload={(file) => {}}/>
9
-
10
- <Input realtime debounce={1000} name="name" label="姓名" rule="REQ TEL EXIT"/>
11
- {isShow ? <Input name="rname" label="姓名哈哈哈" rule="REQ TEL EXIT"/> : null}
12
- <Select name="select" label="选项" rule="REQ">
13
- <Select.Option value="1">选项一</Select.Option>
14
- <Select.Option value="2">选项二</Select.Option>
15
- <Select.Option value="3">选项三</Select.Option>
16
- </Select>
17
- <DatePicker name="date" label="日期" rule="REQ" format="" YYYY-MM-DD/>
18
- <RadioGroup name="radio" label="单选" rule="REQ">
19
- <RadioGroup.Radio value="1">选项一</RadioGroup.Radio>
20
- <RadioGroup.Radio value="2">选项二</RadioGroup.Radio>
21
- <RadioGroup.Radio value="3">选项三</RadioGroup.Radio>
22
- </RadioGroup>
23
-
24
- ``
25
-
26
- # Change Log
27
-
28
- 20200430 v0.1.13 添加了SelectFetch和SelectSearch控件
29
- 20200430 v0.1.14 修改Select组件样式的默认宽度为100%
30
- 20200508 v0.1.16 删除field last-child 样式 margin-bottom 为0
31
- 20200509 v0.1.17 修改导出文件结构,增加fields导出所有field组件
32
- 20200522 v0.1.20 添加头像上传组件
33
- 20200525 v0.1.22 更新@kne/react-fetch以支持setData方法
34
- 20200529 v0.1.23 添加头像上传组件field Avatar
35
- 20200603 v0.1.24 修正Switch的值转换bug
1
+ # react-form
2
+ 用于表单验证的react组件
3
+
4
+ ### demo
5
+ ``
6
+
7
+ <Avatar editor={{open: true, width: 250, height: 250, borderRadius: 1}}
8
+ beforeUpload={(file) => {}}/>
9
+
10
+ <Input realtime debounce={1000} name="name" label="姓名" rule="REQ TEL EXIT"/>
11
+ {isShow ? <Input name="rname" label="姓名哈哈哈" rule="REQ TEL EXIT"/> : null}
12
+ <Select name="select" label="选项" rule="REQ">
13
+ <Select.Option value="1">选项一</Select.Option>
14
+ <Select.Option value="2">选项二</Select.Option>
15
+ <Select.Option value="3">选项三</Select.Option>
16
+ </Select>
17
+ <DatePicker name="date" label="日期" rule="REQ" format="" YYYY-MM-DD/>
18
+ <RadioGroup name="radio" label="单选" rule="REQ">
19
+ <RadioGroup.Radio value="1">选项一</RadioGroup.Radio>
20
+ <RadioGroup.Radio value="2">选项二</RadioGroup.Radio>
21
+ <RadioGroup.Radio value="3">选项三</RadioGroup.Radio>
22
+ </RadioGroup>
23
+
24
+ ``
25
+
26
+ # Change Log
27
+
28
+ 20200430 v0.1.13 添加了SelectFetch和SelectSearch控件
29
+ 20200430 v0.1.14 修改Select组件样式的默认宽度为100%
30
+ 20200508 v0.1.16 删除field last-child 样式 margin-bottom 为0
31
+ 20200509 v0.1.17 修改导出文件结构,增加fields导出所有field组件
32
+ 20200522 v0.1.20 添加头像上传组件
33
+ 20200525 v0.1.22 更新@kne/react-fetch以支持setData方法
34
+ 20200529 v0.1.23 添加头像上传组件field Avatar
35
+ 20200603 v0.1.24 修正Switch的值转换bug
package/dist/index.js CHANGED
@@ -176,7 +176,10 @@ var _Avatar = function _Avatar(_ref) {
176
176
  size = _ref.fileSize,
177
177
  children = _ref.children,
178
178
  onError = _ref.onError,
179
- editor = _ref.editor;
179
+ openEditor = _ref.openEditor,
180
+ targetEditor = _ref.editor,
181
+ previewImg = _ref.previewImg,
182
+ previewRender = _ref.previewRender;
180
183
 
181
184
  var _useState = React.useState(false),
182
185
  loading = _useState[0],
@@ -187,13 +190,24 @@ var _Avatar = function _Avatar(_ref) {
187
190
  setImageUrl = _useState2[1];
188
191
 
189
192
  var editorRef = React.useRef();
193
+ var defaultEditor = {
194
+ open: false,
195
+ width: 250,
196
+ height: 250,
197
+ borderRadius: 1,
198
+ text: "确定",
199
+ title: "裁剪图片"
200
+ };
201
+ var editor = merge__default["default"]({}, defaultEditor, {
202
+ open: openEditor
203
+ }, targetEditor);
190
204
  React.useEffect(function () {
191
205
  setImageUrl(imageUrl);
192
206
  }, [imageUrl]);
193
207
  /* base64转blob */
194
208
 
195
209
  var dataURLtoBlob = function dataURLtoBlob(dataurl) {
196
- var arr = dataurl.split(','); // 注意base64的最后面中括号和引号是不转译的
210
+ var arr = dataurl.split(","); // 注意base64的最后面中括号和引号是不转译的
197
211
 
198
212
  var _arr = arr[1].substring(0, arr[1].length - 2);
199
213
 
@@ -229,19 +243,17 @@ var _Avatar = function _Avatar(_ref) {
229
243
  setScale = _useState4[1];
230
244
 
231
245
  var onChange = function onChange(v) {
232
- console.log(v);
233
246
  setRotate(v);
234
247
  };
235
248
 
236
249
  var onChangeScale = function onChangeScale(v) {
237
- console.log(v);
238
250
  setScale(v);
239
251
  };
240
252
 
241
253
  return /*#__PURE__*/React__default["default"].createElement("div", {
242
254
  style: {
243
- 'width': editor.width,
244
- 'margin': 'auto'
255
+ "width": editor.width,
256
+ "margin": "auto"
245
257
  }
246
258
  }, /*#__PURE__*/React__default["default"].createElement(AvatarEditor__default["default"], {
247
259
  ref: editorRef,
@@ -287,13 +299,12 @@ var _Avatar = function _Avatar(_ref) {
287
299
  var beforeUpload = function beforeUpload(file) {
288
300
  try {
289
301
  return Promise.resolve(new Promise(function (resolve, reject) {
290
- console.log('文件', file);
291
302
  var isJpgOrPng = imageType.indexOf(file.type) > -1;
292
303
 
293
304
  if (!isJpgOrPng) {
294
305
  onError("\u53EA\u652F\u6301" + imageType.map(function (str) {
295
- return str.replace('image/', '');
296
- }).join('/') + "\u683C\u5F0F\u56FE\u7247!", 'typeError', {
306
+ return str.replace("image/", "");
307
+ }).join("/") + "\u683C\u5F0F\u56FE\u7247!", "typeError", {
297
308
  type: imageType,
298
309
  fileType: file.type
299
310
  });
@@ -304,7 +315,7 @@ var _Avatar = function _Avatar(_ref) {
304
315
  var isLt = file.size / 1024 / 1024 < size;
305
316
 
306
317
  if (!isLt) {
307
- onError("\u56FE\u7247\u4E0D\u80FD\u8D85\u8FC7" + size + "MB!", 'sizeError', {
318
+ onError("\u56FE\u7247\u4E0D\u80FD\u8D85\u8FC7" + size + "MB!", "sizeError", {
308
319
  size: size,
309
320
  fileSize: file.size
310
321
  });
@@ -317,15 +328,14 @@ var _Avatar = function _Avatar(_ref) {
317
328
 
318
329
  if (editor.open) {
319
330
  antd.Modal.success({
320
- // title: '剪切图像',
321
- icon: '',
331
+ title: editor.title,
332
+ icon: "",
322
333
  width: editor.width * 2,
323
334
  content: /*#__PURE__*/React__default["default"].createElement(AvatarEditorBox, {
324
335
  file: file
325
336
  }),
326
337
  okText: editor.text,
327
338
  onOk: function onOk(close) {
328
- // console.log(editorRef.current);
329
339
  var base64 = editorRef.current.getImage().toDataURL();
330
340
  setImageUrl(base64);
331
341
  var blob = dataURLtoBlob(base64);
@@ -333,14 +343,13 @@ var _Avatar = function _Avatar(_ref) {
333
343
  type: file.type
334
344
  });
335
345
  onBeforeUpload && onBeforeUpload(files);
336
- resolve(files); // console.log(files);
337
-
346
+ resolve(files);
338
347
  close();
339
348
  }
340
349
  });
341
350
  } else {
342
351
  onBeforeUpload && onBeforeUpload(file);
343
- resolve(file); // return onBeforeUpload && onBeforeUpload(file);
352
+ resolve(file);
344
353
  }
345
354
  }));
346
355
  } catch (e) {
@@ -349,31 +358,31 @@ var _Avatar = function _Avatar(_ref) {
349
358
  };
350
359
 
351
360
  var onChange = function onChange(info) {
352
- if (info.file.status === 'uploading') {
361
+ if (info.file.status === "uploading") {
353
362
  setLoading(true);
354
363
  return;
355
364
  }
356
365
 
357
- if (info.file.status === 'done') {
366
+ if (info.file.status === "done") {
358
367
  setLoading(false);
359
368
  var response = (transformResponse || avatarParams.transformResponse)(info.file.response);
360
369
 
361
370
  if (response.code === 200) {
362
371
  propsChange(response.results);
363
372
  } else {
364
- onError(response.msg, 'xhrError', response);
373
+ onError(response.msg, "xhrError", response);
365
374
  }
366
375
  }
367
376
  };
368
377
 
369
378
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(antd.Upload, {
370
- className: classnames__default["default"](className, 'react-form-avatar'),
379
+ className: classnames__default["default"](className, "react-form-avatar"),
371
380
  listType: "picture-card",
372
381
  showUploadList: false,
373
382
  action: action || avatarParams.action,
374
383
  beforeUpload: beforeUpload,
375
384
  onChange: onChange
376
- }, showImageUrl ? /*#__PURE__*/React__default["default"].createElement("div", {
385
+ }, previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) : /*#__PURE__*/React__default["default"].createElement("div", {
377
386
  className: "preview"
378
387
  }, /*#__PURE__*/React__default["default"].createElement("img", {
379
388
  src: showImageUrl,
@@ -382,7 +391,7 @@ var _Avatar = function _Avatar(_ref) {
382
391
  };
383
392
 
384
393
  _Avatar.defaultProps = {
385
- imageType: ['image/jpeg', 'image/png'],
394
+ imageType: ["image/jpeg", "image/png"],
386
395
  fileSize: 2,
387
396
  // 单位MB
388
397
  children: /*#__PURE__*/React__default["default"].createElement("div", {
@@ -391,13 +400,9 @@ _Avatar.defaultProps = {
391
400
  onError: function onError(info) {
392
401
  return antd.message.error(info);
393
402
  },
394
- editor: {
395
- open: false,
396
- width: 250,
397
- height: 250,
398
- borderRadius: 1,
399
- text: '剪切'
400
- }
403
+ previewImg: true,
404
+ previewRender: null,
405
+ openEditor: false
401
406
  };
402
407
 
403
408
  var AvatarInput = function AvatarInput(props) {
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, widget, 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 displayFilename: 'filename',\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 ? `?${globalParams.field.upload.displayFilename}=` + 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 displayFilename = displayFilename || uploadParams.displayFilename;\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 }), displayFilename).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 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","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","imageUrl","value","propsChange","onChange","onBeforeUpload","beforeUpload","imageType","fileSize","onError","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","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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"}
1
+ {"version":3,"file":"index.js","sources":["../src/Form.js","../src/preset.js","../src/fields/Avatar.js","../src/fields/Cascader.js","../src/fields/Checkbox.js","../src/fields/CheckboxGroup.js","../src/fields/DatePicker.js","../src/fields/DatePickerToday.js","../src/fields/Input.js","../src/fields/InputNumber.js","../src/fields/RadioGroup.js","../src/fields/Select.js","../src/fields/SelectFetch.js","../src/fields/Switch.js","../src/fields/TextArea.js","../src/fields/TimePicker.js","../src/fields/TreeSelect.js","../src/fields/Upload.js","../src/SubmitButton.js","../src/ResetButton.js","../src/FormModal.js","../src/index.js"],"sourcesContent":["import React, {forwardRef} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport ReactForm from '@kne/react-form';\r\nimport {widget} from '@kne/react-form-helper';\r\nimport './assets/index.scss';\r\n\r\nexport * from '@kne/react-form';\r\nexport {hooks, widget, utils} from '@kne/react-form-helper';\r\n\r\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\r\n\r\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\r\n let computedClass = 'react-form';\r\n if (type !== 'default') {\r\n computedClass += `--${type}`;\r\n }\r\n\r\n if (size !== 'middle') {\r\n computedClass += `--${size}`;\r\n }\r\n\r\n const maxLabel = <MaxLabelProvider>\r\n {children}\r\n </MaxLabelProvider>;\r\n\r\n return (\r\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }}>\r\n <SizeProvider value={{size}}>\r\n <ReactForm {...props} ref={ref}>\r\n {cache ? <FormStore cache={cache}/> : null}\r\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\r\n {enterSubmit ? <EnterSubmit>\r\n {maxLabel}\r\n </EnterSubmit> : maxLabel}\r\n </ReactForm>\r\n </SizeProvider>\r\n </form>\r\n );\r\n});\r\n\r\nForm.defaultProps = {\r\n type: 'default',\r\n size: 'middle',\r\n scrollToError: true,\r\n enterSubmit: false,\r\n scrollProps: {\r\n block: 'center'\r\n }\r\n};\r\n\r\nForm.propTypes = {\r\n className: PropTypes.string,\r\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\r\n size: PropTypes.oneOf(['small', 'middle', 'large']),\r\n enterSubmit: PropTypes.bool,\r\n scrollToError: PropTypes.bool,\r\n scrollProps: PropTypes.shape({\r\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\r\n behavior: PropTypes.oneOf(['auto', 'smooth']),\r\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\r\n })\r\n};\r\n\r\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\r\nimport merge from 'lodash/merge';\r\nimport get from \"lodash/get\";\r\n\r\nexport const globalParams = {\r\n rules: {},\r\n field: {\r\n upload: {\r\n displayFilename: 'filename',\r\n action: '/open-api/upload_static_file/interview-manager',\r\n transformResponse: (response) => {\r\n const targetPath = get(response, 'results[0].targetPath');\r\n const filename = get(response, 'results[0].filename');\r\n return {\r\n code: response.code,\r\n msg: response.msg,\r\n results: targetPath + (filename ? `?${globalParams.field.upload.displayFilename}=` + encodeURIComponent(filename) : '')\r\n };\r\n }\r\n },\r\n avatar: {\r\n transformResponse: (response) => {\r\n return {\r\n code: response.code,\r\n results: response.results,\r\n msg: response.msg\r\n }\r\n },\r\n action: '/upload'\r\n }\r\n }\r\n};\r\n\r\nexport default (props) => {\r\n merge(globalParams, props);\r\n presetRules(globalParams.rules);\r\n};\r\n","import React, {useState, useRef, useEffect} from \"react\";\r\nimport {Upload, message, Modal, Slider, Row, Col, Space} from \"antd\";\r\nimport {globalParams} from \"../preset\";\r\nimport classnames from \"classnames\";\r\nimport {\r\n PlusOutlined, LoadingOutlined\r\n} from \"@ant-design/icons\";\r\nimport AvatarEditor from \"react-avatar-editor\";\r\nimport {hooks} from \"@kne/react-form-helper\";\r\nimport merge from 'lodash/merge';\r\n\r\nconst {useOnChange} = hooks;\r\nconst avatarParams = globalParams.field.avatar;\r\n\r\n\r\nconst _Avatar = ({\r\n className,\r\n value: imageUrl,\r\n onChange: propsChange,\r\n beforeUpload: onBeforeUpload,\r\n transformResponse,\r\n action,\r\n imageType,\r\n fileSize: size,\r\n children,\r\n onError,\r\n openEditor,\r\n editor: targetEditor,\r\n previewImg,\r\n previewRender\r\n }) => {\r\n const [loading, setLoading] = useState(false);\r\n const [showImageUrl, setImageUrl] = useState(imageUrl);\r\n const editorRef = useRef();\r\n\r\n const defaultEditor = {open: false, width: 250, height: 250, borderRadius: 1, text: \"确定\", title: \"裁剪图片\"};\r\n const editor = merge({}, defaultEditor, {open: openEditor}, targetEditor);\r\n\r\n useEffect(() => {\r\n setImageUrl(imageUrl);\r\n }, [imageUrl]);\r\n\r\n /* base64转blob */\r\n const dataURLtoBlob = (dataurl) => {\r\n let arr = dataurl.split(\",\");\r\n // 注意base64的最后面中括号和引号是不转译的\r\n let _arr = arr[1].substring(0, arr[1].length - 2);\r\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], {\r\n type: mime\r\n });\r\n };\r\n\r\n\r\n const AvatarEditorBox = ({file}) => {\r\n const [rotate, setRotate] = useState(0);\r\n const [scale, setScale] = useState(() => {\r\n if (editor.width === editor.height) {\r\n return 1;\r\n }\r\n return 0.35;\r\n });\r\n\r\n const onChange = (v) => {\r\n setRotate(v);\r\n };\r\n const onChangeScale = (v) => {\r\n setScale(v);\r\n };\r\n return (<div style={{\r\n \"width\": editor.width, \"margin\": \"auto\"\r\n }}>\r\n <AvatarEditor\r\n ref={editorRef}\r\n image={file}\r\n width={editor.width}\r\n height={editor.height}\r\n border={1}\r\n borderRadius={editor.borderRadius}\r\n color={[24, 144, 255, 1]} // RGBA\r\n scale={scale}\r\n rotate={rotate}\r\n />\r\n <Row gutter={4}>\r\n <Col span={4}><span>旋转</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange}/>\r\n </Col>\r\n </Row>\r\n <Row gutter={4}>\r\n <Col span={4}><span>放大</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3}\r\n onChange={onChangeScale}/>\r\n </Col>\r\n </Row>\r\n </div>);\r\n };\r\n\r\n const uploadButton = (<div>\r\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\r\n {children}\r\n </div>);\r\n\r\n const beforeUpload = async (file) => {\r\n return new Promise((resolve, reject) => {\r\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\r\n if (!isJpgOrPng) {\r\n onError(`只支持${imageType.map((str) => str.replace(\"image/\", \"\")).join(\"/\")}格式图片!`, \"typeError\", {\r\n type: imageType, fileType: file.type\r\n });\r\n reject();\r\n return false;\r\n }\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`图片不能超过${size}MB!`, \"sizeError\", {size, fileSize: file.size});\r\n reject();\r\n return false;\r\n }\r\n\r\n /*剪切图像*/\r\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\r\n if (editor.open) {\r\n Modal.success({\r\n title: editor.title,\r\n icon: \"\",\r\n width: editor.width * 2,\r\n content: <AvatarEditorBox file={file}/>,\r\n okText: editor.text,\r\n onOk: (close) => {\r\n let base64 = editorRef.current.getImage().toDataURL();\r\n setImageUrl(base64);\r\n let blob = dataURLtoBlob(base64);\r\n const files = new window.File([blob], file.name, {type: file.type});\r\n onBeforeUpload && onBeforeUpload(files);\r\n resolve(files);\r\n close();\r\n }\r\n });\r\n } else {\r\n onBeforeUpload && onBeforeUpload(file);\r\n resolve(file);\r\n }\r\n });\r\n\r\n };\r\n\r\n const onChange = (info) => {\r\n if (info.file.status === \"uploading\") {\r\n setLoading(true);\r\n return;\r\n }\r\n if (info.file.status === \"done\") {\r\n setLoading(false);\r\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\r\n if (response.code === 200) {\r\n propsChange(response.results);\r\n } else {\r\n onError(response.msg, \"xhrError\", response);\r\n }\r\n }\r\n };\r\n\r\n return (<>\r\n <Upload className={classnames(className, \"react-form-avatar\")} listType=\"picture-card\"\r\n showUploadList={false}\r\n action={action || avatarParams.action}\r\n beforeUpload={beforeUpload} onChange={onChange}>\r\n {previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) :\r\n <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\r\n </Upload>\r\n </>);\r\n};\r\n\r\n_Avatar.defaultProps = {\r\n imageType: [\"image/jpeg\", \"image/png\"],\r\n fileSize: 2, // 单位MB\r\n children: <div className=\"ant-upload-text\">点击上传</div>,\r\n onError: (info) => message.error(info),\r\n previewImg: true,\r\n previewRender: null,\r\n openEditor: false\r\n};\r\n\r\nconst AvatarInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Avatar);\r\n};\r\n\r\nAvatarInput.field = _Avatar;\r\n\r\nexport default AvatarInput;\r\n","import {Cascader as _Cascader} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst Cascader = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Cascader);\r\n};\r\n\r\nexport default Cascader;\r\n\r\n","import {Checkbox as _Checkbox} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\n\r\nconst WithCheckbox = withChecked(_Checkbox);\r\n\r\nconst Checkbox = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithCheckbox);\r\n};\r\n\r\nexport default Checkbox;\r\n","import {Checkbox} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _CheckboxGroup = Checkbox.Group;\r\n\r\nconst CheckboxGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(_CheckboxGroup);\r\n};\r\n\r\nCheckboxGroup.Checkbox = Checkbox;\r\n\r\nexport default CheckboxGroup;\r\n","import {DatePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\r\n\r\nconst _DatePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(DatePicker);\r\n};\r\n\r\nconst _MonthPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(MonthPicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n // if(props.selectToday){\r\n // return render(RangePickerToday);\r\n // }\r\n return render(RangePicker);\r\n};\r\n\r\nconst _WeekPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(WeekPicker);\r\n};\r\n\r\n_DatePicker.MonthPicker = _MonthPicker;\r\n_DatePicker.RangePicker = _RangePicker;\r\n_DatePicker.WeekPicker = _WeekPicker;\r\n\r\n\r\nexport default _DatePicker;\r\n","import {Button, DatePicker} from 'antd';\r\nimport React, {useRef, useEffect, useMemo} from 'react'\r\nimport moment from 'moment'\r\nimport get from 'lodash/get'\r\nimport useControlValue from '@kne/use-control-value'\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst PickerToday = (props) => {\r\n // console.log('>>>>data', data);\r\n const [data, onChange] = useControlValue(props);\r\n const ref_d = useRef();\r\n const newData = useMemo(() => {\r\n // console.log('......', data);\r\n const s = get(data, 0, '');\r\n const d = get(data, 1, '');\r\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\r\n return {\r\n start: s ? moment(s) : '',\r\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\r\n showZj: d === '至今',\r\n placeholder: p\r\n }\r\n }, [data]);\r\n\r\n const startChange = (v) => {\r\n // 比较日期大小\r\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\r\n onChange([newData.end, v]);\r\n return\r\n }\r\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\r\n };\r\n\r\n const endChange = (v) => {\r\n if (newData.start && v && v.isBefore(newData.start)) {\r\n onChange([v, newData.start]);\r\n return\r\n }\r\n onChange([newData.start, v || '']);\r\n };\r\n\r\n const foot = () => {\r\n return (\r\n <Button onClick={(v) => {\r\n ref_d.current.blur();\r\n onChange([newData.start || '', '至今']);\r\n }}>\r\n 至今\r\n </Button>\r\n )\r\n }\r\n return (\r\n <div style={{display: 'flex'}}>\r\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\r\n onChange={startChange}/>\r\n <div className={'svg_box'}>\r\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\r\n fill=\"currentColor\" aria-hidden=\"true\">\r\n <path\r\n d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"/>\r\n </svg>\r\n </div>\r\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\r\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\r\n <DatePicker {...{\r\n showToday: false,\r\n ...props,\r\n placeholder: newData.showZj ? '' : newData.placeholder[1],\r\n value: newData.end\r\n }} ref={ref_d}\r\n onChange={endChange} renderExtraFooter={foot}/>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n\r\nconst RangePickerToday = (props) => {\r\n const render = useOnChange(props);\r\n return render(PickerToday);\r\n};\r\n\r\nRangePickerToday.field = PickerToday;\r\n\r\nexport default RangePickerToday;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputField = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input);\r\n};\r\n\r\nInputField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputField;\r\n","import {InputNumber} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputNumberField = (props) => {\r\n const render = useDecorator(props);\r\n return render(InputNumber);\r\n};\r\n\r\nInputNumberField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputNumberField;\r\n","import React, {useCallback} from 'react';\r\nimport {Radio} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst RadioGroup = ({onChange, ...props})=>{\r\n const handler = useCallback((e) => {\r\n onChange && onChange(e.target.value);\r\n }, [onChange]);\r\n return <Radio.Group {...props} onChange={handler}/>\r\n};\r\n\r\nconst _RadioGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(RadioGroup);\r\n};\r\n\r\n_RadioGroup.Radio = Radio;\r\n\r\nexport default _RadioGroup;\r\n","import {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _Select = (props) => {\r\n const render = useOnChange(props);\r\n return render(Select);\r\n};\r\n\r\n_Select.Option = Select.Option;\r\n_Select.OptGroup = Select.OptGroup;\r\n\r\nexport default _Select;\r\n","import React from 'react';\r\nimport {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {withFetch} from '@kne/react-fetch';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\r\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\r\n});\r\n\r\nconst SelectFetch = (props) => {\r\n const render = useOnChange(props);\r\n return render(_SelectFetch);\r\n};\r\n\r\nSelectFetch.Option = Select.Option;\r\nSelectFetch.OptGroup = Select.OptGroup;\r\n\r\nexport default SelectFetch;\r\n","import {Switch as _Switch} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\nconst WithSwitch = withChecked(_Switch);\r\n\r\nconst Switch = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithSwitch);\r\n};\r\n\r\nexport default Switch;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst TextArea = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input.TextArea);\r\n};\r\n\r\nexport default TextArea;\r\n","import {TimePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {RangePicker} = TimePicker;\r\n\r\nconst _TimePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(TimePicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(RangePicker);\r\n};\r\n\r\n_TimePicker.RangePicker = _RangePicker;\r\n\r\nexport default _TimePicker;\r\n","import {TreeSelect} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _TreeSelect = (props) => {\r\n const render = useOnChange(props);\r\n return render(TreeSelect);\r\n};\r\n\r\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\r\n\r\nexport default _TreeSelect;\r\n","import React, {useState, useMemo} from 'react';\r\nimport {Upload, message, Button} from 'antd';\r\nimport {\r\n UploadOutlined\r\n} from '@ant-design/icons';\r\nimport get from 'lodash/get';\r\nimport groupBy from 'lodash/groupBy';\r\nimport uniqueId from 'lodash/uniqueId';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {globalParams} from \"../preset\";\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {Dragger} = Upload;\r\n\r\nconst uploadParams = globalParams.field.upload;\r\n\r\nconst computedFilename = (path, displayFilename = 'filename') => {\r\n const strArray = path.split('?');\r\n if (strArray[1]) {\r\n const query = {};\r\n strArray[1].split('&').forEach((str) => {\r\n const [key, value] = str.split('=');\r\n query[key] = value;\r\n });\r\n if (query[displayFilename]) {\r\n return decodeURIComponent(query[displayFilename]);\r\n }\r\n }\r\n return path;\r\n};\r\n\r\nconst valueToList = (value, displayFilename) => {\r\n if (!value) {\r\n return [];\r\n }\r\n return value.map((item) => {\r\n return {\r\n uid: uniqueId(),\r\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\r\n status: 'done',\r\n response: {code: 200, results: item}\r\n }\r\n });\r\n};\r\n\r\nconst listToValue = (value) => {\r\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\r\n};\r\n\r\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\r\n displayFilename = displayFilename || uploadParams.displayFilename;\r\n const [list, setList] = useState([]);\r\n const valueList = useMemo(() => {\r\n return valueToList(value.filter((url) => {\r\n return !list.find((file) => get(file, 'response.results') === url);\r\n }), displayFilename).concat(list);\r\n }, [list, value, displayFilename]);\r\n const changeHandler = (info) => {\r\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\r\n return;\r\n }\r\n if (info.fileList.length > maxLength) {\r\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\r\n return;\r\n }\r\n if (info.file.status === 'done') {\r\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\r\n if (info.file.response.code === 200) {\r\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\r\n onUploadComplete(info);\r\n } else {\r\n info.file.status = 'error';\r\n onError(info.file.response.msg, 'xhrError', info.file.response);\r\n }\r\n }\r\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\r\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\r\n onChange(listToValue(done));\r\n }\r\n setList(info.fileList);\r\n };\r\n const beforeUploadHandler = (file) => {\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\r\n return false;\r\n }\r\n if (maxLength === 1) {\r\n onChange([]);\r\n setList([]);\r\n }\r\n return onBeforeUpload && onBeforeUpload(file);\r\n };\r\n const UploadComponent = drag ? Dragger : Upload;\r\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\r\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\r\n {children}\r\n </UploadComponent>\r\n};\r\n\r\n_Upload.defaultProps = {\r\n value: [],\r\n accept: [],\r\n fileSize: 2,\r\n maxLength: 1,\r\n children: <Button><UploadOutlined/>点击上传</Button>,\r\n onError: (info) => message.error(info),\r\n onUploadComplete: () => {\r\n }\r\n};\r\n\r\nconst UploadInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Upload);\r\n};\r\n\r\n\r\nUploadInput.field = _Upload;\r\n\r\nexport default UploadInput;\r\n","import React from 'react';\r\nimport {useSubmit} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst SubmitButton = (props) => {\r\n const {isPass, isLoading,...submitProps} = useSubmit(props);\r\n return (\r\n <Button loading={isLoading} {...submitProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default SubmitButton;\r\n","import React from 'react';\r\nimport {useReset} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst ResetButton = (props) => {\r\n const resetProps = useReset();\r\n return (\r\n <Button {...resetProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default ResetButton;\r\n","import React from 'react';\r\nimport {Modal, Space} from 'antd';\r\nimport SubmitButton from './SubmitButton';\r\nimport ResetButton from './ResetButton';\r\nimport Form from \"./Form\";\r\nimport {withFetch} from '@kne/react-fetch';\r\nimport classnames from 'classnames';\r\n\r\nconst FetchForm = withFetch(Form);\r\n\r\nconst CommonModal = ({formProps, footer, children}) => {\r\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\r\n return <TargetForm {...formProps}>\r\n <div className=\"ant-modal-body\">\r\n {children}\r\n </div>\r\n <div className=\"ant-modal-footer\">\r\n {footer ? footer : <Space>\r\n <ResetButton>重置</ResetButton>\r\n <SubmitButton type=\"primary\">确定</SubmitButton>\r\n </Space>}\r\n </div>\r\n </TargetForm>;\r\n};\r\n\r\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\r\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\r\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\r\n </Modal>\r\n};\r\n\r\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\r\n ...props,\r\n title: title ? <div className=\"ant-modal-header\">\r\n <div className=\"ant-modal-title\">{title}</div>\r\n </div> : null,\r\n className: classnames(className, 'react-form-modal'),\r\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\r\n icon: null,\r\n footer: null\r\n});\r\n\r\nexport default FormModal;\r\n","import Form from './Form';\n\nimport Avatar$ from './fields/Avatar';\nimport Cascader$ from './fields/Cascader';\nimport Checkbox$ from './fields/Checkbox';\nimport CheckboxGroup$ from './fields/CheckboxGroup';\nimport DatePicker$ from './fields/DatePicker';\nimport DatePickerToday$ from './fields/DatePickerToday';\nimport Input$ from './fields/Input';\nimport InputNumber$ from './fields/InputNumber';\nimport RadioGroup$ from './fields/RadioGroup';\nimport Select$ from './fields/Select';\nimport SelectFetch$ from './fields/SelectFetch';\nimport Switch$ from './fields/Switch';\nimport TextArea$ from './fields/TextArea';\nimport TimePicker$ from './fields/TimePicker';\nimport TreeSelect$ from './fields/TreeSelect';\nimport Upload$ from './fields/Upload';\n\nexport * from './Form';\nexport default Form;\nexport {default as preset} from './preset';\nexport {default as FormModal} from './FormModal';\nexport {default as ResetButton} from './ResetButton';\nexport {default as SubmitButton} from './SubmitButton';\n\nexport const Avatar = Avatar$;\nexport const Cascader = Cascader$;\nexport const Checkbox = Checkbox$;\nexport const CheckboxGroup = CheckboxGroup$;\nexport const DatePicker = DatePicker$;\nexport const DatePickerToday = DatePickerToday$;\nexport const Input = Input$;\nexport const InputNumber = InputNumber$;\nexport const RadioGroup = RadioGroup$;\nexport const Select = Select$;\nexport const SelectFetch = SelectFetch$;\nexport const Switch = Switch$;\nexport const TextArea = TextArea$;\nexport const TimePicker = TimePicker$;\nexport const TreeSelect = TreeSelect$;\nexport const Upload = Upload$;\n\nexport const fields = { Avatar, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, Input, InputNumber, RadioGroup, Select, SelectFetch, Switch, TextArea, TimePicker, TreeSelect, Upload };"],"names":["ScrollToError","widget","EnterSubmit","FormStore","MaxLabelProvider","SizeProvider","Form","forwardRef","ref","className","cache","enterSubmit","scrollToError","scrollProps","type","size","children","props","computedClass","maxLabel","React","classnames","e","preventDefault","stopPropagation","ReactForm","defaultProps","block","propTypes","PropTypes","string","oneOf","bool","shape","behavior","inline","globalParams","rules","field","upload","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","imageUrl","value","propsChange","onChange","onBeforeUpload","beforeUpload","imageType","fileSize","onError","openEditor","targetEditor","editor","previewImg","previewRender","useState","loading","setLoading","showImageUrl","setImageUrl","editorRef","useRef","defaultEditor","open","width","height","borderRadius","text","title","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","v","onChangeScale","AvatarEditor","Row","Col","Slider","uploadButton","LoadingOutlined","PlusOutlined","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","Modal","success","icon","content","okText","onOk","close","base64","current","getImage","toDataURL","blob","files","window","File","name","info","status","Upload","message","error","AvatarInput","render","Cascader","_Cascader","useCheckedToValue","withChecked","hoc","WithCheckbox","_Checkbox","Checkbox","checkedProps","_CheckboxGroup","Group","CheckboxGroup","MonthPicker","DatePicker","RangePicker","WeekPicker","_DatePicker","_MonthPicker","_RangePicker","_WeekPicker","PickerToday","useControlValue","data","ref_d","newData","useMemo","s","d","p","start","moment","end","showZj","placeholder","startChange","isBefore","endChange","foot","Button","blur","display","showToday","RangePickerToday","useDecorator","InputField","Input","autoComplete","InputNumberField","InputNumber","RadioGroup","handler","useCallback","target","Radio","_RadioGroup","_Select","Select","Option","OptGroup","_SelectFetch","withFetch","setData","refresh","isLoading","SelectFetch","WithSwitch","_Switch","Switch","TextArea","TimePicker","_TimePicker","_TreeSelect","TreeSelect","TreeNode","Dragger","uploadParams","computedFilename","path","strArray","query","forEach","key","decodeURIComponent","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","_Upload","drag","accept","onUploadComplete","maxLength","list","setList","valueList","url","find","concat","changeHandler","fileList","groupBy","done","beforeUploadHandler","UploadComponent","UploadOutlined","UploadInput","SubmitButton","useSubmit","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","Space","FormModal","modal","Avatar","Avatar$","Cascader$","Checkbox$","CheckboxGroup$","DatePicker$","DatePickerToday","DatePickerToday$","Input$","InputNumber$","RadioGroup$","Select$","SelectFetch$","Switch$","TextArea$","TimePicker$","TreeSelect$","Upload$","fields"],"mappings":"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"}
@@ -170,18 +170,32 @@ const _Avatar = ({
170
170
  fileSize: size,
171
171
  children,
172
172
  onError,
173
- editor
173
+ openEditor,
174
+ editor: targetEditor,
175
+ previewImg,
176
+ previewRender
174
177
  }) => {
175
178
  const [loading, setLoading] = useState(false);
176
179
  const [showImageUrl, setImageUrl] = useState(imageUrl);
177
180
  const editorRef = useRef();
181
+ const defaultEditor = {
182
+ open: false,
183
+ width: 250,
184
+ height: 250,
185
+ borderRadius: 1,
186
+ text: "确定",
187
+ title: "裁剪图片"
188
+ };
189
+ const editor = merge({}, defaultEditor, {
190
+ open: openEditor
191
+ }, targetEditor);
178
192
  useEffect(() => {
179
193
  setImageUrl(imageUrl);
180
194
  }, [imageUrl]);
181
195
  /* base64转blob */
182
196
 
183
197
  const dataURLtoBlob = dataurl => {
184
- let arr = dataurl.split(','); // 注意base64的最后面中括号和引号是不转译的
198
+ let arr = dataurl.split(","); // 注意base64的最后面中括号和引号是不转译的
185
199
 
186
200
  let _arr = arr[1].substring(0, arr[1].length - 2);
187
201
 
@@ -212,19 +226,17 @@ const _Avatar = ({
212
226
  });
213
227
 
214
228
  const onChange = v => {
215
- console.log(v);
216
229
  setRotate(v);
217
230
  };
218
231
 
219
232
  const onChangeScale = v => {
220
- console.log(v);
221
233
  setScale(v);
222
234
  };
223
235
 
224
236
  return /*#__PURE__*/React.createElement("div", {
225
237
  style: {
226
- 'width': editor.width,
227
- 'margin': 'auto'
238
+ "width": editor.width,
239
+ "margin": "auto"
228
240
  }
229
241
  }, /*#__PURE__*/React.createElement(AvatarEditor, {
230
242
  ref: editorRef,
@@ -269,11 +281,10 @@ const _Avatar = ({
269
281
 
270
282
  const beforeUpload = async file => {
271
283
  return new Promise((resolve, reject) => {
272
- console.log('文件', file);
273
284
  const isJpgOrPng = imageType.indexOf(file.type) > -1;
274
285
 
275
286
  if (!isJpgOrPng) {
276
- onError(`只支持${imageType.map(str => str.replace('image/', '')).join('/')}格式图片!`, 'typeError', {
287
+ onError(`只支持${imageType.map(str => str.replace("image/", "")).join("/")}格式图片!`, "typeError", {
277
288
  type: imageType,
278
289
  fileType: file.type
279
290
  });
@@ -284,7 +295,7 @@ const _Avatar = ({
284
295
  const isLt = file.size / 1024 / 1024 < size;
285
296
 
286
297
  if (!isLt) {
287
- onError(`图片不能超过${size}MB!`, 'sizeError', {
298
+ onError(`图片不能超过${size}MB!`, "sizeError", {
288
299
  size,
289
300
  fileSize: file.size
290
301
  });
@@ -297,15 +308,14 @@ const _Avatar = ({
297
308
 
298
309
  if (editor.open) {
299
310
  Modal.success({
300
- // title: '剪切图像',
301
- icon: '',
311
+ title: editor.title,
312
+ icon: "",
302
313
  width: editor.width * 2,
303
314
  content: /*#__PURE__*/React.createElement(AvatarEditorBox, {
304
315
  file: file
305
316
  }),
306
317
  okText: editor.text,
307
318
  onOk: close => {
308
- // console.log(editorRef.current);
309
319
  let base64 = editorRef.current.getImage().toDataURL();
310
320
  setImageUrl(base64);
311
321
  let blob = dataURLtoBlob(base64);
@@ -313,44 +323,43 @@ const _Avatar = ({
313
323
  type: file.type
314
324
  });
315
325
  onBeforeUpload && onBeforeUpload(files);
316
- resolve(files); // console.log(files);
317
-
326
+ resolve(files);
318
327
  close();
319
328
  }
320
329
  });
321
330
  } else {
322
331
  onBeforeUpload && onBeforeUpload(file);
323
- resolve(file); // return onBeforeUpload && onBeforeUpload(file);
332
+ resolve(file);
324
333
  }
325
334
  });
326
335
  };
327
336
 
328
337
  const onChange = info => {
329
- if (info.file.status === 'uploading') {
338
+ if (info.file.status === "uploading") {
330
339
  setLoading(true);
331
340
  return;
332
341
  }
333
342
 
334
- if (info.file.status === 'done') {
343
+ if (info.file.status === "done") {
335
344
  setLoading(false);
336
345
  const response = (transformResponse || avatarParams.transformResponse)(info.file.response);
337
346
 
338
347
  if (response.code === 200) {
339
348
  propsChange(response.results);
340
349
  } else {
341
- onError(response.msg, 'xhrError', response);
350
+ onError(response.msg, "xhrError", response);
342
351
  }
343
352
  }
344
353
  };
345
354
 
346
355
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Upload$1, {
347
- className: classnames(className, 'react-form-avatar'),
356
+ className: classnames(className, "react-form-avatar"),
348
357
  listType: "picture-card",
349
358
  showUploadList: false,
350
359
  action: action || avatarParams.action,
351
360
  beforeUpload: beforeUpload,
352
361
  onChange: onChange
353
- }, showImageUrl ? /*#__PURE__*/React.createElement("div", {
362
+ }, previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) : /*#__PURE__*/React.createElement("div", {
354
363
  className: "preview"
355
364
  }, /*#__PURE__*/React.createElement("img", {
356
365
  src: showImageUrl,
@@ -359,20 +368,16 @@ const _Avatar = ({
359
368
  };
360
369
 
361
370
  _Avatar.defaultProps = {
362
- imageType: ['image/jpeg', 'image/png'],
371
+ imageType: ["image/jpeg", "image/png"],
363
372
  fileSize: 2,
364
373
  // 单位MB
365
374
  children: /*#__PURE__*/React.createElement("div", {
366
375
  className: "ant-upload-text"
367
376
  }, "\u70B9\u51FB\u4E0A\u4F20"),
368
377
  onError: info => message.error(info),
369
- editor: {
370
- open: false,
371
- width: 250,
372
- height: 250,
373
- borderRadius: 1,
374
- text: '剪切'
375
- }
378
+ previewImg: true,
379
+ previewRender: null,
380
+ openEditor: false
376
381
  };
377
382
 
378
383
  const AvatarInput = props => {
@@ -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, widget, 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 displayFilename: 'filename',\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 ? `?${globalParams.field.upload.displayFilename}=` + 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 displayFilename = displayFilename || uploadParams.displayFilename;\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 }), displayFilename).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 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","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","value","imageUrl","onChange","propsChange","beforeUpload","onBeforeUpload","imageType","fileSize","onError","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","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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"}
1
+ {"version":3,"file":"index.modern.js","sources":["../src/Form.js","../src/preset.js","../src/fields/Avatar.js","../src/fields/Cascader.js","../src/fields/Checkbox.js","../src/fields/CheckboxGroup.js","../src/fields/DatePicker.js","../src/fields/DatePickerToday.js","../src/fields/Input.js","../src/fields/InputNumber.js","../src/fields/RadioGroup.js","../src/fields/Select.js","../src/fields/SelectFetch.js","../src/fields/Switch.js","../src/fields/TextArea.js","../src/fields/TimePicker.js","../src/fields/TreeSelect.js","../src/fields/Upload.js","../src/SubmitButton.js","../src/ResetButton.js","../src/FormModal.js","../src/index.js"],"sourcesContent":["import React, {forwardRef} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport ReactForm from '@kne/react-form';\r\nimport {widget} from '@kne/react-form-helper';\r\nimport './assets/index.scss';\r\n\r\nexport * from '@kne/react-form';\r\nexport {hooks, widget, utils} from '@kne/react-form-helper';\r\n\r\nconst {ScrollToError, EnterSubmit, FormStore, MaxLabelProvider, SizeProvider} = widget;\r\n\r\nconst Form = forwardRef(({className, cache, enterSubmit, scrollToError, scrollProps, type, size, children, ...props}, ref) => {\r\n let computedClass = 'react-form';\r\n if (type !== 'default') {\r\n computedClass += `--${type}`;\r\n }\r\n\r\n if (size !== 'middle') {\r\n computedClass += `--${size}`;\r\n }\r\n\r\n const maxLabel = <MaxLabelProvider>\r\n {children}\r\n </MaxLabelProvider>;\r\n\r\n return (\r\n <form className={classnames(computedClass, className)} onSubmit={(e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }}>\r\n <SizeProvider value={{size}}>\r\n <ReactForm {...props} ref={ref}>\r\n {cache ? <FormStore cache={cache}/> : null}\r\n {scrollToError ? <ScrollToError scrollProps={scrollProps}/> : null}\r\n {enterSubmit ? <EnterSubmit>\r\n {maxLabel}\r\n </EnterSubmit> : maxLabel}\r\n </ReactForm>\r\n </SizeProvider>\r\n </form>\r\n );\r\n});\r\n\r\nForm.defaultProps = {\r\n type: 'default',\r\n size: 'middle',\r\n scrollToError: true,\r\n enterSubmit: false,\r\n scrollProps: {\r\n block: 'center'\r\n }\r\n};\r\n\r\nForm.propTypes = {\r\n className: PropTypes.string,\r\n type: PropTypes.oneOf(['inline', 'default', 'inner']),\r\n size: PropTypes.oneOf(['small', 'middle', 'large']),\r\n enterSubmit: PropTypes.bool,\r\n scrollToError: PropTypes.bool,\r\n scrollProps: PropTypes.shape({\r\n block: PropTypes.oneOf(['start', 'center', 'end', 'nearest']),\r\n behavior: PropTypes.oneOf(['auto', 'smooth']),\r\n inline: PropTypes.oneOf(['start', 'center', 'end', 'nearest'])\r\n })\r\n};\r\n\r\nexport default Form;","import {preset as presetRules} from '@kne/react-form';\r\nimport merge from 'lodash/merge';\r\nimport get from \"lodash/get\";\r\n\r\nexport const globalParams = {\r\n rules: {},\r\n field: {\r\n upload: {\r\n displayFilename: 'filename',\r\n action: '/open-api/upload_static_file/interview-manager',\r\n transformResponse: (response) => {\r\n const targetPath = get(response, 'results[0].targetPath');\r\n const filename = get(response, 'results[0].filename');\r\n return {\r\n code: response.code,\r\n msg: response.msg,\r\n results: targetPath + (filename ? `?${globalParams.field.upload.displayFilename}=` + encodeURIComponent(filename) : '')\r\n };\r\n }\r\n },\r\n avatar: {\r\n transformResponse: (response) => {\r\n return {\r\n code: response.code,\r\n results: response.results,\r\n msg: response.msg\r\n }\r\n },\r\n action: '/upload'\r\n }\r\n }\r\n};\r\n\r\nexport default (props) => {\r\n merge(globalParams, props);\r\n presetRules(globalParams.rules);\r\n};\r\n","import React, {useState, useRef, useEffect} from \"react\";\r\nimport {Upload, message, Modal, Slider, Row, Col, Space} from \"antd\";\r\nimport {globalParams} from \"../preset\";\r\nimport classnames from \"classnames\";\r\nimport {\r\n PlusOutlined, LoadingOutlined\r\n} from \"@ant-design/icons\";\r\nimport AvatarEditor from \"react-avatar-editor\";\r\nimport {hooks} from \"@kne/react-form-helper\";\r\nimport merge from 'lodash/merge';\r\n\r\nconst {useOnChange} = hooks;\r\nconst avatarParams = globalParams.field.avatar;\r\n\r\n\r\nconst _Avatar = ({\r\n className,\r\n value: imageUrl,\r\n onChange: propsChange,\r\n beforeUpload: onBeforeUpload,\r\n transformResponse,\r\n action,\r\n imageType,\r\n fileSize: size,\r\n children,\r\n onError,\r\n openEditor,\r\n editor: targetEditor,\r\n previewImg,\r\n previewRender\r\n }) => {\r\n const [loading, setLoading] = useState(false);\r\n const [showImageUrl, setImageUrl] = useState(imageUrl);\r\n const editorRef = useRef();\r\n\r\n const defaultEditor = {open: false, width: 250, height: 250, borderRadius: 1, text: \"确定\", title: \"裁剪图片\"};\r\n const editor = merge({}, defaultEditor, {open: openEditor}, targetEditor);\r\n\r\n useEffect(() => {\r\n setImageUrl(imageUrl);\r\n }, [imageUrl]);\r\n\r\n /* base64转blob */\r\n const dataURLtoBlob = (dataurl) => {\r\n let arr = dataurl.split(\",\");\r\n // 注意base64的最后面中括号和引号是不转译的\r\n let _arr = arr[1].substring(0, arr[1].length - 2);\r\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], {\r\n type: mime\r\n });\r\n };\r\n\r\n\r\n const AvatarEditorBox = ({file}) => {\r\n const [rotate, setRotate] = useState(0);\r\n const [scale, setScale] = useState(() => {\r\n if (editor.width === editor.height) {\r\n return 1;\r\n }\r\n return 0.35;\r\n });\r\n\r\n const onChange = (v) => {\r\n setRotate(v);\r\n };\r\n const onChangeScale = (v) => {\r\n setScale(v);\r\n };\r\n return (<div style={{\r\n \"width\": editor.width, \"margin\": \"auto\"\r\n }}>\r\n <AvatarEditor\r\n ref={editorRef}\r\n image={file}\r\n width={editor.width}\r\n height={editor.height}\r\n border={1}\r\n borderRadius={editor.borderRadius}\r\n color={[24, 144, 255, 1]} // RGBA\r\n scale={scale}\r\n rotate={rotate}\r\n />\r\n <Row gutter={4}>\r\n <Col span={4}><span>旋转</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={rotate} min={-180} max={180} onChange={onChange}/>\r\n </Col>\r\n </Row>\r\n <Row gutter={4}>\r\n <Col span={4}><span>放大</span></Col>\r\n <Col span={15}>\r\n <Slider tooltipVisible={false} defaultValue={scale} step={0.05} min={0.2} max={3}\r\n onChange={onChangeScale}/>\r\n </Col>\r\n </Row>\r\n </div>);\r\n };\r\n\r\n const uploadButton = (<div>\r\n {loading ? <LoadingOutlined/> : <PlusOutlined/>}\r\n {children}\r\n </div>);\r\n\r\n const beforeUpload = async (file) => {\r\n return new Promise((resolve, reject) => {\r\n const isJpgOrPng = imageType.indexOf(file.type) > -1;\r\n if (!isJpgOrPng) {\r\n onError(`只支持${imageType.map((str) => str.replace(\"image/\", \"\")).join(\"/\")}格式图片!`, \"typeError\", {\r\n type: imageType, fileType: file.type\r\n });\r\n reject();\r\n return false;\r\n }\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`图片不能超过${size}MB!`, \"sizeError\", {size, fileSize: file.size});\r\n reject();\r\n return false;\r\n }\r\n\r\n /*剪切图像*/\r\n // editor:{open:false,width:250,height:250,borderRadius:0-100,text:'剪切'}\r\n if (editor.open) {\r\n Modal.success({\r\n title: editor.title,\r\n icon: \"\",\r\n width: editor.width * 2,\r\n content: <AvatarEditorBox file={file}/>,\r\n okText: editor.text,\r\n onOk: (close) => {\r\n let base64 = editorRef.current.getImage().toDataURL();\r\n setImageUrl(base64);\r\n let blob = dataURLtoBlob(base64);\r\n const files = new window.File([blob], file.name, {type: file.type});\r\n onBeforeUpload && onBeforeUpload(files);\r\n resolve(files);\r\n close();\r\n }\r\n });\r\n } else {\r\n onBeforeUpload && onBeforeUpload(file);\r\n resolve(file);\r\n }\r\n });\r\n\r\n };\r\n\r\n const onChange = (info) => {\r\n if (info.file.status === \"uploading\") {\r\n setLoading(true);\r\n return;\r\n }\r\n if (info.file.status === \"done\") {\r\n setLoading(false);\r\n const response = (transformResponse || avatarParams.transformResponse)(info.file.response);\r\n if (response.code === 200) {\r\n propsChange(response.results);\r\n } else {\r\n onError(response.msg, \"xhrError\", response);\r\n }\r\n }\r\n };\r\n\r\n return (<>\r\n <Upload className={classnames(className, \"react-form-avatar\")} listType=\"picture-card\"\r\n showUploadList={false}\r\n action={action || avatarParams.action}\r\n beforeUpload={beforeUpload} onChange={onChange}>\r\n {previewImg && showImageUrl ? previewRender ? previewRender(showImageUrl) :\r\n <div className=\"preview\"><img src={showImageUrl} alt=\"avatar\"/></div> : uploadButton}\r\n </Upload>\r\n </>);\r\n};\r\n\r\n_Avatar.defaultProps = {\r\n imageType: [\"image/jpeg\", \"image/png\"],\r\n fileSize: 2, // 单位MB\r\n children: <div className=\"ant-upload-text\">点击上传</div>,\r\n onError: (info) => message.error(info),\r\n previewImg: true,\r\n previewRender: null,\r\n openEditor: false\r\n};\r\n\r\nconst AvatarInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Avatar);\r\n};\r\n\r\nAvatarInput.field = _Avatar;\r\n\r\nexport default AvatarInput;\r\n","import {Cascader as _Cascader} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst Cascader = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Cascader);\r\n};\r\n\r\nexport default Cascader;\r\n\r\n","import {Checkbox as _Checkbox} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\n\r\nconst WithCheckbox = withChecked(_Checkbox);\r\n\r\nconst Checkbox = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithCheckbox);\r\n};\r\n\r\nexport default Checkbox;\r\n","import {Checkbox} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _CheckboxGroup = Checkbox.Group;\r\n\r\nconst CheckboxGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(_CheckboxGroup);\r\n};\r\n\r\nCheckboxGroup.Checkbox = Checkbox;\r\n\r\nexport default CheckboxGroup;\r\n","import {DatePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {MonthPicker, RangePicker, WeekPicker} = DatePicker;\r\n\r\nconst _DatePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(DatePicker);\r\n};\r\n\r\nconst _MonthPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(MonthPicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n // if(props.selectToday){\r\n // return render(RangePickerToday);\r\n // }\r\n return render(RangePicker);\r\n};\r\n\r\nconst _WeekPicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(WeekPicker);\r\n};\r\n\r\n_DatePicker.MonthPicker = _MonthPicker;\r\n_DatePicker.RangePicker = _RangePicker;\r\n_DatePicker.WeekPicker = _WeekPicker;\r\n\r\n\r\nexport default _DatePicker;\r\n","import {Button, DatePicker} from 'antd';\r\nimport React, {useRef, useEffect, useMemo} from 'react'\r\nimport moment from 'moment'\r\nimport get from 'lodash/get'\r\nimport useControlValue from '@kne/use-control-value'\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst PickerToday = (props) => {\r\n // console.log('>>>>data', data);\r\n const [data, onChange] = useControlValue(props);\r\n const ref_d = useRef();\r\n const newData = useMemo(() => {\r\n // console.log('......', data);\r\n const s = get(data, 0, '');\r\n const d = get(data, 1, '');\r\n const p = get(props, ['placeholder'], ['开始日期', '结束日期']);\r\n return {\r\n start: s ? moment(s) : '',\r\n end: d === '至今' ? moment('2099-09-09') : (d ? moment(d) : ''),\r\n showZj: d === '至今',\r\n placeholder: p\r\n }\r\n }, [data]);\r\n\r\n const startChange = (v) => {\r\n // 比较日期大小\r\n if (!newData.showZj && newData.end && v && newData.end.isBefore(v)) {\r\n onChange([newData.end, v]);\r\n return\r\n }\r\n onChange([v || '', newData.showZj ? '至今' : newData.end]);\r\n };\r\n\r\n const endChange = (v) => {\r\n if (newData.start && v && v.isBefore(newData.start)) {\r\n onChange([v, newData.start]);\r\n return\r\n }\r\n onChange([newData.start, v || '']);\r\n };\r\n\r\n const foot = () => {\r\n return (\r\n <Button onClick={(v) => {\r\n ref_d.current.blur();\r\n onChange([newData.start || '', '至今']);\r\n }}>\r\n 至今\r\n </Button>\r\n )\r\n }\r\n return (\r\n <div style={{display: 'flex'}}>\r\n <DatePicker {...{showToday: false, ...props, placeholder: newData.placeholder[0], value: newData.start}}\r\n onChange={startChange}/>\r\n <div className={'svg_box'}>\r\n <svg viewBox=\"0 0 1024 1024\" focusable=\"false\" data-icon=\"swap-right\" width=\"1em\" height=\"1em\"\r\n fill=\"currentColor\" aria-hidden=\"true\">\r\n <path\r\n d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"/>\r\n </svg>\r\n </div>\r\n <div className={newData.showZj ? 'data_range_picker data_range_picker_dis' : 'data_range_picker'}>\r\n <span className={newData.showZj ? 'zhijin zhijin_show' : 'zhijin'}>至今</span>\r\n <DatePicker {...{\r\n showToday: false,\r\n ...props,\r\n placeholder: newData.showZj ? '' : newData.placeholder[1],\r\n value: newData.end\r\n }} ref={ref_d}\r\n onChange={endChange} renderExtraFooter={foot}/>\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\n\r\nconst RangePickerToday = (props) => {\r\n const render = useOnChange(props);\r\n return render(PickerToday);\r\n};\r\n\r\nRangePickerToday.field = PickerToday;\r\n\r\nexport default RangePickerToday;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputField = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input);\r\n};\r\n\r\nInputField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputField;\r\n","import {InputNumber} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst InputNumberField = (props) => {\r\n const render = useDecorator(props);\r\n return render(InputNumber);\r\n};\r\n\r\nInputNumberField.defaultProps = {\r\n autoComplete: 'off'\r\n};\r\n\r\nexport default InputNumberField;\r\n","import React, {useCallback} from 'react';\r\nimport {Radio} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst RadioGroup = ({onChange, ...props})=>{\r\n const handler = useCallback((e) => {\r\n onChange && onChange(e.target.value);\r\n }, [onChange]);\r\n return <Radio.Group {...props} onChange={handler}/>\r\n};\r\n\r\nconst _RadioGroup = (props) => {\r\n const render = useOnChange(props);\r\n return render(RadioGroup);\r\n};\r\n\r\n_RadioGroup.Radio = Radio;\r\n\r\nexport default _RadioGroup;\r\n","import {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _Select = (props) => {\r\n const render = useOnChange(props);\r\n return render(Select);\r\n};\r\n\r\n_Select.Option = Select.Option;\r\n_Select.OptGroup = Select.OptGroup;\r\n\r\nexport default _Select;\r\n","import React from 'react';\r\nimport {Select} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {withFetch} from '@kne/react-fetch';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _SelectFetch = withFetch(({data, setData, refresh, isLoading, children, ...props}) => {\r\n return <Select {...props}>{children({data, refresh, isLoading, setData})}</Select>;\r\n});\r\n\r\nconst SelectFetch = (props) => {\r\n const render = useOnChange(props);\r\n return render(_SelectFetch);\r\n};\r\n\r\nSelectFetch.Option = Select.Option;\r\nSelectFetch.OptGroup = Select.OptGroup;\r\n\r\nexport default SelectFetch;\r\n","import {Switch as _Switch} from 'antd';\r\nimport {hooks, hoc} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange, useCheckedToValue} = hooks;\r\nconst {withChecked} = hoc;\r\nconst WithSwitch = withChecked(_Switch);\r\n\r\nconst Switch = (props) => {\r\n const checkedProps = useCheckedToValue(props);\r\n const render = useOnChange(checkedProps);\r\n return render(WithSwitch);\r\n};\r\n\r\nexport default Switch;\r\n","import {Input} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useDecorator} = hooks;\r\n\r\nconst TextArea = (props) => {\r\n const render = useDecorator(props);\r\n return render(Input.TextArea);\r\n};\r\n\r\nexport default TextArea;\r\n","import {TimePicker} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {RangePicker} = TimePicker;\r\n\r\nconst _TimePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(TimePicker);\r\n};\r\n\r\nconst _RangePicker = (props) => {\r\n const render = useOnChange(props);\r\n return render(RangePicker);\r\n};\r\n\r\n_TimePicker.RangePicker = _RangePicker;\r\n\r\nexport default _TimePicker;\r\n","import {TreeSelect} from 'antd';\r\nimport {hooks} from '@kne/react-form-helper';\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst _TreeSelect = (props) => {\r\n const render = useOnChange(props);\r\n return render(TreeSelect);\r\n};\r\n\r\n_TreeSelect.TreeNode = TreeSelect.TreeNode;\r\n\r\nexport default _TreeSelect;\r\n","import React, {useState, useMemo} from 'react';\r\nimport {Upload, message, Button} from 'antd';\r\nimport {\r\n UploadOutlined\r\n} from '@ant-design/icons';\r\nimport get from 'lodash/get';\r\nimport groupBy from 'lodash/groupBy';\r\nimport uniqueId from 'lodash/uniqueId';\r\nimport {hooks} from '@kne/react-form-helper';\r\nimport {globalParams} from \"../preset\";\r\n\r\nconst {useOnChange} = hooks;\r\n\r\nconst {Dragger} = Upload;\r\n\r\nconst uploadParams = globalParams.field.upload;\r\n\r\nconst computedFilename = (path, displayFilename = 'filename') => {\r\n const strArray = path.split('?');\r\n if (strArray[1]) {\r\n const query = {};\r\n strArray[1].split('&').forEach((str) => {\r\n const [key, value] = str.split('=');\r\n query[key] = value;\r\n });\r\n if (query[displayFilename]) {\r\n return decodeURIComponent(query[displayFilename]);\r\n }\r\n }\r\n return path;\r\n};\r\n\r\nconst valueToList = (value, displayFilename) => {\r\n if (!value) {\r\n return [];\r\n }\r\n return value.map((item) => {\r\n return {\r\n uid: uniqueId(),\r\n name: computedFilename(item.substr(item.lastIndexOf('/') + 1), displayFilename),\r\n status: 'done',\r\n response: {code: 200, results: item}\r\n }\r\n });\r\n};\r\n\r\nconst listToValue = (value) => {\r\n return (value || []).slice(0).filter(({status}) => status === 'done').map(({response}) => response.results);\r\n};\r\n\r\nconst _Upload = ({action, value, onChange, drag, children, displayFilename, accept, fileSize: size, onError, onUploadComplete, onBeforeUpload, maxLength, transformResponse, ...props}) => {\r\n displayFilename = displayFilename || uploadParams.displayFilename;\r\n const [list, setList] = useState([]);\r\n const valueList = useMemo(() => {\r\n return valueToList(value.filter((url) => {\r\n return !list.find((file) => get(file, 'response.results') === url);\r\n }), displayFilename).concat(list);\r\n }, [list, value, displayFilename]);\r\n const changeHandler = (info) => {\r\n if (['uploading', 'done', 'error', 'removed'].indexOf(info.file.status) === -1) {\r\n return;\r\n }\r\n if (info.fileList.length > maxLength) {\r\n onError(`上传文件不能超过最大允许数量${maxLength}`, 'xhrError', maxLength);\r\n return;\r\n }\r\n if (info.file.status === 'done') {\r\n info.file.response = (transformResponse || uploadParams.transformResponse)(info.file.response);\r\n if (info.file.response.code === 200) {\r\n info.file.name = computedFilename(info.file.response.results.substr(info.file.response.results.lastIndexOf('/') + 1), displayFilename);\r\n onUploadComplete(info);\r\n } else {\r\n info.file.status = 'error';\r\n onError(info.file.response.msg, 'xhrError', info.file.response);\r\n }\r\n }\r\n const {done} = groupBy(info.fileList, (file) => file.status === 'done' ? 'done' : 'uploading');\r\n if (['done', 'removed'].indexOf(info.file.status) > -1) {\r\n onChange(listToValue(done));\r\n }\r\n setList(info.fileList);\r\n };\r\n const beforeUploadHandler = (file) => {\r\n const isLt = file.size / 1024 / 1024 < size;\r\n if (!isLt) {\r\n onError(`文件不能超过${size}MB!`, 'sizeError', {size, fileSize: file.size});\r\n return false;\r\n }\r\n if (maxLength === 1) {\r\n onChange([]);\r\n setList([]);\r\n }\r\n return onBeforeUpload && onBeforeUpload(file);\r\n };\r\n const UploadComponent = drag ? Dragger : Upload;\r\n return <UploadComponent {...props} action={action || uploadParams.action} fileList={valueList}\r\n accept={accept.join(',')} onChange={changeHandler} beforeUpload={beforeUploadHandler}>\r\n {children}\r\n </UploadComponent>\r\n};\r\n\r\n_Upload.defaultProps = {\r\n value: [],\r\n accept: [],\r\n fileSize: 2,\r\n maxLength: 1,\r\n children: <Button><UploadOutlined/>点击上传</Button>,\r\n onError: (info) => message.error(info),\r\n onUploadComplete: () => {\r\n }\r\n};\r\n\r\nconst UploadInput = (props) => {\r\n const render = useOnChange(props);\r\n return render(_Upload);\r\n};\r\n\r\n\r\nUploadInput.field = _Upload;\r\n\r\nexport default UploadInput;\r\n","import React from 'react';\r\nimport {useSubmit} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst SubmitButton = (props) => {\r\n const {isPass, isLoading,...submitProps} = useSubmit(props);\r\n return (\r\n <Button loading={isLoading} {...submitProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default SubmitButton;\r\n","import React from 'react';\r\nimport {useReset} from '@kne/react-form';\r\nimport {Button} from 'antd';\r\n\r\nconst ResetButton = (props) => {\r\n const resetProps = useReset();\r\n return (\r\n <Button {...resetProps} {...props}/>\r\n );\r\n};\r\n\r\nexport default ResetButton;\r\n","import React from 'react';\r\nimport {Modal, Space} from 'antd';\r\nimport SubmitButton from './SubmitButton';\r\nimport ResetButton from './ResetButton';\r\nimport Form from \"./Form\";\r\nimport {withFetch} from '@kne/react-fetch';\r\nimport classnames from 'classnames';\r\n\r\nconst FetchForm = withFetch(Form);\r\n\r\nconst CommonModal = ({formProps, footer, children}) => {\r\n const TargetForm = formProps.hasOwnProperty('url') ? FetchForm : Form;\r\n return <TargetForm {...formProps}>\r\n <div className=\"ant-modal-body\">\r\n {children}\r\n </div>\r\n <div className=\"ant-modal-footer\">\r\n {footer ? footer : <Space>\r\n <ResetButton>重置</ResetButton>\r\n <SubmitButton type=\"primary\">确定</SubmitButton>\r\n </Space>}\r\n </div>\r\n </TargetForm>;\r\n};\r\n\r\nconst FormModal = ({className, formProps = {}, footer, children, ...props}) => {\r\n return <Modal {...props} className={classnames(className, 'react-form-modal')} footer={null}>\r\n <CommonModal formProps={formProps} footer={footer}>{children}</CommonModal>\r\n </Modal>\r\n};\r\n\r\nFormModal.modal = ({className, title, formProps = {}, footer, content, ...props}) => Modal.info({\r\n ...props,\r\n title: title ? <div className=\"ant-modal-header\">\r\n <div className=\"ant-modal-title\">{title}</div>\r\n </div> : null,\r\n className: classnames(className, 'react-form-modal'),\r\n content: <CommonModal formProps={formProps} footer={footer}>{content}</CommonModal>,\r\n icon: null,\r\n footer: null\r\n});\r\n\r\nexport default FormModal;\r\n","import Form from './Form';\n\nimport Avatar$ from './fields/Avatar';\nimport Cascader$ from './fields/Cascader';\nimport Checkbox$ from './fields/Checkbox';\nimport CheckboxGroup$ from './fields/CheckboxGroup';\nimport DatePicker$ from './fields/DatePicker';\nimport DatePickerToday$ from './fields/DatePickerToday';\nimport Input$ from './fields/Input';\nimport InputNumber$ from './fields/InputNumber';\nimport RadioGroup$ from './fields/RadioGroup';\nimport Select$ from './fields/Select';\nimport SelectFetch$ from './fields/SelectFetch';\nimport Switch$ from './fields/Switch';\nimport TextArea$ from './fields/TextArea';\nimport TimePicker$ from './fields/TimePicker';\nimport TreeSelect$ from './fields/TreeSelect';\nimport Upload$ from './fields/Upload';\n\nexport * from './Form';\nexport default Form;\nexport {default as preset} from './preset';\nexport {default as FormModal} from './FormModal';\nexport {default as ResetButton} from './ResetButton';\nexport {default as SubmitButton} from './SubmitButton';\n\nexport const Avatar = Avatar$;\nexport const Cascader = Cascader$;\nexport const Checkbox = Checkbox$;\nexport const CheckboxGroup = CheckboxGroup$;\nexport const DatePicker = DatePicker$;\nexport const DatePickerToday = DatePickerToday$;\nexport const Input = Input$;\nexport const InputNumber = InputNumber$;\nexport const RadioGroup = RadioGroup$;\nexport const Select = Select$;\nexport const SelectFetch = SelectFetch$;\nexport const Switch = Switch$;\nexport const TextArea = TextArea$;\nexport const TimePicker = TimePicker$;\nexport const TreeSelect = TreeSelect$;\nexport const Upload = Upload$;\n\nexport const fields = { Avatar, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, Input, InputNumber, RadioGroup, Select, SelectFetch, Switch, TextArea, TimePicker, TreeSelect, Upload };"],"names":["ScrollToError","EnterSubmit","FormStore","MaxLabelProvider","SizeProvider","widget","Form","forwardRef","ref","className","cache","enterSubmit","scrollToError","scrollProps","type","size","children","props","computedClass","maxLabel","classnames","e","preventDefault","stopPropagation","ReactForm","defaultProps","block","propTypes","PropTypes","string","oneOf","bool","shape","behavior","inline","globalParams","rules","field","upload","displayFilename","action","transformResponse","response","targetPath","get","filename","code","msg","results","encodeURIComponent","avatar","merge","presetRules","useOnChange","hooks","avatarParams","_Avatar","value","imageUrl","onChange","propsChange","beforeUpload","onBeforeUpload","imageType","fileSize","onError","openEditor","editor","targetEditor","previewImg","previewRender","loading","setLoading","useState","showImageUrl","setImageUrl","editorRef","useRef","defaultEditor","open","width","height","borderRadius","text","title","useEffect","dataURLtoBlob","dataurl","arr","split","_arr","substring","length","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","AvatarEditorBox","file","rotate","setRotate","scale","setScale","v","onChangeScale","uploadButton","Promise","resolve","reject","isJpgOrPng","indexOf","map","str","replace","join","fileType","isLt","Modal","success","icon","content","okText","onOk","close","base64","current","getImage","toDataURL","blob","files","window","File","name","info","status","Upload","message","error","AvatarInput","render","Cascader","_Cascader","useCheckedToValue","withChecked","hoc","WithCheckbox","_Checkbox","Checkbox","checkedProps","_CheckboxGroup","Group","CheckboxGroup","MonthPicker","RangePicker","WeekPicker","DatePicker","_DatePicker","_MonthPicker","_RangePicker","_WeekPicker","PickerToday","data","useControlValue","ref_d","newData","useMemo","s","d","p","start","moment","end","showZj","placeholder","startChange","isBefore","endChange","foot","blur","display","showToday","RangePickerToday","useDecorator","InputField","Input","autoComplete","InputNumberField","InputNumber","RadioGroup","handler","useCallback","target","_RadioGroup","Radio","_Select","Select","Option","OptGroup","_SelectFetch","withFetch","setData","refresh","isLoading","SelectFetch","WithSwitch","_Switch","Switch","TextArea","TimePicker","_TimePicker","_TreeSelect","TreeSelect","TreeNode","Dragger","uploadParams","computedFilename","path","strArray","query","forEach","key","decodeURIComponent","valueToList","item","uid","uniqueId","substr","lastIndexOf","listToValue","slice","filter","_Upload","drag","accept","onUploadComplete","maxLength","list","setList","valueList","url","find","concat","changeHandler","fileList","done","groupBy","beforeUploadHandler","UploadComponent","UploadInput","SubmitButton","useSubmit","submitProps","ResetButton","resetProps","useReset","FetchForm","CommonModal","formProps","footer","TargetForm","hasOwnProperty","FormModal","modal","Avatar","Avatar$","Cascader$","Checkbox$","CheckboxGroup$","DatePicker$","DatePickerToday","DatePickerToday$","Input$","InputNumber$","RadioGroup$","Select$","SelectFetch$","Switch$","TextArea$","TimePicker$","TreeSelect$","Upload$","fields"],"mappings":"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"}
package/package.json CHANGED
@@ -1,89 +1,89 @@
1
- {
2
- "name": "@kne/react-form-antd",
3
- "version": "2.0.12",
4
- "description": "把@kne/react-form 表单校验逻辑应用到antd",
5
- "main": "dist/index.js",
6
- "module": "dist/index.modern.js",
7
- "source": "src/index.js",
8
- "scripts": {
9
- "init": "npm install && cd example && npm install",
10
- "create-fields": "node ./scripts/createIndex.js",
11
- "start": "run-p start:lib start:example",
12
- "build": "run-s build:lib build:example create-fields",
13
- "build:lib": "microbundle --no-compress --format modern,cjs --jsx React.createElement --jsxFragment React.Fragment",
14
- "start:lib": "microbundle watch --no-compress --format modern,cjs --jsx React.createElement --jsxFragment React.Fragment",
15
- "test": "run-s test:unit test:lint test:build",
16
- "test:build": "run-s build",
17
- "test:lint": "eslint .",
18
- "test:unit": "cross-env CI=1 react-scripts test --env=jsdom",
19
- "test:watch": "react-scripts test --env=jsdom",
20
- "build:example": "cd example && npm run build",
21
- "start:example": "cd example && npm run start",
22
- "deploy": "gh-pages -d example/build",
23
- "prettier": "prettier --config .prettierrc --write 'src/**/*.{js,jsx,ts,tsx,json,css,scss,md}'"
24
- },
25
- "repository": {
26
- "type": "git",
27
- "url": "git+https://github.com/kne-union/react-form-antd.git"
28
- },
29
- "husky": {
30
- "hooks": {
31
- "pre-commit": "lint-staged"
32
- }
33
- },
34
- "lint-staged": {
35
- "src/**/*.{js,jsx,ts,tsx,json,css,scss,md}": [
36
- "prettier --config .prettierrc --write",
37
- "git add"
38
- ]
39
- },
40
- "files": [
41
- "dist"
42
- ],
43
- "keywords": [
44
- "react",
45
- "form",
46
- "validate"
47
- ],
48
- "author": "linzp",
49
- "license": "ISC",
50
- "bugs": {
51
- "url": "https://github.com/kne-union/react-form-antd/issues"
52
- },
53
- "homepage": "https://github.com/kne-union/react-form-antd#readme",
54
- "peerDependencies": {
55
- "@kne/react-fetch": "0.1.x",
56
- "antd": ">=4.x",
57
- "prop-types": ">=15.x",
58
- "react": ">=16.x"
59
- },
60
- "dependencies": {
61
- "@ant-design/icons": "^4.2.1",
62
- "@babel/runtime": "^7.10.3",
63
- "@kne/react-form": "^2.0.4",
64
- "@kne/react-form-helper": "^1.0.10",
65
- "@kne/use-control-value": "^0.1.1",
66
- "classnames": "^2.2.6",
67
- "lodash": "^4.17.15",
68
- "moment": "^2.29.1",
69
- "react-avatar-editor": "^12.0.0"
70
- },
71
- "devDependencies": {
72
- "@kne/react-fetch": "^0.1.12",
73
- "antd": "^4.16.13",
74
- "axios": "^0.21.4",
75
- "cross-env": "^7.0.3",
76
- "fs-extra": "^9.0.1",
77
- "gh-pages": "^3.2.3",
78
- "glob": "^7.1.6",
79
- "husky": "^7.0.2",
80
- "microbundle": "^0.13.3",
81
- "node-sass": "^6.0.1",
82
- "npm-run-all": "^4.1.5",
83
- "pify": "^5.0.0",
84
- "prettier": "^2.4.1",
85
- "react": "^17.0.2",
86
- "react-dom": "^17.0.2",
87
- "react-scripts": "^4.0.3"
88
- }
89
- }
1
+ {
2
+ "name": "@kne/react-form-antd",
3
+ "version": "2.0.13-alpha.0.3",
4
+ "description": "把@kne/react-form 表单校验逻辑应用到antd",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.modern.js",
7
+ "source": "src/index.js",
8
+ "scripts": {
9
+ "init": "npm install && cd example && npm install",
10
+ "create-fields": "node ./scripts/createIndex.js",
11
+ "start": "run-p start:lib start:example",
12
+ "build": "run-s build:lib build:example create-fields",
13
+ "build:lib": "microbundle --no-compress --format modern,cjs --jsx React.createElement --jsxFragment React.Fragment",
14
+ "start:lib": "microbundle watch --no-compress --format modern,cjs --jsx React.createElement --jsxFragment React.Fragment",
15
+ "test": "run-s test:unit test:lint test:build",
16
+ "test:build": "run-s build",
17
+ "test:lint": "eslint .",
18
+ "test:unit": "cross-env CI=1 react-scripts test --env=jsdom",
19
+ "test:watch": "react-scripts test --env=jsdom",
20
+ "build:example": "cd example && npm run build",
21
+ "start:example": "cd example && npm run start",
22
+ "deploy": "gh-pages -d example/build",
23
+ "prettier": "prettier --config .prettierrc --write 'src/**/*.{js,jsx,ts,tsx,json,css,scss,md}'"
24
+ },
25
+ "repository": {
26
+ "type": "git",
27
+ "url": "git+https://github.com/kne-union/react-form-antd.git"
28
+ },
29
+ "husky": {
30
+ "hooks": {
31
+ "pre-commit": "lint-staged"
32
+ }
33
+ },
34
+ "lint-staged": {
35
+ "src/**/*.{js,jsx,ts,tsx,json,css,scss,md}": [
36
+ "prettier --config .prettierrc --write",
37
+ "git add"
38
+ ]
39
+ },
40
+ "files": [
41
+ "dist"
42
+ ],
43
+ "keywords": [
44
+ "react",
45
+ "form",
46
+ "validate"
47
+ ],
48
+ "author": "linzp",
49
+ "license": "ISC",
50
+ "bugs": {
51
+ "url": "https://github.com/kne-union/react-form-antd/issues"
52
+ },
53
+ "homepage": "https://github.com/kne-union/react-form-antd#readme",
54
+ "peerDependencies": {
55
+ "@kne/react-fetch": "0.1.x",
56
+ "antd": ">=4.x",
57
+ "prop-types": ">=15.x",
58
+ "react": ">=16.x"
59
+ },
60
+ "dependencies": {
61
+ "@ant-design/icons": "^4.2.1",
62
+ "@babel/runtime": "^7.10.3",
63
+ "@kne/react-form": "^2.0.4",
64
+ "@kne/react-form-helper": "^1.0.11",
65
+ "@kne/use-control-value": "^0.1.1",
66
+ "classnames": "^2.2.6",
67
+ "lodash": "^4.17.15",
68
+ "moment": "^2.29.1",
69
+ "react-avatar-editor": "^12.0.0"
70
+ },
71
+ "devDependencies": {
72
+ "@kne/react-fetch": "^0.1.12",
73
+ "antd": "^4.16.13",
74
+ "axios": "^0.21.4",
75
+ "cross-env": "^7.0.3",
76
+ "fs-extra": "^9.0.1",
77
+ "gh-pages": "^3.2.3",
78
+ "glob": "^7.1.6",
79
+ "husky": "^7.0.2",
80
+ "microbundle": "^0.13.3",
81
+ "node-sass": "^6.0.1",
82
+ "npm-run-all": "^4.1.5",
83
+ "pify": "^5.0.0",
84
+ "prettier": "^2.4.1",
85
+ "react": "^17.0.2",
86
+ "react-dom": "^17.0.2",
87
+ "react-scripts": "^4.0.3"
88
+ }
89
+ }