react-survey-builder 1.0.1

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 (54) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +236 -0
  3. package/dist/967.index.js +1 -0
  4. package/dist/app.css +1 -0
  5. package/dist/app.css.map +1 -0
  6. package/dist/index.js +2 -0
  7. package/dist/index.js.LICENSE.txt +46 -0
  8. package/lib/ItemTypes.js +10 -0
  9. package/lib/UUID.js +65 -0
  10. package/lib/dynamic-option-list.js +188 -0
  11. package/lib/fieldset/FieldSet.js +118 -0
  12. package/lib/fieldset/index.js +13 -0
  13. package/lib/form.js +604 -0
  14. package/lib/functions/index.js +45 -0
  15. package/lib/index.js +139 -0
  16. package/lib/language-provider/IntlMessages.js +15 -0
  17. package/lib/language-provider/entries/en-us.js +16 -0
  18. package/lib/language-provider/entries/it-it.js +16 -0
  19. package/lib/language-provider/entries/vi-vn.js +16 -0
  20. package/lib/language-provider/index.js +32 -0
  21. package/lib/language-provider/locales/en-us.json +97 -0
  22. package/lib/language-provider/locales/it-it.json +92 -0
  23. package/lib/language-provider/locales/vi-vn.json +82 -0
  24. package/lib/multi-column/MultiColumnRow.js +134 -0
  25. package/lib/multi-column/dustbin.js +152 -0
  26. package/lib/multi-column/grip.js +51 -0
  27. package/lib/multi-column/index.js +24 -0
  28. package/lib/preview.js +388 -0
  29. package/lib/sortable-element.js +177 -0
  30. package/lib/sortable-form-elements.js +67 -0
  31. package/lib/stores/registry.js +42 -0
  32. package/lib/stores/requests.js +31 -0
  33. package/lib/stores/store.js +138 -0
  34. package/lib/survey-dynamic-edit.js +54 -0
  35. package/lib/survey-elements/component-drag-handle.js +90 -0
  36. package/lib/survey-elements/component-drag-layer.js +68 -0
  37. package/lib/survey-elements/component-drag-preview.js +57 -0
  38. package/lib/survey-elements/component-header.js +29 -0
  39. package/lib/survey-elements/component-label.js +26 -0
  40. package/lib/survey-elements/custom-element.js +70 -0
  41. package/lib/survey-elements/date-picker.js +278 -0
  42. package/lib/survey-elements/header-bar.js +54 -0
  43. package/lib/survey-elements/index.js +1196 -0
  44. package/lib/survey-elements/myxss.js +29 -0
  45. package/lib/survey-elements/star-rating.js +335 -0
  46. package/lib/survey-elements-edit.js +613 -0
  47. package/lib/survey-place-holder.js +51 -0
  48. package/lib/survey-validator.js +103 -0
  49. package/lib/toolbar-draggable-item.js +59 -0
  50. package/lib/toolbar-group-item.js +39 -0
  51. package/lib/toolbar.js +680 -0
  52. package/lib/utils/custom-date-picker.js +93 -0
  53. package/package.json +114 -0
  54. package/types/index.d.ts +180 -0
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.BoxDragPreview = void 0;
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ 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; }
12
+ 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; }
13
+ var boxStyles = {
14
+ border: '1px dashed gray',
15
+ padding: '0.5rem 1rem',
16
+ cursor: 'move'
17
+ };
18
+ var styles = {
19
+ display: 'inline-block',
20
+ transform: 'rotate(-7deg)',
21
+ WebkitTransform: 'rotate(-7deg)'
22
+ };
23
+ var Box = function Box(_ref) {
24
+ var title = _ref.title,
25
+ color = _ref.color;
26
+ var backgroundColor = color ? '#059862' : 'white';
27
+ return /*#__PURE__*/_react["default"].createElement("div", {
28
+ style: _objectSpread(_objectSpread({}, boxStyles), {}, {
29
+ backgroundColor: backgroundColor
30
+ })
31
+ }, title);
32
+ };
33
+ var BoxDragPreview = exports.BoxDragPreview = function BoxDragPreview(_ref2) {
34
+ var item = _ref2.item;
35
+ var _React$useState = _react["default"].useState(false),
36
+ _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
37
+ tickTock = _React$useState2[0],
38
+ setTickTock = _React$useState2[1];
39
+ var text = item.data.content ? item.data.content : item.data.label ? item.data.label : item.data.text;
40
+ var isLongText = text.length > 20;
41
+ var previewText = isLongText ? "".concat(text.slice(0, 20), "...") : text;
42
+
43
+ // React.useEffect(function subscribeToIntervalTick() {
44
+ // const interval = setInterval(() => {
45
+ // setTickTock(!tickTock);
46
+ // }, 500);
47
+ // return () => clearInterval(interval);
48
+ // }, [tickTock]);
49
+
50
+ return /*#__PURE__*/_react["default"].createElement("div", {
51
+ style: styles,
52
+ role: "BoxPreview"
53
+ }, /*#__PURE__*/_react["default"].createElement(Box, {
54
+ title: previewText,
55
+ color: tickTock
56
+ }));
57
+ };
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _headerBar = _interopRequireDefault(require("./header-bar"));
10
+ var ComponentHeader = function ComponentHeader(props) {
11
+ if (props.mutable) {
12
+ return null;
13
+ }
14
+ return /*#__PURE__*/_react["default"].createElement("div", null, props.data.pageBreakBefore && /*#__PURE__*/_react["default"].createElement("div", {
15
+ className: "preview-page-break"
16
+ }, "Page Break"), /*#__PURE__*/_react["default"].createElement(_headerBar["default"], {
17
+ isFieldSet: props.isFieldSet,
18
+ parent: props.parent,
19
+ editModeOn: props.editModeOn,
20
+ data: props.data,
21
+ index: props.index,
22
+ setAsChild: props.setAsChild,
23
+ onDestroy: props._onDestroy,
24
+ onEdit: props.onEdit,
25
+ "static": props.data["static"],
26
+ required: props.data.required
27
+ }));
28
+ };
29
+ var _default = exports["default"] = ComponentHeader;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _myxss = _interopRequireDefault(require("./myxss"));
10
+ var ComponentLabel = function ComponentLabel(props) {
11
+ var hasRequiredLabel = props.data.hasOwnProperty('required') && props.data.required === true && !props.read_only;
12
+ var labelText = _myxss["default"].process(props.data.label);
13
+ if (!labelText || !labelText.trim()) {
14
+ return null;
15
+ }
16
+ return /*#__PURE__*/_react["default"].createElement("label", {
17
+ className: props.className || 'form-label'
18
+ }, /*#__PURE__*/_react["default"].createElement("span", {
19
+ dangerouslySetInnerHTML: {
20
+ __html: labelText
21
+ }
22
+ }), hasRequiredLabel && !props.hide_required_alert && /*#__PURE__*/_react["default"].createElement("span", {
23
+ className: "label-required badge badge-danger"
24
+ }, "Required"));
25
+ };
26
+ var _default = exports["default"] = ComponentLabel;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _react = _interopRequireDefault(require("react"));
16
+ var _componentHeader = _interopRequireDefault(require("./component-header"));
17
+ var _componentLabel = _interopRequireDefault(require("./component-label"));
18
+ 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; }
19
+ 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; }
20
+ 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); }; }
21
+ 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; } }
22
+ var CustomElement = /*#__PURE__*/function (_React$Component) {
23
+ (0, _inherits2["default"])(CustomElement, _React$Component);
24
+ var _super = _createSuper(CustomElement);
25
+ function CustomElement(props) {
26
+ var _this;
27
+ (0, _classCallCheck2["default"])(this, CustomElement);
28
+ _this = _super.call(this, props);
29
+ _this.inputField = /*#__PURE__*/_react["default"].createRef();
30
+ return _this;
31
+ }
32
+ (0, _createClass2["default"])(CustomElement, [{
33
+ key: "render",
34
+ value: function render() {
35
+ var bare = this.props.data.bare;
36
+ var props = {};
37
+ props.name = this.props.data.field_name;
38
+ props.defaultValue = this.props.defaultValue;
39
+ if (this.props.mutable && this.props.data.forwardRef) {
40
+ props.ref = this.inputField;
41
+ }
42
+ if (this.props.read_only) {
43
+ props.disabled = 'disabled';
44
+ }
45
+
46
+ // Return if component is invalid.
47
+ if (!this.props.data.component) return null;
48
+ var Element = this.props.data.component;
49
+ var baseClasses = 'SortableItem rfb-item';
50
+ if (this.props.data.pageBreakBefore) {
51
+ baseClasses += ' alwaysbreak';
52
+ }
53
+ return /*#__PURE__*/_react["default"].createElement("div", {
54
+ className: baseClasses,
55
+ style: _objectSpread({}, this.props.style)
56
+ }, /*#__PURE__*/_react["default"].createElement(_componentHeader["default"], this.props), bare ? /*#__PURE__*/_react["default"].createElement(Element, (0, _extends2["default"])({
57
+ data: this.props.data
58
+ }, this.props.data.props, props)) : /*#__PURE__*/_react["default"].createElement("div", {
59
+ className: "form-group"
60
+ }, /*#__PURE__*/_react["default"].createElement(_componentLabel["default"], (0, _extends2["default"])({
61
+ className: "form-label"
62
+ }, this.props)), /*#__PURE__*/_react["default"].createElement(Element, (0, _extends2["default"])({
63
+ data: this.props.data
64
+ }, this.props.data.props, props))));
65
+ }
66
+ }]);
67
+ return CustomElement;
68
+ }(_react["default"].Component);
69
+ CustomElement.propTypes = {};
70
+ var _default = exports["default"] = CustomElement;
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
12
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _react = _interopRequireDefault(require("react"));
15
+ var _dateFns = require("date-fns");
16
+ var _componentHeader = _interopRequireDefault(require("./component-header"));
17
+ var _componentLabel = _interopRequireDefault(require("./component-label"));
18
+ 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; }
19
+ 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; }
20
+ 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); }; }
21
+ 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; } }
22
+ // This is the utility function that will attempt to parse a date string
23
+ // using several different formats until it finds one that works.
24
+ var DatePicker = /*#__PURE__*/function (_React$Component) {
25
+ (0, _inherits2["default"])(DatePicker, _React$Component);
26
+ var _super = _createSuper(DatePicker);
27
+ function DatePicker(props) {
28
+ var _this;
29
+ (0, _classCallCheck2["default"])(this, DatePicker);
30
+ _this = _super.call(this, props);
31
+ _this.inputField = /*#__PURE__*/_react["default"].createRef();
32
+ var _DatePicker$updateFor = DatePicker.updateFormat(props, null),
33
+ formatMask = _DatePicker$updateFor.formatMask;
34
+ var state = DatePicker.updateDateTime(props, {
35
+ formatMask: formatMask
36
+ }, formatMask);
37
+
38
+ // Ensure state.value and state.internalValue are not undefined
39
+ state.value = state.value || '';
40
+ state.internalValue = state.internalValue || '';
41
+ _this.state = state;
42
+ return _this;
43
+ }
44
+ (0, _createClass2["default"])(DatePicker, [{
45
+ key: "handleBirthdayFocus",
46
+ value: function handleBirthdayFocus() {
47
+ this.setState({
48
+ birthdayFocused: true
49
+ }, function () {
50
+ document.getElementById('year').placeholder = 'YYYY';
51
+ document.getElementById('day').placeholder = 'DD';
52
+ document.getElementById('month').placeholder = 'MM';
53
+ });
54
+ }
55
+ }, {
56
+ key: "handleDateChange",
57
+ value: function handleDateChange(event) {
58
+ var _this$state = this.state,
59
+ month = _this$state.month,
60
+ day = _this$state.day,
61
+ year = _this$state.year;
62
+ var newValue = event.target.value;
63
+ switch (event.target.name) {
64
+ case 'month':
65
+ if (newValue > 12) {
66
+ this.setState({
67
+ month: '12'
68
+ });
69
+ } else {
70
+ this.setState({
71
+ month: newValue
72
+ });
73
+ }
74
+ break;
75
+ case 'day':
76
+ if (newValue > 31) {
77
+ this.setState({
78
+ day: '31'
79
+ });
80
+ } else {
81
+ this.setState({
82
+ day: newValue
83
+ });
84
+ }
85
+ break;
86
+ case 'year':
87
+ if (newValue > new Date().getFullYear()) {
88
+ this.setState({
89
+ year: new Date().getFullYear().toString()
90
+ });
91
+ } else {
92
+ this.setState({
93
+ year: newValue
94
+ });
95
+ }
96
+ break;
97
+ default:
98
+ break;
99
+ }
100
+ var updatedMonth = event.target.name === 'month' ? newValue : month;
101
+ var updatedDay = event.target.name === 'day' ? newValue : day;
102
+ var updatedYear = event.target.name === 'year' ? newValue : year;
103
+ this.setState({
104
+ value: {
105
+ year: updatedYear,
106
+ month: updatedMonth,
107
+ day: updatedDay
108
+ }
109
+ });
110
+ }
111
+ }, {
112
+ key: "render",
113
+ value: function render() {
114
+ var _this2 = this;
115
+ var placeholder = this.props.data.placeholder;
116
+ var props = {};
117
+ props.type = 'date';
118
+ props.className = 'form-control';
119
+ props.name = this.props.data.field_name;
120
+ var readOnly = this.props.data.readOnly || this.props.read_only;
121
+ this.state.formatMask.toLowerCase();
122
+ if (this.props.mutable) {
123
+ props.defaultValue = this.props.defaultValue;
124
+ props.ref = this.inputField;
125
+ }
126
+ var baseClasses = 'SortableItem rfb-item';
127
+ if (this.props.data.pageBreakBefore) {
128
+ baseClasses += ' alwaysbreak';
129
+ }
130
+ return /*#__PURE__*/_react["default"].createElement("div", {
131
+ className: baseClasses,
132
+ style: _objectSpread({}, this.props.style)
133
+ }, /*#__PURE__*/_react["default"].createElement(_componentHeader["default"], this.props), /*#__PURE__*/_react["default"].createElement("div", {
134
+ className: "form-group"
135
+ }, /*#__PURE__*/_react["default"].createElement(_componentLabel["default"], this.props), /*#__PURE__*/_react["default"].createElement("div", null, readOnly && /*#__PURE__*/_react["default"].createElement("input", {
136
+ type: "text",
137
+ name: props.name,
138
+ ref: props.ref,
139
+ readOnly: readOnly,
140
+ placeholder: placeholder || this.state.placeholder,
141
+ value: this.state.value,
142
+ className: "form-control"
143
+ }), !readOnly && /*#__PURE__*/_react["default"].createElement("div", {
144
+ className: "input-group",
145
+ style: {
146
+ border: '1px solid #ced4da',
147
+ borderRadius: '0.25rem',
148
+ marginTop: 10
149
+ }
150
+ }, /*#__PURE__*/_react["default"].createElement("input", {
151
+ value: this.state.month,
152
+ onKeyUp: function onKeyUp(e) {
153
+ return e.target.value && e.target.value.length === 2 && document.getElementById('day').focus();
154
+ },
155
+ name: "month",
156
+ id: "month",
157
+ onChange: function onChange(e) {
158
+ return _this2.handleDateChange(e);
159
+ },
160
+ className: "form-control",
161
+ type: "text",
162
+ style: {
163
+ border: 'none'
164
+ },
165
+ onFocus: function onFocus(e) {
166
+ return _this2.handleBirthdayFocus();
167
+ },
168
+ placeholder: placeholder || this.state.placeholder,
169
+ maxLength: "2",
170
+ pattern: "\\d*"
171
+ }), this.state.birthdayFocused && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", {
172
+ style: {
173
+ display: this.state.year || this.state.day || this.state.month ? '' : 'none',
174
+ alignSelf: 'center'
175
+ }
176
+ }, "/"), /*#__PURE__*/_react["default"].createElement("input", {
177
+ value: this.state.day,
178
+ onKeyUp: function onKeyUp(e) {
179
+ return e.target.value && e.target.value.length === 2 && document.getElementById('year').focus();
180
+ },
181
+ name: "day",
182
+ id: "day",
183
+ className: "form-control",
184
+ type: "text",
185
+ style: {
186
+ border: 'none'
187
+ },
188
+ onChange: function onChange(e) {
189
+ return _this2.handleDateChange(e);
190
+ },
191
+ onFocus: function onFocus(e) {
192
+ return _this2.handleBirthdayFocus();
193
+ },
194
+ maxLength: "2",
195
+ pattern: "\\d*"
196
+ }), /*#__PURE__*/_react["default"].createElement("span", {
197
+ style: {
198
+ display: this.state.year || this.state.day || this.state.month ? '' : 'none',
199
+ alignSelf: 'center'
200
+ }
201
+ }, "/"), /*#__PURE__*/_react["default"].createElement("input", {
202
+ value: this.state.year,
203
+ name: "year",
204
+ id: "year",
205
+ className: "form-control",
206
+ type: "text",
207
+ style: {
208
+ border: 'none'
209
+ },
210
+ onFocus: function onFocus(e) {
211
+ return _this2.handleBirthdayFocus();
212
+ },
213
+ maxLength: "4",
214
+ pattern: "\\d*",
215
+ onChange: function onChange(e) {
216
+ return _this2.handleDateChange(e);
217
+ }
218
+ }))))));
219
+ }
220
+ }], [{
221
+ key: "updateDateTime",
222
+ value: function updateDateTime(props, state, formatMask) {
223
+ var value;
224
+ var internalValue;
225
+ var defaultToday = props.data.defaultToday;
226
+ var iOSFormatMask = 'yyyy-MM-dd';
227
+ if (defaultToday && (props.defaultValue === '' || props.defaultValue === undefined)) {
228
+ var dateToFormat = new Date();
229
+ value = dateToFormat.toString() === 'Invalid Date' ? '' : (0, _dateFns.format)(dateToFormat, iOSFormatMask);
230
+ internalValue = dateToFormat.toString() === 'Invalid Date' ? '' : dateToFormat; // Ensure not undefined
231
+ } else {
232
+ value = props.defaultValue || ''; // Ensure not undefined
233
+ if (value === '') {
234
+ internalValue = '';
235
+ } else {
236
+ var parsedDate = (0, _dateFns.parse)(value, formatMask, new Date());
237
+ internalValue = parsedDate.toString() === 'Invalid Date' ? '' : parsedDate; // Ensure not undefined
238
+ }
239
+ }
240
+ return {
241
+ value: value,
242
+ internalValue: internalValue,
243
+ placeholder: formatMask.toLowerCase(),
244
+ defaultToday: defaultToday,
245
+ formatMask: formatMask
246
+ };
247
+ }
248
+ }, {
249
+ key: "updateFormat",
250
+ value: function updateFormat(props, oldFormatMask) {
251
+ var _props$data = props.data,
252
+ showTimeSelect = _props$data.showTimeSelect,
253
+ showTimeSelectOnly = _props$data.showTimeSelectOnly,
254
+ showTimeInput = _props$data.showTimeInput;
255
+ var dateFormat = showTimeSelect && showTimeSelectOnly ? '' : props.data.dateFormat;
256
+ var timeFormat = showTimeSelect || showTimeInput ? props.data.timeFormat : '';
257
+ var formatMask = "".concat(dateFormat, " ").concat(timeFormat).trim();
258
+ var updated = formatMask !== oldFormatMask;
259
+ return {
260
+ updated: updated,
261
+ formatMask: formatMask
262
+ };
263
+ }
264
+ }, {
265
+ key: "getDerivedStateFromProps",
266
+ value: function getDerivedStateFromProps(props, state) {
267
+ var _DatePicker$updateFor2 = DatePicker.updateFormat(props, state.formatMask),
268
+ updated = _DatePicker$updateFor2.updated,
269
+ formatMask = _DatePicker$updateFor2.formatMask;
270
+ if (props.data.defaultToday !== state.defaultToday || updated) {
271
+ return DatePicker.updateDateTime(props, state, formatMask);
272
+ }
273
+ return null;
274
+ }
275
+ }]);
276
+ return DatePicker;
277
+ }(_react["default"].Component);
278
+ var _default = exports["default"] = DatePicker;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
11
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
12
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
13
+ var _react = _interopRequireDefault(require("react"));
14
+ var _componentDragHandle = _interopRequireDefault(require("./component-drag-handle"));
15
+ 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); }; }
16
+ 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; } } /**
17
+ * <HeaderBar />
18
+ */ // import Grip from '../multi-column/grip';
19
+ var HeaderBar = exports["default"] = /*#__PURE__*/function (_React$Component) {
20
+ (0, _inherits2["default"])(HeaderBar, _React$Component);
21
+ var _super = _createSuper(HeaderBar);
22
+ function HeaderBar() {
23
+ (0, _classCallCheck2["default"])(this, HeaderBar);
24
+ return _super.apply(this, arguments);
25
+ }
26
+ (0, _createClass2["default"])(HeaderBar, [{
27
+ key: "render",
28
+ value: function render() {
29
+ return /*#__PURE__*/_react["default"].createElement("div", {
30
+ className: "toolbar-header"
31
+ }, /*#__PURE__*/_react["default"].createElement("span", {
32
+ className: "badge badge-secondary"
33
+ }, this.props.data.text), /*#__PURE__*/_react["default"].createElement("div", {
34
+ className: "toolbar-header-buttons"
35
+ }, this.props.data.element !== 'LineBreak' && /*#__PURE__*/_react["default"].createElement("div", {
36
+ className: "btn is-isolated",
37
+ onClick: this.props.editModeOn.bind(this.props.parent, this.props.data)
38
+ }, /*#__PURE__*/_react["default"].createElement("i", {
39
+ className: "is-isolated fas fa-edit"
40
+ })), /*#__PURE__*/_react["default"].createElement("div", {
41
+ className: "btn is-isolated",
42
+ onClick: this.props.onDestroy.bind(this, this.props.data)
43
+ }, /*#__PURE__*/_react["default"].createElement("i", {
44
+ className: "is-isolated fas fa-trash"
45
+ })), /*#__PURE__*/_react["default"].createElement(_componentDragHandle["default"], {
46
+ data: this.props.data,
47
+ index: this.props.index,
48
+ onDestroy: this.props.onDestroy,
49
+ setAsChild: this.props.setAsChild
50
+ })));
51
+ }
52
+ }]);
53
+ return HeaderBar;
54
+ }(_react["default"].Component);