@viewberapp/chat 0.0.47 → 0.0.49

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.
package/dist/API.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { AxiosInstance } from "axios";
2
+ import { SendMessageOptions } from './CachedChat';
2
3
  import ChatError from "./ChatError";
3
4
  import Message from './Message';
4
5
  export interface ConstructApiParams {
@@ -46,7 +47,7 @@ export default class API {
46
47
  private getChatForAppointmentRoute;
47
48
  constructor(params: ConstructApiParams);
48
49
  getAblyToken: (chats: number[]) => Promise<GetAblyTokenReturnValue>;
49
- storeMessage: (chatId: number, message: string) => Promise<StoreMessageReturnValue>;
50
+ storeMessage: (chatId: number, message: string, options?: SendMessageOptions) => Promise<StoreMessageReturnValue>;
50
51
  getLatestMessages: (chatId: number) => Promise<GetLatestMessagesReturnValue>;
51
52
  getChatIdFromAppointmentId: (appointmentId: number) => Promise<GetChatIdFromAppointmentIdReturnValue>;
52
53
  private constructHeaders;
package/dist/API.js CHANGED
@@ -27,8 +27,13 @@ class API {
27
27
  resolve({ error: { code: 'error' } });
28
28
  });
29
29
  });
30
- this.storeMessage = (chatId, message) => new Promise((resolve, reject) => {
31
- this.axios.post(this.getChatStoreMessageRoute(chatId), { message }, {
30
+ this.storeMessage = (chatId, message, options) => new Promise((resolve, reject) => {
31
+ this.axios.post(this.getChatStoreMessageRoute(chatId), {
32
+ message,
33
+ is_admin_message: (options === null || options === void 0 ? void 0 : options.isAdminMessage)
34
+ ? options.isAdminMessage
35
+ : undefined
36
+ }, {
32
37
  headers: this.constructHeaders(),
33
38
  }).then(response => {
34
39
  resolve({
package/dist/API.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"API.js","sourceRoot":"","sources":["../src/API.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"API.js","sourceRoot":"","sources":["../src/API.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,9 @@ export interface CachedChatParams {
12
12
  channel: Ably.Types.RealtimeChannelCallbacks;
13
13
  logger: Logger;
14
14
  }
15
+ export interface SendMessageOptions {
16
+ isAdminMessage: boolean;
17
+ }
15
18
  export declare type Messages = (Message | PendingMessage)[];
16
19
  export default class CachedChat {
17
20
  private id;
@@ -22,7 +25,7 @@ export default class CachedChat {
22
25
  private channel;
23
26
  private logger;
24
27
  constructor({ id, api, channel, logger }: CachedChatParams);
25
- sendMessage(message: string): Promise<void>;
28
+ sendMessage(message: string, options?: SendMessageOptions): Promise<void>;
26
29
  getLatestMessages(): void;
27
30
  addMessage(message: Message | PendingMessage): void;
28
31
  private replacePendingMessage;
@@ -64,7 +64,7 @@ class CachedChat {
64
64
  this.logger.debug('channel.presence.subscribe:error', err);
65
65
  });
66
66
  }
67
- sendMessage(message) {
67
+ sendMessage(message, options) {
68
68
  return new Promise((resolve, reject) => {
69
69
  const pendingMessage = new PendingMessage_1.default({
70
70
  id: (0, uuid_1.v4)(),
@@ -73,7 +73,7 @@ class CachedChat {
73
73
  });
74
74
  this.addMessage(pendingMessage);
75
75
  this.fireMessagesEventOnEachActiveSubscription();
76
- this.api.storeMessage(this.id, message).then(({ message, error }) => {
76
+ this.api.storeMessage(this.id, message, options).then(({ message, error }) => {
77
77
  if (error) {
78
78
  return;
79
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CachedChat.js","sourceRoot":"","sources":["../src/CachedChat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CachedChat.js","sourceRoot":"","sources":["../src/CachedChat.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import CachedChat, { Messages } from "./CachedChat";
1
+ import CachedChat, { Messages, SendMessageOptions } from "./CachedChat";
2
2
  import { ChatConnectionStatus } from "./Chat";
3
3
  import OnlineUser from "./OnlineUser";
4
4
  export declare type ChatSubscriptionStatus = 'active' | 'cancelled';
@@ -28,10 +28,12 @@ export interface ChatSubscriptionEventCallbackData {
28
28
  status: ChatConnectionStatus;
29
29
  };
30
30
  }
31
- declare type ChatSubscriptionEventsAndCallbacks<Type> = {
32
- [Event in keyof Type]?: (data: Type[Event]) => void;
31
+ export declare type ChatSubscriptionEventHandlers = {
32
+ [Event in keyof ChatSubscriptionEventCallbackData]: (data: ChatSubscriptionEventCallbackData[Event]) => void;
33
+ };
34
+ export declare type ChatSubscriptionEventsAndCallbacks = {
35
+ [Event in keyof ChatSubscriptionEventCallbackData]: ChatSubscriptionEventHandlers[Event][];
33
36
  };
34
- export declare type ChatSubscriptionEventHandlers = ChatSubscriptionEventsAndCallbacks<ChatSubscriptionEventCallbackData>;
35
37
  export default class ChatSubscription {
36
38
  private chat;
37
39
  private status;
@@ -42,10 +44,10 @@ export default class ChatSubscription {
42
44
  setStatus(status: ChatSubscriptionStatus): void;
43
45
  getConnectionStatus(): ChatConnectionStatus;
44
46
  setConnectionStatus(status: ChatConnectionStatus): void;
45
- sendMessage(message: string): Promise<any>;
47
+ sendMessage(message: string, options?: SendMessageOptions): Promise<any>;
46
48
  on<Event extends keyof ChatSubscriptionEventHandlers>(event: Event, handler: ChatSubscriptionEventHandlers[Event]): this;
49
+ off<Event extends keyof ChatSubscriptionEventHandlers>(event: Event, handler: ChatSubscriptionEventHandlers[Event]): this;
47
50
  fireEvent<Event extends keyof ChatSubscriptionEventHandlers>(name: Event, data: ChatSubscriptionEventCallbackData[Event]): void;
48
51
  fireEventIfActive<Event extends keyof ChatSubscriptionEventHandlers>(name: Event, data: ChatSubscriptionEventCallbackData[Event]): void;
49
52
  cancel(): void;
50
53
  }
51
- export {};
@@ -5,7 +5,14 @@ class ChatSubscription {
5
5
  this.chat = chat;
6
6
  this.status = options.status;
7
7
  this.connectionStatus = options.connectionStatus;
8
- this.eventHandlers = {};
8
+ this.eventHandlers = {
9
+ messages: [],
10
+ here: [],
11
+ userJoining: [],
12
+ userLeaving: [],
13
+ statusChange: [],
14
+ connectionStatusChange: []
15
+ };
9
16
  }
10
17
  getStatus() {
11
18
  return this.status;
@@ -22,16 +29,27 @@ class ChatSubscription {
22
29
  status: this.connectionStatus
23
30
  });
24
31
  }
25
- sendMessage(message) {
26
- return this.chat.sendMessage(message);
32
+ sendMessage(message, options) {
33
+ return this.chat.sendMessage(message, options);
27
34
  }
28
35
  on(event, handler) {
29
- this.eventHandlers[event] = handler;
36
+ this.eventHandlers[event].push(handler);
37
+ return this;
38
+ }
39
+ off(event, handler) {
40
+ let newEventHandlers = [];
41
+ this.eventHandlers[event] = this.eventHandlers[event].reduce((carry, h) => {
42
+ if (h !== handler) {
43
+ carry.push(h);
44
+ }
45
+ return carry;
46
+ }, newEventHandlers);
30
47
  return this;
31
48
  }
32
49
  fireEvent(name, data) {
33
- var _a, _b;
34
- (_b = (_a = this.eventHandlers)[name]) === null || _b === void 0 ? void 0 : _b.call(_a, data);
50
+ this.eventHandlers[name].forEach(handler => {
51
+ handler(data);
52
+ });
35
53
  }
36
54
  fireEventIfActive(name, data) {
37
55
  if (this.status === 'active') {
@@ -1 +1 @@
1
- {"version":3,"file":"ChatSubscription.js","sourceRoot":"","sources":["../src/ChatSubscription.ts"],"names":[],"mappings":";;AA2CA,MAAqB,gBAAgB;IAMjC,YAAY,IAAgB,EAAE,OAAgC;QAC1D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,SAAS,CAAC,MAA8B;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,mBAAmB;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,mBAAmB,CAAC,MAA4B;QAC5C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,wBAAwB,EAAE;YACrC,MAAM,EAAE,IAAI,CAAC,gBAAgB;SAChC,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,OAAe;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,EAAE,CAAoD,KAAY,EAAE,OAA6C;QAC7G,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;QACpC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,CAAoD,IAAW,EAAE,IAA8C;;QACpH,MAAA,MAAA,IAAI,CAAC,aAAa,EAAC,IAAI,CAAC,mDAAG,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,iBAAiB,CAAoD,IAAW,EAAE,IAA8C;QAC5H,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SAC9B;IACL,CAAC;IAED,MAAM;QACF,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;CACJ;AAtDD,mCAsDC"}
1
+ {"version":3,"file":"ChatSubscription.js","sourceRoot":"","sources":["../src/ChatSubscription.ts"],"names":[],"mappings":";;AA4CA,MAAqB,gBAAgB;IAMjC,YAAY,IAAgB,EAAE,OAAgC;QAC1D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,aAAa,GAAG;YACjB,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,EAAE;YACR,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,EAAE;YACf,YAAY,EAAE,EAAE;YAChB,sBAAsB,EAAE,EAAE;SAC7B,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,SAAS,CAAC,MAA8B;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,mBAAmB;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,mBAAmB,CAAC,MAA4B;QAC5C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,wBAAwB,EAAE;YACrC,MAAM,EAAE,IAAI,CAAC,gBAAgB;SAChC,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,OAAe,EAAE,OAA4B;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,EAAE,CAAoD,KAAY,EAAE,OAA6C;QAC7G,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,GAAG,CAAoD,KAAY,EAAE,OAA6C;QAC9G,IAAI,gBAAgB,GAA8C,EAAE,CAAC;QAIrE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACtE,IAAI,CAAC,KAAK,OAAO,EAAE;gBACf,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAErB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,CAAoD,IAAW,EAAE,IAA8C;QACpH,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,iBAAiB,CAAoD,IAAW,EAAE,IAA8C;QAC5H,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SAC9B;IACL,CAAC;IAED,MAAM;QACF,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;CACJ;AA9ED,mCA8EC"}
@@ -1,6 +1,6 @@
1
1
  import OnlineUser from '../OnlineUser';
2
2
  import { Messages } from '../CachedChat';
3
- import { ChatSubscriptionStatus } from '../ChatSubscription';
3
+ import { ChatSubscriptionStatus, ChatSubscriptionEventHandlers } from '../ChatSubscription';
4
4
  export interface UseChatOptions {
5
5
  idType?: 'appointment';
6
6
  }
@@ -9,6 +9,8 @@ export interface UseChatReturnValue {
9
9
  messages: Messages;
10
10
  onlineUsers: OnlineUser[];
11
11
  sendMessage: (message: string) => Promise<any> | void;
12
+ addEventListener: <Event extends keyof ChatSubscriptionEventHandlers>(event: Event, handler: ChatSubscriptionEventHandlers[Event]) => Promise<boolean>;
13
+ removeEventListener: <Event extends keyof ChatSubscriptionEventHandlers>(event: Event, handler: ChatSubscriptionEventHandlers[Event]) => Promise<boolean>;
12
14
  }
13
15
  declare const useChat: (id: number, { idType }: UseChatOptions) => UseChatReturnValue;
14
16
  export default useChat;
@@ -48,7 +48,18 @@ const useChat = (id, { idType }) => {
48
48
  status,
49
49
  messages,
50
50
  onlineUsers,
51
- sendMessage: (message) => subscription === null || subscription === void 0 ? void 0 : subscription.sendMessage(message)
51
+ sendMessage: (message) => subscription === null || subscription === void 0 ? void 0 : subscription.sendMessage(message),
52
+ addEventListener: (event, handler) => new Promise((resolve, reject) => {
53
+ if (subscription) {
54
+ subscription.on(event, handler);
55
+ resolve(true);
56
+ }
57
+ resolve(false);
58
+ }),
59
+ removeEventListener: (event, handler) => new Promise((resolve, reject) => {
60
+ subscription === null || subscription === void 0 ? void 0 : subscription.off(event, handler);
61
+ resolve(true);
62
+ })
52
63
  };
53
64
  };
54
65
  exports.default = useChat;
@@ -1 +1 @@
1
- {"version":3,"file":"useChat.js","sourceRoot":"","sources":["../../src/react/useChat.ts"],"names":[],"mappings":";;;;;AAAA,iCAA0C;AAC1C,mDAA2B;AAgB3B,MAAM,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE,MAAM,EAAkB,EAAsB,EAAE;IAC3E,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,GAA8B,CAAC;IAC/E,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,GAAoC,CAAC;IACzE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAW,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAe,EAAE,CAAC,CAAC;IAEjE,MAAM,cAAc,GAAG,CAAC,EAAC,QAAQ,EAAgD,EAAE,EAAE;QACjF,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,EAAC,KAAK,EAA4C,EAAE,EAAE;QACtE,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAA;IAED,MAAM,iBAAiB,GAAG,CAAC,EAAC,IAAI,EAAE,KAAK,EAAmD,EAAE,EAAE;QAC1F,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAA;IAED,MAAM,iBAAiB,GAAG,CAAC,EAAC,IAAI,EAAE,KAAK,EAAmD,EAAE,EAAE;QAC1F,cAAc,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG,CAAC,EAAC,MAAM,EAAoD,EAAE,EAAE;QACvF,SAAS,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC,CAAA;IAED,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,MAAM,MAAM,GAAG,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC;QAChE,cAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC,YAAY,EAAE,KAAK,EAAC,EAAE,EAAE;YAC5C,IAAI,KAAK,EAAE;gBAEP,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC5B,OAAO;aACV;YACD,eAAe,CAAC,YAAY,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;YAClB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACX,MAAA,MAAA,MAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CACN,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,0CACtB,EAAE,CAAC,aAAa,EAAE,iBAAiB,CAAC,0CACpC,EAAE,CAAC,aAAa,EAAE,iBAAiB,CAAC,0CACpC,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,0CAC9B,EAAE,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;QAE5C,OAAO,GAAG,EAAE;YACR,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,EAAE,CAAC;QAC3B,CAAC,CAAA;IACL,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,OAAO;QACH,MAAM;QACN,QAAQ;QACR,WAAW;QACX,WAAW,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,WAAW,CAAC,OAAO,CAAC;KACvE,CAAA;AACL,CAAC,CAAA;AAED,kBAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"useChat.js","sourceRoot":"","sources":["../../src/react/useChat.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import Message, { Sender } from "../Message";
2
+ export declare type MessageGroup = MessageGroupItem[];
3
+ export interface MessageGroupItem {
4
+ senderId: number;
5
+ sender: Sender;
6
+ messages: Message[];
7
+ }
8
+ export declare const groupMessages: (messages: Message[]) => MessageGroup;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.groupMessages = void 0;
4
+ const groupMessages = (messages) => {
5
+ const messageGroup = [];
6
+ let currentMessageGroupItem = undefined;
7
+ for (let i = 0, il = messages.length; i < il; i++) {
8
+ if (!currentMessageGroupItem) {
9
+ currentMessageGroupItem = {
10
+ senderId: messages[i].senderId,
11
+ sender: messages[i].sender,
12
+ messages: [messages[i]]
13
+ };
14
+ messageGroup.push(currentMessageGroupItem);
15
+ continue;
16
+ }
17
+ if (currentMessageGroupItem.senderId === messages[i].senderId) {
18
+ currentMessageGroupItem.messages.push(messages[i]);
19
+ continue;
20
+ }
21
+ currentMessageGroupItem = {
22
+ senderId: messages[i].senderId,
23
+ sender: messages[i].sender,
24
+ messages: [messages[i]]
25
+ };
26
+ messageGroup.push(currentMessageGroupItem);
27
+ }
28
+ return messageGroup;
29
+ };
30
+ exports.groupMessages = groupMessages;
31
+ //# sourceMappingURL=groupMessages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groupMessages.js","sourceRoot":"","sources":["../../src/util/groupMessages.tsx"],"names":[],"mappings":";;;AA8BO,MAAM,aAAa,GAAG,CAAC,QAAmB,EAAgB,EAAE;IAC/D,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,IAAI,uBAAuB,GAA+B,SAAS,CAAC;IAEpE,KAAI,IAAI,CAAC,GAAC,CAAC,EAAC,EAAE,GAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAC,EAAE,EAAE,CAAC,EAAE,EAAE;QAGvC,IAAI,CAAC,uBAAuB,EAAE;YAC1B,uBAAuB,GAAG;gBACtB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ;gBAC9B,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM;gBAC1B,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aAC1B,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC3C,SAAS;SACZ;QAMD,IAAI,uBAAuB,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC3D,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,SAAS;SACZ;QAGD,uBAAuB,GAAG;YACtB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ;YAC9B,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM;YAC1B,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SAC1B,CAAC;QACF,YAAY,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;KAC9C;IAED,OAAO,YAAY,CAAC;AACxB,CAAC,CAAA;AApCY,QAAA,aAAa,iBAoCzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viewberapp/chat",
3
- "version": "0.0.47",
3
+ "version": "0.0.49",
4
4
  "description": "Viewber chat",
5
5
  "author": "Jacob <jacob.chen@viewber.co.uk>",
6
6
  "homepage": "https://bitbucket.org/ezadr/viewberjs#readme",
@@ -41,5 +41,5 @@
41
41
  "react": "^16.14.0",
42
42
  "rollbar": "^2.25.0"
43
43
  },
44
- "gitHead": "7c40b427137ebe514dab68cd4a6fa2b904ff1b4f"
44
+ "gitHead": "b3ea03a3dded1d443fb82218c0824f6a8f4c9a69"
45
45
  }