/ src / api / discussion-remote-mutate-draft.ts
discussion-remote-mutate-draft.ts
 1  import { Discussion, DiscussionCommand, type DiscussionDraftMessage, type SessionHandle } from "~/models";
 2  import { discussionPostCommand } from "./private/discussion-post-command";
 3  import { discussions } from "./discussions";
 4  import { discussionMessages } from "./discussion-messages";
 5  
 6  /**
 7   * Send local changes to the object
 8   * to the server.
 9   */
10  export const discussionRemoteMutateDraft = async (session: SessionHandle, discussion: Discussion, draft: DiscussionDraftMessage): Promise<void> => {
11    await discussionPostCommand(session, DiscussionCommand.brouillon, {
12      id: draft.possessionID,
13      content: draft.content,
14      replyMessageID: draft.replyMessageID
15    });
16  
17    await discussions(session, discussion.cache);
18    await discussionMessages(session, discussion);
19  };