@muraai/mnl-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 (88) hide show
  1. package/README.md +24 -0
  2. package/esm2020/lib/chat.module.mjs +87 -0
  3. package/esm2020/lib/components/ng-chat/ng-chat.component.mjs +588 -0
  4. package/esm2020/lib/components/ng-chat-friends-list/ng-chat-friends-list.component.mjs +128 -0
  5. package/esm2020/lib/components/ng-chat-options/ng-chat-options.component.mjs +29 -0
  6. package/esm2020/lib/components/ng-chat-window/ng-chat-window.component.mjs +247 -0
  7. package/esm2020/lib/core/chat-adapter.mjs +18 -0
  8. package/esm2020/lib/core/chat-controller.mjs +2 -0
  9. package/esm2020/lib/core/chat-group-adapter.mjs +2 -0
  10. package/esm2020/lib/core/chat-option.mjs +2 -0
  11. package/esm2020/lib/core/chat-participant-status-descriptor.mjs +6 -0
  12. package/esm2020/lib/core/chat-participant-status.enum.mjs +8 -0
  13. package/esm2020/lib/core/chat-participant-type.enum.mjs +6 -0
  14. package/esm2020/lib/core/chat-participant.mjs +2 -0
  15. package/esm2020/lib/core/default-file-upload-adapter.mjs +43 -0
  16. package/esm2020/lib/core/file-upload-adapter.mjs +2 -0
  17. package/esm2020/lib/core/group.mjs +14 -0
  18. package/esm2020/lib/core/guid.mjs +11 -0
  19. package/esm2020/lib/core/localization.mjs +2 -0
  20. package/esm2020/lib/core/message-counter.mjs +25 -0
  21. package/esm2020/lib/core/message-type.enum.mjs +7 -0
  22. package/esm2020/lib/core/message.mjs +7 -0
  23. package/esm2020/lib/core/paged-history-chat-adapter.mjs +9 -0
  24. package/esm2020/lib/core/participant-metadata.mjs +6 -0
  25. package/esm2020/lib/core/participant-response.mjs +3 -0
  26. package/esm2020/lib/core/scroll-direction.enum.mjs +6 -0
  27. package/esm2020/lib/core/theme.enum.mjs +7 -0
  28. package/esm2020/lib/core/user.mjs +7 -0
  29. package/esm2020/lib/core/window.mjs +20 -0
  30. package/esm2020/lib/firstLetter.pipe.mjs +20 -0
  31. package/esm2020/lib/material.module.mjs +50 -0
  32. package/esm2020/lib/pipes/emojify.pipe.mjs +41 -0
  33. package/esm2020/lib/pipes/group-message-display-name.pipe.mjs +24 -0
  34. package/esm2020/lib/pipes/linkfy.pipe.mjs +34 -0
  35. package/esm2020/lib/pipes/sanitize.pipe.mjs +21 -0
  36. package/esm2020/lib/services/chat.service.mjs +14 -0
  37. package/esm2020/muraai-mnl-chat.mjs +5 -0
  38. package/esm2020/public-api.mjs +25 -0
  39. package/fesm2015/muraai-mnl-chat.mjs +1426 -0
  40. package/fesm2015/muraai-mnl-chat.mjs.map +1 -0
  41. package/fesm2020/muraai-mnl-chat.mjs +1424 -0
  42. package/fesm2020/muraai-mnl-chat.mjs.map +1 -0
  43. package/index.d.ts +5 -0
  44. package/lib/chat.module.d.ts +24 -0
  45. package/lib/components/ng-chat/ng-chat.component.d.ts +130 -0
  46. package/lib/components/ng-chat-friends-list/ng-chat-friends-list.component.d.ts +45 -0
  47. package/lib/components/ng-chat-options/ng-chat-options.component.d.ts +12 -0
  48. package/lib/components/ng-chat-window/ng-chat-window.component.d.ts +65 -0
  49. package/lib/core/chat-adapter.d.ts +15 -0
  50. package/lib/core/chat-controller.d.ts +6 -0
  51. package/lib/core/chat-group-adapter.d.ts +4 -0
  52. package/lib/core/chat-option.d.ts +9 -0
  53. package/lib/core/chat-participant-status-descriptor.d.ts +3 -0
  54. package/lib/core/chat-participant-status.enum.d.ts +6 -0
  55. package/lib/core/chat-participant-type.enum.d.ts +4 -0
  56. package/lib/core/chat-participant.d.ts +9 -0
  57. package/lib/core/default-file-upload-adapter.d.ts +14 -0
  58. package/lib/core/file-upload-adapter.d.ts +5 -0
  59. package/lib/core/group.d.ts +13 -0
  60. package/lib/core/guid.d.ts +3 -0
  61. package/lib/core/localization.d.ts +15 -0
  62. package/lib/core/message-counter.d.ts +10 -0
  63. package/lib/core/message-type.enum.d.ts +5 -0
  64. package/lib/core/message.d.ts +10 -0
  65. package/lib/core/paged-history-chat-adapter.d.ts +10 -0
  66. package/lib/core/participant-metadata.d.ts +3 -0
  67. package/lib/core/participant-response.d.ts +6 -0
  68. package/lib/core/scroll-direction.enum.d.ts +4 -0
  69. package/lib/core/theme.enum.d.ts +5 -0
  70. package/lib/core/user.d.ts +10 -0
  71. package/lib/core/window.d.ts +13 -0
  72. package/lib/firstLetter.pipe.d.ts +7 -0
  73. package/lib/material.module.d.ts +14 -0
  74. package/lib/pipes/emojify.pipe.d.ts +7 -0
  75. package/lib/pipes/group-message-display-name.pipe.d.ts +9 -0
  76. package/lib/pipes/linkfy.pipe.d.ts +7 -0
  77. package/lib/pipes/sanitize.pipe.d.ts +10 -0
  78. package/lib/services/chat.service.d.ts +6 -0
  79. package/package.json +31 -0
  80. package/public-api.d.ts +21 -0
  81. package/src/assets/icons.css +140 -0
  82. package/src/assets/loading-spinner.css +59 -0
  83. package/src/assets/ng-chat.component.default.css +106 -0
  84. package/src/assets/notification.png +0 -0
  85. package/src/assets/notification.wav +0 -0
  86. package/src/assets/themes/ng-chat.theme.dark.scss +71 -0
  87. package/src/assets/themes/ng-chat.theme.default.scss +63 -0
  88. package/src/assets/user.png +0 -0
