@data-driven-forms/mui-component-mapper 4.1.12 → 4.1.14

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 (245) hide show
  1. package/.eslintrc.json +27 -0
  2. package/CHANGELOG.md +13 -2
  3. package/checkbox/checkbox.d.ts +29 -16
  4. package/checkbox/checkbox.js +44 -77
  5. package/checkbox/checkbox.js.map +1 -0
  6. package/checkbox/index.js +22 -24
  7. package/checkbox/index.js.map +1 -0
  8. package/component-mapper/component-mapper.d.ts +35 -40
  9. package/component-mapper/component-mapper.js +55 -40
  10. package/component-mapper/component-mapper.js.map +1 -0
  11. package/component-mapper/index.js +22 -24
  12. package/component-mapper/index.js.map +1 -0
  13. package/date-picker/date-picker.d.ts +10 -10
  14. package/date-picker/date-picker.js +52 -63
  15. package/date-picker/date-picker.js.map +1 -0
  16. package/date-picker/index.js +22 -24
  17. package/date-picker/index.js.map +1 -0
  18. package/dual-list-select/dual-list-select.d.ts +3 -111
  19. package/dual-list-select/dual-list-select.js +93 -412
  20. package/dual-list-select/dual-list-select.js.map +1 -0
  21. package/dual-list-select/index.js +22 -24
  22. package/dual-list-select/index.js.map +1 -0
  23. package/esm/checkbox/checkbox.d.ts +31 -0
  24. package/esm/checkbox/checkbox.js +25 -69
  25. package/esm/checkbox/checkbox.js.map +1 -0
  26. package/esm/checkbox/index.d.ts +2 -0
  27. package/esm/checkbox/index.js +2 -1
  28. package/esm/checkbox/index.js.map +1 -0
  29. package/esm/component-mapper/component-mapper.d.ts +36 -0
  30. package/esm/component-mapper/component-mapper.js +34 -19
  31. package/esm/component-mapper/component-mapper.js.map +1 -0
  32. package/esm/component-mapper/index.d.ts +2 -0
  33. package/esm/component-mapper/index.js +2 -1
  34. package/esm/component-mapper/index.js.map +1 -0
  35. package/esm/date-picker/date-picker.d.ts +12 -0
  36. package/esm/date-picker/date-picker.js +35 -55
  37. package/esm/date-picker/date-picker.js.map +1 -0
  38. package/esm/date-picker/index.d.ts +2 -0
  39. package/esm/date-picker/index.js +2 -1
  40. package/esm/date-picker/index.js.map +1 -0
  41. package/esm/dual-list-select/dual-list-select.d.ts +3 -0
  42. package/esm/dual-list-select/dual-list-select.js +59 -404
  43. package/esm/dual-list-select/dual-list-select.js.map +1 -0
  44. package/esm/dual-list-select/index.d.ts +2 -0
  45. package/esm/dual-list-select/index.js +2 -1
  46. package/esm/dual-list-select/index.js.map +1 -0
  47. package/esm/field-array/field-array.d.ts +56 -0
  48. package/esm/field-array/field-array.js +107 -296
  49. package/esm/field-array/field-array.js.map +1 -0
  50. package/esm/field-array/index.d.ts +2 -0
  51. package/esm/field-array/index.js +2 -1
  52. package/esm/field-array/index.js.map +1 -0
  53. package/esm/form-field-grid/form-field-grid.d.ts +8 -0
  54. package/esm/form-field-grid/form-field-grid.js +26 -22
  55. package/esm/form-field-grid/form-field-grid.js.map +1 -0
  56. package/esm/form-field-grid/index.d.ts +2 -0
  57. package/esm/form-field-grid/index.js +3 -1
  58. package/esm/form-field-grid/index.js.map +1 -0
  59. package/esm/form-template/form-template.d.ts +17 -0
  60. package/esm/form-template/form-template.js +57 -126
  61. package/esm/form-template/form-template.js.map +1 -0
  62. package/esm/form-template/index.d.ts +2 -0
  63. package/esm/form-template/index.js +2 -1
  64. package/esm/form-template/index.js.map +1 -0
  65. package/esm/index.d.ts +21 -0
  66. package/esm/index.js +3 -2
  67. package/esm/index.js.map +1 -0
  68. package/esm/multiple-choice-list/index.d.ts +2 -0
  69. package/esm/multiple-choice-list/index.js +2 -1
  70. package/esm/multiple-choice-list/index.js.map +1 -0
  71. package/esm/multiple-choice-list/multiple-choice-list.d.ts +14 -0
  72. package/esm/multiple-choice-list/multiple-choice-list.js +39 -93
  73. package/esm/multiple-choice-list/multiple-choice-list.js.map +1 -0
  74. package/esm/plain-text/index.d.ts +2 -0
  75. package/esm/plain-text/index.js +2 -1
  76. package/esm/plain-text/index.js.map +1 -0
  77. package/esm/plain-text/plain-text.d.ts +12 -0
  78. package/esm/plain-text/plain-text.js +18 -27
  79. package/esm/plain-text/plain-text.js.map +1 -0
  80. package/esm/radio/index.d.ts +2 -0
  81. package/esm/radio/index.js +2 -1
  82. package/esm/radio/index.js.map +1 -0
  83. package/esm/radio/radio.d.ts +19 -0
  84. package/esm/radio/radio.js +38 -110
  85. package/esm/radio/radio.js.map +1 -0
  86. package/esm/select/index.d.ts +2 -0
  87. package/esm/select/index.js +2 -1
  88. package/esm/select/index.js.map +1 -0
  89. package/esm/select/select.d.ts +44 -0
  90. package/esm/select/select.js +55 -162
  91. package/esm/select/select.js.map +1 -0
  92. package/esm/slider/index.d.ts +2 -0
  93. package/esm/slider/index.js +2 -1
  94. package/esm/slider/index.js.map +1 -0
  95. package/esm/slider/slider.d.ts +24 -0
  96. package/esm/slider/slider.js +22 -63
  97. package/esm/slider/slider.js.map +1 -0
  98. package/esm/sub-form/index.d.ts +2 -0
  99. package/esm/sub-form/index.js +2 -1
  100. package/esm/sub-form/index.js.map +1 -0
  101. package/esm/sub-form/sub-form.d.ts +16 -0
  102. package/esm/sub-form/sub-form.js +29 -52
  103. package/esm/sub-form/sub-form.js.map +1 -0
  104. package/esm/switch/index.d.ts +2 -0
  105. package/esm/switch/index.js +2 -1
  106. package/esm/switch/index.js.map +1 -0
  107. package/esm/switch/switch.d.ts +18 -0
  108. package/esm/switch/switch.js +21 -62
  109. package/esm/switch/switch.js.map +1 -0
  110. package/esm/tabs/index.d.ts +2 -0
  111. package/esm/tabs/index.js +2 -1
  112. package/esm/tabs/index.js.map +1 -0
  113. package/esm/tabs/tabs.d.ts +19 -0
  114. package/esm/tabs/tabs.js +9 -73
  115. package/esm/tabs/tabs.js.map +1 -0
  116. package/esm/text-field/index.d.ts +2 -0
  117. package/esm/text-field/index.js +2 -1
  118. package/esm/text-field/index.js.map +1 -0
  119. package/esm/text-field/text-field.d.ts +10 -0
  120. package/esm/text-field/text-field.js +20 -38
  121. package/esm/text-field/text-field.js.map +1 -0
  122. package/esm/textarea/index.d.ts +2 -0
  123. package/esm/textarea/index.js +2 -1
  124. package/esm/textarea/index.js.map +1 -0
  125. package/esm/textarea/textarea.d.ts +13 -0
  126. package/esm/textarea/textarea.js +20 -42
  127. package/esm/textarea/textarea.js.map +1 -0
  128. package/esm/time-picker/index.d.ts +2 -0
  129. package/esm/time-picker/index.js +2 -1
  130. package/esm/time-picker/index.js.map +1 -0
  131. package/esm/time-picker/time-picker.d.ts +13 -0
  132. package/esm/time-picker/time-picker.js +35 -57
  133. package/esm/time-picker/time-picker.js.map +1 -0
  134. package/esm/validation-error/index.d.ts +2 -0
  135. package/esm/validation-error/index.js +2 -1
  136. package/esm/validation-error/index.js.map +1 -0
  137. package/esm/validation-error/validation-error.d.ts +6 -0
  138. package/esm/validation-error/validation-error.js +7 -6
  139. package/esm/validation-error/validation-error.js.map +1 -0
  140. package/esm/wizard/index.d.ts +2 -0
  141. package/esm/wizard/index.js +2 -1
  142. package/esm/wizard/index.js.map +1 -0
  143. package/esm/wizard/step-buttons.d.ts +33 -0
  144. package/esm/wizard/step-buttons.js +49 -104
  145. package/esm/wizard/step-buttons.js.map +1 -0
  146. package/esm/wizard/wizard-nav.d.ts +15 -0
  147. package/esm/wizard/wizard-nav.js +15 -33
  148. package/esm/wizard/wizard-nav.js.map +1 -0
  149. package/esm/wizard/wizard.d.ts +4 -0
  150. package/esm/wizard/wizard.js +21 -70
  151. package/esm/wizard/wizard.js.map +1 -0
  152. package/field-array/field-array.d.ts +54 -38
  153. package/field-array/field-array.js +138 -306
  154. package/field-array/field-array.js.map +1 -0
  155. package/field-array/index.js +22 -24
  156. package/field-array/index.js.map +1 -0
  157. package/form-field-grid/form-field-grid.d.ts +7 -5
  158. package/form-field-grid/form-field-grid.js +42 -28
  159. package/form-field-grid/form-field-grid.js.map +1 -0
  160. package/form-field-grid/index.js +23 -12
  161. package/form-field-grid/index.js.map +1 -0
  162. package/form-template/form-template.d.ts +17 -5
  163. package/form-template/form-template.js +78 -132
  164. package/form-template/form-template.js.map +1 -0
  165. package/form-template/index.js +22 -24
  166. package/form-template/index.js.map +1 -0
  167. package/index.d.ts +10 -29
  168. package/index.js +45 -146
  169. package/index.js.map +1 -0
  170. package/multiple-choice-list/index.js +22 -24
  171. package/multiple-choice-list/index.js.map +1 -0
  172. package/multiple-choice-list/multiple-choice-list.d.ts +12 -24
  173. package/multiple-choice-list/multiple-choice-list.js +53 -101
  174. package/multiple-choice-list/multiple-choice-list.js.map +1 -0
  175. package/package.json +9 -11
  176. package/plain-text/index.js +22 -24
  177. package/plain-text/index.js.map +1 -0
  178. package/plain-text/plain-text.d.ts +10 -10
  179. package/plain-text/plain-text.js +30 -33
  180. package/plain-text/plain-text.js.map +1 -0
  181. package/radio/index.js +22 -24
  182. package/radio/index.js.map +1 -0
  183. package/radio/radio.d.ts +17 -25
  184. package/radio/radio.js +56 -116
  185. package/radio/radio.js.map +1 -0
  186. package/select/index.js +22 -24
  187. package/select/index.js.map +1 -0
  188. package/select/select.d.ts +42 -27
  189. package/select/select.js +78 -172
  190. package/select/select.js.map +1 -0
  191. package/slider/index.js +22 -24
  192. package/slider/index.js.map +1 -0
  193. package/slider/slider.d.ts +22 -28
  194. package/slider/slider.js +39 -71
  195. package/slider/slider.js.map +1 -0
  196. package/sub-form/index.js +22 -24
  197. package/sub-form/index.js.map +1 -0
  198. package/sub-form/sub-form.d.ts +14 -16
  199. package/sub-form/sub-form.js +42 -56
  200. package/sub-form/sub-form.js.map +1 -0
  201. package/switch/index.js +22 -24
  202. package/switch/index.js.map +1 -0
  203. package/switch/switch.d.ts +16 -26
  204. package/switch/switch.js +43 -70
  205. package/switch/switch.js.map +1 -0
  206. package/tabs/index.js +22 -24
  207. package/tabs/index.js.map +1 -0
  208. package/tabs/tabs.d.ts +18 -14
  209. package/tabs/tabs.js +33 -82
  210. package/tabs/tabs.js.map +1 -0
  211. package/text-field/index.js +22 -24
  212. package/text-field/index.js.map +1 -0
  213. package/text-field/text-field.d.ts +8 -16
  214. package/text-field/text-field.js +37 -46
  215. package/text-field/text-field.js.map +1 -0
  216. package/textarea/index.js +22 -24
  217. package/textarea/index.js.map +1 -0
  218. package/textarea/textarea.d.ts +11 -17
  219. package/textarea/textarea.js +37 -50
  220. package/textarea/textarea.js.map +1 -0
  221. package/time-picker/index.js +22 -24
  222. package/time-picker/index.js.map +1 -0
  223. package/time-picker/time-picker.d.ts +11 -16
  224. package/time-picker/time-picker.js +52 -65
  225. package/time-picker/time-picker.js.map +1 -0
  226. package/tsconfig.cjs.json +8 -0
  227. package/tsconfig.demo.json +31 -0
  228. package/tsconfig.esm.json +8 -0
  229. package/tsconfig.json +17 -9
  230. package/validation-error/index.js +22 -24
  231. package/validation-error/index.js.map +1 -0
  232. package/validation-error/validation-error.d.ts +5 -4
  233. package/validation-error/validation-error.js +10 -11
  234. package/validation-error/validation-error.js.map +1 -0
  235. package/wizard/index.js +22 -24
  236. package/wizard/index.js.map +1 -0
  237. package/wizard/step-buttons.d.ts +33 -0
  238. package/wizard/step-buttons.js +68 -110
  239. package/wizard/step-buttons.js.map +1 -0
  240. package/wizard/wizard-nav.d.ts +15 -0
  241. package/wizard/wizard-nav.js +37 -37
  242. package/wizard/wizard-nav.js.map +1 -0
  243. package/wizard/wizard.d.ts +4 -28
  244. package/wizard/wizard.js +41 -79
  245. package/wizard/wizard.js.map +1 -0
