@insticc/genericform 2.1.1 → 2.1.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.
@@ -65,6 +65,8 @@ var CustomCheckboxGroup = function CustomCheckboxGroup(_ref2) {
65
65
  defaultCollapsed = _ref2$defaultCollapse === void 0 ? true : _ref2$defaultCollapse,
66
66
  _ref2$enableParent = _ref2.enableParent,
67
67
  enableParent = _ref2$enableParent === void 0 ? false : _ref2$enableParent,
68
+ _ref2$parentCheckAll = _ref2.parentCheckAll,
69
+ parentCheckAll = _ref2$parentCheckAll === void 0 ? true : _ref2$parentCheckAll,
68
70
  error = _ref2.error,
69
71
  _ref2$tooltip = _ref2.tooltip,
70
72
  tooltip = _ref2$tooltip === void 0 ? "" : _ref2$tooltip,
@@ -119,7 +121,7 @@ var CustomCheckboxGroup = function CustomCheckboxGroup(_ref2) {
119
121
  var handleParentChange = (0, _react.useCallback)(function (opt, state) {
120
122
  var parentVal = opt.name || opt.value;
121
123
  var children = getChildValues(opt);
122
- var data = state ? _toConsumableArray(new Set([].concat(_toConsumableArray(checked), [parentVal]))) : checked.filter(function (v) {
124
+ var data = state ? _toConsumableArray(new Set(parentCheckAll ? [].concat(_toConsumableArray(checked), [parentVal, children]) : [].concat(_toConsumableArray(checked), [parentVal]))) : checked.filter(function (v) {
123
125
  return v !== parentVal && !children.includes(v);
124
126
  });
125
127
  onChange === null || onChange === void 0 || onChange(name, data);
@@ -244,6 +246,7 @@ CustomCheckboxGroup.propTypes = {
244
246
  collapsible: _propTypes["default"].bool,
245
247
  defaultCollapsed: _propTypes["default"].bool,
246
248
  enableParent: _propTypes["default"].bool,
249
+ parentCheckAll: _propTypes["default"].bool,
247
250
  error: _propTypes["default"].string,
248
251
  tooltip: _propTypes["default"].string,
249
252
  mainDivStyle: _propTypes["default"].object,
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ 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); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+ var _react = require("react");
10
+ var _defaults = require("./defaults");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
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; }
14
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
15
+ 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); }
16
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
17
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
18
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
19
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
20
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
21
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
22
+ var CustomInputAdd = function CustomInputAdd(_ref) {
23
+ var _ref$handleAdd = _ref.handleAdd,
24
+ handleAdd = _ref$handleAdd === void 0 ? function () {} : _ref$handleAdd,
25
+ _ref$addText = _ref.addText,
26
+ addText = _ref$addText === void 0 ? null : _ref$addText,
27
+ name = _ref.name,
28
+ label = _ref.label,
29
+ _ref$value = _ref.value,
30
+ value = _ref$value === void 0 ? "" : _ref$value,
31
+ _ref$type = _ref.type,
32
+ type = _ref$type === void 0 ? "text" : _ref$type,
33
+ _ref$disabled = _ref.disabled,
34
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
35
+ placeholder = _ref.placeholder,
36
+ error = _ref.error,
37
+ _ref$tooltip = _ref.tooltip,
38
+ tooltip = _ref$tooltip === void 0 ? "" : _ref$tooltip,
39
+ _ref$showHelp = _ref.showHelp,
40
+ showHelp = _ref$showHelp === void 0 ? false : _ref$showHelp,
41
+ _ref$helpText = _ref.helpText,
42
+ helpText = _ref$helpText === void 0 ? "" : _ref$helpText,
43
+ className = _ref.className,
44
+ _ref$mainDivStyle = _ref.mainDivStyle,
45
+ mainDivStyle = _ref$mainDivStyle === void 0 ? {} : _ref$mainDivStyle,
46
+ _ref$labelStyle = _ref.labelStyle,
47
+ labelStyle = _ref$labelStyle === void 0 ? {} : _ref$labelStyle,
48
+ _ref$spanStyle = _ref.spanStyle,
49
+ spanStyle = _ref$spanStyle === void 0 ? {} : _ref$spanStyle,
50
+ _ref$inputStyle = _ref.inputStyle,
51
+ inputStyle = _ref$inputStyle === void 0 ? {} : _ref$inputStyle,
52
+ _ref$tooltipStyle = _ref.tooltipStyle,
53
+ tooltipStyle = _ref$tooltipStyle === void 0 ? {} : _ref$tooltipStyle;
54
+ var _useState = (0, _react.useState)(value),
55
+ _useState2 = _slicedToArray(_useState, 2),
56
+ inputValue = _useState2[0],
57
+ setInputValue = _useState2[1];
58
+ var onAdd = function onAdd() {
59
+ if (!inputValue.trim()) return;
60
+ handleAdd === null || handleAdd === void 0 || handleAdd(inputValue);
61
+ setInputValue('');
62
+ };
63
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
64
+ className: "ufg-field-group",
65
+ id: name,
66
+ style: mainDivStyle,
67
+ children: [(0, _defaults.labelJsx)({
68
+ name: name,
69
+ labelStyle: labelStyle,
70
+ label: label,
71
+ spanStyle: spanStyle,
72
+ showHelp: showHelp,
73
+ helpText: helpText
74
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
75
+ className: "ufg-field-group",
76
+ style: {
77
+ flexDirection: 'row'
78
+ },
79
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
80
+ id: "form-input-".concat(name),
81
+ type: type,
82
+ name: name,
83
+ value: inputValue,
84
+ placeholder: placeholder !== null && placeholder !== void 0 ? placeholder : label,
85
+ disabled: disabled,
86
+ className: "ufg-input".concat(error ? " error" : "").concat(className ? " ".concat(className) : ""),
87
+ style: inputStyle,
88
+ onChange: function onChange(e) {
89
+ return setInputValue(e.target.value);
90
+ },
91
+ onKeyDown: function onKeyDown(e) {
92
+ return e.key === 'Enter' && onAdd();
93
+ }
94
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
95
+ type: "button",
96
+ className: "ufg-button ufg-button-primary",
97
+ disabled: !inputValue.trim(),
98
+ onClick: onAdd,
99
+ children: addText || 'Add'
100
+ })]
101
+ }), (0, _defaults.tooltipJsx)(tooltip, tooltipStyle)]
102
+ });
103
+ };
104
+ CustomInputAdd.propTypes = _defineProperty(_defineProperty({
105
+ handleAdd: _propTypes["default"].func.isRequired,
106
+ addText: _propTypes["default"].string,
107
+ name: _propTypes["default"].string.isRequired,
108
+ label: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
109
+ value: _propTypes["default"].string,
110
+ type: _propTypes["default"].string,
111
+ disabled: _propTypes["default"].bool,
112
+ placeholder: _propTypes["default"].string,
113
+ error: _propTypes["default"].string,
114
+ tooltip: _propTypes["default"].string,
115
+ showHelp: _propTypes["default"].bool,
116
+ helpText: _propTypes["default"].string,
117
+ className: _propTypes["default"].string,
118
+ inputStyle: _propTypes["default"].object,
119
+ mainDivStyle: _propTypes["default"].object,
120
+ labelStyle: _propTypes["default"].object,
121
+ spanStyle: _propTypes["default"].object
122
+ }, "inputStyle", _propTypes["default"].object), "tooltipStyle", _propTypes["default"].object);
123
+ var _default = exports["default"] = CustomInputAdd;
package/build/index.js CHANGED
@@ -51,6 +51,12 @@ Object.defineProperty(exports, "CustomInput", {
51
51
  return _CustomInput["default"];
52
52
  }
53
53
  });
