@steroidsjs/core 3.0.1 → 3.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs-autogen-result.json +97 -10
- package/en.json +6 -0
- package/hooks/useApplication.d.ts +1 -1
- package/package.json +1 -1
- package/ui/content/DropDown/DropDown.js +1 -3
- package/ui/content/Kanban/Kanban.d.ts +7 -1
- package/ui/content/Kanban/Kanban.js +2 -1
- package/ui/content/Kanban/hooks/useKanban.d.ts +6 -0
- package/ui/content/Kanban/hooks/useKanban.js +2 -1
- package/ui/content/Slider/Slider.d.ts +2 -1
- package/ui/content/Slider/Slider.js +19 -3
- package/ui/form/AutoCompleteField/AutoCompleteField.d.ts +1 -2
- package/ui/form/AutoCompleteField/AutoCompleteField.js +24 -11
- package/ui/form/Button/Button.d.ts +1 -1
- package/ui/form/Button/Button.js +29 -5
- package/ui/form/CheckboxField/CheckboxField.d.ts +1 -1
- package/ui/form/CheckboxField/CheckboxField.js +13 -4
- package/ui/form/CheckboxListField/CheckboxListField.d.ts +2 -1
- package/ui/form/CheckboxListField/CheckboxListField.js +13 -4
- package/ui/form/CheckboxTreeField/CheckboxTreeField.d.ts +1 -1
- package/ui/form/CheckboxTreeField/CheckboxTreeField.js +9 -1
- package/ui/form/DateField/DateField.js +3 -1
- package/ui/form/DateRangeField/DateRangeField.js +18 -13
- package/ui/form/DateTimeField/DateTimeField.d.ts +1 -1
- package/ui/form/DateTimeField/DateTimeField.js +19 -1
- package/ui/form/DateTimeRangeField/DateTimeRangeField.js +20 -1
- package/ui/form/DropDownField/DropDownField.js +34 -2
- package/ui/form/EmailField/EmailField.js +53 -3
- package/ui/form/Field/Field.js +3 -3
- package/ui/form/FieldLayout/FieldLayout.js +12 -12
- package/ui/form/FieldList/FieldList.d.ts +1 -1
- package/ui/form/FieldList/FieldList.js +7 -6
- package/ui/form/FieldSet/FieldSet.js +6 -1
- package/ui/form/FileField/FileField.js +13 -3
- package/ui/form/Form/Form.d.ts +1 -1
- package/ui/form/Form/Form.js +12 -14
- package/ui/form/HtmlField/HtmlField.d.ts +20 -1
- package/ui/form/HtmlField/HtmlField.js +11 -12
- package/ui/form/ImageField/ImageField.js +12 -8
- package/ui/form/InputField/InputField.js +24 -3
- package/ui/form/MaskField/MaskField.js +1 -13
- package/ui/form/NavField/NavField.js +12 -2
- package/ui/form/NumberField/NumberField.js +16 -3
- package/ui/form/PasswordField/PasswordField.js +15 -2
- package/ui/form/RadioField/RadioField.d.ts +1 -1
- package/ui/form/RadioField/RadioField.js +15 -4
- package/ui/form/RadioListField/RadioListField.d.ts +2 -1
- package/ui/form/RadioListField/RadioListField.js +14 -4
- package/ui/form/RateField/RateField.js +11 -1
- package/ui/form/ReCaptchaField/ReCaptchaField.js +6 -12
- package/ui/form/SliderField/SliderField.d.ts +1 -1
- package/ui/form/SliderField/SliderField.js +5 -3
- package/ui/form/SwitcherField/SwitcherField.d.ts +1 -1
- package/ui/form/SwitcherField/SwitcherField.js +14 -4
- package/ui/form/TextField/TextField.js +2 -1
- package/ui/form/TimeField/TimeField.js +3 -1
- package/ui/form/TimeRangeField/TimeRangeField.js +4 -1
- package/ui/layout/Notifications/Notifications.d.ts +1 -1
- package/ui/layout/Notifications/Notifications.js +7 -3
- package/ui/layout/ProgressBar/ProgressBar.d.ts +1 -1
- package/ui/layout/ProgressBar/ProgressBar.js +22 -26
- package/ui/layout/Sidebar/Sidebar.js +16 -12
- package/ui/list/ControlsColumn/ControlsColumn.js +7 -1
- package/ui/list/Grid/Grid.d.ts +1 -1
- package/ui/list/Grid/Grid.js +33 -8
- package/ui/list/LayoutNames/LayoutNames.d.ts +1 -1
- package/ui/list/LayoutNames/LayoutNames.js +2 -3
- package/ui/list/List/List.js +19 -4
- package/ui/list/Pagination/Pagination.d.ts +1 -1
- package/ui/list/Pagination/Pagination.js +22 -6
- package/ui/list/PaginationSize/PaginationSize.d.ts +1 -1
- package/ui/list/PaginationSize/PaginationSize.js +10 -4
- package/ui/modal/Modal/Modal.d.ts +2 -2
- package/ui/modal/Modal/Modal.js +16 -3
- package/ui/modal/ModalPortal/ModalPortal.js +2 -3
- package/ui/nav/Breadcrumbs/Breadcrumbs.js +10 -12
- package/ui/nav/ButtonGroup/ButtonGroup.js +19 -38
- package/ui/nav/Controls/Controls.js +6 -1
- package/ui/nav/Nav/Nav.d.ts +9 -1
- package/ui/nav/Nav/Nav.js +16 -7
- package/ui/nav/Router/Router.d.ts +2 -2
- package/ui/nav/Router/Router.js +17 -16
- package/ui/nav/Router/helpers.d.ts +1 -1
- package/ui/nav/Router/helpers.js +19 -16
- package/ui/nav/Tree/Tree.js +10 -12
|
@@ -43,6 +43,7 @@ var first_1 = __importDefault(require("lodash-es/first"));
|
|
|
43
43
|
var values_1 = __importDefault(require("lodash-es/values"));
|
|
44
44
|
var react_1 = require("react");
|
|
45
45
|
var uniqueId_1 = __importDefault(require("lodash-es/uniqueId"));
|
|
46
|
+
var react_use_1 = require("react-use");
|
|
46
47
|
var hooks_1 = require("../../../hooks");
|
|
47
48
|
var useDispatch_1 = __importDefault(require("../../../hooks/useDispatch"));
|
|
48
49
|
var useFile_1 = __importDefault(require("../../../hooks/useFile"));
|
|
@@ -70,9 +71,10 @@ function ImageField(props) {
|
|
|
70
71
|
responseParser: props.crop ? responseParser : null
|
|
71
72
|
}
|
|
72
73
|
} }, props.uploader) })), files = _b.files, onBrowse = _b.onBrowse, onRemove = _b.onRemove, onAdd = _b.onAdd;
|
|
74
|
+
var oldCroppedImage = (0, react_use_1.usePrevious)(croppedImage);
|
|
73
75
|
// Fetch cropped image
|
|
74
76
|
(0, react_1.useEffect)(function () {
|
|
75
|
-
if (croppedImage) {
|
|
77
|
+
if (croppedImage && !oldCroppedImage) {
|
|
76
78
|
components.http.post(props.crop.backendUrl, croppedImage).then(function (res) {
|
|
77
79
|
setCroppedImage(null);
|
|
78
80
|
onAdd(new File_1["default"]({
|
|
@@ -83,9 +85,10 @@ function ImageField(props) {
|
|
|
83
85
|
resultHttpMessage: res,
|
|
84
86
|
uid: res.uid
|
|
85
87
|
}));
|
|
88
|
+
props.input.onChange(res.id);
|
|
86
89
|
});
|
|
87
90
|
}
|
|
88
|
-
}, [components.http, croppedImage, onAdd, onRemove, props.crop.backendUrl]);
|
|
91
|
+
}, [components.http, croppedImage, onAdd, onRemove, props.crop.backendUrl, props.input, oldCroppedImage]);
|
|
89
92
|
var ImageFieldView = props.view || components.ui.getView('form.ImageFieldView');
|
|
90
93
|
var item = (0, react_1.useMemo)(function () {
|
|
91
94
|
var result = null;
|
|
@@ -132,7 +135,13 @@ function ImageField(props) {
|
|
|
132
135
|
}
|
|
133
136
|
return result;
|
|
134
137
|
}, [files, onRemove, props.disabled, props.imagesProcessor, props.size]);
|
|
135
|
-
|
|
138
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
139
|
+
item: item,
|
|
140
|
+
onClick: onBrowse,
|
|
141
|
+
buttonProps: props.buttonProps,
|
|
142
|
+
label: props.label
|
|
143
|
+
}); }, [item, onBrowse, props.buttonProps, props.label]);
|
|
144
|
+
return (React.createElement(ImageFieldView, __assign({}, viewProps)));
|
|
136
145
|
}
|
|
137
146
|
ImageField.defaultProps = {
|
|
138
147
|
disabled: false,
|
|
@@ -140,11 +149,6 @@ ImageField.defaultProps = {
|
|
|
140
149
|
className: '',
|
|
141
150
|
modalProps: {},
|
|
142
151
|
label: 'Upload',
|
|
143
|
-
crop: {
|
|
144
|
-
initialValues: {
|
|
145
|
-
aspect: 1
|
|
146
|
-
}
|
|
147
|
-
},
|
|
148
152
|
buttonProps: {
|
|
149
153
|
color: 'basic',
|
|
150
154
|
outline: true
|
|
@@ -102,13 +102,34 @@ function InputField(props) {
|
|
|
102
102
|
var _a;
|
|
103
103
|
return (__assign({ type: props.type, name: props.input.name, value: (_a = props.input.value) !== null && _a !== void 0 ? _a : '', onInput: onChange, placeholder: props.placeholder, disabled: props.disabled }, props.inputProps));
|
|
104
104
|
}, [onChange, props.disabled, props.input.name, props.input.value, props.inputProps, props.placeholder, props.type]);
|
|
105
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
106
|
+
inputRef: useInputFieldWarningByType_1.INPUT_TYPES_SUPPORTED_SELECTION.includes(props.type) ? inputRef : null,
|
|
107
|
+
onClear: onClear,
|
|
108
|
+
inputProps: inputProps,
|
|
109
|
+
size: props.size,
|
|
110
|
+
errors: props.errors,
|
|
111
|
+
leadIcon: props.leadIcon,
|
|
112
|
+
showClear: props.showClear,
|
|
113
|
+
input: props.input,
|
|
114
|
+
addonAfter: props.addonAfter,
|
|
115
|
+
addonBefore: props.addonBefore,
|
|
116
|
+
textAfter: props.textAfter,
|
|
117
|
+
textBefore: props.textBefore,
|
|
118
|
+
className: props.className,
|
|
119
|
+
style: props.style,
|
|
120
|
+
onBlur: props.onBlur,
|
|
121
|
+
onFocus: props.onFocus,
|
|
122
|
+
onMouseDown: props.onMouseDown,
|
|
123
|
+
placeholder: props.placeholder,
|
|
124
|
+
required: props.required,
|
|
125
|
+
id: props.id,
|
|
126
|
+
viewProps: props.viewProps
|
|
127
|
+
}); }, [inputProps, inputRef, onClear, props]);
|
|
105
128
|
// No render for hidden input
|
|
106
129
|
if (props.type === 'hidden') {
|
|
107
130
|
return null;
|
|
108
131
|
}
|
|
109
|
-
return components.ui.renderView(props.view || 'form.InputFieldView',
|
|
110
|
-
// If type was recognized as unsupported in InputField, then we do not pass ref.
|
|
111
|
-
inputRef: useInputFieldWarningByType_1.INPUT_TYPES_SUPPORTED_SELECTION.includes(props.type) ? inputRef : null, onClear: onClear }));
|
|
132
|
+
return components.ui.renderView(props.view || 'form.InputFieldView', viewProps);
|
|
112
133
|
}
|
|
113
134
|
InputField.defaultProps = {
|
|
114
135
|
type: 'text',
|
|
@@ -10,17 +10,6 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
-
var t = {};
|
|
15
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
-
t[p] = s[p];
|
|
17
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
-
t[p[i]] = s[p[i]];
|
|
21
|
-
}
|
|
22
|
-
return t;
|
|
23
|
-
};
|
|
24
13
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
25
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
26
15
|
};
|
|
@@ -28,7 +17,6 @@ exports.__esModule = true;
|
|
|
28
17
|
var react_1 = __importDefault(require("react"));
|
|
29
18
|
var InputField_1 = __importDefault(require("../InputField/InputField"));
|
|
30
19
|
function MaskField(props) {
|
|
31
|
-
|
|
32
|
-
return (react_1["default"].createElement(InputField_1["default"], __assign({}, inputProps, { maskOptions: props.maskOptions })));
|
|
20
|
+
return (react_1["default"].createElement(InputField_1["default"], __assign({}, props)));
|
|
33
21
|
}
|
|
34
22
|
exports["default"] = MaskField;
|
|
@@ -37,7 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
exports.__esModule = true;
|
|
40
|
-
var
|
|
40
|
+
var react_1 = __importStar(require("react"));
|
|
41
41
|
var Nav_1 = __importDefault(require("../../nav/Nav/Nav"));
|
|
42
42
|
var fieldWrapper_1 = __importDefault(require("../../form/Field/fieldWrapper"));
|
|
43
43
|
var hooks_1 = require("../../../hooks");
|
|
@@ -45,7 +45,17 @@ function NavField(props) {
|
|
|
45
45
|
var items = (0, hooks_1.useDataProvider)({
|
|
46
46
|
items: props.items
|
|
47
47
|
}).items;
|
|
48
|
-
|
|
48
|
+
var navProps = (0, react_1.useMemo)(function () { return ({
|
|
49
|
+
layout: props.navProps.layout,
|
|
50
|
+
items: items,
|
|
51
|
+
activeTab: props.input.value,
|
|
52
|
+
onChange: props.onChange,
|
|
53
|
+
disabled: props.disabled,
|
|
54
|
+
className: props.className,
|
|
55
|
+
view: props.view,
|
|
56
|
+
size: props.size
|
|
57
|
+
}); }, [items, props.className, props.disabled, props.input.value, props.navProps.layout, props.onChange, props.size, props.view]);
|
|
58
|
+
return (react_1["default"].createElement(Nav_1["default"], __assign({}, navProps)));
|
|
49
59
|
}
|
|
50
60
|
NavField.defaultProps = {
|
|
51
61
|
navProps: {
|
|
@@ -76,9 +76,22 @@ function NumberField(props) {
|
|
|
76
76
|
}, [onStepDown, onStepUp]);
|
|
77
77
|
var inputProps = (0, react_1.useMemo)(function () {
|
|
78
78
|
var _a;
|
|
79
|
-
return (__assign({ name: props.input.name, value: (_a = props.input.value) !== null && _a !== void 0 ? _a : '', onChange: onInputChange, type: 'text', min: props.min, max: props.max, step: props.step, placeholder: props.placeholder, disabled: props.disabled, autoComplete: 'off', onKeyDown: onKeyDown }
|
|
80
|
-
}, [props.input.name, props.input.value, props.min, props.max, props.step, props.placeholder, props.disabled,
|
|
81
|
-
|
|
79
|
+
return (__assign(__assign({}, props.inputProps), { name: props.input.name, value: (_a = props.input.value) !== null && _a !== void 0 ? _a : '', onChange: onInputChange, type: 'text', min: props.min, max: props.max, step: props.step, placeholder: props.placeholder, disabled: props.disabled, autoComplete: 'off', onKeyDown: onKeyDown }));
|
|
80
|
+
}, [props.inputProps, props.input.name, props.input.value, props.min, props.max, props.step, props.placeholder, props.disabled, onInputChange, onKeyDown]);
|
|
81
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
82
|
+
viewProps: props.viewProps,
|
|
83
|
+
inputProps: inputProps,
|
|
84
|
+
onStepUp: onStepUp,
|
|
85
|
+
onStepDown: onStepDown,
|
|
86
|
+
input: props.input,
|
|
87
|
+
inputRef: currentInputRef,
|
|
88
|
+
size: props.size,
|
|
89
|
+
errors: props.errors,
|
|
90
|
+
className: props.className,
|
|
91
|
+
disabled: props.disabled,
|
|
92
|
+
id: props.id
|
|
93
|
+
}); }, [currentInputRef, inputProps, onStepDown, onStepUp, props]);
|
|
94
|
+
return components.ui.renderView(props.view || 'form.NumberFieldView', viewProps);
|
|
82
95
|
}
|
|
83
96
|
NumberField.defaultProps = {
|
|
84
97
|
disabled: false,
|
|
@@ -62,9 +62,22 @@ function PasswordField(props) {
|
|
|
62
62
|
}, [type]);
|
|
63
63
|
var inputProps = (0, react_1.useMemo)(function () {
|
|
64
64
|
var _a;
|
|
65
|
-
return (__assign({ name: props.input.name, defaultValue: (_a = props.input.value) !== null && _a !== void 0 ? _a : '',
|
|
65
|
+
return (__assign({ name: props.input.name, defaultValue: (_a = props.input.value) !== null && _a !== void 0 ? _a : '', placeholder: props.placeholder, disabled: props.disabled, ref: inputRef, onChange: onChange, type: type }, props.inputProps));
|
|
66
66
|
}, [inputRef, onChange, props.disabled, props.input.name, props.input.value, props.inputProps, props.placeholder, type]);
|
|
67
|
-
|
|
67
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
68
|
+
viewProps: props.viewProps,
|
|
69
|
+
inputProps: inputProps,
|
|
70
|
+
securityLevel: props.showSecurityBar ? (0, exports.checkPassword)(props.input.value) : null,
|
|
71
|
+
onClear: onClear,
|
|
72
|
+
onShowButtonClick: onShowButtonClick,
|
|
73
|
+
size: props.size,
|
|
74
|
+
input: props.input,
|
|
75
|
+
className: props.className,
|
|
76
|
+
showSecurityIcon: props.showSecurityIcon,
|
|
77
|
+
showSecurityBar: props.showSecurityBar
|
|
78
|
+
}); }, [inputProps, onClear, onShowButtonClick, props.className, props.input, props.showSecurityBar, props.showSecurityIcon,
|
|
79
|
+
props.size, props.viewProps]);
|
|
80
|
+
return components.ui.renderView(props.view || 'form.PasswordFieldView' || 'form.InputFieldView', viewProps);
|
|
68
81
|
}
|
|
69
82
|
PasswordField.defaultProps = {
|
|
70
83
|
disabled: false,
|
|
@@ -37,19 +37,30 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
exports.__esModule = true;
|
|
40
|
-
var
|
|
40
|
+
var react_1 = __importStar(require("react"));
|
|
41
41
|
var hooks_1 = require("../../../hooks");
|
|
42
42
|
var fieldWrapper_1 = __importDefault(require("../Field/fieldWrapper"));
|
|
43
43
|
function RadioField(props) {
|
|
44
44
|
var components = (0, hooks_1.useComponents)();
|
|
45
|
-
var onChangeHandler =
|
|
45
|
+
var onChangeHandler = react_1["default"].useCallback(function () {
|
|
46
46
|
props.input.onChange(!props.input.value);
|
|
47
47
|
if (props.onChange) {
|
|
48
48
|
props.onChange();
|
|
49
49
|
}
|
|
50
50
|
}, [props]);
|
|
51
|
-
var inputProps =
|
|
52
|
-
|
|
51
|
+
var inputProps = react_1["default"].useMemo(function () { return (__assign({ name: props.input.name, type: 'radio', checked: !!props.input.value, onChange: onChangeHandler, disabled: props.disabled }, props.inputProps)); }, [onChangeHandler, props.disabled, props.input.name, props.input.value, props.inputProps]);
|
|
52
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
53
|
+
inputProps: inputProps,
|
|
54
|
+
errors: props.errors,
|
|
55
|
+
size: props.size,
|
|
56
|
+
className: props.className,
|
|
57
|
+
onChange: props.onChange,
|
|
58
|
+
checked: props.checked,
|
|
59
|
+
disabled: props.disabled,
|
|
60
|
+
required: props.required,
|
|
61
|
+
label: props.label
|
|
62
|
+
}); }, [inputProps, props.checked, props.className, props.disabled, props.errors, props.label, props.onChange, props.required, props.size]);
|
|
63
|
+
return components.ui.renderView(props.view || 'form.RadioFieldView', viewProps);
|
|
53
64
|
}
|
|
54
65
|
RadioField.defaultProps = {
|
|
55
66
|
disabled: false,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { IFieldWrapperInputProps, IFieldWrapperOutputProps } from '../../form/Field/fieldWrapper';
|
|
3
3
|
import { IDataProviderConfig } from '../../../hooks/useDataProvider';
|
|
4
4
|
import { IDataSelectConfig } from '../../../hooks/useDataSelect';
|
|
@@ -31,6 +31,7 @@ export interface IRadioListFieldViewProps extends IFieldWrapperOutputProps {
|
|
|
31
31
|
disabled?: boolean;
|
|
32
32
|
isSelected: boolean;
|
|
33
33
|
isHovered: boolean;
|
|
34
|
+
required?: boolean;
|
|
34
35
|
}[];
|
|
35
36
|
selectedIds: (PrimaryKey | any)[];
|
|
36
37
|
className?: CssClassName;
|
|
@@ -37,8 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
exports.__esModule = true;
|
|
40
|
-
var
|
|
41
|
-
var react_1 = require("react");
|
|
40
|
+
var react_1 = __importStar(require("react"));
|
|
42
41
|
var react_use_1 = require("react-use");
|
|
43
42
|
var isEqual_1 = __importDefault(require("lodash-es/isEqual"));
|
|
44
43
|
var hooks_1 = require("../../../hooks");
|
|
@@ -75,8 +74,19 @@ function RadioListField(props) {
|
|
|
75
74
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
76
75
|
}, [props.input.onChange, selectedIds]);
|
|
77
76
|
var RadioFieldView = components.ui.getView('form.RadioFieldView');
|
|
78
|
-
var renderRadio = function (radioProps) { return
|
|
79
|
-
|
|
77
|
+
var renderRadio = function (radioProps) { return react_1["default"].createElement(RadioFieldView, __assign({}, radioProps)); };
|
|
78
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
79
|
+
items: items,
|
|
80
|
+
inputProps: inputProps,
|
|
81
|
+
onItemSelect: onItemSelect,
|
|
82
|
+
selectedIds: selectedIds,
|
|
83
|
+
renderRadio: renderRadio,
|
|
84
|
+
orientation: props.orientation,
|
|
85
|
+
className: props.className,
|
|
86
|
+
disabled: props.disabled,
|
|
87
|
+
size: props.size
|
|
88
|
+
}); }, [inputProps, items, onItemSelect, props.className, props.disabled, props.orientation, props.size, renderRadio, selectedIds]);
|
|
89
|
+
return components.ui.renderView(props.view || 'form.RadioListFieldView', viewProps);
|
|
80
90
|
}
|
|
81
91
|
RadioListField.defaultProps = {
|
|
82
92
|
disabled: false,
|
|
@@ -42,7 +42,17 @@ function RateField(props) {
|
|
|
42
42
|
props.input.onChange(value);
|
|
43
43
|
}, [props.allowClear, props.input]);
|
|
44
44
|
var inputProps = (0, react_1.useMemo)(function () { return (__assign({ name: props.input.name, value: props.input.value, disabled: props.disabled }, props.inputProps)); }, [props.disabled, props.input, props.inputProps]);
|
|
45
|
-
|
|
45
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
46
|
+
inputProps: inputProps,
|
|
47
|
+
onItemClick: onItemClick,
|
|
48
|
+
items: items,
|
|
49
|
+
size: props.size,
|
|
50
|
+
disabled: props.disabled,
|
|
51
|
+
className: props.className,
|
|
52
|
+
style: props.style,
|
|
53
|
+
badge: props.badge
|
|
54
|
+
}); }, [inputProps, items, onItemClick, props.badge, props.className, props.disabled, props.size, props.style]);
|
|
55
|
+
return components.ui.renderView(props.view || 'form.RateFieldView', viewProps);
|
|
46
56
|
}
|
|
47
57
|
RateField.defaultProps = {
|
|
48
58
|
allowClear: false,
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
@@ -39,6 +28,11 @@ function ReCaptchaField(props) {
|
|
|
39
28
|
ref: props.ref,
|
|
40
29
|
sitekey: props.sitekey || components.resource.googleCaptchaSiteKey
|
|
41
30
|
}); }, [components.resource.googleCaptchaSiteKey, onChange, props.asyncScriptOnLoad, props.badge, props.hl, props.isolated, props.onErrored, props.onExpired, props.ref, props.sitekey, props.stoken, props.tabindex, props.type]);
|
|
42
|
-
|
|
31
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
32
|
+
recaptchaOptions: recaptchaOptions,
|
|
33
|
+
className: props.className,
|
|
34
|
+
style: props.style
|
|
35
|
+
}); }, [props.className, props.style, recaptchaOptions]);
|
|
36
|
+
return components.ui.renderView(props.view || 'form.ReCaptchaFieldView', viewProps);
|
|
43
37
|
}
|
|
44
38
|
exports["default"] = (0, fieldWrapper_1["default"])('ReCaptchaField', ReCaptchaField);
|
|
@@ -14,8 +14,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
15
|
};
|
|
16
16
|
exports.__esModule = true;
|
|
17
|
-
var toInteger_1 = __importDefault(require("lodash-es/toInteger"));
|
|
18
17
|
var react_1 = require("react");
|
|
18
|
+
var toInteger_1 = __importDefault(require("lodash-es/toInteger"));
|
|
19
19
|
var hooks_1 = require("../../../hooks");
|
|
20
20
|
var fieldWrapper_1 = __importDefault(require("../Field/fieldWrapper"));
|
|
21
21
|
var normalizeValue = function (value) { return (0, toInteger_1["default"])(String(value).replace(/[0-9]g/, '')) || 0; };
|
|
@@ -38,8 +38,10 @@ function SliderField(props) {
|
|
|
38
38
|
value = normalizeValue(value);
|
|
39
39
|
props.input.onChange.call(null, value);
|
|
40
40
|
}
|
|
41
|
-
}); }, [props.min, props.max, props.step, props.marks, props.isRange, props.disabled, props.isVertical, props.input.value,
|
|
42
|
-
|
|
41
|
+
}); }, [props.min, props.max, props.step, props.marks, props.isRange, props.disabled, props.isVertical, props.input.value,
|
|
42
|
+
props.input.onChange, props.valuePostfix, props.defaultValue, props.tooltipIsVisible]);
|
|
43
|
+
var viewProps = (0, react_1.useMemo)(function () { return (__assign(__assign({}, sliderProps), { slider: props.slider, className: props.className, rangeDefaultValue: props.rangeDefaultValue, sliderDefaultValue: props.sliderDefaultValue, style: props.style })); }, [props.className, props.rangeDefaultValue, props.slider, props.sliderDefaultValue, props.style, sliderProps]);
|
|
44
|
+
return components.ui.renderView(props.view || 'form.SliderFieldView', viewProps);
|
|
43
45
|
}
|
|
44
46
|
SliderField.defaultProps = {
|
|
45
47
|
step: 1,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { IFieldWrapperInputProps, IFieldWrapperOutputProps } from '../Field/fieldWrapper';
|
|
3
3
|
import { IDataProviderConfig } from '../../../hooks/useDataProvider';
|
|
4
4
|
import { IDataSelectConfig } from '../../../hooks/useDataSelect';
|
|
@@ -37,8 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
exports.__esModule = true;
|
|
40
|
-
var
|
|
41
|
-
var react_1 = require("react");
|
|
40
|
+
var react_1 = __importStar(require("react"));
|
|
42
41
|
var react_use_1 = require("react-use");
|
|
43
42
|
var isEqual_1 = __importDefault(require("lodash-es/isEqual"));
|
|
44
43
|
var fieldWrapper_1 = __importDefault(require("../Field/fieldWrapper"));
|
|
@@ -64,7 +63,7 @@ function SwitcherField(props) {
|
|
|
64
63
|
var onItemSelect = (0, react_1.useCallback)(function (id) {
|
|
65
64
|
setSelectedIds(id);
|
|
66
65
|
}, [setSelectedIds]);
|
|
67
|
-
var inputProps =
|
|
66
|
+
var inputProps = react_1["default"].useMemo(function () { return (__assign(__assign({}, props.inputProps), { type: 'checkbox', name: props.input.name, disabled: props.disabled })); }, [props.disabled, props.input.name, props.inputProps]);
|
|
68
67
|
// Sync with form
|
|
69
68
|
var prevSelectedIds = (0, react_use_1.usePrevious)(selectedIds);
|
|
70
69
|
(0, react_1.useEffect)(function () {
|
|
@@ -76,7 +75,18 @@ function SwitcherField(props) {
|
|
|
76
75
|
}
|
|
77
76
|
}
|
|
78
77
|
}, [selectedIds, props.input.onChange, prevSelectedIds, props, items]);
|
|
79
|
-
|
|
78
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
79
|
+
items: items,
|
|
80
|
+
inputProps: inputProps,
|
|
81
|
+
hoveredId: hoveredId,
|
|
82
|
+
selectedIds: selectedIds,
|
|
83
|
+
onItemHover: onItemHover,
|
|
84
|
+
onItemSelect: onItemSelect,
|
|
85
|
+
className: props.className,
|
|
86
|
+
style: props.style,
|
|
87
|
+
size: props.size
|
|
88
|
+
}); }, [hoveredId, inputProps, items, onItemHover, onItemSelect, props.className, props.size, props.style, selectedIds]);
|
|
89
|
+
return components.ui.renderView(props.view || 'form.SwitcherFieldView', viewProps);
|
|
80
90
|
}
|
|
81
91
|
SwitcherField.defaultProps = {
|
|
82
92
|
primaryKey: 'id',
|
|
@@ -37,7 +37,8 @@ function TextField(props) {
|
|
|
37
37
|
var _a;
|
|
38
38
|
return (__assign({ name: props.input.name, value: (_a = props.input.value) !== null && _a !== void 0 ? _a : '', onChange: handleChange, onKeyUp: onKeyUp, placeholder: props.placeholder, disabled: props.disabled, ref: inputRef }, props.inputProps));
|
|
39
39
|
}, [props.input.name, props.input.value, props.placeholder, props.disabled, props.inputProps, handleChange, onKeyUp, inputRef]);
|
|
40
|
-
|
|
40
|
+
var viewProps = (0, react_1.useMemo)(function () { return (__assign(__assign({}, props.viewProps), { inputProps: inputProps, onClear: onClear, errors: props.errors, size: props.size, className: props.className, showClear: props.showClear })); }, [inputProps, onClear, props.className, props.errors, props.showClear, props.size, props.viewProps]);
|
|
41
|
+
return components.ui.renderView(props.view || 'form.TextFieldView', viewProps);
|
|
41
42
|
}
|
|
42
43
|
TextField.defaultProps = {
|
|
43
44
|
disabled: false,
|
|
@@ -33,7 +33,9 @@ function TimeField(props) {
|
|
|
33
33
|
dateInUTC: props.dateInUTC
|
|
34
34
|
}), onNow = _a.onNow, onClear = _a.onClear, onClose = _a.onClose, isOpened = _a.isOpened, inputProps = _a.inputProps;
|
|
35
35
|
var timePanelViewProps = (0, react_1.useMemo)(function () { return (__assign({ onNow: onNow, onClose: onClose, value: inputProps.value, onSelect: inputProps.onChange }, props.timePanelViewProps)); }, [inputProps.onChange, inputProps.value, onClose, onNow, props.timePanelViewProps]);
|
|
36
|
-
|
|
36
|
+
var viewProps = (0, react_1.useMemo)(function () { return (__assign(__assign({}, props.viewProps), { onNow: onNow, onClear: onClear, onClose: onClose, isOpened: isOpened, inputProps: inputProps, timePanelViewProps: timePanelViewProps, size: props.size, icon: props.icon, errors: props.errors, noBorder: props.noBorder, disabled: props.disabled, className: props.className, style: props.style, showRemove: props.showRemove })); }, [inputProps, isOpened, onClear, onClose, onNow, props.className, props.disabled, props.errors, props.icon, props.noBorder,
|
|
37
|
+
props.showRemove, props.size, props.style, props.viewProps, timePanelViewProps]);
|
|
38
|
+
return components.ui.renderView(props.view || 'form.TimeFieldView', viewProps);
|
|
37
39
|
}
|
|
38
40
|
TimeField.defaultProps = {
|
|
39
41
|
disabled: false,
|
|
@@ -67,7 +67,10 @@ function TimeRangeField(props) {
|
|
|
67
67
|
}), focus = _c.focus, onClose = _c.onClose, onClear = _c.onClear, extendedInputPropsFrom = _c.extendedInputPropsFrom, extendedInputPropsTo = _c.extendedInputPropsTo;
|
|
68
68
|
var timePanelFromViewProps = (0, react_1.useMemo)(function () { return (__assign({ onNow: onNowFrom, onClose: onCloseFrom, value: inputPropsFrom.value, onSelect: inputPropsFrom.onChange }, props.timePanelViewProps)); }, [inputPropsFrom.onChange, inputPropsFrom.value, onCloseFrom, onNowFrom, props.timePanelViewProps]);
|
|
69
69
|
var timePanelToViewProps = (0, react_1.useMemo)(function () { return (__assign({ onNow: onNowTo, onClose: onCloseTo, value: inputPropsTo.value, onSelect: inputPropsTo.onChange }, props.timePanelViewProps)); }, [inputPropsTo.onChange, inputPropsTo.value, onCloseTo, onNowTo, props.timePanelViewProps]);
|
|
70
|
-
|
|
70
|
+
var viewProps = (0, react_1.useMemo)(function () { return (__assign(__assign({}, props.viewProps), { onClear: onClear, onClose: onClose, inputPropsFrom: extendedInputPropsFrom, inputPropsTo: extendedInputPropsTo, isOpened: focus === 'from' ? isOpenedFrom : isOpenedTo, style: props.style, errorsFrom: props.errorsFrom, errorsTo: props.errorsTo, errors: props.errors, timePanelFromViewProps: timePanelFromViewProps, timePanelToViewProps: timePanelToViewProps, size: props.size, icon: props.icon, disabled: props.disabled, showRemove: props.showRemove, className: props.className })); }, [extendedInputPropsFrom, extendedInputPropsTo, focus, isOpenedFrom, isOpenedTo, onClear, onClose, props.className,
|
|
71
|
+
props.disabled, props.errors, props.errorsFrom, props.errorsTo, props.icon, props.showRemove, props.size, props.style,
|
|
72
|
+
props.viewProps, timePanelFromViewProps, timePanelToViewProps]);
|
|
73
|
+
return components.ui.renderView(props.view || 'form.TimeRangeFieldView', viewProps);
|
|
71
74
|
}
|
|
72
75
|
TimeRangeField.defaultProps = {
|
|
73
76
|
disabled: false,
|
|
@@ -37,9 +37,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
exports.__esModule = true;
|
|
40
|
-
var
|
|
40
|
+
var react_1 = __importStar(require("react"));
|
|
41
41
|
var orderBy_1 = __importDefault(require("lodash-es/orderBy"));
|
|
42
|
-
var react_1 = require("react");
|
|
43
42
|
var react_use_1 = require("react-use");
|
|
44
43
|
var useDispatch_1 = __importDefault(require("../../../hooks/useDispatch"));
|
|
45
44
|
var hooks_1 = require("../../../hooks");
|
|
@@ -85,7 +84,12 @@ function Notifications(props) {
|
|
|
85
84
|
var items = (0, react_1.useMemo)(function () { return ((0, orderBy_1["default"])([].concat(innerNotifications).concat(closing), ['id'], 'asc')
|
|
86
85
|
.map(function (item) { return (__assign(__assign({}, item), { isClosing: closingIds.includes(item.id), onClose: function () { return onClose(item.id); } })); })); }, [innerNotifications, closing, closingIds, onClose]);
|
|
87
86
|
var NotificationsItemView = props.itemView || components.ui.getView('layout.NotificationsItemView');
|
|
88
|
-
|
|
87
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
88
|
+
className: props.className,
|
|
89
|
+
position: position || '',
|
|
90
|
+
children: items.map(function (item) { return (react_1["default"].createElement(NotificationsItemView, __assign({ key: item.id }, item))); })
|
|
91
|
+
}); }, [props.className, position, items, NotificationsItemView]);
|
|
92
|
+
return components.ui.renderView(props.view || 'layout.NotificationsView', viewProps);
|
|
89
93
|
}
|
|
90
94
|
Notifications.defaultProps = {
|
|
91
95
|
closeTimeoutMs: 1500
|
|
@@ -26,40 +26,36 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
exports.__esModule = true;
|
|
29
|
-
var
|
|
29
|
+
var react_1 = __importStar(require("react"));
|
|
30
30
|
var Icon_1 = __importDefault(require("../../content/Icon/Icon"));
|
|
31
31
|
var hooks_1 = require("../../../hooks");
|
|
32
32
|
function ProgressBar(props) {
|
|
33
33
|
var components = (0, hooks_1.useComponents)();
|
|
34
|
-
var
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
return
|
|
34
|
+
var viewProps = (0, react_1.useMemo)(function () {
|
|
35
|
+
var getLabel = (function () {
|
|
36
|
+
if (!props.showLabel) {
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
if (props.icon) {
|
|
40
|
+
return props.icon(props.status, props.percent);
|
|
41
|
+
}
|
|
42
|
+
if (props.status === 'success') {
|
|
43
|
+
return react_1["default"].createElement(Icon_1["default"], { name: "check" });
|
|
44
|
+
}
|
|
45
|
+
if (props.status === 'exception') {
|
|
46
|
+
return react_1["default"].createElement(Icon_1["default"], { name: "times" });
|
|
47
|
+
}
|
|
48
|
+
return props.label(props.percent);
|
|
49
|
+
});
|
|
50
|
+
return {
|
|
51
51
|
percent: props.percent,
|
|
52
52
|
status: props.status,
|
|
53
53
|
size: props.size,
|
|
54
54
|
label: getLabel()
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
status: props.status,
|
|
60
|
-
size: props.size,
|
|
61
|
-
label: getLabel()
|
|
62
|
-
});
|
|
55
|
+
};
|
|
56
|
+
}, [props]);
|
|
57
|
+
var ViewComponent = props.type === 'line' ? 'layout.LineProgressBarView' : 'layout.CircleProgressBarView';
|
|
58
|
+
return components.ui.renderView(ViewComponent, viewProps);
|
|
63
59
|
}
|
|
64
60
|
ProgressBar.defaultProps = {
|
|
65
61
|
status: 'normal',
|
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
3
|
if (k2 === undefined) k2 = k;
|
|
15
4
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -48,7 +37,22 @@ function Sidebar(props) {
|
|
|
48
37
|
props.onClickItem(itemId);
|
|
49
38
|
}
|
|
50
39
|
}, [props]);
|
|
51
|
-
|
|
40
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
41
|
+
isOpened: isOpened,
|
|
42
|
+
toggleSidebar: toggleSidebar,
|
|
43
|
+
onClickNav: onClickNav,
|
|
44
|
+
hasSeparatedNavItem: props.hasSeparatedNavItem,
|
|
45
|
+
className: props.className,
|
|
46
|
+
style: props.style,
|
|
47
|
+
logo: props.logo,
|
|
48
|
+
menu: props.menu,
|
|
49
|
+
user: props.user,
|
|
50
|
+
items: props.items,
|
|
51
|
+
footerIcons: props.footerIcons,
|
|
52
|
+
isShink: props.isShink
|
|
53
|
+
}); }, [isOpened, onClickNav, props.className, props.footerIcons, props.hasSeparatedNavItem, props.isShink, props.items,
|
|
54
|
+
props.logo, props.menu, props.style, props.user, toggleSidebar]);
|
|
55
|
+
return components.ui.renderView(props.view || 'layout.SidebarView', viewProps);
|
|
52
56
|
}
|
|
53
57
|
exports["default"] = Sidebar;
|
|
54
58
|
Sidebar.defaultProps = {
|
|
@@ -25,6 +25,12 @@ function ControlsColumn(props) {
|
|
|
25
25
|
: props.controls;
|
|
26
26
|
return controls.map(function (control) { return (__assign(__assign({}, control), { position: 'left', visible: control.visible !== false && props.item['can' + (0, upperFirst_1["default"])(control.id)] !== false })); });
|
|
27
27
|
}, [props]);
|
|
28
|
-
|
|
28
|
+
var viewProps = (0, react_1.useMemo)(function () { return ({
|
|
29
|
+
items: items,
|
|
30
|
+
view: props.view,
|
|
31
|
+
controls: props.controls,
|
|
32
|
+
primaryKey: props.primaryKey
|
|
33
|
+
}); }, [items, props.controls, props.primaryKey, props.view]);
|
|
34
|
+
return components.ui.renderView(props.view || 'list.ControlsColumnView', viewProps);
|
|
29
35
|
}
|
|
30
36
|
exports["default"] = ControlsColumn;
|