@arthakosh/chat 0.0.1

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.
Files changed (32) hide show
  1. package/README.md +24 -0
  2. package/esm2022/arthakosh-chat.mjs +5 -0
  3. package/esm2022/lib/all-chats/all-chats.component.mjs +121 -0
  4. package/esm2022/lib/chat-launcher/chat-launcher.component.mjs +96 -0
  5. package/esm2022/lib/chat-widget-notification/chat-widget-notification.component.mjs +69 -0
  6. package/esm2022/lib/chat-widget.module.mjs +47 -0
  7. package/esm2022/lib/chat-widget.service.mjs +12 -0
  8. package/esm2022/lib/chat-window/chat-window.component.mjs +210 -0
  9. package/esm2022/lib/core/config/chat-config.mjs +2 -0
  10. package/esm2022/lib/core/config/chat.tokens.mjs +4 -0
  11. package/esm2022/lib/core/models/chat.models.mjs +2 -0
  12. package/esm2022/lib/core/models/notification.model.mjs +2 -0
  13. package/esm2022/lib/core/services/chat.service.mjs +117 -0
  14. package/esm2022/lib/core/services/socket.service.mjs +148 -0
  15. package/esm2022/public-api.mjs +10 -0
  16. package/fesm2022/arthakosh-chat.mjs +776 -0
  17. package/fesm2022/arthakosh-chat.mjs.map +1 -0
  18. package/index.d.ts +5 -0
  19. package/lib/all-chats/all-chats.component.d.ts +23 -0
  20. package/lib/chat-launcher/chat-launcher.component.d.ts +34 -0
  21. package/lib/chat-widget-notification/chat-widget-notification.component.d.ts +22 -0
  22. package/lib/chat-widget.module.d.ts +14 -0
  23. package/lib/chat-widget.service.d.ts +6 -0
  24. package/lib/chat-window/chat-window.component.d.ts +49 -0
  25. package/lib/core/config/chat-config.d.ts +4 -0
  26. package/lib/core/config/chat.tokens.d.ts +3 -0
  27. package/lib/core/models/chat.models.d.ts +22 -0
  28. package/lib/core/models/notification.model.d.ts +6 -0
  29. package/lib/core/services/chat.service.d.ts +34 -0
  30. package/lib/core/services/socket.service.d.ts +38 -0
  31. package/package.json +42 -0
  32. package/public-api.d.ts +6 -0
