intelicoreact 0.1.20 → 0.1.23

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.
Files changed (27) hide show
  1. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +6 -4
  2. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.stories.js +12 -1
  3. package/dist/Atomic/FormElements/CheckboxesLine/partial/AnyOuterClass.scss +5 -0
  4. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +7 -1
  5. package/dist/Atomic/FormElements/RangeList/RangeList.js +158 -250
  6. package/dist/Atomic/FormElements/RangeList/RangeList.scss +25 -0
  7. package/dist/Atomic/FormElements/RangeList/RangeList.stories.js +35 -40
  8. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +54 -0
  9. package/dist/Atomic/FormElements/RangeList/partial/temp.js +150 -0
  10. package/dist/Atomic/FormElements/Switcher/Switcher.stories.js +11 -3
  11. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.stories.js +8 -1
  12. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.stories.js +11 -3
  13. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +69 -0
  14. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +166 -0
  15. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +89 -0
  16. package/dist/Functions/useFormTools/functions/General.js +158 -0
  17. package/dist/Functions/useFormTools/functions/RenderFields.js +113 -0
  18. package/dist/Functions/useFormTools/functions/usePrevious.js +19 -0
  19. package/dist/Functions/useFormTools/index.js +759 -0
  20. package/dist/Molecular/SwitcherHide/SwitcherHide.stories.js +11 -3
  21. package/dist/Molecular/SwitcherRadio/SwitcherRadio.stories.js +11 -3
  22. package/dist/Molecular/SwitcherTagsDropdown/SwitcherTagsDropdown.js +7 -3
  23. package/dist/Molecular/SwitcherTagsDropdown/SwitcherTagsDropdown.stories.js +57 -34
  24. package/dist/Molecular/SwitcherTagsDropdown/partial/States.js +158 -0
  25. package/dist/Molecular/SwitcherTextarea/SwitcherTextarea.stories.js +12 -4
  26. package/package.json +2 -2
  27. package/dist/Functions/useFormTools.js +0 -429
@@ -11,6 +11,8 @@ exports.RangeListTemplate = exports.default = void 0;
11
11
 
12
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
13
 
14
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
+
14
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
17
 
16
18
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
@@ -43,39 +45,39 @@ var Template = function Template(args) {
43
45
  var includeOuterStyles = args.includeOuterStyles,
44
46
  restArgs = (0, _objectWithoutProperties2.default)(args, _excluded);
45
47
 
46
- var _useState = (0, _react.useState)([{
47
- from: 1,
48
- to: 2
49
- }, {
50
- from: 5,
51
- to: 7
52
- }, {
53
- from: 8,
54
- to: 9
55
- }]),
48
+ var _useState = (0, _react.useState)(args.initialValues || []),
56
49
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
57
50
  value = _useState2[0],
58
- setValue = _useState2[1]; // { from: 1, to: 2 }, { from: 5, to: 7 }, { from: 8, to: 9 }
59
-
51
+ setValue = _useState2[1];
52
+
53
+ var _useState3 = (0, _react.useState)(''),
54
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
55
+ error = _useState4[0],
56
+ setError = _useState4[1];
57
+
58
+ var addRangeForExample = function addRangeForExample(from, to, currentValues) {
59
+ if (+from < 18) {
60
+ setError('18 is the minimum allowed value');
61
+ return null;
62
+ } else {
63
+ setError('');
64
+ return [].concat((0, _toConsumableArray2.default)(currentValues), [{
65
+ from: from,
66
+ to: to
67
+ }]);
68
+ }
69
+ };
60
70
 
61
71
  return /*#__PURE__*/_react.default.createElement("div", {
62
72
  style: rootStyles
63
73
  }, /*#__PURE__*/_react.default.createElement(_RangeList.default, (0, _extends2.default)({}, restArgs, {
64
74
  className: includeOuterStyles ? 'any-outer-class__range-list' : null,
65
75
  value: value,
66
- onChange: function (_onChange) {
67
- function onChange(_x) {
68
- return _onChange.apply(this, arguments);
69
- }
70
-
71
- onChange.toString = function () {
72
- return _onChange.toString();
73
- };
74
-
75
- return onChange;
76
- }(function (e) {
77
- return onChange(e, 'value');
78
- })
76
+ onChange: function onChange(val) {
77
+ return setValue(val);
78
+ },
79
+ addRange: addRangeForExample,
80
+ error: error
79
81
  })));
80
82
  }; // const { fields, onChange, type, isInteger, id: filterId, label, className } = props;
