react-survey-builder 1.0.15 → 1.0.17
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 +9 -7
- package/dist/186.index.js +1 -0
- package/dist/app.css +1 -1
- package/dist/app.css.map +1 -1
- package/dist/index.js +1 -1
- package/lib/dynamic-option-list.js +1 -1
- package/lib/fieldset/FieldSet.js +15 -17
- package/lib/form copy.js +622 -0
- package/lib/form-fields.js +204 -210
- package/lib/form.js +765 -534
- package/lib/index.js +3 -3
- package/lib/multi-column/MultiColumnRow.js +25 -25
- package/lib/multi-column/dustbin.js +16 -16
- package/lib/multi-column/grip.js +6 -6
- package/lib/preview.js +41 -40
- package/lib/sortable-element.js +6 -6
- package/lib/stores/store.js +22 -22
- package/lib/survey-elements/component-drag-handle.js +6 -6
- package/lib/survey-elements/component-drag-layer.js +3 -3
- package/lib/survey-elements/component-drag-preview.js +1 -1
- package/lib/survey-elements/component-error-message.js +1 -0
- package/lib/survey-elements/component-header.js +5 -5
- package/lib/survey-elements/component-label.js +9 -6
- package/lib/survey-elements/custom-element.js +23 -12
- package/lib/survey-elements/header-bar.js +5 -5
- package/lib/survey-elements/index.js +782 -734
- package/lib/survey-elements-edit.js +139 -48
- package/lib/toolbar-draggable-item.js +4 -4
- package/lib/toolbar.js +33 -17
- package/lib/utils/ipUtils.js +53 -0
- package/package.json +2 -3
- package/types/index.d.ts +3 -1
- package/dist/967.index.js +0 -1
- package/lib/survey-elements/date-picker.js +0 -272
- package/lib/utils/custom-date-picker.js +0 -93
@@ -29,21 +29,21 @@ var style = {
|
|
29
29
|
};
|
30
30
|
var dragHandleSource = {
|
31
31
|
beginDrag: function beginDrag(props) {
|
32
|
-
var
|
32
|
+
var item = props.item,
|
33
33
|
index = props.index,
|
34
34
|
onDestroy = props.onDestroy,
|
35
35
|
setAsChild = props.setAsChild,
|
36
36
|
getDataById = props.getDataById;
|
37
37
|
return {
|
38
38
|
itemType: _ItemTypes["default"].BOX,
|
39
|
-
index:
|
40
|
-
parentIndex:
|
41
|
-
id:
|
42
|
-
col:
|
39
|
+
index: item.parentId ? -1 : index,
|
40
|
+
parentIndex: item.parentIndex,
|
41
|
+
id: item.id,
|
42
|
+
col: item.col,
|
43
43
|
onDestroy: onDestroy,
|
44
44
|
setAsChild: setAsChild,
|
45
45
|
getDataById: getDataById,
|
46
|
-
data:
|
46
|
+
data: item
|
47
47
|
};
|
48
48
|
}
|
49
49
|
};
|
@@ -18,9 +18,9 @@ var layerStyles = {
|
|
18
18
|
width: '100%',
|
19
19
|
height: '100%'
|
20
20
|
};
|
21
|
-
function getItemStyles(
|
22
|
-
var initialOffset =
|
23
|
-
currentOffset =
|
21
|
+
function getItemStyles(_ref) {
|
22
|
+
var initialOffset = _ref.initialOffset,
|
23
|
+
currentOffset = _ref.currentOffset;
|
24
24
|
if (!initialOffset || !currentOffset) {
|
25
25
|
return {
|
26
26
|
display: 'none'
|
@@ -36,7 +36,7 @@ var BoxDragPreview = exports.BoxDragPreview = function BoxDragPreview(_ref2) {
|
|
36
36
|
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
|
37
37
|
tickTock = _React$useState2[0],
|
38
38
|
setTickTock = _React$useState2[1];
|
39
|
-
var text = item.
|
39
|
+
var text = item.item.content ? item.item.content : item.item.label ? item.item.label : item.item.text;
|
40
40
|
var isLongText = text.length > 20;
|
41
41
|
var previewText = isLongText ? "".concat(text.slice(0, 20), "...") : text;
|
42
42
|
|
@@ -29,6 +29,7 @@ var getError = exports.getError = function getError(errors, name) {
|
|
29
29
|
var ComponentErrorMessage = function ComponentErrorMessage(_ref) {
|
30
30
|
var name = _ref.name;
|
31
31
|
var methods = (0, _reactHookForm.useFormContext)();
|
32
|
+
if (!methods) return null;
|
32
33
|
if (getError(methods.formState.errors, name) !== undefined) {
|
33
34
|
return /*#__PURE__*/_react["default"].createElement(_errorMessage.ErrorMessage, {
|
34
35
|
errors: methods.formState.errors,
|
@@ -8,22 +8,22 @@ exports["default"] = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
9
9
|
var _headerBar = _interopRequireDefault(require("./header-bar"));
|
10
10
|
var ComponentHeader = function ComponentHeader(props) {
|
11
|
-
if (props.mutable) {
|
11
|
+
if (props.item.mutable) {
|
12
12
|
return null;
|
13
13
|
}
|
14
|
-
return /*#__PURE__*/_react["default"].createElement("div", null, props.
|
14
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, props.item.pageBreakBefore && /*#__PURE__*/_react["default"].createElement("div", {
|
15
15
|
className: "preview-page-break"
|
16
16
|
}, "Page Break"), /*#__PURE__*/_react["default"].createElement(_headerBar["default"], {
|
17
17
|
isFieldSet: props.isFieldSet,
|
18
18
|
parent: props.parent,
|
19
19
|
editModeOn: props.editModeOn,
|
20
|
-
|
20
|
+
item: props.item,
|
21
21
|
index: props.index,
|
22
22
|
setAsChild: props.setAsChild,
|
23
23
|
onDestroy: props._onDestroy,
|
24
24
|
onEdit: props.onEdit,
|
25
|
-
"static": props.
|
26
|
-
required: props.
|
25
|
+
"static": props.item["static"],
|
26
|
+
required: props.item.required
|
27
27
|
}));
|
28
28
|
};
|
29
29
|
var _default = exports["default"] = ComponentHeader;
|
@@ -8,17 +8,20 @@ exports["default"] = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
9
9
|
var _myxss = _interopRequireDefault(require("./myxss"));
|
10
10
|
var _reactBootstrap = require("react-bootstrap");
|
11
|
-
var ComponentLabel = function ComponentLabel(
|
12
|
-
var
|
13
|
-
|
14
|
-
|
11
|
+
var ComponentLabel = function ComponentLabel(_ref) {
|
12
|
+
var item = _ref.item,
|
13
|
+
className = _ref.className,
|
14
|
+
htmlFor = _ref.htmlFor;
|
15
|
+
var hasRequiredLabel = item.hasOwnProperty('required') && item.required === true && !item.readOnly;
|
16
|
+
var labelText = _myxss["default"].process(item.label);
|
15
17
|
if (!labelText || !labelText.trim()) {
|
16
18
|
return null;
|
17
19
|
}
|
18
20
|
labelText = "".concat(labelText).concat(hasRequiredLabel ? '*' : '');
|
19
|
-
var hideRequiredAlert =
|
21
|
+
var hideRequiredAlert = item.hideRequiredAlert;
|
20
22
|
return /*#__PURE__*/_react["default"].createElement("label", {
|
21
|
-
className:
|
23
|
+
className: className || '',
|
24
|
+
htmlFor: htmlFor
|
22
25
|
}, /*#__PURE__*/_react["default"].createElement("span", {
|
23
26
|
dangerouslySetInnerHTML: {
|
24
27
|
__html: labelText
|
@@ -16,6 +16,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
16
16
|
var _componentHeader = _interopRequireDefault(require("./component-header"));
|
17
17
|
var _componentLabel = _interopRequireDefault(require("./component-label"));
|
18
18
|
var _reactBootstrap = require("react-bootstrap");
|
19
|
+
var _componentErrorMessage = _interopRequireDefault(require("./component-error-message"));
|
19
20
|
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; }
|
20
21
|
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) { (0, _defineProperty2["default"])(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; }
|
21
22
|
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); }; }
|
@@ -33,34 +34,44 @@ var CustomElement = /*#__PURE__*/function (_React$Component) {
|
|
33
34
|
(0, _createClass2["default"])(CustomElement, [{
|
34
35
|
key: "render",
|
35
36
|
value: function render() {
|
36
|
-
var bare = this.props.
|
37
|
+
var bare = this.props.item.bare;
|
37
38
|
var props = {};
|
38
|
-
props.name = this.props.
|
39
|
+
props.name = this.props.item.fieldName;
|
39
40
|
props.defaultValue = this.props.defaultValue;
|
40
|
-
if (this.props.
|
41
|
+
if (this.props.item.forwardRef) {
|
41
42
|
props.ref = this.inputField;
|
42
43
|
}
|
43
|
-
if (this.props.
|
44
|
+
if (this.props.item.disabled) {
|
44
45
|
props.disabled = 'disabled';
|
45
46
|
}
|
46
47
|
|
47
48
|
// Return if component is invalid.
|
48
|
-
if (!this.props.
|
49
|
-
var Element = this.props.
|
49
|
+
if (!this.props.item.component) return null;
|
50
|
+
var Element = this.props.item.component;
|
50
51
|
var baseClasses = 'SortableItem rfb-item';
|
51
|
-
if (this.props.
|
52
|
+
if (this.props.item.pageBreakBefore) {
|
52
53
|
baseClasses += ' alwaysbreak';
|
53
54
|
}
|
54
55
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
55
56
|
className: baseClasses,
|
56
57
|
style: _objectSpread({}, this.props.style)
|
57
58
|
}, /*#__PURE__*/_react["default"].createElement(_componentHeader["default"], this.props), bare ? /*#__PURE__*/_react["default"].createElement(Element, (0, _extends2["default"])({
|
58
|
-
|
59
|
-
|
59
|
+
id: props.name,
|
60
|
+
item: this.props.item
|
61
|
+
}, this.props.item.props, props)) : /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Group, {
|
62
|
+
className: "form-group mb-3"
|
63
|
+
}, /*#__PURE__*/_react["default"].createElement(_componentLabel["default"], (0, _extends2["default"])({
|
60
64
|
className: "form-label"
|
61
|
-
}, this.props
|
62
|
-
|
63
|
-
},
|
65
|
+
}, this.props, {
|
66
|
+
htmlFor: props.name
|
67
|
+
})), /*#__PURE__*/_react["default"].createElement(Element, (0, _extends2["default"])({
|
68
|
+
id: props.name,
|
69
|
+
item: this.props.item
|
70
|
+
}, this.props.item.props, props)), this.props.item.help ? /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Form.Text, {
|
71
|
+
muted: true
|
72
|
+
}, this.props.item.help) : null, /*#__PURE__*/_react["default"].createElement(_componentErrorMessage["default"], {
|
73
|
+
name: props.name
|
74
|
+
})));
|
64
75
|
}
|
65
76
|
}]);
|
66
77
|
return CustomElement;
|
@@ -32,22 +32,22 @@ var HeaderBar = exports["default"] = /*#__PURE__*/function (_React$Component) {
|
|
32
32
|
className: "d-flex toolbar-header align-items-center justify-content-between p-2"
|
33
33
|
}, /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Badge, {
|
34
34
|
bg: "secondary"
|
35
|
-
}, this.props.
|
35
|
+
}, this.props.item.text), /*#__PURE__*/_react["default"].createElement("div", {
|
36
36
|
className: "toolbar-header-buttons"
|
37
|
-
}, this.props.
|
37
|
+
}, this.props.item.element !== 'LineBreak' && /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Button, {
|
38
38
|
variant: "default",
|
39
39
|
className: "is-isolated",
|
40
|
-
onClick: this.props.editModeOn.bind(this.props.parent, this.props.
|
40
|
+
onClick: this.props.editModeOn.bind(this.props.parent, this.props.item)
|
41
41
|
}, /*#__PURE__*/_react["default"].createElement(_fa.FaEdit, {
|
42
42
|
className: "is-isolated"
|
43
43
|
})), /*#__PURE__*/_react["default"].createElement(_reactBootstrap.Button, {
|
44
44
|
variant: "default",
|
45
45
|
className: "is-isolated",
|
46
|
-
onClick: this.props.onDestroy.bind(this, this.props.
|
46
|
+
onClick: this.props.onDestroy.bind(this, this.props.item)
|
47
47
|
}, /*#__PURE__*/_react["default"].createElement(_fa.FaTrash, {
|
48
48
|
className: "is-isolated"
|
49
49
|
})), /*#__PURE__*/_react["default"].createElement(_componentDragHandle["default"], {
|
50
|
-
|
50
|
+
item: this.props.item,
|
51
51
|
index: this.props.index,
|
52
52
|
onDestroy: this.props.onDestroy,
|
53
53
|
setAsChild: this.props.setAsChild
|