@@ -1,40 +1,56 @@
1
- import { ReactNode } from "react";
2
- import { FieldArrayField } from "@data-driven-forms/react-form-renderer";
3
- import { FormControlProps, GridProps, ButtonProps, FormHelperTextProps, TypographyProps } from "@mui/material";
4
-
5
- export interface FieldArrayButtonLabels {
6
- add?: ReactNode;
7
- remove?: ReactNode;
1
+ import React from 'react';
2
+ import type { BaseFieldProps, AnyObject } from '@data-driven-forms/react-form-renderer';
3
+ import type { GridProps, ButtonProps, TypographyProps, FormControlProps, FormHelperTextProps, IconButtonProps } from '@mui/material';
4
+ import type { FormFieldGridProps } from '../form-field-grid/form-field-grid';
5
+ interface ButtonLabels {
6
+ add?: string;
7
+ remove?: string;
8
8
  }
9
-
10
- export interface FieldArrayProps {
11
- label?: ReactNode;
12
- description?: ReactNode;
13
- fields: FieldArrayField[];
14
- defaultItem?: any;
15
- minItems?: number;
16
- maxItems?: number;
17
- noItemsMessage?: ReactNode;
18
- FormControlProps?: FormControlProps;
19
- FormFieldGridProps?: GridProps;
20
- buttonLabels?: FieldArrayButtonLabels;
21
- GridContainerProps: GridProps;
22
- HeaderGridProps: GridProps;
23
- HeaderProps: TypographyProps;
24
- UndoButtonProps: ButtonProps;
25
- RedoButtonProps: ButtonProps;
26
- AddButtonProps: ButtonProps;
27
- DescriptionGridProps: GridProps;
28
- DescriptionProps: TypographyProps;
29
- BodyGridProps: GridProps;
30
- NoItemsProps: TypographyProps;
31
- FormHelperTextGridProps: GridProps;
32
- FormHelperTextProps: FormHelperTextProps;
33
- FieldContainerProps: GridProps;
34
- FieldGroupGridProps: GridProps;
35
- RemoveButtonGridProps: GridProps;
36
- RemoveButtonProps: ButtonProps;
9
+ interface HistoryAction {
10
+ action: 'remove';
11
+ value: any;
37
12
  }
38
-
39
- declare const FieldArray: React.ComponentType<FieldArrayProps>;
40
- export default FieldArray;
13
+ interface HistoryState {
14
+ index: number;
15
+ history: HistoryAction[];
16
+ }
17
+ type ReducerAction = {
18
+ type: 'redo';
19
+ } | {
20
+ type: 'undo';
21
+ } | {
22
+ type: 'action';
23
+ action: HistoryAction;
24
+ } | {
25
+ type: 'resetHistory';
26
+ };
27
+ export declare const reducer: (state: HistoryState, actionObj: ReducerAction) => HistoryState;
28
+ export interface DynamicArrayProps extends BaseFieldProps {
29
+ arrayValidator?: (value: any[]) => string | undefined;
30
+ fields: AnyObject[];
31
+ defaultItem?: any;
32
+ minItems?: number;
33
+ maxItems?: number;
34
+ noItemsMessage?: string;
35
+ buttonLabels?: ButtonLabels;
36
+ FormFieldGridProps?: FormFieldGridProps;
37
+ FormControlProps?: FormControlProps;
38
+ GridContainerProps?: GridProps;
39
+ HeaderGridProps?: GridProps;
40
+ HeaderProps?: TypographyProps;
41
+ UndoButtonProps?: IconButtonProps;
42
+ RedoButtonProps?: IconButtonProps;
43
+ AddButtonProps?: ButtonProps;
44
+ DescriptionGridProps?: GridProps;
45
+ DescriptionProps?: TypographyProps;
46
+ BodyGridProps?: GridProps;
47
+ NoItemsProps?: TypographyProps;
48
+ FormHelperTextGridProps?: GridProps;
49
+ FormHelperTextProps?: FormHelperTextProps;
50
+ FieldContainerProps?: GridProps;
51
+ FieldGroupGridProps?: GridProps;
52
+ RemoveButtonGridProps?: GridProps;
53
+ RemoveButtonProps?: ButtonProps;
54
+ }
55
+ declare const DynamicArray: React.FC<DynamicArrayProps>;
56
+ export default DynamicArray;
@@ -1,318 +1,150 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.reducer = exports["default"] = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
11
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
- var _react = _interopRequireWildcard(require("react"));
16
- var _styles = require("@mui/material/styles");
17
- var _useFormApi2 = _interopRequireDefault(require("@data-driven-forms/react-form-renderer/use-form-api"));
18
- var _fieldArray = _interopRequireDefault(require("@data-driven-forms/react-form-renderer/field-array"));
19
- var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
20
- var _Grid = _interopRequireDefault(require("@mui/material/Grid"));
21
- var _Button = _interopRequireDefault(require("@mui/material/Button"));
22
- var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
23
- var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
24
- var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
25
- var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
26
- var _Redo = _interopRequireDefault(require("@mui/icons-material/Redo"));
27
- var _Undo = _interopRequireDefault(require("@mui/icons-material/Undo"));
28
- var _useFieldApi2 = _interopRequireDefault(require("@data-driven-forms/react-form-renderer/use-field-api"));
29
- var _formFieldGrid = _interopRequireDefault(require("../form-field-grid/form-field-grid"));
30
- var _clsx = _interopRequireDefault(require("clsx"));
31
- var _excluded = ["remove"],
32
- _excluded2 = ["remove"],
33
- _excluded3 = ["arrayValidator", "label", "description", "fields", "defaultItem", "meta", "minItems", "maxItems", "noItemsMessage", "FormFieldGridProps", "FormControlProps", "buttonLabels", "GridContainerProps", "HeaderGridProps", "HeaderProps", "UndoButtonProps", "RedoButtonProps", "AddButtonProps", "DescriptionGridProps", "DescriptionProps", "BodyGridProps", "NoItemsProps", "FormHelperTextGridProps", "FormHelperTextProps", "FieldContainerProps", "FieldGroupGridProps", "RemoveButtonGridProps", "RemoveButtonProps"];
34
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
35
- 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; }
36
- 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) { (0, _defineProperty2["default"])(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; }
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
+ 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
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
25
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
26
+ if (ar || !(i in from)) {
27
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
28
+ ar[i] = from[i];
29
+ }
30
+ }
31
+ return to.concat(ar || Array.prototype.slice.call(from));
32
+ };
33
+ var __importDefault = (this && this.__importDefault) || function (mod) {
34
+ return (mod && mod.__esModule) ? mod : { "default": mod };
35
+ };
36
+ var _a;
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ exports.reducer = void 0;
39
+ var jsx_runtime_1 = require("react/jsx-runtime");
40
+ var react_1 = require("react");
41
+ var styles_1 = require("@mui/material/styles");
42
+ var react_form_renderer_1 = require("@data-driven-forms/react-form-renderer");
43
+ var isEqual_1 = __importDefault(require("lodash/isEqual"));
44
+ var material_1 = require("@mui/material");
45
+ var Redo_1 = __importDefault(require("@mui/icons-material/Redo"));
46
+ var Undo_1 = __importDefault(require("@mui/icons-material/Undo"));
47
+ var react_form_renderer_2 = require("@data-driven-forms/react-form-renderer");
48
+ var form_field_grid_1 = __importDefault(require("../form-field-grid/form-field-grid"));
49
+ var clsx_1 = __importDefault(require("clsx"));
37
50
  var PREFIX = 'DynamicArray';
