react-survey-builder 1.0.16 → 1.0.18

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 (38) hide show
  1. package/README.md +18 -16
  2. package/dist/186.index.js +1 -0
  3. package/dist/app.css +1 -1
  4. package/dist/app.css.map +1 -1
  5. package/dist/index.js +1 -1
  6. package/lib/dynamic-option-list.js +1 -1
  7. package/lib/fieldset/FieldSet.js +15 -17
  8. package/lib/form copy.js +622 -0
  9. package/lib/form-fields.js +201 -208
  10. package/lib/form.js +765 -534
  11. package/lib/index.js +3 -3
  12. package/lib/language-provider/locales/en-us.json +1 -0
  13. package/lib/multi-column/MultiColumnRow.js +25 -25
  14. package/lib/multi-column/dustbin.js +16 -16
  15. package/lib/multi-column/grip.js +6 -6
  16. package/lib/preview.js +41 -40
  17. package/lib/sortable-element.js +6 -6
  18. package/lib/sortable-form-elements.js +2 -0
  19. package/lib/stores/store.js +22 -22
  20. package/lib/survey-elements/component-drag-handle.js +6 -6
  21. package/lib/survey-elements/component-drag-layer.js +3 -3
  22. package/lib/survey-elements/component-drag-preview.js +1 -1
  23. package/lib/survey-elements/component-error-message.js +1 -0
  24. package/lib/survey-elements/component-header.js +5 -5
  25. package/lib/survey-elements/component-label.js +12 -6
  26. package/lib/survey-elements/custom-element.js +23 -12
  27. package/lib/survey-elements/header-bar.js +5 -5
  28. package/lib/survey-elements/index.js +817 -740
  29. package/lib/survey-elements/myxss.js +68 -1
  30. package/lib/survey-elements-edit.js +211 -53
  31. package/lib/toolbar-draggable-item.js +4 -4
  32. package/lib/toolbar.js +49 -18
  33. package/lib/utils/ipUtils.js +53 -0
  34. package/package.json +2 -3
  35. package/types/index.d.ts +5 -1
  36. package/dist/967.index.js +0 -1
  37. package/lib/survey-elements/date-picker.js +0 -272
  38. package/lib/utils/custom-date-picker.js +0 -93
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports["default"] = void 0;
7
+ exports.myContentXSS = exports["default"] = void 0;
8
8
  var _xss = _interopRequireDefault(require("xss"));
