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