@ethora/chat-component 25.3.1 → 25.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,11 @@
1
- import { ApiRoom, PostRoom } from '../../types/types';
1
+ import { ApiRoom, DeleteRoomMember, PostAddRoomMember, PostReportRoom, PostRoom } from '../../types/types';
2
2
 
3
3
  export declare function getRooms(): Promise<{
4
4
  items: ApiRoom[];
5
5
  }>;
6
+ export declare function getRoomByName(chatName: string): Promise<ApiRoom>;
6
7
  export declare function postRoom(data: PostRoom): Promise<any>;
8
+ export declare function postReportRoom(data: PostReportRoom): Promise<any>;
9
+ export declare function postAddRoomMember(data: PostAddRoomMember): Promise<any>;
10
+ export declare function deleteRoomMember(data: DeleteRoomMember): Promise<any>;
11
+ export declare function deleteRoom(name: string): Promise<any>;
@@ -1,4 +1,5 @@
1
1
  import { Element } from 'ltx';
2
+ import { default as XmppClient } from './xmppClient';
2
3
 
3
4
  declare const onRealtimeMessage: (stanza: Element) => Promise<import('../types/types').IMessage>;
4
5
  declare const onReactionMessage: (stanza: Element) => Promise<void>;
@@ -8,7 +9,7 @@ declare const onReactionHistory: (stanza: any) => Promise<void>;
8
9
  declare const onMessageHistory: (stanza: any) => Promise<void>;
9
10
  declare const handleComposing: (stanza: Element, currentUser: string) => Promise<void>;
10
11
  declare const onPresenceInRoom: (stanza: Element | any) => void;
11
- declare const onChatInvite: (stanza: Element, client: any) => Promise<void>;
12
+ declare const onChatInvite: (stanza: Element, client: XmppClient) => Promise<void>;
12
13
  declare const onGetMembers: (stanza: Element) => void;
13
14
  declare const onGetRoomInfo: (stanza: Element) => void;
14
15
  declare const onGetLastMessageArchive: (stanza: Element) => void;
@@ -1,5 +1,5 @@
1
1
  import { PayloadAction } from '@reduxjs/toolkit';
2
- import { AddRoomMessageAction, EditAction, IMessage, IRoom, ReactionAction } from '../types/types';
2
+ import { AddRoomMessageAction, ApiRoom, EditAction, IMessage, IRoom, ReactionAction, RoomMember } from '../types/types';
3
3
  import { default as XmppClient } from '../networking/xmppClient';
4
4
 
5
5
  interface RoomMessagesState {
@@ -9,6 +9,10 @@ interface RoomMessagesState {
9
9
  activeRoomJID: string;
10
10
  editAction?: EditAction;
11
11
  isLoading: boolean;
12
+ usersSet: Record<string, RoomMember>;
13
+ reportRoom: {
14
+ isOpen: boolean;
15
+ };
12
16
  }
13
17
  export declare const roomsStore: import('@reduxjs/toolkit').Slice<RoomMessagesState, {
14
18
  addRoom(state: import('immer').WritableDraft<RoomMessagesState>, action: PayloadAction<{
@@ -74,6 +78,12 @@ export declare const roomsStore: import('@reduxjs/toolkit').Slice<RoomMessagesSt
74
78
  room: IRoom;
75
79
  xmpp: XmppClient;
76
80
  }>) => void;
81
+ updateUsersSet: (state: import('immer').WritableDraft<RoomMessagesState>, action: PayloadAction<{
82
+ rooms: ApiRoom[];
83
+ }>) => void;
84
+ setOpenReportModal: (state: import('immer').WritableDraft<RoomMessagesState>, action: PayloadAction<{
85
+ isOpen: boolean;
86
+ }>) => void;
77
87
  }, "roomMessages", "roomMessages", import('@reduxjs/toolkit').SliceSelectors<RoomMessagesState>>;
78
88
  export declare const getLastMessageTimestamp: (state: RoomMessagesState, jid: string) => string | null;
79
89
  export declare const addRoom: import('@reduxjs/toolkit').ActionCreatorWithOptionalPayload<{
@@ -119,6 +129,10 @@ export declare const addRoom: import('@reduxjs/toolkit').ActionCreatorWithOption
119
129
  }, "roomMessages/updateRoom">, addRoomViaApi: import('@reduxjs/toolkit').ActionCreatorWithOptionalPayload<{
120
130
  room: IRoom;
121
131
  xmpp: XmppClient;
122
- }, "roomMessages/addRoomViaApi">;
132
+ }, "roomMessages/addRoomViaApi">, updateUsersSet: import('@reduxjs/toolkit').ActionCreatorWithOptionalPayload<{
133
+ rooms: ApiRoom[];
134
+ }, "roomMessages/updateUsersSet">, setOpenReportModal: import('@reduxjs/toolkit').ActionCreatorWithOptionalPayload<{
135
+ isOpen: boolean;
136
+ }, "roomMessages/setOpenReportModal">;
123
137
  declare const _default: import('redux').Reducer<RoomMessagesState>;