9
9
  var myxss = new _xss["default"].FilterXSS({
10
10
  whiteList: {
@@ -26,4 +26,71 @@ var myxss = new _xss["default"].FilterXSS({
26
26
  ins: []
27
27
  }
28
28
  });
29
+ var myContentXSS = exports.myContentXSS = new _xss["default"].FilterXSS({
30
+ whiteList: {
31
+ a: ['href', 'title', 'target', 'style', 'class'],
32
+ abbr: ["title"],
33
+ address: [],
34
+ area: ["shape", "coords", "href", "alt"],
35
+ article: [],
36
+ aside: [],
37
+ b: [],
38
+ big: [],
39
+ blockquote: ["cite"],
40
+ br: [],
41
+ caption: [],
42
+ center: [],
43
+ cite: [],
44
+ code: [],
45
+ col: ["align", "valign", "span", "width"],
46
+ colgroup: ["align", "valign", "span", "width"],
47
+ dd: [],
48
+ del: ["datetime"],
49
+ details: ["open"],
50
+ div: ['style', 'class'],
51
+ dl: ['style', 'class'],
52
+ dt: ['style', 'class'],
53
+ em: [],
54
+ figcaption: [],
55
+ figure: [],
56
+ font: ["color", "size", "face"],
57
+ footer: [],
58
+ h1: ['style', 'class'],
59
+ h2: ['style', 'class'],
60
+ h3: ['style', 'class'],
61
+ h4: ['style', 'class'],
62
+ h5: ['style', 'class'],
63
+ h6: ['style', 'class'],
64
+ header: [],
65
+ hr: [],
66
+ i: [],
67
+ img: ["src", "alt", "title", "width", "height", "loading"],
68
+ ins: ["datetime"],
69
+ li: ['style', 'class'],
70
+ mark: [],
71
+ nav: [],
72
+ ol: ['style', 'class'],
73
+ p: ['style', 'class'],
74
+ pre: [],
75
+ s: [],
76
+ section: [],
77
+ small: [],
78
+ span: ['style', 'class'],
79
+ strike: [],
80
+ strong: [],
81
+ sub: [],
82
+ summary: [],
83
+ sup: [],
84
+ table: ["width", "border", "align", "valign"],
85
+ tbody: ["align", "valign"],
86
+ td: ["width", "rowspan", "colspan", "align", "valign"],
87
+ tfoot: ["align", "valign"],
88
+ th: ["width", "rowspan", "colspan", "align", "valign"],
89
+ thead: ["align", "valign"],
90
+ tr: ["rowspan", "align", "valign"],
91
+ tt: [],
92
+ u: [],
93
+ ul: ['style', 'class']
94
+ }
95
+ });
29
96
  var _default = exports["default"] = myxss;
@@ -23,7 +23,23 @@ var _fa = require("react-icons/fa");
23
23
  var _reactBootstrap = require("react-bootstrap");
24
24
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
25
25
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
26
- var toolbar = {
26
+ var bodyToolbar = {
27
+ options: ['inline', 'blockType', 'list', 'textAlign', 'fontSize', 'link', 'remove', 'history'],
28
+ inline: {
29
+ inDropdown: false,
30
+ className: undefined,
31
+ options: ['bold', 'italic', 'underline', 'strikethrough', 'monospace', 'superscript', 'subscript']
32
+ }
33
+ };
34
+ var headerToolbar = {
35
+ options: ['inline', 'list', 'textAlign', 'fontSize', 'link', 'history'],
36
+ inline: {
37
+ inDropdown: false,
38
+ className: undefined,
39
+ options: ['bold', 'italic', 'underline', 'superscript', 'subscript']
40
+ }
41
+ };
42
+ var labelToolbar = {
27
43
  options: ['inline', 'list', 'textAlign', 'fontSize', 'link', 'history'],
28
44
  inline: {
29
45
  inDropdown: false,
@@ -40,7 +56,7 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
40
56
  _this = _super.call(this, props);
41
57
  _this.state = {
42
58
  element: _this.props.element,
43
- data: _this.props.data,
59
+ item: _this.props.item,
44
60
  dirty: false
45
61
  };
46
62
  return _this;
@@ -71,7 +87,8 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
71
87
  key: "onEditorStateChange",
72
88
  value: function onEditorStateChange(index, property, editorContent) {
73
89
  // const html = draftToHtml(convertToRaw(editorContent.getCurrentContent())).replace(/<p>/g, '<div>').replace(/<\/p>/g, '</div>');
74
- var html = (0, _draftjsToHtml["default"])((0, _draftJs.convertToRaw)(editorContent.getCurrentContent())).replace(/<p>/g, '').replace(/<\/p>/g, '').replace(/&nbsp;/g, ' ').replace(/(?:\r\n|\r|\n)/g, '');
90
+ // const html = draftToHtml(convertToRaw(editorContent.getCurrentContent())).replace(/<p>/g, '').replace(/<\/p>/g, '').replace(/&nbsp;/g, ' ').replace(/(?:\r\n|\r|\n)/g, '');
91
+ var html = (0, _draftjsToHtml["default"])((0, _draftJs.convertToRaw)(editorContent.getCurrentContent())).replace(/&nbsp;/g, ' ').replace(/(?:\r\n|\r|\n)/g, '');
75
92
  var thisElement = this.state.element;
76
93
  thisElement[property] = html;
77
94
  this.setState({
@@ -143,12 +160,15 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
143
160
  var thisCheckedCenter = this.props.element.hasOwnProperty('center') ? this.props.element.center : false;
144
161
  var thisCheckedPageBreak = this.props.element.hasOwnProperty('pageBreakBefore') ? this.props.element.pageBreakBefore : false;
145
162
  var thisCheckedAlternateForm = this.props.element.hasOwnProperty('alternateForm') ? this.props.element.alternateForm : false;
163
+ var thisCheckedHideLabel = this.props.element.hasOwnProperty('hideLabel') ? this.props.element.hideLabel : false;
146
164
  var _this$props$element = this.props.element,
147
165
  canHavePageBreakBefore = _this$props$element.canHavePageBreakBefore,
148
166
  canHaveAlternateForm = _this$props$element.canHaveAlternateForm,
149
167
  canHaveDisplayHorizontal = _this$props$element.canHaveDisplayHorizontal,
150
168
  canHaveOptionCorrect = _this$props$element.canHaveOptionCorrect,
151
- canHaveOptionValue = _this$props$element.canHaveOptionValue;
169
+ canHaveOptionValue = _this$props$element.canHaveOptionValue,
170
+ _this$props$element$c = _this$props$element.canHideLabel,
171
+ canHideLabel = _this$props$element$c === void 0 ? false : _this$props$element$c;
152
172
  var canHaveImageSize = this.state.element.element === 'Image' || this.state.element.element === 'Camera';
153
173
  var thisFiles = this.props.files.length ? this.props.files : [];
154
174
  if (thisFiles.length < 1 || thisFiles.length > 0 && thisFiles[0].id !== '') {
@@ -175,15 +195,58 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
175
195
  }, this.props.element.text), /*#__PURE__*/_react["default"].createElement(_fa.FaTimes, {
176
196
  className: "float-end dismiss-edit",
177
197
  onClick: this.props.manualEditModeOff
178
- })), this.props.element.hasOwnProperty('content') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, null, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
198
+ })), this.props.element.hasOwnProperty('content') && this.state.element.element === 'Header' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
199
+ className: "form-group mb-5"
200
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
201
+ className: "fw-bold"
202
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
179
203
  id: "text-to-display"
180
204
  }), ":"), /*#__PURE__*/_react["default"].createElement(_reactDraftWysiwyg.Editor, {
181
- toolbar: toolbar,
205
+ toolbar: headerToolbar,
206
+ defaultEditorState: editorState,
207
+ onBlur: this.updateElement.bind(this),
208
+ onEditorStateChange: this.onEditorStateChange.bind(this, 0, 'content'),
209
+ stripPastedStyles: true
210
+ })), this.props.element.hasOwnProperty('content') && this.state.element.element === 'Label' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
211
+ className: "form-group mb-5"
212
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
213
+ className: "fw-bold"
214
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
215
+ id: "text-to-display"
216
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactDraftWysiwyg.Editor, {
217
+ toolbar: labelToolbar,
182
218
  defaultEditorState: editorState,
183
219
  onBlur: this.updateElement.bind(this),
184
220
  onEditorStateChange: this.onEditorStateChange.bind(this, 0, 'content'),
185
221
  stripPastedStyles: true
186
- })), this.props.element.hasOwnProperty('filePath') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
222
+ })), this.props.element.hasOwnProperty('content') && this.state.element.element === 'Paragraph' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
223
+ className: "form-group mb-5"
224
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
225
+ className: "fw-bold"
226
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
227
+ id: "text-to-display"
228
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactDraftWysiwyg.Editor, {
229
+ toolbar: labelToolbar,
230
+ defaultEditorState: editorState,
231
+ onBlur: this.updateElement.bind(this),
232
+ onEditorStateChange: this.onEditorStateChange.bind(this, 0, 'content'),
233
+ stripPastedStyles: true
234
+ })), this.props.element.hasOwnProperty('content') && this.state.element.element === 'ContentBody' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
235
+ className: "form-group mb-5"
236
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
237
+ className: "fw-bold"
238
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
239
+ id: "text-to-display"
240
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactDraftWysiwyg.Editor, {
241
+ toolbar: bodyToolbar,
242
+ defaultEditorState: editorState,
243
+ onBlur: this.updateElement.bind(this),
244
+ onEditorStateChange: this.onEditorStateChange.bind(this, 0, 'content')
245
+ //stripPastedStyles={true}
246
+ })), this.props.element.hasOwnProperty('filePath') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
247
+ className: "form-group mb-5"
248
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
249
+ className: "fw-bold",
187
250
  htmlFor: "fileSelect"
