Skip to content

Commit 3919e5a

Browse files
Merge pull request #26 from iron-tech-space/v0.92-Select-Form-and-ExtraData-type
v0.92 Select, Form and extraData type
2 parents 4772752 + 4b3f829 commit 3919e5a

File tree

7 files changed

+27
-10
lines changed

7 files changed

+27
-10
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## 0.0.92
2+
3+
- `revertSearchField` clears inner input `Select`
4+
- Fix `extraData` type in subscribes to correctly accept object of path records
5+
- Add `reloadDataAfterSaveForm` prop for `Form` component
6+
17
## 0.0.91
28

39
- Value of `password` field no longer logs into the console when submitting form

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "rt-design",
3-
"version": "0.0.91",
3+
"version": "0.0.92",
44
"description": "React technical design library",
55
"author": "Iron tech space",
66
"license": "MIT",

src/components/Form/Form.js

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,11 @@ const Form = (props) => {
5252
footer,
5353
requestSaveForm,
5454
methodSaveForm,
55-
processBeforeSaveForm
55+
processBeforeSaveForm,
56+
reloadDataAfterSaveForm,
5657
} = props;
5758

58-
/** Состояние первоначалной настройки компонента*/
59+
/** Состояние первоначальной настройки компонента */
5960
const [loaded, setLoaded] = useState(false);
6061
const [antFormProps, setAntFormProps] = useState({});
6162
const [initFormData, setInitFormData] = useState({});
@@ -119,6 +120,7 @@ const Form = (props) => {
119120
message: "Сохранение прошло успешно"
120121
});
121122
props.onFinish && props.onFinish(saveObject, response.data);
123+
if (reloadDataAfterSaveForm) setLoaded(false);
122124
})
123125
.catch(error => notificationError(error, 'Ошибка при сохранении') );
124126
} else if (props.onFinish)
@@ -193,14 +195,18 @@ Form.propTypes = {
193195
methodSaveForm: PropTypes.string,
194196

195197
/** Функция обработки перед сохранением формы */
196-
processBeforeSaveForm: PropTypes.func
198+
processBeforeSaveForm: PropTypes.func,
199+
200+
/** Выполнить loadInitData после сохранения формы */
201+
reloadDataAfterSaveForm: PropTypes.bool,
197202
};
198203

199204
Form.defaultProps = {
200205
noPadding: false,
201206
scrollable: false,
202207
loadInitData: noop,
203-
methodSaveForm: 'POST'
208+
methodSaveForm: 'POST',
209+
reloadDataAfterSaveForm: false,
204210
};
205211

206212
const mapDispatchToProps = (dispatch) =>

src/components/Form/FormProps.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,10 @@ export interface FormProps extends AntFormProps{
3838
* Ссылка на функцию загрузки значений по умолчанию
3939
*
4040
* Пример: `(callBack) => callBack({})` */
41-
loadInitData?: (callBack: (params: any) => void,row?:any) => void ,
41+
loadInitData?: (callBack: (params: any) => void, row?:any) => void,
42+
43+
/** Выполнить loadInitData после сохранения формы */
44+
reloadDataAfterSaveForm?: boolean,
4245

4346
/** Запрос для автоматического сохранения формы */
4447
requestSaveForm?: Request;

src/components/Select/Select.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ const Select = props => {
9393
}, []);
9494

9595
useEffect(() => {
96-
_setSearchValue(revertSearchValue);
96+
_setSearchValue('');
9797
}, [revertSearchValue]);
9898

9999
useEffect(() => {
@@ -387,8 +387,8 @@ Select.propTypes = {
387387
/** Значение строки поиска */
388388
searchValue: PropTypes.string,
389389

390-
/** Сброс строки поиска вложенного инпута */
391-
revertSearchValue: PropTypes.string,
390+
/** Сброс строки поиска вложенного инпута по любому уникальному значению, например {} */
391+
revertSearchValue: PropTypes.any,
392392

393393
/** Имя параметра для поиска */
394394
searchParamName: PropTypes.string,

src/components/Select/SelectProps.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ export interface SelectProps<VT extends SelectValue = SelectValue> extends Omit<
1919
filter?: any;
2020
/** Значение строки поиска */
2121
searchValue?: string;
22+
/** Сброс строки поиска вложенного инпута по любому уникальному значению, например {} */
23+
revertSearchValue?: any,
2224
/** Имя параметра для поиска */
2325
searchParamName?: string;
2426
/** Имя параметра для поиска потерянного элемента */

src/components/core/wrappers.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export interface StoreProps {
3535
/** Путь до объекта в Store */
3636
path: string;
3737
/** Путь к дополнительным данным которые будут переданы в onChange */
38-
extraData?: string;
38+
extraData?: string | Record<string, string>;
3939
/** Выполнить подписку при монтировании компонента
4040
* По умолчанию false */
4141
withMount?: boolean;

0 commit comments

Comments
 (0)