54
+ Object.defineProperty(exports, "CustomInputAdd", {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _CustomInputAdd["default"];
58
+ }
59
+ });
54
60
  Object.defineProperty(exports, "CustomJson", {
55
61
  enumerable: true,
56
62
  get: function get() {
@@ -117,6 +123,7 @@ var _CustomDatePicker = _interopRequireDefault(require("./FormFields/CustomDateP
117
123
  var _CustomDropdown = _interopRequireDefault(require("./FormFields/CustomDropdown"));
118
124
  var _CustomFileInput = _interopRequireDefault(require("./FormFields/CustomFileInput"));
119
125
  var _CustomInput = _interopRequireDefault(require("./FormFields/CustomInput"));
126
+ var _CustomInputAdd = _interopRequireDefault(require("./FormFields/CustomInputAdd"));
120
127
  var _CustomJson = _interopRequireDefault(require("./FormFields/CustomJson"));
121
128
  var _CustomLabel = _interopRequireDefault(require("./FormFields/CustomLabel"));
122
129
  var _CustomMobilePhone = _interopRequireDefault(require("./FormFields/CustomMobilePhone"));
@@ -742,6 +749,13 @@ var GenericForm = function GenericForm(_ref) {
742
749
  accept: field.accept,
743
750
  onChange: fieldHandler(field)
744
751
  }), field.name);
752
+ case 'inputAdd':
753
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_CustomInputAdd["default"], _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, cp), sp), fp), {}, {
754
+ value: value,
755
+ handleAdd: field.handleAdd,
756
+ addText: field.addText,
757
+ addStyle: field.addStyle
758
+ }), field.name);
745
759
  default:
746
760
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_CustomInput["default"], _objectSpread(_objectSpread(_objectSpread(_objectSpread({
747
761
  type: field.type
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@insticc/genericform",
3
- "version": "2.1.1",
3
+ "version": "2.1.2",
4
4
  "description": "A generic form with a comprehensive set of field types, validation, and external state management",
5
5
  "main": "build/index.js",
6
6
  "scripts": {