188
251
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
189
252
  id: "choose-file"
@@ -198,21 +261,34 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
198
261
  value: file.id,
199
262
  key: thisKey
200
263
  }, file.file_name);
201
- }))), this.props.element.hasOwnProperty('href') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactTextareaAutosize["default"], {
264
+ }))), this.props.element.hasOwnProperty('href') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
265
+ className: "form-group mb-5"
266
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
267
+ className: "fw-bold",
268
+ htmlFor: "href"
269
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
270
+ id: "link-to"
271
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
272
+ id: "href",
202
273
  type: "text",
203
- className: "form-control",
204
274
  defaultValue: this.props.element.href,
205
275
  onBlur: this.updateElement.bind(this),
206
276
  onChange: this.editElementProp.bind(this, 'href', 'value')
207
- })), this.props.element.hasOwnProperty('label') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, null, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
277
+ })), this.props.element.hasOwnProperty('label') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
278
+ className: "form-group mb-5"
279
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
280
+ className: "fw-bold"
281
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
208
282
  id: "display-label"
209
- })), /*#__PURE__*/_react["default"].createElement(_reactDraftWysiwyg.Editor, {
210
- toolbar: toolbar,
283
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactDraftWysiwyg.Editor, {
284
+ toolbar: labelToolbar,
211
285
  defaultEditorState: editorState,
212
286
  onBlur: this.updateElement.bind(this),
213
287
  onEditorStateChange: this.onEditorStateChange.bind(this, 0, 'label'),
214
288
  stripPastedStyles: true
215
- }), /*#__PURE__*/_react["default"].createElement("br", null), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
289
+ }), /*#__PURE__*/_react["default"].createElement("br", null), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
290
+ className: "fw-bold"
291
+ }, "Field Properties:"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
216
292
  id: "is-required",
