react-survey-builder 1.0.77 → 1.0.79
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 +1 -0
- package/dist/bundle.js +6 -6
- package/dist/src_survey-elements-edit_jsx.bundle.js +2 -2
- package/lib/dynamic-option-list.js +17 -34
- package/lib/form-fields.js +3 -1
- package/lib/form-steps.js +15 -124
- package/lib/form.js +3 -1
- package/lib/step/Step.js +0 -36
- package/lib/survey-elements/index.js +4 -1
- package/lib/survey-elements-edit.js +28 -11
- package/lib/toolbar.js +12 -12
- package/package.json +1 -1
- package/types/index.d.ts +1 -0
package/lib/form-steps.js
CHANGED
@@ -1,17 +1,14 @@
|
|
1
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
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 _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
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 _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
6
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
7
|
-
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
8
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
9
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
10
3
|
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; }
|
11
4
|
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; }
|
12
5
|
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; }
|
13
6
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
14
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 _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
9
|
+
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."); }
|
10
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
11
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
15
12
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
16
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."); }
|
17
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); }
|
@@ -41,6 +38,7 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
41
38
|
onSubmit = _ref.onSubmit,
|
42
39
|
onChange = _ref.onChange,
|
43
40
|
items = _ref.items,
|
41
|
+
activeStep = _ref.activeStep,
|
44
42
|
_ref$submitButton = _ref.submitButton,
|
45
43
|
submitButton = _ref$submitButton === void 0 ? false : _ref$submitButton,
|
46
44
|
_ref$backButton = _ref.backButton,
|
@@ -56,6 +54,7 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
56
54
|
checkboxButtonClassName = _ref.checkboxButtonClassName,
|
57
55
|
headerClassName = _ref.headerClassName,
|
58
56
|
labelClassName = _ref.labelClassName,
|
57
|
+
paragraphClassName = _ref.paragraphClassName,
|
59
58
|
formId = _ref.formId,
|
60
59
|
methods = _ref.methods,
|
61
60
|
_ref$print = _ref.print,
|
@@ -79,14 +78,6 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
79
78
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
80
79
|
formAnswers = _React$useState2[0],
|
81
80
|
setFormAnswers = _React$useState2[1];
|
82
|
-
var _React$useState3 = React.useState([]),
|
83
|
-
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
84
|
-
steps = _React$useState4[0],
|
85
|
-
setSteps = _React$useState4[1];
|
86
|
-
var _React$useState5 = React.useState(null),
|
87
|
-
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
88
|
-
activeStep = _React$useState6[0],
|
89
|
-
setActiveStep = _React$useState6[1];
|
90
81
|
var _getDefaultValue = function _getDefaultValue($dataItem) {
|
91
82
|
var defaultValue = answerData.current[$dataItem.fieldName];
|
92
83
|
if ($dataItem.element === 'DatePicker') {
|
@@ -256,13 +247,13 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
256
247
|
};
|
257
248
|
var validateForm = function validateForm() {
|
258
249
|
var hasErrors = false;
|
259
|
-
var dataItems = items;
|
250
|
+
var $dataItems = _toConsumableArray(items);
|
260
251
|
if (displayShort) {
|
261
|
-
dataItems =
|
252
|
+
$dataItems = $dataItems.filter(function (i) {
|
262
253
|
return i.alternateForm === true;
|
263
254
|
});
|
264
255
|
}
|
265
|
-
dataItems.forEach(function (item) {
|
256
|
+
$dataItems.forEach(function (item) {
|
266
257
|
if (_isIncorrect(item)) {
|
267
258
|
if (methods) {
|
268
259
|
methods.setError(item.fieldName, {
|
@@ -377,7 +368,8 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
377
368
|
key: "form_".concat(item.id),
|
378
369
|
item: item,
|
379
370
|
headerClassName: headerClassName,
|
380
|
-
labelClassName: labelClassName
|
371
|
+
labelClassName: labelClassName,
|
372
|
+
paragraphClassName: paragraphClassName
|
381
373
|
});
|
382
374
|
};
|
383
375
|
var getCustomElement = function getCustomElement(item) {
|
@@ -665,85 +657,9 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
665
657
|
|
666
658
|
//#endregion
|
667
659
|
|
668
|
-
var
|
669
|
-
var _ref14 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
670
|
-
var oldStep, previousIndex;
|
671
|
-
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
672
|
-
while (1) switch (_context.prev = _context.next) {
|
673
|
-
case 0:
|
674
|
-
oldStep = steps.find(function (i) {
|
675
|
-
return i.id === id;
|
676
|
-
});
|
677
|
-
previousIndex = oldStep.index - 1;
|
678
|
-
setActiveStep(previousIndex > 0 ? steps[previousIndex] : null);
|
679
|
-
case 3:
|
680
|
-
case "end":
|
681
|
-
return _context.stop();
|
682
|
-
}
|
683
|
-
}, _callee);
|
684
|
-
}));
|
685
|
-
return function onBackStep() {
|
686
|
-
return _ref14.apply(this, arguments);
|
687
|
-
};
|
688
|
-
}();
|
689
|
-
var onNextStep = /*#__PURE__*/function () {
|
690
|
-
var _ref15 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
|
691
|
-
var oldStep, clean, updatedSteps, nextStep;
|
692
|
-
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
693
|
-
while (1) switch (_context2.prev = _context2.next) {
|
694
|
-
case 0:
|
695
|
-
oldStep = isObjectNotEmpty(activeStep) ? _objectSpread({}, activeStep) : null;
|
696
|
-
if (!oldStep) {
|
697
|
-
_context2.next = 15;
|
698
|
-
break;
|
699
|
-
}
|
700
|
-
console.log(oldStep);
|
701
|
-
// validate childItems of step
|
702
|
-
_context2.next = 5;
|
703
|
-
return methods.trigger(oldStep.childQuestions.map(function (i) {
|
704
|
-
return i.name;
|
705
|
-
}), true);
|
706
|
-
case 5:
|
707
|
-
clean = _context2.sent;
|
708
|
-
console.log(clean);
|
709
|
-
if (!clean) {
|
710
|
-
_context2.next = 14;
|
711
|
-
break;
|
712
|
-
}
|
713
|
-
updatedSteps = updateRecord('id', _objectSpread(_objectSpread({}, oldStep), {}, {
|
714
|
-
completed: true,
|
715
|
-
answers: _collectFormData(oldStep.childQuestions, (methods === null || methods === void 0 ? void 0 : methods.getValues()) || [])
|
716
|
-
}), _toConsumableArray(steps));
|
717
|
-
setSteps(updatedSteps);
|
718
|
-
|
719
|
-
// get next incomplete survey
|
720
|
-
nextStep = steps.find(function (i) {
|
721
|
-
return i.completed === false;
|
722
|
-
});
|
723
|
-
if (nextStep !== undefined) {
|
724
|
-
setActiveStep(nextStep);
|
725
|
-
} else {
|
726
|
-
if (onFinishedSurveys) {
|
727
|
-
onFinishedSurveys();
|
728
|
-
}
|
729
|
-
}
|
730
|
-
_context2.next = 15;
|
731
|
-
break;
|
732
|
-
case 14:
|
733
|
-
return _context2.abrupt("return");
|
734
|
-
case 15:
|
735
|
-
case "end":
|
736
|
-
return _context2.stop();
|
737
|
-
}
|
738
|
-
}, _callee2);
|
739
|
-
}));
|
740
|
-
return function onNextStep() {
|
741
|
-
return _ref15.apply(this, arguments);
|
742
|
-
};
|
743
|
-
}();
|
744
|
-
var dataItems = items ? _toConsumableArray(items) : [];
|
660
|
+
var dataItems = activeStep ? [activeStep] : [];
|
745
661
|
if (displayShort) {
|
746
|
-
dataItems =
|
662
|
+
dataItems = activeStep ? [activeStep].filter(function (i) {
|
747
663
|
return i.alternateForm === true;
|
748
664
|
}) : [];
|
749
665
|
}
|
@@ -757,25 +673,6 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
757
673
|
}).map(function (item) {
|
758
674
|
return getFieldElement(item);
|
759
675
|
});
|
760
|
-
React.useMemo(function () {
|
761
|
-
if (isListNotEmpty(stepItems)) {
|
762
|
-
var surveySteps = stepItems.map(function (step, index) {
|
763
|
-
return _objectSpread(_objectSpread({}, step), {}, {
|
764
|
-
childQuestions: dataItems.filter(function (i) {
|
765
|
-
return step.id === i.parentId;
|
766
|
-
}),
|
767
|
-
completed: false,
|
768
|
-
answers: []
|
769
|
-
});
|
770
|
-
});
|
771
|
-
setSteps(surveySteps);
|
772
|
-
if (isListNotEmpty(surveySteps)) {
|
773
|
-
setActiveStep(surveySteps[0]);
|
774
|
-
} else {
|
775
|
-
setActiveStep(null);
|
776
|
-
}
|
777
|
-
}
|
778
|
-
}, []);
|
779
676
|
var formProps = {};
|
780
677
|
if (formId) {
|
781
678
|
formProps.id = formId;
|
@@ -784,14 +681,8 @@ var ReactSurveyFormSteps = function ReactSurveyFormSteps(_ref) {
|
|
784
681
|
className: "react-survey-builder-form"
|
785
682
|
}, /*#__PURE__*/React.createElement(FormProvider, methods, /*#__PURE__*/React.createElement(Form, _extends({
|
786
683
|
onSubmit: methods.handleSubmit(handleSubmit)
|
787
|
-
}, formProps),
|
684
|
+
}, formProps), stepItems, /*#__PURE__*/React.createElement("div", {
|
788
685
|
className: buttonClassName ? buttonClassName : 'btn-toolbar'
|
789
|
-
}, !hideActions && handleRenderSubmit(), !hideActions && backAction && handleRenderBack()
|
790
|
-
variant: "secondary",
|
791
|
-
onClick: onBackStep
|
792
|
-
}, "Back"), /*#__PURE__*/React.createElement(Button, {
|
793
|
-
variant: "primary",
|
794
|
-
onClick: onNextStep
|
795
|
-
}, "Next"))))));
|
686
|
+
}, !hideActions && handleRenderSubmit(), !hideActions && backAction && handleRenderBack())))));
|
796
687
|
};
|
797
688
|
export default ReactSurveyFormSteps;
|
package/lib/form.js
CHANGED
@@ -53,6 +53,7 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
53
53
|
checkboxButtonClassName = _ref.checkboxButtonClassName,
|
54
54
|
headerClassName = _ref.headerClassName,
|
55
55
|
labelClassName = _ref.labelClassName,
|
56
|
+
paragraphClassName = _ref.paragraphClassName,
|
56
57
|
formId = _ref.formId,
|
57
58
|
_ref$print = _ref.print,
|
58
59
|
print = _ref$print === void 0 ? false : _ref$print;
|
@@ -377,7 +378,8 @@ var ReactSurvey = function ReactSurvey(_ref) {
|
|
377
378
|
key: "form_".concat(item.id),
|
378
379
|
item: item,
|
379
380
|
headerClassName: headerClassName,
|
380
|
-
labelClassName: labelClassName
|
381
|
+
labelClassName: labelClassName,
|
382
|
+
paragraphClassName: paragraphClassName
|
381
383
|
});
|
382
384
|
};
|
383
385
|
var getCustomElement = function getCustomElement(item) {
|
package/lib/step/Step.js
CHANGED
@@ -68,42 +68,6 @@ var StepBase = function StepBase(_ref) {
|
|
68
68
|
setChildItemIds([null]);
|
69
69
|
}
|
70
70
|
}, [item]);
|
71
|
-
|
72
|
-
// React.useEffect(() => {
|
73
|
-
// // console.log('all items', items);
|
74
|
-
// let hideStep = false;
|
75
|
-
// if (item?.conditional === true) {
|
76
|
-
// hideStep = true;
|
77
|
-
// if (item.conditionalFieldName && item.conditionalFieldValue && answers !== undefined && answers !== null && answers.length > 0) {
|
78
|
-
// const answerField = answers.find(i => i.name === item.conditionalFieldName);
|
79
|
-
// if (answerField !== undefined && answerField?.value !== undefined) {
|
80
|
-
// if (Array.isArray(item.conditionalFieldValue)) {
|
81
|
-
// if (Array.isArray(answerField?.value)) {
|
82
|
-
// let match = item.conditionalFieldValue.some(i => answerField.value.includes(i));
|
83
|
-
// if (match) {
|
84
|
-
// hideStep = false;
|
85
|
-
// }
|
86
|
-
// } else if (item.conditionalFieldValue.includes(answerField.value)) {
|
87
|
-
// hideStep = false;
|
88
|
-
// }
|
89
|
-
// } else {
|
90
|
-
// if (Array.isArray(answerField?.value)) {
|
91
|
-
// let match = answerField.value.includes(item.conditionalFieldValue);
|
92
|
-
// if (match) {
|
93
|
-
// hideStep = false;
|
94
|
-
// }
|
95
|
-
// } else if (item.conditionalFieldValue === answerField.value) {
|
96
|
-
// hideStep = false;
|
97
|
-
// }
|
98
|
-
// }
|
99
|
-
// }
|
100
|
-
// }
|
101
|
-
// }
|
102
|
-
|
103
|
-
// setHidden(hideStep);
|
104
|
-
// }, [item, answers]);
|
105
|
-
|
106
|
-
console.log('controls', controls);
|
107
71
|
return /*#__PURE__*/React.createElement("div", {
|
108
72
|
style: _objectSpread({}, style),
|
109
73
|
className: baseClasses
|
@@ -101,6 +101,9 @@ export var Paragraph = function Paragraph(props) {
|
|
101
101
|
if (props.item.italic) {
|
102
102
|
classNames += ' italic';
|
103
103
|
}
|
104
|
+
if (props.paragraphClassName) {
|
105
|
+
classNames += " ".concat(props.paragraphClassName);
|
106
|
+
}
|
104
107
|
var baseClasses = 'SortableItem rfb-item';
|
105
108
|
if (props.item.pageBreakBefore) {
|
106
109
|
baseClasses += ' alwaysbreak';
|
@@ -2060,7 +2063,7 @@ export var RadioButtons = /*#__PURE__*/function (_React$Component4) {
|
|
2060
2063
|
className: "form-group mb-3"
|
2061
2064
|
}, /*#__PURE__*/React.createElement(ComponentLabel, self.props), self.props.item.options.map(function (option) {
|
2062
2065
|
var _self$props$checkboxB, _self$props7, _self$props8, _self$props10, _self$props11;
|
2063
|
-
console.log('option', option);
|
2066
|
+
// console.log('option', option);
|
2064
2067
|
return /*#__PURE__*/React.createElement(ToggleButton, {
|
2065
2068
|
label: option.text,
|
2066
2069
|
type: "radio",
|
@@ -115,16 +115,15 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
115
115
|
});
|
116
116
|
}
|
117
117
|
};
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
}, [dirty, element]);
|
118
|
+
|
119
|
+
// React.useEffect(() => {
|
120
|
+
// if (dirty) {
|
121
|
+
// const thisElement = isObjectNotEmpty(element) ? { ...element, dirty: true } : { dirty: true };
|
122
|
+
|
123
|
+
// updateElement(thisElement);
|
124
|
+
// }
|
125
|
+
// }, [dirty, element]);
|
126
|
+
|
128
127
|
var thisRequiredChecked = element.hasOwnProperty('required') ? element.required : false;
|
129
128
|
var thisDefaultChecked = element.hasOwnProperty('defaultChecked') ? element.defaultChecked : false;
|
130
129
|
var thisReadOnly = element.hasOwnProperty('readOnly') ? element.readOnly : false;
|
@@ -154,7 +153,11 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
154
153
|
}, element.text), /*#__PURE__*/React.createElement(FaTimes, {
|
155
154
|
className: "float-end dismiss-edit",
|
156
155
|
onClick: manualEditModeOff
|
157
|
-
})),
|
156
|
+
})), /*#__PURE__*/React.createElement("div", {
|
157
|
+
className: "clearfix"
|
158
|
+
}, /*#__PURE__*/React.createElement(Form.Label, {
|
159
|
+
className: "fw-bold"
|
160
|
+
}, "Field Id: ", element.fieldName)), element.hasOwnProperty('content') && (element.element === 'Header' || element.element === 'Label' || element.element === 'Paragraph' || element.element === 'ContentBody') && /*#__PURE__*/React.createElement(Form.Group, {
|
158
161
|
className: "form-group mb-5"
|
159
162
|
}, /*#__PURE__*/React.createElement(Form.Label, {
|
160
163
|
className: "fw-bold"
|
@@ -238,6 +241,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
238
241
|
label: "Required",
|
239
242
|
type: "checkbox",
|
240
243
|
checked: thisRequiredChecked,
|
244
|
+
onBlur: onUpdateElement,
|
241
245
|
value: true,
|
242
246
|
onChange: function onChange(e) {
|
243
247
|
editElementProp('required', 'checked', e);
|
@@ -248,6 +252,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
248
252
|
type: "checkbox",
|
249
253
|
checked: thisReadOnly,
|
250
254
|
value: true,
|
255
|
+
onBlur: onUpdateElement,
|
251
256
|
onChange: function onChange(e) {
|
252
257
|
editElementProp('readOnly', 'checked', e);
|
253
258
|
}
|
@@ -257,6 +262,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
257
262
|
type: "checkbox",
|
258
263
|
checked: thisDefaultToday,
|
259
264
|
value: true,
|
265
|
+
onBlur: onUpdateElement,
|
260
266
|
onChange: function onChange(e) {
|
261
267
|
editElementProp('defaultToday', 'checked', e);
|
262
268
|
}
|
@@ -266,6 +272,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
266
272
|
type: "checkbox",
|
267
273
|
checked: thisDefaultChecked,
|
268
274
|
value: true,
|
275
|
+
onBlur: onUpdateElement,
|
269
276
|
onChange: function onChange(e) {
|
270
277
|
editElementProp('defaultChecked', 'checked', e);
|
271
278
|
}
|
@@ -275,6 +282,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
275
282
|
type: "checkbox",
|
276
283
|
checked: thisCheckedInline,
|
277
284
|
value: true,
|
285
|
+
onBlur: onUpdateElement,
|
278
286
|
onChange: function onChange(e) {
|
279
287
|
editElementProp('inline', 'checked', e);
|
280
288
|
}
|
@@ -326,6 +334,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
326
334
|
type: "checkbox",
|
327
335
|
checked: thisCheckedCenter,
|
328
336
|
value: true,
|
337
|
+
onBlur: onUpdateElement,
|
329
338
|
onChange: function onChange(e) {
|
330
339
|
editElementProp('center', 'checked', e);
|
331
340
|
}
|
@@ -402,6 +411,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
402
411
|
type: "checkbox",
|
403
412
|
checked: thisCheckedPageBreak,
|
404
413
|
value: true,
|
414
|
+
onBlur: onUpdateElement,
|
405
415
|
onChange: function onChange(e) {
|
406
416
|
editElementProp('pageBreakBefore', 'checked', e);
|
407
417
|
}
|
@@ -415,6 +425,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
415
425
|
type: "checkbox",
|
416
426
|
checked: thisCheckedAlternateForm,
|
417
427
|
value: true,
|
428
|
+
onBlur: onUpdateElement,
|
418
429
|
onChange: function onChange(e) {
|
419
430
|
editElementProp('alternateForm', 'checked', e);
|
420
431
|
}
|
@@ -517,6 +528,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
517
528
|
type: "checkbox",
|
518
529
|
checked: thisCheckedBold,
|
519
530
|
value: true,
|
531
|
+
onBlur: onUpdateElement,
|
520
532
|
onChange: function onChange(e) {
|
521
533
|
editElementProp('bold', 'checked', e);
|
522
534
|
}
|
@@ -527,6 +539,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
527
539
|
type: "checkbox",
|
528
540
|
checked: thisCheckedItalic,
|
529
541
|
value: true,
|
542
|
+
onBlur: onUpdateElement,
|
530
543
|
onChange: function onChange(e) {
|
531
544
|
editElementProp('italic', 'checked', e);
|
532
545
|
}
|
@@ -582,6 +595,7 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
582
595
|
type: "checkbox",
|
583
596
|
checked: thisCheckedHideLabel,
|
584
597
|
value: true,
|
598
|
+
onBlur: onUpdateElement,
|
585
599
|
onChange: function onChange(e) {
|
586
600
|
editElementProp('hideLabel', 'checked', e);
|
587
601
|
}
|
@@ -691,6 +705,9 @@ var SurveyElementsEdit = function SurveyElementsEdit(_ref2) {
|
|
691
705
|
canHaveOptionValue: canHaveOptionValue,
|
692
706
|
updateElement: updateElement,
|
693
707
|
element: element,
|
708
|
+
setElement: setElement,
|
709
|
+
dirty: dirty,
|
710
|
+
setDirty: setDirty,
|
694
711
|
key: element === null || element === void 0 || (_element$options = element.options) === null || _element$options === void 0 ? void 0 : _element$options.length
|
695
712
|
}));
|
696
713
|
};
|
package/lib/toolbar.js
CHANGED
@@ -394,57 +394,57 @@ var Toolbar = function Toolbar(_ref) {
|
|
394
394
|
switch (element) {
|
395
395
|
case 'Dropdown':
|
396
396
|
return [{
|
397
|
-
value: '
|
397
|
+
value: 'PLACE_HOLDER_OPTION_1',
|
398
398
|
text: "Place holder option 1",
|
399
399
|
key: "dropdown_option_".concat(ID.uuid())
|
400
400
|
}, {
|
401
|
-
value: '
|
401
|
+
value: 'PLACE_HOLDER_OPTION_2',
|
402
402
|
text: "Place holder option 2",
|
403
403
|
key: "dropdown_option_".concat(ID.uuid())
|
404
404
|
}, {
|
405
|
-
value: '
|
405
|
+
value: 'PLACE_HOLDER_OPTION_3',
|
406
406
|
text: "Place holder option 3",
|
407
407
|
key: "dropdown_option_".concat(ID.uuid())
|
408
408
|
}];
|
409
409
|
case 'Tags':
|
410
410
|
return [{
|
411
|
-
value: '
|
411
|
+
value: 'PLACE_HOLDER_TAG_1',
|
412
412
|
text: "Place holder option 1",
|
413
413
|
key: "tags_option_".concat(ID.uuid())
|
414
414
|
}, {
|
415
|
-
value: '
|
415
|
+
value: 'PLACE_HOLDER_TAG_2',
|
416
416
|
text: "Place holder option 2",
|
417
417
|
key: "tags_option_".concat(ID.uuid())
|
418
418
|
}, {
|
419
|
-
value: '
|
419
|
+
value: 'PLACE_HOLDER_TAG_3',
|
420
420
|
text: "Place holder option 3",
|
421
421
|
key: "tags_option_".concat(ID.uuid())
|
422
422
|
}];
|
423
423
|
case 'Checkboxes':
|
424
424
|
return [{
|
425
|
-
value: '
|
425
|
+
value: 'PLACE_HOLDER_OPTION_1',
|
426
426
|
text: "Place holder option 1",
|
427
427
|
key: "checkboxes_option_".concat(ID.uuid())
|
428
428
|
}, {
|
429
|
-
value: '
|
429
|
+
value: 'PLACE_HOLDER_OPTION_2',
|
430
430
|
text: "Place holder option 2",
|
431
431
|
key: "checkboxes_option_".concat(ID.uuid())
|
432
432
|
}, {
|
433
|
-
value: '
|
433
|
+
value: 'PLACE_HOLDER_OPTION_3',
|
434
434
|
text: "Place holder option 3",
|
435
435
|
key: "checkboxes_option_".concat(ID.uuid())
|
436
436
|
}];
|
437
437
|
case 'RadioButtons':
|
438
438
|
return [{
|
439
|
-
value: '
|
439
|
+
value: 'PLACE_HOLDER_OPTION_1',
|
440
440
|
text: "Place holder option 1",
|
441
441
|
key: "radiobuttons_option_".concat(ID.uuid())
|
442
442
|
}, {
|
443
|
-
value: '
|
443
|
+
value: 'PLACE_HOLDER_OPTION_2',
|
444
444
|
text: "Place holder option 2",
|
445
445
|
key: "radiobuttons_option_".concat(ID.uuid())
|
446
446
|
}, {
|
447
|
-
value: '
|
447
|
+
value: 'PLACE_HOLDER_OPTION_3',
|
448
448
|
text: "Place holder option 3",
|
449
449
|
key: "radiobuttons_option_".concat(ID.uuid())
|
450
450
|
}];
|
package/package.json
CHANGED
package/types/index.d.ts
CHANGED
@@ -144,6 +144,7 @@ export interface SurveyBuilderProps {
|
|
144
144
|
checkboxButtonClassName?: string;
|
145
145
|
headerClassName?: string;
|
146
146
|
labelClassName?: string;
|
147
|
+
paragraphClassName?: string;
|
147
148
|
}
|
148
149
|
|
149
150
|
export class ReactSurveyBuilder extends React.Component<SurveyBuilderProps> {}
|