iglooform 2.4.9 → 2.4.13

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 (208) hide show
  1. package/es/admin-upload/index.d.ts +2 -0
  2. package/es/admin-upload/index.js +25 -11
  3. package/es/admin-upload/job-list.js +2 -2
  4. package/es/alert-message/index.js +2 -2
  5. package/es/amount/index.js +2 -2
  6. package/es/back-top/index.js +2 -2
  7. package/es/button/index.js +2 -2
  8. package/es/button/style/index.less +23 -19
  9. package/es/card-detail/card-item.js +1 -1
  10. package/es/card-detail/card.js +2 -2
  11. package/es/card-detail/utils.js +3 -3
  12. package/es/checkbox/index.js +2 -2
  13. package/es/claim-list/index.js +2 -2
  14. package/es/confirmation/index.js +2 -2
  15. package/es/date-picker/buddhist.js +2 -2
  16. package/es/date-picker/index.js +2 -2
  17. package/es/declaration/index.js +2 -2
  18. package/es/detail-panel/index.js +2 -2
  19. package/es/example/index.js +6 -7
  20. package/es/filter/index.d.ts +1 -0
  21. package/es/filter/index.js +10 -6
  22. package/es/form/addable-section/index.d.ts +19 -0
  23. package/es/form/addable-section/index.js +211 -0
  24. package/es/form/addable-section/style/index.d.ts +1 -0
  25. package/es/form/addable-section/style/index.js +1 -0
  26. package/es/form/addable-section/style/index.less +22 -0
  27. package/es/form/divider/index.js +2 -2
  28. package/es/form/element/index.js +30 -11
  29. package/es/form/element/style/index.less +5 -0
  30. package/es/form/index.js +7 -5
  31. package/es/form/login/index.js +1 -1
  32. package/es/form/page/index.js +1 -1
  33. package/es/form/page/style/index.less +1 -1
  34. package/es/form/pages/index.js +2 -3
  35. package/es/form/pages/style/index.less +3 -1
  36. package/es/form/render/index.js +1 -1
  37. package/es/form/section/index.js +4 -4
  38. package/es/form/step/index.js +1 -1
  39. package/es/form/steps/index.js +2 -3
  40. package/es/{form/context.d.ts → form-context.d.ts} +1 -0
  41. package/es/{form/context.js → form-context.js} +0 -0
  42. package/es/free-form/addable-section/index.d.ts +18 -0
  43. package/es/free-form/addable-section/index.js +286 -0
  44. package/es/free-form/addable-section/style/index.d.ts +1 -0
  45. package/es/free-form/addable-section/style/index.js +1 -0
  46. package/es/free-form/addable-section/style/index.less +22 -0
  47. package/es/free-form/element/index.js +22 -14
  48. package/es/free-form/element/style/index.less +8 -2
  49. package/es/free-form/index.d.ts +5 -1
  50. package/es/free-form/index.js +8 -5
  51. package/es/free-form/page/index.js +8 -7
  52. package/es/free-form/page/style/index.less +3 -1
  53. package/es/free-form/pages/index.js +2 -2
  54. package/es/free-form/section/index.js +10 -9
  55. package/es/free-form/section/style/index.less +4 -0
  56. package/es/free-form/step/index.js +7 -6
  57. package/es/free-form/steps/index.js +2 -2
  58. package/es/global-message/index.js +1 -1
  59. package/es/index.d.ts +1 -0
  60. package/es/index.js +2 -1
  61. package/es/input/amount.js +2 -2
  62. package/es/input/credit-card.js +2 -2
  63. package/es/input/email.js +2 -2
  64. package/es/input/expiry-date.js +2 -2
  65. package/es/input/input-number.js +2 -2
  66. package/es/input/input.js +2 -2
  67. package/es/input/otp.js +2 -2
  68. package/es/input/password.js +2 -2
  69. package/es/input/style/index.less +9 -1
  70. package/es/input/text-area.js +2 -2
  71. package/es/layout/header.js +3 -3
  72. package/es/layout/index.js +2 -2
  73. package/es/locale/en-US/messages.json +2 -0
  74. package/es/locale/id-ID/messages.json +2 -0
  75. package/es/locale/locale-provider.js +2 -2
  76. package/es/locale/th-TH/messages.json +2 -0
  77. package/es/locale/vi-VN/messages.json +2 -0
  78. package/es/locale/zh-CN/messages.json +2 -0
  79. package/es/media/preview.js +2 -2
  80. package/es/mobile-insurer-detail/index.js +2 -2
  81. package/es/mobile-insurer-list/index.js +2 -2
  82. package/es/modal/index.d.ts +4 -3
  83. package/es/modal/index.js +6 -3
  84. package/es/modal/style/index.less +24 -5
  85. package/es/policy-list/index.js +2 -2
  86. package/es/policy-list/policy-card.js +2 -2
  87. package/es/radio/index.js +2 -2
  88. package/es/select/attached-select.js +2 -2
  89. package/es/select/select.js +2 -2
  90. package/es/select/style/index.less +1 -1
  91. package/es/status-box/index.js +2 -2
  92. package/es/table/index.js +3 -3
  93. package/es/tabs/index.js +2 -2
  94. package/es/tabs/style/index.less +1 -1
  95. package/es/types.d.ts +5 -2
  96. package/es/upload/index.d.ts +2 -1
  97. package/es/upload/index.js +121 -77
  98. package/es/upload-photo/index.d.ts +2 -1
  99. package/es/upload-photo/index.js +123 -79
  100. package/es/utils/form-utils.d.ts +1 -0
  101. package/es/utils/form-utils.js +34 -12
  102. package/lib/admin-upload/index.d.ts +2 -0
  103. package/lib/admin-upload/index.js +25 -11
  104. package/lib/admin-upload/job-list.js +2 -2
  105. package/lib/alert-message/index.js +2 -2
  106. package/lib/amount/index.js +2 -2
  107. package/lib/back-top/index.js +2 -2
  108. package/lib/button/index.js +2 -2
  109. package/lib/button/style/index.less +23 -19
  110. package/lib/card-detail/card-item.js +1 -1
  111. package/lib/card-detail/card.js +2 -2
  112. package/lib/card-detail/utils.js +3 -3
  113. package/lib/checkbox/index.js +2 -2
  114. package/lib/claim-list/index.js +2 -2
  115. package/lib/confirmation/index.js +2 -2
  116. package/lib/date-picker/buddhist.js +2 -2
  117. package/lib/date-picker/index.js +2 -2
  118. package/lib/declaration/index.js +2 -2
  119. package/lib/detail-panel/index.js +2 -2
  120. package/lib/example/index.js +7 -8
  121. package/lib/filter/index.d.ts +1 -0
  122. package/lib/filter/index.js +10 -6
  123. package/lib/form/addable-section/index.d.ts +19 -0
  124. package/lib/form/addable-section/index.js +232 -0
  125. package/lib/form/addable-section/style/index.d.ts +1 -0
  126. package/lib/form/addable-section/style/index.js +3 -0
  127. package/lib/form/addable-section/style/index.less +22 -0
  128. package/lib/form/divider/index.js +2 -2
  129. package/lib/form/element/index.js +32 -12
  130. package/lib/form/element/style/index.less +5 -0
  131. package/lib/form/elements.js +1 -1
  132. package/lib/form/index.js +8 -6
  133. package/lib/form/login/index.js +2 -2
  134. package/lib/form/page/index.js +2 -2
  135. package/lib/form/page/style/index.less +1 -1
  136. package/lib/form/pages/index.js +3 -4
  137. package/lib/form/pages/style/index.less +3 -1
  138. package/lib/form/render/index.js +2 -2
  139. package/lib/form/section/index.js +5 -5
  140. package/lib/form/step/index.js +2 -2
  141. package/lib/form/steps/index.js +3 -4
  142. package/lib/{form/context.d.ts → form-context.d.ts} +1 -0
  143. package/lib/{form/context.js → form-context.js} +0 -0
  144. package/lib/free-form/addable-section/index.d.ts +18 -0
  145. package/lib/free-form/addable-section/index.js +306 -0
  146. package/lib/free-form/addable-section/style/index.d.ts +1 -0
  147. package/lib/free-form/addable-section/style/index.js +3 -0
  148. package/lib/free-form/addable-section/style/index.less +22 -0
  149. package/lib/free-form/element/index.js +23 -15
  150. package/lib/free-form/element/style/index.less +8 -2
  151. package/lib/free-form/index.d.ts +5 -1
  152. package/lib/free-form/index.js +9 -6
  153. package/lib/free-form/page/index.js +9 -8
  154. package/lib/free-form/page/style/index.less +3 -1
  155. package/lib/free-form/pages/index.js +2 -2
  156. package/lib/free-form/section/index.js +11 -10
  157. package/lib/free-form/section/style/index.less +4 -0
  158. package/lib/free-form/step/index.js +8 -7
  159. package/lib/free-form/steps/index.js +3 -3
  160. package/lib/global-message/index.js +1 -1
  161. package/lib/index.d.ts +1 -0
  162. package/lib/index.js +11 -2
  163. package/lib/input/amount.js +2 -2
  164. package/lib/input/credit-card.js +2 -2
  165. package/lib/input/email.js +2 -2
  166. package/lib/input/expiry-date.js +2 -2
  167. package/lib/input/input-number.js +2 -2
  168. package/lib/input/input.js +2 -2
  169. package/lib/input/otp.js +2 -2
  170. package/lib/input/password.js +2 -2
  171. package/lib/input/style/index.less +9 -1
  172. package/lib/input/text-area.js +2 -2
  173. package/lib/layout/header.js +3 -3
  174. package/lib/layout/index.js +2 -2
  175. package/lib/locale/en-US/messages.json +2 -0
  176. package/lib/locale/id-ID/messages.json +2 -0
  177. package/lib/locale/locale-provider.js +2 -2
  178. package/lib/locale/th-TH/messages.json +2 -0
  179. package/lib/locale/vi-VN/messages.json +2 -0
  180. package/lib/locale/zh-CN/messages.json +2 -0
  181. package/lib/media/preview.js +2 -2
  182. package/lib/mobile-insurer-detail/index.js +2 -2
  183. package/lib/mobile-insurer-list/index.js +2 -2
  184. package/lib/modal/index.d.ts +4 -3
  185. package/lib/modal/index.js +6 -3
  186. package/lib/modal/style/index.less +24 -5
  187. package/lib/policy-list/index.js +2 -2
  188. package/lib/policy-list/policy-card.js +2 -2
  189. package/lib/radio/index.js +2 -2
  190. package/lib/select/attached-select.js +2 -2
  191. package/lib/select/select.js +2 -2
  192. package/lib/select/style/index.less +1 -1
  193. package/lib/status-box/index.js +2 -2
  194. package/lib/table/index.js +3 -3
  195. package/lib/tabs/index.js +2 -2
  196. package/lib/tabs/style/index.less +1 -1
  197. package/lib/types.d.ts +5 -2
  198. package/lib/upload/index.d.ts +2 -1
  199. package/lib/upload/index.js +122 -77
  200. package/lib/upload-photo/index.d.ts +2 -1
  201. package/lib/upload-photo/index.js +124 -79
  202. package/lib/utils/form-utils.d.ts +1 -0
  203. package/lib/utils/form-utils.js +33 -12
  204. package/package.json +1 -1
  205. package/es/free-form/context.d.ts +0 -19
  206. package/es/free-form/context.js +0 -7
  207. package/lib/free-form/context.d.ts +0 -19
  208. package/lib/free-form/context.js +0 -19
@@ -0,0 +1,232 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ require("antd/es/row/style");
9
+
10
+ var _row = _interopRequireDefault(require("antd/es/row"));
11
+
12
+ require("antd/es/col/style");
13
+
14
+ var _col = _interopRequireDefault(require("antd/es/col"));
15
+
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+
18
+ var _react = require("react");
19
+
20
+ var _element = _interopRequireDefault(require("../element"));
21
+
22
+ var _formContext = _interopRequireDefault(require("../../form-context"));
23
+
24
+ var _formUtils = require("../../utils/form-utils");
25
+
26
+ var _typography = _interopRequireDefault(require("../../typography"));
27
+
28
+ var _button = _interopRequireDefault(require("../../button"));
29
+
30
+ var _locale = require("../../locale");
31
+
32
+ require("./style/index.less");
33
+
34
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
+
36
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
37
+
38
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
39
+
40
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
41
+
42
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
43
+
44
+ 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."); }
45
+
46
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
47
+
48
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
49
+
50
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
51
+
52
+ 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."); }
53
+
54
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
55
+
56
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
57
+
58
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
59
+
60
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
61
+
62
+ var AddableSection = function AddableSection(_ref) {
63
+ var parentName = _ref.parentName,
64
+ config = _ref.config,
65
+ preview = _ref.preview,
66
+ disabled = _ref.disabled,
67
+ setShowStepButton = _ref.setShowStepButton;
68
+ var _config$elements = config.elements,
69
+ elements = _config$elements === void 0 ? [] : _config$elements,
70
+ name = config.name,
71
+ label = config.label,
72
+ _config$labelProps = config.labelProps,
73
+ labelProps = _config$labelProps === void 0 ? {} : _config$labelProps,
74
+ _config$contentProps = config.contentProps,
75
+ contentProps = _config$contentProps === void 0 ? {} : _config$contentProps,
76
+ _config$style = config.style,
77
+ style = _config$style === void 0 ? {} : _config$style,
78
+ _config$max = config.max,
79
+ max = _config$max === void 0 ? Number.MAX_SAFE_INTEGER : _config$max,
80
+ _config$initCount = config.initCount,
81
+ initCount = _config$initCount === void 0 ? 1 : _config$initCount,
82
+ _config$min = config.min,
83
+ min = _config$min === void 0 ? initCount : _config$min,
84
+ addButtonText = config.addButtonText,
85
+ addButtonIcon = config.addButtonIcon;
86
+
87
+ var _useContext = (0, _react.useContext)(_locale.LocaleContext),
88
+ formatMessage = _useContext.formatMessage;
89
+
90
+ var _useContext2 = (0, _react.useContext)(_formContext.default),
91
+ form = _useContext2.form,
92
+ requiredMark = _useContext2.requiredMark;
93
+
94
+ var namePath = (0, _formUtils.calcNamePath)(parentName, name);
95
+ var reducer = (0, _react.useCallback)(function (state, action) {
96
+ if (action.type === 'add') {
97
+ return [].concat(_toConsumableArray(state), [action.key]);
98
+ }
99
+
100
+ var found = false;
101
+ return state.filter(function (key, index) {
102
+ if (key === action.key) {
103
+ found = true;
104
+ }
105
+
106
+ if (found) {
107
+ if (index === state.length - 1) {
108
+ form === null || form === void 0 ? void 0 : form.setFields([{
109
+ name: (0, _formUtils.calcNamePath)(namePath, index),
110
+ value: undefined
111
+ }]);
112
+ } else {
113
+ form === null || form === void 0 ? void 0 : form.setFields([{
114
+ name: (0, _formUtils.calcNamePath)(namePath, index),
115
+ value: form.getFieldValue((0, _formUtils.calcNamePath)(namePath, index + 1))
116
+ }]);
117
+ }
118
+ }
119
+
120
+ return key !== action.key;
121
+ });
122
+ }, []);
123
+
124
+ var _useReducer = (0, _react.useReducer)(reducer, function () {
125
+ var init = [];
126
+ var value = (form === null || form === void 0 ? void 0 : form.getFieldValue(namePath)) || [];
127
+
128
+ for (var i = 0; i < Math.max(min, value.length, initCount); i++) {
129
+ init.push(Date.now() + Math.random());
130
+ }
131
+
132
+ return init;
133
+ }()),
134
+ _useReducer2 = _slicedToArray(_useReducer, 2),
135
+ groupKeys = _useReducer2[0],
136
+ dispath = _useReducer2[1];
137
+
138
+ var _calcFormItemProps = (0, _formUtils.calcFormItemProps)(config, {
139
+ requiredMark: requiredMark
140
+ }, form, parentName),
141
+ formItemProps = _calcFormItemProps.formItemProps,
142
+ elementProps = _calcFormItemProps.elementProps,
143
+ display = _calcFormItemProps.display;
144
+
145
+ if (formItemProps.copiedValue.copied) {
146
+ var currentValue = form === null || form === void 0 ? void 0 : form.getFieldValue(namePath);
147
+
148
+ var value = _objectSpread(_objectSpread({}, currentValue), formItemProps.copiedValue.value);
149
+
150
+ form === null || form === void 0 ? void 0 : form.setFields([{
151
+ name: namePath,
152
+ value: value,
153
+ errors: []
154
+ }]);
155
+ }
156
+
157
+ if (!display) {
158
+ return null;
159
+ }
160
+
161
+ var groups = groupKeys.map(function (key, index) {
162
+ var parentName = (0, _formUtils.calcNamePath)(namePath, index);
163
+ return (0, _jsxRuntime.jsxs)(_col.default, {
164
+ span: 24,
165
+ className: 'igloo-freeform-addable-section',
166
+ children: [(groupKeys.length > min && !preview || label) && (0, _jsxRuntime.jsxs)(_row.default, {
167
+ justify: "space-between",
168
+ className: 'igloo-addable-section-label',
169
+ children: [label ? (0, _jsxRuntime.jsxs)(_typography.default, _objectSpread(_objectSpread({}, labelProps), {}, {
170
+ level: "h4",
171
+ wrapElement: "div",
172
+ children: [label, " ", index + 1]
173
+ }), void 0) : (0, _jsxRuntime.jsx)("div", {}, void 0), groupKeys.length > min && !preview && (0, _jsxRuntime.jsx)(_button.default, {
174
+ type: "link",
175
+ className: "igloo-addable-section-label-remove",
176
+ onClick: function onClick() {
177
+ return dispath({
178
+ type: 'remove',
179
+ key: key
180
+ });
181
+ },
182
+ children: formatMessage({
183
+ id: 'Remove'
184
+ })
185
+ }, void 0)]
186
+ }, void 0), (0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({
187
+ className: 'igloo-freeform-addable-section-content'
188
+ }, contentProps), {}, {
189
+ children: (0, _jsxRuntime.jsx)(_row.default, {
190
+ gutter: [32, preview ? 16 : 24],
191
+ children: elements.map(function (child, index) {
192
+ return (0, _jsxRuntime.jsx)(_element.default, {
193
+ parentName: parentName,
194
+ config: child,
195
+ disabled: elementProps.disabled || disabled,
196
+ preview: preview,
197
+ setShowStepButton: setShowStepButton
198
+ }, index);
199
+ })
200
+ }, void 0)
201
+ }), void 0)]
202
+ }, key);
203
+ });
204
+ return (0, _jsxRuntime.jsxs)("div", {
205
+ className: "igloo-freeform-addable-section-container",
206
+ style: {
207
+ width: '100%'
208
+ },
209
+ children: [groups, groupKeys.length < max && !preview && (0, _jsxRuntime.jsx)(_col.default, {
210
+ span: 24,
211
+ style: {
212
+ marginTop: 16
213
+ },
214
+ children: (0, _jsxRuntime.jsx)(_button.default, {
215
+ onClick: function onClick() {
216
+ return dispath({
217
+ type: 'add',
218
+ key: Date.now()
219
+ });
220
+ },
221
+ className: "igloo-addable-section-button",
222
+ icon: addButtonIcon,
223
+ children: addButtonText || "".concat(formatMessage({
224
+ id: 'Add'
225
+ }), " ").concat(label)
226
+ }, void 0)
227
+ }, void 0)]
228
+ }, void 0);
229
+ };
230
+
231
+ var _default = AddableSection;
232
+ exports.default = _default;
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ require("./index.less");
@@ -0,0 +1,22 @@
1
+ .igloo-freeform-addable-section-container {
2
+ .igloo-freeform-addable-section {
3
+ .igloo-freeform-addable-section-label {
4
+ .igloo-freeform-addable-section-label-remove {
5
+ height: auto;
6
+ border: none;
7
+ }
8
+ }
9
+
10
+ .igloo-freeform-addable-section-content {
11
+ margin-top: 16px;
12
+ }
13
+
14
+ & + .igloo-freeform-addable-section {
15
+ margin-top: 24px;
16
+ }
17
+ }
18
+
19
+ .igloo-freeform-addable-section-button {
20
+ min-width: 221px;
21
+ }
22
+ }
@@ -23,9 +23,9 @@ var _excluded = ["className"];
23
23
 