217
293
  label: /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
218
294
  id: "required"
@@ -257,7 +333,11 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
257
333
  checked: thisCheckedInline,
258
334
  value: true,
259
335
  onChange: this.editElementProp.bind(this, 'inline', 'checked')
260
- })), this.state.element.element === 'Checkbox' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, null, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
336
+ })), this.state.element.element === 'Checkbox' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
337
+ className: "form-group mb-5"
338
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
339
+ className: "fw-bold"
340
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
261
341
  id: "checkbox-label-text"
262
342
  }), ":"), /*#__PURE__*/_react["default"].createElement(_reactDraftWysiwyg.Editor, {
263
343
  toolbar: toolbar,
@@ -265,7 +345,10 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
265
345
  onBlur: this.updateElement.bind(this),
266
346
  onEditorStateChange: this.onEditorStateChange.bind(this, 0, 'boxLabel'),
267
347
  stripPastedStyles: true
268
- })), this.props.element.hasOwnProperty('src') && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
348
+ })), this.props.element.hasOwnProperty('src') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
349
+ className: "form-group mb-5"
350
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
351
+ className: "fw-bold",
269
352
  htmlFor: "srcInput"
270
353
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
271
354
  id: "link-to"
@@ -275,7 +358,14 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
275
358
  defaultValue: this.props.element.src,
276
359
  onBlur: this.updateElement.bind(this),
277
360
  onChange: this.editElementProp.bind(this, 'src', 'value')
278
- }))), canHaveImageSize && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
361
+ })), canHaveImageSize && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
362
+ className: "form-group mb-5"
363
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Col, {
364
+ sm: 3
365
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
366
+ className: "fw-bold",
367
+ htmlFor: "do-center"
368
+ }, "Alignment:"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
279
369
  id: "do-center",
280
370
  label: /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
281
371
  id: "center"
@@ -284,32 +374,36 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
284
374
  checked: thisCheckedCenter,
285
375
  value: true,
286
376
  onChange: this.editElementProp.bind(this, 'center', 'checked')
287
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Col, {
377
+ })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Col, {
288
378
  sm: 3
289
379
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
380
+ className: "fw-bold",
290
381
  htmlFor: "elementWidth"
291
382
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
292
383
  id: "width"
293
384
  }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
294
385
  id: "elementWidth",
295
- type: "text",
386
+ type: "number",
296
387
  defaultValue: this.props.element.width,
297
388
  onBlur: this.updateElement.bind(this),
298
389
  onChange: this.editElementProp.bind(this, 'width', 'value')
299
390
  })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Col, {
300
391
  sm: 3
301
392
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
393
+ className: "fw-bold",
302
394
  htmlFor: "elementHeight"
303
395
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
304
396
  id: "height"
305
397
  }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