81
83
 
@@ -83,19 +85,12 @@ var Template = function Template(args) {
83
85
  var RangeListTemplate = Template.bind({});
84
86
  exports.RangeListTemplate = RangeListTemplate;
85
87
  RangeListTemplate.args = {
86
- includeOuterStyles: false // fields: [
87
- // {label: 'From', key: 'from', type: 'number', init: '$'},
88
- // {label: 'To', key: 'to', type: 'number', init: '$'}
89
- // ],
90
- // id: 306
91
- // isActive: true
92
- // isInteger: true
93
- // isLabelBold: true
94
- // isNoLabel: true
95
- // label: "Age"
96
- // listType: "rangeList"
97
- // onChange: ƒ onChange(e)
98
- // type: "switcherRangeList"
99
- // value: (2) [{…}, {…}]
100
-
88
+ // initialValues: [{ from: 1, to: 2 }, { from: 5, to: 7 }, { from: 8, to: 9 }],
89
+ includeOuterStyles: false,
90
+ disabled: false,
91
+ isAddRangeInTop: false,
92
+ isFloatValues: false,
93
+ decimalPlaces: 2,
94
+ defaultErrorText: 'Set a valid range',
95
+ nullValueText: 'Not set'
101
96
  };
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = exports.RangeListCell = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+
14
+ var _fi = require("react-icons/fi");
15
+
16
+ var RC = 'range-list';
17
+
18
+ var RangeListCell = function RangeListCell(_ref) {
19
+ var children = _ref.children,
20
+ idx = _ref.idx,
21
+ className = _ref.className,
22
+ onClick = _ref.onClick;
23
+ return /*#__PURE__*/React.createElement("div", {
24
+ className: (0, _classnames.default)("".concat(RC, "__cell"), className, (0, _defineProperty2.default)({}, "".concat(RC, "__cell-").concat(idx), idx)),
25
+ onClick: onClick
26
+ }, children);
27
+ };
28
+
29
+ exports.RangeListCell = RangeListCell;
30
+
31
+ var RangeListRow = function RangeListRow(_ref2) {
32
+ var from = _ref2.from,
33
+ to = _ref2.to,
34
+ idx = _ref2.idx,
35
+ actionClick = _ref2.actionClick;
36
+ return /*#__PURE__*/React.createElement("div", {
37
+ className: (0, _classnames.default)("".concat(RC, "__row"), "".concat(RC, "__values"), (0, _defineProperty2.default)({}, "".concat(RC, "__values_first-value"), idx === 0))
38
+ }, /*#__PURE__*/React.createElement(RangeListCell, {
39
+ idx: 1,
40
+ className: "".concat(RC, "__cell-value")
41
+ }, from), /*#__PURE__*/React.createElement(RangeListCell, {
42
+ idx: 2,
43
+ className: "".concat(RC, "__cell-value")
44
+ }, to), /*#__PURE__*/React.createElement(RangeListCell, {
45
+ idx: 3,
46
+ className: "".concat(RC, "__cell-action"),
47
+ onClick: function onClick() {
48
+ return actionClick(idx);
49
+ }
50
+ }, /*#__PURE__*/React.createElement(_fi.FiTrash2, null)));
51
+ };
52
+
53
+ var _default = RangeListRow;
54
+ exports.default = _default;
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = addRange;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
14
+ function addRange(inputFrom, inputTo, currentValues, setError) {
15
+ var _getFilter;
16
+
17
+ var rounded = function rounded(val, soft) {
18
+ if (!val) return soft ? '' : 0;
19
+ if (!soft || val.toString().split('.')[1] && val.toString().split('.')[1].length > 2) return Number(val).toFixed(2);
20
+ return val;
21
+ };
22
+
23
+ var removeFiltersDots = function removeFiltersDots(value) {
24
+ if (filterId) return numberFilterWithoutDots(value);
25
+ return value;
26
+ };
27
+
28
+ function getFilter(data) {
29
+ var _data$slice;
30
+
31
+ return data === null || data === void 0 ? void 0 : (_data$slice = data.slice()) === null || _data$slice === void 0 ? void 0 : _data$slice.filter(function (_ref) {
32
+ var from = _ref.from,
33
+ to = _ref.to;
34
+ return !([0, null].includes(from) && [0, null].includes(to));
35
+ });
36
+ }
37
+
38
+ ;
39
+ var from = parseFloat(rounded(inputFrom));
40
+ var to = parseFloat(inputTo);
41
+ if (isNaN(to)) to = '';
42
+
43
+ if (isNaN(from) || isNaN(to)) {
44
+ setError('All fields required');
45
+ return false;
46
+ } else if (to !== '' && to <= from) {
47
+ setError('Set a valid range');
48
+ return false;
49
+ } else if (isNaN(from) || !from && isNaN(to) || from < 0 || !from && to <= 0) {
50
+ setError('Only numbers >=0 are allowed');
51
+ return false;
52
+ } else if (to && to - from < 0.05) {
53
+ setError('range must be more than 0.05');
54
+ return false;
55
+ } // else if (form[2]?.unit === '%') {
56
+ // setError(`${form[2]?.label} max 100`);
57
+ // return false;
58
+ // }
59
+ else if (from > 999999 || !!to && to > 999999) {
60
+ setError('You need to set a smaller number!');
61
+ return false;
62
+ } else if (from === to) {
63
+ setError('You need to set a range');
64
+ return false;
65
+ } else if (!to) {
66
+ setError('Set a valid range');
67
+ return false;
68
+ } else if (!!to && from > to) {
69
+ setError('You need to set a valid range');
70
+ return false;
71
+ } // else if (filterId && label === 'Age' && to > 99) {
72
+ // setError('99 is the maximum allowed value');
73
+ // return false;
74
+ // }
75
+ // else if (filterId && label === 'Age' && from < 18) {
76
+ // setError('18 is the minimum allowed value');
77
+ // return false;
78
+ // }
79
+
80
+
81
+ var duplicate = currentValues === null || currentValues === void 0 ? void 0 : currentValues.filter(function (e) {
82
+ return Number(e[keyFrom]) === from && Number(e[keyTo]) === to;
83
+ });
84
+
85
+ if (duplicate.length) {
86
+ setError('This range was already added');
87
+ return false;
88
+ }
89
+
90
+ var newRanges = [];
91
+ var prevItems = [];
92
+ var postItems = [];
93
+
94
+ var getRangeObject = function getRangeObject(nFrom, nTo) {
95
+ var _ref2;
96
+
97
+ return _ref2 = {}, (0, _defineProperty2.default)(_ref2, keyFrom, parseFloat(nFrom === null || nFrom === void 0 ? void 0 : nFrom.toFixed(3))), (0, _defineProperty2.default)(_ref2, keyTo, nTo.toFixed ? parseFloat(nTo === null || nTo === void 0 ? void 0 : nTo.toFixed(3)) : nTo || ''), _ref2;
98
+ };
99
+
100
+ var _getFilter$reduce = (_getFilter = getFilter(value)) === null || _getFilter === void 0 ? void 0 : _getFilter.reduce(function (res, data) {
101
+ if (data[keyFrom] === from) data[keyFrom] = from + additive;
102
+ if (data[keyTo] === to) data[keyTo] = to - additive;
103
+ if (isNaN(data[keyFrom])) data[keyFrom] = 0;
104
+
105
+ if (data[keyTo] > 0 && from > data[keyTo]) {
106
+ prevItems.push(data);
107
+ } else if (to && data[keyFrom] > to) {
108
+ postItems.push(data);
109
+ } else if (!(from < data[keyFrom] && (!to || data[keyTo] < to))) {
110
+ res.push(data);
111
+ }
112
+
113
+ return res;
114
+ }, []),
115
+ _getFilter$reduce2 = (0, _slicedToArray2.default)(_getFilter$reduce, 2),
116
+ crossFrom = _getFilter$reduce2[0],
117
+ crossTo = _getFilter$reduce2[1];
118
+
119
+ if (crossFrom && crossTo) {
120
+ if (to === crossTo.from) {
121
+ newRanges.push.apply(newRanges, [getRangeObject(crossFrom[keyFrom], from), getRangeObject(to, crossTo[keyTo])]);
122
+ } else {
123
+ newRanges.push.apply(newRanges, [getRangeObject(crossFrom[keyFrom], from), getRangeObject(from + additive, to)]);
124
+
125
+ if (to) {
126
+ newRanges.push(getRangeObject(to + additive, crossTo[keyTo]));
127
+ }
128
+ }
129
+ } else if (crossFrom) {
130
+ if (crossFrom[keyFrom] < from && crossFrom[keyTo] > to) {
131
+ newRanges.push(getRangeObject(crossFrom[keyFrom], from));
132
+
133
+ if (to) {
134
+ newRanges.push.apply(newRanges, [getRangeObject(from + additive, to), getRangeObject(to + additive, crossFrom[keyTo])]);
135
+ } else {
136
+ newRanges.push(getRangeObject(from + additive, ''));
137
+ }
138
+ } else if (crossFrom[keyFrom] > from) {
139
+ newRanges.push.apply(newRanges, [getRangeObject(from, to), getRangeObject(to + additive, crossFrom[keyTo])]);
140
+ } else if (crossFrom && to - from > 1) {
141
+ newRanges.push.apply(newRanges, [getRangeObject(crossFrom[keyFrom], from), getRangeObject(from + additive, to)]);
142
+ } else newRanges.push(getRangeObject(crossFrom[keyFrom], to));
143
+ } else {
144
+ newRanges.push(getRangeObject(from, to));
145
+ }
146
+
147
+ newRanges.unshift.apply(newRanges, prevItems);
148
+ newRanges.push.apply(newRanges, postItems);
149
+ return newRanges;
150
+ }
@@ -13,12 +13,16 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
15
 
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
16
18
  var _react = _interopRequireWildcard(require("react"));
17
19
 
18
20
  var _Switcher = _interopRequireDefault(require("./Switcher"));
19
21
 
20
22
  require("./partial/AnyOuterClass.scss");
21
23
 
24
+ var _excluded = ["includeOuterStyles"];
25
+
22
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
27
 
24
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -31,12 +35,16 @@ var _default = {
31
35
  exports.default = _default;
32
36
 
33
37
  var Template = function Template(args) {
38
+ var includeOuterStyles = args.includeOuterStyles,
39
+ restArgs = (0, _objectWithoutProperties2.default)(args, _excluded);
40
+
34
41
  var _useState = (0, _react.useState)(false),
35
42
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
36
43
  isActive = _useState2[0],
37
44
  setIsActive = _useState2[1];
38
45
 
39
- return /*#__PURE__*/_react.default.createElement(_Switcher.default, (0, _extends2.default)({}, args, {
46
+ return /*#__PURE__*/_react.default.createElement(_Switcher.default, (0, _extends2.default)({}, restArgs, {
47
+ className: includeOuterStyles ? 'any-outer-class__switcher' : null,
40
48
  isActive: isActive,
41
49
  onChange: setIsActive
42
50
  }));
@@ -45,8 +53,8 @@ var Template = function Template(args) {
45
53
  var SwitcherTemplate = Template.bind({});
46
54
  exports.SwitcherTemplate = SwitcherTemplate;
47
55
  SwitcherTemplate.args = {
56
+ includeOuterStyles: false,
48
57
  label: 'Test label',
49
58
  disabled: false,
50
- isLabelBold: true,
51
- className: 'any-outer-class__switcher'
59
+ isLabelBold: true
52
60
  };
@@ -13,10 +13,14 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
15
 
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
16
18
  var _react = _interopRequireWildcard(require("react"));
17
19
 
18
20
  var _TagsDropdown = _interopRequireDefault(require("./TagsDropdown"));
19
21
 
22
+ var _excluded = ["includeOuterStyles"];
23
+
20
24
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
25
 
22
26
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -29,6 +33,8 @@ var _default = {
29
33
  exports.default = _default;
30
34
 
31
35
  var Template = function Template(args) {
36
+ var includeOuterStyles = args.includeOuterStyles,
37
+ restArgs = (0, _objectWithoutProperties2.default)(args, _excluded);
32
38
  var options = args.options;
33
39
 
34
40
  var _useState = (0, _react.useState)([]),
@@ -37,6 +43,7 @@ var Template = function Template(args) {
37
43
  setValue = _useState2[1];
38
44
 
39
45
  return /*#__PURE__*/_react.default.createElement(_TagsDropdown.default, (0, _extends2.default)({}, args, {
46
+ className: "tags-dropdown_arrow-static ".concat(includeOuterStyles ? '' : ''),
40
47
  chosenOptions: value,
41
48
  onChange: setValue
42
49
  }));
@@ -45,7 +52,7 @@ var Template = function Template(args) {
45
52
  var TagsDropdownTemplate = Template.bind({});
46
53
  exports.TagsDropdownTemplate = TagsDropdownTemplate;
47
54
  TagsDropdownTemplate.args = {
48
- className: 'tags-dropdown_arrow-static',
55
+ includeOuterStyles: false,
49
56
  options: [{
50
57
  id: 1,
51
58
  title: 'Tags Dropdown1',
@@ -13,12 +13,16 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
15
 
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
16
18
  var _react = _interopRequireWildcard(require("react"));
17
19
 
18
20
  var _TextSwitcher = _interopRequireDefault(require("./TextSwitcher"));
19
21
 
20
22
  require("./partial/AnyOuterClass.scss");
21
23
 
24
+ var _excluded = ["includeOuterStyles"];
25
+
22
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
27
 
24
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -31,12 +35,16 @@ var _default = {
31
35
  exports.default = _default;
32
36
 
33
37
  var Template = function Template(args) {
38
+ var includeOuterStyles = args.includeOuterStyles,
39
+ restArgs = (0, _objectWithoutProperties2.default)(args, _excluded);
40
+
34
41
  var _useState = (0, _react.useState)(true),
35
42
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
36
43
  isActive = _useState2[0],
37
44
  setIsActive = _useState2[1];
38
45
 
39
- return /*#__PURE__*/_react.default.createElement(_TextSwitcher.default, (0, _extends2.default)({}, args, {
46
+ return /*#__PURE__*/_react.default.createElement(_TextSwitcher.default, (0, _extends2.default)({}, restArgs, {
47
+ className: includeOuterStyles ? 'any-outer-class__text-switcher' : null,
40
48
  isActive: isActive,
41
49
  onChange: setIsActive
42
50
  }));
@@ -45,7 +53,7 @@ var Template = function Template(args) {
45
53
  var TextSwitcherTemplate = Template.bind({});
46
54
  exports.TextSwitcherTemplate = TextSwitcherTemplate;
47
55
  TextSwitcherTemplate.args = {
56
+ includeOuterStyles: false,
48
57
  activeText: 'is',
49
- inactiveText: 'some long text',
50
- className: 'any-outer-class__text-switcher'
58
+ inactiveText: 'some long text'
51
59
  };
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = ArrayWithObjects;
9
+
10
+ var _General2 = _interopRequireDefault(require("../functions/General"));
11
+
12
+ function ArrayWithObjects(_ref) {
13
+ var form = _ref.form,
14
+ setForm = _ref.setForm,
15
+ FormFields = _ref.FormFields;
16
+
17
+ var _General = (0, _General2.default)({
18
+ FormFields: FormFields
19
+ }),
20
+ joinData = _General.joinData,
21
+ getFieldData = _General.getFieldData,
22
+ updateFormField = _General.updateFormField,
23
+ getFormFields = _General.getFormFields,
24
+ _getFormFieldsAsArray = _General.getFormFieldsAsArray,
25
+ _getFormFieldsKeys = _General.getFormFieldsKeys;
26
+
27
+ var getFormField = function getFormField(key) {
28
+ var _getFormFields;
29
+
30
+ var argForm = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : form;
31
+ return (_getFormFields = getFormFields(argForm)) === null || _getFormFields === void 0 ? void 0 : _getFormFields.find(function (f) {
32
+ return f.key === key;
33
+ });
34
+ };
35
+
36
+ var setFormFields = function setFormFields(data) {
37
+ var isFunction = typeof data === 'function';
38
+ setForm(function (state) {
39
+ return isFunction ? data(state) : data;
40
+ });
41
+ };
42
+
43
+ var setFormField = function setFormField(data) {
44
+ var key = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
45
+ return setFormFields(function (fields) {
46
+ return updateFormField(fields, data, key);
47
+ });
48
+ };
49
+
50
+ var removeAllFormFields = function removeAllFormFields() {
51
+ return setFormFields([]);
52
+ };
53
+
54
+ return {
55
+ joinData: joinData,
56
+ getFieldData: getFieldData,
57
+ getFormFields: getFormFields,
58
+ getFormField: getFormField,
59
+ setFormFields: setFormFields,
60
+ setFormField: setFormField,
61
+ getFormFieldsAsArray: function getFormFieldsAsArray(fields) {
62
+ return _getFormFieldsAsArray(fields || getFormFields());
63
+ },
64
+ getFormFieldsKeys: function getFormFieldsKeys(fields) {
65
+ return _getFormFieldsKeys(fields || getFormFields());
66
+ },
67
+ removeAllFormFields: removeAllFormFields
68
+ };
69
+ }
@@ -0,0 +1,166 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = ObjectWithIterableObjects;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
+
20
+ function ObjectWithIterableObjects(_ref) {
21
+ var form = _ref.form,
22
+ setForm = _ref.setForm,
23
+ FormFields = _ref.FormFields;
24
+
25
+ var joinData = function joinData() {
26
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
27
+ args[_key] = arguments[_key];
28
+ }
29
+
30
+ var mainArg = args[0];
31
+ var MainArgProto = Array.isArray(mainArg) ? 'Array' : (0, _typeof2.default)(mainArg) === 'object' ? 'Object' : undefined;
32
+ var template = Array.isArray(mainArg) ? [] : (0, _typeof2.default)(mainArg) === 'object' ? {} : null;
33
+ if (!template) return undefined;
34
+ return args.reduce(function (result, item) {
35
+ if (MainArgProto === 'Array') {
36
+ if (Array.isArray(item)) {
37
+ return [].concat((0, _toConsumableArray2.default)(result), (0, _toConsumableArray2.default)(item));
38
+ } else {
39
+ return [].concat((0, _toConsumableArray2.default)(result), [item]);
40
+ }
41
+ } else if (MainArgProto === 'Object') {
42
+ return _objectSpread(_objectSpread({}, result), item);
43
+ } else {
44
+ return template;
45
+ }
46
+ }, template);
47
+ };
48
+
49
+ var getFieldData = function getFieldData(key) {
50
+ if (Array.isArray(FormFields)) {
51
+ return FormFields[key] || FormFields.find(function (f) {
52
+ return f.key === key;
53
+ });
54
+ } else if ((0, _typeof2.default)(FormFields) === 'object') {
55
+ return FormFields[key] || Object.values(FormFields).find(function (f) {
56
+ return f.key === key;
57
+ });
58
+ } else {
59
+ return undefined;
60
+ }
61
+ };
62
+
63
+ var getFormFields = function getFormFields() {
64
+ return form.fields || form;
65
+ };
66
+
67
+ var getFormField = function getFormField(key) {
68
+ // eslint-disable-next-line no-undef
69
+ if (FormProto === 'Array') {
70
+ return getFormFields().find(function (field) {
71
+ return field.key === key;
72
+ }); // eslint-disable-next-line no-undef
73
+ } else if (FormProto === 'Object') {
74
+ return Object.values(getFormFields()).find(function (field) {
75
+ return field.key === key;
76
+ }) || Object.keys(getFormFields()).reduce(function (result, field) {
77
+ if (field === key) result = getFormFields()[field];
78
+ return result;
79
+ }, {});
80
+ } else {
81
+ return undefined;
82
+ }
83
+ };
84
+
85
+ var setFormFields = function setFormFields(data) {
86
+ var isFunction = typeof data === 'function';
87
+ setForm(function (state) {
88
+ if (state.fields) {
89
+ return _objectSpread(_objectSpread({}, state), {}, {
90
+ fields: isFunction ? data(state.fields) : data
91
+ });
92
+ } else {
93
+ return isFunction ? data(state) : data;
94
+ }
95
+ });
96
+ };
97
+
98
+ var setFormField = function setFormField(data) {
99
+ var key = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
100
+ var isFunction = typeof data === 'function';
101
+ setFormFields(function (fields) {
102
+ var pop = function pop(fields, key) {
103
+ var result = {
104
+ fields: fields,
105
+ item: undefined
106
+ };
107
+ result.item = fields[key] || fields.find(function (f) {
108
+ return f.key === key;
109
+ });
110
+ if (!result.item) return result;
111
+
112
+ if (Array.isArray(fields)) {
113
+ var index = parseInt(key);
114
+
115
+ if (!isNaN(index)) {
116
+ result.fields.splice(key, 1);
117
+ } else {
118
+ result.fields = result.fields.filter(function (f) {
119
+ return f.key !== key;
120
+ });
121
+ }
122
+ } else if ((0, _typeof2.default)(fields) === 'object') {
123
+ result.fields = Object.values(fields).reduce(function (object, _ref2) {
124
+ var fKey = _ref2.key;
125
+
126
+ if (key !== fKey) {
127
+ object[key] = fields[key];
128
+ }
129
+
130
+ return object;
131
+ }, {});
132
+ }
133
+
134
+ return result;
135
+ };
136
+
137
+ var update = function update(fields) {
138
+ //KEY is NULLable
139
+ if (!key) {
140
+ return data.key ? Object.values(fields).reduce(function (result, field, i) {
141
+ var index = fields[field.key] ? field.key : i;
142
+ return _objectSpread(_objectSpread({}, result), {}, (0, _defineProperty2.default)({}, index, data.key === field.key ? isFunction ? data(field) : data : field));
143
+ }, {}) : _objectSpread(_objectSpread({}, fields), {}, (0, _defineProperty2.default)({}, fields.length || 0, isFunction ? data({}) : data));
144
+ }
145
+
146
+ var _pop = pop(fields, key),
147
+ filtered = _pop.fields,
148
+ field = _pop.item;
149
+
150
+ var updatedField = isFunction ? data(field || {}) : _objectSpread(_objectSpread({}, field), data);
151
+ return joinData(filtered, fields[key] ? (0, _defineProperty2.default)({}, key, updatedField) : updatedField);
152
+ };
153
+
154
+ return update(fields);
155
+ });
156
+ };
157
+
158
+ return {
159
+ joinData: joinData,
160
+ getFieldData: getFieldData,
161
+ getFormFields: getFormFields,
162
+ getFormField: getFormField,
163
+ setFormFields: setFormFields,
164
+ setFormField: setFormField
165
+ };
166
+ }