@insticc/genericform 2.0.1 → 2.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/build/Demo.js +95 -83
- package/build/Demo2.js +230 -192
- package/build/FormFields/CustomAccordion.js +44 -35
- package/build/FormFields/CustomCheckbox.js +15 -13
- package/build/FormFields/CustomCheckboxGroup.js +63 -22
- package/build/FormFields/CustomComponent.js +9 -7
- package/build/FormFields/CustomDatePicker.js +32 -26
- package/build/FormFields/CustomDropdown.js +25 -21
- package/build/FormFields/CustomInput.js +17 -15
- package/build/FormFields/CustomJson.js +43 -39
- package/build/FormFields/CustomLabel.js +7 -6
- package/build/FormFields/CustomMultiDropdown.js +21 -20
- package/build/FormFields/CustomNumberInput.js +20 -18
- package/build/FormFields/CustomRadioGroup.js +29 -25
- package/build/FormFields/CustomSearch.js +19 -18
- package/build/FormFields/CustomSeparator.js +3 -3
- package/build/FormFields/CustomTextArea.js +19 -17
- package/build/FormFields/CustomToggle.js +17 -14
- package/build/FormFields/defaults.js +21 -15
- package/build/index.css +3 -8
- package/build/index.js +148 -133
- package/package.json +1 -1
|
@@ -7,6 +7,7 @@ exports["default"] = void 0;
|
|
|
7
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
8
|
var _defaults = require("./defaults");
|
|
9
9
|
var _react = require("react");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
12
|
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
12
13
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
@@ -25,6 +26,8 @@ var CustomCheckboxGroup = function CustomCheckboxGroup(_ref) {
|
|
|
25
26
|
options = _ref$options === void 0 ? [] : _ref$options,
|
|
26
27
|
_ref$required = _ref.required,
|
|
27
28
|
required = _ref$required === void 0 ? false : _ref$required,
|
|
29
|
+
_ref$grouped = _ref.grouped,
|
|
30
|
+
grouped = _ref$grouped === void 0 ? false : _ref$grouped,
|
|
28
31
|
error = _ref.error,
|
|
29
32
|
_ref$tooltip = _ref.tooltip,
|
|
30
33
|
tooltip = _ref$tooltip === void 0 ? "" : _ref$tooltip,
|
|
@@ -45,37 +48,75 @@ var CustomCheckboxGroup = function CustomCheckboxGroup(_ref) {
|
|
|
45
48
|
onChange === null || onChange === void 0 || onChange(name, data);
|
|
46
49
|
onOptionChange === null || onOptionChange === void 0 || onOptionChange(data);
|
|
47
50
|
}, [onChange, onOptionChange, name, checked]);
|
|
48
|
-
return /*#__PURE__*/
|
|
51
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
49
52
|
className: "ufg-field-group",
|
|
50
53
|
id: name,
|
|
51
|
-
style: mainDivStyle
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
54
|
+
style: mainDivStyle,
|
|
55
|
+
children: [(0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
56
|
+
className: "ufg-checkbox-group",
|
|
57
|
+
children: options.map(function (opt, idx) {
|
|
58
|
+
var _opt$options;
|
|
59
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
60
|
+
children: [idx > 0 && grouped && /*#__PURE__*/(0, _jsxRuntime.jsx)("hr", {
|
|
61
|
+
style: {
|
|
62
|
+
margin: '0.5rem 0 0.75rem',
|
|
63
|
+
color: '#888888'
|
|
64
|
+
}
|
|
65
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
66
|
+
className: "ufg-checkbox-item",
|
|
67
|
+
style: inputStyle,
|
|
68
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
|
|
69
|
+
id: "".concat(name, "-").concat(idx),
|
|
70
|
+
type: "checkbox",
|
|
71
|
+
checked: checked.includes(opt.name || opt.value),
|
|
72
|
+
disabled: !!opt.disabled,
|
|
73
|
+
style: opt.inputStyle,
|
|
74
|
+
onChange: function onChange(e) {
|
|
75
|
+
return handleChange(opt.name || opt.value, e.target.checked);
|
|
76
|
+
}
|
|
77
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
|
|
78
|
+
htmlFor: "".concat(name, "-").concat(idx),
|
|
79
|
+
style: opt.labelStyle,
|
|
80
|
+
children: opt.label || opt.text
|
|
81
|
+
})]
|
|
82
|
+
}, opt.name || opt.value), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
83
|
+
style: opt.options ? {
|
|
84
|
+
paddingLeft: '1.25rem'
|
|
85
|
+
} : undefined,
|
|
86
|
+
children: (_opt$options = opt.options) === null || _opt$options === void 0 ? void 0 : _opt$options.map(function (subopt, subidx) {
|
|
87
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
88
|
+
className: "ufg-checkbox-item",
|
|
89
|
+
style: inputStyle,
|
|
90
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
|
|
91
|
+
id: "".concat(name, "-").concat(idx, "-").concat(subidx),
|
|
92
|
+
type: "checkbox",
|
|
93
|
+
checked: checked.includes(subopt.name || subopt.value),
|
|
94
|
+
disabled: !!subopt.disabled,
|
|
95
|
+
style: subopt.inputStyle,
|
|
96
|
+
onChange: function onChange(e) {
|
|
97
|
+
return handleChange(subopt.name || subopt.value, e.target.checked);
|
|
98
|
+
}
|
|
99
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
|
|
100
|
+
htmlFor: "".concat(name, "-").concat(idx, "-").concat(subidx),
|
|
101
|
+
style: subopt.labelStyle,
|
|
102
|
+
children: subopt.label || subopt.text
|
|
103
|
+
})]
|
|
104
|
+
}, subopt.name || subopt.value);
|
|
105
|
+
})
|
|
106
|
+
})]
|
|
107
|
+
}, "".concat(name, "-").concat(idx));
|
|
108
|
+
})
|
|
109
|
+
}), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
|
|
110
|
+
});
|
|
71
111
|
};
|
|
72
112
|
CustomCheckboxGroup.propTypes = {
|
|
73
113
|
onChange: _propTypes["default"].func.isRequired,
|
|
74
114
|
onOptionChange: _propTypes["default"].func,
|
|
75
115
|
name: _propTypes["default"].string.isRequired,
|
|
76
|
-
displayName: _propTypes["default"].string,
|
|
116
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
77
117
|
options: _propTypes["default"].array.isRequired,
|
|
78
118
|
required: _propTypes["default"].bool,
|
|
119
|
+
grouped: _propTypes["default"].bool,
|
|
79
120
|
error: _propTypes["default"].string,
|
|
80
121
|
tooltip: _propTypes["default"].string,
|
|
81
122
|
mainDivStyle: _propTypes["default"].object,
|
|
@@ -4,37 +4,39 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
|
-
var _react = _interopRequireDefault(require("react"));
|
|
8
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
8
|
var _defaults = require("./defaults");
|
|
9
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
10
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
11
|
/**
|
|
12
12
|
* Pass-through wrapper for arbitrary React nodes.
|
|
13
13
|
* No onChange / value — purely structural.
|
|
14
|
-
*/
|
|
15
|
-
var CustomComponent = function CustomComponent(_ref) {
|
|
14
|
+
*/var CustomComponent = function CustomComponent(_ref) {
|
|
16
15
|
var name = _ref.name,
|
|
17
16
|
displayName = _ref.displayName,
|
|
18
17
|
component = _ref.component,
|
|
19
18
|
_ref$required = _ref.required,
|
|
20
19
|
required = _ref$required === void 0 ? false : _ref$required,
|
|
20
|
+
error = _ref.error,
|
|
21
21
|
_ref$mainDivStyle = _ref.mainDivStyle,
|
|
22
22
|
mainDivStyle = _ref$mainDivStyle === void 0 ? {} : _ref$mainDivStyle,
|
|
23
23
|
_ref$labelStyle = _ref.labelStyle,
|
|
24
24
|
labelStyle = _ref$labelStyle === void 0 ? {} : _ref$labelStyle,
|
|
25
25
|
_ref$spanStyle = _ref.spanStyle,
|
|
26
26
|
spanStyle = _ref$spanStyle === void 0 ? {} : _ref$spanStyle;
|
|
27
|
-
return /*#__PURE__*/
|
|
27
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
28
28
|
className: "ufg-component-wrapper",
|
|
29
29
|
id: name,
|
|
30
|
-
style: mainDivStyle
|
|
31
|
-
|
|
30
|
+
style: mainDivStyle,
|
|
31
|
+
children: [displayName && (0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle), component, (0, _defaults.errorJsx)(error)]
|
|
32
|
+
});
|
|
32
33
|
};
|
|
33
34
|
CustomComponent.propTypes = {
|
|
34
35
|
name: _propTypes["default"].string,
|
|
35
|
-
displayName: _propTypes["default"].string,
|
|
36
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
36
37
|
component: _propTypes["default"].node,
|
|
37
38
|
required: _propTypes["default"].bool,
|
|
39
|
+
error: _propTypes["default"].string,
|
|
38
40
|
mainDivStyle: _propTypes["default"].object,
|
|
39
41
|
labelStyle: _propTypes["default"].object,
|
|
40
42
|
spanStyle: _propTypes["default"].object
|
|
@@ -8,9 +8,14 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _reactDatetime = _interopRequireDefault(require("react-datetime"));
|
|
10
10
|
var _defaults = require("./defaults");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
12
|
-
function
|
|
13
|
-
|
|
13
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
14
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
17
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
18
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /**
|
|
14
19
|
* Date / datetime / time picker.
|
|
15
20
|
* onChange(date, name) — keeps the existing signature that parent onChangeTime expects.
|
|
16
21
|
* Set dateFormat=false + timeFormat="HH:mm" for time-only mode.
|
|
@@ -51,36 +56,37 @@ var CustomDatePicker = function CustomDatePicker(_ref) {
|
|
|
51
56
|
var handleChange = (0, _react.useCallback)(function (date) {
|
|
52
57
|
return onChange === null || onChange === void 0 ? void 0 : onChange(date, name);
|
|
53
58
|
}, [onChange, name]);
|
|
54
|
-
return /*#__PURE__*/
|
|
59
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
55
60
|
className: "ufg-field-group",
|
|
56
61
|
id: "form-dateDiv-".concat(name),
|
|
57
|
-
style: mainDivStyle
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
62
|
+
style: mainDivStyle,
|
|
63
|
+
children: [(0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle, showHelp, helpText), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactDatetime["default"], {
|
|
64
|
+
id: "form-date-".concat(name),
|
|
65
|
+
value: value,
|
|
66
|
+
dateFormat: dateFormat,
|
|
67
|
+
timeFormat: timeFormat,
|
|
68
|
+
input: true,
|
|
69
|
+
disabled: disabled,
|
|
70
|
+
required: required,
|
|
71
|
+
style: inputStyle,
|
|
72
|
+
renderInput: function renderInput(props, openCalendar) {
|
|
73
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("input", _objectSpread(_objectSpread({
|
|
74
|
+
readOnly: true
|
|
75
|
+
}, props), {}, {
|
|
76
|
+
placeholder: placeholder,
|
|
77
|
+
onClick: !disabled ? openCalendar : undefined,
|
|
78
|
+
disabled: disabled,
|
|
79
|
+
className: "ufg-input".concat(error ? " error" : "")
|
|
80
|
+
}));
|
|
81
|
+
},
|
|
82
|
+
onChange: handleChange
|
|
83
|
+
}), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
|
|
84
|
+
});
|
|
79
85
|
};
|
|
80
86
|
CustomDatePicker.propTypes = {
|
|
81
87
|
onChange: _propTypes["default"].func.isRequired,
|
|
82
88
|
name: _propTypes["default"].string.isRequired,
|
|
83
|
-
displayName: _propTypes["default"].string,
|
|
89
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
84
90
|
value: _propTypes["default"].any,
|
|
85
91
|
disabled: _propTypes["default"].bool,
|
|
86
92
|
required: _propTypes["default"].bool,
|
|
@@ -7,6 +7,7 @@ exports["default"] = void 0;
|
|
|
7
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _defaults = require("./defaults");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
12
|
var CustomDropdown = function CustomDropdown(_ref) {
|
|
12
13
|
var onChange = _ref.onChange,
|
|
@@ -68,33 +69,36 @@ var CustomDropdown = function CustomDropdown(_ref) {
|
|
|
68
69
|
});
|
|
69
70
|
onChange === null || onChange === void 0 || onChange(name, selected, fulls);
|
|
70
71
|
}, [onChange, name, options]);
|
|
71
|
-
return /*#__PURE__*/
|
|
72
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
72
73
|
className: "ufg-field-group",
|
|
73
74
|
id: name,
|
|
74
|
-
style: mainDivStyle
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
75
|
+
style: mainDivStyle,
|
|
76
|
+
children: [(0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle, showHelp, helpText), /*#__PURE__*/(0, _jsxRuntime.jsxs)("select", {
|
|
77
|
+
id: "form-input-".concat(name),
|
|
78
|
+
name: name,
|
|
79
|
+
value: value,
|
|
80
|
+
disabled: disabled,
|
|
81
|
+
multiple: multiple,
|
|
82
|
+
className: "ufg-select".concat(error ? " error" : ""),
|
|
83
|
+
style: inputStyle,
|
|
84
|
+
onChange: multiple ? handleMultiChange : handleChange,
|
|
85
|
+
children: [!multiple && /*#__PURE__*/(0, _jsxRuntime.jsx)("option", {
|
|
86
|
+
value: "",
|
|
87
|
+
children: placeholder || "Select..."
|
|
88
|
+
}), (options || []).map(function (opt, idx) {
|
|
89
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("option", {
|
|
90
|
+
value: resolveValue(opt),
|
|
91
|
+
children: resolveLabel(opt)
|
|
92
|
+
}, idx);
|
|
93
|
+
})]
|
|
94
|
+
}), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
|
|
95
|
+
});
|
|
92
96
|
};
|
|
93
97
|
CustomDropdown.propTypes = {
|
|
94
98
|
onChange: _propTypes["default"].func.isRequired,
|
|
95
99
|
name: _propTypes["default"].string.isRequired,
|
|
96
|
-
displayName: _propTypes["default"].string,
|
|
97
|
-
value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].array]),
|
|
100
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
101
|
+
value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number, _propTypes["default"].array]),
|
|
98
102
|
options: _propTypes["default"].array,
|
|
99
103
|
placeholder: _propTypes["default"].string,
|
|
100
104
|
disabled: _propTypes["default"].bool,
|
|
@@ -7,6 +7,7 @@ exports["default"] = void 0;
|
|
|
7
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _defaults = require("./defaults");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
12
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
12
13
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
@@ -46,27 +47,28 @@ var CustomInput = function CustomInput(_ref) {
|
|
|
46
47
|
var handleChange = (0, _react.useCallback)(function (e) {
|
|
47
48
|
return onChange === null || onChange === void 0 ? void 0 : onChange(name, e.target.value);
|
|
48
49
|
}, [onChange, name]);
|
|
49
|
-
return /*#__PURE__*/
|
|
50
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
50
51
|
className: "ufg-field-group",
|
|
51
52
|
id: name,
|
|
52
|
-
style: mainDivStyle
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
53
|
+
style: mainDivStyle,
|
|
54
|
+
children: [(0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle, showHelp, helpText), /*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
|
|
55
|
+
id: "form-input-".concat(name),
|
|
56
|
+
type: type,
|
|
57
|
+
name: name,
|
|
58
|
+
value: value,
|
|
59
|
+
placeholder: placeholder !== null && placeholder !== void 0 ? placeholder : displayName,
|
|
60
|
+
disabled: disabled,
|
|
61
|
+
required: required,
|
|
62
|
+
className: "ufg-input".concat(error ? " error" : "").concat(className ? " ".concat(className) : ""),
|
|
63
|
+
style: inputStyle,
|
|
64
|
+
onChange: handleChange
|
|
65
|
+
}), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
|
|
66
|
+
});
|
|
65
67
|
};
|
|
66
68
|
CustomInput.propTypes = _defineProperty(_defineProperty({
|
|
67
69
|
onChange: _propTypes["default"].func.isRequired,
|
|
68
70
|
name: _propTypes["default"].string.isRequired,
|
|
69
|
-
displayName: _propTypes["default"].string,
|
|
71
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
70
72
|
value: _propTypes["default"].string,
|
|
71
73
|
type: _propTypes["default"].string,
|
|
72
74
|
disabled: _propTypes["default"].bool,
|
|
@@ -8,6 +8,7 @@ exports["default"] = void 0;
|
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _react = require("react");
|
|
10
10
|
var _defaults = require("./defaults");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
12
13
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
14
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -80,53 +81,56 @@ var CustomJson = function CustomJson(_ref) {
|
|
|
80
81
|
var isMulti = mode === "multiple";
|
|
81
82
|
var ph = placeholder || (isMulti ? PLACEHOLDERS.multiple : PLACEHOLDERS.single)[datatype] || '{"key": "value"}';
|
|
82
83
|
var displayValue = typeof value === "string" ? value : value !== undefined && value !== "" ? JSON.stringify(value, null, 2) : "";
|
|
83
|
-
return /*#__PURE__*/
|
|
84
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
84
85
|
className: "ufg-field-group",
|
|
85
86
|
id: name,
|
|
86
|
-
style: mainDivStyle
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
87
|
+
style: mainDivStyle,
|
|
88
|
+
children: [(0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle, showHelp, helpText), allowModeSwitch && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
89
|
+
className: "ufg-json-mode-selector",
|
|
90
|
+
children: ["single", "multiple"].map(function (m) {
|
|
91
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("label", {
|
|
92
|
+
style: {
|
|
93
|
+
marginRight: "1rem"
|
|
94
|
+
},
|
|
95
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
|
|
96
|
+
type: "radio",
|
|
97
|
+
name: "".concat(name, "_mode"),
|
|
98
|
+
value: m,
|
|
99
|
+
checked: mode === m,
|
|
100
|
+
onChange: function onChange() {
|
|
101
|
+
return setMode(m);
|
|
102
|
+
}
|
|
103
|
+
}), " ", m.charAt(0).toUpperCase() + m.slice(1)]
|
|
104
|
+
}, m);
|
|
105
|
+
})
|
|
106
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("textarea", {
|
|
107
|
+
className: "ufg-textarea ufg-json-textarea".concat(error ? " error" : ""),
|
|
108
|
+
name: name,
|
|
109
|
+
value: displayValue,
|
|
110
|
+
placeholder: ph,
|
|
111
|
+
disabled: disabled,
|
|
112
|
+
rows: rows || (isMulti ? 12 : 8),
|
|
113
|
+
style: _objectSpread({
|
|
114
|
+
fontFamily: "monospace",
|
|
115
|
+
fontSize: "0.9em"
|
|
116
|
+
}, inputStyle),
|
|
117
|
+
onChange: function onChange(e) {
|
|
118
|
+
return _onChange === null || _onChange === void 0 ? void 0 : _onChange(name, e.target.value, isMulti);
|
|
119
|
+
},
|
|
120
|
+
onBlur: function onBlur(e) {
|
|
121
|
+
if (e.target.value.trim()) onValidate === null || onValidate === void 0 || onValidate(name, e.target.value, isMulti);
|
|
94
122
|
}
|
|
95
|
-
}, /*#__PURE__*/
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
onChange: function onChange() {
|
|
101
|
-
return setMode(m);
|
|
102
|
-
}
|
|
103
|
-
}), " ", m.charAt(0).toUpperCase() + m.slice(1));
|
|
104
|
-
})), /*#__PURE__*/React.createElement("textarea", {
|
|
105
|
-
className: "ufg-textarea ufg-json-textarea".concat(error ? " error" : ""),
|
|
106
|
-
name: name,
|
|
107
|
-
value: displayValue,
|
|
108
|
-
placeholder: ph,
|
|
109
|
-
disabled: disabled,
|
|
110
|
-
rows: rows || (isMulti ? 12 : 8),
|
|
111
|
-
style: _objectSpread({
|
|
112
|
-
fontFamily: "monospace",
|
|
113
|
-
fontSize: "0.9em"
|
|
114
|
-
}, inputStyle),
|
|
115
|
-
onChange: function onChange(e) {
|
|
116
|
-
return _onChange === null || _onChange === void 0 ? void 0 : _onChange(name, e.target.value, isMulti);
|
|
117
|
-
},
|
|
118
|
-
onBlur: function onBlur(e) {
|
|
119
|
-
if (e.target.value.trim()) onValidate === null || onValidate === void 0 || onValidate(name, e.target.value, isMulti);
|
|
120
|
-
}
|
|
121
|
-
}), isMulti && /*#__PURE__*/React.createElement("div", {
|
|
122
|
-
className: "ufg-json-hint"
|
|
123
|
-
}, "Enter a ", datatype, " array: ", ph), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle));
|
|
123
|
+
}), isMulti && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
124
|
+
className: "ufg-json-hint",
|
|
125
|
+
children: ["Enter a ", datatype, " array: ", ph]
|
|
126
|
+
}), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
|
|
127
|
+
});
|
|
124
128
|
};
|
|
125
129
|
CustomJson.propTypes = {
|
|
126
130
|
onChange: _propTypes["default"].func.isRequired,
|
|
127
131
|
onValidate: _propTypes["default"].func,
|
|
128
132
|
name: _propTypes["default"].string.isRequired,
|
|
129
|
-
displayName: _propTypes["default"].string,
|
|
133
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
130
134
|
value: _propTypes["default"].any,
|
|
131
135
|
disabled: _propTypes["default"].bool,
|
|
132
136
|
required: _propTypes["default"].bool,
|
|
@@ -7,26 +7,27 @@ exports["default"] = void 0;
|
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _defaults = require("./defaults");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
12
|
/**
|
|
12
13
|
* Static label — no onChange / value / validation.
|
|
13
|
-
*/
|
|
14
|
-
var CustomLabel = function CustomLabel(_ref) {
|
|
14
|
+
*/var CustomLabel = function CustomLabel(_ref) {
|
|
15
15
|
var name = _ref.name,
|
|
16
16
|
displayName = _ref.displayName,
|
|
17
17
|
_ref$mainDivStyle = _ref.mainDivStyle,
|
|
18
18
|
mainDivStyle = _ref$mainDivStyle === void 0 ? {} : _ref$mainDivStyle,
|
|
19
19
|
_ref$labelStyle = _ref.labelStyle,
|
|
20
20
|
labelStyle = _ref$labelStyle === void 0 ? {} : _ref$labelStyle;
|
|
21
|
-
return /*#__PURE__*/
|
|
21
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
22
22
|
className: "ufg-field-group",
|
|
23
23
|
id: name,
|
|
24
|
-
style: mainDivStyle
|
|
25
|
-
|
|
24
|
+
style: mainDivStyle,
|
|
25
|
+
children: (0, _defaults.labelJsx)(name, labelStyle, displayName)
|
|
26
|
+
});
|
|
26
27
|
};
|
|
27
28
|
CustomLabel.propTypes = {
|
|
28
29
|
name: _propTypes["default"].string.isRequired,
|
|
29
|
-
displayName: _propTypes["default"].string,
|
|
30
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
30
31
|
mainDivStyle: _propTypes["default"].object,
|
|
31
32
|
labelStyle: _propTypes["default"].object
|
|
32
33
|
};
|
|
@@ -8,12 +8,12 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _semanticUiReact = require("semantic-ui-react");
|
|
10
10
|
var _defaults = require("./defaults");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
12
13
|
/**
|
|
13
14
|
* Multi-select dropdown. Semantic UI Dropdown is kept — native <select multiple>
|
|
14
15
|
* provides significantly inferior UX. onChange is normalised to (name, value[]).
|
|
15
|
-
*/
|
|
16
|
-
var CustomMultiDropdown = function CustomMultiDropdown(_ref) {
|
|
16
|
+
*/var CustomMultiDropdown = function CustomMultiDropdown(_ref) {
|
|
17
17
|
var onChange = _ref.onChange,
|
|
18
18
|
name = _ref.name,
|
|
19
19
|
displayName = _ref.displayName,
|
|
@@ -46,30 +46,31 @@ var CustomMultiDropdown = function CustomMultiDropdown(_ref) {
|
|
|
46
46
|
var handleChange = (0, _react.useCallback)(function (_, data) {
|
|
47
47
|
return onChange === null || onChange === void 0 ? void 0 : onChange(name, data.value);
|
|
48
48
|
}, [onChange, name]);
|
|
49
|
-
return /*#__PURE__*/
|
|
49
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
50
50
|
className: "ufg-field-group",
|
|
51
51
|
id: name,
|
|
52
|
-
style: mainDivStyle
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
52
|
+
style: mainDivStyle,
|
|
53
|
+
children: [(0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle, showHelp, helpText), /*#__PURE__*/(0, _jsxRuntime.jsx)(_semanticUiReact.Dropdown, {
|
|
54
|
+
id: "form-input-".concat(name),
|
|
55
|
+
name: name,
|
|
56
|
+
style: inputStyle,
|
|
57
|
+
placeholder: placeholder || "Select ".concat(displayName || name),
|
|
58
|
+
fluid: true,
|
|
59
|
+
multiple: true,
|
|
60
|
+
selection: true,
|
|
61
|
+
search: true,
|
|
62
|
+
value: value,
|
|
63
|
+
options: options,
|
|
64
|
+
onChange: handleChange,
|
|
65
|
+
disabled: disabled,
|
|
66
|
+
className: error ? "error" : undefined
|
|
67
|
+
}), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
|
|
68
|
+
});
|
|
68
69
|
};
|
|
69
70
|
CustomMultiDropdown.propTypes = {
|
|
70
71
|
onChange: _propTypes["default"].func.isRequired,
|
|
71
72
|
name: _propTypes["default"].string.isRequired,
|
|
72
|
-
displayName: _propTypes["default"].string,
|
|
73
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
73
74
|
value: _propTypes["default"].array,
|
|
74
75
|
options: _propTypes["default"].array.isRequired,
|
|
75
76
|
placeholder: _propTypes["default"].string,
|
|
@@ -7,6 +7,7 @@ exports["default"] = void 0;
|
|
|
7
7
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _defaults = require("./defaults");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
11
12
|
var CustomNumberInput = function CustomNumberInput(_ref) {
|
|
12
13
|
var onChange = _ref.onChange,
|
|
@@ -42,30 +43,31 @@ var CustomNumberInput = function CustomNumberInput(_ref) {
|
|
|
42
43
|
var handleChange = (0, _react.useCallback)(function (e) {
|
|
43
44
|
return onChange === null || onChange === void 0 ? void 0 : onChange(name, Number(e.target.value));
|
|
44
45
|
}, [onChange, name]);
|
|
45
|
-
return /*#__PURE__*/
|
|
46
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
46
47
|
className: "ufg-field-group",
|
|
47
48
|
id: name,
|
|
48
|
-
style: mainDivStyle
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
49
|
+
style: mainDivStyle,
|
|
50
|
+
children: [(0, _defaults.labelJsx)(name, labelStyle, displayName, required, spanStyle, showHelp, helpText), /*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
|
|
51
|
+
id: "form-input-".concat(name),
|
|
52
|
+
type: "number",
|
|
53
|
+
name: name,
|
|
54
|
+
value: value,
|
|
55
|
+
placeholder: placeholder !== null && placeholder !== void 0 ? placeholder : displayName,
|
|
56
|
+
disabled: disabled,
|
|
57
|
+
required: required,
|
|
58
|
+
min: min,
|
|
59
|
+
max: max,
|
|
60
|
+
step: step,
|
|
61
|
+
className: "ufg-input".concat(error ? " error" : ""),
|
|
62
|
+
style: inputStyle,
|
|
63
|
+
onChange: handleChange
|
|
64
|
+
}), (0, _defaults.errorJsx)(error), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
|
|
65
|
+
});
|
|
64
66
|
};
|
|
65
67
|
CustomNumberInput.propTypes = {
|
|
66
68
|
onChange: _propTypes["default"].func.isRequired,
|
|
67
69
|
name: _propTypes["default"].string.isRequired,
|
|
68
|
-
displayName: _propTypes["default"].string,
|
|
70
|
+
displayName: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
69
71
|
value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
|
|
70
72
|
disabled: _propTypes["default"].bool,
|
|
71
73
|
required: _propTypes["default"].bool,
|