306
398
  id: "elementHeight",
307
- type: "text",
399
+ type: "number",
308
400
  defaultValue: this.props.element.height,
309
401
  onBlur: this.updateElement.bind(this),
310
402
  onChange: this.editElementProp.bind(this, 'height', 'value')
311
- })))), this.state.element.element === 'FileUpload' && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
312
- className: "control-label",
403
+ })))), this.state.element.element === 'FileUpload' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
404
+ className: "form-group mb-5"
405
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
406
+ className: "fw-bold",
313
407
  htmlFor: "fileType"
314
408
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
315
409
  id: "choose-file-type"
@@ -343,9 +437,13 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
343
437
  value: file.type,
344
438
  key: index
345
439
  }, file.typeName);
346
- })))), canHavePageBreakBefore && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, null, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
440
+ }))), canHavePageBreakBefore && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
441
+ className: "form-group mb-5"
442
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
443
+ className: "fw-bold"
444
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
347
445
  id: "print-options"
348
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
446
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
349
447
  id: "page-break-before-element",
350
448
  label: /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
351
449
  id: "page-break-before-element"
@@ -354,9 +452,13 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
354
452
  checked: thisCheckedPageBreak,
355
453
  value: true,
356
454
  onChange: this.editElementProp.bind(this, 'pageBreakBefore', 'checked')
357
- })), canHaveAlternateForm && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, null, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
455
+ })), canHaveAlternateForm && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
456
+ className: "form-group mb-5"
457
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
458
+ className: "fw-bold"
459
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
358
460
  id: "alternate-signature-page"
359
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
461
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
360
462
  id: "display-on-alternate",
361
463
  label: /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
362
464
  id: "display-on-alternate-signature-page"
@@ -365,80 +467,103 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
365
467
  checked: thisCheckedAlternateForm,
366
468
  value: true,
367
469
  onChange: this.editElementProp.bind(this, 'alternateForm', 'checked')
