@bjsdistribution/dms-client-return 0.1.11-prod → 0.1.12-prod
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/dms-client-return.cjs.development.js +91 -50
- package/dist/dms-client-return.cjs.development.js.map +1 -1
- package/dist/dms-client-return.cjs.production.min.js +1 -1
- package/dist/dms-client-return.cjs.production.min.js.map +1 -1
- package/dist/dms-client-return.esm.js +91 -50
- package/dist/dms-client-return.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/order-view/order-actions/actions/add-resources/DocFileUpload.tsx +92 -72
- package/src/components/order-view/order-actions/actions/add-resources/index.tsx +27 -10
|
@@ -7808,9 +7808,10 @@ function UploadIcon(props) {
|
|
|
7808
7808
|
}
|
|
7809
7809
|
|
|
7810
7810
|
var _templateObject$1k, _templateObject2$Z, _templateObject3$u, _templateObject4$f, _templateObject5$9, _templateObject6$3, _templateObject7$5, _templateObject8$4, _templateObject9$2, _templateObject10$1, _templateObject11$1, _templateObject12, _templateObject13;
|
|
7811
|
+
// Store uploaded files
|
|
7811
7812
|
var uploadedFilesAtom = /*#__PURE__*/jotai.atom([]);
|
|
7812
|
-
// Allowed photo
|
|
7813
|
-
var
|
|
7813
|
+
// Allowed photo MIME types
|
|
7814
|
+
var allowedFileTypes = ['image/jpeg', 'image/png'];
|
|
7814
7815
|
function DocFileUpload() {
|
|
7815
7816
|
var _useAtom = jotai.useAtom(uploadedFilesAtom),
|
|
7816
7817
|
uploadedFiles = _useAtom[0],
|
|
@@ -7819,35 +7820,57 @@ function DocFileUpload() {
|
|
|
7819
7820
|
dragging = _useState[0],
|
|
7820
7821
|
setDragging = _useState[1];
|
|
7821
7822
|
var fileInputRef = React.useRef(null);
|
|
7823
|
+
var isDuplicate = function isDuplicate(file) {
|
|
7824
|
+
return uploadedFiles == null ? void 0 : uploadedFiles.some(function (existing) {
|
|
7825
|
+
return (existing == null ? void 0 : existing.name) === (file == null ? void 0 : file.name) && (existing == null ? void 0 : existing.size) === (file == null ? void 0 : file.size) && (existing == null ? void 0 : existing.lastModified) === (file == null ? void 0 : file.lastModified);
|
|
7826
|
+
});
|
|
7827
|
+
};
|
|
7822
7828
|
var handleFileUpload = function handleFileUpload(files) {
|
|
7823
|
-
if (files)
|
|
7824
|
-
|
|
7825
|
-
|
|
7826
|
-
|
|
7827
|
-
|
|
7828
|
-
|
|
7829
|
-
|
|
7830
|
-
|
|
7831
|
-
validFiles.forEach(function (file) {
|
|
7832
|
-
antd.notification.success({
|
|
7833
|
-
message: 'Success',
|
|
7834
|
-
description: file.name + " added successfully."
|
|
7835
|
-
});
|
|
7836
|
-
});
|
|
7829
|
+
if (!files) return;
|
|
7830
|
+
var validFiles = [];
|
|
7831
|
+
var rejectedFiles = [];
|
|
7832
|
+
Array.from(files).forEach(function (file) {
|
|
7833
|
+
var isValidType = allowedFileTypes == null ? void 0 : allowedFileTypes.includes(file.type);
|
|
7834
|
+
var isNew = !isDuplicate(file);
|
|
7835
|
+
if (isValidType && isNew) {
|
|
7836
|
+
validFiles == null || validFiles.push(file);
|
|
7837
7837
|
} else {
|
|
7838
|
-
|
|
7839
|
-
message: 'Error',
|
|
7840
|
-
description: 'Only photos (JPEG, PNG) and videos (MP4) are allowed.'
|
|
7841
|
-
});
|
|
7838
|
+
rejectedFiles == null || rejectedFiles.push(file);
|
|
7842
7839
|
}
|
|
7840
|
+
});
|
|
7841
|
+
if ((validFiles == null ? void 0 : validFiles.length) > 0) {
|
|
7842
|
+
setUploadedFiles(function (prev) {
|
|
7843
|
+
return [].concat(prev, validFiles);
|
|
7844
|
+
});
|
|
7845
|
+
validFiles == null || validFiles.forEach(function (file) {
|
|
7846
|
+
return antd.notification.success({
|
|
7847
|
+
message: 'Success',
|
|
7848
|
+
description: file.name + " added successfully."
|
|
7849
|
+
});
|
|
7850
|
+
});
|
|
7851
|
+
}
|
|
7852
|
+
if ((rejectedFiles == null ? void 0 : rejectedFiles.length) > 0) {
|
|
7853
|
+
antd.notification.error({
|
|
7854
|
+
message: 'Some files were not added',
|
|
7855
|
+
description: 'Either they were duplicates or not JPEG/PNG format.'
|
|
7856
|
+
});
|
|
7843
7857
|
}
|
|
7844
7858
|
};
|
|
7859
|
+
var handleRemoveFile = function handleRemoveFile(indexToRemove) {
|
|
7860
|
+
var updated = uploadedFiles == null ? void 0 : uploadedFiles.filter(function (_, i) {
|
|
7861
|
+
return i !== indexToRemove;
|
|
7862
|
+
});
|
|
7863
|
+
setUploadedFiles(updated);
|
|
7864
|
+
antd.notification.info({
|
|
7865
|
+
message: 'File Removed'
|
|
7866
|
+
});
|
|
7867
|
+
};
|
|
7845
7868
|
var handleDragOver = function handleDragOver(e) {
|
|
7846
7869
|
e.preventDefault();
|
|
7847
7870
|
setDragging(true);
|
|
7848
7871
|
};
|
|
7849
7872
|
var handleDragLeave = function handleDragLeave() {
|
|
7850
|
-
setDragging(false);
|
|
7873
|
+
return setDragging(false);
|
|
7851
7874
|
};
|
|
7852
7875
|
var handleDrop = function handleDrop(e) {
|
|
7853
7876
|
e.preventDefault();
|
|
@@ -7856,11 +7879,11 @@ function DocFileUpload() {
|
|
|
7856
7879
|
};
|
|
7857
7880
|
var handleInputChange = function handleInputChange(e) {
|
|
7858
7881
|
handleFileUpload(e.target.files);
|
|
7882
|
+
e.target.value = ''; // Allow re-upload of same file
|
|
7859
7883
|
};
|
|
7860
7884
|
var handleButtonClick = function handleButtonClick() {
|
|
7861
|
-
|
|
7862
|
-
|
|
7863
|
-
}
|
|
7885
|
+
var _fileInputRef$current;
|
|
7886
|
+
return (_fileInputRef$current = fileInputRef.current) == null ? void 0 : _fileInputRef$current.click();
|
|
7864
7887
|
};
|
|
7865
7888
|
return React__default.createElement(MainContainer$7, null, React__default.createElement(DraggerContainer, {
|
|
7866
7889
|
onDragOver: handleDragOver,
|
|
@@ -7868,37 +7891,44 @@ function DocFileUpload() {
|
|
|
7868
7891
|
onDrop: handleDrop,
|
|
7869
7892
|
dragging: dragging
|
|
7870
7893
|
}, React__default.createElement(Container$P, null, React__default.createElement(UploadButton, {
|
|
7871
|
-
|
|
7894
|
+
type: "button",
|
|
7872
7895
|
shape: "rounded",
|
|
7873
7896
|
onClick: handleButtonClick
|
|
7874
7897
|
}, "UPLOAD FILE"), React__default.createElement(FileInput, {
|
|
7875
7898
|
type: "file",
|
|
7876
|
-
|
|
7899
|
+
accept: allowedFileTypes.join(','),
|
|
7877
7900
|
multiple: true,
|
|
7878
7901
|
onChange: handleInputChange,
|
|
7879
|
-
accept: "image/jpeg, image/png, video/mp4",
|
|
7880
7902
|
ref: fileInputRef
|
|
7881
|
-
}), React__default.createElement(IconContainer$3, null, React__default.createElement(UploadIcon, null)), React__default.createElement(TextContainer$2, null, React__default.createElement(Text1, null, "or drag and drop your
|
|
7903
|
+
}), React__default.createElement(IconContainer$3, null, React__default.createElement(UploadIcon, null)), React__default.createElement(TextContainer$2, null, React__default.createElement(Text1, null, "or drag and drop your files"), React__default.createElement(Text2, null, "Photos (JPEG, PNG) Only")))), uploadedFiles.length > 0 && React__default.createElement(UploadedFilesContainer, null, React__default.createElement(FilesTitle, null, "Uploaded Files:"), React__default.createElement(FilesList, null, uploadedFiles == null ? void 0 : uploadedFiles.map(function (file, index) {
|
|
7882
7904
|
return React__default.createElement(FileItem, {
|
|
7883
|
-
key: index
|
|
7884
|
-
}, file.name, " - ", (file.size / 1024).toFixed(2), " KB"
|
|
7905
|
+
key: file.name + "-" + index
|
|
7906
|
+
}, file.name, " - ", (file.size / 1024).toFixed(2), " KB", React__default.createElement(dmsComponentLibrary.CrossIcon, {
|
|
7907
|
+
style: {
|
|
7908
|
+
cursor: 'pointer',
|
|
7909
|
+
marginLeft: 8
|
|
7910
|
+
},
|
|
7911
|
+
onClick: function onClick() {
|
|
7912
|
+
return handleRemoveFile(index);
|
|
7913
|
+
}
|
|
7914
|
+
}));
|
|
7885
7915
|
}))));
|
|
7886
7916
|
}
|
|
7887
7917
|
var MainContainer$7 = /*#__PURE__*/styled__default.div(_templateObject$1k || (_templateObject$1k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n"])));
|
|
7888
7918
|
var DraggerContainer = /*#__PURE__*/styled__default.div(_templateObject2$Z || (_templateObject2$Z = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n padding: 6px;\n border-radius: 30px;\n border: ", ";\n background-color: #fff;\n transition: border-color 0.3s ease;\n cursor: pointer;\n"])), function (props) {
|
|
7889
7919
|
return props.dragging ? '2px dashed #0465ac' : '1px solid #e0e2e7';
|
|
7890
7920
|
});
|
|
7891
|
-
var
|
|
7892
|
-
var
|
|
7893
|
-
var
|
|
7921
|
+
var Container$P = /*#__PURE__*/styled__default.div(_templateObject3$u || (_templateObject3$u = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n gap: 8px;\n padding: 6px;\n align-items: center;\n border-radius: 30px;\n background: #fff;\n"])));
|
|
7922
|
+
var UploadButton = /*#__PURE__*/styled__default(dmsComponentLibrary.Button)(_templateObject4$f || (_templateObject4$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-size: 14px;\n padding: 7px 20px;\n height: auto;\n border-radius: 20px;\n"])));
|
|
7923
|
+
var FileInput = /*#__PURE__*/styled__default.input(_templateObject5$9 || (_templateObject5$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n"])));
|
|
7894
7924
|
var IconContainer$3 = /*#__PURE__*/styled__default.div(_templateObject6$3 || (_templateObject6$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n border: 1px dashed #0465ac;\n padding: 5px;\n display: flex;\n align-items: center;\n"])));
|
|
7895
|
-
var
|
|
7896
|
-
var
|
|
7897
|
-
var
|
|
7925
|
+
var TextContainer$2 = /*#__PURE__*/styled__default.div(_templateObject7$5 || (_templateObject7$5 = /*#__PURE__*/_taggedTemplateLiteralLoose([""])));
|
|
7926
|
+
var Text1 = /*#__PURE__*/styled__default.p(_templateObject8$4 || (_templateObject8$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: #aea9a1;\n font-family: 'Roboto', sans-serif;\n font-size: 14px;\n font-weight: 500;\n margin: 0;\n"])));
|
|
7927
|
+
var Text2 = /*#__PURE__*/styled__default.p(_templateObject9$2 || (_templateObject9$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: #bcbab7;\n font-family: 'Roboto', sans-serif;\n font-size: 13px;\n font-weight: 400;\n margin: 0;\n"])));
|
|
7898
7928
|
var UploadedFilesContainer = /*#__PURE__*/styled__default.div(_templateObject10$1 || (_templateObject10$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: 20px;\n border-top: 1px solid #e0e2e7;\n padding-top: 10px;\n"])));
|
|
7899
7929
|
var FilesTitle = /*#__PURE__*/styled__default.h4(_templateObject11$1 || (_templateObject11$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: 'Roboto', sans-serif;\n font-size: 16px;\n color: #0465ac;\n"])));
|
|
7900
|
-
var FilesList = /*#__PURE__*/styled__default.ul(_templateObject12 || (_templateObject12 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n list-style-type: none;\n padding: 0;\n"])));
|
|
7901
|
-
var FileItem = /*#__PURE__*/styled__default.li(_templateObject13 || (_templateObject13 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: 'Roboto', sans-serif;\n font-size: 14px;\n color: #333;\n margin: 5px 0;\n"])));
|
|
7930
|
+
var FilesList = /*#__PURE__*/styled__default.ul(_templateObject12 || (_templateObject12 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow: auto;\n max-height: 200px;\n list-style-type: none;\n padding: 0;\n"])));
|
|
7931
|
+
var FileItem = /*#__PURE__*/styled__default.li(_templateObject13 || (_templateObject13 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: 'Roboto', sans-serif;\n font-size: 14px;\n color: #333;\n margin: 5px 0;\n display: flex;\n justify-content: space-between;\n align-items: center;\n"])));
|
|
7902
7932
|
|
|
7903
7933
|
var _templateObject$1l, _templateObject2$_, _templateObject3$v, _templateObject4$g, _templateObject5$a;
|
|
7904
7934
|
function AddResources() {
|
|
@@ -7955,14 +7985,13 @@ function AddResources() {
|
|
|
7955
7985
|
setSelectedType(selectedOption.value);
|
|
7956
7986
|
}
|
|
7957
7987
|
};
|
|
7958
|
-
console.log(uploadedFiles, 'filesfiles');
|
|
7959
7988
|
var handleSubmit = /*#__PURE__*/function () {
|
|
7960
7989
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
7961
|
-
var formData, response;
|
|
7990
|
+
var formData, response, _err$response, _err$response2, err, status, rawError, errMsg;
|
|
7962
7991
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
7963
7992
|
while (1) switch (_context.prev = _context.next) {
|
|
7964
7993
|
case 0:
|
|
7965
|
-
if (uploadedFiles) {
|
|
7994
|
+
if (!(!uploadedFiles || uploadedFiles.length === 0)) {
|
|
7966
7995
|
_context.next = 3;
|
|
7967
7996
|
break;
|
|
7968
7997
|
}
|
|
@@ -7972,11 +8001,9 @@ function AddResources() {
|
|
|
7972
8001
|
return _context.abrupt("return");
|
|
7973
8002
|
case 3:
|
|
7974
8003
|
formData = new FormData();
|
|
7975
|
-
|
|
7976
|
-
|
|
7977
|
-
|
|
7978
|
-
});
|
|
7979
|
-
}
|
|
8004
|
+
uploadedFiles.forEach(function (file) {
|
|
8005
|
+
formData.append('files', file); // Adjust key as per API
|
|
8006
|
+
});
|
|
7980
8007
|
_context.prev = 5;
|
|
7981
8008
|
_context.next = 8;
|
|
7982
8009
|
return callResourcesAPI({
|
|
@@ -7988,18 +8015,32 @@ function AddResources() {
|
|
|
7988
8015
|
antd.notification.success({
|
|
7989
8016
|
message: 'Files uploaded successfully'
|
|
7990
8017
|
});
|
|
7991
|
-
onClose(); // Close modal
|
|
8018
|
+
onClose(); // Close modal
|
|
7992
8019
|
setResources(false);
|
|
7993
8020
|
setTimeout(function () {
|
|
7994
8021
|
setResources(true);
|
|
7995
8022
|
}, 1000);
|
|
7996
|
-
_context.next =
|
|
8023
|
+
_context.next = 24;
|
|
7997
8024
|
break;
|
|
7998
8025
|
case 16:
|
|
7999
8026
|
_context.prev = 16;
|
|
8000
8027
|
_context.t0 = _context["catch"](5);
|
|
8001
|
-
|
|
8002
|
-
|
|
8028
|
+
err = _context.t0;
|
|
8029
|
+
status = err == null || (_err$response = err.response) == null ? void 0 : _err$response.status;
|
|
8030
|
+
rawError = (err == null || (_err$response2 = err.response) == null || (_err$response2 = _err$response2.data) == null ? void 0 : _err$response2.error) || '';
|
|
8031
|
+
errMsg = 'An unexpected error occurred.';
|
|
8032
|
+
if (status === 413) {
|
|
8033
|
+
errMsg = 'File is too large. Please upload a smaller file.';
|
|
8034
|
+
} else if (rawError.includes('413')) {
|
|
8035
|
+
errMsg = 'File size exceeds the allowed limit.';
|
|
8036
|
+
} else if (err != null && err.message) {
|
|
8037
|
+
errMsg = err.message;
|
|
8038
|
+
}
|
|
8039
|
+
antd.notification.error({
|
|
8040
|
+
message: 'Upload Failed',
|
|
8041
|
+
description: errMsg
|
|
8042
|
+
});
|
|
8043
|
+
case 24:
|
|
8003
8044
|
case "end":
|
|
8004
8045
|
return _context.stop();
|
|
8005
8046
|
}
|