react-survey-builder 1.0.72 → 1.0.73

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/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/esm';
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.forEach(function (item) {
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 _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
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
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
4
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
5
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
6
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
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 { Button, Col, Container, Form, Row } from 'react-bootstrap/esm';
25
- var ReactSurveyBuilder = /*#__PURE__*/function (_React$Component) {
26
- function ReactSurveyBuilder(props) {
27
- var _this;
28
- _classCallCheck(this, ReactSurveyBuilder);
29
- _this = _callSuper(this, ReactSurveyBuilder, [props]);
30
- _this.state = {
31
- editMode: false,
32
- editElement: null
33
- };
34
- _this.editModeOn = _this.editModeOn.bind(_this);
35
- return _this;
36
- }
37
- _inherits(ReactSurveyBuilder, _React$Component);
38
- return _createClass(ReactSurveyBuilder, [{
39
- key: "editModeOn",
40
- value: function editModeOn($dataItem, e) {
41
- e.preventDefault();
42
- e.stopPropagation();
43
- if (this.state.editMode) {
44
- this.setState({
45
- editMode: !this.state.editMode,
46
- editElement: null
47
- });
48
- } else {
49
- this.setState({
50
- editMode: !this.state.editMode,
51
- editElement: $dataItem
52
- });
53
- }
54
- }
55
- }, {
56
- key: "manualEditModeOff",
57
- value: function manualEditModeOff() {
58
- if (this.state.editMode) {
59
- this.setState({
60
- editMode: false,
61
- editElement: null
62
- });
63
- }
64
- }
65
- }, {
66
- key: "saveFormData",
67
- value: function saveFormData() {
68
- store.dispatch('post');
69
- }
70
- }, {
71
- key: "render",
72
- value: function render() {
73
- var _this$props$editSurve,
74
- _this2 = this,
75
- _this$props$saveSurve;
76
- var toolbarProps = {
77
- showDescription: this.props.showDescription
78
- };
79
- if (this.props.toolbarItems) {
80
- toolbarProps.items = this.props.toolbarItems;
81
- }
82
- return /*#__PURE__*/React.createElement(DndProvider, {
83
- backend: HTML5Backend
84
- }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Container, {
85
- fluid: true,
86
- className: "react-survey-builder"
87
- }, /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement(Col, {
88
- md: 9
89
- }, /*#__PURE__*/React.createElement(Preview, {
90
- files: this.props.files,
91
- manualEditModeOff: this.manualEditModeOff.bind(this),
92
- showCorrectColumn: this.props.showCorrectColumn,
93
- parent: this,
94
- items: this.props.items,
95
- url: this.props.url,
96
- saveUrl: this.props.saveUrl,
97
- onLoad: this.props.onLoad,
98
- onPost: this.props.onPost,
99
- editModeOn: this.editModeOn,
100
- editMode: this.state.editMode,
101
- variables: this.props.variables,
102
- registry: Registry,
103
- editElement: this.state.editElement,
104
- renderEditForm: this.props.renderEditForm,
105
- saveAlways: this.props.saveAlways
106
- })), /*#__PURE__*/React.createElement(Col, {
107
- md: 3
108
- }, (!!!this.props.saveAlways || this.props.editSurveyBlock || this.props.previewSurveyBlock || this.props.surveyName) && /*#__PURE__*/React.createElement("div", {
109
- className: this.props.surveyToolbarClassName
110
- }, (!!!this.props.saveAlways || this.props.editSurveyBlock || this.props.surveyName) && /*#__PURE__*/React.createElement("div", {
111
- className: "border border-light border-3 p-3 d-grid gap-1 mb-3"
112
- }, (_this$props$editSurve = this.props.editSurveyBlock) !== null && _this$props$editSurve !== void 0 ? _this$props$editSurve : this.props.surveyName ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h4", null, this.props.surveyName)) : null, !!!this.props.saveAlways && /*#__PURE__*/React.createElement(Button, {
113
- variant: "primary",
114
- onClick: function onClick() {
115
- _this2.saveFormData();
116
- }
117
- }, (_this$props$saveSurve = this.props.saveSurveyName) !== null && _this$props$saveSurve !== void 0 ? _this$props$saveSurve : 'Save Survey')), this.props.previewSurveyBlock ? /*#__PURE__*/React.createElement("div", {
118
- className: "border border-light border-3 p-3 d-grid gap-1 mb-3"
119
- }, this.props.previewSurveyBlock) : null), /*#__PURE__*/React.createElement(Toolbar, _extends({}, toolbarProps, {
120
- customItems: this.props.customToolbarItems
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,8 +256,8 @@ 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;
256
- export default SurveyBuilders;
257
- export { cleanUpSurveyItems, ReactSurveyBuilder, ReactSurveyGenerator, ReactSurveyFieldGenerator, store as ElementStore, Registry };
263
+ export default SurveyBuilders;