mirror of
https://github.com/colanode/colanode.git
synced 2025-12-29 00:25:03 +01:00
Move mutation and query handlers
This commit is contained in:
@@ -1,87 +0,0 @@
|
||||
import { MutationMap } from '@/shared/mutations';
|
||||
import { MutationHandler } from '@/main/types';
|
||||
import { EmailLoginMutationHandler } from '@/main/handlers/mutations/email-login';
|
||||
import { EmailRegisterMutationHandler } from '@/main/handlers/mutations/email-register';
|
||||
import { ViewCreateMutationHandler } from '@/main/handlers/mutations/view-create';
|
||||
import { ChannelCreateMutationHandler } from '@/main/handlers/mutations/channel-create';
|
||||
import { ChatCreateMutationHandler } from '@/main/handlers/mutations/chat-create';
|
||||
import { DatabaseCreateMutationHandler } from '@/main/handlers/mutations/database-create';
|
||||
import { FieldCreateMutationHandler } from '@/main/handlers/mutations/field-create';
|
||||
import { MessageCreateMutationHandler } from '@/main/handlers/mutations/message-create';
|
||||
import { NodeAttributeDeleteMutationHandler } from '@/main/handlers/mutations/node-attribute-delete';
|
||||
import { NodeAttributeSetMutationHandler } from '@/main/handlers/mutations/node-attribute-set';
|
||||
import { NodeCollaboratorCreateMutationHandler } from '@/main/handlers/mutations/node-collaborator-create';
|
||||
import { NodeCollaboratorDeleteMutationHandler } from '@/main/handlers/mutations/node-collaborator-delete';
|
||||
import { NodeCollaboratorUpdateMutationHandler } from '@/main/handlers/mutations/node-collaborator-update';
|
||||
import { NodeDeleteMutationHandler } from '@/main/handlers/mutations/node-delete';
|
||||
import { PageCreateMutationHandler } from '@/main/handlers/mutations/page-create';
|
||||
import { NodeReactionCreateMutationHandler } from '@/main/handlers/mutations/node-reaction-create';
|
||||
import { NodeReactionDeleteMutationHandler } from '@/main/handlers/mutations/node-reaction-delete';
|
||||
import { RecordCreateMutationHandler } from '@/main/handlers/mutations/record-create';
|
||||
import { SelectOptionCreateMutationHandler } from '@/main/handlers/mutations/select-option-create';
|
||||
import { ServerCreateMutationHandler } from '@/main/handlers/mutations/server-create';
|
||||
import { SpaceCreateMutationHandler } from '@/main/handlers/mutations/space-create';
|
||||
import { WorkspaceUserRoleUpdateMutationHandler } from '@/main/handlers/mutations/workspace-user-role-update';
|
||||
import { WorkspaceUsersInviteMutationHandler } from '@/main/handlers/mutations/workspace-users-invite';
|
||||
import { WorkspaceCreateMutationHandler } from '@/main/handlers/mutations/workspace-create';
|
||||
import { WorkspaceUpdateMutationHandler } from '@/main/handlers/mutations/workspace-update';
|
||||
import { DocumentSaveMutationHandler } from '@/main/handlers/mutations/document-save';
|
||||
import { AvatarUploadMutationHandler } from '@/main/handlers/mutations/avatar-upload';
|
||||
import { AccountLogoutMutationHandler } from '@/main/handlers/mutations/account-logout';
|
||||
import { ServerNodeSyncMutationHandler } from '@/main/handlers/mutations/server-node-sync';
|
||||
import { ServerNodeDeleteMutationHandler } from '@/main/handlers/mutations/server-node-delete';
|
||||
import { FolderCreateMutationHandler } from '@/main/handlers/mutations/folder-create';
|
||||
import { FileCreateMutationHandler } from '@/main/handlers/mutations/file-create';
|
||||
import { FileDownloadMutationHandler } from '@/main/handlers/mutations/file-download';
|
||||
import { SpaceUpdateMutationHandler } from '@/main/handlers/mutations/space-update';
|
||||
import { AccountUpdateMutationHandler } from '@/main/handlers/mutations/account-update';
|
||||
import { ServerUserNodeSyncMutationHandler } from '@/main/handlers/mutations/server-user-node-sync';
|
||||
import { MarkNodeAsSeenMutationHandler } from '@/main/handlers/mutations/mark-node-as-seen';
|
||||
import { ViewUpdateMutationHandler } from '@/main/handlers/mutations/view-update';
|
||||
import { ViewDeleteMutationHandler } from '@/main/handlers/mutations/view-delete';
|
||||
|
||||
type MutationHandlerMap = {
|
||||
[K in keyof MutationMap]: MutationHandler<MutationMap[K]['input']>;
|
||||
};
|
||||
|
||||
export const mutationHandlerMap: MutationHandlerMap = {
|
||||
email_login: new EmailLoginMutationHandler(),
|
||||
email_register: new EmailRegisterMutationHandler(),
|
||||
view_create: new ViewCreateMutationHandler(),
|
||||
channel_create: new ChannelCreateMutationHandler(),
|
||||
chat_create: new ChatCreateMutationHandler(),
|
||||
database_create: new DatabaseCreateMutationHandler(),
|
||||
field_create: new FieldCreateMutationHandler(),
|
||||
message_create: new MessageCreateMutationHandler(),
|
||||
node_attribute_delete: new NodeAttributeDeleteMutationHandler(),
|
||||
node_attribute_set: new NodeAttributeSetMutationHandler(),
|
||||
node_collaborator_create: new NodeCollaboratorCreateMutationHandler(),
|
||||
node_collaborator_delete: new NodeCollaboratorDeleteMutationHandler(),
|
||||
node_collaborator_update: new NodeCollaboratorUpdateMutationHandler(),
|
||||
node_delete: new NodeDeleteMutationHandler(),
|
||||
page_create: new PageCreateMutationHandler(),
|
||||
node_reaction_create: new NodeReactionCreateMutationHandler(),
|
||||
node_reaction_delete: new NodeReactionDeleteMutationHandler(),
|
||||
record_create: new RecordCreateMutationHandler(),
|
||||
select_option_create: new SelectOptionCreateMutationHandler(),
|
||||
server_create: new ServerCreateMutationHandler(),
|
||||
space_create: new SpaceCreateMutationHandler(),
|
||||
workspace_user_role_update: new WorkspaceUserRoleUpdateMutationHandler(),
|
||||
workspace_users_invite: new WorkspaceUsersInviteMutationHandler(),
|
||||
workspace_create: new WorkspaceCreateMutationHandler(),
|
||||
workspace_update: new WorkspaceUpdateMutationHandler(),
|
||||
document_save: new DocumentSaveMutationHandler(),
|
||||
avatar_upload: new AvatarUploadMutationHandler(),
|
||||
account_logout: new AccountLogoutMutationHandler(),
|
||||
server_node_sync: new ServerNodeSyncMutationHandler(),
|
||||
server_node_delete: new ServerNodeDeleteMutationHandler(),
|
||||
folder_create: new FolderCreateMutationHandler(),
|
||||
file_create: new FileCreateMutationHandler(),
|
||||
file_download: new FileDownloadMutationHandler(),
|
||||
space_update: new SpaceUpdateMutationHandler(),
|
||||
account_update: new AccountUpdateMutationHandler(),
|
||||
server_user_node_sync: new ServerUserNodeSyncMutationHandler(),
|
||||
mark_node_as_seen: new MarkNodeAsSeenMutationHandler(),
|
||||
view_update: new ViewUpdateMutationHandler(),
|
||||
view_delete: new ViewDeleteMutationHandler(),
|
||||
};
|
||||
@@ -1,37 +0,0 @@
|
||||
import { QueryMap } from '@/shared/queries';
|
||||
import { QueryHandler } from '@/main/types';
|
||||
import { AccountListQueryHandler } from '@/main/handlers/queries/accounts-list';
|
||||
import { MessageListQueryHandler } from '@/main/handlers/queries/message-list';
|
||||
import { NodeGetQueryHandler } from '@/main/handlers/queries/node-get';
|
||||
import { ServerListQueryHandler } from '@/main/handlers/queries/server-list';
|
||||
import { UserSearchQueryHandler } from '@/main/handlers/queries/user-search';
|
||||
import { WorkspaceListQueryHandler } from '@/main/handlers/queries/workspace-list';
|
||||
import { WorkspaceUserListQueryHandler } from '@/main/handlers/queries/workspace-user-list';
|
||||
import { RecordListQueryHandler } from '@/main/handlers/queries/record-list';
|
||||
import { FileListQueryHandler } from '@/main/handlers/queries/file-list';
|
||||
import { EmojisGetQueryHandler } from '@/main/handlers/queries/emojis-get';
|
||||
import { IconsGetQueryHandler } from '@/main/handlers/queries/icons-get';
|
||||
import { NodeTreeGetQueryHandler } from '@/main/handlers/queries/node-tree-get';
|
||||
import { NodeChildrenGetQueryHandler } from '@/main/handlers/queries/node-children-get';
|
||||
import { ReadStatesGetQueryHandler } from '@/main/handlers/queries/read-states-get';
|
||||
|
||||
type QueryHandlerMap = {
|
||||
[K in keyof QueryMap]: QueryHandler<QueryMap[K]['input']>;
|
||||
};
|
||||
|
||||
export const queryHandlerMap: QueryHandlerMap = {
|
||||
account_list: new AccountListQueryHandler(),
|
||||
message_list: new MessageListQueryHandler(),
|
||||
node_get: new NodeGetQueryHandler(),
|
||||
record_list: new RecordListQueryHandler(),
|
||||
server_list: new ServerListQueryHandler(),
|
||||
user_search: new UserSearchQueryHandler(),
|
||||
workspace_list: new WorkspaceListQueryHandler(),
|
||||
workspace_user_list: new WorkspaceUserListQueryHandler(),
|
||||
file_list: new FileListQueryHandler(),
|
||||
emojis_get: new EmojisGetQueryHandler(),
|
||||
icons_get: new IconsGetQueryHandler(),
|
||||
node_tree_get: new NodeTreeGetQueryHandler(),
|
||||
node_children_get: new NodeChildrenGetQueryHandler(),
|
||||
read_states_get: new ReadStatesGetQueryHandler(),
|
||||
};
|
||||
87
apps/desktop/src/main/mutations/index.ts
Normal file
87
apps/desktop/src/main/mutations/index.ts
Normal file
@@ -0,0 +1,87 @@
|
||||
import { MutationMap } from '@/shared/mutations';
|
||||
import { MutationHandler } from '@/main/types';
|
||||
import { EmailLoginMutationHandler } from '@/main/mutations/email-login';
|
||||
import { EmailRegisterMutationHandler } from '@/main/mutations/email-register';
|
||||
import { ViewCreateMutationHandler } from '@/main/mutations/view-create';
|
||||
import { ChannelCreateMutationHandler } from '@/main/mutations/channel-create';
|
||||
import { ChatCreateMutationHandler } from '@/main/mutations/chat-create';
|
||||
import { DatabaseCreateMutationHandler } from '@/main/mutations/database-create';
|
||||
import { FieldCreateMutationHandler } from '@/main/mutations/field-create';
|
||||
import { MessageCreateMutationHandler } from '@/main/mutations/message-create';
|
||||
import { NodeAttributeDeleteMutationHandler } from '@/main/mutations/node-attribute-delete';
|
||||
import { NodeAttributeSetMutationHandler } from '@/main/mutations/node-attribute-set';
|
||||
import { NodeCollaboratorCreateMutationHandler } from '@/main/mutations/node-collaborator-create';
|
||||
import { NodeCollaboratorDeleteMutationHandler } from '@/main/mutations/node-collaborator-delete';
|
||||
import { NodeCollaboratorUpdateMutationHandler } from '@/main/mutations/node-collaborator-update';
|
||||
import { NodeDeleteMutationHandler } from '@/main/mutations/node-delete';
|
||||
import { PageCreateMutationHandler } from '@/main/mutations/page-create';
|
||||
import { NodeReactionCreateMutationHandler } from '@/main/mutations/node-reaction-create';
|
||||
import { NodeReactionDeleteMutationHandler } from '@/main/mutations/node-reaction-delete';
|
||||
import { RecordCreateMutationHandler } from '@/main/mutations/record-create';
|
||||
import { SelectOptionCreateMutationHandler } from '@/main/mutations/select-option-create';
|
||||
import { ServerCreateMutationHandler } from '@/main/mutations/server-create';
|
||||
import { SpaceCreateMutationHandler } from '@/main/mutations/space-create';
|
||||
import { WorkspaceUserRoleUpdateMutationHandler } from '@/main/mutations/workspace-user-role-update';
|
||||
import { WorkspaceUsersInviteMutationHandler } from '@/main/mutations/workspace-users-invite';
|
||||
import { WorkspaceCreateMutationHandler } from '@/main/mutations/workspace-create';
|
||||
import { WorkspaceUpdateMutationHandler } from '@/main/mutations/workspace-update';
|
||||
import { DocumentSaveMutationHandler } from '@/main/mutations/document-save';
|
||||
import { AvatarUploadMutationHandler } from '@/main/mutations/avatar-upload';
|
||||
import { AccountLogoutMutationHandler } from '@/main/mutations/account-logout';
|
||||
import { ServerNodeSyncMutationHandler } from '@/main/mutations/server-node-sync';
|
||||
import { ServerNodeDeleteMutationHandler } from '@/main/mutations/server-node-delete';
|
||||
import { FolderCreateMutationHandler } from '@/main/mutations/folder-create';
|
||||
import { FileCreateMutationHandler } from '@/main/mutations/file-create';
|
||||
import { FileDownloadMutationHandler } from '@/main/mutations/file-download';
|
||||
import { SpaceUpdateMutationHandler } from '@/main/mutations/space-update';
|
||||
import { AccountUpdateMutationHandler } from '@/main/mutations/account-update';
|
||||
import { ServerUserNodeSyncMutationHandler } from '@/main/mutations/server-user-node-sync';
|
||||
import { MarkNodeAsSeenMutationHandler } from '@/main/mutations/mark-node-as-seen';
|
||||
import { ViewUpdateMutationHandler } from '@/main/mutations/view-update';
|
||||
import { ViewDeleteMutationHandler } from '@/main/mutations/view-delete';
|
||||
|
||||
type MutationHandlerMap = {
|
||||
[K in keyof MutationMap]: MutationHandler<MutationMap[K]['input']>;
|
||||
};
|
||||
|
||||
export const mutationHandlerMap: MutationHandlerMap = {
|
||||
email_login: new EmailLoginMutationHandler(),
|
||||
email_register: new EmailRegisterMutationHandler(),
|
||||
view_create: new ViewCreateMutationHandler(),
|
||||
channel_create: new ChannelCreateMutationHandler(),
|
||||
chat_create: new ChatCreateMutationHandler(),
|
||||
database_create: new DatabaseCreateMutationHandler(),
|
||||
field_create: new FieldCreateMutationHandler(),
|
||||
message_create: new MessageCreateMutationHandler(),
|
||||
node_attribute_delete: new NodeAttributeDeleteMutationHandler(),
|
||||
node_attribute_set: new NodeAttributeSetMutationHandler(),
|
||||
node_collaborator_create: new NodeCollaboratorCreateMutationHandler(),
|
||||
node_collaborator_delete: new NodeCollaboratorDeleteMutationHandler(),
|
||||
node_collaborator_update: new NodeCollaboratorUpdateMutationHandler(),
|
||||
node_delete: new NodeDeleteMutationHandler(),
|
||||
page_create: new PageCreateMutationHandler(),
|
||||
node_reaction_create: new NodeReactionCreateMutationHandler(),
|
||||
node_reaction_delete: new NodeReactionDeleteMutationHandler(),
|
||||
record_create: new RecordCreateMutationHandler(),
|
||||
select_option_create: new SelectOptionCreateMutationHandler(),
|
||||
server_create: new ServerCreateMutationHandler(),
|
||||
space_create: new SpaceCreateMutationHandler(),
|
||||
workspace_user_role_update: new WorkspaceUserRoleUpdateMutationHandler(),
|
||||
workspace_users_invite: new WorkspaceUsersInviteMutationHandler(),
|
||||
workspace_create: new WorkspaceCreateMutationHandler(),
|
||||
workspace_update: new WorkspaceUpdateMutationHandler(),
|
||||
document_save: new DocumentSaveMutationHandler(),
|
||||
avatar_upload: new AvatarUploadMutationHandler(),
|
||||
account_logout: new AccountLogoutMutationHandler(),
|
||||
server_node_sync: new ServerNodeSyncMutationHandler(),
|
||||
server_node_delete: new ServerNodeDeleteMutationHandler(),
|
||||
folder_create: new FolderCreateMutationHandler(),
|
||||
file_create: new FileCreateMutationHandler(),
|
||||
file_download: new FileDownloadMutationHandler(),
|
||||
space_update: new SpaceUpdateMutationHandler(),
|
||||
account_update: new AccountUpdateMutationHandler(),
|
||||
server_user_node_sync: new ServerUserNodeSyncMutationHandler(),
|
||||
mark_node_as_seen: new MarkNodeAsSeenMutationHandler(),
|
||||
view_update: new ViewUpdateMutationHandler(),
|
||||
view_delete: new ViewDeleteMutationHandler(),
|
||||
};
|
||||
37
apps/desktop/src/main/queries/index.ts
Normal file
37
apps/desktop/src/main/queries/index.ts
Normal file
@@ -0,0 +1,37 @@
|
||||
import { QueryMap } from '@/shared/queries';
|
||||
import { QueryHandler } from '@/main/types';
|
||||
import { AccountListQueryHandler } from '@/main/queries/accounts-list';
|
||||
import { MessageListQueryHandler } from '@/main/queries/message-list';
|
||||
import { NodeGetQueryHandler } from '@/main/queries/node-get';
|
||||
import { ServerListQueryHandler } from '@/main/queries/server-list';
|
||||
import { UserSearchQueryHandler } from '@/main/queries/user-search';
|
||||
import { WorkspaceListQueryHandler } from '@/main/queries/workspace-list';
|
||||
import { WorkspaceUserListQueryHandler } from '@/main/queries/workspace-user-list';
|
||||
import { RecordListQueryHandler } from '@/main/queries/record-list';
|
||||
import { FileListQueryHandler } from '@/main/queries/file-list';
|
||||
import { EmojisGetQueryHandler } from '@/main/queries/emojis-get';
|
||||
import { IconsGetQueryHandler } from '@/main/queries/icons-get';
|
||||
import { NodeTreeGetQueryHandler } from '@/main/queries/node-tree-get';
|
||||
import { NodeChildrenGetQueryHandler } from '@/main/queries/node-children-get';
|
||||
import { ReadStatesGetQueryHandler } from '@/main/queries/read-states-get';
|
||||
|
||||
type QueryHandlerMap = {
|
||||
[K in keyof QueryMap]: QueryHandler<QueryMap[K]['input']>;
|
||||
};
|
||||
|
||||
export const queryHandlerMap: QueryHandlerMap = {
|
||||
account_list: new AccountListQueryHandler(),
|
||||
message_list: new MessageListQueryHandler(),
|
||||
node_get: new NodeGetQueryHandler(),
|
||||
record_list: new RecordListQueryHandler(),
|
||||
server_list: new ServerListQueryHandler(),
|
||||
user_search: new UserSearchQueryHandler(),
|
||||
workspace_list: new WorkspaceListQueryHandler(),
|
||||
workspace_user_list: new WorkspaceUserListQueryHandler(),
|
||||
file_list: new FileListQueryHandler(),
|
||||
emojis_get: new EmojisGetQueryHandler(),
|
||||
icons_get: new IconsGetQueryHandler(),
|
||||
node_tree_get: new NodeTreeGetQueryHandler(),
|
||||
node_children_get: new NodeChildrenGetQueryHandler(),
|
||||
read_states_get: new ReadStatesGetQueryHandler(),
|
||||
};
|
||||
@@ -1,7 +1,7 @@
|
||||
import { MutationInput } from '@/shared/mutations';
|
||||
|
||||
import { MutationMap } from '@/shared/mutations';
|
||||
import { mutationHandlerMap } from '@/main/handlers/mutations';
|
||||
import { mutationHandlerMap } from '@/main/mutations';
|
||||
import { MutationHandler } from '@/main/types';
|
||||
|
||||
class MutationService {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { QueryInput, QueryMap } from '@/shared/queries';
|
||||
import { QueryHandler, SubscribedQuery } from '@/main/types';
|
||||
import { queryHandlerMap } from '@/main/handlers/queries';
|
||||
import { queryHandlerMap } from '@/main/queries';
|
||||
import { eventBus } from '@/shared/lib/event-bus';
|
||||
import { Event } from '@/shared/types/events';
|
||||
|
||||
@@ -44,6 +44,10 @@ class QueryService {
|
||||
}
|
||||
|
||||
private async checkForQueryChanges(event: Event): Promise<void> {
|
||||
if (event.type !== 'query_result_updated') {
|
||||
return;
|
||||
}
|
||||
|
||||
for (const [id, query] of this.subscribedQueries) {
|
||||
const handler = queryHandlerMap[query.input.type] as QueryHandler<
|
||||
typeof query.input
|
||||
|
||||
Reference in New Issue
Block a user