| 51 | } |
| 52 | |
| 53 | function invalidateFolderStats(folders, sourceId = '') { |
| 54 | try { |
| 55 | const list = Array.isArray(folders) ? folders : [folders]; |
| 56 | window.dispatchEvent( |
| 57 | new CustomEvent('folderStatsInvalidated', { |
| 58 | detail: { folders: list, sourceId } |
| 59 | }) |
| 60 | ); |
| 61 | } catch (e) { |
| 62 | // best-effort only; never break the move on this |
| 63 | console.warn('folderStatsInvalidated failed', e); |
| 64 | } |
| 65 | } |
| 66 | function scheduleBlankFolderIconRepair() { |
| 67 | try { |
| 68 | const kick = () => { try { repairBlankFolderIcons({ force: true }); } catch (e) {} }; |