From fef2c5997fcc4a5ea218c05a23cb2e92982b91ea Mon Sep 17 00:00:00 2001 From: Paul Date: Sun, 12 Dec 2021 15:47:15 +0000 Subject: [PATCH] chore(mobx): write jsdoc for auth / mqueue --- src/mobx/stores/Auth.ts | 9 +++++++-- src/mobx/stores/MessageQueue.ts | 24 ++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/mobx/stores/Auth.ts b/src/mobx/stores/Auth.ts index 042484bc..da989274 100644 --- a/src/mobx/stores/Auth.ts +++ b/src/mobx/stores/Auth.ts @@ -2,8 +2,6 @@ import { action, computed, makeAutoObservable, ObservableMap } from "mobx"; import { Session } from "revolt-api/types/Auth"; import { Nullable } from "revolt.js/dist/util/null"; -import { mapToRecord } from "../../lib/conversion"; - import Persistent from "../interfaces/Persistent"; import Store from "../interfaces/Store"; @@ -85,10 +83,17 @@ export default class Auth implements Store, Persistent { this.sessions.delete(user_id); } + /** + * Remove current session. + */ @action logout() { this.current && this.removeSession(this.current); } + /** + * Get current session. + * @returns Current session + */ @computed getSession() { if (!this.current) return; return this.sessions.get(this.current)!.session; diff --git a/src/mobx/stores/MessageQueue.ts b/src/mobx/stores/MessageQueue.ts index c1505435..953427ed 100644 --- a/src/mobx/stores/MessageQueue.ts +++ b/src/mobx/stores/MessageQueue.ts @@ -53,6 +53,12 @@ export default class MessageQueue implements Store { return "queue"; } + /** + * Add a message to the queue. + * @param id Nonce value + * @param channel Channel ID + * @param data Message data + */ @action add(id: string, channel: string, data: QueuedMessageData) { this.messages.push({ id, @@ -62,22 +68,40 @@ export default class MessageQueue implements Store { }); } + /** + * Fail a queued message. + * @param id Nonce value + * @param error Error string + */ @action fail(id: string, error: string) { const entry = this.messages.find((x) => x.id === id)!; entry.status = QueueStatus.ERRORED; entry.error = error; } + /** + * Mark a queued message as sending. + * @param id Nonce value + */ @action start(id: string) { const entry = this.messages.find((x) => x.id === id)!; entry.status = QueueStatus.SENDING; } + /** + * Remove a queued message. + * @param id Nonce value + */ @action remove(id: string) { const entry = this.messages.find((x) => x.id === id)!; this.messages.remove(entry); } + /** + * Get all queued messages for a channel. + * @param channel Channel ID + * @returns Array of queued messages + */ @computed get(channel: string) { return this.messages.filter((x) => x.channel === channel); }