Merge pull request #67 from wagesj45/codex/add-new-message-type-for-details-fetching
Add active message retrieval fallback
This commit is contained in:
commit
11cc89dbc1
2 changed files with 25 additions and 1 deletions
|
@ -411,6 +411,19 @@ async function clearCacheForMessages(idsInput) {
|
|||
// rethrow so the caller sees the failure
|
||||
throw err;
|
||||
}
|
||||
} else if (msg?.type === "sortana:getActiveMessage") {
|
||||
try {
|
||||
const displayed = await browser.messageDisplay.getDisplayedMessages();
|
||||
let id = displayed[0]?.id;
|
||||
if (!id) {
|
||||
const selected = await browser.mailTabs.getSelectedMessages();
|
||||
id = selected?.messages?.[0]?.id;
|
||||
}
|
||||
return { id: id ?? null };
|
||||
} catch (e) {
|
||||
logger.aiLog("failed to get active message", { level: 'error' }, e);
|
||||
return { id: null };
|
||||
}
|
||||
} else if (msg?.type === "sortana:clearCacheForDisplayed") {
|
||||
try {
|
||||
const msgs = await browser.messageDisplay.getDisplayedMessages();
|
||||
|
|
13
details.js
13
details.js
|
@ -20,9 +20,20 @@ document.addEventListener('DOMContentLoaded', async () => {
|
|||
logger.aiLog('message id from selected messages', { debug: true }, id);
|
||||
}
|
||||
} catch (e) {
|
||||
logger.aiLog('failed to determine message id', { level: 'error' }, e);
|
||||
logger.aiLog('failed to determine message id locally', { level: 'error' }, e);
|
||||
}
|
||||
}
|
||||
|
||||
if (!id) {
|
||||
try {
|
||||
const resp = await browser.runtime.sendMessage({ type: 'sortana:getActiveMessage' });
|
||||
id = resp?.id;
|
||||
logger.aiLog('message id from background', { debug: true }, id);
|
||||
} catch (e) {
|
||||
logger.aiLog('failed to get message id from background', { level: 'error' }, e);
|
||||
}
|
||||
}
|
||||
|
||||
if (!id) return;
|
||||
try {
|
||||
logger.aiLog('requesting message details', {}, id);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue