@hw-component/form 1.7.1 → 1.7.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.
package/es/Form/Basic.js CHANGED
@@ -10,10 +10,11 @@ import 'core-js/modules/es.object.get-own-property-descriptor.js';
10
10
  import 'core-js/modules/web.dom-collections.for-each.js';
11
11
  import 'core-js/modules/es.object.get-own-property-descriptors.js';
12
12
  import { jsx } from 'react/jsx-runtime';
13
- import { createElement } from 'react';
13
+ import { useEffect, createElement } from 'react';
14
14
  import Item from './FormItem/index.js';
15
15
  import { Row } from 'antd';
16
16
  import { useFormContext } from './Context/index.js';
17
+ import useInitConfigData from './hooks/useInitConfigData.js';
17
18
 
18
19
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
20
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -24,7 +25,17 @@ var Basic = (function (_ref) {
24
25
  form = _useFormContext.form,
25
26
  formItemProps = _useFormContext.itemProps,
26
27
  itemSpan = _useFormContext.itemSpan,
27
- formColon = _useFormContext.colon;
28
+ formColon = _useFormContext.colon,
29
+ setData = _useFormContext.setData;
30
+ var _useInitConfigData = useInitConfigData({
31
+ configData: configData,
32
+ form: form
33
+ }),
34
+ newConfigData = _useInitConfigData.newConfigData,
35
+ dispatchSourceData = _useInitConfigData.dispatchSourceData;
36
+ useEffect(function () {
37
+ setData === null || setData === void 0 || setData(dispatchSourceData);
38
+ }, []);
28
39
  var defaultOnPressEnter = function defaultOnPressEnter() {
29
40
  form.submit();
30
41
  };
@@ -33,7 +44,7 @@ var Basic = (function (_ref) {
33
44
  style: {
34
45
  width: "100%"
35
46
  },
36
- children: configData.map(function (itemData, index) {
47
+ children: newConfigData.map(function (itemData, index) {
37
48
  var itemLabelWidth = itemData.labelWidth,
38
49
  hideLabel = itemData.hideLabel,
39
50
  labelAlign = itemData.labelAlign,
package/es/Form/index.js CHANGED
@@ -7,14 +7,14 @@ import 'core-js/modules/es.object.get-own-property-descriptor.js';
7
7
  import 'core-js/modules/web.dom-collections.for-each.js';
8
8
  import 'core-js/modules/es.object.get-own-property-descriptors.js';
9
9
  import _defineProperty from '@babel/runtime-corejs3/helpers/defineProperty';
10
+ import _slicedToArray from '@babel/runtime-corejs3/helpers/slicedToArray';
10
11
  import _objectWithoutProperties from '@babel/runtime-corejs3/helpers/objectWithoutProperties';
11
12
  import { jsx, jsxs } from 'react/jsx-runtime';
12
13
  import { Form } from 'antd';
13
14
  import { useCurrentForm, useInfoReq, useValuesChange } from './hooks/index.js';
14
15
  import { FormContext } from './Context/index.js';
15
16
  import Index from '../PageHandler/index.js';
16
- import useInitConfigData from './hooks/useInitConfigData.js';
17
- import { useEffect } from 'react';
17
+ import { useState, useEffect } from 'react';
18
18
  import InitSet from './InitSet.js';
19
19
  import Basic from './Basic.js';
20
20
 
@@ -47,12 +47,10 @@ var HForm = (function (_ref) {
47
47
  colon = _ref$colon === void 0 ? true : _ref$colon,
48
48
  props = _objectWithoutProperties(_ref, _excluded);
49
49
  var hForm = useCurrentForm(form);
50
- var _useInitConfigData = useInitConfigData({
51
- configData: configData,
52
- form: hForm
53
- }),
54
- newConfigData = _useInitConfigData.newConfigData,
55
- dispatchSourceData = _useInitConfigData.dispatchSourceData;
50
+ var _useState = useState({}),
51
+ _useState2 = _slicedToArray(_useState, 2),
52
+ dispatchSourceData = _useState2[0],
53
+ setDispatchSourceData = _useState2[1];
56
54
  var _useInfoReq = useInfoReq({
57
55
  initialValues: initialValues,
58
56
  request: request,
@@ -80,6 +78,11 @@ var HForm = (function (_ref) {
80
78
  hForm.removeDispatchListener();
81
79
  };
82
80
  }, []);
81
+ var setData = function setData(newData) {
82
+ setDispatchSourceData(function (oldData) {
83
+ return _objectSpread(_objectSpread({}, oldData), newData);
84
+ });
85
+ };
83
86
  return jsx(Index, {
84
87
  loading: infoLoading,
85
88
  error: infoErr,
@@ -96,7 +99,8 @@ var HForm = (function (_ref) {
96
99
  hideLabel: formHideLabel,
97
100
  colon: colon,
98
101
  itemProps: formItemProps,
99
- itemSpan: itemSpan
102
+ itemSpan: itemSpan,
103
+ setData: setData
100
104
  },
101
105
  children: jsxs(Form, _objectSpread(_objectSpread({
102
106
  form: hForm,
@@ -104,7 +108,7 @@ var HForm = (function (_ref) {
104
108
  onValuesChange: valuesChange
105
109
  }, props), {}, {
106
110
  children: [jsx(Basic, {
107
- configData: newConfigData,
111
+ configData: configData,
108
112
  gutter: gutter
109
113
  }), jsx(InitSet, {})]
110
114
  }))
@@ -88,6 +88,7 @@ export interface FormContextProps {
88
88
  colon?: boolean;
89
89
  itemProps?: ItemPropsType;
90
90
  itemSpan?: ColProps;
91
+ setData?: (newData: any) => void;
91
92
  }
92
93
  interface ConfigUploadProps {
93
94
  exFiles?: string[];
package/lib/Form/Basic.js CHANGED
@@ -17,6 +17,7 @@ var React = require('react');
17
17
  var index$1 = require('./FormItem/index.js');
18
18
  var antd = require('antd');
19
19
  var index = require('./Context/index.js');
20
+ var useInitConfigData = require('./hooks/useInitConfigData.js');
20
21
 
21
22
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
23
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -27,7 +28,17 @@ var Basic = (function (_ref) {
27
28
  form = _useFormContext.form,
28
29
  formItemProps = _useFormContext.itemProps,
29
30
  itemSpan = _useFormContext.itemSpan,
30
- formColon = _useFormContext.colon;
31
+ formColon = _useFormContext.colon,
32
+ setData = _useFormContext.setData;
33
+ var _useInitConfigData = useInitConfigData.default({
34
+ configData: configData,
35
+ form: form
36
+ }),
37
+ newConfigData = _useInitConfigData.newConfigData,
38
+ dispatchSourceData = _useInitConfigData.dispatchSourceData;
39
+ React.useEffect(function () {
40
+ setData === null || setData === void 0 || setData(dispatchSourceData);
41
+ }, []);
31
42
  var defaultOnPressEnter = function defaultOnPressEnter() {
32
43
  form.submit();
33
44
  };
@@ -36,7 +47,7 @@ var Basic = (function (_ref) {
36
47
  style: {
37
48
  width: "100%"
38
49
  },
39
- children: configData.map(function (itemData, index) {
50
+ children: newConfigData.map(function (itemData, index) {
40
51
  var itemLabelWidth = itemData.labelWidth,
41
52
  hideLabel = itemData.hideLabel,
42
53
  labelAlign = itemData.labelAlign,
package/lib/Form/index.js CHANGED
@@ -10,13 +10,13 @@ require('core-js/modules/es.object.get-own-property-descriptor.js');
10
10
  require('core-js/modules/web.dom-collections.for-each.js');
11
11
  require('core-js/modules/es.object.get-own-property-descriptors.js');
12
12
  var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
13
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
13
14
  var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
14
15
  var jsxRuntime = require('react/jsx-runtime');
15
16
  var antd = require('antd');
16
17
  var index = require('./hooks/index.js');
17
18
  var index$2 = require('./Context/index.js');
18
19
  var index$1 = require('../PageHandler/index.js');
19
- var useInitConfigData = require('./hooks/useInitConfigData.js');
20
20
  var React = require('react');
21
21
  var InitSet = require('./InitSet.js');
22
22
  var Basic = require('./Basic.js');
@@ -50,12 +50,10 @@ var HForm = (function (_ref) {
50
50
  colon = _ref$colon === void 0 ? true : _ref$colon,
51
51
  props = _objectWithoutProperties(_ref, _excluded);
52
52
  var hForm = index.useCurrentForm(form);
53
- var _useInitConfigData = useInitConfigData.default({
54
- configData: configData,
55
- form: hForm
56
- }),
57
- newConfigData = _useInitConfigData.newConfigData,
58
- dispatchSourceData = _useInitConfigData.dispatchSourceData;
53
+ var _useState = React.useState({}),
54
+ _useState2 = _slicedToArray(_useState, 2),
55
+ dispatchSourceData = _useState2[0],
56
+ setDispatchSourceData = _useState2[1];
59
57
  var _useInfoReq = index.useInfoReq({
60
58
  initialValues: initialValues,
61
59
  request: request,
@@ -83,6 +81,11 @@ var HForm = (function (_ref) {
83
81
  hForm.removeDispatchListener();
84
82
  };
85
83
  }, []);
84
+ var setData = function setData(newData) {
85
+ setDispatchSourceData(function (oldData) {
86
+ return _objectSpread(_objectSpread({}, oldData), newData);
87
+ });
88
+ };
86
89
  return jsxRuntime.jsx(index$1.default, {
87
90
  loading: infoLoading,
88
91
  error: infoErr,
@@ -99,7 +102,8 @@ var HForm = (function (_ref) {
99
102
  hideLabel: formHideLabel,
100
103
  colon: colon,
101
104
  itemProps: formItemProps,
102
- itemSpan: itemSpan
105
+ itemSpan: itemSpan,
106
+ setData: setData
103
107
  },
104
108
  children: jsxRuntime.jsxs(antd.Form, _objectSpread(_objectSpread({
105
109
  form: hForm,
@@ -107,7 +111,7 @@ var HForm = (function (_ref) {
107
111
  onValuesChange: valuesChange
108
112
  }, props), {}, {
109
113
  children: [jsxRuntime.jsx(Basic.default, {
110
- configData: newConfigData,
114
+ configData: configData,
111
115
  gutter: gutter
112
116
  }), jsxRuntime.jsx(InitSet.default, {})]
113
117
  }))
@@ -88,6 +88,7 @@ export interface FormContextProps {
88
88
  colon?: boolean;
89
89
  itemProps?: ItemPropsType;
90
90
  itemSpan?: ColProps;
91
+ setData?: (newData: any) => void;
91
92
  }
92
93
  interface ConfigUploadProps {
93
94
  exFiles?: string[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hw-component/form",
3
- "version": "1.7.1",
3
+ "version": "1.7.2",
4
4
  "description": "基于antd二次开发",
5
5
  "repository": {
6
6
  "type": "git",
@@ -2,14 +2,23 @@ import {HFormProps, HItemProps, ItemPropsType} from "@/components/Form/modal";
2
2
  import Item from "./FormItem";
3
3
  import {Row} from "antd";
4
4
  import {useFormContext} from "./Context";
5
+ import useInitConfigData from "./hooks/useInitConfigData";
6
+ import {useEffect} from "react";
5
7
 
6
8
  export default ({configData,gutter}:HFormProps)=>{
7
- const {form,itemProps:formItemProps,itemSpan,colon:formColon}=useFormContext();
9
+ const {form,itemProps:formItemProps,itemSpan,colon:formColon,setData}=useFormContext();
10
+ const { newConfigData, dispatchSourceData } = useInitConfigData({
11
+ configData,
12
+ form,
13
+ });
14
+ useEffect(()=>{
15
+ setData?.(dispatchSourceData);
16
+ },[]);
8
17
  const defaultOnPressEnter = () => {
9
18
  form.submit();
10
19
  };
11
20
  return <Row gutter={gutter} style={{width:"100%"}}>
12
- {configData.map((itemData: HItemProps, index) => {
21
+ {newConfigData.map((itemData: HItemProps, index) => {
13
22
  const {
14
23
  labelWidth: itemLabelWidth,
15
24
  hideLabel ,
@@ -4,7 +4,7 @@ import { useCurrentForm, useInfoReq, useValuesChange } from "./hooks";
4
4
  import { FormContext } from "./Context";
5
5
  import PageHandler from "../PageHandler";
6
6
  import useInitConfigData from "./hooks/useInitConfigData";
7
- import { useEffect } from "react";
7
+ import {useEffect, useMemo, useState} from "react";
8
8
  import InitSet from "./InitSet";
9
9
  import Basic from "./Basic";
10
10
 
@@ -30,10 +30,8 @@ export default ({
30
30
  ...props
31
31
  }: HFormProps) => {
32
32
  const hForm = useCurrentForm(form);
33
- const { newConfigData, dispatchSourceData } = useInitConfigData({
34
- configData,
35
- form: hForm,
36
- });
33
+ const [dispatchSourceData,setDispatchSourceData]=useState({});
34
+
37
35
  const { subControl, infoControl } = useInfoReq({
38
36
  initialValues,
39
37
  request,
@@ -61,6 +59,14 @@ export default ({
61
59
  hForm.removeDispatchListener();
62
60
  };
63
61
  }, []);
62
+ const setData=(newData)=>{
63
+ setDispatchSourceData((oldData)=>{
64
+ return {
65
+ ...oldData,
66
+ ...newData
67
+ }
68
+ })
69
+ }
64
70
  return (
65
71
  <PageHandler
66
72
  loading={infoLoading}
@@ -79,7 +85,8 @@ export default ({
79
85
  hideLabel:formHideLabel,
80
86
  colon,
81
87
  itemProps:formItemProps,
82
- itemSpan
88
+ itemSpan,
89
+ setData
83
90
  }}
84
91
  >
85
92
  <Form
@@ -88,7 +95,7 @@ export default ({
88
95
  onValuesChange={valuesChange}
89
96
  {...props}
90
97
  >
91
- <Basic configData={newConfigData} gutter={gutter}/>
98
+ <Basic configData={configData} gutter={gutter}/>
92
99
  <InitSet />
93
100
  </Form>
94
101
  </FormContext.Provider>
@@ -137,6 +137,7 @@ export interface FormContextProps {
137
137
  colon?:boolean;
138
138
  itemProps?: ItemPropsType;
139
139
  itemSpan?: ColProps;
140
+ setData?:(newData:any)=>void;
140
141
  }
141
142
  interface ConfigUploadProps {
142
143
  exFiles?: string[];
@@ -26,48 +26,35 @@ const Test3 = ({ value, onChange }) => {
26
26
  };
27
27
  const formData = (options) => {
28
28
  return [
29
- {
30
- label: "12321",
31
- className: "3",
32
- name: "inputNumberGroup",
33
- type: "inputNumberGroup",
34
- itemProps: {
35
- addonAfter: <Test3 />,
29
+ {
30
+ label: '手机号',
31
+ name: 'phone',
36
32
  },
37
- },
38
- {
39
- label: "下拉",
40
- className: "hdjd",
41
- type: "select",
42
- name: "test321",
43
- itemProps: {
44
- options: [
45
- {
46
- value: "选项1",
47
- key: 1,
33
+ {
34
+ label: '验证码',
35
+ name: 'verifyCode',
36
+ type: 'select',
37
+ dispatch: {
38
+ fnKey: 'reload',
39
+ dependencies: ['phone'],
48
40
  },
49
- {
50
- value: "选项2",
51
- key: 2,
41
+ itemProps: {
42
+ request: ({ phone }) => {
43
+ console.log("request")
44
+ return Promise.resolve({});
45
+ },
52
46
  },
53
- ],
54
- showSearch: true,
55
47
  },
56
- },
57
- {
58
- label: "测试12312",
59
- className: "hdjd",
60
- name: "test123",
61
- },
62
48
  {
63
49
  noStyle:true,
64
50
  render:()=>{
65
51
  return <HBasicForm configData={[
66
52
  {
67
53
  label: "下拉",
68
- className: "hdjd",
54
+ className: "hdjddd",
69
55
  type: "select",
70
56
  name: "test321",
57
+ rules:[{required:true}],
71
58
  itemProps: {
72
59
  options: [
73
60
  {