deleteDraft method

void deleteDraft(
  1. Draft draft
)

Deletes the draft from the state if it exists.

Implementation

void deleteDraft(Draft draft) async {
  // Delete the draft from the persistence client.
  await _client.chatPersistenceClient?.deleteDraftMessageByCid(
    draft.channelCid,
    parentId: draft.parentId,
  );

  if (draft.parentId case final parentId?) {
    for (final message in messages) {
      if (message.id == parentId) {
        return updateMessage(
          message.copyWith(draft: null),
        );
      }
    }
  }

  updateChannelState(
    channelState.copyWith(
      draft: null,
    ),
  );
}