38
51
  var classes = {
39
- formControl: "".concat(PREFIX, "-formControl"),
40
- centerText: "".concat(PREFIX, "-centerText"),
41
- buttonsToEnd: "".concat(PREFIX, "-buttonsToEnd"),
42
- header: "".concat(PREFIX, "-header"),
43
- label: "".concat(PREFIX, "-label"),
44
- fieldArrayGroup: "".concat(PREFIX, "-fieldArrayGroup")
52
+ formControl: "".concat(PREFIX, "-formControl"),
53
+ centerText: "".concat(PREFIX, "-centerText"),
54
+ buttonsToEnd: "".concat(PREFIX, "-buttonsToEnd"),
55
+ header: "".concat(PREFIX, "-header"),
56
+ label: "".concat(PREFIX, "-label"),
57
+ fieldArrayGroup: "".concat(PREFIX, "-fieldArrayGroup"),
45
58
  };
46
- var StyledFormFieldGrid = (0, _styles.styled)(_formFieldGrid["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, "& .".concat(classes.formControl), {
47
- width: '100%'
48
- }), "& .".concat(classes.centerText), {
49
- display: 'flex',
50
- justifyContent: 'center'
51
- }), "& .".concat(classes.buttonsToEnd), {
52
- display: 'flex',
53
- justifyContent: 'flex-end'
54
- }), "& .".concat(classes.header), {
55
- display: 'flex'
56
- }), "& .".concat(classes.label), {
57
- flexGrow: 1
58
- }), "&.".concat(classes.fieldArrayGroup), {
59
- marginBottom: 32
60
- }));
61
- var ArrayItem = /*#__PURE__*/(0, _react.memo)(function (_ref) {
62
- var fields = _ref.fields,
63
- fieldIndex = _ref.fieldIndex,
64
- name = _ref.name,
65
- remove = _ref.remove,
66
- length = _ref.length,
67
- minItems = _ref.minItems,
68
- removeLabel = _ref.removeLabel,
69
- _ref$FieldContainerPr = _ref.FieldContainerProps,
70
- FieldContainerProps = _ref$FieldContainerPr === void 0 ? {} : _ref$FieldContainerPr,
71
- _ref$FieldGroupGridPr = _ref.FieldGroupGridProps,
72
- FieldGroupGridProps = _ref$FieldGroupGridPr === void 0 ? {} : _ref$FieldGroupGridPr,
73
- _ref$RemoveButtonGrid = _ref.RemoveButtonGridProps,
74
- RemoveButtonGridProps = _ref$RemoveButtonGrid === void 0 ? {} : _ref$RemoveButtonGrid,
75
- _ref$RemoveButtonProp = _ref.RemoveButtonProps,
76
- RemoveButtonProps = _ref$RemoveButtonProp === void 0 ? {} : _ref$RemoveButtonProp;
77
- var _useFormApi = (0, _useFormApi2["default"])(),
78
- renderForm = _useFormApi.renderForm;
79
- var editedFields = fields.map(function (field, index) {
80
- var computedName = field.name ? "".concat(name, ".").concat(field.name) : name;
81
- return _objectSpread(_objectSpread({}, field), {}, {
82
- name: computedName,
83
- key: "".concat(computedName, "-").concat(index)
84
- });
85
- });
86
- return /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
87
- container: true,
88
- spacing: 3
89
- }, FieldContainerProps), /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
90
- item: true,
91
- xs: 12
92
- }, FieldGroupGridProps), /*#__PURE__*/_react["default"].createElement(_Grid["default"], {
93
- container: true,
94
- spacing: 3
95
- }, renderForm([editedFields]))), /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
96
- item: true,
97
- xs: 12,
98
- className: classes.buttonsToEnd
99
- }, RemoveButtonGridProps), /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
100
- color: "secondary",
101
- onClick: function onClick() {
102
- return remove(fieldIndex);
59
+ var StyledFormFieldGrid = (0, styles_1.styled)(form_field_grid_1.default)((_a = {},
60
+ _a["& .".concat(classes.formControl)] = {
61
+ width: '100%',
62
+ },
63
+ _a["& .".concat(classes.centerText)] = {
64
+ display: 'flex',
65
+ justifyContent: 'center',
103
66
  },
104
- disabled: length <= minItems
105
- }, RemoveButtonProps), removeLabel)));
106
- }, function (_ref2, _ref3) {
107
- var _prevRemove = _ref2.remove,
108
- prev = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
109
- var _nextRemove = _ref3.remove,
110
- next = (0, _objectWithoutProperties2["default"])(_ref3, _excluded2);
111
- return (0, _isEqual["default"])(prev, next);
67
+ _a["& .".concat(classes.buttonsToEnd)] = {
68
+ display: 'flex',
69
+ justifyContent: 'flex-end',
70
+ },
71
+ _a["& .".concat(classes.header)] = {
72
+ display: 'flex',
73
+ },
74
+ _a["& .".concat(classes.label)] = {
75
+ flexGrow: 1,
76
+ },
77
+ _a["&.".concat(classes.fieldArrayGroup)] = {
78
+ marginBottom: 32,
79
+ },
80
+ _a));
81
+ var ArrayItem = (0, react_1.memo)(function (_a) {
82
+ var fields = _a.fields, fieldIndex = _a.fieldIndex, name = _a.name, remove = _a.remove, length = _a.length, minItems = _a.minItems, removeLabel = _a.removeLabel, _b = _a.FieldContainerProps, FieldContainerProps = _b === void 0 ? {} : _b, _c = _a.FieldGroupGridProps, FieldGroupGridProps = _c === void 0 ? {} : _c, _d = _a.RemoveButtonGridProps, RemoveButtonGridProps = _d === void 0 ? {} : _d, _e = _a.RemoveButtonProps, RemoveButtonProps = _e === void 0 ? {} : _e;
83
+ var renderForm = (0, react_form_renderer_1.useFormApi)().renderForm;
84
+ var editedFields = fields.map(function (field, index) {
85
+ var computedName = field.name ? "".concat(name, ".").concat(field.name) : name;
86
+ return __assign(__assign({}, field), { name: computedName, key: "".concat(computedName, "-").concat(index) });
87
+ });
88
+ return ((0, jsx_runtime_1.jsxs)(material_1.Grid, __assign({ container: true, spacing: 3 }, FieldContainerProps, { children: [(0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, xs: 12 }, FieldGroupGridProps, { children: (0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, spacing: 3, children: renderForm(editedFields) }) })), (0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, xs: 12, className: classes.buttonsToEnd }, RemoveButtonGridProps, { children: (0, jsx_runtime_1.jsx)(material_1.Button, __assign({ color: "secondary", onClick: function () { return remove(fieldIndex); }, disabled: length <= minItems }, RemoveButtonProps, { children: removeLabel })) }))] })));
89
+ }, function (_a, _b) {
90
+ var _prevRemove = _a.remove, prev = __rest(_a, ["remove"]);
91
+ var _nextRemove = _b.remove, next = __rest(_b, ["remove"]);
92
+ return (0, isEqual_1.default)(prev, next);
112
93
  });
