@goldenpine/react-form-builder2 0.20.3-build.21 → 0.20.3-build.23
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/dist/845.app.js +1 -1
- package/dist/app.css +1 -1
- package/dist/app.css.map +1 -1
- package/dist/app.js +1 -1
- package/lib/form-elements/index.js +73 -20
- package/lib/form-elements-edit.js +19 -2
- package/lib/language-provider/locales/en-us.json +1 -1
- package/lib/language-provider/locales/fa-ir.json +1 -1
- package/lib/language-provider/locales/it-it.json +1 -1
- package/lib/language-provider/locales/vi-vn.json +1 -1
- package/lib/toolbar.js +2 -0
- package/package.json +1 -1
|
@@ -866,7 +866,7 @@ var Camera = /*#__PURE__*/function (_React$Component17) {
|
|
|
866
866
|
src: this.state.previewImg,
|
|
867
867
|
height: "100",
|
|
868
868
|
className: "image-upload-preview"
|
|
869
|
-
}), /*#__PURE__*/_react["default"].createElement("
|
|
869
|
+
}), /*#__PURE__*/_react["default"].createElement("button", {
|
|
870
870
|
className: "btn btn-image-clear",
|
|
871
871
|
onClick: this.clearImage
|
|
872
872
|
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
@@ -890,11 +890,11 @@ var Camera = /*#__PURE__*/function (_React$Component17) {
|
|
|
890
890
|
name: name,
|
|
891
891
|
type: "file",
|
|
892
892
|
accept: "image/*",
|
|
893
|
-
capture: "camera",
|
|
894
893
|
className: "visually-hidden",
|
|
895
894
|
onChange: this.displayImage,
|
|
896
|
-
|
|
897
|
-
disabled: this.props.read_only
|
|
895
|
+
"data-clearlabel": this.props.data.label_after_photo_clear_icon,
|
|
896
|
+
disabled: this.props.read_only,
|
|
897
|
+
id: name
|
|
898
898
|
}), /*#__PURE__*/_react["default"].createElement("label", {
|
|
899
899
|
htmlFor: name,
|
|
900
900
|
className: "upload-card-content"
|
|
@@ -904,9 +904,7 @@ var Camera = /*#__PURE__*/function (_React$Component17) {
|
|
|
904
904
|
className: "upload-text"
|
|
905
905
|
}, this.props.data.message_under_camera_icon), /*#__PURE__*/_react["default"].createElement("div", {
|
|
906
906
|
className: "btn-browse"
|
|
907
|
-
}, this.props.data.label_after_camera_icon))), this.state.img && /*#__PURE__*/_react["default"].createElement("div", {
|
|
908
|
-
className: "preview-container"
|
|
909
|
-
}, /*#__PURE__*/_react["default"].createElement("img", {
|
|
907
|
+
}, this.props.data.label_after_camera_icon))), this.state.img && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("img", {
|
|
910
908
|
onLoad: function onLoad() {
|
|
911
909
|
return URL.revokeObjectURL(_this13.state.previewImg);
|
|
912
910
|
},
|
|
@@ -919,7 +917,7 @@ var Camera = /*#__PURE__*/function (_React$Component17) {
|
|
|
919
917
|
onClick: this.clearImage
|
|
920
918
|
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
921
919
|
className: "fas fa-times"
|
|
922
|
-
}), "
|
|
920
|
+
}), " ", this.props.data.label_after_photo_clear_icon)))));
|
|
923
921
|
}
|
|
924
922
|
}
|
|
925
923
|
}]);
|
|
@@ -1007,6 +1005,61 @@ var FileUpload = /*#__PURE__*/function (_React$Component18) {
|
|
|
1007
1005
|
if (this.props.data.pageBreakBefore) {
|
|
1008
1006
|
baseClasses += ' alwaysbreak';
|
|
1009
1007
|
}
|
|
1008
|
+
if (this.props.data.upload_layout === 'standard') {
|
|
1009
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
1010
|
+
style: _objectSpread({}, this.props.style),
|
|
1011
|
+
className: baseClasses
|
|
1012
|
+
}, /*#__PURE__*/_react["default"].createElement(_componentHeader["default"], this.props), /*#__PURE__*/_react["default"].createElement("div", {
|
|
1013
|
+
className: "mb-3"
|
|
1014
|
+
}, /*#__PURE__*/_react["default"].createElement(_componentLabel["default"], this.props), this.props.read_only === true && this.props.defaultValue && this.props.defaultValue.length > 0 ? /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("button", {
|
|
1015
|
+
className: "btn btn-outline-secondary",
|
|
1016
|
+
onClick: this.saveFile
|
|
1017
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
1018
|
+
className: "fas fa-download"
|
|
1019
|
+
}), " Download File")) : /*#__PURE__*/_react["default"].createElement("div", {
|
|
1020
|
+
className: "image-upload-container"
|
|
1021
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
1022
|
+
style: fileInputStyle
|
|
1023
|
+
}, /*#__PURE__*/_react["default"].createElement("input", {
|
|
1024
|
+
name: name,
|
|
1025
|
+
type: "file",
|
|
1026
|
+
accept: this.props.data.fileType || '*',
|
|
1027
|
+
className: "image-upload visually-hidden",
|
|
1028
|
+
onChange: this.displayFileUpload,
|
|
1029
|
+
"data-clearlabel": this.props.data.label_after_file_clear_icon,
|
|
1030
|
+
disabled: this.props.read_only,
|
|
1031
|
+
id: name
|
|
1032
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
1033
|
+
className: "image-upload-control",
|
|
1034
|
+
style: {
|
|
1035
|
+
position: 'relative'
|
|
1036
|
+
}
|
|
1037
|
+
}, /*#__PURE__*/_react["default"].createElement("label", {
|
|
1038
|
+
className: "btn btn-outline-secondary",
|
|
1039
|
+
htmlFor: name
|
|
1040
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
1041
|
+
className: "fas fa-file"
|
|
1042
|
+
}), " ", this.props.data.label_after_file_icon), /*#__PURE__*/_react["default"].createElement("div", null, this.props.data.message_under_file_icon))), this.state.fileUpload && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
1043
|
+
className: "file-upload-preview"
|
|
1044
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
1045
|
+
style: {
|
|
1046
|
+
display: 'inline-block',
|
|
1047
|
+
marginRight: '5px'
|
|
1048
|
+
}
|
|
1049
|
+
}, this.state.fileUpload.name), /*#__PURE__*/_react["default"].createElement("div", {
|
|
1050
|
+
style: {
|
|
1051
|
+
display: 'inline-block',
|
|
1052
|
+
marginLeft: '5px'
|
|
1053
|
+
}
|
|
1054
|
+
}, this.state.fileUpload.size.length > 6 ? " ".concat(Math.ceil(this.state.fileUpload.size / (1024 * 1024)), " mb") : " ".concat(Math.ceil(this.state.fileUpload.size / 1024), " kb"))), /*#__PURE__*/_react["default"].createElement("br", null), /*#__PURE__*/_react["default"].createElement("div", {
|
|
1055
|
+
className: "btn btn-file-upload-clear",
|
|
1056
|
+
onClick: this.clearFileUpload
|
|
1057
|
+
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
1058
|
+
className: "fas fa-times"
|
|
1059
|
+
}), " ", this.props.data.label_after_file_clear_icon)))));
|
|
1060
|
+
}
|
|
1061
|
+
|
|
1062
|
+
// non-standard layout: use "upload-card" style like Camera
|
|
1010
1063
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
1011
1064
|
style: _objectSpread({}, this.props.style),
|
|
1012
1065
|
className: baseClasses
|
|
@@ -1020,27 +1073,27 @@ var FileUpload = /*#__PURE__*/function (_React$Component18) {
|
|
|
1020
1073
|
}), " Download File")) : /*#__PURE__*/_react["default"].createElement("div", {
|
|
1021
1074
|
className: "image-upload-container"
|
|
1022
1075
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
1023
|
-
style: fileInputStyle
|
|
1076
|
+
style: fileInputStyle,
|
|
1077
|
+
className: "upload-card"
|
|
1024
1078
|
}, /*#__PURE__*/_react["default"].createElement("input", {
|
|
1025
1079
|
name: name,
|
|
1026
1080
|
type: "file",
|
|
1027
1081
|
accept: this.props.data.fileType || '*',
|
|
1028
|
-
className: "
|
|
1082
|
+
className: "visually-hidden",
|
|
1029
1083
|
onChange: this.displayFileUpload,
|
|
1030
1084
|
"data-clearlabel": this.props.data.label_after_file_clear_icon,
|
|
1031
1085
|
disabled: this.props.read_only,
|
|
1032
1086
|
id: name
|
|
1033
|
-
}), /*#__PURE__*/_react["default"].createElement("
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
position: 'relative'
|
|
1037
|
-
}
|
|
1038
|
-
}, /*#__PURE__*/_react["default"].createElement("label", {
|
|
1039
|
-
className: "btn btn-outline-secondary",
|
|
1040
|
-
htmlFor: name
|
|
1087
|
+
}), /*#__PURE__*/_react["default"].createElement("label", {
|
|
1088
|
+
htmlFor: name,
|
|
1089
|
+
className: "upload-card-content"
|
|
1041
1090
|
}, /*#__PURE__*/_react["default"].createElement("i", {
|
|
1042
|
-
className: "fas fa-
|
|
1043
|
-
}),
|
|
1091
|
+
className: "fas fa-cloud-upload-alt upload-icon"
|
|
1092
|
+
}), /*#__PURE__*/_react["default"].createElement("span", {
|
|
1093
|
+
className: "upload-text"
|
|
1094
|
+
}, this.props.data.message_under_file_icon), /*#__PURE__*/_react["default"].createElement("div", {
|
|
1095
|
+
className: "btn-browse"
|
|
1096
|
+
}, this.props.data.label_after_file_icon))), this.state.fileUpload && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
1044
1097
|
className: "file-upload-preview"
|
|
1045
1098
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
1046
1099
|
style: {
|
|
@@ -134,6 +134,18 @@ var FormElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Compon
|
|
|
134
134
|
});
|
|
135
135
|
}
|
|
136
136
|
}
|
|
137
|
+
}, {
|
|
138
|
+
key: "validateImageSize",
|
|
139
|
+
value: function validateImageSize(e) {
|
|
140
|
+
var regex = /^$|^\d+(px|%)$/;
|
|
141
|
+
if (regex.test(e.target.value)) {
|
|
142
|
+
e.target.classList.remove("is-invalid");
|
|
143
|
+
e.target.classList.add("is-valid");
|
|
144
|
+
} else {
|
|
145
|
+
e.target.classList.remove("is-valid");
|
|
146
|
+
e.target.classList.add("is-invalid");
|
|
147
|
+
}
|
|
148
|
+
}
|
|
137
149
|
}, {
|
|
138
150
|
key: "render",
|
|
139
151
|
value: function render() {
|
|
@@ -160,6 +172,7 @@ var FormElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Compon
|
|
|
160
172
|
canHaveOptionCorrect = _this$props$element.canHaveOptionCorrect,
|
|
161
173
|
canHaveOptionValue = _this$props$element.canHaveOptionValue;
|
|
162
174
|
var canHaveImageSize = this.state.element.element === 'Image' || this.state.element.element === 'Camera';
|
|
175
|
+
var canHaveUploadLayout = this.state.element.element === 'Camera' || this.state.element.element === 'FileUpload';
|
|
163
176
|
var this_files = this.props.files.length ? this.props.files : [];
|
|
164
177
|
if (this_files.length < 1 || this_files.length > 0 && this_files[0].id !== '') {
|
|
165
178
|
this_files.unshift({
|
|
@@ -360,7 +373,7 @@ var FormElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Compon
|
|
|
360
373
|
defaultValue: this.props.element.src,
|
|
361
374
|
onBlur: this.updateElement.bind(this),
|
|
362
375
|
onChange: this.editElementProp.bind(this, 'src', 'value')
|
|
363
|
-
}))),
|
|
376
|
+
}))), canHaveUploadLayout && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
364
377
|
className: "mb-3"
|
|
365
378
|
}, /*#__PURE__*/_react["default"].createElement("label", {
|
|
366
379
|
className: "control-label bold"
|
|
@@ -398,7 +411,7 @@ var FormElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Compon
|
|
|
398
411
|
htmlFor: "uploadLayoutDropZone"
|
|
399
412
|
}, /*#__PURE__*/_react["default"].createElement(_IntlMessages["default"], {
|
|
400
413
|
id: "upload-layout-dropzone"
|
|
401
|
-
}))))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
414
|
+
})))))), this.state.element.element === 'Camera' && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
402
415
|
className: "mb-3"
|
|
403
416
|
}, /*#__PURE__*/_react["default"].createElement("label", {
|
|
404
417
|
className: "control-label",
|
|
@@ -473,6 +486,8 @@ var FormElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Compon
|
|
|
473
486
|
id: "elementWidth",
|
|
474
487
|
type: "text",
|
|
475
488
|
className: "form-control",
|
|
489
|
+
pattern: "^$|^\\d+(px|%)$",
|
|
490
|
+
onInput: this.validateImageSize,
|
|
476
491
|
defaultValue: this.props.element.width,
|
|
477
492
|
onBlur: this.updateElement.bind(this),
|
|
478
493
|
onChange: this.editElementProp.bind(this, 'width', 'value')
|
|
@@ -487,6 +502,8 @@ var FormElementsEdit = exports["default"] = /*#__PURE__*/function (_React$Compon
|
|
|
487
502
|
id: "elementHeight",
|
|
488
503
|
type: "text",
|
|
489
504
|
className: "form-control",
|
|
505
|
+
pattern: "^$|^\\d+(px|%)$",
|
|
506
|
+
onInput: this.validateImageSize,
|
|
490
507
|
defaultValue: this.props.element.height,
|
|
491
508
|
onBlur: this.updateElement.bind(this),
|
|
492
509
|
onChange: this.editElementProp.bind(this, 'height', 'value')
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"ppt" : "PPT",
|
|
40
40
|
"upload-layout" : "Upload Area Layout",
|
|
41
41
|
"upload-layout-standard" : "Standard",
|
|
42
|
-
"upload-layout-dropzone" : "
|
|
42
|
+
"upload-layout-dropzone" : "Large upload area",
|
|
43
43
|
"image-layout" : "Image Layout",
|
|
44
44
|
"display-label-after-camera-icon" : "Display label on button",
|
|
45
45
|
"place-holder-display-label-after-camera-icon" : "Upload Photo",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"ppt": "PPT",
|
|
40
40
|
"upload-layout" : "چیدمان بخش بارگذاری",
|
|
41
41
|
"upload-layout-standard" : "استاندارد",
|
|
42
|
-
"upload-layout-dropzone" : "
|
|
42
|
+
"upload-layout-dropzone" : "بخش بارگذاری بزرگ",
|
|
43
43
|
"image-layout" : "چیدمان تصویر",
|
|
44
44
|
"display-label-after-camera-icon" : "نمایش برچسب پس از آیکون دوربین",
|
|
45
45
|
"place-holder-display-label-after-camera-icon" : "آپلود عکس",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"ppt" : "PPT",
|
|
40
40
|
"upload-layout" : "Layout dell'area di caricamento",
|
|
41
41
|
"upload-layout-standard" : "Standard",
|
|
42
|
-
"upload-layout-dropzone" : "Area di
|
|
42
|
+
"upload-layout-dropzone" : "Area di caricamento grande",
|
|
43
43
|
"image-layout" : "Layout dell'immagine",
|
|
44
44
|
"display-label-after-camera-icon" : "Mostra etichetta dopo l'icona della fotocamera",
|
|
45
45
|
"place-holder-display-label-after-camera-icon" : "Carica foto",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"ppt" : "PPT",
|
|
40
40
|
"upload-layout" : "Bố cục khu vực tải lên",
|
|
41
41
|
"upload-layout-standard" : "Tiêu chuẩn",
|
|
42
|
-
"upload-layout-dropzone" : "
|
|
42
|
+
"upload-layout-dropzone" : "Khu vực tải lên lớn",
|
|
43
43
|
"image-layout" : "Bố cục hình ảnh",
|
|
44
44
|
"display-label-after-camera-icon" : "Hiển thị nhãn sau biểu tượng máy ảnh",
|
|
45
45
|
"place-holder-display-label-after-camera-icon" : "Tải ảnh lên",
|
package/lib/toolbar.js
CHANGED
|
@@ -443,6 +443,7 @@ var Toolbar = /*#__PURE__*/function (_React$Component) {
|
|
|
443
443
|
id: 'place-holder-label'
|
|
444
444
|
}),
|
|
445
445
|
field_name: 'file_upload_',
|
|
446
|
+
upload_layout: 'standard',
|
|
446
447
|
label_after_file_icon: intl.formatMessage({
|
|
447
448
|
id: 'place-holder-display-label-after-file-icon'
|
|
448
449
|
}),
|
|
@@ -546,6 +547,7 @@ var Toolbar = /*#__PURE__*/function (_React$Component) {
|
|
|
546
547
|
elementOptions.label_after_photo_clear_icon = item.label_after_photo_clear_icon;
|
|
547
548
|
}
|
|
548
549
|
if (elementKey === 'FileUpload') {
|
|
550
|
+
elementOptions.upload_layout = item.upload_layout;
|
|
549
551
|
elementOptions.label_after_file_icon = item.label_after_file_icon;
|
|
550
552
|
elementOptions.message_under_file_icon = item.message_under_file_icon;
|
|
551
553
|
elementOptions.label_after_file_clear_icon = item.label_after_file_clear_icon;
|