@rjsf/antd 4.1.1 → 4.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/ErrorList.d.ts +4 -0
  2. package/dist/antd.cjs.development.js +1798 -0
  3. package/dist/antd.cjs.development.js.map +1 -0
  4. package/dist/antd.cjs.production.min.js +2 -0
  5. package/dist/antd.cjs.production.min.js.map +1 -0
  6. package/dist/antd.esm.js +1788 -0
  7. package/dist/antd.esm.js.map +1 -0
  8. package/dist/antd.umd.development.js +1799 -0
  9. package/dist/antd.umd.development.js.map +1 -0
  10. package/dist/antd.umd.production.min.js +2 -0
  11. package/dist/antd.umd.production.min.js.map +1 -0
  12. package/dist/components/DatePicker/index.d.ts +24 -0
  13. package/dist/fields/DescriptionField/index.d.ts +5 -0
  14. package/dist/fields/TitleField/index.d.ts +2 -0
  15. package/dist/index.d.ts +57 -0
  16. package/dist/index.js +8 -0
  17. package/dist/templates/ArrayFieldTemplate/ArrayFieldTemplateItem.d.ts +19 -0
  18. package/dist/templates/ArrayFieldTemplate/FixedArrayFieldTemplate.d.ts +2 -0
  19. package/dist/templates/ArrayFieldTemplate/NormalArrayFieldTemplate.d.ts +2 -0
  20. package/dist/templates/ArrayFieldTemplate/index.d.ts +27 -0
  21. package/dist/templates/FieldTemplate/WrapIfAdditional.d.ts +14 -0
  22. package/dist/templates/FieldTemplate/index.d.ts +21 -0
  23. package/dist/templates/ObjectFieldTemplate/index.d.ts +2 -0
  24. package/dist/widgets/AltDateTimeWidget/index.d.ts +13 -0
  25. package/dist/widgets/AltDateWidget/index.d.ts +26 -0
  26. package/dist/widgets/CheckboxWidget/index.d.ts +13 -0
  27. package/dist/widgets/CheckboxesWidget/index.d.ts +13 -0
  28. package/dist/widgets/ColorWidget/index.d.ts +12 -0
  29. package/dist/widgets/DateTimeWidget/index.d.ts +12 -0
  30. package/dist/widgets/DateWidget/index.d.ts +12 -0
  31. package/dist/widgets/EmailWidget/index.d.ts +13 -0
  32. package/dist/widgets/PasswordWidget/index.d.ts +13 -0
  33. package/dist/widgets/RadioWidget/index.d.ts +14 -0
  34. package/dist/widgets/RangeWidget/index.d.ts +15 -0
  35. package/dist/widgets/SelectWidget/index.d.ts +21 -0
  36. package/dist/widgets/SubmitButton/SubmitButton.d.ts +4 -0
  37. package/dist/widgets/SubmitButton/index.d.ts +2 -0
  38. package/dist/widgets/TextWidget/index.d.ts +14 -0
  39. package/dist/widgets/TextareaWidget/index.d.ts +13 -0
  40. package/dist/widgets/URLWidget/index.d.ts +13 -0
  41. package/dist/widgets/UpDownWidget/index.d.ts +12 -0
  42. package/package.json +11 -14
  43. package/dist/cjs/ErrorList.js +0 -44
  44. package/dist/cjs/components/DatePicker/index.js +0 -17
  45. package/dist/cjs/fields/DescriptionField/index.js +0 -22
  46. package/dist/cjs/fields/TitleField/index.js +0 -65
  47. package/dist/cjs/index.js +0 -106
  48. package/dist/cjs/templates/ArrayFieldTemplate/ArrayFieldTemplateItem.js +0 -84
  49. package/dist/cjs/templates/ArrayFieldTemplate/FixedArrayFieldTemplate.js +0 -103
  50. package/dist/cjs/templates/ArrayFieldTemplate/NormalArrayFieldTemplate.js +0 -103
  51. package/dist/cjs/templates/ArrayFieldTemplate/index.js +0 -186
  52. package/dist/cjs/templates/FieldTemplate/WrapIfAdditional.js +0 -123
  53. package/dist/cjs/templates/FieldTemplate/index.js +0 -102
  54. package/dist/cjs/templates/ObjectFieldTemplate/index.js +0 -142
  55. package/dist/cjs/widgets/AltDateTimeWidget/index.js +0 -34
  56. package/dist/cjs/widgets/AltDateWidget/index.js +0 -236
  57. package/dist/cjs/widgets/CheckboxWidget/index.js +0 -57
  58. package/dist/cjs/widgets/CheckboxesWidget/index.js +0 -70
  59. package/dist/cjs/widgets/ColorWidget/index.js +0 -62
  60. package/dist/cjs/widgets/DateTimeWidget/index.js +0 -66
  61. package/dist/cjs/widgets/DateWidget/index.js +0 -66
  62. package/dist/cjs/widgets/EmailWidget/index.js +0 -63
  63. package/dist/cjs/widgets/PasswordWidget/index.js +0 -58
  64. package/dist/cjs/widgets/RadioWidget/index.js +0 -69
  65. package/dist/cjs/widgets/RangeWidget/index.js +0 -72
  66. package/dist/cjs/widgets/SelectWidget/index.js +0 -128
  67. package/dist/cjs/widgets/TextWidget/index.js +0 -81
  68. package/dist/cjs/widgets/TextareaWidget/index.js +0 -64
  69. package/dist/cjs/widgets/URLWidget/index.js +0 -63
  70. package/dist/cjs/widgets/UpDownWidget/index.js +0 -61
  71. package/dist/es/ErrorList.js +0 -30
  72. package/dist/es/components/DatePicker/index.js +0 -5
  73. package/dist/es/fields/DescriptionField/index.js +0 -12
  74. package/dist/es/fields/TitleField/index.js +0 -51
  75. package/dist/es/index.js +0 -69
  76. package/dist/es/templates/ArrayFieldTemplate/ArrayFieldTemplateItem.js +0 -67
  77. package/dist/es/templates/ArrayFieldTemplate/FixedArrayFieldTemplate.js +0 -84
  78. package/dist/es/templates/ArrayFieldTemplate/NormalArrayFieldTemplate.js +0 -84
  79. package/dist/es/templates/ArrayFieldTemplate/index.js +0 -172
  80. package/dist/es/templates/FieldTemplate/WrapIfAdditional.js +0 -105
  81. package/dist/es/templates/FieldTemplate/index.js +0 -89
  82. package/dist/es/templates/ObjectFieldTemplate/index.js +0 -122
  83. package/dist/es/widgets/AltDateTimeWidget/index.js +0 -23
  84. package/dist/es/widgets/AltDateWidget/index.js +0 -215
  85. package/dist/es/widgets/CheckboxWidget/index.js +0 -46
  86. package/dist/es/widgets/CheckboxesWidget/index.js +0 -58
  87. package/dist/es/widgets/ColorWidget/index.js +0 -50
  88. package/dist/es/widgets/DateTimeWidget/index.js +0 -53
  89. package/dist/es/widgets/DateWidget/index.js +0 -53
  90. package/dist/es/widgets/EmailWidget/index.js +0 -51
  91. package/dist/es/widgets/PasswordWidget/index.js +0 -47
  92. package/dist/es/widgets/RadioWidget/index.js +0 -58
  93. package/dist/es/widgets/RangeWidget/index.js +0 -59
  94. package/dist/es/widgets/SelectWidget/index.js +0 -115
  95. package/dist/es/widgets/TextWidget/index.js +0 -68
  96. package/dist/es/widgets/TextareaWidget/index.js +0 -52
  97. package/dist/es/widgets/URLWidget/index.js +0 -51
  98. package/dist/es/widgets/UpDownWidget/index.js +0 -49
  99. package/dist/rjsf-antd.js +0 -38
  100. package/dist/rjsf-antd.js.map +0 -1