113
94
  var defaultButtonLabels = {
114
- add: 'ADD',
115
- remove: 'REMOVE'
95
+ add: 'ADD',
96
+ remove: 'REMOVE',
116
97
  };
117
98
  var initialState = {
118
- index: 0,
119
- history: []
99
+ index: 0,
100
+ history: [],
120
101
  };
121
- var reducer = exports.reducer = function reducer(state, _ref4) {
122
- var type = _ref4.type,
123
- action = _ref4.action;
124
- switch (type) {
125
- case 'redo':
126
- return _objectSpread(_objectSpread({}, state), {}, {
127
- index: state.index + 1
128
- });
129
- case 'action':
130
- return {
131
- index: state.index + 1,
132
- history: [].concat((0, _toConsumableArray2["default"])(state.history.slice(0, state.index)), [action])
133
- };
134
- case 'undo':
135
- return _objectSpread(_objectSpread({}, state), {}, {
136
- index: state.index - 1
137
- });
138
- case 'resetHistory':
139
- return _objectSpread(_objectSpread({}, state), {}, {
140
- history: state.history.slice(0, state.index)
141
- });
142
- default:
143
- return state;
144
- }
102
+ var reducer = function (state, actionObj) {
103
+ var type = actionObj.type;
104
+ switch (type) {
105
+ case 'redo':
106
+ return __assign(__assign({}, state), { index: state.index + 1 });
107
+ case 'action':
108
+ return {
109
+ index: state.index + 1,
110
+ history: __spreadArray(__spreadArray([], state.history.slice(0, state.index), true), [actionObj.action], false),
111
+ };
112
+ case 'undo':
113
+ return __assign(__assign({}, state), { index: state.index - 1 });
114
+ case 'resetHistory':
115
+ return __assign(__assign({}, state), { history: state.history.slice(0, state.index) });
116
+ default:
117
+ return state;
118
+ }
145
119
  };
146
- var DynamicArray = function DynamicArray(_ref5) {
147
- var props = (0, _extends2["default"])({}, ((0, _objectDestructuringEmpty2["default"])(_ref5), _ref5));
148
- var _useFieldApi = (0, _useFieldApi2["default"])(props),
149
- arrayValidator = _useFieldApi.arrayValidator,
150
- label = _useFieldApi.label,
151
- description = _useFieldApi.description,
152
- formFields = _useFieldApi.fields,
153
- defaultItem = _useFieldApi.defaultItem,
154
- meta = _useFieldApi.meta,
155
- _useFieldApi$minItems = _useFieldApi.minItems,
156
- minItems = _useFieldApi$minItems === void 0 ? 0 : _useFieldApi$minItems,
157
- _useFieldApi$maxItems = _useFieldApi.maxItems,
158
- maxItems = _useFieldApi$maxItems === void 0 ? Infinity : _useFieldApi$maxItems,
159
- _useFieldApi$noItemsM = _useFieldApi.noItemsMessage,
160
- noItemsMessage = _useFieldApi$noItemsM === void 0 ? 'No items added' : _useFieldApi$noItemsM,
161
- _useFieldApi$FormFiel = _useFieldApi.FormFieldGridProps,
162
- FormFieldGridProps = _useFieldApi$FormFiel === void 0 ? {} : _useFieldApi$FormFiel,
163
- _useFieldApi$FormCont = _useFieldApi.FormControlProps,
164
- FormControlProps = _useFieldApi$FormCont === void 0 ? {} : _useFieldApi$FormCont,
165
- buttonLabels = _useFieldApi.buttonLabels,
166
- _useFieldApi$GridCont = _useFieldApi.GridContainerProps,
167
- GridContainerProps = _useFieldApi$GridCont === void 0 ? {} : _useFieldApi$GridCont,
168
- _useFieldApi$HeaderGr = _useFieldApi.HeaderGridProps,
169
- HeaderGridProps = _useFieldApi$HeaderGr === void 0 ? {} : _useFieldApi$HeaderGr,
170
- _useFieldApi$HeaderPr = _useFieldApi.HeaderProps,
171
- HeaderProps = _useFieldApi$HeaderPr === void 0 ? {} : _useFieldApi$HeaderPr,
172
- _useFieldApi$UndoButt = _useFieldApi.UndoButtonProps,
173
- UndoButtonProps = _useFieldApi$UndoButt === void 0 ? {} : _useFieldApi$UndoButt,
174
- _useFieldApi$RedoButt = _useFieldApi.RedoButtonProps,
175
- RedoButtonProps = _useFieldApi$RedoButt === void 0 ? {} : _useFieldApi$RedoButt,
176
- _useFieldApi$AddButto = _useFieldApi.AddButtonProps,
177
- AddButtonProps = _useFieldApi$AddButto === void 0 ? {} : _useFieldApi$AddButto,
178
- _useFieldApi$Descript = _useFieldApi.DescriptionGridProps,
179
- DescriptionGridProps = _useFieldApi$Descript === void 0 ? {} : _useFieldApi$Descript,
180
- _useFieldApi$Descript2 = _useFieldApi.DescriptionProps,
181
- DescriptionProps = _useFieldApi$Descript2 === void 0 ? {} : _useFieldApi$Descript2,
182
- _useFieldApi$BodyGrid = _useFieldApi.BodyGridProps,
183
- BodyGridProps = _useFieldApi$BodyGrid === void 0 ? {} : _useFieldApi$BodyGrid,
184
- _useFieldApi$NoItemsP = _useFieldApi.NoItemsProps,
185
- NoItemsProps = _useFieldApi$NoItemsP === void 0 ? {} : _useFieldApi$NoItemsP,
186
- _useFieldApi$FormHelp = _useFieldApi.FormHelperTextGridProps,
187
- FormHelperTextGridProps = _useFieldApi$FormHelp === void 0 ? {} : _useFieldApi$FormHelp,
188
- _useFieldApi$FormHelp2 = _useFieldApi.FormHelperTextProps,
189
- FormHelperTextProps = _useFieldApi$FormHelp2 === void 0 ? {} : _useFieldApi$FormHelp2,
190
- _useFieldApi$FieldCon = _useFieldApi.FieldContainerProps,
191
- FieldContainerProps = _useFieldApi$FieldCon === void 0 ? {} : _useFieldApi$FieldCon,
192
- _useFieldApi$FieldGro = _useFieldApi.FieldGroupGridProps,
193
- FieldGroupGridProps = _useFieldApi$FieldGro === void 0 ? {} : _useFieldApi$FieldGro,
194
- _useFieldApi$RemoveBu = _useFieldApi.RemoveButtonGridProps,
195
- RemoveButtonGridProps = _useFieldApi$RemoveBu === void 0 ? {} : _useFieldApi$RemoveBu,
196
- _useFieldApi$RemoveBu2 = _useFieldApi.RemoveButtonProps,
197
- RemoveButtonProps = _useFieldApi$RemoveBu2 === void 0 ? {} : _useFieldApi$RemoveBu2,
198
- rest = (0, _objectWithoutProperties2["default"])(_useFieldApi, _excluded3);
199
- var _useReducer = (0, _react.useReducer)(reducer, initialState),
200
- _useReducer2 = (0, _slicedToArray2["default"])(_useReducer, 2),
201
- state = _useReducer2[0],
202
- dispatch = _useReducer2[1];
203
- var combinedButtonLabels = _objectSpread(_objectSpread({}, defaultButtonLabels), buttonLabels);
204
- var dirty = meta.dirty,
205
- submitFailed = meta.submitFailed,
206
- error = meta.error,
207
- submitError = meta.submitError;
208
- var isError = (dirty || submitFailed) && error && typeof error === 'string';
209
- return /*#__PURE__*/_react["default"].createElement(StyledFormFieldGrid, (0, _extends2["default"])({}, FormFieldGridProps, {
210
- className: (0, _clsx["default"])(classes.fieldArrayGroup, FormFieldGridProps.classname)
211
- }), /*#__PURE__*/_react["default"].createElement(_FormControl["default"], (0, _extends2["default"])({
212
- component: "fieldset",
213
- error: isError || submitError
214
- }, FormControlProps, {
215
- className: (0, _clsx["default"])(classes.formControl, FormControlProps.className)
216
- }), /*#__PURE__*/_react["default"].createElement(_fieldArray["default"], {
217
- key: rest.input.name,
218
- name: rest.input.name,
219
- validate: arrayValidator
220
- }, function (_ref6) {
221
- var _ref6$fields = _ref6.fields,
222
- map = _ref6$fields.map,
223
- _ref6$fields$value = _ref6$fields.value,
224
- value = _ref6$fields$value === void 0 ? [] : _ref6$fields$value,
225
- push = _ref6$fields.push,
226
- remove = _ref6$fields.remove;
227
- var pushWrapper = function pushWrapper() {
228
- dispatch({
229
- type: 'resetHistory'
230
- });
231
- push(defaultItem);
232
- };
233
- var removeWrapper = function removeWrapper(index) {
234
- dispatch({
235
- type: 'action',
236
- action: {
237
- action: 'remove',
238
- value: value[index]
239
- }
240
- });
241
- remove(index);
242
- };
243
- var undo = function undo() {
244
- push(state.history[state.index - 1].value);
245
- dispatch({
246
- type: 'undo'
247
- });
248
- };
249
- var redo = function redo() {
250
- remove(value.length - 1);
251
- dispatch({
252
- type: 'redo'
253
- });
254
- };
255
- return /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
256
- container: true,
257
- spacing: 3
258
- }, GridContainerProps), /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
259
- item: true,
260
- xs: 12,
261
- className: classes.header
262
- }, HeaderGridProps), label && /*#__PURE__*/_react["default"].createElement(_Typography["default"], (0, _extends2["default"])({
263
- variant: "h6",
264
- className: classes.label
265
- }, HeaderProps), label), /*#__PURE__*/_react["default"].createElement(_IconButton["default"], (0, _extends2["default"])({
266
- color: "primary",
267
- "aria-label": "undo",
268
- component: "span",
269
- disabled: state.index === 0,
270
- onClick: undo
271
- }, UndoButtonProps, {
272
- size: "large"
273
- }), /*#__PURE__*/_react["default"].createElement(_Undo["default"], null)), /*#__PURE__*/_react["default"].createElement(_IconButton["default"], (0, _extends2["default"])({
274
- color: "primary",
275
- "aria-label": "redo",
276
- component: "span",
277
- disabled: state.index === state.history.length,
278
- onClick: redo
279
- }, RedoButtonProps, {
280
- size: "large"
281
- }), /*#__PURE__*/_react["default"].createElement(_Redo["default"], null)), /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
282
- color: "primary",
283
- onClick: pushWrapper,
284
- disabled: value.length >= maxItems
285
- }, AddButtonProps), combinedButtonLabels.add)), description && /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
286
- item: true,
287
- xs: 12
288
- }, DescriptionGridProps), /*#__PURE__*/_react["default"].createElement(_Typography["default"], (0, _extends2["default"])({
289
- variant: "subtitle1"
290
- }, DescriptionProps), description)), /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
291
- item: true,
292
- xs: 12
293
- }, BodyGridProps), value.length <= 0 ? /*#__PURE__*/_react["default"].createElement(_Typography["default"], (0, _extends2["default"])({
294
- variant: "body1",
295
- gutterBottom: true,
296
- className: classes.centerText
297
- }, NoItemsProps), noItemsMessage) : map(function (name, index) {
298
- return /*#__PURE__*/_react["default"].createElement(ArrayItem, {
299
- key: name,
300
- fields: formFields,
301
- name: name,
302
- fieldIndex: index,
303
- remove: removeWrapper,
304
- length: value.length,
305
- minItems: minItems,
306
- removeLabel: combinedButtonLabels.remove,
307
- FieldContainerProps: FieldContainerProps,
308
- FieldGroupGridProps: FieldGroupGridProps,
309
- RemoveButtonGridProps: RemoveButtonGridProps,
310
- RemoveButtonProps: RemoveButtonProps
311
- });
312
- })), (isError || submitError) && /*#__PURE__*/_react["default"].createElement(_Grid["default"], (0, _extends2["default"])({
313
- item: true,
314
- xs: 12
315
- }, FormHelperTextGridProps), /*#__PURE__*/_react["default"].createElement(_FormHelperText["default"], FormHelperTextProps, error || submitError)));
316
- })));
120
+ exports.reducer = reducer;
121
+ var DynamicArray = function (_a) {
122
+ var props = __rest(_a, []);
123
+ var _b = (0, react_form_renderer_2.useFieldApi)(props), arrayValidator = _b.arrayValidator, label = _b.label, description = _b.description, formFields = _b.fields, defaultItem = _b.defaultItem, meta = _b.meta, _c = _b.minItems, minItems = _c === void 0 ? 0 : _c, _d = _b.maxItems, maxItems = _d === void 0 ? Infinity : _d, _e = _b.noItemsMessage, noItemsMessage = _e === void 0 ? 'No items added' : _e, _f = _b.FormFieldGridProps, FormFieldGridProps = _f === void 0 ? {} : _f, _g = _b.FormControlProps, FormControlProps = _g === void 0 ? {} : _g, buttonLabels = _b.buttonLabels, _h = _b.GridContainerProps, GridContainerProps = _h === void 0 ? {} : _h, _j = _b.HeaderGridProps, HeaderGridProps = _j === void 0 ? {} : _j, _k = _b.HeaderProps, HeaderProps = _k === void 0 ? {} : _k, _l = _b.UndoButtonProps, UndoButtonProps = _l === void 0 ? {} : _l, _m = _b.RedoButtonProps, RedoButtonProps = _m === void 0 ? {} : _m, _o = _b.AddButtonProps, AddButtonProps = _o === void 0 ? {} : _o, _p = _b.DescriptionGridProps, DescriptionGridProps = _p === void 0 ? {} : _p, _q = _b.DescriptionProps, DescriptionProps = _q === void 0 ? {} : _q, _r = _b.BodyGridProps, BodyGridProps = _r === void 0 ? {} : _r, _s = _b.NoItemsProps, NoItemsProps = _s === void 0 ? {} : _s, _t = _b.FormHelperTextGridProps, FormHelperTextGridProps = _t === void 0 ? {} : _t, _u = _b.FormHelperTextProps, FormHelperTextProps = _u === void 0 ? {} : _u, _v = _b.FieldContainerProps, FieldContainerProps = _v === void 0 ? {} : _v, _w = _b.FieldGroupGridProps, FieldGroupGridProps = _w === void 0 ? {} : _w, _x = _b.RemoveButtonGridProps, RemoveButtonGridProps = _x === void 0 ? {} : _x, _y = _b.RemoveButtonProps, RemoveButtonProps = _y === void 0 ? {} : _y, rest = __rest(_b, ["arrayValidator", "label", "description", "fields", "defaultItem", "meta", "minItems", "maxItems", "noItemsMessage", "FormFieldGridProps", "FormControlProps", "buttonLabels", "GridContainerProps", "HeaderGridProps", "HeaderProps", "UndoButtonProps", "RedoButtonProps", "AddButtonProps", "DescriptionGridProps", "DescriptionProps", "BodyGridProps", "NoItemsProps", "FormHelperTextGridProps", "FormHelperTextProps", "FieldContainerProps", "FieldGroupGridProps", "RemoveButtonGridProps", "RemoveButtonProps"]);
124
+ var _z = (0, react_1.useReducer)(exports.reducer, initialState), state = _z[0], dispatch = _z[1];
125
+ var combinedButtonLabels = __assign(__assign({}, defaultButtonLabels), buttonLabels);
126
+ var dirty = meta.dirty, submitFailed = meta.submitFailed, error = meta.error, submitError = meta.submitError;
127
+ var isError = (dirty || submitFailed) && error && typeof error === 'string';
128
+ return ((0, jsx_runtime_1.jsx)(StyledFormFieldGrid, __assign({}, FormFieldGridProps, { className: (0, clsx_1.default)(classes.fieldArrayGroup, FormFieldGridProps.className), children: (0, jsx_runtime_1.jsx)(material_1.FormControl, __assign({ component: "fieldset", error: isError || submitError }, FormControlProps, { className: (0, clsx_1.default)(classes.formControl, FormControlProps.className), children: (0, jsx_runtime_1.jsx)(react_form_renderer_1.FieldArray, { name: rest.input.name, validate: arrayValidator, children: function (_a) {
129
+ var _b = _a.fields, map = _b.map, _c = _b.value, value = _c === void 0 ? [] : _c, push = _b.push, remove = _b.remove;
130
+ var pushWrapper = function () {
131
+ dispatch({ type: 'resetHistory' });
132
+ push(defaultItem);
133
+ };
134
+ var removeWrapper = function (index) {
135
+ dispatch({ type: 'action', action: { action: 'remove', value: value[index] } });
136
+ remove(index);
137
+ };
138
+ var undo = function () {
139
+ push(state.history[state.index - 1].value);
140
+ dispatch({ type: 'undo' });
141
+ };
142
+ var redo = function () {
143
+ remove(value.length - 1);
144
+ dispatch({ type: 'redo' });
145
+ };
146
+ return ((0, jsx_runtime_1.jsxs)(material_1.Grid, __assign({ container: true, spacing: 3 }, GridContainerProps, { children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, __assign({ item: true, xs: 12, className: classes.header }, HeaderGridProps, { children: [label && ((0, jsx_runtime_1.jsx)(material_1.Typography, __assign({ variant: "h6", className: classes.label }, HeaderProps, { children: label }))), (0, jsx_runtime_1.jsx)(material_1.IconButton, __assign({ color: "primary", "aria-label": "undo", component: "span", disabled: state.index === 0, onClick: undo }, UndoButtonProps, { size: "large", children: (0, jsx_runtime_1.jsx)(Undo_1.default, {}) })), (0, jsx_runtime_1.jsx)(material_1.IconButton, __assign({ color: "primary", "aria-label": "redo", component: "span", disabled: state.index === state.history.length, onClick: redo }, RedoButtonProps, { size: "large", children: (0, jsx_runtime_1.jsx)(Redo_1.default, {}) })), (0, jsx_runtime_1.jsx)(material_1.Button, __assign({ color: "primary", onClick: pushWrapper, disabled: value.length >= maxItems }, AddButtonProps, { children: combinedButtonLabels.add }))] })), description && ((0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, xs: 12 }, DescriptionGridProps, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, __assign({ variant: "subtitle1" }, DescriptionProps, { children: description })) }))), (0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, xs: 12 }, BodyGridProps, { children: value.length <= 0 ? ((0, jsx_runtime_1.jsx)(material_1.Typography, __assign({ variant: "body1", gutterBottom: true, className: classes.centerText }, NoItemsProps, { children: noItemsMessage }))) : (map(function (name, index) { return ((0, jsx_runtime_1.jsx)(ArrayItem, { fields: formFields, name: name, fieldIndex: index, remove: removeWrapper, length: value.length, minItems: minItems, removeLabel: combinedButtonLabels.remove, FieldContainerProps: FieldContainerProps, FieldGroupGridProps: FieldGroupGridProps, RemoveButtonGridProps: RemoveButtonGridProps, RemoveButtonProps: RemoveButtonProps }, name)); })) })), (isError || submitError) && ((0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, xs: 12 }, FormHelperTextGridProps, { children: (0, jsx_runtime_1.jsx)(material_1.FormHelperText, __assign({}, FormHelperTextProps, { children: error || submitError })) })))] })));
147
+ } }, rest.input.name) })) })));
317
148
  };
