in packages/chat-stateful-client/src/ChatContext.ts [107:128]
public removeResourceFromCache(threadId: string, messageId: string, resourceUrl: string): void {
this.modifyState((draft: ChatClientState) => {
const message = draft.threads[threadId]?.chatMessages[messageId];
if (message && this._fullsizeImageQueue && this._fullsizeImageQueue.containsMessageWithSameAttachments(message)) {
this._fullsizeImageQueue?.cancelRequest(resourceUrl);
} else if (
message &&
this._inlineImageQueue &&
this._inlineImageQueue.containsMessageWithSameAttachments(message)
) {
this._inlineImageQueue?.cancelRequest(resourceUrl);
}
if (message && message.resourceCache && message.resourceCache[resourceUrl]) {
const resource = message.resourceCache[resourceUrl];
if (resource?.sourceUrl) {
URL.revokeObjectURL(resource.sourceUrl);
}
delete message.resourceCache[resourceUrl];
}
});
}