@@ -0,0 +1,1799 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@rjsf/core'), require('react'), require('classnames'), require('antd/lib/config-provider/context'), require('antd/lib/form'), require('antd/lib/button'), require('antd/lib/col'), require('antd/lib/input'), require('antd/lib/row'), require('@ant-design/icons/DeleteOutlined'), require('lodash-es'), require('@ant-design/icons/PlusCircleOutlined'), require('@ant-design/icons/ArrowDownOutlined'), require('@ant-design/icons/ArrowUpOutlined'), require('antd/lib/checkbox'), require('dayjs'), require('rc-picker/lib/generate/dayjs'), require('antd/lib/date-picker/generatePicker'), require('antd/lib/radio'), require('antd/lib/slider'), require('antd/lib/select'), require('antd/lib/input-number'), require('antd/lib/alert'), require('antd/lib/list'), require('antd/lib/space'), require('@ant-design/icons/ExclamationCircleOutlined')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', '@rjsf/core', 'react', 'classnames', 'antd/lib/config-provider/context', 'antd/lib/form', 'antd/lib/button', 'antd/lib/col', 'antd/lib/input', 'antd/lib/row', '@ant-design/icons/DeleteOutlined', 'lodash-es', '@ant-design/icons/PlusCircleOutlined', '@ant-design/icons/ArrowDownOutlined', '@ant-design/icons/ArrowUpOutlined', 'antd/lib/checkbox', 'dayjs', 'rc-picker/lib/generate/dayjs', 'antd/lib/date-picker/generatePicker', 'antd/lib/radio', 'antd/lib/slider', 'antd/lib/select', 'antd/lib/input-number', 'antd/lib/alert', 'antd/lib/list', 'antd/lib/space', '@ant-design/icons/ExclamationCircleOutlined'], factory) :
4
+ (global = global || self, factory(global['@rjsf/antd'] = {}, global.core, global.React, global.classNames, global.context, global.Form$1, global.Button, global.Col, global.Input, global.Row, global.DeleteOutlined, global._, global.PlusCircleOutlined, global.ArrowDownOutlined, global.ArrowUpOutlined, global.Checkbox, global.dayjs, global.dayjsGenerateConfig, global.generatePicker, global.Radio, global.Slider, global.Select, global.InputNumber, global.Alert, global.List, global.Space, global.ExclamationCircleOutlined));
5
+ }(this, (function (exports, core, React, classNames, context, Form$1, Button, Col, Input, Row, DeleteOutlined, _, PlusCircleOutlined, ArrowDownOutlined, ArrowUpOutlined, Checkbox, dayjs, dayjsGenerateConfig, generatePicker, Radio, Slider, Select, InputNumber, Alert, List, Space, ExclamationCircleOutlined) { 'use strict';
6
+
7
+ var React__default = 'default' in React ? React['default'] : React;
8
+ classNames = classNames && Object.prototype.hasOwnProperty.call(classNames, 'default') ? classNames['default'] : classNames;
9
+ Form$1 = Form$1 && Object.prototype.hasOwnProperty.call(Form$1, 'default') ? Form$1['default'] : Form$1;
10
+ Button = Button && Object.prototype.hasOwnProperty.call(Button, 'default') ? Button['default'] : Button;
11
+ Col = Col && Object.prototype.hasOwnProperty.call(Col, 'default') ? Col['default'] : Col;
12
+ Input = Input && Object.prototype.hasOwnProperty.call(Input, 'default') ? Input['default'] : Input;
13
+ Row = Row && Object.prototype.hasOwnProperty.call(Row, 'default') ? Row['default'] : Row;
14
+ DeleteOutlined = DeleteOutlined && Object.prototype.hasOwnProperty.call(DeleteOutlined, 'default') ? DeleteOutlined['default'] : DeleteOutlined;
15
+ _ = _ && Object.prototype.hasOwnProperty.call(_, 'default') ? _['default'] : _;
16
+ PlusCircleOutlined = PlusCircleOutlined && Object.prototype.hasOwnProperty.call(PlusCircleOutlined, 'default') ? PlusCircleOutlined['default'] : PlusCircleOutlined;
17
+ ArrowDownOutlined = ArrowDownOutlined && Object.prototype.hasOwnProperty.call(ArrowDownOutlined, 'default') ? ArrowDownOutlined['default'] : ArrowDownOutlined;
18
+ ArrowUpOutlined = ArrowUpOutlined && Object.prototype.hasOwnProperty.call(ArrowUpOutlined, 'default') ? ArrowUpOutlined['default'] : ArrowUpOutlined;
19
+ Checkbox = Checkbox && Object.prototype.hasOwnProperty.call(Checkbox, 'default') ? Checkbox['default'] : Checkbox;
20
+ dayjs = dayjs && Object.prototype.hasOwnProperty.call(dayjs, 'default') ? dayjs['default'] : dayjs;
21
+ dayjsGenerateConfig = dayjsGenerateConfig && Object.prototype.hasOwnProperty.call(dayjsGenerateConfig, 'default') ? dayjsGenerateConfig['default'] : dayjsGenerateConfig;
22
+ generatePicker = generatePicker && Object.prototype.hasOwnProperty.call(generatePicker, 'default') ? generatePicker['default'] : generatePicker;
23
+ Radio = Radio && Object.prototype.hasOwnProperty.call(Radio, 'default') ? Radio['default'] : Radio;
24
+ Slider = Slider && Object.prototype.hasOwnProperty.call(Slider, 'default') ? Slider['default'] : Slider;
25
+ Select = Select && Object.prototype.hasOwnProperty.call(Select, 'default') ? Select['default'] : Select;
26
+ InputNumber = InputNumber && Object.prototype.hasOwnProperty.call(InputNumber, 'default') ? InputNumber['default'] : InputNumber;
27
+ Alert = Alert && Object.prototype.hasOwnProperty.call(Alert, 'default') ? Alert['default'] : Alert;
28
+ List = List && Object.prototype.hasOwnProperty.call(List, 'default') ? List['default'] : List;
29
+ Space = Space && Object.prototype.hasOwnProperty.call(Space, 'default') ? Space['default'] : Space;
30
+ ExclamationCircleOutlined = ExclamationCircleOutlined && Object.prototype.hasOwnProperty.call(ExclamationCircleOutlined, 'default') ? ExclamationCircleOutlined['default'] : ExclamationCircleOutlined;
31
+
32
+ function _extends() {
33
+ _extends = Object.assign || function (target) {
34
+ for (var i = 1; i < arguments.length; i++) {
35
+ var source = arguments[i];
36
+
37
+ for (var key in source) {
38
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
39
+ target[key] = source[key];
40
+ }
41
+ }
42
+ }
43
+
44
+ return target;
45
+ };
46
+
47
+ return _extends.apply(this, arguments);
48
+ }
49
+
50
+ function _objectWithoutPropertiesLoose(source, excluded) {
51
+ if (source == null) return {};
52
+ var target = {};
53
+ var sourceKeys = Object.keys(source);
54
+ var key, i;
55
+
56
+ for (i = 0; i < sourceKeys.length; i++) {
57
+ key = sourceKeys[i];
58
+ if (excluded.indexOf(key) >= 0) continue;
59
+ target[key] = source[key];
60
+ }
61
+
62
+ return target;
63
+ }
64
+
65
+ var DescriptionField = function DescriptionField(_ref) {
66
+ var description = _ref.description,
67
+ id = _ref.id;
68
+ return /*#__PURE__*/React__default.createElement("span", {
69
+ id: id
70
+ }, description);
71
+ };
72
+
73
+ var TitleField = function TitleField(_ref) {
74
+ var _classNames;
75
+
76
+ var formContext = _ref.formContext,
77
+ id = _ref.id,
78
+ prefixCls = _ref.prefixCls,
79
+ required = _ref.required,
80
+ title = _ref.title;
81
+ var _formContext$colon = formContext.colon,
82
+ colon = _formContext$colon === void 0 ? true : _formContext$colon;
83
+ var labelChildren = title;
84
+
85
+ if (colon && typeof title === 'string' && title.trim() !== '') {
86
+ labelChildren = title.replace(/[::]\s*$/, '');
87
+ }
88
+
89
+ var labelClassName = classNames((_classNames = {}, _classNames[prefixCls + "-item-required"] = required, _classNames[prefixCls + "-item-no-colon"] = !colon, _classNames));
90
+
91
+ var handleLabelClick = function handleLabelClick() {
92
+ if (!id) {
93
+ return;
94
+ }
95
+
96
+ var control = document.querySelector("[id=\"" + id + "\"]");
97
+
98
+ if (control && control.focus) {
99
+ control.focus();
100
+ }
101
+ };
102
+
103
+ return title ? /*#__PURE__*/React__default.createElement("label", {
104
+ className: labelClassName,
105
+ htmlFor: id,
106
+ onClick: handleLabelClick,
107
+ title: typeof title === 'string' ? title : ''
108
+ }, labelChildren) : null;
109
+ };
110
+
111
+ TitleField.defaultProps = {
112
+ formContext: {}
113
+ };
114
+ var TitleField$1 = /*#__PURE__*/context.withConfigConsumer({
115
+ prefixCls: 'form'
116
+ })(TitleField);
117
+
118
+ var ADDITIONAL_PROPERTY_FLAG = core.utils.ADDITIONAL_PROPERTY_FLAG;
119
+ var VERTICAL_LABEL_COL = {
120
+ span: 24
121
+ };
122
+ var VERTICAL_WRAPPER_COL = {
123
+ span: 24
124
+ };
125
+ var INPUT_STYLE = {
126
+ width: '100%'
127
+ };
128
+
129
+ var WrapIfAdditional = function WrapIfAdditional(_ref) {
130
+ var children = _ref.children,
131
+ classNames = _ref.classNames,
132
+ disabled = _ref.disabled,
133
+ formContext = _ref.formContext,
134
+ id = _ref.id,
135
+ label = _ref.label,
136
+ onDropPropertyClick = _ref.onDropPropertyClick,
137
+ onKeyChange = _ref.onKeyChange,
138
+ readonly = _ref.readonly,
139
+ required = _ref.required,
140
+ schema = _ref.schema;
141
+ var colon = formContext.colon,
142
+ _formContext$labelCol = formContext.labelCol,
143
+ labelCol = _formContext$labelCol === void 0 ? VERTICAL_LABEL_COL : _formContext$labelCol,
144
+ _formContext$readonly = formContext.readonlyAsDisabled,
145
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly,
146
+ _formContext$rowGutte = formContext.rowGutter,
147
+ rowGutter = _formContext$rowGutte === void 0 ? 24 : _formContext$rowGutte,
148
+ _formContext$toolbarA = formContext.toolbarAlign,
149
+ toolbarAlign = _formContext$toolbarA === void 0 ? 'top' : _formContext$toolbarA,
150
+ _formContext$wrapperC = formContext.wrapperCol,
151
+ wrapperCol = _formContext$wrapperC === void 0 ? VERTICAL_WRAPPER_COL : _formContext$wrapperC,
152
+ wrapperStyle = formContext.wrapperStyle;
153
+ var keyLabel = label + " Key"; // i18n ?
154
+
155
+ var additional = schema.hasOwnProperty(ADDITIONAL_PROPERTY_FLAG);
156
+
157
+ if (!additional) {
158
+ return /*#__PURE__*/React__default.createElement("div", {
159
+ className: classNames
160
+ }, children);
161
+ }
162
+
163
+ var handleBlur = function handleBlur(_ref2) {
164
+ var target = _ref2.target;
165
+ return onKeyChange(target.value);
166
+ };
167
+
168
+ return /*#__PURE__*/React__default.createElement("div", {
169
+ className: classNames
170
+ }, /*#__PURE__*/React__default.createElement(Row, {
171
+ align: toolbarAlign,
172
+ gutter: rowGutter
173
+ }, /*#__PURE__*/React__default.createElement(Col, {
174
+ className: "form-additional",
175
+ flex: "1"
176
+ }, /*#__PURE__*/React__default.createElement("div", {
177
+ className: "form-group"
178
+ }, /*#__PURE__*/React__default.createElement(Form$1.Item, {
179
+ colon: colon,
180
+ className: "form-group",
181
+ hasFeedback: true,
182
+ htmlFor: id + "-key",
183
+ label: keyLabel,
184
+ labelCol: labelCol,
185
+ required: required,
186
+ style: wrapperStyle,
187
+ wrapperCol: wrapperCol
188
+ }, /*#__PURE__*/React__default.createElement(Input, {
189
+ className: "form-control",
190
+ defaultValue: label,
191
+ disabled: disabled || readonlyAsDisabled && readonly,
192
+ id: id + "-key",
193
+ name: id + "-key",
194
+ onBlur: !readonly ? handleBlur : undefined,
195
+ style: INPUT_STYLE,
196
+ type: "text"
197
+ })))), /*#__PURE__*/React__default.createElement(Col, {
198
+ className: "form-additional",
199
+ flex: "1"
200
+ }, children), /*#__PURE__*/React__default.createElement(Col, {
201
+ flex: "192px"
202
+ }, /*#__PURE__*/React__default.createElement(Button, {
203
+ block: true,
204
+ className: "array-item-remove",
205
+ danger: true,
206
+ disabled: disabled || readonly,
207
+ icon: /*#__PURE__*/React__default.createElement(DeleteOutlined, null),
208
+ onClick: onDropPropertyClick(label),
209
+ type: "primary"
210
+ }))));
211
+ };
212
+
213
+ var VERTICAL_LABEL_COL$1 = {
214
+ span: 24
215
+ };
216
+ var VERTICAL_WRAPPER_COL$1 = {
217
+ span: 24
218
+ };
219
+
220
+ var FieldTemplate = function FieldTemplate(_ref) {
221
+ var children = _ref.children,
222
+ classNames = _ref.classNames,
223
+ description = _ref.description,
224
+ disabled = _ref.disabled,
225
+ displayLabel = _ref.displayLabel,
226
+ formContext = _ref.formContext,
227
+ help = _ref.help,
228
+ hidden = _ref.hidden,
229
+ id = _ref.id,
230
+ label = _ref.label,
231
+ onDropPropertyClick = _ref.onDropPropertyClick,
232
+ onKeyChange = _ref.onKeyChange,
233
+ rawErrors = _ref.rawErrors,
234
+ rawHelp = _ref.rawHelp,
235
+ readonly = _ref.readonly,
236
+ required = _ref.required,
237
+ schema = _ref.schema;
238
+ var colon = formContext.colon,
239
+ _formContext$labelCol = formContext.labelCol,
240
+ labelCol = _formContext$labelCol === void 0 ? VERTICAL_LABEL_COL$1 : _formContext$labelCol,
241
+ _formContext$wrapperC = formContext.wrapperCol,
242
+ wrapperCol = _formContext$wrapperC === void 0 ? VERTICAL_WRAPPER_COL$1 : _formContext$wrapperC,
243
+ wrapperStyle = formContext.wrapperStyle;
244
+
245
+ if (hidden) {
246
+ return /*#__PURE__*/React__default.createElement("div", {
247
+ className: "field-hidden"
248
+ }, children);
249
+ }
250
+
251
+ var renderFieldErrors = function renderFieldErrors() {
252
+ return [].concat(new Set(rawErrors)).map(function (error) {
253
+ return /*#__PURE__*/React__default.createElement("div", {
254
+ key: "field-" + id + "-error-" + error
255
+ }, error);
256
+ });
257
+ };
258
+
259
+ return /*#__PURE__*/React__default.createElement(WrapIfAdditional, {
260
+ classNames: classNames,
261
+ disabled: disabled,
262
+ formContext: formContext,
263
+ id: id,
264
+ label: label,
265
+ onDropPropertyClick: onDropPropertyClick,
266
+ onKeyChange: onKeyChange,
267
+ readonly: readonly,
268
+ required: required,
269
+ schema: schema
270
+ }, id === 'root' ? children : /*#__PURE__*/React__default.createElement(Form$1.Item, {
271
+ colon: colon,
272
+ extra: description,
273
+ hasFeedback: schema.type !== 'array' && schema.type !== 'object',
274
+ help: !!rawHelp && help || !!rawErrors && renderFieldErrors(),
275
+ htmlFor: id,
276
+ label: displayLabel && label,
277
+ labelCol: labelCol,
278
+ required: required,
279
+ style: wrapperStyle,
280
+ validateStatus: rawErrors ? 'error' : undefined,
281
+ wrapperCol: wrapperCol
282
+ }, children));
283
+ };
284
+
285
+ var canExpand = core.utils.canExpand;
286
+ var DESCRIPTION_COL_STYLE = {
287
+ paddingBottom: '8px'
288
+ };
289
+
290
+ var ObjectFieldTemplate = function ObjectFieldTemplate(_ref) {
291
+ var DescriptionField = _ref.DescriptionField,
292
+ TitleField = _ref.TitleField,
293
+ description = _ref.description,
294
+ disabled = _ref.disabled,
295
+ formContext = _ref.formContext,
296
+ formData = _ref.formData,
297
+ idSchema = _ref.idSchema,
298
+ onAddClick = _ref.onAddClick,
299
+ prefixCls = _ref.prefixCls,
300
+ properties = _ref.properties,
301
+ readonly = _ref.readonly,
302
+ required = _ref.required,
303
+ schema = _ref.schema,
304
+ title = _ref.title,
305
+ uiSchema = _ref.uiSchema;
306
+ var _formContext$colSpan = formContext.colSpan,
307
+ colSpan = _formContext$colSpan === void 0 ? 24 : _formContext$colSpan,
308
+ _formContext$labelAli = formContext.labelAlign,
309
+ labelAlign = _formContext$labelAli === void 0 ? 'right' : _formContext$labelAli,
310
+ _formContext$rowGutte = formContext.rowGutter,
311
+ rowGutter = _formContext$rowGutte === void 0 ? 24 : _formContext$rowGutte;
312
+ var labelClsBasic = prefixCls + "-item-label";
313
+ var labelColClassName = classNames(labelClsBasic, labelAlign === 'left' && labelClsBasic + "-left" // labelCol.className,
314
+ );
315
+
316
+ var findSchema = function findSchema(element) {
317
+ return element.content.props.schema;
318
+ };
319
+
320
+ var findSchemaType = function findSchemaType(element) {
321
+ return findSchema(element).type;
322
+ };
323
+
324
+ var findUiSchema = function findUiSchema(element) {
325
+ return element.content.props.uiSchema;
326
+ };
327
+
328
+ var findUiSchemaField = function findUiSchemaField(element) {
329
+ return findUiSchema(element)['ui:field'];
330
+ };
331
+
332
+ var findUiSchemaWidget = function findUiSchemaWidget(element) {
333
+ return findUiSchema(element)['ui:widget'];
334
+ };
335
+
336
+ var calculateColSpan = function calculateColSpan(element) {
337
+ var type = findSchemaType(element);
338
+ var field = findUiSchemaField(element);
339
+ var widget = findUiSchemaWidget(element);
340
+ var defaultColSpan = properties.length < 2 || // Single or no field in object.
341
+ type === 'object' || type === 'array' || widget === 'textarea' ? 24 : 12;
342
+
343
+ if (_.isObject(colSpan)) {
344
+ return colSpan[widget] || colSpan[field] || colSpan[type] || defaultColSpan;
345
+ }
346
+
347
+ if (_.isNumber(colSpan)) {
348
+ return colSpan;
349
+ }
350
+
351
+ return defaultColSpan;
352
+ };
353
+
354
+ return /*#__PURE__*/React__default.createElement("fieldset", {
355
+ id: idSchema.$id
356
+ }, /*#__PURE__*/React__default.createElement(Row, {
357
+ gutter: rowGutter
358
+ }, uiSchema['ui:title'] !== false && (uiSchema['ui:title'] || title) && /*#__PURE__*/React__default.createElement(Col, {
359
+ className: labelColClassName,
360
+ span: 24
361
+ }, /*#__PURE__*/React__default.createElement(TitleField, {
362
+ id: idSchema.$id + "-title",
363
+ required: required,
364
+ title: uiSchema['ui:title'] || title
365
+ })), uiSchema['ui:description'] !== false && (uiSchema['ui:description'] || description) && /*#__PURE__*/React__default.createElement(Col, {
366
+ span: 24,
367
+ style: DESCRIPTION_COL_STYLE
368
+ }, /*#__PURE__*/React__default.createElement(DescriptionField, {
369
+ description: uiSchema['ui:description'] || description,
370
+ id: idSchema.$id + "-description"
371
+ })), properties.filter(function (e) {
372
+ return !e.hidden;
373
+ }).map(function (element) {
374
+ return /*#__PURE__*/React__default.createElement(Col, {
375
+ key: element.name,
376
+ span: calculateColSpan(element)
377
+ }, element.content);
378
+ })), canExpand(schema, uiSchema, formData) && /*#__PURE__*/React__default.createElement(Col, {
379
+ span: 24
380
+ }, /*#__PURE__*/React__default.createElement(Row, {
381
+ gutter: rowGutter,
382
+ justify: "end"
383
+ }, /*#__PURE__*/React__default.createElement(Col, {
384
+ flex: "192px"
385
+ }, /*#__PURE__*/React__default.createElement(Button, {
386
+ block: true,
387
+ className: "object-property-expand",
388
+ disabled: disabled || readonly,
389
+ onClick: onAddClick(schema),
390
+ type: "primary"
391
+ }, /*#__PURE__*/React__default.createElement(PlusCircleOutlined, null), " Add Item")))));
392
+ };
393
+
394
+ var ObjectFieldTemplate$1 = /*#__PURE__*/context.withConfigConsumer({
395
+ prefixCls: 'form'
396
+ })(ObjectFieldTemplate);
397
+
398
+ var BTN_GRP_STYLE = {
399
+ width: '100%'
400
+ };
401
+ var BTN_STYLE = {
402
+ width: 'calc(100% / 3)'
403
+ };
404
+
405
+ var ArrayFieldTemplateItem = function ArrayFieldTemplateItem(_ref) {
406
+ var children = _ref.children,
407
+ disabled = _ref.disabled,
408
+ formContext = _ref.formContext,
409
+ hasMoveDown = _ref.hasMoveDown,
410
+ hasMoveUp = _ref.hasMoveUp,
411
+ hasRemove = _ref.hasRemove,
412
+ hasToolbar = _ref.hasToolbar,
413
+ index = _ref.index,
414
+ onDropIndexClick = _ref.onDropIndexClick,
415
+ onReorderClick = _ref.onReorderClick,
416
+ readonly = _ref.readonly;
417
+ var _formContext$rowGutte = formContext.rowGutter,
418
+ rowGutter = _formContext$rowGutte === void 0 ? 24 : _formContext$rowGutte,
419
+ _formContext$toolbarA = formContext.toolbarAlign,
420
+ toolbarAlign = _formContext$toolbarA === void 0 ? 'top' : _formContext$toolbarA;
421
+ return /*#__PURE__*/React__default.createElement(Row, {
422
+ align: toolbarAlign,
423
+ key: "array-item-" + index,
424
+ gutter: rowGutter
425
+ }, /*#__PURE__*/React__default.createElement(Col, {
426
+ flex: "1"
427
+ }, children), hasToolbar && /*#__PURE__*/React__default.createElement(Col, {
428
+ flex: "192px"
429
+ }, /*#__PURE__*/React__default.createElement(Button.Group, {
430
+ style: BTN_GRP_STYLE
431
+ }, (hasMoveUp || hasMoveDown) && /*#__PURE__*/React__default.createElement(Button, {
432
+ disabled: disabled || readonly || !hasMoveUp,
433
+ icon: /*#__PURE__*/React__default.createElement(ArrowUpOutlined, null),
434
+ onClick: onReorderClick(index, index - 1),
435
+ style: BTN_STYLE,
436
+ type: "default"
437
+ }), (hasMoveUp || hasMoveDown) && /*#__PURE__*/React__default.createElement(Button, {
438
+ disabled: disabled || readonly || !hasMoveDown,
439
+ icon: /*#__PURE__*/React__default.createElement(ArrowDownOutlined, null),
440
+ onClick: onReorderClick(index, index + 1),
441
+ style: BTN_STYLE,
442
+ type: "default"
443
+ }), hasRemove && /*#__PURE__*/React__default.createElement(Button, {
444
+ danger: true,
445
+ disabled: disabled || readonly,
446
+ icon: /*#__PURE__*/React__default.createElement(DeleteOutlined, null),
447
+ onClick: onDropIndexClick(index),
448
+ style: BTN_STYLE,
449
+ type: "primary"
450
+ }))));
451
+ };
452
+
453
+ ArrayFieldTemplateItem.defaultProps = {
454
+ formContext: {}
455
+ };
456
+
457
+ var DESCRIPTION_COL_STYLE$1 = {
458
+ paddingBottom: '8px'
459
+ };
460
+
461
+ var FixedArrayFieldTemplate = function FixedArrayFieldTemplate(_ref) {
462
+ var canAdd = _ref.canAdd,
463
+ className = _ref.className,
464
+ DescriptionField = _ref.DescriptionField,
465
+ disabled = _ref.disabled,
466
+ formContext = _ref.formContext,
467
+ idSchema = _ref.idSchema,
468
+ items = _ref.items,
469
+ onAddClick = _ref.onAddClick,
470
+ prefixCls = _ref.prefixCls,
471
+ readonly = _ref.readonly,
472
+ required = _ref.required,
473
+ schema = _ref.schema,
474
+ title = _ref.title,
475
+ TitleField = _ref.TitleField,
476
+ uiSchema = _ref.uiSchema;
477
+ var _formContext$labelAli = formContext.labelAlign,
478
+ labelAlign = _formContext$labelAli === void 0 ? 'right' : _formContext$labelAli,
479
+ _formContext$rowGutte = formContext.rowGutter,
480
+ rowGutter = _formContext$rowGutte === void 0 ? 24 : _formContext$rowGutte;
481
+ var labelClsBasic = prefixCls + "-item-label";
482
+ var labelColClassName = classNames(labelClsBasic, labelAlign === 'left' && labelClsBasic + "-left" // labelCol.className,
483
+ );
484
+ return /*#__PURE__*/React__default.createElement("fieldset", {
485
+ className: className,
486
+ id: idSchema.$id
487
+ }, /*#__PURE__*/React__default.createElement(Row, {
488
+ gutter: rowGutter
489
+ }, title && /*#__PURE__*/React__default.createElement(Col, {
490
+ className: labelColClassName,
491
+ span: 24
492
+ }, /*#__PURE__*/React__default.createElement(TitleField, {
493
+ id: idSchema.$id + "__title",
494
+ key: "array-field-title-" + idSchema.$id,
495
+ required: required,
496
+ title: uiSchema['ui:title'] || title
497
+ })), (uiSchema['ui:description'] || schema.description) && /*#__PURE__*/React__default.createElement(Col, {
498
+ span: 24,
499
+ style: DESCRIPTION_COL_STYLE$1
500
+ }, /*#__PURE__*/React__default.createElement(DescriptionField, {
501
+ description: uiSchema['ui:description'] || schema.description,
502
+ id: idSchema.$id + "-description",
503
+ key: "array-field-description-" + idSchema.$id
504
+ })), /*#__PURE__*/React__default.createElement(Col, {
505
+ className: "row array-item-list",
506
+ span: 24
507
+ }, items && items.map(function (itemProps) {
508
+ return /*#__PURE__*/React__default.createElement(ArrayFieldTemplateItem, _extends({}, itemProps, {
509
+ formContext: formContext
510
+ }));
511
+ })), canAdd && /*#__PURE__*/React__default.createElement(Col, {
512
+ span: 24
513
+ }, /*#__PURE__*/React__default.createElement(Row, {
514
+ gutter: rowGutter,
515
+ justify: "end"
516
+ }, /*#__PURE__*/React__default.createElement(Col, {
517
+ flex: "192px"
518
+ }, /*#__PURE__*/React__default.createElement(Button, {
519
+ block: true,
520
+ className: "array-item-add",
521
+ disabled: disabled || readonly,
522
+ onClick: onAddClick,
523
+ type: "primary"
524
+ }, /*#__PURE__*/React__default.createElement(PlusCircleOutlined, null), " Add Item"))))));
525
+ };
526
+
527
+ var FixedArrayFieldTemplate$1 = /*#__PURE__*/context.withConfigConsumer({
528
+ prefixCls: 'form'
529
+ })(FixedArrayFieldTemplate);
530
+
531
+ var DESCRIPTION_COL_STYLE$2 = {
532
+ paddingBottom: '8px'
533
+ };
534
+
535
+ var NormalArrayFieldTemplate = function NormalArrayFieldTemplate(_ref) {
536
+ var canAdd = _ref.canAdd,
537
+ className = _ref.className,
538
+ DescriptionField = _ref.DescriptionField,
539
+ disabled = _ref.disabled,
540
+ formContext = _ref.formContext,
541
+ idSchema = _ref.idSchema,
542
+ items = _ref.items,
543
+ onAddClick = _ref.onAddClick,
544
+ prefixCls = _ref.prefixCls,
545
+ readonly = _ref.readonly,
546
+ required = _ref.required,
547
+ schema = _ref.schema,
548
+ title = _ref.title,
549
+ TitleField = _ref.TitleField,
550
+ uiSchema = _ref.uiSchema;
551
+ var _formContext$labelAli = formContext.labelAlign,
552
+ labelAlign = _formContext$labelAli === void 0 ? 'right' : _formContext$labelAli,
553
+ _formContext$rowGutte = formContext.rowGutter,
554
+ rowGutter = _formContext$rowGutte === void 0 ? 24 : _formContext$rowGutte;
555
+ var labelClsBasic = prefixCls + "-item-label";
556
+ var labelColClassName = classNames(labelClsBasic, labelAlign === 'left' && labelClsBasic + "-left" // labelCol.className,
557
+ );
558
+ return /*#__PURE__*/React__default.createElement("fieldset", {
559
+ className: className,
560
+ id: idSchema.$id
561
+ }, /*#__PURE__*/React__default.createElement(Row, {
562
+ gutter: rowGutter
563
+ }, title && /*#__PURE__*/React__default.createElement(Col, {
564
+ className: labelColClassName,
565
+ span: 24
566
+ }, /*#__PURE__*/React__default.createElement(TitleField, {
567
+ id: idSchema.$id + "__title",
568
+ key: "array-field-title-" + idSchema.$id,
569
+ required: required,
570
+ title: uiSchema['ui:title'] || title
571
+ })), (uiSchema['ui:description'] || schema.description) && /*#__PURE__*/React__default.createElement(Col, {
572
+ span: 24,
573
+ style: DESCRIPTION_COL_STYLE$2
574
+ }, /*#__PURE__*/React__default.createElement(DescriptionField, {
575
+ description: uiSchema['ui:description'] || schema.description,
576
+ id: idSchema.$id + "__description",
577
+ key: "array-field-description-" + idSchema.$id
578
+ })), /*#__PURE__*/React__default.createElement(Col, {
579
+ className: "row array-item-list",
580
+ span: 24
581
+ }, items && items.map(function (itemProps) {
582
+ return /*#__PURE__*/React__default.createElement(ArrayFieldTemplateItem, _extends({}, itemProps, {
583
+ formContext: formContext
584
+ }));
585
+ })), canAdd && /*#__PURE__*/React__default.createElement(Col, {
586
+ span: 24
587
+ }, /*#__PURE__*/React__default.createElement(Row, {
588
+ gutter: rowGutter,
589
+ justify: "end"
590
+ }, /*#__PURE__*/React__default.createElement(Col, {
591
+ flex: "192px"
592
+ }, /*#__PURE__*/React__default.createElement(Button, {
593
+ block: true,
594
+ className: "array-item-add",
595
+ disabled: disabled || readonly,
596
+ onClick: onAddClick,
597
+ type: "primary"
598
+ }, /*#__PURE__*/React__default.createElement(PlusCircleOutlined, null), " Add Item"))))));
599
+ };
600
+
601
+ var NormalArrayFieldTemplate$1 = /*#__PURE__*/context.withConfigConsumer({
602
+ prefixCls: 'form'
603
+ })(NormalArrayFieldTemplate);
604
+
605
+ var getUiOptions = core.utils.getUiOptions,
606
+ getWidget = core.utils.getWidget,
607
+ isFilesArray = core.utils.isFilesArray,
608
+ isFixedItems = core.utils.isFixedItems,
609
+ isMultiSelect = core.utils.isMultiSelect,
610
+ optionsList = core.utils.optionsList,
611
+ retrieveSchema = core.utils.retrieveSchema;
612
+
613
+ var ArrayFieldTemplate = function ArrayFieldTemplate(_ref) {
614
+ var DescriptionField = _ref.DescriptionField,
615
+ TitleField = _ref.TitleField,
616
+ autofocus = _ref.autofocus,
617
+ canAdd = _ref.canAdd,
618
+ className = _ref.className,
619
+ disabled = _ref.disabled,
620
+ formContext = _ref.formContext,
621
+ formData = _ref.formData,
622
+ idSchema = _ref.idSchema,
623
+ items = _ref.items,
624
+ label = _ref.label,
625
+ name = _ref.name,
626
+ onAddClick = _ref.onAddClick,
627
+ onBlur = _ref.onBlur,
628
+ onChange = _ref.onChange,
629
+ onFocus = _ref.onFocus,
630
+ placeholder = _ref.placeholder,
631
+ rawErrors = _ref.rawErrors,
632
+ readonly = _ref.readonly,
633
+ registry = _ref.registry,
634
+ required = _ref.required,
635
+ schema = _ref.schema,
636
+ title = _ref.title,
637
+ uiSchema = _ref.uiSchema;
638
+ var fields = registry.fields,
639
+ rootSchema = registry.rootSchema,
640
+ widgets = registry.widgets;
641
+ var UnsupportedField = fields.UnsupportedField;
642
+
643
+ var renderFiles = function renderFiles() {
644
+ var _getUiOptions = getUiOptions(uiSchema),
645
+ _getUiOptions$widget = _getUiOptions.widget,
646
+ widget = _getUiOptions$widget === void 0 ? 'files' : _getUiOptions$widget,
647
+ options = _objectWithoutPropertiesLoose(_getUiOptions, ["widget"]);
648
+
649
+ var Widget = getWidget(schema, widget, widgets);
650
+ return /*#__PURE__*/React__default.createElement(Widget, {
651
+ autofocus: autofocus,
652
+ disabled: disabled,
653
+ formContext: formContext,
654
+ id: idSchema && idSchema.$id,
655
+ multiple: true,
656
+ onBlur: onBlur,
657
+ onChange: onChange,
658
+ onFocus: onFocus,
659
+ options: options,
660
+ rawErrors: rawErrors,
661
+ readonly: readonly,
662
+ registry: registry,
663
+ schema: schema,
664
+ title: schema.title || name // Why not props.title?
665
+ ,
666
+ value: formData
667
+ });
668
+ };
669
+
670
+ var renderMultiSelect = function renderMultiSelect() {
671
+ var itemsSchema = retrieveSchema(schema.items, rootSchema, formData);
672
+ var enumOptions = optionsList(itemsSchema);
673
+
674
+ var _getUiOptions$enumOpt = _extends({}, getUiOptions(uiSchema), {
675
+ enumOptions: enumOptions
676
+ }),
677
+ _getUiOptions$enumOpt2 = _getUiOptions$enumOpt.widget,
678
+ widget = _getUiOptions$enumOpt2 === void 0 ? 'select' : _getUiOptions$enumOpt2,
679
+ options = _objectWithoutPropertiesLoose(_getUiOptions$enumOpt, ["widget"]);
680
+
681
+ var Widget = getWidget(schema, widget, widgets);
682
+ return /*#__PURE__*/React__default.createElement(Widget, {
683
+ autofocus: autofocus,
684
+ disabled: disabled,
685
+ formContext: formContext,
686
+ id: idSchema && idSchema.$id,
687
+ label: label,
688
+ multiple: true,
689
+ onBlur: onBlur,
690
+ onChange: onChange,
691
+ onFocus: onFocus,
692
+ options: options,
693
+ placeholder: placeholder,
694
+ rawErrors: rawErrors,
695
+ readonly: readonly,
696
+ registry: registry,
697
+ required: required,
698
+ schema: schema,
699
+ value: formData
700
+ });
701
+ };
702
+
703
+ if (!Object.prototype.hasOwnProperty.call(schema, 'items')) {
704
+ return /*#__PURE__*/React__default.createElement(UnsupportedField, {
705
+ idSchema: idSchema,
706
+ reason: "Missing items definition",
707
+ schema: schema
708
+ });
709
+ }
710
+
711
+ if (isFixedItems(schema)) {
712
+ return /*#__PURE__*/React__default.createElement(FixedArrayFieldTemplate$1, {
713
+ canAdd: canAdd,
714
+ className: className,
715
+ DescriptionField: DescriptionField,
716
+ disabled: disabled,
717
+ formContext: formContext,
718
+ formData: formData,
719
+ idSchema: idSchema,
720
+ items: items,
721
+ onAddClick: onAddClick,
722
+ readonly: readonly,
723
+ registry: registry,
724
+ required: required,
725
+ schema: schema,
726
+ title: title,
727
+ TitleField: TitleField,
728
+ uiSchema: uiSchema
729
+ });
730
+ }
731
+
732
+ if (isFilesArray(schema, uiSchema, rootSchema)) {
733
+ return renderFiles();
734
+ }
735
+
736
+ if (isMultiSelect(schema, rootSchema)) {
737
+ return renderMultiSelect();
738
+ }
739
+
740
+ return /*#__PURE__*/React__default.createElement(NormalArrayFieldTemplate$1, {
741
+ canAdd: canAdd,
742
+ className: className,
743
+ DescriptionField: DescriptionField,
744
+ disabled: disabled,
745
+ formContext: formContext,
746
+ formData: formData,
747
+ idSchema: idSchema,
748
+ items: items,
749
+ onAddClick: onAddClick,
750
+ readonly: readonly,
751
+ registry: registry,
752
+ required: required,
753
+ schema: schema,
754
+ title: title,
755
+ TitleField: TitleField,
756
+ uiSchema: uiSchema
757
+ });
758
+ };
759
+
760
+ var pad = core.utils.pad,
761
+ parseDateString = core.utils.parseDateString,
762
+ toDateString = core.utils.toDateString;
763
+
764
+ var rangeOptions = function rangeOptions(start, stop) {
765
+ var options = [];
766
+
767
+ for (var i = start; i <= stop; i++) {
768
+ options.push({
769
+ value: i,
770
+ label: pad(i, 2)
771
+ });
772
+ }
773
+
774
+ return options;
775
+ };
776
+
777
+ var readyForChange = function readyForChange(state) {
778
+ return Object.keys(state).every(function (key) {
779
+ return typeof state[key] !== "undefined" && state[key] !== -1;
780
+ });
781
+ };
782
+
783
+ var AltDateWidget = function AltDateWidget(_ref) {
784
+ var autofocus = _ref.autofocus,
785
+ disabled = _ref.disabled,
786
+ formContext = _ref.formContext,
787
+ id = _ref.id,
788
+ onBlur = _ref.onBlur,
789
+ onChange = _ref.onChange,
790
+ onFocus = _ref.onFocus,
791
+ options = _ref.options,
792
+ readonly = _ref.readonly,
793
+ registry = _ref.registry,
794
+ showTime = _ref.showTime,
795
+ value = _ref.value;
796
+ var SelectWidget = registry.widgets.SelectWidget;
797
+ var _formContext$rowGutte = formContext.rowGutter,
798
+ rowGutter = _formContext$rowGutte === void 0 ? 24 : _formContext$rowGutte;
799
+
800
+ var _useState = React.useState(parseDateString(value, showTime)),
801
+ state = _useState[0],
802
+ setState = _useState[1];
803
+
804
+ React.useEffect(function () {
805
+ setState(parseDateString(value, showTime));
806
+ }, [showTime, value]);
807
+
808
+ var handleChange = function handleChange(property, nextValue) {
809
+ var _extends2;
810
+
811
+ var nextState = _extends({}, state, (_extends2 = {}, _extends2[property] = typeof nextValue === "undefined" ? -1 : nextValue, _extends2));
812
+
813
+ if (readyForChange(nextState)) {
814
+ onChange(toDateString(nextState, showTime));
815
+ } else {
816
+ setState(nextState);
817
+ }
818
+ };
819
+
820
+ var handleNow = function handleNow(event) {
821
+ event.preventDefault();
822
+
823
+ if (disabled || readonly) {
824
+ return;
825
+ }
826
+
827
+ var nextState = parseDateString(new Date().toJSON(), showTime);
828
+ onChange(toDateString(nextState, showTime));
829
+ };
830
+
831
+ var handleClear = function handleClear(event) {
832
+ event.preventDefault();
833
+
834
+ if (disabled || readonly) {
835
+ return;
836
+ }
837
+
838
+ onChange(undefined);
839
+ };
840
+
841
+ var dateElementProps = function dateElementProps() {
842
+ var year = state.year,
843
+ month = state.month,
844
+ day = state.day,
845
+ hour = state.hour,
846
+ minute = state.minute,
847
+ second = state.second;
848
+ var data = [{
849
+ type: "year",
850
+ range: options.yearsRange,
851
+ value: year
852
+ }, {
853
+ type: "month",
854
+ range: [1, 12],
855
+ value: month
856
+ }, {
857
+ type: "day",
858
+ range: [1, 31],
859
+ value: day
860
+ }];
861
+
862
+ if (showTime) {
863
+ data.push({
864
+ type: "hour",
865
+ range: [0, 23],
866
+ value: hour
867
+ }, {
868
+ type: "minute",
869
+ range: [0, 59],
870
+ value: minute
871
+ }, {
872
+ type: "second",
873
+ range: [0, 59],
874
+ value: second
875
+ });
876
+ }
877
+
878
+ return data;
879
+ };
880
+
881
+ var renderDateElement = function renderDateElement(elemProps) {
882
+ return /*#__PURE__*/React__default.createElement(SelectWidget, {
883
+ autofocus: elemProps.autofocus,
884
+ className: "form-control",
885
+ disabled: elemProps.disabled,
886
+ id: elemProps.id,
887
+ onBlur: elemProps.onBlur,
888
+ onChange: function onChange(elemValue) {
889
+ return elemProps.select(elemProps.type, elemValue);
890
+ },
891
+ onFocus: elemProps.onFocus,
892
+ options: {
893
+ enumOptions: rangeOptions(elemProps.range[0], elemProps.range[1])
894
+ },
895
+ placeholder: elemProps.type,
896
+ readonly: elemProps.readonly,
897
+ schema: {
898
+ type: "integer"
899
+ },
900
+ value: elemProps.value
901
+ });
902
+ };
903
+
904
+ return /*#__PURE__*/React__default.createElement(Row, {
905
+ gutter: [Math.floor(rowGutter / 2), Math.floor(rowGutter / 2)]
906
+ }, dateElementProps().map(function (elemProps, i) {
907
+ var elemId = id + "_" + elemProps.type;
908
+ return /*#__PURE__*/React__default.createElement(Col, {
909
+ flex: "88px",
910
+ key: elemId
911
+ }, renderDateElement(_extends({}, elemProps, {
912
+ autofocus: autofocus && i === 0,
913
+ disabled: disabled,
914
+ id: elemId,
915
+ onBlur: onBlur,
916
+ onFocus: onFocus,
917
+ readonly: readonly,
918
+ registry: registry,
919
+ select: handleChange,
920
+ // NOTE: antd components accept -1 rather than issue a warning
921
+ // like material-ui, so we need to convert -1 to undefined here.
922
+ value: elemProps.value < 0 ? undefined : elemProps.value
923
+ })));
924
+ }), !options.hideNowButton && /*#__PURE__*/React__default.createElement(Col, {
925
+ flex: "88px"
926
+ }, /*#__PURE__*/React__default.createElement(Button, {
927
+ block: true,
928
+ className: "btn-now",
929
+ onClick: handleNow,
930
+ type: "primary"
931
+ }, "Now")), !options.hideClearButton && /*#__PURE__*/React__default.createElement(Col, {
932
+ flex: "88px"
933
+ }, /*#__PURE__*/React__default.createElement(Button, {
934
+ block: true,
935
+ className: "btn-clear",
936
+ danger: true,
937
+ onClick: handleClear,
938
+ type: "primary"
939
+ }, "Clear")));
940
+ };
941
+
942
+ AltDateWidget.defaultProps = {
943
+ autofocus: false,
944
+ disabled: false,
945
+ options: {
946
+ yearsRange: [1900, /*#__PURE__*/new Date().getFullYear() + 2]
947
+ },
948
+ readonly: false,
949
+ showTime: false
950
+ };
951
+
952
+ var AltDateTimeWidget = function AltDateTimeWidget(props) {
953
+ var AltDateWidget = props.registry.widgets.AltDateWidget;
954
+ return /*#__PURE__*/React__default.createElement(AltDateWidget, _extends({
955
+ showTime: true
956
+ }, props));
957
+ };
958
+
959
+ AltDateTimeWidget.defaultProps = /*#__PURE__*/_extends({}, AltDateWidget.defaultProps, {
960
+ showTime: true
961
+ });
962
+
963
+ var CheckboxesWidget = function CheckboxesWidget(_ref) {
964
+ var autofocus = _ref.autofocus,
965
+ disabled = _ref.disabled,
966
+ formContext = _ref.formContext,
967
+ id = _ref.id,
968
+ onBlur = _ref.onBlur,
969
+ onChange = _ref.onChange,
970
+ onFocus = _ref.onFocus,
971
+ options = _ref.options,
972
+ readonly = _ref.readonly,
973
+ value = _ref.value;
974
+ var _formContext$readonly = formContext.readonlyAsDisabled,
975
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
976
+ var enumOptions = options.enumOptions,
977
+ enumDisabled = options.enumDisabled,
978
+ inline = options.inline;
979
+
980
+ var handleChange = function handleChange(nextValue) {
981
+ return onChange(nextValue);
982
+ };
983
+
984
+ var handleBlur = function handleBlur(_ref2) {
985
+ var target = _ref2.target;
986
+ return onBlur(id, target.value);
987
+ };
988
+
989
+ var handleFocus = function handleFocus(_ref3) {
990
+ var target = _ref3.target;
991
+ return onFocus(id, target.value);
992
+ };
993
+
994
+ return !_.isEmpty(enumOptions) ? /*#__PURE__*/React__default.createElement(Checkbox.Group, {
995
+ disabled: disabled || readonlyAsDisabled && readonly,
996
+ id: id,
997
+ name: id,
998
+ onBlur: !readonly ? handleBlur : undefined,
999
+ onChange: !readonly ? handleChange : undefined,
1000
+ onFocus: !readonly ? handleFocus : undefined,
1001
+ value: value
1002
+ }, enumOptions.map(function (_ref4, i) {
1003
+ var optionValue = _ref4.value,
1004
+ optionLabel = _ref4.label;
1005
+ return /*#__PURE__*/React__default.createElement("span", {
1006
+ key: optionValue
1007
+ }, /*#__PURE__*/React__default.createElement(Checkbox, {
1008
+ autoFocus: i === 0 ? autofocus : false,
1009
+ disabled: enumDisabled && enumDisabled.indexOf(value) !== -1,
1010
+ value: optionValue
1011
+ }, optionLabel), !inline && /*#__PURE__*/React__default.createElement("br", null));
1012
+ })) : null;
1013
+ };
1014
+
1015
+ var CheckboxWidget = function CheckboxWidget(_ref) {
1016
+ var autofocus = _ref.autofocus,
1017
+ disabled = _ref.disabled,
1018
+ formContext = _ref.formContext,
1019
+ id = _ref.id,
1020
+ label = _ref.label,
1021
+ onBlur = _ref.onBlur,
1022
+ onChange = _ref.onChange,
1023
+ onFocus = _ref.onFocus,
1024
+ readonly = _ref.readonly,
1025
+ value = _ref.value;
1026
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1027
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1028
+
1029
+ var handleChange = function handleChange(_ref2) {
1030
+ var target = _ref2.target;
1031
+ return onChange(target.checked);
1032
+ };
1033
+
1034
+ var handleBlur = function handleBlur(_ref3) {
1035
+ var target = _ref3.target;
1036
+ return onBlur(id, target.checked);
1037
+ };
1038
+
1039
+ var handleFocus = function handleFocus(_ref4) {
1040
+ var target = _ref4.target;
1041
+ return onFocus(id, target.checked);
1042
+ };
1043
+
1044
+ return /*#__PURE__*/React__default.createElement(Checkbox, {
1045
+ autoFocus: autofocus,
1046
+ checked: typeof value === 'undefined' ? false : value,
1047
+ disabled: disabled || readonlyAsDisabled && readonly,
1048
+ id: id,
1049
+ name: id,
1050
+ onBlur: !readonly ? handleBlur : undefined,
1051
+ onChange: !readonly ? handleChange : undefined,
1052
+ onFocus: !readonly ? handleFocus : undefined
1053
+ }, label);
1054
+ };
1055
+
1056
+ var INPUT_STYLE$1 = {
1057
+ width: '100%'
1058
+ };
1059
+
1060
+ var ColorWidget = function ColorWidget(_ref) {
1061
+ var disabled = _ref.disabled,
1062
+ formContext = _ref.formContext,
1063
+ id = _ref.id,
1064
+ onBlur = _ref.onBlur,
1065
+ onChange = _ref.onChange,
1066
+ onFocus = _ref.onFocus,
1067
+ placeholder = _ref.placeholder,
1068
+ readonly = _ref.readonly,
1069
+ value = _ref.value;
1070
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1071
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1072
+
1073
+ var handleChange = function handleChange(_ref2) {
1074
+ var target = _ref2.target;
1075
+ return onChange(target.value);
1076
+ };
1077
+
1078
+ var handleBlur = function handleBlur(_ref3) {
1079
+ var target = _ref3.target;
1080
+ return onBlur(id, target.value);
1081
+ };
1082
+
1083
+ var handleFocus = function handleFocus(_ref4) {
1084
+ var target = _ref4.target;
1085
+ return onFocus(id, target.value);
1086
+ };
1087
+
1088
+ return /*#__PURE__*/React__default.createElement(Checkbox, {
1089
+ disabled: disabled || readonlyAsDisabled && readonly,
1090
+ id: id,
1091
+ name: id,
1092
+ onBlur: !readonly ? handleBlur : undefined,
1093
+ onChange: !readonly ? handleChange : undefined,
1094
+ onFocus: !readonly ? handleFocus : undefined,
1095
+ placeholder: placeholder,
1096
+ style: INPUT_STYLE$1,
1097
+ type: "color",
1098
+ value: value
1099
+ });
1100
+ };
1101
+
1102
+ var DatePicker = /*#__PURE__*/generatePicker(dayjsGenerateConfig);
1103
+
1104
+ var DATE_PICKER_STYLE = {
1105
+ width: '100%'
1106
+ };
1107
+
1108
+ var DateTimeWidget = function DateTimeWidget(_ref) {
1109
+ var disabled = _ref.disabled,
1110
+ formContext = _ref.formContext,
1111
+ id = _ref.id,
1112
+ onBlur = _ref.onBlur,
1113
+ onChange = _ref.onChange,
1114
+ onFocus = _ref.onFocus,
1115
+ placeholder = _ref.placeholder,
1116
+ readonly = _ref.readonly,
1117
+ value = _ref.value;
1118
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1119
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1120
+
1121
+ var handleChange = function handleChange(nextValue) {
1122
+ return onChange(nextValue && nextValue.toISOString());
1123
+ };
1124
+
1125
+ var handleBlur = function handleBlur() {
1126
+ return onBlur(id, value);
1127
+ };
1128
+
1129
+ var handleFocus = function handleFocus() {
1130
+ return onFocus(id, value);
1131
+ };
1132
+
1133
+ var getPopupContainer = function getPopupContainer(node) {
1134
+ return node.parentNode;
1135
+ };
1136
+
1137
+ return /*#__PURE__*/React__default.createElement(DatePicker, {
1138
+ disabled: disabled || readonlyAsDisabled && readonly,
1139
+ getPopupContainer: getPopupContainer,
1140
+ id: id,
1141
+ name: id,
1142
+ onBlur: !readonly ? handleBlur : undefined,
1143
+ onChange: !readonly ? handleChange : undefined,
1144
+ onFocus: !readonly ? handleFocus : undefined,
1145
+ placeholder: placeholder,
1146
+ showTime: true,
1147
+ style: DATE_PICKER_STYLE,
1148
+ value: value && dayjs(value)
1149
+ });
1150
+ };
1151
+
1152
+ var DATE_PICKER_STYLE$1 = {
1153
+ width: '100%'
1154
+ };
1155
+
1156
+ var DateWidget = function DateWidget(_ref) {
1157
+ var disabled = _ref.disabled,
1158
+ formContext = _ref.formContext,
1159
+ id = _ref.id,
1160
+ onBlur = _ref.onBlur,
1161
+ onChange = _ref.onChange,
1162
+ onFocus = _ref.onFocus,
1163
+ placeholder = _ref.placeholder,
1164
+ readonly = _ref.readonly,
1165
+ value = _ref.value;
1166
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1167
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1168
+
1169
+ var handleChange = function handleChange(nextValue) {
1170
+ return onChange(nextValue && nextValue.format('YYYY-MM-DD'));
1171
+ };
1172
+
1173
+ var handleBlur = function handleBlur() {
1174
+ return onBlur(id, value);
1175
+ };
1176
+
1177
+ var handleFocus = function handleFocus() {
1178
+ return onFocus(id, value);
1179
+ };
1180
+
1181
+ var getPopupContainer = function getPopupContainer(node) {
1182
+ return node.parentNode;
1183
+ };
1184
+
1185
+ return /*#__PURE__*/React__default.createElement(DatePicker, {
1186
+ disabled: disabled || readonlyAsDisabled && readonly,
1187
+ getPopupContainer: getPopupContainer,
1188
+ id: id,
1189
+ name: id,
1190
+ onBlur: !readonly ? handleBlur : undefined,
1191
+ onChange: !readonly ? handleChange : undefined,
1192
+ onFocus: !readonly ? handleFocus : undefined,
1193
+ placeholder: placeholder,
1194
+ showTime: false,
1195
+ style: DATE_PICKER_STYLE$1,
1196
+ value: value && dayjs(value)
1197
+ });
1198
+ };
1199
+
1200
+ var INPUT_STYLE$2 = {
1201
+ width: '100%'
1202
+ };
1203
+
1204
+ var EmailWidget = function EmailWidget(_ref) {
1205
+ var disabled = _ref.disabled,
1206
+ formContext = _ref.formContext,
1207
+ id = _ref.id,
1208
+ onBlur = _ref.onBlur,
1209
+ onChange = _ref.onChange,
1210
+ onFocus = _ref.onFocus,
1211
+ options = _ref.options,
1212
+ placeholder = _ref.placeholder,
1213
+ readonly = _ref.readonly,
1214
+ value = _ref.value;
1215
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1216
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1217
+
1218
+ var handleChange = function handleChange(_ref2) {
1219
+ var target = _ref2.target;
1220
+ return onChange(target.value === '' ? options.emptyValue : target.value);
1221
+ };
1222
+
1223
+ var handleBlur = function handleBlur(_ref3) {
1224
+ var target = _ref3.target;
1225
+ return onBlur(id, target.value);
1226
+ };
1227
+
1228
+ var handleFocus = function handleFocus(_ref4) {
1229
+ var target = _ref4.target;
1230
+ return onFocus(id, target.value);
1231
+ };
1232
+
1233
+ return /*#__PURE__*/React__default.createElement(Input, {
1234
+ disabled: disabled || readonlyAsDisabled && readonly,
1235
+ id: id,
1236
+ name: id,
1237
+ onBlur: !readonly ? handleBlur : undefined,
1238
+ onChange: !readonly ? handleChange : undefined,
1239
+ onFocus: !readonly ? handleFocus : undefined,
1240
+ placeholder: placeholder,
1241
+ style: INPUT_STYLE$2,
1242
+ type: "email",
1243
+ value: value
1244
+ });
1245
+ };
1246
+
1247
+ var PasswordWidget = function PasswordWidget(_ref) {
1248
+ var disabled = _ref.disabled,
1249
+ formContext = _ref.formContext,
1250
+ id = _ref.id,
1251
+ onBlur = _ref.onBlur,
1252
+ onChange = _ref.onChange,
1253
+ onFocus = _ref.onFocus,
1254
+ options = _ref.options,
1255
+ placeholder = _ref.placeholder,
1256
+ readonly = _ref.readonly,
1257
+ value = _ref.value;
1258
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1259
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1260
+ var emptyValue = options.emptyValue || '';
1261
+
1262
+ var handleChange = function handleChange(_ref2) {
1263
+ var target = _ref2.target;
1264
+ return onChange(target.value === '' ? emptyValue : target.value);
1265
+ };
1266
+
1267
+ var handleBlur = function handleBlur(_ref3) {
1268
+ var target = _ref3.target;
1269
+ return onBlur(id, target.value);
1270
+ };
1271
+
1272
+ var handleFocus = function handleFocus(_ref4) {
1273
+ var target = _ref4.target;
1274
+ return onFocus(id, target.value);
1275
+ };
1276
+
1277
+ return /*#__PURE__*/React__default.createElement(Input.Password, {
1278
+ disabled: disabled || readonlyAsDisabled && readonly,
1279
+ id: id,
1280
+ name: id,
1281
+ onBlur: !readonly ? handleBlur : undefined,
1282
+ onChange: !readonly ? handleChange : undefined,
1283
+ onFocus: !readonly ? handleFocus : undefined,
1284
+ placeholder: placeholder,
1285
+ value: value || ''
1286
+ });
1287
+ };
1288
+
1289
+ /* eslint-disable no-else-return */
1290
+
1291
+ var RadioWidget = function RadioWidget(_ref) {
1292
+ var autofocus = _ref.autofocus,
1293
+ disabled = _ref.disabled,
1294
+ formContext = _ref.formContext,
1295
+ id = _ref.id,
1296
+ onBlur = _ref.onBlur,
1297
+ onChange = _ref.onChange,
1298
+ onFocus = _ref.onFocus,
1299
+ options = _ref.options,
1300
+ readonly = _ref.readonly,
1301
+ schema = _ref.schema,
1302
+ value = _ref.value;
1303
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1304
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1305
+ var enumOptions = options.enumOptions,
1306
+ enumDisabled = options.enumDisabled;
1307
+
1308
+ var handleChange = function handleChange(_ref2) {
1309
+ var nextValue = _ref2.target.value;
1310
+ return onChange(schema.type === 'boolean' ? nextValue !== 'false' : nextValue);
1311
+ };
1312
+
1313
+ var handleBlur = function handleBlur(_ref3) {
1314
+ var target = _ref3.target;
1315
+ return onBlur(id, target.value);
1316
+ };
1317
+
1318
+ var handleFocus = function handleFocus(_ref4) {
1319
+ var target = _ref4.target;
1320
+ return onFocus(id, target.value);
1321
+ };
1322
+
1323
+ return /*#__PURE__*/React__default.createElement(Radio.Group, {
1324
+ disabled: disabled || readonlyAsDisabled && readonly,
1325
+ id: id,
1326
+ name: id,
1327
+ onBlur: !readonly ? handleBlur : undefined,
1328
+ onChange: !readonly ? handleChange : undefined,
1329
+ onFocus: !readonly ? handleFocus : undefined,
1330
+ value: "" + value
1331
+ }, enumOptions.map(function (_ref5, i) {
1332
+ var optionValue = _ref5.value,
1333
+ optionLabel = _ref5.label;
1334
+ return /*#__PURE__*/React__default.createElement(Radio, {
1335
+ autoFocus: i === 0 ? autofocus : false,
1336
+ disabled: enumDisabled && enumDisabled.indexOf(value) !== -1,
1337
+ key: "" + optionValue,
1338
+ value: "" + optionValue
1339
+ }, optionLabel);
1340
+ }));
1341
+ };
1342
+
1343
+ /* eslint-disable no-else-return */
1344
+ var rangeSpec = core.utils.rangeSpec;
1345
+
1346
+ var RangeWidget = function RangeWidget(_ref) {
1347
+ var autofocus = _ref.autofocus,
1348
+ disabled = _ref.disabled,
1349
+ formContext = _ref.formContext,
1350
+ id = _ref.id,
1351
+ onBlur = _ref.onBlur,
1352
+ onChange = _ref.onChange,
1353
+ onFocus = _ref.onFocus,
1354
+ options = _ref.options,
1355
+ placeholder = _ref.placeholder,
1356
+ readonly = _ref.readonly,
1357
+ schema = _ref.schema,
1358
+ value = _ref.value;
1359
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1360
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1361
+
1362
+ var _rangeSpec = rangeSpec(schema),
1363
+ min = _rangeSpec.min,
1364
+ max = _rangeSpec.max,
1365
+ step = _rangeSpec.step;
1366
+
1367
+ var emptyValue = options.emptyValue || '';
1368
+
1369
+ var handleChange = function handleChange(nextValue) {
1370
+ return onChange(nextValue === '' ? emptyValue : nextValue);
1371
+ };
1372
+
1373
+ var handleBlur = function handleBlur() {
1374
+ return onBlur(id, value);
1375
+ };
1376
+
1377
+ var handleFocus = function handleFocus() {
1378
+ return onFocus(id, value);
1379
+ };
1380
+
1381
+ return /*#__PURE__*/React__default.createElement(Slider, {
1382
+ autoFocus: autofocus,
1383
+ disabled: disabled || readonlyAsDisabled && readonly,
1384
+ id: id,
1385
+ max: max,
1386
+ min: min,
1387
+ onBlur: !readonly ? handleBlur : undefined,
1388
+ onChange: !readonly ? handleChange : undefined,
1389
+ onFocus: !readonly ? handleFocus : undefined,
1390
+ placeholder: placeholder,
1391
+ range: false,
1392
+ step: step,
1393
+ value: value
1394
+ });
1395
+ };
1396
+
1397
+ /* eslint-disable no-else-return */
1398
+ var asNumber = core.utils.asNumber,
1399
+ guessType = core.utils.guessType;
1400
+ var SELECT_STYLE = {
1401
+ width: '100%'
1402
+ };
1403
+ var nums = /*#__PURE__*/new Set(['number', 'integer']);
1404
+ /**
1405
+ * This is a silly limitation in the DOM where option change event values are
1406
+ * always retrieved as strings.
1407
+ */
1408
+
1409
+ var processValue = function processValue(schema, value) {
1410
+ // "enum" is a reserved word, so only "type" and "items" can be destructured
1411
+ var type = schema.type,
1412
+ items = schema.items;
1413
+
1414
+ if (value === '') {
1415
+ return undefined;
1416
+ } else if (type === 'array' && items && nums.has(items.type)) {
1417
+ return value.map(asNumber);
1418
+ } else if (type === 'boolean') {
1419
+ return value === 'true';
1420
+ } else if (type === 'number') {
1421
+ return asNumber(value);
1422
+ } // If type is undefined, but an enum is present, try and infer the type from
1423
+ // the enum values
1424
+
1425
+
1426
+ if (schema.enum) {
1427
+ if (schema.enum.every(function (x) {
1428
+ return guessType(x) === 'number';
1429
+ })) {
1430
+ return asNumber(value);
1431
+ } else if (schema.enum.every(function (x) {
1432
+ return guessType(x) === 'boolean';
1433
+ })) {
1434
+ return value === 'true';
1435
+ }
1436
+ }
1437
+
1438
+ return value;
1439
+ };
1440
+
1441
+ var SelectWidget = function SelectWidget(_ref) {
1442
+ var autofocus = _ref.autofocus,
1443
+ disabled = _ref.disabled,
1444
+ formContext = _ref.formContext,
1445
+ id = _ref.id,
1446
+ multiple = _ref.multiple,
1447
+ onBlur = _ref.onBlur,
1448
+ onChange = _ref.onChange,
1449
+ onFocus = _ref.onFocus,
1450
+ options = _ref.options,
1451
+ placeholder = _ref.placeholder,
1452
+ readonly = _ref.readonly,
1453
+ schema = _ref.schema,
1454
+ value = _ref.value;
1455
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1456
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1457
+ var enumOptions = options.enumOptions,
1458
+ enumDisabled = options.enumDisabled;
1459
+
1460
+ var handleChange = function handleChange(nextValue) {
1461
+ return onChange(processValue(schema, nextValue));
1462
+ };
1463
+
1464
+ var handleBlur = function handleBlur() {
1465
+ return onBlur(id, processValue(schema, value));
1466
+ };
1467
+
1468
+ var handleFocus = function handleFocus() {
1469
+ return onFocus(id, processValue(schema, value));
1470
+ };
1471
+
1472
+ var getPopupContainer = function getPopupContainer(node) {
1473
+ return node.parentNode;
1474
+ };
1475
+
1476
+ var stringify = function stringify(currentValue) {
1477
+ return Array.isArray(currentValue) ? value.map(String) : String(value);
1478
+ };
1479
+
1480
+ return /*#__PURE__*/React__default.createElement(Select, {
1481
+ autoFocus: autofocus,
1482
+ disabled: disabled || readonlyAsDisabled && readonly,
1483
+ getPopupContainer: getPopupContainer,
1484
+ id: id,
1485
+ mode: typeof multiple !== 'undefined' ? 'multiple' : undefined,
1486
+ name: id,
1487
+ onBlur: !readonly ? handleBlur : undefined,
1488
+ onChange: !readonly ? handleChange : undefined,
1489
+ onFocus: !readonly ? handleFocus : undefined,
1490
+ placeholder: placeholder,
1491
+ style: SELECT_STYLE,
1492
+ value: typeof value !== 'undefined' ? stringify(value) : undefined
1493
+ }, enumOptions.map(function (_ref2) {
1494
+ var optionValue = _ref2.value,
1495
+ optionLabel = _ref2.label;
1496
+ return /*#__PURE__*/React__default.createElement(Select.Option, {
1497
+ disabled: enumDisabled && enumDisabled.indexOf(optionValue) !== -1,
1498
+ key: String(optionValue),
1499
+ value: String(optionValue)
1500
+ }, optionLabel);
1501
+ }));
1502
+ };
1503
+
1504
+ SelectWidget.defaultProps = {
1505
+ formContext: {}
1506
+ };
1507
+
1508
+ var INPUT_STYLE$3 = {
1509
+ width: '100%'
1510
+ };
1511
+
1512
+ var TextareaWidget = function TextareaWidget(_ref) {
1513
+ var disabled = _ref.disabled,
1514
+ formContext = _ref.formContext,
1515
+ id = _ref.id,
1516
+ onBlur = _ref.onBlur,
1517
+ onChange = _ref.onChange,
1518
+ onFocus = _ref.onFocus,
1519
+ options = _ref.options,
1520
+ placeholder = _ref.placeholder,
1521
+ readonly = _ref.readonly,
1522
+ value = _ref.value;
1523
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1524
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1525
+
1526
+ var handleChange = function handleChange(_ref2) {
1527
+ var target = _ref2.target;
1528
+ return onChange(target.value === '' ? options.emptyValue : target.value);
1529
+ };
1530
+
1531
+ var handleBlur = function handleBlur(_ref3) {
1532
+ var target = _ref3.target;
1533
+ return onBlur(id, target.value);
1534
+ };
1535
+
1536
+ var handleFocus = function handleFocus(_ref4) {
1537
+ var target = _ref4.target;
1538
+ return onFocus(id, target.value);
1539
+ };
1540
+
1541
+ return /*#__PURE__*/React__default.createElement(Input.TextArea, {
1542
+ disabled: disabled || readonlyAsDisabled && readonly,
1543
+ id: id,
1544
+ name: id,
1545
+ onBlur: !readonly ? handleBlur : undefined,
1546
+ onChange: !readonly ? handleChange : undefined,
1547
+ onFocus: !readonly ? handleFocus : undefined,
1548
+ placeholder: placeholder,
1549
+ rows: options.rows || 4,
1550
+ style: INPUT_STYLE$3,
1551
+ type: "textarea",
1552
+ value: value
1553
+ });
1554
+ };
1555
+
1556
+ var INPUT_STYLE$4 = {
1557
+ width: '100%'
1558
+ };
1559
+
1560
+ var TextWidget = function TextWidget(_ref) {
1561
+ var disabled = _ref.disabled,
1562
+ formContext = _ref.formContext,
1563
+ id = _ref.id,
1564
+ onBlur = _ref.onBlur,
1565
+ onChange = _ref.onChange,
1566
+ onFocus = _ref.onFocus,
1567
+ options = _ref.options,
1568
+ placeholder = _ref.placeholder,
1569
+ readonly = _ref.readonly,
1570
+ schema = _ref.schema,
1571
+ value = _ref.value;
1572
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1573
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1574
+
1575
+ var handleNumberChange = function handleNumberChange(nextValue) {
1576
+ return onChange(nextValue);
1577
+ };
1578
+
1579
+ var handleTextChange = function handleTextChange(_ref2) {
1580
+ var target = _ref2.target;
1581
+ return onChange(target.value === '' ? options.emptyValue : target.value);
1582
+ };
1583
+
1584
+ var handleBlur = function handleBlur(_ref3) {
1585
+ var target = _ref3.target;
1586
+ return onBlur(id, target.value);
1587
+ };
1588
+
1589
+ var handleFocus = function handleFocus(_ref4) {
1590
+ var target = _ref4.target;
1591
+ return onFocus(id, target.value);
1592
+ };
1593
+
1594
+ return schema.type === 'number' || schema.type === 'integer' ? /*#__PURE__*/React__default.createElement(InputNumber, {
1595
+ disabled: disabled || readonlyAsDisabled && readonly,
1596
+ id: id,
1597
+ name: id,
1598
+ onBlur: !readonly ? handleBlur : undefined,
1599
+ onChange: !readonly ? handleNumberChange : undefined,
1600
+ onFocus: !readonly ? handleFocus : undefined,
1601
+ placeholder: placeholder,
1602
+ style: INPUT_STYLE$4,
1603
+ type: "number",
1604
+ value: value
1605
+ }) : /*#__PURE__*/React__default.createElement(Input, {
1606
+ disabled: disabled || readonlyAsDisabled && readonly,
1607
+ id: id,
1608
+ name: id,
1609
+ onBlur: !readonly ? handleBlur : undefined,
1610
+ onChange: !readonly ? handleTextChange : undefined,
1611
+ onFocus: !readonly ? handleFocus : undefined,
1612
+ placeholder: placeholder,
1613
+ style: INPUT_STYLE$4,
1614
+ type: options.inputType || 'text',
1615
+ value: value
1616
+ });
1617
+ };
1618
+
1619
+ var INPUT_STYLE$5 = {
1620
+ width: '100%'
1621
+ };
1622
+
1623
+ var UpDownWidget = function UpDownWidget(_ref) {
1624
+ var disabled = _ref.disabled,
1625
+ formContext = _ref.formContext,
1626
+ id = _ref.id,
1627
+ onBlur = _ref.onBlur,
1628
+ onChange = _ref.onChange,
1629
+ onFocus = _ref.onFocus,
1630
+ placeholder = _ref.placeholder,
1631
+ readonly = _ref.readonly,
1632
+ value = _ref.value;
1633
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1634
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1635
+
1636
+ var handleChange = function handleChange(nextValue) {
1637
+ return onChange(nextValue);
1638
+ };
1639
+
1640
+ var handleBlur = function handleBlur(_ref2) {
1641
+ var target = _ref2.target;
1642
+ return onBlur(id, target.value);
1643
+ };
1644
+
1645
+ var handleFocus = function handleFocus(_ref3) {
1646
+ var target = _ref3.target;
1647
+ return onFocus(id, target.value);
1648
+ };
1649
+
1650
+ return /*#__PURE__*/React__default.createElement(InputNumber, {
1651
+ disabled: disabled || readonlyAsDisabled && readonly,
1652
+ id: id,
1653
+ name: id,
1654
+ onBlur: !readonly ? handleBlur : undefined,
1655
+ onChange: !readonly ? handleChange : undefined,
1656
+ onFocus: !readonly ? handleFocus : undefined,
1657
+ placeholder: placeholder,
1658
+ style: INPUT_STYLE$5,
1659
+ type: "number",
1660
+ value: value
1661
+ });
1662
+ };
1663
+
1664
+ var INPUT_STYLE$6 = {
1665
+ width: '100%'
1666
+ };
1667
+
1668
+ var URLWidget = function URLWidget(_ref) {
1669
+ var disabled = _ref.disabled,
1670
+ formContext = _ref.formContext,
1671
+ id = _ref.id,
1672
+ onBlur = _ref.onBlur,
1673
+ onChange = _ref.onChange,
1674
+ onFocus = _ref.onFocus,
1675
+ options = _ref.options,
1676
+ placeholder = _ref.placeholder,
1677
+ readonly = _ref.readonly,
1678
+ value = _ref.value;
1679
+ var _formContext$readonly = formContext.readonlyAsDisabled,
1680
+ readonlyAsDisabled = _formContext$readonly === void 0 ? true : _formContext$readonly;
1681
+
1682
+ var handleChange = function handleChange(_ref2) {
1683
+ var target = _ref2.target;
1684
+ return onChange(target.value === '' ? options.emptyValue : target.value);
1685
+ };
1686
+
1687
+ var handleBlur = function handleBlur(_ref3) {
1688
+ var target = _ref3.target;
1689
+ return onBlur(id, target.value);
1690
+ };
1691
+
1692
+ var handleFocus = function handleFocus(_ref4) {
1693
+ var target = _ref4.target;
1694
+ return onFocus(id, target.value);
1695
+ };
1696
+
1697
+ return /*#__PURE__*/React__default.createElement(Input, {
1698
+ disabled: disabled || readonlyAsDisabled && readonly,
1699
+ id: id,
1700
+ name: id,
1701
+ onBlur: !readonly ? handleBlur : undefined,
1702
+ onChange: !readonly ? handleChange : undefined,
1703
+ onFocus: !readonly ? handleFocus : undefined,
1704
+ placeholder: placeholder,
1705
+ style: INPUT_STYLE$6,
1706
+ type: "url",
1707
+ value: value
1708
+ });
1709
+ };
1710
+
1711
+ var getSubmitButtonOptions = core.utils.getSubmitButtonOptions;
1712
+ var SubmitButton = (function (_ref) {
1713
+ var uiSchema = _ref.uiSchema;
1714
+
1715
+ var _getSubmitButtonOptio = getSubmitButtonOptions(uiSchema),
1716
+ submitText = _getSubmitButtonOptio.submitText,
1717
+ norender = _getSubmitButtonOptio.norender,
1718
+ submitButtonProps = _getSubmitButtonOptio.props;
1719
+
1720
+ if (norender) {
1721
+ return null;
1722
+ }
1723
+
1724
+ return /*#__PURE__*/React__default.createElement(Button, _extends({
1725
+ htmlType: "submit"
1726
+ }, submitButtonProps), submitText);
1727
+ });
1728
+
1729
+ var ErrorList = function ErrorList(_ref) {
1730
+ var errors = _ref.errors;
1731
+
1732
+ var renderErrors = function renderErrors() {
1733
+ return /*#__PURE__*/React__default.createElement(List, {
1734
+ className: "list-group",
1735
+ size: "small"
1736
+ }, errors.map(function (error, index) {
1737
+ return /*#__PURE__*/React__default.createElement(List.Item, {
1738
+ key: index
1739
+ }, /*#__PURE__*/React__default.createElement(Space, null, /*#__PURE__*/React__default.createElement(ExclamationCircleOutlined, null), error.stack));
1740
+ }));
1741
+ };
1742
+
1743
+ return /*#__PURE__*/React__default.createElement(Alert, {
1744
+ className: "panel panel-danger errors",
1745
+ description: renderErrors(),
1746
+ message: "Errors",
1747
+ type: "error"
1748
+ });
1749
+ };
1750
+
1751
+ var getDefaultRegistry = core.utils.getDefaultRegistry;
1752
+
1753
+ var _getDefaultRegistry = /*#__PURE__*/getDefaultRegistry(),
1754
+ fields = _getDefaultRegistry.fields,
1755
+ widgets = _getDefaultRegistry.widgets;
1756
+
1757
+ var Fields = {
1758
+ DescriptionField: DescriptionField,
1759
+ TitleField: TitleField$1
1760
+ };
1761
+ var Widgets = {
1762
+ AltDateTimeWidget: AltDateTimeWidget,
1763
+ AltDateWidget: AltDateWidget,
1764
+ CheckboxesWidget: CheckboxesWidget,
1765
+ CheckboxWidget: CheckboxWidget,
1766
+ ColorWidget: ColorWidget,
1767
+ DateTimeWidget: DateTimeWidget,
1768
+ DateWidget: DateWidget,
1769
+ EmailWidget: EmailWidget,
1770
+ PasswordWidget: PasswordWidget,
1771
+ RadioWidget: RadioWidget,
1772
+ RangeWidget: RangeWidget,
1773
+ SelectWidget: SelectWidget,
1774
+ TextareaWidget: TextareaWidget,
1775
+ TextWidget: TextWidget,
1776
+ UpDownWidget: UpDownWidget,
1777
+ URLWidget: URLWidget,
1778
+ SubmitButton: SubmitButton
1779
+ };
1780
+ var Theme = {
1781
+ ArrayFieldTemplate: ArrayFieldTemplate,
1782
+ fields: /*#__PURE__*/_extends({}, fields, Fields),
1783
+ FieldTemplate: FieldTemplate,
1784
+ ObjectFieldTemplate: ObjectFieldTemplate$1,
1785
+ widgets: /*#__PURE__*/_extends({}, widgets, Widgets),
1786
+ ErrorList: ErrorList
1787
+ };
1788
+ var Form = /*#__PURE__*/core.withTheme(Theme);
1789
+
1790
+ exports.Fields = Fields;
1791
+ exports.Form = Form;
1792
+ exports.Theme = Theme;
1793
+ exports.Widgets = Widgets;
1794
+ exports.default = Form;
1795
+
1796
+ Object.defineProperty(exports, '__esModule', { value: true });
1797
+
1798
+ })));
1799
+ //# sourceMappingURL=antd.umd.development.js.map