(row, index = 0)
| 416 | } |
| 417 | |
| 418 | function getRowFingerprint(row, index = 0) { |
| 419 | const marker = row.querySelector('[data-thread-id], [data-legacy-thread-id], [data-legacy-last-message-id]'); |
| 420 | const stableId = row.getAttribute('data-thread-id') |
| 421 | || row.getAttribute('data-legacy-thread-id') |
| 422 | || row.getAttribute('data-legacy-last-message-id') |
| 423 | || marker?.getAttribute?.('data-thread-id') |
| 424 | || marker?.getAttribute?.('data-legacy-thread-id') |
| 425 | || marker?.getAttribute?.('data-legacy-last-message-id') |
| 426 | || row.getAttribute('id') |
| 427 | || `row-${index}`; |
| 428 | const preview = getRowPreviewText(row); |
| 429 | return `${stableId}::${preview.subject}::${preview.timeText}`.slice(0, 300); |
| 430 | } |
| 431 | |
| 432 | function getCurrentMailIds(rows = []) { |
| 433 | const ids = new Set(); |
no test coverage detected