24
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
25
 
26
- 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; }
26
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
27
 
28
- 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) { _defineProperty(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; }
28
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29
29
 
30
30
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
31
31
 
@@ -25,15 +25,17 @@ var _jsxRuntime = require("react/jsx-runtime");
25
25
 
26
26
  var _react = require("react");
27
27
 
28
- var _icons = require("@ant-design/icons");
28
+ var _iglooicon = require("iglooicon");
29
29
 
30
30
  var _formUtils = require("../../utils/form-utils");
31
31
 
32
32
  var _section = _interopRequireDefault(require("../section"));
33
33
 
34
+ var _addableSection = _interopRequireDefault(require("../addable-section"));
35
+
34
36
  var _elements = _interopRequireDefault(require("../elements"));
35
37
 
36
- var _context = _interopRequireDefault(require("../context"));
38
+ var _formContext = _interopRequireDefault(require("../../form-context"));
37
39
 
38
40
  var _invariant = _interopRequireDefault(require("invariant"));
39
41
 
@@ -52,13 +54,13 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
52
54
 
53
55
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
54
56
 
55
- 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; }
57
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
56
58
 
57
- 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) { _defineProperty(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; }
59
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
58
60
 
59
61
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
60
62
 
61
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
63
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
62
64
 
63
65
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
64
66
 
@@ -93,7 +95,7 @@ var Element = function Element(_ref) {
93
95
  previewLabel = config.previewLabel;
94
96
  (0, _invariant.default)(!(config.selectValue || config.copyValue || config.initialValue) || config.name, 'Form item with selectValue/copyValue/initialValue should have a name.');
95
97
 
96
- var _useContext = (0, _react.useContext)(_context.default),
98
+ var _useContext = (0, _react.useContext)(_formContext.default),
97
99
  form = _useContext.form,
98
100
  requiredMark = _useContext.requiredMark,
99
101
  registerDependencies = _useContext.registerDependencies;
@@ -115,7 +117,8 @@ var Element = function Element(_ref) {
115
117
  getOptions = config.getOptions,
116
118
  subscribedFields = config.subscribedFields,
117
119
  disabled = config.disabled,
118
- extraLabel = config.extraLabel;
120
+ extraLabel = config.extraLabel,
121
+ requiredAsserts = config.requiredAsserts;
119
122
  var dependentField = dependencies || [];
120
123
 
121
124
  if (Array.isArray(subscribedFields)) {
@@ -129,13 +132,20 @@ var Element = function Element(_ref) {
129
132
  });
130
133
  }
131
134
 
135
+ if (requiredAsserts && requiredAsserts.length) {
136
+ requiredAsserts.forEach(function (_ref3) {
137
+ var field = _ref3.field;
138
+ return dependentField.push(field);
139
+ });
140
+ }
141
+
132
142
  if (copyValue) {
133
143
  dependentField.push(copyValue.assert.field);
134
144
  }
135
145
 
136
146
  if (selectValue && selectValue.length) {
137
- selectValue.forEach(function (_ref3) {
138
- var assert = _ref3.assert;
147
+ selectValue.forEach(function (_ref4) {
148
+ var assert = _ref4.assert;
139
149
  return dependentField.push(assert.field);
140
150
  });
141
151
  }
@@ -149,8 +159,8 @@ var Element = function Element(_ref) {
149
159
  }
150
160
 
151
161
  if (Array.isArray(disabled)) {
152
- disabled.forEach(function (_ref4) {
153
- var field = _ref4.field;
162
+ disabled.forEach(function (_ref5) {
163
+ var field = _ref5.field;
154
164
  return dependentField.push(field);
155
165
  });
156
166
  } else if (_typeof(disabled) === 'object') {
@@ -179,6 +189,16 @@ var Element = function Element(_ref) {
179
189
  }, void 0);
180
190
  }
181
191
 
192
+ if (type === 'AddableSection') {
193
+ return (0, _jsxRuntime.jsx)(_addableSection.default, {
194
+ parentName: parentName,
195
+ config: config,
196
+ preview: preview,
197
+ disabled: disabled,
198
+ setShowStepButton: setShowStepButton
199
+ }, void 0);
200
+ }
201
+
182
202
  var _calcFormItemProps = (0, _formUtils.calcFormItemProps)(config, _objectSpread(_objectSpread({}, extraConfig), {}, {
183
203
  requiredMark: requiredMark
184
204
  }), form, parentName),
@@ -314,7 +334,7 @@ var Element = function Element(_ref) {
314
334
  sm: 24,
315
335
  xs: 24,
316
336
  className: "igloo-element-preview-value",
317
- children: [error && !!error.length && (0, _jsxRuntime.jsx)(_icons.CloseCircleFilled, {
337
+ children: [error && !!error.length && (0, _jsxRuntime.jsx)(_iglooicon.AlertFilled, {
318
338
  className: "igloo-element-preview-value-icon"
319
339
  }, void 0), previewFormater ? previewFormater(value, form) : value || '-']
320
340
  }, void 0)]
@@ -20,6 +20,11 @@
20
20
  white-space: pre-wrap;
21
21
  word-break: break-word;
22
22
  line-height: 24px;
23
+
24
+ .igloo-element-preview-value-icon {
25
+ color: @error-color;
26
+ margin-right: 8px;
27
+ }
23
28
  }
24
29
  }
25
30
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
package/lib/form/index.js CHANGED
@@ -21,7 +21,7 @@ var _steps = _interopRequireDefault(require("./steps"));
21
21
 
22
22
  var _login = _interopRequireDefault(require("./login"));
23
23
 
24
- var _context3 = _interopRequireDefault(require("./context"));
24
+ var _formContext = _interopRequireDefault(require("../form-context"));
25
25
 
26
26
  var _messages = _interopRequireDefault(require("./messages"));
27
27
 
@@ -35,9 +35,9 @@ var _excluded = ["validateMessages"];
35
35
 
36
36
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
37
37
 
38
- 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; }
38
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
39
39
 
40
- 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) { _defineProperty(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; }
40
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
41
41
 
42
42
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
43
43
 
@@ -80,7 +80,8 @@ var IglooForm = function IglooForm(props, ref) {
80
80
  return window;
81
81
  } : _props$getScrollConta,
82
82
  _props$onFirstModifie = props.onFirstModified,
83
- onFirstModified = _props$onFirstModifie === void 0 ? function () {} : _props$onFirstModifie;
83
+ onFirstModified = _props$onFirstModifie === void 0 ? function () {} : _props$onFirstModifie,
84
+ uploadApi = props.uploadApi;
84
85
 
85
86
  var _Form$useForm = _form.default.useForm(),
86
87
  _Form$useForm2 = _slicedToArray(_Form$useForm, 1),
@@ -250,7 +251,7 @@ var IglooForm = function IglooForm(props, ref) {
250
251
  'igloo-form-without-button': !showSubmitButton
251
252
  }),
252
253
  style: style,
253
- children: (0, _jsxRuntime.jsx)(_context3.default.Provider, {
254
+ children: (0, _jsxRuntime.jsx)(_formContext.default.Provider, {
254
255
  value: _objectSpread({
255
256
  form: form,
256
257
  onCancel: onCancel,
@@ -258,7 +259,8 @@ var IglooForm = function IglooForm(props, ref) {
258
259
  requiredMark: requiredMark,
259
260
  showSubmitButton: showSubmitButton,
260
261
  getScrollContainer: getScrollContainer,
261
- registerDependencies: registerDependencies
262
+ registerDependencies: registerDependencies,
263
+ uploadApi: uploadApi
262
264
  }, locales),
263
265
  children: (0, _jsxRuntime.jsxs)(_form.default, {
264
266
  form: form,
@@ -29,7 +29,7 @@ var _element = _interopRequireDefault(require("../element"));
29
29
 
30
30
  var _formUtils = require("../../utils/form-utils");
31
31
 
32
- var _context = _interopRequireDefault(require("../context"));
32
+ var _formContext = _interopRequireDefault(require("../../form-context"));
33
33
 
34
34
  var _locale = require("../../locale");
35
35
 
@@ -45,7 +45,7 @@ var Login = function Login(_ref) {
45
45
  name = _ref$config.name,
46
46
  label = _ref$config.label;
47
47
 
48
- var _useContext = (0, _react.useContext)(_context.default),
48
+ var _useContext = (0, _react.useContext)(_formContext.default),
49
49
  submitText = _useContext.submitText,
50
50
  submitting = _useContext.submitting,
51
51
  showSubmitButton = _useContext.showSubmitButton;
@@ -27,7 +27,7 @@ var _element = _interopRequireDefault(require("../element"));
27
27
 
28
28
  var _formUtils = require("../../utils/form-utils");
29
29
 
30
- var _context = _interopRequireDefault(require("../context"));
30
+ var _formContext = _interopRequireDefault(require("../../form-context"));
31
31
 
32
32
  var _locale = require("../../locale");
33
33
 
@@ -58,7 +58,7 @@ var Page = function Page(_ref) {
58
58
  _ref$showFooter = _ref.showFooter,
59
59
  showFooter = _ref$showFooter === void 0 ? true : _ref$showFooter;
60
60
 
61
- var _useContext = (0, _react.useContext)(_context.default),
61
+ var _useContext = (0, _react.useContext)(_formContext.default),
62
62
  onCancel = _useContext.onCancel,
63
63
  cancelText = _useContext.cancelText,
64
64
  submitText = _useContext.submitText,
@@ -39,11 +39,11 @@
39
39
  .igloo-page-footer {
40
40
  display: flex;
41
41
  flex-direction: column-reverse;
42
- row-gap: 16px;
43
42
 
44
43
  .igloo-page-cancel-button {
45
44
  min-width: none;
46
45
  width: 100%;
46
+ margin-top: 16px;
47
47
  }
48
48
 
49
49
  .igloo-page-submit-button {
@@ -23,7 +23,7 @@ var _page = _interopRequireDefault(require("../page"));
23
23
 
24
24
  var _formUtils = require("../../utils/form-utils");
25
25
 
26
- var _context2 = _interopRequireDefault(require("../context"));
26
+ var _formContext = _interopRequireDefault(require("../../form-context"));
27
27
 
28
28
  var _locale = require("../../locale");
29
29
 
@@ -76,7 +76,7 @@ var Pages = function Pages(_ref) {
76
76
  var _useContext = (0, _react.useContext)(_locale.LocaleContext),
77
77
  formatMessage = _useContext.formatMessage;
78
78
 
79
- var _useContext2 = (0, _react.useContext)(_context2.default),
79
+ var _useContext2 = (0, _react.useContext)(_formContext.default),
80
80
  form = _useContext2.form,
81
81
  submitText = _useContext2.submitText,
82
82
  previewText = _useContext2.previewText,
@@ -102,7 +102,6 @@ var Pages = function Pages(_ref) {
102
102
  md = _useBreakpoint.md;
103
103
 
104
104
  var renderElements = elements.filter(function (page) {
105
- page.key = page.name || page.key || Math.random();
106
105
  return typeof page.shouldRender !== 'function' || page.shouldRender(form);
107
106
  });
108
107
 
@@ -216,7 +215,7 @@ var Pages = function Pages(_ref) {
216
215
  parentName: (0, _formUtils.calcNamePath)(parentName, name),
217
216
  showFooter: false
218
217
  }, void 0)
219
- }, child.key);
218
+ }, child.key || child.name);
220
219
  }), (0, _jsxRuntime.jsxs)("div", {
221
220
  className: 'igloo-pages-footer',
222
221
  children: [current === 0 && (0, _jsxRuntime.jsx)("div", {}, void 0), current > 0 && (0, _jsxRuntime.jsx)(_button.default, {
@@ -56,21 +56,23 @@
56
56
  padding: 0 16px 24px 16px;
57
57
  display: flex;
58
58
  flex-direction: column-reverse;
59
- row-gap: 16px;
60
59
 
61
60
  .igloo-pages-preview-button {
62
61
  min-width: none;
63
62
  width: 100%;
63
+ margin-top: 16px;
64
64
  }
65
65
 
66
66
  .igloo-pages-next-button {
67
67
  min-width: none;
68
68
  width: 100%;
69
+ margin-top: 16px;
69
70
  }
70
71
 
71
72
  .igloo-pages-cancel-button {
72
73
  min-width: none;
73
74
  width: 100%;
75
+ margin-top: 16px;
74
76
  }
75
77
 
76
78
  .igloo-pages-submit-button {
@@ -9,7 +9,7 @@ var _jsxRuntime = require("react/jsx-runtime");
9
9
 
10
10
  var _react = require("react");
11
11
 
12
- var _context = _interopRequireDefault(require("../context"));
12
+ var _formContext = _interopRequireDefault(require("../../form-context"));
13
13
 
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
@@ -24,7 +24,7 @@ var RenderElement = function RenderElement(_ref) {
24
24
  onChange = _ref.onChange,
25
25
  setShowStepButton = _ref.setShowStepButton;
26
26
 
27
- var _useContext = (0, _react.useContext)(_context.default),
27
+ var _useContext = (0, _react.useContext)(_formContext.default),
28
28
  form = _useContext.form;
29
29
 
30
30
  var memoedRender = (0, _react.useCallback)(render, [render]);
@@ -19,7 +19,7 @@ var _react = require("react");
19
19
 
20
20
  var _element = _interopRequireDefault(require("../element"));
21
21
 
22
- var _context = _interopRequireDefault(require("../context"));
22
+ var _formContext = _interopRequireDefault(require("../../form-context"));
23
23
 
24
24
  var _formUtils = require("../../utils/form-utils");
25
25
 
@@ -31,9 +31,9 @@ var _excluded = ["elements", "name", "label", "labelProps", "contentProps", "sty
31
31
 
32
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
33
 
34
- 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; }
34
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
35
35
 
36
- 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) { _defineProperty(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; }
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37
37
 
38
38
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
39
39
 
@@ -59,7 +59,7 @@ var Section = function Section(_ref) {
59
59
  disabled = _ref.disabled,
60
60
  setShowStepButton = _ref.setShowStepButton;
61
61
 
62
- var _useContext = (0, _react.useContext)(_context.default),
62
+ var _useContext = (0, _react.useContext)(_formContext.default),
63
63
  form = _useContext.form,
64
64
  requiredMark = _useContext.requiredMark;
65
65
 
@@ -98,7 +98,7 @@ var Section = function Section(_ref) {
98
98
  className: 'igloo-section-content'
99
99
  }, contentProps), {}, {
100
100
  children: (0, _jsxRuntime.jsx)(_row.default, {
101
- gutter: [32, 24],
101
+ gutter: [32, preview ? 16 : 24],
102
102
  children: elements.map(function (child, index) {
103
103
  return (0, _jsxRuntime.jsx)(_element.default, {
104
104
  parentName: namePath,