368
- })), this.props.element.hasOwnProperty('step') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement("div", {
470
+ })), this.props.element.hasOwnProperty('step') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
471
+ className: "form-group mb-5"
472
+ }, /*#__PURE__*/_react["default"].createElement("div", {
369
473
  className: "form-group-range"
370
474
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
475
+ className: "fw-bold",
371
476
  htmlFor: "rangeStep"
372
477
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
373
478
  id: "step"
374
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
479
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
375
480
  id: "rangeStep",
376
481
  type: "number",
377
482
  defaultValue: this.props.element.step,
378
483
  onBlur: this.updateElement.bind(this),
379
484
  onChange: this.editElementProp.bind(this, 'step', 'value')
380
- }))), this.props.element.hasOwnProperty('minValue') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement("div", {
485
+ }))), this.props.element.hasOwnProperty('minValue') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
486
+ className: "form-group mb-5"
487
+ }, /*#__PURE__*/_react["default"].createElement("div", {
381
488
  className: "form-group-range"
382
489
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
490
+ className: "fw-bold",
383
491
  htmlFor: "rangeMin"
384
492
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
385
493
  id: "min"
386
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
494
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
387
495
  id: "rangeMin",
388
496
  type: "number",
389
497
  defaultValue: this.props.element.minValue,
390
498
  onBlur: this.updateElement.bind(this),
391
499
  onChange: this.editElementProp.bind(this, 'minValue', 'value')
392
- }))), this.props.element.hasOwnProperty('minLabel') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement("div", {
500
+ }))), this.props.element.hasOwnProperty('minLabel') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
501
+ className: "form-group mb-5"
502
+ }, /*#__PURE__*/_react["default"].createElement("div", {
393
503
  className: "form-group-range"
394
504
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
505
+ className: "fw-bold",
395
506
  htmlFor: "rangeMin"
396
507
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
397
508
  id: "min-label"
398
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
509
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
399
510
  type: "text",
400
511
  defaultValue: this.props.element.minLabel,
401
512
  onBlur: this.updateElement.bind(this),
402
513
  onChange: this.editElementProp.bind(this, 'minLabel', 'value')
403
- }))), this.props.element.hasOwnProperty('maxValue') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement("div", {
514
+ }))), this.props.element.hasOwnProperty('maxValue') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
515
+ className: "form-group mb-5"
516
+ }, /*#__PURE__*/_react["default"].createElement("div", {
404
517
  className: "form-group-range"
405
518
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
519
+ className: "fw-bold",
406
520
  htmlFor: "rangeMax"
407
521
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
408
522
  id: "max"
409
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
523
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
410
524
  id: "rangeMax",
411
525
  type: "number",
412
526
  defaultValue: this.props.element.maxValue,
413
527
  onBlur: this.updateElement.bind(this),
414
528
  onChange: this.editElementProp.bind(this, 'maxValue', 'value')
415
- }))), this.props.element.hasOwnProperty('maxLabel') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement("div", {
529
+ }))), this.props.element.hasOwnProperty('maxLabel') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
530
+ className: "form-group mb-5"
531
+ }, /*#__PURE__*/_react["default"].createElement("div", {
416
532
  className: "form-group-range"
417
533
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
534
+ className: "fw-bold",
418
535
  htmlFor: "rangeMax"
419
536
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
420
537
  id: "max-label"
421
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
538
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
422
539
  type: "text",
423
540
  defaultValue: this.props.element.maxLabel,
424
541
  onBlur: this.updateElement.bind(this),
425
542
  onChange: this.editElementProp.bind(this, 'maxLabel', 'value')
426
- }))), this.props.element.hasOwnProperty('defaultValue') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement("div", {
543
+ }))), this.props.element.hasOwnProperty('defaultValue') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
544
+ className: "form-group mb-5"
545
+ }, /*#__PURE__*/_react["default"].createElement("div", {
427
546
  className: "form-group-range"
428
547
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
548
+ className: "fw-bold",
429
549
  htmlFor: "defaultSelected"
430
550
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
431
551
  id: "default-selected"
432
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
552
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
433
553
  id: "defaultSelected",
434
554
  type: "number",
435
555
  defaultValue: this.props.element.defaultValue,
436
556
  onBlur: this.updateElement.bind(this),
437
557
  onChange: this.editElementProp.bind(this, 'defaultValue', 'value')
438
- }))), this.props.element.hasOwnProperty('static') && this.props.element["static"] && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, null, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
558
+ }))), this.props.element.hasOwnProperty('static') && this.props.element["static"] && this.props.element.hasOwnProperty('bold') && this.props.element.hasOwnProperty('italic') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
559
+ className: "form-group mb-5"
560
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
561
+ className: "fw-bold"
562
+ }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
439
563
  id: "text-style"
440
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
564
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
441
565
  id: "do-bold",
566
+ inline: true,
442
567
  label: /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
443
568
  id: "bold"
444
569
  }),
@@ -448,6 +573,7 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
448
573
  onChange: this.editElementProp.bind(this, 'bold', 'checked')
449
574
  }), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
450
575
  id: "do-italic",
576
+ inline: true,
451
577
  label: /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
452
578
  id: "italic"
453
579
  }),
@@ -455,27 +581,36 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
455
581
  checked: thisCheckedItalic,
456
582
  value: true,
457
583
  onChange: this.editElementProp.bind(this, 'italic', 'checked')
458
- })), this.props.element.showPlaceholder && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
584
+ })), this.props.element.showPlaceholder && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
585
+ className: "form-group mb-5"
586
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
587
+ className: "fw-bold",
459
588
  htmlFor: "placeholder"
460
589
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
461
590
  id: "place-holder-text-label"
462
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
591
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
463
592
  type: "text",
464
593
  id: "placeholder",
465
594
  defaultValue: this.props.element.placeholder,
466
595
  onBlur: this.updateElement.bind(this),
467
596
  onChange: this.editElementProp.bind(this, 'placeholder', 'value')
468
- })), this.props.element.showCustomName && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
597
+ })), this.props.element.showCustomName && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
598
+ className: "form-group mb-5"
599
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
600
+ className: "fw-bold",
469
601
  htmlFor: "customName"
470
602
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
471
603
  id: "custom-name-label"
472
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
604
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
473
605
  type: "text",
474
606
  id: "customName",
475
607
  defaultValue: this.props.element.customName,
476
608
  onBlur: this.updateElement.bind(this),
477
609
  onChange: this.editElementProp.bind(this, 'customName', 'value')