124
138
  export default _default;
@@ -4,7 +4,7 @@ import { TranslationObject } from '../helpers/transformTranslatations';
4
4
 
5
5
  export interface IUser extends Partial<User> {
6
6
  id: string;
7
- name: string | null;
7
+ name?: string;
8
8
  userJID?: string | null;
9
9
  token?: string;
10
10
  refreshToken?: string;
@@ -54,6 +54,18 @@ export interface IRoom {
54
54
  messages: IMessage[];
55
55
  isLoading: boolean;
56
56
  roomBg: string;
57
+ members?: RoomMember[];
58
+ type?: 'public' | 'group';
59
+ creteadAt?: string;
60
+ appId?: string;
61
+ createdAt?: string;
62
+ createdBy?: string;
63
+ description?: string;
64
+ isAppChat?: boolean;
65
+ picture?: string;
66
+ updatedAt?: string;
67
+ __v?: number | string;
68
+ _id?: string;
57
69
  id?: string;
58
70
  lastMessage?: LastMessage;
59
71
  lastMessageTimestamp?: number;
@@ -65,7 +77,6 @@ export interface IRoom {
65
77
  unreadMessages?: number;
66
78
  noMessages?: boolean;
67
79
  role?: string;
68
- roomMembers?: RoomMember[];
69
80
  messageStats?: {
70
81
  lastMessageTimestamp?: number;
71
82
  firstMessageTimestamp?: number;
@@ -78,7 +89,7 @@ export interface ApiRoom {
78
89
  title?: string;
79
90
  description?: string;
80
91
  picture?: string;
81
- members?: string[];
92
+ members?: RoomMember[];
82
93
  createdBy?: string;
83
94
  appId?: any;
84
95
  _id?: string;
@@ -94,14 +105,31 @@ export interface PostRoom {
94
105
  description?: string;
95
106
  picture?: string;
96
107
  }
108
+ export interface PostReportRoom {
109
+ chatName: string;
110
+ category: string;
111
+ text?: string;
112
+ }
113
+ export interface PostAddRoomMember {
114
+ chatName: string;
115
+ username: string;
116
+ }
117
+ export interface DeleteRoomMember {
118
+ roomId: string;
119
+ userId: string;
120
+ }
97
121
  export interface IRoomCompressed extends Pick<IRoom, 'jid'> {
98
122
  }
99
123
  export interface RoomMember {
100
- ban_status: string;
101
- jid: string;
102
- last_active: number;
103
- name: string;
104
- role: string;
124
+ firstName: string;
125
+ lastName: string;
126
+ xmppUsername: string;
127
+ _id: string;
128
+ ban_status?: string;
129
+ jid?: string;
130
+ name?: string;
131
+ role?: string;
132
+ last_active?: number;
105
133
  }
106
134
  export interface RoomLastMessage {
107
135
  name: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ethora/chat-component",
3
- "version": "25.03.01",
3
+ "version": "25.03.03",
4
4
  "type": "module",
5
5
  "main": "dist/main.js",
6
6
  "types": "dist/main.d.ts",