pixel-priya 1.2.6 → 1.2.8

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.
@@ -1,4 +1,4 @@
1
- var css = {exports: {}};
1
+ var html = {exports: {}};
2
2
 
3
- export { css as __module };
3
+ export { html as __module };
4
4
  //# sourceMappingURL=index10.js.map
@@ -1,4 +1,4 @@
1
- var html = {exports: {}};
1
+ var javascript = {exports: {}};
2
2
 
3
- export { html as __module };
3
+ export { javascript as __module };
4
4
  //# sourceMappingURL=index11.js.map
@@ -1,4 +1,4 @@
1
- var javascript = {exports: {}};
1
+ var css = {exports: {}};
2
2
 
3
- export { javascript as __module };
3
+ export { css as __module };
4
4
  //# sourceMappingURL=index9.js.map
@@ -55,81 +55,216 @@ const ActiveCell = props => {
55
55
  const [selectOption, setSelectOption] = React.useState(false);
56
56
  const [allOption, setAllOption] = React.useState();
57
57
  const [selectedFiles, setSelectedFiles] = React.useState([]);
58
+ // const handleFilesChange = async (
59
+ // newFiles: File[],
60
+ // selected?: File[],
61
+ // actionType?: string
62
+ // ) => {
63
+ // if (newFiles.length > 5) {
64
+ // toast.info('Cannot upload more than 5 files.');
65
+ // return;
66
+ // }
67
+ // if (props.attachmentAction?.addAttachment && selected) {
68
+ // try {
69
+ // if (actionType === 'ADD' && cell?.inputType?.type === 'file') {
70
+ // const parsedFiles: File[] = !checkEmpty(cell.value)
71
+ // ? JSON.parse(cell.value)
72
+ // : [];
73
+ // let successCount = 0;
74
+ // let failureCount = 0;
75
+ // let duplicateCount = 0;
76
+ // const nonDuplicateFiles = selected?.filter((file) => {
77
+ // const isDuplicate = parsedFiles?.some(
78
+ // (existing) => existing?.name.split('*')[0] === file?.name
79
+ // );
80
+ // if (isDuplicate) {
81
+ // duplicateCount++;
82
+ // }
83
+ // return !isDuplicate;
84
+ // });
85
+ // const uploadPromises = nonDuplicateFiles?.map(async (file) => {
86
+ // const response = await props.attachmentAction?.addAttachment(file);
87
+ // if (!checkEmpty(response)) {
88
+ // return JSON.parse(response ?? '');
89
+ // }
90
+ // });
91
+ // const results = await Promise.all(uploadPromises);
92
+ // results.forEach((result) => {
93
+ // if (result) {
94
+ // parsedFiles.push(result);
95
+ // successCount++;
96
+ // } else {
97
+ // failureCount++;
98
+ // }
99
+ // });
100
+ // // Update cell value with all successful uploads
101
+ // handleChange({
102
+ // ...cell,
103
+ // value: JSON.stringify(parsedFiles),
104
+ // style: cell?.style,
105
+ // inputType: cell?.inputType,
106
+ // });
107
+ // setSelectedFiles(parsedFiles);
108
+ // if (duplicateCount > 0) {
109
+ // toast.warning(`Duplicate attachments not allowed within the same row`);
110
+ // } else if (successCount > 0 && failureCount === 0) {
111
+ // toast.success(
112
+ // `file${successCount > 1 ? 's' : ''} uploaded successfully.`
113
+ // );
114
+ // } else if (failureCount > 0) {
115
+ // toast.info(
116
+ // `${failureCount} unsupported ${failureCount > 1 ? 'files' : 'file'}. Please check the file formats.`
117
+ // );
118
+ // }
119
+ // } else if (actionType === 'DELETE') {
120
+ // const parsedValue = cell && JSON.parse(cell.value);
121
+ // const updatedFileDetails = [...parsedValue];
122
+ // for (const file of selected) {
123
+ // const index = updatedFileDetails.findIndex(
124
+ // (originalFile: Types.AttachmentApi) => {
125
+ // return originalFile.name === file.name;
126
+ // }
127
+ // );
128
+ // const fileId = updatedFileDetails[index].id;
129
+ // if (index !== -1 && fileId) {
130
+ // const response = await props.attachmentAction?.deleteAttachment(fileId);
131
+ // if (response) {
132
+ // updatedFileDetails.splice(index, 1);
133
+ // handleChange({
134
+ // ...cell,
135
+ // value: !checkEmpty(updatedFileDetails)
136
+ // ? JSON.stringify(updatedFileDetails)
137
+ // : '',
138
+ // style: cell?.style,
139
+ // inputType: cell?.inputType,
140
+ // });
141
+ // setSelectedFiles((prevSelectedFiles) => [
142
+ // ...prevSelectedFiles.filter((f) => f.name !== file.name),
143
+ // ]);
144
+ // }
145
+ // }
146
+ // }
147
+ // }
148
+ // } catch (error) {
149
+ // toast.error('Attachment operation failed');
150
+ // console.error('Attachment failed:', error);
151
+ // }
152
+ // }
153
+ // };
58
154
  const handleFilesChange = async (newFiles, selected, actionType) => {
59
155
  if (newFiles.length > 5) {
60
156
  toast.info('Cannot upload more than 5 files.');
61
157
  return;
62
158
  }
63
- if (props.attachmentAction?.addAttachment && selected) {
159
+ if (props.attachmentAction?.addAttachment && selected && actionType === 'ADD' && cell?.inputType?.type === 'file') {
64
160
  try {
65
- if (actionType === 'ADD' && cell?.inputType?.type === 'file') {
66
- const parsedFiles = !checkEmpty(cell.value) ? JSON.parse(cell.value) : [];
67
- let successCount = 0;
68
- let failureCount = 0;
69
- let duplicateCount = 0;
70
- const nonDuplicateFiles = selected?.filter(file => {
71
- const isDuplicate = parsedFiles?.some(existing => existing?.name.split('*')[0] === file?.name);
72
- if (isDuplicate) {
73
- duplicateCount++;
74
- }
75
- return !isDuplicate;
76
- });
77
- const uploadPromises = nonDuplicateFiles?.map(async file => {
161
+ const parsedFiles = !checkEmpty(cell.value) ? JSON.parse(cell.value) : [];
162
+ let successCount = 0;
163
+ let failureCount = 0;
164
+ let duplicateCount = 0;
165
+ // Filter out duplicate files
166
+ const nonDuplicateFiles = selected.filter(file => {
167
+ const isDuplicate = parsedFiles.some(existing => existing?.name.split('*')[0] === file?.name);
168
+ if (isDuplicate) {
169
+ duplicateCount++;
170
+ }
171
+ return !isDuplicate;
172
+ });
173
+ if (duplicateCount > 0) {
174
+ toast.warning(`Duplicate attachments not allowed within the same row`);
175
+ }
176
+ if (nonDuplicateFiles.length === 0) {
177
+ return; // No files to upload after filtering duplicates
178
+ }
179
+ // Upload non-duplicate files
180
+ const uploadPromises = nonDuplicateFiles.map(async file => {
181
+ try {
78
182
  const response = await props.attachmentAction?.addAttachment(file);
183
+ // Check if response is non-empty
79
184
  if (!checkEmpty(response)) {
80
- return JSON.parse(response ?? '');
81
- }
82
- });
83
- const results = await Promise.all(uploadPromises);
84
- results.forEach(result => {
85
- if (result) {
86
- parsedFiles.push(result);
87
- successCount++;
185
+ try {
186
+ const parsedResponse = JSON.parse(response ?? '[]');
187
+ // Expecting an array with at least one file object
188
+ if (Array.isArray(parsedResponse) && parsedResponse.length > 0 && parsedResponse[0].id && parsedResponse[0].name) {
189
+ return {
190
+ file,
191
+ result: parsedResponse[0]
192
+ }; // Use the first file object
193
+ } else {
194
+ throw new Error('Invalid response structure');
195
+ }
196
+ } catch (parseError) {
197
+ throw parseError;
198
+ }
88
199
  } else {
89
- failureCount++;
200
+ throw new Error('Empty response from server');
90
201
  }
91
- });
92
- // Update cell value with all successful uploads
202
+ } catch (error) {
203
+ return {
204
+ file,
205
+ error
206
+ }; // Capture errors for individual files
207
+ }
208
+ });
209
+ const results = await Promise.all(uploadPromises);
210
+ // Process results
211
+ const successfulUploads = [];
212
+ results.forEach(({
213
+ file,
214
+ result,
215
+ error
216
+ }) => {
217
+ if (result && !error) {
218
+ successfulUploads.push(result);
219
+ successCount++;
220
+ } else {
221
+ failureCount++;
222
+ console.error(`Failed to upload file ${file?.name}:`, error);
223
+ }
224
+ });
225
+ // Update cell value with successful uploads
226
+ if (successCount > 0) {
227
+ const updatedFiles = [...parsedFiles, ...successfulUploads];
93
228
  handleChange({
94
229
  ...cell,
95
- value: JSON.stringify(parsedFiles),
230
+ value: JSON.stringify(updatedFiles),
96
231
  style: cell?.style,
97
232
  inputType: cell?.inputType
98
233
  });
99
- setSelectedFiles(parsedFiles);
100
- if (duplicateCount > 0) {
101
- toast.warning(`Duplicate attachments not allowed within the same row`);
102
- } else if (successCount > 0 && failureCount === 0) {
103
- toast.success(`file${successCount > 1 ? 's' : ''} uploaded successfully.`);
104
- } else if (failureCount > 0) {
105
- toast.info(`${failureCount} unsupported ${failureCount > 1 ? 'files' : 'file'}. Please check the file formats.`);
106
- }
107
- } else if (actionType === 'DELETE') {
108
- const parsedValue = cell && JSON.parse(cell.value);
109
- const updatedFileDetails = [...parsedValue];
110
- for (const file of selected) {
111
- const index = updatedFileDetails.findIndex(originalFile => {
112
- return originalFile.name === file.name;
113
- });
114
- const fileId = updatedFileDetails[index].id;
115
- if (index !== -1 && fileId) {
116
- const response = await props.attachmentAction?.deleteAttachment(fileId);
117
- if (response) {
118
- updatedFileDetails.splice(index, 1);
119
- handleChange({
120
- ...cell,
121
- value: !checkEmpty(updatedFileDetails) ? JSON.stringify(updatedFileDetails) : '',
122
- style: cell?.style,
123
- inputType: cell?.inputType
124
- });
125
- setSelectedFiles(prevSelectedFiles => [...prevSelectedFiles.filter(f => f.name !== file.name)]);
126
- }
234
+ setSelectedFiles(updatedFiles.map(file => new File([new Blob()], file.name)));
235
+ toast.success(`file${successCount > 1 ? 's' : ''} uploaded successfully.`);
236
+ }
237
+ if (failureCount > 0) {
238
+ toast.info(`${failureCount} unsupported ${failureCount > 1 ? 'files' : 'file'}. Please check the file formats.`);
239
+ }
240
+ } catch (error) {
241
+ toast.error('Attachment operation failed');
242
+ console.error('Attachment failed:', error);
243
+ }
244
+ } else if (actionType === 'DELETE' && cell && props.attachmentAction?.deleteAttachment) {
245
+ try {
246
+ const parsedValue = JSON.parse(cell.value);
247
+ const updatedFileDetails = [...parsedValue];
248
+ for (const file of selected || []) {
249
+ const index = updatedFileDetails.findIndex(originalFile => originalFile.name === file.name);
250
+ const fileId = updatedFileDetails[index]?.id;
251
+ if (index !== -1 && fileId) {
252
+ const response = await props.attachmentAction?.deleteAttachment(fileId);
253
+ if (response) {
254
+ updatedFileDetails.splice(index, 1);
255
+ handleChange({
256
+ ...cell,
257
+ value: !checkEmpty(updatedFileDetails) ? JSON.stringify(updatedFileDetails) : '',
258
+ style: cell?.style,
259
+ inputType: cell?.inputType
260
+ });
261
+ setSelectedFiles(updatedFileDetails.map(f => new File([new Blob()], f.name)));
127
262
  }
128
263
  }
129
264
  }
130
265
  } catch (error) {
131
266
  toast.error('Attachment operation failed');
132
- console.error('Attachment failed:', error);
267
+ console.error('Delete attachment failed:', error);
133
268
  }
134
269
  }
135
270
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ActiveCell.js","sources":["../../../../../src/components/Excel/ExcelFile/ExcelFileComponents/ActiveCell.tsx"],"sourcesContent":[null],"names":["ActiveCell","props","rootRef","React","useRef","dispatch","useDispatch","setCellData","useCallback","active","data","Actions","activate","point","edit","autoFill","value","commit","changes","view","useSelector","state","mode","cell","Matrix","model","undefined","dimensions","dimensionValue","getCellDimensions","rowDimensions","columnDimensions","top","height","left","width","hidden","useMemo","initialCellRef","prevActiveRef","prevCellRef","handleChange","dropDownValue","setDropDownValue","useState","name","selectOption","setSelectOption","allOption","setAllOption","selectedFiles","setSelectedFiles","handleFilesChange","newFiles","selected","actionType","length","toast","info","attachmentAction","addAttachment","inputType","type","parsedFiles","checkEmpty","JSON","parse","successCount","failureCount","duplicateCount","nonDuplicateFiles","filter","file","isDuplicate","some","existing","split","uploadPromises","map","response","results","Promise","all","forEach","result","push","stringify","style","warning","success","parsedValue","updatedFileDetails","index","findIndex","originalFile","fileId","id","deleteAttachment","splice","prevSelectedFiles","f","error","console","handleClick","e","selectedList","target","innerText","viewAttachment","useEffect","root","current","focus","blob","Blob","File","prev","getAllOption","options","option","disable","label","_jsx","color","children","prevActive","prevCell","coordsChanged","row","column","exitedEditMode","initialCell","nextCell","DataEditor","readOnly","handleMouseDown","contextClick","event","preventDefault","setContextMenu","open","contextOption","_jsxs","ref","className","classnames","onContextMenu","onClick","tabIndex","Select","inputProps","showOptions","toggle","selectedOption","optionsList","showLabel","showBorder","optionZIndex","onChange","AttachmentButton","onFileListClick","onFilesChange","disabled","maxFiles","buttonLabel","buttonVariant","deleteButton","addAttachmentButton","isInfoIconRequired","truncateMaxLimit","exitEditMode","includes","onMouseDown"],"mappings":"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"}
1
+ {"version":3,"file":"ActiveCell.js","sources":["../../../../../src/components/Excel/ExcelFile/ExcelFileComponents/ActiveCell.tsx"],"sourcesContent":[null],"names":["ActiveCell","props","rootRef","React","useRef","dispatch","useDispatch","setCellData","useCallback","active","data","Actions","activate","point","edit","autoFill","value","commit","changes","view","useSelector","state","mode","cell","Matrix","model","undefined","dimensions","dimensionValue","getCellDimensions","rowDimensions","columnDimensions","top","height","left","width","hidden","useMemo","initialCellRef","prevActiveRef","prevCellRef","handleChange","dropDownValue","setDropDownValue","useState","name","selectOption","setSelectOption","allOption","setAllOption","selectedFiles","setSelectedFiles","handleFilesChange","newFiles","selected","actionType","length","toast","info","attachmentAction","addAttachment","inputType","type","parsedFiles","checkEmpty","JSON","parse","successCount","failureCount","duplicateCount","nonDuplicateFiles","filter","file","isDuplicate","some","existing","split","warning","uploadPromises","map","response","parsedResponse","Array","isArray","id","result","Error","parseError","error","results","Promise","all","successfulUploads","forEach","push","console","updatedFiles","stringify","style","File","Blob","success","deleteAttachment","parsedValue","updatedFileDetails","index","findIndex","originalFile","fileId","splice","f","handleClick","e","selectedList","target","innerText","viewAttachment","useEffect","root","current","focus","blob","prev","getAllOption","options","option","disable","label","_jsx","color","children","prevActive","prevCell","coordsChanged","row","column","exitedEditMode","initialCell","nextCell","DataEditor","readOnly","handleMouseDown","contextClick","event","preventDefault","setContextMenu","open","contextOption","_jsxs","ref","className","classnames","onContextMenu","onClick","tabIndex","Select","inputProps","showOptions","toggle","selectedOption","optionsList","showLabel","showBorder","optionZIndex","onChange","AttachmentButton","onFileListClick","onFilesChange","disabled","maxFiles","buttonLabel","buttonVariant","deleteButton","addAttachmentButton","isInfoIconRequired","truncateMaxLimit","exitEditMode","includes","onMouseDown"],"mappings":"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"}
package/lib/index.cjs CHANGED
@@ -40439,81 +40439,216 @@ const ActiveCell = props => {
40439
40439
  const [selectOption, setSelectOption] = React__namespace.useState(false);
40440
40440
  const [allOption, setAllOption] = React__namespace.useState();
40441
40441
  const [selectedFiles, setSelectedFiles] = React__namespace.useState([]);
40442
+ // const handleFilesChange = async (
40443
+ // newFiles: File[],
40444
+ // selected?: File[],
40445
+ // actionType?: string
40446
+ // ) => {
40447
+ // if (newFiles.length > 5) {
40448
+ // toast.info('Cannot upload more than 5 files.');
40449
+ // return;
40450
+ // }
40451
+ // if (props.attachmentAction?.addAttachment && selected) {
40452
+ // try {
40453
+ // if (actionType === 'ADD' && cell?.inputType?.type === 'file') {
40454
+ // const parsedFiles: File[] = !checkEmpty(cell.value)
40455
+ // ? JSON.parse(cell.value)
40456
+ // : [];
40457
+ // let successCount = 0;
40458
+ // let failureCount = 0;
40459
+ // let duplicateCount = 0;
40460
+ // const nonDuplicateFiles = selected?.filter((file) => {
40461
+ // const isDuplicate = parsedFiles?.some(
40462
+ // (existing) => existing?.name.split('*')[0] === file?.name
40463
+ // );
40464
+ // if (isDuplicate) {
40465
+ // duplicateCount++;
40466
+ // }
40467
+ // return !isDuplicate;
40468
+ // });
40469
+ // const uploadPromises = nonDuplicateFiles?.map(async (file) => {
40470
+ // const response = await props.attachmentAction?.addAttachment(file);
40471
+ // if (!checkEmpty(response)) {
40472
+ // return JSON.parse(response ?? '');
40473
+ // }
40474
+ // });
40475
+ // const results = await Promise.all(uploadPromises);
40476
+ // results.forEach((result) => {
40477
+ // if (result) {
40478
+ // parsedFiles.push(result);
40479
+ // successCount++;
40480
+ // } else {
40481
+ // failureCount++;
40482
+ // }
40483
+ // });
40484
+ // // Update cell value with all successful uploads
40485
+ // handleChange({
40486
+ // ...cell,
40487
+ // value: JSON.stringify(parsedFiles),
40488
+ // style: cell?.style,
40489
+ // inputType: cell?.inputType,
40490
+ // });
40491
+ // setSelectedFiles(parsedFiles);
40492
+ // if (duplicateCount > 0) {
40493
+ // toast.warning(`Duplicate attachments not allowed within the same row`);
40494
+ // } else if (successCount > 0 && failureCount === 0) {
40495
+ // toast.success(
40496
+ // `file${successCount > 1 ? 's' : ''} uploaded successfully.`
40497
+ // );
40498
+ // } else if (failureCount > 0) {
40499
+ // toast.info(
40500
+ // `${failureCount} unsupported ${failureCount > 1 ? 'files' : 'file'}. Please check the file formats.`
40501
+ // );
40502
+ // }
40503
+ // } else if (actionType === 'DELETE') {
40504
+ // const parsedValue = cell && JSON.parse(cell.value);
40505
+ // const updatedFileDetails = [...parsedValue];
40506
+ // for (const file of selected) {
40507
+ // const index = updatedFileDetails.findIndex(
40508
+ // (originalFile: Types.AttachmentApi) => {
40509
+ // return originalFile.name === file.name;
40510
+ // }
40511
+ // );
40512
+ // const fileId = updatedFileDetails[index].id;
40513
+ // if (index !== -1 && fileId) {
40514
+ // const response = await props.attachmentAction?.deleteAttachment(fileId);
40515
+ // if (response) {
40516
+ // updatedFileDetails.splice(index, 1);
40517
+ // handleChange({
40518
+ // ...cell,
40519
+ // value: !checkEmpty(updatedFileDetails)
40520
+ // ? JSON.stringify(updatedFileDetails)
40521
+ // : '',
40522
+ // style: cell?.style,
40523
+ // inputType: cell?.inputType,
40524
+ // });
40525
+ // setSelectedFiles((prevSelectedFiles) => [
40526
+ // ...prevSelectedFiles.filter((f) => f.name !== file.name),
40527
+ // ]);
40528
+ // }
40529
+ // }
40530
+ // }
40531
+ // }
40532
+ // } catch (error) {
40533
+ // toast.error('Attachment operation failed');
40534
+ // console.error('Attachment failed:', error);
40535
+ // }
40536
+ // }
40537
+ // };
40442
40538
  const handleFilesChange = async (newFiles, selected, actionType) => {
40443
40539
  if (newFiles.length > 5) {
40444
40540
  toast.info('Cannot upload more than 5 files.');
40445
40541
  return;
40446
40542
  }
40447
- if (props.attachmentAction?.addAttachment && selected) {
40543
+ if (props.attachmentAction?.addAttachment && selected && actionType === 'ADD' && cell?.inputType?.type === 'file') {
40448
40544
  try {
40449
- if (actionType === 'ADD' && cell?.inputType?.type === 'file') {
40450
- const parsedFiles = !checkEmpty(cell.value) ? JSON.parse(cell.value) : [];
40451
- let successCount = 0;
40452
- let failureCount = 0;
40453
- let duplicateCount = 0;
40454
- const nonDuplicateFiles = selected?.filter(file => {
40455
- const isDuplicate = parsedFiles?.some(existing => existing?.name.split('*')[0] === file?.name);
40456
- if (isDuplicate) {
40457
- duplicateCount++;
40458
- }
40459
- return !isDuplicate;
40460
- });
40461
- const uploadPromises = nonDuplicateFiles?.map(async file => {
40545
+ const parsedFiles = !checkEmpty(cell.value) ? JSON.parse(cell.value) : [];
40546
+ let successCount = 0;
40547
+ let failureCount = 0;
40548
+ let duplicateCount = 0;
40549
+ // Filter out duplicate files
40550
+ const nonDuplicateFiles = selected.filter(file => {
40551
+ const isDuplicate = parsedFiles.some(existing => existing?.name.split('*')[0] === file?.name);
40552
+ if (isDuplicate) {
40553
+ duplicateCount++;
40554
+ }
40555
+ return !isDuplicate;
40556
+ });
40557
+ if (duplicateCount > 0) {
40558
+ toast.warning(`Duplicate attachments not allowed within the same row`);
40559
+ }
40560
+ if (nonDuplicateFiles.length === 0) {
40561
+ return; // No files to upload after filtering duplicates
40562
+ }
40563
+ // Upload non-duplicate files
40564
+ const uploadPromises = nonDuplicateFiles.map(async file => {
40565
+ try {
40462
40566
  const response = await props.attachmentAction?.addAttachment(file);
40567
+ // Check if response is non-empty
40463
40568
  if (!checkEmpty(response)) {
40464
- return JSON.parse(response ?? '');
40465
- }
40466
- });
40467
- const results = await Promise.all(uploadPromises);
40468
- results.forEach(result => {
40469
- if (result) {
40470
- parsedFiles.push(result);
40471
- successCount++;
40569
+ try {
40570
+ const parsedResponse = JSON.parse(response ?? '[]');
40571
+ // Expecting an array with at least one file object
40572
+ if (Array.isArray(parsedResponse) && parsedResponse.length > 0 && parsedResponse[0].id && parsedResponse[0].name) {
40573
+ return {
40574
+ file,
40575
+ result: parsedResponse[0]
40576
+ }; // Use the first file object
40577
+ } else {
40578
+ throw new Error('Invalid response structure');
40579
+ }
40580
+ } catch (parseError) {
40581
+ throw parseError;
40582
+ }
40472
40583
  } else {
40473
- failureCount++;
40584
+ throw new Error('Empty response from server');
40474
40585
  }
40475
- });
40476
- // Update cell value with all successful uploads
40586
+ } catch (error) {
40587
+ return {
40588
+ file,
40589
+ error
40590
+ }; // Capture errors for individual files
40591
+ }
40592
+ });
40593
+ const results = await Promise.all(uploadPromises);
40594
+ // Process results
40595
+ const successfulUploads = [];
40596
+ results.forEach(({
40597
+ file,
40598
+ result,
40599
+ error
40600
+ }) => {
40601
+ if (result && !error) {
40602
+ successfulUploads.push(result);
40603
+ successCount++;
40604
+ } else {
40605
+ failureCount++;
40606
+ console.error(`Failed to upload file ${file?.name}:`, error);
40607
+ }
40608
+ });
40609
+ // Update cell value with successful uploads
40610
+ if (successCount > 0) {
40611
+ const updatedFiles = [...parsedFiles, ...successfulUploads];
40477
40612
  handleChange({
40478
40613
  ...cell,
40479
- value: JSON.stringify(parsedFiles),
40614
+ value: JSON.stringify(updatedFiles),
40480
40615
  style: cell?.style,
40481
40616
  inputType: cell?.inputType
40482
40617
  });
40483
- setSelectedFiles(parsedFiles);
40484
- if (duplicateCount > 0) {
40485
- toast.warning(`Duplicate attachments not allowed within the same row`);
40486
- } else if (successCount > 0 && failureCount === 0) {
40487
- toast.success(`file${successCount > 1 ? 's' : ''} uploaded successfully.`);
40488
- } else if (failureCount > 0) {
40489
- toast.info(`${failureCount} unsupported ${failureCount > 1 ? 'files' : 'file'}. Please check the file formats.`);
40490
- }
40491
- } else if (actionType === 'DELETE') {
40492
- const parsedValue = cell && JSON.parse(cell.value);
40493
- const updatedFileDetails = [...parsedValue];
40494
- for (const file of selected) {
40495
- const index = updatedFileDetails.findIndex(originalFile => {
40496
- return originalFile.name === file.name;
40497
- });
40498
- const fileId = updatedFileDetails[index].id;
40499
- if (index !== -1 && fileId) {
40500
- const response = await props.attachmentAction?.deleteAttachment(fileId);
40501
- if (response) {
40502
- updatedFileDetails.splice(index, 1);
40503
- handleChange({
40504
- ...cell,
40505
- value: !checkEmpty(updatedFileDetails) ? JSON.stringify(updatedFileDetails) : '',
40506
- style: cell?.style,
40507
- inputType: cell?.inputType
40508
- });
40509
- setSelectedFiles(prevSelectedFiles => [...prevSelectedFiles.filter(f => f.name !== file.name)]);
40510
- }
40618
+ setSelectedFiles(updatedFiles.map(file => new File([new Blob()], file.name)));
40619
+ toast.success(`file${successCount > 1 ? 's' : ''} uploaded successfully.`);
40620
+ }
40621
+ if (failureCount > 0) {
40622
+ toast.info(`${failureCount} unsupported ${failureCount > 1 ? 'files' : 'file'}. Please check the file formats.`);
40623
+ }
40624
+ } catch (error) {
40625
+ toast.error('Attachment operation failed');
40626
+ console.error('Attachment failed:', error);
40627
+ }
40628
+ } else if (actionType === 'DELETE' && cell && props.attachmentAction?.deleteAttachment) {
40629
+ try {
40630
+ const parsedValue = JSON.parse(cell.value);
40631
+ const updatedFileDetails = [...parsedValue];
40632
+ for (const file of selected || []) {
40633
+ const index = updatedFileDetails.findIndex(originalFile => originalFile.name === file.name);
40634
+ const fileId = updatedFileDetails[index]?.id;
40635
+ if (index !== -1 && fileId) {
40636
+ const response = await props.attachmentAction?.deleteAttachment(fileId);
40637
+ if (response) {
40638
+ updatedFileDetails.splice(index, 1);
40639
+ handleChange({
40640
+ ...cell,
40641
+ value: !checkEmpty(updatedFileDetails) ? JSON.stringify(updatedFileDetails) : '',
40642
+ style: cell?.style,
40643
+ inputType: cell?.inputType
40644
+ });
40645
+ setSelectedFiles(updatedFileDetails.map(f => new File([new Blob()], f.name)));
40511
40646
  }
40512
40647
  }
40513
40648
  }
40514
40649
  } catch (error) {
40515
40650
  toast.error('Attachment operation failed');
40516
- console.error('Attachment failed:', error);
40651
+ console.error('Delete attachment failed:', error);
40517
40652
  }
40518
40653
  }
40519
40654
  };