react-survey-builder 1.0.72 → 1.0.74
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.
- package/README.md +2 -0
- package/dist/app.css +1 -1
- package/dist/app.css.map +1 -1
- package/dist/bundle.js +628 -35
- package/dist/src_survey-elements-edit_jsx.bundle.js +2 -2
- package/lib/dynamic-option-list.js +140 -155
- package/lib/fieldset/FieldSet.js +118 -0
- package/lib/fieldset/index.js +2 -132
- package/lib/form-fields.js +41 -14
- package/lib/form-steps.js +793 -0
- package/lib/form.js +43 -15
- package/lib/index.js +129 -122
- package/lib/multi-column/MultiColumnRow.js +69 -81
- package/lib/multi-column/dustbin.js +52 -18
- package/lib/preview.js +378 -349
- package/lib/sortable-element.js +9 -0
- package/lib/sortable-form-elements.js +28 -2
- package/lib/step/Step.js +147 -0
- package/lib/step/index.js +2 -0
- package/lib/survey-elements/component-drag-layer.js +13 -8
- package/lib/survey-elements/component-error-message.js +1 -1
- package/lib/survey-elements/component-header.js +12 -11
- package/lib/survey-elements/custom-element.js +51 -62
- package/lib/survey-elements/header-bar.js +36 -55
- package/lib/survey-elements/index.js +372 -370
- package/lib/survey-elements/star-rating.js +232 -282
- package/lib/survey-elements-edit.js +659 -564
- package/lib/survey-place-holder.js +9 -33
- package/lib/survey-validator.js +45 -75
- package/lib/toolbar-draggable-item.js +10 -34
- package/lib/toolbar-group-item.js +1 -1
- package/lib/toolbar.js +578 -558
- package/lib/utils/objectUtils.js +139 -0
- package/package.json +6 -5
- package/types/index.d.ts +5 -0
package/lib/form.js
CHANGED
@@ -2,23 +2,28 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
|
|
2
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
3
3
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
4
4
|
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."); }
|
5
|
-
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); }
|
6
5
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
7
6
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
8
|
-
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; }
|
9
7
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
10
8
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
11
9
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
12
10
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
13
11
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
12
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
13
|
+
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."); }
|
14
|
+
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); }
|
15
|
+
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; }
|
16
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
17
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
14
18
|
import React from 'react';
|
15
19
|
import ReactDOM from 'react-dom';
|
16
20
|
import SurveyElements, { Image, Checkboxes, Signature, Download, Camera, FileUpload, PhoneNumber, DatePicker, TextInput, EmailInput, NumberInput, TextArea } from './survey-elements';
|
17
21
|
import { TwoColumnRow, ThreeColumnRow, MultiColumnRow } from './multi-column';
|
18
|
-
import FieldSet from './fieldset';
|
22
|
+
import { FieldSet } from './fieldset';
|
23
|
+
import { Step } from './step';
|
19
24
|
import CustomElement from './survey-elements/custom-element';
|
20
25
|
import Registry from './stores/registry';
|
21
|
-
import { Button, Form } from 'react-bootstrap
|
26
|
+
import { Button, Form } from 'react-bootstrap';
|
22
27
|
import { Controller, FormProvider, useForm } from "react-hook-form";
|
23
28
|
var ReactSurvey = function ReactSurvey(_ref) {
|
24
29
|
var _ref$validateForCorre = _ref.validateForCorrectness,
|
@@ -45,6 +50,8 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
45
50
|
variables = _ref.variables,
|
46
51
|
buttonClassName = _ref.buttonClassName,
|
47
52
|
checkboxButtonClassName = _ref.checkboxButtonClassName,
|
53
|
+
headerClassName = _ref.headerClassName,
|
54
|
+
labelClassName = _ref.labelClassName,
|
48
55
|
formId = _ref.formId,
|
49
56
|
_ref$print = _ref.print,
|
50
57
|
print = _ref$print === void 0 ? false : _ref$print;
|
@@ -74,6 +81,10 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
74
81
|
var form = React.useRef();
|
75
82
|
var inputs = React.useRef({});
|
76
83
|
var answerData = React.useRef(_convert(answers));
|
84
|
+
var _React$useState = React.useState(null),
|
85
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
86
|
+
formAnswers = _React$useState2[0],
|
87
|
+
setFormAnswers = _React$useState2[1];
|
77
88
|
var _getDefaultValue = function _getDefaultValue($dataItem) {
|
78
89
|
var defaultValue = answerData.current[$dataItem.fieldName];
|
79
90
|
if ($dataItem.element === 'DatePicker') {
|
@@ -188,7 +199,9 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
188
199
|
};
|
189
200
|
var _collectFormData = function _collectFormData($dataItems, $formData) {
|
190
201
|
var formData = [];
|
191
|
-
$dataItems.
|
202
|
+
$dataItems.filter(function (i) {
|
203
|
+
return i["static"] !== true;
|
204
|
+
}).forEach(function (item) {
|
192
205
|
var itemData = {
|
193
206
|
id: item.id,
|
194
207
|
name: item.fieldName,
|
@@ -222,6 +235,7 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
222
235
|
formData: $formData,
|
223
236
|
answers: $data
|
224
237
|
});
|
238
|
+
setFormAnswers($data);
|
225
239
|
} else {
|
226
240
|
var $form = ReactDOM.findDOMNode(form.current);
|
227
241
|
$form.submit();
|
@@ -229,12 +243,14 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
229
243
|
}
|
230
244
|
};
|
231
245
|
var handleChange = function handleChange(event) {
|
232
|
-
// console.log('handleChange');
|
233
246
|
// Call submit function on change
|
247
|
+
var $data = _collectFormData(items, (methods === null || methods === void 0 ? void 0 : methods.getValues()) || []);
|
248
|
+
// console.log('handleChange', $data);
|
249
|
+
|
234
250
|
if (onChange) {
|
235
|
-
var $data = _collectFormData(items, (methods === null || methods === void 0 ? void 0 : methods.getValues()) || []);
|
236
251
|
onChange($data);
|
237
252
|
}
|
253
|
+
setFormAnswers($data);
|
238
254
|
};
|
239
255
|
var validateForm = function validateForm() {
|
240
256
|
var hasErrors = false;
|
@@ -262,29 +278,35 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
262
278
|
return x.id === id;
|
263
279
|
});
|
264
280
|
if ($dataItem !== undefined) {
|
265
|
-
var _ref2, _ref3, _ref4;
|
281
|
+
var _ref2, _ref3, _ref4, _$dataItem$fieldName;
|
266
282
|
return _objectSpread(_objectSpread({}, $dataItem), {}, {
|
267
283
|
fieldRules: getFieldRules($dataItem),
|
268
284
|
print: print !== null && print !== void 0 ? print : false,
|
269
285
|
readOnly: (_ref2 = readOnly || $dataItem.readOnly) !== null && _ref2 !== void 0 ? _ref2 : false,
|
270
286
|
hideLabel: (_ref3 = hideLabels || $dataItem.hideLabel) !== null && _ref3 !== void 0 ? _ref3 : false,
|
271
287
|
disabled: (_ref4 = readOnly || $dataItem.readOnly) !== null && _ref4 !== void 0 ? _ref4 : false,
|
272
|
-
mutable: true
|
288
|
+
mutable: true,
|
289
|
+
name: (_$dataItem$fieldName = $dataItem.fieldName) !== null && _$dataItem$fieldName !== void 0 ? _$dataItem$fieldName : $dataItem.name,
|
290
|
+
key: "form_".concat($dataItem.id),
|
291
|
+
item: $dataItem,
|
292
|
+
value: _getDefaultValue($dataItem)
|
273
293
|
});
|
274
294
|
}
|
275
295
|
return null;
|
276
296
|
};
|
277
297
|
var getStandardElement = function getStandardElement(item) {
|
298
|
+
var _item$fieldName;
|
278
299
|
if (!item) return null;
|
279
300
|
if (item.custom) {
|
280
301
|
return getCustomElement(item);
|
281
302
|
}
|
282
303
|
var Input = SurveyElements[item.element];
|
283
304
|
return /*#__PURE__*/React.createElement(Input, {
|
284
|
-
name: item.fieldName,
|
305
|
+
name: (_item$fieldName = item.fieldName) !== null && _item$fieldName !== void 0 ? _item$fieldName : item.name,
|
285
306
|
key: "form_".concat(item.id),
|
286
307
|
item: item,
|
287
|
-
value: _getDefaultValue(item)
|
308
|
+
value: _getDefaultValue(item),
|
309
|
+
onChange: handleChange
|
288
310
|
});
|
289
311
|
};
|
290
312
|
var getInputElement = function getInputElement(item) {
|
@@ -334,14 +356,16 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
334
356
|
});
|
335
357
|
};
|
336
358
|
var getContainerElement = function getContainerElement(item, Element) {
|
337
|
-
var controls = item.childItems.map(function (childItem) {
|
359
|
+
var controls = item === null || item === void 0 ? void 0 : item.childItems.map(function (childItem) {
|
338
360
|
return childItem ? getInputElement(getDataItemById(childItem)) : /*#__PURE__*/React.createElement("div", null, "\xA0");
|
339
361
|
});
|
340
362
|
return /*#__PURE__*/React.createElement(Element, {
|
341
363
|
mutable: true,
|
342
364
|
key: "form_".concat(item.id),
|
343
365
|
item: item,
|
344
|
-
controls: controls
|
366
|
+
controls: controls,
|
367
|
+
items: items,
|
368
|
+
answers: formAnswers
|
345
369
|
});
|
346
370
|
};
|
347
371
|
var getSimpleElement = function getSimpleElement(item) {
|
@@ -349,7 +373,9 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
349
373
|
return /*#__PURE__*/React.createElement(Element, {
|
350
374
|
mutable: true,
|
351
375
|
key: "form_".concat(item.id),
|
352
|
-
item: item
|
376
|
+
item: item,
|
377
|
+
headerClassName: headerClassName,
|
378
|
+
labelClassName: labelClassName
|
353
379
|
});
|
354
380
|
};
|
355
381
|
var getCustomElement = function getCustomElement(item) {
|
@@ -453,10 +479,10 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
453
479
|
item.mutable = true;
|
454
480
|
switch (item.element) {
|
455
481
|
case 'RadioButtons':
|
456
|
-
case 'Rating':
|
457
482
|
case 'Range':
|
458
483
|
case 'Checkbox':
|
459
484
|
return getInputElement(item);
|
485
|
+
case 'Rating':
|
460
486
|
case 'Tags':
|
461
487
|
case 'Dropdown':
|
462
488
|
case 'TextInput':
|
@@ -474,6 +500,8 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
474
500
|
return getContainerElement(item, ThreeColumnRow);
|
475
501
|
case 'TwoColumnRow':
|
476
502
|
return getContainerElement(item, TwoColumnRow);
|
503
|
+
case 'Step':
|
504
|
+
return getContainerElement(item, Step);
|
477
505
|
case 'FieldSet':
|
478
506
|
return getContainerElement(item, FieldSet);
|
479
507
|
case 'Signature':
|
package/lib/index.js
CHANGED
@@ -1,17 +1,9 @@
|
|
1
|
-
function
|
2
|
-
function
|
3
|
-
function
|
4
|
-
function
|
5
|
-
function
|
6
|
-
function
|
7
|
-
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
8
|
-
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
9
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
10
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
11
|
-
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
12
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
13
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
14
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
2
|
+
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."); }
|
3
|
+
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); }
|
4
|
+
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; }
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
6
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
15
7
|
import React from 'react';
|
16
8
|
import { DndProvider } from 'react-dnd';
|
17
9
|
import { HTML5Backend } from 'react-dnd-html5-backend';
|
@@ -19,115 +11,114 @@ import Preview from './preview';
|
|
19
11
|
import Toolbar from './toolbar';
|
20
12
|
import SurveyGenerator from './form';
|
21
13
|
import SurveyFieldGenerator from './form-fields';
|
14
|
+
import SurveyStepGenerator from './form-steps';
|
22
15
|
import store from './stores/store';
|
23
16
|
import Registry from './stores/registry';
|
24
|
-
import {
|
25
|
-
var ReactSurveyBuilder =
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
}, {
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
}, {
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
})))))));
|
122
|
-
}
|
123
|
-
}]);
|
124
|
-
}(React.Component);
|
125
|
-
function ReactSurveyGenerator(props) {
|
17
|
+
import { Col, Container, Nav, Navbar, Row } from 'react-bootstrap';
|
18
|
+
var ReactSurveyBuilder = function ReactSurveyBuilder(_ref) {
|
19
|
+
var _ref$items = _ref.items,
|
20
|
+
items = _ref$items === void 0 ? [] : _ref$items,
|
21
|
+
_ref$showCorrectColum = _ref.showCorrectColumn,
|
22
|
+
showCorrectColumn = _ref$showCorrectColum === void 0 ? false : _ref$showCorrectColum,
|
23
|
+
_ref$files = _ref.files,
|
24
|
+
files = _ref$files === void 0 ? [] : _ref$files,
|
25
|
+
_ref$saveAlways = _ref.saveAlways,
|
26
|
+
saveAlways = _ref$saveAlways === void 0 ? false : _ref$saveAlways,
|
27
|
+
_ref$toolbarItems = _ref.toolbarItems,
|
28
|
+
toolbarItems = _ref$toolbarItems === void 0 ? [] : _ref$toolbarItems,
|
29
|
+
_ref$customToolbarIte = _ref.customToolbarItems,
|
30
|
+
customToolbarItems = _ref$customToolbarIte === void 0 ? [] : _ref$customToolbarIte,
|
31
|
+
_ref$showDescription = _ref.showDescription,
|
32
|
+
showDescription = _ref$showDescription === void 0 ? false : _ref$showDescription,
|
33
|
+
_ref$surveyName = _ref.surveyName,
|
34
|
+
surveyName = _ref$surveyName === void 0 ? null : _ref$surveyName,
|
35
|
+
_ref$saveSurveyName = _ref.saveSurveyName,
|
36
|
+
saveSurveyName = _ref$saveSurveyName === void 0 ? null : _ref$saveSurveyName,
|
37
|
+
_ref$previewSurveyBlo = _ref.previewSurveyBlock,
|
38
|
+
previewSurveyBlock = _ref$previewSurveyBlo === void 0 ? null : _ref$previewSurveyBlo,
|
39
|
+
renderEditForm = _ref.renderEditForm,
|
40
|
+
variables = _ref.variables,
|
41
|
+
onPost = _ref.onPost,
|
42
|
+
onLoad = _ref.onLoad,
|
43
|
+
url = _ref.url,
|
44
|
+
saveUrl = _ref.saveUrl;
|
45
|
+
var _React$useState = React.useState(false),
|
46
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
47
|
+
editMode = _React$useState2[0],
|
48
|
+
setEditMode = _React$useState2[1];
|
49
|
+
var _React$useState3 = React.useState(null),
|
50
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
51
|
+
editElement = _React$useState4[0],
|
52
|
+
setEditElement = _React$useState4[1];
|
53
|
+
var saveFormData = function saveFormData() {
|
54
|
+
store.dispatch('post');
|
55
|
+
};
|
56
|
+
return /*#__PURE__*/React.createElement(DndProvider, {
|
57
|
+
backend: HTML5Backend
|
58
|
+
}, /*#__PURE__*/React.createElement(Navbar, {
|
59
|
+
expand: "lg",
|
60
|
+
bg: "light",
|
61
|
+
"data-bs-theme": "light",
|
62
|
+
sticky: "top"
|
63
|
+
}, /*#__PURE__*/React.createElement(Container, {
|
64
|
+
fluid: true
|
65
|
+
}, /*#__PURE__*/React.createElement(Navbar.Brand, null, surveyName !== null && surveyName !== void 0 ? surveyName : 'Preview'), /*#__PURE__*/React.createElement(Navbar.Toggle, {
|
66
|
+
"aria-controls": "survey-builder-nav"
|
67
|
+
}), /*#__PURE__*/React.createElement(Navbar.Collapse, {
|
68
|
+
id: "survey-builder-nav"
|
69
|
+
}, /*#__PURE__*/React.createElement(Nav, {
|
70
|
+
className: "me-auto"
|
71
|
+
}, !!!saveAlways && /*#__PURE__*/React.createElement(Nav.Link, {
|
72
|
+
onClick: function onClick() {
|
73
|
+
saveFormData();
|
74
|
+
}
|
75
|
+
}, saveSurveyName || 'Save Survey')), previewSurveyBlock ? previewSurveyBlock : null))), /*#__PURE__*/React.createElement(Container, {
|
76
|
+
fluid: true,
|
77
|
+
className: "react-survey-builder position-absolute overflow-hidden",
|
78
|
+
style: {
|
79
|
+
top: 56,
|
80
|
+
height: 'calc(100% - 56px)'
|
81
|
+
}
|
82
|
+
}, /*#__PURE__*/React.createElement(Row, {
|
83
|
+
className: "overflow-hidden h-100"
|
84
|
+
}, /*#__PURE__*/React.createElement(Col, {
|
85
|
+
xs: 9,
|
86
|
+
className: "overflow-hidden h-100"
|
87
|
+
}, /*#__PURE__*/React.createElement(Preview, {
|
88
|
+
files: files,
|
89
|
+
showCorrectColumn: showCorrectColumn,
|
90
|
+
showDescription: showDescription,
|
91
|
+
items: items,
|
92
|
+
url: url,
|
93
|
+
saveUrl: saveUrl,
|
94
|
+
onLoad: onLoad,
|
95
|
+
onPost: onPost,
|
96
|
+
editMode: editMode,
|
97
|
+
setEditMode: setEditMode,
|
98
|
+
variables: variables,
|
99
|
+
registry: Registry,
|
100
|
+
editElement: editElement,
|
101
|
+
setEditElement: setEditElement,
|
102
|
+
renderEditForm: renderEditForm,
|
103
|
+
saveAlways: saveAlways
|
104
|
+
})), /*#__PURE__*/React.createElement(Col, {
|
105
|
+
xs: 3,
|
106
|
+
className: "overflow-hidden h-100"
|
107
|
+
}, /*#__PURE__*/React.createElement(Toolbar, {
|
108
|
+
showDescription: showDescription,
|
109
|
+
items: toolbarItems,
|
110
|
+
customItems: customToolbarItems
|
111
|
+
})))));
|
112
|
+
};
|
113
|
+
var ReactSurveyGenerator = function ReactSurveyGenerator(props) {
|
126
114
|
return /*#__PURE__*/React.createElement(SurveyGenerator, props);
|
127
|
-
}
|
128
|
-
function ReactSurveyFieldGenerator(props) {
|
115
|
+
};
|
116
|
+
var ReactSurveyFieldGenerator = function ReactSurveyFieldGenerator(props) {
|
129
117
|
return /*#__PURE__*/React.createElement(SurveyFieldGenerator, props);
|
130
|
-
}
|
118
|
+
};
|
119
|
+
var ReactSurveyStepGenerator = function ReactSurveyStepGenerator(props) {
|
120
|
+
return /*#__PURE__*/React.createElement(SurveyStepGenerator, props);
|
121
|
+
};
|
131
122
|
var cleanUpSurveyItems = function cleanUpSurveyItems() {
|
132
123
|
var items = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
133
124
|
return items.map(function (item) {
|
@@ -138,6 +129,21 @@ var cleanUpSurveyItems = function cleanUpSurveyItems() {
|
|
138
129
|
text: item.text,
|
139
130
|
"static": item["static"]
|
140
131
|
};
|
132
|
+
if (item.childItems !== undefined && item.childItems !== null) {
|
133
|
+
dataItem.childItems = item.childItems;
|
134
|
+
}
|
135
|
+
if (item.name !== undefined && item.name !== null) {
|
136
|
+
dataItem.name = item.name;
|
137
|
+
}
|
138
|
+
if (item.conditional !== undefined && item.conditional !== null) {
|
139
|
+
dataItem.conditional = item.conditional;
|
140
|
+
}
|
141
|
+
if (item.conditionalFieldName !== undefined && item.conditionalFieldName !== null) {
|
142
|
+
dataItem.conditionalFieldName = item.conditionalFieldName;
|
143
|
+
}
|
144
|
+
if (item.conditionalFieldValue !== undefined && item.conditionalFieldValue !== null) {
|
145
|
+
dataItem.conditionalFieldValue = item.conditionalFieldValue;
|
146
|
+
}
|
141
147
|
if (item.groupName !== undefined && item.groupName !== null) {
|
142
148
|
dataItem.groupName = item.groupName;
|
143
149
|
}
|
@@ -165,9 +171,6 @@ var cleanUpSurveyItems = function cleanUpSurveyItems() {
|
|
165
171
|
if (item.hideLabel !== undefined && item.hideLabel !== null) {
|
166
172
|
dataItem.hideLabel = item.hideLabel;
|
167
173
|
}
|
168
|
-
if (props.hideLabels !== undefined && props.hideLabels !== null) {
|
169
|
-
dataItem.hideLabel = props.hideLabels;
|
170
|
-
}
|
171
174
|
if (item.readOnly !== undefined && item.readOnly !== null) {
|
172
175
|
dataItem.readOnly = item.readOnly;
|
173
176
|
}
|
@@ -183,6 +186,9 @@ var cleanUpSurveyItems = function cleanUpSurveyItems() {
|
|
183
186
|
if (item.inherited !== undefined && item.inherited !== null) {
|
184
187
|
dataItem.inherited = item.inherited;
|
185
188
|
}
|
189
|
+
if (item.isContainer !== undefined && item.isContainer !== null) {
|
190
|
+
dataItem.isContainer = item.isContainer;
|
191
|
+
}
|
186
192
|
if (item.type === 'custom') {
|
187
193
|
elementOptions.key = item.key;
|
188
194
|
elementOptions.custom = true;
|
@@ -250,6 +256,7 @@ var SurveyBuilders = {};
|
|
250
256
|
SurveyBuilders.ReactSurveyBuilder = ReactSurveyBuilder;
|
251
257
|
SurveyBuilders.ReactSurveyGenerator = ReactSurveyGenerator;
|
252
258
|
SurveyBuilders.ReactSurveyFieldGenerator = ReactSurveyFieldGenerator;
|
259
|
+
SurveyBuilders.ReactSurveyStepGenerator = ReactSurveyStepGenerator;
|
253
260
|
SurveyBuilders.ElementStore = store;
|
254
261
|
SurveyBuilders.Registry = Registry;
|
255
262
|
SurveyBuilders.cleanUpSurveyItems = cleanUpSurveyItems;
|