478
- })), this.props.element.showLabelLocationPicker && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
610
+ })), this.props.element.showLabelLocationPicker && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
611
+ className: "form-group mb-5"
612
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
613
+ className: "fw-bold",
479
614
  htmlFor: "labelLocation"
480
615
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
481
616
  id: "choose-label-location"
@@ -488,43 +623,66 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
488
623
  value: "ABOVE"
489
624
  }, "Above Form Field"), /*#__PURE__*/_react["default"].createElement("option", {
490
625
  value: "FLOATING"
491
- }, "Floating Inside Form Field"))), this.props.element.showHelp && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
626
+ }, "Floating Inside Form Field"))), canHideLabel && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
627
+ className: "form-group mb-5"
628
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
629
+ className: "fw-bold"
630
+ }, "Hide Label:"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Check, {
631
+ id: "hide-label",
632
+ label: "Hide Label",
633
+ type: "checkbox",
634
+ checked: thisCheckedHideLabel,
635
+ value: true,
636
+ onChange: this.editElementProp.bind(this, 'hideLabel', 'checked')
637
+ })), this.props.element.showHelp && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
638
+ className: "form-group mb-5"
639
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
640
+ className: "fw-bold",
492
641
  htmlFor: "help"
493
642
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
494
643
  id: "help-label"
495
- })), /*#__PURE__*/_react["default"].createElement(_reactTextareaAutosize["default"], {
644
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactTextareaAutosize["default"], {
496
645
  type: "text",
497
646
  className: "form-control",
498
647
  id: "help",
499
648
  defaultValue: this.props.element.help,
500
649
  onBlur: this.updateElement.bind(this),
501
650
  onChange: this.editElementProp.bind(this, 'help', 'value')
502
- })), this.props.element.showDescription && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
651
+ })), this.props.element.showDescription && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
652
+ className: "form-group mb-5"
653
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
654
+ className: "fw-bold",
503
655
  htmlFor: "questionDescription"
504
656
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
505
657
  id: "description"
506
- })), /*#__PURE__*/_react["default"].createElement(_reactTextareaAutosize["default"], {
658
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactTextareaAutosize["default"], {
507
659
  type: "text",
508
660
  className: "form-control",
509
661
  id: "questionDescription",
510
662
  defaultValue: this.props.element.description,
511
663
  onBlur: this.updateElement.bind(this),
512
664
  onChange: this.editElementProp.bind(this, 'description', 'value')
513
- })), this.props.showCorrectColumn && this.props.element.canHaveAnswer && !this.props.element.hasOwnProperty('options') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
665
+ })), this.props.showCorrectColumn && this.props.element.canHaveAnswer && !this.props.element.hasOwnProperty('options') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
666
+ className: "form-group mb-5"
667
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
668
+ className: "fw-bold",
514
669
  htmlFor: "correctAnswer"
515
670
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
516
671
  id: "correct-answer"
517
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
672
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
518
673
  id: "correctAnswer",
519
674
  type: "text",
520
675
  defaultValue: this.props.element.correct,
521
676
  onBlur: this.updateElement.bind(this),
522
677
  onChange: this.editElementProp.bind(this, 'correct', 'value')
523
- })), this.props.element.canPopulateFromApi && this.props.element.hasOwnProperty('options') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
678
+ })), this.props.element.canPopulateFromApi && this.props.element.hasOwnProperty('options') && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
679
+ className: "form-group mb-5"
680
+ }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Label, {
681
+ className: "fw-bold",
524
682
  htmlFor: "optionsApiUrl"
525
683
  }, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
526
684
  id: "populate-options-from-api"
527
- })), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Col, {
685
+ }), ":"), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Col, {
528
686
  sm: 6
529
687
  }, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Control, {
530
688
  style: {
@@ -544,7 +702,7 @@ var SurveyElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Comp
544
702
  showCorrectColumn: this.props.showCorrectColumn,
545
703
  canHaveOptionCorrect: canHaveOptionCorrect,
546
704
  canHaveOptionValue: canHaveOptionValue,
547
- data: this.props.preview.state.data,
705
+ item: this.props.preview.state.item,
548
706
  updateElement: this.props.updateElement,
549
707
  preview: this.props.preview,
550
708
  element: this.props.element,