public removeResourceFromCache()

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];
      }
    });
  }