@@ -0,0 +1,18 @@
1
+ export class ChatAdapter {
2
+ constructor() {
3
+ // ### Abstract adapter methods ###
4
+ // Event handlers
5
+ /** @internal */
6
+ this.friendsListChangedHandler = (participantsResponse) => { };
7
+ /** @internal */
8
+ this.messageReceivedHandler = (participant, message) => { };
9
+ }
10
+ // ### Adapter/Chat income/ingress events ###
11
+ onFriendsListChanged(participantsResponse) {
12
+ this.friendsListChangedHandler(participantsResponse);
13
+ }
14
+ onMessageReceived(participant, message) {
15
+ this.messageReceivedHandler(participant, message);
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvY2hhdC1hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sT0FBZ0IsV0FBVztJQUFqQztRQUVJLG1DQUFtQztRQW9CbkMsaUJBQWlCO1FBQ2pCLGdCQUFnQjtRQUNoQiw4QkFBeUIsR0FBMkQsQ0FBQyxvQkFBMkMsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3hJLGdCQUFnQjtRQUNoQiwyQkFBc0IsR0FBOEQsQ0FBQyxXQUE2QixFQUFFLE9BQWdCLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUNoSixDQUFDO0lBakJHLDZDQUE2QztJQUV0QyxvQkFBb0IsQ0FBQyxvQkFBMkM7UUFFbkUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVNLGlCQUFpQixDQUFDLFdBQTZCLEVBQUUsT0FBZ0I7UUFFcEUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBT0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNZXNzYWdlIH0gZnJvbSBcIi4vbWVzc2FnZVwiO1xuLy8gaW1wb3J0IHsgVXNlciB9IGZyb20gXCIuL3VzZXJcIjtcbmltcG9ydCB7IFBhcnRpY2lwYW50UmVzcG9uc2UgfSBmcm9tIFwiLi9wYXJ0aWNpcGFudC1yZXNwb25zZVwiO1xuaW1wb3J0IHsgSUNoYXRQYXJ0aWNpcGFudCB9IGZyb20gJy4vY2hhdC1wYXJ0aWNpcGFudCc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDaGF0QWRhcHRlclxue1xuICAgIC8vICMjIyBBYnN0cmFjdCBhZGFwdGVyIG1ldGhvZHMgIyMjXG5cbiAgICBwdWJsaWMgYWJzdHJhY3QgbGlzdEZyaWVuZHMoKTogT2JzZXJ2YWJsZTxQYXJ0aWNpcGFudFJlc3BvbnNlW10+O1xuICAgIFxuICAgIHB1YmxpYyBhYnN0cmFjdCBnZXRNZXNzYWdlSGlzdG9yeShkZXN0aW5hdGFyeUlkOiBhbnkpOiBPYnNlcnZhYmxlPE1lc3NhZ2VbXT47XG5cbiAgICBwdWJsaWMgYWJzdHJhY3Qgc2VuZE1lc3NhZ2UobWVzc2FnZTogTWVzc2FnZSk6IHZvaWQ7XG5cbiAgICAvLyAjIyMgQWRhcHRlci9DaGF0IGluY29tZS9pbmdyZXNzIGV2ZW50cyAjIyNcblxuICAgIHB1YmxpYyBvbkZyaWVuZHNMaXN0Q2hhbmdlZChwYXJ0aWNpcGFudHNSZXNwb25zZTogUGFydGljaXBhbnRSZXNwb25zZVtdKTogdm9pZFxuICAgIHtcbiAgICAgICAgdGhpcy5mcmllbmRzTGlzdENoYW5nZWRIYW5kbGVyKHBhcnRpY2lwYW50c1Jlc3BvbnNlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25NZXNzYWdlUmVjZWl2ZWQocGFydGljaXBhbnQ6IElDaGF0UGFydGljaXBhbnQsIG1lc3NhZ2U6IE1lc3NhZ2UpOiB2b2lkXG4gICAge1xuICAgICAgICB0aGlzLm1lc3NhZ2VSZWNlaXZlZEhhbmRsZXIocGFydGljaXBhbnQsIG1lc3NhZ2UpO1xuICAgIH1cbiAgICBcbiAgICAvLyBFdmVudCBoYW5kbGVyc1xuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBmcmllbmRzTGlzdENoYW5nZWRIYW5kbGVyOiAocGFydGljaXBhbnRzUmVzcG9uc2U6IFBhcnRpY2lwYW50UmVzcG9uc2VbXSkgPT4gdm9pZCAgPSAocGFydGljaXBhbnRzUmVzcG9uc2U6IFBhcnRpY2lwYW50UmVzcG9uc2VbXSkgPT4ge307XG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIG1lc3NhZ2VSZWNlaXZlZEhhbmRsZXI6IChwYXJ0aWNpcGFudDogSUNoYXRQYXJ0aWNpcGFudCwgbWVzc2FnZTogTWVzc2FnZSkgPT4gdm9pZCA9IChwYXJ0aWNpcGFudDogSUNoYXRQYXJ0aWNpcGFudCwgbWVzc2FnZTogTWVzc2FnZSkgPT4ge307XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvY2hhdC1jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdENvbnRyb2xsZXJcbntcbiAgICB0cmlnZ2VyT3BlbkNoYXRXaW5kb3codXNlcjogVXNlcik6IHZvaWQ7XG5cbiAgICB0cmlnZ2VyQ2xvc2VDaGF0V2luZG93KHVzZXJJZDogYW55KTogdm9pZDtcblxuICAgIHRyaWdnZXJUb2dnbGVDaGF0V2luZG93VmlzaWJpbGl0eSh1c2VySWQ6IGFueSk6IHZvaWQ7XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1ncm91cC1hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvY2hhdC1ncm91cC1hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHcm91cCB9IGZyb20gXCIuL2dyb3VwXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNoYXRHcm91cEFkYXB0ZXJcbntcbiAgICBncm91cENyZWF0ZWQoZ3JvdXA6IEdyb3VwKTogdm9pZDtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1vcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY29yZS9jaGF0LW9wdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV2luZG93IH0gZnJvbSAnLi4vY29yZS93aW5kb3cnO1xuaW1wb3J0IHsgSUNoYXRQYXJ0aWNpcGFudCB9IGZyb20gJy4uL2NvcmUvY2hhdC1wYXJ0aWNpcGFudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNoYXRPcHRpb25cbntcbiAgICBpc0FjdGl2ZTogYm9vbGVhbjtcbiAgICBkaXNwbGF5TGFiZWw6IHN0cmluZztcbiAgICBjaGF0dGluZ1RvOiBXaW5kb3c7XG4gICAgYWN0aW9uPzogKGNoYXR0aW5nVG86IFdpbmRvdykgPT4gdm9pZDtcbiAgICB2YWxpZGF0ZUNvbnRleHQ6IChwYXJ0aWNpcGFudDogSUNoYXRQYXJ0aWNpcGFudCkgPT4gYm9vbGVhbjtcbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ import { ChatParticipantStatus } from './chat-participant-status.enum';
2
+ export function chatParticipantStatusDescriptor(status, localization) {
3
+ const currentStatus = ChatParticipantStatus[status].toString().toLowerCase();
4
+ return localization.statusDescription[currentStatus];
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1wYXJ0aWNpcGFudC1zdGF0dXMtZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL2NoYXQtcGFydGljaXBhbnQtc3RhdHVzLWRlc2NyaXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHdkUsTUFBTSxVQUFVLCtCQUErQixDQUFDLE1BQTZCLEVBQUUsWUFBMEI7SUFDckcsTUFBTSxhQUFhLEdBQUcscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFN0UsT0FBTyxZQUFZLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDekQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXRQYXJ0aWNpcGFudFN0YXR1cyB9IGZyb20gJy4vY2hhdC1wYXJ0aWNpcGFudC1zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBMb2NhbGl6YXRpb24gfSBmcm9tICcuL2xvY2FsaXphdGlvbidcbiBcbmV4cG9ydCBmdW5jdGlvbiBjaGF0UGFydGljaXBhbnRTdGF0dXNEZXNjcmlwdG9yKHN0YXR1czogQ2hhdFBhcnRpY2lwYW50U3RhdHVzLCBsb2NhbGl6YXRpb246IExvY2FsaXphdGlvbikge1xuICAgIGNvbnN0IGN1cnJlbnRTdGF0dXMgPSBDaGF0UGFydGljaXBhbnRTdGF0dXNbc3RhdHVzXS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7XG4gICAgXG4gICAgcmV0dXJuIGxvY2FsaXphdGlvbi5zdGF0dXNEZXNjcmlwdGlvbltjdXJyZW50U3RhdHVzXTtcbn0iXX0=
@@ -0,0 +1,8 @@
1
+ export var ChatParticipantStatus;
2
+ (function (ChatParticipantStatus) {
3
+ ChatParticipantStatus[ChatParticipantStatus["Online"] = 0] = "Online";
4
+ ChatParticipantStatus[ChatParticipantStatus["Busy"] = 1] = "Busy";
5
+ ChatParticipantStatus[ChatParticipantStatus["Away"] = 2] = "Away";
6
+ ChatParticipantStatus[ChatParticipantStatus["Offline"] = 3] = "Offline";
7
+ })(ChatParticipantStatus || (ChatParticipantStatus = {}));
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1wYXJ0aWNpcGFudC1zdGF0dXMuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL2NoYXQtcGFydGljaXBhbnQtc3RhdHVzLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVkscUJBTVg7QUFORCxXQUFZLHFCQUFxQjtJQUU3QixxRUFBTSxDQUFBO0lBQ04saUVBQUksQ0FBQTtJQUNKLGlFQUFJLENBQUE7SUFDSix1RUFBTyxDQUFBO0FBQ1gsQ0FBQyxFQU5XLHFCQUFxQixLQUFyQixxQkFBcUIsUUFNaEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDaGF0UGFydGljaXBhbnRTdGF0dXNcbntcbiAgICBPbmxpbmUsXG4gICAgQnVzeSxcbiAgICBBd2F5LFxuICAgIE9mZmxpbmVcbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export var ChatParticipantType;
2
+ (function (ChatParticipantType) {
3
+ ChatParticipantType[ChatParticipantType["User"] = 0] = "User";
4
+ ChatParticipantType[ChatParticipantType["Group"] = 1] = "Group";
5
+ })(ChatParticipantType || (ChatParticipantType = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1wYXJ0aWNpcGFudC10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY29yZS9jaGF0LXBhcnRpY2lwYW50LXR5cGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxtQkFJWDtBQUpELFdBQVksbUJBQW1CO0lBRTNCLDZEQUFJLENBQUE7SUFDSiwrREFBSyxDQUFBO0FBQ1QsQ0FBQyxFQUpXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFJOUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDaGF0UGFydGljaXBhbnRUeXBlXG57XG4gICAgVXNlcixcbiAgICBHcm91cFxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1wYXJ0aWNpcGFudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL2NoYXQtcGFydGljaXBhbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXRQYXJ0aWNpcGFudFN0YXR1cyB9IGZyb20gXCIuL2NoYXQtcGFydGljaXBhbnQtc3RhdHVzLmVudW1cIjtcbmltcG9ydCB7IENoYXRQYXJ0aWNpcGFudFR5cGUgfSBmcm9tIFwiLi9jaGF0LXBhcnRpY2lwYW50LXR5cGUuZW51bVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDaGF0UGFydGljaXBhbnQge1xuICAgIHJlYWRvbmx5IHBhcnRpY2lwYW50VHlwZTogQ2hhdFBhcnRpY2lwYW50VHlwZTtcbiAgICByZWFkb25seSBpZDogYW55O1xuICAgIHJlYWRvbmx5IHN0YXR1czogQ2hhdFBhcnRpY2lwYW50U3RhdHVzO1xuICAgIHJlYWRvbmx5IGF2YXRhcjogc3RyaW5nfG51bGw7XG4gICAgcmVhZG9ubHkgZGlzcGxheU5hbWU6IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,43 @@
1
+ /*import { IFileUploadAdapter } from './file-upload-adapter';
2
+ import { HttpClient, HttpRequest, HttpEventType, HttpResponse, HttpHeaders } from '@angular/common/http';
3
+ import { Observable, Subject } from 'rxjs';
4
+ import { User } from './user';
5
+ import { Message } from './message';*/
6
+ export class DefaultFileUploadAdapter {
7
+ /**
8
+ * @summary Basic file upload adapter implementation for HTTP request form file consumption
9
+ * @param _serverEndpointUrl The API endpoint full qualified address that will receive a form file to process and return the metadata.
10
+ */
11
+ constructor(_serverEndpointUrl, _http) {
12
+ this._serverEndpointUrl = _serverEndpointUrl;
13
+ this._http = _http;
14
+ }
15
+ uploadFile(file, participantId) {
16
+ const formData = new FormData();
17
+ //formData.append('ng-chat-sender-userid', currentUserId);
18
+ formData.append('ng-chat-participant-id', participantId);
19
+ formData.append('file', file, file.name);
20
+ return this._http.post(this._serverEndpointUrl, formData);
21
+ // TODO: Leaving this if we want to track upload progress in detail in the future. Might need a different Subject generic type wrapper
22
+ // const fileRequest = new HttpRequest('POST', this._serverEndpointUrl, formData, {
23
+ // reportProgress: true
24
+ // });
25
+ // const uploadProgress = new Subject<number>();
26
+ // const uploadStatus = uploadProgress.asObservable();
27
+ //const responsePromise = new Subject<Message>();
28
+ // this._http
29
+ // .request(fileRequest)
30
+ // .subscribe(event => {
31
+ // // if (event.type == HttpEventType.UploadProgress)
32
+ // // {
33
+ // // const percentDone = Math.round(100 * event.loaded / event.total);
34
+ // // uploadProgress.next(percentDone);
35
+ // // }
36
+ // // else if (event instanceof HttpResponse)
37
+ // // {
38
+ // // uploadProgress.complete();
39
+ // // }
40
+ // });
41
+ }
42
+ }
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1maWxlLXVwbG9hZC1hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvZGVmYXVsdC1maWxlLXVwbG9hZC1hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBOzs7O3NDQUlzQztBQUV0QyxNQUFNLE9BQU8sd0JBQXdCO0lBRWpDOzs7T0FHRztJQUNILFlBQW9CLGtCQUEwQixFQUFVLEtBQWlCO1FBQXJELHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQVk7SUFDekUsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFVLEVBQUUsYUFBa0I7UUFDckMsTUFBTSxRQUFRLEdBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUUxQywwREFBMEQ7UUFDMUQsUUFBUSxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN6RCxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQVUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRW5FLHNJQUFzSTtRQUN0SSxtRkFBbUY7UUFDbkYsMkJBQTJCO1FBQzNCLE1BQU07UUFFTixnREFBZ0Q7UUFDaEQsc0RBQXNEO1FBRXRELGlEQUFpRDtRQUVqRCxhQUFhO1FBQ2IsNEJBQTRCO1FBQzVCLDRCQUE0QjtRQUM1Qiw2REFBNkQ7UUFDN0QsZUFBZTtRQUNmLG1GQUFtRjtRQUVuRixtREFBbUQ7UUFDbkQsZUFBZTtRQUNmLHFEQUFxRDtRQUNyRCxlQUFlO1FBRWYsNENBQTRDO1FBQzVDLGVBQWU7UUFDZixVQUFVO0lBQ2QsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUZpbGVVcGxvYWRBZGFwdGVyIH0gZnJvbSAnLi9maWxlLXVwbG9hZC1hZGFwdGVyJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNZXNzYWdlIH0gZnJvbSAnLi9tZXNzYWdlJztcblxuLyppbXBvcnQgeyBJRmlsZVVwbG9hZEFkYXB0ZXIgfSBmcm9tICcuL2ZpbGUtdXBsb2FkLWFkYXB0ZXInO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFJlcXVlc3QsIEh0dHBFdmVudFR5cGUsIEh0dHBSZXNwb25zZSwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyJztcbmltcG9ydCB7IE1lc3NhZ2UgfSBmcm9tICcuL21lc3NhZ2UnOyovXG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0RmlsZVVwbG9hZEFkYXB0ZXIgaW1wbGVtZW50cyBJRmlsZVVwbG9hZEFkYXB0ZXJcbntcbiAgICAvKipcbiAgICAgKiBAc3VtbWFyeSBCYXNpYyBmaWxlIHVwbG9hZCBhZGFwdGVyIGltcGxlbWVudGF0aW9uIGZvciBIVFRQIHJlcXVlc3QgZm9ybSBmaWxlIGNvbnN1bXB0aW9uXG4gICAgICogQHBhcmFtIF9zZXJ2ZXJFbmRwb2ludFVybCBUaGUgQVBJIGVuZHBvaW50IGZ1bGwgcXVhbGlmaWVkIGFkZHJlc3MgdGhhdCB3aWxsIHJlY2VpdmUgYSBmb3JtIGZpbGUgdG8gcHJvY2VzcyBhbmQgcmV0dXJuIHRoZSBtZXRhZGF0YS5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zZXJ2ZXJFbmRwb2ludFVybDogc3RyaW5nLCBwcml2YXRlIF9odHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgfVxuXG4gICAgdXBsb2FkRmlsZShmaWxlOiBGaWxlLCBwYXJ0aWNpcGFudElkOiBhbnkpOiBPYnNlcnZhYmxlPE1lc3NhZ2U+IHtcbiAgICAgICAgY29uc3QgZm9ybURhdGE6IEZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG5cbiAgICAgICAgLy9mb3JtRGF0YS5hcHBlbmQoJ25nLWNoYXQtc2VuZGVyLXVzZXJpZCcsIGN1cnJlbnRVc2VySWQpO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoJ25nLWNoYXQtcGFydGljaXBhbnQtaWQnLCBwYXJ0aWNpcGFudElkKTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSwgZmlsZS5uYW1lKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cC5wb3N0PE1lc3NhZ2U+KHRoaXMuX3NlcnZlckVuZHBvaW50VXJsLCBmb3JtRGF0YSk7XG5cbiAgICAgICAgLy8gVE9ETzogTGVhdmluZyB0aGlzIGlmIHdlIHdhbnQgdG8gdHJhY2sgdXBsb2FkIHByb2dyZXNzIGluIGRldGFpbCBpbiB0aGUgZnV0dXJlLiBNaWdodCBuZWVkIGEgZGlmZmVyZW50IFN1YmplY3QgZ2VuZXJpYyB0eXBlIHdyYXBwZXJcbiAgICAgICAgLy8gY29uc3QgZmlsZVJlcXVlc3QgPSBuZXcgSHR0cFJlcXVlc3QoJ1BPU1QnLCB0aGlzLl9zZXJ2ZXJFbmRwb2ludFVybCwgZm9ybURhdGEsIHtcbiAgICAgICAgLy8gICAgIHJlcG9ydFByb2dyZXNzOiB0cnVlXG4gICAgICAgIC8vIH0pO1xuXG4gICAgICAgIC8vIGNvbnN0IHVwbG9hZFByb2dyZXNzID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuICAgICAgICAvLyBjb25zdCB1cGxvYWRTdGF0dXMgPSB1cGxvYWRQcm9ncmVzcy5hc09ic2VydmFibGUoKTtcblxuICAgICAgICAvL2NvbnN0IHJlc3BvbnNlUHJvbWlzZSA9IG5ldyBTdWJqZWN0PE1lc3NhZ2U+KCk7XG5cbiAgICAgICAgLy8gdGhpcy5faHR0cFxuICAgICAgICAvLyAgICAgLnJlcXVlc3QoZmlsZVJlcXVlc3QpXG4gICAgICAgIC8vICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgLy8gICAgICAgICAvLyBpZiAoZXZlbnQudHlwZSA9PSBIdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzKVxuICAgICAgICAvLyAgICAgICAgIC8vIHtcbiAgICAgICAgLy8gICAgICAgICAvLyAgICAgY29uc3QgcGVyY2VudERvbmUgPSBNYXRoLnJvdW5kKDEwMCAqIGV2ZW50LmxvYWRlZCAvIGV2ZW50LnRvdGFsKTtcblxuICAgICAgICAvLyAgICAgICAgIC8vICAgICB1cGxvYWRQcm9ncmVzcy5uZXh0KHBlcmNlbnREb25lKTtcbiAgICAgICAgLy8gICAgICAgICAvLyB9XG4gICAgICAgIC8vICAgICAgICAgLy8gZWxzZSBpZiAoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpXG4gICAgICAgIC8vICAgICAgICAgLy8ge1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgLy8gICAgICAgICAvLyAgICAgdXBsb2FkUHJvZ3Jlc3MuY29tcGxldGUoKTtcbiAgICAgICAgLy8gICAgICAgICAvLyB9XG4gICAgICAgIC8vICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQtYWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL2ZpbGUtdXBsb2FkLWFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbi8vIGltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXInO1xuaW1wb3J0IHsgTWVzc2FnZSB9IGZyb20gJy4vbWVzc2FnZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZpbGVVcGxvYWRBZGFwdGVyXG57XG4gICAgdXBsb2FkRmlsZShmaWxlOiBGaWxlLCBwYXJ0aWNpcGFudElkOiBhbnkpOiBPYnNlcnZhYmxlPE1lc3NhZ2U+O1xufVxuIl19
@@ -0,0 +1,14 @@
1
+ import { Guid } from "./guid";
2
+ import { ChatParticipantStatus } from "./chat-participant-status.enum";
3
+ import { ChatParticipantType } from "./chat-participant-type.enum";
4
+ export class Group {
5
+ constructor(participants) {
6
+ this.id = Guid.newGuid();
7
+ this.participantType = ChatParticipantType.Group;
8
+ this.chattingTo = participants;
9
+ this.status = ChatParticipantStatus.Online;
10
+ // TODO: Add some customization for this in future releases
11
+ this.displayName = participants.map((p) => p.displayName).sort((first, second) => second > first ? -1 : 1).join(", ");
12
+ }
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY29yZS9ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRTlCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRW5FLE1BQU0sT0FBTyxLQUFLO0lBRWQsWUFBWSxZQUFvQjtRQVN6QixPQUFFLEdBQVcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBR25CLG9CQUFlLEdBQXdCLG1CQUFtQixDQUFDLEtBQUssQ0FBQztRQVY3RSxJQUFJLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQztRQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLHFCQUFxQixDQUFDLE1BQU0sQ0FBQztRQUUzQywyREFBMkQ7UUFDM0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxSCxDQUFDO0NBVUoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHdWlkIH0gZnJvbSBcIi4vZ3VpZFwiO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gXCIuL3VzZXJcIjtcbmltcG9ydCB7IENoYXRQYXJ0aWNpcGFudFN0YXR1cyB9IGZyb20gXCIuL2NoYXQtcGFydGljaXBhbnQtc3RhdHVzLmVudW1cIjtcbmltcG9ydCB7IElDaGF0UGFydGljaXBhbnQgfSBmcm9tIFwiLi9jaGF0LXBhcnRpY2lwYW50XCI7XG5pbXBvcnQgeyBDaGF0UGFydGljaXBhbnRUeXBlIH0gZnJvbSBcIi4vY2hhdC1wYXJ0aWNpcGFudC10eXBlLmVudW1cIjtcblxuZXhwb3J0IGNsYXNzIEdyb3VwIGltcGxlbWVudHMgSUNoYXRQYXJ0aWNpcGFudFxue1xuICAgIGNvbnN0cnVjdG9yKHBhcnRpY2lwYW50czogVXNlcltdKVxuICAgIHtcbiAgICAgICAgdGhpcy5jaGF0dGluZ1RvID0gcGFydGljaXBhbnRzO1xuICAgICAgICB0aGlzLnN0YXR1cyA9IENoYXRQYXJ0aWNpcGFudFN0YXR1cy5PbmxpbmU7XG5cbiAgICAgICAgLy8gVE9ETzogQWRkIHNvbWUgY3VzdG9taXphdGlvbiBmb3IgdGhpcyBpbiBmdXR1cmUgcmVsZWFzZXNcbiAgICAgICAgdGhpcy5kaXNwbGF5TmFtZSA9IHBhcnRpY2lwYW50cy5tYXAoKHApID0+IHAuZGlzcGxheU5hbWUpLnNvcnQoKGZpcnN0LCBzZWNvbmQpID0+IHNlY29uZCA+IGZpcnN0ID8gLTEgOiAxKS5qb2luKFwiLCBcIik7XG4gICAgfVxuXG4gICAgcHVibGljIGlkOiBzdHJpbmcgPSBHdWlkLm5ld0d1aWQoKTtcbiAgICBwdWJsaWMgY2hhdHRpbmdUbzogVXNlcltdO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IHBhcnRpY2lwYW50VHlwZTogQ2hhdFBhcnRpY2lwYW50VHlwZSA9IENoYXRQYXJ0aWNpcGFudFR5cGUuR3JvdXA7XG5cbiAgICBwdWJsaWMgc3RhdHVzOiBDaGF0UGFydGljaXBhbnRTdGF0dXM7XG4gICAgcHVibGljIGF2YXRhcjogc3RyaW5nIHwgbnVsbDtcbiAgICBwdWJsaWMgZGlzcGxheU5hbWU6IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,11 @@
1
+ // Poached from: https://github.com/Steve-Fenton/TypeScriptUtilities
2
+ // @dynamic
3
+ export class Guid {
4
+ static newGuid() {
5
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
6
+ var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
7
+ return v.toString(16);
8
+ });
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL2d1aWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0VBQW9FO0FBQ3BFLFdBQVc7QUFDWCxNQUFNLE9BQU8sSUFBSTtJQUNiLE1BQU0sQ0FBQyxPQUFPO1FBQ1YsT0FBTyxzQ0FBc0MsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVMsQ0FBQztZQUNyRSxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUMsRUFBRSxHQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBQyxHQUFHLEdBQUMsR0FBRyxDQUFDLENBQUM7WUFDM0QsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gUG9hY2hlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vU3RldmUtRmVudG9uL1R5cGVTY3JpcHRVdGlsaXRpZXNcbi8vIEBkeW5hbWljXG5leHBvcnQgY2xhc3MgR3VpZCB7XG4gICAgc3RhdGljIG5ld0d1aWQoKSB7XG4gICAgICAgIHJldHVybiAneHh4eHh4eHgteHh4eC00eHh4LXl4eHgteHh4eHh4eHh4eHh4Jy5yZXBsYWNlKC9beHldL2csIGZ1bmN0aW9uKGMpIHtcbiAgICAgICAgICAgIHZhciByID0gTWF0aC5yYW5kb20oKSoxNnwwLCB2ID0gYyA9PSAneCcgPyByIDogKHImMHgzfDB4OCk7XG4gICAgICAgICAgICByZXR1cm4gdi50b1N0cmluZygxNik7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvbG9jYWxpemF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIExvY2FsaXphdGlvblxue1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgbWVzc2FnZVBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgc2VhcmNoUGxhY2Vob2xkZXI6IHN0cmluZztcbiAgICBzdGF0dXNEZXNjcmlwdGlvbjogU3RhdHVzRGVzY3JpcHRpb247XG4gICAgYnJvd3Nlck5vdGlmaWNhdGlvblRpdGxlOiBzdHJpbmc7XG4gICAgbG9hZE1lc3NhZ2VIaXN0b3J5UGxhY2Vob2xkZXI6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXNEZXNjcmlwdGlvblxue1xuICAgIG9ubGluZTogc3RyaW5nO1xuICAgIGJ1c3k6IHN0cmluZztcbiAgICBhd2F5OiBzdHJpbmc7XG4gICAgb2ZmbGluZTogc3RyaW5nO1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,25 @@
1
+ export class MessageCounter {
2
+ static formatUnreadMessagesTotal(totalUnreadMessages) {
3
+ if (totalUnreadMessages > 0) {
4
+ if (totalUnreadMessages > 99)
5
+ return "99+";
6
+ else
7
+ return String(totalUnreadMessages);
8
+ }
9
+ // Empty fallback.
10
+ return "";
11
+ }
12
+ /**
13
+ * Returns a formatted string containing the total unread messages of a chat window.
14
+ * @param window The window instance to count the unread total messages.
15
+ * @param currentUserId The current chat instance user id. In this context it would be the sender.
16
+ */
17
+ static unreadMessagesTotal(window, currentUserId) {
18
+ let totalUnreadMessages = 0;
19
+ if (window) {
20
+ totalUnreadMessages = window.messages.filter(x => x.fromId != currentUserId && !x.dateSeen).length;
21
+ }
22
+ return MessageCounter.formatUnreadMessagesTotal(totalUnreadMessages);
23
+ }
24
+ }
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1jb3VudGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvbWVzc2FnZS1jb3VudGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxjQUFjO0lBRWhCLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxtQkFBMkI7UUFFL0QsSUFBSSxtQkFBbUIsR0FBRyxDQUFDLEVBQUM7WUFFeEIsSUFBSSxtQkFBbUIsR0FBRyxFQUFFO2dCQUN4QixPQUFRLEtBQUssQ0FBQzs7Z0JBRWQsT0FBTyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztTQUMxQztRQUVELGtCQUFrQjtRQUNsQixPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLG1CQUFtQixDQUFDLE1BQWMsRUFBRSxhQUFrQjtRQUVoRSxJQUFJLG1CQUFtQixHQUFHLENBQUMsQ0FBQztRQUU1QixJQUFJLE1BQU0sRUFBQztZQUNQLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxhQUFhLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDO1NBQ3RHO1FBRUQsT0FBTyxjQUFjLENBQUMseUJBQXlCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN6RSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXaW5kb3cgfSBmcm9tICcuL3dpbmRvdyc7XG5cbmV4cG9ydCBjbGFzcyBNZXNzYWdlQ291bnRlclxue1xuICAgIHB1YmxpYyBzdGF0aWMgZm9ybWF0VW5yZWFkTWVzc2FnZXNUb3RhbCh0b3RhbFVucmVhZE1lc3NhZ2VzOiBudW1iZXIpOiBzdHJpbmdcbiAgICB7XG4gICAgICAgIGlmICh0b3RhbFVucmVhZE1lc3NhZ2VzID4gMCl7XG5cbiAgICAgICAgICAgIGlmICh0b3RhbFVucmVhZE1lc3NhZ2VzID4gOTkpXG4gICAgICAgICAgICAgICAgcmV0dXJuICBcIjk5K1wiO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcodG90YWxVbnJlYWRNZXNzYWdlcyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbXB0eSBmYWxsYmFjay5cbiAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIGZvcm1hdHRlZCBzdHJpbmcgY29udGFpbmluZyB0aGUgdG90YWwgdW5yZWFkIG1lc3NhZ2VzIG9mIGEgY2hhdCB3aW5kb3cuXG4gICAgICogQHBhcmFtIHdpbmRvdyBUaGUgd2luZG93IGluc3RhbmNlIHRvIGNvdW50IHRoZSB1bnJlYWQgdG90YWwgbWVzc2FnZXMuXG4gICAgICogQHBhcmFtIGN1cnJlbnRVc2VySWQgVGhlIGN1cnJlbnQgY2hhdCBpbnN0YW5jZSB1c2VyIGlkLiBJbiB0aGlzIGNvbnRleHQgaXQgd291bGQgYmUgdGhlIHNlbmRlci5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHVucmVhZE1lc3NhZ2VzVG90YWwod2luZG93OiBXaW5kb3csIGN1cnJlbnRVc2VySWQ6IGFueSk6IHN0cmluZ1xuICAgIHtcbiAgICAgICAgbGV0IHRvdGFsVW5yZWFkTWVzc2FnZXMgPSAwO1xuXG4gICAgICAgIGlmICh3aW5kb3cpe1xuICAgICAgICAgICAgdG90YWxVbnJlYWRNZXNzYWdlcyA9IHdpbmRvdy5tZXNzYWdlcy5maWx0ZXIoeCA9PiB4LmZyb21JZCAhPSBjdXJyZW50VXNlcklkICYmICF4LmRhdGVTZWVuKS5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICByZXR1cm4gTWVzc2FnZUNvdW50ZXIuZm9ybWF0VW5yZWFkTWVzc2FnZXNUb3RhbCh0b3RhbFVucmVhZE1lc3NhZ2VzKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ export var MessageType;
2
+ (function (MessageType) {
3
+ MessageType[MessageType["Text"] = 1] = "Text";
4
+ MessageType[MessageType["File"] = 2] = "File";
5
+ MessageType[MessageType["Image"] = 3] = "Image";
6
+ })(MessageType || (MessageType = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY29yZS9tZXNzYWdlLXR5cGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxXQUtYO0FBTEQsV0FBWSxXQUFXO0lBRW5CLDZDQUFRLENBQUE7SUFDUiw2Q0FBUSxDQUFBO0lBQ1IsK0NBQVMsQ0FBQTtBQUNiLENBQUMsRUFMVyxXQUFXLEtBQVgsV0FBVyxRQUt0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE1lc3NhZ2VUeXBlXG57XG4gICAgVGV4dCA9IDEsXG4gICAgRmlsZSA9IDIsXG4gICAgSW1hZ2UgPSAzXG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ import { MessageType } from './message-type.enum';
2
+ export class Message {
3
+ constructor() {
4
+ this.type = MessageType.Text;
5
+ }
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL21lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWxELE1BQU0sT0FBTyxPQUFPO0lBQXBCO1FBRVcsU0FBSSxHQUFpQixXQUFXLENBQUMsSUFBSSxDQUFDO0lBUWpELENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi9tZXNzYWdlLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBNZXNzYWdlXG57XG4gICAgcHVibGljIHR5cGU/OiBNZXNzYWdlVHlwZSA9IE1lc3NhZ2VUeXBlLlRleHQ7XG4gICAgcHVibGljIGZyb21JZDogYW55O1xuICAgIHB1YmxpYyB0b0lkOiBhbnk7XG4gICAgcHVibGljIG1lc3NhZ2U6IHN0cmluZztcbiAgICBwdWJsaWMgZGF0ZVNlbnQ/OiBEYXRlO1xuICAgIHB1YmxpYyBkYXRlU2Vlbj86IERhdGU7XG4gICAgcHVibGljIGFkZGl0aW9uYWxQYXJhbWV0ZXI/OiBPYmplY3Q7XG5cbn1cbiJdfQ==
@@ -0,0 +1,9 @@
1
+ // import { User } from "./user";
2
+ import { ChatAdapter } from "./chat-adapter";
3
+ /**
4
+ * @description Chat Adapter decorator class that adds pagination to load the history of messagesr.
5
+ * You will need an existing @see ChatAdapter implementation
6
+ */
7
+ export class PagedHistoryChatAdapter extends ChatAdapter {
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZWQtaGlzdG9yeS1jaGF0LWFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY29yZS9wYWdlZC1oaXN0b3J5LWNoYXQtYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxpQ0FBaUM7QUFDakMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDOzs7R0FHRztBQUNILE1BQU0sT0FBZ0IsdUJBQXdCLFNBQVEsV0FBVztDQUdoRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1lc3NhZ2UgfSBmcm9tIFwiLi9tZXNzYWdlXCI7XG4vLyBpbXBvcnQgeyBVc2VyIH0gZnJvbSBcIi4vdXNlclwiO1xuaW1wb3J0IHsgQ2hhdEFkYXB0ZXIgfSBmcm9tIFwiLi9jaGF0LWFkYXB0ZXJcIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ2hhdCBBZGFwdGVyIGRlY29yYXRvciBjbGFzcyB0aGF0IGFkZHMgcGFnaW5hdGlvbiB0byBsb2FkIHRoZSBoaXN0b3J5IG9mIG1lc3NhZ2Vzci5cbiAqIFlvdSB3aWxsIG5lZWQgYW4gZXhpc3RpbmcgQHNlZSBDaGF0QWRhcHRlciBpbXBsZW1lbnRhdGlvblxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUGFnZWRIaXN0b3J5Q2hhdEFkYXB0ZXIgZXh0ZW5kcyBDaGF0QWRhcHRlclxue1xuICAgIGFic3RyYWN0IGdldE1lc3NhZ2VIaXN0b3J5QnlQYWdlKGRlc3RpbmF0YXJ5SWQ6IGFueSwgc2l6ZTogbnVtYmVyLCBwYWdlOiBudW1iZXIpIDogT2JzZXJ2YWJsZTxNZXNzYWdlW10+O1xufVxuIl19
@@ -0,0 +1,6 @@
1
+ export class ParticipantMetadata {
2
+ constructor() {
3
+ this.totalUnreadMessages = 0;
4
+ }
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFydGljaXBhbnQtbWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY29yZS9wYXJ0aWNpcGFudC1tZXRhZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sbUJBQW1CO0lBQWhDO1FBRVcsd0JBQW1CLEdBQVcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBQYXJ0aWNpcGFudE1ldGFkYXRhXG57XG4gICAgcHVibGljIHRvdGFsVW5yZWFkTWVzc2FnZXM6IG51bWJlciA9IDA7XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export class ParticipantResponse {
2
+ }
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFydGljaXBhbnQtcmVzcG9uc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY29yZS9wYXJ0aWNpcGFudC1yZXNwb25zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLE9BQU8sbUJBQW1CO0NBSS9CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaW1wb3J0IHsgVXNlciB9IGZyb20gXCIuL3VzZXJcIjtcbmltcG9ydCB7IFBhcnRpY2lwYW50TWV0YWRhdGEgfSBmcm9tIFwiLi9wYXJ0aWNpcGFudC1tZXRhZGF0YVwiO1xuaW1wb3J0IHsgSUNoYXRQYXJ0aWNpcGFudCB9IGZyb20gXCIuL2NoYXQtcGFydGljaXBhbnRcIjtcblxuZXhwb3J0IGNsYXNzIFBhcnRpY2lwYW50UmVzcG9uc2VcbntcbiAgICBwdWJsaWMgcGFydGljaXBhbnQ6IElDaGF0UGFydGljaXBhbnQ7XG4gICAgcHVibGljIG1ldGFkYXRhOiBQYXJ0aWNpcGFudE1ldGFkYXRhO1xufVxuIl19
@@ -0,0 +1,6 @@
1
+ export var ScrollDirection;
2
+ (function (ScrollDirection) {
3
+ ScrollDirection[ScrollDirection["Top"] = 0] = "Top";
4
+ ScrollDirection[ScrollDirection["Bottom"] = 1] = "Bottom";
5
+ })(ScrollDirection || (ScrollDirection = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWRpcmVjdGlvbi5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvc2Nyb2xsLWRpcmVjdGlvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGVBR1g7QUFIRCxXQUFZLGVBQWU7SUFDdkIsbURBQUcsQ0FBQTtJQUNILHlEQUFNLENBQUE7QUFDVixDQUFDLEVBSFcsZUFBZSxLQUFmLGVBQWUsUUFHMUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTY3JvbGxEaXJlY3Rpb24ge1xuICAgIFRvcCxcbiAgICBCb3R0b21cbn0iXX0=
@@ -0,0 +1,7 @@
1
+ export var Theme;
2
+ (function (Theme) {
3
+ Theme["Custom"] = "custom-theme";
4
+ Theme["Light"] = "light-theme";
5
+ Theme["Dark"] = "dark-theme";
6
+ })(Theme || (Theme = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL3RoZW1lLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksS0FLWDtBQUxELFdBQVksS0FBSztJQUViLGdDQUF1QixDQUFBO0lBQ3ZCLDhCQUFxQixDQUFBO0lBQ3JCLDRCQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFMVyxLQUFLLEtBQUwsS0FBSyxRQUtoQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFRoZW1lXG57XG4gICAgQ3VzdG9tID0gJ2N1c3RvbS10aGVtZScsXG4gICAgTGlnaHQgPSAnbGlnaHQtdGhlbWUnLFxuICAgIERhcmsgPSAnZGFyay10aGVtZSdcbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ import { ChatParticipantType } from "./chat-participant-type.enum";
2
+ export class User {
3
+ constructor() {
4
+ this.participantType = ChatParticipantType.User;
5
+ }
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9jb3JlL3VzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFbkUsTUFBTSxPQUFPLElBQUk7SUFBakI7UUFFb0Isb0JBQWUsR0FBd0IsbUJBQW1CLENBQUMsSUFBSSxDQUFDO0lBS3BGLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXRQYXJ0aWNpcGFudFN0YXR1cyB9IGZyb20gXCIuL2NoYXQtcGFydGljaXBhbnQtc3RhdHVzLmVudW1cIjtcbmltcG9ydCB7IElDaGF0UGFydGljaXBhbnQgfSBmcm9tIFwiLi9jaGF0LXBhcnRpY2lwYW50XCI7XG5pbXBvcnQgeyBDaGF0UGFydGljaXBhbnRUeXBlIH0gZnJvbSBcIi4vY2hhdC1wYXJ0aWNpcGFudC10eXBlLmVudW1cIjtcblxuZXhwb3J0IGNsYXNzIFVzZXIgaW1wbGVtZW50cyBJQ2hhdFBhcnRpY2lwYW50XG57XG4gICAgcHVibGljIHJlYWRvbmx5IHBhcnRpY2lwYW50VHlwZTogQ2hhdFBhcnRpY2lwYW50VHlwZSA9IENoYXRQYXJ0aWNpcGFudFR5cGUuVXNlcjtcbiAgICBwdWJsaWMgaWQ6IGFueTtcbiAgICBwdWJsaWMgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgICBwdWJsaWMgc3RhdHVzOiBDaGF0UGFydGljaXBhbnRTdGF0dXM7XG4gICAgcHVibGljIGF2YXRhcjogc3RyaW5nO1xufVxuIl19
@@ -0,0 +1,20 @@
1
+ export class Window {
2
+ constructor(participant, isLoadingHistory, isCollapsed) {
3
+ this.messages = [];
4
+ this.newMessage = "";
5
+ // UI Behavior properties
6
+ this.isCollapsed = false;
7
+ this.isLoadingHistory = false;
8
+ this.hasFocus = false;
9
+ this.hasMoreMessages = true;
10
+ this.historyPage = 0;
11
+ this.participant = participant;
12
+ this.messages = [];
13
+ this.isLoadingHistory = isLoadingHistory;
14
+ this.hasFocus = false; // This will be triggered when the 'newMessage' input gets the current focus
15
+ this.isCollapsed = isCollapsed;
16
+ this.hasMoreMessages = false;
17
+ this.historyPage = 0;
18
+ }
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL2NvcmUvd2luZG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE1BQU0sT0FBTyxNQUFNO0lBRWYsWUFBWSxXQUE2QixFQUFFLGdCQUF5QixFQUFFLFdBQW9CO1FBWW5GLGFBQVEsR0FBYyxFQUFFLENBQUM7UUFDekIsZUFBVSxHQUFZLEVBQUUsQ0FBQztRQUVoQyx5QkFBeUI7UUFDbEIsZ0JBQVcsR0FBYSxLQUFLLENBQUM7UUFDOUIscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDaEMsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFsQjNCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxRQUFRLEdBQUksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLDRFQUE0RTtRQUNuRyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDO0NBWUoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZXNzYWdlIH0gZnJvbSBcIi4vbWVzc2FnZVwiO1xuLy8gaW1wb3J0IHsgVXNlciB9IGZyb20gXCIuL3VzZXJcIjtcbi8vIGltcG9ydCB7IENoYXRQYXJ0aWNpcGFudFR5cGUgfSBmcm9tIFwiLi9jaGF0LXBhcnRpY2lwYW50LXR5cGUuZW51bVwiO1xuLy8gaW1wb3J0IHsgQ2hhdFBhcnRpY2lwYW50U3RhdHVzIH0gZnJvbSBcIi4vY2hhdC1wYXJ0aWNpcGFudC1zdGF0dXMuZW51bVwiO1xuLy8gaW1wb3J0IHsgR3JvdXAgfSBmcm9tIFwiLi9ncm91cFwiO1xuaW1wb3J0IHsgSUNoYXRQYXJ0aWNpcGFudCB9IGZyb20gXCIuL2NoYXQtcGFydGljaXBhbnRcIjtcblxuZXhwb3J0IGNsYXNzIFdpbmRvd1xue1xuICAgIGNvbnN0cnVjdG9yKHBhcnRpY2lwYW50OiBJQ2hhdFBhcnRpY2lwYW50LCBpc0xvYWRpbmdIaXN0b3J5OiBib29sZWFuLCBpc0NvbGxhcHNlZDogYm9vbGVhbilcbiAgICB7XG4gICAgICAgIHRoaXMucGFydGljaXBhbnQgPSBwYXJ0aWNpcGFudDtcbiAgICAgICAgdGhpcy5tZXNzYWdlcyA9ICBbXTtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmdIaXN0b3J5ID0gaXNMb2FkaW5nSGlzdG9yeTtcbiAgICAgICAgdGhpcy5oYXNGb2N1cyA9IGZhbHNlOyAvLyBUaGlzIHdpbGwgYmUgdHJpZ2dlcmVkIHdoZW4gdGhlICduZXdNZXNzYWdlJyBpbnB1dCBnZXRzIHRoZSBjdXJyZW50IGZvY3VzXG4gICAgICAgIHRoaXMuaXNDb2xsYXBzZWQgPSBpc0NvbGxhcHNlZDtcbiAgICAgICAgdGhpcy5oYXNNb3JlTWVzc2FnZXMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5oaXN0b3J5UGFnZSA9IDA7XG4gICAgfVxuXG4gICAgcHVibGljIHBhcnRpY2lwYW50OiBJQ2hhdFBhcnRpY2lwYW50O1xuICAgIHB1YmxpYyBtZXNzYWdlczogTWVzc2FnZVtdID0gW107XG4gICAgcHVibGljIG5ld01lc3NhZ2U/OiBzdHJpbmcgPSBcIlwiO1xuXG4gICAgLy8gVUkgQmVoYXZpb3IgcHJvcGVydGllc1xuICAgIHB1YmxpYyBpc0NvbGxhcHNlZD86IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwdWJsaWMgaXNMb2FkaW5nSGlzdG9yeTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBoYXNGb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBoYXNNb3JlTWVzc2FnZXM6IGJvb2xlYW4gPSB0cnVlO1xuICAgIHB1YmxpYyBoaXN0b3J5UGFnZTogbnVtYmVyID0gMDtcbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class FirstLetterPipe {
4
+ transform(value) {
5
+ // const parts = value.split(" ");
6
+ // const firstLetter = parts[0][0];
7
+ // const secondLetters = parts.length > 1 ? parts[1].slice(0, 2) : '';
8
+ let parts = value.split(" ");
9
+ let firstLetter = parts[0].slice(0, 1);
10
+ let secondLetters = parts.length > 1 ? parts[1].slice(0, 1) : '';
11
+ return (firstLetter.toUpperCase() + secondLetters.toUpperCase());
12
+ }
13
+ }
14
+ FirstLetterPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FirstLetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
15
+ FirstLetterPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: FirstLetterPipe, name: "firstLetterPipe" });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FirstLetterPipe, decorators: [{
17
+ type: Pipe,
18
+ args: [{ name: 'firstLetterPipe' }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyc3RMZXR0ZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9maXJzdExldHRlci5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUlwRCxNQUFNLE9BQU8sZUFBZTtJQUN4QixTQUFTLENBQUMsS0FBYTtRQUNuQixrQ0FBa0M7UUFDbEMsbUNBQW1DO1FBQ25DLHNFQUFzRTtRQUN0RSxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRTdCLElBQUksV0FBVyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRXZDLElBQUksYUFBYSxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2pFLE9BQU8sQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLEdBQUcsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDcEUsQ0FBQzs7NEdBWFEsZUFBZTswR0FBZixlQUFlOzJGQUFmLGVBQWU7a0JBRjNCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHsgbmFtZTogJ2ZpcnN0TGV0dGVyUGlwZScgfSlcblxuZXhwb3J0IGNsYXNzIEZpcnN0TGV0dGVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgLy8gY29uc3QgcGFydHMgPSB2YWx1ZS5zcGxpdChcIiBcIik7XG4gICAgICAgIC8vIGNvbnN0IGZpcnN0TGV0dGVyID0gcGFydHNbMF1bMF07XG4gICAgICAgIC8vIGNvbnN0IHNlY29uZExldHRlcnMgPSBwYXJ0cy5sZW5ndGggPiAxID8gcGFydHNbMV0uc2xpY2UoMCwgMikgOiAnJztcbiAgICAgICAgbGV0IHBhcnRzID0gdmFsdWUuc3BsaXQoXCIgXCIpO1xuXG4gICAgICAgIGxldCBmaXJzdExldHRlciA9IHBhcnRzWzBdLnNsaWNlKDAsIDEpO1xuXG4gICAgICAgIGxldCBzZWNvbmRMZXR0ZXJzID0gcGFydHMubGVuZ3RoID4gMSA/IHBhcnRzWzFdLnNsaWNlKDAsIDEpIDogJyc7XG4gICAgICAgIHJldHVybiAoZmlyc3RMZXR0ZXIudG9VcHBlckNhc2UoKSArIHNlY29uZExldHRlcnMudG9VcHBlckNhc2UoKSlcbiAgICB9XG59Il19
@@ -0,0 +1,50 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { MatButtonModule } from '@angular/material/button';
3
+ import { MatIconModule } from '@angular/material/icon';
4
+ import { MatInputModule } from '@angular/material/input';
5
+ import { MatFormFieldModule } from '@angular/material/form-field';
6
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
7
+ import { MatMenuModule } from '@angular/material/menu';
8
+ import * as i0 from "@angular/core";
9
+ export function modules() {
10
+ return [
11
+ MatButtonModule,
12
+ MatFormFieldModule,
13
+ MatIconModule,
14
+ MatInputModule,
15
+ FormsModule,
16
+ ReactiveFormsModule,
17
+ MatMenuModule,
18
+ ];
19
+ }
20
+ export class ChatMaterialModule {
21
+ }
22
+ ChatMaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatMaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
23
+ ChatMaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ChatMaterialModule, imports: [MatButtonModule,
24
+ MatFormFieldModule,
25
+ MatIconModule,
26
+ MatInputModule,
27
+ FormsModule,
28
+ ReactiveFormsModule,
29
+ MatMenuModule], exports: [MatButtonModule,
30
+ MatFormFieldModule,
31
+ MatIconModule,
32
+ MatInputModule,
33
+ FormsModule,
34
+ ReactiveFormsModule,
35
+ MatMenuModule] });
36
+ ChatMaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatMaterialModule, imports: [modules(), MatButtonModule,
37
+ MatFormFieldModule,
38
+ MatIconModule,
39
+ MatInputModule,
40
+ FormsModule,
41
+ ReactiveFormsModule,
42
+ MatMenuModule] });
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatMaterialModule, decorators: [{
44
+ type: NgModule,
45
+ args: [{
46
+ imports: modules(),
47
+ exports: modules()
48
+ }]
49
+ }] });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL21hdGVyaWFsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWxFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBQ3ZELE1BQU0sVUFBVSxPQUFPO0lBQ3JCLE9BQU87UUFDTCxlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixjQUFjO1FBQ2QsV0FBVztRQUNYLG1CQUFtQjtRQUNuQixhQUFhO0tBQ2QsQ0FBQztBQUNKLENBQUM7QUFLRCxNQUFNLE9BQU8sa0JBQWtCOzsrR0FBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0IsWUFiM0IsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2IsY0FBYztRQUNkLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsYUFBYSxhQU5iLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLGNBQWM7UUFDZCxXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7Z0hBT0osa0JBQWtCLFlBSHBCLE9BQU8sRUFBRSxFQVZoQixlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixjQUFjO1FBQ2QsV0FBVztRQUNYLG1CQUFtQjtRQUNuQixhQUFhOzJGQU9KLGtCQUFrQjtrQkFKOUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsT0FBTyxFQUFFO29CQUNsQixPQUFPLEVBQUUsT0FBTyxFQUFFO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdENhcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuZXhwb3J0IGZ1bmN0aW9uIG1vZHVsZXMoKSB7XG4gIHJldHVybiBbXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgXTtcbn1cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IG1vZHVsZXMoKSxcbiAgZXhwb3J0czogbW9kdWxlcygpXG59KVxuZXhwb3J0IGNsYXNzIENoYXRNYXRlcmlhbE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,41 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ let emojiDictionary = [
4
+ { patterns: [':)', ':-)', '=)'], unicode: '😃' },
5
+ { patterns: [':D', ':-D', '=D'], unicode: '😀' },
6
+ { patterns: [':(', ':-(', '=('], unicode: '🙁' },
7
+ { patterns: [':|', ':-|', '=|'], unicode: '😐' },
8
+ { patterns: [':*', ':-*', '=*'], unicode: '😙' },
9
+ { patterns: ['T_T', 'T.T'], unicode: '😭' },
10
+ { patterns: [':O', ':-O', '=O', ':o', ':-o', '=o'], unicode: '😮' },
11
+ { patterns: [':P', ':-P', '=P', ':p', ':-p', '=p'], unicode: '😋' },
12
+ { patterns: ['>.<'], unicode: '😣' },
13
+ { patterns: ['@.@'], unicode: '😵' },
14
+ { patterns: ['*.*'], unicode: '😍' },
15
+ { patterns: ['<3'], unicode: '❤️' },
16
+ { patterns: ['^.^'], unicode: '😊' },
17
+ { patterns: [':+1'], unicode: '👍' },
18
+ { patterns: [':-1'], unicode: '👎' }
19
+ ];
20
+ /*
21
+ * Transforms common emoji text to UTF encoded emojis
22
+ */
23
+ export class EmojifyPipe {
24
+ transform(message, pipeEnabled) {
25
+ if (pipeEnabled && message && message.length > 1) {
26
+ emojiDictionary.forEach(emoji => {
27
+ emoji.patterns.forEach(pattern => {
28
+ message = message.replace(pattern, emoji.unicode);
29
+ });
30
+ });
31
+ }
32
+ return message;
33
+ }
34
+ }
35
+ EmojifyPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EmojifyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
36
+ EmojifyPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: EmojifyPipe, name: "emojify" });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EmojifyPipe, decorators: [{
38
+ type: Pipe,
39
+ args: [{ name: 'emojify' }]
40
+ }] });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1vamlmeS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL3BpcGVzL2Vtb2ppZnkucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFFcEQsSUFBSSxlQUFlLEdBQUc7SUFDbEIsRUFBRSxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7SUFDaEQsRUFBRSxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7SUFDaEQsRUFBRSxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7SUFDaEQsRUFBRSxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7SUFDaEQsRUFBRSxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7SUFDaEQsRUFBRSxRQUFRLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtJQUMzQyxFQUFFLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtJQUNuRSxFQUFFLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtJQUNuRSxFQUFFLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7SUFDcEMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFO0lBQ3BDLEVBQUUsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtJQUNwQyxFQUFFLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7SUFDbkMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFO0lBQ3BDLEVBQUUsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRTtJQUNwQyxFQUFFLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7Q0FDdkMsQ0FBQztBQUVGOztFQUVFO0FBRUYsTUFBTSxPQUFPLFdBQVc7SUFDcEIsU0FBUyxDQUFDLE9BQWUsRUFBRSxXQUFvQjtRQUMzQyxJQUFJLFdBQVcsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDOUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDNUIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQzdCLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3RELENBQUMsQ0FBQyxDQUFBO1lBQ04sQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVMLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7O3dHQVhVLFdBQVc7c0dBQVgsV0FBVzsyRkFBWCxXQUFXO2tCQUR2QixJQUFJO21CQUFDLEVBQUMsSUFBSSxFQUFFLFNBQVMsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxubGV0IGVtb2ppRGljdGlvbmFyeSA9IFtcbiAgICB7IHBhdHRlcm5zOiBbJzopJywgJzotKScsICc9KSddLCB1bmljb2RlOiAn8J+YgycgfSxcbiAgICB7IHBhdHRlcm5zOiBbJzpEJywgJzotRCcsICc9RCddLCB1bmljb2RlOiAn8J+YgCcgfSxcbiAgICB7IHBhdHRlcm5zOiBbJzooJywgJzotKCcsICc9KCddLCB1bmljb2RlOiAn8J+ZgScgfSxcbiAgICB7IHBhdHRlcm5zOiBbJzp8JywgJzotfCcsICc9fCddLCB1bmljb2RlOiAn8J+YkCcgfSxcbiAgICB7IHBhdHRlcm5zOiBbJzoqJywgJzotKicsICc9KiddLCB1bmljb2RlOiAn8J+YmScgfSxcbiAgICB7IHBhdHRlcm5zOiBbJ1RfVCcsICdULlQnXSwgdW5pY29kZTogJ/CfmK0nIH0sXG4gICAgeyBwYXR0ZXJuczogWyc6TycsICc6LU8nLCAnPU8nLCAnOm8nLCAnOi1vJywgJz1vJ10sIHVuaWNvZGU6ICfwn5iuJyB9LFxuICAgIHsgcGF0dGVybnM6IFsnOlAnLCAnOi1QJywgJz1QJywgJzpwJywgJzotcCcsICc9cCddLCB1bmljb2RlOiAn8J+YiycgfSxcbiAgICB7IHBhdHRlcm5zOiBbJz4uPCddLCB1bmljb2RlOiAn8J+YoycgfSxcbiAgICB7IHBhdHRlcm5zOiBbJ0AuQCddLCB1bmljb2RlOiAn8J+YtScgfSxcbiAgICB7IHBhdHRlcm5zOiBbJyouKiddLCB1bmljb2RlOiAn8J+YjScgfSxcbiAgICB7IHBhdHRlcm5zOiBbJzwzJ10sIHVuaWNvZGU6ICfinaTvuI8nIH0sXG4gICAgeyBwYXR0ZXJuczogWydeLl4nXSwgdW5pY29kZTogJ/CfmIonIH0sXG4gICAgeyBwYXR0ZXJuczogWyc6KzEnXSwgdW5pY29kZTogJ/CfkY0nIH0sXG4gICAgeyBwYXR0ZXJuczogWyc6LTEnXSwgdW5pY29kZTogJ/CfkY4nIH1cbl07XG5cbi8qXG4gKiBUcmFuc2Zvcm1zIGNvbW1vbiBlbW9qaSB0ZXh0IHRvIFVURiBlbmNvZGVkIGVtb2ppc1xuKi9cbkBQaXBlKHtuYW1lOiAnZW1vamlmeSd9KVxuZXhwb3J0IGNsYXNzIEVtb2ppZnlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKG1lc3NhZ2U6IHN0cmluZywgcGlwZUVuYWJsZWQ6IGJvb2xlYW4pOiBzdHJpbmcge1xuICAgICAgICBpZiAocGlwZUVuYWJsZWQgJiYgbWVzc2FnZSAmJiBtZXNzYWdlLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIGVtb2ppRGljdGlvbmFyeS5mb3JFYWNoKGVtb2ppID0+IHtcbiAgICAgICAgICAgICAgICBlbW9qaS5wYXR0ZXJucy5mb3JFYWNoKHBhdHRlcm4gPT4ge1xuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlID0gbWVzc2FnZS5yZXBsYWNlKHBhdHRlcm4sIGVtb2ppLnVuaWNvZGUpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgcmV0dXJuIG1lc3NhZ2U7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,24 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { ChatParticipantType } from "../core/chat-participant-type.enum";
3
+ import * as i0 from "@angular/core";
4
+ /*
5
+ * Renders the display name of a participant in a group based on who's sent the message
6
+ */
7
+ export class GroupMessageDisplayNamePipe {
8
+ transform(participant, message) {
9
+ if (participant && participant.participantType == ChatParticipantType.Group) {
10
+ let group = participant;
11
+ let userIndex = group.chattingTo.findIndex(x => x.id == message.fromId);
12
+ return group.chattingTo[userIndex >= 0 ? userIndex : 0].displayName;
13
+ }
14
+ else
15
+ return "";
16
+ }
17
+ }
18
+ GroupMessageDisplayNamePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GroupMessageDisplayNamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
19
+ GroupMessageDisplayNamePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: GroupMessageDisplayNamePipe, name: "groupMessageDisplayName" });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GroupMessageDisplayNamePipe, decorators: [{
21
+ type: Pipe,
22
+ args: [{ name: 'groupMessageDisplayName' }]
23
+ }] });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtbWVzc2FnZS1kaXNwbGF5LW5hbWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9waXBlcy9ncm91cC1tZXNzYWdlLWRpc3BsYXktbmFtZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRXBELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQUl6RTs7RUFFRTtBQUVGLE1BQU0sT0FBTywyQkFBMkI7SUFDcEMsU0FBUyxDQUFDLFdBQTZCLEVBQUUsT0FBZ0I7UUFDckQsSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLGVBQWUsSUFBSSxtQkFBbUIsQ0FBQyxLQUFLLEVBQzNFO1lBQ0ksSUFBSSxLQUFLLEdBQUcsV0FBb0IsQ0FBQztZQUNqQyxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRXhFLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztTQUN2RTs7WUFFRyxPQUFPLEVBQUUsQ0FBQztJQUNsQixDQUFDOzt3SEFYUSwyQkFBMkI7c0hBQTNCLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQUR2QyxJQUFJO21CQUFDLEVBQUMsSUFBSSxFQUFFLHlCQUF5QixFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3JvdXAgfSBmcm9tIFwiLi4vY29yZS9ncm91cFwiO1xuaW1wb3J0IHsgQ2hhdFBhcnRpY2lwYW50VHlwZSB9IGZyb20gXCIuLi9jb3JlL2NoYXQtcGFydGljaXBhbnQtdHlwZS5lbnVtXCI7XG5pbXBvcnQgeyBJQ2hhdFBhcnRpY2lwYW50IH0gZnJvbSBcIi4uL2NvcmUvY2hhdC1wYXJ0aWNpcGFudFwiO1xuaW1wb3J0IHsgTWVzc2FnZSB9IGZyb20gXCIuLi9jb3JlL21lc3NhZ2VcIjtcblxuLypcbiAqIFJlbmRlcnMgdGhlIGRpc3BsYXkgbmFtZSBvZiBhIHBhcnRpY2lwYW50IGluIGEgZ3JvdXAgYmFzZWQgb24gd2hvJ3Mgc2VudCB0aGUgbWVzc2FnZVxuKi9cbkBQaXBlKHtuYW1lOiAnZ3JvdXBNZXNzYWdlRGlzcGxheU5hbWUnfSlcbmV4cG9ydCBjbGFzcyBHcm91cE1lc3NhZ2VEaXNwbGF5TmFtZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0ocGFydGljaXBhbnQ6IElDaGF0UGFydGljaXBhbnQsIG1lc3NhZ2U6IE1lc3NhZ2UpOiBzdHJpbmcge1xuICAgICAgICBpZiAocGFydGljaXBhbnQgJiYgcGFydGljaXBhbnQucGFydGljaXBhbnRUeXBlID09IENoYXRQYXJ0aWNpcGFudFR5cGUuR3JvdXApXG4gICAgICAgIHtcbiAgICAgICAgICAgIGxldCBncm91cCA9IHBhcnRpY2lwYW50IGFzIEdyb3VwO1xuICAgICAgICAgICAgbGV0IHVzZXJJbmRleCA9IGdyb3VwLmNoYXR0aW5nVG8uZmluZEluZGV4KHggPT4geC5pZCA9PSBtZXNzYWdlLmZyb21JZCk7XG5cbiAgICAgICAgICAgIHJldHVybiBncm91cC5jaGF0dGluZ1RvW3VzZXJJbmRleCA+PSAwID8gdXNlckluZGV4IDogMF0uZGlzcGxheU5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,34 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /*
4
+ * Transforms text containing URLs or E-mails to valid links/mailtos
5
+ */
6
+ export class LinkfyPipe {
7
+ transform(message, pipeEnabled) {
8
+ if (pipeEnabled && message && message.length > 1) {
9
+ let replacedText;
10
+ let replacePatternProtocol;
11
+ let replacePatternWWW;
12
+ let replacePatternMailTo;
13
+ // URLs starting with http://, https://, or ftp://
14
+ replacePatternProtocol = /(\b(https?|ftp):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gim;
15
+ replacedText = message.replace(replacePatternProtocol, '<a href="$1" target="_blank">$1</a>');
16
+ // URLs starting with "www." (ignoring // before it).
17
+ replacePatternWWW = /(^|[^\/])(www\.[\S]+(\b|$))/gim;
18
+ replacedText = replacedText.replace(replacePatternWWW, '$1<a href="http://$2" target="_blank">$2</a>');
19
+ // Change email addresses to mailto:: links.
20
+ replacePatternMailTo = /(([a-zA-Z0-9\-\_\.])+@[a-zA-Z\_]+?(\.[a-zA-Z]{2,6})+)/gim;
21
+ replacedText = replacedText.replace(replacePatternMailTo, '<a href="mailto:$1">$1</a>');
22
+ return replacedText;
23
+ }
24
+ else
25
+ return message;
26
+ }
27
+ }
28
+ LinkfyPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LinkfyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
29
+ LinkfyPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: LinkfyPipe, name: "linkfy" });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LinkfyPipe, decorators: [{
31
+ type: Pipe,
32
+ args: [{ name: 'linkfy' }]
33
+ }] });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlua2Z5LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvcGlwZXMvbGlua2Z5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBRXBEOztFQUVFO0FBRUYsTUFBTSxPQUFPLFVBQVU7SUFDbkIsU0FBUyxDQUFDLE9BQWUsRUFBRSxXQUFvQjtRQUMzQyxJQUFJLFdBQVcsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQ2hEO1lBQ0ksSUFBSSxZQUFZLENBQUM7WUFDakIsSUFBSSxzQkFBc0IsQ0FBQztZQUMzQixJQUFJLGlCQUFpQixDQUFDO1lBQ3RCLElBQUksb0JBQW9CLENBQUM7WUFFekIsa0RBQWtEO1lBQ2xELHNCQUFzQixHQUFHLHlFQUF5RSxDQUFDO1lBQ25HLFlBQVksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLHNCQUFzQixFQUFFLHFDQUFxQyxDQUFDLENBQUM7WUFFOUYscURBQXFEO1lBQ3JELGlCQUFpQixHQUFHLGdDQUFnQyxDQUFDO1lBQ3JELFlBQVksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLDhDQUE4QyxDQUFDLENBQUM7WUFFdkcsNENBQTRDO1lBQzVDLG9CQUFvQixHQUFHLDBEQUEwRCxDQUFDO1lBQ2xGLFlBQVksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFLDRCQUE0QixDQUFDLENBQUM7WUFFeEYsT0FBTyxZQUFZLENBQUM7U0FDdkI7O1lBRUcsT0FBTyxPQUFPLENBQUM7SUFDdkIsQ0FBQzs7dUdBekJRLFVBQVU7cUdBQVYsVUFBVTsyRkFBVixVQUFVO2tCQUR0QixJQUFJO21CQUFDLEVBQUMsSUFBSSxFQUFFLFFBQVEsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLypcbiAqIFRyYW5zZm9ybXMgdGV4dCBjb250YWluaW5nIFVSTHMgb3IgRS1tYWlscyB0byB2YWxpZCBsaW5rcy9tYWlsdG9zXG4qL1xuQFBpcGUoe25hbWU6ICdsaW5rZnknfSlcbmV4cG9ydCBjbGFzcyBMaW5rZnlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKG1lc3NhZ2U6IHN0cmluZywgcGlwZUVuYWJsZWQ6IGJvb2xlYW4pOiBzdHJpbmcge1xuICAgICAgICBpZiAocGlwZUVuYWJsZWQgJiYgbWVzc2FnZSAmJiBtZXNzYWdlLmxlbmd0aCA+IDEpXG4gICAgICAgIHtcbiAgICAgICAgICAgIGxldCByZXBsYWNlZFRleHQ7XG4gICAgICAgICAgICBsZXQgcmVwbGFjZVBhdHRlcm5Qcm90b2NvbDtcbiAgICAgICAgICAgIGxldCByZXBsYWNlUGF0dGVybldXVztcbiAgICAgICAgICAgIGxldCByZXBsYWNlUGF0dGVybk1haWxUbztcblxuICAgICAgICAgICAgLy8gVVJMcyBzdGFydGluZyB3aXRoIGh0dHA6Ly8sIGh0dHBzOi8vLCBvciBmdHA6Ly9cbiAgICAgICAgICAgIHJlcGxhY2VQYXR0ZXJuUHJvdG9jb2wgPSAvKFxcYihodHRwcz98ZnRwKTpcXC9cXC9bLUEtWjAtOSsmQCNcXC8lPz1+X3whOiwuO10qWy1BLVowLTkrJkAjXFwvJT1+X3xdKS9naW07XG4gICAgICAgICAgICByZXBsYWNlZFRleHQgPSBtZXNzYWdlLnJlcGxhY2UocmVwbGFjZVBhdHRlcm5Qcm90b2NvbCwgJzxhIGhyZWY9XCIkMVwiIHRhcmdldD1cIl9ibGFua1wiPiQxPC9hPicpO1xuXG4gICAgICAgICAgICAvLyBVUkxzIHN0YXJ0aW5nIHdpdGggXCJ3d3cuXCIgKGlnbm9yaW5nIC8vIGJlZm9yZSBpdCkuXG4gICAgICAgICAgICByZXBsYWNlUGF0dGVybldXVyA9IC8oXnxbXlxcL10pKHd3d1xcLltcXFNdKyhcXGJ8JCkpL2dpbTtcbiAgICAgICAgICAgIHJlcGxhY2VkVGV4dCA9IHJlcGxhY2VkVGV4dC5yZXBsYWNlKHJlcGxhY2VQYXR0ZXJuV1dXLCAnJDE8YSBocmVmPVwiaHR0cDovLyQyXCIgdGFyZ2V0PVwiX2JsYW5rXCI+JDI8L2E+Jyk7XG5cbiAgICAgICAgICAgIC8vIENoYW5nZSBlbWFpbCBhZGRyZXNzZXMgdG8gbWFpbHRvOjogbGlua3MuXG4gICAgICAgICAgICByZXBsYWNlUGF0dGVybk1haWxUbyA9IC8oKFthLXpBLVowLTlcXC1cXF9cXC5dKStAW2EtekEtWlxcX10rPyhcXC5bYS16QS1aXXsyLDZ9KSspL2dpbTtcbiAgICAgICAgICAgIHJlcGxhY2VkVGV4dCA9IHJlcGxhY2VkVGV4dC5yZXBsYWNlKHJlcGxhY2VQYXR0ZXJuTWFpbFRvLCAnPGEgaHJlZj1cIm1haWx0bzokMVwiPiQxPC9hPicpO1xuXG4gICAgICAgICAgICByZXR1cm4gcmVwbGFjZWRUZXh0O1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiBtZXNzYWdlO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/platform-browser";
4
+ /*
5
+ * Sanitizes an URL resource
6
+ */
7
+ export class SanitizePipe {
8
+ constructor(sanitizer) {
9
+ this.sanitizer = sanitizer;
10
+ }
11
+ transform(url) {
12
+ return this.sanitizer.bypassSecurityTrustResourceUrl(url);
13
+ }
14
+ }
15
+ SanitizePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SanitizePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
16
+ SanitizePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: SanitizePipe, name: "sanitize" });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SanitizePipe, decorators: [{
18
+ type: Pipe,
19
+ args: [{ name: 'sanitize' }]
20
+ }], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FuaXRpemUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL2xpYi9waXBlcy9zYW5pdGl6ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7QUFHcEQ7O0VBRUU7QUFFRixNQUFNLE9BQU8sWUFBWTtJQUNyQixZQUFzQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO0lBQUcsQ0FBQztJQUVqRCxTQUFTLENBQUMsR0FBVztRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7eUdBTFEsWUFBWTt1R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLElBQUk7bUJBQUMsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbi8qXG4gKiBTYW5pdGl6ZXMgYW4gVVJMIHJlc291cmNlXG4qL1xuQFBpcGUoe25hbWU6ICdzYW5pdGl6ZSd9KVxuZXhwb3J0IGNsYXNzIFNhbml0aXplUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICAgIHRyYW5zZm9ybSh1cmw6IHN0cmluZyk6IFNhZmVSZXNvdXJjZVVybCB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodXJsKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,14 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ChatService {
4
+ constructor() { }
5
+ }
6
+ ChatService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7
+ ChatService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatService, providedIn: 'root' });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatService, decorators: [{
9
+ type: Injectable,
10
+ args: [{
11
+ providedIn: 'root'
12
+ }]
13
+ }], ctorParameters: function () { return []; } });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbGliL3NlcnZpY2VzL2NoYXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sV0FBVztJQUN0QixnQkFBZSxDQUFDOzt3R0FETCxXQUFXOzRHQUFYLFdBQVcsY0FGVixNQUFNOzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDaGF0U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVyYWFpLW1ubC1jaGF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhdC9zcmMvbXVyYWFpLW1ubC1jaGF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Public API Surface of mnl-chat
3
+ */
4
+ export * from './lib/chat.module';
5
+ export * from './lib/services/chat.service';
6
+ export * from './lib/components/ng-chat/ng-chat.component';
7
+ export * from './lib/core/chat-adapter';
8
+ export * from './lib/core/message';
9
+ export * from './lib/core/chat-participant-status.enum';
10
+ export * from './lib/core/user';
11
+ export * from './lib/core/participant-response';
12
+ export * from './lib/core/participant-metadata';
13
+ export * from './lib/core/window';
14
+ export * from './lib/core/localization';
15
+ export * from './lib/core/chat-controller';
16
+ export * from './lib/core/paged-history-chat-adapter';
17
+ export * from './lib/core/theme.enum';
18
+ export * from './lib/core/chat-option';
19
+ export * from './lib/core/group';
20
+ export * from './lib/core/chat-participant';
21
+ export * from './lib/core/chat-group-adapter';
22
+ export * from './lib/core/chat-participant-type.enum';
23
+ export * from './lib/core/message-type.enum';
24
+ export * from './lib/core/file-upload-adapter';
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxnQ0FBZ0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbW5sLWNoYXRcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hhdC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvY2hhdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbmctY2hhdC9uZy1jaGF0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2NoYXQtYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL21lc3NhZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9jaGF0LXBhcnRpY2lwYW50LXN0YXR1cy5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvdXNlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3BhcnRpY2lwYW50LXJlc3BvbnNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvcGFydGljaXBhbnQtbWV0YWRhdGEnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS93aW5kb3cnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9sb2NhbGl6YXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9jaGF0LWNvbnRyb2xsZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9wYWdlZC1oaXN0b3J5LWNoYXQtYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3RoZW1lLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9jaGF0LW9wdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2dyb3VwJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvY2hhdC1wYXJ0aWNpcGFudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2NoYXQtZ3JvdXAtYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2NoYXQtcGFydGljaXBhbnQtdHlwZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvbWVzc2FnZS10eXBlLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9maWxlLXVwbG9hZC1hZGFwdGVyJzsiXX0=