From 58ebd3bc0f00c532e97e9a5571471ffab87934ba Mon Sep 17 00:00:00 2001 From: AL-LCL Date: Fri, 19 May 2023 10:39:49 +0200 Subject: GOD-VIEW --- server/web/src/redux/actions.ts | 55 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 server/web/src/redux/actions.ts (limited to 'server/web/src/redux/actions.ts') diff --git a/server/web/src/redux/actions.ts b/server/web/src/redux/actions.ts new file mode 100644 index 0000000..887b808 --- /dev/null +++ b/server/web/src/redux/actions.ts @@ -0,0 +1,55 @@ +import { IActivity } from '../interfaces/Activity.interface'; +import { IClient } from '../interfaces/Client.interface'; + +export type ClientsLoadType = { type: 'CLIENTS_LOAD'; payload: Map; }; +export type SessionLoadType = { type: 'SESSION_LOAD'; payload: Set; }; +export type SessionAllType = { type: 'SESSION_ALL'; }; +export type SessionCloseType = { type: 'SESSION_CLOSE'; }; +export type SessionAddType = { type: 'SESSION_ADD'; payload: string; }; +export type SessionRemoveType = { type: 'SESSION_REMOVE'; payload: string; }; +export type ClientAddType = { type: 'CLIENT_ADD'; payload: { unique_id: string, client: IClient; }; }; +export type ClientRemoveType = { type: 'CLIENT_REMOVE'; payload: string; }; +export type ActivityUpdateType = { type: 'ACTIVITY_UPDATE'; payload: IActivity; }; + +export const clientsLoad = (clients: Map): ClientsLoadType => ({ + type: 'CLIENTS_LOAD', + payload: clients +}); + +export const sessionLoad = (session: Set): SessionLoadType => ({ + type: 'SESSION_LOAD', + payload: session +}); + +export const sessionAll = (): SessionAllType => ({ + type: 'SESSION_ALL' +}); + +export const sessionClose = (): SessionCloseType => ({ + type: 'SESSION_CLOSE' +}); + +export const sessionAdd = (unique_id: string): SessionAddType => ({ + type: 'SESSION_ADD', + payload: unique_id +}); + +export const sessionRemove = (unique_id: string): SessionRemoveType => ({ + type: 'SESSION_REMOVE', + payload: unique_id +}); + +export const clientAdd = (unique_id: string, client: IClient): ClientAddType => ({ + type: 'CLIENT_ADD', + payload: { unique_id, client } +}); + +export const clientRemove = (unique_id: string): ClientRemoveType => ({ + type: 'CLIENT_REMOVE', + payload: unique_id +}); + +export const activityUpdate = (activity: IActivity): ActivityUpdateType => ({ + type: 'ACTIVITY_UPDATE', + payload: activity +}); -- cgit v1.2.3