318
- var _default = exports["default"] = DynamicArray;
149
+ exports.default = DynamicArray;
150
+ //# sourceMappingURL=field-array.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-array.js","sourceRoot":"","sources":["../src/field-array/field-array.tsx"],"names":[],"mappings":"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"}
@@ -1,26 +1,24 @@
1
1
  "use strict";
2
-
3
- var _typeof = require("@babel/runtime/helpers/typeof");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- var _exportNames = {};
8
- Object.defineProperty(exports, "default", {
9
- enumerable: true,
10
- get: function get() {
11
- return _fieldArray["default"];
12
- }
13
- });
14
- var _fieldArray = _interopRequireWildcard(require("./field-array"));
15
- Object.keys(_fieldArray).forEach(function (key) {
16
- if (key === "default" || key === "__esModule") return;
17
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
18
- if (key in exports && exports[key] === _fieldArray[key]) return;
19
- Object.defineProperty(exports, key, {
20
- enumerable: true,
21
- get: function get() {
22
- return _fieldArray[key];
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
23
7
  }
24
- });
25
- });
26
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.default = void 0;
21
+ var field_array_1 = require("./field-array");
22
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(field_array_1).default; } });
23
+ __exportStar(require("./field-array"), exports);
24
+ //# sourceMappingURL=index.js.map