@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
package/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # Chat
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project chat` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project chat`.
8
+ > Note: Don't forget to add `--project chat` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build chat` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build chat`, go to the dist folder `cd dist/chat` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test chat` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -0,0 +1,87 @@
1
+ import { HttpClientModule } from '@angular/common/http';
2
+ import { CommonModule } from '@angular/common';
3
+ import { APP_INITIALIZER, NgModule } from '@angular/core';
4
+ import { AppConfigService } from '@muraai/mnl-commons';
5
+ import { ChatMaterialModule } from './material.module';
6
+ import { ChatService } from './services/chat.service';
7
+ import { NgChat } from './components/ng-chat/ng-chat.component';
8
+ import { EmojifyPipe } from './pipes/emojify.pipe';
9
+ import { LinkfyPipe } from './pipes/linkfy.pipe';
10
+ import { SanitizePipe } from './pipes/sanitize.pipe';
11
+ import { GroupMessageDisplayNamePipe } from './pipes/group-message-display-name.pipe';
12
+ import { NgChatOptionsComponent } from './components/ng-chat-options/ng-chat-options.component';
13
+ import { NgChatFriendsListComponent } from './components/ng-chat-friends-list/ng-chat-friends-list.component';
14
+ import { NgChatWindowComponent } from './components/ng-chat-window/ng-chat-window.component';
15
+ import { FormsModule } from '@angular/forms';
16
+ import { FirstLetterPipe } from './firstLetter.pipe';
17
+ import * as i0 from "@angular/core";
18
+ export class ChatModule {
19
+ static forRoot() {
20
+ return {
21
+ ngModule: ChatModule,
22
+ providers: [
23
+ {
24
+ provide: APP_INITIALIZER,
25
+ useFactory: loadConfig,
26
+ deps: [
27
+ AppConfigService,
28
+ ChatService
29
+ ],
30
+ multi: true,
31
+ },
32
+ ],
33
+ };
34
+ }
35
+ static forChild() {
36
+ return {
37
+ ngModule: ChatModule,
38
+ };
39
+ }
40
+ }
41
+ ChatModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
42
+ ChatModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: ChatModule, declarations: [NgChat,
43
+ EmojifyPipe,
44
+ LinkfyPipe,
45
+ SanitizePipe,
46
+ GroupMessageDisplayNamePipe,
47
+ NgChatOptionsComponent,
48
+ NgChatFriendsListComponent,
49
+ NgChatWindowComponent,
50
+ FirstLetterPipe], imports: [ChatMaterialModule,
51
+ CommonModule,
52
+ FormsModule,
53
+ HttpClientModule], exports: [NgChat] });
54
+ ChatModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatModule, imports: [ChatMaterialModule,
55
+ CommonModule,
56
+ FormsModule,
57
+ HttpClientModule] });
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ChatModule, decorators: [{
59
+ type: NgModule,
60
+ args: [{
61
+ declarations: [
62
+ NgChat,
63
+ EmojifyPipe,
64
+ LinkfyPipe,
65
+ SanitizePipe,
66
+ GroupMessageDisplayNamePipe,
67
+ NgChatOptionsComponent,
68
+ NgChatFriendsListComponent,
69
+ NgChatWindowComponent,
70
+ FirstLetterPipe
71
+ ],
72
+ imports: [
73
+ ChatMaterialModule,
74
+ CommonModule,
75
+ FormsModule,
76
+ HttpClientModule
77
+ ],
78
+ exports: [
79
+ NgChat
80
+ ],
81
+ }]
82
+ }] });
83
+ export function loadConfig(config) {
84
+ const conf = () => config.load();
85
+ return conf;
86
+ }
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGF0L3NyYy9saWIvY2hhdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQzlHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBeUJyRCxNQUFNLE9BQU8sVUFBVTtJQUNyQixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsVUFBVTtZQUNwQixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxVQUFVO29CQUN0QixJQUFJLEVBQUU7d0JBQ0osZ0JBQWdCO3dCQUNoQixXQUFXO3FCQUNaO29CQUNELEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRO1FBQ2IsT0FBTztZQUNMLFFBQVEsRUFBRSxVQUFVO1NBQ3JCLENBQUM7SUFDSixDQUFDOzt1R0F0QlUsVUFBVTt3R0FBVixVQUFVLGlCQXJCbkIsTUFBTTtRQUNOLFdBQVc7UUFDWCxVQUFVO1FBQ1YsWUFBWTtRQUNaLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsMEJBQTBCO1FBQzFCLHFCQUFxQjtRQUNyQixlQUFlLGFBR2Ysa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCLGFBR2hCLE1BQU07d0dBSUcsVUFBVSxZQVZuQixrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLFdBQVc7UUFDWCxnQkFBZ0I7MkZBT1AsVUFBVTtrQkF2QnRCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLE1BQU07d0JBQ04sV0FBVzt3QkFDWCxVQUFVO3dCQUNWLFlBQVk7d0JBQ1osMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLDBCQUEwQjt3QkFDMUIscUJBQXFCO3dCQUNyQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asa0JBQWtCO3dCQUNsQixZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsTUFBTTtxQkFDUDtpQkFFRjs7QUEwQkQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxNQUF3QjtJQUNqRCxNQUFNLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakMsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQG11cmFhaS9tbmwtY29tbW9ucyc7XG5pbXBvcnQgeyBDaGF0TWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuL21hdGVyaWFsLm1vZHVsZSc7XG5pbXBvcnQgeyBDaGF0U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvY2hhdC5zZXJ2aWNlJztcbmltcG9ydCB7IE5nQ2hhdCB9IGZyb20gJy4vY29tcG9uZW50cy9uZy1jaGF0L25nLWNoYXQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtb2ppZnlQaXBlIH0gZnJvbSAnLi9waXBlcy9lbW9qaWZ5LnBpcGUnO1xuaW1wb3J0IHsgTGlua2Z5UGlwZSB9IGZyb20gJy4vcGlwZXMvbGlua2Z5LnBpcGUnO1xuaW1wb3J0IHsgU2FuaXRpemVQaXBlIH0gZnJvbSAnLi9waXBlcy9zYW5pdGl6ZS5waXBlJztcbmltcG9ydCB7IEdyb3VwTWVzc2FnZURpc3BsYXlOYW1lUGlwZSB9IGZyb20gJy4vcGlwZXMvZ3JvdXAtbWVzc2FnZS1kaXNwbGF5LW5hbWUucGlwZSc7XG5pbXBvcnQgeyBOZ0NoYXRPcHRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL25nLWNoYXQtb3B0aW9ucy9uZy1jaGF0LW9wdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IE5nQ2hhdEZyaWVuZHNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL25nLWNoYXQtZnJpZW5kcy1saXN0L25nLWNoYXQtZnJpZW5kcy1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ0NoYXRXaW5kb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbmctY2hhdC13aW5kb3cvbmctY2hhdC13aW5kb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmlyc3RMZXR0ZXJQaXBlIH0gZnJvbSAnLi9maXJzdExldHRlci5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTmdDaGF0LFxuICAgIEVtb2ppZnlQaXBlLFxuICAgIExpbmtmeVBpcGUsXG4gICAgU2FuaXRpemVQaXBlLFxuICAgIEdyb3VwTWVzc2FnZURpc3BsYXlOYW1lUGlwZSxcbiAgICBOZ0NoYXRPcHRpb25zQ29tcG9uZW50LFxuICAgIE5nQ2hhdEZyaWVuZHNMaXN0Q29tcG9uZW50LFxuICAgIE5nQ2hhdFdpbmRvd0NvbXBvbmVudCxcbiAgICBGaXJzdExldHRlclBpcGVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENoYXRNYXRlcmlhbE1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUgLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEh0dHBDbGllbnRNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIE5nQ2hhdFxuICBdLFxuICBcbn0pXG5leHBvcnQgY2xhc3MgQ2hhdE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Q2hhdE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQ2hhdE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGxvYWRDb25maWcsXG4gICAgICAgICAgZGVwczogW1xuICAgICAgICAgICAgQXBwQ29uZmlnU2VydmljZSxcbiAgICAgICAgICAgIENoYXRTZXJ2aWNlXG4gICAgICAgICAgXSxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JDaGlsZCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPENoYXRNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IENoYXRNb2R1bGUsXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9hZENvbmZpZyhjb25maWc6IEFwcENvbmZpZ1NlcnZpY2UpIHtcbiAgY29uc3QgY29uZiA9ICgpID0+IGNvbmZpZy5sb2FkKCk7XG4gIHJldHVybiBjb25mO1xufVxuIl19