@@ -0,0 +1,148 @@
1
+ import { Inject, Injectable, signal } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { CHAT_CONFIG } from "../config/chat.tokens";
4
+ import * as i0 from "@angular/core";
5
+ export class SocketService {
6
+ constructor(config) {
7
+ this.config = config;
8
+ this.listeners = new Map();
9
+ this.notifications = signal([]);
10
+ this.hasNewNotification = signal(false);
11
+ this.reconnectAttempts = 0;
12
+ this.MAX_RECONNECT_ATTEMPTS = 5;
13
+ // this.connect();
14
+ }
15
+ connect(userId) {
16
+ // this.socket = new WebSocket('wss://coreuatarthkosh.sarjak.com/ws/');
17
+ if (this.reconnectAttempts >= this.MAX_RECONNECT_ATTEMPTS) {
18
+ console.error('[WS] Max reconnect attempts reached. Giving up.');
19
+ return;
20
+ }
21
+ this.socket = new WebSocket(`${this.config.wsBaseUrl}/ws/`);
22
+ this.socket.onopen = () => {
23
+ console.log('[WS] Connected');
24
+ this.reconnectAttempts = 0;
25
+ this.joinUserChannel(userId);
26
+ this.on('notificationCreated').subscribe((notification) => {
27
+ console.log('Listening for notifications', notification);
28
+ this.notifications.update(list => {
29
+ const roomId = notification.entityId;
30
+ const eventType = notification.eventType;
31
+ // 🔑 Dedup key = room + eventType
32
+ const exists = list.some(n => n.entityId === roomId && n.eventType === eventType);
33
+ // ❌ Already exists → do nothing
34
+ if (exists) {
35
+ return list;
36
+ }
37
+ // ✅ New (room + eventType) combination
38
+ return [
39
+ {
40
+ ...notification,
41
+ unreadCount: 1
42
+ },
43
+ ...list
44
+ ];
45
+ });
46
+ this.notifyArrival();
47
+ });
48
+ };
49
+ this.socket.onmessage = (event) => {
50
+ const msg = JSON.parse(event.data);
51
+ const handlers = this.listeners.get(msg.event) || [];
52
+ handlers.forEach(h => h(msg.data));
53
+ };
54
+ this.socket.onerror = (err) => {
55
+ console.error('[WS] Error', err);
56
+ this.socket.close();
57
+ };
58
+ this.socket.onclose = () => {
59
+ this.reconnectAttempts++;
60
+ console.warn('[WS] Disconnected – reconnecting...');
61
+ if (this.reconnectAttempts < this.MAX_RECONNECT_ATTEMPTS) {
62
+ setTimeout(() => this.connect(userId), 2000);
63
+ }
64
+ else {
65
+ console.error('[WS] Stopped reconnecting.');
66
+ }
67
+ };
68
+ }
69
+ emit(event, data) {
70
+ const payload = { event, data };
71
+ this.socket.send(JSON.stringify(payload));
72
+ }
73
+ joinRoom(roomId) {
74
+ this.emit('joinRoom', roomId);
75
+ }
76
+ joinUserChannel(userId) {
77
+ this.emit('joinUserChannel', userId);
78
+ }
79
+ sendMessage(data) {
80
+ this.emit('sendMessage', data);
81
+ }
82
+ messageSeen(data) {
83
+ this.emit('messageSeen', data);
84
+ }
85
+ on(event) {
86
+ return new Observable(sub => {
87
+ const handler = (data) => sub.next(data);
88
+ if (!this.listeners.has(event)) {
89
+ this.listeners.set(event, []);
90
+ }
91
+ this.listeners.get(event).push(handler);
92
+ return () => {
93
+ const arr = this.listeners.get(event) || [];
94
+ this.listeners.set(event, arr.filter(h => h !== handler));
95
+ };
96
+ });
97
+ }
98
+ onNewMessage(cb) {
99
+ this.addListener('newMessage', cb);
100
+ }
101
+ offNewMessage(cb) {
102
+ this.removeListener('newMessage', cb);
103
+ }
104
+ onMessageSeen(cb) {
105
+ this.addListener('messageSeen', cb);
106
+ }
107
+ offMessageSeen(cb) {
108
+ this.removeListener('messageSeen', cb);
109
+ }
110
+ addListener(event, cb) {
111
+ if (!this.listeners.has(event)) {
112
+ this.listeners.set(event, []);
113
+ }
114
+ this.listeners.get(event).push(cb);
115
+ }
116
+ removeListener(event, cb) {
117
+ if (!cb) {
118
+ this.listeners.delete(event);
119
+ return;
120
+ }
121
+ const arr = this.listeners.get(event) || [];
122
+ this.listeners.set(event, arr.filter(h => h !== cb));
123
+ }
124
+ clearAll() {
125
+ this.notifications.set([]);
126
+ }
127
+ notifyArrival() {
128
+ this.hasNewNotification.set(true);
129
+ setTimeout(() => {
130
+ this.hasNewNotification.set(false);
131
+ }, 2000);
132
+ }
133
+ clearRoom(chat) {
134
+ this.notifications.update(list => list.filter(n => !(n.entityId === chat.entityId &&
135
+ n.eventType === chat.eventType)));
136
+ this.hasNewNotification.set(this.notifications().length > 1);
137
+ }
138
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SocketService, deps: [{ token: CHAT_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
139
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SocketService, providedIn: 'root' }); }
140
+ }
141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SocketService, decorators: [{
142
+ type: Injectable,
143
+ args: [{ providedIn: 'root' }]
144
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
145
+ type: Inject,
146
+ args: [CHAT_CONFIG]
147
+ }] }] });
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0LXdpZGdldC9zcmMvbGliL2NvcmUvc2VydmljZXMvc29ja2V0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHVCQUF1QixDQUFDOztBQUtsRCxNQUFNLE9BQU8sYUFBYTtJQVN0QixZQUF5QyxNQUFrQjtRQUFsQixXQUFNLEdBQU4sTUFBTSxDQUFZO1FBTm5ELGNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBbUMsQ0FBQztRQUMvRCxrQkFBYSxHQUFHLE1BQU0sQ0FBUSxFQUFFLENBQUMsQ0FBQztRQUNsQyx1QkFBa0IsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0Isc0JBQWlCLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsMkJBQXNCLEdBQUcsQ0FBQyxDQUFDO1FBR3hDLGtCQUFrQjtJQUN0QixDQUFDO0lBRUQsT0FBTyxDQUFDLE1BQWM7UUFDbEIsdUVBQXVFO1FBQ3ZFLElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQ3hELE9BQU8sQ0FBQyxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztZQUNqRSxPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsTUFBTSxDQUFDLENBQUM7UUFFNUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ3RCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JB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QUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsYUFBYTtRQUNULElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFzQjtRQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUM3QixJQUFJLENBQUMsTUFBTSxDQUNQLENBQUMsQ0FBQyxFQUFFLENBQ0EsQ0FBQyxDQUNHLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFFBQVE7WUFDNUIsQ0FBQyxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUNqQyxDQUNSLENBQ0osQ0FBQztRQUNGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDOytHQXhLUSxhQUFhLGtCQVNGLFdBQVc7bUhBVHRCLGFBQWEsY0FERCxNQUFNOzs0RkFDbEIsYUFBYTtrQkFEekIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUM7OzBCQVVmLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge0NIQVRfQ09ORklHfSBmcm9tIFwiLi4vY29uZmlnL2NoYXQudG9rZW5zXCI7XHJcbmltcG9ydCB7Q2hhdENvbmZpZ30gZnJvbSBcIi4uL2NvbmZpZy9jaGF0LWNvbmZpZ1wiO1xyXG5pbXBvcnQge0NoYXROb3RpZmljYXRpb259IGZyb20gXCIuLi9tb2RlbHMvbm90aWZpY2F0aW9uLm1vZGVsXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcclxuZXhwb3J0IGNsYXNzIFNvY2tldFNlcnZpY2Uge1xyXG5cclxuICAgIHByaXZhdGUgc29ja2V0ITogV2ViU29ja2V0O1xyXG4gICAgcHJpdmF0ZSBsaXN0ZW5lcnMgPSBuZXcgTWFwPHN0cmluZywgKChkYXRhOiBhbnkpID0+IHZvaWQpW10+KCk7XHJcbiAgICBub3RpZmljYXRpb25zID0gc2lnbmFsPGFueVtdPihbXSk7XHJcbiAgICBoYXNOZXdOb3RpZmljYXRpb24gPSBzaWduYWwoZmFsc2UpO1xyXG4gICAgcHJpdmF0ZSByZWNvbm5lY3RBdHRlbXB0cyA9IDA7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IE1BWF9SRUNPTk5FQ1RfQVRURU1QVFMgPSA1O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoQ0hBVF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBDaGF0Q29uZmlnKSB7XHJcbiAgICAgICAgLy8gdGhpcy5jb25uZWN0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29ubmVjdCh1c2VySWQ6IHN0cmluZykge1xyXG4gICAgICAgIC8vIHRoaXMuc29ja2V0ID0gbmV3IFdlYlNvY2tldCgnd3NzOi8vY29yZXVhdGFydGhrb3NoLnNhcmphay5jb20vd3MvJyk7XHJcbiAgICAgICAgaWYgKHRoaXMucmVjb25uZWN0QXR0ZW1wdHMgPj0gdGhpcy5NQVhfUkVDT05ORUNUX0FUVEVNUFRTKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1tXU10gTWF4IHJlY29ubmVjdCBhdHRlbXB0cyByZWFjaGVkLiBHaXZpbmcgdXAuJyk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuc29ja2V0ID0gbmV3IFdlYlNvY2tldChgJHt0aGlzLmNvbmZpZy53c0Jhc2VVcmx9L3dzL2ApO1xyXG5cclxuICAgICAgICB0aGlzLnNvY2tldC5vbm9wZW4gPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdbV1NdIENvbm5lY3RlZCcpO1xyXG4gICAgICAgICAgICB0aGlzLnJlY29ubmVjdEF0dGVtcHRzID0gMDtcclxuICAgICAgICAgICAgdGhpcy5qb2luVXNlckNoYW5uZWwodXNlcklkKTtcclxuICAgICAgICAgICAgdGhpcy5vbignbm90aWZpY2F0aW9uQ3JlYXRlZCcpLnN1YnNjcmliZSgobm90aWZpY2F0aW9uOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdMaXN0ZW5pbmcgZm9yIG5vdGlmaWNhdGlvbnMnLCBub3RpZmljYXRpb24pO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zLnVwZGF0ZShsaXN0ID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCByb29tSWQgPSBub3RpZmljYXRpb24uZW50aXR5SWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZXZlbnRUeXBlID0gbm90aWZpY2F0aW9uLmV2ZW50VHlwZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8g8J+UkSBEZWR1cCBrZXkgPSByb29tICsgZXZlbnRUeXBlXHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZXhpc3RzID0gbGlzdC5zb21lKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuID0+IG4uZW50aXR5SWQgPT09IHJvb21JZCAmJiBuLmV2ZW50VHlwZSA9PT0gZXZlbnRUeXBlXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8g4p2MIEFscmVhZHkgZXhpc3RzIOKGkiBkbyBub3RoaW5nXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGV4aXN0cykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGlzdDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIOKchSBOZXcgKHJvb20gKyBldmVudFR5cGUpIGNvbWJpbmF0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ubm90aWZpY2F0aW9uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5yZWFkQ291bnQ6IDFcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgLi4ubGlzdFxyXG4gICAgICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHRoaXMubm90aWZ5QXJyaXZhbCgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLnNvY2tldC5vbm1lc3NhZ2UgPSAoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgbXNnOiBhbnkgPSBKU09OLnBhcnNlKGV2ZW50LmRhdGEpO1xyXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVycyA9IHRoaXMubGlzdGVuZXJzLmdldChtc2cuZXZlbnQpIHx8IFtdO1xyXG4gICAgICAgICAgICBoYW5kbGVycy5mb3JFYWNoKGggPT4gaChtc2cuZGF0YSkpO1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuc29ja2V0Lm9uZXJyb3IgPSAoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1tXU10gRXJyb3InLCBlcnIpO1xyXG4gICAgICAgICAgICB0aGlzLnNvY2tldC5jbG9zZSgpO1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuc29ja2V0Lm9uY2xvc2UgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMucmVjb25uZWN0QXR0ZW1wdHMrKztcclxuICAgICAgICAgICAgY29uc29sZS53YXJuKCdbV1NdIERpc2Nvbm5lY3RlZCDigJMgcmVjb25uZWN0aW5nLi4uJyk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnJlY29ubmVjdEF0dGVtcHRzIDwgdGhpcy5NQVhfUkVDT05ORUNUX0FUVEVNUFRTKSB7XHJcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY29ubmVjdCh1c2VySWQpLCAyMDAwKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1tXU10gU3RvcHBlZCByZWNvbm5lY3RpbmcuJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIGVtaXQoZXZlbnQ6IHN0cmluZywgZGF0YT86IGFueSkge1xyXG4gICAgICAgIGNvbnN0IHBheWxvYWQ6IGFueSA9IHtldmVudCwgZGF0YX07XHJcbiAgICAgICAgdGhpcy5zb2NrZXQuc2VuZChKU09OLnN0cmluZ2lmeShwYXlsb2FkKSk7XHJcbiAgICB9XHJcblxyXG4gICAgam9pblJvb20ocm9vbUlkOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmVtaXQoJ2pvaW5Sb29tJywgcm9vbUlkKTtcclxuICAgIH1cclxuXHJcbiAgICBqb2luVXNlckNoYW5uZWwodXNlcklkOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmVtaXQoJ2pvaW5Vc2VyQ2hhbm5lbCcsIHVzZXJJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgc2VuZE1lc3NhZ2UoZGF0YTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5lbWl0KCdzZW5kTWVzc2FnZScsIGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIG1lc3NhZ2VTZWVuKGRhdGE6IHsgY2hhdFJvb21JZDogc3RyaW5nOyB1c2VySWQ6IHN0cmluZyB9KSB7XHJcbiAgICAgICAgdGhpcy5lbWl0KCdtZXNzYWdlU2VlbicsIGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uPFQ+KGV2ZW50OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFQ+IHtcclxuICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoc3ViID0+IHtcclxuICAgICAgICAgICAgY29uc3QgaGFuZGxlciA9IChkYXRhOiBUKSA9PiBzdWIubmV4dChkYXRhKTtcclxuXHJcbiAgICAgICAgICAgIGlmICghdGhpcy5saXN0ZW5lcnMuaGFzKGV2ZW50KSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5saXN0ZW5lcnMuc2V0KGV2ZW50LCBbXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5saXN0ZW5lcnMuZ2V0KGV2ZW50KSEucHVzaChoYW5kbGVyKTtcclxuXHJcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBhcnIgPSB0aGlzLmxpc3RlbmVycy5nZXQoZXZlbnQpIHx8IFtdO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5saXN0ZW5lcnMuc2V0KGV2ZW50LCBhcnIuZmlsdGVyKGggPT4gaCAhPT0gaGFuZGxlcikpO1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG9uTmV3TWVzc2FnZShjYjogKG1zZzogYW55KSA9PiB2b2lkKSB7XHJcbiAgICAgICAgdGhpcy5hZGRMaXN0ZW5lcignbmV3TWVzc2FnZScsIGNiKTtcclxuICAgIH1cclxuXHJcbiAgICBvZmZOZXdNZXNzYWdlKGNiPzogKG1zZzogYW55KSA9PiB2b2lkKSB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcignbmV3TWVzc2FnZScsIGNiKTtcclxuICAgIH1cclxuXHJcbiAgICBvbk1lc3NhZ2VTZWVuKGNiOiAoZGF0YTogeyBjaGF0Um9vbUlkOiBzdHJpbmc7IHVzZXJJZDogc3RyaW5nIH0pID0+IHZvaWQpIHtcclxuICAgICAgICB0aGlzLmFkZExpc3RlbmVyKCdtZXNzYWdlU2VlbicsIGNiKTtcclxuICAgIH1cclxuXHJcbiAgICBvZmZNZXNzYWdlU2VlbihjYj86IChkYXRhOiBhbnkpID0+IHZvaWQpIHtcclxuICAgICAgICB0aGlzLnJlbW92ZUxpc3RlbmVyKCdtZXNzYWdlU2VlbicsIGNiKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFkZExpc3RlbmVyKGV2ZW50OiBzdHJpbmcsIGNiOiAoZGF0YTogYW55KSA9PiB2b2lkKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmxpc3RlbmVycy5oYXMoZXZlbnQpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubGlzdGVuZXJzLnNldChldmVudCwgW10pO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmxpc3RlbmVycy5nZXQoZXZlbnQpIS5wdXNoKGNiKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHJlbW92ZUxpc3RlbmVyKGV2ZW50OiBzdHJpbmcsIGNiPzogKGRhdGE6IGFueSkgPT4gdm9pZCkge1xyXG4gICAgICAgIGlmICghY2IpIHtcclxuICAgICAgICAgICAgdGhpcy5saXN0ZW5lcnMuZGVsZXRlKGV2ZW50KTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBhcnIgPSB0aGlzLmxpc3RlbmVycy5nZXQoZXZlbnQpIHx8IFtdO1xyXG4gICAgICAgIHRoaXMubGlzdGVuZXJzLnNldChldmVudCwgYXJyLmZpbHRlcihoID0+IGggIT09IGNiKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJBbGwoKSB7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zLnNldChbXSk7XHJcbiAgICB9XHJcblxyXG4gICAgbm90aWZ5QXJyaXZhbCgpIHtcclxuICAgICAgICB0aGlzLmhhc05ld05vdGlmaWNhdGlvbi5zZXQodHJ1ZSk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaGFzTmV3Tm90aWZpY2F0aW9uLnNldChmYWxzZSk7XHJcbiAgICAgICAgfSwgMjAwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJSb29tKGNoYXQ6IENoYXROb3RpZmljYXRpb24pIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnMudXBkYXRlKGxpc3QgPT5cclxuICAgICAgICAgICAgbGlzdC5maWx0ZXIoXHJcbiAgICAgICAgICAgICAgICBuID0+XHJcbiAgICAgICAgICAgICAgICAgICAgIShcclxuICAgICAgICAgICAgICAgICAgICAgICAgbi5lbnRpdHlJZCA9PT0gY2hhdC5lbnRpdHlJZCAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuLmV2ZW50VHlwZSA9PT0gY2hhdC5ldmVudFR5cGVcclxuICAgICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuaGFzTmV3Tm90aWZpY2F0aW9uLnNldCh0aGlzLm5vdGlmaWNhdGlvbnMoKS5sZW5ndGggPiAxKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,10 @@
1
+ /*
2
+ * Public API Surface of chat-widget
3
+ */
4
+ export * from './lib/chat-widget.module';
5
+ export * from './lib/chat-launcher/chat-launcher.component';
6
+ export * from './lib/all-chats/all-chats.component';
7
+ export * from './lib/core/models/chat.models';
8
+ export * from './lib/chat-widget-notification/chat-widget-notification.component';
9
+ export * from './lib/chat-widget.service';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NoYXQtd2lkZ2V0L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG1FQUFtRSxDQUFBO0FBQ2pGLGNBQWMsMkJBQTJCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgY2hhdC13aWRnZXRcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGF0LXdpZGdldC5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGF0LWxhdW5jaGVyL2NoYXQtbGF1bmNoZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYWxsLWNoYXRzL2FsbC1jaGF0cy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL21vZGVscy9jaGF0Lm1vZGVscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoYXQtd2lkZ2V0LW5vdGlmaWNhdGlvbi9jaGF0LXdpZGdldC1ub3RpZmljYXRpb24uY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jaGF0LXdpZGdldC5zZXJ2aWNlJ1xyXG5cclxuIl19