@makolabs/ripple 0.0.5 → 0.0.7
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.
|
@@ -118,6 +118,7 @@
|
|
|
118
118
|
const fileItem = files.find((f) => f.key === fileKey);
|
|
119
119
|
if (fileItem && !selected.some((s) => s.key === fileKey)) {
|
|
120
120
|
selected = [...selected, fileItem];
|
|
121
|
+
console.log('selected [SETTIMEOUT, FILEITEM]', selected);
|
|
121
122
|
}
|
|
122
123
|
}
|
|
123
124
|
}, 100);
|
|
@@ -192,7 +193,6 @@
|
|
|
192
193
|
// Retain selected files that are still valid
|
|
193
194
|
// We need to filter out any folder paths that might no longer exist
|
|
194
195
|
selectedFiles = previousSelectedFiles;
|
|
195
|
-
debugger;
|
|
196
196
|
fileQueue = previousFileQueue;
|
|
197
197
|
} catch (err) {
|
|
198
198
|
console.error('Error fetching files:', err);
|
|
@@ -250,8 +250,8 @@
|
|
|
250
250
|
// Update selection
|
|
251
251
|
if (filesToSelect.length > 0) {
|
|
252
252
|
selectedFiles = filesToSelect;
|
|
253
|
-
debugger;
|
|
254
253
|
selected = displayFiles.filter((file) => filesToSelect.includes(file.key));
|
|
254
|
+
console.log('selected [NAVIGATETOFOLDER]', selected);
|
|
255
255
|
}
|
|
256
256
|
|
|
257
257
|
// Restore fileQueue to ensure we keep track of all selected files
|
|
@@ -280,15 +280,20 @@
|
|
|
280
280
|
|
|
281
281
|
// Toggle selection for files
|
|
282
282
|
const isCurrentlySelected = selectedFiles.includes(file.key);
|
|
283
|
-
|
|
283
|
+
console.log('isCurrentlySelected [HANDLEROWCLICK]', isCurrentlySelected);
|
|
284
|
+
console.log('selectedFiles [HANDLEROWCLICK]', selectedFiles);
|
|
285
|
+
console.log('selected [HANDLEROWCLICK]', selected);
|
|
286
|
+
|
|
284
287
|
if (isCurrentlySelected) {
|
|
285
288
|
// Remove from selection
|
|
286
289
|
selectedFiles = selectedFiles.filter(key => key !== file.key);
|
|
287
290
|
selected = selected.filter(item => item.key !== file.key);
|
|
291
|
+
console.log('selected [HANDLEROWCLICK, REMOVE]', selected);
|
|
288
292
|
} else {
|
|
289
293
|
// Add to selection
|
|
290
294
|
selectedFiles = [...selectedFiles, file.key];
|
|
291
295
|
selected = [...selected, file];
|
|
296
|
+
console.log('selected [HANDLEROWCLICK, ADD]', selected);
|
|
292
297
|
}
|
|
293
298
|
}
|
|
294
299
|
}
|
|
@@ -381,22 +386,22 @@
|
|
|
381
386
|
}
|
|
382
387
|
|
|
383
388
|
// Effect to update the Table component's selection state when selectedFiles changes
|
|
384
|
-
$effect(() => {
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
});
|
|
389
|
+
// $effect(() => {
|
|
390
|
+
// if (displayFiles.length === 0) return;
|
|
391
|
+
|
|
392
|
+
// // Get all files that should be selected based on our current selection state
|
|
393
|
+
// const filesToSelect = displayFiles.filter((file) => isRowSelected(file));
|
|
394
|
+
|
|
395
|
+
// // We need to update the Table's internal selection state without triggering additional updates
|
|
396
|
+
// // This ensures the UI is properly updated
|
|
397
|
+
// if (
|
|
398
|
+
// JSON.stringify(selected.map((f) => f.key).sort()) !==
|
|
399
|
+
// JSON.stringify(filesToSelect.map((f) => f.key).sort())
|
|
400
|
+
// ) {
|
|
401
|
+
// // Only update if the selection has actually changed
|
|
402
|
+
// selected = filesToSelect;
|
|
403
|
+
// }
|
|
404
|
+
// });
|
|
400
405
|
|
|
401
406
|
// Track the selected items for the Table component's internal state
|
|
402
407
|
let selected = $state<FileItem[]>([]);
|