@kne/react-form-antd 2.0.11 → 2.0.13-alpha.0.2

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.
@@ -4,7 +4,7 @@ import classnames from 'classnames';
4
4
  import ReactForm__default, { preset as preset$1, useSubmit, useReset } from '@kne/react-form';
5
5
  export * from '@kne/react-form';
6
6
  import { widget, hooks, hoc } from '@kne/react-form-helper';
7
- export { hooks, utils } from '@kne/react-form-helper';
7
+ export { hooks, utils, widget } from '@kne/react-form-helper';
8
8
  import { Upload as Upload$1, message, Modal, Row, Col, Slider, Cascader as Cascader$2, Checkbox as Checkbox$2, DatePicker as DatePicker$1, Button, Input as Input$1, InputNumber as InputNumber$1, Radio, Select as Select$1, Switch as Switch$2, TimePicker as TimePicker$1, TreeSelect as TreeSelect$1, Space } from 'antd';
9
9
  import merge from 'lodash/merge';
10
10
  import get from 'lodash/get';
@@ -170,18 +170,32 @@ const _Avatar = ({
170
170
  fileSize: size,
171
171
  children,
172
172
  onError,
173
- editor
173
+ isEditor,
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: isEditor
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
  });
@@ -298,14 +309,13 @@ const _Avatar = ({
298
309
  if (editor.open) {
299
310
  Modal.success({
300
311
  // title: '剪切图像',
301
- icon: '',
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
+ isEditor: 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, 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 isEditor,\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: isEditor}, 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: '剪切图像',\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 isEditor: 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","isEditor","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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"}