@kne/react-form-antd 3.0.0 → 3.0.1-alpha.0

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.
@@ -13,7 +13,7 @@ import withLayer from '@kne/with-layer';
13
13
  import { LoadingOutlined, PlusOutlined, UploadOutlined } from '@ant-design/icons';
14
14
  import AvatarEditor from 'react-avatar-editor';
15
15
  import omit from 'lodash/omit';
16
- import moment from 'moment';
16
+ import dayjs from 'dayjs';
17
17
  import useControlValue from '@kne/use-control-value';
18
18
  import useEvent from '@kne/use-event';
19
19
  import { withFetch as withFetch$1 } from '@kne/react-fetch';
@@ -57,7 +57,7 @@ const globalParams = {
57
57
  field: {
58
58
  upload: {
59
59
  displayFilename: 'filename',
60
- action: '/upload',
60
+ action: '/open-api/upload_static_file/interview-manager',
61
61
  transformResponse: response => {
62
62
  const targetPath = get(response, 'results[0].targetPath');
63
63
  const filename = get(response, 'results[0].filename');
@@ -92,7 +92,7 @@ var preset = (props => {
92
92
  preset$2(globalParams.rules);
93
93
  });
94
94
 
95
- const _excluded$8 = ["className", "cache", "enterSubmit", "scrollToError", "scrollProps", "type", "size", "children"];
95
+ const _excluded$9 = ["className", "cache", "enterSubmit", "scrollToError", "scrollProps", "type", "size", "children"];
96
96
  const {
97
97
  ScrollToError,
98
98
  EnterSubmit,
@@ -109,7 +109,7 @@ const Form = forwardRef((originProps, ref) => {
109
109
  scrollProps,
110
110
  children
111
111
  } = originProps,
112
- props = _objectWithoutPropertiesLoose(originProps, _excluded$8);
112
+ props = _objectWithoutPropertiesLoose(originProps, _excluded$9);
113
113
  const baseClass = 'react-form';
114
114
  let computedClass = baseClass;
115
115
  const {
@@ -228,9 +228,9 @@ const getPopupContainer = triggerNode => {
228
228
  return findAntdPopupContainer(triggerNode);
229
229
  };
230
230
 
231
- const _excluded$7 = ["close", "file", "editor", "onComplete"];
231
+ const _excluded$8 = ["close", "file", "editor", "onComplete"];
232
232
  const {
233
- useOnChange: useOnChange$c
233
+ useOnChange: useOnChange$d
234
234
  } = hooks;
235
235
  const avatarParams = globalParams.field.avatar;
236
236
  const createAvatarEditor = withLayer(_ref => {
@@ -240,7 +240,7 @@ const createAvatarEditor = withLayer(_ref => {
240
240
  editor,
241
241
  onComplete
242
242
  } = _ref,
243
- props = _objectWithoutPropertiesLoose(_ref, _excluded$7);
243
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$8);
244
244
  const editorRef = useRef(null);
245
245
  const [rotate, setRotate] = useState(0);
246
246
  const [scale, setScale] = useState(() => {
@@ -471,7 +471,7 @@ _Avatar.defaultProps = {
471
471
  openEditor: false
472
472
  };
473
473
  const AvatarInput = props => {
474
- const render = useOnChange$c(props);
474
+ const render = useOnChange$d(props);
475
475
  return render(_Avatar);
476
476
  };
477
477
  AvatarInput.defaultProps = {
@@ -480,10 +480,10 @@ AvatarInput.defaultProps = {
480
480
  AvatarInput.field = _Avatar;
481
481
 
482
482
  const {
483
- useOnChange: useOnChange$b
483
+ useOnChange: useOnChange$c
484
484
  } = hooks;
485
485
  const Cascader$1 = props => {
486
- const render = useOnChange$b(props);
486
+ const render = useOnChange$c(props);
487
487
  return render(Cascader$2);
488
488
  };
489
489
  Cascader$1.defaultProps = {
@@ -491,7 +491,7 @@ Cascader$1.defaultProps = {
491
491
  };
492
492
 
493
493
  const {
494
- useOnChange: useOnChange$a,
494
+ useOnChange: useOnChange$b,
495
495
  useCheckedToValue: useCheckedToValue$1
496
496
  } = hooks;
497
497
  const {
@@ -500,7 +500,7 @@ const {
500
500
  const WithCheckbox = withChecked$1(Checkbox$2);
501
501
  const Checkbox$1 = props => {
502
502
  const checkedProps = useCheckedToValue$1(props);
503
- const render = useOnChange$a(checkedProps);
503
+ const render = useOnChange$b(checkedProps);
504
504
  return render(WithCheckbox);
505
505
  };
506
506
  Checkbox$1.defaultProps = {
@@ -508,11 +508,11 @@ Checkbox$1.defaultProps = {
508
508
  };
509
509
 
510
510
  const {
511
- useOnChange: useOnChange$9
511
+ useOnChange: useOnChange$a
512
512
  } = hooks;
513
513
  const _CheckboxGroup = Checkbox$2.Group;
514
514
  const CheckboxGroup$1 = props => {
515
- const render = useOnChange$9(props);
515
+ const render = useOnChange$a(props);
516
516
  return render(_CheckboxGroup);
517
517
  };
518
518
  CheckboxGroup$1.Checkbox = Checkbox$2;
@@ -521,7 +521,7 @@ CheckboxGroup$1.defaultProps = {
521
521
  };
522
522
 
523
523
  const {
524
- useOnChange: useOnChange$8
524
+ useOnChange: useOnChange$9
525
525
  } = hooks;
526
526
  const {
527
527
  MonthPicker,
@@ -529,54 +529,58 @@ const {
529
529
  WeekPicker
530
530
  } = DatePicker$1;
531
531
  const _DatePicker = props => {
532
- const render = useOnChange$8(Object.assign({
532
+ const render = useOnChange$9(Object.assign({
533
533
  placeholder: `请选择${props.label || ''}`
534
534
  }, props));
535
535
  return render(DatePicker$1);
536
536
  };
537
537
  _DatePicker.defaultProps = {
538
- fieldName: 'datePicker'
538
+ fieldName: 'datePicker',
539
+ getPopupContainer
539
540
  };
540
541
  const _MonthPicker = props => {
541
- const render = useOnChange$8(Object.assign({
542
+ const render = useOnChange$9(Object.assign({
542
543
  placeholder: ['开始时间', '结束时间']
543
544
  }, props));
544
545
  return render(MonthPicker);
545
546
  };
546
547
  _MonthPicker.defaultProps = {
547
- fieldName: 'monthDatePicker'
548
+ fieldName: 'monthDatePicker',
549
+ getPopupContainer
548
550
  };
549
551
  const _RangePicker$1 = props => {
550
- const render = useOnChange$8(Object.assign({
552
+ const render = useOnChange$9(Object.assign({
551
553
  placeholder: ['开始时间', '结束时间']
552
554
  }, props));
553
555
  return render(RangePicker$1);
554
556
  };
555
557
  _RangePicker$1.defaultProps = {
556
- fieldName: 'rangeDatePicker'
558
+ fieldName: 'rangeDatePicker',
559
+ getPopupContainer
557
560
  };
558
561
  const _WeekPicker = props => {
559
- const render = useOnChange$8(Object.assign({
562
+ const render = useOnChange$9(Object.assign({
560
563
  placeholder: ['开始时间', '结束时间']
561
564
  }, props));
562
565
  return render(WeekPicker);
563
566
  };
564
567
  _WeekPicker.defaultProps = {
565
- fieldName: 'weekDatePicker'
568
+ fieldName: 'weekDatePicker',
569
+ getPopupContainer
566
570
  };
567
571
  _DatePicker.MonthPicker = _MonthPicker;
568
572
  _DatePicker.RangePicker = _RangePicker$1;
569
573
  _DatePicker.WeekPicker = _WeekPicker;
570
574
 
571
- const _excluded$6 = ["soFarText"];
575
+ const _excluded$7 = ["soFarText"];
572
576
  const {
573
- useOnChange: useOnChange$7
577
+ useOnChange: useOnChange$8
574
578
  } = hooks;
575
579
  const PickerToday = _ref => {
576
580
  let {
577
581
  soFarText
578
582
  } = _ref,
579
- props = _objectWithoutPropertiesLoose(_ref, _excluded$6);
583
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$7);
580
584
  const [data, onChange] = useControlValue(props);
581
585
  const ref_d = useRef();
582
586
  const newData = useMemo(() => {
@@ -585,8 +589,8 @@ const PickerToday = _ref => {
585
589
  const d = get(data, 1, '');
586
590
  const p = get(props, ['placeholder'], ['开始日期', '结束日期']);
587
591
  return {
588
- start: s ? moment(s) : '',
589
- end: d === '至今' ? null : d ? moment(d) : '',
592
+ start: s ? dayjs(s) : '',
593
+ end: d === '至今' ? null : d ? dayjs(d) : '',
590
594
  showZj: d === '至今',
591
595
  placeholder: p
592
596
  };
@@ -654,7 +658,7 @@ const PickerToday = _ref => {
654
658
  }))));
655
659
  };
656
660
  const RangePickerToday = props => {
657
- const render = useOnChange$7(props);
661
+ const render = useOnChange$8(props);
658
662
  return render(PickerToday);
659
663
  };
660
664
  RangePickerToday.defaultProps = {
@@ -700,15 +704,15 @@ InputNumberField.defaultProps = {
700
704
  autoComplete: 'off'
701
705
  };
702
706
 
703
- const _excluded$5 = ["onChange"];
707
+ const _excluded$6 = ["onChange"];
704
708
  const {
705
- useOnChange: useOnChange$6
709
+ useOnChange: useOnChange$7
706
710
  } = hooks;
707
711
  const RadioGroup$1 = _ref => {
708
712
  let {
709
713
  onChange
710
714
  } = _ref,
711
- props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
715
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$6);
712
716
  const handler = useCallback(e => {
713
717
  onChange && onChange(e.target.value);
714
718
  }, [onChange]);
@@ -717,7 +721,7 @@ const RadioGroup$1 = _ref => {
717
721
  }));
718
722
  };
719
723
  const _RadioGroup = props => {
720
- const render = useOnChange$6(props);
724
+ const render = useOnChange$7(props);
721
725
  return render(RadioGroup$1);
722
726
  };
723
727
  _RadioGroup.defaultProps = {
@@ -725,9 +729,9 @@ _RadioGroup.defaultProps = {
725
729
  };
726
730
  _RadioGroup.Radio = Radio;
727
731
 
728
- const _excluded$4 = ["data", "setData", "send", "loadMore", "isComplete", "refresh", "reload", "fetchEmitter", "isLoading", "children", "onLoaded", "fetchProps", "requestParams"];
732
+ const _excluded$5 = ["data", "setData", "send", "loadMore", "isComplete", "refresh", "reload", "fetchEmitter", "isLoading", "children", "onLoaded", "fetchProps", "requestParams"];
729
733
  const {
730
- useOnChange: useOnChange$5
734
+ useOnChange: useOnChange$6
731
735
  } = hooks;
732
736
  const withFetch = WrappedComponent => {
733
737
  const FieldInner = withFetch$1(_ref => {
@@ -745,7 +749,7 @@ const withFetch = WrappedComponent => {
745
749
  onLoaded,
746
750
  fetchProps
747
751
  } = _ref,
748
- props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
752
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
749
753
  const refreshRef = useRef(refresh);
750
754
  refreshRef.current = refresh;
751
755
  const reloadRef = useRef(reload);
@@ -791,7 +795,7 @@ const withFetch = WrappedComponent => {
791
795
  };
792
796
  const Fetch = forwardRef((props, ref) => {
793
797
  const emitter = useFetchEmitter(ref);
794
- const render = useOnChange$5(Object.assign({
798
+ const render = useOnChange$6(Object.assign({
795
799
  placeholder: `请选择${props.label}`
796
800
  }, props, {
797
801
  fetchEmitter: emitter
@@ -808,10 +812,10 @@ const withFetch = WrappedComponent => {
808
812
  };
809
813
 
810
814
  const {
811
- useOnChange: useOnChange$4
815
+ useOnChange: useOnChange$5
812
816
  } = hooks;
813
817
  const _Select = props => {
814
- const render = useOnChange$4(Object.assign({
818
+ const render = useOnChange$5(Object.assign({
815
819
  placeholder: `请选择${props.label || ''}`
816
820
  }, props));
817
821
  return render(Select$1);
@@ -820,8 +824,89 @@ _Select.Fetch = withFetch(Select$1);
820
824
  _Select.Option = Select$1.Option;
821
825
  _Select.OptGroup = Select$1.OptGroup;
822
826
  _Select.defaultProps = _Select.Fetch.defaultProps = {
823
- fieldName: 'select'
827
+ fieldName: 'select',
828
+ getPopupContainer
829
+ };
830
+
831
+ const _excluded$4 = ["data", "setData", "refresh", "reload", "emitter", "isLoading", "children", "onLoaded", "loadMore", "send", "isComplete", "fetchProps", "requestParams"];
832
+ const {
833
+ useOnChange: useOnChange$4
834
+ } = hooks;
835
+ const _SelectFetch = withFetch$1(_ref => {
836
+ let {
837
+ data,
838
+ setData,
839
+ refresh,
840
+ reload,
841
+ emitter,
842
+ isLoading,
843
+ children,
844
+ onLoaded
845
+ } = _ref,
846
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
847
+ const refreshRef = useRef(refresh);
848
+ refreshRef.current = refresh;
849
+ const reloadRef = useRef(reload);
850
+ reloadRef.current = reload;
851
+ const setDataRef = useRef(setData);
852
+ setDataRef.current = setData;
853
+ const dataRef = useRef(data);
854
+ useEffect(() => {
855
+ console.warn('请使用Select.Fetch替代该组件,该组件会在未来某个版本被移除');
856
+ const token1 = emitter.addListener('select-fetch-refresh', () => refreshRef.current());
857
+ const token2 = emitter.addListener('select-fetch-reload', () => reloadRef.current());
858
+ const token3 = emitter.addListener('select-fetch-set-data', () => setDataRef.current());
859
+ return () => {
860
+ token1 && token1.remove();
861
+ token2 && token2.remove();
862
+ token3 && token3.remove();
863
+ };
864
+ }, [emitter]);
865
+ useEffect(() => {
866
+ onLoaded && onLoaded(dataRef.current);
867
+ }, []);
868
+ return /*#__PURE__*/React__default.createElement(Select$1, props, children({
869
+ data,
870
+ refresh,
871
+ isLoading,
872
+ setData
873
+ }));
874
+ });
875
+ const SelectFetch$1 = forwardRef((props, ref) => {
876
+ const emitter = useEvent();
877
+ useImperativeHandle(ref, () => {
878
+ return {
879
+ refresh: () => emitter.emit('select-fetch-refresh'),
880
+ reload: () => emitter.emit('select-fetch-reload'),
881
+ setData: data => emitter.emit('select-fetch-set-data', data)
882
+ };
883
+ }, [emitter]);
884
+ const render = useOnChange$4(Object.assign({
885
+ placeholder: `请选择${props.label}`
886
+ }, props, {
887
+ emitter
888
+ }));
889
+ return render(_SelectFetch);
890
+ });
891
+ SelectFetch$1.field = forwardRef((props, ref) => {
892
+ const emitter = useEvent();
893
+ useImperativeHandle(ref, () => {
894
+ return {
895
+ refresh: () => emitter.emit('select-fetch-refresh'),
896
+ reload: () => emitter.emit('select-fetch-reload'),
897
+ setData: data => emitter.emit('select-fetch-set-data', data)
898
+ };
899
+ }, [emitter]);
900
+ return /*#__PURE__*/React__default.createElement(_SelectFetch, _extends({}, props, {
901
+ emitter: emitter
902
+ }));
903
+ });
904
+ SelectFetch$1.defaultProps = {
905
+ fieldName: 'selectFetch',
906
+ getPopupContainer
824
907
  };
908
+ SelectFetch$1.Option = Select$1.Option;
909
+ SelectFetch$1.OptGroup = Select$1.OptGroup;
825
910
 
826
911
  const {
827
912
  useOnChange: useOnChange$3,
@@ -866,7 +951,8 @@ const _TimePicker = props => {
866
951
  return render(TimePicker$1);
867
952
  };
868
953
  _TimePicker.defaultProps = {
869
- fieldName: 'timePicker'
954
+ fieldName: 'timePicker',
955
+ getPopupContainer
870
956
  };
871
957
  const _RangePicker = props => {
872
958
  const render = useOnChange$2(Object.assign({
@@ -875,7 +961,8 @@ const _RangePicker = props => {
875
961
  return render(RangePicker);
876
962
  };
877
963
  _RangePicker.defaultProps = {
878
- fieldName: 'rangeTimePicker'
964
+ fieldName: 'rangeTimePicker',
965
+ getPopupContainer
879
966
  };
880
967
  _TimePicker.RangePicker = _RangePicker;
881
968
 
@@ -890,7 +977,8 @@ const _TreeSelect = props => {
890
977
  };
891
978
  _TreeSelect.Fetch = withFetch(TreeSelect$1);
892
979
  _TreeSelect.defaultProps = _TreeSelect.Fetch.defaultProps = {
893
- fieldName: 'treeSelect'
980
+ fieldName: 'treeSelect',
981
+ getPopupContainer
894
982
  };
895
983
  _TreeSelect.TreeNode = TreeSelect$1.TreeNode;
896
984
 
@@ -1012,7 +1100,7 @@ const _Upload = _ref => {
1012
1100
  Object.assign(headers, uploadParams.getHeaders());
1013
1101
  }
1014
1102
  const UploadComponent = drag ? Dragger : Upload$1;
1015
- return /*#__PURE__*/React__default.createElement(UploadComponent, _extends({}, omit(uploadParams, ['action', 'transformResponse']), {
1103
+ return /*#__PURE__*/React__default.createElement(UploadComponent, _extends({}, omit(uploadParams, ['action', 'transformResponse']), props, {
1016
1104
  headers: headers,
1017
1105
  action: action || uploadParams.action,
1018
1106
  fileList: valueList,
@@ -1176,6 +1264,7 @@ const Input = InputField;
1176
1264
  const InputNumber = InputNumberField;
1177
1265
  const RadioGroup = _RadioGroup;
1178
1266
  const Select = _Select;
1267
+ const SelectFetch = SelectFetch$1;
1179
1268
  const Switch = Switch$1;
1180
1269
  const TextArea = TextArea$1;
1181
1270
  const TimePicker = _TimePicker;
@@ -1192,6 +1281,7 @@ const fields = {
1192
1281
  InputNumber,
1193
1282
  RadioGroup,
1194
1283
  Select,
1284
+ SelectFetch,
1195
1285
  Switch,
1196
1286
  TextArea,
1197
1287
  TimePicker,
@@ -1199,5 +1289,5 @@ const fields = {
1199
1289
  Upload
1200
1290
  };
1201
1291
 
1202
- export { Avatar, CancelButton, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, FormModal, Input, InputNumber, RadioGroup, ResetButton, Select, SubmitButton, Switch, TextArea, TimePicker, TreeSelect, Upload, Form as default, fields, preset };
1292
+ export { Avatar, CancelButton, Cascader, Checkbox, CheckboxGroup, DatePicker, DatePickerToday, FormModal, Input, InputNumber, RadioGroup, ResetButton, Select, SelectFetch, SubmitButton, Switch, TextArea, TimePicker, TreeSelect, Upload, Form as default, fields, preset };
1203
1293
  //# sourceMappingURL=index.modern.js.map